文档介绍:山东大学
EDA课程设计
课程题目: 基于FPGA的信号发生器
指导老师:
专业: 通信工程
小组成员:
2013 年 7 月 7 日
目录
一、设计要求……………………………………………………………3
二、系统设计……………………………………………………………3
…………………………………………………………3
………………………………………………… 4
……………………………………………………5
……………………………………………………6
……………………………………………………8
7. DAC模块………………………………………………………9
………………………………………………………10
三、实验总结………………………………………………………… 15
1. 设计要求
采用VHDL来实现的直接数字频率合成器(DDFS)。它能产生正弦波,三角波,方波。且对各种波形的要求如下:
(1)根据按键选择不同的波形(实现正弦波,三角波,方波,锯齿波等);
(2)各波形频率可调;
(3)用LED数码管实时显示输出波形的频率值;
(4)用按键控制实现输出信号的幅度调节。
2. 原理分析
基于VHDL语言设计的信号发生器,可以输出正弦波,三角波,方波,锯齿波等信号。多种信号的数据选择可以使用4选1数据选择器实现,通过频率控制模块控制波形的频率,通过幅度控制模块实现幅度调节
输入部分:
输入部分包含以下功能按键:时钟、波形、调幅、调频。
:标准的12MHZ时钟输入。
:为波形输出选择开关,可以选择单波形的输出。
:可以递增正弦波、三角波、方波的幅度。
:可以递增和递减正弦波、三角波、方波的频率。
输出部分:
1、8位波形数据,送入DAC;
2、通过发光二极管显示的频率;
3、通过LED灯显示的波形类型。
3. 硬件电路设计
由题目分析可知,要完成整体设计,可通过QuartusⅡ设计出以下各个模块的原理图:
分频器的原理图
调幅模块的原理图
正弦波发生器的原理图
方波信号发生器的原理图
锯齿波信号发生器的原理图
三角波信号发生器的原理图
四选一选择器原理图
把以上各模块根据其功能和设计思路设计出总的系统原理图如下图所示:
4. 调幅控制模块原理
根据外部按键keyD来控制,当按下keyD后幅度增加,长按keyD幅度减小。
调幅模块RTL框图
实验波形如下:
幅度增大后的波形:
5. 频率控制模块原理
在系统时钟的作用下进行加法计数的方法进行分频,频率的控制由外部按键keyB,keyC决定。当按下keyB时频率加1,当长按keyB 3秒时频率加10。当按下keyC时频率减1,当长按keyC 3秒时频率减10。,最低频率61HZ。
频率控制模块RTL框图如下:
实验波形如下:
频率增大以后的波形:
6. 信号选择模块
通过控制外部按键keyA实现,按下keyA就将波形切换为下一种波形。并且数码管就会相应的亮起。
信号选择模块RTL框图如下:
数码管控制模块RTL框图如下:
7. DAC模块
输出数据dac[7]…dac[0]分别接DAC的R1…R8。
,。
VOUT= 2×VREF×D/256 -VREF= (2D/256-1)VREF
D = 0, VOUT= -VREF;
D = 128, VOUT= 0;
D = 255, VOUT= (2×255/256-1)×VREF= (254/255)VREF
即:输入数字为0~255时,输出电压在- VREF ~+ VREF之间变化,VREF=VCC=