對集成電路具有較高靈活性的時鐘網(wǎng)絡架構(gòu)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路裝置(“1C”)。更確切地說,本發(fā)明涉及用于IC時鐘網(wǎng)絡的架構(gòu)。
【背景技術(shù)】
[0002]例如現(xiàn)場可編程門陣列(“FGPA”)等可編程邏輯裝置(“PLD”)的時鐘網(wǎng)絡已使用地區(qū)性及全球時鐘。常規(guī)上,此類地區(qū)性時鐘僅從此類PLD的“邊緣”驅(qū)動,且此類全球時鐘僅從此類PLD的中心驅(qū)動。此類型的時鐘網(wǎng)絡架構(gòu)相當不靈活。然而,隨著PLD變大,時鐘偏斜及/或時鐘延遲以及增大的時序不確定性越加成為問題,且此類不靈活性使得解決這些問題中的一者或多者越加成為問題。因此,提供具有較大靈活性以減少這些問題中的一者或多者的IC合乎需要且有用。
【發(fā)明內(nèi)容】
[0003]一種設(shè)備包含集成電路,所述集成電路具有在電路塊陣列中的時鐘網(wǎng)絡。所述時鐘網(wǎng)絡包含布線軌跡、分布主干及時鐘葉。所述布線軌跡及所述分布主干是雙向的。
[0004]在此類設(shè)備中,以下各者中的一或多者可為真。所述布線軌跡及所述分布主干可在所述電路塊的邊界處分段。所述布線軌跡可包含水平及垂直布線軌跡。所述分布主干可包含水平及垂直分布主干。所述垂直分布主干可包含分別耦合到所述水平分布主干的可選擇延遲。一組所述葉可耦合到所述電路塊中的一電路塊內(nèi)的所述分布主干中的一水平分布主干,用于將時鐘信號從所述水平分布主干提供到所述組所述葉;且互連單元片(interconnect tile)可經(jīng)配置用于進行局部門控,以用于將所述時鐘信號提供到所述組所述葉而不經(jīng)過所述水平分布主干。所述分布主干的相交點可提供一池時鐘根(clockroot)。所述電路塊可為可編程資源構(gòu)造子區(qū),且所述電路塊可經(jīng)配置以耦合到輸入/輸出塊及多千兆位收發(fā)器塊。所述分布主干的所述相交點可位于所述可編程資源構(gòu)造子區(qū)中。所述設(shè)備可包含與所述分布主干相關(guān)聯(lián)的延遲,其中所述延遲可選擇性地用于提供漸變延遲。所述設(shè)備可包含與所述時鐘葉相關(guān)聯(lián)的延遲,其中所述延遲可選擇性地用于擴展在所述電路塊中的鄰近者之間的偏斜不連續(xù)性。所述分布主干對于時鐘樹的在所述時鐘葉之前的一部分可為可分段且為雙向的。所述分布主干可經(jīng)耦合用于低偏斜時鐘網(wǎng)絡或低注入時鐘網(wǎng)絡。
[0005]還揭示一種包含如上文所描述的第一以及第二集成電路裸片的多裸片系統(tǒng)。所述第一集成電路裸片具有第一時鐘布線資源的第一網(wǎng)絡,所述第一時鐘布線資源中的第一布線軌跡將所述第一集成電路裸片的時鐘源耦合到所述第一時鐘布線資源中的第二布線軌跡。所述第二集成電路裸片具有第二時鐘布線資源的第二網(wǎng)絡。所述第二時鐘布線資源中的第三布線軌跡耦合到所述第二布線軌跡。電路設(shè)計的第一根經(jīng)由所述第一布線軌跡及所述第二布線軌跡耦合到所述時鐘源。所述電路設(shè)計的第二根經(jīng)由所述第一布線軌跡、所述第二布線軌跡及所述第三布線軌跡耦合到所述時鐘源。所述第一根位于所述第一集成電路裸片上,且所述第二根位于所述第二集成電路裸片上。
[0006]在此類多裸片系統(tǒng)中,以下各者中的一或多者可為真。所述第一根可位于所述第二布線軌跡與所述第一時鐘布線資源的第一分布主干中的一第一分布主干的相交點處。所述第二根可位于所述第三布線軌跡與所述第二時鐘布線資源的第二分布主干中的一第二分布主干的相交點處。在一些系統(tǒng)中,所述第一分布主干與所述第二分布主干都不經(jīng)親合,以用于所述第一集成電路裸片與所述第二集成電路裸片之間的裸片到裸片布線。
[0007]在另一設(shè)備中,集成電路裸片具有時鐘布線資源網(wǎng)絡及時鐘源。電路設(shè)計具有時鐘域的根。所述時鐘布線資源的布線軌跡耦合所述時鐘源與所述根。所述時鐘布線資源的第一分布主干耦合到所述布線軌跡。所述時鐘布線資源的第二分布主干耦合所述第一分布主干與所述時鐘源。所述第二分布提供用于時鐘信號的反饋路徑。
[0008]在又一設(shè)備中,第一集成電路裸片具有第一時鐘布線資源的第一網(wǎng)絡。所述第一時鐘布線資源的第一布線軌跡將所述第一集成電路裸片的時鐘源耦合到所述第一時鐘布線資源的第二布線軌跡。第二集成電路裸片具有第二時鐘布線資源的第二網(wǎng)絡。所述第二時鐘布線資源的第三布線軌跡耦合到所述第二布線軌跡。第一根經(jīng)由所述第一布線軌跡及所述第二布線軌跡耦合到所述時鐘源。第二根經(jīng)由所述第一布線軌跡、所述第二布線軌跡及所述第三布線軌跡耦合到所述時鐘源。所述第一根位于所述第一集成電路裸片上。所述第二根位于所述第二集成電路裸片上。
【附圖說明】
[0009]附圖展示示范性塊及電路圖。然而,附圖不應限制所展示的實例,而是僅用于解釋及理解。
[0010]圖1為描繪示例性柱狀現(xiàn)場可編程門陣列架構(gòu)的簡化框圖。
[0011]圖2是描繪示范性集成電路的框圖。
[0012]圖3為圖2的框圖,其中描繪體現(xiàn)于構(gòu)造子區(qū)(FSR)的子組中的示范性電路。
[0013]圖4為圖3的框圖,其中描繪從時鐘源到根的示范性路線。
[0014]圖5為圖4的框圖,其中描繪用于電路云的示范性垂直及水平分布主干。
[0015]圖6為圖5框的框圖,其中描繪時鐘網(wǎng)絡的示范性時鐘葉。
[0016]圖7為描繪用于圖2的集成電路的示范性時鐘布線階層的框圖。
[0017]圖8-1及8-2為描繪FSR陣列的相應示范性部分的塊/電路圖。
[0018]圖9到20為根據(jù)圖1到8-2對多裸片系統(tǒng)的以上描述而描繪相應示范性時鐘網(wǎng)絡的框圖。
[0019]圖21-1及21-2(在本文中一起稱為“圖21”)為描繪用于FSR的示范性時鐘網(wǎng)絡的電路/框圖。
[0020]圖22為描繪時鐘網(wǎng)絡的示范性“葉”的電路/框圖。
[0021]圖23為描繪FSR的示范性部分的框圖。
[0022]圖24為描繪互連單元片的示范性部分的電路圖。
【具體實施方式】
[0023]在以下描述中,闡述眾多特定細節(jié)以提供對特定實例的更徹底描述。然而,所屬領(lǐng)域的技術(shù)人員應顯而易見,可在沒有以下給出的所有特定細節(jié)的情況下實踐一或多個實例。在其它情況下,未詳細描述眾所周知的特征,以免混淆一或多個實例。為了便于說明,在不同的圖中使用相同的數(shù)字標記以指代相同的項目;然而,所述項目在替代實施例中可為不同的。
[0024]在描述若干圖中的說明性地描繪的實例之前,提供總體介紹以有助于進一步的理解。
[0025]如先前所描述,先前時鐘網(wǎng)絡架構(gòu)使用地區(qū)性及全球時鐘的專用網(wǎng)絡。地區(qū)性時鐘受限于從PLD可編程資源陣列的外部邊緣進行驅(qū)動,且全球時鐘受限于從此類陣列的中心進行驅(qū)動。
[0026]在記得以上一般理解的情況下,下文描述不同示范性時鐘網(wǎng)絡架構(gòu)。如下文所描述,地區(qū)性及全球定時功能性已經(jīng)組合以允許用戶從一池時鐘資源中選擇,以使時鐘網(wǎng)絡適于體現(xiàn)在可編程資源中的電路設(shè)計。此允許體現(xiàn)在可編程資源中的電路設(shè)計更緊密地類似于應用特定電路。換句話說,舉例來說,根無需處于集成電路裸片的中心或此類集成電路裸片的電路資源布局的中心或特定針對于集成電路裸片的任何其它此類中心地點處,但可相對于體現(xiàn)在可編程資源中的電路設(shè)計進行定位。
[0027]更確切地說,用戶可相對于此類時鐘資源池選擇將時鐘分布網(wǎng)絡的根放置的地點。此允許將根放置在體現(xiàn)于集成電路中的電路設(shè)計內(nèi)的幾乎任何地方,且因此不受集成電路自身的根地點的束縛。一般來說,時鐘分布網(wǎng)絡的根可放置在時鐘網(wǎng)絡內(nèi)的任何地方,如下文更詳細地描述。為提供此類放置,提供分段且經(jīng)緩沖的時鐘軌跡。時鐘分布主干的任選延遲元件可用以至少大致上使時鐘偏斜(“偏斜”)調(diào)零或均衡。為減小鄰近時鐘片段之間的偏斜,任選延遲元件可用以減輕或避免保持時序(“保持”)問題。
[0028]因為所描述電路中的一者或多者是使用特定類型的IC來例示,因此下文提供此類IC的詳細描述。然而,應理解,具有可編程資源陣列的其它類型的IC可得益于本文所述的實例中的一或多者。
[0029]可編程邏輯裝置(“PLD”)為一種周知的集成電路,其可經(jīng)編程以執(zhí)行指定邏輯功能。一種類型PLD,現(xiàn)場可編程門陣列(“FPGA”),通常包含可編程單元片陣列。這些可編程單元片可包含例如輸入/輸出塊(“Ι0Β”)、可配置邏輯塊(“CLB”)、專用隨機存取存儲器塊(“BRAM”)、乘法器、數(shù)字信號處理塊(“DSP”)、處理器、時鐘管理器、延遲鎖定環(huán)路(“DLL”)等。如本文所使用,“包含”意指包含但不限于。
[0030]每一可編程單元片通常包含可編程互連件及可編程邏輯兩者??删幊袒ミB件通常包含由可編程互連點(“PIP”)互連的具有不同長度的大量互連線。可編程邏輯使用可編程元件實施用戶設(shè)計的邏輯,所述可編程元件可包含例如函數(shù)產(chǎn)生器、寄存器、算術(shù)邏輯,等。
[0031]可編程互連件及可編程邏輯通常通過將定義如何配置可編程元件的配置數(shù)據(jù)流加載到內(nèi)部配置存儲器單元中而編程。配置數(shù)據(jù)可通過外部裝置從存儲器(例如,從外部PR0M)讀取或?qū)懭氲紽PGA中。個別存儲器單元的集體狀態(tài)接著確定FPGA的功能。
[0032]另一種類型的PLD為復合可編程邏輯裝置或CPLD。CPLD包含通過互連切換矩陣連接在一起且連接到輸入/輸出(“I/O”)資源的兩個或兩個以上“功能塊”。CPLD的每一功能塊包含類似于用于可編程邏輯陣列(“PLA”)及可編程陣列邏輯(“PAL”)裝置中的兩層級及/或結(jié)構(gòu)。在CPLD中,配置數(shù)據(jù)通常以芯片上方式存儲于非易失性存儲器中。在一些CPLD中,配置數(shù)據(jù)以芯片上方式存儲于非易失性存儲器中,接著作為初始配置(編程)序列的部分下載到易失性存儲器。
[0033]對于所有這些可編程邏輯裝置(“PLD”),裝置的功能性由為所述目的而提供到裝置的數(shù)據(jù)位控制。所述數(shù)據(jù)位可存儲于易失性存儲器(例如,靜態(tài)存儲器單元,如在FPGA及一些CPLD中)、非易失性存儲器(例如,快閃存儲器,如在一些CPLD中)或任何其它類型的記憶體單元中。
[0034]其它PLD通過應用處理層(例如金屬層)來進行編程,所述處理層以可編程方式互連裝置上的不同元件。這些PLD被稱為掩??删幊萄b置。PLD還可以其它方式實施,例如使用熔斷或反熔技術(shù)。術(shù)語“PLD”及“可編程邏輯裝置”包括但不限于這些示范性裝置,以及包括僅部分地可編程的裝置。舉例來說,一種類型的PLD包含硬譯碼晶體管邏輯與以可編程方式互連硬譯碼晶體管邏輯的可編程開關(guān)構(gòu)造的組合。<