基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法
【專利摘要】本發(fā)明提出一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,包括以下步驟:根據(jù)期望映射到三維現(xiàn)場可編程門陣列上的目標(biāo)電路所包括的多個功能模塊建立超圖;對超圖進(jìn)行分析以獲取超圖中的重聚信息;根據(jù)重聚信息得到超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重;根據(jù)權(quán)重將超圖劃分為多個層;將劃分后的超圖中的多個功能模塊分別對應(yīng)地布置到三維現(xiàn)場可編程門陣列的多個層中。本發(fā)明實(shí)例的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,具有高效、可靠的優(yōu)點(diǎn),能夠優(yōu)化分層及布局的流程,并且改善分層及優(yōu)化結(jié)果的線長和時(shí)延,且該方法實(shí)現(xiàn)簡單、可移植性高。本發(fā)明還提供了一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng)。
【專利說明】基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路計(jì)算機(jī)輔助設(shè)計(jì)【技術(shù)領(lǐng)域】,特別涉及一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前,由于晶體管的尺寸已很難再減小,因此電路的集成度很難再通過傳統(tǒng)的方法進(jìn)一步得到提高。人們開始通過其它途徑來解決這一問題。隨著芯片設(shè)計(jì)需求的提高與制造工藝的發(fā)展,為了進(jìn)一步降低互連線延遲,提高芯片集成度和性能,“三維芯片”的設(shè)計(jì)技術(shù)應(yīng)時(shí)而生,并逐步成為集成電路設(shè)計(jì)領(lǐng)域的研究熱點(diǎn)。作為一類特殊的芯片,F(xiàn)PGA (Field Programmable Gate Array,現(xiàn)場可編程門陣列)也向著三維的方向快速發(fā)展。3D FPGA (Three Dimensional Field-Programmable Gate Array,三維現(xiàn)場可編程門陣列)芯片設(shè)計(jì)是將多層傳統(tǒng)的2D FPGA芯片集成到同一個芯片中,形成一種多個二維芯片的垂直疊放結(jié)構(gòu)。在這種結(jié)構(gòu)中,不同層芯片間仍保持著聯(lián)系,而這種聯(lián)系是通過TSV(Through-S1-Via,娃穿孔)來實(shí)現(xiàn)的。作為一個具體的例子,如圖1所示,為一種3D FPGA芯片的結(jié)構(gòu)。
[0003]圖1a顯示的是傳統(tǒng)2D FPGA芯片的結(jié)構(gòu),其中包括了 CLB(Configurable-Logic-Block,可配置邏輯模塊)以及用于實(shí)現(xiàn)CLB之間互聯(lián)的CB(Connection-Box,連接組件)和 SB (Switching-Bo,開關(guān)組件)。圖1b 顯不了 3D FPGA 芯片的結(jié)構(gòu),即多片2D FPGA的堆疊。為了實(shí)現(xiàn)不同層之間CLB的互聯(lián),部分傳統(tǒng)的SB被擴(kuò)展到三維空間,即3D-SB。每個3D-SB中都有固定數(shù)目的TSV,用于不同層間信號的傳播。
[0004]然而,無論是對于傳統(tǒng)的2D FPGA芯片還是3D FPGA芯片,在設(shè)計(jì)流程中,布局和布線都是極其重要的兩步。布局決定要用到哪些CLB,而布線決定要用到哪些CB和SB。但是與二維芯片不同的是,對于三維芯片來說,除了布局布線,設(shè)計(jì)流程中還包括另一個重要步驟:分層。由于三維芯片是由多層二維芯片堆疊而成的,在其設(shè)計(jì)中需要解決各功能模塊應(yīng)當(dāng)被分配到哪層的問題,而分層就是解決這一問題的過程。
[0005]目前3DFPGA設(shè)計(jì)領(lǐng)域絕大部分分層的算法都是基于最小割的,即盡量減少不同層之間的聯(lián)系。減少了不同層間的聯(lián)系也就意味著減少了 FPGA芯片中TSV的使用量。但是對于3D FPGA芯片來說,相應(yīng)的TSV數(shù)量是制造時(shí)已經(jīng)固定的,因此簡單的以減少TSV數(shù)量的分層方法有其局限性。首先,分層的過程與布局布線是密切聯(lián)系的,好的分層結(jié)果使得之后的布局布線變得容易,差的結(jié)果使之變得困難,甚至無法得到合理的布局布線結(jié)果,而最小割并沒有將分層與FPGA設(shè)計(jì)中的其它步驟聯(lián)系起來,因此很難得到好的分層結(jié)果。其次,如圖1b圖所示,TSV在FPGA中是在設(shè)計(jì)前就已經(jīng)確定的資源,即無論是TSV的數(shù)量還是其位置在設(shè)計(jì)前都是已知的,因此在設(shè)計(jì)時(shí)無論用沒用到,TSV都存在于FPGA中。實(shí)際上,目前3D FPGA芯片中TSV的利用率還是很低的。
【發(fā)明內(nèi)容】
[0006]本發(fā)明旨在至少解決上述技術(shù)問題之一。
[0007]為此,本發(fā)明的一個目的在于提出一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,該方法具有高效、可靠的優(yōu)點(diǎn),能夠優(yōu)化分層及布局的流程,并且改善分層及優(yōu)化結(jié)果的線長和時(shí)延,且該方法實(shí)現(xiàn)簡單、可移植性高。
[0008]本發(fā)明的另一目的在于提供一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng)。
[0009]為了實(shí)現(xiàn)上述目的,本發(fā)明第一方面的實(shí)施例提出了一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,包括以下步驟:根據(jù)期望映射到三維現(xiàn)場可編程門陣列上的目標(biāo)電路所包括的多個功能模塊建立超圖;對所述超圖進(jìn)行分析以獲取所述超圖中的重聚信息;根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重;根據(jù)所述權(quán)重將所述超圖劃分為多個層;以及將劃分后的超圖中的多個功能模塊分別對應(yīng)地布置到所述三維現(xiàn)場可編程門陣列的多個層中。
[0010]根據(jù)本發(fā)明實(shí)施例的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,基于三維重聚,為期望映射到三維現(xiàn)場可編程門陣列上的目標(biāo)電路建立超圖,并對超圖進(jìn)行分析以獲取超圖中的重聚信息,再根據(jù)重聚信息計(jì)算得到超圖中超邊劃分時(shí)對應(yīng)的權(quán)重,并據(jù)此將超圖劃分為需要的多個層,最后將劃分后的超圖中包括的多個功能模塊分別對應(yīng)地分配到劃分好的多個層中。因此,該方法能夠?yàn)槿S現(xiàn)場可編程門陣列提供更好的分層結(jié)果,以便于更好的布局,從而優(yōu)化了分層及布局的流程,改善了分層及優(yōu)化結(jié)果的線長和時(shí)延,因此,該方法具有高效、可靠的優(yōu)點(diǎn)。另外,該方法實(shí)現(xiàn)簡單,能夠方便移植到各種面向三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)工具中,因此,可移植性高。通過測試,本發(fā)明的方法能夠更好地支持布局布線,具體例如:基于本發(fā)明的方法的分層結(jié)果進(jìn)行的布局布線,對兩層現(xiàn)場可編程門陣列能夠帶來7.06%的線長改善和4.86%的時(shí)延改善,對三層現(xiàn)場可編程門陣列能帶來4.71%的線長改善和4.73%的時(shí)延改善。
[0011]另外,根據(jù)本發(fā)明上述實(shí)施例的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法還可以具有如下附加的技術(shù)特征:
[0012]在一些示例中,所述根據(jù)所述權(quán)重將所述超圖劃分為多個層,包括:根據(jù)分層算法將所述超圖劃分為多個層。
[0013]在一些示例中,所述分層算法為RALP算法。
[0014]在一些示例中,所述根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重,進(jìn)一步包括:如果所述超圖中的重聚子圖從節(jié)點(diǎn)X到節(jié)點(diǎn)Y,以及經(jīng)過劃分將原重聚從中間切分形成兩個小重聚,其中所述兩個小重聚被切點(diǎn)T連接,即X節(jié)點(diǎn)到切點(diǎn)T以及切點(diǎn)T到Y(jié)節(jié)點(diǎn),則計(jì)算所述超圖的超邊的劃分收益CBkxyu為:
【權(quán)利要求】
1.一種基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,其特征在于,包括以下步驟: 根據(jù)期望映射到三維現(xiàn)場可編程門陣列上的目標(biāo)電路所包括的多個功能模塊建立超圖; 對所述超圖進(jìn)行分析以獲取所述超圖中的重聚信息; 根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重; 根據(jù)所述權(quán)重將所述超圖劃分為多個層;以及 將劃分后的超圖中的多個功能模塊分別對應(yīng)地布置到所述三維現(xiàn)場可編程門陣列的多個層中。
2.根據(jù)權(quán)利要求1所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,其特征在于,所述根據(jù)所述權(quán)重將所述超圖劃分為多個層,包括: 根據(jù)分層算法將所述超圖劃分為多個層。
3.根據(jù)權(quán)利要求2所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,其特征在于,所述分層算法為RALP算法。
4.根據(jù)權(quán)利要求1所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,其特征在于,所述根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重,進(jìn)一步包括: 如果所述超圖中的重聚子圖從節(jié)點(diǎn)X到節(jié)點(diǎn)Y,以及經(jīng)過劃分將原重聚從中間切分形成兩個小重聚,其中所述兩個小重聚被切點(diǎn)T連接,即X節(jié)點(diǎn)到切點(diǎn)T以及切點(diǎn)T到Y(jié)節(jié)點(diǎn),則計(jì)算所述超圖的超邊的劃分收益CBkxyu為:
5.根據(jù)權(quán)利要求4所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)方法,其特征在于,所述根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重,還包括: 計(jì)算所述超圖中的每條邊Ei的權(quán)值為:
6.一種基于三維重聚的三維現(xiàn)場可編程門陣列分層設(shè)計(jì)系統(tǒng),其特征在于,包括:超圖建立模塊,所述超圖建立模塊用于根據(jù)期望映射到三維現(xiàn)場可編程門陣列上的目標(biāo)電路所包括的多個功能模塊建立超圖; 重聚信息獲取模塊,所述重聚信息獲取模塊用于對所述超圖進(jìn)行分析以獲取所述超圖中的重聚信息; 權(quán)重計(jì)算模塊,所述權(quán)重計(jì)算模塊用于根據(jù)所述重聚信息得到所述超圖中的超邊劃分時(shí)對應(yīng)的權(quán)重; 分層模塊,所述分層模塊用于根據(jù)所述權(quán)重將所述超圖劃分為多個層;以及 布局模塊,所述布局模塊用于將劃分后的超圖中所述多個功能模塊分別對應(yīng)地布置到所述三維現(xiàn)場可編程門陣列的多個層中。
7.根據(jù)權(quán)利要求6所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng),其特征在于,所述分層模塊用于根據(jù)分層算法將所述超圖劃分為多個層。
8.根據(jù)權(quán)利要求7所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng),其特征在于,所述分層算法為RALP算法。
9.根據(jù)權(quán)利要求6所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng),其特征在于,如果所述超圖中的重聚子圖從節(jié)點(diǎn)X到節(jié)點(diǎn)Y,以及經(jīng)過劃分將原重聚從中間切分形成兩個小重聚,其中所述兩個小重聚被切點(diǎn)T連接,即X節(jié)點(diǎn)到切點(diǎn)T以及切點(diǎn)T到Y(jié)節(jié)點(diǎn),則所述權(quán)重計(jì)算模塊還用于計(jì)算所述超圖的超邊的劃分收益CBkxyu為:
10.根據(jù)權(quán)利要求9所述的基于三維重聚的三維現(xiàn)場可編程門陣列的分層設(shè)計(jì)系統(tǒng),其特征在于,所述權(quán)重計(jì)算模塊還用于計(jì)算所述超圖中的每條邊Ei的權(quán)重為:
【文檔編號】G06F17/50GK103678817SQ201310714658
【公開日】2014年3月26日 申請日期:2013年12月20日 優(yōu)先權(quán)日:2013年12月20日
【發(fā)明者】馬昱春, 邊計(jì)年, 劉慶昱 申請人:清華大學(xué)