JP2005505978A - スケーラブル・アーキテクチャを備えた再構成可能な集積回路 - Google Patents
スケーラブル・アーキテクチャを備えた再構成可能な集積回路 Download PDFInfo
- Publication number
- JP2005505978A JP2005505978A JP2003535333A JP2003535333A JP2005505978A JP 2005505978 A JP2005505978 A JP 2005505978A JP 2003535333 A JP2003535333 A JP 2003535333A JP 2003535333 A JP2003535333 A JP 2003535333A JP 2005505978 A JP2005505978 A JP 2005505978A
- Authority
- JP
- Japan
- Prior art keywords
- functional blocks
- crossbar
- outputs
- inputs
- subset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 13
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/64—Distributing or queueing
- H04Q3/68—Grouping or interlacing selector groups or stages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1302—Relay switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1304—Coordinate switches, crossbar, 4/2 with relays, coupling field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13109—Initializing, personal profile
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13322—Integrated circuits
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
【0001】
本発明は集積回路(IC)の分野に関する。さらに詳細に述べると、本発明は再構成可能な集積回路の構成に関する。
【背景技術】
【0002】
ICの設計および製造技術は一般に知られている。長年にわたって、ICの設計および製造技術が向上し続けているので、単一のICにパッケージ化される電子素子の数が増加しており、これら素子間の相互接続がますます複雑になっている。密度および複雑性が増すにつれ、IC製造マスクを作成する費用もこれに応じてかなり増加した。
【発明の開示】
【発明が解決しようとする課題】
【0003】
論理の全体という観点で見た場合、最近のIC製品ファミリの異なった商品間、または連続して提供される商品間で、それらの機能が比較的わずかかしか増加していないことが多い。それゆえ、新しいICマスクのコストが高いことならびにその他の要因を考慮すると、より多くのIC設計者が、一部を再構成することによって異なった商品間での機能の変化を吸収できるICを得ることを望んでいる。
【0004】
米国特許第5574388号はエミュレーション応用向けに設計された再構成可能な集積回路を開示している。集積されたデバッグ装置を特に含むこの構成は所期の用途に特に適している。しかしながら、汎用目的の部分的に再構成可能な集積回路は別の一連の課題を提示している。1つの望ましい特性は、使用する素子面積と配線し易さの間のより柔軟性のあるトレードオフを提供するスケーラビリティである。したがって、再構成可能な集積回路構成の改良が望まれている。
【課題を解決するための手段】
【0005】
集積回路(IC)がいくつかの機能ブロックを含み、その機能ブロックの少なくとも1つは再構成可能な機能ブロックである。各機能ブロックは、再構成可能な機能ブロックでも、または再構成不能な機能ブロックでも、または同一構成のものと相互接続された「ネストされた」機能を付加して再帰的に拡張されたブロックでもよい。このICはさらにいくつかの外部入力ピン、およびいくつかの外部出力ピンを備えている。
【0006】
各素子は、少なくともICレベルにおいて、入力信号はすべてクロスバ・デバイスの第1のサブセットを経由して外部入力ピンから機能ブロックに送信され、内部信号はすべてクロスバ・デバイスの第2のサブセットを経由して1つの機能ブロックから別の機能ブロックへ送信され、かつ出力信号はすべてクロスバ・デバイスの第3のサブセットを経由して各機能ブロックから出力ピンへ送信されるように結合されている。
【0007】
1つの実施態様において、各クロスバ・デバイスの出力は単一のファンアウトを有する。さらに、各クロスバ・デバイスは別のクロスバ・デバイスに対して1つの入力だけを供給することができる。
【発明を実施するための最良の形態】
【0008】
本発明を、添付図面に示した模範的な実施形態によって説明するが、本発明はこれに限定されるものではない。図中、同一の参照数字は同一の素子を表している。
図1はスケーラブル・アーキテクチャを組み込んだ、1つの実施形態による本発明の再構成可能な集積回路の概略図である。
図2はスケーラブル・アーキテクチャを組み込んだ、1つの実施形態による本発明の再構成可能な集積回路の概略図である。
図3は1つの実施形態による、再構成可能な機能ブロックのさらに詳細な図である。
図4は1つの実施形態による、クロスバ間の相互接続を示す図である。
図5は図1と図2の再構成可能な集積回路の1つの実施形態をさらに詳細に示した図である。
図6は図1と図2の再構成可能な集積回路の別の実施形態をさらに詳細に示した図である。
図7は図1と図2の再構成可能な集積回路の別の実施形態をさらに詳細に示した図である。
【0009】
以下の説明においては、本発明の完全な理解を得るために、説明上、特定の番号、材質および構成を定めておく。しかしながら、本発明は特定の詳細な説明なしでも実施できることが当業者には明白であろう。他の例では、本発明が不明瞭にならないようによく知られた特徴は省略するかまたは簡略化している。
【0010】
また、「1つの実施形態において」という語句が繰り返し使用されている。この語句は、同じ実施形態を指す場合も、別の実施形態を指す場合もある。本出願で使用されているような、「備えている」、「含む」、「有する」等の用語は同義語である。
【0011】
図1について説明すると、1つの実施形態による本発明の再構成可能な集積回路(100)の概要をブロック図で示す。図に示すように集積回路(IC)100はいくつかの機能ブロック102といくつかのクロスバ・デバイス104を含んでいる。IC100はさらにいくつかの外部出力ピンと入力ピンを含んでいる。機能ブロック102はIC100の論理を与え、一方、ロスバ・デバイス104は信号をIC100の内外に送信するとともに、IC100内の各機能ブロック間で送信するための信号送信経路を提供している。以下でより詳細に説明するように、有利なことには、新しいアーキテクチャにしたがって各素子がひとまとめに結合されたことにより、簡単に拡張縮小できる方法(スケーラブル方法)で所望の配線経路を達成することが可能になり、素子が使用する面積対配線し易さのトレードオフの柔軟性が増している。
【0012】
機能ブロック102は、再構成不能な機能ブロック102a、再構成可能な機能ブロック102b、および/または「ネストされた」機能ブロック102cを含む。たとえば、機能ブロック102は、プロセッサ・コア、記憶装置制御器、バス・ブリッジなどの再構成不能な機能ブロック102aを含んでいる。それに加えて、またはその代わりに、機能ブロック102は、PLDまたはFPGAで見られるものと同様の再構成可能回路、ISAバスもしくはEISAバスをサポートしているものの間、または12CもしくはSPIシリアル・コミュニケーション・インターフェースをサポートしているものの間などで再構成してかわりの機能をサポートするものなどの再構成可能な機能ブロック102b含んでいてもよい。「ネストされた」機能ブロック102c内の機能ブロックは、機能ブロック102、外部入力と外部出力、およびクロスバ・デバイス104をICレベル(「ルート」または「最も高い」または「最も外側の」レベルとも呼ばれる)で相互に接続するために、同一の相互接続アーキテクチャに従って体系化され、かつ一緒に相互接続されている。「ネストされた」機能ブロックの各集合は、再構成不能な機能ブロック、再構成可能な機能ブロック、および/または同一の相互接続アーキテクチャに従って相互接続されている「ネストされた」機能ブロックを含むことができる。最終的に、「最も深い」ネスト・レベル(「最も低い」または「最も内側の」ネスト・レベルとも呼ばれる)で、各々の機能ブロックは、同一の相互接続アーキテクチャに従って相互接続された再構成不能な機能ブロックかまたは再構成可能な機能ブロックである。
【0013】
各クロスバ・デバイス104は、数が固定した入力と数が固定した出力を有している。その出力はすべて、制約なしにどのような入力からも同時に経路を通して送信することができる(これは完全に実装されたクロスバとも呼ばれる)。クロスバ・デバイス104の他の重要な特性は、信号が常にクロスバ・デバイスを通って同じ方向に伝わる(すなわち、入力から出力へ)ことである。しかし、これは、通過トランジスタ双方向クロスバ・デバイスまたは有線ないしは一方向クロスバ・デバイスまたはバッファーとしてはたらく、一方向クロスバ・デバイスのような任意のクロスバ・デバイスで実施することができる。図1に示したように、ICレベルにおいて、各素子は以下の方法でお互いに結合される。
a)クロスバ・デバイス104の第1のサブセットが、コネクション156とコネクション150の第1のサブセットを経由して外部入力ピンを機能ブロック102の入力の第1のサブセットに配線している。
b)次に、クロスバ・デバイス104の第2のサブセットが、コネクション154の第1のサブセットとコネクション150の第2のサブセット経由で、機能ブロック102の出力の第1のサブセットを機能ブロック102の入力の第2のサブセットに配線している。
c)さらに、クロスバ・デバイス104の第3のサブセットが、コネクション154の第2のサブセットおよびコネクション152経由で機能ブロック102の出力の第2のサブセットを外部出力ピンに配線している。
【0014】
したがって、外部入力ピンはすべて、クロスバ・デバイス104の第1のサブセットを経由して各機能ブロック102に与えられている。内部信号はすべて、クロスバ・デバイス104の第2のサブセットを経由して1つの機能ブロック102から別の機能ブロック102に送られ、また出力信号はすべて、クロスバ・デバイス104の第3のサブセットを経由して各機能ブロック102から外部出力ピンに送られる。
【0015】
このクロスバ・デバイス104の第1、第2および第3のサブセットは重なる場合もあれば重ならない場合もあり、また3つのサブセットのそれぞれがクロスバ・デバイス104の集合全体を含んでいても良いことに注意する必要がある。同様に、機能ブロック102の入力の第1および第2のサブセットが重なる場合もあれば重ならない場合もあり、また2つのサブセットのそれぞれが機能ブロック102の入力の集合全体を含んでいても良い。同じように、機能ブロック102の出力の第1および第2のサブセットが重なる場合もあれば重ならない場合もあり、また2つのサブセットのそれぞれが機能ブロック102の出力の集合全体を含んでもよい。
【0016】
図2に示すように、ネストされた機能ブロック102cの各集合は、いくつかの機能ブロック202(「ネストされた」機能ブロック202cの集合か、再構成不能な機能ブロック202aか、再構成可能な機能ブロック202bでよい)とクロスバ・デバイスを含んでいる。この機能ブロック202は、ICレベルにおいてトポロジ的には機能ブロック102と類似の位置を占めており、一方、クロスバ・デバイス204は、ICレベルにおいてトポロジ的にクロスバ・デバイス104と類似の位置を占めている。入力はICレベルにおいてトポロジ的に外部入力ピンと類似の位置を占めており、出力はICレベルにおいてトポロジ的に外部出力ピンと類似の位置を占めている。したがって、
a)クロスバ・デバイス204の第1のサブセットが、コネクション256およびコネクション250の第1のサブセット経由で入力を機能ブロック202の入力の第1のサブセットに配線する。
b)次に、クロスバ・デバイス204の第2のサブセットが、コネクション254の第1のサブセットおよびコネクション250の第2のサブセット経由で機能ブロック202の出力の第1のサブセットを機能ブロック202の入力の第2のサブセットに配線する。
c)さらに、クロスバ・デバイス204の第3のサブセットが、コネクション254の第2のサブセットおよびコネクション252経由で機能ブロック202の出力の第2のサブセットを出力に配線する。
【0017】
したがって、入力はすべて、クロスバ・デバイス204の第1のサブセットを経由して各機能ブロック202に提供されている。内部信号はすべて、クロスバ・デバイス204の第2のサブセットを経由して1つの機能ブロック202から別の機能ブロック202に送られ、また出力信号はすべて、クロスバ・デバイス204の第3のサブセットを経由して各機能ブロック202から外部出力に送られる。
【0018】
ICレベルと同様に、クロスバ・デバイス204の第1、第2、第3のサブセットは重なる場合もあれば重ならない場合もあり、また3つのサブセットのそれぞれがクロスバ・デバイス204の集合全体を含んでいても良い。同様に、機能ブロック202の入力の第1および第2のサブセットが重なる場合もあれば重ならない場合もあり、また2つのサブセットのそれぞれが機能ブロック202の入力の集合全体を含んでいても良い。同じように、機能ブロック202の出力の第1および第2のサブセットは重なる場合もあれば重ならない場合もあり、また2つのサブセットのそれぞれが機能ブロック202の出力の集合全体を含んでいても良い。
【0019】
各クロスバ・デバイス204はICレベルのクロスバ・デバイス104と同じタイプである。
【0020】
したがって、本発明のもとでは、本発明の各機能ブロック102をより良好な素子使用面積と配線し易さ間のトレードオフをもたらすように帰納的に拡張することができる。必要な信号送信経路が比較的少ないIC100を実装するためには、少数のクロスバ・デバイスと単一レベルの機能ブロックを用い、本発明の相互接続アーキテクチャに従って相互に接続すればよい。しかしながら、より多くの機能ブロックを必要とするIC100を実装するためには、(ICレベルで各素子を相互に接続するのと同じやり方で各ネスト・レベルの素子を相互に接続して)1つまたは複数の機能ブロック102を1回または複数回帰納的に拡張すればよい。それに対応して、各帰納レベルにおいて機能ブロックのいくつかの入力と出力を供給する。このように、本発明のIC100は、高度にスケーラビリティであり、使用面積、速度および配線し易さのバランスにおいて柔軟性がある。
【0021】
理解しやすくするために、上記の説明ではIC100を外部入力ピンおよび外部出力ピンを有するものとしているが、本発明は、入力または出力の一方だけの外部ピン、または入力か出力になるように構成できる外部ピンとして実装することができる。
【0022】
図3は、図1の再構成可能な機能ブロック102bおよび図2の再構成可能な機能ブロック202bの1つの実施形態をさらに詳細に示している。この再構成可能な機能ブロックは再構成可能な論理素子(RLE)の集合を含んでいる。RLEは少数の論理ゲート(一般に10個以下)に相当する簡単な論理機能とフリップフロップなどの記憶機能を遂行するように構成することができる素子である。たとえば簡単な論理機能は、4入力1出力の真理値表として使用される16ビットRAMを使用して行なうことができる。図示するように、この実施形態に対して、再構成可能な機能ブロック102bは、それぞれn個の入力306a〜306d(n=4)とo個の出力308(o=1)とを持つm個のRLE302a〜304h(m=8)、およびそれぞれm個の出力310a〜310h(クロスバ・デバイスの出力の数はRLEの数に等しい)を持つn個のクロスバ・デバイス304a〜304d(クロスバ・デバイスの数はRLE入力の数に等しい)を含んでいる。RLE302a〜302hはいくつかの論理機能を遂行するために再構成することか可能である一方、クロスバ・デバイス304a〜304dは、RLEへの入力信号の配線経路、および各RLE間の信号配線経路に柔軟性をもたらす。クロスバ・デバイス304a〜304dの出力は、RLE302a〜302hのそれぞれの入力に結合され(クロスバの出力の数はRLEの数に等しいので、各RLEはクロスバ・デバイスの各々から1つの入力を受信する)、一方、RLE302a〜302hのそれぞれの出力はクロスバ・デバイス304a〜304dの各々の入力に最大限に結合される。すなわち、RLEからの出力がn1個有り、クロスバ・デバイスがn2個有る場合、各々のRLEの出力が1つのクロスバ・デバイスに相互に接続され、最大の相互接続が形成されたクロスバ・デバイスへの相互接続の数と最小の相互接続が形成されたクロスバ・デバイスへの相互接続の数の差は1となる。図示した実施形態に対しては、RLE302a〜302hからの出力が8つ有り、クロスバ・デバイス304a〜304dが4つ有るので、各々のクロスバ・デバイスは2つのRLEから信号を受信する。
【0023】
再構成可能な機能ブロックの入力はクロスバ・デバイス304a〜304dの入力に直接供給され、再構成可能な機能ブロックの出力はRLEの出力のサブセット(これはRLEの出力の集合全体を含んでいてもよい)に直接供給される。図示した実施形態において、クロスバ・デバイス304a〜304dの各々が4つの入力を受信し、6つのRLE302a〜302fだけが出力を供給する。
【0024】
図示しやすくするために、上記の説明では、8つのRLE、6つの出力、16の入力を有する再構成可能な機能ブロック102bを示している。本発明は、より多くのRLE、より多くの出力およびより多くの入力を有し、同一アーキテクチャのもので実施することができる。
【0025】
図4は、IC100の1つの実施形態のクロスバ・デバイス間の結合を示している。IC100のネストされた機能ブロック102c/202cが全体として拡張された場合、IC100は、相互に接続された、再構成不能な機能ブロック102a/202a、再構成可能な機能ブロック102b/202b、クロスバ・デバイス、外部入力ピン、外部出力ピンの集合に縮小する。IC100の配線可能性を増加させるためには、機能ブロックの出力と機能ブロックの入力との間、外部入力ピンと機能ブロックの入力との間、さらには機能ブロックの出力と外部出力ピンとの間の異なった送信経路を最大数用意することが好ましい。すなわち、クロスバ・デバイス402の1つの出力だけが他のクロスバ・デバイス404a〜404dの各々に接続される。さらに、より大きな速度をもたらすために、各クロスバ・デバイスの出力の容量負荷は最小限に低減すべきである。すなわち、どのようなクロスバ・デバイスの出力406も単一のクロスバ・デバイスの入力に接続される。したがって、本発明のもとでは、クロスバ・デバイス402が、最大数のクロスバ・デバイス404a〜404dに入力を供給し、その結果、出力容量負荷を最小限に低減しつつ送信経路の数を最大にする。
【0026】
図5〜7は、図1〜2の再構成可能な集積回路の1つの実施をさらに詳細に示している。図示したように、IC500は、「ネストされた」機能ブロック502の集合を1個、8個のクロスバ・デバイス504a〜504h、32個の外部出力ピン、32個の外部入力ピンおよびコネクション550、552、554、556を含んでいる。クロスバ・デバイス504e〜504hは、ICレベルにおけるクロスバ・デバイスの第1のサブセットであり、コネクション556、550経由で外部入力ピンをネストされた機能ブロック502の入力に配線する。クロスバ・デバイス504a〜504dは、ICレベルにおけるクロスバ・デバイスの第3のサブセットであり、コネクション554、552経由でネストされた機能ブロック502の出力を外部出力ピンに送る。本発明において、ICレベルにおけるクロスバ・デバイスの第2のサブセットは空である。したがって、「ネスト」された機能ブロック502の集合は、ICレベルにおいてトポロジ的に機能ブロック102の位置を占め、クロスバ・デバイス504a〜504hは、トポロジ的に、ICレベルのクロスバ・デバイス104の位置を占め、またコネクション550、552、554、556は、トポロジ的に、ICレベルのコネクション150、152、154、156の位置をそれぞれ占めている。クロスバ・デバイス604a〜604fはネストされた機能ブロック502のクロスバ・デバイスの一部である(ネストされた機能ブロック502の他のネストされた素子は図示していない)。
【0027】
図6はネストされた機能ブロック集合502の1つの実装を示している。ネストされた機能ブロック502は、2個のネストされた機能ブロック602a〜602b(図示する目的上、入力と出力の接続パターンを明快にするために、ブロック602a〜602bの表示を2回使用している)、6個のクロスバ・デバイス604a〜604f、24個の入力、24個の出力、コネクション650、652、654、656を含む。クロスバ・デバイス604a〜604fはネストされた機能ブロック・レベルにおけるクロスバ・デバイスの第1、第2、第3のサブセットであり、それぞれが、コネクション656、650経由で入力を機能ブロック602a〜602bの入力に、コネクション654、650経由で機能ブロック602a〜602bの出力を機能ブロック602a〜602bの入力に、またコネクション654、652経由で機能ブロック602a〜602bの出力を出力に送る。したがって、ネストされた機能ブロック602a〜602bは、トポロジ的に、ネストされた機能ブロック・レベルの機能ブロック202の位置を占めており、一方、クロスバ・デバイス604a〜604fは、トポロジ的に、ネストされた機能ブロック・レベルのクロスバ・デバイス204の位置を占めており、またコネクション650、652、654、656は、トポロジ的に、ネストされた機能ブロック・レベルのコネクション250、252、254、256の位置をそれぞれ占めている。クロスバ・デバイス704a〜704dはネストされた機能ブロック602a〜602bのクロスバ・デバイスである(ネストされた機能ブロック602a〜602bの他のネストされた素子は図示してない)。
【0028】
図7はネストされた機能ブロック602a〜602bの1つの実装を示している。ネストされた機能ブロック602a〜602bは4つのプログラム可能な機能ブロック702a〜702d(図示する目的上、入力と出力の接続パターンを明快にするために、ブロック702a〜702dの表示を2回使用している)、4つのクロスバ・デバイス704a〜704d、12個の入力、12個の出力、コネクション750、752、754、756を含む。クロスバ・デバイス704a〜704dはネストされた機能ブロック・レベルにおけるクロスバ・デバイスの第1、第2、第3のサブセットであり、それぞれが、コネクション756、750経由で入力を機能ブロック702a〜702dの入力に、コネクション754、750経由で機能ブロック702a〜702dの出力を機能ブロック702a〜702dの入力に、またコネクション754、752経由で機能ブロック702a〜702dの出力を出力に送る。したがって、ネストされた機能ブロック702a〜702dは、トポロジ的に、ネストされた機能ブロック・レベルの機能ブロック202の位置を占めており、クロスバ・デバイス704a〜704dは、トポロジ的に、ネストされた機能ブロック・レベルのクロスバ・デバイス204の位置を占めており、またコネクション750、752、754、756は、トポロジ的に、ネストされた機能ブロック・レベルのコネクション250、252、254、256の位置をそれぞれ占めている。プログラム可能な機能ブロック702a〜702dは、上に述べ、図3に示したプログラム可能な機能ブロックの実施と同じものである。
【0029】
IC500の各クロスバ・デバイスは、数が固定した入力と数が固定した出力を有しており、そのため、信号が常にクロスバ・デバイスを通って同じ方向に伝わることが本発明の重要な特性の1つであることに注目する必要がある。しかし、本発明は、通過トランジスタ双方向クロスバ・デバイスまたは有線ないしは一方向クロスバ・デバイスまたはバッファーとしてはたらく一方向クロスバ・デバイスのようなどのような種類のクロスバ・デバイスアーキテクチャでも実現することができる。
【0030】
さらに、IC500の各クロスバ・デバイス間の接続はすべて、上に開示し、図4に示したルールに従って行われる。
【0031】
例示と理解を容易にするために、わざわざIC500を少数の素子で示していることに注意する必要がある。しかしながら、当業者は、IC500の実装を拡張して実際的に商品に相当するようにできることを了解するだろう。たとえば、
a)ICレベルは、16個の「48入力、48出力」クロスバ・デバイス、1個の第1レベルのネストされた機能ブロック、384個の入力、384個の出力を備えることができ、
b)第1レベルのネストされた機能ブロックは、48個の「32入力、48出力」クロスバ・デバイス、24個の第2レベルのネストされた機能ブロック、384個の入力、384個の出力を含むことができ、
c)第2レベルのネストされたブロックは、16個の13入力、35の出力のクロスバ・デバイス、8個のプログラム可能な機能ブロック、80個の入力、48個の出力を含むことができ、
d)プログラム可能な機能ブロックは、4個の「20入力、16出力」クロスバ・デバイス、16個の「4入力、1出力」RLE、64個の入力、16個の出力を含むことができる。
【0032】
したがって、ICは3092個のRLE、384個の外部出力ピンおよび384個の外部入力ピンを有する。
【0033】
このように、スケーラブル・アーキテクチャを有する完全にまたは部分的に再構成可能な集積回路について説明してきた。上記例示した実施形態によって本発明の集積回路を説明したが、当業者は本発明が説明した実施形態に限定されるものではないことを了解するであろう。さらに、本発明を集積回路として説明したが、そうしないで、本発明をICの一部を形成する埋込論理ブロックとして実現することもできる。したがって、本発明は、添付の請求範囲の精神と範囲内で変更および変形して実施することができる。それゆえこの説明は、本発明を限定するものではなく、例示するものとみなすべきである。
【図面の簡単な説明】
【0034】
【図1】スケーラブル・アーキテクチャを組み込んだ、1つの実装形態による本発明の再構成可能な集積回路の概略図である。
【図2】スケーラブル・アーキテクチャを組み込んだ、1つの実装形態による本発明の再構成可能な集積回路の概略図である。
【図3】1つの実装形態による、再構成可能な機能ブロックのさらに詳細な図である。
【図4】1つの実装形態による、クロスバ間の相互接続を示す図である。
【図5】図1と図2の再構成可能な集積回路の1つの実装形態をさらに詳細に示した図である。
【図6】図1と図2の再構成可能な集積回路の別の実施形態をさらに詳細に示した図である。
【図7】図1と図2の再構成可能な集積回路の別の実施形態をさらに詳細に示した図である。
Claims (17)
- 第1の複数の入力と、
第1の複数の出力と、
第1の1つまたは複数の機能ブロックと、
前記第1の複数の入力、第1の複数の出力、第1の1つまたは複数の機能ブロックに結合されて、前記第1の入力を前記第1の1つまたは複数の機能ブロックに、前記第1の1つまたは複数の機能ブロックを互いに、また前記第1の1つまたは複数の機能ブロックを前記第1の出力にそれぞれ排他的に結合する第1の複数のクロスバ・デバイスとを備え、
前記第1の1つまたは複数の機能ブロックが、前記入力、出力、1つまたは複数の機能ブロック、クロスバ・デバイスの1つまたは複数の再帰的にネストされた集合を含む少なくとも第1の機能ブロックを備え、前記第1の複数のクロスバ・デバイスが前記第1の入力を前記第1の1つまたは複数の機能ブロックに、前記第1の1つまたは複数の機能ブロックを互いに、また前記第1の1つまたは複数の機能ブロックを前記第1の出力にそれぞれ結合するのと同じように、ネストされた各集合のクロスバ・デバイスがネストされた集合の入力、出力、1つまたは複数の機能ブロックを相互に接続している装置。 - 前記第1の複数のクロスバ・デバイスが、第1、第2、第3のサブセットを含み、前記第1のサブセットが前記第1の複数の入力信号を前記第1の1つまたは複数の機能ブロックの入力へ送信し、前記第2のサブセットが前記第1の1つまたは複数の機能ブロックの出力を前記第1の1つまたは複数の機能ブロックの入力へ送信し、かつ前記第3のサブセットが前記第1の1つまたは複数の機能ブロックの出力を前記第1の複数の出力へ配線する請求項1に記載の装置。
- 前記サブセットの少なくとも2つが同じサブセットである請求項2に記載の装置。
- 3つのサブセットがすべて同じサブセットである請求項2に記載の装置。
- 前記第1の機能ブロックが、
第2の複数の入力と、
第2の複数の出力と、
第2の1つまたは複数の機能ブロックと、
前記第2の複数の入力、第2の複数の出力、第2の1つまたは複数の機能ブロックに結合されて、前記第1の複数のクロスバ・デバイスが、前記第1の入力を前記第1の1つまたは複数の機能ブロックに、前記第1の1つまたは複数の機能ブロックを互いに、また前記第1の1つまたは複数の機能ブロックを前記第1の出力にそれぞれ結合するのと同じように、前記第2の複数の入力を前記第2の1つまたは複数の機能ブロックに、前記第2の1つまたは複数の機能ブロックを互いに、また前記第2の1つまたは複数の機能ブロックを前記第2の複数の出力にそれぞれ排他的に結合する第2の複数のクロスバ・デバイスとを備える請求項1に記載の装置。 - 前記第2の複数のクロスバ・デバイスが、第1、第2、第3のサブセットを含み、前記第1のサブセットが前記第2の複数の入力信号を前記第2の1つまたは複数の機能ブロックの入力へ配線し、前記第2のサブセットが前記第2の1つまたは複数の機能ブロックの出力を前記第2の1つまたは複数の機能ブロックの入力へ配線し、かつ前記第3のサブセットが前記第2の1つまたは複数の機能ブロックの出力を前記第2の複数の出力へ配線する請求項1に記載の装置。
- 前記サブセットの少なくとも2つが同じサブセットである請求項6に記載の装置。
- 3つのサブセットがすべて同じサブセットである請求項6に記載の装置。
- 前記第2の1つまたは複数の機能ブロックが、入力、出力、1つまたは複数の機能ブロック、クロスバ・デバイスの1つまたは複数の再帰的にネストされた集合を含む第2の機能ブロックを備え、前記第1の複数のクロスバ・デバイスが前記第1の入力を前記第1の1つまたは複数の機能ブロックに、前記第1の1つまたは複数の機能ブロックを互いに、また前記第1の1つまたは複数の機能ブロックを前記第1の出力にそれぞれ結合するのと同じように、ネストされた各集合のクロスバ・デバイスが、ネストされた集合の入力、出力、1つまたは複数の機能ブロックを相互に接続している請求項5に記載の装置。
- 前記第2の機能ブロックが、
第3の複数の入力と、
第3の複数の出力と、
第3の1つまたは複数の機能ブロックと、
前記第3の複数の入力、第3の複数の出力、第3の1つまたは複数の機能ブロックに結合されて、前記第2の複数のクロスバ・デバイスが前記第2の入力を前記第2の1つまたは複数の機能ブロックに、前記第2の1つまたは複数の機能ブロックを互いに、前記第2の1つまたは複数の機能ブロックを前記第2の出力にそれぞれ結合し、前記第1の複数のクロスバ・デバイスが前記第1の入力を前記第1の1つまたは複数の機能ブロックに、前記第1の1つまたは複数の機能ブロックを互いに、前記第1の1つまたは複数の機能ブロックを前記第1の出力にそれぞれ結合するのと同じように、前記第3の複数の入力を前記第3の1つまたは複数の機能ブロックに、前記第3の1つまたは複数の機能ブロックを互いに、また前記第3の1つまたは複数の機能ブロックを前記第3の複数の出力にそれぞれ排他的に結合する第3の複数のクロスバ・デバイスとを備える請求項9に記載の装置。 - 前記装置が集積回路の形成に使用される埋込論理ブロックである請求項1に記載の装置。
- 前記装置が集積回路である請求項1に記載の装置。
- 前記入力、出力、1つまたは複数の機能ブロック、クロスバ・デバイスの1つまたは複数の再帰的にネストされた集合の少なくとも1つが、
それぞれの論理ブロックがn個の入力とo個の出力(m、nおよびoは整数)を有し、少なくとも1つの集合の出力として与えられる前記o出力のサブセットを持つm個の再構成可能な論理ブロックと、
それぞれのクロスバ・デバイスが、前記m個の再構成可能な論理ブロックの前記n個の入力に対応して結合されたm個の出力を有するn個のクロスバ・デバイスとを備え、前記m個の再構成可能な論理ブロックの出力が、最大限、前記n個のクロスバ・デバイスの入力の第1のサブセットと、前記n個のクロスバ・デバイスの入力の第2のサブセットに結合された少なくとも1つのネストされた集合の各入力とに結合されている請求項1に記載の装置。 - 前記装置の各クロスバ・デバイスの出力が単一のファンアウトを有し、前記装置の各クロスバ・デバイスはその装置の別のクロスバ・デバイスに対して1つの入力だけを供給する請求項13に記載の装置。
- 前記装置の各クロスバ・デバイスの出力が単一のファンアウトを有し、前記装置の各クロスバ・デバイスはその装置の別のクロスバ・デバイスに対して1つの入力だけを供給する請求項1に記載の装置。
- それぞれがn個の入力とo個の出力(m、n、oは整数)を有し、前記o個の出力のサブセットが機能ブロックの出力として与えられるm個の再構成可能な論理ブロックと、
それぞれが、前記m個の再構成可能な論理ブロックの前記n個の入力に対応して結合されたm個の出力を有するn個のクロスバ・デバイスと
を備え、前記m個の再構成可能な論理ブロックの出力が、最大限、前記n個のクロスバ・デバイスの入力の第1のサブセットと、前記n個のクロスバ・デバイスの入力の第2のサブセットに結合された前記機能ブロックの各入力とに結合されている機能ブロック。 - 前記機能ブロックが集積回路の形成に使用される埋込論理ブロックである請求項15に記載の機能ブロック。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/971,349 US6594810B1 (en) | 2001-10-04 | 2001-10-04 | Reconfigurable integrated circuit with a scalable architecture |
PCT/EP2002/011075 WO2003032492A2 (en) | 2001-10-04 | 2002-10-02 | A reconfigurable integrated circuit with a scalable architecture |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005505978A true JP2005505978A (ja) | 2005-02-24 |
JP2005505978A5 JP2005505978A5 (ja) | 2006-01-05 |
JP4191602B2 JP4191602B2 (ja) | 2008-12-03 |
Family
ID=25518256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003535333A Expired - Lifetime JP4191602B2 (ja) | 2001-10-04 | 2002-10-02 | スケーラブル・アーキテクチャを備えた再構成可能な集積回路 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6594810B1 (ja) |
EP (1) | EP1433257B1 (ja) |
JP (1) | JP4191602B2 (ja) |
AU (1) | AU2002347046A1 (ja) |
CA (1) | CA2461540C (ja) |
WO (1) | WO2003032492A2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6978186B2 (en) * | 2002-03-22 | 2005-12-20 | International Rectifier Corporation | Modular functional block for an electronic control system |
US6975139B2 (en) * | 2004-03-30 | 2005-12-13 | Advantage Logic, Inc. | Scalable non-blocking switching network for programmable logic |
US7698118B2 (en) * | 2004-04-15 | 2010-04-13 | Mentor Graphics Corporation | Logic design modeling and interconnection |
US7460529B2 (en) * | 2004-07-29 | 2008-12-02 | Advantage Logic, Inc. | Interconnection fabric using switching networks in hierarchy |
US7224184B1 (en) * | 2004-11-05 | 2007-05-29 | Xilinx, Inc. | High bandwidth reconfigurable on-chip network for reconfigurable systems |
US7263456B2 (en) * | 2006-01-10 | 2007-08-28 | M2000 | On circuit finalization of configuration data in a reconfigurable circuit |
US7768301B2 (en) * | 2006-01-17 | 2010-08-03 | Abound Logic, S.A.S. | Reconfigurable integrated circuits with scalable architecture including a plurality of special function elements |
US7274215B2 (en) * | 2006-01-17 | 2007-09-25 | M2000 Sa. | Reconfigurable integrated circuits with scalable architecture including one or more adders |
US7368943B2 (en) * | 2006-03-28 | 2008-05-06 | Advantage Logic, Inc. | Enhanced scheme to implement an interconnection fabric using switching networks in hierarchy |
US7739647B2 (en) * | 2006-09-12 | 2010-06-15 | Infosys Technologies Ltd. | Methods and system for configurable domain specific abstract core |
US7714611B1 (en) * | 2008-12-03 | 2010-05-11 | Advantage Logic, Inc. | Permutable switching network with enhanced multicasting signals routing for interconnection fabric |
US7705629B1 (en) * | 2008-12-03 | 2010-04-27 | Advantage Logic, Inc. | Permutable switching network with enhanced interconnectivity for multicasting signals |
US7999570B2 (en) | 2009-06-24 | 2011-08-16 | Advantage Logic, Inc. | Enhanced permutable switching network with multicasting signals for interconnection fabric |
US8341580B2 (en) * | 2009-09-28 | 2012-12-25 | Advantage Logic, Inc. | Modular routing fabric using switching networks |
JP2017169118A (ja) | 2016-03-17 | 2017-09-21 | 株式会社東芝 | 集積回路および電子機器 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4020469A (en) | 1975-04-09 | 1977-04-26 | Frank Manning | Programmable arrays |
USRE34363E (en) | 1984-03-12 | 1993-08-31 | Xilinx, Inc. | Configurable electrical circuit having configurable logic elements and configurable interconnects |
US4642487A (en) | 1984-09-26 | 1987-02-10 | Xilinx, Inc. | Special interconnect for configurable logic array |
US4700187A (en) | 1985-12-02 | 1987-10-13 | Concurrent Logic, Inc. | Programmable, asynchronous logic cell and array |
US4918440A (en) | 1986-11-07 | 1990-04-17 | Furtek Frederick C | Programmable logic cell and array |
US5255203A (en) | 1989-08-15 | 1993-10-19 | Advanced Micro Devices, Inc. | Interconnect structure for programmable logic device |
FR2660510A1 (fr) | 1990-03-27 | 1991-10-04 | Dune Technologies | Procede et dispositif d'interconnexion programmable entre deux ensembles de circuits electroniques et application a un circuit logique programmable. |
US5260610A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
US5208491A (en) | 1992-01-07 | 1993-05-04 | Washington Research Foundation | Field programmable gate array |
US5396126A (en) | 1993-02-19 | 1995-03-07 | At&T Corp. | FPGA with distributed switch matrix |
GB2280293B (en) | 1993-07-19 | 1997-12-10 | Hewlett Packard Co | Architecture for programmable logic |
US5457410A (en) | 1993-08-03 | 1995-10-10 | Btr, Inc. | Architecture and interconnect scheme for programmable logic circuits |
US5455525A (en) | 1993-12-06 | 1995-10-03 | Intelligent Logic Systems, Inc. | Hierarchically-structured programmable logic array and system for interconnecting logic elements in the logic array |
US5648911A (en) * | 1993-12-21 | 1997-07-15 | Grodstein; Joel Joseph | Method of minimizing area for fanout chains in high-speed networks |
US6294928B1 (en) | 1996-04-05 | 2001-09-25 | Altera Corporation | Programmable logic device with highly routable interconnect |
US5594363A (en) | 1995-04-07 | 1997-01-14 | Zycad Corporation | Logic cell and routing architecture in a field programmable gate array |
KR19990008270A (ko) | 1995-05-03 | 1999-01-25 | 팅 벤자민 에스. | 스케일가능한 복수 레벨 상호연결 아키텍춰 |
US5909126A (en) | 1995-05-17 | 1999-06-01 | Altera Corporation | Programmable logic array integrated circuit devices with interleaved logic array blocks |
US5963049A (en) | 1995-05-17 | 1999-10-05 | Altera Corporation | Programmable logic array integrated circuit architectures |
US5574388A (en) | 1995-10-13 | 1996-11-12 | Mentor Graphics Corporation | Emulation system having a scalable multi-level multi-stage programmable interconnect network |
JP3486725B2 (ja) | 1995-11-28 | 2004-01-13 | 株式会社ルネサステクノロジ | 可変論理集積回路 |
US5742181A (en) | 1996-06-04 | 1998-04-21 | Hewlett-Packard Co. | FPGA with hierarchical interconnect structure and hyperlinks |
US6094066A (en) * | 1996-08-03 | 2000-07-25 | Mission Research Corporation | Tiered routing architecture for field programmable gate arrays |
US5796268A (en) | 1996-10-02 | 1998-08-18 | Kaplinsky; Cecil H. | Programmable logic device with partial switch matrix and bypass mechanism |
US6289494B1 (en) * | 1997-11-12 | 2001-09-11 | Quickturn Design Systems, Inc. | Optimized emulation and prototyping architecture |
US6137308A (en) | 1998-01-20 | 2000-10-24 | Cypress Semiconductor Corporation | Programmable interconnect matrix architecture for complex programmable logic device |
US6218859B1 (en) | 1998-05-26 | 2001-04-17 | Altera Corporation | Programmable logic device having quadrant layout |
US6215326B1 (en) | 1998-11-18 | 2001-04-10 | Altera Corporation | Programmable logic device architecture with super-regions having logic regions and a memory region |
US6693456B2 (en) * | 2000-08-04 | 2004-02-17 | Leopard Logic Inc. | Interconnection network for a field programmable gate array |
-
2001
- 2001-10-04 US US09/971,349 patent/US6594810B1/en not_active Expired - Lifetime
-
2002
- 2002-10-02 EP EP02782816.9A patent/EP1433257B1/en not_active Expired - Lifetime
- 2002-10-02 AU AU2002347046A patent/AU2002347046A1/en not_active Abandoned
- 2002-10-02 CA CA002461540A patent/CA2461540C/en not_active Expired - Fee Related
- 2002-10-02 WO PCT/EP2002/011075 patent/WO2003032492A2/en active Application Filing
- 2002-10-02 JP JP2003535333A patent/JP4191602B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP1433257A2 (en) | 2004-06-30 |
JP4191602B2 (ja) | 2008-12-03 |
EP1433257B1 (en) | 2013-09-11 |
WO2003032492A2 (en) | 2003-04-17 |
WO2003032492A3 (en) | 2004-02-26 |
CA2461540A1 (en) | 2003-04-17 |
AU2002347046A1 (en) | 2003-04-22 |
CA2461540C (en) | 2005-08-30 |
US6594810B1 (en) | 2003-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4191602B2 (ja) | スケーラブル・アーキテクチャを備えた再構成可能な集積回路 | |
US5477165A (en) | Programmable logic module and architecture for field programmable gate array device | |
US6150842A (en) | Variable grain architecture for FPGA integrated circuits | |
US5570041A (en) | Programmable logic module and architecture for field programmable gate array device | |
EP0461798B1 (en) | Configurable interconnect structure | |
US6191611B1 (en) | Driver circuitry for programmable logic devices with hierarchical interconnection resources | |
US6590415B2 (en) | Methods for configuring FPGA's having variable grain components for providing time-shared access to interconnect resources | |
US6570404B1 (en) | High-performance programmable logic architecture | |
JPH06224394A (ja) | 論理関数回路と入出力モジュールとの直接相互接続を含むfpgaアーキテクチャ | |
JP2004523879A (ja) | システム・オン・ア・チップのフィールド・プログラマブル・ゲート・アレイとマイクロコントローラ | |
US6820248B1 (en) | Method and apparatus for routing interconnects to devices with dissimilar pitches | |
JPH0378317A (ja) | 構成可能論理アレイ | |
US5907697A (en) | Emulation system having a scalable multi-level multi-stage hybrid programmable interconnect network | |
JPH10233676A (ja) | 論理アレイブロック内でローカル相互接続ラインを配列する方法およびプログラマブル論理回路 | |
EP0982666B1 (en) | System on chip (soc) four-way crossbar system and method | |
US5878265A (en) | Data transfer network on a chip utilizing polygonal hub topology | |
US7498840B2 (en) | Reconfigurable integrated circuits with scalable architecture including one or more adders | |
CN209168101U (zh) | 片上系统 | |
JP5311382B2 (ja) | 再構成可能集積回路 | |
JP3119130B2 (ja) | ネットワーク構成 | |
Meng et al. | A Study of Reconfigurable Switch Architecture for Chiplets Interconnection | |
KR100480444B1 (ko) | 복합 기능을 갖는 논리소자 | |
JPS62217630A (ja) | 半導体集積回路 | |
JPH04289473A (ja) | 半導体集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050906 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050906 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080318 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080617 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080819 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080918 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110926 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4191602 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120926 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130926 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |