色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

SoC核間通信的實現機制之mailbox中斷

jf_EksNQtU6 ? 來源: TrustZone ? 2023-09-05 17:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

正文

目前很多芯片都會有幾個core核,有的是Cortex M0+、M4、M7、A53、A73等等,有的有著2核、3核、4核甚至6核8核,不同的核的主頻支持度不一樣,適用的具體應用場景也不同,因此需要IPC(Inter-processor communication)來核間通信,進行數據的交互。

核間通信(IPC)的主要目標是:充分利用硬件提供的機制,實現高效的CORE間通信;給需要CORE間通信的應用程序提供簡潔高效的編程接口

根據所使用的硬件特性,核間通信的實現機制有:

? ·Mailbox中斷

? ·基于共享內存的消息隊列

cdba5968-382e-11ee-9e74-dac502259ad0.png

在這里插入圖片描述

cdd23a88-382e-11ee-9e74-dac502259ad0.png

在這里插入圖片描述

cdefc864-382e-11ee-9e74-dac502259ad0.png

在這里插入圖片描述

封裝-VRING-解析的過程:

1、應用程序向給定目的地(CPU、端點)發送消息

2、消息首先從應用程序復制到兩個CPU之間使用的VRING。此后,IPC 驅動程序在硬件郵箱中發布 VRING ID。

3、這會觸發目標 CPU 上的中斷。在目標 CPU 的 ISR 中,它提取 VRING ID,然后根據 VRING ID 檢查該 VRING 中的所有消息。

4、如果收到消息,它從VRING中提取消息并將其放入目標RPMSG端點隊列中。然后觸發在此 RPMSG 端點上阻止的應用程序。

5、應用程序處理接收到的消息,并使用相同的RPMSG 和VRING 機制在相反方向回復發送方CPU。

Hardware Mailbox

硬件郵箱主要用于提供具有小的 32 位有效負載的中斷事件通知。

VRING 使用硬件郵箱在目標 CPU 上觸發中斷。每個郵箱包含 16 個單向 HW 隊列,最多可連接 4 個通信用戶或 CPU。

J721E SoC 有 12 個硬件郵箱實例。即 12x 16 個硬件郵箱隊列。

cdfa71e2-382e-11ee-9e74-dac502259ad0.png

(硬件郵箱的邏輯框圖)

Mailbox and VRING

郵箱本質上充當一個非常小的硬件隊列,其中包含 VRING ID。

VRING 是共享內存中的 SW 隊列,保存兩個 CPU 之間傳遞的實際消息。當收到中斷時,郵箱消息會告知從哪個 VRING 出列消息。

VRING ID=0 tells to look at the VRING from sender to receiver

VRING ID=1 tells to look at the VRING from receiver to sender

ce1358e2-382e-11ee-9e74-dac502259ad0.png

在這里插入圖片描述

散文

mailbox其實是多核處理器soc上,核與核之間互相發中斷的機制,由于核與核之間可能存在不同的業務,故硬件上設計分配一兩個中斷已經無法滿足業務的需求,軟件拓展起來很困難,所以mailbox可以理解為軟件可自由定義的中斷模塊。

用于在片上處理器之間通信的一種mailbox隊列中斷機制,mailbox隊列中斷機制允許軟件通過一組寄存器和關聯的中斷設置和得到信息在二個處理之間建立通信渠道。

核間通信的主要目標是:充分利用硬件提供的機制,實現高效的CORE間通信;給需要CORE間通信的應用程序提供簡潔高效的編程接口。

根據所使用的硬件特性,核間通信可能的實現機制有:

1. Mailbox中斷;

2. 基于共享內存的消息隊列;

3. POW + Group;

4. FAU;支持原子的讀,寫,fetch and add操作。

每個core有一個相應的32bit的mailbox寄存器,每一位可被單獨地設置或清零。這對于core間的中斷非常有用,任意core可直接通過其它core 的mailbox對其它core發出中斷。當mailbox被置位時,相應core的中斷寄存器也同時被置位,軟件可實現其中斷處理。

Bootloader支持Octeon_phy_mem_named_block_alloc( ),分配以名字命名的物理內存空間,不管是Service Executive應用程序還是linux kernel都可以通過Octeon_phy_mem_named_block_find( )找到這部分內存,實現core之間的共享數據。

Linux kernel也提供了共享內存的機制。主要有mmap(),系統V,Posix共享內存模型等。系統調用mmap()通過映射一個普通文件實現共享內存。普通文件被映射到進程地址空間后,進程可以向訪問普通內存一樣對文件進行訪問。系統V共享內存指的是把所有共享數據放在共享內存區域(IPC shared memory region),任何想要訪問該數據的進程都必須在本進程的地址空間新增一塊內存區域,用來映射存放共享數據的物理內存頁面。posix共享內存區首先指定一個名字參數調用shm_open,以創建一個新的共享內存區對象或打開一個以存在的共享內存區對象。然后調用mmap把這個共享內存區映射到調用進程的地址空間。傳遞給shm_open的名字參數隨后由希望共享該內存區的任何其他進程使用。

核間通信方案

如下圖所示ARM核和DSP核進行mailbox通信,ARM要發送數據給DSP:

? 1 ARM核先往某個指定的共享內存空間buffer寫入數據,然后MAILBOX觸發中斷和寫入關于共享內存空間的地址信息給DSP。

? 2 DSP通過得到mailbox中斷的信息讀取共享內存空間ARM核發送的buffer數據。

? 3 DSP核讀取完數據后將觸發mailbox中斷給ARM作為回應,告訴ARM核你發送的數據我已經接受完成了。a

ce2ebab0-382e-11ee-9e74-dac502259ad0.png

在這里插入圖片描述

審核編輯:湯梓紅

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

    關注

    459

    文章

    52397

    瀏覽量

    439225
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11067

    瀏覽量

    216652
  • 中斷
    +關注

    關注

    5

    文章

    905

    瀏覽量

    42678
  • Cortex
    +關注

    關注

    2

    文章

    203

    瀏覽量

    47277
  • IPC
    IPC
    +關注

    關注

    3

    文章

    365

    瀏覽量

    53059

原文標題:參考資料:

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    SoC通信機制mailbox介紹

    目前很多芯片都會有幾個core,有的是Cortex M0+、M4、M7、A53、A73等等,有的有著2、3、4甚至68
    發表于 08-11 10:51 ?7524次閱讀
    <b class='flag-5'>SoC</b>的<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b><b class='flag-5'>機制</b>—<b class='flag-5'>mailbox</b>介紹

    lpc54114雙通信--中斷

    ,純屬巧合。。。。雙mailbox通信,采用互斥鎖機制共享變量,同一時刻只能有一個核心訪問這個變量,不用擔心變量被篡改了。還是在昨天研究的hello_world的基礎上更改,先上圖,
    發表于 04-19 13:58

    lpc54114雙通信--互斥

    本帖最后由 lee_st 于 2018-4-20 07:36 編輯 前個帖子實現中斷通信,本帖主要實現中斷情況下的互斥
    發表于 04-19 16:29

    關于AM5728通信方式(共享內存)問題

    您好,我使用的開發板為AM5728,目前要在兩個ARM-Cotex-A15和兩個DSP上都應用OS,初步定為都運行SYS/BIOS,在這種情況下我們想實現實時、快速、可靠的通信
    發表于 05-15 07:34

    關于C6678IPC通信的問題

    測試C6678的通信,使用的IPC中斷的方式。中間看到在文檔中關于每個IPC生成寄存器中包含了28個源ID,源ID的作用取決于軟件的定義,是不是可以理解為我如果寫其中的源SRCS2
    發表于 08-03 07:15

    基于IPSoC接口技術

    是基于的免費開放的接口協議,可以根據不同IP通信要求進行配置和擴展,能夠實現硬件集成真正的即插即用,允許系統集成根據應用需要選擇最好的IP
    發表于 06-11 05:00

    RT-thread內核進程通信設計實現

    1、RT-thread內核進程通信特性及使用場合介紹  rt-thread操作系統的IPC(Inter-ProcessCommunication,進程同步與
    發表于 09-01 15:13

    通信(IPC)解決方案

    (Inter-processor Communication)機制通信的主要目標是,充分利用硬件提供的機制
    發表于 11-03 07:26

    基于raspi 3b上的SMP設計實現

    實現多核調度功能:對于未綁定CPU的新線程開始執行或者未綁定CPU的線程從某個調度出來時,會調用IPI接口通知其它進行調度:該功能主要利用了MAILBOX
    發表于 12-05 13:56

    一種基于Mailbox機制的多核處理系統

    基于FPGA的嵌入式應用在近幾年來作為一個比較新穎的課題,本文在研究各種通信機制的基礎上,提出了一種基于Mailbox
    發表于 11-22 17:31 ?1.3w次閱讀

    Jacinto7 TDA4VM處理器的通信解決方案

    (Inter-processor Communication)機制通信的主要目標是,充分利用硬件提供的機制
    的頭像 發表于 07-01 12:04 ?9276次閱讀
    Jacinto7 TDA4VM處理器的<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b>解決方案

    Jacinto 7通信解決方案

    (Inter-processor Communication)機制通信的主要目標是,充分利用硬件提供的機制
    的頭像 發表于 03-16 09:19 ?1539次閱讀
    Jacinto 7<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b>解決方案

    通信(IPC)的目標和實現機制

    的應用程序提供簡潔高效的編程接口。 根據所使用的硬件特性,通信實現機制有: ? ·Mailbox
    的頭像 發表于 09-13 17:32 ?4893次閱讀
    <b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b>(IPC)的目標和<b class='flag-5'>實現</b><b class='flag-5'>機制</b>

    SoC通信機制硬件郵箱

    連接 4 個通信用戶或 CPU。 J721E SoC 有 12 個硬件郵箱實例。即 12x 16 個硬件郵箱隊列。 (硬件郵箱的邏輯框圖) Mailbox and VRING 郵箱本質上充當一個非常
    的頭像 發表于 09-13 17:35 ?1609次閱讀
    <b class='flag-5'>SoC</b>的<b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b><b class='flag-5'>機制</b>硬件郵箱

    通信可能的實現機制

    理解為軟件可自由定義的中斷模塊。 用于在片上處理器之間通信的一種mailbox隊列中斷機制mailbo
    的頭像 發表于 09-13 17:39 ?1602次閱讀
    <b class='flag-5'>核</b><b class='flag-5'>間</b><b class='flag-5'>通信</b>可能的<b class='flag-5'>實現</b><b class='flag-5'>機制</b>
    主站蜘蛛池模板: 大胸美女被吊起来解开胸罩 | 久久亚洲人成国产精品 | 在线观看中文字幕国产 | 亚洲精品AV中文字幕在线 | 好湿好紧水多AAAAA片秀人网 | 97视频在线观看视频最新 | 在线观看成人3d动漫入口 | 黑粗硬大欧美在线视频 | 青柠在线观看免费完整版 | 99精品国产第一福利网站 | 啪啪漫画无遮挡全彩h网站 啪啪漫画无遮挡全彩h同人 | 日本xxxxxx片免费播放18 | 中文字幕在线观看网址 | 日本又黄又爽又色又刺激的视频 | 天天国产在线精品亚洲 | 城中村快餐嫖老妇对白 | 好紧好湿太硬了我太爽了小说 | 高清撒尿hdtube撒尿 | 搡女人免费免费视频观看 | 亚洲在线无码免费观看 | 成人在线不卡视频 | 无颜之月5集全免费看无删除 | 热99re久久精品国产首页 | 在线免费看a | 哒哒哒高清视频在线观看 | 精品人妻伦一二三区久久AAA片 | 超碰在线视频 免费 | 国产高清精品自在久久 | 259luxu高跟黑色丝袜系列 | 99久久99久久久99精品齐 | 色琪琪丁香婷婷综合久久 | 久草精品视频 | 色综合久久网女同蕾丝边 | 国产午夜福利100集发布 | 一区不卡二区卡 | 色爱区综合激情五月综合激情 | 高h喷水荡肉爽文总攻 | 国产成人无码精品久久久按摩 | 日日AV夜夜添久久奶无码 | 看全色黄大色大片免费久黄久 | 成人伦理影院 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品