機械社區(qū)

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 4518|回復(fù): 0
打印 上一主題 下一主題

軟件有開源,硬件也有?——開源硬件大綜述

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2012-9-8 21:01:26 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
開源硬件(Open Source Hardware)指與自由及開源軟件相同方式設(shè)計的計算機和電子硬件。開源硬件也是開源文化的一部分,并且將這一概念延伸到更多樣的領(lǐng)域中。通常開源硬件會公布詳細的硬件設(shè)計信息(包括機械圖、電路圖、BOM清單、PCB版圖、HDL源碼和IC版圖)以及與開源軟件相關(guān)的驅(qū)動軟件。
1.開源硬件的由來
軟件通常指源代碼和執(zhí)行文件,而開源軟件運動的目的就是開發(fā)者開放軟件的源代碼,使用者可以免費的拷貝、學(xué)習(xí)和開發(fā)利用。硬件的包括范圍更廣,可以指產(chǎn)品,也可以指產(chǎn)品的設(shè)計信息。因此硬件開源并不是免費使用,你不可能免費的拷貝硬件。開源硬件運動的目的是開發(fā)者公開硬件的所有設(shè)計信息,使得使用者能夠?qū)W習(xí)和進一步開發(fā)。
為什么硬件要開源?Richard Stallman 在他的經(jīng)典文章“Why Software Should be Free”中指出的限制軟件拷貝所帶來的3個層面的損害:1)越來越少的人使用程序;2)沒有人能夠改編或者修正程序;3)其他開發(fā)者不能夠從中學(xué)習(xí)并運用到新的程序中。同樣的這幾個方面在某種程度上對硬件也是同樣適用的。
1)硬件開源,其他的制造商能進行二次開發(fā),這在有些時候?qū)τ诖蚱茐艛嗍欠浅:玫霓k法。比如SUN公司的SPARC開源微處理器。
2)硬件開源這樣使用者可能對產(chǎn)品進行維修,而愛好者們可以在此基礎(chǔ)上改編出自己喜歡的東西。如果這樣社會和環(huán)境資源的節(jié)約也是影響很大的。
3)這也是最重要的硬件開源使得其他開發(fā)者能夠從中學(xué)習(xí),加快知識的傳播和積累。
2.開源硬件的歷史
開源硬件的概念是受開源軟件的啟發(fā)而來,但是硬件開放確是可以追溯到很久之前。隨著集成電路的發(fā)展硬件的開放也經(jīng)過了3個時期的發(fā)展:
1)第一波浪潮出現(xiàn)在60到70年代,出現(xiàn)了大批的無線電愛好者,主要目的就是為了社區(qū)交流,傳播思想。而此時中等規(guī)模甚至大規(guī)模TTL集成電路的出現(xiàn),使得搭建電路變得簡單而且便宜。
2)第二波浪潮出現(xiàn)在80年代,此時出現(xiàn)了超大規(guī)模集成電路,硬件的設(shè)計門檻變得越來越高。硬件的設(shè)計方法也發(fā)生了很大變化,出現(xiàn)了自動化設(shè)計。這一時期出現(xiàn)了很多免費的EDA設(shè)計軟件。
3)第三波浪潮出現(xiàn)在90年代末,此時才出現(xiàn)了開源硬件的概念。隨著FPGA的發(fā)展和SoC的設(shè)計出現(xiàn),硬件設(shè)計需要更多的模塊庫,出現(xiàn)了大量免費IP。而且開源軟件的流行和其取得的巨大商業(yè)成功,刺激了開源硬件的產(chǎn)生。同時嵌入式系統(tǒng)市場的快速擴張,使得電子愛好者手中又有了簡單便宜的工具,可以搭建自己喜歡的平臺。
3.開源硬件的發(fā)展
在 1998 年初,荷蘭代爾夫特理工大學(xué)(是世界上頂尖的理工大學(xué)之一,并被譽為歐洲的麻省理工學(xué)院)的一群學(xué)生、教師和工程師創(chuàng)建了因特網(wǎng)上的Open Design Circuits組,致力于開發(fā)開放電路并在 Web 上發(fā)布開發(fā)成果。FPGA的出現(xiàn)使得免費交流拷貝硬件設(shè)計成了可能,但是如同商業(yè)軟件版權(quán)阻止了軟件的傳播,越來越多需要付費的IP核也成為了開放硬件設(shè)計的障礙。ODC并沒有考慮生產(chǎn)實際的產(chǎn)品,但是它構(gòu)成了開源硬件社區(qū)的雛形。第一次有很多人聚集在一起討論免費的硬件設(shè)計的問題,雖然ODC已不再活動,但一些工程師和學(xué)生從這個組得到了靈感,他們繼續(xù)完善自己的開放硬件社區(qū)并促進這個領(lǐng)域的發(fā)展。
ODC的創(chuàng)建者Reinoud Lamberts之后創(chuàng)立了opencores.org開源社區(qū),致力于關(guān)注數(shù)字模塊中的IP核部分。opencores是目前世界最大的開源硬件IP核社區(qū),總共匯集了將近900個項目(IP),opencores也開發(fā)出了著名的完全開源的處理器OpenRISC1000。同時出現(xiàn)了很多開源的微處理器項目,其中比較著名的有F-CPU和LEON處理器(歐洲航天總局下開源項目)。
半導(dǎo)體產(chǎn)業(yè)的特殊性,盡管開源IC設(shè)計在技術(shù)上已經(jīng)實現(xiàn),但是流片和生產(chǎn)的成本太高,芯片的成本降低需要靠規(guī)模生產(chǎn)來實現(xiàn),因而開源的成本優(yōu)勢不復(fù)存在。F-CPU項目在2004年就結(jié)束,opencores還是一直在致力于FPGA平臺的IP核開發(fā),在傳統(tǒng)的IC芯片產(chǎn)業(yè)實現(xiàn)開源設(shè)計太困難。但是還是有部分先行者一直在研究,考慮用更便宜的材料代替硅工藝,或者設(shè)計“Good Enough”應(yīng)用。
目前一些開源硬件參與者起草制定了開源硬件規(guī)范(Open Source Hardware Definition),而開源硬件峰會(Open Hardware Summit)已經(jīng)成功舉行了兩屆,開源硬件的思想已經(jīng)滲透到了硬件設(shè)計的各個層面,各種大大小小的社區(qū)不斷涌現(xiàn)。
4.開源硬件的現(xiàn)狀
最近幾年開源硬件取得了令人驚喜的成就,這得益于電子技術(shù)的不斷進步,比如移動技術(shù)、FPGA工藝和嵌入式設(shè)計的普及等等。更多的廠商投入到開源硬件設(shè)計中來,而大廠商也看到了開源硬件中的機會,畢竟越多的人使用市場越廣。從超大系統(tǒng)級設(shè)計到芯片SoC設(shè)計,從移動平臺到單片機平臺,從具體的應(yīng)用產(chǎn)品到模塊化產(chǎn)品都能夠看到開源硬件的項目。這里介紹一些開源硬件代表性的項目或技術(shù)。
1)開源運算項目(Open Computer Project)
2011年4月,F(xiàn)acebook建成自己了首個性能最先進的數(shù)據(jù)服務(wù)中心,同時向全球公開了其服務(wù)器和數(shù)據(jù)中心核心技術(shù)。任何人可以在Open Compute Project的網(wǎng)站上看到服務(wù)器和數(shù)據(jù)中心的CAD圖紙設(shè)計。OCP由Facebook牽頭,與惠普、戴爾、AMD和英特爾公司共同合作,它包括數(shù)據(jù)中心和服務(wù)器兩部分。其中,數(shù)據(jù)中心包括整體電力供應(yīng),整體溫度控制(主要是指機房冷卻控制),備用電池以及三聯(lián)機柜。而服務(wù)器則由機箱、主板和電力供應(yīng)組成。

OCP計劃宣布之后馬上吸引了大批的行業(yè)巨頭參加,2011年10月,F(xiàn)acebook于紐約召開了OCP峰會,討論OCP的發(fā)展規(guī)劃。Facebook宣布成立支持開源計算項目的基金會,引導(dǎo)OCP的前進方向,鼓勵更多企業(yè)分享數(shù)據(jù)中心技術(shù)。同時OCP發(fā)布了一系列OCP計劃的使命和指導(dǎo)守則,并且公布了OCP計劃的官方合作伙伴的名單。OCP將確立系統(tǒng)級硬件設(shè)計的標準以加快大規(guī)模計算中心硬件設(shè)計上的創(chuàng)新,Red Hat已經(jīng)在OCP系統(tǒng)上驗證了企業(yè)級Linux系統(tǒng),證明了OCP系統(tǒng)的兼容性。OCP峰會還確立了由5個不同的技術(shù)工作室負責(zé)系統(tǒng)不同部分的標準制定,包括數(shù)據(jù)中心設(shè)計、系統(tǒng)級管理、機械設(shè)計以及電源分布、存儲部分和虛擬IO部分。
OCP計劃已經(jīng)形成了一個大規(guī)模計算處理設(shè)計的生態(tài)系統(tǒng),隨著更多服務(wù)器廠商、系統(tǒng)級軟件廠商以及各種用戶的加入,OCP可以稱為有史以來最大規(guī)模的開源項目。
2)開源嵌入式開發(fā)平臺
隨著移動產(chǎn)業(yè)的發(fā)展以及Andriod系統(tǒng)的流行,對于眾多軟件開發(fā)者來說,擁有一款開源硬件的嵌入式開發(fā)平臺也是一個不錯的選擇。TI公司也大力的推廣并支持了多個開源硬件的項目,其中比較著名的有BeagleBoard項目和PandaBoard項目。
BeagleBoard     是全世界第一款硬件開源的ARM開發(fā)板,專門為開源社區(qū)(Open Source Community)設(shè)計的開發(fā)平臺。以TI公司的OMAP3 SoC處理器建立的一個最小開發(fā)平臺,通過制定標準的接口使其獲得相當(dāng)于個人計算機的擴展性。BeaglBoard是一款具有超低成本、高性能以及低功耗的開源開發(fā)平臺,完全公開所有相關(guān)文件,包括原理圖、PCB圖、BOM清單,無需得到許可即可無限制的復(fù)制該開發(fā)板。OMAP3處理器包含一個 ARM Cortex-A8 內(nèi)核、Texas Instruments C64x+ 數(shù)字信號處理器和板載2D/3D圖形化引擎,支持Linux操作系統(tǒng)。完全開源的設(shè)計使得開發(fā)人員能得到最強大的技術(shù)支持。目前包括WE、Ubuntu、RISC OS、Symbian以及Android等多個操作系統(tǒng)的支持項目已經(jīng)在BeaglBoard上展開。

PandaBoard  同樣也是TI公司資助下的一個開源硬件項目。PandaBoard的核心采用了OMAP4 SoC移動處理器平臺,其目的是為開源社區(qū)建立一個移動的開發(fā)平臺。PandaBoard也是采用硬件開源模式,所有原理圖、PCB圖、BOM清單以及相關(guān)軟件資源也完全對用戶開放。PandaBoard也延續(xù)了超低成本、高性能和低功耗的特點。TI公司強大的OMAP4 SoC移動處理器包含雙核 ARM Cortex-A9 內(nèi)核、Texas Instruments C64x+ 數(shù)字信號處理器、兩個ARM Cortex-M3 處理器、圖形引擎和高清視頻處理。PandaBoard還配備了1GB DDR2 SDRAM,作為移動開發(fā)平臺與BeaglBoard不同的是它配備了WiLink 6.0模塊支持802.11b/g/n以及Bluetooth2.1。

3)OpenMoko開源手機項目
Openmoko是一個開源手機項目,目的是建立全球第一個自由的移動通訊操作系統(tǒng)平臺,此平臺運行在X server之上,并能運行大多數(shù)的X應(yīng)用程序。而OpenMoko硬件系統(tǒng)也是完全開放的,允許開發(fā)者對軟件和硬件任意定制。Openmoko的Software Stack將GTK+、EFL與Qtopia整合在一起,無論使用哪一種手機UI技術(shù),都能在Neo FreeRunner上表現(xiàn)。OpenMoko曾經(jīng)造成巨大反響,給開源社區(qū)的人帶來無限希望,不過由于移動市場劇烈變動以及競爭,OpenMoko與2009年終止了該項目。但是在2011年8月,Openmoko社區(qū)和德國Openmoko分銷商Golden Delicious Computer合作,讓開源智能手機涅磐重生,他們將合作開發(fā)Openmoko GTA04,而且已經(jīng)制造了原型機。

4)可編程邏輯芯片
ZYNQ-7000    2011年3月Xilinx宣布推出業(yè)界第一個可擴展處理平臺Zynq-7000系列。Zynq-7000 系列將業(yè)界標準的ARM 雙核Cortex-A9 MPCore 處理系統(tǒng)與賽靈思可擴展的28nm 可編程邏輯架構(gòu)完美整合在一起,可支持雙核Cortex-A9 處理器系統(tǒng)以及可編程邏輯中定制加速器和外設(shè)的并行開發(fā)。這種以處理器為核心的架構(gòu)不但能夠?qū)崿F(xiàn)FPGA 的高度靈活性和可擴展性,同時還能帶來類似于ASIC 的高性能和低功耗,以及ASSP的易用性。
Zynq-7000系列標志著Xilinx進入了嵌入式處理器市場,不同于一般的FPGA,其可編程邏輯是與ARM處理系統(tǒng)通過“互連”模塊連接在一起,這樣可以提供用戶自定義的任意邏輯功能,從而擴展處理系統(tǒng)的性能及功能。處理系統(tǒng)不僅能在開機時啟動,而且還可根據(jù)需要配置可編程邏輯。軟件開發(fā)人員可充分利用 Eclipse 環(huán)境、Xilinx Platform Studio 軟件開發(fā)套件 (SDK)、ARM Development Studio 5 (DS-5™) 和ARM RealView 開發(fā)套件 (RVDS™),或 ARM互聯(lián)社區(qū)和賽靈思聯(lián)盟計劃生態(tài)系統(tǒng)的領(lǐng)先廠商提供的編譯器、調(diào)試器和應(yīng)用。利用Xilinx ISE 設(shè)計套件所提供的綜合而全面的硬件開發(fā)環(huán)境,Zynq-7000 系列的可編程邏輯可以通過定制最大化系統(tǒng)級性能和滿足特定應(yīng)用的各種需求。

PSoC     Cypress的PSoC系列混合信號陣列是可編程嵌入式片上系統(tǒng),其集成了微控制器、存儲器以及可編程配置的模擬和數(shù)字模塊。采用一個微控制器,一個PSoC器件最多可集成100種外設(shè)功能,采用Cypress的免費開發(fā)工具使設(shè)計人員能夠自由選擇所需的外設(shè)功能模塊,包括放大器、ADC、DAC、濾波器及比較器等模擬功能以及定時器、計數(shù)器、PWM、SPI和UART等數(shù)字功能。
Cypress提供了一套可視化的集成開發(fā)環(huán)境,甚至無需任何匯編語言和C語言編程知識也能開發(fā),PSoC的所有功能都可以通過拖放圖標來實現(xiàn)。最早的PSoC1系列集成了M8C微處理器,之后推出了基于8051微處理器的PSoC3系列,2009年更進一步推出了ARM Cortex M3微處理器的PSoC5系列,同時提供了更多的模擬和數(shù)字模塊。

5)Arduino
近年來在全世界極客中最流行的開源硬件項目無疑就是Arduino。從2005來誕生于意大利開始,Arduino吸引了無數(shù)的追隨者,大量以它為基礎(chǔ)的項目和社區(qū)蓬勃發(fā)展。Arduino的需求快速增長,全球的出貨量超過了30萬套,還不包括大量兼容產(chǎn)品。

Arduino是基于AVR ATmega系列 8位單片機的GPIO控制板,經(jīng)過幾年發(fā)展已經(jīng)推出了USB、Ethernet和Bluetooth等各種接口的版本以及大量擴展功能板。2011年11月30號,Arduino工作組正式發(fā)布了Arduino的軟件集成開發(fā)環(huán)境Arduino1.0。同時Arduino也邁進了32位微處理器,發(fā)布了基于Atmel的ARM Cortex M3核的SAM3U微處理器的新版Arduino Due。在2011年Google I/O 大會上,Google宣布在Android 3.1版本中新增一個特性,稱為Android Open Accessory,并宣稱采用Arduino作為Android Open Accessory的標準,“Arduino & Android, Infinite Possibilities”。
Arduino的開放設(shè)計使得眾多愛好者開發(fā)出了各種不同特點的兼容版本,極大豐富了使用者選擇余地,以下介紹幾種強大的兼容平臺:
Maple——為了更好的處理性能,MIT的一個小組開發(fā)了Maple項目。Maple的處理器核心是32位ARM Cortex M3核的STM32F103微處理器,同樣友好的開發(fā)環(huán)境和與Arduino兼容的設(shè)計使得能夠非常容易過渡。Maple最大特點是使用了微處理器內(nèi)置的USB口進行編程以及模擬串口,這更精簡了硬件的設(shè)計。Maple小組推出了多個不同版本以適應(yīng)不同應(yīng)用,其還計劃推出微處理器+Spartan3E FPGA的開發(fā)平臺 ,性能和應(yīng)用范圍將更加廣泛。
chipKIT—— Digilent公司最新推出的開源硬件平臺包括標準的chipKIT Uno32和大量IO口的chipKIT Max32。chipKIT是基于32位PIC32MX微處理器,同樣友好的軟件集成開發(fā)環(huán)境,運算速度和系統(tǒng)資源都大大增加。chipKIT的尺寸與Arduino完全相同,接口也完全兼容,因此熟悉Arduino的開發(fā)者可以無縫過渡到chipKIT。同時chipKIT也完全兼容Microchip的微處理器開發(fā)工具MPLAB® IDE和PICKit3 在線編程調(diào)試工具,這樣熟悉PIC微處理器開發(fā)環(huán)境的設(shè)計者也能更容易進行設(shè)計。
Pinguino——與Arduino幾乎同時開始的開源硬件項目,因為在某些地區(qū)可能難買到AVR微處理器。Pinduino也是與Arduino完全兼容,只是更加靈活,采用了PIC8位或32位微處理器。其USB接口也是由微處理器內(nèi)置的USB控制器完成。
Netduino——也是一個與Arduino兼容開源的平臺,采用了32位的ARM7核微處理器。Netduino的開發(fā)環(huán)境是采用了.net Micro Framework,對于熟悉高級語言編程的開發(fā)者來說非常適合。
6)3D打印機
漂亮新奇的3D打印機正顯示開源硬件運動影響越來越廣泛,MEKE雜志在2009年度開源硬件項目報告中列舉19個類別中共有超過129個開源硬件項目,比2008年的60個項目高出一倍。開源硬件也能生產(chǎn)令人驚奇的產(chǎn)品。
Egg-Bot   是一個開源的機器它能在球形或者蛋形的物體上畫畫,比如乒乓球、燈泡甚至雞蛋,大小大約直徑3-10cm。Egg-bot是為了在那些看起來不可能的球形物體上打印圖案。組裝Egg-not非常簡單,只需要十字和一字螺絲起子,完全不用焊接,當(dāng)然還需要一臺USB接口的控制計算機。
MakerBot   是一個開源的桌面3D打印機。MakerBot的使用非常簡單,通過USB接口連接上計算機后,當(dāng)你想打印時不用再去調(diào)整XYZ軸,機器會自動回位,加熱然后開始打印。更方便的是MakerBot能夠自動的連續(xù)打印。
5.開源硬件的挑戰(zhàn)
開放源碼硬件從誕生到現(xiàn)在將近十多年了,很多人為它的發(fā)展付出了大量的努力,但是并沒有像開放源碼軟件那樣深入人心,很多項目也以失敗告終。究其原因,開源硬件面臨挑戰(zhàn)主要有:
1)免費的EDA工具     盡管有Alliance 和gEDA 等EDA工具可供使用,但它的功能和易用性和商業(yè)EDA軟件相比還是不能相提并論。現(xiàn)代電子設(shè)計中越來越依靠EDA工具,如果能有更加強大的開源EDA工具,對硬件設(shè)計會產(chǎn)生重要的影響。
2)許可證   目前開源硬件的授權(quán)條款大部分是承接開源軟件的GPL,如opencores采用了LGPL。但是因為硬件與軟件不同,開源軟件的授權(quán)有版權(quán)法律保護,而硬件產(chǎn)品只有專利法律才能保護。目前出現(xiàn)了多個新的許可證目的是為了解決具體的硬件設(shè)計問題。
3)成本    盡管開源硬件可能不包括研發(fā)成本,但是硬件本身的生產(chǎn)成本與規(guī)模是緊密相關(guān)的。你永遠不可能得到免費的硬件,所以可負擔(dān)的成本應(yīng)該是可以接受的。通過選擇FPGA平臺或者便宜充足的芯片也能大幅降低成本。
4)質(zhì)量    開源硬件的一個優(yōu)點就是設(shè)計公開后,會被更多的人驗證和測試,但是這需要一個龐大的社區(qū)和支持者。目前開源硬件社區(qū)還不夠大,開發(fā)者還不夠多,就像opencores這樣的社區(qū)影響也還有限。但是隨著開源硬件的推廣會吸引越來越多開發(fā)者,如同開源軟件Linux一樣開發(fā)出高質(zhì)量的硬件也是完全可能的。
5)產(chǎn)品    電子產(chǎn)品種類繁多、更新?lián)Q代非常快,開源硬件從設(shè)計到實施會有許多困難。但是開源硬件的優(yōu)勢是項目是由需求推動的,而不是由公司的市場部門決定,因此設(shè)計受歡迎的開源硬件產(chǎn)品還是可能的。
6)廠商支持   開源軟件Linux的發(fā)展離不開大公司的支持一樣,開源硬件也需要大公司的支持。由于開源硬件的發(fā)展,越來越多的公司也開始關(guān)注。芯片廠商是最樂于推進開源硬件的發(fā)展,這會提高它們產(chǎn)品的市場占有率。
7)商業(yè)模式   如果開源硬件的開發(fā)者不能獲利,那么開源硬件也很難持續(xù)下去。開源軟件能產(chǎn)生RedHat那樣成功的大公司,而開源硬件的商業(yè)模式目前都是在試驗階段。不過Arduino項目的成功對于中小企業(yè)還是很有借鑒意義,開源硬件也是能夠成功的。
6.開源硬件的展望
盡管目前開源硬件還面臨各種各樣的困難,但是隨著技術(shù)的進步以及無數(shù)愛好者的努力,相信開源硬件一定會一直發(fā)展下去,畢竟開源是大勢所趨。
首先,開源硬件運動本身就具有非常重大的意義,無數(shù)的愛好者聚集在一起學(xué)習(xí)交流。知識的傳播光是這一點就決定了開源硬件一定會生生不息。
其次,摩爾定律不會永遠持續(xù)下去,半導(dǎo)體工藝的發(fā)展已經(jīng)已經(jīng)快接近極限。人們不會再被電子產(chǎn)品牽引疲于更換手中的硬件,這時產(chǎn)品的生命周期以及可維修性就變得重要起來。而開源硬件正是在這方面有著無可比擬的優(yōu)越性。
再次,F(xiàn)PGA的集成度、功耗和速度等各方面在不斷進步,越來越接近ASIC定制產(chǎn)品。越來越多的設(shè)計可以集成到FPGA開發(fā)平臺,這在某種程度上會促進更多的IP核的開放,也能更一步降低硬件的開發(fā)成本。也許將來能“下載硬件”到我們手中的產(chǎn)品而實現(xiàn)不同的功能。
最后,無線技術(shù)、嵌入式系統(tǒng)以及物聯(lián)網(wǎng)的興起,電子產(chǎn)品會走向模塊化和功能化。當(dāng)人們手中的產(chǎn)品都能夠無線聯(lián)網(wǎng),也許此時人們不會再那么輕易地丟棄它,會有越來越多的人對硬件產(chǎn)生興趣。開源硬件也許能夠大顯身手。
總之,加快知識的傳播,借助協(xié)作加速創(chuàng)新,開源硬件一定會和開源軟件一樣流行,也許開源硬件的春天才剛剛來臨。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規(guī)則

小黑屋|手機版|Archiver|機械社區(qū) ( 京ICP備10217105號-1,京ICP證050210號,浙公網(wǎng)安備33038202004372號 )

GMT+8, 2024-11-8 22:51 , Processed in 0.056457 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表