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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

評論

0/150

提交評論