2 Stratix器件的典型应用
在高速信号处理系统中,通用DSP已经无法满足实时性、快速性的要求。设计者经常采用DSP+CPLD的结构,将任务分解成DSP完成的计算方式及控制结构比较复杂的信号处理算法和CPLD完成的时序组合逻辑及某些简单的运算,从而使系统处理能力显著提高。采用Stratix器件设计了高速数字信号预处理模块。
2.1 Stratix器件应用设计
高速数字信号预处理模块用于对原始数据进行滤波降采样处理,达到降低采样率、减少数据量、提高系统实时性的目的。具体结构如图2所示。原始数据通过FPDP端口接收并经过大容量DPRAM,并通过PCI总线送回主机,进行现场数据保存;另一方面抛弃辅助数据,提取真实数据包后,传送到降抽样滤波器,其结果由通用浮点DSP芯片ADSP21160读取,通过特有的Link Port传送到主处理板。所有FIFO、DPRAM、DSP模块均使用EP1S25内部资源。这种CPLD+DSP的混合结构设计可以同时具有DSP运算能力强和EP1S25速度高、资源丰富、设计灵活的特点,能适应大数据流的处理。
2.2 FIR滤波器仿真设计和参数计算
设计的核心部分是基于Stratix EP1S25设计的两个结构相同的低通滤波器,分别对I/Q两路原始数据进行滤波处理,使得其带宽降低。为了选取适当的滤波器阶数,必须在滤波效果和运算量之间进行折中。单纯从滤波效果的角度讲,滤波器阶数越高,越能逼近理想的矩形通带,提高抽样后信号的信噪比。但是阶数越高,运算量就越大,因此必须限制滤波器的阶数。综合考虑EP1S25中DSP模块数量与信号指标要求,即可确定滤波器的阶数。完成分析之后,在MATLAB下计算滤波器的参数,然后将参数归一化,重新分析滤波器性能是否满足要求。归一化后的参数可以直接作为FIR滤波器参数供CPLD设计使用。
2.3 基于CPLD的抽样FIR滤波器的结构设计
基于CPLD设计的FIR滤波器结构可以采用以下几种类型:直接型FIR滤波器、倒置型FIR滤波器和降抽样型FIR滤波器。直接型FIR滤波器是CPLD实现FIR滤波器的最常用结构,来源于FIR公式的推导,是一种常见的模型。考虑到FIR的参数是对称的,可以采用对称的直接型结构。倒置型FIR滤波器是直接型FIR滤波器的变形,与直接型不同之处在于:直接型的加乘器是完全对称的,在设计中,可以统一的加法器、乘法器后插入缓存器,对计算结果进行暂存,实现对数据的流水处理;而倒置型不具备这个特点,它的乘加器运算必须在一个时钟周期内完成,否则运算错误。降抽样型FIR滤波器,在结构上类似于直接到FIR的并联,与前面两种滤波器的最大不同之处是边滤波边抽样。
前两种FIR滤波器通常用于串行输入数据的情况下。直接型由于对称结构,可以采用流水调度,所以工作频率很高,但是数据延迟比较大,40阶的滤波器可以达到20个时钟周期,控制比较复杂;倒置型结构的优点是没有数据延迟,控制简单,但是工作频率很低,与CPLD的乘加器性能有关;降抽样型FIR滤波器适用于输入数据是压缩数据的情况,即输入的数据由多个原始数据组成,可以避免数据拆包重组和滤波后的抽样,便于CPLD设计,最大的特点是可以在较低的时间频率下完成滤波抽样,不会造成数据的积累。从结构上分析,降抽样型FIR滤波器和直接型类似,也存在控制复杂的问题。
2.4 降抽样型FIR滤波器的仿真结果
设计中通过调用Altera Quartus II软件的MegaFunction中的乘加器实现了一个32阶降抽样FIR滤波器。通过仿真,该滤波器完成对输入的4096点数据流的滤波和1/4降抽样的实时处理,只需要1024个时钟周期,输出延迟10个时钟周期,处理速度大大高于通用DSP,仿真的最高工作频率fmax达到了132MHz。在系统实际测试中,CPLD的最高工作频率fmax超80MHz,数据吞吐量达到2560Mbit/s。
采用Stratix系列的EP1S25设计的高速数字信号预处理模块,在实验中,EP1S25承担了70%的运算量,使系统达到了实时数字信号处理的要求。实验同时证明,采用基于CPLD的FIR滤波器和高性能DSP+CPLD的混合结构,可以同时具有DSP软件算法编程方便和CPLD结构灵活配置、适合固定算法的特点,对不同的算法都有较强的适应能力。