<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è) > 嵌入式系統 > 設計應用 > 艱巨的工作:軟件/硬件協(xié)同設計

艱巨的工作:軟件/硬件協(xié)同設計

——
作者: 時(shí)間:2005-09-21 來(lái)源:EDN電子設計技術(shù) 收藏

艱巨的工作:軟件/硬件協(xié)同設計

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

工程師們逐漸發(fā)現,他們不得不協(xié)調對一個(gè)產(chǎn)品的軟件和硬件部分同時(shí)進(jìn)行的開(kāi)發(fā)工作。
  要點(diǎn)
  ●  工程師通過(guò)體系結構,而不只是通過(guò)應用代碼來(lái)實(shí)現產(chǎn)品多樣化。
  ●  物理原型法是微處理器時(shí)代初期使用的開(kāi)發(fā)系統和在線(xiàn)仿真器的天然演進(jìn)。
  ●  基于平臺的設計通過(guò)提供已驗證的硬件體系結構來(lái)簡(jiǎn)化 SOC 產(chǎn)品的開(kāi)發(fā)。
  ●  在所有協(xié)同設計方法中,ESL 具有最好的建模靈活性,但同時(shí)也帶來(lái)了復雜性。
---------------------------------------------------------------------------------------------
  在 ASIC 普及應用之前,人們都是先開(kāi)發(fā)和調試執行平臺,然后為它們編寫(xiě)軟件。軟件工程師到硬件健全到接近其發(fā)布的版本時(shí),才完成大多數操作系統的開(kāi)發(fā)工作。工程師開(kāi)發(fā)產(chǎn)品時(shí)使用的是已為大家所接受的固定平臺,從主機到微型計算機和微控制器,不一而足 。應用軟件使產(chǎn)品與眾不同并使之具有市場(chǎng)優(yōu)勢的部件。半導體行業(yè)在制造能力方面取得了進(jìn)步,可以在一塊芯片上為工程師提供幾百萬(wàn)個(gè)晶體管。EDA行業(yè)提供的新工具和改進(jìn)的工具使設計師能夠高效地使用額外的晶體管。
  ASIC 使硬件結構體系定制化,因此也使相關(guān)軟件只適用于某一任務(wù)。設計師創(chuàng )建硬件來(lái)滿(mǎn)足要開(kāi)發(fā)的產(chǎn)品的要求,常常創(chuàng )建新的計算引擎,并幾乎總是設計新的外設控制器來(lái)滿(mǎn)足終端產(chǎn)品的執行速度、功耗和制造成本等目標。新的硬件體系結構需從操作系統到設備驅動(dòng)和總線(xiàn)協(xié)議的多層新軟件。操作系統很少是通用的,而是專(zhuān)用的,公司必須為其推出產(chǎn)品系列中的每一種新產(chǎn)品修改操作系統。乍一看,似乎本來(lái)就應該先開(kāi)發(fā)硬件平臺,然后再編寫(xiě)在其上運行的軟件。用這種方法,軟件工程師可以更方便地調試代碼,因為他們使用的是固定的執行引擎和健全的開(kāi)發(fā)工具。但依次開(kāi)發(fā)硬件和軟件存在兩個(gè)問(wèn)題,其中第一個(gè)問(wèn)題是依次開(kāi)發(fā)周期的長(cháng)度。在許多情況下,采用先開(kāi)發(fā)、調試硬件,然后再開(kāi)發(fā)軟件的方法,開(kāi)發(fā)周期很長(cháng),以至產(chǎn)品失去上市良機。第二個(gè)問(wèn)題是發(fā)生硬件設計錯誤的可能性。如果你在開(kāi)發(fā)軟件時(shí)才檢測到硬件開(kāi)發(fā)中的錯誤,則設計小組必須返回去進(jìn)行修改,這可能要花費掉好幾周甚至幾個(gè)月的寶貴時(shí)間。此外,在整個(gè)設計周期中,錯誤發(fā)現得越晚,修改就越復雜。問(wèn)題的實(shí)質(zhì)是:同時(shí)開(kāi)發(fā)硬件與軟件部分是一個(gè)必要條件,而不是一種奢侈。
  在同時(shí)開(kāi)發(fā)軟件/硬件的過(guò)程中,工程師可以使用許多方法(附文《SOC驗證的方方面面》)。你可以把它們簡(jiǎn)化成三種方法:硬件仿真、基于平臺的設計和 ESL(電子系統級)設計。這些方法仍然以硬件為中心,  盡管有些廠(chǎng)商聲稱(chēng)他們的工具可提供一種評估介于功能的硬件實(shí)現和軟件實(shí)現之間的折衷方案的手段。
  第一種方法在實(shí)際硬件可供使用之前為應用工程師提供一個(gè)軟件模型或硬件模型,供開(kāi)發(fā)軟件代碼時(shí)使用。第二種方法類(lèi)似于建立一個(gè)供編寫(xiě)軟件用的硬件平臺目標的老方法。雖然并不是所有的硬件都有,但大部分都有,而且硬件系統符合已有的標準與協(xié)議,從而為軟件開(kāi)發(fā)人員提供一種結構。第三種方法在最終的體系結構方面具有最大的靈活性,但它也最復雜。它要求設計人員在不同的抽象層次上工作,并了解各種抽象模型的限制以作出正確的假設。
  顧名思義,物理原型法允許工程師使用一個(gè)原型代表目前還沒(méi)有的硬件塊。這一方法沿革久遠,為人所熟知。很多年前,硬件系統是由標準部件組成的,工程師們會(huì )開(kāi)發(fā)一塊試驗電路板,板上有已知的部件和一些用來(lái)模擬目前還沒(méi)有的數字邏輯器件的硬件,以便在整個(gè)系統實(shí)用之前,軟件工程師能對芯核進(jìn)行調試。盡管物理原型法在今天實(shí)施起來(lái)與15年前有所不同,但這種方法沒(méi)有多大變化。仿真產(chǎn)品供應商提供的一種硬件系統包括:與一個(gè)作為主機的計算系統接口所必需的電路;能使工程師配置目標數字電路硬件模型的內部通信邏輯;對一個(gè)或多個(gè)模擬目標邏輯的 FPGA進(jìn)行編程的機制。
  Aptix 公司負責市場(chǎng)與業(yè)務(wù)開(kāi)發(fā)的高級副總裁Charles Miller認為:有了一個(gè)在幾十兆赫下運行的FPGA原型,操作系統引導時(shí)間只有幾分鐘,從而為軟件開(kāi)發(fā)人員提供了一個(gè)有用的工具。原型可以用實(shí)際的顯示、輸入設備和其它外設來(lái)驅動(dòng)目標系統。在最終投片前,一個(gè)軟件工程師可能要對設計運行幾十億個(gè)驗證周期。如果軟件工程師發(fā)現了問(wèn)題,可以立即在 RTL 級進(jìn)行修正,既免去開(kāi)發(fā)軟件變通方案的費用,也不會(huì )犧牲最終產(chǎn)品的性能。更好的是,軟件開(kāi)發(fā)是與硬件開(kāi)發(fā)同時(shí)進(jìn)行的,最終產(chǎn)品可以更快地開(kāi)發(fā)出來(lái)。
  Aptix 公司提供的一整套軟件和硬件產(chǎn)品,能使工程師將復雜設計分配給多個(gè)FPGA,并將它們與現有硬件組合在一起,以完成設計。已被 Verisity公司(www.verisity.com)并購的 Axis 系統公司利用可重配置的計算技術(shù),在其Xcite 和 Xtreme 產(chǎn)品中對硬件進(jìn)行仿真和加速仿真。
  Cadence 公司的 Quickturn 部門(mén)出售 Palladium 系列產(chǎn)品。Palladium 產(chǎn)品是與 Cadence 公司的 Incisive 驗證平臺完全兼容的,具有仿真與加速兩種功能。用戶(hù)們可以在網(wǎng)絡(luò )內共享一個(gè)產(chǎn)品,對同一被仿真硬件進(jìn)行模擬。在仿真模式下,Palladium產(chǎn)品只要內含外設、嵌入式處理器和嵌入式軟件,就可全面支持系統的驗證。EVE(仿真與驗證工程)公司開(kāi)發(fā)了 ZeBu,目的在于減少傳統仿真器的費用,并保持所需的高性能。該產(chǎn)品可以對復雜度達 100 萬(wàn)~1200 萬(wàn)個(gè)門(mén)的 ASIC 設計進(jìn)行仿真。
  Mentor Graphics 公司仿真產(chǎn)品系列中的最新產(chǎn)品 CelaroPro 可以應對業(yè)內最大設計的挑戰。CelaroPro把仿真功能擴大到超出純芯片仿真的范圍,并生成一種強大的軟硬件協(xié)同驗證系統,其先進(jìn)功能包括在 C 語(yǔ)言環(huán)境中的代碼覆蓋、試驗平臺加速、交互設計調試以及仿真等。
  為工程師提供各種可嵌入處理器芯核的公司也經(jīng)常提供仿真系統。ARM 提供的 RealView Baseboard 支持圍繞 ARM 芯核和 Power/VR MBX 內核的 3-D 圖形應用開(kāi)發(fā)。該系統提供一個(gè) AMBA 多層原型環(huán)境,并且既有擴充存儲器,又有一系列外設控制器。它支持供靜態(tài)與動(dòng)態(tài)存儲器用的擴展模塊位置,供外設和第二個(gè)處理器用的 logic-tile 擴展位置,一個(gè) PCI 背板,時(shí)鐘產(chǎn)生與仲裁,以及一系列 LCD 面板。
  Tensilica 提供的低價(jià)位 XT2000 開(kāi)發(fā)工具,使用一個(gè)可編程邏輯器件來(lái)仿真 Xtensa 處理器配置。這種仿真工具包能使開(kāi)發(fā)人員評估多種處理器配置選擇方案,并在設計周期的早期就開(kāi)發(fā)和調試軟件(圖 1)。



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