一种异构多核系统核间通讯方法及控制器技术方案

技术编号:14965815 阅读:171 留言:0更新日期:2017-04-02 20:27
本发明专利技术涉及一种异构多核系统核间通讯方法及控制器,本发明专利技术实施例所提供的方法包括:确定至少一个CPU产生的实时任务的任务符号;查看存储于MCU中的系统符号表,判断任务符号是否存在于系统符号表;当任务符号不存在于系统符号表时,将存储于共享内存的任务模块加载至MCU,运行实时任务;当实时任务结束时,将任务符号从系统符号表删除,以及卸载任务模块或关闭任务模块所在缓存。本发明专利技术提供的一种异构多核系统核间通讯方法及控制器,将任务模块存储与共享内存中,通过动态加载的方式完成多核异构系统中的核间协作,克服了现有技术的不足,延长了MCU的使用寿命,实现了对MCU功能的扩展,使核间通讯更灵活,加快了系统的运行速度,降低了系统的能耗。

【技术实现步骤摘要】

本专利技术涉及异构多核的异构多核系统的通讯
,尤其涉及一种异构多核系统核间通讯方法及控制器
技术介绍
在现有的异构多核系统中,需要通过核间通讯来完成多核之间的协同工作。图1为现有技术异构双核核间通讯过程示意图,如图1所示,现有技术异构多核核间通讯是通过核间通讯完成多核之间的数据共享以及消息传递。如图1所示,以CPU(中央处理器)加MCU(微控制单元)的异构双核系统为例,且在CPU中运行Linux(Linux是操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码),在MCU中运行RTOS(实时操作系统是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统),为了完成Linux对RTOS的调用,RTOS中需预置一些实施任务在系统中,以便Linux调用,Linux通过核间通讯模块向RTOS的核间通讯...

【技术保护点】
一种异构多核系统中核间通讯方法,所述系统包括至少一个CPU、至少一个MCU和共享内存,其特征在于,所述方法包括:确定至少一个所述CPU产生的实时任务的任务符号;查看存储于MCU中的系统符号表,判断所述任务符号是否存在于所述系统符号表;当所述任务符号不存在于所述系统符号表时,将存储于所述共享内存的任务模块加载至所述MCU,运行所述实时任务;当所述实时任务结束时,将所述任务符号从所述系统符号表删除,以及卸载所述任务模块或关闭所述任务模块所在缓存。

【技术特征摘要】
1.一种异构多核系统中核间通讯方法,所述系统包括至少一个CPU、至
少一个MCU和共享内存,其特征在于,所述方法包括:
确定至少一个所述CPU产生的实时任务的任务符号;
查看存储于MCU中的系统符号表,判断所述任务符号是否存在于所述系
统符号表;
当所述任务符号不存在于所述系统符号表时,将存储于所述共享内存的
任务模块加载至所述MCU,运行所述实时任务;
当所述实时任务结束时,将所述任务符号从所述系统符号表删除,以及
卸载所述任务模块或关闭所述任务模块所在缓存。
2.根据权利要求1所述的方法,其特征在于,所述当所述任务符号不存
在于所述系统符号表时,将任务模块加载至所述MCU,运行所述实时任务,包
括:
根据所述任务符号确定运行所述实时任务的任务模块;
从所述共享内存中获取所述任务模块的模块依赖符号表,确定所述任务
模块的至少一个分任务模块以及每个所述分任务模块的导出符号;
根据所述导出符号,查找存储于所述共享内存的导出符号表,确定每个
所述分任务模块的存储地址;
将所述至少一个分任务模块加载到所述MCU的缓存中,运行所述实时任
务。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述
系统符号表存在所述任务符号时,所述MCU直接运行所述实时任务,并在所
述实时任务结束时,关闭所述任务模块所在缓存或卸载所述任务模块。
4.根据权利要求1所述的方法,其特征在于,所述任务模块的存储位置
包括MCU内存和共享内存,且所述CPU及所述MCU能够访问所述共...

【专利技术属性】
技术研发人员:刘方
申请(专利权)人:致象尔微电子科技上海有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1