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

正文內(nèi)容

基于fpga音樂硬件演奏電路設(shè)計(jì)設(shè)計(jì)電路音樂fpga演奏電路電路設(shè)計(jì)硬件演奏硬件電路-文庫吧資料

2024-11-25 21:55本頁面
  

【正文】 的時(shí)鐘脈沖信號(hào)是給數(shù)控分頻模塊提供時(shí)鐘信號(hào)。 在 clk 端輸入一具有 較高頻率的信號(hào)(這里是 12MHz)的信號(hào),通過分頻后由 cout 輸出。 仿真結(jié)果如下圖: 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 18 圖 Speakera 音樂符數(shù)控分頻模塊 波形 仿真 (2) 模 塊功能分析與調(diào)試 Speakera 音樂符數(shù)控分頻此模塊的功能是根據(jù)初始值 Tone 的值,對(duì)輸入時(shí)鐘信號(hào) Clk的頻率進(jìn)行分頻,得到想要的音符的發(fā)聲頻率 其時(shí)鐘( Clk)端輸入的是在十六進(jìn)制模塊里對(duì) 12MHz 的信號(hào)進(jìn)行 16 分頻得到的 750KHz, 750KHz 的信號(hào)根據(jù)分頻預(yù)置數(shù)模塊中所提供的計(jì)數(shù)初值,分別得出相應(yīng)音符頻率的兩倍值。 仿真結(jié)果如下圖: 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 17 圖 分頻預(yù)置數(shù)查表模塊 ToneTaba 波形仿真 (2) 模塊功能分析與調(diào)試 ToneTaba 分頻預(yù)置數(shù) 模塊的功能是輸出各個(gè)音符所對(duì)應(yīng)的分頻預(yù)置數(shù),由上面的仿真波形圖可看到 若 當(dāng) index 是 “0000”, tone 輸出為 2047,即休止符的分頻預(yù)置數(shù);當(dāng) index是 “0101”時(shí) , tone 輸出為 1197 即低音 5 的分頻預(yù)置數(shù);當(dāng) index 是 “1111”時(shí), tone 輸出為1728 即高音 1 的分頻預(yù)置數(shù)等等其它狀態(tài)時(shí), tone 分別輸出相應(yīng)音符的分頻預(yù)置數(shù) , 仿真波形圖證明了程序?qū)崿F(xiàn)了模塊的功能 。 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 16 4 VHDL音樂硬件演奏電路系統(tǒng)仿真與調(diào)試 NoteTabs 音樂節(jié)拍和音調(diào)發(fā)生器模塊的仿真 (1) 波形仿真 將所編寫的音樂節(jié)拍和音調(diào)模塊 NoteTabs 的程序設(shè)為工程,選用 Altera公司的 Cyclone系列中的 EPIC12Q240C8 為目標(biāo)芯片進(jìn)行仿真。 lpm_rom_ponent : lpm_rom GENERIC MAP ( LPM_WIDTH = 4, LPM_WIDTHAD = 8, LPM_ADDRESS_CONTROL = REGISTERED, LPM_OUTDATA = UNREGISTERED, LPM_FILE = G:/MUSIC/SINGER/) PORT MAP ( address = address, inclock = inclock, 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 15 q = sub_wire0)。 END COMPONENT。 inclock : IN STD_LOGIC 。 lpm_file : STRING)。 lpm_address_control : STRING。 COMPONENT lpm_rom GENERIC ( lpm_width : NATURAL。 END music。 inclock : IN STD_LOGIC 。 USE 。 (4) 打開已定制的 ROM 文件 ,將它設(shè)置為工程,并確定目標(biāo)器件,進(jìn)行測試仿真波形 , 按照定制步驟對(duì)音符數(shù)據(jù)文件進(jìn)行 ROM 定制。 (2) 單擊 “next”鍵,選擇 ROM 數(shù)據(jù)位寬度為 4,地址線寬為 256,即設(shè)置此 ROM 能存儲(chǔ) 4 位二進(jìn)制數(shù)據(jù)共 256 個(gè)。文件編輯好后,保存時(shí)取文件名為 “”,存盤的路徑為 “g:\music \ singer”。文件中的關(guān)鍵詞 WIDTH 設(shè)置 ROM 的數(shù)據(jù)寬度; DEPTH 設(shè)置ROM 數(shù)據(jù)的深度,即 4 位數(shù)據(jù)的數(shù)量,文件中設(shè)置的 256 等效于 8 位地址線寬度;ADDRESSRADIX=DEC和 DATARADIX=DEC表示設(shè)置地址和數(shù)據(jù)的表達(dá)式格式都是十進(jìn)制;地址 /數(shù)據(jù)表以 CONTENT BEGIN 開始,以 END 結(jié)束;其中的地址 /數(shù)據(jù)表達(dá)方式是冒號(hào)左邊寫 ROM 地址值,冒號(hào)右邊寫對(duì)應(yīng)此地址放置的十進(jìn)制數(shù)據(jù),如 46: 9,表示46 為地址, 9 為該地址中的數(shù)據(jù)。 形成 ROM 中的配置數(shù)據(jù)(初始化數(shù)據(jù))文件的方法如下:在 QUARTUS||中編輯 .mif文件。 CONTENT BEGIN 3 3 3 3 5 5 5 6 8 8 8 9 6 8 5 5 12 12 12 15 13 12 10 12 9 9 9 9 9 9 9 0 9 9 9 10 7 7 6 6 5 5 5 6 8 8 9 9 3 3 8 8 6 5 6 8 5 5 5 5 5 5 5 5 10 10 10 12 7 7 9 9 6 8 5 5 5 5 5 5 3 5 03 3 5 6 7 9 6 6 6 6 6 6 5 6 8 8 8 9 12 12 12 10 9 9 10 9 8 8 6 5 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 13 3 3 3 3 8 8 8 8 6 8 6 5 3 5 6 8 5 5 5 5 5 5 5 5 0 0 0 0 0 0 0 0 0 5 1 3 5 1 7 3 5 0 5 0 6 7 1 6 6 5 5 0 0 3 2 1 1 1 3 2 1 1 1 2 3 2 1 1 6 2 3 2 1 6 2 3 2 0 0 0 5 2 6 7 1 2 1 0 0 3 5 3 2 1 5 7 0 0 6 7 1 1 1 2 3 2 0 0 0 5 1 3 5 1 7 3 5 5 6 7 1 6 6 5 5 0 3 2 1 1 1 3 2 1 1 1 2 3 0 2 6 7 1 2 其中 WIDTH=4,表示數(shù)據(jù)輸出為寬為 4; DEPTH=256,表示共有 256 個(gè) 4 位數(shù)據(jù)點(diǎn) 。 Address_radix = dec。 樂曲演奏音符數(shù)據(jù)文件(梁祝、月亮代表我的心) WIDTH = 4 。 END PROCESS。 END IF。 ELSE SpkS = 39。 THEN SpkS = 39。 IF Count2 = 39。139。 BEGIN IF FullSpkS39。 END PROCESS。 END IF。 FullSpkS = 39。139。 THEN IF Count11 = 167FF THEN Count11 := Tone 。EVENT AND PreCLK = 39。 GenSpkS : PROCESS(PreCLK, Tone) 11 位可預(yù)置計(jì)數(shù)器 VARIABLE Count11 : STD_LOGIC_VECTOR (10 DOWNTO 0)。 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 12 END IF。139。 ELSIF clk39。139。039。 BEGIN DivideCLK : PROCESS(clk) VARIABLE Count4 : STD_LOGIC_VECTOR (3 DOWNTO 0) 。聲音輸出 END。音調(diào)頻率信號(hào) 12MHZ Tone : IN STD_LOGIC_VECTOR (10 DOWNTO 0)。 USE 。 音符的頻率由數(shù)控分頻模塊 VHDL 程序如下: LIBRARY IEEE。 Fout 的輸出頻率將決定每一個(gè)音符的音調(diào),這樣,分頻計(jì)數(shù)器的預(yù)置值 tone[10..0]與 Fout 的輸出頻率就有了對(duì)應(yīng)關(guān)系。此時(shí)從數(shù)控分頻器中出來的輸出信號(hào)是脈寬極窄的脈沖式信號(hào),為了有利于驅(qū)動(dòng)揚(yáng)聲器,需另加一個(gè) D 觸發(fā)器以均衡其占空比,這時(shí)的頻率就變?yōu)樵瓉淼?1/2,剛好就是相應(yīng)音符的頻率。這就是利用數(shù)控分頻器自動(dòng)演奏音樂的原理。它計(jì)滿時(shí)所需要的計(jì)數(shù)初值可由下式來表示。該計(jì)數(shù)器的模為 2047,當(dāng)計(jì)數(shù)器記滿時(shí),計(jì)數(shù)器產(chǎn)生一個(gè)溢出信號(hào) FULL,此溢出信號(hào)就是用作發(fā)音的頻率信號(hào)。 h B 圖 音樂符數(shù)控 11 分頻電路模塊 RTL電路圖 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 11 (3) 音樂符數(shù)控 11 分頻模塊電路 VHDL 程序設(shè)計(jì) 音符的頻率由數(shù)控分頻模塊獲得,這是一個(gè)數(shù)控分頻電路。 h 1 A d d 11 1 39。 h 0 1 2 39。 END。 END CASE。1728。 HIGH =39。 WHEN 1111 = Tone=11011000000 。139。 CODE=0110。1622。 HIGH =39。 WHEN 1100 = Tone=11001010110 。139。 CODE=0011。1480。 HIGH =39。 WHEN 1001 = Tone=10111001000 。139。 CODE=0001。1372。 HIGH =39。 WHEN 0111 = Tone=10101011100 。039。 CODE=0110。1197。 HIGH =39。 WHEN 0101 = Tone=10010101101 。039。 CODE=0011。 912。 HIGH =39。 WHEN 0010 = Tone=01110010000 。039。 CODE=0001。039。 CODE=0000。音樂符對(duì)應(yīng)分頻 11 位 END。 HIGH : OUT STD_LOGIC。 ENTITY ToneTaba IS PORT ( Index : IN STD_LOGIC_VECTOR (3 DOWNTO 0) 。 分頻預(yù)置數(shù)模塊的 VHDL 設(shè)計(jì)程序如下: LIBRARY IEEE。輸向程序 [4]中 index[3..0]的值又由地址發(fā)生器模塊的輸出 toneindex[3..0]的輸出值和持續(xù)時(shí)間決定。 在這個(gè)模塊的 VHDL 邏輯描述中設(shè)置了四四拍樂曲中全部音符所對(duì)應(yīng)的分頻預(yù)置數(shù),共 13 個(gè),每一音符的停留時(shí)間由音樂節(jié)拍和地址發(fā)生器 模塊的時(shí)鐘( Clk)的輸入頻率決定,在此為 4Hz。 音樂譜對(duì)應(yīng)分頻預(yù)置數(shù)查表電路模塊 (1) 音樂譜分頻預(yù)置數(shù)模塊 基于 FPGA 音樂硬件演奏電路設(shè)計(jì) 9 T on eT ab ain s tInd ex [3. .0] C O D E [3. .0]H IG HT on e[ 10 ..0] 圖 音樂譜分頻預(yù)置數(shù)模塊 (2) 音樂譜對(duì)應(yīng)分頻預(yù)制數(shù)查表電路 VHDL 程序設(shè)計(jì) 音樂譜分頻預(yù)置數(shù)模塊是樂曲簡譜碼對(duì)應(yīng)的分頻預(yù)置數(shù)查表電路。那么相應(yīng)隨著程序 [4]中的計(jì)數(shù)器按 4Hz 的時(shí)鐘頻率作加法計(jì)數(shù)時(shí),即隨地址遞增時(shí),將從音符數(shù)據(jù) ROM 中將連續(xù)取出 4 個(gè)音符 “3”通過 toneindex[3..0]端口輸向分頻預(yù)置數(shù)模塊。 在地址發(fā)生 器的 VHDL 設(shè)計(jì)中,這個(gè)計(jì)數(shù)器的計(jì)數(shù)頻率選為 4Hz,即每一計(jì)數(shù)值的停留時(shí)間為 秒,恰為當(dāng)全音符設(shè)為 1 秒,四四拍的 4 分音符持續(xù)時(shí)間。 (2) 地址發(fā)生器模塊 地址發(fā)生器模塊設(shè)置了一個(gè) 8位二進(jìn)制計(jì)數(shù)器 (計(jì)數(shù)最大值為 256),作為音符數(shù)據(jù) ROM的地址發(fā)生器。 u1 : MUSIC PORT MAP(address=Counter , q=ToneIndex,clock=clk)。 end if。)) THEN Counter =10010000。) and (sel=39。EVENT AND clk = 39。 end if。)) then Counter = 00000000。) and (Counter=256 or rst=39。EVENT AND clk = 39。 SIGNAL Counter : STD_LOGIC_VECTOR (7 DOWNTO 0)。 q : OUT STD_LOGIC_VECTOR (3 DOWNTO 0))。 ARCHITECTURE one OF NoteTabs IS COMPONENT music 音符數(shù)據(jù) ROM1 PORT( address : IN STD_LOGIC_VECTOR (7
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1