eda波形发生器课设详细.docx
- 文档编号:398203
- 上传时间:2022-10-09
- 格式:DOCX
- 页数:13
- 大小:224.78KB
eda波形发生器课设详细.docx
《eda波形发生器课设详细.docx》由会员分享,可在线阅读,更多相关《eda波形发生器课设详细.docx(13页珍藏版)》请在冰豆网上搜索。
eda波形发生器课设详细
工程学院
课程设计
课程名称
课题名称
专业
班级
学号
姓名
指导教师
年月日
工程学院
课程设计任务书
课程名称:
EDA技术
题目:
波形发生器
专业班级:
班
学生:
学号:
指导教师:
龙泳涛
审批:
任务书下达日期年月日
设计完成日期年月日
设计容与设计要求
一、任务与要求:
设计并制作一个波形发生器,要求如下:
1、能够产生正弦波、方波、三角波三种波形;
2、输出波形的频率围为100Hz~1KHz,频率步进间隔为100Hz。
二、设计要求:
1、设计思路清晰,给出整体设计框图;
2、设计各单元电路,给出具体设计思路、电路器件;
3、总电路设计;
4、安装调试电路;
5、写出设计报告;
主要设计条件
1.提供计算机,QuartusII软件;
2.提供EDA实验箱。
说明书格式
1、课程设计封面;
2、课程设计任务书;
3、说明书目录;
4、设计总体思路,根本原理和框图;
5、单元电路设计〔各单元电路图〕;
6、总电路设计〔总电路图〕;
7、安装、调试步骤;
8、故障分析与电路改进;
9、总结与设计调试体会;
10、附录〔元器件清单〕;
11、参考文献;
12、课程设计成绩评分表。
进度安排
第一周星期一:
课题容介绍和查找资料;
星期二~四:
总体电路设计和分电路设计;
星期五:
电路仿真,修改方案;
第二周星期一~二:
安装、调试电路,验收电路;
星期三~五:
写设计报告,打印相关图纸;
星期五下午:
带调试电路板及设计报告书进展辩论,整理实验室及其他事情
参考文献
"EDA技术实用教程"松、黄继业编著科学
一、总体思路
1.1设计思想
基于VHDL语言设计一个简易多功能信号发生器,通过选入输入信号,可以输出正弦波、三角波、方波和锯齿波四种波形信号。
信号发生器的控制模块可以用数据选择器实现,四种信号的信号选择可以用4选1数据选择器实现。
同时本设计使用原理图的方法,对正弦波、三角波、方波和锯齿波和4选1数据选择器元件进展调用。
1.2流程图
流程图如以下图1所示。
二、各单元设计
2.1分频器的实现
本次设计采用50MHz的时钟频率,设计要求输出0.1KHz~1KHz的波形。
可知,需要一个分频模块对时钟频率进展分频。
结合三个波形发生模块的程序可知,正弦、方波、三角波产生算法分别进展了256、256、512分频。
要三个波形同频,三角波发生模块的输入脉冲应该是另外两者的2倍。
应为分频数较大,采用二次分频。
一次分频参数由外部输入,二次分频参数固定。
经过计算得出分频参数表如下:
要求输出频率
算法分频
一次分频参数
二次分频
1K
256
20
10
0.9K
256
22
10
0.8K
256
26
10
0.7K
256
30
10
0.6K
256
34
10
0.5K
256
40
10
0.4K
256
50
10
0.3K
256
66
10
0.2K
256
100
10
0.1K
256
200
10
分频模块原理图如下:
2.2正弦波、三角波、方波的实现
三个波形的发生:
2.2.1正弦波设计
正弦波的产生思想是将对模拟波形采样后的编码存入定义好的ROM中,再根据时钟循环的将这些编码顺序输出,在输出端将经过数模转换器转换后的模拟信号接入示波器即可显示正弦波形。
产生正弦波的VHDL代码如下:
--正弦波
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entityzxis
port(clk,reset:
instd_logic;
d:
outintegerrange0to255);
endzx;
architecturebehaveofzxis
begin
process(clk,reset)
variabletmp:
integerrange0to127;
begin
ifreset='0'then
d<=0;
elsifclk'eventandclk='1'then
iftmp=127then
tmp:
=0;
else
tmp:
=tmp+1;
endif;
casetmpis--""
when00=>d<=255;when01=>d<=255;when02=>d<=255;when03=>d<=254;
when04=>d<=254;when05=>d<=253;when06=>d<=252;when07=>d<=251;
when08=>d<=250;when09=>d<=249;when10=>d<=247;when11=>d<=246;
when12=>d<=244;when13=>d<=242;when14=>d<=240;when15=>d<=238;
when16=>d<=236;when17=>d<=233;when18=>d<=231;when19=>d<=228;
when20=>d<=225;when21=>d<=222;when22=>d<=219;when23=>d<=215;
when24=>d<=212;when25=>d<=209;when26=>d<=205;when27=>d<=201;
when28=>d<=197;when29=>d<=193;when30=>d<=189;when31=>d<=185;
when32=>d<=180;when33=>d<=176;when34=>d<=171;when35=>d<=167;
when36=>d<=162;when37=>d<=157;when38=>d<=152;when39=>d<=147;
when40=>d<=142;when41=>d<=137;when42=>d<=131;when43=>d<=126;
when44=>d<=120;when45=>d<=115;when46=>d<=109;when47=>d<=103;
when48=>d<=98;when49=>d<=92;when50=>d<=86;when51=>d<=80;
when52=>d<=74;when53=>d<=68;when54=>d<=62;when55=>d<=56;
when56=>d<=50;when57=>d<=44;when58=>d<=38;when59=>d<=31;
when60=>d<=25;when61=>d<=19;when62=>d<=13;when63=>d<=6;
when64=>d<=0;when65=>d<=6;when66=>d<=12;when67=>d<=19;
when68=>d<=25;when69=>d<=31;when70=>d<=37;when71=>d<=43;
when72=>d<=50;when73=>d<=56;when74=>d<=62;when75=>d<=68;
when76=>d<=74;when77=>d<=80;when78=>d<=86;when79=>d<=92;
when80=>d<=97;when81=>d<=103;when82=>d<=109;when83=>d<=114;
when84=>d<=120;when85=>d<=125;when86=>d<=131;when87=>d<=136;
when88=>d<=141;when89=>d<=147;when90=>d<=152;when91=>d<=157;
when92=>d<=162;when93=>d<=166;when94=>d<=171;when95=>d<=176;
when96=>d<=180;when97=>d<=184;when98=>d<=189;when99=>d<=193;
when100=>d<=197;when101=>d<=201;when102=>d<=205;when103=>d<=208;
when104=>d<=212;when105=>d<=215;when106=>d<=219;when107=>d<=222;
when108=>d<=225;when109=>d<=228;when110=>d<=230;when111=>d<=233;
when112=>d<=235;when113=>d<=238;when114=>d<=240;when115=>d<=242;
when116=>d<=244;when117=>d<=246;when118=>d<=247;when119=>d<=249;
when120=>d<=250;when121=>d<=251;when122=>d<=252;when123=>d<=253;
when124=>d<=254;when125=>d<=254;when126=>d<=255;when127=>d<=255;
whenothers=>null;
endcase;
endif;
endprocess;
endbehave;
2.2.2三角波设计
三角波的产生思想是将对模拟波形采样后的编码存入定义好的ROM中,再根据时钟循环的将这些编码顺序输出,在输出端将经过数模转换器转换后的模拟信号接入示波器即可显示三角波形。
产生三角波的VHDL代码如下:
--三角波
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entitysjis
port(clk,reset:
instd_logic;
q3:
outstd_logic_vector(7downto0));
endsj;
architecturebehaveofsjis
begin
process(clk,reset)
variabletmp:
std_logic_vector(7downto0);--""""tmp"""
variablea:
std_logic;--""""a"""
begin
ifreset='0'then
tmp:
="00000000";
elsifclk'eventandclk='1'then
ifa='0'then--a"0""a"1""
iftmp="11111110"then
tmp:
="11111111";
a:
='1';
else
tmp:
=tmp+1;
endif;
else
iftmp="00000001"then
tmp:
="00000000";
a:
='0';
else
tmp:
=tmp-1;
end
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- eda 波形 发生器 详细