對比傳統的Xilinx AMP方案和OPENAMP方案-xapp1078和ug1186

來源:互聯網
上載者:User

標籤:system   rpm   調用   ast   linu   生命週期   blog   manage   .com   

xapp1078建立於2013年2月。文章描述了啟動運行兩個核心的方法,兩個cpu核心分別運行linux和bare-metal。已經過去四年,所以稱其為傳統的AMP方案。

該方案的關鍵過程:

(1)修改FSBL源碼,使其能夠load多個elf和bit檔案,直到遇到標誌Load地址後停止load,返回運行u-boot。

(2)通過設定檔image.bif將core0的u-boot.elf和core1的bare-metal.elf檔案還有用於load停止的dummy bin檔案都包含進來,然後運行bootgen產生BOOT.BIN。

(3)雙核啟動後,core1處於wfe狀態。core0首先向將bare-metal.elf的運行地址寫到WFE loop的檢測地址,然後sev或者中斷喚醒core1,之後core1跳轉運行bare-metal.elf。core0從檔案系統中啟動linux app,與core1進行通訊。

ug1186建立於2017年5月,文章介紹了在zynq上使用OpenAMP架構實現AMP的方法,兩個cpu核心分別運行linux和bare-metal。稱其為OpenAMP方案。master linux CPU核心通過remoteproc API來控制管理remote核心的生命週期(life cycle management LCM),為remote processor分配系統資源和建立virtIO裝置。通過RPMsg API來實現不同cpu核心上啟動並執行軟體之間的通訊。

該方案的關鍵過程:

(1)基於remoteproc和RPMsg來設計bare-metal.elf程式。

(2)bare-metal.elf加入到petalinux工程中,後續remoteproc在linux的filesystem中調用bare-metal.elf。

(3)配置Kernel相應的options來配合OpenAMP工作。

對比傳統的Xilinx AMP方案和OPENAMP方案-xapp1078和ug1186

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.