(57)【特許請求の範囲】
【請求項１】
デジタル・データ・プロセッサ（１０）におけるファジィ・ルール評価処理を行う方法であって：
ルール評価命令をデコードする段階（８０１）；
固定フォーマット・ルール・ベースまたは可変フォーマット・ルール・ベースのいずれを前記ルール評価命令で使用するかを判定する段階（８０２）；
前記固定フォーマット・ルール・ベースが、前記ルール評価命令で用いられると判定された場合、前記固定フォーマット・ルール・ベースを用いて前記ルール評価命令を処理する段階（８０４〜８０９）；および
前記可変フォーマット・ルール・ベースが、前記ルール評価命令で用いられると判定された場合、前記可変フォーマット・ルール・ベースを用いて前記ルール評価命令を処理する段階（８０３）；
から成ることを特徴とする方法。
【請求項２】
ファジィ・ルール評価処理を実行するデジタル・データ・プロセッサ（１０）であって：
ルール評価命令をデコードする命令デコード論理部（１８）；および
実行部（１４）から成り、前記実行部は：
固定フォーマット・ルール・ベースまたは可変フォーマット・ルール・ベースのいずれを前記評価命令で用いるかを判定し；
前記固定フォーマット・ルール・ベースが、前記ルール評価命令で用いられると判定された場合、前記固定フォーマット・ルール・ベースを用いて前記ルール評価命令を処理し；および
前記可変フォーマット・ルール・ベースが、前記ルール評価命令で用いられると判定された場合、前記可変フォーマット・ルール・ベースを用いて前記ルール評価命令を処理する；
ように動作可能な実行部（１４）；
から成ることを特徴とするデジタル・データ・プロセッサ（１０）。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般的にデータ処理システムに関し、更に特定すれば、データ処理システムにおけるファジィ理論処理の実行に関するものである。
【０００２】
【従来の技術】
データ・プロセッサは、入力および出力が１または０として解釈される二進機械として機能するように発展してきたものであり、それ以外の可能性の存在は、許されない。これは殆どの状況でうまく動作するのであるが、時として答えが単純に「はい」または「いいえ」ではなく、その中間のどこかである場合がある。
「ファジィ理論」と呼ばれる概念が発達したことにより、二進論理に基づくデータ・プロセッサが、「はい」と「いいえ」の間の答えを出すことができるようになった。
【０００３】
ファジィ理論は、曖昧な境界のあるメンバシップ関数を有する論理系である。
メンバシップ関数は、例えば、「温度が暖かい」というような主観的表現を、通常のデータ・プロセッサが認識可能な値に変換する。「暖かい」のようなラベルを用いて、入力値の範囲を識別する。この範囲の境界は、かかるラベルの一方側が真で他方側が虚であるという点の集合ではない。むしろ、ファジィ理論を実施するシステムにおいては、メンバシップ関数の境界は序々に変化し、隣接するメンバシップ集合の境界と重なり合う場合もある。したがって、メンバシップ度(degree of membership)が通常入力値に割り当てられる。例えば、ある温度範囲がメンバシップ関数を与える場合、「涼しい」および「暖かい」と命名された関数の両方の重複領域に入力温度が該当する場合がある。各メンバシップ関数におけるメンバシップ度（即ち、現在の温度がメンバシップ集合「涼しい」および「暖かい」の各々と適合する度合い）を判定するには、更に処理が必要とされる。
【０００４】
「ファジィ化(fuzzification) 」とよばれるステップを用いて、ファジィ理論を実施するシステムにおいて、入力をメンバシップ関数に関係付ける。ファジィ化プロセスは、具体的な数値を、「温度が暖かい」というような主観的表現に結び付ける。これらの数値は、人間の知覚にうまく近似させようとするものである。
【０００５】
ファジィ化ステップの後、ルール評価(rule evaluation) と呼ばれるステップを実行する。ルール評価ステップの間、ファジィ入力値に依存するルール表現を評価して、ファジィ出力を得る。例えば、評価すべきルールが以下のように記述されていると仮定する。
Ｉｆ（温度が暖かい）ａｎｄ（圧力が高い）、ｔｈｅｎ（送風機速度は中間である）。このルールでは、２つの前提(antecedents) 、「温度が暖かい」と「圧力が高い」とを評価して、「送風機速度は中間である」という結果のルール強度(rule strength) を判定しなければならない。ルール評価ステップの間、１つの前提が真である度合いが、ルールが真である度合いに影響を及ぼす。前提の最小値が、ルールの結果のルール強度として適用される。加えて、２つ以上のルールを評価すべきとき、１つの作用(action)に２つのルール強度以上が割り当てられる可能性が存在する。かかる状況では、より大きな値を有するルール強度に当該作用を割り当てるべきである。したがって、その作用には最大値を有するルール強度が割り当てられる。
【０００６】
ファジィ理論プロセスの最後のステップは、「ディファジィ化(defuzzification) 」と呼ばれている。このステップは、ルール評価ステップにおいて競合する結果を、単一の作用に変形する。ディファジィ化は、ファジィ出力全てを結合して複合結果とし、標準的なデータ処理システムに適用可能とする。ファジィ理論に関する更に詳しい情報については、James M.Sibigtroghによる"Implementing Fuzzy Expert Rules in Hardware" と題された論文を参照されたい。この論文の内容は、本願でも使用可能である。この論文は、ＡＩ  ＥＸＰＥＲＴの１９９２年４月号の２５ないし３１頁に掲載された。
【０００７】
【発明が解決しようとする課題】
要約すると、ルールは、一連の約束（前提）で構成され、その後に１つ以上の作用（結果）が続く。各前提はファジィ入力に対応し、各作用はファジィ出力に対応する。ルール評価ステップをハードウエアで実施する場合、専用の接続部や回路を用いて、ファジィ入力をファジィ出力に関係付ける。この手法は多くの場合専用メモリ回路を必要とし、しかも柔軟性がない。ルール評価ステップをソフトウエアで実施する場合、命令のプログラムを用いてルールを評価する。ソフトウエアによる手法は通常ハードウエアによる手法より遅く、大量のプログラム・メモリを必要とする。できるだけ速くデータを計算し、移動し、処理する必要がある業界では、高速実行時間が必須となっている。したがって、ソフトウエアは、用途によっては実行可能な解決案とはならない。
【０００８】
したがって、ルール評価ステップを高速に実行し、しかも大規模なハードウエアを必要としない回路または方法が必要とされている。通常はハードウエアによる解決法でなければ得られない速度を、かかる解決法で通常必要とされる専用回路領域を用いずに達成することが必要とされている。
【０００９】
関連する米国特許番号第５，２６３，１２５号は、可変フォーマットを有し、いかなる数の入力および出力でもルールが有することができる、ファジィ・ルール・ベースの使用について記載している。この内容は、本願でも使用可能である。この可変フォーマット・ルール・ベースは、ルールを描写する(delineate) するために、オーバーヘッド・バッファリング(overhead buffering)を含む。対照的に、固定フォーマット・ルール・ベースでは、各ルールは同一の所定数の入力および出力を有し、オーバーヘッド・バッファリングがなくとも、ルールを評価することができる。その結果、固定フォーマット・ルール・ベースは、指定用メモリや実行時間が少なくて済む。ルール・ベース・フォーマットを固定化する場合の欠点は、各ルールが所定の構造に従わなければならないことである。このように、双方のルール・ベース・フォーマットには利点も欠点もあるので、一方が他方よりも望まれるような状況がある。
【００１０】
以上の結果、ファジィ理論システムにおいて、固定または可変フォーマット・ルール・ベースを実施する選択肢を与える回路および方法が必要とされている。
【００１１】
【課題を解決するための手段】
本発明は、ファジィ理論処理を実行するデータ処理システムにおいて、スイッチング機構を利用して、可変フォーマット・ルール・ベースと固定フォーマット・ルール・ベースとの間の選択を可能にする。可変フォーマット・ルール・ベースは、ファジィ入力アドレスとファジィ出力アドレスとの間でバッファを利用する。一方、固定フォーマット・ルール・ベースは、多数のファジィ入力アドレスとファジィ出力アドレスとが予め決められているので、かかるバッファを必要としない。
【００１２】
【発明の実施の形態】
本発明およびその利点をより完全な理解を得るために、以下に図面に関連付けながら本発明について説明する。
【００１３】
以下の説明では、具体的なワードまたはバイト長等のように多数の具体的な詳細を記載し、本発明の全体的な理解が得られるようにする。しかしながら、本発明は、かかる具体的な詳細ではなくても実施可能であることを、当業者には明白であろう。他の場合には、既知の回路をブロック図で示し、不要な詳細で本発明が不明瞭にならないようにする。殆どの部分では、タイミングの検討等に関する詳細は、本発明の完全な理解を得るには必要でなく、関連技術における当業者の知識の範囲に含まれるので、かかる詳細は省略してある。
【００１４】
これより図面を参照するが、図示した要素は必ずしも実際の寸法通りには示されおらず、各種図面にわたって同様の要素には同一参照番号で示すことになる。本発明は、データ処理システムにおいて、ファジィ理論処理におけるルール評価ステップを高速にしかも最少量の回路で実行する回路および方法を提供する。ルール評価ステップは、単一の命令にエンコードされ、データ処理システムに大規模な回路量を追加することなく、効率的に実行される。したがって、本発明によって、データ処理システムのユーザは、長大で時間がかかるソフトウエア・プログラムを用いずに、高速にルール評価ステップを実行することができる。
【００１５】
本発明の命令は、ニモニック・ラベル「ＲＥＶ」を用いて呼ぶことにする。この命令は、データ処理システムに、メモリからのオペランドの引き出し(retrieval) 、およびこのオペランドを用いての算術処理の実行を伴う、一連のステップを実行させる。本発明のＲＥＶ命令の実行に先だって、評価すべきルールの前提および当該ルールの結果に対するメンバシップ関数値が適切にメモリに記憶されたなら、ＲＥＶ命令を実行することによって、適正なルールの評価が得られる。前提および結果が特定フォーマットでメモリに記憶されていると仮定することにより、そして、命令の実行には可能な限り既存のハードウエアを思慮深く使用することによって、本発明は、殆どハードウエアを付加することなく、汎用データ処理システムにおいて、ファジィ理論ルールの効率的な評価を行うことができる。例えば、データ・プロセッサにおいて符号付き算術を実行する場合に使用される条件コード・レジスタのオーバフロー、即ち、Ｖビットを、本発明ではメモリからのオペランドの処理に関連するフラグとして用いる。
【００１６】
本発明の実施形態の説明の中で、「アサート」および「二ゲート」という用語およびその様々な文法的形態を用いて、「アクティブ・ハイ」および「アクティブ・ロー」を混合して取り扱う際の混乱を回避することとした。「アサート」は、論理信号またはレジスタ・ビットがそのアクティブ状態、即ち、論理真状態になることを意味するために用いる。「二ゲート」は、論理信号またはレジスタ・ビットがそのインアクティブ状態、即ち、論理虚状態になることを意味するために用いる。加えて、１６進数は、値に先だってシンボル「＄」を付することによって表わすこととする。
【００１７】
図１は、ファジィ理論の基本用語数個とその概念とを示すグラフである。図１に記載したファジィ理論システムにおいて、「システム入力」は華氏で表わした温度である。温度の範囲を示すラベルを与えるために、４つの「メンバシップ関数」が備えられている。例えば、０度から３５度まででは、温度に「寒い」と標記されている。同様に、２５度から６０度まででは、温度に「涼しい」と標記されている。各メンバシップ集合の境界は隣接する集合の境界と重複していることに注意されたい。したがって、ある温度が１つ以上のメンバシップ集合に属する場合もある。例えば、システム入力が５８度の温度を示すと仮定する。図１を参照すると、５８度は、涼しいおよび暖かいメンバシップ集合双方の境界内にあることに注意されたい。しかしながら、各メンバシップ集合においてメンバシップ度が得られる。システム入力は、涼しいメンバシップ集合に対しては１６進数の＄３３というメンバシップ度と、暖かいメンバシップ集合に対しては１６進数の＄ＣＣというメンバシップ度とを有する。システム入力が７０度の温度を指示したとすると、この温度は、暖かいメンバシップ集合において、１６進数の＄ＦＦというメンバシップ度を有したであろう。同様に、７０度の温度は、暑いメンバシップ集合において、１６進数の＄００というメンバシップ度を有するであろう。図１に記載したファジィ理論システムでは、メンバシップ度は１６進数の＄００ないし＄ＦＦの範囲となっており、これは、少数の０．００ないし０．９９６に相当する。当業者は、２桁の１６進数は単一の８ビット２進バイトで表わすことができることを認めよう。
【００１８】
上述の命令および動作方法の実施形態は、改良型のＭＣ６８ＨＣ１１マイクロ・コントローラにおいて実施される。ＭＣ６８ＨＣ１１は、８ビットマイクロ・コントローラであり、１６ビットアドレスおよび記憶レジスタを含み、テキサス州AustinのMotorola, Inc.から入手可能である。この実施形態を図２に詳しく示す。図２は、ルール評価命令を実施可能なデータ処理システム１０を示す。データ処理システム１０は、概略的に、中央処理装置（ＣＰＵ）１２、発振器２４、電力回路２６、タイミング回路２８、外部バス・インターフェース３０、および内部メモリ３２を含む。ＣＰＵ１２は、概略的に、実行部１４、バス制御論理回路１６、命令デコード論理回路１８、制御部２０、およびシーケンサ２２を含む。
【００１９】
動作の間、「Ｏｓｃ１」信号が、水晶のような外部供給源を介して、発振器２４に供給される。水晶は、Ｏｓｃ１信号とＯｓｃ２信号との間に接続され、水晶を発振可能にする。Ｏｓｃ１は「クロック」信号をデータ処理システム１０の残りの部分に供給する。水晶発振器の動作は、データ処理技術では既知であり、当業者には明白なはずである。
【００２０】
電力回路２６は、外部電源から「Ｖｄｄ」信号および「Ｖｓｓ」信号双方を受信する。Ｖｄｄ信号は、正の５ボルトを供給し、Ｖｓｓ信号は基準、即ち、接地電圧を供給する。Ｖｄｄ信号およびＶｓｓ信号は、データ処理システム１０の残りの各素子に供給される。これらの信号の送出(routing) はデータ処理技術では既知であり、当業者には明白であろう。
【００２１】
タイミング回路２８はクロック信号受信し、それに続いて適切なタイミング信号を、ＣＰＵ１２、外部バス・インターフェース３０、および内部メモリ３２に、タイミング制御バス３８を通じて供給する。
【００２２】
複数のアドレス値が、外部バス・インターフェース３０から外部アドレス・バス３５に供給される。同様に、複数のデータ値が、外部データ・バス３３を通じて、外部バス・インターフェース３０によって通信される。外部バス・インターフェース３０は、外部ユーザとデータ処理システム１０との間のアドレスおよびデータ値の受信および送信を制御する。外部バス・インターフェース３０は、複数のアドレスおよびデータ値を、それぞれ、内部アドレス・バス３６および内部データ・バス３４を通じて、データ処理システム１０の残りの部分に通信する。内部メモリ３２は、データ処理システム１０の適正な動作に必要な情報を記憶するように機能する。加えて、内部アドレス・バス３６および内部データ・バス３４を通じて供給されるユーザ・プログラムにおいて指定された場合、他のデータ値もその中に記憶する。
【００２３】
ＣＰＵ１２は、データ処理システム１０の動作の間に必要とされる各命令を実行する。内部アドレス・バス３６および内部データ・バス３４は、実行部１４とデータ処理システム１０の残りの部分との間で情報の通信を行う。バス制御論理回路１６は命令およびオペランドを取り込む。次に、命令デコード論理回路１８によって各命令をデコードし、制御部２０およびシーケンサ２２に供給する。制御部２０およびシーケンサ２２は、データ処理システム１０の計算能力を最も効率的に利用するように、各命令の実行順序を維持する。加えて、制御部２０はマイクロＲＯＭメモリ（図示せず）を含み、これが、実行部１４、バス制御論理回路１６、および命令デコード論理回路１８の各々に、マイクロＲＯＭ制御バス６５を通じて、複数の制御情報を供給する。複数の制御情報は、ＲＥＶ命令の適正な実行に必要なものである。
【００２４】
図３に実行部１４をより詳細に示す。実行部１４は、概略的に、データ・バッファ４０、第１セレクタ４２、第２セレクタ４４、レジスタ交換論理回路４６、条件コード論理回路４７、Ａ−入力制御回路４８、Ａ−入力マルチプレクサ５０、算術論理部（ＡＬＵ）５２、Ｂ−入力制御回路５４、Ｂ−入力マルチプレクサ５６、アキュムレータ５８、条件コード・レジスタ６０、および比較器７２を含む。アキュミュレータ５８および条件コード・レジスタ６０に加えて、他の記憶レジスタを実行部１４内に実施することも可能である。例えば、インデックス・レジスタまたは第２アキュミュレータを含んでもよい。かかる記憶レジスタの実施形態および使用は、当技術では既知であり、当業者には明白であろう。
【００２５】
外部情報バス４１は、アドレスおよびデータ情報をデータ・バッファ４０に供給する。外部情報バス４１は、内部アドレス・バス３６および内部データ・バス３４からそれぞれアドレスおよびデータ情報を受信する。データ・バッファ４０は、セレクタ４２，４４をそれぞれイネーブルし、情報を転送可能としたときに、外部情報バス４０を通じて転送された値を、情報バスＡ６６および情報バスＢ６４を通じて、実行部１４の残りの部分に供給する。ここでは詳細には示さないが、情報バスＡ６６および情報バスＢ６４は、１６ビット幅であり、上位側（ビット１５なしビット８）と、下位側（ビット７ないしビット０）に分割されている。加えて、データ・バッファ４０は、アドレス情報を比較器７２に供給する。アキュミュレータ５８の第１および第２入力は、それぞれ、情報バスＡ６６および情報バスＢ６４に双方向的に結合されている。同様に、アキュミュレータやインデックス・レジスタのようなあらゆるレジスタでも、情報バスＡ６６および情報バスＢ６４に追加結合することも可能である。
【００２６】
複数の制御信号が、マイクロＲＯＭ制御バス６５を通じて、Ａ−入力制御論理回路４８およびＢ−入力制御論理回路５４に供給される。マイクロＲＯＭ制御バス６５は、制御部２０内のマイクロＲＯＭメモリ（図示せず）によって供給される情報に応答して、これら複数の制御信号を供給する。
【００２７】
Ａ−入力制御論理回路４８は、Ａ−入力マルチプレクサ５０の制御入力に「制御Ａ」信号を供給する。情報バスＡ６６は、Ａ−入力マルチプレクサ５０のデータ入力に接続されている。Ａ−入力マルチプレクサ５０は、「Ａ−入力下位側」と標記された第１の１０ビット出力をＡＬＵ５６の第１入力に、そして「Ａ−入力上位側」と標記された第２の１０ビット出力をＡＬＵ５６の第２入力に供給する。Ｂ−入力制御論理回路５４は、「制御Ｂ」信号をＢ−入力マルチプレクサ５６の制御入力に供給する。情報バスＢ６４は、Ｂ−入力マルチプレクサ５６のデータ入力に接続されている。Ｂ−入力マルチプレクサ５６は、「Ｂ−入力下位側」と標記された第１の１０ビット出力をＡＬＵ５６の第３入力に、そして「Ｂ−入力上位側」と標記された第２の１０ビット出力をＡＬＵ５６の第４入力に供給する。
【００２８】
ＡＬＵ５２は各入力を処理し、複数の結果を与え、これらを結果バス１２０を通じて転送する。結果バス１２０は、ＡＬＵ５２によって与えられた結果を、レジスタ交換論理回路４６および条件コード論理回路４７に供給する。加えて、結果バス１２０は、これら複数の結果を情報バスＢ４６に供給する。
【００２９】
条件コード論理回路４７は、比較器７２にも結合されており、トグル信号を受信する。条件コード論理回路４７は、条件コード・レジスタ６０に結合され、「条件コード」信号を供給する。
【００３０】
条件コード・レジスタ６０は、ＶCCR 信号を、レジスタ交換論理回路４６の第２制御入力に供給する。加えて、タイミング制御信号が、レジスタ交換論理回路４６の第１制御入力に供給される。タイミング制御信号４６は、タイミング制御バス３８を通じて供給される。レジスタ交換論理回路４６は、それぞれ、「イネーブルＡ」および「イネーブルＢ」と標記された、第１出力および第２出力を供給する。イネーブルＡ信号はセレクタ４２の第１制御入力に供給される。情報バスＡ６６は、双方向的にセレクタ４２に結合されている。セレクタ４２の出力はデータ・バッファ４０に結合され、複数の選択された信号を通信する。同様に、イネ−ブルＢ信号はセレクタ４４の第１入力に供給される。情報バスＢ６４は、セレクタ４４に双方向的に結合されている。セレクタ４４の出力はデ−タ・バッァ４０に結合され、第２の複数の選択された信号を通信する。
【００３１】
図４にレジスタ交換論理回路４６をより詳しく示す。概略的に、レジスタ交換論理回路４６は、ＡＮＤゲート６２、ＡＮＤゲート７０、および反転器６８を含む。ＶCCR 信号は、ＡＮＤゲート６２の第１入力、および反転器６８に供給される。反転器６８の出力は、ＡＮＤゲート７０の第１入力に供給される。タイミング制御信号は、ＡＮＤゲート６２およびＡＮＤゲート７０双方の第２入力に供給される。結果バス１２０は、ＡＬＵ５２からの「Ｎ」と標記された信号を、ＡＮＤゲート６２およびＡＮＤゲート７０双方の第３入力に供給する。ＡＮＤゲート６２の出力はイネーブルＡ信号を供給し、ＡＮＤゲート７０の出力はイネーブルＢ信号を供給する。
【００３２】
ファジィ理論処理の実行中、データ処理システム１０のユーザは、ＲＥＶ(Rule EValuation) というニモニックを有する命令を用いて、ファジィ入力上でルール評価ステップを実行することができる。先に述べたように、ファジィ入力は、システム入力信号が複数の定義されたメンバシップ集合の各々に対して、メンバシップ度を割り当てる、ファジィ化ステップの結果として与えられるものである。ここに記載する本発明の実施形態では、ファジィ入力に割り当てられた各メンバシップ度は、ＲＥＶ命令の実行に実行に先だって、データ処理システム１０の内部メモリ３２内の所定のメモリ位置に記憶される。複数のファジィ入力に対する各メンバシップ度の割り当ては、Greg Viot, James M. Sibigtroth, James L. Broseghini による、"A Circuit And Method For Determining Membership In A Set During A Fuzzy Logic Operation" と題する、関連する同時継続中の特許出願連番第０７／８９９，９７５号により詳しく開示されている。
【００３３】
ここに記載する例では、第１および第２システム入力のファジィ化の間に、２群のメンバシップ集合が用いられると仮定する。これら２群の第１のものは温度測定値を与え、寒い、涼しい、暖かい、および暑いというメンバシップ集合に分離される。ファジィ化の際、涼しいメンバシップ集合における第１システム入力のメンバシップ度を、Ｔcoolと標記した変数を用いて呼ぶことにする。同様に、寒い、暖かい、および暑いメンバシップ集合における第１システム入力のメンバシップ度を、各々言語的変数Ｔcold、Ｔwarm、およびＴhot と呼ぶことにする。２群の第２のものは圧力測定値を与え、軽い、中間、および重いというメンバシップ集合に分離される。ファジィ化の際、軽い、中間、および重いメンバシップ集合における第２システム入力のメンバシップ度は、それぞれ、Ｐlight 、Ｐmedium、およびＰheavy と標記した言語的変数の１つを用いて引用することにする。システム入力がファジィ化された後、各メンバシップ集合における第１および第２システム入力のメンバシップ度は、メモリ内の所定位置に記憶される。加えて、ルールを評価して、適切な作用を与えなければならない。本例では、評価すべき３つのルールは以下の形態を有するもとの仮定する。
（１）ルール１：Ｉｆ温度が涼しい（Ｔcool）および圧力が軽い（Ｐlight ）、ｔｈｅｎ
（作用１）および（作用２）；
（２）ルール２：Ｉｆ温度が暖かい（Ｔwarm）および圧力が中間（Ｐmedium）、ｔｈｅｎ（作用３）；および
（３）ルール３：Ｉｆ圧力が中間（Ｐmedium）、ｔｈｅｎ（作用３）。
これらのルールは各々、典型的に以下のような形式を有することに注意されたい。
（４）Ｉｆ（ファジィ入力１）および（ファジィ入力２）、ｔｈｅｎ（作用Ｘ）および（作用Ｙ）。
【００３４】
ルール評価の間、ルールの「Ｉｆ」部分を最初に評価して、メンバシップ度の最少値を決定する。ルールの「Ｉｆ」は、ファジィ入力１値およびファジィ入力２値の双方を含む。ルール強度を判定する一般的な方法は、評価対照のファジィ入力の最少メンバシップ度を決定することである。しかしながら、他の実施形態も勿論存在する。例えば、あるルールの強度を、その前提の各々のメンバシップ度の合計として計算すればよい。同様に、メンバシップ度を乗算したり、またはある種の計算で処理し、ルール強度を判定してもよい。
【００３５】
この実施形態では、ルールの強度は単に最も弱い要素(component) と同じ強さとしてある。最も弱いメンバシップ度の値を用いて、ルールの「ｔｈｅｎ」部分において指定されている各作用のルール強度値を判定する。形式（４）に示すルールでは、ファジィ入力１およびファジィ入力２の最小値に対応するルール強度を、作用Ｘおよび作用Ｙ値のアドレスによって指し示される、内部メモリ３２内の第１および第２アドレス位置にそれぞれ記憶する。複数の作用値の所定の１つに対応する各ルール強度を用いて、各作用に対応するファジィ出力値を供給する。次に、ファジィ出力値をディファジィ化し、ユーザによって指定された処理を行う。形式（４）には２つのファジィ入力値および２つの作用値が与えられているのみであるが、それより多い値または少ない値でもよい。データ処理システム１０のユーザは、ルールの形式を決定し、あらゆる数のファジィ入力および実行すべき作用を与えることができる。
【００３６】
加えて、２つ以上のルールを評価する場合、１つの作用に２つ以上のルール強度が割り当てられる可能性が存在する。かかる状況では、より大きな値を有するルール強度を当該作用に割り当てるべきである。したがって、作用には、最も大きな値のルール強度が割り当てられる。
【００３７】
ここに記載する発明の実施形態では、内部メモリ３２を通常メモリ記憶部として使用する。しかしながら、データ処理システム１０外部の他のメモリ回路（図示せず）も使用可能である。かかる外部メモリ回路の実施形態および使用はデータ処理技術においては既知であり、当業者には明白なはずである。この実施形態では、各ファジィ入力は、以下の形式で内部メモリ３２に記憶される。
【００３８】
【表１】
0003992771.tif 000002
表１に示すように、２つのシステム入力、温度および圧力に対して、「ファジィ入力」として示されているメンバシップ度が、各システム入力の各メンバシップ集合に与えられている。図１を参照して既に説明したように、第１システム入力は、華氏５８度の温度である。華氏５８度の温度はファジィ化されて、寒いおよび暑いメンバシップ集合では＄００のメンバシップ度、涼しいメンバシップ集合では＄３３のメンバシップ度、および暖かいメンバシップ集合では＄ＣＣのメンバシップ度を有することとなった。アレイ１に示すように、ＴcoldおよびＴhot 変数双方の値は＄００であり、これは、第１システム入力がこれら２つのメンバシップ集合のいずれでもないことを示す。しかしながら、第１システム入力は、Ｔcoolの値が＄３３、Ｔwarmの値が＄ＣＣである。したがって、第１入力は、涼しいメンバシップ集合においては＄３３のメンバシップ度、暖かいメンバシップ集合においては＄ＣＣのメンバシップ度を有する。
【００３９】
同様に、第２入力がファジィ化されて、軽いおよび重い圧力メンバシップ集合双方において、＄００のメンバシップ度を示している。したがって、Ｐlight およびＰheavy 変数双方の値は＄００であり、第２入力はこれら２つのメンバシップ集合のいずれにも含まれていないことを示す。しかしながら、第２入力は、中間メンバシップ集合においては＄ＦＦのメンバシップ度を有する。したがって、Ｐmedium変数は＄ＦＦの値を有する。
【００４０】
ファジィ入力と同様、評価対象の各ルール（ルール１ないしルール３）も、内部メモリ３２におけるルール・アレイに記憶されている。かかるルール・アレイの１つを、図５に可変フォーマットで示す。各ルールに対して、ファジィ入力およびファジィ出力双方のアドレス位置が与えられている。ファジィ入力およびファジィ出力のアドレスは、図５の形態で記憶され、アレイ１に先に示したもののような、データ値テーブルを参照する。ファジィ入力と同様に、ファジィ出力に対応するデータ値テーブルもアレイの中に与えられている。これについては、ここでは詳細に示さない。
【００４１】
ルール・アレイの先頭は、データ処理システム１０のユーザによって指定される所定のアドレスに位置付けられる。ここで説明し図５に示す例では、この所定のアドレスは＄Ｅ０００に等しく、ＲＥＶ命令の実行に先だって、インデックス・レジスタに記憶される。ルール１に対するファジィ入力の第１入力のアドレスは、１６進アドレス＄Ｅ０００、即ち、ルール・ベースの先頭に位置付けられる。この例では、Ｔcoolがルール１の最初のファジィ入力であり、＄１００１のアドレスがルール・アレイのアドレス＄Ｅ０００に記憶される。Ｐlight 値はルール１の第２ファジィ入力であるので、＄１００４のアドレスは、ルール・アレイのアドレス＄Ｅ００２に記憶される。
【００４２】
可変フォーマット・ルール・ベースに関して、ファジィ出力からファジィ入力を分離するためには、＄ＦＦＦＥを有するバッファを、ルール・アレイのアドレス＄Ｅ００４に記憶する。続いて、ルール１のファジィ出力を、＄ＦＦＦＥの値を有するバッファによって、ルール２のファジィ入力から分離する。このフォーマットでは、あらゆる数のファジィ入力でも、＄ＦＦＦＥの値を有するバッファによって、あらゆる数のファジィ出力から分離し、複数のルールのファジィ入力および出力の各々をメモリに記憶するまで、これを繰り返す。この時点で、特殊なバッファ値がルール・ベースの終端を指示する。ここに記載する例では、ルール・ベースの終端は＄ＦＦＦＦの値によって示される。同じバッファ値を用いて各ルールのファジィ出力からファジィ入力を分離するが、データ処理システム１０の設計者はあらゆる数のバッファでも使用することができる。
【００４３】
このような順序で、各ルールに対するファジィ入力および出力の各々を配置すれば、バッファ・アドレスを、各ファジィ入力および出力部分間の分割の指示子として用いることにより、各ルールを連続的に評価することができる。したがって、ルールは、特定数のファジィ入力およびファジィ出力（作用）を有する、固定フォーマットに従う必要は全くない。これによって、ファジィ・システムにルールを与える際の柔軟性を高めることが可能となる。ルール１、ルール２、およびルール３［（１）、（２）、および（３）］に見られるように、ファジィ入力および対応する作用の数は、本発明のこの実施形態では、ルール毎に変えることができる。
【００４４】
対照的に、次に図７を示すと、２入力および１出力の固定フォ−マットのメモリ・ル−ル・アレイが示されている。固定フォ−マットは、あらゆる所定数のファジィ入力およびファジィ出力アドレス・ポインタを用いて実施可能であることに注意されたい。この場合、２つの入力７０１，７０２が実施され、次に１つの出力７０３、続いて２つの入力７０４，７０５というように続き、この固定フォーマット・ルール・ベースは、図５に示した可変フォーマット・ルール・ベースにおいて実施した場合と同様に、終端マーク７０６で終了している。特定の固定フォーマットでルール・ベースを維持する場合、実行およびメモリが効率的となることに加えて、更に利点がある。まず、全てのルール・ベースを固定フォーマットで表現することができる。第２に、固定フォーマット・ルール・ベースの制御面を可視化することができる。例えば、２入力１出力ルール・ベースは、三次元のプロットで可視化することができる。第３に、複雑なシステムを２入力１出力のサブシステムに分解し、ルール・マトリクスの組み合わせによる激増を回避することができる。
【００４５】
プログラマ、ユーザ、またはシステムに、固定または可変フォーマット・ルール・ベース間で選択を行うオプションを与えるために、スイッチ機構を組み込み、図３に示す条件コード・レジスタ６０内に実施されている条件コード・ビット（Ｚビット）の状態に基づくマイクロコードとして動作させる。本発明の一実施形態では、Ｚビット（Ｚ（ゼロ）状態コード・ビット）は、ルール評価命令の実行の間その通常の目的のためにには使用しないので、このＺビットを用いて、マイクロコードに、固定または可変フォーマット・ルール・ベースの使用を知らせる。
【００４６】
次に図８を参照すると、このスイッチ機構および固定フォーマット・ルール・ベースの実施形態が、フロー・チャートで示されている。プロセスはステップ８０１から開始し、ここでＲＥＶ命令がデコードされる。次に、ステップ８０２において、可変フォーマット・ルール・ベースまたは固定フォーマット・ルール・ベースのどちらかを実施することが予め決定されているか否かについて、判定を行う。これは、Ｚビット（ＺＣＣＲ）が０または１のどちらに等しいかを判定するマイクロコード分岐命令によって行われる。Ｚビットは、状態コード・レジスタ６０の中に配置することができる。
【００４７】
このＺビットが０に等しい場合、プロセスはステップ８０３に進み、図６に示すフロー・チャートにしたがって、可変フォーマット・ルール・ベースを用いて、ファジィ理論処理を実行する。
【００４８】
Ｚビットが１に等しい場合、プロセスはステップ８０４ないし８１０（後に詳細に論ずる）に進み、図７に示すような固定フォーマット・ルール・ベースを用いてファジィ理論処理を実施する。ステップ８０４ないし８１０は、２入力１出力構造の固定フォーマットを示す。しかしながら、先に注記したように、固定フォーマットは、あらゆる所定数のファジィ入力およびファジィ出力を有するようにもプログラム可能である。
【００４９】
ステップ８０４ないし８１０の処理は図６に示したこれらのステップと同様であるが、種々の＄ＦＦＦＥバッファを検出したか否かを評価する必要がない点で異なる。
【００５０】
ＲＥＶ命令の実行を開始するために、ルールの各ファジィ入力および出力を、図５および図７に示した所定のフォーマットの一方を有するルール・アレイとして、メモリ内に記憶する。加えて、このルール・アレイの開始アドレスを実行部１４のインデックス・レジスタに記憶し、ファジィ出力の各々に１６進数＄００を割り当てる。最後に、可変フォーマット・ルール・ベースの処理の準備を行うために、アキュミュレータ５８で＄ＦＦに初期化して、ＺCCR ＝０（可変フォーマット・ルール・ベース）およびＶCCR ＝０（図６のステップ６０９，６１３の適正な処理に必要な事前条件）とする。あるいは、固定フォーマット・ルール・ベースの処理の準備を行うために、アキュミュレータ５８を＄００で初期化して、ＺCCR ＝１（固定フォーマット・ルール・ベース）とする場合もある。続いて、図６および図８に示したルール・ベース・フォーマットの一方にしたがって、ＲＥＶ命令の実行を行う。これらのフロー・チャートは、可変または固定フォーマット・ルール・ベースに対するＲＥＶ命令の実行の間に行われる各機能の概要を端的に表わすものである。各機能のより詳細な説明は、以下に続くＲＥＶ命令の実行例の間で行う。
【００５１】
図８に示すように、ＲＥＶ命令の実行における第１ステップは、ＲＥＶ命令をデコードするときに実行される。
【００５２】
プロセスがステップ８０３に進むと、図６のプロセスが実行される（ステップ６０１）。インデックス・レジスタに記憶されているアドレス、ここでは「Ｘ」と呼ぶが、これを用いて第１ルール・オペランドを取り込む（ステップ６０２）。次に、アドレスＸを増分し、次のアドレス位置（Ｘ＋２）を指し示す（ステップ６０３）。
【００５３】
次に、第１ルール・オペランドの値を検査し、この値が１６進の＄ＦＦＦＥに等しいか否かを判定する（ステップ６０４）。この値が１６進のＦＦＦＥに等しい場合、ＶCCR 信号を切り換えてバッファ値を引き出したことを示す（ステップ６０５）。切り換えた後のＶCCR 信号が０に等しい場合（ステップ６０６）、ルールの第１ファジィ入力を評価し、アキュミュレータ５８を１６進数の＄ＦＦに初期化しなくてはならない（ステップ６０７）。その他の場合、アキュムレータ５８の値を変更しない。
【００５４】
第１ルール・オペランドの値が＄ＦＦＦＥに等しくない場合（ステップ６０４）、この値を検査して、１６進の＄ＦＦＦＦに等しいか否かを判定する（ステップ６０８）。値が１６進の＄ＦＦＦＦに等しい場合、ルール・アレイの終端にアクセスされていることになるので、ＲＥＶ命令を終了する（ステップ６０９）。しかしながら、第１ルール・オペランドの値が＄ＦＦＦＦに等しくない場合、第１ルール・オペランドの値を用いて、内部メモリ３２からファジィ入力または出力値にアクセスする（ステップ６１０）。次に、アキュミュレータ５８の内容を、そのファジィ入力値または出力値から減算して、符号付き結果を得る（ステップ６１１）。この結果の符号は、Ｎ信号の値によって示される。
【００５５】
Ｎ信号が０に等しい場合（ステップ６１２）、アキュミュレータ５８およびデータ４０双方の内容を交換しなければならず、インデックス・レジスタ内に記憶されているアドレスは、次のルール・オペランドにアクセスする（ステップ６０２）。しかしながら、Ｎ信号が１に等しいとき、ＶCCR 信号を検査する（ステップ６１３）。
【００５６】
ＶCCR 信号が０に等しい場合、アキュミュレータ５８の内容を、第１ルール・オペランドによってアクセスされたファジィ入力値の値で置き換えなければならない（ステップ６１５）。（ステップ６１４は、ＶCCR をアサートし、ファジィ出力の評価を指示するときのプロセスの部分を表わし、これについては以下でより詳細に説明する。）したがって、現在評価対象となっているルールのファジィ出力に割り当てられるファジィ強度を判定する際に、最少の機能の使用で済む。次に、インデックス・レジスタに記憶されているアドレスを用いて、次のルール・オペランドにアクセスする（ステップ６０２）。
【００５７】
図６に示すフロー・チャートは、可変フォーマット・ルール・ベースを実施するときの、データ処理システム１０におけるＲＥＶ命令の実行について、その概要を示すものである。先に注記したように、そして以下に詳しく述べるが、図８に示すフロー・チャートによる固定フォーマット・ルール・ベースの実施は、可変フォーマット・ルール・ベースの実施と類似しており、主要な相違の１つは、ファジィ入力および出力を分離するために実施されるバッファが不要なことである。
【００５８】
これより、本発明のより詳細な例を取り上げることにする。
【００５９】
ＲＥＶ命令の基本的な処理は以下の通りである。メモリから各前提値を引き出し、最少前提値を判定する。次いで、各結果値を引き出し、ルール強度値と比較し、既存の結果値がルール強度値よりも小さいときにのみ、メモリ内で当該ルール強度値と交換する。
【００６０】
先に述べたように、ＲＥＶ命令の実行に先立ち、データ処理システム１０のユーザによって、複数のファジィ入力が内部メモリ３２内の第１所定メモリ位置に記憶される。固定フォーマットまたは可変フォーマット・ルール・ベースのいずれを実施する場合でも、これは行われる。アレイ１にしたがって、複数のファジィ入力を記憶する。加えて、図５および図７に示すフォーマットの一方で、複数のファジィ入力を評価するための各ルールも、内部メモリ３２の第２所定メモリ位置に記憶する。ここでは詳しく示さないが、ファジィ出力に対応する各ルール強度値も、アレイ１と同様のアレイの形式で、内部メモリ３２の開始アドレス＄２０００から記憶する。データ処理システム１０のユーザは、ＲＥＶ命令の実行に先立って、ファジィ出力の値全てに、１６進数の＄００を割り当てる。加えて、データ処理システム１０のユーザは、ＲＥＶ命令の実行に先立って、アキュミュレータ５８を、可変ルール・ベースに対しては１６進数＄ＦＦに、固定ルール・ベースに対しては＄ＦＦに初期化する。既に述べたが、アキュミュレータ５８を＄ＦＦに初期化して可変フォーマット・ルール・ベースを示すとき、ＶCCR 信号を二ゲートし、かつＺCCR 信号も二ゲートする。固定ルール・ベースを使用するとき、アキュミュレータ５８を＄００に初期化して、ＺCCR 信号をアサートする（ＶCCR の値は、固定ルール・ベースにとっては「無関係」("don't care")である）。
【００６１】
処理の間、ユーザは、外部メモリまたは内部メモリ３２のいずれかに記憶されているソフトウエア・プログラムによって、ＲＥＶ命令をデータ処理システム１０に供給することができる。データ処理システム１０の外部供給源からＲＥＶ命令を供給する場合、ＲＥＶ命令は、外部データ・バスを通じて、バス・インターフェース３０に入力されることになる。続いて、外部バス・インターフェース３０は、内部データ・バス３４を通じて、ＲＥＶ命令をＣＰＵ１２に供給する。ＲＥＶ命令が内部メモリ３２内のソフトウエア・プログラムによって供給される場合、内部データ・バス３４によって、ＲＥＶ命令はＣＰＵ１２に供給される。ＣＰＵ１２において、実行部１４は、バス制御論理回路１６、制御部２０、およびシーケンサ２２の各々から受信した制御信号に応答して、ＲＥＶ命令を命令デコード論理回路１８に供給する。加えて、ＣＰＵ１２の各素子は、タイミング制御バス３８を通じてタイミング制御信号を受信する。かかるタイミング制御信号の送出および使用はデータ処理技術においては既知であり、したがって、ここでは詳細に論じない。
【００６２】
命令デコード論理回路１８はＲＥＶ命令をデコードして、ＲＥＶ命令の適正な実行に必要な複数の制御および情報信号を供給する。ＲＥＶ命令の受信およびデコード時に、実行部１４は、内部メモリ３２に記憶されている複数のファジィ入力を評価するために必要なステップを開始する。図２におけるＣＰＵ１２の制御部２０およびシーケンサ２２は、ファジィ入力およびファジィ出力双方のアドレスへポインタを転送するために必要な一連のシーケンス制御信号を、一括して、内部メモリ３２から実行部１４に供給する。  ＲＥＶ命令の実行を開始するために、実行部１４内のインデックス・レジスタ（図示せず）は、ル−ル・ベ−スの先頭へのポインタを与える。デ−タ処理システムにおけるインデックス・レジスタおよびそれらの使用は、デ−タ処理技術では既知であるので、ここでは詳細に説明しない。このポインタは、涼しい温度のメンバシップ集合における第１入力のメンバシップ度が記憶されている、内部メモリ３２における、ルール・ベースの開始アドレスを示す。このアドレスは、ルール１の最初のファジィ入力値が記憶されているアドレスを示す。図５ないし図７に関してここで説明する例では、１６進アドレス＄１００１即ち第１入力ポインタを、内部メモリ３２内のアドレス＄Ｅ０００に記憶する。
【００６３】
図６に示す可変フォーマット・ルール・ベースの場合、ルール１の最初のファジィ入力値のアドレスがルール・アレイからアクセスされた場合、このアドレスは、外部情報バス４１を通じて、データ・バッファ４０に供給される。続いて、データ・バッファ４０は、このアドレス値を比較器７２に供給し、ここで、アドレス値を１６進数の＄ＦＦＦＥと比較する。アドレス値が＄ＦＦＦＥに等しい場合、バッファ・アドレスが差し示され、ＶCCR ビットを切り換えなければならない。従来、ＶCCR ビットは、符号付き算術演算においてオーバーフロー・エラーを示すために用いられている。しかしながら、本発明の実施形態では、条件コード・レジスタ内のオーバーフロービット（ＶCCR ）は、アクセスされたアドレスが、ファジィ入力アドレス、バッファ・アドレス、またはファジィ出力アドレスのどれに対応するのかを示すためにセットされる。第１ルールのファジィ入力に対応するアドレスがアクセスされる場合、ＶCCR ビットは二ゲートされたままである。アクセスされるアドレスがバッファ値である場合、ＶCCR ビットを切り換える。ここで記載する例では、バッファ値は１６進数の＄ＦＦＦＥに等しい。加えて、ファジィ出力のアドレスがアクセスされる場合、ＶCCR ビットはアサートされたままである。
【００６４】
アドレス値が＄ＦＦＦＥに等しい場合、比較器７２はトグル信号をアサートする。条件コード論理回路４７はこのトグル信号を受信し、続いて、アサートされた条件コード信号を条件コード・レジスタ６０に供給する。一方、条件コード・レジスタ６０は、これに対応して、ＶCCR 信号をアサートまたは二ゲートする。ここに記載する例では、アドレス値＄１００１、即ち、ルール・アレイ内のルール１の最初のファジィ入力値が、アドレス＄Ｅ０００からアクセスされる。＄１００１は＄ＦＦＦＥと等しくないので、比較器７２はトグル信号をアサートしない。したがって、条件コード論理回路４７によって供給された条件コード信号は、条件コード・レジスタ６０をイネーブルしないので、ＶCCR 信号を切り換えない。
【００６５】
次のステップ（ステップ６０８）において、比較器７２はルール１の最初のファジィ入力のアドレス値を１６進数の＄ＦＦＦＦと比較する。アドレス値が＄ＦＦＦＦと等しい場合、ルール・アレイ・アドレスの終端が指し示されたことになり、ＲＥＶ命令の実行を終了する（ステップ６０９）。
【００６６】
ここで、図５および図６による可変フォーマット・ルール・ベースの実施形態を参照して、次の検討に進むことにする。可変フォーマット・ルール・ベースを用いたファジィ理論システムの実施形態の検討の後に、図７および図８に示す固定フォーマット・ルール・ベースの実施形態についての検討を行う。
【００６７】
内部メモリ３２からアドレス＄１００１にアクセスした場合、涼しい温度メンバシップ集合における第１システム入力のメンバシップ度が与えられる。アレイ１に示すように、このメンバシップ度は１６進数の＄３３に等しい。内部メモリ３２は、内部データ・バス３４を通じて、この情報を実行部１４のデータ・バッファ４０に供給する。外部情報バス４１は、内部アドレスバス３６および内部データ・バス３４の双方を通じて転送された情報を供給する。
【００６８】
第１ファジィ入力（＄３３）は、後続の処理のために、データ・バッファ４０に記憶される。ルール１の前提の最少メンバシップ度を判定するために、アキュミュレータ５８の現在の内容（＄ＦＦ）を、第１ファジィ入力（＄３３）から減算する。この機能を行うために、アキュミュレータ５８の内容を情報バスＡ６６に供給し、データ・バッファ４０の内容を情報バスＢ６４に供給する。加えて、マイクロＲＯＭ制御バス６５を通じて、複数の制御およびタイミング信号を実行部１４に供給する。これら複数の制御およびタイミング信号は、図２の命令デコード論理回路１８によるＲＥＶ命令のデコード処理の結果として得られるものである。
【００６９】
実行部１４において、マイクロＲＯＭ制御バス６５を通じて転送されたタイミング信号に応じて決定された時点で、第１ファジィ入力がＡ−入力マルチプレクサ５０に供給され、アキュミュレータ５８の内容がＢ−入力マルチプレクサ５６に供給される。Ｂ−入力制御回路５４は、Ｂ−入力マルチプレクサ５６の動作を制御するための「制御Ｂ」信号を供給する。この例では、制御Ｂ信号によって、Ｂ−入力マルチプレクサ４６は未変更の第１ファジィ入力値をＡＬＵ５２に渡すことが可能となる。同様に、Ａ−入力制御回路５４は、「制御Ａ」信号をＡ−入力マルチプレクサ５０に供給する。制御Ａ信号によって、Ａ−入力マルチプレクサ５０はアキュミュレータ５８の内容を二ゲートし、ＡＬＵ５２における第１ファジィ入力値からその内容を減算することが可能となる。
【００７０】
第１ファジィ入力値および二ゲートされたアキュミュレータの内容値を受信すると、ＡＬＵ５２はアキュミュレータ５８の内容（＄ＦＦ）を第１ファジィ入力（＄３３）から減算し、結果を得る。この結果は負数（＄３３−＄ＦＦ＝−＄ＣＣ）であり、Ｎ信号がアサートされる。アサートされたＮ信号は結果バス１２０を通じて転送される。結果が正であった場合、Ｎフラグはセットされることなく、二ゲートされたＮ信号が結果バス１２０を通じて供給されたであろう。減算処理の数値結果は不要であるので、後続の算術演算の間に上書きされる。
【００７１】
レジスタ交換論理回路４６は、ルールの各ファジィ入力において最少のメンバシップ度をユーザに判定させ、その最少メンバシップ度を、ルールによって指定された各作用に対するルール強度として使用させる。処理の間、レジスタ交換論理回路４６は、ＶCCR およびＮ信号の値によっては、アキュミュレータ５８およびデータ・バッファ４０の内容を切り換えることも、切り換えないこともあり得る。
【００７２】
レジスタ交換論理回路４６は、ＶCCR 信号、Ｎ信号、およびタイミング制御信号を受信し、アキュミュレータ５８およびデータ・バッファ４０の内容の切り換えを制御する。先に述べたように、ファジィ入力値が内部メモリ３２から実行部１４に供給されるとき、ＶCCR 信号は二ゲートされたままである。加えて、ＡＬＵ５２はＮ信号を供給して、アキュミュレータ５８の内容をデータ・バッファ４０の内容から減算した結果が正かあるいは負かを示す。アキュミュレータ５８の内容がデータ・バッファ４０に記憶されている第１ファジィ入力よりも大きい場合、Ｎ信号をアサートし、負の結果を示す。逆に、第１ファジィ入力がアキュミュレータ５８の内容よりも小さいとき、Ｎ信号は二ゲートされたままであり、正の結果を示す。タイミング回路２８によって決定された適切な時点で、タイミング制御信号がアサートされてレジスタ交換論理回路４６がイネーブルされ、アキュミュレータ５８の内容のデータ・バッファ４０への転送、データ・バッファ４０の内容のアキュミュレータ５８への転送、またはアキュミュレータ５８およびデータ・バッファ４０双方の同一内容の保持のいずれかを行う。
【００７３】
ルール１の「ｉｆ」部分の評価の間、アキュミュレータ５８の内容を第１ファジィ入力から減算すると、負の結果が発生する（＄３３−＄ＦＦ＝−＄ＣＣ）。したがって、Ｎ信号はアサートされたままである。加えて、ＶCCR 信号は二ゲートされて、ファジィ入力が内部メモリ３２から引き出されていることを示す。タイミング制御信号がアサートされると、ＡＮＤゲート６２の出力が０に等しくなり、イネーブルＡ信号はアサートされない。しかしながら、反転器６８の出力がアサートされ、ＡＮＤゲート７０がイネーブルされて、イネーブルＢ信号をアサートする。イネーブルＢ信号がアサートされると、セレクタ４４がイネーブルされ、データ・バッファ４０からアキュミュレータ５８にデータを転送する。この時点で、最少メンバシップ度は＄３３であり、これがアキュミュレータ５８に記憶される。
【００７４】
同様に、ルール１の第２ファジィ入力がデータ・バッファ４０に供給される。第２ファジィ入力は、第２システム入力が軽い圧力（Ｐlight ）メンバシップ集合において有するメンバシップ度である。この例では、メンバシップ度は１６進数の＄００を有する。ここでも、内部メモリ３２は、外部情報バス４１を通じて、第２ファジィ入力のメンバシップ度を実行部１４のデータ・バッファ４０に供給する。
【００７５】
最少のメンバシップ度を判定するために、第１ファジィ入力を第２ファジィ入力から減算する。実行部１４において、マイクロＲＯＭ制御バス６５を通じて転送されたタイミング信号に応じて決定された時点で、第１ファジィ入力がＡ−入力マルチプレクサ５０に供給され、第２ファジィ入力がＢ−入力マルチプレクサ５６に供給される。Ｂ−入力制御回路５４は、Ｂ−入力マルチプレクサ５６の動作を制御するための「制御Ｂ」信号を供給する。この例では、制御Ｂ信号によって、Ｂ−入力マルチプレクサ４６は未変更の第２ファジィ値をＡＬＵ５２に渡すことが可能となる。同様に、Ａ−入力制御回路５４は、「制御Ａ」信号をＡ−入力マルチプレクサ５０に供給する。制御Ａ信号によって、Ａ−入力マルチプレクサ５０は第１ファジィ入力を二ゲートし、ＡＬＵ５２においてそれを第２ファジィ入力から減算することが可能となる。
【００７６】
第２ファジィ入力値および二ゲートされた第１ファジィ入力値を受信すると、ＡＬＵ５２は、この第１ファジィ入力値を第２ファジィ入力値から減算し、再び負の結果を得る。したがって、Ｎ信号がアサートされる。加えて、ＶCCR 信号が二ゲートされ、ファジィ入力が内部メモリ３２から引き出されていることを示す。
【００７７】
タイミング制御信号がアサートされると、ＡＮＤゲート６２の出力は０に等しくなり、イネーブルＡ信号はアサートされない。この第１の例では、ＡＮＤゲート７０はイネーブルＢ信号をアサートしない。イネーブルＢ信号がアサートされると、セレクタ４４がイネーブルされ、データ・バッファ４０からアキュミュレータ５８にデータが転送される。したがって、最少メンバシップ度は、この時点では、＄００であり、これはアキュミュレータ５８に記憶される。
【００７８】
ルール１に対するファジィ入力のメモリ位置の最後において、バッファ・アドレスが比較器７２によって認識される。比較器７２はアサートされたトグル信号を条件コード論理回路４７に供給する。すると、条件コード論理回路４７は条件コード信号を条件コード・レジスタ６０に供給することにより、条件コード・レジスタ６０内のＶビットを切り換え、アサートされたＶCCR 信号を供給する。既に説明したように、ＶCCR 信号がアサートされると、ルール１のファジィ出力のアドレスが、内部メモリ３２から引き出される次のアドレスであることを示す。ここに記載する例では、ルール１のファジィ出力のアドレスが内部メモリ３２から引き出されるとき、ＲＥＶ命令の「ｔｈｅｎ」部分の実行の間に、ＶCCR 信号はアサートされる。
【００７９】
複数のファジィ出力の１つが選択されると、最大処理(maximum operation) が行われる。したがって、ＲＥｖ命令の「ｔｈｅｎ」部分について、最大のル−ル強度が各ファジィ出力に割り当てられる。先に説明したように、最大ル−ル強度は、各ファジィ出力に割り当てられなければならない。したがって、ＲＥＶ命令の「ｉｆ」部分の実行の結果としてアキュミュレ−タ５８に記憶されるメンバシップ度の最小値が、内部メモリ３２のファジィ出力アドレスに現在記憶されているル−ル強度値と比較される。現在のル−ル強度値は、ＲＥＶ命令の「ｔｈｅｎ」部分の実行の間、アキュミュレータ５８に記憶されたままでいる。最大ルール強度値は常に内部メモリ３２に記憶されている。先に論じたように、メンバシップ度の最小値はＲＥＶ命令の第１部分で計算され、ここでは、各ファジィ入力のメンバシップ度を比較して最小値を判定する。
【００８０】
ファジィ入力の最小値は、アキュミュレータ５８に残る。実行部１４におけるインデックス・レジスタ（図示せず）はポインタを増分し、第１ファジィ出力のアドレスを指し示す。この例では、ポインタをアドレス＄Ｅ００６に増分する。アドレス＄Ｅ００６、即ち、第１ファジィ出力のアドレスには、１６進のアドレス＄２０００が得られる。データ処理システム１０のユーザは、ＲＥＶ命令の実行に先立って、ファジィ出力アレイに記憶されている全データ値に、１６進数の＄００を割り当てるので、アドレス＄２０００がアクセスされたときに、内部メモリは１６進数の＄００を供給する。次いで、ファジィ出力の値（＄００）が、外部情報バス４１を通じて、データ・バッファ４０に供給され、後続の処理のために、ここにファジィ出力値が記憶される。
【００８１】
最大ルール強度値を判定するために、アキュミュレータ５８の内容をデータ・バッファ４０から減算して、どちらの値が大きいかを判定する。言い換えれば、ルール評価ステップの「ｉｆ」部分の間に計算したメンバシップ度の最小値を、ルール１の第１ファジィ出力のアドレス位置に現在記憶されているルール強度値から減算する。この機能を行うために、アキュミュレータ５８の内容を情報バスＡ６６に供給し、データ・バッファ４０の内容を情報バスＢ６４に供給する。加えて、マイクロＲＯＭ制御バス６５を通じて、複数の制御およびタイミング信号を実行部１４に供給する。これら複数の制御およびタイミング信号は、図２の命令デコード論理回路１８によるＲＥＶ命令のデコード処理の結果として得られるものである。
【００８２】
実行部１４では、マイクロＲＯＭ制御バス６５を通じて転送されたタイミング信号に応じて決定された時点において、アキュミュレータ５８に記憶されているメンバシップ度の最小値がＡ−入力マルチプレクサ５０に供給され、データ・バッファ４０に記憶されている現在のファジィ出力値がＢ−入力マルチプレクサ５６に供給される。 Ｂ−入力制御回路５４は、Ｂ−入力マルチプレクサ５６の動作を制御するための制御Ｂ信号を供給する。この例では、制御Ｂ信号によって、Ｂ−入力マルチプレクサは、未変更のファジィ出力値を内部メモリ３２からＡＬＵ５２に渡すことが可能となる。同様に、Ａ−入力制御回路４８は、制御Ａ信号をＡ−入力マルチプレクサ４０に供給する。制御Ａ信号によって、Ａ−入力マルチプレクサ５０は、ＡＬＵ５２の後続の減算処理のために、アキュミュレータ５８の内容を二ゲートすることが可能となる。
【００８３】
Ａ−入力マルチプレクサ５０およびＢ−入力マルチプレクサ５６双方からの値を受信すると、ＡＬＵ５２は、アキュミュレータ５８に記憶されているメンバシップ度の最小値を、ルール１の第１ファジィ出力に対応する所定のメモリ位置に記憶されているファジィ出力値から減算する。ここに記載する例では、アキュミュレータ５８に記憶されている値は、１６進数の＄００を有する。ルール１の各ファジィ出力には１６進数の＄００が割り当てられているので、ＡＬＵ５２によって与えられる結果は＄００である。答えは負数ではないので、Ｎ信号は二ゲートされたままであり、続いてこれがレジスタ交換論理回路４６に供給される。
【００８４】
先に論じたように、条件コード・レジスタ６０は、ＶCCR 信号をレジスタ交換論理回路４６に供給する。加えて、タイミング制御信号が外部供給源、即ち、タイミング回路２８からレジスタ交換論理回路４６に供給される。ＶCCR 、Ｎ、およびタイミング信号の各々を受信すると、レジスタ交換論理回路４６は、イネーブルＡ信号およびイネーブルＢ信号の双方を二ゲートする。したがって、セレクタ４２，４４は両方ともイネーブルされないので、データ・バッファ４０とアキュミュレータ５８との間のデータ転送は許されない。したがって、内部メモリ３２内の第１ファジィ出力のルール強度は変更されず、引続き１６進数の＄００を有することになる。
【００８５】
同様に、ルール１の第２ファジィ出力のルール強度の判定の間、アキュミュレータ５８に記憶されている値、および内部メモリ３２から引き出されたルール強度値は双方共、１６進数の＄００を有する。したがって、ＡＬＵ５２はここでもＮ信号を二ゲートし、続いてレジスタ交換論理回路４６がイネーブルされ、イネーブルＡ信号およびイネーブルＢ信号を双方とも二ゲートする。したがって、ルール１の評価の後、指定されたファジィ出力、作用１および作用２の各々のルール強度は、１６進数の＄００を有する。
【００８６】
再び、ルール１のファジィ出力のメモリ位置の終端において、バッファ・アドレスが比較器７２によって認識される。比較器７２は、アサートされたトグル信号を条件コード論理回路４７に供給する。条件コード論理回路４７は、条件コード信号を条件コード・レジスタ６０に供給することにより、条件コード・レジスタ６０内のＶビットを切り換え、二ゲートされたＶCCR 信号を供給する。先に説明したように、ＶCCR 信号が二ゲートされると、ルール２のファジィ入力のアドレスが、内部メモリ３２から引き出される次のアドレスであることを示す。ここに記載する例では、ルール２のファジィ出力のアドレスを内部メモリ３２から引き出すとき、ＲＥＶ命令の「ｉｆ」部分の実行の間に、ＶCCR 信号は二ゲートされる。ＶCCR 信号が二ゲートされると、アキュミュレータ５８の内容は再び＄ＦＦの値に初期化される。
【００８７】
ＲＥＶ命令の実行を継続するには、ルール２の評価が必要となる。先に説明したように、制御部２０は、内部メモリ３２から実行部１４にルール２の各ファジィ入力を転送するために必要な、一連のシーケンス制御信号を供給する。ルール２の評価の間、内部メモリ３２は、暖かい温度メンバシップ集合の第１システム入力のメンバシップ度が記憶されている、第１アドレスを与える。ここに記載する例では、このアドレスは、内部メモリ３２における１６進アドレス＄１００２を指し示す。内部メモリ３２からアドレス＄１００２がアクセスされたとき、１６進数の＄ＣＣを有するメンバシップ度が、内部データ・バス３４を通じて、データ・バッファ４０に供給される。
【００８８】
ルール１の評価の間と同様に、ルール２の第１ファジィ入力は、アキュミュレータ５８の初期化された内容と比較される。ここでも、第２バッファ・アドレスが認識されたときに、アキュミュレータ５８は１６進数の＄ＦＦに初期化される。したがって、既に説明した方法にしたがって最小値が検出され、＄ＣＣがアキュミュレータ５８に記憶される。
【００８９】
同様に、ルール２の第２ファジィ入力がデータ・バッファ４０に供給される。第２ファジィ入力は、第２システム入力が中間圧力のメンバシップ集合において有するメンバシップ度である。この例では、このメンバシップ度は１６進数の＄ＦＦを有する。
【００９０】
最少のメンバシップ度を判定するために、ＡＬＵ５２は第２ファジィ入力から第１ファジィ入力を減算し、正の＄３３という結果を得る。この結果は正であるので、Ｎフラグはクリアされ、二ゲートされたＮ信号が結果バス１２０を通じて供給される。
【００９１】
続いて、レジスタ交換論理回路４６が、ＶCCR 信号、Ｎ信号、およびタイミング制御信号を受信し、アキュミュレータ５８およびデータ・バッファ４０の内容の切り換えを制御する。レジスタ交換論理回路４６は、イネーブルＡ信号およびイネーブルＢ信号の双方を二ゲートする。最少のメンバシップ度、即ち、１６進数の＄ＣＣは、アキュミュレータ５８に記憶されたままである。
【００９２】
ルール２に対するファジィ入力のメモリ位置の終端において、バッファ・アドレスが比較器７２によって認識される。比較器７２は、アサートされたトグル信号を状態コード論理回路４７に供給する。すると、条件コード論理回路４７は、条件コード信号を条件コード・レジスタ６０に供給することにより、条件コード・レジスタ６０内のＶビットを切り換えて、アサートされたＶCCR 信号を供給する。先に説明したように、ＶCCR 信号が二ゲートされると、ルール２のファジィ出力のアドレスが、内部メモリ３２から引き出される次のアドレスであることを示す。
【００９３】
ルール２のファジィ入力の最小値は、アキュミュレータ５８内に残る。次に、現在評価中のルールのファジィ出力が、ルール・アレイから供給される。実行部１４内のインデックス・レジスタはポインタを増分し、第１ファジィ出力のアドレスを指し示す。この例では、ポインタをアドレス＄Ｅ０１２に増分する。アドレス＄Ｅ０１２において、第１ファジィ出力のアドレス、即ち、１６進アドレス＄２００２が与えられる。データ処理システム１０のユーザは、ＲＥＶ命令の実行に先立って、ファジィ出力アレイ内に記憶されている全データ値に１６進数の＄００を割り当てているので、内部メモリは、アドレス＄２００２がアクセスされたときに、１６進数の＄００を与える。このファジィ出力の値（＄００）は、次に、外部情報バス４１を通じてデータバッファ４０に供給され、ここでファジィ出力値は、後続の処理のために記憶される。
【００９４】
次に、ＡＬＵ５２は、アキュミュレータ５８に記憶されている１６進数の＄ＣＣを、データ・バッファ４０に記憶されている１６進数の＄００から減算する。その結果は負の＄ＣＣとなり、Ｎ信号がアサートされる。Ｎ、ＶCCR 、およびタイミング信号の各々がレジスタ交換論理回路４６に供給されると、レジスタ交換論理回路４６はイネーブルＡ信号をアサートし、イネーブルＢ信号を二ゲートする。
【００９５】
イネーブルＡ信号がアサートされると、セレクタ４２がイネーブルされ、アキュミュレータ５８の内容をデータ・バッファ４０に追いやる。データ・バッファ４０は一時的に、アキュミュレータ５８によって供給された以前のメンバシップ度の最小値（＄ＣＣ）を、最少ルール強度値として記憶する。加えて、データ・バッファ４０は、最大ルール強度値を、ルール２の第１ファジィ出力のアドレス位置（＄２００２）に転送する。したがって、＄ＣＣの値は、ＲＥＶ命令を実行中のこの時点では、内部メモリ３２のアドレス＄２００２における作用３の現ルール強度値となる。
【００９６】
再び、ルール２のファジィ出力のメモリ位置の終端において、バッファ・アドレスが比較器７２によって認識される。比較器７２は、アサートされたトグル信号を条件コード論理回路４７に供給する。条件コード論理回路４７は、条件コード信号を条件コード・レジスタ６０に供給することにより、条件コード・レジスタ６０内のＶビットを切り換え、二ゲートされたＶCCR 信号を供給する。先に説明したように、ＶCCR 信号が二ゲートされると、ルール３のファジィ入力のアドレスが、内部メモリ３２から引き出される次のアドレスであることを示す。ここに記載する例では、ルール３に対するファジィ入力のアドレスが内部メモリ３２から引き出されるとき、ＲＥＶ命令の「ｉｆ」部分の実行の間に、ＶCCR 信号が二ゲ−トされる。ＶCCR 信号が二ゲ−トされると、ここでも、アキュミュレ−タ５８の内容が＄ＦＦの値に初期化される。
【００９７】
ＲＥＶ命令の実行を継続すると、ル−ル３の評価が開始される。先に説明したように、ＣＰＵ１２の制御部２０は、内部メモリ３２から実行部１４に、各ファジィ入力を転送するのに必要な一連のシ−ケンス制御信号を供給する。ル−ル３の評価の間、内部メモリ３２は、中間圧力メンバシップ集合における第２システム入力のメンバシップ度が記憶されている、第１アドレスを与える。ここに記載する例では、このアドレスは、内部メモリ３２内の１６進アドレス＄１００５を指し示す。内部メモリ３２からアドレス＄１００５がアクセスされたとき、１６進数の＄ＦＦを有するメンバシップ度が、内部データ・バス３４を通じてデータ・バッファ４０に供給される。
【００９８】
先に述べたように、ＶCCR 信号が二ゲートされるときに、アキュミュレータ５８の内容は＄ＦＦに初期化される。ＡＬＵ５２によって、データ・バッファ４０に記憶されているメンバシップ度が、アキュミュレータ５８の内容から減算されると、０の結果が生成される。この結果は負ではないので、Ｎ信号はアサートされない。したがって、レジスタ交換論理回路５６は、イネーブルＡ信号もイネーブルＢ信号もアサートせず、情報はデータ・バッファ４０とアキュミュレータ５８との間で転送されない。
【００９９】
ルール３のファジィ入力のメモリ位置の終端において、バッファ・アドレスが比較器７２によって認識される。比較器７２はアサートされたトグル信号を、状態コード論理回路４７に供給する。すると、条件コード論理回路４７は、 件コード信号を条件コード・レジスタ６０に供給することにより、条件コード・レジスタ６０内のＶビットを切り換え、アサートされたＶCCR 信号を供給する。先に説明したように、ＶCCR 信号がアサートされると、ルール３のファジィ出力のアドレスが、内部メモリ３２から引き出される次のアドレスであることを示す。
【０１００】
続いて、ルール３のファジィ出力のアドレスが内部メモリ３２からアクセスされ、１６進数の＄ＣＣがデータ・バッファ４０に供給される。１６進数の＄ＣＣは、ファジィ出力即ち作用３に１６進数＄ＣＣのルール強度値が割り当てられた、ルール２の結果として与えられる。したがって、１６進数＄ＣＣはデータ・バッファ４０に供給される。
【０１０１】
次に、ＡＬＵ５２は、アキュミュレータ５８に記憶されている１６進数の＄ＦＦを、データ・バッファ４０に記憶されている１６進数の＄ＣＣから減算する。その結果、負の＄−３３という値が得られる。これがレジスタ交換論理回路４６に供給されると、レジスタ交換論理回路４６はイネーブルＡ信号をアサートする。したがって、セレクタ４２がイネーブルされ、アキュミュレータ５８からデータ・バッファ４０にデータを通信する。データ・バッファ４０は、メンバシップ度の最小値をルール３のファジィ出力のアドレス位置、即ち、作用３の出力に転送する。したがって、１６進数の＄ＦＦは、ＲＥＶ命令の実行中のこの時点において、作用３の現在のルール強度値となる。
【０１０２】
ルール３の評価の後、評価対象のルールのアレイの終端を示す特殊なバッファ・アドレスが比較器７２によって検出され、ＲＥＶ命令が終了する。この時点で、ルール１，２，３の各々が評価され、対応する各ファジィ出力にはルール強度値が割り当てられている。ここに記載する例では、各作用１，２に、１６進数＄００というルール強度値が割り当てられている。加えて、作用３には、１６進数＄ＦＦというルール強度値が割り当てられている。これら作用は各々、ディファジイ化ルーチンに対するファジィ出力として与えられ、データ処理システム１０の適切な作用を判定するために使用される。例えば、作用３をディファジィ化して、弁を開放したり、送風機をオンにすることができる。加えて、作用１ないし３のルール強度をディファジィ化して、送風機をオンにする、または弁を開放する度合いを判定することも可能である。ディファジィ化処理はデータ処理技術では既知であるので、ここでは詳細に説明しない。
【０１０３】
したがって、データ処理システム１０におけるＲＥＶ命令の実行の間に、ルール１、ルール２およびルール３の各々が迅速にされ、しかも追加するメモリ量も最少で済ませることができた。図３に示す回路は殆どが、データ・プロセッサにおいて、汎用処理を実行するために用いられているものである。本発明を実施するには、マイクロＲＯＭにおけるメモリの少量の追加、および少量の命令デコード論理回路の追加を行えばよい。加えて、実行部１４において、比較器７２およびレジスタ切り換え論理回路４６が、従来から必要とされている論理回路に追加して必要である。
【０１０４】
図８に関して、ステップ８０４において、インデックス・レジスタを用いて、最初の３つのルール・オペランド、即ちポインタ（７０１，７０２，７０３）にアクセスし、次に、内部メモリ３２内に記憶されている２つのファジィ入力およびファジィ出力にアクセスする。次にステップ８０５において、インデックス・レジスタにおけるアドレスを更新する。ステップ８０６において、比較器７２は、ルール１の第１ファジィ入力のアドレス値を、１６進数の＄ＦＦＦＦと比較する。このアドレス値が＄ＦＦＦＦに等しい場合、ルール・アレイ・アドレスの終端が指し示されたことになり、ＲＥＶ命令の実行を終了する（ステップ８１０）。
【０１０５】
図８に示すステップ８０７ないし８０９は、ＶCCR ビットの実施およびそれに関連する処理を必要としない。しかしながら、固定フォーマット・ルール・ベースの実施では、図１ないし図３に示したハードウエアを同様に利用する。
【０１０６】
ステップ８０５の後、終端マーク７０６に到達していない場合、処理はステップ８０７に進み、ここでルール・オペランド１，２，３を利用して、それぞれ２つのファジィ入力１，２とルールに対するファジィ出力とを取り込む。
【０１０７】
その後、ステップ８０８において、１つ以上の命令を実行して、新たなファジィ出力を計算する。これは、先に図６を用いて説明した場合と同様に行えばよい。本質的には、２つのファジィ入力が比較され、最小値が選択される。次に、この最小値を、引き出したファジィ出力値と比較し、これら２つの内最大値を、計算されたファジィ出力として選択する。その後、ステップ８０９において、この新たなファジィ出力を、ルール・オペランド３によって示される位置に書き込む。次に、プロセスはステップ８０４に戻り、次の集合の２つのファジィ入力および１つのファジィ出力に対するファジィ理論処理を継続する。
【０１０８】
ここに記載した本発明の実施形態は、一例として提示したに過ぎない。しかしながら、ここに記載した機能を実行するための実施形態は、他にも多数存在するであろう。例えば、評価すべきルールのルール・ベースの先頭は、ＲＥＶ命令のオペランドとして与えてもよい。加えて、データ処理システム１０外部のメモリ回路を用いて、ルールの評価の間、ルールおよびファジィ入力の各々を記憶してもよい。同様に、本発明のこの実施形態ではＮ信号およびＶCCR 信号を用いてレジスタ交換論理回路４６の動作を制御したが、データ処理システム１０内の他の信号も容易に適合させて使用することができる。加えて、レジスタ交換論理回路５６において用いられている論理ゲートは、ＮＡＮＤ、ＯＲ、ＮＯＲまたは排他的ＯＲゲートのような他の論理回路と交換することも可能である。
【０１０９】
以上本発明の原理についてここでは説明してきたが、この記載は単に一例として行っただけであり、本発明の限定としてのものではないことは、当業者には明白に理解されよう。したがって、本発明の精神および範囲に該当する本発明の全ての変更は、特許請求の範囲に含まれることを意図するものである。
【０１１０】
以上本発明およびその利点について詳細に説明したが、特許請求の範囲に規定した本発明の精神および範囲から逸脱することなく、種々の変更、置換および代替が可能であることは理解されよう。
【図面の簡単な説明】
【図１】ファジィ理論を記述するために用いられる一般的概念と基本的用語とを示すグラフ。
【図２】本発明によるデータ処理システムを示すブロック図。
【図３】図２の実行部を示すブロック図。
【図４】図３のレジスタ交換論理回路を示す論理回路図。
【図５】図２の内部メモリにおいて、可変フォーマットで評価対象ルールのアレイを示すメモリ・マップ図。
【図６】可変フォーマットによるＲＥＶ命令の実行の間に行われる機能のフローを示すフロー・チャート。
【図７】固定フォーマットにおいて、図２の内部メモリ内で評価されるルールのアレイを示すメモリ・マップ図。
【図８】ここに記載した発明による、ルール評価（ＲＥＶ）命令の実行の間に行われる機能のフローを示すフロー・チャート。
【符号の説明】
１０    データ処理システム
１２    中央処理装置
１４    実行部
１６    バス制御論理回路
１８    命令デコード論理回路
２０    制御部
２２    シーケンサ
２４    発振器
２６    電力回路
２８    タイミング回路
３０    外部バス・インターフェース
３２    内部メモリ
３４    内部データ・バス
３５    外部アドレス・バス
３６    内部アドレス・バス
３８    タイミング制御バス
４０    データ・バッファ
４２，４４    セレクタ
４６    レジスタ交換論理回路
４７    条件コード論理回路
４８    Ａ−入力制御回路
５０    Ａ−入力マルチプレクサ
５２    算術論理部
５４    Ｂ−入力制御回路
５６    Ｂ−入力マルチプレクサ
５８    アキュムレータ
６０    条件コード・レジスタ
６４    情報バスＢ
６５    マイクロＲＯＭ制御バス
６６    情報バスＡ
７２    比較器
１２０    結果バス
【図１】
0003992771.tif 000003
【図２】
0003992771.tif 000004
【図３】
0003992771.tif 000005
【図４】
0003992771.tif 000006
【図５】
0003992771.tif 000007
【図６】
0003992771.tif 000008
【図７】
0003992771.tif 000009
【図８】
0003992771.tif 000010