2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  信息與電氣工程學(xué)院</b></p><p><b>  《課程設(shè)計(jì)報(bào)告》</b></p><p>  題 目: 循環(huán)彩燈控制器 數(shù)字鐘 </p><p>  專 業(yè): </p><p>  班 級(jí):

2、 </p><p>  姓 名: </p><p>  學(xué) 號(hào): </p><p>  指導(dǎo)教師: </p><p>  2014年 1 月 4 日&

3、lt;/p><p><b>  信息與電氣工程學(xué)院</b></p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  20 —20 學(xué)年第 學(xué)期</p><p>  專業(yè): 學(xué)號(hào): 姓名:

4、 </p><p>  課程設(shè)計(jì)名稱: </p><p>  設(shè)計(jì)題目: </p><p>  完成期限:自 年 月 日至 年 月 日共 周</p><p>

5、  設(shè)計(jì)依據(jù)、要求及主要內(nèi)容(可另加附頁):</p><p>  指導(dǎo)教師(簽字): </p><p>  批準(zhǔn)日期: 年 月 日</p><p><b>  目 錄</b></p><p><b>  摘 要2</b><

6、/p><p><b>  1、設(shè)計(jì)目的4</b></p><p>  2、設(shè)計(jì)內(nèi)容和要求4</p><p><b>  3、設(shè)計(jì)原理4</b></p><p>  4、VHDL程序設(shè)計(jì)6</p><p>  5、仿真與分析13</p><p> 

7、 6、課程設(shè)計(jì)總結(jié)16</p><p><b>  7、參考文獻(xiàn)17</b></p><p><b>  摘 要</b></p><p>  1. 現(xiàn)在各大中城市商店都已普及彩燈裝飾,所彩燈控制技術(shù)的發(fā)展已成定局。 而部分小城市尚未普及,但隨著城市建設(shè)日益加快,象征著城市面貌的彩燈裝飾 行業(yè)也將加速發(fā)展,彩燈控制器的

8、普及也是毫無疑問的,所以未來彩燈控制器的 市場(chǎng)還是十分有潛力的。 彩燈的發(fā)展也在日新月異,特別是隨著我國科學(xué)技術(shù)的發(fā)展,彩燈藝術(shù)更是 花樣翻新,奇招頻出,傳統(tǒng)的制燈工藝和現(xiàn)代科學(xué)技術(shù)緊密結(jié)合,將電子、建筑、機(jī)械、遙控、聲學(xué)、光導(dǎo)纖維等新技術(shù)、新工藝用于彩燈的設(shè)計(jì)制作,把形、色、光、聲、動(dòng)相結(jié)合,思想性、知識(shí)性、趣味性、藝術(shù)性相統(tǒng)一。本實(shí)驗(yàn)利用VHDL語言對(duì)交通控制的邏輯功能進(jìn)行描述,通過Quartus2和Cyclone芯片的強(qiáng)大功能使其

9、功能得到實(shí)現(xiàn)。經(jīng)過驗(yàn)證,基本達(dá)到實(shí)驗(yàn)?zāi)康?,能夠滿足彩燈控制的需求。</p><p>  2.隨著EDA技術(shù)的發(fā)展,EDA在通信、電子等領(lǐng)域占有十分重要的地位。本設(shè)計(jì)介紹了基于VHDL語言的數(shù)字鐘的設(shè)計(jì)。數(shù)字鐘的功能是對(duì)年、月、日、時(shí)、分、秒、星期,以及鬧鐘時(shí)、分的預(yù)置;在正常計(jì)數(shù)時(shí)的時(shí)、分與鬧鐘設(shè)定的時(shí)、分相同時(shí),實(shí)現(xiàn)報(bào)時(shí),同時(shí)以stop和pass鍵對(duì)鬧鐘進(jìn)行停止及延遲響鈴的控制; 在整點(diǎn)的時(shí)候led燈閃爍一下。

10、其中,用set脈沖的不同實(shí)現(xiàn)對(duì)預(yù)置,正常計(jì)時(shí),鬧鐘的控制。Set為1~12分別控制顯示年月日、預(yù)置年月日、時(shí)分秒、星期、顯示時(shí)分秒、預(yù)置鬧鐘時(shí)分、顯示鬧鐘預(yù)置的時(shí)分。預(yù)置時(shí)用up的高、低電平實(shí)現(xiàn)對(duì)各預(yù)置量的加、減控制。將1KHZ的時(shí)鐘進(jìn)行分頻為1HZ,實(shí)現(xiàn)每次脈沖為1秒。經(jīng)仿真和驗(yàn)證顯示,此數(shù)字鐘切實(shí)可行,可以實(shí)現(xiàn)顯示時(shí)間和鬧鐘的功能。</p><p><b>  1、設(shè)計(jì)目的</b><

11、;/p><p>  掌握VHDL程序設(shè)計(jì)方法</p><p>  掌握利用可編程邏輯器件和EDA設(shè)計(jì)工具進(jìn)行電子系統(tǒng)設(shè)計(jì)的方法。</p><p><b>  2、設(shè)計(jì)內(nèi)容和要求</b></p><p>  1)彩燈能夠自動(dòng)循環(huán)點(diǎn)亮 2)彩燈循環(huán)顯示且頻率快慢可調(diào)(可選)。 3)該控制電路具有8路以上輸出</p

12、><p>  在軟件工具平臺(tái)上,進(jìn)行VHDL語言的各模塊編程輸入、編譯實(shí)現(xiàn)和仿真驗(yàn)證。</p><p>  用VHDL語言實(shí)現(xiàn)數(shù)字鐘的設(shè)計(jì),要求設(shè)計(jì)實(shí)現(xiàn)一個(gè)具有帶預(yù)置數(shù)的數(shù)字鐘,具有顯示年月日時(shí)分秒的功能。用6個(gè)數(shù)碼管顯示時(shí)分秒,set按鈕產(chǎn)生第一個(gè)脈沖時(shí),顯示切換年月日,第2個(gè)脈沖到來時(shí)可預(yù)置年份,第3個(gè)脈沖到來時(shí)可預(yù)置月份,依次第4、5、6、7個(gè)脈沖到來時(shí)分別可預(yù)置日期、時(shí)、分、秒,第 8

13、個(gè)脈沖到來后預(yù)置結(jié)束,正常工作,顯示的是時(shí)分秒。Up為高電平時(shí),upclk有脈沖到達(dá)時(shí),預(yù)置位加1。否則減1。</p><p><b>  3、電路工作原理</b></p><p>  設(shè)計(jì)一個(gè)循環(huán)彩燈控制器,該控制器控制紅、綠、黃三個(gè)發(fā)光管循環(huán)發(fā)亮。要求紅發(fā)光管亮2秒,綠發(fā)光管亮3秒,黃發(fā)光管亮1秒。</p><p><b>  3

14、.1.1設(shè)計(jì)分析</b></p><p>  實(shí)現(xiàn)循環(huán)彩燈控制的方案很多,不同的控制方案,其設(shè)計(jì)方法和思路也不一樣。設(shè)計(jì)一個(gè)循環(huán)彩燈控制器,該控制器控制紅、綠、黃三個(gè)發(fā)光管循環(huán)發(fā)亮。要求紅發(fā)光管亮2秒,綠發(fā)光管亮3秒,黃發(fā)光管亮1秒</p><p>  由以上所述可以看出, 本設(shè)計(jì)的關(guān)鍵是要產(chǎn)生如圖2所示的時(shí)序關(guān)系。其中,led_r、led_g、led_y 分別表示紅燈、綠燈、

15、</p><p><b>  黃燈的控制信號(hào)。</b></p><p>  圖1循環(huán)彩燈控制器的時(shí)序圖</p><p>  3.1.2循環(huán)彩燈控制器整體設(shè)計(jì)</p><p>  按照系統(tǒng)功能要求, 循環(huán)彩燈控制器的整體框圖如圖3 所示,它主要由2 輸出分頻器模塊、頻率選擇控制模塊和彩燈控制器模塊三部分組成。其中2 輸出分

16、頻器模塊fen_pin24 將輸入的時(shí)鐘信號(hào)clk 進(jìn)行2 分頻、4 分頻得到2 種頻率信號(hào)div2、div4,同時(shí)還產(chǎn)生頻率選擇信號(hào)div16,div16 應(yīng)是div4 的倍數(shù),以控制每種頻率維持的時(shí)間長短。頻率選擇控制模塊xuan_ze 根據(jù)地址選擇端s 將選擇不同頻率的時(shí)鐘信號(hào)送給彩燈控制器模塊,實(shí)現(xiàn)彩燈閃爍的頻率變化。彩燈控制器模塊cai_deng 是整個(gè)電路設(shè)計(jì)的核心,它負(fù)責(zé)整個(gè)設(shè)計(jì)的輸出效果,即彩燈圖案的樣式變化,rst 為

17、復(fù)位信號(hào),低電平有效。</p><p>  圖2 彩燈控制器整體框圖</p><p>  圖3 彩燈控制模塊的狀態(tài)轉(zhuǎn)移圖</p><p>  3.1.3程序設(shè)計(jì)框圖</p><p>  圖 4 程序設(shè)計(jì)框圖</p><p>  3.2.1 數(shù)字鐘功能介紹</p><p>  數(shù)字鐘具有計(jì)時(shí)、預(yù)

18、置、報(bào)時(shí)的功能。以不同的set脈沖控制各個(gè)功能。</p><p>  在計(jì)時(shí)功能中,數(shù)字鐘實(shí)現(xiàn)對(duì)年月日時(shí)分秒即星期的計(jì)時(shí),并可以通過LED數(shù)碼管分別顯示年月日、或時(shí)分秒、或星期、或鬧鐘的時(shí)分。</p><p>  在預(yù)置功能中,可以通過UP鍵對(duì)各需要預(yù)置的量進(jìn)行控制。UP=1時(shí),進(jìn)行“加”控制,UP=0時(shí),進(jìn)行“減”控制。</p><p>  在報(bào)時(shí)功能中,分為整點(diǎn)

19、報(bào)時(shí)和設(shè)置時(shí)間報(bào)時(shí)。其中整點(diǎn)報(bào)時(shí)以ce作為使能輸入端,在整點(diǎn)時(shí)燈進(jìn)行一秒閃爍;設(shè)置時(shí)間報(bào)時(shí)以enable作為使能輸入端,enable=1時(shí)設(shè)置時(shí)間報(bào)時(shí)功能啟動(dòng),在鬧鐘預(yù)置時(shí)間與時(shí)鐘當(dāng)前時(shí)間相同時(shí)報(bào)時(shí),若此時(shí)按下stop,鬧鐘立即停止并不再響鈴,若按下pass,則鬧鐘立即停止,但三分鐘后再響,如此循環(huán)5次后不再響鈴,若什么都不按,鬧鐘響鈴持續(xù)1分鐘。</p><p>  3.2.2 數(shù)字鐘設(shè)計(jì)原理</p&g

20、t;<p>  本設(shè)計(jì)功能有8個(gè)子模塊:分頻模塊、時(shí)分秒模塊、日模塊、年月模塊、鬧鐘預(yù)置模塊、星期模塊、響鈴模塊。通過元件例化由頂層文件timekeeper綜合。</p><p>  整體設(shè)計(jì)框圖及外觀圖如(圖 3-1)及(圖3-2)</p><p>  圖3-1 數(shù)字鐘設(shè)計(jì)整體框圖</p><p>  圖3-2 數(shù)字鐘外觀圖</p>

21、<p>  4、VHDL程序設(shè)計(jì)</p><p>  4.1.1.循環(huán)彩燈方案設(shè)計(jì)與功能描述</p><p>  彩燈的循環(huán)是通過clk的計(jì)數(shù)實(shí)現(xiàn)的,當(dāng)有一個(gè)高電平來到的時(shí)候,則通過Q=Q+1計(jì)數(shù)來實(shí)現(xiàn)。當(dāng)Q的值從“000”逐次加“1”到“111”的時(shí)候,通過判斷Q的值是否為“111”的時(shí)候,進(jìn)行清“0”,即變?yōu)椤?00”再次重新計(jì)數(shù)。那么通過Q的狀態(tài)值從“000”->“

22、001”->“010” ->“011”->“100” ->“101”->“110” ->“111”->“000”的循環(huán),實(shí)現(xiàn)了彩燈的循環(huán)。</p><p>  彩燈的亮滅是通過判斷Q的值來選擇的,用case_when語句。</p><p>  對(duì)于頻率的調(diào)節(jié),則是通過timer來控制,由人為的設(shè)定timer 的值,通過賦不同的初值來改變頻率。也是通

23、過計(jì)數(shù)來分頻的</p><p>  4.1.2.程序代碼:</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_logic_arith.all;</p><p>  use ieee.std_logi

24、c_unsigned.all;</p><p>  entity light8a is</p><p>  port (clk,en,rst:in std_logic;</p><p>  timer:in std_logic_vector(3 downto 0);</p><p>  a,b,c,d,e,f,g,h:out std_logi

25、c);</p><p>  end light8a;</p><p>  architecture one of light8a is</p><p>  signal w:std_logic_vector(3 downto 0);</p><p>  signal couts:std_logic;</p><p>

26、<b>  begin</b></p><p>  process(clk,timer) ----------分頻進(jìn)程 </p><p>  variable x : std_logic_vector(3 downto 0):=timer;</p><p><b>  be

27、gin</b></p><p>  if clk'event and clk='1' then </p><p>  if x<4 then x:=x+1;</p><p>  else x:=timer;</p><p><b>  end if;</b></p>

28、<p><b>  end if;</b></p><p>  if x="0100" then couts<='1';</p><p>  else couts<='0';</p><p><b>  end if;</b></p>

29、<p>  end process;</p><p>  process(clk,en,rst,couts) ----------計(jì)數(shù)循環(huán)進(jìn)程</p><p>  variable Q : std_logic_vector(3 downto 0);</p><p><b>  begin</b></p><

30、p>  if rst='0'then Q:=(others=>'0');</p><p>  elsif clk'event and clk='1' then</p><p>  if couts='1' then</p><p>  if en='1' then&l

31、t;/p><p>  if Q<8 then</p><p>  Q:=Q+1;w<=Q;</p><p>  if Q="1000"then Q:=(others=>'0'); -</p><p><b>  end if;</b></p><p

32、><b>  end if;</b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p>  end process;</

33、p><p>  process(w) --------選擇燈亮滅,即控制彩燈循環(huán)進(jìn)程</p><p><b>  begin</b></p><p><b>  case w is</b></p><p>  when"0001"=>a<='1';b

34、<='0';c<='0';d<='0';e<='0';f<='0';g<='0';h<='0';</p><p>  when"0010"=>a<='0';b<='1';c<='

35、0';d<='0';e<='0';f<='0';g<='0';h<='0';</p><p>  when"0011"=>a<='0';b<='0';c<='1';d<='0';e&l

36、t;='0';f<='0';g<='0';h<='0';</p><p>  when"0100"=>a<='0';b<='0';c<='0';d<='1';e<='0';f<='0&

37、#39;;g<='0';h<='0';</p><p>  when"0101"=>a<='0';b<='0';c<='0';d<='0';e<='1';f<='0';g<='0';h<

38、='0';</p><p>  when"0110"=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='1';g<='0';h<='0';</p><

39、;p>  when"0111"=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='0';g<='1';h<='0';</p><p>  when"1000"

40、=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='0';g<='0';h<='1';</p><p>  when others=>null;</p><p><b&

41、gt;  end case;</b></p><p>  end process;</p><p>  end architecture one;</p><p>  4.2.1 數(shù)字鐘整體設(shè)計(jì)思路</p><p>  采用自上而下的方法進(jìn)行整體設(shè)計(jì)。整個(gè)設(shè)計(jì)共分為8個(gè)模塊,通過頂</p><p>  層文

42、件timekeeper元件例化將8個(gè)模塊各個(gè)端口對(duì)應(yīng)相連。在設(shè)計(jì)各個(gè)模塊時(shí)所用到的其它運(yùn)算方法等放于work庫中,通過程序包及程序包體的方式對(duì)所使用函數(shù)進(jìn)行定義。</p><p>  主要使用的語句有:元件例化語句,過程語句,信號(hào)賦值語句,if語句,case語句(在狀態(tài)機(jī)中)。</p><p>  圖(4-1)表示了個(gè)模塊的連接及連接是所用到的觸發(fā)器等。</p><p&

43、gt;  圖4-1 整體結(jié)構(gòu)圖</p><p>  4.2 各模塊設(shè)計(jì)方法</p><p>  4.2.1 頂層模塊</p><p>  頂層模塊timekeeper是.對(duì)對(duì)所有模塊的綜合。</p><p>  它包含的功能是:通過元件例化連接各模塊;實(shí)現(xiàn)對(duì)鬧鐘控制位sp2的控制;實(shí)現(xiàn)鬧鐘的整點(diǎn)報(bào)時(shí)閃爍。</p><

44、p>  輸入端:up 全局加減選擇,控制預(yù)置時(shí)的加減</p><p>  setpin 設(shè)定選擇</p><p>  upclk 加減觸發(fā)</p><p>  f1000 時(shí)鐘輸入</p><p>  輸出端:a0~d1 八位數(shù)碼管控制引腳的輸出</p><p>  z 整點(diǎn)報(bào)時(shí)輸出</

45、p><p>  4.2.2 其他模塊</p><p><b>  1、時(shí)分秒模塊</b></p><p>  時(shí)分秒模塊h_m_s是對(duì)時(shí)、分、秒正常計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置時(shí)分秒(set=5 or 6 or 7)的實(shí)現(xiàn)。</p><p>  分和秒由兩個(gè)六十進(jìn)制實(shí)現(xiàn),時(shí)由24進(jìn)制實(shí)現(xiàn)。當(dāng)時(shí)間達(dá)到23時(shí)

46、59分59秒時(shí),時(shí)分秒全部歸零,進(jìn)位位ov由零變?yōu)?,通過管腳連接到date模塊的時(shí)鐘計(jì)數(shù)信號(hào)clk0,開啟date模塊。</p><p><b>  2、日的模塊</b></p><p>  日的模塊date實(shí)現(xiàn)日子進(jìn)行正常計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置(set=4)。</p><p>  由于每月的天數(shù)與月份、年份有關(guān),故需

47、判斷年月。</p><p>  當(dāng)1、3、5、7、8、10、12月時(shí),每月31天,使用31進(jìn)制。</p><p>  當(dāng)4、6、9、11月時(shí),每月30天,使用30進(jìn)制。</p><p>  當(dāng)2月時(shí),分閏年和平年。閏年29天,平年28天。</p><p>  閏年和平年的判斷方法是:由于通過年月模塊傳輸?shù)哪攴轂閮晌籅CD碼。若高位信號(hào)為“xx

48、x0”且低位信號(hào)為“xx00”或高位信號(hào)為“xxx1”且低位信號(hào)為“xx10”,則可判定為閏年,否則為平年。 </p><p>  以上各月,當(dāng)日期至月底時(shí)返回1,進(jìn)位位ov變?yōu)?通過管腳連接年月模塊的時(shí)鐘計(jì)數(shù)信號(hào)clk0,開啟年月模塊。</p><p><b>  3、年月模塊</b></p><p>  年月模塊year_mon實(shí)現(xiàn)

49、年月正常計(jì)時(shí)(set=0 or 1 or 12)和年、月的預(yù)置(set=2 or 3)。</p><p>  月為12進(jìn)制,當(dāng)達(dá)到12時(shí)變回為1,同時(shí)使年份進(jìn)1。由兩位BCD碼表示年份,故可以表示100年之年的所有年,為100進(jìn)制。</p><p>  圖4-2 year_mon和date模塊的電路連接圖</p><p><b>  4、星期模塊<

50、;/b></p><p>  星期模塊week的功能是實(shí)現(xiàn)對(duì)星期的計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置(set=8)。為七進(jìn)制。</p><p>  圖4-3 week模塊的RTL</p><p><b>  5、鬧鐘模塊</b></p><p>  鬧鐘模塊alarm是對(duì)鬧鐘時(shí)和分的預(yù)置(set=1

51、0 or 11)。時(shí)為24進(jìn)制,分為60進(jìn)制。</p><p>  圖4-3 alarm模塊的RTL</p><p>  另外,在頂層模塊timekeeper,當(dāng)鬧鐘預(yù)置時(shí)間與計(jì)時(shí)時(shí)間相同時(shí)(僅時(shí)、分),鬧鐘響鈴,當(dāng)不對(duì)其進(jìn)行任何操作時(shí),響鈴維持1分鐘。響鈴方式見4.2.7響鈴模塊。</p><p><b>  6、響鈴模塊</b></

52、p><p>  響鈴模塊alarm是對(duì)鬧鐘響鈴的控制。其中主要包含:</p><p>  Enable:當(dāng)enable=1時(shí),鬧鐘可以工作。</p><p>  Sp2 :當(dāng)頂層模塊鬧鐘時(shí)間與計(jì)時(shí)相等時(shí),sp2=1,響鈴開啟。</p><p>  Stop :鬧鐘停止并不再響鈴。</p><p>  Pass :鬧

53、鐘停止但三分鐘后再響,循環(huán)5次。</p><p>  Sp :響鈴輸出。Sp=1時(shí)響鈴,sp=0時(shí)不響。</p><p>  本模塊主要使用的方法是狀態(tài)機(jī)。相應(yīng)狀態(tài)轉(zhuǎn)換圖如下:</p><p>  圖 4-4 響鈴模塊狀態(tài)轉(zhuǎn)換圖</p><p>  在狀態(tài)t_pass時(shí),使用計(jì)數(shù)的方法實(shí)現(xiàn)對(duì)3分鐘,5次循環(huán)的計(jì)數(shù)。</p>

54、<p>  圖 4-5 計(jì)數(shù)的流程圖</p><p>  圖4-6 speak模塊的RTL</p><p><b>  7、分頻模塊</b></p><p>  分頻模塊fenpin使輸入為1KHZ時(shí)鐘信號(hào)時(shí),接入電路經(jīng)分頻后仍能按1HZ即1s計(jì)數(shù)。</p><p>  圖4-7 fenpin模塊的R

55、TL</p><p><b>  8、顯示模塊</b></p><p>  顯示模塊led即七段數(shù)碼管的顯示電路。</p><p>  圖4-8 led模塊的RTL</p><p>  4.2.3 程序包模塊</p><p>  程序模塊是對(duì)各模塊所用到的函數(shù)的定義,通過程序包package定

56、義時(shí)、日、月、年等的增減函數(shù)(procedure),并用程序包體package body具體說明函數(shù)的內(nèi)容。通過use.work.pac.all語句調(diào)用程序包,使程序書寫更加方便簡(jiǎn)潔。</p><p><b>  5、仿真與分析</b></p><p>  5.1循環(huán)彩燈仿真分析</p><p>  當(dāng)設(shè)定timer的值為1的時(shí)候,仿真圖如下:

57、</p><p>  當(dāng)設(shè)定timer的值為3的時(shí)候,仿真圖如下:</p><p>  通過仿真可知,timer可以控制頻率快慢,且彩燈a,b,c,d,e,f,g,h能循環(huán)點(diǎn)亮</p><p>  5.2 數(shù)字鐘仿真結(jié)果</p><p>  1、h_m_s模塊 </p><p>  表示當(dāng)up=1時(shí),時(shí)鐘時(shí)(se

58、t=5)、分(set=6)、秒(set=7)從0開始加。</p><p><b>  圖 5-1</b></p><p><b>  2、date模塊</b></p><p>  以下為對(duì)應(yīng)月份截圖。另外,當(dāng)日期由最末變?yōu)?時(shí),ov進(jìn)1以控制year_mon模塊。</p><p> ?。?)大月:每

59、月31天。</p><p><b>  圖5-2-1</b></p><p><b>  小月:每月30天。</b></p><p><b>  圖5-2-2</b></p><p>  (3)平年2月:每月28天。</p><p><b> 

60、 圖5-2-3</b></p><p>  閏年2月:每月29天。</p><p><b>  圖5-2-4</b></p><p>  3、year_mon模塊</p><p><b>  圖5-3</b></p><p><b>  4、week模塊

61、</b></p><p>  前半部分up=1,為加,1~7,后半部分up=0,為減,6~1</p><p><b>  圖5-4</b></p><p><b>  5、alarm模塊</b></p><p>  下圖反映對(duì)鬧鐘時(shí)(set=10)、分(set=11)的預(yù)置,up=1為加

62、。</p><p><b>  圖 5-5</b></p><p><b>  6、speak模塊</b></p><p><b>  (1)按下pass</b></p><p>  由下圖可見,當(dāng)時(shí)間相同sp為高電平;按下pass后sp變?yōu)榈碗娖?,三分鐘后sp又為高電平。&l

63、t;/p><p><b>  圖5-6-1</b></p><p><b> ?。?)按下stop</b></p><p>  由下圖可見,當(dāng)時(shí)間相同時(shí)sp為高電平,按下stop后sp變?yōu)榈碗娖健?lt;/p><p><b>  圖 5-6-2</b></p><p

64、>  各模塊仿真均可實(shí)現(xiàn),且波形顯示可以實(shí)現(xiàn)預(yù)想的功能。</p><p><b>  6、課程設(shè)計(jì)總結(jié)</b></p><p>  通過這次的課程設(shè)計(jì),我又一次系統(tǒng)的復(fù)習(xí)了VHDL語言,通過實(shí)踐對(duì)VHDL語言和EDA技術(shù)有了更具現(xiàn)實(shí)性應(yīng)用性的了解,并熟練了相關(guān)軟件的使用方法。</p><p>  此次課程設(shè)計(jì)的內(nèi)容是數(shù)字鐘,我學(xué)會(huì)了如何利

65、用元件例化將各個(gè)模塊結(jié)合起來,而不是一味的想起一個(gè)功能設(shè)計(jì)一個(gè)功能,而是有一個(gè)總體的自上而下的設(shè)計(jì),建立基本的設(shè)計(jì)框圖(如圖 3-1),再進(jìn)行具體的設(shè)計(jì)。</p><p>  在程序調(diào)試的過程中,出現(xiàn)了很多的問題。我發(fā)現(xiàn)往往是一行出現(xiàn)了錯(cuò)誤導(dǎo)致了接下來一系列錯(cuò)誤的出現(xiàn)。</p><p>  還有在仿真中出現(xiàn)錯(cuò)誤的紅線,并出現(xiàn)了‘U’字符,全都是未設(shè)置初值所致。而在設(shè)置初值時(shí)仍然出現(xiàn)了問題。

66、最開始我想定義一個(gè)clr信號(hào),當(dāng)clr為高電平時(shí)各功能清零,但是在實(shí)際仿真時(shí),由于常常要看在月末或類似23時(shí)59分59秒這樣的時(shí)刻是否有進(jìn)位信號(hào)進(jìn)為高電平,從零開始顯然讓仿真變的十分麻煩,如果可以直接賦初值到接近進(jìn)位的時(shí)刻就會(huì)讓仿真變得簡(jiǎn)便。即使用信號(hào)賦初值的方法對(duì)信號(hào)進(jìn)行賦初值,既解決錯(cuò)誤又利于仿真。</p><p>  在最后對(duì)頂層仿真時(shí)出現(xiàn)了很多的問題,最后發(fā)現(xiàn)都是未對(duì)應(yīng)的問題。</p>&l

67、t;p>  當(dāng)然,我的設(shè)計(jì)還有很多不足的地方。比如有一處的競(jìng)爭(zhēng)冒險(xiǎn)產(chǎn)生的毛刺沒有解決。最開始是將speak模塊控制信號(hào)sp2的相關(guān)程序?qū)懺诹薬larm模塊,仿真時(shí)發(fā)現(xiàn)在一處出現(xiàn)了毛刺,在對(duì)鬧鐘進(jìn)行預(yù)置時(shí)分時(shí)的第一個(gè)時(shí)間都未足一個(gè)時(shí)鐘周期(如圖 5-5)。后來我想是否因?yàn)閍larm模塊有兩個(gè)process進(jìn)程,就將sp2的相關(guān)程序挪到了頂層模塊,但是最后還是沒有實(shí)現(xiàn)。咨詢了一下同學(xué)們,他們都說這沒有問題,不需要解決,所以就沒有解決這

68、個(gè)問題。</p><p>  此次課程設(shè)計(jì)我學(xué)到了很多,但是我覺得應(yīng)該放在剛剛考完EDA之后,那時(shí)候?qū)χ皇怯浀帽容^清楚,不像在這次設(shè)計(jì)時(shí)很多知識(shí)都想不起來了。其他的對(duì)我?guī)椭己艽蟆?lt;/p><p><b>  7、參考文獻(xiàn)</b></p><p>  1 李景華,杜玉遠(yuǎn)等著.可編程邏輯器件與EDA技術(shù).沈陽:東北大學(xué)出版社,20002 齊懷印

溫馨提示

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

評(píng)論

0/150

提交評(píng)論