收藏 分享(赏)

EDA实验报告.docx

上传人:HR专家 文档编号:11661182 上传时间:2020-11-01 格式:DOCX 页数:8 大小:24.20KB
下载 相关 举报
EDA实验报告.docx_第1页
第1页 / 共8页
EDA实验报告.docx_第2页
第2页 / 共8页
EDA实验报告.docx_第3页
第3页 / 共8页
EDA实验报告.docx_第4页
第4页 / 共8页
EDA实验报告.docx_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、 EDA技术及VHDL 课程设计设计题目: 万年历设计设 计 者: 学 号: 班 级: 指导老师: 湖南科技大学计算机科学与工程学院第一章 EDA技术简介随着电子技术和计算机技术的飞速发展,电子线路的设计工作也日益显得重要。经过人工设计、制作实验板、调试再修改的多次循环才定型的传统产品设计方法必然被计算机辅助设计所取代,因为这种费时费力又费资源的设计调试方法既增加了产品开发的成本,又受到实验工作场地及仪器设备的限制。为了克服上述困难,加拿大Interactive Image Technologies公司推出的基于Windows 9598NT操作系统的EDA软件(Electronics Work

2、bench“电子工作台”,EWB)。他可以将不同类型的电路组合成混合电路进行仿真。EWB是用在计算机上作为电子线路设计模拟和仿真的新的软件包,是一个具有很高实用价值的计算机辅助设计工具。目前已在电子工程设计等领域得到了广泛地应用。与目前流行的电路仿真软件相比较,EWB具有界面直观、操作方便等优点。他改变了有些电路仿真软件输入电路采用文本方式的不便之处,该软件在创建电路、选用元器件的测试仪器等均可以直接从屏幕图形中选取,而且测试仪器的图形与实物外形基本相似,从而大大提高了电子设计工作的效率。此外,从另一角度来看,随着计算机技术和集成电路技术的发展,现代电子与电工设计,已经步入了电子设计自动化(E

3、DA)的时代,采用虚拟仿真的手段对电子产品进行前期工作的调试,已成为一种发展的必然趋势。通过对实际电子线路的仿真分析,从而提高对电路的分析、设计和创新能力。 第二章:实现功能Year.vhd为判断平润年的模块y1和y2分别为输入的年高两位和年低两位,y为年份,当cout=1时为闰年,cou=0时为平年。如果y2=0则y1能被4整除时为闰年,当y2!=0时y2能被4整除则为闰年。后面通过将y1循环加100次再加上y2得到年份y。Runnian.vhd为计算输入的年份与2000年之间有多少闰年的模块(不包括输入的年份),p为年份,q为闰年数。a的意义为输入的年份与2000年之间的天数,通过循环加,

4、每次加400(由于每400年有97个闰年,所以加400),当a=b时结束循环,i的意义则为输入的年份与2000年之间有多少个400年,显然c=3时则需要判断cout等于1或0,然后用d加上相应的天数,p则为总天数,k为7的倍数且刚好大于p(就是k-77时,w=c-7为星期几,当c=7时,w=c即为星期几。 第三章:模块设计Year.vhd为判断平润年的模块:library ieee;USE IEEE.STD_LOGIC_1164.ALL;entity year is port(y1,y2:in integer; y:out integer; cout: out std_logic);end y

5、ear;architecture one of year isbegin process(y1,y2) variable i:integer; begin if y2=0 then if (y1 rem 4)=0 then cout=1; else cout=0; end if; elsif y1 rem 4=0 then cout=1; else cout=0; end if; i:=y1; for n in 0 to 99 loop i:=i+i; end loop; y=i+y2; end process;end one;Runnian.vhd为计算输入的年份与2000年之间有多少闰年的

6、模块:library ieee;USE ieee.std_logic_1164.all;entity yunnian is port(p:in integer; q:out integer);end yunnian;architecture one of yunnian isbegin process(p) variable i:integer:=0; variable a:integer:=0; variable c:integer:=0; variable d:integer:=0; variable x:integer:=0; variable y:integer:=0; variabl

7、e b:integer:=400; begin a:=p-2000; for n in 0 to 30 loop b:=b+400; i:=i+1; next when a=b; end loop; c:=a-b+400; for n in 0 to 400 loop x:=x+97; next when n=i; end loop; for n in 0 to 400 loop d:=d+4; y:=y+1; next when c=d; end loop; q=x+y; end process;end one;Days.vhd计算出了输入的年月日为星期几模块:library ieee;us

8、e ieee.std_logic_1164.all;entity days is port(y,m,d,q:in integer; cout:in std_logic; w:out integer);end days;architecture one of days isbegin process(y) variable y1,y2,a:integer; variable i:integer:=0; variable j:integer:=0; variable k:integer:=0; variable x:integer:=0; variable z:integer:=0; variab

9、le v:integer:=0; variable c:integer:=0; variable p:integer:=0; begin a:=y-q-2000; for n in 0 to 4000 loop x:=365+x; i:=i+1; next when a=i; end loop; for n in 0 to 4000 loop z:=366+z; j:=j+1; next when qv:=60+d; when 4 =v:=91+d; when 5 =v:=121+d; when 6 =v:=152+d; when 7 =v:=182+d; when 8 =v:=213+d;

10、when 9 =v:=244+d; when 10 =v:=274+d; when 11 =v:=305+d; when 12 =v:=335+d; end case; else case m is when 3 =v:=59+d; when 4 =v:=90+d; when 5 =v:=120+d; when 6 =v:=151+d; when 7 =v:=181+d; when 8 =v:=212+d; when 9 =v:=243+d; when 10 =v:=273+d; when 11 =v:=304+d; when 12 =v:=334+d; end case; end if; p

11、:=x+z+v; for n in 0 to 99999 loop k:=k+7; next when p7 then w=c-7; else wy1,y2=y2,y=y,cout=cout);u2:yunnian port map(p=y,q=q);u3:days port map(y=y,m=m,d=d,q=q,cout=cout,w=w);end one;第4章 课程设计的总结本设计为实现一个多功能的万年历,具有年,月,日,星期。因为电路板显示的是8位,而年月日星期总共10位,所以分为两次显示,第一次显示年月日,再黑屏下显示星期。本设计采用EDA技术,以硬件描述语言VHDL为系统逻辑描述

12、手段设计具有万年历功能的硬件电路,在QuartusII软件设计环境下,采用自顶向下的设计思路,分别D对各个基础模块进行创建,通过各个基础模块的组合和连接来构建上层原理图,完成基于VHDL万年历设计。万年历由年模块(days),闰年模块(runnian),顶层模块(dingcheng),日期模块(days)模块,显示模块组成。万年历中有个二进制算法,老师上课也进行了分析,但是课后还是没弄懂,和组员一起讨论之后显示模块也没有弄出来了。在学习VHDL中,知道了它是一种用于电路设计的高级语言,主要是应用在数字电路的设计中。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的

13、语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。了解了VHDL语言的特点以及语法。也了解了最新的前沿技术。VHDL语言作为底层语言,这是学习硬件所需的基本条件。在做这个万年历的实验中,先是熟悉了软件的功能,之后,开始着手处理问题,因为选的题目是最难的题目,所以费的时间也比较多,学到的东西也还算多些,但是实验还是没有完成,显示模块没有做完,做完的模块在调试时出现了诸多问题。实验没有完成我想有这么几点原因:一是对算法没有彻底解决,比如二进制算法这个;二是实践很少,对模拟不胜熟悉;三是自己缺乏研究下去的心,感觉蛮难的。很感谢组员的支持和帮助,也认清自己的不足之处,希望自己能好好改正。

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

当前位置:首页 > 实用文档 > 工作总结

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报