![畢業(yè)設(shè)計(論文)—樂曲硬件演奏電路的EDA設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/ae60aac5-93d0-481b-ba2b-17c7eb05090b/ae60aac5-93d0-481b-ba2b-17c7eb05090b1.gif)
![畢業(yè)設(shè)計(論文)—樂曲硬件演奏電路的EDA設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/ae60aac5-93d0-481b-ba2b-17c7eb05090b/ae60aac5-93d0-481b-ba2b-17c7eb05090b2.gif)
![畢業(yè)設(shè)計(論文)—樂曲硬件演奏電路的EDA設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/ae60aac5-93d0-481b-ba2b-17c7eb05090b/ae60aac5-93d0-481b-ba2b-17c7eb05090b3.gif)
![畢業(yè)設(shè)計(論文)—樂曲硬件演奏電路的EDA設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/ae60aac5-93d0-481b-ba2b-17c7eb05090b/ae60aac5-93d0-481b-ba2b-17c7eb05090b4.gif)
![畢業(yè)設(shè)計(論文)—樂曲硬件演奏電路的EDA設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/25/ae60aac5-93d0-481b-ba2b-17c7eb05090b/ae60aac5-93d0-481b-ba2b-17c7eb05090b5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、- -I 沈沈 陽陽 工工 程程 學(xué)學(xué) 院院課 程 設(shè) 計 設(shè)計題目:設(shè)計題目: 樂曲硬件演奏電路的 EDA 設(shè)計 系系 別別 自控系自控系 班級班級 電子本電子本 072072 學(xué)生姓名學(xué)生姓名 陳勇冰陳勇冰 學(xué)號學(xué)號 20073102272007310227 指導(dǎo)教師指導(dǎo)教師 尹常永尹常永 起止日期:起止日期: 20102010 年年 0606 月月 2121 日日 起起至至 20102010 年年 0707 月月 0202 日止日止設(shè)計地點(diǎn):教學(xué)樓設(shè)計地點(diǎn):教學(xué)樓 F213F213沈陽工程學(xué)院課程設(shè)計(論文)- -II沈沈 陽陽 工工 程程 學(xué)學(xué) 院院課程設(shè)計任務(wù)書課程設(shè)計題目:課程設(shè)計
2、題目:樂曲硬件演奏電路的 EDA 設(shè)計 系系 別別 自控系自控系 班級班級 電子本電子本 072072 班班 學(xué)生姓名學(xué)生姓名 陳勇冰陳勇冰 學(xué)號學(xué)號 20073102272007310227 指導(dǎo)教師指導(dǎo)教師 尹常永尹常永 起止日期:起止日期: 20102010 年年 0606 月月 2121 日日 起起20102010 年年 0707 月月 0202 日止日止教研室主任教研室主任 田田 景景 賀賀 20102010 年年 0606 月月 1717 日日- -III1.設(shè)計主要內(nèi)容及要求樂曲硬件演奏電路 EDA 設(shè)計1)簡要說明 利用 FPGA,設(shè)計一個樂曲硬件演奏電路。演奏時可選擇鍵盤輸入
3、樂曲或者已存入的樂曲,并配以一個小揚(yáng)聲器。任務(wù)和要求:樂曲的 12 平均率規(guī)定:每 2 個八度音(如簡譜中的中音 1 與高音 1)之間的頻率相差 1倍。在 2 個八度音之間,又可分為 12 個半音,每 2 個半音的頻率比為 122。另外,音符 A(簡譜中的低音 6)的頻率為 440Hz,音符 B 到 C 之間、E 到 F 之間為半音,其余為全音。由此可以計算出簡譜中從低音 l 至高音 1 之間每個音符的頻率。設(shè)計音符查找表電路模塊,時鐘模塊,數(shù)控分頻器模塊,音樂節(jié)拍產(chǎn)生模塊電路。任意選擇歌曲進(jìn)行設(shè)計,但歌曲前奏必須是中音 5353222。3)訓(xùn)練目標(biāo)具備硬件編程語言 VHDL 設(shè)計數(shù)字系統(tǒng)的初
4、步能力,熟悉開發(fā)環(huán)境和流程,掌握技術(shù)方法。2.對設(shè)計說明書、論文撰寫內(nèi)容、格式、字?jǐn)?shù)的要求1)課程設(shè)計說明書(論文)是體現(xiàn)和總結(jié)課程設(shè)計成果的載體,一般不應(yīng)少于 3000字。2)學(xué)生應(yīng)撰寫的內(nèi)容為:中文摘要和關(guān)鍵詞、目錄、正文、參考文獻(xiàn)等。課程設(shè)計說明書(論文)的結(jié)構(gòu)及各部分內(nèi)容要求可參照沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范執(zhí)行。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。3)說明書(論文)手寫或打印均可。手寫要用學(xué)校統(tǒng)一的課程設(shè)計用紙,用黑或藍(lán)黑墨水工整書寫;打印時按沈陽工程學(xué)院畢業(yè)設(shè)計(論文)撰寫規(guī)范的要求進(jìn)行打印。4)課程設(shè)計說明書(論文)裝訂順序?yàn)椋悍饷妗⑷蝿?wù)書、成績評審意見表、
5、中文摘要和關(guān)鍵詞、目錄、正文、參考文獻(xiàn)。3.時間進(jìn)度安排;順序階段日期計 劃 完 成 內(nèi) 容備注106.2106.23選題,搜集資料,熟悉設(shè)計環(huán)境206.2406.28調(diào)試程序306.28-06.29仿真程序406.30-07.01撰寫課程設(shè)計說明書(論文)507.02答辯沈陽工程學(xué)院課程設(shè)計(論文)- -IV沈沈 陽陽 工工 程程 學(xué)學(xué) 院院VHDLVHDL與可編程邏輯器件應(yīng)用與可編程邏輯器件應(yīng)用 課程設(shè)計成績評定表課程設(shè)計成績評定表系(部):系(部): 自動控制工程系自動控制工程系 班級:班級: 電子本電子本072072班班 學(xué)生姓名:學(xué)生姓名: 陳勇冰陳勇冰 指指 導(dǎo)導(dǎo) 教教 師師 評評
6、 審審 意意 見見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分調(diào)研論證能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計方案和日程安排。0.15 54 43 32 2工作能力態(tài)度工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好,能夠獨(dú)立完成設(shè)計工作, 0.25 54 43 32 2工作量按期圓滿完成規(guī)定的設(shè)計任務(wù),工作量飽滿,難度適宜。0.25 54 43 32 2說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.55 54 43 32 2指導(dǎo)教師評審成績指導(dǎo)教師評審成績(加權(quán)分合計乘以(加權(quán)分合計乘以 1212) 分分加權(quán)分合計加權(quán)分合計指指
7、 導(dǎo)導(dǎo) 教教 師師 簽簽 名:名: 年年 月月 日日評評 閱閱 教教 師師 評評 審審 意意 見見評價內(nèi)容具 體 要 求權(quán)重評 分加權(quán)分查閱文獻(xiàn)查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能力0.25 54 43 32 2工作量工作量飽滿,難度適中。0.55 54 43 32 2說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號統(tǒng)一,編號齊全,圖表完備,書寫工整規(guī)范。0.35 54 43 32 2評閱教師評審成績評閱教師評審成績(加權(quán)分合計乘以(加權(quán)分合計乘以 8 8)分分加權(quán)分合計加權(quán)分合計評評 閱閱 教教 師師 簽簽 名:名: 年年 月月 日日課課 程程 設(shè)設(shè) 計計
8、 總總 評評 成成 績績分分- -V摘 要樂曲演奏廣泛用于自動答錄裝置、手機(jī)鈴聲、集團(tuán)電話、及智能儀器儀表設(shè)備。實(shí)現(xiàn)方法有許多種,在眾多的實(shí)現(xiàn)方法中,以純硬件完成樂曲演奏,隨著 FPGA 集成度的提高,價格下降,EDA 設(shè)計工具更新?lián)Q代,功能日益普及與流行,使這種方案的應(yīng)用越來越多。如今的數(shù)字邏輯設(shè)計者面臨日益縮短的上市時間的壓力,不得不進(jìn)行上萬門的設(shè)計,同時設(shè)計者不允許以犧牲硅的效率達(dá)到保持結(jié)構(gòu)的獨(dú)特性。使用現(xiàn)今的 EDA 軟件工具來應(yīng)付這些問題,并不是一件簡單的事情。FPGA 預(yù)裝了很多已構(gòu)造好的參數(shù)化庫單元 LPM器件。通過引入支持 LPM 的 EDA 軟件工具,可以設(shè)計出結(jié)構(gòu)獨(dú)立而且硅
9、片的使用效率非常高的產(chǎn)品。本文分析了樂曲演奏設(shè)計中音符、頻率、節(jié)拍與編碼的相互關(guān)系,并在 EDA 開發(fā)工具 MAX-plus II 平臺上,采用 VHDL 語言及原理圖的設(shè)計方法,實(shí)現(xiàn)了基于 FPGA 片上系統(tǒng)動態(tài)顯示可選擇多首樂曲的樂曲演奏器的設(shè)計,使樂曲演奏數(shù)字電路的設(shè)計得到了更好的優(yōu)化,提高了設(shè)計的靈活性。關(guān)鍵詞 FPGA,EDA,VHDL,數(shù)控分頻器沈陽工程學(xué)院課程設(shè)計(論文)- -VIAbstractMusic performances are widely used in automatic answering devices, cell phone ring tones, the
10、 Group phones, smart instrumentation and equipment。There are several ways to achieve, in many ways to achieve, pure hardware to complete the music performances, along with the improvement of FPGA integration, Lower prices, EDA design tool replacement, with the growing popularity of functional fashio
11、n, the application of such a programe so that more and more. Todays digital logic designers face increasingly shorter time to market pressure, had to 10,000 on the design, designers are not allowed to sacrifice the efficiency of silicon to maintain the uniqueness of the structure. The use of the cur
12、rent EDA software tools to tackle these problems, is not a simple matter. Pre-installed FPGA has a lot of good structural parameters of the unit LPM devices. By introducing support for the LPM EDA software tools, you can design a structure independent of silicon and a very high efficiency in the use
13、 of the product.This paper analyzes the correlation between the coding with the note,frequency and rhythm in musical performante,Based on MAX-plus IIthe EDA development tool,this design has adopted the method of classification of VHDL and principle picture design proceduresAnd the design of dynamic
14、displayfing music player has been achieved on the basic of FPGA to much music,the design making music perform the figure circuit has got the much better optimization , has improved the flexibility designing that.Keywords FPGA, EDA,VHDL,digital frequency multiplex system沈陽工程學(xué)院課程設(shè)計(論文)- -VII目 錄 摘摘 要要
15、.VAbstract.VI第第 1 章章 引引 言言 .11.1 EDA 技術(shù)的概念及發(fā)展趨勢.1第第 2 章章 VHDL 語言語言.22.1 VHDL 簡介.22.2 VHDL 語言的特點(diǎn)及應(yīng)用.3第第 3 章章 樂曲硬件演奏電路樂曲硬件演奏電路 .73.1 基本要求 .73.2 樂曲演奏原理 .73.3 樂曲硬件演奏電路的層次化設(shè)計方案 .93.3.1 音樂節(jié)拍發(fā)生器 NoteTabs.93.3.2 音符譯碼電路 ToneTaba 模塊.143.3.3 數(shù)控分頻模塊(Speakera)設(shè)計.163.3.4 樂曲硬件演奏電路的頂層設(shè)計和仿真 .19結(jié)結(jié) 論論 .21致致 謝謝 .22參考文獻(xiàn)
16、參考文獻(xiàn) .23附附錄錄 .24沈陽工程學(xué)院課程設(shè)計(論文)- -1第 1 章 引 言1.1 EDA 技術(shù)的概念及發(fā)展趨勢EDA 是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在 20 世紀(jì) 90 年代初從計算機(jī)輔助設(shè)計(CAD) 、計算機(jī)輔助制造(CAM) 、計算機(jī)輔助測試(CAT)和計算機(jī)輔助工程(CAE)的概念發(fā)展而來的。EDA 技術(shù)就是以計算機(jī)為工具,設(shè)計者在 EDA 軟件平臺上,用硬件描述語言 HDL 完成設(shè)計文件,然后由計算機(jī)自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。
17、EDA 技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可靠性,減輕了設(shè)計者的勞動強(qiáng)度?,F(xiàn)在 EDA 技術(shù)應(yīng)用廣泛,包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個領(lǐng)域,都有 EDA 的應(yīng)用。目前 EDA 技術(shù)已在各大公司、科研和教學(xué)部門廣泛使用。在產(chǎn)品設(shè)計與制造方面,EDA 技術(shù)可實(shí)現(xiàn)前期的計算機(jī)仿真、系統(tǒng)級模擬及測試環(huán)境的仿真、PCB 的制作、電路板的焊接、ASIC 的設(shè)計等。在教學(xué)方面,我國高校是從九十年代中期開始 EDA 教育的,現(xiàn)在幾乎所有理工科類高校都開設(shè)了 EDA 課程。這些課程主要是讓學(xué)生了解 EDA 的基本概念和原理,使用 EDA 軟件進(jìn)行電子電路課程的實(shí)驗(yàn)及從事
18、簡單系統(tǒng)的設(shè)計。 沈陽工程學(xué)院課程設(shè)計(論文)- -2第 2 章 VHDL 語言2.1 VHDL 簡介VHDL 的英文全名是 Very-High-Speed Integrated Circuit HardwareDescription Language,誕生于 1982 年。1987 年底,VHDL 被 IEEE 和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言 。自 IEEE 公布了 VHDL 的標(biāo)準(zhǔn)版本,IEEE-1076(簡稱 87 版)之后,各 EDA 公司相繼推出了自己的 VHDL 設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和 VHDL 接口。此后 VHDL 在電子設(shè)計領(lǐng)域得到了廣泛的接受,并逐步取代了原
19、有的非標(biāo)準(zhǔn)的硬件描述語言。1993 年,IEEE 對 VHDL 進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展 VHDL 的內(nèi)容,公布了新版本的VHDL,即 IEEE 標(biāo)準(zhǔn)的 1076-1993 版本,(簡稱 93 版)?,F(xiàn)在,VHDL 和Verilog 作為 IEEE 的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多 EDA 公司的支持,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL 于 Verilog 語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。 隨著 VLSI、EDA( Electronic Design Automation )工具的迅速發(fā)展,用戶系統(tǒng)的設(shè)計從單純的
20、ASIC(Application Specific Integrated Circuit)設(shè)計向著系統(tǒng)單片化 SOC(System On a Chip)設(shè)計的方向發(fā)展。同時網(wǎng)絡(luò)技術(shù)的發(fā)展,共享 IP 知識產(chǎn)權(quán)的開放式系統(tǒng)設(shè)計成為新模式,芯片工藝物理設(shè)計與系統(tǒng)設(shè)計相分離,使用戶系統(tǒng)設(shè)計人員可直接從事芯片設(shè)計。多種技術(shù)的融合,系統(tǒng)的功能復(fù)合化程度越來越高;對系統(tǒng)設(shè)計方法學(xué)和工具的要求更高;系統(tǒng)設(shè)計日趨軟件硬化、硬件軟化,并使兩者得到了有機(jī)的融合,形成了更為強(qiáng)大的ESDA( Electronic System Design Automation )。VHDL(Very High Speed Inte
21、grated Circuit Hardware Description Language)是 IEEE(Institute of Electrical and Electronics Engineers)標(biāo)準(zhǔn)的硬件描述語言,是現(xiàn)代電子系統(tǒng)設(shè)計的首選硬件設(shè)計計算機(jī)語言。本篇介紹 VHDL 的語法基礎(chǔ)、用 VHDL 進(jìn)行系統(tǒng)設(shè)計的基本方法、以及 VHDL 的設(shè)計實(shí)例等。從宏觀的角度看,VHDL 的語法構(gòu)成了程序的各組成部分;微觀上看VHDL 的語法是各種語句的運(yùn)用細(xì)節(jié)。本章在 VHDL 的特性之后,從這兩個角度簡要介紹 VHDL 的語法基礎(chǔ)。硬件描述語言 HDL(Hardware Descript
22、ion Language)誕生于 1962 年。HDL 是用形式化的方法描述數(shù)字電路和設(shè)計數(shù)字邏輯系統(tǒng)的語言。主要用于描述離散電子系統(tǒng)的結(jié)構(gòu)和行為。與 SDL(Software Description Language)相似,經(jīng)歷了從機(jī)器碼(晶體管和焊接)、匯編(網(wǎng)表)、到高級語言(HDL)的過程。20 世紀(jì) 80 年代美國國防部開發(fā) Very High Speed Integrated CircuitVHSIC,用于描述集成電路的結(jié)構(gòu)和功能。此后,硬件描述語言向標(biāo)準(zhǔn)化方向沈陽工程學(xué)院課程設(shè)計(論文)- -3發(fā)展,1987 年成為 IEEE Standard 1076,稱為 VHDL 語言。它
23、也是美國國防部標(biāo)準(zhǔn)(MIL-STD-454L)。1993 年該標(biāo)準(zhǔn)增修為 IEEE1164 標(biāo)準(zhǔn)。1996 年,再次加入電路合成的標(biāo)準(zhǔn)程序和規(guī)格,成為 IEEE1076.3 標(biāo)準(zhǔn)。2.2 VHDL 語言的特點(diǎn)及應(yīng)用應(yīng)用 VHDL 進(jìn)行系統(tǒng)設(shè)計,有以下幾方面的特點(diǎn)。(1) 功能強(qiáng)大。VHDL 具有功能強(qiáng)大的語言結(jié)構(gòu)。它可以用明確的代碼描述復(fù)雜的控制邏輯設(shè)計。并且具有多層次的設(shè)計描述功能,支持設(shè)計庫和可重復(fù)使用的元件生成。VHDL 是一種設(shè)計、仿真和綜合的標(biāo)準(zhǔn)硬件描述語言。(2)可移植性。VHDL 語言是一個標(biāo)準(zhǔn)語言,其設(shè)計描述可以為不同的EDA 工具支持。它可以從一個仿真工具移植到另一個仿真工具
24、,從一個綜合工具移植到另一個綜合工具,從一個工作平臺移植到另一個工作平臺。此外,通過更換庫再重新綜合很容易移植為 ASIC 設(shè)計。(3)獨(dú)立性。VHDL 的硬件描述與具體的工藝技術(shù)和硬件結(jié)構(gòu)無關(guān)。設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管最終設(shè)計實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨(dú)立的設(shè)計。程序設(shè)計的硬件目標(biāo)器件有廣闊的選擇范圍,可以是各系列的CPLD、FPGA 及各種門陣列器件。(4)可操作性。由于 VHDL 具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設(shè)計,在不改變源程序的條件下,只需改變端口類屬參量或函數(shù),就能輕易地改變設(shè)計的規(guī)模和結(jié)構(gòu)。(5)靈活性。VHDL 最初是作為一種仿真標(biāo)準(zhǔn)格式出現(xiàn)的,有
25、著豐富的仿真語句和庫函數(shù)。使其在任何大系統(tǒng)的設(shè)計中,隨時可對設(shè)計進(jìn)行仿真模擬。所以,即使在遠(yuǎn)離門級的高層次(即使設(shè)計尚未完成時),設(shè)計者就能夠?qū)φ麄€工程設(shè)計的結(jié)構(gòu)和功能的可行性進(jìn)行查驗(yàn),并做出決策。VHDL 主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL 的語言形式和描述風(fēng)格與句法是十分類似于一般的計算機(jī)高級語言。VHDL 的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計,或稱設(shè)計實(shí)體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對一個設(shè)計實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成
26、后,其他的設(shè)計就可以直接調(diào)用這個實(shí)體。這種將設(shè)計實(shí)體分成內(nèi)外部分的概念是 VHDL 系統(tǒng)設(shè)計的基本點(diǎn)。VHDL 是一種標(biāo)準(zhǔn)的硬件電路設(shè)計語言,目前已成為廣大電路設(shè)計人員設(shè)計數(shù)字系統(tǒng)首選的開發(fā)工具。基于 VHDL 硬件電路語言的編程與實(shí)際應(yīng)用技巧,VHDL 硬件電路語言在微機(jī)、通信、編碼、存儲器以及電子電路等方面的具體設(shè)計應(yīng)用,具有實(shí)際的指導(dǎo)意義。VHDL 語言是一種用于電路設(shè)計的高級語言。它在 80 年代的后期出現(xiàn)。最初是由美國國防部開發(fā)出來供美軍用來提高設(shè)計的可靠性和縮減開發(fā)周期的一沈陽工程學(xué)院課程設(shè)計(論文)- -4種使用范圍較小的設(shè)計語言 。但是,由于它在一定程度上滿足了當(dāng)時的設(shè)計需求,
27、于是他在 1987 年成為 ANSI/IEEE 的標(biāo)準(zhǔn)(IEEE STD 1076-1987) 。1993 年更進(jìn)一步修訂,變得更加完備,成為 ANSI/IEEE 的 ANSI/IEEE STD 1076-1993標(biāo)準(zhǔn)。目前,大多數(shù)的 CAD 廠商出品的 EDA 軟件都兼容了這種標(biāo)準(zhǔn)。 VHDL 的英文全寫是:VHSIC(Very High Speed Integrated Circuit)Hardware Descriptiong Language.翻譯成中文就是超高速集成電路硬件描述語言。因此它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計中。目前,它在中國的應(yīng)用多數(shù)是用在 FPGA/CPLD/EPLD
28、 的設(shè)計中。當(dāng)然在一些實(shí)力較為雄厚的單位,它也被用來設(shè)計 ASIC。 關(guān)于用 VHDL 和原理圖輸入進(jìn)行 CPLD/FPGA 設(shè)計的粗略比較:在設(shè)計中,如果采用原理圖輸入的設(shè)計方式是比較直觀的。你要設(shè)計的是什么,你就直接從庫中調(diào)出來用就行了。這樣比較符合人們的習(xí)慣。但是這樣做需要設(shè)計人員要在兩方面有較高的素質(zhì): 對電路的知識要比較豐富;對 CPLD/FPGA 的結(jié)構(gòu)比較熟悉。有了這兩個條件才能在設(shè)計的過程中選用適當(dāng)?shù)钠骷亩岣咴O(shè)計的可靠性、提高器件的利用率及縮短設(shè)計的周期。但是有一個重大的問題是在于,如果你的產(chǎn)品有所改動,需要采用另外的 CPLD/FPGA 時,你將需要重新輸入原理圖。 (改
29、用不同的器件在今天這種競爭環(huán)境下是會經(jīng)常發(fā)生的。頭兒們?yōu)榱颂岣弋a(chǎn)品的性能或者是降低產(chǎn)品的造價,提高保密性等等,都會考慮選用不同的器件。對他們而言只是做出一個決定,對我們而言卻是要我們付出更多的心血) 。 但是當(dāng)你采用 VHDL 等高級語言來設(shè)計時這些問題都會得到較好的解決。由于在使用 VHDL 等高級語言時,有專用的工具來實(shí)現(xiàn)將語言描述的電路功能轉(zhuǎn)換為實(shí)際的電路所以你就用不著對底層的電路很熟悉,也用不著對CPLD/FPGA 的結(jié)構(gòu)很熟悉(因?yàn)橛袑S玫墓ぞ哚槍δ愕拿枋霾捎孟鄳?yīng)的器件哦) 。當(dāng)你要換器件時,你只需要將原來設(shè)計好的 VDHL 文件在新器件的設(shè)計工具中再次實(shí)現(xiàn)就行了。在用高級語言來設(shè)計
30、電路時,主要的過程是這樣的: (1) 使用文本編輯器輸入設(shè)計源文件(你可以使用任何一種文本編輯器。但是,為了提高輸入的效率,你可以用某些專用的編輯器,如:Hdl Editor,Tubor Writer 或者一些 EDA 工具軟件集成的 HDL 編輯器)。 (2)使用編譯工具編譯源文件。VHDL 的編譯器有很多,ACTIVE 公司,MODELSIM 公司,SYNPLICITY 公司,SYNOPSYS 公司,VERIBEST 公司等都有自己的編譯器。 (3)(可選步驟)功能仿真。對于某些人而言,仿真這一步似乎是可有可無的。但是對于一個可靠的設(shè)計而言,任何設(shè)計最好都進(jìn)行仿真,以保證設(shè)計的可靠性。另外
31、,對于作為一個獨(dú)立的設(shè)計項(xiàng)目而言,仿真文件的提供足可以證明你設(shè)計的完整性。 沈陽工程學(xué)院課程設(shè)計(論文)- -5(4)綜合。綜合的目的是在于將設(shè)計的源文件由語言轉(zhuǎn)換為實(shí)際的電路。(但是此時還沒有在芯片中形成真正的電路。這一步就好像是把人的腦海中的電路畫成原理圖。-這是我的個人觀點(diǎn),似乎在好多文獻(xiàn)中都沒有提到“綜合”的準(zhǔn)確定義。至少,我讀過的幾本書中就沒有。 )這一部的最終目的是生成門電路級的網(wǎng)表(Netlist) 。 (5)布局、布線。這一步的目的是生成用于燒寫(編程 Programming)的編程文件。在這一步,將用到第 4 步生成的網(wǎng)表并根據(jù) CPLD/FPG 廠商的器件容量,結(jié)構(gòu)等進(jìn)行布
32、局、布線。這就好像在設(shè)計 PCB 時的布局布線一樣。先將各個設(shè)計中的門根據(jù)網(wǎng)表的內(nèi)容和器件的結(jié)構(gòu)放在器件的特定部位。然后,在根據(jù)網(wǎng)表中提供的各門的連接,把各個門的輸入輸出連接起來。最后,生成一個供編程的文件。這一步同時還會加一些時序信息(Timing)到你的設(shè)計項(xiàng)目中去,以便與你做后仿真。 (6)后仿真。這一步主要是為了確定你的設(shè)計在經(jīng)過布局布線之后,是不是還滿足你的設(shè)計要求。 (7)燒寫器件(編程) 。 隨著 EDA 技術(shù)的發(fā)展,使用硬件語言設(shè)計PLD/FPGA 成為一種趨勢。目前最主要的硬件描述語言是 VHDL 和 Verilog HDL。 VHDL 發(fā)展的較早,語法嚴(yán)格,而 Verilo
33、g HDL 是在 C 語言的基礎(chǔ)上發(fā)展起來的一種硬件描述語言,語法較自由。 VHDL 和 Verilog HDL 兩者相比,VHDL 的書寫規(guī)則比 Verilog 煩瑣一些,但 verilog 自由的語法也容易讓少數(shù)初學(xué)者出錯。 國外電子專業(yè)很多會在本科階段教授 VHDL,在研究生階段教授verilog。從國內(nèi)來看,VHDL 的參考書很多,便于查找資料,而 Verilog HDL的參考書相對較少,這給學(xué)習(xí) Verilog HDL 帶來一些困難。 從 EDA 技術(shù)的發(fā)展上看,已出現(xiàn)用于 CPLD/FPGA 設(shè)計的硬件 C 語言編譯軟件,雖然還不成熟,應(yīng)用極少,但它有可能會成為繼 VHDL 和 V
34、erilog 之后,設(shè)計大規(guī)模CPLD/FPGA 的又一種手段。應(yīng)用 VHDL 進(jìn)行工程設(shè)計的優(yōu)點(diǎn)是多方面的:(1) 與其他的硬件描述語言相比,VHDL 具有更強(qiáng)的行為描述能力,從而決定他成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng)的重要保證。(2) VHDL 豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期就能查驗(yàn)設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進(jìn)行仿真模擬。(3) VHDL 語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)高效,高速的完成必須有多人甚至多個代發(fā)
35、組共同并行工作才能實(shí)現(xiàn)。(4) 對于用 VHDL 完成的一個確定的設(shè)計,可以利用 EDA 工具進(jìn)行邏輯綜合和優(yōu)化,并自動的把 VHDL 描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。(5) VHDL 對設(shè)計的描述具有相對獨(dú)立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨(dú)立的設(shè)計.沈陽工程學(xué)院課程設(shè)計(論文)- -6任何新生事物的產(chǎn)生都有它的歷史沿革,早期的硬件描述語言是以一種高級語言為基礎(chǔ),加上一些特殊的約定而產(chǎn)生的,目的是為了實(shí)現(xiàn) RTL 級仿真,用以驗(yàn)證設(shè)計的正確性,而不必像在傳統(tǒng)的手工設(shè)計過程中那樣,必須等到完成樣機(jī)后才能進(jìn)行實(shí)測和調(diào)試。VHDL 就是在用用最廣泛的 C 語言的
36、基礎(chǔ)上發(fā)展起來的一種件描述語言,它是由 GDA(Gateway Design Automation)公司的 PhilMoorby 在 1983 年末首創(chuàng)的,最初只設(shè)計了一個仿真與驗(yàn)證工具,之后又陸續(xù)開發(fā)了相關(guān)的故障模擬與時序分析工具。1985 年 Moorby 推出它的第三個商用仿真器 Verilog-XL,獲得了巨大的成功,從而使得 Verilog HDL 迅速得到推廣應(yīng)用。1989 年 CADENCE 公司收購了 GDA 公司,使得 VerilogHDL 成為了該公司的獨(dú)家專利。1990 年CADENCE 公司公開發(fā)表了 Verilog HDL,并成立 LVI 組織以促進(jìn) Verilog
37、HDL成為 IEEE 標(biāo)準(zhǔn),即 IEEE Standard 1364-1995。VHDL 的最大特點(diǎn)就是易學(xué)易用,如果有 C 語言的編程經(jīng)驗(yàn),可以在一個較短的時間內(nèi)很快的學(xué)習(xí)和掌握,因而可以把 Verilog HDL 內(nèi)容安排在與 ASIC設(shè)計等相關(guān)課程內(nèi)部進(jìn)行講授,由于 HDL 語言本身是專門面向硬件與系統(tǒng)設(shè)計的,這樣的安排可以使學(xué)習(xí)者同時獲得設(shè)計實(shí)際電路的經(jīng)驗(yàn)。與之相比,VHDL 的學(xué)習(xí)要困難一些。但 Verilog HDL 較自由的語法,也容易造成初學(xué)者犯一些錯誤,這一點(diǎn)要注意。 沈陽工程學(xué)院課程設(shè)計(論文)- -7第 3 章 樂曲硬件演奏電路樂曲硬件演奏電路3.1 基本要求利用 FPG
38、A,設(shè)計一個樂曲硬件演奏電路。樂曲的 12 平均率規(guī)定:每 2 個八度(如簡譜中的中音 1 與高音 1)之間的頻率相差 1 倍。在 2 個八度音之間,又可分為 12 個半音,每 2 個半音的頻率比為 122。另外,音符 A 的頻率為440HZ,音符 B 到 C 之間,E 到 F 之間為半音,其余為全音。由此可以計算出簡譜中從低音 l 至高音 1 之間每個音符的頻率。設(shè)計音符查找表電路模塊,時鐘模塊,數(shù)控分頻器模塊,音樂節(jié)拍產(chǎn)生模塊電路。任意選擇歌曲進(jìn)行設(shè)計,但是歌曲前奏必須是中音 53532223.2 樂曲演奏原理聲音的頻譜范圍一般在幾十到幾千赫茲,利用程序來控制 FPGA 芯片某個引腳輸出一
39、定頻率的矩形波,接上揚(yáng)聲器就能發(fā)出相應(yīng)頻率的聲音。樂曲中的每個音符對應(yīng)著一定的頻率,因此,想要發(fā)出不同音符的音調(diào),只要能控制輸出相應(yīng)音符的頻率即可。樂曲都是由一連串的音符組成,因此按照樂曲的樂譜依次輸出這些音符所對應(yīng)的頻率,就可以往揚(yáng)聲器上連續(xù)地發(fā)出各個音符的音調(diào)。音樂頻率和音樂的持續(xù)時間是音樂演奏的兩個關(guān)鍵因素,以純硬件完成演奏電路比利用微處理器來實(shí)現(xiàn)樂曲演奏要復(fù)雜的多,如果不憑借 EDA 工具和硬件描述語言,憑借傳統(tǒng)的數(shù)字邏輯技術(shù),即使最簡單的演奏電路也難以實(shí)現(xiàn)。樂曲硬件演奏電路系統(tǒng)主要有數(shù)控分頻器和樂曲存儲模塊組成。數(shù)控分頻器對 FPGA的基準(zhǔn)頻率進(jìn)行分頻,得到與各個音階對應(yīng)的頻率輸出。
40、樂曲存儲模塊產(chǎn)生節(jié)拍控制和音階選擇信號,即在此模塊中可存放一個樂曲曲譜真值表,由一個計數(shù)器來控制此真值表的輸出,而由計數(shù)器的計數(shù)時鐘信號作為樂曲節(jié)拍控制信號。樂曲演奏電路的結(jié)構(gòu)框圖如下:圖 3.2.1 樂曲演奏電路結(jié)構(gòu)框圖沈陽工程學(xué)院課程設(shè)計(論文)- -8(1) 音名與頻率的關(guān)系樂曲的 12 平均率規(guī)定:每 2 個八度(如簡譜中的中音 1 與高音 1)之間的頻率相差 1 倍。在 2 個八度音之間,又可分為 12 個半音,每 2 個半音的頻率比為 122。另外,音符 A 的頻率為 440HZ,音符 B 到 C 之間,E 到 F 之間為半音,其余為全音。由此可以計算出簡譜中從低音 l 至高音 1
41、 之間每個音符的頻率。如表 3.2.1 所示: 表 3.2.1 簡譜中的音名與頻率的關(guān)系音名頻率/HZ音名頻率/HZ音名頻率/HZ低音 1261.6中音 1523.3高音 11046.5低音 2293.7中音 2587.3高音 21174.7低音 3329.6中音 3659.3高音 31318.5低音 4349.2中音 4698.5高音 41396.9低音 5392中音 5784高音 51568低音 6440中音 6880高音 61760低音 7493.9中音 7987.8高音 71975.5由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將得到的分頻系數(shù)四舍五入取整。若基準(zhǔn)頻率過低,則
42、由于分頻系數(shù)過小,四舍五入取整后的誤差較大,若基準(zhǔn)頻率過高,雖然誤碼差變小,但是分頻結(jié)構(gòu)將變大。實(shí)際的設(shè)計應(yīng)綜合考慮兩方面的因素,在盡量減小頻率誤差的前提下取舍合適的基準(zhǔn)頻率。本例中選取 4MHZ 的基準(zhǔn)頻率。各音階頻率計相應(yīng)的分頻系數(shù)如表 3.2.2 所示。為了減少輸出的偶次諧波分量,最后輸出到揚(yáng)聲器的波形應(yīng)為對稱方波,因此在到達(dá)揚(yáng)聲器之前,又經(jīng)過一個 2 分頻的分頻器。表 3.2.2 的分頻系數(shù)就是從 4MHZ 頻率 2 分頻得到的2MHZ 頻率基礎(chǔ)上計算得出的。 表 3.2.2 各音階頻率對應(yīng)的分頻表音名分頻系數(shù)初始值音名分頻系數(shù)初始值音名分頻系數(shù)初始值低音 17644547中音 138
43、224369高音 119116280低音 268101381中音 234054786高音 212706921低音 360672124中音 330345157高音 315176674低音 457272464中音 428645327高音 414326759低音 551023089中音 525515640高音 512566935低音 645453646中音 622735918高音 611377054低音 740504141中音 720256166高音 710137178由于最大分頻系數(shù)是 7644,故采用 13 位二進(jìn)制計數(shù)器已能滿足分頻的要求。在表 3.2.2 中,除了給出了分頻比例外,還給出了對
44、應(yīng)于各個音階頻率時計數(shù)器不同的初始值,對于樂曲中的休止符,要將分頻系數(shù)設(shè)為 0,即初始值位 8191即可,此時揚(yáng)聲器將不會發(fā)聲。對于不同的分頻系數(shù),加載不同的初始值即可。沈陽工程學(xué)院課程設(shè)計(論文)- -9用加載初始值而不是將分頻輸出譯碼反饋,可以有效地減少成本設(shè)計占用可編程邏輯器件的資源,也是同步計數(shù)器一個常用設(shè)計技巧。(2)控制音長的節(jié)拍發(fā)生器該演奏電路演奏的樂曲是“梁?!逼危渥钚〉墓?jié)拍是 1 拍。將 1 拍的時間定為 0.25S,則只需要再提供一個 4HZ 的時鐘頻率即可產(chǎn)生 1 拍的時長,演奏的時間控制通過 ROM 查表得方式完成。對于占用時間較長的節(jié)拍(一定是拍的整數(shù)倍) ,如全
45、音符為 4 拍(重復(fù) 4 次),2/4 音符為 2 拍(重復(fù) 2 次) ,1/4 音符為 1 拍(重復(fù) 1 次) 。要求演奏時能循環(huán)進(jìn)行,因此需要另外設(shè)置一個時長計數(shù)器,當(dāng)樂曲演奏完成時,保證能自動從頭開始演奏。該計數(shù)器控制真值表按順序輸出簡譜。3.3 樂曲硬件演奏電路的層次化設(shè)計方案樂曲硬件演奏電路的層次化設(shè)計方案根據(jù)層次化的設(shè)計思路,可把樂曲硬件演奏電路分為 3 個模塊,音樂節(jié)拍發(fā)生器 NoteTabs 模塊,音符譯碼電路 ToneTaba 模塊,數(shù)控分頻模塊(Speakera) 。3.3.1 音樂節(jié)拍發(fā)生器音樂節(jié)拍發(fā)生器 NoteTabs該模塊將利用 FPGA 的片內(nèi) POM 存放樂曲簡
46、譜真值表,該計數(shù)器的計數(shù)頻率為 4HZ,即每一個數(shù)值的停留時間為 0.25S,隨著 NoteTabs 中計數(shù)器按 4HZ 的時鐘頻率做加法計數(shù)時,樂符數(shù)據(jù)轉(zhuǎn)向音符譯碼電路 ToneTaba,所以所存的樂曲就自然的演奏起來。其 VHDL 源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY NoteTabs IS PORT ( clk : IN STD_LOGIC; ToneIndex : OUT INTEGER RANG
47、E 0 TO 15 );END;ARCHITECTURE one OF NoteTabs IS SIGNAL Counter : INTEGER RANGE 0 TO 145;BEGIN CNT8 : PROCESS(clk) BEGIN IF Counter = 138 THEN Counter = 0;沈陽工程學(xué)院課程設(shè)計(論文)- -10 ELSIF (clkEVENT AND clk = 1) THEN Counter ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex Tone
48、Index ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex Tone
49、Index ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex Tone
50、Index ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex Tone
51、Index ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex Tone
52、Index ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex ToneIndex NULL; END CASE; END PROCESS;END;沈陽工程學(xué)院課程設(shè)計(論文)- -14仿真波形如下:圖 3.3 音樂節(jié)拍發(fā)生器仿真波形原器件符號:圖 3.4 音樂發(fā)生器元件符號3.3.2 音符譯碼電路 ToneTaba 模塊音符譯碼電路即音調(diào)發(fā)生器實(shí)際上是一個翻譯電路,根據(jù)輸入為數(shù)控分頻模塊提供所發(fā)音符頻率的初始值,而此數(shù)控分頻模塊入口的停留時間即為此音符的節(jié)拍數(shù),以
53、VHDL 程序中僅設(shè)置了“梁?!睒非恳舴鶎?yīng)的音符頻率的初始值。/CLK_4HZ: 用于控制音長(節(jié)拍)的時鐘頻率;/CLK_6MHZ:用于產(chǎn)生各種音階頻率的基準(zhǔn)頻率;/SPEAKER: 用于激勵揚(yáng)聲器的輸出信號,本例中為方波信號;/HIGH, MED, LOW:分別用于顯示高音、中音和低音音符,各驅(qū)動一個數(shù)碼來顯示。其 VHDL 源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ToneTaba IS PORT ( Index : IN INTEGER RANGE 0 TO 15; CODE : OUT INTEGER RANG
54、E 0 TO 15; HIGH : OUT STD_LOGIC; Tone : OUT INTEGER RANGE 0 TO 16#7FF# );沈陽工程學(xué)院課程設(shè)計(論文)- -15END;ARCHITECTURE one OF ToneTaba ISBEGIN Search : PROCESS(Index) BEGIN CASE Index IS - 譯碼電路,查表方式,控制音調(diào)的預(yù)置數(shù) WHEN 0 = Tone = 2047; CODE = 0; HIGH Tone = 773; CODE = 1; HIGH Tone = 912; CODE = 2; HIGH Tone = 1036
55、; CODE = 3; HIGH Tone = 1197; CODE = 5; HIGH Tone = 1290; CODE = 6; HIGH Tone = 1372; CODE = 7; HIGH Tone = 1410; CODE = 1; HIGH Tone = 1480; CODE = 2; HIGH Tone = 1542; CODE = 3; HIGH Tone = 1622; CODE = 5; HIGH Tone = 1668; CODE = 6; HIGH Tone = 1728; CODE = 7; HIGH NULL; END CASE; END PROCESS;END
56、;在源程序中 Index 是音樂節(jié)拍發(fā)生器輸出的音符數(shù)據(jù);TONE 是為數(shù)控分頻模塊提供的音符頻率的初始值,為方便測試,特設(shè)置了一個音名代碼顯示輸出CODE 和音高指示信號 HUGH 可以通過數(shù)碼管或 LED 來顯示樂曲演奏時對應(yīng)的音符和高音名。CODE 輸出對應(yīng)該音階簡譜的顯示數(shù)碼 1,HIGH 輸出為高電平,指示音階為高,HIGH 輸出為低電平時,則指示音階為中音。低音時,Tone 值小,分頻比大,進(jìn)位信號 SPKS 的周期長。仿真波形如下:沈陽工程學(xué)院課程設(shè)計(論文)- -16圖 3.5 音符譯碼器的仿真輸出波形圖 3.6 音符譯碼器的元件符號圖3.3.3 數(shù)控分頻模塊(Speakera
57、)設(shè)計數(shù)控分頻器對 FPGA 的基準(zhǔn)頻率進(jìn)行分頻,得到與各個音階對應(yīng)的頻率輸出。數(shù)控分頻模塊是 13 位的加法計數(shù)器構(gòu)成。當(dāng)計數(shù)器計滿是,產(chǎn)生一個進(jìn)位信號FULLSPKS,該信號就是用作發(fā)音的頻率信號。在即使器的預(yù)置端給定不同的初始值,其輸出將產(chǎn)生不同的頻率信號,頻率信號初值 Tone 就是前級音符譯碼電路的輸出。低音時,Tone 值小,分頻比大,進(jìn)位信號 SPKS 的周期長,揚(yáng)聲器發(fā)出的聲音低,Tone 隨音樂的樂譜而變化,自動控制分頻比,從而實(shí)現(xiàn)數(shù)控分頻,發(fā)生信號的頻率與 Tone 成正比,這就是利用數(shù)控分頻器演奏音樂的原理。通過分頻后其進(jìn)位信號 FULLSPJKS 是一周期脈沖信號,為有
58、利于驅(qū)動揚(yáng)聲器,在音調(diào)輸出時再進(jìn)行 2 分頻,將脈沖展寬,使之占空比為 50%,揚(yáng)聲器這樣就有足夠的發(fā)聲功率。其 VHDL 源程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY Speakera IS沈陽工程學(xué)院課程設(shè)計(論文)- -17 PORT ( clk : IN STD_LOGIC; Tone : IN INTEGER RANGE 0 TO 16#1FFF#; SpkS : OUT STD_LOGIC );END;ARCHITECTURE one OF Speakera IS SIGNAL PreCLK : STD_LOGIC; S
59、IGNAL FullSpkS : STD_LOGIC;BEGIN DivideCLK : PROCESS(clk) VARIABLE Count4 : INTEGER RANGE 0 TO 15; BEGIN PreCLK 11 THEN PreCLK = 1; Count4 := 0; ELSIF clkEVENT AND clk = 1 THEN Count4 := Count4 + 1; END IF; END PROCESS; GenSpkS : PROCESS(PreCLK, Tone) VARIABLE Count13: INTEGER RANGE 0 TO 16#1FFF#;BE
60、GIN - 13 位可預(yù)置計數(shù)器 IF PreCLKEVENT AND PreCLK = 1 THEN IF Count13 = 16#1FFF# THEN Count13 := Tone; FullSpkS = 1; ELSE Count13 := Count13 + 1; FullSpkS = 0; END IF; END IF; END PROCESS; DelaySpkS : PROCESS(FullSpkS) VARIABLE Count2 : STD_LOGIC;BEGIN - 將輸出再進(jìn)行 2 分頻,將脈沖展寬,以使揚(yáng)聲器有足夠沈陽工程學(xué)院課程設(shè)計(論文)- -18功率發(fā)音 IF
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球溫濕度氣候試驗(yàn)箱行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國光學(xué)有機(jī)硅膠行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球電子母豬喂料器行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國熟食冷藏展示柜行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 房屋地基買賣合同
- 2025合同模板出國勞務(wù)合同范本
- 2025房屋借款合同范本
- 2025北京市前期物業(yè)服務(wù)合同模板
- 剪輯師聘用合同資訊
- 提升殘疾人的信息獲取與溝通能力
- 跨學(xué)科主題學(xué)習(xí)2-探索太空逐夢航天 說課稿-2024-2025學(xué)年粵人版地理七年級上冊
- 電力儲能用集裝箱技術(shù)規(guī)范
- PDCA提高患者自備口服藥物正確堅持服用落實(shí)率
- 上海石油化工股份有限公司6181乙二醇裝置爆炸事故調(diào)查報告
- 家譜人物簡介(優(yōu)選12篇)
- 品管部崗位職責(zé)20篇
- 2023年中智集團(tuán)下屬中智股份公司招聘筆試題庫及答案解析
- GA 1409-2017警用服飾硬式肩章
- 小兒垂釣 (課件)(14張)
- 嘉吉樂恩貝1-FarLactation課件
- 激光拉曼光譜技術(shù)課件
評論
0/150
提交評論