0
本文作者: 吳優(yōu) | 2020-06-28 21:31 |
開源硬件在經(jīng)歷過多次嘗試之后已經(jīng)建立了堅實的基礎(chǔ),但在這一領(lǐng)域的成功仍然是有限的,至少對于處理器而言,目前的成績還十分有限。隨著市場對定制硬件需求的增多,以及越來越多的初創(chuàng)企業(yè)開始尋求用于構(gòu)建高度合適AI/ML算法的加速器和解決方案,開源硬件的熱度持續(xù)升溫。開源硬件的市場究竟有多大?開源最終是否能夠滿足公司所需的一切?這些問題還有待觀察。但越來越多的人開始認(rèn)識到開源硬件的作用,開源硬件也已引起投資者的注意。
目前,人們對于開源硬件還存在一些誤區(qū)?!叭藗兘?jīng)常說‘開源就是免費的’,事實上它并不是免費的” Google項目負(fù)責(zé)人兼OpenTitan項目總監(jiān)Dominic Rizzo說,“這就是為什么我們發(fā)現(xiàn)最成功的開源項目是人們懷著長期的既得利益并以協(xié)作的方式共同努力的項目,這與開放源代碼本身的風(fēng)格剛好相反。在開放源代碼中,開發(fā)者會將開發(fā)出來的源代碼公之于眾?!?/p>
目前的變化在于,開源硬件需要大規(guī)模的定制解決方案,與一般的開源硬件相比,RISC-V尤其如此。Cadence解決方案營銷高級組主管Frank Schirrmeister表示:RISC-V是追求定制化計算和特定領(lǐng)域計算趨勢的結(jié)果,這是一種結(jié)果而不是原因,根本原因是客戶需要通過領(lǐng)域特定體系結(jié)構(gòu)和領(lǐng)域特定語言來實現(xiàn)特定領(lǐng)域以及特定工作負(fù)載的計算,任何可拓展的處理器都在該領(lǐng)域中發(fā)揮作用,開源正好滿足需求。
在更廣泛地被商業(yè)化之前,開源硬件還面臨著一些挑戰(zhàn)。Arm汽車和物聯(lián)網(wǎng)業(yè)務(wù)線的策略副總裁Tim Whitfield表示,IP必須滿足嚴(yán)格的驗證標(biāo)準(zhǔn)以及在當(dāng)今商業(yè)硬件中的長期支持和維護(hù)而不破壞SoC或系統(tǒng)設(shè)計人員現(xiàn)有的總擁有成本模型,風(fēng)險在于,對于一款幾乎沒有差異的設(shè)備,通常通過在驗證、物理設(shè)計和軟件開發(fā)上花費的時間和成本,最大程度地減少與許可相關(guān)的成本節(jié)省。目前有一些試圖解決此類問題的組合,但為了成功地解決問題并為SoC提供一些構(gòu)建模塊,需要有意愿的參與者提供持續(xù)地支持和資助,這種聯(lián)合體模式對SoC上的許多標(biāo)準(zhǔn)都運行良好,這也是一種拓展模型。
聯(lián)合體模式的實現(xiàn)還需要一些時間。 “當(dāng)人們開始考慮開源硬件時,就會有純粹主義者想要一切開源?!?OpenHW集團(tuán)總裁兼首席執(zhí)行官Rick O'Connor說,“硬件行業(yè)(尤其是半導(dǎo)體行業(yè))將分階段實現(xiàn)一切開源。許多人認(rèn)為RISC-V架構(gòu)意味著免費和處理器核心開源?;A(chǔ)任務(wù)是對指令集規(guī)范和各種標(biāo)準(zhǔn)擴(kuò)展的管理,以及指令集的可拓展性的管理。當(dāng)人們在談?wù)揑SA(指令集架構(gòu))的自由開源時,就意味著我們可以自由地使用該ISA?!?/p>
理念也在發(fā)生變化。 “開源是一項重大的投資,的確需要多方參與才能看到這一空間取得長遠(yuǎn)的成功” Google的Rizzo補充道,“事實上,驗證IP是真正賦予RTL價值的東西,二者缺一不可,尤其是需要投入生產(chǎn)時?!?/p>
總體價值必須被評估?!白鳛閰⒖蓟鶞?zhǔn)的RISC-V穩(wěn)定且經(jīng)過了良好的測試?!?Valtrix Systems首席執(zhí)行官兼聯(lián)合創(chuàng)始人Shubhodeep Roy Choudhury說,“公司可以加入自己特有的方案從而節(jié)省設(shè)計時間和成本。同他人合作可以分?jǐn)傞_發(fā)成本,但驗證成本可能依然很高,因為人人都想確保自己的IP按照規(guī)范工作,后端成本則不可避免,因此能節(jié)省的成本很少。從多個處理器IP公司中進(jìn)行選擇非常靈活,如果一個供應(yīng)商提供的IP效果不佳,還有其他選擇?!?/p>
開源硬件的商業(yè)IP之路
IP行業(yè)已經(jīng)走了很長一段路,人們對商業(yè)IP的期望也越來越高。
開源IP達(dá)到大批量芯片所需的質(zhì)量水平是一個挑戰(zhàn)?!斑@就是像OpenHW Group這樣的非營利組織發(fā)揮作用的地方,” OneSpin Solutions的營銷主管Rob van Blommstein說,“許多公司都為實現(xiàn)這一目標(biāo)做出了貢獻(xiàn),也有一些希望減少對外國技術(shù)依賴性的大公司對其感興趣。開源硬件的另一個重要性在于它可以提供免費的可定制內(nèi)核以及成熟的工具鏈和生態(tài)系統(tǒng),從而為小型公司和個人帶來巨大的創(chuàng)新潛力?!?/p>
OpenHW的O'Connor表示,開源硬件必須像從商業(yè)IP供應(yīng)商那里獲得的商業(yè)IP一樣,OpenHW集團(tuán)試圖與一群希望提供經(jīng)過良好驗證的高質(zhì)量IP的公司共同努力,在真正的SystemVerilog UVM測試平臺中提供良好的功能覆蓋范圍和代碼覆蓋范圍,如果這一平臺測試是公司自己在做,那么他們會自己建立這一平臺。
對于市場而言,還有一些其他的驅(qū)動因素。Rizzo說:“安全性并不意味著保密,根據(jù)柯克霍夫斯原則,不應(yīng)該依賴現(xiàn)實的保密性來確保安全性。因為當(dāng)你認(rèn)為它很安全時,安全工程師以及這一領(lǐng)域的工作者想知道具體情況,隨后又有人發(fā)現(xiàn)了問題,的確發(fā)生過太多令人不愉快的事情。一些東西具有專業(yè)性,所以不必將正在尋找漏洞的人拒之門外,但的確可以阻止研究人員或好奇者的這一行為?!?/p>
免費使用還是創(chuàng)新自由?
著眼于開源硬件的人們一般分為兩個陣營。Imperas Software首席執(zhí)行官西蒙·戴維曼(Simon Davidmann)說:“其中一個陣營的人正在尋找免費的午餐,他們不想支付任何費用。如果他們能夠不用付出就獲得某些東西,那么他們就可以完成某些工作。另一個陣營的人則想要獲得自由?!?/p>
在兩個陣營之間存在一個連續(xù)體。 “有一些RISC-V的專有實現(xiàn)是閉源的,只能在內(nèi)部使用。” O'Connor說:“另一端是商業(yè)IP公司在許可的情況下銷售IP。有一些IP公司提供各種開源語言的實現(xiàn),這些實現(xiàn)以Chisel、VHDL、Verilog或SystemVerilog等各種不同的語言提供,并且形式多樣大小不一,從微型控制器到高端服務(wù)器級機器?!?/p>
想要成為得到自由陣營中的一員,意味著明白自己能夠付出多少、承擔(dān)多少風(fēng)險以及實現(xiàn)這項目標(biāo)所需的技能。 “如果想要獲得創(chuàng)新自由,那么需要擁有構(gòu)建大型SoC的經(jīng)驗。” Davidmann補充說:“它要求公司有一種方法可以在其中配置代碼,進(jìn)行大量分析以識別代碼需要改進(jìn)的地方或需要哪些溝通渠道、選擇要添加的指令、處理所需的體系結(jié)構(gòu)內(nèi)容進(jìn)行擴(kuò)展或定制,然后構(gòu)建模型并在其上測試軟件,對其進(jìn)行驗證,并對硬件進(jìn)行更多驗證。沒有太多經(jīng)驗的公司不應(yīng)該這樣做,因為這非常具有挑戰(zhàn)性?!?/p>
專有處理器IP公司提供許多相同的替代方案,RISC-V引起了人們對這些選擇的興趣。
開源模型
可擴(kuò)展的指令集與可擴(kuò)展的體系結(jié)構(gòu)
有些人希望實現(xiàn)最大化創(chuàng)新的自由。Synopsys的 ARC DSP處理器產(chǎn)品營銷經(jīng)理Graham Wilson說:“有一小部分人會說我想完全擁有處理器,我想完全定制它。這部分人會投資并花時間了解這些工具,將學(xué)習(xí)如何構(gòu)建這些新指令作為一項戰(zhàn)略決策,然后進(jìn)入并修改內(nèi)核的體系結(jié)構(gòu),添加新的接口,并且從策略上,他們已經(jīng)決定從ARC配置的可擴(kuò)展內(nèi)核擁有處理器。
有些人則采取中間立場。O'Connor說:“這些人從經(jīng)過充分驗證的通用內(nèi)核開始,采用了驗證基礎(chǔ)架構(gòu),并使用自己的自定義加速器或自定義指令。顯然,他們可以自行驗證這些內(nèi)容,也可以在我們提供的驗證基礎(chǔ)架構(gòu)上進(jìn)行構(gòu)建。如果他們希望這成為開源社區(qū)中的標(biāo)準(zhǔn)實現(xiàn),那么也許這就是我們將在OpenHW集團(tuán)內(nèi)部組織的?!?/p>
即使是那些打算購買RISC-V內(nèi)核的人,仍然可以看到一定程度的自由。西門子業(yè)務(wù)部門Mentor的設(shè)計驗證技術(shù)市場總監(jiān)Neil Hand表示:“許多采用RISC-V的人都不想定制該處理器,他們?nèi)匀豢梢詫Χ鄠€處理器進(jìn)行基準(zhǔn)測試并推遲處理器決策。在過去,通常會在項目開始時做出處理器決策,之后便可以解決問題。使用RISC-V,則可以從多個供應(yīng)商處獲得可比的ISA,并且可以根據(jù)擴(kuò)展名和體系結(jié)構(gòu)在不同的供應(yīng)商之間進(jìn)行遷移?!?/p>
隨著行業(yè)的成熟和行業(yè)中越來越多的擴(kuò)展可用,創(chuàng)造自定義說明的需求可能會減少。Synopsys的Wilson表示:“我們不會加速FFT,因為它已經(jīng)被優(yōu)化了。當(dāng)出現(xiàn)諸如無線通信或有線通信之類的新算法或新規(guī)范時,您可能會發(fā)現(xiàn)客戶會有特定的瓶頸,然后為其添加說明。不過業(yè)界會從中吸取教訓(xùn),并構(gòu)建一個更通用的解決方案,或者將其作為處理器包中的可擴(kuò)展指令來提供。”
一些處理器可能針對特定領(lǐng)域?!叭绻麑⒛抗馔断蛭锫?lián)網(wǎng)或某些5G設(shè)備,它們就是單用途設(shè)備,” Mentor's Hand說。“隨著我們進(jìn)入由這些專用應(yīng)用程序?qū)S糜嬎闫脚_驅(qū)動的新計算時代,由于軟件生態(tài)系統(tǒng)的存在,仍然需要可編程性。但是從擴(kuò)展角度來看,可能存在特定需求,但不一定普遍?!?/p>
不過,這一現(xiàn)狀也會隨著時間而發(fā)生改變。Davidmann說:“如果使用某些早期內(nèi)核,例如蘇黎世聯(lián)邦理工學(xué)院(ETH Zurich)的PULP內(nèi)核,則需要RISC-V基礎(chǔ)中不存在的一些特定說明,因此必須建立自己的自定義說明。如今,這些說明已存在于標(biāo)準(zhǔn)中。RISC-V指令集已經(jīng)變得非常豐富,涵蓋了很多內(nèi)容。有一些工作組非常接近完成其他指令集上的大部分工作。”
一些核心將由它們的應(yīng)用程序域驅(qū)動?!霸谌斯ぶ悄芎蜋C器學(xué)習(xí)中,很多基礎(chǔ)計算是乘積累加,” Cadence Tensilica集團(tuán)產(chǎn)品營銷總監(jiān)喬治·沃爾說,“但是仍然可以提高效率,以防止處理器將零乘以零,這是一個可擴(kuò)展的指令集可以派上用場的例子?!?/p>
在這些算法中,有一些正在逐漸通用化。Aldec市場營銷總監(jiān)Louie De Luna說:“ CNN的卷積層包含大量的乘法累加運算,它們拉低了計算效率。CNN需要同時將多個數(shù)據(jù)塊從矩陣移動到外部存儲器,以避免由于多次訪問存儲器而造成的延遲。CNN的純硬件實現(xiàn)缺乏解決這些問題的靈活性,因為它們需要復(fù)雜的控制器來處理計算和數(shù)據(jù)傳輸,但是可以創(chuàng)建自定義指令來解決這些類型的特定領(lǐng)域的問題?!?/p>
其他人也同意這一看法。Wilson表示,考慮SeeFar雷達(dá)的應(yīng)用,這些算法利用滑動窗口,因此能夠看到通過添加自定義指令來加速這些過程。它們與標(biāo)準(zhǔn)DSP功能不同,是一種數(shù)據(jù)吞吐功能,但是自定義指令有助于通過滑動窗口從加載存儲器或寄存器中拉出數(shù)據(jù)。
一些處理器開始合并嵌入式FPGA,這提供了動態(tài)可重配置性,不過這將帶來另一個問題。QuickLogic FPGA產(chǎn)品經(jīng)理Mao Wang說:“如果您擁有嵌入式FPGA,而供應(yīng)商強迫您使用專有工具,那么您將無法將其集成到您的設(shè)計環(huán)境中,它迫使您在僅具有使用該軟件能力的情況下使用兩種或三種不同的法律許可的方法,同時支撐結(jié)構(gòu)也會變得很復(fù)雜。”
業(yè)界未能建立使FPGA易于編程的軟件社區(qū)。QuickLogic總裁兼首席執(zhí)行官Brian Faith表示,更多的工程師是計算機科學(xué)或數(shù)據(jù)科學(xué)學(xué)位,而不是面向硬件的學(xué)位。在后摩爾時代,硬件需要更像軟件,如果可以的話,這將為其帶來更多的潛在用途。FPGA公司希望用戶繼續(xù)使用自己的工具,這使開源公司或工具很難真正立足扎根。QuickLogic是第一家公開支持FPGA開源工具的可編程邏輯公司。
傳統(tǒng)而言,F(xiàn)PGA公司保護(hù)其比特流(雷鋒網(wǎng)注,一個比特流是一個比特的序列。)。開放意味著放棄設(shè)備配置信息、時序和其他被認(rèn)為專有的信息。Faith補充說:“我們現(xiàn)在正在向社區(qū)提供這些包括在開源工具中的信息,您不再需要嘗試進(jìn)行任何逆向工程就可以一直進(jìn)行設(shè)計并獲得比特流?!?/p>
一些開放源代碼程序(例如OpenTitan)從RISC-V內(nèi)核開始,然后再往上添加,并將最終結(jié)果放入社區(qū)。OpenTitan是開源芯片的信任之根。Rizzo說:“我們正在公開采購RTL和設(shè)計驗證IP,這需要與后端合作伙伴合作以完成芯片的所有工作。它提供了一組邏輯安全保證,當(dāng)一臺機器啟動時,我們將進(jìn)行非常深入的低層次檢查,以便了解它正在引導(dǎo)我們了解的、控制的和已經(jīng)簽名的代碼。”
開源硬件社區(qū)的構(gòu)建需要多家公司共同參與
隨著開源軟件社區(qū)的擴(kuò)展,出現(xiàn)了一些新的業(yè)務(wù)模型,同樣的情況也發(fā)生在硬件上。Cadence的Schirrmeister說:“如果我一個人做,那么參與成本就很高。但目前在兩者之間有機會提供服務(wù),可以使用一種工具從開源架構(gòu)開始自動生成,也可以召集提供多種服務(wù)和工具的人員。這將是一家熟悉該架構(gòu)的公司,且已經(jīng)完成了較為成功的修改,因此他們能夠同我一起工作,了解我的需求并有幫助我修改和驗證體系結(jié)構(gòu)的能力,因為我不需要從頭開始?!?/p>
其他人也同意這一看法。Wilson說:“客戶知道他們想要的具體說明并可能會要求我們?yōu)樗麄冏鲞@些說明,客戶知道算法和瓶頸是什么,但不知道如何實現(xiàn)這些,因此在同了解處理器硬件的公司合作時,更容易契合?!?/p>
開源硬件社區(qū)的搭建是一個不斷有新成員參與的過程。例如,Codasip提供了由Western Digital開發(fā)并由CHIPS聯(lián)盟根據(jù)RISC-V ISA開發(fā)的SweRV內(nèi)核。“我們已經(jīng)添加了一個支持包,” Codasip的高級市場總監(jiān)Roddy Urquhart說。“這使得實現(xiàn)RISC-V SweRV內(nèi)核變得容易得多。我們不僅提供核心,還包括對傳統(tǒng)第三方設(shè)計流程的支持,以及對設(shè)計、實現(xiàn)、測試和編寫軟件所必需的組件的支持?!?/p>
投資RISC-V成本與收益
對于投資RISC-V的公司而言,可能意味著花費、進(jìn)行IP捐贈,在特定領(lǐng)域提供專業(yè)知識以及承擔(dān)風(fēng)險。“我們需要承擔(dān)的最大風(fēng)險是失去控制權(quán),” QuickLogic的Faith說:“從某種程度而言,這比寫支票要困難得多,這需要說服董事會或管理團(tuán)隊我們不想要生態(tài)系統(tǒng),我們也不想保護(hù)我們部署的設(shè)備、路由架構(gòu)或通道,我們也不想保護(hù)時間信息。實際上這相當(dāng)于放棄控制權(quán),這比我們的任何花費都要昂貴。但我認(rèn)為這是一個實現(xiàn)增長的好機會,我愿意承擔(dān)這一風(fēng)險,克服對失去控制的恐懼?!?/p>
一些公司愿意提供人力。O'Connor說:“客戶可以通過執(zhí)行測試和運行測試或通過有關(guān)我們?nèi)绾螛?gòu)建驗證測試平臺的指導(dǎo)來獲得幫助??蛻艨梢詤⑴c工程,但公司的成員不必參與,這就是我們創(chuàng)建可持續(xù)的虛擬團(tuán)隊的方式??蛻舨恍枰蔀槌蓡T即可使用IP,我們的IP是完全開源的。客戶可以下載它,將其放進(jìn)設(shè)備中就可以使用了?!?/p>
但是成員參與會帶來回報?!叭绻蛻粝敫淖兟肪€圖和確定IP中的功能,就必須成為成員,” O'Connor補充道,“如果客戶想影響我們正在進(jìn)行的項目的優(yōu)先級,則需要成為成員。如果客戶想影響我們驗證IP的方法和結(jié)構(gòu),則需要成為成員并參與任務(wù)組?!?/p>
EM Microelectronics的工程師Greg Tumbush生動地描述了強大的合作關(guān)系?!爸袛囹炞C是一項艱巨的任務(wù)。當(dāng)OpenHW Group討論中斷結(jié)構(gòu)的樣子時,我建議他們使用Core Local Interrupt Controller(CLIC)或Core Local INTerruptor(CLINT)中斷方法。在構(gòu)思設(shè)計時,離標(biāo)準(zhǔn)核心越近越好。首先,國際空間站可能正在正確建模。其次,他們所做的驗證適用于客戶。而且,就漏洞修復(fù)而言,客戶開發(fā)的任何內(nèi)容都是直接可歸因的。如果客戶擁有完全不同的內(nèi)核,則客戶的公司與OpenHW之間沒有協(xié)同作用。如果我驗證了中斷,那么下載該內(nèi)核的任何人都不必驗證中斷,這是艱巨的任務(wù)。通過貢獻(xiàn),客戶可以發(fā)揮杠桿作用,并借助杠桿作用,可以影響核心的發(fā)展方式?!?/p>
Rizzo說:“這些折衷之一是,我在某種程度上放棄了控制權(quán),并且盡了最大的努力使事情朝著健康的方向發(fā)展。如果從不同的角度來看,并且習(xí)慣了很多細(xì)粒度的控制,那么很難接受。所以必須以積極的態(tài)度來對待它,并了解開源的優(yōu)勢。這會花費更長的時間,并且需要更多的討論,但是這些折衷是值得的。我們在某些方面很擅長,但在并不是在各個方面都是專家。因此,我們在某種程度上放棄控制權(quán),并且與特定的合作伙伴合作,真正實現(xiàn)了愿景。”
結(jié)束語
隨著RISC-V處理器ISA的出現(xiàn),開源硬件已成為現(xiàn)實。該行業(yè)現(xiàn)在擁有足夠的動力,可以解決問題并找到解決方案。
新的商業(yè)模式正在出現(xiàn),但是開源硬件看起來不太像開源軟件。硬件需要更多的投資,因為將其用于實施會帶來更大的成本和風(fēng)險。但是通過協(xié)作,有可能找到更好的架構(gòu)和更好的解決方案。
本文編譯自https://semiengineering.com/riding-the-risc-v-wave/
雷鋒網(wǎng)雷鋒網(wǎng)
相關(guān)文章:
專訪圖靈獎得主David Patterson:希望RISC-V架構(gòu)5年內(nèi)成為專有架構(gòu)的強大對手
國內(nèi)首家!平頭哥剛剛宣布開源RISC-V內(nèi)核MCU芯片設(shè)計平臺
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。