<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>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 自由IP Core資源的利用

自由IP Core資源的利用

作者:■鄭州大學(xué)信息工程學(xué)院 周明珠 王福源 時(shí)間:2005-04-07 來(lái)源:電子設計應用2005年第2期 收藏

摘    要:本文介紹了與免費 運作有關(guān)的問(wèn)題以及免費資源的若干來(lái)源,然后通過(guò)對兩個(gè)不同來(lái)源的、免費的八位RISC 進(jìn)行比較和分析,給出了若干選用免費核時(shí)應考慮的問(wèn)題。
關(guān)鍵詞: ;

本文引用地址:http://dyxdggzs.com/article/4893.htm

引言
隨著(zhù)集成電路單位面積晶體管數量的激增和人們對縮短設計周期的追求,設計重用已經(jīng)成為有效的應對方法,它不但適合于A(yíng)SIC,也適合于CPLD/FPGA。在CPLD/FPGA的設計過(guò)程中,由于開(kāi)發(fā)工具的通用性、設計語(yǔ)言的標準化,設計過(guò)程幾乎與所用器件的硬件結構無(wú)關(guān),設計成功的邏輯功能塊也具有很好的兼容性和可移植性,從而使得產(chǎn)品設計效率大幅度提高。這些具有可再利用功能的邏輯功能模塊都可以成為 ,因此IP Core可以是算法核、加密核、微處理器等。TI公司認為,一個(gè)ASIC設計80%的功能可用IP Core等現成邏輯合成,未來(lái)大系統的CPLD/FPGA設計將僅僅是各類(lèi)再應用邏輯與IP Core的拼裝。

自由IP Core
為何免費
目前有許多商業(yè)公司出售IP Core ,但價(jià)格昂貴,原因之一是高昂的開(kāi)發(fā)費用。據測算,在IP Core的整個(gè)過(guò)程中,編寫(xiě)源代碼所花費的成本只占總成本的10%,而調試和修正則占50%,市場(chǎng)銷(xiāo)售和支持占到40%。如果將整個(gè)成本分攤到多個(gè)主體,那么對于單個(gè)主體而言成本就大大降低了,這就是設計開(kāi)放共享的IP Core的初衷。由組織開(kāi)放IP的機構將自愿參加者的設計開(kāi)放,使用者可以找到設計的錯誤,或加入新的內容對原設計加以完善,使IP Core趨于成熟。同時(shí)CPLD/FPGA的生產(chǎn)商公布芯片的編程技術(shù)或者提供免費的EDA設計工具,從而使開(kāi)放式硬件的設計者可以將該公司的芯片應用于新設計的系統,由此達到“多贏(yíng)”的目標。
充分意義上的硬件開(kāi)放必須達到三個(gè)條件:首先,硬件的接口必須清楚地公布出來(lái),這樣才能由他人自由的使用;其次,硬件設計本身必須公布于眾,這樣他人才能將其在不同的應用中加以實(shí)現或糾錯;最后,應盡量采用免費的設計工具,以便于其他使用者對設計進(jìn)行改進(jìn)。
知識產(chǎn)權歸屬和法律問(wèn)題
免費IP Core常用的認證有GPL、LGPL等。這兩種認證原來(lái)是用于自由軟件的,現已推廣到對自由 IP Core的認證。大多數的軟件認證都不允許對軟件共享與修改,而GPL認證則旨在保證共享與修改軟件的自由,確保軟件對于所有的用戶(hù)都是共享的。GPL認證為了確保用戶(hù)有傳播自由軟件副本、根據自己的需要進(jìn)行修改的自由,規定在傳播軟件的副本時(shí),必須給予接受者同樣的權利。必須確定他們收到或者可以得到源代碼,并且知道這些條款,即自己的權利。
LGPL認證應用于某些特別指定的軟件包——共享庫。這一許可允許將這些庫連入某些非共享程序中。在法律上,當程序中連入某個(gè)庫,不論是靜態(tài)的還是使用共享的庫,這兩者的結合都是原始庫的派生,因此,只有整個(gè)結合物符合共享的標準,GPL認證才允許這種鏈接。但LGPL認證則以更寬松的準則允許其它代碼和庫的連接,因此在與非共享軟件的競爭中,與GPL認證相比,LGPL為共享軟件開(kāi)發(fā)者提供的利益少一些。正是由于這一原因,許多庫使用GPL認證,然而,在某些特殊情況下LGPL認證是有利的。例如:在特殊的情況下,可能需要鼓勵某種庫的廣泛使用,以使其成為事實(shí)上的標準。為了達到這一目的,就會(huì )使用LGPL認證,允許非共享程序使用這種庫。從另一個(gè)方面來(lái)看,允許非共享程序使用某種庫將可以促使大量使用共享軟件。例如,GNU C庫允許在非共享的軟件中使用促使了更多人使用GNU操作系統,以及它的派生GNU/Linux操作系統。

免費IP Core的部分來(lái)源
許多非盈利的組織提供免費IP Core,有些CPLD/FPGA的芯片廠(chǎng)商也提供這類(lèi)共享資源,而芯片廠(chǎng)商提供較多的是針對他們所生產(chǎn)的具體芯片的共享設計。下面介紹兩個(gè)免費IP Core的非盈利機構。
OpenIPCore工程
該機構旨在推動(dòng)開(kāi)放式硬件的發(fā)展,其業(yè)務(wù)既包括提供開(kāi)放核的平臺,也對開(kāi)放硬件核的權益進(jìn)行認證,定義設計的方法以及設計接口的標準化。該機構收集經(jīng)其授權的設計以及免費的開(kāi)發(fā)工具例如gEDA、Savant等,供設計者自由選用。另外為已有的設計如編譯器、驅動(dòng)器、外部電路提供工具、設計和文檔的支持。
OpenIPCore工程的基本條款包括:電路核是可以更改的,但必須修改文檔記錄;不能靠出售核本身來(lái)贏(yíng)利,但是可以出售用核實(shí)現的設備,例如基于某些免費核的集成電路、基于某些電路圖或版圖的電路板,甚至可以是文本模式驅動(dòng)的圖形界面;任何更新都應該備案,并反饋給原設計者;對核的更新、修改或加以完善等成果都應該是共享的;將原封不動(dòng)的共享核與其他模塊結合產(chǎn)生更大的設計,可以在OpenIPCore認證下共享,也可以受其他認證的保護;該網(wǎng)站不保證在實(shí)際硬件實(shí)現中核的功能和性能。該工程采用OHGPL認證,對基本原創(chuàng )性工作和導出性工作做了明確的定義。該機構不排斥發(fā)布人采用其他認證,但要求有明確的聲明。
Free-IP 工程
該機構的目標在于利用傳統工具發(fā)展自由的或成本較低的IP core。由Free-IP 工程提供的IP Core權益不歸公共所有而歸發(fā)布人所有。使用Free-IP核必須遵循以下幾點(diǎn):核的使用是自由的,但是必須遵循所注明的費用項中的信息;不可以出售核,但可以收取復制的費用,也可以對自己添加的有價(jià)值的部分收取費用;允許對核修改,但是Free-IP工程不對所做的修改加以認證;對于核的使用沒(méi)有任何限制,可用于軍用、商用、教育等領(lǐng)域。
八位RISC
的比較和分析
核的使用者最關(guān)心的是其可靠性。想對所有免費核做出可靠性評價(jià)是不可能的,本文通過(guò)對兩個(gè)8位(指數據總線(xiàn)的寬度,指令碼為12位)RISC核的對比和分析,給出了在使用免費核時(shí)可靠性方面的大體概念。
RISC5X是一個(gè)用VHDL編寫(xiě)的、與Microchip公司的PIC16C5系列兼容的CPU核,該系列CPU除了程序分支指令外,全部是單周期指令,所以RISC5X在40MHz單一時(shí)鐘下基本可以達到40MIPS的處理速度。 如采用Xilinx 公司的Virtex-E系列FPGA,該核占用110CLB單元,在E-6上速度可達33MHz,在E-8上可達40MHz。該核提供了VHDL源代碼和16進(jìn)制代碼,并且提供了一些不錯的免費工具,包括編譯器、仿真器和匯編工具(gusim、guasm等)。該核所提供的每一個(gè)宏都采用兩種結構體寫(xiě)成,一種只適用于Virtex系列目標芯片,另一種是用VHDL的RTL級描述,用戶(hù)必須根據需要在源程序中作出相應選擇。但是存在的缺點(diǎn)是用于定義總線(xiàn)寬度的宏,在第二次使用時(shí),有些綜合器并不按要求重復產(chǎn)生第二個(gè)硬件模塊。一個(gè)解決方法是將該宏轉換為EDIF格式,每次用到時(shí)使用與其對應的EDIF文件名。另一個(gè)不足是該核對于雙周期指令未做處理,需要用戶(hù)自己對程序計數器做一定修改。
RISC8是與RISC5X很類(lèi)似的免費核,與Microchip公司的PIC16C57兼容。該核在A(yíng)SIC和FPGA層面上都是可綜合的,并且已經(jīng)被使用過(guò)。該核提供了CPU、指令譯碼器、寄存器、累加器、RAM等基本部件,此外還提供了基本的測試向量。在該核的程序包里還可以找到“basic”和“DDS”兩個(gè)匯編程序,basic用來(lái)檢測RISC8的指令,DDS則是利用該核的一個(gè)應用程序。此外還提供了關(guān)于16C57的第三方資源。但是與16C57相比,兩者是有明顯差別的。表1列出了兩者在功能方面的比較。與其他免費核一樣,該核也有明顯的不足之處,如狀態(tài)字STATUS中的DC位功能沒(méi)有完成,以及TRIS不能影響I/O口等。
相比之下,RISC8應該比較成熟,但是由于不能直接使用I/O口,對于有此需要的用戶(hù)來(lái)說(shuō),顯然尚有很多要做的補充工作。RISC5X的工作相對比較齊全,僅在測試方面稍嫌不足。雖然雙周期指令不能直接使用,但是可以用別的指令替代。
從以上比較可以看出,免費核總是有缺陷的,但是工程師可以根據自己的需要找到較為合適的核和使用方法。一般說(shuō),一個(gè)核往往是由多個(gè)模塊組成的,有經(jīng)驗的工程師完全可以自行“拼接”比較成熟的模塊,成為自己的核。本文的建議如下:
* 在決定選用某個(gè)核之前先仔細閱讀有關(guān)該核的評論(一般可以在核所在的網(wǎng)頁(yè)上找到),選用那些所存在的缺陷并不影響個(gè)人應用的核。例如有些未完成的部分你恰好是不用的;
* 如有多個(gè)版本,則宜選用高版本核。高版本都會(huì )對核的BUG進(jìn)行修改,優(yōu)化后的核通常會(huì )有更高的可靠性,例如工作頻率的提高等,可以適應更高性能的芯片。
* 如果使用FPGA實(shí)現,應盡量采用與發(fā)布人一樣系列的目標芯片。隨核發(fā)布的說(shuō)明文件中通常會(huì )指出該核使用何種語(yǔ)言、用何種軟件環(huán)境調試、曾經(jīng)綜合下載到何種芯片以及硬件調試設備等,在使用時(shí),最好選用同樣的芯片和調試環(huán)境,而且最好選擇同時(shí)發(fā)布測試向量的核,這樣測試起來(lái)比較方便。
* 選擇時(shí)要考慮核使用何種總線(xiàn)標準。如果把不同的IP Core組成一個(gè)系統,則需要這些IP Core具有標準的接口。通常情況下,要盡量避免使用三態(tài)總線(xiàn),因為三態(tài)總線(xiàn)技術(shù)依靠電路延時(shí)來(lái)避免時(shí)序沖突問(wèn)題,這種對工藝的依賴(lài)性,不利于IP Core的復用。免費IP Core通常使用Wishbone總線(xiàn)標準,由于其開(kāi)放性,擁有了不少的用戶(hù)。它的特點(diǎn)是同時(shí)支持高字節在后(BIG ENDIAN)和低字節在后(LITTLE ENDIAN)的字節編址方式;支持多個(gè)主單元;支持點(diǎn)對點(diǎn)、數據流、共享總線(xiàn)以及交叉開(kāi)關(guān)等連接方式。尤其是其交叉方式使得多個(gè)主單元可以同時(shí)進(jìn)行數據交換,大大提高了數據吞吐率。

結語(yǔ)
免費IP Core這一豐富的共享資源的有效利用將會(huì )帶來(lái)巨大的價(jià)值,開(kāi)放式硬件的商業(yè)應用也是有可能實(shí)現的?;陂_(kāi)放式硬件設計的商業(yè)模式可以從設計的支持、實(shí)現、應用等方面進(jìn)行,只要仔細研究開(kāi)放機構的宗旨和規定,使用者就可以發(fā)現很多商業(yè)應用的渠道?!?/p>

參考文獻
1 潘松,黃繼業(yè). EDA技術(shù)實(shí)用教程. 科學(xué)出版社. 2002



關(guān)鍵詞: CPU IP Core

評論


相關(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>