0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你必須知道的FPGA硬件屬性

FPGA研究院 ? 來(lái)源:FPGA研究院 ? 2023-02-17 10:48 ? 次閱讀

事實(shí)上,MCU 對(duì)有些任務(wù)來(lái)說(shuō)是很適合的,但對(duì)其它一些任務(wù)來(lái)說(shuō)可能做的并不好。舉例來(lái)說(shuō),當(dāng)需要并行執(zhí)行大量計(jì)算任務(wù)時(shí),FPGA 可能會(huì)讓你喜出望外。

如果我們進(jìn)一步放大,我們可以看到,每個(gè)可編程模塊都包含有許多數(shù)字功能。在這個(gè)例子中,我們可以見(jiàn)到一個(gè)三輸入的查找表(LUT)、一個(gè)復(fù)用器和一個(gè)觸發(fā)器,但重要的是我們要認(rèn)識(shí)到,這些功能的數(shù)量和類(lèi)型對(duì)不同系列的 FPGA 來(lái)說(shuō)是會(huì)變化的。

觸發(fā)器可以被配置(編程)為寄存器或鎖存器;復(fù)用器可以被配置為選擇一個(gè)到邏輯塊的輸入或 LUT 的輸出;LUT 可以被配置為代表任何所要求的邏輯功能。在實(shí)際應(yīng)用中,即使最簡(jiǎn)單的 FPGA 都會(huì)使用四輸入 LUT,而一些更大更復(fù)雜的器件甚至?xí)Q(chēng)使用六、七或八輸入的 LUT,但為了簡(jiǎn)單起見(jiàn),我們還是討論三輸入版本。

8f2c95a0-ae52-11ed-bfe3-dac502259ad0.png

我們會(huì)在以后的文章中討論各種類(lèi)型的 FPGA 實(shí)現(xiàn)技術(shù)。現(xiàn)在我們只需要知道,F(xiàn)PGA 內(nèi)部的可編程單元可以用反熔絲、閃存單元或 SRAM 內(nèi)存單元來(lái)實(shí)現(xiàn)。先讓我們看一個(gè)用反熔絲技術(shù)創(chuàng)建的 FPGA 吧。這是一種一次性可編程(OTP)技術(shù),這意味著一旦你編程了這個(gè) FPGA,它將永遠(yuǎn)保持這個(gè)狀態(tài)而不再改變。

對(duì)基于反熔絲技術(shù)的 FPGA 來(lái)說(shuō),編程器件相當(dāng)于通過(guò)“硬件連線(xiàn)”將第一組復(fù)用器的輸入連接到實(shí)現(xiàn)目標(biāo)邏輯功能所需的正確 0 或 1 值。我們使用這個(gè) LUT 實(shí)現(xiàn)了前面那張圖隱含的公式 y=(a & b)|c。在實(shí)際應(yīng)用中,復(fù)用器可以用場(chǎng)效應(yīng)管的分支“樹(shù)”來(lái)實(shí)現(xiàn),但我們?cè)谶@里真的不用擔(dān)心最底層的實(shí)現(xiàn)細(xì)節(jié)。另外一種非常常見(jiàn)的 FPGA 實(shí)現(xiàn)技術(shù)是使用 SRAM 配置單元。同樣,我們會(huì)在以后的文章中討論更多的細(xì)節(jié)。這里我們所要知道的僅是當(dāng)電路板第一次上電時(shí),基于 SRAM 的 FPGA 會(huì)加載配置信息(我們可以把這個(gè)過(guò)程想像為器件的編程)。

我沒(méi)有顯示 0 和 1 被加載進(jìn) SRAM 單元的那種機(jī)制,因?yàn)槲也幌胱寙?wèn)題變得復(fù)雜。出于這次討論的目的,我們真的無(wú)需擔(dān)心這種“魔術(shù)”是如何發(fā)生的。我在這里唯一要提的事(給你考慮的空間)是—使用一種被稱(chēng)為部分再配置的技術(shù)—FPGA 的一部分可以發(fā)起對(duì)另一部分進(jìn)行再配置(當(dāng)然反過(guò)來(lái)也行)。對(duì)于具有微控制器和 / 或軟件背景的讀者來(lái)說(shuō),我們可以將這種技術(shù)想象為相當(dāng)于自我修改代碼的硬件。這意味著這種技術(shù)是非常非常強(qiáng)大的,但也會(huì)帶來(lái)很難隔離和調(diào)試的問(wèn)題。

FPGA 器件還包含有通用的輸入 / 輸出(GPIO)引腳和焊盤(pán)。通過(guò)配置單元,F(xiàn)PGA 器件內(nèi)的互連部分可以被編程為這樣:將器件的主輸入連接到一個(gè)或多個(gè)可編程邏輯塊的輸入。任何邏輯塊的輸出也可以用來(lái)驅(qū)動(dòng)任何其它邏輯塊的輸入和 / 或 FPGA 器件的主輸出。另外,GPIO 引腳可以被配置為支持種類(lèi)廣泛的 I/O 標(biāo)準(zhǔn),包括電壓、終端阻抗、擺率等。

8f460b2a-ae52-11ed-bfe3-dac502259ad0.png

世界上第一塊 FPGA 與本文中討論的架構(gòu)非常類(lèi)似。這塊 FPGA 就是賽靈思公司在 1985 年推出的 XC2064(是用 2um 工藝節(jié)點(diǎn)制造的),它包含有 8×8=64 的邏輯塊陣列,每個(gè)邏輯塊包含一個(gè)四輸入 LUT 和其它一些簡(jiǎn)單功能。從那以后,F(xiàn)PGA 發(fā)展勢(shì)不可擋,正像我們看到的那樣,更為復(fù)雜的 FPGA 架構(gòu)

如果某個(gè)邏輯功能(比方說(shuō)計(jì)數(shù)器)是用 FPGA 的可編程構(gòu)造實(shí)現(xiàn)的,那么這個(gè)功能可以被說(shuō)成“軟功能”。相比之下,如果某個(gè)功能是直接用芯片實(shí)現(xiàn)的,則被說(shuō)成“硬功能”。(隨著這些功能變得越來(lái)越大越來(lái)越復(fù)雜,我們一般稱(chēng)它們?yōu)閮?nèi)核)。軟內(nèi)核的優(yōu)勢(shì)在于,你可以讓它們做你想讓它們做的任何事。硬內(nèi)核的優(yōu)勢(shì)是它們占用較少的硅片面積,具有較高的性能,并且功耗較低。最優(yōu)的解決方案是混合使用軟內(nèi)核(用可編程構(gòu)造實(shí)現(xiàn))和硬內(nèi)核(直接用硅片實(shí)現(xiàn))。

舉例來(lái)說(shuō),該器件可能包含數(shù)千個(gè)加法器、乘法器和數(shù)字信號(hào)處理(DSP)功能;數(shù)兆位的片上內(nèi)存,大量的高速串行互連(SERDES)收發(fā)器模塊,以及眾多的其它功能。

這是真正讓人興奮的事情,你可以用 FPGA 中的普通可編程構(gòu)造做的事情之一是,使用其中的一部分實(shí)現(xiàn)一個(gè)或多個(gè)軟處理器內(nèi)核。當(dāng)然,你可以實(shí)現(xiàn)不同規(guī)模的處理器。舉例來(lái)說(shuō),你可以創(chuàng)建一個(gè)或多個(gè) 8 位的處理器,加上一個(gè)或多個(gè) 16 位或 32 位的軟處理器—所有處理器都在同一器件中。

一種情形是軟件開(kāi)發(fā)人員捕獲他們的代碼,在 SoC FPGA 的 Cortex-A9 處理器上運(yùn)行這些代碼,然后通過(guò)分析識(shí)別任何可能?chē)?yán)重影響性能并成為瓶頸的功能。這些功能隨后可能就轉(zhuǎn)交給硬件設(shè)計(jì)工程師用可編程構(gòu)造來(lái)實(shí)現(xiàn),它們(這些功能,不是設(shè)計(jì)工程師)將使用較低的時(shí)鐘頻率提供明顯更高的性能,而且功耗更低。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    18927

    瀏覽量

    227245
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598962
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16667

    瀏覽量

    347814
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    1990

    瀏覽量

    60873

原文標(biāo)題:你必須知道的FPGA硬件屬性

文章出處:【微信號(hào):FPGA研究院,微信公眾號(hào):FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA必須知道的那些事兒

    單元,如何利用好這些單元實(shí)現(xiàn)復(fù)雜的邏輯電路設(shè)計(jì),是從菜鳥(niǎo)邁向高手的路上必須要克服的障礙。而這一切,還是必須先從了解FPGA內(nèi)部邏輯及其工作原理做起。2、錯(cuò)誤理解HDL語(yǔ)言,怎么看都看不出硬件
    發(fā)表于 01-12 10:42

    【經(jīng)典】必須知道的495個(gè)C語(yǔ)言問(wèn)題

    必須知道的495個(gè)C語(yǔ)言問(wèn)題
    發(fā)表于 08-02 12:43

    電子工程師必須知道的幾個(gè)技術(shù)問(wèn)題

    ` 本帖最后由 gk320830 于 2015-3-7 22:30 編輯 電子工程師必須知道的幾個(gè)技術(shù)問(wèn)題`
    發(fā)表于 08-20 21:41

    必須知道的495個(gè)C語(yǔ)言問(wèn)題

    必須知道的495個(gè)C語(yǔ)言問(wèn)題
    發(fā)表于 11-03 09:04

    電子工程師必須知道的幾個(gè)技術(shù)問(wèn)題.pdf

    `電子工程師必須知道的幾個(gè)技術(shù)問(wèn)題.pdf`
    發(fā)表于 11-07 21:41

    必須知道!Upton期待樹(shù)莓派唄"山寨"?。?!

    `這樣的事件必須知道!Upton期待樹(shù)莓派唄"山寨"Upton表示Raspberry Pi注冊(cè)為非營(yíng)利性組織意味著銷(xiāo)售所得的全部資金都將重新投入運(yùn)營(yíng),他還希望有
    發(fā)表于 09-04 17:00

    學(xué)習(xí)開(kāi)關(guān)電源必須知道的電路詳解

    學(xué)習(xí)開(kāi)關(guān)電源必須知道的電路詳解
    發(fā)表于 05-23 11:40

    做電機(jī)行業(yè)必須知道的電機(jī)常識(shí)匯總

    做電機(jī)行業(yè)必須知道的45個(gè)電機(jī)常識(shí)!
    發(fā)表于 01-25 06:43

    關(guān)于ESP8266必須知道的事

    寫(xiě)在前面之前博主學(xué)習(xí)了很多網(wǎng)絡(luò)編程的東西是因?yàn)楣ぷ魃弦_(kāi)始做“智能家居”、物聯(lián)網(wǎng)方面的東西了。下面主角要登場(chǎng)了。就是單片機(jī)。關(guān)于ESP8266必須知道的博主使用的是安信可的產(chǎn)品,12S常用AT指令
    發(fā)表于 11-23 07:39

    場(chǎng)效應(yīng)管必須知道的基礎(chǔ)知識(shí)!

    場(chǎng)效應(yīng)管必須知道的基礎(chǔ)知識(shí),華中科技大學(xué)老師整理的PPT非常實(shí)用
    發(fā)表于 06-08 17:31 ?52次下載

    MES與ERP集成這些必須知道的資料分析

    MES與ERP集成須知
    發(fā)表于 01-04 16:18 ?3次下載

    MCU工程師須知FPGA硬件屬性

    本文首先介紹了FPGA硬件構(gòu)造屬性,其次介紹了FPGA開(kāi)發(fā)流程,最后介紹了FPGA總體設(shè)計(jì)考慮的硬件
    的頭像 發(fā)表于 05-31 10:12 ?6703次閱讀
    MCU工程師<b class='flag-5'>須知</b>的<b class='flag-5'>FPGA</b><b class='flag-5'>硬件</b><b class='flag-5'>屬性</b>

    電阻的秘密——必須知道的電阻參數(shù)

    電阻的秘密——必須知道的電阻參數(shù)
    的頭像 發(fā)表于 12-06 14:31 ?694次閱讀
    電阻的秘密——<b class='flag-5'>你</b><b class='flag-5'>必須知道</b>的電阻參數(shù)

    POL負(fù)載點(diǎn)電源設(shè)計(jì)中有何訣竅?有兩點(diǎn)很關(guān)鍵,必須知道

    POL負(fù)載點(diǎn)電源設(shè)計(jì)中有何訣竅?有兩點(diǎn)很關(guān)鍵,必須知道
    的頭像 發(fā)表于 12-06 16:06 ?1733次閱讀
    POL負(fù)載點(diǎn)電源設(shè)計(jì)中有何訣竅?有兩點(diǎn)很關(guān)鍵,<b class='flag-5'>你</b><b class='flag-5'>必須知道</b>

    學(xué)習(xí)FPGA必須知道的社區(qū)

    學(xué)習(xí)FPGA必須知道的社區(qū)
    的頭像 發(fā)表于 01-03 17:51 ?282次閱讀
    學(xué)習(xí)<b class='flag-5'>FPGA</b><b class='flag-5'>必須知道</b>的社區(qū)