




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
EDA設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)課程論文題目基于verilog的音樂盒設(shè)計(jì)學(xué)院通信學(xué)院專業(yè)班級(jí)通信111學(xué)生姓名指導(dǎo)教師摘要使用VerilogHDL設(shè)計(jì)樂曲演奏電路,系統(tǒng)實(shí)現(xiàn)是用硬件描述語言VerilogHDL按分頻控制的方式進(jìn)行設(shè)計(jì),然后進(jìn)行編程、時(shí)序仿真、電路功能驗(yàn)證,奏出美妙的樂曲。通過控制輸出到蜂鳴器的激勵(lì)信號(hào)頻率的高低和持續(xù)的時(shí)間,從而使揚(yáng)聲器發(fā)出連續(xù)的樂曲聲,且當(dāng)樂曲演奏完成時(shí),保證能自動(dòng)從頭開始演奏。關(guān)鍵詞:VerilogHDL;蜂鳴器;時(shí)序仿真AbstractUsingVerilogHDLmusicplayingcircuitdesign,systemimplementationistouseVeriloghardwaredescriptionlanguageHDLdesignaccordingtocontrolbymeansoffrequencydivision,thencarriesontheprogramming,sequentialsimulation,circuitfunctionverification,playthewonderfulmusic.Bycontrollingtheoutputtothespeakerofthediscretionoftheexcitationsignalfrequencyandduration,whichmakesthespeakersendsoutthecontinuousmusic,andwhenthemusicplayingiscomplete,ensurethatcanautomaticallyplayfromtheverybeginning.Keywords:VerilogHDL;Ensure;Sequentialsimulation目錄摘要 IAbstract II目錄 III第1章緒論 11.課程設(shè)計(jì)目的: 12.課程設(shè)計(jì)要求: 13.該方案可以實(shí)現(xiàn)的功能: 1第2章應(yīng)用工具介紹 22.1EDA技術(shù)介紹 22.2VerilogHDL語言介紹 2第3章基本原理 43.1音調(diào)的控制 43.2音長(zhǎng)的控制 5第4章方案實(shí)現(xiàn) 7第5章方案測(cè)試 20第6章引腳鎖定 23第7章引腳鎖定后下載程序 24參考文獻(xiàn) 25EDA設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)論文PAGEXXIX第1章緒論1.課程設(shè)計(jì)目的:1)加深對(duì)EDA技術(shù)的理解,掌握樂曲演奏電路的工作原理2)了解怎樣控制音調(diào)的高低變化和音長(zhǎng),從而完成樂曲的自動(dòng)循環(huán)演奏。3)培養(yǎng)自主學(xué)習(xí)、正確分析和解決問題的能力2.課程設(shè)計(jì)要求: 1)使用VerilogHDL設(shè)計(jì)樂曲演奏電路,系統(tǒng)實(shí)現(xiàn)是用硬件描述語言VerilogHDL按分頻控制的方式進(jìn)行設(shè)計(jì),然后進(jìn)行編程、時(shí)序仿真、電路功能驗(yàn)證,奏出美妙的樂曲。2)通過控制輸出到揚(yáng)聲器的激勵(lì)信號(hào)頻率的高低和持續(xù)的時(shí)間,從而使揚(yáng)聲器發(fā)出連續(xù)的樂曲聲,且當(dāng)樂曲演奏完成時(shí),保證能自動(dòng)從頭開始演奏。3.該方案可以實(shí)現(xiàn)的功能:1)通過蜂鳴器播放音樂;2)通過一個(gè)開關(guān)實(shí)現(xiàn)兩首樂曲的切換;3)在音樂播放的同時(shí),會(huì)有l(wèi)ed流水燈的閃爍.第2章應(yīng)用工具介紹作為當(dāng)今最流行的計(jì)算機(jī)軟件系統(tǒng),EDA技術(shù)是以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理及智能化技術(shù)的最新成果,進(jìn)行電子產(chǎn)品的自動(dòng)設(shè)計(jì)。EDA可提供文本輸入以及圖形編輯的方法將設(shè)計(jì)者的意圖用程序或者圖形方式表達(dá)出來,而我們經(jīng)常用到的VHDL語言便是用于編寫源程序所需的最常見的硬件描述語言(HDL)之一。2.1EDA技術(shù)介紹EDA是電子設(shè)計(jì)自動(dòng)化(ElectronicDesignAutomation)的縮寫,在20世紀(jì)90年代初從計(jì)算機(jī)輔助設(shè)計(jì)(CAD)、計(jì)算機(jī)輔助制造(CAM)、計(jì)算機(jī)輔助測(cè)試(CAT)和計(jì)算機(jī)輔助工程(CAE)的概念發(fā)展而來。EDA技術(shù)是在電子CAD技術(shù)基礎(chǔ)上發(fā)展起來的計(jì)算機(jī)軟件系統(tǒng),是指以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理及智能化技術(shù)的最新成果,進(jìn)行電子產(chǎn)品的自動(dòng)設(shè)計(jì)[1]。EDA技術(shù)就是以計(jì)算機(jī)為工具,設(shè)計(jì)者在EDA軟件平臺(tái)上,用硬件描述語言HDL完成設(shè)計(jì)文件,然后由計(jì)算機(jī)自動(dòng)地完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局、布線和仿真,直至對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。典型的EDA工具中必須包含兩個(gè)特殊的軟件包,即綜合器和適配器。綜合器的功能就是將設(shè)計(jì)者在EDA平臺(tái)上完成的針對(duì)某個(gè)系統(tǒng)項(xiàng)目的HDL、原理圖或狀態(tài)圖形描述,針對(duì)給定的硬件系統(tǒng)組件,進(jìn)行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得我們欲實(shí)現(xiàn)功能的描述文件。綜合器在工作前,必須給定所要實(shí)現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬件結(jié)構(gòu)用一定的方式聯(lián)系起來。也就是說,綜合器是軟件描述與硬件實(shí)現(xiàn)的一座橋梁。綜合過程就是將電路的高級(jí)語言描述轉(zhuǎn)換低級(jí)的、可與目標(biāo)器件FPGA/CPLD相映射的網(wǎng)表文件。
在今天,EDA技術(shù)已經(jīng)成為電子設(shè)計(jì)的普遍工具,無論設(shè)計(jì)芯片還是設(shè)計(jì)系統(tǒng),沒有EDA工具的支持,都是難以完成的。EDA工具已經(jīng)成為設(shè)計(jì)師必不可少的武器,起著越來越重要的作用。從目前的EDA技術(shù)來看,其發(fā)展趨勢(shì)是政府重視、使用普及、應(yīng)用廣泛、工具多樣、軟件功能強(qiáng)大。EDA技術(shù)發(fā)展迅猛,完全可以用日新月異來描述。EDA技術(shù)的應(yīng)用廣泛,現(xiàn)在已涉及到各行各業(yè)。EDA水平不斷提高,設(shè)計(jì)工具趨于完美的地步。2.2VerilogHDL語言介紹VerilogHDL是一種硬件描述語言,用于從算法級(jí)、門級(jí)到開關(guān)級(jí)的多種抽象設(shè)計(jì)層次的數(shù)字系統(tǒng)建模。被建模的數(shù)字系統(tǒng)對(duì)象的復(fù)雜性可以介于簡(jiǎn)單的門和完整的電子數(shù)字系統(tǒng)之間。數(shù)字系統(tǒng)能夠按層次描述,并可在相同描述中顯式地進(jìn)行時(shí)序建模[2]。作為一種通用化的硬件描述語言,VerilogHDL語言具有下述描述能力:設(shè)計(jì)的行為特性、設(shè)計(jì)的數(shù)據(jù)流特性、設(shè)計(jì)的結(jié)構(gòu)組成以及包含響應(yīng)監(jiān)控和設(shè)計(jì)驗(yàn)證方面的時(shí)延和波形產(chǎn)生機(jī)制。所有這些都使用同一種建模語言。此外,VerilogHDL語言提供了編程語言接口,通過該接口可以在模擬、驗(yàn)證期間從設(shè)計(jì)外部訪問設(shè)計(jì),包括模擬的具體控制和運(yùn)行[3]。VerilogHDL語言不僅定義了語法,而且對(duì)每個(gè)語法結(jié)構(gòu)都定義了清晰的模擬、仿真語義。因此,用這種語言編寫的模型能夠使用Verilog仿真器進(jìn)行驗(yàn)證。語言從C編程語言中繼承了多種操作符和結(jié)構(gòu)。VerilogHDL提供了擴(kuò)展的建模能力,其中許多擴(kuò)展最初很難理解。但是,VerilogHDL語言的核心子集非常易于學(xué)習(xí)和使用,這對(duì)大多數(shù)建模應(yīng)用來說已經(jīng)足夠。當(dāng)然,完整的硬件描述語句足以對(duì)從最復(fù)雜的芯片到完整的電子系統(tǒng)進(jìn)行描述。VerilogHDL語言已經(jīng)成為一種標(biāo)準(zhǔn)的硬件描述語言。它具有以下特點(diǎn):(1)作為一種多用途的硬件描述語言,它具有很好的易學(xué)性和易用性。(2)VerilogHDL語言允許在同一個(gè)模塊中進(jìn)行不同抽象層次的描述。(3)大多數(shù)邏輯綜合工具都支持VerilogHDL,使得它成為設(shè)計(jì)人員的一個(gè)很好的選擇。(4)所有的制造廠商都提供了VerilogHDL的工藝庫,用以支持仿真。(5)VerilogHDL的程序語言接口擁有強(qiáng)大的功能,允許用戶用C語言對(duì)內(nèi)部數(shù)據(jù)結(jié)構(gòu)進(jìn)行描述[3]。正是以上優(yōu)點(diǎn),使得VerilogHDL語言廣泛流行。下面是verilog的設(shè)計(jì)流程第3章基本原理樂曲演奏的原理是這樣的:組成樂曲的每個(gè)音符的頻率值(音調(diào))及其持續(xù)的時(shí)間(音長(zhǎng))是樂曲能連續(xù)演奏所需的兩個(gè)基本數(shù)據(jù),因此只要控制輸出到揚(yáng)聲器的激勵(lì)信號(hào)頻率的高低和持續(xù)的時(shí)間,就可以使揚(yáng)聲器發(fā)出連續(xù)的樂曲聲[4]。3.1音調(diào)的控制頻率的高低決定了音調(diào)的高低。音樂的十二平均率規(guī)定:每?jī)蓚€(gè)8度音(如簡(jiǎn)譜中的中音1與高音1)之間的頻率相差一倍。在兩個(gè)8度音之間,又可分為12個(gè)半音,每?jī)蓚€(gè)半音的頻率比為12√2。
另外,音名A(簡(jiǎn)譜中的低音6)的頻率為440Hz,音名B到C之間、E到F之間為半音,其余為全音[4]。由此可以計(jì)算出簡(jiǎn)譜中從低音1至高音1之間每個(gè)音名對(duì)應(yīng)的頻率,如表3.11所示:表3.11簡(jiǎn)譜中的音名與頻率的關(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所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻率分頻得到的。由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將計(jì)算得到的分頻數(shù)四舍五入取整。若基準(zhǔn)頻率過低,則由于分頻比太小,四舍五入取整后的誤差較大;若基準(zhǔn)頻率過高,雖然誤差變小,但分頻數(shù)將變大。實(shí)際的設(shè)計(jì)綜合考慮這兩方面的因素,在盡量減小頻率誤差的前提下取合適的基準(zhǔn)頻率[4]。本例中選取6MHz為基準(zhǔn)頻率。若無6MHz的基準(zhǔn)頻率,則可以先分頻得到6MHz,或換一個(gè)新的基準(zhǔn)頻率。實(shí)際上,只要各個(gè)音名間的相對(duì)頻率關(guān)系不變,演奏出的樂曲聽起來都不會(huì)"走調(diào)"。本例需要演奏的是梁祝樂曲,該樂曲各音階頻率及相應(yīng)的分頻比如表2所示。為了減小輸出的偶次諧波分量,最后輸出到揚(yáng)聲器的波形應(yīng)為對(duì)稱方波,因此在到達(dá)揚(yáng)聲器之前,有一個(gè)二分頻的分頻器。表2中的分頻比就是從6MHz頻率二分頻得到的3MHz頻率基礎(chǔ)上計(jì)算得出的。由于最大的分頻系數(shù)為9102,故采用14位二進(jìn)制計(jì)數(shù)器分頻可滿足需要。在表2中,除給出了分頻比以外,還給出了對(duì)應(yīng)于各個(gè)音階頻率時(shí)計(jì)數(shù)器不同的預(yù)置數(shù)。對(duì)于不同的分頻系數(shù),只要加載不同的預(yù)置數(shù)即可。采用加載預(yù)置數(shù)實(shí)現(xiàn)分頻的方法比采用反饋復(fù)零法節(jié)省資源,實(shí)現(xiàn)起來也容易一些,如表3.12所示:表3.12各音階頻率對(duì)應(yīng)的分頻比及預(yù)置數(shù)音名分頻比預(yù)置數(shù)音名分頻比預(yù)置數(shù)低音391027281中音2511111272低音576538730中音3455211831低音668189565中音5382712556低音7607310310中音6340912974中音1573610647高音1286713516此外,對(duì)于樂曲中的休止符,只要將分頻系數(shù)設(shè)為0,即初始值為2141=16383即可,此時(shí)揚(yáng)聲器將不會(huì)發(fā)聲。3.2音長(zhǎng)的控制音符的持續(xù)時(shí)間必須根據(jù)樂曲的速度及每個(gè)音符的節(jié)拍數(shù)來確定。本例演奏的梁祝片段,最短的音符為4分音符,如果將全音符的持續(xù)時(shí)間設(shè)為1s的話,則只需要再提供一個(gè)4Hz的時(shí)鐘頻率即可產(chǎn)生4分音符的時(shí)長(zhǎng)[4]。樂譜產(chǎn)生電路用來控制音樂的音調(diào)和音長(zhǎng)。控制音調(diào)通過設(shè)置計(jì)數(shù)器的預(yù)置數(shù)來實(shí)現(xiàn),預(yù)置不同的數(shù)值可以使計(jì)數(shù)器產(chǎn)生不同頻率的信號(hào),從而產(chǎn)生不同的音調(diào)??刂埔糸L(zhǎng)是通過控制計(jì)數(shù)器預(yù)置數(shù)的停留時(shí)間來實(shí)現(xiàn)的,預(yù)置數(shù)停留的時(shí)間越長(zhǎng),則該音符演奏的時(shí)間越長(zhǎng)。每個(gè)音符的演奏時(shí)間都是0.25s的整數(shù)倍,對(duì)于節(jié)拍較長(zhǎng)的音符,如2分音符,在記譜時(shí)將該音名連續(xù)記錄兩次即可。音名顯示電路用來顯示樂曲演奏時(shí)對(duì)應(yīng)的音符??梢杂?個(gè)數(shù)碼管,分別顯示高、中、低音的音名,實(shí)現(xiàn)演奏的動(dòng)態(tài)顯示,十分直觀。在本例中,high[3:0]、med[3:0]、low[3:0]等信號(hào)分別用于顯示高音、中音、低音音符。為了使演奏能循環(huán)進(jìn)行,需另外設(shè)置一個(gè)時(shí)長(zhǎng)計(jì)數(shù)器,當(dāng)樂曲演奏完成時(shí),保證能自動(dòng)從頭開始演奏。第4章方案實(shí)現(xiàn)由系統(tǒng)框圖可以看到本方案分成8個(gè)模塊。1)48MHz分頻成12MHz波形分頻器,源代碼和頂層模塊如下//48mhz分成12mhz的分頻模塊modulediv_clk12mhz(clk_48mhz,clk_12mhz);inputclk_48mhz;outputclk_12mhz;regclk_12mhz;reg[21:0]cnt;always@(posedgeclk_48mhz)if(cnt<1)cnt=cnt+1;//(48mhz/12mhz=4,cnt<[4/2-1=1])elsebegincnt=0;clk_12mhz=!clk_12mhz;endendmodule2)12MHz分頻成6MHz波形分頻器,源代碼和頂層模塊如下://12mhz分成6mhz的分頻模塊,提供給song模塊modulediv_clk6mhz(clk_12mhz,clk_6mhz);inputclk_12mhz;outputclk_6mhz;regclk_6mhz;regcnt;always@(posedgeclk_12mhz)clk_6mhz=!clk_6mhz;endmodule 3)12MHz分頻成4Hz波形分頻器,源代碼和頂層模塊如下://12mhz分成4hz的分頻模塊,提供給song模塊modulediv_clk4hz(clk_12mhz,clk_4hz);inputclk_12mhz;outputclk_4hz;regclk_4hz;reg[21:0]cnt;always@(posedgeclk_12mhz)if(cnt<1499999)cnt=cnt+1;//(12mhz/4hz=3000000,cnt<[3000000/2-1=1499999])elsebegincnt=0;clk_4hz=!clk_4hz;endendmodule4)12MHz分頻成1mhz波形分頻器,源代碼和頂層模塊如下://12mhz分成1mhz的分頻模塊,提供給quma模塊modulediv_clk1mhz(clk_12mhz,clk_1mhz);inputclk_12mhz;outputclk_1mhz;regclk_1mhz;reg[21:0]cnt;always@(posedgeclk_12mhz)if(cnt<5)cnt=cnt+1;//(12mhz/1mhz=12,cnt<[12/2-1=5])elsebegincnt=0;clk_1mhz=!clk_1mhz;endendmodule
5)12MHz分頻成1khz波形分頻器,源代碼和頂層模塊如下://12mhz分成1khz的分頻模塊,提供給quma模塊modulediv_clk1khz(clk_12mhz,clk_1khz);inputclk_12mhz;outputclk_1khz;regclk_1khz;reg[21:0]cnt;always@(posedgeclk_12mhz)if(cnt<5999)cnt=cnt+1;//(12mhz/1khz=12000,cnt<[12000/2-1=5999])elsebegincnt=0;clk_1khz=!clk_1khz;endendmodule6)song模塊源代碼和頂層模塊如下://音樂產(chǎn)生模塊modulesong(clk_6mhz,clk_4hz,speaker,high,med,low,k);//模塊名為song(端口列表)inputclk_6mhz,clk_4hz;inputk;//定義兩個(gè)輸入端口outputspeaker;//定義一個(gè)輸出端口output[3:0]high,med,low;reg[3:0]high,med,low;//定義了3個(gè)4位寄存器reg[13:0]divider,origin;//定義了2個(gè)14位寄存器reg[9:0]counter;//定義了1個(gè)10位寄存器regspeaker;wirecarry;assigncarry=(divider==16383);//連續(xù)賦值語句always@(posedgeclk_6mhz)beginif(carry)divider<=origin;elsedivider<=divider+1;endalways@(posedgecarry)beginspeaker<=~speaker;end//二分頻產(chǎn)生方波信號(hào)always@(posedgeclk_4hz)begincase({high,med,low})//分頻比預(yù)置'b000000000011:origin<=7281;//低音3'b000000000101:origin<=8730;//低音5'b000000000110:origin<=9565;//低音6'b000000000111:origin<=10310;//低音7'b000000010000:origin<=10647;//中音1'b000000100000:origin<=11272;//中音2'b000000110000:origin<=11831;//中音3'b000001010000:origin<=12556;//中音5'b000001100000:origin<=12974;//中音6'b000001110000:origin<=13347;//中音7'b000100000000:origin<=13516;//高音1'b000000000000:origin<=16383;//休止符endcase endalways@(posedgeclk_4hz)if(k==0)beginif(counter==149)counter<=0;//計(jì)時(shí),以實(shí)現(xiàn)循環(huán)演奏elsecounter<=counter+1;case(counter)//記譜0:{high,med,low}<='b000000000011;//低音"3"1:{high,med,low}<='b000000000011;//持續(xù)4個(gè)時(shí)鐘節(jié)拍2:{high,med,low}<='b000000000011;3:{high,med,low}<='b000000000011;4:{high,med,low}<='b000000000101;//低音"5"5:{high,med,low}<='b000000000101;//發(fā)3個(gè)時(shí)鐘節(jié)拍6:{high,med,low}<='b000000000101;7:{high,med,low}<='b000000000110;//低音"6"8:{high,med,low}<='b000000010000;//中音"1"9:{high,med,low}<='b000000010000;//發(fā)3個(gè)時(shí)鐘節(jié)拍10:{high,med,low}<='b000000010000;11:{high,med,low}<='b000000100000;//中音"2"12:{high,med,low}<='b000000000110;//低音"6"13:{high,med,low}<='b000000010000;//中音"1"14:{high,med,low}<='b000000000101;//低音"5"15:{high,med,low}<='b000000000101;16:{high,med,low}<='b000001010000;//中音"5"17:{high,med,low}<='b000001010000;//發(fā)3個(gè)時(shí)鐘節(jié)拍18:{high,med,low}<='b000001010000;19:{high,med,low}<='b000100000000;//高音"1"20:{high,med,low}<='b000001100000;//中音"6"21:{high,med,low}<='b000001010000;//中音"5"22:{high,med,low}<='b000000110000;//中音"3"23:{high,med,low}<='b000001010000;//中音"5"24:{high,med,low}<='b000000100000;//中音"2"25:{high,med,low}<='b000000100000;//持續(xù)11個(gè)時(shí)鐘節(jié)拍26:{high,med,low}<='b000000100000;27:{high,med,low}<='b000000100000;28:{high,med,low}<='b000000100000;29:{high,med,low}<='b000000100000;30:{high,med,low}<='b000000100000;31:{high,med,low}<='b000000100000;32:{high,med,low}<='b000000100000;33:{high,med,low}<='b000000100000;34:{high,med,low}<='b000000100000;35:{high,med,low}<='b000000110000;//中音"3"36:{high,med,low}<='b000000000111;//低音"7"37:{high,med,low}<='b000000000111;38:{high,med,low}<='b000000000110;//低音"6"39:{high,med,low}<='b000000000110;40:{high,med,low}<='b000000000101;//低音"5"41:{high,med,low}<='b000000000101;42:{high,med,low}<='b000000000101;43:{high,med,low}<='b000000000110;//低音"6"44:{high,med,low}<='b000000010000;//中音"1"45:{high,med,low}<='b000000010000;46:{high,med,low}<='b000000100000;//中音"2"47:{high,med,low}<='b000000100000;48:{high,med,low}<='b000000000011;//低音"3"49:{high,med,low}<='b000000000011;50:{high,med,low}<='b000000010000;//中音"1"51:{high,med,low}<='b000000010000;52:{high,med,low}<='b000000000110;//低音"6"53:{high,med,low}<='b000000000101;//低音"5"54:{high,med,low}<='b000000000110;//低音"6"55:{high,med,low}<='b000000010000;//中音"1"56:{high,med,low}<='b000000000101;//低音"5"57:{high,med,low}<='b000000000101;//持續(xù)8個(gè)時(shí)鐘節(jié)拍58:{high,med,low}<='b000000000101;59:{high,med,low}<='b000000000101;60:{high,med,low}<='b000000000101;61:{high,med,low}<='b000000000101;62:{high,med,low}<='b000000000101;63:{high,med,low}<='b000000000101;64:{high,med,low}<='b000000110000;//中音"3"65:{high,med,low}<='b000000110000;//發(fā)3個(gè)時(shí)鐘節(jié)拍66:{high,med,low}<='b000000110000;67:{high,med,low}<='b000001010000;//中音"5"68:{high,med,low}<='b000000000111;//低音"7"69:{high,med,low}<='b000000000111;70:{high,med,low}<='b000000100000;//中音"2"71:{high,med,low}<='b000000100000;72:{high,med,low}<='b000000000110;//低音"6"73:{high,med,low}<='b000000010000;//中音"1"74:{high,med,low}<='b000000000101;//低音"5"75:{high,med,low}<='b000000000101;//持續(xù)4個(gè)時(shí)鐘節(jié)拍76:{high,med,low}<='b000000000101;77:{high,med,low}<='b000000000101;78:{high,med,low}<='b000000000000;//休止符79:{high,med,low}<='b000000000000;80:{high,med,low}<='b000000000011;//低音"3"81:{high,med,low}<='b000000000101;//低音"5"82:{high,med,low}<='b000000000101;83:{high,med,low}<='b000000000011;//低音"3"84:{high,med,low}<='b000000000101;//低音"5"85:{high,med,low}<='b000000000110;//低音"6"86:{high,med,low}<='b000000000111;//低音"7"87:{high,med,low}<='b000000100000;//中音"2"88:{high,med,low}<='b000000000110;//低音"6"89:{high,med,low}<='b000000000110;//持續(xù)6個(gè)時(shí)鐘節(jié)拍90:{high,med,low}<='b000000000110;91:{high,med,low}<='b000000000110;92:{high,med,low}<='b000000000110;93:{high,med,low}<='b000000000110;94:{high,med,low}<='b000000000101;//低音"5"95:{high,med,low}<='b000000000110;//低音"6"96:{high,med,low}<='b000000010000;//中音"1"97:{high,med,low}<='b000000010000;//發(fā)3個(gè)時(shí)鐘節(jié)拍98:{high,med,low}<='b000000010000;99:{high,med,low}<='b000000100000;//中音"2"100:{high,med,low}<='b000001010000;//中音"5"101:{high,med,low}<='b000001010000;102:{high,med,low}<='b000000110000;//中音"3"103:{high,med,low}<='b000000110000;104:{high,med,low}<='b000000100000;//中音"2"105:{high,med,low}<='b000000100000;106:{high,med,low}<='b000000110000;//中音"3"107:{high,med,low}<='b000000100000;//中音"2"108:{high,med,low}<='b000000010000;//中音"1"109:{high,med,low}<='b000000010000;110:{high,med,low}<='b000000000110;//低音"6"111:{high,med,low}<='b000000000101;//低音"5"112:{high,med,low}<='b000000000011;//低音"3"113:{high,med,low}<='b000000000011;//持續(xù)4個(gè)時(shí)鐘節(jié)拍114:{high,med,low}<='b000000000011;115:{high,med,low}<='b000000000011;116:{high,med,low}<='b000000010000;//中音"1"117:{high,med,low}<='b000000010000;//持續(xù)4個(gè)時(shí)鐘節(jié)拍118:{high,med,low}<='b000000010000;119:{high,med,low}<='b000000010000;120:{high,med,low}<='b000000000110;//低音"6"121:{high,med,low}<='b000000010000;//中音"1"122:{high,med,low}<='b000000000110;//低音"6"123:{high,med,low}<='b000000000101;//低音"5"124:{high,med,low}<='b000000000011;//低音"3"125:{high,med,low}<='b000000000101;//低音"5"126:{high,med,low}<='b000000000110;//低音"6"127:{high,med,low}<='b000000010000;//中音"1"128:{high,med,low}<='b000000000101;//低音"5"129:{high,med,low}<='b000000000101;//持續(xù)6個(gè)時(shí)鐘節(jié)拍130:{high,med,low}<='b000000000101;131:{high,med,low}<='b000000000101;132:{high,med,low}<='b000000000101;133:{high,med,low}<='b000000000101;134:{high,med,low}<='b000000110000;//中音"3"135:{high,med,low}<='b000001010000;//中音"5"136:{high,med,low}<='b000000100000;//中音"2"137:{high,med,low}<='b000000110000;//中音"3"138:{high,med,low}<='b000000100000;//中音"2"139:{high,med,low}<='b000000010000;//中音"1"140:{high,med,low}<='b000000000111;//低音"7"141:{high,med,low}<='b000000000111;142:{high,med,low}<='b000000000110;//低音"6"143:{high,med,low}<='b000000000110;144:{high,med,low}<='b000000000101;//低音"5"145:{high,med,low}<='b000000000101;//持續(xù)8個(gè)時(shí)鐘節(jié)拍146:{high,med,low}<='b000000000101;147:{high,med,low}<='b000000000101;148:{high,med,low}<='b000000000101;149:{high,med,low}<='b000000000101;endcaseendelseif(k==1)beginif(counter==149)counter<=0;//計(jì)時(shí),以實(shí)現(xiàn)循環(huán)演奏elsecounter<=counter+1;case(counter)//記譜0:{high,med,low}<='b000000110000;//中音"3"1:{high,med,low}<='b000000110000;//持續(xù)2個(gè)時(shí)鐘節(jié)拍2:{high,med,low}<='b000000100000;//中音23:{high,med,low}<='b000000100000;//持續(xù)2個(gè)時(shí)鐘節(jié)拍4:{high,med,low}<='b000000110000;//中音"3"5:{high,med,low}<='b000000110000;//發(fā)10個(gè)時(shí)鐘節(jié)拍6:{high,med,low}<='b000000110000;7:{high,med,low}<='b000000110000;8:{high,med,low}<='b000000110000;9:{high,med,low}<='b000000110000;10:{high,med,low}<='b000000110000;11:{high,med,low}<='b000000110000;12:{high,med,low}<='b000000110000;13:{high,med,low}<='b000000110000;14:{high,med,low}<='b000000100000;//中音215:{high,med,low}<='b000000100000;//持續(xù)2個(gè)時(shí)鐘節(jié)拍16:{high,med,low}<='b000000110000;//中音"3"17:{high,med,low}<='b000000110000;//發(fā)2個(gè)時(shí)鐘節(jié)拍18:{high,med,low}<='b000000100000;//中音219:{high,med,low}<='b000000100000;//中音220:{high,med,low}<='b000000010000;//中音"1"21:{high,med,low}<='b000000010000;22:{high,med,low}<='b000000010000;23:{high,med,low}<='b000000010000;24:{high,med,low}<='b000000010000;25:{high,med,low}<='b000000010000;26:{high,med,low}<='b000000010000;27:{high,med,low}<='b000000010000;28:{high,med,low}<='b000000010000;29:{high,med,low}<='b000000010000;30:{high,med,low}<='b000000010000;31:{high,med,low}<='b000000010000;32:{high,med,low}<='b000000000110;//低633:{high,med,low}<='b000000000110;34:{high,med,low}<='b000000010000;//中音"1"35:{high,med,low}<='b000000010000;36:{high,med,low}<='b000000100000;//中2有6個(gè)37:{high,med,low}<='b000000100000;38:{high,med,low}<='b000000100000;39:{high,med,low}<='b000000100000;40:{high,med,low}<='b000000100000;41:{high,med,low}<='b000000100000;42:{high,med,low}<='b000000110000;//中音343:{high,med,low}<='b000000110000;44:{high,med,low}<='b000000100000;//中音"2"45:{high,med,low}<='b000000100000;46:{high,med,low}<='b000000010000;//中音"1"47:{high,med,low}<='b000000010000;48:{high,med,low}<='b000000000110;//低音"6"49:{high,med,low}<='b000000000110;50:{high,med,low}<='b000000010000;//中音"1"51:{high,med,low}<='b000000010000;52:{high,med,low}<='b000000000101;//低音"5"53:{high,med,low}<='b000000000101;//低音"5"54:{high,med,low}<='b000000000101;55:{high,med,low}<='b000000000101;56:{high,med,low}<='b000000000101;//低音"5"57:{high,med,low}<='b000000000101;58:{high,med,low}<='b000000000101;59:{high,med,low}<='b000000000101;60:{high,med,low}<='b000000000101;61:{high,med,low}<='b000000000101;62:{high,med,low}<='b000000000101;63:{high,med,low}<='b000000000101;64:{high,med,low}<='b000000000101;65:{high,med,low}<='b000000000101;66:{high,med,low}<='b000000000101;67:{high,med,low}<='b000000000101;68:{high,med,low}<='b000000110000;//中音"3"69:{high,med,low}<='b000000110000;70:{high,med,low}<='b000000100000;//中音"2"71:{high,med,low}<='b000000100000;72:{high,med,low}<='b000000110000;//中音"3"73:{high,med,low}<='b000000110000;//中音"3"74:{high,med,low}<='b000000110000;//中音"3"75:{high,med,low}<='b000000110000;//中音"3"76:{high,med,low}<='b000000110000;//中音"3"77:{high,med,low}<='b000000110000;//中音"3"78:{high,med,low}<='b000000110000;//中音"3"79:{high,med,low}<='b000000110000;//中音"3"80:{high,med,low}<='b000000110000;//中音"3"81:{high,med,low}<='b000000110000;//中音"3"82:{high,med,low}<='b000000100000;//中音"2"83:{high,med,low}<='b000000100000;84:{high,med,low}<='b000000110000;//中音"3"85:{high,med,low}<='b000000110000;//中音"3"86:{high,med,low}<='b000000100000;//中音"2"87:{high,med,low}<='b000000100000;//中音"2"88:{high,med,low}<='b000000010000;//中音"1"89:{high,med,low}<='b000000010000;//中音"1"90:{high,med,low}<='b000000010000;//中音"1"91:{high,med,low}<='b000000010000;//中音"1"92:{high,med,low}<='b000000010000;//中音"1"93:{high,med,low}<='b000000010000;//中音"1"94:{high,med,low}<='b000000010000;//中音"1"95:{high,med,low}<='b000000010000;//中音"1"96:{high,med,low}<='b000000010000;//中音"1"97:{high,med,low}<='b000000010000;//中音"1"98:{high,med,low}<='b000000010000;//中音"1"99:{high,med,low}<='b000000010000;//中音"1"100:{high,med,low}<='b000000010000;//中音"1"101:{high,med,low}<='b000000010000;//中音"1"102:{high,med,low}<='b000000010000;//中音"1"103:{high,med,low}<='b000000010000;//中音"1"104:{high,med,low}<='b000000010000;//中音"1"105:{high,med,low}<='b000000000110;//低音"6"106:{high,med,low}<='b000000000110;//低音"6"107:{high,med,low}<='b000000010000;//中音"1"108:{high,med,low}<='b000000010000;//中音"1"109:{high,med,low}<='b000000100000;//中音"2"110:{high,med,low}<='b000000100000;//中音"2"111:{high,med,low}<='b000000100000;//中音"2"112:{high,med,low}<='b000000100000;//中音"2"113:{high,med,low}<='b000000100000;//中音"2"114:{high,med,low}<='b000000100000;//中音"2"115:{high,med,low}<='b000000110000;//中音3116:{high,med,low}<='b000000110000;117:{high,med,low}<='b000000100000;//中音"2"118:{high,med,low}<='b000000100000;119:{high,med,low}<='b000000010000;//中音"1"120:{high,med,low}<='b000000010000;121:{high,med,low}<='b000000000110;//低音"6"122:{high,med,low}<='b000000000110;123:{high,med,low}<='b000000010000;//中音"1"124:{high,med,low}<='b000000010000;125:{high,med,low}<='b000000100000;//中音"2"126:{high,med,low}<='b000000100000;//中音"2"127:{high,med,low}<='b000000100000;//中音"2"128:{high,med,low}<='b000000100000;//中音"2"129:{high,med,low}<='b000000100000;//中音"2"130:{high,med,low}<='b000000100000;//中音"2"131:{high,med,low}<='b000000100000;//中音"2"132:{high,med,low}<='b000000100000;//中音"2"133:{high,med,low}<='b000000100000;//中音"2"134:{high,med,low}<='b000000100000;//中音"2"135:{high,med,low}<='b000000100000;//中音"2"136:{high,med,low}<='b000000100000;//中音"2"137:{high,med,low}<='b000000100000;//中音"2"138:{high,med,low}<='b000000100000;//中音"2"139:{high,med,low}<='b000000100000;//中音"2"140:{high,med,low}<='b000000100000;//中音"2"141:{high,med,low}<='b000000110000;//中音"3"142:{high,med,low}<='b000000110000;//持續(xù)2個(gè)時(shí)鐘節(jié)拍143:{high,med,low}<='b000000100000;//中音2144:{high,med,low}<='b000000100000;//持續(xù)2個(gè)時(shí)鐘節(jié)拍145:{high,med,low}<='b000000110000;//中音"3"146:{high,med,low}<='b000000110000;//發(fā)10個(gè)時(shí)鐘節(jié)拍147:{high,med,low}<='b000000110000;148:{high,med,low}<='b000000110000;149:{high,med,low}<='b000000110000;endcaseendendmodule//模塊結(jié)束7)取碼模塊源代碼和頂層模塊如下://取碼模塊,從song模塊取得數(shù)碼管顯示部分的位碼和段碼modulequma(high,med,low,clk_1mhz,dig,duan);input[3:0]high,med,low;inputclk_1mhz;reg[7:0]dig;output[7:0]dig;//定義輸出八位位碼reg[7:0]duan;output[7:0]duan;//定義用于輸出的段碼的代碼always@(posedgeclk_1mhz)//掃描high,med,low三個(gè)寄存器的值,取出位碼和段碼的代碼beginif(high!=0)//如果high的值不為0,則只輸出high的值begindig<=8'b11111011;case(high)1:duan<=8'b00000001;2:duan<=8'b00000010;3:duan<=8'b00000011;4:duan<=8'b00000100;5:duan<=8'b00000101;6:duan<=8'b00000110;7:duan<=8'b00000111;endcaseendelseif(med!=0)//如果med的值不為0,則只輸出med的值begindig<=8'b11111101;case(med)1:dua
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 老人簡(jiǎn)單康復(fù)護(hù)理
- 結(jié)直腸癌護(hù)理
- 小院買賣定金合同范本
- 血液透析濾過護(hù)理
- 清洗設(shè)備出賣合同范本
- 浙江國(guó)企招聘2024紹興市上虞杭州灣建設(shè)開發(fā)集團(tuán)有限公司招聘1人筆試參考題庫附帶答案詳解
- 2025至2030年中國(guó)扭簧數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 胎心異常護(hù)理
- 中介招商工作流程
- 2025至2030年中國(guó)八角固定窗數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- TD/T 1037-2013 土地整治重大項(xiàng)目可行性研究報(bào)告編制規(guī)程(正式版)
- 2024年時(shí)政試題庫(奪分金卷)
- 2024年江蘇農(nóng)林職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫及答案1套
- 工程項(xiàng)目移交方案
- 高級(jí)英語-第一冊(cè)-課后習(xí)題答案
- 《帶電作業(yè)用絕緣工具試驗(yàn)導(dǎo)則》
- 2024年時(shí)事政治熱點(diǎn)題庫200道附完整答案【必刷】
- 2024年山東信息職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫及答案解析
- 藥材的采收與產(chǎn)地加工
- 江蘇農(nóng)牧科技職業(yè)學(xué)院?jiǎn)握小堵殬I(yè)技能測(cè)試》參考試題庫(含答案)
- 小學(xué)勞動(dòng)教育二年級(jí)下冊(cè)教學(xué)計(jì)劃
評(píng)論
0/150
提交評(píng)論