欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

集成電路芯片的時(shí)序確定方法和裝置制造方法

文檔序號:6507863閱讀:422來源:國知局
集成電路芯片的時(shí)序確定方法和裝置制造方法
【專利摘要】本發(fā)明提供一種集成電路芯片的時(shí)序確定方法和裝置。該方法包括:分別對待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊進(jìn)行綜合、布局、生成時(shí)鐘網(wǎng)絡(luò)設(shè)計(jì);根據(jù)子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)提取邊界時(shí)序模型;若邊界時(shí)序模型滿足第一時(shí)序條件,則分別對子模塊和頂層模塊進(jìn)行布線設(shè)計(jì);根據(jù)布線后的子模塊和頂層模塊提取電參數(shù)模型;若電參數(shù)模型滿足第二時(shí)序條件,則拼合子模塊和頂層模塊并提取晶體管模型;若晶體管模型滿足第三時(shí)序條件則完成待設(shè)計(jì)集成電路芯片時(shí)序的確定。本發(fā)明提供的集成電路芯片的時(shí)序確定方法和裝置,在集成電路芯片設(shè)計(jì)的不同階段,提取不同的時(shí)序模型,實(shí)現(xiàn)了時(shí)序分析的速度和精度的平衡。
【專利說明】集成電路芯片的時(shí)序確定方法和裝置

【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及電力電子【技術(shù)領(lǐng)域】,尤其涉及一種集成電路芯片的時(shí)序確定方法和裝置。

【背景技術(shù)】
[0002]集成電路芯片物理設(shè)計(jì)就是將以硬件語言(例如Verilog,VHDL)描述的功能模塊通過設(shè)計(jì)映射為版圖的過程。圖1為傳統(tǒng)的物理設(shè)計(jì)方法的流程圖,如圖1所示,傳統(tǒng)的物理設(shè)計(jì)方法主要包括綜合、布局、生成時(shí)鐘網(wǎng)絡(luò)、布線和簽核分析五個(gè)階段,對于前四個(gè)階段,在每個(gè)階段完成后,都要檢查設(shè)計(jì)是否滿足對應(yīng)的各項(xiàng)設(shè)計(jì)規(guī)則,如果不滿足,則返回前面的階段重新設(shè)計(jì)優(yōu)化,將可能出現(xiàn)的問題放在前面的階段解決,以減少最后簽核分析階段的壓力。
[0003]但隨著集成電路規(guī)模的不斷擴(kuò)大,自動化設(shè)計(jì)工具受自身算法所能處理問題的規(guī)模的限制,不能一次處理規(guī)模較大的芯片的物理設(shè)計(jì)問題,因此規(guī)模較大的芯片大都采用層次化物理設(shè)計(jì)方法。圖2為傳統(tǒng)的層次化物理設(shè)計(jì)方法的流程圖,如圖2所示,首先根據(jù)功能將硬件語言描述的整體芯片分割為幾個(gè)獨(dú)立的子模塊和一個(gè)頂層模塊,頂層模塊主要包含子模塊之間的連接關(guān)系,對每個(gè)子模塊采用傳統(tǒng)的物理設(shè)計(jì)方法進(jìn)行物理設(shè)計(jì),子模塊的物理設(shè)計(jì)可以并行進(jìn)行,然后頂層模塊調(diào)用設(shè)計(jì)好的子模塊進(jìn)行頂層模塊物理設(shè)計(jì),完成整體芯片的物理設(shè)計(jì),最后對設(shè)計(jì)好的整體芯片進(jìn)行時(shí)序分析,如果不滿足時(shí)序要求,則返回前面的階段重新設(shè)計(jì)優(yōu)化。
[0004]但傳統(tǒng)的層次化物理設(shè)計(jì)方法對子模塊邊界時(shí)序的刻畫精度要求很高,如果放寬子模塊邊界約束,在拼合到頂層模塊時(shí),子模塊與子模塊之間會出現(xiàn)許多關(guān)鍵路徑,影響邊界時(shí)序的刻畫精度;如果加緊子模塊邊界約束,會增加子模塊的設(shè)計(jì)復(fù)雜度,也會由于過度約束帶來不必要的面積和功耗浪費(fèi)。為避免傳統(tǒng)的層次化物理設(shè)計(jì)方法的上述缺點(diǎn),人們提出了不斷拼合反饋的層次化物理設(shè)計(jì)方法。圖3為傳統(tǒng)的不斷拼合反饋的層次化物理設(shè)計(jì)方法的流程圖,如圖3所示,首先根據(jù)功能將硬件語言描述的整體芯片分割為幾個(gè)獨(dú)立的子模塊和一個(gè)頂層模塊,頂層模塊主要包含子模塊之間的連接關(guān)系,對每個(gè)子模塊和頂層模塊采用傳統(tǒng)的物理設(shè)計(jì)方法進(jìn)行物理設(shè)計(jì),子模塊和頂層模塊并行設(shè)計(jì),在每個(gè)重要節(jié)點(diǎn),例如生成時(shí)鐘網(wǎng)絡(luò)后、布線后都將子模塊和頂層模塊拼合成整體來進(jìn)行時(shí)序分析,如果不滿足時(shí)序要求,則返回前面的階段重新設(shè)計(jì)優(yōu)化。該方法通過不斷地拼合反饋來調(diào)整邊界約束,避免在最后的簽核分析階段,子模塊和子模塊之間出現(xiàn)關(guān)鍵路徑影響邊界時(shí)序的刻畫精度。
[0005]現(xiàn)有技術(shù)中,當(dāng)采用不斷拼合反饋的層次化物理設(shè)計(jì)方法對芯片進(jìn)行設(shè)計(jì)時(shí),大多采用簡單的時(shí)序模型(黑盒模型或灰盒模型)或復(fù)雜的時(shí)序模型(電路模型)來進(jìn)行靜態(tài)時(shí)序分析,簡單的時(shí)序模型分析速度快,精度低,復(fù)雜的時(shí)序模型分析速度慢,精度高,不能將分析時(shí)間和分析精度較好地結(jié)合起來,給物理設(shè)計(jì)的分析和反饋修改帶來很大困難。
[0006]綜上,現(xiàn)有技術(shù)存在如下缺陷:無法兼顧時(shí)序分析的速度和精度。


【發(fā)明內(nèi)容】

[0007]本發(fā)明提供一種集成電路芯片的時(shí)序確定方法和裝置,用以解決現(xiàn)有技術(shù)中存在的無法兼顧時(shí)序分析的速度和精度的問題。
[0008]一方面,本發(fā)明提供了一種集成電路芯片的時(shí)序確定方法,包括:
[0009]確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及所述門單元在所述集成電路芯片上的位置,并確定所述門單元之間的邏輯連接關(guān)系,所述門單元包括邏輯單元和時(shí)序單元;
[0010]將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0011]根據(jù)所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取所述第一拼合芯片的邊界時(shí)序模型;
[0012]若所述第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系;
[0013]根據(jù)所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取所述第二拼合芯片的電參數(shù)模型;
[0014]若所述第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系;
[0015]根據(jù)所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取所述第三拼合芯片的晶體管模型;
[0016]若所述第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定所述第三拼合芯片的時(shí)序?yàn)樗龃O(shè)計(jì)集成電路芯片的時(shí)序。
[0017]另一方面,本發(fā)明提供了一種集成電路芯片的時(shí)序確定裝置,包括:
[0018]第一確定模塊,用于確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及所述門單元在所述集成電路芯片上的位置,并確定所述門單元之間的邏輯連接關(guān)系,所述門單元包括邏輯單元和時(shí)序單元;
[0019]分布模塊,用于將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0020]第一提取模塊,用于根據(jù)所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取所述第一拼合芯片的邊界時(shí)序模型;
[0021]第二確定模塊,用于若所述第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系;
[0022]第二提取模塊,用于根據(jù)所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取所述第二拼合芯片的電參數(shù)模型;
[0023]第三確定模塊,用于若所述第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系;
[0024]第三提取模塊,用于根據(jù)所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取所述第三拼合芯片的晶體管模型;
[0025]第四確定模塊,用于若所述第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定所述第三拼合芯片的時(shí)序?yàn)樗龃O(shè)計(jì)集成電路芯片的時(shí)序。
[0026]本發(fā)明提供的集成電路芯片的時(shí)序確定方法和裝置,通過在完成集成電路芯片設(shè)計(jì)的不同階段后,將子模塊拼合到頂層模塊,并提取不同的時(shí)序模型進(jìn)行時(shí)序分析,實(shí)現(xiàn)了時(shí)序分析的速度和精度的平衡。

【專利附圖】

【附圖說明】
[0027]圖1為傳統(tǒng)的物理設(shè)計(jì)方法的流程圖;
[0028]圖2為傳統(tǒng)的層次化物理設(shè)計(jì)方法的流程圖;
[0029]圖3為傳統(tǒng)的不斷拼合反饋的層次化物理設(shè)計(jì)方法的流程圖;
[0030]圖4為本發(fā)明提供的集成電路芯片的時(shí)序確定方法一個(gè)實(shí)施例的流程示意圖;
[0031]圖5為本發(fā)明提供的集成電路芯片的時(shí)序確定方法又一個(gè)實(shí)施例的流程示意圖;
[0032]圖6為圖5所示實(shí)施例中的邊界時(shí)序模型的結(jié)構(gòu)示意圖;
[0033]圖7為圖5所示實(shí)施例中的電參數(shù)模型的結(jié)構(gòu)示意圖;
[0034]圖8為本發(fā)明提供的集成電路芯片的時(shí)序確定裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0035]下面通過具體的實(shí)施例及附圖,對本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
[0036]圖4為本發(fā)明提供的集成電路芯片的時(shí)序確定方法一個(gè)實(shí)施例的流程示意圖。如圖4所示,該方法可以包括:
[0037]S401,確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及門單元在集成電路芯片上的位置,并確定門單元之間的邏輯連接關(guān)系,門單元包括邏輯單元和時(shí)序單元;
[0038]具體的,當(dāng)集成電路規(guī)模較大時(shí),自動化設(shè)計(jì)工具受自身算法所能處理問題的規(guī)模的限制,不能一次處理規(guī)模較大的芯片的物理設(shè)計(jì)問題,因此需要將硬件語言描述的待設(shè)計(jì)集成電路芯片(包括硬件語言描述的功能模塊以及功能模塊間的邏輯連接關(guān)系),按照功能分割為至少兩個(gè)獨(dú)立的子模塊和一個(gè)頂層模塊。其中,每個(gè)子模塊包括若干個(gè)硬件語言描述的功能模塊以及這些功能模塊間的邏輯連接關(guān)系,頂層模塊包括至少兩個(gè)子模塊之間的邏輯連接關(guān)系。本實(shí)施例中邏輯連接關(guān)系僅表示邏輯關(guān)系,不代表實(shí)際的金屬走線。在頂層模塊中預(yù)留有至少兩個(gè)子模塊的位置,但子模塊的具體結(jié)構(gòu)是不明確的。頂層模塊中可以僅包含至少兩個(gè)子模塊之間的邏輯連接關(guān)系,還可以如子模塊一樣包含若干個(gè)功能模塊以及這些功能模塊間的邏輯連接關(guān)系。
[0039]進(jìn)一步地,對確定的頂層模塊以及至少兩個(gè)子模塊進(jìn)行并行設(shè)計(jì),首先分別對每個(gè)子模塊以及頂層模塊進(jìn)行“綜合”設(shè)計(jì),即將每個(gè)子模塊以及頂層模塊中包含的硬件語言描述的功能模塊映射為門單元,將硬件語言描述的功能模塊之間的邏輯連接關(guān)系映射為門單元之間的邏輯連接關(guān)系。門單元主要包括邏輯單元(例如與門、或門、非門、與非門等)和時(shí)序單元(例如觸發(fā)器等)。每個(gè)邏輯單元包括數(shù)據(jù)輸入、輸出端口,每個(gè)時(shí)序單元除包含數(shù)據(jù)輸入、輸出端口外,還包含時(shí)鐘輸入端口。其次,分別對每個(gè)子模塊以及頂層模塊進(jìn)行“布局”設(shè)計(jì),即按照每個(gè)子模塊以及頂層模塊中包含的門單元之間的邏輯連接關(guān)系,將這些門單元設(shè)置在芯片上合適的位置上。
[0040]S402,將集成電路芯片的時(shí)鐘信號分布到子模塊和頂層模塊中的時(shí)序單元的時(shí)鐘端,分別生成子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0041]具體的,分別對每個(gè)子模塊以及頂層模塊進(jìn)行“綜合”和“布局”設(shè)計(jì)之后,分別對每個(gè)子模塊以及頂層模塊進(jìn)行“生成時(shí)鐘網(wǎng)絡(luò)”設(shè)計(jì),即對時(shí)鐘信號到每個(gè)子模塊以及頂層模塊中包含的時(shí)序單元的時(shí)鐘路徑進(jìn)行金屬布線,也即將集成電路芯片的時(shí)鐘信號分布到子模塊和頂層模塊中的每個(gè)時(shí)序單元的時(shí)鐘端(即時(shí)鐘信號輸入端)。由于集成電路芯片的時(shí)鐘信號的數(shù)量一般較少,而時(shí)序單元的數(shù)量一般較大,因此當(dāng)多個(gè)時(shí)序單元都由同一個(gè)時(shí)鐘信號控制時(shí),需要通過多級時(shí)鐘單元(例如時(shí)鐘緩沖器)將一個(gè)時(shí)鐘信號分發(fā)為多個(gè)時(shí)鐘信號以滿足時(shí)序單元的需求。例如:1000個(gè)時(shí)序單元(例如觸發(fā)器)都由同一個(gè)時(shí)鐘信號Clock控制,則在用組合邏輯實(shí)現(xiàn)的時(shí)候,每個(gè)時(shí)鐘單元(例如時(shí)鐘緩沖器)最多驅(qū)動16個(gè)下級時(shí)鐘單元(例如時(shí)鐘緩沖器),這樣就需要多級時(shí)鐘單元(例如時(shí)鐘緩沖器)將時(shí)鐘信號Clock分發(fā)下去,1個(gè)時(shí)鐘單元可以驅(qū)動下一級的16個(gè)時(shí)鐘單元,這16個(gè)時(shí)鐘單元又可以驅(qū)動再下一級的162個(gè)時(shí)鐘單元,……,直至1000個(gè)時(shí)序單元中的每個(gè)時(shí)序單元都對應(yīng)一個(gè)時(shí)鐘單元。這里需要說明的是,時(shí)序單元可以對應(yīng)任一級的時(shí)鐘單元,例如:時(shí)鐘信號Clock經(jīng)1個(gè)時(shí)鐘單元后被下一級的16個(gè)時(shí)鐘單元分發(fā)為16個(gè)時(shí)鐘信號,這16個(gè)時(shí)鐘信號中的部分(例如2個(gè))時(shí)鐘信號可以直接輸入至?xí)r序單元的時(shí)鐘端,剩下的部分(例如14個(gè))時(shí)鐘信號可以被再下一級的16*14個(gè)時(shí)鐘單兀分發(fā)為16*14個(gè)時(shí)鐘信號,......。
[0042]這些時(shí)鐘單元、時(shí)序單元以及它們之間的時(shí)鐘路徑共同構(gòu)成時(shí)鐘網(wǎng)絡(luò),即子模塊中的時(shí)序單元與對應(yīng)的時(shí)鐘單元以及它們之間的時(shí)鐘路徑共同構(gòu)成子模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò),頂層模塊中的時(shí)序單元與對應(yīng)的時(shí)鐘單元以及它們之間的時(shí)鐘路徑共同構(gòu)成頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)。
[0043]S403,根據(jù)子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對子模塊以及頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取第一拼合芯片的邊界時(shí)序模型;
[0044]具體的,將子模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)以及頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)進(jìn)行拼合,得到該集成電路芯片完整的時(shí)鐘網(wǎng)絡(luò),同時(shí)將子模塊包含的門單元以及頂層模塊包含的門單元拼合起來,得到第一拼合芯片。
[0045]通過提取該第一拼合芯片中已完成金屬布線的時(shí)鐘路徑的寄生參數(shù),以及尚未完成金屬布線的數(shù)據(jù)路徑的虛擬寄生參數(shù),提取出邊界時(shí)序模型,并將該邊界時(shí)序模型的時(shí)序作為當(dāng)前第一拼合芯片的時(shí)序。提取邊界時(shí)序模型可以使用完整的時(shí)鐘網(wǎng)絡(luò)也可以使用簡化的時(shí)鐘網(wǎng)絡(luò),其中簡化的時(shí)鐘網(wǎng)絡(luò)的形成過程具體參見圖5所示實(shí)施例中的相關(guān)描述。
[0046]在此階段采用邊界時(shí)序模型的原因分析如下:
[0047](1)該第一拼合芯片中的數(shù)據(jù)路徑即門單元之間的路徑尚未完成金屬布線,只存在邏輯連接關(guān)系,無法采用電參數(shù)模型等更精確的模型來描述該第一拼合芯片。
[0048](2)該第一拼合芯片中的時(shí)鐘路徑已經(jīng)完成金屬布線,能夠比較精確地刻畫時(shí)鐘路徑上的延遲,片上波動對時(shí)序的影響也能通過時(shí)鐘路徑反映出來,因此較為適合采用邊界時(shí)序模型來描述該第一拼合芯片。
[0049]S404,若第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系;
[0050]具體的,當(dāng)?shù)谝黄春闲酒倪吔鐣r(shí)序模型的時(shí)序滿足設(shè)定的第一時(shí)序條件時(shí),繼續(xù)對每個(gè)子模塊以及頂層模塊進(jìn)行“布線”設(shè)計(jì),即對每個(gè)子模塊中的數(shù)據(jù)路徑以及頂層模塊中的數(shù)據(jù)路徑進(jìn)行金屬布線,也即確定子模塊中包括的門單元之間的電連接關(guān)系,以及頂層模塊中包括的門單元之間的電連接關(guān)系。
[0051 ] S405,根據(jù)子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取第二拼合芯片的電參數(shù)模型;
[0052]具體的,將完成金屬布線的時(shí)鐘路徑構(gòu)成的時(shí)鐘網(wǎng)絡(luò)與完成金屬布線的子模塊的數(shù)據(jù)路徑(即子模塊中包括的門單元之間的電連接關(guān)系)以及頂層模塊的數(shù)據(jù)路徑(即頂層模塊中包括的門單元之間的電連接關(guān)系)進(jìn)行拼合,得到第二拼合芯片。
[0053]可以根據(jù)該第二拼合芯片,提取整體的電參數(shù)模型,也可以根據(jù)每個(gè)子模塊以及頂層模塊,分別提取電參數(shù)模型,再拼合成整體的電參數(shù)模型。其中,分別提取電參數(shù)模型再拼合成整體的電參數(shù)模型的具體過程參見圖5所示實(shí)施例中的相關(guān)描述。提取出電參數(shù)模型后,通過提取模型中已完成金屬布線的時(shí)鐘路徑的寄生參數(shù),以及已完成金屬布線的數(shù)據(jù)路徑的寄生參數(shù)確定該電參數(shù)模型的時(shí)序,并作為當(dāng)前第二拼合芯片的時(shí)序。
[0054]在此階段采用電參數(shù)模型的原因分析如下:
[0055]該第二拼合芯片中的數(shù)據(jù)路徑和時(shí)鐘路徑均已完成金屬布線,可以采用比邊界時(shí)序模型更高精度的電參數(shù)模型,來提取數(shù)據(jù)路徑和時(shí)鐘路徑上的寄生參數(shù),并且電參數(shù)模型由于考慮了時(shí)鐘路徑與數(shù)據(jù)路徑之間的耦合,以及數(shù)據(jù)路徑與數(shù)據(jù)路徑之間的耦合,因此時(shí)序分析結(jié)果相比于邊界時(shí)序模型精度更高。
[0056]S406,若第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系;
[0057]具體的,當(dāng)?shù)诙春闲酒碾妳?shù)模型的時(shí)序滿足設(shè)定的第二時(shí)序條件時(shí),要將完成“綜合”、“布局”、“生成時(shí)鐘網(wǎng)絡(luò)”以及“布線”設(shè)計(jì)的子模塊以及頂層模塊進(jìn)行拼合,需確定子模塊中門單元與頂層模塊中的門單元之間的電連接關(guān)系,即對子模塊中的門單元與頂層模塊中的門單元之間的數(shù)據(jù)路徑進(jìn)行金屬布線。
[0058]S407,根據(jù)子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取第三拼合芯片的晶體管模型;
[0059]具體的,將完成“綜合”、“布局”、“生成時(shí)鐘網(wǎng)絡(luò)”、“布線”設(shè)計(jì),以及子模塊與頂層模塊之間的布線設(shè)計(jì)的子模塊以及頂層模塊進(jìn)行拼合,得到第三拼合芯片。
[0060]對第三拼合芯片進(jìn)行包括時(shí)序分析在內(nèi)的“簽核分析”,其中,時(shí)序分析具體為:根據(jù)該第三拼合芯片,提取晶體管模型,可以對所有數(shù)據(jù)路徑和時(shí)鐘路徑均提取晶體管模型,也可以僅對時(shí)序關(guān)鍵點(diǎn)(例如關(guān)鍵路徑和時(shí)鐘網(wǎng)絡(luò))提取晶體管I旲型,對非時(shí)序關(guān)鍵點(diǎn)提取其他時(shí)序模型來進(jìn)行時(shí)序分析。其中,僅對時(shí)序關(guān)鍵點(diǎn)提取晶體管模型的具體過程參見圖5所示實(shí)施例中的相關(guān)描述。
[0061]提取出晶體管模型后,提取該模型對應(yīng)的數(shù)據(jù)路徑和/或時(shí)鐘路徑的輸入信號的上升沿和下降沿的時(shí)間延遲,并采用上升沿和下降沿具有時(shí)間延遲的輸入信號對不同晶體管尺寸下的晶體管模型進(jìn)行多次仿真,得到不同晶體管尺寸下晶體管模型的路徑延遲的平均值和方差,平均值表示該第三拼合芯片的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的時(shí)序,方差表示該第三拼合芯片的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的時(shí)序的波動范圍。
[0062]在此階段采用晶體管模型的原因分析如下:
[0063]納米工藝下,片上波動對集成電路芯片的時(shí)序有很大影響,其他時(shí)序模型無法模擬片上波動對集成電路芯片時(shí)序的影響,因此與實(shí)際流片后的結(jié)果有一定差距。而根據(jù)晶體管尺寸的波動對晶體管模型進(jìn)行多次仿真,可以模擬片上波動對集成電路芯片時(shí)序的影響。
[0064]片上波動是指集成電路芯片上的工藝、溫度、電壓這三個(gè)參數(shù)的變化,片上波動使得芯片的性能與仿真得到的結(jié)果有所差別,是影響芯片性能和良率的重要因素。片上波動中的工藝變化是指在流片過程中,工藝變化帶來的芯片上晶體管和互聯(lián)線的參數(shù)(例如晶體管的閾值電壓、溝道長度、柵氧厚度、溝道摻雜度,以及互連線的電容、電阻、厚度、高度等)變化。芯片“簽核分析”時(shí),片上波動帶來的芯片性能的不確定性都用時(shí)間延遲的不確定性來表示。
[0065]S408,若第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定第三拼合芯片的時(shí)序?yàn)榇O(shè)計(jì)集成電路芯片的時(shí)序。
[0066]具體的,當(dāng)?shù)谌春闲酒木w管模型的時(shí)序滿足設(shè)定的第三時(shí)序條件時(shí),可以判斷當(dāng)前第三拼合芯片是滿足時(shí)序要求的,之后可以對該第三拼合芯片進(jìn)行流片驗(yàn)證。流片,即按照當(dāng)前第三拼合芯片的設(shè)計(jì),對集成電路芯片進(jìn)行試生產(chǎn),以驗(yàn)證當(dāng)前第三拼合芯片的設(shè)計(jì)是否滿足時(shí)序要求。
[0067]此處需要說明的是,三個(gè)時(shí)序條件(第一時(shí)序條件、第二時(shí)序條件和第三時(shí)序條件)是針對不同的設(shè)計(jì)階段給予的時(shí)序約束條件,因?yàn)椴煌A段得到的信息以及時(shí)序分析模型不一樣,所以采用不同的時(shí)序約束。設(shè)計(jì)的初期由于很多信息不確定,如時(shí)鐘樹綜合、單元布局和布線不確定,相應(yīng)的時(shí)序模型也會比較簡單一些,所以這三個(gè)時(shí)序條件一般會比最終流片時(shí)的時(shí)序約束條件要嚴(yán)格一些,而在這些信息逐步確定后,相應(yīng)的時(shí)序約束條件也會相應(yīng)的放寬,并接近最終的流片時(shí)序要求。這三個(gè)時(shí)序約束條件的設(shè)置與采用的工藝、設(shè)計(jì)方法、設(shè)計(jì)自身的特征緊密相關(guān),其中大部分可以量化處理,還有一部分需要靠設(shè)計(jì)者的經(jīng)驗(yàn)進(jìn)行設(shè)置。
[0068]本實(shí)施例提供的集成電路芯片的時(shí)序確定方法,通過在完成集成電路芯片設(shè)計(jì)的不同階段后,將子模塊拼合到頂層模塊,并提取不同的時(shí)序模型進(jìn)行時(shí)序分析,實(shí)現(xiàn)了時(shí)序分析的速度和精度的平衡
[0069]圖5為本發(fā)明提供的集成電路芯片的時(shí)序確定方法又一個(gè)實(shí)施例的流程示意圖。如圖5所示,該方法可以包括:
[0070]S501,確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及門單元在集成電路芯片上的位置,并確定門單元之間的邏輯連接關(guān)系,門單元包括邏輯單元和時(shí)序單元;
[0071]S502,將集成電路芯片的時(shí)鐘信號分布到子模塊和頂層模塊中的時(shí)序單元的時(shí)鐘端,分別生成子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0072]S503,根據(jù)子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對子模塊以及頂層模塊進(jìn)行拼合,得到第一拼合芯片;
[0073]S504,提取第一拼合芯片的輸入端口到第一拼合芯片中所包括的時(shí)序單元的第一路徑延遲;分別提取第一拼合芯片的輸入信號的上升沿和下降沿的第一時(shí)間延遲;提取第一拼合芯片中所包括的時(shí)序單元到第一拼合芯片的輸出端口的第二路徑延遲;提取第一拼合芯片中的輸出端口的負(fù)載的第二時(shí)間延遲;提取第一拼合芯片的輸入端口到輸出端口的第三路徑延遲;提取第一拼合芯片中與時(shí)序單元相關(guān)的時(shí)鐘網(wǎng)絡(luò)的第三時(shí)間延遲;根據(jù)第一路徑延遲,第一時(shí)間延遲,第二路徑延遲,第二時(shí)間延遲,第三路徑延遲和第三時(shí)間延遲,確定第一拼合芯片的邊界時(shí)序模型。
[0074]具體的,本步驟描述的是提取第一拼合芯片的包括簡化的時(shí)鐘網(wǎng)絡(luò)的邊界時(shí)序模型的具體過程。所謂簡化的時(shí)鐘網(wǎng)絡(luò),即將完整的時(shí)鐘網(wǎng)絡(luò)中與邊界時(shí)序不相關(guān)的時(shí)序單元以及時(shí)鐘單元?jiǎng)h除,只保留與邊界時(shí)序相關(guān)的時(shí)序單元以及時(shí)鐘單元。簡化時(shí)鐘網(wǎng)絡(luò)的具體過程如下:
[0075](1)將完整時(shí)鐘網(wǎng)絡(luò)中的時(shí)鐘單元(共N級)按照驅(qū)動級數(shù)依次標(biāo)注為1到N;
[0076](2)檢查所有的時(shí)序單元,如果該時(shí)序單元與邊界時(shí)序相關(guān),則將該時(shí)序單元標(biāo)注為“相關(guān)”,否則標(biāo)注為“非相關(guān)”;
[0077](3)按照從N級到1級的順序檢查時(shí)鐘網(wǎng)絡(luò)中的每級時(shí)鐘單元:
[0078]與標(biāo)注為“相關(guān)”的時(shí)序單元直接連接的時(shí)鐘單元也標(biāo)注為“相關(guān)”,與標(biāo)注為“非相關(guān)”的時(shí)序單元直接連接的時(shí)鐘單元也標(biāo)注為“非相關(guān)”;如果時(shí)鐘單元驅(qū)動的下一級時(shí)鐘單元全部標(biāo)注為“非相關(guān)”,則刪除該時(shí)鐘單元以及其驅(qū)動的下一級時(shí)鐘單元以及連接的時(shí)序單元;如果時(shí)鐘單元驅(qū)動的下一級時(shí)鐘單元中至少有一個(gè)標(biāo)注為“相關(guān)”,則保留該時(shí)鐘單元以及其驅(qū)動的下一級時(shí)鐘單元以及連接的時(shí)序單元。
[0079]通過提取該第一拼合芯片中已完成金屬布線的時(shí)鐘路徑的寄生參數(shù),以及尚未完成金屬布線的數(shù)據(jù)路徑的虛擬寄生參數(shù),提取出邊界時(shí)序模型,并將該邊界時(shí)序模型的時(shí)序作為當(dāng)前第一拼合芯片的時(shí)序。圖6為圖5所示實(shí)施例中的邊界時(shí)序模型的結(jié)構(gòu)示意圖。如圖6所示,該邊界時(shí)序模型包括:第一拼合芯片的輸入端口到第一拼合芯片中所包括的時(shí)序單元的第一路徑延遲61,第一拼合芯片的輸入信號的上升沿和下降沿的第一時(shí)間延62,第一拼合芯片中所包括的時(shí)序單元到第一拼合芯片的輸出端口的第二路徑延遲63,第一拼合芯片中的輸出端口的負(fù)載的第二時(shí)間延遲64,第一拼合芯片的輸入端口到輸出端口的第三路徑延遲65,第一拼合芯片中與時(shí)序單元相關(guān)的時(shí)鐘網(wǎng)絡(luò)的第三時(shí)間延遲66。
[0080]S505,判斷第一拼合芯片的邊界時(shí)序模型是否滿足設(shè)定的第一時(shí)序條件。
[0081]具體的,若第一拼合芯片的邊界時(shí)序模型的時(shí)序滿足設(shè)定的第一時(shí)序條件,則繼續(xù)執(zhí)行S506。若第一拼合芯片的邊界時(shí)序模型的時(shí)序不滿足設(shè)定的第一時(shí)序條件,則返回到上一個(gè)設(shè)計(jì)階段即S502重新設(shè)計(jì),在實(shí)際操作中,也可以返回到更前面的設(shè)計(jì)階段即S501重新設(shè)計(jì)。
[0082]S506,確定子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系;
[0083]S507,根據(jù)子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第二拼合芯片;
[0084]S508,提取每個(gè)子模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第一寄生電參數(shù);提取頂層模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第二寄生電參數(shù);提取子模塊中門單元與頂層模塊門單元之間的邏輯連接關(guān)系對應(yīng)的互連線的第三寄生參數(shù);根據(jù)第一寄生電參數(shù)、第二寄生電參數(shù)和第三寄生參數(shù)確定第二拼合芯片的電參數(shù)模型。
[0085]具體的,本步驟描述的是提取第二拼合芯片的電參數(shù)模型的具體過程。先分別提取每個(gè)子模塊以及頂層模塊的電參數(shù)模型,再將提取出的電參數(shù)模型拼合起來,得到第二拼合芯片完整地電參數(shù)模型。具體過程如下:通過提取子模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第一寄生電參數(shù)來確定子模塊的電參數(shù)模型,通過提取頂層模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第二寄生電參數(shù)來確定頂層模塊的電參數(shù)模型,通過提取子模塊中門單元與頂層模塊門單元之間的邏輯連接關(guān)系對應(yīng)的互連線的第三寄生參數(shù)將子模塊的電參數(shù)模型和頂層模塊的電參數(shù)模型拼合其起來得到第二拼合芯片完整地電參數(shù)模型。圖7為圖5所示實(shí)施例中的電參數(shù)模型的結(jié)構(gòu)示意圖。如圖7所示,該電參數(shù)模型包括:輸入input71、input72,輸出output75,互連線wire73, wire74,以及門單元 IV76、IV77、AND78。
[0086]該電參數(shù)模型提供的時(shí)序包括如下兩個(gè)部分:
[0087](1)網(wǎng)表表不的連接關(guān)系:
[0088]Module (input71, input72,output75);
[0089]Input input71 ;
[0090]Input input72 ;
[0091]Output output75 ;
[0092]Wire73 ;
[0093]Wire74 ;
[0094]IV76 (A (input71),Z (wire73));
[0095]IV77 (A (input72),Z (wire74));
[0096]AND78(A (wire73), B (wire74), Z (output75));
[0097]end module
[0098](2)所有互連線的寄生參數(shù)(電容電阻):
[0099]Cl=capacitance of input71 ;Rl=resistance of input71 ;
[0100]C2=capacitance of input72 ;R2=resistance of input72 ;
[0101]C3=capacitance of wire73 ;R3=resistance of wire73 ;
[0102]C4=capacitance of wire74 ;R4=resistance of wire74 ;
[0103]C5=capacitance of output75 ;R5=resistance of output75 ;
[0104]這里互連線的電容電阻是用最簡單的RC模型表示,實(shí)際提取的時(shí)候,可以根據(jù)需要的精度采用更加復(fù)雜的互連線的參數(shù)模型。
[0105]在將子模塊的電參數(shù)模型和頂層模塊的電參數(shù)模型拼合的過程中,未考慮相鄰模塊間的互連線的耦合電容對寄生參數(shù)的影響,因此可以采用如下兩種方法,降低相鄰模塊間的互連線的耦合電容對寄生參數(shù)的影響:
[0106](1)在每個(gè)子模塊以及頂層模塊的邊界添加地線屏蔽,使得該模塊中靠近邊界的互連線的對地電容遠(yuǎn)大于其與相鄰模塊的互連線的耦合電容,從而降低相鄰模塊間的互連線的耦合電容對寄生參數(shù)的影響;
[0107](2)互連線之間的耦合電容與互連線之間的距離成反比,通過限制每個(gè)子模塊以及頂層模塊中靠近邊界的互連線與邊界的距離大于設(shè)定值,從而降低相鄰模塊間的互連線的耦合電容對寄生參數(shù)的影響。
[0108]S509,判斷第二拼合芯片的電參數(shù)模型是否滿足設(shè)定的第二時(shí)序條件。
[0109]具體的,若第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則繼續(xù)執(zhí)行S510。若第二拼合芯片的電參數(shù)模型不滿足設(shè)定的第二時(shí)序條件,則返回到上一個(gè)設(shè)計(jì)階段即S506重新設(shè)計(jì),在實(shí)際操作中,也可以返回到更前面的設(shè)計(jì)階段即S501或S502重新設(shè)計(jì)。
[0110]S510,確定子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系;
[0111]S511,根據(jù)子模塊中門單元與頂層模塊門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第三拼合芯片;
[0112]S512,確定第三拼合芯片中的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)中包括的門單元對應(yīng)的晶體管;根據(jù)晶體管確定第三拼合芯片中的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的晶體管模型。
[0113]具體的,對第三拼合芯片進(jìn)行包括時(shí)序分析在內(nèi)的“簽核分析”,其中,時(shí)序分析具體為:根據(jù)該第二拼合芯片,對時(shí)序關(guān)鍵點(diǎn)(例如關(guān)鍵路徑和時(shí)鐘網(wǎng)絡(luò))提取晶體管|旲型,對非時(shí)序關(guān)鍵點(diǎn)提取其他時(shí)序1吳型來進(jìn)行時(shí)序分析。對關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)提取晶體管模型的過程具體為:確定關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)中包括的門單元對應(yīng)的晶體管,根據(jù)門單元之間的連接關(guān)系確定這些晶體管之間的連接關(guān)系,根據(jù)這些晶體管以及它們之間的連接關(guān)系確定晶體管模型。
[0114]對提取出的晶體管模型進(jìn)行時(shí)序分析:
[0115](1)根據(jù)該晶體管模型中包括的晶體管以及它們之間的連接關(guān)系,確定晶體管Spice網(wǎng)表;
[0116](2)根據(jù)電路模型或其他模型提取該晶體管模型對應(yīng)的數(shù)據(jù)路徑和/或時(shí)鐘路徑的輸入信號的上升沿和下降沿的時(shí)間延遲,并采用上升沿和下降沿具有所述時(shí)間延遲的輸入信號作為仿真的激勵(lì);
[0117](3)采用蒙特卡羅Monte Carlo方法對不同晶體管尺寸下的晶體管模型進(jìn)行多次仿真,得到不同晶體管尺寸下該晶體管模型的路徑延遲的平均值和方差,平均值表示該第三拼合芯片的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的時(shí)序,方差表示該第三拼合芯片的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的時(shí)序的波動范圍。
[0118]S513,判斷第三拼合芯片的晶體管模型是否滿足設(shè)定的第三時(shí)序條件。
[0119]具體的,若第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則繼續(xù)執(zhí)行S514。若第三拼合芯片的晶體管模型不滿足設(shè)定的第三時(shí)序條件,則返回到上一個(gè)設(shè)計(jì)階段即S510重新設(shè)計(jì),在實(shí)際操作中,也可以返回到更前面的設(shè)計(jì)階段即S501或S502或S506重新設(shè)計(jì)。
[0120]S514,確定第三拼合芯片的時(shí)序?yàn)榇O(shè)計(jì)集成電路芯片的時(shí)序。
[0121]本實(shí)施例提供的集成電路芯片的時(shí)序確定方法,通過在完成集成電路芯片設(shè)計(jì)的不同階段后,將子模塊拼合到頂層模塊,并提取不同的時(shí)序模型進(jìn)行時(shí)序分析,實(shí)現(xiàn)了時(shí)序分析的速度和精度的平衡。且當(dāng)時(shí)序模型的時(shí)序不滿足設(shè)定的時(shí)序條件時(shí),重新根據(jù)時(shí)序分析進(jìn)行前面階段的設(shè)計(jì),將可能出現(xiàn)的問題放在前面的階段解決,以減少最后簽核分析階段的壓力。
[0122]圖8為本發(fā)明提供的集成電路芯片的時(shí)序確定裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。如圖8所不,該裝置可以包括:第一確定模塊81,分布模塊82,第一提取模塊83,第二確定模塊84,第二提取模塊85,第三確定模塊86,第三提取模塊87,第四確定模塊88,其中:
[0123]第一確定模塊81,用于確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及門單元在集成電路芯片上的位置,并確定門單元之間的邏輯連接關(guān)系,門單元包括邏輯單元和時(shí)序單元;
[0124]分布模塊82,用于將集成電路芯片的時(shí)鐘信號分布到子模塊和頂層模塊中的時(shí)序單元的時(shí)鐘端,分別生成子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0125]第一提取模塊83,用于根據(jù)子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對子模塊以及頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取第一拼合芯片的邊界時(shí)序模型;
[0126]第二確定模塊84,用于若第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系;
[0127]第二提取模塊85,用于根據(jù)子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取第二拼合芯片的電參數(shù)模型;
[0128]第三確定模塊86,用于若第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系;
[0129]第三提取模塊87,用于根據(jù)子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系對子模塊以及頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取第三拼合芯片的晶體管模型;
[0130]第四確定模塊88,用于若第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定第三拼合芯片的時(shí)序?yàn)榇O(shè)計(jì)集成電路芯片的時(shí)序。
[0131]進(jìn)一步的,第一提取模塊83可以包括:
[0132]第一提取單元,用于提取第一拼合芯片的輸入端口到第一拼合芯片中所包括的時(shí)序單元的第一路徑延遲;
[0133]第二提取單元,用于分別提取第一拼合芯片的輸入信號的上升沿和下降沿的第一時(shí)間延遲;
[0134]第三提取單元,用于提取第一拼合芯片中所包括的時(shí)序單元到第一拼合芯片的輸出端口的第二路徑延遲;
[0135]第四提取單元,用于提取第一拼合芯片中的輸出端口的負(fù)載的第二時(shí)間延遲;
[0136]第五提取單元,用于提取第一拼合芯片的輸入端口到輸出端口的第三路徑延遲;
[0137]第六提取單元,用于提取第一拼合芯片中與時(shí)序單元相關(guān)的時(shí)鐘網(wǎng)絡(luò)的第三時(shí)間延遲;
[0138]第一確定單元,用于根據(jù)第一路徑延遲,第一時(shí)間延遲,第二路徑延遲,第二時(shí)間延遲,第三路徑延遲和第三時(shí)間延遲,確定第一拼合芯片的邊界時(shí)序模型。
[0139]進(jìn)一步的,第二提取模塊84可以包括:
[0140]第七提取單元,用于提取每個(gè)子模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第一寄生電參數(shù);
[0141]第八提取單元,用于提取頂層模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第二寄生電參數(shù);
[0142]第九提取單元,用于提取子模塊中門單元與頂層模塊門單元之間的邏輯連接關(guān)系對應(yīng)的互連線的第三寄生參數(shù);
[0143]第二確定單元,用于根據(jù)第一寄生電參數(shù)、第二寄生電參數(shù)和第三寄生參數(shù)確定第二拼合芯片的電參數(shù)模型。
[0144]進(jìn)一步的,第三提取模塊87可以包括:
[0145]第三確定單元,用于確定第三拼合芯片中的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)中包括的門單元對應(yīng)的晶體管;
[0146]第四確定單元,用于根據(jù)晶體管確定第三拼合芯片中的關(guān)鍵路徑和/或時(shí)鐘網(wǎng)絡(luò)的晶體管模型。
[0147]進(jìn)一步的,該裝置還可以包括重新設(shè)計(jì)模塊89,重新設(shè)計(jì)模塊89可以包括:
[0148]第一設(shè)計(jì)單元,用于若邊界時(shí)序模型不滿足第一時(shí)序條件,則重新將集成電路芯片的時(shí)鐘信號分布到子模塊和頂層模塊中的時(shí)序單元的時(shí)鐘端,分別生成子模塊和頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);
[0149]第二設(shè)計(jì)單元,用于若電參數(shù)模型不滿足第二時(shí)序條件,則重新確定子模塊中包括的門單元之間的電連接關(guān)系以及頂層模塊中包括的門單元之間的電連接關(guān)系;
[0150]第三設(shè)計(jì)單元,用于若晶體管模型不滿足第三時(shí)序條件,則重新確定子模塊中的門單元與頂層模塊中的門單元之間的電連接關(guān)系。
[0151]本實(shí)施例提供的集成電路芯片的時(shí)序確定裝置,通過在完成集成電路芯片設(shè)計(jì)的不同階段后,將子模塊拼合到頂層模塊,并提取不同的時(shí)序模型進(jìn)行時(shí)序分析,實(shí)現(xiàn)了時(shí)序分析的速度和精度的平衡。且當(dāng)時(shí)序模型的時(shí)序不滿足設(shè)定的時(shí)序條件時(shí),重新根據(jù)時(shí)序分析進(jìn)行前面階段的設(shè)計(jì),將可能出現(xiàn)的問題放在前面的階段解決,以減少最后簽核分析階段的壓力。
[0152]最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種集成電路芯片的時(shí)序確定方法,其特征在于,包括: 確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及所述門單元在所述集成電路芯片上的位置,并確定所述門單元之間的邏輯連接關(guān)系,所述門單元包括邏輯單元和時(shí)序單元; 將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò); 根據(jù)所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取所述第一拼合芯片的邊界時(shí)序模型; 若所述第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系;根據(jù)所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取所述第二拼合芯片的電參數(shù)模型; 若所述第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系; 根據(jù)所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取所述第三拼合芯片的晶體管模型; 若所述第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定所述第三拼合芯片的時(shí)序?yàn)樗龃O(shè)計(jì)集成電路芯片的時(shí)序。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述提取所述第一拼合芯片的邊界時(shí)序模型,包括: 提取所述第一拼合芯片的輸入端口到所述第一拼合芯片中所包括的所述時(shí)序單元的第一路徑延遲; 分別提取所述第一拼合芯片的輸入信號的上升沿和下降沿的第一時(shí)間延遲; 提取所述第一拼合芯片中所包括的所述時(shí)序單元到所述第一拼合芯片的輸出端口的第二路徑延遲; 提取所述第一拼合芯片中的輸出端口的負(fù)載的第二時(shí)間延遲; 提取所述第一拼合芯片的輸入端口到輸出端口的第三路徑延遲; 提取所述第一拼合芯片中與所述時(shí)序單元相關(guān)的所述時(shí)鐘網(wǎng)絡(luò)的第三時(shí)間延遲; 根據(jù)所述第一路徑延遲,所述第一時(shí)間延遲,所述第二路徑延遲,所述第二時(shí)間延遲,所述第三路徑延遲和所述第三時(shí)間延遲,確定所述第一拼合芯片的邊界時(shí)序模型。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述提取所述第二拼合芯片的電參數(shù)模型,包括: 提取每個(gè)所述子模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第一寄生電參數(shù); 提取所述頂層模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第二寄生電參數(shù); 提取所述子模塊中門單元與所述頂層模塊門單元之間的邏輯連接關(guān)系對應(yīng)的互連線的第三寄生參數(shù); 根據(jù)所述第一寄生電參數(shù)、所述第二寄生電參數(shù)和所述第三寄生參數(shù)確定所述第二拼合芯片的電參數(shù)模型。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述提取所述第三拼合芯片的晶體管模型,包括: 確定所述第三拼合芯片中的關(guān)鍵路徑和/或所述時(shí)鐘網(wǎng)絡(luò)中包括的門單元對應(yīng)的晶體管; 根據(jù)所述晶體管確定所述第三拼合芯片中的關(guān)鍵路徑和/或所述時(shí)鐘網(wǎng)絡(luò)的晶體管模型。
5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的方法,其特征在于,還包括: 若所述邊界時(shí)序模型不滿足所述第一時(shí)序條件,則重新將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò);或者, 若所述電參數(shù)模型不滿足所述第二時(shí)序條件,則重新確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系;或者, 若所述晶體管模型不滿足所述第三時(shí)序條件,則重新確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系。
6.一種集成電路芯片的時(shí)序確定裝置,其特征在于,包括: 第一確定模塊,用于確定待設(shè)計(jì)集成電路芯片所包括的頂層模塊和至少兩個(gè)子模塊中包括的門單元以及所述門單元在所述集成電路芯片上的位置,并確定所述門單元之間的邏輯連接關(guān)系,所述門單元包括邏輯單元和時(shí)序單元; 分布模塊,用于將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò); 第一提取模塊,用于根據(jù)所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò)對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第一拼合芯片,并提取所述第一拼合芯片的邊界時(shí)序模型; 第二確定模塊,用于若所述第一拼合芯片的邊界時(shí)序模型滿足設(shè)定的第一時(shí)序條件,則確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系; 第二提取模塊,用于根據(jù)所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第二拼合芯片,并提取所述第二拼合芯片的電參數(shù)模型; 第三確定模塊,用于若所述第二拼合芯片的電參數(shù)模型滿足設(shè)定的第二時(shí)序條件,則確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系; 第三提取模塊,用于根據(jù)所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系對所述子模塊以及所述頂層模塊進(jìn)行拼合,得到第三拼合芯片,并提取所述第三拼合芯片的晶體管模型; 第四確定模塊,用于若所述第三拼合芯片的晶體管模型滿足設(shè)定的第三時(shí)序條件,則確定所述第三拼合芯片的時(shí)序?yàn)樗龃O(shè)計(jì)集成電路芯片的時(shí)序。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第一提取模塊包括: 第一提取單元,用于提取所述第一拼合芯片的輸入端口到所述第一拼合芯片中所包括的所述時(shí)序單元的第一路徑延遲; 第二提取單元,用于分別提取所述第一拼合芯片的輸入信號的上升沿和下降沿的第一時(shí)間延遲; 第三提取單元,用于提取所述第一拼合芯片中所包括的所述時(shí)序單元到所述第一拼合芯片的輸出端口的第二路徑延遲; 第四提取單元,用于提取所述第一拼合芯片中的輸出端口的負(fù)載的第二時(shí)間延遲; 第五提取單元,用于提取所述第一拼合芯片的輸入端口到輸出端口的第三路徑延遲;第六提取單元,用于提取所述第一拼合芯片中與所述時(shí)序單元相關(guān)的所述時(shí)鐘網(wǎng)絡(luò)的第三時(shí)間延遲; 第一確定單元,用于根據(jù)所述第一路徑延遲,所述第一時(shí)間延遲,所述第二路徑延遲,所述第二時(shí)間延遲,所述第三路徑延遲和所述第三時(shí)間延遲,確定所述第一拼合芯片的邊界時(shí)序模型。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第二提取模塊包括: 第七提取單元,用于提取每個(gè)所述子模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第一寄生電參數(shù); 第八提取單元,用于提取所述頂層模塊中包括的門單元之間的電連接關(guān)系所對應(yīng)的互連線的第二寄生電參數(shù); 第九提取單元,用于提取所述子模塊中門單元與所述頂層模塊門單元之間的邏輯連接關(guān)系對應(yīng)的互連線的第三寄生參數(shù); 第二確定單元,用于根據(jù)所述第一寄生電參數(shù)、所述第二寄生電參數(shù)和所述第三寄生參數(shù)確定所述第二拼合芯片的電參數(shù)模型。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第三提取模塊包括: 第三確定單元,用于確定所述第三拼合芯片中的關(guān)鍵路徑和/或所述時(shí)鐘網(wǎng)絡(luò)中包括的門單元對應(yīng)的晶體管; 第四確定單元,用于根據(jù)所述晶體管確定所述第三拼合芯片中的關(guān)鍵路徑和/或所述時(shí)鐘網(wǎng)絡(luò)的晶體管模型。
10.根據(jù)權(quán)利要求6-9任一項(xiàng)所述的裝置,其特征在于,還包括:重新設(shè)計(jì)模塊,所述重新設(shè)計(jì)模塊包括: 第一設(shè)計(jì)單元,用于若所述邊界時(shí)序模型不滿足所述第一時(shí)序條件,則重新將所述集成電路芯片的時(shí)鐘信號分布到所述子模塊和所述頂層模塊中的所述時(shí)序單元的時(shí)鐘端,分別生成所述子模塊和所述頂層模塊對應(yīng)的時(shí)鐘網(wǎng)絡(luò); 第二設(shè)計(jì)單元,用于若所述電參數(shù)模型不滿足所述第二時(shí)序條件,則重新確定所述子模塊中包括的門單元之間的電連接關(guān)系以及所述頂層模塊中包括的門單元之間的電連接關(guān)系; 第三設(shè)計(jì)單元,用于若所述晶體管模型不滿足所述第三時(shí)序條件,則重新確定所述子模塊中的門單元與所述頂層模塊中的門單元之間的電連接關(guān)系。
【文檔編號】G06F17/50GK104376138SQ201310356719
【公開日】2015年2月25日 申請日期:2013年8月15日 優(yōu)先權(quán)日:2013年8月15日
【發(fā)明者】王茹, 肖斌, 范寶峽 申請人:龍芯中科技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
石首市| 文昌市| 台北县| 紫云| 甘德县| 永新县| 施秉县| 伊吾县| 越西县| 北碚区| 东兰县| 云和县| 大连市| 邓州市| 四平市| 万宁市| 龙游县| 裕民县| 临潭县| 新源县| 德格县| 宕昌县| 景德镇市| 玉山县| 宜良县| 英德市| 济阳县| 西充县| 宕昌县| 新闻| 渝北区| 工布江达县| 界首市| 色达县| 康定县| 卢氏县| 杭州市| 宜兰市| 尤溪县| 葵青区| 滨州市|