專利名稱:用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路設(shè)計(jì)的自動(dòng)化,具體涉及用于集成電路設(shè)計(jì)的時(shí)鐘樹的構(gòu)建和優(yōu)化,更具體涉及一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法和裝置。
背景技術(shù):
大規(guī)模集成電路設(shè)計(jì)中,單個(gè)時(shí)鐘源信號(hào)要驅(qū)動(dòng)眾多時(shí)序器件(寄存器,鎖存器, 存儲(chǔ)器等)。如果用時(shí)鐘源信號(hào)直接驅(qū)動(dòng)時(shí)序器件,則驅(qū)動(dòng)負(fù)載能力會(huì)成為問(wèn)題,并且從時(shí)鐘源到寄存器時(shí)鐘端的布線過(guò)長(zhǎng)帶來(lái)的時(shí)延過(guò)大。因此,目前通常采用時(shí)鐘分布網(wǎng)絡(luò)的方式來(lái)驅(qū)動(dòng)時(shí)序器件,即在時(shí)鐘源和時(shí)序器件之間插入緩沖器或者反相器,形成一個(gè)時(shí)鐘分布網(wǎng)絡(luò)。目前的時(shí)鐘分布網(wǎng)絡(luò)通常采用時(shí)鐘樹的架構(gòu)。圖1示出了通過(guò)時(shí)鐘樹來(lái)驅(qū)動(dòng)時(shí)序器件的示意圖。如圖所示,由時(shí)鐘源和多級(jí)緩沖器(或者反相器)組成一個(gè)時(shí)鐘樹,由作為該時(shí)鐘樹的葉節(jié)點(diǎn)的緩存器來(lái)驅(qū)動(dòng)各時(shí)序器件FF。建立時(shí)間(Setup Time)是指在時(shí)鐘采集沿到來(lái)之前數(shù)據(jù)從不穩(wěn)定到穩(wěn)定所需的時(shí)間,如果建立時(shí)間不滿足要求那么數(shù)據(jù)不能在這個(gè)時(shí)鐘沿被穩(wěn)定地打入時(shí)序器件。保持時(shí)間(Hold Time)是指數(shù)據(jù)穩(wěn)定后要保持的時(shí)間,如果保持時(shí)間不滿足要求,數(shù)據(jù)同樣不能被穩(wěn)定地打入時(shí)序器件。圖2示出了建立時(shí)間和保持時(shí)間的示意圖。如圖所示,第一個(gè)時(shí)序器件(可稱為發(fā)送器件)輸出的數(shù)據(jù)信號(hào)Data經(jīng)組合邏輯傳送到第二個(gè)時(shí)序器件(可稱為捕獲器件)的輸入,時(shí)鐘信號(hào)Clock控制第二個(gè)時(shí)序器件捕獲數(shù)據(jù)信號(hào)。為使數(shù)據(jù)信號(hào)被第二時(shí)序器件正確地捕獲,數(shù)據(jù)信號(hào)應(yīng)當(dāng)在時(shí)鐘沿之前至少Tsetup的時(shí)間到達(dá)第二時(shí)序器件的輸入,而在時(shí)鐘沿之后至少保持!"hold的時(shí)間。Tsetup即為建立時(shí)間,而Thold 為保持時(shí)間。數(shù)據(jù)信號(hào)和時(shí)鐘信號(hào)的傳輸路徑中的每個(gè)器件都會(huì)造成時(shí)延。由于工藝、溫度、電壓等的影響,每個(gè)器件的時(shí)延是在一定范圍[lb,ub]內(nèi)浮動(dòng)的。由每個(gè)器件的時(shí)延浮動(dòng)的下限Ib計(jì)算的整個(gè)路徑的時(shí)延被稱為早期模式(early mode)的路徑時(shí)延;由每個(gè)器件的時(shí)延浮動(dòng)的上限ub計(jì)算的整個(gè)路徑的時(shí)延被稱為晚期模式(late mode)的路徑時(shí)延。在集成電路中,時(shí)鐘決定了數(shù)據(jù)傳輸和控制的步長(zhǎng),決定了設(shè)計(jì)所能達(dá)到的最大頻率。為了保證集成電路中各器件的正確工作,時(shí)鐘路徑的時(shí)延與數(shù)據(jù)路徑的時(shí)延之間必須滿足一定的關(guān)系。然而,目前的時(shí)鐘樹綜合(Clock Tree Synthesis)工具多根據(jù)時(shí)鐘偏差(Skew) 來(lái)度量時(shí)鐘樹質(zhì)量,并以采用時(shí)鐘偏差驅(qū)動(dòng)的時(shí)鐘樹綜合方法。通常在時(shí)鐘樹綜合完成后才能發(fā)現(xiàn)共享時(shí)鐘路徑優(yōu)化不足導(dǎo)致的問(wèn)題,并進(jìn)行手工優(yōu)化。這不但是一個(gè)非常耗時(shí)的工作,而且,由于集成電路設(shè)計(jì)中包含大量的需要進(jìn)行時(shí)序檢查的時(shí)序器件,找到一個(gè)能夠滿足所有時(shí)序器件的時(shí)序檢查要求的共享時(shí)鐘路徑優(yōu)化方案是非常困難的。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)方面,提出了一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法,包括通過(guò)對(duì)經(jīng)過(guò)布局的網(wǎng)表進(jìn)行時(shí)序分析,提取出該網(wǎng)表中的時(shí)序器件之間的路徑時(shí)延;以及根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹,使得任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,其中,兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重與該兩個(gè)時(shí)鐘樹相對(duì)于該對(duì)時(shí)序器件的分叉點(diǎn)距離該對(duì)時(shí)序器件的時(shí)鐘樹級(jí)數(shù)正相關(guān)。根據(jù)本發(fā)明的另一個(gè)方面,提出了一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的裝置,包括提取模塊,用于通過(guò)對(duì)經(jīng)過(guò)布局的網(wǎng)表進(jìn)行時(shí)序分析,提取出該網(wǎng)表中的時(shí)序器件之間的路徑時(shí)延;構(gòu)建模塊,用于根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹,使得任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,其中,兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重與該時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該對(duì)時(shí)序器件的時(shí)鐘樹級(jí)數(shù)正相關(guān)。由于本發(fā)明的方法能夠根據(jù)從網(wǎng)表中提取的時(shí)序器件之間的路徑時(shí)延來(lái)構(gòu)建時(shí)鐘樹,且該時(shí)鐘樹使得時(shí)序器件之間的路徑時(shí)延與時(shí)鐘樹分叉權(quán)重的乘積最小化,這樣就提出了一種評(píng)估集成電路設(shè)計(jì)的時(shí)序器件的共享時(shí)鐘路徑程度的標(biāo)準(zhǔn),并能夠?qū)崿F(xiàn)針對(duì)特定集成電路設(shè)計(jì)自動(dòng)生成共享時(shí)鐘路徑優(yōu)化的時(shí)鐘樹。
所附權(quán)利要求中闡述了被認(rèn)為是本發(fā)明的特點(diǎn)的創(chuàng)造性特征。但是,通過(guò)參照附圖閱讀下面對(duì)說(shuō)明性實(shí)施例的詳細(xì)說(shuō)明可更好地理解發(fā)明本身以及其優(yōu)選使用模式、目標(biāo)、特征以及優(yōu)點(diǎn),在附圖中圖1示出了通過(guò)時(shí)鐘樹來(lái)驅(qū)動(dòng)時(shí)序器件的示意圖;圖2示出了建立時(shí)間和保持時(shí)間的示意圖;圖3示出了時(shí)鐘樹驅(qū)動(dòng)邏輯器件以及相關(guān)時(shí)延關(guān)系的示意圖;圖4示出了由一作為二叉樹的時(shí)鐘樹驅(qū)動(dòng)時(shí)序器件a、b、C、d的示意圖;圖5示出了表示集成電路設(shè)計(jì)中的任意兩個(gè)寄存器之間的時(shí)鐘樹分叉權(quán)重的時(shí)鐘樹分叉權(quán)重矩陣;圖6示出了表示集成電路設(shè)計(jì)中的任意兩個(gè)寄存器之間的數(shù)據(jù)路徑時(shí)延的數(shù)據(jù)路徑時(shí)延矩陣;圖7示出了運(yùn)輸問(wèn)題中各產(chǎn)地的產(chǎn)量、各銷地的銷量以及每個(gè)產(chǎn)地與每個(gè)銷地之間的運(yùn)輸單價(jià)的表;圖8示出了根據(jù)本發(fā)明的實(shí)施例的用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹拓?fù)涞姆椒ǖ倪^(guò)程;以及圖9示出了根據(jù)本發(fā)明的實(shí)施例的用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的裝置。
具體實(shí)施例方式下面參照附圖來(lái)說(shuō)明本發(fā)明的實(shí)施例。在下面的說(shuō)明中,闡述了許多具體細(xì)節(jié)以便更全面地了解本發(fā)明。但是,對(duì)于本技術(shù)領(lǐng)域內(nèi)的技術(shù)人員明顯的是,本發(fā)明的實(shí)現(xiàn)可不具有這些具體細(xì)節(jié)中的一些。此外,應(yīng)當(dāng)理解的是,本發(fā)明并不限于所介紹的特定實(shí)施例。 相反,可以考慮用下面的特征和要素的任意組合來(lái)實(shí)施本發(fā)明,而無(wú)論它們是否涉及不同的實(shí)施例。因此,下面的方面、特征、實(shí)施例和優(yōu)點(diǎn)僅作說(shuō)明之用而不應(yīng)被看作是所附權(quán)利要求的要素或限定,除非權(quán)利要求中明確提出。首先參照附圖描述根據(jù)本發(fā)明的實(shí)施例的用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法的基本思想。圖3示出了時(shí)鐘樹驅(qū)動(dòng)邏輯器件以及相關(guān)時(shí)延關(guān)系的示意圖。如圖所示,時(shí)鐘信號(hào)通過(guò)包括時(shí)鐘源、緩沖器buf_0、緩沖器buf_l的時(shí)鐘路徑驅(qū)動(dòng)發(fā)送時(shí)序器件,通過(guò)包括時(shí)鐘源、緩沖器buf_0、緩沖器buf_2的時(shí)鐘路徑驅(qū)動(dòng)捕獲寄存器,發(fā)送時(shí)序器件輸出的數(shù)據(jù)信號(hào)經(jīng)由組合邏輯傳送到捕獲寄存器的輸入。在該圖所示的電路中,為保證器件的正確工作,必須滿足以下公式Ll+Gmax+Tsetup < T+C1其中,Ll是從時(shí)鐘源到發(fā)送寄存器的晚期模式的時(shí)延,Cl是從時(shí)鐘源到捕獲寄存器的早期模式的時(shí)延,Gmax是兩個(gè)寄存器之間的組合邏輯的晚期模式的時(shí)延,Tsetup是建立時(shí)間,T為時(shí)鐘周期。從以上公式可得T > (Ll-Cl)+Gmax+Tsetup??梢?,Ll和Cl之間的差值越小,則所能實(shí)現(xiàn)的時(shí)鐘周期越小,即所能實(shí)現(xiàn)的時(shí)鐘頻率越大。在上圖中,假定緩沖器buf_l和 buf_2是相同類型的緩沖器,有相同的時(shí)延。但是在計(jì)算Ll和Cl的時(shí)候,buf_l會(huì)用晚期模式的時(shí)延,即時(shí)延上限;buf_2會(huì)用早期模式的時(shí)延,即時(shí)延下限。因?yàn)閎uf_l和buf_2 處于不同的路徑上。但是buf_0的時(shí)延在計(jì)算Ll和Cl時(shí)是一樣的,因?yàn)長(zhǎng)l和Cl共享了 buf_0,而buf_0不可能同時(shí)擁有不同的時(shí)延。因此可以得到結(jié)論,兩個(gè)有數(shù)據(jù)傳遞關(guān)系的寄存器,共享的時(shí)鐘路徑(common clock path)越多,Ll和Cl之間的差值越小,從而對(duì)提高時(shí)鐘頻率越有幫助。在圖3所示的電路中,為了保證器件的正確工作,還必須滿足以下公式L2+Gmin > C2+Thold其中,L2是從時(shí)鐘源到發(fā)送寄存器的早期模式的時(shí)延,C2是從時(shí)鐘源到捕獲寄存器的晚期模式的時(shí)延,Gmin是兩個(gè)寄存器之間的組合邏輯的早期模式的時(shí)延。從以上公式可得C2-L2 < Gmin-Thold。如果C2和L2完全共享時(shí)鐘路徑,那么 C2-L2 = 0,即Gmin > Thold,這是很容易滿足的。在計(jì)算C2的時(shí)候,對(duì)于非共享的時(shí)鐘路徑會(huì)采用晚期模式的時(shí)延;在計(jì)算L2的時(shí)候,對(duì)于非共享的時(shí)鐘路徑會(huì)用早期模式的時(shí)延。 因此,如果C2和L2共享的時(shí)鐘路徑很少,則會(huì)導(dǎo)致C2-L2的差值很大,則很難滿足C2-L2 < Gmin-Thold的時(shí)序檢查;如果C2-L2的差值超過(guò)了時(shí)鐘周期T,則完全不能滿足。這時(shí), 同樣希望有相關(guān)時(shí)序檢查的時(shí)序器件盡可能多地共享時(shí)鐘路徑。對(duì)于集成電路設(shè)計(jì)中的時(shí)序器件(例如,寄存器等)與時(shí)序器件之間的每一條數(shù)據(jù)路徑,可得到以下參數(shù)數(shù)據(jù)路徑時(shí)延,其可表示為DDly。如果兩個(gè)時(shí)序器件之間沒有數(shù)據(jù)路徑,則DDly = 0。如果兩個(gè)時(shí)序器件之間存在數(shù)據(jù)路徑,則DDly等于數(shù)據(jù)信號(hào)在該數(shù)據(jù)路徑上傳輸?shù)臅r(shí)延。兩個(gè)時(shí)序器件之間的數(shù)據(jù)路徑是指兩個(gè)時(shí)序器件之間的直接的數(shù)據(jù)路徑,即由一個(gè)時(shí)序器件輸出的數(shù)據(jù)經(jīng)由組合邏輯傳送到另一個(gè)時(shí)序器件的輸入。如果兩個(gè)時(shí)序器件之間還包括其他時(shí)序器件,則在這兩個(gè)時(shí)序器件并不存在直接的數(shù)據(jù)路徑。該參數(shù)可以通過(guò)對(duì)集成電路設(shè)計(jì)的網(wǎng)表進(jìn)行時(shí)序分析而得到。假設(shè)已通過(guò)時(shí)鐘樹綜合將時(shí)鐘樹綜合到集成電路設(shè)計(jì)中,則對(duì)于時(shí)序器件與時(shí)序器件之間的每一條數(shù)據(jù)路徑,可得到以下參數(shù)時(shí)鐘樹分叉權(quán)重,其可表示為CKweight。對(duì)于給定的時(shí)鐘樹,時(shí)序器件與其自身之間的CKweight = 0 ;如果兩個(gè)時(shí)序器件的時(shí)鐘路徑在時(shí)鐘樹的最后一級(jí)緩沖器分叉,則CKweight = 1 ;如果兩個(gè)時(shí)序器件的時(shí)鐘路徑在時(shí)鐘樹的倒數(shù)第二級(jí)時(shí)鐘緩沖器分叉,則CKweight = 2 ;以此類推。由于在時(shí)鐘樹綜合中,二叉樹是被廣泛應(yīng)用的樹結(jié)構(gòu)。因此,本發(fā)明中假設(shè)采用二叉樹。圖4示出了由一作為二叉樹的時(shí)鐘樹驅(qū)動(dòng)時(shí)序器件a、b、c、d的示意圖。在該圖中a 和 b 之間的 CKweight = 1 ;a 禾口 c 之間的 CKweight = 2 ;a 禾口 d 之間的 CKweight = 2 ;c 和 d 之間的 CKweight = 1 ;任何時(shí)序器件到其自身的CKweight = 0。這樣,對(duì)于集成電路設(shè)計(jì)中的每?jī)蓚€(gè)時(shí)序器件之間的路徑,可以得到一個(gè)乘積 DDly * CKweight0然后,對(duì)所有的DDly * CKweight求和。如果該和最小,則認(rèn)為該時(shí)鐘樹基于最大共享時(shí)鐘路徑是最優(yōu)的。也就是說(shuō),任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,則時(shí)鐘路徑是最優(yōu)的,因此,可得到如下公式MinF = Σ Σ DDlyU, k) x CKweight(j, k)
7=0 Ar=O其中,DDly(j,k)為第j和第k的時(shí)序器件之間的數(shù)據(jù)路徑時(shí)延,CKweight (j, k) 為第j和第k個(gè)時(shí)序器件之間的時(shí)鐘樹分叉權(quán)重,且假設(shè)集成電路設(shè)計(jì)中包含η = f個(gè)時(shí)序器件。如果集成電路設(shè)計(jì)中的包含的實(shí)際時(shí)序器件數(shù)m小于則假設(shè)存在2^!!!個(gè)虛擬時(shí)序器件,且虛擬時(shí)序器件與其他時(shí)序器件之間沒有數(shù)據(jù)通路,即DDly = 0,這樣,實(shí)際時(shí)序器件與虛擬時(shí)序器件的總數(shù)仍為η =這樣,為集成電路設(shè)計(jì)構(gòu)建最優(yōu)的時(shí)鐘樹的任務(wù)就成為構(gòu)建一個(gè)這樣的時(shí)鐘樹, 使其CKweight (j, k)與相應(yīng)的DDly (j, k)的乘積的和即MinF最小??梢圆捎枚喾N方法來(lái)獲得使所述MinF最小的時(shí)鐘樹。根據(jù)本發(fā)明的一個(gè)實(shí)施例, 集成電路設(shè)計(jì)中的任意兩個(gè)時(shí)序器件之間的CKweight (j,k)可表示為如圖5所示的矩陣形式,該矩陣可稱為時(shí)鐘樹分叉權(quán)重矩陣,其元素CKweight(j,k)表示時(shí)序器件j與k之間的時(shí)鐘樹分叉權(quán)重。該CKweight矩陣滿足如下條件1.由于時(shí)鐘樹為二叉樹,該CKweight矩陣的每一行或者每一列都包含1個(gè)0,1個(gè)
1,2個(gè)2,4個(gè)3,8個(gè)4,...,2'-1個(gè)t。因此,每一行或者每一列的元素的和是 tΣ2η1 ; /1=12.對(duì)角線上的元素為0 ;3.為對(duì)稱矩陣,即 CKweigh (k, j) = CKweight (j, k)。對(duì)于給定的集成電路設(shè)計(jì)來(lái)說(shuō),每一個(gè)特定的時(shí)鐘樹對(duì)應(yīng)于一個(gè)特定的CKweight 矩陣。對(duì)應(yīng)于該集成電路設(shè)計(jì)的不同時(shí)鐘樹的不同CKweight矩陣的每一行和每一列的元素是相同的,但所述元素在每一行和每一列中的位置是不同的。
因此,為該集成電路構(gòu)建一個(gè)最優(yōu)時(shí)鐘樹的任務(wù)就成為確定一個(gè)其元素具有特定位置的特定的CKweight矩陣,也就是說(shuō),該矩陣包括哪些元素是已知的,但這些元素在該矩陣中的位置是未知的、需要確定的。集成電路設(shè)計(jì)中的任意兩個(gè)時(shí)序器件之間的數(shù)據(jù)路徑時(shí)延DDly可以表示為圖6 所示的矩陣形式,該矩陣可稱為數(shù)據(jù)路徑時(shí)延矩陣,或DDly矩陣,與CKweight矩陣中的行與列相對(duì)應(yīng),其元素DDly(j,k)表示時(shí)序器件j與k之間的數(shù)據(jù)路徑的時(shí)延。如果兩個(gè)時(shí)序器件之間沒有數(shù)據(jù)路徑,則元素為0。在矩陣的對(duì)角線線上的元素代表時(shí)序器件輸出到本時(shí)序器件輸入的時(shí)延,由于對(duì)應(yīng)的CKweight為0,因此該元素不需要填充實(shí)際時(shí)延,可填充任意值,在圖中以“M”表示。如本領(lǐng)域的技術(shù)人員所知的,集成電路設(shè)計(jì)可由網(wǎng)表(netlist) 來(lái)表示??赏ㄟ^(guò)對(duì)已經(jīng)過(guò)布局(placement)的網(wǎng)表進(jìn)行時(shí)序分析來(lái)得到任何兩個(gè)時(shí)序器件之間的數(shù)據(jù)路徑時(shí)延?,F(xiàn)在,為集成電路設(shè)計(jì)構(gòu)建最優(yōu)的時(shí)鐘樹的任務(wù)就成為已知DDly矩陣,構(gòu)建一個(gè)滿足上述三個(gè)條件的CKweight矩陣,并使兩個(gè)矩陣的元素的乘積的和最小。該問(wèn)題可以采用多種方法來(lái)求解。根據(jù)本發(fā)明的一個(gè)實(shí)施例,該問(wèn)題可以通過(guò)運(yùn)籌學(xué)中的運(yùn)輸理論來(lái)求解。運(yùn)輸理論用來(lái)解決運(yùn)輸問(wèn)題,其可簡(jiǎn)述如下假設(shè)A^A2.....Am表示某物資的m個(gè)產(chǎn)地;B1A2.....Bn表示某物質(zhì)的η個(gè)銷地;
Si表示產(chǎn)地Ai的產(chǎn)量;…表示銷地B」的銷量;表示把物資為從產(chǎn)地Ai運(yùn)往銷地B」的單位運(yùn)價(jià)。則在產(chǎn)銷平衡的情況下
ηmK =Σ5/
J=I1=1圖7以表的形式列出了各產(chǎn)地的產(chǎn)量、各銷地的銷量以及每個(gè)產(chǎn)地與每個(gè)銷地之間的運(yùn)輸單價(jià)。運(yùn)輸理論試圖求解出將物資由各產(chǎn)地運(yùn)輸?shù)礁麂N地的成本最低的運(yùn)輸方案。設(shè)Xij 為從產(chǎn)地Ai運(yùn)往銷地B」的運(yùn)輸量,則可得到下列運(yùn)輸量問(wèn)題的模型
權(quán)利要求
1.一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法,包括通過(guò)對(duì)經(jīng)過(guò)布局的網(wǎng)表進(jìn)行時(shí)序分析,提取出該網(wǎng)表中的時(shí)序器件之間的路徑時(shí)延;以及根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹,使得任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,其中,兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重與該時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該兩個(gè)時(shí)序器件的時(shí)鐘樹級(jí)數(shù)正相關(guān)。
2.根據(jù)權(quán)利要求1的方法,其中,根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹包括根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建路徑時(shí)延矩陣DDly,其中,該路徑時(shí)延矩陣 DDly的元素DDly(j,k)表示時(shí)序器件j與k之間的數(shù)據(jù)路徑的時(shí)延,其中不存在數(shù)據(jù)通路關(guān)系的兩個(gè)時(shí)序器件之間的路徑時(shí)延為0 ;根據(jù)所述路徑時(shí)延矩陣求解時(shí)鐘樹分叉權(quán)重矩陣CKweight,使得所述路徑時(shí)延矩陣DDly的每一個(gè)元素DDly(j,k)與所述時(shí)鐘樹分叉權(quán)重矩陣CKweigh的相應(yīng)元素CKweigh(k,j)的乘積之和最小化,其中,該時(shí)鐘樹分叉權(quán)重矩陣CKweight的元素 CKweigh (j, k)表示時(shí)序器件j與k之間的時(shí)鐘樹分叉權(quán)重;以及根據(jù)所述時(shí)鐘樹分叉權(quán)重矩陣構(gòu)建時(shí)鐘樹。
3.根據(jù)權(quán)利要求2的方法,其中,所述時(shí)鐘樹為二叉樹,兩個(gè)時(shí)序器件之間的時(shí)鐘樹分叉權(quán)重等于所述時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該兩個(gè)時(shí)序器件的時(shí)鐘樹級(jí)數(shù),且一個(gè)時(shí)序器件與其自身之間的時(shí)鐘樹分叉權(quán)重為零。
4.根據(jù)權(quán)利要求3的方法,其中,所述路徑時(shí)延矩陣DDly和所述時(shí)鐘樹分叉權(quán)重矩陣 CKweight的行數(shù)和列數(shù)均為t為正整數(shù),且當(dāng)所述網(wǎng)表中的實(shí)際時(shí)序器件的數(shù)量m小于時(shí),所述路徑時(shí)延矩陣DDly和所述時(shí)鐘樹分叉權(quán)重矩陣CKweight的行和列還包括表示個(gè)虛擬時(shí)序器件,且虛擬時(shí)序器件與實(shí)際時(shí)序器件之間以及虛擬時(shí)序器件之間的路徑時(shí)延為0。
5.根據(jù)權(quán)利要求4的方法,其中,所述根據(jù)所述路徑時(shí)延矩陣求解時(shí)鐘樹分叉權(quán)重矩陣是通過(guò)應(yīng)用運(yùn)輸理論進(jìn)行的,其中,所述路徑時(shí)延矩陣中的行和列被視為分別表示產(chǎn)地和銷地或銷地和產(chǎn)地,其元素被視為表示產(chǎn)地和銷地之間的單位運(yùn)輸成本;所述時(shí)鐘樹分叉權(quán)重矩陣中的行和列被視為分別表示產(chǎn)地和銷地或銷地和產(chǎn)地,其元素被視為表示相應(yīng)產(chǎn)地運(yùn)輸?shù)降南鄳?yīng)銷地的貨物量;所述路徑時(shí)延矩陣中的每個(gè)元素與所述時(shí)鐘樹分叉權(quán)重矩陣中的相應(yīng)元素的乘積之和被視為總的運(yùn)輸成本;并且,所述時(shí)鐘樹分叉權(quán)重矩陣中的每一行和每一列的元素均為 1 個(gè) 0,1 個(gè) 1,2 個(gè) 2,4 個(gè) 3,. . .,個(gè) t。
6.根據(jù)權(quán)利要求1的方法,還包括將所述時(shí)鐘樹插入所述經(jīng)過(guò)布局的網(wǎng)表,以便得到經(jīng)過(guò)時(shí)鐘樹綜合的集成電路設(shè)計(jì)。
7.一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的裝置,包括提取模塊,用于通過(guò)對(duì)經(jīng)過(guò)布局的網(wǎng)表進(jìn)行時(shí)序分析,提取出該網(wǎng)表中的時(shí)序器件之間的路徑時(shí)延;構(gòu)建模塊,用于根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹,使得任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,其中,兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重與該時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該對(duì)時(shí)序器件的時(shí)鐘樹級(jí)數(shù)正相關(guān)。
8.根據(jù)權(quán)利要求7的裝置,其中,所述構(gòu)建模塊包括用于根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建路徑時(shí)延矩陣DDly的裝置,其中,該路徑時(shí)延矩陣DDly的元素DDly (j,k)表示時(shí)序器件j與k之間的數(shù)據(jù)路徑的時(shí)延,其中不存在數(shù)據(jù)通路關(guān)系的兩個(gè)時(shí)序器件之間的路徑時(shí)延為0 ;用于根據(jù)所述路徑時(shí)延矩陣求解時(shí)鐘樹分叉權(quán)重矩陣CKweight的裝置,其中,該時(shí)鐘樹分叉權(quán)重矩陣CKweight的元素CKweight (j,k)表示時(shí)序器件j與k之間的時(shí)鐘樹分叉權(quán)重,且其中所述路徑時(shí)延矩陣DDly的每一個(gè)元素DDly (j,k)與所述時(shí)鐘樹分叉權(quán)重矩陣 CKweight的相應(yīng)元素CKweight (j,k)的乘積之和最小化;以及用于根據(jù)所述時(shí)鐘樹分叉權(quán)重矩陣構(gòu)建時(shí)鐘樹的裝置。
9.根據(jù)權(quán)利要求7的裝置,其中,所述時(shí)鐘樹為二叉樹,兩個(gè)時(shí)序器件之間的時(shí)鐘樹分叉權(quán)重等于所述時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該兩個(gè)時(shí)序器件的時(shí)鐘樹級(jí)數(shù),且一個(gè)時(shí)序器件與其自身之間的時(shí)鐘樹分叉權(quán)重為零。
10.根據(jù)權(quán)利要求9的裝置,其中,所述路徑時(shí)延矩陣DDly和所述時(shí)鐘樹分叉權(quán)重矩陣 CKweight的行數(shù)和列數(shù)均為2\t為正整數(shù),且當(dāng)所述網(wǎng)表中的實(shí)際時(shí)序器件的數(shù)量m小于時(shí),所述路徑時(shí)延矩陣DDly和所述時(shí)鐘樹分叉權(quán)重矩陣CKweight的行和列還包括表示個(gè)虛擬時(shí)序器件,且虛擬時(shí)序器件與實(shí)際時(shí)序器件之間以及虛擬時(shí)序器件之間的路徑時(shí)延為0。
11.根據(jù)權(quán)利要求10的裝置,其中,所述用于根據(jù)所述路徑時(shí)延矩陣求解時(shí)鐘樹分叉權(quán)重矩陣的裝置是通過(guò)應(yīng)用運(yùn)輸理論進(jìn)行求解的,其中,所述路徑時(shí)延矩陣中的行和列被視為分別表示產(chǎn)地和銷地或銷地和產(chǎn)地,其元素被視為表示產(chǎn)地和銷地之間的單位運(yùn)輸成本;所述時(shí)鐘樹分叉權(quán)重矩陣中的行和列被視為分別表示產(chǎn)地和銷地或銷地和產(chǎn)地,其元素被視為表示相應(yīng)產(chǎn)地運(yùn)輸?shù)降南鄳?yīng)銷地的貨物量;所述路徑時(shí)延矩陣中的每個(gè)元素與所述時(shí)鐘樹分叉權(quán)重矩陣中的相應(yīng)元素的乘積之和被視為總的運(yùn)輸成本;并且,所述時(shí)鐘樹分叉權(quán)重矩陣中的每一行和每一列的元素均為 1個(gè)0,1個(gè)1,2個(gè)2,4個(gè)3,...,個(gè) t。
12.根據(jù)權(quán)利要求7的裝置,還包括插入模塊,用于將所述時(shí)鐘樹插入所述經(jīng)過(guò)布局的網(wǎng)表,以便得到經(jīng)過(guò)時(shí)鐘樹綜合的集成電路設(shè)計(jì)。
全文摘要
公開了一種用于構(gòu)建用于集成電路設(shè)計(jì)的時(shí)鐘樹的方法和裝置,該方法包括通過(guò)對(duì)經(jīng)過(guò)布局的網(wǎng)表進(jìn)行時(shí)序分析,提取出該網(wǎng)表中的時(shí)序器件之間的路徑時(shí)延;以及根據(jù)所述時(shí)序器件之間的路徑時(shí)延構(gòu)建驅(qū)動(dòng)所述時(shí)序器件的時(shí)鐘樹,使得任意兩個(gè)時(shí)序器件之間的路徑時(shí)延與該兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重的乘積之和最小化,其中,兩個(gè)時(shí)序器件的時(shí)鐘樹分叉權(quán)重與該時(shí)鐘樹相對(duì)于該兩個(gè)時(shí)序器件的分叉點(diǎn)距離該對(duì)時(shí)序器件的時(shí)鐘樹級(jí)數(shù)正相關(guān)。
文檔編號(hào)G06F17/50GK102567557SQ201010612330
公開日2012年7月11日 申請(qǐng)日期2010年12月20日 優(yōu)先權(quán)日2010年12月20日
發(fā)明者劉洋, 楊浩, 林一帆, 江國(guó)范 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司