NL8900588A - Inrichting en werkwijze van een vlsi-schakelingstechnisch geimplementeerd, op voorschriften gebaseerd expertsysteem. - Google Patents

Inrichting en werkwijze van een vlsi-schakelingstechnisch geimplementeerd, op voorschriften gebaseerd expertsysteem. Download PDF

Info

Publication number
NL8900588A
NL8900588A NL8900588A NL8900588A NL8900588A NL 8900588 A NL8900588 A NL 8900588A NL 8900588 A NL8900588 A NL 8900588A NL 8900588 A NL8900588 A NL 8900588A NL 8900588 A NL8900588 A NL 8900588A
Authority
NL
Netherlands
Prior art keywords
memory
prescription
instructions
rule
instruction
Prior art date
Application number
NL8900588A
Other languages
English (en)
Other versions
NL194520C (nl
NL194520B (nl
Original Assignee
Ricoh Kk
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 Kk filed Critical Ricoh Kk
Publication of NL8900588A publication Critical patent/NL8900588A/nl
Publication of NL194520B publication Critical patent/NL194520B/nl
Application granted granted Critical
Publication of NL194520C publication Critical patent/NL194520C/nl

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

Description

N.0. 35716
Inrichting en werkwijze van een VLSI-schakelingstechnisch geïmplementeerd, op voorschriften gebaseerd expertsysteem._
Gebied en achtergrond van de uitvinding Deze uitvinding heeft betrekking op een, op voorschriften gebaseerd expertsysteem, en meer in het bijzonder op een schakelingstech-nisch geïmplementeerd op voorschriften gebaseerd expertsysteem, ge-5 schikt voor het met hoge snelheid uitvoeren van deducties in kunstmatige intelligentie-applicaties.
Expertsystemen zijn een klasse van computerprogramma's die kunstmatige intelligentietechnologie omvatten voor het aanpakken van problemen waarvoor normaliter menselijke experts of specialisten nodig zouden 10 zijn. In een op voorschriften gebaseerd expertsysteem wordt de kennis van een expert op een specifiek toepassingsgebied in de vorm van een reeks van voorschriften "produktievoorschriften" gerepresenteerd. Bij het werken met een typisch expertsysteem voedt de gebruiker, via een geschikte gebruikersinterface, het expertsysteem met bepaalde bekende 15 informatie over een specifiek probleem, en past het expertsysteem de produktievoorschriften op deze bekende informatie toe, voor het deduceren van feiten en het oplossen van problemen welke relevant zijn voor het toepassingsgebied. Voor verdere achtergrondinformatie met betrekking tot expertsystemen wordt verwezen naar de volgende artikels: 20 Robert H. Michael sen, et al., “The Technology of Expert Systems", Byte Magazine, april 1985, blz. 308-312; Beverly A. Thompson, et al., "Inside an Expert System", Byte Magazine, april 1985, blz. 315-330; Michael F. Deering, "Architectures for AI", Byte Magazine, april 1985, blz. 193-206.
25 Voor een aantal toepassingsgebieden zijn succesvolle expertsystemen ontwikkeld: voor het maken van medische diagnoses, voor het identificeren van organische mengsels, voor het selecteren van booroliesus-pensies, enz. Bovendien zijn een aantal toepassings-onafhankelijke expertsystemen in programmatuurvorm ontwikkeld, voor het ondersteunen van 30 het opbouwen van op voorschriften gebaseerde expertsystemen voor specifieke toepassingsgebieden. In de bovengenoemde artikelen zijn een aantal commercieel beschikbare expertsysteemgereedschappen beschreven. Deze expertsystemen en expertsysteemgereedschappen zijn typisch in de vorm van computerprogramma's ontworpen, om op een computer voor algeme-35 ne doeleinden of een microcomputer te draaien. Het computerprogramma verschaft een interactieve sessie tussen de gebruiker en het expertsysteem waarin het expertsysteem vragen aan de gebruiker stelt, en voor 8900588 .
·'·» 2 het oplossen van problemen en voor het verschaffen van advies aan de gebruiker zijn expertkennis-informatiebank gebruikt.
Er bestaat een aanzienlijke belangstelling voor het uitbreiden van de toepassing van expertsystemen naar andere praktische toepassingen en 5 in het bijzonder in het ontwikkelen van expertsystemen welke geschikt zijn om in ware-tijdapplicaties te gebruiken. Deze systemen zouden bijvoorbeeld nuttig kunnen zijn als stuursysteem voor verschillende toepassingen, zoals vervaardigingsprocessen, procesbesturing, geleidings-systemen, robotica, etc. Een ernstige beperking bij het ontwikkelen van 10 ingewikkelde, ware-tijd kunstmatige intelligentiesysternen ("artificial intelligence (AI)-systems") vormt echter de rekensnelheid. Om effectief praktisch gebruik van de kunstmatige intelligentietechnologie te kunnen maken dienen de efficiency en rekensnelheid te worden verhoogd.
Er zijn belangrijke inspanningen gedaan om de snelheid van de AI-15 verwerking te verbeteren door de in AI-verwerking gebruikte programma-tuurgereedschappen, zoals de AI-talen, te verbeteren en te stroomlijnen. Er is ook ingezien dat kwaliteitsverbeteringen door op maat gemaakte schakelingen kunnen worden bereikt, in het bijzonder ontworpen voor kunstmatige intelligentieverwerking. Zoals aangegeven in het bo-20 vengenoemde artikel van Deering, omvatte een benadering ten aanzien van schakelingstechnische architecture!e verbeteringen verfijningen in de instructieset van de processor, om een snellere werking van de processor mogelijk te maken. Er is ook aandacht besteed aan het ontwikkelen van paral!elverwerkingsarchitecturen, waarmee het mogelijk zou kunnen 25 zijn om de AI-berekeningen parallel uit te voeren. Het artikel merkt ook op dat op maat gemaakte VLSI-schakelingen zouden kunnen worden toegepast voor het versnellen van specifieke operaties zoals vergelijking, het ophalen van instructies, paral 1 el-processorcommunicatie en signaal-naar-symbool-verwerking.
30 Samenvatting van de uitvinding
Een belangrijke doelstelling van de onderhavige uitvinding is het verbeteren van de snelheid en de efficiency van op voorschrift gebaseerde expertsystemen door het verschaffen van een schakelingstechnisch gefmplementeerde deductiemachine. Meer in het bijzonder verschaft de 35 onderhavige uitvinding een toepassingsgerichte gefntegreerde schakeling welke speciaal voor het met hoge snelheid uitvoeren van deducties voor een op voorschriften gebaseerd expertsysteem is ontworpen.
De inrichting en werkwijze voor een schakelingstechnisch gefm-plementeerd, op voorschriften gebaseerd expertsysteem volgens de onder-40 havige uitvinding wordt in het navolgende met het acronym REX ("Rule- 8900588.
3 •τ based EXpert") aangeduid, en omvat een werkgeheugen waarin, bij het begin van een deductiehandeling voor het toepassingsgebied bekende informatie of feiten zijn opgeslagen. De inrichting omvat verder een voorschriftengeheugen voor het opslaan van een voorschriftenset voor het 5 toepassingsgebied. De voorschriftenset bestaat uit een reeks van instructies welke elk een voorwaarde of een actie bepalen. Er zijn middelen verschaft voor het vanuit het voorschriftengeheugen in het werkgeheugen laden van opeenvolgende instructies van de voorschriftenset en er zijn logische middelen verschaft voor het opeenvolgend uitvoeren van 10 de instructies in het werkgeheugen met betrekking tot de in het werkgeheugen opgeslagen feiten, voor het aldus deduceren van nieuwe feiten.
Tijdens het deductieproces worden, wanneer nieuwe feiten zijn gededuceerd deze in het werkgeheugen opgeslagen, die tijdens het uitvoeren van opeenvolgende instructies van de voorschriftenset voor het afleiden 15 van verdere feiten kunnen worden gebruikt. Na het voltooien van het deductieproces worden de, in het werkgeheugen opgeslagen feiten naar een ui tvoerinrichti ng overgebracht.
Elk van de instructies van de voorschriftenset omvat een operator, een conditie/actie-vlag en een paar operanden. De logische middelen om-20 vatten een instructiedecodeerder voor het testen van de conditie/actie-vlag van elke instructie, om te bepalen of de instructie een conditie of een actie is. Wanneer de instructie een conditie is, worden de operanden vergeleken in overeenstemming met de, door de operator gespecificeerde logische operatie voor het genereren van een logisch resultaat 25 (bijvoorbeeld waar of onwaar). Wanneer de instructie een actie is wordt de, door de operator gespecificeerde actie op de operanden uitgevoerd.
Het werkgeheugen en de logische middelen kunnen geschikt als een gefntegreerde schakeling worden verschaft. Het voorschriftengeheugen kan ofwel extern van de gefntegreerde schakeling via een geschikte 30 externe geheugenbus met het werkgeheugen zijn verbonden, of het voor-schriftengeheugen kan eveneens in de gefntegreerde schakeling zijn opgenomen met geschikte gegevensbusverbindingen met het werkgeheugen.
Omdat de toepassingsvoorschriftenset in een geheugeninrichting is opgeslagen, is de REX-deductiemachine gebieds-onafhankelijk waardoor deze 35 voor verschillende toepassingen kan worden gebruikt, door eenvoudigweg een andere toepassingsvoorschriftenset in het voorschriftengeheugen op te nemen. De structuur van het voorschriftengeheugen en de gegevensstructuur van de toepassingsvoorschriftenset zijn zodanig ontworpen dat zij de efficiency van het deductieproces in grote mate verhogen.
40 Voor het illustreren van de veelzijdigheid en brede algemene toe- 6900588.
4 pasbaarheid van de onderhavige uitvinding, toont de navolgende gede-' tailleerde beschrijving op welke wijze de REX-deductiemachipe als. coprocessor in samenhang met een bestaande computer of microcomputer kan worden gebruikt, voor het verschaffen van een expertsysteem dat ge-5 schikt is voor het uitvoeren van deducties met snelheden welke significant groter zijn dan door een gebruikelijk programmatuur-gefmplemen-teerde deductiemachines zou kunnen worden uitgevoerd. De REX-deductiemachine kan echter ook voor vele andere toepassingen worden gebruikt, zoals een zelfstandig werkend stelsel, indien voorzien van een geschikt 10 inwendig stuurstelsel, een gebruikersinterface en invoer-/uitvoer-in-richtingen.
De REX-deductiemachine is geschikt voor het uitvoeren van ware-tijd kennisverwerking, gebaseerd op de huidige VLSI-technologie. De snelheid waarmee problemen worden opgelost wordt gemeten in logische 15 deducties per seconde ("logical inferences per second") (LIPS) in plaats van drijvende kommaverwerkingen per seconde ("floating point operations per second") (FLOPS). Een LIPS is gelijk aan ongeveer 100 tot 1000 FLOPS op een gebruikelijke computer.
Korte beschrijving van de tekeningen 20 Enkele van de eigenschappen en voordelen van de uitvinding zijn reeds genoemd, andere zullen uit de navolgende gedetailleerde beschrijving duidelijk worden, in samenhang met de bijgaande tekeningen, waarin:
Fig. 1 een perspectivisch aanzicht is dat illustreert op welke 25 wijze de REX-deductiemachine volgens de onderhavige uitvinding als een co-processor in een gebruikelijke personal computer kan worden toegepast;
Fig. 2 is een meer gedetailleerd aanzicht van een co-processor-kaart welke van de REX-deductiemachine gebruik maakt; 30 Fig. 3 is een blokschema dat de gegevensstroom voor de REX-machine toont;
Fig. 4 is een blokschema dat de structuur van de voorschrifteninformatiebank voor de REX-machine illustreert;
Fig. 5 is een schema dat de gegevensstructuur van de, in het voor-35 schriftengeheugen opgeslagen instructies toont;
Fig. 6 is een schema dat het in de REX-chip toegepaste operatieco-deformaat illustreert;
Fig. 7 is een totaal blokschema van de belangrijkste functionele componenten van de REX-chip;
40 Fig. 8 is een schema dat de gegevensbus-bittoewijzing voor I/O
8900588.
5
*sT
lees/schrijf-operaties illustreert;
Ffg. 9 is een stroomschema dat de deductiestroom van de REX-chip toont; en
Fig. 10 t/m 12 zijn tijddiagrammen voor de REX-chip welke respec-5 tievelijk de tijdsturing van de leesmode, schrijfmode en het externe geheugen tonen.
Gedetai11eerde beschri j vi ng
De onderhavige uitvinding wordt in het navolgende meer gedetailleerd beschreven, onder verwijzing naar de bijgaande tekeningen, waarin 10 een illustratieve uitvoeringsvorm van de uitvinding is getoond. De uitvinding kan echter in vele verschillende vormen worden uitgevoerd en mag niet als zijnde beperkt tot de hierna beschreven uitvoeringsvorm worden beschouwd, omdat aanvrager deze uitvoeringsvorm namelijk heeft verschaft opdat de beschrijving diepgaand en volledig is en de omvang 15 van de uitvinding voor deskundigen volledig duidelijk maakt.
Nu in het bijzonder verwijzend naar de tekeningen, fig. 1 illustreert een expertsysteem volgens de onderhavige uitvinding dat ontworpen is voor samenwerking met een microcomputer 10, zoals een IBM AT Personal Computer met een daaraan toegevoegd, op voorschriften geba-20 seerde expertsysteem (REX) co-processorkaart 11. De REX-kaart 11 is opgebouwd uit een REX-chip 12, een extern voorschriftengeheugen 13 en een I/O-interface 14. De REX-kaart is meer gedetailleerd in fig. 2 getoond.
Een applicatie-voorschriftenset voor een specifiek toepassingsgebied, in fig. 2 aangeduid met 15, is in het externe voorschriftengeheugen 13 25 opgeslagen. De REX-chip 12 is bijgevolg gebieds-onafhankelijk en kan voor een groot aantal verschillende toepassingsgebieden worden toegepast.
Verwijzend naar fig. 2, elke component van de REX-co-processor-kaart 11 wordt als volgt verklaard: 30 I/O-interface: De I/O-interface 14 is verantwoordelijk voor de communicatie tussen de personal computer 10 en de REX-co-processorkaart 11. Externe gegevens worden vanaf de personal computer 10 via de I/O-interface 14 naar de REX-kaart 11 overgebracht. In de hierin gefllu-streerde uitvoeringsvorm verschaft een DMA-kanaal een communicatiever-35 binding tussen de REX-kaart 11 en de personal computer 10. Een op de personal computer draaiend computerprogramma wordt voor het verschaffen van een gemakkelijk begrijpbare gebruikersinterface toegepast.
REX-chip: De REX-chip 12 is een schakelingstechnische deductiema-chine en vormt het hart van de REX-co-processorkaart 11. Twee hoofdcom-40 ponenten van de REX-chip zijn het werkgeheugen en de stuur!ogica. Voor- 8900588.
* 6 dat het deductieproces begint, wordt het werkgeheugen met externe gegevens van de I/O-interface geïnitialiseerd. Externe gegevens welke relevant zijn voor van het applicatiegebied bekende feiten worden in speciale geheugenplaatsen van het werkgeheugen opgeslagen. Tijdens het de-5 ductieproces vormt het werkgeheugen een tijdelijke opslag voor tussen-gegevens. Wanneer het deductieproces is voltooid bevat het werkgeheugen de resultaten van het deductieproces, welke daarna via de I/O-interface naar de personal computer worden overgebracht.
Voorschriftengeheugen; De kennis-ingenieur onttrekt een produktie-10 voorschriftenset, een applicatie-voorschriftenset 15 genoemd, aan het applicatiegebied en deze voorschriftenset wordt in het voorschriftengeheugen 13 opgeslagen. Tijdens het deductieproces refereert de REX-chip 12 aan het voorschriftengeheugen 13 ten behoeve van voorschri ft-infor-matie. De structuur van het voorschriftengeheugen is geschikt ontworpen 15 om te voldoen aan de vereisten van de REX-chip en voor het reduceren van geheugenruimte. De datastructuur van de, in het voorschriftengeheugen opgeslagen applicatie-voorschriftenset is ontworpen voor het in grote mate verhogen van de efficiency van het deductieproces. Verdere details rond de structuur van het voorschriftengeheugen en de hierin 20 opgeslagen applicatie-voorschriftenset worden hierna verschaft.
Het voorschriftengeheugen kan een ROM, RAM, EPROM of een andere geschikte geheugeninrichting zijn. Wanneer een RAM voor het voorschriftengeheugen wordt toegepast, wordt een initialisatieprogramma gebruikt om vooraf de applicatie-voorschriftenset 15 in het externe geheugen 13 25 onder te brengen.
Hoewel de hierin geïllustreerde specifieke uitvoeringsvorm demonstreert hoe de REX-chip 12 als een co-processor voor een personal computer kan worden gebruikt, zullen deskundigen herkennen dat het schakelingstechnisch geïmplementeerde, op voorschriften gebaseerde 30 expertsysteem van de onderhavige uitvinding (REX) voor vele andere specifieke toepassingen kan worden gebruikt. Het kan bijvoorbeeld als een zelfstandig werkend systeem worden gebruikt. In een dergelijk geval wordt een stuursysteem verschaft voor het afhandel en van de gebruikersinterface en de I/O-interface en worden extra I/O-inrichtingen zoals 35 een toetsenbord, een grafische weergever, enz. verschaft, om communicatie tussen de REX-kaart en de gebruiker mogelijk te maken.
Deducti emechani sme
Er zijn verschillende soorten deductiewerkwijzen welke voor het oplossen van een probleem in een op voorschrift gebaseerd expertsysteem 40 kunnen worden toegepast. Enkele van de belangrijkste deductiewerkwijzen 0900588.
> 7 zijn voorwaartse ketenvorming, achterwaartse ketenvorming en combina-tieketenvorming. De hierin in het bijzonder gefllustreerde en beschreven deductiemachine maakt gebruik van de voorwaartse ketenvorming-deductiewerkwijze met produktievoorschriften.
5 De voorschriften van het op voorschriften gebaseerde stelsel worden door produktievoorschriften gerepresenteerd. De produktievoorschriften bestaan uit een indien (“if") deel en een als (“then") deel.
Het jf-deel is een lijst van een of meer condities of antecedenten. Het then-deel is een lijst van acties of consequenties. Een produktievoor-10 schrift kan dus als volgt worden gerepresenteerd: if conditie_1, conditie_2, • 15 conditie_n then actie_1, actie_2,
V
* actie_n 20
Wanneer de condities (conditie_1, conditie_2, .. conditie_n) door de feiten van een gegeven probleem zijn vervuld, kunnen wij zeggen dat het voorschrift is getrokken (“triggered"). Het expertsysteem kan vervolgens de gegeven acties uitvoeren. Wanneer de acties zijn uitge-25 voerd zegt men dat de voorschriften zijn afgevuurd ("fired"). Deze speciale acties kunnen andere condities veranderen, welke op hun beurt andere voorschriften kunnen afvuren. De stroom van afgevuurde voorschriften zal voortgaan totdat de problemen zijn opgelost, of totdat er geen andere voorschriften kunnen worden vervuld. Deze werkwijze van het af-30 vuren van voorschriften beweegt zich in voorwaartse richting door de voorschriften, bijgevolg noemt men dit voorwaartse ketenvorming. Voorwaartse ketenvorming wordt ook wel een deduct!estelsel of feiten-gedre-ven genoemd, omdat de feiten de stroom van de afgevuurde voorschriften leiden.
35 Het trekken van de voorschriften betekent niet dat de voorschriften zijn afgevuurd, omdat aan de condities van verscheidene andere voorschriften gelijktijdig kan zijn voldaan, en alle worden getrokken.
Wanneer dit optreedt is het noodzakelijk om een conflictoplossingsstra-tegie toe te passen, om te beslissen welk voorschrift feitelijk is af-40 gevuurd. Een conflictoplossingsstrategie is een proces van het selecte- 89 005 88·.
8 ren van het meest gunstige voorschrift wanneer aan meer dan een voorschrift is voldaan. Voorbeelden van conflictoplossingsstrategieën zijn de volgende: 1. Het voorschrift dat de meest recente gegevens bevat wordt gese-5 lecteerd. Deze strategie wordt in de Engelse taal "Data Recency
Ordering" genoemd.
2. Het voorschrift dat de meest ingewikkelde van de moeilijkste voorwaarden bezit wordt geselecteerd. In de Engelse taal wordt dit ook "Context Limiting Strategy" genoemd.
10 3. Het voorschrift dat als eerste in de lijst is opgenomen wordt geselecteerd. Dit wordt in de Engelse taal "Rule Ordering" genoemd.
Voorbeeld I
Vorbeeld van voorwaartse ketenvorming 15 Dit voorbeeld verschaft een algemene illustratie van de werking van een op voorschriften gebaseerd expertsysteem. Ten behoeve van deze illustratie wordt naar de dier-identificatievoorschriftenset in aanhangsel A verwezen. Deze voorschriftenset probeert, door het geven van zijn fysische eigenschappen, een dier te identificeren. Veronderstel 20 dat de volgende eigenschappen zijn waargenomen: het dier heeft haar, het dier eet vlees, het dier heeft een geelbruine kleur, 25 het dier heeft zwarte strepen.
Deze waarnemingen worden in de volgende feiten vertaald: bedekking = haar, 30 voedsel = vlees, kleur = geelbruin, strepen = zwart.
Gegeven deze feiten wordt VOORSCHRIFT 1 getrokken. Volgens dit 35 voorschrift deduceren wij dat klasse = zoogdier.
Dat het dier een zoogdier is wordt nu door het systeem als een 40 nieuw feit aangenomen. Bijgevolg kan VOORSCHRIFT 2 t/m VOORSCHRIFT 4 &9005S8.
9 niet worden getrokken. De conditie van VOORSCHRIFT 5 is geldig zodat het systeem zal deduceren dat het dier een vleeseter is.
vleeseter = ja.
5
Het systeem heeft tot zoverre twee bruikbare nieuwe feiten gededuceerd. De eerste drie condities van VOORSCHRIFT 9 zijn waar, maar de laatste conditie niet, zodat VOORSCHRIFT 9 faalt. VOORSCHRIFT 10 wordt getrokken en kan worden afgevuurd. Het systeem deduceert bijgevolg dat 10 het dier een tijger is.
dier = tijger.
De deductie stopt hier niet, omdat er meerdere voorschriften zijn.
15 In dit geval kan aan geen van de andere voorschriften worden voldaan. Het systeem identificeert het dier als een tijger.
Het voorbeeld toont een deductiewerkwijze in voorwaartse richting, vanuit de huidige situatie van feiten of observaties naar een conclusie.
20 REX-deducti emachi ne-archi tectuur
De hoofdcomponenten van de REX-deductiemachine zijn meer gedetailleerd in fig. 3 getoond. De REX-chip zelf heeft drie primaire functionele componenten: het werkgeheugen 16, een rekenkundige en logische eenheid (ALU) 17 en stuur!ogica 18. In de hierin getoonde uitvoerings- 25 vorm is het voorschriftengeheugen 13 een afzonderlijke geheugen!nrich-ting welke via een gegevensbus 21 met het werkgeheugen 16 is verbonden. Voor een deskundige zal het daarentegen duidelijk zijn dat het voorschriftengeheugen, indien gewenst, in de REX-chip zelf zou kunnen worden geïntegreerd. De I/O-interface 14 is via een systeeminterfacebus, 30 welke in zijn geheel met 22 is aangeduid, communicatief met het werkgeheugen verbonden. De stuurlogica is schematisch in fig. 3 weergegeven en met het verwijzingscijfer 18 aangeduid. In het algemeen heeft de stuurlogica 18 tot taak de werking van de andere elementen, zoals de ALU 17 en het werkgeheugen 16 te sturen.
35 Gegevensstroom in de REX-deductiemachine
De gegevensstroom van de REX-machine zal het beste duidelijk worden uit fig. 3 en de navolgende beschrijving. De omcirkelde cijfers in fig. 3 corresponderen met de volgende onderwerpen: 1. Invoergegevens 40 De gebruiker voert de feiten via een gebruikers!nterfaceprogram- 8900588.
10 ma op de personal computer 10 aan het systeem toe. De gebruiker presenteert de feiten in een vooraf bepaalde syntax. Bij toepassing van de feitengegevens van voorbeeld I en de voorschriftenset van aanhangsel A, zou de gebruiker bijvoorbeeld het volgende invoeren: 5 bedekking = haar kleur = geelbruin • · .. etc.
10
Het gebruikers!nterfaceprogramma zet elke feitelijke observatie om in waarden die door een paar binaire getallen worden gerepresenteerd. Het eerste deel van het paar is een adres en het tweede deel van het paar is een waarde.
15 adres 1 waarde
In het bovenstaande voorbeeld hebben wij: 20 (adres 032)bedekking = (waarde %10)haar, (sidres 058)kleur - (waarde %55) geel bruin, • · .. etc.
25 waarin "0" en aangeven dat het cijfer waarnaar wordt verwezen respectievelijk een adres of een waarde is. In het bovenstaande geval is bedekking afgebeeld op adres 32 (er is geen ander woord op adres 32 af-gebeeld). Aan elk woord is dus een uniek adresgetal toegewezen. De waarde haar is op adres 32 opgeslagen. Deze getallen worden in stap 2 30 gebruikt.
2. Het opslaan van feiten in het werkgeheugen
In stap 2 worden de feiten in het werkgeheugen opgeslagen.
3. Het plaatsen van voorschriften in het werkgeheugen
Het externe geheugen wordt voor het opslaan van voor het appli- 35 catiegebied relevante voorschriften gebruikt. Elk voorschrift wordt als volgt gerepresenteerd: 8900588.
» 11
IF
conditie 1 en conditie 2 en 5
THEN
actie 1 actie 2 • * · 10
Een conditie-element is: (klasse = zoogdier) 15 Gelijksoortig is een actie-element: (soort = gehoefd)
Elk element, zowel een conditie- als een actiedeel van het voor- 20 schrift, wordt intern als een instructie in het onderstaand getoonde formaat gerepresenteerd:
Operandl | 0perand2 | Operator [ Dir/Imme [ Act/Cond 25 Elke instructie heeft een vooraf bepaalde lengte, bijvoorbeeld 32 bits. Operandl representeert een adres van het werkgeheugen. Afhankelijk van de waarde van het Dir/Imme-veld is 0perand2 ofwel een adres ofwel een waarde in het werkgeheugen. Het Dir/Imme-veld specificeert of de adressenngsmode van 0perand2 Direct of Immediate is. Het Act/Cond- 30 veld specificeert of het element aan het conditie- of het actiedeel van een voorschrift refereert. Het Operator-veld specificeert het type operator dat in het conditiedeel van het voorschrift is gebruikt. Voorbeelden van operatoren zijn: is gelijk aan (=), groter dan (>), kleiner dan (<)·, etc.
35 4-5. Deductiecyclus
De volgende stappen worden tijdens de deductiecyclus uitgevoerd.
4.1. Het bereiken van het externe geheugenelement
Een voorschrift wordt uit het voorschriftengeheugen 13 opge- 40 haald, waarbij het Cond/Act-veld van de eerste instructie wordt onder- 8900588.
* 12 zocht om na te gaan of het een conditie of een actie is. Wanneer de instructie een conditie-element is, wordt de in sectie 4.1.1. beschreven procedure toegepast. Wanneer het een actie is, wordt de in sectie 4.1.2. beschreven procedure toegepast.
5 4.1.1. Het aan het werkgeheugen aanpassen van het voorschrif- tencondi ti e-element
Het adres in Operandl wordt in de ALU geladen (stap 4). Vervolgens wordt het Dir/Imme-veld onderzocht om na te gaan of OperandZ Direct of Immediate is. Wanneer deze Immediate is, wordt de waarde van 10 0perand2 direct aan de ALU toegevoerd, in het andere geval wordt de in-houd van het door 0perand2 aangewezen adres aan de ALU toegevoerd. De invoer van de ALU wordt door de ALU vergeleken onder toepassing van de operator (Operator-veld) om na te gaan of de conditie waar of onwaar is. Wanneer de conditie waar is, wordt de volgende successievelijke in-15 structie van het voorschrift onderzocht door het herhalen van de, in sectie 4.1, aangegeven reeks van stappen. Wanneer het conditie-element onwaar is, wordt dit voorschrift terzijde gelegd en wordt het volgende voorschrift onderzocht door het herhalen van de reeks van stappen in sectie 4.1.
20 4.1.2. Actiedeel
De Dir/Imme-vlag van het actie-element wordt als eerste gecontroleerd. Wanneer deze Direct is, wordt de, in de lokatie 0perand2 van het werkgeheugen opgeslagen waarde naar het door Operandl gerepresenteerde adres van het werkgeheugen gecopieerd. Wanneer de Dir/Imme-vlag 25 Immediate is, wordt 0perand2 naar het door Operandl gerepresenteerde adres van het werkgeheugen gecopieerd. Na het uitvoeren van de, door de instructie aangegeven actie wordt de volgende successievelijke actie-instructie van het voorschrift gelezen en wordt de in sectie 4.1.2. beschreven procedure herhaald. Wanneer de actie-instructie de laatste in-30 structie van het voorschrift is, wordt door het herhalen van de reeks van stappen in sectie 4.1. het volgende voorschrift onderzocht.
6. Feiten naar gegevens
Wanneer alle voorschriften verwerkt zijn wordt de sturing aan de I/O-interface 14 overgedragen. De numerieke representatie van de feiten 35 wordt in een vorm omgezet welke gemakkelijk door de gebruiker kan worden begrepen.
7. Gegevensuitvoer
De I/O-interface zal vervolgens de gegevens naar de personal computer 10 uitvoeren.
8900588, 8 13
Voorbeeld II
Voorbeeld van de REX-gegevensstroom
Dit voorbeeld illustreert de wijze waarop de REX-chip het voorgaand in voorbeeld I beschreven probleem oplost. De genummerde onder-5 werpen corresponderen weer met de omcirkelde cijfers in fig. 3. Zie aanhangsel A voor de volledige dier-identificatievoorschriftenset.
1. Invoer van externe gegevens
De gemaakte gegevens of observaties zijn: 10 het dier heeft haar, het dier eet vlees, het dier heeft een geelbruine kleur, het dier heeft zwarte strepen.
15 De bovenstaande gegevens komen de I/O-interface binnen en worden in feiten vertaald. De gegevens worden in de volgende feiten vertaald: {adres 032) bedekking = (waarde *10) haar, (adres 041) voedsel = (waarde %3) vlees, 20 (adres 058) kleur = (waarde %55) geelbruin, (adres 035) strepen s (waarde $8) zwart.
2. In het werkgeheugen opgeslagen feiten
Het adres representeert de lokatie in het werkgeheugen. Adres!o-25 katie 32 herbergt bijvoorbeeld de waarde 10.
3. Het laden van een instructie
Een instructie wordt uit het voorschriftengeheugen geladen. De eerste instructie van VOORSCHRIFT 1 is een conditie, en heeft de vorm van: 30 (adres 032) bedekking IS GELIJK AAN (“EQUAL") (waarde *10) haar 4. Het laden van operanden a. Conditie 35 De waarde van adres!okatie 32 wordt in de ALU geladen, in dit geval 10. Het vergelijkingsproces van de ALU is: (waarde %10) haar EQUAL (waarde %10) haar 40 Dit resultaat is waar.
9900588.
14
Wanneer de instructie is: (adres 032) bedekking EQUAL (waarde %11) veren,
5 zou de uitvoer van de ALU onwaar zijn. De sturing gaat terug naar STAP
3.
b. Actie
Wanneer de instructie een actie is, zoals: 10 (adres 077) klasse MOV (waarde %20) zoogdier zou de ALU de waarde 20 krijgen en deze op adres!okatie 77 opslaan.
5. Het opslaan van feiten in het werkgeheugen
De waarde 20 is uit het VOORSCHRIFT 1 gededuceerd en dient op 15 adreslokatie 77 te worden opgeslagen. De sturing gaat terug naar STAP
3.
6. Feiten naar gegevens
In dit voorbeeld wordt de waarde op het (adres 088) klasse naar de I/O-interface overgebracht. Uit de feiten volgt dat de waarde op 20 adreslokatie 88 (waarde %100) tijger is.
7. Uitvoer van gegevens
Door de interface wordt de waarde 100 in tijger vertaald.
Structuur van de voorschriften-informatiebank
De applicatievoorschriftenset 15, welke in het werkgeheugen 16 25 is opgeslagen, is in twee delen verdeeld - STRUCT en VOORSCHRIFTEN. In elk voorschrift is een set van condities op aangrenzende adressen gegroepeerd. Eveneens is in elk voorschrift een set van acties op aangrenzende adressen gegroepeerd. Deze groepen kunnen op de volgende wij" ze in het VOORSCHRIFTEN-deel van het werkgeheugen worden opgeslagen: 8900588.
15
Voorschrift %1 adres xxxl condi tie_l_l adres xxx2 condi ti e__l_2 5 .
• · adres xxxm condi tie_l_m adres yyyl actie_l_l adres yyy2 actie_l_2 10 .
• ·
Voorschrift %2 adres zzzl conditie_2_l • · 15
Omdat de condities en acties achtereenvolgens op verschillende ge-heugenadressen zijn opgeslagen kan de representatie van de voorschriften onder toepassing van het startadres van elk voorschrift worden ge-20 structureerd. Het produktievoorschrift kan bijgevolg uitgedrukt worden als: if xxxl then yyyl 25 if zzzl then ....
Dit formaat toont dat, wanneer een groep van condities op een be-30 paald adres WAAR is, de groep van acties op het, in het then-deel gespecificeerde adres dient te worden uitgevoerd. Wanneer vervolgens het eerste voorschrift onwaar is, springt het stuurmechanisme naar het startadres van het volgende voorschrift. Er is geen noodzaak voor eind-indicatoren voor elk voorschrift, zodat bijgevolg de REX geen tijd ver-35 spilt met het zoeken naar eind-indicatoren.
De structuur van de voorschrifteninformatiebank van de REX is in fig. 4 weergegeven. In deze versie is voor het opslaan van de applica-tievoorschriftenset 15 een extern geheugen van 64K X 32 ROM toegepast. Om het gebruik van het beperkte geheugen te maximaliseren zijn STRUCT 40 en VOORSCHRIFTEN respectievelijk aan de beide einden van het voor- 8900588.' 16 schriftengeheugen 13 opgeslagen. STRUCT start vanaf het adres 0000H en hoger. VOORSCHRIFTEN start vanaf het adres FFFFH en lager.
In fig. 5 is de gedetailleerde structuur van het voorschriftengeheugen getoond. STRUCT herbergt de adresindex welke naar het startadres 5 van elk voorschrift in VOORSCHRIFTEN wijst. De afmeting van het voorschriftengeheugen is 64K, zodat alleen het 16-bit onderste halve woord wordt gebruikt.
Elke conditie of actie wordt gerepresenteerd als een instructie van een 32-bit woord, verwerkt door de REX. De conditie is in de grond 10 een logische vergelijking van twee gegeven operanden. De acties zijn op soortgelijke wijze georganiseerd. De operatoren van de acties zijn in de grond logische operatoren en een toewijzingsoperator. Voor elk proces zijn er twee operanden: operandl en operand2. 0perand2 kan twee vormen aannemen: direct of immediate. Zoals getoond in fig. 4 is de di-15 reet operand een wijzer ("pointer") naar een adres in het werkgeheugen, gerepresenteerd door het symbool '0' en is de immediate operand een integer, gerepresenteerd door
Instructieset voor de REX-deductiemachine
Zoals getoond in fig. 5(b) zijn instructies van de REX steeds 20 32 bit lang. De Operatiecode (6 bits), 0P1 (13 bits) en 0P2 (13 bits) zijn tot een 32-bit instructie samengevoegd. Elk voorschrift in een gegeven applicatievoorschriftenset heeft conditie- en actiedelen. De REX heeft bijgevolg twee typen instructieset: - Conditie-instructies: Dit type instructie wordt gebruikt om na 25 te gaan of de conditie Waar of Onwaar is. Dit maakt het voor gebruikers mogelijk om verschillende logische relaties tussen twee operanden te definiëren, zoals "Gelijk aan" ("Equal"), "Groter dan" ("Greater than"), enz. Het bewerkingsresultaat van een Conditie-instructie kan alleen Waar of Onwaar zijn, hetgeen de volgende verwerkingsreeks be-30 invloedt.
- Actie-instructies: Dit type instructie wordt alleen uitgevoerd wanneer alle condities van het momentane voorschrift Waar zijn. Het resultaat van het uitvoeren van de actie wordt altijd in de eerste operand opgeslagen.
35 De instructies en de bijbehorende operatiecodes zijn in tabel A
samengevat.
8900588.
TABEL A - REX-OPERATIECODES
17
Operatiecodes Operatie Beschrijving_ 5 OXOOOO EQ Gelijk aan ("EQual to"); ___Is operandl = operand2 ?_ 0X0001 NE Niet Gelijk aan ("Not Equal to"); ___Is operandl < > operand2 ?_ 0X0010 GT Groter dan ("Greater Than"); 10___Is operandl > operand2 ?_ 0X0011 LT Kleiner dan ("Less Than"); ___Is operandl < operandZ ?_ 0X0100 GE Groter dan of Gelijk aan ("Greater than or Equal to"); 15___Is operandl >= operand2 ?_ 0X0101 LE Kleiner dan of Gelijk aan ("Less than or Equal to"); ___Is operandl <= operand2 ?_ 1X0000 NOT logische ontkenning operandl ("logic 20 NOT operandl");
Elk bit van operandl wordt gecomplementeerd en het resultaat wordt op operandl _____in het werkgeheugen opgeslagen._ 1X0001 AND logische EN ("AND") operandl en operand2; 25 De logische EN-operatie wordt op de cor responderende bits van operandl en ope-rand2 uitgevoerd. Het resultaat wordt op ___operandl in het werkgeheugen opgeslagen.
1X0010 OR logische OF ("OR") operandl en operand2; 30 De logische OF-operatie wordt op de cor responderende bits van operandl en ope-rand2 uitgevoerd. Het resultaat wordt op ___operandl in het werkgeheugen opgeslagen.
1X0011 MOV Verplaats ("MOVe") operand2 naar ope- 35 randl;
De inhoud van operand2 wordt op operandl __ in het werkgeheugen opgeslagen._ 8900588.
18 i TABEL A (vervolg)
Operatiecodes Operatie Beschrijving_ 5 1X0100 SHR Schuif ("SHift") operandl over 1 bit naar Rechts ("Right");
Het minst significante bit wordt verwijderd en op de plaats van het meest significante bit wordt een nul geschoven; 10 het resultaat wordt op operandl in het ___werkgeheugen opgeslagen._ 1X0101 SHL Schuif ("SHift") operandl over 1 bit naar Links ("Left");
Het meest significante bit wordt verwij-15 derd en op de plaats van het minst sig nificante bit wordt een nul geschoven; het resultaat wordt op operandl in het ___werkgeheugen opgeslagen._ XX0110 JMP Spring ("JuMP") naar een nieuw adres van 20 het externe geheugen;
Voor de JMP-instructie worden de minst significante 16 bits van de instructie in het Cl-regïster geladen dat naar het nieuwe voorschrift in het externe geheu- 25__gen wijst. _ XX0111 EOR Einde van het externe geheugen ("End of __ External Memory")._| operandl is een direct-geadresseerd gegeven (WM[0P1]) uit het 30 werkgeheugen.
operand2 kan een direct-geadresseerd gegeven (WM[0P2]) of een immediate gegeven (0P2) zijn.
Het formaat van de opcode is in fig. 6 weergegeven. Het MSB (Meest 35 Significant Bit), dat is Fl, van de opcode wordt voor het specificeren van het type instructie gebruikt. Wanneer Fl 0 is, betreft het een Conditie-instructie, anders is het een Actie-instructie.
Een Conditie-instructie heeft steeds twee operanden. Een Actie-in-structie daarentegen kan slechts een of twee operanden hebben, afhanke-40 lijk van de vereiste operatie.
8900588.
19
De REX staat twee typen adressering toe: immediate en directe adressering. De eerste operand maakt steeds gebruik van directe adressering. De tweede operand kan een immediate gegeven of een direct-ge-adresseerd gegeven zijn. De adressenngswijze wordt bepaald door het 5 onderzoeken van het tweede MSB, dat is F2, van de operatiecode. Wanneer F2 gelijk aan 0 is, is de tweede operand een immediate gegeven. Anders is de tweede operand een direct-geadresseerd gegeven.
Functionele beschrijving van de REX-chip Fig. 7 verschaft een gedetailleerd blokschema van de REX-chip 10 12. Om herhaalde beschrijving te vermijden, zijn elementen welke in het voorgaande in samenhang met eerdere figuren zijn beschreven, met dezelfde verwijzingscijfers aangeduid.
Tabel B geeft de naam, I/O-type en de functie van elke, in fig. 7 geïllustreerde ingang en uitgang.
8900588.
TABEL B - PEN-OMSCHRIJVING VAN DE REX
20
Symbool Type Naam en functie_ 5 CLK I Klok Ingang ("Clock Input"): CLK stuurt de in terne verwerking van de REX-chip. De maximale __klokfrequentie bedraagt 8 MHz._ CS I Chip Selectie ("Chip Select"): CS is een ac- tief-laag ingang welke wordt gebruikt voor het 10 selecteren van de REX-chip als een I/O-inrich- ting wanneer de CPU de interne registers (WM, ________WMC, C/S) van de REX-chip wil lezen/schrijven.
EMCS 0 Externe Geheugen Chip Selectie ("External
Memory Chip Select"): EMCS is laag actief. Wan-15 neer REX in de deductiemode is, wordt EMCS voor het selecteren van het externe geheugen ten behoeve van informatie omtrent het voorschrift ___geselecteerd. -_ IOR I I/O-Lezen ("I/O Read"): IOR is laag actief.
20 Wanneer zowel CS en IOR actief zijn, heeft de CPU een leestoegang tot de interne registers ___(WM, WMC, C/S) van de REX-chip._ IOW I I/O-Schrijven ("I/O Write"): ÏÜW is laag actief,
Wanneer zowel CS en ÏÜW actief zijn, heeft de 25 CPU een schrijftoegang tot de interne registers ___(WM, WMC, C/S) van de REX._
READY 0 Gereed ("Ready"): READY is laag actief. READY
is een synchronisatiesignaal voor externe gegevensoverdracht. READY gaat laag wanneer REX ge- 30___reed is voor nieuwe gegevens._ RESET I Terugstellen ("Reset"): RESET is hoog actief.
RESET wordt gebruikt om de toestand van de REX-chip te initialiseren. Alle registers worden ___teruggesteld nadat RESET is geactiveerd._
35 INT 0 Interruptie Aanvraag ("INTerrupt Request"): INT
is hoog actief. De REX-chip gebruikt INT voor het onderbreken van de CPU wanneer de REX-chip _ het deductieproces heeft beëindigd._ 8900588.
* TABEL B (vervolg) 21
Symbool__Type__Naam en functie 5 A0-A1 I Adres ("Address"): Door de CPU worden de twee minst significante adreslijnen voor het sturen van de gegevensoverdracht naar de interne re- ___gisters (WM, WMC, C/S) van de REX-chip gebruikt.
DO-D15 I/O Gegegevensbus ("Data Bus"): De gegevensbuslij- 10 nen zijn bidirectionele drie-toestanden-signa- len welke met de systeemgegevensbus zijn verbonden. De Gegevensbus bevat uitgangssignalen wanneer IOR actief is. De Gegevensbus bevat in- _____gangssignalen wanneer IOW actief is._ 15 MA0-MA15 0 Externe Geheugen-adresbus ("External Memory
Address Bus"): Wanneer de REX-chip in de deduc-tiemode is, wordt de externe geheugen-adresbus voor het adresseren van een voorschrift in het _____externe geheugen gebruikt.__ 20 MD0-MD31 I Externe Geheugen-gegevensbus ("External Memory
Data Bus"): Wanneer de REX-chip in de deduct!e-mode is, zendt de externe geheugen-gegevensbus de informatie met betrekking tot elk voor- ___schrift naar de REX-chip._ 25 WM: Werkgeheugen ("Working Memory") WMC: Werkgeheugen-tellerregister ("Working Memory Counter register") C/S: Stuur/Status-vlag registers ("Control/Status flag 30 registers")
De identificatie van elk register en de werking van elk is als volgt: - WM (Werkgeheugen): Het werkgeheugen 16 wordt tijdens het deduc-35 tieproces voor het opslaan van de tussengegevens gebruikt. Voordat REX het deductieproces start, wordt het werkgeheugen geladen met door de gebruiker ingevoerde feiten. De afmeting van het werkgeheugen begrenst steeds de hoeveelheid invoer van de gebruiker naar de REX. In de geil! ustreerde uitvoeringsvorm is het werkgeheugen een 4K X 8 statisch 40 RAM.
8900588.
22 · WMC (Werkgeheugenteller) register: WMC is een 13-bit opteller met de mogelijkheid voor parallel laden. Tijdens de I/O-mode wordt WMC als werkgeheugenadresteller voor gegevensoverdracht gebruikt. Wanneer de gegevensoverdracht aan de gang is, zal WMC automatisch worden ver-5 hoogd. De inhoud van WMC kan voorafgaand aan de start van de gegevensoverdracht door de CPU worden ingesteld.
- Cl-register: Cl is een 16-bit opteller met de mogelijkheid van parallel laden. Tijdens het deductieproces wijst Cl naar een van de adressen van de voorschriften in het STRUCT-deel van het voorschriften- 10 geheugen 13. Cl neemt met één toe voordat REX naar het volgende voorschrift gaat. Voor een JMP-instructie wordt Cl met een nieuwe waarde geladen in plaats van het met een verhogen hiervan.
- C2-register: C2 is een 16-bit afteller met de mogelijkheid van parallel laden. C2 wijst naar het VOORSCHRIFTEN-deel van het voor- 15 schriftengeheugen. Wanneer geen onware conditie in een voorschrift optreedt, wordt C2 met één verlaagd voordat REX naar de volgende conditie of actie gaat. Wanneer met betrekking tot een voorschrift een onware conditie wordt gedetecteerd, wordt C2 met het startadres van het volgende voorschrift geladen, in plaats van het met één verlagen daarvan.
20 - OP-register: Het OP-register omvat drie delen: Operatiecode, 0P1 en 0P2, welke een REX-instructie omvatten. Operactiecode is een 6-bit register dat de operator van een instructie opslaat. Zowel 0P1 als 0P2 zijn 13-bit gegevensregisters welke respectievelijk het adres in het werkgeheugen van operandl en operand2 opslaan.
25 - OP'-register: Het OP'-register is een voor-ophaalregister ("prefetch register") dat voor het opslaan van de voor-ophaalinstructie ("prefetch instruction") voor het OP-register wordt gebruikt. REX zal de voor-ophaalinstructie uitvoeren tenzij er een JMP-instructie of een onware conditie optreedt.
30 - SI (Start/Inactief) ("Start/Idle") stuurvlag: SI wordt gebruikt om de REX-operatiestatus te identificeren: Deductiemode en I/O-mode. SI wordt door de CPU ingesteld nadat het systeem alle feiten naar het werkgeheugen heeft verzonden. SI heeft tijdens de deductiemode de waarde 1. SI wordt elke keer dat het deductieproces stopt door de REX te- 35 ruggesteld, waarna de REX naar de I/O-mode schakelt.
- IE (Interrupt-vrijgave) ("Interrupt Enable") stuurvlag: IE wordt tegelijkertijd met de Sl-vlag door de CPU ingesteld. REX kent de interrupt-vrijgave toe wanneer de REX naar de deductiemode overgaat. IE wordt met de IRQ-vlag voor het afgeven van een interruptiesignaal toe- 40 gepast. De IE-vlag wordt aan het einde van de interruptieserviceroutine 89 0 05 88.
23 door de CPU teruggesteld.
- IRQ (Interrupt-aanvraag) ("Interrupt ReQuest") statusvlag: Wanneer het deductieproces stopt wordt IRQ door REX ingesteld om aan te geven dat de REX een interrupt aan de CPU vraagt. Voor het afgeven van 5 een interruptiesignaal INT is IRQ en-verknoopt met de IE-vlag. IRQ wordt, nadat de interruptie is herkend, door de CPU teruggesteld.
Wanneer de REX in de I/O-mode is, kan de CPU registers van de REX lezen of schrijven. De signalen en de beïnvloede registers zijn in tabel C aangegeven.
10
TABEL C - DEFINITIE VAN DE REGISTERCODES
Registeroperatie__CS ÏÖW IOR Al AO
Lees status-registers 01 0 00 15 ("Read Status Registers")_______
Schrijf stuurregisters 00100 ("Write Control Registers")______
Lees werkgeheugenteil er 0 10 0 1 ("Read Working Memory Counter")______ 20 Schrijf werkgeheugenteil er 00 1 01 ("Write Working Memory Counter")_____
Lees werkgeheugen 0 1010 (“Read Working Memory")___________
Schrijf werkgeheugen 0 01 1 0 25 ("Write Working Memory")______
REX-chip is niet geselecteerd IX X XX
|("REX Chip is Not Selected")______
Bewerkingsmodi 30 REX heeft twee bewerkingsmodi: - I/O-mode - deductiemode.
De stuurvlag SI wordt als modevlag gebruikt. REX schakelt naar de andere mode wanneer de SI-vlag wordt veranderd.
35 Voordat REX in de deduct!emode gaat dient de REX alle door de gebruiker ingevoerde feiten vanuit het hoofdsysteem in het werkgeheugen van de REX te laden. Wanneer de SI-vlag wordt ingesteld, schakelt de REX van de I/O-mode naar de deduct!emode. Nadat het deductieproces is beëindigd, worden de resultaten vanuit het werkgeheugen naar het 40 hoofdsysteem overgebracht.
8900588.
24
Tijdens de I/O-bewerking kan het hoofdsysteem specifieke registers lezen of schrijven, indien de REX-chip is geselecteerd. De sturing van lees/schrijf-bewerkingen en het selecteren van registers worden door een set stuurlijnen gestuurd, welke in tabel C zijn aangegeven. Tijdens 5 het lezen en het schrijven van WMC- en C/S-registers worden slechts enkele bits van de systeemgegevensbus gebruikt. Dit is in fig. 8 geïllustreerd.
Zodra het werkgeheugen met door de gebruiker ingevoerde feiten is geladen, zal de REX het deductieproces vanaf het eerste voorschrift in 10 het externe geheugen starten. De deductiestroom van de REX is in fig. 9 getoond.
Er zijn drie verschillende machinecycli voor de REX in de deduc-tiemode.
- Tl-cyclus: Tl is een voorschrift-ophaalcyclus. De Tl-cyclus 15 wordt alleen tijdens het eerste begin van het deductieproces of wanneer een JMP-instructie optreedt uitgevoerd. In de Tl-cyclu$ wordt van een voorschrift in het externe geheugen het startadres in het Cl-register geplaatst. Cl is in feite een voorschriftenteller, welke naar het startadres van het momentaan gededuceerde voorschrift wijst.
20 - T2-cyclus: T2 is een instructie-ophaal cyclus. In de T2-cyclus wordt de eerste conditie-instructie van elk voorschrift in de REX-re-gisters geplaatst. De T2-cyclus wordt uitgevoerd wanneer een van de condities van een voorschrift onwaar is, waarbij de verwerking vanaf de eerste instructie van het volgende voorschrift start. C2 kan worden op- 25 gevat als een instructieteller die naar een conditie-instructie of een actie-instructie verwijst welke momentaan in uitvoering is in de ALU.
- T3-cyclus: De T3-cyclus is een instruct!everwerkingscyclus. Er zijn verschillende gevallen voor de T3-cyclus: 30 Conditie-instructie/Immediate gegevens
Conditie-instructie/Direete adressering
Actie-instructie/Immediate gegevens
Actie-instructie/Directe adressering
JMP
35 STOP (einde van het voorschrift)
De instructie-voorophaalcyclus is overlappend met de T3-cyclus. Wanneer een JMP-instructie optreedt zal de bewerkingsreeks naar de Tl-cyclus gaan. Wanneer het resultaat van een Conditie-instructie onwaar 40 is, zal de bewerkingsreeks naar de T2-cyclus gaan. Wanneer geen JMP-in- 3900588.
25 struct!e en geen onware conditie optreedt, zal de REX de voorophaal gegevens gebruiken om naar de T3-cyclus te gaan.
REX zal steeds hetzelfde proces doorlopen, totdat alle voorschriften in het externe geheugen zijn gededuceerd. Wanneer het deductiepro-5 ces stopt wordt de $I-vlag naar "O" teruggezet. De REX schakelt dan van de deductiemode naar de I/O-mode.
Tijddiagram
De tijddiagrammen voor de REX in de I/O-leesmode, de 1/0-schrijfmode en voor het externe voorschriftengeheugen zijn respect!eve-10 lijk in de fig. 10-12 getoond. De AC (wisselstroom) eigenschappen van de REX in de I/O-mode zijn in tabel D aangegeven.
6900588.
TABEL D - AC-SPECIFICATIE
26
Symbool Parameter Min Type Max Een- 5______heid TAS I/O-adresinsteltijd 20 — — ns __("I/O Address Setup Time")__;__;___ TAH I/O-adresvasthoudtijd 10 — — ns __("I/O Address Hold Time")_____ 10 TIW I/O-lees/schrijf-signaalbreedte 60 — — ns __("I/O Read/Write Signal Width")____ TOD Gegevensuitvoervertragingstijd — — 40 ns __("Data Output Delay Time")_____ TOH Gegevensuitvoervasthoudtijd 10 — — ns 15__("Data Output Hold Time")_____ TDS Gegevensinsteltijd 20 — — ns __("Data Setup Time")_____ TDH Gegevensvasthoudtijd 10 — — ns __("Data Hold Time")_____ 20 TRS Gereed-signaal instel tijd 0 — — ns __("READY Signal Setup Time")_____ TRD Gereed-signaal vertragingstijd 0 — CLK*1 ns __("READY Signal Delay Time")_____ TRW Gereed-signaal breedte CLK-10 CLK*1 CLK+10 ns 25__("READY Signal Width")______ TMAW Extern geheugen-adressignaal- breedte ("External Memory CLK*2-20 CLK*2 CLK*2+20 ns __Address Signal Width")_______ TMAC Extern geheugen-adrestoe- 30 gangstijd ("External Memory — — 170 ns __Address Access Time")_____ TMOH Extern geheugen-gegevensuit- voervasthoudtijd ("External 0 — — ns __Memory Data Output Hold Time")_____ 35 TCSS Extern geheugen-chipselectie- insteltijd ("External Memory 0 — — ns __Chip Select Setup Time")______ TCSH Extern geheugen-chipselectie- vasthoudtijd ("External Memory 0 — — ns 40__Chip Select Hold Time")_____ TMOZ Extern geheugen-uitvoerwisse- ling ("External Memory Output — 20 — ns __Floating")_____ 8900586.
VERKLARENDE WOORDENLIJST
27
Antecedent Het 1f (indien) deel van een produktie- voorschri ft.
5 Applicatiegebied Het onderwerp of veld dat voor het ex pertsysteem relevant is.
Applicatievoorschriftenset Een set van voorschriften, welke door een kennis-ingenieur zijn geselecteerd, en voor een specifiek toepassingsgebied 10 relevant zijn.
ASIC Applicatie-specifieke geïntegreerde schakeling ("Application Specific Integrated Circuit") is een op maat gemaakte geïntegreerde schakeling voor 15 een specifieke applicatie.
Consequentie Het then (dan) deel van een produktie- voorschrift.
CPU Centrale verwerkingseenheid ("Central
Processing Unit"): Een werkzame eenheid 20 welke instructies en gegevens verwerkt.
Co-processor Een gespecialiseerde processor welke met een hoofdcomputer samenwerkt om de kwaliteit van het gehele systeem te verhogen.
25 Stuurlogica Een op maat gemaakte schakeling welke alle, voor de REX-chip benodigde bewerkingen stuurt.
DMA Directe geheugentoegang ("Direct Memory
Access"): Een in de communicatietech-30 niek gebruikelijke werkwijze tussen een hoofdcomputer en computerrandappara-tuur. DMA verschaft de meest efficiënte wijze voor het overbrengen van een blok van gegevens.
35 Externe gegevens Een blok van binaire gegevens dat in een hoofdcomputergeheugen verblijft.
Extern geheugen Een fysisch geheugen waarin de applica tievoorschriftenset is opgeslagen.
4900588.
VERKLARENDE WOORDENLIJST (vervolg) 28
Feit Een waarheid welke door feitelijke er varing of observatie bekend is. Een 5 groep van feiten wordt verzameld voor het aangrijpen van veronderstellingen.
Deductie Het interpreteren van een voorschrift van een applicatievoorschriftenset.
Deductiemachine Een probleem-oplossend stuurmechanisme 10 voor een expertsysteem.
I/O-interface Een type inrichtingsstuurorgaan dat verantwoordelijk is voor de communicatie tussen het hoofdcomputerstelsel en computerrandapparatuur.
15 Kennis-ingenieur Een persoon welke kennis en feiten aan een betreffend applicatiegebied onttrekt en deze in een applicatievoorschrif tenset omzet.
PC Personal computer.
20 PC/DOS Het schijfbeheersysteem ("Disk Operating
System") van een personal computer* dat de lees/schrijf-handelingen van een schijfstuurorgaan beheert.
Produktievoorschrift Een voorschrift dat in een if-then-for- 25 maat is gespecificeerd.
RAM Willekeurig toegankelijk geheugen ("Random-Access Memory"): Een elektronisch geheugen dat binaire informatie bevat welke voor lezen of schrijven 30 toegankelijk is.
ROM Dood geheugen ("Read-Only Memory"): Een elektronisch geheugen dat de binaire informatie opslaat. Een ROM is alleen toegankelijk om te lezen; het heeft 35 geen schrijfmogelijkheid.
Voorschriften-informatie- Een organisatieschema waarmee de pro- bankstructuur duktievoorschriften op een efficiënte wijze worden opgeslagen om geheugenruimte en verwerkingstijd te besparen.
¢900586.
29 VERKLARENDE WOORDENLIJST (vervolg)
Werkgeheugen Een RAM dat in de REX-chip is gehuis vest voor het opslaan van de aanvangs-, 5 tussen- en eindgegevens van een deduc- tieproces.
Gebruikersinterface Een computerprogramma dat verantwoorde lijk is voor de communicatie tussen de eindgebruikers en het computerhoofdsy-10 steem.
8900588.
30
AANHANGSEL A
Voorbeeld van een dieridentificatie-voorschriftenset
VOORSCHRIFT 1 5 IF
(bedekking = haar)
THEN
(klasse = zoogdier).
10 VOORSCHRIFT 2 IF
(produktie = melk)
THEN
(klasse = zoogdier).
15
VOORSCHRIFT 3 IF
(bedekking = veren)
THEN
20 (klasse = vogel).
VOORSCHRIFT 4 IF
(beweging = vliegen) en 25 (produktie = eieren)
THEN
(klasse = vogel).
VOORSCHRIFT 5 30 IF
(voedsel = vlees)
THEN
(vleeseter = ja).
69 00 588.' AANHANGSEL A (vervolg) 31
VOORSCHRIFT 6 IF
5 (tanden = puntig) en (lid = klauwen) en (ogen = voorwaarts)
THEN
(carnivoor = ja).
10
VOORSCHRIFT 7 IF
(klasse = zoogdier) en (leden = hoeven)
15 THEN
(type = gehoefd).
VOORSCHRIFT 8 IF
20 (klasse = zoogdier) en (voedsel = herkauwmassa)
THEN
(type = gehoefd) en (tenen = even).
25
VOORSCHRIFT 9 IF
(klasse = zoogdier) en (type = vleeseter) en 30 (kleur ** geelbruin) en (vlekken = donker)
THEN
(dier = cheetah).
8900588.
AANHANGSEL A (vervolg) 32
VOORSCHRIFT 10 IF
5 (klasse = zoogdier) en (type = vleeseter) en (kleur = geelbruin) en (strepen = zwart)
THEN
10 (dier = tijger).
VOORSCHRIFT 11 IF
(type = gehoefd) en 15 (nek = lang) en (benen = lang) en (vlekken = donker)
THEN
(dier = giraffe).
20
VOORSCHRIFT 12 IF
(type = gehoefd) en (strepen = zwart)
25 THEN
(dier = zebra).
VOORSCHRIFT 13 IF
30 (klasse = vogel) en (beweging < > vliegen) en (nek = lang) en (benen = Tang) en (kleur = zwart_en_wit)
35 THEN
(dier = struisvogel).
8900588.
AANHANGSEL A (vervolg) 33
VOORSCHRIFT 14 IF
5 (klasse = vogel) en (beweging = < > vliegen) en (zwemmen = ja) en (kleur = zwart_en__wit)
THEN
10 (dier = pinguin).
VOORSCHRIFT 15 IF
(klasse = vogel) en 15 (beweging = goed__vliegend)
THEN
(dier = albatros).
8900588.

Claims (32)

1. Schakelingstechnisch geïmplementeerde, op voorschriften gebaseerde expertsysteem!nrichting, geschikt voor het met hoge snelheid uitvoeren van deducties in kunstmatige intelligentie-applicaties, geba- 5 seerd op een voorschriftenset voor een applicatiegebied, gekenmerkt door: (a) werkgeheugenmiddelen; (b) invoermiddelen voor het opnemen van voor het applicatiegebied relevante externe gegevens en voor het in de werkgeheugenmiddelen als 10 feiten opslaan van deze externe gegevens; (c) voorschriftengeheugenmiddelen; (d) middelen voor het in de voorschriftengeheugenmiddelen opslaan van een voorschriftenset voor het applicatiegebied, bestaande uit een reeks van instructies welke elk een conditie of een actie definië- 15 ren; (e) middelen voor het vanuit de voorschriftengeheugenmiddelen in de werkgeheugenmiddelen laden van opeenvolgende instructies van de voorschriftenset, en '(f) logische middelen voor het opeenvolgend verwerken van de in- 20 structies in de werkgeheugenmiddelen met betrekking tot de, in de werkgeheugenmiddelen opgeslagen feiten voor het aldus deduceren van nieuwe feiten.
2. Inrichting volgens conclusie 1, met het kenmerk, dat de logische middelen zijn opgebouwd uit: 25 middelen voor het in de werkgeheugenmiddelen opslaan van de gededuceerde nieuwe feiten, en uitvoermiddëlen voor het naar een uitvoerinrichting overbrengen van de, in de werkgeheugenmiddelen opgeslagen gededuceerde nieuwe feiten.
3. Inrichting volgens conclusie 2, met het kenmerk, dat de uit voermiddelen een invoer-uitvoer-interface en een interfacebus omvatten, welke de invoer-uitvoer-interface en de werkgeheugenmiddelen onderling communicatief verbindt.
4. Inrichting volgens conclusie 1, met het kenmerk, dat de werkge- 35 heugenmiddelen een willekeurig toegankelijke halfgeleidergeheugenin-richting omvatten, en de voorschriftengeheugenmiddelen een afzonderlijke willekeurig toegankelijke halfgeleidergeheugeninrichting omvatten, alsmede een gegevensbus en een adresbus welke de werkgeheugenmiddelen en de voorschriftengeheugenmiddelen onderling verbinden, om gegevens- 40 overdracht hiertussen mogelijk te maken. 8900588.
5. Schakel 1ngstechnisch geïmplementeerde, op voorschriften gebaseerde expertsysteeminrichting, geschikt voor het met hoge snelheid uitvoeren van deducties in kunstmatige intelligentie-applicaties, gebaseerd op een voorschriftenset voor een applicatiegebied, gekenmerkt 5 door: (a) werkgeheugenmiddelen; (b) invoer-uitvoer-interfacemiddelen voor het communicatief verbinden van de werkgeheugenmiddelen met een extern systeem, welke in-voer-uitvoer-middelen verdere middelen omvatten welke tijdens de ini- 10 tialisatie van het deductieproces werkzaam zijn, voor het opnemen en in de werkgeheugenmiddelen opslaan van waarden welke voor het applicatiegebied relevante bekende feiten representeren; (c) voorschri ftengeheugenmi ddelen; fd) middelen voor het in de voorschriftengeheugenmiddelen opslaan 15 van een voorschriftenset voor het applicatiegebied, bestaande uit een reeks van instructies welke elk een conditie of een actie definiëren; (e) middelen welke tijdens het deductieproces werkzaam zijn voor het opeenvolgend uit de voorschriftengeheugenmiddelen ophalen en in de 20 werkgeheugenmiddelen opslaan van instructies van de voorschriftenset; (f) logische middelen welke tijdens het deductieproces werkzaam zijn voor het opeenvolgend opnemen van de, in de werkgeheugenmiddelen opgeslagen respectieve instructies en voor het verwerken van deze instructies met betrekking tot de, in de werkgeheugenmiddelen opgeslagen 25 feiten, voor het aldus deduceren van nieuwe feiten, welke logische middelen eveneens middelen voor het in de werkgeheugenmiddelen opslaan van gededuceerde nieuwe feiten omvatten, voor gebruik tijdens de verwerking of opvolgende instructies, en (g) waarbij de invoer-uitvoer-middelen middelen omvatten welke 30 werkzaam zijn na het voltooien van het deductieproces om de, in de werkgeheugenmiddelen opgeslagen feiten naar een uitvoerinrichting over te brengen.
6. Inrichting volgens conclusie 5, met het kenmerk, dat de middelen voor het opeenvolgend ophalen van instructies van de voorschriften- 35 set, voorschriftengeheugen-teilermiddelen omvatten met een adresregister voor het opslaan van het adres van de momentane instructie in de voorschriftengeheugenmiddelen, en middelen voor het bijwerken van het adresregister met het adres van de volgende instructie, telkens wanneer een instructie uit de voorschriftengeheugenmiddelen is opgehaald.
7. Inrichting volgens conclusie 5, met het kenmerk, dat elk van de 89 00588. instructies van de voorschriftenset een operator, een conditie/actie-vlag en een paar operanden omvat, waarbij de logische middelen een instruct! edecodeerder omvatten voor het testen van de conditie/actie-vlag om te bepalen of de instructie een conditie of een actie is, middelen 5 voor het opwekken van een logisch resultaat welke werkzaam zijn wanneer de instructie een conditie is voor het vergelijken van de operanden in overeenstemming met de, door de operator gespecificeerde logische operatie, en middelen die werkzaam zijn wanneer de instructie een actie is voor het op de operanden uitvoeren van de, door de operator gespecifi- 10 ceerde actie.
8. Inrichting volgens conclusie 7, met het kenmerk, dat de logische middelen, middelen omvatten welke werkzaam zijn wanneer het logische resultaat van de vergelijkingsstap WAAR is, om het ophalen van de volgende instructie van hetzelfde voorschrift te bewerkstelligen.
9. Inrichting volgens conclusie 8, met het kenmerk, dat de logi sche middelen, middelen omvatten welke werkzaam zijn wanneer het logische resultaat van de vergelijkingsstap ONWAAR is, om het ophalen van de eerste instructie van het volgende voorschrift te bewerkstelligen.
10. Inrichting volgens conclusie 7, met het kenmerk, dat elk van 20 de instructies tevens een direct/immediate-vlag omvat voor het specificeren van de adressen ngsmode van een van de operanden.
11. Schakelingstechnisch geïmplementeerde, op voorschriften gebaseerde expertsysteem!nrichting, geschikt voor het met hoge snelheid uitvoeren van deducties in kunstmatige intelligentie-applicaties, geba- 25 seerd op een voorschriftenset voor een applicatiegebied, gekenmerkt door: een geïntegreerde schakeling welke is voorzien van: (a) werkgeheugenmiddelen; (b) systeeminterfacebusmiddelen voor het communicatief verbinden 30 van de werkgeheugenmiddelen met een extern systeem voor het opnemen en in de werkgeheugenmiddelen opslaan van waarden welke voor het applicatiegebied relevante bekende feiten representeren; (c) voorschriftengeheugenbusmiddelen voor het communiceren met een extern voorschriftengeheugen waarin een voorschriftenset voor het ap- 35 plicatiegebied is opgeslagen, bestaande uit een reeks van instructies die elk een conditie of een actie definiëren; (d) voorschriftengeheugen-tellermiddelen bestaande uit een adresregister voor het opslaan van het adres van de momentane instructie in de externe geheugenmiddelen; 40 (e) middelen voor het uit het voorschriftengeheugen via de voor- 8900588. schriftengeheugenbusmiddelen ophalen van de momentane instructie, en (f) logische middelen voor het opnemen van de momentane instructie en voor het verwerken van de instructie met betrekking tot de, in de werkgeheugenmiddelen opgeslagen feiten voor het aldus deduceren van 5 nieuwe feiten.
12. Inrichting volgens conclusie 11, met het kenmerk, dat de logische middelen eveneens middelen voor het in de werkgeheugenmiddelen opslaan van gededuceerde nieuwe feiten omvatten.
13. Schakelingstechnisch geïmplementeerde, op voorschriften ge- 10 baseerde expertsysteem!nrichting, gekenmerkt door: {a) werkgeheugenmi ddelen; (b) middelen voor het opnemen van externe gegevens welke bekende feiten representeren en voor het op vooraf bepaalde geheugenadressen van de werkgeheugenmiddelen opslaan van waarden welke deze feiten re- 15 presenteren; (c) een geheugeninrichting voor het opslaan van een voorschriftenset; (d) een voorschriftenset bestaande uit een reeks van in de geheugeninrichting opgeslagen voorschriften, waarbij elk voorschrift van de 20 voorschriftenset een reeks van op opeenvolgende geheugenadressen van de geheugeninrichting opgeslagen instructies omvat; (e) waarbij ten minste een van de instructies van elk voorschrift een door de feiten van een gegeven probleem te vervullen conditie representeert, en omvattende: 25 (i) een operatiecode welke een uit te voeren logische bewer king definieert; (ii) een eerste operand welke een door de logische bewerking te vergelijken eerste waarde definieert, en (iii) een tweede operand welke het adres in het werkgeheugen 30 definieert dat een door de logische bewerking te vergelijken tweede waarde bevat.
14. Inrichting volgens conclusie 13, met het kenmerk, dat (f) ten minste een van de instructies van elk voorschrift een uit te voeren actie representeert wanneer aan alle condities van het voor- 35 schrift is voldaan, en omvattende: (i) een operatiecode welke de uit te voeren actie definieert; (ii) een eerste operand welke een waarde voor een feit definieert, en (iii) een tweede operand welke een adres in de werkgeheugen- 40 middelen definieert waarop de, in de eerste operand gedefinieerde waar- 0900588.' de dient te worden opgeslagen.
15. Een applicatievoorschriftenset voor een schakelingstechnisch geïmplementeerd, op voorschriften gebaseerd expertsysteem dat een ge» heugen met een groot aantal geheugenadressen omvat, gekenmerkt door: 5 een reeks van in het geheugen opgeslagen voorschriften; waarbij elk voorschrift van de voorschriftenset een reeks van instructies omvat, welke op opeenvolgende adressen van het geheugen zijn opgeslagen; waarbij ten minste een van de instructies van elk voorschrift een 10 door de feiten van een gegeven probleem te vervullen conditie representeert, en waarbij ten minste een van de instructies van elk voorschrift een uit te voeren actie representeert wanneer de conditie is vervuld.
16. Een voorschriftenset volgens conclusie 15, met het kenmerk, 15 dat de instructies alle hetzelfde aantal bits lang zijn.
17. Een voorschriftenset volgens conclusie 15, met het kenmerk, dat bepaalde bits van elke instructie een operand definiëren en andere bits van de instructie een operatiecode definiëren.
18. Een voorschriftenset volgens conclusie 15, met het kenmerk, 20 dat ten minste een bit van de instructie een vlag omvat welke aangeeft of de instructie een conditie of een actie is.
19. Een voorschriftenset volgens conclusie 16, met het kenmerk, dat de instructies 32 bits lang zijn en bits omvatten welke een operatiecode definiëren, bits welke een eerste operand definiëren, bits 25 welke een tweede operand definiëren, en ten minste een bit dat een vlag definieert welke aangeeft of de instructie een conditie of een actie is.
20. Een voorschriftenset volgens conclusie 16, met het kenmerk, dat de instructies elk ten minste een bit omvatten dat de adresserings- 30 mode van een van de operanden aangeeft.
21. Een voorschriftenset volgens conclusie 15, met het kenmerk, dat de voorschriften van de voorschriftenset als een beginnende, aan een einde van het geheugen, reeks van instructies op opeenvolgende geheugenadressen zijn opgeslagen, met een voorschriftenindex welke op op- 35 eenvolgende geheugenadressen beginnende aan het tegenoverliggende einde van het geheugen is opgeslagen, welke voorschriftenindex een reeks van geheugenadressen omvat welke het begingeheugenadres van elk voorschrift van de voorschriftenset definieert.
22. Een applicatievoorschriftenset voor een schakelingstechnisch 40 geïmplementeerd, op voorschriften gebaseerd expertsysteem dat een ge- 6900588. heugen met een groot aantal geheugenadressen omvat, gekenmerkt door: een reeks van voorschriften welke elk bestaan uit een reeks van instructies die een vooraf bepaald aantal bits lang zijn en op opeenvolgende geheugenadressen in het geheugen zijn opgeslagen, 5 waarbij bepaalde instructies van elk voorschrift een conditie representeren welke door de feiten van een gegeven probleem moet worden vervuld, waarbij verdere instructies van elk voorschrift een actie representeren welke moet worden uitgevoerd wanneer dat voorschrift is afge-10 vuurd, en een eveneens in het geheugen opgeslagen voorschriftenindex welke een reeks van geheugenadressen van het geheugen omvat die corresponderen met het begingeheugenadres van elk voorschrift van de voorschriftenset.
23. Inrichting volgens conclusie 22, met het kenmerk, dat de voor schriften van de voorschriftenset op opeenvolgende geheugenadressen zijn opgeslagen, beginnende aan een einde van het geheugen en waarbij de voorschriftenindex op opeenvolgende geheugenadressen beginnende aan het tegenovergelegen einde van het geheugen is opgeslagen.
24. Inrichting volgens conclusie 22, met het kenmerk, dat elk van de instructies van de voorschriftenset een operator, een conditie/ac-tie-vlag en een paar operanden omvat.
25. Een applicatievoorschriftenset voor een schakelingstechnisch geïmplementeerd, op voorschriften gebaseerd expertsysteem dat een ge-25 heugen met een groot aantal geheugenadressen omvat, gekenmerkt door: een reeks van voorschriften welke elk bestaan uit een reeks van instructies die een vooraf bepaald aantal bits lang zijn, waarbij de instructies van elk voorschrift op opeenvolgende geheugenadressen in het geheugen zijn opgeslagen, waarbij de voorschriften van de voor-30 schriftenset achtereenvolgens beginnende aan een einde van het geheugen zijn opgeslagen; welke instructies bits omvatten die een operatiecode definiëren, bits die een eerste operand definiëren, bits die een tweede operand definiëren, ten minste een bit dat een vlag definieert welke aangeeft 35 of de instructie een conditie of een actie is, en ten minste een bit dat de adresseringsmode van een van de operanden aangeeft, en een eveneens in het geheugen opgeslagen voorschriftenindex, bestaande uit een reeks van geheugenadressen van het geheugen, corresponderende met het begingeheugenadres van elk voorschrift van de voor-40 schriftenset, welke voorschriftenindex op opeenvolgende geheugenadres- 8900585. sen is opgeslagen, beginnende aan het tegenovergelegen einde van het geheugen vanaf waarvan de voorschriftenset begint.
26. Schakelingstechnisch geïmplementeerde, op voorschriften gebaseerde expertsysteemwerkwijze, voor het met hoge snelheid uitvoeren 5 van deducties in kunstmatige intelligentie-applicaties, gebaseerd op een voorschriftenset voor een applicatiegebied, gekenmerkt door: (a) het in een werkgeheugen opslaan van bekende feiten welke voor het applicatiegebied relevant zijn; (b) het in een voorschriftengeheugen opslaan van een voorschrif-10 tenset voor het applicatiegebied, bestaande uit een reeks van instructies welke elk een conditie of een actie definiëren; (c) het uit het voorschriftengeheugen in het werkgeheugen laden van een instructie van de voorschriftenset, en (d) het in het werkgeheugen verwerken van de instructie met be-15 trekking tot de in het werkgeheugen opgeslagen feiten.
27. Werkwijze volgens conclusie 26, gekenmerkt door het herhalen van de stappen (c) en (d) ten behoeve van opeenvolgende instructies van de voorschriftenset voor het deduceren van een nieuw feit, en het in het werkgeheugen opslaan van het gededuceerde nieuwe feit.
28. Werkwijze volgens conclusie 27, met het kenmerk, dat de stap van het in een voorschriftengeheugen opslaan van een voorschriftenset het op opeenvolgende geheugenadressen van het voorschriftengeheugen opslaan van de instructies van de voorschriftenset omvat, en dat.een stap van het bijwerken van een geheugenadresregister met het adres van de 25 volgende instructie wordt uitgevoerd, telkens wanneer een instructie vanuit het voorschriftengeheugen wordt geladen.
29. Werkwijze volgens conclusie 26, met het kenmerk, dat dè stap van het opslaan van een voorschriftenset in een voorschriftengeheugen het op opeenvolgende geheugenadressen van het voorschriftengeheugen op- 30 slaan van instructies omvat, welke een operator, een conditie/actie-vlag en een paar operanden omvatten, en waarbij de stap van het verwerken van de instructie het onderzoeken van de conditie/actie-vlag omvat om te bepalen of de instructie een conditie of een actie is.
30. Werkwijze volgens conclusie 29, gekenmerkt door de stap van 35 het vergelijken van de operanden in overeenstemming met de, door de operator gespecificeerde logische bewerking voor het afgeven van een logisch resultaat wanneer de instructie een conditie is.
31. Werkwijze volgens conclusie 29, gekenmerkt door de stap van het op de operanden uitvoeren van de, door de operator gespecificeerde 40 actie, wanneer de instructie een actie is. 6900588.
32. Schakelingstechnisch geïmplementeerde, op voorschriften gebaseerde expertsysteemwerkwijze voor het met hoge snelheid uitvoeren van deducties in kunstmatige intelligentie-applicaties, gebaseerd op een voorschriftenset voor een applicatiegebied, gekenmerkt door: 5 (a) het definiëren van een voor het applicatiegebied relevante set van eigenschappen; (b) het aan een specifiek geheugenadres in een werkgeheugen toekennen van elke eigenschap van de set; (c) het voor een bepaald probleem, dat door het expertsysteem moet 10 worden opgelost, uit de set selecteren van die eigenschappen welke waarden hebben die bekend zijn; Cd) het opslaan van de waarden van de bekende eigenschappen in het werkgeheugen, op de voor die eigenschappen aangewezen geschikte geheu-genadressen; 15 (e) het in een voorschriftengeheugen opslaan van een voorschrif tenset voor het applicatiegebied, welke voorschriftenset een reeks van instructies omvat; Cc) het uit het voorschriftengeheugen in het werkgeheugen laden van opeenvolgende instructies van de voorschriftenset en het verwerken 20 van de instructies met betrekking tot de in het werkgeheugen opgeslagen waarden van de eigenschappen, voor het aldus deduceren van een waarde voor een onbekende eigenschap; en (d) het opslaan van de gededuceerde waarde in het werkgeheugen op het met die eigenschap corresponderende geheugenadres. +++++++ 8900588
NL8900588A 1988-03-11 1989-03-10 Op voorschriften gebaseerd expertsysteem. NL194520C (nl)

Applications Claiming Priority (2)

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

Publications (3)

Publication Number Publication Date
NL8900588A true NL8900588A (nl) 1989-10-02
NL194520B NL194520B (nl) 2002-02-01
NL194520C NL194520C (nl) 2002-06-04

Family

ID=22605029

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8900588A NL194520C (nl) 1988-03-11 1989-03-10 Op voorschriften gebaseerd expertsysteem.

Country Status (4)

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

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920003701B1 (ko) * 1988-03-17 1992-05-09 가부시끼가이샤 도시바 리얼타임 엑스파트 계산기 시스템
JPH01309101A (ja) * 1988-06-08 1989-12-13 Hitachi Ltd 適応知識推定方法
JP3268529B2 (ja) * 1990-03-14 2002-03-25 株式会社日立製作所 知識データベース処理システムおよびエキスパートシステム
DE4100500A1 (de) * 1991-01-10 1992-07-16 Bodenseewerk Geraetetech Signalverarbeitungsanordnung zur klassifizierung von objekten aufgrund der signale von sensoren
DE4103128C2 (de) * 1991-01-30 1994-09-01 Krone Ag Echtzeit-Expertencomputersystem
DE10322686A1 (de) * 2003-05-20 2004-12-23 Siemens Ag Verfahren zur Verknüpfung von medizinischen Therapiehinweisen umfassenden Datensätzen
US8510142B2 (en) 2011-07-20 2013-08-13 Fluor Technologies Corporation Conflicting expert systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0166251A2 (en) * 1984-06-26 1986-01-02 Kabushiki Kaisha Toshiba Inference system and method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0137414B1 (en) * 1983-09-28 1992-12-02 Hitachi, Ltd. High speed processing system for computer system
US4670848A (en) * 1985-04-10 1987-06-02 Standard Systems Corporation Artificial intelligence system
JPH0743722B2 (ja) * 1985-08-02 1995-05-15 株式会社東芝 帰納推論装置
GB2208020A (en) * 1987-06-30 1989-02-15 Toshiba Kk Inference processing system
JPS647232A (en) * 1987-06-30 1989-01-11 Toshiba Corp Inference processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0166251A2 (en) * 1984-06-26 1986-01-02 Kabushiki Kaisha Toshiba Inference system and method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
COMMUNICATIONS OF THE ASSOCIATION FOR COMPUTING MACHINERY. deel 28, nr. 9, September 1985, NEW YORK US bladzijden 921 - 932 FREDERICK HAYES-ROTH: 'Rule-based systems' *
PROCEEDINGS OF THE IEEE 1986 NATIONAL AEROSPACE AND ELECTRONICS CONFERENCE NAECON 1986 deel 4, 19 Mei 1986, DAYTON, OH US bladzijden 1211 - 1217 MARK PLUTOWSKI: 'VOSS-VHSIC hosted expert system' *

Also Published As

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

Similar Documents

Publication Publication Date Title
US4466061A (en) Concurrent processing elements for using dependency free code
US5574930A (en) Computer system and method using functional memory
US5499350A (en) Vector data processing system with instruction synchronization
EP0207519B1 (en) Data processor
CA2027572A1 (en) Controller for direct memory access
US3698007A (en) Central processor unit having simulative interpretation capability
US5218669A (en) VLSI hardware implemented rule-based expert system apparatus and method
NL8900588A (nl) Inrichting en werkwijze van een vlsi-schakelingstechnisch geimplementeerd, op voorschriften gebaseerd expertsysteem.
US4396979A (en) Microprocessor with improved arithmetic logic unit data path
US5165026A (en) Programmable controller in which fetching of operand data and fetching of operand addresses are simultaneously performed
AU9502098A (en) Autonomously cycling data processing architecture
US4817027A (en) Method and apparatus for evaluating partial derivatives
US4654780A (en) Parallel register transfer mechanism for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
JPS58129550A (ja) 演算制御装置
Anagnostopoulos et al. Computer architecture and instruction set design
JPH04504627A (ja) 信号処理装置および方法
WO1983004442A1 (en) System and method of renaming data items for dependency free code
US4615003A (en) Condition concentrator and control store for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
JPS5819953A (ja) マイクロプログラム制御方式
Abrahams Symbol manipulation languages
Jensen et al. The Honeywell Modular Microprogram Machine: M3
EP1102175A1 (en) Neuro-Fuzzy network architecture with on-line learning capabilities and corresponding control method
US4807124A (en) Register addressing system for efficient microroutine sharing and optimization
EP0445797A2 (en) Fuzzy logic computer
WO1987006736A1 (en) Improvements relating to control flow in computers

Legal Events

Date Code Title Description
A1A A request for search or an international-type search has been filed
BB A search report has been drawn up
BC A request for examination has been filed
DNT Communications of changes of names of applicants whose applications have been laid open to public inspection

Free format text: KNOWLEDGE BASED SILICON CORPORATION;RICOH COMPANY LTD.

CNR Transfer of rights (patent application after its laying open for public inspection)

Free format text: RICOH COMPANY LTD.

V4 Discontinued because of reaching the maximum lifetime of a patent

Effective date: 20090310