<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇FPGA專區(qū)FPGA技術(shù)討論區(qū) → FPGA深層解析 - 賽靈思 FPGA技術(shù)社區(qū)


      共有8410人關(guān)注過本帖樹形打印

    主題:FPGA深層解析 - 賽靈思 FPGA技術(shù)社區(qū)

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發(fā)短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    FPGA深層解析 - 賽靈思 FPGA技術(shù)社區(qū)  發(fā)帖心情 Post By:2010-11-12 14:38:51

    概覽

      高端設(shè)計(jì)工具為少有甚是沒有硬件設(shè)計(jì)技術(shù)的工程師和科學(xué)家提供現(xiàn)場可編程門陣列(FPGA)。無論你使用圖形化設(shè)計(jì)程序,ANSI C語言還是VHDL語言,如此復(fù)雜的合成工藝會不禁讓人去想FPGA真實(shí)的運(yùn)作情況。在這個芯片中的程序在這些可設(shè)置硅片間到底是如何工作的。本書會使非數(shù)字化設(shè)計(jì)人員明白FPGA(現(xiàn)場可編程門陣列)的基礎(chǔ)知識及其工作原理。此信息在使用高端設(shè)計(jì)工具時同樣十分有用,希望可以為理解這一特別技術(shù)提供一些線索。

    FPGA-現(xiàn)場可編程門陣列

      每一塊FPGA芯片都是由有限多個帶有可編程連接的預(yù)定義源組成來實(shí)現(xiàn)一種可重構(gòu)數(shù)字電路。

    圖片點(diǎn)擊可在新窗口打開查看
    圖1.FPGA不同構(gòu)成

      FPGA芯片說明書中,包含了可編程邏輯模塊的數(shù)量、固定功能邏輯模塊(如乘法器)的數(shù)目及存儲器資源(如嵌入式RAM)的大小。FPGA芯片中還有很多其它的部分,但是以上指標(biāo)通常是為特定應(yīng)用選擇和比較FPGA時,最重要的參考指標(biāo)。

      在最底層,可配置邏輯模塊(如片或邏輯單元)有著兩種最基本的部件:觸發(fā)器和查找表(LUT)。這很重要,因?yàn)楦鞣NFPGA家族之所以各不相同,就是因?yàn)橛|發(fā)器和查找表組合的方式不同。例如,Virtex-II 系列的FPGA ,它的片具有兩個查找表和兩個觸發(fā)器,而Virtex-5 FPGA的片具有4個查找表和4個觸發(fā)器。查找表本身的結(jié)構(gòu)也可能各不相同(4輸入或6輸入)。關(guān)于查找表工作原理的更多信息將在后面的章節(jié)中給出。

      表1中列出了在NI LabVIEW FPGA硬件目標(biāo)中使用的FPGA的指標(biāo)。邏輯門的數(shù)量是一種將FPGA芯片與ASIC技術(shù)進(jìn)行比較的傳統(tǒng)方法,但是它并不能真實(shí)地表述FPGA內(nèi)部的獨(dú)立單元的數(shù)量。這就是Xilinx公司沒有在新型Virtex-5系列中指定邏輯門數(shù)量的原因之一。

    圖片點(diǎn)擊可在新窗口打開查看

    表1.不同系列FPGA源規(guī)格

      為了更好地理解這些規(guī)格的意義,將編碼考慮為合成的數(shù)字電路模式。對任何一段合成代碼,或圖形化或文本形式,都有相應(yīng)的電路圖反映邏輯組件該如何連線。通過一段簡單布爾邏輯電路了解下相應(yīng)的示意圖。圖2表示的是傳遞5個布爾信號并且可圖形化計(jì)算所得的二進(jìn)制值的功能組。

    圖2.載入5個信號的簡單布爾邏輯

      在通常情況下(LabVIEW SCTL—單周期定時環(huán)路外),圖2所示相應(yīng)電路圖同圖3所示相近。

    圖3.為圖2中布爾邏輯的相應(yīng)電路圖

      雖然很難明白,但是實(shí)際上這里創(chuàng)建了兩個并行分支的電路。最上面的5條黑線被反饋到第一個分支,它在每個布爾操作間添加了觸發(fā)器。最下面的5條黑線構(gòu)成了第二個邏輯鏈。其中一支路在每步操作之間增加了同步寄存器,另一條邏輯鏈?zhǔn)谴_保執(zhí)行數(shù)據(jù)流的。本電路圖正常工作時總共需要12個觸發(fā)器和12個查找表。上端分支和每個元件將在以后章節(jié)分析。

    觸發(fā)器

    圖片點(diǎn)擊可在新窗口打開查看

    圖4.觸發(fā)器符號

      觸發(fā)器是二進(jìn)制移位寄存器,用于同步邏輯以及保存時鐘(脈沖)周期內(nèi)的邏輯狀態(tài)。在每個時間(脈沖)邊沿,觸發(fā)器在輸入時鎖定1(真)或0(假)值并且保存此值直到下次時鐘(脈沖)邊沿。在正常情況下,LabVIEW FPGA在每次操作之間都設(shè)置一個觸發(fā)器,以保證有足夠的時間來執(zhí)行每步操作。對此律的例外只發(fā)生在SCTL結(jié)構(gòu)中寫代碼的情況。在這個特殊的環(huán)路結(jié)構(gòu)中,觸發(fā)器只放置在閉環(huán)迭代的始末段,并且由編程者考慮定時因素來決定如何放置。對SCTL內(nèi)代碼如何同步的更多內(nèi)容將在以后章節(jié)中討論。圖5表示的是圖3的上端分支,觸發(fā)器由紅色高亮表示。

    圖5.繪制由紅色高亮表示出觸發(fā)器的電路圖

    查找表

    圖6.雙四輸入查找表

      圖6所示示意圖中的其他邏輯電路通過使用少量查找表形式的隨機(jī)存取存儲器實(shí)現(xiàn)。我們可以簡單地假定FPGA中系統(tǒng)門的數(shù)量可參考與非門(NAND)以及或非門(NOR)的數(shù)量,但實(shí)際上,所有的組合邏輯(與門、或門、與非門、異或門等)都是通過查找表存儲器中的真值表來實(shí)現(xiàn)。真值表是輸出對應(yīng)于每個輸入值組合的預(yù)定義表(現(xiàn)在卡諾圖的重要性在你的頭腦中可能會慢慢淡化)。以下是對數(shù)字邏輯電路課程的快速回顧:比如,圖7是布爾邏輯與門操作過程。

      這是對數(shù)字邏輯課程的快速回顧:

      例如,圖7中顯示了布爾型AND操作。

    圖7.布爾型AND操作

    圖片點(diǎn)擊可在新窗口打開查看
    表2.布爾與門操作的真值表

      你可以認(rèn)為輸入值是所有輸出值的數(shù)字索引,如表3所示。

    表3.布爾與門擦操作的真值查找表實(shí)現(xiàn)

      Virtex-II和Spartan-3系列FPGA芯片有著4輸入查找表來實(shí)現(xiàn)真正的4輸入信號的16種組合。圖8就是一個四輸入電路實(shí)現(xiàn)的例子。

    圖8.輸入布爾邏輯的四信號電路

    表4所示為使用雙四輸入查找表實(shí)現(xiàn)的相應(yīng)的真值表。

    表4.圖8中所示相應(yīng)真值表

      Virtex-5系列的FPGA使用雙六輸入查找表,可以通過6個不同輸入信號的64種組合來實(shí)現(xiàn)真值表。因?yàn)橛|發(fā)器之間的組合邏輯十分復(fù)雜,所以在LabVIEW FPGA中使用SCTL也越來越重要。下一節(jié)將講述SCTL如何優(yōu)化利用LabVIEW中的FPGA源。

    SCTL

      上幾節(jié)中使用的代碼例子假定代碼是設(shè)置在SCTL外部,并為保證執(zhí)行同步數(shù)據(jù)量也同步了附加電路。SCTL是LabVIEW FPGA中一個特殊結(jié)構(gòu),生成一個更為優(yōu)化的電路圖,以期望達(dá)到在一個時鐘(脈沖)周期內(nèi)執(zhí)行完所有邏輯電路分支。例如,若設(shè)置SCTL在40MHZ運(yùn)行,則所有邏輯電路分支將在25ns內(nèi)執(zhí)行完畢。

      如果在SCTL中設(shè)置前例中同樣的布爾邏輯電路(如圖9所示),則生成如圖10所示的相應(yīng)電路示意圖。

    圖片點(diǎn)擊可在新窗口打開查看

    圖9.附有STCL的簡單布爾邏輯

    圖片點(diǎn)擊可在新窗口打開查看
    圖10.圖9所示布爾邏輯相應(yīng)的電路圖

      很明顯,這種實(shí)現(xiàn)方法簡單多了。在Virtex-II或Spartan-3系列FPGA中,觸發(fā)器間的邏輯需要至少2個4輸入查找表,如圖11所示。

    圖片點(diǎn)擊可在新窗口打開查看

    圖11.圖10中電路圖的雙四輸入查找表實(shí)現(xiàn)

      由于Virtex-5系列FPGA有著6輸入的查找表,用戶可以在一個查找表中實(shí)現(xiàn)相同數(shù)量的邏輯,如圖12所示。

    圖片點(diǎn)擊可在新窗口打開查看

    圖12.圖10中雙六輸入查找表實(shí)

      本例中使用的SCTL(如圖9所示)設(shè)置在40MHZ下運(yùn)行,這意味著在任意觸發(fā)器之間邏輯電路必須在25ns內(nèi)完成執(zhí)行。電子在電路中傳播的速度決定了代碼執(zhí)行的最大速度。關(guān)鍵路線是有最長傳播延遲的邏輯電路分支,它決定了該部分電路中理論最大時鐘速率。Virtex-5 FPGA上的雙六輸入查找表不僅減少實(shí)現(xiàn)給定邏輯電路所需要的查找表總數(shù),而且減少電子通過邏輯電路的傳播延遲(時間)。Virtex-5系列FPGA中的6輸入查找表不僅可以減少實(shí)現(xiàn)特定邏輯而需要的查找表的數(shù)量,而且可以降低邏輯中電流的傳輸延時。這意味著,您可簡單地通過選擇一個基于Virtex-5的硬件指標(biāo)設(shè)置相同的SCTL,追求更快的時間速度。

     請查看下方白皮書的對策列表,獲取更多Virtex-5 FPGA相關(guān)信息。

    乘數(shù)器和DSP片

      看起來簡單的兩數(shù)相乘運(yùn)算在數(shù)字電路中實(shí)現(xiàn)起來是十分復(fù)雜的,也是極為消耗資源的。為提供相關(guān)參考,圖14所示是一種使用組合邏輯電路實(shí)現(xiàn)4×4字節(jié)乘數(shù)器的示意圖。

    圖片點(diǎn)擊可在新窗口打開查看

    圖14.兩個4字節(jié)輸入相乘的電路圖

      試想兩個32字節(jié)的數(shù)字相乘要通過2000多步操作才能得到結(jié)果。因此,F(xiàn)PGA預(yù)設(shè)了乘數(shù)器電路,在數(shù)學(xué)和信號處理應(yīng)用中保存對查找表和觸發(fā)器使用。Virtex-II和Spartan-3 FPGA擁有18×18bit乘法器,所以兩個32字節(jié)數(shù)字相乘的運(yùn)算需要三個乘法器來實(shí)現(xiàn)。許多信號處理算法都包括連乘運(yùn)算結(jié)果的功能,因此Virtex-5等高性能FPGA都預(yù)設(shè)被稱為DSP片的乘數(shù)器累加電路.這些預(yù)設(shè)處理組件,也被稱為DSP48片,包括25×18bit乘數(shù)器以及加法器電路,盡管您可單獨(dú)使用乘數(shù)器功能。表5所示為不同F(xiàn)PGA系列DSP決策。

    圖片點(diǎn)擊可在新窗口打開查看

    表5.不同F(xiàn)PGA的DSP源

    塊隨機(jī)存取存儲器(RAM)

      選擇FPGA時,記憶源是另一個需要考慮的關(guān)鍵因素。嵌入FPGA芯片中的用戶自定義隨機(jī)存取存儲器(RAM),對儲存數(shù)據(jù)設(shè)置或平行環(huán)路之間傳送數(shù)值很有幫助。基于FPGA系列,您可在16或36kb組件中設(shè)置板載RAM,或者使用觸發(fā)器以數(shù)組來執(zhí)行數(shù)據(jù)設(shè)置;然而,對于FPGA邏輯源來說,大型數(shù)組很快就變得十分“奢侈”。由100個32字節(jié)元素數(shù)組可消耗Virtex-II 1000 FPGA中超過30%的觸發(fā)器,或者占用少于1%的嵌入式塊RAM.DSP算法通常需要追蹤整個數(shù)據(jù)塊或是復(fù)雜等式的系數(shù),而在沒有板載存儲器情況下,許多處理功能在FPGA芯片的硬件邏輯電路中都不適用。圖16所示為使用塊RAM讀寫存儲器的圖形化功能。

      同樣,你也可以使用內(nèi)存塊,將一段完整周期存儲為數(shù)值和索引的順序表,為板載信號發(fā)生器存儲周期性波形數(shù)據(jù)。輸出信號的最終頻率由檢索數(shù)值的速度決定,這樣您就可用此方法動態(tài)改變輸出頻率,而不需要輸入波形中的急劇變化。

    圖16.用于先進(jìn)先出緩沖器的塊RAM功能

      FPGA固有的并行執(zhí)行要求邏輯電路獨(dú)立元件可在不用時間脈沖下驅(qū)動。在不同運(yùn)行速度下的邏輯電路之間傳遞數(shù)據(jù)是很棘手的。使用先進(jìn)先出(FIFO)緩沖器時,板載存儲器可用來是傳輸更加平穩(wěn)。如圖16所示,用戶可以將FIFO緩沖器配置成不同大小以確保數(shù)據(jù)在FPGA芯片的非同步部件間不會丟失。表6所示為嵌入不同F(xiàn)PGA系列的用戶可設(shè)置快RAM。

    圖片點(diǎn)擊可在新窗口打開查看
    表6.不同F(xiàn)PGA的記憶源

    總結(jié)

      隨著高端技術(shù)的發(fā)展以及新概念的深入概括,F(xiàn)PGA技術(shù)地采用將不斷增加。然而探究FPGA其中奧秘,感嘆這硅片中在方框圖間匯編出的變化,也是十分重要的。在發(fā)展階段,如果您懂得如何利用和優(yōu)化資源,比較和選擇觸發(fā)器、查找表、乘數(shù)器和塊RAM等硬件指標(biāo)是十分有幫助的。這些基本的功能塊并不是包含所有資源的完整清單,而且這篇白皮書并沒有包含對所有FPGA部件的討論。用戶可以通過下面的推薦資源,繼續(xù)學(xué)習(xí)關(guān)于FPGA和數(shù)字硬件設(shè)計(jì)的知識。




    [此貼子已經(jīng)被作者于2010-11-17 11:58:48編輯過]

    支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    FPGA深層解析 - 賽靈思 FPGA技術(shù)社區(qū)








    簽名
    主站蜘蛛池模板: hdjapanhdsexxx| 亚洲伊人久久大香线蕉综合图片| 青青青国产成人久久111网站| 夫妇交换性三中文字幕| 久久综合精品国产一区二区三区| 欧美视频在线观看免费| 国产一区二区三区不卡AV| 5g996未满十八| 天天射天天操天天| 久久亚洲精品无码gv| 欧美a级在线观看| 免费一看一级毛片人| 精品无码国产自产拍在线观看蜜| 国产激情视频一区二区三区| jzzjzzjzz日本| 成人午夜福利视频| 乱人伦视频中文字幕| 欧美日韩1区2区| 加勒比一本大道香蕉在线视频| 视频久re精品在线观看| 国产精品夜色一区二区三区| 一个人看的www高清直播在线观看| 日本55丰满熟妇厨房伦| 亚洲人成网站看在线播放| 欧美综合自拍亚洲综合图| 午夜成人免费视频| 老扒系列40部分阅读| 国产男女猛烈无遮挡免费视频| igao视频在线| 市来美保在线播放| 久久精品人人做人人爽电影蜜月| 欧美va天堂在线电影| 亚洲色无码一区二区三区 | 西西人体免费视频| 国产精品午夜无码av体验区| swag在线观看| 妖精视频一区二区三区| 久久久久久久人妻无码中文字幕爆 | 欧美性生活网址| 任我爽精品视频在线播放| 真实乱视频国产免费观看|