基于FPGA的方波信号发生器 下载本文

内容发布更新时间 : 2024/11/19 3:44:30星期一 下面是文章的全部内容请认真阅读。

EDA课程设计实验报告

基于FPGA的方波信号发生器

设计内容: 基于FPGA的方波信号发生器 代课老师: 学 号: 姓 名:

专 业: 电子与通信工程

摘要:本设计是采用了EDA技术设计的方波信号发生器。实现是基于FPGA语言描述正弦波基波和多次谐波叠加模块,然后在QuartusⅡ软件上实现波形的编译,仿真和下载到Cyclone芯片上。整个系统由正弦波产生模块、数码管显示模块、波形频率控制和波形幅度控制四个部分组成。最后经过QuartusⅡ软件仿真,证明此次设计可以通过多次谐波叠加形成方波,并通过频率控制和幅度控制改变方波波形。

关键字:VHDL;QuartusⅡ;Cyclone;函数信号发生器

1、Quartus II软件简介

1.1 Quartus II软件介绍

Quartus II 是Alera公司推出的一款功能强大,兼容性最好的EDA工具软件。该软件界面友好、使用便捷、功能强大,是一个完全集成化的可编程逻辑设计环境,具有开放性、与结构无关、多平台完全集成化丰富的设计库、模块化工具、支持多种硬件描述语言及有多种高级编程语言接口等特点。

Quartus II是Altera公司推出的CPLD/FPGA开发工具,Quartus II提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片平面布局连线编辑;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTap II逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。

1.2 Quartus II软件设计流程

(1)打开Quartus II软件。

(2)选择路径。注意:工作目录名不能有中文。 (3)添加设计文件。

(4)选择FPGA器件。Family选择Cyclone,240,8。 (5)建立原理图或用VHDL语言描述设计电路。

(6)对原理图或用VHDL语言进行编译,无误后进行添加信号。 (7)对上述电路进行仿真。 (8)进行管脚分配。

(9)全局编译,采用JTAG或者AS模式进行下载测试.

2、系统设计方案

采用现场可编程逻辑阵列(Field Programmable Gate Array,FPGA)设计DDS电路比专用DDS芯片更具灵活性。因为只要通过改变FPGA内部波形存储器中的波形数据,就可以实现任意波形输出,这使得用FPGA来实现DDS具有相当大的灵活性。相比之下,FPGA所能实现的功能完全取决于设计需求,可以简单也可以复杂,另外,FPGA芯片还支持在系统升级,虽然在精度和速度上略有不足,但是基本上能满足绝大数系统的要求,并且,将DDS设计嵌入到FPGA内部所构成的系统中,其系统成本并不会增加多少,而专用DDS芯片的价格一般也比FPGA高。因此,采用FPGA来设计DDS系统具有较高的性价比。

本设计利用正弦波的基波和多次谐波合成方波,通过相关按键来调节方波的频率相位和幅度,并在数码管上显示出来。

调幅乘法器 振幅控制字 频率控制字 相位累加器 正弦波数据存储器 D/A 低通滤波 相位累加器 3次谐波数据存储器 相位累加器 5次谐波数据存储器 波形输出 相位累加器 时钟信号 7次谐波数据存储器 图1

2.1方波分解为多次正弦波之和的原理

代表周期性方波信号的函数f(t)满足狄利克雷条件,即方波可以表示为多次正弦波之和。如图2所示方波信号,其周期为2且正半周期负半周期是形状全同的矩形,在区间(0,2)内可用函数表示为:

??1f(t)?????1(0?t?1)(1?t?2)