DE3907843A1 - HARDWARE-ESTABLISHED, CONTROLLED EXPERT SYSTEM - Google Patents

HARDWARE-ESTABLISHED, CONTROLLED EXPERT SYSTEM

Info

Publication number
DE3907843A1
DE3907843A1 DE3907843A DE3907843A DE3907843A1 DE 3907843 A1 DE3907843 A1 DE 3907843A1 DE 3907843 A DE3907843 A DE 3907843A DE 3907843 A DE3907843 A DE 3907843A DE 3907843 A1 DE3907843 A1 DE 3907843A1
Authority
DE
Germany
Prior art keywords
memory
rule
stored
condition
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE3907843A
Other languages
German (de)
Other versions
DE3907843C2 (en
Inventor
Hideaki Kobayashi
Masahiro Shindo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
International Chip Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd, International Chip Corp filed Critical Ricoh Co Ltd
Publication of DE3907843A1 publication Critical patent/DE3907843A1/en
Application granted granted Critical
Publication of DE3907843C2 publication Critical patent/DE3907843C2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems

Abstract

A hardware-implemented rule-based expert system 11 (REX) includes a working memory 12 in which, at the beginning of an inferencing operation, is stored known information or facts pertaining to the application domain; and a memory 13 for storing a rule set 15 comprised of a series of instructions, each defining a condition or an action. Means is provided for loading from the rule memory into working memory successive instructions of the rule set, and a logic means 12 is provided for successively executing the instructions in working memory with reference to the stored facts to thereby deduce new facts. As new facts are deduced, they are stored in working memory and may be used during the execution of subsequent instructions of the rule set to derive additional facts. Upon the completion of the inferencing operation, the facts stored in working memory are transferred, 14, to an output device. <IMAGE>

Description

Die Erfindung betrifft ein in Hardware ausgeführtes, regel­ gestütztes Expertensystem und betrifft insbesondere ein in Hardware ausgeführtes bzw. festverdrahtetes, regelgestütztes Expertensystem, das hoch schnelle Schlußfolgerungen in An­ wendungsfällen mit künstlicher Intelligenz durchführen kann.The invention relates to an executed in hardware, rule based expert system and in particular relates to a in Hardware executed or hard-wired, rule-based Expert system, the high-speed conclusions in An applications with artificial intelligence.

Expertensysteme sind eine bestimmte Art von Computerprogram­ men, welche künstliche Intelligenz-(KI-)Technologie enthal­ ten, um Probleme zu adressieren, deren Lösung normalerweise menschliche Experten oder Spezialisten erfordern. In einem regelgestützten Expertensystem wird sachkundige Kenntnis in einem ganz bestimmten Anwendungsbereich in Form einer Reihe von Regeln oder Vorschriften, d. h. sogenannten "Produktions­ regeln" dargestellt. Bei dem Betrieb eines typischen Experten­ systems versorgt der Benutzer über ein herkömmliches Be­ nutzer-Interface das Expertensystem mit bestimmten bekannten Informationen über ein ganz bestimmtes Problem, und das Ex­ pertensystem verwertet die Produktionsregeln hinsichtlich dieser bekannten Informationen, um Fakten zu deduzieren und um Probleme zu lösen, die den Anwendungsbereich betreffen. Für weitere Hintergrundinformationen, welche Expertensysteme betreffen, wird auf folgende Artikel verwiesen: Robert H. Michaelsen, et al., Stn. 308-312; Beverly A. Thompson, et al., "Inside an Expert System", Byte Magazin, April 1985 Stn. 315-330; Michael F. Deering, "Architectures for AI", Byte Magazin, April 1985, Stn. 193-206.Expert systems are a specific type of computer program containing artificial intelligence (AI) technology to address problems whose solution is usually require human experts or specialists. In one rule - based expert system will be knowledgeable in a very specific application in the form of a series of rules or regulations, d. H. so-called "production In the operation of a typical expert system provides the user with a conventional Be user interface the expert system with certain known Information about a particular problem, and the Ex pertensystem utilizes the production rules with regard to of this known information to deduce facts and to solve problems that affect the scope. For more background information, which expert systems Reference is made to the following articles: Robert H. Michaelsen, et al., Stn. 308-312; Beverly A. Thompson, et al., "Inside an Expert System," Byte Magazine, April 1985 Stn. 315-330; Michael F. Deering, "Architectures for AI", Byte Magazine, April 1985, Stn. 193-206.

Erfolgreiche Expertensysteme sind für eine Anzahl von An­ wendungsbereichen entwickelt worden, beispielsweise zum Durchführen medizinischer Diagnosen, zum Identifizieren organischer Verbindungen, zum Selektieren von Ölbohr- Schlämmen, usw. Zusätzlich sind eine Anzahl bereichsunab­ hängiger Expertensystemgerüste in Softwareform entwickelt worden, um ein Ausbilden von regelgestützten Expertensyste­ men für spezifische Anwendungsbereiche zu erleichtern. Meh­ rere handelsübliche Expertensystem-Werkzeuge oder -Instru­ mente in den vorstehend angeführten Artikeln beschrieben. Üblicherweise sind diese Expertensysteme und -Werkzeuge bzw. -Instrumente in Form von Softwareprogrammen ausgelegt, die einen Universalrechner oder Mikrocomputer durchlaufen. Mit­ tels des Softwareprogramms wird eine Dialogsitzung zwischen dem Benutzer und dem Expertensystem herbeigeführt, wobei das Expertensystem dem Benutzer Fragen stellt und seine Sach­ kenntnis dazu verwendet, die Probleme zu lösen und dem Be­ nutzer Ratschläge zu geben.Successful expert systems are for a number of times been developed, for example for Performing medical diagnoses, identifying organic compounds for selecting oil wells  Muds, etc. In addition, a number are range-independent pending expert skeletons developed in software form to form a rule-based expert system for specific applications. meh Other commercially available expert system tools or instructions ments described in the above-mentioned articles. Usually these expert systems and tools or Instruments designed in the form of software programs that go through a general purpose computer or microcomputer. with The software program will have a dialogue session between the user and the expert system brought about, the Expert system asks the user questions and his property knowledge used to solve the problems and the Be give users advice.

Es besteht ein großes Interesse daran, die Benutzung von Expertensystemen auf andere praktische Anwendungsfälle auszu­ dehnen, und insbesondere Expertensysteme zu entwickeln, wel­ che in Realzeit-Anwendungen benutzt werden können. Solche Systeme würden beispielsweise als Steuersysteme für ver­ schiedene Anwendungsfälle, wie Herstellungs- oder Fertigungs­ verfahren, Prozeßsteuern, Lenk- oder Leitsysteme, Roboter­ steuerung, usw. nützlich sein. Eine Beschränkung bei der Ent­ wicklung von komplizierten Realzeit-Systemen mit künstlicher Intelligenz stellt jedoch die Rechengeschwindigkeit dar. Um künstliche Intelligenz-Technologie in der Praxis wirksam verwenden zu können, muß daher die Rechenleistung und -Ge­ schwindigkeit erhöht werden.There is a great interest in the use of Expert systems to other practical applications to expand, and in particular to develop expert systems, wel can be used in real-time applications. Such Systems would be used, for example, as control systems for ver various applications, such as manufacturing or manufacturing Procedures, process control, steering or guidance systems, robots control, etc. be useful. A limitation in the Ent Development of complicated real-time systems with artificial ones Intelligence, however, represents the computing speed. Um artificial intelligence technology is effective in practice Therefore, the computational power and gene must be used speed are increased.

Es sind bereits beträchtliche Anstrengungen gemacht worden, um die Geschwindigkeit bei der Verarbeitung von künstlicher Intelligenz zu verbessern, indem die Software-Werkzeuge bzw. -Mittel, welche bei der Verarbeitung von künstlicher Intelli­ genz verwendet werden, wie beispielsweise die künstlichen Sprachen, zu verbessern und zu rationalisieren. Auch ist er­ kannt worden, daß Leistungsverbesserungen durch kundenspezi­ fische Hardware erreicht werden können, die insbesondere für eine Verarbeitung von künstlicher Intelligenz ausgelegt wor­ den ist. Wie in dem vorstehend angeführten Artikel von Deering aufgezeigt ist, hat ein Lösungsvorschlag bezüglich Hardware-Architekturverbesserungen Verfeinerungen in dem Prozessor-Befehlsvorrat betroffen, damit der Prozessor schneller arbeiten kann. Besondere Beachtung ist auch der Entwicklung von parallelen Verarbeitungsarchitekturen ge­ schenkt worden, welche es erlauben würden, die künstlichen Intelligenzberechnungen parallel durchzuführen. In dem er­ wähnten Artikel ist auch ausgeführt, daß kundenspezifische VLSI-Hardware verwendet werden könnte, um ganz bestimmte Operationen, wie ein Anpassen und Abrufen, parallele Prozes­ sor-Kommunikation und eine Signal-Symbol-Verarbeitung zu be­ schleunigen.Considerable efforts have already been made to speed up the processing of artificial Improve intelligence by using the software tools or Agents used in the processing of artificial intelligence used, such as the artificial ones Languages, improve and streamline. He is too been known that performance improvements by custom Hardware can be achieved, especially for  a processing of artificial intelligence designed wor that is. As in the above mentioned article of Deering has suggested a solution Hardware architecture refinements in the Processor command set affected so that the processor can work faster. Special attention is also the Development of parallel processing architectures ge which would allow it, the artificial ones Perform intelligence calculations in parallel. In which he The article mentioned is also designed to be customized VLSI hardware could be used to specific purpose Operations, such as fitting and retrieving, parallel Prozes sor communication and signal symbol processing accelerate.

Gemäß der Erfindung soll daher die Geschwindigkeit und Effizienz von regelgestützten Expertensystemen dadurch ver­ bessert werden, daß eine Schlußfolgerungen durchführende Einrichtung vorgesehen ist, welche in Hardware ausgeführt ist. Insbesondere soll die Erfindung eine anwendungsspezi­ fische integrierte Schaltung schaffen, welche speziell da­ für ausgelegt ist, hochschnelle Schlußfolgerungen für ein regelgestütztes Expertensystem durchzuführen. Das in Hard­ ware ausgeführte d. h. fest verdrahtete, regelgestützte Ex­ pertensystem wird nachstehend mit dem Akronym REX (Regel­ gestützter EXperte) bezeichnet und weist einen Arbeits­ speicher auf, in welchem zu Beginn einer Schlußfolgerungs­ operation bekannte Information oder bekannte Fakten, welche den Anwendungsbereich betreffen, gespeichert werden. Zu­ sätzlich weist das System einen Regelspeicher zum Speichern eines Regelvorrats für den jeweiligen Anwendungsbereich auf. Der Regelvorsatz weist eine Reihe von Anweisungen oder Be­ fehle auf, die jeweils eine Bedingung bzw. Kondition oder eine Aktion bzw. eine Bedienungsmaßnahme festlegen. Ferner ist eine Einrichtung vorgesehen, um von dem Regelspeicher in den Arbeitsspeicher nacheinander Anweisungen oder Be­ fehle aus dem Regelvorsatz zu laden; darüber hinaus ist eine logische Einrichtung vorgesehen, um die Befehle in dem Arbeitsspeicher bezüglich der gespeicherten Fakten in dem Arbeitsspeicher nacheinander auszuführen, um dadurch neue Fakten zu deduzieren. Wenn während der Folgerungsoperation neue Fakten deduziert werden, werden sie in dem Arbeits­ speicher gespeichert und können während der Ausführung nach­ folgender Anweisungen aus dem Regelvorrat verwendet werden, um zusätzliche Fakten abzuleiten. Nach Beendigung der Fol­ gerungsoperation werden die in dem Arbeitsspeicher gespei­ cherten Fakten an eine Ausgabeeinrichtung transferiert.According to the invention, therefore, the speed and Efficiency of rule-based expert systems thereby ver that conclusions are made Device is provided which is executed in hardware is. In particular, the invention is a Anwendungsspezi create fish integrated circuit, which is specially there is designed for, high-speed conclusions for a perform rule-based expert system. That in Hard ware executed d. H. Hardwired, rule-based Ex pertensystem is described below with the acronym REX (Rule supported expert) and has a working memory in which at the beginning of a conclusion known information or known facts which the scope are stored. to In addition, the system has a rule memory for storage a rule list for the respective field of application. The rule header has a series of instructions or be missing, each one condition or condition or define an action or an operating measure. Further A facility is provided to remove from the rule storage successive instructions or loading into the main memory lack of the control intent to load; beyond that  a logic means is provided to execute the instructions in the Memory regarding the stored facts in the Run memory one after another to create new ones Deduce facts. If during the inference operation new facts are deduced, they are working in the stored and can while running after following instructions from the rule pool are used, to derive additional facts. After completion of the Fol The operation will be stored in the memory transferred facts to an output device.

Jede der Anweisungen des Regelvorrats enthält einen Operator, ein Konditions-/Aktions-Flag und ein Paar Operanden. Die lo­ gische Einrichtung weist einen Befehlsdekoder auf, um das Konditions-/Aktions-Flag jedes Befehls zu überprüfen, um zu bestimmen, ob der Befehl eine Kondition bzw. Bedingung oder eine Aktion bzw. Bedienungsmaßnahme ist. Wenn der Befehl eine Bedingung ist, werden die Operanden entsprechend der logischen Operation, welche durch den Operator spezifiziert worden ist, verglichen, um ein logisches Ergebnis (z. B. richtig oder falsch) zu erzeugen. Wenn die Anweisung eine Bedienungsmaßnahme bzw. Aktion ist, wird diese Aktion, wel­ che durch den Operator spezifiziert worden ist, an den Operanden durchgeführt.Each of the rules of the rule set contains an operator a condition / action flag and a pair of operands. The lo The device has a command decoder to handle the Check condition / action flag of each command to determine whether the command is a condition or condition an action or operating measure is. If the command is a condition, the operands are corresponding to the logical operation specified by the operator has been compared to obtain a logical result (eg right or wrong). If the statement is a Action or action, this action, wel has been specified by the operator to whom Operands performed.

Der Arbeitsspeicher und die logische Einrichtung können in einer integrierten Schaltung vorgesehen sein. Der Regel­ speicher kann entweder extern in der integrierten Schal­ tung vorgesehen und mit dem Arbeitsspeicher über einen entsprechenden externen Speicherbus verbunden sein, oder der Regelspeicher kann auf der integrierten Schaltung vor­ gesehen sein, wobei entsprechende Datenbus-Verbindungen mit dem Arbeitsspeicher bestehen. Da der Anwendungs-Regelvor­ rat in einem Speicher gespeichert ist, ist die REX-Fol­ gerungseinrichtung bereichsunabhängig und kann in einer be­ liebigen Anzahl verschiedener Anwendungsfälle in einfacher Weise dadurch benutzt werden, daß ein anderer Anwendungs­ regelvorrat in dem Regelspeicher untergebracht ist. Die Struktur des Regelspeichers und die Datenstruktur des An­ wendungs-Regelsatzes werden entsprechend ausgelegt, um die Effizienz und damit die Leistung des Folgerungspro­ zesses zu erhöhen.The memory and the logical device can be in be provided an integrated circuit. The rule Memory can either be external in the integrated scarf provided and with the main memory via a be connected to the corresponding external memory bus, or The rule memory may be present on the integrated circuit be seen, with corresponding data bus connections with consist of the working memory. Since the application rule rat is stored in a memory, the REX-Fol Regardless of area and can be in a be sweet number of different use cases in simple Be used by another application  rule reserve is housed in the rule memory. The Structure of Rule Memory and the Data Structure of the On application rulesets are designed to work the efficiency and thus the performance of the inference pro to increase their zeal.

Um die Vielseitigkeit und den weiten Anwendungsbereich der Erfindung zu zeigen, wird nachfolgend im einzelnen be­ schrieben, wie die REX-Folgerungseinrichtung als Co-Pro­ zessor in Verbindung mit einem bestehenden Computer oder Mikrocomputer benutzt werden kann, um ein Expertensystem zu schaffen, welches Folgerungen mit Geschwindigkeiten durch­ führen kann, welche erheblich größer sind als die, welche mit herkömmlichen in Software ausgeführten Folgerungsein­ richtungen durchgeführt werden konnten. Die REX-Folgerungs­ einrichtung kann jedoch auch in vielen anderen Anwendungs­ fällen benutzt werden, wie beispielsweise in einem selb­ ständig operierenden System, wenn es mit einem entsprechen­ den internen Steuersystem, einem Benutzer-Interface und Ein-/Ausgabe-Einrichtungen versehen ist.To the versatility and the wide scope of the Invention will be described in detail be wrote how the REX inference device as a co-pro computer in conjunction with an existing computer or Microcomputer can be used to provide an expert system create what conclusions with speeds through can lead, which are considerably larger than those which with conventional in-software implications could be carried out. The REX conclusion However, the device can also be used in many other applications cases are used, such as in a selb constantly operating system, if it corresponds with one the internal control system, a user interface and Input / output facilities is provided.

Die REX-Folgerungseinrichtung kann auch eine Realzeit- Wissenverarbeitung durchführen, die auf der laufenden VLSI- Technologie basiert. Die Geschwindigkeit, mit welcher ein Problem gelöst wird, wird anstelle von Gleitpunkt-Operatio­ nen pro Sekunde (FLOPS) durch logische Schlußfolgerungen pro Sekunde (LIPS) gemessen. Eine logische Schlußfolgerung pro Sekunde entspricht annähernd 100 bis 1000 Gleitpunkt-Opera­ tionen pro Sekunde in einem herkömmlichen Rechner.The REX reasoning device can also be a real-time Perform knowledge processing based on the current VLSI Technology based. The speed with which one Problem is solved, instead of floating-point Operatio per second (FLOPS) by logical inference per Second (LIPS). One logical conclusion per Second corresponds to approximately 100 to 1000 floating-point Opera per second in a conventional computer.

Nachfolgend wird die Erfindung anhand von bevorzugten Aus­ führungsformen unter Bezugnahme auf die anliegenden Zeich­ nungen im einzelnen erläutert. Es zeigtThe invention will be described below with reference to preferred management forms with reference to the attached drawing explained in detail. It shows

Fig. 1 eine perspektivische Darstellung, in welcher ge­ zeigt ist, wie die REX-Folgerungseinrichtung ge­ mäß der Erfindung als ein Co-Prozessor in einem herkömmlichen Personal-Computer benutzt werden kann; Fig. 1 is a perspective view showing how the REX inference device according to the invention can be used as a co-processor in a conventional personal computer;

Fig. 2 eine detailliertere Darstellung einer Co-Prozessor- Schaltungskarte, welche in der REX-Folgerungsein­ richtung verwendet ist; Fig. 2 is a more detailed illustration of a co-processor circuit board used in the REX inference device;

Fig. 3 ein schematisches Blockdiagramm des Datenflusses für die REX-Einrichtung; Figure 3 is a schematic block diagram of the data flow for the REX device.

Fig. 4 ein Blockdiagramm der regelgestützten Struktur für die REX-Einrichtung; 4 is a block diagram of the rule-based structure for the REX device.

Fig. 5a und 5b Diagramme, in welchen die Datenstruktur der Befehle wiedergegeben ist, welche in einem Re­ gelspeicher gespeichert sind; FIGS. 5a and 5b are diagrams in which the data structure of the instructions is shown that are stored in a gelspeicher Re;

Fig. 6 ein Diagramm des Operationscodes-Formats, das in dem REX-Chip verwendet ist; Fig. 6 is a diagram of the operation code format used in the REX chip;

Fig. 7 ein Gesamtblockdiagramm der Hauptfunktionskompo­ nenten des REX-Chips; Fig. 7 is an overall block diagram of the main functional components of the REX chip;

Fig. 8 ein Diagramm der Datenbus-Bit-Zuordnung für Ein- Ausgabe-Lese-/Schreib-Operationen; FIG. 8 is a diagram of data bus bit allocation for input / output read / write operations; FIG.

Fig. 9 ein Flußdiagramm des Folgerungsflusses des REX- Chips und Fig. 9 is a flowchart of the inference flow of chips and REX

Fig. 10 bis 12 Zeitdiagramme für das REX-Chip, welche die zeitliche Steuerung des Lese-, des Schreib-Modes sowie des externen Speichers zeigen. Fig. 10 to 12 are timing diagrams for the REX-chip showing the timing of the read, the write-mode and of the external memory.

In Fig. 1 ist ein Expertensystem gemäß der Erfindung dar­ gestellt, welches entsprechend ausgelegt ist, um mit einem Mikrocomputer 10 zu arbeiten, wie beispielsweise einem IBM-AT-Personal-Computer, welchem eine regelgestützte Ex­ pertensystem (REX)-Co-Prozessor-Schaltungskarte 11 hinzu­ gefügt ist. Die REX-Schaltungskarte 11 besteht aus einem REX-Chip 12, einem externen Regelspeicher 13 und einem Ein-/Ausgabe-Interface 14. Die REX-Schaltungskarte ist in Fig. 2 im einzelnen dargestellt. Ein Anwendungs-Regel­ vorrat für einen ganz bestimmten Anwendungsbereich, wel­ cher in Fig. 2 mit 15 bezeichnet ist, ist in dem externen Regelspeicher 13 gespeichert. Folglich ist das REX-Chip 12 bereichsunabhängig und kann bei einer Vielzahl verschiede­ ner Anwendungen benutzt werden.In Fig. 1, an expert system according to the invention is provided, which is adapted to operate with a microcomputer 10 , such as an IBM AT personal computer, which is a rule-based Ex pertensystem (REX) co-processor Circuit card 11 is added. The REX circuit board 11 is composed of a REX chip 12 , an external rule memory 13 and an input / output interface 14 . The REX circuit card is shown in Fig. 2 in detail. An application rule stock for a very specific application, wel cher in Fig. 2 is denoted by 15 is stored in the external rule memory 13 . Consequently, the REX chip 12 is domain independent and can be used in a variety of different applications.

Anhand von Fig. 2 wird jede Komponente der REX-Co-Prozessor- Schaltungskarte 11 im einzelnen erläutert:Referring now to Figure 2, each component of the REX co-processor circuit card 11 will be explained in detail:

Ein-/Ausgabe-Interface:
Das Ein-/Ausgabe-Interface 14 ist für die Kommunikation zwischen dem Personal-Computer 10 und der REX-Co-Prozessor-Schaltungskarte 11 verantwortlich. Ex­ terne Daten werden von dem Personal-Computer 10 zu der REX-Schaltungskarte 11 über das Ein-/Ausgabe-Interface 14 transferiert. In der dargestellten, bevorzugten Ausfüh­ rungsform schafft ein DMA-Kanal eine Datenübertragung zwi­ schen der REX-Schaltungsplatte 11 und dem Personal-Compu­ ter 10. Ein Software-Programmdurchlauf durch den Personal- Computer wird dazu verwendet, um ein leicht verständliches Benutzer-Interface zu schaffen.
REX-Chip:
Das REX-Chip 12 ist eine Hardware-Folgerungsein­ richtung und stellt das Herzstück der REX-Co-Prozessor- Schaltungskarte 11 dar. Zwei Hauptkomponenten des REX- Chips sind ein Arbeitsspeicher und eine Steuerlogik. Bevor der Folgerungsprozeß begonnen wird, wird der Arbeitsspei­ cher mit externen Daten von dem Ein-/Ausgabe-Interface ini­ tialisiert. Externe Daten, welche Fakten betreffen, welche über den Anwendungsbereich bekannt sind, werden an ganz be­ stimmten Speicherstellen des Arbeitsspeichers gespeichert. Während des Folgerungsprozesses ist der Arbeitsspeicher ein vorübergehender Speicher für Zwischendaten. Wenn der Fol­ gerungsprozeß beendet ist, enthält der Arbeitsspeicher die Ergebnisse des Folgerungsprozesses, welche dann über das Ein-/Ausgabe-Interface an den Personal-Computer übertragen werden.
Regelspeicher:
Ein gut unterrichteter Ingenieur extrahiert einen Satz Produktionsregeln, welcher als Anwendungs-Regel­ vorrat 15 bezeichnet ist, aus dem Anwendungsbereich, und dieser Regelvorrat wird in dem Regelspeicher 13 gespeichert. Während des Folgerungsprozesses verweist das REX-Chip 12 bezüglich einer Regelinformation auf den Regelspeicher 13. Die Struktur des Regelspeichers ist bekannt, um ihn an die REX-Chip-Anforderungen anzupassen und um Speicherplatz zu verringern. Die Datenstruktur des in dem Regelspeicher ge­ speicherten Anwendungs-Regelvorrats ist entsprechend ausge­ legt, um die Effizienz und Leistung des Folgerungsprozesses sehr zu steigern. Weitere Einzelheiten über die Struktur des Regelspeichers und den gespeicherten Regelvorrat werden nach­ stehend noch gegeben.
Input / output interface:
The I / O interface 14 is responsible for the communication between the personal computer 10 and the REX co-processor circuit board 11 . External data is transferred from the personal computer 10 to the REX circuit card 11 via the input / output interface 14 . In the illustrated preferred embodiment, a DMA channel provides data transfer between the REX circuit board 11 and the personal computer 10 . A software program pass through the personal computer is used to provide an easy-to-understand user interface.
REX chip:
The REX chip 12 is a hardware inference device and represents the heart of the REX co-processor circuit card 11. Two major components of the REX chip are memory and control logic. Before the inference process is started, the work memory with external data is initialized by the I / O interface. External data concerning facts known about the scope are stored at very specific memory locations. During the inference process, the memory is temporary storage for intermediate data. When the sequencing process is completed, the memory contains the results of the inference process, which are then transferred to the personal computer via the I / O interface.
Rule memory:
A well-informed engineer extracts a set of production rules, referred to as application rule stock 15 , from the scope, and this rule set is stored in the rule storage 13 . During the inference process, the REX chip 12 refers to the rule memory 13 for control information. The structure of the rule memory is known to adapt to the REX chip requirements and to reduce storage space. The data structure of the application rule set stored in the rule store is appropriately set to greatly increase the efficiency and performance of the inference process. Further details about the structure of the rule storage and the stored rule stock are still given after standing.

Der Regelspeicher kann ein ROM-, RAM-, ein EPROM- oder ein anderer entsprechender Speicher sein. Wenn ein RAM-Speicher als Regelspeicher verwendet wird, wid ein Initialisierungs­ programm benutzt, um anfangs den Regelvorrat 15 in dem ex­ ternen Speicher 13 einzubringen.The rule memory may be ROM, RAM, EPROM, or other equivalent memory. When a RAM memory is used as a rule memory, an initialization program is used to initially apply the rule set 15 in the external memory 13 .

Obwohl die hier dargestellte, spezielle Ausführungsform zeigt, wie das REX-Chip 12 als ein Co-Prozessor für einen Personal-Computer benutzt werden kann, erkennen Fachleute, daß das in Hardware ausgeführte, d. h. festverdrahtete regel­ gestützte Expertensystem gemäß der Erfindung (REX) in vie­ len anderen speziellen Anwendungsfällen benutzt werden kann. Beispielsweise kann es als ein selbständig operierendes System benutzt werden. In einem solchen Fall ist ein Steuer­ system vorgesehen, um mit einem Benutzer-Interface und ei­ nem Ein-/Ausgabe-Interface umzugehen, und es sind zusätzli­ che Ein-/Ausgabeeinrichtungen, wie ein Tastenfeld, ein grafisches Display usw. vorgesehen, um eine Kommunikation zwischen der REX-Schaltungsplatte und dem Benutzer zu er­ möglichen.Although the particular embodiment shown here shows how the REX chip 12 can be used as a co-processor for a personal computer, those skilled in the art will recognize that the hardware-executed, ie, hard-wired, rule-based expert system according to the invention (REX) many other special applications can be used. For example, it can be used as a stand-alone system. In such a case, a control system is provided to handle a user interface and an input / output interface, and additional input / output devices, such as a keypad, a graphic display, etc., are provided to provide a user interface Communication between the REX circuit board and the user is possible.

Es gibt verschiedene Arten von Folgerungsverfahren, welche verwendet werden können um ein Problem in einem regelge­ stützten Expertensystem zu lösen. Einige der wichtigen Fol­ gerungsverfahren sind vorwärts verknüpft (forward chaining) rückwärts verknüpft (backwar chaining) oder weisen eine Kombination dieser Verknüpfungen auf. Die im einzelnen dar­ gestellte und beschriebene Folgerungseinrichtung benutzt das Vorwärtsverknüpfungs-Folgerungsverfahren mit Produk­ tionsregeln.There are several types of inference methods which can be used to solve a problem in a rule solved expert system to solve. Some of the important fol evaluation procedures are linked forward (forward chaining) backward chaining (backwar chaining) or assign a Combination of these links. The individual dar Asked and described inference used the forward link inference method with product tion rules.

Die Regeln des regelgestützten Systems sind durch Produk­ tionsregeln dargestellt. Die Produktionsregel besteht aus einem Wenn-Teil und einem Dann-Teil. Der Wenn-Teil ist eine Liste aus einer oder mehreren Bedingungen oder Vorläufern (antecedents). Der Dann-Teil ist eine Liste von Aktionen oder Folgerungen. Folglich kann eine Produktionsregel folgendermaßen dargestellt werden:The rules of the rule-based system are by product tion rules. The production rule consists of an if-part and a then-part. The if part is one List from one or more conditions or precursors (Antecedents). The then part is a list of actions or conclusions. Consequently, a production rule are represented as follows:

WennIf Bedingung 1,condition 1, Bedingung 2,condition 2, :: Bedingung n condition n DannThen Aktion 1,action 1, Aktion 2,action 2, :: Aktion n action n

Wenn den Bedingungen (Bedingung  1, Bedingung  2, . . . Bedingung   n) durch die Fakten eines vorgegebenen Problems genügt ist, kann gesagt werden, daß die Regel getriggert ist. Das Expertensystem kann dann die vorgegebenen Aktionen durchführen. Sobald die Aktionen durchgeführt sind, wird ge­ sagt, daß die Regeln aktiviert sind. Diese speziellen Aktio­ nen können andere Bedingungen ändern, welche ihrerseits andere Regeln aktivieren können. Das ständige Aktivieren von Regeln dauert an, bis die Probleme gelöst sind, oder keinen anderen Regeln genügt werden kann. Diese Methode der Regelaktivierung wird durch die Regeln hindurch in Vorwärts­ richtung hindurchgeführt, weshalb dies auch als Vorwärts­ verknüpfung bezeichnet wird. Eine Vorwärtsverknüpfung wird auch als ein Deduziersystem von angesteuerten Fakten be­ zeichnet, da die Fakten den Fluß oder Ablauf der zu akti­ vierenden Regeln leiten.If the conditions (condition    1, condition    2,. , , condition    n) is satisfied by the facts of a given problem, it can be said that the rule is triggered. The expert system can then perform the given actions. Once the actions are done, it says that the rules are enabled. These special actions can change other conditions, which in turn can activate other rules. The constant activation of rules lasts until the problems are solved or no other rules can be met. This method of rule activation is passed through the rules in the forward direction, which is why this is also referred to as forward linkage. A forward link is also referred to as a deduction system of driven facts, as the facts guide the flow or flow of the rules to be acted upon.

Das Triggern der Regeln bedeutet nicht, daß die Regeln akti­ viert werden, weil den Bedingungen einiger anderer Regeln gleichzeitig genügt sein kann und alles zu triggern ist. Sollte dies vorkommen, dann muß eine Konflikt-Entscheidungs­ strategie angewendet werden, um zu entscheiden, welche Re­ gel tatsächlich aktiviert wird. Eine Konflikt-Entscheidungs­ strategie ist ein Prozeß, um die vorteilhafteste Regel aus­ zuwählen, wenn mehr als einer Regel genügt ist. Beispiele für Konflikt-Entscheidungsstrategien sind die folgenden:The triggering of the rules does not mean that the rules are active Fourth, because of the conditions of some other rules at the same time it can be enough and everything can be triggered. If this happens, then a conflict decision must be made strategy to decide which Re gel is actually activated. A conflict decision Strategy is a process to rule out the most advantageous select if more than one rule is sufficient. Examples for conflict-resolution strategies are the following:

  • 1. Die Regel, welche die häufigsten Daten enthält, wird ausgewählt. Diese Strategie wird Daten-Neuheitenorder be­ zeichnet.1. The rule that contains the most common data becomes selected. This strategy will be data novelty order records.
  • 2. Die Regel, welche die komplizierteste der schwierigsten Anforderungen ist, wird ausgewählt. Dies wird dann auch als Kontext-Begrenzungsstrategie bezeichnet.2. The rule, which is the most complicated of the most difficult Requirements is selected. This is also called Context limitation strategy called.
  • 3. Die Regel, welche als erste in der Liste angegeben ist, wird ausgewählt. Dies wird als Regel-Anordnung bezeichnet.3. The rule that is listed first in the list will be chosen. This is called a rule arrangement.
Beispiel 1Example 1 Beispiel für eine VorwärtsverkettungExample of a forward chaining

Dies Beispiel ist eine generelle Darstellung der Arbeits­ weise des regelgestützten Expertensystems. Für diese Dar­ stellung wird auf den Tier-Identifizierungs-Regelvorrat im Angang A Bezug genommen. Dieser Regelvorrat versucht, ein Tier dadurch zu identifizieren, daß seine physischen charak­ teristischen Merkmale vorgegeben werden. Die folgenden charakteristischen Merkmale sollen beobachtet worden sein:This example is a general representation of the work example of the rule-based expert system. For this dar Position is added to the Animal Identification Rule Pool in the Angang A reference. This rule store tries to Identify animal by its physical charak teristic characteristics are given. The following characteristic features should have been observed:

das Tier hat Haare;
das Tier ißt Fleisch;
das Tier hat eine gelbbraune Farbe;
das Tier hat schwarze Streifen.
the animal has hair;
the animal eats meat;
the animal has a yellow-brown color;
the animal has black stripes.

Die Wahrnehmungen werden in die folgenden Fakten übersetzt:The perceptions are translated into the following facts:

Bedeckung = Haare;
Nahrung = Fleisch;
Farbe = gelbbraun;
Streifen = schwarz.
Covering = hair;
Food = meat;
Color = yellow-brown;
Stripes = black.

Wenn diese Fakten vorgegeben sind, wird Regel 1 getriggert. Gemäß der Regel wird dann deduziert:If these facts are given then rule 1 will be triggered. The rule then deduces:

Klasse = Säugetier.Class = mammal.

Nunmehr nimmt das System dies als ein neues Faktum, daß das Tier ein Säugetier ist. Folglich können Regel 2 bis Regel 4 nicht getriggert werden. Die Voraussetzung der Re­ gel 5 ist gültig; folglich deduziert das System, daß das Tier ein Fleischfresser ist.Now the system takes this as a new fact that the animal is a mammal. Consequently, Rule 2 bis Rule 4 will not be triggered. The requirement of Re gel 5 is valid; consequently, the system deduces that Animal is a carnivore.

Fleischfresser = ja.Carnivore = yes.

Bis jetzt hat das System zwei neue Fakten deduziert, welche verwendet werden können. Die ersten drei Voraussetzungen von Regel 9 sind richtig, aber die letzte Voraussetzung gilt nicht; folglich reicht die Regel nicht aus. Regel 10 wird getriggert und kann aktiviert werden. Das System deduziert folglich, daß das Tier ein Tiger ist.So far the system has deduced two new facts which can be used. The first three requirements of Rule 9 is correct, but the last condition applies Not; therefore, the rule is not enough. Rule 10 becomes triggered and can be activated. The system deduced hence that the animal is a tiger.

Tier = Tiger.Animal = Tiger.

Der Folgerungsablauf stoppt hier noch nicht, da es noch mehr Regeln gibt. In diesem Fall kann jedoch keiner der übrigen genügt werden. Das System identifiziert dann das Tier als einen Tiger.The reasoning process does not stop here, as it is still There are more rules. In this case, however, none of the rest will suffice. The system then identifies that Animal as a tiger.

Das Beispiel zeigt die Folgerungsmethode, bei welcher von den aktuellen Fakten oder Beobachtungen bis zu einem Schluß bzw. Ergebnis vorwärts gearbeitet wird.The example shows the inference method in which of the actual facts or observations up to one  Conclusion or result is worked forward.

Architektur der REX-FolgerungseinrichtungArchitecture of the REX reasoning device

Die Hauptkomponenten der REX-Folgerungseinrichtung sind im einzelnen in Fig. 3 dargestellt. Das REX-Chip selbst hat drei Hauptfunktionskomponenten, nämlich den Arbeitsspeicher 16, eine Arithmetik-Logik-Einheit (ALU) 17 und eine Steuer­ logik 18. In der dargestellten Ausführungsform ist der Re­ gelspeicher 13 eine separate Speichereinrichtung, welche mit dem Arbeitsspeicher 16 durch ein Datenbus 21 verbunden ist. Jedoch könnte selbstverständlich der Datenspeicher erforderlichenfalls in dem REX-Chip selbst integriert sein. Das Ein-/Ausgabe-Interface 14 ist durch ein in seiner Ge­ samtheit mit 22 bezeichnetes System-Interfacebus kommuni­ kativ mit dem Arbeitsspeicher verbunden. Die Steuerlogik 18 ist in Fig. 3 schematisch dargestellt. Im allgemeinen be­ steht die Aufgabe der Steuerlogik 18 darin, die Operationen der anderen Elemente wie der Arithmetik-Logikeinheit (ALU) 17 und des Arbeitsspeichers 16, zu steuern.The main components of the REX reasoning device are shown in detail in FIG . The REX chip itself has three main functional components, namely the main memory 16 , an arithmetic logic unit (ALU) 17 and a control logic 18th In the illustrated embodiment, the read-only memory 13 is a separate memory device which is connected to the random access memory 16 through a data bus 21 . However, of course, the data store could, if necessary, be integrated in the REX chip itself. The input / output interface 14 is communi katively connected to the main memory by a designated in its entirety Ge with 22 system interface bus. The control logic 18 is shown schematically in FIG . In general, the task of the control logic 18 is to control the operations of the other elements, such as the arithmetic logic unit (ALU) 17 and the random access memory 16 .

Datenfluß in der REX-FolgerungseinrichtungData flow in the REX reasoning device

Der Datenfluß für die REX-Einrichtung wird am besten an­ hand von Fig. 3 verständlich und nachfolgend beschrieben. Die mit Kreisen umgebenen Zahlen in Fig. 3 entsprechen den folgenden numerierten Überschriften:The data flow for the REX device is best understood with reference to FIG. 3 and described below. The numbers surrounded by circles in FIG. 3 correspond to the following numbered headings:

1. Eingangsdaten1. Input data

Der Benutzer gibt die Fakten in das System über ein Be­ nutzer-Interface-Programm in den Personal-Computer 10 ein. Der Benutzer stellt die Fakten in einer vorher festge­ legten Syntax dar. Beispielsweise würde der Benutzer mit Hilfe der tatsächlichen Daten des Beispiels 1 und des Regel­ vorrats im Anhang A das folgende eingeben:The user enters the facts into the system via a user interface program in the personal computer 10 . The user presents the facts in a predefined syntax. For example, using the actual data of example 1 and the rule stock in Appendix A, the user would enter the following:

Bedeckung = Haar
Farbe = gelbbraun
. . .
. . . usw.
Covering = hair
Color = yellow-brown
, , ,
, , , etc.

Das Benutzer-Interface-Programm setzt jede tatsächliche Beobachtung in Werte um, welche durch ein paar Binärzahlen dargestellt sind. Der erste Teil des Paars ist eine Adresse und der zweite Teil des Paars ist ein Wert.The user interface program sets each actual Observation into values around, which by a few binary numbers are shown. The first part of the pair is an address and the second part of the pair is a value.

In dem vorstehenden Beispiel ergibt sich dann:In the example above, then:

(Adresse $ 32) Bedeckung = (Wert # 10) Haare;
(Adresse $ 58) Farbe = (Wert # 55) gelbbraun;
. . .
. . . usw.
(Address $ 32) coverage = (value # 10) hair;
(Address $ 58) Color = (value # 55) tan;
, , ,
, , , etc.

wobei "$" und "#" anzeigen, daß die betreffende Zahl eine Adresse bzw. ein Wert ist. In dem oben wiedergegebenen Fall ist Bedeckung bei der Adresse 32 abgelegt. (Kein anderes Wort ist bei der Adresse 32 abgelegt.) Folglich ist jedes Wort einer eindeutigen Adressenzahl zugeordnet. Der Wert Haare ist in der Adresse 32 gespeichert. Diese Zahlen werden beim Schritt 2 verwendet.where "$" and "#" indicate that the number in question is a Address or value. In the case reproduced above Cover is stored at the address 32. (Nothing else Word is filed at address 32.) Consequently, each one is Word assigned to a unique address number. The value Hair is stored in address 32. These numbers will be used in step 2.

2. Speichern von Fakten in den Arbeitsspeicher2. Saving facts to memory

Beim Schritt 2 werden die Faktoren in den Arbeitsspeicher ge­ speichert.In step 2, the factors are ge in the memory ge stores.

3. Ablegen der Regeln in den Arbeitsspeicher3. Store the rules in the main memory

Ein externer Speicher wird dazu verwendet, Regeln, die zu dem Anwendungsbereich passen, zu speichern. Jede Regel wird folgendermaßen dargestellt:An external memory is used to create rules that are too fit the scope of application. Every rule will as shown:

WENNIF Bedingung 1 undCondition 1 and Bedingung 2 undCondition 2 and . . ., , , DANNTHEN Aktion 1Action 1 Aktion 2Action 2 . . ., , ,

Ein Bedingungselement ist:A condition element is:

(Klasse = Säugetier)(Class = mammal)

Dementsprechend ist ein Aktionselement:
(Typ : hufförmig)
Accordingly, an action item is:
(Type: hoof-shaped)

Jedes Element, ob es nun ein Bedingungs- oder ein Aktions­ teil der Regel ist, wird intern als eine Anweisung in dem nachstehend wiedergegebenen Format dargestellt:Every element, be it a condition or an action Part of the rule is internally as an instruction in the shown below format:

Jede Anweisung hat eine vorherbestimmte Länge, beispiels­ weise 32 Bits. Der Operand 1 stellt eine Adresse des Ar­ beitsspeichers dar. In Abhängigkeit von dem Wert des Dir/Unm.-Feldes ist der Operand 2 eine Adresse oder ein Wert in dem Arbeitsspeicher. Das Dir/Unm.-Feld bestimmt, ob der Adressierungsmode des Operanden 2 DIREKT oder unmittel­ bar ist. Das Akt./Beding.-Feld bestimmt, ob das Element sich auf den Bedingungs- oder Aktionsteil einer Regel bezieht. Das Operatorfeld bestimmt den Typ des Operators, welcher in dem Bedingungsteil der Regel benutzt wird. Beispiele von Operatoren sind: gleich (=), größer als (<), kleiner als (<) usw.Each statement has a predetermined length, for example wise 32 bits. The operand 1 represents an address of the Ar depending on the value of the Dir / Unm field, the operand 2 is an address or a Value in the memory. The Dir / Unm. Field determines whether the addressing mode of operand 2 DIRECT or immediate bar is. The Act./Beding field determines whether the item is refers to the condition or action part of a rule. The operator field determines the type of operator, which in the condition part of the rule is used. Examples of Operators are: equal (=), greater than (<), less as (<) etc.

4-5 Folgerungszyklus4-5 inference cycle

Die folgenden Schritte werden während des Folgerungszyklus durchgeführt.The following steps are taken during the inference cycle carried out.

4.1 Externes Speicherelement abrufen4.1 Retrieve External Memory Element

Eine Regel wird aus dem Regelspeicher 13 abgerufen und das Beding./Akt-Feld des ersten Befehls der Regel wird überprüft, um zu prüfen, ob eine Bedingung oder eine Aktion ist. Wenn der Befehl ein Bedingungselement ist, dann wird die im Ab­ schnitt 4.1.1 beschriebene Prozedur angewendet. Wenn es eine Aktion ist, dann wird die im Abschnitt 4.1.2 beschriebene Prozedur angewendet. A rule is retrieved from the rules store 13 and the condition / act field of the rule's first command is checked to see if it is a condition or an action. If the command is a conditional element then the procedure described in section 4.1.1 is applied. If it is an action then the procedure described in section 4.1.2 is used.

4.1.1. Regelbedingungselement an Arbeitsspeicher anpas­ sen4.1.1. Adjust rule condition item to memory sen

Die Adresse im Operanden 1 wird in die Arithmetik-Logik-Ein­ heit (ALU) geladen (Schritt 4). Als nächstes wird das Dir/ Unm.-Feld überprüft, um zu sehen, ob der Operand 2 Direkt oder Unmittelbar ist. Wenn er unmittelbar ist, dann wird der Wert des Operanden 2 unmittelbar in die ALU-Einheit einge­ geben; sonst wird der Inhalt der durch den Operanden 2 ange­ zeigten Adresse in ALU-Einheit eingegeben. Die Eingaben in die ALU-Einheit werden durch die ALU-Einheit mit Hilfe des Operator (Operatorfeld) verglichen, um festzustellen, ob die Bedingung richtig oder falsch ist. Wenn die Bedingung rich­ tig ist, wird der nächstfolgende Befehl der Regel überprüft, indem die Schrittfolge wiederholt wird, die im Abschnitt 4.1 wiedergegeben ist. Wenn das Bedingungselement falsch ist, dann wird diese Regel ausgeschieden, und die nächste Regel wird getestet, indem die Schrittfolge des Abschnitts 4.1 wiederholt wird.The address in operand 1 becomes the arithmetic logic on (ALU) is loaded (step 4). Next is the dir / Unm. Field checked to see if the operand 2 is Direct or Immediately. If he is immediate then he will Value of operand 2 inserted directly in the ALU unit give; otherwise the contents of the operand 2 are indicated showed address entered in ALU unit. The entries in The ALU unit is controlled by the ALU unit using the Operator (operator field) compared to determine if the Condition is right or wrong. If the condition is rich tiger, the next command of the rule is checked, by repeating the sequence of steps described in section 4.1 is reproduced. If the condition element is wrong, then this rule is eliminated, and the next rule is tested by following the steps of section 4.1 is repeated.

4.1.2 Aktions-Teil4.1.2 Action part

Das Dir/Unm.-Flag des Aktionselements wird zuerst überprüft. Wenn es Direkt ist, dann wird der Wert, welcher an der Arbeitsspeicher-Stelle für den Operanden 2 gespeichert ist, an die durch den Operanden 1 dargestellte Arbeitsspeicher- Adresse kopiert. Wenn das Dir/Unm-Flag Unmittelbar ist, dann wird der Operand 2 an die durch den Operanden 1 darge­ stellte Arbeitsspeicher-Adresse kopiert. Nach der Durchfüh­ rung der durch den Befehl festgelegten Aktion wird der nächstfolgende Aktionsbefehl der Regel gelesen, und die im Abschnitt 4.1.2 beschriebene Prozedur wird wiederholt. Wenn der Aktionsbefehl der letzte Befehl der Regel ist, dann wird die nächste Regel getestet, indem die Schrittfolge im Abschnitt 4.1 wiederholt wird.The Dir / Unm. Flag of the action item is checked first. If it is direct then the value which is at the Memory location for operand 2 is stored, to the memory memory represented by operand 1 Address copied. If the Dir / Unm flag is Immediate, then operand 2 is presented to the one indicated by operand 1 set memory address copied. After the execution The action specified by the command becomes the Next action command usually read, and the The procedure described in section 4.1.2 is repeated. If the action command is the last command of the rule, then the next rule is tested by following the step sequence in Section 4.1 is repeated.

6. Fakten in Daten6. Facts in data

Nachdem alle Daten verarbeitet worden sind, wird die Steu­ erung an das Ein-/Ausgabe-Interface 14 übertragen. Die numerische Darstellung der Fakten wird in eine Form übersetzt, welche von dem Benutzer ohne weiteres verstan­ den wird.After all the data has been processed, the control is transmitted to the I / O interface 14 . The numerical representation of the facts is translated into a form which is readily understood by the user.

7. Datenausgabe7. Data Output

Das Ein-/Ausgabe-Interface wird dann die Daten an den Per­ sonal-Computer 10 abgeben.The input / output interface will then deliver the data to the personal computer 10 .

Beispiel 2example 2 Beispiel für einen REX-DatenflußExample of a REX data flow

In diesem Beispiel wird dargestellt, wie das REX-Chip das vorstehend im Beispiel 1 beschriebene Problem löst. Die numerierten Überschriften entsprechen wieder den mit Kreisen umgebenen Zahlen in Fig. 3. Bezüglich des vollständigen Tier- Identifizierungs-Regelvorrats wird wieder auf den Anhang A Bezug genommen.This example illustrates how the REX chip solves the problem described in Example 1 above. The numbered headings again correspond to the circle surrounded numbers in Figure 3. For the complete animal identification rule stock, reference is again made to Appendix A.

1. Externe Daten eingeben1. Enter external data

Die Daten oder die gemachte Beobachtung sind bzw. ist folgende:The data or the observation made is or is the following:

Das Tier hat Haare;
das Tier ißt Fleisch;
das Tier hat eine gelbbraune Farbe;
das Tier hat schwarze Steifen.
The animal has hair;
the animal eats meat;
the animal has a yellow-brown color;
the animal has black stripes.

Die vorstehenden Daten werden in das Ein-/Ausgabe-Interface eingegeben und werden in Fakten übersetzt. Die Daten werden dann in die folgenden:The above data is input to the I / O interface are entered and translated into facts. The data will be then in the following:

(Adresse $ 32) Bedeckung = (Wert # 10) Haare;
(Adresse $ 21) Nahrung = (Wert # 3) Fleisch;
(Adresse $ 58) Farbe = (Wert ′55) gelbbraun;
(Adresse $ 35) Streifen = (Wert # 8) schwarz.
(Address $ 32) coverage = (value # 10) hair;
(Address $ 21) Food = (Value # 3) Meat;
(Address $ 58) Color = (value '55) tan;
(Address $ 35) stripe = (value # 8) black.

2. Fakten in Arbeitsspeicher speichern2. Save facts to memory

Die Adresse stellt die Stelle in dem Arbeitsspeicher dar. Beispielsweise ist an der Adresse 32 der Wert von 10 ge­ speichert. The address represents the location in the memory. For example, at the address 32, the value of 10 ge stores.  

3. Befehl Laden3. Load command

Ein Befehl wird aus dem Regelspeicher geladen. Der erste Befehl von Regel 1 ist eine Bedingung und hat die Form:A command is loaded from the rules memory. The first Instruction of rule 1 is a condition and has the form:

(Adresse $32) Bedeckung gleich (Wert #10) Haare.(Address $ 32) Covering the same (value # 10) hair.

4. Operanden Laden4. Operands loading a) Bedingunga) Condition

Der Wert der Adressenstelle 32 wird in die ALU-Einheit in diesem Fall als 10 geladen. Die Vergleichsoperation der ALU-Einheit ist dann;The value of the address location 32 is in the ALU unit loaded as 10 in this case. The comparison operation the ALU unit is then;

(Wert #10) Haare gleich (Wert #10) Haare.(Value # 10) hair equal (value # 10) hair.

Dies Ergebnis ist richtig.This result is correct.

Wenn der Befehl lautet:If the command is:

(Adresse $32) Bedeckung gleich (Wert #11) Federn;(Address $ 32) Covering Equal (Value # 11) Springs;

der Abgabewert der ALU-Einheit ist falsch. Die Steuerung kehrt auf Schritt 3 zurück.the output value of the ALU unit is wrong. The control returns to step 3.

b) Aktionb) Action

Wenn der Befehl eine Aktion ist, gilt:If the command is an action, then:

(Adresse $77) Klasse MOV (Wert #) Säugetier(Address $ 77) Class MOV (value #) Mammal

Die ALU-Einheit erhält den Wert 20 und wird ihn an der Speicherstelle 77 speichern.The ALU unit receives the value 20 and will receive it at the Store memory location 77.

5. Fakten in Arbeitsspeicher speichern5. Save facts to memory

Der Wert 20 wird aus der Regel deduziert und es wird be­ fohlen, ihn an der Adressenstelle 77 zu speichern. Die Steuerung kehrt dann auf Schritt 3 zurück.The value 20 is deduced from the rule and it will be foal to save him at the address 77. The Control then returns to step 3.

6. Fakten in Daten6. Facts in data

In diesem Beispiel wird der Wert an der (Adresse $88) Klasse an das Ein-/Ausgabe-Interface übertragen. Aufgrund dieser Fakten ist der Wert an der Adressenstelle 88 (Wert #100) Tiger.In this example, the value at the ($ 88 address) Transfer class to I / O interface. by virtue of of these facts is the value at the address location 88 (value # 100) Tiger.

7. Datenausgabe7. Data output

Der Wert 100 wird durch das Interface in Tiger übersetzt. The value 100 is translated into Tiger by the interface.  

Regelgestützte StrukturRule-based structure

Der Anwendungs-Regelvorrat 15, welcher in dem Arbeitsspeicher 16 gespeichert ist, wird in zwei Teile aufgeteilt, nämlich Struktur und Regeln. Ein Satz von Bedingungen in jeder Re­ gel wird zusammen mit benachbarten Adressen gruppiert. Ein Satz Aktionen in jeder Regel wird ebenfalls zusammen mit benachbarten Adressen gruppiert. Diese Gruppen können dann in dem Regel-Teil des Arbeitsspeichers in der folgenden Weise gespeichert werden.The application rule list 15, which is stored in the working memory 16 , is divided into two parts, namely structure and rules. A set of conditions in each rule is grouped together with adjacent addresses. A set of actions in each rule is also grouped together with adjacent addresses. These groups can then be stored in the rule part of the working memory in the following way.

Regel # 1Rule # 1 Adresse xxx 1Address xxx 1 Bedingung 1 1condition 1 1 Adresse xxx 2Address xxx 2 Bedingung 1 2condition 1 2 . @, @ . @, @ Adresse xxxm Address xxxm Bedingung 1 m condition 1 m Adresse yyy 1Address yyy 1 Aktion 1 1action 1 1 Adresse yyy 2Address yyy 2 Aktion 1 2action 1 2 . @, @ . @, @ Regel # 2 @Rule # 2 @ Adresse zzz 1Address zzz 1 Bedingung 2 1condition 2 1 . @, @ .,

Da Bedingungen und Aktionen nacheinander an verschiedenen Speicheradressen gespeichert werden, kann die Darstellung von Regeln mit Hilfe der Startadresse jeder Regel struk­ turiert werden. Folglich kann die Produktionsregel ausge­ drückt werden als:Because conditions and actions follow one another at different times Memory addresses can be saved, the representation of rules using the starting address of each rule struk be tured. Consequently, the production rule can be canceled be expressed as:

wennif xxx 1 xxx 1 dannthen yyy 1 yyy 1 wennif zzz 1 zzz 1 dannthen . . ., , ,

Dieses Format zeigt, daß, wenn eine Gruppe von Bedingungen an einer bestimmten Stelle richtig ist, dann die Gruppe von Aktionen an der in dem DANN-Teil spezifizierten Adresse ausgeführt wird. Wenn nun die erste Regel fehlt, springt der Steuermechanismus auf die Startadresse der nächsten Regel. Es besteht keine Notwendigkeit für die End-Indikatoren für jede Regel; folglich vergeudet REX keine Zeit mit Suchen von End-Indikatoren.This format shows that if a group of conditions is correct at a certain point, then the group of actions at the address specified in the THEN part  is performed. If now the first rule is missing, the jumps Control mechanism to the starting address of the next rule. There is no need for the end indicators for every rule; therefore, REX does not waste time searching for End indicators.

Eine regelgestützte Struktur von REX ist in Fig. 4 darge­ stellt. Bei dieser Version wird ein externer Speicher in Form eines 64K×32 ROM verwendet, um den Anwendungs-Regel­ vorrat 15 zu speichern. Um die Ausnutzung des begrenzten Speichers zu maximieren, werden Struktur und Regeln an bei­ den Enden des Regelspeichers 13 gespeichert. Bei Struktur wird von der Adresse OOOOH aus gestartet und erhöht. Bei Re­ geln wird von der Adresse FFFFH aus gestartet und dann ver­ ringert.A rule-based structure of REX is shown in Fig. 4 Darge. In this version, an external memory in the form of a 64K × 32 ROM is used to store the application rule stock 15 . To maximize the utilization of the limited memory, structure and rules are stored at the ends of the rule memory 13 . In the case of structure, it is started and increased from the address OOOOH. With rules, the address FFFFH is started and then reduced.

Die detaillierte Struktur des Regelspeichers ist in Fig. 5a und b dargestellt. Bei Struktur wird der Adressenindex ge­ speichert, welcher die Startadresse jeder Regel in REGELN anzeigt. Die Größe des Regelspeichers beträgt 64K, so daß nur 16-Bit-Worte der unteren Hälfte verwendet werden.The detailed structure of the rule memory is shown in Figs. 5a and b. In structure, the address index is stored which indicates the start address of each rule in RULES. The size of the rule memory is 64K, so only 16-bit lower half words are used.

Jede Bedingung oder Aktion ist als ein 32-Bit-Wort-Befehl dargestellt, welcher von REX ausgeführt wird. Die Bedingung ist grundsätzlich ein logischer Vergleich von zwei gegebenen Operanden. Die Aktionen sind in ähnlicher Weise organisiert. Die Operatoren der Aktionen sind grundsätzlich logische Ope­ ratoren und ein Zuweisungs-Operator. Es gibt zwei Operanden für jede Operation, nämlich einen Operanden 1 und einen Ope­ randen 2. Der Operand 2 kann zwei Formen haben, nämlich di­ rekt oder unmittelbar. Wir in Fig. 4 dargestellt, ist der di­ rekte Operand ein Zeiger zu einer Adresse in dem Arbeitsspei­ cher, welcher durch das Symbol "$" dargestellt ist, und der unmittelbare Operand ist eine durch "#" dargestellte, ganze Zahl. Each condition or action is represented as a 32-bit word instruction executed by REX. The condition is basically a logical comparison of two given operands. The actions are organized in a similar way. The operators of the actions are basically logical operators and an assignment operator. There are two operands for each operation, namely an operand 1 and an operand 2. The operand 2 can have two forms, namely direct or immediate. As shown in Fig. 4, the direct operand is a pointer to an address in the memory represented by the symbol "$", and the immediate operand is an integer represented by "#".

Befehlsvorrat für REX-FolgerungseinrichtungCommand set for REX reasoning device

Wie in Fig. 5(b) dargestellt, sind die Befehle von REX immer 32 Bit lang. Der Operationscode (6 Bits), der Operand 1 (13 Bits) und der Operand 2 (13 Bits) sind in einem 32-Bit-Be­ fehl zusammengesetzt. Jede Regel in einem vorgegebenen An­ wendungs-Regelvorrat hat Bedingungs- und Aktionsteile. Daher hat REX zwei Typen von Befehlssätzen:As shown in Fig. 5 (b), the instructions of REX are always 32 bits long. The operation code (6 bits), operand 1 (13 bits) and operand 2 (13 bits) are composed in a 32-bit instruction. Each rule in a given application rule set has condition and action parts. Therefore, REX has two types of instruction sets:

  • - Bedingungs-Befehle:
    Dieser Befehlstyp wird verwendet, um zu prüfen, ob die Bedingung richtig oder falsch ist. Dies ermöglicht den Benutzern, verschiedene logische Rela­ tionen zwischen zwei Operanden zu spezifizieren, beispiels­ weise "gleich", "größer als", usw. Dieses Ausführungsergeb­ nis eines Bedingungs-Befehls kann nur richtig oder falsch sein, wodurch dann die nächste Ausführungsfolge beeinflußt wird.
    - Condition commands:
    This type of command is used to check if the condition is true or false. This allows the users to specify different logical rela tions between two operands, such as "equal", "greater than", and so on. This instruction result of a conditional instruction can only be true or false, which will then affect the next execution order.
  • - Aktions-Befehle:
    Dieser Befehlstyp wird nur ausge­ führt, wenn alle Bedingungen der aktuellen Regel richtig sind. Das Ergebnis der Durchführung der Aktion wird immer in dem ersten Operanden gespeichert.
    - Action commands:
    This command type is only executed if all the conditions of the current rule are correct. The result of the execution of the action is always stored in the first operand.

Die Befehle und die entsprechenden Operationscodes sind in Tabelle 1 zusammengefaßt.The commands and the corresponding opcodes are in Table 1 summarized.

Tabelle 1 Table 1

REX-Operationscodes REX opcodes

Das Format des Operandencodes ist in Fig. 6 dargestellt. MSB (das höchstwertige Bit), d. h. F1, des Operandencodes wird dazu verwendet, um den Typ des Befehls zu spezifizieren. Wenn F1 0 ist, dann ist es ein Bedingungs-Befehl; sonst ist es ein Aktions-Befehl.The format of the operand code is shown in FIG . MSB (the most significant bit), ie F1, of the operand code is used to specify the type of instruction. If F1 is 0, then it is a conditional command; otherwise it is an action command.

Ein Bedingungs-Befehl hat immer zwei Operanden, während ein Aktions-Befehl in Abhängigkeit von den Operations-Erforder­ nissen immer nur einen oder zwei Operanden haben kann.A conditional instruction always has two operands, while a Action command depending on the operation requirement can only ever have one or two operands.

REX läßt zwei Arten von Adressiermodes zu, ein unmittelbares und ein direktes Adressieren. Der erste Operand benutzt im­ mer den direkten Adressiermode. Der zweite Operand kann ein unmittelbarer Datenwert oder ein direkt-adressierter Daten­ wert sein. Der Adressiermode wird durch Überprüfen des zwei­ ten höchstwertigen Bits (MSB), d. h. F2, des Operationscodes geprüft. Wenn F2 0 ist, ist der zweite Operand ein unmittel­ barer Datenwert. Sonst ist der zweite Operand ein direkt- adressierter Datenwert.REX admits two types of addressing modes, one immediate and direct addressing. The first operand used in mer direct addressing mode. The second operand can be immediate data value or direct-addressed data be worth. The addressing mode is determined by checking the two most significant bits (MSB), d. H. F2, the operation code checked. If F2 is 0, the second operand is an immediate one stable data value. Otherwise, the second operand is a direct addressed data value.

Funktionelle Beschreibung des REX-ChipsFunctional description of the REX chip

In Fig. 7 ist ein detailliertes Blockdiagramm des REX-Chips 12 wiedergegeben. Um Wiederholungen zu vermeiden, sind Ele­ mente, welche vorher bereits in Verbindung mit einer frühe­ ren Zeichnung beschrieben worden sind, mit denselben Bezugs­ zeichen versehen. Referring to Fig. 7, a detailed block diagram of the REX chip 12 is shown . To avoid repetition, ele ments, which have been previously described in connection with an early ren drawing, provided with the same reference characters.

In der nachfolgenden Tabelle 2 sind der Name, der Ein-/Aus­ gabetyp und die Funktion jedes in Fig. 7 dargestellten Ein­ gangs- oder Ausgangswerts aufgelistet.In the following Table 2, the name, the input / output type, and the function of each input or output value shown in Fig. 7 are listed.

Tabelle 2 Table 2

Stift- oder Pin-Beschreibung von REX Pin or pin description of REX

Die Identifizierung jedes Registers und dessen jeweilige Funktion sind folgende:The identification of each register and its respective Function are the following:

  • - WM (Arbeitsspeicher):
    Der Arbeitsspeicher 16 wird ver­ wendet, um die Zwischendaten während des Folgerungsprozesses zu speichern. Bevor REX den Folgerungsprozeß startet, wird der Arbeitsspeicher mit Fakten geladen, die vom Benutzer eingegeben werden. Die Größe des Arbeitsspeichers begrenzt die Menge an Benutzer-Eingaben in REX zu einer bestimmten Zeit. In der dargestellten Ausführungsform ist der Arbeits­ speicher ein 4K×8 statistisches RAM.
    - WM (Memory):
    The random access memory 16 is used to store the intermediate data during the inference process. Before REX starts the reasoning process, the memory is loaded with facts entered by the user. The amount of memory limits the amount of user input in REX at a particular time. In the illustrated embodiment, the working memory is a 4K × 8 random RAM.
  • - WMC (Arbeitsspeicher-Zähler) Register:
    WMC ist ein 13-Bit-Inkrement-Zähler, der parallel geladen werden kann. Während des Ein-/Ausgabe-Modes wird WMC als ein Arbeits­ speicher-Adressen-Zähler für einen Datentransfer verwendet. Wenn der Daten-Transfer vor sich geht, wird WMC automatisch inkrementiert. Der Inhalt von WMC kann dann durch die Zen­ traleinheit (CPU) gesetzt werden, bevor der Daten-Transfer startet.
    - WMC (Memory Counter) registers:
    WMC is a 13-bit increment counter that can be loaded in parallel. During the input / output mode, WMC is used as a memory address counter for data transfer. When the data transfer is in progress, WMC is automatically incremented. The contents of WMC can then be set by the central unit (CPU) before the data transfer starts.
  • - C1-Register:
    C1 ist ein 16-Bit-Inkrement-Zähler, welcher parallel geladen werden kann. Während des Folgerungspro­ zesses zeigt C1 auf eine der Regeladressen in dem Struktur- Teil des Regelspeichers 13. C1 wird um 1 inkrementiert, be­ vor REX zur nächsten Regel übergeht. Für einen JMP-(Spring­ befehl wird C1 mit einem neuen Wert geladen, statt um eins inkrementiert zu werden.
    - C1 register:
    C1 is a 16-bit increment counter that can be loaded in parallel. During the inference process, C1 points to one of the rule addresses in the structure part of the rule memory 13 . C1 is incremented by 1 before going to the next rule before REX. For a JMP (Spring command, C1 is loaded with a new value instead of being incremented by one.
  • - C2-Register:
    C2 ist ein 16-Bit-Dekrement-Zähler, welcher parallel geladen werden kann. C2 zeigt auf den Regel-Teil des Regel-Speichers. Wenn keine falsche Bedingung in einer Regel vorkommt, wird C2 um eins dekrementiert, bevor REX zur nächsten Bedingung oder Aktion übergeht. Wenn eine falsche Bedingung einer Regel festgestellt wird, wird C2 mit der Startadresse der nächsten Regel geladen, statt um 1 dekrementiert zu werden.
    C2 register:
    C2 is a 16-bit decrement counter that can be loaded in parallel. C2 points to the rule part of the rule memory. If no false condition occurs in a rule, C2 is decremented by one before REX transitions to the next condition or action. If an incorrect condition of a rule is detected, C2 is loaded with the start address of the next rule instead of being decremented by one.
  • - OP-Register:
    Ein OP-Register enthält drei Teile: Den Operations-Code, Operand OP1 und Operand OP2, welche einen REX-Befehl enthalten. Der Operations-Code ist ein 6 Bit- Register, welches den Operator eines Befehls speichert. Beide Operandengruppen OP1 und OP2 sind 13-Bit-Datenre­ gister, welche die Adresse von Operand 1 bzw. Operand 2 im Arbeitsspeicher speichern.
    - OP registry:
    An OP register contains three parts: the operation code, operand OP1 and operand OP2, which contain a REX instruction. The operation code is a 6-bit register which stores the operator of a command. Both operand groups OP1 and OP2 are 13-bit data registers which store the address of operand 1 or operand 2 in the main memory.
  • - OP′-Register:
    Das OP′-Register ist ein Vorabruf-Register, das verwendet wird, um den Vorabrufbefehl für das OP-Register zu speichern. REX will nun den Vorabruf-Befehl ausführen, außer wenn ein JMP-(Spring-)Befehl oder eine falsche Bedingung vorkommt.
    - OP'-register:
    The OP 'register is a prefetch register that is used to store the prefetch instruction for the OP register. REX now wants to execute the prefetch command, except when a JMP (Spring) command or condition occurs.
  • - SI (Start/Leerlauf)-Steuer-Flag:
    SI wird verwendet, um einen REX-Operationszustand, nämlich einen Folgerungs- Mode oder einen Ein-/Ausgabe-Mode zu identifizieren. SI wird durch die Zentraleinheit (CPU) gesetzt, nachdem das System alle Fakten an den Arbeitsspeicher gesendet hat. SI hat den Wert eins während des Folgerungs-Modes. SI wird durch REX jedesmal dann rückgesetzt, wenn der Folgerungs­ prozeß stoppt; dann schaltet REX auf Ein-/Ausgabe-Mode.
    - SI (Start / Idle) control flag:
    SI is used to identify a REX operation state, namely, a conclusion mode or an input / output mode. SI is set by the central processing unit (CPU) after the system sends all the facts to the main memory. SI has the value one during the inference mode. SI is reset by REX each time the inference process stops; then REX switches to input / output mode.
  • - IE (Unterbrechungs-Freigabe-)Steuer-Flag:
    IE wird von der Zentraleinheit (CPU) zur selben Zeit wie das SI-Flag gesetzt. REX garantiert die Unterbrechungsfreigabe, bevor REX auf den Folgerungs-Mode geht. IO wird zusammen mit dem IRQ-Flag verwendet, um ein Unterbrechungssignal zu erzeugen. Das IE-Flag wird durch die Zentraleinheit (CPU) am Ende des Unterbrechungs-Service-Programms rückgesetzt.
    - IE (Interrupt Enable) control flag:
    IE is set by the central processing unit (CPU) at the same time as the SI flag. REX guarantees the interrupt release before REX goes into the inference mode. IO is used together with the IRQ flag to generate an interrupt signal. The IE flag is reset by the central processing unit (CPU) at the end of the interrupt service program.
  • - IRQ (Interrupt ReQuest) (Unterbrechungs-Anforderungs-) Zustands-Flag:
    Wenn der Folgerungsprozeß stoppt, wird IRQ durch REX gesetzt, um anzuzeigen, daß REX eine Unterbre­ chung an der Zentraleinheit (CPU) anfordert. IRQ wird und­ verknüpft von IE-Flags, um ein Unterbrechungssignal INT zu erzeugen, nachdem die Unterbrechung bestätigt ist.
    IRQ (Interrupt ReQuest) (Interrupt Request) State Flag:
    When the inference process stops, IRQ is set by REX to indicate that REX is requesting an interrupt at the central processing unit (CPU). IRQ becomes and is linked by IE flags to generate an interrupt signal INT after the interruption is asserted.

Wenn REX im Ein-/Ausgabemode arbeitet, kann die Zentralein­ heit (CPU) REX-Register lesen oder in diese schreiben. Die Signale und beeinflußte Register sind in Tabelle 3 aufge­ listet.When REX operates in the input / output mode, the central one can (CPU) read or write REX registers. The Signals and affected registers are listed in Table 3 lists.

Tabelle 3 Table 3

Definition von Register-Codes Definition of register codes

Betriebs-ModesOperation Modes

REX hat zwei Betriebs-Modes, nämlich den Ein-/Ausgabemode und den Folgerungs-Mode. Ein Steuerflag SI wird als ein Mode-Flag benutzt. REX schaltet auf den anderen Mode, wenn das SI-Flag geändert wird.REX has two modes of operation, namely the input / output mode and the inference mode. A control flag SI is considered a Fashion flag used. REX switches to the other mode, though the SI flag is changed.

Bevor REX auf Folgerungs-Mode geht, hat REX alle Anwender- Eingabefakten von dem Verarbeitungssystem (host) in den Arbeitsspeicher von REX zu laden. REX wird von dem Ein-/ Ausgabe-Mode auf Folgerungs-Mode geschaltet, wenn das SI- Flag durch das Verarbeitungssystem gesetzt ist. Nachdem der Folgerungsprozeß beendet ist, werden die Ergebnisse von dem Arbeitsspeicher an das Verarbeitungssystem übertragen. Before REX goes into inference mode, REX has disabled all user Input files from the processing system (host) in the To load RAM from REX. REX is powered by the on / off Output mode switched to inference mode, if the SI- Flag is set by the processing system. After the Conclusion process is finished, the results of the Memory transferred to the processing system.  

Während der Ein-/Ausgabeoperation kann das Verarbeitungssy­ stem spezielle Register lesen oder in diese schreiben, wenn das REX-Chip ausgewählt ist. Das Steuern der Lese-/Schreib- Operationen und die Auswahl von Registern werden mittels einer Gruppe von Steuerleitungen gesteuert, welche in Ta­ belle 3 aufgelistet sind. Während des Lesens und Schreibens von WMC- und C/S-Register werden nur einige Bits des Sy­ stem-Daten-Bus benutzt. Dies ist in Fig. 8 dargestellt.During the I / O operation, the processing system may read or write special registers when the REX chip is selected. The control of the read / write operations and the selection of registers are controlled by means of a group of control lines, which are listed in Table 3. During reading and writing of WMC and C / S registers, only a few bits of the system data bus are used. This is shown in FIG. 8.

Sobald der Arbeitsspeicher mit Benutzer-Eingabefakten ge­ laden ist, startet REX den Folgerungsprozeß von der ersten Regel in dem externen Speicher aus. Der Folgerungsfluß von REX ist in Fig. 9 dargestellt. Es gibt drei verschiedene Maschinenzyklen für REX in dem Folgerungs-Mode.Once the memory is loaded with user input data, REX starts the inference process from the first rule in the external memory. The inference flow of REX is shown in FIG . There are three different machine cycles for REX in the inference mode.

  • - T1-Zyklus:
    T1 ist ein Regel-Abruf-Zyklus. Der T1-Zyklus wird nur ganz zu Anfang des Folgerungsprozesses oder wenn ein JMP-(Spring-)Befehl vorkommt, ausgeführt. Bei dem T1- Zyklus wird die Startadresse einer Regel im externen Spei­ cher in dem C1-Register abgerufen. C1 ist ein Regel-Zähler, welcher auf die Startadresse einer aktuellen Folgerungsre­ gel gerichtet ist.
    T1 cycle:
    T1 is a rule polling cycle. The T1 cycle is executed only at the very beginning of the inference process or when a JMP (Spring) command occurs. In the T1 cycle, the start address of a rule is fetched in the external memory in the C1 register. C1 is a rule counter directed to the start address of a current inference rule.
  • - T2-Zyklus:
    T2 ist ein Befehl-Abrufzyklus. Der T2-Zyklus ruft den ersten Konditionsbefehl jeder Regel in REX-Register ab. Der T2-Zyklus wird durchgeführt, wenn eine der Bedingun­ gen einer Regel falsch ist und die Ausführung von dem ersten Befehl der nächsten Regel auf aus startet. C2 kann als ein Befehls-Zähler betrachtet werden, welcher auf einen Konditions-Befehl oder auf einen Aktionsbefehl gerichtet ist, welcher laufend in einer Arithmetik-Logik-Einheit (ALU) durchgeführt wird.
    T2 cycle:
    T2 is a command fetch cycle. The T2 cycle retrieves the first condition command of each rule in REX registers. The T2 cycle is performed when one of the conditions of a rule is false and execution starts from the first instruction of the next rule to off. C2 may be considered as a command counter directed to a condition command or to an action command which is currently performed in an arithmetic logic unit (ALU).
  • - T3-Zyklus:
    Der T3-Zyklus ist ein Befehl-Ausführ-Zyklus.
    T3 cycle:
    The T3 cycle is an instruction execution cycle.

Es gibt mehrere Fälle des T3-Zyklus:There are several cases of the T3 cycle:

Konditions-Befehl/Unmittelbare Daten
Konditions-Befehl/Direkte Adressierung
Aktions-Befehl/Unmittelbare Daten
Aktions-Befehl/Direkte Adressierung
JMP (Sprung)
STOP (Regel-Ende)
Condition Command / Immediate Data
Condition Command / Direct Addressing
Action command / Immediate data
Action command / direct addressing
JMP (jump)
STOP (rule end)

Der Befehls-Vorabruf-Zyklus überlappt mit T3-Zyklus. Wenn ein JMP-(Sprung-)Befehl vorkommt, geht die Ausführungsfolge auf den T1-Zyklus. Wenn das Ergebnis eines Konditionsbe­ fehls falsch ist, geht die Ausführungsfolge auf den T2-Zy­ klus. Wenn kein JMP-(Sprung-)Befehl und keine falsche Kondi­ tion vorkommt, benutzt REX die Vorabrufdaten, um dann auf den T3-Zyklus zu gehen.The instruction prefetch cycle overlaps with T3 cycle. If a JMP (jump) command occurs, the execution sequence goes on the T1 cycle. If the result of a Conditionbe is wrong, the execution sequence goes to the T2-Zy klus. If no JMP (jump) command and no wrong Kondi REX uses the prefetch data, and then on to go the T3 cycle.

REX durchläuft denselben Prozeß immer wieder, bis die Fol­ gerungen aller Regeln in dem externen Speicher erledigt sind. Wenn der Folgerungsprozeß gestoppt ist, wird das SI-Flag auf "0" rückgesetzt. Dann schaltet REX von dem Folgerungs-Mode auf den Ein-/Ausgabe-Mode.REX goes through the same process over and over again until the Fol All rules in the external memory are done are. If the inference process is stopped, it will SI flag reset to "0". Then REX shuts off the Inference mode in the input / output mode.

Zeitdiagrammetime charts

Die Zeitdiagramme für REX in dem Ein-/Ausgabe-Lesemode, dem Ein-/Ausgabe-Schreibmode und für den externen Regel­ speicher sind in den Fig. 10 bis 12 dargestellt. Die Wech­ selstrom-Kenndaten von REX im Ein-/Ausgabe-Mode sind in Tabelle 4 aufgelistet.The timing diagrams for REX in the input / output read mode, the input / output write mode and the external rule memory are shown in Figs. 10 to 12. The AC characteristics of REX in input / output mode are listed in Table 4.

Tabelle 4 Table 4

Wechselstrom-Spezifikation AC Specification

Fachausdrücketechnical terms VorläufeHeats Der Wenn-Teil einer Produktionsregel.The if part of a production rule. Anwendungsbereichscope of application Das Gebiet wo der Bereich, welches bzw. welchen das Expertensystem betrifft.The area where the area to which the expert system relates. Anwendungs-RegelvorratApplication usually stock Ein Satz bzw. Vorrat von Regeln, welche von einem gut unterrichteten Ingenieur extrahiert werden, und die sich auf ein ganz bestimmtes Anwendungsgebiet beziehen.A set of rules extracted by a well-trained engineer that relates to a specific field of application. ASICASIC Eine anwendungsspezifische integrierte Schaltung ist kundenspezifische integrierte Schaltung für einen ganz bestimmten AnwendungsfallAn application specific integrated circuit is custom integrated circuit for a very specific application Folgeepisode Der Dann-Teil ist eine Produktionsregel.The then part is a production rule. CPUCPU Zentraleinheit: Eine Betriebseinheit, welche Befehle und Daten verarbeitet.Central unit: An operating unit that processes commands and data. Co-ProzessorCoprocessor Ein speziell ausgelegter Prozessor, welcher mit einem Verarbeitungsrechner zusammenarbeitet, um die Leistung des gesamten Systems zu erhöhen.A dedicated processor that works with a host to increase the performance of the entire system. Steuerlogikcontrol logic Eine kundenspezifische Schaltung, welche alle Operationen steuert, welche für das REX-Chip notwendig sind.A custom circuit that controls all operations necessary for the REX chip. DMADMA Direkt-Speicher-Zugriff: Ein im allgemeinen verwendetes, Kommunikationsverfahren zwischen einem Verarbeitungsrechner und peripheren Einrichtungen. DMA schafft den wirksamsten Weg, um einen Block Daten zu übertragen.Direct Memory Access: A commonly used communication method between a host computer and peripheral devices. DMA creates the most effective way to transfer a block of data. Externe DatenExternal data Ein Block von Binärdaten ist in einem Verarbeitungsrechner-Speicher gespeichert.A block of binary data is stored in a host memory. Externer SpeicherExternal storage Ein Speicher, welcher einen Anwendungsregel-Vorrat speichert.A memory which stores an application rule supply. Faktfact Eine Wahrheit, die aufgrund tatsächlicher Erfahrungen und Beobachtungen bekannt ist. Eine Gruppe von Fakten wird bei Streit-Mutmaßungen (combat conjectures) gesammelt.A truth known from actual experiences and observations. A group of facts is collected in combat conjectures. Folgerungconclusion Interpretieren einer Regel eines Anwendungs-Regelvorrats oder -satzes.Interpret a rule of an application rule set or phrase. FolgerungseinrichtungReasoner Ein problemlösender Steuermechanismus für ein Expertensystem.A problem-solving control mechanism for an expert system. Ein-/Ausgabe-InterfaceI / O Interface Eine Art Ansteuereinrichtung, welche für die Kommunikation zwischen dem Verarbeitungsrechner-System und den peripheren Einrichtungen des Rechners verantwortlich ist.A type of driving device, which is responsible for the communication between the host computer system and the peripheral devices of the computer. Gut unterrichteter IngenieurWell-informed engineer Eine Person, welche Kenntnisse und Fakten eines ganz bestimmten Anwendungsbereichs extrahiert und sie in einen Anwendungs-Regelvorrat umsetzt.A person who extracts the knowledge and facts of a particular application and translates them into an application rule set. PCPC Personal-ComputerPersonal computer PC/DOSPC / DOS Das mit Disk betriebene System eines Personal-Computers, welches die Lese-/Schreiboperationen einer Disk-Ansteuereinheit verwaltet.The disk driven system of a personal computer managing the read / write operations of a disk drive unit. Produktionsregelproduction rule Eine Regel, die in einem Wenn-Dann-Format spezifiziert ist.A rule specified in an if-then format. RAMR.A.M. Random-Speicher: Ein elektronischer Speicher speichert Binärinformationen, welche durch Zugriff gelesen oder geschrieben werden.Random Memory: An electronic memory stores binary information that is read or written by access. ROMROME Festwertspeicher: Ein elektronischer Speicher, welcher die Binärinformation speichert. Ein ROM hat nur einen Lese-Zugriff; es besteht nicht die Möglichkeit, in ihn zu schreiben.Read Only Memory: An electronic memory that stores the binary information. A ROM has only one read access; there is no possibility to write in it. Regel-Basis-StrukturRule-based structure Eine Organisation, welche die Produktionsregeln in einer effizienten Weise speichert, um Speicherplatz und Verarbeitungszeit einzusparen.An organization that stores the production rules in an efficient way to save space and processing time. Arbeitsspeicherrandom access memory Ein RAM, welcher in den REX-Chip gespeichert ist, um die Anfangs-, Zwischen- und Enddaten eines Folgerungsprozesses zu speichern.A RAM which is stored in the REX chip to store the start, intermediate and end data of an inference process. Benutzer-InterfaceUser Interface Ein Software-Programm, welches für die Kommunikation zwischen den Endverbrauchern und dem Verarbeitungsrechnersystem verantwortlich ist.A software program responsible for communication between the end users and the host computer system.

Anhang AAppendix A Beispiel eines Regelsatzes oder -vorrats für eine TieridentifizierungExample of a rule set or supply for animal identification Regel 1Rule 1 WENNIF (Bedeckung = Haare)(Coverage = hair) DANNTHEN (Klasse = Säugetier)(Class = mammal) Regel 2 @Rule 2 @ WENNIF (Produkt = Milch)(Product = milk) DANNTHEN (Klasse = Säugetier)(Class = mammal) Regel 3 @Rule 3 @ WENNIF (Bedeckung = Federn)(Coverage = feathers) DANNTHEN (Klasse = Vogel)(Class = bird) Regel 4 @Rule 4 @ WENNIF (Bewegung = Fliegen) und (Produkt = Eier)(Movement = flying) and (product = eggs) DANNTHEN (Klasse = Vogel)(Class = bird) Regel 5 @Rule 5 @ WENNIF (Nahrung = Fleisch)(Food = meat) DANNTHEN (Fleischfresser = ja).(Carnivore = yes). Regel 6 @Rule 6 @ WENNIF (Zähne = spitz) und (Glied = Clown) und (Augen = nach vorn)(Teeth = pointed) and (limb = clown) and (eyes = forward) DANNTHEN (Fleischfresser = Ja)(Carnivore = Yes) Regel 7 @Rule 7 @ WENNIF (Klasse = Säugetier) und (Glieder = Hufe)(Class = mammal) and (limbs = hooves) DANNTHEN (Typ = Huftier)(Type = ungulate) Regel 8 @Rule 8 @ WENNIF (Klasse = Säugetier) und (Nahrung = wiedergekäutes Futter)(Class = mammal) and (food = recultivated feed) DANNTHEN (Typ = Huftier) und (zehig = geradzehig).(Type = ungulate) and (toe = even-toed). Regel 9 @Rule 9 @ WENNIF (Klasse = Säugetier) und (Typ = Fleischfresser) und (Farbe = Gelb-braun) und (Flecken = dunkel)(Class = mammal) and (type = carnivore) and (color = yellow-brown) and (spots = dark) DANNTHEN (Tier = Gepard).(Animal = cheetah). Regel 10 @Rule 10 @ WENNIF (Klasse = Säugetier) und (Typ = Fleischfresser) und (Farbe = Gelb-braun) und (Streifen = schwarz)(Class = mammal) and (type = carnivore) and (color = yellow-brown) and (strip = black) DANNTHEN (Tier = Tiger)(Animal = tiger) Regel 11 @Rule 11 @ WENNIF (Typ = Huftier) und (Hals = lang) und (Glieder = lang) und (Punkte = dunkel)(Type = hoofed animal) and (neck = long) and (limbs = long) and (points = dark) DANNTHEN (Tier = Giraffe)(Animal = giraffe) Regel 12 @Rule 12 @ WENNIF (Typ = Huftier) und (Streifen = schwarz)(Type = ungulate) and (stripes = black) DANNTHEN (Tier = Zebra).(Animal = zebra). Regel 13 @Rule 13 @ WENNIF (Klasse = Vogel) und (Bewegung << fliegen) und (Hals = lang) und (Glieder = lang) und (Farbe = schwarz-und-weiß)(Class = bird) and (movement << fly) and (neck = long) and (limbs = long) and (color = black-and-white) DANNTHEN (Tier = Strauß).(Animal = ostrich). Regel 14 @Rule 14 @ WENNIF (Klasse = Vogel) und (Bewegung << fliegen) und (Schwimmer = ja) und (Farbe = schwarz-und-weiß)(Class = bird) and (movement << fly) and (float = yes) and (color = black-and-white) DANNTHEN (Tier = Pinguin)(Animal = penguin) Regel 15 @Rule 15 @ WENNIF (Klasse = Vogel) und (Bewegung = fliegt gut)(Class = bird) and (movement = flies well) DANNTHEN (Tier = Albatros).(Animal = albatross).

Claims (32)

1. In Hardware ausgeführtes, regelgestütztes Expertensystem, das hochschnelle Folgerungen bei Anwendungen mit künstlicher Intelligenz, basierend auf einem Regelsatz für einen Anwendungsbereich, durchführen kann, gekennzeichnet durch
  • a) einen Arbeitsspeicher;
  • b) eine Eingabeeinrichtung, um externe Daten zu empfangen, welche den Anwendungsbereich betreffen, und um die externen Daten in dem Arbeitsspeicher als Fakten zu speichern;
  • c) einen Regelspeicher;
  • d) eine Einrichtung, um in dem Regelspeicher einen Regel­ vorrat für den Anwendungsbereich zu speichern, der eine Reihe von Befehlen und Anweisungen enthält, die jeweils eine Bedingung oder eine Aktion festlegen;
  • e) eine Einrichtung, um aus dem Regelspeicher in den Ar­ beitsspeicher nacheinander Befehl des Regelvorrats zu laden, und
  • f) eine Logikeinrichtung, um nacheinander die Befehle in dem Arbeitsspeicher bezüglich der gespeicherten Fakten in dem Arbeitsspeicher auszuführen, um dadurch neue Fakten zu deduzieren.
1. A hardware-based, rule-based expert system that can perform high-speed conclusions in artificial intelligence applications based on an application rule set characterized by
  • a) a working memory;
  • b) input means for receiving external data concerning the application area and for storing the external data in the working memory as facts;
  • c) a rule memory;
  • d) means for storing in the rule store a rule set for the scope containing a series of commands and instructions each defining a condition or action;
  • e) means for sequentially loading the rule store instruction from the rule store into the work memory, and
  • f) a logic means for successively executing the instructions in the working memory with respect to the stored facts in the working memory to thereby deduce new facts.
2. Expertensystem nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Logikeinrichtung eine Einrichtung zum Speichern der deduzierten neuen Daten in dem Arbeits­ speicher und zusätzlich eine Ausgabeeinrichtung aufweist, um die deduzierten neuen Fakten, welche in dem Arbeits­ speicher gespeichert sind, an eine Ausgabeeinrichtung zu übertragen.2. expert system according to claim 1, characterized records that the logic device means to save the deduced new data in the working  memory and additionally has an output device, to the deduced new facts, which in the work memory are stored, to an output device to transfer. 3. Expertensystem nach Anspruch 2, dadurch gekenn­ zeichnet, daß die Ausgabeeinrichtung ein Eingabe- Ausgabe-Interface und einen Interface-Bus aufweist, der kommunikativ das Eingabe-Ausgabe-Interface mit dem Ar­ beitsspeicher verbindet.3. expert system according to claim 2, characterized indicates that the output device has an input Output interface and has an interface bus, the communicatively the input-output interface with the Ar memory connects. 4. Expertensystem nach Anspruch 1, dadurch gekenn­ zeichnet, daß der Arbeitsspeicher einen Halbleiter- Random-Speicher aufweist, und daß der Regelspeicher einen separaten Halbleiter-Random-Speicher aufweist, und daß ein Daten-Bus und ein Adressen-Bus vorgesehen sind, durch wel­ che der Arbeitsspeicher und Regelspeicher zur Durchführung eines Datentransfers miteinander verbunden sind.4. expert system according to claim 1, characterized marked indicates that the main memory is a semiconductor Random memory has, and that the rule memory a having separate semiconductor random memory, and that a Data bus and an address bus are provided by wel the memory and rule memory to carry out a data transfer are interconnected. 5. In Hardware ausgeführtes, regelgestütztes Expertensystem, um hochschnelle Folgerungen bei Anwendungen mit künstlicher Intelligenz, basierend auf einem Regelsatz für einen Anwendungs­ bereich, durchführen zu können, gekennzeichnet durch
  • a) einen Arbeitsspeicher;
  • b) ein Eingabe-Ausgabe-Interface, um kommunikativ den Ar­ beitsspeicher mit einem externen System zu verbinden, wobei die Eingabe-Ausgabe-Einrichtung aufweist, eine Einrichtung, die bei der Initialisierung der Folgerungsoperation betreib­ bar ist, um in dem Arbeitsspeicher Werte zu empfangen und zu speichern, welche bekannte Fakten darstellen, welche den An­ wendungsbereich betreffen;
  • c) einen Regelspeicher;
  • d) eine Einrichtung, um in dem Regelspeicher einen Regel­ satz für den Anwendungsbereich zu speichern, der eine Reihe von Befehlen enthält, die jeweils eine Bedingung oder eine Aktion festlegen;
  • e) eine Einrichtung, die während der Folgerungsoperation betreibbar ist, um nacheinander aus dem Regelspeicher Befehle des Regelsatzes abzurufen und diese in dem Arbeits­ speicher zu speichern;
  • f) eine logische Einrichtung, welche während der Folge­ rungsoperation betreibbar ist, um nacheinander die entspre­ chenden Befehle zu empfangen, die in dem Arbeitsspeicher ge­ speichert sind, und um die Befehle bezüglich der gespeicherten Fakten in dem Arbeitsspeicher auszuführen, um dadurch neue Fakten zu deduzieren, wobei die logische Einrichtung auch eine Einrichtung aufweist, um deduzierte neue Fakten in dem Arbeitsspeicher zu speichern, um sie während der Ausführung der anschließenden Befehle zu benutzen, und
  • g) wobei die Eingabe-Ausgabe-Einrichtung eine Ein­ richtung aufweist, welche bei Beendigung der Folgerungs­ operation betreibbar ist, um die in dem Arbeitsspeicher ge­ speicherten Fakten an eine Ausgabeeinrichtung zu übertragen.
5. A hardware-based, rule-based expert system for making high-speed inference in artificial intelligence applications based on a rule set for an application area, characterized by
  • a) a working memory;
  • b) an input-output interface for communicatively connecting the working memory to an external system, the input-output device having means operable to initialize the inference operation to receive values in the working memory and to store which are known facts pertaining to the field of application;
  • c) a rule memory;
  • d) means for storing in the rule memory a set of rules for the scope of application containing a series of commands each defining a condition or an action;
  • e) means operable during said inference operation for sequentially fetching from said rule memory commands of said rule set and storing them in said working memory;
  • f) a logical device operable during the follow-up operation to successively receive the corresponding instructions stored in the work memory and to execute the instructions on the stored facts in the work memory to thereby deduce new facts wherein the logic means also includes means for storing deduced new facts in the working memory for use during execution of the subsequent instructions, and
  • g) wherein the input-output device comprises a device which is operable at the conclusion of the reasoning operation to transmit the ge stored in the memory ge facts to an output device.
6. Expertensystem nach Anspruch 5, dadurch gekenn­ zeichnet, daß die Einrichtung, um nacheinander Be­ fehle des Regelvorrats abzurufen, eine Regelspeicher- Zähleinrichtung mit einem Adressenregister aufweist, um die Adresse des laufenden Befehls in dem Regelspeicher zu spei­ chern, und eine Einrichtung aufweist, um das Adressenre­ gister mit der Adresse des nächsten Befehls jedesmal dann auf den neuesten Stand zu bringen, wenn ein Befehl aus dem Regelspeicher abgerufen wird.6. expert system according to claim 5, characterized records that the device to successively Be to retrieve the rule queue, a rule memory Counter having an address register to the Address of the current command in the rule memory to spei and having means to address the address gister with the address of the next command every time to bring up to date when a command from the Rule memory is retrieved. 7. Expertensystem nach Anspruch 5, dadurch gekenn­ zeichnet, daß jeder Befehl des Regelvorrats einen Operator, ein Bedingungs-/Aktions-Flag und ein Paar Operan­ den aufweist, und daß die logische Einrichtung einen Befehls- Dekoder zum Testen des Bedingungs-/Aktions-Flags, um fest­ zulegen, ob der Befehl eine Bedingung oder eine Aktion ist, eine Einrichtung, die betreibbar ist, wenn der Befehl eine Bedingung ist, um die Operanden entsprechend der logischen Operation zu vergleichen, welche durch den Operator spezi­ fiziert ist, um dadurch ein logisches Resultat zu erzeugen, und eine Einrichtung aufweist, die betreibbar ist, wenn der Befehl eine Aktion ist, um eine Aktion durchzuführen, wel­ che durch den Operator an den Operanden spezifiziert worden ist.7. expert system according to claim 5, characterized records that each command of the rule supply a Operator, a condition / action flag, and a pair of operands and that the logical device has a command Decoder to test the condition / action flag to firm determine whether the command is a condition or an action, a device that is operable when the command is a Condition is to set the operands according to the logical To compare operation specified by the operator speci  is fied to produce a logical result, and having means operable when the Command is an action to perform an action, wel have been specified by the operator to the operand is. 8. Expertensystem nach Anspruch 7, dadurch gekenn­ zeichnet, daß die logische Einrichtung eine Ein­ richtung hat, die betreibbar ist, wenn das logische Ergebnis des Vergleichs richtig ist, um ein Abrufen des nächsten Befehls derselben Regel zu bewirken.8. expert system according to claim 7, characterized gekenn indicates that the logical device is an On which is operable if the logical result the comparison is correct to retrieve the next one To cause an order to follow the same rule. 9. Expertensystem nach Anspruch 8, dadurch gekenn­ zeichnet, daß die logische Einrichtung eine Ein­ richtung aufweist, die betreibbar ist, wenn das logische Ergebnis des Vergleichs falsch ist, um ein Abrufen des ersten Befehls der nächsten Regel zu bewirken.9. expert system according to claim 8, characterized indicates that the logical device is an On which is operable if the logical Result of the comparison is wrong to retrieve the first command of the next rule. 10. Expertensystem nach Anspruch 7, dadurch gekenn­ zeichnet, daß jeder Befehl auch ein Direkt-/Unmittel­ bar-Flag aufweist, um den Adressierungsmode eines der Operan­ den zu spezifizieren.10. expert system according to claim 7, characterized draws that each command also a direct / immediate bar flag to the addressing mode of one of the operans to specify the. 11. In Hardware ausgeführtes Expertensystem, um hochschnelle Folgerungen bei Anwendungen mit künstlicher Intelligenz durchzuführen, die auf einem Regelvorrat für einen bestimm­ ten Anwendungsbereich basieren, gekennzeichnet durch eine integrierte Schaltung, auf welcher vorgesehen sind:
  • a) ein Arbeitsspeicher;
  • b) ein System-Interface-Bus, um den Arbeitsspeicher mit einem externen System kommunikativ zu verbinden, um Werte, welche bekannte Fakten darstellen, welche den Anwendungs­ bereich betreffen, zu empfangen und um sie in dem Arbeits­ speicher zu speichern;
  • c) einen Regelspeicher-Bus für eine Kommunikation mit einem externen Regelspeicher, in welchem ein Regelsatz oder -vorrat für den Anwendungsbereich gespeichert ist, der eine Reihe von Befehlen enthält, die jeweils eine Bedingung bzw. Kondition oder eine Aktion festlegen;
  • d) eine Regelspeicher-Zähleinrichtung mit einem Adres­ senregister, um die Adresse des laufenden Befehls in den externen Speicher zu speichern;
  • e) eine Einrichtung, um den laufenden Befehl aus dem Regelspeicher über das Regelspeicher-Bus abzurufen, und
  • f) eine logische Einrichtung, um den laufenden Befehl zu empfangen und um den Befehl bezüglich der gespeicherten Da­ ten in dem Arbeitsspeicher auszuführen, um dadurch neue Fak­ ten zu deduzieren.
11. An expert system implemented in hardware to perform high-speed conclusions in artificial intelligence applications based on a rule set for a particular application, characterized by an integrated circuit providing:
  • a) a working memory;
  • b) a system interface bus to communicatively connect the main memory to an external system to receive values representing known facts pertaining to the application area and to store them in the working memory;
  • c) a rule storage bus for communicating with an external rule store in which a rule set or set is stored for the scope containing a series of commands each defining a condition or action;
  • d) a rule memory counter with an address register to store the address of the current instruction in the external memory;
  • e) means for retrieving the current instruction from the rule storage via the rule storage bus, and
  • f) a logical means for receiving the current command and executing the command on the stored data in the main memory to thereby deduce new facts.
12. Expertensystem nach Anspruch 11, dadurch gekenn­ zeichnet, daß die logische Einrichtung auch eine Einrichtung zum Speichern deduzierter, neuer Fakten in dem Arbeitsspeicher aufweist.12. expert system according to claim 11, characterized records that the logical device is also a Device for storing deduced, new facts in the Has memory. 13. In Hardware ausgeführtes, regelgestütztes Expertensystem, gekennzeichnet durch
  • a) einen Arbeitsspeicher;
  • b) eine Einrichtung, um externe Daten zu empfangen, welche bekannte Fakten darstellen, und um Werte, welche die Fakten darstellen, an vorherbestimmten Speicheradressen des Arbeitsspeichers zu speichern;
  • c) einen Speicher zum Speichern eines Regelsatzes;
  • d) einen Regelsatz, der eine Reihe von in dem Speicher ge­ speicherten Regeln aufweist, wobei jede Regel des Regelsatzes eine Reihe von Befehlen enthält, die an aufeinanderfolgenden Speicheradressen des Speichers gespeichert sind;
  • e) zumindest einen der Befehle jeder Regel, welche eine Kondition oder Bedingung darstellen, welcher durch die Fak­ ten eines vorgegebenen Problems genügt ist, und welche ein­ schließen
    • (i) einen Operationscode, welcher eine durchzuführende logische Operation festlegt;
    • (ii) einen ersten Operanden, welcher einen ersten Wert festlegt, welcher durch die logische Operation zu vergleichen ist, und
    • (iii) einen zweiten Operanden, welcher die Adresse in dem Arbeitsspeicher festlegt, der einen zweiten Wert enthält, welcher durch die logische Operation zu vergleichen ist.
13. Hardware-based, rule-based expert system characterized by
  • a) a working memory;
  • b) means for receiving external data representing known facts and for storing values representing the facts at predetermined memory addresses of the working memory;
  • c) a memory for storing a rule set;
  • d) a rule set having a series of rules stored in the memory, each rule of the rule set including a series of instructions stored at successive memory addresses of the memory;
  • e) at least one of the instructions of each rule, which represent a condition or condition which is satisfied by the facts of a given problem, and which include one
    • (i) an operation code specifying a logical operation to be performed;
    • (ii) a first operand specifying a first value to be compared by the logical operation, and
    • (iii) a second operand which sets the address in the working memory containing a second value to be compared by the logical operation.
14. Expertensystem nach Anspruch 13, dadurch gekenn­ zeichnet, daß
  • f) zumindest einer der Befehle jeder Regel eine durch­ zuführende Aktion darstellt, wenn allen durchzuführenden Be­ dingungen oder Konditionen genügt ist, und welcher aufweist
    • (i) einen Operationscode, welcher die durchzuführende Aktion festlegt;
    • (ii) einen ersten Operanden, welcher einen Wert für einen Fakt festlegt, und
    • (iii) einen zweiten Operanden, welcher eine Adresse in dem Arbeitsspeicher festlegt, an welcher der in dem ersten Operanden definierte Wert zu speichern ist.
14. Expert system according to claim 13, characterized in that
  • f) at least one of the commands of each rule represents an action to be performed when all the conditions or conditions to be performed are satisfied and which has
    • (i) an operation code which specifies the action to be performed;
    • (ii) a first operand specifying a value for a fact, and
    • (iii) a second operand which specifies an address in the random access memory to which the value defined in the first operand is to be stored.
15. Anwendungs-Regelsatz für ein in Hardware ausgeführtes, regelgestütztes Expertensystem, welches einen Speicher mit einer Speicheradresse aufweist, dadurch gekenn­ zeichnet, daß der Regelsatz aufweist
eine Reihe in dem Speicher gespeicherter Regeln;
wobei jede Regel des Regelsatzes eine Reihe von Befehlen enthält, die an aufeinanderfolgenden Speicheradressen des Speichers gespeichert sind;
zumindest einen der Befehle jeder Regel, welcher eine Kon­ dition oder Bedingung darstellt, welcher durch die Fakten eines gegebenen Problems zu genügen ist, und zumindest einen der Befehle jeder Regel, welcher eine durchzuführende Aktion darstellt, wenn der Bedingung genügt ist.
15. An application rule set for a hardware-executed, rule-based expert system having a memory with a memory address, characterized in that the rule set comprises
a series of rules stored in the memory;
each rule of the rule set containing a series of instructions stored at successive memory addresses of the memory;
at least one of the commands of each rule representing a condition or condition to be satisfied by the facts of a given problem and at least one of the commands of each rule representing an action to be performed when the condition is satisfied.
16. Regelsatz nach Anspruch 15, dadurch gekenn­ zeichnet, daß die Befehle in der Länge alle dieselbe Anzahl Bits haben. 16. Rule set according to claim 15, characterized marked draws that the instructions in length are all the same Have number of bits.   17. Regelsatz nach Anspruch 15, dadurch gekenn­ zeichnet, daß bestimmte Bits jedes Befehls einen Operanden und andere Bits des Befehls einen Operationscode festlegen.17. Rule set according to claim 15, characterized marked records that certain bits of each instruction one Operands and other bits of the instruction, an operation code establish. 18. Regelsatz nach Anspruch 15, dadurch gekenn­ zeichnet, daß zumindest ein Bit des Befehls ein Flag aufweist, das anzeigt, ob der Befehl eine Bedingung oder eine Aktion ist.18. Rule set according to claim 15, characterized marked records that at least one bit of the instruction is on Flag indicating whether the command is a condition or an action is. 19. Regelsatz nach Anspruch 16, dadurch gekenn­ zeichnet, daß die Befehle 32 Bits lang sind und Bits, welche einen Operationscode festlegen, Bits, welche einen ersten Operanden festlegen, Bits, welche einen zweiten Ope­ randen festlegen, und zumindest ein Bit aufweisen, welches ein Flag festlegt, das anzeigt, ob der Befehl eine Bedingung oder eine Aktion ist.19. Rule set according to claim 16, characterized marked records that the instructions are 32 bits long and bits which define an operation code, bits which one specify first operands, bits defining a second operand specify at least one bit, which sets a flag indicating whether the command is a condition or an action is. 20. Regelsatz nach Anspruch 16, dadurch gekenn­ zeichnet, daß die Befehle jeweils zumindest ein Bit enthalten, welches den Adressiermode eines der Operanden an­ zeigt.20. Rule set according to claim 16, characterized marked records that the instructions each at least one bit containing the addressing mode of one of the operands shows. 21. Regelsatz nach Anspruch 15, dadurch gekenn­ zeichnet, daß die Regeln des Regelsatzes als eine Reihe von Befehlen an aufeinanderfolgenden Adressen ge­ speichert sind, wobei an einem Ende des Speichers begonnen wird, und einen Regelindex aufweisen, welcher an aufeinan­ derfolgenden Speicheradressen gespeichert ist, wobei an dem entgegengesetzten Ende des Speichers begonnen wird, wobei der Regelindex eine Reihe von Speicheradressen auf­ weist, welche die Anfangs-Speicheradresse jeder Regel des Regelsatzes festlegen.21. Rule set according to claim 15, characterized marked draws that the rules of the ruleset as a Series of commands at successive addresses ge stores are started, starting at one end of the memory , and have a rule index which abuts on the following memory addresses is stored, where the opposite end of the memory is started, where the rule index is a series of memory addresses which indicates the initial memory address of each rule of the Set ruleset. 22. Anwendungs-Regelsatz für ein in Hardware ausgeführtes, regelgestütztes Expertensystem, welches einen Speicher mit einer Anzahl Speicheradressen aufweist, dadurch gekenn­ zeichnet, daß der Regelsatz aufweist
eine Reihe von Regeln, die jeweils wiederum eine Reihe von Befehlen enthalten, die eine vorherbestimmte Anzahl Bits lang sind und an aufeinanderfolgenden Speicheradressen des Speichers gespeichert sind;
bestimmte Befehle jeder Regel, welche eine Bedingung oder Kondition darstellen, welcher durch die Fakten eines vor­ gegebenen Problems genügt ist;
noch weitere Befehle jeder Regel, welche eine durchzuführen­ de Aktion darstellen, wenn diese Regel aktiviert wird und einen Regelindex, der ebenfalls in dem Speicher gespeichert ist und eine Reihe von Speicheradressen in dem Speicher ent­ hält, welche der Anfangs-Speicheradresse jeder Regel des Regelsatzes entsprechen.
22. An application rule set for a hardware-executed, rule-based expert system having a memory with a number of memory addresses, characterized in that the rule set comprises
a series of rules, each in turn containing a series of instructions which are a predetermined number of bits long and stored at successive memory addresses of the memory;
certain commands of each rule representing a condition or condition satisfied by the facts of a given problem;
yet other instructions of each rule representing an action to perform when this rule is activated and a rule index also stored in the memory and holding a series of memory addresses in the memory corresponding to the starting memory address of each rule of the rule set ,
23. Regelsatz nach Anspruch 22, dadurch gekenn­ zeichnet, daß die Regeln des Regelsatzes an auf­ einanderfolgenden Speicheradressen gespeichert sind, wobei an einem Ende des Speichers begonnen wird, und daß der Re­ gelindex an aufeinanderfolgenden Speicheradressen gespei­ chert ist, wobei an dem gegenüberliegenden Ende des Spei­ chers begonnen wird.23. Rule set according to claim 22, characterized marked records that the rules of the ruleset are on consecutive memory addresses are stored, wherein is started at one end of the memory, and that the Re gelindex stored at successive memory addresses chert is, being at the opposite end of the Spei chers is started. 24. Regelsatz nach Anspruch 22, dadurch gekenn­ zeichnet, daß jeder der Befehle des Regelsatzes einen Operator, ein Konditions-/Aktions-Flag und ein Paar Operanden aufweist.24. Rule set according to claim 22, characterized marked records that each of the ruleset's commands an operator, a condition / action flag and a pair Has operands. 25. Anwendungs-Regelsatz für ein in Hardware ausgeführtes, regelgestütztes Expertensystem, welches einen Speicher mit einer Anzahl Speicheradressen aufweist, dadurch gekenn­ zeichnet, daß der Regelsatz aufweist
eine Reihe von Regeln, die jeweils aus einer Serie von Be­ fehlen bestehen, die eine vorherbestimmte Anzahl Bits lang sind, wobei die Befehle jeder Regel an aufeinanderfolgenden Speicheradressen des Speichers gespeichert sind und die zu speichernden Regeln des Regelsatzes nacheinander an einem Ende des Speichers beginnen;
wobei die Befehle Bits, die einen Operationscode festlegen, Bits, welche einen ersten Operanden festlegen, Bits, welche einen zweiten Operanden festlegen, zumindest ein Bit, das ein Flag festlegt, welches anzeigt, ob der Befehl eine Kon­ dition oder eine Aktion ist, und zumindest ein Bit aufweisen, welches den Adressiermode eines der Operanden anzeigt, und ein Regelindex, der auch in dem Speicher gespeichert ist und eine Reihe von Speicheradressen in dem Speicher auf­ weist, die der Anfangs-Speicheradresse jeder Regel des Regelsatzes entsprechen, wobei der Regelindex in aufeinander­ folgenden Speicheradressen gespeichert ist, die am anderen Ende des Speichers beginnen, von welchem aus der Regelsatz beginnt.
25. An application rule set for a hardware-executed, rule-based expert system having a memory with a number of memory addresses, characterized in that it comprises the rule set
a set of rules, each consisting of a series of instructions which are a predetermined number of bits long, the instructions of each rule being stored at successive memory addresses of the memory and the rules of the rule set to be stored beginning at one end of the memory;
wherein the instructions bits defining an operation code, bits specifying a first operand, bits specifying a second operand, at least one bit specifying a flag indicating whether the instruction is a condition or an action, and have at least one bit indicating the addressing mode of one of the operands, and a rule index also stored in the memory and having a series of memory addresses in the memory corresponding to the initial memory address of each rule of the rule set, the rule index in memory addresses beginning at the other end of the memory from which the ruleset begins.
26. Verfahren für ein in Hardware ausgeführtes, regelge­ stütztes Expertensystem zum Durchführen hochschneller Fol­ gerungen bei Anwendungen mit künstlicher Intelligenz, die auf einem Regelsatz für einen bestimmten Anwendungsbereich basieren, dadurch gekennzeichnet, daß
  • (a) in einem Arbeitsspeicher bekannte Fakten gespeichert werden, welche den Anwendungsbereich betreffen;
  • (b) in einem Regelspeicher ein Regelsatz für den An­ wendungsbereich gespeichert wird, der eine Reihe von Be­ fehlen aufweist, die jeweils eine Kondition oder eine Aktion festlegen;
  • (c) aus dem Regelspeicher in den Arbeitsspeicher ein Be­ fehl des Regelsatzes geladen wird und
  • (d) der Befehl in dem Arbeitsspeicher bezüglich der ge­ speicherten Fakten in dem Arbeitsspeicher ausgeführt wird.
26. A method for a hardware-based, rule-based expert system for performing high-speed sequences in artificial intelligence applications based on a rule set for a particular application, characterized in that
  • (a) storing in known memory known facts pertaining to the scope;
  • (b) a policy set is stored in a rule store for the scope of application which has a number of items each defining a condition or an action;
  • (c) loading a rule set instruction from the rule memory into the memory and;
  • (d) executing the instruction in the working memory with respect to the stored data in the working memory.
27. Verfahren nach Anspruch 26, dadurch gekenn­ zeichnet, daß die Schritte (c) und (d) für aufeinan­ derfolgende Befehle des Regelsatzes wiederholt werden, um einen neuen Fakt zu deduzieren, und daß der deduzierte neue Fakt in dem Arbeitsspeicher gespeichert wird. 27. The method according to claim 26, characterized gekenn characterized in that steps (c) and (d) are for one another the following commands of the ruleset are repeated to deduce a new fact and that the deduced new one Fact is stored in the memory.   28. Verfahren nach Anspruch 27, dadurch gekenn­ zeichnet, daß der Schritt, einen Regelsatz in dem Regelspeicher zu speichern, das Speichern der Befehle des Regelsatzes an aufeinanderfolgenden Speicheradressen des Regelspeichers einschließt, und daß ein Speicheradressen- Register mit der Adresse des nächsten Befehls jedesmal dann auf den neuesten Stand gebracht wird, wenn ein Befehl aus dem Regelspeicheer geladen wird.28. The method according to claim 27, characterized records that the step is a rule set in the To store rules memory, saving the commands of the Ruleset at consecutive memory addresses of the Rule memory and that a memory address Register with the address of the next command every time is updated when a command is issued the rule memory is loaded. 29. Verfahren nach Anspruch 26, dadurch gekenn­ zeichnet, daß das Speichern eines Regelsatzes in einem Regelspeicher ein Speichern von Befehlen, welche einen Operator, ein Konditions-/Aktions-Flag und ein Paar Operanden enthalten, an aufeinanderfolgenden Speicheradres­ sen des Regelspeichers einschließt, und daß das Durchführen des Befehls ein Prüfen des Konditions-/Aktions-Flags ein­ schließt, um festzulegen, ob der Befehl eine Kondition oder eine Aktion ist.29. The method according to claim 26, characterized gekenn records that saving a rule set in a rule memory storing instructions which an operator, a condition / action flag and a pair Operands contained, at successive Speicheradres sen of the rule memory, and that performing of the command, checking the condition / action flag closes to determine if the command is a condition or an action is. 30. Verfahren nach Anspruch 29, dadurch gekenn­ zeichnet, daß der Schritt, der durchgeführt wird, wenn der Befehl eine Kondition ist, die Operanden entspre­ chend der logischen Operation zu vergleichen, welche durch den Operator spezifiziert ist, um dadurch ein logisches Resul­ tat zu erzeugen.30. The method according to claim 29, characterized gekenn records that the step being performed if the instruction is a condition that corresponds to operands to compare the logical operation, which by the Operator is specified, thereby providing a logical result did produce. 31. Verfahren nach Anspruch 29, dadurch gekenn­ zeichnet, daß der Schritt, der durchgeführt wird, wenn der Befehl eine Aktion ist, die Aktion durchführt, die durch den Operator an den Operanden spezifiziert ist.31. The method according to claim 29, characterized marked records that the step being performed if the command is an action that performs action, which is specified by the operator to the operand. 32. Verfahren für ein in Hardware ausgeführtes, regelge­ stütztes Expertensystem zum Durchführen von hochschnellen Folgerungen bei Anwendungen mit künstlicher Intelligenz, die auf einem Regelsatz für einen bestimmten Anwendungs­ bereich basieren, dadurch gekennzeichnet, daß
  • (a) ein Satz von Kenndaten festgelegt wird, welche dem Anwendungsbereich entsprechen;
  • (b) jedes Charakteristikum des Satzes zugeteilt wird, um Speicheradressen in einem Arbeitsspeicher zu spezifizie­ ren;
  • (c) aus dem Satz für ein ganz bestimmtes Problem, welches von dem Expertensystem zu lösen ist, diese Kenndaten ausgewählt werden, welche Werte haben, die bekannt sind;
  • (d) die Werte für die bekannten Kenndaten in dem Arbeitsspeicher an entsprechenden Speicheradressen gespei­ chert werden, welche diesen Kenndaten zugeordnet sind;
  • (e) in einem Regelspeicher ein Regelsatz für den An­ wendungsbereich gespeichert wird, wobei der Regelsatz eine Reihe von Befehlen enthält;
  • (f) aus dem Regelspeicher in den Arbeitsspeicher auf­ einanderfolgende Befehle des Regelsatzes geladen werden, und die Befehle bezüglich der gespeicherten Kennwerte in dem Arbeitsspeicher ausgeführt werden, um dadurch einen Wert für ein unbekanntes Charakteristikum zu deduzieren und
  • (g) der deduzierte Wert im Arbeitsspeicher an der entsprechenden Speicheradresse für dieses Charakteristikum gespeichert wird.
32. A method for a hardware-based, rule-based expert system for making high-speed in artificial intelligence applications based on a rule set for a particular application, characterized in that:
  • (a) a set of characteristics is defined which correspond to the scope;
  • (b) allocating each characteristic of the set to specify memory addresses in a random access memory;
  • (c) from the set for a particular problem to be solved by the expert system, selecting those characteristics having values that are known;
  • (d) storing the values for the known characteristics in the random access memory at corresponding memory addresses associated with these characteristics;
  • (e) a policy set is stored in a rule store, the rule set containing a set of commands;
  • (F) are loaded from the rule memory in the working memory on successive commands of the rule set, and the instructions are executed with respect to the stored characteristics in the working memory, thereby to deduce a value for an unknown characteristic and
  • (g) storing the deduced value in memory at the corresponding memory address for that characteristic.
DE3907843A 1988-03-11 1989-03-10 Hardware-based, rule-based expert system Expired - Lifetime DE3907843C2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16687388A 1988-03-11 1988-03-11

Publications (2)

Publication Number Publication Date
DE3907843A1 true DE3907843A1 (en) 1989-09-28
DE3907843C2 DE3907843C2 (en) 1995-03-16

Family

ID=22605029

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3907843A Expired - Lifetime DE3907843C2 (en) 1988-03-11 1989-03-10 Hardware-based, rule-based expert system

Country Status (4)

Country Link
JP (1) JPH01283639A (en)
DE (1) DE3907843C2 (en)
GB (1) GB2217068B (en)
NL (1) NL194520C (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3918789A1 (en) * 1988-06-08 1989-12-21 Hitachi Ltd Adaptive knowledge inference method and system
DE4108310A1 (en) * 1990-03-14 1991-09-26 Hitachi Ltd Knowledge base processing and expert system - stores indices representing certainty grade of casual relationship between occurrence and others relevant to it
DE4100500A1 (en) * 1991-01-10 1992-07-16 Bodenseewerk Geraetetech SIGNAL PROCESSING ARRANGEMENT FOR THE CLASSIFICATION OF OBJECTS BASED ON THE SIGNALS OF SENSORS
DE4103128A1 (en) * 1991-01-30 1992-08-13 Krone Ag REAL-TIME PROCESS EXPERT SYSTEM

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920003701B1 (en) * 1988-03-17 1992-05-09 가부시끼가이샤 도시바 Real-time expert system
DE10322686A1 (en) * 2003-05-20 2004-12-23 Siemens Ag Process for linking data sets comprising medical therapy information
US8510142B2 (en) 2011-07-20 2013-08-13 Fluor Technologies Corporation Conflicting expert systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0137414A2 (en) * 1983-09-28 1985-04-17 Hitachi, Ltd. High speed processing system for computer system
US4670848A (en) * 1985-04-10 1987-06-02 Standard Systems Corporation Artificial intelligence system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS619729A (en) * 1984-06-26 1986-01-17 Toshiba Corp Reasoning system
JPH0743722B2 (en) * 1985-08-02 1995-05-15 株式会社東芝 Inductive reasoning device
JPS647232A (en) * 1987-06-30 1989-01-11 Toshiba Corp Inference processor
GB2208020A (en) * 1987-06-30 1989-02-15 Toshiba Kk Inference processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0137414A2 (en) * 1983-09-28 1985-04-17 Hitachi, Ltd. High speed processing system for computer system
US4670848A (en) * 1985-04-10 1987-06-02 Standard Systems Corporation Artificial intelligence system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DE-Z.: Micro extra 2/88, S. 11-15 *
HARMON, Paul, und KING, David: Expertensysteme in der Praxis, - München, Wien: Oldenbourg, 1986, S. 61-65 und S. 131/132 *
SCHACHTER-RADIG, Mina-Jaqueline: Entwicklungs- und Ablaufumgebungen für die Künstliche Intelligenz-Arbeitsplatzrechner für die Wissensverarbeitung. In: Informationstechnik 5/1987, S. 334-349 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3918789A1 (en) * 1988-06-08 1989-12-21 Hitachi Ltd Adaptive knowledge inference method and system
DE4108310A1 (en) * 1990-03-14 1991-09-26 Hitachi Ltd Knowledge base processing and expert system - stores indices representing certainty grade of casual relationship between occurrence and others relevant to it
US5493729A (en) * 1990-03-14 1996-02-20 Hitachi, Ltd. Knowledge data base processing system and expert system
DE4108310C2 (en) * 1990-03-14 1998-10-22 Hitachi Ltd Processing system for a knowledge base in an expert system
DE4100500A1 (en) * 1991-01-10 1992-07-16 Bodenseewerk Geraetetech SIGNAL PROCESSING ARRANGEMENT FOR THE CLASSIFICATION OF OBJECTS BASED ON THE SIGNALS OF SENSORS
US5247584A (en) * 1991-01-10 1993-09-21 Bodenseewerk Geratetechnik Gmbh Signal processing unit for classifying objects on the basis of signals from sensors
DE4103128A1 (en) * 1991-01-30 1992-08-13 Krone Ag REAL-TIME PROCESS EXPERT SYSTEM

Also Published As

Publication number Publication date
DE3907843C2 (en) 1995-03-16
NL194520C (en) 2002-06-04
GB2217068A (en) 1989-10-18
NL194520B (en) 2002-02-01
NL8900588A (en) 1989-10-02
GB8905488D0 (en) 1989-04-19
GB2217068B (en) 1992-10-21
JPH01283639A (en) 1989-11-15

Similar Documents

Publication Publication Date Title
DE4302495C2 (en) Apparatus and method for determining the length of an instruction in a sequential instruction stream
DE2230102C2 (en) Micro-programmed processor with bit-parallel data transmission
DE3914265C2 (en)
DE3116100C2 (en) Data processing unit
DE4010384C2 (en) Burst data transmission method
DE2355993A1 (en) DATA PROCESSING UNIT INCLUDING MICROPROGRAM CONTROL DEVICE
DE2524229A1 (en) DATA PROCESSING SYSTEM WITH A PYRAMID-SHAPED HIERARCHY OF THE CONTROL FLOW
DE2715073C3 (en) Microprogrammed computer control device
DE2411963B2 (en) DATA PROCESSING SYSTEM
DE19855806A1 (en) Device for execution of sub routines and jump operations in computer
DE2449547A1 (en) COMPUTER AND DATA PROCESSING SYSTEM
DE19729618C2 (en) Microprocessor and multiprocessor system
DE2023354A1 (en) Programmable unit and method of operating a programmable unit
DE2145709B2 (en)
DE2556617C2 (en) Sliding and rotating circuit
DE3907843C2 (en) Hardware-based, rule-based expert system
WO1995010803A1 (en) Processor for variable-length character strings
DE1191145B (en) Electronic number calculator
CH635451A5 (en) ARRANGEMENT FOR SWITCHING BETWEEN PROGRAMS TO BE PROCESSED IN A DATA PROCESSING SYSTEM.
DE10213860A1 (en) Programmable control
DE2817536C2 (en)
DE1774421B1 (en) MORE PROGRAM DATA PROCESSING SYSTEM
DE1449584C3 (en) Arrangement for the transmission of data from a card in a data processing facility or vice versa
DE4039532C2 (en) Data processor
DE19635284C2 (en) One-chip processor with an external test function

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: RICOH CO., LTD., TOKIO/TOKYO, JP