DE3936503C2 - - Google Patents
Info
- Publication number
- DE3936503C2 DE3936503C2 DE3936503A DE3936503A DE3936503C2 DE 3936503 C2 DE3936503 C2 DE 3936503C2 DE 3936503 A DE3936503 A DE 3936503A DE 3936503 A DE3936503 A DE 3936503A DE 3936503 C2 DE3936503 C2 DE 3936503C2
- Authority
- DE
- Germany
- Prior art keywords
- circuit
- output
- subtractor
- membership function
- function
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
- G06F5/015—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30021—Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/02—Computing arrangements based on specific mathematical models using fuzzy logic
- G06N7/04—Physical realisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Software Systems (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Algebra (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Fuzzy Systems (AREA)
- Biomedical Technology (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Feedback Control In General (AREA)
Description
Die Erfindung bezieht sich auf ein auch als digitales Fuzzy-Logiksystem bezeichnetes digitales Verschwommen-Folgerungssystem.
Die sogenannte "Verschwommen"-Theorie (Fuzzy-Theorie) wurde
1965 von L. A. Zadeh, Professor an der California State Universität
vorgeschlagen, und die Möglichkeit der praktischen
Verwendung der Theorie wurde 1974 von E. H. Mamdani, Professor
an der Universität von London, bewiesen. Im folgenden
wurden verschiedene Vorrichtungen zum Durchführen der
Theorie vorgeschlagen. Typische Beispiele solcher
Vorrichtungen werden im folgenden vorgestellt. In der
europäischen Offenlegungsschrift EP 00 92 832 A2 (Japanese Patent
Disclosure No. 58-1 92 407) ist ein Betriebssteuersystem für
Fahrzeuge beschrieben, das die Schalthäufigkeit zum Erhalten
eines verbesserten Fahrkomforts durch software-mäßige
Schlußfolgerung verringert. Das US-Patent Nr. 47 16 540
(Japanese Patent Disclosure No. 61-20 428) offenbart mittels
Stromschaltungen implementierte analoge Verschwommen-
Logikschaltungen. Des weiteren sind in Nikkei Electronics,
Nr. 457, Oct. 3, 1988, Prozessoren beschrieben, welche bei
Hosei Universität, North Carolina State Universität usw.
entwickelte Speicher verwenden, und Prozessoren für
Verschwommen-Steuerungen zum Schreiben von Daten für die
Schlußfolgerung in Befehlsspeichern, die bei Togai Infralogic
Company (Masaki Togai und Hiroyuki Watanabe von den AT & T
Bell Laboratorien, "Expert System on a Chip: An Engine for
Real-Time Approximate Reasoning", IEEE Expert, Herbst 1986)
usw. entwickelt wurden.
Die herkömmlichen Verschwommen-Folgerungssysteme weisen die
folgenden Nachteile auf. Das auf der Grundlage von Software
bestehende und beispielsweise aus der japanischen Patentveröffentlichung
Nummer 58-1 92 407 (europäische Offenlegungsschrift
EP 00 92 832 A2) bekannte System kann zur Zeit mit einem
Personal Computer, Mikrocomputer oder dergleichen implementiert
werden, und weist den Vorteil auf, daß dieses System
vielseitig verwendet werden kann, da durch Austauschen der
Programme verschiedenste Verschwommen-Regeln angewendet
werden können. Jedoch ist das Verschwommen-Folgerungssystem
dieses Typs sehr langsam in der Folgerungsgeschwindigkeit,
und weist daher den Mangel auf, daß es in Gebieten, bei
denen eine bestimmte Antwortgeschwindigkeit benötigt wird,
nicht verwendet werden kann.
Im Gegensatz hierzu kann das Verschwommen-Folgerungssystem,
welches gemäß der oben erwähnten japanischen Patentveröffentlichung
Nr. 61-20 428 (US-Patent Nr. 47 16 540) einen
Prozessor mit einem Speicher und einen bestimmten Prozessor
für eine Verschwommen-Steuerung aufweist, bei hoher
Geschwindigkeit implementiert werden, da das System als
eigens dafür bestimmtes den oben erwähnten Mangel behebt. Da
jedoch das in der japanischen Patentveröffentlichung Nr. 61-20 428
dargestellte Verschwommen-Folgerungssystem die Verschwommen-Folgerung
unter Verwendung eines Analogstromes
durchführt, wird zur Anwendung des Systems bei einem digitalen
Computer wie beispielsweise einem Personal Computer,
einem Mikrocomputer oder dergleichen eine Schnittstelle
benötigt, wodurch von einer Fehlanpassung des Systems
gesprochen werden kann. Des weiteren kann die Form (einschließlich
der Position) einer Mitgliedsfunktion nicht ohne
weiteres geändert werden, wodurch es schwierig ist, die Verschwommen-Regeln
zu ändern.
Der oben erwähnte Prozessor mit einem Speicher speichert
zuvor die Ergebnisse der Implementierung der Verschwommen-Folgerung
für verschiedene Eingangsdaten in ein ROM, wodurch
eine effiziente Anpassung des Systems mit dem digitalen Computer
erhalten wird. Da es nicht möglich ist, den Ausgang
für die Verschwommen-Regeln, die nicht in dem ROM gespeichert
sind, zu erhalten, ist die Verwendung des Systems
äußerst begrenzt, so daß das System im Hinblick auf den allgemeinen
Zweckgebrauch nachteilig ist.
Ferner werden die Ergebnisse der von einem Host-Computer
kompilierten Verschwommen-Regeln durch den oben erwähnten
bestimmten Prozessor für die Verschwommen-Steuerung in sogenannten
Verschwommen-Chips heruntergeladen. Die Verschwommen-Folgerung
wird unter Verwendung verschiedener Verschwommen-Regeln
implementiert, so daß der oben erwähnte Prozessor mit
großer Vielseitigkeit verwendet werden kann. Der bestimmte
Prozessor stellt jedoch einen Prozessor dar, bei dem die
Instruktion für die Verschwommen-Folgerung zusätzlich zur
Funktion eines Mikrocomputers verkörpert ist, wodurch sich
der Nachteil ergibt, daß das System als ganzes eine hohe
Integrationsdichte benötigt.
Der Erfindung liegt die Aufgabe zugrunde, ein digitales Fuzzy-Logiksystem bzw. Verschwommen-Folgerungssystem mit größerer Vielseitigkeit zur
Verfügung zu stellen, welches als Hochgeschwindigkeitssystem
und als digitalisiertes System mit einer Mitgliedsfunktion,
welches einen höheren Freiheitsgrad aufweist, verwendbar
ist.
Diese Aufgabe wird durch das Fuzzy-Logiksystem gemäß den Ansprüchen 1 und 7
gelöst.
Das digitale Verschwommen-Folgerungssystem gemäß der vorliegenden
Erfindung zeichnet sich durch digitale Schaltkreise
aus. Ein digitaler Rechner einer Falls-Teil-Mitgliedsfunktion
(if-part-membership function) zum Erhalten eines
Falls-Teil-Mitgliedsfunktionswertes in dem digitalen Verschwommen-Folgerungssystem
weist einen Multiplizierer und
einen Subtrahierer auf, und zeichnet sich dadurch aus, daß
er als Eingänge einen oder eine Vielzahl von Steigungsparametern
und einen oder eine Vielzahl von Wendepunkt-Parametern
empfängt, und eine Berechnung unter Verwendung
dieser Eingangsparameter durchführt. Dadurch kann die Form
der Falls-Teil-Mitgliedsfunktion frei und leicht geändert
werden.
Entsprechend der Erfindung weist ein digitaler Schaltkreis
zum Erhalten der Folgerungsergebnisse des digitalen Verschwommen-Folgerungssystems
eine Dann-Teil-Mitgliedsdefinitionsschaltung
(930) (then-part membership defining
circuit), und eine Mitgliedsfunktions-Synthetisierschaltung
(940) auf. Die erstere Schaltung stellt eine Schaltung dar,
bei der der von jeder Verschwommen-Regel ausgegebene, oben
erwähnte Falls-Teil-Mitgliedswert hieran angelegt wird,
wobei der Falls-Teil-Mitgliedswert als die Höhe und ein
vorbestimmter Wert als die Basis multipliziert werden, so
daß ein Dann-Teil-Ausgang entsprechend dem durch die Multiplikation
der Höhe und der Basis erhaltenen Bereich berechnet
wird. Auf der anderen Seite stellt die Mitgliedsfunktions-Synthetisierschaltung
eine Schaltung dar, welche
den Dann-Teil-Ausgang an eine von einer Vielzahl von vorbestimmten
Adressen ausgibt und die Dann-Teil-Ausgänge entsprechend
dem Bereich für jede Adresse synthetisiert. Der
Bereich der Dann-Teil-Mitgliedsfunktion ist in der oben
erwähnten Dann-Teil-Mitgliedsfunktions-Definitionsschaltung
definiert, wohingegen die Position der Mitgliedsfunktion in
der Mitglieds-Synthetisierschaltung definiert ist. Auf diese
Weise kann die Position und die Form der Dann-Teil-Mitgliedsfunktion
frei und leicht geändert werden.
Entsprechend der Erfindung zeichnet sich die digitale Schaltung
zum Erhalten der Folgerungsergebnisse des digitalen
Verschwommen-Folgerungssystems dadurch aus, daß ein Maximalwertberechner,
der den Dann-Teil-Mitgliedswert für jede Verschwommen-Regel
an die vorbestimmte Adresse entsprechend dem
Parameter für die Adressierung ausgibt und somit den synthetisierten
Wert des Dann-Teil-Mitgliedswertes für jede
Adresse erhält, und ein Schwerpunktberechner vorgesehen ist,
der unter Verwendung des für jede Adresse ausgegebenen synthetisierten
Wertes und der Adresse den Schwerpunkt berechnet.
Auf diese Weise kann die Position der Dann-Teil-Mitgliedsfunktion
frei durch die Parameter gesetzt werden,
wodurch einfach der Schwerpunkt berechnet wird.
Vorteilhafte Ausbildungen der Erfindung ergeben sich aus den
Unteransprüchen.
Es folgt die Beschreibung von Ausführungsbeispielen der Erfindung
anhand der Figuren. Von den Figuren zeigt
Fig. 1 ein Diagramm zum Veranschaulichen des Konzeptes der
Verschwommen-Theorie,
Fig. 2 ein Blockdiagramm eines ersten Ausführungsbeispiels
eines digitalen Verschwommen-Folgerungssystems
entsprechend dieser Erfindung,
Fig. 3 eine allgemeine Wellenform einer Falls-Teil-Mitgliedsfunktion;
Fig. 4 eine linear angenäherte Wellenform der Falls-Teil-
Mitgliedsfunktion,
Fig. 5 die Definition der Falls-Teil-Mitgliedsfunktion des
ersten Ausführungsbeispiels,
Fig. 6 ein Blockdiagramm eines ersten Beispiels der
Definitionsschaltung für die Falls-Teil-
Mitgliedsfunktion gemäß Fig. 2,
Fig. 7 die Beziehungen zwischen den Parametern zur Definition
der Falls-Teil-Mitgliedsfunktion und den
Funktionstypen,
Fig. 8A bis 8D verschiedene Typen von Falls-Teil-Mitgliedsfunktionen,
Fig. 9 ein Blockdiagramm eines zweiten Beispiels der Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 10A und 10B eine detaillierte Schaltungsanordnung der
Definitionsschaltung für die Falls-Teil-Mitgliedsfunktion
gemäß Fig. 9,
Fig. 11 eine Schaltungsanordnung des 4-Bit-Volladdierers gemäß
Fig. 10,
Fig. 12 eine Schaltungsanordnung des 1-Bit-Volladdierers
gemäß Fig. 10,
Fig. 13 den Betrieb des 1-Bit-Volladdierers gemäß Fig. 12,
Fig. 14 bis 16 Diagramme zum Veranschaulichen des Betriebes
des Subtrahierers gemäß Fig. 10,
Fig. 17 eine Schaltungsanordnung des 1-Bit-Halbaddierers
gemäß Fig. 10,
Fig. 18 den Betrieb des 1-Bit-Halbaddiererers gemäß Fig. 10,
Fig. 19 ein Diagramm zur Veranschaulichung des Betriebes des
Multiplizierers gemäß Fig. 10,
Fig. 20 eine Modifizierung des Multiplizierers gemäß Fig. 10
in Blockform,
Fig. 21 ein Blockdiagramm eines dritten Beispiels der Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 22 ein Blockdiagramm eines vierten Beispiels der Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 23 ein Blockdiagramm eines fünften Beispiels der Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 24 ein Blockdiagramm eines sechsten Beispiels der
Definitionsschaltung für die Falls-Teil-Mitgliedsfunktion,
Fig. 25A und 25B Beispiele von Falls-Teil-Mitgliedsfunktionen,
die durch das sechste Beispiel der in Fig. 24
gezeigten Definitionsschaltung für die Falls-
Teil-Mitgliedsfunktion definiert sind,
Fig. 26 ein Blockdiagramm eines siebten Beispiels der Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 27 bis 29 typische Beispiele der Mitgliedsfunktion vom
F-Typ,
Fig. 30A bis 30N Variationen von Mitgliedsfunktionen, welche
in der Mitgliedsfunktion vom F-Typ enthalten sind,
Fig. 31 ein detailliertes Verbindungsdiagramm des siebten
Beispiels der in Fig. 26 gezeigten Definitionsschaltung
für die Falls-Teil-Mitgliedsfunktion,
Fig. 32 eine praktische Anordnung der Definitionsschaltung
für die Mitgliedsfunktion gemäß Fig. 31,
Fig. 33 bis 40 Schaltungsanordnungen von funktionellen
Blöcken gemäß Fig. 32, bei denen
Fig. 33 den ersten Subtrahierer veranschaulicht,
Fig. 34 den Auswähler veranschaulicht,
Fig. 35 den zweiten Subtrahierer veranschaulicht,
Fig. 36 den ersten Komparator veranschaulicht,
Fig. 37 die zweite Komparator-/erste funktionsbestimmende
Schaltung veranschaulicht,
Fig. 38 den ersten Multiplizierer veranschaulicht,
Fig. 39 die Bestimmungsschaltungen für den ersten und
zweiten Koeffizienten veranschaulicht und
Fig. 40 die zweiten Multiplizierer-/dritten
Subtrahierer-Bestimmungsschaltungen für die zweite
Funktion veranschaulicht,
Fig. 41 die Eingabe/Ausgabe-Beziehungen der Funktionsbestimmungsschaltung
veranschaulicht,
Fig. 42 bis 48 Schaltungsdiagramme der Makrozellen gemäß den
Fig. 33 bis 40, bei denen
Fig. 42 den Halbaddierer veranschaulicht,
Fig. 43 den 1-Bit-Volladdierer veranschaulicht,
Fig. 44 den Größen-Komparator veranschaulicht,
Fig. 45 den 2-Bit-Volladdierer veranschaulicht,
Fig. 46 den 4-Bit-Volladdierer veranschaulicht,
Fig. 47 den Multiplizierer veranschaulicht und
Fig. 48 den mit einer Ausgangsinvertierschaltung
ausgestatteten Multiplizierer veranschaulicht,
Fig. 49 ein Schaltungsdiagramm eines ersten Beispiels der
Berechnungsschaltung des Minimalwertes in dem ersten
Ausführungsbeispiel,
Fig. 50 ein Diagramm zum Veranschaulichen des Betriebes des
digitalen Komparators gemäß Fig. 49,
Fig. 51 ein Schaltungsdiagramm eines zweiten Beispiels der
Minimalwertberechnungsschaltung,
Fig. 52 ein Schaltungsdiagramm der nicht invertierenden
Pufferschaltungen vom offenen Drain-Ausgangstyp
gemäß Fig. 51,
Fig. 53 ein Schaltungsdiagramm der nicht invertierenden
Pufferschaltungen vom offenen Kollektorausgangstyp,
Fig. 54 ein Diagramm zum Veranschaulichen des Betriebes des
zweiten Beispiels der Minimalwertberechnungsschaltung
gemäß Fig. 51,
Fig. 55 die Form einer Dann-Teil-Mitgliedsfunktion,
Fig. 56 die Beziehung zwischen den Dann-Teil-Mitgliedsfunktionen
und deren Adressen,
Fig. 57 ein Schaltungsdiagramm der Definitionsschaltung für
die Dann-Teil-Mitgliedsfunktion,
Fig. 58 ein Schaltungsdiagramm des Addierers/Subtrahierers
gemäß Fig. 57,
Fig. 59 ein Schaltungsdiagramm der Verschiebebetriebsschaltung
gemäß Fig. 57,
Fig. 60 ein Diagramm zum Veranschaulichen des Betriebes der
Verschiebebetriebsschaltung gemäß Fig. 59,
Fig. 61 ein Diagramm zum Veranschaulichen des Betriebes der
Definitionsschaltung für die Dann-Teil-Mitgliedsfunktion
gemäß Fig. 57,
Fig. 62 ein Blockdiagramm der Synthetisierschaltung für die
Mitgliedsfunktion gemäß Fig. 2,
Fig. 63 ein Schaltungsdiagramm des Adreßauswählers gemäß
Fig. 62,
Fig. 64 ein Diagramm zum Veranschaulichen des Betriebes des
Adreßauswählers gemäß Fig. 63,
Fig. 65 ein Schaltungsdiagramm eines ersten Beispiels einer
Maximalwertberechnungsschaltung,
Fig. 66 ein Schaltungsdiagramm eines zweiten Beispiels
einer Maximalwertberechnungsschaltung,
Fig. 67 ein Schaltungsdiagramm der invertierenden Pufferschaltung
vom offenen Drain-Ausgangstyp gemäß Fig. 66,
Fig. 68 ein Schaltungsdiagramm der invertierenden Pufferschaltung
vom offenen Kollektor-Ausgangstyp,
Fig. 69 ein Diagramm zum Veranschaulichen des Betriebes der
in Fig. 66 gezeigten Maximalwertberechnungsschaltung,
Fig. 70 die Ergebnisse der Verschwommen-Folgerung, welche durch
die Synthetisierschaltung für die Mitgliedsfunktion
erhalten worden sind,
Fig. 71 das Prinzip der Berechnung des Schwerpunktes,
Fig. 72 eine Schaltungsanordnung der Schwerpunktberechnungsschaltung,
Fig. 73 eine Schaltungsanordnung der Berechnungsschaltung
zum Erhalten eines Nenners, der zum Erhalten des
Schwerpunktes verwendet wird,
Fig. 74 eine Schaltungsanordnung der Berechnungsschaltung
zum Erhalten eines Zählers, der zum Erhalten des
Schwerpunktes verwendet wird,
Fig. 75 ein Diagramm zum Veranschaulichen des Betriebes des
Dividierers gemäß Fig.
72,
Fig. 76 eine Schaltungsanordnung des Dividierers gemäß Fig. 72,
Fig. 77 eine Schaltungsanordnung des
Subtraktionsmultiplexers gemäß Fig. 76,
Fig. 78A bis 78C eine Veranschaulichung der Adressendivision,
Fig. 79 bis 81 Diagramme zum Veranschaulichen der Multiadresse
für die Bestimmung der Dann-Teil-
Mitgliedsfunktionen,
Fig. 82 ein Blockdiagramm der Multiadreßbestimmungsschaltung,
welche in den Dann-Teil-Mitgliedsfunktionen
enthalten ist,
Fig. 83 eine detaillierte digitale Schaltung der Multiadreßbestimmungsschaltung
gemäß Fig. 82,
Fig. 84 ein Schaltungsdiagramm des Datenauswählers,
Fig. 85 ein Diagramm zum Veranschaulichen der Eingabe/
Ausgabe-Beziehung des Datenauswählers gemäß
Fig. 85,
Fig. 86 ein Blockdiagramm einer Modifikation der Multiadreßbestimmungsschaltung und
Fig. 87 ein Blockdiagramm eines digitalen Verschwommen-
Folgerungssystems entsprechend einem zweiten
Ausführungsbeispiel dieser Erfindung.
Vor der Beschreibung der Ausführungsbeispiele eines digitalen
Verschwommen-Folgerungssystems entsprechend dieser Erfindung
wird zuerst unter Bezugnahme auf Fig. 1 die Grundlage
der Verschwommen-Folgerung erläutert. Die Verschwommen-
Folgerung
(Fuzzy-Folgerung) stellt einen Typ von Folgerung
dar, der sogenannte Verschwommen-Regeln ("Fuzzy"-Regeln)
bzw. Verschwommen-Folgerungsregeln verwendet, die durch
mehrdeutige Wörter ausgedrückt werden, die Personen im Alltag
verwenden. Die Verschwommen-Regeln können so beschrieben
werden, daß, "falls A=GROSS und B=NORMAL, dann X=
KLEIN". In Fig. 1 stellen A, B und C Eingangsvariablen dar,
während X eine Ausgangsvariable darstellt. Der Teil "falls A=GROSS
und B=NORMAL", der die Bedingungen beschreibt, bei
denen die Verschwommen-Regeln eingerichtet sind, wird als
Falls-Teil bzw. Bedingungs-Teil bezeichnet, während der Teil
"dann X=KLEIN", der die Schlußfolgerung beschreibt, als
Dann-Teil bzw. Schlußfolgerungsteil bezeichnet wird.
Bei der Verschwommen-Folgerung wird jede der Eingangsvariablen
in einen Wert im Bereich von 0 bis 1 für die
Berechnung umgewandelt. Die Umwandlung einer Eingabevariablen
in den Wert wird durch eine Mitgliedsfunktion
(Falls-Teil-Mitgliedsfunktion) definiert. Die Mitgliedsfunktion
ist für jede der Aussagen (GROSS, NORMAL, KLEIN)
definiert, die in den Verschwommen-Regeln beschrieben sind.
Durch Bezugnahme auf die Mitgliedsfunktion wird ein Grad
(Mitgliedswert) berechnet, bis zu dem sich die
Eingangsvariable der entsprechenden Aussage annähert. Wenn
in dem Falls-Teil eine Vielzahl von Aussagen vorhanden ist,
wird der Minimalwert der Mitgliedswerte gefunden. Dieser
Vorgang wird Minimalwertberechnung genannt.
Als nächstes werden die Mitgliedswerte für die jeweiligen
Regeln synthetisiert. Dies wird durch Durchführen eines Vergleiches
zwischen den Dann-Teilen der Regeln durchgeführt,
um den Maximalwert der Dann-Teil-Mitgliedswerte zu erhalten
und eine neue Mitgliedsfunktion zu erzeugen. Dieser Vorgang
wird Maximalwertberechnung genannt. Ein Wert des Schwerpunktes
der synthetisierten Mitgliedsfunktion wird als Ergebnis
der Folgerung verwendet (Ausgangswert). Die nachfolgende
Stufe wird durch den Ausgangswert gesteuert.
Das in Fig. 1 dargestellte Folgerungssystem stellt ein typisches
Beispiel dar, obwohl es einige weitere Folgerungssysteme
gibt. Die Ausführungsbeispiele dieser Erfindung werden
im folgenden unter Bezugnahme auf das Folgerungssystem gemäß
Fig. 1 beschrieben. Es wird vermerkt, daß auch andere Folgerungssysteme
in dieser Erfindung verwendet werden können.
Unter Bezugnahme auf Fig. 2 ist ein Blockdiagramm eines ersten
Ausführungsbeispiels dieser Erfindung dargestellt. Für
jede der Verschwommen-Regeln sind Verschwommen-Folgerungsprozessoren
FZ-1, FZ-2, . . . vorgesehen. Die Ausgänge der
Verschwommen-Folgerungsprozessoren FZ-1, FZ-2, . . . werden
über einen Mitgliedsfunktionssynthetisierer (Maximalwertberechner)
940 an einen Schwerpunktberechner 950 angelegt, an
dem ein Folgerungsergebnis (Ausgangswert) erhalten wird.
Jeder der Verschwommen-Folgerungsprozessoren FZ-1, FZ-2, . . .
weist Definitionsschaltungen 910 für Falls-Teil-Mitgliedsfunktionen,
einen Minimalwertberechner (MIN. Einheit) 920
und eine Definitionsschaltung 930 für die Dann-Teil-Mitgliedsfunktion
auf. Die Anzahl der Definitionsschaltungen
910 für die Falls-Teil-Mitgliedsfunktion entspricht der Anzahl
der Falls-Teil-Eingänge. Damit werden die Falls-Teil-
Eingänge jeweils an die Definitionsschaltungen 910 für die
Falls-Teil-Mitgliedsfunktion angelegt. Jede der Definitionsschaltungen
910 für die Mitgliedsfunktion definiert eine
Mitgliedsfunktion entsprechend den Definitionsparametern für
die Mitgliedsfunktion und bezieht sich auf die definierte
Mitgliedsfunktion und einen Falls-Teil-Eingangswert, der berechnet
wird, und gibt einen Grad (Mitgliedswert) aus, bis
zu dem sich der Falls-Teil-Eingang der Verschwommen-Regel
annähert. Obwohl bei diesem Ausführungsbeispiel zwei
Definitionsschaltungen für die Mitgliedsfunktion für jede
Verschwommen-Regel vorgesehen sind, vergrößert sich die
Anzahl der Mitgliedsfunktionsdefinitionsschaltungen mit dem
Anstieg der Anzahl der Falls-Teil-Eingänge.
In jeder Verschwommen-Regel werden die von den Definitionsschaltungen
910 für die Mitgliedsfunktion ausgegebenen Mitgliedswerte
an den Minimalwertberechner 920 angelegt, der
den Minimalwert von den Mitgliedswerten auswählt, und den
Minimalwert an die Definitionsschaltung 930 für die Dann-
Teil-Mitgliedsfunktion anlegt. Die Definitionsschaltung 930
für die Dann-Teil-Mitgliedsfunktion definiert eine Dann-
Teil-Mitgliedsfunktion entsprechend mit
Definitionsparametern für die Dann-Teil-Mitgliedsfunktion
und einem Dann-Teil-Eingang, der analog zu den
Adreßparametern ist, zum Erzeugen einer Dann-Teil-
Mitgliedsfunktion, welche der Regel von dem Ausgang des
Minimalwertberechners 920 angepaßt ist.
Die Dann-Teil-Mitgliedsfunktionen für sämtliche Regeln werden
durch die Maximalwertberechnung in einem Mitgliedsfunktionssynthetisierer
(MAX. Einheit) 940 synthetisiert. Das
Ergebnis dieser Synthese ist das Verschwommen-Folgerungsergebnis.
Zur Implementierung einer Verschwommen-Steuerung,
die in Objekt durch ein Folgerungsergebnis steuert, nicht
zur Implementierung einer Folgerungsvorrichtung, wird als
Folgerungsergebnis ein definierter Wert benötigt. Aus diesem
Grund wird der Schwerpunkt der synthetisierten Mitgliedsfunktion
berechnet. Der Schwerpunktberechner 950 berechnet
den Wert des Schwerpunktes der synthetisierten Mitgliedsfunktion.
Der berechnete Wert des Schwerpunktes dient als
ein Ausgang für eine Verschwommen-Steuerung.
Im folgenden wird jeder der Blöcke bei dem Ausführungsbeispiel
gemäß Fig. 1 im Detail beschrieben. Zuerst wird die
Definitionsschaltung 910 für die Falls-Teil-Mitgliedsfunktion
beschrieben. Im allgemeinen ist eine Mitgliedsfunktion
μ(x) durch eine wie in Fig. 3 gezeigte Kurve dargestellt.
Falls die Funktion jedoch durch gerade Linien wie in Fig. 4
dargestellt wird, entsteht kein Problem bei der praktischen
Verwendung. Ferner stellt der Mitgliedswert üblicherweise
einen Wert dar, der kontinuierlich innerhalb des Bereiches
[0,1] variieren kann. Der Mitgliedswert kann jedoch auch so
dargestellt sein, daß ein wie in Fig. 4 gezeigter diskreter
Wert angenommen wird, was Vorteile beim Entwurf digitaler
Schaltungen mit sich bringt.
Aus diesem Grund wird zur Definition einer Mitgliedsfunktion
bei diesem Ausführungsbeispiel die in Fig. 5 gezeigte Matrix
mit 16 Zeilen×32 Spalten angenommen. Ein Mitgliedswert wird
durch einen 4-Bit-Binärcode durch Dividieren von [0,1] durch
16 dargestellt. Auf diese Weise kann der Mitgliedswert einen
diskreten Wert aus dem Bereich von 0 bis 15 annehmen und auf
der 16×32-Matrix dargestellt werden. Ähnlich dazu wird eine
Eingangsvariable x ebenfalls durch einen 5-Bit-Binärcode mit
dem Bereich von 0 bis 31 dargestellt. Unter der Annahme, daß
die Mitgliedsfunktion, wie in Fig. 4 gezeigt, dreieckig in der
Form ist, kann die Mitgliedsfunktion μ(x) durch einen Wert
xo der Eingangsvariablen x, bei dem der Mitgliedswert den
Maximalwert von 15 annimmt, und eine Steigung (Gradient) k
des Mitgliedswertes bezüglich der Eingangsvariablen x
definiert werden. Bei diesem Beispiel wird die Eingangsvariable
x durch fünf Bits dargestellt, und die
Mitgliedsfunktion μ(x) wird durch vier Bits dargestellt.
Jedoch kann die Anzahl von Bits entsprechend der Verwendung
frei gesetzt sein.
Für die nachfolgende Berechnung werden nicht alle Werte der
Mitgliedsfunktion benötigt. Es müssen lediglich die Mitgliedswerte
μ(xi) entsprechend den Falls-Teil-Eingängen xi
erhalten werden. Falls eine Mitgliedsfunktion wie in Fig. 5
gezeigt in der Matrix von 16×32 definiert ist, wird die
Mitgliedsfunktion μ(xi) ausgedrückt durch
μ(xi) = 15 - k × | xo-xi | ,
wenn 15 - k × | xo-xi | <0 ,
μ(xi) = 0 (1)
wenn 15 - k × | xo-xi | <0 ,
μ(xi) = 0 (1)
wobei xo den Wert (Wendepunkt) von x bezeichnet, bei dem die
Mitgliedsfunktion μ(x) den Maximalwert von 15 annimmt, und
xi einen Falls-Teil-Eingang und k eine Steigung der Mitgliedsfunktion
darstellt. Bei dem Beispiel gemäß Fig. 5 ist
xo=12 und k=2.
Ein Beispiel der Definitionsschaltung 910 für die Mitgliedsfunktion,
die auf der Grundlage von Gleichung (1) angeordnet
ist, ist in Fig. 6 veranschaulicht. Die Eingänge an diese
Schaltung sind die Definitionsparameter xo und k, ein Falls-
Teil-Eingang xi und Formparameter K1 und K1 (werden später
beschrieben). Der Absolutwert | xo-xi | der Differenz zwischen
dem Parameter xo und dem Eingang xi wird zuerst in
einem Subtrahierer 1 erhalten.
Als nächstes wird das Produkt der Steigung k der Mitgliedsfunktion
und dem Ausgang | xo-xi | des Subtrahierers 1 in
einem Multiplizierer 2 erhalten, und dann wird die Differenz
15-k×| xo-xi | zwischen dem Maximalwert von 15 der
Mitgliedswerte und dem Ausgang k×| xo-xi | des Multiplizierers
2 in einem zweiten Subtrahierer 3 erhalten, wodurch
ein Mitgliedsfunktionswert μ(xi) für den Falls-Teil-Eingang
xi erhalten wird. Falls dabei eine Bereichsunterschreitung
(Unterlauf) als Ergebnis der Subtraktion in dem zweiten
Subtrahierer 2 auftritt, d. h., falls μ(xi)<0, wird der
Mitgliedswert μ(xi) auf den Minimalwert von 0 festgesetzt.
Bis dahin ist eine UND-Schaltung 4 vorgesehen, die dem
Subtrahierer 3 folgt und die das Ergebnis der Subtraktion
und ein Bereichsunterschreitungssignal vom Subtrahierer 3
empfängt.
Der Subtrahierer 2 enthält ebenfalls eine Schaltung (wird
später beschrieben) zum Umwandeln der Form einer Mitgliedsfunktion
von einer dreieckigen Form (welche als eine A-Funktion
bezeichnet wird), wie in Fig. 4 und 5 gezeigt, in
andere Formen (eine N-Funktion, eine S-Funktion und eine V-
Funktion). Die Form einer Mitgliedsfunktion hängt von Parametern
k1 und k2, wie in Fig. 7 gezeigt, ab. Die Formen der
A-Funktion, N-Funktion, S-Funktion und V-Funktion sind jeweils
in den Fig. 8A, 8B, 8C und 8D veranschaulicht.
Fig. 9 veranschaulicht ein zweites Beispiel einer Definitionsschaltung
910 für die Mitgliedsfunktion, welche Gleichung
(1) implementiert. Um die Schaltungsanordnung im Vergleich
zum ersten Beispiel zu vereinfachen, ist beim zweiten
Beispiel die Reihenfolge der Verbindung des Subtrahierers 3
und der UND-Schaltung 4 gemäß Fig. 6 umgekehrt, und des
weiteren wird anstelle der UND-Schaltung 4 eine ODER-
Schaltung 4a verwendet.
In den Fig. 10A und 10B ist ein bestimmtes Beispiel veranschaulicht,
bei dem die Schaltung gemäß Fig. 9 durch digitale
Logikschaltungen implementiert ist. Die Schaltungen 1,
2, 3 und 4a aus den Fig. 10A und 10B entsprechen jeweils dem
ersten Subtrahierer 1, Multiplizierer 2 und zweitem Subtrahierer
3 und ODER-Schaltung 4 gemäß Fig. 9.
Der erste Subtrahierer 1 weist vier 4-Bit-Volladdierer 5a,
5b, 5c und 5d auf, von denen jeder eine Kaskadenverbindung
von vier 1-Bit-Volladdierern FA, wie in Fig. 11 gezeigt, aufweist.
Der Volladdierer FA ist im Detail in Fig. 12 dargestellt,
und dessen Ein- und Ausgangsbeziehungen sind in Fig. 13
dargestellt. Der Volladdierer FA weist zwei Halbaddierer
HA auf. Der Halbaddierer HA gemäß Fig. 12 ist im Detail in
Fig. 17 dargerstellt, und dessen Ein- und Ausgangsbeziehungen
sind in Fig. 18 gezeigt. Obwohl der Subtrahierer 1 von Natur
aus als ein 8-Bit-Subtrahierer verwendet werden kann, wird
er hier als ein 5-Bit-Subtrahierer verwendet, da die Mitgliedsfunktion
bei diesem Ausführungsbeispiel auf der Matrix
von 16 Zeilen und 32 Spalten, wie in Fig. 5 gezeigt, definiert
ist.
Um den Betrieb des Subtrahierers 1 unter Bezugnahme auf Fig. 14
bis 16 zu erläutern, wird als konkretes Beispiel | 5-19 |=14
angenommen. 19 und 5 werden jeweils durch "10011" und
"00101" im Binärcode dargestellt. Um 19 von 5 zu subtrahieren,
wird "00101" (=5) an die Eingänge xo (D11, D12, D13,
D14, D15) gemäß Fig. 10A angelegt, während "10011" (=19) an
die Eingänge xi (D21, D22, D23, D24, D25) angelegt wird. Da
der Subtrahierer 1 von Natur aus ein 8-Bit-Subtrahierer ist,
können xo und xi zur Vereinfachung jeweils als "00000101"
und "00010011", wie in Fig. 14 gezeigt, dargestellt sein. xi
(D21 bis D25) wird einer Inversion durch die Inverter 6a,
6b, 6c, 6d und 6e für jedes der Bits einer Inversion unterworfen
zum Umwandeln in eine komplementäre Form ("11101100")
und dann an die Volladdierer 5a und 5b angelegt. Die
Volladdierer 5a und 5b sind ebenfalls von Natur aus 8-Bit-
Addierer, und daher werden die nicht benötigten drei Bits,
gezählt vom MSB, vorhergehend auf "1" gehalten. Ähnliches
gilt, wenn xo (D11 bis D15) an die Volladdierer 5a und 5b
angelegt wird, bei denen die drei Bits, gezählt vom MSB, auf
"0" gehalten werden.
Wie in Fig. 15 gezeigt, werden in den Volladdierern 5a und
5b xo und das Komplement von xi "1" (Carry-Eingang Ci des
Volladdierers 5b ) zusammenaddiert. Das Ergebnis der Addition
beträgt in diesem Fall "11110010", so daß keine Bereichsüberschreitung
(Überlauf) auftritt. Damit ist der Carry-
Ausgang Co des Volladdierers 5a "0". 255-x ist eine 8-Bit-
Komplementärdarstellung von xi. Damit wird die in Fig. 15
gezeigte Addition wie folgt dargestellt:
xo + (255-xi ) + 1 = 256 + (xo-xi) (2)
Daher bedeutet die Tatsache, daß die Volladdierer 5a und 5b
als Ergebnis der obigen Operation keine Bereichsüberschreitung
erzeugen, xo-xi<0. In diesem Fall ist das Ergebnis
der Addition durch die Volladdierer 5a und 5b nicht | xo-
xi |. Dementsprechend wird der Carry-Ausgang Co (="0") des
Volladdierers 5a durch einen Inverter 10 zum Erzeugen einer
"1" invertiert, mit dem Ergebnis, daß sämtliche Bits des Additionsergebnisses
(8 Bits) durch die Volladdierer 5a und 5b
durch EXCLUSIV-ODER-Schaltungen 7a bis 7d und 8a bis 8d invertiert
werden, um das Komplement "00001101" zu erzeugen,
und dann wird "1" ferner mit dem Komplement "00001101" in
den Volladdierern 5c und 5d, wie in Fig. 16 gezeigt, addiert.
Das heißt, daß die Volladdierer 5c und 5d die folgende
Operation durchführen:
255 - {256 + (xo-xi) } + 1 = 256 - {256 + (xo-xi) } = xi - xo (3)
Als Ergebnis wird | xo-xi | als Ausgang der Volladdierer
5c und 5d erhalten. Wie in Fig. 16 gezeigt, beträgt die
Antwort von | 5-19 |="00001110" (=14).
Wenn bei der Operation durch die Volladdierer 5a und 5b eine
Bereichsüberschreitung auftritt, ist xo-xi0. Bei diesem
Fall kann das Ergebnis der Operation unverändert ausgegeben
werden. Wenn in dem Volladdierer 5a eine
Bereichsüberschreitung auftritt und damit dessen Carry-
Ausgang Co nach "1" geht, wird "0" an einen der beiden
Eingangsanschlüsse der EXCLUSIV-ODER-Schaltungen 7a bis 7d
und 8a bis 8d über Inverter 10 angelegt, mit dem Ergebnis,
daß sämtliche der Ausgangsbits der Volladdierer 5a und 5b
nicht durch die EXCLUSIV-ODER-Schaltungen 7a bis 7d und 8a
bis 8d invertiert werden. Da der Carry-Eingang Ci an den
Volladdierer 5d "0" beträgt, wird ebenfalls "0" an das
Ergebnis der Addition durch die Volladdierer 5a und 5b in
den Volladdierern 5c und 5d addiert. Damit wird das Ergebnis
der Addition durch die Volladdierer 5a und 5b unverändert
als das Ergebnis der Addition durch die Volladdierer 5a und
5b ausgegeben.
Falls in dem Multiplizierer 2 k1 erhalten wird, genügt es
für den Subtrahierer 1, den Maximalausgang auf 15 zu begrenzen.
Wenn die Ausgänge 16 überschreiten, wird er zu 0 umgewandelt.
Bis dahin gehen aufgrund des LSB-Ausganges S1 des
Volladdierers 5c und einer Schaltung 11, welche ODER-Schaltungen
9a, 9b, 9c und 9d aufweist, sämtliche Ausgangsbits
der Schaltung 11 nach "1", wo das Ergebnis der Addition
durch den Subtrahierer 1 16 oder mehr beträgt. Die Ausgänge
S2, S3 und S4 des Volladdierers 5c müssen nicht verwendet
werden, da die Mitgliedsfunktion μ(x) so gesetzt ist, daß
sie vier Bits aufweist.
Der Multiplizierer 2 weist eine Formumwandlungsschaltung 2-1
zum Umwandeln der Form einer Mitgliedsfunktion von einem
wie in den Fig. 4 und 5 gezeigten Dreieck auf eine andere
Form entsprechend Formparametern K1 und K1 und einen
Multiplizierer 2-2 zum Multiplizieren von 4-Bit-Binärcodes
auf.
Die Formumwandlungsschaltung 2-1 wird verwendet, um arithmetische
Operationen auf einer dreieckigen Mitgliedsfunktion
(A-Funktion) zum Erhalten einer Mitgliedsfunktion, wie beispielsweise
der N-Funktion (Fig. 8B), S-Funktion (Fig. 8C)
oder V-Funktion (Fig. 8D), durchzuführen. Die Form einer Mitgliedsfunktion
hängt von den Parametern K1 und K2 ab. Wie in
Fig. 7 gezeigt, wenn K1="0" und K2="0", sind beide Ausgänge
der UND-Schaltungen 19a und 19b der Formumwandlungsschaltung
2-1 auf "0", mit dem Ergebnis, daß der Ausgang der
EXCLUSIV-NOR-Schaltung 20 auf "1" ist. Die UND-Schaltungen
23a bis 23d geben damit die Eingänge D34 bis D31 unverändert
als D64 bis D61 aus. Damit bleibt die Form der Mitgliedsfunktion
die A-Funktion (Fig. 8A).
Wie aus Fig. 8B ersichtlich, nimmt die N-Funktion den Maximalwert
an, wenn ein Falls-Teil-Eingang xi gleich oder kleiner
als der Eingangswert xo ist, bei dem die A-Funktion den
Maximalwert annimmt, oder wenn xoxi ist. Da xoxi bedeutet
xo-xi0, müssen die Ausgänge D64 bis D61 der
Formumwandlungsschaltung 2-1 sämtlich lediglich dann "0"
sein, wenn ein Signal (der Ausgang des Inverters 10), das
ein Plus- oder Minuszeichen des Ergebnisses der Subtraktion
in dem Subtrahierer 1 darstellt, auf "0" ist. Der Grund dafür
ist, daß der Subtrahierer 3 in der nachfolgenden Stufe
den Eingang auf das Komplement umwandelt, und dann wird der
Eingang an den Subtrahierer 3 15 (dezimale Darstellung), d. h.,
der Maximalmitgliedswert, wenn sämtliche Ausgänge der
Formumwandlungsschaltung 2-1 "0" sind.
Wenn K1="0" und K2="1", dann geht der Ausgang der UND-
Schaltung 19a nach "0". Wegen des Ausganges der EXCLUSIV-
ODER-Schaltung 18="1" und K2="1", gibt die UND-Schaltung
19b den Ausgang des Inverters 21 unverändert aus. Da der
Ausgang der UND-Schaltung 19a, wie im vorhergehenden beschrieben,
"0" ist, gibt die EXCLUSIV-NOR-Schaltung 20 den
Ausgang der UND-Schlatung 19b invertiert aus. Mit anderen
Worten, der Ausgang der EXCLUSIV-NOR-Schaltung 20 wird in
diesem Fall gleich K0, der Ausgang des Inverters 10. Da K0
="0", wie im vorhergehenden beschrieben, wenn xo-xi0,
d. h. xoxi, geben die UND-Schaltungen 23a bis 23d sämtlich
"0" aus, wenn K1="0" und K2="1". Im Gegensatz dazu, wenn
K0="1" (xo<xi), geben die UND-Schaltungen 23a bis 23d
die Eingänge D34 bis D31 unverändert aus. Wenn K1="0" und
K2="1", wird daher die A-Funktion in die N-Funktion umgewandelt.
Wie aus Fig. 8C ersichtlich, kann gesagt werden, daß im Gegensatz
zur N-Funktion die S-Funktion den Maximalmitgliedswert
annimmt, wenn xo<xi, d. h., xo-xi<0 in der A-Funktion.
Wenn K1="1" und K2="0", liegt der Ausgang der
UND-Schaltung 19b auf "0". Der Ausgang der EXCLUSIV-ODER-
Schaltung 18 ist ebenfalls bei "1" und K1="1", mit dem
Ergebnis, daß die UND-Schaltung 19a den Wert von K0
unverändert ausgibt. Da der Ausgang der UND-Schaltung 19b,
wie im vorhergehenden beschrieben, auf "0" liegt, gibt die
EXCLUSIV-NOR-Schaltung 20 den Ausgang der UND-Schaltung
19a invertiert aus.
Wenn K1="1" und K2="0", falls xoxi, dann ist K0=
"0". Daher gibt die EXCLUSIV-NOR-Schaltung 20 "1" aus, und
als Antwort auf diese Ausgänge geben die UND-Schaltungen 23a
bis 23d die Eingänge D34 bis D31 unverändert aus. Auf der
anderen Seite, falls xo<xi, dann ist K0="1", so daß die
EXCLUSIV-ODER-Schaltung 20 "0" erzeugt und daher die UND-
Schaltungen 23a bis 23d sämtlich "0" erzeugen. Wenn K1="1"
und K2="0", wird damit die A-Funktion in die S-Funktion
umgewandelt.
Die V-Funktion wird später beschrieben, da deren Umwandlungsschaltung
vereinfacht werden kann, falls sie mit einer
Subtraktionsschaltung 3, die später beschrieben wird, kombiniert
wird, wegen deren Charakters bei der Umwandlungsoperation.
Der Multiplizierer 2-2 für zwei 4-Bit-Zahlen gemäß Fig. 10B
weist Volladdierer 14a bis 14h und Halbaddierer 13a bis 13d
auf. Jeder der Halbaddierer (HA) 13a bis 13d ist im Detail
in Fig. 17 dargestellt, und deren Ein- und
Ausgangsbeziehungen sind in Fig. 18 gezeigt. Der
Multiplizierer 2-2 führt die Multiplikation von zwei 4-Bit-
Binärcodes durch wiederholte Addition aus, wobei einer der
Binärcodes um eine Bitposition nach links (in Richtung MSB)
verschoben ist, während auf jedes Bit der anderen Binärcodes
Bezug genommen wird.
Mit der Annahme eines Beispiels 13×9=117 wird die Betriebsweise
des Multiplizierers 2-2 unter Bezugnahme auf
Fig. 19 beschrieben. 13 und 9 werden jeweils durch "1101"
und "1001" in einem 4-Bit-Binärcode dargestellt. Es wird angenommen,
daß "1101" an D41, D42, D43 und D44 angelegt wird,
während "1001" an die D61, D62, D63 und D64 angelegt wird.
Da D41="1", geben die UND-Schaltungen 12a bis 12d zuerst
D61 bis D64 unverändert aus. Da D42="0", sind sämtliche
Ausgänge der UND-Schaltungen 12e bis 12h "0"en. Der Halbaddierer
13a addiert den Ausgang der UND-Schaltung 12b und den
Ausgang der UND-Schaltung 12e zusammen. Der Volladdierer 14a
addiert den Ausgang der UND-Schaltung 12c, den Ausgang der
UND-Schaltung 12f und den Bereichsüberschreitungs-(CARRY)-
Ausgang Co des Halbaddierers 13a zusammen. Der Volladdierer
14b addiert den Ausgang der UND-Schaltung 12d, den Ausgang
der UND-Schaltung 12g und den Bereichsüberschreitungsausgang
Co des Volladdierers 14a zusammen. Der Halbaddierer 13b addiert
den Bereichsüberschreitungsausgang Co des Volladdierers
14b und den Ausgang der UND-Schaltung 12h zusammen. Der
Ausgang der UND-Schaltung 12a dient als unveränderter Ausgang
D71 des Multiplizierers 2-2. Die Addition wird durch
UND-Schaltungen und Addierer auf ähnliche Weise fortgeführt.
Als Ergebnis wird ein 8-Bit-Binärcode "01110101" (D71 bis
D78) erhalten. Dieser Binärcode entspricht einer Dezimalzahl
117. Das bedeutet, daß die Multiplikation von zwei 4-Bit-
Binärzahlen (13 und 5 als Dezimalzahlen) durch den Multiplizierer
2-2 durchgeführt worden ist.
Beim ersten Beispiel der in Fig. 6 gezeigten Definitionsschaltung
für die Mitgliedsfunktion wird der Ausgang der Definitionsschaltung
für die Mitgliedsfunktion über eine nachfolgende
UND-Schaltung 4 zu 0 gemacht, wenn das Resultat der
Subtraktion im zweiten Subtrahierer 3 negativ ist. Beim
zweiten Beispiel der in Fig. 9 gezeigten Definitionsschaltung
für die Mitgliedsfunktion wird die ODER-Schaltung 4a,
die der UND-Schaltung 4 gemäß Fig. 6 entspricht, von einem
Subtrahierer 3 gefolgt, wie oben beschrieben, und des weiteren
ist der Subtrahierer 3 lediglich von EXCLUSIV-ODER-
Schaltungen 15a bis 15d gebildet. Daher kann das Plus- oder
Minuszeichen des Ergebnisses der Subtraktion durch diesen
Subtrahierer 3 nicht bestimmt werden. Damit werden durch Anlegen
von vier höheren Bits D75 bis D78 des Ausganges des
Multiplizierers 2-2 an die ODER-Schaltung 17 die Ausgänge
der ODER-Schaltung 4a (16a bis 16d ) immer auf 15 gehalten,
wenn der Ausgang des Multiplizierers 2-2 15 überschreitet,
da der Ausgang der Definitionsschaltung für die Mitgliedsfunktion
lediglich dann 0 sein muß, wenn der Ausgang des
Multiplizierers 2-2 15 überschreitet.
Fig. 20 zeigt eine Modifikation des Multiplizierers 2 in der
in Fig. 9 gezeigten Definitionsschaltung 910 für die Mitgliedsfunktion.
Diese Schaltung reagiert auf einen
Steuereingang Kp zum Bewirken, daß entweder der
Multiplizierer 2-2 gemäß Fig. 10B oder die
Verschiebeoperationsschaltung 2-3 arbeitet. Wenn Kp="1",
führt der Multiplizierer 2-2 die Multiplikation von zwei 4-
Bit-Binärzahlen aus, während, wenn Kp="0", die
Verschiebeoperationsschaltung 2-3 eine Verschiebeoperation
durchführt. Einzelheiten der Verschiebeoperationsschaltung
2-3 werden später beschrieben (Fig. 59). Hier ist notwendig,
daß die ODER-Schaltung 11 gemäß Fig. 10 entfernt wird und
die Formumwandlungsschaltung 2-1 zur Unterbringung von 6
Bits modifiziert wird. Falls dies geschehen ist, kann die
Steigung k innerhalb eine weiten Bereiches gesetzt sein.
Darüber hinaus würde die Ersetzung der Verschiebeoperationsschaltung
2-3 durch eine Divisionsschaltung es ermöglichen,
daß der Wert von k feiner gesetzt werden kann. Sogar
dezimale Bruchteile, wie z. B. ½ und ¼, könnten gesetzt
werden.
Unter erneuter Bezugnahme auf Fig. 10B stellt der Subtrahierer
3 eine Schaltung zum Erhalten einer Differenz zwischen
dem Maximalwert 15 und dem Ausgang des Multiplizierers 2
dar. Der Ausgang dieser Schaltung 3 ist ein Mitgliedswert.
Bei diesem Ausführungsbeispiel ist, wie im vorhergehenden
beschrieben, der Mitgliedswert bis zu 15. Damit werden Daten
D81 bis D84 von der ODER-Schaltung 4a, die die vier unteren
Bits D71 bis D74 des 8-Bit-Ausganges des Multiplizierers 2
empfängt, invertiert, um das Komplement durch den Subtrahierer
3 für jedes Bit zu erhalten, so daß die Operation von 15-
k×| xo-xi | nach Gleichung (1) durchgeführt wird. k×
| xo-xi | stellt das Ergebnis der Multiplikation durch den
Multiplizierer 2 dar.
Als nächstes erfolgt die Beschreibung der Tatsache, daß der
Subtrahierer 3 eine Funktion des Umwandelns der Mitgliedsfunktion
vom A-Typ in die V-Funktion (Fig. 8D), wie oben beschrieben,
aufweist. Wie aus Fig. 8D ersichtlich, kann die
V-Funktion als komplementierte Form der A-Funktion angesehen
werden. Auf der anderen Seite, da der Subtrahierer 3 sämtliche
Eingangsbits invertiert, so daß die Operation 15-k×
| xo-xi | durchgeführt wird, falls sämtliche Eingangsbits an
den Subtrahierer 3, ohne invertiert zu werden, unverändert
ausgegeben werden, würde die A-Funktion in die V-Funktion
umgewandelt. Aus diesem Grund ist der Subtrahierer 3 aus
EXCLUSIV-ODER-Schaltungen 15a bis 15d ausgebildet. Das
heißt, falls die Mitgliedsfunktion die A-Funktion, die N-
Funktion oder die V-Funktion ist, dann sind K1 und K2 gleich
"0,0", "0,1" oder "1,0", wie in Fig. 7 gezeigt. Damit erzeugt
die NAND-Schaltung 22 der Formumwandlungsschaltung 2-1
in jedem Fall eine "1". Dann invertieren die EXCLUSIV-ODER-
Schaltungen 15a bis 15d des Subtrahierers 3 die Eingänge D84
bis D81 zur Durchführung der Operation 15-k×| xo-xi |.
Wenn K1="1" und K2="1", erzeugt auf der anderen Seite
die NAND-Schaltung 22 eine "0", so daß die EXCLUSIV-ODER-
Schaltungen 15a bis 15d die Eingänge D84 bis D81 unverändert
ausgeben. Dementsprechend wird, wenn K1="1" uns K2="1",
die A-Funktion in die V-Funktion umgewandelt.
Als nächstes wird ein drittes Beispiel einer Definitionsschaltung
910 für die Mitgliedsfunktion beschrieben. Gleichung
(1) kann wie folgt neu geschrieben werden:
μ(xi) = 15 - | k · xo-k · xi | ,
wenn 15 - | k · xo-k · xi | < 0,
μ(xi) = 0 (4)
wenn 15 - | k · xo-k · xi | < 0,
μ(xi) = 0 (4)
Da k und xo jeweils Definitionsparameter darstellen, kann k · xo
als Definitionsparameter behandelt werden. Gleichung
(4) kann durch die in Fig. 21 gezeigte Definitionsschaltung
910 für die Mitgliedsfunktion implementiert sein. In Fig. 21
führt der Multiplizierer 410 die Multiplikation von k×xi
durch, und ein erster Subtrahierer 411 erhält den absuluten
Wert | k · xo-k · xi | der Differenz zwischen dem vom
Multiplizierer 410 erhaltenen Produkt k · xo und dem als
Parameter eingegebenen k · xo. Als nächstes subtrahiert ein
zweiter Subtrahierer 412 den Ausgang des ersten Subtrahierers
411 vom Maximalmitgliedswert 15, um 15-| k · xo-k · xi |
zu erhalten. Falls dabei ein Übertrag als Ergebnis der
Subtraktion auftritt, d. h. 15-| k · xo-k · xi | <0,
wird ein Bereichsunterschreitungsausgang des zweiten Subtrahierers
412 verwendet, um die UND-Schaltung 413 nichtleitend
zu bewirken, wodurch sämtliche Ausgänge der UND-Schaltung
413 zu 0 gemacht werden. Folglich wird ein Mitgliedswert von
0 erhalten.
Falls der erste Subtrahierer 411 ähnlich dem Subtrahierer 1
gemäß den Fig. 6 und 9 ist, kann der fünfte Bitausgang des
Subtrahierers 1 als Alternative für den Bereichsunterschreitungsausgang
verwendet sein. In Fig. 22 ist ein viertes Beispiel
einer Definitionsschaltung 910 für die Mitgliedsfunktion
veranschaulicht, die den fünften Bitausgang des ersten
Subtrahierers verwendet, bei dem die UND-Schaltung 413 gemäß
Fig. 21 durch eine ODER-Schaltung 413a ersetzt ist, welche
zwischen einem ersten Subtrahierer 411 und einem zweiten
Subtrahierer 412 verbunden ist.
Gleichung (4) kann wie folgt neu geschrieben sein:
Wenn 15 - k · xo < 0 ,
μ(xi) = k · xi - | 15-k · xo | (5)
μ(xi) = k · xi - | 15-k · xo | (5)
Wenn 15 - k · xo 0 ,
μ(xi) = k · xi + | 15-k · xo | (6)
μ(xi) = k · xi + | 15-k · xo | (6)
In Fig. 23 ist ein fünftes Beispiel der Definitionsschaltung
910 für die Mitgliedsfunktion, die die Gleichungen (5) und
(6) implementiert, dargestellt. Bei diesem Beispiel wird k · xi
zuerst von dem Multiplizierer 416 erhalten. Der Subtrahierer
415 erhält den Absolutwert | 15-k · xo | der Differenz
zwischen dem Maximalmitgliedswert 15 und dem Parameter
k · xo. Als Ergebnis der Subtraktion, falls 15-k · xo<0,
erzeugt der Subtrahierer 415 dann einen Bereichsunterschreitungsausgang,
und der Addierer/Subtrahierer 417 führt dann
die Subtraktion zwischen dem Ausgang des Subtrahierers 415
und dem Ausgang des Multiplizierers 416 aus. Im Gegensatz
dazu, wenn der Subtrahierer 415 keine Bereichsunterschreitung
erzeugt, führt der Addierer/Subtrahierer 417
die Addition durch. Der Addierer/Subtrahierer 417 führt nämlich
die arithmetischen Operationen der Gleichungen (5) und
(6) durch.
Wenn der Addierer/Subtrahierer 417 die arithmetischen
Operationen der Gleichung (5) unter der Bedingung
durchführt, daß 15-k · xo<0 ist und folglich
Bereichsunterschreitung auftritt, wird die UND-Schaltung 418
verwendet, um alle Bits zu "0"en zu machen, so daß der
Mitgliedswert zu 0 gesetzt wird.
Bei der obigen Beschreibung stellen die Typen der Mitgliedsfunktionen
die A-Funktion, die N-Funktion, die S-Funktion
und die V-Funktion dar. Im Falle der A-Funktion oder der V-
Funktion sind die Steigungen der beiden schrägen Linien eines
Dreiecks mit einem Scheitelpunkt bei xo, welches
eine Falls-Teil-Mitgliedsfunktion darstellt, gleichförmig
durch den Definitionsparameter k bestimmt. Das heißt, das
Dreieck ist axialsymmetrisch bezüglich der vertikalen Linie,
die den Mittelpunkt xo einschließt. Damit werden bei der
Bestimmung von "Falls A" bei "Falls A, dann B" die der Verschwommen-
Theorie einzigartigen, mehrdeutigen Konturen
ungenügend gesetzt, da die Steigungen immer beidseitig
symmetrisch sind. Folglich kann ein Nachteil in Abhängigkeit
der Typen der gesteuerten Objekte bewirkt sein. Dies bewirkt
keinen geringen Einfluß auf Variationen auf das Überlappen
benachbarter Bezeichnungen (Folgerungsergebnisse), wie
beispielsweise PB (positiv groß) und PM (positiv medium)
beim letzten Folgerungsprozeß nach dem "Dann B", womit
besondere Aufmerksamkeit benötigt wird. Aus diesem Grund
wird eine Schaltung erläutert, die eine Mitgliedsfunktion
der A-Funktion oder V-Funktion definieren kann, bei denen
die Steigungen auf beiden Seiten des Wendepunktes variiert
werden können.
Fig. 24 zeigt ein Blockdiagramm eines sechsten Beispiels
der Definitionsschaltung 910 für die Mitgliedsfunktion. Das
sechste Beispiel ist gekennzeichnet durch das Vorsehen einer
Auswahlschaltung 2a, die zum Auswählen einer Steigung angepaßt
ist. Als ein Beispiel stellt die Schaltung gemäß Fig. 24
eine Schaltung dar, die durch einfaches Addieren der Auswahlschaltung
2a an die in Fig. 6 gezeigte Definitionsschaltung
910 für die Mitgliedsfunktion erhalten worden ist. Obwohl
deren Veranschaulichung weggelassen wurde, können die
in den Fig. 9 und 21 bis 23 gezeigten Definitionsschaltungen
für die Mitgliedsfunktion ähnlich modifiziert sein.
In Fig. 24 legt der erste Subtrahierer 1 den Absolutwert
| xo-xi | der Differenz zwichen dem Wendepunkt xo der Mitgliedsfunktion
μ(x) und dem Eingangswert (xi) an den Multiplizierer
2 und darüber hinaus ein Steuersignal Co entsprechend
dem Plus- oder Minuszeichen der Differenz xo-xi an
den Auswähler 2a. Der Auswähler 2a ist mit zwei
verschiedenen Steigungsparametern k1 und k2 versorgt und
legt entweder k1 oder k2 an den Multiplizierer 2
entsprechend dem Steuersignal Co. Wenn xo-xi<0, d. h. xi
<xo, wird k1 ausgewählt, während, wenn xo-xi0, d. h.
xixo, k2 ausgewählt wird. Der Multiplizierer 2 berechnet
k1×| xo-xi | oder k2×| xo-xi | zum Anlegen an den
zweiten Subtrahierer 3. Der Multiplizierer 2 kann durch eine
Divisionsschaltung ersetzt sein. In diesem Fall berechnet
die Divisionsschaltung | xo-xi |÷k1 oder | xo-xi |÷k2.
Mit den durch k1 und k2 gesetzten unterschiedlichen Werten
kann eine Falls-Teil-Mitgliedsfunktion (A-Funktion) definiert
werden, die auf beiden Seiten des Wendepunktes xo verschiedene
Steigungen aufweist, wie in den Fig. 25A und 25B
gezeigt. Es wird vermerkt, daß die V-Funktion ebenfalls
durch Invertieren der A-Funktion definiert sein kann, bei
der die Steigungen auf beiden Seiten des Wendepunktes differieren.
In Fig. 26 ist ein siebtes Beispiel einer Definitionsschaltung
910 für die Mitgliedsfunktion dargestellt, bei der ein
Maximum von drei Wendepunkten und ein Maximum von vier Steigungen
beliebig gesetzt sein können. Hier wird solch eine
Funktion als eine F-Funktion definiert. Ferner wird eine
Funktion, bei der dessen Mitgliedswert auf 0 (Minimalwert)
fixiert ist, als eine P-Funktion definiert.
Fig. 27 veranschaulicht ein typisches Beispiel der F-Funktion.
Die größte Eigenart der F-Funktion besteht darin, daß
eine von vier Arten von linearen Funktionen, die unterschiedlich
zueinander in der Steigung sind, beliebig entsprechend
dem Eingang xi ausgewählt werden können. Ein
Punkt, bei dem die linearen Funktionen von einer zur anderen
geschaltet werden können, ist ein Wendepunkt. Bei diesem
Beispiel werden der Hauptwendepunkt xo entsprechend dem
Scheitelpunkt des Dreiecks und die Unterwendepunkte xL und
xR auf den linken und rechten Seiten von xo jeweils auf xo=
12, xL=8 und xR=18 gesetzt. Die Steigungen k1 bis k4 der
Bereiche, die durch die Wendepunkte aufgeteilt sind, sind
jeweils k1=1, k2=2, k3=4/3 und k4=7/11.
Die Fig. 28 und 29 veranschaulichen weitere Beispiele der F-
Funktion. Diese repräsentieren trapezförmige Mitgliedsfunktionen.
Durch Setzen der Steigung k2 einer linearen Funktion
zwischen den Wendepunkten xL und xo und der Steigung k3 der
linearen Funktion zwischen den Wendepunkten xo und xR auf 0
wird der Maximalmitgliedswert 15, womit die in Fig. 28
gezeigte trapezförmige Mitgliedsfunktion implementiert
wird.
Die Fig. 30A bis 30N veranschaulichen einen Teil von Variationen
der F-Funktion. Um den Mitgliedswert auf 0 unabhängig
von Variationen der Eingangsvariablen xi zu fixieren, werden
die Koeffizienten der Steigung k1 bis k4 so gesetzt, daß
k1=k2=k3=k4=0 ist. Diese Funktion wird P-Funktion genannt
und ist in Fig. 30I gezeigt.
Im folgenden wird der allgemeine Ausdruck für die F-Funktion
beschrieben. Auch bei diesem Fall gründet sich die Definition
und die Konzeption der Mitgliedsfunktion auf der Mitgliedsfunktion
μ(xi) nach Gleichung (1).
Wenn xi < xL,
μ1 (xi) = μ2 (xL) - k1 × | xL-xi |
= 15 - k2 × | xo-xL | - k1 × | xL-xi | (7)
μ1 (xi) = μ2 (xL) - k1 × | xL-xi |
= 15 - k2 × | xo-xL | - k1 × | xL-xi | (7)
Wenn xL xi xo,
μ2(xi) = 15 - k2 × | xo-xi | (8)
μ2(xi) = 15 - k2 × | xo-xi | (8)
Wenn xo < xi xR,
μ3(xi) = 15 - k3 × | xo-xi | (9)
μ3(xi) = 15 - k3 × | xo-xi | (9)
Wenn xR < xi,
μ4(xi) = μ3(xR) - k4 × | xR-xi |
= 15 - k3 × | xo-xR | - k4 × | xR-xi | (10)
μ4(xi) = μ3(xR) - k4 × | xR-xi |
= 15 - k3 × | xo-xR | - k4 × | xR-xi | (10)
Fig. 26 stellt ein Blockdiagramm einer Definitionsschaltung
für die Mitgliedsfunktion dar zum Durchführen der arithmetischen
Operationen entsprechend den Gleichungen (7) bis (10),
wobei deren Verbindungsdiagramm im einzelnen in Fig. 31 gezeigt
ist.
In Fig. 31 stellt der erste Subtrahierer 390 einen arithmetischen
Operationsblock dar, der die Subtraktion zwischen
einem Wert der Eingangsvariablen xi und dem Wert von jedem
der Wendepunkte xo, xL und xR zum Ausgeben der absoluten
Werte der Resultate der Subtraktion | xo-xi |, | xL-xi |
und | xR-xi | und Vorzeichensignale, die ein Plus- oder
Minuszeichen des Ergebnisses der Subtraktion repräsentieren,
durchführt. Eine Auswählerschaltung 391 stellt einen Block
zum Auswählen einer von den Wendepunkten xo, xL und xR entsprechend
zu dem Wert der Eingangsvariablen xi dar. Ein
zweiter Subtrahierer 392 führt Subtraktionen zwischen xo und
xL und zwischen xo und xR aus, d. h., | xo-xL |, | xo-
xR |, um die in den Gleichungen (7) und (10) enthaltenen
Konstanten μ2(xL)=15-k2×| xo-xL | und μ3(xR)=15-
k3×| xo-xR | zu erhalten. Ein erster Komparator 393 und
ein zweiter Komparator/erste Funktionsbestimmungsschaltung
394 bilden zusammen eine Komparatorschaltung, die allein
die aufeinanderfolgende Steuerung innerhalb der Definitionsschaltung
910 für die Mitgliedsfunktion durchführt.
Die Eingangsvariable xi wird im Pegel mit den Wendepunkten
xL und xR über diese Komparatorschaltung verglichen. Dabei
spezifiziert eine Kombination eines Vorzeichensignals von
dem Subtrahierer 390 und den Formparametern K0, K1 und K2
die Form der Funktion und bestimmt die Steigungskoeffizienten
k1 bis k4. Um die Konstanten μ2(xL)=15-k2×| xo-
xL | und μ3(xR)=15-k3×| xo-xR | in den Gleichungen
(7) und (10) zu erhalten, führt ein erster Multiplizierer
395 die Multiplikation k2×| xo-xL | und k3×| xo-xR |
durch. Erste und zweite Koeffizientenbestimmungsschaltungen
396 und 397 stellen jeweils Auswähler dar. Die
Steigungskoeffizienten k1 bis k4, die beliebig gesetzt
wurden, werden, geeignet durch Schaltsignale, von dem ersten
Komparator 393 und der zweiten Komparator-/ersten
Funktionsbestimmungsschaltung 394 ausgewählt. Ein zweiter
Multiplizierer/dritter Subtrahierer/zweite
Funktionsbestimmungsschaltung 398 multipliziert den
arithmetischen Operationsausgang des Blockes 390 und die von
den Blöcken 396 und 397 ausgewählten Steigungskoeffizienten
k1 bis k4, um dabei k1×| xL-xi |, k2×| xo-xi |, k3×
| xo-xi | und k4×| xR-xi | in den Gleichungen (7) bis
(10) zu erhalten. Die Kombination des arithmetischen
Operationsausganges des Blockes 390 und der Steigungskoeffizienten
k1 bis k4 wird durch die Schaltsignale von den Blöcken
393 und 394 bestimmt. Ferner führt der Block 398 die
arithmetischen Operationen 15-k2×| xo-xi | und 15-k3
×| xo-xi | zum Erhalten der Gleichungen (8) und (9) durch
und darüber hinaus die arithmetischen Operationen 15-k2×
| xo-xL |-k1×| xL-xi | und 15-k3×| xo-xR |-k4×
| xR-xi | zum Erhalten der Gleichungen (7) und (10). Es
wird hier vermerkt, daß die von den Blöcken 395 und 398
durchgeführte Multiplikation durch eine Division ersetzt
sein kann.
Fig. 32 zeigt eine praktische Anordnung der in Fig. 31 gezeigten
Definitionsschaltung 910 für die Mitgliedsfunktion.
Hier wird angenommen, daß die Mitgliedsfunktion μ(xi) hinsichtlich
der Verwendbarkeit und des allgemeinen Gebrauchs
eine Funktion mit 5-Bit-Daten darstellt. Dementsprechend
kann die Mitgliedsfunktion μ(xi) wie folgt ausgedrückt
sein.
Wenn xi < xL,
μ1(xi) = μ2(xL) - k1 × | xL-xi |
= 31 - k2 × | xo-xL | - k1 × | xL-xi | (11)
μ1(xi) = μ2(xL) - k1 × | xL-xi |
= 31 - k2 × | xo-xL | - k1 × | xL-xi | (11)
Wenn xL xi xo,
μ2(xi) = 31 - k2 × | xo-xi | (12)
μ2(xi) = 31 - k2 × | xo-xi | (12)
Wenn xo < xi xR,
μ3(xi) = 31 - k3 × | xo-xi | (13)
μ3(xi) = 31 - k3 × | xo-xi | (13)
Wenn xR < xi,
μ4(xi) = μ3(xR) - k4 × | xR-xi |
= 31 - k3 × | xo-xR | - k4 × | xR-xi | (14)
μ4(xi) = μ3(xR) - k4 × | xR-xi |
= 31 - k3 × | xo-xR | - k4 × | xR-xi | (14)
Die Blöcke 400 bis 407 der Definitionsschaltung 910 für die
Mitgliedsfunktion gemäß Fig. 32 weist eine Eins-zu-Eins-Entsprechung
mit den Blöcken 390 bis 398 der Definitionsschaltung
910 für die Mitgliedsfunktion gemäß Fig. 31 auf, außer
für die Tatsache, daß die Blöcke 396 und 397 zur Ausbildung
eines einzigen Blockes 406 kombiniert sind. Darüber hinaus
werden die funktionellen Blöcke 400 bis 407 im Detail in den
Fig. 33 bis 40 gezeigt.
Fig. 33 zeigt einen Subtrahierer 400 zum Durchführen der
Subtraktionen von | xo-xi |, | xL-xi | und | xR-xi |.
Die Ergebnisse der Subtraktionen zwischen dem Eingang xi und
dem Wendepunkt xo, zwischen dem Eingang xi und dem Wendepunkt
xL und zwischen dem Eingang xi und dem Wendepunkt xR
werden vom Anschluß So genommen. Wenn xo-xi0 oder xL-
xi0, befindet sich Co auf einem "HIGH"-Pegel, während,
wenn xR-xi<0 oder xR-xi<0, sich Co auf einem "LOW"-
Pegel befindet.
Fig. 34 zeigt eine Auswählerschaltung 401 zum Auswählen der
Wendepunkte xo, xL und xR in Folge.
Fig. 35 zeigt einen Subtrahierer 402 zum Durchführen der
Subtraktionen | xo-xL | und | xo-xR |. Das Ergebnis der
Subtraktion wird vom Anschluß So genommen.
Fig. 36 zeigt einen Steigungskoeffizientenschaltkomparator
403, der aus einem 5-Bit-Größenkomparator gebildet ist. Ein
Größenvergleich zwischen der Eingangsvariablen xi und dem
Wendepunkt xL unterscheidet zwischen Bedingungen xi<xL und
xoxixL.
Fig. 37 zeigt eine Steigungskoeffizientenschaltkomparator-/
Funktionsbestimmungsschaltung 404, die aus einem 5-Bit-
Größenkomparator gebildet ist, der einen Funktionsbestimmungscodierer
enthält. Ein Größenvergleich zwischen der Eingangsvariablen
xi und dem Wendepunkt xR unterscheidet zwischen
Bedingungen xo<xixR und xi<xR. Des weiteren gibt
die Funktionsbestimmungsschaltung 404 vorbestimmte Funktionsbestimmungsparameter
entsprechend den in Fig. 41 gezeigten
Ein- und Ausgangsbeziehungen aus.
Fig. 38 zeigt einen Multiplizierer 405 zum Ausführen der Multiplikationen
k2×| xo-xL | und k3×| xo-xR |, welcher aus
einem 5-Bit-Multiplizierer gebildet ist, welcher eine Auswählerschaltung
aufweist.
Fig. 39 zeigt eine Koeffizientenbestimmungsschaltung 406 zum
Auswählen der Steigungskoeffizienten k1 bis k4 in Folge.
Fig. 40 zeigt eine Mitgliedsfunktionsbestimmungsschaltung
407, welche aus einem Multiplizierer und einem Zweistufen-
Subtrahierer gebildet ist. Der vorhergehende 5-Bit-Multiplizierer
führt Multiplikationen der Ergebnisse der Subtraktionen
| xo-xi |, | xL-xi | und | xR-xi | mit den Steigungskoeffizienten
k1 bis k4 durch. Der in der Multiplikationsschaltung
enthaltene erste Stufensubtrahierer führt dann
die Subtraktionen 31-k1×| xL-xi |, 31-k2×| xo-xi |,
31-k3×| xo-xi | und 31-k4×| xR-xi | durch.
Ferner führt der zweite Stufensubtrahierer die Subtraktionen
k2×| xo-xL | und k3×| xo-xR | durch, die jeweils
konstante Teile der Mitgliedsfunktionen μ1(xi) und μ4(xi)
darstellen. Dementsprechend stellen die Ergebnisse dieser
Subtraktionen μ1(xi), μ2(xi), μ3(xi) und μ4(xi) dar.
Eine Gruppe von Gattern auf der Ausgangsseite des zweiten
Stufensubtrahierers ist in eine vorhergehende Untergruppe
von ODER-Schaltungen und eine nachfolgende Gruppe von EXCLUSIV-
ODER-Schaltungen getrennt, wobei die vorhergehenden und
nachfolgenden Untergruppen jeweils die P-Funktion und die V-
Funktion setzen. Der letzte Ausgang Q0, der in einem 5-Bit-
Binärcode dargestellt ist, wird an den Minimalwertberechner
920 angelegt.
Die Fig. 42 bis 48 stellen Schaltungsdiagramme von Makrozellen
dar, die in jedem der in den Fig. 33 bis 40 gezeigten
funktionellen Blöcken enthalten sind. Fig. 42 ist ein Schaltungsdiagramm
eines Halbaddierers QHA. Fig. 43 ist ein Schaltungsdiagramm
eines Volladdierers QAI, bei dem ein CARRY-
Eingang Ci auf den Halbaddierer QHA addiert wird. Fig. 44
ist ein Schaltungsdiagramm eines 5-Bit-Größenkomparators
QC5. Fig. 45 ist ein Schaltungsdiagramm eines 2-Bit-Volladdierers
QA2. Fig. 46 ist ein Schaltungsdiagramm eines 4-Bit-
Volladdierers QA4. Fig. 47 ist ein Schaltungsdiagramm eines
5-Bit-Multiplizierers QF5. Fig. 48 ist ein Schaltungsdiagramm
eines 5-Bit-Multiplizierers QSX, an den eine Ausgangsinvertierschaltung
hinzugefügt ist.
Auch bei dem siebten Beispiel der Definitionsschaltung für
die Mitgliedsfunktion würde die Verwendung der Flexibilität
der F-Funktion es ermöglichen, daß die A-Funktion, die N-
Funktion und die S-Funktion relativ leicht gesetzt werden
können. Darüber hinaus kann die N-Funktion und die S-Funktion
ebenso durch Spezifizieren der Formparameter K0, K1 und K2
gesetzt werden.
Wie oben beschrieben, können entsprechend dem siebten Beispiel
der Definitionsschaltung für die Mitgliedsfunktion
verschiedene Steigungen auf beiden Seiten eines Wendepunktes
gesetzt werden und darüber hinaus eine Vielzahl von Wendepunkten
gesetzt werden, wodurch es ermöglicht wird, Falls-
Teil-Mitgliedsfunktionen von gewünschter Form mit einer einfachen
Konstruktion frei zu definieren.
Als nächstes wird die Minimalwertberechnungseinheit 920 aus
Fig. 2 beschrieben. Die Minimalwertberechnung bei der Verschwommen-
Folgerung nimmt den Minimalwert einer Vielzahl von
gegebenen Mitgliedswerten. Im Gegensatz dazu nimmt die Maximalwertberechnung
den Maximalwert. Um eine Minimalwertberechnungseinheit
mit digitalen Schaltungen, welche im Binärcode
dargestellte Zahlen verarbeitet, zu implementieren,
wird ein Verfahren angewandt, bei dem ein digitaler Komparator
verwendet wird. Obwohl jedoch ein digitaler Komparator,
der zwei Zahlen verarbeitet, bei einem relativ einfachen
Aufbau implementiert werden kann, muß ein digitaler Komparator,
der drei oder mehr Zahlen verarbeitet, in der Schaltungsintegration
vergrößert sein. Daher kann die Verwendung
eines digitalen Komparators nicht als ein sehr gutes Verfahren
angesehen werden. Die folgenden Beschreibungen beziehen
sich auf zwei Typen von Minimalwertberechnungseinheiten, wobei
eine einen digitalen Komparator verwendet und die andere
keinen digitalen Komparator verwendet.
In Fig. 49 ist das erste Beispiel einer Minimalwertberechnungseinheit
dargestellt, welche einen digitalen Komparator
verwendet. Ein digitaler Komparator 50 führt einen Vergleich
zwischen zwei Binärzahlen durch und ist aus einem Hochgeschwindigkeits-
CMOS-Standardlogik-IC, wie beispielsweise
74HC85, gebildet. Die Ein- und Ausgangsbeziehungen des digitalen
Komparators 50 sind in Fig. 50 dargestellt. Das Symbol
X bezeichnet einen indifferenten Zustand, bei dem es egal
ist, ob "0"en oder "1"en vorhanden sind.
Da der digitale Komparator 50 einen Kaskadeneingangsanschluß
(A=B)in aufweist, der immer auf einem "1"-(High)-Pegel gehalten
ist, befindet sich ein Ausgangsanschluß (A=B)out
auf einem "0"-Pegel, wenn zwei 4-Bit-Binärcodes A und B
gleich A≠B sind, oder auf einem "1"-Pegel, wenn A=B.
Ähnlich dazu befindet sich ein Ausgangsanschluß (A<B)out
auf einem "1"-Pegel, wenn A<B, oder auf einem "0"-Pegel,
wenn A<B. Ein Ausgangsanschluß (A<B)out befindet sich
auf einem "1"-Pegel, wenn A<B, oder auf einem "0"-Pegel,
wenn A<B.
Wenn die Binärcodes A und B die Beziehung A<B erfüllen,
erzeugt der digitale Komparator 50 einen "1"-Ausgang bei
seinem Ausgangsanschluß (A<B)out, so daß die UND-
Schaltungen 53a bis 53d jeweils Bits B4 bis B1 eines 4-Bit-
Binärcodes unverändert ausgeben. Dabei befinden sich beide
Ausgangsanschlüsse (A<B)out und (A=B)out auf einem "0"-
Pegel, so daß eine ODER-Schaltung 51 einen "0"-Ausgang zum
Unwirksammachen der UND-Schaltungen 52a bis 52d erzeugt.
Damit geben die ODER-Schaltungen 54a bis 54d jeweils
Ausgänge der UND-Schaltungen 53a bis 53d aus, d. h., den
Eingangs-Binärcode B.
Wenn die beiden Binärcodes A und B auf der anderen Seite die
Bedingung AB (A<B oder A=B) erfüllen, befindet sich
der Ausgangsanschluß (A<B)out auf einem "0"-Pegel, so daß
die UND-Schaltungen 53a bis 53d sämtlich "0"-Ausgänge erzeugen.
Da bei diesem Fall zumindest einer der Ausgangsanschlüsse
(A=B)out und (A<B)out sich auf einem "1"-Pegel
befindet, ist der Ausgang der ODER-Schaltung 51 auf einem
"1"-Pegel, wodurch die UND-Schaltungen 52a bis 52b zur Ausgabe
von jeweiligen unveränderten Bits von dem Eingangsbinärcode
A verursacht werden. Der Eingangsbinärcode A wird
daher von den ODER-Schaltungen 54a bis 54d genommen.
Wenn A=B, tritt kein Problem auf, welches von A und B ausgewählt
wird. Bei diesem Beispiel wird A als der
Minimalwertausgang ausgewählt.
Auf diese Weise führt die Minimalwertberechnungsschaltung
gemäß Fig. 49 die Minimalwertberechnung der beiden 4-Bit-
Binärcodes A und B durch. Wenn die Anzahl von Eingangsbinärcodes
drei oder mehr beträgt, wobei N als die Anzahl der
Eingänge angenommen wird, würde eine Kombination von (N-1)
digitalen Komparatoren 50, UND-Schaltungen 52 und 53 und
ODER-Schaltungen 51 und 54 eine Minimalwertberechnungseinheit
implementieren.
In Fig. 51 ist ein zweites Beispiel einer Minimalwertberechnungsschaltung
für 4-Bit-Binärcodes dargestellt, die keinen
digitalen Komparator verwendet. In dieser Figur bezeichnen
die Bezugszeichen 64a bis 64d, 69a bis 69d und 74a bis 74d
jeweils nichtinvertierende Pufferschaltungen vom offenen
Drain-Ausgangstyp (offene Kollektorausgänge im Fall des Bipolar-
IC), welche keine logische Operation durchführen. Ein
Beispiel der nichtinvertierenden Pufferschaltung vom offenen
Drain-Ausgangstyp ist in Fig. 52 veranschaulicht. Ein
Beispiel der nichtinvertierenden Pufferschaltung vom offenen
Kollektorausgangstyp ist in Fig. 53 dargestellt. Durch
Bewirken eines CS-(chip select-Chipauswahl)-Einganges "0"
in Fig. 52 können die über Pull-up-Widerstände 75a bis 75d
in die nichtinvertierenden Pufferschaltungen 64a bis 64d,
69a bis 69d und 74a bis 74d fließenden Ströme abgeblockt
werden, während die Minimalwertberechnungsschaltung unwirksam
gemacht wird, womit der Leistungsverbrauch verringert
wird, während die Schaltung unwirksam gemacht ist. Falls
solche CS-Signale in ein einziges Signal kombiniert werden
und die Schaltung in einem IC integriert ist, kann CS als
deren Betriebs-Halte-Signal dienen.
Die Bezugszeichen 60, 65 und 70 aus Fig. 51 bezeichnen Vergleichsoperationsschaltungen,
deren Ausgänge durch die
Signalleitungen WO1, WO2, WO3 und WO4 ODER-verdrahtet sind
(wire-OR). Diese Signalleitungen dienen als Ausgänge D1, D2,
D3 und D4 der Minimalwertberechnungseinheit. Ein "High"-Pegel
der Signalleitungen WO1 bis WO4 ist durch die Pull-up-
Widerstände 75a bis 75d bestimmt.
Die Minimalwertberechnungsschaltung führt aufeinanderfolgend
den Größenvergleich der 4-Bit-Binärcodes A, B und C bitweise
durch, beginnend mit deren meist-signifikanten Bits (MSBs)
für die Minimalwertberechnung.
Unter Bezugnahme auf Fig. 54 folgt die Beschreibung eines
Falles, bei dem die drei 4-Bit-Binärzahlen A, B und C jeweils
"1001" (=9), "0101" (=5) und "0110" (=6) sind. Zuerst
ist wegen dem meist-signifikanten Bit, da A4="1" ist,
B4="0" und da C4="0", ist A4<B4=C4. Bei dieser Stufe
ist A<B und A<C. Es ist daher offensichtlich, daß A
maximal für A, B und C ist und der Vergleich lediglich
zwischen B und C für die drei unteren Bits genügt. Da A4=
"1" ist, wird der Ausgang der nichtinvertierenden
Pufferschaltung 64a geöffnet, d. h. in den Zustand hoher
Impedanz. Da B4=C4="0" ist, werden die Ausgänge der
nichtinvertierenden Pufferschaltungen 69a und 74a
kurzgeschlossen, d. h. auf einen "0"-Pegel. Da die Ausgänge
der nichtinvertierenden Pufferschaltung 64a, 69a und 74a
durch die Signalleitung WO4 ODER-verdrahtet sind, befindet
sich die Signalleitung WO4 auf einem "Low"-Pegel (="0").
Damit ist der Ausgang D4 der Minimalwertberechnungsschaltung
gleich "0".
Die EXCLUSIV-ODER-Schaltung 61a der Vergleichsoperationsschaltung
60 erzeugt einen "1"-Ausgang, da A4="1" und WO4
="0". Die ODER-Schaltungen 63a, 62a und 62b erzeugen daher
"1"-Ausgänge. Die ODER-Schaltungen 63b und 63c erzeugen
ebenfalls "1"-Ausgänge. Damit sind die Ausgänge der
nichtinvertierenden Pufferschaltungen 64b, 64c und 64d in
dem Zustand hoher Impedanz, unabhängig von den Pegeln der
Eingänge A3, A2 und A1. Dies ermöglicht die Betrachtung, daß
die drei unteren Bits A3, A2 und A1 des Einganges A keinen
Einfluß auf die drei unteren Bits D3, D2 und D1 des
Minimalwertberechnungsausganges haben. Daher müssen B und C
für die drei unteren Bits der Eingänge lediglich in der
Größe, wie oben beschrieben, verglichen werden.
Die EXCLUSIV-ODER-Schaltung 66a der Vergleichsoperationsschaltung
65 erzeugt einen "0"-Ausgang, da B4="0" und WO4
="0", wie oben beschrieben. Die ODER-Schaltung 68a legt daher
B3 an die nichtinvertierende Pufferschaltung 69b an.
Ähnlich legt die ODER-Schaltung 73a der Vergleichsoperationsschaltung
70 C3 an die nichtinvertierende Pufferschaltung
74b an, da C4="0" und WO4="1". Da im vorliegenden Fall
B3 "1" ist und C3 ebenfalls "1" ist, d. h. B3=C3, sind die
Ausgänge der nichtinvertierenden Pufferschaltungen 69b und
74b beide in dem Zustand hoher Impedanz. Da der Ausgang der
nichtinvertierenden Pufferschaltung 64d ebenfalls in dem
Zustand hoher Impedanz, wie oben beschrieben, ist, geht WO3
über den Pull-up-Widerstand 75c auf einen "High"-Pegel (=
"1"), so daß der Ausgang D3 der
Minimalwertberechnungsschaltung auf einen "1"-Pegel geht.
Der Ausgang der EXCLUSIV-ODER-Schaltung 66b der Vergleichsoperationsschaltung
65 befindet sich, wie oben beschrieben,
auf einem "0"-Pegel, da B3="1" und WO3="1". Da der Ausgang
der EXCLUSIV-ODER-Schaltung 66a ebenfalls auf einem
"0"-Pegel liegt, wie oben beschrieben, erzeugt die ODER-
Schaltung 67a einen "1"-Ausgang, so daß die ODER-Schaltung
68b B2 unverändert ausgibt. Ähnlich dazu gibt die ODER-
Schaltung 73b der Vergleichsoperationsschaltung 70 ebenfalls
C2 aus, da C3="1" und WO3="1". Bei dieser Stufe wird die
Tatsache, daß C<B, evident, da B2="0" und C2="1".
Der Ausgang der nichtinvertierenden Pufferschaltung 69c der
Vergleichsoperationsschaltung 65 wird kurzgeschlossen (=
"0"), da B2="0", während der Ausgang der nichtinvertierenden
Pufferschaltung 74 der Vergleichsoperationsschaltung 70
im Zustand hoher Impedanz ist, da C2="1". Da der Ausgang
der nichtinvertierenden Pufferschaltung 64c der Vergleichsoperationsschaltung
60 ebenfalls im Zustand hoher Impedanz,
wie oben beschrieben, ist, geht WO2 wegen der ODER-verdrahteten
Verbindung auf einen "0"-Pegel, so daß der Ausgang D2
der Minimalwertberechnungsschaltung auf einen "0"-Pegel
geht. Damit geht der Ausgang der EXCLUSIV-ODER-Schaltung 71c
auf einen "1"-Pegel, da C2="1" und WO2="1".
Der Ausgang der ODER-Schaltung 72b geht damit auf einen "1"-
Pegel, und darüber hinaus geht der Ausgang der ODER-Schaltung
73c ebenfalls auf einen "1"-Pegel, mit dem Ergebnis, daß der
Ausgang der nichtinvertierenden Pufferschaltung 74d in den
Zustand hoher Impedanz tritt. Der Ausgang der EXCLUSIV-ODER-
Schaltung 66c ist auf einem "0"-Pegel, da B2="0" und WO2=
"0", und der Ausgang der ODER-Schaltung 67a ist auf einem
"0"-Pegel, wie oben beschrieben, und die ODER-Schaltung 67b
erzeugt einen "0"-Ausgang, wodurch die ODER-Schaltung 68c
zur Ausgabe eines unveränderten B1 verursacht wird. Da der
Ausgang der nichtinvertierenden Pufferschaltung 64d im Zustand
hoher Impedanz, wie oben beschrieben, ist, folgt des
weiteren, daß WO1 gleich B1 ist, unabhängig von A1 und C1.
Mit anderen Worten, da B1="1", ist WO1="1". Der Ausgang
D1 der Minimalwertberechnungsschaltung wird daher "1".
Folglich ergibt sich, wie in Fig. 54 gezeigt, D4="0", D3=
"1", D2="0" und D1="1". "0101" (=5) wird daher als ein
Ausgang der Minimalwertberechnungsschaltung 51 erhalten.
Dies ist der Minimalwert der drei Eingangs-Binärzahlen A=
"1001" (=9), B="0101" (=5) und C="0110" (=6). Die Minimalwertberechnung
wurde daher aufgrund der drei Binärzahlen
A, B und C durchgeführt. Das Symbol X in Fig. 54 bezeichnet
eine Größe, die entweder "0" oder "1" sein kann.
Zum Vergrößern der Anzahl der eingegebenen 4-Bit-Binärzahlen
auf vier oder mehr muß lediglich die Anzahl der Vergleichsoperationsschaltungen
60, 65 und 70 aus Fig. 51, deren
Schaltungsanordnung zueinander identisch ist, erhöht werden
und ODER-verdrahtet werden. Durch Hinzufügen von nichtinvertierenden
Pufferschaltungen usw. an den LSB-seitigen Abschnitt
von jeder der Vergleichsoperationsschaltungen 60, 65
und 70 wird es der Minimalwertberechnungsschaltung ermöglicht,
fünf oder mehr Bits zu verarbeiten.
Als nächstes werden die Definitionsschaltung 930 für die
Dann-Teil-Mitgliedsfunktion und die Synthetisierschaltung
940 für die Mitgliedsfunktion beschrieben. Wie vorhin unter
Bezugnahme auf die Definition der Falls-Mitgliedsfunktionen
beschrieben, werden die Dann-Teil-Mitgliedsfunktionen, wie in
den Fig. 4 und 5 gezeigt, als dreieckige Mitgliedsfunktionen
(A-Funktion) behandelt. Unter der Annahme, daß der Mitgliedswert
für eine Falls-Teil-Eingabe die Höhe h einer
dreieckigen Mitgliedsfunktion und die Weite der Verbreiterung
einer Dann-Teil-Mitgliedsfunktion, wie in Fig. 55
gezeigt, gleich w ist, ist die Dann-Teil-Mitgliedsfunktion
definiert als der Bereich S der dreieckigen
Mitgliedsfunktion. Wenn eine Vielzahl von Falls-Teil-
Eingängen vorhanden ist, wird deren Minimalwert, der über
die Minimalwertberechnung erhalten worden ist, als Höhe h
der Mitgliedsfunktion verwendet. Dementsprechend wird die
Dann-Teil-Mitgliedsfunktion wie folgt beschrieben:
S = w × h/2 (15)
Falls W wie w/2 geschrieben wird, kann Gleichung (15) wie
folgt neu geschrieben werden:
S = h × W (16)
W in Gleichung (16) stellt einen Definitionsparameter zum
Definieren der Dann-Teil-Mitgliedsfunktion dar. Als ein Parameter
benötigt W lediglich relative Variationen. Um die
Betriebsweise von Gleichung (16) leicht unter Verwendung einer
digitalen logischen Schaltung zu implementieren, sollte
daher W als ein Verhältnis relativ zu einem Fundamentalwert
von W, der als Einheit (="1") genommen sein kann, gesetzt
werden.
Wenn die Mitgliedsfunktion definiert ist, werden die Positionen
(im folgenden als die Adressen bezeichnet) der Mitgliedsfunktion
entsprechend der Dann-Teil-Eingänge bestimmt.
Im allgemeinen beträgt die Anzahl von Adressen, wie in Fig. 56
gezeigt, sieben. Die folgenden Bezeichnungen werden den
jeweiligen Adressen zugeordnet.
NB: negativ groß (ziemlich klein)
NM: negativ medium (klein)
NS: negativ klein (etwas klein)
ZO: Null
PS: positiv klein (etwas groß)
PM: positiv medium (groß)
PB: positiv groß (ziemlich groß)
NM: negativ medium (klein)
NS: negativ klein (etwas klein)
ZO: Null
PS: positiv klein (etwas groß)
PM: positiv medium (groß)
PB: positiv groß (ziemlich groß)
Wenn die Dann-Teil-Mitgliedsfunktionen S der Gleichung (16)
von mehreren Verschwommen-Regeln definiert werden und von
der Definitionsschaltung 930 für die Dann-Teil-Mitgliedsfunktion
ausgegeben werden, synthetisiert die Synthetisierschaltung
940 für die Mitgliedsfunktion Dann-Teil-Mitgliedsfunktionen
über Maximalwertberechnungen für individuelle
Adressen (Bezeichnungen).
Fig. 57 stellt ein Blockdiagramm einer Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion dar, welche mit digitalen
logischen Schaltungen für jede der Verschwommen-Regeln
aufgebaut ist. Die Definitionsschaltung 930 für die
Dann-Teil-Mitgliedsfunktion erhält den Bereich S [siehe
Gleichung (16) ] der Dann-Teil-Mitgliedsfunktion, die in der
Form dreieckig ist. Die Funktionsdefinitionsschaltung 930
weist eine 4-Bit-Binärcode-Addier-Subtrahierschaltung 140
und eine Verschiebeoperationsschaltung 141 auf.
Der Addierer/Subtrahierer 140 wird durch Modifizieren des
Subtrahierers 1, der in der Definitionsschaltung für die
Falls-Teil-Mitgliedsfunktion (Fig. 10) beschrieben wurde, so
erhalten, daß er als ein Addierer verwendet werden kann,
dessen Schaltungsanordnung in Fig. 58 dargestellt ist. Das
heißt, bei der Addier/Subtrahierschaltung 140 sind die Inverter
6b bis 6e des Subtrahierers 1 durch EXCLUSIV-ODER-
Schaltungen 162a bis 162d ersetzt, und ein Steuereingang SUB
zum Schalten zwischen den Addier- und Subtrahieroperationen
ist hinzugefügt. Wenn der Steuereingang SUB auf einem "1"-
Pegel ist, arbeiten die EXCLUSIV-ODER-Schaltungen 162a bis
162d wie Inverter für die jeweiligen Eingänge b4 bis b1, und
die UND-Schaltung 163 gibt den Ausgang des Inverters 164 unverändert
aus. Damit arbeitet der Addierer/Subtrahierer 140
auf die gleiche Weie wie bei dem Fall, bei dem der Subtrahierer
1 an 4-Bit-Binärzahlen angepaßt ist. Im Gegensatz
dazu, wenn SUB="0", geben die EXCLUSIV-ODER-Schaltungen
162a bis 162d ihre Eingänge b4 bis b1 unverändert aus, und
die UND-Schaltung 163 erzeugt einen "0"-Ausgang. Damit führen
die EXCLUSIV-ODER-Schaltungen 165a bis 165d und der 4-
Bit-Volladdierer 161 keine logischen Operationen durch, so
daß die Addier/Subtrahierschaltung 140 als ein Addierer arbeitet.
Die Verschiebeoperationsschaltung 141 aus Fig. 57 ist im Detail
in Fig. 59 veranschaulicht. Die Verschiebeoperationsschaltung
141 verschiebt jedes der Bits eines 6-Bit-Binärcodes
zur LSB-(letzt-signifikantes Bit)-Seite um die Zahl von
Bits, welche durch die Verschiebesteuereingänge ST1 und ST2
bestimmt ist. Die Ein/Ausgangsbeziehungen der Verschiebeoperationsschaltung
141 sind in Fig. 60 dargestellt.
Wenn ST2="0" und St1="0", erzeugt die NOR-Schaltung 150a
einen "1"-Ausgang mit dem Ergebnis, daß die UND-Schaltungen
151a bis 151f deren jeweilige Eingänge A6 bis A1 unverändert
ausgeben. Die NOR-Schaltungen 150b und 150c erzeugen beide
"0"-Ausgänge, so daß die UND-Schaltungen 152a bis 152e und
153a bis 153d sämtlich "0"-Ausgänge erzeugen. Damit geben
die ODER-Schaltungen 154 und 155a bis 155d A5 bis A1 aus.
Wenn ST2="0" und ST1="0", wird dementsprechend keine
Vergleichsoperation durchgeführt, so daß die Eingänge A6 bis
A1 unverändert auf die Ausgänge B6 bis B1 übertragen werden.
Wenn ST2="0" und ST1="1", erzeugen die NOR-Schaltungen
150a und 150c beide "0"-Ausgänge, so daß die UND-Schaltungen
151a bis 151f und 153a bis 153d sämtlich "0"-Ausgänge erzeugen.
Da die NOR-Schaltung 150b einen "1"-Ausgang erzeugt,
geben die UND-Schaltungen 152a bis 152e ihre jeweiligen Eingänge
A6 bis A2 unverändert aus. Damit geben die ODER-
Schaltungen 154, 155a bis 155d jeweils ihre Eingänge A6 bis
A2 aus, so daß B6 auf einen "0"-Pegel geht. Demtentsprechend
werden die Eingänge A6 bis A1 von B6 bis B1, 52446 00070 552 001000280000000200012000285915233500040 0002003936503 00004 52327 die um ein Bit
zur LSB-Seite verschoben worden sind, genommen.
Wenn ST2="1" und ST1="0", erzeugen die NOR-Schaltungen
150a und 150b beide "0"-Ausgänge, so daß die UND-Schaltungen
151a bis 151f und 152a bis 152e sämtlich "0"-Ausgänge erzeugen.
Da die NOR-Schaltung 150c einen "1"-Ausgang erzeugt,
geben die UND-Schaltungen 153a bis 153d deren jeweilige Eingänge
A6 bis A3 unverändert aus. Damit geben die ODER-Schaltungen
155a bis 155d die Eingänge A6 bis A3 aus, während die
ODER-Schaltung 154 einen "0"-Ausgang erzeugt, so daß B6 auf
einem "0"-Pegel ist. Daher werden die Eingänge A6 bis A1 von
B6 bis B1, die um zwei Bits zur LSB-Seite verschoben worden
sind, genommen.
Wenn ST1="1" und ST2="1", erzeugen die NOR-Schaltungen
150a bis 150c sämtlich "0"-Ausgänge. Damit erzeugen die UND-
Schaltungen 151a bis 151f, 152a bis 152e und 153a bis 153d
sämtlich "0"-Ausgänge, und darüber hinaus erzeugen damit die
ODER-Schaltungen 154, 155a bis 155d "0"-Ausgänge. Daher sind
die Ausgänge B6 bis B1 sämtlich auf "0"-Pegeln, unabhängig
von den Eingängen A6 bis A1.
Die Verschiebeoperationsschaltung 141 ist ebenfalls zur Verwendung
in einer Schwerpunktberechnungsschaltung für die 6-
Bit-Eingabe und -Ausgabe geeignet, welche später beschrieben
wird. Da vier Bits für die Definitionsschaltung 930 für die
Dann-Teil-Mitgliedsfunktion ausreichen, sind die zwei höheren
Bits A6 und A5 des Einganges der Verschiebeoperationsschaltung
141 in Fig. 57 auf "0" festgesetzt. Die Verschiebeoperationsschaltung
2-3 aus Fig. 20 weist ebenfalls die in
Fig. 59 gezeigte Anordnung auf.
Wie oben beschrieben, weist der für das Erhalten von S in
Gleichung (16) benötigte Parameter W seinen zur Vereinfachung
der Berechnung auf 1,0 gesetzten Fundamentalwert auf.
Bei der vorliegenden Ausführungsform kann zusätzlich zu W=
1,0 W auf 0,75, 1,25 und 1,5 gesetzt sein. W wird durch zwei
Binärcodes WB1 und WB2 variiert. Das heißt, bei der Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion aus
Fig. 57, wenn WB2="0" und WB1="0", dann erzeugt die UND-
Schaltung 142 einen "0"-Ausgang, so daß der Addierer/
Subtrahierer 140 als ein Addierer arbeitet. Auf der anderen
Seite erzeugt die NOR-Schaltung 143 einen "1"-Ausgang,
und damit erzeugen die ODER-Schaltungen 144a und 144b beide
"1"-Ausgänge. Der Inverter 145 erzeugt einen "1"-Ausgang, so
daß der Ausgang der UND-Schaltung 146 auf einen "1"-Pegel
geht. Folglich werden ST2 und ST1 der Verschiebeoperationsschaltung
141 beide mit "1"en versorgt, mit dem Ergebnis,
daß die Verschiebeoperationsschaltung 141 bei B6 bis B1
"0"en erzeugt. Daher führt der Addierer/Subtrahierer 140 die
Addition von h und 0 durch, und damit wird der Ausgang S der
Definitionsschaltung 930 für die Dann-Teil-Mitgliedsfunktion
gleich h. Aus der Gleichung (16) folgt, daß W=1,0 ist.
Wenn WB2="0" und WB1="1", erzeugt die UND-Schaltung 142
einen "0"-Ausgang, so daß der Addierer/Subtrahierer 140 als
ein Addierer arbeitet. Auf der anderen Seite erzeugt die
NOR-Schaltung 143 einen "0"-Ausgang, und damit geben die
ODER-Schaltungen 144a und 144b deren jeweiligen Eingänge WB2
und WB1 unverändert aus. Der Inverter 145 erzeugt einen "1"-
Ausgang, so daß die UND-Schaltung 146 den Ausgang der ODER-
Schaltung 144b unverändert ausgibt. Damit werden ST2 und ST1
der Verschiebeoperationsschaltung 141 jeweils mit WB2 und
WB1 versorgt. Das heißt, da WB2="0" und WB1="1", ist ST2
="0" und ST1="1". Wie in Fig. 60 gezeigt, werden die Eingänge
A6 bis A1 der Verschiebeoperationsschaltung 141 an B6
bis B1, die um ein Bit zur LSB-Seite verschoben worden sind,
ausgegeben. Mit anderen Worten, das an die Verschiebeoperationsschaltung
141 eingegebene h wird als h/2
ausgegeben, und der Addierer/Subtrahierer 140 führt die
Addition von h und h/2 durch. Wenn daher WB2 = "0" und WB1=
"1", wird der Ausgang S der Definitionsschaltung 930 für die
Dann-Teil-Mitgliedsfunktion gleich h+(h/2)=1,5h. Aus
Gleichung (16) folgt, daß W=1,5 ist.
Wenn WB2="1" und WB1="0", erzeugt die Umschaltung 142
einen "0"-Ausgang, wie bei dem Fall, bei dem WB2="0" und
WB1="1". Damit arbeitet der Addierer/Subtrahierer 140 als
ein Addierer. Die ODER-Schaltung 144a und die UND-Schaltung
146 gibt jeweils WB2 und WB1 aus. Das heißt, da WB2="1"
und WB1="0", ist ST2="1" und ST1="0". Entsprechend der
Beziehung gemäß Fig. 60 werden die Eingänge A6 bis A1 der
Verschiebeoperationsschaltung 141 von den Ausgängen B6 bis
B1, die um zwei Bits zu der LSB-Seite verschoben worden
sind, genommen. Mit anderen Worten, h, angelegt an die Verschiebeoperationsschaltung
141, wird als h/4 genommen, das
dann mit h im Addierer/Subtrahierer 140 addiert wird. Damit
wird der Ausgang S der Definitionsschaltung 930 für die
Dann-Teil-Mitgliedsfunktion h+(h/4)=1,25h, wenn WB2=
"1" und WB1="0". Dann folgt, daß W=1,25.
Wenn WB2="1" und WB1="1" ist, arbeitet der Addierer/
Subtrahierer 142 als ein Subtrahierer, da die UND-Schaltung
142 einen "1"-Ausgang erzeugt. Auf der anderen Seite
erzeugt die NOR-Schaltung 143 einen "0"-Ausgang, so daß die
ODER-Schaltungen 144a und 144b jeweils WB2 und WB1 unverändert
ausgeben. Da der Inverter 145 einen "0"-Ausgang erzeugt,
erzeugt die UND-Schaltung 146 einen "0"-Ausgang. Damit
weist die Verschiebeoperationsschaltung 141 ST2, welche
mit WB2="1" versorgt ist, und ST1, welche mit einer "0"
über die UND-Schaltung 146 versorgt ist, auf. Da ST2="1"
und ST1="0", werden daher die Eingänge A6 bis A1 der Verschiebeoperationsschaltung
141 von den Ausgängen B6 bis B1,
die um zwei Bits zur LSB-Seite verschoben sind, genommen. Es
wird nämlich h, welches an die Verschiebeoperationsschaltung
141 angelegt ist, als h/4 genommen, und h/4 wird dann von h
in dem Addierer/Subtrahierer 140 subtrahiert. Damit wird der
Ausgang S der Definitionsschaltung 930 für die Dann-Teil-
Mitgliedsfunktion h-(h/4)=0,75h, wenn WB2="1" und WB1
="1" ist. Damit folgt aus Gleichung (16), daß W=0,75.
Wie aus Fig. 57 ersichtlich, stellt der Ausgang S der Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion
einen 5-Bit-Binärcode dar. Zur Vereinfachung der nachfolgenden
Beschreibung der Schwerpunktsberechnungsschaltung wird
jedoch lediglich 1,0 auf W gesetzt, und der Ausgang S wird
als 4-Bit-Binärcode behandelt. Es sollte hier vermerkt werden,
daß eine bestimmte Verschwommen-Folgerungsvorrichtung,
die auf W=1,0 begrenzt ist, keine Definitionsschaltung für
die Dann-Teil-Mitgliedsfunktion benötigt.
Als nächstes wird die Synthetisierschaltung 940 für die Mitgliedsfunktion
beschrieben. Fig. 62 zeigt ein Blockdiagramm
der Synthetisierschaltung 940 für die Mitgliedsfunktion,
welche aus digitalen logischen Schaltungen gebildet ist. Die
Funktionssynthetisierschaltung 940 weist Datenauswähler
132a, 132b, . . ., die mit den Definitionsschaltungen 930 für
die Dann-Teil-Mitgliedsfunktion verbunden sind, von denen
jede für eine separate Verschwommen-Regel vorgesehen ist,
und Maximalwert-(Max)-Berechnungsschaltungen 133a bis 133g
auf, die mit den Ausgängen der Datenauswähler verbunden
sind.
Fig. 63 veranschaulicht ein Beispiel der Datenauswähler
132a, 132b, . . . Ein Bereichswert Si von der Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion wird von
einem der Ausgangsanschlüsse So1 bis So7 über UND-Schaltungen,
welche über einen Ausgang des Adreßdecoders 170 gesteuert
werden, genommen. Der Adreßdecoder 170 ist aus einem
Standardlogik-IC74HC237 gebildet und weist die in Fig. 64
gezeigten Ein-/Ausgabebeziehungen auf. In Fig. 64 bezeichnet
das Symbol X beliebige Daten, die entweder "0" und
"1" haben können, und *HALTEN bedeutet, daß der Wert von
einem Adreßzustand abhängt, wenn LE (latch enable=
Zwischenspeicherfreigabe) "0" ist.
Der Adreßdecoder 170 ist so definiert, daß einer der Ausgänge
Y0 bis Y7 eine "1" darstellt und die verbleibenden
sieben Ausgänge sämtlich "0"en, entsprechend den drei
Adreßeingängen A0 bis A2, darstellen. Wenn beispielsweise
der Adreßeingang "000" ist, erzeugt der Adreßdecoder 170
einen "1"-Ausgang an seinem Ausgang Y0 und "0"-Ausgänge bei
den anderen Ausgängen Y1 bis Y7, so daß ein an den Eingang
Si angelegter 4-Bit-Binärcode vom Ausgang So7 genommen
werden kann und die anderen Ausgänge So1 bis So6 sämtlich
"0000"-Ausgänge erzeugen. Auf diese Weise reagiert der
Adreßdecoder 170 auf einen 3-Bit-Adreßeingang, um bei
einem der Ausgänge So1 bis So7 einen Eingang Si auszugeben.
Die Adreßeingänge entsprechen den Adressen der Dann-Teil-
Mitgliedsfunktionen.
Wie in Fig. 62 gezeigt, werden die von den Datenauswahlschaltungen
132a und 132b ausgegebenen Bereichsdaten in die
Maximalwertberechnungsschaltungen 133a bis 133g eingegeben,
entsprechend den Adressen (PB, PM, PS, ZO, NS, NM, NB) der
Dann-Teil-Mitgliedsfunktion. Jede der Maximalwertberechnungsschaltungen
133a, . . . wählt den Maximalwert der Ausgänge
für eine bestimmte Adresse von den Adressen für die separaten
Verschwommen-Regeln aus und erzeugt somit ein Verschwommen-
Folgerungsergebnis.
Hier sollte bemerkt werden, daß es bei einer bestimmten Verschwommen-
Folgerungsvorrichtung keine Notwendigkeit für die
Datenauswahlschaltungen 132a, 132b, . . . gibt, da einer der
So1 bis So7, an den der Ausgang S der Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion verbunden werden
soll, vorher bestimmt wird. Das heißt, es ist lediglich notwendig,
daß die Ausgänge S der Definitionsschaltungen 930
für die Dann-Mitgliedsfunktion für die separaten Verschwommen-
Regeln direkt mit den entsprechenden Maximalwertberechnungsschaltungen
133a bis 133g verbunden sind.
Als nächstes wird die Maximalwertberechnungsschaltung 133a,
133b, . . . beschrieben. Die Maximalwertberechnung in der
Verschwommen-Theorie nimmt den Maximalwert von gegebenen,
mehreren Mitgliedswerten. Um eine Maximalwertberechnungsschaltung
mit digitalen Schaltungen, die Zahlen im Binärcode
ähnlich bei der Minimalwertberechnungsschaltung behandeln,
zu implementieren, gibt es ein Verfahren, welches einen digitalen
Komparator verwendet. Obwohl jedoch ein digitaler
Komparator bei der Verarbeitung von zwei Zahlen mit einer
relativ einfachen Konstruktion implementiert werden kann,
muß dieser zur Verarbeitung von drei oder mehr Zahlen bezüglich
der Schaltungsintegration vergrößert sein. Damit kann
die Verwendung eines digitalen Komparators nicht als ein
sehr gutes Verfahren angesehen werden. Als Beispiele der
Maximaloperationsschaltung werden zwei Fälle beschrieben,
von denen einer einen digitalen Komparator verwendet und
der andere keinen digitalen Komparator verwendet.
Zuerst wird ein Beispiel der Maximalwertberechnungsschaltung
beschrieben, die einen digitalen Komparator verwendet, wie
in Fig. 65 dargestellt. Die Bezugsziffer 80 bezeichnete einen
4-Bit-digitalen Komparator (Hochgeschwindigkeits-C-MOS-Standardlogik-
IC, wie beispielsweise 74HC85), der die gleichen
Ein-/Ausgangsbeziehungen wie die bei der in Fig. 50 gezeigten
Minimalwertberechnungsschaltung aufweist.
Da der digitale Komparator 80 einen Kaskadeneingang (A=
B)in aufweist, der immer auf einem "1"-Pegel ("High"-Pegel)
gesetzt ist, erzeugt der digitale Komparator 80 einen "0"-
Ausgang
bei seinem Ausgang (A=B)out, wenn zwei 4-Bit-
Binärzahlen A und B A≠B sind, und einen "1"-Ausgang, wenn
A=B ist. Ganz ähnlich erzeugt der Komparator 80 beim Ausgang
(A<B)out einen "1"-Ausgang, wenn A<B ist, während
ein "0"-Ausgang erzeugt wird, wenn AB ist. Ferner wird
beim Ausgang (A<B)out ein "1"-Ausgang erzeugt, wenn A<B,
und ein "0"-Ausgang wird erzeugt, wenn AB ist.
Wenn zwei 4-Bit-Binärzahlen A und B so in Beziehung stehen,
daß A<B, erzeugt der digitale Komparator 80 einen "1"-Ausgang
bei seinem Ausgang (A<B)out, so daß die UND-Schaltungen
83a bis 83d Bits B4 bis B1 einer 4-Bit-Binäreingangszahl
B unverändert ausgeben. Da dabei jeder der Ausgänge (A<
B)out und (A =B)out bei einem "0"-Pegel ist, erzeugt die
ODER-Schaltung 81 einen "0"-Ausgang, was bei den UND-Schaltungen
82a bis 82d die Erzeugung von "0"-Ausgängen bewirkt.
Damit geben die ODER-Schaltungen 84a bis 84d die Ausgänge
der UND-Schaltungen 83a bis 83d, d. h. den Eingang B, aus.
Auf der anderen Seite, wenn zwei Eingänge A und B in solcher
Beziehung stehen, daß AB (A<B oder A=B), wird beim
Ausgang (A<B)out ein "0"-Ausgang erzeugt, so daß die UND-
Schaltungen 83a bis 83d sämtlich "0"-Ausgänge erzeugen. Da
bei diesem Fall einer der Ausgänge (A=B)out und (A<B)out
notwendigerweise auf einem "1"-Pegel ist, erzeugt die ODER-
Schaltung 81 einen "1"-Ausgang, so daß die UND-Schaltungen
82a bis 82d ihre jeweiligen Eingangsbits A4 bis A1 unverändert
ausgeben. Folglich geben die ODER-Schaltungen 84a bis
84d den Eingang A aus. Wenn A=B, kann einer von A und B
ausgewählt sein. Bei diesem Beispiel wird A als der
Maximalwertausgang ausgewählt.
Auf diese Weise führt die Maximalwertberechnungsschaltung
gemäß Fig. 65 die Maximaloperation für die beiden 4-Bit-
Binärcodes A und B durch. Falls drei oder mehr Eingänge vorhanden
sind, können zur Implementierung einer Maximalwertberechnungsschaltung
(N-1) digitale Komparatoren 80, UND-
Schaltungen 82 und 83 und ODER-Schaltungen 81 und 84 kombiniert
sein. Hier bezeichnet N die Anzahl der Eingänge.
Als nächstes ist in Fig. 66 ein Beispiel einer Maximalwertberechnungsschaltung
für 4-Bit-Binärcodes dargestellt, die
keinen digitalen Komparator verwendet. Bei dieser Figur bezeichnen
die Bezugszeichen 104a bis 104d, 109a bis 109d und
114a bis 114d invertierende Pufferschaltungen vom offenen
Drain-Ausgangstyp (offener Kollektorausgangstyp im Falle von
Bipolar-ICs). In Fig. 67 ist ein Beispiel der invertierenden
Pufferschaltungen vom offenen Drain-Ausgangstyp dargestellt.
Ein Beispiel der invertierenden Pufferschaltung vom offenen
Kollektorausgangstyp ist in Fig. 68 dargestellt. Durch Bewirken
eines CS-(chip select=Chip-Auswahl-)Einganges auf
"0" gemäß Fig. 67 kann der über die Pull-up-Widerstände 115a
bis 115d in die invertierenden Pufferschaltungen 104a bis
104d, 109a bis 109d und 114a bis 114d fließende Strom abgeblockt
werden, während die Maximalwertberechnungsschaltung
unwirksam gemacht ist, womit der Leistungsverbrauch verringert
wird. Falls die Schaltung in einem IC integriert ist
und sämtliche CS-Signale kombiniert sind, können die CS-Signale
als Betriebs-Halte-Signal für den IC verwendet werden.
Nach Fig. 66 sind die Ausgänge der Vergleichsoperationsschaltungen
100, 105 und 110 durch Signalleitungen WO1 bis
WO4 ODER-verdrahtet. Die mit den Signalleitungen WO1 bis WO4
verbundenen invertierenden Pufferschaltungen 116d bis 116a
wandeln den Pegel der Signalleitungen WO1 bis WO4 um und
liefern einen Ausgang der Maximalwertberechnungsschaltung.
Die Signalleitungen WO1 bis WO4 weisen jeweilige "High"-Pegel
auf, die durch die Pull-up-Widerstände 115a bis 115d bestimmt
sind.
Die Maximalwertberechnungsschaltung führt einen Größenvergleich
der 4-Bit-Binärzahlen bitweise durch, beginnend mit
deren meist-signifikanten Bits (MSB), um den Maximalwert zu
erhalten. Die Betriebsweise der Maximalwertberechnungsschaltung
wird unter Bezugnahme auf Fig. 69 beschrieben, wobei
als ein Beispiel ein Fall genommen wird, bei dem drei 4-Bit-
Binärzahlen A, B und C jeweils "0110" (=6), "1010" (=10)
und "1001" (=9) dargestellt sind. Zunächst stehen die
meist-signifikanten Bits so in der Größe in Beziehung, daß
A4<B4=C4, da A4="0", B4="1" und C4="1". Dabei ist
es evident, daß A<B und A<C, d. h., A ist minimal unter
den Größen A, B und C. Daher muß für die drei unteren Bits
der Vergleich lediglich zwischen B und C durchgeführt werden.
Da dabei A="0", ist der Ausgang der invertierenden Pufferschaltung
104a offen, d. h., im Zustand hoher Impedanz. Da B4
=C4="1", werden auf der anderen Seite die Ausgänge der
invertierenden Pufferschaltungen 109a und 114a kurzgeschlossen
(auf "Low"-Pegel). Da die Ausgänge der invertierenden
Pufferschaltungen 104a, 109a und 114a durch die Signalleitung
WO4 ODER-verdrahtet sind, geht WO4 auf einen "Low"-Pegel
(="0"). Der Ausgang D4 der Maximalwertberechnungsschaltung
ist D4="1", da der Pegel von WO4 durch die invertierende
Pufferschaltung 116a invertiert ist. Der Ausgang der
ODER-Schaltung 101a der Vergleichsoperationsschaltung 100
ist auf einem "0"-Pegel, da A4="0" und WO4="0" ist.
Damit erzeugen die UND-Schaltungen 103a, 102a und 102b ebenfalls
"0"-Ausgänge, und darüber hinaus erzeugen die UND-
Schaltungen 103b und 103c ebenfalls "0"-Ausgänge. Folglich
gehen die Ausgänge der invertierenden Pufferschaltungen
104b, 104c und 104d in den Zustand hoher Impedanz, unabhängig
von den Eingangswerten A3, A2 und A1. Das bedeutet, daß
die drei unteren Bits A3, A2 unds A1 des Einganges A keinen
Einfluß auf die drei unteren Bits D3, D2 und D1 des Maximalwertberechnungsausganges
ausüben. Daher werden lediglich B
und C für die drei unteren Bits der Eingänge in der Größe
verglichen.
Da, wie oben beschrieben, B4="1" und WO4="0" ist, liegt
der Ausgang der ODER-Schaltung 106a der Vergleichsoperationsschaltung
105 auf einem "1"-Pegel. Damit überträgt die
UND-Schaltung 108a B3 unverändert zu dem Eingang der invertierenden
Pufferschaltung 109b. Da ähnlich C4="1" und WO4
="0" ist, gibt die UND-Schaltung 113 der Vergleichsoperationsschaltung
110 ebenso C3 unverändert aus. Da, wie in Fig. 69
gezeigt, B3="0" und C3="0" (d. h. B3=C3) ist, befinden
sich die Ausgänge der invertierenden Pufferschaltungen
109b und 114b zusammen im Zustand hoher Impedanz. Da, wie
oben beschrieben, der Ausgang der invertierenden Pufferschaltung
104b ebenfalls im Zustand hoher Impedanz ist, wird WO3
über den Pull-up-Widerstand 115c auf einen "High"-Pegel (=
"1") angehoben, und der Ausgang D3 wird durch Invertieren
durch die invertierende Pufferschaltung 116b D3="0".
Da wie oben beschrieben B3 = "0" und WO3 = "1", befindet
sich der Ausgang der ODER-Schaltung 106b der Vergleichsoperationsschaltung
105 auf einem "1"-Pegel. Wie oben beschrieben,
befindet sich der Ausgang der ODER-Schaltung 106a ebenfalls
auf einem "1"-Pegel, und damit geht der Ausgang der
UND-Schaltung 107a auf einen "1"-
Pegel, wodurch die UND-Schaltung 108b zur unveränderten Ausgabe von B2 bewirkt
wird. Da ähnlich C3 = "0" und WO3 = "1" ist, gibt die UND-
Schaltung 113b der Vergleichsoperationsschaltung 110 ebenfalls
C2 unverändert aus. Da B2 = "1" und C2 = "0" ist, wird
bei dieser Stufe gefunden, daß C < B (siehe Fig 69).
Der Ausgang der invertierenden Pufferschaltung 109c der Vergleichsoperationsschaltung
105 ist kurzgeschlossen (bei einem
"0"-Pegel), da B2="1", während der Ausgang der invertierenden
Pufferschaltung 114c der Vergleichsoperationsschaltung
110 in den Zustand hoher Impedanz geht, da C2 =
"0" ist. Da der Ausgang der invertierenden Pufferschaltung
104c der Vergleichsoperationsschaltung 110 im Zustand hoher
Impedanz ist, wie vorhergehend beschrieben, wird WO2 wegen
der ODER-verdrahteten Verbindung gleich "0". Der Ausgang D2
der Maximalwertberechnungsschaltung wird durch die
invertierende Pufferschaltung 116c zum Liefern von D2 = "1"
invertiert. Damit erzeugt die ODER-Schaltung 111c einen "0"-
Ausgang, da C2 = "0" und WO2 = "0" ist. Als Antwort darauf
erzeugt die UND-Schaltung 112b einen "0"-Ausgang, und
darüber hinaus erzeugt die UND-Schaltung 113c ebenfalls einen
"0"-Ausgang, so daß der Ausgang der invertierenden
Pufferschaltung 114d in den Zustand hoher Impedanz geht.
Da auf der anderen Seite B2 = "1" und WO2 = "0" ist, erzeugt
die ODER-Schaltung 106c einen "1"-Ausgang. Da der Ausgang
der UND-Schaltung 107a, wie oben beschrieben, auf einem "1"-
Pegel ist, erzeugt die UND-Schaltung 107b einen "1"-Ausgang,
wodurch die UND-Schaltung 108c zur Ausgabe eines unveränderten
B1 bewirkt wird. Da darüberhinaus der Ausgang der invertierenden
Pufferschaltung 104d, wie im vorhergehenden beschrieben,
im Zustand hoher Impedanz ist, ist WO1 unabhängig
von A1 und C1 gleich dem invertierten Wert von B1. Da B1=
"0", heißt das, daß die invertierende Pufferschaltung 109d
WO1 = "1" erzeugt, und der Ausgang D1 der Maximalwertberechnungsschaltung
über die Inversion durch die invertierende
Pufferschaltung 116d D1 = "0" wird.
Wie in Fig 69 gezeigt, folgt, daß D4 = "1", D3 = "0", D2=
"1" und D1 = "0" ist. "1010" (= 10) ergibt sich als der Ausgang
der Maximalwertberechnungsschaltung gemäß Fig 66. Dies
ist das Maximum der drei Eingänge A = "0110" (= 6), B=
"1010" (= 10) und C = "1001" (= 9). Auf diese Weise führt
die Schaltung gemäß Fig 66 die Maximalwertoperation für die
drei 4-Bit-Binärzahlen A, B und C durch. Für vier oder mehr
4-Bit-Binärzahlen muß lediglich die Anzahl der Vergleichsoperationsschaltungen
100, 105 und 110 (wie aus Fig 66 ersichtlich,
sind diese dieselben Schaltungen) für eine ODER-
verdrahtete Verbindung vergrößert werden. Zur Verarbeitung
von fünf oder mehr Bits können invertierende Pufferschaltungen
auf die LSB-Seite von jeder der Vergleichsoperationsschaltungen
100, 105 und 110 hinzugefügt sein.
Als nächstes wird die Schwerpunktberechnungsschaltung 950
beschrieben. Die Schwerpunktberechnung dient zur Variation
der von der Mitgliedssynthetisierschaltung 940 erhaltenen
Verschwommen-Folgerungsergebnisse zum Nicht-Verschwommenmachen
von Werten (zum Erhalten des Schwerpunktes der
Verschwommen-Folgerungsergebnisse), und dadurch zum Erhalten
eines Ausgangswertes (bestimmten Wertes) einer Verschwommen-
Steuerung.
Die Verschwommen-Folgerungsergebnisse werden Adressen von 0
bis 6 entsprechend den Bezeichnungen NB bis PB zugewiesen,
wie in Fig 70 gezeigt. Die Verschwommen-Folgerungsergebnisse
sind durch Dreiecke dargestellt, und die Positionen
der Schwerpunkte der Dreiecke sind durch die Adressen von 0
bis 6 dargestellt.
Wenn im allgemeinen ein Materialkörper in einige Teile unterteilt
wird, deren Schwerpunkte vorher bekannt sind, kann
die Position des Materialkörpers als Schwerpunkt eines Systems
von Materialpunkten erhalten werden, bei dem die Masse
von jedem der Teile auf dessen Schwerpunkt konzentriert ist.
Unter der Annahme, daß die Bereiche der Dreiecke von NB, NM,
NS, ZO, PS, PM und PB SNB, SNM, SNS, SZO, SPS, SPM und SPB
sind, und die Adressen 0 bis 6 Abstände vom Ursprung 0
bis zu den Materialpunkten (Schwerpunkten der Dreiecke)
sind, kann daher der in Fig 70 gezeigte Schwerpunkt der
Verschwommen-Folgerungsergebnisse, wie in Fig 71 gezeigt,
ersetzt sein.
Falls die Adresse 0 als Zentrum genommen wird, kann die Position
GA des Schwerpunktes wie folgt erhalten werden:
GA = (SNM + 2 SNS + 3 SZO + 4 SPS + 5 SPM + 6 SPB)
÷ (SNB + SNM + SNS + SZO + SPS + SPM + SPB) (17)
÷ (SNB + SNM + SNS + SZO + SPS + SPM + SPB) (17)
Mit
Ss = SNM + SNS + SZO + SPS + SPM + SPB (18)
kann Gleichung (17) wie folgt geändert werden:
GA = (Ss + SNS + 2 SZO + 3 SPS + 4 SPM + 5 SPB) ÷ (SNB + Ss)
= {SNS + SPS + 2 (SZO + SPS) + 4 (SPM + SPB) + SPB + Ss} ÷ (SNB + Ss) (19)
= {SNS + SPS + 2 (SZO + SPS) + 4 (SPM + SPB) + SPB + Ss} ÷ (SNB + Ss) (19)
Entsprechend Gleichung (19) kann die Schwerpunktsberechnungsschaltung
durch Verwenden von Addierern und einem Teiler
implementiert sein.
Mit dem Setzen des Zählers {SNS + SPS + 2 (SZO + SPS) + 4 (SPM
+ SPB) + SPB + Ss} als ScC und den Nenner (SNB + Ss) als SmC
kann die Schwerpunktsberechnungsschaltung 950, wie in Fig 72
gezeigt, angeordnet sein.
Die Berechnungsschaltung 201 der Schwerpunktsberechnungsschaltung
950 stellt eine Schaltung zum Erhalten von SmC in
Gleichung (19) dar, d. h. zum Erhalten von Ss und dem Nenner
SmC = SNB + Ss in Gleichung (19) aus den Bereichsdaten SNB
bis SPB, die von den Maximalwertberechnungsschaltungen 133a
bis 133g aus Fig 62 ausgegeben wurden. Unter der Annahme,
daß SNB bis SPB jeweils vier Bits in der Länge aufweisen,
kann die SmC-Berechnungsschaltung 201 wie in Fig 73 gezeigt,
angeordnet sein. Ss und SmC müssen jeweils lediglich
sieben Bits lang sein, da jeder Eingangswert aus vier Bits
besteht. Die Bezugszeichen 211 bis 216 bezeichnen 4-Bit-
Volladdierer, und 217 bis 222 bezeichnen 1-Bit-Volladdierer.
Die Arithmetikoperationsschaltung 202 stellt eine Schaltung
zum Erhalten des Zählers ScC in Gleichung (19) dar, und
führt die folgende arithmetische Operation für die Eingangsdaten
SNS, SZO, SPS, SPM, SPB und Ss durch.
ScC = SNS + SPS + 2 (SZO + SPS) + 4 (SPM + SPB) + SPB + Ss (20)
Unter der Annahme, daß CNS bis SPB jeweils vier Bits in der
Länge und Ss sieben Bits in der Länge aufweist, kann die
ScC-Berechnungsschaltung 202 wie in Fig 74 gezeigt angeordnet
sein. Die Anzahl von Bits der Berechnungsergebnisse ist
so groß wie neun Bits, da das Maximum 315 (= "100111011")
beträgt, auch falls sämtliche der Eingangswerte 15 des Maximalwertes
der 4-Bit-Zahl betragen. Die Bezugszeichen 230 bis
239 bezeichnen 4-Bit-Volladdierer und 240 bezeichnet einen
1-Bit-Volladdierer. Der Volladdierer 230 berechnet SNS + SPS
in Gleichung (20), der Volladdierer 231 berechnet SZO + SPS
in Gleichung (20), der Volladdierer 232 berechnet SPM + SPB
in Gleichung (20) und die Volladdierer 233 und 234 berechnen
SPB + Ss in Gleichung (20). Der CARRY-Ausgang Co des
Volladdierers 234 wird nicht benötigt, da das Ergebnis der
Addition acht Bits nicht übersteigt.
Die Volladdierer 235 und 240 berechnen (SZO + SPS) ÷ 2 +
(SPM + SPB), addieren das Ergebnis der Berechnungen durch
die Addierer 235 und 240 mit SZO + SPS, die um ein Bit zur
MSB-Seite verschoben sind, und berechnen folglich (SZO +
SPS) + 2 (SPM + SPB). Die Volladdierer 236 und 237 berechnen
(SNS + SPS) + (SPB + Ss). Die Volladdierer 238 und 239 addieren
die Ergebnisse der Berechnung der Volladdierer 235
und 240 mit {(SNS + SPS) + (SPB + Ss)} ÷ 2, was (SNS + SPS)
+ (SPB + Ss) + 2{+ (SZO + SPS) + 2 (SPM + SPB)} = SNS + SPS + 2
(SZO + SPS) + 4 (SPM + SPB) + SPB + Ss ergibt. Das Ergebnis
stimmt mit Gleichung (20) überein. Hier ist ebenfalls keine
Notwendigkeit für den CARRY-Ausgang Co des Volladdierers
239, da das Ergebnis der Berechnung keinesfalls neun Bits
oder mehr übersteigt.
Die Ausgänge SmC und ScC der Berechnungsschaltungen 201 und
202 werden an die Teilerschaltung 203 zur Berechnung von ScC
÷ SmC angelegt. Die Teilerschaltung 203 führt die Teilung
durch wiederholte Subtraktion durch. Das heißt, ein Divisor
wird von einem Dividenden abgezogen, wobei deren meistsignifikante
Bits in einer Linie miteinander stehen, und
wenn das Ergebnis positiv ist, wird eine "1" als Antwort für
die Bitposition des Dividenden plaziert. Wenn das Ergebnis
negativ ist, wird eine "0" als Antwort für die Bitposition
plaziert. Wenn das Ergebnis positiv ist, wird ebenso der
Rest für die nächste Berechnung verwendet, während der Dividend
für die nächste Berechnung verwendet wird, genauso,
wie wenn das Ergebnis negativ ist.
Als Beispiel wird unter Bezugnahme auf Fig. 75 "11010" ÷
"101" erläutert. Zuerst wird "101" von "11010" abgezogen,
wobei deren meist-signifikante Bits in einer Linie zueinander
stehen. Da das Ergebnis der Subtraktion, d. h. "011" positiv
ist, wird "1" als Antwortbit plaziert. Das Ergebnis
der Subtraktion wird für die nächste Subtraktion verwendet.
Ein unteres Bit "1" wird vom Dividenden empfangen. Eine "0"
innerhalb der gestrichelten Linien auf der Seite des letztsignifikanten
Bit des Dividenden wird zum Erhalten dezimaler
Bruchteile eines Quotienten verwendet. Bei diesem Fall kann
der Quotient eine Genauigkeit von ½ haben.
Analog wird der Divisor "101" vom Ergebnis der Subtraktion
"011" abgezogen. Da bei diesem Fall das Ergebnis negativ
ist, ist das Antwortbit "0". Die beiden unteren Bits "11"
des vorhergehenden Ergebnisses der Subtraktion "011" werden
als das Ergebnis der Subtraktion, so wie es ist, verwendet.
Die Operation wird analog bis zum letzt-signifikanten Bit
fortgesetzt, und die Antwort resultiert in "101,0". Um die
Genauigkeit in dem dezimalen Bruchteil etwas zu steigern,
können "0"en auf die untere Bitseite des Dividenden
"11010,0" hinzugefügt sein, und der resultierende Dividend
muß lediglich zur Berechnung nach links verschoben werden.
Für jede hinzugefügte "0" wird die Genauigkeit in Einheiten
von ½n, wie beispielsweise ½, ¼, ⅛, . . . verbessert.
Fig. 76 zeigt eine Teilerschaltung 203, die auf der Basis
des obigen Systems angeordnet ist. Die obigen Subtraktionen
werden durch die Subtraktionsmultiplexer 280 bis 285 durchgeführt.
Fig. 77 zeigt im Detail die Subtraktionsmultiplexer
280 bis 285, wenn der Minuend ScC sieben Bits aufweist, der
Subtrahend SmC sieben Bits aufweist, die Antwort D ein Bit
aufweist ("1", wenn die Subtraktion durchgeführt werden
kann), und der Rest bzw. Minuend ScC sechs Bits aufweist.
Die 4-Bit-Volladdierer 250 und 251 führen eine arithmetische
Operation SmC + ScC + 1 = ScC - durch. Falls die Antwort
positiv ist, bzw. "0", wird eine "1" an den CARRY-Ausgang Co
des Volladdierers 250 ausgegeben. Wenn die Antwort negativ
ist, wird eine "0" ausgegeben. D. h., dies ist ein Antwort-
Bit D der Teilerschaltung 203. Daher wird durch Multiplexen
des Ergebnisses der Subtraktion, wenn der CARRY-Ausgang Co
des Volladdierers 250 "1" ist, oder des Minuenden ScC wenn
der Carry-Ausgang Co des Volladdierers 250 "0" ist, von den
Subtraktionsmultiplexern 280 bis 285 ScC ausgegeben.
In der Teilerschaltung 203 nach Fig. 76 wird ScC um die linken
drei Bits (die unteren Bits der Subtraktionsmultiplexer
283 bis 285 sind "0"en) verschoben, und die PB-Adresse wird,
wie in Fig. 78C gezeigt, auf 48 gesetzt, um das Ergebnis GA
der Teilung zu erhalten. Nenner und Zähler für die Division
sind in Gleichung (17) bestimmt, und damit wird das Ergebnis
notwendigerweise drei Bits, wenn keine Subtraktionsmultiplexer
283 bis 285 vorhanden sind.
Die Schwerpunktberechnungsschaltung 950 nach Fig 72 wurde
bezüglich des Falles beschrieben, bei dem die Dann-Teil-Mitgliedsfunktionen
keine sieben Adressen aufweisen. Im folgenden
wird erläutert, wie man die Position GA des Schwerpunktes
erhält bei einem Fall, bei dem die Anzahl n der Adressen
der Funktionen anders als sieben beträgt. Hier wird angenommen,
daß der Bereich einer Dann-Teil-Mitgliedsfunktion, der
eine Position des Schwerpunktes von n aufweist, Sn ist.
Wenn n = 2:
GA = S1 + (S0 + S1) (21)
GA = S1 + (S0 + S1) (21)
Wenn n = 3:
GA = (Ss + S2) ÷ (S0 + Ss) (22)
wobei Ss = S1 + S2.
GA = (Ss + S2) ÷ (S0 + Ss) (22)
wobei Ss = S1 + S2.
Wenn n = 4:
GA = (Ss + S2 + 2 S3) ÷ (S0 + Ss) (23)
wobei Ss = S1 + S2 + S3.
GA = (Ss + S2 + 2 S3) ÷ (S0 + Ss) (23)
wobei Ss = S1 + S2 + S3.
Wenn n = 5:
GA = {Ss + S2 + 2 (S3 + S4) + S4} ÷ (S0 + Ss) (24)
wobei Ss = S1 + S2 + S3 + S4.
GA = {Ss + S2 + 2 (S3 + S4) + S4} ÷ (S0 + Ss) (24)
wobei Ss = S1 + S2 + S3 + S4.
Wenn n = 6:
GA = {Ss + S2 + 2 (S3 + S4) + S4 + 4 S5} ÷ (S0 + Ss) (25)
wobei Ss = S1 + S2 + S3 + S4 + S5.
GA = {Ss + S2 + 2 (S3 + S4) + S4 + 4 S5} ÷ (S0 + Ss) (25)
wobei Ss = S1 + S2 + S3 + S4 + S5.
Auf diese Weise können die in den Fig. 73 und 74 gezeigten
Berechnungsschaltungen 201 und 202 entsprechend den
Gleichungen (21) bis (25) modifiziert sein, um den Schwerpunkt
auch dann zu erhalten, wenn n nicht sieben beträgt.
Es wird die Schwerpunktadreßberechnungsschaltung 204 nach
Fig. 72 beschrieben. Diese Schaltung setzt die Werte der GA
Daten (NB bis PB-Adressen) auf diejenigen in Fig. 78A,
Fig. 78B oder Fig. 78C gezeigten, durch Bestimmen der Adreßteilerdaten.
Bei einer bestimmten Verschwommen-Steuerung
müssen die GA-Ausgänge lediglich Ausgangsleitungen auswählen
(entsprechend Fig. 78A, wenn GA5 bis GA2 verwendet sind), so
daß es keine Notwendigkeit für die Schwerpunktadreßberechnungsschaltung
204 gibt. Für die Verwendung als Verschwommen-
Steuerung für allgemeine Zwecke wird die Anzahl von
Adressen durch die Adreßteilerbestimmungsdaten zum Ausgeben
bestimmt, wobei die LSBs in einer Linie stehen.
Die in Fig. 59 gezeigte Verschiebeoperationsschaltung 141
kann, so wie sie ist, als Schwerpunktadreßberechnungsschaltung
204 verwendet sein. In Fig. 59 entspricht A dem GA-Eingang
und ST2 und ST1 entsprechen den Adreßteilerbestimmungseingängen.
Wenn ST2 und ST1 "0, 0" sind, wird Fig. 78C ausgewählt,
und die PB-Adresse ist 48. Wenn ST2 und ST1 "0, 1"
sind, wird Fig. 78B ausgewählt, und die PB-Adresse ist 24.
Wenn ST2 und ST1 "1, 0" sind, wird Fig. 78A ausgewählt, und
die PB-Adresse ist 12.
D. h., wenn das Intervall zwischen den Adressen durch 2 geteilt
wird, wird die Anzahl von Adressen von NB bis PB wie
in Fig. 78A gezeigt auf 12 gesetzt. Für die Teilung durch 4
wird die Anzahl von Adressen auf 24 gesetzt, wie in Fig. 78B
gezeigt. Für die Teilung durch 8 wird die Anzahl von Adressen
wie in Fig. 78C gezeigt auf 48 gesetzt. Auf diese Weise
können durch Bestimmen der Adreßteilung grobe Verschwommen-
Steuerungsausgänge oder feine Verschwommen-Steuerungsausgänge
ausgewählt sein.
In obiger Beschreibung ist die Anzahl der Adressen der
Schwerpunkte der Dann-Teil-Mitgliedsfunktionen wie in Fig. 70
gezeigt sieben, und des wird in jeder der Datenauswahlschaltungen
132a . . . gemäß Fig. 62 eine von sieben Adressen
durch einen Dann-Teil-Adreßeingang für eine Regel bestimmt.
Falls ein feineres Setzen der Schwerpunktadressen für die
Dann-Teil-Mitgliedsfunktionen gewünscht wird, kann die
Adresse einer Dann-Teil-Mitgliedsfunktion für eine einzelne
Regel auf mehr als zwei verschiedene Positionen (im folgenden
als Multi-Adressierung bezeichnet) bestimmt sein, um die
Position des Schwerpunktes äquivalent zu versetzen.
Wie in Fig. 79 gezeigt, wenn das Ergebnis S der Bereichsberechnung,
das zu der vom Dann-Teil-Adreßeingang bestimmten,
inhärenten Adresse (Hauptadresse genannt) ausgegeben ist,
und das Ergebnis S der Bereichsberechnung, das zu einer
Adresse (Unteradresse genannt), die zum Versetzen der Position
des Schwerpunktes der Dann-Teil-Mitgliedsfunktion hinzugefügt
ist, ausgegeben ist, einander gleich sind, stellt
die Position des Schwerpunktes eine mittlere Position
zwischen der Hauptadresse und der Unteradresse dar.
Es ist möglich, die Position des Schwerpunktes von der mittleren
Position zwischen der Hauptadresse und der Unteradresse,
wie in Fig. 79 gezeigt, durch Multiplizieren der
unterschiedlichen Werte RM und RS, die nicht mit den Ergebnissen
S der Bereichsberechnung wie in Fig. 80 gezeigte identisch
sind, zu versetzen. In Fig. 80 ist die berechnete Mitgliedsfunktion
als Ergebnis der Schwerpunktsverschiebung
durch eine unterbrochene Linie gezeigt. Es ist jedoch möglich,
die Mitgliedsfunktion wie in Fig. 81 gezeigt zu berechnen.
Fig. 82 stellt ein Basisblockdiagramm einer Modifikation einer
Mitgliedsfunktionsynthetisierschaltung 940 gemäß Fig. 62
dar, welche der oben beschriebenen Multi-Adressierung angepaßt
ist. Der von der Bereichsberechnungsschaltung (Dann-
Teil-Mitgliedsfunktionsdefinitionsschaltung) 930 ausgegebene
Bereichswert Si wird an zwei Multiplizierer 500 und 502 eingegeben,
an den jeweils Parameter RM und RS angelegt sind.
Die Multiplizierer 500 und 502 geben Si · RM und Si · RS an
die Multi-Adresse-Bestimmungsschaltung 504 aus. Als Reaktion
auf einen Dann-Teil-Hauptadresseneingang MA und einen Dann-
Teil-Unteradresseneingang SA gibt die Multi-Adressen-Bestimmungsschaltung
504 Si · RM und Si · RS nach einen der So1
bis So7 aus. Der Ausgang der Multi-Adressen-Bestimmungsschaltung
504 wird an die Maximalwertberechnungsschaltungen
133a bis 133g gemäß Fig. 62 angelegt. Um ein Gleichgewicht
mit den weiteren Regeln zu erreichen, ist es notwendig, daß
die Summe der Parameter RM und RS die Einheit darstellt.
Fig. 83 zeigt eine digitale Schaltungsanordnung für die
Schaltung aus Fig. 82. Fig. 83 weist 4-Bit-Multiplizierer
250a und 250b, Adreßdecoder (Standardlogik-IC wie beispielsweise
74HC237: siehe Fig. 64 wegen der Ein-/
Ausgangsbeziehungen) 251 und 252 und Datenauswahlschaltungen
253a bis 253g auf. Die Multiplizierer 250a und 250b sind
jeweils identisch mit den Multiplizierers 2-2 aus Fig. 10,
und multiplizieren Bereichsdaten Si mit Koeffizienten RM, RS
zum Erhalten von Bereichsdaten Si · RM und Si · RS, die an
die Hauptadresse und Unteradresse ausgegeben werden. Bei
dieser Schaltung werden die vier höheren Bits der acht Bits,
die von jedem der Multiplizierer 250a und 250b ausgegeben
sind, verwendet. Dementsprechend nehmen die Ausgänge der
Multiplizierer 250a und 250b Werte von Si · (R /16) an (R =
RM oder RS, und eine ganze Zahl von 0 bis 15), die an die
Hauptadresse und die Unteradresse ausgegeben werden.
Die Datenauswahlschaltungen 253a bis 253b sind einander
identisch in der Schaltungsanordnung, und deren interne
Schaltungsanordnung ist in Fig. 84 dargestellt. Diese Schaltung
ist zur Ausgabe von 4-Bit-Binärcodeeingängen A, B oder
"0" vom Ausgangsanschluß O entsprechend den Eingängen SE1
und SE2 von den Adreßdecodern 251 und 252 angepaßt. Dessen
Ein-/Ausgangsbeziehung ist in Fig. 85 dargestellt. Die Symbole
× bedeuten, daß diese entweder "0" und "1" annehmen
können.
Wenn gemäß Fig. 84 die Steuereingänge SE1 und SE2 beide auf
"0"-Pegeln sind, erzeugt die UND-Schaltung 260 einen "0"-
Ausgang, der Ausgang des Inverters 269 wird "1", und damit
geben die UND-Schaltungen 264 und 265 die Ausgänge der UND-
Schaltungen 262 und 263 unverändert aus. Da auf der anderen
Seite die Steuereingänge SE1 und SE2 auf "0"-Pegeln sind,
erzeugen die UND-Schaltungen 262 und 263 "0"-Ausgänge. Die
UND-Schaltungen 266a bis 266d und 267a bis 267d erzeugen
sämtlich "0"-Ausgänge, so daß die ODER-Schaltungen 268a bis
268d einen Ausgang O erzeugen, dessen Bits sämtlich "0"en
sind.
Wenn SE1 = "1" und SE2 = "0", erzeugt die UND-Schaltung 260
einen "0"-Ausgang, so daß die ODER-Schaltung 264 und die
UND-Schaltung 265 die Ausgänge der UND-Schaltungen 262 und
263 unverändert ausgeben. Da die EXKLUSIV-ODER-Schaltung 261
einen "1"-Ausgang erzeugt und SE1 = "1" und SE2 = "0" ist,
erzeugen die UND-Schaltungen 262 und 263 jeweils "1" und
"0"-Ausgänge. Die UND-Schaltungen 266a bis 266d geben damit
A4 bis A1 des Einganges A aus. Da die UND-Schaltungen 267a
bis 267d "0"-Ausgänge erzeugen, geben die ODER-Schaltungen
268a bis 268d beim Ausgang O den Eingang A aus.
Wenn SE1 = "0" und SE2 = "1", da die UND-Schaltung 260 einen
"0"-Ausgang erzeugt, geben die ODER-Schaltung 264 und die
UND-Schaltung 265 die Ausgänge der UND-Schaltungen 262 und
263 unverändert aus. Da die EXKLUSIV-ODER-Schaltung 261
einen "1"-Ausgang erzeugt, und SE1 = "0" und SE2 = "1" ist,
erzeugen die UND-Schaltungen 262 einen "0"-Ausgang, und 263
erzeugt "1". Die UND-Schaltungen 266a bis 266d erzeugen damit
"0"-Ausgänge. Da die UND-Schaltungen 267a bis 267d B4
bis B1 des Einganges B ausgeben, geben die ODER-Schaltungen
268a bis 268d beim Ausgang O den Eingang B aus.
Wenn SE1 und SE2 beide "1"en sind, erzeugt die UND-Schaltung
260 einen "1"-Ausgang, die ODER-Schaltung 264 erzeugt einen
"1"-Ausgang, und die UND-Schaltung 265 erzeugt einen "0"-
Ausgang, da der Ausgang der Inverterschaltung 269 "0" ist.
Dadurch geben die UND-Schaltungen 266a bis 266d A4 bis A1
des Einganges A aus. Da die UND-Schaltungen 267a bis 267d
"0"-Ausgänge erzeugen, geben die ODER-Schaltungen 268a bis
268d beim Ausgang O den Eingang A aus. Soweit wurde die Operation
der Datenauswahlschaltungen 253a bis 253g beschrieben.
Als nächstes wird die von der Schaltung gemäß Fig. 83
durchgeführte Multi-Adressen-Bestimmung beschrieben. Die
Hauptadresse MA und die Unteradresse SA einer Dann-Teil-Mitgliedsfunktion
werden jeweils in die Adreßdecoder 251 und
252 eingegeben.
Als ein Befehl erfolgt die Beschreibung eines Falles, bei
dem die Hauptadresse MA ein Binärcode von "110" und die Unteradresse
DA ein Binärcode von "101" ist. Da MA = "110",
ist der Ausgang des Adreßdecoders 251 so, daß Y6 = "1" und
Y5 bis Y0 "0"en sind, wie aus Fig. 64 ersichtlich. Auf der
anderen Seite, da SA = "101", ist der Ausgang des Adreßdecoders
252 so, daß Y6 = "0", Y5 = "1", und Y4 bis Y0 = "0"
sind, wie aus Fig. 64 ersichtlich. Da die Steuereingänge SE1
und SE2 der Datenauswahlschaltungen 253c bis 253g beide auf
"0"-Pegeln sind, werden die Ausgänge O der Datenauswahlschaltungen
253c bis 253g "0"en. Da SE1 = "1" und SE2 = "0",
gibt die Datenauswahlschaltung 253a den Eingang A aus, d. h.
SRM (= Si · RM/16), wie aus Fig. 85 ersichtlich. Auf der anderen
Seite, da SE1 = "0" und SE2 = "1", gibt die Datenauswahlschaltung
253b den Eingang B aus, d. h. SRS (= Si ·
RS/16), wie aus Fig. 85 ersichtlich. Damit wird So1 als die
Hauptadresse und So2 als die Unteradresse ausgegeben.
Wenn die Hauptadresse und Unteradresse als dieselbe Adresse
bestimmt sind, gibt die entsprechende Datenauswahlschaltung
den Eingang A aus, d. h. SRM, wie aus Fig. 85 ersichtlich,
da die Steuereingänge SE1 und SE2 beide auf "1"-Pegeln sind.
Dies ist ein Fall, bei dem eine Unteradresse nicht bestimmt
wird. Bei diesem Fall muß RM auf "0001" gesetzt werden, da
der Eingang "Si" durch den Multiplizierer 250a mit Eins multipliziert
werden muß.
Wenn die Unteradresse nicht bestimmt ist, wird die Multiplikation
von Si und RM, RS nicht benötigt. Wie in Fig. 86 gezeigt,
überträgt daher der Komparator 506 ein Koinzidenz-Signal
an die Datenauswahlschaltung 508, wenn die Hauptadresse
und die Unteradresse zueinander gleich sind. Als Reaktion
auf das Koinzidenz-Signal wählt die Datenauswahlschaltung
508 ein Ausgangssignal der Bereichsberechnungsschaltung 930
aus, das die Multiplizierer 500 und 502 zum Übertragen auf
die Multi-Adreßbestimmungsschaltung 504 durchschaltet.
Die in den Fig. 86 und 82 gezeigten Multiplizierer können
eine Funktion der Berechnung des Bereiches aufweisen, und
damit kann die Bereichsberechnungsschaltung 930 weggelassen
sein.
Wie aus dem vorhergehenden ersichtlich, kann jede der Hauptadresse
und der Unteradresse an irgendeine der sieben Adressen
(sieben Bezeichungen, wie in Fig. 70 gezeigt) unabhängig
zugewiesen sein. Es ist daher nicht notwendig, daß die
Hauptadresse und die Unteradresse wie in dem obigen Beispiel
beschrieben zueinander benachbart sind. Zum Beispiel kann
gemäß Fig. 70 die Hauptadresse und die Unteradresse jeweils
auf PM und NB gesetzt sein. Entsprechend dieser Modifikation
ist es durch Multiplizieren oder Dividieren des Bereiches
für jedes der Folgerungsergebnisse mit einem bestimmten Parameter
und Ausgeben des Ergebnisses der Berechnung an vorbestimmte
mehrere Adressen, die Dann-Teil-Mitgliedsfunktionen
bei einer einfachen Konstruktion frei definieren.
Als nächstes wird ein zweites Ausführungsbeispiel dieser Erfindung
beschrieben. In Fig. 87 ist ein Blockdiagramm des
zweiten Ausführungsbeispieles veranschaulicht, bei dem der
Ausgang des zweiten Subtrahierers 3 in der Difinitionsschaltung
910 für die Mitgliedsfunktion des in Fig. 9 gezeigten
ersten Ausführungsbeispieles mit dem Eingang der Definitionsschaltung
930 für die Dann-Teil-Mitgliedsfunktion verbunden
ist. Es wird hier vermerkt, daß die Ausgänge der ODER-
Schaltungen 4a für die jeweiligen Dann-Teil-Eingänge in der
Größenbeziehung der Mitgliedswerte umgekehrt sind. Dementsprechend
wird benötigt, daß nicht eine Minimalwertberechnungsschaltung,
sondern die Maximalwertsberechnungsschaltung
960 mit den folgenden ODER-Schaltungen 4a verbunden ist, und
dann die Umkehrung der Größe, d. h. die Berechnung durch den
zweiten Subtrahierer 3 gemäß Fig. 9 durchgeführt wird.
Dadurch kann die Minimalwertberechnung in der Verschwommen-
Theorie durch die Maximalwertberechnung ersetzt sein. Desweiteren
kann entsprechend dem zweiten Ausführungsbeispiel
der zweite Subtrahierer 3 einer aus der Anzahl für jede der
Regeln sein, die für jede der Difinitionsschaltungen 910 für
die Mitgliedsfunktion für die Dann-Teil-Eingänge bei dem ersten
Ausführungsbeispiel vorgesehen ist. Dies verringert die
Anzahl der Subtrahierer 3, wodurch ein Vorteil einer verringerten
Schaltungsintegration vorgesehen wird. Dieser Vorteil
vergrößert sich mit der Zunahme der Anzahl der Dann-Teil-
Eingänge. Jeder Schaltungsblock beim zweiten Ausführungsbeispiel
kann durch die beim ersten Ausführungsbeispiel beschriebenen
Schaltungen implementiert sein.
Wie oben beschrieben, ist die Verschwommen-Folgerungsvorrichtung
entsprechend dieser Erfindung einfach im Aufbau und
weist Vorteile auf, da die Verschwommen-Folgerungsgeschwindigkeit
sehr schnell ist und Rauschen nicht erzeugt wird, da
kein Systemtakt verwendet wird. Entsprechend der vorliegenden
Erfindung ist ferner eine digitale Verschwommen-Folgerungsvorrichtung
vorgesehen, die einen Vorteil aufweist, da
die Verwendung der Definitionsschaltungen für die Falls-
Teil-Mitgliedsfunktion einfach im Aufbau ist, und eine Vergrößerung
der Anzahl der Falls-Teil-Eingänge nicht in einer
entsprechenden Vergrößerung im Schaltungsintegrationsgrad
resultiert. Des weiteren können entsprechend dieser
Erfindung die Formen der Falls-Teil-Mitgliedsfunktion frei
definiert werden. Ebenso können die Adressen der Dann-Teil-
Mitgliedsfunktionen frei geändert werden.
Claims (13)
1. Digitales Fuzzy-Logiksystem mit zumindest einem Fuzzy-Prozessor
(FZ-1, FZ-2, . . .) von denen jeder für die Anwendung
einer Fuzzy-Regel auf zumindest eine Eingangsvariable
(A, B, C) vorgesehen ist, und eine oder mehrere Falls-Teil-Mitgliedsfunktionsdefinitionsschaltungen
(910)
aufweist, deren Ausgänge über eine Minimalwertberechnungsschaltung
(920) an eine Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung
(930) angelegt sind, wobei die
Ausgangswerte aller Fuzzy-Prozessoren (FZ-1, FZ-2, . . .)
an eine Mitgliedsfunktionssynthetisierschaltung (940)
geführt sind, welche eine Maximalwertberechnung durchführt
und als Ergebnis hiervon ein Fuzzy-Ergebnis liefert,
wobei die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung
(910) zum Berechnen eines Falls-Teil-Mitgliedsfunktionswertes
unter Verwendung einer Falls-Teils-Mitgliedsfunktion
(μ(x)) zur Umwandlung der Eingangsvariablen
(A, B, C) zumindest einen Multiplizierer
(2, 410, 416) und zumindest einen Subtrahierer (1, 3,
411, 412, 415) aufweist, und als zusätzliche Eingabevariable
einen oder eine Vielzahl von Steigungsparametern
(k, k1, k2, . . .) für die Steigung der Falls-Teil-Mitgliedsfunktion
(μ(x)) und einen oder eine Vielzahl von
Wendepunktparametern (x, xL, xR) für einen Extremalwert
der Falls-Teil-Mitgliedsfunktion (μ(x)) empfängt.
2. Digitales Fuzzy-Logiksystem nach Anspruch 1, dadurch gekennzeichnet,
daß die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) aufweist:
einen ersten Subtrahierer (1) zum Berechnen von |xo - xi | aus dem durch den Binärcode dargestellten Eingangswert xi und dem Wendepunktparameter xo;
einen Multiplizierer (2) zum Berechnen von k | xo - xi | aus dem Ausgang des ersten Subtrahiers (1) und derm Steigungsparameter k; und
einen zweiten Subtrahierer (3) zum Berechnen von C - k | xo - xi | aus dem Ausgang des Multiplizierers (2) und einem vorbestimmten Wert C, wobei der Ausgang des zweiten Subtrahierers (3) als der Falls-Teil-Mitgliedswert dient.
einen ersten Subtrahierer (1) zum Berechnen von |xo - xi | aus dem durch den Binärcode dargestellten Eingangswert xi und dem Wendepunktparameter xo;
einen Multiplizierer (2) zum Berechnen von k | xo - xi | aus dem Ausgang des ersten Subtrahiers (1) und derm Steigungsparameter k; und
einen zweiten Subtrahierer (3) zum Berechnen von C - k | xo - xi | aus dem Ausgang des Multiplizierers (2) und einem vorbestimmten Wert C, wobei der Ausgang des zweiten Subtrahierers (3) als der Falls-Teil-Mitgliedswert dient.
3. Fuzzy-Logiksystem nach Anspruch 1, dadurch gekennzeichnet,
daß die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) aufweist:
einen Multiplizierer (410) zum Berechnen von k · xi aus dem Steigungsparameter k und dem binären Eingangswert xi;
einen ersten Subtrahierer (411) zum Eingeben des Produktes k · xo des Wendepunktparameters xo und des Steigungsparameters k, und zum Berechnen von | k · xo - k · xi | aus dem Ausgang des Multiplizierers und dem Parameter k · xo; und
einen zweiten Subtrahierer (412) zum Berechnen von C - | k · xo - k · xi | aus dem Ausgang des ersten Subtrahierers und einem vorbestimmten Wert C, wobei der Ausgang der zweiten Subtrahierers als der Falls-Teil-Mitgliedswert dient.
einen Multiplizierer (410) zum Berechnen von k · xi aus dem Steigungsparameter k und dem binären Eingangswert xi;
einen ersten Subtrahierer (411) zum Eingeben des Produktes k · xo des Wendepunktparameters xo und des Steigungsparameters k, und zum Berechnen von | k · xo - k · xi | aus dem Ausgang des Multiplizierers und dem Parameter k · xo; und
einen zweiten Subtrahierer (412) zum Berechnen von C - | k · xo - k · xi | aus dem Ausgang des ersten Subtrahierers und einem vorbestimmten Wert C, wobei der Ausgang der zweiten Subtrahierers als der Falls-Teil-Mitgliedswert dient.
4. Fuzzy-Logiksystem nach Anspruch 1, dadurch gekennzeichnet,
daß die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) aufweist:
einen Subtrahierer (415) zum Eingeben des Produktes k · xo des Wendepunktparameters xo und des Steigungsparameters k, und zum Berechnen von C - k · xo aus einem vorbestimmten Wert C und den Parametern;
einen Multiplizierer (416) zum Berechnen von k · xi aus dem Steigungsparameter k und dem binären Eingangswert xi; und
einen Addierer/Subtrahierer (417) zum Berechnen von k · xi - | C - k · xo |, wenn der Ausgang des Subtrahierers positiv ist, und von k · xi + | C - k · xo |, wenn der Ausgang des Subtrahierers negativ ist, wobei der Ausgang des Addierers/Subtrahierers als der Falls-Teil-Mitgliedswert dient.
einen Subtrahierer (415) zum Eingeben des Produktes k · xo des Wendepunktparameters xo und des Steigungsparameters k, und zum Berechnen von C - k · xo aus einem vorbestimmten Wert C und den Parametern;
einen Multiplizierer (416) zum Berechnen von k · xi aus dem Steigungsparameter k und dem binären Eingangswert xi; und
einen Addierer/Subtrahierer (417) zum Berechnen von k · xi - | C - k · xo |, wenn der Ausgang des Subtrahierers positiv ist, und von k · xi + | C - k · xo |, wenn der Ausgang des Subtrahierers negativ ist, wobei der Ausgang des Addierers/Subtrahierers als der Falls-Teil-Mitgliedswert dient.
5. Fuzzy-Logiksystem nach Anspruch 1, dadurch gekennzeichnet,
daß die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) eine
Übertragungsvorrichtung (2-1) zum Berechnen der Form
der Falls-Teil-Mitgliedsfunktion als ein Dreieck, und
zum Übertragen des berechneten Ergebnisses in eine
andere Form aufweist.
6. Fuzzy-Logiksystem nach Anspruch 1, dadurch gekennzeichnet,
daß die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) als
Eingaben Parameter zur Darstellung einer Vielzahl von
Wendepunkten und Steigungen unter jedem Wendepunkt empfängt
und Falls-Teil-Mitgliedswerte für die Binärdaten
auf der Basis dieser Eingangsparameter berechnet.
7. Digitales Fuzzy-Logiksystem mit zumindest einem Fuzzy-Prozessor
(FZ-1, FZ-2, . . .) von denen jeder für die Anwendung
einer Fuzzy-Regel auf zumindest eine Eingangsvariable
(A, B, C) vorgesehen ist, und eine oder mehrere Falls-Teil-Mitgliedsfunktionsdefinitionsschaltungen
(910)
aufweist, deren Ausgänge über eine Minimalwertberechnungsschaltung
(920) an eine Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung
(930) angelegt sind, wobei die
Ausgangswerte aller Fuzzy-Prozessoren (FZ-1, FZ-2, . . .)
an eine Mitgliedsfunktionssynthetisierschaltung (940)
geführt sind, welche eine Maximalwertberechnung durchführt
und als Ergebnis hiervon ein Fuzzy-Ergebnis liefert,
wobei die Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung
(910) die Eingangsvariablen (A, B, C) in
einen Falls-Teil-Mitgliedsfunktionswert unter Verwendung
einer Falls-Teil-Mitgliedsfunktion umwandelt;
die Dann-Teil-Mitglieds-Funktionsdefinitionsschaltung (930) als Reaktion auf den von der Falls-Teil-Mitglieds-Digitalberechner (930) ausgegebenen Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) ausgegebenen Falls-Teil-Mitgliedswert berechnet entsprechend einem Flächenbereich (S) einer Mitgliedsfunktion, wobei die Höhe (h) dieser Mitgliedsfunktion dem Falls-Teil-Mitgliedsfunktionswert entspricht, und die Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung (930) den Flächenbereich (S) der Dann-Teil-Mitgliedsfunktion definiert; und
die Mitgliedsfunktions-Synthetisierschaltung (940) zum Ausgeben der Ausgangswerte der Dann-Teil-Mitglieds-Definitionsschaltung (930) an eine Vielzahl von vorbestimmten Adressen (NB, NM, NS, ZO, PS, PM, PB) und zum Synthetisieren der Ausgangswerte (Fig. 79-81) der Dann-Teil-Mitglieds-Definitionsschaltung (930) entsprechend einem Flächenbereich bei diesen Adressen (NB, NM, NS, ZO, PS, PM, PB) vorgesehen ist, wobei die Mitgliedsfunktions- Synthetisierschaltung (940) die Position der Dann-Teil-Funktion definiert.
die Dann-Teil-Mitglieds-Funktionsdefinitionsschaltung (930) als Reaktion auf den von der Falls-Teil-Mitglieds-Digitalberechner (930) ausgegebenen Falls-Teil-Mitgliedsfunktionsdefinitionsschaltung (910) ausgegebenen Falls-Teil-Mitgliedswert berechnet entsprechend einem Flächenbereich (S) einer Mitgliedsfunktion, wobei die Höhe (h) dieser Mitgliedsfunktion dem Falls-Teil-Mitgliedsfunktionswert entspricht, und die Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung (930) den Flächenbereich (S) der Dann-Teil-Mitgliedsfunktion definiert; und
die Mitgliedsfunktions-Synthetisierschaltung (940) zum Ausgeben der Ausgangswerte der Dann-Teil-Mitglieds-Definitionsschaltung (930) an eine Vielzahl von vorbestimmten Adressen (NB, NM, NS, ZO, PS, PM, PB) und zum Synthetisieren der Ausgangswerte (Fig. 79-81) der Dann-Teil-Mitglieds-Definitionsschaltung (930) entsprechend einem Flächenbereich bei diesen Adressen (NB, NM, NS, ZO, PS, PM, PB) vorgesehen ist, wobei die Mitgliedsfunktions- Synthetisierschaltung (940) die Position der Dann-Teil-Funktion definiert.
8. Fuzzy-Logiksystem nach Anspruch 7, dadurch gekennzeichnet,
daß die Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung
(930)
aufweist:
eine Verschiebeoperationsschaltung (141), welche mit Signalen (WB1, WB2) entsprechend der Dimensionen einer Dreiecksbasis versorgt wird, zum Verschieben der Falls-Teil-Mitgliedswerte entsprechend der Eingangssignale, so daß der Wert entsprechend dem Bereich erhalten wird;
einen Addierer/Subtrahierer (140) zum Addieren/Subtrahieren des Falls-Teil-Mitgliedswertes und des Ausganges der Verschiebeoperationsschaltung entsprechend den Signalen entsprechend der Basis (siehe Fig. 57).
eine Verschiebeoperationsschaltung (141), welche mit Signalen (WB1, WB2) entsprechend der Dimensionen einer Dreiecksbasis versorgt wird, zum Verschieben der Falls-Teil-Mitgliedswerte entsprechend der Eingangssignale, so daß der Wert entsprechend dem Bereich erhalten wird;
einen Addierer/Subtrahierer (140) zum Addieren/Subtrahieren des Falls-Teil-Mitgliedswertes und des Ausganges der Verschiebeoperationsschaltung entsprechend den Signalen entsprechend der Basis (siehe Fig. 57).
9. Fuzzy-Logiksystem nach Anspruch 7, dadurch gekennzeichnet,
daß die Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung (930)
aufweist:
Adreß-Selektoren (132a, 132b) zum Ausgeben des Ausganges der Dann-Teil-Mitgliedsfunktions-Definitionsschaltung an eine vorbestimmte Adresse; und
Maximalwertberechnungsschaltungen (133a bis 133g) zum Erhalten eines Maximalwertes unter den Werten, die einer Vielzahl der Bereiche entsprechen, für eine Adresse, welche durch die Adreßselektoren ausgewählt ist.
Adreß-Selektoren (132a, 132b) zum Ausgeben des Ausganges der Dann-Teil-Mitgliedsfunktions-Definitionsschaltung an eine vorbestimmte Adresse; und
Maximalwertberechnungsschaltungen (133a bis 133g) zum Erhalten eines Maximalwertes unter den Werten, die einer Vielzahl der Bereiche entsprechen, für eine Adresse, welche durch die Adreßselektoren ausgewählt ist.
10. Digitales Fuzzy-Logiksystem nach einem der vorhergehenden
Ansprüche, dadurch gekennzeichnet, daß
die Dann-Teil-Mitgliedsfunktions-Synthetisierschaltung (940) zum Ausgeben von Signalen von der Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung (930) für jede Fuzzy-Regel vorgesehen ist, wobei die Signale einem Bereich entsprechen, an eine vorbestimmte Adresse entsprechend einem Parameter für die Adressierung, und zum Synthetisieren des Ausgangswertes für jede Adresse; und
ein Schwerpunktsberechner (950) zum Berechnen des Schwerpunktes unter Verwendung der bei jeder Adresse synthetisieren Werte und jeder Adresse vorgesehen ist.
die Dann-Teil-Mitgliedsfunktions-Synthetisierschaltung (940) zum Ausgeben von Signalen von der Dann-Teil-Mitgliedsfunktionsdefinitionsschaltung (930) für jede Fuzzy-Regel vorgesehen ist, wobei die Signale einem Bereich entsprechen, an eine vorbestimmte Adresse entsprechend einem Parameter für die Adressierung, und zum Synthetisieren des Ausgangswertes für jede Adresse; und
ein Schwerpunktsberechner (950) zum Berechnen des Schwerpunktes unter Verwendung der bei jeder Adresse synthetisieren Werte und jeder Adresse vorgesehen ist.
11. Fuzzy-Logiksystem nach Anspruch 10, dadurch gekennzeichnet,
daß der Schwerpunktberechner (950) die Schwerpunktposition
GA wie folgt berechnet:
GA = Σ (m · S)/Σ Swobei m eine Adreßposition und S einen Dann-Teil-Ausgang
darstellen.
12. Fuzzy-Logiksystem nach Anspruch 10, dadurch gekennzeichnet,
daß der Schwerpunktberechner (950) die Schwerpunktposition
GA wie folgt berechnet, unter der
Annahme, daß die Anzahl der Adressen gleich n ist, und
die Dann-Teil-Ausgänge für die Adressen 1 bis n gleich
S0 bis Sn-1 sind:
wenn n = 2,
GA = S1 ÷ (S0 + S1);wenn n = 3,
GA = (Ss + S2) ÷ (S0 + Ss)
wobei Ss = S1 + S2;wenn n = 4,
GA = (Ss + S2 + 2 · S3) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3;wenn n = 5,
GA = (Ss + S2 + 2 (S3 + S4) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 + S4;wenn n = 6,
GA = (Ss + S2 + 2 (S3 + S4) + S4 + 4 · S5) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 +S4 + S5; undwenn n = 7,
GA = (Ss + S2 + 2 (S3 + S4) + S4 (S5 + S6) + S6) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 + S4 + S5 + S6.
GA = S1 ÷ (S0 + S1);wenn n = 3,
GA = (Ss + S2) ÷ (S0 + Ss)
wobei Ss = S1 + S2;wenn n = 4,
GA = (Ss + S2 + 2 · S3) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3;wenn n = 5,
GA = (Ss + S2 + 2 (S3 + S4) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 + S4;wenn n = 6,
GA = (Ss + S2 + 2 (S3 + S4) + S4 + 4 · S5) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 +S4 + S5; undwenn n = 7,
GA = (Ss + S2 + 2 (S3 + S4) + S4 (S5 + S6) + S6) ÷ (S0 + Ss)
wobei Ss = S1 + S2 + S3 + S4 + S5 + S6.
13. Fuzzy-Logiksystem nach Anspruch 10, dadurch gekennzeichnet,
daß der Schwerpunktberechner (950) aufweist:
einen ersten Addierer (201) zum Erhalten des Gesamtwertes Ss der Dann-Teil-Ausgänge von sämtlichen der Ausgangsadressen, welche den Falls-Teil-Mitgliedswert ausgeben, außer für eine Referenzadresse,
einen zweiten Addierer (201) zum Erhalten von SmC = Ss + So aus dem Dann-Teil-Ausgang So bei der Referenzadresse der Ausgangsadressen und dem Ausgang Ss des ersten Addiers;
einen dritten Addierer zum Erhalten des Gesamtwertes SiE von Si, bei dem i eine gerade Zahl mit Ausnahme von 0 ist, wobei Si den i-ten Dann-Teil-Ausgang darstellt, gezählt ab der Referenzadresse;
einen vierten Addierer zum Erhalten des Gesamtwertes SiO von Si, bei dem i eine ungerade Zahl mit Ausnahme von 1 ist;
einen fünften Addierer (202) zum Addieren von Ss mit SiE und zum Erhalten eines addierten Wertes ScC durch Verschieben von jedem Bit von SiO an das meist-signifikante Bit um {(i + 1) - 2}/2; und
einen Dividierer (203) zum Erhalten von ScC ÷ SmC aus ScC und SmC.
einen ersten Addierer (201) zum Erhalten des Gesamtwertes Ss der Dann-Teil-Ausgänge von sämtlichen der Ausgangsadressen, welche den Falls-Teil-Mitgliedswert ausgeben, außer für eine Referenzadresse,
einen zweiten Addierer (201) zum Erhalten von SmC = Ss + So aus dem Dann-Teil-Ausgang So bei der Referenzadresse der Ausgangsadressen und dem Ausgang Ss des ersten Addiers;
einen dritten Addierer zum Erhalten des Gesamtwertes SiE von Si, bei dem i eine gerade Zahl mit Ausnahme von 0 ist, wobei Si den i-ten Dann-Teil-Ausgang darstellt, gezählt ab der Referenzadresse;
einen vierten Addierer zum Erhalten des Gesamtwertes SiO von Si, bei dem i eine ungerade Zahl mit Ausnahme von 1 ist;
einen fünften Addierer (202) zum Addieren von Ss mit SiE und zum Erhalten eines addierten Wertes ScC durch Verschieben von jedem Bit von SiO an das meist-signifikante Bit um {(i + 1) - 2}/2; und
einen Dividierer (203) zum Erhalten von ScC ÷ SmC aus ScC und SmC.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP27879788 | 1988-11-04 | ||
| JP63333502A JPH02176935A (ja) | 1988-12-28 | 1988-12-28 | ディジタルファジィ回路 |
| JP63333503A JPH02176936A (ja) | 1988-12-28 | 1988-12-28 | ディジタルファジィ回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE3936503A1 DE3936503A1 (de) | 1990-05-10 |
| DE3936503C2 true DE3936503C2 (de) | 1993-09-02 |
Family
ID=27336592
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE3936503A Granted DE3936503A1 (de) | 1988-11-04 | 1989-11-02 | Digitales verschwommen-folgerungssystem |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE3936503A1 (de) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE4026342C2 (de) * | 1990-08-20 | 1994-10-13 | Atp Arbeit Tech Photosynthese | Mikroelektronisches Steuer- und Regelsystem |
| JPH04335432A (ja) * | 1991-05-10 | 1992-11-24 | Omron Corp | メンバーシップ関数データ作成方法および装置ならびに適合度演算方法および装置 |
| US5295229A (en) * | 1992-06-17 | 1994-03-15 | Motorola, Inc. | Circuit and method for determining membership in a set during a fuzzy logic operation |
| DE4230756A1 (de) * | 1992-09-15 | 1993-11-04 | Daimler Benz Ag | Durch speicherprogrammierbare steuerungen ausfuehrbares steuerungsverfahren nach den regeln der fuzzy-logik |
| EP0675430A1 (de) * | 1994-03-31 | 1995-10-04 | Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno | Schaltung zum Berechnen von Mirgliedsfunktionswerten in einem Fuzzylogik-Steuerwerk |
| EP0675431A1 (de) * | 1994-03-31 | 1995-10-04 | Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno | Verfahren zur Speicherung von Mitgliedsfunktionen in einen Fuzzy-Logik-Prozessor |
| 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 |
| DE69521027T2 (de) * | 1995-03-28 | 2001-09-06 | Co.Ri.M.Me. Consorzio Per La Ricerca Sulla Microelettronica Nel Mezzogiorno, Catania | Verfahren zur Speicherung von Zugehörigkeitsfunktionen und verwandte Schaltung zum Berechnen vom Zugehörigkeitsgrad der Vorbedingungen von Fuzzy-Regeln |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR910008882B1 (ko) * | 1982-04-27 | 1991-10-24 | 가부시기가이샤 히다찌세이사꾸쇼 | 정위치 정차방법 및 장치 |
| US4716540A (en) * | 1984-07-06 | 1987-12-29 | Omron Tateisi Electronics Co. | Multi-functional fuzzy logic circuit |
| JPH0698903B2 (ja) * | 1986-08-06 | 1994-12-07 | 本田技研工業株式会社 | 車両走行制御装置 |
-
1989
- 1989-11-02 DE DE3936503A patent/DE3936503A1/de active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| DE3936503A1 (de) | 1990-05-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE4021221C2 (de) | ||
| DE3883192T2 (de) | Neuronale Netzwerkschaltung und -struktur. | |
| DE69223221T2 (de) | Datenverarbeitungssystem mit geteilter nicht-linearer Funktion | |
| DE19531049C2 (de) | Verfahren zum Komprimieren von Daten und Codierungsvorrichtung | |
| DE3686681T2 (de) | Parallelmultiplizierer. | |
| DE69030190T2 (de) | Unscharfe steuervorrichtung mit der fähigkeit eine regel und ihr betriebsverfahren zu wechseln und ein durch unscharfe inferenz schaltgesteuertes steuersystem und sein steuerverfahren | |
| DE29521338U1 (de) | Rechner mit einem neutralen Netz | |
| DE3936503C2 (de) | ||
| DE3609250C2 (de) | ||
| EP0049216A2 (de) | Rechenwerkeinheit mit einer parallelen bidirektionalen Schiebeeinrichtung | |
| DE69818863T2 (de) | Binäre kodeumsetzer und kodevergleicher | |
| EP0573845A2 (de) | Fuzzy logic Controller mit hoher Verarbeitungsgeschwindigkeit | |
| DE69025182T2 (de) | Digitaler prozessor für zweierkomplementberechnungen | |
| DE19718224A1 (de) | Digitaler Neuroprozessor | |
| DE3689356T2 (de) | Verfahren und Schaltung zum Generieren von binären Signalen und modifizierter Bitfolge. | |
| DE69519448T2 (de) | Digitale Verarbeitungsanlage mit Befehlen zum Suchen des Minimums und Maximums | |
| DE69315250T2 (de) | Neuronaler Prozessor mit Datennormalisierungsanlage | |
| DE3889150T2 (de) | Filter n-ten Ranges. | |
| DE4019646C2 (de) | Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung | |
| DE2758130A1 (de) | Binaerer und dezimaler hochgeschwindigkeitsaddierer | |
| DE68926131T2 (de) | Steuerdatengenerator für Sortierprozessor | |
| EP0628183B1 (de) | Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen | |
| DE69426229T2 (de) | Verfahren zur parallellen Bearbeitung von Fuzzy-Logik-Inferenzregeln und übereinstimmende Schaltkreisarchitektur mit Fuzzy-Eingabe und -Ausgabe | |
| DE69126052T2 (de) | Neuronales Netzwerk | |
| EP0139207A2 (de) | Schaltung zur CSD-Codierung einer im Zweierkomplement dargestellten, binären Zahl |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| D2 | Grant after examination | ||
| 8363 | Opposition against the patent | ||
| 8368 | Opposition refused due to inadmissibility | ||
| 8339 | Ceased/non-payment of the annual fee |