專利名稱:解析計算耦合互連功耗的方法
技術領域:
本發(fā)明屬于電子技術領域,更進一步涉及一種微電子集成電路領域中超大規(guī)模集成電路的互連功耗計算的方法。本發(fā)明可用于在集成電路設計工程的前期,考慮耦合情況下,快速近似計算得出互連線功耗。
背景技術:
在超大規(guī)模集成電路設計過程中,功耗已經(jīng)成為最重要的設計參數(shù)之一,隨著集成電路工藝節(jié)點的縮小,功耗成為限制集成電路性能的主要因素。集成電路的互連功耗是功耗的主要來源。而且由于技術的發(fā)展使互連的寄生效應逐漸增強,這一比例正在增大。為了在集成電路設計前期,提前預知電路互連功耗的相對精確值,必須采用提前對互連功耗值進行估計。當前IC互連功耗計算方法主要有兩種一種是采用SPICE軟件計算工具,計算時, 該類軟件內(nèi)核通過分析處理互連的圖形信息,對每一種激勵源下的互連電壓,電流進行擬合,然后對得到的數(shù)據(jù)進行數(shù)學積分,得到功耗值。例如,HSPICE軟件就是用該種方法完成計算的。該方法在計算處理大量互連圖形數(shù)據(jù)時耗費的計算時間較長,將會延長電路設計時間,增加了設計成本。第二種方法是在計算功耗之前,首先對互連進行解析化簡,得到一種利于直接進行功耗計算的簡單電路形式,然后進行功耗計算。例如,清華大學的專利申請“全芯片互連線功耗最優(yōu)的布局階段緩沖器規(guī)劃方法”(申請?zhí)?00810101598. 8,公開號CN 101241523A)公開了一種利用模塊間互連線的時間松弛量,計算邏輯拓撲圖中各邊的權重, 利用預流推進方法得到邏輯拓撲圖的最大割集,并對割集的每條邊分配時間松弛量,利用該結果計算電路消耗的互連線功耗。該方法存在的不足是,只能對布局階段的集成電路互連網(wǎng)絡功耗進行計算,不能在設計前期利用集成電路的網(wǎng)表文件進行互連功耗計算;尤其是在進行互連功耗計算時,涉及互連延時,計算方法比較復雜繁瑣,執(zhí)行效率比較低。Massimo Alioto. Gaetano Palumbo. Massimo Poli. "Analysis and Modeling of Energy Consumption in RLC Tree Circuits". IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 17,NO. 2,F(xiàn)EBRUARY 2009,該篇論文公開了一種將 IC 互連線抽象為RLC樹,并利用驅動點導納對互連樹進行化簡,最終得出了解析計算互連功耗的一種方法。Payam Heydari. Massoud Pedram. “Interconnect Energy Dissipation in High-Speed ULSI Circuits,,· Proceedings of the 15th International Conference on VLSI Design (VLSID. 02),該篇論文提出 了一種利用IC互連的傳輸線效應計算互連功耗的方法,并利用“Telegrapher’ s equations”推導出了該種IC互連功耗的計算方法。上述兩篇論文所公開的兩種方法存在的共同不足是只是將互連線抽象為集總電路,并沒有考慮到現(xiàn)今實踐中集成電路互連間存在著強烈的耦合效應,使計算結果不精確。 互連耦合效應帶來的電路寄生參數(shù)增加,將會增大互連功耗的值,所以當考慮實際互連耦合效應時,利用上述兩篇論文中的計算方法得出的互連功耗值與實際的互連功耗值誤差比較大
發(fā)明內(nèi)容
為了克服上述已有技術的不足,本發(fā)明的目的在于提出了一種解析計算耦合互連功耗的方法,能夠在滿足互連線耦合效應的要求下,計算出互連線功耗的解析結果。為了實現(xiàn)上述目的,本發(fā)明計算耦合互連線功耗的步驟如下(1)記錄工藝節(jié)點讀集成電路設計前期的頂層規(guī)劃文件,記錄文件中的工藝節(jié)
點ο(2)儲存互連信息將工藝節(jié)點代入ITRS數(shù)據(jù)表格,讀工藝節(jié)點對應的互連線參數(shù)和兩個斜坡輸入電壓參數(shù),將這些數(shù)值存入Matlab軟件的互連參數(shù)變量中。(3)求元件值將互連線參數(shù)代入PTM的計算公式,利用Matlab軟件的數(shù)值計算功能,計算得到耦合互連線電路的元件參數(shù)值。(4)判斷輸入電壓類型4a)將輸入電壓設定為簡單輸入電壓和復雜輸入電壓兩種類型;4b)存儲輸入電壓數(shù)據(jù);讀取步驟(2)中儲存的斜坡輸入電壓參數(shù),將讀取的參數(shù)存入兩個1行6列矩陣A^A2中;4c)產(chǎn)生測試矩陣;利用Matlab軟件的矩陣產(chǎn)生函數(shù)產(chǎn)生一個1行6列的矩陣A3, 矩陣中奇數(shù)位的數(shù)據(jù)為1,偶數(shù)位的數(shù)據(jù)為0 ;4d)矩陣相乘;利用Matlab軟件的數(shù)值計算功能,將矩陣A3分別與矩陣~、A2相乘,得到兩個1行6列矩陣A4、A5 ;4e)提取非零項;利用Matlab軟件的矩陣處理函數(shù)運算功能,按從左至右的順序分別提取A4、A5中的非零項,得到兩個1行3列矩陣A6、A7 ;4f)循環(huán)判斷;利用Matlab軟件的矩陣比較函數(shù)運算功能,循環(huán)判斷矩陣慫為中的每一列數(shù)據(jù)是否相等,若完全相等,則為復雜輸入電壓,執(zhí)行步驟(7),否則,則為簡單輸入電壓,執(zhí)行步驟(5)。(5)將簡單類型輸入電壓接入耦合互連電路的輸入端。(6)求簡單輸入功耗6a)通過解耦和計算,得到耦合接地電容C” Cc2 ;經(jīng)過解耦合計算,去掉耦合互連電路中的耦合電容Ce,增加兩個耦合接地電容Cc^CmCel與C1并聯(lián),C。2與C2并聯(lián),CpC2是耦合電路中的接地電容;6b)利用Matlab軟件的時域分析功能,求互連電阻禮、R2中的電流值Iri、Ir2的時域表達式;6c)按照下列公式計算耦合互連功耗E E = JT (Zr2^1 + I2r2R2)dt其中,E是耦合互連功耗,是Iri是互連輸入電流,R1是互連電阻,Ir2是互連輸入電流,R2是互連電阻。(7)將復雜類型輸入電壓接入耦合互連電路的輸入端。(8)求復雜輸入功耗
8a)直接將斜坡輸入電壓接入耦合電容C。兩端,利用Matlab軟件的數(shù)值計算功能,計算得到耦合電容C。上的電流值Ic。;8b)去掉耦合互連電路中的耦合電容C。,利用Matlab軟件的時域分析功能,計算得到互連電阻隊、R2中電流Iri、Ir4的時域表達式;8c)利用Matlab軟件的矩陣處理功能,將步驟4e)中兩個1行3列矩陣A6、A7內(nèi)的6個值按從小到大順序排列,按順序分別賦給Tl、T2、T3、T4、T5、T6 ;8d)利用Matlab數(shù)值計算功能,分別在0到Tl、Tl到T2、T2到T3、T3到T4、T4 到T5、T5到Τ6區(qū)間內(nèi),用Irt加上Ic。,Ir4減去Ic。,得到各區(qū)間內(nèi)的近似耦合互連輸入電流
IRIO、IR20、IRII、IR21、1羾2、1跎2、1羾3、1跎3、IR14、IR24、IR15、IR25 ‘8e)按照下列公式計算耦合互連功耗E
CO
P = + ^n + IR\2 + Ijm + Zm4 + + {Jriq + I/m + IRII + IRU + ^14 + ^15)^2]^
0其中,E是耦合互連功耗,IE10, Ieii, Ie12, IE13> IE14> Ie15是各區(qū)間內(nèi)的近似耦合互連輸入電流,R1是互連電阻,Ie20> Ir21 > Ir22 >IE23> IE24> Ir25是各區(qū)間內(nèi)的近似耦合互連輸入電流, R2是互連電阻。本發(fā)明與現(xiàn)有技術相比具有以下優(yōu)點第一,本發(fā)明在存儲互連信息時,由于采用了集成電路設計前期的工藝節(jié)點數(shù)據(jù), 使互連功耗計算可以在集成電路設計前期實施,克服了現(xiàn)有方法只能適用設計后期布局階段的集成電路,執(zhí)行效率比較低的不足,本發(fā)明規(guī)避了集成電路設計后期進行互連功耗計算涉及互連延時,計算方法比較復雜繁瑣,提高了集成電路的設計效率。第二,本發(fā)明求元件值計算時,由于單獨計算了耦合互連電容,使得在計算耦合互連功耗時,考慮了互連的耦合效應,克服了現(xiàn)有技術中只是將互連線抽象為集總電路,并沒有考慮到實際的集成電路中的互連間存在著強烈的耦合效應,使功耗計算結果誤差很大的不足,本發(fā)明使互連功耗計算結果更加精確。
圖1為本發(fā)明的總流程圖;圖2為本發(fā)明求元件值步驟中涉及的互連電路原理圖;圖3為本發(fā)明判斷輸入電壓類型的子流程圖。
具體實施例方式下面結合附圖1對本發(fā)明作進一步的描述。步驟1.記錄工藝節(jié)點。讀集成電路設計前期的頂層規(guī)劃文件,記錄文件中工藝節(jié)
點ο步驟2.儲存互連信息。將工藝節(jié)點代入ITRS數(shù)據(jù)表格,讀工藝節(jié)點對應的互連線參數(shù)和兩個斜坡輸入電壓參數(shù)。斜坡輸入電壓參數(shù)包括兩個輸入電壓的起點坐標值、電壓峰值處的坐標值和終點坐標值,將這些數(shù)值存入Matlab軟件的互連參數(shù)變量中。步驟3.求元件值
將步驟2中 存儲的互連參數(shù)代入PTM給出的計算公式,用Matlab軟件計算得到耦合電路的元件參數(shù)值并賦值給圖2所示的互連電路。圖2是耦合互連電路,電路中Vinl、Vin2 是兩個互連的斜坡輸入電壓;禮、R2是互連電阻,Lp L2是互連電感,Cp C2是互連接地電容, C。是互連耦合電容。輸入電壓Vinl與隊、Lp C1串聯(lián),C1另一端接地。輸入電壓Vin2與R2、 L2、C2串聯(lián),C2另一端接地。C。兩端分別連接在Q、C2的非接地端。3a)按照下列公式計算電阻禮、R2的數(shù)值R1=R2=^其中,RU R2是互連電阻,P是互連材料電阻率,L是互連長度,W是互連寬度,T 是互連厚度;3b)按照下列公式計算電容Q、C2的數(shù)值C1 =C2 =£i「g + 2.22(7r~^)319+1.17(-)076(-__)012 LUUb1J IH kS+ OJOHjKS + \.5\H} V +4.53//; _其中,Cp C2是互連電容,ε是材料介質介電常數(shù),L是互連長度,W是互連寬度,H 為互連介質層厚度,S是互連間距,T是互連厚度;3c)按照下列公式計算電容C。的數(shù)值Cc =£i[l.l4^(~^~)009+0.7《~^~)U4+1.16(~^~f
L SyH+2mJ V+1.5V V+1.87 WoW _其中,C。是互連耦合電容,ε是材料介質介電常數(shù),L是互連長度,T是互連厚度, S是互連間距,H為互連介質層厚度,W是互連寬度;3d)按照下列公式計算電感Lp L2的數(shù)值
「 τ r /V^ri , 2Ζ、1 0.22(W + T)1L1=L2= ln(-) + - +-i--
2π L W + T 2L _其中,L1、L2是耦合互連電感,μ 0是材料介質常數(shù),L是互連長度,W是互連寬度, T是互連厚度。步驟4.判斷輸入電壓類型下面結合圖3對判斷輸入電壓類型的具體步驟作進一步描述。4a)設定輸入電壓類型。將輸入電壓設定為簡單輸入電壓和復雜輸入電壓兩種類型,設定的原則是,若輸入電壓的起點坐標相同,并且到達峰值的時間相同時,為簡單輸入電壓,其余的輸入電壓為復雜輸入電壓;4b)存儲輸入電壓數(shù)據(jù)。讀取步驟2中儲存的斜坡輸入電壓參數(shù),包括起點坐標值,電壓峰值處的坐標值和終點坐標值,將該坐標值存入Matlab軟件中的兩個1行6列矩陣A”A2中。矩陣中,每兩個數(shù)據(jù)代表輸入電壓在時間-電壓坐標系中的一個坐標。第一個數(shù)據(jù)和第二個數(shù)據(jù)是輸入電壓起點的橫坐標和縱坐標,第三個和第四個數(shù)據(jù)是輸入電壓峰值的橫坐標和縱坐標,第五個和第六個數(shù)據(jù)是輸入電壓終點的橫坐標和縱坐標,其中,橫坐標的單位是秒,縱坐標的單位是伏特;4c)產(chǎn)生測試矩陣。利用Matlab軟件的矩陣產(chǎn)生函數(shù)產(chǎn)生一個1行6列的矩陣 A3,矩陣中奇數(shù)位的數(shù)據(jù)為1,偶數(shù)位的數(shù)據(jù)為0 ;
4d)矩陣相乘。利用Matlab軟件的數(shù)值計算功能,將矩陣A3與矩陣A1、A2相乘, 得到兩個1行6列矩陣A4、A5;4e)提取非零項。利用Matlab軟件的矩陣處理函數(shù)運算功能,按從左至右的順序提取A4、A5中的非零項,得到兩個1行3列矩陣A6, A7 ;4f)循環(huán)判斷。利用Matlab軟件的矩陣比較函數(shù)運算功能,循環(huán)判斷矩陣A6、A7 中的每一列數(shù)據(jù)是否相等,若完全相等,則為復雜輸入電壓,執(zhí)行步驟7,否則,則為簡單輸入電壓,執(zhí)行步驟5。步驟5.簡單類型電壓輸入。將簡單類型輸入電壓接入耦合互連電路的輸入端。步驟6.求簡單輸入功耗本步驟輸入的電壓是簡單輸入電壓。圖2耦合互連線電路中Vinl、Vin2是互連線的斜坡輸入電壓,R1^R2是互連電阻,LpL2是互連電感,CpC2是互連接地電容,Cc是互連耦合電容。輸入電壓Vinl與RpLpC1串聯(lián),C1另一端接地。輸入電壓¥&2與1 2、1^2、(2串聯(lián),C2 另一端接地。C。兩端分別連接在C” C2的非接地端。下面結合圖2對互連功耗的具體計算步驟作詳盡描述。6a)解耦和計算,得到耦合接地電容Cc^Ce2 Ccl=Cc(l-^-)其中,Ccl是解耦合運算得到的耦合接地電容,Cc是互連線耦合電容,TR2、TR1為步驟2中讀取的輸入電壓到達峰值時間;Cc2=Cc(l-^)
Iri其中,Cc2是解耦合運算得到的耦合接地電容,Cc是互連線耦合電容,TE1, Te2為步驟2中讀取的輸入電壓到達峰值時間;經(jīng)過解耦合計算,對圖2中電路實施變換去掉圖2中耦合互連電路中的耦合電容 C。,增加兩個耦合接地電容Ccl, Cc2,Ccl與C1并聯(lián),Cc2與C2并聯(lián);6b)利用Matlab軟件的時域分析功能,計算得到實施變換后互連電路札、R2中的電流Irl、Ir2的時域表達式;6c)按照下列公式計算耦合互連功耗E E = [(1乂 + ”2R2)dt其中,E耦合互連功耗,是Iri是互連輸入電流,R1是互連電阻,Irt是互連輸入電流,R2是互連電阻。步驟7.復雜類型電壓輸入。將步驟4得出的復雜類型輸入電壓接入耦合互連電路的輸入端。步驟8.求簡單輸入功耗下面結合圖2互連線電路對互連功耗的具體計算步驟作詳盡描述。8a)直接將斜坡輸入電壓接入圖2電路中的耦合電容C。兩端,利用Matlab軟件的數(shù)值計算功能,計算得到耦合電容C。上的電流值I。。;8b)去掉圖2互連電路中的耦合電容,利用Matlab軟件的時域分析功能,計算得到互連電阻禮、R2中電流Iri、Irt的時域表達式;
8c)利用Matlab軟件的矩陣處理功能,將4d)中兩個1行3列矩陣A6、A7內(nèi)的6 個值按從小到大順序排列,按順序分別賦給Tl、T2、T3、T4、T5、T6 ;8d)利用Matlab數(shù)值計算功能,分別在0到Tl、Tl到T2、T2到T3、T3到T4、T4 到T5、T5到Τ6區(qū)間內(nèi),用Irt加上Ic。,Ir4減去Ic。,得到各區(qū)間內(nèi)的近似耦合互連輸入電流
IRIO、IR20、IRII、IR21、1羾2、1跎2、1羾3、1跎3、IR14、IR24、IR15、IR25 ‘8e)按照下列公式計算耦合互連功耗E
OO
E =+I2RU+ Iln + Iln + I2RU + IL· 風 + (^20 + 4ι + I2Rn + Ilu + I2RU + ImsWdt
0其中,E是耦合互連功耗,IE10, Ieii, Ie12, IE13> IE14> Ie15是各區(qū)間內(nèi)的近似耦合互連輸入電流,R1是互連電阻,Ie20> Ir21 > Ir22 >IE23> IE24> Ir25是各區(qū)間內(nèi)的近似耦合互連輸入電流, R2是互連電阻。
權利要求
1. 一種解析計算耦合互連功耗的方法,包括如下步驟(1)記錄工藝節(jié)點讀集成電路設計前期的頂層規(guī)劃文件,記錄文件中的工藝節(jié)點;(2)儲存互連信息將工藝節(jié)點代入ITRS數(shù)據(jù)表格,讀工藝節(jié)點對應的互連線參數(shù)和兩個斜坡輸入電壓參數(shù),將這些數(shù)值存入Matlab軟件的互連參數(shù)變量中;(3)求元件值將互連線參數(shù)代入PTM的計算公式,利用Matlab軟件的數(shù)值計算功能, 計算得到耦合互連線電路的元件參數(shù)值;(4)判斷輸入電壓類型4a)將輸入電壓設定為簡單輸入電壓和復雜輸入電壓兩種類型;4b)存儲輸入電壓數(shù)據(jù);讀取步驟(2)中儲存的斜坡輸入電壓參數(shù),將讀取的參數(shù)存入兩個1行6列矩陣A^A2中;4c)產(chǎn)生測試矩陣;利用Matlab軟件的矩陣產(chǎn)生函數(shù)產(chǎn)生一個1行6列的矩陣A3,矩陣中奇數(shù)位的數(shù)據(jù)為1,偶數(shù)位的數(shù)據(jù)為O ;4d)矩陣相乘;利用Matlab軟件的數(shù)值計算功能,將矩陣A3分別與矩陣ApA2相乘,得到兩個1行6列矩陣A4、A5;4e)提取非零項;利用Matlab軟件的矩陣處理函數(shù)運算功能,按從左至右的順序分別提取A4、A5中的非零項,得到兩個1行3列矩陣A6, A7 ;4f)循環(huán)判斷;利用Matlab軟件的矩陣比較函數(shù)運算功能,循環(huán)判斷矩陣A6、A7中的每一列數(shù)據(jù)是否相等,若完全相等,則為復雜輸入電壓,執(zhí)行步驟(7),否則,則為簡單輸入電壓,執(zhí)行步驟(5);(5)將簡單類型輸入電壓接入耦合互連電路的輸入端;(6)求簡單輸入功耗6a)通過解耦和計算,得到耦合接地電容C” Cc2 ;經(jīng)過解耦合計算,去掉耦合互連電路中的耦合電容C。,增加兩個耦合接地電容(^、(;2,Ccl與C1并聯(lián),Cc2與C2并聯(lián),C1^C2是耦合電路中的接地電容;6b)利用Matlab軟件的時域分析功能,求互連電阻隊、R2中的電流值Iri、Ir2的時域表達式;6c)按照下列公式計算耦合互連功耗E E f+D2)論其中,E是耦合互連功耗,是Iri是互連輸入電流,R1是互連電阻,Ir2是互連輸入電流, R2是互連電阻;(7)將復雜類型輸入電壓接入耦合互連電路的輸入端;(8)求復雜輸入功耗8a)直接將斜坡輸入電壓接入耦合電容C。兩端,利用Matlab軟件的數(shù)值計算功能,計算得到耦合電容C。上的電流值Ic。;8b)去掉耦合互連電路中的耦合電容C。,利用Matlab軟件的時域分析功能,計算得到互連電阻禮、R2中電流Iri、Irt的時域表達式;8c)利用Matlab軟件的矩陣處理功能,將步驟4e)中兩個1行3列矩陣A6、A7內(nèi)的6 個值按從小到大順序排列,按順序分別賦給1\、T2、T3、T4、T5、T6 ;8d)利用Matlab數(shù)值計算功能,分別在O到T1、T1到T2, T2到T3、T3到T4, T4到T5, T5 到T6區(qū)間內(nèi),用Iri加上Ic。,Ir4減去Ic。,得到各區(qū)間內(nèi)的近似耦合互連輸入電流ΙΚΚ1、ΙΕ20>IrII、Ir21、Ir12、Ir22、1羾3、1跎3、Ir14、Ir24、Ir15、Ir25 ‘8e)按照下列公式計算耦合互連功耗E :
2.根據(jù)權利要求1所述的解析計算耦合互連功耗的方法,其特征在于,步驟(2)中所述的斜坡輸入電壓參數(shù),包括兩個輸入電壓的起點坐標值、電壓峰值處的坐標值和終點坐標值。
3.根據(jù)權利要求1所述的解析計算耦合互連功耗的方法,其特征在于,步驟(3)中所述的PTM計算公式如下3a)按照下列公式計算電阻隊、R2的數(shù)值
4.根據(jù)權利要求1所述的解析計算耦合互連功耗的方法,其特征在于,步驟4a)中所述的設定輸入電壓類型的原則是,若輸入電壓的起點坐標相同,并且到達峰值的時間相同時, 為簡單輸入電壓,其余的輸入電壓為復雜輸入電壓。
5.根據(jù)權利要求1所述的解析計算耦合互連功耗的方法,其特征在于,步驟4b)中所述的存儲輸入電壓數(shù)據(jù)的方法是,存儲輸入電壓參數(shù)的兩個矩陣中,每兩個數(shù)據(jù)為輸入電壓在時間-電壓坐標系中的一個坐標;第一個數(shù)據(jù)和第二個數(shù)據(jù)是輸入電壓起點的橫坐標和縱坐標,第三個和第四個數(shù)據(jù)是輸入電壓峰值的橫坐標和縱坐標,第五個和第六個數(shù)據(jù)是輸入電壓終點的橫坐標和縱坐標,橫坐標的單位是秒,縱坐標的單位是伏特。
6.根據(jù)權利要求1所述的解析計算耦合互連功耗的方法,其特征在于,步驟6a)中所述的解耦合計算公式如下
全文摘要
本發(fā)明公開了一種解析計算耦合互連功耗的方法,該方法可用于在集成電路設計工程前期,計算得出耦合互連功耗。該方法的具體步驟包括(1)記錄工藝節(jié)點;(2)儲存互連信息;(3)求元件值;(4)判斷輸入電壓類型簡單輸入電壓執(zhí)行步驟(5),復雜輸入電壓執(zhí)行步驟(7);(5)簡單類型電壓輸入;(6)求簡單輸入功耗;(7)復雜類型電壓輸入;(8)求復雜輸入功耗。本發(fā)明的方法包含互連的耦合效應,功耗計算結果更加精確;本發(fā)明使用集成電路設計前期的工藝節(jié)點數(shù)據(jù)計算互連功耗,提高了集成電路的設計效率。
文檔編號G06F17/50GK102243675SQ20111019213
公開日2011年11月16日 申請日期2011年7月8日 優(yōu)先權日2011年7月8日
發(fā)明者楊銀堂, 董剛, 賈文星 申請人:西安電子科技大學