EDA技术课程设计Word文件下载.docx
- 文档编号:19692787
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:14
- 大小:265.96KB
EDA技术课程设计Word文件下载.docx
《EDA技术课程设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《EDA技术课程设计Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
第一章绪论
1.1系统背景
电子设计自动化(ElectronicDesignAutomation,EDA)技术,它是一门正在高速发展的新技术,是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计集成电路和电子系统到硬件系统的一门新技术。
1.2系统简介
随着科学技术的发展以及人民生活水平的提高,在现代生活中,彩灯作为一种装饰既可以增强人们的感观,起到广告宣传的作用,又可以增添节日气氛,为人们的生活增添亮丽。
本文介绍了基于VHDL语言和可编程逻辑芯片的数字系统的多路彩灯控制系统的实现。
在MAX+plusII环境下,设计了一个16路彩灯控制系统,该系统设定有4种花样变化,这4种花样可以手动控制切换,并且每种花样可以选择5种不同的频率,这5种频率也可以手动控制切换。
第二章系统电路设计
2.1系统总体设计框架结构
彩灯效果控制
CLK
分频器
5选1
多路选择器
2.2系统单元电路设计
2.2.1分频器设计
程序代码:
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entityfenpingis
port(clk,rst:
instd_logic;
clk_4,clk_8,clk_16,clk_32,clk_64:
outstd_logic);
endfenping;
architectureoneoffenpingis
begin
com1:
process(clk,rst)
variableq1:
integerrange0to7;
ifrst='
1'
thenclk_4<
='
0'
;
elsifclk='
andclk'
eventthen
ifq1>
=3thenclk_4<
q1:
=0;
elseclk_4<
=q1+1;
endif;
endprocesscom1;
com2:
variableq2:
integerrange0to15;
thenclk_8<
ifq2>
=7thenclk_8<
q2:
elseclk_8<
=q2+1;
endprocesscom2;
com3:
variableq3:
integerrange0to31;
thenclk_16<
ifq3>
=15thenclk_16<
q3:
elseclk_16<
=q3+1;
endprocesscom3;
com4:
variableq4:
thenclk_32<
ifq4>
=31thenclk_32<
q4:
elseclk_32<
=q4+1;
endprocesscom4;
com5:
variableq5:
integerrange0to63;
thenclk_64<
ifq5>
=63thenclk_64<
q5:
elseclk_64<
=q5+1;
endprocesscom5;
endone;
仿真波形图:
仿真结果分析:
该电路系统中的分频器可产生5种分频效果,分别是4分频,8分频,16分频,32分频,64分频。
clk_4脚输出的是4分频的,单位时钟产生4个脉冲时该脚产生1个脉冲。
其它4个脚和该输出脚类同。
rst脚是复位控制端,高电平有效。
2.2.2多路选择器设计
entityxuan5is
port(rst,a,b,c,d,e:
q:
integerrange4downto0;
data_out:
endxuan5;
architectureaofxuan5is
process(rst,q)
thendata_out<
else
caseqis
when0=>
data_out<
=a;
when1=>
=b;
when2=>
=c;
when3=>
=d;
when4=>
=e;
whenothers=>
endcase;
endprocess;
enda;
该电路的作用是实现对分频器产生的5种时钟效果的选择,是一个5选1的多路选择器。
控制端q有三根线组成001--100分别对应b--e四个输入端,其它的都对应a输入端。
控制端rst是复位端,高电平有效。
data_out端输出所选择出的时钟信号。
2.2.3彩灯效果设计
entitycaidengis
port(clk:
ctr_in:
comb_out:
outstd_logic_vector(0to15));
endcaideng;
architectureoneofcaidengis
typestatesis(s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15);
signalstx:
states;
signalq:
std_logic_vector(1downto0);
process(ctr_in)
begin
ifctr_in='
andctr_in'
ifq="
11"
thenq<
="
00"
elseq<
=q+1;
endif;
endprocess;
process(clk,q)
ifclk='
caseqis
when"
=>
casestxis
whens0=>
stx<
=s1;
comb_out<
1000000000000000"
whens1=>
=s2;
0100000000000000"
whens2=>
=s3;
0010000000000000"
whens3=>
=s4;
0001000000000000"
whens4=>
=s5;
0000100000000000"
whens5=>
=s6;
0000010000000000"
whens6=>
=s7;
0000001000000000"
whens7=>
=s8;
0000000100000000"
whens8=>
=s9;
0000000010000000"
whens9=>
=s10;
0000000001000000"
whens10=>
=s11;
comb_out<
0000000000100000"
whens11=>
=s12;
0000000000010000"
whens12=>
=s13;
0000000000001000"
whens13=>
=s14;
0000000000000100"
whens14=>
=s15;
0000000000000010"
whens15=>
=s0;
0000000000000001"
whenothers=>
endcase;
01"
1000000000000001"
1100000001000001"
1100000000000011"
1110000000000011"
1110000000000111"
1111000000000111"
1111000000001111"
1111100000001111"
1111100000011111"
1111110000011111"
1111110000111111"
1111111000111111"
1111111001111111"
1111111101111111"
1111111111111111"
10"
1010000000000000"
1010100000000000"
1010101000000000"
1010101010000000"
1010101010100000"
1010101010101000"
1010101010101010"
0101010101010101"
0001010101010101"
0000010101010101"
0000000101010101"
0000000001010101"
0000000000010101"
0000000000000101"
1100000000000000"
1110000000000000"
1111000000000000"
1111100000000000"
1111110000000000"
1111111000000000"
1111111100000000"
1111111110000000"
1111111111000000"
1111111111100000"
1111111111110000"
1111111111111000"
1111111111111100"
1111111111111110"
null;
波形仿真图:
图一:
图二:
该电路的作用是控制彩灯变化的效果,在电路中以1代表灯亮,以0代表灯灭,由0,1按不同的规律组合代表不同的灯光图案,该电路总共设计了4种花样,每种花样有16种效果(也就是16种状态)。
开始时,变化的效果和设想的相同(如图一),当该种花样的16种效果没显示完而又切换到下一种花样时,彩灯不能从状态0开始变化,而是接着上一种花样的效果变化(如图二)。
2.3系统电路
该系统最后的电路结构如下:
仿真波形:
开始时默认花样0,50.0US之前切换到花样3,变化到状态S3后再切换1次后选为花样4(100000000000000--1111111111111111),从状态S4开始变化。
CTR_IN端控制花样变化,Q[2..0]端控制效果变化快慢,置为0时选择做最快的一种。
该系统经过仿真测试基本符合预期的设计效果。
第三章实验结果和分析
3.1实验使用的仪器设备
电脑(装有软件MAX+plusII)
GW48系列实验开发系统
3.2测试结果分析
3.2.1测试系统介绍
该彩灯系统最后的硬件仿真是基于GW48EDA/SOC系统的NO.9电路结构,该结构有16个彩灯可以显示,有2个按键进行电路功能控制。
3.2.2芯片选择
3.2.3芯片引脚锁定
花样控制端CTR_IN锁定到按键1,效果变化快慢控制端Q[2..0]锁定到按键2。
16个彩灯的引脚中的前8个对应的锁定到D1--D8,后8个对应该模拟系统的D16--D9.时钟端锁定到126脚。
结束语
本次课程设计是在冯杰老师的悉心栽培和精心指导下完成的,在课程设计论文完成之际,向冯老师表示感谢!
通过本次课程设计,使我对《EDA技术实用教程》这门课程有了更深入的理解。
VHDL程序的编写需要有耐心,有些事情看起来很复杂,但问题需要一点一点去解决,分析问题,把问题一个一个划分,划分成小块以后就逐个去解决。
再总体解决大的问题。
这样做起来不仅有条理也使问题得到了轻松的解决。
记得在编写彩灯花样控制部分的程序时,因为相关知识掌握得不够透彻,导致有的问题出现后查了相关语句的资料并且想了好久仍然没有改对,最后在老师的协助下重新梳理程序结构才解决的。
通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。
特别是当每一个子模块编写调试成功时,心里特别的开心。
另外在最后的波形仿真时,由于最后的结果没有达到预期,主要是当前面一种花样效果没有显示完全时切换到下一种时花样不能从这种效果的开始显示,最后也和冯老师一起探讨了设置复位效果的可行性,但是还是没有解决这个缺陷。
总的来说,这次设计的多路彩灯控制电路还是比较成功的,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力。
参考文献
[1]潘松,黄继业.EDA技术实用教程(第三版)[M].北京:
科学出版社,2006
[2]潘松,王国栋.VHDL实用教程(修订版).成都:
成都电子科技大学出版社,2001
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 技术 课程设计