(57)【特許請求の範囲】
【請求項１】
アレイの行と列とに配列された複数の複合論理ブロック（ＣＬＢ）と、
該アレイの該複数のＣＬＢを相互に接続する複数のＣＬＢ間ラインと
を含む、プログラマブルロジックデバイスであって、
該複数のＣＬＢの各ＬＣＢは論理セルの第一スライスと論理セルの第二スライスとを有し、該アレイの所与の列における該複数のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは、それぞれ、第一搬送チェインと第二搬送チェインによって相互に接続され、
該複数の論理セルのうちの第一論理セルは、
該第一論理セルに与えられる入力のセットに論理機能を移植するための一個以上のルックアップテーブルと、
搬入信号を受信し、該第一搬送チェインの一部を形成する搬出信号を生成するように構成された算術論理回路と、
登録出力を生成するように構成された第一出力レジスタと、
該第一論理セルに与えられる入力セットのうちの１つ、または該第一論理セルにおける１つ以上のルックアップテーブルへの登録出力のいずれかを選択するように構成された入力マルティプレクサと
を含む、プログラマブルロジックデバイス。
【請求項２】
前記第一レジスタの登録出力と前記入力マルティプレクサとの間に結合されたレジスタフィードバック経路をさらに備える、請求項１に記載のプログラマブルロジックデバイス。
【請求項３】
１つ以上のルックアップテーブルを有する論理セルの第二論理セルをさらに備え、該第二論理セルの該１つ以上のルックアップテーブルが、レジスタフィードバック経路を介して前記第一論理セルの第一出力レジスタの登録出力をプログラミング可能に受信するように構成される、請求項２に記載のプログラマブルロジックデバイス。
【請求項４】
アレイの行と列とに配列された複数の複合論理ブロック（ＣＬＢ）と、
該アレイの該複数のＣＬＢを相互に接続する複数のＣＬＢ間ラインと
を含む、プログラマブルロジックデバイスであって、該複数のＣＬＢの各ＣＬＢは、論理セルの第一スライスと論理セルの第二スライスとを有し、該アレイの所与の列における該複数のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとはそれぞれ、第一搬送チェインと第二搬送チェインによって相互に接続され、
該論理セルのうちの第一論理セルは、
該第一論理セルに与えられる入力の第一セットに論理機能を移植するための第一ルックアップテーブルと、
該第一論理セルに与えられる入力の第二セットに論理機能を実装するための第二ルックアップテーブルであって、該入力の第一セットと該入力の第二セットとは同様の入力を含むが、該入力の第一セット及び該入力の第二セットの入力のうちの少なくとも１つは異なる、第二ルックアップテーブルと、
登録出力を生成するように構成された第一出力レジスタと、
該第一論理セルに与えられる入力の第二セットのうちの１つ、または該第一論理セルにおける該第二ルックアップテーブルへの登録出力のいずれかを選択するように構成された選択マルティプレクサと
を含む、プログラマブルロジックデバイス。
【請求項５】
前記入力の第一セットが（Ｄ１Ａ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を含み、前記第一ルックアップテーブルが論理機能Ｆ１（Ｄ１Ａ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を生成し、前記入力の第二セットが（Ｄ１Ｂ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を含み、前記第二ルックアップテーブルが論理機能Ｆ２（Ｄ１Ｂ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を生成する、請求項４に記載のプログラマブルロジックデバイス。
【請求項６】
前記入力の第一セットが（Ｄ１Ａ，Ｄ２Ａ，Ｄ３，Ｄ４，Ｄ５）を含み、前記第一ルックアップテーブルが論理機能Ｆ１（Ｄ１Ａ，Ｄ２Ａ，Ｄ３，Ｄ４，Ｄ５）を生成し、前記入力の第二セットが（Ｄ１Ｂ，Ｄ２Ｂ，Ｄ３，Ｄ４，Ｄ５）を含み、前記第二ルックアップテーブルが論理機能Ｆ２（Ｄ１Ｂ，Ｄ２Ｂ，Ｄ３，Ｄ４，Ｄ５）を生成する、請求項４に記載のプログラマブルロジックデバイス。
【請求項７】
前記第一ルックアップテーブルが、５−入力ルックアップテーブルであり、前記第二ルックアップテーブルもまた、５−入力ルックアップテーブルであり、前記第一論理セルが、該第一ルックアップテーブルの出力及び該第二ルックアップテーブルの出力を受信するように構成されたルックアップテーブル出力マルティプレクサと、該ルックアップテーブル出力マルティプレクサの出力を制御するための第六入力とをさらに備える、請求項４に記載のプログラマブルロジックデバイス。
【請求項８】
前記入力の第一セットのうちの選択された１つの入力と第六入力とに結合されるプログラマブル選択マルティプレクサをさらに備え、該プログラマブル選択マルティプレクサは、該入力の第一セットのうちの選択された１つの入力または該第六入力のいずれかを前記第一ルックアップテーブルへの入力としてプログラマブルに選択するように構成される、請求項７に記載のプログラマブルロジックデバイス。
【請求項９】
前記プログラマブル選択マルティプレクサとルックアップテーブルマルティプレクサとを制御するための使用される構成可能ビットをさらに備え、前記第六入力が前記第一ルックアップテーブルへの入力として選択された場合、前記ルックアップテーブル出力マルティプレクサが前記第二ルックアップテーブルを選択するように構成される、請求項８に記載のプログラマブルロジックデバイス。
【請求項１０】
前記第一論理セルへの第七入力と、選択マルティプレクサとをさらに備え、該選択マルティプレクサは、該第七入力または前記入力の第二セットのうちの１つの入力のいずれかを前記第二ルックアップテーブルへ選択的に与えるように構成される、請求項７に記載のプログラマブルロジックデバイス。
【請求項１１】
アレイの行と列とに配列された複数の複合論理ブロック（ＣＬＢ）と、
該アレイの該複数のＣＬＢを相互に接続する複数のＣＬＢ間ラインと
を含む、プログラマブルロジックデバイスであって、該複数のＣＬＢの各ＣＬＢは、論理セルの第一スライスと論理セルの第二スライスとを有し、該アレイの所与の列における該複数のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは、それぞれ、第一搬送チェインと第二搬送チェインによって相互に接続され、
該論理セルのうちの第一論理セルは、
該第一論理セルに与えられる入力のセットに論理機能を移植するための１つ以上のルックアップテーブルと、
搬入信号を受信し、該第一搬送チェインの一部を形成する搬出信号を生成し、第一ＳＵＭ信号と第二ＳＵＭ信号とを生成するように構成された算術論理回路と、
登録出力を生成するように構成された少なくとも１つのレジスタと、
該第一論理セルに与えられる入力のセットのうちの１つの入力、または該第一論理セルにおける該１つ以上のルックアップテーブルへの登録出力のいずれかを選択するように構成された入力マルティプレクサと
を含む、プログラマブルロジックデバイス。
【請求項１２】
前記少なくとも１つのレジスタは、第一ＳＵＭ信号を受信する第一出力レジスタと第二ＳＵＭ信号を受信する第二出力レジスタとを備える、請求項１１に記載のプログラマブルロジックデバイス。
【請求項１３】
前記算術論理回路が第一ルックアップテーブルから最初の２つの信号を加えることにより前記第一ＳＵＭ信号を、第二ルックアップテーブルから二番目の２つの信号を加えることにより前記第二ＳＵＭ信号を生成する、請求項１２に記載のプログラマブルロジックデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
（１．発明の技術分野）
この発明は一般的には複合論理ブロック（ＣＬＢ＝コンプレクスロジックブロック）に基づくプログラマブルロジックデバイス（ＰＬＤ）に関し、殊に各々が改良された論理、登録、演算、ロジックパッキング及びタイミング機能と能力を持つ一個以上の論理セルを有する複数のスライスを含むＣＬＢに関する。
【背景技術】
【０００２】
（２．関連技術の説明）
プログラマブルロジックデバイス（ＰＬＤ）とは固定した論理回路を含み各種の論理機能を果たすようにプログロム可能な半導体集積回路のことである。半導体産業に於いてＰＬＤが益々ポピュラになって居るのには、多くの理由がある。チップ製造技術の進歩によって、特定用途向け集積回路（ＡＳＩＣ）の設計は極めて複雑化されて居る。この複雑化により、設計費のみか、特定用途向けの設計開発に要する時間も増大して居る。事態悪化の要素として、製品の有効期間は急速に短縮して居る。その結果、元の設備製造者（ｏｒｉｇｉｎａｌ  ｅｑｕｉｐｍｅｎｔ  ｍａｎｕｆａｃｔｕｒｅｒｓ（ＯＥＭｓ）がＡＳＩＣを設計したり使用したりすることがしばしば繰り返し実行不適当となり、ＯＥＭｓは益々ＰＬＤを頼ることになる。製造技術での同様な進歩の結果として、密度と運転速度が改良されたＰＬＤがある。洗練されたプログラミングソフトウエアによって、ＰＬＤ用に複雑な論理機能が急速に開発可能となって居る。しかも、論理設計は一般に或る世代のＰＬＤから次の世代へとの移行が容易であり、これで開発費はより軽減される。価格性能間のＡＳＩＣとのギャップの狭まりとか製品開発に要する時間の短縮により、ＯＥＭｓにとってＰＬＤの使用は余儀ないことになる。
【０００３】
大部分のＰＬＤは，二次元的に配列された論理ブロックで構成されて居る。典型的に長さと速度の異なる行と列の論理ブロック間の線で、論理ブロックの配列間の信号とクロックの連結を行う。市売のＰＬＤの一種に於いて、この論理ブロックは、コンプレクスロジックブロックス（Ｃｏｍｐｌｅｘ  Ｌｏｇｉｃ  Ｂｌｏｃｋｓ（ＣＬＢｓ））と呼ばれて居る。各ＣＬＢは一対のスライスを含んで居る。各ＣＬＢの中の二枚のスライスは互いに直接接続せず、異なる行に備えてある。しかし、各行の中のスライスは上下のＣＬＢのスライスに接続して、独立した運搬連鎖を構成する。例えば、第一と第二行の各スライスは前のＣＬＢから搬入（Ｃｉｎ）信号を受信し、次のＣＬＢへの搬出信号を生成する。
【０００４】
各スライスは典型的には４個の論理セル（以下単に「セル」と呼ぶ）を有する。各セルは、通常ルックアップテーブル（ＬＵＴ）と呼ばれる６−入力論理機能生成機、Ｃｉｎ及びＣｏｕｔ搬出入信号を受信及び生成する算術回路、登録された出力を生成するための出力レジスタ、未登録用出力、及びＲＯＭ機能を果たす記憶要素とから成る。このＬＵＴは単一の６−入力ＬＵＴとして構成してもよく、同一の入力（例えばＡ１−Ａ５）を受信する２個の５−入力ＬＵＴで構成してもよい。
【０００５】
スライスを有するＰＬＤに基づくＣＬＢに関する詳細については、Ｘｉｌｉｎｘ  Ｃｏｒｐｏｒａｔｉｏｎ，Ｓａｎ  Ｊｏｓｅ，Ｃａｌｉｆｏｒｎｉａ発行による非特許文献１を参照されたく、同文献は総ての目的に於いて本出願に参照により組み込まれるものとする。
【０００６】
上記のセルに関する問題点は、順応性のないこと、論理の実行、種々の登録、算術機能に関する制限、論理機能をセル内に能率よくパッキングするための順応性の欠如などである。
【０００７】
そのため、改良された論理、レジスタ、算術、論理パッキング、及びタイミングの機能と能力を持った１個以上の論理セルを有するスライスを定義するＣＬＢを有するＰＬＤが必要とされて居る。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Ｘｉｌｉｎｘ  Ｃｏｒｐｏｒａｔｉｏｎ、「Ｖｉｒｔｅｘ−５  Ｕｓｅｒ  Ｇｕｉｄｅ」，ＵＧ１９０  （ｖ３．０）、２００７年２月２日、１５５−１８１
【発明の概要】
【課題を解決するための手段】
【０００９】
（発明の簡単な説明）
改良された論理、レジスタ、算術、論理パッキング、及びタイミングの機能と能力を持った論理セルを有するＣＬＢに基づくＰＬＤを開示する。ＰＬＤのＣＬＢは行と列に配置されて居り、複数の接続線によって互いに接続されて居る。複数のＣＬＢの各々は論理セルの第１スライスと論理セルの第２スライスとから成り、これらは夫々第１行と第２行とに配置されて居る。スライスの各行の各論理セルの間に第１と第２の運搬連鎖がある。少なくとも１個の論理セルには、その論理セルと、搬入信号を受信し、第１運搬連鎖の搬出信号形成部を生成するように構成された算術論理回路とに供給される入力に論理機能を移植する為の１個以上のルックアップテーブルが含まれる。一実施例に於いては、論理セルが第１出力レジスタと第２出力レジスタを更に含み、論理セルによって生成された出力はこれら第１と第２の出力レジスタの間に分割される。別の実施例に於いては、レジスタの中の１個の出力はレジスタフィードバック接続を通じてセルのルックアップテーブルの一つへの入力として供給される。更に別の実施例に於いては、第１と第２のルックアップテーブルに供給される入力は異なって居り、各セルが同じ内容の入力ではなく、相違する入力に対して論理機能を実行するため、高程度の論理効率とパッキングが可能となる。最後に別の実施例として、算術論理回路は２個のＳＵＭ出力信号が生成可能である。
【００１０】
本発明はさらに、例えば、以下を提供する。
（項目１）
プログラマブルロジックデバイスと論理セルの中の一個とから成る装置であって、
プログラマブルロジックデバイスはアレイの行と列とに配列された複数のＣＬＢとアレイのＣＬＢを互いに接続する複数のＣＬＢ間ラインとを含み、複数のＣＬＢの各々は論理セルの第一スライスと論理セルの第二スライスを有し、アレイに於ける一つの行のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは夫々第一搬送チエインと第二搬送チェインによって互いに接続されて居り、
上記論理セルのなかの一個は、上記一個の論理セルに与えられる入力のセットに論理機能を移植するための一個以上のルックアップテーブルと、搬入信号を受信し、第一搬送チェインの一部を成す搬出信号を生成するように構成された算術論理回路と、第一出力レジスタと、第二出力レジスタとを含み、論理セルによって生成される出力のセットは第一出力レジスタと第二出力レジスタの間に分割されて居るものである、装置。
（項目２）
上記出力のセットが、（１）上記一個の論理セルの１個以上のルックアップテーブルからの出力；（２）上記一個の論理セルの算術論理回路からの合計出力；（３）上記一個の論理セルの算術信号により生成される搬出信号；及び（４）上記一個の論理セルの１個以上のルックアップテーブルへ与えられる入力のセットの中の一個の中から選ばれる一個以上から成るものである、項目１に記載の装置。
（項目３）
更に、第一出力レジスタと第二出力レジスタの間に組み込まれたスキャンーチェインを有する、項目１に記載の装置。
（項目４）
スキャンーチェインが更にアレイの上記の行の上下の論理セルに互いに接続されている、項目３に記載の装置。
（項目５）
更に、第一レジスタに第一入力を選択する第一マルティプレクサと、第二レジスタに第二入力を選択する第二マルティプレクサとから成る、項目１に記載の装置。
（項目６）
更に、第一レジスタの出力と第二レジスタの入力の間に、第二マルティプレクサを通じて組み込まれたスキャンーチェインを有する、項目５に記載の装置。
（項目７）
ＣＬＢの論理セルの第一スライスが第一スキャンチェインにより相互に接続され、ＣＬＢの論理セルの第二スライスが第二スキャンチェインにより相互に接続されて居る、項目６に記載の装置。
（項目８）
複数のＣＬＢの各々の第一スライスと第二スライスが夫々４個の論理セルを有する、項目１に記載の装置。
（項目９）
複数のＣＬＢの第一スライスと第二スライスの４個の論理セルの各々が、１個以上のルックアップテーブル、算術論理回路の中の一つ、第一出力レジスタ、及び第二出力レジスタを含むものである、項目１に記載の装置。
（項目１０）
プログラマブルロジックデバイスと論理セルの中の一個とから成る装置であって、
プログラマブルロジックデバイスはアレイの行と列とに配列された複数のＣＬＢとアレイのＣＬＢを互いに接続する複数のＣＬＢ間ラインとを含み、複数のＣＬＢの各々は論理セルの第一スライスと論理セルの第二スライスを有し、アレイに於ける一つの行のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは夫々第一搬送チエインと第二搬送チェインによって互いに接続されて居り、
上記論理セルのなかの一個は、上記一個の論理セルに与えられる入力のセットに論理機能を移植するための一個以上のルックアップテーブルと、搬入信号を受信し、第一搬送チェインの一部を成す搬出信号を生成するように構成された算術論理回路と、登録出力を生成するように構成された第一出力レジスタと、上記論理セルに与えれる入力セットの中の一つ、或は上記一個の論理セルの中の一個以上のルックアップテーブルへの登録出力を選択するように構成された入力マルティプレクサとを含むものである、装置。
（項目１１）
更に、第一レジスタの登録出力と入力マルティプレクサの間に組み込まれたレジスタフィードバック路から成る、項目１０に記載の装置。
（項目１２）
更に、一個以上のルックアップテーブルを有する第二の論理セルから成り、第二の論理セルの上記１個以上のルックアップテーブルが、レジスタフィードバック路を通じて上記一個の論理セルの第一レジスタの登録出力をプログラミング可能に受信するように構成されたものである、項目１１に記載の装置。
（項目１３）
プログラマブルロジックデバイスと論理セルの中の一個とから成る装置であって、
プログラマブルロジックデバイスはアレイの行と列とに配列された複数のＣＬＢとアレイのＣＬＢを互いに接続する複数のＣＬＢ間ラインとを含み、複数のＣＬＢの各々は論理セルの第一スライスと論理セルの第二スライスを有し、アレイに於ける一つの行のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは夫々第一搬送チエインと第二搬送チェインによって互いに接続されて居り、
上記論理セルのなかの一個は、上記一個の論理セルに与えられる入力の第一セットに論理機能を移植するための第一ルックアップテーブルと、上記一個の論理セルに与えられる入力の第二セットに論理機能を実装するための第二ルックアップテーブルとを含み、上記入力の第一セットと第二セットとは同様な入力を含むが、第一セットと第二セットの入力の少なくとも一つは異なるものである、
装置。
（項目１４）
入力の第一セットが（Ｄ１Ａ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を含み、第一ルックアップテーブルが機能Ｆ１（Ｄ１Ａ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を生成し、第二セットが（Ｄ１Ｂ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を含み、第二ルックアップテーブルが機能Ｆ２（Ｄ１Ｂ，Ｄ２，Ｄ３，Ｄ４，Ｄ５）を生成するものである、項目１３に記載の装置。（第６Ａ図）
（項目１５）
入力の第一セットが（Ｄ１Ａ，Ｄ２Ａ，Ｄ３，Ｄ４，Ｄ５）を含み、第一ルックアップテーブルが機能Ｆ１（Ｄ１Ａ，Ｄ２Ａ，Ｄ３，Ｄ４，Ｄ５）を生成し、第二セットが（Ｄ１Ｂ，Ｄ２Ｂ，Ｄ３，Ｄ４，Ｄ５）を含み、第二ルックアップテーブルが機能Ｆ２（Ｄ１Ｂ，Ｄ２Ｂ，Ｄ３，Ｄ４，Ｄ５）を生成するものである、項目１３に記載の装置。（第６Ｂ図）
（項目１６）
第一ルックアップテーブルが５−入力ルックアップテーブルであり、第二ルックアップテーブルも５−入力ルックアップテーブルであり、第一論理セルが更に、第一と第二ルックアップテーブルの出力を受信するように構成されたルックアップテーブル出力マルティプレクサと、ルックアップテーブル出力マルティプレクサの出力を制御するための第六入力とから成る、項目１３に記載の装置。
（項目１７）
更に、入力の第一セットと第六入力から選択される一つと組み合わされるプログラマブル選択マルティプレクサから成り、上記選択マルティプレクサが入力の第一セットと第六入力から選択される一つを第一ルックアップテーブルへの入力としてプログラマブルに選択するように構成されたものである、項目１６に記載の装置。
（項目１８）
更に、プログラマブル選択マルティプレクサとルックアップテーブルマルティプレクサとを制御するための使用される構成可能ビットから成り、第六入力が第一ルックアップテーブルへの入力として選択された場合、ルックアップテーブル出力マルティプレクサが第二ルックアップテーブルを選択するように構成されて居る、項目１７に記載の装置。
（項目１９）
更に、上記一個の論理セルへの第七入力と、選択的に第七入力か入力の第二セットの中の一つかを第二ルックアップテーブルへ与えるルックアップテーブルマルティプレクサから成る、項目１６に記載の装置。
（項目２０）
更に、上記一個の論理セルのレジスタからのレジスタフィードバック信号と、選択的にレジスタフィードバック信号か入力の第二セットからの一つかを第二ルックアップテーブルに与えるように構成された選択マルティプレクサとから成る、項目１６に記載の装置。（項目２１）
プログラマブルロジックデバイスと論理セルの中の一個とから成る装置であって、
プログラマブルロジックデバイスはアレイの行と列とに配列された複数のＣＬＢとアレイのＣＬＢを互いに接続する複数のＣＬＢ間ラインとを含み、複数のＣＬＢの各々は論理セルの第一スライスと論理セルの第二スライスを有し、アレイに於ける一つの行のＣＬＢの論理セルの第一スライスと論理セルの第二スライスとは夫々第一搬送チエインと第二搬送チェインによって互いに接続されて居り、
上記論理セルのなかの一個は、上記一個の論理セルに与えられる入力のセットに論理機能を移植するための一個以上のルックアップテーブルと、搬入信号を受信し、第一搬送チェインの一部を成す搬出信号を生成し、第一ＳＵＭ信号と第二ＳＵＭ信号とを生成するように構成された算術論理回路とを含むものである、装置。
（項目２２）
上記一個の論理セルは更に第一ＳＵＭ信号を受信する第一出力レジスタと第二ＳＵＭ信号を受信する第二出力レジスタとから成るものである、項目２１に記載の装置。
（項目２３）
算術論理回路が第一ルックアップテーブルから最初の二つの信号を加えることにより第一ＳＵＭ信号を、第二ルックアップテーブルからの二番目の二つの信号を加えることにより第二ＳＵＭ信号を生成するものである、項目２２に記載の装置。
【図面の簡単な説明】
【００１１】
この発明は、本発明の実施例を示す同伴の図面を参照すると共に、以降の記述により理解することが出来よう。
【図１】第１図は本発明のプログラマブルロジックデバイスの一例のブロック図である。
【図２】第２図は従来例のＰＬＤ構成に基づくＣＬＢに使用される論理セルのブロック図である。
【図３】第３図は本発明の第１実施例による強化されたレジスタ機能を持つ論理セルである。
【図４】第４図は本発明の別の実施例によるレジスタフィードバックを持つ論理セルである。
【図５Ａ】第５Ａ図と第５Ｂ図とは如何に本発明のレジスタフィードバックが、論理回路設計の段階間の遅延を釣り合わせることによって、回路の総括的伝播遅延の減少に寄与するかを示すブロック図である。
【図５Ｂ】第５Ａ図と第５Ｂ図とは如何に本発明のレジスタフィードバックが、論理回路設計の段階間の遅延を釣り合わせることによって、回路の総括的伝播遅延の減少に寄与するかを示すブロック図である。
【図６Ａ】第６Ａ−Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例である。
【図６Ｂ】第６Ａ−Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例である。
【図６Ｃ】第６Ａ−Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例である。
【図６Ｄ】第６Ａ−Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例である。
【図６Ｅ】第６Ａ−Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例である。
【図７】第７図はレジスタフィードバックと入力スワップマルティプレクサを有する本発明別の実施例の論理セルである。
【図８Ａ】第８Ａ−８Ｂ図は２ビット上で算術実行可能な本発明の論理セルである。
【図８Ｂ】第８Ａ−８Ｂ図は２ビット上で算術実行可能な本発明の論理セルである。
【発明を実施するための形態】
【００１２】
添付の図に於いて、同様な部品は同様な数字で示されて居る。
【００１３】
（実施例の詳細な説明）
次に、同伴の図を参照しながら、実施例によってこの発明を詳細に説明する。以下の説明に於いて、明確な理解のために特定な詳細が記述されるが、発明の実施のためにこれらの記述された特定な詳細の全部が必要なのではないことは、当業者には自明であろう。また、本発明の内容を不明確にしないため、周知のことについては詳細な記述は省略してある。さらに留意されるべきことは、本発明のテクニクはプログラマブルデバイスとか特定用途向け集積回路（ＡＳＩＣ）装置のような他の多くの種類のシステムとか電子装置に応用可能であるということである。
【００１４】
第１図は本発明にかかるプログラマブルロジックデバイス（ＰＬＤ）１０のブロック図である。ＰＬＤには複数個のコンプレクスロジックブロック（ＣＬＢｓ）１２が二次元的行列に配置されて居り、各ＣＬＢ１２は第１スライス１４Ａと第２スライス１４Ｂとを含む。夫々の行のＣＬＢ１２のスライス１４Ａはスライス１４Ａによって受信され出力される搬入（Ｃｉｎ）線及び搬出（Ｃｏｕｔ）線と記される第１運搬連鎖１４Ａで相互に連結されて居る。同様にスライス１４Ｂはスライス１４Ｂによって受信され出力される搬入（Ｃｉｎ）線及び搬出（Ｃｏｕｔ）線と記される第１運搬連鎖１４Ｂで相互に連結されて居る。図示されて居ないけれど、当業者に於いて知られて居るように、個々のＣＬＢ１２は複数のＣＬＢ−間の線によって接続されて居る。スライスを有するＰＬＤに基づくＣＬＢに関する詳細については、例えばＸｉｌｉｎｘ  Ｃｏｒｐｏｒａｔｉｏｎ，Ｓａｎ  Ｊｏｓｅ，Ｃａｌｉｆｏｒｎｉａ発行による「Ｖｉｒｔｅｘ−５  Ｕｓｅｒ  Ｇｕｉｄｅ」，ＵＧ１９０（ｖ３．０），Ｆｅｂｒｕａｒｙ  ２，２００７，１５５−１８１を参照されたく、同文献は総ての目的に於いて本出願に参照により組み込まれるものとする。
【００１５】
スライスの各々は１個以上の論理セルを含む。特定実施例の場合各スライス１４は４個の論理セルを含んで居る。別の実施例に於いては、それ以上或はそれ以下の論理セルが各スライスに使用されてもよい。或る実施例では、例えば１−３個或は５−１６或はそれ以上の論理セルがＣＬＢ１４ごとに含まれる。一般に、１個のＣＬＢ内の所定の論理セルの数は自由であり、本発明の範囲を限定するものではない。
【００１６】
第２図には従来例の論理セル２０のブロック図が示される。この論理セル２０は６−入力のルックアップテーブル２２、算術論理回路２４、２個の出力マルティプレクサ２６Ａと２６Ｂ、及び出力レジスタ２８を含む。
【００１７】
この６−入力のルックアップテーブル２２は、夫々が同じ入力Ｄ１からＤ５を受信するように構成された２個の５−入力ルックアップテーブル３０Ａ及び３０Ｂと、六番目の入力Ｄ６を受信するように構成されたルックアップテーブル出力マルティプレクサ３２とを含む。この構成により、ルックアップテーブル２２は唯一の論理機能「Ｏ６」を生成可能な唯一の６−入力のルックアップテーブルとしても、夫々をＦ１（Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５）及びＦ２（Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５）と記載する５−入力論理機能としても構成することが出来る。
【００１８】
算術回路２２は、カウンターとかシフターレジスタのような算術論理機能を実施するように構成されて居る。算術回路２２は七番目の入力（ＤＸ）と搬入（Ｃｉｎ）とを下の論理セルから受信するように構成されて居る。それに応じて、算術回路はＳＵＭ信号と搬出信号（Ｃｏｕｔ）とを生成し、上のセルに供給される。
【００１９】
出力マルティプレクサ２６Ａは入力（Ｏ６，Ｏ５，ＳＵＭ，Ｃｏｕｔ）から選ばれる未登録出力（ＤＭＵＸ）を生成する。出力マルティプレクサ２６Ｂは入力（Ｏ６，Ｏ５，ＳＵＭ，Ｃｏｕｔ，ＤＸ）から選択する。レジスタ２８は出力マルティプレクサ２６Ｂが選択した入力から登録出力（ＤＱ）を生成する。ルックアップテーブル出力マルティプレクサ３４（Ｏ６）から第三出力（Ｄ）が誘導される。
【００２０】
第３図は本発明の一実施例による強化されたレジスタ機能を持つ論理セルである。この論理セル３６はセル２０と同様であるが、更に第二出力レジスタ３８、出力マルティプレクサ４０、及びスキャンチェイン４２を有する。開示例に於いて、出力マルティプレクサ２６Ｂは（スキャンーイン、Ｏ６，Ｃｏｕｔ）を受信するように構成される一方、マルティプレクサ４０は（ＤＱ，Ｏ５，ＳＵＭ，ＤＸ）を受信するように構成されて居る。第二出力レジスタは出力（ＤＱ１）を生成するように構成され、その値はマルティプレクサ４０の選択によって決定される。
【００２１】
第３図でのスキャンチェイン４２によって、一レジスタ（即ち２８）の出力が次のレジスタ（即ち３８）の入力として与えられる。第３図の例では、レジスタ２８が「スキャンーイン」信号を上のセルから受信し、レジスタ３８は「スキャンーアウト」信号を次のセルに供給する。
【００２２】
論理セル３６の強化されたレジスタ機能により、第２図に示されるような従来例のセルに比して多くの利点が得られる。レジスタ２８や３８のスキャンチェインによって、セル間のパイプライン処理及び／或はシフトレジスタの生成などの機能性が可能となる。この特徴は従来のセルでは得られないものであった。出力の２個のレジスタ２８と３８への分割で、レジスタパッキング即ちセルにより効果的に論理を詰め込む（パッキングする）により大きな順応性が得られることになる。
【００２３】
第３図の論理セル３６で生成される出力信号のこの特別な分割とは、単に一例であることに留意されるべきである。出力信号は出力レジスタの間でどのように分割されてもよい。更に、出力信号とは上記の特別のものに限定されるものではない。その逆に、出力信号とは総称的信号、セルのルックアップテーブルのそのような出力、合計（ｓｕｍ）、搬出信号、算術回路２４で生成されたその他の信号、或は論理セルへの入力などから選択されるものである。
【００２４】
第４図に戻り、ここには本発明の別の実施例のレジスタフィードバックを有する論理セル５６が示されて居る。この論理セル５６は第２図のものと同様であるが、マルティプレクサ５８とレジスタ２８の（ＤＱ）出力とマルティプレクサ５８の間のフィードバック路６０とを更に有して居る。開示された実施例に於いて、マルティプレクサ５８はＤ１とＤＱの二つの入力を受信する。従って、セル５６の登録出力は５−入力のルックアップテーブル３０Ａと３０Ｂの両方への入力として選択的に与えることが出来る。マルティプレクサ５８は入力Ｄ１と組まれたように図示されて居るが、マルティプレクサ５８は登録出力（ＤＱ）を論理セル入力Ｄ１からＤ６のいずれとも交換（ｓｗａｐ）可能であることに留意すべきことである。
【００２５】
パイプライン処理は回路設計では常套の技術である。これによって、複雑な回路は複数の計時された逐次制御段階に分割される。各段階に於いて、回路は所定の動作を実施する。各計時サイクルに於いて、各段階の結果は次の段階へと移行される。パイプライン処理回路の速度（即ち周期）或はクロックサイクルはパイプラインの中の最も長い二段階間の伝播路によって決定される。例えば、もし数段階で伝播遅延が５ナノ秒であり、或る段階で遅延が１０ナノ秒である場合、回路全体は１０ナノ秒の割合で運行しなくてはならない。それより高速の運行を行うためには、回路の別々の段階での遅延のバランスを改良しなくてはならない。
【００２６】
第５Ａ図を参照し、如何に本発明によって、レジスタフィードバックが、論理回路の逐次制御された段階間の遅延を釣り合わせることに寄与するかをブロック図６５が示す。図に於いて、３個の段階Ａ，Ｂ，Ｃが与えられて居る。第一段階Ａには５ナノ秒の遅延を持つ回路６８があり、それにレジスタ２８ａが続く。第二段階Ｂには５ナノ秒の遅延を持つ長いワイヤ６８と、５ナノ秒の遅延を持つ第一回路６８ｂと、別に５ナノ秒の遅延を持つ第二回路６８ｂとがあり、それにレジスタ２８ｂが続く。第三段階Ｃには合わせて１０ナノ秒の遅延を持つ２個の回路６８ｃとレジスタ２８ｃがある。第４図に示されたレジスタフィードバック６０を使用することにより、長いワイヤ６９による遅延がレジスタ２８ａの後（即ちの右側）でなく、その前（即ちその左側）に起こるようにすることが出来る。ワイヤ６９に関する遅延のこの移行の論理的図示が第５Ｂ図に示されて居る。この結果、３段階の夫々での遅延がバランスされ、各々が１０ナノ秒とされる。従って、この例で示されるように、レジスタフィードバック６０を使用することによって、計時速度、或は論理回路の運行する速度を改良し、遂行能力を向上することが出来る。
【００２７】
第６Ａ−６Ｅ図は改良された論理機能能力を有する本発明の論理セルの種々の実施例を示す。上記の如く、第２図のセル２０での２個のルックアップテーブルは夫々同じ入力（Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を受信することに限られて居るので、順応性は限られて居るものである。それに引き換え、第６Ａ−６Ｅ図では２個の５−入力ルックアップテーブル３０Ａと３０Ｂには異なる入力の組み合わせが与えられる種々の実施例が開示されて居る。この順応性により、より多くの論理が２個のルックアップテーブル３０Ａと３０Ｂに詰め込むことが出来、これらは同一の入力のセットでなく、異なった入力に対して運行することが出来るので、順応性が向上することになる。
【００２８】
第６Ａ図で、ルックアップテーブル３０Ａは入力（Ｄ１Ａ、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を受信し、機能Ｆ１（Ｄ１Ａ、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を生成する。ルックアップテーブル３０Ｂは入力（Ｄ１Ｂ、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を受信し、機能Ｆ２（Ｄ１Ｂ、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を生成する。即ち、入力Ｄ１は２個のルックアップテーブル３０Ａと３０Ｂで相違して居る。２個のルックアップテーブル３０Ａと３０Ｂが破砕モードで運行される場合、この設定法は順応性を向上させる。例えば、３０Ａと３０Ｂが只４個のみの入力を共通に使用して居るので、これらは只２個のみの入力を共有することとして、２個の独立した３−入力ルックアップテーブルとして、或は２個の４−入力ルックアップテーブルとして構成することが出来る。ここで、異なる入力をＤ１としたのは単なる例であることに留意されるべきである。この実施例に於いて、Ｄ１からＤ５までのいずれの入力を異なるものとしても構わない。
【００２９】
第６Ｂ図で、ルックアップテーブル３０Ａは入力（Ｄ１Ａ、Ｄ２Ａ、Ｄ３、Ｄ４、Ｄ５）を受信し、機能Ｆ１（Ｄ１Ａ、Ｄ２Ａ、Ｄ３、Ｄ４、Ｄ５）を生成する。ルックアップテーブル３０Ｂは入力（Ｄ１Ｂ、Ｄ２Ｂ、Ｄ３、Ｄ４、Ｄ５）を受信し、機能Ｆ２（Ｄ１Ｂ、Ｄ２、Ｄ３、Ｄ４、Ｄ５）を生成する。即ち、入力Ｄ１とＤ２が２個のルックアップテーブル３０Ａと３０Ｂで相違して居る。この設定法でも、２個のルックアップテーブル３０Ａと３０Ｂが破砕モードで運行される場合、順応性が向上させられる。例えば、３０Ａと３０Ｂは夫々２個の入力を共有する４−入力のルックアップテーブルを実施する。こで、異なる入力をＤ１とＤ２としたのは単なる例であることに留意されるべきである。この実施例に於いて、Ｄ１からＤ５までのいずれの２個の入力を異なるものとしても構わない。
【００３０】
第６Ｃ図は第６Ｂ図と同様であり、ルックアップテーブル３０Ａは入力（Ｄ１Ａ、Ｄ２Ａ、Ｄ３、Ｄ４、Ｄ５）を受信し、ルックアップテーブル３０Ｂは入力（Ｄ１Ｂ、Ｄ２Ｂ、Ｄ３、Ｄ４、Ｄ５）を受信する。更にスワップマルティプレクサ６２、ＡＮＤゲート６４、及びプログラミングビットＲとを有し、マルティプレクサ６２とゲート６４とが制御される。スワップマルティプレクサ６２は入力Ｄ５とＤ６のいずれかを、ルックアップテーブル３０Ａの第５入力へ供給する。入力Ｄ６がマルティプレクサ６２によって選択されるようにプログラミングビットＲの値が設定される場合、ＡＮＤゲート６４の出力はマルティプレクサ３２がルックアップテーブル３０Ａから機能Ｆ１を選択するようにする。従って、Ｄ６が入力として使用されるなら、ルックアップテーブル３０Ａが常にマルティプレクサ３２で選択されることになる。ビットＲが設定されるとルックアップテーブル３０Ａは機能Ｆ１（Ｄ６、Ｄ３、Ｄ２Ａ、Ｄ１Ａ）を生成し、ルックアップテーブル３０Ｂは機能Ｆ２（Ｄ５、Ｄ４、Ｄ２Ｂ、Ｄ１Ｂ）を生成する。されることになる。ビットＲがリセットされると、３０Ａと３０Ｂは夫々２個の共通入力を持つ５−入力ルックアップテーブルとなる。
【００３１】
第６Ｄ図は第６Ｂ図と同様であるが、ＤＸかＤ１Ａかを受信するように組み合わされたスワップマルティプレクサ６８を有する。この構成により、ルックアップテーブル３０Ｂは第６Ｂ図に示されるようにＤ１Ｂの代わりにＤＸかＤ１Ａかを受信する。スワップマルティプレクサ６８があることにより、共用される入力Ｄ１の代わりに入力ＤＸが代入され、３０Ａと３０Ｂは２個の４−入力ルックアップテーブルとされる。従って、Ｆ１は（Ｄ５、Ｄ３、Ｄ２Ａ、Ｄ１Ａ）であり、Ｆ２は（Ｄ５、Ｄ４、Ｄ２Ｂ、ＤＸ）となる。
【００３２】
第６Ｅ図は第６Ｃと６Ｄ図との組み合わせである。この構成により、３０Ａと３０Ｂは入力を共有する２個の５−入力ルックアップテーブル、或はＦ１（Ｄ６、Ｄ４、Ｄ３、Ｄ２Ａ、Ｄ１Ａ）とＦ２（Ｄ５、Ｄ３、Ｄ４、Ｄ２Ｂ、ＤＸ）とを生成する２個の粉砕されたルックアップテーブルとして構成される。
【００３３】
第７図は本発明の別の実施例である論理セルであり、レジスタフィードバックと入力スワップマルティプレクサとを有する。実質的に、この実施例とはレジスタフィードバック６０を含む第５Ａ図と、第６Ｄ図のスワップマルティプレクサ６８との組み合わせである。この場合、スワップマルティプレクサはＤ２Ａ、ＤＸ，レジスタフィードバック６０を含む３個の入力を受信する。この構成により、３０Ａと３０Ｂは二つの５−ＬＵＴ機能を生成することが出来、その下方の一つはＤＸにより駆動されるフィードバックレジスタをその入力の一つとして使用することが出来る。
【００３４】
第８Ａ図は２個の合計出力ＳＵＭ１，ＳＵＭ２を生成可能な算術論理回路を有するセルである。第一のＳＵＭ１信号は第一ルックアップテーブル３０Ａからの二つの信号の加算から得られ、第二のＳＵＭ２信号は第二ルックアップテーブル３０Ｂからの二つの信号から得られる。当業者に理解されて居る如く、５−入力ルックアップテーブルは実質的に２個の４−入力マルティプレクサと第５番目の入力で制御されるセレクトマルティプレクサのことである。この理由により、第８Ａ図には２個の４−入力マルティプレクサとマルティプレクサが３０Ａと３０Ｂの夫々に示されて居る。簡素化のため、未登録出力とセルの出力マルティプレクサとは省略されてある。
【００３５】
第８Ｂ図は第８Ａ図の算術論理回路２４の論理図である。示されて居る如く、ＳＵＭ１信号は２個の４−入力ルックアップテーブルの合計から、第一加算器８２Ａによって生成され、ＳＵＭ２信号は２個の第二４−入力ルックアップテーブルの合計から、第二加算器８２ｂによって生成される。搬送信号８４が２個の加算器８４Ｂと８４Ａの間に与えられる。
【００３６】
本発明は特定の実施例によって記述されたが、発明の範囲を逸脱することなく形態や詳細に於いて変化が可能であることは当業者には理解されることである。即ち、本発明の真意の範囲内で総ての変化例はすべて発明に含まれるものとする。
【００３７】
（発明の概要）
改良された論理、レジスタ、算術、論理パッキング、及びタイミングの機能と能力を持った論理セルを有するＣＬＢに基づくＰＬＤを開示する。ＰＬＤのＣＬＢは行と列に配置されて居り、複数の接続線によって互いに接続されて居る。複数のＣＬＢの各々は論理セルの第１スライスと論理セルの第２スライスとから成り、これらは夫々第１行と第２行とに配置されて居る。スライスの各行の各論理セルの間に第１と第２の運搬連鎖がある。少なくとも１個の論理セルには、その論理セルと、搬入信号を受信し、第１運搬連鎖の搬出信号形成部を生成するように構成された算術論理回路とに供給される入力に論理機能を移植する為の１個以上のルックアップテーブルが含まれる。一実施例に於いては、論理セルが第１出力レジスタと第２出力レジスタを更に含み、論理セルによって生成された出力はこれら第１と第２の出力レジスタの間に分割される。別の実施例に於いては、レジスタの中の１個の出力はレジスタフィードバック接続を通じてセルのルックアップテーブルの一つへの入力として供給される。更に別の実施例に於いては、第１と第２のルックアップテーブルに供給される入力は異なって居り、各セルが同じ内容の入力ではなく、相違する入力に対して論理機能を実行するため、高程度の論理効率とパッキングが可能となる。最後に別の実施例として、算術論理回路は２個のＳＵＭ出力信号が生成可能である。
【図１】
0005559129.tif 000002
【図２】
0005559129.tif 000003
【図３】
0005559129.tif 000004
【図４】
0005559129.tif 000005
【図５Ａ】
0005559129.tif 000006
【図５Ｂ】
0005559129.tif 000007
【図６Ａ】
0005559129.tif 000008
【図６Ｂ】
0005559129.tif 000009
【図６Ｃ】
0005559129.tif 000010
【図６Ｄ】
0005559129.tif 000011
【図６Ｅ】
0005559129.tif 000012
【図７】
0005559129.tif 000013
【図８Ａ】
0005559129.tif 000014
【図８Ｂ】
0005559129.tif 000015