基于FPGA的方波信号发生器资料.docx

上传人:b****6 文档编号:14193944 上传时间:2023-06-21 格式:DOCX 页数:13 大小:1.99MB
下载 相关 举报
基于FPGA的方波信号发生器资料.docx_第1页
第1页 / 共13页
基于FPGA的方波信号发生器资料.docx_第2页
第2页 / 共13页
基于FPGA的方波信号发生器资料.docx_第3页
第3页 / 共13页
基于FPGA的方波信号发生器资料.docx_第4页
第4页 / 共13页
基于FPGA的方波信号发生器资料.docx_第5页
第5页 / 共13页
基于FPGA的方波信号发生器资料.docx_第6页
第6页 / 共13页
基于FPGA的方波信号发生器资料.docx_第7页
第7页 / 共13页
基于FPGA的方波信号发生器资料.docx_第8页
第8页 / 共13页
基于FPGA的方波信号发生器资料.docx_第9页
第9页 / 共13页
基于FPGA的方波信号发生器资料.docx_第10页
第10页 / 共13页
基于FPGA的方波信号发生器资料.docx_第11页
第11页 / 共13页
基于FPGA的方波信号发生器资料.docx_第12页
第12页 / 共13页
基于FPGA的方波信号发生器资料.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于FPGA的方波信号发生器资料.docx

《基于FPGA的方波信号发生器资料.docx》由会员分享,可在线阅读,更多相关《基于FPGA的方波信号发生器资料.docx(13页珍藏版)》请在冰点文库上搜索。

基于FPGA的方波信号发生器资料.docx

基于FPGA的方波信号发生器资料

EDA课程设计实验报告

基于FPGA的方波信号发生器

 

设计内容:

基于FPGA的方波信号发生器

代课老师:

学号:

姓名:

专业:

电子与通信工程

 

摘要:

本设计是采用了EDA技术设计的方波信号发生器。

实现是基于FPGA语言描述正弦波基波和多次谐波叠加模块,然后在QuartusⅡ软件上实现波形的编译,仿真和下载到Cyclone芯片上。

整个系统由正弦波产生模块、数码管显示模块、波形频率控制和波形幅度控制四个部分组成。

最后经过QuartusⅡ软件仿真,证明此次设计可以通过多次谐波叠加形成方波,并通过频率控制和幅度控制改变方波波形。

关键字:

VHDL;QuartusⅡ;Cyclone;函数信号发生器

 

1、QuartusII软件简介

1.1QuartusII软件介绍

QuartusII是Alera公司推出的一款功能强大,兼容性最好的EDA工具软件。

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

QuartusII是Altera公司推出的CPLD/FPGA开发工具,QuartusII提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:

可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片平面布局连线编辑;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTapII逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。

1.2QuartusII软件设计流程

(1)打开QuartusII软件。

(2)选择路径。

注意:

工作目录名不能有中文。

(3)添加设计文件。

(4)选择FPGA器件。

Family选择Cyclone,240,8。

(5)建立原理图或用VHDL语言描述设计电路。

(6)对原理图或用VHDL语言进行编译,无误后进行添加信号。

(7)对上述电路进行仿真。

(8)进行管脚分配。

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

2、系统设计方案

采用现场可编程逻辑阵列(FieldProgrammableGateArray,FPGA)设计DDS电路比专用DDS芯片更具灵活性。

因为只要通过改变FPGA内部波形存储器中的波形数据,就可以实现任意波形输出,这使得用FPGA来实现DDS具有相当大的灵活性。

相比之下,FPGA所能实现的功能完全取决于设计需求,可以简单也可以复杂,另外,FPGA芯片还支持在系统升级,虽然在精度和速度上略有不足,但是基本上能满足绝大数系统的要求,并且,将DDS设计嵌入到FPGA内部所构成的系统中,其系统成本并不会增加多少,而专用DDS芯片的价格一般也比FPGA高。

因此,采用FPGA来设计DDS系统具有较高的性价比。

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

图1

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

代表周期性方波信号的函数

满足狄利克雷条件,即方波可以表示为多次正弦波之和。

如图2所示方波信号,其周期为2且正半周期负半周期是形状全同的矩形,在区间(0,2)内可用函数表示为:

若将

展开为三角傅里叶级数,即将

分解为多次正弦波之和,则有式(13)、式(14)可知,在区间(0,2)内,如图1所示的周期为2的方波信号的

的值分别为:

=

=

=

图2

则在区间(0,2)内

可表示为:

即周期为2s的方波信号中含有大量的正弦波,其频率分别为1/2,3/2,5/2,7/2···其中频率为1/2的正弦波称为基波,其他频率的正弦波称为谐波。

即一周期性方波,可表示为基波与无穷多谐波之和。

实用中进行信号分析时,不可能取无穷多次谐波之和,而只能用有限项来近似表示。

这样就无法避免有一误差

,如果将基波加到

次谐波之和后的函数表示为

,则有

=

+

,即

=

-

这里采用基波和3、5、7次谐波来合成方波。

2.2DDS波形发生器产生正弦波

直接数字频率合成器DDS(DirectDigitalSynthesizer)是从相位概念出发直接合成所需波形的一种频率合成技术。

一个直接数字频率合成器由相位累加器、波形ROM、D/A转换器和低通滤波器构成。

DDS的原理框图如图3所示:

图3

其中K为频率控制字、fC为时钟频率,N为相位累加器的字长,D为ROM数据位及D/A转换器的字长。

相位累加器在时钟fC的控制下以步长K作累加,输出N位二进制码作为波形ROM的地址,对波形ROM进行寻址,波形ROM输出的幅码S(n)经D/A转换器变成阶梯波S(t),再经低通滤波器平滑后就可以得到合成的信号波形了。

合成的信号波形形状取决于波形ROM中存放的幅码,因此用DDS可以产生任意波形。

这里我们用DDS实现正弦波的合成。

2.2.1.频率预置与调节电路

不变量K被称为相位增量,也叫频率控制字。

DDS方程为:

f0=fCK/2N,f0为输出频率,fC为时钟频率。

当K=1时,DDS输出最低频率(也即频率分辨率)为fC/2N,而DDS的最大输出频率由Nyquist采样定理决定,即fC/2,也就是说K的最大值为2N-1。

因此,只要N足够大,DDS可以得到很细的频率间隔。

要改变DDS的输出频率,只要改变频率控制字K即可。

2.2.2相位累加器

相位累加器是整个DDS的核心,它由一个加法器和一个寄存器构成。

加法器的一个输入与寄存器输出相连,另一个输入是外部输入的频率控制字。

这样,在每个时钟到达时,相位寄存器采样上个时钟周期内相位寄存器的值与频率控制字之和,并作为相位累加器在这一时钟周期的输出。

频率控制字决定了相应的相位增量,相位累加器则不断地对该相位增量进行线性累加,当相位累加器加满量时就会产生一次溢出,从而完成一个周期性的动作,这个动作周期即是DDS合成信号的一个频率周期。

图4

2.2.3波形ROM查找表

波形ROM模块由ROM:

1-port宏模块生成,其地址线的位宽为9位,数据线的位宽为8位,即一个周期的波形数据有512个,每个数据占8位,其输出可直接DAC0832。

ROM中的MIF数据文件可使用Mif_Maker2010.exe软件生成。

图5

2.3按键控制设计

按键的功能主要实现控制频率和振幅,消除防抖动等.其工作流程如图6所示.

图6

2.4D/A数模转换模块设计

产生的数字正弦波需要经过数模转换成模拟输出,这里设计出8位的D/A转换器,相关代码和电路如图7所示

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

useieee.std_logic_arith.all;

entitydac0832is

port

clk:

instd_logic;

WR_n:

outstd_logic;

datin:

instd_logic_vector(7downto0);

Analog_D:

outstd_logic_vector(7downto0)

);

enddac0832;

architecturert1ofDAC0832is

begin

WR_n<='0';

process(clk)

begin

ifclk'eventandclk='1'then

Analog_D<=datin;

endif;

endprocess;

endrt1;

图7

2.5数码管显示设计

数码管动态扫描,通过四段数码管对输出波形频率和幅度进行调节,期中数码管的其工作流程图如图8所示.

图8

3.系统调试和实验结果

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

方波经过调幅调频调相后的对比图如下图所示.

原图

调频

振幅

相位

4.设计总结

FPGA是当前数字系统设计领域比较火热的一种工具,它可以大大缩短设计需要的时间,降低成本的同时也提高了系统的稳定性。

使用VHDL语言描述硬件系统使得FPGA技术有了更广阔的应用领域。

本设计使用了基于Altera公司的FPGA系列,采用Altera公司提供的系统开发工具QuartusII软件进行了系统的设计和仿真。

对FPGA一直都有着浓厚的兴趣,借做课设的机会,认真的研究了一下这门科学。

发现FPGA技术比我想象中的要有很大的难度。

里面有很多的思想来源于信息电子技术里面的基本知识,包括门电路的概念以及寄存器传送的基本知识。

VHDL语言与C语言有很大的不同,但是C语言的编程思想也可以移植到VHDL语言中,尤其是一些逻辑算法的设计,需要有很强的C语言编程功底。

学习一门知识要从最基本的体系架构开始,倘若一开始就从顶层设计入手,就会造成很多基本原理、基本概念上的偏差,甚至会拖延学习设计的时间,事倍功半。

虽然课设完成了,但是我意识到,我对FPGA技术仅仅只是停留在入门的阶段,想要有更大的发展,更深入的研究,还需要更多的努力与实践。

 

参考文献

【1】潘松黄继业.EDA技术与VHDL(第二版).北京:

清华大学出版社,2005.7

【2】付家才.EDA工程实践技术.北京:

化学工业出版社,2007.1

【3】汉泽西.EDA技术及其应用.北京:

北京航空航天大学出版社,2004.5

【4】DouglasL.Perry.VHDL编程实例(第四版)[M].北京:

电子工业出版社.

【5】赵新民.智能仪器设计基础[M].哈尔滨:

哈尔滨工业大学出版社.

【6】卢毅,赖杰.VHDL与数字电路设计[M].北京:

科学出版社,2001:

256-261.

【7】褚振勇,翁木云.FPGA设计及应用[M].西安:

西安电子科技大学出版社,2003:

1-22.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2