EDA课程方案设计书多功能数字时钟报告Word文档格式.docx
- 文档编号:17197449
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:19
- 大小:64.09KB
EDA课程方案设计书多功能数字时钟报告Word文档格式.docx
《EDA课程方案设计书多功能数字时钟报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《EDA课程方案设计书多功能数字时钟报告Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
最后由于功能中涉及的开关太多,我们采用了两种复用原理,给出了两种复用思想。
关键字:
层次设计多功能数字时钟同步整点报时闹钟万年历VHDL语言
Summary:
ThistextisaccordingtoAlteracompany’sQuartusIIsoftwareandhomologousexperimentterracecompletedmulti-functionnumbertimerexperiment,makeusclearlyunderstandthefunctionofnumberformhowcarryout.
Whiledesigningweadoptedthelayerdesignsthought,thefunctionpursuesclassgraduallyincrease,andstayalotofoutercirclestoconnectwhilesealingtopacktofullyincreaseothernewfunctions.Theexperimentmainlyincludesthreecorpuses----Theclockbasicfunctionelectriccircuit,alarmclockelectriccircuit,tenthousandcalendarelectriccircuits.
Corpusone:
Mainlyinvolveamold60withmold24countmachine,dynamicstatetoshowacontrolelectriccircuit,centrepeatedlymachine,alittlebitwholetellthetimeelectriccircuit,
Theseelectriccircuitsareallpackedwithmoldpieceokay,forthepurposeofotherelectriccircuitsadjusttouse.Withcountmachinecomposingtoaccountparts,passacentrepeatedlythemachinedividesofwhenthe1HZpulseaccountsadjusttoshowthattheelectriccircuitsuggestsandpassesalittlebitwholebuzzerthattellthetimeanelectriccircuitcontrolwiththedynamicstate.BEcountingthewaythatthemachineclassadoptedsynchronouslyexternaldifferentstepintheinnerpartwhileuniting,butcametoasynchronouseffectthroughasimplechangeandthansynchronouslyreturnedcredibility.Whileshowingacontrolforeconomizingaresourcesadoptiondynamicstateprinciple,fromwoveVHDLlanguageof24choose4dataselectors.
Corpustwo:
Mainlyinvolveamold60withmold24countmachine,showcontrolelectriccircuit,14-7togetherordoor.Withmold60withmold24countmachinecomposinginfixedtimewithsavingelectriccircuit,adjusttoshowcontrolelectriccircuittosuggestwiththedynamicstate,pass14-7togetherordoorandfollow-upanddoorcontrolbuzzer.
Corpusthree:
Mainlyinvolveamold100,mold12withmold30countamachine,dynamicstatetoshowelectriccircuit.Withcountthemachinecomposingaccountsparts,adjusttoshowthattheelectriccircuitshowswiththedynamicstate.
Finallybecauseoftoomanyswitchinvolvinginthefunction,weadopted2kindstoreplytouseprincipleandgave2kindsreplytousethought.
Keyword:
Thelayerdesigns、multi-functiondigitalclock、Synchronous、
Alittlebitwholetellthetime,alarmclock、tenthousandcalendars,、ThelanguageofVHDL
目录
一.设计说明…………………………………………………………4
.功能说明…………………………………………………………………………………4
.功能简介…………………………………………………………………………………4
.开关功能介绍(两种方案)……………………………………………………………4
二.方案论证……………………………………………………5
.总体方案分析…………………………………………………………………………5
.电路的工作原理……………………………………………………………………6
三.各子模块设计原理……………………………………………8
.脉冲分频模块…………………………………………………………………………8
.时钟计时模块(包含校定和清零功能)………………………………………………10
.显示控制电路…………………………………………………………………………14
.显示模块和计时模块结合……………………………………………………………18
.整点报时模块…………………………………………………………………………18
.闹钟模块………………………………………………………………………………20
.万年历模块……………………………………………………………………………24
四.调试与仿真……………………………………………………27
.脉冲发生模块…………………………………………………………………………27
.计时电路……………………………………………………………………………28
.仿真……………………………………………………………………………………29
五.结论…………………………………………………………………29
六.实验感想…………………………………………………………30
一.设计说明
.功能说明:
利用QuartusII软件设计一个数字钟,对设计电路进行功能仿真,并下载到SmartSOPC实验系统中,可以完成00:
00:
00到23:
59:
59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等功能。
本电路在原有基础上进行了拓展,具备以下功能:
.能进行正常的时、分、秒计时功能;
.锁死功能--锁死状态下时钟保持不变;
.整点报时功能---当时钟计到59’53”时开始报时,在59’53”,59’55”,59’57”时报时频率为512Hz,59’59”时报时频率为1KHz,;
.清零功能—-时钟计时电路和万年历电路;
.快速校时,校分功能---校定时其他计时电路保持;
.闹表功能—-定时精确到分,闹钟设计响一分钟,可关闭;
.万年历---可显示XX年XX月XX日,可快速校定到正确的日期。
.功能简介
本电路具有三种不同的工作状态(同步工作),可通过模式键进行切换(可通过LED1、LED2观察当前的模式)。
、正常计时状态(K7、K8都为一):
此状态下数码管显示当前的时间,K1为校分开关,K2为校时开关,K4为清零开关,校分、校时都是以2HZ的信号进行快速到位的。
、闹表状态(K7=1、K8=0):
此状态下数码管显示当前闹定的时间,K1为设定分钟的开关,K2为设定小时开关,清零开关无用--K4。
、万年历状态(K7=X、K8=1):
此状态下数码管显示当前的年月日,K1为设定日期开关,K2为设定月开关,K3为设定年开关、K4为清零开关。
、锁死状态(K5=0):
此状态下所有电路都保持原状态(不给电路送脉冲)。
.开关功能介绍(两种方案)
.简单复用(方便,易操作,但开关太多—7个)
K1
K2
K3
K4
K5
K7
K8
1
任意
○
●
★
各种操作的开关状态
★★★★○★★
锁死状态
2
●○★○●●●
校分状态
3
○●★○●●●
校时状态
4
○○★●●●●
时钟清零
5
●○★★●●○
设定闹钟分
6
○●★★●●○
设定闹钟时
7
●○○○●○★
设定万年历天
8
○●○○●○★
设定万年历月
9
○○●○●○★
设定万年历年
10
○○○●●○★
万年历清零
.带计数器的复用
通过上面的介绍我们可以清楚的看到电路总共有10种工作状态,但这里要把锁死状态单独考虑,所以总共我们就可以通过控制一个摸十或摸九的计数器,再把结果输送给一个数据分配器,在不同数值时把开关状态输送到不同的控制口,计数器数值可以通过LED灯观测。
这样我们总共使用三个开关就可以控制整个电路----锁死键、模式键、控制键。
(具体电路见下面分析)
二.方案论证:
.总体方案分析:
整个电路有三大主体电路:
1.控制电路,2.脉冲电路,3,功能电路
时钟电路首先要有输入脉冲,由于平台提供了脉冲发生器,就省去了脉冲发生器的设计,这里我们只需要设计一个分频器,得到我们需要的频率。
时钟的计时范围是00:
00:
00---23:
59:
59,所以我们需要设计模六十和模二十四的计数器组成时钟计时电路。
为了显示当前时钟时间,我们需要一个显示电路。
校分、校时、清零电路只需要输入一些控制信号给时钟计时电路即可,当然这些控制信号是由开关提供的。
要实现整点报时功能,一个报时控制电路是必不可少的。
这是只含基本功能的时钟电路所包含的子电路。
为了实现我们加入的闹钟功能,我们需要一个闹钟时间设定电路;
闹钟时间保持电路;
比较电路;
蜂鸣器控制电路;
闹表时间显示电路。
因为我们只含有一个数码显示器,一般状态下显示的是时钟,所以我们需要一个显示模式切换电路。
万年历电路需要由计时电路提供计时脉冲,脉冲输送给一个由模30、模12、模100级联而成计时电路。
同样万年历电路需要一个时间调整电路、显示电路、显示模式切换电路。
通过以上分析我们可以得到如下框架图:
图1电路结构图
.电路的工作原理
电路总图如下(电路进行了封装):
图2电路总图
首先由分频器把原来的48MHZ的脉冲用进行分频得到1Khz、500hz、2hz、1hz的脉冲。
1hz的脉冲送到时钟计时电路秒位的clk输入口;
秒位的进位信号和2hz脉冲通过开关的选择输送到分位电路的时钟输入口,前者用于正常计时,后者由于校分时;
分位的进位信号和2hz脉冲通过开关的选择输送到时位电路的时钟输入口,前者用于正常计时,后者由于校时。
把三个计数器的输出输送给一个24选4的数据选择器,六组分别为秒个位、秒十位、分个位、分十位、时个位、时十位。
数据选择器输入信号由一个模八的计数器提供,这个模八的计数器的输出同时送给一74138译码器。
数据选择器的输出送入7447段译码器的输入口,74138的的输出由于选择显示器的位,7447的输出用于段的显示,这样就实现了动态显示。
至于整点报时电路我们把要蜂鸣器响的时间通过卡诺图化简,得到最简的逻辑函数式,再把逻辑函数式通过电路实现,满足要求才把脉冲信号输送给蜂鸣器。
闹钟电路:
首先通过选择是否向分位和十位电路送脉冲来设定时间,当两个电路都无脉冲则电路保持当前的数字,输出端上的电平不在改变,把这个电平信号与时钟计时电路中的对应位输送到一个双输入的同或门,再把14个与门的输出与起来,在与1khz的脉冲与其来送入蜂鸣器。
闹表各位的动态显示原理与上面相同。
万年历电路:
其正常状态的脉冲是由时钟计数器时位的进位信号提供的,在调整日期时,时钟信号是通过开关选择一个2hz脉冲输送到各个电路时钟端的。
清零开关的输入信号输送到各个计数器的清零端即可。
万年历各位的动态显示原理与上面相同。
最后由于有三组输出信号要显示,我们通过显示模式控制开关选择要显示的状态信号。
以上的各种状态下的控制键通过模式的选择进行了复用。
模式状态切换的连个按键的输入同时输送到两个LED灯,通过观察灯的状态我们就可以判断当前的模式。
三.各子模块设计原理
.脉冲分频模块
平台提供给我们的是48Mhz的脉冲,由于电路的需要,我们要把48Mhz的脉冲分频得到1Khz(蜂鸣器、动态显示)、500hz(蜂鸣器)、2hz(快速调整)、1hz(时钟计数)的脉冲。
电路结构图如下:
图3分频器电路结构图
.三分频电路
图4
本电路采用清零的方法把模16的计数器转换为模三的计数器,输出即为三分频后的脉冲。
.48分频电路
图5
把一个模16计数器和模3的计数器级联(16×
3=48)即可得到模48的计数器,输出即为48分频后的脉冲。
.1000分频电路
图6
把三个模10的计数器级联起来(10×
10×
10=1000),就可以得到一个1000的分频器,由于做的是分频器考虑的主体是脉冲电平变化率的问题,对一个周期里电平什么时候改变要求并不是很严格,所以这里为了避免冒险未采用芯片的进位信号作为下一级芯片的时钟信号,而是采用把的值送到时钟端。
分频器的总电路图:
图7
最终从48MHZ的脉冲我们得到1Khz(蜂鸣器、动态显示)、500hz(蜂鸣器)、2hz(快速调整)、1hz(时钟计数)的脉冲。
其芯片封装结果如下:
图8
.时钟计时模块
数字钟的计时电路包括秒位、分位、时位三部分。
其中秒位与分位均为60进制计时,时位为24进制计时。
这样我们只需设计模60和模24两种计数器即可。
秒向分进位,分向时进位,这样把两个模60和一个模24计数器级联就可以得到时钟的计时电路。
a.模60计数器
电路图:
图9
为了防止冒险我们采用同步的方法设计计数器(1、同步时钟;
2、同步置数)。
把进位信号送入使能端ENT(高电平有效),当第一片计数到1001(9)时,ENT端变成高电平,但74160是上升沿触发的,此时clk无上升沿第二片不计数,当CLK的上升沿到来,第一片回到0000状态,第二片计数器的值增加1。
第一片要设计为模10计数器,第二片要设计成模6计数器,因为74160本身就是模10计数器,所以第一片不要加别的控制电路。
第二片我们把Qc、Qa与非起来送入同步置数端LDN,当第二片的计数值为0101(5)时,LDN端低电平,但74160是同步置数的而且是上升沿有效,此时无上升沿不置数,当CLK的上升沿到来第一片会到0000状态,第二片置数为0000,这样计数器就实现了00000000----01011001的计数范围。
与外部的联系我们设置了6个端口,一个输出端(进位信号),五个输入端(保持、清零、脉冲切换、脉冲一、脉冲二),下面对6个端口一一分析:
保持:
我们把开关接到ENP端正常状态开关低电平,信号经过非门变成高电平,送入ENP(高电平有效)端,当开关变成高电平时,ENP端变成低电平,使能端无效此时停止计数,从而达到保持的目的。
、清零:
与保持端相似。
脉冲1、脉冲2、脉冲切换开关:
当脉冲切换开关为低电平时CLK2与其与后为低电平,其非与CLK1与后还是CLK1,两个与门的结果或起来为CLK1,当脉冲切换开关为高电平时,同样的分析此时选中CLK2
进位端:
把Q1a、Q1d、Q2c、Q2a与非后当做进位信号,及计数值为01011001(59)时进位。
为什么选用非信号在总时钟电路时在分析。
封装后如下:
图10
.模24计数器
电路图:
图11
其基本思路与模60相差无几,差别只是在置数时不同,第一片在0—20连个阶段不要置数自己回0,但计到23时要置为0,需要外部控制电路。
所以我们要把Q1b、Qa1、Q2b(00100011—23)与非起来,把此信号作为置数信号。
图12
c.时钟计数电路(包含控制电路)
图13
计数电路:
脉冲由分频器提供,外部的总电路采用的是异步计数法(但达到了同步的效果),把进位信号连接起来。
秒位芯片CLC1接1HZ脉冲CLC2不接,分位芯片CLC1接秒位的进位信号脉冲CLC2接2HZ脉冲---用于校分,时位芯片CLC1接分位的进位信号脉冲CLC2接2HZ脉冲----用于校时。
由于进位信号是经过非后送出的,所以未到进位数值时为高电平,当达到进位制时低电平。
当秒位为0—58时,SCI为高,当秒位为59时,SCI为低,此时出现下降沿,分的计数器不计数,当秒位由59—变为0时,SCI又变为高电平,出现上升沿,触发分位的计数器,分位计数器加1,从而达到与同步计数方法相同的效果,而且不会出现冒险,这也就是为什么把原来的进位信号非后再送出的原因,分向秒进位分析方法相同。
控制电路:
总共有三个外接开关---清零、校分、校时。
由于校分和校时切换的是脉冲开关的颤抖可能被芯片误认为是计数脉冲,从而造成不稳定,所以在这两个开关上加了防抖动装置(D触发器)。
图14
时钟端接的是2HZ脉冲,D触发器的功能是输入端是什么输出端便是什么,但需要上升沿去触发,没有上升沿即使输入端改变输出端也不变,当按下开关时发生颤抖(很短暂)这时无上升沿,输出端不改变,当开关稳定后而且上升沿也到来了输出端改变。
为了达到消颤的目的同时又不造成开关的延时这里我们引入的脉冲是2HZ。
清零:
把开关直接接到三个计数器芯片的清零端即可。
校分:
开关值接到分位的K,为了达到校分时其他的保持这里还要把开关的值接到其他两个芯片的保持信号输入端。
校时:
同校分的原理一样。
由于秒位在校分和校时时都要保持,所以要把两个保持信号或其来。
.显示控制电路
结构图:
图15
图16
电路原理:
本电路完成的是动态显示,动态显示不同于以往的静态显示,所谓静态显示,即每一个数码管由单独的七段显示译码器驱动,如要显示N位数,必需用N个七段显示译码器。
和静态显示不同,动态显示使用数据选择器的分时复用功能,将任意多位数码管的显示驱动,由一个七段显示译码器来完成。
这样即节省了器件,又提高了效率。
主体是一个24选4的数据选择器,路选信号是由一个模8计数器提供的,这样在一个周期里空余两个路选信号,由于用的是动态原理,信号停留时间很短一个周期1/1000秒,这样人眼根本看不出。
24选4的输出送到7447段译码器,以便在数码管上显示相应数值。
模8计数器的输出同时送到位选控制电路,由一个74138译码器构成,以便在任意时间只有一个位有效,这样在任意的一个时间段里由7447提供段显信号,74138提供位显信号,从而达到动态显示的目的。
这里只有24选4芯片是自己设计的,其他的软件都提供了。
.24选4数据选择器的设计
这里我们是自己依据实验参考书里的mux数据选择器的VHDL语句编写的。
语句如下:
libraryieee。
useieee.std_logic_1164.all。
//声明库
entityMUX24isport
(SL1,SL2,SL3,SL4:
instd_logic。
SH1,SH2,SH3,SH4:
ML1,ML2,ML3,ML4:
MH1,MH2,MH3,MH4:
HL1,HL2,HL3,HL4:
HH1,HH2,HH3,HH4:
A1,A2,A3:
D1,D2,D3,D4:
outstd_logic)。
//定义输入输出端口
endMUX24。
architecturePofMUX24is
SIGNALSL:
std_logic_vector(3downto0)。
SIGNALSH:
SIGNALML:
SIGNALMH:
SIGNALHL:
SIGNALHH:
std_logic_vecto
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 课程 方案设计 多功能 数字 时钟 报告