基于ModelSim的FFT算法的设计学士学位论文.doc
《基于ModelSim的FFT算法的设计学士学位论文.doc》由会员分享,可在线阅读,更多相关《基于ModelSim的FFT算法的设计学士学位论文.doc(64页珍藏版)》请在三一文库上搜索。
1、理工大学学士学位论文基于ModelSim的FFT算法的设计学士学位论文摘 要快速傅立叶变换(FFT)作为时域和频域转换的基本运算,是数字谱分析的必要前提。传统的FFT使用软件或DSP实现,高速处理时实时性较难满足,因此专用集成电路(ASIC)和可编程逻辑器件(以现场可编程门阵列FPGA为代表)应运而生。速度上ASIC更占优势,但是随着点数的增加,芯片面积将迅速扩大,也就意味着成本的提高。而FPGA内部含有硬件乘法器,大量的存储单元和可编程I/O,十分适合于FFT处理器的实现,而且相对ASIC,成本低廉,可以反复编程,便于调试,也更具市场竞争力。本文应用Verilog语言完成32点基-2复数的F
2、FT处理系统设计,包括蝶形运算单元设计、存储单元设计、块浮点单元设计、地址产生单元设计、功能切换单元设计以及时序控制单元的设计工作。以选取的FPGA器件库为基础,使用modelsim软件进行仿真,并对结果进行分析。关键词:快速傅立叶变换;Verilog;单元设计;modelsim仿真IIAbstractFast Fourier Transform is a necessary precondition of digital spectral analysis as the basic computing between the time domain and frequency domain.
3、 The traditional FFT uses software or DSP to realize, which is difficult to meet real-time in high speed processing. Application specific integrated circuit (ASIC) and programmable logic device (represented by field programmable gate array, FPGA) arises at the historic moment. ASIC has the advantage
4、 in the speed, but the chip area will expand rapidly with the processing points increasing, which means the improvement of costs. While FPGA contains hardware multipliers, massive memory cells and programmable I/O, so it is very suitable for implementation of FFT processor. Therefore, FPGA is low-co
5、st, easy to debug and can be repeatedly programmed. It has more market competitiveness.Use Verilog language completed 32 points 2 complex FFT processing system design, Including butterfly computing unit design, storage unit design, block floating-point unit design, the address generation unit design
6、, the function switch unit design and timing control unit design work . On the basis of the selected library as the FPGA device, use the modelsim simulation software, and analyze the results.Key Words:FFT;Verilog;Unit design;modelsim simulation59目 录1 绪论11.1 课题的背景及意义11.2 FFT的国内外发展研究现状21.2.1 通用数字信号处理芯
7、片21.2.2 专用集成电路芯片ASIC31.2.3 可编程逻辑器件31.3 篇章结构52 离散福利叶变换的快速算法的基本理论62.1 基-2FFT算法62.2 定点数的相关概念15 2.2.1 定点数的定义15 2.2.2 定点数加减法的溢出及检测方法152.3 定点数的定标162.4 有限字长效应162.5 块浮点数173 FFT的算法设计183.1 FFT处理器的实现框图183.2 蝶形运算单元的设计183.3 流水线结构253.4 存储单元的设计26 3.4.1 FFT数据存取规律分析26 3.4.2 双口RAM及其地址发生器的设计27 3.4.3 ROM 及其地址发生器的设计303.
8、5 浮点单元的设计333.6 时序控制单元的设计384 基于verilog语言的FFT的设计与仿真404.1 ModelSim介绍404.2 ModelSim仿真404.2.1 建立工程414.2.2 加载文件414.2.3 开始仿真424.3 结果分析44结 论46致 谢47参考文献48附录 A 英文原文50附录 B 汉语翻译551 绪论1.1 课题的背景及意义随着数字技术与计算机技术的发展,数字信号处理(Digital Signal Processing,DSP)技术已深入到各个学科领域,其应用又是多种多样,但数字信号处理基本上从两个方面来解决信号的处理问题:一个是时域方法,即数字滤波;另
9、一个是频域方法,即频谱分析。处理的任务大致分为三类:卷积用于各种滤波器,对给定频率范围的原始信号进行加工(通过或滤出)来提高信噪比;相关用于信号比较,分析随机信号的功率谱密度;变换用于分析信号的频率组成,对信号进行识别。其中,离散傅立叶变换(Discrete-time Fourier Transform,DFT)和卷积是信号处理中两个最基本也是最常用的运算,它们涉及到信号与系统的分析与综合这一广泛的信号处理领域。由数字信号处理的基本理论可知,卷积可以转化为DFT来实现,实际上其他许多算法,如相关、谱分析等也都可以转化DFT来实现;此外,各种系统的分析、设计和实现中都会用到DFT的计算问题。所以
10、,DFT在各种数字信号处理中起着核心作用,而DFT的快速算法快速傅立叶变换(Fast Fourier Transform,FFT)就成为了数字信号处理的最基本技术之一,对FFT算法及其实现方式的研究是很有意义的。目前,FFT广泛应用在频谱分析、匹配滤波、数字通信、图像处理、语音识别、雷达处理、遥感遥测、地质勘探和无线保密通讯等众多领域。在不同应用场合,需要不同性能要求的FFT处理器。在很多应用领域都要求FFT处理器具有高速度、高精度、大容量和实时处理的性能。因此,如何更快速、更灵活地实现FFT变得越来越重要。此外,数字滤波在图像处理、语音识别和模式识别等数字信号处理中占有重要地位。与模拟滤波器
11、相比,数字滤波器可以满足滤波器幅度和相位特性的严格要求,可以克服模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。有限冲激响应(FIR)滤波器可以保证严格的线性相位。同时由于其实现结构主要是非递归的,因此FIR滤波器可以稳定工作。FIR滤波器被广泛用于各类数字信号处理系统中实现卷积、相关、自适应滤波、正交插值等处理。随着数字信号处理技术的发展,在消费电子领域要求处理速度更快、功耗更低、集成度更高和产品开发周期更短,因此许多数字信号处理的实现方法被不断提出,其中基于FPGA的数字信号处理实现技术就是其中的重要技术之一。近几年,随着现场可编程门阵列FPGA技术的迅速发展,采用并行度更大、速度更
12、快的FPGA芯片来实现FFT和FIR数字滤波器己成为必然趋势。FPGA技术的关键就是利用强有力的设计工具来缩短开发周期,提供元器件的优质利用性,降低设计成本,并能够并行处理数据,容易实现流水线结构,且升级简便,提高设计的灵活性,这些都非常适合实现FFT算法和FIR数字滤波器。因此,自主研发基于FPGA芯片的FFT和FIR数字滤波器,把FFT和FIR数字滤波器实时性的要求和FPGA芯片设计的灵活性结合起来,实现并行算法与硬件结构的优化配置,提高FFT和FIR数字滤波器处理速度,满足现代信号处理的高速度、高可靠性要求,成为了现今我国数字信号处理的一个研究点。鉴于此种趋势,作者将基于FPGA的FFT
13、和FIR数字滤波器设计与实现作为了研究课题。1.2 FFT的国内外发展研究现状针对FFT和FIR数字滤波器的硬件实现方案主要有三种途径:DSP处理器、专用集成电路ASIC、可编程逻辑器件,其中可编程逻辑器件以FPGA为代表。1.2.1 通用数字信号处理芯片通用数字信号处理芯片即DSP处理器,按照DSP的用途,可分为通用型DSP芯片和专用型DSP芯片。通用型DSP芯片适合普通的DSP应用,通用DSP芯片具有接口灵活、编程方便、稳定性好、运算精度高等特点,同时也更适应于大规模集成电路如TI公司的一系列DSP芯片属于通用型DSP芯片。专用DSP芯片是为特定的DSP运算而设计的,更适合特殊的运算,如数
14、字滤波、卷积和FFT,如Motorola公司的DSP56200,Zoran公司的ZR34881,Inmos公司的IMSA100等就属于专用型DSP芯片。针对一般数字信号处理算法的实现,采用通用可编程硬件处理器技术来实现FFT和FIR数字滤波器。这种实现方法具有软件设计多用性的优点,能够适用于各种需要FFT运算和FIR数字滤波器进行信号处理的应用场合,灵活方便。但是,通用DSP处理器构成的FFT处理器和FIR数字滤波器采用循环编码算法,程序量小,但存在大量的冗余运算,需要许多跳转操作,处理速度较慢,难以满足现代数字信号处理高速、大规模、实时性的要求。在进行大点数FFT计算和FIR数字滤波时,并行
15、算法与DSP处理器的寻址能力不相适应,不能有效利用数据传输的带宽和运算能力,造成硬件资源的浪费。1.2.2 专用集成电路芯片ASIC在集成电路界ASIC被认为是一种为专门目的而设计的集成电路。是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。ASIC在一些特殊功能的表现上相当好,这种方案运算速度快,可靠性高,非常适合实时和对可靠性要求较高的信号处理系统,在批量生产时与通用集成电路相比具有体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点,但是专用芯片不能重新组态,可编程能力有限,在产品发展过程中,它的功能无法任意修改或改进。因此,任何的线路改版都需要重新设计并且重
16、新制造,这不仅增加开发成本,而且造成产品快速上市的障碍,不太适合处理算法和参数经常改变的场合。1.2.3 可编程逻辑器件可编程逻辑器件以其独特的优越性能,一出现就受到大家的青睐。它不仅速度快、集成度高,并且几乎能随心所欲的完成定义的逻辑功能,还可以加密和重新编程,其编程次数可以达到1万次以上。使用可编程逻辑器件可以大大简化硬件系统,降低成本,提高系统的可靠性、灵活性和保密性。因此,可编程逻辑器件是设计数字系统的理想器件。现在已广泛用于计算机硬件、工业控制、智能仪表、通信设备和医疗电子仪器等多个领域。可编程逻辑器件的应用不仅使电子产品性能有了很大改善,而且也使数字系统设计方法发生了根本性变革。其
17、中,现场可编程门列阵(FPGA)是最近几年发展起来的新型高密度可编程逻辑器件。现场可编程门阵列(FPGA)是20世纪80年代中期由美国Xilinx公司首先推出的大规模可编程逻辑器件。由于FPGA器件采用标准化结构,并且具有体积小、集成度高、功耗低、速度快、可无限次反复编程等特点,已成为开发电子产品的首选器件。FPGA的功能由逻辑结构的配置数据决定。工作时,这些配置数据存放在片内的SRAM或者熔丝图上。使用无SRAM的FPGA,在工作前需要从芯片外部加载配置数据。配置数据可以存储在片外的EPROM或其他存储体上,人们可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场编程。世界上第一片FPGA
18、由美国Xilinx公司于1985年发明,因而FPGA技术在国外发展较早,随着FPGA技术的普及,使用FPGA芯片设计正在世界范围内兴起。国内外已积极地开展了基于FPGA的数字信号处理算法应用与研究,并且也取得了长足的进步。目前在国际上,两大FPGA巨头Xilinx和Altera除了FPGA的生产外还与其第三方合作伙伴致力于IP核的开发。这些IP核中包含了基本的数字信号处理模块,如FFT、FIR等。由于FPGA芯片厂商对自己公司生产的芯片的性能非常了解,因此设计的模块能最大限度的发挥芯片的性能。目前Altera公司提供的FFT模块采用4引擎结构,在实现1024点FFT时所需时间己经降至很低。使用
19、IP核构建数字信号处理系统具有诸多优点,如开发周期短、性能稳定、可靠、维护方便等。但也存在以下的缺点:IP核价格昂贵(Altera公司的FFT IP核售价为7995美元),且IP核源代码不对外开放,不利于二次开发;IP核针对通用的设计,在某些特殊的应用场合不一定最优因此还难以在我国基层应用领域普及。国内方面,我国的FPGA技术起步较晚,但是进入21世纪后,发展非常迅速。目前不少大学及研究所都使用FPGA芯片设计开发具有自主知识产权的FFT和FIR数字滤波器,但是由于起步较晚,基础薄弱,所设计的FFT和FIR数字滤波器无论是速度,还是可扩展性上都与国外有一定差距。2002年罗雪苟、詹阳分析了使用
20、FPGA实现FFT的几种方法,对这几种方法的优缺点进行了讨论。2003年韩颖等采用Xilinx公司的FPGA设计了FFT处理器。采用流水方式对复数数据实现了加窗、FFT、求模平方三种运算,整个设计使用双基-2蝶形运算单元,采用流水线方式尽量避免瓶颈的出现,提高了系统时钟频率。2004年刘国栋等也使用基2算法设计了FFT单元,他使用了ALTERA高性能的Stratix器件对512点、1024点、2048点、4096点和8192点都进行了分析。2004年鲁欣等也设计了4096点FFT,但是他使用了1024点的FFT IP核进行了扩展设计,如果系统输入时钟为50MHz,计算时间为0.577ms。20
21、08年刘在爽、卢莹莹对FPGA实现FIR数字滤波器也进行研究,讨论了乘累加和基于CSD(Canonic signed Digital,标准有符号数)编码的数字滤波器的设计。1.3 篇章结构本文主要针对基-2顺序处理的FFT处理器和FIR数字滤波器的FPGA实现进行了研究,涉及算法选取、处理器结构设计、系统仿真、FPGA实现和系统测试。本论文共5章,各章的具体内容如下:第1章阐述了硬件实现的国内外现状及选题的意义和论文内容。第2章为离散福利叶变换的快速算法的基本理论;第3章为基于modelsim的FFT算法的设计第4章为基于verilog语言的32点基-2复数的FFT的设计与仿真最后一章为结论最
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ModelSim FFT 算法 设计 学士学位 论文
链接地址:https://www.31doc.com/p-3921322.html