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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > FPGA設(shè)計頻率的計算方法

          FPGA設(shè)計頻率的計算方法

          作者: 時間:2011-02-18 來源:網(wǎng)絡(luò) 收藏

          我們的設(shè)計需要多大容量的芯片?我們的設(shè)計能跑多快?這是經(jīng)常困擾工程師的兩個問題。對于前一個問題,我們可能還能先以一個比較大的芯片實現(xiàn)原型,待原型完成再選用大小合適的芯片實現(xiàn)。對于后者,我們需要一個比較精確的預(yù)估,我們的設(shè)計能跑50M,100M 還是133M?

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

            首先讓我們先來看看Fmax 是如何計算出來的。圖(1)是一個通用的模型用來計算FPGA的。我們可以看出,F(xiàn)max 受Tsu , Tco , Tlogic 和 Troute 四個參數(shù)影響。( 由于使用FPGA 全局時鐘,時鐘的抖動在這里不考慮)。

            時鐘周期 T = Tco + Tlogic + Troute + Tsu

            時鐘頻率 Fmax = 1/Tmax

            其中:

            Tco : D 觸發(fā)器的輸出延時

            Tlogic : 組合邏輯延時

            Troute : 布線延時

            Tsu : D 觸發(fā)器的建立時間  


          圖( 1 ) 時鐘周期的計算模型

            由圖(1)可以看出,在影響Fmax 的四個參數(shù)中,由于針對某一個器件Tsu 和Tco 是固定的,因此我們在設(shè)計中需要考慮的參數(shù)只有兩個Tlogic 和Troute.通過良好的設(shè)計以及一些如Pipeline 的技巧,我們可以把Tlogic 和Troute 控制在一定的范圍內(nèi)。達(dá)到我們所要求的Fmax.

            經(jīng)驗表明一個良好的設(shè)計,通??梢詫⒔M合邏輯的層次控制在4 層以內(nèi),即( Lut Levels 《=4 ) 。而Lut Levels( 組合邏輯的層次 )將直接影響Tlogic 和Troute 的大小。 組合邏輯的層次多,則Tlogic 和Troute 的延時就大,反之, 組合邏輯的層次少,則Tlogic 和Troute 的延時就小。

            讓我們回過頭來看看Xilinx 和Altera 的FPGA 是如何構(gòu)成的。是由Logic Cell ( Xilinx )或 Logic Element( Altera )這一種基本結(jié)構(gòu)和連接各個Logic Cell 或Logic Element 的連線資源構(gòu)成。無論是Logic Cell 還是 Logic Element ,排除其各自的特點,取其共性為一個4 輸入的查找表和一個D 觸發(fā)器。如圖(2)所示。而任何復(fù)雜的邏輯都是由此基本單元復(fù)合而成。圖(3)。上一個D 觸發(fā)器的輸出到下一個D 觸發(fā)器的輸入所經(jīng)過的LUT 的個數(shù)就是組合邏輯的層次( Lut Levels )。因此,電路中用于實現(xiàn)組合邏輯的延時就是所有Tlut 的總和。在這里取Lut Levels = 4 。故Tlogic = 4 * Tlut ?! ?/p>


          圖( 2 ) FPGA基本邏輯單元  


          圖( 3 ) 復(fù)雜組合邏輯的實現(xiàn)


          上一頁 1 2 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();