FPGA技術(shù)的發(fā)展歷史和動(dòng)向
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1.1 FPGA技術(shù)的發(fā)展歷史和動(dòng)向
1.1.1 FPGA技術(shù)的發(fā)展歷史
縱觀數(shù)字集成電路的發(fā)展歷史,經(jīng)歷了從電子管、晶體管、小規(guī)模集成電路到大規(guī)模以及超大規(guī)模集成電路等不同的階段。發(fā)展到現(xiàn)在,主要有3類電子器件:存儲(chǔ)器、處理器和邏輯器件。
存儲(chǔ)器保存隨機(jī)信息(電子數(shù)據(jù)表或數(shù)據(jù)庫的內(nèi)容);處理器執(zhí)行軟件指令,以便完成各種任務(wù)(運(yùn)行數(shù)據(jù)處理程序或視頻游戲);而邏輯器件可以提供特殊功能(器件之間的通信和系統(tǒng)必須執(zhí)行的其他所有功能)。
邏輯器件分成兩類:
固定的或定制的。
可編程的或可變的。
其中,固定的或定制的邏輯器件通常稱為專用芯片(ASIC)。ASIC是為了滿足特定的用途而設(shè)計(jì)的芯片,例如MP3解碼芯片等。其優(yōu)點(diǎn)是通過固化的邏輯功能和大規(guī)模的工業(yè)化生產(chǎn),降低了芯片的成本,同時(shí)提高了產(chǎn)品的可靠性。隨著集成度的提高,ASIC的物理尺寸也在不斷的縮小。
但是,ASIC設(shè)計(jì)的周期很長,而且投資大,風(fēng)險(xiǎn)高。一旦設(shè)計(jì)結(jié)束后,功能就固化了,以后的升級(jí)改版困難比較大。電子產(chǎn)品的市場正在逐漸細(xì)分,為了滿足快速產(chǎn)品開發(fā),產(chǎn)生了現(xiàn)場可編程邏輯器件(FPGA)。
自1984年Xilinx公司推出了第一片現(xiàn)場可編程邏輯器件(FPGA)至今,F(xiàn)PGA已經(jīng)歷了20幾年的快速發(fā)展歷程。特別是近幾年來,更是發(fā)展迅速。FPGA的邏輯規(guī)模已經(jīng)從最初的1000個(gè)可用門發(fā)展到現(xiàn)在的1000萬個(gè)可用門。
FPGA技術(shù)之所以具有巨大的市場吸引力,其根本原因在于:FPGA不僅可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、投入少,芯片價(jià)格不斷下降。FPGA正在越來越多地取代傳統(tǒng)上ASIC,特別是在小批量、個(gè)性化的產(chǎn)品市場方面。
1.1.2 FPGA技術(shù)的發(fā)展動(dòng)向
隨著芯片設(shè)計(jì)工藝水平的不斷提高,FPGA技術(shù)呈現(xiàn)出了以下4個(gè)主要的發(fā)展動(dòng)向。
1.基于FPGA的嵌入式系統(tǒng)(SoPC)技術(shù)正在成熟
System on Chip(SoC)技術(shù)在芯片設(shè)計(jì)領(lǐng)域被越來越廣泛地采用,而SoPC技術(shù)是SoC技術(shù)在可編程器件領(lǐng)域的應(yīng)用。這種技術(shù)的核心是在FPGA芯片內(nèi)部構(gòu)建處理器。Xilinx公司主要提供基于Power PC的硬核解決方案,而Altera提供的是基于NIOSII的軟核解決方案。
Altera公司為NIOSII軟核處理器提供了完整的軟硬件解決方案,可以讓客戶短時(shí)間完成SoPC系統(tǒng)的構(gòu)建和調(diào)試工作。
如圖1.1所示,是Altera Stratix III FPGA基于NIOS II解決方案的內(nèi)部結(jié)構(gòu)圖。
圖1.1 NIOS II解決方案
2.FPGA芯片向高性能、高密度、低壓和低功耗的方向發(fā)展
隨著芯片生產(chǎn)工藝不斷提高,F(xiàn)PGA芯片的性能和密度都在不斷提高。早期的FPGA主要是完成接口邏輯設(shè)計(jì),比如AD/DA和DSP的粘合邏輯?,F(xiàn)在的FPGA正在成為電路的核心部件,完成關(guān)鍵功能。
在高性能計(jì)算和高吞吐量I/O應(yīng)用方面,F(xiàn)PGA已經(jīng)取代了專用的DSP芯片,成為最佳的實(shí)現(xiàn)方案。因此,高性能和高密度也成為衡量FPGA芯片廠家設(shè)計(jì)能力的重要指標(biāo)。
隨著FPGA性能和密度的提高,功耗也逐漸成為了FPGA應(yīng)用的瓶頸。雖然FPGA比DSP等處理器的功耗低,但是要明顯高于專用芯片(ASIC)的功耗。FPGA的廠家也在采用各種新工藝和技術(shù)來降低FPGA的功耗,并且已經(jīng)取得了明顯的效果。
例如,Altera公司的StratixIII系列FPGA的功耗比上一代產(chǎn)品StratixII系列降低了50%以上。
3.基于IP庫的設(shè)計(jì)方法
未來的FPGA芯片密度不斷提高,傳統(tǒng)的基于HDL的代碼設(shè)計(jì)方法很難滿足超大規(guī)模FPGA的設(shè)計(jì)需要。隨著專業(yè)的IP庫設(shè)計(jì)公司不斷增多,商業(yè)化的IP庫種類會(huì)越來越全面,支持的FPGA器件也會(huì)越來廣泛。
作為FPGA的設(shè)計(jì)者,主要的工作是找到適合項(xiàng)目需要的IP庫資源,然后將這些IP整合起來,完成頂層模塊設(shè)計(jì)。由于商業(yè)的IP庫都是通過驗(yàn)證的,因此整個(gè)項(xiàng)目的仿真和驗(yàn)證工作主要就是驗(yàn)證IP庫的接口邏輯設(shè)計(jì)的正確性。
目前,由于國內(nèi)的知識(shí)產(chǎn)權(quán)保護(hù)的相關(guān)法律法規(guī)還不盡完善,基于IP庫的設(shè)計(jì)方法還沒有得到廣泛應(yīng)用。但是隨著FPGA密度不斷提高和IP庫的價(jià)格逐漸趨于合理化,這種設(shè)計(jì)方法將會(huì)成為主流的FPGA設(shè)計(jì)技術(shù)。
4.FPGA的動(dòng)態(tài)可重構(gòu)技術(shù)
FPGA動(dòng)態(tài)重構(gòu)技術(shù)主要是指對于特定結(jié)構(gòu)的FPGA芯片,在一定的控制邏輯的驅(qū)動(dòng)下,對芯片的全部或部分邏輯資源實(shí)現(xiàn)高速的功能變換,從而實(shí)現(xiàn)硬件的時(shí)分復(fù)用,節(jié)省邏輯資源。
由于密度不斷提高,F(xiàn)PGA能實(shí)現(xiàn)的功能也越來越復(fù)雜。FPGA全部邏輯配置一次的需要的時(shí)間也變長了,降低了系統(tǒng)的實(shí)時(shí)性。局部邏輯的配置功能可以實(shí)現(xiàn)“按需動(dòng)態(tài)重構(gòu)”,大大提高了配置的效率。
動(dòng)態(tài)可重構(gòu)的FPGA可以在系統(tǒng)運(yùn)行中對電路功能進(jìn)行動(dòng)態(tài)配置,實(shí)現(xiàn)硬件的時(shí)分復(fù)用,節(jié)省了資源,主要適用于以下兩個(gè)系統(tǒng)設(shè)計(jì):
最新通信系統(tǒng)。
FPGA的動(dòng)態(tài)重構(gòu)特性可以適應(yīng)不同體制和不同標(biāo)準(zhǔn)的通信要求,滿足軟件無線電技術(shù)的發(fā)展和第三代(3G)和第四代(4G)移動(dòng)通信系統(tǒng)的需要。
重構(gòu)計(jì)算機(jī):FPGA具有并行處理能力和動(dòng)態(tài)配置能力,可自動(dòng)改變硬件來適應(yīng)正在運(yùn)行的程序,產(chǎn)生了基于這種軟硬件環(huán)境的全新概念的計(jì)算機(jī)。
1.2 FPGA的典型應(yīng)用領(lǐng)域
1.2.1 數(shù)據(jù)采集和接口邏輯領(lǐng)域
1.FPGA在數(shù)據(jù)采集領(lǐng)域的應(yīng)用
由于自然界的信號(hào)大部分是模擬信號(hào),因此一般的信號(hào)處理系統(tǒng)中都要包括數(shù)據(jù)的采集功能。通常的實(shí)現(xiàn)方法是利用A/D轉(zhuǎn)換器將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)后,送給處理器,比如利用單片機(jī)(MCU)或者數(shù)字信號(hào)處理器(DSP)進(jìn)行運(yùn)算和處理。
對于低速的A/D和D/A轉(zhuǎn)換器,可以采用標(biāo)準(zhǔn)的SPI接口來與MCU或者DSP通信。但是,高速的A/D和D/A轉(zhuǎn)換芯片,比如視頻Decoder或者Encoder,不能與通用的MCU或者DSP直接接口。在這種場合下,F(xiàn)PGA可以完成數(shù)據(jù)采集的粘合邏輯功能。
2.FPGA在邏輯接口領(lǐng)域的應(yīng)用
在實(shí)際的產(chǎn)品設(shè)計(jì)中,很多情況下需要與PC機(jī)進(jìn)行數(shù)據(jù)通信。比如,將采集到的數(shù)據(jù)送給PC機(jī)處理,或者將處理后的結(jié)果傳給PC機(jī)進(jìn)行顯示等。PC機(jī)與外部系統(tǒng)通信的接口比較豐富,如ISA、PCI、PCI Express、PS/2、USB等。
傳統(tǒng)的設(shè)計(jì)中往往需要專用的接口芯片,比如PCI接口芯片。如果需要的接口比較多,就需要較多的外圍芯片,體積、功耗都比較大。采用FPGA的方案后,接口邏輯都可以在FPGA內(nèi)部來實(shí)現(xiàn)了,大大簡化了外圍電路的設(shè)計(jì)。
在現(xiàn)代電子產(chǎn)品設(shè)計(jì)中,存儲(chǔ)器得到了廣泛的應(yīng)用,例如SDRAM、SRAM、Flash等。這些存儲(chǔ)器都有各自的特點(diǎn)和用途,合理地選擇儲(chǔ)存器類型可以實(shí)現(xiàn)產(chǎn)品的最佳性價(jià)比。由于FPGA的功能可以完全自己設(shè)計(jì),因此可以實(shí)現(xiàn)各種存儲(chǔ)接口的控制器。
3.FPGA在電平接口領(lǐng)域的應(yīng)用
除了TTL、COMS接口電平之外,LVDS、HSTL、GTL/GTL+、SSTL等新的電平標(biāo)準(zhǔn)逐漸被很多電子產(chǎn)品采用。比如,液晶屏驅(qū)動(dòng)接口一般都是LVDS接口,數(shù)字I/O一般是LVTTL電平,DDR SDRAM電平一般是HSTL的。
在這樣的混合電平環(huán)境里面,如果用傳統(tǒng)的電平轉(zhuǎn)換器件實(shí)現(xiàn)接口會(huì)導(dǎo)致電路復(fù)雜性提高。利用FPGA支持多電平共存的特性,可以大大簡化設(shè)計(jì)方案,降低設(shè)計(jì)風(fēng)險(xiǎn)。
1.2.2 高性能數(shù)字信號(hào)處理領(lǐng)域
無線通信、軟件無線電、高清影像編輯和處理等領(lǐng)域,對信號(hào)處理所需要的計(jì)算量提出了極高的要求。傳統(tǒng)的解決方案一般是采用多片DSP并聯(lián)構(gòu)成多處理器系統(tǒng)來滿足需求。
但是多處理器系統(tǒng)帶來的主要問題是設(shè)計(jì)復(fù)雜度和系統(tǒng)功耗都大幅度提升,系統(tǒng)穩(wěn)定性受到影響。FPGA支持并行計(jì)算,而且密度和性能都在不斷提高,已經(jīng)可以在很多領(lǐng)域替代傳統(tǒng)的多DSP解決方案。
例如,實(shí)現(xiàn)高清視頻編碼算法H.264。采用TI公司1GHz主頻的DSP芯片需要4顆芯片,而采用Altera的StratixII EP2S130芯片只需要一顆就可以完成相同的任務(wù)。FPGA的實(shí)現(xiàn)流程和ASIC芯片的前端設(shè)計(jì)相似,有利于導(dǎo)入芯片的后端設(shè)計(jì)。
1.2.3 其他應(yīng)用領(lǐng)域
除了上面一些應(yīng)用領(lǐng)域外,F(xiàn)PGA在其他領(lǐng)域同樣具有廣泛的應(yīng)用。
(1)汽車電子領(lǐng)域,如網(wǎng)關(guān)控制器/車用PC機(jī)、遠(yuǎn)程信息處理系統(tǒng)。
(2)軍事領(lǐng)域,如安全通信、雷達(dá)和聲納、電子戰(zhàn)。
(3)測試和測量領(lǐng)域,如通信測試和監(jiān)測、半導(dǎo)體自動(dòng)測試設(shè)備、通用儀表。
(4)消費(fèi)產(chǎn)品領(lǐng)域,如顯示器、投影儀、數(shù)字電視和機(jī)頂盒、家庭網(wǎng)絡(luò)。
(5)醫(yī)療領(lǐng)域,如軟件無線電、電療、生命科學(xué)。
1.3 FPGA的工藝結(jié)構(gòu)
隨著FPGA的生產(chǎn)工藝不斷提高,各種新技術(shù)被廣泛應(yīng)用到FPGA芯片的設(shè)計(jì)生產(chǎn)的各個(gè)環(huán)境。其中,生產(chǎn)工藝結(jié)構(gòu)決定了FPGA芯片的特性和應(yīng)用場合。
如圖1.2所示是FPGA的主要幾種生產(chǎn)工藝及典型產(chǎn)品。
圖1.2 FPGA生產(chǎn)工藝及典型產(chǎn)品
1.3.1 基于SRAM結(jié)構(gòu)的FPGA
目前最大的兩個(gè)FPGA廠家Xilinx和Altera的所有FPGA產(chǎn)品都是基于SRAM工藝來實(shí)現(xiàn)的。這種工藝的優(yōu)點(diǎn)是可以用較低的成本來實(shí)現(xiàn)較高的密度和較高的性能;缺點(diǎn)是掉電后SRAM會(huì)失去所有配置,導(dǎo)致每次上電都需要重新加載。
重新加載需要外部的器件來實(shí)現(xiàn),不僅增加了整個(gè)系統(tǒng)的成本,而且引入了不穩(wěn)定的因素。加載的過程容易受到外界干擾而導(dǎo)致加載失敗,也容易受到“監(jiān)聽”而破解加載文件的比特流。
雖然基于SRAM結(jié)構(gòu)的FPGA存在這些缺點(diǎn),但是由于其實(shí)現(xiàn)成本低,還是得到了廣泛的應(yīng)用,特別是民用產(chǎn)品方面。
1.3.2 基于反融絲結(jié)構(gòu)的FPGA
Actel公司擅長出品反融絲結(jié)構(gòu)的FPGA。這種結(jié)構(gòu)的FPGA只能編程一次,編程后和ASIC一樣成為了固定邏輯器件。Quick Logic公司也有類似的FPGA器件,主要面向軍品級(jí)應(yīng)用市場。
這樣的FPGA失去了反復(fù)可編程的靈活性,但是大大提高了系統(tǒng)的穩(wěn)定性。這種結(jié)構(gòu)的FPGA比較適合應(yīng)用在環(huán)境苛刻的場合,比如高振動(dòng),強(qiáng)電磁輻射等航空航天領(lǐng)域。同時(shí),系統(tǒng)的保密性也得到了提高。
這類FPGA因?yàn)樯想姾蟛恍枰獜耐獠考虞d配置,所以上電后可以很快進(jìn)入工作狀態(tài),即 “瞬間上電”技術(shù)。這個(gè)特性可以滿足一些對上電時(shí)間要求苛刻的系統(tǒng)。由于是固定邏輯,這種器件的功耗和體積也要低于SRAM結(jié)構(gòu)的FPGA。
1.3.3 基于Flash結(jié)構(gòu)的FPGA
Flash具備了反復(fù)擦寫和掉電后內(nèi)容非易失特性,因而基于Flash結(jié)構(gòu)的FPGA同時(shí)具備了SRAM結(jié)構(gòu)的靈活性和反融絲結(jié)構(gòu)的可靠性。這種技術(shù)是最近幾年發(fā)展起來的新型FPGA實(shí)現(xiàn)工藝,目前實(shí)現(xiàn)的成本還偏高,沒有得到大規(guī)模的應(yīng)用。
系統(tǒng)安全的角度來看,基于Flash的FPGA具有更高的安全性,硬件出錯(cuò)的幾率更小,并能夠通過公共網(wǎng)絡(luò)實(shí)現(xiàn)安全性遠(yuǎn)程升級(jí),經(jīng)過現(xiàn)場處理即可實(shí)現(xiàn)產(chǎn)品的升級(jí)換代。這種性能減少了現(xiàn)場解決問題所需的昂貴開銷。
在Flash器件中集成小型的NVM(Non Volatile Memory,非易失性存儲(chǔ)器)模塊可以在某些消費(fèi)電子和汽車電子應(yīng)用中實(shí)現(xiàn)授權(quán)技術(shù)。這種NVM可以存儲(chǔ)安全通信所需的密鑰,或者針對基于廣播的系統(tǒng)實(shí)現(xiàn)機(jī)頂盒設(shè)備的串行化。
可重編程的NVM在編程時(shí)需要一定的電壓,因此SRAM用戶必須從外部提供這種電壓?;贔lash的FPGA采用內(nèi)部電荷泵進(jìn)行編程,不需要集成NVM模塊,而基于SRAM的FPGA通常缺乏這種功能。
Flash器件的工作頻率可達(dá)350MHz,利用率超過95%,而SRAM FPGA一般能夠達(dá)到的利用率僅為70~75%。Flash FPGA在加電時(shí)沒有像SRAM FPGA那樣大的瞬間高峰電流,并且SRAM FPGA通常具有較高的靜態(tài)功耗和動(dòng)態(tài)功耗。
例如,一塊40萬門的基于Flash的FPGA需要20mA的靜態(tài)電流,然而同等規(guī)模的基于SRAM的FPGA所需的電流達(dá)100mA。SRAM FPGA的功耗問題往往迫使系統(tǒng)設(shè)計(jì)者不得不增大系統(tǒng)供電電流,并使得整個(gè)設(shè)計(jì)變得更加復(fù)雜。
1.4 主流的FPGA芯片廠家及其代表產(chǎn)品
目前市場上FPGA芯片主要來自Xilinx公司和Altera公司。這兩家公司占據(jù)了FPGA 80%以上的市場份額,其他的FPGA廠家產(chǎn)品主要是針對某些特定的應(yīng)用。比如,Actel公司主要生產(chǎn)反融絲結(jié)構(gòu)的FPGA,以滿足應(yīng)用條件極為苛刻的航空、航天領(lǐng)域產(chǎn)品。
下面介紹Xilinx和Altera兩家公司的代表產(chǎn)品。
1.4.1 Xilinx公司的代表產(chǎn)品
1.面向高性能的Virtex-5 FPGA 系列
終極系統(tǒng)集成平臺(tái)——Virtex-5系列FPGA提供了4種新型平臺(tái),每種平臺(tái)都在高性能邏輯、串行連接功能、信號(hào)處理和嵌入式處理性能方面實(shí)現(xiàn)了最佳平衡?,F(xiàn)有的3款平臺(tái)如下。
(1)Virtex-5 LX平臺(tái):針對高性能邏輯進(jìn)行了優(yōu)化。
(2)Virtex-5 LXT平臺(tái):針對帶有低功耗串行連接功能的高性能邏輯進(jìn)行了優(yōu)化。
(3)Virtex-5 SXT平臺(tái):針對帶有低功耗串行連接功能的 DSP 和存儲(chǔ)器密集型應(yīng)用進(jìn)行了優(yōu)化。
2.面向低成本的Spartan-3 系列 FPGA
90nm Spartan-3 系列 FPGA 的發(fā)售量已經(jīng)超過3000萬片,是業(yè)內(nèi)首款大容量 FPGA 系列產(chǎn)品,帶有多個(gè)針對特定領(lǐng)域進(jìn)行了優(yōu)化的平臺(tái)。
(1)面向數(shù)字信號(hào)處理的Spartan-3A DSP平臺(tái)。
這個(gè)平臺(tái)對DSP進(jìn)行了優(yōu)化,適于那些需要集成式 DSP MAC 和擴(kuò)展存儲(chǔ)器的應(yīng)用。特別適于那些需要低成本FPGA來實(shí)現(xiàn)信號(hào)處理(如軍用無線電、監(jiān)視照相機(jī)、醫(yī)學(xué)成像等)的應(yīng)用設(shè)計(jì)。
(2)面向非易失性應(yīng)用的Spartan-3AN 平臺(tái)。
這個(gè)平臺(tái)主要針對需要非易失性、系統(tǒng)集成、安全、大型用戶Flash的應(yīng)用。特別適于空間敏感型或安全應(yīng)用,以及低成本嵌入式控制器。
(3)面向主流應(yīng)用的Spartan-3平臺(tái)。
① Spartan-3A平臺(tái):針對 I/O 進(jìn)行了優(yōu)化。
這個(gè)平臺(tái)是針對那些I/O數(shù)和性能比邏輯密度更重要的應(yīng)用,特別適于橋接、差分信號(hào)和存儲(chǔ)器接口這些需要寬接口或者多個(gè)接口以及一定處理能力的應(yīng)用。
② Spartan-3E平臺(tái):針對邏輯進(jìn)行了優(yōu)化。
這個(gè)平臺(tái)是針對那些邏輯密度比I/O數(shù)更重要的應(yīng)用,特別適于邏輯集成、DSP協(xié)處理和嵌入式控制,這些需要進(jìn)行大量處理和窄接口或者少量接口的應(yīng)用。
③ Spartan-3平臺(tái):針對密度最高和管腳數(shù)較多的應(yīng)用。
這個(gè)平臺(tái)是針對那些高邏輯密度和高 I/O 數(shù)都很重要的應(yīng)用,特別適于高度集成的數(shù)據(jù)處理應(yīng)用。
1.4.2 Altera公司的代表產(chǎn)品
1.面向高性能的StraitixIII系列FPGA
和Xilinx的Virtex-4系列對應(yīng),Altera公司也推出了StratixIII系列FPGA體系結(jié)構(gòu)。StratixIII系列不僅性能比上一代提高很多,更重要的是靜態(tài)和動(dòng)態(tài)功耗比前代FPGA低了50%。
Stratix III器件經(jīng)過設(shè)計(jì),支持高速內(nèi)核以及高速I/O,并且具有非常好的信號(hào)完整性。例如,它能夠?qū)崿F(xiàn)400MHz DDR3的FPGA。這種性能的提高源于以下幾點(diǎn)。
增強(qiáng)DSP模塊,方便實(shí)現(xiàn)了信號(hào)處理算法。
經(jīng)過優(yōu)化的內(nèi)部存儲(chǔ)器,改進(jìn)了信號(hào)完整性存儲(chǔ)器接口。
高性能外部存儲(chǔ)器接口。
改進(jìn)了布線體系結(jié)構(gòu)。
靈活的I/O支持最新的外部存儲(chǔ)器標(biāo)準(zhǔn)。
為了給客戶的設(shè)計(jì)應(yīng)用提供最好的性價(jià)比解決方案,Altera Stratix III FPGA提供3種型號(hào),分別針對邏輯、DSP和存儲(chǔ)器以及收發(fā)器進(jìn)行了優(yōu)化。
2.面向低成本的Cyclone III系列FPGA
低成本Cyclone III FPGA是Altera Cyclone系列的第三代產(chǎn)品。Cyclone III FPGA系列前所未有地同時(shí)實(shí)現(xiàn)了低功耗、低成本和高性能,進(jìn)一步擴(kuò)展了FPGA在成本敏感、大批量領(lǐng)域中的應(yīng)用。
Cyclone III FPGA采用TSMC公司的65-nm低功耗(LP)工藝技術(shù)。Cyclone III 器件對芯片和軟件采取了更多的優(yōu)化措施,在所有65-nm FPGA中是功耗最低的,在對成本和功耗敏感的大量應(yīng)用中,提供豐富的特性推動(dòng)寬帶并行處理的發(fā)展。
Cyclone III 系列包括8個(gè)型號(hào),具有5k~120k個(gè)邏輯單元(LE),最多有534個(gè)用戶I/O引腳。Cyclone III器件具有4MB嵌入式存儲(chǔ)器、288個(gè)嵌入式18×18乘法器、專用外部存儲(chǔ)器接口電路、鎖相環(huán)(PLL)以及高速差分I/O等。
1.5 工程項(xiàng)目中FPGA芯片選擇策略和原則
由于FPGA具備設(shè)計(jì)靈活、可以重復(fù)編程的優(yōu)點(diǎn),因此在電子產(chǎn)品設(shè)計(jì)領(lǐng)域得到了越來越廣泛的應(yīng)用。在工程項(xiàng)目或者產(chǎn)品設(shè)計(jì)中,選擇FPGA芯片可以參考以下的幾點(diǎn)策略和原則。
1.5.1 盡量選擇成熟的產(chǎn)品系列
FPGA芯片的工藝一直走在芯片設(shè)計(jì)領(lǐng)域的前列,產(chǎn)品更新?lián)Q代速度非常快。穩(wěn)定性和可靠性是產(chǎn)品設(shè)計(jì)需要考慮的關(guān)鍵因素。廠家最新推出的FPGA系列產(chǎn)品一般都沒有經(jīng)過大批量應(yīng)用的驗(yàn)證。選擇這樣的芯片會(huì)增加設(shè)計(jì)的風(fēng)險(xiǎn)。
而且,最新推出的FPGA芯片因?yàn)楫a(chǎn)量比較小,一般供貨情況都不會(huì)很理想,價(jià)格也會(huì)偏高一些。如果成熟的產(chǎn)品能滿足設(shè)計(jì)指標(biāo)要求,那么最好選這樣的芯片來完成設(shè)計(jì)。
例如,要用FPGA設(shè)計(jì)一塊數(shù)據(jù)采集卡。采用Altera公司的Cyclone、CyloneII和CycloneIII等3個(gè)系列的芯片都可以完成這個(gè)功能??紤]到Cyclone和CyloneII是成熟產(chǎn)品,同時(shí)CyloneII又是Cyclone的升級(jí)產(chǎn)品,因此選擇CyloneII是比較理想的方案。
1.5.2 盡量選擇兼容性好的封裝
FPGA系統(tǒng)設(shè)計(jì)一般采用硬件描述語言(HDL)來完成設(shè)計(jì)。這與基于CPU的軟件開發(fā)又有很大不同。特別是算法實(shí)現(xiàn)的時(shí)候,在設(shè)計(jì)之前,很難估算這個(gè)算法需要占多少FPGA的邏輯資源。
作為代碼設(shè)計(jì)者,希望算法實(shí)現(xiàn)之后再選擇FPGA的型號(hào)。但是,現(xiàn)在的設(shè)計(jì)流程一般都是軟件和硬件并行開始設(shè)計(jì)。也就是說,在HDL代碼設(shè)計(jì)之前,就開始硬件板卡的設(shè)計(jì)。這就要求硬件板卡具備一定的兼容性,可以兼容不同規(guī)模的FPGA芯片。
幸運(yùn)的是,F(xiàn)PGA芯片廠家考慮到了這一點(diǎn)。目前,同系列的FPGA芯片一般可以做到相同物理封裝兼容不同規(guī)模的器件。例如,Xilinx的Spartan3系列FPGA,在BGA456封裝下,可以選擇3S200、2S400、3S1000、3S1500這4種型號(hào)的FPGA。
正是因?yàn)檫@一點(diǎn),將來的產(chǎn)品就具備非常好的擴(kuò)展性,可以不斷地增加新的功能或者提高性能,而不需要修改電路板的設(shè)計(jì)文件。
1.5.3 盡量選擇一個(gè)公司的產(chǎn)品
如果在整個(gè)電子系統(tǒng)中需要多個(gè)FPGA器件,那么盡量選擇一個(gè)公司的產(chǎn)品。這樣的好處不僅可以降低采購成本,而且降低開發(fā)難度。因?yàn)殚_發(fā)環(huán)境和工具是一致的,芯片接口電平和特性也一致,便于互聯(lián)互通。
很多第一次接觸FPGA的設(shè)計(jì)師在芯片選型的時(shí)候都有過這個(gè)疑問。其實(shí)這兩個(gè)最大的FPGA廠家位于美國的同一座城市,人員和技術(shù)交流都很頻繁,因此產(chǎn)品各有的優(yōu)勢和特色,很難說清楚誰好誰壞。
在全球不同的地區(qū),這兩家公司的FPGA芯片產(chǎn)品的市場表現(xiàn)會(huì)有所差別。在中國市場,兩家公司可以說是平分秋色,在高校里面Altera的客戶會(huì)略多一些。針對特定的應(yīng)用,兩個(gè)廠家的產(chǎn)品目錄里面都可以找到適合的系列或者型號(hào)。
比如,針對低成本應(yīng)用,Altera公司的Cyclone系列和Xilinx公司的Spartan3系列是對應(yīng)的。針對高性能應(yīng)用,Altera公司的Stratix系列和Xilinx公司的Virtex系列是對應(yīng)的。所以,最終選擇那個(gè)公司的產(chǎn)品還是看開發(fā)者的使用習(xí)慣。