<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > VHDL設計中電路簡(jiǎn)化問(wèn)題的探討

VHDL設計中電路簡(jiǎn)化問(wèn)題的探討

作者:朱明程 林欣榮 時(shí)間:2008-06-25 來(lái)源:電子技術(shù)應用 收藏

  ctemp<=″00000001″;??

本文引用地址:http://dyxdggzs.com/article/84777.htm

  elsif(count3=″001″)then

  ctemp<=″00000010″;??

  elsif(count3=″010″)then

  ctemp<=″00000100″;??

  elsif(count3=″011″)then

  ctemp<=″00001000″;??

  elsif(count3=″100″)then

  ctemp<=″00010000″;??

  elsif(count3=″101″)then

  ctemp<=″00100000″;??

  elsif(count3=″110″)then

  ctemp<=″01000000″;??

  elsif(count3=″111″)then

  ctemp<=″10000000″;??

  else

  ctemp<=″00000000″;??

  endif;??

  endif;??

  endprocess;??

  2.第二種設計方法的源程序

  process(clk,ctemp,count)

  begin

  if(clk='1'andclk'event)then

  count<=count+1;??

  if(count=″00000000000000000″)then

  ctemp<=″00000001″;??

  elsif(count=″001000000000000000″)then

  ctemp<=″00000010″;??

  elsif(count=″010000000000000000″)then

  ctemp<=″00000100″;??

  elsif(count=″011000000000000000″)then

  ctemp<=″00001000″;??

  elsif(count=″100000000000000000″)then

  ctemp<=″00010000″;??

  elsif(count=″101000000000000000″)then

  ctemp<=″00100000″;??

  elsif(count=″110000000000000000″)then

  ctemp<=″01000000″;??

  elsif(count=″111000000000000000″)then

  ctemp<=″10000000″;??

  endif;??

  endif;??

  endpeocess;??

  對于第一種的程序可以綜合出的如圖1所示。

  該用一個(gè)15位的加法器和寄存器組成一個(gè)15位的記數器。在記數器記完一周回到“000000000000000”時(shí),通過(guò)后面的15輸入的與非門(mén)和一位的觸發(fā)器就可以實(shí)現同步的進(jìn)行215次分頻,同步輸出32Hz的時(shí)鐘CCLK。CCLK再驅動(dòng)一8位的移位寄存器,便可實(shí)現每32秒輸出一信號。

  而用第二種的程序設計綜合出的如圖2所示。

  圖2所示的電路用一個(gè)18位的加法器和寄存器組成一個(gè)18位的記數器。后接了8個(gè)18輸入的邏輯門(mén)和8輸入的或門(mén)。輸入的1kHz時(shí)鐘經(jīng)過(guò)記數器被分頻,其中有八個(gè)相隔32Hz的記數狀態(tài),邏輯門(mén)就負責把這八狀態(tài)譯碼成所需的八組信號。譯碼后的數據通過(guò)選擇器輸出到8位的觸發(fā)器,以實(shí)現同步輸出。還有個(gè)鎖存器,是用來(lái)保持輸出信號不變,在八個(gè)狀態(tài)中的從一個(gè)狀態(tài)變到下一個(gè)之前,保持前一個(gè)的數值。選擇器當邏輯門(mén)輸出新的數據時(shí)讓其輸出數據通過(guò),在新數據到來(lái)之前輸出鎖存器的數據。

  以上兩種方法都能實(shí)現相同的邏輯功能,但圖2所示的方法由于運用了較少位數的記數器,所用的邏輯門(mén)也較簡(jiǎn)單,而且還少用了多路選擇器和鎖存器資源,所以綜合出來(lái)的電路較簡(jiǎn)單,以XILINX SpartanS05-3芯片為例。第一種方法占用芯片CLB的12%,其中FMAPS為9%,最高工作速度為82Hz。而第二種方法占用了15%的CLB,FMAPS占用15%,最高工作速度只有69.9MHz。在這一個(gè)簡(jiǎn)單的設計之中就能省20%的電路,提高12.1MHz的工作速度,由此可見(jiàn)科學(xué)的劃分設計對降低電路復雜程度的重要意義。

DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY




關(guān)鍵詞: VHDL 電路 集成電路

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>