專(zhuān)利名稱(chēng)::產(chǎn)生時(shí)鐘樹(shù)的方法與系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明有關(guān)于集成電路設(shè)計(jì),尤其指一種依據(jù)時(shí)鐘偏移成本函數(shù)(clockskewcostfunction)來(lái)進(jìn)行邏輯單元分群以產(chǎn)生一時(shí)鐘樹(shù)(clocktree)的方法與系統(tǒng)。
背景技術(shù):
:如本領(lǐng)域技術(shù)人員所周知,時(shí)鐘樹(shù)用來(lái)緩沖一時(shí)鐘信號(hào),其中該時(shí)鐘信號(hào)自一時(shí)鐘源輸出并傳遞至由時(shí)鐘驅(qū)動(dòng)的邏輯單元(例如觸發(fā)器),而對(duì)于每一個(gè)觸發(fā)器來(lái)說(shuō),輸入至各個(gè)觸發(fā)器的時(shí)鐘信號(hào)的傳遞延遲量不盡相同,而時(shí)鐘信號(hào)之間的相位差便稱(chēng)的為時(shí)鐘偏移(clockskew),換句話(huà)說(shuō),由于時(shí)鐘樹(shù)的設(shè)計(jì)不良,因此便往往會(huì)存在時(shí)鐘偏移的問(wèn)題而影響觸發(fā)器的設(shè)定時(shí)間(setuptime)與保持時(shí)間(holdtime)。于設(shè)計(jì)數(shù)字邏輯集成電路時(shí)常發(fā)生的一個(gè)問(wèn)題是時(shí)鐘偏移過(guò)大而使得電路元件的同步搡作無(wú)法于所要的時(shí)鐘頻率下執(zhí)行。因此,對(duì)于設(shè)計(jì)集成電路來(lái)說(shuō),降低時(shí)鐘偏移便極為重要,而明顯地,此時(shí)便需要一個(gè)創(chuàng)新的解決方案來(lái)適當(dāng)且有效率地產(chǎn)生出所要的時(shí)鐘樹(shù)。
發(fā)明內(nèi)容因此,本發(fā)明的目的的一在于提供一種依據(jù)時(shí)鐘偏移成本函數(shù)來(lái)進(jìn)行邏輯單元分群以產(chǎn)生一時(shí)鐘樹(shù)的方法與系統(tǒng),以解決上述問(wèn)題。依據(jù)本發(fā)明的實(shí)施例,其公開(kāi)一種產(chǎn)生耦接一時(shí)鐘源與多個(gè)邏輯單元之間的一時(shí)鐘樹(shù)的方法。該多個(gè)邏輯單元依據(jù)該時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行。該方法包含有依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組;以及配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元,以緩沖由該時(shí)鐘源輸出至該邏輯單元的該時(shí)鐘信號(hào)。依據(jù)本發(fā)明的實(shí)施例,其另公開(kāi)一種產(chǎn)生耦接于一時(shí)鐘源與多個(gè)邏輯單元之間的一時(shí)鐘樹(shù)的系統(tǒng)。該多個(gè)邏輯單元依據(jù)該時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行。該系統(tǒng)包含有一分類(lèi)模塊,用來(lái)依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組;以及一緩沖器設(shè)置模塊,用來(lái)配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元,以緩沖由該時(shí)鐘源輸出至該邏輯單元的該時(shí)鐘信號(hào)。依據(jù)本發(fā)明的實(shí)施例,其另公開(kāi)一種集成電路,其包含有多個(gè)邏輯單元,每一邏輯單元依據(jù)一時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行,其中該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組,以及該多個(gè)第一階層組另分類(lèi)為多個(gè)第二階層組;以及一時(shí)鐘樹(shù),耦接于該時(shí)鐘源以及該多個(gè)邏輯單元之間。該時(shí)鐘樹(shù)包含有一時(shí)鐘樹(shù)結(jié)構(gòu),包含有至少一底層時(shí)鐘緩沖器,其中該時(shí)鐘樹(shù)結(jié)構(gòu)具有一特定繞線長(zhǎng)度;至少一第一階層時(shí)鐘緩沖器,配置于每一第一階層組,用來(lái)緩沖由該時(shí)鐘源輸出至一相對(duì)應(yīng)第一階層組的該時(shí)鐘信號(hào);至少一第二階層時(shí)鐘緩沖器,配置于每一第二階層組,用來(lái)緩沖由該時(shí)鐘源輸出至一相對(duì)應(yīng)第二階層組的該時(shí)鐘信號(hào);以及一第三階層時(shí)鐘緩沖器,用來(lái)橋接該第二階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器。該第三階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度,以及該第二階層時(shí)鐘緩沖器與該第三階層時(shí)鐘緩沖器之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度。圖1為本發(fā)明時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)的一實(shí)施例的示意圖。圖2為本發(fā)明方法產(chǎn)生一時(shí)鐘樹(shù)以連接一時(shí)鐘源與多個(gè)邏輯單元的一實(shí)施例的流程圖。圖3(a)-(e)分別為預(yù)設(shè)時(shí)鐘樹(shù)結(jié)構(gòu)的一第一實(shí)施例、一第二實(shí)施例、一第三實(shí)施例、一第四實(shí)施例以及一第五實(shí)施例的示意圖。圖4為具有一時(shí)鐘樹(shù)(其依據(jù)圖2所示的方法而建立)的一集成電路的示意圖。主要元件符號(hào)說(shuō)明<table>complextableseeoriginaldocumentpage7</column></row><table>211-1、211-M、212-1、212-N、213-1、213-1、214-1、214-J邏輯單元216-1、216-2、216-3、216-4第一階層組218-1、218-2第二階層組具體實(shí)施例方式在說(shuō)明書(shū)及后續(xù)的權(quán)利要求范圍當(dāng)中使用了某些詞匯來(lái)指稱(chēng)特定的元件。所屬領(lǐng)域中具有通常知識(shí)者應(yīng)可理解,制造商可能會(huì)用不同的名詞來(lái)稱(chēng)呼同一個(gè)元件。本說(shuō)明書(shū)及后續(xù)的權(quán)利要求并不以名稱(chēng)的差異來(lái)作為區(qū)分元件的方式,而是以元件在功能上的差異來(lái)作為區(qū)分的準(zhǔn)則。在通篇說(shuō)明書(shū)及后續(xù)的請(qǐng)求當(dāng)中所提及的f包含J為一開(kāi)放式的用語(yǔ),故應(yīng)解釋成「包含但不限定于j。此外,「耦接」一詞在此包含任何直接及間接的電氣連接手段,因此,若文中描述一第一裝置耦接于一第二裝置,則代表該第一裝置可直接電氣連接于該第二裝置,或通過(guò)其他裝置或連接手段來(lái)間接地電氣連接至該第二裝置。請(qǐng)參閱圖l,圖1為本發(fā)明時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)10的一實(shí)施例的示意圖。如圖1所示,時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)10包含有一調(diào)整模塊12、一分類(lèi)模塊14以及一緩沖器設(shè)置模塊16。于本發(fā)明一實(shí)施例中,時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)10通過(guò)一計(jì)算機(jī)系統(tǒng)來(lái)加以實(shí)現(xiàn),其中調(diào)整模塊12、分類(lèi)模塊14以及緩沖器設(shè)置模塊16均為可由一微處理器(未顯示)所執(zhí)行以實(shí)現(xiàn)所制訂的功能的可執(zhí)行程序代碼然而,時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)10亦可僅由硬件元件來(lái)加以實(shí)現(xiàn),其中調(diào)整模塊12、分類(lèi)模塊14以及緩沖器設(shè)置模塊16均為硬件電路以實(shí)現(xiàn)所制訂的功能,而這些變化均屬本發(fā)明的范疇。于本發(fā)明中,分類(lèi)模塊14用來(lái)依據(jù)一時(shí)鐘偏移成本函數(shù)(clockskewcostfunction)而將多個(gè)邏輯單元分類(lèi)成多個(gè)組;緩沖器設(shè)置模塊16用來(lái)配置至少一時(shí)鐘緩沖器于每一組,以便緩沖由時(shí)鐘源所產(chǎn)生并傳遞至相對(duì)應(yīng)組的一時(shí)鐘信號(hào);以及調(diào)整模塊12則用來(lái)于分類(lèi)模塊14對(duì)同一時(shí)鐘源所驅(qū)動(dòng)的邏輯單元進(jìn)行分類(lèi)之前,調(diào)整邏輯單元的分布或者加入虛設(shè)邏輯單元(dummylogicunit)。調(diào)整模塊12、分類(lèi)模塊14與緩沖器設(shè)置模塊16的操作詳述于后。請(qǐng)同時(shí)參閱圖1與圖2,圖2為本發(fā)明方法產(chǎn)生一時(shí)鐘樹(shù)以連接一時(shí)鐘源與多個(gè)邏輯單元的一實(shí)施例的流程圖。時(shí)鐘樹(shù)產(chǎn)生方法由圖1所示的時(shí)鐘樹(shù)產(chǎn)生系統(tǒng)10來(lái)加以執(zhí)行,并包含以下步驟步驟10Q:開(kāi)始;步驟102:識(shí)別出由同一時(shí)鐘源所驅(qū)動(dòng)的多個(gè)邏輯單元;步驟104:針對(duì)該多個(gè)邏輯單元而選取出一預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)(treeskeleton),其中該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)設(shè)定有一特定繞線長(zhǎng)度(netlength);步驟106:依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組(first-levelgroup);步驟108:配置一第一階層時(shí)鐘緩沖器(first-levelclockbuffer)于每一第一階層組;步驟110:依據(jù)一第二時(shí)鐘偏移成本函數(shù)而將對(duì)應(yīng)該多個(gè)邏輯單元的該多個(gè)第一階層組分類(lèi)為多個(gè)第二階層組(second-levelgroup);步驟112:配置一第二階層時(shí)鐘緩沖器(second-levelclockbuffer)于每一第二階層組;步驟114:設(shè)置一第三階層時(shí)鐘緩沖器(third-levelclockbuffer)以橋接多個(gè)第二階層時(shí)鐘緩沖器與該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)的一底層時(shí)鐘緩沖器(bottom-levelclockbuffer),其中該第三階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器之間的連接線長(zhǎng)度設(shè)定為接近該特定繞線長(zhǎng)度,以及一第二階層時(shí)鐘緩沖器與該第三階層時(shí)鐘緩沖器之間的連接線長(zhǎng)度亦設(shè)定為接近該特定繞線長(zhǎng)度;步驟116:結(jié)束。請(qǐng)注意,假若可大致上獲得相同的結(jié)果,則圖2中各步驟的執(zhí)行順序可以改變的,舉例來(lái)說(shuō),分類(lèi)邏輯單元的步驟可以于選擇時(shí)鐘樹(shù)結(jié)構(gòu)的步驟之前便執(zhí)行。于步驟100中,上述流程開(kāi)始運(yùn)作。于步驟102中,分類(lèi)^t塊"i^更會(huì)啟動(dòng)而識(shí)別出由一時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)所驅(qū)動(dòng)的邏輯單元(例如集成電路中的觸發(fā)器);換句話(huà)說(shuō),本發(fā)明方法分別針對(duì)不同的時(shí)鐘源來(lái)建立相對(duì)應(yīng)的時(shí)鐘樹(shù)。接著,分類(lèi)模塊14便依據(jù)一特定選擇規(guī)則而從多個(gè)預(yù)設(shè)時(shí)鐘樹(shù)結(jié)構(gòu)中選取出一預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu),于一實(shí)施例中,該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)的選取根據(jù)邏輯單元的分布;而連接線長(zhǎng)度需設(shè)定為多接近該特定繞線長(zhǎng)度,則因連接線長(zhǎng)度可能會(huì)影響到電氣特性參數(shù)累加后的成本值,所以若成本值非常接近于特定值,連接線長(zhǎng)度則可非常接近或等于特定繞線長(zhǎng)度,若成本值略高于特定值,則可使連接線長(zhǎng)度適當(dāng)少于特定繞線長(zhǎng)度,當(dāng)然,若成本值略低于特定值,即可適當(dāng)增加連接線長(zhǎng)度。請(qǐng)參閱圖3(a)至(e)分別顯示出多個(gè)不同的預(yù)設(shè)時(shí)鐘樹(shù)結(jié)構(gòu),于本發(fā)明此一實(shí)施例中,H-tree類(lèi)型被采用,如圖Wa)所示,此一時(shí)鐘樹(shù)結(jié)構(gòu)包含單一底層時(shí)鐘緩沖器,且具有一繞線長(zhǎng)度a,而端點(diǎn)A被定義來(lái)設(shè)置底層時(shí)鐘緩沖器的所在位置。就圖3(a)的邏輯單元分布中,此端點(diǎn)A接近于共用同一時(shí)鐘源(clocksource)的邏輯單元分布位置的中心點(diǎn);而時(shí)鐘源則先將時(shí)鐘信號(hào)傳至此底層時(shí)鐘緩沖器,再經(jīng)由此底層時(shí)鐘緩沖器與其他的時(shí)鐘緩沖器傳輸?shù)礁鬟壿媶卧?。其中,底層時(shí)鐘緩沖器的定義為位于r由上而下的設(shè)計(jì)流程」中的時(shí)鐘緩沖器,且最接近r由下而上的設(shè)計(jì)流程」里最高層時(shí)鐘緩沖器?!赣缮隙碌脑O(shè)計(jì)流程」與「由下而上的設(shè)計(jì)流程」的定義于圖4中有所解釋。如圖3(b)至(d)所示,每一時(shí)鐘樹(shù)結(jié)構(gòu)皆包含兩個(gè)底層時(shí)鐘緩沖器與位于較上層的時(shí)鐘緩沖器,且具有一繞線長(zhǎng)度a,端點(diǎn)A被定義為底層時(shí)鐘緩沖器的所在位置,而端點(diǎn)B則是被定義為高層時(shí)鐘緩沖器所在位置,而若選用圖3(b)的邏輯單元分布,此端點(diǎn)B接近共用同一時(shí)鐘源的邏輯單元分布位置的中心點(diǎn);而時(shí)鐘源則先將時(shí)鐘信號(hào)傳至此高層時(shí)鐘緩沖器,再經(jīng)由底層時(shí)鐘緩沖器與其他的時(shí)鐘緩沖器傳輸?shù)礁鬟壿媶卧H鐖D3(e)所示,此一時(shí)鐘樹(shù)結(jié)構(gòu)包含四個(gè)底層時(shí)鐘緩沖器,兩個(gè)高層時(shí)鐘緩沖器,以及一個(gè)頂層時(shí)鐘緩沖器(top-levelclockbuffer),且具有一繞線長(zhǎng)度a;此外,底層時(shí)鐘緩沖器的位置是端點(diǎn)A,較高階層時(shí)鐘緩沖器的位置則為端點(diǎn)B,而端點(diǎn)C則被定義為設(shè)置頂層時(shí)鐘緩沖器的位置,而接近共用同一時(shí)鐘源的邏輯單元分布位置中心點(diǎn)的即為設(shè)置于端點(diǎn)C的頂層時(shí)鐘緩沖器。本實(shí)施例中,于圖3(b)至(d)上所示的陰影部分(由斜線所標(biāo)記)圍起來(lái)的區(qū)域代表邏輯單元被設(shè)置的區(qū)域,所以,依據(jù)邏輯單元的分布便可隨的選取出一時(shí)鐘樹(shù)結(jié)構(gòu)。請(qǐng)注意,上述的時(shí)鐘樹(shù)結(jié)構(gòu)的選取僅為舉例說(shuō)明的用,并非用來(lái)作為本發(fā)明的限制條件,舉例來(lái)說(shuō),于其他實(shí)施例中,選取規(guī)則可以是根據(jù)繞線長(zhǎng)度、金屬層的數(shù)目、耦接至同一時(shí)鐘源的邏輯單元的數(shù)目、時(shí)鐘緩沖器的驅(qū)動(dòng)能力(drivingstrength)或者是所使用的半導(dǎo)體制造工藝,均屬本發(fā)明的范疇。于本實(shí)施例中,時(shí)鐘樹(shù)結(jié)構(gòu)的選取提供了一種由上而下的設(shè)計(jì)流程以便建立最終所要的時(shí)鐘樹(shù)。舉例來(lái)說(shuō),若選取圖3(b)所示的預(yù)設(shè)時(shí)鐘樹(shù)結(jié)構(gòu),則底層時(shí)鐘緩沖器與高層時(shí)鐘緩沖器的所在位置便決定出來(lái)了,此即為圖4的由上而下的設(shè)計(jì)流程。而要被設(shè)置于下方的時(shí)鐘緩沖器,其位置便需經(jīng)由本發(fā)明所公開(kāi)的由下而上的設(shè)計(jì)流程來(lái)加以決定。由下而上的設(shè)計(jì)流程的運(yùn)作詳述于下。舉例來(lái)說(shuō),若步驟104選取圖3(a)所示的時(shí)鐘樹(shù)結(jié)構(gòu),一時(shí)鐘緩沖器202便會(huì)設(shè)置于端點(diǎn)A以便接收由一時(shí)鐘源(例如一時(shí)鐘產(chǎn)生器)所產(chǎn)生的一時(shí)鐘信號(hào)CLK(如圖4所示),而對(duì)于由下而上的設(shè)計(jì)流程而言,分類(lèi)模塊14依據(jù)一第一時(shí)鐘偏移成本函數(shù)而先將多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組(步驟106)。本實(shí)施例中,該第一時(shí)鐘偏移成本函數(shù)用來(lái)累計(jì)多個(gè)邏輯單元的電氣特性參數(shù)(例如電容性負(fù)載值)以計(jì)算出一成本值(costvalue),而當(dāng)該第一時(shí)鐘偏移成本函數(shù)累計(jì)多個(gè)特定邏輯單元的電氣特性參數(shù)所產(chǎn)生的成本值達(dá)到一特定值時(shí),該多個(gè)特定邏輯單元便被分類(lèi)為一第一階層組。如本領(lǐng)域4支術(shù)人員所知,時(shí)鐘偏移的大小正比于電容值的大小,因此,當(dāng)時(shí)鐘偏移的可允許范圍為已知時(shí),便可適當(dāng)?shù)貨Q定出上述的特定值,舉例來(lái)說(shuō),該特定值于一實(shí)施例中被設(shè)定為300ff的電容值,所以,當(dāng)累計(jì)10個(gè)邏輯單元的電容值的結(jié)果等于該特定值(亦即300ff)時(shí),則這10個(gè)邏輯單元便歸類(lèi)聚集為一組。請(qǐng)注意,于執(zhí)行上述的分類(lèi)操作時(shí),繞線本身的電容值亦可納入整體電容值的累計(jì)計(jì)算中。請(qǐng)同時(shí)參閱圖2與圖4,圖4為具有一時(shí)鐘樹(shù)(其依據(jù)圖2所示的方法而建立)的一集成電路的示意圖。如圖所示,邏輯單元211-1.....211-M分類(lèi)為一第一階層組216-1;邏輯單元212-1.....212-N分類(lèi)為一第一階層組216-2;邏輯單元213-1.....213-1分類(lèi)為一第一階層組216-3;以及邏輯單元214-1.....214-J分類(lèi)為一第一階層組n6-4,其中每一第一階層組中所有邏輯單元的電容性負(fù)載值的總和均等于前述的特定值(亦即300ff)。緩沖器設(shè)置模塊16接著分別配置第一階層時(shí)鐘緩沖器208-1、208-2、208-3、208-4于第一階層組216-1、216-2、216-3、216-4(步驟108)。當(dāng)決定出第一階層時(shí)鐘緩沖器208-1、208-2、208-3、208-4的后,分類(lèi)模塊14另依據(jù)一第二時(shí)鐘偏移成本函數(shù)來(lái)將第一階層組216-1、216-2、216-3、216-4分類(lèi)為多個(gè)第二階層組218-1、218-2(步驟110),類(lèi)似于第一時(shí)鐘偏移成本函數(shù)的運(yùn)作,第二時(shí)鐘偏移成本函數(shù)累計(jì)每一第一階層組中多個(gè)邏輯元件的電氣特性參數(shù)(例如電容性負(fù)載值)來(lái)產(chǎn)生一成本值,若該成本值達(dá)到另一特定值,則相對(duì)應(yīng)的第一階層組便被分類(lèi)為一第二階層組。如圖4所示,第一階層組216-1與216-2隸屬于一第二階層組218-1,以及第一階層組216-3與216-4則隸屬于另一第二階層組218-2。接著,緩沖器設(shè)置模塊16便分別配置第二階層時(shí)鐘緩沖器206-1、206-2于第二階層組218-1、218-2(步驟112)。當(dāng)決定出第二階層時(shí)鐘緩沖器206-1、206-2的后,所選取的時(shí)鐘樹(shù)結(jié)構(gòu)的相對(duì)應(yīng)特定繞線長(zhǎng)度便會(huì)被參照,以便橋接底層時(shí)鐘緩沖器202以及第二階層時(shí)鐘緩沖器206-1、206-2(步驟114)。本實(shí)施例中,緩沖器設(shè)置模塊16會(huì)決定一緩沖器位置,以使得一第三階層時(shí)鐘緩沖器204與底層時(shí)鐘緩沖器202之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度以及每一第二階層時(shí)鐘緩沖器206-1、206-2與第三階層時(shí)鐘緩沖器204之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度,接著,便將第三階層時(shí)鐘緩沖器204設(shè)置于所決定出的緩沖器位置來(lái)完成最終所要的時(shí)鐘樹(shù),換句話(huà)說(shuō),于本發(fā)明的實(shí)施例中,其應(yīng)用一種搜尋最短且長(zhǎng)度才目同的路徑的方法(minimum-same-distance-pathmethod)來(lái)決定出第三階層時(shí)鐘緩沖器204的設(shè)置位置。請(qǐng)注意,于圖4中,邏輯元件的個(gè)數(shù)、第一階層組的個(gè)數(shù)以及第二階層組的個(gè)數(shù)僅作為范例說(shuō)明的用,并非為本發(fā)明的限制條件。此外,步驟106/步驟110可以修改為檢查經(jīng)由累積多個(gè)特定邏輯單元的電氣特性參數(shù)所產(chǎn)生的一成本值是否落入一特定范圍,以及當(dāng)計(jì)算出來(lái)的成本值落入該特定范圍,將該多個(gè)特定邏輯單元分類(lèi)為第一階層組/第二階層組。所以,萬(wàn)一實(shí)際上的繞線長(zhǎng)度過(guò)長(zhǎng)而無(wú)法符合時(shí)鐘偏移的限制條件時(shí),該特定范圍便可提供一偏差容許量(tolerance)。再者,請(qǐng)注意,于所建立的時(shí)鐘樹(shù)中設(shè)置的所有時(shí)鐘緩沖器均對(duì)應(yīng)同一緩沖器類(lèi)型,舉例來(lái)說(shuō),圖4所示的每一時(shí)鐘緩沖器202、204、206-1、206-2、208-1、208-2、208-3、208-4均具有相同的驅(qū)動(dòng)能力。此外,于本實(shí)施例中,只要能使得輸入至相對(duì)應(yīng)邏輯單元的時(shí)鐘信號(hào)仍維持原本所要的極性,則時(shí)鐘緩沖器可以利用非反相(non-inverting)緩沖器或反相(inverting)緩沖器(一般稱(chēng)的為反相器),抑或兩者的組合來(lái)加以實(shí)現(xiàn)。對(duì)于上述的分類(lèi)操作而言,本發(fā)明的實(shí)施例另提供與時(shí)鐘樹(shù)微調(diào)有關(guān)的一些技術(shù)特征。于分類(lèi)模塊14對(duì)邏輯單元進(jìn)行分類(lèi)之前,調(diào)整模塊12可預(yù)先調(diào)整邏輯單元的分布或者是依據(jù)邏輯單元的分布而將至少一虛設(shè)邏輯單元加入原本的邏輯單元中。舉例來(lái)說(shuō),當(dāng)邏輯單元的分布不均勻時(shí),調(diào)整模塊12便將位于一密集分布區(qū)域中的一些邏輯單元移到一稀疏分布區(qū)域中;另夕卜,當(dāng)不容易依據(jù)所定義的特定值或特定范圍來(lái)將所有的邏輯單元分類(lèi)為多個(gè)組時(shí),調(diào)整模塊12會(huì)加入一些虛設(shè)邏輯單元至稀疏分布區(qū)域中,以使得邏輯單元的組分類(lèi)能順利完成。此外,為了降低時(shí)鐘緩沖器的驅(qū)動(dòng)能力需求,調(diào)整模塊12另會(huì)將一特定組進(jìn)一步地劃分成多個(gè)子組,并分別配置多個(gè)時(shí)鐘緩沖器至該多個(gè)子組,舉例來(lái)說(shuō),緩沖器設(shè)置模塊16將第一階層組216-1劃分成多個(gè)子組,并分別配置多個(gè)第一階層時(shí)鐘緩沖器于該多個(gè)子組,因此,相較于原本第一階層時(shí)鐘緩沖器208-1所要求的驅(qū)動(dòng)能力,這些第一階層時(shí)鐘緩沖器的驅(qū)動(dòng)能力需求便可降低;同樣地,緩沖器設(shè)置模塊16亦可將第二階層組218-1劃分成多個(gè)子組,并分別配置多個(gè)第二階層時(shí)鐘緩沖器于該多個(gè)子組,因此,相較于原本第二階層時(shí)鐘緩沖器206-1所要求的驅(qū)動(dòng)能力,這些第二階層時(shí)鐘緩沖器的驅(qū)動(dòng)能力需求便可降低,上述變化均屬本發(fā)明的范疇。本發(fā)明亦可應(yīng)用于低功率設(shè)計(jì)(low-powerdesign)的應(yīng)用中。于低功率設(shè)計(jì)的實(shí)施例中,本發(fā)明的時(shí)鐘樹(shù)設(shè)計(jì)流程可利用公知的綜合型時(shí)鐘門(mén)電3各單元(integratedclockgatingcell,ICGcell)來(lái)取代一特定層中所設(shè)置的部分或全部的時(shí)鐘緩沖器,而于此低功率設(shè)計(jì)的實(shí)施例中,分類(lèi)模塊14一開(kāi)始時(shí)先依據(jù)邏輯單元屬性來(lái)將一集成電路中多個(gè)目標(biāo)邏輯單元分別劃分為多個(gè)邏輯單元組,舉例來(lái)說(shuō),該多個(gè)目標(biāo)邏輯單元根據(jù)不同的功能或其他已知參數(shù)而分類(lèi)為該多個(gè)邏輯單元組,其中當(dāng)該集成電路運(yùn)作時(shí),位于同一邏輯單元組的目標(biāo)邏輯單元允許于同一時(shí)間:被關(guān)斷。對(duì)于由分類(lèi)模塊"所分類(lèi)產(chǎn)生的每一邏輯單元組而言,圖2所示的時(shí)鐘樹(shù)產(chǎn)生方法會(huì)被執(zhí)行以產(chǎn)生一相對(duì)應(yīng)的時(shí)鐘樹(shù),而位于一特定層中一特定位置的至少一時(shí)鐘緩沖器由一公知的綜合型時(shí)鐘門(mén)電路單元所替代以實(shí)現(xiàn)所要的低功率設(shè)計(jì)。既然插入公知綜合型時(shí)鐘門(mén)電路單元的技術(shù)為本領(lǐng)域技術(shù)人員所周知,因此為了簡(jiǎn)潔起見(jiàn),相關(guān)的細(xì)節(jié)描述便不另于此贅述。請(qǐng)注意,上述有關(guān)于以公知綜合型時(shí)鐘門(mén)電路單元來(lái)取代時(shí)鐘緩沖器的操作步驟僅作為范例說(shuō)明的用,此外,同時(shí)參考圖2所示的教導(dǎo)與任何公知的低功率設(shè)計(jì)技術(shù),本領(lǐng)域技術(shù)人員亦可推導(dǎo)出其他可行的變化,而這些變化均符合本發(fā)明的精神并落入本發(fā)明的范疇。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,凡依本發(fā)明權(quán)利要求所進(jìn)行的等效變化與修改,皆應(yīng)屬本發(fā)明的涵蓋范圍。權(quán)利要求1.一種產(chǎn)生耦接一時(shí)鐘源與多個(gè)邏輯單元之間的一時(shí)鐘樹(shù)的方法,該多個(gè)邏輯單元依據(jù)該時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行,該方法包含有依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組;以及配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元,以緩沖由該時(shí)鐘源輸出至該邏輯單元的該時(shí)鐘信號(hào)。2.如權(quán)利要求l所述的方法,其中將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組的步驟包含有使用該第一時(shí)鐘偏移成本函數(shù)來(lái)累計(jì)多個(gè)特定邏輯單元所對(duì)應(yīng)的多個(gè)第一種電氣特性參數(shù);以及當(dāng)經(jīng)由累計(jì)該多個(gè)特定邏輯單元所對(duì)應(yīng)的該多個(gè)第一種電氣特性參數(shù)所計(jì)算出的該第一時(shí)鐘偏移成本函數(shù)的一成本值達(dá)到一特定值時(shí),該多個(gè)特定邏輯單元分類(lèi)為一第一階層組。3.如權(quán)利要求2所述的方法,其中該多個(gè)第一種電氣特性參數(shù)均為電容性負(fù)載值。4.如權(quán)利要求l所述的方法,其中將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組的步驟包含有使用該第一時(shí)鐘偏移成本函數(shù)來(lái)累計(jì)多個(gè)特定邏輯單元所對(duì)應(yīng)的多個(gè)第一種電氣特性參數(shù);以及當(dāng)經(jīng)由累計(jì)該多個(gè)特定邏輯單元所對(duì)應(yīng)的該多個(gè)第一種電氣特性參數(shù)所計(jì)算出的該第一時(shí)鐘偏移成本函數(shù)的一成本值落入一特定范圍時(shí),該多個(gè)特定邏輯單元分類(lèi)為一第一階層組。5.如權(quán)利要求4所述的方法,其中該多個(gè)第一種電氣特性參數(shù)均為電容性負(fù)載值。6.如權(quán)利要求l所述的方法,其中配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元的步驟包含有將一特定第一階層組劃分為多個(gè)子組;以及分別配置多個(gè)第一階層時(shí)鐘緩沖器于該多個(gè)子組,以降低緩沖器驅(qū)動(dòng)能力需求。7.如權(quán)利要求1所述的方法,其還包含有依據(jù)一第二時(shí)鐘偏移成本函數(shù)將該多個(gè)第一階層組分類(lèi)為多個(gè)第二階層組;以及配置至少一第二階層時(shí)鐘緩沖器于該多個(gè)第二階層組中一第二階層組,以緩沖由該時(shí)鐘源輸出至該第二階層組的該時(shí)鐘信號(hào)。8.如權(quán)利要求7所述的方法,其中配置至少一第二階層時(shí)鐘緩沖器于該多個(gè)第二階層組中一第二階層組的步驟包含有將一特定第二階層組劃分為多個(gè)子組;以及分別配置多個(gè)第二階層時(shí)鐘緩沖器于該多個(gè)子組,以降低緩沖器驅(qū)動(dòng)能力需求。9.如權(quán)利要求l所述的方法,其還包含有依據(jù)該多個(gè)邏輯單元的分布而選取一預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu),其中該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)包含至少一底層時(shí)鐘緩沖器,其中,該時(shí)鐘信號(hào)可通過(guò)該底層時(shí)鐘緩沖器及其中一該多個(gè)第一階層時(shí)鐘緩沖器傳輸于其中一該多個(gè)邏輯單元。10.如權(quán)利要求9所述的方法,其中該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)具有一特定繞線長(zhǎng)度,為使該時(shí)鐘信號(hào)可通過(guò)該底層時(shí)鐘緩沖器及其中一該多個(gè)第一階層時(shí)鐘緩沖器傳輸于其中一該多個(gè)邏輯單元的步驟包含有設(shè)置一第三階層時(shí)鐘緩沖器來(lái)橋接一第二階層時(shí)鐘緩沖器以及該底層時(shí)鐘緩沖器,其中該第二階層時(shí)鐘緩沖器橋接于該第三階層時(shí)鐘緩沖器及該邏輯單元之間,而該第三階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器之間的連接線長(zhǎng)度接近于該特定繞線長(zhǎng)度,以及該第二階層時(shí)鐘緩沖器與該第三階層時(shí)鐘緩沖器之間的連接線長(zhǎng)度接近于該特定繞線長(zhǎng)度。11.如權(quán)利要求10所述的方法,其中應(yīng)用于該時(shí)鐘樹(shù)中的所有時(shí)鐘緩沖器均是相同的緩沖器類(lèi)型。12.如權(quán)利要求9所述的方法,其中該預(yù)定時(shí)鐘樹(shù)結(jié)構(gòu)對(duì)應(yīng)一H-tree類(lèi)型。13.如權(quán)利要求7所述的方法,其中將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組的步驟包含有利用該第一時(shí)鐘偏移成本函數(shù)來(lái)累計(jì)多個(gè)特定邏輯單元所對(duì)應(yīng)的多個(gè)第一種電氣特性參數(shù);以及當(dāng)經(jīng)由累計(jì)該多個(gè)特定邏輯單元所對(duì)應(yīng)的該多個(gè)第一種電氣特性參數(shù)所計(jì)算出的該第一時(shí)鐘偏移成本函數(shù)的一成本值達(dá)到一特定值或一特定范圍時(shí),該多個(gè)特定邏輯單元分類(lèi)為一第一階層組;以及將該多個(gè)第一階層組分類(lèi)為多個(gè)第二階層組的步驟包含有利用該第二時(shí)鐘偏移成本函數(shù)來(lái)累計(jì)每一第一階層組中多個(gè)特定邏輯單元所對(duì)應(yīng)的多個(gè)第二種電氣特性參數(shù);以及當(dāng)經(jīng)由累計(jì)多個(gè)特定第一階層組所對(duì)應(yīng)的多個(gè)第二種電氣特性參數(shù)所計(jì)算出的該第二時(shí)鐘偏移成本函數(shù)的一成本值達(dá)到另一特定值或另一特定范圍時(shí),該多個(gè)特定第一階層組分類(lèi)為一第二階層組。14.如權(quán)利要求13所述的方法,其中該多個(gè)第一種電氣特性參數(shù)與該多個(gè)第二種電氣特性參數(shù)均為電容性負(fù)載值。15.如權(quán)利要求l所述的方法,其還包含有于分類(lèi)該多個(gè)邏輯單元之前,調(diào)整該多個(gè)邏輯單元的分布。16.如權(quán)利要求l所述的方法,其還包含有于分類(lèi)該多個(gè)邏輯單元之前,依據(jù)該多個(gè)邏輯單元的分布而將至少一虛設(shè)邏輯單元加入至該多個(gè)邏輯單元中。17.如權(quán)利要求l所述的方法,其還包含有根據(jù)邏輯單元屬性以自一集成電路的多個(gè)目標(biāo)邏輯單元中選取出該多個(gè)邏輯單元,其中該多個(gè)邏輯單元允許于該集成電路運(yùn)行時(shí)于同一時(shí)間關(guān)斷;其中至少一邏輯單元由一綜合型時(shí)鐘門(mén)電路單元實(shí)現(xiàn)。18.—種產(chǎn)生耦接于一時(shí)鐘源與多個(gè)邏輯單元之間的一時(shí)鐘樹(shù)的系統(tǒng),該多個(gè)邏輯單元依據(jù)該時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行,該系統(tǒng)包含有一分類(lèi)模塊,用來(lái)依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組;以及一緩沖器設(shè)置模塊,用來(lái)配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元,以緩沖由該時(shí)鐘源輸出至該邏輯單元的該時(shí)鐘信號(hào)。19.一種集成電路,其包含有多個(gè)邏輯單元,每一邏輯單元依據(jù)一時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行,其中該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組,以及該多個(gè)第一階層組另分類(lèi)為多個(gè)第二階層組;以及一時(shí)鐘樹(shù),耦接于該時(shí)鐘源以及該多個(gè)邏輯單元之間,該時(shí)鐘樹(shù)包含有一時(shí)鐘樹(shù)結(jié)構(gòu),包含有至少一底層時(shí)鐘緩沖器,其中該時(shí)鐘樹(shù)結(jié)構(gòu)具有一特定繞線長(zhǎng)度;至少一第一階層時(shí)鐘緩沖器,配置于每一第一階層組,用來(lái)緩沖由該時(shí)鐘源輸出至一相對(duì)應(yīng)第一階層組的該時(shí)鐘信號(hào);至少一第二階層時(shí)鐘緩沖器,配置于每一第二階層組,用來(lái)緩沖由該時(shí)鐘源輸出至一相對(duì)應(yīng)第二階層組的該時(shí)鐘信號(hào);以及一第三階層時(shí)鐘緩沖器,用來(lái)橋接該第二階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器;其中該第三階層時(shí)鐘緩沖器與該底層時(shí)鐘緩沖器之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度,以及該第二階層時(shí)鐘緩沖器與該第三階層時(shí)鐘緩沖器之間的連接線長(zhǎng)度等于該特定繞線長(zhǎng)度。全文摘要本發(fā)明提供一種產(chǎn)生耦接于一時(shí)鐘源與多個(gè)邏輯單元之間的一時(shí)鐘樹(shù)的方法。該多個(gè)邏輯單元依據(jù)該時(shí)鐘源所產(chǎn)生的一時(shí)鐘信號(hào)來(lái)運(yùn)行。該方法包含有依據(jù)一第一時(shí)鐘偏移成本函數(shù)而將該多個(gè)邏輯單元分類(lèi)為多個(gè)第一階層組;以及配置至少一第一階層時(shí)鐘緩沖器于該多個(gè)邏輯單元中一邏輯單元,以緩沖由該時(shí)鐘源輸出至該邏輯單元的該時(shí)鐘信號(hào)。文檔編號(hào)G06F1/10GK101187820SQ20061014854公開(kāi)日2008年5月28日申請(qǐng)日期2006年11月16日優(yōu)先權(quán)日2006年11月16日發(fā)明者林詠修申請(qǐng)人:矽統(tǒng)科技股份有限公司