<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è) > 汽車(chē)電子 > 設計應用 > MicroBlaze微處理器在實(shí)時(shí)汽車(chē)系統中的應用

MicroBlaze微處理器在實(shí)時(shí)汽車(chē)系統中的應用

作者: 時(shí)間:2010-10-21 來(lái)源:網(wǎng)絡(luò ) 收藏

  簡(jiǎn)便的調試

  調試有多個(gè)并行執行線(xiàn)程的系統往往難度較大。不過(guò)把系統劃分給多個(gè)處理器就可以使事情變得簡(jiǎn)單。我們不需要多線(xiàn)程調試器(比如在Linux環(huán)境中調試多個(gè)處理器時(shí)所需要的)。賽靈思調試器 (XMD) 可以連接到多個(gè)處理器上,而且通過(guò)使用TCL(XMD能理解的工具命令行語(yǔ)言),我們可以自動(dòng)完成設置,并將待測的代碼下載到多個(gè)處理器上。當然,也可以使用采用 printf 聲明的常規嵌入式系統調試方法,因為每個(gè)處理器都有自己的串行端口。

  在調試處理器間通信時(shí)具有重大價(jià)值的另一種工具是 ChipScope? Pro。該嵌入式邏輯分析器內建在 FPGA 結構中,讓我們可以捕獲通過(guò)FSL 鏈路的數據,把隱藏較深的缺陷的漏洞排查到發(fā)送方或者接收方,然后進(jìn)行代碼的逐行排查。

  使用四個(gè)處理器實(shí)現的隔離的意義在于,當某個(gè)元件被調試過(guò)后,基本上不需要再調試。這樣可以避免在把不同來(lái)源的代碼集成到大型獨立應用中,或者在單個(gè)處理器上運行多個(gè)進(jìn)程時(shí),因奇奇怪怪的相互作用而產(chǎn)生的諸多問(wèn)題。

  FPGA 實(shí)現

  這個(gè)項目基本不涉及 HDL,只用高級封裝程序把基于 EDK 的設計與一小段看門(mén)狗代碼整合在一起,確保系統在駕駛人員熄火后關(guān)閉。 EDK生成了FPGA的主體部分(MHS 文件長(cháng)度超過(guò)1,300 行!),而系統生成器負責生成視頻降采樣器。我們對四個(gè)微控制器都配置使用了高速緩存和浮點(diǎn)單元。在使用四個(gè)處理器、四個(gè) DDR 存儲接口以及一系列外設(包括以太網(wǎng)、SPI、IIC、CAN、UART、定時(shí)器和 GPIO)之后,器件約七成的查找表都被占用了(大約2.8萬(wàn)個(gè)查找表)。與基于微控制器的 FPGA 的通常情況一樣,塊存儲器的使用率非常高,超過(guò)了 90%,或者119 個(gè)BRAM,但 DSP 模塊使用率相對較低:只有每個(gè)處理器的浮點(diǎn)單元需要它們(每個(gè)處理器 8 個(gè),總計 32 個(gè))。

  整合主從內部閃存引導 Linux 內核,然后加載內部文件系統。每個(gè)從處理器都有基于FSL的引導載入程序,可以接受標準的 S-record文件,對其進(jìn)行解析并將其拷貝到本地存儲中,然后執行。Linux 處理器把 S-record文件從文件系統中直接發(fā)送到 FSL 偽文件(使用內置的 dd 實(shí)用程序)。如上文所述,所有的處理器間通信都通過(guò)完全連接的 FSL 鏈路網(wǎng)格完成。FSL 鏈路網(wǎng)格的帶寬為 32 位,運行頻率為60MHz,能夠提供大量的低時(shí)延通信帶寬。雖然避免使用共享存儲可能會(huì )帶來(lái)限制,但這樣做可以實(shí)現上文已經(jīng)探討過(guò)的隔離所帶來(lái)的優(yōu)勢。硬件架構與應用要求的劃分吻合良好,實(shí)現了直觀(guān)的軟件分區。

  有需要時(shí),Foot-LITE 算法會(huì )向 JPEG 壓縮器發(fā)出觸發(fā)信號,同時(shí)與智能電話(huà)顯示器通信。Linux 處理器在藍牙通信和系統其余部件之間充當媒介作用(如圖3 所示)。除了向駕駛人員發(fā)出即時(shí)信號,它將有關(guān)車(chē)輛狀態(tài)的連續信息流以及偶發(fā)的視頻流通過(guò)智能電話(huà)上傳到中央服務(wù)器。

  在旅途結束,駕駛人員熄火時(shí),主處理器會(huì )通知從處理器,隨即從處理器啟動(dòng)各自的關(guān)閉流程(比如將更新的參數寫(xiě)入非易失調節存儲器),然后告知主處理器它們已經(jīng)可以安全地關(guān)閉了。此時(shí),主處理器向電源發(fā)出信號,然后系統進(jìn)入極低功耗睡眠模式,等待下一次發(fā)動(dòng)。如果在熄火后兩分鐘軟件還沒(méi)有發(fā)出關(guān)閉信號(不過(guò)這種情況一般不太可能發(fā)生),FPGA 結構中的硬件定時(shí)器會(huì )切斷電源,避免耗盡車(chē)輛的電池。

  在項目收尾階段,來(lái)自由紐卡斯爾大學(xué)和南安普頓大學(xué)兩名學(xué)術(shù)界人士將分析在實(shí)際高速公路行駛狀態(tài)下車(chē)輛輸出數據,以評估該系統引導駕駛人員行為的效能。

  FPGA 的優(yōu)勢

  FPGA 提供了高度的靈活性,與固定硬件平臺相比,能夠更輕松地滿(mǎn)足日新月異的項目需求。另一大優(yōu)勢是,FPGA 能夠集成到定制化硬件中,滿(mǎn)足密集型應用(比如視頻)需求。在使用 Linux 的情況下,可以方便地對諸如以太網(wǎng)這樣的外設進(jìn)行高級訪(fǎng)問(wèn),同時(shí)不會(huì )影響實(shí)時(shí)性能,這樣就可以把這些關(guān)鍵性的工作交給它們各自的來(lái)處理。最終,如果是由一個(gè)大型的、位于不同地理位置的團隊在開(kāi)發(fā)該軟件,使用與功能劃分相匹配的硬件架構有助于開(kāi)發(fā)和集成工作。


上一頁(yè) 1 2 3 4 下一頁(yè)

評論


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