1 系统器件的选用
HSP50214B的输出方式有三种模式:直接并行输出、缓冲模式输出和串行输出。本设计HSP50214B采用并行直接输出模式,此模式下,HSP50214B输出两组16位的实时数据:AOUT(15:0)和BOUT(15:0),AOUT端口可以输出数据I、幅度和频率。BOUT端口可以输出数据Q、相位和幅度。
2 FIFO双向接口设计
工作过程:ADC输出的14bit中频信号经锁存器输入到HSP50214B,在HSP50214B中经程控的NCO驱动混频器后,混频得到更低的中频信号或零中频信号,该信号经积分梳状滤波器(CIC)和有限冲激响应滤波器(FIR)抽取滤波,最后将得到的信号以所需格式输出送DSP处理。
如果DDC直接与DSP的外部存储器接口(EMIF)连接传输数据,由于DSP需扩展外部存储器,与采样数据输入共用仅有的一条外部总线,CPU要进行外部存储器的访问,不允许数据采集始终占用外部总线。另外,如果存储控制系统不能及时接收数据,上次采样的数据会马上被下次的数据更新,造成数据丢失。因此DDC与DSP之间需采用高速缓存。
目前常用的缓存有FIFO、SRAM及双口RAM等。双口RAM和SRAM存储量较大,但必须配以复杂的地址发生器。本设计只需要单向的数据传输,对于FIFO芯片,数据顺序进出,且允许数据以不同的速率写入和读出,外围电路简单,所以选用TI公司SN74ACT7804 FIFO作为数据缓存,在HSP50214B与DSP之间将两片FIFO并列,分别缓存HSP50214B输出的AOUT和BOUT两路16bit的数据。
TI公司的SN74ACT7804是512×18bit的触发式FIOF存储器,单向数据传输,有空(/EMPTY)、满(/FULL)、半满(Half-Full)状态标志引脚,还有可编程的近满/近空(Almost-FulL/Almost-Empty)状态标志,处理数据的速度可达到50MHz。
2.1 FIFO与DDC接口设计
在设计DDC与FIFO接口时,应仔细考虑DDC及所选中间逻辑器件的时序和延时特性,以保证数据的有效传输。HSP50214B采用并行直接输出模式,HSP50214B输出两组16位的数据:AOUT(15:0)和BOUT(15:0),信号直接与两FIFO低16位输入数据线连接,FIFO输入时钟信号LDCK由HSP50214B的/DATARDY信号提供。当HSP-50214B中的数据在并行数据总线上准备输出时,/DATARDY引脚会在PROCCLK时钟的第一个下降沿产生一个下降沿的电平跳变,并会持续一个PROCCLK时钟周期的低电平。同时,可用此低电平来控制并行输出使能/OEAL、/OEAH、/OEBL和/OEBH。由于FIFO的信号输入时钟LDCK在上升沿时有效,所以需要将/DATARDY信号反向后供给。
2.2 FIFO与DSP EMIF接口
3 接口时序
设计中,FIFO采用半满信号。若FIFO使用满(/FULL)状态信号,则满(/FULL)状态位有效时,触发DMA开始数据传输;如在满信号和DMA传输之间仍有数据出现在数据线上,则因为此时LDCK对FIFO无效,待DMA开始数据传输时才允许数据写入,所以可能丢失采集数据。本设计中采用半满(HF)信号作为标志位,在半满时,开始DMA传输,不中断数据写入FIFO。由于ADC数据写入FIFO速度小于EMIF读出速度,所以后续数据不会覆盖原来的有效数据,采样数据不会丢失。
EMIF读FIFO逻辑关系如下:UNCK=/CE+/ARE,LDCK=/CE+/AWE,OE=/CE+/AOE,读FIFO时序如图3所示。
本设计利用双FIFO结构实现DDC与DSP间的32位数据缓冲,保证了数据的高速有效传输。FIFO与DSP采用32位的接口方式,DSP EMIF读取FIFO采用DMA的数据传输方式,充分利用了DSP的硬件资源以提高系统实时处理能力,能够满足软件无线电的中频数字信号处理要求。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』