(57)【要約】  再構成可能なディジタル論理ユニットが、構成可能な特性を有する複数の論理セル（１９，２６）と、複数の論理セル（１９，２６）の関数性に関する情報を含んだ多数のマイクロプログラム（１４，１６）を備え、マイクロプログラムの少なくとも１つが定められたアプリケーションに関係して少なくとも論理ユニットの現在の動作中に再プログラム可能であるようなメモリ（１３）と、少なくとも１つのマイクロプログラムを選択するための手段と、少なくとも論理ユニットの現在の動作中に選択されたマイクロプログラム（１４，１６）の関数性情報に応じて論理セルを構成するための手段とから構成されている。
2005510901.tif 000002
【特許請求の範囲】
【請求項１】
構成可能な特性を有する複数の論理セル（１９，２６）と、
複数の論理セル（１９，２６）の関数性に関する情報を含んだ複数のマイクロプログラム（１４，１６）を有し、マイクロプログラム（１４，１６）の少なくとも１つが定められたアプリケーションに関係して少なくとも論理ユニットの現在の動作中に再プログラム可能であるメモリ（１３）と、
少なくとも１つのマイクロプログラム（１４，１６）を選択するための手段と、
少なくとも論理ユニットの現在の動作中に選択されたマイクロプログラム（１４，１６）の関数性情報に応じて論理セルを構成するための手段と
からなることを特徴とする再構成可能なディジタル論理ユニット。
【請求項２】
論理セル（１９，２６）は磁気抵抗効果型の積層システムを有することを特徴とする請求項１記載の論理ユニット。
【請求項３】
論理セル（１９，２６）は格子状に配置されていることを特徴とする請求項１又は２記載の論理ユニット。
【請求項４】
論理セル（１９，２６）はほぼ横方向および縦方向に延びる接続導体路（３，４）に接続されていることを特徴とする請求項１乃至３の１つに記載の論理ユニット。
【請求項５】
交差する接続導体路（３，４）は異なる平面に配置されていることを特徴とする請求項４記載の論理ユニット。
【請求項６】
論理セル（１９，２６）は異なる層に格子状に配置されていることを特徴とする請求項１乃至５の１つに記載の論理ユニット。
【請求項７】
論理セル（１９，２６）は互いにずらされて配置されていることを特徴とする請求項１乃至６の１つに記載の論理ユニット。
【請求項８】
論理セル（１９，２６）に基本的な論理関数ＡＮＤ，ＸＯＲ，ＯＲ，ＩＮＶまたは逆関数ＮＡＮＤ，ＸＮＯＲ，ＮＯＲ，ＢＵＦが割り当てられか、または論理セル（１９，２６）はそのように構成可能であることを特徴とする請求項１乃至７の１つに記載の論理ユニット。
【請求項９】
複数の論理セル（１９，２６）が結合されて１つの論理セルブロック（２１，２２，２３）を形成していることを特徴とする請求項１乃至８の１つに記載の論理ユニット。
【請求項１０】
論理セルブロック（２１，２２，２３）は半加算器または全加算器または掛算器として構成されていることを特徴とする請求項９記載の論理ユニット。
【請求項１１】
論理セル（１９，２６）はローカルメモリを有するかまたはメモリとして構成可能であることを特徴とする請求項１乃至１０の１つに記載の論理ユニット。
【請求項１２】
新しいマイクロプログラムの特にアプリケーション指向の定義のためおよび／または現存するマイクロプログラムの変更のための命令が存在することを特徴とする請求項１乃至１１の１つに記載の論理ユニット。
【請求項１３】
マイクロプログラム（１４，１６）はファームウェアを含む命令を有することを特徴とする請求項１乃至１２の１つに記載の論理ユニット。
【請求項１４】
マイクロプログラム（１４，１６）の命令順序はアプリケーションプログラムによって識別可能であり新しいマイクロプログラムとして格納可能であることを特徴とする請求項１乃至１３の１つに記載の論理ユニット。
【請求項１５】
マイクロプログラム（１４，１６）は、論理関数、結合、変数および定数の構成のうちの少なくとも１つのための命令を含んでいることを特徴とする請求項１乃至１４の１つに記載の論理ユニット。
【請求項１６】
マイクロプログラム（１４，１６）はメモリ、特に揮発性メモリまたは不揮発性メモリまたは永久メモリと協動することを特徴とする請求項１乃至１５の１つに記載の論理ユニット。
【請求項１７】
マイクロプログラム（１４，１６）は論理セルブロック（２１，２２，２３）に複写可能であることを特徴とする請求項９乃至１６の１つに記載の論理ユニット。
【請求項１８】
マイクロプログラム（１４，１６）は、再構成可能な論理セル（１９，２６）および／または論理セルブロック（２１，２２，２３）および／または構成可能でない論理セルの間における接続を構成するための手段を有することを特徴とする請求項９乃至１７の１つに記載の論理ユニット。
【請求項１９】
論理関数の実行が少なくとも１つの命令カウンタによって制御可能であることを特徴とする請求項１乃至１８の１つに記載の論理ユニット。
【請求項２０】
命令カウンタに現在割り付けられている論理セル（１９，２６）および／または命令カウンタに現在割り付けられている論理セルブロック（２１，２２，２３）またはこれらの論理セルブロック（２１，２２，２３）の一部に対して、作動電圧が投入可能であることを特徴とする請求項１９記載の論理ユニット。
【請求項２１】
論理ユニットは複数の命令カウンタを有することを特徴とする請求項１９又は２０記載の論理ユニット。
【請求項２２】
論理ユニットは、１つまたは複数の命令カウンタにより複数の論理関数が同期して実行されるように構成されていることを特徴とする請求項１９乃至２１の１つに記載の論理ユニット。
【請求項２３】
マイクロプログラム（１４，１６）は、論理関数の実行が予め定められた時間で行なわれるように構成されていることを特徴とする請求項２２記載の論理ユニット。
【請求項２４】
マイクロプログラム（１４，１６）は、マイクロプログラム（１４，１６）が論理関数の実行のための時間に関する情報を有するように構成されていることを特徴とする請求項２２記載の論理ユニット。
【請求項２５】
論理ユニットは論理関数が非同期で実行されるように構成されていることを特徴とする請求項１９乃至２１の１つに記載の論理ユニット。
【請求項２６】
論理ユニットは、論理セル領域へのマイクロプログラムの割り当てに関するテーブル（２０）を有することを特徴とする請求項１乃至２５の１つに記載の論理ユニット。
【請求項２７】
テーブル（２０）は故障の論理セルに対する情報を含んでいることを特徴とする請求項２６記載の論理ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構成可能なディジタル論理ユニットに関する。
【０００２】
プロセッサのような従来のプログラム可能な論理モジュールはメモリからロードされたプログラムを実行する。これらのメモリはディスクリートモジュール（例えば、ハードディスク、メモリチップ）として組み込むか、もしくはプロセッサに集積化することができる。前者についての公知例が公知のＩＢＭコンパチブルのＰＣであり、後者についての公知例が所謂フラッシュマイクロプロセッサである。実行すべきソフトウェアは命令語の形で機械命令としてメモリに格納されている。命令語がロードされ、解析され、処理ユニットで実行される。個々の機械語の処理が論理ユニットの多数の個別動作を作動させる。
【０００３】
従来のプログラム可能な論理モジュールの決定的な特徴は、処理ユニットが数クロックサイクルのための各新しい命令語によって新しくプログラムされることにある。処理ユニットにおける前の命令語に関する情報はレジスタ内容を除いて上書きされる。最新のマイクロプロセッサの処理ユニットは可能な演算の数の多さにより非常に労力をかけて構成されている。５００個以下の命令語に対して、３０００万個以上のトランジスタが必要であり、このことはそれ相応に大きなエネルギー消費をもたらす。というのは、各トランジスタは使用されずに待機状態にあるときにもエネルギーを消費するからである。エネルギー節約を達成するために、作動電圧を適合させること、すなわち低くすることが既に提案されている。同様にクロック周波数が低減され、勿論それによって論理ユニットの全出力が低下する。
【０００４】
これらのトランジスタの設計、製造および試験の費用は巨大である。一度設計された関数性は変更することができない。定められた時点で一つの問題しか処理することができない。
【０００５】
特にプログラムループを実行する際、プロセッサの僅かな部分のみが能動状態にある。大抵のアプリケーションは非常に多くのプログラムループを含み、各ループはループ内に組み込まれた比較的僅かな命令しか含んでいない。この場合、問題になるのは計数ループ、例えば洗濯機におけるすすぎプロセスの回数である。同様に、繰り返し回数がループ開始時に未知である条件付きループが非常に頻繁に起こる。というのは、ループは結果に関係して離れるからである。結果が出なければ、ループ内で前の命令が繰り返される。
【０００６】
ディジタル論理ユニット、特にマイクロプロセッサを備えたコンピュータは、ノイマン型コンピュータの構想に基づく。中央ユニットすなわちコンピュータ中心部分は、主要構成部分、すなわち主メモリ、制御ユニットおよび処理ユニット（演算装置）からなる。主メモリは命令語（プログラムデータ）および処理データ（オペランド語）を記憶し、これらを要求に応じて使わせる。更に、主メモリは処理の中間結果および最終結果を収容する。主メモリは揮発性メモリおよび不揮発性メモリによって実現することができる。制御ユニットは命令語が実行される順序を編制する。制御ユニットは命令語を主メモリから要求し、処理ユニットでの命令語の実行を指示する。制御ユニットは命令語を解析し、処理ユニットへの処理データの供給を指示する。処理ユニットは処理データに対して演算を実行し、結果を主メモリに供給する。各演算のために、処理ユニットは必要な伝送線を投入するマイクロプログラムを含んでいる。処理ユニットは制御ユニットによってその都度の演算すなわち実行すべき命令にセットされる。この中央ユニットは上述の外部メモリ、入出力装置である周辺装置に付設されている。中央ユニットの既述の主要構成要素は物理的に分離されていてもよいが、しかし大抵はキャッシュを備えた共通なプロセッサチップ上、または例えば組み込まれたＲＯＭ上で実現されている。
【０００７】
公知のディジタル論理ユニットは、特に頻繁に繰り返される動作を行う際に、例えばプログラムループを実行する際に、既に数プロセッサクロック前に命令レジスタ内にあった命令語をロードして実行するという欠点を有する。このようなループに関する例がキーボード走査である。キーが全く押されていない場合、全てのループ命令が短い間隔で繰り返され、毎回命令語が完全に新しいものとして改めてロードされなければならない。プロセッサの大部分は待機中には必要でないが、しかしプロセッサがこの時間内に他の問題を処理することができるわけではない。
【０００８】
この種の論理ユニットの利用率は極めて悪い。というのは、存在するハードウェアのほんの一部分しか利用されないためである。チップ面積の大部分が利用されないままであるにもかかわらず、連続的に、作動のためのエネルギーが消費されなければならない。
【０００９】
様々の与えられた状況にプロセッサを適合させることは、少ない複雑な局面で既に実施されている。この例が種々のプログラムを有するプロセッサのメモリバンクの切換えである。現在利用されていないメモリバンクを変更することができる。この技術はＩＡＰ（イン・アプリケーション・プログラミング）と呼ばれている。この措置によって達せられた改善は比較的僅かである。なぜならば、プロセッサハードウェアに変更はなく、実行すべきプログラムが同時に他のプロセッサによりロードされるだけであるからである。
【００１０】
より少ない複雑な問題に対しては、しばしばプログラム可能な論理モジュール（ＰＬＤ）が使用される。この論理モジュールは、例えば米国特許第４８７０３０２号明細書、または刊行物「Ｒａｎｍｕｔｈｕ，Ｉ．Ｗ．ｅｔ  ａｌ．；Ｍａｇｎｅｔｒｏ−ｒｅｓｉｔｉｖｅ  ｅｌｅｍｅｎｔｓ−Ａｎ  Ａｌｔｅｒｎａｔｉｖｅ  ｔｏ  Ｆｌｏａｔｉｎｇ  Ｇａｔｅ  Ｔｅｃｈｎｏｌｏｇｙ；Ｉｎ：Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｍｉｄｗｅｓｔ  Ｓｙｍｐｏｓｉｕｍｓ  ｏｎ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍｓ，１９９２，ｐ．１３４〜ｐ．１３６，ｖｏｌ．１」から公知である。全アプリケーションプログラムは、このような論理モジュールの場合、特殊コンパイラ（所謂フィッタ）内で適切な命令に置き換えられる。ＰＬＤはこれらのプログラムデータにより一回限り一般にブート過程において定義される。つまり、プログラムメモリからプログラムが読み出され、構成可能な範囲が構成される。構成可能な範囲は次の特性を持つ。すなわち、構成可能な範囲は、予め与えられた点間の論理結合を定義する（ルーチング範囲）か、または論理入力信号を論理出力信号へ処理する（論理セル範囲）。しかし、製造者によって実現されたＰＬＤの技術コードとは相違する接続が必要とされ、２つ以上の接続ブロックがカスケード接続されなければならない場合、走行時間増大および通過遅延が生じる。それによって、アプリケーションプログラム実行の実際の速度を予測することができない。多くの場合、例えば、ＰＬＤにおける最小の速度要求または信号の同期化を実現できるようにするためにプログラムにおける適合が必要である。論理信号を処理する際に現存とは異なる特性（例えば、より高いビット幅）が要求される場合には、同様にカスケード接続されなければならない。それによって、ＰＬＤでは結合範囲の面積が論理範囲よりも大きい。それゆえ、モジュールを構成可能であるにもかかわらず、異なる課題に対する柔軟性が僅かである。従って、実際上の問題においては一般に、その問題（例えばビット幅、通過遅延要求）により良好に適合している資源を有する他のチップ構成を持つ他のチップが選択される。ＰＬＤのアーキテクチャ構想は、フィッタのプログラミング情報をＰＬＤチップ上における多数の同様の論理セルに配分することを意図している。これらは多数の同様のルーチング範囲によって結合される。従って、プログラミング情報は平面に配分されている。ＰＬＤの構成可能性はブート過程において設定される僅かな構成可能なパラメータに限られる。その場合に２つのメモリが必要である。すなわち、外部のブートメモリチップ（ディスクリートチップ、例えば米国特許第４８７０３０２号明細書におけるＥＥＰＲＯＭ１１３）および内部の平面配分されたメモリセル（例えば米国特許第４８７０３０２号における図３ａおよび図１０ａ、またはＲａｎｍｕｔｈｕ氏らの先に挙げた刊行物における図５）である。ローカルメモリセルはブート過程の後に結合およびセルの論理関数についての情報を有する。配分されたメモリセルの平面効率および損失伝導効率は同じ能力のディスクリートメモリチップよりも２桁程度劣る。しかし、アプリケーションプログラムはチップが用意しているよりも少ない能力を必要とするので、利用されない範囲が同様に損失電力を消費することは避けられない。ＰＬＤの資源の標準的な利用率は約３０％〜７０％である。それによっても、定められた時点では僅かな部分しか能動的に論理情報の処理に関与しない。
【００１１】
従って、本発明の課題は、上述の欠点を回避し、ハードウェアの利用率が改善されたディジタル論理ユニットを提供することにある。
【００１２】
この課題は、構成可能な特性を有する複数の論理セルと、複数の論理セルの関数性（functionality）に関する情報を含んだ複数のマイクロプログラムを有し、マイクロプログラムの少なくとも１つが定められたアプリケーションに関係して少なくとも論理ユニットの現在の動作中に再プログラム可能であるメモリと、少なくとも１つのマイクロプログラムを選択するための手段と、少なくとも論理ユニットの現在の動作中に選択されたマイクロプログラムの関数性情報に応じて論理セルを構成するための手段とからなる再構成可能なディジタル論理ユニットによって解決される。
用語「関数性」は、「データ処理」並びに「データ結合」であると解すべきである。
【００１３】
従って、本発明による論理ユニットは現在の動作中に可変であり、すなわち論理セルは論理ユニットの動作中に構成可能であり、１つのマイクロプログラムまたは複数のマイクロプログラムを論理ユニットの現在の動作中に再プログラムすることができる。それゆえ、いつでも出された処理すべき課題への論理ユニットの適合化が可能である。なぜならば、固定の構成およびプログラムを製造者側で予め設定するのではなく、むしろ、いわば現場で構成し、特性を変更し適合させることができるからである。プログラミングまたは構成の変更はプログラマによってソフトウェア的に予め設定することができ、しかし自主的に学習するシステムであってもよい。従って、常に与えられている変化可能性によって、全ての有り得る命令もしくは結合がチップ上で実現されなければならないというわけではなく、むしろ今与えられた要件に従って動作中に必要な結合が作られる。従って、チップ上に必要なスペースは極めて少なくてすみ、損失伝導も明らかに低減できる。なぜならば、設定可能性により、要求されたアプリケーションのために必要とされるようなセルおよび結合のみが構成されるからである。
【００１４】
用語「論理セル」は、どれも、論理関数を実行する要素と解すべきである。最も簡単な場合は個別のメモリセルであり、複雑な場合はゲート、多数のゲートからなるサブネットワークあるいはプロセッサエレメントであってよい。論理セルの原理はサブルーチンの原理に対応し、簡単な関数性（例えば出力＝入力または出力＝一定）を含むか、または著しく複雑な関数性を有するサブネットワークとして構成することができる。大抵、頻繁な使用（例えば単純なもの（例えばゲート関数）または全加算器）または適切且つ有利な構成（特に、商業的なＩＰの形で）によって傑出している部分問題が含まれている。
【００１５】
用語「構成可能な特性」は、あらゆる、不揮発性ではあるが可変の特性または動作パラメータであると解すべきである。論理セルの例としては、入力におけるビット幅／変数の個数，入力の物理的位置，ビットのコーディング（例えばシリアルまたはパラレル），ビットの論理処理，時間的挙動，レジスタ機能，ローカルメモリ機能、出力におけるビット幅、出力ビットの物理的位置あるいは動作準備が挙げられ、これらの枚挙にはいとまがない。変更はチップ内の他のプロセッサに無関係に実施することができ、理想的にはビット処理および結合はクロック毎に行なわれる。
【００１６】
磁気抵抗効果型の積層システムを有する構成可能な特性を持つ論理セルが特に適している。
【００１７】
磁気抵抗効果層を有する論理セルの代わりに、類似の性能のよい代替技術、例えば強誘電体ランダムアクセスメモリ（ＦＲＡＭ）を使用することもできる。
【００１８】
本発明による論理ユニットの各論理セルは、少なくとも１つの磁気抵抗効果型の積層システムと、接続導体路に接続されている入力端子および出力端子とを有する。積層システムは、ＧＭＲ型（巨大磁気抵抗効果型）、ＴＭＲ型（トンネル磁気抵抗効果型）またはＡＭＲ型（異方性磁気抵抗効果型）からなるとよい。
【００１９】
磁気層の磁化方向は情報記憶に利用される。この記憶過程は非常に高速でほぼ無制限に頻繁に実施可能である。メモリセルの抵抗は、基準方向に対して相対的に自由な磁気層の磁化方向に関係して低いか又は高い。それを基礎としている論理セルは論理ゲートとして使用することができ、複数のセルの駆動もしくは接続によって実質的に全ての通常のゲート機能（例えば、ＮＯＲ，ＸＯＲ，ＡＮＤ，ＯＲ，ＩＮＶ等）を実現することができる。その場合に重要なことは、適切な手段によってこれらの少なくとも２つのゲート関数間の関数性が変更可能であることである。同様に、論理セルはメモリとして使用することができ、特に論理結合の結果を記憶することができる。特に好適なのはＴＲＡＰ型（トンネルランダムアクセスメモリ）のメモリセルである。というのは、これは無限に書込み可能であるからである。
【００２０】
本発明によれば、ディジタル論理ユニットにおいて、論理セルの結合により、半加算器、全加算器または掛算器の機能を有する論理セルブロックが形成される。付加的に論理セルはローカルメモリを含む。これは論理結合の中間結果または最終結果を記憶する。
【００２１】
本発明によるディジタル論理ユニットは複数のマイクロプログラムを有する内部メモリを含む。内部メモリは主メモリからの命令語によって呼び出され、複数の論理セルの関数性および論理結合に関する情報を含んでいる。命令語は主メモリからロードされ、解析され、マイクロプログラムに基づいてそのために必要な論理セル配置が導き出される。このようなマイクロプログラムはマクロ命令に匹敵し、複数の論理セルの結合によって実現することができる多数の基本演算を含んでいる。標準的な基本演算はロード、解析または選択である。従って、マイクロプログラムは構成設計または回路構成の手段とみなすことができ、論理セルに関する必要な全ての情報を含んでいる。付加的に場合によっては必要なメモリ、レジスタまたは類似の構成要素に関する情報も含んでいてもよい。更に、マイクロプログラムは定数も含むことができ、例えば数「０」を定数として定義することができる。変数および定数を持つ入力、出力、または入力の結合に関する情報をマイクロプログラムによって定義することができる。
【００２２】
多くの標準問題をマイクロプログラムによって満たすことができ、例えばキーボード走査をマイクロプログラムによって定義することができ、同様に外部装置へのデータの出力または外部装置からのデータの入力および受信を定義することができる。同様に、任意の論理結合（例えば、基本計算法の如き算術結合、非常に複雑なアルゴリズム）をマイクロプログラムの形で記憶することができる。論理結合は、それぞれマイクロプログラムによって定義される個別の構成部分に分解される。
【００２３】
特に有利であるのは、本発明に従ってマイクロプログラムが再プログラム可能であることである。マイクロプログラムは、ロードし、定められたアプリケーションに応じて変更することができる。それによって、論理ユニットの特に高い柔軟性が達せられる。マイクロプログラムが新しいマイクロプログラムを定義するための命令または現存のマイクロプログラムを変更するための命令を有すると好ましい。
【００２４】
本発明思想の発展形態によれば、マイクロプログラムはファームウェアを含む命令を有することが提案されている。更に、マイクロプログラムの命令順序は、アプリケーションプログラムによって識別可能であり、新しいマイクロプログラムとして格納可能である。
【００２５】
更に、本発明によるディジタル論理ユニットは、少なくとも１つのマイクロプログラムを選択するための手段を含むことができる。マイクロプログラムは予め定義されていてもよいし、「進化するハードウェア」という意味において新しく定義することもできる。メモリは、上記手段によってその都度少なくとも１つのマイクロプログラムを選択する多数の命令語を含む。
【００２６】
少なくとも１つのマイクロプログラムの選択はプログラムポインタによって行なうことができる。
【００２７】
本発明によるディジタル論理ユニットは、更に、選択されたマイクロプログラムの関数性情報に応じて論理セルを構成するための手段を含む。
【００２８】
選択されたマイクロプログラムによって定義された論理セルの論理結合並びに場合により必要なローカルメモリセルが再プログラム可能なハードウェアにおいてプログラムされる。磁気抵抗効果型の論理セルがプログラムルーチンによってプログラムされる。プログラムルーチンは、どのような順序で個々の論理セルがプログラミング電流を得るかを決定する。それによって、所望の論理ゲート関数がプログラムされる。同様に異なる論理セル間の結合が作成される。
【００２９】
本発明によるディジタル論理ユニットにおいて使用されたメモリは、メモリ内容が揮発性ではなく、すなわちメモリ内容が電圧遮断後にもそのまま維持されるという利点を有する。それにもかかわらず、既にプログラムされた論理セルを後の時点で再プログラムすることができ、つまり論理セルの関数性を再構成することができる。従って、プログラムループが「ハードウェアで」ランし、つまり、定められた論理結合について、そのために正確に適したハードウェア構成が作られ、そのハードウェア構成は処理すべき問題にできるだけ最適に適合させられている。実際に現在必要とされる論理セルにだけ電圧が供給されなければならない。論理セルによって定義されたプログラムループが最終的に離れられたときに、付属の論理セルは遮断されるので、当該論理セルはもはや全くエネルギーを消費しない。それによって、ハードウェアの大部分が常に待機状態にあり、その状態において電流を消費するという、従来の論理ユニットにおいて発生した問題が回避される。
【００３０】
論理セルを格子状に配置すると特に好ましい。それによって規則的に配置された論理セル層が作成される。このような論理セル層の場合、個々の各論理セルはマトリックスの成分のように行および列の指定によってアドレスを与えられることができる。種々の形式の論理セルが規則的に格子領域上に分布させられるとよい。例えば、ＮＯＲゲート、ＸＯＲゲートおよびＡＮＤゲートのようなしばしば必要なゲートを格子領域の全範囲に配置することができるので、個々の論理セルの結合時に比較的僅かな間隔および少ない関数性構成しか橋絡しない。論理セル結合は格子領域において基本的には任意の形で形成することができる。結合すべき論理セルが直接にまたはできるだけ近くに隣り合う論理セル結合が有利である。結合された論理セルは格子領域上に線状にも面状にも、すなわち関数ブロックの形で配置することができる。
【００３１】
磁気抵抗効果型の積層システムと入力端子および出力端子とを備えた論理セルは、ほぼ横方向および縦方向に延び特に直角に交差する接続導体路に接続されている。導体路は銅材料からなる。
【００３２】
本発明思想の他の構成においては、論理セルが異なる層または平面に格子状に配置されている。３次元に配置された論理セルは著しく多様な論理結合可能性を生じる。論理セル内で変数または定数を記憶することも可能である。この論理セルには異なるマイクロプログラムによってアクセスすることができる。例えば、マイクロプログラムの１つを高い方の層に配置し、他方のマイクロプログラムを論理セルと並べて位置させることができる。従って、この論理セルは複数のマイクロプログラムによって利用することができる。
【００３３】
論理セルの異なる層平面の接続は公知のように層平面に対して垂直に配置された接触穴によって行なわれる。このような３次元の構成は公知であり、これ以上の説明を必要としない。磁気抵抗効果型の積層システムが中間に存在する交差する接続導体路の４〜６個の層平面を含んでいる再構成可能なディジタル論理セルが有利である。個々の層は絶縁層によって互いに分離するとよい。付加的に、外側には、従来のシリコン技術で製作することができる他の構成要素が存在していてよい。特に互いに隣接する層は平面内に互いにずらして配置するのがよい。それによって、例えば第２の層と第４の層との間において直線の接続導体路を形成することができる。格子配置は直交座標系であってもよいが、しかし、直ぐ隣り合わせの個数より多くするために、六角形の密度の非常に高いパックの形で「ハニカム」を配置することもできる。
【００３４】
本発明に従って、論理関数の実行が少なくとも１つの命令カウンタによって制御可能であるとよい。命令カウンタは命令トークンとも呼ばれ、どの論理セルが現在能動状態にあるかを信号で知らせる。すなわち、命令トークンは現在動作している論理セルもしくは現在動作している論理結合を示す。命令カウンタは、１つの論理セルにおいてのみセットされ（“１”）、他の全ての論理セルにおいてはセットされない（“０”）という論理信号であってよい。
【００３５】
本発明の第１の実施態様によれば、論理ユニットのために単一の命令カウンタが設けられている。従って、一時点では単一の論理セルもしくは単一の論理セル結合しか動作状態にすることができない。残りの論理セルはその間は不動作状態にある。当該論理関数が実行されているときに、命令カウンタは「前進」させられ、つまり次に実行すべき論理セルを指し示す。１つのマイクロプログラムもしくは複数のマイクロプログラムが連続的に論理セル領域に配置されているので、個々の論理セルが順次実行される。代替として、論理セルもしくは論理セル結合が自由に選べるように論理セル領域に記憶されていてもよく、この配置はハードディスク上のデータ記憶に匹敵する。
【００３６】
第２の実施態様によれば、論理ユニットは同時に能動状態になることのできる複数の命令カウンタを有する。従って、２つ以上のマイクロプログラムを同時にランさせることができ、つまり並行処理を行なわせることができる。命令カウンタつまり命令トークンは、フラグレジスタ内に記憶され且つ計算終了後にリセットされる論理信号として形成することができる。“１”は論理セル結合が能動状態であることを意味し、計算後にフラグが“０”にリセットされる。能動状態の論理セル装置もしくは能動状態のマイクロプログラムのみが値“１”を有し、これは作動電圧が能動状態のマイクロプログラムに関係する論理セルに対して投入されるようにする。プログラムされた定数および結果の引き渡しの共通利用が可能である。
【００３７】
マイクロプログラムの実行は種々の様式で行なうことができる。同期して動作する論理ユニットの場合には、次のクロックによりフラグが走査され、続いて次のマイクロプログラムが作動させられる。同期式の論理ユニットにおける実行が簡単に時間制御されて行なわれること、つまり各マイクロプログラムはプログラムされた命令語の実行のために等しい十分な時間を持つことができる。同期式の論理ユニットにおける実行が複雑に時間制御されて行なわれること、つまり各マイクロプログラムはプログラムされた命令語の実行のために予め与えられた時間と結びつけられていることも可能である。この時間情報は例えばマイクロプログラムの変数に含まれているのがよい。
【００３８】
更に、非同期で動作する論理ユニットの場合には、論理形式の釈放信号を直接にもたらすことができる。その場合に、プログラムされた命令語の実行時間は重要ではない。場合によっては、１つのメモリセルへの同時アクセスのような衝突を回避するために、同時に能動状態の複数のマイクロプログラムを同期化させるための措置が必要である。
【００３９】
本発明の発展形態に従って、論理ユニットは、確保された論理セルおよび／または確保されていない論理セルのテーブルを含むと好ましい。必要な論理セル装置、例えば掛算器が既に構成されたブロックとして存在するかどうかを調べるアルゴリズムを使用することも考え得る。この場合には、同一の論理セル装置を異なるマイクロプログラムによって使用することが有り得る。更に、現存の論理セルの最適な利用率を達成するために、アルゴリズムが論理セルの自由範囲を発見すると好ましい。同様に論理セルの機能性をチェックし、場合によっては故障として分類した論理セルにテーブルにおいて目印を付けるようにするとよい。
【００４０】
本発明の他の利点および詳細を、以下に説明する実施例から並びに図面に基づいて明らかにする。図面は概略表示であり、
図１は多層の論理セルからなる本発明による論理ユニットの横断面図、
図２は垂直な接続穴を有する本発明による論理ユニットの概略断面図、
図３は本発明によるディジタル論理ユニットの構成の概略経過図を示す。
【００４１】
図１に断面図で示されたディジタル論理ユニット１は複数層の磁気抵抗効果型の論理セル２からなる。各論理セル２は、接続導体路３，４に接続されている図１に示されていない入力端子および出力端子を備えた磁気抵抗効果型の積層システムを有する。接続導体路３，４は異なる面に配置されている平行な多数の導体路を含む。個々の導体路は電気的に互いに絶縁され、接続は導体路３にも導体路４にも接している論理セル２を介してのみ行なわれる。メモリセルのそれぞれは絶縁層５によって隣接する層から絶縁されている。論理ユニット１は４〜６個のこの種の個別層を含むと望ましい。
【００４２】
論理セル２は、不揮発性であるが、しかし再プログラム可能であり、高速でプログラムすることができる再書き込み可能な論理要素である。論理セル２は、論理関数および同時にメモリを実現する可能性、または結合を投入または遮断する可能性を提供する。
【００４３】
下部の絶縁層６の下側には、従来のシリコン技術で形成された他の構成要素７が概略的に示されている。従って、論理セル２をシリコン半導体と組み合わせることが可能である。
【００４４】
図２は個別層間に垂直な接続穴を備えた本発明による論理ユニットの概略的な断面図を示す。
【００４５】
論理ユニット１は、図１の論理ユニットと同様に構成されている層８，９，１０からなる。層８，９，１０と下部の層１１との間には、層間もしくは層上に配置された論理セル間における垂直な接続を作り出す接触穴１２が形成されている。同様にして、接続導体路が３つの全空間軸に沿って形成され格子の各交差点に論理セルが存在するような格子構造も実現することができる。論理セルのアドレス割り付けのために、それらのＸ，Ｙ，Ｚ座
標が必要である。
【００４６】
図３には、ディジタル論理ユニットを構成する際の経過が概略的に示されている。
【００４７】
内部メモリ１３は、複数の論理セルの結合に関する情報を有する複数の異なるマイクロプログラム１４を含んでいる。
【００４８】
プログラムポインタ１５はメモリ１３のマイクロプログラムの１つを選択する。選択されたプログラム１６は、論理セル２のプログラミングのために必要とされる全ての情報を有する。それらの情報は、処理ユニット、制御ユニット、変数、入力／出力プロセス（Ｉ／Ｏ）および命令トークンに関する情報である。各マイクロプログラムは全ての上述の点に対する情報を有することは必要でなく、問題設定に応じて個々の点はもはや考慮されなくてよいか、またはマイクロプログラムが他のプログラム情報を含むことができる。
【００４９】
プログラムルーチン１７は、選択されたマイクロプログラム１６の情報を解析し、必要な論理関数をプログラムする。
【００５０】
論理セル領域１８は規則的に行および列に配置された多数の磁気抵抗効果型の論理セル１９を含んでおり、これらの論理セル１９は図３に概略的に格子点によって表わされている。論理セル領域１８は非常に多くの論理セル１９を含み、例えば１０００×１０００個のセル、つまり全部で百万個の論理セルを含んでいる。この実施例では、論理セル領域１８は単一の層からなる。複数のこの種の論理セル領域を組み合わせて論理セル格子を形成することも可能である。
【００５１】
個々の各論理セル１９は基本論理結合を実行する。基本論理結合は、例えばＡＮＤゲートまたはＸＯＲゲートであってよく、またはそれに相応して構成することができる。
【００５２】
必要な論理演算およびローカルなメモリ個所のプログラミングのために、プログラムルーチン１７が、まだ確保されていないかもしくはもはや必要でなく且つ再プログラム可能である論理セル１９もしくは論理セルグループを選択する。このために、リストとして形成することもでき自由に使用可能な論理セルを含むテーブルが役立つ。代替として、既に確保された論理セルを検出し、同様に故障だとわかった論理セルを検出してもよい。テーブル２０は２次元または３次元マトリックスとして形成することもでき、各論理セル１９に対して動作状態に関する情報を含む登録事項を有する。各プログラミング過程後にテーブル２０は更新すなわち最新化され、新しく確保された論理セル１９はテーブル２０においてそれ相応に目印を付けられ、もはや必要でない論理セル１９は再び解放される。テーブル２０の情報に基づいて、論理セル領域１８のどの範囲に現在プログラムすべきマイクロプログラム１６が記憶されるかが決定される。プログラムされた状態と結合とに関する情報は非常に省スペースに保存することができる。
【００５３】
図３には主メモリ、並びにこれに付属し公知のように処理データおよび命令語を有する周辺装置は示されてないが、命令語は動作状態のマイクロプログラムによって内部メモリ１３から選択される。
【００５４】
図３から分かるように、論理セル領域１８は既に幾つかのプログラムされた論理セルブロック２１，２２，２３を有し、これらの論理セルブロック２１，２２，２３にそれぞれメモリ１３の定められたマイクロプログラムが割り当てられている。論理セルブロック２１，２２間には概略的に接触点２４が表示されている。この接触点２４では論理セルブロック２１，２２間で信号またはデータを交換することができる。勿論、２つの隣接する論理セルブロック間にはこの種の接触点を複数配置することもできる。
【００５５】
或る論理セルのプログラミングのためには、先ず、この論理セルが選択ステップ２５においてその行および列に基づいて決められなければならず、引き続いてプログラムルーチン１７によってプログラムされ、この過程は必要な接続線の接続も含む。
【００５６】
論理セル領域１８は、テーブル２０においてもはや必要でないとして目印を付けられている他の論理セルブロック２７，２８を含んでいる。これらは後の時点で再構成することができる。
【００５７】
論理セルブロック２１，２２，２３の全論理セルがプログラムされているならば、その直後から、付属の論理セル結合の実行を開始することができる。多数の論理セルブロックは、それらがリングまたはループを形成するように互いに連鎖させることもできる。
【００５８】
論理セルブロック２１，２２，２３の作動のためには命令トークンが必要である。論理セルブロック２１，２２，２３の１つの出力に現われる論理信号が問題である。それによって、論理セルブロックのその都度１つのみが能動状態にあることを達成すべきである。能動状態にある論理セルブロックでは、命令トークンがセットされ、次にこの論理セルブロックに作動電圧が供給される。この論理セルブロックに割り当てられたマイクロプログラムの実行後に、命令トークンがリセットされて作動電圧が遮断される。命令トークンは直ぐ次の論理セルブロックに転送されるので、当該論理セルブロックは動作することができる。
【００５９】
複数のマイクロプログラムが同時に実行されるように同時に複数の命令トークンをセットすることも可能である。これらの作動様式は分散型プロセッサに相当する。勿論、その都度の命令トークンに割り当てられた論理セルブロックが互いに独立に動作することを考慮すべきであり、つまりメモリまたはアドレス線ないしデータ線へのアクセス時に衝突が起こることが回避されなければならない。従って、複数の論理セルブロックを同期動作させるのがよい。勿論、上述の衝突の発生に対して事前に対策を講じるならば、非同期動作様式も可能である。
【図面の簡単な説明】
【００６０】
【図１】複数層の論理セルからなる本発明による論理ユニットの横断面図
【図２】垂直な接続穴を有する本発明による論理ユニットの概略断面図
【図３】本発明によるディジタル論理ユニットの構成の概略経過図
【符号の説明】
【００６１】
１        論理ユニット
２        論理セル
３        接続導体路
４        接続導体路
５        絶縁層
６        絶縁層
７        他の構成要素
８        層
９        層
１０        層
１１        層
１２        接触穴
１３        内部メモリ
１４        マイクロプログラム
１５        プログラムポインタ
１６        マイクロプログラム
１７        プログラムルーチン
１８        論理セル領域
１９        論理セル
２０        テーブル
２１        論理セルブロック
２２        論理セルブロック
２３        論理セルブロック
２４        接触点
２５        選択ステップ
２６        論理セル
２７        論理セルブロック
２８        論理セルブロック
【図１】
2005510901.tif 000003
【図２】
2005510901.tif 000004
【図３】
2005510901.tif 000005
【手続補正書】
【提出日】平成16年6月30日(2004.6.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
構成可能な特性を有する複数の論理セル（１９，２６）と、
複数の論理セル（１９，２６）の関数性に関する情報を含んだ複数のマイクロプログラム（１４，１６）を有し、マイクロプログラム（１４，１６）の少なくとも１つが定められたアプリケーションに関係して少なくとも論理ユニットの現在の動作中に再プログラム可能であるメモリ（１３）と、
少なくとも１つのマイクロプログラム（１４，１６）を選択するための手段と、
少なくとも論理ユニットの現在の動作中に選択されたマイクロプログラム（１４，１６）の関数性情報に応じて論理セルを構成するための手段と
を備え、データ信号と構成信号とを同時に処理可能であることを特徴とする再構成可能なディジタル論理ユニット。
【請求項２】
論理セル（１９，２６）は磁気抵抗効果型の積層システムを有することを特徴とする請求項１記載の論理ユニット。
【請求項３】
論理セル（１９，２６）は格子状に配置されていることを特徴とする請求項１又は２記載の論理ユニット。
【請求項４】
論理セル（１９，２６）はほぼ横方向および縦方向に延びる接続導体路（３，４）に接続されていることを特徴とする請求項１乃至３の１つに記載の論理ユニット。
【請求項５】
交差する接続導体路（３，４）は異なる平面に配置されていることを特徴とする請求項４記載の論理ユニット。
【請求項６】
論理セル（１９，２６）は異なる層に格子状に配置されていることを特徴とする請求項１乃至５の１つに記載の論理ユニット。
【請求項７】
論理セル（１９，２６）は互いにずらされて配置されていることを特徴とする請求項１乃至６の１つに記載の論理ユニット。
【請求項８】
論理セル（１９，２６）に基本的な論理関数ＡＮＤ，ＸＯＲ，ＯＲ，ＩＮＶまたは逆関数ＮＡＮＤ，ＸＮＯＲ，ＮＯＲ，ＢＵＦが割り当てられか、または論理セル（１９，２６）はそのように構成可能であることを特徴とする請求項１乃至７の１つに記載の論理ユニット。
【請求項９】
複数の論理セル（１９，２６）が結合されて１つの論理セルブロック（２１，２２，２３）を形成していることを特徴とする請求項１乃至８の１つに記載の論理ユニット。
【請求項１０】
論理セルブロック（２１，２２，２３）は半加算器または全加算器または掛算器として構成されていることを特徴とする請求項９記載の論理ユニット。
【請求項１１】
論理セル（１９，２６）はローカルメモリを有するかまたはメモリとして構成可能であることを特徴とする請求項１乃至１０の１つに記載の論理ユニット。
【請求項１２】
新しいマイクロプログラムの特にアプリケーション指向の定義のためおよび／または現存するマイクロプログラムの変更のための命令を作成する手段が存在することを特徴とする請求項１乃至１１の１つに記載の論理ユニット。
【請求項１３】
マイクロプログラム（１４，１６）はファームウェアを含む命令を有することを特徴とする請求項１乃至１２の１つに記載の論理ユニット。
【請求項１４】
マイクロプログラム（１４，１６）に割当てられたアプリケーションプログラムを作成する手段が設けられ、アプリケーションプログラムがマイクロプログラム（１４，１６）の命令順序を識別して新しいマイクロプログラムとして格納することを特徴とする請求項１乃至１３の１つに記載の論理ユニット。
【請求項１５】
マイクロプログラム（１４，１６）は、論理関数、結合、変数および定数の構成のうちの少なくとも１つのための命令を含んでいることを特徴とする請求項１乃至１４の１つに記載の論理ユニット。
【請求項１６】
マイクロプログラム（１４，１６）はメモリ、特に揮発性メモリまたは不揮発性メモリまたは永久メモリと協動することを特徴とする請求項１乃至１５の１つに記載の論理ユニット。
【請求項１７】
マイクロプログラム（１４，１６）は論理セルブロック（２１，２２，２３）に複写可能であることを特徴とする請求項９乃至１６の１つに記載の論理ユニット。
【請求項１８】
マイクロプログラム（１４，１６）は、再構成可能な論理セル（１９，２６）および／または論理セルブロック（２１，２２，２３）および／または構成可能でない論理セルの間における接続を構成するための手段を有することを特徴とする請求項９乃至１７の１つに記載の論理ユニット。
【請求項１９】
論理関数の実行が少なくとも１つの命令カウンタによって制御可能であることを特徴とする請求項１乃至１８の１つに記載の論理ユニット。
【請求項２０】
命令カウンタに現在割り付けられている論理セル（１９，２６）および／または命令カウンタに現在割り付けられている論理セルブロック（２１，２２，２３）またはこれらの論理セルブロック（２１，２２，２３）の一部に対して、作動電圧が投入可能であることを特徴とする請求項１９記載の論理ユニット。
【請求項２１】
論理ユニットは複数の命令カウンタを有することを特徴とする請求項１９又は２０記載の論理ユニット。
【請求項２２】
論理ユニットは、１つまたは複数の命令カウンタにより複数の論理関数が同期して実行されるように構成されていることを特徴とする請求項１９乃至２１の１つに記載の論理ユニット。
【請求項２３】
マイクロプログラム（１４，１６）は、論理関数の実行が予め定められた時間で行なわれるように構成されていることを特徴とする請求項２２記載の論理ユニット。
【請求項２４】
マイクロプログラム（１４，１６）は、マイクロプログラム（１４，１６）が論理関数の実行のための時間に関する情報を有するように構成されていることを特徴とする請求項２２記載の論理ユニット。
【請求項２５】
論理ユニットは論理関数が非同期で実行されるように構成されていることを特徴とする請求項１９乃至２１の１つに記載の論理ユニット。
【請求項２６】
論理ユニットは、論理セル領域へのマイクロプログラムの割り当てに関するテーブル（２０）を有することを特徴とする請求項１乃至２５の１つに記載の論理ユニット。
【請求項２７】
テーブル（２０）は故障の論理セルに対する情報を含んでいることを特徴とする請求項２６記載の論理ユニット。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構成可能なディジタル論理ユニットに関する。
【０００２】
プロセッサのような従来のプログラム可能な論理モジュールはメモリからロードされたプログラムを実行する。これらのメモリはディスクリートモジュール（例えば、ハードディスク、メモリチップ）として組み込むか、もしくはプロセッサに集積化することができる。前者についての公知例が公知のＩＢＭコンパチブルのＰＣであり、後者についての公知例が所謂フラッシュマイクロプロセッサである。実行すべきソフトウェアは命令語の形で機械命令としてメモリに格納されている。命令語がロードされ、解析され、処理ユニットで実行される。個々の機械語の処理が論理ユニットの多数の個別動作を作動させる。
【０００３】
従来のプログラム可能な論理モジュールの決定的な特徴は、処理ユニットが数クロックサイクルのための各新しい命令語によって新しくプログラムされることにある。処理ユニットにおける前の命令語に関する情報はレジスタ内容を除いて上書きされる。最新のマイクロプロセッサの処理ユニットは可能な演算の数の多さにより非常に労力をかけて構成されている。５００個以下の命令語に対して、３０００万個以上のトランジスタが必要であり、このことはそれ相応に大きなエネルギー消費をもたらす。というのは、各トランジスタは使用されずに待機状態にあるときにもエネルギーを消費するからである。エネルギー節約を達成するために、作動電圧を適合させること、すなわち低くすることが既に提案されている。同様にクロック周波数が低減され、勿論それによって論理ユニットの全出力が低下する。
【０００４】
これらのトランジスタの設計、製造および試験の費用は巨大である。一度設計された関数性は変更することができない。定められた時点で一つの問題しか処理することができない。
【０００５】
特にプログラムループを実行する際、プロセッサの僅かな部分のみが能動状態にある。大抵のアプリケーションは非常に多くのプログラムループを含み、各ループはループ内に組み込まれた比較的僅かな命令しか含んでいない。この場合、問題になるのは計数ループ、例えば洗濯機におけるすすぎプロセスの回数である。同様に、繰り返し回数がループ開始時に未知である条件付きループが非常に頻繁に起こる。というのは、ループは結果に関係して離れるからである。結果が出なければ、ループ内で前の命令が繰り返される。
【０００６】
ディジタル論理ユニット、特にマイクロプロセッサを備えたコンピュータは、ノイマン型コンピュータの構想に基づく。中央ユニットすなわちコンピュータ中心部分は、主要構成部分、すなわち主メモリ、制御ユニットおよび処理ユニット（演算装置）からなる。主メモリは命令語（プログラムデータ）および処理データ（オペランド語）を記憶し、これらを要求に応じて使わせる。更に、主メモリは処理の中間結果および最終結果を収容する。主メモリは揮発性メモリおよび不揮発性メモリによって実現することができる。制御ユニットは命令語が実行される順序を編制する。制御ユニットは命令語を主メモリから要求し、処理ユニットでの命令語の実行を指示する。制御ユニットは命令語を解析し、処理ユニットへの処理データの供給を指示する。処理ユニットは処理データに対して演算を実行し、結果を主メモリに供給する。各演算のために、処理ユニットは必要な伝送線を投入するマイクロプログラムを含んでいる。処理ユニットは制御ユニットによってその都度の演算すなわち実行すべき命令にセットされる。この中央ユニットは上述の外部メモリ、入出力装置である周辺装置に付設されている。中央ユニットの既述の主要構成要素は物理的に分離されていてもよいが、しかし大抵はキャッシュを備えた共通なプロセッサチップ上、または例えば組み込まれたＲＯＭ上で実現されている。
【０００７】
公知のディジタル論理ユニットは、特に頻繁に繰り返される動作を行う際に、例えばプログラムループを実行する際に、既に数プロセッサクロック前に命令レジスタ内にあった命令語をロードして実行するという欠点を有する。このようなループに関する例がキーボード走査である。キーが全く押されていない場合、全てのループ命令が短い間隔で繰り返され、毎回命令語が完全に新しいものとして改めてロードされなければならない。プロセッサの大部分は待機中には必要でないが、しかしプロセッサがこの時間内に他の問題を処理することができるわけではない。
【０００８】
この種の論理ユニットの利用率は極めて悪い。というのは、存在するハードウェアのほんの一部分しか利用されないためである。チップ面積の大部分が利用されないままであるにもかかわらず、連続的に、作動のためのエネルギーが消費されなければならない。
【０００９】
様々の与えられた状況にプロセッサを適合させることは、少ない複雑な局面で既に実施されている。この例が種々のプログラムを有するプロセッサのメモリバンクの切換えである。現在利用されていないメモリバンクを変更することができる。この技術はＩＡＰ（イン・アプリケーション・プログラミング）と呼ばれている。この措置によって達せられた改善は比較的僅かである。なぜならば、プロセッサハードウェアに変更はなく、実行すべきプログラムが同時に他のプロセッサによりロードされるだけであるからである。
【００１０】
より少ない複雑な問題に対しては、しばしばプログラム可能な論理モジュール（ＰＬＤ）が使用される。この論理モジュールは、例えば米国特許第４８７０３０２号明細書、または刊行物「Ｒａｎｍｕｔｈｕ，Ｉ．Ｗ．ｅｔ  ａｌ．；Ｍａｇｎｅｔｒｏ−ｒｅｓｉｔｉｖｅ  ｅｌｅｍｅｎｔｓ−Ａｎ  Ａｌｔｅｒｎａｔｉｖｅ  ｔｏ  Ｆｌｏａｔｉｎｇ  Ｇａｔｅ  Ｔｅｃｈｎｏｌｏｇｙ；Ｉｎ：Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｍｉｄｗｅｓｔ  Ｓｙｍｐｏｓｉｕｍｓ  ｏｎ  Ｃｉｒｃｕｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍｓ，１９９２，ｐ．１３４〜ｐ．１３６，ｖｏｌ．１」から公知である。全アプリケーションプログラムは、このような論理モジュールの場合、特殊コンパイラ（所謂フィッタ）内で適切な命令に置き換えられる。ＰＬＤはこれらのプログラムデータにより一回限り一般にブート過程において定義される。つまり、プログラムメモリからプログラムが読み出され、構成可能な範囲が構成される。構成可能な範囲は次の特性を持つ。すなわち、構成可能な範囲は、予め与えられた点間の論理結合を定義する（ルーチング範囲）か、または論理入力信号を論理出力信号へ処理する（論理セル範囲）。しかし、製造者によって実現されたＰＬＤの技術コードとは相違する接続が必要とされ、２つ以上の接続ブロックがカスケード接続されなければならない場合、走行時間増大および通過遅延が生じる。それによって、アプリケーションプログラム実行の実際の速度を予測することができない。多くの場合、例えば、ＰＬＤにおける最小の速度要求または信号の同期化を実現できるようにするためにプログラムにおける適合が必要である。論理信号を処理する際に現存とは異なる特性（例えば、より高いビット幅）が要求される場合には、同様にカスケード接続されなければならない。それによって、ＰＬＤでは結合範囲の面積が論理範囲よりも大きい。それゆえ、モジュールを構成可能であるにもかかわらず、異なる課題に対する柔軟性が僅かである。従って、実際上の問題においては一般に、その問題（例えばビット幅、通過遅延要求）により良好に適合している資源を有する他のチップ構成を持つ他のチップが選択される。ＰＬＤのアーキテクチャ構想は、フィッタのプログラミング情報をＰＬＤチップ上における多数の同様の論理セルに配分することを意図している。これらは多数の同様のルーチング範囲によって結合される。従って、プログラミング情報は平面に配分されている。ＰＬＤの構成可能性はブート過程において設定される僅かな構成可能なパラメータに限られる。その場合に２つのメモリが必要である。すなわち、外部のブートメモリチップ（ディスクリートチップ、例えば米国特許第４８７０３０２号明細書におけるＥＥＰＲＯＭ１１３）および内部の平面配分されたメモリセル（例えば米国特許第４８７０３０２号における図３ａおよび図１０ａ、またはＲａｎｍｕｔｈｕ氏らの先に挙げた刊行物における図５）である。ローカルメモリセルはブート過程の後に結合およびセルの論理関数についての情報を有する。配分されたメモリセルの平面効率および損失電力効率は同じ能力のディスクリートメモリチップよりも２桁程度劣る。しかし、アプリケーションプログラムはチップが用意しているよりも少ない能力を必要とするので、利用されない範囲が同様に損失電力を消費することは避けられない。ＰＬＤの資源の標準的な利用率は約３０％〜７０％である。それによっても、定められた時点では僅かな部分しか能動的に論理情報の処理に関与しない。
【００１１】
従って、本発明の課題は、上述の欠点を回避し、ハードウェアの利用率が改善されたディジタル論理ユニットを提供することにある。
【００１２】
この課題は、構成可能な特性を有する複数の論理セルと、複数の論理セルの関数性（functionality）に関する情報を含んだ複数のマイクロプログラムを有し、マイクロプログラムの少なくとも１つが定められたアプリケーションに関係して少なくとも論理ユニットの現在の動作中に再プログラム可能であるメモリと、少なくとも１つのマイクロプログラムを選択するための手段と、少なくとも論理ユニットの現在の動作中に選択されたマイクロプログラムの関数性情報に応じて論理セルを構成するための手段とを備え、データ信号と構成信号とを同時に処理可能である再構成可能なディジタル論理ユニットによって解決される。
用語「関数性」は、「データ処理」並びに「データ結合」であると解すべきである。
【００１３】
従って、本発明による論理ユニットは現在の動作中に可変であり、すなわち論理セルは論理ユニットの動作中に構成可能であり、１つのマイクロプログラムまたは複数のマイクロプログラムを論理ユニットの現在の動作中に、つまりその現在の演算中に再プログラムすることができる。それゆえ、論理ユニットの現在の動作状態においていつでも出された処理すべき課題への論理ユニットの適合化が可能である。なぜならば、固定の構成およびプログラムを製造者側で予め設定するのではなく、むしろ、いわば現場で構成し、特性を変更し適合させることができるからである。プログラミングまたは構成の変更はプログラマによってソフトウェア的に予め設定することができ、しかし自主的に学習するシステムであってもよい。従って、常に与えられている変化可能性によって、全ての有り得る命令もしくは結合がチップ上で実現されなければならないというわけではなく、むしろ今与えられた要件に従って動作中に必要な結合が作られる。従って、チップ上に必要なスペースは極めて少なくてすみ、損失電力も明らかに低減できる。なぜならば、設定可能性により、要求されたアプリケーションのために必要とされるようなセルおよび結合のみが構成されるからである。
【００１４】
用語「現在の動作」は、論理回路が機能を提供している状態であると解すべきである。原理的に論理回路は次のモードつまり動作状態に区分けされる。“遮断状態”（データは記憶されるが、変更できない）；“ブート状態”（動作状態へ進行）；“現在の動作状態”（本発明による論理ユニットの特色を示す状態として）；“停止に至る状態”（現在の動作が終了し、“遮断状態”が準備される）。他の状態“利用不可状態”（例えば、＝クラッシュ状態）はブート過程または現在の動作から到達し、“停止に至る状態”を通してのみ再び終了する。特殊例“ホットスタート”は移行過程の“停止に至る状態”および“ブート状態”を統合する。本発明による論理ユニットにおいては、少なくとも遮断モード、ブートモード、停止に至るモード、および利用不可モードの外では、再構成可能性が保証される。それに対して、従来技術（欧州特許出願公開第０２５３５３０号明細書参照）におけるＰＬＤ回路の構成は特別なブート過程のみを示している。勿論、論理ユニットは追加的にさらに公知のように始動モードおよび／または停止に至るモード中に上記部分の再構成可能性を可能にする。
【００１５】
使用された用語「論理セル」は、どれも、論理関数を実行する要素と解すべきである。最も簡単な場合は個別のメモリセルであり、複雑な場合はゲート、多数のゲートからなるサブネットワークあるいはプロセッサエレメントであってよい。論理セルの機能原理はサブルーチンの機能原理に対応し、簡単な関数性（例えば出力＝入力または出力＝一定）を含むか、または著しく複雑な関数性を有するサブネットワークとして構成することができる。大抵、頻繁な使用（例えばゲート関数または全加算器のような単純な論理関数）または適切且つ有利な構成（特に、商業的なＩＰの形で）によって傑出している部分問題が含まれている。
【００１６】
使用された用語「構成可能な特性」は、あらゆる、不揮発性ではあるが可変の特性または動作パラメータであると解すべきである。論理セルの例としては、入力におけるビット幅／変数の個数，入力の物理的位置，ビットのコーディング（例えばシリアルまたはパラレル），ビットの論理処理，時間的挙動，レジスタ機能，ローカルメモリ機能、出力におけるビット幅、出力ビットの物理的位置あるいは動作準備が挙げられ、これらの枚挙にはいとまがない。変更はチップ内の他のプロセッサに無関係に非常に高速に（マイクロ秒およびナノ秒の範囲で）実施することができ、理想的にはビット処理および結合はクロック毎に行なわれる。
【００１７】
原理に基づいて構成とデータ処理とが実質的に同速度でかつ同時に行なわれると特に有利である。それによって、何時でも、すなわちあらゆる時点につまり全ての動作状態において構成できることが保証される。
【００１８】
磁気抵抗効果型の積層システムを有する構成可能な特性を持つ論理セルが特に適している。このような積層システムは特に僅かなナノ秒で特別に高速に磁気的に調整可能である。
【００１９】
磁気抵抗効果層を有する論理セルの代わりに、類似の性能のよい代替技術、例えば強誘電体ランダムアクセスメモリ（ＦＲＡＭ）を使用することもできる。
【００２０】
本発明による論理ユニットの各論理セルは、少なくとも１つの磁気抵抗効果型の積層システムと、接続導体路に接続されている入力端子および出力端子とを有する。積層システムは、ＧＭＲ型（巨大磁気抵抗効果型）、ＴＭＲ型（トンネル磁気抵抗効果型）またはＡＭＲ型（異方性磁気抵抗効果型）からなるとよい。
【００２１】
磁気層の磁化方向は情報記憶に利用される。この記憶過程は非常に高速でほぼ無制限に頻繁に実施可能である。メモリセルの抵抗は、基準方向に対して相対的に自由な磁気層の磁化方向に関係して低いか又は高い。それを基礎としている論理セルは論理ゲートとして使用することができ、複数のセルの駆動もしくは接続によって実質的に全ての通常のゲート機能（例えば、ＮＯＲ，ＸＯＲ，ＡＮＤ，ＯＲ，ＩＮＶ等）を実現することができる。その場合に重要なことは、適切な手段によってこれらの少なくとも２つのゲート関数間の関数性が変更可能であることである。同様に、論理セルはメモリとして使用することができ、特に論理結合の結果を記憶することができる。特に好適なのはＴＲＡＰ型（トンネルランダムアクセスメモリ）のメモリセルである。というのは、これは無限に書込み可能であるからである。
【００２２】
本発明によれば、ディジタル論理ユニットにおいて、論理セルの結合により、半加算器、全加算器または掛算器の機能を有する論理セルブロックが形成される。付加的に論理セルはローカルメモリを含む。これは論理結合の中間結果または最終結果を記憶する。
【００２３】
本発明によるディジタル論理ユニットは複数のマイクロプログラムを有する内部メモリを含む。内部メモリは主メモリからの命令語によって呼び出され、複数の論理セルの関数性および論理結合に関する情報を含んでいる。命令語は主メモリからロードされ、解析され、マイクロプログラムに基づいてそのために必要な論理セル配置が導き出される。このようなマイクロプログラムはマクロ命令に匹敵し、複数の論理セルの結合によって実現することができる多数の基本演算を含んでいる。標準的な基本演算はロード、解析または選択である。従って、マイクロプログラムは構成設計または回路構成の手段とみなすことができ、論理セルに関する必要な全ての情報を含んでいる。付加的に場合によっては必要なメモリ、レジスタまたは類似の構成要素に関する情報も含んでいてもよい。更に、マイクロプログラムは定数も含むことができ、例えば数「０」を定数として定義することができる。変数および定数を持つ入力、出力、または入力の結合に関する情報をマイクロプログラムによって定義することができる。
【００２４】
多くの標準問題をマイクロプログラムによって満たすことができ、例えばキーボード走査をマイクロプログラムによって定義することができ、同様に外部装置へのデータの出力または外部装置からのデータの入力および受信を定義することができる。同様に、任意の論理結合（例えば、基本計算法の如き算術結合、非常に複雑なアルゴリズム）をマイクロプログラムの形で記憶することができる。論理結合は、それぞれマイクロプログラムによって定義される個別の構成部分に分解される。
【００２５】
特に有利であるのは、本発明に従って少なくとも１つのマイクロプログラムが再プログラム可能であることである。マイクロプログラムは、ロードし、定められたアプリケーションに応じて変更することができる。それによって、論理ユニットの特に高い柔軟性が達せられる。マイクロプログラムが新しいマイクロプログラムを定義するための命令または現存のマイクロプログラムを変更するための命令を有すると好ましい。
【００２６】
本発明思想の発展形態によれば、マイクロプログラムはファームウェアを含む命令を有することが提案されている。更に、マイクロプログラムの命令順序は、アプリケーションプログラムによって識別可能であり、新しいマイクロプログラムとして格納可能である。
【００２７】
更に、本発明によるディジタル論理ユニットは、少なくとも１つのマイクロプログラムを選択するための手段を含むことができる。マイクロプログラムは予め定義されていてもよいし、「進化するハードウェア」という意味において新しく定義することもできる。メモリは、上記手段によってその都度少なくとも１つのマイクロプログラムを選択する多数の命令語を含む。
【００２８】
少なくとも１つのマイクロプログラムの選択はプログラムポインタによって行なうことができる。
【００２９】
本発明によるディジタル論理ユニットは、更に、選択されたマイクロプログラムの関数性情報に応じて論理セルを構成するための手段を含む。
【００３０】
選択されたマイクロプログラムによって定義された論理セルの論理結合並びに場合により必要なローカルメモリセルが再プログラム可能なハードウェアにおいてプログラムされる。磁気抵抗効果型の論理セルがプログラムルーチンによってプログラムされる。プログラムルーチンは、どのような順序で個々の論理セルがプログラミング電流を得るかを決定する。それによって、所望の論理ゲート関数がプログラムされる。同様に異なる論理セル間の結合が作成される。
【００３１】
本発明によるディジタル論理ユニットにおいて使用されたメモリは、メモリ内容が揮発性ではなく、すなわちメモリ内容が電圧遮断後にもそのまま維持されるという利点を有する。それにもかかわらず、既にプログラムされた論理セルを後の時点で再プログラムすることができ、つまり論理セルの関数性を再構成することができる。従って、プログラムループが「ハードウェアで」ランし、つまり、定められた論理結合について、そのために正確に適したハードウェア構成が作られ、そのハードウェア構成は処理すべき問題にできるだけ最適に適合させられている。実際に現在必要とされる論理セルにだけ電圧が供給されなければならない。論理セルによって定義されたプログラムループが最終的に離れられたときに、付属の論理セルは遮断されるので、当該論理セルはもはや全くエネルギーを消費しない。それによって、ハードウェアの大部分が常に待機状態にあり、その状態において電流を消費するという、従来の論理ユニットにおいて発生した問題が回避される。
【００３２】
論理セルを格子状に配置すると特に好ましい。それによって規則的に配置された論理セル層が作成される。このような論理セル層の場合、個々の各論理セルはマトリックスの成分のように行および列の指定によってアドレスを与えられることができる。種々の形式の論理セルが規則的に格子領域上に分布させられるとよい。例えば、ＮＯＲゲート、ＸＯＲゲートおよびＡＮＤゲートのようなしばしば必要なゲートを格子領域の全範囲に配置することができるので、個々の論理セルの結合時に比較的僅かな間隔および少ない関数性構成しか橋絡しない。論理セル結合は格子領域において基本的には任意の形で形成することができる。結合すべき論理セルが直接にまたはできるだけ近くに隣り合う論理セル結合が有利である。結合された論理セルは格子領域上に線状にも面状にも、すなわち関数ブロックの形で配置することができる。
【００３３】
磁気抵抗効果型の積層システムと入力端子および出力端子とを備えた論理セルは、ほぼ横方向および縦方向に延び特に直角に交差する接続導体路に接続されている。導体路は銅材料からなる。
【００３４】
本発明思想の他の構成においては、論理セルが異なる層または平面に格子状に配置されている。３次元に配置された論理セルは著しく多様な論理結合可能性を生じる。論理セル内で変数または定数を記憶することも可能である。この論理セルには異なるマイクロプログラムによってアクセスすることができる。例えば、マイクロプログラムの１つを高い方の層に配置し、他方のマイクロプログラムを論理セルと並べて位置させることができる。従って、この論理セルは複数のマイクロプログラムによって利用することができる。
【００３５】
論理セルの異なる層平面の接続は公知のように層平面に対して垂直に配置された接触穴によって行なわれる。このような３次元の構成は公知であり、これ以上の説明を必要としない。磁気抵抗効果型の積層システムが中間に存在する交差する接続導体路の４〜６個の層平面を含んでいる再構成可能なディジタル論理セルが有利である。個々の層は絶縁層によって互いに分離するとよい。付加的に、外側には、従来のシリコン技術で製作することができる他の構成要素が存在していてよい。特に互いに隣接する層は平面内に互いにずらして配置するのがよい。それによって、例えば第２の層と第４の層との間において直線の接続導体路を形成することができる。格子配置は直交座標系であってもよいが、しかし、直ぐ隣り合わせの個数より多くするために、六角形の密度の非常に高いパックの形で「ハニカム」を配置することもできる。
【００３６】
本発明に従って、論理関数の実行が少なくとも１つの命令カウンタによって制御可能であるとよい。命令カウンタは命令トークンとも呼ばれ、どの論理セルが現在能動状態にあるかを信号で知らせる。すなわち、命令トークンは現在動作している論理セルもしくは現在動作している論理結合を示す。命令カウンタは、１つの論理セルにおいてのみセットされ（"１"）、他の全ての論理セルにおいてはセットされない（"０"）という論理信号であってよい。
【００３７】
本発明の第１の実施態様によれば、論理ユニットのために単一の命令カウンタが設けられている。従って、一時点では単一の論理セルもしくは単一の論理セル結合しか動作状態にすることができない。残りの論理セルはその間は不動作状態にある。当該論理関数が実行されているときに、命令カウンタは「前進」させられ、つまり次に実行すべき論理セルを指し示す。１つのマイクロプログラムもしくは複数のマイクロプログラムが連続的に論理セル領域に配置されているので、個々の論理セルが順次実行される。代替として、論理セルもしくは論理セル結合が自由に選べるように論理セル領域に記憶されていてもよく、この配置はハードディスク上のデータ記憶に匹敵する。
【００３８】
第２の実施態様によれば、論理ユニットは同時に能動状態になることのできる複数の命令カウンタを有する。従って、２つ以上のマイクロプログラムを同時にランさせることができ、つまり並行処理を行なわせることができる。命令カウンタつまり命令トークンは、フラグレジスタ内に記憶され且つ計算終了後にリセットされる論理信号として形成することができる。"１"は論理セル結合が能動状態であることを意味し、計算後にフラグが"０"にリセットされる。能動状態の論理セル装置もしくは能動状態のマイクロプログラムのみが値"１"を有し、これは作動電圧が能動状態のマイクロプログラムに関係する論理セルに対して投入されるようにする。プログラムされた定数および結果の引き渡しの共通利用が可能である。
【００３９】
マイクロプログラムの実行は種々の様式で行なうことができる。同期して動作する論理ユニットの場合には、次のクロックによりフラグが走査され、続いて次のマイクロプログラムが作動させられる。同期式の論理ユニットにおける実行が簡単に時間制御されて行なわれること、つまり各マイクロプログラムはプログラムされた命令語の実行のために等しい十分な時間を持つことができる。同期式の論理ユニットにおける実行が複雑に時間制御されて行なわれること、つまり各マイクロプログラムはプログラムされた命令語の実行のために予め与えられた時間と結びつけられていることも可能である。この時間情報は例えばマイクロプログラムの変数に含まれているのがよい。
【００４０】
更に、非同期で動作する論理ユニットの場合には、論理形式の釈放信号を直接にもたらすことができる。その場合に、プログラムされた命令語の実行時間は重要ではない。場合によっては、１つのメモリセルへの同時アクセスのような衝突を回避するために、同時に能動状態の複数のマイクロプログラムを同期化させるための措置が必要である。
【００４１】
本発明の発展形態に従って、論理ユニットは、確保された論理セルおよび／または確保されていない論理セルのテーブルを含むと好ましい。必要な論理セル装置、例えば掛算器が既に構成されたブロックとして存在するかどうかを調べるアルゴリズムを使用することも考え得る。この場合には、同一の論理セル装置を異なるマイクロプログラムによって使用することが有り得る。更に、現存の論理セルの最適な利用率を達成するために、アルゴリズムが論理セルの自由範囲を発見すると好ましい。同様に論理セルの機能性をチェックし、場合によっては故障として分類した論理セルにテーブルにおいて目印を付けるようにするとよい。
【００４２】
本発明の他の利点および詳細を、以下に説明する実施例から並びに図面に基づいて明らかにする。図面は概略表示であり、
図１は多層の論理セルからなる本発明による論理ユニットの横断面図、
図２は垂直な接続穴を有する本発明による論理ユニットの概略断面図、
図３は本発明によるディジタル論理ユニットの構成の概略経過図を示す。
【００４３】
図１に断面図で示されたディジタル論理ユニット１は複数層の磁気抵抗効果型の論理セル２からなる。各論理セル２は、接続導体路３，４に接続されている図１に示されていない入力端子および出力端子を備えた磁気抵抗効果型の積層システムを有する。接続導体路３，４は異なる面に配置されている平行な多数の導体路を含む。個々の導体路は電気的に互いに絶縁され、接続は導体路３にも導体路４にも接している論理セル２を介してのみ行なわれる。メモリセルのそれぞれは絶縁層５によって隣接する層から絶縁されている。論理ユニット１は４〜６個のこの種の個別層を含むと望ましい。
【００４４】
論理セル２は、不揮発性であるが、しかし再プログラム可能であり、高速でプログラムすることができる再書き込み可能な論理要素である。論理セル２は、論理関数および同時にメモリを実現する可能性、または結合を投入または遮断する可能性を提供する。
【００４５】
下部の絶縁層６の下側には、従来のシリコン技術で形成された他の構成要素７が概略的に示されている。従って、論理セル２をシリコン半導体と組み合わせることが可能である。
【００４６】
図２は個別層間に垂直な接続穴を備えた本発明による論理ユニットの概略的な断面図を示す。
【００４７】
論理ユニット１は、図１の論理ユニットと同様に構成されている層８，９，１０からなる。層８，９，１０と下部の層１１との間には、層間もしくは層上に配置された論理セル間における垂直な接続を作り出す接触穴１２が形成されている。同様にして、接続導体路が３つの全空間軸に沿って形成され格子の各交差点に論理セルが存在するような格子構造も実現することができる。論理セルのアドレス割り付けのために、それらのＸ，Ｙ，Ｚ座標が必要である。
【００４８】
図３には、ディジタル論理ユニットを構成する際の経過が概略的に示されている。
【００４９】
内部メモリ１３は、複数の論理セルの結合に関する情報を有する複数の異なるマイクロプログラム１４を含んでいる。
【００５０】
プログラムポインタ１５はメモリ１３のマイクロプログラムの１つを選択する。選択されたプログラム１６は、論理セル２のプログラミングのために必要とされる全ての情報を有する。それらの情報は、処理ユニット、制御ユニット、変数、入力／出力プロセス（Ｉ／Ｏ）および命令トークンに関する情報である。各マイクロプログラムは全ての上述の点に対する情報を有することは必要でなく、問題設定に応じて個々の点はもはや考慮されなくてよいか、またはマイクロプログラムが他のプログラム情報を含むことができる。
【００５１】
プログラムルーチン１７は、選択されたマイクロプログラム１６の情報を解析し、必要な論理関数をプログラムする。
【００５２】
論理セル領域１８は規則的に行および列に配置された多数の磁気抵抗効果型の論理セル１９を含んでおり、これらの論理セル１９は図３に概略的に格子点によって表わされている。論理セル領域１８は非常に多くの論理セル１９を含み、例えば１０００×１０００個のセル、つまり全部で百万個の論理セルを含んでいる。この実施例では、論理セル領域１８は単一の層からなる。複数のこの種の論理セル領域を組み合わせて論理セル格子を形成することも可能である。
【００５３】
個々の各論理セル１９は基本論理結合を実行する。基本論理結合は、例えばＡＮＤゲートまたはＸＯＲゲートであってよく、またはそれに相応して構成することができる。
【００５４】
必要な論理演算およびローカルなメモリ個所のプログラミングのために、プログラムルーチン１７が、まだ確保されていないかもしくはもはや必要でなく且つ再プログラム可能である論理セル１９もしくは論理セルグループを選択する。このために、リストとして形成することもでき自由に使用可能な論理セルを含むテーブルが役立つ。代替として、既に確保された論理セルを検出し、同様に故障だとわかった論理セルを検出してもよい。テーブル２０は２次元または３次元マトリックスとして形成することもでき、各論理セル１９に対して動作状態に関する情報を含む登録事項を有する。各プログラミング過程後にテーブル２０は更新すなわち最新化され、新しく確保された論理セル１９はテーブル２０においてそれ相応に目印を付けられ、もはや必要でない論理セル１９は再び解放される。テーブル２０の情報に基づいて、論理セル領域１８のどの範囲に現在プログラムすべきマイクロプログラム１６が記憶されるかが決定される。プログラムされた状態と結合とに関する情報は非常に省スペースに保存することができる。
【００５５】
図３には主メモリ、並びにこれに付属し公知のように処理データおよび命令語を有する周辺装置は示されてないが、命令語は動作状態のマイクロプログラムによって内部メモリ１３から選択される。
【００５６】
図３から分かるように、論理セル領域１８は既に幾つかのプログラムされた論理セルブロック２１，２２，２３を有し、これらの論理セルブロック２１，２２，２３にそれぞれメモリ１３の定められたマイクロプログラムが割り当てられている。論理セルブロック２１，２２間には概略的に接触点２４が表示されている。この接触点２４では論理セルブロック２１，２２間で信号またはデータを交換することができる。勿論、２つの隣接する論理セルブロック間にはこの種の接触点を複数配置することもできる。
【００５７】
或る論理セルのプログラミングのためには、先ず、この論理セルが選択ステップ２５においてその行および列に基づいて決められなければならず、引き続いてプログラムルーチン１７によってプログラムされ、この過程は必要な接続線の接続も含む。
【００５８】
論理セル領域１８は、テーブル２０においてもはや必要でないとして目印を付けられている他の論理セルブロック２７，２８を含んでいる。これらは後の時点で再構成することができる。
【００５９】
論理セルブロック２１，２２，２３の全論理セルがプログラムされているならば、その直後から、付属の論理セル結合の実行を開始することができる。多数の論理セルブロックは、それらがリングまたはループを形成するように互いに連鎖させることもできる。
【００６０】
論理セルブロック２１，２２，２３の作動のためには命令トークンが必要である。論理セルブロック２１，２２，２３の１つの出力に現われる論理信号が問題である。それによって、論理セルブロックのその都度１つのみが能動状態にあることを達成すべきである。能動状態にある論理セルブロックでは、命令トークンがセットされ、次にこの論理セルブロックに作動電圧が供給される。この論理セルブロックに割り当てられたマイクロプログラムの実行後に、命令トークンがリセットされて作動電圧が遮断される。命令トークンは直ぐ次の論理セルブロックに転送されるので、当該論理セルブロックは動作することができる。
【００６１】
複数のマイクロプログラムが同時に実行されるように同時に複数の命令トークンをセットすることも可能である。これらの作動様式は分散型プロセッサに相当する。勿論、その都度の命令トークンに割り当てられた論理セルブロックが互いに独立に動作することを考慮すべきであり、つまりメモリまたはアドレス線ないしデータ線へのアクセス時に衝突が起こることが回避されなければならない。従って、複数の論理セルブロックを同期動作させるのがよい。勿論、上述の衝突の発生に対して事前に対策を講じるならば、非同期動作様式も可能である。
【図面の簡単な説明】
【００６２】
【図１】複数層の論理セルからなる本発明による論理ユニットの横断面図
【図２】垂直な接続穴を有する本発明による論理ユニットの概略断面図
【図３】本発明によるディジタル論理ユニットの構成の概略経過図
【符号の説明】
【００６３】
１        論理ユニット
２        論理セル
３        接続導体路
４        接続導体路
５        絶縁層
６        絶縁層
７        他の構成要素
８        層
９        層
１０        層
１１        層
１２        接触穴
１３        内部メモリ
１４        マイクロプログラム
１５        プログラムポインタ
１６        マイクロプログラム
１７        プログラムルーチン
１８        論理セル領域
１９        論理セル
２０        テーブル
２１        論理セルブロック
２２        論理セルブロック
２３        論理セルブロック
２４        接触点
２５        選択ステップ
２６        論理セル
２７        論理セルブロック
２８        論理セルブロック