[发明专利]一种嵌入式SOC系统实现多核启动与业务的相互解耦方法有效
申请号: | 202111395811.2 | 申请日: | 2021-11-23 |
公开(公告)号: | CN114090498B | 公开(公告)日: | 2023-07-28 |
发明(设计)人: | 刘斯扬;赵现平;聂永杰;曹敏;薛旺喜;李文云;廖耀华;陈叶;李波;李博 | 申请(专利权)人: | 云南电网有限责任公司电力科学研究院 |
主分类号: | G06F15/78 | 分类号: | G06F15/78;G06F9/4401;G06F9/445 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 逯长明;许伟群 |
地址: | 650217 云南省昆*** | 国省代码: | 云南;53 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 soc 系统 实现 多核 启动 业务 相互 方法 | ||
1.一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,应用于由业务模块、实时核模块、管理核模块以及共享内存模块构成的AMP架构中,所述实时核模块中包括多个实时核,其特征在于,所述方法包括:
搭建与AMP架构对应的多核系统;
在多核系统中,根据多个实时核,将共享内存划分为与每个实时核对应的ARM核;其中,ARM核中包括主核ARM核0和从核ARM核1~N;
将系统外部存储器主分区划分为供每个ARM核执行的core0~N程序;
根据Bootrom引导加载FSBL程序至主核ARM核0内部RAM区,并跳转给FSBL执行地址;
主核初始化,读取外部存储器主分区,依次将core0~N的执行程序加载至对应的运行起始地址;
将主核的core0执行程序起始地址写入CPU执行地址,待命令执行完成后,执行SEV指令启动加载core0的执行程序;
主核根据SEV指令执行启动操作;
依次将core1~N执行程序起始地址写入CPU执行地址,待命令执行完成后,执行SEV指令启动记载core1~N的执行程序;
从核根据SEV指令执行启动操作;
管理核启动引导加载操作系统,初始化操作系统内核,执行任务调度及相关业务参数的初始化,管理各个实时核的业务数据及文件。
2.根据权利要求1所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,所述主核根据SEV指令执行启动操作的步骤包括:
跳转到被写入地址执行程序;
资源初始化;
设置堆栈指针;
运行core0的main();
平台初始化;
业务参数初始化;
进入core0业务逻辑。
3.根据权利要求1所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,所述从核根据SEV指令执行启动操作的步骤包括:
检测固定地址值是否为0;
若否,则跳转到被写入地址执行程序;
资源初始化;
设置堆栈指针;
运行core1、2、...N-1或N的main();
平台初始化;
业务参数初始化;
进入core1、2、...N-1或N业务逻辑。
4.根据权利要求3所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,若固定地址值为0,则重新执行检测固定地址值是否为0的步骤。
5.根据权利要求1所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,搭建与AMP架构对应的多核系统后,所述方法还包括:
指定每个实时核对应的堆栈内存。
6.根据权利要求1所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,所述方法还包括:
多个业务模块之间通过共享内存中对应的ARM核完成数据的交互。
7.根据权利要求1所述的一种嵌入式SOC系统实现多核启动与业务的相互解耦方法,其特征在于,
当管理核根据更新配置信息执行数据更新时,将自身配置更新同步至各个实时核。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于云南电网有限责任公司电力科学研究院,未经云南电网有限责任公司电力科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111395811.2/1.html,转载请声明来源钻瓜专利网。