1,、FPGA——現(xiàn)場(chǎng)可編程門陣列
FPGA(Field Programmable Gate Array),,即現(xiàn)場(chǎng)可編程門陣列,,是一種硬件可重構(gòu)的體系結(jié)構(gòu),。它是在可編程陣列邏輯 PAL(Programmable Array Logic),、門陣列邏輯 GAL(Gate Array Logic),、可編程邏輯器件 PLD(Programmable Logic Device)等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物,。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,,既解決了全定制電路的不足,,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn),。
FPGA運(yùn)用硬件描述語(yǔ)言(Verilog或VHDL)描述邏輯電路,可以利用邏輯綜合和布局,、布線工具軟件,,快速地?zé)浿罠PGA上進(jìn)行測(cè)試。人們可以根據(jù)需要,,通過(guò)可編輯的連接,,把FPGA內(nèi)部的邏輯塊連接起來(lái),通過(guò)配置它的可編程架構(gòu)來(lái)實(shí)現(xiàn)任意需要的數(shù)字功能組合,。FPGA由Xilinx,,Alter等器件廠家提供,設(shè)計(jì)人員只需要根據(jù)需求選擇相應(yīng)的器件,,然后設(shè)計(jì)邏輯電路,,并下載到FPGA器件中去,實(shí)現(xiàn)需求的電路功能,,隨時(shí)可以修改電路功能,。
它是當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)的主要硬件平臺(tái),其主要特點(diǎn)就是完全由用戶通過(guò)軟件進(jìn)行配置和編程,,從而完成某種特定的功能,,且可以反復(fù)擦寫,。在修改和升級(jí)時(shí),不需額外地改變PCB 電路板,,只是在計(jì)算機(jī)上修改和更新程序,,使硬件設(shè)計(jì)工作成為軟件開(kāi)發(fā)工作,縮短了系統(tǒng)設(shè)計(jì)的周期,,提高了實(shí)現(xiàn)的靈活性并降低了成本,。FPGA特別適合于樣品研制或小批量產(chǎn)品開(kāi)發(fā),使產(chǎn)品能以最快的速度上市,,而當(dāng)市場(chǎng)擴(kuò)大時(shí),,它可以很容易的由ASIC實(shí)現(xiàn),因此開(kāi)發(fā)風(fēng)險(xiǎn)也大為降低,。
FPGA的特點(diǎn):
1.加電時(shí),,F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,,F(xiàn)PGA進(jìn)入工作狀態(tài),。掉電后,F(xiàn)PGA恢復(fù)成白片,,內(nèi)部邏輯關(guān)系消失,,因此,F(xiàn)PGA能夠反復(fù)使用,。理論上,,F(xiàn)PGA允許無(wú)限次的編程。
2.FPGA的編程無(wú)須專用的FPGA編程器,,只須用通用的EPROM、PROM編程器即可,。
3.FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳,。
4.快速成品,可以被修改來(lái)改正程序中的錯(cuò)誤和更便宜的造價(jià),。
5.用戶不需要介入芯片的布局布線和工藝問(wèn)題,,而且可以隨時(shí)改變其邏輯功能,使用靈活,。
6.FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè)概念,,內(nèi)部包括可配置邏輯模塊CLB、輸出輸入模塊IOB和內(nèi)部連線三個(gè)部分?,F(xiàn)場(chǎng)可編程門陣列(FPGA)是可編程器件,。FPGA利用小型查找表(16×1RAM)來(lái)實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,,觸發(fā)器再來(lái)驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,,由此構(gòu)成了即可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過(guò)向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來(lái)實(shí)現(xiàn)的,,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,,并最終決定了FPGA所能實(shí)現(xiàn)的功能。
2,、ASIC——專用集成電路
ASIC(Application Specific Integrated Circuits),,即專用集成電路,是一種為專門目的而設(shè)計(jì)的集成電路,。是指應(yīng)特定用戶要求和特定電子系統(tǒng)的需要而設(shè)計(jì),、制造的集成電路。ASIC的特點(diǎn)是面向特定用戶的需求,,品種多,、批量少,要求設(shè)計(jì)和生產(chǎn)周期短,,它作為集成電路技術(shù)與特定用戶的整機(jī)或系統(tǒng)技術(shù)緊密結(jié)合的產(chǎn)物,,與通用集成電路相比具有體積更小、重量更輕,、功耗更低,、可靠性提高、性能提高,、保密性增強(qiáng),、成本降低等優(yōu)點(diǎn)。
ASIC是定制的,,具體分為全定制和半定制,。全定制設(shè)計(jì)可以實(shí)現(xiàn)最小面積,最佳布線布局,、最優(yōu)功耗速度積,,得到最好的電特性。特點(diǎn):精工細(xì)作,,設(shè)計(jì)要求高,、周期長(zhǎng),設(shè)計(jì)成本昂貴,。半定制設(shè)計(jì)方法又分成基于標(biāo)準(zhǔn)單元的設(shè)計(jì)方法CBIC和基于門陣列的設(shè)計(jì)方法,。半定制主要適合于開(kāi)發(fā)周期短,低開(kāi)發(fā)成本,、投資,、風(fēng)險(xiǎn)小的小批量數(shù)字電路設(shè)計(jì)。
ASIC的特點(diǎn):
面向特定用戶的需求,ASIC在批量生產(chǎn)時(shí)與通用集成電路相比具有體積更小,、功耗更低,、可靠性提高、性能提高,、保密性增強(qiáng),、成本降低等優(yōu)點(diǎn)。
ASIC需要較長(zhǎng)的開(kāi)發(fā)周期,,風(fēng)險(xiǎn)較大,,一旦有問(wèn)題,成片全部作廢,,所以小公司已經(jīng)玩不起了,。
3、兩者的設(shè)計(jì)流程
完整的FPGA設(shè)計(jì)流程包括功能描述,、電路設(shè)計(jì)與輸入,、功能仿真、綜合優(yōu)化,、綜合后仿真,、實(shí)現(xiàn)與布局布線、時(shí)序仿真,、板級(jí)仿真與驗(yàn)證,、調(diào)試與加載配置。
ASIC的設(shè)計(jì)流程(數(shù)字芯片)包括:功能描述,、模塊劃分,、模塊編碼輸入、模塊級(jí)仿真驗(yàn)證,、系統(tǒng)集成和系統(tǒng)仿真驗(yàn)證,、綜合、STA(靜態(tài)時(shí)序分析),、形式驗(yàn)證,。
在ASIC設(shè)計(jì)過(guò)程中,往往要用到FPGA進(jìn)行原型驗(yàn)證,。FPGA驗(yàn)證是進(jìn)行ASIC設(shè)計(jì)的重要環(huán)節(jié),其后,,還需要引入ASIC版本源碼,,插入IOPAD,DFT,,功耗估計(jì)和進(jìn)行其它后端流程,。完成FPGA驗(yàn)證可以說(shuō)就完成了ASIC整套流程的50~80%。
4、ASIC和FPGA之間的比較
目前用CPLD(復(fù)雜可編程邏輯器件)和FPGA(現(xiàn)場(chǎng)可編程邏輯陣列)來(lái)進(jìn)行ASIC設(shè)計(jì)是最為流行的方式之一,,它們的共性是都具有用戶現(xiàn)場(chǎng)可編程特性,,都支持邊界掃描技術(shù),但兩者在集成度,、速度以及編程方式上具有各自的特點(diǎn),。
用途:
FPGA主要用于要求快速迭代或者小批量產(chǎn)品,或者作為ASIC的算法驗(yàn)證加速,。
ASIC用于設(shè)計(jì)規(guī)模大,,復(fù)雜度比較高的芯片,或者是成熟度高,,產(chǎn)量比較大的產(chǎn)品,。
成本:
小批量需求時(shí),單片F(xiàn)PGA成本低于ASIC,,隨著產(chǎn)品量的增加,,單片ASIC成本逐步降低。FPGA貴在單片,,開(kāi)發(fā)工具和風(fēng)險(xiǎn)基本不存在,。對(duì)于ASIC貴在流片的費(fèi)用和開(kāi)發(fā)工具,NRE費(fèi)用隨著工藝的提高變相當(dāng)貴,,除非你的芯片一次成功可以量產(chǎn),,否則單片費(fèi)用將其貴無(wú)比!
功耗:
在相同工藝條件下,,F(xiàn)PGA要大于ASIC,。FPGA,尤其是基于占用大量硅面積的,、每個(gè)單元六個(gè)晶體管的靜態(tài)存儲(chǔ)器(SRAM)的查尋表(LUT)和配置元件技術(shù)的FPGA,,其功耗要比對(duì)等的ASIC大得多。
速度:
FPGA內(nèi)部是基于通用的結(jié)構(gòu),,根據(jù)RTL設(shè)計(jì)選擇內(nèi)部布局布線,,F(xiàn)PGA結(jié)構(gòu)上的通用性必然導(dǎo)致冗余。
ASIC是根據(jù)設(shè)計(jì)需求,,最優(yōu)化cell邏輯資源,,沒(méi)有結(jié)構(gòu)上的限制,并且做到最優(yōu)布局走線,,降低走線延遲和CELL延時(shí),。
相同的工藝和設(shè)計(jì),在FPGA上的速度應(yīng)該比ASIC跑得慢,。
面積:
定制化的電路設(shè)計(jì)和工藝使用ASIC面積小于FPGA,。FPGA要規(guī)模大得多才能實(shí)現(xiàn)ASIC相同的功能,,主頻還只有幾分之一。因此,,F(xiàn)PGA相對(duì)于ASIC來(lái)說(shuō)還是大很多的,。
其他方面:
ASIC用于大型項(xiàng)目,而對(duì)于需要快速投放市場(chǎng)且支持遠(yuǎn)程升級(jí)的小型項(xiàng)目,,F(xiàn)PGA則更為適合,。FPGA技術(shù)的主要優(yōu)勢(shì)仍是產(chǎn)品投放市場(chǎng)的時(shí)間較短。
在ASIC的優(yōu)勢(shì)方面,,ASIC加電后可立即運(yùn)行,,就單位邏輯大小而言封裝選擇更多,還可包括某些模擬邏輯,。與此相對(duì)比,,F(xiàn)PGA加載配置進(jìn)入存儲(chǔ)器需要時(shí)間,因此不能立即工作,。此外,,F(xiàn)PGA的封裝也較復(fù)雜。
除此之外,,F(xiàn)PGA內(nèi)部還包括接口I/O,,I/O分為普通I/O和高速I/O,高速I/O支持例如高速的SERDES,,用于實(shí)現(xiàn)XAUI,,PCIE等高速接口,這些接口動(dòng)輒幾Gbps到10Gbps以上,。此外種類多種多樣的硬核IP也是各FPGA廠商差異化競(jìng)爭(zhēng)利器,,例如POWERPC、ARM等硬核IP,。從而構(gòu)成CPU+FPGA于一體的集可編程性和可重構(gòu)的處理平臺(tái),。因此,相對(duì)來(lái)所,,F(xiàn)PGA雖然發(fā)展有二三十年的歷史,,其基本架構(gòu)一直不變不大。
兩者的定位:
FPGA和ASIC產(chǎn)品的使用要根據(jù)產(chǎn)品的定位和設(shè)計(jì)需要來(lái)選用,,ASIC產(chǎn)品適用于設(shè)計(jì)規(guī)模特別大,,如CPU、DSP或多層交換芯片等,,或者是應(yīng)用于技術(shù)非常成熟且利潤(rùn)率非常低的產(chǎn)品,,如家用電器和其它消費(fèi)類電器,亦或是大量應(yīng)用的通用器件如RAM,、PHY等,。而FPGA產(chǎn)品適用于設(shè)計(jì)規(guī)模適中,產(chǎn)品要求快速占領(lǐng)市場(chǎng),,或產(chǎn)品需要靈活變動(dòng)的特性設(shè)計(jì)等方面的產(chǎn)品,,如PDH、2.5G以下SDH設(shè)備和大部分的接口轉(zhuǎn)換芯片等,。當(dāng)然具體使用那種產(chǎn)品來(lái)設(shè)計(jì)還要設(shè)計(jì)者充分考慮自己的產(chǎn)品定位來(lái)決定,。
兩者互相融合:
最明顯的莫過(guò)于處理器中開(kāi)始集成FPGA,而可編程的ASIC也開(kāi)始興起,。隨著SoC成為主流,,兩者的邊界也就不辣么明顯了。
更多信息可以來(lái)這里獲取==>>電子技術(shù)應(yīng)用-AET<<
電子技術(shù)應(yīng)用專欄作家 FPGA之旅
原文鏈接:https://mp.weixin.qq.com/s/3gEHGMWqva-9BHT6zHej8w