eFPGA or FPGA SoC,誰將引領(lǐng)下一代可編程硬件潮流?
eFPGA:冉冉升起的新星,eFPGA即嵌入式FPGA(embedded FPGA),是近期興起的新型電路IP。
本文引用地址:http://m.butianyuan.cn/article/201802/375717.htm隨著摩爾定律越來越接近瓶頸,制造ASIC芯片的成本越來越高。因此,設(shè)計者會希望ASIC能實現(xiàn)一定的可配置性,同時又不影響性能。在希望能做成可配置的模塊中,負(fù)責(zé)與其他芯片或者總線通信的接口單元又首當(dāng)其沖。在芯片中,模塊間的通信往往使用簡單的并行接口或者配合簡單的時序邏輯,但是在芯片間通信時為了保證可靠性,必須通過一系列握手(handshake)協(xié)議來完成通信接口。設(shè)計者往往希望自己的SoC能夠與市面上盡可能多的其他芯片通信,然而市場上的芯片通信接口并沒有一個統(tǒng)一標(biāo)準(zhǔn),同時一些通信協(xié)議也在隨著時間不斷更新?lián)Q代,因此芯片間通信往往需要一些中介(bridge)芯片。事實上,使用FPGA芯片作為芯片間通信的中介已經(jīng)是很常見的做法,因為FPGA具有可配置性,因此可以作為通用通信中介。例如,Apple在iPhone7中集成了一小塊LatTIce的FPGA芯片,據(jù)推測就是為了實現(xiàn)芯片間的通信中介和可配置互聯(lián)。然而,在硬件系統(tǒng)中使用額外的通信中介芯片成本較高,而且也不利于維護(hù),那么,有沒有集成度更高的方案呢?這時候,eFPGA就應(yīng)運而生,通過把一小塊FPGA電路IP集成到SoC中充當(dāng)接口握手協(xié)議處理單元,可以大大提高SoC接口的靈活性,因此能與不同的其他芯片進(jìn)行通信。
除此之外,隨著目前異構(gòu)計算架構(gòu)的興起,eFPGA又看到了一種新的可能,即在SoC上實現(xiàn)高集成度的異構(gòu)計算,讓eFPGA隨著系統(tǒng)的需求在處理不同的應(yīng)用時配置成不同的模塊。這與Intel收購Altera FPGA的終極目標(biāo)相同,只是Intel收購Altera之后,Altera的FPGA IP只會集成在Intel的芯片上,而eFPGA廠商則可以把IP提供給任何花錢購買的客戶。
eASIC概念第一次進(jìn)入大眾視野可以說是2014年,由UCLA的Cheng C. Wang,F(xiàn)ang-Li Yuan和Dejan Markovic等人在ISSCC發(fā)表的文章,“A MulTI-Granularity FPGA With Hierarchical Interconnects for Efficient and Flexible Mobile CompuTIng”。在這篇文章中,作者們通過創(chuàng)造性地設(shè)計互聯(lián)單元,一舉解決了FPGA的功耗、性能和成本受到布線資源限制的問題,從而使得eASIC集成到SoC中真正變?yōu)榭赡?,而該論文也因其突出貢獻(xiàn)獲得了ISSCC Lewis Award。之后,Cheng C. Wang,F(xiàn)ang-Li Yuan和Dejan Markovic就利用該論文中的成果成立了FlexLogix,推廣eFPGA的概念,并使其真正能夠商用化。
到了今年,eFPGA的概念已經(jīng)獲得了業(yè)界的廣泛認(rèn)可,而該領(lǐng)域的公司也在慢慢變多。在前幾天舉行的ARM TechCon中,我們看到了四家公司,分別是FlexLogix,Achronix,QuickLogic以及Menta。
FlexLogix作為eFPGA的先驅(qū),在本屆ARM TechCon上推出的新亮點是用于2.5D封裝的小型FPGA芯片。該芯片主要解決的問題是,如果ASIC使用成熟工藝(如65nm)實現(xiàn),但是eFPGA在65nm上跑不到預(yù)期的性能怎么辦?使用FlexLogix的小型FPGA芯片,就可以把16nm的eFPGA和65nm的ASIC使用硅載片(silicon interposer)之類的2.5D封裝技術(shù)集成到一起,從而實現(xiàn)客戶所需要系統(tǒng)性能。
Achronix的亮點則是高速eFPGA IP。其最新一代的Speedcore IP將會在TSMC 7nm工藝上實現(xiàn),從而實現(xiàn)最強(qiáng)的性能。另外,Achronix的Speedster FPGA芯片也在出貨中。作為首家eFPGA進(jìn)入量產(chǎn)芯片的公司,Achronix2016-2017年收入猛增,值得關(guān)注。
QuickLogic是老牌FPGA廠商,現(xiàn)在也加入了eFPGA的戰(zhàn)場,為我們帶來了ArcTIcPro系列IP。其主要市場是超低功耗SoC市場,例如藍(lán)牙、物聯(lián)網(wǎng)等等,它的eFPGA將給這些超低功耗SoC帶來可配置性,從而實現(xiàn)更好的功耗與成本。另外,QuickLogic的eFPGA支持以性價比高著稱的SMIC,也是其一大亮點。
Menta與之前三家相比,其最大的亮點是可移植性最好,因為之前三家公司提供的eFPGA都是GDS硬IP,而Menta能夠提供RTL軟IP,因此可以輕松移植到不同的工藝上。
FPGA SoC:老樹發(fā)新枝
如果說eFPGA是往SoC里面加入FPGA的話,那么FPGA SoC的概念就是在FPGA里面加上了處理器。FPGA經(jīng)過這么多年的發(fā)展,已經(jīng)不只是驗證設(shè)計的平臺,而變成了一種獨立的設(shè)計實現(xiàn)方式。FPGA可快速重配置的特點使它在許多對靈活性有要求的平臺如魚得水。
為了能從外部方便地控制FPGA,往往需要在FPGA里面實現(xiàn)一個微處理器以運行操作系統(tǒng)以及相關(guān)程序,然后把程序中可加速的部分使用FPGA里面的可配置邏輯高效執(zhí)行。雖然程序中的大部分運算都可以由FPGA加速,但是操作系統(tǒng)部分卻可能成為整體實現(xiàn)的瓶頸:在傳統(tǒng)FPGA中,微處理器往往會用軟核(如MicroBlaze)在FPGA上實現(xiàn),因此比起用來加速的邏輯部分,微處理器的運行速度會比較慢(時鐘頻率《100 MHz),從而拖慢了整體系統(tǒng)的效率。有鑒于此,Altera和Xilinx都推出了自己的方案,即在FPGA芯片內(nèi)集成一個微處理器硬核(如ARM系列處理器)。該硬核不使用FPGA而是由定制邏輯實現(xiàn),因此可以跑在很高的時鐘頻率(~1GHz甚至更高)。因此,在FPGA SoC中,處理器性能不再成為瓶頸,從而使整體系統(tǒng)實現(xiàn)更高性能。
目前Xilinx和Altera都已經(jīng)推出了FPGA SoC相關(guān)產(chǎn)品,并且獲得了用戶的一致認(rèn)可。然而,F(xiàn)PGA SoC的前景遠(yuǎn)遠(yuǎn)不止FPGA+高速處理器硬核。大家知道,F(xiàn)PGA開發(fā)生態(tài)發(fā)展較慢,一個重要原因就是硬件邏輯代碼編寫的學(xué)習(xí)曲線非常陡峭,導(dǎo)致開發(fā)者敬而遠(yuǎn)之。為了減少開發(fā)者的學(xué)習(xí)成本并加快開發(fā)速度,F(xiàn)PGA廠商紛紛推出高級綜合工具(high-level synthesis),可以直接把C語言之類的高級語言翻譯成RTL,從而大大簡化FPGA硬件開發(fā)。而FPGA SoC配合高級綜合工具雙劍合璧能讓整個開發(fā)流程更簡單:首先開發(fā)者用C寫傳統(tǒng)ARM上能跑的程序代碼,之后高級綜合工具把代碼中能夠用FPGA加速的部分轉(zhuǎn)化成RTL并用FPGA硬件實現(xiàn),而代碼的其他部分則跑在FPGA SoC中的ARM硬核上面。這樣就讓高性能FPGA開發(fā)變得非常容易,可望在未來讓更多開發(fā)者能加入FPGA生態(tài)。
eFPGA與FPGA SoC,誰將引領(lǐng)下一代可編程硬件之潮流?
那么,eFPGA IP和FPGA SoC,誰將在未來更受歡迎呢?筆者認(rèn)為,這兩種生態(tài)都表明了SoC在摩爾定律遇到瓶頸的今天走向可配置的潮流,只是eFPGA從SoC的角度出發(fā),而FPGA SoC則是從傳統(tǒng)FPGA的角度出發(fā)。這有點類似之前的微處理器,以Intel代表的傳統(tǒng)處理器芯片提供商的技術(shù)發(fā)展路徑是以處理器為本,并在處理器芯片中集成更多多媒體處理單元,例如集成顯卡,使得處理器更接近SoC;而以ARM為代表的IP提供商則是提供處理器IP,為ASIC中集成合適的處理器IP成為實用的SoC變得更方便。這兩種生態(tài)將會同時存在,然后隨著市場的發(fā)展或許會在某個中間點融合在一起。讓我們拭目以待!
評論