新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA分布式算法的滤波器设计

基于FPGA分布式算法的滤波器设计

作者: 时间:2010-10-20 来源:网络 收藏

对A/D采样输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿时启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到完成A/D转换,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。CLK为时钟输入信号线。由顶层文件的分频时钟提供500 kHz时钟,对信号进行采集。
算法主体的实现主要由以下几个部分组成:数据接收存储、数据选择器、2个存储器、加法和控制部分。
数据接收是在每个时钟下降沿时检测转换完成信号,如果完成,则存入对应的存储器中,对于N阶的系统,就需要存储N个数据等待处理。然后利用数据选择器依次选择各个数据,对数据的每一位进行检测和提取,组成算法中所需要的数据。在控制信号的作用下利用累加器对数据叠加、移位处理即可实现。
最后,向DAC0832的数据输入口(D10~D17)输送数据。提供DAC0832数据锁存允许控制信号ILE,高电平有效。提供DAC0832控制信号(CS:片选信号;Xfer:数据传输控制信号;WRl、WR2:DAC寄存器写选通信号),低电平有效。
3 仿真实验、工况信号测试实验
基于低通FIR滤波器选用xilinx公司的virrex-Ⅱpro器件,在isel0.1下进行设计。利用modelsim 6.5对滤波器进行仿真。系统采用频率为500 kHz的分频时钟,在中产生一个高频方波和一个低频锯齿波信号,并对两个信号进行叠加。叠加后的信号作为输入,对应图中DIN,经过系统处理后输出结果对应图中RESULT,仿真结果如图3所示。

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


由图3中可以看出,本系统存在相位偏移和滤波后依然存在杂波信号的缺点,相位偏移主要是由滤波处理滞后于输入引起的,比较稳定且偏移较小,一般情况下可以忽略;杂波信号由系统阶数较低和系数量化误差引起的。实际应用中可根据情况选择适当阶数的滤波器和提高采样频率予以解决。
工况信号测试实验。由信号发生器同时产生一个50 Hz低频信号和一个5 kHz高频信号,然后对两个信号进行叠加,作为被测的工况信号。被测的工况信号经过A/D转换、滤波处理、D/A转换,然后在示波器中显示,如图4所示。输出波形中过滤掉了高频信号部分,同时低频信号能够通过该滤波器。由图4中可以看出,滤波处理后与实际信号还存在一定的误差。误差主要是由于算法中采用了低阶滤波器、系数量化误差、器件精度低等原因所致,该误差可以控制在允许范围,还可以通过选择高精度的器件和增加滤波器的阶数得以提高。



4 结语
实验结果表明,基于低通FIR滤波器的优点是工作可靠,滤波精度较高,且具有占用资源少,运算速度快。在资源允许的条件下可根据实际应用任意确定滤波器的字长和阶数,在高速数字信号处理领域可以得到很好的应用。

分频器相关文章:分频器原理

上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭