低功耗设计

低功耗设计的目的
功耗(Power)和能量(Energy)是两个完全不同的概念。功耗是一个瞬时的概念,能量是一个时间内的消耗。

能量=功耗 * 时间

低功耗设计的目的就是:
(1)提高电池供电的电子产品的使用时间
(2)提高设备的可靠性
随着设备消耗能量,会产生容量。功耗越大,产生热量越快。如果不能及时散热,设备温度就会变高,可能会导致设备不能正常工作甚至损坏。所以有些芯片在温度升高的时候,把频率减低,本来能跑2GHZ的CPU,温度高了就只能跑1G。
(3)降低成本

COMS电路中功耗分为两部分:静态功耗和动态功耗。

在设备运行时,也需要消耗静态功耗的,因为设备运行时也是上电状态。功耗分析把静态功耗单独拿出来,为了理论分析方便。

静态功耗是漏电流引起的功耗;
动态功耗分为翻转功耗和短路功耗,翻转功耗也就是0与1翻转所引发的功耗,而短路功耗则是由于PMOS和NMOS都导通时所引起的功耗。

低功耗设计方法
对于系统是在低功耗下提高性能,还是高性能下降低功耗,这对采样什么样的低功耗技术很关键。

下图是基于低功耗反馈的前向设计法,如图,可以看出五个层次下对系统的功耗进行优化,自顶向下分别对应系统级、行为级、RTL级、逻辑级和物理级。

在这里插入图片描述
下图说明了各层次的具体优化方法和优化效果,可以看到层次越高的优化方法,优化效果越明显。

在这里插入图片描述

低功耗技术

静态低功耗技术
(1)多阈值工艺

如下图,低阈值的标准逻辑单元具有速度快、漏电流大的特点,高阈值的标准逻辑单元具有速度慢、漏电流小的特点。
在这里插入图片描述所以在关键路径上可以使用低阈值的逻辑单元来优化时序,在非关键路径上可以使用高阈值单元来降低漏电流。

下图所示为一种典型的使用多阈值的工艺进行综合的流程:首先使用低阈值的单元库进行综合,然后使用高阈值的逻辑单元去替代那些时间余量过大路径上的的低阈值逻辑单元在这里插入图片描述使用多阈值工艺设计的另一个优点是没有任何面积开销,工艺库设计时将两种阈值的逻辑单元面积设计成一样,这样可以方便替换;

(2)电源门控方法
也称为多电源方法,其思想是芯片上的一些模块可以根据需求采用不同的电源网络供电,这样当一个模块不需要工作时,这个模块可以断开电源,如手机处于待机状态时的多媒体处理单元,从而做到零功耗;

动态低功耗技术
(1)多电压域技术
对于SOC系统,可以让不同的模块使用不同的电压并以不同的频率运行,如下图所示:在这里插入图片描述对于多电压域设计,需要在不同的电压域之间使用一些电平转换单元,将输入电压转换成输出所需的电压范围;

(2)门控时钟
芯片在工作时候,很大一部分功耗是由于时钟网络的翻转消耗的,对于一个设计中的寄存器组由于时钟信号clk的翻转,寄存器组会持续在clk1的上升沿来临时读取数据输入端的数据,而这时读取的数据是不变的,这就消耗了额外的功耗。如果时钟网络较大,这部分功耗损失会很大。**门控技术基本原理就是通过关闭芯片上暂时用不到的功能和它的时钟,从而实现节省电流消耗的目的,门控时钟对翻转功耗和内部功耗的抑制作用最强,是低功耗设计中的一种最有效的方法。**通过一个时能信号控制时钟的开关。当系统不工作时可以关闭时钟,整个系统处于非激活状态,这样就能够在某种程度上降低系统功耗。

“通常情况下,时钟树由大量的缓冲器和反相器组成,时钟信号为设计中翻转率最高的信号,时钟树的功耗可能高达整个设计的30%。加入门控时钟网络之后,由于减少了时钟树的开关功能,节省了开关功耗。时,由于减少了时钟引脚的开关行为,寄存器的内部功耗也减少了。采用门控时钟,可以非常有效地降低设计的功耗,一般情况下能够节省20%~60%的功耗。”
在这里插入图片描述FF1传过来的数据和FF2当前保存的数据相同,也就是FF2的数据无需翻转刷新仍能保证功能的正确性,而此时clk仍然翻转一次刷新了FF2的数据。这种情况尽管在功能上没有任何问题,但是在功耗方面却是实实在在的浪费。

典型的Integrated Clock Gating(ICG)的结构
在这里插入图片描述
(3)动态电压和动态频率调节
将不同模块的工作电压和工作频率尽量调低到刚好满足SOC系统的最低要求来实现降低系统的功耗,这种方法最为复杂;

UPF及低功耗设计的实现
**统一功耗格式(UPF,uniform power format)**是被业界广泛采用的低功耗设计和验证的描述文件格式;UPF是为了在相对高的层次上描述功耗设计示意图,例如采用多电压域技术就需要定义:两个不同的电压域之间如何转换?

基于UPF的设计流程
在这里插入图片描述在RTL代码中插入UPF指令,通常要做的是定义电压域,定义电源状态、定义对特殊信号的隔离及保持寄存器等。在RTL+UPF仿真的这一步中就可以验证电压域、隔离单元、保持寄存器等逻辑的正确性。

UPF功耗描述文件的举例在这里插入图片描述
芯片设计上常用的低功耗设计思路:在这里插入图片描述功耗的构成:
在这里插入图片描述动态功耗示意图为:开关功耗在这里插入图片描述当Vin = 0时,上面的PMOS导通,下面的NMOS截止;VDD对负载电容Cload进行充电,充电完成后,Vout的电平为高电平。

当Vin = 1时,上面的PMOS截止,下面的NMOS导通,负载电容通过NMOS进行放电,放电完成后,Vout的电平为低电平。

这样一开一闭的变化,电源的充放电,就形成了开关功耗,开关功耗Psitch的计算公式如下所示:
在这里插入图片描述
VDD为供电电压,Cload为后级电路等效的电容负载大小,Tr为输入信号的翻转率,一般情况下,信号在一个周期内平均翻转两次,即上升沿一次、下降沿一次,也就是说,Tr = 2f,因此,平均功耗就是:

Pdynamic = Vdd * vdd *CL * f

从这公式中可以看到:
(1)开关功耗和电压、翻转率、负载电容有关
(2)开关功耗和数据无关,也就传输的数据不会影响翻转功耗,但是数据的翻转率会影响翻转功耗
(3)开关功耗与传输的大小无关。

想要减少功耗,方法是:
(1)降低电压
(2)降低翻转率
(3)减少负载电容

动态功耗示意图为:短路功耗
短路功耗也称为内部功耗,短路功耗是因为在输入信号进行翻转时,信号的翻转不可能瞬时完成,因此PMOS和NMOS不可能总是一个截止另外一个导通,总有那么一段时间是使PMOS和NMOS同时导通,那么从电源VDD到地VSS之间就有了通路,就形成了短路电流,如下面的反相器电路图所示:
在这里插入图片描述在这里插入图片描述
Qx为一次翻转过程中从电源流到地的电荷量。

动态功耗是电路在工作时(翻转时)所消耗的能量。对于CMOS电路来说,又分为开关功耗和短路功耗。开关功耗为电路翻转时对负载电容充电的功耗;短路电容为输入翻转时,PMOS和NMOS同时打开瞬间电流形成的功耗。用公式可以描述为:
在这里插入图片描述
其中,CL为电路总负载电容;Vdd为工作电压;Ptran为工作电路所占比例;F为工作时钟频率;tsc为PMOS,NMOS同时导通时间;Ipeak为短路电流。

公式中第一部分为开关功耗,第二部分为短路功耗。一般来说只要gate的slew足够小,也就是ttran足够快,短路功耗一般可以忽略。

降低动态功耗的思路,可以从Vdd、F、CL和降低gate翻转次数等方面来设计降低功耗的方案。

静态功耗是电路在没有翻转时,晶体管中漏电流造成的功耗。主要分为以下四个部分:

·PN结反向电流I1(PN-junction Reverse Current)

·源极和漏极之间的亚阈值漏电流I2(Sub-threshold Current)

·栅极漏电流,包括栅极和漏极之间的感应漏电流I3(Gate Induced Drain Leakage)

·栅极和衬底之间的隧道漏电流I4(Gate Tunneling)
在这里插入图片描述
MOS管的结构图如下:
在这里插入图片描述
在这里插入图片描述
亚阈值漏电流(Sub-threshold Leakage)
亚阈值漏电流是发生在CMOS gate没有完全关断时。
在这里插入图片描述
W/L是晶体管尺寸,Vth是热相关常量;Cox/Vth/W/L都是公艺相关,不可以调整,VGS就是VDD;

VT是阈值电压:可以看到,阈值电压越高,漏电流功耗就越低。但是阈值电压越高,对应的翻转速度就会越慢,延时就会越大,性能就会越差。
(1)可以同调整VDD/VT来降低漏电流,从而减少漏电功耗;
(2)增加VT会带来性能损失,只能在满足功能的前提下增加VT;
(3)ISUB只和VDD/VT有关,和信号翻转都没关系。这是一个工艺强相关的电流,RTL设计对其无影响。

亚阈值泄漏电流随温度呈指数增长(Vth),这大大增加了设计低功率系统的复杂性。即使在室温下的泄漏也是可以接受的,在最坏的情况下,温度会超过芯片的设计目标。

栅极漏电流(Gate leakage)
栅极漏电流发生在一个电压加到栅上时(例如当门导通时)载流子遂穿通过薄栅截止的情况下。泄漏电流与介质厚度有极强的关系。工艺中通过选择合适厚度的介质将栅泄漏电流限制到一个可以接受的水平上。泄漏电流还取决于栅级电压。通过使晶体管堆叠起来并使截止晶体管靠近电源/地线可以使栅泄漏电流减小。

其他两种电流占比比较小,一般不分析。有时会把静态功耗统一为一个公式:在这里插入图片描述
Ipeak为泄漏电流,减少静态功耗的方法师减小VDD和Ipeak。

浪涌功耗

浪涌功耗是浪涌电流引起的功耗。浪涌电流是指开机或者唤醒的时候,器件流过的最大电流,因此浪涌电流也称为启动电流。一般情况下,浪涌功耗不是我们关注的地方,因此这里只是说明有这个功耗存在。

不同结构的功耗组成:
(1)时钟树功耗:时钟树的功耗通常占整个SOC设计功耗的40%左右,这是因为时钟是一直在翻转的信号,所以动态功耗特别大。
(2)CPU:CPU是SOC的主控制器,工作时CPU一般都必须要打开。随着CPU频率越来越高,功耗也越来越大。现在的多核(大小核),不同场景下用不同功耗的CPU核。
(3)GPU:GPU是并行处理单元,由于其计算力主要来自多个模块并行运算,为了正常工作,通常需要很多模块同时运算,功耗很大,所以很多SOC都不带GPU或者默认关掉。
(4)存储器:DDR浙西存储器作为SOC主存也需要时刻使用,也是功耗消耗大户。
在这里插入图片描述

降低芯片功耗的必要性主要体现在以下几个方面:
(1)散热成本:在芯片的工作过程中,电能以热量形式消耗。为了保证芯片正常的工作温度,芯片功耗的增加对封装技术和散热方式提出了更高的要求,同时也增加了芯片的散热成本。
(2)体积:功耗增加需要搭配更大的散热设备,从而增加了芯片产品的体积。
(3)电源陈本:功耗增加缩短了端侧设备的电池有效供电寿命。
(4)可靠性:功耗增加带来的芯片环境温度提升会降低芯片的可靠性。

芯片的功耗来源依据晶体管的工作状态分为静态功耗和短路功耗。如果没有工作状态这个必要限制,那么还得加上个浪涌功耗。

静态功耗:也称待机功耗,主要指电路在没有信号反转时,晶体管的漏电流所导致的功耗。
动态功耗:是电路在工作时(翻转时)所消耗的能量,对于CMOS电路又分为开关功耗(翻转功耗)和短路功耗(内部功耗)。
动态功耗的公式如下:
在这里插入图片描述在大规模IC设计中动态功耗占主要地位,典型应用中占到总功耗的80%。动态功耗中短路功耗部分的短路时间较短,降低动态功耗从降低 Vdd(供电电压)、fclock(时钟频率)、CL(门寄生电容)和Ptrans(时钟翻转率) 等角度出发,在不同设计层次上对低功耗设计的考量。

降低功耗:应当在所有设计层次上进行,即系统级、逻辑级和物理级,层次越高对功耗降低越有效;在系统和体系结构级可以达到最大的降低效果。
在这里插入图片描述1、系统级降低功耗技术
(1)片上系统方法
(2)硬件软件划分:对系统性能进行仿真建模,决定哪一部分使用硬件来实现,哪一部分使用软件来实现,从而达到性能和功耗最佳平衡。
(3)使用低功耗软件
(4)选择合适的处理器

2、体系结构级降低功耗技术
多电压设计技术
电平转换器(level shifter),把高(低)电压区域的信号转换到低(高)电压区域。信号通常包括数据、时钟、扫描链数据等。在这里插入图片描述
电源隔离单元(power isolation cell):主要用于模块的输入、输出。可以关掉电源时,将信号保持为常数,从而避免单元的输入悬空。在这里插入图片描述
保持寄存器(retention register):在不工作的情况下,将寄存器的状态保留下来。

针对不同模块根据其性能要求不同而采用不同电源供电,设计需在模块间额外增加power rails和level shifters。

动态电压频率调节(DVFS技术):针对运行中的芯片,依据不同的计算场景动态调整芯片的供电电压和工作频率,实现计算性能和功耗之间的平衡。

门控电源(静态功耗):指芯片中某个区域的供电电源被关掉,即该区域内的逻辑电路的供电电源断开(在模块不使用时将其关闭),为了最小化漏电流,门控电源静态常使用高阈值电压单元。

高阈值电压HVT:通过阈值电压,可以减小漏电流。

存储器电源门控(静态功耗):在不使用存储器时将其关闭。

3、寄存器传输级降低功耗
并行与流水: 采用并行处理,可以降低系统的工作频率,降低功耗
状态机编解码: 格雷码最适合低功耗设计,格雷码比用二进制码翻转更少,可以降低开关活动,功耗低。
**总线反转:**在当前数据与下一个数据之间的汉明距离大于N/2(N为总线位宽)时,就将下一个数据返相后传播,以减少总线上出现出现转换的位的数量。
**门控时钟:**将控制信号EN直接与时钟信号CLK进行与操作,以完成门控。门控后的时钟信号GCLK送到寄存器中,当EN为0时,该时钟被关掉’
在这里插入图片描述

不使用门控时钟:

always@(posedege clock or negedge reset_b)
  if(!reset_b)
    test_ff<=32’b0;
  else
    test_ff<=test_nxt;
assign test_nxt=load_cond?Test_data:test_ff;

在这里插入图片描述
使用门控时钟:
在这里插入图片描述
但是这个电路还是有两个缺点:
(1)如果在电路中,锁存器与与门想隔很远,到达锁存器的时钟域到达与门的时钟有较大的延迟差别,则仍会出现毛刺。
(2)如果在电路中,时钟使能信号距离锁存器很近,可能会不满足锁存器的建立时间、会造成锁存器出现亚稳态。
在这里插入图片描述
上图中,B点的时钟比A迟到,并且Skew > delay,这种情况下,产生了毛刺,为了消除毛刺,要控制clock skew,使它满足skew > latch delay(就是锁存器的clk-q的延时)。
上图的右下图,B点的时钟比A时钟早到,并且|Skew| >ENsetup - (D–>Q),这种情况下,也产生了毛刺,为了消除毛刺,要控制clock skew。使它满足|skew| < ENsetup – (D–>Q)。

寄存器门控时钟:
在这里插入图片描述在这里插入图片描述
由于DFF输出会delay一个周期,所以除非CLKB上升沿提前CLKA很多,快半个周期,才会出现毛刺。

SOC芯片中使用最多的还是锁存器结构的门控时钟。因为在实际的SOC芯片中,要使用大量的门控时钟单元,通常会把门控时钟做出一个标准的单元。那么锁存器结构中线延迟带来的问题就不存在了,因为是做成了一个单元,线延时是可控和不变的。也可以通过挑选锁存器增加延时,总能满足锁存器的建立时间。

一个DFF是由两个D锁存器组成的,采用D锁存器组成门控时钟单元,可以节省一个锁存器的面积。

通常,时钟树由大量的缓冲器和反相器组成,时钟信号为设计中翻转率最高的信号,时钟树的功耗可能高达整个设计功耗的40%。

在RTL代码中,怎么实现门控时钟?现在的综合工具会自动插入门控时钟。
在这里插入图片描述
(1)插入门控时钟单元之后,上面电路中的MUX就不需要了,如果数据D是多bit的,插入CG后的面积可能反而会减少。
(2)如果D是单bit信号,节省的功耗比较少,但是如果D是一个32bit的信号,那么插入CG后节省的功耗就比较多了。
DC默认D的位宽超过了3bit,那么DC就会默认插入CG,这样综合考虑就会有收益。
通过DC命令:
set_clock_gating_style-mnimum_bitwidth 4
来控制芯片中,对不同位宽的寄存器是否自动插入CG。
在这里插入图片描述
左边的能够成功的综合成自动插入CG的电路。

在不用的时候把数据设成0并不能减少功耗,保持数据不变化才能祭祀敖少toggle,降低功耗。

独热码多路器: 独热编码方式比二进制编码方式,输出更稳定,可以在初期将未选中总线掩藏掉,实现低功耗效果。
在这里插入图片描述
在这里插入图片描述
除掉多余的转换
使用行波计数器来降低功耗:
可减少漏电流并降低功耗

启用和禁用逻辑云: 在操作大规模逻辑云(包括宽加法器、乘法器等)时,会在需要时才将其打开。

4、晶体管级低功耗技术
调整衬底偏置: 降低MOS管衬底偏置可以提高动态电流从而提高电路工作速度,但是在衬底偏置和静态漏电成指数反比关系,因此衬底偏置的调整既是对速度功耗之间的权衡;又是对动态功耗与静态功耗之间的权衡。

**技术水平:**通过先进的硅处理技术,可额外降低功耗
版图优化: 优化布线,长布线会增加功耗
减少氧化层厚度
多氧化层厚度
设计减少电容

对于设计中翻转活动很频繁的节点,采用低电容的金属进行布线
使高翻转率的节点尽可能地短
对于高负载的节点与总线,采用低电容的金属层
对于特别宽的器件,采用特殊的版图和数据诶,以得到更小的漏极结电容
在有些布局布线工具中,可以将功耗作为优化目标来生成时钟树。

5、门级电路的功耗优化
门级电路的功耗优化(Gate Level Power Optimization),是从已经映射的门级网表开始,对设计进行功耗优化,以满足功耗的约束,同时保持设计其性能,即满足设计规则和时序的要求。功耗优化前的设计是已经映射到工艺库的电路。
在这里插入图片描述
功耗的优化不能降低设计的时序。为了有效的进行功耗you阿护,需要设计中有正的时间冗余(timing slacks)。功耗的减少以时序路径的正时间冗余作为交换,即功耗优化时会减少时序路径上的时间冗余。因此,设计中正的时间冗余越多,就越有签了降低功耗。

在这里插入图片描述
比如上图,与门输出具有特别搞的翻转率。因为后面有个NOR门,所以可以将两个门重新映射到一个AND-OR门加上一个反相器。这样高放那转的NET就变成了AND-OR内部的信号线了。现在就不需要在AND门后接一个大电容来支持高翻转的输出,有效降低了动态功耗。

6、多阈值电压设计(Mult-Threshold Logic)
多阈值电压指的是在工艺库汇总,同一种功能的门有多种阈值电压的cell,在不同的逻辑里就通过选择不同的阈值电压来降低静态功耗。

有以下两个结论:
(1)阈值电压VT越高,泄漏功耗就越小。
(2)阈值电压VT越高,门延时越大。

一般综合时,会先用高阈值电压(HVT)的cell去综合,然后再关键路径上如果有timing不过,再用低阈值电压(LVT)去修。但是一般会限制LVT的数量,防止泄漏功耗太大。因为亚阈值泄漏电流随温度呈指数增长(Vth)。即使在室温下的泄漏下是可以接受的,在最坏的情况下,温度超过芯片的设计目标。

7、多电压技术
动态功耗:
在这里插入图片描述
静态功耗:(VGS就是VDD)
在这里插入图片描述在这里插入图片描述
动态功耗主要组成部分翻转功耗是VDD的平方;静态功耗中主要组成部分ISUB和VDD的指数成正比。

降低功耗最有效的办法就是降低供电电压VDD。

但是降低供电电压VDD会增加门单元的延时,降低门单元的性能。
降低电压的方法:
(1)对不同的模块提高不同的电压
(2)对同一个模块,可能不同应用需要的频率也不同。

所以的低功耗电压计数技术上面两种方法的不同策略:
(1)如果对不同的模块固定成不同的电压,那就是静态多电压技术
(2)如果对不同的模块可以选择几种不同的电压配置,那就是动态电压调节。同时调节电压一般同时会调整频率,所以就是动态电压频率缩放技术(DVFS)
(3)电压关断技术

静态多电压(MSV)
静态多电压计数指将设计中不同的功能模块划分为不同的电压域(Power domain,PD)。每个电压域对应于设计中的一个或多个子模块。
在这里插入图片描述
在满足系统性能要求的基础上,采用最低电压。

静态多电压优点:静态多电压技术能在满足系统性能要求的基础上,显著的降低功耗。

静态多电压技术的缺点:
增加了系统设计复杂性,不仅需要为不同的电压域增加不同的供电引脚,而且需要更加复杂的电源网络和不同电压域之间的电平转换单元。

DVFS即动态电压频率调整,动态技术则是根据芯片所运行的应用程序对计算能力的不同需要,动态调节芯片的运行频率和电压,从而达到节能的目的。

DVFS的基本原理是通过监控芯片的工作负载,动态的调整各个模块工作的电压和频率,在保证性能的同时,降低电压,实现减少功耗的目的。在这里插入图片描述
管理单元监控工作模块的运行状态,根据运行状态控制电压生成单元和频率生成单元调整工作模块的电压VDD和频率f。

电源门控(Power Gating)
电源门控是指芯片中某个区域的供电电源被关掉,即该区域内的逻辑电路的供电电源断开。
在这里插入图片描述
如果某一模块在一段时间内不工作,可以关掉它的供电电源。断电后,设计进入睡眠模式,其漏电功率很小。唤醒时,为了使模块尽快恢复工作模式,需要保持关电前的状态。保持寄存器(retention register)可用于记忆状态。

同时,为了电源关断时,不影响其他不分的逻辑,电源门控模块的输出端需要使用隔离单元(Isolation Cell),因为在睡眠模式时,模块的输出为不确定值。为了保证在睡眠模式时,下一级的输入不悬空,插入隔离单元,保持一个“1”或“0”的输出。

8、特殊单元
(1)Isolation Cell(ISO):隔离单元,一种可以在某个电源域关断时,可以保持输入或者输出为常数的单元。
使用原因如下:
①防止虚假的信号传播到未关掉电源的域,造成逻辑错误
②防止瞬间开路电路产生的静态功耗
在这里插入图片描述
当左边的Voltage Area处于关断状态,右边的Voltage Area却始终处于开启状态,左边的PD关断使电路输出悬空,处于未知状态X,可能造成右边的域功能出错。

另外,PMOS管和NMOS管可能同时导通,造成器件短路,形成瞬态开路电流。

一个shutdown PD的ISO典型摆放如下图:
在这里插入图片描述
与门和或门都可以组成ISO,
①AND类型:输出ISO成0
②OR类型:输出ISO为1

ISO可以放在input端,output端,或者第三方Volatge Area中,考虑到power-on rail的走线。ISO自身的功耗,一般还是放在input端较好,因为放在input端不需要always on的power。

(2)Level Shifter Cell
LS:电压/电平转换器的主要作用是将信号从一个电压域转换到另一个电压域。不同电压域的VDD是不一样的,如果不进行电平转换,器件就无法正常工作。

在这里插入图片描述在这里插入图片描述
有三种情况:
①VDD_PD1 < VDD_PD2
②VDD_PD1 > VDD_PD2
③VDD_PD1 > VDD_PD2但是两者差距不大

(3)Power Switch
PS:电源开关单元提供了关闭逻辑域的电源的能力。

(4)always-on cell
电源管理单元需要保持激活,即使这些单元周围的逻辑已经被关闭,这就需要使用到always-on cells。AON cell是一种特殊的cell,它的供电来自与不会被关断的电源域(always-on domain),但是被摆放在可能被关闭的电源域。

AON cell被设计为可以放置在可关断的power domain,因为它的供电是true power或者是main power,或者叫always-on power。

(5)Retention cells
保留单元,一种能够在电源关闭的情况下,能保持内部状态的特殊单元。

一个Retention cell通常是由一个FF(或者latch)加上一个额外的save-latch组成。save-latch可以在关电的时候保存状态,在重新上电的时候回复普通的FF。
在这里插入图片描述
可以看到,Retention flip-flop和普通的flip-flop的差别就是多了一个save-latch.

  1. Save-latch一般是一个HVt cell, 以节省静态功耗;

  2. Save-latch是由备用电源供电;

正常情况下,Retention flip-flop和普通的flip-flop功能一样,但是会把输出锁存在Save-latch中,当电源关掉时,由于Save-latch是由备用电源供电,Save-latch还是保持原有状态;当RESTORE信号拉成1时,Save-latch会把输出送给前面的flip-flop,就能立刻恢复下电时的状态了。

(6)Dual Rail Memories
一个功耗友好的存储器可能会保护如下功能:

  1. 可以选择性地包括一个电源门控来控制主电源

  2. 为存储器核心和存储器外围逻辑有提供单独的电源供应在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值