chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

基于RV64異構(gòu)多核處理器下如何實現(xiàn)RT-Thread和Linux 同時運行

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來源:RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 作者: RT-Thread ? 2021-10-28 16:19 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

注:這是一個由中國科學院軟件研究所合作資助的開源項目,RT-Thread社區(qū)參與,并推動更新到upstream。這個過程中也得到了張健,董波(無錫控博),李志銳(廈門大學)的支持,這里一并表示感謝。

RISC-V指令集架構(gòu)在這幾年中異軍突起,受到大家廣泛的關注,認可,參與,實踐。越來越多的廠商選擇使用RISC-V,從單獨實驗性芯片的嘗試,到備份芯片,到輔助芯片,到獨立芯片,一步步應用到實際的產(chǎn)業(yè)應用領域。例如最近平頭哥就針對低端到中高端發(fā)布了開源的RISC-V處理器IP core,E902(RV32),E906(帶cache的RV32),C906(單核RV64),C910(多核RV64),同時在上面也支持Linux,RT-Thread等開源操作系統(tǒng)。

與此同時RT-Thread團隊也看到了未來異構(gòu)多核芯片領域會有更多的應用需求,和中國科學院軟件研究所的想法不謀而合,融合RISC-V的異構(gòu)多核系統(tǒng)這個項目就是在這樣的一個背景下產(chǎn)生,所以雙方聯(lián)合來推進,并一起推進到系列開源項目的upstream,讓更多人易于使用,讓產(chǎn)業(yè)界受益。

架構(gòu)說明

本項目以qemu模擬的虛擬硬件:qemu-riscv64-virt為硬件平臺,上面具備Dual RV64 core,分別運行Linux和RTOS(RT-Thread)。對于這類應用,RV64在運行時會涉及到三種運行模式,M-Mode,S-Modem,U-Mode,如下面的架構(gòu)圖。

5cbd9670-37a5-11ec-82a8-dac502259ad0.png

M-Mode模式,機器模式,一般會運行一些簡單的程序;如果芯片只包含機器模式,可以運行一些裸機程序或者RTOS,多見于MCU芯片;

H-Mode模式,是虛擬化運行模式,此種情況下未涉及,后續(xù)不過多提及;

S-Mode, Supervisor Mode模式是管理者模式,用于運行例如Linux內(nèi)核的操作系統(tǒng)內(nèi)核;

U-Mode模式,是用戶模式,運行用戶態(tài)應用程序;而對于RTOS來說,一般不會運行在層。

在這樣的方式下,硬件底層是RV64的雙核,分別運行Linux和RTOS操作系統(tǒng),整體的架構(gòu)如下所示:

5ce14d18-37a5-11ec-82a8-dac502259ad0.png

在這樣的方式下,可以由Linux來完成一些復雜的工作,例如存儲,網(wǎng)絡,顯示等;而RTOS則可以用于實時控制,這里運行RT-Thread開源操作系統(tǒng)。在Linux和RTOS之間,可以通過標準的OpenAMP框架進行通信,異系統(tǒng)間的數(shù)據(jù)交互。

OpenAMP說明

OpenAMP是Xilinx和Mentor Graphic于2014年發(fā)起的一個開源項目,旨在提供一份協(xié)處理器的標準通信框架。OpenAMP是對Ohad Ben-Cohen在2011年Linux 3.4.1引入的RPmsg, RemoteProc的在異構(gòu)處理器上的實現(xiàn),并采用BSD許可協(xié)議開源。

lRemoteProc用于Linux作為master來控制和管理協(xié)處理器,對協(xié)處理器進行power off/on,reset,load firmware等管理操作;

lRPmsg用于多系統(tǒng)間的IPC消息交互。

OpenAMP本身包括幾個部分:

5d45faa6-37a5-11ec-82a8-dac502259ad0.png

llibmetal,主要涉及OpenAMP在不同底層系統(tǒng)上的對接,分成了對Linux,RTOS及裸機的支持。

lopen-amp,提供對virtio,rpmsg,remoteproc等的實現(xiàn);

OpenAMP本身以cmake方式編譯,因為原來只包括arm方式的交叉編譯方式,所以這個項目中加入對risc-v交叉編譯方式的支持。默認WITH_PROXY等相關的特性關閉。

編譯 & 運行

針對這樣一套多操作系統(tǒng)的異構(gòu)系統(tǒng),我們把它命名成pomegranate(石榴,喻意多子,多系統(tǒng)),單獨放在github和gitee上,可以按照倉庫中的方式進行編譯,并使用起來:

https://github.com/RT-Thread/rtthread-pomegranate

假設在Ubuntu 18.04上,來編譯和使用,需要先把pomegranate clone到本地,例如使用github:

git clone --recursive https://github.com/RT-Thread/rtthread-pomegranate

然后運行下面的腳本,先把需要的標準包下載下來,并展開:

。/dn_prepare.sh

這個腳本會自動下載需要用到的代碼,例如Linux,u-boot,qemu等,以及工具鏈(針對Linux的工具鏈,針對RT-Thread的工具鏈等),并對需要打補丁的代碼進行打補丁。

然后編譯只需要執(zhí)行下面的shell腳本:

。/build.sh

執(zhí)行build.sh時,它會分別對涉及到軟件包進行編譯,例如opensbi,u-boot,Linux,open-amp,RT-Thread等,編譯無誤會生成相應的程序文件,及把應用程序復制到Linux的rootfs中。

其中對于一些可以單獨運行的軟件,例如opensbi、u-boot、Linux、RT-Thread等,在各自分別的目錄下有一份run.sh,執(zhí)行即可使用qemu模擬器來模擬運行。

。/run.sh

這份QEMU做了簡單的改造,模擬出來兩份串口分別給Linux和RT-Thread使用。RT-Thread進行簡單的修改,可以讓它運行在S-Mode下,并支持運行在任意核上。OpenAMP上支持RISC-V方式的交叉編譯等。這部分代碼后續(xù)都會推進到各自的upstream端。

未來展望

異構(gòu)多核處理器并不是一個新事物,例如在ARM芯片上已經(jīng)存在大量的Cortex-A核+Cortex-M/R核芯片,并應用于各類領域,如手機基帶處理器,實時工業(yè)控制處理器,車載MPU安全處理器。

在一顆芯片上同時具備ARM核 + RISC-V核的芯片也逐步出現(xiàn),OpenAMP是搭建起異構(gòu)系統(tǒng)間軟通信的一座橋梁,未來可能還不僅限于此,會讓Cortex-A + Cortex-M/R或 RISC-V處理器在使用上更便利,甚至感受不到異構(gòu)的存在,在多系統(tǒng)間融合,甚至程序的無縫遷移。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19896

    瀏覽量

    235279
  • 芯片
    +關注

    關注

    460

    文章

    52520

    瀏覽量

    441020
  • 串口
    +關注

    關注

    15

    文章

    1588

    瀏覽量

    79951

原文標題:RV64 異構(gòu)多核處理器下實現(xiàn)RT-Thread和Linux 同時運行

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread BSP全面支持玄鐵全系列RISC-V 處理器 | 技術(shù)集結(jié)

    RT-ThreadBSP全面支持玄鐵全系列RISC-V處理器。玄鐵系列RISC-V處理器由阿里達摩院研發(fā),涵蓋面向MCU的E系列、面向?qū)崟r應用的R系列以及面向MPU的C系列。以玄鐵QEMU為平臺
    的頭像 發(fā)表于 07-03 18:03 ?1653次閱讀
    <b class='flag-5'>RT-Thread</b> BSP全面支持玄鐵全系列RISC-V <b class='flag-5'>處理器</b> | 技術(shù)集結(jié)

    揭秘RT-Thread上的AUTOSAR CP系統(tǒng)

    標準,同時保留RT-Thread的POSIX支持與可裁剪性,實現(xiàn)了通信隔離、診斷模塊集成等關鍵技術(shù)突破,為車載系統(tǒng)提供高安全、可擴展的解決方案。車載電子系統(tǒng)與傳統(tǒng)
    的頭像 發(fā)表于 06-23 20:22 ?2318次閱讀
    揭秘<b class='flag-5'>RT-Thread</b>上的AUTOSAR CP系統(tǒng)

    人形機器人敏捷開發(fā)新路徑:RT-Thread以軟件底座破解復雜系統(tǒng)難題 | 新聞速遞

    機器人行業(yè)解決方案負責人郭占鑫發(fā)表《從異構(gòu)通信到虛擬化技術(shù):RT-Thread助力機器人敏捷、可持續(xù)開發(fā)》主題演講,系統(tǒng)闡述了RT-Thread操作系統(tǒng)在機器人領
    的頭像 發(fā)表于 06-04 14:03 ?623次閱讀
    人形機器人敏捷開發(fā)新路徑:<b class='flag-5'>RT-Thread</b>以軟件底座破解復雜系統(tǒng)難題 | 新聞速遞

    RT-Thread 上如何實現(xiàn) SLAAC?

    大佬們,本菜鳥有一些網(wǎng)絡上的問題需要幫助: RT-Thread 上如何實現(xiàn) SLAAC(無狀態(tài)地址自動分配),給連接到我的板子的設備分配 IPv6 地址; RT-Thread 如何發(fā)送以太網(wǎng)報文,要求從報文頭開始都是我自己組,
    發(fā)表于 05-27 07:21

    RT-Thread睿賽德攜“程翧整車基礎軟件OS”亮相車展,多核虛擬化跨域驅(qū)動智能汽車發(fā)展

    ,攜RT-Thread“程翧整車基礎軟件OS”首發(fā)亮相,并系統(tǒng)性闡述睿賽德在多核MCU虛擬化技術(shù)領域的突破性成果。RT-Thread睿賽德創(chuàng)始人兼CEO熊譜翔攜整車
    的頭像 發(fā)表于 04-25 20:53 ?752次閱讀
    <b class='flag-5'>RT-Thread</b>睿賽德攜“程翧整車基礎軟件OS”亮相車展,<b class='flag-5'>多核</b>虛擬化跨域驅(qū)動智能汽車發(fā)展

    如何將RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默認支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內(nèi)容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。
    的頭像 發(fā)表于 02-13 10:37 ?1925次閱讀
    如何將<b class='flag-5'>RT-Thread</b>移植到NXP MCUXPressoIDE上

    RT-Thread上CAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文將介紹如何進行RT-ThreadCan移植。接下來我們要完成CAN_FD的驅(qū)動移植,并正常啟動RT-T
    的頭像 發(fā)表于 11-13 01:03 ?2125次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實踐

    混合部署 | 在迅為RK3568上同時部署RT-ThreadLinux系統(tǒng)

    系統(tǒng)和RT-Thread系統(tǒng)已經(jīng)同時運行了,其中CPU0、CPU1、CPU2運行Linux系統(tǒng),CPU3運行
    發(fā)表于 11-01 10:31

    開源共生 商業(yè)共贏 | RT-Thread 2024開發(fā)者大會報名啟動!

    開發(fā)者大會將以“開源共生,商業(yè)共贏”為主題,將于2024年12月21日全天在上海臨港中心舉行。開源RT-Thread如何實現(xiàn)商業(yè)化?這一直是外界對RT-Thread
    的頭像 發(fā)表于 10-29 08:06 ?961次閱讀
    開源共生 商業(yè)共贏 | <b class='flag-5'>RT-Thread</b> 2024開發(fā)者大會報名啟動!

    混合部署 | 在迅為RK3568上同時部署RT-ThreadLinux系統(tǒng)

    RT-Thread系統(tǒng)已經(jīng)同時運行了,其中CPU0、CPU1、CPU2運行Linux系統(tǒng),CPU3運行
    發(fā)表于 09-18 10:54

    混合部署 | 在RK3568上同時部署RT-ThreadLinux系統(tǒng)-迅為電子

    混合部署 | 在RK3568上同時部署RT-ThreadLinux系統(tǒng)-迅為電子
    的頭像 發(fā)表于 09-06 15:32 ?790次閱讀
    混合部署 | 在RK3568上<b class='flag-5'>同時</b>部署<b class='flag-5'>RT-Thread</b>和<b class='flag-5'>Linux</b>系統(tǒng)-迅為電子

    RV6464位地址指令

    的 32 位數(shù)字。RV64 很接近 RV32但實際上又有所不同;它添加了少量指令同時基礎指令做的事情與 RV32 中稍有不同。 盡管 RV64
    發(fā)表于 09-04 15:15

    瑞薩電子全球VP蒞臨RT-Thread指導交流

    近日,瑞薩電子高級副總裁関俊彥(ToshihikoSeki)先生及瑞薩電子嵌入式處理器事業(yè)部市場總監(jiān)沈清女士一行拜訪了上海睿賽德電子科技有限公司。RT-Thread創(chuàng)始人兼首席執(zhí)行官熊譜翔先生及其
    的頭像 發(fā)表于 08-30 13:11 ?878次閱讀
    瑞薩電子全球VP蒞臨<b class='flag-5'>RT-Thread</b>指導交流

    【QEMU系列】不用開發(fā)板運行RT-Thread指南-ARM架構(gòu)

    成為一個門檻。本文將詳細介紹如何在QEMU虛擬機的Vexpress-A9平臺上運行RT-Thread,幫助開發(fā)者在沒有實際硬件開發(fā)板的情況,輕松體驗和學習RT-Th
    的頭像 發(fā)表于 08-09 08:35 ?1611次閱讀
    【QEMU系列】不用開發(fā)板<b class='flag-5'>運行</b><b class='flag-5'>RT-Thread</b>指南-ARM架構(gòu)

    2024 RT-Thread全球巡回 線下培訓火熱來襲!

    親愛的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開發(fā)者線下培訓即將拉開帷幕!24年全球巡回培訓將覆蓋超10座城市及國家,為開發(fā)者提供一個深入學習RT-Thread嵌入式開發(fā)的絕佳機會。
    的頭像 發(fā)表于 08-07 08:35 ?2961次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓火熱來襲!