被譽為“萬能芯片”的FPGA,近年來越來越多的受到國內(nèi)市場的關(guān)注。不過,其技術(shù)門檻之高,在芯片領(lǐng)域幾乎是無出其右的。其中,在制約FPGA發(fā)展的眾多因素中,最關(guān)鍵的便是EDA軟件工具。
缺一不可!發(fā)展FPGA需軟硬件兩手抓
FPGA全稱為Field Programmable Array,是通過可編程互連連接的可配置邏輯塊(CLB) 矩陣構(gòu)成的可編程半導(dǎo)體器件。FPGA需要配套軟件將用戶設(shè)計燒錄到芯片上才能實現(xiàn)相應(yīng)功能。
目前,在芯片市場主要有CPU、GPU、FPGA與ASIC四大類型。與其它主流芯片相比,F(xiàn)PGA的的靈活性要高于專用芯片ASIC,性能和實時處理能力優(yōu)于CPU,無需NRE成本,上市時間也更快。不過,其功耗、成本、尺寸都大于專用芯片ASIC,應(yīng)用開發(fā)門檻偏高,并不適合海量應(yīng)用。
知名半導(dǎo)體專家(《芯事》作者)謝志峰博士認為:“發(fā)展FPGA必須在硬件和軟件兩方面共同發(fā)展,如果國內(nèi)芯片制程工藝達不到要求,F(xiàn)PGA產(chǎn)業(yè)很難達到最先進的水平。”
FPGA是需要“芯片+EDA+IP”來實現(xiàn)功能的產(chǎn)品,如果把FPGA比作電腦,那么芯片相當(dāng)于Intel CPU,EDA軟件相當(dāng)于微軟OS,IP方案則相當(dāng)于應(yīng)用軟件。電腦正常工作需要Intel CPU、微軟OS、應(yīng)用軟件共同配合,F(xiàn)PGA也需要芯片、EDA、IP這些軟硬件共同支撐實現(xiàn)功能。
不過,此處的EDA并不是指廣義的通用EDA。廣義的EDA 是芯片設(shè)計中必需和最重要的集成電路軟件設(shè)計工具。廣義EDA市場份額占據(jù)前三的Synopsys、Cadence(鏗騰電子)和被西門子收購的Mentor,是ASIC設(shè)計領(lǐng)域主要的軟件供應(yīng)商,其它公司的軟件相對來說在IC設(shè)計時使用者較少。
此文所指的EDA是FPGA專用的軟件開發(fā)工具。不論用戶選擇使用的是哪個廠家的FPGA,在用戶端實現(xiàn)功能時,都需要通過該廠家自主研發(fā)的EDA,也就是FPGA軟件工具的一系列流程來操作完成,比如Xilinx的Vivado、Intel的QuartusII、國內(nèi)紫光同創(chuàng)的PDS,都屬于各家的FPGA軟件工具。
從設(shè)計流程上來講,F(xiàn)PGA與其他芯片的前端設(shè)計流程是相同的,設(shè)計FPGA芯片本身也需要用到廣義的通用EDA,但當(dāng)芯片設(shè)計基本完成后,如ASIC專用芯片不需要編程,直接可焊到板子上運行,F(xiàn)PGA則需要通過軟件工具中的流程將用戶寫好的程序編譯到FPGA中。
通俗來講,如果將硬件比作紙,用戶把需要實現(xiàn)的功能下載到芯片上類似于把畫畫到紙上,那么軟件工具就是作畫的那支畫筆。一幅畫作的完成必須兼具紙張與畫筆。也就是說,對于FPGA而言,軟硬件必須是“兩條腿走路”,互相支撐配合,缺一不可。
舉足輕重!軟件工具決定了FPGA發(fā)展水平
雖然FPGA前后端設(shè)計與數(shù)字芯片具有很多相通性,但FPGA設(shè)計流程中往往是軟件工具先行,尤其在高端大規(guī)模領(lǐng)域。就FPGA本身而言,制約其發(fā)展的因素有成本、功耗及軟件開發(fā)工具等。其中軟件工具的作用舉足輕重。
紫光同創(chuàng)市場總監(jiān)呂喆認為:“軟硬件協(xié)同發(fā)展的FPGA,軟件工具的水平基本上與硬件的水平是對應(yīng)的。從某種程度上甚至可以說,軟件工具處于決定性地位,其軟件工具研發(fā)水平?jīng)Q定了硬件規(guī)模和性能所能達到的高度。”
軟件工具的研發(fā)不僅極具重要性,對于FPGA的發(fā)展更是十分必要的。為了在應(yīng)用端最大限度地發(fā)揮硬件性能,F(xiàn)PGA廠商必須為用戶提供自主開發(fā)的軟件工具。除了考慮與芯片硬件架構(gòu)的匹配和一致性,軟件工具編程設(shè)計時還要考慮應(yīng)用場景多樣性、時許模型的復(fù)雜性和用戶使用體驗及效率等。因此,F(xiàn)PGA廠商需要在軟件工具方面不斷投入。以FPGA巨頭Xilinx公司為例,其研發(fā)人員約為1500人,軟硬件人員基本相同,其中EDA工具人員就超過500人。
FPGA企業(yè)都擁有自主研發(fā)的軟件工具。如Vivado和ISE是Xilinx公司提供的集成化FPGA開發(fā)軟件,它的主要功能包括設(shè)計輸入(DesignEntry)、綜合(Synthesis)、仿真(Simulation)、實現(xiàn)(Implementation)和下載(Download)等。
Quartus II是Altera(已被intel收購)推出的一種可編程邏輯的設(shè)計工具,其強大的設(shè)計能力和直觀易用的接口,日益受到數(shù)字系統(tǒng)設(shè)計者的歡迎。
Lattice的軟件工具Diamond包含的編程器,可對同一掃描鏈上的一個或多個FPGA器件進行直接編程。它支持標準FPGA設(shè)計流程功能,其邏輯綜合工具專為超低密度以及低密度FPGA提供設(shè)計支持。
Pango Design Suite是紫光同創(chuàng)基于多年FPGA開發(fā)軟件技術(shù)攻關(guān)與工程實踐經(jīng)驗而研發(fā)的一款擁有國產(chǎn)自主知識產(chǎn)權(quán)的大規(guī)模FPGA開發(fā)軟件,可以支持千萬門級FPGA器件的設(shè)計開發(fā)。
任重道遠!自研FPGA軟件工具難度高
近二十多年來,除了針對FPGA特點所采用的設(shè)計實現(xiàn)方法不斷升級外,國內(nèi)外FPGA軟件工具的方法學(xué)和總體研發(fā)模式其實未曾改變。
用戶端在使用FPGA時,需將RTL代碼通過邏輯綜合工具、映射工具、布局布線工具、配置數(shù)據(jù)流生成工具、編程下載工具等生成下載到芯片里,結(jié)合時序和功耗分析工具以及在線調(diào)試工具,完成用戶應(yīng)用在FPGA中的實現(xiàn)的整個過程。
在整個FPGA軟件工具設(shè)計流程中,除了仿真工具借助第三方工具實現(xiàn),其他環(huán)節(jié)基本都需要FPGA廠商自己的軟件工具覆蓋,特別是以邏輯綜合工具和設(shè)計實現(xiàn)部分為代表的環(huán)節(jié),存在著較大研發(fā)難度。
在綜合軟件設(shè)計流程中,包含了從硬件描述語言HDL到門級映射和優(yōu)化的多個環(huán)節(jié),幾乎每一個小環(huán)節(jié)都需要研發(fā)人員付諸努力不斷鉆研,從而取得突破。
在用戶設(shè)計經(jīng)過綜合映射成門級網(wǎng)表之后,還需要經(jīng)過編譯、轉(zhuǎn)換、映射、布局布線、位流生成、編程下載最終在FPGA芯片實現(xiàn)功能。其中,布局、布線兩個環(huán)節(jié)作為核心技術(shù)難關(guān)尤為難以攻克。
紫光同創(chuàng)軟件專家表示,布局是將邏輯映射到目標器件結(jié)構(gòu)資源中,布局主要考慮三個方面的因素:一是使Instances盡量集中分布,減少布線資源的線長;二是控制Instances均勻分布的密度;三是控制所有Instances之間的總延時盡可能小。布局關(guān)鍵技術(shù)在于如何在短時間內(nèi)得到全局最優(yōu)解。
布線是將已布局好的instances按照連接關(guān)系通過布線通道連接起來。布線主要考慮的因素包括擁塞和時序兩個方面的因素。
擁塞和時序兩個因素對于布線器來說是矛盾的。如果產(chǎn)生擁塞,那么不可避免的使某些路徑延時較長;如果要使每條路徑延時最小,那么不可避免的要產(chǎn)生擁塞。為了解決擁塞和時序競爭的關(guān)系,可以使用相關(guān)算法,使得時序關(guān)鍵網(wǎng)絡(luò)占用擁擠路徑資源,而在時序方面并不關(guān)鍵的網(wǎng)絡(luò)占用一條更長且不擁擠的路徑資源。
可以看出來,在一定程度上,F(xiàn)PGA幾乎是芯片設(shè)計領(lǐng)域中最需要技術(shù)突破的產(chǎn)品,F(xiàn)PGA軟件工具尤為復(fù)雜。
清華大學(xué)微電子所所長魏少軍教授曾指出:“在EDA工具方面,國內(nèi)對‘邏輯綜合’和‘布局布線’兩個核心基本沒有貢獻,甚至都不去碰它。國內(nèi)大多數(shù)設(shè)計企業(yè)普遍依賴EDA公司或Foundry給出的設(shè)計流程,對于產(chǎn)品性能和競爭力造成影響。”
奮起直追!國產(chǎn)FPGA企業(yè)不斷突圍
從FPGA發(fā)展歷程來看,從1984年美國Xilinx公司推出了全球第一款FPGA產(chǎn)品XC2064算起,之后十多年間,F(xiàn)PGA軟件工具為FPGA的發(fā)展起到了至關(guān)重要的作用。隨著FPGA朝著系統(tǒng)平臺化的方向演進,軟件工具和生態(tài)的重要性顯得越來越重要。
前不久,賽靈思宣布推出一款名為“Vitis”的統(tǒng)一軟件平臺,它能夠讓軟硬件開發(fā)者們在無需掌握硬件專業(yè)知識的情況下,根據(jù)軟件或算法代碼來自動適配并使用Xilinx的硬件架構(gòu)。這也是國際領(lǐng)先廠商布局FPGA生態(tài)的戰(zhàn)略方向,即通過軟件棧和工具鏈,結(jié)合業(yè)界各細分行業(yè)的算法框架和應(yīng)用庫,把傳統(tǒng)的軟件開發(fā)者吸納到FPGA加速應(yīng)用當(dāng)中,分享FPGA高性能計算硬件平臺的價值,與CPU和GPU共享計算加速市場的紅利。
反觀國內(nèi)FPGA產(chǎn)業(yè),我們起步比國外晚了二十多年。在這期間國外FPGA產(chǎn)業(yè)已經(jīng)完成了系列整合并購,市場格局已經(jīng)基本確定,Xilinx、Intel和Lattice等企業(yè)基本上壟斷了全球市場。從2010年開始,國內(nèi)才陸續(xù)出現(xiàn)自主知識產(chǎn)權(quán)的國產(chǎn)FPGA企業(yè),而紫光同創(chuàng)正是其中的佼佼者。
紫光同創(chuàng)市場總監(jiān)呂喆介紹,我們總說紫光同創(chuàng)的PGT180H代表當(dāng)前國產(chǎn)FPGA的最高水平,實際上背后的軟件工具才是真正的定海神針,更大的邏輯規(guī)模和更高的性能,意味著指數(shù)級增長的軟件算法復(fù)雜度,這是大家可能沒有意識到的。
紫光同創(chuàng)通過不斷嘗試,其具有自主知識產(chǎn)權(quán)的大規(guī)模FPGA開發(fā)軟件Pango Design Suite(PDS),已經(jīng)可以支持數(shù)千萬門級FPGA器件的設(shè)計,并可實現(xiàn)從RTL綜合到配置數(shù)據(jù)流生成下載的全套操作,形成了完全自主知識產(chǎn)權(quán)的FPGA開發(fā)工具套件。接下來,紫光同創(chuàng)將致力于做更大規(guī)模的器件,力圖進一步突破。
從產(chǎn)業(yè)鏈角度而言,F(xiàn)PGA的發(fā)展涉及到單元架構(gòu)、IP、EDA軟件、制程工藝、封裝技術(shù)、專業(yè)人才等諸多方面,其發(fā)展之路并不平坦。加之較高的技術(shù)壁壘,對于國內(nèi)FPGA的發(fā)展來說,依靠自主技術(shù)和自主產(chǎn)品,尤其軟件工具的技術(shù)突破,就較為關(guān)鍵了。
寫在最后
如今,國內(nèi)FPGA產(chǎn)業(yè)正處于低端向中高端過渡的關(guān)鍵時期,國內(nèi)企業(yè)已經(jīng)意識到軟件工具自主化的重要意義,并逐步加大投入力度。
隨著國家、各地政府對集成電路產(chǎn)業(yè)尤其FPGA產(chǎn)品的大力扶持,國內(nèi)半導(dǎo)體產(chǎn)業(yè)鏈的不斷成熟完善,以及新興市場需求的增大,我們期待著有更多的國產(chǎn)FPGA企業(yè)能夠在軟件工具方面長風(fēng)破浪,不斷突破,抓住市場增量,推進國產(chǎn)FPGA的進一步發(fā)展!
責(zé)任編輯:tzh
-
FPGA
+關(guān)注
關(guān)注
1629文章
21729瀏覽量
603016 -
芯片
+關(guān)注
關(guān)注
455文章
50720瀏覽量
423164 -
asic
+關(guān)注
關(guān)注
34文章
1199瀏覽量
120439 -
cpu
+關(guān)注
關(guān)注
68文章
10855瀏覽量
211592 -
eda
+關(guān)注
關(guān)注
71文章
2755瀏覽量
173207
發(fā)布評論請先 登錄
相關(guān)推薦
評論