×

如何使用FPGA和CPLD实现FFT算法与仿真分析

消耗积分:0 | 格式:rar | 大小:0.30 MB | 2021-02-01

分享资料个

  可编程逻辑器件rPGA(现场可编程门阵列)和CPLD(复杂可编程逻辑器件)越来越多的应用于数字信号处理领域,与传统的ASIC(专用集成电路和DSP数字信号处理器)相比,基于FPGA和CPLD实现的数字信号处理系统具有更高的实时性和可嵌入性,能够方便地实现系统的集成与功能扩展。FFT的硬件结构主要包括蝶形处理器、存储单元、地址生成单元与控制单元。本文提出的算法在蝶形处理器内引入流水线结构,提高了FFT的运算速度。同时,流水线寄存器能够寄存蝶形运算中的公共项,这样在设计蝶形处理器时只用到了一个乘法器和两个加法器,降低了硬件电路的复杂度。为了进一步提高FFT的运算速度,本文在深入研究各种乘法器算法的基础上,为蝶形处理器设计了一个并行乘法器。在实现该乘法器时,本文采用改进的布斯算法,用以减少部分积的个数。同时,使用华莱士树结构和4-2压缩器对部分积并行相加。本文以32点复数FFT为例进行设计与逻辑综合。通过设计相应的存储单元,地址生成单元和控制单元完成FFT电路。电路的仿真结果与软件计算结果相符,证明了本文所提出的算法的正确性。另外,本文还对设计结果提出了进一步的改进方案,在乘法器内加入级流水线寄存器,使FFT的速度能够提高到当前速度的两倍,这在实时性要求较高的场合具有极高的实用价值。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !