高性能信号处理通用平台研究

2022-03-16 08:18:17 | 浏览次数:

zoޛ)j馔K}TZiNS7u~?~
tӍ}}NvӏOiLķ@MiuiS!3mM4
#HK}4Lķ@MvZqSi4aK8H@3?i
#H<R8R;i馑HoSC!SH@1 �H!$@0RHs!yf<申请外总线时,由EMIF根据设置的优先级进行仲裁,然后响应各个申请。一旦某个申请者根据优先级获得了处理权,这一处理权会一直保留到该申请者放弃请求或者是有更高优先级的申请者提出申请,其间即便有新的申请出现,EMIF也不会受理。在新的申请开始得到处理之前,对于已经获得处理权的前一个申请者,其尚未完成的操作部分可以优先继续完成。

2.2 全局总线设计

模块内全局总线可由4个DSP、PCI接口芯片中的任何一个来占用, 全局总线仲裁电路的设计是该模块设计中的一个要点。考虑到PCI接口是整个系统信息交换最重要的通道,它的利用率的高低直接决定了系统的性能,所以将其优先权定为高,将DSP的优先权定为低。DSP之间的仲裁采用轮转优先级仲裁算法。

DSP通过异步接口空间访问全局总线,由于TMS320C6701的异步接口空间仅能够提供4 MB的地址空间,为了克服芯片的这个限制,采用页面的机制扩充异步接口空间,使该空间最大可访问的空间达到2 GB。把DSP的EMIF提供4 MB的异步接口空间分为两部分,低2 MB(即A21=0)用于访问全局资源,高2 MB用于访问每个DSP的局部资源。采用这种DSP异步接口空间的划分方法简化并加快了译码。当复位时每个DSP的页面寄存器都被置为0x0000 0000,它会自动通过异步接口空间指向FLASH,实现自举。当一个DSP获得全局总线的访问权后,由该DSP的页面寄存器决定全局总线地址的高11位(GA31:GA21),全局总线地址的低位(GA20:GA2)直接由该DSP驱动,GA1和GA0由译码得到。

通过以下计算公式可以计算页面值和页内偏移量:

页面值=(全局总线上的地址 & 0XFFE00000)>>21;

页内偏移量=(全局总线上的地址 & 0X001FFFFF);

软件通过以上计算公式给出当前全局地址访问的页面值和页内偏移量。页面值决定高位地址(GLA21~GLA31),页内偏移量决定于DSP的低位地址线(EA2~EA20),这样就将全局总线地址映射到DSP的物理空间CE0的全局总线空间内。

2.3 调试接口

JTAG是基于IEEE 1149.1标准的一种边界扫描测试方式。TI公司为C6000系列DSP提供了JTAG端口支持,结合配套的仿真软件可以访问DSP的所有资源,包括片内寄存器以及所有的存储器,从而提供了一个实时的硬件仿真与调试环境,便于开发人员进行系统软件调试。

该信号处理模块提供两种方式的JTAG调试。一种方式是使用TI的XDS⁃510仿真器和JTAG仿真协议给信号处理模块下载程序,在软件开发和调试时控制程序的执行。另一种方式是使用TI的代码编译开发环境和Pentek的SwiftNet通信协议给信号处理模块下载程序和进行调试。这两种方式可通过一个选择器进行选择使用。

该信号处理板上有4片DSP,需要进行多处理器仿真调试,将DSP的JTAG端口和JTAG仿真器或JTAG控制器间以菊花链方式互连。JTAG调试接口电路如图2所示。

3 系统软件设计

随着嵌入式系统应用范围不断扩大,功能也越来越强。对于不同的系统应用需要采用定制信号处理算法。在实时操作系统支持下开发DSP算法,方便快捷,程序思路清晰,便于代码调试和重用,但是目前大多数DSP实际应用中,仍然采用与早期单片机开发一样的开发方式,用汇编语言直接在硬件层上开发。开发模式的局限,已经严重影响了DSP以及嵌入式系统应用的发展。

并且随着对DSP系统性能要求的迅速提高,DSP软件将会日益复杂,特别是开发大规模并行系统的软件,处理机之间的通信与同步、资源管理、并行任务分配等都是相当繁重的工作。如果完全由程序员手工完成,将增加研发周期,软件质量也难以保证。因此,需要将这些底层的工作交给系统软件来处理,程序员的精力集中于信号处理算法的实现。

信号处理模块主要承担高速实时信号处理任务,使用DSP阵列。如上所述,并行DSP上使用操作系统,将会使复杂的并行程序开发变得相对容易并且效率高。因此,可以考虑选择系统性能较好并且开发工具齐全的COTS产品,在此基础上进行二次开发,将并行调试技术、负载平衡技术等融合进去。

VSPWorks操作系统是WindRiver公司推出的用于DSP的内存占用量小的高性能实时操作系统。VSPWorks RTOS能够与VxWorks RTOS进行通信,这样开发者就可以很容易设计出DSP与通用处理器组合在一起的系统。因此,在实现信号处理模块的操作系统时,选用VSPWorks操作系统为基础,扩充并行调试和负载平衡等功能。另外,还要考虑系统的容错和重构等问题。

作为通用的信号处理平台,是否受用户欢迎,很大程度并不在于技术的先进性,而在于其开发工具是否友好,开发环境是否完备。该信号处理模块为了方便用户应用,提供良好的集成开发环境(IDE),在IDE中不但包括编辑、编译、连接等一般工具,另外还针对并行系统开发的要求提供了任务加载工具、并行调试工具和负载平衡分析工具等。该开发环境在宿主机上运行,通过调试口(如RS232、JTAG)与目标系统连接。

该信号处理模块软件开发环境包含三个高度集成的部分:运行在宿主机和目标机上的强有力的交叉开发工具和实用程序;运行在目标机上的高性能、可裁剪的实时操作系统;连接宿主机和目标机的多种通信方式,如:以太网、串口线、仿真器等。信号处理模块软件开发环境如图3所示。

4 结 语

本文通过对信号处理实时性、通用性需求的深入研究,提出了基于TMS320C6701处理器的高性能通用信号处理平台系统结构,重点论述了该平台的通信网络、存储器系统、调试电路等的设计,实现了支持信号处理器的实时操作系统VSPWorks配置,完善了信号处理平台软件开发环境。通过把不同分辨率的合成孔径雷达成像的计算过程映射到不同规模的信号处理模块组成的并行信号处理系统上,处理能力、存储容量、通信带宽等均能满足系统需求,证明了该信号处理平台的通用性、可扩展性及应对大规模浮点处理的有效性。

参考文献

[1] 高西全,丁玉美.数字信号处理[M].西安:西安电子科技大学出版社,2008.

[2] 苏涛,吴顺军,寥晓群.高性能数字信号处理器与高速实时信号处理[M].西安:西安电子科技大学出版社,1999.

[3] 刘书明,罗勇江.ADSP TS20XS系列DSP原理与应用设计[M].北京:电子工业出版社,2007.

[4] 王田苗,魏洪兴.嵌入式系统设计与实例开发[M].北京:清华大学出版社,2008.

[5] 许邦建,孙永节,唐涛.DSP算法与体系结构实现技术[M].北京:国防工业出版社,2010.

[6] CURTIS T E, CURTIS M. Compact sonar surveillance processing systems [C]// Proceedings of Conference on Sonar Signal Processing. Loughborough, England: IOA, 2004: 5⁃24.

[7] HILL M D, MARTY M R. Amdahl′s law in the multicore era [J]. Computer, 2008, 41(7): 33⁃38.

[8] GLOSSNER J, IANCU D, MOUDGILL M, et al. The sand bridge SB3011 SDR platform [C]// Proceedings of 2003 Joint 1st Workshop on Mobile Future and Symposium on Trends in Communications. Bratislava, Slovakia: IEEE, 2006: 122⁃125.

[9] ASANOVIC K, BODIK R, CATANZARO B C, et al. The landscape of parallel computing research: a view from Berkeley [D]. Berkeley: University of California, 2006.

[10] WILLISTON K. Multicore software: Strategies for success [J]. Embedded Innovator, 2008, 10: 1⁃44.

[11] LIN Y, LEE H, WOH M, et al. SODA: a high⁃performance DSP architecture for software⁃defined radio [J]. IEEE Micro, 2007, 27(1): 114⁃123.

推荐访问: 高性能 信号处理 通用 研究 平台