JPH0635708A - データ処理システムにおいてファジー論理操作を行う方法 - Google Patents

データ処理システムにおいてファジー論理操作を行う方法

Info

Publication number
JPH0635708A
JPH0635708A JP5154500A JP15450093A JPH0635708A JP H0635708 A JPH0635708 A JP H0635708A JP 5154500 A JP5154500 A JP 5154500A JP 15450093 A JP15450093 A JP 15450093A JP H0635708 A JPH0635708 A JP H0635708A
Authority
JP
Japan
Prior art keywords
input
signal
membership
value
adders
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5154500A
Other languages
English (en)
Other versions
JP3121712B2 (ja
Inventor
J Greg Viot
ジェイ・グレッグ・ビオット
James M Sibigtroth
ジェイムズ・エム・シビグトロス
James L Broseghini
ジェイムズ・エル・ブロスジニ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of JPH0635708A publication Critical patent/JPH0635708A/ja
Application granted granted Critical
Publication of JP3121712B2 publication Critical patent/JP3121712B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/02Computing arrangements based on specific mathematical models using fuzzy logic
    • G06N7/04Physical realisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S706/00Data processing: artificial intelligence
    • Y10S706/90Fuzzy logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Health & Medical Sciences (AREA)
  • Fuzzy Systems (AREA)
  • Algebra (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Analysis (AREA)
  • Molecular Biology (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Complex Calculations (AREA)
  • Logic Circuits (AREA)
  • Feedback Control In General (AREA)

Abstract

(57)【要約】 【目的】 単一のソフトウェア命令により帰属度を高速
度でかつ少量のハードウェアの付加によって計算できる
ようにする。 【構成】 ファジー論理操作の間に、あるメンバシップ
集合における入力の帰属度を決定する回路(14)およ
び方法である。該帰属度は単一の“MEM”命令により
計算される。MEM命令はシステム入力がゼロ、飽和レ
ベル、或いはその間の値の帰属度を有するか否かを決定
する。オペランド割り当て回路(50)およびALU
(56)は回路(14)に帰属度をより迅速に決定させ
る。割り当て回路(50)は乗算されるべき値の有意ビ
ットの数に基づき乗算操作のための乗数を決定する。乗
数が被乗数より小さければ、より短い乗算操作を行うこ
とができる。更に、ALU(56)はスプリットモード
で動作し、2つの8ビット減算または乗算操作を同時に
行うことがで上記操作をより効率的に行なう。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、一般的にはデータ処
理システムに関し、かつより特定的にはデータ処理シス
テムにおけるファジー論理操作の実行に関する。
【0002】
【従来の技術】データ処理システムはその入力および出
力が1または0のいずれかとして解釈され、何らの他の
可能性も存在できない2進機械として機能するよう開発
されてきた。これは大部分の状況においてうまく動作す
るが、時には答えは単に「イエス」または「ノー」では
なく、それらの間の何かである。「ファジー論理」と称
される概念が開発されて2進論理に基づくデータプロセ
ッサが「イエス」および「ノー」の間の答えを与えるこ
とが可能になった。
【0003】ファジー論理はファジー境界を有するメン
バシップ関数を有する論理システムである。メンバシッ
プ関数は、「温度が暖かい」のような、主観的な表現を
典型的なデータプロセッサが認識できる値に変換する。
「暖かい」のようなラベルが使用されて、それらの境界
が前記ラベルが一方の側で真でありかつ他方の側で偽で
あるポイントではないある範囲の入力値を識別するため
に使用される。むしろ、ファジー論理を実施するシステ
ムにおいては、メンバシップ関数の境界は徐々に変化し
かつ隣接するメンバシップ集合の境界とオーバラップす
ることができる。従って、帰属度(degree of
membership)が一般にある入力値に割当て
られる。例えば、ある範囲の温度にわたり2つのメンバ
シップ関数が与えられれば、ある入力温度は「涼しい」
および「暖かい」と名付けられた関数の双方の領域にオ
ーバラップして存在することになる。メンバシップ関数
の各々において帰属度(すなわち、前記入力温度がメン
バシップ集合、涼しいおよび暖かい、の各々に適合する
か否か)を決定するためにはさらに処理が必要とされ
る。
【0004】「ファジー化(fuzzificatio
n)」と称されるステップが使用されて入力をファジー
論理を実施するシステムにおけるメンバシップ関数と関
係付ける。ファジー化プロセスは、「温度が暖かい」の
ような主観的な表現に対し具体的な数値を与える。これ
らの数値は一般に絶対的な真実の環境に制限されない人
間の知覚の良好な近似を与えるよう試みるものである。
ファジー化ステップの後に、ルール評価ステップ(ru
le evalution step)が実行される。
該ルール評価ステップの実行の間に、“min−ma
x”推論と称される技術が使用されてユーザによって規
定される言語上のルールに対する数字的な結論が計算さ
れる。ルール評価ステップからの結論は「ファジー出
力」と称されかつ種々の程度で真となり得る。従って、
競合する結果が生じ得る。ファジー論理プロセスにおけ
る最後の処理は「非ファジー化(defuzzific
ation)」と称される。名前が示すように、非ファ
ジー化はすべてのファジー出力を組合わせてある複合的
結果を得るプロセスであり、該複合的結果は標準のデー
タ処理システムに印加できる。ファジー論理に関するこ
れ以上の情報については、James M.Sibig
trothによる、“ImplementingFuz
zy Expert Rules in Hardwa
re”と題する論文を参照。この論文はAI EXPE
RTのページ25〜31において、1992年4月に発
行されている。
【0005】
【発明が解決しようとする課題】典型的には、ファジー
化ステップは周辺装置またはデータプロセッサにより実
行されるソフトウェアプログラムによって実施されてき
た。そのようなソフトウェアプログラムは多量の処理時
間を必要とする数学的方程式を使用して帰属度を計算す
る。従って、ソフトウェアプログラムは正確な結果を提
供するが、前記処理時間のため一般にそれが実施される
システムの性能が制限される。他の一般的なソフトウェ
ア解決方法は「テーブルルックアップ」ルーチンを使用
し、そこではメモリに記憶されたデータのテーブルが特
定の入力値に対応する値に対してアクセスされる。数学
的な計算よりは早いが、テーブルルックアップルーチン
は実施するのが高価になる多量の専用メモリを必要とす
る。ファジー化ステップの実施に対するハードウェア的
な解決方法はさらに迅速に結果を提供する。しかしなが
ら、ハードウェアの解決方法は一般に多量の柔軟性のな
い専用回路を必要とする。ファジー化ステップに対する
ハードウェア的な解決方法は一般にはソフトウェア的な
構成よりも高速であるが、ハードウェアによる解決方法
は多量の専用回路領域を必要としかつしばしばデータ処
理システムにおいて実施するにはあまりにも高価にな
る。
【0006】従って、コストのかかるハードウェアを必
要とすることなく、ファジー化ステップを迅速に行うた
めの回路および方法の必要性が存在する。ハードウェア
による解決方法で一般に得られる速度が通常ソフトウェ
ア解決方法に関連するメモリなしに得られることが必要
である。
【0007】
【課題を解決するための手段および作用】前に述べた必
要性は本発明によって満たされる。従って、1つの形態
で、データ処理システムにおいてファジー論理操作を行
うための回路および方法が提供され、該ファジー論理操
作は複数の境界値によって規定される所定のメンバシッ
プ集合における入力ポイントのメンバシップを決定す
る。該方法は前記データ処理システムにおいてファジー
論理操作の実行を開始するためのメンバシップ計算指令
を受ける段階を含む。該メンバシップ計算指令はデコー
ドされて複数の制御信号を提供する。前記複数の境界値
の内の第1のものが前記入力値から減算されて第1のデ
ルタ値を生成する。前記入力値は同時に前記複数の境界
値の内の第2のものから減算されて第2のデルタ値を生
成する。前記第1のデルタ値および前記複数の境界値の
内の第3のものは乗算されて第1の結果を生成する。前
記第2のデルタ値および前記複数の境界値の内の第4の
ものが同時に乗算されて第2の結果を生成する。帰属度
信号が与えられて前記第1のデルタ値または前記第2の
デルタ値がゼロより小さい場合に前記入力ポイントが所
定のメンバシップ集合に含まれていないことを表示す
る。該帰属度信号は前記第1の結果、前記第2の結果、
またはもし前記第1の結果値も前記第2の結果値もゼロ
より小さくなければ前記複数の境界値の内の第5のもの
のいずれかの内の最小値に等しい。
【0008】これらおよび他の特徴、および利点、は添
付の図面と共に以下の詳細な説明を参照することにより
さらに明瞭に理解できるであろう。図面は本発明の唯一
の形態を表すことを意図するものでないことに注意を要
する。
【0009】
【実施例】本発明は、データ処理システムへの入力を迅
速にかつ最少量の専用回路を用いて「ファジー化する
(fuzzifying)」ための回路および方法を提
供する。データ処理システムのユーザが困難なかつ長い
ソフトウェアプログラムなしに迅速にファジー化ステッ
プを達成できるようにする命令が与えられる。単一の入
力ラベルのファジー化ステップが前記命令においてエン
コードされデータ処理システムにおける過剰な量の付加
回路なしに迅速かつ効率的に実行される。
【0010】本発明の構成を説明する場合に、用語「肯
定する(assert)」および「否定する(nega
te)」、およびその種々の文法的な形態が使用されて
「アクティブハイ」および「アクティブロー」論理信号
の混合物を扱う上での混乱を避けている。「肯定する」
は論理信号またはレジスタビットをそのアクティブな、
または論理的に真な、状態にすることを言及するために
使用されている。「否定する」は論理信号またはレジス
タビットをそのインアクティブな、または論理的に偽
の、状態にすることを言及するために使用されている。
さらに、16進値はその値に先行する“$”記号によっ
て表示される。
【0011】図1は、ファジー論理のいくつかの基本的
な用語および概念を示すグラフを与える。図1に示され
たファジー論理システムにおいては、「システム入力」
はカ氏(degrees Fahrenheit)にお
ける温度である。5つの「メンバシップ関数」はラベル
を温度範囲に関係付けるために与えられている。例え
ば、0度から30度では、温度は「寒い」と名付けられ
ている。同様に、20度から50度では、温度は「涼し
い」と名付けられている。メンバシップ集合の各々の境
界は隣接集合の境界とオーバラップしていることに注意
を要する。従って、ある温度は1つより多くの集合に存
在し得る。例えば、システム入力が68度の温度を示し
ているものと仮定する。図1を参照すると、68度は
「暖かい」および「非常に暖かい」メンバシップ集合の
双方の境界内にあり、各々のメンバシップ集合における
ゼロでない帰属度が得られることに注意を要する。前記
システム入力は「暖かい」メンバシップ集合に対して$
33の帰属度を有し、かつ前記「非常に暖かい」メンバ
シップ集合に対しては$CCの帰属度を有する。もしシ
ステム入力が75度の温度を示していたとすれば、該温
度は「非常に暖かい」メンバシップ集合における$FF
の帰属度を有する。同様に、75度の温度は「暑い」メ
ンバシップ集合における$00の帰属度を有することに
なる。図1のファジー論理構成においては、帰属度は$
00から$FFの16進値の範囲におよび、これは0.
00〜0.996の範囲の小数(fraction)に
対応させることができる。
【0012】図2は、4つの値、すなわち、ポイント1
(Point 1)、ポイント2(Point 2)、
スロープ1(Slope 1)、およびスロープ2(S
lope 2)、によって表すことができる単一のメン
バシップ集合を示す。「デルタ1(Delta 1)」
と称される第1の値はシステム入力(ポイント“X”)
およびポイント1の間の差として計算される。同様に、
「デルタ2(Delta 2)」と称される第2の値は
ポイント2と前記システム入力との間の差として計算さ
れる。デルタ1およびデルタ2の値の計算から、本発明
の方法に従って帰属度(所属の程度:degree o
f membership)が与えられる。デルタ1ま
たはデルタ2のいずれかの値がゼロより小さければ、対
応するメンバシップ集合に対する帰属度は0.00であ
る。これ以外では、帰属度はデルタ1とスロープ1の
積、デルタ2とスロープ2の積、あるいは飽和値のいず
れかの内の最小値に等しい。該最小値は試験されている
メンバシップ集合における現在の入力値の帰属度とな
る。ここに述べた例においては、前記飽和値は16進値
$FFを有する。しかしながら、他の構成であってもフ
ァジー論理システムのユーザがある特定のシステムの仕
様に従って飽和値を選択できるようにすることができ
る。
【0013】ニーモニックラベル“MEM”で参照され
る、本発明の命令はデータ処理システムが複数のメンバ
シップ集合の内の1つにおけるシステム入力値の帰属度
を決定するために一連のステップを行わせる。前記メン
バシップ集合の各々はメモリから読出される複数の境界
値(ポイント1、ポイント2、スロープ1、およびスロ
ープ2)によって特徴付けられる。もし前記複数の境界
値の各々が適切にメモリに格納されかつもし前記システ
ム入力値がMEM命令の実行の前に適切にあるレジスタ
位置に格納されていれば、前記複数のメンバシップ集合
の内の1つにおけるシステム入力の帰属度が決定でき
る。続いて、前記複数のメンバシップ集合の各々におけ
る前記システム入力の帰属度がメモリ内の所定の位置に
記憶される。MEM命令の実施によってデータ処理シス
テムのユーザが伝統的なソフトウェア構成よりも迅速に
かつ典型的なハードウェア構成によって必要とされるよ
りもより少ない専用回路領域によってメンバシップ計算
機能を達成できるようになる。例えば、前記データ処理
システムの通常動作に必要な演算論理ユニットを、スプ
リット動作モードで動作するために変更または修正でき
る。典型的には、演算論理ユニットは所定の時点におい
て単一の16ビットの操作を行うことができる。しかし
ながら、ここに開示された演算論理ユニットは単一の1
6ビット操作あるいは2つの同時的な8ビット操作を行
うために選択的にイネーブルできる。従って、あるメン
バシップ集合における帰属度の計算に必要な演算操作は
伝統的に必要とされるよりも短い時間で同時に計算され
る。非常に少しの付加回路が必要とされるのみである。
演算論理ユニットをスプリットモードで動作させるため
に、単一のイネーブル信号が現存するバッファ回路に与
えられる。さらに、MEM命令を実施するためには少し
の量の付加回路を必要とするのみである。
【0014】上に述べた命令および動作方法の1つの構
成が図3に示されている。図3は、ファジー化命令が実
施できるデータ処理システム10を示す。データ処理シ
ステム10は一般に中央処理ユニット(CPU)12、
発振器24、電源回路26、タイミング回路28、外部
バスインタフェース30、および内部メモリ32を含
む。CPU12は一般に実行ユニット14、バス制御論
理回路16、命令デコード論理回路18、制御ユニット
20、およびシーケンサ22を有する。
【0015】動作においては、“Osc 1”信号が、
水晶のような、外部ソースを介して発振器24に与えら
れる。該水晶はOsc 1およびOsc 2信号の間に
接続されて該水晶が発振できるようにする。Osc 1
は「クロック」信号をデータ処理システム10の残りの
部分に提供する。水晶発振器の動作はデータ処理技術に
おいてよく知られておりかつ当業者には明らかであるべ
きである。
【0016】同様に、電源回路26は外部電源から“V
dd”および“Vss”信号を受ける。Vdd信号は正
の5ボルトを提供しかつVss信号は基準、またはグラ
ンド電圧を提供する。VddおよびVss信号はデータ
処理システム10の残りの構成要素の各々に与えられ
る。これらの信号のルーティングはデータ処理技術にお
いてよく知られておりかつ当業者には明らかであろう。
【0017】タイミング回路28はクロック信号を受け
取りかつ続いて適切なタイミング信号をタイミング制御
バス38を介してCPU12、外部バスインタフェース
30、および内部メモリ32の各々に提供する。
【0018】複数のアドレス値が外部バスインタフェー
ス30から外部アドレスバス35を介して与えられる。
同様に、複数のデータ値が外部データバス33を介して
外部バスインタフェース30に通信される。外部バスイ
ンタフェース30は外部ユーザとデータ処理システム1
0との間でアドレスおよびデータ値を通信するよう機能
する。外部バスインタフェース30は複数のアドレスお
よびデータ値を、それぞれ、内部アドレスバス36およ
び内部データバス34を介してデータ処理システム10
の残りの部分に提供する。内部メモリ32はデータ処理
システム10の適切な動作に必要な情報値を格納するよ
う機能する。さらに、内部アドレスバス36および内部
データバス34を介して与えられるユーザプログラムに
おいて特定されれば、他のデータ値をそこに記憶するこ
とができる。
【0019】CPU12はデータ処理システム10の動
作の間に必要な各々の命令を実行する。内部アドレスバ
ス36および内部データバス34は実行ユニット14と
データ処理システム10の残りの部分との間で情報を通
信する。バス制御論理回路16は命令およびオペランド
をフェッチする。該命令の各々は次に命令デコード論理
回路18によってデコードされかつ制御ユニット20お
よびシーケンサ22に与えられる。制御ユニット20お
よびシーケンサ22はデータ処理システム10の計算機
的な能力を最も効率よく利用するために前記命令の各々
の実行のシーケンスを維持する。さらに、制御ユニット
20はマイクロ−ROMメモリ(図示せず)を含み、該
マイクロ−ROMメモリは複数の制御情報を実行ユニッ
ト14、バス制御論理16、および命令デコード論理1
8の各々にマイクロ−ROM制御バス65を介して提供
する。
【0020】実行ユニット14は図4に非常に詳細に示
されている。実行ユニット14は概略的にデータバッフ
ァ42、結果選択論理回路46、フラグ発生論理回路4
8、オペランド割当て論理回路50、A−入力制御論理
回路52、A−入力マルチプレクサ54、演算論理ユニ
ット(ALU)56、B−入力マルチプレクサ58、第
1のデータレジスタ60、およびシステム入力レジスタ
を含む。ここには示されていないが、当業者は実行ユニ
ット14にはさらに他のレジスタも含めることが可能な
ことを理解すべきである。例えば、実行ユニット14は
インデックスレジスタまたはアキュムレータを含むこと
ができる。さらに、典型的なデータ処理システムにおい
ては、システム入力レジスタ64はアキュムレータとし
て実現できる。
【0021】外部情報バス40はアドレスおよびデータ
情報をデータバッファ42に与える。外部情報バス40
は該アドレスおよびデータ情報を、それぞれ、内部アド
レスバス36および内部データバス34から受け取る。
データバッファ42は外部情報バス40を介して転送さ
れる値を情報バスA 66および情報バスB 68を介
して実行ユニット14の残りの部分に提供する。ここに
は詳細に示されていないが、情報バスA 66および情
報バスB 68は共に16ビットの幅でありかつハイ側
(ビット15〜ビット8)およびロー側(ビット7〜ビ
ット0)に分割される。
【0022】情報バスA 66のロー側はシステム入力
レジスタ64の第1の入力に双方向的に結合されてい
る。同様に、情報バスB 68のハイ側はシステム入力
レジスタ64の第2の入力に双方向的に結合されてい
る。「デルタ1」と称される第1のデルタ値が情報バス
B 68のハイ側を介してデルタレジスタの第1の入力
に与えられる。第2のデルタ値、「デルタ2」、が情報
バスB 68のロー側を介してデルタレジスタ60の第
2の入力に与えられる。デルタレジスタ60はまた情報
バスA 66および情報バスB 68の双方に接続され
て実行ユニット14の他の構成要素に情報を提供する。
アキュムレータおよびインデクスレジスタのような何ら
かの付加的なレジスタを同様に情報バスA 66および
情報バスB68に結合することかできる。
【0023】情報バスA 66はA−入力マルチプレク
サ54の第1の入力に接続されている。「制御」と名付
けられたnビット幅の信号がA−入力マルチプレクサ5
4の第2の入力に与えられ、ここでnは整数である。A
−入力マルチプレクサ54は「A−入力ロー側」と名付
けられた第1の10ビットの出力をALU56の第1の
入力に提供しかつ「A−入力ハイ側」と名付けられた第
2の10ビットの出力をALU56の第2の入力に提供
する。
【0024】情報バスB 68はB−入力マルチプレク
サ58の入力に接続されている。B−入力マルチプレク
サ58をイネーブルして正しく機能させるのに必要な制
御情報は、制御ユニット20においてマイクロ−ROM
(図示せず)によって発生されかつマイクロ−ROM制
御バス65を介して転送される複数の信号を介して制御
入力に与えられる。B−入力マルチプレクサ58は「B
−入力ロー側」と名付けられた第1の10ビットの出力
をALU56の第3の入力に提供する。さらに、B−入
力マルチプレクサ58は「B−入力ハイ側」と名付けら
れた第2の10ビットの出力をALU56の第4の入力
に提供する。
【0025】「スプリットモード制御」と名付けられた
信号がALU56の第5の入力に与えられる。該スプリ
ットモード制御信号は前記MEM命令の実行に応じて制
御ユニット20のマイクロ−ROMメモリによって発生
される。ALU56は前記入力の各々を処理して複数の
結果を提供し、これらは結果バス120を介して転送さ
れる。結果バス120は複数の情報値を結果選択論理回
路46およびフラグ発生論理回路48の各々に提供す
る。さらに、結果バス120は情報バスB 68に結合
されている。
【0026】結果バス(Results bus)12
0に加えて、フラグ発生論理回路48がデルタレジスタ
60およびデータバッファ42の双方に結合されてい
る。フラグ発生論理48はデルタレジスタ60から「デ
ルタ」信号を受けかつデータバッファ42から「バッフ
ァド・データ」信号を受け取る。フラグ発生論理回路4
8もまたオペランド割当て論理回路50および結果選択
論理回路46の双方に結合され、フラグバス70を介し
て複数のフラグ値を提供する。さらに、フラグ発生論理
回路48がALU56に結合されてJhighおよびJ
low信号を、それぞれ、ALU56の第6および第7
の入力に提供する。
【0027】オペランド割当て論理回路50もまた情報
バスA 66、情報バスB 68、およびフラグバス7
0に接続されている。オペランド割当て論理回路50は
A−入力制御論理回路52に接続されて「マルチプライ
ヤ1」と名付けられた第1の入力信号および「マルチプ
ライヤ2」と名付けられた第2の入力信号の双方を提供
する。さらに、オペランド割当て論理回路50がデルタ
レジスタ60に結合されて前記デルタ信号を受信する。
A−入力制御論理52はA−入力マルチプレクサ54に
接続されて前記制御信号を提供する。結果選択論理46
はフラグバス70および結果バス120の双方を介して
情報を受け取る。該情報は処理されて「選択(Sele
ct)」と名付けられた第1の出力および「フォース
(Force)$FF」と名付けられた第2の出力を提
供する。
【0028】フラグ発生論理回路48は図5に非常に詳
細に示されている。フラグ発生論理回路48は概略的に
NORゲート110、NORゲート112、ORゲート
114、NORゲート116、NORゲート118、A
NDゲート132、ANDゲート134、ラッチ13
6、ANDゲート138、NORゲート140、NOR
ゲート142、ORゲート144、NORゲート14
6、NORゲート148、そしてORゲート150を含
む。ラッチ130および136は各々Dフリップフロッ
プとして実施され、該Dフリップフロップはデータ入力
(D)、クロック入力(C)、リセット入力(R)、そ
してデータ出力(Q)を有する。Dフリップフロップは
データ処理技術においてはよく知られており、従って、
これ以上詳細に説明しない。
【0029】データバッファ42(図4)は第1の情報
値のビット15〜8をNORゲート112に提供する。
ここに述べた例では、前記第1の情報値は、以後バッフ
ァド・データ1信号と称される、第1のバッファリング
されたデータ信号を介して与えられる。バッファド・デ
ータ1信号はポイント1の値またはスロープ1の値を提
供する。NORゲート112の出力は“Z2”と名付け
られかつラッチ136のデータ入力(D)およびAND
ゲート134の第1の入力に与えられる。前記タイミン
グ制御信号はタイミング制御バス38によってラッチ1
36のクロック入力(C)に提供される。ラッチ136
のデータ出力(Q)はANDゲート134の第2の入力
に接続されて“ZP2”と名付けられた信号を提供す
る。ANDゲート134の出力はJPhighと名付け
られかつORゲート144の第1の入力に提供される。
【0030】さらに、バッファド・データ1信号のビッ
ト15〜12(B15〜B12)はNORゲート140
に与えられる。NORゲート140の出力は“S2”と
名付けられかつNORゲート142の第1の入力に提供
される。
【0031】データバッファ42はまた第2の情報値の
ビット7〜0をNORゲート118およびANDゲート
138の双方に提供する。前記第2の情報値は、バッフ
ァド・データ2信号と称される、第2のバッファリング
されたデータ信号を介して提供される。該バッファド・
データ2信号は前記ポイント2の値のビット7〜0をA
NDゲート138に提供しかつスロープ2の値のビット
7〜0をNORゲート118に提供する。ANDゲート
138は出力をラッチ130のデータ入力(D)に提供
する。NORゲート118は“Z4”と名付けられた出
力を提供する。このZ4信号はANDゲート132の第
1の入力に転送される。前記タイミング制御信号はタイ
ミング制御バス38によってラッチ130のクロック入
力(C)に与えられる。ラッチ130のデータ出力
(D)はANDゲート132の第2の入力に接続されて
“ZP4”と名付けられた信号を提供する。ANDゲー
ト132の出力はJPlowと名付けられかつORゲー
ト150の第1の入力に与えられる。
【0032】さらに、バッファド・データ2信号のビッ
ト7〜4(B7〜B4)はNORゲート146に与えら
れる。NORゲート146の出力は“S4”と名付けら
れかつNORゲート148の第1の入力に提供される。
【0033】デルタレジスタ60は第3の情報値のビッ
ト15〜12をNORゲート110に提供する。この構
成においては、前記第3の情報値はデルタ1信号と称さ
れる第1のデルタ信号によって与えられる。NORゲー
ト110の出力は“Z1”と名付けられかつまたフラグ
バス70を介して転送される。このZ1信号はまたNO
Rゲート142の第2の入力に提供される。NORゲー
ト116の出力は“Z3”と名付けられかつフラグバス
70を介して転送される。前記第4の情報値はデルタ2
信号と称される第2のデルタ信号を介して与えられる。
前記Z3信号はまたNORゲート148の第2の入力に
提供される。
【0034】結果バス120はNlowおよびN
high信号を、それぞれ、ORゲート114の第1お
よび第2の入力に提供する。ORゲート114の出力は
memと名付けられている。Nmem信号はラッチ1
30およびラッチ136の双方のリセット入力(R)に
与えられる。さらに、前記Nmem信号はNORゲート
142およびNORゲート148の各々の第3の入力に
与えられる。
【0035】NORゲート142の出力は“J
Shigh”と名付けられかつORゲート144の第2
の入力に与えられる。ORゲート144の出力は“J
high”と名付けられている。さらに、NORゲート
148の出力は“JSlow”と名付けられておりかつ
ORゲート150の第2の入力に与えられる。ORゲー
ト150の出力は“Jlow”と名付けられている。こ
れらのJlowおよびJhigh信号はフラグバス70
を介して通信される。
【0036】オペランド割当て論理回路50が図6にさ
らに詳細に示されている。オペランド割当て論理回路5
0は概略的に第1のマルチプレクサ72、第2のマルチ
プレクサ74、第3のマルチプレクサ76、および第4
のマルチプレクサ78を含む。
【0037】デルタレジスタ60およびデータバッファ
42はそれぞれデルタ1およびスロープ1の値の双方の
下位4ビットをマルチプレクサ72の第1および第2の
入力に提供する。さらに、デルタレジスタ60およびデ
ータバッファ42はそれぞれデルタ1およびスロープ1
の値の全8ビットをマルチプレクサ74の第1および第
2の入力に提供する。同様に、デルタレジスタ60およ
びデータバッファ42はそれぞれ前記デルタ2およびス
ロープ2の値の下位4ビットをマルチプレクサ76の第
1および第2の入力に与える。デルタレジスタ60およ
びデータバッファ42はそれぞれデルタ2およびスロー
プ2の値の全8ビットをマルチプレクサ78の第1およ
び第2の入力に与える。
【0038】前記“Z1”信号はフラグバス70を介し
てマルチプレクサ72の第3の入力に提供される。さら
に、前記Z1信号はフラグバス70を介してマルチプレ
クサ74の第3の入力に提供される。同様に、“Z3”
と名付けられた信号が、それぞれ、マルチプレクサ76
およびマルチプレクサ78の第3の入力に与えられる。
同様に、前記Z3信号はフラグバス70を介して転送さ
れる。
【0039】マルチプレクサ72は4ビットの乗数1
(multiplier 1)信号を出力し、かつマル
チプレクサ76は4ビットの乗数2信号を提供する。マ
ルチプレクサ74は「被乗数(Multiplican
d)1」と名付けられた8ビットの信号を出力し、この
信号は情報バスA 66のハイ側を介して転送される。
マルチプレクサ78は「被乗数2」と名付けられた8ビ
ットの信号を出力し、これは情報バスA 66のロー側
を介して転送される。
【0040】ALU56が図7にさらに詳細に示されて
いる。ALU56は概略的に複数の加算器回路(80,
82,84,86,88,92,94,96,98およ
び100)、バッファ90、ハイキャリールックアヘッ
ド論理回路102、ローキャリールックアヘッド論理回
路104、ハイステータスフラグ回路106、およびロ
ーステータスフラグ回路108を含む。
【0041】前記A−入力ロー側信号はそれぞれ“a
0”,“a1”,“a2”,“a8”および“a9”と
名付けられた第1の複数のビットを提供する。ビットa
0は加算器100の第1の入力への入力である。同様
に、ビットa1〜a9はそれぞれ加算器98、加算器9
6、加算器94および加算器92の第1の入力にそれぞ
れ提供される。前記B−入力ロー側信号はそれぞれ“b
0”,“b1”,“b2”,“b8”および“b9”と
名付けられた第2の複数のビットを提供する。ビットb
0は加算器100の第2の入力に提供される。同様に、
ビットb1〜b9はそれぞれ加算器98、加算器96、
加算器94および加算器92の第2の入力に各々与えら
れる。図7には詳細に示されていないが、ビットa3〜
a7およびb3〜b7の各々は第1の複数の加算器(図
示せず)のそれぞれの1つに提供される。前記第1の複
数の加算器(図示せず)の各々は加算器92〜100と
同様に機能しかつ、従って、同様に構成されている。
【0042】“C0”と名付けられた信号がローキャリ
ールックアヘッド論理104の第1の入力および加算器
100の第3の入力の双方に与えられる。加算器100
は“S0”と名付けられた和信号を出力する。さらに、
加算器100は“P0”と名付けられた伝搬信号および
“G0”と名付けられた発生信号の双方をローキャリー
ルックアヘッド論理回路104に提供する。
【0043】“C1”と名付けられた信号が加算器98
の第3の入力に提供される。加算器98は“S1”と名
付けられた和信号を提供する。加算器98もまた伝搬信
号“P1”および発生信号“G1”を発生する。同様
に、“C2”と名付けられた信号が加算器96の第3の
入力に与えられる。加算器96は“S2”と名付けられ
た和出力、“P2”と名付けられた伝搬信号、および
“G2”と名付けられた発生信号を提供する。同様に、
“C8”と名付けられた信号は加算器99の第3の入力
に与えられる。加算器99は“S8”と名付けられた和
信号、“P8”と名付けられた伝搬信号、および“G
8”と名付けられた発生信号を出力する。“C9”と名
付けられたキャリー信号は加算器92に対し第3の入力
を提供する。加算器92は“S9”と名付けられた和信
号、“P9”と名付けられた伝搬信号および“G9”と
名付けられた発生信号を出力する。加算器92〜100
によって出力される伝搬および発生信号の各々はローキ
ャリールックアヘッド論理回路104に提供される。
【0044】ローキャリールックアヘッド論理回路10
4は“C10”と名付けられたキャリー信号をバッファ
90に提供する。スプリットモード制御信号もまたバッ
ファ90に与えられる。バッファ90は“Cin”と名
付けられた信号を提供する。
【0045】前記A−入力ハイ側信号はそれぞれ“a1
0”,“a11”,“a12”,“a18”および“a
19”と名付けられた第1の複数のビットを提供する。
ビットa10は加算器88の第1の入力に入力される。
同様に、ビットa11〜a19は、それぞれ、加算器8
6、加算器84、加算器82および加算器80の第1の
入力に各々与えられる。前記B−入力ハイ側信号はそれ
ぞれ“b10”,“b11”,“b12”“b18”お
よび“b19”と名付けられた第2の複数のビットを提
供する。ビットb10は加算器88の第2の入力に提供
される。同様に、ビットb11〜b19は、それぞれ、
加算器86、加算器84、加算器82および加算器80
の第2の入力に各々提供される。図7には詳細に示され
ていないが、ビットa13〜a17およびb13〜b1
7の各々は第2の複数の加算器(図示せず)のそれぞれ
の1つに与えられる。前記複数の加算器(図示せず)の
各々は加算器80〜88と同様に機能しかつ、従って、
同様に構成されている。
【0046】前記Cin信号は加算器88の第3の入力
に提供される。加算器88は“S10”と名付けられた
和信号を出力する。さらに、加算器88は“P10”と
名付けられた伝搬信号および“G10”と名付けられた
発生信号の双方をハイキャリールックアヘッド論理回路
102に提供する。
【0047】“C11”と名付けられた信号は加算器8
6の第3の入力に与えられる。加算器86は“S11”
と名付けられた和信号を提供する。加算器86はまた伝
搬信号“P11”および発生信号“G11”を発生す
る。同様に、“C12”と名付けられた信号が加算器8
4の第3の入力に与えられる。加算器84は“S12”
と名付けられた和出力、“P12”と名付けられた伝搬
信号、および“G12”と名付けられた発生信号を提供
する。同様に、“C18”と名付けられた信号が加算器
82の第3の入力に与えられる。加算器82は“S1
8”と名付けられた和信号、“P18”と名付けられた
伝搬信号、および“G18”と名付けられた発生信号を
出力する。“C19”と名付けられたキャリー信号は加
算器80への第3の入力を提供する。加算器80は“S
19”と名付けられた和信号、“P19”と名付けられ
た伝搬信号、および“G19”と名付けられた発生信号
を出力する。加算器80〜88によって出力される伝搬
および発生信号の各々はハイキャリールックアヘッド論
理回路102に与えられる。ハイキャリールックアヘッ
ド論理回路102は“C20”と名付けられたキャリー
信号を出力する。
【0048】図7には示されていないが、加算器92〜
100およびローキャリールックアヘッド論理回路10
4によって発生されるキャリー、和、伝搬、および発生
信号の各々はローステータスフラグ回路108にも供給
される。Jlow信号もまたローステータスフラグ回路
108に供給される。同様に加算器80〜88およびハ
イキャリールックアヘッド論理回路102によって発生
されるキャリー、和、伝搬、および発生信号の各々もま
たハイステータスフラグ回路106に供給される。J
Phigh信号もまたハイステータスフラグ回路106
に供給される。ローステータスフラグ回路108はそれ
ぞれ“Slow”,“Vlow”,“Nlow”,“H
low”および“Zlow”と名付けられた複数の信号
を供給する。ハイステータスフラグ回路106はそれぞ
れ“Shigh”,“Vhigh”,“Nhigh”,
“Hhigh”および“Zhigh”と名付けられた複
数の信号を供給する。ローステータスフラグ回路108
およびハイステータスフラグ回路106の双方からの各
々の出力は結果バス120を介して転送される。
【0049】ファジー論理操作の実行中に、データ処理
システム10のユーザはシステム入力のファジー化を行
うためにニーモニック形式MEM(Membershi
pEvaluation)を有する命令を使用すること
ができる。ここに説明する本発明の構成においては、ユ
ーザはファジー化されるべき入力をMEM命令の実行に
先立ちシステム入力レジスタ64に格納しなければなら
ない。さらに、ユーザはまた実行ユニット14における
第1のインデクスレジスタ(図示せず)にポインタを格
納しなければならない。該ポインタはあるメンバシップ
集合の台形を識別するのに必要な4つの点のスタートア
ドレス位置を指し示す。図2において前に述べたよう
に、前記4つの点はそれぞれポイント1、ポイント2、
スロープ1、およびスロープ2と名付けられている。他
の形式では、ユーザはこれらの値の各々を前記命令のオ
ペランドとして提供することができる。そのような技術
はデータ処理技術においてよく知られておりかつ従っ
て、その構成はここでは詳細に説明しない。ユーザはM
EM命令の実行の後のファジー化されたデータのために
記憶位置を特定しなければならない。1つの形式では、
該ファジー化されたデータの記憶位置を示すために第2
のインデクスレジスタを使用することができる。さら
に、前記システム入力値はアキュムレータ64に格納さ
れるべきである。
【0050】本発明のこの構成においては、MEM命令
の実行は図8に示されるフローチャートに従って行われ
る。該フローチャートはMEM命令の実行の間に行われ
る各々の機能の要約した概観(overview)を提
供する。該機能の各々のより詳細な説明は後にMEM命
令の実行の1つの例について行われる。
【0051】図8に示されるように、MEM命令の実行
の第1のステップは該MEM命令がデコードされた場合
に行われる。前記インデクスレジスタに格納されたアド
レスが読出されかつ内部メモリ32におけるアドレスX
からポイント1およびポイント2の値を同時にアクセス
するために使用される。該アドレスは次に増分されて次
のアドレス、X+2、を指し示す。
【0052】次にデルタ1およびデルタ2の値が同時に
発生される。デルタ1の値はポイント1の値をシステム
入力レジスタ64の内容から減算した結果として発生さ
れる。デルタ2の値はシステム入力レジスタ64の内容
を前記ポイント2の値から減算した結果として発生され
る。デルタ1およびデルタ2の値はともにデルタレジス
タ60に格納される。
【0053】次に、もし前記ポイント1の値が$00に
等しければ、ZP2信号が肯定されかつ2進値1と共に
ラッチされる。同様に、もし前記ポイント2の値が$F
Fに等しければ、ZP4信号が肯定されかつ2進値1と
共にラッチされる。
【0054】次に、スロープ1およびスロープ2の値が
内部メモリ32のアドレスX+2から読出されかつ同時
にデータバッファ42に格納される。該アドレスは次に
増分されて次のアドレス、X+4、をさし示す。
【0055】前記デルタ1およびデルタ2の値が調べら
れていずれかが負であるか否かが判定される。もしデル
タ1またはデルタ2の値のいずれかが負であれば、シス
テム入力値は現在調べられているメンバシップ集合の外
側にある。従って、データバッファ42の内容がクリア
され$00の帰属度にされる。さらに、それぞれラッチ
136および130に格納された前記ZP2およびZP
4の値がクリアされる。
【0056】次に、デルタ1およびデルタ2の値の各々
の上位4ビットが調べられてもしいずれかが$0の16
進値に等しいか否かが判定される。もしデルタ1の値の
上位4ビットが$0に等しければ、Z1フラグが肯定さ
れる。同様にデルタ2の値の上位4ビットが$0に等し
ければ、Z3フラグが肯定される。
【0057】もしZ1フラグが肯定されていれば、デル
タ1の値は乗数(Multiplier)1の値であり
かつスロープ1の値は被乗数(Multiplican
d)1の値である。そうでなければ、スロープ1の値が
乗数1の値でありかつデルタ1の値が被乗数1の値であ
る。もしZ3フラグが肯定されていれば、デルタ2の値
が乗数2の値でありかつスロープ2の値が被乗数2の値
である。そうでなければ、スロープ2の値が乗数2の値
でありかつデルタ2の値が被乗数1の値である。
【0058】デルタ1の値とスロープ1の値の積が次に
発生される。さらに、デルタ2の値とスロープ2の値の
積が同時に2つの同時的乗算操作によって発生される。
【0059】次にもしデルタ1の値とスロープ1の値の
積が$FFより大きければハイサチュレーション・フラ
グ(Shigh)が肯定される。さらに、もしJ
high信号が肯定されればShigh信号が肯定され
る。もしスロープ1またはデルタ1の値のいずれもその
上位4ビットにおいて$0の16進値を持たなければJ
highが肯定される。Jhighはまたポイント1お
よびスロープ1の値が$00の16進値を持つ特別の場
合に肯定される。もしポイント1の値が$00に等しけ
れば、ZP2信号が肯定され、かつもしスロープ1の値
が$00に等しければ、Z2信号が肯定される。
【0060】同様に、もしデルタ2の値とスロープ2の
値の積が$FFより大きければローサチュレーション・
フラグ(Slow)が肯定される。さらに、もしJ
low信号が肯定されればSlow信号が肯定される。
もしスロープ2またはデルタ2の値のいずれもその上位
4ビットにおいて$0の16進値を持たなければJ
lowが肯定される。さらに、Z1およびZ2信号は否
定されなければならない。Jlowはまたポイント2の
値が$FFの16進値を持ちかつスロープ2の値が$0
0の16進値を持つ特別の場合に肯定される。もしポイ
ント2の値が$FFに等しければ、ZP4信号が肯定さ
れ、かつもしスロープ2の値が$00に等しければ、Z
4信号が肯定される。
【0061】もしShighおよびSlow信号が共に
肯定されれば、前記システム入力の帰属度は$FFであ
る。もしShighが否定されかつSlowが肯定され
れば、システム入力の帰属度はデルタ1の値とスロープ
1の値の積に等しい。そうでなければ、帰属度はデルタ
2およびスロープ2の値の積に等しい。
【0062】次に前記帰属度はユーザによって特定され
た内部メモリ32のアドレスに提供されかつMEM命令
の実行が終了する。
【0063】図8に示されるフローチャートはデータ処
理システム10におけるMEM命令の実行の概観を与え
ている。より詳細な例を次に説明する。
【0064】動作において、ユーザは外部に記憶された
あるいは内部メモリ30に記憶されたソフトウェアプロ
グラムによってMEM命令をデータ処理システム10に
与えることができる。MEM命令がデータ処理システム
10の外部のソースから提供されれば、該MEM命令は
外部データバス33を介して外部バスインタフェース3
0に入力されることになる。外部バスインタフェース3
0は次に該MEM命令を内部データバス34を介してC
PU12に与える。もし該MEM命令が内部メモリ32
におけるソフトウェアプログラムによって与えられれ
ば、該MEM命令は内部データバス34を介してCPU
12に与えられることになる。CPU12においては、
実行ユニット14が該MEM命令をバス制御論理回路1
6、制御ユニット20、およびシーケンサ22の各々か
ら受信した制御信号に応じて命令デコード論理回路14
に提供する。命令デコード論理回路18は次に該MEM
命令をデコードして該MEM命令の適切な実行に必要な
複数の制御および情報信号を提供する。
【0065】MEM命令の受信およびデコードに応じ
て、実行ユニット14はシステム入力をファジー化する
(fuzzify)ために必要なステップを開始する。
前に述べたように、ファジー化されるべき値を示すシス
テム入力はMEM命令の実行の前にデータ処理システム
10のユーザによってシステム入力レジスタ64に格納
されている。
【0066】前記システム入力値に加えて、データ処理
システム10のユーザはまたファジー論理操作の特定の
構成における各々のメンバシップ集合を規定する4つの
値を入力することを要求される。例えば、図1におい
て、もし温度がファジー化されていれば、5つのメンバ
シップ集合が規定される必要がある。従って、全システ
ムにおける各々のメンバシップ集合を適切に区別するの
に合計20の値が必要になる。図2において前に説明し
かつ示したように、1つのメンバシップ集合を識別する
のに必要な値はポイント1、ポイント2、スロープ1、
およびスロープ2である。これらの点の各々は8ビット
の2進値によって表される。
【0067】ファジー化操作の間に、メンバシップ集合
の各々がシステム入力値に関して計算されなければなら
ない。図1に示されるファジー論理システムの場合は、
システム入力の温度に対し5つのメンバシップ集合の計
算がある。従って、各々のメンバシップ集合における帰
属度を決定するのに必要な時間量を最少化することが重
要である。
【0068】前記インデクスレジスタにおけるポインタ
は内部メモリ32におけるポイント1の値のアドレスを
指し示す。内部メモリ32からアクセスされた時、前記
ポイント1の値は外部情報バス40を介してデータバッ
ファ42に与えられる。データバッファ42はそのポイ
ント1の値を情報バスA 66を介してA−入力マルチ
プレクサ54に渡す。A−入力マルチプレクサ54は続
いて該ポイント1の値をALU56に提供し、該ALU
56においてその値はシステム入力値から減算されてデ
ルタ1の値を提供する。デルタ1の値は情報バスB 6
8を介してデルタレジスタ60に与えられる。さらに、
データバッファ42は前記ポイント1の値をバッファド
・データ1信号を介してフラグ発生論理回路48に提供
する。図5のフラグ発生論理回路48において、該ポイ
ント1の値の各ビットがNORゲート112の入力に提
供される。NOR操作の結果、すなわちZ2信号、は前
記タイミング制御信号に従って決定される時点でラッチ
136に格納される。
【0069】本発明のこの構成においては、ポイント1
およびポイント2の値は同時に内部メモリ32からアク
セスされる。双方の値は外部情報バス40を介してデー
タバッファ42に転送される。データバッファ42はそ
のポイント2の値を情報バスB 68を介してB−入力
マルチプレクサ58に受け渡す。B−入力マルチプレク
サ58は次にそのポイント2の値をALU56に与え、
該ALU56においてシステム入力値が減算されてデル
タ2の値を提供する。情報バスB 68はデルタ2の値
をデルタレジスタ60に提供する。さらに、データバッ
ファ42は該ポイント2の値をバッファド・データ2信
号を介してフラグ発生論理回路48に提供する。図5の
フラグ発生論理回路48においては、該ポイント2の値
の各ビットはANDゲート138の入力に与えられる。
該AND操作の結果は前記タイミング制御信号に従って
決定される時点でラッチ130に格納される。該AND
操作はポイント2の値が$FFに等しいか否かを検出す
る。
【0070】ALU56は上に述べた各々の減算操作を
実行し、それによってデルタ1およびデルタ2の値が同
時に計算されるようにする。ALU56は通常の動作モ
ードにある場合は16ビットの演算操作を行う。さら
に、ALU56はスプリットモードの動作状態にある時
2つの独立の8ビットの計算を同時に行うことができ
る。2つの8ビットの計算は同時に行われるから、16
ビットの操作のみを行っていたALUの場合のように何
らのサイクルも浪費されない。従って、ALU56は8
ビットの演算を行う場合に実行ユニット18の速度およ
び効率を大幅に増大する。ALU56の動作は後により
詳細に説明する。
【0071】インデクスレジスタのポインタは次に内部
メモリ32のスロープ1の値のアドレスを指し示す。内
部メモリ32は3ビットのスロープ1の値および8ビッ
トのスロープ2の値を外部情報バス40を介してデータ
バッファ42に与える。データバッファ42は前記スロ
ープの値の双方を16ビットのバッファド・データ信号
を介してフラグ発生論理48に受け渡す。
【0072】デルタ1およびデルタ2の値の計算に際し
かつスロープ1およびスロープ2の値の受信に応じて、
フラグ発生論理回路48はイネーブルされて現在試験さ
れているメンバシップ集合における帰属度を決定するの
に必要な複数のフラグを発生する。図5に示されるよう
に、デルタ1、デルタ2、スロープ1、およびスロープ
2の値の上位4ビットはそれぞれNORゲート110、
NORゲート116、NORゲート140、およびNO
Rゲート146に提供される。
【0073】NORゲート140はS2信号を発生しか
つNORゲート146はS4信号を発生する。S2信号
はスロープ1の値の上位4ビットが$0の16進値を有
する場合に肯定される。同様に、S4信号はスロープ2
の値の上位4ビットが$0の16進値を有する場合に肯
定される。
【0074】フラグ発生論理48においては、スロープ
1およびスロープ2の値はそれぞれバッファド・データ
信号によってNORゲート112およびNORゲート1
18に提供される。Z2フラグはスロープ1の値が16
進$00に等しい場合に肯定される。NORゲート11
2によって発生されるZ2フラグはラッチ136のデー
タ入力およびANDゲート134に与えられる。Z2フ
ラグは前記タイミング制御信号が第1の所定の論理値を
有する場合にラッチ136においてラッチされる。さら
に、該タイミング制御信号が第2の所定の論理値を有す
る場合に、ラッチ136は前にラッチされたZP2信号
をANDゲート134に提供する。ANDゲート134
はJPhigh信号を発生するために使用される。
【0075】Z4フラグはスロープ2の値が16進$0
0に等しい場合に肯定される。NORゲート118によ
って発生されるZ4フラグはANDゲート132に提供
される。ANDゲート138の出力はラッチ130のデ
ータ入力に与えられる。ANDゲート138の出力は前
記タイミング制御信号が第1の所定の論理値を有する場
合にラッチ130においてラッチされる。さらに、前記
タイミング制御信号が第2の所定の論理値を有する場合
に、ラッチ130は前にラッチしたZP4信号をAND
ゲート132に提供する。ANDゲート132はJ
Plow信号を発生するために使用される。
【0076】Z1フラグ信号はデルタ1の値の上位4ビ
ットの各々が否定された場合にのみ肯定される。同様
に、Z3フラグ信号はデルタ2の値の上位4ビットが$
0の16進値を有する場合にのみ肯定される。各フラ
グ、Z1およびZ3、は次にオペランド割当てステップ
の間に使用され、該オペランド割当てステップは後にさ
らに詳細に説明する。
【0077】デルタ1およびデルタ2の値に加えて、結
果バス120もまたNhighおよびNlow信号をO
Rゲート114に転送してNmem信号を発生する。N
low信号はALU56によって提供されるデルタ2の
値がゼロより小さい場合に肯定される。同様に、N
high信号はもしALU56によって提供されるデル
タ1の値がゼロより小さければ肯定される。前に述べた
ように、デルタ1またはデルタ2の値のいずれかがゼロ
より小さければシステム入力は試験されているメンバシ
ップ集合のメンバではない。
【0078】従って、Nmem信号が肯定された時、シ
ステム入力は現在試験されているメンバシップ集合にお
いてゼロの帰属度を有することになる。続いて、N
mem信号がA−入力制御論理52に与えられる。肯定
された時、該Nmem信号はA−入力制御論理52がA
−制御信号を肯定できるようにし、それによってA−入
力マルチプレクサ52が$00の16進値をALU56
に提供できるようにする。続いて、ALU56は$00
の値を情報バスB 68を介してデータバッファ42に
提供する。
【0079】さらに、Nmem信号が肯定された時、ラ
ッチ130はリセットされそれによってZP4信号が否
定される。従って、JPlow信号は誤って肯定される
ことはない。同様に、ラッチ136がリセットされそれ
によってZP2信号が否定されるようにする。従って、
Phigh信号は誤って肯定されることはない。N
mem信号、S2信号、およびZ1信号は各々NORゲ
ート142に提供されてJShigh信号を発生する。
ShighおよびJPhigh信号は次にOR演算さ
れてJhigh信号を提供する。
【0080】JPhigh信号はポイント1の値および
スロープ1の値が共に$00の16進値を有する特別の
場合を表示するために提供される。そのような場合は、
メンバシップ集合が、帰属度がポイント1の境界値にお
いて$FFの値を有するように配置された部分台形であ
る場合に発生する。図1に示される「寒い」温度のメン
バシップ関数はこの特別の場合の例である。Jhigh
信号はALU56に提供されて飽和フラグ、
high、が前記入力値が評価されているメンバシッ
プ集合内にある場合に肯定される。Jhigh信号もま
たZ1,S2およびNmem信号がすべて否定されれば
肯定される。これはデルタ1の値もスロープ1の値も$
0Fまたはそれ以下ではなく、かつ現在の入力が前記メ
ンバシップ集合内にある場合に対応する。
【0081】Nmem信号、S4信号、およびZ3信号
は各々NORゲート148に与えられてJSlow信号
を発生する。JSlow信号およびJPlow信号は次
にOR演算されてJlow信号を提供する。
【0082】Jlow信号はポイント2の値が$FFの
16進値を有しかつスロープ2の値が$00の16進値
を有する特別の場合を表示するために与えられる。その
ようなケースは、メンバシップ集合が、帰属度がポイン
ト2の境界値における$FFで終了するように配置され
た部分台形である場合に発生する。図1に示された「暑
い」温度のメンバシップ関数はこの特別の場合の例であ
る。Jlow信号はALU56に提供されて飽和フラ
グ、Slow、が前記入力値が現在評価されているメン
バシップ集合内にある場合に肯定されるようにする。J
low信号もまたZ3,S4およびNmem信号がすべ
て否定されれば肯定される。これはデルタ2の値もスロ
ープ2の値も$0Fまたはそれ以下ではなく、かつ現在
の入力が前記メンバシップ集合内にある場合に対応す
る。
【0083】しかしながら、もし前記システム入力値が
現在試験されているメンバシップ集合内にある場合は、
mem信号は否定されかつZ1およびZ3フラグ信号
がオペランド割当て論理50および結果選択論理46の
双方に提供されて前記メンバシップ集合内のデイグリー
オブメンバシップを決定する。
【0084】あるメンバシップ集合における帰属度は該
メンバシップ集合を規定する台形の飽和点、デルタ1お
よびスロープ1の積、またはデルタ2およびスロープ2
の積の内の最小値を得ることにより決定される。図2で
示される例においては、前記飽和点は$FFの16進値
を有し、これは0.996の小数であると解釈される。
【0085】デルタ1およびスロープ1、そしてデルタ
2およびスロープ2の双方の積を計算するために、高速
乗算操作を保証するための方法が開発された。技術上一
般に知られているように、乗算操作は乗数(multi
plier)が被乗数(multiplicand)よ
り小さい場合により迅速に完了する。もし、この例のよ
うに、前記メンバシップ集合の飽和値が$FFであれ
ば、数学的な解析によって積を形成するデルタまたはス
ロープ項の少なくともいずれか1つは$0Fより小さい
かまた等しくなければならないことが分かる。しかしな
がら、この場合の1つの例外は現在のシステム入力値が
前記メンバシップ集合の外側にあるかあるいは前記メン
バシップ集合の飽和領域にある場合に発生する。
【0086】前記デルタおよびスロープ値の各々の上位
4ビットを調べることにより、$0Fまたはそれにより
小さな16進値を有する第1の項は乗数として使用でき
る。したがって、乗算操作を完了させるのに必要な時間
が短縮される。もしデルタ1およびスロープ1の値が双
方とも$0Fより大きな16進値を有しておれば、J
high信号はShigh飽和フラグが肯定されるよう
にする。同様に、もしデルタ2およびスロープ2の値の
双方とも$0Fより大きな16進値を有していれば、J
low信号はSlow飽和フラグを肯定されるようにす
る。
【0087】Z1フラグ信号はデルタ1またはスロープ
1の値が前記4ビットの乗数1信号として提供されるべ
きか否かを示すために使用される。同様に、Z3フラグ
信号はデルタ2またはスロープ2の値が4ビットの乗数
2信号として提供されるべきか否かを示すために使用さ
れる。図6に示されるオペランド割当て論理50は行な
われるべき2つの乗算操作の各々に対する乗数の値を決
定するための1つの構成を与える。
【0088】図6に示されるように、マルチプレクサ7
2はデルタ1またはスロープ1の値が前記4ビットの乗
数1信号に割当てられるべきか否かを判定する。もしZ
1フラグ信号が肯定されれば、デルタ1の値が前記4ビ
ットの乗数1信号を介して転送される。もしZ1信号が
肯定されていなければ、4ビットの乗数1信号にはスロ
ープ1の値が割当てられることになる。さらに、もしZ
1信号が肯定されていれば、マルチプレクサ74はスロ
ープ1の値を8ビットの被乗数1信号としてAhigh
に提供する。もしZ1信号が否定されていれば、デルタ
1の値が8ビットの被乗数1信号に割当てられる。
【0089】同様に、マルチプレクサ76はデルタ2ま
たはスロープ2の値がZ3フラグ信号の値に基づき乗数
2信号に割当てられるべきであるか否かを判定する。も
しZ3フラグ信号が肯定されれば、マルチプレクサ76
はデルタ2信号を乗数2信号として提供する。もしZ3
信号が肯定されていなければ、4ビットの乗数2信号は
スロープ2の値を割当てられる。さらに、もしZ3フラ
グ信号が肯定されていれば、マルチプレクサ78はスロ
ープ2信号を被乗数2信号として提供する。もしZ3信
号が否定されていれば、デルタ2の値が8ビットの被乗
数1信号に割当てられる。
【0090】乗数1および乗数2信号はオペランド割当
て論理50からA−入力制御論理回路52に転送され
る。A−入力制御論理回路52は乗数1および乗数2信
号の各々を処理してA−入力マルチプレクサ54の特定
のシフト動作を決定するA−制御信号を提供する。
【0091】動作の間に、デルタ1またはスロープ1の
値のいずれかである、乗数1信号はA−入力制御論理5
2に与えられて前記被乗数1信号が第1の乗算操作を行
うために0,1または2のいずれだけシフトされるべき
かを決定する。さらに、A−入力制御論理52は被乗数
1信号を否定するかあるいはゼロにする。A−制御信号
はA−入力マルチプレクサ54に提供されて行われるべ
き操作の形式を表示する。被乗数1信号は情報バスA
66のハイ側を介してA−入力マルチプレクサ54に転
送される。A−入力制御論理52は被乗数1信号をA−
制御信号に従って修正しかつその修正された被乗数1信
号をALU56に提供する。同様に、デルタ2またはス
ロープ2の値のいずれかである、乗数2信号もまたA−
入力制御論理52に提供される。乗数2信号は第2の乗
算操作を同時に行うために被乗数2信号を0,1または
2のいずれかだけシフトするために使用される。さら
に、A−入力制御論理52は被乗数2信号を否定しある
いはゼロにすることができる。乗数2信号は情報バスA
66のロー側を介してA−入力マルチプレクサ54に
転送される。A−入力制御論理52は被乗数2信号をA
−制御信号に従って修正し、かつ次にその修正された被
乗数2信号をALU56に提供する。
【0092】B−入力マルチプレクサ58の制御はME
M命令のデコード中に発生されかつマイクロ−ROM制
御バス65を介して転送される外部のマイクロ−ROM
制御信号によって与えられる。そのようなマイクロ−R
OM制御信号の発生、ルーティング、および使用はデー
タ処理技術においてよく知られており、従って、ここで
詳細には説明しない。ここに述べた例においては、$0
0の初期化された部分積がB−入力マルチプレクサ58
を介してALU56に与えられる。
【0093】A−入力制御論理回路52から適切なA−
制御信号を受信すると、A−入力マルチプレクサ54は
修正された被乗数1および修正された被乗数2信号を、
それぞれ、ALU56のハイ側およびロー側に提供す
る。B−入力マルチプレクサ58は同時に初期化された
部分積を、それぞれ、ALU56のハイ側およびロー側
に提供する。
【0094】ALU56は図7にさらに詳細に示されて
いる。動作においては、前記修正された被乗数2信号が
加算器92〜100のそれぞれの1つに提供される。
“a9”と名付けられた、前記修正された被乗数2信号
のビット9は加算器92の第1の入力に接続されてい
る。同様に、修正された被乗数2信号のビット8〜0
は、それぞれ、加算器94,96,98および100の
第1の入力に接続されている。“b9”と名付けられ
た、前記初期化された部分積のビット9は加算器92の
第2の入力に接続されている。前記初期化された部分積
のビット8〜0はまた、それぞれ、加算器94,96,
98および100の第2の入力に接続されている。
【0095】“C0”と名付けられたキャリー信号が加
算器100の第3の入力に与えられる。該C0信号は一
般に実行されている操作および乗数2信号の値に応じて
ALU56の外部のソースによって与えられる。これら
の入力信号の各々に基づき、加算器100は3つの出力
信号を提供する。第1の出力信号、すなわちS0信号、
は次式で表わされるものに等しい。 S0=a0=:b0=:c0 (1) なお、ここで=:なる記号はほぼ等しいことを表わすも
のとする。
【0096】第2の出力信号は前記発生、またはG0信
号であり、これは次式に等しい。 G0=a0・b0 (2)
【0097】第3の出力信号は伝搬、またはP0信号で
あり、これは次式に等しい。 P0=a0+b0 (3)
【0098】前記G0およびP0信号の双方に応じて、
ローキャリールックアヘッド論理回路104はC1信号
を発生し、これは加算器98の第3の入力に与えられ
る。該C1信号は次のように表わされる。 C1=G0+P0・C0 (4)
【0099】a1,b1およびC1信号の各々に応じ
て、加算器98は“G1”と名付けられた信号を発生し
かつ“P1”と名付けられた信号をローキャリールック
アヘッド論理回路104に伝搬する。
【0100】G1,P1およびC1信号に応じて、ロー
キャリールックアヘッド論理回路104はC2信号を発
生し、これは加算器96の第3の入力に与えられる。該
C2信号は次の式で計算される。 C2=G1+P1(G0+P0)C0 (5)
【0101】加算器96は次に“G2”と名付けられた
信号を発生しかつ“P2”と名付けられた信号をローキ
ャリールックアヘッド論理回路104に伝搬する。
【0102】続いて、ローキャリールックアヘッド論理
回路104はキャリー信号を発生し、該キャリー信号は
ALU56のロー側の残りの加算器(94,92)の各
々の第3の入力に与えられる。各々の残りのキャリー信
号は前の発生項および前の伝搬およびキャリー項の積の
和として計算される。ここには示されていないが、A−
入力ロー側およびB−入力ロー側によって与えられる値
のビット3〜7の和を計算するために付加的な加算器が
使用される。
【0103】最後の加算器、すなわち加算器92、から
伝搬(propagate)および発生(genera
te)項を受信すると、ローキャリールックアヘッド論
理回路104は“C10”と名付けられたキャリー信号
を発生する。該C10信号はバッファ90に与えられ
る。スプリットモード制御信号に応じて、バッファ90
は前記C10キャリー信号をALU56のハイ側の次の
加算器に送るか、あるいはそこで発生した他のキャリー
値を提供する。スプリットモード制御信号は実行ユニッ
ト14の外部のソースによって与えられる。例えば、M
EM命令の実行の間に、スプリットモード制御信号が命
令のデコード中に発生される。さらに、該スプリットモ
ード制御信号はデータ処理システムのユーザによって特
定される命令以外のソースによって与えられてもよい。
【0104】もし前記C10キャリー信号が加算器88
にCinキャリー信号として送られれば、ALU56は
技術的によく知られた典型的な16ビットの演算論理ユ
ニットとして動作する。しかしながら、もし該Cinキ
ャリー信号がローキャリールックアヘッド論理回路10
4以外のソースによって与えられれば、ALU56はス
プリット動作モードで動作する。スプリット動作モード
においては、ALU56は関係のない2つの8ビットの
結果を同時に提供することができる。MEM命令の実行
の間に、ALU56はスプリット動作モードで動作して
同時にデルタ1信号およびスロープ1信号の積ならびに
デルタ2信号およびスロープ2信号の積の双方を提供す
る。さらに、ALU56はまたスプリットモードで動作
している間に同時にデルタ1およびデルタ2の値を計算
している。従って、スプリット動作モードで動作するこ
とにより、ALU56は8ビットの操作の結果をより迅
速かつ効率的に提供することができる。
【0105】さらに、ALU56においては、ローステ
ータスフラグ回路108はALU56のロー側の動作に
関するステータス情報を提供する。ローステータスフラ
グ回路108は複数のステータス信号、Slow,V
low,Nlow,HlowおよびZlowを提供し、
これらの各々は結果バス120を介して転送される。こ
こには示されていないが、加算器92〜100の出力の
各々はローステータスフラグ回路108に提供される。
そのようなルーティングは一般にデータ処理技術におい
て知られておりかつ当業者に容易に実施されるべきもの
である。ステータス信号の各々はALU56のロー側に
よって発生される複数の和およびキャリー信号を組合わ
せることによって決定される。
【0106】ここに述べた本発明の構成においては、S
low信号は次の式で表わされる。 Slow=S+S+Jlow (6)
【0107】Vlow,Nlow,HlowおよびZ
low信号はそれぞれ次のように表わされる。 Vlow=C6=:C7 (7) Nlow=S8 (8) Hlow=C3、および (9) Zlow=反転(S+S+S…+S) (10)
【0108】さらに、加算器92〜100の各々によっ
て出力される和信号はALU56から結果バス120を
介して転送される。加算器92〜100によって出力さ
れる和信号の各々は乗数2および被乗数2信号の積のそ
れぞれのビットを表わす。次に、乗数2および被乗数2
信号の積はデルタ2信号およびスロープ2信号の積に等
しい。
【0109】動作の間に、ALU106の上位側は下位
側と同様に機能する。“Cin”と名付けられたキャリ
ー信号は加算器88の第3の入力に与えられる。前に述
べたように、Cin信号はALU106の外部のソース
によって与えられてもよく、あるいはローキャリールッ
クアヘッド論理回路104からの前記C10キャリー信
号によって与えられてもよい。前記3つの入力信号の各
々に基づき、加算器88は3つの出力信号を提供する。
第1の出力信号、すなわちS10信号は次式で表され
る。 S10=a10=:b10=:Cin (11)
【0110】第2の出力信号は発生、またはG10信号
であり、これは次式に等しい。 G10=a10・b10 (12)
【0111】第3の出力信号は伝搬、またはP10信号
であり、これは次式に等しい。 P10=a10+b10 (13)
【0112】前記G10およびP10信号の双方に応答
して、ハイキャリールックアヘッド論理回路102はC
11信号を発生し、これは加算器86の第3の入力に与
えられる。該C11信号は次式で表わされる。 C11=G10+P10・C10 (14)
【0113】a11,b11およびC11信号の各々に
応じて、加算器86は“G11”と名付けられた発生信
号および“P11”と名付けられた伝搬信号をハイキャ
リールックアヘッド論理回路102に提供する。
【0114】G11,P11およびC11信号に応じ
て、ハイキャリールックアヘッド論理回路102はC1
2信号を発生し、これは加算器84の第3の入力に与え
られる。該C12信号は次の式によって計算される。 C12=G11+P11(G10+P10)C10 (15)
【0115】加算器84は次に“G12”と名付けられ
た発生信号および“P12”と名付けられた伝搬信号を
ハイキャリールックアヘッド論理回路102に提供す
る。
【0116】次に、ハイキャリールックアヘッド論理回
路102はキャリー信号を発生し、該キャリー信号はA
LU56のハイ側の残りの加算器(80,82)の各々
の第3の入力に提供される。残りのキャリー信号の各々
は前の発生項および前の伝搬項とキャリー項との積の和
として計算される。ここでは図示されていないが、付加
的な加算器が使用されてA−入力ハイ側およびB−入力
ハイ側の双方によって与えられる値のビット13〜17
の和を計算する。
【0117】最後の加算器、すなわち加算器80、から
伝搬および発生項を受信すると、ハイキャリールックア
ヘッド論理回路102は“C20”と名付けられたキャ
リー信号を提供する。該C20信号は後の操作に使用す
るために結果バス120を介してALU56から出力さ
れる。
【0118】さらに、ALU56において、ハイステー
タスフラグ回路106はALU56のハイ側の動作に関
するステータス情報を提供する。ハイステータスフラグ
回路106は複数のステータス信号、Shigh,V
high,Nhigh,HhighおよびZhigh
提供し、これらの各々は結果バス120を介して転送さ
れる。加算器80〜88の出力の各々はハイステータス
フラグ回路106に提供される。前と同様に、そのよう
なルーティングはデータ処理技術において一般に知られ
ておりかつ当業者に容易に実施されるべきものである。
前記ステータス信号の各々はALU56のハイ側によっ
て発生される複数の和およびキャリー信号を組合わせる
ことによって決定される。
【0119】ここに述べた本発明の構成において、前記
high信号は次の式で表わされる。 Shigh=S19+S18+Jhigh (16)
【0120】前記Vhigh,NhighおよびH
high信号はそれぞれ次のように表わされる。 Vhigh=C16=:C17 (17) Nhigh=S18 (18) Hhigh=C13、および (19) Zhigh=反転(S19+S18+S17+…+S10) (20)
【0121】さらに、加算器80〜88の各々によって
出力される和信号は結果バス120を介してALU56
から転送される。加算器80〜88によって出力される
前記和信号の各々は乗数1および被乗数1信号の積のそ
れぞれのビットを表わす。従って、乗数1信号および被
乗数1信号の積はデルタ1信号およびスロープ1信号の
積に等しい。
【0122】ALU56のハイおよびロー側からのステ
ータスビットの各々は次に結果選択論理46に提供され
る。結果選択論理46は続いて前記SlowおよびS
high信号の各々を使用してデルタ1およびスロープ
1信号の積、デルタ2およびスロープ2信号の積、また
は$FFの飽和値のいずれが調べられているメンバシッ
プ集合における帰属度として供給されるべきかを決定す
る。
【0123】システム入力値がメンバシップ集合の台形
内にある全ての場合に、Shighが肯定されるか、S
lowが肯定されるか、或いはShighおよびS
lowの双方が肯定される。もし前記SlowおよびS
high信号の双方が肯定されれば、システム入力は前
記飽和点(この例では、$FF)の帰属度を有する調べ
られているメンバシップ集合のメンバである。従って、
lowおよびShighの双方が肯定される場合は、
結果選択論理回路46はフォース(Force)$FF
信号を肯定してデータバッファ42の内容を$FFにな
るようにしシステム入力が前記メンバシップ集合のメン
バでありかつ$FFの帰属度を有することを示す。
【0124】もしSlow信号が肯定されているが、S
high信号は否定されている場合は、結果選択論理回
路46はデルタ1およびスロープ1信号の積をデータバ
ッファ42に格納するために選択(Select)信号
を肯定する。同様に、もしS low信号が否定されてい
るが、Shigh信号が肯定されている場合は、結果選
択論理回路は前記選択信号を否定してデルタ2およびス
ロープ2信号の積をデータバッファ42に格納させる。
【0125】もしShighおよびSlowの双方が否
定されれば、システム入力値は前記境界値によって規定
されるメンバシップ集合の台形内に無いことになる。シ
ステム入力値がメンバシップ集合の台形の外側にある全
ての場合に、Nmem信号が肯定される。該Nmem
号は、次に、A−入力制御論理52に乗算操作の間にA
LU56にゼロが入力されることを選択させる。結果選
択論理回路46は前記フォース$FF信号および前記選
択信号の双方を否定しかつ$00の16進値がデータバ
ッファ42に格納される。結果選択論理回路46は、従
って、MEMの帰属度の計算の結果の値を決定しかつそ
の結果をデータバッファ42に提供する。実行ユニット
14の外部のソースから要求された場合、データバッフ
ァ42はその結果を外部情報バス40を介して提供す
る。
【0126】
【発明の効果】単一のソフトウェア命令を使用してメン
バシップ集合の帰属度を決定する回路および方法が提供
された。ここに説明した例においては、該ソフトウェア
命令はMEM命令である。該MEM命令によってプログ
ラムされた時、データ処理システム10は非常に高速で
実行される単一のソフトウェア命令によってメンバシッ
プ集合の帰属度を決定することができる。従来の構成は
多量のソフトウェアコードを必要とし、これは一般に実
行するのにかなり多くの時間を必要とする。帰属度の計
算を行う典型的なソフトウェアプログラムにおいて、M
EM命令はかなりの数のソフトウェア命令を軽減する。
例えば、MC68HC11の命令セットを使用して実施
されるソフトウェアプログラムは典型的には帰属度の計
算を行うのに31個の命令を必要とする。MEM命令は
MC68HC11のプログラムの31個の命令全てに置
換えられる。更に、MEM命令は結果を帰属度の計算の
従来のソフトウェアによる実施の場合よりも71サイク
ルまで早く提供する。
【0127】MEM命令は帰属度の計算をより早くかつ
効率的に行うことができるが、その理由はそれがデータ
処理システム10の命令セットのメンバであるからであ
る。命令セットのメンバである命令はその命令をエミュ
レートするために該データ処理システム10をプログラ
ムする外部ルーチンよりも迅速に実行されることはよく
知られている。更に、オペランド割り当て論理回路50
によって行われる機能はまたMEM命令を実現するデー
タ処理システム10の性能を増強する働きを成す。オペ
ランド割り当て論理回路50は帰属度の計算の間に使用
される乗数または被乗数の内の少なくとも1つは上位4
ビットにおいて$0の16進値を持たなければならない
ことを認識する。従って、上位4ビットに$0を有する
値を乗数とすることにより乗算操作がかなり短縮されか
つよりタイミングよく完了することになる。
【0128】更に、2つの8ビットの結果が同時に生成
されるスプリットモードでALU56を動作させること
により、更に時間が節約される。ALU56はスプリッ
ト動作モードにある時2つの8ビットの結果を生成し、
スプリット動作モードにない場合に16ビットの結果を
生成するために使用できる独特の回路を提供する。ここ
に説明した実施例の性格によって、8ビットの結果のみ
が前記デルタ値およびスロープ値の減算および乗算の間
に生成される。従って、ALU56はMEM命令の実行
中にスプリットモードで動作しかつ2つの減算または乗
算操作が同時に行われる。従って、これらの操作を行う
のに通常必要な時間はスプリットモードの動作の間は実
効的に半分になる。
【0129】ここに説明した本発明の構成は実例によっ
てのみ与えられている。しかしながら、ここに述べた機
能を実行するために数多くの他の構成も存在し得る。例
えば、メンバシップ集合を定義するのに必要なポイント
は、メモリにあらかじめ格納されたデータ値としてより
はむしろ、MEM命令のオペランドとしてデータ処理シ
ステム10のユーザによって提供することができる。更
に、ALU56は32ビットの結果が得られるように構
成することもできる。乗算または減算操作のいずれかの
場合に、前記ロー側およびハイ側の各々はスプリット動
作モードの間に16ビットの結果を生成することにな
る。
【0130】本発明の原理がここに説明されたが、当業
者には前記説明は実例によってのみ行われかつ本発明の
範囲を制限するものとして行われたものでないことは明
らかに理解されるべきである。従って、添付の特許請求
の範囲により、本発明の真の精神および範囲内にある本
発明の全ての変形をカバーするものと考えている。
【図面の簡単な説明】
【図1】ファジー論理を説明するために使用される幾つ
かの概念および基本的な用語を示すグラフである。
【図2】図1のメンバシップ集合を詳細に示すグラフで
ある。
【図3】本発明に係わるデータ処理システムの構成を示
すブロック図である。
【図4】図3の実行ユニットの構成を示すブロック図で
ある。
【図5】図4のフラグ発生論理回路の構成を示す論理回
路である。
【図6】図4のオペランド割り当て論理回路の構成を示
すブロック図である。
【図7】図4の演算論理ユニットの構成を示すブロック
図である。
【図8】本発明に係わるMEM命令の実行の間に行われ
る機能の流れを示すフローチャートである。
【符号の説明】
10 データ処理システム 12 中央処理ユニット(CPU) 14 実行ユニット 16 バス制御論理 18 命令デコード論理 20 制御ユニット 22 シーケンサ 24 発振器 26 電源回路 28 タイミング回路 30 外部バスインタフェース 32 内部メモリ 34 内部データバス 36 内部アドレスバス 38 タイミング制御バス 42 データバッファ 46 結果選択論理 48 フラグ発生論理 50 オペランド割り当て論理 52 A−入力制御論理 54 A−入力マルチプレクサ 56 ALU 58 B−入力マルチプレクサ 60 デルタレジスタ 64 システム入力レジスタ 66 情報バスA 68 情報バスB 70 フラグバス 120 結果バス
フロントページの続き (72)発明者 ジェイムズ・エル・ブロスジニ アメリカ合衆国テキサス州78749、オース チン、フェンス・ライン 6901

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 データ処理システム(10)においてフ
    ァジー論理操作を行う方法であって、前記ファジー論理
    操作は複数の境界値によって規定される所定のメンバシ
    ップ集合におけるある入力点のメンバシップを決定し、
    前記方法は、 前記データ処理システム(10)においてファジー論理
    操作の実行を開始するためにメンバシップ計算命令を受
    ける段階、 前記メンバシップ計算命令をデコードして複数の制御信
    号を提供する段階(18,20,22)、 前記複数の境界値の内の第1のものを前記入力値から減
    算して第1のデルタ値を生成しかつ同時に前記入力値を
    前記複数の境界値の内の第2のものから減算して第2の
    デルタ値を生成する段階(56)、 前記第1のデルタ値および前記複数の境界値の内の第3
    のものを乗算して第1の結果を提供しかつ同時に前記第
    2のデルタ値と前記複数の境界値の内の第4のものを乗
    算して第2の結果を提供する段階(56)、そして帰属
    度信号を提供する段階であって、該帰属度信号は前記第
    1のデルタ値または前記第2のデルタ値がゼロより小さ
    い場合に前記入力点が前記所定のメンバシップ集合に含
    まれていないことを表示し、前記帰属度信号はもし前記
    第1のデルタ値も前記第2のデルタ値もゼロより小さく
    なければ前記第1の結果、前記第2の結果、または前記
    複数の境界値の内の第5のものの内の最小値に等しくな
    る前記段階(46)、 を具備することを特徴とするデータ処理システム(1
    0)においてファジー論理操作を行う方法。
  2. 【請求項2】 ファジー論理操作を行うためのデータ処
    理システム(10)であって、前記ファジー論理操作は
    複数の境界値によって規定される所定のメンバシップ集
    合におけるある入力点のメンバシップを決定し、前記デ
    ータ処理システムは、 前記データ処理システムにおけるファジー論理操作の実
    行を開始するためにメンバシップ計算命令を受信するた
    めの入力手段(14)であって、該入力手段は前記入力
    点をも受信するもの、 前記メンバシップ計算命令をデコードして複数の制御信
    号を提供するための命令デコード手段(18,20,2
    2)であって、前記命令デコード手段は前記入力手段に
    結合されて前記メンバシップ計算命令を受信するもの、 前記複数の境界値を記憶しかつ提供するためのメモリ手
    段(32)、 前記ファジー論理操作の実行の間に複数のデルタ値を記
    憶するためのレジスタ(60)、 前記メモリ手段に結合されて前記複数の境界値の各々を
    選択的に受信するため演算論理回路(56)であって、
    該演算論理回路は前記入力手段に結合されて前記入力点
    を受信し、前記演算論理回路は前記命令デコード手段に
    結合されて前記複数の制御信号の一部を受取り、前記演
    算論理回路は前記レジスタに結合されて前記複数のデル
    タ値の一部を受取り、前記演算論理回路は第1および第
    2のデルタ値を発生するか或いは第1および第2の積を
    発生するもの、そして前記演算論理回路に結合されて前
    記第1のデルタ値を受けるための第1の入力、前記演算
    論理回路に結合されて前記第2のデルタ値を受けるため
    の第2の入力、前記演算論理回路に結合されて前記第1
    の積を受入れるための第3の入力、前記演算論理回路に
    結合されて前記第2の積を受入れるための第4の入力、
    そして前記複数の境界値の内の第5のものを受入れるた
    めの第5の入力を有する結果選択装置(46)であっ
    て、該結果選択装置は帰属度信号を提供し、該帰属度信
    号は前記第1のデルタ値または前記第2のデルタ値のい
    ずれかがゼロより小さい場合には前記入力点が前記所定
    のメンバシップ集合に含まれていないことを表示し、前
    記帰属度信号は前記第1の結果、前記第2の結果、また
    はもし前記第1のデルタ値も前記第2のデルタ値もゼロ
    より小さくなければ前記複数の境界値の内の第5のも
    の、の内の最小値に等しくなるもの、 を具備することを特徴とするファジー論理操作を行うた
    めのデータ処理システム(10)。
  3. 【請求項3】 演算操作を行うためのデータ処理システ
    ム(10)であって、 複数のデータ値を受入れるための入力手段(18)、 前記複数のデータ値に応じて複数の制御信号を発生する
    ための制御手段(20)であって、該制御手段は前記入
    力手段に結合されているもの、そして演算論理ユニッ
    ト、 を具備し、該演算論理ユニットは、 前記複数のデータ値および前記複数の制御手段の双方を
    受入れるための入力手段(42)、 第1の複数の加算器(92〜100)であって、該第1
    の複数の加算器の各々は前記複数のデータ値の内の第1
    のものの第1の部分を受入れるための第1の入力および
    前記複数のデータ値の内の第2のものの第1の部分を受
    入れるための第2の入力を有し、前記第1の複数の加算
    器の各々は和信号およびキャリー信号を提供し、前記第
    1の複数の加算器の内の第1のものは初期キャリー信号
    を受けるための第3の入力を有し、前記第1の複数の加
    算器の内の残りの加算器の各々は前記第1の複数の加算
    器の前のものによって発生された前記キャリー信号を受
    入れるための第3の入力を有するもの、 第2の複数の加算器(80〜88)であって、該第2の
    複数の加算器の各々は前記複数のデータ値の第1のもの
    の第2の部分を受入れるための第1の入力、前記複数の
    データ値の内の第2のものの第2の部分を受入れるため
    の第2の入力を有し、前記第2の複数の加算器の各々は
    和信号およびキャリー信号を提供し、前記第2の複数の
    加算器の内の第1のものはキャリーイン信号を受入れる
    ための第3の入力を有し、前記第2の複数の加算器の内
    の残りの加算器の各々は前記第2の複数の加算器の前の
    ものによって発生されるキャリー信号を受入れるための
    第3の入力を有するもの、そして前記制御手段に結合さ
    れて前記複数の制御信号の内の第1のものを受入れるた
    めの第1の入力および前記第1の複数の加算器の内の最
    後のものによって発生される前記キャリー信号を受入れ
    るための第2の入力を有するバッファ(90)であっ
    て、該バッファは前記複数の制御信号の内の第1のもの
    に応じて前記第2の複数の加算器の内の第1のものへの
    キャリーイン信号として前記第1の複数の加算器の内の
    最後のものによって発生されるキャリー信号または所定
    のデータ値を提供するもの、 を具備することを特徴とする演算操作を行うためのデー
    タ処理システム(10)。
JP05154500A 1992-06-17 1993-06-01 データ処理システムにおいてファジー論理操作を行う方法 Expired - Fee Related JP3121712B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US899,975 1992-06-17
US07/899,975 US5295229A (en) 1992-06-17 1992-06-17 Circuit and method for determining membership in a set during a fuzzy logic operation

Publications (2)

Publication Number Publication Date
JPH0635708A true JPH0635708A (ja) 1994-02-10
JP3121712B2 JP3121712B2 (ja) 2001-01-09

Family

ID=25411805

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05154500A Expired - Fee Related JP3121712B2 (ja) 1992-06-17 1993-06-01 データ処理システムにおいてファジー論理操作を行う方法

Country Status (5)

Country Link
US (1) US5295229A (ja)
EP (1) EP0574714A3 (ja)
JP (1) JP3121712B2 (ja)
KR (1) KR100251443B1 (ja)
CN (1) CN1058344C (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5553259A (en) * 1993-07-16 1996-09-03 Unisys Corporation Apparatus and method for synchronizing the simultaneous loading of cache program word addresses in dual slice registers
US5561738A (en) * 1994-03-25 1996-10-01 Motorola, Inc. Data processor for executing a fuzzy logic operation and method therefor
EP0675431A1 (en) * 1994-03-31 1995-10-04 Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno Method for memorizing membership functions in a fuzzy logic processor
EP0675430A1 (en) * 1994-03-31 1995-10-04 Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno Circuit for computing membership functions values in a fuzzy logic controller
US5486999A (en) * 1994-04-20 1996-01-23 Mebane; Andrew H. Apparatus and method for categorizing health care utilization
WO1995030185A1 (de) * 1994-04-29 1995-11-09 Siemens Aktiengesellschaft Verfahren zur fuzzifizierung von an eingängen eines fuzzy-prozessors anliegenden eingangssignalen unter verwendung von eingangszugehörigkeitsfunktionen
JPH09512366A (ja) * 1994-04-29 1997-12-09 シーメンス アクチエンゲゼルシヤフト ファジイプロセッサの入力側に入力されるディジタル入力信号のファジイ化準備及び実行方法
US5687289A (en) * 1994-12-16 1997-11-11 Motorola, Inc. Circuit and method for determining membership in a set during a fuzzy logic operation
EP0718753A1 (en) * 1994-12-22 1996-06-26 Motorola, Inc. Data processing system for evaluating fuzzy logic rules and method therefor
US5671332A (en) * 1994-12-22 1997-09-23 Motorola, Inc. Data processing system for performing efficient fuzzy logic operations and method therefor
CN103064652B (zh) * 1995-08-31 2016-07-20 英特尔公司 控制移位分组数据的位校正的装置
US5737493A (en) * 1995-12-11 1998-04-07 Motorola, Inc. Instruction set for evaluating fuzzy logic rules
AUPO247496A0 (en) 1996-09-23 1996-10-17 Resmed Limited Assisted ventilation to match patient respiratory need
US8782624B2 (en) * 2011-12-15 2014-07-15 Micron Technology, Inc. Methods and systems for detection in a state machine
DE102015219091A1 (de) 2015-10-02 2017-04-06 Robert Bosch Gmbh Elektrohydraulisches Kompaktaggregat
CN106228248B (zh) * 2016-07-18 2019-07-26 广西电网有限责任公司电力科学研究院 一种基于模糊fmea分析的***自动故障诊断方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694418A (en) * 1984-03-23 1987-09-15 Omron Tateisi Electronics Co. Fuzzy logic basic circuit and fuzzy logic integrated circuit operable in current mode
US4860243A (en) * 1984-03-23 1989-08-22 Omron Tateisi Electronics Co. Fuzzy logic semifinished integrated circuit
US4716540A (en) * 1984-07-06 1987-12-29 Omron Tateisi Electronics Co. Multi-functional fuzzy logic circuit
US5189636A (en) * 1987-11-16 1993-02-23 Intel Corporation Dual mode combining circuitry
US5165011A (en) * 1988-09-22 1992-11-17 Omron Tateisi Electronics Co. System for switching a rule group
JPH02176935A (ja) * 1988-12-28 1990-07-10 Olympus Optical Co Ltd ディジタルファジィ回路
DE3936503A1 (de) * 1988-11-04 1990-05-10 Olympus Optical Co Digitales verschwommen-folgerungssystem
JPH02208787A (ja) * 1989-02-09 1990-08-20 Yasuo Nagazumi フアジイ演算回路および該回路を用いたファジイ計算機
US5179634A (en) * 1989-04-14 1993-01-12 Omron Corporation System for synthesizing new fuzzy rule sets from existing fuzzy rule sets
JPH02294831A (ja) * 1989-05-10 1990-12-05 Olympus Optical Co Ltd デジタルファジィ回路
JPH0690668B2 (ja) * 1989-10-20 1994-11-14 三菱電機株式会社 ファジイ演算装置
JP2510333B2 (ja) * 1990-06-21 1996-06-26 株式会社日立製作所 空調機の制御装置

Also Published As

Publication number Publication date
EP0574714A3 (en) 1994-10-12
CN1058344C (zh) 2000-11-08
US5295229A (en) 1994-03-15
JP3121712B2 (ja) 2001-01-09
KR100251443B1 (ko) 2000-04-15
CN1080411A (zh) 1994-01-05
KR940006038A (ko) 1994-03-23
EP0574714A2 (en) 1993-12-22

Similar Documents

Publication Publication Date Title
JP3121712B2 (ja) データ処理システムにおいてファジー論理操作を行う方法
JP3501468B2 (ja) 携帯カード
KR860001433B1 (ko) Rom을 사용하여 10진 승산을 수행하는 데이터 프로세서
JP3207299B2 (ja) ファジールール評価操作を行なうためにデジタルデータプロセッサを動作させる方法
Kapur et al. Mechanically verifying a family of multiplier circuits
US6499046B1 (en) Saturation detection apparatus and method therefor
JP3958381B2 (ja) 効率的なファジー論理操作を行なうためのデータ処理システムおよびその方法
US5687289A (en) Circuit and method for determining membership in a set during a fuzzy logic operation
US5386534A (en) Data processing system for generating symmetrical range of addresses of instructing-address-value with the use of inverting sign value
EP0718753A1 (en) Data processing system for evaluating fuzzy logic rules and method therefor
JPH0816364A (ja) カウンタ回路とそれを用いたマイクロプロセッサ
JP3992771B2 (ja) デジタル・データ・プロセッサにおけるファジイ・ルール評価処理方法
JP2567134B2 (ja) ビットフィールド論理演算処理装置およびそれを具備するモノリシックマイクロプロセッサ
JPH07152569A (ja) 電子コントローラの入力部及びメモリ、並びに所属関係関数値発生方法及び所属関係関数記憶且つ取り出し方法
US5784534A (en) Circuit and method for representing fuzzy rule weights during a fuzzy logic operation
US5737493A (en) Instruction set for evaluating fuzzy logic rules
JP2793357B2 (ja) 並列演算装置
KR100398416B1 (ko) 계층 퍼지 제어기
JPS62284427A (ja) 未定値を含む確信度推論方式
JPH05250145A (ja) 除算装置
JPH0414173A (ja) 固定小数点演算器
JPS63193202A (ja) あいまい推論制御方式
Permantier Representation of Inexact Engineering Knowledge about Real Time Systems
JPH03225428A (ja) ファジイ演算器
JPS5936781B2 (ja) デイジタル微分解析機の内插積分および外插積分方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081020

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 9

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D03

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101020

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees