基于fpga的数字频率计的设计-课程论文大学论文.doc
《基于fpga的数字频率计的设计-课程论文大学论文.doc》由会员分享,可在线阅读,更多相关《基于fpga的数字频率计的设计-课程论文大学论文.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、South China Normal University课程设计实验报告课程名称: EDA技术 指导老师: 专业班级: 2014级 电路与系统姓 名: 学 号: 基于FPGA的谐波合成设计摘要:本文介绍了EP2C5T144C8N微处理器实现多次谐波产生和合成周期性方波的设计,产生的基波频率、各次谐波幅度、相位均可单独数字设置并控制,并最终通过PWM和LPF得到失真较小的谐波合成信号。本文最后对设计进行了测试与运行,从而验证该设计方案的可行性。关键词:谐波;基波;PWMAbstract:EP2C5T144C8N microprocessor implementation are introdu
2、ced in this design and synthesis of cyclic square wave, multiple harmonics produced by fundamental wave frequency, every harmonic amplitude and phase separately digital set and control, and finally obtained by PWM and LPF harmonic synthesis of less distortion of the signal. Finally, the paper has ca
3、rried on the test to design and operation, to verify the feasibility of the design.Key words: Harmonic; Fundamental wave; PWM目 录1 引言41.1 FPGA简介41.2 Quartus简介51.3谐波合成原理62 系统总体分析72.1 系统总体分析72.2系统软件组成92.3系统硬件组成92.4系统运行环境102.5 系统总体框架103软件模块设计113.1 CPU模块设计113.2 Quartus 模块设计153.3 Nios II 模块设计163.3.1 谐波合成1
4、73.3.2 按键中断183.3.4 PWM输出214 系统测试及分析224.1 n次谐波测试224. 2 按键测试234.3幅度按键测试234.4 相位按键测试244.5 频率按键测试245 总结25参考文献261 引言1.1 FPGA简介FPGA(FieldProgrammable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 目前以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,
5、可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flipflop)或者其他更加完整的记忆块。 FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的FPGA。因为这些芯片有比较差的可编辑能力
6、,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。FPGA工作原理FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。编辑本段FPGA的基本特点1)采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。 2)FPGA可做其它全定制或半定制ASIC电路的中试样片。 3)FPGA内部有丰富的触发器和IO引脚。
7、4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 1.2 Quartus简介Quartus是Altera公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大可编程逻辑器件的供应商之一。Quartus界面友好,使用便捷,被誉为业界最易用易学的EDA软件。在Quartus上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,是设计者能方便地进行设计输入、快速处
8、理和器件编程。 Quartus提供了方便的设计输入方式、快速的编译和直接易懂的器件编程。能够支持逻辑门数在百万门以上的逻辑器件的开发,并且为第三方工具提供了无缝接口。 Quartus软件包的编程器是系统的核心,提供功能强大的设计处理,设计者可以添加特定的约束条件来提高芯片的利用率。在设计流程的每一步,Quartus软件能够引导设计者将注意力放在设计上,而不是软件的使用上。同时,自动的错误定位、完备的错误和警告信息,使设计修改变得简单容易。1.3谐波合成原理基波(分量):对周期性交流分量进行傅里叶级数分解,得到的与工频相同的分量称为基波。谐波(分量):对周期性交流分量进行傅里叶级数分解,得到的为
9、基波频率大于1的整数倍的分量称为高次谐波,简称谐波。谐波次数:谐波频率与基波频率的整数比。任何电信号都是由各种不同频率、幅度和初相的正弦波迭加而成的。1822年法国数学家傅里叶在研究热传导理论时提出并证明了将周期函数展开为正弦级数的原理。奠定了傅里叶级数的理论基础、揭示了周期信号的本质,即任何周期信号(正弦信号除外)都可以看作是由无数不同频率、不同幅度的正弦波信号叠加而成的,就像物质都是由分子或者原子构成一样。周期信号的基本单元信号是正弦谐波信号。谐波合成的过程是一个逆傅里叶级数的过程,即将由傅里叶级数展开的周期信号的各次谐波重新叠加起来合成原信号的过程。由傅里叶级数的定义可知,傅里叶级数得出
10、的是一个无穷级数,谐波需要无穷次叠加才能得出原信号。这在现实中是不可实现的,一般的当谐波数量达到5次以上时,就能大致得出原有信号。如图1.1所示:图1.1 方波合成图图1.1为方波的七次谐波合成图,由频域图可以看出方波只有奇次谐波。方波由多个正选函数和余弦函数叠加而成,当叠加次数达到3次时,基本上能看出方波的模样。2 系统总体分析2.1 系统总体分析本设计的总体分析比较主要包括了软件实现方式、波形输出方式、人机交互方式等,从而选择出具有可行性的符合实际需求的总体方案。1) 软件实现方式本设计采用FPGA作为硬件平台,但是由于本设计所涉及的谐波合成需要使用正弦函数和余弦函数,Verilog或VH
11、DL中并没有三角函数库的支持,需要通过其他软件将所需要的三角函数数据存入存储器中调用,并且Verilog或VHDL并不支持浮点型操作。为了解决以上问题,本设计采用了SOPC技术。SOPC即可编程片上系统,通过可编程逻辑技术把一个完整的系统安装在一块硅片上。SOPC是一种特殊的嵌入式系统:首先它是片上系统(SOC),可通过单个芯片来完成整个系统所需要的主要逻辑功能;其次,它是可编程系统,可进行裁减、扩充、升级等灵活的设计方式,并且具有软硬件均在系统上可编程的功能。本设计是一个基于NiosII的SOPC系统。NiosII的硬件通过QuartusII定制合适的CPU和外设来完成。完成NiosII的硬
12、件开发后,QuartusII将自动生成用户定义的NiosII CPU和外设系统、存储器、外设地址映射等相应的软件开发包SDK,在生成的SDK基础上,进入软件开发流程。用户可使用汇编或C来进行相应的嵌入式程序设计。而C函数库中包含了三角函数,并且支持浮点型操作,能大大缩短开发周期和整形操作所带来的误差。因此本设计主要基于FPGA+SOPC+C语言的方式实现软件设计。2) 波形输出方式通过FPGA的IO端口输出的是一个数字信号,而一般示波器所检测的是模拟信号,要令示波器显示出谐波叠加后的波形必须通过数/模转换(D/A转换)将数字信号转换模拟信号。数模转换可通过两种方式实现,一种是通过专门的D/A芯
13、片实现,另一种则是通过PWM和LPF实现的。PWM即脉冲宽度调制,是一种对模拟信号电平进行数字编码的方法。通过计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。如图2.1所示:图2.1 脉冲宽度调制图b图中将正弦波量化成7个点,并用等宽不同占空比的脉冲表示对应的值,通过这一方式将一个模拟量转换为数字量输出。当PWM输出通过一个低通滤波器(LPF)后这个数字信号就能还原为一个模拟信号,供示波器使用。3) 人机交互方式设计中的人机交互方式有两种,一种是使用FPGA平台上自带的七段数码管,另一种则是外接一个LCD显示屏。由于设计本身仅需要显示幅度、频率、相位等数值,无需使用中文字
14、符,并且平台上已自带有四个共阳极的其段数码管,使用方便,故使用七段数码管和平台上的按键组合实现人机交互。2.2系统软件组成系统软件三部分组成:CPU模块设计、Quartus模块设计和Nios II模块设计。CPU模块使用Qsys设计。Qsys是Altera的系统集成工具,能够方便的根据用户要求搭建出自定义CPU。Quartus模块设计是将通过Qsys生成的CPU作为一个元件调用,并在CPU周围加上适当的外设和进行引脚分配。Nios II模块设计主要负责烧写到CPU上运行的程序设计。在本设计是指使用C语言实现谐波合成、PWM输出以及人机交互。系统软件首先设计好CPU,然后Quartus模块调用C
15、PU并加上适当的外设和进行引脚分配后写入FPGA平台中,再进行Nios II模块的设计。设计完毕后检测FPGA上是否已装有CPU,当已装有CPU时将程序下载到CPU中并运行。2.3系统硬件组成系统硬件由按键、七段数码管和低通滤波器组成,其中按键与七段数码管FPGA平台自带无须搭建,低通滤波器采用电阻和电容简单的搭建然后将输入端与FPGA平台的端口相连。2.4系统运行环境系统的软硬件环境关系到系统自身的稳定性和生命周期。本系统采用Cyclone II 的EP2C5T144C8作为硬件平台的核心模块。CycloneII器件包含了许多新的特性,如嵌入存储器、嵌入乘法器、PLL和低成本的封装等。系统软
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 fpga 数字频率计 设计 课程 论文 大学
限制150内