數(shù)字鐘的設(shè)計與制作.doc_第1頁
數(shù)字鐘的設(shè)計與制作.doc_第2頁
數(shù)字鐘的設(shè)計與制作.doc_第3頁
數(shù)字鐘的設(shè)計與制作.doc_第4頁
數(shù)字鐘的設(shè)計與制作.doc_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

長沙理工大學(xué)計算機(jī)組成原理課程設(shè)計報告數(shù)字鐘的設(shè)計與制作楊學(xué)鎮(zhèn)學(xué) 院計算機(jī)與通信工程專 業(yè)計算機(jī)科學(xué)與技術(shù) 班 級 085010502 學(xué) 號 200550080230 學(xué)生姓名 楊學(xué)鎮(zhèn) 指導(dǎo)教師 肖曉麗 課程成績 完成日期 2007年1月18日課程設(shè)計任務(wù)書計算機(jī)與通信工程學(xué)院 計算機(jī)科學(xué)與技術(shù)專業(yè) 課程名稱計算機(jī)組成原理課程設(shè)計時間20062007學(xué)年第一學(xué)期1920周學(xué)生姓名楊學(xué)鎮(zhèn)指導(dǎo)老師肖曉麗題 目數(shù)字鐘的設(shè)計與制作主要內(nèi)容:本課程設(shè)計主要是利用硬件描述語言vhdl的設(shè)計思想,采用自頂向下的方法、劃分模塊來設(shè)計數(shù)字鐘的幾個模塊。通過課程設(shè)計深入理解計算機(jī)的基本原理和方法,加深對計算機(jī)組成的理解。要求:(1)通過對相應(yīng)文獻(xiàn)的收集、分析以及總結(jié),給出相應(yīng)課題的背景、意義及現(xiàn)狀研究分析。(2)通過課題設(shè)計,掌握計算機(jī)組成原理的分析方法和設(shè)計方法。(3)學(xué)按要求編寫課程設(shè)計報告書,能正確闡述設(shè)計和實驗結(jié)果。(4)學(xué)生應(yīng)抱著嚴(yán)謹(jǐn)認(rèn)真的態(tài)度積極投入到課程設(shè)計過程中,認(rèn)真查閱相應(yīng)文獻(xiàn)以及實現(xiàn),給出個人分析、設(shè)計以及實現(xiàn)。應(yīng)當(dāng)提交的文件:(1)課程設(shè)計報告。(2)課程設(shè)計附件(源程序、各類圖紙、實驗數(shù)據(jù)、運行截圖等)。課程設(shè)計成績評定學(xué) 院 計算機(jī)與通信工程 專 業(yè) 計算機(jī)科學(xué)與技術(shù)班 級 計05-02班 學(xué) 號 200550080230 學(xué)生姓名 楊學(xué)鎮(zhèn) 指導(dǎo)教師 肖曉麗 課程成績 完成日期 2007.1.18 指導(dǎo)教師對學(xué)生在課程設(shè)計中的評價評分項目優(yōu)良中及格不及格課程設(shè)計中的創(chuàng)造性成果學(xué)生掌握課程內(nèi)容的程度課程設(shè)計完成情況課程設(shè)計動手能力文字表達(dá)學(xué)習(xí)態(tài)度規(guī)范要求課程設(shè)計論文的質(zhì)量指導(dǎo)教師對課程設(shè)計的評定意見綜合成績 指導(dǎo)教師簽字 年 月 日數(shù)字鐘的設(shè)計與制作學(xué)生姓名:楊學(xué)鎮(zhèn) 指導(dǎo)老師:肖曉麗摘 要 系統(tǒng)使用eda技術(shù)設(shè)計了數(shù)字鐘,采用硬件描述語言vhdl按模塊化方式進(jìn)行設(shè)計,然后進(jìn)行編程,時序仿真等。利用vhdl語言完成了數(shù)字鐘的設(shè)計。該數(shù)字鐘能實現(xiàn)時、分、秒計數(shù)的顯示功能,且以24小時循環(huán)計時。整個系統(tǒng)結(jié)構(gòu)簡單,使用方便,功能齊全,精度高,具有一定的開發(fā)價值。關(guān)鍵字 數(shù)字鐘;eda;vhdl; 目錄1引言11.1課題的背景、目的11.2設(shè)計的內(nèi)容12 eda、vhdl簡介22.1eda技術(shù)22.2硬件描述語言vhdl2vhdl的簡介2vhdl語言的特點2vhdl的設(shè)計流程33 數(shù)字鐘設(shè)計43.1數(shù)字鐘的工作原理43.2晶體振蕩器53.3分頻器電路63.4時、分、秒計數(shù)器電路64 系統(tǒng)仿真91.秒表計數(shù)器電路仿真圖92.小時計數(shù)器電路仿真圖93.分計數(shù)器電路仿真圖10結(jié)束語11致謝12參考文獻(xiàn)13附錄14 楊學(xué)鎮(zhèn) 數(shù)字鐘的設(shè)計與制作 第17頁 共18頁 1 引 言隨著社會的發(fā)展,科學(xué)技術(shù)也在不斷的進(jìn)步。特別是計算機(jī)產(chǎn)業(yè),可以說是日新月異,數(shù)字鐘作為計算機(jī)的一個組成也隨之逐漸進(jìn)入人們的生活,從先前的采用半導(dǎo)體技術(shù)實現(xiàn)的數(shù)字鐘到現(xiàn)在廣泛應(yīng)用的采用高集成度芯片實現(xiàn)的數(shù)字鐘。數(shù)字鐘正在向著功能強(qiáng),體積小,重量輕等方向不斷發(fā)展,本設(shè)計主要介紹的是一個基于超高速硬件描述語言vhdl對數(shù)字鐘中顯示電路進(jìn)行編程實現(xiàn)。近年來,集成電路和計算機(jī)應(yīng)用得到了高速發(fā)展,現(xiàn)代電子設(shè)計技術(shù)已邁入一個嶄新的階段,具體表現(xiàn)在:(1)電子器件及其技術(shù)的發(fā)展將更多地趨向于為eda服務(wù);(2)硬件電路與軟件設(shè)計過程已高度滲透;(3)電子設(shè)計技術(shù)將歸結(jié)為更加標(biāo)準(zhǔn)、規(guī)范的eda工具和硬件描述語言vhdl的運用;(4)數(shù)字系統(tǒng)的芯片化實現(xiàn)手段已成主流。因此利用計算機(jī)和大規(guī)模復(fù)雜可編程邏輯器件進(jìn)行現(xiàn)代電子系統(tǒng)設(shè)計已成為電子工程類技術(shù)人員必不可少的基本技能之一。1.1課題的背景、目的本次設(shè)計的目的就是在掌握eda實驗開發(fā)系統(tǒng)的初步使用基礎(chǔ)上,了解eda技術(shù),加深對計算機(jī)體系結(jié)構(gòu)的理解。通過學(xué)習(xí)的vhdl語言結(jié)合電子電路的設(shè)計知識理論聯(lián)系實際,掌握所學(xué)的課程知識,學(xué)習(xí)vhdl基本單元電路的綜合設(shè)計應(yīng)用。通過對實用數(shù)字鐘的設(shè)計,鞏固和綜合運用計算機(jī)原理的基本理論和方法,理論聯(lián)系實際,提高ic設(shè)計能力,提高分析、解決計算機(jī)技術(shù)實際問題的獨立工作能力。通過課程設(shè)計深入理解計算機(jī)的組成原理,達(dá)到課程設(shè)計的目標(biāo)。1.2 設(shè)計的內(nèi)容利用vhdl設(shè)計數(shù)字鐘顯示電路的各個模塊,并使用eda工具對各模塊進(jìn)行仿真驗證。數(shù)字鐘顯示電路的設(shè)計分為下面幾個模塊:秒計數(shù)模塊、分計數(shù)模塊、小時計數(shù)模塊.。完成以后把各個模塊整合后,顯示相應(yīng)的輸出狀態(tài)。2 eda、vhdl簡介2.1 eda技術(shù) eda是電子設(shè)計自動化(electronic design automation)縮寫,eda是以計算機(jī)為工具,根據(jù)硬件描述語言hdl( hardware description language)完成的設(shè)計文件,自動地完成邏輯編譯、化簡、分割、綜合及優(yōu)化、布局布線、仿真以及對于特定目標(biāo)芯片的適配編譯和編程下載等工作。典型的eda工具中必須包含兩個特殊的軟件包,即綜合器和適配器。綜合器的功能就是將設(shè)計者在eda平臺上完成的針對某個系統(tǒng)項目的hdl、原理圖或狀態(tài)圖形描述,針對給定的硬件系統(tǒng)組件,進(jìn)行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得我們欲實現(xiàn)功能的描述文件。綜合器在工作前,必須給定所要實現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬件結(jié)構(gòu)用一定的方式聯(lián)系起來。 2.2 硬件描述語言vhdl vhdl的簡介 vhdl的英文全名是very-high-speed integrated circuit hardwaredescription language,誕生于1982年。1987年底,vhdl被ieee和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言 。自ieee公布了vhdl的標(biāo)準(zhǔn)版本,ieee-1076(簡稱87版)之后,各eda公司相繼推出了自己的vhdl設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和vhdl接口。此后vhdl在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代了原有的非標(biāo)準(zhǔn)的硬件描述語言。1993年,ieee對vhdl進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展vhdl的內(nèi)容,公布了新版本的vhdl,即ieee標(biāo)準(zhǔn)的1076-1993版本,(簡稱93版)?,F(xiàn)在,vhdl和verilog作為ieee的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多eda公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,vhdl于verilog語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。 vhdl語言的特點1.用vhdl代碼而不是用原理圖進(jìn)行設(shè)計,意味著整個電路板的模型及性能可用計算機(jī)模擬進(jìn)行驗證。2.vhdl元件的設(shè)計與工藝u無關(guān),與工藝獨立,方便工藝轉(zhuǎn)換。3.vhdl支持各種設(shè)計方法,自頂向下、自底向上或者混合的都可以。4.可以進(jìn)行從系統(tǒng)級到邏輯級的描述,即混合描述。5.vhdl區(qū)別于其他的hdl,已形成標(biāo)準(zhǔn),其代碼在不同的系統(tǒng)中可交換建模。 vhdl的設(shè)計流程1.設(shè)計規(guī)范的定義明確這個系統(tǒng)有哪些設(shè)計要求,和你要想到達(dá)的目標(biāo)。2.采用vhdl進(jìn)行設(shè)計描述這部分包括設(shè)計規(guī)劃和程序的編寫。設(shè)計規(guī)劃主要包括設(shè)計方式的選擇及是否進(jìn)行模塊劃分。設(shè)計方式一般包括直接設(shè)計,自頂向下和自底向下設(shè)計,這個和其他軟件語言差不多。最重要還是模塊劃分。3.vhdl程序仿真4.綜合、優(yōu)化和布局布線綜合指的是將設(shè)計描述轉(zhuǎn)化成底層電路的表示形式,其結(jié)果是一個網(wǎng)表或者是一組邏輯方程;優(yōu)化,這個主要是為了提高程序的執(zhí)行效率及減少資源的利用;布局布線,指的是將邏輯關(guān)系轉(zhuǎn)化成電路連接的方式。5.仿真這個與vhdl程序仿真不同,這個不僅是對邏輯方面的驗證,還要進(jìn)行時序功能驗證。6.器件編程3 數(shù)字鐘設(shè)計3.1數(shù)字鐘的工作原理 數(shù)字鐘是一個將“ 時”,“分”,“秒”顯示于人的視覺器官的計時裝置。它的計時周期為24小時,顯示滿刻度為23時59分59秒,另外應(yīng)有校時功能和一些顯示星期、報時、停電查看時間等附加功能。因此,一個基本的數(shù)字鐘電路主要由譯碼顯示器、“時”,“分”,“秒”,“星期”計數(shù)器、校時電路、報時電路和振蕩器組成。干電路系統(tǒng)由秒信號發(fā)生器、“時、分、秒、星期”計數(shù)器、譯碼器及顯示器、校時電路、整點報時電路組成。秒信號產(chǎn)生器是整個系統(tǒng)的時基信號,它直接決定計時系統(tǒng)的精度,一般用石英晶體振蕩器加分頻器來實現(xiàn)。將標(biāo)準(zhǔn)秒信號送入“秒計數(shù)器”,“秒計數(shù)器”采用60進(jìn)制計數(shù)器,每累計60秒發(fā)出一個“分脈沖”信號,該信號將作為“分計數(shù)器”的時鐘脈沖?!胺钟嫈?shù)器”也采用60進(jìn)制計數(shù)器,每累計60分鐘,發(fā)出一個“時脈沖”信號,該信號將被送到“時計數(shù)器”?!皶r計數(shù)器”采用24進(jìn)制計時器,可實現(xiàn)對一天24小時的累計。每累計24小時,發(fā)出一個“星期脈沖”信號,該信號將被送到“星期計數(shù)器”,“星期計數(shù)器” 采用7進(jìn)制計時器,可實現(xiàn)對一周7天的累計。工作原理圖如圖3.1所示。 圖3.1 數(shù)字鐘的工作原理圖3.2晶體振蕩器 晶體振蕩電路是構(gòu)成數(shù)字式時鐘的核心,它保證了時鐘走時準(zhǔn)確及穩(wěn)定。晶體振蕩器它的作用是產(chǎn)生時間標(biāo)準(zhǔn)信號。數(shù)字鐘的精度主要取決于時間標(biāo)準(zhǔn)信號的頻率及其穩(wěn)定度。因此,一般采用石英晶體振蕩器經(jīng)過分頻得到這一信號。晶體振蕩器電路給數(shù)字鐘提供一個頻率穩(wěn)定準(zhǔn)確的32768hz的方波信號,可保證數(shù)字鐘的走時準(zhǔn)確及穩(wěn)定。不管是指針式的電子鐘還是數(shù)字顯示的電子鐘都使用了晶體振蕩器電路。如圖3.2所示晶體振蕩電路框圖。 圖3.2 晶體振蕩電路3.3分頻器電路分頻器電路將32768hz的高頻方波信號經(jīng)32768次分頻后得到1hz的方波信號供秒計數(shù)器進(jìn)行計數(shù)。分頻器實際上也就是計數(shù)器。本次設(shè)計是運用了cd4060分頻器進(jìn)行分頻,分頻電路可提供512hz和1024hz的頻率,在經(jīng)cd4027分頻器進(jìn)行一分頻,為此電路輸送一秒脈沖。2進(jìn)制計數(shù)器我們采用cmos管cd4013b。cd4013b其實是一個雙d型觸發(fā)器。它是由兩個相同的、獨立的數(shù)據(jù)型觸發(fā)器組成。每個觸發(fā)器有獨立的數(shù)據(jù)、置位、復(fù)位、時鐘輸入和q輸出。在時鐘脈沖正變化沿時預(yù)置在d輸入的邏輯電平轉(zhuǎn)換至q輸出。時鐘置位和復(fù)位是獨立的,分別通過在置位或復(fù)位線上高電平完成。3.4 時、分、秒計數(shù)器電路(1)原理時、分、秒計數(shù)器電路有相似的地方,用兩個74ls161組成一個二十四進(jìn)制計數(shù)器,顯示023時。由分計數(shù)器送來的進(jìn)位脈沖送入時個位計數(shù)器,計10小時清零并向時十位計數(shù)器送進(jìn)位脈沖,當(dāng)十位輸出為二,個位輸出為四時將整個電路清零并向下一級的星期顯示電路送進(jìn)位脈沖。本電路也可理解為用兩個74ls161組成一個一百進(jìn)制計數(shù)器顯示099,當(dāng)計數(shù)到24是將整個電路清零。時、分、秒計數(shù)器都需要用譯碼電路和led數(shù)碼管進(jìn)行譯碼和顯示。時、分、秒計數(shù)器電路如圖3.3所示。圖3.3 時、分、秒計數(shù)器電路 時、分、秒電路部分代碼如下:library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity second is port(clk:in std_logic; reset:in std_logic; setmin:in std_logic; enmin:out std_logic; daout:out std_logic_vector(6 downto 0); end entity second; architecture art of second is signal count:std_logic_vector(6 downto 0); signal enmin_1,enmin_2:std_logic;begindaout=count;enmin_2=(setmin and clk);enmin=(enmin_1 or enmin_2);process(clk,reset,setmin)begin if(reset=0)then count=0000000;enmin_1=0;elsif(clkevent and clk=1)then if(count(3 downto 0)=1001) then if(count16#60#)then if(count=101101)then enmin_1=1;count=0000000; else count=count+7; end if; else count=0000000;end if; elsif (count16#60#)then count=count+1; enmin_1=0; else count=0000000;enmin_1=0; end if; end if;end process;end art; 4 系統(tǒng)仿真1. 秒表計數(shù)器電路仿真圖秒表計數(shù)器電路仿真圖如圖4.1:將標(biāo)準(zhǔn)秒信號送入“秒計數(shù)器”,“秒計數(shù)器”采用60進(jìn)制計數(shù)器,每累計60秒發(fā)出一個“分脈沖”信號,該信號將作為“分計數(shù)器”的時鐘脈沖。 圖4.1 秒計數(shù)器電路仿真圖2 小時計數(shù)器電路仿真圖時計數(shù)器電路仿真圖如圖4.2:“時計數(shù)器”采用24進(jìn)制計時器,可實現(xiàn)對一天24小時的累計。每累計24小時,發(fā)出一個“星期脈沖”信號,該信號將被送到“星期計數(shù)器”,圖4.2 小時計數(shù)器電路仿真圖3分計數(shù)器電路仿真圖分計數(shù)器電路仿真圖如圖4.3:“分計數(shù)器”也采用60進(jìn)制計數(shù)器,每累計60分鐘,發(fā)出一個“時脈沖”信號,該信號將被送到“時計數(shù)器”。圖4.3 分計數(shù)器電路仿真圖結(jié)束語通過兩星期的緊張工作,最后完成了我的設(shè)計任務(wù)數(shù)字鐘的設(shè)計與制作。通過本次課程設(shè)計的學(xué)習(xí),我深深的體會到設(shè)計課的重要性和目的性所在。本次設(shè)計課不僅僅培養(yǎng)了我們實際操作能力,也培養(yǎng)了我們靈活運用課本知識,理論聯(lián)系實際,獨立自主的進(jìn)行設(shè)計的能力。它不僅僅是一個學(xué)習(xí)新知識新方法的好機(jī)會,同時也是對我所學(xué)知識的一次綜合的檢驗和復(fù)習(xí),使我明白了自己的缺陷所在,從而查漏補(bǔ)缺。希望學(xué)校以后多安排一些類似的實踐環(huán)節(jié),讓同學(xué)們學(xué)以致用。課程設(shè)計中要求要有耐心和毅力,還要細(xì)心,稍有不慎,一個小小的錯誤就會導(dǎo)致結(jié)果的不正確,而對錯誤的檢查要求我要有足夠的耐心,通過這次設(shè)計和設(shè)計中遇到的問題,也積累了一定的經(jīng)驗,對以后從事集成電路設(shè)計工作會有一定的幫助。在應(yīng)用vhdl的過程中讓我真正領(lǐng)會到了其并行運行與其他軟件(c語言)順序執(zhí)行的差別及其在電路設(shè)計上的優(yōu)越性。用vhdl硬件描述語言的形式來進(jìn)行數(shù)字系統(tǒng)的設(shè)計方便靈活,利用eda軟件進(jìn)行編譯優(yōu)化仿真極大地減少了電路設(shè)計時間和可能發(fā)生的錯誤,降低了開發(fā)成本,這種設(shè)計方法必將在未來的數(shù)字系統(tǒng)設(shè)計中發(fā)揮越來越重要的作用。致 謝 本課程設(shè)計在選題和設(shè)計過程中得到了肖曉麗老師的悉心指導(dǎo),肖老師多次詢問課程設(shè)計進(jìn)程,并多次指導(dǎo)我對課程設(shè)計進(jìn)行修改,幫助我完善了該課程設(shè)計。在此對肖老師表示衷心的感謝。 參考文獻(xiàn)1 楊剛 vhdl數(shù)字控制系統(tǒng)設(shè)計 北京:電子工業(yè)出版社 20042曾繁泰 vhdl程序設(shè)計 北京:清華大學(xué)出版社 20013 黃仁欣 dea技術(shù)使用教程 北京:清華大學(xué)出版社 20064 曹欣燕 dea技術(shù)實驗與課程設(shè)計 北京:清華大學(xué)出版社 2006附 錄1.秒計數(shù)器模塊的vhdl源程序: library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity second is port(clk:in std_logic; reset:in std_logic; setmin:in std_logic; enmin:out std_logic; daout:out std_logic_vector(6 downto 0); end entity second; architecture art of second is signal count:std_logic_vector(6 downto 0); signal enmin_1,enmin_2:std_logic;begindaout=count;enmin_2=(setmin and clk);enmin=(enmin_1 or enmin_2);process(clk,reset,setmin)begin if(reset=0)then count=0000000;enmin_1=0;elsif(clkevent and clk=1)then if(count(3 downto 0)=1001) then if(count16#60#)then if(count=101101)then enmin_1=1;count=0000000; else count=count+7; end if; else count=0000000;end if; elsif (count16#60#)then count=count+1; enmin_1=0; else count=0000000;enmin_1=0; end if; end if;end process;end art;2.分計數(shù)器模塊的vhdl源程序:library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity minute is port(clk:in std_logic; clks:in std_logic; reset:in std_logic; sethour:in std_logic; enhour:out std_logic; daout:out std_logic_vector(6 downto 0); end entity minute; architecture art of minute is signal count:std_logic_vector(6 downto 0); signal enhour_1,enhour_2:std_logic;begindaout=count;enhour_2=(sethour and clks);enhour=(enhour_1 or enhour_2);process(clk,reset,sethour)begin if(reset=0)then count=0000000;enhour_1=0;elsif(clkevent and clk=1)then if(count(3 d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論