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

具有冗余電路的可編程集成電路的制作方法

文檔序號:6517626閱讀:220來源:國知局
具有冗余電路的可編程集成電路的制作方法
【專利摘要】提供了具有冗余電路的可編程集成電路,即具有可修復邏輯區(qū)域的集成電路。各連接區(qū)域可被組織為預定數(shù)量的邏輯電路行,其中一個行用作備用行??尚迯蛥^(qū)域可以在正常模式或者冗余模式下操作。在正常模式,備用行未激活。當邏輯區(qū)域行中的一個行包含缺陷電路時,該連接區(qū)域在冗余模式下操作使得該故障行下面的各行向下移位一行并且該備用行被引入以充當最后行來修復該區(qū)域。各行可以包括復用器和相關聯(lián)的驅(qū)動器,該驅(qū)動器驅(qū)動從一個行到下一個行的對應的垂直路由段。各垂直路由段具有通過配置對應的復用器來被其緊前一行中的邏輯等效垂直導線驅(qū)動的選項。
【專利說明】具有冗余電路的可編程集成電路
[0001]本申請要求2012年11月5日提交的美國專利申請N0.13/669, 244的優(yōu)先權,其全部內(nèi)容通過引用合并于此。
【技術領域】
[0002]本發(fā)明涉集成電路,更具體地涉及可編程集成電路。
【背景技術】
[0003]可編程集成電路包含可編程邏輯,其可以被編程以實現(xiàn)期望的定制邏輯設計,因此有時稱為可編程邏輯裝置(PLD)??删幊踢壿嬔b置集成電路也可以包含冗余電路。冗余電路可以用于修復包含缺陷的可編程邏輯裝置,因而提高產(chǎn)量。
[0004]可編程邏輯裝置通常被編組為邏輯區(qū)域??删幊踢壿嬔b置上的邏輯區(qū)域的每個包括多個邏輯行和一個備用的邏輯行。當邏輯區(qū)域中的一行被確定為有缺陷時(假定故障行不是該備用行),則邏輯區(qū)域中的備用行被引入使得來自備用行到緊接著故障行下面的行的每個行代替緊接著該行的行(即,故障行下面的每個行被緊接著該行之下的行替代)。例如在共同受讓的美國專利N0.6,965,249中和美國專利N0.7,180, 324中描述了這種類型的基于行的冗余方案,在此其整體通過引用并入。
[0005]現(xiàn)有的基于行的冗余方案經(jīng)常依靠使用垂直導線來將各邏輯區(qū)域中的不同行相互連接。每個垂直導線通常在多個行延展并且具有連接到第一目標行或第二目標行中的電路的遠端。如果給定的垂直導線不經(jīng)過損壞行,則給定的垂直導線將連接到第一目標行。如果給定的垂直導線經(jīng)過損壞行,則該損壞行下面的全部路由連接將向下移位一行,使得給定導線行連接到第二目標行。使用在多個行延展并且直接連接到兩個目標行中的路由電路的垂直導線實現(xiàn)的冗余方案要求不期望的導線量和面積開銷量。

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

[0006]提供可編程集成電路,其包括:多個可修復的邏輯區(qū)域。各可修復邏輯區(qū)域可以具有正常的邏輯電路行和備用邏輯電路行的組??尚迯蛥^(qū)域中的各邏輯電路行可以包括:旁路電路(例如,復用電路)和相關聯(lián)的驅(qū)動器,該驅(qū)動器用于驅(qū)動信號到對應的垂直路由段上。
[0007]各垂直路由段(有時稱為垂直信號路由路徑)可以具有耦合到邏輯電路行中相應一行的第一端子和耦合到邏輯電路行中的相鄰一行的第二端子。正常行和備用行的組中的各行中的邏輯電路的量可以大致相等。所述邏輯電路的備用行可以在給定高度內(nèi)來形成。各垂直路由段可以具有小于或者等于備用行的給定高度的長度。
[0008]各可修復邏輯區(qū)域可以在正常模式或者冗余模式下操作。如果可修復邏輯區(qū)域中的正常行沒有缺陷,則該可修復區(qū)域可以在正常模式下操作(即,通過將該備用行設置為空閑模式)。如果可修復邏輯區(qū)域中的超過一個正常行包含缺陷電路,則該邏輯區(qū)域可以被標記為不可修復并且集成電路可以被放棄。如果僅一個正常行包含缺陷電路,則可以通過在冗余模式下操作該邏輯區(qū)域來修復該邏輯區(qū)域。
[0009]在冗余模式下,旁路電路可以被配置為將備用行切換到使用。具體地,可以使用故障行中的旁路電路通過被故障行接收的另一個垂直路由段驅(qū)動從缺陷行輸出的垂直路由段。故障行中的旁路電路必須具有功能以適當?shù)芈酚尚盘柾ㄟ^缺陷行。如果通過故障行中的旁路電路和相關聯(lián)的驅(qū)動器也有缺陷,則可編程集成電路應被放棄??梢允褂没谌劢z的存儲元件來配置故障行中的旁路電路,該存儲元件被選擇性地熔斷熔斷使得旁路電路被永久地設置為將缺陷行旁路。
[0010]邏輯區(qū)域中的各正常行和備用行可以包括:復用器,該復用器具有耦合到對應的垂直路由段的至少第一輸入端和耦合到從非相鄰行路由的至少一個其它垂直路由路徑的第二輸入端(例如,其它垂直路由路徑可以具有比所述備用行的給定高度更大的長度并且因此可以延展超過一個行)。
[0011]在這種類型的可編程裝置的設計期間,可以使用存儲在非瞬時計算機可讀存儲介質(zhì)中的計算機輔助設計(CAD)工具來模擬可編程裝置的性能。具體地,可以期望對關鍵信號路由路徑進行時序分析。關鍵信號路由路徑可以發(fā)源于可編程裝置上的路徑區(qū)域中的一個邏輯區(qū)域中的給定邏輯行,其中關鍵路由路徑由多個垂直路由段形成。
[0012]在第一情形下,其中關鍵路由路徑是區(qū)域內(nèi)關鍵路由路徑(B卩,其中關鍵路由邏輯僅僅在所選擇的一個邏輯區(qū)域內(nèi)攜帶信號),可以使用CAD工具來識別將呈現(xiàn)最大(最大)數(shù)量的垂直導線路由段交叉的相鄰行對分開的關鍵行邊界。CAD工具可以接著通過確定關鍵路由路徑的長度計算針關鍵路由路徑的路由延遲(例如,通過計數(shù)關鍵路由路徑中夾著的垂直路由段和水平路由段的數(shù)量)。通過向路由延遲加上與關鍵路由路徑交叉關鍵行邊界的次數(shù)成比例的附加垂直路由延遲(例如,將最差情況情形考慮在內(nèi),其中緊接著關鍵行邊界的行是缺陷行),CAD工具可以接著計算針對關鍵路徑的最差情況路由延遲。
[0013]在另一個適當情形下,其中關鍵路由路徑是區(qū)域間關鍵路由路徑(即,其中關鍵路由路徑攜帶從一個邏輯區(qū)域向另一個邏輯區(qū)域攜帶信號),CAD工具可以用于分別計算包括該關鍵路由路徑的各個邏輯區(qū)域中的針對關鍵路由路徑的最差情況路由延遲。換句話說,可以使用CAD工具來識別關鍵路徑跨過的每個邏輯區(qū)域100中的關鍵行邊界處的垂直導線交叉的數(shù)量。
[0014]每次關鍵路徑跨過關鍵行邊界,可以引發(fā)垂直路由延遲的附加單位,以將跟隨該關鍵行邊界的行有缺陷的最差情況情形考慮在內(nèi)。因此可通過分別計算針對包括關鍵路徑的各區(qū)域的最差情況延遲,接著隨后將分別計算的延遲相加以獲得針對區(qū)域間關鍵路徑的總最差情況延遲,來確定最差情況時序延遲。按此方式使用CAD工具收集的信息可以用于確定針對關鍵路由路徑的最差情況路由延遲是否滿足性能準則。
[0015]從所附的附圖和以下詳細描述中,本發(fā)明的其它特征、實質(zhì)和各種優(yōu)點將變得更明顯。
【專利附圖】

【附圖說明】
[0016]圖1是根據(jù)本發(fā)明的實施例的示例性的可編程集成電路的圖。
[0017]圖2是根據(jù)本發(fā)明的實施例的具有多個可修復邏輯區(qū)域的示例性的可編程集成電路的圖。[0018]圖3是根據(jù)本發(fā)明的實施例的在正常模式下操作的可修復的邏輯區(qū)域的圖。
[0019]圖4是根據(jù)本發(fā)明的實施例的在冗余模式下操作的可修復的邏輯區(qū)域的圖。
[0020]圖5是例示根據(jù)本發(fā)明的實施例的用于制造、測試和封裝可編程集成電路的步驟的流程圖。
[0021]圖6是例示根據(jù)本發(fā)明的實施例的系統(tǒng)環(huán)境的圖,其中可以使用邏輯設計系統(tǒng)來配置可編程集成電路。
[0022]圖7是根據(jù)本發(fā)明的實施例的可編程集成電路中的用于產(chǎn)生實現(xiàn)定制電路設計的配置數(shù)據(jù)的邏輯涉及系統(tǒng)的圖。
[0023]圖8是例示可以在根據(jù)本發(fā)明的實施例的邏輯設計系統(tǒng)中使用的計算機輔助設計(CAD)工具的圖。
[0024]圖9是根據(jù)本發(fā)明實施例的設計定制邏輯電路并進行時序分析的例示步驟的流程圖。
[0025]圖10是示出根據(jù)本發(fā)明的實施例的示例性的區(qū)域內(nèi)關鍵路由路徑的圖。
[0026]圖11是例示根據(jù)本發(fā)明的實施例的圖10的關鍵路由路徑相關聯(lián)的最差情況情形的圖。
[0027]圖12是例示根據(jù)本發(fā)明的實施例的區(qū)域間關鍵路由路徑相關聯(lián)的最差情況情形的圖。
[0028]圖13是根據(jù)本發(fā)明實施例的進行時序分析涉及的例示步驟的流程圖。
【具體實施方式】
[0029]本發(fā)明的實施例涉及具有冗余電路的集成電路。集成電路可以是任何適當類型的集成電路,諸如微處理器、專用集成電路、數(shù)字信號處理器、存儲器電路或者其它集成電路。如果期望,集成電路可以是包含可編程電路的可編程集成電路。將總體上在集成電路的范疇內(nèi)描述本發(fā)明,諸如可編程邏輯裝置(PLD )集成電路作為示例。
[0030]圖1是示例性集成電路,諸如可編程集成電路10??删幊萄b置10可以包括用于經(jīng)由輸入-輸出針腳14將信號驅(qū)動離開器件10和用于從其它裝置接收信號的輸入-輸出電路12。諸如全局或者局部垂直和水平導線和總線這樣的互聯(lián)資源16可以用于在裝置10上路由信號?;ヂ?lián)資源16包括導線和各個導線之間的可編程連接,因此有時稱為可編程互聯(lián)器16。
[0031]可編程裝置10可以包括可以被配置為進行定制邏輯功能的可編程邏輯18??删幊踢壿?8可以包括組合和順序邏輯電路??删幊袒ヂ?lián)器16可以被認為是可編程邏輯18的一種類型。
[0032]裝置10還可以包含可編程存儲器元件20。使用針腳14和輸入-輸出電路12可以將存儲器元件20加載配置數(shù)據(jù)(也稱為編程數(shù)據(jù))。在加載后,存儲器元件可以均提供對應的靜態(tài)控制信號,該信號控制可編程邏輯18中的關聯(lián)的邏輯部件的操作。在典型情形下,加載后的存儲器元件20的輸出被施加到可編程邏輯18中的金屬氧化物半導體晶體管的柵極以將特定晶體管接通或者關斷,并因而配置可編程邏輯18中的邏輯并且路由路徑??梢园创朔绞娇刂频目删幊踢壿嬰娐吩ㄍㄟ^晶體管、復用器的部分(例如,用于形成可編程連接器16中的路由路徑的復用器)、查找表、邏輯陣列、各種邏輯門等。[0033]可以使用任何適當?shù)囊资院?或非易失性存儲器結(jié)構來實現(xiàn)存儲器元件20,諸如隨機存取存儲器(RAM)單元、熔絲、反熔絲、可編程只讀存儲器存儲器單元、掩模編程和激光編程結(jié)構、這些結(jié)構的組合等。因為存儲器元件20在編程期間加載了配置數(shù)據(jù),存儲器元件20有時稱為配置存儲器、配置RAM (CRAM)或者可編程存儲器元件。
[0034]可以使用任何適當架構來組織裝置10的電路。作為示例,可以按照更大的邏輯器件區(qū)域的行和列組織裝置10的邏輯,其中每一個區(qū)域包含多個較小的可編程邏輯器件區(qū)域。較小的邏輯器件區(qū)域例如可以是有時稱為邏輯器件元件(LE)的邏輯器件的區(qū)域,每一個元件包含查找表(LUT)、一個或者更多個寄存器和可編程的復用器電路。較小的區(qū)域還可以是例如有時稱為自適應邏輯器件模塊(ALM)的邏輯器件的區(qū)域。每一個自適應邏輯器件模塊可以包括加法器的對、關聯(lián)寄存器的對和次載波或者其它共享的組合邏輯器件的塊(作為示例)。更大的區(qū)域可以例如是包含多個邏輯元件或者多個ALM的邏輯陣列塊(LAB)。在圖1的示例中,示例性的邏輯區(qū)域22 (其例如可以是LE或者ALM)在圖1中的可編程邏輯18的更大的區(qū)域中的一個示出(其例如可以是邏輯陣列塊)。在典型的可編程邏輯裝置10中,可以存在數(shù)百或者數(shù)千個更小的邏輯區(qū)域22。圖1所示的邏輯區(qū)域22僅僅是示例性的。
[0035]在裝置編程期間,配置數(shù)據(jù)被加載到裝置10中,其配置可編程邏輯區(qū)域22和可編程邏輯區(qū)域18,使得它們的邏輯資源對它們的輸入執(zhí)行期望的邏輯功能并且產(chǎn)生期望的輸出信號。例如,CRAM單元加載適當?shù)呐渲脭?shù)據(jù)比特以在裝置10上配置加法器和其它電路以實現(xiàn)期望的定制邏輯設計。
[0036]裝置10的資源,諸如可編程邏輯18可以被可編程互聯(lián)器16相互連接?;ヂ?lián)器16通常包括垂直和水平導體。這些導體可以包括在基本上全部裝置10上延展的全局導電線、在裝置10的一部分延展的諸如二分之一線或者四分之一線的部分全局線、特定長度的交錯線(例如,足以將多個邏輯陣列塊或者其它這種邏輯區(qū)域相互連接)、更小的局部線、或者任何其它適當互聯(lián)資源排列。如果期望,則器件10的邏輯器件可以以更多的級別或者層排列,其中每一個更大區(qū)域相互連接以形成邏輯器件的再大部分。其它器件排列可以使用不按行和列排列的邏輯器件。
[0037]除了圖1所示的可編程邏輯的相對大的塊,裝置10通常還包括與裝置10上的可編程互聯(lián)器、存儲器和輸入-輸出電路相關聯(lián)的一些可編程邏輯。例如,輸入-輸出電路12可以包含可編程輸入和輸出緩沖器?;ヂ?lián)器16可以被編程為將信號路由到期望的目的地。
[0038]可編程集成電路10可以具有冗余電路。可以在制造期間修復具有冗余電路的集成電路。
[0039]使用復雜半導體制造技術制造集成電路。當產(chǎn)生集成電路時的一個質(zhì)量因數(shù)是電路的制造產(chǎn)量。極端復雜或者在尖端工藝制造的電路一般比現(xiàn)有的電路設計更難以沒有缺陷地生產(chǎn)。結(jié)果,新的和更復雜的電路的制造產(chǎn)量有時比老的設計的制造產(chǎn)量低。當時設計高性能芯片時,產(chǎn)品有時被負面影響,因為這種類型的裝置包含更小的線寬度和更復雜的結(jié)構,使得它們更難以制造。
[0040]較差的制造產(chǎn)量負面影響集成電路設計的利潤率。在一些情形下,產(chǎn)量如此之低以至于大規(guī)模生產(chǎn)不可行。因此,期望每當可能增強制造產(chǎn)量。這使得否則沒有利潤的集成電路制造方面更經(jīng)濟。增強的產(chǎn)量可以提高已經(jīng)贏利的集成電路的利潤率。[0041]盡管每當可能增強制造產(chǎn)量是有益的,但是不期望在犧牲性能或者管芯大小的情況下這樣做。由于較差的功耗和較差的開關速度,通過使用增加管芯大小或者較不強大的制造技術實現(xiàn)的產(chǎn)量的增加在市場上可能不能夠接受。然而,增加管芯大小增加成本,這會抵消來自提高的產(chǎn)量的益處。
[0042]一種方式提高制造產(chǎn)量并且維持可接受的性能涉及提供集成電路,諸如具有冗余電路的集成電路10。在裝置制造之后,新制造的集成電路可以被測試。如果檢測到缺陷,則集成電路10上的電路可以被配置為旁路缺陷。在這樣做時,備用電路可以被切換到使用代替被旁路的缺陷。
[0043]這種類型的冗余方案可以幫助提高制造產(chǎn)量。否則需要廢棄的集成電路10可被回收利用并且銷售給消費者。修復處理不需要對裝置性能負面影響,所以修好的裝置可以像沒有檢測到缺陷的裝置一樣操作。通常在給定的集成電路10上存在有限數(shù)量的缺陷,因此通常不必要設置大量的冗余電路。因為僅僅設置了相對小量的冗余電路,和設置冗余相關聯(lián)的增大管芯面積和性能犧牲通常被從實現(xiàn)增強的制造產(chǎn)量得到的經(jīng)濟效益超越。
[0044]圖2示出根據(jù)本發(fā)明的實施例的具有冗余電路的集成電路10。如圖2所示,集成電路10 (例如,可編程邏輯裝置集成電路)可以具有被組織為多個可修復區(qū)域100的可編程邏輯電路。各可修復區(qū)域100可以例如包括N行正常邏輯電路106(即,第一正常行106-1,第二正常行106-2,...,第N正常行106-N)和一個備用行106’。作為示例,各行106可以包括多個LAB,專用乘法器塊、嵌入的隨機存取存儲器和其它控制電路。在可修復區(qū)域100中的(N+1)個行中的每個行中設置的可編程邏輯的量和類型可以是相同的用于支持冗余方案。備用行106’可以一般向可修復區(qū)域100的邊緣形成。在圖2的示例中,備用行106’可以被定位在各可修復區(qū)域100的底部。
[0045]可修復區(qū)域100可以在正常模式和冗余模式操作。當區(qū)域100中的全部正常行106能夠正確起作用時(即,當行106-1,106-2,...,和106-N不包含缺陷電路時),區(qū)域100被設置在正常模式,而備用行106’被切換停用(即,在正常模式下,N個行106’可被配置為進行期望的邏輯功能并且備用行保留未激活)。
[0046]當區(qū)域100中的一個正常行106包含缺陷時(B卩,當行106-1,106-2,...,和106-N中的一個行包含缺陷電路時),通過將故障行切換停用并且引入備用行106’以對區(qū)域100進行行修復,區(qū)域100可以被設置為冗余模式。例如,考慮其中給定可修復區(qū)域100包含64個正常行106和一個備用行106’并且第11行包含制造缺陷(即,行106-11包含缺陷電路)的情形。在這個情形下,前十行106 (行106-1,106-2,和106-10)不改變,而給定區(qū)域100中的故障行下面的剩余行被向下移位一個使得故障行被旁路。換句話說,行106-12將用作損壞行106-11的替代,并且各隨后行將被緊接著該行的行代替并且備用行106’用于代替 106-64。
[0047]這個示例僅僅是例示。備用行106’可以用于對包括至少一個故障行的任何大小的區(qū)域100進行修復。如果期望,則各可修復區(qū)域100可以包括一個以上備用行106’以提供對包括一個以上損故障行的區(qū)域100進行修復的能力。具有帶有備用行的可修復區(qū)域100的裝置10被稱為實現(xiàn)行冗余。一般地,行冗余和列冗余配置可互換,因為當諸如電路10這樣的電路旋轉(zhuǎn)90度時行冗余方案變?yōu)榱腥哂喾桨?。行冗余方案有時在此作為示例來描述。[0048]沿著同一行排列的不同的可修復區(qū)域100可以經(jīng)由可編程的區(qū)域間互聯(lián)路徑102通信,而沿著同一列排列的不同的可修復區(qū)域100可以經(jīng)由可編程的區(qū)域間互聯(lián)路徑104通信。路徑102和104可以形成如結(jié)合圖1所描述的互聯(lián)資源16的一部分。一般地,裝置10可以包括沿著任何適當配置排列的任何數(shù)量的可修復區(qū)域100。
[0049]可修復區(qū)域100中的各行106可以包括可配置的路由電路100和可編程邏輯電路24 (例如參見圖2)??梢允褂脕碜灾辽僖粋€用戶可配置非易失性存儲器元件20 (例如,力口載了配置數(shù)據(jù)的CRAM單元)和/或來自至少一個非易失性存儲器元件21 (例如,熔絲、反熔絲、電可編程只讀存儲器元件等)的靜態(tài)控制位來控制可配置的路由電路100。路由電路110可以包括用于經(jīng)由路徑102沿著水平路由路徑114 (有時稱為“H”線)路由和驅(qū)動數(shù)據(jù)和控制信號并且用于從一個行到另一個行或者在單獨的區(qū)域100之間經(jīng)由路徑104沿著垂直路由路徑112 (有時稱為“V”線)路由和驅(qū)動數(shù)據(jù)和控制信號的開關電路和驅(qū)動器電路。
[0050]在路由電路110接收并且被路由電路110輸出的數(shù)據(jù)中的至少一些和控制信號可以被饋送到同一行內(nèi)的關聯(lián)的邏輯電路24。(N+1)個行的每個行中的邏輯電路24可以包括任何適當數(shù)量的可配置電路,諸如通道晶體管、邏輯門(例如,邏輯NAND門、邏輯NOR門、反相器等)、開關電路、復用電路、順序和組合邏輯電路、查找表(LUT)和排列為塊的存儲部件(例如,寄存器)有時稱為邏輯陣列塊(LAB)、邏輯元件(LE)、自適應邏輯模塊(ALM)或者其它適當邏輯區(qū)域部分。
[0051]圖3示出本發(fā)明的一個適當實施例,其中將信號從一個行路由到另一個行的垂直導線具有限制于單個備用行的高度的長度。如圖3所示,可修復區(qū)域100包括(N+1)個相同邏輯行(例如,Rl,R2, R3,...,RN和備用行)。各行可以包括垂直線(V-線)路由輸入復用器150、與復用器150關聯(lián)的驅(qū)動器152、另一個路由輸入復用器160、與復用器160關聯(lián)的驅(qū)動器162和其它路由電路。復用器150和160和關聯(lián)的驅(qū)動器可以被認為是路由電路100(圖2)的一部分。
[0052]具體地,復用器150可以具有經(jīng)由耦合到前一行中的驅(qū)動器152的輸出端的垂直路由路徑154接收信號的第一輸入端、可操作用于接收用戶信號的第二輸入端、從關聯(lián)的存儲器元件接收靜態(tài)控制位的控制輸入端和耦合到對應的驅(qū)動器152的輸出端。驅(qū)動器152可以用于驅(qū)動被路由到隨后行的另一個垂直路由路徑154,圖3的垂直路由路徑154可以等效于圖2中引入的V線,并且可以具有等于或者小于可修復區(qū)域100中的單個行的高度H的不中斷的物理長度。夾在相鄰行的對中的兩個相繼V線路由輸入復用器150之間的各垂直路由導線154 (有時稱為垂直路由“段”)具有比單個備用行(電路的備用行可以在行高度H內(nèi)形成)的行高度H更短的長度。換句話說,各路由段154具有耦合到區(qū)域100中的多個行的相應行中的電路的第一端并且具有耦合到該區(qū)域100中的多個行的相鄰行中的電路的相對第二端(例如,每個垂直路由段154將在相鄰行中形成的復用器150耦合到一起)。
[0053]復用器160可以具有還經(jīng)由耦合到前一行中的驅(qū)動器152的輸出端的垂直路由路徑154接收信號的輸入端、使用來自美國專利N0.6,965,249和美國專利N0.7,180,324(作為示例)中描述的其它冗余方案中的一種的更長的垂直路由導線而耦合到具有比路徑154的長度基本上更長的長度的垂直路由路徑164 (B卩,跨過單個行106以上的垂直路由路徑164)的附加輸入端、以及耦合到對應的驅(qū)動器162的輸出端。驅(qū)動器162可以用于將信號驅(qū)動到該行內(nèi)的邏輯電路24上、水平路由線114 (參見圖2)、其它垂直路由線、輸入-輸出總線線路或者其它適當可編程電路。
[0054]給定區(qū)域100內(nèi)的路由輸入復用器150和160不限于經(jīng)由該區(qū)域內(nèi)的垂直導線接收數(shù)據(jù)和控制信號。在圖3的示例中,第一行Rl中的復用器150可以將其第一輸入端耦合到從不作為裝置10上的區(qū)域100的一部分的其它電路路由的垂直導線154’。類似地,區(qū)域100的頂部行的一個行中的路由輸入復用器160可以具有耦合到從裝置10上的該區(qū)域100外部的其它部件路由的垂直導線164’的輸入端。
[0055]圖3例示當區(qū)域100中的正常行Rl-RN都不包含制造缺陷時區(qū)域100在正常模式操作。在正常模式下,備用行不被使用并且可以可選地被斷電以節(jié)省電力。可以利用從用戶配置的存儲器元件20 (例如,加載了配置數(shù)據(jù)的存儲元件)提供的靜態(tài)控制位控制在剩余N個行中的各路由輸入復用器150,以將來自其第一輸入端的信號路由到其輸出端或者將來自其第二輸入端的信號路由到其輸出端。
[0056]如圖3的加粗路徑所示,行Rl中的復用器150可以被配置為將來自其第二輸入端的用戶信號路由到其輸出端,使得用戶信號被經(jīng)由關聯(lián)的驅(qū)動器152驅(qū)動在對應的垂直路由段154上。這些信號接著經(jīng)由段154被饋送到隨后的行R2以便進一步處理??傮w上,在正常模式下在垂直導線路由輸入復用器150的輸出端提供的信號可以被隨后行中的復用器160接收以便進一步路由(假定隨后行不是備用行),并且隨后行中的復用器150可潛在地被用戶配置以將來自第二輸入端的用戶信號路由到其輸出端。
[0057]圖4示出當區(qū)域100的行Rl-RN中的一個行包含缺陷電路時在冗余模式下操作的可修復區(qū)域100。在冗余模式期間,損壞行被旁路并且備用行被切換到使用。如圖4的示例中所示,行R2被確定為損壞行。結(jié)果,諸如熔絲21這樣的關聯(lián)的非易失性元件可以是選擇性地熔斷使得R2中的垂直行路由輸入復用器150被永久設置為將來自其輸入端的信號路由到其輸出端。R2中的關聯(lián)的驅(qū)動器152可以接著將這個輸出信號驅(qū)動到對應的垂直路由段154,垂直路由段154被路由到行R3。換句話說,當垂直路由導線154到達損故障行時,該進入的垂直路由導線被短接到損壞行中的等效垂直路由導線并且路由出到緊接著損壞行下方的起作用的行。故障行(即,行R2)中的復用器160、邏輯電路24和其它輸入路由電路可以被切換停用或者可選地未激活以降低功率消耗。在這個示例中,復用器150、驅(qū)動器152和關聯(lián)的垂直路由導線必須沒有制造缺陷以使得這個旁路方案成功操作(例如,故障行中的復用器150、驅(qū)動器152和關聯(lián)的垂直路由線必須仍能夠正確傳播信號以便裝置10被認為可修復)。
[0058]如箭頭190所指示的,故障行下面的各連續(xù)行可以被向下移位一個,使得各向外垂直導線154被立即在前的行中的邏輯等效垂直導線154替代(例如,使得行R3,R4,...,RN和備用行用于替代R2-RN,如果行R2不是有缺陷的則R2-RN將被使用)。行的移位可以對裝置10的用戶不可見,因為用戶僅僅關心在區(qū)域100中存在N個起作用的邏輯行。按照此方式在缺陷行中配置復用器150可因此用于有效地旁路有缺陷的行,通過將損故障行下面的各行移位一行使得每個移位后的行用于替代立即在移位行上面的行。復用器150因此有時被稱為旁路電路。
[0059]圖4的示例僅僅是示例性的,其中垂直導線154 “向下游”攜帶信號(即,從Rl到R2,從R2到R3以此類推)。在其它適當排列中,區(qū)域100可以包括附加復用器150和用于“向上游”驅(qū)動信號(即,從備用行到RN,從RN到RN-1以此類推)的關聯(lián)的驅(qū)動器152。在下游垂直路由路徑中,每個垂直導線應具有被其緊接著上面行中的邏輯等效導線驅(qū)動的選項,而在上游垂直路由路徑中,每個垂直導線應具有被立即下面的其邏輯等效垂直導線驅(qū)動的選項。圖4的示例例示僅僅下游垂直路由電路的一個集合。一般地,裝置上的各區(qū)域100可以包括下游垂直路由電路的一個以上的集合和上游路由電路的一個以上的集合。
[0060]圖5是在識別具有缺陷電路的管芯并且確定是否修復故障管芯中涉及的示例性步驟的流程圖。在步驟200,可編程集成電路10可以在制造時在半導體加工設施作為集成電路管芯的一部分。在步驟202,管芯10可以被針對缺陷進行測試以確定每個可修復區(qū)域100中的損故障行的數(shù)量。
[0061]在管芯10上的至少一個可修復區(qū)域100包含一個以上的損故障行的情形下,該管芯10被標記為不可修復并被放棄。在管芯10上的各可修復區(qū)域100包含一個以上破損行的情形下,該管芯10是不可修復的并且處理可以進行到步驟208。
[0062]在步驟208,管芯10可以被測試以確定可修復區(qū)域100的每個區(qū)域中的損故障行中的復用器150、驅(qū)動器152和關聯(lián)的垂直路由線(有時總稱為旁路路由電路)仍正常起作用。如果損故障行中的旁路路由電路有缺陷(即,如果旁路路由電路能夠從前一行向后一行傳播信號),則該管芯10被標記為不可修復并且應被放棄。如果損故障行中的旁路路由電路沒有缺陷,則該管芯10是可修復的并且處理可進行到步驟212。
[0063]在步驟212,適當熔絲元件21可以被熔斷使得損壞行中的復用器150被永久設置為旁路模式(例如,使得損壞行中的垂直路由段154被緊接著該損壞行前一行中的其邏輯等效垂直導線驅(qū)動)。
[0064]在步驟214,裝置10可以被劃片并且封裝為單獨的集成電路部件接著運輸?shù)娇蛻???蛻艨梢越又ㄟ^向裝置10加載將裝置10配置以執(zhí)行期望邏輯功能的用戶配置數(shù)據(jù)來配置裝置10。從客戶的角度,裝置10上的各邏輯區(qū)域100包括N個起作用的行(例如,客戶不關心哪個行損壞并且被旁路,如果存在,只要存在N個可用行的可編程邏輯資源在進行期望應用中使用)。
[0065]圖6示出了用于設計和配置可編程集成電路10的示例性系統(tǒng)環(huán)境。裝置10可以被安裝在系統(tǒng)380中的板360中。裝置10可以從編程設備或者從任何其它適當設備或者裝置接收配置數(shù)據(jù)。
[0066]在圖6的示例中,裝置10是從關聯(lián)的集成電路400接收配置數(shù)據(jù)的可編程集成電路的一種類型。利用這種類型的排列,如果期望,則電路400可以與裝置10安裝在同一板35上。電路400可以是將配置數(shù)據(jù)從外部電可擦除可編程只讀存儲器(EEPROM)芯片加載到可編程邏輯裝置存儲器中的可編程邏輯裝置配置數(shù)據(jù)加載芯片、具有內(nèi)置存儲器的可編程邏輯裝置配置數(shù)據(jù)加載芯片(有時稱為配置裝置)或者任何其它適當裝置。當系統(tǒng)380開機時(或者在其它適當時間),配置數(shù)據(jù)可以被從裝置400提供到裝置10,如路徑420示意地示出。提供到裝置10的配置數(shù)據(jù)可以存儲在其可編程元件20中(例如,配置隨機存取存儲器元件)。
[0067]系統(tǒng)380可以包括處理電路440、存儲裝置460和與裝置10通信的其它系統(tǒng)部件480。系統(tǒng)380的部件可以位于一個或者更多個板上,諸如板360,或者其它適當?shù)陌惭b結(jié)構或者殼體上。[0068]通信路徑可以用于將裝置10相互路徑到其它部件。例如,通信路徑370可以用于在安裝在板360上的集成電路390和裝置10之間傳送數(shù)據(jù)。通信路徑350和500可以用于在裝置10和部件440、460和480之間傳送信號。
[0069]在諸如路徑520這樣的路徑上,配置裝置400可以被提供用于裝置10的配置數(shù)據(jù)。配置裝置400可以例如從配置數(shù)據(jù)加載設備540或者存儲了配置裝置400中的配置數(shù)據(jù)的其它適當設備接收配置數(shù)據(jù)。在安裝在板360上之前或者之后,裝置400可以加載數(shù)據(jù)。
[0070]在可編程邏輯裝置中設計和實現(xiàn)期望的邏輯電路可以是顯著的負擔,邏輯設計者因此一般使用基于計算機輔助設計(CAD)工具的邏輯設計系統(tǒng)來幫助他們設計電路。邏輯設計系統(tǒng)(有時稱為電路設計系統(tǒng))可幫助邏輯設計者設計和測試用于系統(tǒng)的復雜系統(tǒng)。當設計完成時,邏輯設計系統(tǒng)可以被用于產(chǎn)生用于對適當可編程邏輯裝置電編程的配置數(shù)據(jù)。邏輯設計系統(tǒng)可以在計算機設備上實現(xiàn)。
[0071]如圖6所示,邏輯設計系統(tǒng)560產(chǎn)生的配置數(shù)據(jù)可以通過諸如路徑580這樣的路徑被提供到設備540。設備540向裝置400提供配置數(shù)據(jù)使得設備400可之后將這個配置數(shù)據(jù)通過路徑420提供到裝置10。系統(tǒng)560可以基于一個或者更多個計算機和一個或者更多個軟件程序。一般地,軟件和數(shù)據(jù)可以存儲在系統(tǒng)560中的任何計算機可讀介質(zhì)(存儲)上并且被示意地示出為存儲600。
[0072]在通常情形下,邏輯設計系統(tǒng)560被邏輯設計者使用來創(chuàng)建定制電路設計。系統(tǒng)560產(chǎn)生被提供到配置裝置400的對應的配置數(shù)據(jù)。在加電時,裝置10上的配置裝置400和數(shù)據(jù)加載電路被使用來將配置數(shù)據(jù)加載到裝置10的可編程存儲元件20中??梢越又谙到y(tǒng)380的正常操作中使用裝置10。
[0073]圖7示出了根據(jù)本發(fā)明的示例性邏輯設計系統(tǒng)560。系統(tǒng)560可以基于一個或者更多個處理器,諸如個人計算機、工作站等。可以使用網(wǎng)絡(例如,本地網(wǎng)絡或者廣域網(wǎng)絡)將處理器鏈接。這些計算機中的存儲器或者諸如內(nèi)部和/或外部硬盤這樣的外部存儲器和存儲裝置可以用于存儲指令和數(shù)據(jù)。
[0074]諸如計算機輔助設計工具620和數(shù)據(jù)庫630這樣的基于軟件的部件駐留在系統(tǒng)560上。在操作期間,諸如計算機輔助設計工具620的軟件這樣的可執(zhí)行的軟件在系統(tǒng)560的處理器上運行。數(shù)據(jù)庫630用于存儲用于系統(tǒng)560的操作的數(shù)據(jù)。一般地,軟件和數(shù)據(jù)可以存儲在系統(tǒng)560中的任何計算機可讀介質(zhì)(存儲裝置)上。這種存儲在圖6中示意地示出為存儲裝置600,可以包括計算機存儲芯片、可拆卸介質(zhì)和固定介質(zhì),諸如音頻驅(qū)動器、閃存存儲器、質(zhì)密盤(CD )、DVD、其它光學介質(zhì)和軟盤、磁帶或者任何其它適當存儲器或者存儲裝置。當安裝了系統(tǒng)560的軟件時,系統(tǒng)560的存儲600具有造成系統(tǒng)560中的計算機設備執(zhí)行各種方法(處理)的指令和數(shù)據(jù)。當進行這些處理時,計算機設備被配置為實現(xiàn)邏輯設計系統(tǒng)的功能。
[0075]計算機輔助設計(CAD)工具620的一些或者全部有時總體上稱為CAD工具,可以由單個供應商或者多個供應商提供。工具620可以作為一個或者更多個軟件套裝來提供(例如,用于進行與實現(xiàn)可編程邏輯裝置中的電路設計有關的任務的編譯器套裝)和/或作為一個或者更多個單獨的軟件部件(工具)。數(shù)據(jù)庫630可以包括僅僅被特定工具存取的一個或者更多個數(shù)據(jù)庫,并且可以包括一個或者更多個共享數(shù)據(jù)庫。共享數(shù)據(jù)庫可以被多個工具存取。例如,第一工具可以將用于第二工具的數(shù)據(jù)存儲在共享數(shù)據(jù)庫中。第二工具可以存取共享數(shù)據(jù)庫來檢索由第一工具存儲的數(shù)據(jù)。這允許一個工具向另一個工具傳遞信息。如果期望,工具還可以彼此傳遞信息而不將信息存儲在共享數(shù)據(jù)庫中。
[0076]圖8中示出了可以在諸如圖6和圖7中使用的系統(tǒng)560這樣的邏輯設計系統(tǒng)中示例性計算機輔助設計工具620。
[0077]設計處理通常開始于邏輯電路功能規(guī)范的形成(例如,邏輯電路的功能描述)。使用設計和約束輸入工具664,邏輯設計者可以規(guī)定期望的電路應如何工作。設計和約束輸入工具664可以包括諸如設計和約束輸入輔助666和設計編輯器668這樣的工具。諸如輔助666這樣的設計和約束輸入輔助可以用于幫助邏輯設計者從已有的邏輯設計庫定位期望的設計并且可以向邏輯設計者提供計算機輔助助理用于輸入(規(guī)定)期望的設計。
[0078]作為示例,設計和約束輸入輔助666可以用于呈現(xiàn)用于用戶的選項的屏幕。用戶可以在屏幕上選項點擊以選擇是否設計的電路應具有特定功能。設計編輯器668可以用于輸入設計(例如,通過輸入硬件描述語言代碼行),可以用于編輯從庫獲得的設計(例如,使用設計和約束輸入輔助),或者可以在選擇和編輯適當預封裝的代碼/設計上輔助用戶。
[0079]設計和約束輸入工具664可以用于允許邏輯設計者使用任何適當格式提供期望的邏輯設計。例如,設計和約束輸入工具664可以包括允許邏輯設計者使用真值表輸入邏輯設計的工具??梢允褂梦谋疚募蛘邥r序圖來規(guī)定真值表并且可以從庫導入。真值表邏輯設計和約束輸入可以用于大電路的一部分或者用于整個電路。
[0080]作為另一個示例,設計和約束輸入工具664可以包括電路示意圖捕捉工具。電路示意圖捕捉步驟工具可以允許邏輯設計者從諸如邏輯門和邏輯門的組這樣的組成部分可視地構建邏輯電路。預存在的邏輯電路的庫可以用于允許設計的期望部分通過示意性捕捉工具來導入。
[0081]如果期望,則設計和約束輸入工具664可以允許邏輯設計者使用諸如Verilog硬件描述語言(HDL)或者超高速集成電路硬件描述語言(VHDL)這樣的硬件描述語言以向邏輯設計系統(tǒng)560提供邏輯設計。邏輯電路的設計者可以通過利用編輯器668寫硬件描述語言代碼來輸入邏輯設計。如果期望,則可以從用戶維持的或者商用庫導入代碼的塊。
[0082]在使用設計和約束輸入工具664輸入了設計之后,可以使用行為模擬工具672來模擬設計的功能性能。如果設計的功能性能不完整或者不正確,則邏輯設計者可以使用設計和約束輸入工具664對設計進行改變。在使用工具674進行合成操作之前,可以使用行為模擬工具672來驗證新設計的功能操作。諸如工具672這樣的模擬工具可以在設計流程中的其它階段(例如,在邏輯合成之后)使用。行為模擬工具672的輸出可以以任何適當格式(例如真值表、時序圖等)提供到邏輯設計者。
[0083]在邏輯設計的功能操作確定為滿意時,可以使用邏輯合成和優(yōu)化工具674來在特定可編程邏輯裝置中(即,在特定可編程邏輯裝置產(chǎn)品或者產(chǎn)品族中的邏輯和互聯(lián)資源中)實現(xiàn)邏輯設計。
[0084]工具674嘗試通過進行適當硬件選擇對設計進行優(yōu)化以基于邏輯設計者使用工具664輸入的邏輯設計數(shù)據(jù)和約束數(shù)據(jù)而在邏輯設計中實現(xiàn)不同的邏輯功能。
[0085]在使用工具674進行邏輯合成和優(yōu)化之后,邏輯設計系統(tǒng)可以使用諸如部署和路由工具676這樣的工具來進行物理設計步驟(布局合成操作)。放置和路由工具676被使用以確定如何將電路針對可編程邏輯裝置內(nèi)的每個邏輯功能。例如,如果兩個計數(shù)器彼此互動,則放置和路由工具676可以定位這些計數(shù)器在相鄰的邏輯區(qū)域中,以減少相連延遲或者滿足規(guī)定最大許可互聯(lián)延遲的時序要求。放置和路由工具676創(chuàng)建用于可編程邏輯裝置的邏輯設計的有序和有效的實現(xiàn)。
[0086]諸如工具674和676這樣的工具可以是編譯器套裝的一部分(例如,可編程邏輯裝置提供商提供的編譯器工具的套裝的一部分)。根據(jù)本發(fā)明,諸如工具674、676和678這樣的工具自動在實現(xiàn)期望電路設計時將互聯(lián)器之間的串擾的效應考慮在內(nèi)。工具674、676和678還可以包括時序分析工具。這允許工具674和676當產(chǎn)生用于諸如可編程集成電路10這樣的編程集成電路的配置數(shù)據(jù)時滿足性能要求(例如,時序要求)。
[0087]在使用放置和路由工具676生成了在可編程邏輯裝置中的期望邏輯設計的實現(xiàn)之后,可以使用分析工具678來分析和測試設計的實現(xiàn)。使用工具620完成了令人滿意的優(yōu)化操作之后,工具620可產(chǎn)生用于可編程邏輯裝置的配置數(shù)據(jù)。
[0088]圖9示出了使用圖8的工具620涉及的示例性操作以產(chǎn)生配置數(shù)據(jù)文件。如圖9所示,初始網(wǎng)絡列表80在步驟82合成以產(chǎn)生后合成網(wǎng)絡列表84。在步驟86,使用放置和路由和優(yōu)化操作來處理用戶輸入88和后合成網(wǎng)絡列表84。在步驟86的操作期間,CAD工具620將使用不同正電源電壓和/或體偏置電壓的效果考慮在內(nèi),并且通過電源和體偏置電平的適當選擇,電路資源分配和放置決策,工具62降低功率消耗并且滿足設計約束。
[0089]通過使用邏輯設計系統(tǒng)560進行時序分析,得到的網(wǎng)絡列表90可以被進一步處理(步驟91)。可以使用時序分析來在配置可編程集成電路10之前確保最終網(wǎng)絡列表90滿足時序約束。如果期望,則處理可以可選地循環(huán)回到步驟86經(jīng)由路徑93以使用最終網(wǎng)絡列表進行附加優(yōu)化。例如,邏輯設計系統(tǒng)可以識別在時序約束失敗的最終網(wǎng)絡列表中的路由路徑,并且通過經(jīng)由可選路徑93返回到步驟86確定再次放置路由路徑。
[0090]在步驟92,在匯編處理期間,最終網(wǎng)絡列表可以被進一步處理,以產(chǎn)生配置數(shù)據(jù)文件輸出(例如,.Pdf或者.sof文件)。配置數(shù)據(jù)文件輸出可以接著被加載到可編程裝置10中。
[0091]總體上,可以期望使用工具620來識別裝置10上的最關鍵路由路徑(例如,區(qū)域100中的具有最大傳播延遲的路由路徑)并且確定沿著該關鍵路徑傳播的信號滿足設計準貝U。圖10是示出示例性連續(xù)路由路徑的圖(例如,經(jīng)由夾在該路徑中的復用器150傳播從單個邏輯源發(fā)出的用戶信號的路由路徑)。如圖10所示,可修復區(qū)域100包括五個邏輯行R1-R5,每個邏輯行包括五個邏輯塊700。可以通過識別具有最大數(shù)量的與任何相鄰行通信的垂直路由段154的行來獲得區(qū)域100中的關鍵路徑(即,通過識別具有最大數(shù)量的垂直導線交叉的相鄰行的對)。
[0092]在圖10的示例中,關鍵路由路徑可以源于行R4并且經(jīng)由三個垂直線段154被路由到R1,經(jīng)由水平線段155通過行Rl中的兩個邏輯塊,經(jīng)由兩個附加垂直線段154返回下到行R3,并且返回上到行R2。該具體關鍵路由路徑呈現(xiàn)兩個U形彎,得到跨過行邊界702(即,邊界分離行R2和R3)的三個垂直路由段154 (即,夾在關鍵路由路徑中的垂直導線154)。呈現(xiàn)關鍵路由路徑上的最大數(shù)量的垂直導線交叉的行邊界702可以被稱為關鍵行邊界。
[0093]圖11示出最差情況情形,其中與關鍵行邊界702相鄰的行R3是缺陷行。在此情形下,通過使用先前結(jié)合圖4描述的旁路方案,故障行下面的各行必須向下移位一行。針對每次關鍵路徑跨過邊界702,按此方式旁路一行引入附加的復用器/驅(qū)動器和導線延遲。如圖11所示,當確定區(qū)域100是否滿足性能準則時,時序分析91將必須把三個附加復用器150、驅(qū)動器152和垂直路由段154相關聯(lián)的傳播延遲(有時總稱為垂直路由延遲的一個單位)考慮在內(nèi)。一般地,當進行保守時序分析時,關鍵地面中的各附加U形彎可潛在地導致多達一個的額外的垂直路由延遲。
[0094]對于包括一個以上的可修復區(qū)域100的裝置,信號有可能在相鄰的可修復區(qū)域100之間交叉。圖12示出最差情況情形,其中區(qū)域鍵關鍵路徑跨過與第一可修復區(qū)域100-1中的第一關鍵行邊界710相鄰的缺陷行并且跨過與第一區(qū)域100-1相接的第二可修復區(qū)域100-2中的第二關鍵行邊界712相鄰的另一個缺陷行。
[0095]換句話說,當針對區(qū)間之間關鍵路徑進行保守時序分析時,可以使用工具620來識別在第一區(qū)域100-1中的相鄰行中的第一對之間交叉的垂直導線的最大數(shù)量并且識別在第二區(qū)域100-2中的相鄰行的第二對之間交叉的垂直導線的最大數(shù)量(例如,以識別在關鍵路徑跨過的每個區(qū)域100中的關鍵行邊界處的垂直導線交叉的數(shù)量)。每次關鍵路徑跨過關鍵行邊界,可以引發(fā)垂直路由延遲的附加單位,以將跟隨該關鍵行邊界的行有缺陷的最差情況情形考慮在內(nèi)。因此可通過分別計算針對包括關鍵路徑的各區(qū)域的最差情況延遲,接著隨后將分別計算的延遲相加以獲得針對區(qū)域間關鍵路徑的總最差情況延遲,來確定最差情況時序延遲。這種計算針對區(qū)域間關鍵路徑的最差情況延遲的方案可以延伸到計算針對跨過三個或者更多個可修復區(qū)域、五個或者更多個可修復區(qū)域、10個或者更多個可修復區(qū)域等的關鍵路徑的最差情況延遲。
[0096]圖10-12的示例僅僅是示例性的并且不旨在限制本發(fā)明的范圍。一般地,各區(qū)域100可以被配置為包括跨過行邊界任何適當次數(shù)的關鍵路由路徑,而其它區(qū)域間關鍵路由路徑可以交叉區(qū)域邊界任何適當次數(shù)。
[0097]圖13是進行時序分析91中所涉及的示例性步驟的流程圖。在步驟800,工具620可以用于識別各區(qū)域100中的區(qū)域間關鍵路由路徑(S卩,如結(jié)合圖10和圖11描述的在單個可修復區(qū)域100內(nèi)進行信號路由的關鍵路由路徑),并且可以用于識別裝置10上的區(qū)域間關鍵路由路徑(即,如結(jié)合圖12描述的在相接的可修復區(qū)域100之間進行信號路由的關鍵路由路徑)。
[0098]在步驟802,工具620可以通過識別將具有最大數(shù)量的垂直導線交叉的相鄰行分開的關鍵行邊界來對識別的關鍵路徑進行最差情況時序分析。各關鍵行邊界交叉可以引發(fā)一個附加單位的垂直路由延遲(以將跟隨該關鍵行邊界的行有缺陷的情形考慮在內(nèi))。
[0099]在步驟804,工具620可以確定將附加路由延遲考慮在內(nèi)的情況下與各識別的關鍵路由路徑相關聯(lián)的信號傳播滿足性能準則。如果最差情況信號傳播延遲是可接受的,則時序分析完成。如果最差情況信號傳播延遲不滿足設計準則,則處理可以進行到步驟86以進行可潛在地幫助減少最差情況延遲的進一步設計優(yōu)化(參見圖9)。
[0100]附加實施例
[0101]附加實施例1、一種集成電路,包括:具有包括備用電路行的多個電路行的邏輯區(qū)域;多個路由段,各路由段具有耦合到電路行中相應一行的第一端和耦合到電路行中的相鄰一行的相對第二端;以及多個旁路電路,各旁路電路耦合在相應對的路由段之間,其中旁路電路可操作用于當多個電路行中的一個包含缺陷電路時將備用行切換到使用,并且其中各路由段可操作用于使用旁路電路中的相應一個被相關聯(lián)的路由段驅(qū)動。
[0102]附加實施例2,根據(jù)附加實施例1的集成電路,其中邏輯區(qū)域包括可編程邏輯區(qū)域。
[0103]附加實施例3,根據(jù)附加實施例1的集成電路,其中多個旁路電路包括多個復用器。
[0104]附加實施例4,根據(jù)附加實施例1的集成電路,其中,多個旁路電路包括多個復用器。以及其中,多個復用器中的各復用器包括:第一輸入端,其可操作用于接收用戶信號;第二輸入端,其耦合到一個相關聯(lián)的路由段,以及輸出端,其耦合到另一個相關聯(lián)的路由段。
[0105]附加實施例5,根據(jù)附加實施例4的集成電路,還包括:多個驅(qū)動器電路,各驅(qū)動器電路耦合到復用器中的相應一個復用器的輸出端。
[0106]附加實施例6,根據(jù)附加實施例1的集成電路,還包括:多個基于熔絲的存儲元件,基于熔絲的存儲元件可操作用于控制多個旁路電路。
[0107]附加實施例7,根據(jù)附加實施例1的集成電路,其中邏輯區(qū)域中的備用電路行以給定高度形成,并且其中多個路由段中的各路由段具有最多等于給定高度的長度。
[0108]附加實施例8,根據(jù)附加實施例1的集成電路,還包括:附加邏輯區(qū)域,其具有包括另一個備用電路行在內(nèi)的其它多個電路行的邏輯區(qū)域;以及附加路由段,其具有耦合到邏輯區(qū)域中的備用電路行中的第一旁路電路的第一端和耦合到附加邏輯區(qū)域中的所選擇的電路行中的第二旁路電路的相對第二端,其中邏輯區(qū)域中的備用電路行與附加邏輯區(qū)域中的所選擇的電路行相鄰。
[0109]附加實施例9,一種制造集成電路的方法,集成電路具有多個邏輯電路行,多個邏輯電路行包括備用邏輯電路行,多個路由段,各路由段具有耦合到多個邏輯電路行中相應一行的第一端和耦合到多個邏輯電路行中的相鄰一行的第二端;以及多個旁路電路,各旁路電路耦合在相應路由段對之間,其中每個旁路電路包括:第一輸入端,其可操作用于接收用戶信號;第二輸入端,其耦合到多個路由段中的一個相關聯(lián)的路由段,以及輸出端,其耦合到多個路由段中的另一個相關聯(lián)的路由段,方法包括:確定是否多個邏輯電路行中的至少一個包含缺陷電路;并且響應于確定多個邏輯電路行中的所選擇的邏輯電路行是有缺陷的,將備用邏輯電路行切換到使用,并且通過配置缺陷行中的旁路電路將來自其第二輸入端的信號路由到其輸出端來旁路缺陷邏輯電路行。
[0110]附加實施例10,根據(jù)附加實施例9的集成電路,集成電路還包括:響應于確定多個邏輯電路行中的至少兩個行包含缺陷電路,放棄集成電路。
[0111]附加實施例11,根據(jù)附加實施例9的集成電路,集成電路還包括:確定是否所選擇的邏輯電路行包含缺陷旁路電路;并且響應于確定所選擇的邏輯電路行中的旁路電路有缺陷,放棄集成電路。
[0112]附加實施例12,根據(jù)附加實施例9的集成電路,集成電路還包括:響應于確定多個邏輯電路行中的各行是沒有缺陷的,將備用邏輯電路行配置為空閑模式。
[0113]附加實施例13,根據(jù)附加實施例9的集成電路,其中將旁路電路配置為缺陷行包括使耦合到旁路電路的基于熔絲的存儲器元件熔斷。[0114]附加實施例14,根據(jù)附加實施例9的集成電路,其中多個旁路電路包括多個復用電路。
[0115]附加實施例15,根據(jù)附加實施例9的集成電路,其中邏輯電路的備用行具有給定高度,其中多個路由段包括多個信號路由路徑,各信號路由路徑具有第一端子和第二端子,并且其中各信號路由路徑的第一端子和第二端子以小于給定高度的距離分開。
[0116]附加實施例16,根據(jù)附加實施例14的集成電路,其中集成電路還包括:附加的多個復用電路,其中附加的多個復用電路中的各復用電路具有耦合到多個路由段中的相應一個路由段的第一輸入端,和第二輸入端;以及附加的多個路由段,各路由段具有耦合到在多個連接電路行中的相應一個邏輯電路行中形成的多個附加復用電路中的相應一個復用電路的第二輸入端的第一端,和耦合到多個邏輯電路行中的不相鄰的一行的第二端。
[0117]附加實施例17,一種用于操作集成電路的方法,其中集成電路包括:具有包括備用電路行在內(nèi)的多個電路行的邏輯區(qū)域;并且其中集成電路還包括:多個路由段,各路由段具有稱合到多個電路行中相應一行的第一端和稱合到多個電路行中的相鄰一行的相對第二端,方法包括:利用多個旁路電路,每個旁路電路耦合在相應的路由段對之間,當多個電路行中的一個行包含缺陷電路時將備用行切換到使用;并且使用多個旁路電路中的相應一個旁路電路利用相關聯(lián)的路由段驅(qū)動各路由段。
[0118]附加實施例18,根據(jù)附加實施例17的集成電路,其中多個旁路電路包括多個復用電路。
[0119]附加實施例19,根據(jù)附加實施例17的集成電路,其中集成電路還包括:附加邏輯區(qū)域,其具有包括另一個備用電路行在內(nèi)的其它多個電路行的邏輯區(qū)域,方法還包括:利用附加路由段,從邏輯區(qū)域中的備用電路行中的第一旁路電路接收信號,并且將接收到的信號路由到附加連接區(qū)域中的所選擇的電路行中的第二旁路電路,其中邏輯區(qū)域中的備用電路行與附加邏輯區(qū)域中的所選擇的電路行相鄰。
[0120]附加實施例20,根據(jù)附加實施例19的集成電路,其中邏輯區(qū)域中的備用電路行以給定高度形成,并且其中多個路由段具有最多等于給定高度的長度。
[0121]以上僅僅是本發(fā)明的原理的例示,并且不背離本發(fā)明的范圍和實質(zhì)下本領域技術人員可以進行各種修改。上述實施例可以單獨實施或者任意組合實施。
【權利要求】
1.一種集成電路,包括: 邏輯區(qū)域,其具有包括備用電路行的多個電路行; 多個路由段,各路由段具有耦合到所述電路行中相應一行的第一端和耦合到所述電路行中的相鄰一行的相對第二端;以及 多個旁路電路,各旁路電路耦合在路由段的相應對之間,其中所述旁路電路可操作以當所述電路行中的一個包含缺陷電路時將所述備用行切換到使用,并且其中各路由段可操作以使用所述旁路電路中的相應一個而被相關聯(lián)的路由段驅(qū)動。
2.根據(jù)權利要求1所述的集成電路,其中所述邏輯區(qū)域包括可編程邏輯區(qū)域。
3.根據(jù)權利要求1所述的集成電路,其中所述多個旁路電路包括多個復用器。
4.根據(jù)權利要求1所述的集成電路,其中所述多個旁路電路包括多個復用器,并且其中所述多個復用器中的各復用器包括可操作以接收用戶信號的第一輸入端,耦合到一個相關聯(lián)的路由段的第二輸入端,以及耦合到另一個相關聯(lián)的路由段的輸出端。
5.根據(jù)權利要求4所述的集成電路,還包括: 多個驅(qū)動器電路,各驅(qū)動器電路耦合到所述復用器中的相應一個復用器的輸出端。
6.根據(jù)權利要求1所述的集成電路,還包括: 多個基于熔絲的存儲元件,其可操作以控制所述多個旁路電路。
7.根據(jù)權利要求1所述的集成電路,其中所述邏輯區(qū)域中的備用電路行在給定高度內(nèi)形成,并且其中所述多個路由段中的各路由段具有最多等于所述給定高度的長度。
8.根據(jù)權利要求1所述的集成電路,還包括: 附加邏輯區(qū)域,其具有包括另一個備用電路行的其它多個電路行;以及 附加路由段,其具有耦合到所述邏輯區(qū)域中的備用電路行中的第一旁路電路的第一端和耦合到所述附加邏輯區(qū)域中的選擇的電路行中的第二旁路電路的相對第二端,其中所述邏輯區(qū)域中的所述備用電路行與所述附加邏輯區(qū)域中的所選擇的電路行相鄰。
9.一種制造集成電路的方法,所述集成電路具有多個邏輯電路行,所述多個邏輯電路行包括備用邏輯電路行,多個路由段,各路由段具有耦合到所述邏輯電路行中相應一行的第一端和耦合到所述邏輯電路行中的相鄰一行的第二端;以及多個旁路電路,各旁路電路耦合在路由段的相應對之間,其中每個旁路電路包括:可操作以接收用戶信號的第一輸入端,耦合到所述多個路由段中的一個相關聯(lián)的路由段的第二輸入端,以及耦合到所述多個路由段中的另一個相關聯(lián)的路由段的輸出端,所述方法包括: 確定所述多個邏輯電路行中的至少一個是否包含缺陷電路;以及 響應于確定所述多個邏輯電路行中的選擇的邏輯電路行是有缺陷的,將所述備用邏輯電路行切換到使用,并且通過配置缺陷行中的旁路電路將來自其第二輸入端的信號路由到其輸出端來旁路缺陷邏輯電路行。
10.根據(jù)權利要求9所述的方法,還包括 響應于確定所述多個 邏輯電路行中的至少兩個行包含缺陷電路,放棄所述集成電路。
11.根據(jù)權利要求9所述的方法,還包括: 確定所述選擇的邏輯電路行是否包含缺陷旁路電路;以及 響應于確定所述選擇的邏輯電路行中的旁路電路有缺陷,放棄所述集成電路。
12.根據(jù)權利要求9所述的方法,還包括:響應于確定所述多個邏輯電路行中的各行是沒有缺陷的,將所述備用邏輯電路行配置為空閑模式。
13.根據(jù)權利要求9所述的方法,其中配置所述缺陷行內(nèi)的所述旁路電路包括熔斷耦合到所述旁路電路的基于熔絲的存儲器元件。
14.根據(jù)權利要求9所述的方法,其中所述多個旁路電路包括多個復用電路。
15.根據(jù)權利要求9所述的方法,其中所述邏輯電路的備用行具有給定高度,其中所述多個路由段包括多個信號路由路徑,各信號路由路徑具有第一端子和第二端子,并且其中各信號路由路徑的所述第一端子和所述第二端子以小于所述給定高度的距離分離。
16.根據(jù)權利要求14所述的方法,其中所述集成電路還包括: 附加的多個復用電路,其中所述附加的多個復用電路中的各復用電路具有耦合到所述路由段中的相應一個路由段的第一輸入端,和第二輸入端;以及 附加的多個路由段,各路由段具有第一端,其耦合到在相應一個邏輯電路行中形成的附加復用電路中的相應一個復用電路的所述第二輸入端,和耦合到所述邏輯電路行中的不相鄰的一行的第二端。
17.一種操作集成電路的方法,其中所述集成電路包括:具有包括備用電路行的多個電路行的邏輯區(qū)域;并且其中所 述集成電路還包括多個路由段,各路由段具有耦合到所述電路行中相應一行的第一端和耦合到所述電路行中的相鄰一行的相對第二端,所述方法包括: 當所述電路行中的一個行包含缺陷電路時,利用多個旁路電路將所述備用行切換到使用,每個旁路電路耦合在路由段的相應對之間;以及 使用所述旁路電路中的相應一個旁路電路,利用相關聯(lián)的路由段驅(qū)動各路由段。
18.根據(jù)權利要求17所述的方法,其中所述多個旁路電路包括多個復用電路。
19.根據(jù)權利要求17所述的方法,其中所述集成電路還包括:附加邏輯區(qū)域,所述附加邏輯區(qū)域具有包括另一個備用電路行的其它多個電路行的邏輯區(qū)域,所述方法還包括: 利用附加路由段,從所述邏輯區(qū)域中的備用電路行中的第一旁路電路接收信號,并且將接收到的信號路由到所述附加邏輯區(qū)域中的選擇的電路行中的第二旁路電路,其中所述邏輯區(qū)域中的所述備用電路行與所述附加邏輯區(qū)域中的所述選擇的電路行相鄰。
20.根據(jù)權利要求19所述的方法,其中所述邏輯區(qū)域中的備用電路行在給定高度內(nèi)形成,并且其中所述附加路由段具有最多等于所述給定高度的長度。
【文檔編號】G06F17/50GK103812502SQ201310535221
【公開日】2014年5月21日 申請日期:2013年11月1日 優(yōu)先權日:2012年11月5日
【發(fā)明者】D·卡什曼 申請人:阿爾特拉公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
太康县| 奉节县| 洛隆县| 和田县| 个旧市| 崇义县| 健康| 抚松县| 台安县| 乌什县| 临西县| 托克托县| 德江县| 丹江口市| 曲松县| 三台县| 潢川县| 进贤县| 津南区| 青川县| 盐源县| 白城市| 易门县| 三门峡市| 镇沅| 威海市| 磐石市| 蓝田县| 遵义市| 桐庐县| 富平县| 苏尼特右旗| 平利县| 双城市| 鄂托克旗| 三明市| 广水市| 澄城县| 竹溪县| 汉沽区| 凭祥市|