本文介绍了能高效实现固定常数乘法的分布式算法原理,给出了在FPGA 中用查找表实现FIR滤波器的算法设计,并以一个16 阶低通滤波器为例说明了设计过程。该设计通过Altera 公司的EPF10K30器件进行验证,结果正确,工作稳定可靠,满足了设计要求。关键词:FIR 滤波器,分布式算法,FPGA,查找表,LUT在数据通讯、语音信号处理、图像处理等传输过程中都广泛地运用到数字滤波器。FIR滤波器(有限冲激响应数字滤波器)由有限个采样值组成,因其具有严格的线性相位特性而得到广泛应用。目前的数字滤波电路,主要采用MCU(单片机)、DSP(数字信号处理器)和ASIC(专用集成电路)来实现。其中,单片机速度较慢;ASIC 虽然性能良好,但灵活性差,只能实现一些特殊的功能;DSP 可以实现并行乘法和加法运算,是一个典型的执行连续数学运算处理的信号处理硬件,目前应用较广。但是,DSP 的串行指令执行方式,使其工作速度和效率大打折扣。长期以来,FPGA 一直被用于逻辑或时序控制上,很少用于信号处理方面,主要原因是FPGA 中没有直接的硬件乘法器。DA 算法(分布式算法)是一种以实现乘加运算为目的的运算方法,与传统算法相比,DA 算法可以极大地减少硬件电路的规模,提高电路的执行速度,通过分布式算法,对于固定系数的乘法算法问题就能得到很好的解决。本文采用 DA 算法,就基于FPGA 的FIR 滤波器进行了设计与实现,所设计的FIR 滤波器占用硬件资源少、速度高,具有稳定、精确和严格线性相位的特点。
猜您喜欢
推荐内容
开源项目推荐 更多
热门活动
热门器件
用户搜过
随便看看
热门下载
热门标签
评论