資源描述:
《用vhdl實(shí)現(xiàn)數(shù)字時(shí)鐘的設(shè)計(jì)60139》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、維普資訊http://www.cqvip.com山西電子技術(shù)應(yīng)用實(shí)踐2008年第1期用VHDL實(shí)現(xiàn)數(shù)字時(shí)鐘的設(shè)計(jì)劉竹林李晶驊(十堰職業(yè)技術(shù)學(xué)院電子工程系,湖北十堰442000)摘要:以一款數(shù)字鐘設(shè)計(jì)為例,較詳細(xì)的介紹了如何用VHDL語言設(shè)計(jì)數(shù)字電路,并給出了部分程序、仿真波形圖,并在MAX+pluslI中進(jìn)行編譯、仿真、下載。由此說明利用VHDL開發(fā)數(shù)字電路的優(yōu)點(diǎn)。關(guān)鍵詞:VHDL;設(shè)計(jì);數(shù)字鐘;應(yīng)用電路中圖分類號(hào):TN953文獻(xiàn)標(biāo)識(shí)碼:A示時(shí)、分、秒6個(gè)數(shù)字的數(shù)字鐘,則需要6個(gè)七段顯示器。若0引言同時(shí)點(diǎn)亮這6
2、個(gè)七段顯示器,則電路中會(huì)產(chǎn)生一個(gè)比較大的VHDL硬件描述語言在電子設(shè)計(jì)自動(dòng)化(EDA)中扮演電流,很容易造成電路燒壞,我們通過掃描電路來解決這一著重要的角色,它的出現(xiàn)極大的改變了傳統(tǒng)的設(shè)計(jì)方法、設(shè)問題,通過產(chǎn)生一個(gè)掃描信號(hào)CS(0)一CS(5)來控制6個(gè)七計(jì)過程乃至設(shè)計(jì)觀念。由于采用了“自頂向下”(Top一13own)段顯示器,依次點(diǎn)亮6個(gè)七段顯示器,也就是每次只點(diǎn)亮一的全新設(shè)計(jì)方法,使設(shè)計(jì)師們擺脫了大量的輔助設(shè)計(jì)工作,個(gè)七段顯示器。只要掃描信號(hào)cs(0)一cs(5)的頻率超過人而把精力集中于創(chuàng)造性的方案與概念
3、構(gòu)思上,用新的思路來的眼睛視覺暫留頻率24Hz以上,就可以達(dá)到盡管每次點(diǎn)亮發(fā)掘硬件設(shè)備的潛力,從而極大地提高了設(shè)計(jì)效率,縮短了單個(gè)七段顯示器,卻能具有6個(gè)同時(shí)顯示的視覺效果,而且產(chǎn)品的研制周期。顯示也不致閃爍抖動(dòng)。這種設(shè)計(jì)方法首先從系統(tǒng)設(shè)計(jì)人手,在頂層進(jìn)行功能方其中6位掃描信號(hào)一方面控制七段顯示器依次點(diǎn)亮,一框圖的劃分和結(jié)構(gòu)設(shè)計(jì)。在方框圖一級(jí)進(jìn)行仿真、糾錯(cuò),并方面控制6選1選擇器輸出相應(yīng)顯示數(shù)字。用硬件描述語言對(duì)高層次的系統(tǒng)行為進(jìn)行描述,在系統(tǒng)一級(jí)2模塊設(shè)計(jì)進(jìn)行驗(yàn)證。然后用綜合優(yōu)化工具生成具體門電路的網(wǎng)表,其對(duì)
4、應(yīng)的物理實(shí)現(xiàn)級(jí)可以是印刷電路板或?qū)S眉呻娐?。?.1VHDL語言的基本結(jié)構(gòu)于設(shè)計(jì)的主要仿真和調(diào)試過程是在高層次上完成的,這不僅一個(gè)獨(dú)立的設(shè)計(jì)實(shí)體通常包括:實(shí)體(ENTITY)、結(jié)構(gòu)有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯(cuò)誤,避免設(shè)計(jì)工作的浪費(fèi),而體(ARcHITECrURE)、配置(CONFIGI瓜AT10N)、包集合且也減少了邏輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。(PAcKGE)、和庫(LIB1)5個(gè)部分。其中實(shí)體用于描述1用vHDL設(shè)計(jì)一款數(shù)字鐘所設(shè)計(jì)的系統(tǒng)的外部接口信號(hào);構(gòu)造體用于描述系統(tǒng)內(nèi)部的結(jié)構(gòu)和行為;
5、建立輸入和輸出之間的關(guān)系;配置語句安裝具我們?cè)O(shè)計(jì)的數(shù)字時(shí)鐘原理框圖如圖1。其基本功能劃體元件到實(shí)體一結(jié)構(gòu)體對(duì),可以被看作是設(shè)計(jì)的零件清單;分為:計(jì)數(shù)模塊(包括秒、分、時(shí))、譯碼模塊、掃描顯示控制模包集合存放各個(gè)設(shè)計(jì)模塊共享的數(shù)據(jù)類型、常數(shù)和子程序塊。計(jì)數(shù)模塊由兩個(gè)60進(jìn)制計(jì)數(shù)器和一個(gè)24進(jìn)制計(jì)數(shù)器組等;庫是專門存放預(yù)編譯程序包的地方。Ⅵ{I)L程序設(shè)計(jì)基成,分別對(duì)秒、分、小時(shí)進(jìn)行計(jì)數(shù),當(dāng)計(jì)數(shù)到23點(diǎn)59分59秒本結(jié)構(gòu)如圖2。的時(shí)候,即一天結(jié)束,計(jì)數(shù)器清零,新的一天重新開始計(jì)數(shù)。?‘--一一’--一一一一一一‘-
6、一’^2.2.1計(jì)數(shù)模塊(建立VHDL語言的工程文件)計(jì)數(shù)模塊由兩個(gè)60進(jìn)制計(jì)數(shù)器和一個(gè)24進(jìn)制計(jì)數(shù)器組成,分別對(duì)秒、分、小時(shí)進(jìn)行計(jì)數(shù)。其VHDL源程序相差圖1數(shù)字時(shí)鐘原理框圖不大由于篇幅有限,這里我們以秒模塊的實(shí)現(xiàn)為例。程序如秒計(jì)數(shù)器的計(jì)數(shù)時(shí)鐘信號(hào)為1Hz的標(biāo)準(zhǔn)信號(hào),可以由系下:統(tǒng)板上提供的4MHz信號(hào)通過2分頻得到。秒計(jì)數(shù)器的進(jìn)libraryieee:位輸出信號(hào)作為分鐘計(jì)數(shù)器的計(jì)數(shù)信號(hào),分鐘計(jì)數(shù)器的進(jìn)位useieee.std—loNc一1164.a(chǎn)ll;輸出信號(hào)又作為小時(shí)計(jì)數(shù)器的計(jì)數(shù)信號(hào)。設(shè)計(jì)一個(gè)同時(shí)顯en
7、titytaunter一60一bcdis收稿日期:2007—06—04第一作者劉竹林男27歲助教維普資訊http://www.cqvip.com48山西電子技術(shù)2008年port(cen,clk,setfime:instd—logic;S—ten:S—ten+1;q—one~outintegerrange0to9;elseq—ten:outintegerrange0to9;S—ten:=0;co:outstd—logic);endif;endcounter—60——bed;endif;architecturer
8、t1ofcounter一60一bcdiSendif;signalCO0"std—logic;endif;signalclkI:std—logic;q—one<=S—one;componentdffisq—ten<=S—ten;port(clk,d:instd—logic;ifS—ten=5andS—one9thenq:outstd,logic);co<=’1’:endcomponent