0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【玩转多核异构】处理器对共享外设和资源的调配方法-飞凌嵌入式

飞凌嵌入式 2023-02-03 16:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

来源:飞凌嵌入式官网

在多核异构CPU中,多个内核就如同多个大脑,而外设和内存等资源就如同手足,那么多个大脑该如何控制手足才能保证它们正常有序地运行呢?

NXP i.MX8M Plus处理器的A核和M核为例,其实只有少部分外设被指定了属于哪个核,而大部分的外设都能被A核和M核同时使用。如下图所示:

pYYBAGPcw-eACrTcAAC-nKW8gA0676.png

这里我们通过飞凌嵌入式OKMX8MP-C开发板上的UART3进行演示,同时编写A核和M核程序控制UART3打印信息,通过UART3将开发板与电脑链接,在电脑串口调试界面可以看到A核和M核同时输出了信息

poYBAGPcw-iAEhGMAAQGXHeBM5k839.gifA核和M核同时输出信息

那么在实际应用中,当某个外设需要被指定的内核独占或被多核同时使用时,该如何合理安排时序才能避免外设输出异常呢?接下来,小编就以飞凌嵌入式OKMX8MP-C开发板为例,将多核异构处理器对共享外设和资源的调配方法介绍给大家。

pYYBAGPcw-iARJujAAQ6CLFw8SI976.png

飞凌嵌入式OKMX8MP-C开发板所搭载的NXP i.MX8M Plus处理器具备强悍的性能, 集成4个主频最高可达1.8GHz(工业级主频为1.6GHz)的Arm Cortex-A53多任务核和1个Cortex-M7实时核,不管是对数据的高速吞吐、处理,还是复杂的人机交互界面处理,都能从容应对。

1、A核独占外设

这种情况比较简单,在设备树中定义设备节点,编译新的设备树,将生成的OK8MP-C.dtb和Image拷贝至以下目录:

开发板/run/media/mmcblk2p1/

重启开发板,同时M核程序中不初始化UART3即可。以UART3为例:

poYBAGPcw-eAAWw4AAAaIT7NWPo147.png

2、M核独占外设

对于NXP i.MX8M Plus处理器而言,由于A核和M核对内存和外设的访问都是共享且平等的,为了确保不产生资源冲突会通过资源域(resource domains)控制器从硬件层面来对指定内存和外设的访问权限进行保护

i.MX8M Plus处理器允许定义最多4个资源域并将不同的内存和外设资源指定到这些资源域中。默认情况下,A核和相关外设被指定于域0;当M核程序运行后,M核以及相关外设最初也是域0,但马上被重新指定于域1。

因此若一个外设需要被M7内核单独使用,首先要修改A核设备树,删除外设节点;其次在M核程序中将域0改为域1;最后再将外设初始化,这样就可以单独控制了。域转换代码如下:

poYBAGPcw-eAE8qhAABmEO57Fhw790.png

3、多核共享外设

如果多核想共享某个外设,但在某段时间又需要独占,后续再释放;或者多核的开发人员不是同一人,为了避免出错,在自己的程序中强制独占某个核,是否可以实现呢?

答案是肯定的——使用RDC功能即可。RDC全程为Resource Domain Controller,即资源域控制器,可以通过寄存器和信号量两种方式实现某个域对外设的独占和释放

(1)寄存器RDC_PDAPn

poYBAGPcw-iATTOAAAA_LywVpME820.png

由于i.MX8M Plus处理器最多支持4个域,因此对寄存器后8比特位写入不同数值,将允许相应的域对某个管脚和内存的读写使能,如禁止A核域0读写某个管脚,则设置寄存器为0xFC即可,后两个比特位为0,表示禁止域0读写此外设;其他六个比特位为1,表示允许从域1到域3读写此外设。

每个共享外设在RDC资源表中均有一个序号,用于区别其他外设,如UART3在RDC中定义如下:

kRDC_Periph_UART3 = 104U, /**< UART3 RDC Peripheral */

在M核程序中可如下修改程序,实现M核独占UART3的目的。

pYYBAGPcw-iAQIC_AAAdfrgEB3o582.png

修改程序验证,此时只有M核控制UART3打印信息。

pYYBAGPcw-iAUNBLAADQJa2HSwA265.gif

仅M核输出信息

注意:

因为在设备树中没有删除UART3,所以在A核启动内核解析设备树生成设备文件时,需对UART3操作。因M核程序中禁止A核的访问UART3,此时内核将无法正常启动。可以加10秒延时等待内核启动完成,也可在A核启动后,通过双核通信告知M核启动RDC外设独占。

(1)信号量RDCSEMA42

RDC SEMA42是一个专门配合RDC功能的信号量,当某个域获取某个外设的SEMA42锁后,其他的域将无法访问此外设,只能等待域释放该外设锁,才能再访问。

RDC SEMA42数据锁的开启配置如下:

poYBAGPcw-iAHjMxAAAyH_x0yco700.png

M核对UART3上锁,获取管脚的使用权:

pYYBAGPcw-iAXgjcAAAGQr0n9gs893.png

M核释放UART3的RDC SEMA42锁,放弃管脚的使用权:

poYBAGPcw-iAJJ4CAAAEf8zmsYk150.png

修改程序后验证,发现和RDC寄存器一样,M核上锁后获取UART3使用权,仅可独自发送,A核访问UART3会出错。释放SEMA42锁后,A核和M核就均能访问UART3了。

以上就是小编基于OKMX8MP-C开发板为大家带来的多核异构处理器对外设和内存资源的使用方法,各位工程师小伙伴可以根据自己的需求灵活设置策略,以满足不同场景的需要。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    135

    文章

    9499

    浏览量

    388695
  • 嵌入式
    +关注

    关注

    5186

    文章

    20146

    浏览量

    328796
  • 多核异构
    +关注

    关注

    0

    文章

    23

    浏览量

    5611
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    玩转多核异构】T153核心板RISC-V核的实时性应用解析

    嵌入式FET153-S核心板的异构多核架构展现出了卓越的通信性能,能够为诸多应用提供高效可靠的核心支撑,特别适用于对实时性和稳定性要求极
    的头像 发表于 11-14 09:40 8265次阅读
    【<b class='flag-5'>玩转</b><b class='flag-5'>多核</b><b class='flag-5'>异构</b>】T153核心板RISC-V核的实时性应用解析

    嵌入式2026届校园招聘正式启动!

    嵌入式2026届校园招聘正式启动!
    的头像 发表于 09-19 08:03 615次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>2026届校园招聘正式启动!

    【老法师】多核异构处理器中M核程序的启动、编写和仿真

    文章,小编就将以嵌入式的OKMX8MP-C开发板为例,为大家介绍多核异构处理器M核程序的启动
    的头像 发表于 08-13 09:05 3631次阅读
    【老法师】<b class='flag-5'>多核</b><b class='flag-5'>异构</b><b class='flag-5'>处理器</b>中M核程序的启动、编写和仿真

    RK3568开发板暗藏32位兼容开关?嵌入式带你一键解锁!

    RK3568是一款64位处理器嵌入式为其提供的交叉编译也是64位的,然而部分用户可能需要在RK3568开发板上运行32位应用。本文将
    的头像 发表于 07-19 08:49 4180次阅读
    RK3568开发板暗藏32位兼容开关?<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>带你一键解锁!

    嵌入式AM62x核心板驱动微电网智能化创新

    嵌入式基于TI AM62x处理器打造的FET6254-C核心板,以多核协同处理能力、实时响应
    的头像 发表于 06-06 14:57 1788次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>AM62x核心板驱动微电网智能化创新

    嵌入式2025嵌入式及边缘AI技术论坛圆满结束

    嵌入式「2025嵌入式及边缘AI技术论坛」在深圳深铁皇冠假日酒店盛大举行,此次活动邀请到了200余位嵌入式技术领域的技术专家、企业代表和
    的头像 发表于 04-28 13:57 3834次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>2025<b class='flag-5'>嵌入式</b>及边缘AI技术论坛圆满结束

    嵌入式2025嵌入式及边缘AI技术论坛圆满结束

    4月22日下午,备受瞩目的嵌入式「2025嵌入式及边缘AI技术论坛」在深圳深铁皇冠假日酒店盛大举行,此次活动邀请到了200余位嵌入式技术
    的头像 发表于 04-27 11:55 608次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>2025<b class='flag-5'>嵌入式</b>及边缘AI技术论坛圆满结束

    嵌入式「2025嵌入式及边缘AI技术论坛」议程公布

    4月22日,嵌入式“2025嵌入式及边缘AI技术论坛”将在深圳举行,论坛以“新生态,智未来”为主题,旨在汇聚行业智慧,探讨嵌入式技术与边
    的头像 发表于 04-02 15:12 1071次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>「2025<b class='flag-5'>嵌入式</b>及边缘AI技术论坛」议程公布

    新操作系统适配,嵌入式T527核心板打造高效开发新体验

    嵌入式为基于全志T536处理器开发设计的FET527N-C核心板适配了全新升级的ForlinxDesktop22.04操作系统,这一举措不仅能够为用户带来了更加流畅、稳定的操作体验
    的头像 发表于 03-20 14:33 1134次阅读
    新操作系统适配,<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>T527核心板打造高效开发新体验

    嵌入式携手瑞芯微成为2025年全国大学生嵌入式大赛命题企业

    近日,保定嵌入式技术有限公司(以下简称“嵌入式”)携手瑞芯微电子股份有限公司(以下简称“
    的头像 发表于 03-19 16:32 1167次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>携手瑞芯微成为2025年全国大学生<b class='flag-5'>嵌入式</b>大赛命题企业

    智能配电新纪元:基于飞嵌入式T536核心板的DTU解决方案

    在国网新规的推动下,采用多核异构处理器设计的DTU方案日益成为主流,其中实时核与控制核的协同工作,为配电系统的实时监控与高效管理提供了有力保障。在此背景下,
    的头像 发表于 03-05 10:34 1617次阅读
    智能配电新纪元:基于飞<b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>T536核心板的DTU解决方案

    电子发烧友荣获嵌入式“2024年度最具价值媒体”奖

    曝光度、精准触达目标客户,同时获取市场反馈优化产品设计,强化行业技术标杆形象,驱动产品迭代与销售转化,加速生态合作布局。 嵌入式作为电子发烧友企业号尊享版认证客户,标志着双方合作从基础资源
    发表于 02-28 15:20

    嵌入式2024年度盘点】乘风破浪,奋力前行

    2024年即将落下帷幕,回首这一年,嵌入式乘风破浪,奋力前行,创造了发展新篇章,站在2025年的开端,让我们重温
    的头像 发表于 01-04 13:22 1383次阅读
    【<b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>2024年度盘点】乘风破浪,奋力前行

    嵌入式MA35D1核心板新品上市

    嵌入式与新唐携手合作,基于MA35D1系列处理器推出FET-MA35-S2核心板,旨在为工程师用户们提供更高效、更便捷的开发体验!
    的头像 发表于 12-10 10:38 1240次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>MA35D1核心板新品上市

    嵌入式受邀亮相瑞萨2024工业技术研讨会

    嵌入式作为瑞萨电子的生态合作伙伴,给2024瑞萨电子MCU/MPU工业技术研讨会的现场观众带去了基于RZ/G2L高性能多核异构
    的头像 发表于 12-07 14:27 991次阅读
    <b class='flag-5'>飞</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>受邀亮相瑞萨2024工业技术研讨会