考慮串擾效應(yīng)的靜態(tài)時序分析方法
【專利摘要】本發(fā)明屬于集成電路技術(shù)領(lǐng)域,具體為考慮串擾效應(yīng)的靜態(tài)時序分析方法。本發(fā)明提出了一種基于查表模型的串擾建模方式和對應(yīng)的串擾分析算法。首先由版圖提取出串擾線電路,然后提取出寄生參數(shù),再采用批處理仿真方式進行精確仿真,進而得到串擾延時庫。之后采用串擾分析算法,分為串擾情況分析算法和串擾延時計算算法。前者用來分析電路的串擾情況,如受害線與攻擊線數(shù)目,受害線串擾延時值等信息,后者用來計算電路精確的串擾延時,通過跳變時間差及負載計算法,加之多攻擊線的串擾處理算法,最終基于串擾延時庫,通過查表法,線性插值法以求取精確的串擾延時值。本發(fā)明具有建模準確、可移植性好、精確性高、通用性強等特點。
【專利說明】
考慮串擾效應(yīng)的靜態(tài)時序分析方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于集成電路技術(shù)領(lǐng)域,具體涉及考慮串擾效應(yīng)的靜態(tài)時序分析方法。
【背景技術(shù)】
[0002] 隨著集成電路工藝的發(fā)展,互連線尺寸及互連線間距越來越小,導致相鄰互連線 間的耦合電容越來越大,進而引發(fā)的串擾效應(yīng)越來越嚴重,對于靜態(tài)時序分析而言,串擾效 應(yīng)必須考慮。
[0003] 在串擾建模方面,文獻[2]中串擾效應(yīng)建模未考慮到受害線與攻擊線的跳變方向 和時間差對串擾延時的影響,導致串擾建模因素考慮不全面;文獻[3]對串擾建模采用開關(guān) 因子法,提出開關(guān)因子的上下限為2和0,但文獻[4]表明開關(guān)因子上下限為3和-1,由此可看 出開關(guān)因子上下限存在爭議,而開關(guān)因子上下限又會影響到串擾建模的精確性。
[0004] 其次是串擾處理算法方面,文獻[5]提出"時間窗口法",但該方法認為兩線存在 "時間窗口"交疊即為耦合線對,但因為跳變并不會在"時間窗口"任意時刻均發(fā)生,故存在 許多虛假耦合線對,結(jié)果過于悲觀;文獻[6]提出"跳變圖"的方法,大大提高了精度,但時間 代價過大。
[0005] 參考文獻:
[1] Sylvester D, Keutzer K. Getting to the Bottom of Deep Submicron[C]// iccad. IEEE Computer Society, 1998:203-211.
[2] Das D, Rahaman H. Unified model for analyzing timing delay and crosstalk effects in Carbon Nanotube interconnects[C]// Quality Electronic Design (ASQED), 2012 4th Asia Symposium on. IEEE, 2012:100-109.
[3] Sapatnekar S S. A timing model incorporating the effect of crosstalk on delay and its application to optimal channel routing[J]. Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, 2000, 19(5): 550-559.
[4] Muddu S, Sarto E, Kahng A B. On Switch Factor Based Analysis of Coupled RC Interconnects[C]// dac. IEEE Computer Society,2000:79-84.
[5] Chen P, Kirkpatrick D A, Keutzer K. Switching window computation for static timing analysis in presenceof crosstalk noise[C]//International Conference on Computer-aided Design. 2000:331-337
[6] Zhang M, Li H, Li X. Path Delay Test Generation Toward Activation of Worst Case Coupling Effects[J]? IEEE Transactions on Very Large Scale Integration Systems, 2011, 19(11):1969-1982〇
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的在于提供一種可移植性好、精確度高、通用性強的考慮串擾效應(yīng)的 靜態(tài)時序分析方法。
[0007] 本發(fā)明提供的考慮串擾效應(yīng)的靜態(tài)時序分析方法,包括提出一種基于HSPICE模型 的串擾延時庫的建模方式,并提出相對應(yīng)的串擾處理算法。具體步驟如下: (1) 首先,根據(jù)芯片版圖構(gòu)建串擾線電路,然后采用批處理仿真方式得到串擾延時庫; (2) 然后,采用串擾處理算法計算出跳變時間差及負載,并進行多攻擊線的串擾處理; (3 )最終,基于串擾延時庫的查找表法進行分析計算,得到精確的串擾延時值。
[0008] 本發(fā)明步驟(1)中,提出了一種基于HSPICE模型的串擾延時庫的建模方式,即首先 由芯片版圖提取出串擾線電路,然后提取出寄生參數(shù),再以批處理方式進行仿真,最終得到 每種串擾線電路的串擾延時庫,由此保證了串擾效應(yīng)建申旲的精確性;另外,由于可以直接從 串擾延時庫中獲取串擾延時值,無需進行復(fù)雜的迭代計算,提高了靜態(tài)時序分析的速度,其 流程圖如圖2所示。
[0009] 本發(fā)明步驟(2)中,所述串擾處理算法,其流程圖如圖3,首先通過分析電路網(wǎng)表生 成耦合線對容器,然后遍歷該容器進行處理。對于耦合線對,先判斷其是否為多攻擊線情 況,若是,則采用多攻擊線的串擾處理算法處理,否則直接進行跳變時間差及負載計算,在 獲取到跳變時間差和負載的具體值后,基于前面構(gòu)建的串擾延時庫采用查表法獲取精確的 串擾延時值,最終更新至路徑延時值上。該流程的重點在于:跳變時間差及負載計算法、多 攻擊線的串擾處理算法以及基于串擾延時庫的查表法三個部分。對于多攻擊線的串擾處理 算法,研究發(fā)現(xiàn)串擾延時值與耦合線對數(shù)目大致是呈線性關(guān)系的。針對這種線性關(guān)系,在多 線耦合情況下,本發(fā)明只需統(tǒng)計耦合線對數(shù)目,然后在原先的二線耦合的串擾延時上進行 線性計算即可。對于跳變時間差,本發(fā)明采用關(guān)鍵路徑搜索算法計算,關(guān)鍵路徑搜索算法基 于拓撲排序可以獲取每個節(jié)點的到達時間。因此,本發(fā)明可以利用受害線和攻擊線的起點 的到達時間來計算跳變時間差。對于負載,采用圖4所示的負載計算模型計算。在n)P5芯片 中,互連線后連接的都是MUX或BUFFER這種結(jié)構(gòu),而這些結(jié)構(gòu)則存在輸入負載和輸出負載, 其中輸入負載又包括Cin、C〇ff,輸出負載為Cout。其中Cin表不該路徑為導通狀態(tài)時的輸入負 載,而Coff則表示該路徑為關(guān)閉狀態(tài)時的輸入負載。通過互連線后掛的負載遍歷求和,再加 上受害線本身負載C gnd,即可獲得所需要的受害線上的負載。對于基于串擾延時庫的查表 法,是基于前面構(gòu)建的串擾延時庫,采用圖5所示的查表法進行串擾延時的計算,對于采樣 點直接獲取串擾延時庫中的延時值,對于非采樣點則采用線性插值法進行實際延時值的計 算。如圖5所示,當前點落在采樣點A、B和C、D間,通過線性插值法的方式計算出當前點的延 時值。
[0010] 技術(shù)效果 本發(fā)明較不考慮串擾效應(yīng)的靜態(tài)時序分析精度大大提高,能更精確的預(yù)估所測電路的 最大工作頻率。該方法較不考慮串擾效應(yīng)的靜態(tài)時序分析,具有建模準確、可移植性好、精 確度高、通用性強等特點。其中串擾建模的軟硬件誤差最大值不超過3%,采用串擾延時分析 算法的靜態(tài)時序分析所留裕量在7.24%~37.70%之間,為業(yè)界可接受范圍之內(nèi)。
【附圖說明】
[0011] 圖1為整體流程圖。
[0012] 圖2為串擾效應(yīng)建模流程圖。
[0013]圖3為串擾分析算法流程圖。
[0014]圖4為負載計算模型。
[0015]圖5為基于線性插值法的查表法。
[0016]圖6為串擾線仿真電路。
[0017]圖7為批處理仿真流程圖。
[0018]圖8為批處理腳本處理流程圖。
[0019] 圖9為串擾延時庫。
【具體實施方式】
[0020] 本發(fā)明的實現(xiàn)方案包括串擾效應(yīng)建模的實現(xiàn)以及串擾分析算法的實現(xiàn)。
[0021] 對于串擾效應(yīng)建模的實現(xiàn),具體包括構(gòu)建串擾線電路、仿真串擾線延時以及生成 串擾延時庫三個步驟。
[0022] (1)構(gòu)建串擾線電路 從版圖中抽取耦合線對電路,構(gòu)建形如圖6的電路,其中Buff er為緩沖器,Aggressor為 攻擊線,Victim為受害線,Space為受害線與攻擊線的間距,Couple_Length為受害線與攻擊 線的耦合長度。
[0023] (2)仿真串擾線延時 采用編寫腳本,改變激勵變量的方式進行批處理,進而得到串擾延時值,其流程圖如圖 7所示,將激勵變量和仿真網(wǎng)表通過批處理腳本進行批量仿真,進而得到串擾延時庫。其中 激勵變量中C1。a d為受害線上的負載,e t為受害線與攻擊線的跳變時間差, c/irec tio/3為受害線與攻擊線的跳變方向。仿真網(wǎng)表為串擾線電路網(wǎng)表,包含邏輯電路網(wǎng)表 以及對應(yīng)的寄生參數(shù)文件。批處理腳本流程圖如圖8所示,首先通過遍歷3種跳變方向、11種 跳變時間差以及11個受害線上負載,然后根據(jù)這三個變量值修改激勵文件,再調(diào)用Hspice 引擎進行仿真,進而得到仿真報告。之后針對多個仿真報告,提取傳輸延時值,最終按照一 定格式生成串擾延時庫。
[0024] (3)生成串擾延時庫 通過上一節(jié)中的批處理仿真方法,我們最終生成了串擾延時庫。其中針對每一種串擾 線電路,會生成形如圖9的3張串擾延時二維查找表。其中,3張表中橫坐標為Jump Time Difference,即受害線與攻擊線的跳變時間差,縱坐標為Victim Load,即受害線上負載,表 中的值即為串擾延時值。表(a)為In_Phase情況下的串擾延時二維查找表,表(b)為0ut_ Phase情況下的串擾延時二維查找表,表(c)為Aggressor_Constant情況下的串擾延時二維 查找表。
[0025]對于串擾處理算法的實現(xiàn),具體包括多攻擊線的串擾處理算法、跳變時間差及負 載計算法以及基于串擾延時庫的查表法三個部分。
[0026] (1)多攻擊線的串擾處理算法 研究發(fā)現(xiàn)串擾延時值與耦合線對數(shù)目大致是呈線性關(guān)系的。針對這種線性關(guān)系,在多 線耦合情況下,我們只需統(tǒng)計耦合線對數(shù)目,然后在原先的二線耦合的串擾延時上進行線 性計算即可。
[0027] (2)跳變時間差及負載計算法 對于跳變時間差,我們采用關(guān)鍵路徑搜索算法計算,關(guān)鍵路徑搜索算法基于拓撲排序 可以獲取每個節(jié)點的到達時間,因此我們可以利用受害線和攻擊線的起點的到達時間來計 算跳變時間差。對于負載,我們采用圖4的負載計算模型計算。在FDP5芯片中,互連線后連接 的都是MUX或BUFFER這種結(jié)構(gòu),而這些結(jié)構(gòu)則存在輸入負載和輸出負載,其中輸入負載又包 括Ci n、C〇ff,輸出負載為Cout。其中Cin表不該路徑為導通狀態(tài)時的輸入負載,而Coff貝lj表不該 路徑為關(guān)閉狀態(tài)時的輸入負載。通過互連線后掛的負載遍歷求和,再加上受害線本身負載 C gnd,即可獲得我們所需要的受害線上的負載。
[0028] (3)基于串擾延時庫的查表法 對于基于串擾延時庫的查表法,是基于前面構(gòu)建的串擾延時庫,采用圖5的查表法進行 串擾延時的計算,對于采樣點直接獲取串擾延時庫中的延時值,對于非采樣點則采用線性 插值法進行實際延時值的計算。如圖5所示,當前點落在采樣點A、B和C、D間,通過線性插值 法的方式計算出當前點的延時值。
【主權(quán)項】
1. 一種考慮串擾效應(yīng)的靜態(tài)時序分析方法,包括提出一種基于HSPICE模型的串擾延時 庫的建模方式,并提出相對應(yīng)的串擾處理算法;其特征在于具體步驟如下: (1) 首先,提出一種基于HSPICE模型的串擾延時庫的建模方式,即首先由芯片版圖提取 出串擾線電路,然后提取出寄生參數(shù),再以批處理方式進行仿真,最終得到每種串擾線電路 的串擾延時庫,由此保證串擾效應(yīng)建模的精確性; (2) 然后,采用串擾處理算法計算跳變時間差及負載,并進行多攻擊線的串擾處理; (3 )最終,基于串擾延時庫的查找表法進行分析計算,得到精確的串擾延時值。2. 根據(jù)權(quán)利要求1所述的考慮串擾效應(yīng)的靜態(tài)時序分析方法,其特征在于,步驟(2)中, 所述串擾處理算法,其流程為: 首先通過分析電路網(wǎng)表生成耦合線對容器,然后遍歷該容器進行處理;對于耦合線對, 先判斷其是否為多攻擊線情況,若是,則采用多攻擊線的串擾處理算法處理,否則直接進行 跳變時間差及負載計算; 在獲取到跳變時間差和負載的具體值后,基于前面構(gòu)建的串擾延時庫采用查表法獲取 精確的串擾延時值,最終更新至路徑延時值上。3. 根據(jù)權(quán)利要求2所述的考慮串擾效應(yīng)的靜態(tài)時序分析方法,其特征在于,所述多攻擊 線的串擾處理算法,由于發(fā)現(xiàn)串擾延時值與耦合線對數(shù)目大致是呈線性關(guān)系,針對這種線 性關(guān)系,在多線耦合情況下,只統(tǒng)計耦合線對數(shù)目,然后在原先的二線耦合的串擾延時上進 行線性計算。4. 根據(jù)權(quán)利要求3所述的考慮串擾效應(yīng)的靜態(tài)時序分析方法,其特征在于,所述跳變 時間差及負載計算中,對于跳變時間差計算,采用關(guān)鍵路徑搜索算法計算,關(guān)鍵路徑搜索算 法基于拓撲排序可以獲取每個節(jié)點的到達時間;因此,利用受害線和攻擊線的起點的到達 時間來計算跳變時間差;對于負載計算,采用負載計算模型計算,在Π)Ρ5芯片中,互連線后 連接的都是MUX或BUFFER這種結(jié)構(gòu),而這些結(jié)構(gòu)則存在輸入負載和輸出負載,其中,輸入負 載又包括G&Cw,輸出負載為Gw,其中€表示該路徑為導通狀態(tài)時的輸入負載,而 則表示該路徑為關(guān)閉狀態(tài)時的輸入負載;通過互連線后掛的負載遍歷求和,再加上受 害線本身負載即獲得所需要的受害線上的負載。5. 根據(jù)權(quán)利要求3所述的考慮串擾效應(yīng)的靜態(tài)時序分析方法,其特征在于,所述基于串 擾延時庫的查找表法,是基于構(gòu)建的串擾延時庫,對于采樣點直接獲取串擾延時庫中的延 時值,對于非采樣點則采用線性插值法進行實際延時值的計算。
【文檔編號】G06F17/50GK106066914SQ201610382152
【公開日】2016年11月2日
【申請日】2016年6月2日 公開號201610382152.1, CN 106066914 A, CN 106066914A, CN 201610382152, CN-A-106066914, CN106066914 A, CN106066914A, CN201610382152, CN201610382152.1
【發(fā)明人】王健, 張軍, 來金梅
【申請人】復(fù)旦大學