基于FPDP和VME总线的多DSP通用并行处理系统设计方案
扫描二维码
随时随地手机看文章
引言
基于TIDSP数字信号处理器的通用信号处理板在声纳、雷达信号处理中已经有着广泛的应用。但在一些实时性要求很高的场合,单板多DSP系统并不能完成高速的数据采集传输和大量的数据分析处理工作,从而需要一个由信号采集板和信号处理板组成的多子板系统实现高速实时处理。借助多板多DSP并行处理技术,能够开放性地实现实时性强、精度高、动态范围大和高数据吞吐量连接网络的大规模并行处理系统。此时,数据的板间传输成为这些系统的设计瓶颈。
本文将介绍一种基于FPDP和VME双总线的高速实时信号处理结构可重组多子板系统,并着重分析该系统核心子板——多DSP通用并行处理系统的硬件设计和原理框图。
2、多子板系统总体设计
2.1 系统结构分析
本系统是依托于标准VME机箱的高速实时信号处理结构可重组多子板系统。它由上位机、下位机和VME机箱构成。结构框图如图1所示,它具有以下5个特点:
1.上位机为工控机,下位机由多块数据采集板和DSP信号处理板组成。
2.DSP信号处理板采用一主三从的多DSP并行处理结构。
3.每个下位机都通过标准的总线接口与上位机相连,上位机对下位机起主导作用,它可以通过公共总线下载或更新下位机上的DSP、FPGA等处理器程序,并且随时监控数据。
4.各子板之间数据通过专门的总线传输,不通过上位机统一分配调度。
5.系统结构灵活多变,具有一定可重组性。系统各类子板都做了可扩展性设计。
系统结构可重组性主要解决数据采集通道扩展和信号处理算法多样性等各类问题。系统结构可重组性表现为一方面数据采集可选用单通道结构或者多通道结构,另一方面DSP子板可根据所实现的信号处理算法性能和各通道采集数据的数量及相关性而组合多板串行分步处理结构或者多板独立并行处理结构。
在图1中,系统除去DSP1X等板,保留DSP1Y、2……M板的结构是多板串行分步处理结构:各通道数据通过数据传输总线依次传送至DSP1Y板进行第一步处理,DSP1Y板然后将运算结果传送至DSP2板进行下一步处理,以此类推直至完成各步处理得出最终结果。相反,系统除去DSP2……M板,保留DSP1X……1Y板的结构便是多板独立并行处理结构:各通道数据通过同一数据总线依次或者不同总线同时传至各自相对应的DSP1X……1Y板进行独立并行处理。当然在数据量极大或者算法极其复杂的情况下,我们还可以将系统重组成串行和并行混合处理的结构。
2.2 基于FPDP和VME总线的板间通讯设计
VME总线是军用标准总线的主流类型,其技术成熟可靠,发展时间长,广泛应用于水下通信、雷达声纳、软件无线电等领域。基于DSP程序下载和数据监控的高稳定性要求,我们在系统中采用VME总线实现上位机与下位机的板间通讯。下位机之间的通讯主要涉及到的是数据传输。VME总线对于此类传输就具有协议复杂,调试困难以及速度慢等弱点。因此我们采用目前通用的高速数据传输总线FPDP实现下位机之间通讯。
FPDP(front panel data port)前面板数据口协议是由VITA Standards Organization提出的。基于最小等待时间与精确传输速率,FPDP总线用于在两个或多个VME总线子板之间提供高速数据传输,总线宽度为32bit,通过80线带状电缆连接。单一发送设备,没有总线冲突,协议不包含地址和仲裁周期。数据传输速率完全由发送设备的时钟决定,TTL时钟strobe频率最高为20MHz,±PECL data strobe的频率最高为40MHz,因此数据传输最大带宽为160MB/S。
基于FPDP总线的高速数据板间传输设计实现分为信号发送和信号接收两部分。它包括FPDP主发送端(FPDP/TM)、发送端(FPDP/T)、FPDP主接收端(FPDP/RM)和接收端(FPDP/R)。FPDP总线可扩展为一个主发送端、多个发送端和一个主接收端、多个接收端的形式。这种可扩展传输结构完全符合本文介绍的高速信号处理系统各种结构下多种数据传输方式要求。如图1所示,在系统中,子板通讯采用多条FPDP总线。数据采集板只设计有FPDP/TM接口,主要负责各通道数据采集发送。DSP信号处理板同时设计有FPDP/TM和FPDP/RM接口,配合系统结构重组。系统处于多板独立并行处理结构时,DSP板启动RM模块,只做数据接收终端。系统处于多板串行结构时,前板的FPDP/TM与后板的FPDP/RM相接,构成独立的FPDP总线,从而配合多个DSP板流水作业。在多通道或者多板并行处理结构中,每个FPDP总线上,必须且只能设定一个主接收端和一个主发送端。
在系统中我们可以通过硬件编程、开关和软件修改对FPDP/TM、FPDP/RM进行配置,实现各个系统结构中数据实时多向传输。
3、并行处理系统板极设计
3.1 单板结构及功能描述
本文介绍的高速实时信号处理系统,其核心子板是多DSP并行处理机。它包括多DSP模块、VME总线模块和FPDP总线模块。DSP选用TMS320C6701芯片,它是TI公司第一代采用VelociTITM高性能超长指令字结构的高性能32位浮点型数字型号处理器,其运行时钟频率最高可达167MHz,峰值处理速度可以达到1GFLOPS和34MMACS的运算能力。
它主要包括C6701、SDRAM、FLASH、双口RAM、数据地址缓冲以及DSP附属的逻辑控制CPLD和实现两类总线协议的FPGA芯片。
多DSP并行处理系统设计的核心是实现多DSP之间的通信控制及数据交换。DSP之间的互连结构分为共享总线或共享存储器的紧耦合连接方式和拥有各自独立的数据存储器而通过通信口相连的松耦合连接方式。紧耦合连接方式限制整个系统节点数目的规模,从而降低系统的扩展性。因此,我们采用松耦合连接方式,通过双口RAM实现一主三从DSP之间的通信控制及数据交换。
VME和FPDP总线协议我们采用FPGA芯片实现。VME总线主要用于各个DSP的HPI口与上位机通讯。DSP通过VME总线采用HPI方式自动引导启动,从上位机下载程序。上位机可以通过VME总线对板上数据进行实时监控。FPDP总线连接至处理机上的主DSP,包括FPDP/TM和FPDP/RM两个功能模块。我们只需要更改和重新下载FPGA程序,便可以完成DSP处理机上的FPDP/TM和RM端口配置,以便对应整个系统结构重组。此外,用于FPDP通讯的FIFO也用FPGA实现。
处理机工作流程如下:系统上电后,4片C6701通过VME总线从上位机获取运行程序,并存入各自片内程序RAM,准备响应。前板将需要处理的数据流通过FPDP总线发送至本板FPDP/RM端口的FIFO中并且发送中断,主DSP响应中断后从FIFO中读取数据并且完成分配,分别发送至三个从DSP的双口RAM中。从DSP通过双口RAM读取数据并且进行并行处理,然后将处理完成的数据传回双口RAM。主DSP再将处理后的数据汇总并通过FPDP/TM端口发送至后板的FPDP/RM端口。如此循环,直至所有数据都处理完毕。最后主DSP将结果反馈至上位机,等待下次命令。
处理机中,每片DSP都配有一个256 K×8 bit FLASH芯片。处理机也可以脱离上位机单板工作,只需将程序提前下载到FLASH中。
3.2 单板电源设计方案
并行处理机板上需要的电源分为5V、3.3V和1.8V三类。其中5V直接来自VME机箱背板。3.3V和1.8V电源通过板上转换模块提供。由于本系统中DSP、CPLD和FPGA比较多,功耗也相对较高,其供电系统品质的好坏直接影响到整个处理机的工作稳定性。另外,并行处理机上的DSP和FPGA对其I/O电路和内核电路的供电顺序也有一定的要求。
图3给出了通用器件所要求的常见的3种电源启动模式:Sequential Startup,即板上先提供1.8V电源然后再提供3.3V电源;Ratiometric Startup,即板上1.8V和3.3V电源同时以相同比率启动并且同一时刻达到稳定值;Simultaneous Startup,即板上1.8V和3.3V电源同时启动。我们在实际设计中一定要考虑到器件对供电系统的不同要求,这对处理机的稳定性具有极其重要的意义。
处理机上DSP和FPGA要求内核电路和I/O电路的供电采用Sequential Startup模式。整板需要5A左右的1.8V和3.3V 电源系统。由此,我们采用TI公司的TPS54614和TPS54616芯片设计了处理机的电源转换模块。它有体积小,输出电流大,性能稳定等特点。电路原理如图4所示。TPS54614采用5V输入,能够稳定提供最大电流为6A的1.8V输出,TPS54616同样采用采用5V输入,能够稳定提供最大电流为6A的3.3V输出。此电源转换模块完全满足整个信号处理机的供电量要求。
在设计中,根据TPS54610系列芯片的特性,我们将TPS54614的PWRGD连接至TPS54616的SS/ENA管脚。系统上电时,当TPS54614输出电压低于正常值的90%即1.6V时,PWRGD为低,抑制TPS54616启动,当TPS54614输出电压大于1.6V时,PWRGD变高,启动TPS54616;系统关闭时,TPS54614输出降低到1.6V时,PWRGD变低,TPS54616才开始关闭。因此保证了DSP、FPGA内核电压供电先于I/O电压,满足了系统供电采用Sequential Startup模式的要求。
3.3 电路灵活配置
3.3.1 JTAG接口菊花链设计
TMS320C6701备有基于IEEE 1149.1标准的边界扫描测试接口,从而为设计人员提供了一个实时的硬件仿真与调试环境。由于处理机是一个有4个DSP的多DSP系统,我们将DSP的JTAG接口与14 pin Header间以菊花链方式互连。按照JTAG口驱动能力的要求,我们将关键信号通过一个缓冲器进行增强。
3.3.2 DSP中断信号分配
多DSP系统不可避免会产生DSP中断信号不够用的问题。在处理机的设计过程中,我们分别将三个从DSP和FPDP/RM端口的中断请求信号引至主DSP的附属逻辑CPLD中进行统一分配。在CPLD中设定一个控制寄存器,外挂于主DSP的EMIF下。当主DSP接收到中断请求后,它通过CPLD控制寄存器标示分析中断信号的来源,从而正确响应。
4、结论
采用混合总线模式的设计方法将大大提高数字信号处理系统的并行处理和数据传输能力。本文采用FPDP总线传输协议,实现了多总线子板间信号高速传输。最大为160MB/S的数据传输带宽,完全满足板间DSP芯片点对点通信的需求。同时,采用VME总线完成上下位机程序下载和数据监控,提高了系统的稳定性和可靠性。
本文设计的基于FPDP和VME双总线的高速实时信号处理多子板系统,目前在水下通信领域已取得成功应用。详细介绍的系统核心子板——多DSP通用并行处理机基于一主三从的多处理器结构,不仅可以多板多模式工作,也可以单板使用。目前在DSP大规模并行技术向片间发展的主流下,虽然文中的DSP器件以TMS320C6701为例,但系统结构对其他DSP器件构成的多DSP并行处理系统设计都具有一定的参考价值。