在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

MPU進化,多核異構處理器有多強?A核與M核通信過程解析

飛凌嵌入式 ? 2022-11-21 14:42 ? 次閱讀

隨著市場對嵌入式設備功能需求的提高,市面上出現了集成嵌入式處理器和單片機的主控方案,以兼顧性能和效率。

在實際應用中,嵌入式處理器和單片機之間需要進行大量且頻繁的數據交換,如果采用低速串行接口,則數據傳輸效率低,這將嚴重影響產品的性能;而如果采用高速并口,則占用管腳多,硬件成本將會增加。

為解決這一痛點,各大芯片公司陸續推出了兼具A核和M核的多核異構處理器,如NXP的i.MX8系列、瑞薩的RZ/G2L系列以及TI的AM62x系列等等。雖然這些處理器的品牌及性能有所不同,但多核通信原理基本一致,都是基于寄存器和中斷傳遞消息,基于共享內存傳輸數據

以配電終端產品為例,A核負責通訊和顯示等人機交互任務,M核負責采樣和保護等對實時性要求較高的任務,雙核間交互模擬量、開關量和錄波文件等多種信息,A核+M核的方案既滿足了傳統采樣保護功能,又支持多種接口通信及新增容器等功能,符合國家電網現行配電標準。

71f7f882-67ab-11ed-b116-dac502259ad0.png通信過程整體架構說明

接下來小編將以NXP的i.MX8MP為例,借助飛凌OKMX8MP-C開發板分別從硬件層、驅動層、應用層介紹大致的通信實現流程以及實測效果

1. 硬件層通信實現機制

通過物理內存DDR分配,將硬件層分為了兩部分:TXVring Buffer(發送虛擬環狀緩沖區)RXVring Buffer(接收虛擬環狀緩沖區);其中M核從TXVring區發送數據,從RXVring區讀取接收數據,A核反之。

處理器支持消息傳遞單元(MessagingUnit,簡稱MU)功能模塊,通過MU傳遞消息進行通信和協調,芯片內的M7控制核和A53處理核通過通過寄存器中斷的方式傳遞命令,最多支持4組MU雙向傳遞消息,既可通過中斷告知對方數據傳遞的狀態,也可發送最多4字節數據,還可在低功耗模式下喚醒對方,是保證雙核通信實時性的重要手段。

721d00d2-67ab-11ed-b116-dac502259ad0.png寄存器輸入輸出通信模型

(1)CoreA寫入數據;

(2)MU將Tx 空位清0,Rx滿位置1;

(3)產生接收中斷請求,通知CoreB接收狀態寄存器中的接收器滿,可以讀取數據;

(4)CoreB響應中斷,讀取數據;

(5)CoreB讀完數據后,MU將Rx滿位清0,Tx空位置1;

(6)狀態寄存器向CoreA生成發送中斷請求,告知CoreB讀完數據,發送寄存器空。

通過以上步驟,就完成了1次從CoreA向CoreB 傳遞消息的過程,反之亦然。

2. 驅動層Virtio下RPMsg通信實現

Virtio是通用的IO虛擬化模型,位于設備之上的抽象層負責前后端之間的通知機制和控制流程,為異構多核間數據通信提供了層的實現

RPMsg消息框架是Linux系統基于Virtio緩存隊列實現的主處理核和協處理核間進行消息通信的框架,當客戶端驅動需要發送消息時,RPMsg會把消息封裝成Virtio緩存并添加到緩存隊列中以完成消息的發送,當消息總線接收到協處理器送到的消息時也會合理地派送給客戶驅動程序進行處理。

在驅動層,對A核,Linux采用RPMsg框架+Virtio驅動模型,將RPMsg封裝為了tty文件供應用層調用;在M核,將Virtio移植,并使用簡化版的RPMsg,因為涉及到互斥鎖和信號量,最終使用FreeRTOS完成過程的封裝,流程框圖如下方所示。

723afcc2-67ab-11ed-b116-dac502259ad0.png主處理核與協處理核數據傳遞流程圖

(1)Core0向Core1發送數據,通過rpmsg_send函數將數據打包至Virtioavail鏈表區;

(2)在avail鏈表尋找共享內存中空閑緩存,將數據置于共享內存中;

(3)通過中斷通知Core1數據到來,共享內存由avail鏈表區變至used區;

(4)Core1收到中斷,觸發rpmsg的接收回調函數,從used區獲取數據所在的共享內存的物理地址,完成數據接收;

(5)通過中斷通知Core0數據接收完成,共享內存緩存由used區變為avail區,供下次傳輸使用。

3. 應用層雙核通信實現方式

在應用層,對A核可使用openwriteread函數對 /dev下設備文件進行調用;對M核,可使用rpmsg_lite_remote_initrpmsg_lite_sendrpmsg_queue_recv函數進行調用,不做重點闡述。

4. 實際使用效果

通過程序實測,M核和A核可以批量傳輸大數據。同樣以配電產品為例——128點采樣的錄波文件大約為43K,若通過傳統的串行總線傳輸方式,需要數秒才可完成傳輸

使用i.MX8MP的雙核異構通信方案,只需要不到0.5秒即可傳輸完成,數據傳輸效率提升數十倍!同時還避免了串行總線易受EMC干擾的問題,提高了數據傳輸穩定性,簡化了應用編程,可滿足用戶快速開發的需求。

以上就是多核異構處理器中A核與M核通信過程的解析,想要了解具體詳細程序實例,可到【飛凌嵌入式官方微信公眾號】回復關鍵詞“程序實例”查看

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

    關注

    68

    文章

    19740

    瀏覽量

    232823
收藏 人收藏

    評論

    相關推薦

    熱成像儀為何都在瘋狂卷多核處理器?“多核大戰”背后的真相你知道嗎?

    ”遠遠不夠, “看得清”“不卡頓”“多任務并行”成了剛需。 于是,一場關于“多核處理器”的行業競賽悄然拉開帷幕。 多核,不只是手機的事,熱成像儀也在“追” 過去我們常常聽說手機從雙
    的頭像 發表于 04-27 15:41 ?114次閱讀

    適用于單核、雙和四應用處理器的PMIC DA9063L-A數據手冊

    DA9063L-A 是一款功能強大的系統電源管理集成電路(PMIC),適用于單核、雙和四應用處理器,例如那些基于 ARM? Cortex?-A
    的頭像 發表于 04-01 18:19 ?284次閱讀
    適用于單核、雙<b class='flag-5'>核</b>和四<b class='flag-5'>核</b>應用<b class='flag-5'>處理器</b>的PMIC DA9063L-<b class='flag-5'>A</b>數據手冊

    AI MPU# 瑞薩RZ/V2H 四視覺 ,采用 DRP-AI3 加速和高性能實時處理器

    RZ/V2H 高端 AI MPU 采用瑞薩電子專有的AI 加速-動態可重配置處理器 (DRP-AI3)、四 Arm^?^ Cortex ^?^ -
    的頭像 發表于 03-15 11:50 ?1165次閱讀
    AI <b class='flag-5'>MPU</b># 瑞薩RZ/V2H 四<b class='flag-5'>核</b>視覺 ,采用 DRP-AI3 加速<b class='flag-5'>器</b>和高性能實時<b class='flag-5'>處理器</b>

    RK3562J 處理器 M 啟動實操

      一、RK3562J處理器概述   RK3562J處理器是一款高性能、多核心的處理器,采用了獨特的異構架構設計。它集成了4個Cortex-
    發表于 02-27 08:59

    RK3399處理器:高性能多核異構計算平臺

    RK3399是一款高性能的多核異構計算平臺,集成了強大的CPU、GPU以及豐富的多媒體和接口功能。其獨特的雙Cortex-A72+四Cortex-A53大小
    的頭像 發表于 02-08 18:04 ?1069次閱讀

    基于IMX8MM處理器Cortex-A和Cortex-M的RPMsg通信方案

    RPMsg全稱為 remote processor messages,是一種基于virtio的消息傳遞總線,專為異構處理器系統之間的通信設計。
    的頭像 發表于 12-06 10:07 ?2412次閱讀
    基于IMX8MM<b class='flag-5'>處理器</b>Cortex-<b class='flag-5'>A</b><b class='flag-5'>核</b>和Cortex-<b class='flag-5'>M</b><b class='flag-5'>核</b>的RPMsg<b class='flag-5'>通信</b>方案

    全志T113雙異構處理器的使用基于Tina Linux5.0——異構通信驗證

    6、雙通信驗證 6.1、C906小創建通訊節點 在C906小串口終端建立兩個通訊節點用于監聽數據,輸入eptdev_bind test 2 cpu0 >eptdev_bin
    發表于 11-20 09:47

    基于全志T113-i多核異構處理器的全國產嵌入式核心板簡介

    嵌入式核心板。ECK30系列核心板可廣泛應用于工業控制、HMI、IoT等領域。 全志公司的T113-i處理器是由雙ARM Cortex-A7、RISC-V和HiFi4 DSP三種異構
    的頭像 發表于 10-25 13:40 ?862次閱讀

    MicroBlaze V軟處理器的功能特性

    本指南提供了有關 AMD Vivado Design Suite 中包含的 32 位和 64 位 MicroBlaze V 軟處理器的信息。該文檔旨在用作為處理器硬件架構的指南,隨附《RISC-V 指令集手冊》第一卷和第二卷。
    的頭像 發表于 10-16 09:17 ?880次閱讀
    MicroBlaze V軟<b class='flag-5'>核</b><b class='flag-5'>處理器</b>的功能特性

    【米爾NXP i.MX 93開發板試用評測】1、異構核心通信的技術內容

    多核系統通常包含具有不同性能和功能的不同類型處理器核心,例如,一個系統可能同時包含高性能的ARM Cortex-A核心和低功耗的ARM Cortex-M核心。 NXP的RPMsg-Li
    發表于 09-21 20:24

    基于國產異構(RISC-V+FPGA)處理器,AG32開發板開發資料

    基于國產異構(RISC-V+FPGA)處理器,AG32VF407系列32位微控制相當于主頻248MHZMCU+2KLES(FPGA)。內部通過AHB總線,把MCU和FPGA鏈接在
    發表于 09-02 17:13

    淺談國產異構RISC-V+FPGA處理器AG32VF407的優勢和應用場景

    關于國產異構RISC-V+FPGA處理器AG32VF407的具體優勢和應用場景淺談如下: 優勢 異構計算能力 : 異構
    發表于 08-31 08:32

    復旦微PS+PL異構多核開發案例分享,基于FMQL20SM國產處理器平臺

    FMQL20S400M是復旦微四ARM Cortex-A7@1GHz(PS端)+85K可編程邏輯資源(PL端)異構多核SoC
    發表于 08-22 14:04

    君正X2600在3D打印機上的優勢:多核異構,遠程控制與實時控制

    在當前的3D打印機領域,君正的X2600芯片以其獨特的優勢引起了業界的廣泛關注。這款多核異構芯片,擁有兩個大和一個小的RISC-V處理器,不僅能夠
    的頭像 發表于 08-02 16:56 ?707次閱讀

    瑞薩電子RZ/V2H MPU提升機器人與自主應用中的AI性能和實時控制

    除了這個AI加速之外,高端RZ/V2H微處理器MPU)——還配備了使用動態可配置處理器(DRP)的圖像處理加速
    發表于 07-15 17:51 ?975次閱讀
    瑞薩電子RZ/V2H <b class='flag-5'>MPU</b>提升機器人與自主應用中的AI性能和實時控制
    主站蜘蛛池模板: 久久澳门 | 新天堂 | 免费看欧美一级片 | 加勒比综合网 | 亚洲成a人伦理 | 色88888久久久久久影院 | 成年人网站免费观看 | 99日精品欧美国产 | 色综合天天综合网亚洲影院 | 最近2018中文字幕免费看2019 | 国产午夜精品久久久久免费视 | 色狠狠一区二区 | 亚洲一区二区精品推荐 | 四虎影院永久免费 | 亚洲精品色一区色二区色三区 | 99色综合| 色香欲亚洲天天综合网 | 完整日本特级毛片 | 黄在线观看在线播放720p | www.夜夜操.com| 色噜噜狠狠狠狠色综合久一 | 免费色视频在线观看 | 永久在线观看视频 | 日本激情网 | 久久国产精品无码网站 | 日本一视频一区视频二区 | 男人天堂网在线播放 | 亚洲成人免费网站 | 男人操女人视频在线观看 | 天天舔天天射天天操 | 初恋视频黄色 | 免费国产小视频 | 午夜免费网址 | 日本拍拍拍 | 天堂网www在线 | 婷婷综合五月天 | 国产美女流出白浆在线观看 | 91日本在线观看亚洲精品 | 国产亚洲综合精品一区二区三区 | 视频免费在线观看 | 羞羞色男人的天堂伊人久久 |