分层结构高速数字信号处理系统的设计与应用
摘要:介绍了一种具有分层结构的高速数字信号处理嵌入式系统,该系统中的不同层次完成了具有不同实时性要求与复杂程度的任务。详术了基于TMS320VC33的嵌入式系统的实现过程及关键技术,最后给出了几个典型的应用实例。
关键词:数字信号处理(DSP) 嵌入式系统 分层结构
目前,DSP应用系统的研发一般都需要昂贵的专扇开发系统,而且大多是功能与用途特殊的产品且批量小,其成本主要花在长时间研发上。对于民品,时间就是市场占有率和金钱;对于军品,时间就是战斗力和生命。分层结构高速数字信号处理嵌入式系统的硬件和软件都在很大程度上具有通用性,极大地降低了这一类产品的研发难度与研发周期。
1 系统组成
1.1 设计思路
一个工业测控仪表产品首先需要友好的人机界面、实时的数据采集与控制及准实时的高速数字信号处理。DSP专用芯片虽然具有强大的数字信号处理功能,但若用于人机界面设计将事倍功半,若用于强实时控制则极易被一个简单任务耗尽资源。因此,系统的最佳设计方案是:采用体积小、结构紧凑可靠的PCI04工控机实现人机界面,以高速DSP芯片进行准实时数字信号处理,而强实时信号处理任务由复杂可编程逻辑器件(CPLD)和专用芯片(ASIC)完成。
javascript:window.open(this.src);" style="cursor:pointer;"/>
1.2 分层式的系统结构
根据以上思路,系统宜采用分层式结构,如图1所示。其中,自定义系统总线(类似于GPIB总线)及接口模块实现主机(层次一)对多个信号处理模块(层次二、三)的监控,基于16位ISA并行接口的设计细节参见参考文献[2]。对于监控主机,在通过了调试阶段后,可以用单片机替代之以进一步减小体积重量,降低成本。在信号处理器模块中,DSP芯片及其RAM与EPROM组成的最小系统构成第二层次,其硬件/软件都具有通用性。真正与具体产品特定功能有关的是第三层次,它是由CPLD、ASIC芯片或级联工作的从处理器构成的应用硬件模块。随着软件无线电技术与器件的发展,非通用性功能越来越趋向.于用软件实现,而应用硬件模块则主要是高速CPLD、偏速模/数转换器及数/模转换器。因此第三层次也具有一定的通用性。
1.3 系统的特点
系统结构分层次后变得比较灵活,便于扩展。对于多通道并行数据处理,如材料分选,可采用多个信号处理器并联结构;对于单通道高速数据处理,javascript:window.open(this.src);" style="cursor:pointer;"/>如雷达脉冲信号分选,可采用多个处理器级联结构。 分层结构系统的功能强大。第三层次可以处理纳秒级事件,如高速脉冲信号的瞬态参数测量;第二层次可以处理微秒、毫秒级事件,如数字滤波及高精度参数估计算法的实现;第一层次可以处理非实时但较复杂,的事件,如实现图形用户界面、存盘打印、数据库管理以及网络功能等。
第一、二层次在硬件上有完全的通用性,数字信号处理器的基本输入输出软件(DSP-BIOS)及其对应的主机接口软件也基本上具有完全的通用性,可编程器件的充分利用还可使第三层次在硬件上具有一定的通用性。因此,采用这种结构开发后续产品时,研发工作将越来越容易而且迅捷。
2 硬件/软件协同设计过程
将上述具有通用性与分层结构的高速数字信号处理系统应用于具体产品设计时,首先要对硬件/软件功能进行合理的划分,这实际上是一个硬件/软件协同设计的过程,如图2所示。
第一步,确定应用系统具体功能及性能指标要求。
第二步,应用独立于任何硬件/软件的功能性规格方法对系统进行描述,如有限态自动机(FSM)、统一化的规格语言(CSP、HDLs、C、…)或其它基于图形的表示工具。其作用是对硬件/软件统一表示,便于进行功能的划分和综合。
第三步,从系统功能要求和限制条件出发,依据一定的算法,进行硬件/软件的功能划分。
第四步,对划分结果作出评估。一种是性能评估(A),另一种是对硬件/软件综合后的系统依据指令级评价参数作出评估(B)。如果评估结果不满足要求,需重复第三步,重新划分硬件/软件的功能,直至获得一个最佳的硬件/软件实现为止。
一个大的科研项目都需要多所做人分工协作,以上所述实际上也是总体上为硬件组与软件组所做的任务分配。在进行硬件系统基本功能调试的同时,软件组可以编写人机界面程序、数据库操作程序、模拟数据与处理的脱机版程序。由于用规格语言对实际硬件/软件功能描述存在失真情况,设计阶段的硬件/软件功能划分也难免有不合理之处,但这可在联机调试中得以修正。
javascript:window.open(this.src);" style="cursor:pointer;"/>
3 关键技术
本文用TI公司的高速处理器芯片TMS320VC33实现通用数字信号处理嵌入式系统。
3.1 DSP-BIOS设计
DSP-BIOS软件是实现数字信号处理嵌入式系统通用性的关键所在。TMS320VC33在微处理器(μP)模式下,复位后即运行DSP-BIOS软件;如在微计算机(MP)模式下,复位后运行其内部固化的Boot-Loader程序,然后从外部低速RAM或串口读取DSP-BIOS软件并调入片内高速CACHE进行全速运行。
一个通用DSP-BIOS软件应具有以下功能:
· DSP的初始化;
· 最小系统硬件的自检;
· 与上位机的通信;
javascript:window.open(this.src);" style="cursor:pointer;"/>
· 接收上位机命令及命令处理;
· 从上位机下载应用程序并执行;
· DSP特殊寄存器的设置,如外总线等待周期数;
· DSP片上功能块(定时器、中断)的控制;
.I/O口的读写(单地址);
· 存储器的读写(成片地址)。
3.2 系统调试过程
系统的调试一般包括两个过程:基本功能调试与正式应用功能调试。
基本功能调试的目的是排除硬件系统。设计与制作中存在的错误,并测试评估每一个子系统(模块或芯片)的功能与性能。调试步骤如下:
· 按设计编程并烧写DSP主板上的可编程逻辑器件(CPLD),确认CPLD器件已正常工作。
· 调试确认DSP芯片。H1和H3信号是所有片内功能块时序的同步时钟,是测量关键点。
· 把DSP-BIOS软件烧写入Flash-ROM,调试确认DSP的Boot-Load过程。若BIOS程序未正常运行,可按流程图3来调试。
javascript:window.open(this.src);" style="cursor:pointer;"/>
· DSP与PC机接口的调试。在图1所示的分层系统结构中,同处层次二的多个信号处理模块是多块DSP板。各DSP板上都有拨码开关设置的"ID"标识,主机发送的每个命令中都带有板选码,只有"ID"标识与板选码相符的DSP才会响应该命令。因此,只需确认PC机能对一个DSP进行正常复位与其它控制即可。通信调试的关键是检查各标志信号。
.DSP外设的调试。包括DSP板上的主内存,应用板(第三层次)上的RAM、I/O口及ASIC器件的控制接口等。
正式应用功能调试的主要目的是:排除应用软件与应用板上硬件系统中存在的错误,并测试评估整个系统的功能与性能。调试步骤如下:
· 把调试用软件提取为与硬件系统有关的一类子程序库,加入到包括界面与数据库操作的主程序中,形成联机运行的正式应用软件。
· 整个系统的功能与性能测试。当无法达到设计要求时,分析问题之所在,尽快修改应用软件或硬件,甚至重新设计制作硬件系统。
· 精简优化,去掉调试阶段的冗余设计部分。但在用户使用过程中仍有可能提出更高的要求,因此始终保持一定的资源余留是有必要的。
javascript:window.open(this.src);" style="cursor:pointer;"/>
4 应用实例
用TMS320VC33来实现通用分层结构数字信号处理嵌入式系统,它已经被成功应用于多项军用/民用产品。
4.1 电台自动测试仪--单DSP系统
通信电台在出厂前以及维护维修时,都要测试其性能指标,包括频率响应、失真度、信噪比等。应此需求研制的电台自动测试仪系统结构如图4所示。该测试仪硬件系统主要由四大部分组成:数字化高速信号采集电路、数字信号处理器、多波段多制式的信号产生电路及上位机。信号采集电路中应用了高速数字下变频器HSP50214,信号产生器应用了数字上变频器AD9856,DSP在零中频信号上进行处理,大大降低了对处理速度与容量的要求。因而单个DSP足以胜任对单个窄带零中频信号的多制式软件调制与解调、滤波及参数估计等数字运算。
4.2 基于DSP的材料分选系统--多DSP并联工作
为了适应市场需要,对材料(如粮食、矿物等)进行质量检测与分选有着重要意义。分选是利用不同质量材料的重量、颜色、尺寸等物理特性不同的原理进行的。根据该原理,本实验室开发研制了基于多DSP的材料分选控制系统。国内早期的分选系统智能部件都采用MCS-51系列的单片机,其控制功能基本可以满足需要,但是它的计算精度和工作速度却远远不够,因此系统的分选精度等指标很难做高。本文所研制的新型分选系统采用高速浮点运算DSP芯片TMS320VC33完成多通道信号采集和分选的控制,使得分选精度和工作速度都得到了大幅度提高。每个DSP可以胜任80路5kHz带宽的传感器信号的分析处理,每台工控机最多可管理16个DSP模块的并行工作,因而总的分选速度是非常快的。分选系统组成框图如图5所示。
4.3 雷达对抗侦察信号处理机--多DSP级联工作
雷达对抗侦察的任务是侦收并分析敌方雷达信号,为干扰或火力摧毁敌方雷达提供情报。为此研制了基于多CPU级联工作的信号处理分机,如图6所示。它包括:雷达信号预分选模块、分选处理模块、识别与综合显示模块。在预分选模块中,由第一个DSP对来自参数测量分机的高速雷达视频脉冲串进行稀释与粗略分类(按频率分),并把脉冲描述字(包括频率f、方位、脉幅PA、脉宽PW、到达时间TOA等)通过双口RAM传递给第二个DSP进行分选处理,以分离各部雷达的脉冲信号,从而测得各自技术参数。工控机获得测量参数后与雷达情报数据库比对,以识别敌方雷达类型、用途与威胁等级,为指挥决策提供依据。按处理速度、传输速度、存储容量优化配置流水线上各级CPU的任务,可使整个系统达到最大处理能力。试验表明其速度已符合实战要求。
由于该分层结构高速数字信号处理系统的硬件具有通用性、软件模块化,使得在较短的时间内成功开发出多项产品成为可能。下一步的改进工作之一是用PCI接口卡(对台式机而言)和USB2.0接口(对便携机而言)替代当前的ISA接口卡,以提高传输速度;改进之二是用TMS320C6201替代当前的TMS320VC33,以进一步提高DSP的处理速度。但是,本文所介绍的系统硬件与软件基本架构仍将是高端仪器设备产品开发和装备研制的首选。