(57)【要約】集積回路（ＩＣ）内に修復可能入力／出力（ＩＯ）回路を実装するための方法および構造が、開示される。本発明の一実施形態は、（ＩＣ）の右側、左側、または内側列に沿って、修復可能（ＩＯ）回路を含む。別の実施形態は、（ＩＣ）の上側、下側、または内側行に沿って、修復可能（ＩＯ）回路を含む。一実施形態では、通常および冗長モードルーティングが、（ＩＯ）バッファ回路と（ＩＯ）レジスタ回路との間に提供される。別の実施形態では、通常および冗長モードルーティングはまた、（ＩＯ）レジスタ回路と（ＩＣ）のコア領域へのルーティングとの間に提供される。一実施形態は、２つ以上の行および／または２つ以上の（ＩＯ）ブロックに及び得る、２つ以上の（ＩＯ）レジスタ間に通常および冗長モードルーティングを提供する。一実施形態は、異なるタイプの（ＩＯ）レジスタに対して、通常および冗長モードルーティングを提供する。
2013522863.tif 000002
【特許請求の範囲】
【請求項１】
集積回路であって、
複数の入力／出力（ＩＯ）バッファ回路と、
予備ＩＯレジスタ回路を含む複数のＩＯレジスタ回路と、
複数の選択回路であって、前記複数の選択回路のうちの選択回路は、ＩＯレジスタ回路が、使用不可能である場合に、予備ＩＯレジスタ回路が利用されてもよく、少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、第１のＩＯバッファ回路と第１のＩＯレジスタ回路との間の通常モードルーティングと、前記第１のＩＯバッファ回路と第２のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、複数の選択回路と
を含む、集積回路。
【請求項２】
前記ＩＯバッファ回路、前記ＩＯレジスタ回路、および前記選択回路は、前記集積回路の左側、右側、または内側の列に沿って、配設され、前記複数のＩＯレジスタ回路のうちのＩＯレジスタ回路は、前記集積回路のコア領域への水平ルーティングに連結される、請求項１に記載の集積回路。
【請求項３】
前記ＩＯレジスタ回路のうちの少なくともいくつかは、前記複数のＩＯレジスタ回路の他のＩＯレジスタ回路に連結され、前記集積回路は、第２の複数の選択回路をさらに含み、前記第２の複数の選択回路のうちの選択回路は、前記第２の複数の選択回路のうちの少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、第１のＩＯレジスタ回路と第２のＩＯレジスタ回路との間の通常モードルーティングと、前記第１のＩＯレジスタ回路と第３のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、請求項１に記載の集積回路。
【請求項４】
前記冗長モードルーティングは、第１の冗長モードルーティングであり、前記第２の複数の選択回路のうちの選択回路はまた、第２の冗長モードルーティングに連結され、前記第２の冗長モードルーティングは、前記第１のＩＯレジスタ回路と第４のＩＯレジスタ回路との間にあり、前記選択回路は、前記集積回路内のどの回路に欠陥があるかに応じて、前記第１の冗長モードルーティングと前記第２の冗長モードルーティングとの間で選択するように構成可能である、請求項３に記載の集積回路。
【請求項５】
第１の冗長モードルーティングと前記第２の冗長モードルーティングとの間の選択は、欠陥がある回路が、前記集積回路の第１の行内にあるかまたは第２の行内にあるかに依存する、請求項４に記載の集積回路。
【請求項６】
前記複数のＩＯレジスタ回路は、第１のタイプおよび第２のタイプを含む異なるタイプのＩＯレジスタ回路を含む、請求項２に記載の集積回路。
【請求項７】
前記第１のタイプは、ＤＱレジスタ回路を含み、前記第２のタイプは、ＤＱＳレジスタ回路を含む、請求項６に記載の集積回路。
【請求項８】
第１の複数の水平ルーティングは、個別の第１のセットのＩＯレジスタ回路に連結され、第１のセットは、ＤＱレジスタ回路と、少なくとも１つのＤＱＳレジスタ回路とを含み、第２の複数の水平ルーティングは、個別の第２のセットのＩＯレジスタ回路に連結され、第２のセットは、ＤＱレジスタ回路を含むが、いずれのＤＱＳレジスタ回路も含まない、請求項７に記載の集積回路。
【請求項９】
特定の行に対するルーティングに連結されたいくつかのセットのＩＯレジスタ回路は、ＩＯ回路のあるブロックの少なくとも一部と、ＩＯ回路の別のブロックの一部とを含む、請求項８に記載の集積回路。
【請求項１０】
第２の複数の選択回路をさらに含み、前記第２の複数の選択回路のうちの選択回路は、前記第２の複数の選択回路のうちの少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、ＤＱＳレジスタ回路と、第１の水平ルーティングへの通常モードルーティングと、第２の水平ルーティングへの冗長モードルーティングとに連結される、請求項８に記載の集積回路。
【請求項１１】
前記ＩＯバッファ回路、前記ＩＯレジスタ回路、および前記選択回路は、前記集積回路の上側、下側、または内側の行に沿って配設され、前記複数のＩＯレジスタ回路のうちのＩＯレジスタ回路は、前記集積回路のコア領域または複数の領域への垂直ルーティングに連結される、請求項１に記載の集積回路。
【請求項１２】
第２の複数の選択回路をさらに含み、前記第２の複数の選択回路のうちの選択回路は、ＩＯレジスタ回路が、使用不可能である場合に、予備ＩＯレジスタ回路が利用されてもよく、少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、第１の垂直ルーティングと第１のＩＯレジスタ回路との間の通常モードルーティングと、前記第１の垂直ルーティングと第２のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、請求項１１に記載の集積回路。
【請求項１３】
第２の複数の入力／出力（ＩＯ）バッファ回路と、
予備ＩＯレジスタ回路を含む第２の複数のＩＯレジスタ回路と、
第２の複数の選択回路であって、前記第２の複数の選択回路のうちの選択回路は、ＩＯレジスタ回路が、使用不可能である場合に、予備ＩＯレジスタ回路が利用されてもよく、少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、第１のＩＯバッファ回路と第１のＩＯレジスタ回路との間の通常モードルーティングと、前記第１のＩＯバッファ回路と第２のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、第２の複数の選択回路と
をさらに含み、
前記第２の複数のＩＯバッファ回路、前記第２の複数のＩＯレジスタ回路、および前記第２の複数の選択回路は、前記集積回路の上側、下側、または内側の行に沿って配設され、前記第２の複数のＩＯレジスタ回路のうちのＩＯレジスタ回路は、前記集積回路のコア領域への垂直ルーティングに連結される、請求項２に記載の集積回路。
【請求項１４】
第３の複数の選択回路であって、前記第３の複数の選択回路のうちの選択回路は、ＩＯレジスタ回路が、使用不可能である場合に、予備ＩＯレジスタ回路が利用されてもよく、前記第３の複数の選択回路のうちの少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、第１の垂直ルーティングと前記第２の複数のＩＯレジスタ回路のうちの第１のＩＯレジスタ回路との間の通常モードルーティングと、前記第１の垂直ルーティングと前記第２の複数のＩＯレジスタ回路のうちの第２のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、第３の複数の選択回路
をさらに含む、請求項１３に記載の集積回路。
【請求項１５】
第２の複数の選択回路であって、前記第２の複数の選択回路のうちの選択回路は、ＩＯレジスタ回路が、使用不可能である場合に、予備ＩＯレジスタ回路が利用されてもよく、前記第２の複数の選択回路のうちの少なくとも特定の選択回路が、通常モードルーティングではなく冗長モードルーティングを選択するように構成されることができるように、前記集積回路のコア領域への第１のルーティングと前記第２の複数のＩＯレジスタ回路の第１のＩＯレジスタ回路との間の通常モードルーティングと、前記第１のルーティングと前記第２の複数のＩＯレジスタ回路の第２のＩＯレジスタ回路との間の冗長モードルーティングとに連結される、第２の複数の選択回路
をさらに含む、請求項１に記載の集積回路。
【請求項１６】
請求項１に記載の集積回路を含む、プログラマブル論理素子。
【請求項１７】
請求項３に記載の集積回路を含む、プログラマブル論理素子。
【請求項１８】
請求項１１に記載の集積回路を含む、プログラマブル論理素子。
【請求項１９】
請求項１３に記載の集積回路を含む、プログラマブル論理素子。
【請求項２０】
請求項１６に記載のプログラマブル論理素子を含む、データ処理システム。
【請求項２１】
請求項１７に記載のプログラマブル論理素子を含む、データ処理システム。
【請求項２２】
請求項１８に記載のプログラマブル論理素子を含む、データ処理システム。
【請求項２３】
請求項１９に記載のプログラマブル論理素子を含む、データ処理システム。
【請求項２４】
集積回路を構成する方法であって、前記集積回路は、修復可能入力／出力（ＩＯ）回路を含み、
前記方法は、
複数のバッファ回路と複数のＩＯレジスタ回路との間の個別のルーティングに対して、第１のＩＯバッファ回路と第１のＩＯレジスタ回路との間の通常モードルーティングまたは前記第１のＩＯバッファ回路と第２のＩＯレジスタ回路との間の冗長モードルーティングのいずれかを選択するように、前記集積回路の複数の選択回路を構成すること
を含む、方法。
【請求項２５】
ＩＯレジスタ回路は、水平ルーティングに連結され、構成は、欠陥がある行と予備行との間にある前記複数の選択回路のうちの選択回路が、冗長モードルーティングを選択するように構成されるように行われる、請求項２４に記載の方法。
【請求項２６】
構成は、欠陥があるＩＯレジスタ回路から予備ＩＯレジスタ回路までのＩＯレジスタ回路に連結される前記複数の選択回路のうちの選択回路が、冗長モードルーティングを選択するように構成されるように行われる、請求項２４に記載の方法。
【請求項２７】
ＩＯレジスタ回路は、垂直ルーティングに連結され、前記方法は、前記複数のＩＯレジスタ回路と複数の垂直ルーティングとの間の個別のルーティングに対して、第１のＩＯレジスタ回路と第１の垂直ルーティングとの間の通常モードルーティングまたは前記第１のＩＯレジスタと第２の垂直ルーティングとの間の冗長モードルーティングのいずれかを選択するように、第２の複数の選択回路を構成することをさらに含む、請求項２４に記載の方法。
【請求項２８】
構成は、欠陥があるＩＯ回路から予備ＩＯ回路までのＩＯレジスタ回路に連結される前記複数の選択回路のうちの選択回路が、冗長モードルーティングを選択するように構成されるように行われる、請求項２７に記載の方法。
【請求項２９】
前記ＩＯレジスタ回路のうちの少なくともいくつかは、前記複数のＩＯレジスタ回路のうちの他のＩＯレジスタ回路に連結され、前記方法は、第１のＩＯレジスタ回路と第２のＩＯレジスタ回路との間の通常モードルーティングと、前記第１のＩＯレジスタ回路と第３のＩＯレジスタ回路との間の冗長モードルーティングとの間で選択するように、第２の複数の選択回路を構成することをさらに含む、請求項２４に記載の方法。
【請求項３０】
前記冗長モードルーティングは、第１の冗長モードルーティングであり、前記方法は、前記第１の冗長モードルーティングと第２の冗長モードルーティングとの間で選択するように、前記第２の複数の選択回路を構成することをさらに含み、前記第２の冗長モードルーティングは、前記第１のＩＯレジスタ回路と第４のＩＯレジスタ回路との間にある、請求項２９に記載の方法。
【請求項３１】
集積回路であって、
複数の入力／出力（ＩＯ）バッファ手段と、
複数のＩＯレジスタ手段と、
前記ＩＯバッファ手段と前記ＩＯレジスタ手段との間で通常モードルーティング手段または冗長モードルーティング手段を選択するように構成可能である複数の選択手段と
を含む、集積回路。
【請求項３２】
前記ＩＯレジスタ手段から前記集積回路のコア領域に信号をルーティングするためのコアルーティング手段と、
前記コアルーティング手段と前記ＩＯレジスタ手段との間で通常モードルーティング手段または冗長モードルーティング手段を選択するように構成可能な第２の複数の選択手段と
をさらに含む、請求項３１に記載の集積回路。
【請求項３３】
前記ＩＯレジスタ手段間で前記通常モードルーティング手段または冗長モードルーティング手段を選択するように構成可能な第２の複数の選択手段をさらに含む、請求項３１に記載の集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
（背景）
本発明は、概して、修復可能集積回路の分野に関する。
【背景技術】
【０００２】
冗長回路を使用して、ＩＣの修復を達成するように構成可能な集積回路（ＩＣ）は、周知である。そのような構成は、ＩＣ上の構成要素を再プログラミングすることを介して、達成されてもよい。プログラマブル要素は、動的または静的ＲＡＭ、フリップ・フロップ、電気的消去可能プログラマブル読取専用メモリ（ＥＥＰＲＯＭ）セル、フラッシュ、ヒューズ、アンチヒューズプログラマブル接続、または他のメモリ要素を含んでもよい。構成はまた、ＩＣの動作の間、ＩＣによって受信される１つ以上の外部発生信号を介して、達成されてもよい。そのような信号によって表されるデータは、ＩＣの動作の間、ＩＣ上に格納されてもよく、または格納されなくてもよい。しかしながら、ＩＣを修復するための構成は、多くの場合、冗長回路を有効にするヒューズ等、１回限りのプログラマブル要素を介して、工場で達成される。
【０００３】
構成をサポートするＩＣの具体的実施例は、プログラマブル論理素子（ＰＬＤ）である。ＰＬＤ（また、複合ＰＬＤ、プログラマブルアレイ論理、プログラマブル論理アレイ、フィールドＰＬＡ、消去可能ＰＬＤ、電気的に消去可能ＰＬＤ、論理セルアレイ、フィールドプログラマブルゲートアレイ、または他の名称でも称される）は、カスタムＩＣの柔軟性とともに、固定ＩＣの利点を提供する。ＰＬＤは、プログラムまたは再プログラムされ得る構成要素（すなわち、プログラマブル要素）を有する。新しいデータを構成要素に置くことによって、ＰＬＤの論理関数および関連付けられたルーティング経路がプログラムまたは再プログラムされる。
【０００４】
冗長回路を伴う、従来のＰＬＤのいくつかの実施例では、素子のコア内の論理回路は、時として、論理アレイブロック（「ＬＡＢ」、また、他の名称でも称される、例えば、「構成可能論理ブロック」、または「ＣＬＢ」）と称される、回路ブロックの行に編成される。いくつかの従来の実装では、コア回路の余剰または「冗長」行が、修復可能領域内に提供され、ある行内の回路が、欠陥がある場合、ルーティング選択回路が、提供され、素子の修復可能領域が、欠陥がある行を有しないように動作することができるよう、故障した行から冗長行にシフトされるように、プログラムされる。
【０００５】
過去の実装は、典型的には、素子のコアエリア内の欠陥がある回路の修復は可能であるが、入力／出力回路（ＩＯ）を含む、周辺エリア内に欠陥がある回路の修復は不可能である。しかしながら、ＩＯが、より複雑になり、ＩＣのより大きな部分を占めるようになるのに伴って、ＩＯ回路の修復をもたらすための方法および構造が、必要とされる。
【発明の概要】
【課題を解決するための手段】
【０００６】
（概要）
本発明の一実施形態は、集積回路（ＩＣ）の右側、左側、または内側列に沿って、修復可能入力／出力（ＩＯ）回路を含む。別の実施形態は、ＩＣの上側、下側、または内側行に沿って、修復可能ＩＯ回路を含む。一実施形態では、通常および冗長モードルーティングが、ＩＯバッファ回路とＩＯレジスタ回路との間に提供される。別の実施形態では、通常および冗長モードルーティングはまた、ＩＯレジスタ回路とＩＣのコア領域へのルーティングとの間に提供される。一実施形態は、２つ以上の行および／または２つ以上のＩＯブロックに及び得る、２つ以上のＩＯレジスタ間に通常および冗長モードルーティングを提供する。一実施形態は、異なるタイプのＩＯレジスタに対して、通常および冗長モードルーティングを提供する。いくつかの実施形態では、冗長モードＩＯ接続は、ＩＣのコア論理領域内の冗長モード接続に伴って、シフトする。他の実施形態では、冗長モードＩＯ接続は、ＩＣのコア領域内の任意の冗長方式から独立して、ＩＯ回路を修復するように動作する。これらおよび他の実施形態の種々の側面が、本明細書にさらに説明される。
【図面の簡単な説明】
【０００７】
例証のみの目的として、本発明の特定の実施形態いくつかの側面が、以下の図面を参照して説明される。
【図１】図１は、本発明の２実施形態による、修復可能入力／出力（「ＩＯ」）回路を含む、集積回路（「ＩＣ」）部分１０００を例証する、概略図である。
【図２】図２は、図１のＩＣ部分１０００によって実装することができる、２つの異なる修復シナリオを例証する。
【図３】図３は、さらなる詳細において、行ｒ６と関連付けられた図１のＩＣ部分１０００のＩＯ回路を例証する。
【図４】図４は、さらなる詳細において、列ｃ６と関連付けられた図１のＩＣ部分１０００のＩＯ回路を例証する。
【図５】図５は、本発明の別の実施形態による、ＩＯレジスタ間の修復可能接続を例証する。
【図６】図６は、本発明による、別の実施形態を例証する。
【図７】図７は、本発明の実施形態による、修復可能ＩＯ回路を伴う、プログラマブル論理素子を含む、例示的データ処理システムを例証する。
【発明を実施するための形態】
【０００８】
（詳細な説明）
以下の説明は、当業者が、本発明を作製および使用可能となるように提示され、特定の用途およびその要件に照らして提供される。例示的実施形態への種々の修正は、当業者には容易に明白となるものであって、本明細書に定義される一般的原理は、発明の精神および範囲から逸脱することなく、他の実施形態および用途に適用されてもよい。したがって、本発明は、示される実施形態に限定されることが意図されるものではなく、本明細書に開示される原理および特徴と一致する最大限の範囲が認められる。
【０００９】
図１は、本発明の２つの実施形態による、修復可能入力／出力（「ＩＯ」）回路を含む、集積回路（「ＩＣ」）部分１０００を例証する、概略図である。第１の実施形態は、（部分１０００の左側周辺に沿った）修復可能水平ＩＯ回路に関し、第２の実施形態は、（部分１０００の上側周辺に沿った）修復可能垂直ＩＯ回路に関する。本明細書でより明確になるように、「水平」および「垂直」は、ルーティングおよびＩＣ上ならびにそのルーティングに連結されたＩＯ回路の異なる配向を区別するための単なる標識である。
【００１０】
ＩＣ部分１０００は、複数の水平ＩＯバッファ回路ブロック１０１ｈと、複数の水平ＩＯレジスタ回路ブロック１０２ｈと、予備水平ＩＯレジスタ回路ブロック１０２ｈ-ｓと、通常モードルーティング１１と、冗長モードルーティング１１ａ（ここおよびその他において、破線によって参照される冗長モードルーティング）と、を含む。ＩＣ部分１０００はさらに、複数の垂直ＩＯバッファ回路ブロック１０１ｖと、複数の垂直ＩＯレジスタ回路ブロック１０２ｖと、予備垂直ＩＯレジスタ回路ブロック１０２ｖ-ｓと、通常モードルーティング１２および１３と、冗長モードルーティング１２ａおよび１３ａと、を含む。
【００１１】
本明細書に例証されるＩＯ回路は、ＩＣ部分の外側領域上に示されるが、代替実施形態では、ＩＯ回路は、ＩＣの内側部分に配設される場合があることが、当業者によって理解されるであろう。例えば、ＩＯ回路の内側行および／または内側列は、ＩＣを内側ＩＯ領域に隣接する複数のコア論理領域に分割する場合がある。そのようなＩＣはまた、ＩＣの周辺上にＩＯ領域を含む場合もあり、または含まない場合もある。
【００１２】
ＩＣ部分１０００のコアは、行ベースの冗長方式によって、一貫して、配設される。具体的には、回路は、行ｒ０、ｒ１、ｒ２、ｒ３、ｒ４、ｒ５、ｒ６、ｒ７、および予備行ｒｓを含む、行内に配設される。そのような方式は、以下のように、修復を可能にする。ＩＣ部分の「通常モード」では、行ｒ０-ｒ７のみ、利用される。（「通常モード」は、本明細書で使用されるように、修復が必要とされず、かつ予備回路が利用されない、ＩＣ部分の動作を指すための単なる標識である）。しかしながら、行のうちの１つ内の回路が、欠陥がある場合、ＩＣ部分は、「冗長モード」で動作するように構成することができ、行へのルーティングは、各シフトされた行ならびに予備行が、その上の行の代わりに使用されるように、不良行から予備行にシフトされる。各ＩＯレジスタ回路ブロック１０２ｈは、ＩＣ部分のコア内の特定の行に対応する、ルーティングインターフェース１０３ｈに信号をルーティングするように連結される。予備ＩＯ回路ブロック１０２ｈ-ｓは、予備行ｒｓに対応する、予備ルーティングインターフェース１０３ｈ-ｓに信号をルーティングするように連結される。ＩＯレジスタ回路ブロック１０２ｈのいずれかが、欠陥がある場合、そのブロックおよびブロックと関連付けられた行は、バイパスすることができる。具体的には、選択回路（図２に照らして例証および説明される）は、欠陥があるＩＯ回路ブロック１０２ｈと関連付けられた行から、予備ＩＯ回路ブロック１０２ｈ-ｓと関連付けられた予備行ｒｓまで、冗長モードルーティング１１ａ（ここおよびその他において、破線によって参照される冗長モードルーティング）を利用するように構成することができ、したがって、欠陥がある水平ＩＯ回路の修復を可能にする。
【００１３】
図１に例証される第２の実施形態では、ＩＣ部分１０００はまた、欠陥がある垂直ＩＯ回路の修復を可能にする。ＩＣ部分１０００の上側周辺に沿ったＩＯレジスタ回路ブロック１０２ｖは、ＩＯバッファ回路ブロック１０１ｖと垂直ルーティングインターフェース１０３ｖとの間で信号を送信および受信する。垂直ルーティングインターフェース１０３ｖは、ＩＣ部分１０００のコア内の回路の列ｃ０、ｃ１、ｃ２、ｃ３、ｃ４、ｃ５、ｃ６、およびｃ７と関連付けられる。予備ＩＯレジスタブロック１０２ｖ-ｓが、提供される。ＩＯレジスタブロック１０２ｖのうちの１つが、欠陥がある場合、ブロック１０２ｖは、欠陥があるブロックから予備ブロック１０２ｖ-ｓへと、右側にシフトすることができる。欠陥があるブロックの直ぐ右側から予備ブロックへのそのようなモードでは、冗長モードルーティング１２ａは、ＩＯバッファ１０１ｖとＩＯレジスタブロック１０２ｖとの間で信号をルーティングするように選択され、冗長モードルーティング１３ａは、ＩＯレジスタブロック１０２ｖと垂直ルーティングインターフェース１０３ｖとの間で信号をルーティングするように選択される。代替ルーティング１３ａは、ＩＯレジスタ回路ブロックを、部分１０００内の回路の列および関連付けられた垂直ルーティングインターフェース１０３ｖが、シフトされない場合でも、右側にシフトさせる。
【００１４】
図２は、図１のＩＣ部分１０００によって実装することができる、２つの異なる修復シナリオを例証する。例証される実施形態では、水平ＩＯレジスタブロック１０２ｈ-４内の回路は、欠陥がある。レジスタブロック１０２ｈ-４は、行ｒ４と関連付けられた水平ルーティングインターフェース１０３ｈに連結される。したがって、行ベースの冗長は、行ｒ４から予備行に係合される。欠陥がある行から予備行への冗長モードルーティング１１ａは、バッファブロック１０１ｈ-４とレジスタブロック１０１ｈ-５との間と、バッファブロック１０１ｈ-５とレジスタブロック１０１ｈ-６との間と、バッファブロック１０１ｈ-６とレジスタブロック１０１ｈ-７との間と、バッファブロック１０１ｈ-７と予備レジスタブロック１０１ｈ-ｓとの間で信号をルーティングするように選択される。行ｒ０からｒ３は、通常モードルーティング１１を使用する。
【００１５】
垂直レジスタブロック１０２ｖ-５内の回路もまた、欠陥がある。ＩＣ部分１０００は、以下のように、冗長モードルーティング１２ａおよび１３ａを選択することによって、欠陥があるＩＯレジスタブロックを伴わずに、動作するように修復される。冗長モードルーティング１２ａは、バッファブロック１０１ｖ-５とレジスタブロック１０２ｖ-６との間と、バッファブロック１０１ｖ-６とレジスタブロック１０２ｖ-７との間と、バッファブロック１０１ｖ-７と予備レジスタブロック１０２ｖ-ｓとの間で信号をルーティングする。冗長モードルーティング１３ａは、レジスタブロック１０２ｖ-６と垂直ルーティングインターフェース１０３ｖ-５との間と、レジスタブロック１０２ｖ-７と垂直ルーティングインターフェース１０３ｖ-６との間と、予備レジスタブロック１０２ｖ-ｓと垂直ルーティングインターフェース１０３ｖ-７との間で信号をルーティングする。列ｃ０からｃ４は、通常モードルーティング１２および１３を使用する。
【００１６】
当業者は、本発明による、集積回路が、複数の修復可能領域を有してもよいことを理解するであろう。例えば、ある予備行から、次の予備行を含まない、それまでの行は、１つの修復可能領域を画定してもよく、その次の予備行から、さらに別の予備行までの行は、別の修復可能領域を画定してもよい等となる。また、複数の修復可能領域が、本発明のいくつかの実施形態による、集積回路のＩＯ回路内に存在してもよく、素子のコアが、冗長方式およびコア内の関連付けられた修復可能領域を有するかどうかに依存してもよく、またはそうでなくてもよいことを理解されるであろう。例えば、図１-２の部分１０００の上側周辺に沿った垂直ＩＯ回路内の回路の修復は、冗長性が、部分１０００のコア内の接続をシフトさせるように係合されるかどうかに依存しないことを理解されるであろう。さらに、当業者は、他の実施形態では、図１-２に例証されるもの等の垂直修復可能ＩＯ回路が、行ベースの冗長方式を有してもよく、またはそうでなくてもよい、集積回路の右側または左側周辺に沿った（または、内側列に沿った）水平修復可能ＩＯ回路として実装され得ることを理解するであろう。言い換えると、本発明のいくつかの実施形態は、集積回路のコア内の行ベースの冗長方式と連動して作用するが、他の実施形態は、集積回路のコア領域が、コア内の修復を可能にする冗長方式を実装するかどうかに関わらず、修復することができる、ＩＯ回路を提供する。
【００１７】
図３は、さらなる詳細において、行ｒ６と関連付けられた図１のＩＣ部分１０００のＩＯ回路を例証する。例証されるように、ＩＯバッファブロック１０１ｈ-６は、ＩＯバッファ対回路１０１ｈ-６ａおよび１０１ｈ-６ｂを含む。ＩＯレジスタブロック１０２ｈ-６は、レジスタ回路ＤＱ１、ＤＱＳ、およびＤＱ２を含む。当業者によって理解されるように、あるデータ通信プロトコルでは、ＤＱ１およびＤＱ２等のＩＯレジスタ回路は、典型的には、データ信号のために利用され、ＤＱＳ等のＩＯレジスタ回路は、典型的には、いくつかの文脈では、データ送信および受信動作を記録するために使用され得る、「ストローブ」信号のために利用される。用語「ＤＱ」および「ＤＱＳ」は、概して、ある通信プロトコルの文脈において使用されるが、それらの用語は、本明細書で使用されるように、異なるタイプの信号（データ信号に関連する「ＤＱ」およびクロック信号等の信号に関連する「ＤＱＳ」、またはタイミング動作に関連し得る他の信号）を処理する、ＩＯレジスタを識別するための単なる標識として使用されるであろう。図３はさらに、本特定の実施例では、マルチプレクサ回路として実装される、選択回路２１、２２、２３、および２４を例証する。
【００１８】
通常モード（修復が必要ない）では、選択回路２１、２２、２３、および２４は、その個別の「Ｂ」入力を選択するように構成されるであろう。したがって、ＩＯバッファ対１０１ｈ６-ａは、レジスタブロック１０２ｈ-６内のＩＯレジスタ回路ＤＱ１に信号を送信し、そこから信号を受信し、ＩＯバッファ対１０１ｈ６-ｂは、レジスタブロック１０２ｈ-６内のＩＯレジスタ回路ＤＱＳおよびＤＱ２に信号を送信し、そこから信号を受信可能であろう。ＤＱ２およびＤＱＳからマルチプレクサ２３への出力信号（および、マルチプレクサ２４からＤＱＳおよびＤＱ２への出力信号）は、ルーティング１１に連結されるように示されるが、例証される実装はまた、便宜上、それらのうちの１つを選択するために、マルチプレクサまたは３ステートドライバ等の回路を含むであろう。便宜上、そのような回路は、略図に示されない。図２における行ｒ５、ｒ６、ｒ７、およびｒｓに対して例証されるもの等の冗長モードでは、選択回路２１、２２、２３、および２４は、その個別の「Ａ」入力を選択するように構成されるであろう。そのような実施例では、ＩＯバッファ対１０１ｈ-６ａは、冗長モードルーティング１１ａを介して、行７（図２に示されるが、図３に別個に示されない、ブロック１０２ｈ-７）におけるレジスタブロック１０２ｈ-７内のＩＯレジスタ回路ＤＱ１に信号を送信し、そこから信号を受信するであろう。同様に、ＩＯバッファ対１０１ｈ-６ｂは、行７におけるレジスタブロック１０２ｈ-７内のＩＯレジスタ回路ＤＱＳおよびＩＯレジスタ回路ＤＱ２に信号を送信し、そこから信号を受信可能であろう。同時に、レジスタブロック１０２ｈ-６内のデータレジスタ回路ＤＱ１は、行５（図２に示されるが、図３に別個に示されない、ブロック１０１ｈ-５）におけるＩＯバッファブロック１０１ｈ-５内のＩＯバッファ対に信号を送信し、そこから信号を受信し、レジスタブロック１０２ｈ-６内のレジスタ回路ＤＱＳおよびＤＱ２は、行５におけるＩＯバッファブロック１０１ｈ-５内の別のＩＯバッファ対に信号を送信し、そこから信号を受信可能であろう。
【００１９】
図４は、さらなる詳細において、列ｃ６と関連付けられた図１のＩＣ部分１０００のＩＯ回路を例証する。例証されるように、ＩＯバッファブロック１０１ｖ-６は、ＩＯバッファ対回路１０１ｖ-６ａおよび１０１ｖ-６ｂを含む。ＩＯレジスタブロック１０２ｖ-６は、レジスタ回路ＤＱ１、ＤＱＳ、およびＤＱ２を含む。図４はさらに、本特定の実施例では、マルチプレクサ回路として実装される、選択回路３０、３１、３２、３３、３４、３５、３６、３７、３８、および３９を例証する。
【００２０】
通常モード（修復が必要ない）では、選択回路３１、３２、３３、および３４は、その個別の「Ｂ」入力を選択するように構成されるであろう。したがって、ＩＯバッファ対１０１ｖ６-ａは、レジスタブロック１０２ｖ-６内のＩＯレジスタ回路ＤＱ１に信号を送信し、そこから信号を受信し、ＩＯバッファ対１０１ｖ６-ｂは、レジスタブロック１０２ｖ-６内のＩＯレジスタ回路ＤＱＳおよびＤＱ２に信号を送信し、そこから信号を受信可能であろう。本モードでは、選択回路３５、３６、３７、３８、および３９はまた、その「Ｂ」入力を選択するように構成されるであろう。したがって、レジスタブロック１０２ｖ-６内のレジスタ回路ＤＱ１、ＤＱＳ、およびＤＱ２はそれぞれ、垂直ルーティングインターフェース１０３ｖ-６に信号を送信し、そこから信号を受信するであろう。
【００２１】
図２におけるＩＯレジスタ１０２ｖ-６、１０２ｖ-７、および１０２ｖ-ｓに対して例証されるもの等の冗長モードでは、選択回路３１、３２、３３、および３４は、その個別の「Ａ」入力を選択するように構成されるであろう。そのような実施例では、ＩＯバッファ対１０１ｖ-６ａは、冗長モードルーティング１２ａを介して、レジスタブロック１０２ｖ-７（図２に示されるが、図４に別個に示されない、ブロック１０２ｖ-７）内のＩＯレジスタ回路ＤＱ１に信号を送信し、そこから信号を受信するであろう。同様に、ＩＯバッファ対１０１ｖ-６ｂは、レジスタブロック１０２ｖ-７内のＩＯレジスタ回路ＤＱＳおよびＩＯレジスタ回路ＤＱ２に信号を送信し、そこから信号を受信可能であろう。同時に、レジスタブロック１０２ｖ-６内のデータレジスタ回路ＤＱ１は、ＩＯバッファブロック１０１ｖ-５（図２に示されるが、図４に別個に示されない、ブロック１０２ｖ-５）内のＩＯバッファ対に信号を送信し、そこから信号を受信し、レジスタブロック１０２ｖ-６内のレジスタ回路ＤＱＳおよびＤＱ２は、ＩＯバッファブロック１０１ｖ-５内の別のＩＯバッファ対に信号を送信し、そこから信号を受信可能であろう。本モードでは、選択回路３５、３６、３７、３８、および３９はまた、その個別の「Ａ」入力を選択するように構成されるであろう。したがって、レジスタ回路ＤＱ１、ＤＱＳ、およびＤＱ２は、垂直ルーティングインターフェース１０３ｖ-５（図２に示されるが、図４に別個に示されない、インターフェース１０３ｖ-５）に信号を送信し、そこから信号を受信し、垂直ルーティングインターフェース１０３ｖ-６は、レジスタブロック１０２-ｖ７内のレジスタ回路に信号を送信し、そこから信号を受信するであろう。
【００２２】
図５は、本発明の別の実施形態による、ＩＯレジスタ間の修復可能接続を例証する。図５に例証されるように、いくつかのＩＯレジスタ回路、例えば、ＤＱＳレジスタ回路は、他の行内の１つ以上のＩＯレジスタ回路に信号を送信してもよい。図５に例証される実施形態は、どの行が修復されているかに応じて、異なるルーティングを提供する、付加的冗長接続によって、修復を達成する、ＩＯレジスタ行のシフトを可能にする、冗長接続を提供する。
【００２３】
具体的には、図５は、それぞれ、行ｒ４、ｒ５、ｒ６、ｒ７、および予備行ｒｓに対応する、水平ＩＯレジスタブロック１０２ｈ-４、１０２ｈ-５、１０２ｈ-６、１０２ｈ-７、および１０２ｈ-ｓ間のある接続のさらなる詳細を例証する。例証されるように、各ＩＯレジスタブロックは、ＤＱＳレジスタと、ＤＱ１およびＤＱ２と標識される２つのデータレジスタと、を有する。図５はさらに、選択回路５１、５２、および５３と、通常モード経路１５と、冗長モード経路１５ａと、を例証する。
【００２４】
通常モード（修復が必要ない）では、ルーティング経路は、以下の接続を利用するように構成される。ブロック１０２ｈ-４内のＤＱＳレジスタは、通常モード経路１５を介して、レジスタブロック１０２ｈ-５内のデータレジスタＤＱ２に接続する。ブロック１０２ｈ-７内のＤＱＳレジスタは、通常モード経路１５を介して、ブロック１０２ｈ-６内のデータレジスタＤＱ１に接続する（選択回路５２は、その「Ｂ」入力を選択するように構成されるであろう）。
【００２５】
冗長モードでは、構成される接続は、どの行が欠陥があるかに依存するであろう。例証される特定の実施形態は、行境界を横断する、接続のための２つの代替冗長接続を提供する。例えば、行ｒ４が、欠陥がある場合、冗長モードでは、冗長モード経路１５ａを介した、行ｒ５内のＤＱＳレジスタ（ＩＯレジスタブロック１０２ｈ-５）から、行ｒ６内のデータレジスタＤＱ２（ＩＯレジスタブロック１０２ｈ-６）への接続（選択回路５３は、その「Ａ２」入力を選択するように構成されるであろう）は、行ｒ４内のレジスタＤＱＳ（ＩＯレジスタブロック１０２ｈ-４）から、行ｒ５内のデータレジスタＤＱ２までの通常モード接続に代わる接続としての役割を果たす。また、行は、行ｒ４から予備行ｒｓにシフトするであろうため、冗長モード経路１５ａを介した、予備行ｒｓ内のＤＱＳレジスタ（ＩＯレジスタブロック１０２ｈ-ｓ）から、行ｒ７内のデータレジスタＤＱ１（ＩＯレジスタブロック１０２ｈ-７）への接続は、行ｒ７内のレジスタＤＱＳから、行ｒ６内のデータレジスタＤＱ１への通常モード接続に代わる接続としての役割を果たす。
【００２６】
しかしながら、ｒ４以外の例証される行が、欠陥がある場合、いくつかの事例では、説明されたもの以外の異なる冗長接続が、提供および利用される必要がある。例えば、行ｒ５が欠陥がある場合、冗長モードでは、異なる冗長モード経路１５ａを介した、行ｒ４内のＤＱＳレジスタから、行ｒ６における行内のデータレジスタＤＱ２への接続（選択回路５３は、その「Ａ１」入力を選択するように構成されるであろう）は、行ｒ４内のレジスタＤＱＳから、行ｒ５内のデータレジスタＤＱ２への通常モード接続に代わる接続としての役割を果たす。別の実施例として、行ｒ７が欠陥がある場合、異なる冗長モード経路１５ａを介した、予備行ｒｓ内のＤＱＳレジスタから、行ｒ６内のデータレジスタＤＱ１への接続（選択回路５２は、その「Ａ」入力を選択するように構成されるであろう）は、行ｒ７内のレジスタＤＱＳから、行ｒ６内のデータレジスタＤＱ１への通常モード接続に代わる接続としての役割を果たす。
【００２７】
当業者が理解するように、図５の実施形態は、選択回路（例証される実施形態では、マルチプレクサまたは「ｍｕｘｅｓ」として実装される）の制御にさらなる複雑性を導入する。図５に示されるように、別の行内のＤＱレジスタへの単一ＤＱＳ接続さえ、複数の冗長接続の必要性をもたらし得る。例えば、選択回路５１および５３は、冗長モードでは、どの行が欠陥があるかに応じて、２つの異なるＤＱＳ信号間で選択しなければならない。どの行が欠陥があるに従って、マルチプレクサのための構成情報を調節する、有線論理回路を構築することが可能であるが、これは、相当な複雑性を伴い得る。しかしながら、このような場合を処理するための比較的に単純な方法は、ソフトウェアに負荷を転送することである。素子をプログラミングするためのビットストリームを生成するソフトウェアは、欠陥がある行の各可能性に対して、あらゆる可能性のある場合を考慮し、ビットストリーム内にこれらのうちのすべてを提供することができる。本実施形態を実装するＰＬＤは、どの行が欠陥があるかを識別する内部情報を備えてもよく、適切なビットのみロードするであろう。
【００２８】
当業者は、ビットストリームが、各冗長領域内の欠陥のすべての組み合わせに対して、十分な情報を含有する必要があるため、ＤＱＳ信号が、２つ以上の冗長領域に及ぶ時、本アプローチが、煩雑となり得ることを理解するであろう。これは、ビットストリームの数の急増につながり得る。例えば、それぞれ、２５行を伴う、４つの領域が存在する場合、ビットストリームは、２５４、すなわち、３９０，６２５個の可能性のある組み合わせを考慮する必要があるであろう。これに対して、２つの合理的解決策が存在する。１つ目は、これらの信号が、典型的には、比較的に小さい範囲にのみ及ぶ必要があるため、単に、ＤＱＳ信号が、実行可能な２つ以上の冗長領域に及ぶのを阻止することである。２つ目は、領域間のＤＱＳ信号が、欠陥に関わらず、固定セットのワイヤ上に伝送されるように、冗長領域間に余剰レベルの冗長多重化を導入することである。
【００２９】
当業者はまた、図５に例証される実施例が、他の観点において簡略化されることを理解するであろう。例えば、選択回路５１および５３を通した通常モード接続がまた、存在してもよい（例えば、関連ＤＱレジスタが、通常モードにおいて、別のＤＱＳ信号を受信する場合）が、別個に示されない。
【００３０】
さらに、図５に例証される原理はまた、ＩＣの上側、下側、または内側行に沿って整列されるＩＯレジスタがＩＯレジスタ間に類似ルーティングを有する別のものに適用されるであろう。具体的には、図１-２におけるＩＣ部分１０００の上側に沿った回路の文脈において、前述されたように、ＩＯレジスタブロックは、そのシフトが、ＩＯブロックが接続されるコア領域内の回路の類似シフトに対応しない場合でも、本発明の一実施形態に従って、ＩＯレジスタブロック修復をもたらす（および、予備レジスタブロックまたはブロックを利用する）ようにシフトしてもよい。これは、そのコア領域または複数の領域内において、列ベースの冗長方式を採用しない、ＩＣの上側、下側、または内側行に沿って配設される、垂直ＩＯレジスタブロックに対して生じてもよい。また、そのコア領域または複数の領域内において、行ベースの冗長方式を採用しない、ＩＣの右側、左側、または内側列に沿って配設される、水平ＩＯレジスタブロックに対して生じてもよい。
【００３１】
図６は、本発明による、別の実施形態を例証する。図６は、行ｒ２、ｒ３、ｒ４、ｒ５、ｒ６、および予備行ｒｓを含む、ＩＣの６つの行に対応する、ＩＯ接続を例証する。各行に対応するルーティングインターフェースは、それぞれ、水平ルーティングインターフェース６０３ｈ-２、６０３ｈ-３、６０３ｈ-４、６０３ｈ-５、６０３ｈ-６、および予備水平ルーティングインターフェース６０３ｈ-ｓを含む。以前に例証された実施形態と異なり、図６の実施形態では、行は、レジスタタイプの同一混合を含有しない。具体的には、各行は、３つのＤＱタイプＩＯブロックを含有するが、代替行（ｒ２、ｒ４、およびｒ６）のみ、ＤＱＳタイプＩＯブロックに連結される。具体的には、行ｒ２に連結される場合、例証される実施形態は、ＤＱレジスタ回路Ｄ２ｃ、Ｄ２ｄ、およびＤ２ｅと、ＤＱＳ回路Ｓ２と、を含み、行ｒ３に連結される場合、例証される実施形態は、ＤＱレジスタＤ２ｆ、Ｄ３ａ、およびＤ３ｂを含み、行ｒ４に連結される場合、例証される実施形態は、ＤＱレジスタＤ３ｃ、Ｄ３ｄ、およびＤ３ｅと、ＤＱＳレジスタＳ３と、を含み、行ｒ５に連結される場合、例証される実施形態は、ＤＱレジスタＤ３ｆ、Ｄ４ａ、およびＤ４ｂを含み、行ｒ６に連結される場合、例証される実施形態は、ＤＱレジスタＤ４ｃ、Ｄ４ｄ、およびＤ４ｅと、ＤＱＳレジスタＳ４と、を含み、予備行ｒｓに連結される場合、例証される実施形態は、ＤＱレジスタＤ４ｆ、Ｄ５ａ、およびＤ５ｂと、ＤＱＳレジスタＳ５と、を含む。例証される実施形態はまた、ＩＯバッファ対回路６１１-２ｃ、６１１-２ｄ、６１１-２ｅ、６１１-２ｆ、６１１-３ａ、６１１-３ｂ、６１１-３ｃ、６１１-３ｄ、６１１-３ｅ、６１１-３ｆ６１１-４ａ、６１１-４ｂ、６１１-４ｃ、６１１-４ｄ、および６１１-４ｅを含む。例証される実施形態はまた、通常モードルーティング経路６１および６２と、冗長モードルーティング経路６１ａおよび６２ａと、を含む。
【００３２】
例証される配設は、いくつかの行ルーティングインターフェース（本実施例では、行ｒ３に対して６０３ｈ-３および行ｒ５に対して６０３ｈ-５）が、通常モードでは、３つのＤＱデータレジスタに連結されるが、いずれのＤＱＳレジスタにも連結されず、他の行ルーティングインターフェース（本実施例では、行ｒ２に対して６０３ｈ-２、行ｒ４に対して６０３ｈ-４、および行ｒ６に対して６０３ｈ-６）が、３つのＤＱデータレジスタおよび１つのＤＱＳレジスタに連結される、パターンを提供する。言い換えると、通常モードでは、ＤＱＳレジスタは、１つおきの行にのみ存在する。より一般的には、少なくとも１つのタイプのレジスタが、通常モード行の全部ではないが、一部に存在する。
【００３３】
冗長性は、例証される実施形態では、ある行内のバッファ回路から、別の行内のＩＯレジスタ回路（ＤＱまたはＤＱＳ）に、冗長モード経路６１ａを提供し、ある行内のＤＱＳレジスタ回路から、別の行内の行ルーティングインターフェースに、付加的冗長モード経路６２ａを提供することによって、処理される。例えば、行ｒ２が欠陥がある場合、冗長モードは、以下のように実装される。選択回路（他の図に示されるが、図６に別個に示されない、選択回路実施例）は、ルーティングが、以下の６１１-２ｃとＤ２ｆとの間と、６１１-２ｄとＤ３ａならびに６１１-２ｄとＳ３との間と、６１１-２ｅとＤ３ｂとの間と、６１１-２ｆとＤ３ｃとの間と、６１１-３ａとＤ３ｄとの間と、６１１-３ｂとＤ３ｅとの間と、６１１-３ｃとＤ３ｆとの間と、６１１-３ｄとＤ４ａならびに６１１-３ｄとＳ４との間と、６１１-３ｅとＤ４ｂとの間と、６１１-３ｆとＤ４ｃとの間と、６１１-４ａとＤ４ｄとの間と、６１１-４ｂとＤ４ｅとの間と、６１１-４ｃとＤ４ｆとの間と、６１１-４ｄとＤ５ａならびに６１１-４ｄとＳ５と、６１１-４ｅとＤ５ｂとの間におけるＩＯバッファ対回路とＩＯレジスタ回路との間で使用されるように、冗長モード経路６１ａ（通常モード経路６１ではなく）を選択するように構成される。このように、行ｒ２（欠陥がある行）から予備行ｒｓへの行は、各行が、その上の行に代わり、予備ＩＯレジスタ回路Ｄ４ｆ、Ｄ５ａ、Ｄ５ｂ、およびＳ５が、冗長モードにおいて利用されるように、下方シフトする。さらに、ＤＱＳレジスタは、すべての行に存在しないため、付加的選択回路（他の図に示されるが、図６に別個に示されない、選択回路実施例）は、ルーティングインターフェース６０３ｈ-３とＤＱＳレジスタＳ３との間と、ルーティングインターフェース６０３ｈ-５とＤＱＳレジスタＳ４との間と、ルーティングインターフェース６０３ｈ-ｓとＤＱＳレジスタＳ５との間におけるＤＱＳ回路と水平行ルーティングインターフェースとの間のルーティングに対して、冗長モード経路６２ａ（対応する通常モード経路６２ではなく）を選択するように構成される。関連ＤＱ回路（例えば、Ｄ２ｆ、Ｄ３ａ、Ｄ３ｂ、Ｄ３ｃ、Ｄ３ｄ、Ｄ３ｆ、Ｄ４ａ、Ｄ４ｂ、Ｄ４ｃ、Ｄ４ｄ、およびＤ４ｅ）と対応する行ルーティングインターフェース（例えば、行ルーティング６０３ｈ-３、６０３ｈ-４、６０３ｈ-５、および６０３ｈ-６）との間の接続に対して、ＤＱ回路のパターンは、行から行（各行は、３つ有する）へと同一であるため、同一経路６１が、通常および冗長モードで使用されることに留意されたい。したがって、行から行へと変化するＤＱＳ回路のパターンのみ、ＤＱＳ回路と行ルーティングインターフェースとの間に余剰選択回路および冗長モード経路を必要とする。
【００３４】
代替実施形態では、予備ＩＯレジスタ回路は、効果的に、２行高くあって、したがって、ＩＯレジスタを２行下方シフトさせ、修復を達成し、行から行へとＤＱおよびＤＱＳレジスタのパターンを維持することを可能にするように提供されてもよい。しかしながら、そのような実施形態は、行ルーティングインターフェースへのＤＱＳおよびＤＱ接続両方を関連する対応する行までシフトさせるために、付加的選択回路および冗長モード経路を要求するであろう。そのような代替は、概念的により単純である場合があるが、図６に例証される実施形態より多くのルーティングリソースを要求するであろう。
【００３５】
本発明のいくつかの実施形態は、行ベースの冗長方式（「水平」ルーティングは、概して、行の方向においてルーティングし、「垂直」ルーティングは、概して、複数の行に及ぶように配向される、および／または列の方向にルーティングする）を有する、プログラマブル論理素子の文脈において説明されるが、本発明は、列ベースの冗長方式を使用するプログラマブル論理素子にも同等に適用可能である。行および列の用語は、素子の配向に相対的であるため、相互に垂直な行および列を有する典型的素子では、素子を単に９０度ルーティングすることによって、用語「行」および「列」を互換してもよい。
【００３６】
さらに、用語「行」および「列」は、典型的には、項目の直線配設と関連付けられるが、代替実施形態は、必ずしも、本発明の精神および範囲から逸脱することなく、湾曲または部分的に湾曲である、あるいは時折急激な方向転換または間隙を有する、あるいはＩＣの領域全体に及ばない、行または列配設を採用してもよい。可変配向のそのような行を含む素子は、依然として、本発明の範囲内である、冗長方式を有してもよい。さらに、本発明のいくつかの実施形態は、素子のコア論理領域または複数の領域が、行ベース（または、列ベース）の冗長方式を有していない場合でも、周辺内（または、内側ＩＯ領域内）に、ＩＯ回路の修復のためのＩＯ冗長性を提供する。
【００３７】
図７は、本発明の実施形態による、修復可能ＩＯ回路を伴う、ＰＬＤ７０１を含む、例示的データ処理システム７００を例証する。ＰＬＤ７０１は、少なくともいくつかの修復可能ＩＯ回路を含む、少なくとも１つの周辺ＩＯ領域７０２を含む。例証を簡単にするために、修復可能ＩＯ回路を伴う、単一周辺ＩＯ領域のみ、示される。しかしながら、ＰＬＤ７０１等のＰＬＤは、例えば、素子の左側、上側、および／または下側周辺または内側ＩＯ行および／またはＩＯ列上に、付加的修復可能ＩＯ領域を有してもよい。
【００３８】
データ処理システム７００は、以下の付加的構成要素のうちの１つ以上を含んでもよい：プロセッサ７４０、メモリ７５０、入／出力（Ｉ／Ｏ）回路７２０、ならびに周辺素子７３０および／または他の構成要素。これらの構成要素は、システムバス７６５によってともに連結され、エンドユーザシステム７７０内に含有される、回路基板７６０上に装着される。システム７００等のデータ処理システムは、エンドユーザシステム７７０等の単一エンドユーザシステムを含んでもよく、またはデータ処理システムとして、協働する複数のシステムを含んでもよい。
【００３９】
システム７００は、コンピュータネットワーキング、データコンピュータネットワーキング、計測手段、動画処理、デジタル信号処理、あるいはシステム設計内でプログラマブルまたは再プログラマブル論理を使用する利点が望ましい任意の他の用途等、様々な用途において使用可能である。ＰＬＤ７０１を使用して、種々の異なる論理関数を行うことが可能である。例えば、ＰＬＤ７０１は、プロセッサ７４０と協働する（または、代替実施形態では、ＰＬＤ自体が、単独システムプロセッサとして作用してもよい）、プロセッサまたはコントローラとして構成可能である。また、ＰＬＤ７０１は、システム７００内の共有リソースへのアクセスを調整する、アービタとして使用されてもよい。さらに別の実施例では、ＰＬＤ７０１は、プロセッサ７４０と、システム７００内の他の構成要素のうちの１つとの間のインターフェースとして構成可能である。システム７００は、例示にすぎないことに留意されたい。
【００４０】
一実施形態では、システム７００は、デジタルシステムである。本明細書で使用されるように、デジタルシステムは、単なるデジタルシステムに限定されることが意図されるものではなく、また、デジタルおよびアナログサブシステムの両方を含む、混合システムも包含する。
【００４１】
本発明は、特に、例証される実施形態に関して説明されたが、本開示に基づいて、種々の代替、修正、および適応が成されてもよく、それらは、本発明の範囲内であることを理解されるであろう。本発明は、最も実用的かつ好ましい実施形態と現在考えられるものに関して説明されたが、本発明は、開示される実施形態に限定されるものではなく、以下の請求項によってのみ限定されることを理解されたい。
【図１】
2013522863.tif 000003
【図２】
2013522863.tif 000004
【図３】
2013522863.tif 000005
【図４】
2013522863.tif 000006
【図５】
2013522863.tif 000007
【図６】
2013522863.tif 000008
【図７】
2013522863.tif 000009
【国際調査報告】
2013522863.tif 000010
2013522863.tif 000011