專利名稱:設(shè)計時鐘域中鎖存器的布圖的方法和計算機(jī)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體涉及半導(dǎo)體芯片和集成電路的制造與設(shè)計,更特別是涉及 一種設(shè)計鎖存器和其它邏輯單元的物理布圖(布局)的方法,該鎖存器和 邏輯單元從時鐘分布結(jié)構(gòu)例如局部時鐘緩沖器接收時鐘信號。
背景技術(shù):
集成電路廣泛用于各種電子應(yīng)用,從簡單裝置例如手表到非常復(fù)雜的
計算機(jī)系統(tǒng)。通常認(rèn)為微電子集成電路(IC)芯片是在半導(dǎo)體基底(例如 硅)上形成的具有單元間電互聯(lián)的邏輯單元的集合。IC可包括大量單元并
需要單元間的復(fù)雜連接。單元是一個或多個電路元件組,例如晶體管、電 容器、電阻器、電感器、以及其它組合在一起執(zhí)行邏輯功能的基本電路。
單元類型包括例如芯單元、掃描單元和輸入/輸出u/o)單元。每個IC單
元可具有一個或多個引腳,每個引腳又通過連線連至IC的一個或多個其 它引腳。還在芯片表面上形成連接IC引腳的連線。對于更復(fù)雜的設(shè)計,
通常有至少四個不同的用于布線的導(dǎo)電^h質(zhì)層,例如多晶硅層和三個金屬
層(金屬-l、金屬-2、和金屬-3)。多晶硅層、金屬-1、金屬-2、和 金屬-3都用于垂直和/或水平布線。
通過首先構(gòu)思邏輯電路描述、然后將邏輯描述轉(zhuǎn)換為物理描述或者幾 何布圖,而制造IC芯片。通常采用記錄所有網(wǎng)絡(luò)或單元引腳之間的互聯(lián) 的"連線表"執(zhí)行該過程。布圖通常由多層中的一組平面幾何形狀組成。 然后檢驗(yàn)該布圖以保證其滿足所有的設(shè)計要求,特別是時序要求。結(jié)果是 一組作為描述該布圖的中間形式的設(shè)計文檔。然后將該i殳計文檔轉(zhuǎn)換為圖 形產(chǎn)生器文檔,其用于通過光束或者電子束圖形產(chǎn)生器產(chǎn)生稱為4^才莫的圖
形。制造時,這些掩模用于采用一系列光刻步驟形成硅晶片的圖形。將電 路說明轉(zhuǎn)換為布圖的過程稱為物理設(shè)計.
半導(dǎo)體制造中的單元布局包括確定特定單元應(yīng)當(dāng)最佳(或者接近于最
佳)地放置在集成電路器件表面上的位置。因?yàn)槌竺蠹?VLSI)器 件制造過程需要大量元件和細(xì)節(jié),所以物理設(shè)計如果沒有計算機(jī)輔助則不 可實(shí)現(xiàn)。所以,大多數(shù)物理設(shè)計階段大量采用計算機(jī)輔助設(shè)計(CAD)工 具,并且許多階段已經(jīng)部分或者全部自動化。物理設(shè)計過程的自動化提高 了集成水平、減少了換向時間以及增強(qiáng)了芯片性能。對于電子設(shè)計自動化 (EDA)已經(jīng)產(chǎn)生了幾種不同的程序語言,包括Verilog、 VHDL和TDML。 典型的EDA系統(tǒng)接收一種或多種IC器件的高級行為描述,并將該高級i殳 計語言描述轉(zhuǎn)換為各抽象級的連線表。
布局算法通?;谀M退火、基于自頂向下切割的分區(qū)、或者分析范 例(或者其組合)。近年來,特別是在基于自頂向下分割的分區(qū)和分析領(lǐng) 域出現(xiàn)了幾種新的理論布局工具。作為用于微分割分區(qū)的快速而極有效的 算法的多級分區(qū)幫助產(chǎn)生了新一代基于自頂向下分割的布局器。該類布局 器將單元分為兩個(兩分)或者四個(四分)芯片區(qū),然后遞歸地劃分每 個區(qū)直到獲得總體(粗略)布局。分析布局器允許單元在設(shè)計上臨時重疊。 通過由劃分或者引入附加力和/或限制以產(chǎn)生新的優(yōu)化問題來消除重疊而 得到合法化。著名的分析布局器PROUD和GORDIAN都重復(fù)采用等分技 術(shù)以去除重疊。基于Eisenmann力的布局器除了采用熟知的依賴線長的力 以外還采用附加力以減小單元重疊并考慮布局區(qū)域。分析布局器最優(yōu)地解 決弛豫布局組成,例如盡量降低整體二次線長。二次布局器通常采用各種 數(shù)值優(yōu)化技術(shù)以求解線性系統(tǒng)。兩種普遍技術(shù)為共輒梯度(CG)和逐次超 弛豫(SOR) 。 PROUD布局器采用SOR技術(shù),而GORDIAN布局器采 用CG算法。
盡管這些技術(shù)提供單元的關(guān)于其數(shù)據(jù)互聯(lián)的足夠的布局,但是設(shè)計者 在構(gòu)造單元時鐘網(wǎng)絡(luò)時還有另外一個挑戰(zhàn),采用最新的技術(shù)例如低功率、 65納米集成電路使得該挑戰(zhàn)更加困難。因?yàn)槟芎膯栴},低功率電路(例如 對于微處理芯片為20瓦或者更低)更加普遍。特別是,能耗已經(jīng)成為采用 深亞微細(xì)技術(shù)產(chǎn)生高性能電路設(shè)計(在大約1千兆赫或更高的頻率下工作) 的限制因素。時鐘網(wǎng)絡(luò)在數(shù)GHz設(shè)計中占總有效功率的50%。優(yōu)選低功 率設(shè)計還因?yàn)槠滹@示出更低的電源噪聲并提供更好的制造偏差的容差。
存在幾種盡量降低功率同時獲得高性能、低功率系統(tǒng)的時序目標(biāo)的技 術(shù)。 一種方法包括采用局部時鐘緩沖器(LCB)分布時鐘信號。典型的時 鐘控制系統(tǒng)具有產(chǎn)生主時鐘信號的時鐘產(chǎn)生電路(例如鎖相環(huán)),將主時 鐘信號饋送至在LCB產(chǎn)生同步整體時鐘信號的時鐘分布網(wǎng)絡(luò)。每個LCB 調(diào)整整體時鐘工作循環(huán)以及邊沿,以滿足相應(yīng)電路元件的要求,例如局部 邏輯電路或者鎖存器(這里所用的術(shù)語"鎖存器"代表任何通常為時鐘分 布網(wǎng)絡(luò)匯點(diǎn)的計時元件)。因?yàn)樵摃r鐘網(wǎng)絡(luò)是所有互聯(lián)i殳備中的一個最大 功率消耗裝置,所以其還有利于控制LCB的電容負(fù)載,每個LCB驅(qū)動一 組多個時鐘匯點(diǎn)。 一種減小電容負(fù)載的方法為鎖存器集群,即置于其時鐘 域的相應(yīng)LCB附近的鎖存器集群。結(jié)合LCB的鎖存器集群可大大減小總 時鐘線電容,其又減小總的時鐘功率消耗。因?yàn)閷⒋蠖鄶?shù)鎖存器置于LCB 附近,所以還減小了時鐘偏差,這有助于改進(jìn)電路時序。
在圖1的流程圖中描述了具有LCB和鎖存器集群的常規(guī)布局。該過程 從基于電路(l)的輸入布圖的初始布局開始。可通過EDA工具提供該輸 入布圖,或者該布圖可以筒單地為電路元件的隨機(jī)布圖。初始布局采用例 如二次布局在集成電路區(qū)域中定位所有的電路元件包括時鐘匯點(diǎn)。可采用 其它布局技術(shù),但是二次布局常常產(chǎn)生比例如基于微分割的布局的可選技 術(shù)更好的結(jié)果。該過程的二次布局部分求解線性系統(tǒng)Ax-b,這里A為優(yōu) 化矩陣,x和b為向量。在二次布局中,可遞歸地將單元分為更小的面元 (bin),直到達(dá)到每個面元的對象目標(biāo)數(shù),例如五個對象/面元。對于初 始布局,所有的線(邊沿)具有相同的網(wǎng)絡(luò)權(quán)重。然后在早期優(yōu)化(2)中 分析和調(diào)整電路時序。該優(yōu)化可包括柵極尺寸重新調(diào)整和采用柵格系統(tǒng)例 如50 x 50柵格的緩沖器插入,其中將緩沖器分配給具有較低邏輯密度的柵 格單元。接下來是和步驟1相似的加權(quán)布局(3),但是在該加權(quán)布局中輸
入布圖為早期優(yōu)化步驟2的輸出,并且將不同的權(quán)重施加至基于時序約束 的不同邊沿。該劃分對于加權(quán)布局還可更精細(xì),例如遞歸地劃分直到每個 面元上有大約兩個對象。在加權(quán)布局之后是后期優(yōu)化,其提供不同的邏輯 優(yōu)化,例如緩沖器插入,但是處于更精細(xì)(或者有時相同)的程度,例如 在100x IOO柵格(4)中。后期優(yōu)化可以和早期優(yōu)化相同,概念上的不同 在于早期優(yōu)化是在從未通過布圖驅(qū)動優(yōu)化步驟進(jìn)行處理的電路上工作。
圖1的步驟1和3不在鎖存器和其它(非計時)邏輯單元之間區(qū)分, 因此首先允許鎖存器根據(jù)由數(shù)據(jù)路徑時序驅(qū)動的布局工具自由移動。在接 下來的步驟中,該過程僅僅集中于鎖存器本身,即作為一個或多個時鐘域 的部分的鎖存器。將鎖存器分組為基于位置和時鐘域(5 )的給定集群。給 定時鐘域的LCB位于鎖存器集群的質(zhì)心,并將鎖存器拉至LCB ( 6 )。對于 該鎖存器-LCB驅(qū)動布局,LCB的尺寸臨時縮減為和鎖存器相同的寬度。將 例如最重要數(shù)據(jù)路徑的網(wǎng)絡(luò)權(quán)重的IO倍因子的較高權(quán)重(吸引)施加至鎖 存器和LCB之間的互聯(lián)i殳備以進(jìn)行該布局步驟。以該方式將所有的鎖存器 置于和相應(yīng)LCB相鄰,然后將其重新調(diào)整回其初始尺寸。最后的步驟為詳 細(xì)布局,其采用例如微分割布局或者啟發(fā)式技術(shù)(7)細(xì)化布圖。
所產(chǎn)生的LCB -鎖存器結(jié)構(gòu)相對于該布局過程所包括的其它電路元件 非常大,并且大大影響電路時序。LCB本身占據(jù)特別大的區(qū)域,并且將鎖 存器限制為與LCB非常接近。雖然該過程相對于時鐘網(wǎng)絡(luò)具有一些優(yōu)點(diǎn), 但是這樣的限制嚴(yán)重影響布局器的靈活性,并且常常產(chǎn)生較差的邏輯布局。 因此,期望的S:設(shè)計一種改進(jìn)的布局方法,其可減小對通過圍繞LCB聚集 鎖存器而引入的對布局過程的干擾。如果該方法可平衡邏輯布局以及鎖存 器布局約束,以獲得較高質(zhì)量的時序,則其更為有利。
發(fā)明內(nèi)容
因此本發(fā)明的一個目標(biāo)在于提供一種設(shè)計集成電路布圖的改進(jìn)布局方 法,其考慮時鐘網(wǎng)絡(luò),并將屬于不同時鐘域的鎖存器置于和其相應(yīng)局部時 鐘緩沖器更近的地方但不犧牲時序要求。
本發(fā)明的另 一個目標(biāo)在于提供一種改進(jìn)時序同時降低時鐘能耗的方法。
而本發(fā)明的另一個目標(biāo)在于提供一種高性能、低功率電路的改進(jìn)鎖存 器布局技術(shù)。
上述目標(biāo)在設(shè)計集成電路的時鐘域中的鎖存器布圖的方法實(shí)現(xiàn),所述
方法包括基于時序約束優(yōu)化鎖存器和其它電路元件的輸入布圖,以產(chǎn)生 中間優(yōu)化的布圖;基于中間優(yōu)化布圖限定時鐘域的時鐘分布結(jié)構(gòu)例如局部 時鐘緩沖器(LCB)的位置;基于吸引值將鎖存器布局在時鐘分布結(jié)構(gòu)周 圍,同時布局其它電路元件以產(chǎn)生新的輸入布圖;以及迭代地重復(fù)優(yōu)化、 限定、并布局,同時逐次地增加吸引值?;跁r鐘域和集群分值將鎖存器 劃分為集群,所述分?jǐn)?shù)根據(jù)給定對象對與該對象尺寸的連接權(quán)重而變化。 在鎖存器集群的質(zhì)心建立給定時鐘域的LCB目標(biāo)位置,然后通過提高吸引 力將鎖存器集群拉引至LCB。在示例性應(yīng)用中,重復(fù)該優(yōu)化、限定、和布 局全部四次迭代,其相對吸引值為9、 18、 36和300。將該吸引值用作鎖 存器和LCB之間線長的乘法因子。還可在LCB本身和其相應(yīng)目標(biāo)位置之 間采用增加的吸引值。
本發(fā)明的上述及其它目標(biāo)、特征以及優(yōu)點(diǎn)將在下文的詳細(xì)描述中清楚。
本領(lǐng)域技術(shù)人員通過參考附圖可更好地理解本發(fā)明,及其多個目標(biāo)、 特征、和優(yōu)點(diǎn)。
圖1是描述具有時鐘優(yōu)化以及隨后的鎖存器-LCB驅(qū)動布局的常規(guī)鎖 存器布局技術(shù)邏輯流程的示圖2是根據(jù)本發(fā)明一個實(shí)施例編程用于執(zhí)行集成電路的計算機(jī)輔助設(shè) 計的計算機(jī)系統(tǒng)的框圖3A - 3F為在三個時鐘域中具有鎖存器的集成電路的布圖的俯視圖, 根據(jù)本發(fā)明一個實(shí)施例對該三個時鐘域迭代優(yōu)化并布局;以及
圖4是描述本發(fā)明一個實(shí)施例的邏輯流程的示意圖,其中以增加的鎖
存器-LCB吸引值迭代重復(fù)時鐘優(yōu)化和鎖存器-LCB驅(qū)動布局。 不同附圖中相同的參考標(biāo)記表示相似或者相同的項(xiàng)目。
具體實(shí)施例方式
現(xiàn)在參考附圖,并特別參考附圖2,描述了才艮據(jù)本發(fā)明一個應(yīng)用編程 進(jìn)行集成電路的計算機(jī)輔助設(shè)計的計算機(jī)系統(tǒng)的一個實(shí)施例10。系統(tǒng)10 包括執(zhí)行程序指令的中央處理單元(CPU) 12、存儲系統(tǒng)的基本輸入/輸出 邏輯的固件或者只讀存儲器(ROM) 14、以及臨時存儲程序指令以及 CPU12所采用的操作數(shù)數(shù)據(jù)的動態(tài)隨機(jī)訪問存儲器(DRAM)16。 CPU 12、 ROM 14和DRAM 16均連至系統(tǒng)總線18。存儲器層次中還有其它沒有描 述的結(jié)構(gòu),例如電路板上(Ll)和二級(L2)高速緩沖存儲器。在高性能 應(yīng)用中,系統(tǒng)10可包括多個CPU和分布系統(tǒng)存儲器。
還采用PCI主橋22將CPU12、 ROM14和DRAM16耦合至外圍元件 互聯(lián)(PCI)局部總線10。 PCI主橋22提供低時延路徑,通過其處理器 12可訪問與總線存儲器或者I/O地址空間內(nèi)任意位置映射的PCI器件。PCI 主橋22還提供高帶寬路徑以允許PCI器件訪問DRAM16。連至PCI局部 總線20的是局域網(wǎng)(LAN)適配器24、小型計算機(jī)系統(tǒng)接口 (SCSI)適 配器26、擴(kuò)展總線橋28、音頻適配器30、和圖形適配器32。 LAN適配器 24可用于將計算機(jī)系統(tǒng)10連至外部計算機(jī)網(wǎng)絡(luò)34,例如因特網(wǎng)。小型計 算機(jī)系統(tǒng)接口 (SCSI)適配器26用于控制高速SCSI盤驅(qū)動器36。盤驅(qū) 動器36以更持久的狀態(tài)存儲程序指令和數(shù)據(jù),包括如下所述體現(xiàn)本發(fā)明的 程序。擴(kuò)展總線橋28用于將工業(yè)標(biāo)準(zhǔn)結(jié)構(gòu)(ISA)擴(kuò)展總線38耦合至PCI 局部總線20。如所示出,將數(shù)個用戶輸入設(shè)備連至ISA總線38,包括鍵 盤40、麥克風(fēng)42、和圖形指點(diǎn)i殳備(鼠標(biāo))44。其它i殳備還可連至ISA 總線38,例如CD-ROM驅(qū)動器46。音頻適配器30控制揚(yáng)聲器48的音 頻輸出,而圖^ii配器32控制至顯示監(jiān)視器50的視頻輸出,以允許用戶 如這里所述地執(zhí)行集成電路設(shè)計。
盡管描述性的應(yīng)用在盤驅(qū)動器36上提供了實(shí)施本發(fā)明的程序指令,但
是本領(lǐng)域技術(shù)人員將理解,本發(fā)明可實(shí)施在采用其它計算機(jī)可讀介質(zhì)(包 括傳輸介質(zhì))的程序產(chǎn)品中。
計算機(jī)系統(tǒng)10執(zhí)行釆用新型技術(shù)將時鐘匯點(diǎn)布局在集成電路設(shè)計中
的程序指令,其中優(yōu)選通過常規(guī)方法將該匯點(diǎn)初始地布局和優(yōu)化,其后如
下文所述增加鎖存器-LCB吸引值而迭代布局和優(yōu)化該匯點(diǎn)。因此,實(shí)施 本發(fā)明的程序可包括各種二次優(yōu)化器、基于分割的分區(qū)裝置和緩沖器插入 工具的常規(guī)方面,而本領(lǐng)域技術(shù)人員在參考該公開內(nèi)容時將會清楚這些細(xì) 節(jié)。盡管這里將這些時鐘匯點(diǎn)稱作鎖存器,但是該術(shù)語包括如觸發(fā)器、動 態(tài)邏輯電路、或者這些及其它計時電路元件任意組合的器件。
在一個應(yīng)用中,計算機(jī)系統(tǒng)10如結(jié)合圖1所述采用初始布局、早期優(yōu) 化、加權(quán)布局、后期優(yōu)化以及鎖存器聚集步驟(1-5)開始設(shè)計過程。輸 入數(shù)據(jù)(連線表)包括時鐘域信息,并且在初始布局前該i殳計為跟蹤時鐘 以將鎖存器分配至其相應(yīng)域組。這里,術(shù)語"時鐘域"指用于選通匯點(diǎn)集 合的任何非數(shù)據(jù)信號。該輸入數(shù)據(jù)還可包括選通該域組的源信息。
可釆用各種已知的聚集測量執(zhí)行鎖存器聚集。本發(fā)明優(yōu)選將對象(鎖 存器或者邏輯單元)劃分為基于時鐘域和集群分值的集群,如2004年11 月22日申請的美國專利申請10/996, 293更詳細(xì)地描述(其在此引入作為 參考),所述集群分值根據(jù)給定對象對及該對象尺寸的連接權(quán)重變化。圖 3A中示出了所形成布圖60的一個實(shí)例。在該簡化實(shí)例中,有54個鎖存器 集群(實(shí)體塊),每個集群位于三個不同時鐘域62a、 62b、 62c的其中一 個中。本領(lǐng)域技術(shù)人員將理解,本發(fā)明的實(shí)際應(yīng)用可包括成百上千或者成 千上萬個具有大量鎖存器集群和時鐘域的時鐘匯點(diǎn)。
該過程然后迭代地基于逐次增加的吸引值將鎖存器置于相關(guān)的局部時 鐘緩沖器(LCB)、或者其它可用于時鐘分布網(wǎng)絡(luò)中的結(jié)構(gòu)上。在該迭代 期間,調(diào)用時序優(yōu)化(例如柵極尺寸調(diào)整和重新緩沖)以保持時序估計準(zhǔn) 確。圖3B中示出了鎖存器-LCB驅(qū)動布局的第一次迭代。在圖3A中間 布圖中,在相應(yīng)時鐘域62a、 62b、 62c的鎖存器集群的質(zhì)心建立LCB目標(biāo) 位置。對于第一次迭代,將鎖存器-LCB吸引值(WJ)設(shè)置為與先前加 權(quán)布局中非關(guān)鍵網(wǎng)絡(luò)的權(quán)重近似相同,以稍高的吸引值將LCB本身設(shè)置在 其相應(yīng)的目標(biāo)位置。鎖存器-LCB吸引值和LCB -目標(biāo)位置吸引值用作 確定布局有效連線長度的乘數(shù)。從集群中心至相應(yīng)LCB中心測量實(shí)際線 長。如和圖3A相比,從圖3B的總體更緊密布圖66可以看出,該鎖存器 -LCB驅(qū)動布局將給定時鐘域的鎖存器集群圍繞LCB拉引得更近。執(zhí)行 該鎖存器-LCB驅(qū)動布局的專用算法可以是任何類型的布局器,優(yōu)選為分 析布局器例如盡量降低鎖存器和LCB之間以及LCB和其目標(biāo)位置之間總 體加權(quán)線長的二次布局工具。
即使采用該更緊密的鎖存器-LCB布局,也仍然存在幾個和LCB稍 遠(yuǎn)的鎖存器集群,例如作為時鐘域62a的部分并連至LCB64a的集群68、 70和72。可使這些偏遠(yuǎn)的集群與LCB更近,同時通過在隨后的迭代重新 優(yōu)化布圖并逐漸增加鎖存器-LCB吸引值以及LCB -目標(biāo)位置吸引值而 維持時序要求。圖3C示出了通過另外的后期優(yōu)化和重新聚集布圖66產(chǎn)生 的布圖74。在該第二 (中間)優(yōu)化的布圖74中,許多鎖存器集群未變, 但是將一些鎖存器劃分為不同的集群,并稍微移動一些集群。集群68、 70、 72距離時鐘域62a中鎖存器質(zhì)心仍較遠(yuǎn)。該鎖存器集群然后經(jīng)歷第二鎖存 器-LCB布局以形成圖3D的布圖76。對該第二次迭代,鎖存器-LCB 吸引值(W2)稍高于在第一次迭代中采用的前面的值,并且類似地增加 LCB -目標(biāo)位置吸引值。可以看出,布圖76將集群牽引得距離LCB更近, 特別是盡管集群72稍遠(yuǎn)但是集群68和70要近得多。
根據(jù)設(shè)計者的判斷迭代地重復(fù)重新優(yōu)化、重新聚集和鎖存器-LCB驅(qū) 動布局,設(shè)計者可例如基于計算約束設(shè)置迭代次數(shù)。還可在滿足某些時序 目標(biāo)或者逐次迭代之間的時序改進(jìn)低于閾值時終止迭代。在圖3E和圖3F 中示出了第三次迭代。圖3E中的布圖78通過以布圖76為輸入而進(jìn)行的 另外的后期優(yōu)化和重新聚集形成。可再次不同地劃分該鎖存器,并且某些 鎖存器集群的位置沿給定時鐘域的鎖存器質(zhì)心改變。布圖78然后用于重新 定位LCB64a、 64b和64c,接下來進(jìn)行鎖存器-LCB驅(qū)動布局以實(shí)現(xiàn)圖 3F的布圖80。對于最終迭代,和LCB-目標(biāo)位置吸引值一樣,鎖存器-
LCB吸引值(Ws)高得多。在該最終的布圖80中,所有的鎖存器集群, 包括集群68、 70和72,與相應(yīng)的LCB較近。
可由設(shè)計者基于正在設(shè)計的電路的特定細(xì)微差別選擇不同迭代中鎖存 器-LCB吸引值的特定值。在示例性實(shí)施中,存在四次優(yōu)化迭代,接下來 是逐次增加鎖存器-LCB吸引值9、 18、 36和300以及逐次增加LCB -目標(biāo)位置吸引值37、 111、 333和1000的鎖存器聚集和鎖存器-LCB驅(qū)動 布局。這些權(quán)重僅僅應(yīng)用于從LCB至鎖存器的時鐘信號布線。比較而言, 數(shù)據(jù)信號布線的相對權(quán)重從10-100,這里IO為正弛豫的最小值,而對最 關(guān)鍵的數(shù)據(jù)連接給定權(quán)重100。
還可參考圖4的流程進(jìn)一步理解本發(fā)明,其描述了根據(jù)一個應(yīng)用的邏 輯流程。該過程從初始二次布局匯點(diǎn)開始,其中將匯點(diǎn)遞歸地劃分為更小 的面元,直到獲得每個面元中五個對象(卯)。對于初始布局,所有的線 (邊沿)具有相等的權(quán)重。然后在早期優(yōu)化中分析和調(diào)整電路時序,包括 采用10x IO柵格進(jìn)行柵極尺寸重新調(diào)整和緩沖器插入,其中將緩沖器分配 給具有較低邏輯密度的柵格單元(92)。接下來是與初始布局類似的網(wǎng)絡(luò) 權(quán)重驅(qū)動布局,但是在網(wǎng)絡(luò)權(quán)重驅(qū)動布局中,根據(jù)不同的邊沿在滿足時序 約束中的臨界性將不同的權(quán)重應(yīng)用至不同的邊沿,并且遞歸地劃分電路元 件直到每個面元中有兩個對象(94)。
此時該過程^以后期優(yōu)化開始的迭代循環(huán),該優(yōu)化以100 x 100的柵 格(96)執(zhí)行柵極尺寸重新調(diào)整和緩沖器插入。然后聚集鎖存器(98), 并基于特別迭代設(shè)置鎖存器_ LCB吸引值(100)。接下來是采用當(dāng)前鎖存 器-LCB吸引值的鎖存器-LCB驅(qū)動布局(102)。以指定的迭代數(shù)重復(fù)后 期優(yōu)化、鎖存器聚集、鎖存器-LCB吸引值設(shè)置和鎖存器-LCB驅(qū)動布局, 而鎖存器-LCB驅(qū)動布局的輸出成為下次迭代的新輸入布圖(104)。該步 驟通過插入時序優(yōu)化平穩(wěn)地將鎖存器移至LCB,從而可避免可能以別的方 式從極大鎖存器-LCB結(jié)構(gòu)產(chǎn)生的對時序的不利影響。最后步驟為詳細(xì)布 局,其采用例如以布局器如TIMBERWOLF (7)進(jìn)行微分割布局或者啟發(fā)式 才支術(shù)細(xì)化該布圖。
在現(xiàn)有技術(shù)中,分別從邏輯布局過程總體處理時鐘樹合成。通過應(yīng)用 迭代時鐘網(wǎng)絡(luò)加權(quán)調(diào)整,本發(fā)明可使邏輯布局和時鐘布局之間的相互作用 更強(qiáng),這一點(diǎn)產(chǎn)生更高的質(zhì)量結(jié)果(時序)。局部時鐘緩沖器上的總電容
還減小25%,大大節(jié)省功率。試驗(yàn)結(jié)果表明本發(fā)明不僅改進(jìn)時序同時降低 時鐘功率,而且改進(jìn)最差情況弛豫。
盡管參考特別實(shí)施例描述了本發(fā)明,但是該描述不應(yīng)理解為限制意義。
及本發(fā)明的可選實(shí)施例。例如,本發(fā)明不限于僅僅采用二次布局,并且布 局步驟可利用其它布局算法例如非線性優(yōu)化、力引導(dǎo)、微分割或者模擬退 火。因此可認(rèn)為,可不偏離所附權(quán)利要求所限定的本發(fā)明實(shí)質(zhì)或者范圍而 進(jìn)行這樣的更改。
權(quán)利要求
1. 一種設(shè)計集成電路的時鐘域中的多個鎖存器的布圖的方法,包括基于時序約束優(yōu)化所述鎖存器的輸入布圖,以產(chǎn)生中間優(yōu)化布圖;基于所述中間優(yōu)化布圖限定所述時鐘域的時鐘分布結(jié)構(gòu)的位置;基于吸引值將所述鎖存器布局在所述時鐘分布結(jié)構(gòu)周圍,以產(chǎn)生新的輸入布圖;以及迭代地重復(fù)所述優(yōu)化、限定、以及布局,同時逐次地增加所述吸引值。
2. 根據(jù)權(quán)利要求l的方法,還包括在所述優(yōu)化后將所述時鐘域中的鎖 存器劃分為集群,其中通過布局所述鎖存器集群,而將所述鎖存器布局在 所述時鐘分布結(jié)構(gòu)的周圍。
3. 根據(jù)權(quán)利要求l的方法,其中以9、 18、 36和300的相對吸引值在 共四次迭代中重復(fù)所述優(yōu)化、限定、和布局。
4. 根據(jù)權(quán)利要求l的方法,其中當(dāng)在所述時鐘分布結(jié)構(gòu)周圍布局所述 鎖存器時,將所述吸引值用作所述鎖存器與所述時鐘分布結(jié)構(gòu)之間的線長 的乘數(shù)。
5. 根據(jù)權(quán)利要求l的方法,其中所述時鐘分布結(jié)構(gòu)為局部時鐘緩沖器 (LCB),并且該吸引值為鎖存器一:LCBP及引值。
6. 根據(jù)權(quán)利要求5的方法,其中所述限定在所述鎖存器的質(zhì)心建立 LCB目標(biāo)位置,并且所述布局還采用隨著逐次迭代增加的LCB-目標(biāo)位 置吸引值。
7. —種計算機(jī)系統(tǒng),包括 處理程序指令的一個或多個處理器; 連至所述一個或多個處理器的存儲裝置;以及位于所述存儲裝置中的程序指令,用于通過以下步驟設(shè)計集成電路的 時鐘域中多個鎖存器的布圖基于時序約束優(yōu)化所述鎖存器的輸入布圖, 以產(chǎn)生中間優(yōu)化布圖;基于所述中間優(yōu)化布圖限定所述時鐘域的時鐘分布結(jié)構(gòu)的位置;基于吸引值將所述鎖存器布局在所述時鐘分布結(jié)構(gòu)周圍,以 產(chǎn)生新的輸入布圖;以及,迭代地重復(fù)所述優(yōu)化、限定、以及布局,同時 逐次地增加所述吸引值。
8. 根據(jù)權(quán)利要求7的計算機(jī)系統(tǒng),其中所述程序指令還在所述優(yōu)化后 將所述時鐘域中的鎖存器劃分為集群,并且通過布局所述鎖存器集群而將 所述鎖存器布局在所述時鐘分布結(jié)構(gòu)的周圍。
9. 根據(jù)權(quán)利要求7的計算機(jī)系統(tǒng),其中以9、 18、 36和300的相對吸 引值在共四次迭代中重復(fù)所述優(yōu)化、限定、和布局。
10. 根據(jù)權(quán)利要求7的計算機(jī)系統(tǒng),其中當(dāng)在所述時鐘分布結(jié)構(gòu)周圍 布局所述鎖存器時,將所述吸引值用作鎖存器與所述時鐘分布結(jié)構(gòu)之間的 線長的乘數(shù)。
11. 根據(jù)權(quán)利要求7的計算機(jī)系統(tǒng),其中所述時鐘分布結(jié)構(gòu)為局部時 鐘緩沖器(LCB),并且所述吸引值為鎖存器-LCB吸引值。
12. 根據(jù)權(quán)利要求ll的計算機(jī)系統(tǒng),其中所述限定在所述鎖存器的質(zhì) 心建立LCB目標(biāo)位置,并且所述布局還采用隨著逐次迭代增加的LCB-目標(biāo)位置吸引值
全文摘要
一種設(shè)計時鐘域中鎖存器的布圖的方法和計算機(jī)系統(tǒng),其中通過增加吸引力逐步牽引鎖存器直到其最終與時鐘分布結(jié)構(gòu)例如局部時鐘緩沖器(LCB)相鄰。在迭代時,調(diào)用時序優(yōu)化,例如柵極尺寸調(diào)整和再緩沖,以保持時間估計準(zhǔn)確。通過施加迭代時鐘網(wǎng)絡(luò)加權(quán)調(diào)整,本發(fā)明使邏輯布局和時鐘布局之間的相互作用更強(qiáng),這一點(diǎn)可產(chǎn)生更高質(zhì)量的時序并且大大節(jié)省功率。
文檔編號G06F17/50GK101206686SQ20071016991
公開日2008年6月25日 申請日期2007年11月8日 優(yōu)先權(quán)日2006年12月14日
發(fā)明者C·J·阿爾珀特, C·N·塞, P·G·維利亞盧比亞, S·拉姆吉 申請人:國際商業(yè)機(jī)器公司