eda課程設(shè)計(jì)---自動(dòng)電子琴_第1頁(yè)
已閱讀1頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  EDA課程設(shè)計(jì)</b></p><p><b>  自動(dòng)電子琴</b></p><p>  專(zhuān) 業(yè):電子信息工程</p><p><b>  班 級(jí): </b></p><p><b>  學(xué) 號(hào): </b></p

2、><p><b>  姓 名: </b></p><p><b>  組 員:</b></p><p><b>  指導(dǎo)老師: </b></p><p>  完成時(shí)間:2010-11-26</p><p><b>  目 錄</b>

3、;</p><p>  一、課程設(shè)計(jì)目的…………………………………………… 2</p><p>  二、課程設(shè)計(jì)內(nèi)容……………………………………………2 </p><p>  三、課程設(shè)計(jì)原理……………………………………………2</p><p>  四、EDA、VHDL簡(jiǎn)介………………………………………… 3 </p><

4、p>  五、簡(jiǎn)易電子琴的設(shè)計(jì)過(guò)程 ……………………………… 3</p><p>  六、結(jié)束語(yǔ)……………………………………………………5</p><p>  七、參考文獻(xiàn)…………………………………………………6</p><p>  八、附錄………………………………………………………6</p><p>  九、評(píng)分表……………………………

5、………………………9</p><p><b>  一、 課程設(shè)計(jì)目的</b></p><p>  本課程設(shè)計(jì)主要是基于VHDL文本輸入法設(shè)計(jì)樂(lè)曲演奏電路,該系統(tǒng)基于計(jì)算機(jī)中時(shí)鐘分頻器的原理,采用自頂向下的設(shè)計(jì)方法來(lái)實(shí)現(xiàn),通過(guò)自動(dòng)演奏已存入的歌曲。系統(tǒng)由樂(lè)曲自動(dòng)演奏模塊組成。系統(tǒng)實(shí)現(xiàn)是用硬件描述語(yǔ)言VHDL按模塊化方式進(jìn)行設(shè)計(jì),然后進(jìn)行編程、時(shí)序仿真、電路功能驗(yàn)證,奏出

6、美妙的樂(lè)曲。 </p><p><b>  二、 課程設(shè)計(jì)內(nèi)容</b></p><p>  (1)設(shè)計(jì)一個(gè)簡(jiǎn)易的八音符電子琴,它可自動(dòng)演奏已存入的歌曲。</p><p> ?。?)能夠自動(dòng)演奏多首樂(lè)曲,且樂(lè)曲可重復(fù)演奏。</p><p><b>  三、課程設(shè)計(jì)原理</b></p>&

7、lt;p>  本課程設(shè)計(jì)目的在于靈活運(yùn)用EDA技術(shù)編程實(shí)現(xiàn)一個(gè)簡(jiǎn)易電子琴的樂(lè)曲演奏,它要求在實(shí)驗(yàn)箱上構(gòu)造一個(gè)電子琴電路,不同的音階對(duì)應(yīng)不同頻率的正弦波。系統(tǒng)的整體組裝設(shè)計(jì)原理圖如圖所示。</p><p>  系統(tǒng)的整體組裝設(shè)計(jì)原理圖</p><p>  四、 EDA、VHDL簡(jiǎn)介</p><p>  EDA技術(shù)是以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技

8、術(shù)、信息處理及智能化技術(shù)的最新成果,進(jìn)行電子產(chǎn)品的自動(dòng)設(shè)計(jì)。EDA可提供文本輸入以及圖形編輯的方法將設(shè)計(jì)者的意圖用程序或者圖形方式表達(dá)出來(lái),而我們經(jīng)常用到的VHDL語(yǔ)言便是用于編寫(xiě)源程序所需的最常見(jiàn)的硬件描述語(yǔ)言(HDL)之一。</p><p><b>  1、EDA技術(shù)</b></p><p>  EDA是電子設(shè)計(jì)自動(dòng)化(Electronic Design Auto

9、mation)縮寫(xiě),是90年代初從CAD、CAM、CAT和CAE的概念發(fā)展而來(lái)的。EDA技術(shù)是電子設(shè)計(jì)的發(fā)展趨勢(shì),利用EDA工具可以代替設(shè)計(jì)者完成電子系統(tǒng)設(shè)計(jì)中的大部分工作。EDA工具從數(shù)字系統(tǒng)設(shè)計(jì)的單一領(lǐng)域,發(fā)展到今天,應(yīng)用范圍已涉及模擬、微波等多個(gè)領(lǐng)域,可以實(shí)現(xiàn)各個(gè)領(lǐng)域電子系統(tǒng)設(shè)計(jì)的測(cè)試、設(shè)計(jì)方針和布局布線(xiàn)等。</p><p>  現(xiàn)在對(duì)EDA的概念或范疇用得很寬,包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)

10、、生物、醫(yī)學(xué)、軍事等各個(gè)領(lǐng)域,都有EDA的應(yīng)用。目前EDA主要輔助進(jìn)行三個(gè)方面的設(shè)計(jì)工作:IC設(shè)計(jì)、電子電路設(shè)計(jì)和PCB設(shè)計(jì)。</p><p><b>  2、VHDL語(yǔ)言</b></p><p>  常用硬件描述語(yǔ)言有VHDL、Verilog和ABEL語(yǔ)言,而VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語(yǔ)句外,VHDL的結(jié)構(gòu)特點(diǎn)是

11、將設(shè)計(jì)實(shí)體的內(nèi)部功能和算法完成部分。</p><p>  相對(duì)于其他硬件語(yǔ)言,VHDL有許多優(yōu)點(diǎn)。比如VHDL的行為描述能力更強(qiáng),而且具有豐富的仿真語(yǔ)句和庫(kù)函數(shù),隨時(shí)可對(duì)系統(tǒng)進(jìn)行仿真模擬,使設(shè)計(jì)者對(duì)整個(gè)工程的結(jié)構(gòu)和功能可行性做出判斷;另外,由于具有類(lèi)屬描述語(yǔ)句和子程序調(diào)用等功能,對(duì)于完成的設(shè)計(jì),在不改變?cè)闯绦虻臈l件下,只需改變類(lèi)屬參量和函數(shù),就能輕易地改變?cè)O(shè)計(jì)的規(guī)模和結(jié)構(gòu)。</p><p>

12、;  五、簡(jiǎn)易電子琴的設(shè)計(jì)過(guò)程</p><p>  根據(jù)系統(tǒng)設(shè)計(jì)要求,系統(tǒng)該系統(tǒng)基于計(jì)算機(jī)中時(shí)鐘分頻器的原理,設(shè)計(jì)采用自頂向下的設(shè)計(jì)方法,自動(dòng)演奏已存入的歌曲。它由樂(lè)曲自動(dòng)演奏模塊構(gòu)成。</p><p>  1、樂(lè)曲自動(dòng)演奏模塊</p><p>  樂(lè)曲自動(dòng)演奏模塊的作用是產(chǎn)生8位發(fā)生控制輸入信號(hào)。當(dāng)進(jìn)行自動(dòng)演奏時(shí),由存儲(chǔ)在此模塊的8位二進(jìn)制數(shù)作為發(fā)聲控制輸入,從而

13、自動(dòng)演奏樂(lè)曲。</p><p><b>  部分源程序如下:</b></p><p>  8'd0,8'd1: count_end=L_5;</p><p>  8'd2,8'd3,8'd4,8'd5,8'd6,8'd7,8'

14、d8: count_end=M_1;</p><p>  8'd9,8'd10: count_end=M_3;</p><p>  8'd11,8'd12,8'd13,8'd14: count_end=M_2;</p><p>  8

15、9;d15: count_end=M_1;</p><p>  8'd16,8'd17: count_end=M_2;</p><p>  8'd18,8'd19: count_end=M_3;</p>

16、<p><b>  …….</b></p><p><b>  …….</b></p><p><b>  …….</b></p><p>  8'd138,8'd139: count_end=M_5;</p><p

17、>  8'd140,8'd141,8'd142,8'd143: count_end=M_1;</p><p>  8'd144,8'd145,8'd146,8'd147: count_end=M_1;</p><p>  default:count_end=16'hffff;<

18、;/p><p><b>  2、時(shí)序仿真</b></p><p>  編譯完成后,可以對(duì)所進(jìn)行的設(shè)計(jì)進(jìn)行仿真,下面簡(jiǎn)單介紹一下仿真的步驟。</p><p> ?。?) 打開(kāi)波形編輯器,在file菜單中選擇 new命令,列出所有的信號(hào),選擇所需要的信號(hào),然后畫(huà)出輸入信號(hào)的波形且設(shè)置仿真時(shí)序時(shí)間區(qū)域,最后將該文件以.vwf的擴(kuò)展名存盤(pán)。</p&g

19、t;<p> ?。?) 在Processing菜單中打開(kāi)仿真器窗口,單擊Start Simulation按鈕,直到出現(xiàn)Simulation was successful 時(shí),就可以看到仿真的結(jié)果。</p><p>  樂(lè)曲自動(dòng)演奏模塊的仿真圖 </p><p><b>  3、電路功能驗(yàn)證</b></p><p>  如果說(shuō)前面的

20、過(guò)程都是理論上進(jìn)行軟件設(shè)計(jì)制作,那么電路驗(yàn)證則是硬件產(chǎn)生實(shí)際結(jié)果的必要步驟,它是軟件編程導(dǎo)入硬件系統(tǒng)得到最終設(shè)計(jì)目標(biāo)的一個(gè)過(guò)程。此課程設(shè)計(jì)中主要用到的硬件設(shè)施有EP1K6Q240C8芯片、揚(yáng)聲器、三極管等,硬件和軟件系統(tǒng)相連接的樞紐就是芯片引腳和VHDL主程序中所有輸入輸出之間對(duì)應(yīng)的關(guān)系,它們滿(mǎn)足:CLK→28引腳、 beep→175引腳。</p><p>  在選擇好芯片以及設(shè)置引腳值后,下載源程序到此芯片上,

21、確認(rèn)編程器硬件是否已安裝好。按如下步驟打開(kāi)編程器窗口:在processing菜單中選擇 Start Compilation 項(xiàng), 對(duì)源程序進(jìn)行編譯。再導(dǎo)入程序,然后運(yùn)行。揚(yáng)聲器就會(huì)自動(dòng)播放音樂(lè)。</p><p><b>  4、問(wèn)題分析</b></p><p>  在整個(gè)課程設(shè)計(jì)中,不可避免遇到很多難于解決的問(wèn)題,一來(lái)是對(duì)EDA技術(shù)的不太了解,初涉VHDL語(yǔ)言以致很多

22、語(yǔ)法和語(yǔ)言基本結(jié)構(gòu)、算法生疏,運(yùn)用不靈活,在編寫(xiě)源程序上遇到很大難題,而且在編譯運(yùn)行程序時(shí)對(duì)出錯(cuò)的語(yǔ)句理解不到位,難于下手修改錯(cuò)誤語(yǔ)句,這使得在設(shè)計(jì)程序時(shí)遇到很大的阻礙 。</p><p>  在對(duì)于設(shè)計(jì)時(shí)遇到的不同問(wèn)題時(shí),首先應(yīng)該理解問(wèn)題關(guān)鍵所在,因?yàn)橛谜Z(yǔ)言編寫(xiě)程序需要仔細(xì)認(rèn)真的態(tài)度,一點(diǎn)點(diǎn)錯(cuò)誤漏洞將導(dǎo)致整個(gè)源程序無(wú)法編譯運(yùn)行,阻礙下一步工作完成進(jìn)度。</p><p><b>

23、  六、結(jié)束語(yǔ)</b></p><p>  通過(guò)這次VHDL課程設(shè)計(jì),不僅增強(qiáng)了我們的實(shí)踐動(dòng)手能力,也讓我們對(duì)課堂上所學(xué)到的理論知識(shí)的理解加深了許多,這給我們提供了一個(gè)在學(xué)習(xí)生活中很難得的理論聯(lián)系實(shí)際的機(jī)會(huì)。能夠借此機(jī)會(huì)了解到部分EDA技術(shù)的知識(shí)和學(xué)習(xí)運(yùn)用其中一種硬件描述語(yǔ)言VHDL編程實(shí)現(xiàn)各種常用器件的功能,這是在哪堂講課上都得不到的一筆財(cái)富。</p><p>  另一方面我

24、們也發(fā)現(xiàn)了在平時(shí)學(xué)習(xí)過(guò)程中難于發(fā)現(xiàn)的許多缺點(diǎn)跟不足。比如實(shí)踐機(jī)會(huì)過(guò)少,所學(xué)的理論知識(shí)不能靈活運(yùn)用,在遇到實(shí)際的問(wèn)題時(shí)無(wú)法正確處理;再者在課堂上獲得的專(zhuān)業(yè)知識(shí)過(guò)于淺顯,很多的有關(guān)基本操作原理、操作方法都理解不了;課外知識(shí)了解的也過(guò)少,導(dǎo)致在課程設(shè)計(jì)初期,面對(duì)完全陌生的設(shè)計(jì)課題無(wú)從下手,不知所措。這就提醒我們?cè)谄綍r(shí)的學(xué)習(xí)生活中不能一味埋頭于面前的課本知識(shí),畢竟當(dāng)今社會(huì)競(jìng)爭(zhēng)越發(fā)激烈,而學(xué)校能教授的東西有限,要想在人才市場(chǎng)中脫穎而出就只能靠我們

25、自己。當(dāng)然,在學(xué)習(xí)之余我們更應(yīng)該積極參加各種有關(guān)專(zhuān)業(yè)知識(shí)的實(shí)踐活動(dòng)和比賽,鞏固所學(xué)理論,多注意培養(yǎng)初步的實(shí)際工作能力和專(zhuān)業(yè)技術(shù)能力,這樣在以后的工作崗位上不會(huì)顯得那么倉(cāng)促與生疏。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 辛春艷. VHDL硬件描述語(yǔ)言. 北京:國(guó)防工業(yè)出版社,2002</p><p>  [2]

26、 甘歷. VHDL應(yīng)用與開(kāi)發(fā)實(shí)踐. 北京:科學(xué)出版社,2003</p><p>  [3]VHDL Language Reference Guide ,Alde Inc . Henderson NV USA ,1999</p><p>  [4] 齊洪喜,陸穎. VHDL電路設(shè)計(jì)實(shí)用教程. 北京:清華大學(xué)出版社,2004</p><p>  [5]潘松,黃繼業(yè).

27、 EDA技術(shù)實(shí)用教程. 北京:科學(xué)出版社,2002</p><p>  附錄:樂(lè)曲自動(dòng)演奏源程序清單</p><p>  --程序名稱(chēng):song.VHD</p><p>  --程序功能:采用VHDL語(yǔ)言編程產(chǎn)生8位發(fā)聲控制輸入信號(hào)。</p><p>  module song(clk,beep);</p><p> 

28、 input clk;</p><p>  output beep;</p><p>  reg beep_r;</p><p>  reg[7:0]state;</p><p>  reg[15:0]count,count_end;</p><p>  reg[23:0]count1;</p><

29、;p>  parameter L_5=16'd61224,</p><p>  L_6=16'd54545,</p><p>  M_1=16'd45863,</p><p>  M_2=16'd40864,</p><p>  M_3=16'd36402,</p><p>

30、;  M_5=16'd30612,</p><p>  M_6=16'd27273,</p><p>  H_1=16'd22956;</p><p>  parameter TIME=12000000;</p><p>  assign beep=beep_r;</p><p>  alway

31、s@(posedge clk)</p><p><b>  begin</b></p><p>  count<=count+1'b1;</p><p>  if(count==count_end)</p><p><b>  begin</b></p><p>

32、;  count<=16'h0;</p><p>  beep_r<=!beep_r;</p><p><b>  end</b></p><p><b>  end</b></p><p>  always@(posedge clk)</p><p>&

33、lt;b>  begin</b></p><p>  if(count1<TIME)</p><p>  count1=count1+1'b1;</p><p><b>  else</b></p><p><b>  begin</b></p><

34、;p>  count1=24'd0;</p><p>  if(state==8'd147)</p><p>  state=8'd0;</p><p><b>  else</b></p><p>  state=state+1'b1;</p><p>  

35、case(state)</p><p>  8'd0,8'd1: count_end=L_5;</p><p>  8'd2,8'd3,8'd4,8'd5,8'd6,8'd7,8'd8: count_end=M_1;</p><p>  

36、8'd9,8'd10: count_end=M_3;</p><p>  8'd11,8'd12,8'd13,8'd14: count_end=M_2;</p><p>  8'd15: count_end=M_

37、1;</p><p>  8'd16,8'd17: count_end=M_2;</p><p>  8'd18,8'd19: count_end=M_3;</p><p>  8'd20,8'd21,8'd22,8'

38、;d23,8'd24: count_end=M_1;</p><p>  8'd25,8'd26: count_end=M_3;</p><p>  8'd27,8'd28: count_end=M_5;</p><p>  

39、8'd29,8'd30,8'd31,8'd32,8'd33: count_end=M_6;</p><p>  8'd34,8'd35,8'd36,8'd37,8'd38: count_end=M_6;</p><p>  8'd39,8'd40,8'd41,

40、8'd42: count_end=M_5;</p><p>  8'd43,8'd44,8'd45: count_end=M_3;</p><p>  8'd46,8'd47: count_end=M_1; </p><

41、p>  8'd48,8'd49,8'd50,8'd51: count_end=M_2;</p><p>  8'd52: count_end=M_1;</p><p>  8'd53,8'd54: count

42、_end=M_2;</p><p>  8'd55,8'd56: count_end=M_3;</p><p>  8'd57,8'd58,8'd59,8'd60: count_end=M_1;</p><p>  8'd61,8'd6

43、2,8'd63: count_end=L_6;</p><p>  8'd64,8'd65: count_end=M_5;</p><p>  8'd66,8'd67,8'd68,8'd69: count_end=M_1;</p

44、><p>  8'd70,8'd71,8'd72,8'd73: count_end=M_1;</p><p>  8'd74,8'd75: count_end=M_6;</p><p>  8'd76,8'd77,8'd78,8&#

45、39;d79: count_end=M_5;</p><p>  8'd80,8'd81,8'd82: count_end=M_3;</p><p>  8'd83,8'd84: count_end=M_1;</p><p>

46、  8'd85,8'd86,8'd87,8'd88: count_end=M_2;</p><p>  8'd89: count_end=M_1;</p><p>  8'd90,8'd91: count_end=

47、M_2;</p><p>  8'd92,8'd93: count_end=M_6;</p><p>  8'd94,8'd95,8'd96,8'd97: count_end=M_5;</p><p>  8'd98,8'd99,8&#

48、39;d100: count_end=M_3;</p><p>  8'd101,8'd102: count_end=M_5;</p><p>  8'd103,8'd104,8'd105,8'd106: count_end=M_6;</p>

49、<p>  8'd107,8'd108,8'd109,8'd110: count_end=M_6;</p><p>  8'd111,8'd112: count_end=H_1;</p><p>  8'd113,8'd114,8'd115,8'

50、;d116: count_end=M_5;</p><p>  8'd117,8'd118,8'd119: count_end=M_3;</p><p>  8'd120,8'd121: count_end=M_1;</p><p>  8&#

51、39;d122,8'd123,8'd124,8'd125: count_end=M_2;</p><p>  8'd126: count_end=M_1;</p><p>  8'd127,8'd128: count_end=M_2;&

52、lt;/p><p>  8'd129,8'd130: count_end=M_3;</p><p>  8'd131,8'd132,8'd133,8'd134: count_end=M_1;</p><p>  8'd135,8'd136,8'

53、d137: count_end=L_6;</p><p>  8'd138,8'd139: count_end=M_5;</p><p>  8'd140,8'd141,8'd142,8'd143: count_end=M_1;</p><

54、p>  8'd144,8'd145,8'd146,8'd147: count_end=M_1;</p><p>  default:count_end=16'hffff;</p><p><b>  endcase</b></p><p><b>  end</b&g

溫馨提示

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

評(píng)論

0/150

提交評(píng)論