【正文】
。 end process。 end if。 end case。 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) when 127=ToneIndex=9。 when 125=ToneIndex=9。 when 123=ToneIndex=9。 when 121=ToneIndex=10。 when 119=ToneIndex=10。 when 117=ToneIndex=7。 when 115=ToneIndex=6。 when 113=ToneIndex=6。 when 111=ToneIndex=8。 when 109=ToneIndex=8。 when 107=ToneIndex=9。 when 105=ToneIndex=11。 when 103=ToneIndex=10。 when 101=ToneIndex=9。 when 99=ToneIndex=8。 when 97=ToneIndex=7。 when 95=ToneIndex=0。 when 93=ToneIndex=11。 when 91=ToneIndex=11。 when 89=ToneIndex=10。 when 87=ToneIndex=9。 when 85=ToneIndex=7。 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) when 83=ToneIndex=6。 when 81=ToneIndex=6。 when 79=ToneIndex=8。 when 77=ToneIndex=8。 when 75=ToneIndex=9。 when 73=ToneIndex=11。 when 71=ToneIndex=10。 when 69=ToneIndex=9。 when 67=ToneIndex=8。 when 65=ToneIndex=7。 when 63=ToneIndex=0。 when 61=ToneIndex=9。 when 59=ToneIndex=9。 when 57=ToneIndex=10。 when 55=ToneIndex=9。 when 53=ToneIndex=7。 when 51=ToneIndex=6。 when 49=ToneIndex=6。 when 47=ToneIndex=8。 when 45=ToneIndex=8。 when 43=ToneIndex=9。 when 41=ToneIndex=11。 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) when 39=ToneIndex=10。 when 37=ToneIndex=9。 when 35=ToneIndex=8。 when 33=ToneIndex=7。 when 31=ToneIndex=0。 when 29=ToneIndex=11。 when 27=ToneIndex=11。 when 25=ToneIndex=10。 when 23=ToneIndex=9。 when 21=ToneIndex=7。 when 19=ToneIndex=6。 when 17=ToneIndex=6。 when 15=ToneIndex=8。 when 13=ToneIndex=8。 when 11=ToneIndex=9。 when 09=ToneIndex=11。 when 07=ToneIndex=10。 when 05=ToneIndex=9。 when 03=ToneIndex=8。 when 01=ToneIndex=7。 end if。139。 begin IF clk4Hz39。 end process p2。 end if。 dd:=not dd。 then if n6249999 then n:=n+1。event and clk=39。 分頻系數(shù)為 6249999 variable dd:std_logic。 architecture one of NoteTabs is signal CLK4Hz:std_logic。 ToneIndex: OUT INTEGER RANGE 0 TO 15)。 use 。 end。 end case。 when 15 = Tone=4141。 when 13 = Tone=3089。 when 11 = Tone=6859。 when 9 = Tone=6488。 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) when 7 = Tone=6166。 when 5 = Tone=5640。 when 3 = Tone=5157。 when 1 = Tone=4369。 END。 entity ToneTaba is PORT(index: IN INTEGER RANGE 0 TO 15。 音符預(yù)置數(shù)模塊 library ieee。 end process。 end if。 ft:=not ft。 then if Count1115 then Count11:=Count11+1。event and CLK4MHz=39。 variable ft:std_logic。 end process。 end if。 ff:=not ff。 then if t2 then t:=t+1。event and clk=39。 variable ff:std_logic。 architecture one of Speakera is signal CLK4MHz:std_logic。 fullspks: OUT STD_LOGIC)。 entity Speakera is PORT(clk: IN STD_LOGIC。 揚(yáng)聲器發(fā)生及分頻模塊 library ieee。 u3: Speakera PORT MAP(clk=CLK4MHZ, Tone=Tone, fullspks=SPKOUT)。 BEGIN u1: NoteTabs PORT MAP(clk=CLK4MHZ,ToneIndex=ToneIndex)。 SIGNAL Tone: INTEGER RANGE 0 TO 161FFF。 fullspks: OUT STD_LOGIC)。 COMPONENT Speakera PORT(clk: IN STD_LOGIC。 Tone: OUT INTEGER RANGE 0 TO 161FFF)。 END COMPONENT。 ARCHITECTURE one OF Songer IS 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) COMPONENT NoteTabs PORT(clk: IN STD_LOGIC。 SPKOUT: OUT STD_LOGIC )。 USE 。在設(shè)計(jì)的過程中,還掌握了許多有關(guān)電子領(lǐng)域必要軟件的使用,對(duì)今后的工作都有一定得幫助。 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) 在此次設(shè)計(jì)中,所有設(shè)計(jì)要求全部實(shí)現(xiàn),然而在音樂的播放質(zhì)量上仍有一些瑕疵,可能是由于揚(yáng)聲器的質(zhì)量問題或者芯片內(nèi)部產(chǎn)生信號(hào)不穩(wěn)定等關(guān)系,這都有待更多的時(shí)間對(duì)整個(gè)系統(tǒng)進(jìn)行更多的測(cè)試,從而使播放出來的音樂更加悅耳。廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) 音符儲(chǔ)存模塊仿真 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) 音符預(yù)置數(shù)模塊仿真 廣西大學(xué)電氣工程學(xué)院 EDA 課程設(shè)計(jì) 分頻器模塊仿真 XP 虛擬機(jī)下程序下載成功圖 頂層模塊 RTL