JP2002033654A - プログラマブルロジックデバイス - Google Patents

プログラマブルロジックデバイス

Info

Publication number
JP2002033654A
JP2002033654A JP2001129184A JP2001129184A JP2002033654A JP 2002033654 A JP2002033654 A JP 2002033654A JP 2001129184 A JP2001129184 A JP 2001129184A JP 2001129184 A JP2001129184 A JP 2001129184A JP 2002033654 A JP2002033654 A JP 2002033654A
Authority
JP
Japan
Prior art keywords
buffer
array blocks
segmentation
row
logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001129184A
Other languages
English (en)
Other versions
JP2002033654A5 (ja
JP4558234B2 (ja
Inventor
Triet Nguyen
トゥリエット・ニューイェン
Changsong Zhang
シャンソン・ツァン
David Jefferson
デイビッド・ジェファーソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Altera Corp
Original Assignee
Altera Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Altera Corp filed Critical Altera Corp
Publication of JP2002033654A publication Critical patent/JP2002033654A/ja
Publication of JP2002033654A5 publication Critical patent/JP2002033654A5/ja
Application granted granted Critical
Publication of JP4558234B2 publication Critical patent/JP4558234B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/17764Structural details of configuration resources for reliability
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 冗長回路構成を有するプログラマブルロジッ
クデバイスにおけるラインをセグメント化するための方
法および装置を提供する。 【解決手段】 プログラマブルロジックデバイスは、第
1複数個の論理アレイブロックを含み、第1複数個の論
理アレイブロックは、第1の論理アレイブロックおよび
第2の論理アレイブロックを含み、さらに、セグメンテ
ーションバッファに結合されかつ第1の論理アレイブロ
ックにプログラム可能に結合される第1のプログラム可
能な配線ラインと、セグメンテーションバッファに結合
されかつ第2の論理アレイブロックにプログラム可能に
結合される第2のプログラム可能な配線ラインとを含
む。

Description

【発明の詳細な説明】
【0001】
【発明の背景】本発明は、プログラム可能論理集積デバ
イス(PLD)に関し、より特定的には、冗長回路の使
用と一致する態様で垂直ラインセグメンテーションを実
現するための技術および回路構成(circuitry)に関す
る。
【0002】PLDは、この数年来で至る所で見られる
ようになっており、いくつか例を挙げると、電気通信、
データ通信、コンピュータ周辺および産業を含むあらゆ
る主要なエレクトロニクス市場における機器に使用され
ている。それらは、バイオテクノロジー、ビデオ、自動
車、パーソナルコンピュータ、ならびにネットワークス
イッチおよびルータの分野における特化されたシステム
の主要コンポーネントである。PLDの使用が増える
と、市場における競争は厳しくなり、PLDが売れる価
格は下がりつづけている。そのような環境における利益
幅を向上しかつ維持するために、製造業者は、自らの製
品のコストに寄与するあらゆる要素を低減するよう模索
している。
【0003】ある主要な要素は、集積回路ダイのコスト
である。コスト変数は、ダイのサイズおよび歩留まりを
含む。ダイが小さくなると、製造される各ウェハ上のダ
イの合計または総計は大きくなる。歩留まりが高くなる
ということは、廃棄される必要のあるダイの総計が減
り、より多くのダイが売れるということを意味する。
【0004】PLDのダイ面積の比較的大きい部分が、
プログラム可能な配線などの経路付け資源に割当てられ
る。ある論理素子が別の素子に接続されるならば、少な
くとも1つの経路付けライン(line)、またはトレース
(trace)が使用される。トレースが必要とされるより
も長くなれば、余分なトレース長さが無駄なダイ面積を
もたらすことになる。これが起きる場合、ダイのコスト
は不必要に増大する。これらのトレースを短くする方法
の1つは、それらを別個のライン部にセグメント化する
ことである。各セグメント化された部分は異なった論理
素子を互いに接続することができるので、これにより1
つのラインが2つ以上の信号を伝達することが可能にな
る。
【0005】冗長回路は、良好なダイの製造の歩留まり
を向上するために集積回路において使用される。集積回
路が適性に機能しない特定の回路を有する場合、集積回
路は廃棄される。しかし、もし冗長回路構成がオンチッ
プで含まれれば、それが機能しない回路構成と置換可能
である。このようにして、集積回路は適切に機能するよ
うにされ、販売可能になる。
【0006】したがって、歩留まりの向上を可能にしな
がらも、ダイのサイズが最小とされ得るように、冗長回
路の使用と一致する態様でPLD上のラインセグメンテ
ーションを見込むことが望ましい。
【0007】
【発明の概要】したがって、本発明のさまざまな実施例
は、論理アレイブロックの冗長の行(row)とともに主
バッファおよびステッチバッファを提供する。セグメン
テーションバッファとも言われる主バッファは、長いラ
インを駆動する支援をし、トレースに沿ったいずれかの
方向に信号を送ることのできるドライバとして構成可能
である。主バッファは、ラインのセグメント化された部
分が別個の異なった信号を伝達可能であるように、開回
路としてさらに構成可能である。冗長の行は、PLDに
おける欠陥のある行の代わりになる。置換は、各行の機
能が欠陥のあるものに始まって、ある行から冗長の位置
へと移動する際に起きる。
【0008】このシフトは、いくつかの場合において主
バッファの構成の改変を必要とする。この改変は、主バ
ッファの初期状態、欠陥のある行の場所、およびライン
上の信号を駆動する回路構成の場所に依存する。ステッ
チバッファが、主バッファが開回路からドライバへ変わ
るような状況においてラインセグメンテーションを保つ
ために、加えられる。
【0009】欠陥のある行の場所の存在を補償するため
にPLDのプログラミングを変える必要がないことが非
常に望ましい。すなわち、各デバイスは、それが欠陥の
ある行を有するかどうかにかかわらず、ユーザには同じ
ように見えるべきである。したがって、本発明の実施例
は、垂直ラインを駆動する回路の場所に関してデータを
オンチップで記憶し、かつ冗長の目的のためにシフトす
べきかどうかを行に告げる命令を記憶することに備え
る。この記憶されたデータを用いて、PLDプログラミ
ングをオンチップで修正し、主バッファおよびステッチ
バッファに与えられる命令へ改変をもたらす。
【0010】本発明のある例示的実施例は、第1の複数
個の論理アレイブロックを含むプログラマブルロジック
デバイスを提供する。第1の複数個の論理アレイブロッ
クは、第1の論理アレイブロックおよび第2の論理アレ
イブロックと、セグメンテーションバッファに結合され
かつ第1の論理アレイブロックにプログラム可能に結合
される第1のプログラム可能な配線ライン(interconne
ct line)と、セグメンテーションバッファに結合され
かつ第2の論理アレイブロックにプログラム可能に結合
される第2のプログラム可能な配線ラインとを含む。セ
グメンテーションバッファは、第1のプログラム可能な
配線ラインと第2のプログラム可能な配線ラインとの間
に選択的に開回路を与えることができ、バッファは、第
1のプログラム可能な配線ラインから第2のプログラム
可能な配線ラインに信号を駆動し、またはバッファは、
第2のプログラム可能な配線ラインから第1のプログラ
ム可能な配線ラインに信号を駆動する。
【0011】実施例は、第2の複数個の論理アレイブロ
ックをさらに含み得り、第2の複数個の論理アレイブロ
ックは冗長であり、第1の複数個の論理アレイブロック
の1つに欠陥があるとき第1の複数個の論理アレイブロ
ックの少なくともいくつかと置換するために使用され
る。
【0012】本発明のさらなる例示的実施例は、プログ
ラマブルロジックデバイスであって、第1の複数個の論
理アレイブロックの側に沿って連続的に配置される複数
個のセグメンテーションバッファと連続的に配置される
第1の複数個の論理アレイブロックと、第1の複数個の
論理アレイブロックから離れる複数個のセグメンテーシ
ョンバッファの側に沿って連続的に配置される第2の複
数個の論理アレイブロックと、複数個のセグメンテーシ
ョンバッファから離れる第2の複数個の論理アレイブロ
ックの側に沿って連続的に配置される複数個のステッチ
バッファとを含むプログラマブルロジックデバイスを提
供する。デバイスはまた、第2の複数個の論理アレイブ
ロックから離れる複数個のステッチバッファの側に沿っ
て連続的に配置される第3の複数個の論理アレイブロッ
クと、複数個のステッチバッファから離れる第3の複数
個の論理ゲートの側に沿って連続的に配置される第4の
複数個の論理アレイブロックとを含む。
【0013】配線、具体的には、第1の複数個の論理ア
レイブロックにプログラム可能に結合されかつ複数個の
セグメンテーションバッファに結合される第1の複数個
の配線ラインと、第2の複数個の論理アレイブロックに
プログラム可能に結合されかつ複数個のセグメンテーシ
ョンバッファおよび複数個のステッチバッファに結合さ
れる第2の複数個の配線ラインと、第3の複数個の論理
アレイブロックおよび第4の複数個の論理アレイブロッ
クにプログラム可能に結合されかつ複数個のステッチバ
ッファに結合される第3の複数個の配線ラインとが提供
される。複数個のセグメンテーションバッファは、第1
の複数個の配線ラインから第2の複数個の配線ラインに
信号を駆動し、または第2の複数個の配線ラインから第
1の複数個の配線ラインに信号を駆動し、または第1の
複数個の配線ラインと第2の複数個の配線ラインとの間
に開回路を与えるよう構成可能である。
【0014】本発明のさらなる例示的実施例は、プログ
ラマブルロジックデバイスにおけるプログラム可能な配
線ラインをセグメント化する方法を提供する。デバイス
は、複数個の論理アレイブロックの行と、セグメンテー
ションバッファと、論理アレイブロックの冗長の行とを
含む。前記方法は、欠陥のある論理アレイブロックが存
在するかどうかを決定するステップを含み、欠陥のある
論理アレイブロックが存在しなければ、セグメンテーシ
ョンバッファを変更せず、さもなくば欠陥のある論理ア
レイブロックの場所が決定される。欠陥のある論理アレ
イブロックの場所がセグメンテーションバッファと論理
アレイブロックの冗長の行との間にあるのであれば、セ
グメンテーションバッファに変更はなされず、さもなく
ば活性のラインドライバの場所が、セグメンテーション
バッファに結合されるラインのために決定される。活性
のラインドライバの場所が、セグメンテーションバッフ
ァと論理ブロックの冗長の行との間でないセグメンテー
ションバッファの隣の論理ブロックの行にあれば、セグ
メンテーションバッファは、セグメンテーションバッフ
ァと冗長の行との間の論理アレイブロックから、セグメ
ンテーションバッファと冗長の行との間でない論理アレ
イブロックに信号を駆動するように設定され、さもなく
ばセグメンテーションバッファは、セグメンテーション
バッファと冗長の行との間でない論理アレイブロックか
ら、セグメンテーションバッファと冗長の行との間の論
理アレイブロックに信号を駆動するように設定される。
【0015】本発明の性質および利点は、以下のより詳
細な説明および添付の図面を参照してよりよく理解され
るであろう。
【0016】
【詳細な説明】図1は、本発明が実施され得るデジタル
システムのブロック図を示す。システムは、単一のボー
ド上、複数のボード上、または複数のエンクロージャ内
にも設けられ得る。図1は、プログラマブルロジックデ
バイス121が利用され得るシステム101を例示す
る。プログラマブルロジックデバイスは、時に、PA
L、PLA、FPLA、PLD、CPLD、EPLD、
EEPLD、LCA、またはFPGAと言われ、カスタ
ム集積回路の柔軟性とともに固定集積回路の利点を提供
する周知の集積回路である。そのようなデバイスは、ユ
ーザが、ユーザの特定のニーズに合うように標準の既製
の論理素子を電気的にプログラムすることを可能にす
る。たとえば、汎用のために引用により援用される米国
特許番号第4,617,479号を参照されたい。プロ
グラマブルロジックデバイスは、現在、たとえば、Alte
raのMAX(R)、FLEX(R)、およびPLDのA
PEXTMシリーズに代表される。これらは、たとえば、
米国特許番号第4,871,930号、第5,241,
224号、第5,258,668号、第5,260,6
10号、第5,260,611号、第5,436,57
5号、およびAltera Data Book (1999)に記載され、そ
のすべては、この出願において引用される他の文献とと
もに、汎用のために完全に引用により援用される。プロ
グラム可能論理集積回路およびその動作は、当業者には
よく知られている。
【0017】図1の特定の実施例において、処理装置1
01は、メモリ105およびI/O111に結合され、
プログラマブルロジックデバイス(PLD)121を組
込む。PLD121は、具体的には、接続131を介し
てメモリ105および接続135を介してI/O111
に結合され得る。システムは、プログラムされたデジタ
ルコンピュータシステム、デジタル信号処理システム、
特殊デジタルスイッチングネットワーク、または他の処
理システムであってもよい。さらに、そのようなシステ
ムは、単に例として、電気通信システム、自動車システ
ム、制御システム、消費者電子部品、パーソナルコンピ
ュータなどの広範な用途のために設計され得る。
【0018】処理装置101は、処理または記憶のため
に適切なシステムコンポーネントにデータを向け、メモ
リ105に記憶されたもしくはI/O111を用いて入
力されたプログラム、または他の同様の機能を実行す
る。処理装置101は、中央処理装置(CPU)、マイ
クロプロセッサ、浮動小数点コプロセッサ、グラフィッ
クスコプロセッサ、ハードウェアコントローラ、マイク
ロコントローラ、コントローラとしての使用のためにプ
ログラムされたプログラマブルロジックデバイス、また
は他の処理装置であってもよい。さらに、多くの実施例
において、しばしばCPUは必要とされない。たとえ
ば、CPUの代わりに、1つ以上のPLD121がシス
テムの論理演算を制御してもよい。いくつかの実施例に
おいて、処理装置101は、コンピュータシステムであ
ってもよい。メモリ105は、ランダムアクセスメモリ
(RAM)、リードオンリメモリ(ROM)、固定もし
くはフレキシブルディスク媒体、PCカードフラッシュ
ディスクメモリ、テープ、またはいかなる他の記憶取出
手段、またはこれらの記憶取出手段のいかなる組合せで
あってもよい。PLD121は、図1のシステム内で多
くの異なった目的を果たし得る。PLD121は、処理
装置101の論理的ビルディングブロックであってもよ
く、その内部動作および外部動作をサポートする。PL
D121は、システム動作におけるその特定の役割を実
行するのに必要な論理機能を実現するようにプログラム
される。
【0019】図2は、図1のPLD121の全体的な内
部アーキテクチャおよび編成の簡素化されたブロック図
である。PLDのアーキテクチャ、編成および回路設計
の多くの詳細は、本発明の理解のために不要であり、そ
のような詳細は図2に示されない。
【0020】図2は、36個の論理アレイブロック(L
AB)200の、6×6の2次元のアレイを示す。LA
B200は、論理的機能を行なうよう構成またはプログ
ラムされる論理的資源の物理的にグループ化された組で
ある。LABの内部アーキテクチャは、図3と関連して
以下により詳細に記載される。PLDは、任意の数のL
ABを含んでもよく、図2のPLD121に示すより多
くても少なくてもよい。一般的には、将来的に、技術が
進歩し向上すると、論理アレイブロックの数がより大き
いプログラマブルロジックデバイスが間違いなく作られ
るであろう。さらに、LAB200は、正方形のマトリ
ックスまたはアレイに編成される必要はなく、たとえ
ば、アレイは、5×7または20×70の、LABのマ
トリックスに編成されてもよい。
【0021】LAB200は、グローバル配線構造にプ
ログラム可能に接続されてもされなくてもよい入力およ
び出力(図示せず)を有し、グローバル水平配線(G
H)210とグローバル垂直配線(GV)220のアレ
イを含む。図2には単一の線として示されているが、各
GH210およびGV220ラインは、複数個の信号導
体を表わし得る。LAB200の入力および出力は、隣
接するGH210および隣接するGV220にプログラ
ム可能に接続可能である。GH210およびGH220
配線を利用して、複数のLAB200は、単一のLAB
200を使用して実現可能であるよりもより大きくより
複雑な論理的機能を実現するよう接続および組合せ可能
である。
【0022】ある実施例では、GH210導体およびG
V220導体は、これらの導体の交差点225でプログ
ラム可能に接続可能とされてもよいしされなくてもよ
い。さらに、GH210導体およびGV220導体は、
他のGH210導体およびGV220導体への複数の接
続をなしてもよい。さまざまなGH210導体およびG
V220導体がプログラム可能に互いに接続されて、P
LD121上のある場所のLAB200からPLD12
1上の別の場所の別のLAB200への信号経路を生成
してもよい。信号は、複数個の交差点225を通過し得
る。さらに、あるLAB200からの出力信号を1つ以
上のLAB200の入力に向けることができる。また、
グローバル配線を用いて、LAB200からの信号を同
じLAB200へ戻すことができる。本発明の具体的実
施例において、選択されたGH210導体のみが、GV
220導体の選択されたものにプログラム可能に接続可
能である。さらに、さらなる実施例において、GH21
0導体およびGV220導体は、特に、両方ではないが
入力または出力などの、特定の方向に信号を送るために
使用されてもよい。
【0023】他の実施例において、プログラム可能論理
集積回路は、特定の数のLABに接続され、必ずしもL
ABの行または列全体ではない、特別のまたはセグメン
ト化された配線を含み得る。たとえば、セグメント化さ
れた配線は、2つ、3つ、4つ、5つ、またはそれ以上
のLABをプログラム可能に接続し得る。
【0024】図2のPLDアーキテクチャは、チップの
周辺において入力出力ドライバ230をさらに示す。入
力出力ドライバ230は、外部のオフチップ回路構成に
PLDをインターフェイスさせるためのものである。図
2は、32個の入力出力ドライバ230を示すが、PL
Dは、任意の数の入力出力ドライバを含んでもよく、図
示される数より多くても少なくてもよい。各入力出力ド
ライバ230は、入力ドライバ、出力ドライバ、または
双方向ドライバとして使用されるよう構成可能である。
プログラマブル論理集積回路の他の実施例において、入
力出力ドライバには集積回路コア自体が埋込まれてもよ
い。入力出力ドライバのこの埋込まれる配置はフリップ
チップパッケジングで使用され得、入力出力ドライバへ
の信号の経路付けの寄生を最小にする。
【0025】図3は、図2のLAB200の簡素化され
たブロック図を示す。LAB200は、時に「論理セ
ル」と呼ばれる可変数の論理素子(LE)300と、ロ
ーカル(または内部)配線構造310とから構成され
る。LAB200は、8個のLE300を有するが、L
AB200は任意の数のLEを有してもよく、8個より
多くても少なくてもよい。本発明のさらなる実施例にお
いて、LAB200は、合計で16個のLEになる、8
個のLEの2つの「バンク」を有し、各バンクは、別個
の入力、出力、制御信号およびキャリーチェーン(carr
y chain)を有する。
【0026】LE300の一般的な概略を、本発明の基
本的理解に十分なほどにここに示す。LE300は、P
LDの最小の論理的ビルディングブロックである。GH
210およびGV220からなどの、LABの外部の信
号は、ローカル配線構造310を介してLE300にプ
ログラム可能に接続される。ある実施例では、本発明の
LE300は、4変数ブール演算などの多数の変数の論
理的関数を与えるよう構成可能である関数生成器を組込
む。組合せ関数だけでなく、LE300は、たとえばD
フリップフロップを用いて、順次関数およびレジスタ関
数をサポートする。
【0027】LE300は、LAB200の外に、GH
210およびGV220に接続可能である組合せおよび
レジスタ出力を与える。さらに、LE300からの出力
は、ローカル配線構造310に内部で戻されてもよく、
ローカル配線構造310を介して、あるLE300から
の出力は、グローバル配線構造のGH210およびGV
220を使用することなしに、他のLE300の入力に
プログラム可能に接続されてもよい。ローカル配線構造
310は、限られたグローバル資源GH210およびG
V220を利用することなしに、LEの短距離の配線を
可能にする。ローカル配線構造310およびローカルフ
ィードバックを介して、LE300は、単一のLE30
0を使用して実現可能であるよりもより大きくより複雑
な論理機能を形成するようプログラム可能に接続可能で
ある。さらに、その低減されたサイズおよびより短い長
さのために、ローカル配線構造310は、グローバル配
線構造と比べて低減された寄生を有する。したがって、
ローカル配線構造310により、一般的には、信号は、
グローバル配線構造を介してよりもより高速に伝搬する
ことが可能である。
【0028】図4は、図2のものと同様のPLDアーキ
テクチャを示す。図4のアーキテクチャは、埋込アレイ
ブロック(EAB)をさらに含む。EABは、ユーザメ
モリ、RAMのフレキシブルブロックを含む。このアー
キテクチャの詳細は、FLEX(R)10Kプロダクト
ファミリーの記載においてAltera Data Book(1999)に
見出され、米国特許番号第5,550,782号にも見
出され得、それらは引用により援用される。
【0029】入力/出力素子440、列相互接続バス
(column interconnect bus)470、行相互接続バス
(row interconnect bus)460および論理アレイ45
0も含まれる。論理アレイ450は、LAB200を含
み、LAB200はLE300およびローカル配線31
0を含む。2つの行、具体的にはRow0 410およ
びRow1 420が示される。この発明に従うさまざ
まなPLDはより多くの行を有してもよい。たとえば、
PLDが60個以上の行を有してもよい。この柔軟な配
線構造は、PLDにわたる論理素子が互いに接続するこ
とを可能にする。たとえば、Row0 410における
論理素子300は、行相互接続バス460における行配
線ラインによって、Row0 410における他の論理
素子300に接続し得る。Row0 410における論
理素子300は、列相互接続バス470における1つ以
上のラインによって、または行相互接続バス460の1
以上のラインと組合さって列相互接続バス470におけ
る1以上のラインによって、Row1 420における
論理素子300に接続し得る。
【0030】図5は、プログラマブル論理集積回路アー
キテクチャのさらなる実施例を示す。図5は、アーキテ
クチャの一部のみを示す。図5に示す特徴は、任意の所
望のサイズのPLDを生成するために必要に応じて水平
および垂直に繰返される。このアーキテクチャにおい
て、多数のLABが合わさってメガLABにグループ化
される。特定の実施例において、メガLABは16個の
LABを有し、その各々が10個のLEを有する。PL
Dあたり任意の数のメガLABがあり得る。メガLAB
は、メガLAB配線を用いてプログラム可能に接続され
る。このメガLAB配線は、グローバル配線層とローカ
ル配線層との間にある別の配線層と考えられ得る。メガ
LAB配線は、GV、GHおよびメガLABの各LAB
のローカル配線にプログラム可能に接続可能である。図
2のアーキテクチャと比べて、このアーキテクチャは、
配線のさらなる層、メガLAB配線を有する。そのよう
なアーキテクチャは、引用により援用される、APEX 20K
Programmable Logic DeviceFamily Data Sheet(1999
年8月)に詳細に記載されるAlteraのAPEX TM
ファミリーのプロダクトに見出される。特定の実現化例
において、メガLABは、CAM機能、RAM機能、デ
ュアルポートRAM機能、ROM機能、およびFIFO
機能などのさまざまなメモリ機能を実現するために埋込
システムブロック(ESB)をも含む。
【0031】図5は、LAB200におけるLE300
およびプログラム可能な配線ラインへのそれらの可能性
ある接続のより詳細な図である。論理素子300、垂直
または列相互接続バス470、水平または行相互接続バ
ス460、およびローカル相互接続バス310が含まれ
る。各LE300は、図示のように、2つのローカル相
互接続バス310に接続し得る。各LE300は、2つ
の垂直または列相互接続バス470、ならびに少なくと
も1つの行相互接続バス460およびメガLAB相互接
続バス480にも接続し得る。この高度に柔軟な経路付
け方式は、別個のLEが近傍のLEに、同じ行のLE
に、または異なった行のLEに結合することを可能にす
る。
【0032】図6は、PLDの簡素化された部分600
の図である。垂直(または列)相互接続バス470の1
つのラインまたはGV(またはトレース)610が含ま
れる。さまざまなドライバ、受取回路、水平配線ライン
GH、メガLAB配線などが、垂直ライン610にプロ
グラム可能に結合され得る。簡素化するためにここには
ドライバのみが示される。たとえば、Row0 685
におけるドライバD0620は、素子M0 630を介
して垂直トレース610に結合し得る。M11 670
が導通すれば、信号はRow5 690における受取回
路R5 680によって受取られる。同様の態様で、図
示の6個の行のいずれかにおけるLEからの信号は、R
ow5 690を介してRow0 685の1つ以上の
受取回路によって受取られ得る。
【0033】図7は、本発明のある実施例に従うPLD
の簡素化された部分700の図である。垂直相互接続バ
ス470のGVまたはある1つのライン710が含まれ
る。この例示の例では、駆動回路D2 740は、M4
750を介して、それぞれ素子M1 720および素
子M11 770を介してRow0 701における受
取回路R0 730およびRow5 708における受
取回路R5 780に信号を与える。やはり垂直ライン
が示されるが、ラインは代わりに水平であってもよく、
またはラインは非直交であってもよい。また垂直のライ
ン、水平のラインおよび非直交のラインの組合せが使用
されてもよい。行も論じられる、代わりに、冗長の列
が、本発明のさまざまな実施例によって使用され得る。
【0034】これらの垂直ラインの長さは、比較的長い
ものであり得る。行の数は、ここに示す代表の5つの行
よりも大きくてもよく、垂直ライン710は、それらの
すべてを通り得る。たとえば、60個の行があってもよ
い。代わりに、60より多い行または60より少ない行
があってもよい。いくつかの実施例においては、120
以上の行があってもよい。この長いライン長さは、D2
740などのドライバによって駆動されるべき大量の
キャパシタンスに変換する。これにより信号の遅延が増
大してしまう。さらに、いくつかの場合においては、ラ
インの全長が必要でない。たとえば、Row2 703
におけるドライバは、Row0 701におけるレシー
バに接続されるだけでよい。その場合には、Row2
703より下の残りのラインは無駄になり、ドライバD
2 740に不要な負荷をもたらしてしまう。
【0035】これらの問題を軽減するために、本発明の
ある実施例は、710および711としてここに示され
る、2つの部分に垂直ラインを分割する。これらの2つ
のライン部は、主バッファ760によって互いに結合さ
れる。主バッファ760は、3つの異なったモードに構
成可能である。主バッファ760は、ドライバD274
0が垂直トレース部711を駆動する支援をするよう
に、下方向に駆動するよう構成されてもよい。主バッフ
ァ760は、代わりに、より下の行(主バッファ760
より下)におけるドライバが垂直トレース部710を駆
動し得、信号がレシーバR0 730に送られ得るよう
に、上方向に駆動するよう構成されてもよい。主バッフ
ァ760は、開回路として構成されてもよい。この場合
には、2つの別個のライン部を有する1つの垂直ライン
を用いて2つの信号を2つの別個の宛先に運ぶことがで
きる。ある例では、Row2 703におけるドライバ
D2 740は、Row0 701におけるレシーバR
0 730を駆動し、一方でRow3 704における
ドライバが同時に、Row5 708におけるレシーバ
R5 780を駆動する。
【0036】構成可能な主バッファ760を加えること
により、垂直ラインの全体を駆動する回路は、主バッフ
ァからの支援を受ける。これは、駆動回路への容量性負
荷を低減し、それらのAC性能を向上する。
【0037】図7の集積回路部700は、冗長Row7
12をも含む。普通には、行の回路構成を機能しないよ
うにする欠陥がある場合、デバイス全体が廃棄される。
しかし、余分の行が加えられれば、その行は欠陥のある
行と置換することができ、完全に機能するデバイスにな
る。冗長の行は、機能しない行と直接置換し得る。代わ
りに、本発明の実施例によって用いられる方法は、欠陥
のある行にあるまたはその下の各行と関連付けられる回
路構成を、1行分下に移動することである。たとえば、
製造欠陥が、Row2 703が使用不可能であるよう
なものである場合、Row2 703の機能は、Row
3 704と表示される場所に移動する。すなわち、R
ow3 704は、Row2 703が欠陥について救
済されてしまったかのように構成される。Row3 7
04は偏位されてしまうので、それはRow4 706
に移動する。同様に、Row4 706の機能は、Ro
w5 708に移動し、Row5 708は空きの冗長
Row712に移動する。
【0038】行、この例では具体的には、Row2 7
03が主バッファ760の片側から他方へ移動するとき
複雑なことになる。Row2 703において欠陥がな
ければ、Row2 703におけるドライバD2 74
0は、Row0におけるレシーバR0 730および主
バッファ760を駆動し、主バッファ760がRow5
におけるレシーバR5 780を駆動する。したがっ
て、Row2 703における欠陥の不在下での主バッ
ファ760のための適切な設定は、下方に駆動する構成
である。
【0039】しかし、Row2 703に欠陥がある場
合、Row2 703と関連付けられる回路構成は、R
ow3 704と表示される場所に移動する。これは、
ドライバD2 740が、ライン部711、主バッファ
760によって駆動されるのと同じライン部を今駆動し
ていることを意味する。2つのラインドライバの出力が
同じラインに活性して結合されるということは非常に望
ましくない。ライン上の信号レベルは、決定されておら
ず、ドライバD2 740および主バッファ760の相
対強度の関数である。そのうえ、主バッファは他方向に
信号を駆動するよう構成されるので、ドライバD2 7
40からの信号は、Row0における受取回路R0 7
30に達することができない。この例から、冗長回路が
使用されれば、主バッファ760の構成が変更しなけれ
ばならない可能性があるということがわかる。本発明の
ある実施例は、主バッファ760の極性を逆にすること
によりこの問題を克服する。具体的には、この例では、
主バッファ760は、ドライバD2 740がRow5
708におけるレシーバR5 780および主バッフ
ァ760を駆動し、主バッファ760がRow0 70
1におけるレシーバR0 730を駆動するように、上
方駆動構成に方向を逆転する。構成、および置換される
不良の行の場所に依存して、ステッチバッファ705が
必要とされる。このステッチバッファ705は、主バッ
ファ760より下の行の下に位置する。ステッチバッフ
ァがなぜおよびいつ必要とされるかについての例は、以
下の図面の説明に示される。
【0040】各行について、その機能がシフトされ得る
1つのみの行があれば、1つのみのステッチバッファが
必要である。行の機能が近傍の行にシフトするならば、
ステッチバッファは1行分だけ主バッファから分離され
るべきである。しかし、所与の行の機能が移動され得る
2つ以上の行があるならば、2つ以上のステッチバッフ
ァが必要である。たとえば、行の機能がシフトされる可
能性のある2つの行があるならば、2つのステッチバッ
ファが必要である。この場合には、機能は近傍の行にシ
フトされ、一方のステッチバッファは1行分主バッファ
から分離され、他方は2行分分離されるべきであり、分
離はシフトの方向であるべきである。
【0041】プログラマブルロジックのための冗長回路
構成は、米国特許番号第4,899,067号、第5,
369,314号、第5,434,514号、第5,5
92,102号、および第6,034,536号に記載
され、これらは引用により援用される。
【0042】AltearのAPEXデバイスファミリ
ーのアーキテクチャにおいて、典型的には、セグメンテ
ーションバッファが垂直ライン上に加えられるたびに、
冗長回路構成が正しく働くために、さらなる冗長行が加
えられる必要がある。これは、ダイのサイズを増大さ
せ、これがコストを増大する。
【0043】本発明において、垂直ラインセグメンテー
ションは、さらなる冗長行を加える必要なしに実現され
る。この発明は、不良部品にさらなる冗長行を使用する
必要なしに、正常な部品および不良な部品において信号
を適切に向けるためのさらなる論理を使用する。
【0044】さらなる論理回路構成を用いて、この新し
い冗長方式を実現する。それでも、この論理付加は、さ
らなる冗長行を付加するよりもはるかにより効率的であ
る。
【0045】垂直ラインセグメンテーションのこの新し
い冗長方式の多くの利点の中には、(1)現在の制御論
理への簡単な変更、および(2)さらなる冗長行の必要
がなく、より小さいダイサイズで済むということがあ
る。垂直ラインセグメンテーションのこの新しい冗長方
式は、(1)冗長制御論理のためのさらなる構成ラム
(ram)ビット、および(2)セグメンテーションバッ
ファの既存の制御論理の変更を必要としない。
【0046】図8は、集積回路上に形成され得るプログ
ラマブルロジックデバイスの代表的部分800である。
Row0 801、Row1 802、Row2 80
3、Row3 804、Row4 805、Row5
806および冗長Row807を含む、論理アレイブロ
ックの行が含まれる。部分810および820を有する
第1の垂直ラインと、部分830および850を有する
第2の垂直ラインと、部分860および880を有する
第3の垂直ラインと、部分890および895を有する
第4の垂直ラインとを含む垂直ラインも含まれる。PL
Dは、多くの垂直ラインを含んでもよい。たとえば、P
LDは、各行に多くのLABを有し得、LABに10個
のLEがあり、各LEが1つ以上の垂直ラインにプログ
ラム可能に結合される。主バッファが、各垂直トレース
に沿って、2つのライン部間に置かれる。主バッファ8
15、840、870および897は、開路として、下
方向に駆動するバッファとして、または上方向に駆動す
るバッファとして構成され得る。
【0047】さまざまな駆動および拝受の接続が、図8
および図9における矢印として示されている。矢印は、
論理素子へのプログラム可能な接続、トライステートバ
ッファを介する論理回路へのプログラム可能な接続、垂
直もしくは行ラインもしくはトレースへのプログラム可
能な接続、または他のプログラム可能な接続を示し得
る。簡素化のために、このおよび同様の接続は論理素子
へのものであるものとして記載されるが、それらはこれ
らの構造のいずれへのものであってもよい。たとえば、
Row2 803における論理素子は、垂直ライン部8
10に信号を与え、これはRow0 801における受
取回路によって受取られる。同様に、Row3 804
における駆動回路は、垂直ライン部820に信号を与
え、これはRow5 806における論理素子によって
受取られる。さらに、Row2 803における論理素
子は、垂直ライン部830に信号を与え、これはRow
0 801における論理素子によって受けられ、主バッ
ファ840によって垂直ライン部850に駆動され、こ
こでそれはRow5 806における論理素子によって
受けられる。Row1 802における論理素子は、ラ
イン部860に信号を与え、これはRow2 803に
おける論理素子によって受けられる。Row3804に
おける論理素子は、垂直ライン部880に信号を与え、
これはRow5806における論理素子によって受けら
れる。主バッファ870は、開回路として構成される。
これは、第3の垂直ラインが、異なった論理素子300
に配線される2つの部分にセグメント化されることを可
能にする。また、Row1における論理素子は、垂直ラ
イン部890に信号を駆動し、これは主バッファ897
によってバッファされ、垂直ライン部895へ下方向に
駆動され、そこでこれはRow5 806における論理
素子によって受けられる。
【0048】欠陥がRow0 801を動作不能にした
場合、冗長Row807が使用される。具体的には、本
発明のある実施例は、Row0 801の論理構成を下
方向へRow1 802位置に移動する。同様に、各行
は、Row5 806の機能が冗長Row807に存在
するように、1つ分下に下がる。やはり、主バッファの
構成は、このシフトを補償するために改変される必要が
あり得る。
【0049】行を動作不能にし得る可能性ある欠陥の例
は、半導体材料の結晶構造におけるピンホール、開路、
短絡、または配線金属トレース間の橋絡などを含む。欠
陥は、あるLEが機能しないことなどであり得る。代わ
りに、欠陥は、いくつかのLEが機能しないようにする
ことかもしれないし、LAB全体が機能しないようにな
ることもあり、またはLABの行全体が機能しないよう
になることもある。
【0050】図9は、プログラマブルロジックデバイス
の代表的な部分800をやはり示す。この図において、
集積回路の部分800は、最上位の行における欠陥を補
償するために再構成されてしまっている。欠陥のある行
を有さないデバイスがプログラムされるならば、その結
果は図8の構成となる。しかし、Row0 801に欠
陥があるならば、同じプログラミングは、図9の構成を
生じる。すなわち、一方が欠陥のあるRow0を有し、
他方が有さない以外は同一の2つの集積回路が、それぞ
れ図8および図9に示す2つの構成をもたらす同じプロ
グラミングを受ける。以下からわかるように、これは、
情報のビットがオンチップに記憶され、プログラミング
データを修正するように働くからである。
【0051】やはり、Row2 804における論理素
子は、第1の垂直ラインを用いてRow0 802にお
ける論理素子を駆動する。主バッファ815は、図8に
示す開回路から、図9に示す上方に駆動する構成へ再構
成される。このように、Row2 804における論理
素子は、行すべてが1つ分下にシフトされてしまったと
しても、Row0 802における論理素子を駆動し続
ける。
【0052】しかし、Row3 805における論理素
子は、同じ垂直トレースを用いてRow5 807にお
ける論理素子を駆動する。したがって、さらになけれ
ば、Row2 804における論理素子およびRow3
805における論理素子はどちらも、第1の垂直ライ
ンを駆動しようとするだろう。したがって、スイッチバ
ッファ905を、主バッファの真下にある行の下に加え
る。具体的には、ステッチバッファは、Row2 80
4とRow3 805との間に加えられる。各ステッチ
バッファは、開回路または短絡回路のいずれかとして構
成され得る。この具体的な例において、ステッチバッフ
ァは、開いており、Row2 804における論理素子
がRow0 802における論理素子を駆動することを
可能にしながら、同じ垂直ラインであるが異なったライ
ン部が、Row3 805における論理素子によってR
ow5 807における論理素子を駆動するのに使用さ
れる。
【0053】PLDは、特定の機能を行なうよう構成さ
れるように外部で生成される信号によってプログラムさ
れる。この例では、主バッファ815は、開路であるよ
うにプログラムされる。このプログラム可能性は、主バ
ッファ815が上方向に駆動するよう命令されるように
オンチップで修正される。また、プログラムされない
が、デフォルトでは短絡しているステッチバッファは、
開路を形成するよう命令される。このように、ラインセ
グメンテーション命令は、オンチップで修正され、欠陥
のある行の存在および場所と関係なく、プログラミング
システムが同じプログラムを使用することを可能にす
る。
【0054】同様に、Row2 804における論理素
子は、第2の垂直ラインを用いてRow0 802にお
ける論理素子を駆動する。したがって、第2の垂直ライ
ンと関連付けられる主バッファ840は、図8に示す下
方向への駆動から、図9に示す上方向への駆動へと再構
成される。また、Row2 804における論理素子
は、Row5 807における論理素子を駆動している
ので、ステッチバッファ910は閉じたままである。こ
のように、Row2 804における論理素子は、機能
していない最上位の行を補償するために1位置分、すべ
ての行が下方にシフトされた後に、引続きRow0 8
02における論理素子およびRow5 807における
論理素子を駆動する。
【0055】Row1 803における論理素子および
Row3 805における論理素子は第3の垂直ライン
を用いて、それぞれ、Row2 804における論理素
子およびRow5 807における論理素子を駆動す
る。したがって、主バッファ870は、図8に示す開い
た状態から図9に示す下方向へ駆動する状態に再構成さ
れる。また、2つのドライバがこのラインを使用するの
で、ステッチバッファ920は開かれている。第4の垂
直配線ラインは、Row5 807における論理素子を
駆動するためにRow1 803における論理素子によ
って使用される。この場合には、主バッファ897また
はステッチバッファ930への変更はない。
【0056】先行の段落によってわかるように、構成可
能な主バッファおよびステッチバッファを使用すること
により、実際の行が欠陥を補償するために移動してしま
ったとしても、PLD部800に示すような元々の配線
構成が保たれる。このように、長い垂直ラインは、上述
した冗長方式と一致する態様で、引続きバッファまたは
セグメント化される。
【0057】図8および図9のPLD部800に示す行
のパターンは、いくつかの集積開路において繰返され鏡
映されてもよい。また、さらなるバッファリングおよび
ラインセグメント化が、2つの鏡映された部分間に加え
られてもよい。図10は、そのような構成の一例であ
る。Row0〜5、冗長Row1025、主バッファ行
1015、およびステッチバッファ行1020が含まれ
る。このパターンは、Row11〜Row6および冗長
Row1035をはじめとして、主バッファ行1045
およびステッチバッファ行1040を含んで、鏡映され
る。セグメンテーションバッファ1030の別個の行
が、冗長Row1025と1035との間に加えられ
る。この構成は、GVまたは垂直ラインの各々が4つの
部分に分割されることを可能にする。具体的には、不良
の行がなければ、各垂直ラインは、行0で始まり行2で
終わる第1の部分と、行3で始まり冗長の行1025で
終わる第2の部分と、冗長の行1035で始まり行8で
終わる第3の部分と、行9で始まり行11で終わる第4
の部分とに分割可能である。どの2つの連続する部分
も、上または下に駆動する構成に設定された主バッファ
によって互いに結合され得る。
【0058】図11は、置換を必要とする不良の行の場
所、および、主バッファの位置に対する垂直ライン上の
活性駆動回路の場所に依存して、主バッファおよびステ
ッチバッファの構成における変更を決定するための記号
の真理値表である。活性駆動回路は、LE300、水平
またはGHライン、または他のプログラム可能な接続で
あってもよい。主バッファのための元々のプログラミン
グは決定されており、列1110に列挙されている。最
初に、すべてのステッチバッファは、列1120に示さ
れるように閉じている(それらはプログラムされていな
い)。欠陥のある行の場所は決定されており1130に
列挙される。欠陥のある行の可能性ある場所は2つあ
り、すなわち欠陥のある行は、列1130のU1によっ
て示されるように主バッファの上にあるか、U2によっ
て示されるように主バッファの下にあるかのいずれかで
ある。この値は、主バッファの上の行を検査し、その機
能がそれより上の行からシフトされたかどうかを決定す
ることによって発見可能である。次に、垂直ラインドラ
イバが主バッファの真上の行において活性であるかどう
かが決定される。この情報は、RAM、PROMまたは
他のメモリ回路においてなど、オンチップでプログラム
可能に記憶可能である。主バッファの真上の行に活性の
垂直ラインドライバがあれば、列1140に列挙するよ
うに、ドライバ場所は「近い」(near)という。そうで
なければ、ドライバの場所は「遠い」(far)という。
この情報から、主バッファおよびステッチバッファの更
新された設定は、それぞれ列1150および1160に
与えられる。更新された設定は、オンチップデータU1
およびNeFaによって修正された、列1110におけ
る元々の設定である。
【0059】Row1170は、図8および図9の第1
の垂直ラインとして与えられた例の代表例である。その
場合には、主バッファは開かれているまたはセグメント
化されていた。列1130におけるU1として表わされ
るように、不良の行は最上位の行であった。Row2
803における論理素子は、第1の垂直ラインを駆動し
ており、そのためドライバの場所は近いといわれる。し
たがって、更新された設定は、主バッファが上方向に駆
動するように構成されるべきであり、ステッチバッファ
が開かれるかまたはセグメント化されるようにする。
【0060】図8および図9の第2の垂直トレースの例
は、真理値表1100の行1180に対応する。主バッ
ファの元々の設定は、それを下方向に駆動させる。不良
の行はやはり、1130におけるU1として示される部
分800の最上位であった。また、Row2における論
理素子は、第2の垂直トレースを駆動する。Row28
03は、図8に示すように主バッファの真上にあるの
で、ドライバの場所は、近いといわれる。したがって、
主バッファの設定は、上方向に駆動するよう更新され、
一方ステッチバッファはステッチされるかまたは閉じら
れたままである。
【0061】図8の例における第3の垂直ラインは、真
理値表1100の行1190によって表わされる。元々
の設定は、セグメント化されるために主バッファを必要
とする。不良の行は主バッファの上にあり、ドライバの
場所は主バッファの真上の行にはなく、したがってそれ
は遠い。それにより、列1150および1160によっ
て示されるように、主バッファが下方向に駆動し、ステ
ッチバッファが開かれるかセグメント化されるように、
構成は変更される。図8の第4の垂直ラインは、図11
の真理値表1100に行1195によって表わされる。
元々の構成は、下方向に駆動するために主バッファを、
閉じられるためにステッチバッファを必要とする。置換
されるべき不良の行は主バッファより上にあり、ドライ
バの場所は遠い。したがって主バッファ構成およびステ
ッチバッファ構成は変わらない。
【0062】このように、セグメンテーションまたは主
バッファのためのプログラムされたデータ、およびその
対応するステッチバッファのためのデフォルト設定は、
欠陥のある行の存在および場所、ならびに垂直ラインド
ライバの場所に従って修正される。次に、欠陥のある行
の場所および存在と関係なしに、同じプログラミングデ
ータが見えないような態様で同じ結果を生ずるように、
修正されたデータを用いて主バッファおよびステッチバ
ッファを制御する。これは、不良の行を有する集積回
路、および欠陥なしのものが、あわせて区別なしに販売
されプログラムされることを可能にする。
【0063】図12は、本発明の実施例に従うPLDに
おける主バッファおよびステッチバッファのための制御
論理回路構成を設計するのに使用され得る真理値表であ
る。入力RLTRT1212、RRTLT1214、N
eFa1216およびU11218、ならびに出力RL
TLTx1222、RRTLTx1224およびSub
_Buf1226が含まれる。この図はまた、論理出力
のためのブール等式1270を提供する。入力信号RL
TRT1212についてのハイまたは1は、主バッファ
を介して左から右へ信号が送られ、その後に不良の行を
補償するための何らかがなされるということを示す。な
お、左から右へ送られる信号は、信号がGVまたは垂直
トレースの上方へ送られるということを意味し、右から
左への信号は、垂直トレースを下方に送られるというこ
とを意味する。上記のように、上方、下方、左および右
の方向は、例示の目的のためにのみ与えられる。信号
は、上方もしくは下方または左もしくは右、または非直
交の方向に伝わるであろう。入力信号RRTLT121
4についてのハイまたは1は、主バッファが信号を右か
ら左へ送るということを示す。NeFa1216信号に
ついての1は、主バッファの真上にある行に位置する活
性ドライバがあり、その後に欠陥のある行を補償するた
めのシフトが生じることを示す。やはり、活性ドライバ
は、LE300、水平配線もしくはGHライン、または
他のプログラム可能な接続であってもよい。入力信号U
1 1218についてのハイまたは1は、不良の行が主
バッファの上にあることを示す。
【0064】出力信号RLTRTx1222についての
ハイは、いかなる行シフトが起こるよりも前に、主バッ
ファが信号を左から右に送るべきであるということを示
す。「X」は、特定の状態が生じ得ないことを示す。具
体的には、上方向に駆動するバッファが主バッファの真
上の行におけるドライバと競合しないであろうから、行
1230は発生しない。回路構成は2つの競合するドラ
イバで構成されるべきでないので、この状態は起こらな
い。主バッファは同時に左から右へかつ右から左へとデ
ータを送ることはできないので、状態1240も起こら
ない。
【0065】出力信号RRTLTx1224のハイまた
は1は、行シフトが行なわれた後に、主バッファが右か
ら左へデータを送るべきことを示す。出力信号Sub_
Buf1226のハイまたは1は、ステッチバッファが
ステッチまたは閉じられた位置にあるということを意味
し、ローまたは0は、ステッチバッファがセグメント化
されているかまたは開かれているということを示す。等
式1270は、入力信号1210の関数として出力信号
1220を定義する。
【0066】NeFa1216の値は、たとえばRA
M、PROM、フラッシュメモリ、フリップフロップま
たは他の記憶回路においてなど、チップ上に記憶可能で
ある。行の機能がそれがあるところに留まっているの
か、または1行分シフトしているのかを示す、各行ごと
の1ビットを記憶することもできる。この情報は、外部
からの一般的なプログラミングデータが、チップ上で修
正され、不良の行の存在を適切に補償することを可能に
する。したがって、U1の値は、シフトすべきかどう
か、セグメンテーションの真上の行に命令するビットを
検査することによって決定可能である。
【0067】図13は、図12に示す真理値表1200
を実現するよう設計された論理ブロックの概略である。
入力ライン1312、1314、1318および131
6にそれぞれ与えられる入力信号RLTRT1212、
RRTLT1214、U11218、およびNeFa1
216が含まれる。各入力信号は、それぞれインバータ
1370、1360、1350および1340によって
反転される。入力信号およびそれらの反転されたバージ
ョンは、入力として、論理ゲート組合せ1310、13
20および1330に与えられる。これらの論理ゲート
組合せは、結果として得られる出力信号RLTRTx1
222、RRTLTx1224、およびSub_Buf
1226を、それぞれライン1322、1324および
1326に与える。図示の論理実現化例は、前述のイン
バータとともに、ANDゲートおよびORゲートを使用
する。他の論理構成を用いて同じまたは同様の論理機能
を実現することができることは当業者には明らかであ
る。たとえば、論理ゲート組合せ1310、1320お
よび1330を実現するためにNANDゲートおよびN
ORゲートが使用されてもよい。
【0068】図14は、本発明の実施例に従う主バッフ
ァおよびステッチバッファを設定するための意思決定プ
ロセスを示すフローチャートである。アクト1410に
おいて、主バッファの上に欠陥のある行があるかどうか
が決定される。不良の行が主バッファより下にあるかま
たは欠陥のある行が存在しないかのいずれかのために、
その答えが否であれば、アクト1430において主バッ
ファおよびステッチバッファに変更はなされない。不良
の行があり、それが主バッファの上であれば、アクト1
420において、主バッファの真上の行において活性垂
直ドライバがあるかどうかが決定される。答えが否であ
れば、アクト1450において主バッファは下方向に駆
動するように設定される。主バッファの真上の行に活性
垂直ラインドライバがあれば、アクト1440において
主バッファは上方に駆動するように設定される。アクト
1460において、垂直ラインが問題の主バッファによ
ってセグメント化されるかどうかを決定する。されてい
ないならば、アクト1480においてステッチバッファ
は閉じられたままである。垂直ラインが主バッファによ
ってセグメント化されるのであれば、アクト1470に
おいてステッチバッファは、セグメント化タスクを担
い、開かれる。
【0069】図15は、本発明の実施例に従う主バッフ
ァの概略である。入力RLTRTx1222、RRTL
Tx1224、ライン1501上の垂直ライン接続LL
INEおよびライン1502上の垂直ライン接続RLI
NE、ならびにライン1535上のイネーブル信号NF
RXDRVが含まれる。ライン1535上のイネーブル
信号NFRXDRVがハイであれば、ライン1522の
信号RLTRTx1222のハイが、ライン1577の
信号LTRTをハイに駆動する。これは、素子M3 1
585を介してライン1501をライン1545に結合
する。また、ライン1565は素子M2 1552を介
してライン1502に結合される。したがって、ライン
1501の信号LLINEは、インバータ1570およ
び1560を駆動し、ライン1502の信号RLINE
をもたらす。
【0070】反対に、ライン1535のイネーブル信号
NFRXDRVがハイであれば、ライン1524の信号
RRTLTx1224のハイが、ライン1575の信号
RTLTをハイに駆動する。これは、素子M4 159
5を介してライン1502をライン1545に結合す
る。また、ライン1565は素子M1 1550を介し
てライン1501に結合される。したがって、ライン1
502の信号RLINEは、インバータ1570および
1560を駆動し、ライン1501の信号LLINEを
もたらす。ライン1535のイネーブル信号NFRXD
RVがローであるか、信号RLTRTx1222または
RRTLTx1224のいずれもがハイでないかのいず
れかであれば、素子M1 1550、M2 1550、
M3 1585およびM4 1595はすべて開き非導
通状態である。この条件において、ライン1501とラ
イン1502との間に高インピーダンスが見られ、主バ
ッファはセグメント化される。
【0071】図16は、本発明のある実施例に従うステ
ッチバッファ1600の概略である。素子M1 162
0が含まれる。素子M1 1620のドレイン領域およ
びソース領域は、それぞれ入力ノード1640および出
力ノード1630を形成する。素子M1 1620のゲ
ートまたは制御電極は、論理ブロック1300または他
の制御論理ブロックからライン1610のSub_Bu
f信号を受ける。ライン1610のSub_Buf信号
がハイであれば、バッファはステッチまたは短絡の構成
にされるが、これはステッチバッファのデフォルト状態
である。ライン1610のSub_Buf信号がローで
あれば、バッファは開いているまたはセグメント化され
る。
【0072】この発明の特定の実施例の前の記載は、例
示および説明のために提示された。この発明を記載され
た正確な形に限定したりまたは余すところのないもので
はなく、多くの修正および変形が上記の教示に鑑みて可
能である。実施例は、この発明の原理およびその実際の
用途を最もよく説明するために選択され記載されたもの
であって、それにより当業者が企図される特定の使用に
適するさまざまな実施例およびさまざまな変形でこの発
明を最もよく利用することを可能にするものである。こ
の発明の範囲は、前掲の特許請求の範囲によって定義さ
れることが意図される。
【図面の簡単な説明】
【図1】 プログラム可能論理集積回路を備えるデジタ
ルシステムの図である。
【図2】 プログラム可能論理集積回路のアーキテクチ
ャの図である。
【図3】 論理アレイブロック(LAB)の簡素化され
たブロック図である。
【図4】 埋込アレイブロック(EAB)を備えるプロ
グラム可能論理集積回路のアーキテクチャの図である。
【図5】 メガLABを備えるプログラム可能論理集積
回路のアーキテクチャの図である。
【図6】 垂直トレースを含むPLDの一部の図であ
る。
【図7】 主バッファおよびステッチバッファを備える
冗長の行および垂直トレースを含むPLDの一部の図で
ある。
【図8】 主バッファおよびステッチバッファを備える
冗長の行および4つの垂直トレースを含むPLDの一部
の図である。
【図9】 不良の行を補償するための回路変更が生じた
後の図8に示すPLDの一部の図である。
【図10】 本発明の実施例に従う態様で設計および配
置されるPLDの一般化された配置の図である。
【図11】 本発明のある実施例における主バッファお
よびステッチバッファのための更新された制御設定を決
定するための記号的真理値表の図である。
【図12】 図11の記号的真理値表を実現するブール
真理値表の図である。
【図13】 図12の制御論理回路構成の実現化例の図
である。
【図14】 欠陥のある行およびラインドライバの場所
の関数として主バッファおよびステッチバッファの制御
論理の状態を変更するための流れ図である。
【図15】 主バッファの概略図である。
【図16】 ステッチバッファの概略図である。
【符号の説明】
200 論理アレイブロック、300 論理素子、31
0ローカル配線、450 論理アレイ、460 行配
線、470 列配線
───────────────────────────────────────────────────── フロントページの続き (72)発明者 シャンソン・ツァン アメリカ合衆国、95117 カリフォルニア 州、サン・ノゼ、ノースレイク・ドライ ブ、489、ナンバー・210 (72)発明者 デイビッド・ジェファーソン アメリカ合衆国、95037 カリフォルニア 州、モーガン・ヒル、ウィロウ・クリー ク・ドライブ、16711 Fターム(参考) 5B022 AA07 DA01 DA10 FA10 FA11 5F064 AA07 BB03 BB04 BB07 DD19 DD26 FF02 FF36 FF52 5J042 AA10 BA01 BA02 BA04 CA07 CA15 CA20 CA22 CA23 CA25 CA27 DA01 DA06

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 連続的に配置される第1の複数個の論理
    アレイブロックと、 前記第1の複数個の論理アレイブロックの側に沿って連
    続的に配置される複数個のセグメンテーションバッファ
    と、 第1の複数個の論理アレイブロックから離れる複数個の
    セグメンテーションバッファの側に沿って連続的に配置
    される第2の複数個の論理アレイブロックと、 複数個のセグメンテーションバッファから離れる第2の
    複数個の論理アレイブロックの側に沿って連続的に配置
    される複数個のステッチバッファと、 第2の複数個の論理アレイブロックから離れる複数個の
    ステッチバッファの側に沿って連続的に配置される第3
    の複数個の論理アレイブロックと、 複数個のステッチバッファから離れる第3の複数個の論
    理ゲートの側に沿って連続的に配置される第4の複数個
    の論理アレイブロックと、 第1の複数個の論理アレイブロックにプログラム可能に
    結合されかつ複数個のセグメンテーションバッファに結
    合される第1の複数個の配線ラインと、 第2の複数個の論理アレイブロックにプログラム可能に
    結合されかつ複数個のセグメンテーションバッファおよ
    び複数個のステッチバッファに結合される第2の複数個
    の配線ラインと、 第3の複数個の論理アレイブロックおよび第4の複数個
    の論理アレイブロックにプログラム可能に結合されかつ
    複数個のステッチバッファに結合される第3の複数個の
    配線ラインとを含み、 複数個のセグメンテーションバッファは、第1の複数個
    の配線ラインから第2の複数個の配線ラインへ信号を駆
    動し、または第2の複数個の配線ラインから第1の複数
    個の配線ラインへ信号を駆動し、または第1の複数個の
    配線ラインと第2の複数個の配線ラインとの間に開回路
    を与えるよう構成可能である、プログラマブルロジック
    デバイス。
  2. 【請求項2】 複数個のステッチバッファは、第2の複
    数個の配線ラインから第3の複数個の配線ラインに結合
    され、または第2の複数個の配線ラインと第3の複数個
    の配線ラインとの間に開回路を与えるよう構成可能であ
    る、請求項1に記載のプログラマブルロジックデバイ
    ス。
  3. 【請求項3】 第1の複数個の論理アレイブロックは、
    第1の複数個の行に配置され、第3の複数個の論理アレ
    イブロックは第2の複数個の行に配置される、請求項2
    に記載のプログラマブルロジックデバイス。
  4. 【請求項4】 第2の複数個の論理アレイブロックは、
    第1の行に配置され、第4の複数個の論理アレイブロッ
    クは、第2の行に配置される、請求項3に記載のプログ
    ラマブルロジックデバイス。
  5. 【請求項5】 機能は、初期には第1の複数個の行、第
    2の複数個の行、第1の行の各々と関連付けられ、機能
    は初期には、第2の行と関連付けられない、請求項4に
    記載のプログラマブルロジックデバイス。
  6. 【請求項6】 論理アレイブロックが機能しないのであ
    れば、その行を含む行と初期に関連付けられた機能およ
    び論理ブロックのその行と論理ブロックの第2の行との
    間の機能は各々、第2の行の方向に1行分移動される、
    請求項5に記載のプログラマブルロジックデバイス。
  7. 【請求項7】 論理アレイブロックが機能しないのであ
    れば、第1の複数個のセグメンテーションバッファの構
    成が変更してよい、請求項6に記載のプログラマブルロ
    ジックデバイス。
  8. 【請求項8】 論理アレイブロックが機能せず、かつ機
    能しない論理アレイブロックが第1の複数個の論理アレ
    イブロック内にあれば、第1の複数個のセグメンテーシ
    ョンバッファの構成が変更してよい、請求項6に記載の
    プログラマブルロジックデバイス。
  9. 【請求項9】 制御回路をさらに含み、制御回路は、複
    数個のセグメンテーションバッファおよび複数個のステ
    ッチバッファの構成を決定する制御信号を発生する、請
    求項8に記載のプログラマブルロジックデバイス。
  10. 【請求項10】 請求項6のプログラマブルロジックデ
    バイスを含む集積回路。
  11. 【請求項11】 セグメンテーションバッファと、複数
    個の冗長の論理アレイブロックと、セグメンテーション
    バッファの第1の側であってセグメンテーションバッフ
    ァと複数個の冗長の論理アレイブロックとの間の第1の
    複数個の論理アレイブロックと、セグメンテーションバ
    ッファの第2の側であってセグメンテーションバッファ
    と複数個の冗長の論理アレイブロックとの間にない第2
    の複数個の論理アレイブロックとを含むプログラマブル
    ロジックデバイスにおけるプログラム可能な配線ライン
    をセグメント化する方法であって、前記方法は、 欠陥のある論理アレイブロックが存在するかどうかを決
    定するステップと、 欠陥のある論理アレイブロックが存在しなければ、セグ
    メンテーションバッファに変更を加えないステップとを
    含み、さもなくば、 欠陥のある論理アレイブロックの場所を決定するステッ
    プと、 欠陥のある論理アレイブロックの場所が第1の複数個の
    論理アレイブロックにあれば、セグメンテーションバッ
    ファに変更を加えないステップとを含み、さもなくば、 セグメンテーションバッファに結合されたラインのため
    の活性のラインドライバの場所を決定するステップと、 活性のラインドライバの場所がセグメンテーションバッ
    ファの第2の側の隣の論理アレイブロックにあれば、第
    1の複数個の論理アレイブロックから第2の複数個の論
    理アレイブロックへ信号を駆動するようセグメンテーシ
    ョンバッファを設定するステップとを含み、さもなく
    ば、 第2の複数個の論理アレイブロックから第1の複数個の
    論理アレイブロックに信号を駆動するようセグメンテー
    ションバッファを設定するステップとを含む、方法。
  12. 【請求項12】 第1および第2の複数個の論理アレイ
    ブロックは行に配置される、請求項11に記載の方法。
  13. 【請求項13】 プログラマブルロジックデバイスは、
    ステッチバッファをさらに含み、ステッチバッファは、
    セグメンテーションバッファから論理アレイブロックの
    1行離れて、セグメンテーションバッファと論理アレイ
    ブロックの冗長の行との間に位置し、ステッチバッファ
    は、開路または短絡回路として構成可能である、請求項
    12に記載の方法。
  14. 【請求項14】 セグメンテーションバッファの初期構
    成を決定するステップと、セグメンテーションバッファ
    が初期には開路として構成されていれば、回路を与える
    ようステッチバッファを設定するステップと、さもなく
    ば、短絡回路を与えるようステッチバッファを設定する
    ステップとをさらに含む、請求項13に記載の方法。
  15. 【請求項15】 プログラマブルロジックデバイスは制
    御回路をさらに含み、制御回路は、セグメンテーション
    バッファおよびステッチバッファの構成を決定する、請
    求項14に記載の方法。
  16. 【請求項16】 第1の複数個の論理アレイブロックを
    含み、第1の複数個の論理アレイブロックは第1の論理
    アレイブロックおよび第2の論理アレイブロックを含
    み、さらに、セグメンテーションバッファの第1の端子
    に結合されかつ第1の論理アレイブロックにプログラム
    可能に結合される第1のプログラム可能な配線ライン
    と、セグメンテーションバッファの第2の端子に結合さ
    れかつ第2の論理アレイブロックにプログラム可能に結
    合される第2のプログラム可能な配線ラインとを含み、
    セグメンテーションバッファは、第1のプログラム可能
    な配線ラインと第2のプログラム可能な配線ラインとの
    間に開回路を与えるよう構成可能であり、バッファは、
    第1のプログラム可能な配線ラインから第2のプログラ
    ム可能な配線ラインに信号を駆動し、またはバッファ
    は、第2のプログラム可能な配線ラインから第1のプロ
    グラム可能な配線ラインに信号を駆動する、プログラマ
    ブルロジックデバイス。
  17. 【請求項17】 第2の複数個の論理アレイブロックを
    さらに含み、第2の複数個の論理アレイブロックは冗長
    であり、かつ第1の複数個の論理アレイブロックの1つ
    に欠陥があるとき、第1の複数個の論理アレイブロック
    の少なくともいくつかを置換するために使用される、請
    求項16に記載のプログラマブルロジックデバイス。
  18. 【請求項18】 第2の複数個の論理アレイブロックが
    第1の複数個の論理アレイブロックの少なくともいくつ
    かを置換するために使用されるならば、セグメンテーシ
    ョンバッファの構成は変更してよい、請求項17に記載
    のプログラマブルロジックデバイス。
  19. 【請求項19】 セグメンテーションバッファの構成
    は、セグメンテーションバッファ、第2の複数個の論理
    アレイブロック、および第1の複数個の論理アレイブロ
    ックの欠陥のある1つの相対的場所に依存して変更して
    よい、請求項18に記載のプログラマブルロジックデバ
    イス。
  20. 【請求項20】 請求項16のプログラマブルロジック
    デバイスを含む集積開路。
JP2001129184A 2000-04-26 2001-04-26 プログラマブルロジックデバイス Expired - Fee Related JP4558234B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US19975100P 2000-04-26 2000-04-26
US60/199751 2000-04-26

Publications (3)

Publication Number Publication Date
JP2002033654A true JP2002033654A (ja) 2002-01-31
JP2002033654A5 JP2002033654A5 (ja) 2007-09-06
JP4558234B2 JP4558234B2 (ja) 2010-10-06

Family

ID=22738867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001129184A Expired - Fee Related JP4558234B2 (ja) 2000-04-26 2001-04-26 プログラマブルロジックデバイス

Country Status (3)

Country Link
US (2) US6600337B2 (ja)
EP (1) EP1162747B1 (ja)
JP (1) JP4558234B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006014297A (ja) * 2004-05-28 2006-01-12 Altera Corp 電子デバイス
JP2008295046A (ja) * 2007-05-22 2008-12-04 Panasonic Corp プログラマブルデバイス内のプログラミングデータをローカルに生成するシステムおよび方法
JP2011119753A (ja) * 2005-06-30 2011-06-16 Seiko Epson Corp 集積回路装置及び電子機器
JP2012050080A (ja) * 2010-08-25 2012-03-08 Samsung Electronics Co Ltd 再構成可能な論理装置

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850957B2 (en) * 2002-03-12 2005-02-01 Hitachi, Ltd. Information system and data access method
US7111213B1 (en) 2002-12-10 2006-09-19 Altera Corporation Failure isolation and repair techniques for integrated circuits
US7062685B1 (en) 2002-12-11 2006-06-13 Altera Corporation Techniques for providing early failure warning of a programmable circuit
US7024327B1 (en) 2002-12-18 2006-04-04 Altera Corporation Techniques for automatically generating tests for programmable circuits
US7058534B1 (en) 2003-03-19 2006-06-06 Altera Corporation Method and apparatus for application specific test of PLDs
US7215140B1 (en) 2003-05-30 2007-05-08 Altera Corporation Programmable logic device having regions of non-repairable circuitry within an array of repairable circuitry and associated configuration hardware and method
US7277346B1 (en) 2004-12-14 2007-10-02 Altera Corporation Method and system for hard failure repairs in the field
US7265573B1 (en) 2004-12-18 2007-09-04 Altera Corporation Methods and structures for protecting programming data for a programmable logic device
US7793251B2 (en) * 2006-01-12 2010-09-07 International Business Machines Corporation Method for increasing the manufacturing yield of programmable logic devices
US9637147B2 (en) 2009-03-17 2017-05-02 General Electronic Company Data communication system and method
US8532850B2 (en) 2009-03-17 2013-09-10 General Electric Company System and method for communicating data in locomotive consist or other vehicle consist
US8935022B2 (en) 2009-03-17 2015-01-13 General Electric Company Data communication system and method
US9379775B2 (en) 2009-03-17 2016-06-28 General Electric Company Data communication system and method
US8798821B2 (en) 2009-03-17 2014-08-05 General Electric Company System and method for communicating data in a locomotive consist or other vehicle consist
US7456653B2 (en) * 2007-03-09 2008-11-25 Altera Corporation Programmable logic device having logic array block interconnect lines that can interconnect logic elements in different logic blocks
US7508231B2 (en) * 2007-03-09 2009-03-24 Altera Corporation Programmable logic device having redundancy with logic element granularity
US8583299B2 (en) 2009-03-17 2013-11-12 General Electric Company System and method for communicating data in a train having one or more locomotive consists
US7902855B1 (en) 2010-03-03 2011-03-08 Altera Corporation Repairable IO in an integrated circuit
US9513630B2 (en) 2010-11-17 2016-12-06 General Electric Company Methods and systems for data communications
US10144440B2 (en) 2010-11-17 2018-12-04 General Electric Company Methods and systems for data communications
WO2013010162A2 (en) 2011-07-14 2013-01-17 General Electric Company Method and system for rail vehicle control
US9236864B1 (en) 2012-01-17 2016-01-12 Altera Corporation Stacked integrated circuit with redundancy in die-to-die interconnects
RU2503993C1 (ru) * 2012-04-26 2014-01-10 федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Пермский национальный исследовательский политехнический университет" Программируемое логическое устройство
US9893732B1 (en) * 2016-12-22 2018-02-13 Intel Corporation Techniques for bypassing defects in rows of circuits
US10658067B2 (en) 2018-05-14 2020-05-19 Micron Technology, Inc. Managing data disturbance in a memory with asymmetric disturbance effects

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2321989A (en) * 1997-02-05 1998-08-12 Altera Corp Redundancy circuitry for logic circuits
JP2001526866A (ja) * 1997-05-23 2001-12-18 アルテラ コーポレイション インタリーブされた入力回路を備えるプログラマブル論理装置のための冗長回路

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899067A (en) 1988-07-22 1990-02-06 Altera Corporation Programmable logic devices with spare circuits for use in replacing defective circuits
US5498975A (en) * 1992-11-19 1996-03-12 Altera Corporation Implementation of redundancy on a programmable logic device
US5434514A (en) 1992-11-19 1995-07-18 Altera Corporation Programmable logic devices with spare circuits for replacement of defects
US5504440A (en) * 1994-01-27 1996-04-02 Dyna Logic Corporation High speed programmable logic architecture
US5369314A (en) 1994-02-22 1994-11-29 Altera Corporation Programmable logic device with redundant circuitry
US5592102A (en) 1995-10-19 1997-01-07 Altera Corporation Means and apparatus to minimize the effects of silicon processing defects in programmable logic devices
US5627480A (en) * 1996-02-08 1997-05-06 Xilinx, Inc. Tristatable bidirectional buffer for tristate bus lines
US6034536A (en) 1997-02-05 2000-03-07 Altera Corporation Redundancy circuitry for logic circuits
US5942913A (en) * 1997-03-20 1999-08-24 Xilinx, Inc. FPGA repeatable interconnect structure with bidirectional and unidirectional interconnect lines

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2321989A (en) * 1997-02-05 1998-08-12 Altera Corp Redundancy circuitry for logic circuits
JP2001526866A (ja) * 1997-05-23 2001-12-18 アルテラ コーポレイション インタリーブされた入力回路を備えるプログラマブル論理装置のための冗長回路

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006014297A (ja) * 2004-05-28 2006-01-12 Altera Corp 電子デバイス
JP2012029325A (ja) * 2004-05-28 2012-02-09 Altera Corp 電子デバイス
JP2011119753A (ja) * 2005-06-30 2011-06-16 Seiko Epson Corp 集積回路装置及び電子機器
JP2008295046A (ja) * 2007-05-22 2008-12-04 Panasonic Corp プログラマブルデバイス内のプログラミングデータをローカルに生成するシステムおよび方法
JP2012050080A (ja) * 2010-08-25 2012-03-08 Samsung Electronics Co Ltd 再構成可能な論理装置

Also Published As

Publication number Publication date
US20030201793A1 (en) 2003-10-30
US6600337B2 (en) 2003-07-29
EP1162747A2 (en) 2001-12-12
EP1162747A3 (en) 2003-03-26
JP4558234B2 (ja) 2010-10-06
US6759871B2 (en) 2004-07-06
EP1162747B1 (en) 2012-02-29
US20020003742A1 (en) 2002-01-10

Similar Documents

Publication Publication Date Title
JP4558234B2 (ja) プログラマブルロジックデバイス
JP5859089B2 (ja) プログラマブル論理の特定用途向け集積回路等価物および関連の方法
US5894228A (en) Tristate structures for programmable logic devices
US5600265A (en) Programmable interconnect architecture
US6396303B1 (en) Expandable interconnect structure for FPGAS
US7137095B1 (en) Freeway routing system for a gate array
US6181163B1 (en) FPGA integrated circuit having embedded SRAM memory blocks and interconnect channel for broadcasting address and control signals
JP3284223B2 (ja) 構成可能論理アレイ
US5883526A (en) Hierarchical interconnect for programmable logic devices
US6184706B1 (en) Logic device architecture and method of operation
US6882177B1 (en) Tristate structures for programmable logic devices
US7573297B1 (en) Flexible macrocell interconnect
JP2003511947A (ja) プログラマブルロジックデバイス用ヘテロ型相互接続アーキテクチャ
JPH04225621A (ja) 集積回路
JPH0653817A (ja) プログラマブル論理アレイ集積回路
US20050206407A1 (en) Field-programmable gate array low voltage differential signaling driver utilizing two complimentary output buffers
US6034544A (en) Programmable input/output block (IOB) in FPGA integrated circuits
GB2318663A (en) Hierarchical interconnect for programmable logic devices
US5990702A (en) Flexible direct connections between input/output blocks (IOBs) and variable grain blocks (VGBs) in FPGA integrated circuits
US20080197905A1 (en) Field-programmable gate array low voltage differential signaling driver utilizing two complimentary output buffers
US7508231B2 (en) Programmable logic device having redundancy with logic element granularity
US5982193A (en) Input/output block (IOB) connections to MaxL lines, nor lines and dendrites in FPGA integrated circuits
US6107823A (en) Programmable control multiplexing for input/output blocks (IOBs) in FPGA integrated circuits
US10855283B2 (en) Routing network for reconfigurable circuit
WO2004010581A1 (en) Interconnect structure for electrical devices

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070724

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100303

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100331

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100405

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100430

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100622

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100721

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees