两种基于FPGA的软件滤波方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
两种基于FPGA的软件滤波方法
基于FPGA 的软件滤波算法设计及实现
随着数字电子技术的发展,数字电路已由早期的分立元件逐渐发展成集成电路,对电路设计的要求越来越高。
尤其是可编程逻辑器件的出现,使得以硬件为载体、以计算机软件为开发环境的现代数字系统的设计方法日趋成熟。
可编程逻辑器件设计灵活、功能强大、可在线修改、效率高等优点深受广大电子设计人员青睐。
目前,大多数现场可编程逻辑阵列( FPGA)芯片是电压敏感型芯片,基于可重构CMOS-SRAM 单元结构,数据具有易失性,工作在低电
压状态,易受干扰,尤其在工控、军用场合,外界电磁环境恶劣,电路耦合、空间辐射的杂波脉冲均会对FPGA 工作的稳定性产生影响。
干扰脉冲和毛刺信号是影响FPGA 稳定工作的主要因素,为了保证输入信号每变化一次,电路只做出一次正确的响应,必须对输入信号进行滤波处理。
要实现信号滤波可以采用硬件滤波和软件滤波两种方法。
与硬件滤波相比,软件滤波不需要硬件电路的支持,从而可以减少元器件的使用,降低成本,更重要的是软件滤波更易于修改,所以常采用软件滤波的方法来实现电路中的信号滤波问题。
通过VHDL 语言编程实现信号滤波功能,介绍了延时滤波法和判决滤波法,并通过实验证明了上述两种滤波方法的可靠性。
1 延时滤波
延时滤波法的滤波原理是对输入信号的脉冲宽度进行鉴别,对那些与真实信号的宽度相差很大的干扰信号进行有效的抑制。
具体的实现流程为在检测到输入信号的状态发生变化后,延时一段时间T,脉冲宽度小于延时时间T 的输入信号被认为是干扰信号,将其滤除;脉冲宽度大于延时时间T 的输入信号则被认为是真实信号,将其输出。
针对不同脉冲宽度的干扰信号,可以通过设置。