<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

開(kāi)放源碼硬件簡(jiǎn)史

——
作者: 時(shí)間:2007-10-18 來(lái)源:嵌入式在線(xiàn)博客 收藏
1.1 開(kāi)放硬件史前時(shí)代 

早在60,70 年代,電子愛(ài)好者就開(kāi)始互相交流電路設計,PCB版圖, 形成了開(kāi)放硬件的雛形。 在中國, 這個(gè)時(shí)期,出現了很多以業(yè)余無(wú)線(xiàn)電和電子設計為主題的書(shū)刊,雜志。 

集成電路出現后,越來(lái)越多的功能集成在一個(gè)芯片中, 電路越來(lái)越復雜, 設計制造集成電路的門(mén)檻越來(lái)越高, 開(kāi)放和共享集成電路設計變得越來(lái)越困難。 

ISA(指令集構架)的出現, 使得電子行業(yè)出現了軟件和硬件大分工, 硬件廠(chǎng)商大規模生產(chǎn)具有ISA的芯片(如微處理器),以取得芯片生產(chǎn)的規模效應, 軟件廠(chǎng)商進(jìn)行軟件開(kāi)發(fā),以適應不同應用之間個(gè)性化的需要。 

標準的ISA, 比如X86指令集,加上標準的硬件構架, 比如PC,   使得軟件開(kāi)發(fā)人員可以在同一平臺上互相交流軟件設計, 這導致了90年代開(kāi)放軟件的蓬勃發(fā)展。  

芯片設計,在80年代90年代, 隨著(zhù)EDA技術(shù)的日臻完善,硬件設計越來(lái)越自動(dòng)化,以HDL語(yǔ)言為核心的芯片設計越來(lái)越像軟件設計。 

90年代末, 隨著(zhù)互聯(lián)網(wǎng)以及開(kāi)放源碼軟件的盛行, 很自然地, 人們就想到,可以利用開(kāi)放源碼軟件的理念進(jìn)行硬件設計, 尤其是芯片設計。 

由于芯片設計的復雜性, 一次設計一個(gè)完整的系統難度是相當大的, 因此, 開(kāi)放源碼硬件社區通常采用的自底而上的方法進(jìn)行,也就是,先設計小的功能模塊,(稱(chēng)為芯核,core, 或者IP),  每個(gè)功能模塊都工作正常了,再搭建大的系統, 比如片上系統(SOC).   

1.2 開(kāi)放源碼硬件的產(chǎn)生
 
1998年,Delft University of Technology 的一些學(xué)生和老師在互連網(wǎng)上發(fā)起Open Design Circuits Group, 目的是開(kāi)放電路設計并把它發(fā)布在網(wǎng)上,盡管這個(gè)小組的活動(dòng)逐漸稀少, 但它啟發(fā)了后來(lái)最著(zhù)名的兩個(gè)開(kāi)放源碼硬件網(wǎng)站的產(chǎn)生:Opencores 和 OpenIPcore.  越來(lái)越多的學(xué)校學(xué)生選擇把他們的設計公布到網(wǎng)上,并把許多功能集成到一起,以期完成很復雜的功能。 在2000年的時(shí)候,OpenIPcore 合并入Opencores. 

Jamil Khatib是Opencores的中的教父級的人物,1975年出生的他,寫(xiě)了非常多的奠基性的文檔,探討開(kāi)放源碼硬件的定義以及商業(yè)模式,參與了最早的F-CPU,gEDA等項目的開(kāi)發(fā),  2006年他在Brandenburg University大學(xué)念研究生。作為阿拉伯人,他的還專(zhuān)門(mén)撰文探討了開(kāi)放源碼硬件如何對阿拉伯世界的技術(shù)轉移產(chǎn)生影響?!∷踔吝€建議在互聯(lián)網(wǎng)上除了http之外,還需要添加Hardware Computing Resource Protocol ,比如說(shuō) ``hcrp://'',專(zhuān)門(mén)用來(lái)進(jìn)行硬件資源下載.

隨著(zhù)芯片設計越來(lái)越大,芯片設計越來(lái)越向SOC方向邁進(jìn),也就是在一個(gè)芯片中集成很多現有的IP核,以達到快速設計出系統的目的。這時(shí),IP核的可重用性和可更改性就成了最關(guān)鍵的問(wèn)題。而開(kāi)放源碼的IP核的無(wú)疑在這方面具有先天優(yōu)勢。因此,很多商業(yè)公司也逐漸加入了開(kāi)放源碼硬件的行列,例如,SUN公司,IBM公司。商業(yè)公司進(jìn)行開(kāi)放源碼往往是有附加條件的,比如,對于學(xué)術(shù)界免費,但是如果商業(yè)應用,仍需要收費?!?

1.3 開(kāi)放源碼硬件現狀

目前,開(kāi)放源碼的硬件中比較著(zhù)名的項目有:F-CPU是第一個(gè)在互連網(wǎng)上設計的處理器, OpenCores中的OpenRISC項目,試圖開(kāi)發(fā)一個(gè)完全免費的RISC構架的處理器以及之上的SOC,    歐洲航天局(ESA)開(kāi)發(fā)的Sparc兼容的Leon2處理器?!?

與開(kāi)放源碼軟件的完全免費不同, 開(kāi)放源碼硬件最終要物理實(shí)現才能驗證其設計是否達到預期目的。 可編程邏輯器件(PLD), 特別是現場(chǎng)可編程門(mén)陣列(FPGA), 以其快速靈活,初期投入成本低廉, 成為開(kāi)放源碼硬件最適合的開(kāi)發(fā)平臺。因此,Opencores的設計主要都是在FPGA上進(jìn)行。

為了讓開(kāi)放源碼社區的項目易于共同開(kāi)發(fā)和溝通,通常會(huì )提供統一的開(kāi)發(fā)板使用,例如,Opencores 社區廣泛使用的Micro FPGABoard和OCRP-1 board這兩款開(kāi)發(fā)板,就是統一采用Xilinx公司的Vertix系列FPGA設計的。大名鼎鼎的OpenRisc1000 就是在這塊板上開(kāi)發(fā)設計的?!?

近年來(lái),很多開(kāi)放源碼的處理器及總線(xiàn)基本開(kāi)發(fā)完成,下一步就是在上面運行操作系統,編寫(xiě)各種設備驅動(dòng)程序, 并配上豐富的應用軟件。目前,Leon2 和Openrisc 1200 均可以成功運行Linux系統,為開(kāi)放源碼硬件和開(kāi)放源碼軟件的社區融合打下了基礎?!?

1.4 中國開(kāi)放源碼硬件發(fā)展狀況

中國有案可查的開(kāi)放源碼硬件項目是2001年3月啟動(dòng)的OpenARM項目, OpenARM并不像他的名字所隱含的那樣ARM處理器的設計相關(guān)。實(shí)際上,這個(gè)項目只是利用了現成的ARM 芯片,外面加上一塊MEMEC 公司2002年3月(現已被Avenet收購)捐贈的Xilinx FPGA作為外圍擴展的模塊。  FPGA的引入? 使得該設計可以很容易地用HDL 代碼的形式進(jìn)行管理和跟蹤。該項目后期還充分引入了OpenCores社區已有的成果,如Wishbone總線(xiàn)?!?

有趣的是,開(kāi)放源碼軟件庫sourceforge中也有一個(gè)OpenARM, 這個(gè)項目的ARM指的是”Application Response Measurement” , 而不是我們所說(shuō)的ARM 處理器。

在“中國芯“盛行的幾年里,不少學(xué)校和研究單位參考開(kāi)放源碼的處理器設計了自己的微處理器,這個(gè)時(shí)期,中國利用開(kāi)放源碼硬件的資源進(jìn)行IC設計的方法開(kāi)始悄然流行。

1.5 開(kāi)放源碼硬件展望

擺在開(kāi)放源碼硬件支持者面前的一個(gè)頗有趣的問(wèn)題是,”如果你要自己做一頓免費的晚餐,那么是否你做飯用米必須是自己種的,做飯用的 鍋碗瓢盆也必須是免費獲得的 ?”.   

一部分開(kāi)放源碼的信仰者堅持認為上述問(wèn)題的答案是肯定的。因此,有一些人堅持開(kāi)發(fā)了例如gEDA 的開(kāi)放源碼EDA工具?!×硪徊糠秩藙t認為, 開(kāi)放源碼硬件也可以利用商業(yè)工具和商業(yè)原材料, 只要在此基礎上做的系統設計開(kāi)放出來(lái)就可以了。 

在利用商業(yè)工具進(jìn)行開(kāi)放源碼的設計方面, Xilinx 公司走在了業(yè)界前列, 例如,Xilinx公司開(kāi)發(fā)的8位軟處理器Picoblaze 是一種開(kāi)放源碼的8微處理器,而Xilinx公司的32位軟處理器Micoblaze是在Xilinx公司EDK軟件下支持的處理器,Xilinx公司給出了非常多的可供下載的參考設計,頗具參考價(jià)值。 再加上對uclinux的官方支持,可以在Xilinx提供的EDK工具的基礎上,利用Xilinx的參考設計并加以改進(jìn), 迅速搭建嵌入式系統, 并在uclinux的基礎上完成應用軟件設計.  

在Xilinx 率先宣布65nm 的FPGA量產(chǎn)時(shí), 廣大開(kāi)放源碼硬件愛(ài)好者面臨的是可以容納數千萬(wàn)門(mén)的可編程邏輯。 傳統的自底而上的設計很難快速地構建如此大的系統。 電子系統級設計(ESL) 可以用高層次語(yǔ)言來(lái)描述系統需求,并自動(dòng)生成硬件設計。例如,Xilinx的XtremeDSP方案, 可以在Matlab中,用Simulink這種圖形化的方式搭建復雜的數字信號處理系統(例如3G/B3G數字前端), 

在開(kāi)放源碼硬件世界, 也出現了諸如利用SystemC等高層次語(yǔ)言描述的系統(例如SystemCDES).  可以預計,隨著(zhù)開(kāi)放源碼硬件進(jìn)一步普及和成熟,軟件,硬件,系統設計,算法設計等會(huì )在開(kāi)放源碼的旗幟下日趨融合,  數年之后,可下載的硬件設計 (Downloadable Hardware)可以出現在每個(gè)人的掌上。 

1.6 開(kāi)放源碼硬件遇到的挑戰

開(kāi)放源碼硬件從誕生到現在將近10年了,很多人為它的發(fā)展付出了大量的努力, 但至今采用開(kāi)放源碼硬件運用在實(shí)際應用系統中的案例幾乎沒(méi)有。究其原因,開(kāi)放源碼硬件面臨的問(wèn)題和挑戰主要有:

1)免費EDA工具的獲取?!?

盡管有Alliance 和 gEDA 等EDA工具可供使用,但它的功能和易用性和商業(yè)EDA軟件相比還是不能相提并論?!τ凇胺峭昝乐髁x”的開(kāi)放源碼硬件設計者來(lái)說(shuō),適當采用商業(yè)軟件是一個(gè)可以考慮的方案?!≡谏虡I(yè)軟件中,由于FPGA廠(chǎng)商的軟件工具(比如XILINX的ISE, EDK,CHIPSCOPE,SYSTEM GENERATOR等)可以通過(guò)大學(xué)計劃獲得捐贈,使得利用強大商業(yè)軟件的支持進(jìn)行開(kāi)放源碼硬件設計變得可能?!?

2)板卡制造成本

自己制作一塊FPGA原型系統板的成本是相當可觀(guān)的, 

3)上市時(shí)間

在電子產(chǎn)品數月就換代的時(shí)代,上市時(shí)間是電子系統設計的一個(gè)關(guān)鍵因素,即使是采用商業(yè)IP,  都有可能遇到意想不到的整合問(wèn)題;而 目前開(kāi)放源碼硬件在文檔完備性,穩定性上,技術(shù)支持方面存在的諸多問(wèn)題,更是使務(wù)實(shí)的設計者望而確步。

4)軟件豐富性和工具鏈問(wèn)題

如果采用開(kāi)放源碼的處理器,這就意味著(zhù)從指令集到編譯器到調試器都是重新開(kāi)發(fā)的,幾乎所有的軟件都需要移植和重新編譯,這使得開(kāi)放源碼的處理器的開(kāi)發(fā)尤其困難。如果設計實(shí)際系統,人們更關(guān)心的是如何能解決問(wèn)題?!∩虡I(yè)處理器更能滿(mǎn)足這種需要。

5)廠(chǎng)商支持

 Linux得以蓬勃發(fā)展,除了廣大愛(ài)好者的奉獻之外,IBM 等大公司的積極推動(dòng)也起了非常大的作用。 而開(kāi)放源碼硬件的發(fā)展,也離不開(kāi)相關(guān)硬件廠(chǎng)商的支持?!?

正是由于這些挑戰的存在,開(kāi)放源碼硬件的活動(dòng)目前更多的集中在大學(xué)和研究機構中,尤其在不發(fā)達國家中,更多得起著(zhù)硬件設計知識傳播的作用。


關(guān)鍵詞: 源碼

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>