過去十年是由各個技術領域的開源創新所定義的。該軟件堆棧的可公開訪問性質使開發人員社區能夠交換代碼并實現構想,以在組織范圍之外構建協作杰作。廣大社區很長一段時間都沒有意識到這一趨勢。最終,龐大的數量和質量贏得了許多擁護者,開源成為事實上的軟件黃金標準,但是開源硬件又如何呢?
隨著軟件的發展,硬件開發仍然處于孤立狀態,并且以公司為中心以創造競爭優勢。硬件的歷史充滿了導致協作規范出現的非協作運動。有太多的例子表明,孤立的創新最終導致了市場的分散。專有性并沒有成為可持續的業務優勢,而是成為了瓶頸,并最終導致了該標準的終止。索尼BlueRay就是一個這樣的例子。
一個可能的原因可能是硬件是通過IP保護實現業務競爭力的源泉,因此公司希望將其保留在內部。顯然,這種方法尚未擴展,我們目睹了硬件平臺的增長要慢得多。例如,當精益時代出現時,該行業還沒有準備好,但出現了要求苛刻的人工智能(AI)用例。現有的參與者試圖推動傳統的FPGA,GPU和CPU解決方案,這對于不斷發展的推理行業所需的計算而言并不理想。長期以來,Arm不斷創新,并提供了非常完善的指令集,但最終,它也未能跟上步伐。
這種情況最終導致亞馬遜和谷歌看到定制計算解決方案的潛力,因此他們開始在半導體上進行投資以開發推理定制處理解決方案。它為開源硬件主導的車輛帶來了一線希望,這將有助于縮小數據科學與大數據驅動的智能之間的鴻溝。本文追溯了開源軟件的發展歷程,并吸取了一些教訓,這些教訓可以通過采用最佳實踐來幫助開源硬件趕上來。
圖1 Arm及其指令集架構(ISA)多年來一直是知識中心。資料來源:Arm
開源秘密醬
當開源概念在二十多年前首次出現時,圍繞貨幣化存在許多問題,并且隨著時間的流逝,各種模型不斷發展。如今,超過3500萬開發人員為代碼做出了貢獻,為數十億個設備提供了動力,并因此產生了可觀的價值。從MongoDB(79億美元)和Elastic(73億美元)的公開上市以及微軟(70億美元),IBM的RedHat(340億美元)和Salesforce的MuleSoft的大筆收購中可以明顯看出募集資金65億美元。
如今,所有大公司都在以某種形式使用開源軟件,因為它有助于創建優化的軟件來解決當前的問題。盡管計算機和電信行業是開放源代碼軟件的主要消費者,覆蓋了大約60%的軟件需求,但工業和醫療保健企業正在迅速采用。開源大大減少了開發時間,因為大多數模塊都以經過測試和優化的形式提供,可以集成到軟件堆棧中以解決特定問題。
開源提供了經典的營銷課程:用戶甚至在意識到之前就已經是客戶。當他們意識到這一點時,他們在堆棧中使用了如此多的開源,因此最好購買許可證。從Apache孵化許可證到MongoDB,Elastic和Cockroach提供的更加商業友好的許可證,該行業已經走了很長一段路。這樣一來,開源技術便在最初的日子里無需任何明顯的營銷手段就開創了免費增值的先河。
開源軟件成功的秘訣在于發現任何新旅程的核心問題,并讓業務模型隨著時間的流逝而出現。當您解決更多重要問題時,您對源代碼的需求不斷增長,從而導致項目規模擴大,從而吸引了更多資金。這就是為什么開放源代碼項目的前四分之一會產生巨大的開發人員吸引力,而其中大多數都是免費的社區項目。
同樣重要的是要了解為什么有人會為已經開放源代碼的代碼付費?答案在于一段時間內的專門支持,安全修復和維護。這導致了針對不同行業需求水平的不同開放程度。
Linux的出現
如今,開放源代碼軟件在代碼大師班和業務模型方面已有了長足發展。每當一家領先的公司參與開源開發時,它就會成為創建龐大而持久的堆棧的催化劑。
Google開創了各種成功案例,例如Android移動操作系統,TensorFlow機器學習和Kubernetes,用于部署,擴展和容器化的應用程序管理。企業家致力于解決問題的年輕創業公司有幾個例子。隨著大眾對問題的關注,解決方案的規模和數量都在增加,從而帶來了業務成功的故事。
在這一增長過程中,關鍵組件是Linux的到來。它充當可伸縮的主干,可以吸收許多不同的組件和硬件,并無縫提供高性能。無論是提供健壯的主干網來處理嚴格的時序要求,還是提供空間來容納處理體系結構特定元素的不同方式,Linux都能滿足苛刻的用例,并成功交付成果。
構建類似Linux的膠水
在關于開源軟件發展的背景下,讓我們將探索轉向開源硬件世界。并不是開源硬件沒有取得任何成功;無論硬件在哪里開源,它都會成為一個成功的故事。開源微控制器板Arduino是開源硬件如何徹底改變人們使用硬件進行研究和與項目相關活動的方式的典型代表。
圖2 Arduino微控制器板證明了開源硬件的承諾。資料來源:Arduino
隨著計算世界的需求不斷增長,開源硬件的想法正在迅速獲得發展。幾個小型公司嘗試了模塊化硬件,以向客戶提供選擇以配置首選硬件模塊的選擇。這個想法令人興奮,使用戶能夠為來自不同提供商的揚聲器,攝像機和網絡模塊采用一流的硬件,并創建他們想要的任何設備。
但是這種方法未能轉化為可擴展的產品和消費者的廣泛采用。原因可以追溯到缺少驅動硬件代碼,而這些代碼可以使硬件模塊化真正可用。孤零零,極為緊密的開發使得幾乎不可能在最終產品中實現模塊化。隨著處理器達到違反摩爾定律的地步,對突破性創新的需求空前地需要,以匯集該行業的主流智慧。
當我們看到硬件領域對開源的需求時,先驅者可以從其開源軟件弟兄那里借鑒一些經驗教訓。設想使用開源軟件來彌合領先供應商提供的軟件中的性能差距。結果,重點從未放在用戶友好性上,而是在具有挑戰性的環境中著眼于更高的可靠性和代碼性能。
Linux成為服務器的流行操作系統。MySQL在該領域僅憑架構健壯性和模塊化方法的優點向Oracle提出了挑戰,并解決了單片架構的缺點。今天,我們看到亞馬遜幾乎將所有軟件模塊作為單獨的服務出售,這在早期的單片軟件哲學中是不可能的。
關鍵問題是,Linux等同于開源硬件嗎?挑戰在于硬件的復雜性,幾乎不可能構建類似于Linux的膠水將所有硬件捆綁在一起。因此,建立民主硬件生態系統從未真正挑戰過物理,法律和經濟障礙。在第一部分中,物理限制非常復雜,并且限制了開源硬件突圍的真正Linux等效產品的發展。但是,諸如無線電接入網絡(RAN)之類的開放式硬件帶來的5G分支的出現表明,可以想象并創建它。
下一個至關重要的問題是,像RISC-V這樣的指令集體系結構(ISA)是否可以像Linux為各種異構組件的平穩同化所采用的方式一樣,觸發開源硬件的泛濫。如果是這樣,阻止早期玩家建立這樣一個生態系統的原因很重要。
圖3 Microsemi已在其FPGA設計中實現了RISC-V內核。資料來源:Microchip
長期以來,Arm充當了知識樞紐,并帶來了最佳指導集,供不愿與普遍選擇聯系在一起的玩家使用。RISC-V在開源硬件領域提供了獨特的機會,并且在Arm可能被折疊成大型半導體裝置之后,有可能成為金牌標準。
觸發大規模采用
隨后的挑戰在于新工具的學習曲線。在一個令人難以置信的時期內,硬件行業尚未見證其驗證RTL代碼的方式發生巨大變化。SV-UVM是事實上的選擇,它已經逐步發展并創建了一個顯著的舒適區。創建一個新的解決方案并期望人們樂于采用它是一項挑戰。該值必須顯著更大才能觸發新設計和驗證工具集的大量采用,以創建精美的硬件設計。
在開放源代碼硬件規范(例如PCIe,USB,OpenCL和OpenCV)中有成功的故事,但是,真正的開放源代碼硬件之路貫穿了生產難題。它將涉及下一代TSMC的問世,后者可以支持靈活的運輸并為RTL-verification-tapeout創建端到端管道,并與新的開源硬件世界保持一致。說起來容易做起來難,因為與在硬件上投入不大的軟件不同,在硬件上,每一層都以緊密耦合的方式構建了數十年之久,為拆除開放源代碼硬件付出了巨大的代價。
現有工具的逐步發展可能需要一個世紀的時間才能達到業務變化的開源硬件階段。解決方案是通過已定義的路線圖,開啟不同思維和突破的新時代。除非開放源代碼硬件的先驅找到端到端問題的答案,否則采用和建立事實上的Linux替代產品將受到限制。對設計工具和生產的投資將需要通過大規模的重新技能來獲得成功,以使設計社區大規模采用新的工具鏈來創建敏捷的硬件開發。
編輯:hfy
-
微控制器
+關注
關注
48文章
7565瀏覽量
151579 -
ARM
+關注
關注
134文章
9107瀏覽量
367923 -
Linux
+關注
關注
87文章
11314瀏覽量
209795 -
人工智能
+關注
關注
1792文章
47378瀏覽量
238882 -
RISC-V
+關注
關注
45文章
2292瀏覽量
46226
發布評論請先 登錄
相關推薦
評論