新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的信号频谱分析系统

基于FPGA的信号频谱分析系统

作者: 时间:2012-06-27 来源:网络 收藏

输入待测模拟信号经过调理电路之后满足AD7655模拟输入电平的要求,AD7655采用模拟5 V,数字5 V与接口3.3 V供电,由的主控制模块控制AD7655进行A/D转换。模数转换部分如图3所示。

本文引用地址://m.amcfsurvey.com/article/190196.htm

d.JPG


2.2 FIFO模块
FIFO是一种先进先出的数据缓存器,他与普通存储器的区别在于没有外部读写地址线,使用简便,缺点是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样,由地址线决定读取或写入某个指定的地址,FIFO一般用于不同时钟域之间的数据传输。
将经过A/D转换后的16位数据存储到内部的FIFO存储器中,之所以选择FIFO而没有选择双端口,RAM作为缓冲器是因为FIFO不需要地址信号。当FIFO的状态为“满”时会向FPGA内部的主控制模块发出请求,主控制模块允许之后将数据写入FFT运算模块用于存储实部的双口RAM中作为FFT运算的初始数据。FIFO的数据宽度与A/DC的输出数据宽度一致,其深度是进行FFT运算的点数。中每次采样1 000点进行频域分析,为避免产生时域混叠现象需满足频域采样点数N≥1 000,设计取频域采样点数N=1 024。所以FIFO缓冲器的宽度为16位,深度为1 024,结构如图4所示。

e.JPG


2.3 FFT运算模块
离散傅里叶变换(DFT)开辟了频域离散化的道路,使得数字信号处理可以在频域采用数字运算方法进行。快速傅里叶变换(FFT)是DFT的快速算法,FFT运算模块是本的核心模块。在基2快速算法中,频域抽取法FFT是一种常用的快速算法,即DIF—FFT。其数学模型为
f.JPG
采用按频率抽选的顺序输入,倒序输出结构,这种结构中的每一级运算都是固定的,便于寻址,适合于在FPGA上实现,其运算流图结构如图5所示。

g.JPG


FFT运算模块主要由乒乓RAM、蝶形运算单元、存储单元、地址产生单元、控制单元等组成。FFT运算模块的设计采用了乒乓操作,系统有两块乒乓RAM,每一块由两块完全相同的双口RAM组成。在具体计算过程中,A乒乓RAM中的一块参加运算,另一块从外部接收下一次FFT运算的数据。B乒乓RAM中也有一块参加运算,另一块向外部输出上一次运算的结果。一次FFT运算完成后,两块乒乓RAM做一次乒乓,如此反复,直到FFT运算结束并将结果求模输出到结果存储器。采用乒乓操作主要是为了保证运算模块不会为了数据的载入而停止运算可以有效提高运算速度。



评论


相关推荐

技术专区

关闭