国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1117|回復(fù): 0
打印 上一主題 下一主題

MPU進(jìn)化,多核異構(gòu)處理器有多強(qiáng)?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-11-21 09:45:58 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式

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

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



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

以配電終端產(chǎn)品為例,A核負(fù)責(zé)通訊和顯示等人機(jī)交互任務(wù),M核負(fù)責(zé)采樣和保護(hù)等對實(shí)時性要求較高的任務(wù),雙核間交互模擬量、開關(guān)量和錄波文件等多種信息,A核+M核的方案既滿足了傳統(tǒng)采樣保護(hù)功能,又支持多種接口通信及新增容器等功能,符合國家電網(wǎng)現(xiàn)行配電標(biāo)準(zhǔn)。



通信過程整體架構(gòu)說明

一、 硬件層通信實(shí)現(xiàn)機(jī)制

通過物理內(nèi)存DDR分配,將硬件層分為了兩部分:TXVring Buffer(發(fā)送虛擬環(huán)狀緩沖區(qū))和RXVring Buffer(接收虛擬環(huán)狀緩沖區(qū));其中M核從TXVring區(qū)發(fā)送數(shù)據(jù),從RXVring區(qū)讀取接收數(shù)據(jù),A核反之。

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



寄存器輸入輸出通信模型

(1)CoreA寫入數(shù)據(jù); (2)MU將Tx 空位清0,Rx滿位置1; (3)產(chǎn)生接收中斷請求,通知CoreB接收狀態(tài)寄存器中的接收器滿,可以讀取數(shù)據(jù); (4)CoreB響應(yīng)中斷,讀取數(shù)據(jù); (5)CoreB讀完數(shù)據(jù)后,MU將Rx滿位清0,Tx空位置1; (6)狀態(tài)寄存器向CoreA生成發(fā)送中斷請求,告知CoreB讀完數(shù)據(jù),發(fā)送寄存器空。

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

二、驅(qū)動層Virtio下RPMsg通信實(shí)現(xiàn)

Virtio是通用的IO虛擬化模型,位于設(shè)備之上的抽象層,負(fù)責(zé)前后端之間的通知機(jī)制和控制流程,為異構(gòu)多核間數(shù)據(jù)通信提供了層的實(shí)現(xiàn)。

RPMsg消息框架是Linux系統(tǒng)基于Virtio緩存隊(duì)列實(shí)現(xiàn)的主處理核和協(xié)處理核間進(jìn)行消息通信的框架,當(dāng)客戶端驅(qū)動需要發(fā)送消息時,RPMsg會把消息封裝成Virtio緩存并添加到緩存隊(duì)列中以完成消息的發(fā)送,當(dāng)消息總線接收到協(xié)處理器送到的消息時也會合理地派送給客戶驅(qū)動程序進(jìn)行處理。

在驅(qū)動層,對A核,Linux采用RPMsg框架+Virtio驅(qū)動模型,將RPMsg封裝為了tty文件供應(yīng)用層調(diào)用;在M核,將Virtio移植,并使用簡化版的RPMsg,因?yàn)樯婕暗交コ怄i和信號量,最終使用FreeRTOS完成過程的封裝,流程框圖如下方所示。


編輯切換為居中

添加圖片注釋,不超過 140 字(可選)


主處理核與協(xié)處理核數(shù)據(jù)傳遞流程圖

(1)Core0向Core1發(fā)送數(shù)據(jù),通過rpmsg_send函數(shù)將數(shù)據(jù)打包至Virtioavail鏈表區(qū); (2)在avail鏈表尋找共享內(nèi)存中空閑緩存,將數(shù)據(jù)置于共享內(nèi)存中; (3)通過中斷通知Core1數(shù)據(jù)到來,共享內(nèi)存由avail鏈表區(qū)變至used區(qū); (4)Core1收到中斷,觸發(fā)rpmsg的接收回調(diào)函數(shù),從used區(qū)獲取數(shù)據(jù)所在的共享內(nèi)存的物理地址,完成數(shù)據(jù)接收; (5)通過中斷通知Core0數(shù)據(jù)接收完成,共享內(nèi)存緩存由used區(qū)變?yōu)閍vail區(qū),供下次傳輸使用。

三、應(yīng)用層雙核通信實(shí)現(xiàn)方式

在應(yīng)用層,對A核可使用open、write和read函數(shù)對 /dev下設(shè)備文件進(jìn)行調(diào)用;對M核,可使用rpmsg_lite_remote_init、rpmsg_lite_send和rpmsg_queue_recv函數(shù)進(jìn)行調(diào)用,不做重點(diǎn)闡述。

四、實(shí)際使用效果

通過程序?qū)崪y,M核和A核可以批量傳輸大數(shù)據(jù)。同樣以配電產(chǎn)品為例——128點(diǎn)采樣的錄波文件大約為43K,若通過傳統(tǒng)的串行總線傳輸方式,需要數(shù)秒才可完成傳輸。

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

以上就是關(guān)于多核異構(gòu)處理器中A核與M核通信過程的解析,飛凌www.forlinx.com多核異構(gòu)平臺有NXP的i.MX8系列、瑞薩的RZ/G2L系列以及TI的AM62x系列等等,您可關(guān)注了解。


您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产h视频在线观看免费 | 国产91单男3p在线观看 | 久久久久久久国产精品毛片 | 男人天堂久久 | 欧美精品一二区 | 国产在线观看美女福利精 | 天天操2021 | 中文字幕日本一区 | 欧美视频在线观看网站 | 性夜影院午夜看片 | 久久久久久久久久免费视频 | 午夜国产羞羞视频免费网站 | 麻豆网站免费观看 | 免费精品国产自产拍在 | 欧美亚洲国产另类 | aⅴ视频在线免播放观看 | 羞羞的视频免费观看 | 青青青青久久久久国产 | 成人国产精品一级毛片视频 | 99热在线免费观看 | 一色屋精品视频在线观看 | 一区二区三区视频在线观看 | 欧美精品高清 | 97精品国产高清在线看入口 | 欧美一区二区三区免费不卡 | 国内精品视频在线播放一区 | 日本午夜精品 | 亚洲国产欧美目韩成人综合 | 成人靠逼视频 | 国产精品国产三级国产an | 国产午夜精品久久久久小说 | 精品伊人久久久99热这里只 | 成年男人的天堂 | 六月综合激情 | 91综合网| 日本在线观看中文字幕 | 97公开免费视频 | 四虎成人永久影院 | 一区二区日韩欧美 | a毛片在线免费观看 | 国产精品国产香蕉在线观看网 |