专利名称:分布式休眠管功率门控电路中最大翻转电流的静态估算方法
技术领域:
本发明涉及功率门控电路,具体辨及分布式休眠管网络功率门控电路中最 大翻转电流的估算方法。
背景技术:
随着半导体工艺技术的进步,特征线宽的不断降低,泄漏功耗占数字集成 电路总功耗的比例逐渐增大。功率门控技术是一种广泛应用于数字电路中,降 低电路的泄漏功耗的设计技术。功率门控电路的原理如图1所示在电路的电 源线或地线与逻辑电路之间加入休眠晶体管,在逻辑电路处于待机状态时,控
制休眠晶体管关断,从而减小漏电流。采用NM0S作为休眠晶体管通常称为 footer,采用PM0S作为休眠晶体管时成为header。休眠管和逻辑电路之间的 连接点成为虚拟地(VGND)或虚拟电源(VVDD)。休眠晶体管面积的优化设计是功 率门控电路的关键。数字集成电路中的延迟r可以用公式一来表示
公式一 roc-
r1 r
在公式一中,G"为电路负载电容, 为电源电压,^为器件阈值电压,
"为与工艺有关的常数,通常取l, K为常数。在电路中加入休眠晶体管后,
电路延迟变为r,—: ' 々、式一 r 二_C/。^Fqd_
其中AF为休眠晶体管上的压降。当电路正常工作时,休眠晶体管工作在 深线性区,可以等效为一个电阻)^。则么7表示为么「 = /.~,其中/为电路中 的翻转电流;即电路在正常工作时,输入信号变化引起的电路中的电流。那么 AF的意义就是电路在发生翻转时,休眠晶体管上产生的压降。休眠晶体管电 阻瓜r与其沟道宽度成反比。由此可得,休眠管的尺寸减小,厄r增加,则在电
路中翻转电流一定的情况下,AK增加,因而延迟^—增加。然而,若休眠管 的尺寸增加,不仅造成电路的面积冗余增加,还会使电路中的漏电流增加。
休眠晶体管的设计抽象可以在Ar—定的条件下,使休眠晶体管总面积最 小的问题,如公式三所示所述i为休眠晶体管总宽度,休眠管的长度为沟道长度最小尺寸,因此 它的总面积可以用总宽度表示。K为电路延迟相关的约束电压。将^=/.^代 入公式三中可知,电路的翻转电流/的计算在休眠晶体管尺寸设计中占据核心 的地位。
功率门控电路中,翻转电流/的计算方法分为两类 一是通过电路仿真得 至IJ, 二是应用某些算法对电路进行分析得到。对于n输入的电路,需要进行至 少2"的仿真,耗费大量的时间,因而电路仿真方法是不适用于较大规模电路 的。而目前计算翻转电流的算法,如遗传算法、固定时长和变时长划分等方法, 同样不适合规模较大的电路。这些方法在计算功率门控电路翻转电流时,不仅 耗费时间长,而且得到的数值偏大,影响约束条件,由此得到的休眠晶体管尺 寸偏大。
发明内容
本发明为解决现有技术中计算功率门控电路翻转电流时耗费时间长,并且 得到的数值不准确的问题,提供了一种分布式休眠管功率门控电路中最大翻转 电流的静态估算方法。该方法由以下步骤完成
步骤一选择数字集成电路版图,对所述数字集成电路版图的每行中的多 个标准单元设置为一簇,将所述每一簇分配一个休眠晶体管,所述休眠晶体管 连在电源正极与每一簇之间,并将每个休眠晶体管的虚拟电源连接在一起;
步骤二根据数字集成电路中的单个反相器的翻转特性,对步骤一中的一 个标准单元的翻转电流进行计算,获得平均电流么w—^和峰值电流二《_皿,所 述平均电流Z^一^为峰值电流Zw:皿的二分之一;所述平均电流/。^_^由公式 四表示
公式四/ ,, =^3L 所述二^w为电路内部能耗,t为电流翻转过程的总时间,所述t由公式
公式五 0.5^ + ^勿+ Ce ; 所述",为输入转换时间,t^,为电路延迟时间,仁&为输出转换时间,
由公式四和公式五可获得峰值电流t;《m,由公式六表示式中G。w为负载电容,Wc/为电源电压;
步骤三采用静态时序分析工具Prime Time对每个标准单元进行时序分 析,生成时序分析报告,获得时序分析结果;
步骤四根据步骤三中获得的时序分析结果,将第i个标准单元的翻转电 流/i用多个时间对G/, L/和步骤二中获得的峰值电流乙《—_表示
^ Z0W, -^" ^
式中c与"/分别表示第i标准单元的翻转电流信号到达的时间与第i
个标准单元的翻转电流信号离开的时间;将每一簇中的多个标准单元的总的电 流/5用公式七表示
公式七/,-ZA 式中n为自然数,表示该簇中的标准单元的个数;
步骤五采用公式七将同一簇中的多个标准单元的电流波形值进行叠加, 获得每一簇的最大翻转电流
本发明的有益效果采用本发明所述方法对翻转电流进行估算,在计算过 程中耗费时间是现有技术的60%至70%,且得到的数值与采用现有技术得到的
数值相比较,精确了50%左右,同时减小了计算量和计算复杂度,并且縮短了
功率门控电路的设计周期。
图1是现有技术中在功率门控电路的电源线与逻辑电路之间加入休眠晶
体管的电路结构示意图,图2是现有技术中在功率门控电路的电源地线与逻辑 电路之间加入休眠晶体管的电路结构示意图,图3是本发明基于标准单元的数 字集成电路版图的结构示意图,1是标准单元,图4是将图3中版图按行分簇 后的示意图,图5是在图4的基础上在每簇中加入一个休眠晶体管后的结构示 意图,图6是图5所示的分布式休眠管功率门控电路的线性模型示意图,图7 是数字集成电路中翻转电流的原理图,图8是数字集成电路中的单个反相器的 输入电压、输出电压与翻转电流波形示意图,图9是以有向图的形式表示图3所示的数字集成电路的示意图,图io是每个标准单元电流波形示意图。
具体实施例方式
具体实施方式
一结合图1至图10说明本具体实施方式
,本实施方式所 述的方法由以下步骤完成
步骤一选择数字集成电路版图,对所述数字集成电路版图的每行中的多 个标准单元设置为一簇,将所述每一簇分配一个休眠晶体管,所述休眠晶体管 连在电源正极与每一簇之间,并将每个休眠晶体管的虚拟电源连接在一起;
步骤二.*根据数字集成电路中的单个反相器的翻转特性,对步骤一中的一 个标准单元的翻转电流进行计算,获得平均电流厶e和峰值电流i^f,所 述平均电流乙《 为峰值电流乙;om的二分之一;所述平均电流/。《w由公式 四表示
厶頭.々—-
所述£^,/为电路内部能耗,t为电流翻转过程的总时间,所述t由公式 五表tt^
公式五f = 0.5f,ra +^%+"e; 所述",为输入转换时间,"~为电路延迟时间,^i为输出转换时间, 由公式四和公式五可获得峰值电流厶^一由公式六表示
公
鹏—c《w _ 「^^(0,&腦+^鄉+0.5,舰)
式中Ow为负载电容,F必为电源电压;
步骤三采用静态时序分析工具Prime Time对每个标准单元进行时序分 析,生成时序分析报告,获得时序分析结果;
步骤四根据步骤三中获得的时序分析结果,将第i个标准单元的翻转电 流/,用多个时间对"/, L/和步骤二中获得的峰值电流t;(皿表示
/Z ,7" ,' /
""2/ 一
当~" — "owf < , < ,时 /. = ce//—max "" ^)
2 U -(" 2
式中t/与C/分别表示第i标准单元的翻转电流信号到 的时间与第i 个标准单元的翻转电流信号离开的时间;将每一簇中的多个标准单元的总的电 流/,用公式七表示公式七/,= 1^,
1化《
式中n为自然数,表示该簇中的标准单元的个数;
步骤五采用公式七将同一簇中的多个标准单元的电流波形值进行叠加, 获得每一簇的最大翻转电流厶,w
本实施方式中的图3是集成电路的整体版图,l代表标准单元,其中版图
中的每一簇由多个标准单元组成,所述每个标准单元是数字集成电路中功耗最 小的集成电路;图4是将图3中的每一簇抽象表示为一个逻辑电路;图5是本 发明方法适用的电路结构,它是在图4的基础上在每一簇与电源之间加入一个 休眠晶体管,并将所有的休眠晶体管的虚拟电源VVDD端连接在一起。所述的 休眠晶体管在开启时工作在深线性区,此时,图5可以表示为图6的形式,所 述休眠晶体管SL、 ST2、 ST3……STn等效于线性电阻Ru、 RC2、 RC3……RCn,每一 簇的逻辑电路等效于电流源Iu、 Ie2、 L……Ien,用图8表示数字集成电路中 单个反相器的翻转电流与其输入电压输出电压之间的关系,电流的翻转过程 为当输入电压Vin从电源电压Vdd开始下降时,翻转电流从零开始线性增加, 直到输入电压Vin降至0V,翻转电流增加到平均电流/。(w,所述翻转电流继 续增加,当达到峰值电流i"^一皿时开始下降,当所述翻转电流下降至平均电流 厶《^时,输出电压Vout从OV时开始增加,直到输出电压Vout增加至电源
电压Vdd,所述翻转电流从平均电流乙;;一^下降至0,实现电流翻转;图10是
以每个标准单元的翻转电流用多个时间对C与"/、&/与 C与
L/以及峰值电流乙仏皿表示。
本实施方式所述的步骤一所述的数字集成电路的版图是通过版图布局文
件生成的,并且由多个标准单元组成。
本实施方式所述的数字集成电路可以用有向图的形式表示,参见图9。 本实施方式所述的休眠晶体管可以选择PMOS.型,也可以选择醒OS型,本
实施方式中所述的休眠晶体管为PMOS型;
本实施方式所述的休眠晶体管的最大翻转电流发生在电路对负载电容充 电的过程;当所述休眠晶体管为PMOS型时,最大翻转电流发生在电路对负载 电容充电的过程,参见图7,所述对负载电容充电的过程是指电路输出节点从 低电平翻转到高电平的过程;当所述休眠晶体管为NMOS型时,所述对负载电容充电的过程是指电路输出节点从高电平翻转到低电平的过程。
本实施方式所述的步骤二的公式五中获得峰值电流Ig,的公式中的参
数由Synopsys公司开发的liberty library format文〗牛中査表f寻到所述的参 数值。
本实施方式所述的Synopsys公司开发的liberty library format文件中
的输入转换时间th和输出转换时间trise是指输入信号从10%转换到90%或者
输入信号从90%转换到10%的时间。
本实施方式所述的步骤三中生成的时序分析报告包括与翻转电流相关的
时序信息,以及对所述相关的时序信息进行提取时采用的是Perl语言。
本实施方式所述的最大翻转电流的大小与节点电容、上升延迟、输入转换 时间和输出转换时间等参数相联系的,节点电容越大,输入信号转换时间、电 路延迟和输出信号转换时间越小,翻转电流越大。
权利要求
1、分布式休眠管功率门控电路中最大翻转电流的静态估算方法,其特征是,它由以下步骤完成步骤一选择数字集成电路版图,对所述数字集成电路版图的每行中的多个标准单元设置为一簇,将所述每一簇分配一个休眠晶体管,所述休眠晶体管连在电源正极与每一簇之间,并将每个休眠晶体管的虚拟电源连接在一起;步骤二根据数字集成电路中的单个反相器的翻转特性,对步骤一中的一个标准单元的翻转电流进行计算,获得平均电流Icell_avg和峰值电流Icell_max,所述平均电流Icell_avg为峰值电流Icell_max的二分之一;所述平均电流Icell_avg由公式四表示公式四<maths id="math0001" num="0001" ><math><![CDATA[ <mrow><msub> <mi>I</mi> <mrow><mi>cell</mi><mo>_</mo><mi>avg</mi> </mrow></msub><mo>=</mo><mfrac> <msub><mi>E</mi><mi>internal</mi> </msub> <mrow><mi>Vdd</mi><mo>·</mo><mi>t</mi> </mrow></mfrac> </mrow>]]></math> id="icf0001" file="A2009100727330002C1.tif" wi="27" he="9" top= "101" left = "104" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>所述Einternal为电路内部能耗,t为电流翻转过程的总时间,所述t由公式五表示公式五t=0.5ttran+tdelay+trise;所述ttran为输入转换时间,tdelay为电路延迟时间,trise为输出转换时间,由公式四和公式五可获得峰值电流Icell_max,由公式六表示公式六<maths id="math0002" num="0002" ><math><![CDATA[ <mrow><msub> <mi>I</mi> <mrow><mi>cell</mi><mo>_</mo><mi>max</mi> </mrow></msub><mo>=</mo><msub> <mrow><mn>2</mn><mi>I</mi> </mrow> <mrow><mi>cell</mi><mo>_</mo><mi>avg</mi> </mrow></msub><mo>=</mo><mfrac> <mrow><mn>2</mn><mrow> <mo>(</mo> <msub><mi>E</mi><mi>internal</mi> </msub> <mo>+</mo> <msub><mi>C</mi><mi>load</mi> </msub> <msup><mi>Vdd</mi><mn>2</mn> </msup> <mo>)</mo></mrow> </mrow> <mrow><mi>Vdd</mi><mrow> <mo>(</mo> <mn>0.5</mn> <msub><mi>t</mi><mi>tran</mi> </msub> <mo>+</mo> <msub><mi>t</mi><mi>delay</mi> </msub> <mo>+</mo> <mn>0.5</mn> <msub><mi>t</mi><mi>rise</mi> </msub> <mo>)</mo></mrow> </mrow></mfrac> </mrow>]]></math> id="icf0002" file="A2009100727330002C2.tif" wi="81" he="11" top= "154" left = "79" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>式中Cload为负载电容,Vdd为电源电压;步骤三采用静态时序分析工具Prime Time对每个标准单元进行时序分析,生成时序分析报告,获得时序分析结果;步骤四根据步骤三中获得的时序分析结果,将第i个标准单元的翻转电流Ii用多个时间对tini,touti和步骤二中获得的峰值电流Icell_max表示当<maths id="math0003" num="0003" ><math><![CDATA[ <mrow><msubsup> <mi>t</mi> <mi>in</mi> <mi>i</mi></msubsup><mo>≤</mo><mi>t</mi><mo>≤</mo><mfrac> <mrow><msubsup> <mi>t</mi> <mi>in</mi> <mi>t</mi></msubsup><mo>+</mo><msubsup> <mi>t</mi> <mi>out</mi> <mi>i</mi></msubsup> </mrow> <mn>2</mn></mfrac> </mrow>]]></math> id="icf0003" file="A2009100727330002C3.tif" wi="26" he="9" top= "210" left = "66" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>时<maths id="math0004" num="0004" ><math><![CDATA[ <mrow><msub> <mi>I</mi> <mi>i</mi></msub><mo>=</mo><mfrac> <msub><mrow> <mn>2</mn> <mi>I</mi></mrow><mrow> <mi>cell</mi> <mo>_</mo> <mi>max</mi></mrow> </msub> <mrow><msubsup> <mi>t</mi> <mi>out</mi> <mi>i</mi></msubsup><mo>-</mo><msubsup> <mi>t</mi> <mi>in</mi> <mi>i</mi></msubsup> </mrow></mfrac><mrow> <mo>(</mo> <mfrac><mrow> <msubsup><mi>t</mi><mi>in</mi><mi>t</mi> </msubsup> <mo>+</mo> <msubsup><mi>t</mi><mi>out</mi><mi>i</mi> </msubsup></mrow><mn>2</mn> </mfrac> <mo>-</mo> <mi>t</mi> <mo>)</mo></mrow> </mrow>]]></math> id="icf0004" file="A2009100727330002C4.tif" wi="44" he="10" top= "210" left = "114" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>当<maths id="math0005" num="0005" ><math><![CDATA[ <mrow><mfrac> <mrow><msubsup> <mi>t</mi> <mi>in</mi> <mi>i</mi></msubsup><mo>+</mo><msubsup> <mi>t</mi> <mi>out</mi> <mi>i</mi></msubsup> </mrow> <mn>2</mn></mfrac><mo>≤</mo><mi>t</mi><mo>≤</mo><msubsup> <mi>t</mi> <mi>out</mi> <mi>i</mi></msubsup> </mrow>]]></math> id="icf0005" file="A2009100727330002C5.tif" wi="27" he="9" top= "223" left = "63" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>时<maths id="math0006" num="0006" ><math><![CDATA[ <mrow><msub> <mi>I</mi> <mi>i</mi></msub><mo>=</mo><mfrac> <msub><mrow> <mn>2</mn> <mi>I</mi></mrow><mrow> <mi>cell</mi> <mo>_</mo> <mi>max</mi></mrow> </msub> <mrow><msubsup> <mi>t</mi> <mi>out</mi> <mi>i</mi></msubsup><mo>-</mo><msubsup> <mi>t</mi> <mi>in</mi> <mi>i</mi></msubsup> </mrow></mfrac><mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mfrac><mrow> <msubsup><mi>t</mi><mi>in</mi><mi>i</mi> </msubsup> <mo>+</mo> <msubsup><mi>t</mi><mi>out</mi><mi>i</mi> </msubsup></mrow><mn>2</mn> </mfrac> <mo>)</mo></mrow> </mrow>]]></math> id="icf0006" file="A2009100727330002C6.tif" wi="44" he="11" top= "222" left = "112" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>式中tini与touti分别表示第i标准单元的翻转电流信号到达的时间与第i个标准单元的翻转电流信号离开的时间;将每一簇中的多个标准单元的总的电流Is用公式七表示公式七<maths id="math0007" num="0007" ><math><![CDATA[ <mrow><msub> <mi>I</mi> <mi>s</mi></msub><mo>=</mo><munder> <mi>Σ</mi> <mrow><mn>1</mn><mo>≤</mo><mi>i</mi><mo>≤</mo><mi>n</mi> </mrow></munder><msub> <mi>I</mi> <mi>i</mi></msub> </mrow>]]></math> id="icf0007" file="A2009100727330002C7.tif" wi="16" he="8" top= "261" left = "111" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>式中n为自然数,表示该簇中的标准单元的个数;步骤五采用公式七将同一簇中的多个标准单元的电流波形值进行叠加,获得每一簇的最大翻转电流Ic_max。
2、 根据权利要求1所述的分布式休眠晶体管功率门控电路中最大翻转电流的静态估算方法,其特征在于所述休眠晶体管是PM0S型或者是腿0S型中的 一种。
3、 根据权利要求2所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于所述休眠晶体管的最大翻转电流发生在电路对 负载电容充电的过程,所述休眠晶体管为PMOS型,对负载电容充电的过程是 电路输出节点从低电平翻转到高电平的过程。
4、 根据权利要求2所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于所述休眠晶体管的最大翻转电流发生在电路对 负载电容充电的过程,所述休眠晶体管为丽OS型,对负载电容充电的过程是 电路输出节点从高电平翻转到低电平的过程。
5、 根据权利要求1所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于步骤二的公式六中的参数由Synopsys公司开 发的liberty library format文件中查表得到。
6、 根据权利要求5所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于所述的Synopsys公司开发的liberty library format文件中的输入转换时间tt,和输出转换时间tri站是指输入信号从10% 转换到90%或者输入信号从90%转换到10%的时间。
7、 根据权利要求1所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于对步骤三生成时序分析报告中的信息进行提取 时采用的是Perl语言。
8、 根据权利要求1所述的分布式休眠晶体管功率门控电路中最大翻转电 流的静态估算方法,其特征在于步骤五所述的最大翻转电流的大小与节点电 容、上升延迟、输入转换时间tt自和输出转换时间t^的参数有关。
全文摘要
分布式休眠管功率门控电路中最大翻转电流的静态估算方法,涉及功率门控电路,它解决了现有技术中计算功率门控电路翻转电流时耗费时间长,并且得到的数值不准确的问题,其方法为选择数字集成电路版图,对所述数字集成电路版图的每行中的多个标准单元设置为一簇,将每一簇分配一个休眠晶体管,根据数字集成电路中单个反相器的翻转特性,对一个标准单元进行计算,获得峰值电流,采用静态时序分析工具对每个标准单元进行时序分析;根据时序分析报告的结果可得到每一簇中的多个标准单元的总电流,将同一簇中的标准单元的电流值进行叠加,获得每一簇的最大翻转电流。本发明适用于以标准单元为基础的半定制数字电路中分簇式功率门控休眠晶体管的设计。
文档编号G01R19/00GK101639497SQ20091007273
公开日2010年2月3日 申请日期2009年8月25日 优先权日2009年8月25日
发明者宇 孙, 匆 石, 肖立伊 申请人:哈尔滨工业大学