FPGA 發(fā)展到頭了嗎?看FPGA 經(jīng)歷的幾個(gè)時(shí)代
FPGA 器件自問(wèn)世以來(lái),已經(jīng)經(jīng)過(guò)了幾個(gè)不同的發(fā)展階段。驅(qū)動(dòng)每個(gè)階段發(fā)展的因素都是工藝技術(shù)和應(yīng)用需求。正是這些驅(qū)動(dòng)因素,導(dǎo)致器件的特性和工具發(fā)生了明顯的變化。FPGA 經(jīng)歷了如下幾個(gè)時(shí)代:
本文引用地址:http://butianyuan.cn/article/201701/343330.htm·發(fā)明時(shí)代
·擴(kuò)展時(shí)代
·積累時(shí)代
·系統(tǒng)時(shí)代
賽靈思于 1984 年發(fā)明了世界首款 FPGA,那個(gè)時(shí)候還不叫 FPGA,直到 1988 年 Actel 才讓這個(gè)詞流行起來(lái)。接下來(lái)的 30 年里,這種名為 FPGA 的器件,在容量上提升了一萬(wàn)多倍,速度提升了 一百倍,每單位功能的成本和能耗降低了一萬(wàn)多倍(見圖 1)。
圖 1:與 1988 年的賽靈思 FPGA 特征對(duì)比。價(jià)格和功耗降低一萬(wàn)倍。
這些進(jìn)步主要由工藝技術(shù)所驅(qū)動(dòng), 而且人們很容易認(rèn)為 FPGA 的發(fā)展只是隨著工藝的發(fā)展簡(jiǎn)單地增大了容量。其實(shí)并沒有這么簡(jiǎn)單。真正的故事要精彩得多。
發(fā)明時(shí)代:1984-1992 年
首款 FPGA,即賽靈思 XC2064,只包含 64 個(gè)邏輯模塊,每個(gè)模塊含有兩個(gè) 3 輸入查找表 (LUT) 和一個(gè)寄存器。按照現(xiàn)在的計(jì)算,該器件有 64 個(gè)邏輯單元——不足 1000 個(gè)邏輯門。盡管容量很小,XC2064 晶片的尺寸卻非常大,比當(dāng)時(shí)的微處理器還要大;而且采用 2.5 微米工藝技術(shù)勉強(qiáng)能制造出這種器件。
每功能的晶片尺寸和成本至關(guān)重要。XC2064 只有 64 個(gè)觸發(fā)器,但由于晶片太大,成本高達(dá)數(shù)百美元。產(chǎn)量對(duì)大晶片來(lái)說(shuō)是超線性的,因此晶片尺寸增加 5% 就會(huì)讓成本翻一倍,讓良率降至零,同時(shí)也導(dǎo)致初期的賽靈思無(wú)產(chǎn)品可賣。成本控制不僅僅是成本優(yōu)化的問(wèn)題;更是牽扯到公司生存問(wèn)題。
在成本壓力下,F(xiàn)PGA 架構(gòu)師尋求通過(guò)架構(gòu)和工藝創(chuàng)新來(lái)盡可能提高 FPGA 設(shè)計(jì)效率。盡管基于 SRAM 的 FPGA 是可重編程的,但是片上 SRAM 占據(jù)了 FPGA 大部分的晶片面積?;诜慈劢z的 FPGA 以犧牲可重編程能力為代價(jià),避免了 SRAM 存儲(chǔ)系統(tǒng)片上占位面積過(guò)大問(wèn)題。1990 年,最大容量的 FPGA 是基于反熔絲的 Actel 1280。Quicklogic 和 Crosspoint 也跟隨 Actel 的腳步開發(fā)出基于反熔絲的 FPGA。為提高效率,架構(gòu)經(jīng)歷了從復(fù)雜的 LUT 結(jié)構(gòu)到 NAND 門再到單個(gè)晶體管的演變。
在發(fā)明時(shí)代,F(xiàn)PGA 是數(shù)量遠(yuǎn)遠(yuǎn)比用戶的應(yīng)用產(chǎn)品小得多。因此,多 FPGA 系統(tǒng)變得流行,自動(dòng)化多芯片分區(qū)軟件成為 FPGA 設(shè)計(jì)套件的重要組成部分。自動(dòng)布局布線尚未有。完全不同的 FPGA 架構(gòu)排除了通用設(shè)計(jì)工具的可能,因此 FPGA 廠商就擔(dān)負(fù)起了為各自器件開發(fā)電子設(shè)計(jì)自動(dòng)化 (EDA) 的任務(wù)。由于問(wèn)題比較小,F(xiàn)PGA(邏輯和物理)手動(dòng)設(shè)計(jì)是可以接受的。手動(dòng)設(shè)計(jì)與優(yōu)化通常很有必要,因?yàn)樾酒喜季€資源有限會(huì)帶來(lái)很大設(shè)計(jì)挑戰(zhàn)。
擴(kuò)展時(shí)代:1992-1999 年
FPGA 初創(chuàng)公司都是無(wú)晶圓廠的公司,在當(dāng)時(shí)屬于新鮮事物。由于沒有晶圓廠,他們?cè)谏鲜兰o(jì) 90 年代初期通常無(wú)法獲得領(lǐng)先的芯片技術(shù)。因此 FPGA 開啟了擴(kuò)展時(shí)代,此時(shí)落后于 IC 工藝的發(fā)展。到上世紀(jì) 90 年代后期,IC 代工廠意識(shí)到 FPGA 是理想的工藝發(fā)展推動(dòng)因素,由此 FPGA 成為掃除工藝發(fā)展障礙的利器。代工廠只要能用新工藝產(chǎn)出晶體管和電線,就能制造基于 SRAM 的 FPGA。每一代新工藝的出現(xiàn)都會(huì)將晶體管數(shù)量增加一倍,使每功能成本減半,并將最大 FPGA 的尺寸增大一倍。化學(xué)-機(jī)械拋光(CMP)技術(shù)允許代工廠在 IC 上堆疊更多金屬層,使 FPGA 廠商能夠大幅增加片上互聯(lián),以適應(yīng)更大的 LUT 容量(見圖 2)。
圖 2:FPGA LUT 和互連線路的增加。線路長(zhǎng)度以數(shù)百萬(wàn)晶體管間距來(lái)測(cè)量。
占位面積變得不再像發(fā)明時(shí)代時(shí)那么寶貴?,F(xiàn)在,占位面積可讓位于性能、特性和易用性。更大的 FPGA 設(shè)計(jì)需要具有自動(dòng)布局布線功能的綜合工具。 到上世紀(jì) 90 年代末,自動(dòng)綜合、布局和布線已經(jīng)成為設(shè)計(jì)流程的必要步驟。FPGA 公司的命運(yùn)對(duì) EDA 工具的依賴程度不亞于對(duì) FPGA 功能的依賴程度。
最重要的是,實(shí)現(xiàn)容量翻番和片上 FPGA 邏輯成本減半的最簡(jiǎn)單方法是采用新一代工藝技術(shù)節(jié)點(diǎn),因此,盡早采用新的工藝節(jié)點(diǎn)意義非凡?;?SRAM 的 FPGA 在這個(gè)時(shí)期實(shí)現(xiàn)了明顯的產(chǎn)品優(yōu)勢(shì),因?yàn)樗鼈兟氏炔捎昧嗣糠N新工藝節(jié)點(diǎn):基于 SRAM 的器件可立即使用密度更高的新工藝,而反熔絲在新節(jié)點(diǎn)上的驗(yàn)證工作則額外需要數(shù)月甚至數(shù)年時(shí)間。基于反熔絲的 FPGA 喪失了競(jìng)爭(zhēng)優(yōu)勢(shì)。為獲得上市速度和成本優(yōu)勢(shì),架構(gòu)創(chuàng)新與工藝改進(jìn)相比就要退居其次。
積累時(shí)代:2000-2007 年
新千年伊始,F(xiàn)PGA 已成為數(shù)字系統(tǒng)中的通用組件。容量和設(shè)計(jì)尺寸快速增加,F(xiàn)PGA 在數(shù)據(jù)通信領(lǐng)域開辟了巨大市場(chǎng)。2000年代初期互聯(lián)網(wǎng)泡沫破滅之后,迫切需要降低成本,這也減少了很多“臨時(shí)”ASIC 用戶。定制芯片對(duì)小的研發(fā)團(tuán)隊(duì)來(lái)說(shuō)風(fēng)險(xiǎn)太大。當(dāng)他們發(fā)現(xiàn)FPGA可以解決他們的問(wèn)題,自然他們就變成了 FPGA 用戶。
FPGA 問(wèn)題不局限于典型問(wèn)題,單純提高容量不足以保證市場(chǎng)增長(zhǎng)。FPGA 廠商通過(guò)如下兩種方式解決了這一挑戰(zhàn)。針對(duì)低端市場(chǎng),廠商再度關(guān)注效率問(wèn)題,并生產(chǎn)低容量、低性能、“低成本”的 FPGA 系列,例如賽靈思 Spartan? FPGA 系列。針對(duì)高端市場(chǎng),F(xiàn)PGA 廠商通過(guò)開發(fā)針對(duì)重要功能的軟邏輯 (IP) 庫(kù),努力讓客戶更方便地填充最大的 FPGA。這些軟邏輯功能中最值得注意的是存儲(chǔ)器控制器、各種通信協(xié)議模塊(包括以太網(wǎng) MAC),甚至軟微處理器(如賽靈思 MicroBlaze? 處理器)。
設(shè)計(jì)特點(diǎn)在 2000 年代發(fā)生了改變。大型 FPGA 容納超大型設(shè)計(jì)(完整子系統(tǒng))。FPGA 用戶不再只是實(shí)現(xiàn)邏輯;他們需要使 FPGA 設(shè)計(jì)符合系統(tǒng)標(biāo)準(zhǔn)要求。這些標(biāo)準(zhǔn)主要是指信號(hào)和協(xié)議方面的通信標(biāo)準(zhǔn),可用來(lái)連接外部組件或者實(shí)現(xiàn)內(nèi)部模塊通信。處理標(biāo)準(zhǔn)讓 FPGA 在計(jì)算密集型應(yīng)用中發(fā)揮越來(lái)越重要的作用。積累時(shí)代末期,F(xiàn)PGA 已不僅是門陣列,而且還是集成有可編程邏輯的復(fù)雜功能集。FPGA 儼然變成了一個(gè)系統(tǒng)。
系統(tǒng)時(shí)代:2008 年以后
為解決系統(tǒng)設(shè)計(jì)問(wèn)題,F(xiàn)PGA 越來(lái)越多地整合系統(tǒng)模塊:高速收發(fā)器、存儲(chǔ)器、DSP 處理單元和完整處理器。同時(shí)還進(jìn)一步集成了重要控制功能:比特流加密與驗(yàn)證、混合信號(hào)處理、電源與溫度監(jiān)控以及電源管理等。這些特性在 Zynq All-Programmable 器件中得到了充分體現(xiàn)。同時(shí),器件也推動(dòng)了工具的發(fā)展。系統(tǒng) FPGA 需要高效的系統(tǒng)編程語(yǔ)言,現(xiàn)可利用 OpenCL 和 C 語(yǔ)言以類似軟件的流程來(lái)編程。
評(píng)論