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

一种动态调节功耗的电路

文献发布时间:2023-06-19 10:14:56


一种动态调节功耗的电路

技术领域

本发明涉及电源门控领域,尤其涉及一种动态调节功耗的电路。

背景技术

FPGA内部由不同模块阵列拼成,模块阵列中可包括多种模块,例如BRAM、DSP、PLB(LUT/DFF逻辑)、时钟树等。上电后上述模组的功耗开销很大。随着工艺的不断进步,FPGA的规模也越来越大,对应的FPGA功耗不断上升。

电源门控(power gating)电路为一种通过控制电路模块的供电,来减小休眠或待机模式下电路模块的漏电功耗的一种常见技术,在FPGA设计中有着广泛应用,所控制的电路模块,可以在芯片内部,也可以在芯片外部。如图1所示,图1为现有技术中一种电源门控电路的结构示意图,根据第一MOS管M0的栅极电压控制用电模块的模块电压。

发明内容

为实现动态、静态降低用电模块功耗的目的,解决现有技术中存在的缺陷。

本发明实施例提出了一种基于电源门控电路的动态调节功耗的电路,包括第一MOS管、用电模块和低压差线性稳压器LDO电路。

其中,第一MOS管的源极连接电源电压,第一MOS管的漏极连接用电模块的电压输入端,将第一MOS管的漏极电压作为用电模块的模块电压。LDO电路的输出端连接第一MOS管的栅极,将LDO的输出电压作为第一MOS管的栅极电压;通过改变LDO电路的输出电压,动态调节用电模块的模块电压。

一个实施例中,LDO电路包括:比较放大器、第二MOS管、第一可调电阻和第二可调电阻;其中,比较放大器第一输入端连接基准电压;比较放大器第二输入端连接第一可调电阻的第二端,以及第二可调电阻的第一端;比较放大器的输出端连接第二MOS管的栅极;第二MOS管的源极连接电源电压;第二MOS管的漏极连接第一可调电阻的第一端;第二MOS管的栅极作为LDO电路的输出端;第二可调电阻的第二端接地;

通过向第一可调电阻和/或第二可调电阻施加外部的输出电压选择信号,根据输出电压选择信号改变第一可调电阻和/或第二可调电阻的阻值,动态调节LDO电路的输出电压。

一个实施例中,动态调节功耗的电路还包括:第一开关、第二开关和第三开关;第一开关、第二开关、第三开关和第一MOS管组成开关模块;其中,第一开关的第一端连接第一MOS管的栅极,第一开关的第二端连接LDO电路的输出端;第二开关的第一端连接第一MOS管的栅极,第二开关的第二端连接电源电压;第三开关的第一端连接第一MOS管的栅极,第三开关的第二端接地。

进一步地实施例中,动态调节功耗的电路还包括N个第一开关、N个第二开关、N个第三开关和N个第一MOS管;一个第一开关、一个第二开关、一个第三开关和一个第一MOS管组成一个开关模块,共组成N+1个相同结构的开关模块;其中,

针对每个开关模块中的第一开关的第一端连接第一MOS管的栅极,第一开关的第二端连接LDO电路的输出端;第二开关的第一端连接第一MOS管的栅极,第二开关的第二端连接电源电压;第三开关的第一端连接第一MOS管的栅极,第三开关的第二端接地;

基于组成的N+1个开关模块,增加电压监控模块,检测电路工作时的用电模块输入端的压降,动态调节N+1个开关模块的打开个数。例如,当用电模块为高速模式时,增加并联的开关模块的打开数量,以提供足够的电流和较小的电压降;当用电模块为低功耗模式时,则减少并联的开关模块的打开数量,降低瞬态峰值电流和平均功耗,满足低功耗的需求。

本申请实施例的优点在于:在传统的电源门控电路上增加三条控制支路,三条支路分别连接电源电压、地电压和LDO电路。通过三个控制信号分别控制三条控制支路的导通与关断,并通过另一控制信号控制LDO电路的输出电压,进而控制电源门控电路中用电模块的模块电压。可以通过FPGA芯片内置的配置位给定四个控制信号的值,在芯片每次上电时对电路进行配置,实现电路的低功耗静态配置优化。还可以通过内部逻辑电路控制四个控制信号的值,实现根据用户的编辑在芯片系统运行中动态切换工作模式的低功耗动态切换优化。进一步地,使用动态开关动态调节电路模块的个数,可以进一步降低系统平均和峰值电流。

附图说明

图1为现有技术中一种电源门控电路的结构示意图;

图2为本发明实施例的一种动态调节功耗的电路结构示意图;

图3为本发明实施例的一种用于动态调节EMB模块功耗的电路结构示意图;

图4为本发明实施例的一种由多个开关模块组成的动态调节功耗的电路结构示意图;

图5为本发明实施例的一种由两个开关模块组成的动态调节功耗的电路结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

FPGA内部由不同的模块阵列拼成。现有技术中常采用电源门控power gating电路的方式调整模块阵列中各用电模块的工作状态。进而实现降低FPGA功耗的作用。

具体地,如图1所示,用电模块与电源电压VDD之间存在第一MOS管M0。M0的栅极接收外部的睡眠信号sleep作为控制信号,根据sleep的电位高低,调节M0的导通或关断。

例如,当sleep为低电位时,M0导通,用电模块接收VDD作为模块电压,处于正常工作模式;当sleep为高电位时,M0关断,用电模块接收不到电压,处于断电模式,以此降低了用电模块在断定模式下的功耗。

本发明实施例中通过改变附图1中第一MOS管M0的栅极电压,实现动态调节用电模块的模块电压的目的。具体方法为,在M0的栅极上游增加多路输入信号,并由各支路的开关进行控制,根据M0栅极电压的需求动态调整各支路的导通或者关断。

一个具体实施例中,如图2所示,该动态调节功耗的电路包括LDO电路、开关模块和用电模块。其中,开关模块包括第一开关s1、第二开关s2、第三开关s3和第一MOS管M0。s1、s2和s3分别对应控制M0的栅极上游的三条支路。其中,第一支路包括LDO电路和s1,M0的栅极连接s1的第一端,s1的第二端连接LDO电路的输出端;第二支路包括s2,M0的栅极连接s2的第一端,s2的第二端连接电源电压VDD;第三支路包括s3,M0的栅极连接s3的第一端,s3的第二端接地。

其中,第二支路和第三支路用于保持现有技术中电源门控电路的对应控制方式。即,当s2连通,且s1和s3断开时,第二支路连通,M0栅极连接VDD(高电平),相当于附图1中sleep为高电平时的情况,使得M0关断,用电模块无接入电压,处于断电模式;当s3连通,且s1和s2断开时,第三支路连通,M0栅极接地(低电平),相当于附图1中sleep为低电平时的情况,使得M0导通,用电模块接收VDD作为模块电压,处于正常工作模式。

当s1连通,且s2和s3断开时,第一支路连通,M0栅极连接LDO电路的输出端,LDO电路的输出电压Vout作为M0的栅极电压Vgate。

LDO电路包括:比较放大器、第二MOS管M1、第一可调电阻R1和第二可调电阻R2。其中,比较放大器的第一输入端连接基准电压Vref,比较放大器的第二输入端连接R1的第二端和R2的第一端,比较放大器的输出端连接M1的栅极;M1的源极连接VDD,M1的漏极连接R1的第一端;M1的栅极作为LDO电路的输出端(即输出电压Vout),R2的第二端接地;其中,R1和R2串联后构成电阻反馈网络。

LDO电路通过电阻反馈网络构成一个负反馈闭环系统。当LDO电路的输出端电压增大时,通过电阻反馈网络提供反馈信号,比较放大器第二输入端电压上升,并通过和比较放大器第一输入端的基准电压Vref进行比较,调整比较放大器的输出信号,增大M1的栅极电压,降低LDO电路的输出电压Vout;反之,当LDO电路的输出端电压下降时,通过电阻反馈网络提供反馈信号,比较放大器第二输入端电压下降,并通过与比较放大器第一输入端的基准电压Vref进行比较,调整比较放大器的输出信号,减小M1的栅极电压,抬高LDO电路的输出电压Vout。

LDO电路的输出电压Vout=(1+R1/R2)Vref。

在M0的栅极电压Vgate由LDO电路的输出电压Vout提供的情况之下,通过外部的输出电压选择信号Vout_sel,进一步控制LDO电路中R1和R2的阻值,以调整LDO电路的输出电压。进而,调整用电模块的模块电压。这一方式可使用电模块的模块电压尽可能的适配不同工作模式下的电压需求。

例如,当用电模块为存储器模块EMB模块时,如图3所示。

根据EMB模块的常规工作模式预设相对应的4种不同的模块电压。由外部的动态使能信号dyn_en控制s1,由外部的睡眠信号sleep控制s2,由外部的工作信号active控制s3,以及由外部的输出电压选择信号Vout_sel控制LDO电路的输出电压。通过改变M0栅极电压的方式,动态调节EMB模块的模块电压VDD_emb。如表1所示:

表1

由表1可知,当EMB模块需要处于正常工作模式时,使active为高电平,导通s3,dyn_en、sleep为低电平,断开s1和s2,使模块电压VDD_emb为电源电压VDD。

当EMB模块需要处于断电模式时,使sleep为高电平,导通s2,dyn_en、active为低电平,断开s1和s3,使模块电压VDD_emb为0。

当EMB模块需要处于慢速度工作模式时,使active、sleep为低电平,断开s2和s3,dyn_en为高电平,导通s1,使模块电压VDD_emb根据M0的栅极电压产生变化。具体地,此时的Vout_sel为第一预设值,R1和R2根据第一预设值分别调整阻值为R1_1和R2_1,以(1+R1_1/R2_1)Vref作为LDO电路的输出电压Vout1,进而作为M0的栅极电压,使模块电压为VDD_emb-Vout1。

当EMB模块需要处于数据保持(休眠状态)模式时,使active、sleep为低电平,断开s2和s3,dyn_en为高电平,导通s1,使模块电压VDD_emb根据M0的栅极电压产生变化。具体地,此时的Vout_sel为第二预设值,R1和R2根据第二预设值分别调整阻值为R1_2和R2_2,以(1+R1_2/R2_2)Vref作为LDO电路的输出电压Vout2,进而作为M0的栅极电压,使得模块电压为VDD_emb-Vout2。

需要说明,上述慢速度工作模式和数据保持模式均属于工作电压低于VDD的低功耗模式。即,当需要用电模块的工作电压低于VDD时,通过配置Vout_sel使LDO输出电压为用电模块预实现的工作电压所对应M0的栅极电压值。

上述外部的动态使能信号dyn_en、睡眠信号sleep、工作信号active和输出电压选择信号Vout_sel的第一预设值及第二预设值可以通过芯片内置的配置位来给定,在芯片每次上电时配置进去,可以实现功耗的静态优化配置。也可以通过由内部逻辑fabric电路给定上述外部的动态使能信号dyn_en、睡眠信号sleep、工作信号active和输出电压选择信号Vout_sel,实现根据用户的编程,在芯片系统运行中动态切换工作模式,从而实现功耗的动态优化配置。

进一步的,可以采用多个开关模块并联的方式,优化电路结构,实现用电模块在高速度和低功耗模式下的动态切换。例如,当用电模块为高速模式时,增加并联的开关模块的打开数量,以提供足够的电流和较小的电压降;当用电模块为低功耗模式时,则减少并联的开关模块的打开数量,降低瞬态峰值电流和平均功耗。

为实现上述目的,如图4所示,该动态调节功耗的电路包括LDO电路、N个开关模块和用电模块,N为正整数。

其中,LDO电路包括:比较放大器、第二MOS管M1、第一可调电阻R1和第二可调电阻R2。其中,比较放大器的第一输入端连接基准电压Vref,比较放大器的第二输入端连接R1的第二端和R2的第一端,比较放大器的输出端连接M1的栅极;M1的源极连接VDD,M1的漏极连接R1的第一端;M1的栅极作为LDO电路的输出端(输出电压Vout);R2的第二端接地。每个开关模块均包括第一开关s1[s1_1:s1_N]、第二开关s2[s2_1:s2_N]、第三开关s3[s3_1:s3_N]和第一MOS管M0[M0_1:M0_N]。以第N个开关模块为例,第一开关s1_N的第一端连接第一MOS管M0_N的栅极,s1_N的第二端连接LDO电路的输出端;第二开关s2_N的第一端连接M0_N的栅极,s2_N的第二端连接电源电压;第三开关s3_N的第一端连接M0_N的栅极,s3_N的第二端接地;M0_N的源极连接电源电压,M0_N的漏极连接用电模块的电压输入端。

根据用电模块的模块电压需求,动态控制外部的N个动态使能信号dyn_en[dyn_en_1:dyn_en_N]分别控制对应的各s1,动态控制外部的N个睡眠信号sleep[sleep_1:sleep_N]分别控制对应的各s2,动态控制外部的N个工作信号active[active_1:active_N]分别控制对应的各s3;以及动态控制外部的输出电压选择信号Vout_sel控制LDO电路的输出电压,进而控制N个M0的栅极电压。将N个M0的漏极电压作为用电模块的模块电压。

控制N个s1、N个s2和N个s3的导通数量,即并联的开关模块数量。通过外部电压监控模块和电流监控模块,检测电路工作时并联不同数量开关模块的电压降和电流大小,可以得到开关模块并联数量与电路中漏电电流、最大压降和最大瞬间电流的对应关系。

当图4所示的用电模块在正常工作模式下时,打开不同数量的开关模块中s3的功耗情况,即多个开关模块的s1和s2均关断,根据s3导通的数量,确定开关模块的接入数量。具体地,s3导通数量等于开关模块并联接入电路的数量。如表2所示:

表2

由表2可知,当并联的N个开关模块仅导通其中1个开关模块的s3,其他开关均处于断开状态时,电路的漏电电流为30%,最大压降为4.55x,最大瞬间电流为58%,此时的电路相当于图2中导通开关s3且断开s1和s2时;当并联的N个开关模块导通其中2个开关模块的s3,其他开关均处于断开状态时,电路的漏电电流为39%,最大压降为3x,最大瞬间电流为74%;当并联的N个开关模块导通其中4个开关模块的s3,其他开关均处于断开状态时,电路的漏电电流为56%,最大压降为1.94x,最大瞬间电流为89%;当并联的N个开关模块导通其中10个开关模块的s3,其他开关均处于断开状态时,电路的漏电电流为100%,最大压降为1,最大瞬间电流为100%。

与上述正常工作模式下开关模块的数量与功耗情况的对应关系相似。结合表1可知,当通过开关s1使用电模块处于慢速度工作模式或数据保持模式时,关断s2和s3,根据导通s1的数量,打开不同数量的开关模块。可以动态调整慢速度工作模式或数据保持模式下的用电模块的功耗情况。

在一个具体实施例中,如图5所示,该动态调节功耗的电路包括LDO电路、第一开关模块、第二开关模块和用电模块。

其中,电模块为存储器模块EMB模块。LDO电路包括:比较放大器、第二MOS管M1、第一可调电阻R1和第二可调电阻R2。其中,比较放大器的第一输入端连接基准电压Vref,比较放大器的第二输入端连接R1的第二端和R2的第一端,比较放大器的输出端连接M1的栅极;M1的源极连接VDD,M1的漏极连接R1的另一端;M1的栅极作为LDO电路的输出端(输出电压Vout);R2的第二端接地。第一开关模块包括开关s1_1、开关s2_1、开关s3_1和MOS管M0_1。第二开关模块包括开关s1_2、开关s2_2、开关s3_2和MOS管M0_2。s1_1和s1_2的第二端连接LDO电路的输出端,s2_1和s2_2的第二端连接VDD,s3_1和s3_2的第二端接地;s1_1、s2_1、s3_1的第一端连接M0_1的栅极;s1_2、s2_2和s3_2的第一端连接M0_2的栅极。M0_1和M0_2的源极连接VDD,M0_1和M0_2的漏极连接EMB模块的电压输入端。

根据EMB模块的电压需求预设相对应的6种不同的工作模式,并提供相对应的模块电压。由外部的动态使能信号dyn_en_1控制s1_1,由外部的睡眠信号sleep_1控制s2_1,由外部的工作信号active_1控制s3_1;由外部的动态使能信号dyn_en_2控制s1_2,由外部的睡眠信号sleep_2控制s2_2,由外部的工作信号active_2控制s3_2;以及由外部的输出电压选择信号Vout_sel控制LDO电路的输出电压。通过改变M0_1和M0_2栅极电压的方式,动态调节EMB模块的模块电压VDD_emb。如表3所示:

表3

由表3可知,当EMB模块需要处于正常工作时,使s3_1和s3_2导通,s1_1、s2_1、s1_2和s2_2断开,使得模块电压VDD_emb为电源电压VDD。

当EMB模块需要处于正常工作省功耗模式时,使s3_1和s2_2导通,s1_1、s2_1、s1_2和s3_2断开,使得模块电压VDD_emb为VDD。

虽然正常工作模式和正常工作省功耗模式时,模块电压均为VDD。但由于正常工作省功耗模式下,s1_2断开、s2_2导通,使得M0_2不向工作模块提供电压电流。使得EMB模块在正常工作省功耗模式时的工作电流比正常工作时更小。实现节省功耗的目的。

当EMB模块需要处于断电模式时,使s2_1和s2_2导通,s1_1、s3_1、s1_2和s3_2断开,使得模块电压VDD_emb为0。

当EMB模块需要处于慢速度工作模式时,使s1_1和s1_2导通,s2_1、s3_1、s2_2和s3_2断开,使得模块电压VDD_emb根据M0_1和M0_2的栅极电压产生变化。具体地,此时的Vout_sel为第一预设值,R1和R2根据第一预设值调整为R1_1和R2_1,以(1+R1_1/R2_1)Vref作为LDO电路的输出电压Vout1,进而作为M0_1和M0_2的栅极电压,使得模块电压为VDD_emb-Vout1。

当EMB模块需要处于慢速度工作省功耗模式时,使s1_1和s2_2导通,s2_1、s3_1、s1_2和s3_2断开,使得模块电压VDD_emb根据M0_1的栅极电压产生变化。具体地,此时的Vout_sel为第一预设值,R1和R2根据第一预设值调整为R1_1和R2_1,以(1+R1_1/R2_1)Vref作为LDO电路的输出电压Vout1,进而作为M0_1的栅极电压,同时,M0_2的栅极电压为电源电压VDD,M0_2不向工作模块提供电压电流,使得模块电压为VDD_emb-Vout1。

与上述正常工作模式和正常工作省功耗模式的情况相同。由于慢速度工作省功耗模式时,s1_2断开、s2_2导通,使得M0_2不向工作模块提供电压电流。使得EMB模块在慢速度工作省功耗模式时的工作电流比慢速度工作模式时更小。实现节省功耗的目的。

当EMB模块需要处于数据保持(休眠状态)模式时,使s1_1和s2_2导通,s2_1、s3_1、s1_2和s3_2断开,使得模块电压VDD_emb根据M0_1的栅极电压产生变化。具体地,此时的Vout_sel为第二预设值,R1和R2根据第二预设值调整为R1_2和R2_2,以(1+R1_2/R2_2)Vref作为LDO电路的输出电压Vout2,进而作为M0_1的栅极电压,同时,M0_2的栅极电压为电源电压VDD,M0_2不向工作模块提供电压电流,使得模块电压为VDD_emb-Vout2。

上述慢速度工作省功耗模式和数据保持(休眠状态)模式采用了同样的各开关置位状态。通过配置Vout_sel使LDO输出电压为EMB模块预实现的工作电压所对应M0_1的栅极电压值。

上述外部的动态使能信号dyn_en_1、dyn_en_2、睡眠信号sleep_1、sleep_2、工作信号active_1、active_2和输出电压选择信号Vout_sel的第一预设值及第二预设值可以通过芯片内置的配置位来给定,在芯片每次上电时配置进去,可以实现功耗的静态优化配置。也可以通过由内部逻辑fabric电路给定上述外部各信号,实现根据用户的编程,在芯片系统运行中动态切换工作模式,从而实现功耗的动态优化配置。

本发明公开的一种动态调节功耗的电路。在传统的电源门控电路上增加三条控制支路,三条支路分别连接电源电压、地电压和LDO电路。通过三个控制信号分别控制三条控制支路的导通与关断,并通过另一控制信号控制LDO电路的输出电压,进而控制电源门控电路中用电模块的模块电压。可以通过FPGA芯片内置的配置位给定四个控制信号的值,在芯片每次上电时对电路进行配置,实现电路的低功耗静态配置优化。还可以通过内部逻辑电路控制四个控制信号的值,实现根据用户的编辑在芯片系统运行中动态切换工作模式的低功耗动态切换优化。

以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种动态调节功耗的电路
  • 一种国产服务器功耗实时动态调节方法
技术分类

06120112477103