




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、EDA技术及其应用实 验 报 告万年历设计班 级 姓 名 学 号 苏摘要21世纪是信息爆炸的时代,生活的节奏越来越快,大家的时间观念越来越强,但是老式的钟表以及日历等时间显示工具已经不太合适。如钟表易坏,需经常维修,日历每天都需要翻页等。对此,数字万年历的设计就用了用武之地。基于DEA的万年历设计,采用软件开发模块,开发成本底,而且功能设计上有很大的灵活度,需要在软件上进行简单的修该就能实现不同的功能要求,能够满足不同的环境要求。同时,该设计在精度上远远超过钟表,并且不需要维修,也不用没天的翻页,极其的方便。且能够添加各种不同的功能要求。例如:在其上加闹钟,同时显示阴阳历等。综上所述本设计具有
2、设计方便、功能多样、电路简洁成本低廉等优点,符合社会发展的趋势,前景广阔。基于EDA的万年历设计,主要完成的任务是使用VHDL语言,在QuartusII上完成电路的设计,程序的开发,基本功能是能够显示、修改年、月、日、时、分、秒。电路的设计模块分为几个模块:控制、时间显示调整、时、分、年、月、日各模块。各个模块完成不同的任务,合在一起就构成了万年历。软件模块直接在QuartusII上进行,使用VHDL语言,根据各个模块的不同功能和它们之间的控制关系进行编写。关键字:万年历;EDA;仿真;VHDL;QuartusIIAbstractThe 21st century is the era of i
3、nformation explosion, the pace of life is more and more quick, everyones concept of time is more and more strong. But the old clock and calendar time display tools are not very suitable. To this, the design of digital calendar is very useful.Based on DEA perpetual calendar design, the software devel
4、opment cost low and the function design is of great nimbleness. At the same time, the design is more correct than clocks and watches, and dont need to be maintained.And you can add all sorts of different functional requirements. The perpetual calendar based on EDA design, the main task is to use VHD
5、L language to complete circuit design, program development in the QuartusII. Basic function is to display, modify, year, month, day, points, The design of the circuit module can be divided into several modules: control, time display adjustment, points, year, month, day each module. Each module compl
6、ete different tasks, and they form a perpetual calendar. Write the program according to the different function of each module and the relationship between them.目录摘要2第一章 EDA技术简介41.1 EDA技术的发展概况41.2 EDA技术的基本特征41.2.1“自顶向下”的设计方法41.2.2高层次设计5第二章 工作原理52.1任务概述52.2系统设计思路52.3系统原理图52.4工作过程6第三章 设计过程63.1各子模块的VHDL
7、程序以及时序仿真63.1.1秒/分计时模块63.1.2时计时模块83.1.3天计时模块93.1.4月计时模块113.1.5年低位计时模块133.1.6年高位计时模块153.1.7调时模块163.1.8控制显示模块183.2引脚绑定193.3下载验证213.3.1模式三的电路图213.3.2显示输出21总结22参考文献22第一章 EDA技术简介EDA(Electronic Design Automation),即电子设计自动化,是指利用计算机完成电子系统的设计。EDA技术是以计算机和微电子技术为先导的,汇集了计算机图形学、拓扑学、逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的
8、先进技术。EDA技术以计算机为工具,代替人完成数字系统的逻辑综合、布局布线和设计仿真等工作。设计人员只需要完成对系统功能的描述,就可以由计算机软件进行处理,得到设计结果,而且修改设计如同修改软件一样方便,可以极大地提高设计效率。1.1 EDA技术的发展概况从20世纪60年代中期开始,人们就不断开发出各种计算机辅助设计工具来帮助设计人员进行电子系统的设计。电路理论和半导体工艺水平的提高,对EDA技术的发展起到了巨大的作用,使EDA作用范围从PCB板设计延伸到电子线路和集成电路设计,直至整个系统的设计,也使IC芯片系统应用、电路制作和整个电子生产过程都集成在一个环境之中。根据电子设计技术的发展特征
9、,EDA技术发展大致分为三个阶段。1.2 EDA技术的基本特征EDA技术代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。1.2.1“自顶向下”的设计方法10年前,电子设计的基本思路还是选择标准集成电路“自底向上”(Bottom-Up)地构 造出一个新的系统,这样的设计方法就如同一砖一瓦地建造金
10、字塔,不仅效率低、成本高而且还容易出错。1.2.2高层次设计高层次设计提供了一种“自顶向下”(Top-Down)的全新的设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后用综合优化工具生成具体门电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这不仅有利于早期发现结构设计上的错误,避免设计工作的浪费,而且也减少了逻辑功能仿真的工作量,提高了设计的一次成功率。第二章 工作原理2.1任务概述基于EDA万年历的设计:
11、能进行正常的年、月、日和时、分、秒的日期和时间计时功能,能够进行模式切换,分别显示年、月、日和时、分、秒;能利用实验系统上的按键实现年、月、日和时、分、秒的校对功能。2.2系统设计思路首先,建立整体的系统框图,然后分模块设计元件,最后进行元件之间的连接。在设计元件中,考虑到不同月份有31天,30天,28天(平年),29天(闰年),所以在年的低位设计一个闰年判断输出返回到月模块的判断输入,由于每隔四年是一个闰年,所以有四个进位即输出是闰年。在月模块中设计一个月份判断输出返回到天计数模块的判断输入,由于有四种不同的天数,所以可以设置一个2位的二进制数作为判断输出。在调时和控制显示模块中,通过按键来
12、选择、控制,比较简单,另外设置有LED输出显示作为标记,为了在调时、控制显示时,不容易混淆。2.3系统原理图系统按功能分为:秒计时模块;分计时模块;时计时模块;天计时模块;月计时模块;年低位计时模块;年高位计时模块;校对模块和显示控制模块。2.4工作过程将实验箱选择工作在模式三,从CLK端输入一个频率为1Hz的时钟信号,万年历开始计时(1)切换显示模式:按下按键1,当LED8亮时,显示时、分、秒,再按一下按键1,LED8熄灭,显示年、月、日。(2)校对调时按键2具有校对功能,按1下按键2,选择调分钟,对应的LED1亮,这时按下按键3可以进行分钟的加减;按2下按键2,选择调小时,对应的LED2亮
13、,这时按下按键3可以进行小时的加减;按3下按键2,选择调日期,对应的LED3亮,这时按下按键3可以进行日期的加减;按4下按键2,选择调月份,对应的LED4亮,这时按下按键3可以进行月份的加减;按5下按键2,选择调年份的低两位,对应的LED5亮,这时按下按键3可以进行年份的低两位时的加减;按6下按键2,选择调年份的高两位,对应的LED6亮,这时按下按键3可以进行年份的高两位的加减。第三章 设计过程3.1各子模块的VHDL程序以及时序仿真3.1.1秒/分计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_
14、UNSIGNED.ALL;ENTITY CNT60 IS -60进制计数器PORT(CLK:IN STD_LOGIC;Q1,Q2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT60;ARCHITECTURE ONE OF CNT60 ISSIGNAL Q11,Q22:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF CLKEVENT AND CLK=1 THEN -上升沿到来时计数Q11=Q11+1;IF Q11=9 THEN Q110);Q22=Q22+1;EN
15、D IF;IF Q22=5 AND Q11=9 THEN Q22=0000;Q11=0000;COUT=1;ELSE COUT=0;END IF;END IF;END PROCESS;Q1=Q11;Q2=Q22;END;(2)时序仿真由上时序仿真图所示,Q1(个位)计到9后,Q2(十位)加1,Q2计到5后,即计满60个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求。(3)元件图3.1.2时计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT24 I
16、SPORT(CLK:IN STD_LOGIC; Q1,Q2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT24;ARCHITECTURE ONE OF CNT24 ISSIGNAL Q11,Q22:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF CLKEVENT AND CLK=1 THENQ11=Q11+1;IF Q11=9 THEN Q110);Q22=Q22+1;END IF;IF Q22=2 AND Q11=3 THEN Q22=0000;Q11=000
17、0;COUT=1;ELSE COUT=0;END IF;END IF;END PROCESS;Q1=Q11;Q2=Q22;END;(2)时序仿真由上时序仿真图所示,记满24个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求。(3)元件图3.1.3天计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TIAN ISPORT( PANDUAN :IN STD_LOGIC_VECTOR(1 DOWNTO 0); CLK :IN STD_LOGIC; CQ1 :O
18、UT STD_LOGIC_VECTOR (3 DOWNTO 0); CQ2 :OUT STD_LOGIC_VECTOR (3 DOWNTO 0); COUT :OUT STD_LOGIC);END;ARCHITECTURE ONE OF TIAN ISSIGNAL CQ3,CQ4:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL PAN:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINPROCESS(CLK,PANDUAN)BEGINIF CLKEVENT AND CLK=1 THENCQ3=CQ3+1;IF CQ3=9 THEN CQ30);CQ4=
19、CQ4+1;END IF;PANIF CQ3=0001 AND CQ4=0011 THEN CQ3=0001;CQ4=0000;COUT=1;ELSE COUTIF CQ3=0000 AND CQ4=0011 THEN CQ3=0001;CQ4=0000;COUT=1;ELSE COUTIF CQ3=1000 AND CQ4=0010 THEN CQ3=0001;CQ4=0000;COUT=1;ELSE COUTIF CQ3=1001 AND CQ4=0010 THEN CQ3=0001;CQ4=0000;COUT=1;ELSE COUTNULL;END CASE;END IF;CQ1=CQ3
20、; CQ2=CQ4;END PROCESS;END;(2)时序仿真当PUANDUAN=00时,计满31个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求;当PUANDUAN=01时,计满30个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求;当PUANDUAN=10时,计满29个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求;当PUANDUAN=10时,计满28个时钟脉冲,COUT输出一个进位脉冲,正确,满足设计要求;(3)元件图3.1.4月计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_
21、LOGIC_UNSIGNED.ALL;ENTITY MONTH ISport(clk :IN STD_LOGIC; run :IN STD_LOGIC; cout :OUT STD_LOGIC; pan :OUT STD_LOGIC_VECTOR(1 DOWNTO 0); cq1,cq2 :OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END ;ARCHITECTURE behav OF MONTH ISsignal cq3,cq4: STD_LOGIC_VECTOR (3 DOWNTO 0);signal cq5: STD_LOGIC_VECTOR (7 DOWNTO
22、0);BEGINPROCESS(clk)BEGINIF clkEVENT and clk=1 THEN cq3=cq3+1;IF cq3=9 THEN cq4=cq4+1;cq3=0000; END IF;IF cq3=2 and cq4=1 THEN cq3=0001;cq4=0000;cout=1;ELSE cout=0;END IF;END IF;cq5panif run=1 then pan=11;else panpanpanpanpanpanpanpanpanpanpanNULL;END CASE; cq1=cq3; cq2=cq4;END PROCESS;END;(2)时序仿真从仿
23、真图中可以看出,计满12时钟有一个进位,当run=0(即平年)时,输出pun=10(即二月为28天),当run=1(即闰年)时,输出pun=11(即二月为29天),当月份为1,3,5,7,8,10,12时输出pun=00(即该月为31天),当月份为4,6,9,11时,输出pun=01(即该月为30天)。正确,满足设计要求。3.1.5年低位计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY YEAR ISPORT(CLK:IN STD_LOGIC;Y1,Y2:OU
24、T STD_LOGIC_VECTOR(3 DOWNTO 0);RUN,COUT:OUT STD_LOGIC);END YEAR;ARCHITECTURE ONE OF YEAR ISSIGNAL Q1,Q2,Q3:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF CLKEVENT AND CLK=1 THENQ1=Q1+1;IF Q1=9 THEN Q10);Q2=Q2+1;END IF;IF Q2=9 AND Q1=9 THEN Q2=0000;Q1=0000;COUT=1;ELSE COUT=0;END IF;END IF;END
25、PROCESS;PROCESS(CLK)BEGINIF CLKEVENT AND CLK=1 THEN -每记四次数为闰年Q3=Q3+1;IF Q3=3 THEN Q30);RUN=1;ELSE RUN =0;END IF;END IF;Y1=Q1;Y2=Q2;END PROCESS;END;(2)时序仿真从图中可以看出每四年run有一个进位,计数记满100个,COUT有一个进位,满足设计要求。(3)元件图3.1.6年高位计时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;E
26、NTITY YEAR1 ISPORT(CLK:IN STD_LOGIC;Y3,Y4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END YEAR1;ARCHITECTURE ONE OF YEAR1 ISSIGNAL Q1,Q2:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF CLKEVENT AND CLK=1 THENQ1=Q1+1;IF Q1=9 THEN Q10);Q2=Q2+1;END IF;IF Q2=9 AND Q1=9 THEN Q2=0000;Q1=000
27、0;COUT=1;ELSE COUT=0;END IF;END IF;END PROCESS;END;(2)时序仿真从图中可以看出计数计满100个时钟COUT有一个进位,满足设计要求。(3)元件图3.1.7调时模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JIAODUI ISPORT( K1,K2 :IN STD_LOGIC; MI,FI,SI,TI,YI,N1I:IN STD_LOGIC; FO,SO,TL,YO,NO,N2O :OUT STD_LOGIC;
28、 L1,L2,L3,L4,L5 ,L6:OUT STD_LOGIC);END;ARCHITECTURE BEHAV OF JIAODUI ISSIGNAL A: STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPROCESS(K1,K2)BEGINIF K1EVENT AND K1=1 THEN A=A+1;IF A=5 THEN AFO=MI;SO=FI;TL=SI;YO=TI;N1O=YI;N2O=NI; - 选通秒模块 L1=0;L2=0;L3=0;L4=0;L5=0;L6FO=K2;SO=0;TL=0;YO=0;N1O=0;N2O=0; -选通分模块 L1=1;L
29、2=0;L3=0;L4=0;L5=0;L6FO=0;SO=K2;TL=0;YO=0;N1O=0; N2O=0; -选通时模块 L1=0;L2=1;L3=0;L4=0;L5=0;L6FO=0;SO=0;TL=K2;YO=0;N1O=0; N2O=0; - 选通天模块 L1=0;L2=0;L3=1;L4=0;L5=0;L6FO=0;SO=0;TL=0;YO=K2;N1O=0;N2O=0; - 选通月模块 L1=0;L2=0;L3=0;L4=1;L5=0;L6FO=0;SO=0;TL=0;YO=0;N1O=K2; N2O=0; -选通年模块 L1=0;L2=0;L3=0;L4=0;L5=1;L6FO
30、=0;SO=0;TL=0;YO=0;N1O=0; N2O=K2; L1=0;L2=0;L3=0;L4=0;L5=0;L6NULL;END CASE;END PROCESS;END;(2)时序仿真从仿真图中可以看出:当K1没按时(即为低电平),时分秒年月日都可以正常进位,当第1下K1时,分钟进位,当第2下K1时,小时进位,当第3下K1时,日期进位,当第4下K1时,月份进位,当第5下K1时,年低位进位,当第6下K1时,年高位进位。由于,时间间隔太短了,所以有明显的延迟,导致调分、调时、调月等后面都出现脉冲。修改时间间隔之后如下图从上面仿真图中可以看出此时没有延时,满足设计要求。(3)元件图3.1.
31、8控制显示模块(1)VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CONTROL ISPORT(SL,SH,FL,FH,HL,HH,DL,DH,ML,MH,YL,YH,Y1L,Y1H:IN STD_LOGIC_VECTOR(3 DOWNTO 0);K1:IN STD_LOGIC;led:OUT STD_LOGIC;Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END CONTROL;ARCHITECTU
32、RE ONE OF CONTROL ISSIGNAL W:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINPROCESS(K1)BEGIN IF K1EVENT AND K1=1 THEN W=W+1;IF W=2 THEN WQ8=Y1H;Q7=Y1L;Q6=YH;Q5=YL;Q4=MH;Q3=ML;Q2=DH;Q1=DL;ledQ8=0000;Q7=0000;Q6=HH;Q5=HL;Q4=FH;Q3=FL;Q2=SH;Q1=SL;ledNULL;END CASE;END PROCESS;END;(2)时序仿真从图中可以看出,当按键没有按下(即为低电平)时,输出年月日“1991.12.31”,当按下K1键时(即为高电平)时,输出时分秒“17:48:59”。(3)元件图3.2引脚绑定CLKInputPIN_54K1InputPIN_8K2InputPIN_9K3InputPIN_10L1OutputPIN_20L2OutputPIN_21L3OutputPIN_22L4OutputPIN_23L5OutputPIN_24L6OutputPIN_26LedOutputPIN_29Q13OutputPIN_33Q12OutputPIN_32Q11OutputPIN_31Q10OutputPIN_30Q23OutputPIN_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业形象推广策划合同标准文本
- 产品工业合同标准文本
- 3人合伙合同标准文本
- 业务结算费合同标准文本
- 乡村农田养殖合同样本
- 企业店过户合同样本
- 个人购销用途合同样本
- 2025仓库租赁合同样本
- 2024年记者证前瞻分析试题及答案
- 2025至2030年中国卫浴架子行业投资前景及策略咨询报告
- 2021年中考研究与备考策略 2021年中考道德与法治综合复习指南课件
- 《安宁疗护实践指南(试行)》
- 大商业结构拆改加固专项施工方案(详细)
- 中医妇科学第九节-闭经-课件
- 贵州省普通高中新课程实施方案(试行)
- 评估-说专业-市场营销专业
- 火电工程施工组织设计方案
- 日周月安全检查记录表
- 车间温湿度测量记录表
- 教学成果申报
- 变电所倒闸操作课件
评论
0/150
提交评论