一种基于状态跳转的处理器power控制系统转让专利

申请号 : CN202311378129.1

文献号 : CN117111718B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 韩子奇邵健胡鹏孙维东罗庆

申请人 : 中国电子科技集团公司第五十八研究所

摘要 :

本发明涉及集成电路功耗技术领域,特别涉及一种基于状态跳转的处理器power控制系统。包括:power控制状态机模块,用于控制产生时钟打开和关断信号stop_clk_n,复位和复位释放控制信号pwr_reset_n,处理器clamp控制信号pwr_clamp_n,处理器上电和下电控制信号pwr_up_req_n;可配置延时的同步电路模块,通过parameter参数配置同步的延时时间,用于作为相应执行电路的完成响应信号;时钟控制模块,用于控制处理器内部的时钟打开和关闭;复位控制模块,用于控制处理器内部的复位和复位释放。本发明通过power状态机的控制流程,可以使处理器power控制更加稳定可靠。

权利要求 :

1.一种基于状态跳转的处理器power控制系统,其特征在于,包括:

power控制状态机模块,用于控制产生时钟打开和关断信号stop_clk_n,复位和复位释放控制信号pwr_reset_n,处理器clamp控制信号pwr_clamp_n,处理器上电和下电控制信号pwr_up_req_n;

可配置延时的同步电路模块,通过parameter参数配置同步的延时时间,用于作为相应执行电路的完成响应信号,用于确保执行电路执行完毕后再进行状态跳转;其中Parameter参数配置的延时大于执行电路完成的时间;

时钟控制模块,用于控制处理器内部的时钟打开和关闭;

复位控制模块,用于控制处理器内部的复位和复位释放;

还包括如下的power控制状态机模块的状态跳转控制流程:

power控制状态机模块在状态机复位期间处于P_ACTIVE状态,当处理器发出下电请求信号pwr_off_req时,此时pwr_off_req等于1,状态机由P_ACTIVE状态跳转到P_CLOCK_OFF状态;

状态机将stop_clk_n信号拉低,stop_clk_n是通过时钟控制模块控制,stop_clk_n低电平时关闭处理器时钟,stop_clk_n高电平时打开处理器时钟,P_CLOCK_OFF状态将处理器时钟关闭,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于0时,状态机由P_CLOCK_OFF状态跳转到P_CLAMP_ON状态;

P_CLAMP_ON状态时,pwr_clamp_n信号输出低电平,使能处理内部的clamp,钳制信号电平,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于0时,状态机由P_CLAMP_ON状态跳转到P_RESET_ON状态,否则状态机状态保持;

P_RESET_ON状态时,pwr_reset_n输出低电平,此状态用于复位处理器,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于0时,状态机由P_RESET_ON状态跳转到P_PWR_DOWN状态,P_PWR_DOWN状态用于控制处理器内部的power switch,将处理器下电;

P_PWR_DOWN状态时,pwr_reset_n输出高电平,当处理器内部的power switch下电完成后,处理器输出pwr_up_ack_n高电平,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;

P_PWR_DOWN状态时,当pwr_up_ack_sync_n等于1时,状态机由P_PWR_DOWN状态跳转到P_SLEEP状态,P_SLEEP状态表示处理器处于睡眠状态;

当处理器发出wakeup信号后,即wakeup处于高电平时,状态机由P_SLEEP状态跳转到P_PWR_UP状态;

P_PWR_UP状态时,pwr_up_req_n输出低电平,pwr_up_req_n用于控制处理器内部的powerswitch,将处理器上电,处理器上电完成后返回pwr_up_ack_n信号,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;

P_PWR_UP状态时,当pwr_up_ack_sync_n等于0时,状态机由P_PWR_UP状态跳转到P_CLAMP_OFF状态;

P_CLAMP_OFF状态时,pwr_clamp_n输出高电平,关闭处理器内部clamp,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于1时,状态机由P_CLAMP_OFF状态跳转到P_CLOCK_ON状态状态,否则状态机状态保持;

P_CLOCK_ON状态时,stop_clk_n输出高电平,此时打开处理器时钟,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于1时,状态机由P_CLOCK_ON状态跳转到P_RESET_OFF状态,P_RESET_OFF状态用于释放处理器的复位信号;

P_RESET_OFF状态时,pwr_reset_n输出高电平,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于1时,状态机由P_RESET_OFF状态跳转到P_ACTIVE状态,P_ACTIVE状态时,处理器正常工作。

2.如权利要求1所述的一种基于状态跳转的处理器power控制系统,其特征在于,所述power控制状态机模块,包括如下十种状态:P_ACTIVE状态:处理器正常运行时的上电状态;

P_CLOCK_OFF状态:处理器时钟关断状态;

P_CLAMP_ON状态:Clamp打开状态,用于钳制处理器信号电平;

P_RESET_ON状态:处理器复位状态;

P_PWR_DOWN状态:处理器下电状态;

P_SLEEP状态:处理器睡眠状态;

P_PWR_UP状态:处理器上电状态;

P_CLAMP_OFF状态:Clamp关闭状态;

P_CLOCK_ON状态:处理器时钟打开状态;

P_RESET_OFF状态:处理器复位释放状态。

3.如权利要求2所述的一种基于状态跳转的处理器power控制系统,其特征在于,所述power控制状态机模块,还包括如下状态机输入控制信号:pwr_off_req:处理器发出的下电请求信号,在处理器将要睡眠时发出;

pwr_up_ack_n:处理器中power switch返回的信号,用于表示处理器是处于上电还是下电状态;

wakeup:处理器发出的上电请求信号,在处理器将要唤醒时发出。

4.如权利要求2所述的一种基于状态跳转的处理器power控制系统,其特征在于,所述power控制状态机模块,还包括如下状态机输出控制信号:stop_clk_n:在P_ACTIVE状态时,stop_clk_n输出高电平;P_CLOCK_OFF状态时,stop_clk_n输出低电平;P_SLEEP状态时,stop_clk_n输出低电平;P_CLOCK_ON状态时,stop_clk_n输出高电平;其余状态stop_clk_n保持;

pwr_clamp_n:在P_ACTIVE状态时,pwr_clamp_n输出高电平;P_CLAMP_ON状态时,pwr_clamp_n输出低电平;P_SLEEP状态时,pwr_clamp_n输出低电平;P_CLAMP_OFF状态时,pwr_clamp_n输出高电平;其余状态pwr_clamp_n保持;

pwr_reset_n:在P_ACTIVE状态时,pwr_reset_n输出高电平;P_RESET_ON状态时,pwr_reset_n输出低电平;P_SLEEP状态时,pwr_reset_n输出低电平;P_RESET_OFF状态时,pwr_reset_n输出高电平;其余状态pwr_reset_n保持;

pwr_up_req_n:在P_ACTIVE状态时,pwr_reset_n输出低电平;P_PWR_DOWN状态时,pwr_reset_n输出高电平;P_SLEEP状态时,pwr_up_req_n输出高电平;P_PWR_UP状态时,pwr_up_req_n输出低电平;其余状态pwr_up_req_n保持。

5.如权利要求1所述的一种基于状态跳转的处理器power控制系统,其特征在于,在通过parameter参数配置延时时,能够配置成二级同步、三级同步或四级同步;且每个同步电路的级数能够单独配置,互不影响。

说明书 :

一种基于状态跳转的处理器power控制系统

技术领域

[0001] 本发明涉及集成电路功耗技术领域,特别涉及一种基于状态跳转的处理器power控制系统。

背景技术

[0002] 目前移动设备对续航和散热有很高的要求。处理器低功耗对系统来说是非常重要。功耗一般分为静态功耗和动态功耗。静态功耗也常称为泄露电流,每当有供电就会产生。一般来说,泄露电流与芯片面积成正比。芯片面积越大,静态功耗越高。动态功耗是因为晶体管翻转,与时钟频率有关,影响每个周期改变状态的晶体管数量。时钟频率越高,动态功耗越高。现有技术中降低功耗的方法一般有两种:1)电源门控:电源门控是指关闭电源,没有了动态和静态电流;2)时钟门控:时钟门控是指关闭时钟输入,移除了动态功耗,还存在静态功耗。
[0003] 本发明主要是通过基于状态跳转的系统控制对处理器进行电源门控,以降低处理器功耗。对于多核系统,每个核心功耗很高,如果可以对某些核心进行电源门控,那么将可以降低多核系统的功耗。

发明内容

[0004] 本发明的目的在于提供一种基于状态跳转的处理器power控制系统,通过power状态机的控制流程,可以使处理器power控制更加稳定可靠。
[0005] 为解决上述技术问题,本发明提供了一种基于状态跳转的处理器power控制系统,包括:
[0006] power控制状态机模块,用于控制产生时钟打开和关断信号stop_clk_n,复位和复位释放控制信号pwr_reset_n,处理器clamp控制信号pwr_clamp_n,处理器上电和下电控制信号pwr_up_req_n;
[0007] 可配置延时的同步电路模块,通过parameter参数配置同步的延时时间,用于作为相应执行电路的完成响应信号,用于确保执行电路执行完毕后再进行状态跳转;其中Parameter参数配置的延时大于执行电路完成的时间;
[0008] 时钟控制模块,用于控制处理器内部的时钟打开和关闭;
[0009] 复位控制模块,用于控制处理器内部的复位和复位释放。
[0010] 优选的,所述power控制状态机模块,包括如下十种状态:
[0011] P_ACTIVE状态:处理器正常运行时的上电状态;
[0012] P_CLOCK_OFF状态:处理器时钟关断状态;
[0013] P_CLAMP_ON状态:Clamp打开状态,用于钳制处理器信号电平;
[0014] P_RESET_ON状态:处理器复位状态;
[0015] P_PWR_DOWN状态:处理器下电状态;
[0016] P_SLEEP状态:处理器睡眠状态;
[0017] P_PWR_UP状态:处理器上电状态;
[0018] P_CLAMP_OFF状态:Clamp关闭状态;
[0019] P_CLOCK_ON状态:处理器时钟打开状态;
[0020] P_RESET_OFF状态:处理器复位释放状态。
[0021] 优选的,所述power控制状态机模块,还包括如下状态机输入控制信号:
[0022] pwr_off_req:处理器发出的下电请求信号,在处理器将要睡眠时发出;
[0023] pwr_up_ack_n:处理器中power switch返回的信号,用于表示处理器是处于上电还是下电状态;
[0024] wakeup:处理器发出的上电请求信号,在处理器将要唤醒时发出。
[0025] 优选的,所述power控制状态机模块,还包括如下状态机输出控制信号:
[0026] stop_clk_n:在P_ACTIVE状态时,stop_clk_n输出高电平;P_CLOCK_OFF状态时,stop_clk_n输出低电平;P_SLEEP状态时,stop_clk_n输出低电平;P_CLOCK_ON状态时,stop_clk_n输出高电平;其余状态stop_clk_n保持。
[0027] pwr_clamp_n:在P_ACTIVE状态时,pwr_clamp_n输出高电平;P_CLAMP_ON状态时,pwr_clamp_n输出低电平;P_SLEEP状态时,pwr_clamp_n输出低电平;P_CLAMP_OFF状态时,pwr_clamp_n输出高电平;其余状态pwr_clamp_n保持。
[0028] pwr_reset_n:在P_ACTIVE状态时,pwr_reset_n输出高电平;P_RESET_ON状态时,pwr_reset_n输出低电平;P_SLEEP状态时,pwr_reset_n输出低电平;P_RESET_OFF状态时,pwr_reset_n输出高电平;其余状态pwr_reset_n保持。
[0029] pwr_up_req_n:在P_ACTIVE状态时,pwr_reset_n输出低电平;P_PWR_DOWN状态时,pwr_reset_n输出高电平;P_SLEEP状态时,pwr_up_req_n输出高电平;P_PWR_UP状态时,pwr_up_req_n输出低电平;其余状态pwr_up_req_n保持。
[0030] 优选的,在通过parameter参数配置延时时,能够配置成二级同步、三级同步或四级同步;且每个同步电路的级数能够单独配置,互不影响。
[0031] 优选的,所述power控制状态机模块的状态跳转流程如下:
[0032] power控制状态机模块在状态机复位期间处于P_ACTIVE状态,当处理器发出下电请求信号pwr_off_req时,此时pwr_off_req等于1,状态机由P_ACTIVE状态跳转到P_CLOCK_OFF状态;
[0033] 状态机将stop_clk_n信号拉低,stop_clk_n是通过时钟控制模块控制,stop_clk_n低电平时关闭处理器时钟,stop_clk_n高电平时打开处理器时钟,P_CLOCK_OFF状态将处理器时钟关闭,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于0时,状态机由P_CLOCK_OFF状态跳转到P_CLAMP_ON状态;
[0034] P_CLAMP_ON状态时,pwr_clamp_n信号输出低电平,使能处理内部的clamp,钳制信号电平,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于0时,状态机由P_CLAMP_ON状态跳转到P_RESET_ON状态,否则状态机状态保持;
[0035] P_RESET_ON状态时,pwr_reset_n输出低电平,此状态用于复位处理器,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于0时,状态机由P_RESET_ON状态跳转到P_PWR_DOWN状态,P_PWR_DOWN状态用于控制处理器内部的power switch,将处理器下电;
[0036] P_PWR_DOWN状态时,pwr_reset_n输出高电平,当处理器内部的power switch下电完成后,处理器输出pwr_up_ack_n高电平,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;
[0037] P_PWR_DOWN状态时,当pwr_up_ack_sync_n等于1时,状态机由P_PWR_DOWN状态跳转到P_SLEEP状态,P_SLEEP状态表示处理器处于睡眠状态;
[0038] 当处理器发出wakeup信号后,即wakeup处于高电平时,状态机由P_SLEEP状态跳转到P_PWR_UP状态;
[0039] P_PWR_UP状态时,pwr_up_req_n输出低电平,pwr_up_req_n用于控制处理器内部的powerswitch,将处理器上电,处理器上电完成后返回pwr_up_ack_n信号,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;
[0040] P_PWR_UP状态时,当pwr_up_ack_sync_n等于0时,状态机由P_PWR_UP状态跳转到P_CLAMP_OFF状态;
[0041] P_CLAMP_OFF状态时,pwr_clamp_n输出高电平,关闭处理器内部clamp,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于1时,状态机由P_CLAMP_OFF状态跳转到P_CLOCK_ON状态状态,否则状态机状态保持;
[0042] P_CLOCK_ON状态时,stop_clk_n输出高电平,此时打开处理器时钟,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于1时,状态机由P_CLOCK_ON状态跳转到P_RESET_OFF状态,P_RESET_OFF状态用于释放处理器的复位信号;
[0043] P_RESET_OFF状态时,pwr_reset_n输出高电平,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于1时,状态机由P_RESET_OFF状态跳转到P_ACTIVE状态,P_ACTIVE状态时,处理器正常工作。
[0044] 本发明与现有技术相比,具有如下有益效果:
[0045] 本发明提供了一种基于状态跳转的处理器power控制系统,该控制系统包括power控制状态机电路、可配置延时的同步电路、时钟控制电路和复位控制电路。power控制状态机模块共十种状态,支持时钟打开和关断、支持复位和复位释放、支持上电和下电、支持clamp打开和关断功能。可配置延时的同步电路模块可以通过parameter参数配置同步的延时时间,用于确保执行电路执行完毕后再进行状态跳转。时钟控制模块用于控制处理器内部的时钟打开和关闭。复位控制模块用于控制处理器内部的复位和复位释放。通过power状态机的控制流程,可以使处理器power控制更加稳定可靠。

附图说明

[0046] 图1为本发明power控制系统的整体结构图。
[0047] 图2为本发明中power状态机的状态跳转流程图。

具体实施方式

[0048] 以下结合附图和具体实施例对本发明作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
[0049] 如图1所示,本发明公开了一种基于状态跳转的处理器power控制系统,整体结构包括power控制状态机模块、可配置延时的同步电路模块、时钟控制模块和复位控制模块。
[0050] power控制状态机模块用于控制产生时钟打开和关断信号stop_clk_n,复位和复位释放控制信号pwr_reset_n,处理器clamp控制信号pwr_clamp_n,处理器上电和下电控制信号pwr_up_req_n。
[0051] 可配置延时的同步电路模块:延时可通过parameter配置。可配置成二级同步、三级同步或四级同步。每个同步电路级数可以单独配置,互不影响。
[0052] 时钟控制模块用于控制处理器内部的时钟打开和关闭。
[0053] 复位控制模块用于控制处理器内部的复位和复位释放。
[0054] power控制状态机模块包括下述状态:P_ACTIVE状态、P_CLOCK_OFF状态、P_CLAMP_ON状态、P_RESET_ON状态、P_PWR_DOWN状态、P_SLEEP状态、P_PWR_UP状态、P_CLAMP_OFF状态、P_CLOCK_ON状态和P_RESET_OFF状态。下面说明每个状态功能:
[0055] P_ACTIVE状态:处理器正常运行时的上电状态。
[0056] P_CLOCK_OFF状态:处理器时钟关断状态。
[0057] P_CLAMP_ON状态:Clamp打开状态,钳制处理器信号电平。
[0058] P_RESET_ON状态:处理器复状态。
[0059] P_PWR_DOWN状态:处理器下电状态。
[0060] P_SLEEP状态:处理器睡眠状态。
[0061] P_PWR_UP状态:处理器上电状态。
[0062] P_CLAMP_OFF状态:Clamp关闭状态。
[0063] P_CLOCK_ON状态:处理器时钟打开状态。
[0064] P_RESET_OFF状态:处理器复位释放状态。
[0065] 状态机输入控制信号如下:
[0066] pwr_off_req:处理器发出的下电请求信号,在处理器将要睡眠时发出。
[0067] pwr_up_ack_n:处理器中power switch返回的信号,用于表示处理器是处于上电还是下电状态。
[0068] wakeup:处理器发出的上电请求信号,处理器将要唤醒时发出。
[0069] 状态机输出控制信号如下:
[0070] stop_clk_n:在P_ACTIVE状态时,stop_clk_n输出高电平。P_CLOCK_OFF状态时,stop_clk_n输出低电平。P_SLEEP状态时,stop_clk_n输出低电平。P_CLOCK_ON状态时,stop_clk_n输出高电平。其余状态stop_clk_n保持。
[0071] pwr_clamp_n:在P_ACTIVE状态时,pwr_clamp_n输出高电平。P_CLAMP_ON状态时,pwr_clamp_n输出低电平。P_SLEEP状态时,pwr_clamp_n输出低电平。P_CLAMP_OFF状态时,pwr_clamp_n输出高电平。其余状态pwr_clamp_n保持。
[0072] pwr_reset_n:在P_ACTIVE状态时,pwr_reset_n输出高电平。P_RESET_ON状态时,pwr_reset_n输出低电平。P_SLEEP状态时,pwr_reset_n输出低电平。P_RESET_OFF状态时,pwr_reset_n输出高电平。其余状态pwr_reset_n保持。
[0073] pwr_up_req_n:在P_ACTIVE状态时,pwr_reset_n输出低电平。P_PWR_DOWN状态时,pwr_reset_n输出高电平。P_SLEEP状态时,pwr_up_req_n输出高电平。P_PWR_UP状态时,pwr_up_req_n输出低电平。其余状态pwr_up_req_n保持。
[0074] 如图2所示,进一步说明power状态机的状态跳转工作原理。
[0075] power控制状态机模块在状态机复位期间处于P_ACTIVE状态,当处理器发出下电请求信号pwr_off_req时,此时pwr_off_req等于1,状态机由P_ACTIVE状态跳转到P_CLOCK_OFF状态;
[0076] 状态机将stop_clk_n信号拉低,stop_clk_n是通过时钟控制模块控制,stop_clk_n低电平时关闭处理器时钟,stop_clk_n高电平时打开处理器时钟,P_CLOCK_OFF状态将处理器时钟关闭,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于0时,状态机由P_CLOCK_OFF状态跳转到P_CLAMP_ON状态;
[0077] P_CLAMP_ON状态时,pwr_clamp_n信号输出低电平,使能处理内部的clamp,钳制信号电平,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于0时,状态机由P_CLAMP_ON状态跳转到P_RESET_ON状态,否则状态机状态保持;
[0078] P_RESET_ON状态时,pwr_reset_n输出低电平,此状态用于复位处理器,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于0时,状态机由P_RESET_ON状态跳转到P_PWR_DOWN状态,P_PWR_DOWN状态用于控制处理器内部的power switch,将处理器下电;
[0079] P_PWR_DOWN状态时,pwr_reset_n输出高电平,当处理器内部的power switch下电完成后,处理器输出pwr_up_ack_n高电平,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;
[0080] P_PWR_DOWN状态时,当pwr_up_ack_sync_n等于1时,状态机由P_PWR_DOWN状态跳转到P_SLEEP状态,P_SLEEP状态表示处理器处于睡眠状态;
[0081] 当处理器发出wakeup信号后,即wakeup处于高电平时,状态机由P_SLEEP状态跳转到P_PWR_UP状态;
[0082] P_PWR_UP状态时,pwr_up_req_n输出低电平,pwr_up_req_n用于控制处理器内部的powerswitch,将处理器上电,处理器上电完成后返回pwr_up_ack_n信号,pwr_up_ack_n经过同步电路后产生pwr_up_ack_sync_n信号进入状态机;
[0083] P_PWR_UP状态时,当pwr_up_ack_sync_n等于0时,状态机由P_PWR_UP状态跳转到P_CLAMP_OFF状态;
[0084] P_CLAMP_OFF状态时,pwr_clamp_n输出高电平,关闭处理器内部clamp,pwr_clamp_n经过同步电路后产生pwr_clamp_ack_n信号,当pwr_clamp_ack_n等于1时,状态机由P_CLAMP_OFF状态跳转到P_CLOCK_ON状态状态,否则状态机状态保持;
[0085] P_CLOCK_ON状态时,stop_clk_n输出高电平,此时打开处理器时钟,stop_clk_n经过同步电路后产生stop_clk_ack_n信号,当stop_clk_ack_n等于1时,状态机由P_CLOCK_ON状态跳转到P_RESET_OFF状态,P_RESET_OFF状态用于释放处理器的复位信号;
[0086] P_RESET_OFF状态时,pwr_reset_n输出高电平,pwr_reset_n经过同步电路后产生pwr_reset_ack_n信号,当pwr_reset_ack_n等于1时,状态机由P_RESET_OFF状态跳转到P_ACTIVE状态,P_ACTIVE状态时,处理器正常工作。
[0087] 上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。