(57)【要約】      （修正有）【課題】  任意の論理演算を単一の論理演算回路の反復処理に置換して、当該論理演算処理のためのプロセスおよび装置を簡素化する。【解決手段】  論理差分回路もしくは含意回路によって論理演算を行う。  例えば、各１ビットの２つの入力値Ａ，Ｂが、Ａ＞Ｂのとき“１”（ＴＲＵＥ）、Ａ＞Ｂでないとき“０”（ＦＡＬＳＥ）の値を出力する論理回路、もしくはその否定の値を出力する回路によって論理演算を行う。【選択図】図１
2006319981.tif 000002
【特許請求の範囲】
【請求項１】
各１ビットの２つの入力値Ａ，Ｂが、Ａ＞Ｂのとき“１”（ＴＲＵＥ）、Ａ＞Ｂでないとき“０”（ＦＡＬＳＥ）の値を出力する論理回路（以下、「論理差分回路」という。）もしくはその否定の値を出力する回路（以下、「含意回路」という。）によって論理演算を行う、コンピュータその他の電子情報処理装置等における論理演算の処理方法。
【請求項２】
任意に与えられた論理演算処理を、
ｆ（ｎ）＝｛ｆ（ｎ−１）＞ｆ（ｎ−１）｝
＝｛ｆ（ｎ−１）∩¬ｆ（ｎ−１）｝（ｆ（０）は一意でない任意の真理値）
で表される形の論理式（以下、「再帰的論理差分式」という。）、またはその否定論理式による同構造の論理式（以下、「再帰的含意式」という。）に置換して当該論理演算処理の過程を簡易化する論理演算式の処理方法。
【請求項３】
論理回路の入力配線の一方をトランジスタのソース端子に、もう一方の入力配線をゲート端子に、出力配線をドレイン端子に接続する回路設計（以下、「請求項３の回路設計」という。）による論理差分回路および含意回路。
【請求項４】
Ｃ−ＭＯＳＦＥＴ回路またはそれと同様の配線構造の回路（以下、「Ｃ−ＭＯＳＦＥＴ構造の回路」という。）の各ゲート端子に、請求項３の回路設計による回路の出力配線を接続する回路設計（以下、「請求項４の回路設計」という。）による論理演算回路。
【発明の詳細な説明】
【技術分野】
【０００１】電子回路等による論理演算の技術に関する。
【背景技術】
【０００２】コンピュータのソフトウェアプログラムおよび電子回路等、有形または無形の情報処理装置における従来の論理演算処理は、否定回路、否定論理積回路、否定論理和回路、論理積回路、論理和回路等のうちの組み合わせによってなされる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】任意の論理演算を単一の論理演算回路の反復処理に置換して、当該論理演算処理のためのプロセスおよび装置を簡素化する。
【課題を解決するための手段】
【０００４】論理差分回路または含意回路を用いて、図１もしくは図１１の処理方法により論理演算を行う。【０００５】図２の方法を用いて、与えられた論理演算プログラムを再帰的論理差分式または再帰的含意式に置換して、上記の処理を行う。【０００６】請求項３の回路設計によって、図３のような論理差分回路、または図６のような含意回路を作成し、請求項４の回路設計によって図１４のような再帰的論理差分回路を作成する。もしくは、図４、図５、図７、図８、図１２、図１３のような論理回路を作成する。
【発明の効果】
【０００７】論理差分回路の処理を表す論理式を、条件式（Ａ＞Ｂ）で表記すると、
（Ａ∩Ｂ）＝（Ａ＞¬Ｂ）
（Ａ∪Ｂ）＝¬（¬Ａ＞Ｂ）    （“¬”は否定）
であり、論理積および論理和の演算処理は、当該の論理式に置換可能である。さらに、
Ａ＝（Ａ＞０）
¬Ｂ＝（１＞Ｂ）
であることから、論理差分回路は、入力値をそのまま出力するパスとしての機能と、入力値を反転して出力する否定回路としての機能の両方を備え持つ。この性質により、論理差分回路はその単純な反復プログラムのみで任意の論理演算処理を行える。含意回路も同様の性質を持つ。【０００８】段数の異なる再帰的論理差分式に同一の被演算子を与えたとき、得られる出力値は常に等しい（未入力のパラメータは“０”とする）。すなわち再帰的論理差分式の被演算子の列は、ソフトウェア、ハードウェアを通じて、またはその演算処理を行う回路の形状、規模によらず、任意の論理演算プログラムを実行するための共通のコマンドパラメータとして使用可能である。再帰的含意式も同様の性質を持つ。【０００９】請求項３の回路設計による論理回路、すなわち図３および図６の回路は、配線の交差が不要のため、基本回路を平面上の配線のみで作ることができる。また、請求項４の回路、すなわち図１４の回路は、図３および図６の回路がインバータ回路の機能を兼ねることが出来るため、あらゆる論理演算処理において入力値の反転入力が不要である。
【発明を実施するための最良の形態】
【００１０】図１が、再帰的論理差分式の出力値を求める処理図（ＰＡＤ）である。図１では、当該論理演算の被演算子の列を、１ビットサイズのレコード列からなるデータファイルと見なして記述している。与えられた論理式を再帰的論理差分式に変形して入力することで、図１のシステムは任意の論理演算処理を行う。また、図１と同一のアルゴリズムによって、含意回路の反復処理でも、任意の論理演算の解を得ることができる。【００１１】全ての論理差分式は、再帰的論理差分式か、または再帰的論理差分式から一部の被演算子が欠落した論理式である。後者の論理式の演算を図１の方法によって行う場合は、再帰的論理差分式から欠落した被演算子のパラメータに“０”を代入する。【００１２】図２が、任意の論理式を再帰的論理差分式に変換する処理図（ＰＡＤ）である。図２中の文字列変数＊は、不特定任意の被演算子の全てを要素に持つ集合、もしくは不特定任意の被演算子からなる特定の論理式を要素に持つ集合であるが、１つの置換処理中においては一意のもの（∀×∈＊）であり、＊１と＊２は＊と同値のものである。ソフトウェアプログラム上の任意の論理演算を、図２の方法によって再帰的論理差分式に置換する場合、当該の置換処理はコンパイルの時点で行われることが望ましい。【００１３】図２と同様の方法で任意の論理式を再帰的含意回路に置換するには、図２中の記号“∩”を“∪”に、そしてループ内の“Ｏ”を“Ｉ”に、“Ｉ”を“Ｏ”に、それぞれ置き換えて実行する。その場合、生成されるパラメータ列の順序、すなわち被演算子の配列の順序は反転する。【００１４】図２の処理の例を示すと、
論理式（Ａ∩Ｂ）は図２の処理によって
（Ａ∩Ｂ）＝｛（Ａ＞０）＞（１＞Ｂ）｝  となるので
図１の実行ファイルのパラメータは
（Ａ，０，１，Ｂ）となり、
論理式（Ａ∪Ｂ）は図２の処理によって
（Ａ∪Ｂ）＝［｛（１＞０）＞（０＞０）｝
＞｛（１＞Ａ）＞（Ｂ＞０）｝］  となるので
図１の実行ファイルのパラメータは
（１，０，０，０，１，Ａ，Ｂ，０）となる。【００１５】図３が、請求項３の回路設計による論理差分回路である。電圧Ｈｉｇｈが真理値“１”（ＴＲＵＥ）に、電圧Ｌｏｗが真理値“０”（ＦＡＬＳＥ）に対応する。トランジスタＱｐが入力Ａの値に依存せず動作するよう、Ｑｐのバックゲート端子に電圧Ｈｉｇｈを入力する。図３中のトランジスタＱｐ、Ｑｎは、いずれか一方を抵抗に代替してもよい。また、入力値Ｂの否定値が得られるときは図４のように、Ｑｐ、Ｑｎの一方を抵抗に、もう一方を整流用ダイオードに代替可能である。【００１６】図５が、Ｃ−ＭＯＳＦＥＴ構造の論理差分回路である。図５中、入力値の反転を要する箇所は、当該入力値を供給する回路から反転値を出力させるか、入力先のトランジスタの種類を反転させるか、またはインバータ回路を使用する等の方法で反転入力を行う。【００１７】図６が、請求項３の回路設計による含意回路である。図６中のトランジスタＱｐ、Ｑｎは、いずれか一方を抵抗に代替してもよい。また、入力値Ａの否定値が得られるときは図７のように、Ｑｐ、Ｑｎの一方を抵抗に、もう一方を整流用ダイオードに代替可能である。【００１８】図８が、Ｃ−ＭＯＳＦＥＴ構造の含意回路である。図５の回路の直列、並列接続および各入力値を反転させた回路である。【００１９】図１１が、論理差分回路を多数連結する方法による図１の処理の実施例である。図１１中の各入力の初期値は“０”とする。図１１の回路は、図９の論理差分回路７個によって図１の反復処理７回分の処理、すなわち再帰的論理差分式ｆ（３）の演算を行う。論理式ｆ（３）より多段数の処理を行う場合は、連結する回路数を増やすか、当該回路処理を繰り返し実行する。また、図１１と同様の方法によって再帰的含意式の演算を行うには、図９の回路に代えて図１０の含意回路を連結する。【００２０】図１１の回路を限定的用途に使用する場合、入力値が常に定数“０”となる入力配線、および入力配線の一方が省略された論理差分回路は省略可能である。そして、省略された論理差分回路の省略されない入力Ａ配線は出力配線と直接接続する。【００２１】図１２が、図３、図４、図６、図７の回路を用いた図１の処理の実施例である。図１２中の“ＮＩＦ”が図３の論理差分回路、“ＩＦ”が図６の含意回路を表す。そして図１２中の３個のダイオードと抵抗によって、図４の回路２基と図７の回路１基が構成される。図４および図７の回路は入力値の一方を反転させる必要があるため、一部の論理差分回路に代えてその否定回路、すなわち含意回路を用いている。出力配線がダイオードに接続された“ＮＩＦ”回路のトランジスタＱｎおよび“ＩＦ”回路のトランジスタＱｐは必要ないため、図１２の回路は、トランジスタ５個の並列動作のみによって８入力の論理演算を行うことができる。また、図１２中の各トランジスタにバックゲート端子を設けないとき、各配線中のダイオードは当該配線中の各トランジスタで代替可能である。【００２２】図１３が、Ｃ−ＭＯＳＦＥＴ構造の回路による図１の処理の実施例である。図５および図８のトランジスタＱｐ側の回路（以下、「Ｐチャンネル回路」という。）同士を直列に、Ｑｎ側の回路（以下、「Ｎチャンネル回路」という。）同士を並列に接続することで再帰的論理差分式ｆ（２）の演算回路となり、当該のＰチャンネル回路同士を並列に、Ｎチャンネル回路同士を直列に接続することで再帰的含意式¬ｆ（２）の演算回路となる。そして、当該のｆ（２）および¬ｆ（２）の各演算回路のＰチャンネル回路同士を直列に、Ｎチャンネル回路同士を並列に接続することで再帰的論理差分式ｆ（３）の演算回路、すなわち図１３の回路となる。同様に、ｆ（ｎ）および¬ｆ（ｎ）の演算を行うＣ−ＭＯＳＦＥＴ構造の回路のＰチャンネル回路同士を直列に、Ｎチャンネル回路同士を並列に接続することでｆ（ｎ＋１）の演算回路となり、当該Ｐチャンネル回路同士を並列に、Ｎチャンネル回路同士を直列に接続することで¬ｆ（ｎ＋１）の演算回路となる。【００２３】図１４が、請求項４の回路設計による図１の処理の実施例である。図１４中の“ＮＩＦ”が図３の論理差分回路、“ＩＦ”が図６の含意回路を表す。当該回路は、図１３の回路と異なり、入力値の反転入力が不要である。請求項４の回路設計は、再帰的論理差分式の演算回路以外の回路についても、図１４と同様の方法で実施可能である。【００２４】図１５が、Ｃ−ＭＯＳＦＥＴ回路による図１３の回路の実施例である。図１５中のＧはトランジスタのゲート端子、ＮはＮ半導体、ＰはＰ半導体を示す。図１５のトランジスタ回路はその構造上、偶数本に分岐する並列配線を敷設可能な箇所が限定されるため、Ａ２および¬Ｂ２の入力位置を素子の端部に配置している。図１５の回路の各ゲート端子に図３および図６の回路の出力配線を接続すると、請求項４の回路設計による再帰的論理差分式ｆ（４）の演算回路が構築される。【００２５】すなわち、図１が請求項１、図２が請求項２、図３および図６が請求項３、図１４が請求項４の実施の形態であり、その他の図が請求項１の実施例である。
【図面の簡単な説明】
【図１】  再帰的論理差分式の出力値を求める処理図（ＰＡＤ）。
【図２】  任意の論理式を再帰的論理差分式に変換する処理図（ＰＡＤ）。
【図３】  請求項３の回路設計による論理差分回路。
【図４】  図３の回路のトランジスタを省略した論理差分回路。
【図５】  Ｃ−ＭＯＳＦＥＴ構造の論理差分回路。
【図６】  請求項３の回路設計による含意回路。
【図７】  図６のトランジスタを省略した含意回路。
【図８】  Ｃ−ＭＯＳＦＥＴ構造の含意回路。
【図９】  論理積回路記号を用いた論理差分回路の回路記号図。
【図１０】  論理和回路記号を用いた含意回路の回路記号図。
【図１１】  論理差分回路を多数連結する方法による図１の処理の実施例。
【図１２】  図３、図４、図６、図７の回路を用いた図１の処理の実施例。
【図１３】  Ｃ−ＭＯＳＦＥＴ構造の回路による図１の処理の実施例。
【図１４】  請求項４の回路設計による図１の処理の実施例。
【図１５】  Ｃ−ＭＯＳＦＥＴ回路による図１３の回路の実施例。
【符号の説明】
Ａ      論理演算の１番目の入力値。
Ｂ      論理演算の２番目の入力値。
Ｙ      論理演算の出力値。
Ｑｐ    Ｐチャンネルトランジスタ。
Ｑｎ    Ｎチャンネルトランジスタ。
ＢＧ    トランジスタＱｐ、Ｑｎのバックゲート入力値。
ＮＩＦ    請求項３の回路設計による論理差分回路。
ＩＦ    請求項３の回路設計による論理差分回路。
Ｇ      各トランジスタのゲート端子。
Ｎ      Ｎ半導体。
Ｐ      Ｐ半導体。
【図１】
2006319981.tif 000003
【図２】
2006319981.tif 000004
【図３】
2006319981.tif 000005
【図４】
2006319981.tif 000006
【図５】
2006319981.tif 000007
【図６】
2006319981.tif 000008
【図７】
2006319981.tif 000009
【図８】
2006319981.tif 000010
【図９】
2006319981.tif 000011
【図１０】
2006319981.tif 000012
【図１１】
2006319981.tif 000013
【図１２】
2006319981.tif 000014
【図１３】
2006319981.tif 000015
【図１４】
2006319981.tif 000016
【図１５】
2006319981.tif 000017