FPGA器件選型研究
1 引 言
現(xiàn)場可編程門陣列FPGA有集成度高、體積小、靈活可重配置、實(shí)驗(yàn)風(fēng)險(xiǎn)小等優(yōu)點(diǎn),在復(fù)雜數(shù)字系統(tǒng)中得到了越來越廣泛的應(yīng)用。
隨著FPGA技術(shù)的成熟和不斷飛速發(fā)展,數(shù)字電路的設(shè)計(jì)只需一片FPGA器件、一些存儲(chǔ)設(shè)備和一些電氣接口匹配電路的解決方案已成為主流選擇方案。根據(jù)多年的應(yīng)用經(jīng)驗(yàn),相關(guān)數(shù)字系統(tǒng)中,F(xiàn)PGA器件的選型非常重要,不合理的選型會(huì)導(dǎo)致一系列的后續(xù)設(shè)計(jì)問題,有時(shí)甚至?xí)乖O(shè)計(jì)失敗;合理的選型不光可以避免設(shè)計(jì)問題,而且可以提高系統(tǒng)的性價(jià)比,延長產(chǎn)品的生命周期,獲得預(yù)想不到的經(jīng)濟(jì)效果。
經(jīng)過深入研究,總結(jié)了以下選型問題:器件的供貨渠道和開發(fā)工具的支持;器件的硬件資源;器件的電氣接口標(biāo)準(zhǔn);器件的速度等級(jí);器件的溫度等級(jí);器件的封裝;器件的價(jià)格。
2 FPGA器件選型應(yīng)該考慮的問題
2.1 器件的供貨渠道和開發(fā)工具的支持
目前,主要的FPGA供應(yīng)商有Xllinx公司、Altera公司、Lattic公司和Actel公司[1],其中Xllinx公司和Altera公司的規(guī)模最大,能提供器件的種類非常豐富[2,3]。FPGA的發(fā)展速度非常快,很多型號(hào)的FPGA器件已不是主流產(chǎn)品,為了提高產(chǎn)品的生命周期,最好在貨源比較足的主流器件中選型。目前,Altera公司的主流器件有CycloneⅡ,CycloneⅢ,StatixⅡ,StatixⅡGX,StatixⅢ和StatixⅢGX等系列,其中CycloneⅡ和CycloneⅢ系列主要應(yīng)用于邏輯設(shè)計(jì)和簡單的數(shù)字信號(hào)處理,StatixⅡ和StatixⅢ系列主要應(yīng)用于高速復(fù)雜數(shù)字信號(hào)處理和高速邏輯設(shè)計(jì),StatixⅡGX和StatixⅢGX系列主要應(yīng)用于通訊領(lǐng)域[1];Xllinx公司的主流器件有Spartan-3E,Spartan-3A,Virtex-4LX,Virtex-4 SX,Virtex-4 FX,Virtex-5 LX,Virtex-5SX和Virtex-5 FX等系列,其中Spartan-3E和Spartan-3A系列主要應(yīng)用于邏輯設(shè)計(jì)和簡單數(shù)字信號(hào)處理,Vir-tex-4 LX和Virtex-5 LX系列主要應(yīng)用于高速邏輯設(shè)計(jì),Virtex-4 SX和Virtex-5 SX系列主要應(yīng)用于高速復(fù)雜數(shù)字信號(hào)處理,Virtex-4 FX和Virtex-5 FX系列主要應(yīng)用于嵌入式系統(tǒng)[3]。
兩家公司都提供了優(yōu)秀的開發(fā)工具。Xllinx公司有集成開發(fā)環(huán)境ISE,Altera公司有集成開發(fā)環(huán)境QuartusⅡ,兩個(gè)集成開發(fā)環(huán)境支持本公司所有器件的設(shè)計(jì)和開發(fā)[2,3]。該集成開發(fā)環(huán)境不僅功能強(qiáng)大、界面友好,而且有很多第三方合作伙伴提供相應(yīng)的技術(shù)支持,能使器件獲得更高的性能。因此,如果沒有特殊應(yīng)用要求,建議最好在這兩家公司進(jìn)行器件選型。
2.2器件的硬件資源
硬件資源是器件選型的重要標(biāo)準(zhǔn)。硬件資源包括邏輯資源、I/O資源、布線資源、DSP資源、存儲(chǔ)器資源、鎖相環(huán)資源、串行收發(fā)器資源和硬核微處理器資源等。
邏輯資源和I/O資源的需求是每位設(shè)計(jì)人員最關(guān)心的問題,一般都會(huì)考慮到,可是,過度消耗I/O資源和布線資源可能產(chǎn)生的問題卻很容易被忽視。主流FPGA器件中,邏輯資源都比較豐富,一般可以滿足應(yīng)用需求??墒牵诒容^復(fù)雜的數(shù)字系統(tǒng)中,過度I/O資源的消耗可能會(huì)導(dǎo)致2個(gè)問題[2,3]:FPGA負(fù)荷過重,器件發(fā)熱嚴(yán)重,嚴(yán)重影響器件的速度性能、工作穩(wěn)定性和壽命,設(shè)計(jì)中要考慮器件的散熱問題;局部布線資源不足,電路的運(yùn)行速度明顯降低,有時(shí)甚至使設(shè)計(jì)不能適配器件,設(shè)計(jì)失敗。根據(jù)本人的應(yīng)用經(jīng)驗(yàn):
(1)在做復(fù)雜數(shù)字信號(hào)處理時(shí),位數(shù)比較高的乘法器和除法器對(duì)全局布線資源的消耗量比較大;
(2)在做邏輯設(shè)計(jì)時(shí),雙向I/O口對(duì)局部布線資源的消耗量比較大;
(3)在利用存儲(chǔ)器資源設(shè)計(jì)濾波器的應(yīng)用場合,局部布線資源的消耗量比較大;
(4)在電氣接口標(biāo)準(zhǔn)比較多,而邏輯比較復(fù)雜的應(yīng)用場合,局部布線資源的消耗量比較大。據(jù)Altera公司推薦,設(shè)計(jì)中最好能預(yù)留30%以上的邏輯資源、20%以上的I/O資源和30%以上的布線資源[1]。而且,從兩家公司器件的結(jié)構(gòu)看,Xllinx公司器件的可編程邏輯塊相對(duì)于Al-tera公司要復(fù)雜一些,使用起來要靈活一些。在一些復(fù)雜的、控制信號(hào)比較多的設(shè)計(jì)中,適合選用Xllinx公司的產(chǎn)品。不過Xllinx公司器件布線資源是分段的,器件延時(shí)的可預(yù)測性要差一些。在這些應(yīng)用場合,最好首先做設(shè)計(jì)仿真,對(duì)設(shè)計(jì)?肖耗的布線資源,尤其是很容易被忽視的局部布線資源,要有一個(gè)比較充分的了解,然后在考慮器件選型,是比較理想的。
在做乘法運(yùn)算比較多而且對(duì)速度性能要求比較高的應(yīng)用場合,最好能選用帶DSP資源比較多的器件,例如,Altera公司的StatixⅡ和StatixⅢ系列[2],Xllinx公司的Virtex-4 SX和Virtex-5 SX系列等[3]。
器件中的存儲(chǔ)器資源主要有2種用途[2,3]:作高性能濾波器;實(shí)現(xiàn)小容量高速數(shù)據(jù)緩存。這是一種比較寶貴的硬件資源,一般器件中的存儲(chǔ)器資源都不太多,存儲(chǔ)器資源較多的器件邏輯容量也非常大,用得也比較少,供貨渠道也不多,器件價(jià)格也非常高。因此,在器件選型時(shí),最好不要片面追求設(shè)計(jì)的集成度而選用這種器件,可以考慮選用低端器件+外擴(kuò)存儲(chǔ)器的設(shè)計(jì)方案。
目前,主流FPGA中都集成了鎖相環(huán),利用鎖相環(huán)對(duì)時(shí)鐘進(jìn)行相位鎖定,可以使電路獲得更穩(wěn)定的性能。Xllinx公司提供的是數(shù)字鎖相環(huán),其優(yōu)點(diǎn)是能獲得更精確的相位控制,其缺點(diǎn)是下限工作頻率較高,一般在24 MHz以上;Altera公司提供的是模擬鎖相環(huán),其優(yōu)點(diǎn)是下限工作頻率較低,一般在16 MHz以上,其主流器件StatixⅡ和StatixⅢ系列中的增強(qiáng)型鎖相環(huán)工作頻率只要求在4 MHz以上,其缺點(diǎn)是對(duì)時(shí)鐘相位的控制精度相對(duì)較差。
在通訊領(lǐng)域里,用光纖傳輸高速數(shù)據(jù)是一個(gè)比較常用的解決方案。A1tera公司的StatixⅡGX和StatixⅢGX系列[1],Xllinx公司的Virtex-4 FX和Virtex-5 FX系列[2]都集成了高速串行收發(fā)器,這種器件價(jià)格一般都比較高。目前,National和Maxim等公司提供的高性能專用串行收發(fā)芯片價(jià)格都不高[4,5],因此,如果只是進(jìn)行光纖數(shù)據(jù)傳輸沒計(jì),大可不必選用這種器件;如果是光纖數(shù)據(jù)傳輸+邏輯或算法比較復(fù)雜的應(yīng)用場合,最好是將兩種方案進(jìn)行比較,然后考慮是否選用該器件。
利用集成硬核微處理器的FPGA器件進(jìn)行嵌入式開發(fā),代表嵌入式應(yīng)用的一個(gè)方向。Altera公司提供集成ARM[2]的APEX系列器件,Xllinx公司提供集成Power-Pc[3]的Virtex-4 FX和virtex-5 FX系列器件。隨著器件價(jià)格不斷下降,在很多應(yīng)用場合,在不增加成本的情況下,選用該器件和傳統(tǒng)FPGA+MCU的應(yīng)用方案相比,能大幅度提高系統(tǒng)性能和降低硬件設(shè)計(jì)復(fù)雜程度。此時(shí),選用該器件是比較理想的。
2.3 電氣接口標(biāo)準(zhǔn)
目前,數(shù)字電路的電氣接口標(biāo)準(zhǔn)非常多。在復(fù)雜數(shù)字系統(tǒng)中,經(jīng)常會(huì)出現(xiàn)多種電氣接口標(biāo)準(zhǔn)。目前,主流FP-GA器件支持的電氣接口標(biāo)準(zhǔn)有[1,2]:1.5 V,1.5-V 等,可以滿足絕大部分應(yīng)用設(shè)計(jì)需求。
可是,F(xiàn)PGA器件的每一個(gè)I/O并不支持所有的電氣接口標(biāo)準(zhǔn),以Altera公司的FPGA為例,只有部分1/O支持SSTL-2 ClassⅡ電氣接口標(biāo)準(zhǔn),在對(duì)DDR進(jìn)行設(shè)計(jì)時(shí),會(huì)導(dǎo)致PCB布線相當(dāng)復(fù)雜,器件的I/O管腳利用率相當(dāng)?shù)汀6鳻llinx公司的FPGA幾乎所有的管腳都支持SSTL-2 ClassⅡ電氣接口標(biāo)準(zhǔn),此時(shí)選用Xllinx公司的FPGA是比較理想的。
2.4 器件的速度等級(jí)
關(guān)于器件速度等級(jí)的選型,一個(gè)基本的原則是:在滿足應(yīng)用需求的情況下,盡量選用速度等級(jí)低的器件。該選型原則有如下好處[2,3]:
(1)由于傳輸線效應(yīng),速度等級(jí)高的器件更容易產(chǎn)生信號(hào)反射,設(shè)計(jì)要在信號(hào)的完整性上花更多的精力; (2)速度等級(jí)高的器件一般用得比較少,價(jià)格經(jīng)常是成倍增加,而且高速器件的供貨渠道一般比較少,器件的訂貨周期一般都比較長,經(jīng)常會(huì)延誤產(chǎn)品的研發(fā)周期,降低產(chǎn)品的上市率。
2.5 器件的溫度等級(jí)
某些應(yīng)用場合,對(duì)器件的環(huán)境溫度適應(yīng)能力提出了很高的要求,此時(shí),就應(yīng)該在有工業(yè)級(jí)甚至是軍品級(jí)或宇航級(jí)的器件中進(jìn)行選型。據(jù)調(diào)研,Altera公司每種型號(hào)的FPGA都有工業(yè)級(jí)產(chǎn)品;Xllinx公司每種型號(hào)的FPGA都有工業(yè)級(jí)產(chǎn)品,部分型號(hào)的FPGA提供軍品級(jí)和宇航級(jí)產(chǎn)品。如果設(shè)計(jì)主要面向軍用或航天應(yīng)用,最好選用Actel公司的器件,該公司的器件主要面向這些用戶。 2.6 器件的封裝
目前,主流器件的封裝形式有[2,3]:QFP,BGA和FB-GA,BGA和FBGA封裝器件的管腳密度非常高,設(shè)計(jì)中必須使用多層板,PCB布線相當(dāng)復(fù)雜,設(shè)計(jì)成本比較高,器件焊接成本比較高,因此,設(shè)計(jì)中能不用盡量不用。不過,在密度非常高,集成度非常高和對(duì)PCB板體積要求比較高的應(yīng)用場合,盡量選用BGA和FBGA封裝器件。還有一種情況,在電路速度非常高的應(yīng)用場合,最好選用BGA和FBGA封裝器件,這2種封裝器件由于器件管腳引線電感和分布電容比較小,有利于高速電路的設(shè)計(jì)。
2.7 器件的價(jià)格
器件集成度不斷提高,性能不斷上升,而價(jià)位不斷下降是FPGA器件發(fā)展的普遍趨勢,因此,在不斷推出的新型器件中選型是一個(gè)基本規(guī)律[2,3]。以Xllinx公司剛推出的Virtex-5為例,性能比Virtex-4提高30%,而相對(duì)價(jià)位卻降低35%。
3 結(jié) 語
本文是筆者多年從事FPGA器件應(yīng)用開發(fā)和對(duì)FP-GA技術(shù)不斷跟蹤的結(jié)晶。文中不僅結(jié)合部分應(yīng)用實(shí)例對(duì)FPGA器件的選型進(jìn)行了深入的總結(jié),而且提供了大量的最新器件信息。這些內(nèi)容對(duì)從事FPGA應(yīng)用設(shè)計(jì)的人員有很大的參考價(jià)值。
fpga相關(guān)文章:fpga是什么
存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理
評(píng)論