掌桥专利:专业的专利平台
掌桥专利
首页

调压控制方法、装置及片上系统

文献发布时间:2024-04-18 19:58:21


调压控制方法、装置及片上系统

技术领域

本发明涉及芯片技术领域,具体而言,涉及一种调压控制方法、装置及片上系统。

背景技术

随着集成电路的工艺的技术发展,片上系统的芯片尺寸也在不断缩小,这使得片上系统的芯片成本以及功耗等问题逐渐变为芯片的主要关注问题之一。

目前,大多片上系统的处理器中大多具有动态调压功能,基于运行的应用程序控制电源芯片对处理器的供电电压进行动态调整。然而,在已公开的技术中,处理器可基于电源芯片的配置参数结合自身的状态,通过运行固件程序,实时计算目标电压,并控制电源芯片将处理器的供电电压调整至目标电压,实现处理器的动态调压。

由处理器通过实时计算目标电压的方式,控制电源芯片进行动态调压的技术,使得处理器在动态调压过程中的计算量较大,使得处理器的功耗也较大。

发明内容

本申请的目的在于,针对上述现有技术中的不足,提供一种调压控制方法、装置及片上系统,以减小处理器在动态调压过程中的计算量,减小处理器的功耗。

为实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种调压控制方法,应用于处理器;所述调压控制方法包括:

若达到预设调压触发条件,则获取所述处理器的运行状态参数;

根据所述运行状态参数,从电源芯片的调压预配置参数中,获取目标配置参数;所述调压预配置参数包括:多个调压等级的配置参数,所述目标配置参数包括:目标调压等级的配置参数;

根据所述目标调压等级的配置参数,控制所述电源芯片输出所述目标调压等级的电压。

在一种可能实现方式中,每个调压等级的配置参数包括:所述每个调压等级的写操作参数,所述目标调压等级的配置参数包括:所述目标调压等级的写操作参数;

所述根据所述目标调压等级的配置参数,控制所述电源芯片输出所述目标调压等级的电压,包括:

根据所述目标调压等级的写操作参数,控制所述电源芯片输出所述目标调压等级的电压。

在一种可能实现方式中,所述每个调压等级的配置参数还包括:所述每个调压等级的读操作参数;所述目标调压等级的配置参数还包括:所述目标调压等级的读操作参数;

所述根据所述目标调压等级的配置参数,控制所述电源芯片输出所述目标调压等级的电压,还包括:

根据所述目标调压等级的读操作参数,确定所述电源芯片的输出电压是否达到所述目标调压等级的电压;

若未达到所述目标调压等级对应的电压,则根据所述运行状态参数,重新获取目标调压等级的写操作参数以及目标调压等级的读操作参数,直至基于重新确定的目标调压等级的写操作参数和读操作参数对所述电源芯片进行控制后所述电源芯片的输出电压达到重新确定的目标调压等级。

在一种可能实现方式中,所述调压预配置参数还包括:所述电源芯片上写操作寄存器的地址;所述每个调压等级的写操作参数包括:所述每个调压等级的写寄存器值,所述目标调压等级的写操作参数包括:所述目标调压等级的写寄存器值;

所述根据所述目标调压等级的写操作参数,控制所述电源芯片输出所述目标调压等级的电压,包括:

根据所述目标调压等级的写寄存器值以及所述写操作寄存器的地址,对所述电源芯片上的所述写操作寄存器执行写操作,以使得所述电源芯片输出所述目标调压等级的电压。

在一种可能实现方式中,所述调压预配置参数还包括:所述电源芯片上读操作寄存器的地址;所述每个调压等级的读操作参数包括:所述每个调压等级的读寄存器值,所述目标调压等级的读操作参数包括:所述目标调压等级的读寄存器值;

所述根据所述目标调压等级的读操作参数,确定所述电源芯片的输出电压是否达到所述目标调压等级的电压,包括:

根据所述读操作寄存器的地址,对所述电源芯片上的所述读操作寄存器执行读操作,得到所述电源芯片的输出电压参数值;

根据所述输出电压参数值,以及所述目标调压等级的读寄存器值,确定所述电源芯片的输出电压是否达到所述目标调压等级的电压。

在一种可能实现方式中,所述调压预配置参数还包括:写操作电压步幅的寄存器值;

所述根据所述目标调压等级的写寄存器值以及所述写操作寄存器的地址,对所述电源芯片上的所述写操作寄存器执行写操作,以使得所述电源芯片输出所述目标调压等级的电压,包括:

根据所述目标调压等级的写寄存器值、所述写操作寄存器的地址以及所述写操作电压步幅的寄存器值,对所述电源芯片上的所述写操作寄存器执行写操作,以使得所述电源芯片输出所述目标调压等级下所述写操作电压步幅的电压。

在一种可能实现方式中,所述调压预配置参数还包括:读操作电压步幅的寄存器值;

所述根据所述输出电压参数值,以及所述目标调压等级的读寄存器值,确定所述电源芯片的输出电压是否达到所述目标调压等级对应的电压,包括:

根据所述输出电压参数值、所述读操作电压步幅的寄存器值,以及所述目标调压等级的读寄存器值,确定所述电源芯片的输出电压是否达到所述目标调压等级下所述读操作电压步幅的电压。

在一种可能实现方式中,所述调压预配置参数还包括:所述电源芯片的通信地址、所述处理器上通信接口的信息、以及操作模式信息中的至少一项参数;

所述根据所述目标调压等级的配置参数,控制所述电源芯片输出所述目标调压等级的电压,包括:

根据所述至少一项参数,以及所述目标调压等级的配置参数,控制所述电源芯片输出所述目标调压等级的电压。

在一种可能实现方式中,所述调压预配置参数预先集成在:所述处理器的固件程序中的调压代码中,或者,所述调压代码对应的参数表中,或者,所述固件程序对应的预设存储区域中。

第二方面,本申请实施例提供了一种调压控制装置,应用于处理器;所述调压控制装置包括:

第一获取模块,用于若达到预设调压触发条件,则获取所述处理器的运行状态参数;

第二获取模块,用于根据所述运行状态参数,从电源芯片的调压预配置参数中,获取目标配置参数;

控制模块,用于根据所述目标配置参数,控制所述电源芯片对所述处理器的输出电压进行调压控制。

第三方面,本发明实施例提供了一种片上系统,包括:处理器和电源芯片;所述处理器和所述电源芯片通信连接,所述处理器还与所述电源芯片电连接,所述处理器用于执行上述第一方面中任一所述的调压控制方法。

本申请的有益效果是:

本申请所提供的调压控制方法、装置及片上系统,可使得处理器在达到预设调压触发条件的情况下,获取运行状态参数,并基于运行状态参数从电源芯片的调压预配置参数中获取包括目标调压等级的配置参数的目标配置参数,继而可根据目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压。本实施例提供的方法,可使得处理器在进行动态调压的过程中,无需进行目标电压参数的计算,只需从调压预配置参数中获取目标调压配置参数即可,实现根据目标调压配置参数中的目标等级的配置参数,控制电源芯片输出目标调压等级的电压,实现动态调压,从而减小了处理器在动态调压过程中的计算量,避免了处理器由于动态调压造成的功耗过大。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种片上系统的硬件结构图;

图2为本申请实施例提供的一种调压控制方法的流程图;

图3为本申请实施例提供的一种调压控制方法的另一方法流程图;

图4为本申请实施例提供的一种调压控制方法的又一方法流程图;

图5为本申请实施例提供的一种调压控制装置的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

需要说明的是,本申请实施例各部分以及附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包括了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。

本申请下述实施例所涉及的方法流程图仅是示例性说明,不是必须包括所有的内容和步骤,也不是必须按照所描述的顺序执行。例如,有些步骤还可以分解,而这些步骤可以合并或者部分合并,因此,实际执行的顺序可根据实际情况改变。

本申请下述实施例所设计的方框图中的功能模块仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式实现这些功能实体,或在一个或多个物理模块或集成电路中实现这些功能实体,或者不同网络和/或处理器和/或微控制器中实现这些功能实体。

如下先对下述各实施例所涉及的技术术语进行解释。

字节(Bytes):用于计量存储容量的一种计量单位。

比特(bit/bits):二进制数据的单位,1Byte=8bits。

带电可擦可编程只读存储器(Electrically Erasable Programmable read onlymemory,eeprom):一种掉电后数据不丢失的存储芯片。

本申请各实施例提供的调压控制方法以及装置,可应用于布设有处理器和电源芯片的片上系统,又称硬件集成电路。图1为本申请实施例提供的一种片上系统的硬件结构图,如图1所示,片上系统可包括:处理器11和电源芯片12。其中,处理器11可以为中央处理器(Central Processing Unit,CPU),其还可称为处理芯片;电源芯片12还可称为数字电源、数字电源芯片、调压芯片等其它表述,电源芯片12为具有数字处理功能的电源模块,其既可向处理器提供电信号,以为其供电,还进行数字信号处理以及控制功能等。

处理器11与电源芯片12通信连接,例如处理器11上的通信接口与电源芯片12上对应的通信接口进行连接。其中,该通信接口例如可以为集成电路(Inter-IntegratedCircuit,IIC)总线接口、系统管理总线(System Management Bus,SMBus)接口、电源管理总线(Power Management Bus,PMBus)接口、自适应电压缩放总线(Adaptive VoltageScaling Bus,AVSBus)接口等任一通信接口。处理器11与电源芯片12电连接,指的是,处理器11上的电源接口与电源芯片12上对应的电源接口连接,以实现电源芯片12为处理器11的供电。处理器11可基于预设的动态电压调整技术,如动态电压频率调整(Dynamic Voltageand Frequency Scaling,DVFS)技术,与电源芯片12之间的通信连接进行数据传输通信,使得电源芯片12对输出至处理器11的电压进行调节控制,从而实现对处理器11的供电电压的动态调整。

本申请实施例所提提供上述片上系统可应用于电子设备,例如可集成在电子设备的主控板上。因此,本申请实施例还提供一种包括片上系统的电子设备。

本申请下述各实施例提供的调压控制方法以及装置,即为处理器和电源芯片配合实现的一种动态调压技术,因此,本申请提供的调压控制方法,也可称为基于DVFS技术的调压控制方法。

如下结合附图通过多个示例,对本实施例所提供的调压控制方法进行还进行以下示例的解释说明。图2为本申请实施例提供的一种调压控制方法的流程图。如图2所示,调压控制方法可包括:

S201、若达到预设调压触发条件,则获取处理器的运行状态参数。

在一种可能的实现示例中,处理器在运行过程中,可以持续进行功耗和/或业务性能的监测,若监测得到的功耗和/或业务性能无法满足预设条件,则可确定其达到预设调压触发条件,需要对处理器的电源电压进行动态调压。在达到预设调压触发条件时,可获取处理器的频率,又称主频或者工作频率,该运行状态参数至少可包括:频率。当然,在实际的应用示例中,运行状态参数可不局限于频率,其还可包括:其它用于表征运行状态的参数,例如运行程序的数量、消耗计算资源等等,本申请实施例不对此进行限制

S202、根据运行状态参数,从电源芯片的调压预配置参数中,获取目标配置参数;调压预配置参数包括:多个调压等级的配置参数,目标配置参数包括:目标调压等级的配置参数。

其中,调压预配置参数例如可以为预先基于电源芯片的属性信息以及对应的电参数计算方式预先进行计算并得到的调压配置参数。

在进行调压预配置参数的计算过程中,例如可采用预设的上位机软件,根据电源芯片的属性信息以及对应的电参数计算方式进行各种配置参数的计算,得到该电源芯片的调压预配置参数。

在计算得到调压预配置参数之后,可将其集成在处理器的固件程序中的调压代码中,或者,调压代码对应的参数表中,或者,固件程序对应的预设存储区域中,实现调压预配置参数和固件程序之间的参数传递,便于在进行调压控制的过程中进行调用获取。其中,预设存储区域例如可以为固件程序调用参数所在的存储区域,如外接存储器,如外接EEPROM,当然,也可以为其它类型的存储区域,本申请实施例对此不作限制。

在进行调压预配置参数的过程中,可将调压预配置参数中的多个调压等级的配置参数与多个运行状态参数范围,如多个频率范围进行绑定关联,处理器在进行动态调压的过程中,可基于获取到的运行状态参数,从调压预配置参数中的多个调压等级中确定运行状态参数所在目标运行状态参数范围对应的调压等级为目标调压等级,从而得到包括该目标调压等级的配置参数的目标配置参数。

S203、根据目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压。

在可能实现方式中,可根据目标调压等级的配置参数,生成并通过对应接口向电源芯片传输对应的调压控制信号,又称调压命令或者调压指令,从而控制电源芯片将输出至处理器的电压调节为:目标调压等级的电压。以通信接口为IIC总线接口为例,其生成的控制信号例如可以是IIC控制信号。

在一种可能的实现中,调压预配置参数还包括:电源芯片的通信地址、处理器上通信接口的信息、以及操作模式信息中的至少一项参数。相应的,可根据至少一项参数,以及目标调压等级的配置参数,控制电源芯片输出所述目标调压等级的电压。

其中,电源芯片的通信地址为:电源芯片与处理器通信连接的通信接口的地址,以IIC总线接口为例,则电源芯片的通信地址为电源芯片上IIC总线接口的从地址。处理器上的通信接口的信息为:处理器与电源芯片通信连接,用以进行调压控制的通信接口的信息,如接口标识。以IIC总线接口为例,则处理器上与电源芯片的通信接口的信息为:处理器上进行调压的IIC总线接口的端口号。

操作模式信息用于指示调压控制信号的位宽大小,也就是调压控制信号的数据量。若操作模式信息为8bit模式,其用于指示调压控制时向电源芯片发送的调压控制信号的数据量为8bit,也就是1字节;若操作模式信息为16bit模式,其用于指示调压控制时向电源芯片发送的调压控制信号的数据量为16bit,也就是2字节。

获取目标调压等级的配置参数的情况下,可根据该根据至少一项参数,以及目标调压等级的配置参数,生成并向电源芯片发送调压控制信号,以使得电源芯片将输出至处理器的电压调节为目标调压等级的电压。

本申请实施例提供的调压控制方法,可使得处理器在达到预设调压触发条件的情况下,获取运行状态参数,并基于运行状态参数从电源芯片的调压预配置参数中获取包括目标调压等级的配置参数的目标配置参数,继而可根据目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压。本实施例提供的方法,可使得处理器在进行动态调压的过程中,无需进行目标电压参数的计算,只需从调压预配置参数中获取目标调压配置参数即可,实现根据目标调压配置参数中的目标等级的配置参数,控制电源芯片输出目标调压等级的电压,实现动态调压,从而减小了处理器在动态调压过程中的计算量,避免了处理器由于动态调压造成的功耗过大。

并且,由于本申请的方案中,无需进行目标电压参数的实时计算,因此,也无需在固件程序中配置对应的电压计算方式,即避免了固件程序的代码量过大,还可避免对电源芯片进行配置过程中的冗余工作。

如上实施例中,每个调压等级的配置参数例如可包括:每个调压等级的写操作参数,相应的,目标调压等级的配置参数可包括:目标调压等级的写操作参数。基于此,在上述任一实施例的基础上,本申请实施例还提供一种调压方法的可能实现示例。图3为本申请实施例提供的一种调压控制方法的另一方法流程图。如3所示,如上所示的实施例中S203中根据目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压可包括:

S301、根据该目标调压等级的写操作参数,控制电源芯片输出目标调压等级的电压。

在具体实现中,可根据目标调压等级的写操作参数生成调压控制信号,并发送至电源芯片,以对电源芯片执行写操作,使得电源芯片基于调压控制信号,将输出电压调节为目标调压等级的电压。

在通过写操作对输出电压进行控制的基础上,本申请实施例还可提供一种通过读操作对输出电压进行反馈控制调节的可能实现方式。在本示例中,每个调压等级的配置参数还可包括:每个调压等级的读操作参数,相应的,目标调压等级的配置参数还可包括:目标调压等级的读操作参数。基于此,如上所示的实施例中S203中根据目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压还可包括:

S302、根据目标调压等级的读操作参数,确定电源芯片的输出电压是否达到目标调压等级的电压。

S303、若未达到目标调压等级对应的电压,则根据运行状态参数,重新获取目标调压等级的写操作参数以及目标调压等级的读操作参数,直至基于重新确定的目标调压等级的写操作参数和读操作参数对电源芯片进行控制后电源芯片的输出电压达到重新确定的目标调压等级。

在可能的实现方式,可根据目标调压等级的读操作参数,对电源芯片执行读操作,以获取电源芯片的输出电压,并判断输出电压是否达到目标调压等级的电压。

本实施例中,通过目标调压等级的写操作参数,对电源芯片执行写操作的方式控制电源芯片输出目标调压等级的电压,无需进行电压参数的计算,即可实现了动态调压调整,减小了处理器在动态调压过程中的计算量,避免了处理器由于动态调压造成的功耗过大;还可通过目标调压调压等级的读操作参数,对电源芯片执行读操作的方式对输出电压进行反馈控制调节,使得输出电压达到对应的目标调压等级的电压,还可保证动态调压的效果。

在上述实施例所提供的调压控制方法的基础上,本申请实施例还可提供一种通过写操作进行调压控制的可能实现方式。在本实施例中,上述调压预配置参数还包括:电源芯片上写操作寄存器的地址,写操作寄存器的地址为写操作寄存器在电源芯片上的片上地址,其为设置电压时电源芯片上的写操作寄存器的片上地址。

每个调压等级的写操作参数包括:每个调压等级的写寄存器值,相应的,目标调压等级的写操作参数包括:目标调压等级的写寄存器值。图4为本申请实施例提供的一种调压控制方法的又一方法流程图,如图4所示,如上实施例中S301中根据该目标调压等级的写操作参数,控制电源芯片输出目标调压等级的电压可包括:

S401、根据目标调压等级的写寄存器值以及写操作寄存器的地址,对电源芯片上的写操作寄存器执行写操作,以使得电源芯片输出目标调压等级的电压。

在具体实现中,可根据目标调压等级的写寄存器值以及写操作寄存器的地址,生成调压控制信号并发送至电源芯片,以使得电源芯片基于调压控制信号对写操作寄存器执行写操作,以将目标调压等级的写寄存器值写入至写操作寄存器中,从而使得电源芯片写操作寄存器的值,将输出电压调节为目标调压等级的电压。将目标调压等级的写寄存器值写入至写操作寄存器中,实际是将电源芯片的输出电压设置为目标调压等级的电压。

在通过基于写寄存器值以及写操作寄存器的地址对电源芯片的写寄存器执行写操作进行调压控制的基础上,本申请实施例还可提供一种通过基于读寄存器值以及读操作寄存器的地址对电源芯片的读寄存器执行读操作对输出电压进行反馈控制调节的可能实现方式。在本示例中,调压预配置参数还包括:电源芯片上读操作寄存器的地址,读操作寄存器的地址为读操作寄存器在电源芯片上的片上地址,其为读取输出电压时电源芯片上的读操作寄存器的片上地址。

每个调压等级的读操作参数包括:每个调压等级的读寄存器值,相应的,目标调压等级的读操作参数包括:目标调压等级的读寄存器值。基于此,如上所示的实施例中S302中根据目标调压等级的读操作参数,确定电源芯片的输出电压是否达到目标调压等级的电压可包括:

S402、根据读操作寄存器的地址,对电源芯片上的读操作寄存器执行读操作,得到电源芯片的输出电压参数值。

在可能的实现过程中,可根据读操作寄存器的地址,对电源芯片上读操作寄存器执行读操作,以读取读操作寄存器中的参数值,并根据读取到的参数值,计算得到输出电压参数值。

S403、根据输出电压参数值以及目标调压等级的读寄存器值,确定电源芯片的输出电压是否达到目标调压等级的电压。

在一种可能的实现方式中,可根据目标调压等级的读寄存器值,计算电源芯片的目标电压参数值,并根据输出电压参数值和目标电压参数值,确定输出电压是否达到目标调压等级的电压。例如,若输出电压参数值和目标电压参数值的偏差在预设偏差范围内,则可确定输出电压达到目标调压等级的电压;反之,若输出电压参数值和目标电压参数值的偏差不在预设偏差范围内,则可确定输出电压未达到目标调压等级的电压。

在另一种可能的实现方式中,可直接对读取到的读操作寄存器中的参数值和获取到的目标调压等级的读寄存器值进行比对,若匹配,则确定输出电压达到目标调压等级的电压;反之,若不匹配,则确定输出电压未达到目标调压等级的电压。

在本实施例提供的调压控制方法,可根据写操作寄存器的地址以及目标调压等级的写寄存器值,通过对电源芯片上的写操作寄存器执行写操作,将电源芯片的输出电压设置为目标调压等级的电压,无需通过复杂的运算,仅基于写操作寄存器的写操作即可实现对电源芯片的输出电压的设置,减小了动态调压过程中的处理器计算量,避免了处理器由于动态调压造成的功耗过大;并且,还可根据读操作寄存器的地址以及目标调压等级的读寄存器值,通过对电源芯片上的读操作寄存器执行读操作,实现对电源芯片的输出电压的读取比对,从而判定其输出电压的档位是否与设定的输出电压档位相对应,保证了电源芯片的输出电压与设定电压的匹配,从而使得输出电压达到对应的目标调压等级的电压。

为保证动态调压控制的控制精度,在上述实施例的基础上,调压预配置参数还包括:写操作电压步幅的寄存器值。

相应的,S401中根据目标调压等级的写寄存器值以及写操作寄存器的地址,对电源芯片上的写操作寄存器执行写操作,以使得电源芯片输出目标调压等级的电压,可包括:

根据目标调压等级的写寄存器值、写操作寄存器的地址以及写操作电压步幅的寄存器值,对电源芯片上的写操作寄存器执行写操作,以使得电源芯片输出目标调压等级下写操作电压步幅的电压。

在具体实现过程中,可根据目标调压等级的写存储器值以及写操作电压的寄存器值,确定目标调压等级下写操作寄存器对应的目标参数值,并根据写操作寄存器的地址,将目标调压等级下写操作寄存器对应的目标参数值,写入至写操作寄存器中,使得电源芯片将输出电压设置为目标调压等级下写操作电压步幅的电压,从而使得电源芯片将输出电压调节为目标调压等级下写操作电压步幅的电压。

本实施例的方法,可在确定目标调压等级的情况下,结合目标调压等级的写寄存器值以及写操作电压步幅,对电源芯片的输出电压进行设置,可避免过大调压等级下的输出电压设置,实现了对电源芯片输出电压在目标调压等级下的细分调整设置,从而保证了动态调压的精度以及效果。

在上述实施例的基础上,为保证动态调压控制的控制精度,在上述实施例的基础上,调压预配置参数还可包括:读操作电压步幅的寄存器值。

相应的,S403中根据输出电压参数值,以及目标调压等级的读寄存器值,确定电源芯片的输出电压是否达到目标调压等级对应的电压,可以包括:

根据输出电压参数值、读操作电压步幅的寄存器值,以及目标调压等级的读寄存器值,确定电源芯片的输出电压是否达到目标调压等级下读操作电压步幅的电压。

在具体实现过程中,可将读操作电压步幅的寄存器值和目标调压等级的读寄存器值进行求和之后,将其与读取到的输出电压参数值进行比对,以确定输出电压是否达到目标调压等级下读操作电压步幅的电压。

需要说明的是,写操作电压步幅和读操作电压步幅的寄存器值可以相同,也就是说,写操作电压步幅和读操作电压步幅相同。其中,写操作电压步幅和读操作电压步幅的寄存器值可以为可调值,可通过写操作电压步幅和读操作电压步幅的寄存器值的可调,实现写操作电压步幅和读操作电压步幅的可调,进而实现对电压控制的精细度的调整。例如,写操作电压步幅和读操作电压步幅越小,其电压控制的精细度则更高。

本实施例的方法,还可在确定目标调压等级的情况下,结合目标调压等级的读寄存器值以及读操作电压步幅,对读取到的电源芯片的输出电压进行比对,以确定输出电压是否达到相应设置的目标调压等级下读操作电压步幅的电压,实现了对电源芯片的输出电压的精细控制,从而保证了动态调压的精度以及效果,进而保证了处理器的运行更加稳定。

为更清楚的理解,本申请各实施例所提供的调压控制方法,通过图表以32位的接口寄存器对接口寄存器中存储的电源芯片的调压预配置参数进行示例。

如下表1为调压预配置参数包含的各类信息的示例。

表1

如上表1所示,例如可从偏移为0x00,长度为4字节的存储单位中获取操作模式信息、处理器上的通信接口的端口号、电源芯片上通信接口的地址、写操作寄存器的地址、读操作寄存器的地址。其中,Bit[0]的值为:操作模式信息,若为0,则指示操作模式信息为第一操作模式如8bit模式;若为1,则指示操作模式信息为第二操作模式如16bit模式,其分别用于指示调压控制时,向电源芯片发出的调压控制信号的数据量也就是位宽大小为8bit或者16bit。Bit[3:1]为预留比特位。Bit[7:4]的值用于指示处理器上的通信接口的端口号,如处理器上的IIC总线接口的端口号。Bit[15:8]的值用于指示电源芯片上通信接口的地址,如电源芯片上的IIC总线接口的地址。Bit[23:16]和Bit[31:24]分别用于指示电源芯片上的写操作寄存器和读操作寄存器的地址。

如上表1所示,还可从偏移为0x04,长度为4字节的存储单位中获取写操作电压步幅和读操作电压步幅,其中,Bit[15:0]和Bit[31:16]的值分别用于写操作电压步幅和读操作电压步幅。

继续参照表1,可从偏移为0x08,长度为4字节的存储单位中获取level0的写寄存器值以及level1的写寄存器值,其中,Bit[15:0]和Bit[31:16]的值分别用于level0的写寄存器值和level1的写寄存器值;可从偏移为0x0C,长度为4字节的存储单位中获取level2的写寄存器值以及level3的写寄存器值,其中,Bit[15:0]和Bit[31:16]的值分别用于level2的写寄存器值和level3的写寄存器值;可从偏移为0x10,长度为4字节的存储单位中获取level0的读寄存器值以及level1的读寄存器值,其中,Bit[15:0]和Bit[31:16]的值分别用于level0的读寄存器值和level1的读寄存器值;可从偏移为0x14,长度为4字节的存储单位中获取level2的读寄存器值以及level3的读寄存器值,其中,Bit[15:0]和Bit[31:16]的值分别用于level2的读寄存器值和level3的读寄存器值。

写操作电压步幅和读操作电压步幅,主要是为了对调压等级又称档位电压进行细分。比如level0的电压为720mV,level1的电压760mV,如果写操作电压步幅和读操作电压步幅设置成20mV的话那从level0调整到level1会经过三档(720mV-740mV-760mV),如果写操作电压步幅和读操作电压步幅设置成10mV的话那从level0调整到level1会经过五档(720mV-730mV-740mV-750mV-760mV)。注意,写操作电压步幅和读操作电压步幅的寄存器值并不一定等于实际电压步幅值(比如10mV寄存器不一定设置成0xA),且写操作电压步幅和读操作电压步幅对应的细分挡位须相等。

其余的各调压等级的读写寄存器值,主要是设置调压等级,也就是调压档位,用于与频率做匹配。比如level0的电压成720mV,则对应的DVFS频率为500MHz;level1的电压为760mV,对应的DVFS频率为666MHz等等。这里设置的各调压等级下读写寄存器值处理器是不会做任何处理的,如果要调整到指定电压,处理器会直接将对应level的读写寄存器值直接通过通信接口发送出去,可用通信协议分析仪查看所发送的值就是设置的对应等级的读写寄存器值。所以,与读写操作电压步幅类似,它设置的值也不一定等于实际的电压值(因为寄存器值和实际电压值可能存在一定的计算关系,这取决于电源芯片)。

在一个实施例中,若电源芯片的通信地址,如电源芯片的IIC总线接口的地址为0x60,操作模式为16bits模式,处理器上通信接口的信息如IIC总线接口的端口号为IIC2,电源芯片上写操作寄存器的地址为(VOUT_COMMAND)为21h,写寄存器值和设置的目标输出电压值对应的计算关系为:将二进制的写寄存器值转换为10进制,即可得到目标输出电压值。电源芯片上的读操作寄存器的地址(READ_VOUT)为0x8B,同样,读操作寄存器读出的读寄存器值转换为10进制即为读取的实际输出电压值。

对于读写操作电压步幅的寄存器值,实际的电压步幅值转换为16进制就是读写操作步幅的寄存器值了,因此,可根据预设电压幅值直接转换为16进制,得到0x14,也就是说,预设电压幅值为20mV,则相应的读写操作步幅的寄存器值均为0x14。

因此,对于本实施例所涉及的电源芯片,32位的接口寄存器中所配置的该电源芯片的电压预配置参数可以为如下表2所示。

表2

在另一个实施例中,若电源芯片的通信地址,如电源芯片的IIC总线接口的地址为0x20,其余信息中操作模式、处理器上通信接口的信息、电源芯片上写操作寄存器以及读操作寄存器的地址的配置方式,与上述实施例类似,在此不再赘述。

由于写操作寄存器中的MFR_VREF_DIS_FSLOW位,也就是Bit[15:8]通常为固定值如0x3C。以目标输出电压值为5mV为例,其目标输出电压值Vout=(21h[7:0]+49)/2*5*2mV(实际值最后还需要除以1/2),因此,写操作寄存器的设置值为21h[7:0]=Vout/5-49,从该计算函数可以得知,写操作寄存器的level值,即调压等级的写寄存器值与输出电压成线性关系,而高8位(MFR_VREF_DIS_FSLOW位)的值不会变化,因此,如果要设置目标输出电压为720mV电压,则对应的写寄存器值应该设置为0x3C5F,其他以此类推,可得到其它各调压等级的写寄存器值。需要注意的是,计算过程中可能会出现小数,那对于实际电压来讲,如果出现小数的话建议向上取整再来计算其16进制值。

对于读操作寄存器的值与输出电压之间的关系为输出电压Vout=8Bh[7:0]*3.125mV,所以,各调压等级的读寄存器值和输出电压的计算方法为8Bh[7:0]=Vout/3.125。对于调压等级的电压为720mV,通过计算可以得知,720/3.125=230.4,注意,这里出现了小数,由于这里是将调压等级的读寄存器的值与实际读出电压做对比,所以可能会出现不相等的情况。为了避免不相等的情况出现,固件内对这两个值的判断做了冗余设计,即两个值的差值不大于步幅的1/2即认为两个值相等,所以这个值设定与对应调压等级的写寄存器的值相近即可,这里8Bh[7:0]可以设置为0xE7,其余以此类推。

对于读写操作电压步幅的寄存器值,由于本电源芯片的各调压等级的读写寄存器的值的计算方法不一致,所以这里20mV对应的读写操作电压步幅的寄存器值也不一致,但是这个值有个简单的计算方法,就是可以直接将相邻两个调压等级的读寄存器值相减,然后除以步幅对应的调压等级即可。比如,这里电压步幅为20mV,对应的调压等级为(760-720)/20=2级,所以写操作电压步幅的寄存器值可以这样计算:(0x3C67-0x3C5F)/2=4;写操作电压步幅的寄存器值可以这样计算:(0xF4-0xE7)/2=6(这里也出现了小数6.5,因为对于各调压等级下读寄存器值来讲有1/2步幅的冗余,所以可以设置6或者7)。

因此,对于本实施例所涉及的电源芯片,32位的接口寄存器中所配置的该电源芯片的电压预配置参数可以为如下表3所示。

表3

在采用上述方式将电源芯片的调压预配置参数进行配置的情况下,只需从需将调压预配置参数中各调压等级的配置参数与运行状态参数如频率进行绑定,便可使得处理器在进行动态调压过程中基于当前的运行状态参数获取目标调压等级的配置参数,即可进行动态电压的调整,无需调压数据计算,从而减小了处理器在动态调压过程中的计算量。

下述对用以执行的本申请所提供的调压控制方法的装置及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。

图5为本申请实施例提供的一种调压控制装置的示意图,如图5所示,调压控制装置500,可应用于处理器,其可包括:

第一获取模块501,用于若达到预设调压触发条件,则获取处理器的运行状态参数;

第二获取模块502,用于根据运行状态参数,从电源芯片的调压预配置参数中,获取目标配置参数。

控制模块503,用于根据目标配置参数,控制电源芯片对处理器的输出电压进行调压控制。

在一种可能实现示例中,每个调压等级的配置参数包括:每个调压等级的写操作参数,目标调压等级的配置参数包括:目标调压等级的写操作参数。

控制模块503,具体用于根据目标调压等级的写操作参数,控制电源芯片输出目标调压等级的电压。

在一种可能实现示例中,每个调压等级的配置参数还包括:每个调压等级的读操作参数;目标调压等级的配置参数还包括:目标调压等级的读操作参数。

控制模块503,具体用于根据目标调压等级的读操作参数,确定电源芯片的输出电压是否达到目标调压等级的电压;若未达到目标调压等级对应的电压,则根据运行状态参数,重新获取目标调压等级的写操作参数以及目标调压等级的读操作参数,直至基于重新确定的目标调压等级的写操作参数和读操作参数对电源芯片进行控制后电源芯片的输出电压达到重新确定的目标调压等级。

在一种可能实现示例中,调压预配置参数还包括:电源芯片上写操作寄存器的地址;每个调压等级的写操作参数包括:每个调压等级的写寄存器值,目标调压等级的写操作参数包括:目标调压等级的写寄存器值。

控制模块503,具体用于根据目标调压等级的写寄存器值以及写操作寄存器的地址,对电源芯片上的写操作寄存器执行写操作,以使得电源芯片输出目标调压等级的电压。

在一种可能实现示例中,调压预配置参数还包括:电源芯片上读操作寄存器的地址;每个调压等级的读操作参数包括:每个调压等级的读寄存器值,目标调压等级的读操作参数包括:目标调压等级的读寄存器值。

控制模块503,具体用于根据读操作寄存器的地址,对电源芯片上的读操作寄存器执行读操作,得到电源芯片的输出电压参数值;根据输出电压参数值,以及目标调压等级的读寄存器值,确定电源芯片的输出电压是否达到目标调压等级的电压。

在一种可能实现示例中,调压预配置参数还包括:写操作电压步幅的寄存器值;

控制模块503,具体用于根据目标调压等级的写寄存器值、写操作寄存器的地址以及写操作电压步幅的寄存器值,对电源芯片上的所述写操作寄存器执行写操作,以使得电源芯片输出目标调压等级下写操作电压步幅的电压。

在一种可能实现示例中,调压预配置参数还包括:读操作电压步幅的寄存器值;

控制模块503,具体用于根据输出电压参数值、读操作电压步幅的寄存器值,以及目标调压等级的读寄存器值,确定电源芯片的输出电压是否达到目标调压等级下读操作电压步幅的电压。

在一种可能实现示例中,调压预配置参数还包括:电源芯片的通信地址、处理器上通信接口的信息、以及操作模式信息中的至少一项参数;

控制模块503,具体用于根据至少一项参数,以及目标调压等级的配置参数,控制电源芯片输出目标调压等级的电压。

在一种可能实现示例中,调压预配置参数预先集成在:处理器的固件程序中的调压代码中,或者,调压代码对应的参数表中,或者,固件程序对应的预设存储区域中。

上述装置用于执行前述实施例提供的调压控制方法,其实现原理和技术效果类似,在此不再赘述。

以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。

可选地,本发明还提供一种程序产品,例如计算机可读存储介质,其可以为非易失性存储介质,其可包括程序,该程序在被处理器执行时用于执行上述方法实施例。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

相关技术
  • 片上系统及其时钟频率动态控制方法和装置
  • 用于片上系统的时钟偏差检测方法和装置
  • 活性炭上料系统及其控制方法和装置
  • 一种用于美容设备上饮用水装置水路控制系统及方法
  • 一种调压系统、片上系统及调压方法
  • 片上系统低功耗控制方法、装置、片上系统及电子设备
技术分类

06120116484436