FPGA如何改變嵌入設(shè)計格局
由于經(jīng)濟(jì)下滑損及開發(fā)預(yù)算減少,嵌入系統(tǒng)設(shè)計者正在轉(zhuǎn)向FPGA(現(xiàn)場可編程門陣列)技術(shù),以縮減開發(fā)周期、對抗設(shè)備老化以及簡化產(chǎn)品升級。通過采用數(shù)量龐大且不斷增加的FPGA開發(fā)工具、可重用邏輯單元以及市售商用模塊,設(shè)計者可以構(gòu)思出高性能嵌入系統(tǒng),并且能夠根據(jù)需求變化作重新配置,從而盡量減少對工程和制造的影響。過去,電路板設(shè)計者使用這些器件作系統(tǒng)元件之間的互連,但最新的高密度產(chǎn)品也可以替代一個典型嵌入項(xiàng)目中的處理器、內(nèi)存、定制邏輯及很多外設(shè)。盡管它有能力改變嵌入架構(gòu),設(shè)計者仍應(yīng)分析性能、功率和成本局限,以確定FPGA技術(shù)最適用的地方。
本文引用地址:http://2s4d.com/article/150656.htm自20世紀(jì)70年代可編程邏輯陣列出現(xiàn)以來,F(xiàn)PGA技術(shù)已發(fā)展成為一個興旺的市場。盡管每家供應(yīng)商FPGA的精確結(jié)構(gòu)不同,但基本FPGA架構(gòu)都包含了有電可編程互連的邏輯塊陣列,用戶或設(shè)計者可以在制造以后作配置。早期的器件有數(shù)千個等效門,但今天這一數(shù)量已增長到數(shù)百萬。這種互連靈活性使設(shè)計者能夠建立準(zhǔn)確匹配于特定嵌入應(yīng)用需求的硬件功能。除了邏輯塊以外,最新器件還在硅片中嵌入專用處理器,使設(shè)計者能夠作出軟硬件權(quán)衡,滿足性能的需求。
在相符合的嵌入應(yīng)用中,F(xiàn)PGA技術(shù)為開發(fā)人員提供了多種針對分立實(shí)現(xiàn)或定制邏輯實(shí)現(xiàn)的優(yōu)勢。很多有經(jīng)驗(yàn)的設(shè)計者在說到自己采用FPGA的主要原因時,都會提到較短的開發(fā)日程、更低的非重復(fù)成本以及量產(chǎn)后合并改動的能力。在高性能應(yīng)用中,設(shè)計者可以建立多個并行的計算結(jié)構(gòu),其性能超過專用處理器。FPGA有一個經(jīng)常被提及的缺點(diǎn),那就是與通用處理器或定制ASIC相比需要更多的功耗。同樣,由于存在多個導(dǎo)通晶體管和連接路徑的電阻,采用FPGA的產(chǎn)品也慢于相比的普通設(shè)計。雖然沒有考慮其他方案的開發(fā)時間,但FPGA技術(shù)的重復(fù)成本高于普通電路或定制電路。
FPGA采用多種技術(shù)作互連和邏輯塊的編程。例如,反熔絲硅結(jié)構(gòu)(antifuse-silicon)在其兩端施加一個高電壓時,會建立一個低電阻的鏈接。其優(yōu)點(diǎn)包括低串聯(lián)電阻和低寄生電容,但主要缺點(diǎn)是采用反熔絲的FPGA是一次寫入器件,因此無法重新配置。最常見的編程技術(shù)是靜態(tài)RAM單元,通過使能和禁止導(dǎo)通晶體管而對FPGA結(jié)構(gòu)編程。雖然要多個晶體管才能實(shí)現(xiàn)一個存儲單元,但SRAM有快速的可重編程能力,并且可以用常規(guī)的硅CMOS技術(shù)來實(shí)現(xiàn)。基于SRAM的FPGA還需要一個外部引導(dǎo)器件,在上電時設(shè)定存儲器。另外也可以用EPROM、EEPROM和閃存技術(shù)作FPGA編程,優(yōu)點(diǎn)也是可重復(fù)編程能力,而無需外接引導(dǎo)器件。
制造商也創(chuàng)造出多種對FPGA電路作描述和編程的方法。最常見的方法是采用一種HDL(硬件描述語言),如Verilog或VHDL(超高速集成電路HDL),描述一個設(shè)計的功能和結(jié)構(gòu)。一旦定義了架構(gòu),就可以用另外的工具在一款規(guī)定的FPGA上實(shí)現(xiàn)這個結(jié)構(gòu)。這個過程包括了電源與結(jié)構(gòu)優(yōu)化,然后是硬件分區(qū)、布局以及互連的布線。最后階段是將設(shè)計裝入目標(biāo)FPGA,在真實(shí)的硬件環(huán)境中作測試。
圖1 National Instruments公司的嵌入軟件評估工具套件使用戶能夠從一個圖形化的框圖,創(chuàng)建、編譯和運(yùn)行FPGA應(yīng)用。
隨著FPGA功能伴隨復(fù)雜性和密度而增長,設(shè)計者發(fā)明了各種方式來交換HDL代碼的模塊化塊,這樣其他人就可以整合到自己產(chǎn)品中。這些功能塊一般叫做IP(知識產(chǎn)權(quán))核心,它使制造商能夠重新使用以前設(shè)計中的電路部件,或只要簡單地從外部購買功能。IP核心的實(shí)例包括UART、以太網(wǎng)接口、編解碼器和微控制器等。制造商直接在一個FPGA硅片上物理地實(shí)現(xiàn)硬IP核心,并以HDL代碼形式提供軟核心,它可以跨多種器件作移植。IP核心可從FPGA供應(yīng)商和第三方供應(yīng)商處直接獲得,或從Open Cores等來源的免費(fèi)開源HDL代碼獲得。商用IP通常要付費(fèi),并包括有文檔、驗(yàn)證工具和支持。
對一些FPGA開發(fā)者來說,設(shè)計安全性與IP損失可能是一個主要考慮因素。在有些情況下,尤其是那些在外部保存配置數(shù)據(jù),并在上電時將其傳送給FPGA的SRAM型設(shè)計,IP信息比較脆弱。為防止IP損失,F(xiàn)PGA供應(yīng)商采用非易失性編程技術(shù)以及嵌入序列號來跟蹤偽造產(chǎn)品。
所有FPGA供應(yīng)商都提供一個工具集,包括編程工具和與器件配套的IP。例如,Xilinx公司的Virtex-5 FX70T版EDK(嵌入開發(fā)套件),提供了一個ML507開發(fā)板、Platform Studio嵌入工具組件以及ISE(集成軟件環(huán)境),支持PowerPC 440硬處理器和MicroBlaze軟處理器(圖1)。該套件具有一個集成開發(fā)環(huán)境、多種軟件工具、配置向?qū)?,以及IP目標(biāo)的嵌入設(shè)計。用戶可以在邏輯圖編輯器中輸入一個電路,對電路時序性能作仿真,對Virtex-5 FPGA作編譯,然后在ML507原型板上測試設(shè)計。Virtex-5 FX70T EDK可以在線購買,價格為2595美元。
評論