納米工藝下多級(jí)門控時(shí)鐘網(wǎng)絡(luò)優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于電子技術(shù)領(lǐng)域,具體涉及一種納米工藝下多級(jí)門控時(shí)鐘網(wǎng)絡(luò)優(yōu)化方 法。
【背景技術(shù)】
[0002] 納米工藝下,晶體管特征尺寸的降低對(duì)制造工藝提出更加苛刻的要求,以前可以 忽略的各種效應(yīng)日漸突出,其中工藝、電壓和溫度對(duì)芯片的性能、功能和穩(wěn)定性的影響越來(lái) 越明顯。為保證制造出來(lái)的芯片能適應(yīng)各種工作環(huán)境,需要在設(shè)計(jì)過(guò)程中就把可能造成的 影響考慮進(jìn)去,即在進(jìn)行靜態(tài)時(shí)序分析時(shí)考慮工藝、電壓和溫度對(duì)單元和互連線延時(shí)的影 響,具體操作過(guò)程中主要分兩部分進(jìn)行考慮:
[0003] (1)片上誤差(OCV,on-chipvariation)
[0004] 片上誤差是指由于工藝、電壓和溫度的變化,導(dǎo)致芯片上輸入信號(hào)翻轉(zhuǎn)時(shí)間和負(fù) 載都相同的單元其延時(shí)卻不同。片上誤差對(duì)時(shí)鐘路徑和數(shù)據(jù)路徑上的單元有著相同的影 響,在靜態(tài)時(shí)序分析時(shí)為了分析和建模方便,將片上誤差帶來(lái)的影響引入到時(shí)鐘路徑上,由 此增加了時(shí)鐘偏差。
[0005] (2)多模式多端角(MMMC,multi-modemulti-corner)
[0006] 不同的工藝和環(huán)境下金屬的電容和電阻不盡相同,進(jìn)而影響抽參結(jié)果,導(dǎo)致單元 及互連線延時(shí)不同。為保證芯片在不同的環(huán)境下都能正常工作,在設(shè)計(jì)過(guò)程中通常會(huì)設(shè)置 不同的分析模式和端角來(lái)涵蓋芯片所有可能的工作環(huán)境,保證芯片在所有模式和端角下都 能達(dá)到時(shí)序收斂,這種分析方法即多模式多端角。
[0007] 考慮片上誤差以及多模式多端角的分析方法增加了時(shí)鐘偏差及其不確定性,進(jìn)而 嚴(yán)重制約著時(shí)序的收斂,這就對(duì)芯片的時(shí)鐘樹綜合提出更加苛刻的要求。由分析可知,增加 時(shí)鐘公共路徑所占比重可以很好的減小時(shí)鐘偏差及其不確定性,因此現(xiàn)今的時(shí)鐘樹綜合時(shí) 希望盡量的增加時(shí)鐘公共路徑所占比重。然而在低功耗設(shè)計(jì)中采用的門控時(shí)鐘技術(shù),在時(shí) 鐘路徑上添加了大量的門控時(shí)鐘來(lái)關(guān)閉不需要工作的時(shí)序單元,這就大大降低了時(shí)鐘公共 路徑所占比重。設(shè)計(jì)的門控時(shí)鐘級(jí)數(shù)越多,時(shí)鐘公共路徑所占比重越少,時(shí)鐘偏差及其不確 定性繼續(xù)惡化,時(shí)序更加難以收斂。
[0008] 宋衛(wèi)衛(wèi)等人提出的F_M算法,通過(guò)復(fù)制細(xì)粒度門控時(shí)鐘,對(duì)含多級(jí)門控時(shí)鐘的時(shí) 鐘路徑進(jìn)行重組,在一定程度上增加了時(shí)鐘上公共路徑所占比重,但是對(duì)于含粗粒度門控 時(shí)鐘結(jié)構(gòu)效果不太明顯。
[0009] SiongKiongTeng在IEEE上發(fā)表的"RegionalClockGateSplittingAlgorithm forClockTreeSynthesis"提出通過(guò)復(fù)制門控時(shí)鐘,減少門控時(shí)鐘的扇出,這樣縮短了門 控時(shí)鐘到其控制的時(shí)鐘葉節(jié)點(diǎn)之間的本地時(shí)鐘樹的邏輯級(jí)數(shù),減少了時(shí)鐘非公共路徑所占 比重,進(jìn)而增加了時(shí)鐘公共路徑所占比重。該方法適用于一級(jí)門控時(shí)鐘的設(shè)計(jì),對(duì)于多級(jí)門 控時(shí)鐘效果不明顯。
[0010] 楊正強(qiáng)提出采用網(wǎng)狀時(shí)鐘結(jié)構(gòu)進(jìn)行時(shí)鐘樹綜合,時(shí)鐘根節(jié)點(diǎn)到時(shí)鐘網(wǎng)格部分為整 個(gè)時(shí)鐘樹的公共路徑,這部分所占比重非常可觀,可以大大減少時(shí)鐘偏差及其不確定性。然 而網(wǎng)狀時(shí)鐘結(jié)構(gòu)同樣只適用于無(wú)門控時(shí)鐘或只有一級(jí)門控時(shí)鐘的比較簡(jiǎn)單的時(shí)鐘結(jié)構(gòu)。 [0011] 以上方法均不同程度的增加了時(shí)鐘公共路徑所占比重,但是其只適用于結(jié)構(gòu)單一 的時(shí)鐘結(jié)構(gòu),對(duì)于多級(jí)門控時(shí)鐘的設(shè)計(jì)效果有限。然而隨著微電子產(chǎn)業(yè)的發(fā)展,多級(jí)門控時(shí) 鐘的設(shè)計(jì)越來(lái)越普遍,如何減少這類設(shè)計(jì)的時(shí)鐘偏差及其不確定性變得越來(lái)越棘手。
【發(fā)明內(nèi)容】
[0012] 為解決上述技術(shù)問(wèn)題,優(yōu)化多級(jí)門控時(shí)鐘網(wǎng)絡(luò),增加時(shí)鐘公共路徑所占比重,進(jìn)而 減小時(shí)鐘偏差及其不確定性,本發(fā)明所提出的技術(shù)方案如下:
[0013] -種納米工藝下多級(jí)門控時(shí)鐘網(wǎng)絡(luò)優(yōu)化方法,設(shè)門控時(shí)鐘網(wǎng)絡(luò)中共有N級(jí)門控時(shí) 鐘,第η級(jí)中有Kn個(gè)門控時(shí)鐘單元,η取值1,2,…,N,N為自然數(shù),分別對(duì)η大于1級(jí)的門 控時(shí)鐘單元進(jìn)行降級(jí)處理,包括以下步驟:
[0014] (1)找出電路中所有的第2級(jí)門控時(shí)鐘單元,共Κ2個(gè);
[0015] (2)對(duì)第2級(jí)中的K/h門控時(shí)鐘單元,斷開其時(shí)鐘端,分別連接至?xí)r鐘根節(jié)點(diǎn);
[0016] (3)對(duì)第2級(jí)中的1(2個(gè)門控時(shí)鐘單元,根據(jù)其電平觸發(fā)類型(高電平觸發(fā)或者低 電平觸發(fā)),在其使能端添加相應(yīng)的邏輯門組;將原電路中的使能信號(hào)連接至邏輯門組的 輸入端,邏輯門組的輸出端連接門控時(shí)鐘單元的輸入端;
[0017] (4)將步驟(3)中添加的K2個(gè)邏輯門組進(jìn)行合并,即完成將第2級(jí)門控時(shí)結(jié)構(gòu)鐘 合并到第1級(jí)門控時(shí)鐘結(jié)構(gòu);
[0018] (5)重復(fù)步驟⑴至步驟⑷的操作過(guò)程,依次將第3、4、…、Ν級(jí)門控時(shí)鐘結(jié)構(gòu) 合并至第1級(jí)門控時(shí)鐘結(jié)構(gòu)中,即完成對(duì)門控時(shí)鐘網(wǎng)絡(luò)的優(yōu)化。
[0019] 進(jìn)一步地,所述邏輯門組的構(gòu)成如下:
[0020] 門控時(shí)鐘單元包括高電平觸發(fā)和低電平觸發(fā)兩類,用邏輯門和反相器的組合來(lái)實(shí) 現(xiàn)邏輯門組。對(duì)于高電平觸發(fā)門控時(shí)鐘單元,將其使能信號(hào)直接連接到與門的輸入端;與門 的輸出端即邏輯門組的輸出端,連接到該門控時(shí)鐘單元的輸入端。對(duì)于低電平觸發(fā)門控時(shí) 鐘單元,將其使能信號(hào)連接到一個(gè)反相器,反相器的輸出端再連接到與門的輸入端;與門的 輸出端即邏輯門組的輸出端,連接到該門控時(shí)鐘單元的輸入端。
[0021] 采用本發(fā)明獲得的有益效果:用于優(yōu)化納米工藝下的多級(jí)門控時(shí)鐘網(wǎng)絡(luò),使其時(shí) 鐘結(jié)構(gòu)更加規(guī)整,進(jìn)而增加時(shí)鐘公共路徑,減少時(shí)鐘偏差。
【附圖說(shuō)明】
[0022] 圖1為門控時(shí)鐘降級(jí)流程示意圖;
[0023] 圖2為合并邏輯門組的流程示意圖;
[0024] 圖3為兩級(jí)門控時(shí)鐘的時(shí)鐘結(jié)構(gòu)示意圖;
[0025] 圖4為門控時(shí)鐘降級(jí)處理示意圖;
[0026] 圖5為ICG1和ICG2均為高電平觸發(fā)時(shí)GATE示意圖;
[0027] 圖6為ICG1為高電平觸發(fā)ICG2為低電平觸發(fā)時(shí)GATE示意圖;
[0028] 圖7為ICG1為低電平觸發(fā)ICG2為高電平觸發(fā)時(shí)GATE示意圖;
[0029] 圖8為ICG1和ICG2均為低電平觸發(fā)時(shí)GATE示意圖;
[0030] 圖9為第N級(jí)門控時(shí)鐘使能端添加的邏輯門組GATE示意圖;
[0031 ] 圖10為第2級(jí)門控時(shí)鐘的時(shí)鐘結(jié)構(gòu)示意圖;
[0032] 圖11為第2級(jí)門控時(shí)鐘的時(shí)鐘結(jié)構(gòu)的降級(jí)處理結(jié)果示意圖;
[0033] 圖12為合并邏輯門之后的時(shí)鐘結(jié)構(gòu)示意圖;
[0034] 圖13為多級(jí)門控時(shí)鐘網(wǎng)絡(luò)結(jié)構(gòu)示意圖;
[0035] 圖14為優(yōu)化之后的時(shí)鐘網(wǎng)絡(luò)結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0036] 下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
[0037] 如圖1所示,為多級(jí)門控時(shí)鐘降低為1級(jí)的實(shí)現(xiàn)流程圖,具體過(guò)程為:
[0038] (11)從時(shí)鐘根節(jié)點(diǎn)出發(fā),找到其連線;
[0039] (12)由連線追蹤到扇出的所有的單元,找出直接與時(shí)鐘根節(jié)點(diǎn)連接的所有門控時(shí) 鐘單元,組成第1級(jí)門控時(shí)鐘單元的集合;
[0040] (13)將步驟(12)得到的第1級(jí)門控時(shí)鐘單元的集合中遍歷每一個(gè)元素(即門控 時(shí)鐘單元)進(jìn)行如下操作:①檢測(cè)該門控時(shí)鐘單元的類型(高電平觸發(fā)或低電平觸發(fā))并 記錄,②找到該門控時(shí)鐘單元使能端輸入的連線并記錄,③找到該門控時(shí)鐘單元輸出端的 連線并記錄;
[0041] (14)由第1級(jí)門控時(shí)鐘單元輸出端連線追蹤到直接扇出的所有的門控時(shí)鐘單元, 組成第2級(jí)門控時(shí)鐘單元的集合;
[0042] (15)將步驟(14)得到的第2級(jí)門控時(shí)鐘單元的集合中遍歷每一個(gè)元素(即門 控時(shí)鐘單元單元)進(jìn)行如下操作:①檢測(cè)該門控時(shí)鐘單元類型(高電平觸發(fā)或者低電平觸 發(fā))并記錄,②找到該門控時(shí)鐘單元使能端輸入的連線并記錄,③找到該門控時(shí)鐘單元輸 出端的連線,④根據(jù)該門控時(shí)鐘單元類型,在本門控時(shí)鐘單元的使能端添加相應(yīng)的邏輯門 組,⑤斷開該門控時(shí)鐘單元的時(shí)鐘輸入端,連接到時(shí)鐘根節(jié)點(diǎn)上;至此,將第2級(jí)門控時(shí)鐘 結(jié)構(gòu)合并到了第1級(jí)門控時(shí)鐘結(jié)構(gòu)中。
[0043] (16)重復(fù)步驟(13)、(14)、(15)的操作,依次將原電路中第3、第4、……、第N級(jí) 門控時(shí)鐘結(jié)構(gòu)合并到第1級(jí)門控時(shí)鐘結(jié)構(gòu)中,從而使得整個(gè)電路變?yōu)?級(jí)門控時(shí)鐘結(jié)構(gòu)。
[0044] 如圖2所示,為合并邏輯門組的過(guò)程,具體實(shí)現(xiàn)流程如下:
[0045] (21)從時(shí)鐘根節(jié)點(diǎn)出發(fā),找到其連線;
[0046] (22)由連線追蹤到所有扇出的單元,找出所有的門控時(shí)鐘單元,把這些單元組成 一個(gè)集合A(這些即設(shè)計(jì)中所有的門控時(shí)鐘單元);
[0047] (23)每次從集合A中選出一個(gè)元素,找到該門控時(shí)鐘單元的使能端,進(jìn)而找到使 能端輸入的連線,由連線追蹤到上一級(jí)輸入的單元,判斷該單元是不是加入的邏輯門組,若 是將邏輯門組組成一個(gè)集合B;
[0048] (24)每次從集合B中取出一個(gè)元素,記為目標(biāo)元素Q,并從集合B中刪除目標(biāo)元素 Q,更新集合B;
[0049] (25)遍歷集合B中的元素P,與目標(biāo)元素Q進(jìn)行對(duì)比,如果輸入與目標(biāo)元素Q完全 相同(即:輸入包括數(shù)目及線名),則進(jìn)行如下操作:①?gòu)募螧中刪除P,②把P輸出連接 門控時(shí)鐘單元的使能端斷開,連接到Q的輸出上,③刪除P的邏輯門組;
[0050] (26)重復(fù)步驟(24)、步驟(25)的操作,直到集合B中所有元素刪完為止。
[0051] 這樣就在原來(lái)的基礎(chǔ)上減少了邏輯門組的數(shù)目,減少的使能信號(hào)的扇出,避免了 布局布線資源的浪費(fèi)。
[0052] 如圖3所示,下面以兩級(jí)門控時(shí)鐘的時(shí)鐘結(jié)構(gòu)為例進(jìn)行說(shuō)明。在圖3中,第1級(jí)門 控時(shí)鐘單元ICG1的使能信號(hào)為EN1,時(shí)鐘輸入端連接到時(shí)鐘根節(jié)點(diǎn)CLK上;第2級(jí)門控時(shí) 鐘單元ICG2的使能信號(hào)為EN2,時(shí)鐘輸入端連接到第1級(jí)門控時(shí)鐘單元的輸出端。當(dāng)ICG1 的使能信號(hào)EN1有效時(shí),時(shí)鐘信號(hào)能穿過(guò)ICG1到達(dá)ICG2的時(shí)鐘輸入端;于此同時(shí)當(dāng)ICG2 的使能信號(hào)EN2有效時(shí),時(shí)鐘信號(hào)才能繼續(xù)穿過(guò)ICG2到達(dá)后續(xù)的時(shí)序單元。使能信號(hào)EN1 決定時(shí)鐘信號(hào)能否傳輸?shù)絀CG1后連接的葉節(jié)點(diǎn);而使能信號(hào)EN1和EN2共同決定時(shí)鐘