簡易電子琴實訓報告_第1頁
簡易電子琴實訓報告_第2頁
簡易電子琴實訓報告_第3頁
簡易電子琴實訓報告_第4頁
簡易電子琴實訓報告_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、葬PGAt字系統(tǒng)設(shè)計項目項目名稱: 基于VHDLI勺簡易電子琴姓名:院系:專業(yè):學號:指導教師:完成時間:2012 年6月20日基于FPGA勺數(shù)字系統(tǒng)設(shè)計項目成績評價表設(shè)計題目基于VHDL的簡易電子琴設(shè)計要求1)設(shè)一個簡易電子琴;2)利用實驗箱的脈沖源產(chǎn)生1, 2, 3,00 0共7個或14個首階信號;3)用指示燈顯示節(jié)拍;4) *能廣生顫首效果。設(shè)計過程米用現(xiàn)場可編程邏輯器件(FPGA制作,利用EDAJC件中的VHDL 硬件描述語言編程進行控制,然后燒制實現(xiàn)。采用的是現(xiàn)場可編程邏輯器件來實現(xiàn),它的優(yōu)點是所有電路集 成在一塊芯片上,此方案所需的外圍電路簡單,這樣它的體積就 減少了,同時還提高r

2、系統(tǒng)的穩(wěn)定度。由設(shè)叱把編好VHDL程序燒制到現(xiàn)場可編程邏輯器件 FPG仲, 然后通過控制輸入電路把樂譜輸入到FPGA產(chǎn)生/、同的頻率驅(qū)動揚聲器,發(fā)出/、同的樂譜。同時也把發(fā)出的樂譜符號通過顯示 器輸出。項目設(shè)計 成績評價評價項目指標滿分評分工作量、工 作態(tài)度和 出勤率按期圓滿的完成了規(guī)定的任務(wù),難易程 度和工作量符合教學要求,工作努力, 遵守紀律,出勤率高,工作作風嚴謹, 善于與他人合作。30課程設(shè)計項目設(shè)計系統(tǒng)架構(gòu)合理,設(shè)計過程簡練 正確,分析問題思路清晰,結(jié)構(gòu)嚴謹, 文理通順,撰寫規(guī)范,圖表完備正確。40創(chuàng)新工作中有創(chuàng)新意識,對前人工作什-些 改進或有一定應(yīng)用價值。15答辯能正確回答指導教

3、師所提出的問題。15綜合成績等級指導教師:月日1項目名稱、內(nèi)容與要求設(shè)計內(nèi)容4頁具體要求 4頁2 系統(tǒng)整體架構(gòu)(Architecture Description ) 4 頁設(shè)計思路4頁系統(tǒng)原理(包含:框圖等闡述)與設(shè)計說明等內(nèi)容-4頁創(chuàng)新點與原創(chuàng)性內(nèi)容5頁3系統(tǒng)設(shè)計(含HDW原理圖輸入設(shè)計) 5頁注:此部分包含主要邏輯單元、模塊、源代碼等內(nèi)容HDL代碼 5頁系統(tǒng)整體電路圖(或 RTL級電路圖) 7頁4 系統(tǒng)仿真(Simulation Waveform ) 7頁5 FPGA現(xiàn)(FPGA Implementation ) 9頁6 總結(jié)(Closing ) 10頁參考書目(Reference ) :

4、 11頁附錄 (Appendix) : 12頁1、 項目名稱、內(nèi)容與要求1.1 設(shè)計內(nèi)容:設(shè)計一個簡易的八音符電子琴,它可通過按鍵輸入來控制音響。具體要求:1、設(shè)計一個簡易電子琴;2、利用實驗箱的脈沖源產(chǎn)生1, 2, 3,ooo共7個或14個音階信號;3、用指示燈顯示節(jié)拍;4、*能產(chǎn)生顫音效果。2、系統(tǒng)整體架構(gòu)設(shè)計思路本課程設(shè)計目的在于靈活運用 ED儆術(shù)編程實現(xiàn)一個簡易電子琴,它要求 在實驗箱上構(gòu)造一個電子琴電路,不同的音階對應(yīng)不同頻率的正弦波。 按下每個 代表不同音階的按鍵時,能夠發(fā)出對應(yīng)頻率的聲音系統(tǒng)原理采用現(xiàn)場可編程邏輯器件(FPGA制作,利用EDAa件中的VHDLM件描述 語言編程進行

5、控制,然后燒制實現(xiàn)。采用 FPG林設(shè)計的原理圖如圖所示。它由 控制輸入電路、FPGA顯示電路和揚聲器電路組成??刂戚斎腚娐?f FPGA 顯示電路揚聲電路圖采用FPG破計的電子琴原理方框圖控制輸入電路主要是為用戶設(shè)計的,起到一個輸入控制的作用。FPGA現(xiàn)場 可編程邏輯器件,也是本設(shè)計方案的核心內(nèi)容,它是實現(xiàn)電子琴運作的主要控制 模塊。由設(shè)計者把編好VHDL程序燒制到現(xiàn)場可編程邏輯器件 FPG9,然后通過控制輸入電路把樂譜輸入到FPGA產(chǎn)生不同的頻率驅(qū)動揚聲器,發(fā)出不同的樂譜。同時也把發(fā)出的樂譜符號通過顯示器輸出。創(chuàng)新點與原創(chuàng)性內(nèi)容對于電子琴的設(shè)計, 很多方案均可以實現(xiàn), 但是采用數(shù)字邏輯電路來

6、制作的話電路硬件所需的器材多 , 體積龐大 , 比較復(fù)雜 , 而且精度和穩(wěn)定度都不是很高。 如果采用的是現(xiàn)場可編程邏輯器件來實現(xiàn), 它的優(yōu)點是所有電路集成在一塊芯片上,此方案所需的外圍電路簡單, 這樣它的體積就減少了,同時還提高了系統(tǒng)的穩(wěn)定度。還可以用 Modelsim XE 軟件進行仿真和調(diào)試等。設(shè)計人員可以充分利用VHDLM件描述語言方便的編程,提高開發(fā)效率,縮短研發(fā)周期,降低研發(fā)成本;而且易于進行功能的擴展,實現(xiàn)方法靈活,調(diào)試方便,修改容易。 。因此,電子琴的設(shè)計我們選擇采用現(xiàn)場可編程邏輯器件(FPGA制作來實現(xiàn)。3 系統(tǒng)設(shè)計HDL 代碼library ieee;use speakera

7、 isport( clk : in std_logic;- 時 鐘 輸入index:in std_logic_vector( 6 downto 0);-按鍵輸入spks: out std_logic);- 揚聲器輸出end;architecture one of speakera issignal preclk,fullspks :std_logic;signal tone: std_logic_vector( 10 downto 0);beginsearch : process (index)begincase index iswhen "0000001" => t

8、one <="001"when "0000010" => tone <="000"when "0000100" => tone <=; ;when "0001000" => tone <=; ;when "0010000" => tone <=; ;when "0100000" => tone <=; ;when "1000000" => tone <=; ;

9、when others => tone <= ""end case;end process;divdeclk :process(clk)variable count4 :std_logic_vector( 3 downto 0);beginpreclk <= '0'if count4 > 11 then preclk <= '1' count4 :="0000"elsif clk'event and clk='1' then count4 := count4 + 1;e

10、nd if;end process;genspks : process(preclk,tone)variable count11 : std_logic_vector( 10 downto 0);beginif preclk'event and preclk = '1' thenif count11 =16#7ff# then count11 := tone;fullspks <= '1'else count11 := count11 + 1;fullspks <= '0'end if;end if;end process;d

11、ealyspks : process( fullspks)variable count2 : std_logic;beginif fullspks'event and fullspks = '1' then count2 := not count2;if count2 = '1' then spks <= '1'else spks <= '0'end if;end if;end process;end;系統(tǒng)整體電路圖4 系統(tǒng)仿真( Simulation Waveform )功能仿真:時序仿真:5 FPGA現(xiàn)數(shù)控

12、分頻模塊的目的是對基準脈沖分頻,得到 1,2,3,4,5,6,7 ,七個音符對應(yīng)頻率。該模塊的VHDL的述中包括了三個模塊,首先對12MHzI勺基準脈沖進行再次分頻,得到的便是所需要的頻率。實驗箱:實驗操作內(nèi)容及步驟 :1、打開Quartus H ,創(chuàng)建工程首先建立一個Quartus R的工程,指定工作目錄、工程名稱、頂層設(shè)計 實體名稱、目標器件系列、工具設(shè)置等。步驟如下: 1) 選擇“開始”一 > “程序” >Altera > Quartus H 2) 選擇File >New Project Wizard 界面,單擊Next 按鈕,進入工程名稱的設(shè)定、工程目錄的選擇。

13、 3) 3) 在對話框中, 指定工程存放的目錄、 工程名和頂層實體名, 工程名和頂層實體名要求相同,工程目錄可以隨意設(shè)置,但必須是英文的目錄,單擊Next 按鈕。 4) 4) 用戶指定目標器件,根據(jù)開發(fā)板所使用的期間來選擇,單擊Next 按鈕。 5) 新建一個VHD印言。 6) 6) 把程序代碼輸入, 編譯、 運行程序, 單擊 processing >start comilation 運行程序。( . 引腳分配( 1)單擊 assignments >timing analysis setting 進行引腳分配( 2)直接導入引腳分配,單擊assignments >import

14、 assignments( 3)引腳分配完成3產(chǎn)生波形圖( 1)創(chuàng)建波形文件,單擊File >other files >vector waveform file( 2)點擊空白處,點開INSERT->insert node, 再點擊 >node finder >list,把元器件添加進去,得到其仿真波形圖系統(tǒng)整體組裝圖:6 總結(jié)( Closing )通過兩個周的學習,最后完成了我的設(shè)計任務(wù)一一基于 VHDLS言的簡 易電子琴的設(shè)計。通過本次課程設(shè)計的學習,我對數(shù)據(jù)庫軟件EDAK術(shù)、VHDL等系列知識都有了一定的了解。使用 EDAK術(shù)開發(fā)頁面的能力也有了很大提高。我

15、深深的體會到設(shè)計課的重要性和目的性所在。本次設(shè)計課不僅僅培養(yǎng)了我們實際操作能力, 也培養(yǎng)了我們靈活運用課本知識, 理論聯(lián)系實際, 獨立自主的進行設(shè)計的能力。 它不僅僅是一個學習新知識新方法的好機會, 同時也是對我所學知識的一次綜合的檢驗和復(fù)習, 使我明白了自己的缺陷所在, 從而查漏 補缺。在設(shè)計中要求我們要有耐心和毅力, 還要細心, 稍有不慎一個小小的錯誤就會導致結(jié)果的不正確, 而對錯誤的檢查要求我要有足夠的耐心, 通過這次設(shè)計和設(shè)計中遇到的問題,也積累了一定的經(jīng)驗。用 VHDLM件描述語言的形式來 進行數(shù)字系統(tǒng)的設(shè)計方便靈活,利用EDAa件進行編譯優(yōu)化仿真極大地減少了電 路設(shè)計時間和可能發(fā)生

16、的錯誤, 降低了開發(fā)成本, 這種設(shè)計方法必將在未來的數(shù)字系統(tǒng)設(shè)計中發(fā)揮越來越重要的作用。VHDL的設(shè)計關(guān)鍵是電路邏輯設(shè)計,而一個程序的關(guān)鍵是總體設(shè)計。 對于硬件設(shè)計接觸不多的我們清楚這一點也許不無好處。設(shè)計的工作此課程設(shè)計從構(gòu)思到最后完成的這兩個周內(nèi),周圍的很多同學和朋友給予了我善意的幫助, 還有老師同學們對我的不厭其煩的指導, 使我對此類課程設(shè)計的設(shè)計流程以及脊髓有了很深的了解, 通過你們的幫助, 我把從計算機組成原理這門課上學到的理論第一次用到了實際設(shè)計上。在此,我深深的表示感謝。參考書目( Reference ):1張肅文,.EDA技術(shù)與VHDLS言.北京:清華大學出版社2 張亦華,延明

17、.數(shù)字電路EDAA門.北京:北京郵電大學出版社3 VHDL 程序設(shè)計 (第二版 ). 曾繁泰等 . 清華大學出版社4VHDLW數(shù)字電品&設(shè)計.盧毅,賴杰.科學出版社5EDAK術(shù)與實驗陳強附錄( Appendix ):library ieee;use speakera is- 揚聲器輸出- 時 鐘 輸port( clk : in std_logic;入index:in std_logic_vector( 6 downto 0);按鍵輸入spks: out std_logic);end;architecture one of speakera issignal preclk,fullspk

18、s :std_logic;signal tone: std_logic_vector( 10 downto 0);beginsearch : process (index)begincase index iswhen "0000001" => tone <= "001"when "0000010" => tone <= "000"when "0000100" => tone <= ""when "0001000" =&g

19、t; tone <= ""when "0010000" => tone <= ""when "0100000" => tone <= ""when "1000000" => tone <= ""when others => tone <= ""end case;end process;divdeclk :process(clk)variable count4 :std_logic_vector( 3 downto 0);beginpreclk <= '0'if count4 > 11 then preclk <= '1

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論