xilinx7系列FPGA主要包括:Spartan®-7、Artix®-7、Kintex®-7、Virtex®-7。其性能/密度/價(jià)格也隨著系列的不同而提升。Spartan7系列是7系列中的屌絲青年,擁有最低的價(jià)格、最低的功耗、最小的尺寸以及最低的設(shè)計(jì)難度,一些低端應(yīng)用中極為合適。Artix7系列是7系列中的普通青年,相對(duì)Spartan7系列則增加了串行收發(fā)器和DSP功能,其邏輯容量也更大,適合邏輯一些稍微復(fù)雜的中低端應(yīng)用。Kintex7系列是7系列中的文藝青年,是在所有系列中擁有最佳的性價(jià)比,無(wú)論是硬核數(shù)量還是邏輯容量,都能滿足中低端、以及部分高端應(yīng)用需求。Virtex7系列則是7系列中的大佬,只在高端應(yīng)用中使用,在中低端應(yīng)用就如同高射炮打蚊子,大材小用!
Xilinx的四個(gè)工藝級(jí)別
Xilinx目前主要產(chǎn)品有四個(gè)工藝等級(jí),通常情況下,Xilinx的產(chǎn)品每個(gè)工藝都會(huì)有Spartan、Artix、Kintex和Virtex四個(gè)族,如下圖所示。
其中45nm工藝的產(chǎn)品只有Spartan6還在“苦苦支撐”,其余產(chǎn)品均已“下架”,隨著2017年5月11日Xilinx官方宣布Spartan7進(jìn)入量產(chǎn)階段,Spartan6的生命已經(jīng)進(jìn)入了倒計(jì)時(shí)階段。
28nm工藝的7系列芯片是Xilinx目前主推的產(chǎn)品,本文就是對(duì)該系列的產(chǎn)品進(jìn)行大致的介紹。
Virtex、Kintex、Artix和Spartan
Virtex系列的器件不僅代表著Xilinx的最高水準(zhǔn),往往也是整個(gè)FPGA業(yè)界最好的器件。這個(gè)系列的器件一般應(yīng)用于高速聯(lián)網(wǎng)(10G~100G)、便攜雷達(dá)和ASIC原型驗(yàn)證等領(lǐng)域,這些領(lǐng)域的特點(diǎn)是對(duì)資源數(shù)量和性能要求高,但是對(duì)功耗和成本不怎么敏感。
Kintex系列器件相對(duì)于Virtex系列器件在成本和功耗上做出了一定程度的讓步,在成本、性能和功耗之間達(dá)成了一個(gè)相對(duì)比較好的平衡,但是成本依舊比較高。Kintex器件一般應(yīng)用于3G/4G無(wú)線通信、顯示和Video IO Over等領(lǐng)域。
Artix系列器件在盡可能不降低性能和資源數(shù)量的情況下大幅降低了器件成本,國(guó)內(nèi)醫(yī)療設(shè)備和軍工行業(yè)用這個(gè)系列器件用的比較多。
Spartan系列器件的性能和資源數(shù)量都遠(yuǎn)不如前面三個(gè)系列,但是勝在價(jià)格便宜,所以這個(gè)系列的器件在消費(fèi)電子、汽車電子和工業(yè)領(lǐng)域的應(yīng)用相對(duì)比較廣泛。值得一提的是,Spartan系列器件的性能要比友商Altera的Cyclone系列(跟Spartan對(duì)標(biāo))高出不少,比如說(shuō),Spartan6是支持DDR3的,但是在其之后很晚才面試的Cyclone10全系類都不支持DDR3。
Xilinx器件的訂貨編號(hào)(廠商編號(hào))
FPGA器件表面有一行很長(zhǎng)的有字母和數(shù)字組成的字符串,這個(gè)是Xilinx的訂貨編號(hào),我習(xí)慣稱之為廠商編號(hào)。7系列各族FPGA的廠商編號(hào)具體含義如下圖所示:
從上圖中可以看出,除Spartan系列器件的廠商編號(hào)是由十個(gè)字段組成之外,其余三個(gè)系列的廠商編號(hào)都由9個(gè)字段組成。
四個(gè)系列器件的左數(shù)第一段編碼都是"XC",這倆字符表示該器件是Xilinx生產(chǎn)的商業(yè)級(jí)器件,另外還有軍品級(jí)和宇航級(jí),不過(guò)這倆等級(jí)國(guó)內(nèi)不太可能通過(guò)正規(guī)渠道購(gòu)買;
左數(shù)第二個(gè)字段代表該器件屬于Xilinx的第幾代器件,7系列的這個(gè)字段都是7;
左數(shù)第三個(gè)字段代表該器件屬于哪個(gè)族,S代表Spartan、A代表Artix、K代表Kintex、V代表Virtex;
左數(shù)第四個(gè)字段,實(shí)際器件上印的是一位或多位阿拉伯?dāng)?shù)字,這個(gè)數(shù)字乘以1000就是該器件大致的資源數(shù)量,只是大致,并不準(zhǔn)確;
左數(shù)第五個(gè)字段用于表示該器件的速度等級(jí),-3最高,-1最低,帶L的表示該器件是低功耗器件(低功耗器件的供電電壓比普通器件更低)。這個(gè)參數(shù)是廠商對(duì)芯片測(cè)試篩選后印到芯片上的,是一個(gè)經(jīng)驗(yàn)值。該值越大,表示Block RAM和高速IO等資源的最大時(shí)鐘越高,因此在進(jìn)行設(shè)計(jì)時(shí)需要慎重考慮該數(shù)值。
接下來(lái),Spartan器件的第六道九四個(gè)字段和其余三個(gè)族的器件的第六到八個(gè)字段是該器件的封裝信息,這幾個(gè)字段里最后一個(gè)字段的數(shù)字代表該器件的引腳總數(shù)(跟用戶引腳數(shù)有區(qū)別),另外幾個(gè)兩三個(gè)字段的含義就不是很明白了。
最后一個(gè)字段表示該器件的溫度等級(jí),國(guó)內(nèi)比較常見(jiàn)的是C和I;C代表商業(yè)級(jí)(Commercial),可以在0℃到85℃下正常運(yùn)行;I代表工業(yè)級(jí)(Industrial),可以在-40℃到100℃下正常運(yùn)行。另外兩個(gè)等級(jí),對(duì)我而言還是只存在于“傳說(shuō)中”。
7系列FPGA內(nèi)部資源概況
下圖是7系列FPGA各族資源的簡(jiǎn)單對(duì)比。
下面一系列圖片是各族FPGA資源概覽,其中的IO資源是按最大封裝標(biāo)出來(lái)的,各個(gè)器件實(shí)際IO資源后面會(huì)放。
從上面的四張圖片中可以看出,Virtex7跟另外三個(gè)族都不在一個(gè)畫風(fēng)上,最小邏輯單元(Logic Cell)數(shù)是330K個(gè),另外三個(gè)族最大邏輯單元數(shù)量分別是480K/200K/100K......
Kintex7看著老大默默安慰自己:好歹咱全型號(hào)都配備了GTX,沒(méi)事,沒(méi)事;Artix7哭暈在了廁所里,都是一個(gè)媽生的,差距怎么就那么大尼?Spartan7已經(jīng)陷入了絕望的深淵:馬丹,為啥不給我配PCIe和高速收發(fā)器,Spartan6還有個(gè)“T”呢,老紙的T呢?!T呢?!
值得一提的是,7系列FPGA上集成了一個(gè)ADC模塊,就是那個(gè)“XADC Blocks”,這玩意不僅可以從引腳采集電壓值,還能監(jiān)控自身的供電電源,雖說(shuō)這玩意在CPU和MCU上不是啥新鮮玩意,但是在FPGA上還是蠻新奇的,起碼對(duì)我而言是。
注意看Virtex7那張圖下面第1條和第6條Notes,Virtex7還細(xì)分了Virtex7T、Virtex7XT和Virtex7HT。
7系列FPGA IO資源和高速收發(fā)器資源概況
下面一系列圖片是不同封裝FPGA的IO資源和高速收發(fā)器資源表:
IO資源依舊是Virtex7碾壓另外三個(gè)族......
從上面的幾張圖中可以看到,7系列的FPGA IO資源有HR和HP兩種規(guī)格。HP支持1.2V~1.8V電壓,HR支持1.2~3.3V電壓。前者的最高傳輸速率要比或者高,但是明顯前者的使用范圍更窄,這個(gè)就需要根據(jù)需求自行判斷需要哪種了。
論質(zhì)量的話Kintex7其實(shí)要略勝一Virtex7籌,畢竟Kintex7全型號(hào)都支持GTX,同時(shí)全型號(hào)都有HR IO,大部分型號(hào)還兼?zhèn)銱P和HR兩種規(guī)格的IO。
7系列三種高速串行收發(fā)器的性能如下
GTH:500Mb/s~13.1Gb/s
GTX:500Mb/s~12.5Gb/s
GTP:500Mb/s~6.6Gb/s
具體到每個(gè)器件時(shí),最高傳輸速率還收到前面提到過(guò)的速度等級(jí)的影響。另外,Xilinx有用來(lái)配置高速串行收發(fā)器的IP核,在這個(gè)IP核里可以設(shè)置具體的傳輸速率和編解碼等屬性。