【技术实现步骤摘要】
【国外来华专利技术】用于片上系统的预启动环境的多核框架相关申请的交叉引用本申请要求于2018年9月20日提交的美国申请第16/137,226号的优先权,所述美国申请要求于2017年9月25日提交的美国临时专利第62/562,738号的权益。临时申请的内容通过全文引用的方式并入本文。
本公开的教导总体上涉及片上系统(SoC)集成电路设计,并且在某些方面,涉及SoC的预启动环境。
技术介绍
计算装置是普遍存在的。一些计算装置是便携式的,如移动电话、平板计算机和膝上型计算机。随着此类便携式计算装置的功能的增加,所需的计算或处理功率以及总体上支持此类功能的数据存储容量也增加。除了这些装置的主要功能之外,许多装置还包含支持外围功能的元件。例如,蜂窝电话可以包含实现并支持蜂窝电话呼叫的主要功能和静态相机、视频相机、全球定位系统(GPS)导航、网络浏览、发送和接收电子邮件、发送和接收文本消息、按键通话能力等的外围功能。这些便携式装置中的许多便携式装置包含片上系统(SoC),以在特定装置上实现一或多个主要功能和外围功能。SoC总体上包含嵌入集成电路或芯片中并耦接到本地总线的多个中央处理单元(CPU)核。CPU核可以被进一步布置成一或多个计算集群。SoC总体上可以进一步包含硬件组件和其它处理器。例如,SoC可以包含分组成一或多个子系统的一或多个CPU、具有多个核的CPU、一或多个数字信号处理器等。与如台式计算机和服务器计算机等大型计算装置一样,SoC在通电时依赖于启动序列或启动代码。启动序列是在向SoC首次施加电力时SoC ...
【技术保护点】
1.一种在片上系统SoC的预启动环境中实现多核框架的方法,所述SoC包括多个处理器,所述多个处理器包括第一处理器和第二处理器,所述方法包括:/n由所述第一处理器发起将所述SoC启动到预启动环境中;/n由所述第一处理器调度第二处理器对一或多个启动任务的执行;/n由所述第二处理器在所述预启动环境中执行所述一或多个启动任务;以及/n与所述第二处理器执行所述一或多个启动任务并行地,由所述第一处理器执行一或多个另外的任务。/n
【技术特征摘要】
【国外来华专利技术】20170925 US 62/562,738;20180920 US 16/137,2261.一种在片上系统SoC的预启动环境中实现多核框架的方法,所述SoC包括多个处理器,所述多个处理器包括第一处理器和第二处理器,所述方法包括:
由所述第一处理器发起将所述SoC启动到预启动环境中;
由所述第一处理器调度第二处理器对一或多个启动任务的执行;
由所述第二处理器在所述预启动环境中执行所述一或多个启动任务;以及
与所述第二处理器执行所述一或多个启动任务并行地,由所述第一处理器执行一或多个另外的任务。
2.根据权利要求1所述的方法,其中在所述预启动环境中,操作系统不在所述SoC上执行,并且所述方法进一步包括:
通过加载所述操作系统在所述预启动环境中完成执行;以及
由所述操作系统调度代码在所述第一处理器和所述第二处理器上的并行执行。
3.根据权利要求1所述的方法,其进一步包括:
由所述第二处理器将与所述一或多个启动任务相关的服务调用引导到所述第一处理器;
由所述第一处理器执行对应于所述服务调用的功能;以及
由所述第一处理器向所述第二处理器返回所述功能的结果。
4.根据权利要求3所述的方法,其中所述引导是使用提供到所述第二处理器的第一系统表执行的,所述第一系统表被配置成将所述第二处理器上的所述服务调用引导到在所述第二处理器上运行的第一实体,在所述第二处理器上的所述第一实体被配置成与在所述第一处理器上运行的第二实体通信,并且其中所述执行和所述返回是使用提供到所述第一处理器的第二系统表执行的,所述第二系统表被配置成使所述第二实体执行对应于所述服务调用的所述功能并且将所述功能的所述结果返回到所述第一实体。
5.根据权利要求4所述的方法,其中所述第二系统表包括统一可扩展固件接口UEFI系统表。
6.根据权利要求3所述的方法,其进一步包括:
由所述第二处理器接收所述服务调用;
在第一缓冲器中存储对应于所述服务调用的第一消息;
由所述第二处理器设置与所述第一缓冲器相关联的第一标记以向所述第一处理器指示所述第一缓冲器包含所述第一消息;
由所述第一处理器基于所述第一标记确定所述第一缓冲器包含所述第一消息;
由所述第一处理器从所述第一缓冲器中读取所述第一消息;
由所述第一处理器基于所述第一消息执行对应于所述服务调用的所述功能;
由所述第一处理器在第二缓冲器中存储对应于所述功能的所述结果的第二消息;
由所述第一处理器设置与所述第二缓冲器相关联的第二标记以向所述第二处理器指示所述第二缓冲器包含所述第二消息;
由所述第二处理器基于所述第二标记确定所述第二缓冲器包含所述第二消息;以及
由所述第二处理器从所述第二缓冲器中读取所述第二消息。
7.根据权利要求3所述的方法,其中所述服务调用包括存储器分配请求、与所述第二处理器的验证相关的调用或与编程所述SoC相关的调用中的至少一个。
8.根据权利要求1所述的方法,其中所述第二处理器和所述第一处理器被配置成使用共享的存储器空间进行通信,所述共享的存储器空间包括一或多个标记和与所述一或多个标记相关联的一或多个缓冲器,其中所述一或多个标记用于同步所述第一处理器与所述第二处理器之间的消息传递。
9.根据权利要求8所述的方法,其中对于所述一或多个标记中的每个标记,多个计算核中的每个计算核被经启用以读取所述标记,并且所述多个计算核中的仅一个计算核经启用以为写入所述标记。
10.根据权利要求1所述的方法,其进一步包括:
由所述第一处理器确定所述第二处理器的状态;以及
基于所述第二处理器的所述状态向所述第二处理器发送中断或打开所述第二处理器中的至少一个。
11.一种片上系统SoC,其包括:
第一处理器,所述第一处理器被配置成:
发起将所述SoC启动到预启动环境中;
调度第二处理器对一或多个启动任务的执行;并且
与所述第二处理器执行所述一或多个启动任务并行地执行一或多个另外的任务;以及
所述第二处理器,所述第二处理器被配置成:
在所述预启动环境中执行所述一或多个启动任务。
12.根据权利要求11所述的SoC,其中在所述预启动环境中,操作系统不在所述SoC上执行,并且其中所述第一处理器被进一步配置成:
通过加载所述操作系统在所述预启动环境中完成执行,并且其中所述操作系统被配置成调度代码在所述第一处理器和所述第二处理器上的并行执行。
13.根据权利要求11所述的SoC,其中:
所述第二处理器被进一步配置成:
将与所述一或多个启动任务相关的服务调用引导到所述第一处理器;并且
所述第一处理器被进一步配置成:
执行对应于所述服务调用的功能;并且
向所述第二处理器返回所述功能的结果。
14.根据权利要求13所述的SoC,其中所述引导是使用提供到所述第二处理器的第一系统表执行的,所述第一系统表被配置成将所述第二处理器上的所述服务调用引导到在所述第二处理器上运行的第一实体,在所述第二处理器上的所述第一实体被配置成与在所述第一处理器上运行的第二实体通信,并且其中所述执行和所述返回是使用提供到所述第一处理器的第二系统表执行的,所述第二系统表被配置成使所述第二实体执行对应于所述服务调用的所述功能并且将所述功能的所述结果返回到所述第一实体。
15.根据权利要求14所述的SoC,其中所述第二系统表包括UEFI系统表。
16.根据权利要求13所述的SoC,其中:
所述第二处理器被进一步配置成:
接收所述服务调用;
在第一缓...
【专利技术属性】
技术研发人员:A·艾扬格,Y·纳拉亚纳,D·帕克·阿里,S·R·查姆查拉,D·戴维斯·库拉,
申请(专利权)人:高通股份有限公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。