版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第第頁(yè)SoC的核間通信機(jī)制—mailbox介紹
正文
目前很多芯片都會(huì)有幾個(gè)c(or)e核,有的是CortexM0+、M4、M7、A53、A73等等,有的有著2核、3核、4核甚至6核8核,不同的核的主頻支持度不一樣,適用的具體應(yīng)用場(chǎng)景也不同,因此需要IPC(Inter-processorcommun(ic)ation)來(lái)核間(通信),進(jìn)行數(shù)據(jù)的交互。
核間通信(IPC)的主要目標(biāo)是:充分利用(硬件)提供的機(jī)制,實(shí)現(xiàn)高效的CORE間通信;給需要CORE間通信的應(yīng)用程序提供簡(jiǎn)潔高效的(編程)(接口)。
根據(jù)所使用的硬件特性,核間通信的實(shí)現(xiàn)機(jī)制有:
Mailbox中斷基于共享內(nèi)存的消息隊(duì)列
封裝-(VR)ING-解析的過(guò)程:
1、應(yīng)用程序向給定目的地((CPU)、端點(diǎn))發(fā)送消息
2、消息首先從應(yīng)用程序復(fù)制到兩個(gè)CPU之間使用的VRING。此后,IPC驅(qū)動(dòng)程序在硬件郵箱中發(fā)布VRINGID。
3、這會(huì)觸發(fā)目標(biāo)CPU上的中斷。在目標(biāo)CPU的ISR中,它提取VRINGID,然后根據(jù)VRINGID檢查該VRING中的所有消息。
4、如果收到消息,它從VRING中提取消息并將其放入目標(biāo)RPMSG端點(diǎn)隊(duì)列中。然后觸發(fā)在此RPMSG端點(diǎn)上阻止的應(yīng)用程序。
5、應(yīng)用程序處理接收到的消息,并使用相同的RPMSG和VRING機(jī)制在相反方向回復(fù)發(fā)送方CPU。
HardwareMailbox
硬件郵箱主要用于提供具有小的32位有效負(fù)載的中斷事件通知。
VRING使用硬件郵箱在目標(biāo)CPU上觸發(fā)中斷。每個(gè)郵箱包含16個(gè)單向HW隊(duì)列,最多可連接4個(gè)通信用戶或CPU。
J721ESoC有12個(gè)硬件郵箱實(shí)例。即12x16個(gè)硬件郵箱隊(duì)列。
(硬件郵箱的邏輯框圖)
MailboxandVRING
郵箱本質(zhì)上充當(dāng)一個(gè)非常小的硬件隊(duì)列,其中包含VRINGID。
VRING是共享內(nèi)存中的SW隊(duì)列,保存兩個(gè)CPU之間傳遞的實(shí)際消息。當(dāng)收到中斷時(shí),郵箱消息會(huì)告知從哪個(gè)VRING出列消息。
VRINGID=0(te)llstolookattheVRINGfromsendertoreceiverVRINGID=1tellstolookattheVRINGfromreceivertosender
散文
mailbox其實(shí)是多核(處理器)soc上,核與核之間互相發(fā)中斷的機(jī)制,由于核與核之間可能存在不同的業(yè)務(wù),故硬件上設(shè)計(jì)分配一兩個(gè)中斷已經(jīng)無(wú)法滿足業(yè)務(wù)的需求,軟件拓展起來(lái)很困難,所以mailbox可以理解為軟件可自由定義的中斷模塊。
用于在片上處理器之間通信的一種mailbox隊(duì)列中斷機(jī)制,mailbox隊(duì)列中斷機(jī)制允許軟件通過(guò)一組(寄存器)和關(guān)聯(lián)的中斷設(shè)置和得到信息在二個(gè)處理之間建立通信渠道。
核間通信的主要目標(biāo)是:充分利用硬件提供的機(jī)制,實(shí)現(xiàn)高效的CORE間通信;給需要CORE間通信的應(yīng)用程序提供簡(jiǎn)潔高效的編程接口。
根據(jù)所使用的硬件特性,核間通信可能的實(shí)現(xiàn)機(jī)制有:
Mailbox中斷;基于共享內(nèi)存的消息隊(duì)列;POW+Group;FAU;支持原子的讀,寫,fetchand(ad)d操作。每個(gè)core有一個(gè)相應(yīng)的32bit的mailbox寄存器,每一位可被單獨(dú)地設(shè)置或清零。這對(duì)于core間的中斷非常有用,任意core可直接通過(guò)其它c(diǎn)ore的mailbox對(duì)其它c(diǎn)ore發(fā)出中斷。當(dāng)mailbox被置位時(shí),相應(yīng)core的中斷寄存器也同時(shí)被置位,軟件可實(shí)現(xiàn)其中斷處理。
Bootloader支持Octeon_phy_mem_named_block_alloc(),分配以名字命名的物理內(nèi)存空間,不管是ServiceExecu(ti)ve應(yīng)用程序還是(linux)kernel都可以通過(guò)Octeon_phy_mem_named_block_find()找到這部分內(nèi)存,實(shí)現(xiàn)core之間的共享數(shù)據(jù)。
Linuxkernel也提供了共享內(nèi)存的機(jī)制。主要有mmap(),系統(tǒng)V,Posix共享內(nèi)存模型等。系統(tǒng)調(diào)用mmap()通過(guò)映射一個(gè)普通文件實(shí)現(xiàn)共享內(nèi)存。普通文件被映射到進(jìn)程地址空間后,進(jìn)程可以向訪問(wèn)普通內(nèi)存一樣對(duì)文件進(jìn)行訪問(wèn)。系統(tǒng)V共享內(nèi)存指的是把所有共享數(shù)據(jù)放在共享內(nèi)存區(qū)域(IPCsharedmemoryregion),任何想要訪問(wèn)該數(shù)據(jù)的進(jìn)程都必須在本進(jìn)程的地址空間新增一塊內(nèi)存區(qū)域,用來(lái)映射存放共享數(shù)據(jù)的物理內(nèi)存頁(yè)面。posix共享內(nèi)存區(qū)首先指定一個(gè)名字參數(shù)調(diào)用shm_open,以創(chuàng)建一個(gè)新的共享內(nèi)存區(qū)對(duì)象或打開(kāi)一個(gè)以存在的共享內(nèi)存區(qū)對(duì)象。然后調(diào)用mmap把這個(gè)共享內(nèi)存區(qū)映射到調(diào)用進(jìn)程的地址空間。傳遞給shm_open的名字參數(shù)隨后由希望共享該內(nèi)存區(qū)的任何其他進(jìn)程使用。
核間通信方案
如下圖所示(ARM)核和(DSP)核進(jìn)行mailbox通信,ARM要發(fā)送數(shù)據(jù)給DSP:
ARM核先往某個(gè)指定的共享內(nèi)存空間buffer寫入數(shù)據(jù),然后MAILBOX觸發(fā)中斷和寫入關(guān)于共享內(nèi)存空間的地址信息給DSP。DSP通過(guò)得到mailbox中斷的信息讀取共享內(nèi)存空間ARM核發(fā)送的buffer
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年濰坊市檢察機(jī)關(guān)公開(kāi)招聘聘用制書記員9人備考題庫(kù)及參考答案詳解一套
- 2025甘肅蘭州市公安局蘭州新區(qū)分局招聘城鎮(zhèn)公益性崗位人員5人考試核心題庫(kù)及答案解析
- 2025年江西省機(jī)關(guān)事務(wù)管理局公開(kāi)選調(diào)事業(yè)單位工作人員15人備考題庫(kù)及一套答案詳解
- 2025年湛江市公安局霞山分局關(guān)于第三次招聘警務(wù)輔助人員的備考題庫(kù)及答案詳解參考
- 2025江蘇鹽城市機(jī)關(guān)事務(wù)管理局直屬事業(yè)單位選調(diào)工作人員1人考試核心試題及答案解析
- 2025年北京協(xié)和醫(yī)院內(nèi)分泌科于淼課題組合同制科研助理招聘?jìng)淇碱}庫(kù)有答案詳解
- 2026中國(guó)金融出版社有限公司校園招聘4人筆試重點(diǎn)題庫(kù)及答案解析
- 2025年貴陽(yáng)鋁鎂設(shè)計(jì)研究院有限公司公開(kāi)招聘26人備考題庫(kù)參考答案詳解
- 《GBT 19557.5-2017 植物品種特異性、一致性和穩(wěn)定性測(cè)試指南 大白菜》專題研究報(bào)告
- 《CB 1137-1985船用軸向球塞式液壓馬達(dá)》專題研究報(bào)告
- 2022年12月華中科技大學(xué)科學(xué)技術(shù)發(fā)展院基地辦招聘1名社會(huì)用工筆試參考題庫(kù)含答案解析
- WB/T 1119-2022數(shù)字化倉(cāng)庫(kù)評(píng)估規(guī)范
- GB/T 5125-1985有色金屬?zèng)_杯試驗(yàn)方法
- GB/T 4937.3-2012半導(dǎo)體器件機(jī)械和氣候試驗(yàn)方法第3部分:外部目檢
- GB/T 23445-2009聚合物水泥防水涂料
- 我國(guó)尾管懸掛器研制(for cnpc)
- 第3章樁基工程課件
- 美國(guó)COMPASS電磁導(dǎo)航產(chǎn)品介紹課件
- 2萬(wàn)噸年硫酸法鈦白黑段設(shè)計(jì)
- 合理選擇靜脈輸液工具-課件
- 跳繩興趣小組活動(dòng)記錄表
評(píng)論
0/150
提交評(píng)論