本说明书涉及具有集成电路设备的系统。
背景技术:
1、片上系统(soc)是集成移动计算设备的不同组件的集成电路,包括中央处理单元(cpu)、存储器、输入/输出端口、蜂窝无线电和辅助存储等。与传统的基于母板的pc架构相比,其中母板容纳并连接可拆卸或可更换的部件,soc将所有这些部件集成到单个集成电路中。soc通常用于移动计算、边缘计算和嵌入式系统,诸如智能电话、平板计算机、wifi路由器、物联网(iot)设备等。
2、soc能够包括需要功率管理的多个设备。功率管理为每个设备管理功率状态转换以优化功率消耗和利用,诸如实现更长的电池寿命和降低功率浪费。例如,当cpu处于空闲状态时,系统能够将cpu的功率状态改变为低功率状态(例如,切换到更低的电压)以便降低功耗。功率管理能够包括接通/关断电源、控制电压或频率、在不活动时切换到低功率状态等。
3、soc的功率管理通常通过使用状态机或微控制器来执行。状态机是实现硬件中的功率状态转换的基于硬件的解决方案。尽管基于状态机的解决方案提供了快速的状态转换并且占用更小的硅面积,但是基于状态机的解决方案限制了在制造芯片之后进行改变和调试问题的能力。基于微控制器的解决方案使用通用微控制器并且在软件中实现功率状态转换。尽管基于微控制器的解决方案为修改和调试提供了更好的灵活性,但是基于微控制器的解决方案导致更长的功率状态转换。另外,因为基于微控制器的解决方案使用具有大指令存储器和大数据存储器以及调试/跟踪基础设施的通用微控制器,所以这通常了在限制一个soc中的微控制器的实例的数量,并且soc通常仅具有管理在soc中的所有设备的功率状态的一个微控制器。
技术实现思路
1、本说明书描述了用于实现用于功率状态管理的本地功率管理器的技术。每个本地功率管理器被配置成执行针对功率管理定义的定制指令,该定制指令实现从一个功率状态转换到下一个功率状态所需的硬件转换序列。相对于由通用微控制器执行的指令,定制指令的大小较小并且针对功率管理任务被特别定义。本地功率管理器能够响应于接收到的触发事件,并且能够响应于触发事件而运行定制指令以进行功率状态转换。
2、本说明书中描述的主题能够在特定实施例中实施以便实现以下优点中的一个或多个。通过使用针对功率管理专用的专门设计的指令序列,本地功率管理器提供更快的状态转换,同时还为修改和调试提供灵活性。也就是说,本地功率管理器能够实现基于硬件的解决方案的性能/响应时延以及微控制器的灵活性和可编程性。与包括大量功能的通用计算设备(例如,微控制器)相反,本地功率管理器能够维持小指令集并且不需要包括数学运算。与基于微控制器的解决方案不同,本地电源管理器能够直接访问硬件级信号以进行调试。一个soc能够集成独立地控制芯片上的多个设备或子系统的功率状态的多个本地功率管理器。与具有一个针对soc中的每个设备的本地功率管理器不同,soc能够包括管理逻辑上属于同一子系统的多个设备的功率状态转换的本地功率管理器,并且因此能够共享共同资源以及减少功率消耗和硅内面积消耗。因此,本地功率管理器能够实现基于状态机的解决方案的性能以及基于微控制器的解决方案的灵活性,同时具有与基于状态机的解决方案类似的面积消耗。
3、在附图和以下描述中阐述了本说明书的主题的一个或多个实施例的细节。根据说明书、附图和权利要求,主题的其他特征、方面和优点将变得显而易见。
1.一种计算设备,包括:
2.根据权利要求1所述的计算设备,其中,每个本地功率管理器包括:
3.根据权利要求2所述的计算设备,其中,所述功率状态表、所述触发逻辑和所述指令序列在所述计算设备被制造之后是可修改的。
4.根据权利要求2所述的计算设备,其中,所述硬件定序器包括用于调试的断点和单步功能。
5.根据权利要求2所述的计算设备,其中,所述指令序列包括具有表示由所述触发逻辑接收的事件信号输入的值的一个或多个操作数的指令,其中,所述事件信号输入控制所述功率状态转换。
6.根据权利要求1所述的计算设备,其中,每个本地功率管理器被配置成执行条件指令,但是缺少用于执行算术运算的硬件。
7.根据权利要求1所述的计算设备,其中,每个本地功率管理器被配置成执行针对多个相应设备的多个功率状态表的转换序列。
8.一种计算机实现的方法,包括:
9.根据权利要求8所述的计算机实现的方法,其中,每个本地功率管理器包括:
10.根据权利要求9所述的计算机实现的方法,其中,所述功率状态表、所述触发逻辑和所述指令序列在所述计算设备被制造之后是可修改的。
11.根据权利要求9所述的计算机实现的方法,其中,所述硬件定序器包括用于调试的断点和单步功能。
12.根据权利要求9所述的计算机实现的方法,其中,所述指令序列包括具有表示由所述触发逻辑接收的事件信号输入的值的一个或多个操作数的指令,其中,所述事件信号输入控制所述功率状态转换。
13.根据权利要求8所述的计算机实现的方法,其中,每个本地功率管理器被配置成执行条件指令,但是缺少用于执行算术运算的硬件。
14.根据权利要求8所述的计算机实现的方法,其中,每个本地功率管理器被配置成执行多个相应设备的多个功率状态表的转换序列。
15.一个或多个编码有指令的非暂时性存储介质,所述指令在由被布置成多个功率块的计算设备的一个或多个本地功率管理器执行时,使所述一个或多个本地功率管理器实现所述计算设备的相应功率块中的多个设备的功率状态转换,其中,所述多个设备中的每个设备属于所述多个功率块中的一个功率块。
16.根据权利要求15所述的非暂时性存储介质,其中,每个本地功率管理器包括:
17.根据权利要求16所述的非暂时性存储介质,其中,所述功率状态表、所述触发逻辑和所述指令在所述计算设备被制造之后是可修改的。
18.根据权利要求16所述的非暂时性存储介质,其中,所述硬件定序器包括用于调试的断点和单步功能。
19.根据权利要求16所述的非暂时性存储介质,其中,所述指令包括具有表示由所述触发逻辑接收的事件信号输入的值的一个或多个操作数的指令,其中,所述事件信号输入控制所述功率状态转换。
20.根据权利要求15所述的非暂时性存储介质,其中,每个本地功率管理器被配置成执行条件指令,但是缺少用于执行算术运算的硬件。