JP2004248293A - 面積効率の高い論理要素のためのフラクチャ可能な不完全ルックアップテーブル - Google Patents
面積効率の高い論理要素のためのフラクチャ可能な不完全ルックアップテーブル Download PDFInfo
- Publication number
- JP2004248293A JP2004248293A JP2004035821A JP2004035821A JP2004248293A JP 2004248293 A JP2004248293 A JP 2004248293A JP 2004035821 A JP2004035821 A JP 2004035821A JP 2004035821 A JP2004035821 A JP 2004035821A JP 2004248293 A JP2004248293 A JP 2004248293A
- Authority
- JP
- Japan
- Prior art keywords
- lut
- output
- inputs
- logic circuit
- configurable
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17748—Structural details of configuration resources
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
- H03K19/17724—Structural details of logic blocks
- H03K19/17728—Reconfigurable logic blocks, e.g. lookup tables
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Logic Circuits (AREA)
Abstract
【課題】 面積効率が高く低価格な、構成可能論理回路を提供すること。
【解決手段】 本発明による構成可能論理回路は、少なくとも6つの入力と、少なくとも第1の出力および第2の出力と、構成可能論理回路によって行われる論理関数を完全に構成する、プログラマブルである、63未満のメモリビットとを含み、構成可能論理回路は、少なくとも6つの入力が、第1の出力を駆動して6入力論理関数を生成させるか、または少なくとも6つの入力の第1のサブセットが第1の出力を駆動し、少なくとも6つの入力の第2のサブセットが第2の出力を駆動するかのいずれか一方になるように構成され得る。
【選択図】 図1
【解決手段】 本発明による構成可能論理回路は、少なくとも6つの入力と、少なくとも第1の出力および第2の出力と、構成可能論理回路によって行われる論理関数を完全に構成する、プログラマブルである、63未満のメモリビットとを含み、構成可能論理回路は、少なくとも6つの入力が、第1の出力を駆動して6入力論理関数を生成させるか、または少なくとも6つの入力の第1のサブセットが第1の出力を駆動し、少なくとも6つの入力の第2のサブセットが第2の出力を駆動するかのいずれか一方になるように構成され得る。
【選択図】 図1
Description
本発明は、構成可能論理回路に関する。
プログラマブル論理デバイス(「PLD」)(あるいはCPLD、PAL、PLA、FPLA、EPLD、EEPLD、LCA、FPGAなどとも呼ばれる)は、カスタム化集積回路の適応性を有する固定集積回路という利点を提供する周知の集積回路である。これらのデバイスは当該分野で周知であり、典型的には、少なくともその一部がユーザの特定のニーズに合うように電気的にプログラムされ得る、一般に製造販売されているデバイスを提供する。特定用途向けIC(「ASIC」)は伝統的には固定集積回路であるが、一部をプログラム可能にしたASICを提供することは可能である。これにより、ASICおよびPLDの両方の性質を有する集積回路デバイスが可能となる。本明細書において、用語PLDはこのようなデバイスも含む広い意味で用いられる。
PLDは論理要素のブロックを含み、これは論理アレイブロックとも呼ばれる(あるいは「LAB」、「構成可能論理ブロック」、「CLB」などとも呼ばれる)。論理要素(「LE」または「論理セル」などとも呼ばれる)は、ルックアップテーブル(LUT)、プロダクトターム(product term)、実行チェーン、レジスタ、または他の要素を含み得る。LEは典型的にはPLDの最小反復可能関数ブロックである。
LUTは、一般的に、論理要素によって実行される特定の関数を決定する構成データを保持する構成可能要素を含む。典型的なLUT回路は、データ(「1」または「0」)を保持するRAMビットを含み得る。しかし他のタイプの構成可能要素も用いられ得る。例としては、スタティックRAM、磁気RAM、強誘電体RAMまたはダイナミックRAM、電気的に消去可能なROM、フラッシュ、ヒューズ、およびアンチヒューズプログラマブル接続が挙げられる。本明細書において、包括的用語「メモリ要素」は、LUTによって実行される関数を決定するように構成され得る任意のプログラマブル要素を指す。論理要素として用いられる典型的なLUT回路は、複数の入力信号の関数である出力信号を提供する。提供される特定の論理関数は、LUTのメモリ要素をプログラムすることにより決定され得る。
LUTのk値は、LUTが実行する組み合わせ論理関数用の入力の最大数である。たとえば、k=4のLUTまたは4−LUTは、最大4入力の組み合わせ論理関数を実行する。k−LUTはさらに、k入力未満の入力を有する論理関数を実行し得る。「完全な」k−LUTは、あらゆる可能なk入力の組み合わせ論理関数およびあらゆる可能なj入力関数(j<k)を実行し得る。
LUTのk値が高ければ高いほど、LUTが実行する論理関数の数は大きい。さらに、典型的には、LUTのk値が高ければ高いほど、LUTの性能も高い。この場合、性能とは、LUTによって実行される異なる論理関数におけるLUTの平均クロック速度を指す。したがって、PLD設計において、より高いk値のLUTを用いることが望ましい。しかし、一般的に、LUTのk値が高ければ高いほど、LUTが占めるシリコン面積も大きく、そのためLUTの提供が高価になる。
本発明は、面積効率が高く低価格な、構成可能論理回路を提供することを目的とする。
本発明による論理デバイスは、不完全でフラクチャ可能なk=6のLCT(「6−LUT」)を含む。特に、本発明による構成可能論理回路は、少なくとも6つの入力と少なくとも2つの出力とを含む。構成可能論理要素は、63以下のメモリビットで完全に構成可能である。本発明の構成可能論理回路は、6入力論理関数を生成するために6入力が出力のうちの僅か1つを駆動するように構成され得る。さらに、構成可能論理回路はフラクチャ可能であるため、入力の第1のサブセットが第1の出力を駆動し且つ入力の第2のサブセットが第2の出力を駆動するようにも構成され得る。このようにして、構成可能論理回路は、各々が6未満の入力を有する2つの異なる論理関数を同時に実行ことができる。
本発明による構成可能論理回路は、6入力論理関数のすべてを実行できるわけではないが、一般的に用いられる6入力論理関数を比較的高い割合で実行し且つ比較的高い置換可能性を保持するように設計されている。しかし、構成可能論理回路は6入力すべての論理関数のサブセットしか実行できないため、構成可能論理回路がFPGA内で占めるシリコン領域は大幅に減少し、したがって製造および使用のコストが大幅に低減される。さらに、本発明による少なくとも6入力の構成可能論理回路は6未満の入力の1より多い論理関数を実行することができるため、面積効率をさらに高めるために関数パッキングが用いられ得る。
本発明の別の局面によると、構成可能論理回路は少なくとも7つの入力と少なくとも3つの出力とを有する。7入力のうちの少なくとも1つは、出力の1つを直接駆動するように構成され得る。構成可能論理要素は、32以下のプログラマブルメモリビットで完全に構成可能である。本発明の構成可能論理回路は、6入力論理関数を生成するために6入力が出力のうちの僅か1つを駆動するように構成され得る。さらに、構成可能論理回路はフラクチャ可能であるため、7入力の第1のサブセットが出力の一つを駆動し、且つ、7入力の第2のサブセットが出力のうちの別の出力を駆動するようにも構成され得る。
本発明の第2の局面の構成可能論理回路は、出力を直接駆動し得る入力を含むため、レジスタパッキングおよび組み合わせ論理が実行され得る。したがって、本発明の第2の局面の構成可能論理回路は、上述した利点に加えて、所与のFPGA構成を実行するために必要とされる有効シリコン面積およびコストを低減するという利点を有する。
本発明による構成可能論理回路は、少なくとも6つの入力と、少なくとも第1の出力および第2の出力と、該構成可能論理回路によって行われる論理関数を完全に構成する、プログラマブルである、63未満のメモリビットとを含み、該構成可能論理回路は、該少なくとも6つの入力が、該第1の出力を駆動して6入力論理関数を生成させるか、または、該少なくとも6つの入力の第1のサブセットが該第1の出力を駆動し、該少なくとも6つの入力の第2のサブセットが該第2の出力を駆動するかのいずれか一方になるように構成され得る。
前記複数のメモリビットは、25未満のメモリビットを含んでもよい。
可能な4つの入力論理関数の全てを行うように構成可能であってもよい。
前記少なくとも6つの入力のうちの少なくとも2つによって直接駆動されてもよい。
前記第1の出力を直接駆動する完全な3−LUTを含んでもよい。
前記完全な4−LUTが少なくとも2つの完全な3−LUTを含んでもよい。
前記完全な4−LUTの出力が前記第2の出力を駆動してもよい。
少なくとも7つ目の入力と、該少なくとも7つの入力のうちの第1の入力によって直接駆動されるように構成可能な第3の出力と、該少なくとも7つの入力のうちの第2の入力によって直接駆動されるように構成可能な第4の出力とを含んでもよい。
前記複数のメモリビットは、26未満のメモリビットを含んでもよい。
前記少なくとも6つの入力のうちの少なくとも2つの入力によって直接駆動される完全な4−LUTを含んでもよい。
前記第1の出力を直接駆動する完全な3−LUTを含んでもよい。
前記完全な4−LUTが少なくとも2つの完全な3−LUTを含んでもよい。
前記完全な4−LUTの出力が前記第2の出力を駆動してもよい。
本発明によるプログラマブル論理デバイスは、上記に記載の構成可能論理回路を含む。
本発明によるデータ処理システムは、上記に記載の前記プログラマブル論理デバイスを含む。
本発明による構成可能論理回路は、少なくとも6つの入力と、少なくとも第1の出力および第2の出力と、該少なくとも6つの入力のうちの少なくとも2つの入力によって直接駆動される完全な4−LUTと、該少なくとも6つの入力が、該第1の出力を駆動して6つの入力論理関数を生成させるか、または、該少なくとも6つの入力のうちの6−nの入力が、該第1の出力を駆動して6−n入力論理関数を生成させ、該少なくとも6つの入力のうちの6−mの入力が、該第2の出力を駆動して6−m入力論理関数を生成させ、ここで、mおよびnは、それぞれ整数であり、mは3以上5以下の範囲の範囲にわたり、nは、1以上5以下の範囲にわたるかのいずれかである、少なくとも1つの構成と、を備え、該構成可能論理回路が、可能な6つの入力論理関数の全てのサブセットのみを行うように構成され得る。
前記構成可能論理回路によって行われる論理関数を完全に構成するようにプログラマブルである、複数のメモリビットを含み、該複数のメモリビットは、25未満のメモリビットを含んでもよい。
前記第1の出力を直接駆動する完全な3−LUTを含んでもよい。
前記完全な4−LUTは、少なくとも2つの完全な3−LUTを含んでもよい。
前記完全な4−LUTの出力は、前記第2の出力を駆動してもよい。
本発明によるプログラマブル論理デバイスは、上記に記載の構成可能論理回路を含む。
本発明によるデータ処理システムは、上記に記載のプログラマブル論理デバイスを含む。
本発明による構成可能論理回路は、少なくとも7つの入力と、少なくとも第1の出力および第2の出力と、該少なくとも7つの入力のうちの第1の入力によって直接駆動されるように構成可能な第3の出力と、該構成可能論理回路によって行われる論理関数を完全に構成するようにプログラマブルである、32未満のメモリビットとを備え、該構成可能論理回路は、該少なくとも7つの入力のうちの6つの入力が、該第1の出力を駆動して6入力論理関数を生成させるか、または、該少なくとも7つの入力の第1のサブセットが該第1の出力を駆動して、該少なくとも7つの入力の第2のサブセットが該第2の出力を駆動するかのいずれかになるように構成され得る。
前記少なくとも7つの入力のうちの第2の入力によって直接駆動されるように構成可能な第4の出力を含んでもよい。
前記複数のメモリビットは、26未満のメモリビットを含んでもよい。
可能な4入力論理関数の全てを行うように構成可能であってもよい。
前記少なくとも6つの入力のうちの少なくとも2つの入力によって、直接駆動される完全な4−LUTを含んでもよい。
前記第1の出力を直接駆動する完全な3−LUTを含んでもよい。
前記完全な4−LUTが少なくとも2つの完全な3−LUTを含んでもよい。
前記完全な4−LUTの出力が前記第2の出力を駆動させてもよい。
本発明によるプログラマブル論理デバイスは、上記に記載の構成可能論理回路を含む。
本発明によるデータ処理システムは、上記に記載のプログラマブル論理デバイスを含む。
上述したように、本発明によると、面積効率が高く低価格な、構成可能論理回路が提供される。
図1は、本発明による構成可能論理回路の一実施形態を示す模式図である。図1は、6−LUT100を示す。6−LUT100は、6以下の入力を有する論理関数の入力信号d0、d1、d2、d3、d4およびd5をそれぞれ受け取る6つの入力102、104、106、108、110および112を含む。6−LUT100はさらに、3つの完全な3−LUT 1−150、2−150および3−150を含み、これらは各々2つの完全な2−LUTおよび2入力マルチプレクサ(「2−MUX」)を含む。具体的には、第1の3−LUT 1−150は、2−MUX 154の入力を駆動する2−LUT 1−152および2−152を含む。第2の3−LUT 2−150は、2−MUX 162の入力を駆動する2−LUT 1−160および2−160を含む。第3の3−LUT 3−150は、2−MUX 172の入力を駆動する2−LUT 1−170および2−170を含む。2−MUX 120の入力を駆動する第1の3−LUT 1−150および第2の3−LUT 2−150は、4−LUT 130を構成する。図1の実施形態では、6−LUT 100は僅か6つの入力および2つの出力を有するにすぎないが、以下に述べるように、本発明による6−LUTはさらなる入力および出力を含み得る。
入力104、106および108は、2−MUX 154の選択入力を駆動する入力108で第1の3−LUT 1−150を駆動する。第2の3−LUT 2−150は、2−MUX 114および116の選択入力を制御することにより、入力104、106、110および112のいずれか2つにより駆動され得る。2−MUX 114および116の選択入力は、構成可能メモリビットCR0によって制御され得る。第2の3−LUT 2−150への第3の入力は2−MUX 162の選択入力であり、入力108によって制御される。
第1の3−LUT 1−150の出力は、2−MUX 120および2−MUX 122を駆動する。第2の3−LUT 2−150の出力は、2−MUX 120および2−MUX 124を駆動する。入力110はさらに2−MUX 122を駆動し得、入力112はさらに2−MUX 124を駆動し得る。2−MUX 122の出力および2−MUX 124の出力は、第3の3−LUT 3−150を駆動する。第3の3−LUT 3−150の第1の入力を駆動するために2−MUX 122を介して供給されるのが、第1の3−LUT 1−150の出力の信号および入力110の出力のいずれであるかは、メモリビットCR0によって決定される。メモリビットCR0は、2−MUX 122の選択入力を駆動する。第3の3−LUT 3−150の第2の入力を駆動するために2−MUX 124を介して供給されるのが、第2の3−LUT 2−150の出力の信号および入力112の出力のいずれであるかもまた、メモリビットCR0によって決定される。メモリビットCR0は、2−MUX 124の選択入力を駆動する。第3の3−LUT 3−150の第3の入力は、2−MUX 172の選択入力であるが、入力102によって駆動される。入力102はさらに4−LUT 130の2−MUX 120の選択入力を駆動する。
以下に述べるように、6−LUT 100はフラクチャ可能であり、そのため1より多い出力を有していなければならない。第1の出力140は第3の3−LUT 3−150の2−MUX 172から駆動される。第2の出力142は4−LUT 130の2−MUX 120の出力から駆動される。
6−LUT 100はさらに、メモリビット190を含む。当業者には理解されるが、メモリビット190は、6−LUT 100によって実行される特定の関数を決定する構成データを保持するようにプログラム可能である。完全な6−LUTは、完全な6−LUTによって実行される6入力論理関数を明確に定義するようにプログラムされるためには、64ビットを必要とする。しかし以下に述べるように、6−LUT 100は不完全であり、そのため、論理関数を明確に定義するためには64未満のメモリビットを必要とする。特に、6−LUT 100のメモリビット190は好適には、32未満のメモリビットを含み、より好適にはメモリビットCR0以外では僅か24のメモリビットを含む。図1に示す実施形態では、6−LUT 100の論理関数を明確に定義するためにはメモリビットCR0を入れて25メモリビットで十分である。
メモリビット190は好適にはRAMビットであるが、上記したメモリ要素のいずれであってもよい。メモリビット190のプログラミングは好適には、6−LUT 100の製造後に実行される。しかし、メモリビット190のプログラミングは、6−LUT 100の製造中でもマスクプログラミングを介して達成され得る。
本発明による不完全な6−LUT、例えば6−LUT 100は、最高6入力を有する論理関数を実行し得、さらに以下に述べるように、各々が6未満の入力を有する2つの論理関数を実行するためにフラクチャされ得る。しかし不完全な6−LUT 100がPLD内で実行するのに必要とする面積は、完全な6−LUTが必要とするよりも少なく、そのため不完全な6−LUT 100を提供する費用は完全な6−LUTよりも低い。以下にさらに述べるように、不完全な6−LUT 100は、完全な6−LUTの性能のほとんどを維持する。
上記のように、本発明の不完全な6−LUT(6−LUT 100など)はフラクチャ可能である、すなわち、6より少ない入力をそれぞれ有する2つの論理関数を同時に実行し得る。例えば、本発明の不完全な6−LUTは、入力を共有することなく、5−入力論理関数と1−入力論理関数(5+1フラクチャ)、4+2フラクチャまたは3+3フラクチャを実行するように構成され得る。本発明の不完全な6−LUTはまた、4+3フラクチャ、5+2フラクチャまたは5+3フラクチャなどの入力を共有する2つの論理関数を実行するようにフラクチャされ得るが、これに限定されない。一般に、本発明の不完全な6−LUTは、少なくとも6つの入力のいくつかの6−n入力が1つの出力を駆動して6−n入力論理関数を生成するように構成され、かつ少なくとも6つの入力のいくつかの6−m入力が第2の出力を駆動して(6−m)入力論理関数を生成するように構成されるように(ここでmは3〜5の整数であり、nは1〜5の整数である)構成され得る。すなわち、6つの入力のうちの第1のサブセットが1つの出力を駆動し得、かつ少なくとも6つの入力のうちの第2のサブセットが第2の出力を駆動し得る。
1入力を共有して4−入力論理関数および3−入力論理関数を実行するようにフラクチャ(4+3フラクチャ)された6−LUT 100の例を図2に示す。図2は、図1の6−LUT 100においてメモリビットCR0が1に設定された場合の6−LUT 200の模式図である。このような構成において、入力202は2−MUX 220および2−MUX 272の両方への選択入力を駆動し、かつ3−LUT 1−250および2−250への入力は入力204、206および208によって駆動される。入力210および212は3−LUT 3−250を駆動する。このように、出力240は入力信号d0、d4およびd5の3入力論理関数の出力を提供し、かつ出力242は入力信号d0、d1、d2およびd3の4入力論理関数の出力を提供し、ここで3入力論理関数および4入力論理関数は入力信号d0を共有する。
本発明の不完全な6−LUTは、比較的一般に使用される6−LUT(LUTマスク)を比較的高い割合で実行し得る。不等価な6−入力論理関数(すなわち、6−LUTマスク)の合計数は264であると十分に理解されるが、これらのほんの一部がPLDをプログラミングする際に常に使用される。
6−LUT 100における構成可能なすべての6入力論理関数の合計数の割合は比較的小さいが、6−LUT 100における構成可能な比較的一般に使用される6入力論理関数の割合は比較的高い。これは、すべての6−入力論理関数のより高い割合を実行し得る不完全な6−LUTに対してより小さい面積で達成されるので有利である。特に、同時係属中の米国特許出願(発明の名称:「Logic Circuitry with Shared Lookup Table」、発明者:B.Pedersen、出願日:2003年1月24日、以下「Pederson」と呼ぶ)に開示の完全6−LUTは、完全なので、すべての6−入力論理関数を実行し得る。しかし、本発明の6−LUT 100の物理的なシリコン面積は、Pedersonの6−LUTよりも小さい。さらに、この面積効率は、平均回路速度をほんのわずかに損失するだけで得られる。
上記のように完全または完全に近いLUTの関数の多くを実行するために実際に必要なシリコン面積がより少ないことに加えて、本発明の6−LUTはフラクチャ可能である。したがって、6−LUT 100のよう6−LUTを構成およびFPGA占有した場合、関数パッキングを使用して、構成が実装されるシリコン面積に対する効率性を増加し得る。特に、6−入力論理関数だけでなく5、4、3および2入力論理関数を必要とする構成を実装する場合、5、4、3および2入力論理関数の対が、第2の6−LUTをとるのではなく、1つの6−LUT上に構成され得る。
LUT性能の別の重要な指標は、並び換え性(permutability)である。並び換え性指数(「PI」)は、LUTの並び換え性についての指標を提供し、かつあるマスクに対する信号を並び換えるために利用可能な入力の数がどれくらいかの定義とされ得る。任意の完全k−LUTに対して、PIは、k入力の任意の論理関数に対して単純にkであり、かつkを含むk入力までのすべての論理関数に対するPIについて平均した場合にもkのままである。例えば、完全6−LUTに対するPIは、6を含む6入力までのすべての論理関数について平均すると、6である。したがって、kを含むk入力までのすべての論理関数についての平均PIは6である。
不完全k−LUTについて、並び換え性は、実装される特定のマスクに依存して一般に異なり、k−入力論理関数に対して一般にkより小さい。したがって、不完全LUTに対するkを含むk入力までのすべての論理関数についての平均PIは、一般にkより小さい。例えば、不完全6−LUTについて、1および2入力関数に対するPIは6であり得るが、3、4、5および6入力関数に対するPIは6より小さい可能性がある。したがって、6を含む6入力までのすべての論理関数についての平均PIは、6より小さい。しかし、比較的高い並び換え性は、論理関数におけるより重要な信号がより速い入力にルーティングされ得るのでより大きな柔軟性およびより高い性能を提供する。図1に示す6−LUT 100は、6を含む6入力までの論理関数について比較的高い平均並び換え性を維持するという利点を有する。
図3は、本発明の不完全、フラクチャ可能6−LUT 300の別の実施形態の模式図である。図1に示す6−LUT 100と同様に、6−LUT 300は信号d0、d1、d2、d3、d4およびd5をそれぞれ搬送する6入力:302、304、306、308、310および312を含む。また、6−LUTと同様に、6−LUT 300は、入力304および306によって駆動される第1の3−LUT 1−350;2−MUX 316および2−MUX 314のそれぞれの状態に依存して、入力304および306または入力310および312のいずれかによって駆動され得る第2の3−LUT 2−350;および2−MUX 392を介して第1の出力340を駆動する3−LUT 3−350を含む。第2の出力342は2−MUX 320によって駆動される。2−MUX 320は、2−MUX 320の選択入力を駆動する入力302に基づいて第1の3−LUT 1−350または第2の3−LUT 2−350のいずれかによって駆動され得る。6−LUT 300はまた、第3の3−LUT 3−350を駆動する2−MUX 322および2−MUX 324を含む。2−MUX 322は、第1の3−LUT 1−350からの出力信号または入力310からの信号d4のいずれかを通過させ、3−LUT 3−350を駆動し得、2−MUX 324は、第2の3−LUT 2−350からの出力信号または入力312からの信号d5のいずれかを通過させ得る。2−MUX 322および2−MUX 324の両方の選択入力は、ユーザ設定可能メモリビットCR0’によって制御される。図3に示す実施形態において、6−LUT 300は7入力および4出力だけを有するが、本発明の6−LUTはさらなる入力および出力を含み得る。
6−LUT 100と異なり、6−LUT 300は、信号d3aを搬送する入力309、2−MUX 330および332、ならびに出力344および346を有する。出力344は第1レジスタreg−1を駆動し、出力346は第2レジスタreg−0を駆動する。第1の3−LUT 1−350の出力は、2−MUX 354によって駆動される。入力308は、2−MUX 354の選択入力および出力346の両方を駆動する。第2の3−LUT 2−350の出力は2−MUX 362によって駆動される。2−MUX 330は、入力308上の信号d3または入力309上の信号d3aのいずれかを第2の3−LUT 2−350の2−MUX 362の選択入力に通過させる。さらに、入力309は出力344を駆動する。ユーザ設定可能メモリビットCR1は、2−MUX 330の選択入力を駆動し、入力308上の信号d3または入力309上の信号d3aの間で選択する。メモリビットCR1はまた、2−MUX 332の選択入力を駆動し、次いで2−MUX 332は、入力302上の信号d0または入力309上の信号d3aを用いて2−MUX 392の選択入力を駆動する。6−LUT 300は、メモリビット390を含む。好ましくは、メモリ390は32より小さい数のビットを含み、より好ましくは26ビットを含み、6−LUT 300における6−入力論理関数を曖昧なく構成するために必要なすべてビットであるメモリビットCR0’およびCR1を含む。
上記の6−LUT 100と同様に、6−LUT 300はフラクチャ可能である。すなわち、少なくとも7入力の第1のサブセットは第1出力を駆動し得、かつ少なくとも7入力の第2のサブセットは第2出力を駆動し得るように構成され得る。これにより、関数パッキングは上記のように面積効率を有利に増加し得る。
不完全であることに加えて、6−LUT 300は、7番目の入力309および2つのさらなる出力344および346を含む。これらにより、レジスタパッキングが有利に可能になる。レジスタパッキングは、直前の論理素子によって使用されないレジスタまたはフリップフロップが論理ブロックの他の場所の別の論理素子によって使用されることを可能にする。このように、各論理素子が1つのレジスタを含む(従来のように)EPGAの特定の構成において、第1論理素子は2つのレジスタを必要とするが、第2論理素子はレジスタを必要としないならば、第2論理素子のレジスタは第1論理素子によって使用され得る。
本発明のフラクチャ可能、不完全6−LUTにおけるレジスタパッキングを実装するために必要なさらなる回路(図3に示す実施形態おける入力309、出力344、346ならびに2−MUX 330および332)は、約3%のさらなる面積を必要とする。しかし、FPGAにおけるレジスタパッキングは一般に、特定の構成を実装するために必要な面積を低減する。したがって、比較的一般的なEPGA構成について、レジスタパッキングを可能にする回路を含む本発明の6−LUTを使用することは、特定のFPGA構成を実装するために必要な面積を低減する(したがってコストを削減する)という利点がある。レジスタパッキングを可能にする回路は、同一人に譲渡された同時係属中の2002年10月24日に出願された米国特許出願第10/280,723号に詳細に記載され、その全体が本明細書中に参考として援用される。レジスタパッキングを可能にするさらなる回路を用いると、6−LUT 300は、上記6−LUT 100またはPedersonに開示の完全6−LUTよりもさらに面積効率が高くなり得る。
上記のように6−LUT 300は不完全であり、かつしたがって、すべての6−入力論理関数のサブセットだけを実行し得る。しかし、本発明のレジスタパッキングを可能にする回路を含む6−LUT(6−LUT 300など)は一般に、レジスタパッキングが可能でない不完全な、フラクチャ可能6−LUT(6−LUT 100など)が実装できない6−入力論理関数を実装し得る。
図4は、データ処理システム400におけるプログラム可能論理デバイス(PLD)410を例示する。1例として、本発明の構成可能論理回路は、PLD410などのPLDの論理素子において実装され得る。PLD410は、複数の論理アレイブロック(LAB)(LAB412など)を含む(図面が複雑にならないようにLABを1つだけ示す)。LAB412は、複数の構成可能論理回路(6−LUT 100など)を含む(図面が複雑にならないように構成可能論理回路を1つだけ示す)。データ処理システム400は、以下の構成要素の1つ以上を含み得る。プロセッサ440、メモリ450、I/O回路420、および周辺デバイス430である。これらの構成要素は、システムバス465によって互いに結合され、かつエンドユーザシステム470に含まれる回路ボード460上に配置される。
システム400は、コンピュータネットワーク、データネットワーク、計測、ビデオ処理、デジタル信号処理などの用途、もしくはプログラム可能または再プログラム可能論理を使用する利点が所望される任意の他のアプリケーションなどの広範囲の用途に使用され得る。PLD410は、種々の異なる論理関数を実行するために使用され得る。例えば、プログラム可能論理回路410は、プロセッサ440と協働して機能するプロセッサまたはコントローラとして構成され得る(あるいは、別の実施形態において、PLDそれ自体が、単独のシステムプロセッサとして機能し得る)。PLD410はまた、システム400における共有リソースへのアクセスを調停するアービタとして使用され得る。さらに別の例において、PLD410は、プロセッサ440とシステム400における他の構成要素の1つとの間のインタフェースとして構成され得る。なお、システム400は例示に過ぎない。
本明細書において、少なくとも6つの入力および少なくとも2つの出力を含む、構成可能論理回路が開示される。構成可能論理素子は、6入力論理関数の全てのサブセットのみを実行することができる。従って、構成可能論理素子は、6入力論理関数の全てを行い得る6−LUTよりも実質的に小さいシリコン面積を必要とする。また、構成可能論理回路は、入力の第1のサブセットが出力のうちの1つを駆動し、入力の第2のサブセットが他の出力を駆動するように構成され得る。
特定の実施形態を詳細に記載したが、本明細書中に記載の実施形態に対する種々の変更が本発明の精神および範囲から逸脱せずになされ得る。本発明は、添付の特許請求項の範囲によってのみ制限される。
以上のように、本発明の好ましい実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
Claims (32)
- 構成可能論理回路であって、
少なくとも6つの入力と、
少なくとも第1の出力および第2の出力と、
該構成可能論理回路によって行われる論理関数を完全に構成する、プログラマブルである、63未満のメモリビットと
を含み、該構成可能論理回路は、
該少なくとも6つの入力が、該第1の出力を駆動して6入力論理関数を生成させるか、または
該少なくとも6つの入力の第1のサブセットが該第1の出力を駆動し、該少なくとも6つの入力の第2のサブセットが該第2の出力を駆動するかのいずれか一方になるように構成され得る、構成可能論理回路。 - 前記複数のメモリビットは、25未満のメモリビットを含む、請求項1に記載の構成可能論理回路。
- 可能な4つの入力論理関数の全てを行うように構成可能である、請求項2に記載の構成可能論理回路。
- 前記少なくとも6つの入力のうちの少なくとも2つによって直接駆動される、完全な4−LUTを含む、請求項3に記載の構成可能論理回路。
- 前記第1の出力を直接駆動する完全な3−LUTを含む、請求項4に記載の構成可能論理回路。
- 前記完全な4−LUTが少なくとも2つの完全な3−LUTを含む、請求項5に記載の構成可能論理回路。
- 前記完全な4−LUTの出力が前記第2の出力を駆動する、請求項6に記載の構成可能論理回路。
- 少なくとも7つ目の入力と、
該少なくとも7つの入力のうちの第1の入力によって直接駆動されるように構成可能な第3の出力と、
該少なくとも7つの入力のうちの第2の入力によって直接駆動されるように構成可能な第4の出力と
を含む、請求項1に記載の構成可能論理回路。 - 前記複数のメモリビットは、26未満のメモリビットを含む、請求項8に記載の構成可能論理回路。
- 前記少なくとも6つの入力のうちの少なくとも2つの入力によって直接駆動される完全な4−LUTを含む、請求項9に記載の構成可能論理回路。
- 前記第1の出力を直接駆動する完全な3−LUTを含む、請求項10に記載の構成可能論理回路。
- 前記完全な4−LUTが少なくとも2つの完全な3−LUTを含む、請求項11に記載の構成可能論理回路。
- 前記完全な4−LUTの出力が前記第2の出力を駆動する、請求項12に記載の構成可能論理回路。
- 請求項1に記載の構成可能論理回路を含む、プログラマブル論理デバイス。
- 請求項14に記載の前記プログラマブル論理デバイスを含む、データ処理システム。
- 構成可能論理回路であって、
少なくとも6つの入力と、
少なくとも第1の出力および第2の出力と、
該少なくとも6つの入力のうちの少なくとも2つの入力によって直接駆動される完全な4−LUTと、
該少なくとも6つの入力が、該第1の出力を駆動して6つの入力論理関数を生成させるか、または
該少なくとも6つの入力のうちの6−nの入力が、該第1の出力を駆動して6−n入力論理関数を生成させ、該少なくとも6つの入力のうちの6−mの入力が、該第2の出力を駆動して6−m入力論理関数を生成させ、ここで、mおよびnは、それぞれ整数であり、mは3以上5以下の範囲の範囲にわたり、nは、1以上5以下の範囲にわたるかのいずれかである、少なくとも1つの構成と、
を備え、該構成可能論理回路が、
可能な6つの入力論理関数の全てのサブセットのみを行うように構成され得る、構成可能論理回路。 - 前記構成可能論理回路によって行われる論理関数を完全に構成するようにプログラマブルである、複数のメモリビットを含み、該複数のメモリビットは、25未満のメモリビットを含む、請求項16に記載の構成可能論理回路。
- 前記第1の出力を直接駆動する完全な3−LUTを含む、請求項17に記載の構成可能論理回路。
- 前記完全な4−LUTは、少なくとも2つの完全な3−LUTを含む、請求項18に記載の構成可能論理回路。
- 前記完全な4−LUTの出力は、前記第2の出力を駆動する、請求項19に記載の構成可能論理回路。
- 請求項16に記載の構成可能論理回路を含む、プログラマブル論理デバイス。
- 請求項21に記載のプログラマブル論理デバイスを含む、データ処理システム。
- 構成可能論理回路であって、
少なくとも7つの入力と、
少なくとも第1の出力および第2の出力と、
該少なくとも7つの入力のうちの第1の入力によって直接駆動されるように構成可能な第3の出力と、
該構成可能論理回路によって行われる論理関数を完全に構成するようにプログラマブルである、32未満のメモリビットと
を備え、該構成可能論理回路は、
該少なくとも7つの入力のうちの6つの入力が、該第1の出力を駆動して6入力論理関数を生成させるか、または、
該少なくとも7つの入力の第1のサブセットが該第1の出力を駆動して、該少なくとも7つの入力の第2のサブセットが該第2の出力を駆動するかのいずれかになるように構成され得る、構成可能論理回路。 - 前記少なくとも7つの入力のうちの第2の入力によって直接駆動されるように構成可能な第4の出力を含む、請求項23に記載の構成可能論理回路。
- 前記複数のメモリビットは、26未満のメモリビットを含む、請求項24に記載の構成可能論理回路。
- 可能な4入力論理関数の全てを行うように構成可能である、請求項25に記載の構成可能論理回路。
- 前記少なくとも6つの入力のうちの少なくとも2つの入力によって、直接駆動される完全な4−LUTを含む、請求項26に記載の構成可能論理回路。
- 前記第1の出力を直接駆動する完全な3−LUTを含む、請求項27に記載の構成可能論理回路。
- 前記完全な4−LUTが少なくとも2つの完全な3−LUTを含む、請求項28に記載の構成可能論理回路。
- 前記完全な4−LUTの出力が前記第2の出力を駆動させる、請求項29に記載の構成可能論理回路。
- 請求項23に記載の構成可能論理回路を含む、プログラマブル論理デバイス。
- 請求項31に記載のプログラマブル論理デバイスを含む、データ処理システム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/365,647 US6888373B2 (en) | 2003-02-11 | 2003-02-11 | Fracturable incomplete look up table for area efficient logic elements |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004248293A true JP2004248293A (ja) | 2004-09-02 |
Family
ID=32681718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004035821A Withdrawn JP2004248293A (ja) | 2003-02-11 | 2004-02-12 | 面積効率の高い論理要素のためのフラクチャ可能な不完全ルックアップテーブル |
Country Status (3)
Country | Link |
---|---|
US (2) | US6888373B2 (ja) |
EP (1) | EP1447910B1 (ja) |
JP (1) | JP2004248293A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007089180A (ja) * | 2005-09-22 | 2007-04-05 | Altera Corp | 面積効率に優れたフラクチャブルロジックエレメント |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1968193B1 (en) * | 2002-01-17 | 2011-07-27 | Sicronic Remote KG, LLC | Utilization of unused IO block for core logic functions |
US6888373B2 (en) | 2003-02-11 | 2005-05-03 | Altera Corporation | Fracturable incomplete look up table for area efficient logic elements |
US7194723B1 (en) * | 2003-10-27 | 2007-03-20 | Altera Corporation | Techniques for mapping functions to lookup tables on programmable circuits |
US7176716B2 (en) * | 2003-12-24 | 2007-02-13 | Viciciv Technology | Look-up table structure with embedded carry logic |
US7019557B2 (en) * | 2003-12-24 | 2006-03-28 | Viciciv Technology | Look-up table based logic macro-cells |
US7336097B2 (en) * | 2003-12-24 | 2008-02-26 | Viciciv, Inc. | Look-up table structure with embedded carry logic |
US7167022B1 (en) | 2004-03-25 | 2007-01-23 | Altera Corporation | Omnibus logic element including look up table based logic elements |
US7486110B2 (en) * | 2004-09-24 | 2009-02-03 | Stmicroelectronics Pvt. Ltd. | LUT based multiplexers |
US7295035B1 (en) * | 2005-08-09 | 2007-11-13 | Lattice Semiconductor Corporation | Programmable logic device with enhanced logic block architecture |
US7902864B1 (en) * | 2005-12-01 | 2011-03-08 | Altera Corporation | Heterogeneous labs |
US7812635B1 (en) * | 2006-05-08 | 2010-10-12 | Altera Corporation | Programmable logic device architecture with the ability to combine adjacent logic elements for the purpose of performing high order logic functions |
US8255702B1 (en) | 2009-12-03 | 2012-08-28 | Altera Corporation | Programmable logic device with improved security |
US9048142B2 (en) | 2010-12-28 | 2015-06-02 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device |
CN102185606B (zh) * | 2011-03-04 | 2013-05-01 | 宁波大学 | 一种减少数字逻辑电路面积的方法 |
CN103259524A (zh) * | 2012-02-17 | 2013-08-21 | 京微雅格(北京)科技有限公司 | 一种采用快速级连结构的集成电路 |
CN103259528A (zh) * | 2012-02-17 | 2013-08-21 | 京微雅格(北京)科技有限公司 | 一种异构可编程逻辑结构的集成电路 |
JP5639612B2 (ja) | 2012-03-27 | 2014-12-10 | 株式会社東芝 | 半導体集積回路 |
US8581624B2 (en) * | 2012-03-29 | 2013-11-12 | Altera Corporation | Integrated circuits with multi-stage logic regions |
US9253850B2 (en) * | 2012-05-22 | 2016-02-02 | Texas Instruments Incorporated | LED bypass and control circuit for fault tolerant LED systems |
JP6250955B2 (ja) | 2012-05-25 | 2017-12-20 | 株式会社半導体エネルギー研究所 | 半導体装置の駆動方法 |
JP2014195243A (ja) | 2013-02-28 | 2014-10-09 | Semiconductor Energy Lab Co Ltd | 半導体装置 |
US9612795B2 (en) | 2013-03-14 | 2017-04-04 | Semiconductor Energy Laboratory Co., Ltd. | Data processing device, data processing method, and computer program |
US9349418B2 (en) | 2013-12-27 | 2016-05-24 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device and method for driving the same |
JP6689062B2 (ja) | 2014-12-10 | 2020-04-28 | 株式会社半導体エネルギー研究所 | 半導体装置 |
CN105874714B (zh) * | 2014-12-11 | 2020-02-14 | 京微雅格(北京)科技有限公司 | 支持多模式可配置的六输入查找表结构和fpga器件 |
CN108028655B (zh) * | 2015-09-11 | 2021-08-17 | 赛灵思公司 | 级联查找表(lut)进位逻辑电路 |
US10008502B2 (en) | 2016-05-04 | 2018-06-26 | Semiconductor Energy Laboratory Co., Ltd. | Memory device |
US10523208B2 (en) * | 2017-11-27 | 2019-12-31 | Microsemi Soc Corp. | Efficient lookup table modules for user-programmable integrated circuits |
US11210066B2 (en) | 2020-05-04 | 2021-12-28 | International Business Machines Corporation | Fixed value multiplication using field-programmable gate array |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5343406A (en) | 1989-07-28 | 1994-08-30 | Xilinx, Inc. | Distributed memory architecture for a configurable logic array and method for using distributed memory |
US5267187A (en) | 1990-05-10 | 1993-11-30 | Xilinx Inc | Logic structure and circuit for fast carry |
US5295090A (en) | 1992-05-10 | 1994-03-15 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US5359468A (en) | 1991-08-06 | 1994-10-25 | R-Byte, Inc. | Digital data storage tape formatter |
US5633830A (en) | 1995-11-08 | 1997-05-27 | Altera Corporation | Random access memory block circuitry for programmable logic array integrated circuit devices |
US5436575A (en) | 1991-09-03 | 1995-07-25 | Altera Corporation | Programmable logic array integrated circuits |
US5260611A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic array having local and long distance conductors |
US5260610A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
US5359242A (en) | 1993-01-21 | 1994-10-25 | Altera Corporation | Programmable logic with carry-in/carry-out between logic blocks |
US5274581A (en) * | 1992-05-08 | 1993-12-28 | Altera Corporation | Look up table implementation of fast carry for adders and counters |
US5365125A (en) | 1992-07-23 | 1994-11-15 | Xilinx, Inc. | Logic cell for field programmable gate array having optional internal feedback and optional cascade |
US5483478A (en) | 1992-10-16 | 1996-01-09 | Xilinx, Inc. | Method and structure for reducing carry delay for a programmable carry chain |
US5898319A (en) | 1993-09-02 | 1999-04-27 | Xilinx, Inc. | Method and structure for providing fast conditional sum in a field programmable gate array |
US5546018A (en) | 1993-09-02 | 1996-08-13 | Xilinx, Inc. | Fast carry structure with synchronous input |
US6288570B1 (en) | 1993-09-02 | 2001-09-11 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US6154053A (en) | 1993-09-02 | 2000-11-28 | Xilinx, Inc. | Look-ahead carry structure with homogeneous CLB structure and pitch larger than CLB pitch |
US5349250A (en) | 1993-09-02 | 1994-09-20 | Xilinx, Inc. | Logic structure and circuit for fast carry |
US5481206A (en) | 1993-09-02 | 1996-01-02 | Xilinx, Inc. | Circuit for fast carry and logic |
US5629886A (en) | 1993-09-02 | 1997-05-13 | Xilinx, Inc. | Method and structure for providing fast propagation of a carry signal in a field programmable gate array |
US5689195A (en) | 1995-05-17 | 1997-11-18 | Altera Corporation | Programmable logic array integrated circuit devices |
US5442306A (en) * | 1994-09-09 | 1995-08-15 | At&T Corp. | Field programmable gate array using look-up tables, multiplexers and decoders |
US5815003A (en) | 1994-11-04 | 1998-09-29 | Altera Corporation | Programmable logic integrated circuits with partitioned logic element using shared lab-wide signals |
US5909126A (en) | 1995-05-17 | 1999-06-01 | Altera Corporation | Programmable logic array integrated circuit devices with interleaved logic array blocks |
US5631576A (en) | 1995-09-01 | 1997-05-20 | Altera Corporation | Programmable logic array integrated circuit devices with flexible carry chains |
US5818255A (en) | 1995-09-29 | 1998-10-06 | Xilinx, Inc. | Method and circuit for using a function generator of a programmable logic device to implement carry logic functions |
US5675262A (en) | 1995-10-26 | 1997-10-07 | Xilinx, Inc. | Fast carry-out scheme in a field programmable gate array |
US5672985A (en) | 1995-12-18 | 1997-09-30 | Altera Corporation | Programmable logic array integrated circuits with carry and/or cascade rings |
US5898602A (en) | 1996-01-25 | 1999-04-27 | Xilinx, Inc. | Carry chain circuit with flexible carry function for implementing arithmetic and logical functions |
US6107822A (en) * | 1996-04-09 | 2000-08-22 | Altera Corporation | Logic element for a programmable logic integrated circuit |
US5724276A (en) | 1996-06-17 | 1998-03-03 | Xilinx, Inc. | Logic block structure optimized for sum generation |
US5999016A (en) | 1996-10-10 | 1999-12-07 | Altera Corporation | Architectures for programmable logic devices |
US6297665B1 (en) | 1996-11-22 | 2001-10-02 | Xilinx, Inc. | FPGA architecture with dual-port deep look-up table RAMS |
US5963050A (en) | 1997-02-26 | 1999-10-05 | Xilinx, Inc. | Configurable logic element with fast feedback paths |
US5889411A (en) | 1997-02-26 | 1999-03-30 | Xilinx, Inc. | FPGA having logic element carry chains capable of generating wide XOR functions |
US5920202A (en) | 1997-02-26 | 1999-07-06 | Xilinx, Inc. | Configurable logic element with ability to evaluate five and six input functions |
US5905385A (en) * | 1997-04-01 | 1999-05-18 | Advanced Micro Devices, Inc. | Memory bits used to couple look up table inputs to facilitate increased availability to routing resources particularly for variable sized look up tables for a field programmable gate array (FPGA) |
US6021423A (en) | 1997-09-26 | 2000-02-01 | Xilinx, Inc. | Method for parallel-efficient configuring an FPGA for large FFTS and other vector rotation computations |
US6097212A (en) * | 1997-10-09 | 2000-08-01 | Lattice Semiconductor Corporation | Variable grain architecture for FPGA integrated circuits |
US6191611B1 (en) | 1997-10-16 | 2001-02-20 | Altera Corporation | Driver circuitry for programmable logic devices with hierarchical interconnection resources |
US6084427A (en) * | 1998-05-19 | 2000-07-04 | Altera Corporation | Programmable logic devices with enhanced multiplexing capabilities |
US6118300A (en) | 1998-11-24 | 2000-09-12 | Xilinx, Inc. | Method for implementing large multiplexers with FPGA lookup tables |
US6157209A (en) | 1998-12-18 | 2000-12-05 | Xilinx, Inc. | Loadable up-down counter with asynchronous reset |
US6154052A (en) | 1999-02-04 | 2000-11-28 | Xilinx, Inc. | Combined tristate/carry logic mechanism |
US6150838A (en) | 1999-02-25 | 2000-11-21 | Xilinx, Inc. | FPGA configurable logic block with multi-purpose logic/memory circuit |
US6400180B2 (en) | 1999-02-25 | 2002-06-04 | Xilinix, Inc. | Configurable lookup table for programmable logic devices |
US6323680B1 (en) * | 1999-03-04 | 2001-11-27 | Altera Corporation | Programmable logic device configured to accommodate multiplication |
US6215327B1 (en) * | 1999-09-01 | 2001-04-10 | The United States Of America As Represented By The Secretary Of The Air Force | Molecular field programmable gate array |
US6268743B1 (en) * | 2000-03-06 | 2001-07-31 | Acatel Corporation | Block symmetrization in a field programmable gate array |
US6529041B1 (en) * | 2001-03-23 | 2003-03-04 | Xilinx, Inc. | System power control output circuit for programmable logic devices |
US6943580B2 (en) | 2003-02-10 | 2005-09-13 | Altera Corporation | Fracturable lookup table and logic element |
US6888373B2 (en) | 2003-02-11 | 2005-05-03 | Altera Corporation | Fracturable incomplete look up table for area efficient logic elements |
-
2003
- 2003-02-11 US US10/365,647 patent/US6888373B2/en not_active Expired - Lifetime
-
2004
- 2004-02-10 EP EP04250707.9A patent/EP1447910B1/en not_active Expired - Fee Related
- 2004-02-12 JP JP2004035821A patent/JP2004248293A/ja not_active Withdrawn
- 2004-11-10 US US10/985,574 patent/US7030650B1/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007089180A (ja) * | 2005-09-22 | 2007-04-05 | Altera Corp | 面積効率に優れたフラクチャブルロジックエレメント |
Also Published As
Publication number | Publication date |
---|---|
US6888373B2 (en) | 2005-05-03 |
EP1447910B1 (en) | 2016-05-25 |
US7030650B1 (en) | 2006-04-18 |
EP1447910A3 (en) | 2005-09-21 |
EP1447910A2 (en) | 2004-08-18 |
US20040155676A1 (en) | 2004-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004248293A (ja) | 面積効率の高い論理要素のためのフラクチャ可能な不完全ルックアップテーブル | |
JP5026037B2 (ja) | 面積効率に優れたフラクチャブルロジックエレメント | |
US10177766B1 (en) | Omnibus logic element | |
US7312632B2 (en) | Fracturable lookup table and logic element | |
US6798240B1 (en) | Logic circuitry with shared lookup table | |
US7176717B2 (en) | Programmable logic and routing blocks with dedicated lines | |
US6873182B2 (en) | Programmable logic devices having enhanced cascade functions to provide increased flexibility | |
EP2001133A2 (en) | A programmable logic device having complex logic blocks with improved logic cell functionality | |
US7185035B1 (en) | Arithmetic structures for programmable logic devices | |
US8217678B1 (en) | Fracturable lookup table and logic element | |
US7253660B1 (en) | Multiplexing device including a hardwired multiplexer in a programmable logic device | |
US6975154B1 (en) | Reduced power consumption clock network | |
JP5523988B2 (ja) | プログラマブル論理回路装置およびその回路決定方法 | |
US9235498B1 (en) | Circuits for and methods of enabling the modification of an input data stream | |
US7010777B1 (en) | Shared lookup table enhancements for the efficient implementation of barrel shifters | |
US20170222651A1 (en) | Transformable logic and routing structures for datapath optimization | |
JPH09181598A (ja) | フィールドプログラマブルゲートアレイ | |
US6879184B1 (en) | Programmable logic device architecture based on arrays of LUT-based Boolean terms | |
US6169417B1 (en) | Product-term macrocells for programmable logic device | |
US7098687B1 (en) | Flexible routing resources in a programmable logic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070501 |