專(zhuān)利名稱(chēng):基于圖形處理單元的布線方法及其系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路設(shè)計(jì)領(lǐng)域,特別涉及集成電路的布線方法及其系統(tǒng)。
背景技術(shù):
在專(zhuān)用集成電路布線系統(tǒng),以及可編程邏輯器件布線系統(tǒng)中,由于需要處理的器件數(shù)目可高達(dá)上千萬(wàn),因此布線通常是整個(gè)集成電路物理設(shè)計(jì)流程中最耗時(shí)的一部分。在實(shí)際應(yīng)用中,布線系統(tǒng)常常要用幾天的時(shí)間才能完成一個(gè)幾百萬(wàn)根線網(wǎng)的布線。在目前所有的布線技術(shù)中,單一線網(wǎng)的連線速度與集成電路芯片的布線資源圖的大小相關(guān),越大型、越復(fù)雜的電路,布線速度越慢。集成電路的連線方案中,最廣泛被應(yīng)用的是李氏迷宮布線系統(tǒng)(Lee’s Maze)和基于李氏方法改進(jìn)的k*布線系統(tǒng),并且在不丟失最優(yōu)解的前提下,A*是目前所知的最快的布線方法。但是本發(fā)明的發(fā)明人發(fā)現(xiàn),A*方法使用優(yōu)先隊(duì)列對(duì)結(jié)點(diǎn)的費(fèi)用進(jìn)行管理,這使得布線搜索是一個(gè)串行過(guò)程,最終的布線時(shí)間不僅與包含起點(diǎn)、終點(diǎn)的搜索空間(三維)大小有關(guān),也與搜索過(guò)程中結(jié)點(diǎn)的實(shí)際費(fèi)用和期望費(fèi)用之誤差有關(guān)。此外,當(dāng)前的集成電路布線方法都是基于計(jì)算機(jī)中央處理單元的串行處理特性來(lái)設(shè)計(jì),中央處理單元是計(jì)算機(jī)中處理基本算術(shù)、邏輯和輸入輸出的硬件結(jié)構(gòu),它是當(dāng)前計(jì)算機(jī)系統(tǒng)的最核心的單元。雖然最新的中央處理單元具有多線程的特性,但是設(shè)計(jì)一個(gè)多線程的布線方法并不容易?,F(xiàn)知的各種多線程布線方法都是在不同電路線網(wǎng)上進(jìn)行并行計(jì)算,同一線網(wǎng)的布線仍然交與同一計(jì)算機(jī)處理單元進(jìn)行串行處理。比如當(dāng)有1000根線網(wǎng)需要布線,而中央處理單元可以同時(shí)開(kāi)啟8個(gè)線程,那么在同一時(shí)間,每個(gè)線程仍然只處理一根線網(wǎng),總共有8根線網(wǎng)可以被同時(shí)布線。對(duì)于每根線網(wǎng)來(lái)說(shuō),它的布線速度并沒(méi)有加快。而且由于中央處理單元的并行計(jì)算的能力相當(dāng)有限,所以集成電路布線用多線程進(jìn)行加速的效果也是有限的。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于圖形處理單元的布線方法及其系統(tǒng),利用圖形處理單元的超并行處理能力進(jìn)行布線,大大縮短了布線時(shí)間,獲得比傳統(tǒng)布線快一個(gè)量級(jí)以上的布線速度,并且不犧牲整個(gè)系統(tǒng)的結(jié)果性能。為解決上述技術(shù)問(wèn)題,本發(fā)明的實(shí)施方式公開(kāi)了一種基于圖形處理單元的布線方法,包括以下步驟:信息輸入步驟輸入邏輯連接信息;總體布線資源圖構(gòu)造步驟總體布線單元根據(jù)該邏輯連接信息構(gòu)造總體布線資源圖;總體布線步驟超并行布線器根據(jù)該邏輯連接信息和該總體布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,上述圖形處理單元同時(shí)監(jiān)控該總體布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接;
詳細(xì)布線資源圖構(gòu)造步驟詳細(xì)布線單元根據(jù)該邏輯連接信息在經(jīng)過(guò)布線的該總體布線資源圖基礎(chǔ)上構(gòu)造詳細(xì)布線資源圖;詳細(xì)布線步驟該超并行布線器根據(jù)該邏輯連接信息和該詳細(xì)布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,上述圖形處理單元同時(shí)監(jiān)控該詳細(xì)布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接;輸出步驟輸出完成布線的詳細(xì)布線資源圖。本發(fā)明的實(shí)施方式還公開(kāi)了一種基于圖形處理單元的布線系統(tǒng),包括:輸入單元,用于輸入邏輯連接信息;
總體布線單元,用于根據(jù)該邏輯連接信息構(gòu)造總體布線資源圖并調(diào)用超并行布線器進(jìn)行布線;詳細(xì)布線單元,用于根據(jù)該邏輯連接信息在經(jīng)過(guò)布線的該總體布線資源圖基礎(chǔ)上構(gòu)造詳細(xì)布線資源圖并調(diào)用該超并行布線器進(jìn)行布線;輸出單元,用于輸出完成布線的上述詳細(xì)布線資源圖;以及超并行布線器,用于根據(jù)該邏輯連接信息和上述布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,上述圖形處理單元同時(shí)監(jiān)控上述布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接。本發(fā)明實(shí)施方式與現(xiàn)有技術(shù)相比,主要區(qū)別及其效果在于:本發(fā)明利用圖形處理單元的超級(jí)并行處理能力,將傳統(tǒng)集成電路布線方法中最核心的優(yōu)先隊(duì)列去除,改以同時(shí)監(jiān)控布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)來(lái)進(jìn)行布線搜索,通過(guò)這種做法,布線的時(shí)間只與布線路徑的長(zhǎng)度有關(guān),與布線空間的大小無(wú)關(guān),并且能對(duì)單一連線使用成百上千的處理單元進(jìn)行同時(shí)布線,布線速度要遠(yuǎn)快于當(dāng)前已知的任何其他方法,且不犧牲整個(gè)系統(tǒng)的結(jié)果性能。進(jìn)一步地,在布線前檢查上述布線資源圖的線網(wǎng)是否已布且無(wú)布線沖突,并將需要布線的線網(wǎng)拷貝入上述圖形處理單元中,進(jìn)一步提高圖形處理單元的處理速度。進(jìn)一步地,上述圖形處理單元內(nèi)存中的數(shù)據(jù)只是原布線資源圖數(shù)據(jù)的一個(gè)精簡(jiǎn)子集,其中只包含結(jié)點(diǎn)編號(hào)和邊費(fèi)用,進(jìn)一步提高圖形處理單元的處理速度。進(jìn)一步地,將整個(gè)布線分為總體布線和詳細(xì)布線,加快了整個(gè)布線速度并且使上述圖形處理單元的內(nèi)存足以負(fù)荷當(dāng)前超大規(guī)模集成電路的應(yīng)用需要。
圖1是本發(fā)明第一實(shí)施方式中一種基于圖形處理單元的布線方法的流程示意圖;圖2是本發(fā)明第一實(shí)施方式中一種基于圖形處理單元的布線方法中的布線步驟的流程示意圖;圖3是本發(fā)明第一實(shí)施方式中圖形處理單元的并行搜索方法示意圖;圖4是本發(fā)明第三實(shí)施方式中一種基于圖形處理單元的布線系統(tǒng)的結(jié)構(gòu)示意圖;圖5是本發(fā)明第三實(shí)施方式中一種基于圖形處理單元的布線系統(tǒng)的結(jié)構(gòu)示意圖;圖6是本發(fā)明第三實(shí)施方式中一種基于圖形處理單元的布線系統(tǒng)中的超并行布線器的結(jié)構(gòu)示意圖。
具體實(shí)施例方式在以下的敘述中,為了使讀者更好地理解本申請(qǐng)而提出了許多技術(shù)細(xì)節(jié)。但是,本領(lǐng)域的普通技術(shù)人員可以理解,即使沒(méi)有這些技術(shù)細(xì)節(jié)和基于以下各實(shí)施方式的種種變化和修改,也可以實(shí)現(xiàn)本申請(qǐng)各權(quán)利要求所要求保護(hù)的技術(shù)方案。為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作進(jìn)一步地詳細(xì)描述。本發(fā)明第一實(shí)施方式涉及一種基于圖形處理單元的布線方法。圖1是該基于圖形處理單元的布線方法的流程示意圖。如圖1所示,該基于圖形處理單元的布線方法包括以下步驟:信息輸入步驟輸入邏輯連接信息。在本實(shí)施方式中,該邏輯連接信息包括電路網(wǎng)表、工藝參數(shù)和器件位置信息等??梢岳斫?,在本發(fā)明的其他實(shí)施方式中,還可以包括其他布線需要的信息,不限于上述的信
肩、O總體布線資源圖構(gòu)造步驟總體布線單元根據(jù)該邏輯連接信息構(gòu)造總體布線資源圖。在專(zhuān)用集成電路和可編程邏輯器件電路中,根據(jù)集成電路生產(chǎn)的工藝參數(shù),不同的區(qū)域具有不同的布線容量。將電路中所有區(qū)域的布線容量計(jì)算出來(lái),并根據(jù)區(qū)域的具體物理位置構(gòu)造的圖稱(chēng)為布線資源圖,在該圖中,結(jié)點(diǎn)是不同的布線區(qū)域,邊是連接不同布線區(qū)域的布線資源,邊的費(fèi)用是布線資源的數(shù)量多少,布線資源少的邊所對(duì)應(yīng)的費(fèi)用較高??傮w布線步驟超并行布線器根據(jù)該邏輯連接信息和該總體布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并·行布線器包括圖形處理單元,上述圖形處理單元同時(shí)監(jiān)控該總體布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接。根據(jù)電路的邏輯網(wǎng)表,從某一器件的輸出端口所在的布線資源圖結(jié)點(diǎn),通過(guò)一系列的布線資源圖的邊,到達(dá)網(wǎng)表制定的其他器件輸入端口所在的結(jié)點(diǎn)的路徑被稱(chēng)為集成電路布線。實(shí)現(xiàn)邏輯網(wǎng)表的物理布線方案可能有很多,每一方案中涉及的布線邊的費(fèi)用總和被定為該方案的費(fèi)用。在所有方案中,費(fèi)用最小的方案是該邏輯線網(wǎng)的最優(yōu)布線。詳細(xì)布線資源圖構(gòu)造步驟詳細(xì)布線單元根據(jù)該邏輯連接信息在經(jīng)過(guò)布線的該總體布線資源圖基礎(chǔ)上構(gòu)造詳細(xì)布線資源圖;詳細(xì)布線步驟該超并行布線器根據(jù)該邏輯連接信息和該詳細(xì)布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,上述圖形處理單元同時(shí)監(jiān)控該詳細(xì)布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接;其中,總體布線和詳細(xì)布線的區(qū)別在于相應(yīng)布線資源圖的精度:總體布線資源圖的結(jié)點(diǎn)是集成電路中的不同布線區(qū)域,邊是區(qū)域間的分割線,邊的費(fèi)用決定于區(qū)域之間的布線資源數(shù);詳細(xì)布線資源圖的結(jié)點(diǎn)是集成電路的預(yù)規(guī)劃的布線格點(diǎn)、或者可編程邏輯器件中預(yù)制的線軌和連接器件,邊是布線格點(diǎn)之間的金屬連線,邊的費(fèi)用為該金屬連線的相關(guān)屬性(如導(dǎo)電性等)??傮w布線和詳細(xì)布線都調(diào)用相同的超并行布線器來(lái)進(jìn)行線網(wǎng)連接。總體布線基于簡(jiǎn)化的信息進(jìn)行布線,速度較快;詳細(xì)布線在總體布線的基礎(chǔ)上進(jìn)行布線,可大大加快其布線速度。并且對(duì)于超大集成電路中的全局大線網(wǎng),由于我們將布線方法分為總體布線和詳細(xì)布線,因此將這些全局大線網(wǎng)劃分為了一段一段的小線網(wǎng),從而幾乎不存在一個(gè)線網(wǎng)的覆蓋區(qū)域不能完整傳入圖形處理單元內(nèi)存的情況。但是作為系統(tǒng)的應(yīng)急方案,當(dāng)出現(xiàn)圖形處理單元內(nèi)存不足以覆蓋待布線網(wǎng)的情況時(shí),我們就運(yùn)用中央處理單元來(lái)連接該線網(wǎng)。可以理解,在本發(fā)明的其他實(shí)施方式中,可以不分為總體布線和詳細(xì)布線,也能實(shí)現(xiàn)本發(fā)明的方案。輸出步驟輸出完成布線的上述詳細(xì)布線資源圖。具體地說(shuō):如圖2所示,上述布線步驟包括以下步驟:步驟a上述超并行布線器檢查該布線資源圖的線網(wǎng)是否已布且無(wú)布線沖突,若是,則結(jié)束布線,若否,則確定待布線網(wǎng)。該待布線網(wǎng)包括未布線網(wǎng)和有布線沖突的線網(wǎng),該超并行布線器將確定的相應(yīng)有布線沖突的線網(wǎng)進(jìn)行拆線重布。步驟b上述超并行布線器將確定的待布線網(wǎng)覆蓋的布線區(qū)域拷貝入上述圖形處
理單元中。在本實(shí)施方式中,優(yōu)選地,線網(wǎng)覆蓋區(qū)域是一個(gè)矩形區(qū)域,能夠覆蓋線網(wǎng)的所有端點(diǎn)??梢岳斫?,在本發(fā)明的其他實(shí)施方式中,可根據(jù)實(shí)際情況采用其他形狀的線網(wǎng)覆蓋區(qū)域。步驟c上述圖形處理單元同時(shí)監(jiān)控該布線區(qū)域中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接。步驟d上述超并行布線器輸出布線結(jié)果并更新該布線資源圖,即將上述布線區(qū)域的新線網(wǎng)替換原線網(wǎng),返回步驟a。
`
在步驟c中,上述圖形處理單元同時(shí)監(jiān)控布線區(qū)域中每個(gè)結(jié)點(diǎn)狀態(tài),并同步處理。在布線前檢查上述布線資源圖的線網(wǎng)是否已布且無(wú)布線沖突,并將需要布線的線網(wǎng)拷貝入上述圖形處理單元中,進(jìn)一步提高了圖形處理單元的處理速度。可以理解,在布線前不經(jīng)檢查,直接將整個(gè)線網(wǎng)拷貝入上述圖形處理單元中,也能實(shí)現(xiàn)本發(fā)明的技術(shù)方案。初始時(shí),上述圖形處理單元設(shè)置起始結(jié)點(diǎn)的費(fèi)用為O、結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài),設(shè)置其余結(jié)點(diǎn)費(fèi)用為無(wú)窮大、結(jié)點(diǎn)狀態(tài)為未搜索狀態(tài)。當(dāng)結(jié)點(diǎn)的狀態(tài)為搜索邊緣狀態(tài)時(shí),上述圖形處理單元計(jì)算該結(jié)點(diǎn)的相鄰結(jié)點(diǎn)費(fèi)用,若計(jì)算的相鄰結(jié)點(diǎn)費(fèi)用比原相鄰結(jié)點(diǎn)費(fèi)用小,則更新該相鄰結(jié)點(diǎn)費(fèi)用并將該相鄰結(jié)點(diǎn)狀態(tài)設(shè)置為搜索邊緣狀態(tài),在處理完該結(jié)點(diǎn)后,將該結(jié)點(diǎn)狀態(tài)設(shè)置為搜索完成狀態(tài)。上述圖形處理單元重復(fù)處理結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài)的結(jié)點(diǎn),直到發(fā)現(xiàn)終點(diǎn)結(jié)點(diǎn)。由上可以看到,本發(fā)明提出的超級(jí)并行處理器的核心是基于圖形處理單元的超并
行搜索布線方法,在一個(gè)優(yōu)選的例子中,該超并行搜索布線方法用偽語(yǔ)言描述如下:
權(quán)利要求
1.一種基于圖形處理單元的布線方法,其特征在于,包括以下步驟: 信息輸入步驟輸入邏輯連接信息; 總體布線資源圖構(gòu)造步驟總體布線單元根據(jù)所述邏輯連接信息構(gòu)造總體布線資源圖; 總體布線步驟超并行布線器根據(jù)所述邏輯連接信息和所述總體布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,所述圖形處理單元同時(shí)監(jiān)控所述總體布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接; 詳細(xì)布線資源圖構(gòu)造步驟詳細(xì)布線單元根據(jù)所述邏輯連接信息在經(jīng)過(guò)布線的所述總體布線資源圖基礎(chǔ)上構(gòu)造詳細(xì)布線資源圖; 詳細(xì)布線步驟所述超并行布線器根據(jù)所述邏輯連接信息和所述詳細(xì)布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,所述圖形處理單元同時(shí)監(jiān)控所述詳細(xì)布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接; 輸出步驟輸出完成布線的所述詳細(xì)布線資源圖。
2.根據(jù)權(quán)利要求1所述的基于圖形處理單元的布線方法,其特征在于,所述布線步驟包括以下步驟: 步驟a所述超并行布線器檢查所述布線資源圖的線網(wǎng)是否已布且無(wú)布線沖突,若是,則結(jié)束布線,若否,則確定待布線網(wǎng); 步驟b所述超并行布線器將確定的待布線網(wǎng)覆蓋的布線區(qū)域拷貝入所述圖形處理單元中;· 步驟c所述圖形處理單元同時(shí)監(jiān)控所述待布線網(wǎng)覆蓋的布線區(qū)域中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接; 步驟d所述超并行布線器輸出布線結(jié)果并更新所述布線資源圖,返回步驟a。
3.根據(jù)權(quán)利要求2所述的基于圖形處理單元的布線方法,其特征在于,在步驟c中,所述圖形處理單元同時(shí)監(jiān)控所述布線區(qū)域中每個(gè)結(jié)點(diǎn)狀態(tài),并同步處理; 初始時(shí)所述圖形處理單元設(shè)置起始結(jié)點(diǎn)的費(fèi)用為O、結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài),設(shè)置其余結(jié)點(diǎn)費(fèi)用為無(wú)窮大、結(jié)點(diǎn)狀態(tài)為未搜索狀態(tài); 當(dāng)所述結(jié)點(diǎn)的狀態(tài)為搜索邊緣狀態(tài)時(shí),所述圖形處理單元計(jì)算該結(jié)點(diǎn)的相鄰結(jié)點(diǎn)費(fèi)用,若計(jì)算的相鄰結(jié)點(diǎn)費(fèi)用比原相鄰結(jié)點(diǎn)費(fèi)用小,則更新該相鄰結(jié)點(diǎn)費(fèi)用并將該相鄰結(jié)點(diǎn)狀態(tài)設(shè)置為搜索邊緣狀態(tài),在處理完該結(jié)點(diǎn)后,將該結(jié)點(diǎn)狀態(tài)設(shè)置為搜索完成狀態(tài); 所述圖形處理單元重復(fù)處理結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài)的結(jié)點(diǎn),直到發(fā)現(xiàn)終點(diǎn)結(jié)點(diǎn)。
4.根據(jù)權(quán)利要求2或3所述的基于圖形處理單元的布線方法,其特征在于,所述待布線網(wǎng)覆蓋的布線區(qū)域精簡(jiǎn)后拷貝入所述圖形處理單元,精簡(jiǎn)后的布線區(qū)域由結(jié)點(diǎn)編號(hào)和邊的費(fèi)用信息組成。
5.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的基于圖形處理單元的布線方法,其特征在于,所述總體布線資源圖的結(jié)點(diǎn)是布線區(qū)域,邊是布線區(qū)域間的分割線,邊的費(fèi)用決定于布線區(qū)域間的布線資源數(shù); 所述詳細(xì)布線資源圖的結(jié)點(diǎn)是預(yù)規(guī)劃的布線格點(diǎn),邊是布線格點(diǎn)間的連線,邊的費(fèi)用為所述連線的相關(guān)屬性。
6.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的基于圖形處理單元的布線方法,其特征在于,所述邏輯連接信息包括電路網(wǎng)表、工藝參數(shù)和器件位置信息。
7.一種基于圖形處理單元的布線系統(tǒng),其特征在于,包括: 輸入單元,用于輸入邏輯連接信息; 總體布線單元,用于根據(jù)所述邏輯連接信息構(gòu)造總體布線資源圖并調(diào)用超并行布線器進(jìn)行布線; 詳細(xì)布線單元,用于根據(jù)所述邏輯連接信息在經(jīng)過(guò)布線的所述總體布線資源圖基礎(chǔ)上構(gòu)造詳細(xì)布線資源圖并調(diào)用所述超并行布線器進(jìn)行布線; 輸出單元,用于輸出完成布線的所述詳細(xì)布線資源圖;以及 超并行布線器,用于根據(jù)所述邏輯連接信息和所述布線資源圖進(jìn)行布線并輸出布線結(jié)果,其中該超并行布線器包括圖形處理單元,所述圖形處理單元同時(shí)監(jiān)控所述布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接。
8.根據(jù)權(quán)利要求7所述的基于圖形處理單元的布線系統(tǒng),其特征在于,所述超并行布線器包括: 檢查單元,用于檢查所述布線資源圖的線網(wǎng)是否已布并且無(wú)布線沖突; 確定單元,用于若所述線網(wǎng)未布或有布線沖突,則確定待布線網(wǎng); 拷貝單元,用于將確定的待布線網(wǎng)覆蓋的布線區(qū)域拷貝入所述圖形處理單元中;圖形處理單元,用于同時(shí)監(jiān)控所述待布線網(wǎng)覆蓋的布線區(qū)域中每個(gè)結(jié)點(diǎn)的狀態(tài)進(jìn)行布線搜索,從而完成布線連接; 輸出更新單元,用于輸出布線結(jié)果并更新所述布線資源圖。
9.根據(jù)權(quán)利要求8所述的基于圖形處理單元的布線系統(tǒng),其特征在于,所述超并行布線器還包括精簡(jiǎn)單元,用于精簡(jiǎn)所述待布線網(wǎng)覆蓋的布線區(qū)域,精簡(jiǎn)后的布線區(qū)域由結(jié)點(diǎn)編號(hào)和邊的費(fèi)用信息組成,所述拷貝單元將該精簡(jiǎn)后的布線區(qū)域拷貝入所述圖形處理單元中; 所述圖形處理單元用于同時(shí)監(jiān)控每個(gè)結(jié)點(diǎn)狀態(tài),并同步處理; 所述圖形處理單元初始時(shí)設(shè)置起始結(jié)點(diǎn)的費(fèi)用為O、結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài),設(shè)置其余結(jié)點(diǎn)費(fèi)用為無(wú)窮大、結(jié)點(diǎn)狀態(tài)為未搜索狀態(tài); 當(dāng)所述結(jié)點(diǎn)的狀態(tài)為搜索邊緣狀態(tài)時(shí),所述圖形處理單元計(jì)算該結(jié)點(diǎn)的相鄰結(jié)點(diǎn)費(fèi)用,若計(jì)算的相鄰結(jié)點(diǎn)費(fèi)用比原相鄰結(jié)點(diǎn)費(fèi)用小,則更新該相鄰結(jié)點(diǎn)費(fèi)用并將該相鄰結(jié)點(diǎn)狀態(tài)設(shè)置為搜索邊緣狀態(tài),在處理完該結(jié)點(diǎn)后,將該結(jié)點(diǎn)狀態(tài)設(shè)置為搜索完成狀態(tài); 所述圖形處理單元重復(fù)處理結(jié)點(diǎn)狀態(tài)為搜索邊緣狀態(tài)的結(jié)點(diǎn),直到發(fā)現(xiàn)終點(diǎn)結(jié)點(diǎn)。
10.根據(jù)權(quán)利要求7至9中任一項(xiàng)所述的基于圖形處理單元的布線系統(tǒng),其特征在于,所述邏輯連接信息包括電路網(wǎng)表、工藝參數(shù)和器件位置信息; 所述總體布線資源圖的結(jié)點(diǎn)是布線區(qū)域,邊是布線區(qū)域間的分割線,邊的費(fèi)用決定于布線區(qū)域間的布線資源數(shù); 所述詳細(xì)布線資源圖的結(jié)點(diǎn)是預(yù)規(guī)劃的布線格點(diǎn),邊是布線格點(diǎn)間的連線,邊的費(fèi)用為所述連線的相關(guān)屬性。
全文摘要
本發(fā)明涉及集成電路設(shè)計(jì),公開(kāi)了一種基于圖形處理單元的布線方法及其系統(tǒng)。本發(fā)明中,利用圖形處理單元的超級(jí)并行處理能力,將傳統(tǒng)集成電路布線方法中最核心的優(yōu)先隊(duì)列去除,改以同時(shí)監(jiān)控布線資源圖中每個(gè)結(jié)點(diǎn)的狀態(tài)來(lái)進(jìn)行布線搜索,通過(guò)這種做法,布線的時(shí)間只與布線路徑的長(zhǎng)度有關(guān),與布線空間的大小無(wú)關(guān),并且能對(duì)單一連線使用成百上千的處理單元進(jìn)行同時(shí)布線,布線速度要遠(yuǎn)快于當(dāng)前已知的任何其他方法,且不犧牲整個(gè)系統(tǒng)的結(jié)果性能。此外,將整個(gè)布線分為總體布線和詳細(xì)布線,進(jìn)一步加快了整個(gè)布線速度并且使圖形處理單元的內(nèi)存足以負(fù)荷當(dāng)前超大規(guī)模集成電路的應(yīng)用需要。
文檔編號(hào)G06F9/46GK103246554SQ201310124138
公開(kāi)日2013年8月14日 申請(qǐng)日期2013年4月10日 優(yōu)先權(quán)日2013年4月10日
發(fā)明者陳利光, 王元, 趙永勝, 徐春華 申請(qǐng)人:上海安路信息科技有限公司