芯片功耗的计算方法

文档序号:6369030阅读:1602来源:国知局
专利名称:芯片功耗的计算方法
技术领域
本发明涉及半导体集成电路技术领域,尤其涉及一种芯片功耗的计算方法。
背景技术
当前,随着芯片特征尺寸的不断减小,芯片的泄漏功耗在整个功耗中所占比重越来越大,而芯片泄漏功耗主要由MOS管的泄漏电流引起。MOS管泄漏电流主要由亚阈值漏电流、栅氧化层漏电流和衬底漏电流组成。亚阈值漏电流在三种漏电流中占据主导地位,三种电流的统计计算方式几乎一样,因此,进行基于统计的亚阈值漏电流的计算成了功耗分析的主要部分。
基于统计的芯片功耗分析是一种在数字集成电路设计的门级网表阶段对芯片的整体功耗进行评估的方法。对于某一特定工艺,预估芯片功耗对于之后的电路优化和版图设计都极好的指向性作用,从而成为数字集成电路设计中必不可少的一部分。当前,国际一些较大的EDA公司如Cadence, Synopsys都有自己的功耗分析工具,分析的内容包括功耗大小,方差,概率密度函数(Probability Density Function)等,功耗大小是其中最基础的部分。目前,基于统计学的功耗分析通常由以下两种方法来处理I.对于某一具体的CMOS逻辑门,假设其各种输入状态的概率相同(如对于二输入与非门,输入为00,01,10,11的概率均为1/4),统计其功耗时,将其不同输入状态的功耗按等概率加权求和;2.对于不同输入状态进行等概率分配,对于任意CMOS逻辑门,将从输出节点到地之间导通MOS管数量相同的输入状态合并。方法I没有考虑各逻辑门之间的逻辑关系,从而使得对于某一些特定逻辑门,对其进行任意的排列组合都可以得出相同的计算结果,因而误差较大。而方法2对状态进行合并虽然减小了计算量,但增加了误差,如4输入与非门在输入状态为〈1000〉时与反相器在输入状态为〈1>时的泄漏电流并不一样,但该方法将其统一为一种表达式。

发明内容
(一 )要解决的技术问题本发明要解决的技术问题是提供一种芯片功耗的计算方法,其能够提高基于统计意义上的芯片功耗的计算精度。(二)技术方案为解决上述问题,本发明提供了一种芯片功耗的计算方法,包括以下步骤A :选定芯片的工艺及工作电压,对该工艺下的逻辑门标准单元在不同输入状态下进行SPICE仿真;B :根据仿真结果,为每个逻辑门标准单元建立输入状态与泄漏功耗相对应的查找表;
C :读取芯片的电路网表中的逻辑门,对该逻辑门的每一个输入判断其为芯片的总输入还是其他逻辑门的输出;D :根据判断结果计算该逻辑门的每一个输入等于〈0>或〈1>的概率;E :根据查找表中该逻辑门的每一个输入状态与泄漏功耗的对应关系以及该逻辑门每一个输入状态的概率,计算该逻辑门的泄漏功耗;F :遍历芯片中每一个逻辑门获取每一个逻辑门的泄漏功耗,对获得的每一个逻辑门的泄漏功耗进行累加获得芯片的泄漏功耗。前述的芯片功耗的计算方法中,所述步骤D进一步包括若该逻辑门的输入为芯片的总输入,则该输入等于〈0>或〈1>的概率为1/2 ;若该逻辑门的输入为逻辑门A的输出,计算逻辑门A输出为〈0>或〈1>的概率,作为该逻辑门对应输入的概率的步骤。前述的芯片功耗的计算方法中,计算逻辑门A输出为〈0>或〈1>的概率,进一步包括设逻辑门A的每一种输入状态的概率为1/2N的步骤,N为逻辑门A的输入个数。前述的芯片功耗的计算方法中,所述步骤E进一步包括对该逻辑门不同输入状态下的泄漏功耗按照输入状态的概率进行加权求和获取该逻辑门的泄漏功耗的步骤。前述的芯片功耗的计算方法中,所述步骤A还包括获取逻辑门标准单元在不同输入状态下的亚阈值漏电流的步骤。前述的芯片功耗的计算方法中,所述步骤B进一步包括对于N输入的逻辑门标准单元,建立2N个输入状态与泄漏功耗相对应的查找表的步骤。(三)有益效果在计算基于统计意义上的芯片功耗时,完全从芯片总输入推演每个门的输入状态需要特定的电路结构(组合电路),而且会加大计算量,而完全不考虑逻辑门之间的输入输出连接关系,则会导致计算误差较大。本发明将二者结合在一起考虑,可以在增加少量计算量的情况下大幅减小计算误差,同时可以很容易推广到另两种计算方法。


图I为本发明实施方式中所述芯片功耗的计算方法的流程图;图2为本发明实施方式中所述芯片功耗的计算方法的原理图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。如图1-2所示,本发明所述的一种芯片功耗的计算方法,包括以下步骤A :选定某一特定工艺及工作电压,对该工艺下的逻辑门标准单元如二输入与非门NAND2等,在不同输入状态下(〈00〉,〈01>,〈10>,<11 进行SPICE仿真,还可获取逻辑门标准单元在不同输入状态下的亚阈值漏电流;B :根据仿真结果,为每个逻辑门标准单元建立输入状态与泄漏功耗相对应的查找表(Look-Up-Table)。对于N输入的逻辑门标准单元,建立2N个输入状态与泄漏功耗相对应的查找表;、
C :对于芯片的某一电路网表(如ISCAS85 Benchmark),读取网表的一行,判断其输入为芯片的总输入还是其他逻辑门的输出;如615 = NAND(G9, G5),表示二输入与非门,输入为G9,G5,输出为G15。判断G9和G5是芯片总输入还是其他逻辑门的输出;D :若该逻辑门的输入为芯片的总输入,则该输入等于〈0>或〈1>的概率为1/2 ;若该逻辑门的输入为其他逻辑门A的输出,设定逻辑门A每一种输入状态的概率为1/2N,其中N为逻辑门A的输入个数,并据此计算逻辑门A输出状态为〈0>或〈1>的概率,作为该NAND逻辑门对应输入的状态概率;E :根据查找表中该逻辑门的每一个输入状态与泄漏功耗的对应关系以及该逻辑门每一个输入状态的概率,计算该逻辑门的泄漏功耗,即Pgatea= I^=>( )*P( )。其中PgatU表示逻辑门i的泄漏功耗,P(n)表示输入状态为n的概率,P(n)表示查找表中输入状态为n的泄漏功耗。(查找表中n表示为二进制)F :根据步骤C-E,遍历芯片中的每一个逻辑门,并对获得的每一个逻辑门的泄漏 功耗进行累加便可获得整个芯片的泄漏功耗为P— H,其中W为Benchmark包含逻辑门的个数。使用本发明所述方法分别对6种不同的芯片(Benchmark)进行试验使芯片的总输入端随机产生输入向量,进行1000次重复试验,实验结果如表I所示。由表I可以看出,采用本发明方法计算芯片功耗的误差明显减小。表I
I !_!_!_!_!_
BenchmarkRandom input
Total input 1/2Gate input 1/2My method
Informationsampling(1 OOOTimes)
NumberLeakageLeakageLeakageLeakage
NameVoltageErrorErrorErrorError
of gateCurrentCurrentCurrentCurrent
1.2v(nA) 60622.782 0% 60969.341 0.505% 56280.515 7.16% 60019.163 0.996%
Cl 908 972 ---------
1.8v(iiA) 598.931 0% 600.665 0.290% 565.618 5.62% 610.540 1.94%
1.2v(nA) 116072.142 0% 115761.921 0.267% 107821.112 7.11% 112675.402 2.93%
C2670 1211 ---------
1.8v(iiA) 1107.520 0% 1103.767 0.339% 1040.882 6.02% 1194.192 7.83%
1.2y(iiA) 166032.398 0% 166921.017 0.535% 154983.089 6.65% 161039.313 3.01%
C3540 1705---------
1.8y(uA) 1561.439 0% 1575.224 0.883% 1488.570 4.67% 1546.069 0.984%
1.2y(iiA) 235497.800 0% 235306.947 0.0810% 217092.055 7.82% 230923.458 1.94%
C5315 2351 ---------
1.8y(uA) 2225.186 0% 2226266 0.0485% 2068.568 7.04% 2214.933 0.461%
1.2y(iiA) 237638.387 0% 232076.130 2.34% 216584.360 8.86% 245621.105 3.36%
C6288 2416 ---------
1.8v(uA) 1929.915 0% 1876.206 2.78% 1785.338 7.49% 1962.113 1.67%
1.2v(nA) 346603.597 0% 344891.503 0.494% 322780.950 6.87% 343701.888 0.837%
C7552 3624 ---------
1.8v(uA) 3284.275 0% 3275.137 0.278% 3068.679 6.56% 3309.595 0.771%其中,Random input sampling指在benchmark(芯片)的总输入端随机产生输入向量,进行1000次重复试验;
Total input 1/2指设定每一个总输入端的状态为〈0>或〈1>的概率为1/2,从总输入推演算出每一个门不同输入状态的概率;Gate input 1/2指设定每一个门的每一个输入端的状态为〈0>或〈1>的概率为1/2 ;My method即本发明所使用的方法。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种芯片功耗的计算方法,其特征在于,包括以下步骤 A :选定芯片的工艺及工作电压,对该工艺下的逻辑门标准单元在不同输入状态下进行SPICE仿真; B :根据仿真结果,为每个逻辑门标准单元建立输入状态与泄漏功耗相对应的查找表; C :读取芯片的电路网表中的逻辑门,对该逻辑门的每一个输入判断其为芯片的总输入还是其他逻辑门的输出; D :根据判断结果计算该逻辑门的每一个输入等于〈O〉或〈1>的概率; E :根据查找表中该逻辑门的每一个输入状态与泄漏功耗的对应关系以及该逻辑门每一个输入状态的概率,计算该逻辑门的泄漏功耗; F :遍历芯片中每一个逻辑门获取每一个逻辑门的泄漏功耗,对获得的每一个逻辑门的 泄漏功耗进行累加获得芯片的泄漏功耗。
2.如权利要求I所述的芯片功耗的计算方法,其特征在于,所述步骤D进一步包括若该逻辑门的输入为芯片的总输入,则该输入等于〈O〉或〈1>的概率为1/2 ; 若该逻辑门的输入为逻辑门A的输出,计算逻辑门A输出为〈O〉或〈1>的概率,作为该逻辑门对应输入的概率的步骤。
3.如权利要求2所述的芯片功耗的计算方法,其特征在于,计算逻辑门A输出为〈O〉或<1>的概率,进一步包括设逻辑门A的每一种输入状态的概率为1/2N的步骤,N为逻辑门A的输入个数。
4.如权利要求I所述的芯片功耗的计算方法,其特征在于,所述步骤E进一步包括对该逻辑门不同输入状态下的泄漏功耗按照输入状态的概率进行加权求和获取该逻辑门的泄漏功耗的步骤。
5.如权利要求I所述的芯片功耗的计算方法,其特征在于,所述步骤A还包括获取逻辑门标准单元在不同输入状态下的亚阈值漏电流的步骤。
6.如权利要求I所述的芯片功耗的计算方法,其特征在于,所述步骤B进一步包括对于N输入的逻辑门标准单元,建立2N个输入状态与泄漏功耗相对应的查找表的步骤。
全文摘要
本发明公开了一种芯片功耗的计算方法,包括以下步骤A选定芯片的工艺及工作电压,对该工艺下的逻辑门标准单元在不同输入状态下进行SPICE仿真;B根据仿真结果,为每个逻辑门标准单元建立输入状态与泄漏功耗对应的查找表;C读取芯片的电路网表中的逻辑门,判断该逻辑门输入为芯片的总输入还是其他逻辑门的输出;D根据判断结果计算该逻辑门的每一个输入等于或的概率;E根据查找表中该逻辑门的输入状态与泄漏功耗的对应关系以及逻辑门输入状态的概率,计算该逻辑门的泄漏功耗;F遍历芯片中逻辑门获取每一逻辑门的泄漏功耗,对所获逻辑门的泄漏功耗进行累加获得芯片的泄漏功耗。本发明能提高基于统计意义上的芯片功耗的计算精度。
文档编号G06F17/30GK102722600SQ201210135029
公开日2012年10月10日 申请日期2012年4月28日 优先权日2012年4月28日
发明者刘晓彦, 张兴, 杜刚, 杨小林 申请人:北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1