freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

最新基于verilog的音樂盒設(shè)計(已修改)

2025-07-05 08:25 本頁面
 

【正文】 EDA設(shè)計基礎(chǔ)實驗課程論文題 目 基于verilog的音樂盒設(shè)計 學(xué) 院 通信學(xué)院 專業(yè)班級 通信111 學(xué)生姓名 大彬哥 指導(dǎo)教師 2013年 6月 22日EDA設(shè)計基礎(chǔ)實驗課程論文摘 要使用Verilog HDL設(shè)計樂曲演奏電路,系統(tǒng)實現(xiàn)是用硬件描述語言Verilog HDL按分頻控制的方式進行設(shè)計,然后進行編程、時序仿真、電路功能驗證,奏出美妙的樂曲。通過控制輸出到蜂鳴器的激勵信號頻率的高低和持續(xù)的時間,從而使揚聲器發(fā)出連續(xù)的樂曲聲,且當(dāng)樂曲演奏完成時,保證能自動從頭開始演奏。關(guān)鍵詞:Verilog HDL; 蜂鳴器; 時序仿真AbstractUsing Verilog HDL music playing circuit design, system implementation is to use Verilog hardware description language HDL design according to control by means of frequency division, then carries on the programming, sequential simulation, circuit function verification, play the wonderful music. By controlling the output to the speaker of the discretion of the excitation signal frequency and duration, which makes the speaker sends out the continuous music, and when the music playing is plete, ensure that can automatically play from the very beginning.Keywords: Verilog HDL 。 Ensure 。 Sequential simulation目 錄摘 要 IAbstract II目 錄 III第1章 緒論 1: 1: 1: 1第2章 應(yīng)用工具介紹 2 EDA技術(shù)介紹 2 Verilog HDL語言介紹 2第3章 基本原理 4 4 5第4章 方案實現(xiàn) 7第5章 方案測試 20第6章 引腳鎖定 23第7章 引腳鎖定后下載程序 24參考文獻 2525第1章 緒論:1)加深對EDA技術(shù)的理解,掌握樂曲演奏電路的工作原理2)了解怎樣控制音調(diào)的高低變化和音長,從而完成樂曲的自動循環(huán)演奏。3)培養(yǎng)自主學(xué)習(xí)、正確分析和解決問題的能力 : 1)使用Verilog HDL設(shè)計樂曲演奏電路,系統(tǒng)實現(xiàn)是用硬件描述語言Verilog HDL按分頻控制的方式進行設(shè)計,然后進行編程、時序仿真、電路功能驗證,奏出美妙的樂曲。2) 通過控制輸出到揚聲器的激勵信號頻率的高低和持續(xù)的時間,從而使揚聲器發(fā)出連續(xù)的樂曲聲,且當(dāng)樂曲演奏完成時,保證能自動從頭開始演奏。:1)通過蜂鳴器播放音樂。2)通過一個開關(guān)實現(xiàn)兩首樂曲的切換。3)在音樂播放的同時,會有l(wèi)ed流水燈的閃爍.第2章 應(yīng)用工具介紹作為當(dāng)今最流行的計算機軟件系統(tǒng),EDA技術(shù)是以計算機為工作平臺,融合了應(yīng)用電子技術(shù)、計算機技術(shù)、信息處理及智能化技術(shù)的最新成果,進行電子產(chǎn)品的自動設(shè)計。EDA可提供文本輸入以及圖形編輯的方法將設(shè)計者的意圖用程序或者圖形方式表達出來,而我們經(jīng)常用到的VHDL語言便是用于編寫源程序所需的最常見的硬件描述語言(HDL)之一。 EDA技術(shù)介紹EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀90年代初從計算機輔助設(shè)計(CAD)、計算機輔助制造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發(fā)展而來。EDA技術(shù)是在電子CAD技術(shù)基礎(chǔ)上發(fā)展起來的計算機軟件系統(tǒng),是指以計算機為工作平臺,融合了應(yīng)用電子技術(shù)、計算機技術(shù)、信息處理及智能化技術(shù)的最新成果,進行電子產(chǎn)品的自動設(shè)計[1]。EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言HDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。典型的EDA工具中必須包含兩個特殊的軟件包,即綜合器和適配器。綜合器的功能就是將設(shè)計者在EDA平臺上完成的針對某個系統(tǒng)項目的HDL、原理圖或狀態(tài)圖形描述,針對給定的硬件系統(tǒng)組件,進行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得我們欲實現(xiàn)功能的描述文件。綜合器在工作前,必須給定所要實現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬件結(jié)構(gòu)用一定的方式聯(lián)系起來。也就是說,綜合器是軟件描述與硬件實現(xiàn)的一座橋梁。綜合過程就是將電路的高級語言描述轉(zhuǎn)換低級的、可與目標器件FPGA/CPLD相映射的網(wǎng)表文件。 在今天,EDA技術(shù)已經(jīng)成為電子設(shè)計的普遍工具,無論設(shè)計芯片還是設(shè)計系統(tǒng),沒有EDA工具的支持,都是難以完成的。EDA工具已經(jīng)成為設(shè)計師必不可少的武器,起著越來越重要的作用。從目前的EDA技術(shù)來看,其發(fā)展趨勢是政府重視、使用普及、應(yīng)用廣泛、工具多樣、軟件功能強大。EDA技術(shù)發(fā)展迅猛,完全可以用日新月異來描述。EDA技術(shù)的應(yīng)用廣泛,現(xiàn)在已涉及到各行各業(yè)。EDA水平不斷提高,設(shè)計工具趨于完美的地步。 Verilog HDL語言介紹Verilog HDL是一種硬件描述語言,用于從算法級、門級到開關(guān)級的多種抽象設(shè)計層次的數(shù)字系統(tǒng)建模。被建模的數(shù)字系統(tǒng)對象的復(fù)雜性可以介于簡單的門和完整的電子數(shù)字系統(tǒng)之間。數(shù)字系統(tǒng)能夠按層次描述,并可在相同描述中顯式地進行時序建模[2]。作為一種通用化的硬件描述語言,Verilog HDL語言具有下述描述能力:設(shè)計的行為特性、設(shè)計的數(shù)據(jù)流特性、設(shè)計的結(jié)構(gòu)組成以及包含響應(yīng)監(jiān)控和設(shè)計驗證方面的時延和波形產(chǎn)生機制。所有這些都使用同一種建模語言。此外,Verilog HDL語言提供了編程語言接口,通過該接口可以在模擬、驗證期間從設(shè)計外部訪問設(shè)計,包括模擬的具體控制和運行[3]。Verilog HDL語言不僅定義了語法,而且對每個語法結(jié)構(gòu)都定義了清晰的模擬、仿真語義。因此,用這種語言編寫的模型能夠使用Verilog仿真器進行驗證。語言從C編程語言中繼承了多種操作符和結(jié)構(gòu)。Verilog HDL提供了擴展的建模能力,其中許多擴展最初很難理解。但是,Verilog HDL語言的核心子集非常易于學(xué)習(xí)和使用,這對大多數(shù)建模應(yīng)用來說已經(jīng)足夠。當(dāng)然,完整的硬件描述語句足以對從最復(fù)雜的芯片到完整的電子系統(tǒng)進行描述。Verilog HDL語言已經(jīng)成為一種標準的硬件描述語言。它具有以下特點:(1)作為一種多用途的硬件描述語言,它具有很好的易學(xué)性和易用性。(2)Verilog HDL語言允許在同一個模塊中進行不同抽象層次的描述。(3)大多數(shù)邏輯綜合工具都支持Verilog HDL,使得它成為設(shè)計人員的一個很好的選擇。(4)所有的制造廠商都提供了Verilog HDL的工藝庫,用以支持仿真。(5)Verilog HDL的程序語言接口擁有強大的功能,允許用戶用C語言對內(nèi)部數(shù)據(jù)結(jié)構(gòu)進行描述[3]。正是以上優(yōu)點,使得Verilog HDL語言廣泛流行。下面是verilog的設(shè)計流程第3章 基本原理樂曲演奏的原理是這樣的:組成樂曲的每個音符的頻率值(音調(diào))及其持續(xù)的時間(音長)是樂曲能連續(xù)演奏所需的兩個基本數(shù)據(jù),因此只要控制輸出到揚聲器的激勵信號頻率的高低和持續(xù)的時間,就可以使揚聲器發(fā)出連續(xù)的樂曲聲[4]。頻率的高低決定了音調(diào)的高低。音樂的十二平均率規(guī)定:每兩個8度音(如簡譜中的中音1與高音1)之間的頻率相差一倍。在兩個8度音之間,又可分為12個半音,每兩個半音的頻率比為12√2。另外,音名A(簡譜中的低音6)的頻率為440Hz,音名B到C之間、E到F之間為半音,其余為全音[4]。由此可以計算出簡譜中從低音1至高音1之間每個音名對應(yīng)的頻率,: 簡譜中的音名與頻率的關(guān)系音名頻率/Hz音名頻率/Hz音名頻率/Hz低音1中音1高音1低音2中音2高音2低音3中音3高音3低音4中音4高音4低音5392中音5784高音51568低音6440中音6880高音61760低音7中音7高音7所有不同頻率的信號都是從同一個基準頻率分頻得到的。由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將計算得到的分頻數(shù)四舍五入取整。若基準頻率過低,則由于分頻比太小,四舍五入取整后的誤差較大;若基準頻率過高,雖然誤差變小,但分頻數(shù)將變大。實際的設(shè)計綜合考慮這兩方面的因素,在盡量減小頻率誤差的前提下取合適的基準頻率[4]。本例中選取6MHz為基準頻率。若無6MHz的基準頻率,則可以先分頻得到6MHz,或換一個新的基準頻率。實際上,只要各個音名間的相對頻率關(guān)系不變,演奏出的樂曲聽起來都不會走調(diào)。本例需要演奏的是梁祝樂曲,該樂曲各音階頻率及相應(yīng)的分頻比如表2所示。為了減小輸出的偶次諧波分量,最后輸出到揚聲器的波形應(yīng)為對稱方波,因此在到達揚聲器之前,有一個二分頻的分頻器。表2中的分頻比就是從6MHz頻率二分頻得到的3MHz頻率基礎(chǔ)上計算得出的。由于最大的分頻系數(shù)為9102,故采用14位二進制計數(shù)器分頻可滿足需要。在表2中,除給出了分頻比以外,還給出了對應(yīng)于各個音階頻率時計數(shù)器不同的預(yù)置數(shù)。對于不同的分頻系數(shù),只要加載不同的預(yù)置數(shù)即可。采用加載預(yù)置數(shù)實現(xiàn)分頻的方法比采用反饋復(fù)零法節(jié)省資源,實現(xiàn)起來也容易一些,: 各音階頻率對應(yīng)的分頻比及預(yù)置數(shù)音名分頻比預(yù)置數(shù)音名分頻比預(yù)置數(shù)低音391027281中音2511111272低音576538730中音3455211831低音668189565中音5382712556低音7607310310中音6340912974中音1573610647高音1286713516此外,對于樂曲中的休止符,只要將分頻系數(shù)設(shè)為0,即初始值為2141=16383即可,此時揚聲器將不會發(fā)聲。音符的持續(xù)時間必須根據(jù)樂曲的速度及每個音符的節(jié)拍數(shù)來確定。本例演奏的梁祝片段,最短的音符為4分音符,如果將全音符的持續(xù)時間設(shè)為1s的話,則只需要再提供一個4Hz的時鐘頻率即可產(chǎn)生4分音符的時長[4]。樂譜產(chǎn)生電路用來控制音樂的音調(diào)和音長??刂埔粽{(diào)通過設(shè)置計數(shù)器的預(yù)置數(shù)來實現(xiàn),預(yù)置不同的數(shù)值可以使計數(shù)器產(chǎn)生不同頻率的信號,從而產(chǎn)生不同的音調(diào)??刂埔糸L是通過控制計數(shù)器預(yù)置數(shù)的停留時間來實現(xiàn)的,預(yù)置數(shù)停留的時間越長,則該音符演奏的時間越長。,對于節(jié)拍較長的音符,如2分音符,在記譜時將該音名連續(xù)記錄兩次即可。音名顯示電路用來顯示樂曲演奏時對應(yīng)的音符??梢杂?個數(shù)碼管,分別顯示高、中、低音的音名,實現(xiàn)演奏的動態(tài)顯示,十分直觀。在本例中,high[3:0]、med[3:0]、low[3:0]等信號分別用于顯示高音、中音、低音音符。為了使演奏能循環(huán)進行,需另外設(shè)置一個時長計數(shù)器,當(dāng)樂曲演奏完成時,保證能自動從頭開始演奏。第4章 方案實現(xiàn)由系統(tǒng)框圖可以看到本方案分成8個模塊。1)48MHz分頻成12MHz波形分頻器,源代碼和頂層模塊如下//48mhz分成12mhz的分頻模塊module div_clk12mhz(clk_48mhz,clk_12mhz)。input clk_48mhz。output clk_12mhz。reg clk_12mhz。reg [21:0] t。always @(posedge clk_48mhz)if(t1) t=t+1。 // (48mhz/12mhz=4,t
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1