(57)【要約】【課題】  ランダム・ロジック機能と信号処理演算の両方を実施することができ、かつコンフィギュレーション・ビットが効率的に使用される、プログラマブル・ロジック・セルのアレイを有する電子回路を提供すること。【解決手段】  電子回路は、マルチ・ビット・オペランド・モードとランダム・ロジック・モードとにおいて動作するように構成設定することのできる、複数のプログラマブル・ロジック・ユニットを有するプログラマブル・ロジック・セルを有する。プログラマブル・ロジック・ユニットは、入力回路と出力回路との間に並列に結合されている。入力回路は、ランダム・ロジック・モードにおいて、ロジック入力の同じ組み合わせロジック入力信号をプログラマブル・ロジック・ユニットに供給するように構成設定することができる。マルチ・ビット・オペランド処理モードにおいては、入力回路は、複数の異なるロジック入力からのロジック入力信号をプログラマブル・ロジック・ユニットに供給するように構成設定される。プログラマブル・ロジック・ユニットは、キャリー・チェーンからのキャリー信号が処理されるように、少なくともマルチ・ビット・オペランド・モードにおいてはキャリー・チェーン沿いの連続する位置に結合される。出力回路は、ランダム・ロジック・モードにおいては、プログラマブル・ロジック・ユニットからの出力信号をさらなる入力信号の制御下で選択し、マルチ・ビット・オペランド・モードにおいては、プログラマブル・ロジック・ユニットからの出力を並列に渡す。
2005532756.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブル・ロジック・セルのアレイを有する電子回路であって、前記セルのそれぞれが、
−  複数のロジック入力を有する入力回路と、
−  出力回路と、
−  キャリー入力およびキャリー出力であって、前記キャリー入力と前記入力回路と前記キャリー出力の間にキャリー・チェーンが結合されている、前記キャリー入力およびキャリー出力と、
−  前記入力回路と前記出力回路の間に並列に結合されている複数のプログラマブル・ロジック・ユニットであって、前記入力回路が、前記プログラマブル・ロジック・ユニットのそれぞれが、前記ロジック入力の同じ組み合わせからロジック入力信号を受信するランダム・ロジック・モードと、前記プログラマブル・ロジック・ユニットのそれぞれが、異なる前記ロジック入力からロジック入力信号を受信するマルチ・ビット・オペランド処理モードと、の間で構成設定することができ、前記プログラマブル・ロジック・ユニットが、前記キャリー・チェーンからのキャリー信号が処理されるように、少なくとも前記マルチ・ビット・オペランド・モードにおいて前記キャリー・チェーン沿いの一連の位置に結合され、前記出力回路が、前記ランダム・ロジック・モードにおいてはさらなる入力信号の制御下で前記プログラマブル・ロジック・ユニットからの出力信号を選択し、かつ、前記マルチ・ビット・オペランド・モードにおいては前記プログラマブル・ロジック・ユニットからの出力を並列に渡す、前記複数のプログラマブル・ロジック・ユニットと、
を有する、電子回路。
【請求項２】
前記プログラマブル・ロジック・ユニットの少なくとも一つが、
−  構成設定可能なルックアップ・テーブル回路であって、前記入力回路からの前記ロジック入力信号を受信するように結合されている入力と、出力とを有する、前記構成設定可能なルックアップ・テーブル回路と、
−  制御可能な反転器／非反転器回路であって、前記ルックアップ・テーブル回路の前記出力が前記反転器／非反転器回路を介して前記出力回路に結合されており、前記キャリー・チェーンのキャリー出力が、前記反転器／非反転器回路の反転／非反転制御入力に結合されている、前記制御可能な反転器／非反転器回路と、
を有する、請求項1に記載の電子回路。
【請求項３】
前記セルが、少なくとも前記キャリー・チェーンのキャリー出力決定演算を制御するように構成されている減算制御回路を有し、入力信号と前記キャリー・チェーン沿いの各位置におけるキャリー入力信号とからキャリー出力信号を決定する前記キャリー・チェーンが、少なくとも加算の場合に適切な決定と減算の場合に適切な決定との間でのキャリー出力の決定の切り替えを、減算制御信号の制御下で前記減算制御回路によって制御する、請求項1に記載の電子回路。
【請求項４】
前記セルが、各プログラマブル・ロジック・ユニット用のそれぞれの乗算回路を有し、前記乗算回路が、前記プログラマブル・ロジック・ユニットの前記入力信号の少なくとも一つが前記プログラマブル・ロジック・ユニットの入力に供給される前に、当該入力信号の当該少なくとも一つに被乗数を乗算する目的で、結合されている、請求項1に記載の電子回路。
【請求項５】
前記プログラマブル・ロジック・ユニットのそれぞれが、前記ロジック入力からの信号用の二つのユニット入力を有し、前記プログラマブル・ロジック・ユニットそれぞれが、前記ロジック入力の任意の2入力ビットロジック機能を独立して実施するように構成設定可能である、請求項1に記載の電子回路。
【請求項６】
前記キャリー・チェーン回路が、コンフィギュレーション・メモリからのコンフィギュレーション情報の制御下で前記キャリー・チェーンへのキャリー入力信号または標準信号のいずれかを構成設定に応じて供給する目的で、当該位置と前記セルの前記キャリー入力との間の構成設定可能な結合を有する、請求項1に記載の電子回路。
【請求項７】
前記キャリー・チェーン回路が、複数の構成設定可能な結合を有し、各結合が、当該位置からのキャリー信号、または前記キャリー・チェーン内の伝播の結果ではないさらなる信号のいずれかを、コンフィギュレーション・メモリからのコンフィギュレーション情報の制御下で、構成設定に応じて前記プログラマブル・ロジック・ユニットに供給する目的で、当該位置のそれぞれと前記プログラマブル・ロジック・ユニットのそれぞれとの間を結合する、請求項1に記載の電子回路。
【請求項８】
前記プログラマブル・ロジック・ユニットのそれぞれが、
−  構成設定可能なルックアップ・テーブル回路であって、前記入力回路からの前記ロジック入力信号を受信するように結合されている入力と、出力とを有する、前記構成設定可能なルックアップ・テーブル回路と、
−  制御可能な反転器／非反転器回路であって、前記ルックアップ・テーブル回路の前記出力が前記反転器／非反転器回路を介して前記出力回路に結合されており、前記構成設定可能な結合が、前記反転器／非反転器回路の反転／非反転制御入力に結合されている、前記制御可能な反転器／非反転器回路と、
−  前記プログラマブル・ロジック・ユニットの入力に結合されている入力と、前記プログラマブル・ロジック・ユニットに共通であるマルチプレックス制御信号のアサートが適用される前記さらなる信号を供給するように構成設定できるように結合される出力とを有する、排他的論理和回路と、
を有する、請求項7に記載の電子回路。
【請求項９】
前記入力回路が、前記セルの前記信号入力と前記プログラマブル・ロジック・ユニットの入力との間の可能な結合すべてのうち適切な部分集合のみを提供するように構成設定できるように構成されており、前記部分集合が、前記信号入力のそれぞれが前記プログラマブル・ロジック・ユニットのそれぞれの各入力に結合されるマルチ・ビット・オペランド結合と、前記信号入力のうちの一部が前記プログラマブル・ロジック・ユニットのそれぞれの前記入力に結合されるランダム・ロジック結合と、を有する、請求項1に記載の電子回路。
【請求項１０】
前記部分集合が、2ビット出力ランダム・ロジック結合であって、前記信号入力の第一および第二部分集合が、複数の前記プログラマブル・ロジック・ユニットの第一および第二部分集合のそれぞれの入力に結合される、前記2ビット出力ランダム・ロジック結合、を有する、請求項7に記載の電子回路。
【請求項１１】
ランダム・ロジック機能を実行するように構成設定されている請求項1に記載の電子回路であって、前記プログラマブル・ロジック・ユニットのそれぞれが、それぞれの入力−出力関係を提供するように構成設定されており、かつ、前記ロジック入力からのロジック入力信号が、前記プログラマブル・ロジック・ユニットのうち、ロジック出力信号が前記出力回路のロジック出力に渡される前記ユニットを選択する、電子回路。
【請求項１２】
マルチ・ビット・オペランド信号処理機能を実行するように構成設定されている請求項1に記載の電子回路であって、前記プログラマブル・ロジック・ユニットのそれぞれが、前記キャリー・チェーンからのキャリー入力信号が適用される同じ入力−出力関係を提供するように構成設定されており、前記出力回路が、前記プログラマブル・ロジック・ユニットからの出力信号を並列に出力する、電子回路。
【請求項１３】
多重化機能を実行するように構成設定されている請求項1に記載の電子回路であって、前記プログラマブル・ロジック・ユニットのそれぞれが、次のように構成設定されている、すなわち、入力信号の一方を出力に渡し、かつ、この渡すステップ時に、前記プログラマブル・ロジック・ユニットに共通であるマルチプレクサ制御信号がアサートされかつ前記プログラマブル・ロジック・ユニットが相互に異なるときには、前記入力信号の前記一方を反転する、ように構成設定されている、電子回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル・ロジック・セルのアレイを有する電子回路に関する。
【背景技術】
【０００２】
プログラマブル・ロジック・セルを使用すると、回路の設計者は、集積回路など大量生産される電子回路のロジック機能を必要に応じて適合化していくことができる。これにより、作業回路の設計から製造までの期間が短縮され、また、製品の小規模なロットを生産してプロトタイピングを行うための製造コストが減少する。
【０００３】
実施の一例においては、プログラマブル・セルは、セルの入力信号によってアドレッシングされるメモリを含んでおり、このメモリは、入力信号値の各組み合わせに対して事前にプログラムされている出力信号を、これらの値によってアドレッシングされるそれぞれのアドレスに格納する。このメモリは、LUT（ルックアップ・テーブル）機能を持つと言い、様々な入力信号に応答して生成される出力信号を調べる。
【０００４】
十分なメモリ空間が含まれているならば、ロジック機能をLUTと一緒に実施することができる。しかしながら、実際には、プログラマブル・ロジック・セルを持つ回路においては、LUTと一緒に実施されるロジック機能は、必要な入力の数が限られた（一般には4以下）ロジック機能のみである。このようなLUTは、16個のメモリ位置を必要とする。これによって、4個の入力ビットのランダム・ロジック機能をプログラムすることができる。多くの場合、4入力ビット機能を有するセルを持つ回路で十分である。このようなセルのアレイを有する回路（セルの出力が別のセルの入力に結合されている）を使用することで、設計者はより複雑なロジック機能を実施することができる。
【０００５】
加算などの信号処理演算を実施するためのロジック機能が、プログラマブル・ロジック・セルのアレイの一部を使用して実施されることが増えている。多くの信号処理演算では、その特性として、ビット幅の広い入力オペランドそれぞれの多数のビットが、キャリー効果によって出力結果における多数のビットに影響しうる。このような広い依存関係が4ビット入力LUTを使用して実施されると、極めて非効率的な実施となる。
【０００６】
Xilinx社は、そのプログラマブル・ロジック・デバイスのVirtexファミリーにおいて、この問題に対して、4ビット入力LUTセルのアレイにキャリー・チェーンを加えることによって対処した。図1は、このようなデバイスのプログラマブル・ロジック・セルを示す。このセルは、LUT機能を実行する4ビット・アドレス・メモリ10と、キャリー入力およびキャリー出力を持つキャリー回路12とを含んでいる。メモリ10の出力は、キャリー回路12に結合されており、キャリー回路12は、キャリー入力信号とLUTの出力信号とを結合してキャリー出力信号を形成する。キャリー入力信号とLUTの出力信号とからセルの出力信号を形成する目的には、排他的論理和ゲート14が使用されている。セルのキャリー入力とキャリー出力は、アレイ（図示されていない）内の隣接するセルのキャリー出力とキャリー入力に結合されて、キャリー・チェーンが形成されている。キャリー・チェーンは、一つの4ビット入力LUTの出力から別のLUTへのキャリー機能を実行する。この結果として、キャリー機能を実施するのにLUTを割り当てる必要がない。これにより、いくつかの信号処理演算が含まれるロジック機能を実施するために回路が使用されるときに、相当な数のLUTが節約される。
【０００７】
それにもかかわらず、専用の信号処理回路と比較すると、ランダム・ロジック機能も実施できる汎用回路において信号処理機能を実施することは、依然として極めて非効率的である。この効率を改良することができれば、それは望ましいであろう。
【０００８】
このことは、LUTを実施するメモリ以外のプログラマブル要素を使用するプログラマブル・ロジック回路の場合にも当てはまる。より一般的には、プログラマブル・ロジック・セルのロジック機能は、回路における一連のコンフィギュレーション・ビットの値によって制御される。コンフィギュレーション・ビットの値は、例えば、メモリ要素の中に設定する、あるいは、ヒューズを飛ばすなどの手法によって不可逆的にプログラムすることができる。LUTの内容は、コンフィギュレーション・ビットによって設定することができるが、ロジック・ゲートへの入力、あるいはロジック回路の制御信号も、コンフィギュレーション・ビットによって設定することができる。コンフィギュレーション・ビットの数は、これらの電子回路における重要な設計パラメータである。一般的には、コンフィギュレーション・ビットの数が多ければ、回路のプログラミングの範囲が広がるが、多数のビットを格納する必要があるため、回路がより高価になり、その応答が遅くなる可能性がある。これらの回路において信号処理演算を実施するためには、多数のコンフィギュレーション・ビットを持つセルとするか、または、セルの数を増やして、それぞれに対してより少ないコンフィギュレーション・ビットを用意する必要がある。この効率を改良することができれば、それは望ましいであろう。
【発明の開示】
【課題を解決するための手段】
【０００９】
本発明の目的は、特に、ランダム・ロジック機能と信号処理演算の両方を実施することができ、かつコンフィギュレーション・ビットが効率的に使用される、プログラマブル・ロジック・セルのアレイを有する電子回路を提供することである。
【００１０】
本発明による電子回路は、請求項1に記載されている。この電子回路は、信号入力と信号出力との間に複数のプログラマブル・ロジック・ユニットが並列に結合されているプログラマブル・ロジック・セルを含む。このプログラマブル・ロジック・セルは、ランダム・ロジック・モードとマルチ・ビット・オペランド・モードとにおいて動作するように構成設定可能である。マルチ・ビット・オペランド・モードにおいては、前記セル内の複数の異なるプログラマブル・ロジック・ユニットそれぞれが、セルの信号入力から入力信号を受信し、プログラマブル・ロジック・ユニットの出力が、セルの出力に並列に送られる。キャリー信号は、プログラマブル・ロジック・ユニットの間で伝えられる。ランダム・ロジック・モードにおいては、セル内のプログラマブル・ロジック・ユニットのそれぞれは、セルの信号入力から同じ信号を受信する。どのプログラマブル・ロジック・ユニットの出力がセルの出力に結合されるかは、信号入力からのさらなる信号によって選択される。
【００１１】
従って、プログラマブル・ロジック・ユニット用の少ない数のコンフィギュレーション・ビットを使用して、ランダム・ロジック機能とマルチ・ビット信号処理演算の両方を実行するように、セルをプログラムすることができる。例えば、四つの2入力プログラマブル・ロジック・ユニットを使用する場合、信号処理演算の四つのビット重みレベル(bit significance levels)と、4ビット入力のランダム・ロジック演算（二個の入力ビットがプログラマブル・ロジック・ユニットのそれぞれに供給され、残りの二個のビットが、出力信号を供給するのに使用されるプログラマブル・ロジック・ユニットを選択する）とを実施するように、セルを構成設定することができる。この構成設定能力は、セルのプログラマブル・ロジック・ユニットをプログラムするためのわずか16個のビットによって完全に達成される。
【００１２】
一つの実施例においては、少なくとも一つのプログラマブル・ロジック・ユニットにおけるキャリー信号の効果は、キャリー信号に応じてプログラマブル・ユニットの出力信号を反転させるかまたは反転させない専用回路によって実施される。この専用回路は、一般には排他的論理和機能を持つ。従って、キャリーの効果を実施するためのコンフィギュレーション・ビットが必要ない。
【００１３】
さらなる実施例においては、少なくとも減算と加算の場合に適切なキャリー信号を決定することができるように、セルは、キャリー・チェーンの動作を構成設定するための回路を含むことができる。さらに、セル内のマルチ・ビット・オペランドのビットのそれぞれに同じ被乗数を乗算するための回路を設けることができる。入力回路は、マルチ・ビット・オペランド信号処理に使用される結合とランダム・ロジック機能の計算に使用される結合など、セルの信号入力とプログラマブル・ロジック・ユニットの入力との間の結合として、限られた選択肢のみを提供することができる。限られた選択肢のみを提供することによって、マルチ・ビット信号処理とランダム・ロジック機能を実施するようにセルを構成設定する能力に影響を与えずに、入力回路を構成設定するのに必要なコンフィギュレーション・ビットの数を少なくすることができる。
【００１４】
さらに別の実施例においては、セルは、マルチ・ビット・オペランド・モードにおいてキャリー信号を考慮する目的で使用される回路を使用して、マルチプレクサ・モードにおいてマルチプレクサ機能を構成設定することをサポートする。
【００１５】
本発明は、上記のタイプのプログラマブル回路であって、それぞれ、マルチ・ビット・オペランド機能、ランダム・ロジック機能、マルチプレクサ機能を実行するように構成設定されている、プログラマブル回路にも関する。
【００１６】
本発明の上記およびその他の目的と有利な点は、添付の図面を使用して以下に説明されている。
【発明を実施するための最良の形態】
【００１７】
図2は、プログラマブル・ロジック・セル20を示す。セル20は、入力回路22と、複数のプログラマブル・ロジック・ユニット24a〜24dと、出力回路26と、キャリー・チェーン28とを含んでいる。セル20の信号入力21と信号出力27は、入力回路22と、プログラマブル・ロジック・ユニット24a〜24dの並列配置と、出力回路26のカスケードを介して結合されている。キャリー・チェーン28は、キャリー入力29aとキャリー出力29bとを有し、チェーン沿いの一連の位置においてプログラマブル・ロジック・ユニットに結合されている。
【００１８】
出力回路26は、複数段のマルチプレクサ264a, 264b, 266と、スイッチング段268とを含んでいる。第一段におけるマルチプレクサ264a, 264bの制御入力は、入力回路22のそれぞれの出力に結合されている。第一段のマルチプレクサ264a, 264bの信号入力は、対のプログラマブル・ロジック・ユニット24a〜24dの出力に結合されており、第二段におけるマルチプレクサ266の信号入力は、第一段のマルチプレクサ264a, 264bの出力に結合されている。
【００１９】
プログラマブル・ロジック・ユニット24a〜24dの出力と第二段のマルチプレクサ266の出力は、スイッチング段268の入力に結合されている。スイッチング段268の出力は、セル20の信号出力27に結合されている。スイッチング段268は、プログラマブル・ロジック・ユニット24a〜24dの出力、または、第一段と第二段のマルチプレクサ264a, 264b, 266の出力、または、少なくとも第二段のマルチプレクサ266の出力、のいずれかを出力27に結合するように、構成設定することができる。セル20がパイプライン回路におけるパイプライン段の最終部分として機能できるように、出力信号をラッチするためのラッチ（図示されていない）をスイッチング段268に設けることができる。スイッチング段268は、ラッチした後またはラッチを行わずに信号を通過させるように構成設定可能であることが好ましい。
【００２０】
セル20は、選択された入力−出力機能が実施されるように設計者が構成設定できるように設計されている。プログラマブル・ロジック・ユニット24a〜24dと、入力回路22と、出力回路26と、キャリー・チェーン28のコンフィギュレーション・ビットをプログラムすることによって、セル20の機能を構成設定することができる。（コンフィギュレーション・ビットは、プログラミング経路（図示されていない）を介してロードされるコンフィギュレーション・メモリ（図示されていない）に格納される。プログラマブル・ロジック・デバイスのプログラミング経路とコンフィギュレーション・メモリは、いずれもそれ自体は公知である）。コンフィギュレーション・ビットは、どの信号入力21がどのプログラマブル・ロジック・ユニット24a〜24dに結合されるかを決定する。コンフィギュレーション・ビットは、プログラマブル・ロジック・ユニット24a〜24dが様々な入力信号値に応答してどの出力信号値を生成するかを決定する。コンフィギュレーション・ビットは、スイッチング段268がどの信号を信号出力27に渡すかを決定する。コンフィギュレーション・ビットは、キャリー入力29aからのキャリー入力信号がセル20に渡されるかを決定する。
【００２１】
動作時、ランダム・ロジック・モードとマルチ・ビット・オペランド処理モードとにおいて機能するように、セル20を構成設定することができる。マルチ・ビット・オペランド処理モードでの動作時、セル20は、複数ビットの入力オペランドによって決まる複数ビットの出力結果を出力する。各入力オペランドにおけるビットは、重みレベルが連続的に高くなる。このマルチ・ビット・オペランド・モードにおいては、各プログラマブル・ロジック・ユニット24a〜24dは、それぞれ異なる重みレベルに関連付けられる。入力回路22は、さまざまなオペランドのビットを表す信号を各プログラマブル・ロジック・ユニット24a〜24dに渡すように構成設定されており、この場合、各ビットは、プログラマブル・ロジック・ユニット24a〜24dに関連付けられている重みレベルに対応する。各プログラマブル・ロジック・ユニット24a〜24dは、これらの信号への応答として、プログラマブル・ロジック・ユニット24a〜24dに関連付けられている重みレベルにおける結果のビットを計算し、下位の重みレベルからのキャリー・チェーン28から受信された信号におけるキャリーを考慮し、より上位の重みレベルで使用するためのキャリー・アウトをキャリー・チェーンに供給する。マルチ・ビット・オペランド・モードにおいては、一般に、すべてのプログラマブル・ロジック・ユニット24a〜24dは、入力信号と出力信号との間に同じ関係が確立されるように構成設定される。出力回路26は、すべてのプログラマブル・ロジック・ユニット24a〜24dからの計算された結果のビットを、出力信号として並列に出力27に渡すように構成設定されている。
【００２２】
キャリー・チェーン28は、キャリー信号を計算し、それらのキャリー信号をプログラマブル・ロジック・ユニット24a〜24dの一つから別のユニットに渡す。キャリー・チェーン28のコンフィギュレーションは、キャリー信号を決定する目的でキャリー・チェーン28においてキャリー入力29aからのキャリー入力信号が使用されるかを制御する。セル20が、大きなオペランドの上位ビットである入力信号を処理する場合には、下位オペランドを処理する別のセルのキャリー出力信号を受信する目的でキャリー入力信号が使用されるように、セルが構成設定される。
【００２３】
図3は、図2に示されているタイプのセル20の二次元アレイを示している。このアレイは、セル20の行と列を持つ行列として編成されている。隣接するセルの信号入力、信号出力、キャリー入力、およびキャリー出力は、互いに結合されている。さらに、隣接しないセル30の間を結合できるように、バスが設けられている。（セルとバスとの間の接続は、図の明瞭性のみを目的として一組の交差線によって概略的に示されている）。このタイプのアレイにおいては、ランダム・ロジック機能とマルチ・ビット信号処理演算の任意の組み合わせを容易に実施することができる。
【００２４】
ランダム・ロジック・モードにおける動作時、セル20の出力信号は、複数の入力信号のランダム・ロジック機能である。このランダム・ロジック機能は、プログラマブル・ロジック・ユニット24a〜24dと、第一および第二段のマルチプレクサ264a, 264b, 266とを使用して実施されている。入力回路22は、プログラマブル機能ユニット24a〜24dのそれぞれに同じ入力信号を渡す。マルチプレクサ264a, 264b, 266は、別の入力信号の制御下で、プログラマブル・ロジック・ユニット24a〜24dのうち、出力信号がスイッチング段268に渡されるユニットを選択する。この場合、別の制御信号のうち最初の信号が、第一段のマルチプレクサ264a, 264bの両方を制御し、別の制御信号のうち二番目の信号が、第二段のマルチプレクサ266を制御する。マルチプレクサ266は、第一段のマルチプレクサ264a, 264bの出力の間で選択を行う。このように、プログラマブル・ロジック・ユニット24a〜24dの入力信号と、マルチプレクサ264a, 264b, 266を制御する別の入力信号との両方に依存するロジック機能が達成される。プログラマブル機能ユニット24a〜24dのそれぞれは、同じ入力信号に応答して出力信号を生成し、これらの各出力信号は、別の入力信号の異なる値に対する出力信号として使用される。スイッチング段268は、マルチプレクサ266からの結果の出力信号をセル20の信号出力に渡す。
【００２５】
キャリー・チェーン28は、ランダム・ロジック・モードにおいては外部キャリー入力信号が使用されないように構成設定されている。しかしながら、キャリー・チェーン28は、その実施に応じて、プログラマブル・ロジック・ユニット24a〜24dへの入力の特定の入力値において生じるキャリー信号を渡すことができる。この場合、入力値の特定の値に対してキャリー信号が存在することが考慮されるように、キャリー・チェーンの下流におけるプログラマブル・ロジック・ユニット24a〜24dの構成設定を適合化することができる。キャリー・チェーン28の代替の実施においては、マルチ・ビット・オペランド・モードにおける一つ下位のレベルからのキャリー信号、またはランダム・ロジック・モードにおける所定の信号（例：すべてのレベルに対して0）のいずれかを渡すマルチプレクサを、キャリー・チェーンに含めることができる。この実施例においては、信号に依存するキャリー信号の存在が考慮されるようにプログラマブル・ロジック・ユニット24a〜24dのコンフィギュレーションを適合化する必要はない。
【００２６】
従って、ランダム・ロジック・モードとマルチ・ビット・オペランド・モードとは対照的である。すなわち、ランダム・ロジック・モードにおいては、各プログラマブル・ロジック・ユニット24a〜24dは、同じ入力信号を受信し、それぞれが、多重化段260,262を制御する別の入力信号の異なる値に対して異なる（同じでもよい）入力−出力機能を提供する。これに対して、マルチ・ビット・オペランド・モードにおいては、プログラマブル・ロジック・ユニット24a〜24dは、異なる入力信号を受信するが、一般的に同じ入力−出力機能を提供する。
【００２７】
一方で、二つのマルチ・ビット・オペランド信号処理演算の複数の異なる重みレベルの計算を実施し、他方で、構造の一部として3ビット入力以上のランダム・ロジック機能を計算するため、選択的にプログラマブル・ロジック・ユニットを使用することによって、ランダム・ロジック機能とマルチ・ビット・オペランド信号処理の両方の実施をサポートするのに必要なコンフィギュレーション・ビットの数が最小になる。図2の例においては、四つの2入力プログラマブル・ロジック・ユニット24a〜24dを使用する場合、各ユニットはそれぞれ四個のコンフィギュレーション・ビットによって完全にプログラム可能であり、任意の4ビット入力ランダム・ロジック機能と、4つの重みレベルの任意の2オペランド信号処理演算とを同時に定義するのに、16個のビットで十分である。これとは対照的に、4ビット入力プログラマブル・ロジック・ユニット24a〜24dが使用される状況（ユニットが完全にプログラム可能であるためには各ユニットごとに16個のコンフィギュレーション・ビットが必要である）を考えてみる。このようなプログラマブル・ロジック・ユニットは、二つの重みレベルのマルチ・ビット・オペランド信号処理演算における計算を実行できるが、この場合、重みレベルあたり二倍の数のコンフィギュレーション・ビットが必要となる。
【００２８】
さらなる実施例においては、セル20は、3入力ビットの二つのランダム・ロジック機能の結果を生成するようにも構成設定できるように構成されている。この場合、出力回路26の第一段のマルチプレクサ264a, 264bの出力が、セルの出力として使用される。セル20は、マルチ・ビットの結果の四個のビットを渡すための四個の出力を持つため、マルチプレクサ264a, 264bの出力からのこれらの結果は、第二段のマルチプレクサ266からの出力信号と並列に渡すことができる。
【００２９】
このさらなる実施例においては、セル20は、二つのランダム・ロジック機能の入力信号がそれぞれ異なる入力21から送られるように構成設定できるように、あるいは、それぞれ異なる入力21から送られるように少なくとも選択できるように、構成されていることが好ましい。すなわち、二つのプログラマブル・ロジック・ユニット24a, 24bが入力信号の同じ対を受信し、他の二つのプログラマブル・ロジック・ユニット24c, 24dが入力信号の別の対を受信する。この目的のため、入力回路22は、これらの対がそれぞれ独立して選択されるように構成設定できるように構成されていることが好ましい。さらに、コンフィギュレーション・ビットの制御下で、出力回路26の第二段のマルチプレクサ266の制御信号が、第一段のマルチプレクサ264a, 264bの一方に送られる。従って、マルチプレクサ264a, 264bによる選択も、独立して選択されるビットによって制御される。この第三のモード（二つの3ビット入力ランダム・ロジック機能）におけるセル20の動作は、プログラマブル・ロジック・ユニット24a〜24dの一部が同じ信号を受信し、別の部分が別の信号を受信することと、二つの出力信号が生成されることとにおいて、ランダム・ロジック・モードとマルチ・ビット・オペランド・モードとの中間である。
【００３０】
図4は、プログラマブル・ロジック・ユニット40と、キャリー・チェーン42の一部の実施例を示す。プログラマブル・ロジック・ユニットは、LUTユニット400と、コンフィギュレーション・メモリ404と、第一排他的論理和ゲート402とを含んでいる。キャリー・チェーン42の部分は、第二排他的論理和ゲート420とマルチプレクサ422とを含んでいる。プログラマブル・ロジック・ユニット40の信号入力A, Bは、LUTユニット400の入力に結合されている。コンフィギュレーション・メモリ404も、LUTユニット400に結合されている。LUTユニット400の出力は、第一排他的論理和ゲート402の入力に結合されている。第一排他的論理和ゲート402の第2入力は、キャリー・チェーン42のキャリー入力に結合されており、第一排他的論理和ゲート402の出力は、プログラマブル・ロジック・ユニット40の出力を形成している。プログラマブル・ロジック・ユニット40の信号入力A, Bは、第二排他的論理和ゲート420の入力に結合されており、この第二排他的論理和ゲート420は、マルチプレクサ422の制御入力に結合されている出力を有する。マルチプレクサ422は、キャリー入力に結合されている入力と、プログラマブル・ロジック・ユニット40の信号入力の一方に結合されている入力とを有する。LUTユニット400とコンフィギュレーション・メモリ404との組み合わせは、コンフィギュレーション・ビット用として、多重化構造部を持つ複数のメモリ・セルとして実施することができる。この場合に、多重化構造は、信号入力からの信号の制御下で一つのメモリ・セルの出力を選択し、LUTユニット400からの選択されたメモリ・セルの内容を出力する。この目的には、従来の4ビットメモリ構造を使用することができる。コンフィギュレーション・メモリ404は、コンフィギュレーション・ビットを従来のコンフィギュレーション経路（図示されていない）を介してコンフィギュレーション・メモリ404にロードするための入力406を有する。
【００３１】
動作時、LUTユニット400は、構成設定可能な入力出力機能を実現する。LUTユニット400は、入力信号A, Bの可能な組み合わせそれぞれに応答して、入力信号によって選択されるそれぞれの出力信号を出力する。入力信号の各組み合わせには、コンフィギュレーション・メモリ404に格納されているコンフィギュレーション・ビットによって出力信号が割り当てられる。任意の可能な割り当てを構成設定可能にするためには、四個のコンフィギュレーション・ビットで十分である。排他的論理和ゲート402の動作により、キャリー入力信号がロジックローであるときには、LUTユニット400の出力信号のコピーがプログラマブル・ロジック・ユニットから出力され、キャリー入力信号がロジックハイであるときには、出力信号の反転コピーが出力される。キャリー出力信号は、キャリー入力信号と、プログラマブル・ロジック・ユニットの入力信号A, Bとから決定される。入力信号A, Bが等しいときには、マルチプレクサ422は一方の入力信号Aをキャリー出力信号として出力し、入力信号A, Bが等しくないときには、マルチプレクサ422はキャリー入力信号をキャリー出力信号として出力する。
【００３２】
明らかに、同じロジック機能を持つ、プログラマブル・ロジック・ユニットの代替実施例がいくつか存在する。例えば、代替実施例として、その入力において入力信号A, Bに加えてキャリー信号を受信し、構成設定可能な出力信号を生成する3入力LUTユニット（図示されていない）を使用して、プログラマブル・ロジック・ユニット40の機能を実施することができる。しかしながら、そのようなLUTユニットは、完全にプログラム可能であるためには八個のコンフィギュレーション・ビットが必要である。第一排他的論理和ゲート402を使用してキャリーを有効にすることにより、LUTユニット400における四個以下のコンフィギュレーション・ビットを用いて、任意の2ビット・ランダム・ロジック機能とキャリーを伴う信号処理演算の両方をプログラムすることが可能になる。同様に、キャリー出力信号の決定は、さらなるコンフィギュレーション・ビットを使用して、さらなるLUT（図示されていない）によって実施できる。しかしながら、たとえ配線式の回路によって実施する場合であっても、図4に示されている回路と同じ入力出力機能を持つロジック回路を使用して、キャリー信号の計算のいくつかの代替実施例が可能である。
【００３３】
図4の回路を使用する場合、排他的論理和機能を実行するようにLUTユニット400のコンフィギュレーション・ビットをプログラムすることによって、算術加算演算を実施することができる。加算以外の演算は、加算とは異なる方式でLUTユニット400をプログラムすることによって実施することができる。当然ながら、第一および第二オペランドの加算は、第一オペランドから第二オペランドの補数を減算することと同等であり、このとき、最下位レベルにおいてロジックハイのキャリー入力信号が使用される。
【００３４】
図5は、キャリー・チェーン42とプログラマブル・ロジック・ユニット40の組み合わせを、外部での補数の計算なしでの算術減算と、1ビットの乗算プラス累積（例：マルチ・ビット乗算におけるステップとして）とを実行するように適合化する目的で、いくつかの要素を加えた回路を示す。減算の実施は、LUTユニットおよび第二排他的論理和ゲートと、差し引く必要のあるオペランドのビットを受信する信号入力A, Bの一方との間に、排他的論理和ゲート50を加えることによって容易にされている。入力信号が論理的に反転されるように、排他的論理和ゲート50の入力の一方に減算制御信号が供給される。加算が必要なときには、減算制御信号は0に設定される。この目的には、セル20内のすべてのプログラマブル・ロジック・ユニットに対して共通の減算制御信号を使用することができる。減算信号は、セル20のコンフィギュレーション・ビットによって、または外部のセル20からの信号によって制御することができる。減算の場合、最下位レベルに関連付けられているプログラマブル・ロジック・ユニットにロジックハイのキャリー入力信号が供給される。
【００３５】
乗算プラス累積の実施は、LUTユニットおよび第二排他的論理和ゲートと、乗算する必要のあるオペランドのビットを受信する信号入力A, Bの一方との間に、ANDゲート52を追加し、このANDゲートの一方の入力に係数信号を供給することによって、サポートされる。この目的には、セル20内のすべてのプログラマブル・ロジック・ユニットに対して共通の係数信号を使用することができる。加算が必要なときには、係数信号は1に設定される。
【００３６】
図示されているように、ANDゲート52と排他的論理和ゲート50は、組み合わせて設けることができるが、当然ながら、減算または乗算が必要ないときには省くことができる。また、理解される点として、乗算と減算を代替の方法で、すなわち、回路内における排他的論理和ゲート50の位置が異なっている、および/または、LUTユニット400の構成設定が異なっている、同等の回路によって実施することができる。例えば、プログラマブル・ロジック・ユニット40におけるコンフィギュレーション・ビットが、減算の場合に排他的論理和ゲート50の効果が存在しないことに適合化されているならば、排他的論理和ゲート50を入力回路の出力とキャリー・チェーン42の入力との間に結合し、入力回路の出力を、排他的論理和ゲート50を通過させずにプログラマブル・ロジック・ユニット40に結合することができる。しかしながら、この場合、加算から減算に切り替えるときに、プログラマブル・ロジック・ユニットのコンフィギュレーションを変更する必要がある。
【００３７】
図6は、セル20のキャリー・チェーン60を詳細に示している。キャリー・チェーン60は、入力マルチプレクサ62と、キャリー入力コンフィギュレーション・メモリ64と、選択コンフィギュレーション・メモリ66と、複数のキャリー・ロジック・ユニット68a〜68dとを含んでいる。セル20のキャリー入力とキャリー入力コンフィギュレーション・メモリ64は、マルチプレクサ62の信号入力に結合されている。選択コンフィギュレーション・メモリ66は、マルチプレクサ62の制御入力に結合されている。マルチプレクサ62の出力は、キャリー・ロジック・ユニット68a〜68dのカスケードに結合されており、キャリー・ロジック・ユニット68a〜68dは、プログラマブル・ロジック・ユニット24a〜24dのそれぞれの入力A, Bに結合されている入力と、これらのプログラマブル・ロジック・ユニット24a〜24dに結合されている出力とを有する。キャリー入力コンフィギュレーション・メモリ64と選択コンフィギュレーション・メモリ66の内容は、コンフィギュレーション経路（図示されていない）を介してプログラム可能である。
【００３８】
動作時、選択コンフィギュレーション・メモリ66は、外側のセル20からのキャリー入力信号を使用することと、キャリー入力コンフィギュレーション・メモリ64からのキャリー入力内容を使用することとの間で選択を行う。後者が選択されるのは、セルの動作のランダム・ロジック・モードのときと、マルチ・ビット・オペランド・モードにおいて、セル20がマルチ・ビット・オペランドの最下位ビットを処理する必要があるときである。キャリー入力コンフィギュレーション・メモリ64からのキャリー入力内容は、目的のマルチ・ビット・オペランド演算の必要性、または、ランダム・ロジック演算での該当するレベルに応じて設定される。後者の場合、プログラマブル・ロジック・ユニット24a〜24dのそれぞれが同じ入力信号A, Bを受信するときには、プログラマブル・ロジック・ユニット24a〜24dは、キャリー・チェーンからのキャリー信号の効果が考慮されるようにプログラムされる。
【００３９】
図6aは、代替のキャリー・チェーンを示しており、キャリー・ロジック・ユニット68a〜68dが、構成設定可能なキャリー抑圧回路を使用して実施されている。キャリー抑圧回路は、例えばマルチプレクサ69b〜69dであり、キャリー・ロジック回路68a〜68cのキャリー出力をプログラマブル・ロジック・ユニット（図示されていない）のキャリー信号入力に結合するか、または、所定の信号値の供給元（例：コンフィギュレーション・メモリ64）または配線結合されているロジック0をプログラマブル・ロジック・ユニットのキャリー信号入力に結合する。このキャリー抑圧回路は、回路がランダム・ロジック・モードで動作するかまたはマルチ・ビット・オペランド・モードで動作するかを制御するコンフィギュレーション・ビットによって制御される。回路がランダム・ロジック・モードに構成設定されているとき、キャリー抑圧回路は、プログラマブル・ロジック・ユニットに送られるキャリー信号を、所定のロジックレベルを持つ信号に置き換える。従って、ランダム・ロジック・モードにおいては、セル20はキャリー伝播によって影響されない。これにより、回路がより高速になり、出力信号におけるグリッチが生じにくくなる。この場合、ランダム・ロジック・モードのとき、プログラマブル・ロジック・ユニット24a〜24dは、いずれも、その所定のキャリー入力信号が与えられたときに同じロジック機能を実行するようにプログラムされる。マルチプレクサ69b〜69dは、キャリー・チェーンとプログラマブル・ロジック・ユニットとの間に示されているが、当然ながら、これらのマルチプレクサを連続するキャリー・ロジック回路68a〜68dの間の経路に含めることもできる。この場合、これらのキャリー・ロジック回路68a〜68dも、キャリー伝播によって影響されない。
【００４０】
マルチプレクサ機能は、相対的に多数の入力を必要とする。最小限のマルチプレクサでは、三つの入力（信号用に二つと制御用に一つ）が必要である。四通りのマルチプレクサ(four way multiplexer)では、六つの入力が必要である。入力の数が多いため、マルチプレクサ機能を実施するようにプログラマブル・セルを構成設定することは、通常は非効率的である。
【００４１】
図6bは、図6aのキャリー・チェーンの変型であり、セルをマルチプレクサとして構成設定することをサポートする回路を示す。マルチプレクサ62, 69b〜69dのそれぞれの入力に、排他的論理和ゲート600とANDゲート602のカスケードが追加されている。排他的論理和ゲート600のそれぞれの入力は、それぞれの信号入力A, Bに結合されており、排他的論理和ゲートの出力は、それぞれのANDゲート602の入力に結合されている。ANDゲートの出力は、図6aにおいては所定の信号を受信していたマルチプレクサ62, 69b〜69dの第一入力に結合されている。ANDゲートの第二入力は、共通の補助入力604に結合されている。
【００４２】
動作時、排他的論理和ゲート600とANDゲート602は、セルをマルチプレクサとして構成設定することをサポートする。セルがマルチプレクサとして構成設定されているときには、その動作は、マルチ・ビット・オペランド・モードにおける動作とランダム・ロジック・モードにおける動作の混合である。入力回路22は、マルチ・ビット・オペランド・モードの場合のように、異なる入力信号をプログラマブル機能ユニット24a〜24dのそれぞれに渡す。各プログラマブル・ロジック・ユニットは、マルチ・ビット・オペランド・モードの場合のように、同じロジック機能を実施するように構成設定される。マルチプレクサ264a, 264b, 266は、ランダム・ロジック・モードの場合のように、別の入力信号の制御下で、プログラマブル・ロジック・ユニット24a〜24dのうち、出力信号がスイッチング段268に渡されるユニットを選択する。プログラマブル・ロジック・ユニット24a〜24dのそれぞれは、補助入力604における信号の制御下で2:1のマルチプレクサ機能を実施する。この目的のため、プログラマブル・ロジック・ユニットは、入力信号A, Bのうちの一方（例えばA）の値をそれぞれの出力において複製するように構成設定されている。補助入力604における信号が0であるときには、この信号は排他的論理和ゲート402の出力に渡される。補助入力604における信号が1であるときには、（排他的論理和ゲート600によって伝えられるように）入力信号AとBが等しくない場合に、排他的論理和ゲート402の出力における信号が反転され、すなわち、信号Aのコピーが反転されて信号Bと等しくなる。全体として、排他的論理和ゲート402の出力信号は、
出力=EXOR(A,C*EXOR(A,B))
である。この式において、Cは補助入力604における信号である。これは2:1マルチプレクサ機能である。マルチプレクサ264a, 264b, 266による選択との組み合わせにおいて、8:1、または一対の4:1マルチプレクサ機能が達成される。都合よいことに、キャリー・チェーン42の排他的論理和ゲート420を使用して、排他的論理和ゲート600の機能を実行することができる。補助入力604における信号としては、セルの入力信号を使用することができ、あるいは、加算または減算を選択するのに使用される制御信号を使用することができる。
【００４３】
当然ながら、プログラマブル・ロジック・ユニットの構成設定を使用して、多重化機能と何らかのロジック演算（例：A入力とB入力の役割りを切り替える）とを組み合わせることができる。
【００４４】
図7は、入力回路70を示す。入力回路70は、セル20の入力に結合されている複数の入力72と、プログラマブル・ロジック・ユニット24a〜24dの入力とセル20の出力回路内のマルチプレクサの入力とに結合されている複数の出力74とを有する。入力72と出力74は、二層のスイッチング回路76, 78を介して結合されている。これらのスイッチング回路は、各スイッチング回路76, 78の中に二つのマルチプレクサ760を使用して実施することができ（一つのみが詳しく示されている）、各マルチプレクサ760は、スイッチング回路の各入力と各出力とを構成設定できるように結合している。入力回路70は、出力段のマルチプレクサ264a, 264b, 266に送られる入力信号を選択するための第三のマルチプレクサ（図示されていない）も含んでいる。スイッチング回路76, 78と第三のマルチプレクサの動作は、コンフィギュレーション・メモリ（図示されていない）からのコンフィギュレーション・ビットによって制御される。
【００４５】
層76, 78は、いずれも、スイッチング回路76, 78のグループとして編成されており、各スイッチング回路は、それぞれの一対の入力をそれぞれの一対の出力に結合している。両方の層76, 78は、各グループ内のスイッチング回路76, 78が、一対の入力のそれぞれからの信号を一対の出力の両方にコピーすることと、一対の入力のそれぞれからの信号を一対の出力のそれぞれに結合することとの間で構成設定可能なように切り替えることができるように、構成されている。層76, 78は、直列に結合されており、第一層の対のスイッチング回路76からの出力が、第二層78の対のスイッチング回路78の入力に交差状に結合されている。この結果として、層76, 78は、四つ組の入力72をそれぞれの四つ組の出力74に結合し、四つ組の入力72のそれぞれからの信号を、対応する四つ組の出力74における出力すべてにコピーすることと、四つ組の入力のそれぞれを、四つ組の出力のそれぞれに結合すること、との間で構成設定可能なように切り替えることができる。
【００４６】
コンフィギュレーション・メモリの内容が、入力回路のマルチプレクサの切り替えを制御するように、セル20は、スイッチング回路76, 78の制御入力に結合されているコンフィギュレーション・メモリ（図示されていない）を有する。コンフィギュレーション・メモリは、少なくとも、ランダム・ロジック・モードとマルチ・ビット・オペランド・モードとの間で選択を行う。ランダム・ロジック・モードにおいては、スイッチング回路76, 78は、二つの入力72からの信号がプログラマブル・ロジック・ユニットのそれぞれの入力にコピーされるように制御され、かつ、第三のマルチプレクサ（図示されていない）は、別の入力からの信号が出力回路のマルチプレクサの制御入力に結合されるように制御される。マルチ・ビット・オペランド・モードにおいては、スイッチング回路76, 78は、入力72のそれぞれが出力74のそれぞれに結合されるように制御される。原理的には、これら二つのモードの間で選択を行うためには一つのコンフィギュレーション・ビット用のメモリで十分であるが、ランダム・ロジック・モードにおいてどの入力がすべてのプログラマブル・ロジック・ユニットにコピーされるかを選択する追加のコンフィギュレーション・ビット用のメモリが設けられていることが好ましい。後者の場合、五つのコンフィギュレーション・ビットを使用することができる。すなわち、マルチ・ビット・オペランド・モード（一対一の信号転送）とランダム・ロジック・モード（四回のコピー）との間で選択を行うための一つのコンフィギュレーション・ビットと、2×2のコンフィギュレーション・ビットであって、それぞれ、四つの入力のうち各プログラマブル・ロジック・ユニットの入力に結合される一つの入力を選択するためのコンフィギュレーション・ビットである。
【００４７】
第三のマルチプレクサ（図示されていない）は、出力回路26のマルチプレクサの段の制御入力にどの入力からの信号が送られるかを選択する。それぞれが、出力回路26のそれぞれの段を制御するための入力信号を選択する二つの第三マルチプレクサを設けることが好ましい。
【００４８】
原理的には、セルの信号入力は、例えば四つの信号入力のグループに編成することができ、この場合、一つのグループの各信号入力が、そのグループに対応するマルチ・ビット・オペランドのそれぞれのビットを供給する。ランダム・ロジック・モードとマルチ・ビット・オペランド・モードとをサポートするためには、ロジック入力のグループの対からの入力信号を渡して、各プログラマブル・ロジック・ユニットが対の両方のグループからの信号を受信するようにすることと、一連の入力のコピーをすべてのプログラマブル・ロジック・ユニットに渡すこととの間で選択を行う、一つのコンピュータビットがセルに設けられていれば十分である。グループまたはセットを選択するための追加のコンフィギュレーション・ビットを設けることができる。
【００４９】
このコンテキストにおいては、四つのプログラマブル・ロジック・ユニットを有するセルが特に有利である。なぜなら、この場合にはランダム・ロジック機能の入力信号の数と、マルチ・ビット・オペランドにおけるビットの数とが同じであるためである。このことは、オペランドに対応する各グループを、ランダム・ロジック関数の場合の入力のセットとして選択することもできることを意味する。マルチ・ビット・オペランド・モードにおいてグループを選択するためのコンフィギュレーション・ビット（存在時）は、ランダム・ロジック・モードにおけるグループを選択する目的で使用することができる。この場合、ランダム・ロジック・モードにおいて使用される追加のコンフィギュレーション・ビットは、一つで、すなわち、マルチ・ビット・オペランド・モードにおいてオペランドとして使用されるグループのうち、ランダム・ロジック機能の入力のセットとして使用されるグループを選択するためのコンフィギュレーション・ビットで、十分である。
【００５０】
理解される点として、上記に説明されているセルは、プログラマブル・ロジック・ユニットにおいて使用されているときに、異なるビットレベル間のキャリー信号を伴うマルチ・ビット・オペランド信号処理演算と、4ビット入力ランダム・ロジック機能とを実行するように、回路を構成設定することが可能となる。また、二つの3ビット入力ランダム・ロジック機能の構成設定もサポートすることができる。動作のモードを選択するためには、少数のコンフィギュレーション・ビットで十分である。4ビット入力ランダム・ロジック機能とマルチ・ビット信号処理演算の両方を定義するためには、16個のコンフィギュレーション・ビットで十分である。
【００５１】
しかしながら、セル20には、同様の構成設定能力を可能にする多数のバリエーションが可能であることが理解されるであろう。例えば、より多数の2ビット入力プログラマブル・ロジック・ユニット24a〜24dを持つセルを使用することができ、例えば、八つのこのようなユニットとマルチプレクサとを有するセルを使用でき、この場合にマルチプレクサは、三つの入力信号の制御下で八つのプログラマブル・ロジック・ユニットの一つの出力を選択する。従って、例えば、8ビットのマルチ・ビット信号処理演算を使用することができる。
【図面の簡単な説明】
【００５２】
【図１】先行技術のプログラマブル・ロジック・セルを示す。
【図２】本発明によるプログラマブル・ロジック・セルを示す。
【図３】ロジック・セルのアレイを示す。
【図４】プログラマブル・ロジック・ユニットと、キャリー・チェーンの一部とを示す。
【図５】図4の回路の変型を示す。
【図６】キャリー・チェーンを示す。
【図６ａ】代替のキャリー・チェーンを示す。
【図６ｂ】別の代替のキャリー・チェーンを示す。
【図７】入力回路を示す。
【符号の説明】
【００５３】
10  メモリ
12  キャリー回路
14  排他的論理和ゲート
20  プログラマブル・ロジック・セル
21  信号入力
22  入力回路
24a〜24d  プログラマブル・ロジック・ユニット
26  出力回路
27  信号出力
28  キャリー・チェーン
29a  キャリー入力
29b  キャリー出力
264a, 264b, 266  マルチプレクサ
268  スイッチング段
40  プログラマブル・ロジック・ユニット
42  キャリー・チェーン
50  排他的論理和ゲート
52  ANDゲート
400  LUTユニット
402  第一排他的論理和ゲート
404  コンフィギュレーション・メモリ
406  入力
420  第二排他的論理和ゲート
422  マルチプレクサ
60  キャリー・チェーン
62  入力マルチプレクサ
64  キャリー入力コンフィギュレーション・メモリ
66  選択コンフィギュレーション・メモリ
68a〜68d  キャリー・ロジック・ユニット
69b〜69d  マルチプレクサ
600  排他的論理和ゲート
602  ANDゲート
604  補助入力
70  入力回路
72  入力
74  出力
76, 78  スイッチング回路
760  マルチプレクサ
【図１】
2005532756.tif 000003
【図２】
2005532756.tif 000004
【図３】
2005532756.tif 000005
【図４】
2005532756.tif 000006
【図５】
2005532756.tif 000007
【図６】
2005532756.tif 000008
【図６ａ】
2005532756.tif 000009
【図６ｂ】
2005532756.tif 000010
【図７】
2005532756.tif 000011
【国際調査報告】
2005532756.tif 000012
2005532756.tif 000013
2005532756.tif 000014
2005532756.tif 000015