TigerSHARCDSP在信号处理系统中的应用
W(n)=0.54-0.46cos[2πn/(N-1)]
n=0,1,2,…N-1
TigerSHARC DSP做16点加权复数FFT大约需要80个指令周期0.32μs,因此,当距离单元数为1200时,共需384μs。这样,此滑窗多谱勒滤波器组考虑到运算的辅助操作仅需要两片TigerSHARC DSP就可实现并行处理,且还有较多的富余时间。
3.3 求模
求模可采用如下近似公式:
javascript:window.open(this.src);" style="cursor:pointer;"/>
一般情况下,求模须对每个距离单元的16个通道FFT输出进行运算。TigerSHARC DSP做一个16通道的求模运算需要0.5μs,距离单元数为1200时,共需600μs故可由两片TigerSHARC DSP并行处理。
3.4 恒虚警
恒虚警算法框图如图3所示。
该算法可充分利用TigerSHARC DSP的双运算模块,同时并行处理两个距离单元的两个通道,完成1200个距离单元的16个通道的恒虚警计算共需500μs,故可用DSP3和DSP4并行处理。
3.5 积累
积累可采用简单累加求平均的方式,由于其计算量较少,因此,用一片TigerSHARC DSP实现仍有较大时间富余。
综上所述,由TigerSHARC DSP构成的高速信号处理系统总共仅需6片DSP,即可对不同的距离单元段进行并行处理。
4 TigerSHARC DSP特殊的复位方式
TigerSHARC DSP的上电复位波形较为特殊,在设计时应充分重视,建议采用CPLD实现其复位。上电复位波形要求如图4所示。但应注意以下几点:javascript:window.open(this.src);" style="cursor:pointer;"/>
(1)tSTART_LO在供电稳定之后必须至少大于1ms
(2)tPULSE1_HI必须大于50个系统时钟周期,同时小于100个系统时钟周期;
(3)tPULSE2_LO 必须大于100个系统时钟周期。
(4)在DSP上电后,如需正常复位,其低电平持续时间必须大于100个系统时钟周期。
本系统采用EP1K50产生上电复位波形和时序控制。由于EP1K50需要一个配置芯片,而且它和DSP存在一个上电先后的问题。也就是说,在上电后,如果CPLD芯片完成配置文件的读入时,DSP仍未上电稳定,则应充分延长Tstart_lo的低电平时间,以避免DSP上电未稳定而CPLD上电波形已结束。因此,应保证DSP上电稳定先于CPLD芯片配置文件的读入,此问题在系统设计时应予以充分重视,否则DSP将无法正常工作。
5 电源供电及功耗估计
TigerSHARC DSP有三个电源,其中数字3.3V为I/O供电;数字1.2V为DSP内核供电;模拟1.2V为内部锁相环和倍频电路供电。TigerSHARC DSP要求数字3.3V和1.2V应同时上电。若无法严格同步,则应保证内核电源1.2V先上电,I/O电源3.3V后上电。本系统在数字3.3V输入端并联了一个大电容,而在数字1.2V输入端并联了一个小电容,其目的就是为了保证3.3V充电时间大于1.2V充电时间,以便很好地解决电源供电先后的问题。
5.1 内核功耗估计
内核最大电流为1.277A,该电流是DSP进行单指令多数据(SIMD)方式下,4个16位定点字乘加与两个四字读取并行操作以及进行由外部口到内部存储器DMA操作所需的电流。实际上,DSP内核电流大小还和内核工作频率有关,图5所示是其内核电流与频率的关系曲线。因此,供给DSP内核电流可根据不同的并行处理任务和内核工作频率来确定。若并行处理较少,工作频率低,所需电流就小。这样,最大内核功耗为:
PDD=VDD×IDD=1.2×1.277=1.534W
5.2 外部口功耗估计
外部口的功耗(对VDD-IO)主要是输出引脚(例如数据线的某个位由高到低,或由低到高) 转换的功率消耗,而且该功耗与系统无关。由于这种转换的外部平均电流为0.137A,因此,功耗为:
PDD_IO=0.1370A×3.3V=0.45W javascript:window.open(this.src);" style="cursor:pointer;"/>
6 结束语
本文介绍了多片TigerSHARC DSP在实时信号处理系统中的应用。该系统充分利用了TigerSHARC DSP高速的运算能力及数据吞吐量,可对不同的距离单元段进行并行处理。文中分析了系统的运算量、所需计算时间以及完成算法所需的DSP数,并且讨论了DSP应用过程中的复位,电源设计和功耗问题,因而具有一定的工程指导意义。实践表明,由TigerSHARC DSP构成的系统硬件结构简单,软件编写容易,且成本较低。目前该系统已成功用于某雷达系统。