JP3290992B2 - Flexible FPGA input / output architecture - Google Patents

Flexible FPGA input / output architecture

Info

Publication number
JP3290992B2
JP3290992B2 JP53513896A JP53513896A JP3290992B2 JP 3290992 B2 JP3290992 B2 JP 3290992B2 JP 53513896 A JP53513896 A JP 53513896A JP 53513896 A JP53513896 A JP 53513896A JP 3290992 B2 JP3290992 B2 JP 3290992B2
Authority
JP
Japan
Prior art keywords
input
output
conductors
conductor
output buffer
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.)
Expired - Fee Related
Application number
JP53513896A
Other languages
Japanese (ja)
Other versions
JPH11502993A (en
Inventor
プランツ,ウィリアム・シー
カプタノグル,サイナン
リーン,ユン−チェウン
チャン,キング・ダブリュー
エル−アヤット,カールド・エイ
Original Assignee
アクテル・コーポレイション
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 アクテル・コーポレイション filed Critical アクテル・コーポレイション
Priority claimed from PCT/US1996/007405 external-priority patent/WO1996037047A1/en
Publication of JPH11502993A publication Critical patent/JPH11502993A/en
Application granted granted Critical
Publication of JP3290992B2 publication Critical patent/JP3290992B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】 本発明の背景 1.本発明の分野 本発明は、フィールドプログラマブルゲートアレイ
(FPGA)アーキテクチャに関する。さらに詳細には、フ
レキシブルな入出力能力を有するFPGAに関する。
DETAILED DESCRIPTION OF THE INVENTION 1. Field of the Invention The present invention relates to a field programmable gate array (FPGA) architecture. More specifically, the present invention relates to an FPGA having flexible input / output capability.

2.従来技術 近年、フィールドプログラマブルゲートアレイ集積回
路は電子工学で重要商品として定着している。通常、そ
ういった集積回路アーキテクチャは、多くの種類の論理
機能を実行するユーザー向けに設計された論理機能モジ
ュールのアレイ(array)を含んでいる。あらかじめ相
互接続されている複数の導体を含んだプログラムするこ
とができる内部接続アーキテクチャは、論理機能モジュ
ーのアレイに重ね合わせられていて、論理機能モジュー
ルの1つの入力と出力の間にカスタム接続が可能にな
る。複数の入出力(I/O)モジュールは、集積回路上通
常はアレイ周辺付近に配置されていて、アレイからオフ
チップ回路ノードへ論理信号を転送し、さらにアレイへ
論理信号を転送する。I/Oモジュールは、プログラム可
能な相互接続アーキテクチャを介して論理機能モジュー
ルの入力及び出力に接続が可能である。
2. Prior Art In recent years, field programmable gate array integrated circuits have been established as important products in electronics. Typically, such integrated circuit architectures include an array of logic function modules designed for users to perform many types of logic functions. Programmable interconnect architecture, including multiple interconnects that are pre-interconnected, is superimposed on an array of logic function modules, allowing custom connections between one input and output of the logic function module become. A plurality of input / output (I / O) modules are typically located near the periphery of the array on the integrated circuit and transfer logic signals from the array to off-chip circuit nodes and further to the array. I / O modules can be connected to inputs and outputs of logic function modules via a programmable interconnect architecture.

代表的なFPGAの上記エレメントは、ユーザによってユ
ーザーがプログラムできる相互接続エレメントで互いに
選択的に接続されてもよい。ユーザーがプログラムでき
る相互接続エレメントは、一時的にプログラムが可能な
アンチヒューズ、トランジスタ、RAMセルといった幾つ
かの形態をとることができる。
The above elements of a typical FPGA may be selectively connected to each other with user-programmable interconnect elements by a user. User programmable interconnect elements can take several forms, such as temporarily programmable antifuses, transistors, and RAM cells.

FPGA機能に基づくトランジスタ相互接続エレメントの
例は、米国特許第4,870,302号で人々に開示されてい
る。この種類のアーキテクチャを具体化した製品は、カ
リフォルニア州サンチアゴのザイリックス社(Xilinx I
nc)によって達成されている。このアーキテクチャで
は、RAMセルによって制御されるトランジスタは選択的
にターンオンされ、論理機能モジュール間で相互接続を
形成する。別の例は、エル ガマル(El Gamal)らによ
る、EPRAM又はEEPRAMを利用する米国特許第5,187,393号
に見いだされる。しかし、再プログラマブルが可能であ
るといったそれらのアーキテクチャのフレキシブル性
は、相互接続を実行するトランジスタの比較的高い抵抗
値によって相殺される。
Examples of transistor interconnect elements based on FPGA features are disclosed to people in US Pat. No. 4,870,302. Products embodying this type of architecture are available from Xilinx I in Santiago, California.
nc). In this architecture, the transistors controlled by the RAM cells are selectively turned on, forming an interconnect between the logic function modules. Another example can be found in U.S. Pat. No. 5,187,393, which uses EPRAM or EEPRAM, by El Gamal et al. However, the flexibility of those architectures, such as being reprogrammable, is offset by the relatively high resistance of the transistors performing the interconnect.

FPGAアーキテクチャに基づくアンチヒューズの態様の
例の幾つかは、エル ガマルらによる米国特許第4,758,
745号、エル ガマルらによる米国特許第4,873,459号、
グリーネらによる米国特許第5,073,729号、エル アヤ
ットらによる米国特許第5,083,083号、及びマクコルム
らによる米国特許第5,132,571号で開示されている。
Some examples of embodiments of antifuses based on the FPGA architecture are described in U.S. Pat.
No. 745, U.S. Pat.No. 4,873,459 by El Gamar et al.
No. 5,073,729 to Greene et al., US Pat. No. 5,083,083 to El Ayat et al., And US Pat. No. 5,132,571 to McCorm et al.

従来のFPGAデバイスのI/Oアーキテクチャは、通常2
つの形態の中の1つである。米国特許第4,758,745で例
示されている第1の形態では、複数のI/Oモジュールが
集積回路に配置されていて、好ましくは集積回路の周辺
に配置される。各I/Oモジュールはエンドユーザーによ
って配置され、適切なプログラミングによって入力モジ
ュール又は出力モジュールのどちらか一方を形成してよ
い。代表的なI/Oモジュールの例は、ガルブライスらに
よる米国特許第5,017,813号及びエル アヤットらによ
る米国特許第5,083,083号に見いだすことができる。
The I / O architecture of traditional FPGA devices is typically 2
One of the three forms. In a first configuration, illustrated in U.S. Pat. No. 4,758,745, a plurality of I / O modules are located on an integrated circuit, preferably around the periphery of the integrated circuit. Each I / O module is located by the end user and may form either an input module or an output module with appropriate programming. Examples of representative I / O modules can be found in U.S. Pat. No. 5,017,813 by Gallyth et al. And U.S. Pat. No. 5,083,083 by El Ayat et al.

モジュールが入力モジュールとして機能するか、出力
モジュールとして機能するかを決定する制御回路構成と
同様に、典型的にI/OモジュールはI/Oパッドに直接接続
され、入力パッドと出力パッドを含んでいる。I/Oモジ
ュールの入力ノード、出力ノード、及び少なくとも1つ
のコントロールノードは、集積回路の汎用相互接続アー
キテクチャ(general interconnect architecture)の
個々の導体に接続されているので、I/Oモジュールは、
集積回路上に配置された論理機能モジュールに接続され
てもよい。アクテル社(Actel Corporetion)が設計し
たFPGA製品で具体化された従来技術のアーキテクチャで
は、I/Oモジュールの入力ノード、出力ノード及び制御
ノードに関する相互接続導体は、アレイの2〜4列を有
する。
Typically, an I / O module is directly connected to an I / O pad and includes an input pad and an output pad, as well as the control circuitry that determines whether the module functions as an input module or an output module. I have. Since the input nodes, output nodes, and at least one control node of the I / O module are connected to individual conductors of a general interconnect architecture of the integrated circuit, the I / O module comprises:
It may be connected to a logic function module arranged on the integrated circuit. In a prior art architecture embodied in an FPGA product designed by Actel Corporation, the interconnect conductors for the input, output and control nodes of the I / O module have two to four rows of an array.

従来のFPGAI/Oアーキテクチャの第2の形態は、集積
回路上のI/Oパッドに出力導体とバッファ化された入力
導体のみを利用している。出力導体と入力導体は、論理
機能モジュールのアレイの中へと固定の距離で延びてい
て、通常集積回路の周辺に位置する単体の論理機能モジ
ュールを提供するのに十分である。このようなアーキテ
クチャの例は、カリフォルニアのサンタクララの1994年
のクイックロジックデータブックの212ページに記載さ
れている。
A second form of conventional FPGA I / O architecture utilizes only output conductors and buffered input conductors on I / O pads on an integrated circuit. The output and input conductors extend a fixed distance into the array of logic function modules and are sufficient to provide a single logic function module, typically located at the periphery of the integrated circuit. An example of such an architecture is described on page 212 of the 1994 Quick Logic Data Book of Santa Clara, California.

集積回路の論理機能モジュールに入力が提供され、出
力が得られることが可能である配置を提供する従来技術
が可能である一方、FPGA及び別のデバイスで用いられる
I/Oアーキテクチャには改良の余地がある。
Used in FPGAs and other devices, while conventional techniques are possible to provide an arrangement in which the logic function modules of the integrated circuit are provided with inputs and outputs can be obtained
There is room for improvement in the I / O architecture.

本発明の目的は、従来のアーキテクチャよりフレキシ
ブルなFPGA及びユーザーがプログラムするができる集積
回路装置のI/Oアーキテクチャを提供することである。
It is an object of the present invention to provide a more flexible FPGA and a user programmable I / O architecture for integrated circuit devices than conventional architectures.

本発明の目的は、I/Oモジュールを固定位置に提供し
なくてはならないことが排除されたFPGA及びユーザーが
プログラムするができる集積回路装置のI/Oアーキテク
チャを提供することである。
SUMMARY OF THE INVENTION It is an object of the present invention to provide an FPGA and a user programmable I / O architecture for an integrated circuit device which eliminates having to provide I / O modules in fixed locations.

本発明の別の目的は、入力信号、出力信号および制御
信号のための水平および垂直のルーティング導体に多数
の分割および相互接続のオプションおよび変形を提供す
るFPGAおよび他のユーザプログラマブルな集積回路装置
のI/Oアーキテクチャを提供することである。
Another object of the present invention is to provide an FPGA and other user-programmable integrated circuit devices that provide multiple splitting and interconnecting options and variations on horizontal and vertical routing conductors for input, output and control signals. To provide an I / O architecture.

本発明の別の目的は、静電容量を低減し速度を向上さ
せるように減量されたプログラムが可能な相互接続エレ
メントを有するFPGA及びユーザーがプログラムできる集
積回路装置のI/Oアーキテクチャを提供することであ
る。
It is another object of the invention to provide an I / O architecture for FPGAs and user programmable integrated circuit devices having reduced programmable interconnect elements to reduce capacitance and increase speed. It is.

本発明の目的は、使用していないルーティング導体を
相互接続に用いることを可能にする選択されたルーティ
ング導体の直接接続されたユーザプログラマブルな相互
接続エレメントを含むFPGA及びユーザープログラマブル
な集積回路のI/Oアーキテクチャを提供することであ
る。
SUMMARY OF THE INVENTION It is an object of the present invention to provide FPGAs and I / Os for user-programmable integrated circuits that include directly connected user-programmable interconnect elements of selected routing conductors that allow unused routing conductors to be used for interconnection. O to provide an architecture.

本発明の目的は、増大された出力ドライブを提供する
ように出力バッファの1つ以上に連結するFPGA及びユー
ザープログラマブルな集積回路のI/Oアーキテクチャを
提供することである。
It is an object of the present invention to provide an FPGA and user programmable integrated circuit I / O architecture that couples to one or more of the output buffers to provide increased output drive.

本発明の簡単な説明 本発明によると、FPGA及びユーザプログラマブルな集
積回路装置で用いられるフレキシブルなI/Oアーキテク
チャが、提供される。
BRIEF DESCRIPTION OF THE INVENTION In accordance with the present invention, there is provided a flexible I / O architecture for use in FPGAs and user-programmable integrated circuit devices.

本発明の第1の実施形態では、フィールドプログラマ
ブルゲートアレイ集積回路装置に入出力アーキテクチャ
が提供される。このようなFPGAは、ロウ(rows)とカラ
ム(columns)から成るアレイ状に配置された複数の論
理機能モジュールを含んでいる。各モジュールは、少な
くとも1つの入力導体と少なくとも1つの出力導体を保
持している。しかしながら、より典型的には各モジュー
ルは複数の入力導体と複数の出力導体を保持している。
相互接続アーキテクチャは論理機能モジュールに載せら
れていて、ユーザプログラマブルな相互接続エレメント
をプログラムすることで論理機能モジュールの入力及び
出力に接続されて用いることができる複数の相互接続導
体を含んでいる。
In a first embodiment of the present invention, an input / output architecture is provided for a field programmable gate array integrated circuit device. Such an FPGA includes a plurality of logic function modules arranged in an array of rows and columns. Each module has at least one input conductor and at least one output conductor. However, more typically, each module has multiple input conductors and multiple output conductors.
The interconnect architecture is mounted on the logic function module and includes a plurality of interconnect conductors that can be used in connection with the inputs and outputs of the logic function module by programming user-programmable interconnect elements.

本発明のI/Oアーキテクチャは複数の入出力カーネル
を採用している。各入出力カーネルは集積回路のI/Oパ
ッドに接続されていて、I/Oパッドの1つに接続された
データ入力と入力バッファ導体に接続されたデータ出力
とを保持する入力バッファと、出力バッファデータ導体
に接続されたデータ入力、I/Oパッドに接続されたデー
タ出力、出力バッファイネーブル導体に接続されたイネ
ーブル入力とを含んでいる。入力バッファ導体と出力バ
ッファ導体はカラム方向またはロウ方向に延びている。
The I / O architecture of the present invention employs multiple input / output kernels. Each input / output kernel is connected to an I / O pad of the integrated circuit, the input buffer holding a data input connected to one of the I / O pads and a data output connected to the input buffer conductor, and an output buffer. A data input connected to the buffer data conductor, a data output connected to the I / O pad, and an enable input connected to the output buffer enable conductor. The input buffer conductor and the output buffer conductor extend in the column direction or the row direction.

本発明によると、入力バッファデータ導体と出力バッ
ファデータ導体の異なるいくつかは、異なる数のカラム
又はロウが延びている。ユーザプログラマブルな相互接
続エレメントは、論理機能モジュールの入力と出力間及
び入力バッファデータ導体と出力バッファデータとの間
を接続するのに用いられてもよい。
According to the present invention, some different of the input buffer data conductors and the output buffer data conductors have different numbers of columns or rows extending. User-programmable interconnect elements may be used to connect between the inputs and outputs of the logic function module and between the input buffer data conductors and the output buffer data.

図面の簡単な説明 図1は、本発明に係るI/Oアーキテクチャの1つの態
様を含んでいる典型的なFPGAのブロック図である。本発
明ではI/O導体が論理機能モジュールのアレイの中へ異
なる長さで延びていて、ロウ方向又はカラム方向におけ
る異なる数の論理機能モジュールの入力及び出力に接続
が可能である。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a typical FPGA including one aspect of the I / O architecture according to the present invention. In the present invention, the I / O conductors extend at different lengths into the array of logic function modules and can be connected to the inputs and outputs of different numbers of logic function modules in the row or column direction.

図2は、図1のアーキテクチャのより詳細なブロック
図であり、アレイの一対のカラムと垂直に方向づけられ
たI/Oカーネルの単体を含んでいるものを示す。
FIG. 2 is a more detailed block diagram of the architecture of FIG. 1, showing a pair of columns of an array and a single vertically oriented I / O kernel.

図3は図1のアーキテクチャのより詳細なブロック図
であり、アレイの一対のカラムと水平方向に方向づけら
れたI/Oカーネルの単体を含んでいるものを示す。
FIG. 3 is a more detailed block diagram of the architecture of FIG. 1, showing a single pair of columns of the array and a single horizontally-oriented I / O kernel.

図4は図1に示したFPGAのより詳細な部分的ブロック
図であって、本発明に係る増加されたドライブの出力バ
ッファに接続する能力を示すものである。
FIG. 4 is a more detailed partial block diagram of the FPGA shown in FIG. 1, illustrating the ability to connect to an increased drive output buffer according to the present invention.

図5は、図1に示されているようなFPGAアレイの一部
のより詳細なブロック構成図であり、全体のイネーブル
信号がアレイのロウとカラムの双方に沿った水平および
垂直方向に導かれる本発明の態様を示している。
FIG. 5 is a more detailed block diagram of a portion of the FPGA array as shown in FIG. 1, where the entire enable signal is directed both horizontally and vertically along both the rows and columns of the array. 1 illustrates an embodiment of the invention.

図6aは、異なる出力バッファに対する入力導体がアレ
イ中の異なる方向へ伸びている本発明の特徴を示すFPGA
のブロック構成図。
FIG. 6a illustrates a feature of the present invention in which the input conductors for different output buffers extend in different directions in the array.
FIG.

図6bは、異なる入力バッファの出力導体がアレイ中の
異なる方向へ伸びている本発明の特徴を示すFPGAのブロ
ック構成図。
FIG. 6b is a block diagram of an FPGA showing features of the present invention in which the output conductors of different input buffers extend in different directions in the array.

図7は、入力および出力バッファが汎用相互接続(ge
neral interconnect)に接続され、FPGAにおけるI/Oの
割り当てにおいて大きな柔軟性を与える本発明の特徴を
示すFPGAのブロック構成図。
FIG. 7 shows that the input and output buffers are generic interconnects (ge
FIG. 1 is a block diagram of an FPGA connected to a neral interconnect and showing a feature of the present invention that provides great flexibility in allocating I / O in the FPGA.

好ましい実施形態の詳細な説明 本発明の以下の説明は単なる例示であり、どのような
方法によっても制限されないことは当業者により理解さ
れる。そのような当業者は本発明の他の実施の形態もす
ぐに思いつく。そのような当業者により、ここでは論理
機能モジュールのロウおよびカラムという用語により定
義される方向を参照して開示がなされているが、そのよ
うな用語はいずれかの方向に枠を90度回転させることに
より置き換えることができることもまた理解される。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS It will be appreciated by those skilled in the art that the following description of the present invention is illustrative only and is not limited in any way. Such skilled persons will readily recognize other embodiments of the present invention. Although disclosed by such artisans herein with reference to directions defined by the terms row and column of the logic function module, such terms rotate the frame 90 degrees in either direction. It is also understood that the

図1から図3において、本発明のI/Oアーキテクチャ
の1つの態様をさらに含む典型的なFPGAアレイのブロッ
ク構成図が示されている。本発明のこの態様によれば、
専用のI/O導体は論理機能モジュールの異なる距離に延
び、ロウとカラムのいずれかの方向において異なる数の
論理機能モジュールの入力と出力に接続可能である。
FIGS. 1-3 show block diagrams of a typical FPGA array that further includes one aspect of the I / O architecture of the present invention. According to this aspect of the invention,
Dedicated I / O conductors extend different distances of the logic function module and are connectable to inputs and outputs of different numbers of logic function modules in either the row or column direction.

本発明は、ユーザプログラム可能な集積回路の環境、
典型的なFPGA環境で機能する。論理機能モジュール12−
1〜12−18のアレイ10は集積回路中に配置される。当業
者にとって、図1において示される実施の形態は単なる
例示であり、任意の数の論理機能モジュール12は1つの
集積回路ダイ上に配置されてもよいことはすぐに理解で
きる。本発明の考え方により製造された実際の集積回路
において、アレイ10内に数百または数千のそのような論
理機能モジュール12が存在してもよい。
The present invention provides a user-programmable integrated circuit environment,
Works in a typical FPGA environment. Logic function module 12−
Arrays 1 to 12-18 are located in an integrated circuit. One of ordinary skill in the art can readily appreciate that the embodiment shown in FIG. 1 is merely exemplary, and that any number of logic function modules 12 may be located on a single integrated circuit die. In an actual integrated circuit manufactured according to the concepts of the present invention, there may be hundreds or thousands of such logic function modules 12 in the array 10.

本発明に利用できる多くのよく知られた論理機能モジ
ュール12の設計がある。全てを含まないが典型的な、具
体的のリストは、米国特許番号4,758,745号、4,910,917
号、5,055,718号、および、1994年10月28日に提出され
た08/332,550号の係属中の出願において開示または請求
されているものを含む。シリコンにおける本発明の実際
の実施化に対して選択された特定の論理機能モジュール
12は設計の選択が大きな問題となることは当業者の理解
するところである。
There are many well-known logic function module 12 designs available for the present invention. A typical, but not all, specific list is U.S. Patent Nos. 4,758,745, 4,910,917.
No. 5,055,718, and those disclosed or claimed in pending application Ser. No. 08 / 332,550, filed Oct. 28, 1994. Specific logic function modules selected for actual implementation of the invention in silicon
It is understood by those skilled in the art that design choice 12 is a major issue.

当業者にとって、論理機能モジュール12−1〜12−18
の任意の1つにより実行される機能は、通常、製造プロ
セスにより事前に定義されておらず、むしろ、プログラ
ムできることが理解できる。論理機能モジュール12−1
〜12−18の機能をプログラムする方法と回路は、その業
界ではよく知られており、この開示の範囲外である。
For those skilled in the art, logic function modules 12-1 to 12-18
It is understood that the functions performed by any one of the following are typically not predefined by the manufacturing process, but rather can be programmed. Logic function module 12-1
Methods and circuits for programming ~ 12-18 functions are well known in the art and are outside the scope of this disclosure.

論理機能モジュール12−1〜12−18のそれぞれは、多
くの入力を有していることが示されている。説明目的の
ため、論理機能モジュール12−1〜12−18のそれぞれが
5つの入力14−1〜14−5(モジュール12−13において
付されている)を有することが示されており、それらは
論理機能モジュールを表すブロックから下側へ延びてい
る。実際の集積回路では、各論理機能モジュール12−1
〜12−18に対する入力14の数は使用されるモジュールの
タイプにより決定され、また、入力は他の方向にもしく
は相互接続を容易にするため2つ以上の方向に延びても
よい。
Each of the logic function modules 12-1 to 12-18 is shown to have many inputs. For illustrative purposes, each of the logic function modules 12-1 to 12-18 is shown to have five inputs 14-1 to 14-5 (labeled in modules 12-13), It extends downward from the block representing the logic function module. In an actual integrated circuit, each logic function module 12-1
The number of inputs 14 for ~ 12-18 is determined by the type of module used, and the inputs may extend in other directions or in more than one direction to facilitate interconnection.

論理機能モジュール12−1〜12−18のそれぞれがいく
つかの出力を有していることがまた示されている。説明
目的のため、論理機能モジュール12−1〜12−18のそれ
ぞれが3つの出力16−1〜16−3(モジュール12−1に
おいて付された)を有することが示され、それらは論理
機能モジュール12−1〜12−18を表すブロックの右側ま
たは左側のいずれかまで延びている。実際の集積回路に
おいて、出力16−1〜16−3はまた他の方向にもしくは
相互接続を容易にするため2つ以上の方向に延びてもよ
い。
It is also shown that each of the logic function modules 12-1 to 12-18 has several outputs. For illustrative purposes, each of the logic function modules 12-1 to 12-18 is shown to have three outputs 16-1 to 16-3 (labeled in module 12-1), which are It extends to either the right or left side of the block representing 12-1 to 12-18. In an actual integrated circuit, the outputs 16-1 to 16-3 may also extend in other directions or in more than one direction to facilitate interconnection.

相互接続アーキテクチャは論理機能モジュール12−1
〜12−18のアレイ上に重ね合わせられる。相互接続アー
キテクチャは、複数の水平および垂直の相互接続導体か
らなる。図面を明確に容易に理解させるために、水平お
よび垂直の相互接続導体が論理機能モジュール12−1〜
12−18間を通過しているのが示されているが、当業者に
とっては、本発明にかかる集積回路の実際のレイアウト
がマクラム(McCollum)等の米国特許番号5,132,571号
に開示または請求されたようなモジュールの海アーキテ
クチャ(a“sea of modules"architecture)を採用し
てもよいことは理解できる。そこでは、相互接続導体
は、1つ以上の金属相互接続層において論理機能モジュ
ール12−1〜12−18上に直接配置されてもよい。
Interconnect architecture is logical function module 12-1
Superimposed on an array of ~ 12-18. The interconnect architecture consists of a plurality of horizontal and vertical interconnect conductors. In order to make the drawings clear and easy to understand, the horizontal and vertical interconnect conductors are
Although shown passing between 12-18, for those skilled in the art, the actual layout of the integrated circuit according to the present invention was disclosed or claimed in U.S. Pat. No. 5,132,571 to McCollum et al. It can be appreciated that a "sea of modules" architecture may be employed. There, the interconnect conductors may be disposed directly on the logic function modules 12-1 to 12-18 in one or more metal interconnect layers.

当業者により認識されるように、相互接続アーキテク
チャにおける個々の相互接続導体がアレイの長手方向あ
るいは幅方向を走ってもよい;いくつかは当業者には知
られているようにいくつかの長さに分割されてもよい。
ユーザがプログラムできる相互接続エレメントの種々の
形式の中の1つは、相互接続導体のセグメントに他のセ
グメント並びに論理機能モジュール12−1〜12−18の入
力14−1および出力16−1〜16−3を接続するために使
用されてもよい。そのようなエレメントのよく知られた
例として、アンチヒューズ(antifuse)、トランジス
タ、RAMセル、不揮発性メモリセル等がある。プログラ
ミングを実現し、また、なされるべき特定の接続を定義
するための回路を含む、そのようなエレメントの操作と
プログラミングは、当業者には知られており、ここでは
開示を不明瞭にすることを避けるため繰り返さない。
As will be appreciated by those skilled in the art, individual interconnect conductors in an interconnect architecture may run the length or width of the array; some may be of some length as is known to those skilled in the art. May be divided.
One of the various types of user-programmable interconnect elements is that the segments of the interconnect conductor include other segments as well as inputs 14-1 and outputs 16-1-16 of the logic function modules 12-1-12-18. -3 may be used to connect. Well-known examples of such elements include antifuses, transistors, RAM cells, non-volatile memory cells, and the like. The operation and programming of such elements, including the circuitry for implementing programming and defining the particular connections to be made, are known to those skilled in the art and will not obscure the disclosure herein. Do not repeat to avoid.

図1の実施の形態の説明において、水平および垂直の
相互接続導体は、水平および垂直方向に論理機能モジュ
ール12−1〜12−18間を走る多重導体ラインとして記述
されているチャネルの中にグループで示されている。例
えば、引用符号18により集合的に認識される5つの垂直
の相互接続導体のグループは、論理機能モジュール対12
−3と12−4、12−9と12−10、12−15と12−16間のア
レイを下側に走っているのが示されている。同様に、引
用符号20により集合的に認識される5つの水平の相互接
続導体のグループは、論理機能モジュール対12−7と12
−13、12−8と12−14、12−9と12−15、12−10と12−
16、12−11と12−17と、12−12と12−18間のアレイを横
断して走っているのが示されている。本発明の実際の実
施の形態において使用される相互接続の数は設計上の選
択の問題となる。
In the description of the embodiment of FIG. 1, the horizontal and vertical interconnect conductors are grouped into channels that are described as multiconductor lines running between the logic function modules 12-1 to 12-18 in the horizontal and vertical directions. Indicated by For example, a group of five vertical interconnect conductors, collectively identified by reference numeral 18, is a logic function module pair 12
-3 and 12-4, 12-9 and 12-10, 12-15 and 12-16 are shown running down the array. Similarly, a group of five horizontal interconnect conductors, collectively identified by reference numeral 20, comprises the logic function module pair 12-7 and 12-7.
-13, 12-8 and 12-14, 12-9 and 12-15, 12-10 and 12-
16, 12-11 and 12-17 and running across the array between 12-12 and 12-18. The number of interconnects used in a practical embodiment of the invention is a matter of design choice.

図1から見られるように、多くのユーザがプログラム
できる相互接続エレメントは(小さな円、符号22が付さ
れたもの、で示すように)、水平の相互接続導体と垂直
の相互接続導体との交差部(intersections)、水平の
相互接続導体と論理機能モジュールの入力との交差部、
および、垂直の相互接続導体と論理機能モジュールの出
力との交差部に配置される。このように、5つの垂直の
相互接続導体18と、5つの水平の相互接続導体20とが合
流することにより形成される25の交差部は全て、他の交
差する相互接続導体であるようなアンチフューズ(anti
fuses)によって配設される。
As can be seen from FIG. 1, the interconnect elements that can be programmed by many users (as indicated by small circles, labeled 22) are the intersections of horizontal and vertical interconnect conductors. Intersections, intersections of horizontal interconnect conductors with inputs of logic function modules,
And at the intersection of the vertical interconnect conductor and the output of the logic function module. Thus, the 25 intersections formed by the merging of the five vertical interconnect conductors 18 and the five horizontal interconnect conductors 20 are all anti-intersections such as other intersecting interconnect conductors. Fuse (anti
fuses).

交差部がアンチフューズにより配設される程度は設計
上の選択の問題であり、多くの場合、100%の配設は望
まれない、ということを当業者は認識するであろう。
Those skilled in the art will recognize that the extent to which intersections are provided by antifuses is a matter of design choice, and in many cases 100% placement is not desired.

さらに、5つの垂直の相互接続導体18は、論理機能モ
ジュール12−3と12−4、12−9と12−10、12−15と12
−16からの出力16−1〜16−3を横切り、垂直の相互接
続導体18に左側から接近する論理機能モジュール12−
3、12−9および12−15からの出力16−1〜16−3を横
切り、垂直の相互接続導体18に右側から接近する論理機
能モジュール12−4、12−10および12−16からの出力16
−1〜16−3を横切っているのが示されている。これら
の交差部のそれぞれはまたユーザがプログラムできる相
互接続エレメントとともに配設される。
In addition, the five vertical interconnect conductors 18 are logic function modules 12-3 and 12-4, 12-9 and 12-10, 12-15 and 12
Logic function module 12-traversing outputs 16-1 to 16-3 and approaching vertical interconnection conductor 18 from the left side
3. Outputs from logic function modules 12-4, 12-10 and 12-16 that cross outputs 16-1 to 16-3 from 12-9 and 12-15 and approach the vertical interconnect conductor 18 from the right. 16
It is shown crossing -1 to 16-3. Each of these intersections is also arranged with user programmable interconnect elements.

5つの水平の相互接続導体20もまた、論理機能モジュ
ール12−7〜12−12の入力14−1〜14−5、5つの水平
の相互接続導体20に上から接近する論理機能モジュール
12−7〜12−12の入力14−1〜14−5を横切っているの
が示される。これらの交差部のそれぞれもまた、ユーザ
がプログラムできる交差部エレメントによって存在す
る。
The five horizontal interconnect conductors 20 also have inputs 14-1 to 14-5 of the logic function modules 12-7 to 12-12, and the logic function module approaching the five horizontal interconnect conductors 20 from above.
It is shown traversing inputs 14-1 to 14-5 of 12-7 to 12-12. Each of these intersections is also present by a user-programmable intersection element.

この開示を通して「I/Oカーネル」の用語が用いられ
る。ここで用いられるように、「I/Oカーネル」は集積
回路上の1つのI/Oパッドに接続するI/Oユニットをい
う。図1に示すように、2つのそのようなI/Oカーネル
がある。第1のI/Oカーネルは図2を参照することによ
りより最も明確になり、I/Oパッド24、入力バッファ26
および出力バッファ28を含んでいる。入力バッファ26の
データ入力はI/Oパッド24に接続され、出力バッファ28
のデータ出力もまたI/Oパッド24に接続される。入力バ
ッファ26の出力はデータ出力導体30に接続される。出力
バッファ28の入力はデータ入力導体32に接続される。最
後に、図1に示すように、出力バッファ28はイネーブル
入力導体34と、スルー制御入力導体36とを備える。イネ
ーブル入力導体34は、当業者に知られているように、例
えば、I/Oカーネルが集積回路の入力として使用される
場合のように、出力バッファ28の出力をハイインピーダ
ンス状態にし、それを不能にするために使用される。イ
ネーブル入力34およびスルー制御入力36の機能を実現す
る種々の方法が当業者には知られており、ここでは、さ
らなる説明は行わない。
Throughout this disclosure, the term "I / O kernel" is used. As used herein, "I / O kernel" refers to an I / O unit that connects to one I / O pad on an integrated circuit. As shown in FIG. 1, there are two such I / O kernels. The first I / O kernel is most clearly defined with reference to FIG.
And an output buffer 28. The data input of input buffer 26 is connected to I / O pad 24 and output buffer 28
Is also connected to the I / O pad 24. The output of input buffer 26 is connected to data output conductor 30. The input of output buffer 28 is connected to data input conductor 32. Finally, as shown in FIG. 1, the output buffer 28 includes an enable input conductor 34 and a slew control input conductor 36. The enable input conductor 34 places the output of the output buffer 28 in a high impedance state and disables it, as is known to those skilled in the art, for example, when an I / O kernel is used as an input of an integrated circuit. Used to Various ways of implementing the functions of the enable input 34 and the slew control input 36 are known to those skilled in the art and will not be described further here.

第2のI/Oカーネルは図3を参照することにより最も
明確になり、I/Oパッド38、入力バッファ40および出力
バッファ42を含んでいる。入力バッファ40のデータ入力
はI/Oパッド38に接続され、出力バッファ42のデータ出
力もまたI/Oパッド38に接続される。第1のカーネルに
関して言えば、入力バッファ40の出力はI/Oカーネルの
データ出力導体44に接続される。出力バッファ42の入力
はI/Oカーネルのデータ入力導体46に接続される。最後
に、出力バッファ42もまたイネーブル入力導体48および
スルー制御入力導体50を備える。図において示される2
つのI/Oカーネルは単なる例示であり、本発明の考え方
にしたがって製造される実際の集積回路において用いら
れるそのようなI/Oカーネルの数は、設計上の選択の問
題となることは、当業者の認識するところである。その
ような当業者は、この装置が、集積回路ダイの周辺の制
限された領域に割り当てられる専用I/Oモジュールを用
いた従来の装置よりも、より柔軟性があることを認識す
る。
The second I / O kernel is most apparent with reference to FIG. 3, and includes an I / O pad 38, an input buffer 40, and an output buffer 42. The data input of input buffer 40 is connected to I / O pad 38, and the data output of output buffer 42 is also connected to I / O pad 38. With respect to the first kernel, the output of input buffer 40 is connected to data output conductor 44 of the I / O kernel. The input of the output buffer 42 is connected to the data input conductor 46 of the I / O kernel. Finally, output buffer 42 also includes an enable input conductor 48 and a slew control input conductor 50. 2 shown in the figure
The number of such I / O kernels used in an actual integrated circuit manufactured in accordance with the concepts of the present invention is merely exemplary, and the number of such I / O kernels is a matter of design choice. This is what the traders recognize. Such a person skilled in the art will recognize that this device is more flexible than conventional devices using dedicated I / O modules assigned to a limited area around the integrated circuit die.

本発明の重要な態様は、入力バッファ26と40それぞれ
のデータ出力導体30と44、出力バッファ28と42それぞれ
のデータ入力導体32と46、と本発明のアーキテクチャに
おいて各I/Oカーネルの出力バッファ28と42の1個以上
のイネーブルスルー制御入力導体34と36と48と50の特性
とルート決定(routing)に関する。これらの線の特性
とルート決定は、以下に詳述されるようにパワフルでフ
レキシブルなI/O構造を形成する。
An important aspect of the present invention is that the data output conductors 30 and 44 of the input buffers 26 and 40, respectively, the data input conductors 32 and 46 of the output buffers 28 and 42, respectively, and the output buffer of each I / O kernel in the architecture of the present invention. It relates to the characteristics and routing of one or more of the enable through control input conductors 28 and 42. The properties and routing of these lines form a powerful and flexible I / O structure, as detailed below.

本発明のこの態様による論理機能モジュール12−1な
いし12−8の入力14−1ないし14−5と出力16−1ない
し16−3とI/Oカーネル間のインターフェースは、第1
のI/Oカーネルを示すアレイの垂直方向の詳細を示す図
2と、第2のI/Oカーネルを示すアレイの水平方向の詳
細を示す図3に、最も明瞭に示されている。
The interface between the inputs 14-1 to 14-5 and the outputs 16-1 to 16-3 of the logic function modules 12-1 to 12-8 and the I / O kernel according to this aspect of the present invention is the first
2 showing the vertical details of the array showing the I / O kernel of FIG. 2 and FIG. 3 showing the horizontal details of the array showing the second I / O kernel.

本発明の好ましい実施形態によれば、データ入出力導
体32と30と40と44は、ユーザがプログラムできる素子を
用いて容易に配設される。完全な配設は、明らかに最大
の接続性を提供するが、容量性負荷もまた追加する。必
要な回路特性を達成するためには、これら導体の部分的
な配設が望ましい。図1の考察からわかるように、本発
明のアーキテクチャにおける各I/Oカーネルの出力バッ
ファ28と42のイネーブルおよびスルー制御入力導体34と
36と48と50は、ユーザがプログラムできる相互接続エレ
メントを介してVcc又は接地に接続可能である。出力バ
ッファ28と42のそれぞれのイネーブル入力導体34と48は
アレイ10の論理機能モジュール12−1ないし12−18に接
続可能であるが、出力バッファ28と42のそれぞれのスル
ーレート制御入力36と50はVcc又は接地トラックにのみ
接続可能である。
According to a preferred embodiment of the present invention, the data input / output conductors 32, 30, 40, and 44 are easily arranged using user programmable elements. Complete deployment clearly provides maximum connectivity, but also adds capacitive loading. Partial placement of these conductors is desirable to achieve the required circuit characteristics. As can be seen from the discussion of FIG. 1, the enable and slew control input conductors 34 of the output buffers 28 and 42 of each I / O kernel in the architecture of the present invention.
36, 48 and 50 can be connected to Vcc or ground via user programmable interconnect elements. The respective enable input conductors 34 and 48 of the output buffers 28 and 42 are connectable to the logic function modules 12-1 to 12-18 of the array 10, but the respective slew rate control inputs 36 and 50 of the output buffers 28 and 42. Can only be connected to Vcc or ground tracks.

図4に関しては、本発明の他の態様が図示されてい
る。本発明のこの態様は、本発明にかかる増大駆動用の
出力バッファの集団接続を可能にしている。
Referring to FIG. 4, another aspect of the present invention is illustrated. This aspect of the invention allows for a collective connection of the output buffers for increased drive according to the invention.

図4において、2個の代表的な論理機能モジュール12
−1と12−2が示されている。アーキテクチャの不必要
な詳細部は、発明のこの態様の理解を容易にするために
省略されている。論理機能モジュール12−1と12−2
は、各々3個の出力バッファ12−1a、12−1b、12−1cと
12−2a、12−2b、12−2cをそれぞれ有していることが示
されている。これら出力バッファは、それぞれ論理機能
モジュール出力線52、54、56、58、60、と62を駆動す
る。2個の出力カーネルの部分は、それぞれI/Oパッド6
8と70を駆動する出力バッファ64と66を含んでいること
が示されている。出力バッファ64と66への入力導体72と
74は、論理機能モジュール出力線52、54、56、58、60と
62を交差する。交差部は白丸で示すユーザがプログラム
できる相互接続エレメント76、78、80、82、84、86、8
8、90、92、94、96、と98によって充分に設置される。
In FIG. 4, two representative logic function modules 12
-1 and 12-2 are shown. Unnecessary details of the architecture have been omitted to facilitate understanding of this aspect of the invention. Logic function modules 12-1 and 12-2
Are three output buffers 12-1a, 12-1b, and 12-1c, respectively.
It is shown to have 12-2a, 12-2b, and 12-2c, respectively. These output buffers drive logic function module output lines 52, 54, 56, 58, 60, and 62, respectively. The parts of the two output kernels are I / O pads 6
It is shown to include output buffers 64 and 66 that drive 8 and 70. With input conductor 72 to output buffers 64 and 66
74 is the logic function module output line 52, 54, 56, 58, 60
Cross 62. Intersections are user programmable interconnect elements 76, 78, 80, 82, 84, 86, 8 indicated by open circles
8, 90, 92, 94, 96, and 98 are fully installed.

論理機能モジュール12−1と12−2の一方の同一ノー
ドにプログラム可能に接続できる集積回路の同一領域に
2個の出力バッファの出力バッファ入力導体72と74を設
けることは特別な利点がある。2個の出力バッファの入
力を同一の駆動信号に接続することにより、高駆動性能
を有する出力が形成可能である。
The provision of the output buffer input conductors 72 and 74 of the two output buffers in the same area of the integrated circuit that can be programmably connected to one and the same node of one of the logic function modules 12-1 and 12-2 has particular advantages. By connecting the inputs of the two output buffers to the same drive signal, an output having high drive performance can be formed.

図4に示すように、ユーザがプログラムできる相互接
続エレメント80と92はプログラム処理されている(黒丸
で示す)。従って、論理機能モジュールは12−2の出力
バッファ12−2bは両出力バッファ64と66の入力を駆動す
る。ユーザはI/Oパッド68と70を結合し、その結果、高
駆動性能の出力ノードとなる。例えば、各出力バッファ
64と66が12mA駆動可能な場合は、それらは一団とするこ
とにより24mAの出力駆動を提供する。
As shown in FIG. 4, the user-programmable interconnect elements 80 and 92 are programmed (indicated by solid circles). Thus, the logic function module 12-2's output buffer 12-2b drives the inputs of both output buffers 64 and 66. The user couples I / O pads 68 and 70, resulting in an output node with high drive performance. For example, each output buffer
If 64 and 66 are capable of driving 12 mA, they can be combined to provide a 24 mA output drive.

また図4に示すように、出力バッファ64と66のイネー
ブル入力線100と102は、線104と交差していることが示
されている。ユーザがプログラムできる相互接続エレメ
ント106と108(黒丸で示す)は、単線104から出力バッ
ファ64と66の制御が可能となるようにプログラム処理さ
れている。線104上のイネーブル信号は種々の信号源か
ら来ることが可能であることは、当業者は認めるであろ
う。線104は汎用相互接続線、さらにここで開示される
ような特別のイネーブル線、I/Oカーネルにおける入力
バッファの一方の出力、接地又はVccなどの固定電圧が
可能である。このような信号のソースは本発明の部分で
はないが、むしろ本発明の一部である集積回路アーキテ
クチャに課せられる回路設計の一部である。
Also, as shown in FIG. 4, enable input lines 100 and 102 of output buffers 64 and 66 are shown to intersect line 104. User programmable interconnect elements 106 and 108 (indicated by solid circles) are programmed to allow control of output buffers 64 and 66 from a single line 104. One skilled in the art will recognize that the enable signal on line 104 can come from a variety of sources. Line 104 may be a general interconnect line, as well as a special enable line as disclosed herein, one output of an input buffer in an I / O kernel, ground or a fixed voltage such as Vcc. The source of such signals is not part of the present invention, but rather is part of the circuit design imposed on the integrated circuit architecture that is part of the present invention.

図5は図1に示すようなアレイ10の部分のさらに詳細
なブロック図であり、グローバルイネーブル信号がアレ
イのロウ及びカラムの両方に沿って水平及び垂直の両方
向にルート設定可能な本発明の態様を示す。図5は図1
と非常に同じような構成であり、グローバルイネーブル
線110とグローバルイネーブルが望ましい任意の出力バ
ッファのイネーブル入力との交差部に設けられたユーザ
プログラマブルな相互接続エレメントをプログラムする
ことにより、任意の数のI/Oカーネルの出力バッファを
イネーブル動作するために使用可能な“折れた”グロー
バルイネーブル線110が追加されている。
FIG. 5 is a more detailed block diagram of a portion of the array 10 as shown in FIG. 1, wherein aspects of the present invention allow the global enable signal to be routed both horizontally and vertically along both the rows and columns of the array. Is shown. FIG. 5 is FIG.
A very similar configuration, with any number of user programmable interconnect elements at the intersection of global enable line 110 and the enable input of any output buffer for which global enable is desired, A "broken" global enable line 110 has been added that can be used to enable the output buffer of the I / O kernel.

グローバルイネーブル線110は、アレイ10の周辺をロ
ウおよびカラムの両方向に横断しているのが示されてい
る。グローバルイネーブル線110は、アレイ10の頭部と
底部の両方をロウ方向に横断し、アレイの左右両サイド
をカラム方向に横断しているのが示されている。グロー
バルイネーブル線110はアレイ10の4辺すべてを占める
必要はなく、2または3辺を占めることもでき、本発明
の範囲内にあることは、当業者に認められるであろう。
バッファのイネーブル入力がそれに接続可能である限
り、グローバルイネーブル線110はアレイ10の周辺に配
置される必要はないということもまた、このような当業
者は認めるであろう。このようなグローバルイネーブル
線10は、また、クロック信号ルート設定などのアレイ10
の他の機能用にも使用可能である。
Global enable line 110 is shown traversing the periphery of array 10 in both row and column directions. Global enable line 110 is shown traversing both the top and bottom of array 10 in the row direction and traversing the left and right sides of the array in the column direction. Those skilled in the art will recognize that the global enable lines 110 need not occupy all four sides of the array 10 and may occupy two or three sides and are within the scope of the present invention.
Those skilled in the art will also recognize that global enable line 110 need not be located around array 10 as long as the enable input of the buffer is connectable to it. Such a global enable line 10 also serves as an array 10 for clock signal routing, etc.
It can be used for other functions.

再度図1に関して、本発明の他の態様は、論理機能モ
ジュールの出力から出力バッファの入力導体に対してな
される接続を、たとえ出力バッファの入力導体が論理機
能モジュールの出力導体と同じ方向に走るとしても、単
一のユーザがプログラムできる相互接続エレメントを用
いて可能にする。
Referring again to FIG. 1, another aspect of the invention is that the connection made from the output of the logic function module to the input conductor of the output buffer, even if the input conductor of the output buffer runs in the same direction as the output conductor of the logic function module. Even with a single user programmable interconnect element.

出力バッファ42のデータ入力導体46はアレイのロウ方
向に走るが、論理機能モジュール12−1ないし12−18の
出力導体も同じ構成である。図1の考察から、データ入
力導体46の支線112とイネーブル入力導体48の支線114
は、論理機能モジュール12−7と12−8間においてカラ
ム方向に延び、それらの出力導体との交差部を形成して
いることが分かるであろう。これらの交差部はユーザが
プログラムできる相互接続エレメントを用いて設けられ
る。同様に、データ入力導体46の支線116とイネーブル
入力導体48の支線118は論理機能モジュール12−9と12
−10間においてカラム方向に延び、それらの出力導体と
の交差部を形成し、またデータ入力導体46の支線120と
イネーブル入力導体48の支線122は論理機能モジュール1
2−11と12−12間においてカラム方向に延び、それらの
出力導体との交差部を形成している。これらの交差部は
またユーザがプログラムできる相互接続エレメントを用
いて設置される。導体112、116および120は出力バッフ
ァ42のデータ入力導体46にハード線接続され、導体11
4、118および122は出力バッファ42のイネーブル入力導
体48にハード線接続されるので、論理機能モジュールの
出力と支線112、114、116、118、120および122の1つと
の交差部におけるただ1つのユーザプログラマブルな素
子が、出力バッファのデータ入力およびイネーブル入力
導体を論理機能モジュールからの駆動信号に接続するこ
とが要求される。
Although the data input conductor 46 of the output buffer 42 runs in the row direction of the array, the output conductors of the logic function modules 12-1 through 12-18 have the same configuration. From the discussion of FIG. 1, it can be seen that branch 112 of data input conductor 46 and branch 114 of enable input conductor 48.
Will extend in the column direction between the logic function modules 12-7 and 12-8, forming their intersection with the output conductors. These intersections are provided using interconnect elements that can be programmed by the user. Similarly, branch 116 of data input conductor 46 and branch 118 of enable input conductor 48 are connected to logic function modules 12-9 and 12-9.
−10 extend in the column direction and form the intersection with their output conductors, and the branch 120 of the data input conductor 46 and the branch 122 of the enable input conductor 48 are
It extends in the column direction between 2-11 and 12-12, forming an intersection with their output conductors. These intersections are also installed using user programmable interconnect elements. Conductors 112, 116 and 120 are hardwired to data input conductor 46 of output buffer 42 and
4, 118 and 122 are hard-wired to the enable input conductor 48 of the output buffer 42 so that there is only one at the intersection of the output of the logic function module and one of the branches 112, 114, 116, 118, 120 and 122. User programmable elements are required to connect the data input and enable input conductors of the output buffer to drive signals from the logic function module.

本発明のこの同じ態様は、入力バッファの出力から論
理機能モジュールの入力導体に対してなされる接続を、
たとえ入力バッファの出力導体が論理機能モジュールの
入力導体と同じ方向に走るとしても、ユーザがプログラ
ムできる単一の相互接続エレメントを用いて可能にす
る。入力バッファ26のデータ出力導体30は、論理機能モ
ジュール12−3、12−9、および12−15を含むカラムと
論理機能モジュール12−4、12−10、12−16を含むカラ
ムとの間のアレイを垂直に下方に走る。しかし、論理機
能モジュール12−3、12−4、12−9、12−10、12−1
5、および12−16の入力14−1ないし14−5もまた垂直
方向に走っている。
This same aspect of the invention provides a connection made from the output of the input buffer to the input conductor of the logic function module,
Even though the output conductors of the input buffer run in the same direction as the input conductors of the logic function module, this is possible with a single user programmable interconnect element. The data output conductor 30 of the input buffer 26 is connected between the column containing the logic function modules 12-3, 12-9, and 12-15 and the column containing the logic function modules 12-4, 12-10, 12-16. Run down the array vertically. However, the logic function modules 12-3, 12-4, 12-9, 12-10, 12-1
5 and 12-16 inputs 14-1 through 14-5 are also running vertically.

本発明によれば、支線124は入力バッファ26のデータ
出力導体30から左右両方向に延びて断線し、両論理機能
モジュール12−3と12−4の5個の入力14−1ないし14
−5と交差している。支線126は入力バッファ26のデー
タ出力導体30から左右両方向に延びて断線し、両論理機
能モジュール12−9と12−10の5個の入力14−1ないし
14−5と交差している。支線128は入力バッファ26のデ
ータ出力導体30から左右両方向に延びて断線し、両論理
機能モジュール12−15と12−16の5個の入力14−1ない
し14−5と交差している。これらすべての交差部はユー
ザがプログラムできる相互接続エレメントを用いて設置
可能であり、したがって、単一のユーザがプログラムで
きる相互接続エレメントをプログラムすることにより、
これら論理機能モジュールの任意の入力に接続可能とす
る。
According to the present invention, the branch line 124 extends in both the left and right directions from the data output conductor 30 of the input buffer 26 and is disconnected, and the five inputs 14-1 to 14 of both logic function modules 12-3 and 12-4 are disconnected.
Crosses with -5. The branch line 126 extends from the data output conductor 30 of the input buffer 26 in both the left and right directions and is disconnected, and the five inputs 14-1 to 5-1 of the logic function modules 12-9 and 12-10 are disconnected.
Crosses 14-5. The branch line 128 extends in both the left and right directions from the data output conductor 30 of the input buffer 26 and is broken, and intersects with the five inputs 14-1 to 14-5 of both logic function modules 12-15 and 12-16. All these intersections can be installed using user-programmable interconnect elements, and thus by programming a single user-programmable interconnect element,
It can be connected to any input of these logic function modules.

当業者によって認識されるように、本発明のこの態様
に代わる従来技術は、これらの接続を構成するように汎
用相互接続アーキテクチャの一部を採用することであ
る。この代替は、信号が少なくとも2個のユーザプログ
ラマブルな相互接続エレメントのオン抵抗を通過するこ
とが必要であり、したがって相互接続によって形成され
たネットの性能を低下させる。
As will be appreciated by those skilled in the art, a prior art alternative to this aspect of the invention is to employ a portion of a general interconnect architecture to configure these connections. This alternative requires that the signal pass through the on-resistance of at least two user-programmable interconnect elements, thus reducing the performance of the net formed by the interconnect.

図6aと6bに示す本発明の他の態様によれば、本発明の
アーキテクチャのI/Oカーネルと関連するデータ出力導
体とデータ入力導体は変化する長さを有する。例えば、
これら導体のいずれかがアレイのロウまたはカラムの全
長に延びることもでき、またはより小さくてもよく、例
えば、アレイのロウまたはカラムの長さの分数、例えば
1/4、1/3、1/2などの長さが可能であり、または固定数
のモジュール(アレイのロウまたはカラムにおけるモジ
ュールの数をnとするとき1からnまでの整数)が可能
である。または、入力、出力、制御またはイネーブル導
体の個々の1つの長さは、それらがユーザがプログラム
可能な素子によって接続可能なロウまたはカラムにおけ
る論理機能モジュールの数によって測定可能である。こ
の多様性は従来公知であり、集積回路ダイの周辺に設け
られた専用I/Oモジュールの使用、または、I/O関連導体
がアレイの領域内に固定距離貫通することを示してい
る。
According to another aspect of the invention shown in FIGS. 6a and 6b, the data output conductors and data input conductors associated with the I / O kernel of the architecture of the invention have varying lengths. For example,
Any of these conductors can extend the full length of the row or column of the array, or can be smaller, e.g., a fraction of the length of the row or column of the array, e.g.,
Can be 1/4, 1/3, 1/2, etc. in length, or can be a fixed number of modules (integers from 1 to n, where n is the number of modules in the row or column of the array) is there. Alternatively, the length of each individual one of the input, output, control or enable conductors can be measured by the number of logic function modules in a row or column to which they can be connected by user programmable elements. This variety is well known in the art and indicates the use of dedicated I / O modules provided around the integrated circuit die, or the I / O related conductors penetrating a fixed distance into the area of the array.

本発明のこの態様はデータ入出力コネクタ長さの長短
の長さの使用の利点を最大にすることを試みている。よ
り長い導体の長さは論理アレイ内により深く貫通するこ
とにより、より大きな接続性を提供し、より多くの論理
機能モジュールに到達することが可能である。しかし、
長い導体長さは、より多くのシリコン領域を占有するの
で、短い導体よりも高価となる。さらに、より長い長さ
はより多くの容量を伴い、回路性能を低減させうる。し
たがって、長さの注意深い選択が設計選択事項として望
まれる。
This aspect of the present invention seeks to maximize the benefits of using shorter and longer data input / output connector lengths. Longer conductor lengths penetrate deeper into the logic array, providing greater connectivity and allowing more logic function modules to be reached. But,
Long conductor lengths are more expensive than short conductors because they occupy more silicon area. In addition, longer lengths involve more capacitance and can reduce circuit performance. Therefore, careful selection of length is desired as a design choice.

図6aは発明の特徴を示すアレイのブロック図であり、
違った出力バッファに対する入力導体はアレイ内に異な
った距離だけ延びる。図6aに図示のアレイ130におい
て、アレイ130の5個のロウ(またはカラム)が長方形1
32、134、136、138および140として示されている。アレ
イ130は図1に示すアレイ10と同様であることが当業者
に認められるので、図の複雑化と図6aが示すことを意図
した発明の特徴を不明瞭にすることを避けるために、不
要な説明は省略している。
FIG.6a is a block diagram of an array illustrating features of the invention;
The input conductors for different output buffers extend different distances in the array. In the array 130 shown in FIG. 6a, the five rows (or columns) of the array 130 are rectangular 1
32, 134, 136, 138 and 140. One skilled in the art will recognize that the array 130 is similar to the array 10 shown in FIG. 1 and is not needed to avoid complicating the figure and obscuring the inventive features that FIG. 6a intends to show. Detailed description is omitted.

I/Oパッド142、144、146、148および150がそれぞれ出
力バッファ152、154、156、158および160の出力に接続
されて示されている。入力導体162、164、166、168およ
び170は、それぞれ出力バッファ152、154、156、158お
よび160に入力データを供給し、アレイ130内に延びてい
る。
I / O pads 142, 144, 146, 148 and 150 are shown connected to the outputs of output buffers 152, 154, 156, 158 and 160, respectively. Input conductors 162, 164, 166, 168 and 170 provide input data to output buffers 152, 154, 156, 158 and 160, respectively, and extend into array 130.

本発明のこの態様によれば、入力導体162,164,166,16
8並びに170は、アレイ130内へ異なる距離延びている。
すなわち、入力導体162は、アレイ130のたった1つのロ
ウ132を横断して延在し、ユーザがプログラムし得る相
互接続エレメント(論理機能モジュールの出力において
小さな円として示される)を介して、論理機能モジュー
ル132−1の出力へアクセスしている。入力導体164は、
アレイ130の2つのロウ132及び134を横断して延在し、
ユーザがプログラムし得る相互接続エレメント(論理機
能モジュールの出力において小さな円として示される)
を介して、論理機能モジュール132−2及び134−2の出
力へアクセスしている。入力導体166は、アレイ130の3
つのロウ132,134及び136を横断して延在し、ユーザがプ
ログラムし得る相互接続エレメント(論理機能モジュー
ルの出力において小さな円として示される)を介して、
論理機能モジュール132−3,134−3及び136−3の出力
へアクセスしている。入力導体168は、アレイ130の4つ
のロウ132,134,136及び138を横断して延在し、ユーザが
プログラムし得る相互接続エレメント(論理機能モジュ
ールの出力において小さな円として示される)を介し
て、論理機能モジュール132−4,134−4,136−4及び138
−4の出力へアクセスしている。入力導体170は、アレ
イ130の5つのロウ132,134,136,138並びに140を横断し
て延在し、ユーザがプログラムし得る相互接続エレメン
ト(論理機能モジュールの出力において小さな円として
示される)を介して、論理機能モジュール132−5,134−
5,136−5,138−5並びに140−5の出力へアクセスして
いる。
According to this aspect of the invention, the input conductors 162, 164, 166, 16
8 and 170 extend different distances into the array 130.
That is, the input conductor 162 extends across only one row 132 of the array 130 and through a user-programmable interconnect element (shown as a small circle at the output of the logic function module), The output of module 132-1 is being accessed. The input conductor 164 is
Extending across the two rows 132 and 134 of the array 130;
User programmable interconnect elements (shown as small circles at the output of the logic function module)
, The output of the logic function modules 132-2 and 134-2 is accessed. The input conductor 166 is
Via the user programmable interconnect elements (shown as small circles at the output of the logic function module) extending across the three rows 132, 134 and 136
The outputs of the logic function modules 132-3, 134-3, and 136-3 are being accessed. The input conductor 168 extends across the four rows 132, 134, 136 and 138 of the array 130 and via user programmable interconnect elements (shown as small circles at the output of the logic function module). 132-4,134-4,136-4 and 138
-4 output is being accessed. The input conductor 170 extends across the five rows 132, 134, 136, 138 and 140 of the array 130, and via user-programmable interconnect elements (shown as small circles at the output of the logic function module). 132−5,134−
5,136-5,138-5 and 140-5 are accessed.

図6bは、異なる入力バッファの出力導体がアレイ内へ
異なる距離延びている発明の同様の特徴を示す同じアレ
イ130のブロック図である。同じI/Oパッド142,144,146,
148並びに150が示され、この場合には、それぞれ、入力
バッファ172,174,176,178並びに180の入力に接続されて
いる。出力導体182,184,186,188並びに190は、それぞ
れ、入力バッファ172,174,176,178並びに180からの出力
データを付与し、アレイ130内へ延びている。
FIG. 6b is a block diagram of the same array 130 showing similar features of the invention where the output conductors of different input buffers extend different distances into the array. Same I / O pad 142,144,146,
148 and 150 are shown, in this case connected to the inputs of input buffers 172, 174, 176, 178 and 180, respectively. Output conductors 182, 184, 186, 188 and 190 provide output data from input buffers 172, 174, 176, 178 and 180, respectively, and extend into array 130.

本発明のこの態様によれば、出力導体182,184,186,18
8並びに190は、アレイ130内へ異なる距離延びている。
すなわち、出力導体182は、アレイ130のたった1つのロ
ウ132を横断して延在し、ユーザがプログラムし得る相
互接続エレメント(論理機能モジュールの出力において
小さな円として示される)を介して、論理機能モジュー
ル132−1の出力へアクセスしている。出力導体184は、
アレイ130の2つのロウ132及び134を横断して延在し、
ユーザがプログラムし得る相互接続エレメント(論理機
能モジュールの出力において小さな円として示される)
を介して、論理機能モジュール132−2及び134−2の出
力へアクセスしている。出力導体186は、アレイ130の3
つのロウ132,134及び136を横断して延在し、ユーザがプ
ログラムし得る相互接続エレメント(論理機能モジュー
ルの出力において小さな円として示される)を介して、
論理機能モジュール132−3,134−3及び136−3の出力
へアクセスしている。出力導体188は、アレイ130の4つ
のロウ132,134,136及び138を横断して延在し、ユーザが
プログラムし得る相互接続エレメント(論理機能モジュ
ールの出力において小さな円として示される)を介し
て、論理機能モジュール132−4,134−4,136−4及び138
−4の出力へアクセスしている。出力導体190は、アレ
イ130の5つのロウ132,134,136,138並びに140を横断し
て延在し、ユーザがプログラムし得る相互接続エレメン
ト(論理機能モジュールの出力において小さな円として
示される)を介して、論理機能モジュール132−5,134−
5,136−5,138−5並びに140−5の出力へアクセスして
いる。
According to this aspect of the invention, the output conductors 182, 184, 186, 18
8 and 190 extend different distances into the array 130.
That is, the output conductors 182 extend across only one row 132 of the array 130 and, via user-programmable interconnect elements (shown as small circles at the output of the logic function module), The output of module 132-1 is being accessed. The output conductor 184
Extending across the two rows 132 and 134 of the array 130;
User programmable interconnect elements (shown as small circles at the output of the logic function module)
, The output of the logic function modules 132-2 and 134-2 is accessed. The output conductor 186 is
Via the user programmable interconnect elements (shown as small circles at the output of the logic function module) extending across the three rows 132, 134 and 136
The outputs of the logic function modules 132-3, 134-3, and 136-3 are being accessed. The output conductor 188 extends across the four rows 132, 134, 136 and 138 of the array 130 and through user programmable interconnect elements (shown as small circles at the output of the logic function module). 132-4,134-4,136-4 and 138
-4 output is being accessed. The output conductor 190 extends across the five rows 132, 134, 136, 138 and 140 of the array 130 and through user-programmable interconnect elements (shown as small circles at the output of the logic function module). 132−5,134−
5,136-5,138-5 and 140-5 are accessed.

異なる長さの入力導体162,164,166,168並びに170、及
び、出力導体182,184,186,188並びに190の正確な分配
は、単に設計の選択の問題である。本発明のアーキテク
チャの柔軟性に重要なことは、これらアレイ内に延びる
導体に異なる長さを与えることである。
The exact distribution of the input conductors 162, 164, 166, 168 and 170 of different lengths and the output conductors 182, 184, 186, 188 and 190 is simply a matter of design choice. Important to the flexibility of the architecture of the present invention is to provide the conductors extending into these arrays with different lengths.

図7を参照すれば、FPGAアレイ200のブロック図は、
入力及び出力バッファが、FPGAアーキテクチャにおいて
I/Oを割り当てるに際し、相当の柔軟性をもたらすこと
ができる汎用相互接続部(general interconnect)に接
続され得る本発明の特徴を示している。図7のアレイ20
0は、図1に示すアレイ10に類似している。
Referring to FIG. 7, a block diagram of the FPGA array 200 is:
Input and output buffers in FPGA architecture
FIG. 3 illustrates features of the present invention that can be connected to a general interconnect that can provide considerable flexibility in allocating I / O. Array 20 of FIG.
0 is similar to the array 10 shown in FIG.

論理機能モジュールのアレイ200は、そのアレイの第
1のロウにおいて、論理機能モジュール12−1,12−2,12
−3及び12−4を備えている。上記アレイの第2のロウ
は、論理機能モジュール12−5,12−6,12−7及び12−8
を備え、また、上記アレイの第3のロウは、論理機能モ
ジュール12−9,12−10,12−11及び12−12を備えてい
る。
The logic function module array 200 includes the logic function modules 12-1, 12-2, 12-12 in the first row of the array.
-3 and 12-4. The second row of the array contains the logic function modules 12-5, 12-6, 12-7 and 12-8.
And the third row of the array comprises logic function modules 12-9, 12-10, 12-11 and 12-12.

汎用相互接続アーキテクチャは、論理機能モジュール
12−1〜12−12のアレイ200上に重ねられている。垂直
な相互接続導体の2つのグループは、括弧18により指示
される。水平な相互接続導体の3つのグループは、括弧
20により指示される。垂直な及び水平な相互接続導体18
及び20のグループは、それぞれ、5つのかかる導体を有
するように示されているが、通常の技術を有する当業者
は、各グループに設けられた導体の数が、主として、設
計の選択の問題であること、また、相互接続導体の異な
るグループが、それぞれ、異なる数の導体を有し得るこ
とを認識するであろう。
Generic interconnect architecture is a logical function module
Overlaid on an array 200 of 12-1 to 12-12. The two groups of vertical interconnect conductors are indicated by brackets 18. The three groups of horizontal interconnect conductors are in brackets
Indicated by 20. Vertical and horizontal interconnect conductors 18
And 20 groups are each shown as having five such conductors, but those of ordinary skill in the art will appreciate that the number of conductors provided in each group may be primarily a matter of design choice. It will be appreciated that different groups of interconnect conductors may each have a different number of conductors.

論理機能モジュール12−1〜12−12の(論理機能モジ
ュール12−9において例示される)入力14−1〜14−5
及び(論理機能モジュール12−10において例示される)
出力16−1〜16−3が、グループ18及び20における相互
接続導体と交差している。図7では、論理機能モジュー
ル12−1〜12−12の入力14−1〜14−5が、下方へ垂直
に延びるように示され、水平な相互接続導体のグループ
20と交差しており、また、論理機能モジュール12−1〜
12−12の出力16−1〜16−3が、左右へ水平に延びるよ
うに示され、垂直な相互接続導体のグループ18と交差し
ているが、通常の技術を有する当業者は、水平に及び垂
直に延びる入力及び出力の両方が混合されたアーキテク
チャと同様に、向かい合うように配置されたアーキテク
チャを想像し得ることを理解するであろう。
Inputs 14-1 to 14-5 of the logic function modules 12-1 to 12-12 (exemplified in the logic function module 12-9)
And (exemplified in logic function module 12-10)
Outputs 16-1 to 16-3 intersect the interconnect conductors in groups 18 and 20. In FIG. 7, the inputs 14-1 to 14-5 of the logic function modules 12-1 to 12-12 are shown as extending vertically downward, and a group of horizontal interconnect conductors is shown.
20 and the logic function modules 12-1 to 12-1.
Although the outputs 16-1 to 16-3 of 12-12 are shown extending horizontally to the left and right and intersect with a group 18 of vertical interconnect conductors, those of ordinary skill in the art will appreciate that It will be appreciated that one can imagine an architecture that is arranged face-to-face, as well as an architecture where both vertically extending inputs and outputs are mixed.

例えば参照符号22等のユーザプログラマブルな相互接
続エレメントは、相互接続導体と論理機能モジュール12
−1〜12−12の出力及び入力導体との交差部において、
中空の円として示されている。図7の典型的なアーキテ
クチャでは、これらの交差部が相当に稠密に示されてい
るが、これより稠密でないアーキテクチャも本発明の範
囲内に含まれる。
User-programmable interconnect elements, such as 22, for example, are interconnect conductors and logic function modules 12.
At the intersection with the output and input conductors of -1 to 12-12,
It is shown as a hollow circle. Although these intersections are shown quite dense in the exemplary architecture of FIG. 7, less dense architectures are also within the scope of the invention.

図7に示される本発明の態様によれば、I/Oパッド202
が、入力バッファ204の入力に、また、出力バッファ206
の出力に接続されている。I/Oパッド208は、入力バッフ
ァ210の入力に、また、出力バッファ212の出力に接続さ
れている。上記出力バッファ206の入力は、導体214に接
続され、上記出力バッファ212の入力は、導体216に接続
されている。上記入力バッファ204の出力は、導体218に
接続され、上記出力バッファ210の出力は、導体220に接
続されている。
According to the embodiment of the present invention shown in FIG.
Is connected to the input of the input buffer 204 and to the output buffer 206
Connected to the output. I / O pad 208 is connected to the input of input buffer 210 and to the output of output buffer 212. The input of the output buffer 206 is connected to the conductor 214, and the input of the output buffer 212 is connected to the conductor 216. The output of the input buffer 204 is connected to a conductor 218 and the output of the output buffer 210 is connected to a conductor 220.

導体214及び216は、アレイ200内に延びており、それ
らが論理機能モジュールの入力14−1〜14−5を相互接
続するように、汎用相互接続導体の上側の2つのグルー
プ20に平行に且つ隣接して延びる様子が示されている。
上記導体214は、論理機能モジュール12−1〜12−4へ
の入力に交差し、上記導体216は、論理機能モジュール1
2−5〜12−8への入力に交差している。ユーザがプロ
グラムし得る相互接続導体は、これらの交差部に配置さ
れて示されている。
The conductors 214 and 216 extend into the array 200 and are parallel to the upper two groups 20 of universal interconnect conductors and so that they interconnect the logic function module inputs 14-1 to 14-5. It is shown that it extends adjacently.
The conductor 214 intersects the inputs to the logic function modules 12-1 to 12-4, and the conductor 216
Crosses the inputs to 2-5 to 12-8. User programmable interconnect conductors are shown located at these intersections.

導体218及び220もまた、上記汎用相互接続ライン20に
交差しており、導体218は、上方のグループ20の相互接
続ラインに交差し、導体220は、中央のグループ20の相
互接続ラインに交差している。ユーザがプログラムし得
る相互接続エレメントが、導体218及び220並びに上記グ
ループ20の各相互接続導体の交差部における中央の円と
して示されている。
Conductors 218 and 220 also intersect the universal interconnect line 20, with conductor 218 intersecting the interconnect lines of the upper group 20 and conductor 220 intersecting the interconnect lines of the central group 20. ing. User programmable interconnect elements are shown as conductors 218 and 220 and the center circle at the intersection of each of the interconnect conductors in group 20 above.

I/Oパッド230が、図7の上側に示され、出力バッファ
232の出力に、また、入力バッファ234の入力に接続され
ている。上記出力バッファ232の入力は、導体236に接続
され、上記入力バッファ234の出力は、導体238に接続さ
れている。導体236及び238が、アレイ200内へ垂直下方
に、垂直な相互接続導体のグループ18に平行に延びて、
上記論理機能モジュール12−3,12−4,12−7,12−8,12−
11並びに12−12の出力との交差部を形成するとともに、
水平な相互接続導体の3つのグループ20における各汎用
相互接続導体との交差部を形成している。ユーザがプロ
グラムし得る相互接続エレメントが、水平な相互接続導
体のグループ20の各相互接続導体と同様に、導体236及
び238並びに上記論理機能モジュール12−3,12−4,12−
7,12−8,12−11並びに12−12の出力の交差部における中
空の円として示されている。
I / O pad 230 is shown at the top of FIG.
It is connected to the output of 232 and to the input of input buffer 234. The input of the output buffer 232 is connected to the conductor 236, and the output of the input buffer 234 is connected to the conductor 238. Conductors 236 and 238 extend vertically down into the array 200 and parallel to the vertical interconnect conductor group 18;
The above logic function modules 12-3, 12-4, 12-7, 12-8, 12-
Forming an intersection with the outputs of 11 and 12-12,
It forms the intersection with each universal interconnect conductor in three groups 20 of horizontal interconnect conductors. The user-programmable interconnect elements include conductors 236 and 238 and the logic function modules 12-3, 12-4, 12- as well as each interconnect conductor of group 20 of horizontal interconnect conductors.
It is shown as a hollow circle at the intersection of the outputs 7,12-8,12-11 and 12-12.

図7の考察から分かるように、本発明のこの態様によ
るFPGAアーキテクチャは、いかなる入力又は出力の接続
も、あらゆる論理機能モジュール12−1〜12−12に対し
て若しくはそれらからルートされ得るため、極めてフレ
キシブルである。先行技術のアーキテクチャはかかる接
続性が許容されず、代わりに、定位置のI/Oモジュール
への接続性のみをもたらすものである。本発明は、ユー
ザの適用に応じて、論理機能モジュールをI/Oパッドへ
接続するための、位置及びルートのソフトウェアに関し
たより有用な選択を可能とする。加えて、I/Oパッドと
論理機能モジュールとの間に採用するより少数のプログ
ラム可能な接続が、より速い入力及び出力信号経路をも
たらすので、集積回路の性能が向上する。
As can be seen from the discussion of FIG. 7, the FPGA architecture in accordance with this aspect of the present invention is highly susceptible because any input or output connection can be routed to or from any of the logic function modules 12-1 to 12-12. It is flexible. Prior art architectures do not allow such connectivity, but instead only provide connectivity to I / O modules in place. The present invention allows for a more useful choice of location and route software for connecting logic function modules to I / O pads, depending on the application of the user. In addition, the fewer programmable connections employed between the I / O pads and the logic function module provide faster input and output signal paths, thus improving the performance of the integrated circuit.

通常の技術を有する当業者は、ここに記述されたI/O
アーキテクチャが、例えばJTAGバウンダリスキャン技術
又はその同様のもののような検査用の特徴、若しくは他
の論理機能及び特徴といったまた別の特徴を備え得るこ
とを認識するであろう。
Those of ordinary skill in the art will recognize the I / O described here.
It will be appreciated that the architecture may include other features such as test features, such as, for example, JTAG boundary scan technology or the like, or other logic functions and features.

本発明の実施形態及び適用例が示され記述されている
が、本発明の要旨を逸脱することがなければ、上記した
以上の変更が多数可能であることは、当業者に明らかで
あろう。従って、本発明は、添付した請求の範囲の精神
にあることを除いて制限されない。
While embodiments and applications of the invention have been shown and described, it will be obvious to those skilled in the art that many more modifications than those described above are possible without departing from the spirit of the invention. Accordingly, the invention is not to be restricted except in the spirit of the appended claims.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 カプタノグル,サイナン アメリカ合衆国94070カリフォルニア州 サン・カルロス、サン・シメオン・ウ ェイ2813番 (72)発明者 リーン,ユン−チェウン アメリカ合衆国95129カリフォルニア州 サン・ノゼ、アルカンテ・ドライブ 6062番 (72)発明者 チャン,キング・ダブリュー アメリカ合衆国94024カリフォルニア州 ロス・アルトス、リバーサイド・ドラ イブ697番 (72)発明者 エル−アヤット,カールド・エイ アメリカ合衆国95014カリフォルニア州 クペルティノ、ランディ・レイン 10174番 (56)参考文献 特開 平3−78317(JP,A) 特表 平6−502523(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03K 19/177 ──────────────────────────────────────────────────の Continuation of the front page (72) Inventor Captanoglu, Sinan San Simeon Way, 2810 San Carlos, California 94070 United States (72) Inventor Lean, Yun-Cheung San Jose, CA 95129 United States of America Alcante Drive No. 6062 (72) Inventor Chan, King W. No. 697 Riverside Drive, Los Altos, California 94024, United States No. 697 (72) Inventor El-Ayat, Kard A. United States 95014 Randy Lane, Cupertino, California, USA No. 10174 (56) References JP-A-3-78317 (JP, A) JP-A-6-502523 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H03K 19/177

Claims (33)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】集積回路に配置されたフィールドプログラ
マブルゲートアレイのアーキテクチャにおいて、 ロウとカラムから成るアレイ状の複数の論理機能モジュ
ールであって各モジュールが少なくとも一つの入力導体
と少なくとも一つの出力導体を有している論理機能モジ
ュールを備え、 複数の入出力パッドを備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記I/Oパッドの一つに接続されたデータ入力と入力バッ
ファデータ導体に接続されたデータ出力を持つ入力バッ
ファ、および、出力バッファデータ導体に接続されたデ
ータ入力と前記I/Oパッドの一つに接続されたデータ出
力と出力バッファイネーブル導体に接続されたイネーブ
ル入力とを持つ出力バッファを有し、 前記入力バッファデータ導体は前記ロウに沿った方向と
前記カラムに沿った方向の1つを構成する方向に延在
し、幾つかの前記入力バッファデータ導体は、他の前記
入力バッファデータ導体と比較して異なる長さを有し
て、異なる数の前記ロウまたは前記カラムを横切って延
在し、前記入力バッファデータ導体は前記モジュールの
前記入力の幾つかと第1の交差部を形成し、 前記出力バッファデータ導体および前記出力バッファイ
ネーブル導体は前記ロウに沿った方向と前記カラムに沿
った方向の1つを構成する方向に延在し、幾つかの前記
出力バッファデータ導体および出力バッファイネーブル
導体は、他の前記出力バッファデータ導体および出力バ
ッファイネーブル導体と比較して異なる長さを有して、
異なる数の前記ロウまたは前記カラムを横切って延在
し、前記出力バッファデータ導体および出力バッファイ
ネーブル導体は前記モジュールの前記出力の幾つかと第
2の交差部を形成し、 前記第1および第2の交差部のうちの選択された交差部
に接続された、ユーザがプログラムできる相互接続エレ
メントを備える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
1. An architecture for a field programmable gate array arranged in an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each module having at least one input conductor and at least one output conductor. A plurality of input / output pads, a plurality of input / output kernels, each input / output kernel being connected to one of the I / O pads, a data input and an input buffer data. An input buffer having a data output connected to the conductor; and a data input connected to the output buffer data conductor and a data output connected to one of the I / O pads and an enable input connected to the output buffer enable conductor. Wherein the input buffer data conductor has a direction along the row and Extending in a direction that constitutes one of the directions along the column, wherein some of the input buffer data conductors have different lengths compared to the other input buffer data conductors and have a different number of input buffer data conductors. Extending across the row or the column, the input buffer data conductor forms a first intersection with some of the inputs of the module, and the output buffer data conductor and the output buffer enable conductor are connected to the row. Extending in one of the directions along and along the column, some of the output buffer data conductors and output buffer enable conductors are connected to the other output buffer data conductors and output buffer enable conductors. Have different lengths in comparison,
Extending across a different number of the rows or columns, the output buffer data conductors and output buffer enable conductors form a second intersection with some of the outputs of the module; A field programmable gate array architecture comprising user-programmable interconnect elements connected to selected ones of the intersections.
【請求項2】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、ユーザがプ
ログラムできる前記相互接続エレメントが、前記第1の
交差部の全てに接続されているフィールドプログラマブ
ルゲートアレイのアーキテクチャ。
2. The field programmable gate array architecture of claim 1 wherein said user programmable interconnect elements are connected to all of said first intersections.
【請求項3】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、ユーザがプ
ログラムできる前記相互接続エレメントが、前記第2の
交差部の全てに接続されているフィールドプログラマブ
ルゲートアレイのアーキテクチャ。
3. The field programmable gate array architecture of claim 1, wherein said user programmable interconnect elements are connected to all of said second intersections.
【請求項4】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、ユーザがプ
ログラムできる前記相互接続エレメントが、前記第1お
よび第2の交差部の全てに接続されているフィールドプ
ログラマブルゲートアレイのアーキテクチャ。
4. The field programmable gate array architecture of claim 1, wherein said user programmable interconnect elements are connected to all of said first and second intersections. architecture.
【請求項5】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、前記出力バ
ッファデータ導体の少なくとも二つが、ユーザがプログ
ラムできる相互接続エレメントにより、前記モジュール
の前記出力の少なくとも一つの共通出力に接続可能であ
るフィールドプログラマブルゲートアレイのアーキテク
チャ。
5. The architecture of claim 1, wherein at least two of said output buffer data conductors are connected to at least one common output of said outputs of said module by user programmable interconnect elements. Connectable field programmable gate array architecture.
【請求項6】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、前記入出力
カーネルは、Vcc導体とVcc交差部を形成するとともに接
地導体と接地交差部を形成する出力バッファスルーレー
ト制御導体を更に有し、ユーザがプログラムできる相互
接続エレメントが前記Vcc交差部および接地交差部に配
置されているフィールドプログラマブルゲートアレイの
アーキテクチャ。
6. An architecture according to claim 1, wherein said input / output kernel forms a Vcc intersection with a Vcc conductor and an output buffer slew rate control conductor which forms a ground intersection with a ground conductor. And a field programmable gate array architecture wherein user programmable interconnect elements are located at said Vcc intersection and ground intersection.
【請求項7】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、 複数の相互接続導体であって、該相互接続導体の少なく
とも幾つかが前記入力バッファデータ導体の幾つかと第
3の交差部を形成する相互接続導体と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
7. The field programmable gate array architecture of claim 1, wherein a plurality of interconnect conductors, at least some of which are third intersections with some of said input buffer data conductors. And a user-programmable interconnect element connected to selected ones of said third intersections, the field-programmable gate array architecture further comprising:
【請求項8】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、 複数の相互接続導体であって、該相互接続導体の少なく
とも幾つかが前記出力バッファデータ導体の幾つかと第
3の交差部を形成する相互接続導体と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
8. The architecture of claim 1, wherein a plurality of interconnect conductors, at least some of which are third intersections with some of said output buffer data conductors. And a user-programmable interconnect element connected to selected ones of said third intersections, the field-programmable gate array architecture further comprising:
【請求項9】請求項1に記載のフィールドプログラマブ
ルゲートアレイのアーキテクチャにおいて、 複数の相互接続導体であって、該相互接続導体の少なく
とも幾つかが前記出力バッファイネーブル導体の幾つか
と第3の交差部を形成する相互接続導体と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
9. The field programmable gate array architecture of claim 1, wherein a plurality of interconnect conductors, at least some of which are third intersections with some of said output buffer enable conductors. And a user-programmable interconnect element connected to selected ones of said third intersections, the field-programmable gate array architecture further comprising:
【請求項10】集積回路に配置されたフィールドプログ
ラマブルゲートアレイのアーキテクチャにおいて、 ロウとカラムから成るアレイ状の複数の論理機能モジュ
ールであって各モジュールが少なくとも一つの入力導体
と少なくとも一つの出力導体を有している論理機能モジ
ュールを備え、 複数の相互接続導体を備え、 複数の入出力パッドを備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記I/Oパッドの一つに接続されたデータ入力と入力バッ
ファデータ導体に接続されたデータ出力を持つ入力バッ
ファ、および、出力バッファデータ導体に接続されたデ
ータ入力と前記I/Oパッドの前記一つに接続されたデー
タ出力と出力バッファイネーブル導体に接続されたイネ
ーブル入力とを持つ出力バッファを有し、 前記入力バッファデータ導体は、前記ロウに沿った方向
と前記カラムに沿った方向のうちのいずれか一方向に第
1の長さだけ延び、前記ロウに沿った方向と前記カラム
に沿った方向のうちの他方向に第2の長さだけ延び、前
記入力バッファデータ導体は、前記モジュールの前記入
力の幾つかおよび前記相互接続導体の幾つかと第1の交
差部を形成し、 前記出力バッファデータ導体は、前記ロウに沿った方向
と前記カラムに沿った方向のうちのいずれか一方向に第
1の長さだけ延び、前記ロウに沿った方向と前記カラム
に沿った方向のうちの他方向に第2の長さだけ延び、前
記出力バッファデータ導体は、前記モジュールの前記出
力の幾つかおよび前記相互接続導体の幾つかと第2の交
差部を形成し、 前記第1および第2の交差部のうちの選択された交差部
に接続された、ユーザがプログラムできる相互接続エレ
メントを備え、 前記入力バッファデータ導体の異なる幾つかは、互いに
異なる長さを有し、 前記出力バッファデータ導体の異なる幾つかは、互いに
異なる長さを有するフィールドプログラマブルゲートア
レイのアーキテクチャ。
10. The architecture of a field programmable gate array arranged in an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each module having at least one input conductor and at least one output conductor. A plurality of interconnect conductors, a plurality of input / output pads, a plurality of input / output kernels, each input / output kernel connected to one of the I / O pads. An input buffer having a data input connected thereto and a data output connected to an input buffer data conductor, and a data input connected to an output buffer data conductor and a data output and output connected to the one of the I / O pads. An output buffer having an enable input connected to a buffer enable conductor, said input buffer The data conductor extends by a first length in one of the direction along the row and the direction along the column, and extends between the direction along the row and the direction along the column. Extending in the other direction by a second length, the input buffer data conductors form a first intersection with some of the inputs of the module and some of the interconnect conductors; A first length extends in one of a direction along the row and a direction along the column, and a second length extends in the other direction between the direction along the row and the direction along the column. Wherein the output buffer data conductors form a second intersection with some of the outputs of the module and some of the interconnect conductors, and wherein the first and second intersections Touch selected intersection A different number of said input buffer data conductors having different lengths; and a different number of said output buffer data conductors having different lengths from each other. Programmable gate array architecture.
【請求項11】請求項10に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、 前記出力バッファイネーブル導体の少なくとも幾つか
は、前記ロウに沿った方向と前記カラムに沿った方向の
うちのいずれか一方向に第1の長さだけ延び、前記ロウ
に沿った方向と前記カラムに沿った方向のうちの他方向
に第2の長さだけ延び、前記出力バッファイネーブル導
体は、前記モジュールの前記出力の幾つかと第3の交差
部を形成し、 前記第3の交差部のうちの選択された交差部に接続され
た、ユーザがプログラムできる相互接続エレメントを備
える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
11. The field programmable gate array architecture of claim 10, wherein at least some of said output buffer enable conductors are in one of a direction along said row and a direction along said column. Extending along a first length and extending a second length in the other direction along the row and along the column, the output buffer enable conductor includes a plurality of outputs of the module. A field-programmable gate array architecture comprising a user-programmable interconnect element forming a third cross-section and connected to a selected one of said third cross-sections.
【請求項12】請求項10に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、 複数の第3の相互接続導体であって、該相互接続導体の
少なくとも幾つかが前記入力バッファデータ導体の幾つ
かと第3の交差部を形成する第3の相互接続導体と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
12. The architecture of the field programmable gate array of claim 10, wherein a plurality of third interconnect conductors, at least some of which are connected to some of said input buffer data conductors and said third interconnect conductor. Field programmable further comprising: a third interconnect conductor forming an intersection of the following; and a user-programmable interconnect element connected to selected ones of the third intersections. Gate array architecture.
【請求項13】請求項10に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、 複数の第3の相互接続導体であって、該相互接続導体の
少なくとも幾つかが前記出力バッファデータ導体の幾つ
かと第3の交差部を形成する第3の相互接続導体と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
13. The field programmable gate array architecture of claim 10, wherein a plurality of third interconnect conductors, at least some of which are connected to some of said output buffer data conductors and said third interconnect conductor. Field programmable further comprising: a third interconnect conductor forming an intersection of the following; and a user-programmable interconnect element connected to selected ones of the third intersections. Gate array architecture.
【請求項14】請求項10に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、 複数の第3の相互接続導体であって、該相互接続導体の
少なくとも幾つかが前記出力バッファイネーブル導体の
幾つかと第3の交差部を形成する第3の相互接続導体
と、 前記第3の交差部のうちの選択された幾つかの交差部に
接続された、ユーザがプログラムできる相互接続エレメ
ントと、 を更に備えるフィールドプログラマブルゲートアレイの
アーキテクチャ。
14. The field programmable gate array architecture of claim 10, wherein a plurality of third interconnect conductors, at least some of which are connected to some of said output buffer enable conductors and said third interconnect conductor. Field programmable further comprising: a third interconnect conductor forming an intersection of the following; and a user-programmable interconnect element connected to selected ones of the third intersections. Gate array architecture.
【請求項15】集積回路に配置されたフィールドプログ
ラマブルゲートアレイのアーキテクチャにおいて、 ロウとカラムから成るアレイ状の複数の論理機能モジュ
ールであって各モジュールが少なくとも一つの入力導体
と少なくとも一つの出力導体を有している論理機能モジ
ュールを備え、 複数の入出力パッドを備え、 前記論理機能モジュールの幾つかからの入力と第1の交
差部を形成する複数の汎用相互接続導体を備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記I/Oパッドの一つに接続されたデータ入力と入力バッ
ファデータ導体に接続されたデータ出力を持つ入力バッ
ファ、および、出力バッファデータ導体に接続されたデ
ータ入力と前記I/Oパッドの前記一つに接続されたデー
タ出力と出力バッファイネーブル導体に接続されたイネ
ーブル入力とを持つ出力バッファを有し、 前記入力バッファデータ導体はカラム方向に延在し、前
記入力バッファデータ導体の異なる幾つかは、他の前記
入力バッファデータ導体と比較して異なる長さを有し
て、異なる数の前記ロウを横切って延在し、前記複数の
汎用相互接続導体の幾つかと第2の交差部を形成し、 前記出力バッファデータ導体および前記出力バッファイ
ネーブル導体はカラム方向に延在し、前記出力バッファ
データ導体および出力バッファイネーブル導体の異なる
幾つかは、他の前記出力バッファデータ導体および出力
バッファイネーブル導体と比較して異なる長さを有し
て、異なる数の前記ロウを横切って延在し、前記出力バ
ッファデータ導体および出力バッファイネーブル導体は
前記モジュールの前記出力の幾つかと第3の交差部を形
成し、 前記第1、第2および第3の交差部のうちの選択された
交差部に接続された、ユーザがプログラムできる相互接
続エレメントを備える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
15. The architecture of a field programmable gate array arranged in an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each module having at least one input conductor and at least one output conductor. A plurality of input / output pads; a plurality of general purpose interconnects forming a first intersection with inputs from some of the logic function modules; A kernel, wherein each input / output kernel is connected to an input buffer having a data input connected to one of the I / O pads and a data output connected to an input buffer data conductor, and an output buffer data conductor. A data input and a data output connected to the one of the I / O pads and an output buffer enable conductor. An output buffer having an enable input connected thereto, wherein the input buffer data conductor extends in a column direction, and some different ones of the input buffer data conductors are different compared to the other input buffer data conductors Having a length, extending across a different number of the rows, forming a second intersection with some of the plurality of general interconnect conductors, wherein the output buffer data conductor and the output buffer enable conductor are A different number of the output buffer data conductors and output buffer enable conductors extending in the column direction have different lengths as compared to the other output buffer data conductors and output buffer enable conductors, and Extending across the row, the output buffer data conductor and the output buffer enable conductor are Forming a third intersection with some of the forces, comprising a user-programmable interconnection element connected to a selected one of the first, second and third intersections; Gate array architecture.
【請求項16】請求項15に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、ユーザが
プログラムできる前記相互接続エレメントが、前記第1
の交差部の全てに接続されているフィールドプログラマ
ブルゲートアレイのアーキテクチャ。
16. The field programmable gate array architecture of claim 15, wherein said user-programmable interconnect element comprises said first element.
The architecture of the field programmable gate array connected to all of the intersections.
【請求項17】請求項15に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、ユーザが
プログラムできる前記相互接続エレメントが、前記第2
の交差部の全てに接続されているフィールドプログラマ
ブルゲートアレイのアーキテクチャ。
17. The field programmable gate array architecture of claim 15, wherein said user-programmable interconnect element comprises said second element.
The architecture of the field programmable gate array connected to all of the intersections.
【請求項18】請求項15に記載のフィールドプログラマ
ブルゲートアレイのアーキテクチャにおいて、ユーザが
プログラムできる前記相互接続エレメントが、前記第3
の交差部の全てに接続されているフィールドプログラマ
ブルゲートアレイのアーキテクチャ。
18. The field programmable gate array architecture of claim 15, wherein said user-programmable interconnect element comprises said third element.
The architecture of the field programmable gate array connected to all of the intersections.
【請求項19】集積回路上に配置されるフィールドプロ
グラマブルゲートアレイのアーキテクチャであって、 ロウ及びカラムから成るアレイ状の複数の論理機能モジ
ュールであって、前記複数のモジュールの各々が少なく
とも1つの入力導体及び少なくとも1つの出力導体を有
する論理機能モジュールを備え、 複数の入出力パッドを備え、 幾つかの前記論理機能モジュールからの入力と第1の交
差部を形成する複数の汎用相互接続導体を備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記複数のI/Oパッドの1つに接続されたデータ入力と入
力バッファデータ導体に接続されたデータ出力とを有す
る入力バッファ、および、出力バッファデータ導体に接
続されたデータ入力と前記複数のI/Oパッドの前記1つ
に接続されたデータ出力と出力バッファイネーブル導体
に接続されたイネーブル入力とを有する出力バッファを
含み、 前記複数の入力バッファデータ導体はロウ方向に延び、
前記複数の入力バッファデータ導体の異なる幾つかは、
他の前記入力バッファデータ導体と比較して異なる長さ
を有して、異なる数の前記カラムを横切って延在し、前
記複数の汎用相互接続導体の幾つかと第2の交差部を形
成し、 前記複数の出力バッファデータ導体及び前記複数の出力
バッファイネーブル導体はロウ方向に延び、前記複数の
出力バッファデータ導体及び前記複数の出力バッファイ
ネーブル導体の異なる幾つかは、他の前記出力バッファ
データ導体および出力バッファイネーブル導体と比較し
て異なる長さを有して、異なる数の前記カラムを横切っ
て延在し、前記複数の出力バッファデータ導体及び前記
複数の出力バッファイネーブル導体は、前記複数のモジ
ュールの前記複数の出力の幾つかと第3の交差部を形成
し、 前記第1、第2及び第3の交差部の内の選択された交差
部に接続された、ユーザがプログラム可能な複数の相互
接続エレメントを備える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
19. An architecture for a field programmable gate array disposed on an integrated circuit, comprising a plurality of logic function modules in an array of rows and columns, each of said plurality of modules having at least one input. A logic function module having a conductor and at least one output conductor; a plurality of input / output pads; and a plurality of universal interconnect conductors forming a first intersection with inputs from some of the logic function modules. An input buffer comprising a plurality of input / output kernels, each input / output kernel having a data input connected to one of the plurality of I / O pads and a data output connected to an input buffer data conductor; and A data input connected to an output buffer data conductor and a data output connected to the one of the plurality of I / O pads. An output buffer having a force and an enable input connected to an output buffer enable conductor, wherein the plurality of input buffer data conductors extend in a row direction;
A different number of the plurality of input buffer data conductors comprises:
Extending across a different number of the columns, having a different length as compared to the other input buffer data conductors, forming a second intersection with some of the plurality of universal interconnect conductors; The plurality of output buffer data conductors and the plurality of output buffer enable conductors extend in a row direction, and different ones of the plurality of output buffer data conductors and the plurality of output buffer enable conductors include other output buffer data conductors and The plurality of output buffer data conductors and the plurality of output buffer enable conductors have different lengths as compared to the output buffer enable conductors and extend across a different number of the columns, the plurality of output buffer enable conductors and the plurality of output buffer enable conductors of the plurality of modules. Forming a third intersection with some of the plurality of outputs, at a selected one of the first, second, and third intersections; Continued been user comprises a plurality of interconnected elements programmable, field programmable gate array architecture.
【請求項20】ユーザがプログラム可能な相互接続エレ
メントが前記第1の交差部の全てに接続された、請求項
19に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
20. A user-programmable interconnect element connected to all of said first intersections.
20. The architecture of the field programmable gate array according to 19.
【請求項21】ユーザがプログラム可能な相互接続エレ
メントが前記第2の交差部の全てに接続された、請求項
19に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
21. A user-programmable interconnect element connected to all of said second intersections.
20. The architecture of the field programmable gate array according to 19.
【請求項22】ユーザがプログラム可能な相互接続エレ
メントが前記第3の交差部の全てに接続された、請求項
19に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
22. A user-programmable interconnect element connected to all of said third intersections.
20. The architecture of the field programmable gate array according to 19.
【請求項23】集積回路上に配置されるフィールドプロ
グラマブルゲートアレイのアーキテクチャであって、 ロウ及びカラムから成るアレイ状の複数の論理機能モジ
ュールであって、前記複数のモジュールの各々が少なく
とも1つの入力導体及び少なくとも1つの出力導体を有
する論理機能モジュールを備え、 複数の入出力パッドを備え、 前記論理機能モジュールの幾つかからの出力と第1の交
差部を形成する複数の汎用相互接続導体を備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記複数のI/Oパッドの1つに接続されたデータ入力と入
力バッファデータ導体に接続されたデータ出力とを有す
る入力バッファ、および、出力バッファデータ導体に接
続されたデータ入力と前記複数のI/Oパッドの前記1つ
に接続されたデータ出力と出力バッファイネーブル導体
に接続されたイネーブル入力とを有する出力バッファを
含み、 前記複数の入力バッファデータ導体はカラム方向に延
び、前記複数の入力バッファデータ導体の異なる幾つか
は、他の前記入力バッファデータ導体と比較して異なる
長さを有して、異なる数の前記ロウを横切って延在し、
前記複数の論理機能モジュールの幾つかの入力と第2の
交差部を形成し、 前記複数の出力バッファデータ導体及び前記複数の出力
バッファイネーブル導体はカラム方向に延び、前記複数
の出力バッファデータ導体及び前記複数の出力バッファ
イネーブル導体の異なる幾つかは、他の前記出力バッフ
ァデータ導体および出力バッファイネーブル導体と比較
して異なる長さを有して、異なる数の前記ロウを横切っ
て延在し、前記複数の出力バッファデータ導体は、前記
複数の汎用相互接続導体の幾つかと第3の交差部を形成
し、 前記第1、第2および第3の交差部の内の選択された交
差部に接続された、ユーザがプログラム可能な複数の相
互接続エレメントを備える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
23. The architecture of a field programmable gate array disposed on an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each of said plurality of modules having at least one input. A logic function module having a conductor and at least one output conductor; a plurality of input / output pads; and a plurality of universal interconnect conductors forming a first intersection with outputs from some of the logic function modules. An input buffer comprising a plurality of input / output kernels, each input / output kernel having a data input connected to one of the plurality of I / O pads and a data output connected to an input buffer data conductor; and A data input connected to an output buffer data conductor and a data output connected to the one of the plurality of I / O pads. An output buffer having a force and an enable input connected to an output buffer enable conductor, wherein the plurality of input buffer data conductors extend in a column direction, and different ones of the plurality of input buffer data conductors are connected to another of the other input buffers. Extending across a different number of said rows, having a different length as compared to the buffer data conductor;
Forming a second intersection with some of the inputs of the plurality of logic function modules; the plurality of output buffer data conductors and the plurality of output buffer enable conductors extending in a column direction; A different number of the plurality of output buffer enable conductors having a different length as compared to the other output buffer data conductors and output buffer enable conductors and extending across a different number of the rows; A plurality of output buffer data conductors form a third intersection with some of the plurality of universal interconnect conductors, and are connected to a selected one of the first, second, and third intersections. Field programmable gate array architecture with multiple user programmable interconnect elements.
【請求項24】ユーザがプログラム可能な相互接続エレ
メントが前記第1の交差部の全てに接続された、請求項
23に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
24. A user-programmable interconnect element connected to all of said first intersections.
24. The architecture of the field programmable gate array according to 23.
【請求項25】ユーザがプログラム可能な相互接続エレ
メントが前記第2の交差部の全てに接続された、請求項
23に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
25. A user-programmable interconnect element connected to all of said second intersections.
24. The architecture of the field programmable gate array according to 23.
【請求項26】ユーザがプログラム可能な相互接続エレ
メントが前記第3の交差部の全てに接続された、請求項
23に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
26. A user-programmable interconnect element connected to all of said third intersections.
24. The architecture of the field programmable gate array according to 23.
【請求項27】集積回路上に配置されるフィールドプロ
グラマブルゲートアレイのアーキテクチャであって、 ロウ及びカラムから成るアレイ状の複数の論理機能モジ
ュールであって、前記複数のモジュールの各々が少なく
とも1つの入力導体と少なくとも1つの出力導体とを有
する論理機能モジュールを備え、 複数の入出力パッドを備え、 前記複数の論理機能モジュールの1つの出力と第1の交
差部を形成する複数の汎用相互接続導体を備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記複数のI/Oパッドの1つに接続されたデータ入力と入
力バッファデータ導体に接続されたデータ出力とを有す
る入力バッファ、および、出力バッファデータ導体に接
続されたデータ入力と前記複数のI/Oパッドの前記1つ
に接続されたデータ出力と出力バッファイネーブル導体
に接続されたイネーブル入力とを有する出力バッファを
含み、 前記複数の入力データバッファデータ導体はロウ方向に
延び、前記複数の入力バッファデータ導体の異なる幾つ
かは、他の前記入力バッファデータ導体と比較して異な
る長さを有して、異なる数の前記カラムを横切って延在
し、前記複数の論理機能モジュールの幾つかの入力と第
2の交差部を形成し、 前記複数の出力バッファデータ導体及び前記複数の出力
バッファイネーブル導体はロウ方向に延び、前記複数の
出力バッファデータ導体及び前記複数の出力バッファイ
ネーブル導体の異なる幾つかは、他の前記出力バッファ
データ導体および出力バッファイネーブル導体と比較し
て異なる長さを有して、異なる数の前記カラムを横切っ
て延在し、前記複数の出力バッファデータ導体は、前記
複数の汎用相互接続導体の幾つかと第3の交差部を形成
し、 前記第1、第2及び第3の交差部の内の選択された交差
部に接続された、ユーザがプログラム可能な複数の相互
接続エレメントを備える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
27. The architecture of a field programmable gate array located on an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each of said plurality of modules having at least one input. A logic function module having a conductor and at least one output conductor; a plurality of input / output pads; and a plurality of general-purpose interconnect conductors forming a first intersection with one output of the plurality of logic function modules. An input buffer comprising a plurality of input / output kernels, each input / output kernel having a data input connected to one of the plurality of I / O pads and a data output connected to an input buffer data conductor; and A data input connected to the output buffer data conductor and a data output connected to the one of the plurality of I / O pads. An output buffer having a force and an enable input connected to an output buffer enable conductor, wherein the plurality of input data buffer data conductors extend in a row direction, and different ones of the plurality of input buffer data conductors are connected to another one of the other. Having a different length as compared to the input buffer data conductor and extending across a different number of said columns to form a second intersection with some inputs of said plurality of logic function modules; The plurality of output buffer data conductors and the plurality of output buffer enable conductors extend in a row direction, and different ones of the plurality of output buffer data conductors and the plurality of output buffer enable conductors are connected to the other output buffer data conductor and the output. Extending across a different number of said columns, having a different length as compared to the buffer enable conductor The plurality of output buffer data conductors form a third intersection with some of the plurality of universal interconnect conductors and connect to a selected one of the first, second, and third intersections. Field programmable gate array architecture with multiple user-programmable interconnect elements.
【請求項28】ユーザがプログラム可能な相互接続エレ
メントが前記第1の交差部の全てに接続された、請求項
27に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
28. A user-programmable interconnect element connected to all of said first intersections.
28. The architecture of the field programmable gate array according to 27.
【請求項29】ユーザがプログラム可能な相互接続エレ
メントが前記第2の交差部の全てに接続された、請求項
27に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
29. A user-programmable interconnect element connected to all of said second intersections.
28. The architecture of the field programmable gate array according to 27.
【請求項30】ユーザがプログラム可能な相互接続エレ
メントが前記第3の交差部の全てに接続された、請求項
27に記載のフィールドプログラマブルゲートアレイのア
ーキテクチャ。
30. A user-programmable interconnect element connected to all of said third intersections.
28. The architecture of the field programmable gate array according to 27.
【請求項31】集積回路上に配置されるフィールドプロ
グラマブルゲートアレイのアーキテクチャであって、 ロウ及びカラムから成るアレイ状の複数の論理機能モジ
ュールであって、前記複数のモジュールの各々が少なく
とも1つの入力導体と少なくとも1つの出力導体とを有
する論理機能モジュールを備え、 複数の入出力パッドを備え、 複数の入出力カーネルを備え、各入出力カーネルが、前
記複数のI/Oパッドの内の1つに接続されたデータ入力
と入力バッファデータ導体に接続されたデータ出力とを
有する入力バッファ、および、出力バッファデータ導体
に接続されたデータ入力と前記複数のI/Oパッドの前記
1つに接続されたデータ出力と出力バッファイネーブル
導体に接続されたイネーブル入力とを有する出力バッフ
ァを含み、 前記入力バッファデータ導体は、前記ロウに沿った方向
と前記カラムに沿った方向の内の1つを構成する方向に
延び、前記入力バッファデータ導体の幾つかは、前記入
力バッファデータ導体の他の幾つかと比較して異なる長
さを有して、異なる前記ロウまたは前記カラムに横切っ
て延在し、前記入力バッファデータ導体は、前記複数の
論理機能モジュールの前記入力の内の幾つかと第1の交
差部を形成し、 前記出力バッファデータ導体は、前記ロウに沿った方向
と前記カラムに沿った方向の内の1つを構成する方向に
延び、前記出力バッファデータ導体の幾つかは、前記出
力バッファデータ導体の他の幾つかと比較して異なる長
さを有して、異なる前記ロウまたは前記カラムに横切っ
て延在し、前記出力バッファデータ導体は、前記複数の
論理機能モジュールの前記出力の内の1つと第2の交差
部を形成し、 前記第1及び第2の交差部の内の選択された交差部に接
続された、ユーザがプログラム可能な複数の相互接続エ
レメントを備え、 前記ロウに沿った方向及び前記カラムに沿った方向の両
方に延びるグローバルイネーブル導体であって、前記出
力バッファイネーブル導体の少なくとも幾つかと第3の
交差部を形成するグローバルイネーブル導体を備え、 前記第3の交差部の少なくとも幾つかに接続された、ユ
ーザがプログラム可能な複数の相互接続エレメントを備
える、 フィールドプログラマブルゲートアレイのアーキテクチ
ャ。
31. The architecture of a field programmable gate array disposed on an integrated circuit, comprising: a plurality of logic function modules in an array of rows and columns, each of said plurality of modules having at least one input. A logic function module having a conductor and at least one output conductor, comprising a plurality of I / O pads, comprising a plurality of I / O kernels, each I / O kernel being one of the plurality of I / O pads. An input buffer having a data input connected to the input buffer and a data output connected to the input buffer data conductor; and a data input connected to the output buffer data conductor and connected to the one of the plurality of I / O pads. An output buffer having a data output and an enable input connected to an output buffer enable conductor. The input buffer data conductors extend in a direction that constitutes one of a direction along the row and a direction along the column, and some of the input buffer data conductors include other ones of the input buffer data conductors. Extending across the different rows or columns with different lengths as compared to the input buffer data conductors, wherein the input buffer data conductors have a first intersection with some of the inputs of the plurality of logic function modules. Wherein the output buffer data conductors extend in a direction that constitutes one of a direction along the row and a direction along the column, and some of the output buffer data conductors include the output buffer. The output buffer data conductor has a different length as compared to some of the other data conductors and extends across the different rows or columns, and the output buffer data conductor comprises A plurality of user-programmable interconnects forming a second intersection with one of the outputs of the functional module and connected to a selected one of the first and second intersections A global enable conductor extending in both the direction along the row and the direction along the column, the global enable conductor forming a third intersection with at least some of the output buffer enable conductors. A field programmable gate array architecture comprising a plurality of user programmable interconnect elements connected to at least some of said third intersections.
【請求項32】前記グローバルイネーブル導体は、前記
アレイの外周に実質的に近い位置に配置され、ロウ方向
に延びている1つの区分及びカラム方向に延びている1
つの区分を形成する、請求項31に記載のフィールドプロ
グラマブルゲートアレイのアーキテクチャ。
32. The global enable conductor is located substantially near the periphery of the array and has one section extending in the row direction and one section extending in the column direction.
32. The architecture of the field programmable gate array of claim 31, forming one partition.
【請求項33】前記グローバルイネーブル導体は、前記
アレイの外周に実質的に近い位置に配置され、ロウ方向
に延びている少なくとも1つの区分及びカラム方向に延
びている少なくとも1つの区分を形成する、請求項31に
記載のフィールドプログラマブルゲートアレイのアーキ
テクチャ。
33. The global enable conductor is positioned substantially near an outer periphery of the array, forming at least one section extending in a row direction and at least one section extending in a column direction. 32. The architecture of the field programmable gate array of claim 31.
JP53513896A 1995-05-18 1996-05-07 Flexible FPGA input / output architecture Expired - Fee Related JP3290992B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/444243 1995-05-18
PCT/US1996/007405 WO1996037047A1 (en) 1995-05-18 1996-05-07 Flexible fpga input/output architecture

Publications (2)

Publication Number Publication Date
JPH11502993A JPH11502993A (en) 1999-03-09
JP3290992B2 true JP3290992B2 (en) 2002-06-10

Family

ID=22255134

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53513896A Expired - Fee Related JP3290992B2 (en) 1995-05-18 1996-05-07 Flexible FPGA input / output architecture

Country Status (1)

Country Link
JP (1) JP3290992B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101218776B1 (en) * 2006-01-11 2013-01-18 삼성전자주식회사 Method of generating multi-channel signal from down-mixed signal and computer-readable medium

Also Published As

Publication number Publication date
JPH11502993A (en) 1999-03-09

Similar Documents

Publication Publication Date Title
US5625301A (en) Flexible FPGA input/output architecture
US5509128A (en) FPGA architecture including direct logic function circuit to I/O interconnections
US6144220A (en) FPGA Architecture using multiplexers that incorporate a logic gate
JP3589501B2 (en) Programmable logic module and architecture for field programmable gate arrays
JP3509047B2 (en) Programmable array interconnect network
US6292021B1 (en) FPGA structure having main, column and sector reset lines
US5698992A (en) Programmable logic module and architecture for field programmable gate array device
JP4847663B2 (en) Heterogeneous interconnect architecture for programmable logic devices
US5600265A (en) Programmable interconnect architecture
US6292022B2 (en) Interconnect structure for a programmable logic device
US5359536A (en) Programmable gate array with improved interconnect structure, input/output structure and configurable logic block
US5367209A (en) Field programmable gate array for synchronous and asynchronous operation
US5432708A (en) Multichip module integrated circuit device having maximum input/output capability
EP0469728A1 (en) Programmable interconnect architecture
JPH0653817A (en) Programmable logic array integrated circuit
JPH09503886A (en) Programmable logic circuit architecture and interconnection technology
CA1204171A (en) Programmable logic array
JP3290992B2 (en) Flexible FPGA input / output architecture
US5488317A (en) Wired logic functions on FPGA's
EP2432127A2 (en) Routing architecture with high speed I/O bypass path
US5463328A (en) Expanded programmable logic architecture
US6549035B1 (en) High density antifuse based partitioned FPGA architecture
US5428304A (en) Programmable gate array with special interconnects for adjacent gates and isolation devices used during programming
US6384629B2 (en) High-speed programmable interconnect
AU723157B2 (en) Configurable logic array

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees