您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术采用FPGA的多种类型的数字信号处理滤波器的实现 正文
采用FPGA的多种类型的数字信号处理滤波器的实现

采用FPGA的多种类型的数字信号处理滤波器的实现

点击数:7553 次   录入时间:03-04 11:38:25   整理:http://www.55dianzi.com   DSP/FPGA技术

    首先看如何将低通滤波器转化成高通滤波器。最简单的方法叫做频谱翻转,即将阻带转换为通带,将通带转换为阻带。执行频谱翻转的方法是翻转每一个样本,同时给中心样本添加一个样本。第二种转换高通滤波器的方法为频谱倒转,即镜像频谱响应,方法很简单,就是倒转每一个其它系数。

    完成低通滤波器和高通滤波器的设计之后,就可通过组合便捷地生成带通滤波器和带阻滤波器。生成带阻滤波器只需将高通滤波器和低通滤波器并行布置,然后将输出加总。生成带通滤波器则可通过将低通滤波器和高通滤波器串行布置来实现。



www.55dianzi.com

    实际设计

    上面的内容现已详细说明了窗式正弦滤波器的情况、视窗应用的重要性以及如何生成不同拓扑的滤波器。不过在 FPGA 中实现滤波器之前,必须使用如 Octave、MATLAB或者 Excel等一种软件工具生成一组滤波器系数。许多这些工具都可提供简化的界面和选项,帮助用户以最少的工作量完成滤波器设计,MATLAB 中的 FDA 工具就是最好的示例。

    在为所需滤波器生成一组系数后,就可在 FPGA 中实现滤波器。无论决定采用的抽头数量多寡,FIR 滤波器每一级的基本结构是不变的,总是由乘法器、存储以及加法器构成。

    现在在许多应用中都可看到数字滤波器的身影,而 FPGA 则可为使用它们的系统设计人员带来显著优势。

    大多数工程师青睐的、迄今为止最简单的方法是使用赛灵思 COREGenerator? 工具的 FIR Compiler,其可为定制和生成高级滤波器提供多种选项。用户可将生成的系数以 COE 文件形式导入 FIR Complier。该文件内含已经为基数赋值的各种滤波器系数。

    Radix=10;

    Coefdata =

    -0.013987944,

    -0.01735736,

    -0.005971498,

    0.012068368,

    0.02190073,

    将这些系数加载后,FIR Compiler将显示与所提供系数相对应的该滤波器频率响应,以及阻带衰减与通带纹波等基本性能特征。

    在使用 FIR Compiler 工具完成滤波器定制后,只要用户使用的是正确的仿真库,CORE Generator 就可生成实现设计以及在实现之前的行为仿真过程中对其仿真所需的全部文件。

    如果愿意,用户还可以使用用户自己生成的 HDL 实现该滤波器。这种方法一般只有在用户最终实施目的是ASIC,只是将 FPGA 实施用作原型设计系统时使用。在这种情况下,第一步是量化滤波器系数,以便使用浮点结果的固定数字表示。由于滤波器系数可以为正,也可以为负,常见的做法是采用二的补码格式表示这些系数。在完成系数的量化后,就可将其当作常数用于HDL 设计中。

    现在在许多应用中都可看到数字滤波器的身影,而 FPGA 则可为需要使用它们的设计人员带来显著优势。使用基本数学工具,结合 FPGA 内核生成工具或者直接使用 HDL,可便捷设计和实现窗式正弦滤波器。



上一页  [1] [2] 


本文关键字:滤波器  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术