<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種基于通用型PCI接口的VHDL-CPLD設計

          一種基于通用型PCI接口的VHDL-CPLD設計

          作者: 時間:2014-07-24 來源:網(wǎng)絡 收藏

            IF c_be=X"6"AND ad_high=X"50"AND state="s1"

          本文引用地址:http://www.ex-cimer.com/article/255997.htm

            HTEN read <= i0 i; - -讀

            write <= i1 i;

            cs_map <= i0 i;

            ELSIF c_be=X"7"AND ad_high= X"50"

            AND state="s1" THEN

            read <= i1 i; - -寫

            write <= i0 i;

            cs_map <= i0 i;

            ELSIF state="s0" THEN

            read <= i1 i;

            write <= i1 i;

            cs_map <= i1 i;

            END IF;

            END IF;

            END PROCESS;

            Addr_count:PROCESS (clk) - -操作地址的獲取與地址的遞增

            BEGIN

            IF falling_edge(clk)THEN

            IF state="s1" THEN addr_map< =ad-low;

            ELSIF state="s3" THEN addr_map< =addr-map+1;

            END IF;

            END IF;

            END PROCESS;

            - - 操作信號的產(chǎn)生

            addr <= addr-map WHEN state="s3" or state="s4"

            ELSE "ZZZZZZZZZZZZZ"

            trdy <= i0 i WHEN state="s3" or state="s4" or state="s5"

            ELSE i1 i;

            devsel <= i0 iWHEN state="s3" or state="s4" or state="s5"

            ELSE i1 i;

            cs <= i0 iWHEN state="s3" or state="s4" ELSE i1 i;

            r-w <=NOT clk WHEN write= i0 iAND (state=s3 or state="s4")ELSE i1 i;

            state-change:PROCESS(clk,rst) - - 狀態(tài)機的變化

            BEGIN

            IF rst= i0 iTHEN state <= s0;

            ELSIF falling-edge(clk)THEN

            CASE state IS

            WHEN s0 = >

            IF frame= i1 iAND irdy= i1 iTHEN state <= s0;

            ELSIF frame= i0 i AND irdy= i1 i THEN state <= s1;

            END IF;

            WHEN s1 = >

            IF cs_map= i1 iOR (read= i1 iAND write = i1 i)

            THEN state <= s0;

            ELSIF irdy= i1 iAND read= i0 i THEN state <=s2;

            ELSIF frame= i0 iAND irdy= i0 iAND write= i0 i

            THEN state <= s3;

            ELSIF frame= i1 iAND irdy= i0 iAND write= i0 i

            THEN state <= s4;

            END IF;

            WHEN s2 = >

            IF frame= i1 iAND irdy= i1 iTHEN state <= s0;

            ELSIF frame= i0 iAND irdy= i0 iAND read= i0 i

            THEN state <= s3;

            ELSIF frame= i1 iAND irdy= i0 iAND read= i0 i

            THEN state <= s4;

            END IF;

            WHEN s3 = >

            IF frame= i1 iAND irdy= i1 iTHEN state <= s0;

            ELSIF frame= i0 i AND irdy= i1 i THEN state <= s5;

            ELSIF frame= i1 iAND irdy= i0 i THEN state <=s4;

            ELSIF frame= i0 i AND irdy= i1 i THEN state <= s3;

            END IF;

            WHEN s4 = >

            ELSIF frame= i1 iAND irdy= i0 iTHEN state <= s4;

            END IF;

            WHEN s5 = >

            IF frame= i1 iAND irdy= i1 iTHEN state <= s0;

            ELSIF frame= i0 i AND irdy= i0 iTHEN state <= s3;

            ELSIF frame= i1 iAND irdy= i0 i THEN state <=s4;

            ELSE state <= s5;

            END IF;

            WHEN OTHERS = >state <= s0;

            END CASE;

            END IF;

            END PROCESS state_change;

            END behave。

            5 MaxPlusII的驗證

            設計CPLD時,可使用MaxPlusII軟件來進行邏輯綜合、功能模擬與定時分析。本例選用 Altera 的Max7000系列在系統(tǒng)可編程器件EPM7064SLC84-5。圖5所示是其讀寫訪問的仿真波形圖。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();