(57)【要約】【課題】修復可能な論理領域を有する集積回路を提供すること。【解決手段】集積回路は、スペア行の回路網を含む複数の行の回路網を有する論理領域と、複数のルーティングセグメントであって、複数のルーティングセグメントの各々は、複数の行の回路網のうちのそれぞれの１つに結合された第１の端と複数の行の回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、複数の迂回回路であって、複数の迂回回路の各々は、複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路とを含み、複数の迂回回路は、複数の行の回路網のうちの１つが欠陥回路を含む場合、スペア行を使用にスイッチングするように動作可能であり、各ルーティングセグメントは、複数の迂回回路のうちのそれぞれの１つを用いて、関連付けられたルーティングセグメントによって駆動されるように動作可能である。【選択図】図２
2014093782.tif 000002
【特許請求の範囲】
【請求項１】
集積回路であって、該集積回路は、
スペア行の回路網を含む複数の行の回路網を有する論理領域と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
該複数の迂回回路は、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングするように動作可能であり、各ルーティングセグメントは、該複数の迂回回路のうちのそれぞれの１つを用いて、関連付けられたルーティングセグメントによって駆動されるように動作可能である、集積回路。
【請求項２】
前記論理領域は、プログラム可能な論理領域を含む、請求項１に記載の集積回路。
【請求項３】
前記複数の迂回回路は、複数のマルチプレクサーを含む、請求項１に記載の集積回路。
【請求項４】
前記複数の迂回回路は、複数のマルチプレクサーを含み、該複数の迂回回路の各マルチプレクサーは、ユーザ信号を受信するように動作可能な第１の入力と、１つの関連付けられたルーティングセグメントに結合されている第２の入力と、別の関連付けられたルーティングセグメントに結合されている出力とを含む、請求項１に記載の集積回路。
【請求項５】
複数のドライバー回路をさらに含み、該複数のドライバー回路の各々は、前記複数のマルチプレクサーのうちのそれぞれの１つの出力に結合されている、請求項４に記載の集積回路。
【請求項６】
前記複数の迂回回路を制御するように動作可能な複数のヒューズ型の記憶要素をさらに含む、請求項１に記載の集積回路。
【請求項７】
前記論理領域内の前記スペア行の回路網は、所与の高さ内に形成され、前記複数のルーティングセグメントの各ルーティングセグメントは、長くても該所与の高さと同等である長さを有する、請求項１に記載の集積回路。
【請求項８】
別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域と、
前記論理領域の前記スペア行の回路網の第１の迂回回路に結合された第１の端と、該追加の論理領域の選択された行の回路網の第２の迂回回路に結合された反対の第２の端とを有する追加のルーティングセグメントと
をさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、請求項１に記載の集積回路。
【請求項９】
集積回路を製造する方法であって、該集積回路は、
スペア行の論理回路網を含む複数の行の論理回路網と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の論理回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の論理回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
各迂回回路は、ユーザ信号を受信するように動作可能な第１の入力と、該複数のルーティングセグメントの１つの関連付けられたルーティングセグメントに結合されている第２の入力と、該複数のルーティングセグメントの別の関連付けられたルーティングセグメントに結合されている出力とを含み、
該方法は、
該複数の行の論理回路網のうちの少なくとも１つが欠陥回路を含むか否かを決定することと、
該複数の行の論理回路網のうちの選択された行の論理回路網が欠陥であると決定することに応答して、該スペア行の論理回路を使用にスイッチングすることと、該迂回回路の第２の入力から該迂回回路の出力へ信号をルーティングするように、該欠陥行内に該迂回回路を構成することによって該欠陥行の論理回路網を迂回することとを行うことと
を含む、方法。
【請求項１０】
前記複数の行の論理回路網の少なくとも２つの行が欠陥回路を含むことを決定することに応答して、前記集積回路を廃棄することをさらに含む、請求項９に記載の方法。
【請求項１１】
前記選択された行の論理回路網が欠陥迂回回路を含むか否かを決定することと、
該選択された行の論理回路網の迂回回路網が欠陥であることを決定することに応答して、前記集積回路を廃棄することと
をさらに含む、請求項９に記載の方法。
【請求項１２】
前記複数の行の論理回路網の行の各々に欠陥がないことを決定することに応答して、アイドルモードで前記スペア行の論理回路網を構成することをさらに含む、請求項９に記載の方法。
【請求項１３】
前記欠陥行の前記迂回回路を構成することは、該迂回回路に結合されているヒューズ型のメモリ要素をブローすることを含む、請求項９に記載の方法。
【請求項１４】
前記複数の迂回回路は、複数の多重化回路を含む、請求項９に記載の方法。
【請求項１５】
前記スペア行の論理回路網は、所与の高さを有し、前記複数のルーティングセグメントは、複数の信号ルーティング経路を含み、該複数の信号ルーティング経路の各々は、第１および第２の端末を有し、各信号ルーティング経路の該第１および第２の端末は、該所与の高さより短い距離で分離される、請求項９に記載の方法。
【請求項１６】
前記集積回路は、
追加の複数の多重化回路であって、該追加の複数の多重化回路の各々の多重化回路は、前記ルーティングセグメントのうちのそれぞれの１つに結合されている第１の入力と、第２の入力とを有する、追加の複数の多重化回路と、
追加の複数のルーティングセグメントであって、該追加の複数のルーティングセグメントの各々は、前記複数の行の論理回路網のそれぞれの１つ内に形成されている該複数の追加の多重化回路のうちのそれぞれの１つの該第２の入力に結合されている第１の端と、該複数の行の論理回路網のうちの非隣接の１つに結合されている第２の端とを有する、追加の複数のルーティングセグメントと
をさらに含む、請求項１４に記載の方法。
【請求項１７】
集積回路を動作させる方法であって、該集積回路は、スペア行の回路網を含む複数の行の回路網を有する論理領域を含み、該集積回路は、複数のルーティングセグメントをさらに含み、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の端とを有し、
該方法は、
各々が該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている複数の迂回回路を用いて、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングすることと、
該複数の迂回回路のうちのそれぞれの１つを用いて関連付けられたルーティングセグメントと共に各ルーティングセグメントを駆動することと
を含む、方法。
【請求項１８】
前記複数の迂回回路は、複数の多重化回路を含む、請求項１７に記載の方法。
【請求項１９】
前記集積回路は、別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域をさらに含み、前記方法は、
追加のルーティングセグメントを用いて、前記論理領域の前記スペア行の回路網の第１の迂回回路から信号を受信し、該追加の論理領域の選択された行の回路網の第２の迂回回路に該受信された信号をルーティングすることをさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、請求項１７に記載の方法。
【請求項２０】
前記論理領域内の前記スペア行の回路網は、所与の高さ内に形成され、前記追加のルーティングセグメントは、長くても該所与の高さと同等である長さを有する、請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１２年１１月５日に出願された米国特許出願第１３／６６９，２４４号に対して優先権を主張する。上記文献は、参照することによってその全体として本明細書において援用される。
【０００２】
（背景）
本発明は、集積回路に関し、特に、プログラム可能な集積回路に関する。
【背景技術】
【０００３】
プログラム可能な集積回路は、所望のカスタム論理設計を実装するためにプログラムされ得るプログラム可能な論理を含み、従って、ときには、プログラム可能な論理デバイス（ＰＬＤ）と呼ばれる。プログラム可能な論理デバイス集積回路は、冗長回路網も含み得る。冗長回路網は、欠陥を含むプログラム可能な論理デバイスを修復するために使用され、従って生産収率を向上させ得る。
【０００４】
プログラム可能な論理デバイスは、一般的に、論理領域内に組織化される。プログラム可能な論理デバイス上の論理領域の各々は、複数の行の論理と、１つのスペア行の論理とを含む。論理領域内の１つの行が、欠陥があると決定される（悪い行がスペア行ではないと仮定する）場合、スペア行から悪い行の直下の行までの各行が、その行の直前の行を置換する（すなわち、悪い行より下の各行が、その行の直下の行によって置換される）ように、その論理領域内のスペア行が予約される。このようなタイプの行ベースの冗長スキームは、例えば、同一出願人の特許文献１および特許文献２において説明され、上記文献が、参照することによって全体として本明細書において援用される。
【０００５】
従来の行ベースの冗長スキームは、しばしば、各論理領域内の異なる行を相互接続するための垂直ワイヤの使用に頼る。垂直ワイヤの各々は、一般的に、複数の行にわたり、第１の標的行かまたは第２の標的行内の回路網に接続される遠位端末を有する。所与の垂直ワイヤが破損した行を横断しない場合、その所与の垂直ワイヤは、第１の標的行に接続される。所与の垂直ワイヤが破損した行を横断する場合、破損した行より下の全てのルーティング接続は、１つの行だけ、下へシフトされることにより、所与の垂直ワイヤが、第２の標的行に接続される。複数の行にわたり、かつ２つの標的行内のルーティング回路網に直接に接続される垂直ワイヤを用いて実装される冗長スキームは、望ましくない量の書き込みおよびオーバヘッドを必要とする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許第６，９６５，２４９号明細書
【特許文献２】米国特許第７，１８０，３２４号明細書
【発明の概要】
【課題を解決するための手段】
【０００７】
プログラム可能な集積回路が提供され、複数の修復可能な論理領域を含む。各修復可能な論理領域は、通常行の論理回路網のグループとスペア行の論理回路網とを有し得る。修復可能な領域の各行の論理回路網は、迂回回路（例えば、多重化回路）と、対応する垂直ルーティングセグメント上に信号を駆動するために使用される関連付けられたドライバーとを含み得る。
【０００８】
各垂直ルーティングセグメント（ときには、垂直信号ルーティング経路と呼ばれる）は、複数の行の論理回路網のうちのそれぞれの１つに結合されている第１の端末と、複数の行の論理回路網のうちの隣接する１つに結合されている第２の端末とを有し得る。通常行のグループの行の各々の論理回路網とスペア行の論理回路網の量とは、実質的に同一であり得る。論理回路網のスペア行は、所与の高さ内に形成され得る。各垂直ルーティングセグメントは、スペア行の所与の高さ以下の長さを有し得る。
【０００９】
各修復可能な論理領域は、通常モードまたは冗長モードで動作可能であり得る。修復可能な論理領域の通常行の各々に欠陥がない場合、その修復可能な論理領域は、通常モードで（すなわち、スペア行をアイドルモードに配置することによって）動作可能であり得る。修復可能な論理領域内の１つより多い通常行が、欠陥回路を含む場合、その論理領域は、修復不可能としてマークを付けられ得、集積回路が廃棄され得る。通常行のうちの１つのみが欠陥回路を含む場合、その論理領域は、論理領域を冗長モードで動作させることによって修復され得る。
【００１０】
冗長モードモード中に、迂回回路は、スペア行を使用にスイッチングするように構成され得る。特に、欠陥行から出力される垂直ルーティングセグメントは、悪い行の迂回回路を用いて悪い行によって受信される別の垂直ルーティングセグメントによって駆動され得る。悪い行の迂回回路は、欠陥行を通して正しく信号をルーティングするために機能しなければならない。悪い行の迂回回路および関連付けられたドライバーも欠陥がある場合、プログラム可能な集積回路は廃棄されるべきである。悪い行の迂回回路は、迂回回路が欠陥行を迂回するように永久に設定されるように選択的にブローされる（ｂｌｏｗｎ）ヒューズ型の記憶要素を用いて構成され得る。
【００１１】
論理領域内の通常行の各々とスペア行とは、少なくとも、対応する垂直ルーティングセグメントに結合される第１の入力と、非隣接な行からルーティングされる少なくとも１つの他の垂直ルーティング経路に結合される第２の入力とを有するマルチプレクサーを含み得る（例えば、他の垂直ルーティング経路が、スペア行の所与の高さより長い長さを有し得、従って１つより多い行をわたり得る）。
【００１２】
この種類のプログラム可能なデバイスの設計の間に、非揮発性コンピュータ可読記憶媒体に記憶されるコンピュータ支援設計（ＣＡＤ）ツールは、プログラム可能なデバイスの性能をシミュレーションするために使用され得る。特に、クリティカルな信号ルーティング経路上にタイミング分析を実行することが望ましくあり得る。クリティカルな信号ルーティング経路は、プログラム可能なデバイス上の論理領域のうちの選択された１つの所与の行の論理から由来し得、クリティカルなルーティング経路が、複数の垂直ルーティングセグメントから形成される。
【００１３】
クリティカルなルーティング経路が、領域内クリティカルなルーティング経路である（すなわち、クリティカルなルーティング経路が、論理領域のうちの選択された１つ内のみで信号を運搬する）第１のシナリオにおいて、ＣＡＤツールは、最も多い（最大）数の垂直ワイヤルーティングセグメント交差を示す１対の隣接する行を分離するクリティカルな行境界を識別するために使用され得る。次に、ＣＡＤツールは、クリティカルなルーティング経路を決定することによって（例えば、クリティカルなルーティング経路の中間に配置された垂直および水平のルーティングセグメントの数をカウントすることによって）、クリティカルなルーティング経路に対するルーティング遅延を計算し得る。次に、ＣＡＤツールは、（例えば、クリティカルなルーティング経路の後の行が欠陥行である最悪のシナリオを考慮に入れるために）、クリティカルなルーティング経路がクリティカルな行境界を横切る回数に比例する追加の垂直ルーティング遅延をルーティング遅延に加えることによってクリティカルな経路に対する最悪のルーティング遅延を計算し得る。
【００１４】
クリティカルなルーティング経路が領域間クリティカルなルーティング経路である（すなわち、クリティカルなルーティング経路が１つの論理領域から別の１つに信号を運搬する）適切なシナリオにおいて、ＣＡＤツールは、クリティカルなルーティング経路を含む各論理領域のクリティカルなルーティング経路の一部分に対する最悪のルーティング遅延を別々に計算するために使用され得る。言い換えると、ＣＡＤツールは、クリティカルな経路が横断する各論理領域１００のクリティカルな行境界における垂直ワイヤ交差の数を識別するために使用され得る。
【００１５】
クリティカルなルーティング経路がクリティカルな行境界を横断する度に、追加のユニットの垂直ルーティング遅延は、クリティカルな行境界の後の行が欠陥である最悪のシナリオを考慮に入れるように引き起こされ得る。従って、最悪のタイミング遅延は、クリティカルな経路を含む各領域に対する最悪の遅延を別々に計算することと、後に、領域間クリティカルな経路に対する最悪の遅延を得るために別々に計算された遅延を合計することとによって決定され得る。この方法でＣＡＤツールを用いて収集された情報は、クリティカルなルーティング経路に対する最悪のルーティング遅延が性能基準を満たすか否かを決定するために使用され得る。
本願明細書は、例えば、以下の項目も提供する。
（項目１）
集積回路であって、該集積回路は、
スペア行の回路網を含む複数の行の回路網を有する論理領域と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
該複数の迂回回路は、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングするように動作可能であり、各ルーティングセグメントは、該複数の迂回回路のうちのそれぞれの１つを用いて、関連付けられたルーティングセグメントによって駆動されるように動作可能である、集積回路。
（項目２）
上記論理領域は、プログラム可能な論理領域を含む、上記項目に記載の集積回路。
（項目３）
上記複数の迂回回路は、複数のマルチプレクサーを含む、上記項目のいずれかに記載の集積回路。
（項目４）
上記複数の迂回回路は、複数のマルチプレクサーを含み、該複数の迂回回路の各マルチプレクサーは、ユーザ信号を受信するように動作可能な第１の入力と、１つの関連付けられたルーティングセグメントに結合されている第２の入力と、別の関連付けられたルーティングセグメントに結合されている出力とを含む、上記項目のいずれかに記載の集積回路。
（項目５）
複数のドライバー回路をさらに含み、該複数のドライバー回路の各々は、上記複数のマルチプレクサーのうちのそれぞれの１つの出力に結合されている、上記項目のいずれかに記載の集積回路。
（項目６）
上記複数の迂回回路を制御するように動作可能な複数のヒューズ型の記憶要素をさらに含む、上記項目のいずれかに記載の集積回路。
（項目７）
上記論理領域内の上記スペア行の回路網は、所与の高さ内に形成され、上記複数のルーティングセグメントの各ルーティングセグメントは、長くても該所与の高さと同等である長さを有する、上記項目のいずれかに記載の集積回路。
（項目８）
別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域と、
上記論理領域の上記スペア行の回路網の第１の迂回回路に結合された第１の端と、該追加の論理領域の選択された行の回路網の第２の迂回回路に結合された反対の第２の端とを有する追加のルーティングセグメントと
をさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、上記項目のいずれかに記載の集積回路。
（項目９）
集積回路を製造する方法であって、該集積回路は、
スペア行の論理回路網を含む複数の行の論理回路網と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の論理回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の論理回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
各迂回回路は、ユーザ信号を受信するように動作可能な第１の入力と、該複数のルーティングセグメントの１つの関連付けられたルーティングセグメントに結合されている第２の入力と、該複数のルーティングセグメントの別の関連付けられたルーティングセグメントに結合されている出力とを含み、
該方法は、
該複数の行の論理回路網のうちの少なくとも１つが欠陥回路を含むか否かを決定することと、
該複数の行の論理回路網のうちの選択された行の論理回路網が欠陥であると決定することに応答して、該スペア行の論理回路を使用にスイッチングすることと、該迂回回路の第２の入力から該迂回回路の出力へ信号をルーティングするように、該欠陥行内に該迂回回路を構成することによって該欠陥行の論理回路網を迂回することとを行うことと
を含む、方法。
（項目１０）
上記複数の行の論理回路網の少なくとも２つの行が欠陥回路を含むことを決定することに応答して、上記集積回路を廃棄することをさらに含む、上記項目のいずれかに記載の方法。
（項目１１）
上記選択された行の論理回路網が欠陥迂回回路を含むか否かを決定することと、
該選択された行の論理回路網の迂回回路網が欠陥であることを決定することに応答して、上記集積回路を廃棄することと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１２）
上記複数の行の論理回路網の行の各々に欠陥がないことを決定することに応答して、アイドルモードで上記スペア行の論理回路網を構成することをさらに含む、上記項目のいずれかに記載の方法。
（項目１３）
上記欠陥行の上記迂回回路を構成することは、該迂回回路に結合されているヒューズ型のメモリ要素をブローすることを含む、上記項目のいずれかに記載の方法。
（項目１４）
上記複数の迂回回路は、複数の多重化回路を含む、上記項目のいずれかに記載の方法。
（項目１５）
上記スペア行の論理回路網は、所与の高さを有し、上記複数のルーティングセグメントは、複数の信号ルーティング経路を含み、該複数の信号ルーティング経路の各々は、第１および第２の端末を有し、各信号ルーティング経路の該第１および第２の端末は、該所与の高さより短い距離で分離される、上記項目のいずれかに記載の方法。
（項目１６）
上記集積回路は、
追加の複数の多重化回路であって、該追加の複数の多重化回路の各々の多重化回路は、上記ルーティングセグメントのうちのそれぞれの１つに結合されている第１の入力と、第２の入力とを有する、追加の複数の多重化回路と、
追加の複数のルーティングセグメントであって、該追加の複数のルーティングセグメントの各々は、上記複数の行の論理回路網のそれぞれの１つ内に形成されている該複数の追加の多重化回路のうちのそれぞれの１つの該第２の入力に結合されている第１の端と、該複数の行の論理回路網のうちの非隣接の１つに結合されている第２の端とを有する、追加の複数のルーティングセグメントと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１７）
集積回路を動作させる方法であって、該集積回路は、スペア行の回路網を含む複数の行の回路網を有する論理領域を含み、該集積回路は、複数のルーティングセグメントをさらに含み、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の端とを有し、
該方法は、
各々が該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている複数の迂回回路を用いて、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングすることと、
該複数の迂回回路のうちのそれぞれの１つを用いて関連付けられたルーティングセグメントと共に各ルーティングセグメントを駆動することと
を含む、方法。
（項目１８）
上記複数の迂回回路は、複数の多重化回路を含む、上記項目のいずれかに記載の方法。
（項目１９）
上記集積回路は、別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域をさらに含み、上記方法は、
追加のルーティングセグメントを用いて、上記論理領域の上記スペア行の回路網の第１の迂回回路から信号を受信し、該追加の論理領域の選択された行の回路網の第２の迂回回路に該受信された信号をルーティングすることをさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、上記項目のいずれかに記載の方法。
（項目２０）
上記論理領域内の上記スペア行の回路網は、所与の高さ内に形成され、上記追加のルーティングセグメントは、長くても該所与の高さと同等である長さを有する、上記項目のいずれかに記載の方法。
（摘要）
修復可能な論理領域を有する集積回路が提供される。各論理領域は、所定の数の行の論理回路網内に組織化され得、所定の数の行の論理回路網のうちの１つが、スペア行として機能する。修復可能な領域は、通常モードまたは冗長モードで動作可能であり得る。通常モードにおいて、スペア行が非アクティブ化される。論理領域のうちの１つが欠陥回路網を含む場合、その論理領域は、冗長モードで動作可能であることにより、悪い行より下の各行が、１行だけ下へシフトされ、スペア行が、その領域を修復するために最後の行として機能するように係合される。各行は、マルチプレクサーと、１つの行から次へと対応する垂直ルーティングセグメントを駆動する関連付けられたドライバーとを含み得る。各垂直ルーティングセグメントは、対応するマルチプレクサーを構成することによって、直前の行のその論理的に同等の垂直ワイヤによって駆動されるオプションを有する。
【００１６】
本発明のさらなる特徴、その本質および様々な利点は、添付の図面および以下の詳細な説明からより明白になる。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明の実施形態に従う例示的なプログラム可能な集積回路のダイヤグラムである。
【図２】図２は、本発明の実施形態に従う複数の修復可能な論理領域を有する例示的なプログラム可能な集積回路のダイヤグラムである。
【図３】図３は、本発明の実施形態に従って通常モードで動作する例示的な修復可能な論理領域のダイヤグラムである。
【図４】図４は、本発明の実施形態に従って冗長モードで動作する例示的な修復可能な論理領域のダイヤグラムである。
【図５】図５は、本発明の実施形態に従う、プログラム可能な集積回路を製造、テストおよびパッケージする例示的なステップのフローチャートである。
【図６】図６は、本発明の実施形態に従う例示的なシステム環境のダイヤグラムであり、システム環境において、プログラム可能な集積回路が、論理設計システムを用いて構成され得る。
【図７】図７は、本発明の実施形態に従う、プログラム可能な集積回路内にカスタム回路設計を実装する構成データを生成する論理設計システムのダイヤグラムである。
【図８】図８は、本発明の実施形態に従う、論理設計システム内に使用され得る例示的なコンピュータ支援設計（ＣＡＤ）ツールのダイヤグラムである。
【図９】図９は、本発明の実施形態に従って、カスタム論理回路を設計し、かつ、タイミング分析を実行する例示的なステップのフローチャートである。
【図１０】図１０は、本発明の実施形態に従う例示的な領域内クリティカルなルーティング経路を示すダイヤグラムである。
【図１１】図１１は、本発明の実施形態に従う図１０のクリティカルなルーティング経路に関連付けられる最悪のシナリオを例示するダイヤグラムである。
【図１２】図１２は、本発明の実施形態に従う領域間クリティカルなルーティング経路に関連付けられる最悪のシナリオを例示するダイヤグラムである。
【図１３】図１３は、本発明の実施形態に従ってタイミング分析を実行することに関わる例示的なステップのフローチャートである。
【発明を実施するための形態】
【００１８】
（詳細な説明）
本発明の実施形態は、冗長回路網を有する集積回路に関連する。集積回路は、任意の適切な種類の集積回路、例えば、マイクロプロセッサ、特定用途の集積回路、デジタル信号プロセッサ、メモリ回路、または他の集積回路であり得る。必要に応じて、集積回路は、プログラム可能な回路網を含むプログラム可能な集積回路であり得る。本発明は、概して、例として、プログラム可能な論理デバイス（ＰＬＤ）集積回路のような集積回路の文脈で説明される。
【００１９】
図１は、プログラム可能な集積回路１０のような例示的な集積回路のダイヤグラムである。プログラム可能なデバイス１０は、入出力回路網１２を含み、入出力回路網１２は、デバイス１０の信号オフを駆動し、入出力ピン１４を介して他のデバイスから信号を受信する。相互接続リソース１６（例えば、グローバルおよびローカルの、垂直および水平の導線およびバス）は、デバイス１０上において信号をルーティングするために使用され得る。相互接続リソース１６は、それぞれの導線の間に導線およびプログラム可能な接続を含み、従って、ときには、プログラム可能な相互接続１６と呼ばれる。
【００２０】
プログラム可能なデバイス１０は、カスタム論理機能を実行するように構成され得るプログラム可能な論理１８を含み得る。プログラム可能な論理１８は、組み合わせおよび連続の論理回路網を含み得る。プログラム可能な相互接続１６は、プログラム可能な理論１８の１つの種類であると考えられ得る。
【００２１】
デバイス１０は、プログラム可能なメモリ要素２０も含み得る。メモリ要素２０は、ピン１４および入出力回路網１２を用いて、構成データ（プログラム可能なデータとも呼ばれる）と共にロードされ得る。ロードされると、メモリ要素は、各々、プログラム可能な論理１８内の関連付けられた論理コンポーネントの動作を制御する、対応する静的制御信号を提供し得る。典型的なシナリオにおいて、ロードされたメモリ要素２０の出力は、プログラム可能な論理１８内の金属酸化膜半導体トランジスタのゲートに印加されて、トランジスタをオンまたはオフにすることによって、プログラム可能な論理１８およびルーティング経路内の論理を構成する。この方法で制御され得るプログラム可能な論理回路は、パストランジスタ、マルチプレクサー（例えば、プログラム可能な相互接続１６内においてルーティング経路を形成するために使用されるマルチプレクサー）、ルックアップテーブル、論理アレイ、様々な論理ゲート等を含む。
【００２２】
メモリ要素２０は、任意の適切な揮発性および／または非揮発性メモリ構造（例えば、ランダムアクセスメモリ（ＲＡＭ）セル、ヒューズ、アンチヒューズ、プログラム可能な読み取り専用メモリセル、マスクプログラムおよびレーザープログラムされた構造、これらの構造の組み合わせ等を用いて実装され得る。メモリ要素２０が、プログラミング中に、構成データをロードされるので、メモリ要素２０は、ときには、構成メモリ、構成ＲＡＭ（ＣＲＡＭ）、またはプログラム可能なメモリ要素と呼ばれる。
【００２３】
デバイス１０の回路網は、任意の適切な構造を用いて組織化され得る。例として、デバイス１０の論理は、一連の行および列のより大きいプログラム可能な論理領域で組織化され得、その大きいプログラム可能な論理領域が、複数のより小さい論理領域を含む。より小さい領域は、例えば、ときには、論理要素（ＬＥ）と呼ばれる論理の領域であり得、各論理要素は、ルックアップテーブル（ＬＵＴ）、１つ以上のレジスタ、およびプログラム可能なマルチプレクサー回路網を含む。より小さい領域は、例えば、ときには、適合論理モジュール（ＡＬＭ）と呼ばれる論理の領域でもあり得る。各適合論理モジュールは、一対の加算器、一対の関連付けられたレジスタ、およびルックアップテーブル、または、共用組み合わせ論理（例として）の他のブロックを含み得る。より大きい領域は、例えば、複数の論理要素または複数のＡＬＭを含む論理アレイブロック（ＬＡＢ）であり得る。図１の例において、（例えば、ＬＥまたはＡＬＭであり得る）例示的な論理領域２２は、（例えば、論理アレイブロックであり得る）図１のプログラム可能な論理１８のより大きい領域のうちの１つ内に示される。典型的なプログラム可能な論理デバイス１０内において、数百または数千のより小さい論理領域２２が存在し得る。図１に示される論理領域２２は、単に例示的なものに過ぎない。
【００２４】
デバイスプログラミング中に、構成データは、デバイス１０内にロードされ、構成データがプログラム可能な論理領域２２およびプログラム可能な論理領域１８を構成することにより、それらの論理リリースが、それらの入力において所望の論理機能を実行し、所望の出力信号を生成する。例えば、ＣＲＡＭセルは、適切な構成データビットをロードされて、使所物カスタム論理設計を実装するように、加算器およびデバイス１０上の他の回路を構成する。
【００２５】
プログラム可能な論理１８のようなデバイス１０のリソースは、プログラム可能な相互接続１６によって相互接続され得る。相互接続１６は、概して、垂直および水平の導体を含む。これらの導体は、実質的にデバイス１０の全てにわたるグローバル導線、部分線（例えば、デバイス１０の部分にわたる半分の線または四分の一の線）、特定の長さの交互の線（例えば、いくつかの論理アレイブロックまたは他のそのような論理エリアを相互接続するために十分である）、より小さいローカル線、または、任意の他の適切な相互接続リソース配置を含み得る。必要に応じて、デバイス１０の論理は、複数のより大きい領域が相互接続されて、さらに大きい論理の部分を形成するより多いレベルまたは層において配置され得る。なお他のデバイス配置は、行および列に配置されていない論理を使用し得る。
【００２６】
図１に示されるプログラム可能な論理の比較的に大きいブロックに加えて、デバイス１０は、概して、デバイス１０上のプログラム可能な相互接続、メモリ、および入出力回路網に関連付けられたいくつかのプログラム可能な論理も含み得る。例えば、入出力回路網１２は、プログラム可能な入力および出力バッファを含み得る。相互接続１６は、信号を所望の目的地にルーティングするようにプログラムされ得る。
【００２７】
プログラム可能な集積回路１０は、冗長回路網を有し得る。冗長回路網を有する集積回路は、製造中に修復され得る。
【００２８】
集積回路は、複雑な半導体製造技術を用いて製造される。集積回路を生産するときのメリットのうちの１つの象徴は、回路の製造収率である。極めて複雑であり、または最先端のプロセスを用いて製造される回路は、概して、確立された回路設計より失敗なしに生産されることが難しい。結果として、より新しく、より複雑な回路に対する製造収率は、ときには、より古い設計の製造収率より低い。収率はまた、高性能チップを設計する場合に悪影響に受け得る。この種類のデバイスが、より小さい線幅およびより複雑な構造を含むので、それらを製造することがより難しいからである。
【００２９】
悪い製造収率は、集積回路設計の収益性に不利な影響を与え得る。いくつかの状態において、収率は、大量生産に相応しくない程低い場合がある。従って、可能な限り製造収率を増大させることが望ましい。これは、そうでなければ、集積回路を製造することを収益性のないものにし得る。増大された収率は、既に利益のある集積回路に対する利益幅も向上させ得る。
【００３０】
可能な限り製造収率を増大させることが有益であるが、概して、性能またはダイサイズの費用でそれを行うことが望ましくない。増大されるダイサイズまたは消極的な製造技術の使用を通して達成される収率の増加は、悪い電力消費および悪いスイッチング速度の問題の故に、市場に受け入れない場合がある。しかしながら、ダイサイズを増大することがコストを増大させ、それは、向上された収率からの利益を相殺し得る。
【００３１】
受け入れ可能な性能を維持すると同時に製造収率を向上させるための１つの方法は、冗長回路網を有する集積回路１０のような集積回路を提供することを含む。デバイスの製造の後に、新しく製造された集積回路がテストされ得る。欠陥が検知された場合、集積回路１０上の回路網は、欠陥を迂回するように構成され得る。これを行うことにおいて、スペア回路網は、迂回される欠陥の代わりに使用にスイッチングされ得る。
【００３２】
この種類の冗長スキームは、製造収率を向上させることを助け得る。そうでなければ、廃棄される必要がある集積回路１０は、救済され、消費者に売られ得る。修復プロセスは、デバイス性能に必ずしも悪影響を与えず、従って、修復されたデバイスは、検出された欠陥のないデバイスとまさに同様に動作し得る。通常、所与の集積回路１０上に限られた数の欠陥が存在するので、大量の冗長回路網を提供する必要は概してない。比較的に少量の冗長回路網のみが提供されるので、増大されるダイエリア、および冗長を提供することに関連付けられる性能ペナルティは、一般的に、増大された製造収率を達成することから生じる相当な経済利益により重要である。
【００３３】
本発明の実施形態に従う冗長回路網を有する集積回路１０が図２に示される。図２に示されるように、集積回路１０（例えば、プログラム可能な論理デバイス集積回路）は、複数の修復可能な領域１００に組織化された集積回路１０論理回路網を有し得る。各修復可能な領域１００は、例えば、Ｎ行の通常論理回路網１０６（すなわち、１番目の通常行１０６−１、２番目の通常行１０６−２、．．．、Ｎ番目の通常行１０６−Ｎ）と、１つのスペア行１０６’とを含み得る。例として、各行１０６は、複数のＬＡＢ、専用乗算器ブロック、内蔵のランダムアクセスメモリ、および他の制御回路網を含み得る。修復可能な領域１００内のＮ＋１行の各々に提供されたプログラム可能な論理の量および種類は、冗長スキームを支持するために同一であり得る。スペア行１０６’は、概して、修復可能な領域１００のエッジに向かって形成され得る。図２の例において、スペア行１０６’は、各修復可能な領域１００の底部に位置決めされ得る。
【００３４】
修復可能な領域１００は、通常モードおよび冗長モードで動作可能であり得る。領域１００内の全ての通常行１０６が正確に機能することが可能である場合（すなわち、行１０６−１、１０６−２、．．．、１０６−Ｎが欠陥回路網を含まない場合）、領域１００が、通常モードに設置され、他方で、スペア行１０６’は、使用外にスイッチングされる（例えば、通常モードにおいて、Ｎ行１０６が、所望の論理機能を実行するように構成され得、他方で、スペア行が、非アクティブのままである）。
【００３５】
領域１００の１つの通常行１０６が欠陥を含む場合（すなわち、行１０６−１、１０６−２、．．．、および１０６−Ｎのうちの１つが欠陥回路を含む場合）、領域１００は、悪い行を使用外にスイッチングし、かつ、スペア行１０６’を係合して領域１００を修復することによって冗長モードに設置され得る。例えば、所与の修復可能な領域１００が６４個の通常行１０６と１つのスペア行１０６’を含み、１１番目の行が製造欠陥を含む（すなわち、行１０６−１１が欠陥回路網を含む）シナリオを考慮する。このシナリオにおいて、第１の１０個の行１０６（行１０６−１、１０６−２、．．．、および１０６−Ｎ）が変更されていないが、悪い行より下の、所与の領域１００内の残りの行は、１だけ下へシフトされることにより、悪い行が迂回される。言い換えると、行１０６−１２は、破損した行１０６−１１に対する代替品として機能し、その後の各行は、その行の直後の行によって置換され、他方で、スペア行１０６’が行１０６−６４を置換するために使用される。
【００３６】
この例は、単に、例示的なものに過ぎない。スペア行１０６’は、多くても１つの悪い行を含む任意のサイズの領域１００を修復するために使用され得る。必要に応じて、修復可能な領域１００は、１つより多いスペア行１０６’を含み得ることにより、１つより多い破損した行を含む領域１００を修復する能力を提供する。概して、回路１０のような回路が９０°で回転されると、行冗長スキームが列冗長スキームになるので、行冗長および列冗長構成は、互換可能である。行冗長スキームは、ときには、例として本明細書に記載される。
【００３７】
同じ行に沿って配置される異なる修復可能な領域１００は、プログラム可能な領域間相互接続経路１０２を介して通信し得るが、同じ列に沿って配置された異なる修復可能な領域１００は、プログラム可能な領域間相互接続経路１０４を介して通信し得る。経路１０２および１０４は、図１に関して説明されるように、相互接続リソース１６の一部分を形成し得る。概して、デバイス１０は、任意の適切な構成に配置された任意の数の修復可能な領域１００を含み得る。
【００３８】
修復可能な領域１００内の各行１０６は、構成可能なルーティング回路１１０と、プログラム可能な論理回路２４とを含み得る（例えば、図２を参照ください）。構成可能なルーティング回路１１０は、少なくとも１つのユーザ構成可能な揮発性メモリ要素２０（例えば、構成データをロードされるＣＲＡＭセル）および／または少なくとも１つの非揮発性メモリ要素２１（例えば、ヒューズ、アンチヒューズ、電気的に構成可能な読み取り専用メモリ要素等）から提供される静的制御ビットを用いて制御され得る。ルーティング回路１１０は、スイッチング回路網およびドライバー回路網を含み得、スイッチング回路網およびドライバー回路網は、行１０６内の水平ルーティング経路１１４（ときには、「Ｈ」線と呼ばれる）に沿って、または、経路１０２を介して別個の領域１００の間でデータおよび制御信号をルーティングおよび駆動することと、１つの行から別の行への垂直ルーティング経路１１２（ときには、「Ｖ」線と呼ばれる）に沿って、または、経路１０４を介して別個の領域１００の間でデータおよび制御信号をルーティングおよび駆動することとを行う。
【００３９】
スイッチング回路１１０において受信されて、それによって出力されるデータおよび制御信号のうちの少なくとも一部は、同じ行内の関連付けされた論理回路２４に供給され得る。Ｎ＋１個の行の各々の中の論理回路２４は、任意の適切な数の構成可能な経路網（例えば、パストランジスタ、論理ゲート（例えば、論理ＮＡＮＤゲート、論理ＮＯＲゲート、インバータ等）、スイッチング回路、多重化回路、連続および組み合わせの論理回路、ルックアップテーブル（ＬＵＴ）、並びに（ときには、論理アレイブロック（ＬＡＢ）、論理要素（ＬＥ）、適合論理モジュール（ＡＬＭ）、または他の適切な論理領域部分と呼ばれる）ブロック内に配置される記憶コンポーネント（例えば、レジスタ））を含み得る。
【００４０】
図３は、本発明の１つの適切な実施形態を示し、１つの行から別の行へと信号をルーティングする垂直ワイヤは、単一のスペア行の高さに限定される長さを有する。図３に示されるように、修復可能な領域１００は、Ｎ＋１個の同一の論理行（例えば、行Ｒ１、Ｒ２、Ｒ３、．．．、ＲＮ、およびスペア行）を含む。各行は、垂直線（Ｖ線）ルーティング入力マルチプレクサー１５０、マルチプレクサー１５０に関連付けられるドライバー１５２、別のルーティング入力マルチプレクサー１６０、マルチプレクサー１６０に関連付けられるドライバー１６２、および別のルーティング回路網を含み得る。マルチプレクサー１５０、１６０、および関連付けられたドライバーは、ルーティング回路１１０（図２）の一部であるように考えられ得る。
【００４１】
特に、マルチプレクサー１５０は、前行のドライバー１５２の出力に結合される垂直ルーティング経路１５４を介して信号を受信する第１の入力と、ユーザ信号を受信するように動作可能な第２の入力と、関連付けられたメモリ要素から静的制御ビットを受信する制御入力と、対応するドライバー１５２に結合される出力とを有し得る。ドライバー１５２は、後行にルーティングされる別の垂直ルーティング経路１５４を駆動するために使用され得る。図３の垂直ルーティング経路１５４は、図２に示されるＶ線１１２と同等であり得、修復可能な領域１００内の単一行の高さＨ以下である連続した物理長さを有し得る。一対の隣接する行の２つの連続するＶ線ルーティング入力マルチプレクサー１５０の間に配置された各垂直ルーティングワイヤ１５４（ときには、垂直ルーティング「セグメント」と呼ばれる）は、単一のスペア行の行高Ｈより短い長さを有する（回路網のスペア行が、行高Ｈ内で形成され得る）。言い換えると、各ルーティングセグメント１５４は、領域１００内の行のうちのそれぞれの１つの回路網に結合される第１の端を有し、その領域１００内の行の隣接する行の回路網に結合される反対の第２の端を有する（例えば、各垂直ルーティングセグメント１５４が、隣接する行内に形成されているマルチプレクサー１５０を一緒に結合する）。
【００４２】
マルチプレクサー１６０は、前行のドライバー１５２の出力に結合される垂直ルーティング経路１５４を介して信号も受信する入力と、（例として）米国特許第６，９６５，２４９号および米国特許第７，１８０，３２４号に記載される他の冗長スキームのうちの１つからのより長い垂直ルーティングワイヤを用いて、経路１５４の長さより実質的に長い長さを有する垂直ルーティング経路１６４（垂直ルーティング経路１６４が単一行１０６より多い行にわたる）に結合される追加の入力と、対応するドライバー１６２に結合される出力とを有し得る。ドライバー１６２は、その行内の論理回路２４、水平ルーティング線１１４（図２を参照）、他の垂直ルーティング線、入出力バス線、または他の適切なプログラム可能な回路網上へ信号を駆動するために使用され得る。
【００４３】
所与の領域１００内のルーティング入力マルチプレクサー１５０および１６０は、領域内の垂直ワイヤを介してデータおよび制御信号を受信することに限定されない。図３の例において、１番目の行Ｒ１のマルチプレクサー１５０は、デバイス１０上の領域１００の一部分ではない他の回路網からルーティングされる垂直ワイヤ１５４’に結合されるその第１の入力を有し得る。同様に、領域１００の上部の行のうちの１つにおけるルーティング入力マルチプレクサー１６０は、外部の他のコンポーネントからデバイス１０上のその領域１００にルーティングされる垂直ワイヤ１６４’に結合される入力を有し得る。
【００４４】
図３は、領域１００の通常行Ｒ１−ＲＮのいずれも製造欠陥を含まないときに通常モードで動作する領域１００を例示する。通常モード中に、スペア行は、使用中ではなく、電力を節約するために、随意に電源を切られ得る。残りのＮ個の行の各ルーティング入力マルチプレクサー１５０は、その第１の入力からその出力へと信号をルーティングするか、またはその第２の入力からその出力へと信号をルーティングするために、ユーザに構成されたメモリ要素２０（例えば、構成データをロードされる記憶要素）から提供される静的制御ビットによって制御され得る。
【００４５】
図３のボールド体の経路によって示されるように、行Ｒ１のマルチプレクサー１５０は、その第２の入力からその出力へとユーザ信号をルーティングするように構成され得ることにより、ユーザ信号が、関連付けられたドライバー１５２を介して対応する垂直ルーティングセグメント１５４上に駆動される。次に、これらの信号は、さらなる処理のために、セグメント１５４を介して後の行Ｒ２に供給される。概して、通常モード中に垂直ワイヤルーティング入力マルチプレクサー１５０の出力に提供される信号は、さらなる処理のために後の行（後の行がスペア行ではないと仮定する）のマルチプレクサー１６０によって受信され得、後の行のマルチプレクサー１５０は、その第２の入力からその出力へとユーザ信号をルーティングするように、ユーザによって潜在的に構成され得る。
【００４６】
図４は、領域１００の行Ｒ１−ＲＮのうちの１つが欠陥回路網を含むときに冗長モードで動作する修復可能な領域１００を示す。冗長モード中に、破損した行が迂回され、スペア行が使用にスイッチングされる。図４の例に示されるように、行Ｒ２は、破損した行であると決定される。結果として、ヒューズ２１のような関連付けられた非揮発性メモリ要素は、Ｒ２の垂直線ルーティング入力マルチプレクサー１５０が、その第１の入力からその出力へと信号をルーティングするために永久に設定されるように選択的にブローされ得る。次に、Ｒ２の関連付けられたドライバー１５２は、行Ｒ３にルーティングされる対応する垂直ルーティングセグメント１５４上にこの出力信号を駆動し得る。言い換えると、垂直ルーティングワイヤ１５４が破損した行に到達すると、その入ってくる垂直ルーティングワイヤは、破損した行の同等の垂直ルーティングワイヤに短絡され、破損した行の直後の機能行へルーティング出される。悪い行（すなわち、行Ｒ２）内のマルチプレクサー１６０、論理回路２４、および他の入力回路網は、使用外にスイッチングされるか、または電力消費を低減させるように随意に非アクティブ化され得る。この例において、マルチプレクサー１５０、ドライバー１５２、および関連付けられた垂直ルーティングワイヤは、この迂回スキームを無事に動作させるために、製造欠陥を含まないことが必須である（例えば、悪い行のマルチプレクサー１５０、ドライバー１５２、および関連付けられた垂直ルーティング線が、なお、デバイス１０が修復可能であると考えられるために、正確に信号を伝播することが可能でなければならない）。
【００４７】
矢印１９０によって示されるように、悪い行より下の各連続的な行は、１行だけ下へシフトされ得ることにより、各出て行く垂直ワイヤ１５４が、直前の行のその論理的に同等の垂直ワイヤ１５４によって置換される（例えば、行Ｒ３、Ｒ４、．．．、ＲＮ、およびスペア行が、行Ｒ２が欠陥でなかったならば使用される行Ｒ２−ＲＮを置換するように機能する）。ユーザが、領域１００内にＮ個の機能論理行があることのみを注意するので、行のこのシフトは、デバイス１０のユーザに見えない場合がある。従って、この方法で欠陥行のマルチプレクサー１５０を構成することは、破損した行の下の各行を１行だけシフトすることにより、各シフトされる行が、そのシフトされた行の直前の行を置換するように機能することによって、欠陥行を効率的に迂回するために使用され得る。従って、マルチプレクサー１５０は、ときには、迂回回路と呼ばれる。
【００４８】
垂直ワイヤ１５４が「下流」へ（すなわち、Ｒ１からＲ２へ、Ｒ２からＲ３へ等）信号を実行する図４の例は、単に例示的なものに過ぎない。他の適切な配置において、領域１００は、「上流」へ（すなわち、スペア行からＲＮへ、ＲＮからＲＮ−１へ等）信号を駆動するための追加のマルチプレクサー１５０および関連付けられたドライバー１５２を含み得る。下流垂直ルーティング経路において、各垂直ワイヤは、直前の行のその論理的に同等の行によって駆動されるオプションを有するべきであるが、上流垂直ルーティング経路において、各垂直ワイヤは、直後の行のその論理的に同等の行によって駆動されるオプションを有するべきである。図４の例は、単に、１組の下流垂直ルーティング回路網を例示するものに過ぎない。概して、デバイス上の各領域１００は、１組より多い下流垂直ルーティング回路網と、１組より多い上流垂直ルーティング回路網とを含み得る。
【００４９】
図５は、欠陥回路網を有するダイを識別すること、および失敗ダイを修復するか否かを決定することに含まれる例示的なステップのフローチャートである。ステップ２００において、プログラム可能な集積回路ダイ１０は、集積回路ウェーハの一部分として半導体製造工場で製造され得る。ステップ２０２において、ダイ１０は、各修復可能な領域１００内の破損した行の数を決定するために、欠陥に対してテストされ得る。
【００５０】
ダイ１０上の少なくとも１つの修復可能な領域１００が１つより多い破損した行を含むシナリオにおいて、そのダイ１０は、修復不可能としてマークに付けられ、廃棄される。ダイ１０上の各修復可能な領域１００が多くても１つの破損した行を含むシナリオにおいて、そのダイ１０は、修復可能であり、処理が、ステップ２０８に進み得る。
【００５１】
ステップ２０８において、ダイ１０は、修復可能な領域１００の各々の破損した行内のマルチプレクサー１５０、ドライバー１５２、および関連付けられた垂直ルーティング線（ときには、迂回ルーティング回路網として集約的に呼ばれる）がなお正確に機能するか否かを決定するためにテストされ得る。破損した行の迂回ルーティング回路網が欠陥である場合（すなわち、迂回ルーティング回路網が、前行から後の行へと信号を伝播することができない場合）、そのダイ１０は、修復不可能としてマークに付けられ、廃棄されるべきである。破損した行の迂回ルーティング回路網に欠陥がない場合、そのダイ１０は、修復可能であり、処理が、ステップ２１２に進み得る。
【００５２】
ステップ２１２において、適切なヒューズ要素２１がブローされ得ることにより、破損した行のマルチプレクサー１５０が、迂回モードに永久的に設定される（例えば、垂直ルーティングセグメント１５４が、破損した行の直前の行内のその論理的に同等の垂直ワイヤによって駆動される）。
【００５３】
ステップ２１４において、デバイス１０は、ダイシングされ、個々の集積回路コンポーネント内にパッケージされ、そして消費者に輸送され得る。次に、消費者は、所望の論理機能を実行するために、デバイス１０を構成するユーザ構成データをデバイスにロードすることによってデバイス１０を構成し得る。消費者の視点から、デバイス１０上の各論理領域１００は、Ｎ個の機能行を含む（例えば、消費者は、あったとしても、どの行が破損し、迂回されるかを注意しない。所望のアプリケーションを実行することに用いられるプログラム可能な論理リソースのＮ個の利用可能な行がある限り）。
【００５４】
プログラム可能な集積回路１０を設計および構成するための例示的なシステム環境が図６に示される。デバイス１０は、システム３８０内のボード３６０上に搭載され得る。デバイス１０は、プログラミング機器または他の適切な機器またはデバイスから構成データを受信し得る。
【００５５】
図６の例において、デバイス１０は、関連付けられた集積回路４００から構成データを受信する１つの種類のプログラム可能な集積回路である。この種類の配置において、回路４００は、必要に応じて、デバイス１０と同じボード３６上に搭載され得る。回路４００は、外部の電気的に消去可能でプログラム可能な読み取り専用メモリ（ＥＥＰＲＯＭ）チップからのプログラム可能な論理デバイスメモリに構成データをロードするプログラム可能な論理デバイス構成データローディングチップ、ビルドインメモリを有するプログラム可能な論理デバイス構成データローディングチップ（ときには、構成デバイスと呼ばれる）、または任意の他の適切なデバイスであり得る。システム３８０が起動するとき（または別の適切なとき）、構成データは、経路４２０によって図式的に示されるように、デバイス４００からデバイス１０に供給され得る。デバイス１０に供給される構成データは、そのプログラム可能な要素２０（例えば、構成ランダムアクセスメモリ要素）内に記憶され得る。
【００５６】
システム３８０は、デバイス１０と通信する、処理回路４４０、記憶体４６０、および別のシステムコンポーネント４８０を含み得る。システム３８０のコンポーネントは、ボード３６０のような１つ以上のボードまたは他の適切な搭載構造またはハウジング上に配置され得る。
【００５７】
通信経路は、デバイス１０を他のコンポーネントに相互接続するために使用され得る。例えば、通信経路３７０は、ボード３６０上に搭載される集積回路３９０とデバイス１０との間でデータを伝達するために使用され得る。通信経路３５０および５００は、デバイスと、コンポーネント４４０、４６０および４８０との間で信号を伝達するために使用され得る。
【００５８】
構成デバイス４００は、経路５２０のような経路上でデバイス１０に対する構成データを供給され得る。構成デバイス４００は、例えば、構成デバイス４００に構成データを記憶する構成データローディング機器５４０または他の適切な機器から構成データを受信し得る。デバイス４００は、ボード３６０上へのインストールの前または後にデータをロードされ得る。
【００５９】
プログラム可能な論理デバイスにおいて所望の論理回路を設計および実装するためことは、かなりの作業であり得る。従って、論理設計者は、概して、コンピュータ支援設計（ＣＡＤ）ツールに基づく論理設計システムを使用して、回路を設計することにおいて彼らを支援する。論理設計システム（ときには、回路設計システムと呼ばれる）は、論理設計者がシステムに対して複雑な回路を設計しテストすることを助ける。設計が完全である場合、論理設計システムは、適切なプログラム可能な論理デバイスを電気的にプログラムするための構成データを生成するために使用され得る。論理設計システムは、コンピューティング機器上に実装され得る。
【００６０】
図６に示されるように、論理設計システム５６０によって生成された構成データは、経路５８０のような経路上で機器５４０に提供され得る。機器５４０は、構成データをデバイス４００に提供することにより、デバイス４００が、後に、経路４２０上でこの構成データをデバイス１０に提供し得る。システム５６０は、１つ以上のコンピュータおよび１つ以上のソフトウェアプログラムに基づき得る。概して、ソフトウェアおよびデータは、システム５６０内の任意のコンピュータ可読媒体（記憶体）に格納され得、記憶体６００として図式的に示される。
【００６１】
一般的なシナリオにおいて、論理設計システム５６０は、カスタム回路設計を生成するために論理設計者によって使用される。システム５６０は、構成デバイス４００に提供される対応する構成データを生成する。電源を入れると、デバイス１０上の構成デバイス４００およびデータローディング回路網は、デバイス１０のプログラム可能なメモリ要素２０内に構成データをロードするために使用される。次に、デバイス１０は、システム３８０の通常動作で使用され得る。
【００６２】
本発明に従う例示的な論理設計システム５６０が図７に示される。システム５６０は、１つ以上のプロセッサ、例えば、パーソナルコンピュータ、ワークステーション等に基づき得る。プロセッサは、ネットワーク（例えば、ローカルまたは広域ネットワーク）を用いてリンクされ得る。これらのコンピュータのメモリまたは外部メモリ、および記憶デバイス（例えば、内部および／または外部ハードディスク）は、命令およびデータを記憶するために使用され得る。
【００６３】
ソフトウェアベースのコンポーネント（例えば、コンピュータ支援設計ツール６２０）およびデータベース６３０は、システム５６０上に存在する。動作中、実行可能なソフトウェア（例えば、コンピュータ支援設計ツール６２０のソフトウェア）は、システム５６０のプロセッサ上で動く。データベース６３０は、システム５６０の動作のためにデータを記憶するために使用される。概して、ソフトウェアおよびデータは、システム５６０内の任意のコンピュータ可読媒体（記憶体）に格納され得る。図６の記憶体６００として図式的に示されるこのような記憶体は、コンピュータメモリチップ、取り外し可能および固定の媒体（例えば、ハードディスクドライバー、フラッシュメモリ、コンパクトディスク（ＣＤ）、ＤＶＤ、他の光学媒体、およびフロッピー（登録商標）ディスク、テープ）、または任意の他の適切なメモリまたは記憶デバイスを含み得る。システム５６０のソフトウェアがインストールされる場合、システム５６０の記憶体６００は、システム５６０のコンピューティング機器に様々な方法（処理）を実行させる命令およびデータを有する。これらの処理を実行するとき、コンピューティング機器は、論理設計システムの機能を実装するように構成される。
【００６４】
コンピュータ支援設計（ＣＡＤ）ツール６２０（その一部または全部が、ときには、ＣＡＤツールとして集約的に呼ばれる）は、単一の販売者または複数の販売者によって提供され得る。ツール６２０は、１つ以上の式のツール（例えば、プログラム可能な論理デバイスにおいて回路設計を実装することに関連づけられたタスクを実行するためのコンパイラー式）、およびまたは１つ以上の別々のソフトウェアコンポーネントとして提供され得る。データベース６３０は、特定のツールまたは複数のツールのみによってアクセスされる１つ以上のデータベースを含み得、１つ以上の共用データベースを含み得る。共用データベースは、複数のツールによってアクセスされ得る。例えば、第１のツールは、共用データベースの第２のツールのためのデータを記憶し得る。第２のツールは、共用データベースにアクセスして、第１のツールによって記憶されたデータを読み出し得る。これは、１つのツールが別のツールに情報を渡すことを可能にする。ツールも、必要に応じて、共用データベース内に情報を記憶することなしに、互いに情報を渡し得る。
【００６５】
図６および７のシステム５６０のような論理設計システムに使用され得る例示的なコンピュータ支援設計ツール６２０が図８に示される。
【００６６】
設計処理は、概して、論理回路の機能仕様の組み立て（論理回路の機能記述）から開始する。論理設計者は、設計および制約エントリーツール６６４を用いて、所望の回路がどのように機能すべきかを特定し得る。設計および制約エントリーツール６６４は、設計および制約エントリー支援６６６および設計エディタ６６８のようなツールを含み得る。設計および制約エントリー支援（例えば、支援６６６）は、論理設計者が存在する論理設計のライブラリから所望の設計を位置決めすることを助けるために使用され得、所望の設計を入力する（特定する）ために、論知設計者にコンピュータ支援の補助を提供し得る。
【００６７】
例えば、設計および制約エントリー支援６６６は、ユーザに対してオプションのスクリーンを提示するために使用され得る。ユーザは、設計される回路がある特徴を有するか否かを選択するように、スクリーン上のオプションをクリックし得る。設計エディタ６６８は、（例えば、ハードウェア記述言語コードのラインを入力することによって）設計を入力するために使用され得、（例えば、設計および制約エントリー支援を用いて）ライブラリから得られた設計を編集するために使用され得、または適切な事前にパッケージされたコード／設計を選択および編集することにおいてユーザを補助し得る。
【００６８】
設計および制約エントリーツール６６４は、設計者が適切なフォーマットを用いて所望の論理設計を提供することを可能にするために使用され得る。例えば、設計および制約エントリーツール６６４は、設計者が、トルーステーブルを用いて論理設計を入力することを可能にするツールを含み得る。トルーステーブルは、テキストファイルまたはタイミングダイヤグラムを用いて特定され得、ライブラリからインポートされ得る。トルーステーブル論理設計および制約エントリーは、大きな回路の一部分に対して、または全回路に対して使用され得る。
【００６９】
別の例として、設計および制約エントリーツール６６４は、図式的なキャプチャーツールを含み得る。図式的なキャプチャーツールは、設計者が構成パーツ（例えば、論理ゲートおよび論理ゲートのグループ）から論理回路を視覚的に構成することを可能にし得る。事前に存在する論理回路のライブラリは、設計の所望の部分が図式的なキャプチャーツールを用いてインポートされることを可能にするために使用され得る。
【００７０】
必要に応じて、設計および制約エントリーツール６６４は、論理設計者がハードウェア記述言語（例えば、Ｖｅｒｉｌｏｇハードウェア記述言語（ＨＤＬ）および超高速集積回路ハードウェア記述言語（ＶＨＤＬ））を用いて論理設計システム５６０に論理設計を提供することを可能にし得る。論理回路の設計者は、エディタ６６８を用いてハードウェア記述言語コードを書き込むことによって論理設計を入力し得る。コードのブロックは、必要に応じて、ユーザに維持され、または市販のライブラリからインポートされ得る。
【００７１】
設計が設計および制約エントリーツール６６４を用いて入力された後に、挙動シミュレーションツール６７２は、設計の機能性能をシミュレーションするために使用される。設計の機能性能が不完全または不正確である場合、論理設計者は、設計および制約エントリーツール６６４を用いて設計に変更を加え得る。合成動作がツール６７４を用いて実行される前に、新しい設計の機能動作が挙動シミュレーションツール６７２を用いて検証され得る。シミュレーションツール（例えば、ツール６７２）は、必要に応じて（例えば、論理合成の後に）、設計フローの別のステージにおいても使用され得る。挙動シミュレーションツール６７２の出力は、任意の適切なフォーマット（例えば、トルーステーブル、タイミングダイヤグラム等）で論理設計者に提供され得る。
【００７２】
論理設計の機能動作が満足であるように決定されると、論理合成および最適化ツール６７４は、特定のプログラム可能な論理デバイスにおいて（すなわち、特定のプログラム可能な論理デバイス製品または製品ファミリーの論理および相互接続リソースにおいて）論理設計を実装するために使用され得る。
【００７３】
ツール６７４は、ツール６６４を用いて論理設計者によって入力された論理設計および制約データに基づいて論理設計において異なる論理機能を実行するために、ハードウェアを適切に選択することによって設計を最適化しようとする。
【００７４】
ツール６７４を用いる論理合成および最適化の後に、論理設計システムは、物理的設計ステップ（レイアウト合成動作）を実行するために、配置およびルーティングツール６７６のようなツールを使用し得る。配置およびルーティングツール６７６は、プログラム可能な論理デバイス内に各論理機能に対してどのように回路を配置するかを決定するために使用される。例えば、２つのカウンタが互いに相互作用する場合、配置およびルーティングツール６７６は、プログラム可能な論理デバイス上の隣接する論理領域にこれらのカウンタを配置して、相互接続遅延を低減させか、または、最大の許可される相互接続遅延を特定するタイミング要件を満たし得る。配置およびルーティングツール６７６は、所与のプログラム可能な論理デバイスに対して論理設計の秩序あるおよび効率的な実装を生成する。
【００７５】
ツール６７４および６７６のようなツールは、コンパイラー式の一部分（例えば、プログラム可能な論理デバイス販売者によって提供される１式のコンパイラーツールの一部分）であり得る。本発明に従って、ツール６７４、６７６および６７８のようなツールは、所望の回路設計を実装する間に、相互接続の間のクロストークの効果を自動的に考慮に入れる。ツール６７４、６７６および６７８は、タイミング分析ツールも含み得る。これは、プログラム可能な集積回路（例えば、プログラム可能な集積回路１０）に対して構成データを生成する場合、ツール６７４および６７６が性能要件（例えば、タイミング要件）を満たすことを可能にする。
【００７６】
プログラム可能な論理デバイスの所望の論理回路の実装が配置およびルーティングツール６７６を用いて生成された後に、設計の実装は、分析ツール６７８を用いて分析およびテストされ得る。満足な最適化動作がツール６２０を用いて完了された後に、ツール６２０は、プログラム可能な集積回路に対して構成データを生成し得る。
【００７７】
構成データファイルを生成するための、図８のツール６２０を用いることに含まれる例示的な動作が、図９に示される。図９に示されるように、初期ネットリスト８０がステップ８２において合成され、合成後ネットリスト８４を生成する。ステップ８６において、ユーザ入力８８および合成後ネットリスト８４は、配置およびルーティングおよび最適化動作中に処理される。ステップ８６の動作の間、ＣＡＤツール６２０は、異なる正電源電圧および／またはボディバイアス電圧を用いること、並びに、電源およびボディバイアスレベルの適切な選択、回路リソースの割当、および配置決定を介する効果を考慮に入れ、ツール６２は、設計制約を満たすと同時に、電力消費を低減させる。
【００７８】
生じるネットリスト９０は、論理設計システム５６０を用いてタイミング分析を実行することによってさらに処理され得る（ステップ９１）。タイミング分析は、プログラム可能な集積回路１０を構成する前に、最後のネットリスト９０がタイミング制約を満たすことを確実にすることを助けるために使用され得る。必要に応じて、処理は、最後のネットリストを用いて追加の最適化を実行するために、経路９３を介して随意にステップ８６へループバックし得る。例えば、論理設計システム５６０は、タイミング制約に失敗する最後のネットリスト内のルーティング経路を識別し、随意な経路９３を介してステップ８６に戻ることによって置換ルーティング経路を決定し得る。
【００７９】
ステップ９２において、最後のネットリストは、構成データファイル出力（例えば、．ｐｏｆまたは．ｓｏｆファイル）を生成するために、製造処理の間にさらに処理され得る。次に、構成データファイル出力は、プログラム可能なデバイス１０上にロードされ得る。
【００８０】
概して、デバイス１０上の最もクリティカルなルーティング経路（例えば、領域１００の最大伝播遅延を有するルーティング経路）を識別し、そのクリティカルな経路に沿って伝播する信号が設計基準を満たすか否かを決定するためにツール６２０を使用することが望ましいことがある。図１０は、例示的な連続ルーティング経路（例えば、その経路の中間に配置されたマルチプレクサー１５０を介して単一の論理ソースに由来するユーザ信号を伝播するルーティング経路）を示すダイヤグラムである。図１０に示されるように、修復可能な領域１００は、５個の論理行Ｒ１−Ｒ５を含み、それらの各々が５個の論理ブロック７００を含む。領域１００のクリティカルな経路は、任意の隣接する行と通信する最大数の垂直ルーティングセグメント１５４を有する行を識別することによって（すなわち、最大数の垂直ワイヤ交差を有する１対の隣接する行を識別することによって）得られ得る。
【００８１】
図１０の例において、クリティカルなルーティング経路は、行Ｒ４に由来し得、３つの垂直ラインセグメント１５４を介してＲ１へルーティングされ、水平線セグメント１５５を介して行Ｒ１の２つの論理ブロックを通し、２つの追加の垂直線セグメント１５４を介して行Ｒ３へ下って戻り、行Ｒ２へ上って戻る。この特定のクリティカルなルーティング経路は、３つの垂直ルーティングセグメント１５４(すなわち、クリティカルなルーティング経路の中間に配置された垂直ワイヤ１５４)を生じさせ、行境界７０２（すなわち、行Ｒ２およびＲ３を分離する境界）を横断する２つのＵターンを示す。クリティカルなルーティング経路内の最大数の垂直ワイヤ交差を示す行境界７０２は、クリティカルな行境界と呼ばれ得る。
【００８２】
図１１は、クリティカルな行境界７０２に隣接する行Ｒ３が欠陥のある行である最悪のシナリオを示す。このシナリオにおいて、悪い行より下の各行は、図４に関連して前述された迂回スキームを用いて１行だけ下へシフトされなければならない。この方法で行を迂回することは、クリティカルな経路が境界７０２を横断する度に対して追加のマルチプレクサー／ドライバーおよびワイヤ遅延を導入する。図１１に示されるように、タイミング分析９１は、領域１００が性能基準を満たすか否かを決定するとき、３つの追加のマルチプレクサー１５０、ドライバー１５２、および垂直ルーティングセグメント１５４（ときには、１ユニットの垂直ルーティング遅延として集約的に呼ばれる）に関連付けられた伝播遅延を考慮に入れなければならない。概して、クリティカルなグラウンドの各追加のＵターンは、保守的なタイミング分析を実行するとき、最大１つの余分のユニットの垂直ルーティング遅延を潜在的に生じ得る。
【００８３】
１つより多い修復可能な領域１００を含むデバイスに対して、信号が隣接する修復可能な領域１００の間を横切ることが可能である。図１２は、領域間クリティカルな経路が、第１の修復可能な領域１００−１の第１のクリティカルな行境界７１０に隣接する欠陥行を横断し、第１の領域１００−１の隣の第２の修復可能な領域１００−２の第２のクリティカルな行境界７１２に隣接する別の欠陥行を横断する最悪のシナリオを示す。
【００８４】
言い換えると、領域間クリティカルな経路に対して保守的なタイミング分析を実行するとき、ツール６２０は、第１の領域１００−１の第１の対の隣接する行の間の最大数の垂直ワイヤ交差を識別し、第２の領域１００−２の第２の対の隣接する行の間の最大数の垂直ワイヤ交差を識別する（例えば、クリティカルな経路が横断する各領域１００のクリティカルな行境界における垂直ワイヤ交差の数を識別する）ために使用され得る。クリティカルな経路がクリティカルな行境界を横断する度に、追加のユニットの垂直ルーティング遅延は、クリティカルな行境界の後の行が欠陥である最悪のシナリオを考慮に入れるように引き起こされ得る。従って、最悪のタイミング遅延は、クリティカルな経路を含む各領域に対して最悪の遅延を別々に計算することと、後に別々に計算された遅延を合計して、領域間クリティカルな経路に対する全最悪の遅延を得ることとによって決定され得る。領域間クリティカルな経路に対して最悪の遅延を計算するこのアプローチは、３つ以上の修復可能な領域、５つ以上の修復可能な領域、１０個以上の修復可能な領域等を横断するクリティカルな経路に対して最悪の遅延を計算することに拡大され得る。
【００８５】
図１０〜１２の例は、単に例示的なものに過ぎず、本発明の範囲を限定するように機能しない。概して、各領域１００は、任意の適切な回数で境界を横断するクリティカルなルーティング経路を含むように構成され得るが、他の領域間クリティカルなルーティング経路は、任意の適切な回数で領域境界を横切り得る。
【００８６】
図１３は、タイミング分析９１を実行することに含まれる例示的なステップのフローチャートである。ステップ８００において、ツール６２０は、各領域１００の領域内クリティカルなルーティング経路（すなわち、図１０および１１に関連して説明された単一の修復可能な領域１００内に信号ルーティングを実行するクリティカルなルーティング経路）を識別するために使用され得、デバイス１０上の領域間クリティカルなルーティング経路（すなわち、図１２に関連して説明された隣の修復可能な領域１００の中に信号ルーティングを実行するクリティカルなルーティング経路）を識別するために使用され得る。
【００８７】
ステップ８０２において、ツール６２０は、最大数の垂直ワイヤ交差を有する１対の隣接する行を分離するクリティカルな行境界を識別することによって識別されたクリティカルな経路上に最悪のタイミング分析を実行し得る。各クリティカルな行境界交差は、（クリティカルな行境界の後の行が欠陥であるシナリオを考慮に入れるために）１つの追加のユニットの垂直ルーティング遅延を引き起こし得る。
【００８８】
ステップ８０４において、ツール６２０は、追加のルーティング遅延を考慮に入れると同時に、各識別されたクリティカルなルーティング経路に関連付けられる信号伝播が性能基準を満たすか否かを決定し得る。最悪の信号伝播遅延が受け入れ可能である場合、タイミング分析が完了する。最悪の信号伝播遅延が、設計基準を満たさない場合、処理は、ステップ８６に進んで、最悪の遅延を低減することを潜在的に助け得るさらなる設計最適化（図９）を実行し得る。
【００８９】
追加の実施形態：
追加の実施形態１
集積回路であって、該集積回路は、
スペア行の回路網を含む複数の行の回路網を有する論理領域と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
該複数の迂回回路は、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングするように動作可能であり、各ルーティングセグメントは、該複数の迂回回路のうちのそれぞれの１つを用いて、関連付けられたルーティングセグメントによって駆動されるように動作可能である、集積回路。
追加の実施形態２
上記論理領域は、プログラム可能な論理領域を含む、追加の実施形態１に記載の集積回路。
追加の実施形態３
上記複数の迂回回路は、複数のマルチプレクサーを含む、追加の実施形態１に記載の集積回路。
追加の実施形態４
上記複数の迂回回路は、複数のマルチプレクサーを含み、該複数の迂回回路の各マルチプレクサーは、ユーザ信号を受信するように動作可能な第１の入力と、１つの関連付けられたルーティングセグメントに結合されている第２の入力と、別の関連付けられたルーティングセグメントに結合されている出力とを含む、追加の実施形態１に記載の集積回路。
追加の実施形態５
複数のドライバー回路をさらに含み、該複数のドライバー回路の各々は、上記複数のマルチプレクサーのうちのそれぞれの１つの出力に結合されている、追加の実施形態４に記載の集積回路。
追加の実施形態６
上記複数の迂回回路を制御するように動作可能な複数のヒューズ型の記憶要素をさらに含む、追加の実施形態１に記載の集積回路。
追加の実施形態７
上記論理領域内の上記スペア行の回路網は、所与の高さ内に形成され、上記複数のルーティングセグメントの各ルーティングセグメントは、長くても該所与の高さと同等である長さを有する、追加の実施形態１に記載の集積回路。
追加の実施形態８
別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域と、
上記論理領域の上記スペア行の回路網の第１の迂回回路に結合された第１の端と、該追加の論理領域の選択された行の回路網の第２の迂回回路に結合された反対の第２の端とを有する追加のルーティングセグメントと
をさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、追加の実施形態１に記載の集積回路。
追加の実施形態９
集積回路を製造する方法であって、該集積回路は、
スペア行の論理回路網を含む複数の行の論理回路網と、
複数のルーティングセグメントであって、該複数のルーティングセグメントの各々は、該複数の行の論理回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の論理回路網のうちの隣接する１つに結合された反対の第２の端とを有する、複数のルーティングセグメントと、
複数の迂回回路であって、該複数の迂回回路の各々は、該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている、複数の迂回回路と
を含み、
各迂回回路は、ユーザ信号を受信するように動作可能な第１の入力と、該複数のルーティングセグメントの１つの関連付けられたルーティングセグメントに結合されている第２の入力と、該複数のルーティングセグメントの別の関連付けられたルーティングセグメントに結合されている出力とを含み、
該方法は、
該複数の行の論理回路網のうちの少なくとも１つが欠陥回路を含むか否かを決定することと、
該複数の行の論理回路網のうちの選択された行の論理回路網が欠陥であると決定することに応答して、該スペア行の論理回路を使用にスイッチングすることと、該迂回回路の第２の入力から該迂回回路の出力へ信号をルーティングするように、該欠陥行内に該迂回回路を構成することによって該欠陥行の論理回路網を迂回することとを行うことと
を含む、方法。
追加の実施形態１０
上記複数の行の論理回路網の少なくとも２つの行が欠陥回路を含むことを決定することに応答して、上記集積回路を廃棄することをさらに含む、追加の実施形態９に記載の集積回路。
追加の実施形態１１
上記選択された行の論理回路網が欠陥迂回回路を含むか否かを決定することと、
該選択された行の論理回路網の迂回回路網が欠陥であることを決定することに応答して、上記集積回路を廃棄することと
をさらに含む、追加の実施形態９に記載の集積回路。
追加の実施形態１２
上記複数の行の論理回路網の行の各々に欠陥がないことを決定することに応答して、アイドルモードで上記スペア行の論理回路網を構成することをさらに含む、追加の実施形態９に記載の集積回路。
追加の実施形態１３
上記欠陥行の上記迂回回路を構成することは、該迂回回路に結合されているヒューズ型のメモリ要素をブローすることを含む、追加の実施形態９に記載の集積回路。
追加の実施形態１４
上記複数の迂回回路は、複数の多重化回路を含む、追加の実施形態９に記載の集積回路。
追加の実施形態１５
上記スペア行の論理回路網は、所与の高さを有し、上記複数のルーティングセグメントは、複数の信号ルーティング経路を含み、該複数の信号ルーティング経路の各々は、第１および第２の端末を有し、各信号ルーティング経路の該第１および第２の端末は、該所与の高さより短い距離で分離される、追加の実施形態９に記載の集積回路。
追加の実施形態１６
上記集積回路は、
追加の複数の多重化回路であって、該追加の複数の多重化回路の各々の多重化回路は、上記ルーティングセグメントのうちのそれぞれの１つに結合されている第１の入力と、第２の入力とを有する、追加の複数の多重化回路と、
追加の複数のルーティングセグメントであって、該追加の複数のルーティングセグメントの各々は、上記複数の行の論理回路網のそれぞれの１つ内に形成されている該複数の追加の多重化回路のうちのそれぞれの１つの該第２の入力に結合されている第１の端と、該複数の行の論理回路網のうちの非隣接の１つに結合されている第２の端とを有する、追加の複数のルーティングセグメントと
をさらに含む、追加の実施形態１４に記載の集積回路。
追加の実施形態１７
集積回路を動作させる方法であって、該集積回路は、スペア行の回路網を含む複数の行の回路網を有する論理領域を含み、該集積回路は、複数のルーティングセグメントをさらに含み、該複数のルーティングセグメントの各々は、該複数の行の回路網のうちのそれぞれの１つに結合された第１の端と、該複数の行の回路網のうちの隣接する１つに結合された反対の端とを有し、
該方法は、
各々が該複数のルーティングセグメントのうちのそれぞれの対の間に結合されている複数の迂回回路を用いて、該複数の行の回路網のうちの１つが欠陥回路を含む場合、該スペア行を使用にスイッチングすることと、
該複数の迂回回路のうちのそれぞれの１つを用いて関連付けられたルーティングセグメントと共に各ルーティングセグメントを駆動することと
を含む、方法。
追加の実施形態１８
上記複数の迂回回路は、複数の多重化回路を含む、追加の実施形態１７に記載の集積回路。
追加の実施形態１９
上記集積回路は、別のスペア行の回路網を含む別の複数の行の回路網を有する追加の論理領域をさらに含み、上記方法は、
追加のルーティングセグメントを用いて、上記論理領域の上記スペア行の回路網の第１の迂回回路から信号を受信し、該追加の論理領域の選択された行の回路網の第２の迂回回路に該受信された信号をルーティングすることをさらに含み、
該論理領域の該スペア行の回路網は、該追加の論理領域の該選択された行の回路網に隣接する、追加の実施形態１７に記載の集積回路。
追加の実施形態２０
上記論理領域内の上記スペア行の回路網は、所与の高さ内に形成され、上記追加のルーティングセグメントは、長くても該所与の高さと同等である長さを有する、追加の実施形態１９に記載の集積回路。
【００９０】
上記は、単に、本発明の原理の例示的なものに過ぎず、様々な変更は、本発明の範囲および精神から逸脱することなしに当業者によってなされ得る。上記実施形態は、個々で、または任意の組み合わせで実装され得る。
【図１】
2014093782.tif 000003
【図２】
2014093782.tif 000004
【図３】
2014093782.tif 000005
【図４】
2014093782.tif 000006
【図５】
2014093782.tif 000007
【図６】
2014093782.tif 000008
【図７】
2014093782.tif 000009
【図８】
2014093782.tif 000010
【図９】
2014093782.tif 000011
【図１０】
2014093782.tif 000012
【図１１】
2014093782.tif 000013
【図１２】
2014093782.tif 000014
【図１３】
2014093782.tif 000015