版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 電子技術課程設計</b></p><p> 題 目 基于VHDL的電子鐘的設計 </p><p> 學院名稱 電氣工程學院 </p><p> 指導教師 XXX &l
2、t;/p><p> 職 稱 教授 </p><p> 班 級 電力XXX班 </p><p> 學 號 2007XXX </p><p> 學生姓名 XXX </p><
3、p> 2010年 01 月 15 日</p><p><b> 課程設計任務書</b></p><p> 學院 電氣工程學院 專業(yè) 電氣工程及其自動化</p><p> 班級 電力XXX班 學號 2007XXXXXXX </p><p&
4、gt; 姓名 XXX 指導老師 XXX</p><p> 一 設計課題名稱 </p><p> 基于VHDL的電子鐘的設計</p><p><b> 二 電子鐘功能</b></p><p> 本課題要求所設計的電子鐘能夠正常進行時、分、秒計時,并顯示計時結果。同時具有校
5、時功能。</p><p><b> 三 設計要求</b></p><p> 1.詳細說明設計方案;</p><p> 2.用VHDL編寫設計程序;</p><p> 3.給出系統(tǒng)仿真結果;</p><p><b> 4.進行硬件驗證。</b></p>
6、<p><b> 目錄</b></p><p><b> 第一章</b></p><p> 1.1引言----------------------------------------------------------------4</p><p> 1.2 課題設計的背景、目的------------
7、---------------------------4</p><p><b> 第二章</b></p><p> 2.1 EDA的簡單介紹------------------------------------------------ 6</p><p> 2.2 VHDL的簡單介紹--------------------------
8、--------------------- 6</p><p> 2.3 Quartus2 軟件----------------------------------------------- 7</p><p><b> 第三章</b></p><p> 3.1電子鐘的結構圖 -----------------------------
9、---------------------9</p><p> 3.2小時模塊 ------------------------------------------------ 9</p><p> 3. 3分鐘模塊 ---------------------------------------------- 11</p><p>
10、 3.4 秒鐘模塊 -------------------------------------------12</p><p> 3.5 時間設置模塊 --------------------------------------------- 14</p><p> 心得體會 --------------------------------------
11、---------------------- 17</p><p> 參考文獻 ------------------------------------------------------------ 18</p><p><b> 第一章</b></p><p><b> 1.1 引言</b></p>
12、;<p> 隨著科學技術的不斷發(fā)展,人們對時間計量的精度要求越來越高。數(shù)字電子鐘走時精度高,穩(wěn)定性好,使用方便,不需要經常調校,數(shù)字式電子鐘用秒脈沖發(fā)生器的精度穩(wěn)定保證了數(shù)字鐘的質量,我們利用VHDL語言制作電子鐘的詳細程序。</p><p> 1.2課題設計的背景、目的 </p><p> 20世紀末,電子技術獲得了飛速的發(fā)展,在其推動下,現(xiàn)代電子產品幾乎滲透了社會的
13、各個領域,有力地推動了社會生產力的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產品性能進一步提高,產品更新?lián)Q代的節(jié)奏也越來越快。 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當前的時間。忘記了要做的事情,當事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大禍。生活中很多安全事故都是由于我們忽略了時間的重要性,缺少了時間觀念而造成的。所以要想擁有超強的時間觀念,減少由于時間給我們帶來的痛苦與
14、災難,擁有好的手表式個不錯的選擇。但是,隨著接受皮試的人數(shù)增加,到底是哪個人的皮試到時間卻難以判斷。所以,要制作一個定時系統(tǒng)。隨時提醒這些容易忘記時間的人。 鐘表的數(shù)字化給人們生產生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、定時啟閉電路、定時開關烘箱、通斷動力設備,甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎的。因此,研究數(shù)字鐘及擴大其
15、應用,有著非?,F(xiàn)實的意義。 通過</p><p><b> 第二章</b></p><p> 2.1 EDA的簡單介紹</p><p> EDA技術作為現(xiàn)代電子設計技術的核心,它依賴功能強大的計算機在EDA工具軟件平臺上,對以硬件描述語言HDL為系統(tǒng)邏輯手段完成的設計文件,自動的完成邏輯編輯。邏輯化簡、邏輯分割、邏輯綜合、結構綜
16、合,以及邏輯優(yōu)化和仿真測試,直至實現(xiàn)既定的電子線路系統(tǒng)功能。</p><p> EDA技術在硬件實現(xiàn)方面融合了大規(guī)模集成電路制造技術,IC版圖設計技術、ASIC測試和封裝技術,F(xiàn)PGA/CPLD編程下載技術、自動測試技術等;在計算機輔助工程方面融合了計算機輔助設計CAD,計算機輔助制造CAM,計算機輔助測試CAT,計算機輔助工程CAE技術以及多種計算機語言設計概念;而在現(xiàn)代電子學方面則容納了更多的內容,如電子線
17、路設計理論,數(shù)字信號處理技術,數(shù)字系統(tǒng)建模和優(yōu)化技術及基于微波技術的長線技術理論等。</p><p> 現(xiàn)在對EDA的概念或范疇用得很寬。包括在機械、電子、通信、航空航天、化工、礦產、生物、醫(yī)學、軍事等各個領域,都有EDA的應用。目前EDA 技術已在各大公司、企事業(yè)單位和科研教學部門廣泛使用。</p><p> 2.2 VHDL的簡單介紹</p><p> V
18、HDL是于1983年由美國國防部發(fā)起創(chuàng)建,有IEEE進一步發(fā)展并于1987年作為“IEEE標準1076”發(fā)布。從此,VHDL成為硬件描述語言的業(yè)界標準之一。</p><p> VHDL語言具有很強的電路描述和建模能力,能從多個層次對數(shù)字系統(tǒng)進行建模和描述,從而大大簡化了硬件設計任務,提高了設計效率和可靠性。</p><p> VHDL具有與具體硬件電路無關和與設計平臺無關的特性,并且具
19、有良好的電路行為描述和系統(tǒng)描述的能力,在語言易讀性和層次化結構化設計方面表現(xiàn)了強大的生命力和應用潛力。因此,VHDL支持各種模式的設計方法,自頂向下與自底向上或混合方法,在面對當今許多電子產品生命周期縮短,需要多次重新設計以融入最新技術、改變工藝等方面,VHDL具有良好的適應性。用VHDL進行電子系統(tǒng)設計的一個很大的優(yōu)點是設計者可以專心致力于其功能的實現(xiàn),而不需要對不影響功能的與工藝有關的因素花費過多的時間和精力。</p>
20、<p> 一.VHDL在工程設計中的優(yōu)點:</p><p> ?。?)與其他的硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了他成為系統(tǒng)設計領域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件結構,從邏輯行為上描述和設計大規(guī)模電子系統(tǒng)的重要保證。 (2)VHDL豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設計早期就能查驗設計系統(tǒng)的功能可行性,隨時可對設計進行仿真模擬。
21、 (3)VHDL語句的行為描述能力和程序結構決定了他具有支持大規(guī)模設計的分解和已有設計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)高效、高速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。</p><p> (4)對于用VHDL完成的一個確定的設計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設計轉變成門級網(wǎng)表。 (5)VHDL對設計的描述具有相對獨立性,設計者可以不懂硬件的結構,也不必管
22、理最終設計實現(xiàn)的目標器件是什么,而進行獨立的設計。</p><p> 二.VHDL語言的開發(fā)流程 </p><p> ?。?)文本編輯:用任何文本編輯器都可以進行,也可以用專用的HDL編輯環(huán)境。通常VHDL文件保存為.vhd文件。 (2)功能仿真:將文件調入HDL仿真軟件進行功能仿真,檢查邏輯功能是否正確(也叫前仿真,對簡單的設計可以跳過這一步,只在布線完成以后,進行時序
23、仿真)。 (3)邏輯綜合:將源文件調入邏輯綜合軟件進行綜合,即把語言綜合成最簡的布爾表達式和信號的連接關系。邏輯綜合軟件會生成.edf(edif)的EDA工業(yè)標準文件。 (4)布局布線:將.edf文件調入PLD廠家提供的軟件中進行布線,即把設計好的邏輯安放到PLD/FPGA內。 </p><p> ?。?)編程下載:確認仿真無誤后,將文件下載到芯片中。</p><p>
24、 2.3 Quartus2 軟件</p><p> Quartus2在基于VHDL程序設計中擁有輸入設計流程 ,其包括設計輸入,綜合,適配,仿真測試和編程下載等方法。</p><p> Quartus2與其他應用軟件相比,他提供了更強大、更直觀便捷和操作靈活的原理圖輸入設計功能,同時還配備了更豐富的適用于各種需要的元件庫,其中包括基本的邏輯元件,宏功能元件,以及類似于IP核的參數(shù)可設置
25、的宏功能塊LPM庫。</p><p> 與傳統(tǒng)的數(shù)字電路實驗相比,Quartus2提供原理圖輸入設計功能具有不可比擬的優(yōu)勢和先進性:</p><p> 設計者不必具備許多諸如編程技術,硬件描述語言等知識就能迅速入門,完成較大規(guī)模的電路設計系統(tǒng)。</p><p> 能進行任意層次的數(shù)字系統(tǒng)設計,傳統(tǒng)的數(shù)字電路實驗只能完成單一層次的設計。</p>&
26、lt;p> 能對系統(tǒng)中的任意層次,或任一元件的功能進行精確的時序仿真。</p><p> 通過時序仿真能迅速定位電路系統(tǒng)中的錯誤所在,并及時糾正。</p><p> 在對電子鐘的設計中,由于對編程知識掌握量有限,所以利用了Quartus2的原理圖輸入設計方法的優(yōu)勢而對電子鐘電路進行設計,從而得到各模塊的設計流程。</p><p><b> 第
27、三章</b></p><p> 利用Quartus2原理圖輸入設計方法,將電子鐘的各模塊電路:小時,分,秒及校時模塊在原理圖中畫出,并對其引腳進行設置,經過驗證得到準確的電路原理圖。</p><p> 3.1電子鐘的原理圖</p><p> 在此結構圖中分為四個模塊,每個模塊的作用分別為:</p><p> 1.小時模塊。
28、通過復位和使能端的控制,進行小時間的切換,其進制為24進制,當顯示器上的數(shù)字顯示到23:59:59時小時立馬復位為零,再進行重新計時。</p><p> 2.分鐘模塊。其控制原理與小時模塊基本相同,所不同之處為其進制為60進制,進行電子鐘分鐘的控制。</p><p> 3.秒鐘模塊。其功能與作用于分鐘模塊相同。</p><p> 4.校時模塊。當電子鐘可以進行
29、計時之后,我們要求可以對時間進行調節(jié),所以在這個模塊中附加了對分鐘與小時的調節(jié)功能。并且在這個環(huán)節(jié)中,當我們對分或小時進行調節(jié)時,所要調節(jié)的顯示器上的數(shù)字會進行閃爍,當我們對數(shù)字進行切換之后就會達到穩(wěn)定的計時效果。</p><p><b> 3.2 小時模塊</b></p><p> 小時模塊采用24進制,由四進制與六進制構成。</p><p&
30、gt;<b> 其程序如下:</b></p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY hour IS</p>
31、<p> PORT (CLK0,CLK1,RST,EN : IN STD_LOGIC; </p><p> q1,q0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); </p><p><b> END hour;</b></p><p>
32、 ARCHITECTURE behav OF hour IS</p><p> signal CLK : STD_LOGIC;</p><p> signal CQ1 : STD_LOGIC_VECTOR(7 DOWNTO 0);</p><p> signal C0 : STD_LOGIC_VECTOR(3 DOWNTO 0);</p>&
33、lt;p> signal C1 : STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> BEGIN</b></p><p> cq1<= c1 & c0;</p><p> PROCESS(CLK, RST, EN)</p><p><b> BE
34、GIN</b></p><p> case en is</p><p> when '1' =>clk<=clk1;</p><p> when '0' =>clk<=clk0;</p><p> when others =>null;</p>&
35、lt;p><b> end case;</b></p><p> IF RST = '1' THEN c1 <= (OTHERS =>'0') ; c0 <= (OTHERS =>'0') ; </p><p> ELSIF CLK'EVENT AND C
36、LK='1' THEN </p><p> IF c0 < 9 THEN c0 <= c0 + 1; </p><p> ELSE c0 <= (OTHERS =>'0'); </p&
37、gt;<p> IF c0 = 9 THEN c1 <= c1 + 1; </p><p><b> END IF;</b></p><p><b> end if;</b></p><p><b> END IF;</b></p><p>
38、 if (c1=2 and c0=4) then c0 <= (OTHERS =>'0');c1 <= (OTHERS =>'0'); </p><p> END IF; </p><p> q1<=c1;q0<=c0; </p><p
39、> END PROCESS;</p><p> END behav;</p><p> 得到的仿真波形如下:</p><p><b> 3.3 分鐘模塊</b></p><p> 分鐘模塊采用十進制和六進制構成</p><p><b> 原理圖為</b>&l
40、t;/p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY minute1 IS</p><p> PORT (CLK0,CLK1,R
41、ST,EN : IN STD_LOGIC; </p><p> q1,q0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); </p><p> COUT : OUT STD_LOGIC ); </p><p> END minute1;</p><
42、p> ARCHITECTURE behav OF minute1 IS</p><p> signal CLK : STD_LOGIC;</p><p> signal CQ1 : STD_LOGIC_VECTOR(7 DOWNTO 0);</p><p> signal C0 : STD_LOGIC_VECTOR(3 DOWNTO 0);</
43、p><p> signal C1 : STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> BEGIN</b></p><p> cq1<= c1 & c0;</p><p> PROCESS(CLK,RST,EN)</p><p><b&g
44、t; BEGIN</b></p><p> case en is</p><p> when '1' =>clk<=clk1;</p><p> when '0' =>clk<=clk0;</p><p> when others =>null;</p&
45、gt;<p><b> end case;</b></p><p> IF RST = '1' THEN c1 <= (OTHERS =>'0') ; c0 <= (OTHERS =>'0') ; </p><p> ELSIF CLK'EVENT
46、 AND CLK='1' THEN </p><p> IF c0 < 9 THEN c0 <= c0 + 1; </p><p> ELSE c0 <= (OTHERS =>'0'); &
47、lt;/p><p> IF c0 = 9 THEN c1 <= c1 + 1; </p><p><b> END IF;</b></p><p><b> end if;</b></p><p><b> END IF;</b></p><
48、p> if (c1=5 and c0=9)then cout<= '1';ELSE COUT <='0';end if; </p><p> if (c1=6 and c0=0) then c0 <= (OTHERS =>'0');c1 <= (OTHERS =>'0'); &l
49、t;/p><p> END IF; </p><p> q1<=c1;q0<=c0; </p><p> END PROCESS;</p><p> END behav;</p><p> 得到的仿真波形如下:</p><p><b> 3
50、.4 秒鐘模塊</b></p><p> 采用十進制和六進制構成</p><p><b> 原理圖為</b></p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_
51、LOGIC_UNSIGNED.ALL;</p><p> ENTITY second IS</p><p> PORT (CLK,RST,EN : IN STD_LOGIC; </p><p> q1,q0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); </p><p
52、> COUT : OUT STD_LOGIC ); </p><p> END second;</p><p> ARCHITECTURE behav OF second IS</p><p> signal CQ1 : STD_LOGIC_VECTOR(7 DOWNTO 0);</p><p> sig
53、nal C0 : STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> signal C1 : STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> BEGIN</b></p><p> cq1<= c1 & c0;</p><p> PROC
54、ESS(CLK, RST, EN)</p><p><b> BEGIN</b></p><p> IF RST = '1' THEN c1 <= (OTHERS =>'0') ; c0 <= (OTHERS =>'0') ; </p><p>
55、 ELSIF CLK'EVENT AND CLK='1' THEN </p><p> IF EN = '1' THEN </p><p> IF c0 < 9 THEN c0 <= c0 + 1; </p><p>
56、 ELSE c0 <= (OTHERS =>'0'); </p><p> IF c0 = 9 THEN c1 <= c1 + 1; </p><p><b> END IF;</b></p><p><b> end if;</b&
57、gt;</p><p><b> END IF;</b></p><p><b> END IF;</b></p><p> if (c1=5 and c0=9)then cout<= '1';ELSE COUT <='0';end if; </p>&
58、lt;p> if (c1=6 and c0=0) then c0 <= (OTHERS =>'0');c1 <= (OTHERS =>'0'); </p><p> END IF; </p><p> q1<=c1;q0<=c0; </p><
59、;p> END PROCESS;</p><p> END behav;</p><p> 得到的仿真波形如下:</p><p> 3.5 時間設置模塊</p><p> 此模塊實行對時間進行校正</p><p><b> 原理圖為</b></p><p>
60、; library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity sst is</p><p> port (clk :in std_logic;</p><
61、;p> m1,m0,s1,s0:in std_logic_vector(3 downto 0);</p><p> y:out std_logic);</p><p><b> end sst;</b></p><p> architecture one of sst is</p><p><b>
62、; begin</b></p><p> process(clk)</p><p><b> begin</b></p><p> if clk'event and clk='1' then</p><p> if m1="0000" and m0=&qu
63、ot;0000" and s1="0000" and s0="0000" then</p><p> y<='1';else y<='0';</p><p><b> end if;</b></p><p><b> end if;&l
64、t;/b></p><p> end process;</p><p><b> end one;</b></p><p> 得到的仿真波形如下:</p><p> 將各模塊進行連接,然后進行仿真,得到的總程序的仿真波形如下:</p><p><b> -</b&g
65、t;</p><p><b> 心得體會:</b></p><p> 通過此次課程設計,令我感受頗深,在平時的學習中,雖然書本上的知識都掌握了,但是如果不聯(lián)系實際,不把所掌握的知識與實踐相結合,也就是我們所說的死學習,是達不到我們所要的理想水平的。所以為了將我們所學習的東西充分的理解掌握,就必須經常思考,用實驗驗證我們的所學成果。</p><p
66、> 在理論與實際相結合的過程中我們要勤思考,多請教,盡自己最大的努力將設計做好。</p><p> 本次課程設計的VHDL語言程序已在QuartusⅡ工具軟件上進行了編譯、仿真和調試,并通過編程器下載到了EP1C6Q240C8芯片。經過實踐驗證,本設計是正確的,仿真數(shù)據(jù)與實際波形發(fā)生器的試驗箱運行結果完全一致,達到預期目的,設計成功。本文給出的設計思想也適用于其他設計。</p><p
67、> 課程設計中雖然遇到了很多困難,特別是軟件一些功能還比較陌生,但是在老師的指導和幫助下能去親手實踐,經過多次練習掌握并熟練。一些程序的檢測和改正還需要我們耐心仔細去探索。</p><p><b> 參考文獻</b></p><p> 1.潘松等. EDA技術實用教程</p><p> 2.盧毅,賴杰.VHDL與數(shù)字電路設計<
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子鐘課程設計---電子時鐘的設計
- 電子時鐘數(shù)字電子鐘單片機課程設計
- 基于vhdl語言的簡易電子鐘課程設計
- 基于vhdl電子時鐘設計
- 數(shù)字電子鐘課程設計--電子數(shù)字時鐘
- 電子時鐘數(shù)電課程設計--數(shù)字電子鐘邏輯電路設計
- 電子鐘課程設計----數(shù)字電子鐘的設計
- eda電子鐘課程設計----電子鐘的設計
- 數(shù)電課程設計報告vhdl電子鐘
- 電子鐘課程設計--基于單片機的電子鐘設計
- 電子時鐘課程設計--proteus環(huán)境下的電子時鐘設計
- 電子時鐘課程設計
- 電子時鐘 課程設計
- 電子時鐘課程設計
- 基于fpga的數(shù)字電子時鐘設計-vhdl
- 電子時鐘課程設計
- 課程設計--電子時鐘
- 電子鐘課程設計--多功能電子鐘
- 電子鐘課程設計
- 課程設計----電子時鐘設計
評論
0/150
提交評論