久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 誰(shuí)能給我看看這段vhdl代碼,給我講解下 [打印本頁(yè)]

作者: LCZaiZM    時(shí)間: 2016-5-27 19:34
標(biāo)題: 誰(shuí)能給我看看這段vhdl代碼,給我講解下
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY GUOGE IS
PORT(CLK,rst:in std_logic;     
         out_bit:OUT STD_LOGIC);
END GUOGE;
ARCHITECTURE PVJ OF GUOGE IS
  SIGNAL time:STD_LOGIC_VECTOR(24 DOWNTO 0);
  signal music21:STD_LOGIC_VECTOR(8 DOWNTO 0);
  SIGNAL L5,L6,L7,M1,M2,M3,M4,M5,M6:STD_LOGIC_VECTOR(16 DOWNTO 0);
  SIGNAL LL5,LL6,LL7,C,MM1,MM2,MM3,MM4,MM5,MM6,X0:STD_LOGIC;
     BEGIN
      process(clk,rst)
        begin
        X0<='1';
        if clk'event and clk='1' then time<=time+1;                 --將20M頻率6分頻               
                 if L5=12755  then L5<="00000000000000000";LL5<=not LL5;
                    else    L5<=L5+1;                  
                 end if;
                 if L6=11363  then L6<="00000000000000000";LL6<=not LL6;
                    else    L6<=L6+1;                  
                 end if;
                 if L7=10124  then L7<="00000000000000000";LL7<=not LL7;
                    else    L7<=L7+1;                  
                 end if;
                 if M1=9555  then M1<="00000000000000000";MM1<=not MM1;
                    else   M1<=M1+1;                  
                 end if;
                 if M2=8513  then M2<="00000000000000000";MM2<=not MM2;
                    else    M2<=M2+1;                  
                 end if;
                 if M3=7584  then M3<="00000000000000000";MM3<=not MM3;
                    else    M3<=M3+1;                  
                 end if;               
                 if M5=6377  then M5<="00000000000000000";MM5<=not MM5;
                    else   M5<=M5+1;                  
                 end if;
                 if M6=5681  then M6<="00000000000000000";MM6<=not MM6;
                    else    M6<=M6+1;                  
                 end if;
                 if time=2499999 then time<="0000000000000000000000000";c<='1';
                 else c<='0';
                 end if;               
           end if;
        end process;
   PROCESS(c,RST)
       BEGIN
        if c'event and c='1' then music21<=music21+1;
              if music21=255 then music21<="000000000";
              end if;
        end if;
        if music21>=0 and music21<=1 then out_bit<=LL5;END IF;--低音5    起
        if music21>=2 and music21<=7 then out_bit<=MM1;END IF;--中音1    來(lái)
        if music21>=8 and music21<=9 then out_bit<=MM1;END IF;--中音1    不
        if music21>=10 and music21<=13 then out_bit<=MM1;END IF;--中音1  愿做
        if music21>=14 and music21<=15 then out_bit<=LL5;END IF;--低音5  奴
        if music21=16 then out_bit<=LL6;END IF;                --低音6   隸
        if music21=17 then out_bit<=LL7;END IF;                --低音7   的
        if music21>=18 and music21<=25 then out_bit<=MM1;END IF;--中音1  人們
        if music21>=26 and music21<=27 then out_bit<=X0;END IF;--休止符
        if music21>=28 and music21<=29 then out_bit<=MM3;END IF;--中音3  把
        if music21>=30 and music21<=31 then out_bit<=MM1;END IF;--中音1  我
        if music21=32 then out_bit<=MM2;END IF;                 --中音2  們
        if music21=33 then out_bit<=MM3;END IF;                 --中音3  的
        if music21>=34 and music21<=41 then out_bit<=MM5;END IF;--中音5  血肉
        if music21>=42 and music21<=45 then out_bit<=MM3;END IF;--中音3  筑成
        if music21>=46 and music21<=47 then out_bit<=MM1;END IF;--中音1  我
        if music21=48 then out_bit<=MM3;END IF;                 --中音3  們
        if music21>=49 and music21<=51 then out_bit<=MM5;END IF;--中音5  新
        if music21=52 then out_bit<=MM3;END IF;                 --中音3  的
        if music21>=53 and music21<=56 then out_bit<=MM2;END IF;--中音2  長(zhǎng)
        if music21>=57 and music21<=64 then out_bit<=MM2;END IF;--中音2  城
        if music21>=65 and music21<=68 then out_bit<=MM6;END IF;--中音6  中
        if music21>=69 and music21<=72 then out_bit<=MM5;END IF;--中音5  華
        if music21>=73 and music21<=76 then out_bit<=MM2;END IF;--中音2  民
        if music21>=77 and music21<=80 then out_bit<=MM3;END IF;--中音3  族
        if music21>=81 and music21<=82 then out_bit<=MM5;END IF;--中音5  到
        if music21>=83 and music21<=86 then out_bit<=MM3;END IF;--中音3  了
        if music21>=87 and music21<=88 then out_bit<=MM5;END IF;--中音5  最
        if music21>=89 and music21<=90 then out_bit<=MM3;END IF;--中音3  危
        if music21=91 then out_bit<=MM2;END IF;                 --中音2  險(xiǎn)
        if music21=92 then out_bit<=MM3;END IF;                 --中音3  的   
        if music21>=93 and music21<=94 then out_bit<=MM1;END IF;--中音1  時(shí)
        if music21=95 then out_bit<=MM2;END IF;                 --中音2
        if music21>=96 and music21<=99 then out_bit<=MM3;END IF;--中音3    候
        if music21>=100 and music21<=103 then out_bit<=X0;END IF; --休止符
        if music21>=104 and music21<=106 then out_bit<=MM5;END IF;--中音5  每
        if music21=107  then out_bit<=MM6;END IF;                 --低音6  個(gè)
        if music21>=108 and music21<=111 then out_bit<=MM1;END IF;--中音1 人被
        if music21>=112 and music21<=115 then out_bit<=MM3;END IF;--中音3 迫著
        if music21>=116 and music21<=119 then out_bit<=MM5;END IF;--中音5 發(fā)出
        if music21>=120 and music21<=123 then out_bit<=MM2;END IF;--中音2 最后的
        if music21>=124 and music21<=127 then out_bit<=LL6;END IF;--低音6 吼
        if music21>=128 and music21<=133 then out_bit<=MM2;END IF;--中音2 聲
        if music21>=134 and music21<=135 then out_bit<=LL5;END IF;--低音5 起
        if music21>=136 and music21<=143 then out_bit<=MM1;END IF;--中音1 來(lái)!起
        if music21>=144 and music21<=151 then out_bit<=MM3;END IF;--中音3 來(lái)!起
        if music21>=152 and music21<=167 then out_bit<=MM5;END IF; --中音5 來(lái)!
        if music21>=168 and music21<=170 then out_bit<=MM1;END IF; --中音1 我
        if music21=171 then out_bit<=MM3;END IF;                   --中音3 們
        if music21>=172 and music21<=175 then out_bit<=MM5;END IF; --中音5  萬(wàn)眾
        if music21>=176 and music21<=179 then out_bit<=MM6;END IF; --中音6   一
        if music21>=180 and music21<=183 then out_bit<=MM5;END IF;--中音5    心
        if music21>=184 and music21<=186 then out_bit<=MM3;END IF;--中音3  冒
        if music21=187 then out_bit<=MM1;END IF;                  --中音1  著      
        if music21>=188 and music21<=191 then out_bit<=MM5;END IF;--中音5  敵人的
        if music21>=192 and music21<=193 then out_bit<=MM3;END IF;----中音3 炮
        if music21>=194 and music21<=195 then out_bit<=X0;END IF;
        if music21>=196 and music21<=197 then out_bit<=MM1;END IF;--中音1  火
        if music21>=198 and music21<=199 then out_bit<=X0;END IF;
        if music21>=200 and music21<=203 then out_bit<=LL5;END IF;--低音5  前
        if music21>=204 and music21<=207 then out_bit<=MM1;END IF;--中音1  進(jìn)
        if music21>=208 and music21<=210 then out_bit<=MM3;END IF;--低音3  冒
        if music21=211 then out_bit<=MM1;END IF;                 --中音1   著
        if music21>=212 and music21<=215 then out_bit<=MM5;END IF;--中音5 敵人的
        if music21>=216 and music21<=217 then out_bit<=MM3;END IF;--中音3 炮
        if music21>=218 and music21<=219 then out_bit<=X0;END IF;
        if music21>=220 and music21<=221 then out_bit<=MM1;END IF;--中音1 火
        if music21>=222 and music21<=223 then out_bit<=X0;END IF;
        if music21>=224 and music21<=227 then out_bit<=LL5;END IF;--中音5    前
        if music21>=228 and music21<=231 then out_bit<=MM1;END IF;--中音1    進(jìn)
        if music21>=232 and music21<=235 then out_bit<=LL5;END IF;--中音5    前
        if music21>=236 and music21<=239 then out_bit<=MM1;END IF;--中音1    進(jìn)
        if music21>=240 and music21<=243 then out_bit<=LL5;END IF;--中音5    前
        if music21>=244 and music21<=247 then out_bit<=MM1;END IF;--中音1    進(jìn)
        if music21>=248 and music21<=251 then out_bit<=MM1;END IF;--中音1    進(jìn)
        if music21>=252 and music21<=255 then out_bit<=X0;END IF;      
IF RST='0' THEN MUSIC21<="000000000";END IF;   
    END PROCESS;
end;

作者: wyeth    時(shí)間: 2016-7-30 11:02
第一次見(jiàn)用FPGA來(lái)玩單音合成輸出的。
代碼的前半部分定義了,1~7音符輸出的頻率;
后面的就是演奏國(guó)歌了。
作者: georgelzh    時(shí)間: 2017-10-9 10:28
這個(gè)代碼用來(lái)教學(xué)可以,不實(shí)用。
音頻速度很慢,所以可以把比較和結(jié)果都放在ram里面,然后pipeline讀取比較,最后輸出。只要一個(gè)比較器一個(gè)ram。
否則邏輯用的太多!!




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 成人国产精品久久久 | 精品一二区 | 欧美日韩福利视频 | 成人国产一区二区三区精品麻豆 | 国产精品日产欧美久久久久 | 91视频一区二区 | 99热这里 | 成年视频在线观看 | 黄色免费av | 亚洲成av人片在线观看 | 日韩精品一区二区三区在线 | 午夜国产羞羞视频免费网站 | 欧美日一区| 国产伦精品一区二区三毛 | 国产天堂 | 久草成人| 日韩免费在线观看视频 | 国产精品国产 | 91精产国品一二三区 | 亚洲人成人一区二区在线观看 | 国产a区| 亚洲一区导航 | 99婷婷| 精品香蕉一区二区三区 | 亚洲欧美一区二区三区视频 | 免费观看成人鲁鲁鲁鲁鲁视频 | 国产一级一级毛片 | 福利视频网址 | 亚洲精品www久久久久久广东 | 欧美嘿咻 | 超碰97av| 久久精品国产a三级三级三级 | 亚洲综合视频 | 波多野结衣亚洲 | 国产专区免费 | 亚洲一区不卡 | 日韩在线看片 | 中文字幕一区二区三区在线观看 | 欧美二区三区 | 99久久精品国产一区二区三区 | 日韩精品成人网 |