一种顺序进入和退出低功耗状态的SRAM控制电路及方法与流程

文档序号:16188658发布日期:2018-12-08 05:27阅读:885来源:国知局
一种顺序进入和退出低功耗状态的SRAM控制电路及方法与流程

本发明涉及存储器技术领域,特别是涉及一种顺序进入和退出低功耗状态的sram控制电路及方法。

背景技术

静态随机存取存储器(staticrandomaccessmemory,简称sram),是芯片系统中不可或缺的重要组成部分之一。随着芯片对高性能和低功耗的要求,sram普遍采用了多种低功耗控制工作模式,即关闭模式(shutdownmode,简称sd)、深度睡眠模式(deepsleepmode,简称ds)、浅度睡眠模式(lightsleepmode,简称ls)和正常工作模式(workmode),以便系统根据当前场景对sram做出相应的控制来达到低功耗的效果。

目前常用的低功耗sram都是针对sram的不同部分设计电源门控,即对不需要工作的那部分电路进行关闭电源的操作,sram系统通常分为3部分:sram阵列(sramarray)10、一部分外围电路(partialperiphery)20和其他外围电路(periphery)30,包含上述4种模式的sram结构示意图如图1所示,这4种模式的开关状态,如表1所示:

表1

但是随着集成电路制造工艺的缩小,芯片供电电压逐渐降低,由于降低sramarray(sram阵列)单元的电压,很容易导致sram的读写操作发生错误,所以sram成为影响最低工作电压(vmin)的关键路径。于是sram设计者开始使用dual-railsram(双轨静态随机存取存储器)这一折中的办法,即sram的外围电路和sram的阵列单元使用不同的电压值。其中,sram外围电路使用较低电压以降低功耗,sram阵列单元使用较高电压以提高读写的可靠性。

但是,无论是否使用dual-railsram,随着工艺的进一步缩小和集成度的提高,芯片中集成的晶体管数目不断增加,嵌入的sram模块数目及容量也不断增加,由于在传统带有低功耗控制模式的sram中,不同低功耗控制模式是由开关对不同部分的电路关闭电源来实现的,而控制这一部分电路关闭或开启的开关是同一个,或在同一时间一起关闭或开启的,同时在sram内部控制这些状态的信号都是同步的,当很多sram同时进入或退出这些低功耗状态时,这将带来稳定性方面的问题,特别是电压降(ir-drop)的问题。比如一款芯片中用到了k个sram,其中1个sram处于正常工作模式,其余k-1个sram处于关闭模式,下一时刻k-1个sram同时从关闭模式中恢复到正常工作模式,那么此时k-1个sram同时需要充电,需要很大的电流,这个突然出现的大电流将导致全芯片很大的电压降(ir-drop),特别是这k-1个sram物理位置附近的电压降将非常严重。而此时此刻还有1个sram正处于正常工作模式,这个sram在供电电压有很大ir-drop时进行读写操作,就很容易出现读写错误,进而导致芯片功能性错误



技术实现要素:

为克服上述现有技术存在的不足,本发明之目的在于提供一种顺序进入和退出低功耗状态的sram控制电路及方法,以通过使sram内部各个部分顺序进入和退出低功耗状态,减轻多块sram在同一时间退出关闭或睡眠状态时对整个芯片电源电压降的影响,提高芯片工作的稳定性。

为达上述及其它目的,本发明提出一种顺序进入和退出低功耗状态的sram控制电路,包括:

轻度睡眠外设,用于控制静态存储阵列进入或退出轻度睡眠模式,所述轻度睡眠外设分为若干部分;

深度睡眠外设,用于控制静态存储阵列进入或退出深度睡眠和关闭模式,所述深度睡眠外设分为若干部分;

静态存储阵列,为一m×n的静态存储器阵列,用于存储信息并能在各外设电路的控制下进入或退出轻度睡眠、深度睡眠和关闭模式,所述静态存储阵列分为若干部分;

第一控制模块,用于在经由轻度睡眠控制信号ls生成的第一控制信号ctrl0的控制下经由多个延时单元生成多个延时信号去控制所述轻度睡眠外设的各部分;

第二控制模块,用于在经由深度度睡眠控制信号ds和关闭控制信号sd生成的第二控制信号ctrl1的控制下经由多个延时单元生成多个延时信号去控制深度睡眠外设的各部分;

第三控制模块,用于在经由关闭控制信号sd生成的第三控制信号ctrl2的控制下生成多个延时信号去控制静态存储阵列的各部分。

优选地,所述延时单元为包括若干个反相器或延时器或其他具有延时功能的电路。

优选地,所述第一控制模块包括n个延时器buf0_i以及n个nmos管mn0_i,其中i=0,1,……,n-1,所述第一控制信号ctrl0连接至延时器buf0_0的输入端,延时器buf0_i的输出端连接至延时器buf0_(i+1)的输入端,延时器buf0_(n-2)的输出端连接至nmos管mn0_(n-1)的栅极,延时器buf0_i的输出端连接至nmos管mn0_(i+1)的栅极,延时器buf0_0的输出端连接至nmos管mn0_1的栅极,第一控制信号ctrl0连接至nmos管mn0_0的栅极,nmos管mn0_0的漏极连接至第0列轻度睡眠外设控制电路part_a_0的控制端,nmos管mn0_i的漏极连接至第i列轻度睡眠外设控制电路part_a_i的控制端,nmos管mn0_1的源极接地。

优选地,所述第二控制模块包括n个延时器buf1_i以及n个pmos管mp0_i,其中i=0,1,……,n-1,所述第二控制信号ctrl1连接至延时器buf1_0的输入端,延时器buf1_i的输出端连接至延时器buf1_(i+1)的输入端,延时器buf1_(n-2)的输出端连接至pmos管mp1_(n-1)的栅极,延时器buf1_i的输出端连接至pmos管mp1_(i+1)的栅极,延时器buf1_0的输出端连接至pmos管mp1_1的栅极,第二控制信号ctrl1连接至pmos管mp1_0的栅极,pmos管mp1_0的漏极连接至第0列深度睡眠控制外设电路part_b_0的控制端,pmos管mp1_i的漏极连接至第i列深度睡眠控制外设电路part_b_i的控制端,pmos管mp1_1的源极接电源。

优选地,所述第三控制模块包括:

行延时控制电路,用于在关闭控制信号sd的延时信号控制下延时给所述静态存储阵列每一行的存储单元供电;

列延时控制电路,用于在关闭控制信号sd的第m个延时信号sd_m的控制下延时给所述静态存储阵列每一列的存储单元的位线bli和bli_n进行供电,i=1,2,……,n;

字线控制电路303,用于在行地址译码器译出的字线信号wl_dec[x]、关闭控制信号sd及第m+n+2个延时信号sd_delay的控制下生成延时字线信号wl[x],x=0,1,……,m-1。

优选地,所述行延时控制电路包括m个延时器bufr_(m-1-x)以及m个pmos传输管pgx,其中x=0,1,……,m-1,所述关闭控制信号sd连接至延时器bufr_0的输入端,延时器bufr_x的输出端sd_x连接至延时器bufr_(x+1)的输入端,延时器bufr_m-1的输出端sd_m-1连接至pmos传输管pg0的栅极,延时器bufr_m-1-x的输出端连接至pmos传输管pgx的栅极,pmos传输管pg0的漏极vdd[0]连接所述至静态存储阵列的第0行存储单元的电源端,pmos传输管pgx的漏极vdd[x]连接至所述静态存储阵列的第x行存储单元的电源端,pmos传输管pgx的源极接电源。

优选地,所述列延时控制电路包括n个延时器bufc_i、n个反相器invi、n个与非门nandi、n个pmos传输管mi和pmos传输管mi_n,其中i=1,2,……,n,延时器bufr_m-1的输出端sd_m-1连接至延时器bufc_1的输入端,延时器bufc_i的输出端sd_ic连接至延时器bufc_(i+1)的输入端;延时器bufc_1的输出端sd_1c连接至反相器inv1的输入端,反相器inv1的输出端连接至与非门nand1的一输入端,预充电控制信号pre连接至与非门nand1的另一输入端,与非门nand1的输出端连接至pmos传输管m1和m1_n的栅极,延时器bufc_i的输出端sd_ic连接至反相器inv(i+1)的输入端,反相器inv(i+1)的输出端连接至与非门nand(i+1)的一输入端,预充电控制信号pre连接至与非门nand(i+1)的另一输入端,与非门nand(i+1)的输出端连接至pmos传输管m(i+1)和m(i+1)_n的栅极;pmos传输管mi的漏极连接至所述静态存储阵列的第i列存储单元的位线bli,pmos传输管mi_n的漏极连接至所述静态存储阵列的第i列存储单元的互补位线bli_n,pmos传输管mi、mi_n的源极接电源。

优选地,所述字线控制电路包括异或门x[x]、反相器i[x]、或非门nor[x]和字线驱动器wl_driver[x],x=0,1,……,m-1,所述关闭控制信号sd连接至异或门x[x]的一输入端,延时器bufc_n的输出端sd_delay连接至异或门x[x]的另一输入端,异或门x[x]的输出端n1_x连接至或非门nor[x]的一输入端,行地址译码器译出的字线信号wl_dec[x]连接至反相器i[x]的输入端,反相器i[x]的输出端n2_x连接至或非门nor[x]的另一输入端,或非门nor[x]的输出端n10_x连接至字线驱动器wl_driver[x]的输入端,字线驱动器wl_driver[x]的输出端连接至所述静态存储阵列的第x行存储单元的字线端wl[x]。

优选地,所述静态存储阵列各部分通过所述第三控制模块顺序进入和退出关闭模式。

为达到上述目的,本发明还提供一种顺序进入和退出低功耗状态的sram的控制方法,包括如下步骤:

步骤s1,将sram系统的轻度睡眠外设、深度睡眠外设以及静态存储阵列分别分成若干部分,并分别通过第一控制信号ctrl0、第二控制信号ctrl1、第三控制信号ctrl2利用多个延时单元生成多个延时信号以控制所述轻度睡眠外设、深度睡眠外设以及静态存储阵列的各部分;

步骤s2,在进入或退出各模式时,所述轻度睡眠外设、深度睡眠外设以及静态存储阵列以及其各部分在各延时信号的控制下顺序上下电。

与现有技术相比,本发明一种顺序进入和退出低功耗状态的sram控制电路及方法通过将sram系统的各部分电路分成若干部分,将各控制信号利用延时单元延时多个延时信号分别控制各部分电路的各部分,使得sram的各个部分不是同步上电或下电的,而是各个部分经过延时有步骤的上电或下电,减轻了多块sram在同一时间退出关闭或睡眠状态时对整个芯片电源电压降的影响,提高了芯片工作的稳定性。

附图说明

图1为现有技术中包含4种模式的sram结构示意图;

图2为本发明一种顺序进入和退出低功耗状态的sram控制电路的结构示意图;

图3为本发明具体实施例中第三控制模块的细部结构图;

图4为本发明具体实施例中sram阵列顺序进入和退出关闭状态的信号波形示意图;

图5为本发明一种顺序进入和退出低功耗状态的sram的控制方法的步骤流程图。

具体实施方式

以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。

图2为本发明一种顺序进入和退出低功耗状态的sram控制电路的结构示意图。如图2所示,本发明一种顺序进入和退出低功耗状态的sram控制电路,包括:第一控制模块10、第二控制模块20、第三控制模块30、轻度睡眠外设(partialperiphery)40、深度睡眠外设(periphery)50和静态存储阵列(sramarray)60。

其中,轻度睡眠外设(partialperiphery)40,用于控制静态存储阵列(sramarray)60进入或退出轻度睡眠模式,所述轻度睡眠外设(partialperiphery)40分为若干部分,例如part_a_0,…,part_a_i;

深度睡眠外设(periphery)50,用于控制静态存储阵列(sramarray)60进入或退出深度睡眠和关闭模式,所述深度睡眠外设(periphery)50分为若干部分,例如part_b_0,…,part_b_i;

静态存储阵列(sramarray)60,为一m×n的静态存储器阵列,用于存储信息并能在外设电路的控制下进入或退出轻度睡眠、深度睡眠和关闭模式,所述静态存储阵列(sramarray)60分为若干部分,例如part_c_0,…,part_c_i。

第一控制模块10,用于在经由轻度睡眠控制信号ls生成的第一控制信号ctrl0的控制下经由多个延时单元生成多个延时信号去控制轻度睡眠外设(partialperiphery)40的各部分,在本发明具体实施例中,各延时单元包括延时器和nmos管,具体地,第一控制模块10包括n个延时器buf0_i(i=0,1,……,n-1)、n个nmos管mn0_i(i=0,1,……,n-1);

第二控制模块20,用于在经由深度度睡眠控制信号ds和关闭控制信号sd生成的第二控制信号ctrl1的控制下经由多个延时单元生成多个延时信号去控制深度睡眠外设(periphery)50的各部分;在本发明具体实施例中,各延时单元包括延时器和pmos管,具体地,第二控制模块20包括n个延时器buf1_i(i=0,1,……,n-1)、n个pmos管mp0_i(i=0,1,……,n-1);

第三控制模块30包括行延时控制电路301、列延时控制电路302和多个字线控制电路303,如图3所示,用于在经由关闭控制信号sd生成的第三控制信号ctrl2的控制下生成多个延时信号去控制静态存储阵列(sramarray)60,具体来说,行延时控制电路301由m个延时器bufr_(m-1-x)(x=0,……,m-1)、m个pmos传输管pgx(x=0,1,……,m-1)组成,用于在关闭控制信号sd的延时信号控制下延时给静态存储阵列(sramarray)60每一行的存储单元供电,列延时控制电路302由n个延时器bufc_i(i=1,,……,n)、n个反相器invi(i=1,2,……,n)、n个与非门nandi(i=1,2,……,n)、n个pmos传输管mi(i=1,2,……,n)和n个pmos传输管mi_n(i=1,2,……,n)组成,用于在关闭控制信号sd的第m个延时信号sd_m的控制下延时给静态存储阵列(sramarray)60每一列的存储单元的位线bli和bli_n(i=1,2,……,n)进行供电,字线控制电路303由m个异或门(xor)x[x]、反相器i[x]、或非门nor[x]和字线驱动器wl_driver[x]组成(x=0,1,……,m-1),用于在行地址译码器译出的字线信号wl_dec[x]、关闭控制信号sd及其第m+n+2个延时信号sd_delay的控制下生成延时字线信号wl[x](x=0,1,……,m-1);

这里需说明的是,延时单元可为若干个反相器、延时器(buffer)、或其他具有延时功能的电路。本发明以延时器(buffer)为例,但不以此为限。列延时控制电路中延时器与反相器等的个数可以是对应的,也可以比其多,本发明不以此为限。

具体地,第一控制信号ctrl0连接至延时器buf0_0的输入端,延时器buf0_i的输出端连接至延时器buf0_(i+1)的输入端(i=0,1,……,n-3),延时器buf0_(n-2)的输出端连接至nmos管mn0_(n-1)的栅极,延时器buf0_i的输出端连接至nmos管mn0_(i+1)的栅极(i=1,……,n-3),延时器buf0_0的输出端连接至nmos管mn0_1的栅极,第一控制信号ctrl0连接至nmos管mn0_0的栅极,nmos管mn0_0的漏极连接至第0列轻度睡眠外设控制电路part_a_0的控制端,nmos管mn0_i的漏极连接至第i列轻度睡眠外设控制电路part_a_i(i=1,……,n-1)的控制端,nmos管mn0_1的源极接地(i=0,1,……,n-1);

第二控制信号ctrl1连接至延时器buf1_0的输入端,延时器buf1_i的输出端连接至延时器buf1_(i+1)的输入端(i=0,1,……,n-3),延时器buf1_(n-2)的输出端连接至pmos管mp1_(n-1)的栅极,延时器buf1_i的输出端连接至pmos管mp1_(i+1)的栅极(i=1,……,n-3),延时器buf1_0的输出端连接至pmos管mp1_1的栅极,第二控制信号ctrl1连接至pmos管mp1_0的栅极,pmos管mp1_0的漏极连接至第0列深度睡眠控制外设电路part_b_0的控制端,pmos管mp1_i的漏极连接至第i列深度睡眠控制外设电路part_b_i(i=1,……,n-1)的控制端,pmos管mp1_1的源极接电源(i=0,1,……,n-1);

关闭控制信号sd连接至延时器bufr_0的输入端,延时器bufr_x的输出端sd_x连接至延时器bufr_(x+1)的输入端(x=0,1,……,m-1),延时器bufr_m-1的输出端sd_m-1连接至pmos传输管pg0的栅极,延时器bufr_m-1-x的输出端连接至pmos传输管pgx的栅极(x=0,……,m-1),pmos传输管pg0的漏极vdd[0]连接至静态存储阵列(sramarray)60的第0行存储单元的电源端,pmos传输管pgx的漏极vdd[x]连接至静态存储阵列(sramarray)60的第x行存储单元的电源端(x=0,……,m-1),pmos传输管pgx的源极接电源(x=0,1,……,m-1);

延时器bufr_m-1的输出端sd_m-1连接至延时器bufc_1的输入端,延时器bufc_i的输出端sd_ic连接至延时器bufc_(i+1)的输入端(i=1,……,n);延时器bufc_1的输出端sd_1c连接至反相器inv1的输入端,反相器inv1的输出端连接至与非门nand1的一输入端,预充电控制信号pre连接至与非门nand1的另一输入端,与非门nand1的输出端连接至pmos传输管m1和m1_n的栅极,延时器bufc_i的输出端sd_ic连接至反相器inv(i+1)的输入端,反相器inv(i+1)的输出端连接至与非门nand(i+1)的一输入端,预充电控制信号pre连接至与非门nand(i+1)的另一输入端,与非门nand(i+1)的输出端连接至pmos传输管m(i+1)和m(i+1)_n的栅极(i=1,……,n-1);pmos传输管mi的漏极连接至静态存储阵列(sramarray)60的第i列存储单元的位线bli,pmos传输管mi_n的漏极连接至静态存储阵列(sramarray)60的第i列存储单元的互补位线bli_n,pmos传输管mi、mi_n的源极接电源;

关闭控制信号sd连接至异或门(xor)x[x]的一输入端,延时器bufc_n的输出端sd_delay连接至异或门(xor)x[x]的另一输入端,异或门(xor)x[x]的输出端n1_x连接至或非门(nor)nor[x]的一输入端,行地址译码器译出的字线信号wl_dec[x]连接至反相器i[x]的输入端,反相器i[x]的输出端n2_x连接至或非门(nor)nor[x]的另一输入端,或非门(nor)nor[x]的输出端n10_x连接至字线驱动器wl_driver[x]的输入端,字线驱动器wl_driver[x]的输出端连接至静态存储阵列(sramarray)60的第x行存储单元的字线端wl[x](x=0,……,m-1);

可见,对于静态存储阵列(sramarray)60,本发明也提出了一种顺序上下电的实现方案。以关闭状态为例,sd信号经过延时器bufr_0、bufr_m-x的延时信号sd_x来控制电源门控pmos晶体管pgx,pgx连接电源与一行sram单元的供电端。类似的,再经过一级延时后的信号sd_m控制另一个电源门控pg0,从而控制另一行sram单元的上下电。

再次经过延时器bufc_1后的信号sd_1c,通过反相器inv1连接至与非门nand1的一个输入,nand1的另一个输入为预充电控制信号pre,nand1的输出连接电源门控pmos晶体管m1和m1_n,m1和m1_n分别连接位线bl1和bl1_n,用于控制这2根位线bl1和bl1_n预充电,其中位线bl1和bl1_n连接一列sram单元,pre为传统的预充电控制信号,本发明不影响传统sram的控制信号。类似的,再次经过延时器bufc_2后的信号sd_2c,通过反相器inv2连接至与非门nand2的一个输入,nand2的另一个输入为预充电控制信号pre,nand2的输出连接电源门控pmos晶体管m2和m2_n,m2和m2_n分别连接位线bl2和bl2_n,用于控制这2根位线bl2和bl2_n预充电,其中位线bl2和bl2_n连接一列sram单元,pre为传统的预充电控制信号。

位线的供电控制是按列来控制的,而sram单元的供电控制是按行来控制的。这样划分是依赖于sram版图的,在版图中为了节省面积sram单元通常是与相邻单元共用通孔的,电源和地线通常也是一行共用一根的,而位线则是一列共用一根,这样的设计目的是使本发明对传统sram阵列的改动较小,同时可以沿用sram单元共用通孔节省面积的特性。

由于本发明是顺序上下电的设计,所以存在一个很短的时间差,一部分电路已经下电,但另一部分还没有下电,这样会产生我们不期望的漏电。比如下电操作时,信号sd_x为1时,vdd[x]浮空,停止对一行sram单元供电;但是sd_0c尚未变为1,位线bl1_n为1,所以如果此时wl[x]为1则会有从bl1_n经过nmos晶体管n3、n4到地的漏电。所以,必须保证在顺序上电和顺序下电的过程中,所有字线信号wl[0]、wl[x]等全部为0。所以本发明还包括如下控制电路:经过延时的关闭信号的最后一级sd_delay和sd信号作为2个输入端连接到一个异或门xor,异或门的输出为节点n1_x;传统sram电路中从译码器输出的字线信号wl_dec[x]经过反相器后的节点为n2_x;n1_x和n2_x分别作为或非门nor的2个输入端,而nor的输出端经过字线驱动器wl_driver[x]驱动后连接到字线wl[x]。

另需说明的是,本领域技术人员可知,轻度睡眠外设(partialperiphery)40、深度睡眠外设(periphery)50和静态存储阵列(sramarray)60间存在其他逻辑连线,由于不在本发明考虑范畴,在此不予赘述。

以下将详细说明本发明的工作原理:

1)浅度睡眠模式:此模式下轻度睡眠外设(partialperiphery)区域需要关闭电源,如图2所示,进入浅度睡眠模式时,控制信号ctrl0由0变为1,并由若干延时器buf0_0、buf0_1等生成ctrl0的延时信号,再由ctrl0和它自身的延时信号去控制部分外围电路中的不同部分(part_a_0、part_a_i),使part_a_0、part_a_i等电路顺序的关闭电源(或地)。退出浅度睡眠模式时,控制信号ctrl0由1变为0,并由若干延时器buf0_0、buf0_1等生成ctrl0的延时信号,再由ctrl0和它自身的延时信号去控制部分外围电路中的不同部分,使part_a_0、part_a_i等电路顺序的开启电源(或地)。

2)深度睡眠模式:此模式下全部外围电路区域都需要关闭电源,如图2所示,进入深度睡眠模式时,首先控制信号ctrl0由0变为1,完成进入浅度睡眠模式的操作,之后控制信号ctrl1由0变为1,并由若干延时器buf1_0、buf1_1等生成ctrl1的延时信号,再由ctrl1和它自身的延时信号去控制外围电路中的不同部分(part_b_0、part_b_i),使part_b_0、part_b_i等电路顺序的关闭电源(或地);退出深度睡眠模式时,首先控制信号ctrl0由1变为0,完成退出浅度睡眠模式的操作,之后控制信号ctrl1由1变为0,并由若干延时器buf1_0、buf1_1等生成ctrl1的延时信号,再由ctrl1和它自身的延时信号去控制外围电路中的不同部分,使part_b_0、part_b_i等电路顺序的开启电源(或地)。

3)关闭模式。全部外围电路和sram阵列区域都需要关闭电源,如图2和图3所示,进入关闭模式时,首先控制信号ctrl0由0变为1,完成进入浅度睡眠模式的操作,之后控制信号ctrl1由0变为1,完成进入深度睡眠模式的操作。最后控制信号ctrl2由0变为1,并由若干延时器bufc、1bufc_2等生成ctrl2的延时信号,再由ctrl2和它自身的延时信号去控制sram阵列中的不同部分(part_c_0、part_c_i),使part_c_0、part_c_i等电路顺序的关闭电源(或地)。退出深度睡眠模式时,首先控制信号ctrl0由1变为0,完成退出浅度睡眠模式的操作。之后控制信号ctrl1由1变为0,完成退出深度睡眠模式的操作。最后控制信号ctrl2由1变为0,并由若干延时器bufc、bufc_1、bufc_2等生成ctrl2的延时信号,再由ctrl2和它自身的延时信号去控制sram阵列中的不同部分,使part_c_0、part_c_i等电路顺序的开启电源(或地)。

具体地,如图4所示为进入和退出关闭模式控制信号波形图,以下将配合图4详细说明sram阵列部分顺序进入和退出关闭模式的工作原理:

1)关闭信号sd由0变为1。经过延时器bufr_0、bufr_m-1-x的延时信号sd_m-1-x也由0变为1,电源门控pmos晶体管pgx关闭,一行sram单元的电源vdd[x]被关断,再经过延时器bufr_m-1,sd_m-1信号也由0变为1,电源门控pmos晶体管pg0关闭,一行sram单元的电源vdd[0]被关断。再经过延时器bufc_1,sd_1c信号也由0变为1,反相器inv1的输出端n6c_1由1变为0,n6c_1和预充电信号pre做为2输入与非门nand1的输入端,则2输入与非门的输出端n7c_1由0变为1,这时电源门控pmos晶体管m1关闭,两列位线bl1和bl1_n的电源被关断。类似的,再经过延时器bufc_2,sd_2c信号也由0变为1,反相器inv2的输出端n6c_2由1变为0,n6c_2和预充电信号pre做为2输入与非门nand2的输入端,则2输入与非门的输出端n7c_2由0变为1,这时电源门控pmos晶体管m2关闭,两列位线bl2和bl2_n的电源被关断。sd_2c继续经过若干个延时器,直到最后一级延时器bufc_n的输出sd_delay信号由0变为1。sd_delay和sd信号一起做为2输入异或门xor的输入,输出为节点信号n1_x,n1_x在sd由0变为1到sd_delay由0变为1的这段时间里保持为1。传统sram从行地址译码器输出的信号wl_dec[x]经过反相器后的信号为n2_x,n1_x和n2_x连接或非门nor输出节点n10_x,n10_x经过字线驱动器wl_driver[x]的输出连接到字线wl[x],其中驱动器wl_driver[x]只是起到增强信号驱动的作用。这样的设计保证了在关闭信号到来时sram阵列顺序关闭的过程中(sd由0变为1到sd_delay由0变为1的这段时间里)字线信号wl[x]始终为0。

2)关闭信号sd由1变为0。经过延时器bufr_0、bufr_m-1-x的延时信号sd_m-1-x也由1变为0,电源门控pmos晶体管pgx开启,一行sram单元的电源vdd[x]被开启,对sram单元充电。再经过延时器bufr_m-1,sd_m-1信号也由1变为0,电源门控pmos晶体管pg0开启,一行sram单元的电源vdd[0]被开启,对sram单元充电。再经过延时器bufc_1,sd_1c信号也由1变为0,反相器inv1的输出端n6c_1由0变为1,n6c_1和预充电信号pre做为2输入与非门nand1的输入端,则2输入与非门的输出端n7c_1由1变为0,这时电源门控pmos晶体管m1开启,两列位线bl1和bl1_n的电源开启,对位线充电。类似的,再经过延时器bufc_2,sd_2c信号也由1变为0,反相器inv2的输出端n6c_2由0变为1,n6c_2和预充电信号pre作为2输入与非门nand2的输入端,则2输入与非门的输出端n7c_2由1变为0,这时电源门控pmos晶体管m2开启,两列位线bl2和bl2_n的电源开启,对位线充电。sd_1c继续经过若干个延时器,直到最后一级延时器bufc_n的输出sd_delay信号由1变为0。sd_delay和sd信号一起做为2输入异或门xor的输入,输出为节点信号n1_x,n1_x在sd由1变为0到sd_delay由1变为0的这段时间里保持为1。传统sram从行地址译码器输出的信号wl_dec[x]经过反相器后的信号为n2_x,n1_x和n2_x连接或非门nor输出节点n10_x,n10_x经过字线驱动器wl_driver[x]的输出连接到字线wl[x],其中驱动器wl_driver[x]只是起到增强信号驱动的作用。这样的设计保证了在关闭信号到来时sram阵列顺序关闭的过程中(sd由1变为0到sd_delay由1变为0的这段时间里)字线信号wl[x]始终为0。

可见,通过本发明,sram的各个部分不需同步上电或下电的,而是各个部分经过延时有步骤的上电或下电,其优点在于,减轻了多块sram在同一时间退出关闭或睡眠状态时对整个芯片电源电压降的影响,提高了芯片工作的稳定性。

图5为本发明一种顺序进入和退出低功耗状态的sram的控制方法的步骤流程图。如图5所示,一种顺序进入和退出低功耗状态的sram的控制方法,包括如下步骤:

步骤s1,将sram系统的轻度睡眠外设(partialperiphery)、深度睡眠外设(periphery)以及静态存储阵列(sramarray)分别分成若干部分,并分别通过第一控制信号ctrl0、第二控制信号ctrl1、第三控制信号ctrl2利用多个延时单元生成多个延时信号以控制轻度睡眠外设(partialperiphery)、深度睡眠外设(periphery)以及静态存储阵列(sramarray)的各部分。在本发明具体实施例中,假设轻度睡眠外设(partialperiphery)分为若干部分,例如part_a_0,…,part_a_i,深度睡眠外设(periphery)50分为若干部分,例如part_b_0,…,part_b_i,静态存储阵列(sramarray)60分为若干部分,例如part_c_0,…,part_c_i,经由轻度睡眠控制信号ls生成的第一控制信号ctrl0li利用多个延时单元生成多个延时信号去控制轻度睡眠外设(partialperiphery)的各部分,经由深度度睡眠控制信号ds和关闭控制信号sd生成的第二控制信号ctrl1利用多个延时单元生成多个延时信号去控制深度睡眠外设(periphery)的各部分,经由关闭控制信号sd生成的第三控制信号ctrl2利用多个延时单元下生成多个延时信号去控制静态存储阵列(sramarray)60的各部分。

步骤s2,在进入或退出各模式时,轻度睡眠外设(partialperiphery)、深度睡眠外设(periphery)以及静态存储阵列(sramarray)以及其各部分在延时信号的控制下顺序上下电。

以下将根据各模式进行详细说明:,

1)浅度睡眠模式:此模式下轻度睡眠外设(partialperiphery)区域需要关闭电源,进入浅度睡眠模式时,控制信号ctrl0由0变为1,并由若干延时器buf0_0、buf0_1等生成ctrl0的延时信号,再由ctrl0和它自身的延时信号去控制部分外围电路中的不同部分(part_a_0、part_a_i),使part_a_0、part_a_i等电路顺序的关闭电源(或地)。退出浅度睡眠模式时,控制信号ctrl0由1变为0,并由若干延时器buf0_0、buf0_1等生成ctrl0的延时信号,再由ctrl0和它自身的延时信号去控制部分外围电路中的不同部分,使part_a_0、part_a_i等电路顺序的开启电源(或地)。

2)深度睡眠模式:此模式下全部外围电路区域都需要关闭电源,进入深度睡眠模式时,首先控制信号ctrl0由0变为1,完成进入浅度睡眠模式的操作,之后控制信号ctrl1由0变为1,并由若干延时器buf1_0、buf1_1等生成ctrl1的延时信号,再由ctrl1和它自身的延时信号去控制外围电路中的不同部分(part_b_0、part_b_i),使part_b_0、part_b_i等电路顺序的关闭电源(或地);退出深度睡眠模式时,首先控制信号ctrl0由1变为0,完成退出浅度睡眠模式的操作,之后控制信号ctrl1由1变为0,并由若干延时器buf1_0、buf1_1等生成ctrl1的延时信号,再由ctrl1和它自身的延时信号去控制外围电路中的不同部分,使part_b_0、part_b_i等电路顺序的开启电源(或地)。

3)关闭模式。全部外围电路和sram阵列区域都需要关闭电源,进入关闭模式时,首先控制信号ctrl0由0变为1,完成进入浅度睡眠模式的操作,之后控制信号ctrl1由0变为1,完成进入深度睡眠模式的操作。最后控制信号ctrl2由0变为1,并由若干延时器bufc、1bufc_2等生成ctrl2的延时信号,再由ctrl2和它自身的延时信号去控制sram阵列中的不同部分(part_c_0、part_c_i),使part_c_0、part_c_i等电路顺序的关闭电源(或地)。退出深度睡眠模式时,首先控制信号ctrl0由1变为0,完成退出浅度睡眠模式的操作。之后控制信号ctrl1由1变为0,完成退出深度睡眠模式的操作。最后控制信号ctrl2由1变为0,并由若干延时器bufc、1bufc_2等生成ctrl2的延时信号,再由ctrl2和它自身的延时信号去控制sram阵列中的不同部分,使part_c_0、part_c_i等电路顺序的开启电源(或地)。

进一步地,当关闭信号sd由0变为1:经过延时器bufr_0、bufr_m-1-x的延时信号sd_m-1-x也由0变为1,电源门控pmos晶体管pgx关闭,一行sram单元的电源vdd[x]被关断。再经过延时器bufr_m-1,sd_m-1信号也由0变为1,电源门控pmos晶体管pg0关闭,一行sram单元的电源vdd[0]被关断。再经过延时器bufc_1,sd_1c信号也由0变为1,反相器inv1的输出端n6c_1由1变为0,n6c_1和预充电信号pre做为2输入与非门nand1的输入端,则2输入与非门的输出端n7c_1由0变为1,这时电源门控pmos晶体管m1关闭,两列位线bl1和bl1_n的电源被关断。类似的,再经过延时器bufc_2,sd_2c信号也由0变为1,反相器inv2的输出端n6c_2由1变为0,n6c_2和预充电信号pre做为2输入与非门nand2的输入端,则2输入与非门的输出端n7c_2由0变为1,这时电源门控pmos晶体管m2关闭,两列位线bl2和bl2_n的电源被关断。sd_2c继续经过若干个延时器,直到最后一级延时器bufc_n的输出sd_delay信号由0变为1。sd_delay和sd信号一起做为2输入异或门xor的输入,输出为节点信号n1_x,n1_x在sd由0变为1到sd_delay由0变为1的这段时间里保持为1。传统sram从行地址译码器输出的信号wl_dec[x]经过反相器后的信号为n2_x,n1_x和n2_x连接或非门nor输出节点n10_x,n10_x经过字线驱动器wl_driver[x]的输出连接到字线wl[x],其中驱动器wl_driver[x]只是起到增强信号驱动的作用。这样的设计保证了在关闭信号到来时sram阵列顺序关闭的过程中(sd由0变为1到sd_delay由0变为1的这段时间里)字线信号wl[x]始终为0。

当关闭信号sd由1变为0:经过延时器bufr_0、bufr_m-1-x的延时信号sd_m-1-x也由1变为0,电源门控pmos晶体管pgx开启,一行sram单元的电源vdd[x]被开启,对sram单元充电。再经过延时器bufr_m-1,sd_m-1信号也由1变为0,电源门控pmos晶体管pg0开启,一行sram单元的电源vdd[0]被开启,对sram单元充电。再经过延时器bufc_1,sd_1c信号也由1变为0,反相器inv1的输出端n6c_1由0变为1,n6c_1和预充电信号pre做为2输入与非门nand1的输入端,则2输入与非门的输出端n7c_1由1变为0,这时电源门控pmos晶体管m1开启,两列位线bl1和bl1_n的电源开启,对位线充电。类似的,再经过延时器bufc_2,sd_2c信号也由1变为0,反相器inv2的输出端n6c_2由0变为1,n6c_2和预充电信号pre做为2输入与非门nand2的输入端,则2输入与非门的输出端n7c_2由1变为0,这时电源门控pmos晶体管m2开启,两列位线bl2和bl2_n的电源开启,对位线充电。sd_2c继续经过若干个延时器,直到最后一级延时器bufc_n的输出sd_delay信号由1变为0。sd_delay和sd信号一起做为2输入异或门xor的输入,输出为节点信号n1_x,n1_x在sd由1变为0到sd_delay由1变为0的这段时间里保持为1。传统sram从行地址译码器输出的信号wl_dec[x]经过反相器后的信号为n2_x,n1_x和n2_x连接或非门nor输出节点n10_x,n10_x经过字线驱动器wl_driver[x]的输出连接到字线wl[x],其中驱动器wl_driver[x]只是起到增强信号驱动的作用。这样的设计保证了在关闭信号到来时sram阵列顺序关闭的过程中(sd由1变为0到sd_delay由1变为0的这段时间里)字线信号wl[x]始终为0。

综上所述,本发明一种顺序进入和退出低功耗状态的sram控制电路及方法通过将sram系统的各部分电路分成若干部分,将各控制信号利用延时单元延时多个延时信号分别控制各部分电路的各部分,使得sram的各个部分不是同步上电或下电的,而是各个部分经过延时有步骤的上电或下电,减轻了多块sram在同一时间退出关闭或睡眠状态时对整个芯片电源电压降的影响,提高了芯片工作的稳定性。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1