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

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

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

關(guān)于可編程邏輯器件的性能分析和應(yīng)用

貿(mào)澤電子 ? 來(lái)源:djl ? 作者: Barry Manz, Mouser E ? 2019-08-27 17:53 ? 次閱讀

如今,不僅是高性能FPGA還有其它邏輯器件都正在變得越來(lái)越強(qiáng)大了,它們正整合著傳統(tǒng)上由其它類型的邏輯器件完成的功能,比如CPU、GPU還有DSP等。它們可謂是瑞士軍刀的半導(dǎo)體版本。

1969年,成千上萬(wàn)人(包括作者本人)聚在烏茲托克音樂(lè)節(jié),協(xié)和號(hào)飛機(jī)進(jìn)行了第一次試飛,尼克松上任,此外還有一件重大的事情在那年發(fā)生:帶有12個(gè)門和30個(gè)輸入/輸出引腳的XC157掩模編程門陣列出現(xiàn)在了1968版古老的摩托羅拉半導(dǎo)體數(shù)據(jù)手冊(cè)上(圖1)。

用老生常談的話說(shuō)就是,接下來(lái)的事大家都知道了——由許許多多廠家制造的不同邏輯器件讓眾多類型的嵌入式系統(tǒng)成為現(xiàn)實(shí)。

根據(jù)復(fù)雜度的相對(duì)級(jí)別,紛繁復(fù)雜的邏輯器件可大致分為三類(表1)。位于表中頂層的是現(xiàn)場(chǎng)可編程器件的霸主——FPGA以及它們的變體——自從1985年David W.Page和LuVerne Peterson發(fā)起這個(gè)概念后,它們已經(jīng)有很長(zhǎng)的一段歷史了。FPGA和它們最相近的兄弟復(fù)雜可編程邏輯器件(CPLD)的區(qū)別在于它們能夠完成復(fù)雜功能的能力,它們就像一個(gè)“空白的畫布”,它們的功能在之后被描繪在畫布上,而不是由廠家預(yù)先特定地賦予。

關(guān)于可編程邏輯器件的性能分析和應(yīng)用

圖1:如1968版摩托羅拉半導(dǎo)體數(shù)據(jù)書冊(cè)上描述的摩托羅拉XC157”多門陣列”感謝:Jason Scott,所有者,textfiles.com

FPGA真可謂是大顯神通,因?yàn)樗鼈儫o(wú)需外設(shè)就可以進(jìn)行計(jì)算、信號(hào)處理、高速通信還有其它功能。在一個(gè)FPGA上去定義數(shù)量龐大的連接和器件邏輯功能從來(lái)都不是意見容易的事,也沒(méi)有必要那樣做,F(xiàn)PGA廠商和軟件開發(fā)商已經(jīng)開發(fā)出來(lái)軟件工具可以讓開發(fā)的過(guò)程變得輕松。為了加速編程開發(fā)過(guò)程,也可以使用預(yù)先設(shè)計(jì)的和驗(yàn)證了的知識(shí)產(chǎn)權(quán)(IP)功能模塊。

FPGA這個(gè)概念的提出始于19世紀(jì)80年代末,它是美國(guó)海軍水面作戰(zhàn)部一個(gè)計(jì)劃的成果,當(dāng)時(shí)業(yè)內(nèi)人士開發(fā)出了一個(gè)實(shí)現(xiàn)了600,000個(gè)可編程門的計(jì)算機(jī)。那不久之后,第一款商業(yè)FPGA(XC2064)由賽靈思創(chuàng)始人Ross Freeman和Bernard Vonderschmiitt在1985年推出。該FPGA是個(gè)8x8可配置邏輯模塊(CLB)格(64個(gè)CLB),帶有兩個(gè)3輸入查找表(LUT)。

很快到了現(xiàn)在,發(fā)展的速度讓人吃驚。如今集成ARM Cortex內(nèi)核或其它處理內(nèi)核的FPGA能夠給DSP、集成ADC每秒執(zhí)行超過(guò)1萬(wàn)億次的浮點(diǎn)型運(yùn)算,總吞吐率(所有串行收發(fā)通道)達(dá)3Tb/s,有超過(guò)5千萬(wàn)個(gè)邏輯元件,超高速內(nèi)存(容量很大),還有128位加密。所有的這些甚至還會(huì)有更多都包含在這個(gè)單一器件上,并且功耗很低,前所未有的低延遲,還有更多讓人印象深刻的屬性。如今FPGA能夠?qū)崿F(xiàn)這么多不同類型的功能以至于它們現(xiàn)在不僅僅是一個(gè)片上系統(tǒng),同時(shí)也是一個(gè)更靈活、復(fù)雜的系統(tǒng)。例如,以前通訊系統(tǒng)中用到一組ASIC電路來(lái)實(shí)現(xiàn)前端的接收機(jī)功能,如今利用一片F(xiàn)PGA就能搞定。不像ASIC電路那樣在制造過(guò)程中功能就固定了,F(xiàn)PGA可被再編程,而硬件上沒(méi)有大體的改變。

FPGA的下一個(gè)前沿

下一步FPGA主要應(yīng)用在可配置計(jì)算當(dāng)中,連同軟件一起,它們提供一臺(tái)計(jì)算機(jī)的所有功能,利用一個(gè)通用處理器作為控制。這并不是一個(gè)新概念,它已經(jīng)在19世紀(jì)60年代被人們描述出來(lái)了,并于1991年由Algotronix公司的Tom Kean、John Gray博士和David Rees博士在CHS2X4平臺(tái)上展示出來(lái)了。此平臺(tái)基于該公司的CAL1024 FPGA,有1024個(gè)1.5-μm雙金屬CMOS工藝的可編程器件,并且是第一款能對(duì)控制內(nèi)存提供隨機(jī)訪問(wèn)的FPGA,也是第一款能夠給要構(gòu)建的設(shè)備使能陣列提供輸入/輸出信號(hào)共享的FPGA。這一成就和技術(shù)使得賽靈思在1993年收購(gòu)了Algotronix公司。

在一些特定高性能系統(tǒng)中已經(jīng)使用FPGA來(lái)進(jìn)行可重新配置計(jì)算了,包括加密領(lǐng)域。一個(gè)有趣的例子是密碼破譯機(jī)器即成本優(yōu)化并行代碼斷路器(COPACOBANA),專門為如數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)及其它并行計(jì)算問(wèn)題設(shè)計(jì)。在任何意義上這并不是一個(gè)通用用途,因?yàn)樗耐ㄐ攀芟抻谒俣群蛶?,相比基于CPU的電腦時(shí)鐘速率也較慢。盡管如此,對(duì)于那些適合使用FPGA的應(yīng)用,成本能夠大大降低,并且有很強(qiáng)的性能。通過(guò)僅僅使用FPGA還有其它現(xiàn)成的部件,能夠使成本僅僅是電子前沿基金的DeepCrack那樣基于CPU的加密計(jì)算機(jī)成本的幾分之一。

COPACOBANA(圖2)使用了120個(gè)FPGA(根據(jù)具體設(shè)計(jì)增減),適配19英尺槽的三個(gè)單元。它每秒進(jìn)行480億此DES解密,功耗僅為600W,只需要運(yùn)行Windows或Linux系統(tǒng)的PC機(jī)控制就行。在加密硬件和嵌入式系統(tǒng)2006(CHES2006)工作坊的秘鑰挑戰(zhàn)中,COPACABANA花費(fèi)了21小時(shí)26分鐘29秒,以每秒431.852億值得吞吐率使用了128個(gè)處理器中的108個(gè)。在搜索了4.7%的秘鑰空間后,它找到了秘鑰。這種類型的硬件用在常規(guī)硬件攻擊中通過(guò)迭代猜測(cè)秘鑰或密碼來(lái)解鎖加密的傳輸。

圖2:COPACABANA:基于FPGA的廉價(jià)代碼破譯機(jī)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)注

    7

    文章

    517

    瀏覽量

    44133
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    可編程邏輯器件

    可編程邏輯器件到底是干什么用的呢,簡(jiǎn)單的說(shuō),就是通過(guò)重新寫程序,重新注入到這個(gè)器件中達(dá)到實(shí)現(xiàn)其它的功能。最常見的當(dāng)屬電腦了。電腦本身除了加法,減法和簡(jiǎn)單的邏輯運(yùn)算四種。比如要是想實(shí)現(xiàn)一個(gè)功能讓電腦
    發(fā)表于 04-15 10:02

    可編程邏輯器件是如何發(fā)展的?

    可編程邏輯器件是如何發(fā)展的?
    發(fā)表于 04-29 06:23

    PLD可編程邏輯器件

    PLD可編程邏輯器件 英文全稱為:programmable logic device 即 PLD。PLD是做為一種通用集成電路產(chǎn)生的,他的邏輯功能按照用戶對(duì)器件編程來(lái)確定。一般的PLD
    發(fā)表于 07-22 09:05

    可編程邏輯器件設(shè)計(jì)

    可編程邏輯器件設(shè)計(jì) (264頁(yè),nlc格式)
    發(fā)表于 03-25 16:41 ?66次下載

    可編程邏輯器件基礎(chǔ)及應(yīng)用實(shí)驗(yàn)指導(dǎo)書

    可編程邏輯器件基礎(chǔ)及應(yīng)用實(shí)驗(yàn)指導(dǎo)書 《可編程邏輯器件基礎(chǔ)及應(yīng)用》是一門側(cè)重掌握可編程邏輯器件的基本結(jié)構(gòu)和原理的課程。重點(diǎn)是使學(xué)生掌握基于可編程
    發(fā)表于 03-24 14:22 ?29次下載

    什么是PLD(可編程邏輯器件)

    什么是PLD(可編程邏輯器件) PLD是可編程邏輯器件(Programable Logic Device)的簡(jiǎn)稱,F(xiàn)PGA是現(xiàn)場(chǎng)可編程門陣列(Field Programable Gate Array)
    發(fā)表于 06-20 10:32 ?2.7w次閱讀
    什么是PLD(<b class='flag-5'>可編程邏輯器件</b>)

    EDA技術(shù)與應(yīng)用(可編程邏輯器件)

    7.1 可編程邏輯器件的基本原理 7.2 可編程邏輯器件的設(shè)計(jì)技術(shù) 7.3 可編程邏輯器件編程與配置
    發(fā)表于 05-23 10:46 ?142次下載
    EDA技術(shù)與應(yīng)用(<b class='flag-5'>可編程邏輯器件</b>)

    可編程邏輯器件FPGA/CPLD結(jié)構(gòu)與應(yīng)用

    可編程邏輯器件FPGA/CPLD結(jié)構(gòu)與應(yīng)用
    發(fā)表于 12-11 23:38 ?0次下載

    可編程邏輯器件(書皮)

    可編程邏輯器件(書皮)
    發(fā)表于 07-10 14:34 ?0次下載

    可編程邏輯器件原理、開發(fā)與應(yīng)用

    可編程邏輯器件原理、開發(fā)與應(yīng)用
    發(fā)表于 09-19 16:04 ?19次下載
    <b class='flag-5'>可編程邏輯器件</b>原理、開發(fā)與應(yīng)用

    可編程邏輯器件PLD課件下載

    可編程邏輯器件PLD課件下載
    發(fā)表于 08-13 10:58 ?33次下載

    可編程邏輯器件EPLD是如何設(shè)計(jì)的

    可編程邏輯器件(Electrically Programmable Logic Device,EPLD)是指采用電信號(hào)的可擦可編程邏輯器件
    發(fā)表于 08-22 18:12 ?1492次閱讀

    可編程邏輯器件的結(jié)構(gòu)

    常見的可編程邏輯器件分為FPGA、EPLD(CPLD)。下面簡(jiǎn)單介紹兩類器件的結(jié)構(gòu)和區(qū)別。
    的頭像 發(fā)表于 03-24 14:18 ?1228次閱讀
    <b class='flag-5'>可編程邏輯器件</b>的結(jié)構(gòu)

    可編程邏輯器件測(cè)試

    可編程邏輯器件 (Programmable Loeie Device,PLD)是一種用戶編程實(shí)現(xiàn)某種邏輯功能的邏輯器件,主要由
    發(fā)表于 06-06 15:37 ?706次閱讀
    <b class='flag-5'>可編程邏輯器件</b>測(cè)試

    什么叫可編程邏輯器件 可編程邏輯器件有哪些特征和優(yōu)勢(shì)?

    可編程邏輯器件(Programmable Logic Device,PLD)是一類集成電路器件,可以根據(jù)用戶的需求進(jìn)行編程和配置,以實(shí)現(xiàn)特定的邏輯功能。它們具有
    發(fā)表于 09-14 15:25 ?2982次閱讀