(57)【要約】【課題】  パルス列を情報伝達媒体として使用すると同時にパルス自体を制御信号として扱うことができるパルス論理回路を提供する。【解決手段】  二つの電圧レベルのうち片方を論理レベル１にすると共に他方を論理レベル０とし、所望の時刻あるいは時間区間にパルスが存在するとき該時刻あるいは前記時間区間に論理値１を与え、パルスが存在しないとき論理値０を割り当てて構成されたパルス列を入力するパルス論理回路において、論理値が１の時に出力を抑制する抑制入力端子付き論理ＡＮＤをＰ型ＭＯＳトランジスタ１０とＮ型ＭＯＳトランジスタ１１で構成し、パルスが存在しないときの論理値０を反転してパルスが存在する論理値１を与えるＮＯＴ演算の出力（パルス列ｂ）を抑制端子付き論理ＡＮＤにのみ入力する。【選択図】  図２
2005286676.tif 000002
【特許請求の範囲】
【請求項１】
二つの電圧レベルのうち片方を論理レベル１にすると共に他方を論理レベル０とし、所望の時刻あるいは時間区間にパルスが存在するとき該時刻あるいは前記時間区間に論理値１を与え、パルスが存在しないとき論理値０を割り当てて構成されたパルス列を入力するパルス論理回路において、論理値が１の時に出力を抑制する抑制入力端子付き論理ＡＮＤを設け、パルスが存在しないときの論理値０を反転してパルスが存在する論理値１を与えるＮＯＴ演算の出力を前記抑制端子付き論理ＡＮＤにのみ入力することを特徴とするパルス論理回路。
【請求項２】
請求項１記載のパルス論理回路において、前記パルス間でパルス論理演算を行い生成されたパルス列を論理変数として入力処理する回路を備えることを特徴とするパルス論理回路。
【請求項３】
請求項２記載のパルス論理回路において、前記パルス列に対してパルス順序を計測し該パルス順序でデータおよび命令の符号化を行う回路を備え，パルス順序で入力データを符号化した複数パルス列を並列に入力し，あるいは，単一のパルス列を直列に入力し，入力データをデータ処理するか，あるいは所望のパルス列を用いて残りのパルス列を制御してデータ処理することを特徴としたパルス論理回路。
【請求項４】
請求項１乃至請求項３のいずれかに記載のパルス論理回路において、第１のクロック信号と該第１のクロック信号の整数倍の周期を持った第２のクロック信号とで同期動作を行い、前記第１のクロックに同期してパルス論理演算を行うと共に、前記第２のクロック周期で定まる時間幅内でパルス列の論理値１の状態を計数し多値情報を同時に表現して処理する多値演算回路を備えることを特徴とするパルス論理回路。
【請求項５】
請求項１乃至請求項３のいずれかに記載のパルス論理回路において、第１のクロック信号と該第１のクロック信号の整数倍の周期を持った第２のクロック信号とで同期動作を行い、前記第１のクロックに同期してパルス論理演算を行い得られたパルス列に対して、前記第２のクロック周期で定まる時間幅を複数の時間幅に分解した部分間隔に対して、各部分間隔内でパルス列の論理値１の状態を計数し多値演算をする多値演算回路を備えることを特徴とするパルス論理回路。
【請求項６】
請求項１乃至請求項５のいずれかに記載のパルス論理回路において、前記抑制端子付き論理ＡＮＤは、Ｐ型とＮ型のＭＯＳトランジスタを集積し、Ｐ型ＭＯＳトランジスタとＮ型ＭＯＳトランジスタのドレインを接続し、Ｐ型ＭＯＳトランジスタとＮ型ＭＯＳトランジスタのゲート電極同士を接続し、第１のパルスをＰ型ＭＯＳトランジスタのソース端子から入力し、第２のパルスを前記ゲート電極に入力して構成されることを特徴とするパルス論理回路。
【請求項７】
請求項１乃至請求項６のいずれかに記載のパルス論理回路において、パルスの論理値１の否定として論理値０をとり論理値０の否定に論理値１をとる単項否定用の論理回路素子を、パルスを介して信号を送受信する部分にのみ使用する構成としたことを特徴としたパルス論理回路。
【請求項８】
請求項１乃至請求項７のいずれかに記載のパルス論理回路において、連続的にパルスを生成するバーストパルス生成回路を備え、該バーストパルス生成回路により論理値１のパルス列の区間を作り、この論理値１の区間に対して、前記抑制入力端子付き論理ＡＮＤにより論理値０の区間を前記論理値１の区間内に特定させることを特徴とするパルス論理回路。
【請求項９】
請求項１乃至請求項７のいずれかに記載のパルス論理回路において、連続的パルスを生成するバーストパルス生成回路を備え、該バーストパルス生成回路により論理値１のパルス列の区間を作り、この論理値１の区間を、所望領域内の前記抑制入力端子付き論理ＡＮＤの抑制入力端子に出力することでパルス列の論理値１で抑制される領域を作り、該抑制入力端子付き論理ＡＮＤの出力を選択的に制御することを特徴とするパルス論理回路。
【請求項１０】
複数のパルス列のパルス論理演算を行う請求項１乃至請求項９のいずれかに記載のパルス論理回路において、複数パルスの論理積と論理和と前記抑制入力端子付き論理ＡＮＤによる演算とを行うパルス論理回路の積和の標準形から多段論理回路の変換手段によって作成された回路を備えることを特徴とするパルス論理回路。
【請求項１１】
請求項１０の積和の標準形の各積項の論理値１の値を保持する記憶要素を設け、該記憶要素を繋ぎパルス列を出力する回路を備えることを特徴とするパルス論理回路。
【請求項１２】
請求項１０に記載のパルス論理回路において、パルス列を記憶する機能を有した記憶素子への入力パルス列と該記憶素子に記憶されたパルス列との間でパルス論理演算を行う回路を備えることを特徴とするパルス論理回路。
【請求項１３】
請求項１２に記載のパルス論理回路において、多値情報をウェーブレット（ｗａｖｅｌｅｔ）展開により得られたウェーブレット係数で表現し、該ウェーブレット係数をパルス列で前記記憶素子に記憶させ、該記憶素子への入力パルスと該記憶素子に記憶されている前記ウェーブレット係数との間で、前記抑制入力端子付き論理ＡＮＤにより演算を行わせることを特徴とするパルス論理回路。
【請求項１４】
請求項１０乃至請求項１３のいずれかに記載のパルス論理回路において、前記積和の標準形を作成したのち、簡単化を行い多段のパルス論理回路として構成することを特徴とするパルス論理回路。
【請求項１５】
請求項１乃至請求項１４のいずれかに記載のパルス論理回路において、複数パルスの論理積と論理和と前記抑制入力端子付き論理ＡＮＤを使いパルス論理回路の積和の標準形を作成しパルスを計数する計数回路と、積項の出力先を可変するスイッチ回路と、前記出力先としてパルス数を記憶する記憶要素と、該記憶要素から記憶されているパルス数を取り出してパルスを生成する基本回路複数とを備え、該基本回路の出力先および入力元を前記スイッチ回路で切り換えることを特徴とするパルス論理回路。
【請求項１６】
請求項１乃至請求項１５のいずれかに記載のパルス論理回路において、単項否定演算により二つの電圧レベルを反転させることで論理レベルを入れ替えパルスを正パルスと負パルスとの間で反転させる回路を備えることを特徴とするパルス論理回路。
【請求項１７】
請求項１乃至請求項１６のいずれかに記載のパルス論理回路において、所望の区間でのパルスの有無が表現された論理値を、引き続く所望の区間で二つの電圧レベルにより表現された論理値１，０に変換し該論理値をパルス論理回路から論理回路へと転送し、あるいは、二つの電圧レベルにより表現された論理値１，０を、引き続く所望の区間内でパルスの有無で表現されたパルス論理値に転送する変換回路を備えることを特徴とするパルス論理回路。
【請求項１８】
請求項１に記載のパルス論理回路を生成する方法において、ＮＯＴ演算を抑制入力端子付き論理ＡＮＤに変換することで単項ＮＯＴを削除し、抑制入力端子付き論理ＡＮＤに変換できないときは誤設計として再設計を行うことをことを特徴とするパルス論理回路の生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理回路、パルス信号を使った信号処理装置、画像処理装置、可変型再構成回路を利用した信号処理装置、ディジタル型ニューラル・ネット、非同期型パルス論理回路を利用した装置等で用いるパルス論理回路に関する。
【背景技術】
【０００２】
従来のパルス列は、（１）パルス幅、（２）パルス密度、（３）パルス周波数変調などにより、多値情報を符号化して伝送する媒体として使用している。この多値情報を処理するニューラル・ネットのモデルであるスパイキングニューロン（Ｓｐｉｋｉｎｇ  Ｎｅｕｒｏｎ）では、他の神経素子モデルと同様に、シナプスの重み係数を掛けてから他の入力パルスとの和を取り、しきい値以上の値の時に、出力を行っており、この神経素子モデルにより、論理回路の機能を実現することができる。
【０００３】
従来の２線２相式パルス論理では、二つのパルス信号（Ａ，Ｂ）を使って一つの論理変数を表現している。論理変数の論理値“０”は（Ａ＝０，Ｂ＝１）、論理値“１”は（Ａ＝１，Ｂ＝０）、休止相（Ａ＝０，Ｂ＝０）、禁止相（Ａ＝１，Ｂ＝１）で定義される。
【０００４】
論理変数Ｌ１と論理変数Ｌ２の間には必ず休止相があり、この論理変数を使い論理回路を作成している。この休止相を確認することで、入力の完了、その値を出力まで伝播させて出力の完了を取り出し、ハンドシェイクを行っている。この方式により、非同期論理回路が実現でき、低消費電力化、高速化などの利点がある。
【０００５】
更に、１線式でハンドシェイクによるパルス論理回路が、下記非特許文献１に記載されている。このパルス論理回路は、２線２相式パルス論理のハンドシェイクを踏襲しており、パルスの入力完了と出力完了とでパルスの取り出しを行っている。しかし、休止相と、全入力が“０”という特定入力信号との区別ができない難点がある。
【０００６】
パルス全体を流れのように扱うパルス利用方法が、下記非特許文献２に様々紹介されている。例えば、Pulse Rate Modulation(PRM), Pulse Width Modulation(PWM), Coherent Pulse Width Modulation(CPWM), Duty Cycle Modulation(DCM), Pulse Burst Modulation(PBM), Pulse Code Modulation(PCM), Stochastic Pulse Modulation(SPM), Pulse Amplitude Modulation(PAM),Pulse Phase Modulation(PPM), Pulse Delay Modulation(PDM)等である。しかし、これら従来のパルス利用方法は、パルス列を使って情報を伝達するのみである。換言すれば、情報の伝達媒体にパルス列を使うに過ぎない。
【０００７】
【非特許文献１】Mika Nystromom, "Asynchronous Pulse Logic", Thesis, Caltech Computer Science Technical Report, caltech CSTR: 2001.011
【非特許文献２】L.M. Reyneri, "Theoretical and Implementation Aspects of Pulse Stream: an Overview" Vol. 2, No. 2, March 1991, pp. 193-204. 2} L.M. Reyneri, A Performance Analysis of Pulse Stream Neural
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した従来のパルス論理回路は、情報の伝達媒体にパルス列を使用するにすぎず、個々のパルス自体を論理変数として扱う様になっていない。即ち、パルス列を情報伝達媒体として使用すると同時に、パルス列をパルス自体で制御する様になっていない。
【０００９】
しかし、パルス自体を論理変数として使用すると、パルスが存在しない状態の反転という不自然な処理が生じてしまい、パルス論理と、論理（ブール）代数との間で矛盾が生じてしまう。この不具合を解決しないと、パルス自体を論理変数として使用することができない。
【００１０】
本発明の目的は、パルス列を情報伝達媒体として使用すると同時にパルス自体を制御信号として扱うことができるパルス論理回路を提供することにある。
【課題を解決するための手段】
【００１１】
本発明のパルス論理回路は、二つの電圧レベルのうち片方を論理レベル１にすると共に他方を論理レベル０とし、所望の時刻あるいは時間区間にパルスが存在するとき該時刻あるいは前記時間区間に論理値１を与え、パルスが存在しないとき論理値０を割り当てて構成されたパルス列を入力するパルス論理回路において、論理値が１の時に出力を抑制する抑制入力端子付き論理ＡＮＤを設け、パルスが存在しないときの論理値０を反転してパルスが存在する論理値１を与えるＮＯＴ演算を前記抑制端子として用い，その出力を論理ＡＮＤにのみ入力することを特徴とする。
【００１２】
本発明のパルス論理回路は、上記において、前記パルス間でパルス論理演算を行い生成されたパルス列を論理変数として入力処理する回路を備えることを特徴とする。
【００１３】
本発明のパルス論理回路は、上記において、前記パルス列に対してパルス順序を計測し，該パルス順序でデータおよび命令の符号化を行う回路を備えることを特徴とする。
【００１４】
本発明のパルス論理回路は、上記において、第１のクロック信号と該第１のクロック信号の整数倍の周期を持った第２のクロック信号とで同期動作を行い、前記第１のクロックに同期してパルス論理演算を行うと共に、前記第２のクロック周期で定まる時間幅内でパルス列の論理値１の状態を計数し多値情報を同時に表現して処理する多値演算回路を備えることを特徴とする。
【００１５】
本発明のパルス論理回路は、上記において、第１のクロック信号と該第１のクロック信号の整数倍の周期を持った第２のクロック信号とで同期動作を行い、前記第１のクロックに同期してパルス論理演算を行い得られたパルス列に対して、前記第２のクロック周期で定まる時間幅を複数の時間幅に分解した部分間隔に対して、各部分間隔内でパルス列の論理値１の状態を計数し多値演算をする多値演算回路を備えることを特徴とする。
【００１６】
本発明のパルス論理回路は、上記において、前記抑制端子付き論理ＡＮＤは、Ｐ型とＮ型のＭＯＳトランジスタを集積し、Ｐ型ＭＯＳトランジスタとＮ型ＭＯＳトランジスタのドレインを接続し、Ｐ型ＭＯＳトランジスタとＮ型ＭＯＳトランジスタのゲート電極同士を接続し、Ｎ型ＭＯＳトランジスタのソースを接地し，第１のパルスをＰ型ＭＯＳトランジスタのソース端子から入力し、第２のパルスを前記ゲート電極に入力して構成されることを特徴とする。
【００１７】
本発明のパルス論理回路は、上記において、パルスの論理値１の否定として論理値０をとり論理値０の否定に論理値１をとる単項否定用の論理回路素子を、パルスを介して信号を送受信する部分にのみ使用する構成としたことを特徴とする。
【００１８】
本発明のパルス論理回路は、上記において、連続的にパルスを生成するバーストパルス生成回路を備え、該バーストパルス生成回路により論理値１のパルス列の区間を作り、この論理値１の区間に対して、前記抑制入力端子付き論理ＡＮＤにより論理値０の区間を前記論理値１の区間内に特定させることを特徴とする。
【００１９】
本発明のパルス論理回路は、上記において、連続的パルスを生成するバーストパルス生成回路を備え、該バーストパルス生成回路により論理値１のパルス列の区間を作り、この論理値１の区間を、所望領域内の前記抑制入力端子付き論理ＡＮＤの抑制入力端子に出力することでパルス列の論理値１で抑制される領域を作り、該抑制入力端子付き論理ＡＮＤの出力を選択的に制御することを特徴とする。
【００２０】
本発明のパルス論理回路は、複数のパルス列のパルス論理演算を行う上記のパルス論理回路において、複数パルスの論理積と論理和と前記抑制入力端子付き論理ＡＮＤによる演算とを行うパルス論理回路の積和の標準形から多段論理回路の変換手段によって作成された回路を備えることを特徴とする。
【００２１】
本発明のパルス論理回路は、上記の積和の標準形の各積項の論理値１の値を保持する記憶要素を設け、該記憶要素を繋ぎパルス列を出力する回路を備えることを特徴とする。
【００２２】
本発明のパルス論理回路は、上記において、パルス列を記憶する機能を有した記憶素子への入力パルス列と該記憶素子に記憶されたパルス列との間でパルス論理演算を行う回路を備えることを特徴とする。
【００２３】
本発明のパルス論理回路は、上記において、多値情報をウェーブレット（ｗａｖｅｌｅｔ）展開により得られたウェーブレット係数で表現し、該ウェーブレット係数をパルス列で前記記憶素子に記憶させ、該記憶素子への入力パルスと該記憶素子に記憶されている前記ウェーブレット係数との間で、前記抑制入力端子付き論理ＡＮＤにより演算を行わせることを特徴とする。
【００２４】
本発明のパルス論理回路は、上記において、前記積和の標準形を作成したのち、簡単化を行い多段のパルス論理回路として構成することを特徴とする。
【００２５】
本発明のパルス論理回路は、上記において、複数パルスの論理積と論理和と前記抑制入力端子付き論理ＡＮＤを使いパルス論理回路の積和の標準形を作成しパルスを計数する計数回路と、積項の出力先を可変するスイッチ回路と、前記出力先としてパルス数を記憶する記憶要素と、該記憶要素から記憶されているパルス数を取り出してパルスを生成する基本回路複数とを備え、該基本回路の出力先および入力元を前記スイッチ回路で切り換えることを特徴とする。
【００２６】
本発明のパルス論理回路は、上記において、単項否定演算により二つの電圧レベルを反転させることで論理レベルを入れ替えパルスを正パルスと負パルスとの間で反転させる回路を備えることを特徴とする。
【００２７】
本発明のパルス論理回路は、上記において、所望の区間でのパルスの有無が表現された論理値を、引き続く所望の区間で二つの電圧レベルにより表現された論理値１，０に変換し該論理値をパルス論理回路から論理回路へと転送し、あるいは、二つの電圧レベルにより表現された論理値１，０を、引き続く所望の区間内でパルスの有無で表現されたパルス論理値に転送する変換回路を備えることを特徴とする。
【００２８】
本発明のパルス論理回路の生成方法は、ＮＯＴ演算を抑制入力端子付き論理ＡＮＤに変換することで単項ＮＯＴを削除し、抑制入力端子付き論理ＡＮＤに変換できないときは誤設計として再設計を行うことを特徴とする。
【００２９】
本発明では、パルスの存在を論理値１、不存在を０に割り当てることでパルス自体を論理変数として扱うと共に、ブール代数を実現するためにパルスのＡＮＤ，ＯＲを定義するが、ＮＯＴの代わりに半否定ＨＮＯＴを定義する。ＨＮＯＴは通常の否定演算ＮＯＴとは異なり、ある変数の否定は他の変数と論理積演算する時にのみ意味がある。従って、ある論理変数の否定は論理変数として独立して定義する事はできない。
【００３０】
ＨＮＯＴ演算を実現するために、他の論理変数の入力がある事を前提とする負入力端子あるいは出力の抑制を行う抑制入力端子を導入する。この設計規約に従って回路を設計する手順、ならびに、パルスを論理変数として扱う基本回路を導入する。論理変数から多値情報をパルス数を計数して引き出す回路を導入する。パルス論理回路を接続する基本構成を導入して大規模回路を構成する。
【発明の効果】
【００３１】
本発明では、パルス不存在の否定演算による不具合を回避するために、パルス存在の否定は許すが、パルス不存在の否定は禁止する、非対称の半否定演算を導入する。この結果、従来のパルスを使った回路での否定演算に対する不具合を解決でき、パルス論理回路による論理設計が可能となる。このため、大部分の論理回路をパルス論理で実現することが可能となる。
【００３２】
パルス論理回路は論理回路に比べて，分布定数型伝送線路で部分的に電圧レベルの変化が可能な場合には，伝送線路の全領域の電圧レベル変化を伴わないでパルスを伝送するので低消費電力である。また，パルスが存在する期間の割合が小さいので，多くの時間で信号線の電圧レベルの変更が持続的に無いので、大部分の信号線路の電圧レベルは論理値０となり、論理値０レベルをグラウンド（ＶＳＳ）に取ることで、リーク電流が大幅に削減することが出来る。
【００３３】
更に、非同期回路での２線２相式に比べ１線で論理変数を表現するので配線量，回路の素子量が半分で済み、また、論理変数毎に休止相を設ける必要が無いので処理時間が半分となり、完全な論理回路ではないが、ほぼ完全に近いので通常の論理設計方法が流用でき、パルス論理にならない場合にも被制御信号を付加すればよいので変更も軽微であるという効果を奏する。
【００３４】
本発明のパルス論理回路は、論理回路の延長であるので、論理回路の設計技術である積和の標準形、簡単化などを利用する従来の設計自動化技術を利用する事が可能であり、新たに大掛かりな設計法を構築する必要がない。また、従来の論理素子を流用することが可能であり、ＣＭＯＳ論理回路での実現でもオーバーヘッドが存在しない。さらに、多値情報から２値論理表現への意向が容易なので大規模システムを簡単に構築する事が可能である。
【００３５】
また、本発明によれば、神経素子のスパイク（パルス）により動作する神経回路を平易に実現でき、生物が有する回路構造を容易に移植することができる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の一実施形態を図面参照して説明する。
【００３７】
図１に、パルス論理回路で通常用いるパルス信号を示す。パルス信号には、パルスを生成する基準クロックｃｌｋと、このクロックｃｌｋの整数倍の周期を持ったクロックであって多値情報を計数するのに必要なクロックＣＫと、パルス列ａ，ｂ，ｃ，ｄ等である。図示する期間ＤＴは、クロックＣＫの計数を行う単位期間である。
【００３８】
基準クロックｃｌｋは、設計上、パルス信号を同期させる便法であって必ずしも必要というわけではない。しかし、同期回路とパルス論理回路とを同期させるためには必要となる。パルス数を計数するためのＤＴ区間は必須であり、そのために、クロックＣＫ、あるいは、別に区間開始信号と区間終了信号により実現することも可能である。
【００３９】
本実施形態では、パルスの存在を論理値１、不存在を０に割り当てることで、パルス自体を論理変数として扱う。しかし、パルスを論理変数に割り付けた時、ブール代数では代数系を完全なものとするために、否定演算（ＮＯＴ）が必須であり、論理値０に否定演算ＮＯＴを施すと、論理値１になってしまう。
【００４０】
この否定演算ＮＯＴの規約を常に適用し、単に電圧レベルを反転してしまうと、パルスが存在しない論理値０のところが反転されてパルスが存在することを示す論理値１になる。
【００４１】
通常、パルスが無いところからパルスが生ずる事を許すと、物理的な因果関係の維持が困難になる。また、至る所にパルスが存在、あるいは大きな（パルス幅の長い）パルスが生成されることになり、対称性が無く、扱いにくいものとなる。他方、パルスが存在するところでは、単に極性が正負に変換されただけであり、パルスとしては存在したままであり、パルスの存在が論理値１、非存在が論理値０であり、論理値１，０の変換である否定演算ＮＯＴとは異なる。
【００４２】
すなわち、電圧レベル０のところがパルス無しで、電圧レベル１のレベルを持つところで正パルスが在りとするパルスを反転して、電圧レベル１のところでパルス無し、電圧レベル０のレベルの時に負パルスがあると解釈すれば、極性が正負に変わるだけでパルスが存在することになり、論理否定が行えたことにはならない。
【００４３】
そこで、本実施形態では、パルスが無いところを否定して生じるパルスを削除する半否定演算（ＨＮＯＴ）の概念を導入する。図２に例示する半否定演算ＨＮＯＴ回路は、抑制入力端子を有するパルス論理ＡＮＤ回路であり、Ｐ型ＭＯＳ１０と、Ｎ型ＭＯＳ１１を集積し、Ｐ型ＭＯＳ１０及びＮ型ＭＯＳ１１のドレイン同士を接続し、Ｐ型ＭＯＳ１０及びＮ型ＭＯＳ１１のゲート同士を接続し、第１のパルス列ａをＰ型ＭＯＳ１０のソース端子１０ａから入力し、第２のパルス列ｂをゲート電極端子１２に入力する。
【００４４】
ゲート電極端子１２に印加されるパルス列、この例では、第２のパルス列ｂの「パルス無し」の期間、Ｐ型ＭＯＳトランジスタ１０は導通し、Ｎ型ＭＯＳ１１は遮断される。逆に、第２のパルス列ｂの「パルス在り」の期間は、Ｐ型ＭＯＳトランジスタ１０は遮断され、Ｎ型ＭＯＳトランジスタ１１は導通する。
【００４５】
従って、第２のパルス列ｂの「パルス無し」の期間と第１のパルス列ａの「パルス在り」の期間が重なった期間だけ、出力端子１３から「パルス在り」が出力され、第２のパルス列ｂの「パルス在り」の期間は、出力端子１３はアース電位になるため「パルス無し」となる。即ち、パルス列ｃが出力端子１３から出力される。
パルス列ａに対して、パルス列ｂを否定演算用のパルスとした場合、パルス列ａの「パルス無し」の期間にパルス列ｂが「パルス在り」になると、否定演算の結果、その部分に図２に点線で示すパルスｄが発生してしまう。しかし、本実施形態のように、半否定のパルス論理回路を構成することで、このパルスｄの発生は禁止される。
【００４６】
この様に、半否定により、論理値１は論理値０に反転するが、電圧レベル０の状態は電圧レベル０のままであり、論理値０が論理値１に反転することはない。一つの入力に対する半否定演算の出力は常に論理値０であるので、半否定演算子は存在しない事と等価である。
【００４７】
他方、半否定は、作用するパルス（被制御パルス：図２の例ではパルス列ａ）が存在する場合に限り、パルスが存在する時刻での論理値１の否定として論理値０となり、他の被制御パルスに対して作用する。論理値０として意味があるのは論理ＡＮＤであるので、半否定はＡＮＤ素子の否定入力端子、あるいは（出力を抑制する）抑制入力端子として実現できる。
【００４８】
図３（ａ）は、ＡＮＤ素子１７，１８と否定入力による抑制入力端子付ＡＮＤ素子１９とで構成される回路例を、ＮＡＮＤ素子１５とＮＯＲ素子１６とで実現した例を示す。図３（ｂ）はその詳細なＣＭＯＳ回路であり、Ｐ型ＭＯＳトランジスタ２０，２１とＮ型ＭＯＳトランジスタ２３，２４とでＮＡＮＤ素子１５を構成し、Ｐ型ＭＯＳトランジスタ２５，２６とＮ型ＭＯＳトランジスタ２７，２８でＮＯＲ素子１６を構成している。
【００４９】
尚、この図３（ｂ）で、入力端子Ａにパルス列ａが入力され、入力端子Ｂにパルス列ｂが入力され、入力端子Ｃにパルス列ｃが入力される。そして、出力端子Ｄからパルス列ｄが出力される。このパルス列ｄには、パルス列ａのパルス無しの期間に発生したパルス列ｃの「パルス在り」ｃ２に相当するパルスは発生しない。
【００５０】
この図３のパルス論理回路では、図示しない前段の論理回路を通って出力されたパルスのうち、被制御パルス列ａをＮＡＮＤ素子１５に入力し、抑制入力用のパルス列ｃをＮＯＲ素子１６に分けて入力することで、半否定を実現している。このように、通常のＮＡＮＤ素子やＮＯＲ素子等の論理素子を用いて、抑制入力を入力端で否定することにより、パルス論理の基本素子を実現することができる。
【００５１】
１つのＡＮＤ素子に被制御入力、抑制入力を同時に入力しても同じように実現できるが、ＮＡＮＤ素子とＮＯＲ素子とに入力を分け、被制御パルスのＡＮＤ出力と、抑制入力のＡＮＤ出力とで、ＡＮＤ演算を行うことで、半否定論理を実現するのが良い。
【００５２】
このように、パルスが存在する期間だけ否定演算を行い、他のパルスに作用することのみを許すことで１の否定を実現し、パルス単独で、無条件に、パルスが存在しない状態である論理値０の否定は禁止するため、パルスが無い状態から無秩序にパルスが生成される不具合を回避できる。
【００５３】
本発明は、パルスの存在の有無に論理値１，０を割り当てて論理演算を行うものであり、その論理演算を行う１つの手段として半否定演算を導入したものであり、半否定の実現の仕方に限定するものではない。
【００５４】
また、本発明では、パルスが存在しない状態からパルスを生成する演算、すなわち論理値０から論理値１を出力する演算がないため、論理代数と等価ではない。
しかし，本発明は，単独の論理変数の否定だけを禁止するものであるので，被制御対象の論理変数がある場合には，複数の制御用の論理変数の間の演算では，最終的に否定演算を前記被制御対象の論理変数とのＡＮＤ素子の抑制入力にすることができるので，論理代数と等価にすることができる．したがって，部分的に論理代数と等価ではないだけで，被制御論理変数の有無だけに着目すれば良いので，実用上は問題がない。
また、パルス論理回路でのパルス論理演算ではパルスは減少するのみである。パルスを増加させるためにパルス分岐素子を導入すれば、一つのパルスから多数のパルスを生成する事が可能である。さらに、閉回路を用いる事で継続的にパルスを発生させる事も容易に可能である。
【００５５】
図４に、パルス論理回路の出力に閉回路を接続した例を示す。前段の図示しないパルス論理回路から、論理値１即ちパルスが存在する信号が出力された場合、このパルスは、インプットパルス（ｉｎｐｕｔ  ｐｕｌｓｅ）として図４の閉回路に入力される。
【００５６】
図４の回路で、Ｎ型ＭＯＳトランジスタ３１のゲート端子に“０”のイネーブル信号が印加されている時にインプットパルス“１”がＮ型ＭＯＳトランジスタ３２のゲート端子に印加されると、Ｎ型ＭＯＳトランジスタ３３が遮断されると共にＰ型ＭＯＳトランジスタ３４が導通し、出力端子から“１”が出力される。
【００５７】
この“１”信号はＮ型ＭＯＳトランジスタ３５及びＰ型ＭＯＳトランジスタ３６の共通ゲート端子に印加されるが、トランジスタ３５が導通しても下段のＮ型ＭＯＳトランジスタ３１が非導通のため、トランジスタ３５のソース電位は“０”にはならない。一方、Ｎ型ＭＯＳトランジスタ３７のゲート端子にはイネーブル信号“０”が印加されてトランジスタ３７が導通状態のため、そのドレイン端子電位は“１”となってＮ型ＭＯＳトランジスタ３８を導通させる。
【００５８】
これにより、トランジスタ３８のソース電位すなわちＮ型トランジスタ３３のゲート電位は“０”に維持され、出力端子の“１”出力は維持される。この状態で、インプットパルスが“０”に変化しても、出力端子の“１”出力は維持される。
【００５９】
イネーブル信号を“１”にすると、トランジスタ３５，３１が導通してトランジスタ３８のゲート端子がアースレベル“０”となり、トランジスタ３８が遮断されると共に、Ｐ型ＭＯＳトランジスタ３９が導通される。このとき、Ｐ型ＭＯＳトランジスタ４０のゲート端子に印加されているインプットパルスが“０”になっていると、トランジスタ４０は導通状態となり、トランジスタ３３のゲート端子に印加されるレベルは“１”となり、出力端子からの出力は“０”となる。即ち、パルス無しの状態となる。
【００６０】
この様に、図４に例示する回路では、インプットパルスが無くなっても、この閉回路をパルスが回り、出力端子からパルスがバースト状（“１”が続く状態）に出力される。ある時間区間、パルス在り状態“１”を出力した後に、この閉回路の出力をアンイネーブル信号で閉じれば、閉じられるまでの時間区間では論理レベル１の状態が保持される。このバースト期間を論理レベル１として、論理回路に出力することで、論理回路とパルス論理回路との接続が可能となる。
【００６１】
図５は、図３に示すパルス論理回路にパルス数計数回路４２を接続した回路構成を示す図である。この回路では、図３に示すアンド素子１７，１８と抑制入力端子付ＡＮＤ素子１９とによって構成されたパルス論理回路から出力されるパルス数をパルス数計数回路４２によって計数し、計数結果を、複数ビット、例えば、バイナリコードなどでコード化して出力する。パルス数計数回路４２としては、通常のＮ進カウンタで実現することができる。あるいは、多値素子を使い多値レベル表現をすることも可能である。特に、１ビットの２進カウンタの場合には、パルスの有無を１，０の論理レベルに変換することができるため、この１ビットの２進カウンタを、変換回路としてパルス論理回路に接続する。
【００６２】
図６は、図３に示すパルス論理回路と、メモリシフタ（ＭＥＭＯＲＹ−ＳＨＩＦＴＥＲ）４３に記憶してあるパルスパターンとの一致をＡＮＤ素子４４でとり、その結果として出力されるパルス列をパルス数計数回路４２で計数する回路を示す図である。
【００６３】
図７（ａ）は、図５のパルス数計数回路４２としてカウンタ４２ａを用いた回路である。このカウンタ４２ａは、図１に示す基準クロックｃｌｋに同期したパルスを計数し、計数区間ＤＴを定めるクロックＣＫをＣＬＯＣＫ入力端子に入力することで、計数期間ＤＴの制御を行っている。
【００６４】
図７（ｂ）は、このカウンタ４２ａ部分を拡張したパルス計数回路４２ｂを用い、複数のパルス計数回路４２ｂを並列に並べて各パルス計数回路４２ｂに夫々図３に示すパルス論理回路の出力ｉｎ０をパラレルインし、複数のパルス計数回路４２ｂによる計数結果をシリアルアウトする構成にした回路を示したものである。
【００６５】
図８は、基本的構成は図７（ｂ）（図７（ｂ）では、図３に示す回路部分は省略している。）と同じであるが、複数設ける図３に示す回路のアンド素子１７とアンド素子１８との間の結線箇所を選択できるようにしている点が異なる。そして、結線するか否かは、線の交差部に設けた記憶要素４５に記憶させている。そして、図７（ｂ）に示すパルス数計数回路４２ｂ中のカウンタの代わりにＤラッチ回路を用い、論理値１を記憶する様にしている。Ｄラッチ回路は、一度、論理値１を記憶すると、ＲＳＴ信号でリセットしない限り論理値１を保持している。このパルス論理回路では、パルスが無く論理値０となっても、１度パルスが来れば、論理値１を出力するようになっている。この回路例では、パルスの否定入力の出力結果で、記憶要素４５への入力をゲートしている。
【００６６】
図９（ａ）は、図７，図８に示した回路を抽象化してブロック図で示した図であり、図９（ｂ）は図９（ａ）に示す回路４６を複数接続することで構成したパルス論理回路である。ブロック間は正パルスのみが伝播し、パルスの存在を論理変数と見て扱っている。パルスを反転した負パルスはパルスの存在の概念を曖昧にし動作理解が混乱するので使用していない。
【００６７】
図１０（ｂ）は、図９（ｂ）に示すパルス論理回路に入力する画像パターン（画素数１６×１２）を白黒の濃淡画像で模式的に表した図である。図１０（ａ）は、図１０（ｂ）の画像と一致操作（マッチング）を行う４×４の画素数の画像標本例（テンプレート）を３通り示している。
【００６８】
各画素に対応する光センサからは、２５６値の値幅を持った信号が出力されている。この例では図１に示すようなパルス列ａ，ｂ，ｃ，ｄとして出力されている。テンプレートに対応する回路は積項で表現される。
【００６９】
例えば、（ｉ行番目，ｊ列番目）の位置に対応する単項をｇ（ｉ，ｊ）とし、左上を（０，０）とすれば、左上のテンプレートに対しては、積項ｇ（１，１）ｇ（２，１）ｇ（３，１）ｇ（３，２）となる。
【００７０】
右上の積項はｇ（１，１）ｇ（１，２）ｇ（１，３）であり、両方の積項のどちらかがあるかを検知する積項は、両積項の論理和ｇ（１，１）ｇ（２，１）ｇ（３，１）ｇ（３，２）＋ｇ（１，１）ｇ（１，２）ｇ（１，３）あるいは多値の出力結果を加算すれば良い。このように、パルス論理を使えば、単純な積和により、複雑な画像処理回路が容易に実現できる。
【００７１】
図１１は、通常の論理回路の設計法に本実施形態に係る半否定を考慮した設計法のフローチャートである。回路のハードウェア記述を通常の論理設計の手順に従って積和の標準形に直し（ステップＳ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５）、出力の否定が無いか調べる（ステップＳ６，Ｓ７）。出力の否定がある場合には、否定出力先がＡＮＤ素子であるかどうか調べ、ＡＮＤ素子であれば、抑制入力（半否定）に変換する（ステップＳ８）。
否定出力先がＡＮＤ素子で無い場合には、ＡＮＤ素子に変換可能か調べ，不可能ならば，パルス論理変換不可と出力して中止する。
【００７２】
本実施形態は、上述したように、半否定を用いることでパルスを論理変数として使用し、既存の論理回路を自然な形で拡張し,同時に，論理代数を自然な形で制限することで，パルス論理を実現している。このため、論理回路とパルス論理とを自然な形で融合でき、高速かつ大規模な処理装置を容易に実現できる。
【００７３】
クロック周波数は、現在、数ＧＨｚで動作するものがあるが、クロック周波数をこれ以上高くすることは、消費電力が大きく不可能である。また、パラレル転送も、数百ＭＨｚ以上では同期してデータを送ることが困難になっており、このため、ＧＨｚでの転送はシリアル転送が用いられている。
【００７４】
従来のシリアル転送では、送る前にパラレルで表現されていたデータをパラレル・シリアル変換してから、シリアル転送している。受信側では、送られてきたシリアル信号をシリアル・パラレル変換し、パラレル信号によりデータを表現してから信号処理を行っている。そのため、パラレル・シリアル変換回路とシリアル・パラレル変換回路部分の処理速度、回路規模のオーバーヘッドが大きく、通信路に対してのみしか使用しないのが普通である。
【００７５】
これに対し、本発明のパルス論理演算で得られた複数のパルス出力は、パラレルに且つシリアルで転送することが可能である。複数の配線を使ってパラレルに送られるパルス間に、信号の前後関係、すなわち、パラレルで送られた信号の到着順序で符号化を行うことで、パルス間の時間変化に対して耐性のある符号化が可能となる。
【００７６】
また、本発明では、同時に、パルスの転送順序に意味を持たせて情報として符号化するので、大量のデータを符号化することが可能である。例えば、３ビットのパルスの各信号線でのパルスをａ，ｂ，ｃとすると、パルスの転送順序は、順列ａｂｃ，ａｃｂ，ｂａｃ，ｂｃａ，ｃａｂ，ｃｂａで与えられる。この順列の数Ｐ３は階乗で大きくなり、Ｎ個の信号線ではＰＮ＝Ｎ！個の順序があるため、この順序によって送ることができるデータ量は膨大な量となる。
【００７７】
半導体の微細化で半導体素子の動作速度は数十ｐｓから数ｐｓの範囲で動作が可能である。しかしながら、電源電圧を低下させても、消費電力の限界のために、クロックclockのクロック周波数は数ＧＨｚ、波長として数百ｐｓが限度である。
【００７８】
ここでは、例として４００ｐｓとして説明する。同期式回路では、半導体素子が数十ｐｓで動作しても、クロックに出力を揃えるために、次のクロックが来るまで待たなければならない。従って、Ｎビット幅でデータを転送するとしても、１クロック毎には２Ｎのデータを送ることができるだけである。他方、パルス幅を数十ｐｓ（例として４０ｐｓ）とすると、１クロックの中に１０個前後のパルスを組み込むことが可能である。
【００７９】
図１２に示す様に、Ｎビットの各ビットＳｉで、１クロック内に１パルスがある場合には、パルスの転送順序としては＝Ｎ（Ｎ−１）（Ｎ−２）・・・（Ｎ−９）の組み合わせが存在し、２Ｎより大量の符号化が可能である。
例えば、Ｎ＝３２とすると、32Ｐ10＝２．３＊ １０１５の膨大な値となり、２３２＝４．２９＊１０９と比べても６桁も大きな値を表すことができる。図１２で、clockはパルス列の開始と終了を表すためのものであり、常に周期が一定である必要も無いし、２線信号で表しても良いし、Ｉ２Ｃでも、どのような構成でも可能である。この様に本発明では、消費電力を抑えながら、大量のデータを転送することが可能である。
【００８０】
また、従来から、制御信号では、制御信号の到着順序に従って制御回路に制御情報を送っており、この信号順序をプロトコルと呼んでいる。通常は、伝送側と受信側とで制御信号をやり取りし、通信可能状態になったところでデータをパラレル、あるいはシリアルで通信している。
【００８１】
これに対し、本実施形態によれば、送るデータ自身に対してもパルス信号を使い、パルスの到達順序でデータを符号化することができる。こうすることで、制御信号とデータ信号全てを非同期パルスによる時間変化に対して耐性のあるものにすることができる。
【００８２】
また、ネットワーク通信では、データを転送するに際しデータをパッケト状に分け、パケットのヘッダ部分に宛先やデータ量、データ形式などの情報を載せ、その後にデータ本体を付け、最後にテイル部分を付けて送信している。制御情報とデータとを順序付けて送っているが、最初にヘッダ部、データ本体、テイル部とこの順序関係を変えることはできない。従って、本発明のパルス論理回路による処理とは異なる。
【００８３】
Ｉ２Ｃ方式によるデータの転送方式は、単にデータ転送の開始と終わりをコード化したものにすぎず、本発明の様に、データ本体を符号化したものではない。
【００８４】
本発明は、データ転送時にデータをパルス順序で符号化することと、送受信する側で、パルス論理回路を使い、パラレル・シリアル変換とシリアル・パラレル変換をすることなく、直接処理をすることを特徴にしている。従って、従来方式でのオーバーヘッドが無く、ＬＳＩ内部やボード内でクロック・スキューが問題となるような部分回路へのデータ転送でもオーバーヘッド無しに効率よくデータを送ることが可能である。
【００８５】
また、本発明では、パルスの転送順序に情報を持たせているので、先行して送られたパルスＳ０は、遅れて到達するパルスＳ３を制御することが可能である。同様にパルスＳＮは、パルスＳ０，Ｓ３によって制御可能である。このように、制御信号とデータとの区別が無くなることで、柔軟な制御構造を実現することが可能である。
【００８６】
図１３は、本発明の送信元パルス論理回路から受信側パルス論理回路にパルス列を送信する回路図である。この実施形態では、送信元パルス論理回路４９から送信されたパルス列を受信側パルス論理回路５１が受信する前段に、切替スイッチ５０と、並列配置されたＦＦ１（フリップフロップ）〜ＦＦｎを設けている。
【００８７】
切替スイッチ５０は、送信元パルス論理回路４９から最初に到達したパルスをＦＦ１に送り、ＦＦ１からイネーブル信号をＦＦ２に送ると共に受信側パルス論理回路５１に、パルスまたは論理信号を出力する。次に来たパルス信号を切替スイッチ５０を通してＦＦ２で受けると、ＦＦ２にはイネーブル信号が立っているので、ＦＦ１と同様に、受信側パルス論理回路５１に、パルスまたは論理信号を出力する。
【００８８】
受信側パルス論理回路５１では、ＦＦチェインからの出力に対して論理演算あるいはパルス論理演算を行い、次段のパルス論理回路へと出力すればよい。切替スイッチ５０を書き換え可能な回路構成にすることで、所望のパルス順序列に対して、ＦＦ１からＦＦ２，…へと、順序を入れ替えて受信側パルス論理回路に信号を送ることができる。
【００８９】
例えば、Ｓｉ１，Ｓｉ２，Ｓｉ３，…，Ｓｉｎと、Ｓｊ１，Ｓｊ２，Ｓｊ３，…，Ｓｊｍの２つのパルス列に対して、同じように応答するには、夫々に応答する切替スイッチ部を作り、その出力和をＦＦチェインに入力すれば良い。パルス列の代わりに、パルスの立ち上がりエッジに注目し、データ送信開始から、立ち上がりエッジの順序列を受信し、パルス列終了時に全てのパルスを立ち下げる方式とすることも可能である。
【００９０】
以上述べた様に、本発明によれば、パルス論理回路とパルス列順序による符号化で、従来のパラレル転送が不可能な周波数領域においても、パルス論理回路間で大量のデータ転送を、低消費電力、かつ、回路規模の増大も無く、容易に実現することが可能となる。
【産業上の利用可能性】
【００９１】
本発明のパルス論理回路は、論理回路、多値論理回路との接続も容易であるので、大規模なシステムも容易に実現することが可能となり、論理回路、パルス信号を使った信号処理装置、画像処理装置、可変型再構成回路を利用した信号処理装置、ディジタル型ニューラル・ネット、非同期型パルス論理回路を利用した装置等に有用である。
【図面の簡単な説明】
【００９２】
【図１】パルス論理回路で通常用いるパルス信号を示す図である。
【図２】本発明の一実施形態に係る半否定演算ＨＮＯＴ回路の回路図である。
【図３】（ａ）は２個のＡＮＤ素子と否定入力による抑制入力端子付ＡＮＤ素子とで構成されるパルス論理回路の一例の回路図である。  （ｂ）は図３（ａ）の詳細ＣＭＯＳ回路例の回路図である。
【図４】バーストパルス生成回路の回路例の回路図である。
【図５】図３に示すパルス論理回路にパルス数計数回路を接続した回路例の回路図である。
【図６】図３に示すパルス論理回路にメモリシフタ（ＭＥＭＯＲＹ−ＳＨＩＦＴＥＲ）とパルス数計数回路とを付加した回路例の回路図である。
【図７】（ａ）は抑制入力端子付き論理ＡＮＤからの論理値１を計数する回路例の回路図である。  （ｂ）は二つの入力を選択し論理値１を計数し出力する回路をパラレルに備える回路例の回路図である。
【図８】複数のパルス論理回路の出力を図７の回路で構成したパラレル・シリアル変換回路にパラレル入力してパルス列を生成する回路例の回路図である。
【図９】（ａ）は、図７，図８に示した回路を抽象化してブロック図で示した図である。  （ｂ）は、図９（ａ）に示す回路を複数接続することで構成したパルス論理回路である。
【図１０】（ａ）は、特徴パターンを表す２次元画像の各画素からの入力をパルス論理の積項の入力として特徴抽出を行う時のテンプレート画像を示す図である。  （ｂ）は、パルス論理回路に入力する入力画像例を示す図である。
【図１１】本発明の一実施形態に係るパルス論理回路を積和標準形から自動変換する場合の合成フローチャートである。
【図１２】本発明の一実施形態に係るパルス論理回路によるパルス転送の説明図である。
【図１３】本発明の一実施形態に係るパルス論理回路間でパルス転送を行う転送回路例を示す回路図である。
【符号の説明】
【００９３】
１７，１８  アンド素子
１９  抑制入力端子付きＡＮＤ素子
４２，４２ａ，４２ｂ  パルス数計数回路
４５  記憶要素
４６  パルス論理回路
４９  送信元パルス論理回路
５０  切り替えスイッチ回路
５１  受信側パルス論理回路
【図１】
2005286676.tif 000003
【図２】
2005286676.tif 000004
【図３】
2005286676.tif 000005
【図４】
2005286676.tif 000006
【図５】
2005286676.tif 000007
【図６】
2005286676.tif 000008
【図７】
2005286676.tif 000009
【図８】
2005286676.tif 000010
【図９】
2005286676.tif 000011
【図１０】
2005286676.tif 000012
【図１１】
2005286676.tif 000013
【図１２】
2005286676.tif 000014
【図１３】
2005286676.tif 000015