JP2006519548A - プログラム可能な論理セルのアレイをもつ電子回路 - Google Patents

プログラム可能な論理セルのアレイをもつ電子回路 Download PDF

Info

Publication number
JP2006519548A
JP2006519548A JP2006502587A JP2006502587A JP2006519548A JP 2006519548 A JP2006519548 A JP 2006519548A JP 2006502587 A JP2006502587 A JP 2006502587A JP 2006502587 A JP2006502587 A JP 2006502587A JP 2006519548 A JP2006519548 A JP 2006519548A
Authority
JP
Japan
Prior art keywords
output
input
circuit
signal
multiplexer
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
Application number
JP2006502587A
Other languages
English (en)
Inventor
カタルツィナ、レイーテン‐ノワク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of JP2006519548A publication Critical patent/JP2006519548A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17728Reconfigurable logic blocks, e.g. lookup tables
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • G06F7/503Half or full adders, i.e. basic adder cells for one denomination using carry switching, i.e. the incoming carry being connected directly, or only via an inverter, to the carry output under control of a carry propagate signal

Abstract

電子回路は、ランダム論理モードおよびマルチビット・オペランド・モードで動作するように構成することが可能な複数のプログラム可能な論理ユニットをもつプログラム可能な論理セルを有する。プログラム可能な論理ユニットは入力回路と出力回路との間に並列に結合される。入力回路はランダム論理モードで論理入力の同じ組合せからの論理入力信号をプログラム可能な論理ユニットに供給するように構成することができる。マルチビット・オペランド処理モードにおいて、入力回路は論理入力の異なる論理入力からの論理入力信号をプログラム可能な論理ユニットに供給するように構成される。プログラム可能な論理ユニットは桁上げ連鎖からの桁上げ信号を処理するために少なくともマルチビット・オペランド処理モードで桁上げ連鎖に沿った連続的な位置に結合される。出力回路は、ランダム論理モードでさらなる入力信号の制御下でプログラム可能な論理ユニットから出力信号を選択し、マルチビット・オペランド処理モードでプログラム可能な論理ユニットからの出力を並列にパスする。プログラム可能な論理ユニットは多重化動作モードで動作するように構成された場合に受け取った入力信号の1つをパスするためのマルチプレクサを備える。制御信号を多重化モードとマルチビット・オペランド処理モードとの間で共用することができる。

Description

本発明は、プログラム可能な論理セルのアレイをもつ電子回路に関し、詳細には、フレキシブルな多重化を行なうように設定変更可能なプログラム可能な論理セルのアレイをもつ電子回路に関する。
プログラム可能な論理セルは回路設計者が集積回路などの大量生産された電子回路の個々の例の論理関数を適合することを可能にする。これは作業回路の設計から生産までの時間間隔を短縮し、それは製品の小さいバッチの生産および試作モデル作成の製造コストを削減する。
実施の一例では、プログラム可能なセルはセルの入力信号によってアドレス指定されるメモリを含有し、メモリは入力信号値の各組合せについてこれらの値によってアドレス指定されるそれぞれのアドレスに事前プログラムされた出力信号を記憶する。メモリは様々な入力信号に応答して生成される出力信号を参照するためのLUT(参照用テーブル)関数を有すると言われる。
どんな論理関数も、それが十分なメモリ・スペースを含有するとすればLUTを実施することができる。しかしながら、実際には、有限数の、一般的には4つ未満の入力を必要とする論理関数のみが、プログラム可能な論理セルをもつ回路においてLUTを実施される。そのようなLUTは16個のメモリ場所を必要とする。これは4つの入力ビットのランダム論理関数のプログラミングを可能にする。多くの場合、4つの入力ビット関数をもつそのようなセルをもつ回路で十分である。セルの出力が他のセルの入力に結合される、そのようなセルのアレイをもつ回路は設計者がより複雑な論理関数を実施することを可能にする。
ますます設計者はプログラム可能な論理セルのアレイの一部が加算などの信号処理演算を実施するために使用される論理関数を実施している。多くの信号処理演算は、より広い入力オペランドの多数のビットがそれぞれ、桁上げ効果によって出力結果における多数のビットに影響を及ぼしうるという性質を有する。しかしながら、そのような広い依存性が4ビット入力LUTを使用して実施される場合、非常に非効率的な実施が得られる。
Xilinx(登録商標)は、プログラム可能な論理デバイスのそのVirtex(登録商標)ファミリにおいて4ビット入力LUTセルのアレイに桁上げ連鎖を追加することによってこの問題に対処している。図1はそのようなデバイスのプログラム可能な論理セルを示している。セルはLUT関数を実行する4入力参照用テーブル10ならびに桁上げ入力および桁上げ出力をもつ桁上げ回路12を含有する。メモリ10の出力は桁上げ回路12に結合され、これが桁上げ入力信号をLUTの出力信号と組み合わせて桁上げ出力信号を形成する。排他的ORゲート14はLUTの桁上げ入力信号および出力信号からセルの出力信号を形成するために使用される。セルの桁上げ入力および桁上げ出力はアレイ(図示せず)における隣接するセルの桁上げ出力および桁上げ入力に結合されて桁上げ連鎖を形成する。桁上げ連鎖は1つの4ビット入力LUTの出力から別の4ビット入力LUTへの桁上げ関数を実行する。結果として、桁上げ関数を実施するためにLUTを割り振る必要はない。これは、回路がいくつかの処理演算を含む論理関数を実施するために使用される場合、かなり数のLUTを省く。
とはいえ、専用信号処理回路と比較して、ランダム論理関数を実施することも可能なそのようなより汎用的な回路における信号処理関数の実施はまだ到底効率的ではない。この効率を改善することができれば望ましいであろう。
とりわけ、本発明の目的は、よりフレキシブルな多重化能力の実施を可能にし、ランダム論理関数と信号処理演算の両方を与えるプログラム可能な論理セルのアレイをもつ電子回路を提供することである。
本発明による電子回路は請求項1に記載されている。電子回路は、セルの信号入力と出力との間に並列に結合された複数のプログラム可能な論理ユニットをもつプログラム可能な論理セルを含有する。プログラム可能な論理セルはランダム論理モードおよびマルチビット・オペランド・モードで動作するように設定変更可能であり、プログラム可能な論理セルは、入力回路からの論理入力信号を受け取るように結合された入力および出力を有する設定変更可能な参照用テーブル回路と、参照用テーブル回路の出力を受け取るように結合された入力を有し、出力回路に接続可能な出力を有する制御可能なインバータ/非インバータ回路と、入力回路からの論理入力信号を受け取るように結合された入力および出力回路に接続可能なマルチプレクサ出力を有するマルチプレクサと、を含有する。
この構成は、改善された多重化能力を有するプログラム可能な論理セルを与える。さらに、シリコン面積が縮小され、タイミングが改善される。
一実施形態では、プログラム可能な論理ユニットはインバータ/非インバータ回路の出力およびマルチプレクサの出力を受け取るように結合された入力を有する補助マルチプレクサをさらに備える。この実施形態では、プログラム可能な論理ユニットは補助マルチプレクサからの信号出力を有する。
さらなる実施形態では、プログラム可能な論理ユニットは第1および第2の補助マルチプレクサを備える。第1の補助マルチプレクサはインバータ/非インバータ回路の出力およびマルチプレクサの出力を受け取るように結合された入力を有し、一方、第2の補助マルチプレクサは参照用テーブル回路の出力およびマルチプレクサの出力を受け取るように結合された入力を有する。第1および第2のマルチプレクサは構成メモリからの構成情報によって制御され、それによってデータパスおよびランダム論理出力信号が第1のモードでそれぞれ第1および第2の補助マルチプレクサから出力され、マルチプレクサ出力信号が第2のモードで第1および第2のマルチプレクサから出力される。
さらなる実施形態では、ランダム論理または多重化モードで使用される少なくとも1つの制御ラインがデータパス・モードで使用される制御ラインと共用される。これは必要とされる入力ピンの数を縮小する利点を有する。
本発明は、よりフレキシブルな多重化能力の実施を可能にし、ランダム論理関数と信号処理演算の両方を与えるプログラム可能な論理セルのアレイをもつ電子回路を提供する。
これらおよび他の目的ならびに本発明の有利な態様について以下の図を使用して説明する。
図2は、設計者が多重化モード、ランダム論理モードおよびマルチビット・オペランド処理モードを実施することを可能にするアーキテクチャを有するプログラム可能な論理セル20を示している。セル20は、入力回路22、複数のプログラム可能な論理ユニット24a〜d、出力回路26および桁上げ連鎖28を含有する。セル20の信号入力21および信号出力27は、入力回路22の縦続、プログラム可能な論理ユニット24a〜dおよび出力回路26の並列構成を介して結合される。桁上げ連鎖28は、桁上げ入力Cinおよび桁上げ出力Coutを有し、連鎖に沿って一連の位置においてプログラム可能な論理ユニットに結合される。
出力回路26は、マルチプレクサ264a、264b、266およびスイッチング段268のいくつかの段を含有する。第1の段のマルチプレクサ264a、264bの制御入力23は、入力回路22のそれぞれの出力に結合される。第2の段のマルチプレクサ266の制御入力25は、入力回路22のそれぞれの出力に結合される。第1の段のマルチプレクサ264a、264bの信号入力は、プログラム可能な論理ユニット24a〜dの対の出力に結合され、第2の段のマルチプレクサ266の信号入力は、第1の段のマルチプレクサ264a、264bの出力に結合される。マルチプレクサ264aおよび264bは、共通の制御入力23を有するものとして示されているが、回路はまた別々の制御信号23a、23bを与えるように構成することができることに留意されたい。さらに、図2は、マルチプレクサ264a/264bおよび266の2つの段のみを示しているが、例えば、論理セルが5つ以上の論理セル24a〜dを含有する場合、さらなる段が可能であることが諒解されよう。
プログラム可能な論理ユニット24a〜dの出力および第2の段のマルチプレクサ266は、スイッチング段268の入力に結合される。スイッチング段268の出力は、セル20の信号出力27に結合される。スイッチング段268は、プログラム可能な論理ユニット24a〜dの出力または第1および第2の段のマルチプレクサ264a、264b、266の出力の何れかを出力27、または少なくとも第2の段のマルチプレクサ266の出力に結合するように設定変更可能である。スイッチング段268は、出力信号をラッチするためのラッチまたはフリップフロップを備えることができ、それによってセル20はパイプライン回路におけるパイプライン段の最終部分として機能することができる。好ましくは、スイッチング段268は、ラッチング後またはラッチングなしの何れかで信号をパスするように設定変更可能である。
プログラム可能な論理ユニット24a〜d、入力回路22、出力回路26および桁上げ連鎖28の構成ビットをプログラムすることによって、セル20の機能を構成することができる。(構成ビットはプログラミング・パス(図示せず)を介してロードされる構成メモリ(図示せず)に記憶され、その両方はプログラム可能な論理デバイスについてそれ自体知られている)。構成ビットは、どの信号入力21がどのプログラム可能な論理ユニット24a〜dに結合するかを決定し、構成ビットはプログラム可能な論理ユニット24a〜dが様々な入力信号値に応答して生成する出力信号値を決定し、構成ビットは、スイッチング段268が信号出力27にパスする信号を決定し、構成ビットは桁上げ入力Cinからの桁上げ入力信号がセル20値にパスされるかどうかを決定する。
動作中、セル20は、ランダム論理モード、マルチビット・オペランド処理モードおよび多重化モードで機能するように構成することができる。動作中、マルチビット・オペランド・モード・セル20は、複数のビットをもつ入力オペランドに依存する出力結果の複数のビットを出力する。各入力オペランドのビットは、連続的に高くなる有効レベルを有する。マルチビット・オペランド・モードにおいて、各プログラム可能な論理ユニット24a〜dは、異なる有効レベルに関連付けられる。入力回路22は、異なるオペランドからのビットを表す各プログラム可能な論理ユニット24a〜dに信号をパスするように構成され、各ビットは、プログラム可能な論理ユニット24a〜dに関連付けられた有効レベルに対応する。各プログラム可能な論理ユニット24a〜dは、これらの信号に応答してより低い有効レベルからの桁上げ連鎖28から受け取られた桁上げ入力[carry in]信号を考慮に入れて、プログラム可能な論理ユニット24a〜dに関連付けられた有効レベルでの結果のビットを計算し、より高い有効レベルで使用するために桁上げ連鎖に桁上げ出力[carry out]を供給する。マルチビット・オペランド・モードにおいて、すべてのプログラム可能な論理ユニット24a〜dは、一般にそれらの入力信号と出力信号との間の同じ関係を与えるように構成される。出力回路26は、すべてのプログラム可能な論理ユニット24a〜dからの結果の計算されたビットを出力27に出力信号として並列にパスするように構成される。
桁上げ連鎖28は桁上げ信号を計算し、これらの桁上げ信号を1つのプログラム可能な論理ユニット24a〜dから別のプログラム可能な論理ユニット24a〜dにパスする。桁上げ連鎖28の構成は桁上げ連鎖28が桁上げ信号を決定するために桁上げ入力Cinから桁上げ入力信号を使用するかどうかを制御する。セル20がより大きいオペランドのより有効なビットである入力信号を処理する場合、セルはそのような桁上げ入力信号があまり有効でないオペランドを処理する別のセルの桁上げ出力信号を受け取るために使用されるように構成される。
ランダム論理モードで動作中、セル20の出力信号はいくつかの入力信号のランダム論理関数である。このランダム論理関数は、プログラム可能な論理ユニット24a〜dおよびマルチプレクサ264a、264b、266の第1および第2の段を使用して実施される。入力回路22はプログラム可能な論理ユニット24a〜dの各々に同じ入力信号をパスする。第1および第2の制御信号23、25を形成する入力信号のうちの他の入力信号の制御下で、マルチプレクサ264a、264b、266は出力信号がそこからスイッチング段268にパスされるプログラム可能な論理ユニット24a〜dの1つを選択する。第1の制御信号23は、第1の段のマルチプレクサ264a、264bの両方を制御し、一方、第2の制御信号25は、第2の段のマルチプレクサ266を制御し、これは第1の段のマルチプレクサ264a、264bの出力間で選択する。したがって、プログラム可能な論理ユニット24a〜dの入力信号と、入力信号のうちの他の入力信号、すなわちマルチプレクサ264a、264b、266を制御する制御信号23、25との両方に依存する論理関数が実現される。プログラム可能な論理ユニット24a〜dの各々は、制御信号23、25を形成する入力信号のうちの他の入力信号の異なる値に対して出力信号として使用する、同じ入力信号に応答して出力信号を生成する。スイッチング段268は得られた出力信号をマルチプレクサ266からセル20の信号出力にパスする。
桁上げ連鎖28は、外部桁上げ入力信号がランダム論理モードで使用されないように構成される。桁上げ連鎖28の実施に依存して、桁上げ連鎖28はまだ、プログラム可能な論理ユニット24a〜dへの入力のいくつかの入力値で生じるいくつかの桁上げ信号をパスする。この場合、桁上げ連鎖のさらに下のプログラム可能な論理ユニット24a〜dの構成は入力値の特定の値に対して桁上げ信号の存在を相殺するように適合することができる。代替的に、プログラム可能な論理ユニット24a〜dはランダム論理モードで動作するように構成される場合、桁上げ信号への依存性を除去するための回路を備えることができる。桁上げ連鎖のさらなる詳細は、この明細書において後で与えられる。
したがって、ランダム論理モードとマルチビット・オペランド・モードとの間には差異がある。一方では、ランダム論理モードにおいて、各プログラム可能な論理ユニット24a〜dは同じ入力信号を受け取り、それぞれ多重化段264a、264b、266を制御する入力信号の他のものの異なる値に対して潜在的に異なる入力出力関数を与える。他方では、マルチビット・オペランド・モードにおいて、プログラム可能な論理ユニット24a〜dは異なる入力信号を受け取るが、一般に同じ入力出力関数を与える。
一方では2マルチビット・オペランド信号処理演算の異なる有効レベルの計算を実施するために、他方では3以上の入力ビット・ランダム論理関数を計算するための構造の一部として、プログラム可能な論理ユニットを代替的に使用することによって、ランダム論理関数とマルチビット・オペランド信号処理の両方の実施を支援するために必要とされる構成ビットの数が最小限に抑えられる。図2の例において、それぞれ4つの構成ビットで完全にプログラム可能な4つの2入力プログラム可能な論理ユニット24a〜dで、4ビット入力ランダム論理関数および同時に2オペランド信号処理演算の4つの有効レベルを定義するのに16個のビットで十分である。対照的に、4ビット入力プログラム可能な論理ユニット24a〜dが使用されているであろう(その各々が完全なプログラミングのために16個の構成ビットを必要とする)状況について考えてみる。2入力論理ユニットの代わりに4入力論理ユニットを使用した場合、専用桁上げ信号が存在しないならばマルチビット・オペランド処理の2つの有効レベルを、またはそのような回路が存在するならば4つの有効レベルを実施することができる。しかしながら、どちらの場合も、4つの4入力論理ユニットが合計64個の構成ビット、すなわち図2の実施形態によって必要とされる構成ビットの数の4倍を必要とする。
図3はフレキシブルな多重化を行なうように論理セルを構成することを可能にする、本発明によるプログラム可能な論理ユニット24の一実施形態を示している。プログラム可能な論理ユニット24は、LUTユニット400および排他的ORゲート402を含有する。LUTユニット400は、選択論理403、例えば4:1マルチプレクサ、および構成メモリ404を備える。プログラム可能な論理ユニット24の信号入力A、BはLUTユニット400における選択論理403の入力に結合される。LUTユニット400の出力は、排他的ORゲート402の入力に結合される。排他的ORゲート402の第2の入力は、桁上げ連鎖28から桁上げ入力信号Cinを受け取るように結合され、第1の排他的ORゲート402は出力信号O1を有する。
動作中、LUTユニット400は、設定変更可能な入力出力関数を実現する。入力信号A、Bの各可能な組合せに応じて、LUTユニット400は、入力信号によって選択されるそれぞれの出力信号を出力する。入力信号の各組合せは、構成メモリ404に記憶された構成ビットによってそれに割り当てられる出力信号を有する。2つの入力信号の何れかの可能な組合せに対して出力信号を与えるために4つの構成ビットで十分である。排他的ORゲート402の作用によって、LUTユニット400の出力信号は、桁上げ入力信号が論理低の場合にXORゲート402から出力され、一方、出力信号は桁上げ入力信号が論理高の場合にXORゲート402から出力反転される。この構成はプログラム可能な論理ユニット24がデータパス関数とランダム論理関数の両方を扱うことを可能にする。
本発明によれば、プログラム可能な論理ユニット24の信号入力A、Bは、LUTユニット400に並列に配置される専用マルチプレクサ406(例えば2ビットLUTの場合は2:1マルチプレクサ)の入力に結合される。マルチプレクサ406は論理セルの補助信号である制御信号Xによって制御される。好ましくは、各プログラム可能な論理ユニット24は同じ制御信号Xを受け取る。マルチプレクサ406は入力信号A、Bの1つを出力信号O2として選択する。出力信号O2はLUTユニット400およびXORゲート402をバイパスする。プログラム可能な論理ユニット24におけるマルチプレクサ406の装備は動作を多重化するために論理セルを構成することを可能にする。したがって、プログラム可能な論理ユニット24は、データパスまたはランダム論理モードで動作するように構成された場合にLUTユニット400から出力信号O1を生成し、マルチプレクサとして動作するように構成された場合にマルチプレクサ406から出力信号O2を生成する。
好ましくは、例えば図2に示されるプログラム可能な論理セル構成において使用される場合、プログラム可能な論理ユニット24からの単一の出力を与えるために、補助マルチプレク408がプログラム可能な論理ユニット24中に設けられる。補助マルチプレク408は、それぞれLUTユニット400およびマルチプレクサ406から出力信号O1、O2を受け取る。補助マルチプレク408は、出力信号O1、O2間で選択して出力信号「O」を生成する。選択は、論理セルがデータパスまたはランダム論理モードで動作するように構成された場合に出力信号O1が使用され、一方、セルがマルチプレクサとして動作するように構成された場合に出力信号O2が使用されるように、構成メモリ・ビット409を使用して行なわれる。
図4はプログラム可能な論理ユニット24の代替実施形態を示している。図4の実施形態では、各プログラム可能な論理ユニット24は1つではなく2つの最終出力信号を生成する。これらはデータパス出力ODまたはランダム論理出力ORを備える。各プログラム可能な論理ユニット24のデータパス出力ODは論理セルがマルチビット結果(すなわちデータパス関数)を発生する場合に使用され、一方、ランダム論理関数がマッピングされている場合にはランダム論理出力ORが使用される。図4の実施形態では、2つの補助マルチプレクサ408、410が設けられる。図3に記載された第1の実施形態のように、第1のマルチプレクサ408は、マルチプレクサ406からの出力信号O2と、XORゲート402からの出力信号O1との間で選択する。第2の補助マルチプレクサ410はマルチプレクサ406からの出力信号O2と、LUTユニット400からの出力信号O3との間で選択する(信号O3はXORゲート402をバイパスするLUTユニット400からの直接出力である)。第1および第2の補助マルチプレクサ408、410は単一の構成ビット409によって制御される。この構成では、出力信号ODはスイッチング回路268に直接に接続され、一方、出力信号ORはマルチプレクサ264aおよび264bの第1の段に接続される(以下の図6および図8参照)。データパスまたはランダム論理動作モードでは、データパスまたはランダム論理出力信号O1、O3はそれぞれODおよびOD出力上で利用可能になる。多重化動作モードでは、マルチプレクサO2の出力は実施されるマルチプレクサの特定のタイプに応じてODまたはODの何れかの出力において利用可能になる。例えば、1ビット8:1マルチプレクサは、出力信号ORを使用し、一方で、4ビット2:1データパス・マルチプレクサは、出力ODを使用することになる。
上述の構成は、直接LUT出力O3が利用されるので、ランダム論理モードで作動するように構成された場合に論理セルの性能を改善する。さらに、この構成は、XORゲート402への桁上げ信号の影響がランダム論理出力O3に影響を及ぼさないので、ランダム論理関数の発生への桁上げ信号の負の影響の問題を解決する。
実際には、以下の適用例において2つのタイプのマルチプレクサに遭遇しうる。すなわち、
複数の単一ビット入力を受け入れ、単一のビット出力を生成するランダム論理マルチプレクサ(例えば8:1マルチプレクサ)、および
マルチビット入力を受け入れ、マルチビット出力を生成するデータパス・マルチプレクサ(例えば4ビット2:1マルチプレクサ)。
論理セルは、8つの主入力信号に加えて、最高で3つの補助信号X、YおよびZを使用して両方のタイプのマルチプレクサを与えるように設定変更可能である。3つの補助信号X、YおよびZは論理セル上にマッピングされる論理マルチプレクサ用の選択信号として使用される。3つの信号は1ビット8:1マルチプレクサの最大ケースを扱うために必要とされる。他のマルチプレクサ構成では、より少ない補助信号が必要とされる。
図5〜図8は、図3および図4に示されるプログラム可能な論理ユニットの両方の実施形態について、ランダム論理8:1マルチプレクサおよびデータパス4ビット2:1マルチプレクサの実施例を示している。
図5は、図2の論理セルにおいて使用され、8:1マルチプレクサとして動作するように構成された場合の図3のプログラム可能な論理ユニット24の構成例を示している。プログラム可能な論理ユニット24a〜dからの出力信号Oはマルチプレクサ264aおよび264bの第1の段の入力に接続される。8つの入力信号21から4つの出力信号Oへの選択用の第1の段は、制御信号Xの制御下でプログラム可能な論理ユニット24a〜dによって実行される。言い換えれば、この段における選択は、プログラム可能な論理ユニット24a〜dの各々におけるマルチプレクサ406によって実行される。選択の第2の段、すなわちプログラム可能な論理ユニット24a〜dの4つの出力信号O間の選択は、制御信号Yの制御下でマルチプレクサ264a、264bによって行なわれる。最終段の選択は、制御信号Zの制御下でマルチプレクサ266によって行なわれる。このようにして、3つの補助信号X、Y、Zを使用して8:1マルチプレクサ構成が説明される。
図6は、図2の論理セルにおいて使用され、8:1マルチプレクサとして動作するように構成された場合の図4のプログラム可能な論理ユニット24の構成例を示している。分かるように、各プログラム可能な論理ユニット24a〜dからの出力信号ORはマルチプレクサ264aおよび264bの入力に接続される。出力ODはスイッチング回路268に直接に接続される。8つの入力信号から4つの出力信号ORへの選択の第1の段は、制御信号Xの制御下でプログラム可能な論理ユニット24a〜dにおいて実行される。得られた4つの出力信号ORはマルチプレクサ264a、264bの入力に接続される。選択の第2の段、すなわち4つの出力信号OR間の選択は、制御信号Yの制御下でマルチプレクサ264a、264bによって行なわれる。最終段の選択は制御信号Zの制御下で、マルチプレクサ266によって行なわれる。このようにして、上記の図5に示すように、3つの補助信号X、Y、Zを使用して8:1マルチプレクサ構成が説明される。
図7は、図2の論理セルにおいて使用され、データパス4ビット2:1マルチプレクサとして動作するように構成された場合の図3のプログラム可能な論理ユニット24の構成例を示している。各プログラム可能な論理ユニット24a〜dからの出力信号ODはスイッチング回路268に直接接続される。2つの4ビット入力信号間の選択は、制御信号Xを使用してプログラム可能な論理ユニット24a〜dにおいて行なわれる。このようにして、制御信号Xを使用してデータパス4ビット2:1マルチプレクサが与えられる。
図8は、図4に記載のプログラム可能な論理ユニット24を使用し、データパス4ビット2:1マルチプレクサとして動作するように構成された図2の論理セルを示している。各プログラム可能な論理ユニット24a〜dからの出力信号ODはスイッチング回路268に直接接続される。2つの4ビット入力信号間の選択は制御信号Xを使用してプログラム可能な論理ユニット24a〜dにおいて行なわれる。このようにして、制御信号Xを使用してデータパス4ビット2:1マルチプレクサが与えられる。
上記から分かるように、本発明はプログラム可能な論理セルのアレイにおいてフレキシブルな多重化構成を構成することを可能にし、プログラム可能な論理セルはまたデータパス関数およびランダム論理関数を扱うことが可能である。上述の例は1ビット8:1マルチプレクサおよび4ビット2:1マルチプレクサに関するが、当業者は論理セルを使用して他の多重化構成が可能であることを容易に諒解するであろう。例えば、2ビット4:1マルチプレクサを論理セルにおいて実施することができる。さらに、例は8入力論理セルに関するが、本発明は異なる数の入力を有する論理セルに等しく適用可能である。
上述の本発明は、いくつかの多重化構成を容易に構成することができ、データパス関数とランダム論理関数との間で容易に適合可能である論理セルを提供する。
好ましくは、補助制御信号X、Y、Zが、データパス・モードで使用される他の入力ピン、例えば桁上げ入力(Cin)、減算(SUB)および乗算(MUL)と共用される。このような方式での入力ピンの共用は、以下でより詳細に説明するように制御信号の効率的な使用を与える。
図3または図4のプログラム可能な論理ユニットでは、排他的OR関数を実行するようにLUTユニット400の構成ビットをプログラムすることによって算術加算演算を実施することができる。LUTユニット400を別様にプログラムすることによって加算以外の演算を実施することができ、もちろん、第1および第2のオペランドの加算は、論理高桁上げ入力信号が最低有効レベルで使用される場合、第1のオペランドからの第2のオペランドの補数の減算と等価である。
図9は図3のプログラム可能な論理ユニットおよび桁上げ連鎖28の一部42を示している。前述のように、プログラム可能な論理ユニット24は、選択論理403および構成メモリ404を備えるLUTユニット400、ならびに第1の排他的ORゲート402を含有する。桁上げ連鎖の一部42は第2の排他的ORゲート420およびマルチプレクサ422を含有する。プログラム可能な論理ユニット24の信号入力A、Bは、マルチプレクサ422の制御入力に結合される出力を有する第2の排他的ORゲート420の入力に結合される。マルチプレクサ422は、それぞれ桁上げ入力およびプログラム可能な論理ユニット24の信号入力の1つに結合される入力を有する。桁上げ出力信号は桁上げ入力信号およびプログラム可能な論理ユニット24の入力信号A、Bから決定される。入力信号が等しい(すなわちXORゲート420の出力が論理低である)場合、マルチプレクサ422は入力信号Bの1つを桁上げ出力信号として出力する。入力信号が等しくない(すなわちXORゲート420の出力が論理高である)場合、マルチプレクサ422は桁上げ入力信号を桁上げ出力信号として出力する。上記の代替として、データパス・モードでのLUTユニット400はXORゲートを実施するので、専用XORゲート420を取り外すことができ、マルチプレクサ422用の選択信号はLUTユニット400の出力によって与えられる。
追加のゲート50、52はプログラム可能な論理ユニット24が(例えばマルチビット乗算におけるステップのように)外部補数形成および1ビット乗算ならびに累算なしに算術減算を実行することを可能にする。減算の実施は、一方の側ではLUTユニットおよび第2の排他的ORゲートと、他方の側では減算しなければならないオペランドのビットを受け取る信号入力A、Bの1つとの間に排他的ORゲート50を追加することによって促進される。入力信号が論理的に反転されるように減算制御信号SUBが排他的ORゲート50の入力の1つに供給される。減算制御信号は加算が必要とされる場合に0にセットされる。セル20におけるすべてのプログラム可能な論理ユニットの共通の減算制御信号をこの目的に使用することができる。減算信号はセル20の構成ビットによって、または外側セル20からの信号によって制御することができる。減算の場合、最低有効レベルに関連付けられたプログラム可能な論理ユニットに論理高桁上げ入力信号が印加される。
乗算ならびに累算の実施は、一方の側ではLUTユニットおよび第2の排他的ORゲートと、他方の側では乗算しなければならないオペランドのビットを受け取る信号入力A、Bの1つとの間にANDゲート52を追加し、このANDゲートの入力の1つに因子信号を供給することによって支援される。セル20におけるすべてのプログラム可能な論理ユニットの共通の因子信号をこの目的に使用することができる。因子信号は加算が必要とされる場合に1にセットされる。
図9は組合せで与えられたANDゲート52および排他的ORゲート50を示しているが、減算または乗算が不要な場合に何れかを省略できることを当業者は容易に分かるであろう。また、回路中の異なる位置の排他的ORゲート50の均等物および/またはLUTユニット400の異なる構成とともに、乗算および減算を代替方式で実施できることが理解されよう。例えば、排他的ORゲート50を入力回路の出力と桁上げ連鎖42の入力との間に結合することができ、プログラム可能な論理ユニット40の構成ビットが減算の場合における排他的ORゲート50の効果の不在に適合されるとすれば、排他的ORゲート50を通過することなしに入力回路の出力がプログラム可能な論理ユニット40に結合される。しかしながら、この場合、加算から減算に切り替えるときにプログラム可能な論理ユニットの構成を変更する必要はない。
上述のように、多重化モードで使用される補助信号X、YおよびZは、データパス(算術)モードで使用される補助信号Cin、SUBおよびMULと同じ入力ピンを共用することができる。図10aはピン共用の実施例を示している。入力ピンC、C、Cからの信号はそれぞれマルチプレクサ100、101、102の第1の入力に接続される。マルチプレクサ100および102は構成ビット115によってセットされる第2の入力を受け取り、マルチプレクサ101は構成ビット116によってセットされる第2の入力を受け取る。各マルチプレクサ100、101、102は関連する構成ビット110、111、112によって制御される。各構成ビット110、111、112は、マルチプレクサが入力ピンC、C、Cからの信号、または構成ビット115および116によってセットされた所定の論理レベル、すなわち高/低を有する信号の何れかを選択するように、そのそれぞれのマルチプレクサを制御する。このようにして、制御信号X/Cin、Y/MULおよびZ/SUBは、論理値が外部ピンC、C、Cによってセットされるか、または静的値が構成ビット115、116によってセットされる動的値を有することができる。図10bは可能ないくつかの構成モードの一例、および制御信号X/Cin、Y/MULおよびZ/SUBの得られた値を示している。「ext」および「int」という用語は、それぞれ外部および内部桁上げ入力信号を有する回路構成をさすことに留意する。
図11は上述のピン共用を有する論理セルの実施例を示している。入力ピンCはマルチプレクサ406a〜dを制御するために使用される制御信号Xと桁上げ連鎖の桁上げ入力信号Cinとの間で共用される。動的モードで動作するように構成された場合、構成ビット110は、それがそれに接続されたXまたはCinの何れかの信号を有することになる入力ピンCを選択するようにセットされる。代替的に、静的モードで動作するように構成された場合、構成ビット110は、そこにセットされたXかCinの値を有する構成ビット115からの入力を選択するようにセットされる。したがって、データパス・モードで動作している場合、入力ピンCまたは構成ビット115の何れかからのCin信号は桁上げ連鎖28の入力Cinにパスされる。代替的に、多重化モードで動作している場合、入力ピンCまたは構成ビット115の何れかからの制御信号Xはマルチプレクサ406a〜dを制御するために使用される。したがって、入力ピンCはデータパス・モードと多重化モードとの間で共用され、入力ピンの数を減らすことが可能になる。
同様にして、入力ピンCはデータパス・モードでANDゲート52a〜dの入力に接続されたMUL信号と、多重化モードでマルチプレクサ264aおよび264bを制御するために使用される制御信号Yとの間で共用される。動的モードで動作するように構成された場合、構成ビット111は、それに接続されたMUL信号またはY信号の何れかを有することになる入力ピンCを選択するようにセットされる。代替的に、静的モードで動作するように構成された場合、構成ビット111は、そこに記憶されたMULかYの値を有することになる構成ビット116を選択するようにセットされる。したがって、データパス・モードで動作している場合、入力ピンCまたは構成ビット116の何れかからのMUL信号はANDゲート52a〜dを制御するために使用される。また、マルチプレクサ・モードで動作するように構成された場合、入力ピンCまたは構成ビット116の何れかからの制御信号Yは、マルチプレクサ264a、264bを制御するために使用される。したがって、入力ピンC1はデータパス・モードと多重化モードとの間で共用され、それによって必要とされる入力ピンの数を減らす。図11はマルチプレクサ264aおよび264bの制御信号Yが入力回路22を介して与えられることを示している。しかしながら、マルチプレクサ101の出力はマルチプレクサ264aおよび264bの制御信号に直接接続することもできることが諒解されよう。また、制御信号Yは図11に示すように2つの別々の信号ではなく同じ制御信号とすることができることが諒解されよう。
入力ピンCはデータパス・モードでXORゲート50a〜dの入力に接続されたSUB信号と多重化モードでマルチプレクサ266を制御するために使用される制御信号Zとの間で共用される。動的モードで動作するように構成された場合、構成ビット112は、それに接続されたSUBまたはZの何れかの信号を有することになる入力ピン02を選択するようにセットされる。代替的に、静的モードで動作するように構成された場合、構成ビット110は、そこに記憶されたSUBまたはZの何れかの値を有することになる構成ビット115を選択するようにセットされる。したがって、データパス・モードで動作している場合、入力ピンCまたは構成ビット115の何れかからのSUB信号はXORゲート50a〜dを制御するために使用される。また、マルチプレクサ・モードで動作するように構成された場合、制御信号Zは、マルチプレクサ266を制御するために使用される。したがって、入力ピンCはデータパス・モードと多重化モードとの間で共用され、それによって必要とされる入力ピンの数を減らす。図11は制御信号Zが入力回路22を介してマルチプレクサ266に接続されることを示すが、マルチプレクサ102の出力はマルチプレクサ266の制御信号に直接接続することもできることに留意する。
図11の構成は、制御ラインをデータパス構成と多重化構成との間でどのように共用することができるかを示し、これはより少ない入力ピンが必要とされることを意味する。
図12は入力回路22を示している。入力回路22はセル20の入力に結合された複数の入力72、およびプログラム可能な論理ユニット24a〜dの入力およびセル20の出力回路のマルチプレクサに結合された複数の出力74を有する。入力72および出力74はスイッチング回路76、78の2つの層を介して結合される。スイッチング回路は各スイッチング回路76、78の2つのマルチプレクサ760を使用して実施することができ(ただ1つが詳細に示される)、各マルチプレクサ760はスイッチング回路の各入力から出力の各々までの間の設定変更可能な結合を与える。入力回路22はまた、出力段のマルチプレクサ264a、b、266に供給される入力信号を選択するための第3のマルチプレクサ(図示せず)を含有する。スイッチング回路76、78、および第3のマルチプレクサの動作は構成メモリ(図示せず)からの構成ビットによって制御される。
両方の層76、78は、それぞれその入力のそれぞれの対を出力のそれぞれの対に結合するスイッチング回路76、78のグループとして編成され、各グループのスイッチング回路76、78は、一方では入力の対の各1つから出力のその対の両方の出力に信号をコピーすることと、他方では入力の対の各入力から出力のその対の各々に信号を結合することとの間で設定変更可能に切り替えることが可能である。層76、78は直列に組み合わされ、第1の層のスイッチング回路76の対からの出力は第2の層78の異なるスイッチング回路78の対の入力に交差結合される。結果として、層76、78は入力72の4つ組を出力74のそれぞれの4つ組に結合し、入力72の4つ組の各々から出力74の対応する4つ組のすべての出力に出力をコピーすることと、入力の4つ組の各々を出力の4つ組の各々に結合することとの間で設定変更可能に切り替えることが可能である。
セル20は、スイッチング回路76、78の入力を制御するために使用される構成メモリ(図示せず)を有し、それによって構成メモリの内容は入力回路のマルチプレクサの切り替えを制御する。構成メモリは少なくともランダム論理モードとマルチビット・オペランド・モードとの間で選択する。ランダム論理モードにおいて、スイッチング回路76、78はプログラム可能な論理ユニットの各々の入力にコピーされる入力72の2つから信号をコピーするように制御され、第3のマルチプレクサ(図示せず)は出力回路のマルチプレクサの入力を制御するために入力の他の入力から信号を結合するように制御される。マルチビット・オペランド・モードにおいて、スイッチング回路76、78は入力72の各々を出力74の各々に結合するように制御される。原理的に、これらの2つのモード間で選択するために1つの構成ビット用のメモリで十分であるが、好ましくはランダム論理モードですべてのプログラム可能な論理ユニットにコピーされる入力を選択する追加の構成ビット用のメモリが設けられる。後者の場合、5つの構成ビットを使用することができる。すなわち、マルチビット・オペランド・モード(1対1信号転送)とランダム論理モード(4倍コピー)との間で選択するための1つの構成ビット、およびそれぞれプログラム可能な論理ユニットの各々の入力に結合される4つの入力の1つを選択するための2×2構成ビットである。
第3のマルチプレクサ(図示せず)は信号がそこから出力回路26のマルチプレクサの段の制御入力に供給される入力を選択する。好ましくは、2つの第3のマルチプレクサが設けられ、それぞれ出力回路26のそれぞれの段を制御するための入力信号を選択する。
原理的に、セルの信号入力は、1つのグループの各信号入力がそのグループに対応するマルチビット・オペランドのそれぞれのビットを供給する(例えば4つの)信号入力のグループに編成することができる。ランダム論理モードおよびマルチビット・オペランド処理モードを支持するために、セルは、論理入力のグループの対からの入力信号をパスし、各プログラム可能な論理ユニットがその対の両方のグループからの信号を受け取ること、すべてのプログラム可能な論理ユニットに入力の組のコピーをパスすることの間で選択する構成ビットを有することで十分である。グループまたは組を選択するために追加の構成ビットを設けることができる。
このような状況[context]において、ランダム論理関数の入力信号の数およびマルチビット・オペランドのビットの数はこの場合同じであるので、4つのプログラム可能な論理ユニットをもつセルは特に有利である。これはオペランドに対応する各グループをランダム論理関数の入力の組として選択することもできることを意味する。マルチビット・オペランド・モードにおけるグループを選択するための構成ビットは、もしあれば、ランダム論理モードにおけるグループを選択するために使用することができる。この場合、マルチビット・オペランド・モードでオペランドとして使用されるであろうグループのうち、ランダム論理関数の入力の組として使用されることになるグループを選択するために、ランダム論理モードで使用するために単一の追加の構成ビットで十分である。
本明細書で説明するのと同じ論理関数を有する図3に記載のプログラム可能な論理ユニットのいくつかの代替実施形態が存在することは明らかであろう。その代替として、例えば、図3のプログラム可能な論理ユニット24の関数は、その入力において入力信号A、Bに加えて桁上げ信号を受け取り、構成出力信号を発生する3入力LUTユニット(図示せず)で実施することができる。しかしながら、そのようなLUTユニットは8つの構成ビットを十分にプログラム可能にすることが必要であろう。桁上げを実行するための排他的ORゲート402の使用はランダム2ビット論理関数と、LUTユニット400における4つ以下の構成ビットでの桁上げを伴う信号処理演算の両方をプログラムすることを可能にする。
同様の設定変更を可能にするセル20において多数の変更が可能であることが諒解されよう。例えば、多数の2ビット入力プログラム可能な論理ユニット24a〜dをもつセルを、例えば、8つのそのようなユニット、および3つの入力信号の制御下でこれらの8つのプログラム可能な論理ユニットのうちの1つの出力を選択するマルチプレクサとともに使用することができる。したがって、例えば8ビット・マルチビット信号処理演算を使用することができる。
さらに、XORゲート402は、第1の入力において参照用テーブルの出力を受け取りって、第2の入力において参照用テーブルの出力の反転形態を受け取る2:1マルチプレクサなどの代替回路によって実施することができ、マルチプレクサは桁上げ信号によって制御されることが諒解されよう。
上述の論理セルはデータパスおよびランダム論理関数に加えてフレキシブルな多重化構成を構成することを可能にする。
従来技術のプログラム可能な論理セルを示す図である。 多重化モード、ランダム論理モードおよびマルチビット・オペランド処理モードで機能するように設定変更可能なプログラム可能な論理セルを示す図である。 本発明の第1の実施形態によるプログラム可能な論理セルを示す図である。 本発明の別の実施形態によるプログラム可能な論理セルを示す図である。 図3のプログラム可能な論理ユニットを使用したマルチプレクサの実施例を示す図である。 図4のプログラム可能な論理ユニットを使用したマルチプレクサの実施例を示す図である。 図3のプログラム可能な論理ユニットを使用したマルチプレクサの別の実施例を示す図である。 図4のプログラム可能な論理ユニットを使用したマルチプレクサの別の実施例を示す図である。 図3のプログラム可能な論理ユニットをもつ桁上げ連鎖のさらなる詳細を示す図である。 データパス・モードとマルチプレクサ・モードとの間の入力ピンの共用を示す図である。 異なるモードのピン構成の例を示す図である。 図10aおよび図10bに示されるピン共用を有する論理セルの実施例を示す図である。 入力回路を示す図である。

Claims (21)

  1. プログラム可能な論理セルのアレイをもつ電子回路であって、前記セルの各々が、
    複数の論理入力をもつ入力回路と、
    出力回路と、
    前記入力回路と前記出力回路との間に並列に結合され、前記入力回路がランダム論理モードとマルチビット・オペランド処理モードとの間で設定変更可能である、複数のプログラム可能な論理ユニットとを備え、前記プログラム可能な論理ユニットの少なくとも1つが、
    前記入力回路からの論理入力信号を受け取るように結合された入力を有し、出力を有する設定変更可能な参照用テーブル回路と、
    前記参照用テーブル回路の前記出力を受け取るように結合された入力を有し、前記出力回路に接続可能な出力を有する制御可能なインバータ/非インバータ回路と、
    前記入力回路からの前記論理入力信号を受け取るように結合された入力および前記出力回路に接続可能なマルチプレクサ出力を有するマルチプレクサと
    を備える、プログラム可能な論理セルのアレイをもつ電子回路。
  2. 前記マルチプレクサが第1の制御信号に基づいて前記論理入力信号間から出力を選択する、請求項1に記載の電子回路。
  3. 前記プログラム可能な論理ユニットが、前記インバータ/非インバータ回路の前記出力および前記マルチプレクサの前記出力を受け取るように結合された入力を有する補助マルチプレクサをさらに備え、前記補助マルチプレクサの出力が前記出力回路に結合される、請求項1に記載の電子回路。
  4. 前記補助マルチプレクサが構成メモリからの構成情報の制御下で前記インバータ/非インバータ回路の前記出力または前記マルチプレクサの前記出力の何れかを前記出力回路に供給する、請求項3に記載の電子回路。
  5. 前記プログラム可能な論理ユニットが、
    前記インバータ/非インバータ回路の前記出力および前記マルチプレクサの前記出力を受け取るように結合された入力を有する第1の補助マルチプレクサと、
    前記参照用テーブル回路の前記出力および前記マルチプレクサの前記出力を受け取るように結合された入力を有する第2の補助マルチプレクサと
    をさらに備え、
    前記第1および第2のマルチプレクサが構成メモリからの構成情報によって制御され、それによってデータパスおよびランダム論理出力信号が第1のモードでそれぞれ前記第1および第2の補助マルチプレクサから出力され、マルチプレクサ出力信号が第2のモードで前記第1および第2のマルチプレクサから出力される、請求項1に記載の電子回路。
  6. 前記出力回路が複数のプログラム可能な論理ユニットから前記マルチプレクサ出力信号を受け取るためのマルチプレクサの第1の段を備え、マルチプレクサの前記第1の段が第2の制御信号によって制御される、請求項1に記載の電子回路。
  7. 前記出力回路が多重化の少なくとも1つのさらなる段を備え、前記多重化の少なくとも1つのさらなる段がマルチプレクサの前記第1の段における前記マルチプレクサの前記出力を受け取るように設定変更可能な少なくとも1つのマルチプレクサを備え、第3の制御信号の制御下で出力信号を与える、請求項6に記載の電子回路。
  8. 前記マルチプレクサが第1の制御信号に基づいて前記論理入力信号間から出力を選択し、前記出力回路が、
    第2の制御信号によって制御される、複数のプログラム可能な論理ユニットから前記マルチプレクサ出力信号を受け取るためのマルチプレクサの第1の段と、
    マルチプレクサの前記第1の段における前記マルチプレクサの前記出力を受け取るように設定変更可能な少なくとも1つのさらなるマルチプレクサを備え、第3の制御信号の制御下で出力信号を与えるマルチプレクサの第2の段と
    をさらに備え、
    前記回路がマルチビット・オペランド処理モードで動作するように構成される場合、前記第1、第2および第3の制御信号の少なくとも1つが補助制御信号として使用可能である、請求項1に記載の電子回路。
  9. 桁上げ入力および桁上げ出力、前記桁上げ入力と前記入力回路と前記桁上げ出力との間に結合された桁上げ連鎖をさらに備え、
    前記プログラム可能な論理ユニットが、前記桁上げ連鎖からの桁上げ信号を処理するために少なくとも前記マルチビット・オペランド処理モードで前記桁上げ連鎖に沿った連続的な位置に結合され、前記出力回路が、前記ランダム論理モードでさらなる入力信号の制御下で前記プログラム可能な論理ユニットから出力信号を選択し、前記マルチビット・オペランド処理モードで前記プログラム可能な論理ユニットからの出力を並列にパスする、請求項1に記載の電子回路。
  10. 前記桁上げ連鎖の桁上げ出力が前記インバータ/非インバータ回路の反転非反転制御入力に結合される、請求項9に記載の電子回路。
  11. 前記セルが少なくとも前記桁上げ連鎖の桁上げ出力決定動作を制御するように構成された減算制御回路を備え、前記桁上げ連鎖が前記桁上げ連鎖に沿った各位置において入力信号および桁上げ入力信号から桁上げ出力信号を決定し、前記減算制御回路による制御が減算制御信号の制御下で少なくとも加算に適した決定と減算に適した決定との間で前記桁上げ出力決定を切り替える、請求項1に記載の電子回路。
  12. 前記セルが、前記プログラム可能な論理ユニットの入力に前記プログラム可能な論理ユニットの前記入力信号の少なくとも1つを供給する前に前記入力信号の前記少なくとも1つに被乗数を乗算するように結合された、各プログラム可能な論理ユニット用のそれぞれの乗算回路を備える、請求項1に記載の電子回路。
  13. 前記プログラム可能な論理ユニットの各々が前記論理ユニットからの信号用の2つのユニット入力を有し、各プログラム可能な論理ユニットが前記論理入力の2入力ビット論理関数を独立して実施するように設定変更可能である、請求項1に記載の電子回路。
  14. 前記桁上げ連鎖回路が、構成メモリからの構成情報の制御下で桁上げ入力信号または標準の信号の何れかを前記桁上げ連鎖に設定変更可能に供給するための、前記位置と前記セルの前記桁上げ入力との間の設定変更可能な結合を有する、請求項9に記載の電子回路。
  15. 前記桁上げ連鎖回路が、構成メモリからの構成情報の制御下で前記位置からの桁上げ信号または前記桁上げ連鎖を通る伝搬の結果ではないさらなる信号の何れかを前記プログラム可能な論理回路に設定変更可能に供給するための、それぞれ前記位置の各々と前記プログラム可能な論理ユニットの各々との間に結合された、複数の設定変更可能な結合を有する、請求項1に記載の電子回路。
  16. 前記インバータ/非インバータ回路が排他的OR回路を備える、請求項1に記載の電子回路。
  17. 前記インバータ/非インバータ回路がマルチプレクサを備え、前記マルチプレクサが第1の入力において前記参照用テーブルの前記出力を受け取り、第2の入力において前記参照用テーブルの前記出力の反転形態を受け取り、前記マルチプレクサが桁上げ信号によって制御される、請求項1に記載の電子回路。
  18. 前記入力回路が、前記セルの前記信号入力と前記プログラム可能な論理ユニットの入力との間のすべての可能な結合の適切なサブセットのみを与えるように設定変更可能なように構成され、前記サブセットは、前記信号入力の各々が前記プログラム可能な論理ユニットの各々のそれぞれの入力に結合されるマルチビット・オペランド結合と、前記信号入力のサブセットが前記プログラム可能な論理ユニットの各々の前記入力に結合されるランダム論理結合とを備える、請求項1に記載の電子回路。
  19. 前記サブセットは、前記信号入力の第1および第2のサブセットが複数の前記プログラム可能な論理ユニットの第1および第2のサブセットの各々の前記入力に結合される2ビット出力ランダム論理結合を備える、請求項18に記載の電子回路。
  20. 前記プログラム可能な論理ユニットの各々がそれぞれの入力出力関係を与えるように構成され、前記論理入力からの論理入力信号は、前記プログラム可能な論理ユニットのうちで論理出力信号が前記出力回路の論理出力にパスされる前記プログラム可能な論理ユニットから選択する、ランダム論理関数を実行するように構成された、請求項1に記載の電子回路。
  21. 前記プログラム可能な論理ユニットの各々が前記桁上げ連鎖からの桁上げ入力信号を受ける同じ入力出力関係を与えるように構成され、前記出力回路が前記プログラム可能な論理ユニットからの出力信号を出力する、マルチビット・オペランド信号処理関数を実行するように構成された、請求項1に記載の電子回路。
JP2006502587A 2003-02-19 2004-02-12 プログラム可能な論理セルのアレイをもつ電子回路 Withdrawn JP2006519548A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03100389 2003-02-19
PCT/IB2004/050109 WO2004075409A1 (en) 2003-02-19 2004-02-12 Electronic circuit with array of programmable logic cells

Publications (1)

Publication Number Publication Date
JP2006519548A true JP2006519548A (ja) 2006-08-24

Family

ID=32892955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006502587A Withdrawn JP2006519548A (ja) 2003-02-19 2004-02-12 プログラム可能な論理セルのアレイをもつ電子回路

Country Status (5)

Country Link
US (1) US7196541B2 (ja)
EP (1) EP1606878A1 (ja)
JP (1) JP2006519548A (ja)
CN (1) CN1751439A (ja)
WO (1) WO2004075409A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530040A (ja) * 2015-07-31 2018-10-11 呉 国盛WU, Guosheng 自己適応型チップ及び配置方法

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004075403A2 (en) * 2003-02-19 2004-09-02 Koninklijke Philips Electronics N.V., Electronic circuit with array of programmable logic cells
WO2004075410A1 (en) * 2003-02-19 2004-09-02 Koninklijke Philips Electronics N.V. Electronic circuit with array of programmable logic cells
DE102004025581B4 (de) * 2004-05-25 2008-02-14 Infineon Technologies Ag Logik-Grundzelle und Logik-Grundzellen-Anordnung
US7282950B1 (en) * 2004-11-08 2007-10-16 Tabula, Inc. Configurable IC's with logic resources with offset connections
US7743085B2 (en) * 2004-11-08 2010-06-22 Tabula, Inc. Configurable IC with large carry chains
US7804719B1 (en) 2005-06-14 2010-09-28 Xilinx, Inc. Programmable logic block having reduced output delay during RAM write processes when programmed to function in RAM mode
US7253658B1 (en) 2005-06-14 2007-08-07 Xilinx, Inc. Integrated circuit providing direct access to multi-directional interconnect lines in a general interconnect structure
US7265576B1 (en) 2005-06-14 2007-09-04 Xilinx, Inc. Programmable lookup table with dual input and output terminals in RAM mode
US7268587B1 (en) 2005-06-14 2007-09-11 Xilinx, Inc. Programmable logic block with carry chains providing lookahead functions of different lengths
US7276934B1 (en) 2005-06-14 2007-10-02 Xilinx, Inc. Integrated circuit with programmable routing structure including diagonal interconnect lines
US7256612B1 (en) 2005-06-14 2007-08-14 Xilinx, Inc. Programmable logic block providing carry chain with programmable initialization values
US7274214B1 (en) 2005-06-14 2007-09-25 Xilinx, Inc. Efficient tile layout for a programmable logic device
US7375552B1 (en) 2005-06-14 2008-05-20 Xilinx, Inc. Programmable logic block with dedicated and selectable lookup table outputs coupled to general interconnect structure
US7218143B1 (en) * 2005-06-14 2007-05-15 Xilinx, Inc. Integrated circuit having fast interconnect paths between memory elements and carry logic
US8463836B1 (en) 2005-11-07 2013-06-11 Tabula, Inc. Performing mathematical and logical operations in multiple sub-cycles
US7679401B1 (en) 2005-12-01 2010-03-16 Tabula, Inc. User registers implemented with routing circuits in a configurable IC
US7902864B1 (en) * 2005-12-01 2011-03-08 Altera Corporation Heterogeneous labs
US7391236B2 (en) * 2005-12-27 2008-06-24 Altera Corporation Distributed memory in field-programmable gate array integrated circuit devices
US7583102B1 (en) * 2006-05-05 2009-09-01 Xilinx, Inc. Testing of input/output devices of an integrated circuit
US7514957B2 (en) 2007-03-20 2009-04-07 Tabula, Inc Configurable IC having a routing fabric with storage elements
WO2010033263A1 (en) 2008-09-17 2010-03-25 Tabula, Inc. Controllable storage elements for an ic
US8661394B1 (en) 2008-09-24 2014-02-25 Iowa State University Research Foundation, Inc. Depth-optimal mapping of logic chains in reconfigurable fabrics
US8438522B1 (en) 2008-09-24 2013-05-07 Iowa State University Research Foundation, Inc. Logic element architecture for generic logic chains in programmable devices
US7746104B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Dynamically controlled output multiplexer circuits in a programmable integrated circuit
US8527572B1 (en) 2009-04-02 2013-09-03 Xilinx, Inc. Multiplier architecture utilizing a uniform array of logic blocks, and methods of using the same
US8706793B1 (en) * 2009-04-02 2014-04-22 Xilinx, Inc. Multiplier circuits with optional shift function
US7746108B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Compute-centric architecture for integrated circuits
US9002915B1 (en) 2009-04-02 2015-04-07 Xilinx, Inc. Circuits for shifting bussed data
US7746109B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for sharing self-timed logic
US7948265B1 (en) 2009-04-02 2011-05-24 Xilinx, Inc. Circuits for replicating self-timed logic
US7746110B1 (en) * 2009-04-02 2010-06-29 Xilinx, Inc. Circuits for fanning out data in a programmable self-timed integrated circuit
US9411554B1 (en) 2009-04-02 2016-08-09 Xilinx, Inc. Signed multiplier circuit utilizing a uniform array of logic blocks
US7746101B1 (en) 2009-04-02 2010-06-29 Xilinx, Inc. Cascading input structure for logic blocks in integrated circuits
US7982496B1 (en) 2009-04-02 2011-07-19 Xilinx, Inc. Bus-based logic blocks with optional constant input
DE102010007953A1 (de) * 2010-02-12 2011-08-18 Phoenix Contact GmbH & Co. KG, 32825 Schaltlogikmodul
US8402164B1 (en) 2010-10-27 2013-03-19 Xilinx, Inc. Asynchronous communication network and methods of enabling the asynchronous communication of data in an integrated circuit
US8760193B2 (en) 2011-07-01 2014-06-24 Tabula, Inc. Configurable storage elements
US9148151B2 (en) 2011-07-13 2015-09-29 Altera Corporation Configurable storage elements
WO2013118119A1 (en) * 2012-02-09 2013-08-15 B.G. Negev Technologies & Applications Ltd. Design of dual mode logic circuits
US8901965B2 (en) 2011-08-03 2014-12-02 Ben-Gurion University Of The Negev Research And Development Authority Device and method for dual-mode logic
US9583190B2 (en) 2011-11-11 2017-02-28 Altera Corporation Content addressable memory in integrated circuit
US8581624B2 (en) * 2012-03-29 2013-11-12 Altera Corporation Integrated circuits with multi-stage logic regions
US9118325B1 (en) * 2014-08-27 2015-08-25 Quicklogic Corporation Routing network for programmable logic device
CN105471422B (zh) * 2015-11-25 2019-03-15 中国科学院电子学研究所 集成辅助逻辑运算单元的可编程逻辑模块
JP6721161B2 (ja) * 2016-05-17 2020-07-08 ザインエレクトロニクス株式会社 信号多重化装置
CN107656880B (zh) * 2016-10-28 2020-12-15 上海兆芯集成电路有限公司 具有包括动态可编程的功能单元的存储器控制器的处理器
US20200293707A1 (en) * 2020-06-01 2020-09-17 Intel Corporation Programmable integrated circuit underlay
CN114253508A (zh) * 2020-09-21 2022-03-29 华为技术有限公司 逻辑功能模块与可编程逻辑门阵列

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6288570B1 (en) * 1993-09-02 2001-09-11 Xilinx, Inc. Logic structure and circuit for fast carry
US6294928B1 (en) * 1996-04-05 2001-09-25 Altera Corporation Programmable logic device with highly routable interconnect
US5761099A (en) * 1994-11-04 1998-06-02 Altera Corporation Programmable logic array integrated circuits with enhanced carry routing
US5570039A (en) * 1995-07-27 1996-10-29 Lucent Technologies Inc. Programmable function unit as parallel multiplier cell
US6107822A (en) * 1996-04-09 2000-08-22 Altera Corporation Logic element for a programmable logic integrated circuit
US6075380A (en) * 1997-06-26 2000-06-13 Altera Corporation Programmable logic device with expandable-width memory regions
US20030055852A1 (en) * 2001-09-19 2003-03-20 Wojko Mathew Francis Reconfigurable arithmetic logic block array for FPGAs
JP2005532756A (ja) * 2002-07-10 2005-10-27 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ プログラマブル・ロジック・セルのアレイを有する電子回路
WO2004075410A1 (en) * 2003-02-19 2004-09-02 Koninklijke Philips Electronics N.V. Electronic circuit with array of programmable logic cells

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018530040A (ja) * 2015-07-31 2018-10-11 呉 国盛WU, Guosheng 自己適応型チップ及び配置方法
US10693466B2 (en) 2015-07-31 2020-06-23 Guosheng Wu Self-adaptive chip and configuration method

Also Published As

Publication number Publication date
CN1751439A (zh) 2006-03-22
US20060164119A1 (en) 2006-07-27
EP1606878A1 (en) 2005-12-21
WO2004075409A1 (en) 2004-09-02
US7196541B2 (en) 2007-03-27

Similar Documents

Publication Publication Date Title
JP2006519548A (ja) プログラム可能な論理セルのアレイをもつ電子回路
US7372297B1 (en) Hybrid interconnect/logic circuits enabling efficient replication of a function in several sub-cycles to save logic and routing resources
US7467175B2 (en) Programmable logic device with pipelined DSP slices
US7660841B2 (en) Flexible accumulator in digital signal processing circuitry
US7472155B2 (en) Programmable logic device with cascading DSP slices
JP3862658B2 (ja) 再構成可能な論理デバイス
US8495122B2 (en) Programmable device with dynamic DSP architecture
US7467177B2 (en) Mathematical circuit with dynamic rounding
KR101067727B1 (ko) 프로그래밍 가능한 논리 셀 어레이를 갖는 전자 회로
US5821774A (en) Structure and method for arithmetic function implementation in an EPLD having high speed product term allocation structure
EP2391010B1 (en) A programmable logic device having complex logic blocks with improved logic cell functionality
US8587336B2 (en) Reconfigurable logic block, programmable logic device provided with the reconfigurable logic block, and method of fabricating the reconfigurable logic block
JP2006518144A (ja) プログラム可能な論理セルのアレイをもつ電子回路
JP2003084967A (ja) 機能ブロック
US7617269B2 (en) Logic entity with two outputs for efficient adder and other macro implementations
US8463836B1 (en) Performing mathematical and logical operations in multiple sub-cycles
US20060097750A1 (en) Electronic circuit with array of programmable logic cells
US7818361B1 (en) Method and apparatus for performing two's complement multiplication
US7765249B1 (en) Use of hybrid interconnect/logic circuits for multiplication
EP1488523B1 (en) Implementation of wide multiplexers in reconfigurable logic
CN106024056B (zh) 基于复用器的三态内容寻址存储器
US20120280710A1 (en) Reuse of constants between arithmetic logic units and look-up-tables

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070208

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070511

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20080220