DE1474047A1 - Programmgesteuerte Rechenanordnung - Google Patents

Programmgesteuerte Rechenanordnung

Info

Publication number
DE1474047A1
DE1474047A1 DE19641474047 DE1474047A DE1474047A1 DE 1474047 A1 DE1474047 A1 DE 1474047A1 DE 19641474047 DE19641474047 DE 19641474047 DE 1474047 A DE1474047 A DE 1474047A DE 1474047 A1 DE1474047 A1 DE 1474047A1
Authority
DE
Germany
Prior art keywords
word
memory
command
register
module
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
DE19641474047
Other languages
English (en)
Other versions
DE1474047C (de
DE1474047B2 (de
Inventor
Lindquist Arwin Bruce
Seeber Robert Rex
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1474047A1 publication Critical patent/DE1474047A1/de
Publication of DE1474047B2 publication Critical patent/DE1474047B2/de
Application granted granted Critical
Publication of DE1474047C publication Critical patent/DE1474047C/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8038Associative processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Description

U740A7
IBM Deutschland Internationale Büro-Matehinen GestlUtha/l mbH
Böblingen, 16. April 1969
km-ηο j
Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10 504
Amtliches Aktenzeichen: P lH 71* P47-7 Aktenz. d. Anmelderin: Docket 7683
Programmgesteuerte Rechenanordnung
Die Erfindung bezieht sich auf eine programmgesteuerte Rechenanordnung mit mindestens einer Recheneinheit, mindestens einer Speichereinheit zur Aufnahme von Daten- und Befehlswörtern und mindestens einer Programmeinheit, welche die Folge der Programmbefehle festlegt.
In bekannten Programm-Rechenanordnungen werden die Befehle in der Reihenfolge ihres Auftretens im jeweiligen Programm in einem als Befehlsspeicher dienenden Speicher gespeichert, und ein
Befehlszähler oder eine äquivalente Anordnung dient dazu, wäh- i rend der Rechenoperation die Adresse des jeweils nächsten Be- j fehls in der gespeicherten Folge zu ermitteln. Von dieser vom ! Programm vorgegebenen Folge wird nur bei Verzweigungsoperationen ■ abgewichen, indem der jeweilige Stand des Befehlszählers durch die gewünschte Verzweigungsadresse ersetzt wird. Um der Forderung
nach Erhöhung der Rechengeschwindigkeit nachzukommen, ist es be- j kannt geworden, daß sich eine einzelne Recheneinheit in die Bear- i
009851/1558
H7A0A7
beitung mehrerer Progranune teilt. Während der durch langsame Anschlußeinheiten bedingten Wartezeiten schaltet die Maschine auf ein anderes Programm um. Die Daten des bisherigen Programms werden abgespeichert und entsprechende Daten des neuen Programms werden aufgenommen, so da& der Befehlszähler daraufhin die Befehlsreihe des neuen Programms verfolgt. Die einzelnen Programmumschaltungen werden dadurch bestimmt, daß in dem jeweiligen Programm die Umschaltpunkte oder die Möglichkeiten von Umschaltungen programmiert werden. Ein Teil dieser Maschinen verwendet ein Oberwachungsprogramm, welches den einzelnen Ausführungsprogrammen übergeordnet ist und diesen Speicherplatz zuweist. Nachteilig ist es bei den mit Vielfachprogramm arbeitenden Maschinen, daß ein beträchtlicher Programmieraufwand notwendig ist, um einen reibungslosen, zeitsparenden Ablauf der verschiedenen Programme zu erreichen.
Es ist vorgeschlagen worden, die Programmierung dieser Maschinen dadurch zu erleichtern, daß ein assoziativer Adressenumwertspeicher verwendet wird, der aus Pseudoadressen der einzelnen Programme die tatsächlichen Speicheradressen bildet, so daß diese bei der Programmierung nicht mehr berücksichtigt werden müssen und eine automatische Speicheraufteilung auf die verschiedenen Programme erfolgt.
Eine weitere Erhöhung der Rechenleistung bei der Lösung komplexer Aufgaben wurde durch die Maßnahme erreicht, mehrere Recheneinheiten miteinander zu koppeln. Hier teilen sich zwei oder mehr Rechner in die Lösung eines umfangreichen Rechenproblems. Diese Rechner arbeiten unter Steuerung eines zentralen Überwachungsprogramms oder eines Meisterrechners synchon parallel, indem sie zu gleicher Zeit verschiedene, in keinem engen Zusammenhang stehende Teile des zu lösenden Problems behandeln. Eine solche Technik ist vorwiegend für Probleme verwendbar, die einen hohen Grad an Symmetrie aufweisen. Dies ist aber häufig nicht der Fall. Wenn das
00 9 851/1558
U740A7
Problem sich nicht ohne weiteres in parallel behandelbare Teilprobleme aufspalten läßt, wird der Programmieraufwand, der auf die Ausschaltung von Wartezeiten zw ischen den einzelnen Rechnern Rücksicht nehmen muß, sehr umfangreich. Es wurde daher auch bereits vorgeschlagen, derartige Rechenanlagen ohne zentrale Steuerung zu betreiben. Die einzelnen Rechner arbeiten relativ selbst-findic und stehen nur in loser Kopplung miteinander, die dem Austausch von Zwischenergebnissen dient. Bei diesen Anlagen treten erheblich Wartezeiten für die einzelnen Rechner auf, wodurch die Rechenleistung reduziert wird. Außerdem ist der Aufwand, den die Programmierung erfordert, nach wie vor erheblich.
Aufgabe vorliegender Erfindung ist es, eine neuartige, programm-Ccrteuerte Rechenanordnung anzugeben, bei der die Programmbefehle nicht wie bisher in einer mehr oder weniger starren Folge gespeichert werden müssen und die daher eine einfachere und leicht Überschaubare Programmierung gestattet. Dies wird bei einer programmgesteuerten Rechenanordnung, die mindestens eine Recheneinheit, mindestens eine Speichereinheit zur Aufnahme der Daten- und Befehlswörter und mindestens eine Programmeinheit umfaßt, welche die Folge der Programmbefehle festlegt, erfindungsgemäß dadurch erreicht, daß die Speichereinheit als assoziativer Speicher ausgebildet ist, in welchem Daten- und Befehlswörter in beliebiger Fo'lge eingegeben werden,daß jeder Wortbereich des Speichers ein Kennfeld umfaßt, dessen Inhalt die relative Lage der Daten- und Befehlswörter in einer baumartigen Programmstruktur ohne Bezugnahme auf örtliche Speicheradressen definiert, und daß die Programmeinheit einen Kennfeldgenerator enthält, der bei Entnahme eines beliebigen verarbeitungsbereiten Datenwortes aus der Speichereinheit dem Kennfeldinhalt des zur Verarbeitung dieses Datenwortes benötigten weiteren Datenwortes sowie den Kennfeldinhalt des die Verarbeitungsart steuernden Befehlswortes entsprechend der vorgegebenen Programmstruktur bestimmt und der Speichereinheit für eine assoziative Entnahme dieser Worte zur Verfügung stellt. BAD ORtGINAL
009851/1558
H74CU7
Die erfindungsgemäße Rechenanordnung eignet sich vorteilhaft zur Verwendung in einem Rechnersystem, das aus mehreren Rechnern besteht, die ohne Überwachungsprogramm oder· Meisterrechner an der gemeinsamen Lösung komplexer Probleme arbeiten. Eine derartige Anordnung mit mehreren selbständigen, weitgehend unabhängig voneinander arbeitenden Recheneinheiten und mehreren Speichereinheiten besteht gemäß einer Weiterbildung der Erfindung darin, daß mehrere parallel geschaltete Rechenmodule und mehrere parallel geschaltete, als assoziative Speicher ausgebildete Speichermodule durch eine Anzahl Datenübertragungskanäle frei miteinander koppelbar angeordnet sind, daß eine von den Ausgängen der Rechenmodule gesteuerte erste Multiplexschaltung vorgesehen ist, die auf eine Zugriffsanforderung von einem Rechenmodul in Abhängigkeit von im anfordernden Rechenmodul errechneten Zugriffs-Adressdaten einen Übertragungskanal zum gewünschten Speichermodul bereitstellt, und daß eine von den Ausgängen der Speichermodule gesteuerte zweite Multiplexschaltung vorgesehen ist, die auf eine Ausgabeanforderung von einem Speichermodul in Abhängigkeit von aus dem betreffenden Zugriff vorliegenden Ausgabe-Adressdaten einen Übertragungskanal zum gewünschten Rechenmodul bereitstellt.
Da gemäß der Erfindung ein starres Befehlsfolgeschema mit speicherortbezogenen Befehls- und Datenadressen vermieden wird, arbeitet in einer derartigen Anordnung jeder Rechner weitgehend autonom. Der Ausfall eines Rechners bei Auftreten einer Störung hat keinen Einfluß auf die Weiterarbeit der übrigen Rechner. Ein derartiges System kann außerdem durch einfache Hinzufügung von zusätzlichen Rechen- und/oder Speichereinheiten beliebig erweitert werden. Infolge der hochgradigen Parallelarbeit und der selbsttätigen Arbeitsbeschaffung ist eine effektive und zeitsparende Arbeitsweise gewährleistet.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind aus den Ansprüchen in Verbindung mit einem nachfolgend anhand von Zeich-
009851/1558 BAD original
H740A7
-5-nungen beschriebenen Ausführungsbeispiel zu ersehen. Es zeigen;
Fig. 1 ein allgemeines Blockschaltbild des Ausfünrungsbeispiels nach der Erfindung, das eine Anzahl Rechenmodule, eine Anzahl assoziative Speicher sowie Eingabe- und Ausgabeeinheiten aufweist.
009851/1558
U74047
FIg· 2A u. 2B in der Zusaramenfügung nach Pig. 2C zeigen ein detailllerterea Blooksohaltblld zur Anordnung neh Fig· 1» wobei die Fig· 2A den Speicherte11 und die Fig.. 2B den Rechenteil der Anordnung darstellt,
Fig. 2D eine allgemeine Blookdaratellung der Rechner-Progress»teuereinhalt»
Flg. 3 die Darstellung dea Reohenprobiema Y - / 6 in Fora eines Bauraprogri
Fig. 4a u. 4b eine eymbollache Darstellung der in einer Anzahl von aaaozlatlven Spelohern nach den Prinzipien der Erfindung gespeicherten Worte,
Fig. 5A u. 5B die Baratellung de· von der Anordnung naoh der Erfindung verwendeten Wortforreata,
Flg. 6 das Baumprograsn de β Reohenprobleme Y - AB ♦ CX,
Flg. 7 «ine aoheaatlaohe OaretellMng »Ine· aeaoziativen Speicher· zur Terd«utllabtmg der inhaltaorientierten Adreaaierung,
Fig· 8 ein vorteilhaftea Auaftlhrungabelaplel eine· MMsla» tiven ^peiohera und der zugeordneten Steuersali·!· tungen In Fora eine· Blookaohaltblldea,
Flg. 9A - 9C eine zweokaXfiig· AuafUhrung der Reohnerauegang^-
Multlplexaohaltung in Verbindung atit den zugehurigen Stouaraohaltungen in Form eine· Bloclcachaltblldea,
Flg. 9A u. 9B eine zweckmäßige AuafUhrung einer Speioherauagang-Multlplexsohaltung in Verbindung eit den zugehörigen St euerachal tungen In Form einea Blockaohaltblldea«
009851/1558
BAD ORIGINAL
U7A047
Flg. 11 ein Blockochaltbild eines Eingabe relhenepe loner's,
wie er nach der Erfindung Bit Jeden der assoziativen Spelohernodule verwendet wird»
Flg. 12 ein Blockschaltbild eine· aseoiiativen Spelohermodule,
Flg. 13 ein Blockschaltbild einer vorteilhaften Aueftlhrungeforn eines Speleheradressengenerators geattfi der Erfindung,
Flg. 14 ein FluBdiagraan tür Darstellung der Operationsfolge , In eines Kcnnfeldgenerator« wie er von der Erfindung verwendet wird.
Flg. 15 ein Blockschaltbild einer vorteilhaften Auaftihrungsform eines derartigen tCennfeldgeneratore,
Fig. ίο ein Blockschaltbild derjenigen Schaltungen« die der Ausgang eines Rechanaoduls nach Flg. 2B enthält,
Fig. 17A - 17C eine scheeatisoh· Darstellung einer Reohenprogrann-Steuereinheit in übereinatiisming alt der Erfindung, wobei die Eingangssignal auf der linken Seite und die Ausgang«signale auf der reohten Seite des dar· gestellten Blockes eingetragen sind Ia Zuordnung ■lt den Operationsregeln, su welchen dl· betreffenden Signale gehuren»und
Flg. 17B die fusaflnengehOrlgkelt der Fig. 17A, 17B, 17C.
BAD ORIGINAL
009851/1558
U74047
Es sei zunächst darauf hingewiesen, daJ in den verschiedenen Figuren mehrere Bauelemente, die gewöhnlich für das gleichzeitige übertragen nehrorer Xnformationsbits nötig sind« durch ein * einziges Bauelement dargestellt werden und daft In den Zeichnungen , diese Bauelenente durch eine Einzelleitung statt durch dl· für
das Übertragen eines ganzen Wortes nötige Zahl von Leitungen verbunden sind. Zn der Beschreibung stehen dl··· Bauelemente j imner im Plural, und das so gekennzeichnete Element stellt )■■ mehrere gleiche Elemente dar.
i> Allgemeiner Aufbau
Das hler beschriebene assoziative, logische, parallele System ; besteht wie die meisten Reohenanlagen aus fünf Funktionstellen, ntalich Eingabe, Ausgabe, Speicher, Steuerung und Rechenteil. Jedoch sind hier die Funktionsteile, wie s. B. zahlreiche Rechenautomaten und Speichermodule, in hohem Grade autonom, ao dafi sie.ohne Jede zentrale Steuerung arbeiten« Die bei der Steuerung der Punktionstell· des Systems verwendeten Assoslatlonsverfahren ermöglichen es, ohne zentrale Steuerung auszukommen. Auierdem sind diese zahlreichen Funktionen unter der Verwendung von Assoziationsverfahren so aufgebaut, so daJ si· •ine oder mehrere Aufgaben parallel ausführen· Dies« Funktionen können ohne wesentliche Änderung der Programm· auch hinzugefügt oder weggenommen werden.
Das Blookdlagratn des Systems in Fig. 1 seiet» nie dl· Furnkti teile untereinander verbunden sind. Die Steuer* und Reohensohaltungen erscheinen in Fig. 1 als Je eine Einheit, dl« Reohenmodul genannt wird. Dl· Verbindungen sind so aufgebaut, dafl die Datenübertragung zwischen vielen Funktionsteilen gleichzeitig erfolgen kann. Der Eingabeteil des Systems nimmt gleichzeitig Daten aus oeliebig vielen Eingabequellen auf und speichert sie in den Speichern. Diese Daten können aus Loch-
BAD ORIGINAL
009851/1558
U74047
karten. Magnetbändern und -platten, manuell betitigten Tasten, Abftlhlelnhelten und dergleichen können·. Der Ausgabeteil übernimmt gleichzeitig. Informationen aue den Speiehern und stellt sie der Bedienungsperson zur Verfugung. Die Ausgabe kann ebenfalls in verschiedenen Formen erfolgen» z. B. über Lochkarten, Magnetband, bedruckte Formulare, Anzeigelampen usw. Die assoziativen Speichermodule dienen zum Auf* nehmen, Pesthalten und Verteilen von Informationen. Das Blookdlagramm von Flg. 1 zeigt mehrere assoziative Speichemodule, die Jede eine Eingabedatenreihe aufweisen. Jeder assoziative Speicher wejet eine "Zuerst hinein» zuerst heraus"-Funktlon sowie viele der gebräuchlicheren Assozietionemerkmale, wie s. B. wahlweises Schreiben, Schreiben in erstes leeres Register und dergleichen auf. Dl· assoziativen Speicher arbeiten selbständig.
Jeder Reohenmodul kann die von 1ha eapfangenen Befahl· ent» Schlüssels, Datenanforderungen zu den assoziativen Spelohern senden, mit den Daten die UbIlohen arithmetischen und loglsohen Operationen ausführen und Kennwörter für das Intneheen von Kaohfolgebefehlen und -Operanden bereohnen.
Der Aufbau des Syst··· 1st Ia einzelnen In Fig· SA und 2B dargestellt. Dort sind bestimmte Bauelemente von Flg. 1 in Funktionseinheiten aufgeteilt worden» dl· ·· erleichtern, •Inen Überblick Über die Anordnung nach der Erfindung zu gewinnen. Die·· Figuren zeigen lot we sent Hohen dl· DatenpfaA· zwischen den Funktionseinheiten· Dl· kurzen Verbindungslinien deuten da« Bestehen von Xnforaatlonsauatausoh zwlsohen diesen Funktionseinheiten und der Programmsteuereinheit des Rechenautomaten von Fig. 2D an (siehe auch Flg. 17A, 17B und 17C).
line K ingebe vorrichtung 10 (Flg. 2A) übertragt, wenn si· «in· Anforderung nach neuer Arbelt aus einem leeren Rechenmodul
009851/1568 bad original
r ■ -
U74047
-10-
eapfängt, ein Datenwort zu ihren Ausgaberegiater. Dies gestattet ea der Spelcherausgabe-Multlplejcelnhelt 12» das betreffende Datenwort über einen ihrer Auagangakanäle aua Befehlapufferregiater 14 des Reohenoodula 1 zu Übertragen. Außerdem nlmot die Speloherauagabe-Jtultlplexelnheit 12 Datenwörter aua den assoziativen Speichern 16« I6a und 16a auf und Übertrügt dleae Informationen entweder sub Befehlapuffer 14 oder zum Operandpufferregleter 18. DIt 8peioherauaga.be-Multlplexeinhelt 12 kann dleae Datenwörter auob zu Operand- und Befehlapufferreglatern anderer Rechenaodule Übertragen. Die Spelcherauagabe-Multiplexelnheit 12 beateht aus einer featatehenden Zahl von Datenkanälen· Jeder Datenkanal enthält eine Oder-Schaltung nit N Eingängen und eine Deoodleraohaltung für die Rechner-Pufferregieter, die weiter unten in einzelnen erläutert wird. Der Reohner-Deoodlersohaltung wird der Rechner-Pufferreglater-Code angeführt, und die Ausgangssignale der Deoodlerachaltung steuern« wls nooh erläutert wird« die £ingangatore der Pufferreglster.
Die Pufferreglster 14 und 18 halten vorübergehend den näohaten Reohnerbefehl und -Operanden feet, bis der gegenwärtige Befehl fertig ausgeführt ist. Die Fufferrssiter gehören also su der für die Uberlappungsoperatlon nötigen Logik. BaI der Uberlappungaoperatlon werden der nächst« Befahl und der näohate Operand während des AuafUhrena des gegenwärtigen Befehls herausgeholt .
Das Operandpufferreglster 18 speichert vorübergehend den linken oder den reohten Operanden. Die Ausgangssignale dieses Registers werden entweder eine· linken Qperandreglste» 20 oder eine· reohten Operandregister 22 zugeführt je nach der In den Operandpufferregleter enthaltenen Steuerlnforaatlon. AuBerdea zeigt das Operandpufferregister einer Rechner- Prograaneteuereinhelt 26 an, ob Daten aua den assoziativen Speichern empfangen worden sind und welchen Status diese Daten haben.
BAD OR!Q,'NAL
009881/1558
U74047
Das Befehlspufferregister 14 speichert vorübergehend den Befehl. KIn Ausgangselgnal des Bofehlspufferreglsters 14 wird in ein Befehlsregister 28 gebracht. Ein weiteres Ausgang se lgnal, der 8peiohercode, wird In den epelcheradreaaengentrator 24 gebracht. Ein drittes Ausgangesignal« das Informationen Über die In das Befehlspufferregister könnenden Daten enthält, wird In die Rechner-Frogranmateisrelnhelt 26 Übertragen. Der Speloheradressengenerator 24 bestimmt den Namen des Speichers, in dem der nKohste Befehl und/oder Operand zu speichern bzw. zu finden 1st. Die M Speicher In dem System sind von 1 bis M numeriert.
Dor Spelcheradressengenerator 24 besteht aus eines Eingab·· und einem Auegaberegister» einer Eine-aufwärts-zählen-Schaltung und einer Eins-abwarta-sählen-eehaltung, einer Prüfschaltung sowie entsprechenden Toree- und Steuer« schaltungen, die noch la einseinen erläutert werden. Die Ausgengaslgnale des Speicheradressengenerators 24 werden einer Rechenmodul-Ausgabeeultlplexelnhelt JO sugeführt. Bin weiteres Auecangsslgnal des Speicheradressengenera tors 24 besteht «us Steuerinforaatlonen, die der ReohnerprogTaaMteuerelnholt 26 zugeleitet werden«
Das Befehlsregister 28, das linke Operandregister 20 und das rechte Operandregister 22 sind die Rauptreglster des Reehenmoduls. Wie ihre Manen besagen« dienen ale sua Speichern des Befehls sowie des linken und des rechten dea Befehl auge» ordneten Operanden. Das Auagangaslgnal dea Befehlsregisters besteht aus den Codefeld, das einer BefehlsdeoodlereInMt 32 zugeführt wird« Das vollständige la Befehlsregister enthaltene Datenwort kann über Leitungen >4 sowohl den linken als auch dem reohten Operandreelster sugeftlhrt werden. Der Indexteil des Kennzeichenfeldes, das la Befehlsregister enthalten 1st,-wird In einen Kennzeichen- bzw. Kennfeldgenerator J6 geleitet. Das ganze In Befehlsregister stehende Datenwort oder Teile davon können zu der Rechennodul-Auagsbe-
009851/1558 bad original
H74047
aultlplexeinheit 30 Übertragen werden. Außer den aus des Pufferregister 14 kommenden Eingabedaten empfängt das Befehlsregister 28 Daten aus einer Recheneinheit 38« den Kennwortgenerator 36 und dem linken Operandregister SO. Die aus der Recheneinheit kommenden Daten sind das Resultat einer Rechenoperation. Die aus dea Kennzeichengenerator 36 könnenden Daten bestehen aus Steuer/rfinformationen, die den Indexteil dea Kennzeichenfeldes verändern. Die aus dea linken Operandregister körnenden Daten sind das geaäS dea welter unten beschriebenen speziellen IP-Befehl benötigte Resultat.
Aufler aus dea Befehlsregister 28 unddea Operandpufferregister 18 empfangen die Operandregister auch Informationen aus dea Kennzeichen- bzw. Kennfeldgenerator 36. Diese Informationen haben eine Teränderung des Indexteils der Kennfelder dieser Register sua Ergebnis. Die Datenfelder dsr Operandregister werden Über Leitungen 282 und 83O in dl· Recheneinheit übertragen. Alle in den Operandrenietern enthaltene«» Datenwerter oder Teile davon werden über dl· leitungen 40 der Rechenmodul-Ausgabemultlplexeinheit 30 KUgefUhrt. Die Befehl ede codier »chaltung 32 entsohlüsselt d*e aus da« Befehl·· register 28 könnende Codefeld. Dl· Ausgangaslgnal« der Befehlsdecodlsrschaltung werden der Re ohner-rniaraaa« teuere Inheit 26 und der Recheneinheit 38 zugeleitet. Dl· Befehls dsoodlerelnheit bestiant den auszuführenden Operationstyp. Z. B. bestimmt dls Befehlsdecodlereinhelt, ob ·· sich bsi dea Befehl üb «ine unäre oder ein« binär« Operation« «las Addition«· operation» eine MuI tipi lic* tionsope rat lon oder dergleichen handelt. Bei der Ausführung dieser Funktion wandelt dl· Befehlsdecodierschaltung einen binärversohlUsselt«n Eingang·-» cods in einen "1 aus K"-Ausgangaoode ua. Dieser "1 au« M*- Cods wird dann zur Recheneinheit 38 übertragen·
Der Kennzelohengenerator 36 bestiaat das Kennseiehen des nächsten Befehle und Operanden und speichert dl··· Kenneelohen
BAD 009851/1558
U74047
Ia Befehlsregister 28 und entweder la linken Operandregister 20 oder in rechten Operandregiater 22· Der Kennzeichengenerator besteht au« einen Indexregister, einer Äußersterechte-1-Schaltung und einem Anzeigebitj die Wlrkungßv/eise wird welter unten beschrieben· Durch dl· Ausgangsalgnal· des Kennzeichengenerators wird der Indexteil der Kennwortfelder des linken Operandregisters« des rechten Operandregisters und des Befehlsregisters auf den neuesten Stand gebracht. Außerdem sendet und empfängt der Kennwortgenerator Steuersignale zu bzw. aus der Re cfmer-Programms tetiereinheit 26.
Die Recheneinheit 38 ist ein· konventionelle Einrichtung« die die erforderllohen arithmetischen und logischen Operationen mit dem linken und dem rechten Operanden ausführt« wie es der Befehl erfordert. Dl« Ausgangseignale der Recheneinhalt werden dem Befehlsregister 28 zugeleitet. Auflerdea werden Steuerinformationen zwisohen der Recheneinheit und der Reohner-Programmateuerelnhelt übertragen. Die Reohenmodul-Auagangsmultlplexelnheit y> hat die Aufgabe« die Auegangssignal· eines Rechenmoduls über die Ausgangskanäl· in den richtigen assoziativen Speicher zu steuern. Di· Hultlplexelnh«it JO besteht aus «lnea Satz fester Kanal·« dl· Jeweils Oder-Schaltungen alt M Eingängen, eine Speioheradressen-Decodierschaltung und die nötig· Torsteuerlogik enthalten. Dl· Multiplexeinheit wird weIter unten noch la einzelnen besprochen. Da al· mehrer· Kanal· besitzt, kann dl· Multiplexeinheit viel· Anprderungen parallel zu den assoziativen Speichern übertrag«*
Eine Speicherateuerinformationseinheit 42 ist eine Codlerschaltung, dl· ein Eingangssignal aus dor Rechner-Prograamsteuereinhelt 26 empfangt und ein Ausgangssignal zu der Rechenaodul-Ausgaberaultlplexelnhoit 50 sendet. Diese Auegangeinformation enthält das vom Speloher auszuführend· Programm, den Kamen des die Anforderung sendenden Rechners« dl· Bezeichnung
BAD
009851/1558
dea Rechennodulpufferregisters, das die angeforderte Information aus dem Speicher empfangen soll, und die Bezeichnung des Hauptregisters. In dem Rechenmodul, das die aus dem Speicher entnommene Information empfangen soll.
Den assoziativen Speichern 16, 16a und I6n sind Eingabe« relhenspelcher 44, 44a bzw. 44m zugeordnet. Diese Reihenspeicher sind "Zuerst hinein, zuerst heraus"-Pufferspeicher, die die Speicher- und Entnahmeanfordertmgen für Ihre jeweiligen assoziativen Speicher vorübergehend festhalten. Diese Anörderungcn werden aus den Rechenmodulen über die Reohenmodul-Ausgabe- «ultlplexelnhelt 30 in die RelhenspeIcher Übertragen. Dl· Ausgabeeignale der Speicherdateneingabereihen bestehen au· Datenwort- und Steuerlnformatlonon· Diese Ausgangssignal· werden in die Jeweiligen assoziativen Speicheraodule gebracht, wenn aus dea Speicher eine Anforderung naoh neuer Arbeit vorliegt. Jeder Reihenapelcher besteht aus einem Sats von Registern, deren Eingänge duith einen Bingabering und deren Ausgänge durch einen Ausgabering gesteuert werden· Eine genaue Beschreibung der Eingabereihenspeicher 44 folgt welter unten. Eine Ausgabevorrichtung 46 empfingt Daten aus den Rechenmodulen Über dl· Rechenmodul-Ausembeaultlplex·Inhelt 30 und Leitungen 838. DIo Ausgabevorrichtung übertraft die Daten in die richtigen Ausgabemedien, wie z. B. Binder» Karten» gedruckte Formulare und dergleichen.
Dl· Eingabevorrichtung 10 eapfängt Anforderungen naoh neuer Arbeit aus den Rechenmodulen über die Rechenmodul-Ausgabe- Kultiplexeinhelt 30. Di« Eingabevorrichtung besteht aus Einheiten» die Imstande sind, Daten in das System zu Übertragen. Diese Eingabeinheiten können mit Band, Karten» Platten und dergleichen arbeiten. Wie bereit· erläutert» leitet die Eingabevorrichtung bein Empfang einer Anforderung nach neuer Arbelt der Spelcherauagabemultiplexelnhelt 12 Jegliche neue Arbeit zu, die ausgeführt werden muJ.
BAD ORIGINAL
009851/1558
U740A7
Die assoziativen Speichermodule 16, lfaa und ICn sind zum bedingten löschenden Auslesen eingerichtet. Bein bedingten löschenden Auslesen wird Jedes angepaßte Wort im Speicher lösohend ausgelesen, wenn es keine Sondermarke aufweist. Wenn ein Wort diese Sondermarke besitzt, wird es bei der Leseoperation nichtlösohend ausgelesen, was noch im einzelnen beschrieben wird.
Der assoziative Speichermodul enthält außerdem die Verbindungelogik, die zum Informationsaustausch mit der SpeicherausgabemultiplexelnhHlt 30 nötig ist. Der assoziative Speicher wird noch im einzelnen beschrieben.
Die Rechner-Programmsteuereinheit 20 1st «ine Codler-, Decodierund Zoltateuervorrlchtung, die den Funktionseinheiten des vorliegenden Systems die richtigen Toreignale zuleitet; siehe auch Fig. 17A, 17B und 17C.
Die assoziativen Speichenr.odule 16, l6a und I6n von Pig. 2A gleichen einander.
BlnMre "Daum"-Programmierung
Bei der Programmierung des Systems wird eine binäre Baunstruktur benutzt, um die verschiedenen Wörter «Ines Befehlssatzes in Besiehung zueinander zu bringen. Unter einer binären Baumstruktur wird eine topologlsche Anordnung verstanden, in der die Abzweigstellen oder Knotenpunkte dadurch gebildet werden, dafl höchstens swei Zweige zusammenkommen, um einen einzigen Zweig tu bilden. Der Vorteil dieser Struktur fUr das Programm besteht darin, dafl mehrere Verarbeitungseinheiten gleichzeitig entlang der Zweige des Baums arbeiten können. Bei den herkömmlicheren Prograramlerungaverfahren werden die Befehle in einem Satz von aufeinanderlegenden Wörtern gegeben, und ein einziger Recliner geht von einen Wort des Befehls aus zu den folgenden Wörtern welter.Die binäre Baunstruktur wird realisiert durch ein assoziative;. Kennzeichen, das in Jedem Daten-oder Befehlswort la
Speicher erscheint,
0C98E1 /1£E0 BAD
Wenn dieses Kennzeichen rlohtig autgedeutet wird« zeigt es« wo daa betreffende Wort in die Baumatruktur hineinge· hurt.
'ig* 5A Mlgt die Aufteilung des Befehlswortes in «eine Hauptfelder. Die Aufgaben- bzw. Probleanunner lat eine eindeutige Identifizierung für Jede Aufgabe« die la Reohenayatea enthalten aeln kann. Daa Statuefeld gibt gewlase Informationen Über ein Wort» z. B., ob ea ftlr die Rechnung bereit lat oder nicht, ob ea ein Befehl Ist otfer nicht» ob ea eine Konstante lat oder nicht» uaw. Daa Kennzeichen Bit ••inen Indexen lat daa Hauptfeld für die assoziative Intj nahm·, obwohl manchmal die aaaozlatlve Operation auf elna ■ oder mehrere der anderen Pelder angewandt wird« Der Haupt»
teil dea Kennzeichen» gibt den Namen dea Bauoa an« wanrend der > Index zeigt, wohin ea in topologlaoher Beziehung tue übrigen Teil dea Baum» fällt. Daa Codefeld gibt an« welche Art von Operation auazufUhren let. Der Gegenstand ^itea) und dl· Indexe aind bestimmten Codea zugeordnet und geben den Ort ! anderer Wörter, auf die Bezug genommen werden soll« mn· Sin • zuaätzllchea Steuerfeld, daa in der Daratallung von den anderen Feldern dea Wortea durch einen doppelten Strich getrennt lat« atellt Steuerinformationen dar« die In bestimmten FUlen mit dem reatllchen Teil dea Wortea wandern« obwohl ale nicht al· Teil da· Speloherwortea in den Speichern gespeichert werden.
Flg. 5B zeigt die Aufteilung eines Datenwortea In Felder. Dleae Unterteilung entspricht der in Fig. 5A gezeigten« 'aber die Daten können sich Über den Toll des Wortes erstrecken, der für die beiden Felder des Codea und des Gegenstandes benutzt wird. Sa folgt eine vollständigere Beschreibung dieser Felder.
BAD ORIGINAL
009851/1558
U74047
-17-Aufgaben-» bzw. Probleamumner
Die Aufgabennuamer (Flg. 5Λ und 5B) let eine elndutlge Bezeichnung für Jede Aufgabe· die eich su Jedem beliebigen Zeltpunkt In dem ReCheneyatem befinden kann. %m sind ausreichend viele Informationsbite vorgesehen« ua die größtmögliche Aufgabennumaer« die erforderlloh sein kann« unterzubringen.
atatue
Die Verwendung des Statusfeldes bildet eine Grundlage für die Operation des Systeme. Folgend« Statusaarken sind aBglloJts
J Alle Befehlewörter erhalten das Statussyebol "X".
& Dieser Statue wird Daten gegeben« die auf nehr als eine Art verwendet werden sollen. In wesentlichen steuert er die nichtlöechende Entnahme von Daten aus den Speicher.
Jl Datenwärter, dl· tu* Rechnen bereit» sind« werden alt dee Syabol "R" gekennzeichnet. Dieses 8yabol benutzt ein Rechenmodul, ua sine aeeoilative Entnahae auszuführen« wenn er Arbelt anfordert. Als Datenaktlvlerungasjabel 1st es ein wichtiger Teil der steuernden Informationen.
T Dieses Symbol bezeichnet ein Datenwort« das vorübergehend zur Verwendung bei· Rechnen verfügbar gemacht wird. Allgemein gesprochen« können« wenn den Baum hinunter vorgegangen wird« nur die Datenwttrter mit einem "T"-3ymbol entnommen werden« ua beim Rechnen verwendet zu werden. GewUhnllch erfolgt die Entnahme löschend.
009SS1/1SS8 bad o«^M
147*047
Di·· 1st das Symbol für «ine Frogran»- konstante und wird als solches alt den Frogranmbefehlen eingelesen. In diesen Falle hat o· Jedoch daa in Pig· 5B gezeigte Fornat de· Datenwortes.
3 Die· seigt an» dafl eine bedingungslose Verzweigung auf die Ausführung de· Befehle folgt» in dem das Symbol "B* erscheint.
Diese Symbole schließen einander nicht aus» sondern können in verschiedenen Kombinationen auftreten· Insbesondere treten "R" und "T- sowie "R" und "C" zusammen auf· Veiter tritt daa "B"-3ynbol nanohnal »mannen alt dta "!"-Synbol auf. Die genannten Symbole werden in herkömmlicher Welse oodlert» damit die auezufUhrenden Operationen sich besser darstellen lassen. Ein dafür geeigneter Code benötigt nicht mehr al· ftlnf Bits.
Kennzeichen und Kcnnzelchenlndexo
Jeder Baum von Befehlen lat durch ein Kennzeichen charakterisiert. Da die Aufgabennuamer eine eindeutige Kennzeichnung für Jede Aufgabe in dem System bildet» kann ein bei einer Aufgabe verwendet«« Kennzeichen in einer anderen Aufgabe wiederverwendet werden. Der Kenn Index zeigt die Lage eines Wortes in der Baumstruktur an. Z. B. 1st bei dem Kennzeichen Y011 in Fig. 6 Y der Name des Baume» zu dem dieses Kennzeichen gehurt» und der Index 011 gibt an» dafl da· Wort der rechte Zweig eines linken Zweiges des Baums 1st. Das läflt sich wie folgt erlluterni Wenn man die Indexe von rechts nach links liest» erscheinen binäre Nullen als Leerstellen» bis die extrem rechte Bins erscheint. Diese Nullen sind ohne Bedeutung. Welter 1st auch die extrem rechte Eins ohne Bedeutung» aber sie zeigt an» da0 die links von ihr stehenden Nullen und Einsen bedeutungsvoll sind. Die bedeutungsvollen Nullen und Einsen geben die
BAD ..ORiGJNAL.
009851/1558
U74047
Rlchtung dtp Zweig· an, und zwar bezeichnet eine "O" einen linken und eine "1" einen rechten Zweig. Bei dem Kenn· zeichen Y011 ael alao angenommen, dafl daa Inde*feld Inageaamt vier Bite voraleht. Xn dleaen Falle let daa extren rechte Indexbit eine "0" in den binären Speicher« die aber« da ale ohne Bedeutung 1st» in Flg. 6 al· Leeretelle dargestellt lat. Daa dritte Bitevon link· 1st eine "1", und da; el· dl· extrem rechte "1" 1st« lat ale ohne Bedeutung. Von den übrigen beiden Bit· lat d .» erste Bit von link« ein· "0", die anzeigt, dafi dleeee Wort zu einem groflen linken Zweig gehurt. Da daa zweite Bit von link· eine "1" lat, bedeutet dlea, dafl daa Wart su einen rechten Zweig de· vorher erwähnten linken Zweiges gehurt.
Die Verwendung der Kennzelohenlndexe enaOglloht es, von jedem gegebenen Satz von Indexen den Index dea nächsten Wortes unter Jeden gegebenen Wort in der Baunatniktur abzuleiten und auSerdem den Index für dasjenige damit verbundene benachbarte Wort abzuleiten» das suaamnen Bit dea gegebenen Wort ala die Operanden für die nächste Operation dienen wird.
Code und Oegenatand
Daa Codefeld (Flg. 5A) bezeichnet die Üblichen Rechenoperationen, wie z. B. Addition« Subtraktion, Multiplikation und Division. (Die Multipllkatlonsoperatlon wird duroh da· Sternchen angedeutet.) Welter· Bezeichnungen aind dl· Operation mit absolute» Wert (ABS) und drei Sonderbezelohnungen (D, L und IF). Diese Sonderbezelohnungen nennen in de« Oegenstandfeld auf andere Wörter Bezug. In Flg. 6 hat z. B. der Befehl mit den Kennzeichen Y001 und den"Code D den Oegenatand A. Daa bedeutet, dafl Daten, deren Kennwort A 1st« benOtigt werden, um dieaen Befehl zu aktivieren. Ein Beispiel für einen Befehl mit Code L let da« Befehlswort mit den Kennzeichen
0098E1/1558 - bad
U74047
Y111111 In Pig. 3· Das Kennzeichen Y))O)I erscheint in Gegenstandfeld dieses Wortes und zeigt so an« daß sun Aktivieren des Befehle ein Datenwort nötig ist, wie es durch den Befehl mit den Kennzeichen YJ1011 errechnet wird.
Der Code "IP" zeigt eine bedingte Verzweigungeoperation an, und zwar wird die Bedingung beet Inet durch die positiv· oder negative Beschaffenheit des Wertes« der durch den Befehl Io rechten Zweig« der dem IP-Befehl vorausgeht, errechnet wird· Sin Beispiel zeigt PIg. 3, wo das BefettXtfirort alt den Kennzeichen Y111 den Code IF aufweist. Wenn der Wert des Resultats des Befehls mit den Kennzeichen Y1111 positiv 1st, verläuft die Rechenoperation den Baumhinunter unter Verwendung des Resultats, das durch den Befehl alt den Kennwort Y1101 errechnet wird, aber wenn das Resultat des rechten Operanden negativ 1st, wird der Lauf der Rechenoperation so zurückgeführt (siehe die gestrichelten Linien)» dafl er wieder durch die Schleife geht unter Verwendung des Wertes des linken Operanden. Die gestrichelte Verbindung wird dadurch beatlant» daJ der Gegenstand in dem Wort mit des IF-Code ein "X" 1st und dafl die Gegenstände in den Wörtern, zu denen die Terblndung hergestellt wird» ebenfalls "X'-Sjrabole sind·
Wenn ein Wort sub Speichern von Daten verwendet wird» werden das Codefeld» das Oegenstandsfeld und das Gegenstaadslndexfeld kombiniert, ua möglich·t viel Fiats für 41« Oaten zu schaffen, wie es Flg. 5B zeigt. Wenn ea sich bei den Daten ua einen numerischen Wert handelt wie bei den hler betrachteten Beispielen, besteht dieser aus eines algebraischen Vorzeichen und der binären Darstellung der Zahl in herkömmlicher Fora, die der verwendeten Recheneinheit angepaßt 1st.
BAD ORIGhNAL
009851/155«
U74047
Steuerfeld
Wie schon erwähnt worden let, bildet das Steuerfeld keinen Teil des Speicherwortes« sondern es stellt Steuerbefehle dar, die zusammen mit dem Wort Übertragen werden können. Wenn z. B. eine Eingabevorrichtung ein Wort in das System hineinbringt« enthält das Steuerfeld den Code« der den Speicher angibt« in den das Wort gespeichert werden soll« ganz gleich, ob es sich um ein Befehlswort oder «ine Programmkonstante, 3ta>tus X bzw. PC« handelt. Zn diese» Fall« i»t da* Steuerfeld durch ein Zusammenstellprogramn vorbereohnet worden. Bei Wörtern, die in einem Spelohr durch einen Reohennodul gespeichert werden, enthält die Steuer inf oma ti on die Befehle, die dem assoziativen Speicher mitteilen« welche Operation er bezüglich des übertragenen Wortes ausführen soll. Wenn ein Rechenmodul einen assoziativen Speicher wegen der Entnahme eines Wortes abfragt« informiert die übertragene Steuerinformation den Speicher« was er mit dem Abfragewort« das gerade übertragen wird« machen soll. Welter werden die Befehle verwendet, wenn der assoziative Speicher das entnommene Wort in den Rechenmodul zurücksendet, um das Wort zu seinem richtigen Bestimmungsort zu leiten. Innerhalb des assoziativen Speichers (Pig. 7) «ind weitere Steuer-Informationen ein Leerplatzbit« das angibt« ob ein bestimmtes Register im Speicher leer 1st oder nicht, ein Anpassungeanzeigeblt« das angibt, ob ein gegebenes Wort eines) Abfragewort angepaßt 1st oder nicht« und ein Markierung«bit, das dazu dient, die in einem assoziativen Speicher bearbeiteten Wörter zu markleren, wenn mehr als ein Wort entnommen werden soll·
Assoziative Logik und Speicher
Ein assoziativer Speicher 1st eine digitale Speichervorrichtung, in der sich eine Aufzeichnung oder ein Block von Informationen befindet, um entnommen oder bearbeitet zu werden«, indem ein
009851/1558
TeIl seines Inhaltes statt seines Speicherplatzes benannt wird. Assoziative Speicher werden nanohaeX auoh ale Inhalteadressierte Speicher bezeichnet·
In Speichern dieser Art 1st es nloht nötig, sich zu merken« wo im Speicher Informationen gespeichert worden sind. Das Auffinden der gewünschten Information erfolgt. Indes nach Ihr aufgrund Ihres Inhalts gefragt wird. Öle Wörter werden durch die Reihen von Zeichen dargestellt. Z. B. zeigt Pig. 7 einen vereinfachten Speicher mit acht wartern zu Je aoht Zolohen. In de» anstelle der herköasnllohen binären Bits alphabetische Informationen gespeichert sind. DIu MI-Blöcke sind binäre Anpassungsanzclgen und dienen dazu. Informationen für die Entnahme zu markieren. Die nit VB bezeichneten Blöcke sind Anzeigen für binäre Leerbits. Wenn sie eine "0" enthalten, 1st die Information in dea Register nloht gültig, und das Register gilt als leer. Eine "l" in einem VB-Blook bedeutet eine gültige Information. Die Register 3# 5 und 8 sind also leer und stehen zum Speichern neuer Informationen zur Verfügung.
Als Beispiel dafür, wie Informationen entnommen werden können, sei angenommen, daß es erwünscht 1st, alle Wörter Ib Speicher zu wissen, die das Wort CAT In den Stellen 1 bis 3 enthalten. Das Wort CAT wird in die Stellen 1 bis 3 des Abfragereglaters eingegeben, und in einer Operation werden die Anpassungeanzeigen für die Wörter 1 und 7 eingeschaltet. Zn nachfolgenden Speicher-Umläufen wird jedes dieser Wüster ausgelesen. BeIa Einschreiben von Informationen in den assoziativen Speicher wird das Wort la ersten leeren Register gespeichert (in dea Beispiel von Fig. 7 Im Register 3). Andere logische Merkmale eines assoziativen Speichere ermöglichen es,
1. Teile eines Wortes oder Wörter la Speloher auszutauschen, ohne die Wörter aus dem Spe loher zu entfernen} auf diese Weise Kann ein einziger Befehl benutzt werden, ua Gegenstände in vielen Wörtern innerhalb, eines Speloherumlaufs zu verändern} dieses Merkmal wird als wahlweises Schreiben bezeichnet}
BAD OR?G!NAL
009851/155*
H74047
2. durch einen einzigen Dcfehl die nächsthöhere oder die näohstnledrlgere Assoziation (Wort) zu erlangenj
3. alle Daten, die einen bezeichneten Wert Über- oder untersohrelten, auszuwählen} dls Entnahne eines so bezeichneten Wertes erfolgt In einen Speloherumlauf durch einen einzigen Befehl) wenn mehrere Auswahlvorgänge erfolgt sind, ist ein zusätzlicher Speioherumlsuf pro Entnahme nutlg« aber die gante Entnahe· wird durch don anfingliehen Befehl bewerkstelligt|
4. in belieb ger, zufälliger Pore gespeichert· Wörter In aufsteigender oder absteigender Folg« su entnehmen duroh eine ale "assoziativer Speioher alt geordneter Entnahme"
bezeichnete Punktion)
5. alle Daten zwlsohen bezeichneten Orensen auszuwählen und ein Wort zu entnehmen. Diese Operation erfordert nur zwei Sp»ichcrumliiufe; ein zusätzlicher Speicher-Umlauf pro Nehrfaohauswahl vervollständigt die Operation·
Oemäfl Pig. 8 dient ein Bingabereglster 48 dazu« Über Ilngabe- · schalter und Abdeokaohalter entweder ein Wort« das la de« aseozla- ;
tlven Speichersystem gespeichert werden soll« oder ein Abfrage· ! wort, As die Entnahme eines oder mehrerer Wttrter aus dem assorletIren Speioher bestimmen soll» zu empfangen. Mit Hilf· des Registers 1st es möglich, diejenigen Bitstellen, die bei der Abfragung nicht benötigt werden« abzudecken. Dl· Funktion des Eingaberegisters wird duroh Steuerleitungen 50 gesteuert. Sin erstes Wortregister 52 zeigt, wie auch Jede· der anderen Wortregister in Flg. 8 aufgeteilt ist. Die Register tragen die Bezugsziffern 54, 56 und 58. Die Aufteilung zeigt» daiJ Jedes Wortregister eine Leerbitstelle, eine allgemeine Bi te te Ue und mehrere Speloherbl te teilen enthält, die zur Darstellung numerischer oder alphabetischer Zeichen zueturaengrupplert wesfcn können. Außerdem sind zwei Bereichsbitstellen gezeigt, eine niedrige Bitstelle und eine hohe Bitstelle. Diese letztgenannten beiden Bititellen sind für die
Erfindung nicht von Bedeutung. PAD ORIGINAL
«* 009851/1558
U7A047
-21-
Dem Wortregister 52 fUr Wort 1 ist eine Wort-1 -Steuer·lnrlohtung 60 zugeordnet« dea Wortregister 54 für Wort n-2 let eine Wort-n-2-Steuereinrlchtung 62 zugeordnet, den Wortregister 56 für Wort n-1 1st eine Wort-n-i-Steuereinrichtung 64 zugeordnet, und den Wortregister 58 für Wort η 1st eine Wort-n-SteuereInrlchtung 66 lugeordnet. Die Wort-I-Steuereinrichtung 60 bestimmt, wenn ein Wort in das Wortregister 52 einzuigen ist und wenn ein Wort aus den Wortregister 52 zu entnshaen 1st· Sie wird ihrerseits gesteuert duroh die Leerbltsohaltung, falls Informationen In das Wortregister einzuführen sind» und durch eine Anpassungsoperation· falls ein Wort aus den Register entnommen werden soll. Die Gesamtsteuerung des Speichers erfolgt duroh eins Speichersteuereinheit 68, die duroh Spelohersteuer* lnformationen betätigt wird, welohs aus sines) Reohenmodul Über die Reohenaodul-Auegabemultlplexelnhelt 30 (Flg. 2 B sowie 9 A4 9 B und 9 C) und die Steuerschalter empfangen werden· SteueranseIger 70 werden abgefühlt, um SteuerInformationen für die Spei* eherauegabemultlplexeinhelt 12 Fig. 2 A und 1OA-1OB su liefern. Die Steueranzeiger 72 liefern ebenfalls Informationen su der Speloherausgabemultlplexelnhelt 12, und zwar insbesondere die Information, dafi der Speicher keine Entsprechung für das Abfragewert enthält. Ausgansjseniel ger 7* werden abceftlhlt, um die Aus· #ngsInformation aus dem Speloher tu der Speloherausgabeaultlplexelnhelt 12 von Flg. 2A (siehe auch Flg. 12) su liefern·
Bin Auswfthlregleter 76* wird beim wahl weise η Sehreiben verwendet, um zu bese lohnen, welohe Bitstellen fttr dleAuewahl der Wortregister verwendet werden sollen, in welohe das wahlweise Einschreiben erfolgen soll, und um weiter zu bestimmen, in welohe Bitstellen der ausgewählten Wortregister eIngesohrleben werden soll. In einer bekannten Ausführung besitzt da« Auswahlregister zusätzliche Funktionen, die aber hler nloht benötigt werden· Dem Auswahlregister 76 sind Steuerleitungen 78 zugeordnet, die die Operation dee Auswahlregisters Überwachen und zelt1loh steuern.
. . BAD Ofi!G!NAL
009851/1558
U740A7
EIn ternärer Zähler 80 und eine Stellenauswahlmatrlx 82 alt Ihren Steuerleitungen 84 haben der Wortstellenauawahl dienende bekannte Punktionen.
Als Beispiel für die Wirkungsweise dee assoziativen Speichers sei das Einschreiben eines neuen Wortes In das erste leere Register betrachtet. In diesem Falle wird das Wort aus einen Reohenmodul Über die Reohenmodul-Ausgabemultiplexelnhelt 30 von PIg. 2 B und die Speichereingabedatenreihe 44 von Flg. 2 A In das Elngaberegieter 48 Übertragen. Außerdem werden entsprechend« Speieherβteuerinformationen in die Speichersteuerung 68 eingeführt. Dies· Informationen steuern den Speicher so» daß er die Leerstellen der Wortregister bearbeitet, um alle leeren Wortregister festzustellen. Durch Schaltungen innerhalb der Wortsteuerelnriohtungen fUr diese Register wird das erste Register» das leer 1st» festgestellt» und die Eingabeschalter für dos betreffende Register werden veranlaßt» wirksam zu werden und das Wort aus dem Eingaberegister 48 zu empfangen. Jytzt wird das Leerbit des Registers» in das die Eingab· erfolgt 1st» auf 1 gestellt und zeigt damit an» daß dieses Register besetzt ist.
Als zweites Beispiel sei die "Zuerst hinein» zuerst heraus"-Schreiboperation betrachtet· (Diese Operation wird auoh FIFO genannt.) Es soll ein Wort am Ende einer bereits vorhandenen Liste von Wörtern In dem Speicher so gespeichert werden» daß ein "Zuerst hinein« zuerst heraus"-System gewährleistet 1st. Das in den Speicher einzuschreibende Wort wird wieder in das Eingaberegister eingeführt zusammen mit Abdecklnforciationen für die Abdeokaohalter» wodurch alle Bits, die fUr die Identifizierung des den Wörtern in der Liste gemeinsamen Namens nicht erforderlich sind» abgedeckt werden. Die Speloherateuerlnformatlon in der Speiohersteuerelnhelt 68 indentiflziert die auszuführende Operation» und es erfolgt ein Vergleich bezüglich des Namens der Liste» um diejenigen Wort-
■ . B;,D ORIGINAL
009851/1558
U74047
reglster festzustellen« die Übereinstimmende Neuen in der Liste enthalten« Durch Schaltungen in der entspreehenden Wort steuerung wird das letzte solohe Uberelnstinnende Wort festgestellt» und von diesen Punkt ab werden die Schaltungen erregt» um das erste leere Register hinter dem letzten übereinstimmenden Register zu bestimmen und to die richtigen Vortsteuersohsltungen zu betätigen, daralt •le das Wort in dem betreffenden Register speichern.
Als drittes Beispiel sei die wahlweise Sohreibfunktlon betrachtet« die auch als Eingabe in ein ausgewähltes Feld bezeichnet wird. In diesem Falle sollen gemeinsame Informationen in ein oder mehr Wortregister eingeschrieben werden» die auf der Orundlage eines Verglelohs ausgewählt worden sind« 8teuerinformationen werden zur Spelohersteuereinhelt 68 und Über die Steuerleitungen 78 übertragen, um das Auswahlregieter 76 zu betätigen, damit es dl· Bitstellen bestimmt» die für Auswahlzweoke dienen sollen» sowl· die anderen Bit stellen, die die zu speichernden Informationen empfangen aollen. Die zu speichernden Informationen werden In da· Blngabereglater 48 übertragen» wie schon erwähnt. In diesem Falle kann ·· sein» da0 mehrere Wortregister mit den Abfragebitstellen übereinstimmen, und ihre entspreehenden Vortsteuerungen bereiten dann die Schaltungen vor» damit sie dl· Bingabesohalter der entsprechenden Wortregister betätigen, um dl· neuem Informationen In dl· ausgewähV ten Blstellen einzuführen· Diese Operation wird ausgeführt, ohne den Inhalt der nlohtgewählten Stellen des ausgewählten Wortregisters zu sturen und natürlloh ohne den Inhalt der nlohtgewählten Wortregister zu ·türen.
Als viertes Beispiel sei die Entnahme von übereinstimmenden Wörtern betrachtet. In diesem Falle bestimmt die Spelohersteuerinformatlon In der Spelohersteuereinhelt 68» das die Bltstellen im Eingaberegister, die nicht abgedeckt sind» die Verglelohssohaltungen in den Wortregistern betätigen» um festzustellen» welche Wortregister ttbealnstimmende Wörter enthalten· Übereinstimmende Wörter in den
BAD OTs1 1QfNAL
009851/1558
U74047
Wortreglstern stellen die Steuerungen der entsprechenden Wortsteuerschaltungcn ein« un festzustellen» welohes daa erste Übereinstimmende Wort Im Speicher 1st. Dieses Wort kann dann entweder löschend oder nlchtlttsehend ausgelesen werden» wie es auch durch die Spelchersteuerinfomatlonen In der Spelohersteuerelnhelt bestimmt wird. Bei einer löschenden Entnahme wird das ursprUnglloh auf 1 ate· hende Leerstellenblt auf 0 rttokgestellt und dealt angezeigt, dsl die Infomation In dem entsprechenden Wortregister nicht mehr gültig 1st· Bei einer nichtlöschenden Entnahme behält das Leerstellenblt den Wert 1 bei und zeigt damit a&, dafl dt« information in de« aohenden Wortregister eine gültige Infomation bleiben soll· Wenn das Leereteilenbit auf 1 eingestellt bleibt» werden neue Informationen, die hereinkommen, um im Speieher gespeichert zu werden» nloht la de* betreffenden Wortregister gespeichert» aber wenn das Leerstellenbit auf 0 gestellt wird, steht das betreffende Wortregister warn Speiehern neuer Informationen zur Verfugung·
Hn Teil der bei Jedem Wortregister beibehaltenen Steuerinformation 1st daa Markierungebit. Dieses wird verwendet» wenn mehrere Überein* Stimmungen mit einem Abfragewort vorliegen· Bei der Entnahme sines Wortes kann das Markierungsbit Gesetzt werden» um die Entnahme des Wortes anzuzeigen. Dies ermöglicht dann die Entnahme aller VBrter, die mit einem gegebenen Abfragewort Übereinstimmen, indesi dl· Entnahme jedes markierten Vortee verhindert wird· Maoh der Intnshme einer Gruppe markierten Wörter können die Markierungen dem rüekgestellt werden, um zukünftige Entnahmen aus derselben Wortgruppe zu gestatten·
Assoziative Logik Regeln für das Einführungen und Ausführen von binären Baumprogrammen
Bei binären Baumprogrammen treten zwei Wortformate auf» ntmlloh Befehlswörter und Datenwörter. Wie schon beschrieben» dient das Statusfeld des Wortes zum Unterscheiden zwischen diesen beiden
009851/1558
U7A0A7
Fornaten. Befehlsfonnatwürter und Datenformatwörter bilden zusacunengenoraoen das Datenwort in Gegenactz zur Steuerinformation·
1. Befehle
Das Befehlsformatwort enthält ein I la Statusfeld, und dl· durch den Befehl aufgerufene Operation wird in Codefold verschlüsselt. Außer den Rechenoperationen gibt es eine datenbetätigt· Operation» Code D, eine listenbetätigte Operation, Code L, und ein· bedingt« Verzweigungsoperatlon. Code IF. Die D-. L- und XP-BefenX· weisen In Ihren Oegenstandsfeidern Bezugsnahoen auf·
Die Daten sind in drei Klassen eingeteilt, nänlloht
a) Programmkonstantent
Alle Prograanlconstanten sind Bit einem PC la Statusfeld markiert· Progranmkonstanten sind ein Integraler Teil de· Prograambauas, aber sie sind DetenformatwOrter und keine Befehle·
b) Konstantem
Konstanten sind alt eines C la Statuefeld Markiert* Konstanten sind DatenformatwOrter, welohe Befehle aktivieren« Konstanten werden gewtthnlloh nlchtlusohend aus den 8peioher ausgelesen· EiA kevwtent·· Datenformatwort kann aus den 3p«loher gelttsdht werden durch dl· Anwendung des wahlwelsen Schreibens. Bein wahlwelsen Sohrelben kann nan das Leerstellenbltwort der ausgewählten konstanten Datenwörter so einstellen, daß Leerreglster angezeigt werden·
e) Vorläufige Patent
Tor läufige Daten werden durch ein T im Statusfeld markiert· Wie die Konstanten aktiv leren vorläufige Datenformatwört«r Befehle. Wie der
Name besagt,
werden die vorläufigen Datenfornatvßrter normaler-
009851/1551 ' "
U74047
-29-weise löschend aus dem Speloher ausgelesen.
Ein Reohenmodul führt zwei Hauptoperationstypen aus« nämlich die Beladungsoperation und die Laufoperation. Wie an anderer Stelle erläutert wird« suoht ein Rechenmodul« der frei für dl· Ausführung von Arbeit ist« naoh Arbelt« die er ausführen kann. Ein· Eingabevorrichtung« In der sich Eingabelnformationen befinden« die in das System eingebracht werden sollen« stellt ein Berelt-Signal« das durch einen Rechenmodul abgefragt werden kann. Dies 1st das Mittel zum Einleiten einer Beladungsoperation· Die Laufoperation wird eingeleitet durch Bereit-Marken in Datenformatwörtern, dl· noch erläutert werden. Die Beladung·· und dl· Laufoperation des Systems lassen sloh am besten an Hand der nachstehenden Regeln« dl· diese Operationen bestimmen« verstehen. Dies· Regeln geben an« was der Rechenmodul mit jedem Wort in Abhängigkeit von dessen Inhalt tun soll.
Beladungsoperation
REGEL 1: Naoh einer Entleerungsoperation (die in anderen Regeln noch beschrieben wird)« oder wenn er naoh einem "stromlosen" Zustand zuerst In Betrieb gesetzt wird« beginnt der leer· Reohenmodul die Beladung« und zwar fragt er dl· Eingabevorrichtung ab« um zu sehen« ob si· Im Bereit-Zustand 1st und damit das Vorliegen von Eingangswörtern anzeigt. Wenn dl· Eingab·vorrichtung nicht bereit 1st« geht der Reohenmodul zur Laufoperation über und verhält sieh entsprechend Regel 6. Wenn dl· Eingabevorrichtung b«relt 1st« wird ein Wort des Beladungabloclce von Wörtern sun Reotensodul übertragen.
Wenn das Wort« das der Reohenmodul empfängt« ein Befehl 1st« was duroh ein I im Statusfeld angezeigt wird« oder wenn es «ine Programmkonetante 1st« was durch «in PC im 3tatusf#ld angezeigt wird« muß das Wort in dem richtigen Speloher gespeichert werden« wie es duro den Beladungebefehl definiert wird. Der rlohtlge Speicher 1st vorher während einer KompJLJorungsoperation errechnet worden« um dlo richtige Vetellung der Befehle auf dl· zur Verfügung stehenden Speloher zu ermöglichen.
009851/1658 δΑΧ
.30- H740A7
REOEL 2t Wenn Regel 1 nloht zutrifft, 1st das Wort entweder eine Konstante, angezeigt durch ein C im Statuefeld, oder ein vorlKuflges Datenwort, angedeutet durch ein T im Statusfeld· Der Reohenmodul fragt alle Speicher-nach Wörtern ab, die durch das Kennzeichen des Boladungswortes definiert sind, aber in dem Speicher im Oegenstandsfeld identifiziert werden· Welter werden nur die Wörter auagewtthlt, die Befehle sind, wie es duroh ein I Im Statusfeld und alt Code D im Codefeld angezeigt wird· Alle eo entnommenen Wörter werden markiert. Dann erzeugt der Reohenmodul ein neues Wort unter Verwendung des Kennwortes de· Code-D-Wortes alt der Zahl aus dem Status-C- oder Status-T-Wort» wobei er zu den neu gebildeten Wort das C bzw· das T Überträgt. Dieses neue Wort wird dann wieder in demeelben Spelohea aus dem das Code-D-Wort entnommen worden 1st» gespeichert. Dieses Wort wird mit dem Berelt-Symbol R im Statusfeld markiert und auf "Zuerst hinein, zuerst heraus"-Art in bezug auf etwaige andere Wörter mit Status R im selben Speicher gespeichert· Wenn das so gespeicherte Wort ein Status-C-Wort 1st« wird der Speieher auf den laufenden Stand gebracht durch Löschen des entsprechenden alten C-Wortes, wenn ein solches existiert. Die Operation nach Regel 2 wird wiederholt, bis keine weiteren korreepondlerenden Wörter entnommen werden·
Regel 3t Welter· Wörter werden eingeführt duroh Wiederholung der In Regel 1 oder 2 definierten Operationen bis zum Bnde des Beladungsblooks.
Regel 4t Mach AbsohluJ der Beladung eines Block·* was duroh die Blngabevorrlohtung signalisiert wird» hllt der Reohenmodul die Aufgsbennummer zurück, dl· die Wörter In des vorher beladenen Blook Identifiziert» und befragt mit dieser Aufgabennummer all· Speicher naoh den nooh unmarkierten etatus-I-Code-D-WOrtern.
Entnommene und markierte Wörter werden duroh das Kennzeichen de· entnommenen Wortee erneut naoh einem Status-C-Wort abgefragt. Das Status-C-Wort wird so gespelohert, wie es entnommen wird, nur wird
009851/155*
BAD OFUGiNAL
U740A7
ββ mit den Status T anstatt nlt den Status C gespeichert. Außerdem wird durch die Speicheroperation dem Wort die Statue-R-Marke hinzugefügt, und das Wort wird auf "Zuerst hinein, zuerst heraus"-Art In bezug auf H gespeichert· Die Operation gemMfl Regel 4 wird wiederholt, bis keine weitere Übereinstimmung gefunden wird*
Rer.ei 5: Alle vorher gemMfl Regel 2 und 4 angebrachten Marken werden durch den assoziativen Spelohemodul entfernt, dann leert eich der Rechenmodul und kehrt zur Operation naoh Regel 1 surUok.
Laufoperation
Regel 61 Der naoh Arbelt auohende leere Reohentnodul fragt «inen assoziativen Speichermodul nach einen Berelt-Synbol ab. Es erfolgt die Entnahme eines Datenwortes mit dta Status R, das gemMQ Rttgel 2 odor 4 gespeichert worden 1st, oder «Ine Entnahme, wie alt welter unten bei den Regeln 9, 11 oder 12 erllutert wird. Bei der Entnahme eines R-Wortes aus dem Speicher wird das Wort durch einen löschenden LeeeVorgang gelöscht, wenn es ein Status-T-Wort ist, aber es bleibt Infolge einer nlchtlöschenden Leseoperation im Speicher, wenn es ein Status-C-Wort 1st. Im letzteren Palle wird das Statua-R-Symbol gelöscht. Dieses Wort gelangt über da« Befehlspufferregister 14 (Pig. 2B) in das Befehlatglater 28.
Regel 7 1 Kennwörter für den anderen Operanden und für den Befehl werden vom Kennwortgenerator 36 aufgrund des Kennwortes des ersten Operanden errechnet, das gemäfl Reg4 6 entfieamen oder geatti Regel 10 errechnet worden 1st.
Jetzt enthält der Rechenmodul in seinen drei Hauptregistern entweder einen linken Operanden oder einen rechten Operanden (je nachdem, ob das Status-R-Wort ein linker oder ein reohter Operand war), das Kennwort für den anderen Operanden und das Kennwort für den Bo fehl.
BAD
009851/1558
U7A047
RePie 1 8t Der andere Operand wird entnommen, und zwar wird auf Status T oder FC hin abgefragt und eine löschende Entnahme bei einen Status T-Wort, aber eine nlchtluschende Entnahme bei einem Status PC-Wort ausgeführt. Der Befehl wird entnommen unter Verwendung des nach Regel 7 erzeugten Konnfeldee. Der andere Operand wird im rechten Operandregister 22 oder im linken Operandregister 20 Über das Operandpufferregister 16 (Flg.2B) gespeichert» wMhrend der Befehl im Befehlsregister 28 über das Befehlepufferregleter 14 gespeichert wird.
Regel 9: Wenn naoh dem Befehlewort «ine binär· Operation erforderlich ist und kein anderer Operand nach Regel 8 zur Verfügung steht, stCSt der Rechenmodul den ersten Operanden ab« Indem er ihn wieder im Speicher speichert. Wenn der erste Operand der link« Operand 1st« wird er mit einem Symbol für Status R und Statue T versehen und naoh "Zuerst hinein, zuerst heraus"-Art In bezug auf A gespeichert. Wenn der erste Operand der rechte Operand 1st, wird er mit Status T Im ersten leeren Register gespeichert. Hler entleert eloh also der Rechenaodul und sucht gemMfi Regel 1 naoh neuen Berelt-Symbolen.
Regel IQi Wenn Regel 9 nicht zutrifft« erfordert der Befehlskode entweder eine un&re Operation oder eine binäre Operation« wenn der andere Operand zur Verfügung steht· In diesem Falle kann die angeforderte Operation ausgeführt werden, und zwar geeohleht dies in der Recheneinheit. Das Resultat der Operation wird aus der Recheneinheit zum Befehlsregister übertragen unter Zurückbehaltung des Kennwortes des Befehls, wie es vorher naoh Regel 7 errechnet worden 1st. Der Reohenmodul arbeitet nun den»Baum hinunter welter« indem er zur Regel 7 zurückkehrt.
Regel 11: Wenn der Befehl den Status B hat« was ein· bedingungslose Verzweigung anzeigt, wird eine Abfragung naoh allen WOrtern, die durch die Aufgabennunmer identifiziert werden, eingeleitet« da« Kennfeld aus dem Befehlswort wird zum Abfragen im Oegenetandsfeld benutzt und mit Status I wird Jedes Wort bei seiner Entnahme markiert. Aus Jedem entnommenen Wort wird ein neues Wort gebildet. Indem das Kenn·
BAD ORsQSNAL -~
009851/1558
U74047
feld aus den entnommenen Wort» aber die Daten aus dem Befehlswort verwendet werden· Diese Wörter werden mit Status R und Status T naoh "Zuerst hinein« zuerst heraus"-Art bezüglich R gespeichert. Dl· Bildung solcher Wörter wird nach dieser Regel fortgesetzt» bis keine weiteren übereinstimmenden Wörter vorliegen, und dann werden dl· Markierungen entfernt. Der Reohenmodul arbeitet weiter den Baum hinunter, indem er zu Regel 7 zurückkehrt.
wird
Regel 12 t Ea/nun ein IP-Befehl betra***e>ti
a) Wenn der rechte Operand positiv 1st, wird weiter den Baum hinunter gearbeitet unter Verwendung der Daten de· linken Operanden. Das bedeutet» dad dl· Daten Im linken Operandregister 20 in das Befehlsregister 28 übertragen werden» ebenso wie Jedes Resultat Jeder Rechenoperation in das Befehlsregister übertragen wird« Dann wird die Operation gemäß Regel 7 fortgesetzt.
b) Rechter Operand negativt
(I) Es wird naoh Wörtern mit Status I nach Cod· D abgefragt unter Verwendung des Gegenstandes aus den XP-Wort für den Abfragegegenstand· Jedes Wort «14 bei der Entnahm· markiert. Aus Jedem Wort wird ein neu·· Wort gebildet unter Verwendung des Kennfeldes des entnommenen Code-D-Wortes und der Daten aus dem linken Operanden· Das so gebildet· Wort wird alt Status T und Status R naoh "Zuerst hinein» zuerst heraus"-Art bezüglich R gespeichert. Die Entnahm· und dl· Bildung neuer werter wird fortgesetzt, bis kein· Ubereinatiaeung mehr besteht·
(II) Es wird an Hand der Aufgabennummer naoh nicht markierten Wörtern mit Status I und Code D abgefragt und Jedes Wort bei seiner Entnahme markiert. Aus Jedem entnommenen Wort wird erneut abgefragt unter Verwendung des Kennfeldeβ des entnommenen Wortes als Kennzeichen für die erneute Abfragung, wobei ebenfalls der Statue C bei der erneuten Abfragung benutzt wird.
009851/1558
U740A7
-31-
Das Status-C-Wort wird umgewandelt in Status T und Status R, und dann wird dieses Wort naoh "Zuerst hinein, zuerst heraus"-Art bezüglich R gespeichert. (11) wird wiederholt« bis keine weitere Übereinstimmung festgestellt wird, wodurch die naoh Regel 12(b)(l) und 12(b)(ll) angebrachte Markierung beseitigt wird. Dann entleert sich der Reohennodul und sucht nach neuer Arbelt gemäß Regel 1.
Regel 13* Wenn der Boden des Baues· bein Versuoh, die Regel 7 anzuwenden, durch den Kennwortgenerator 36 entdeckt wird, wlrtf das dann im Befehlsregister 28 stehende Resultat zur 'Ausgabevorrichtung übertragen, falls der Status nloht B 1st. Wenn der Status B besteht* wird naoh Regel 11 vorgegangen« In beiden Pillen entleert sich der Reohennodul und arbeitet wieder naoh Regel 1.
Beispiel
Die nachstehende Beschreibung der Operationen betrifft speziell die Beladungs- und Laufregeln· Es sei z.B. die Aufgab· der Berechnung von Y -/6 -Ta/ betrachtet· Bei dieser Aufgabe 1st eine Wiederholungssohle ife für die Berechnung der Quadratwurzel erforderlioh sowie eine bedingungslos· Verzweigungsoperation, wenn «in errechneter Wert zweimal bei der Rechnung verwendet werden «oll.
Flg. 2 stellt in Baumfom das Befehlsprograasi und die Eingangsdaten für dies· Aufgabe dar· Ea sei angenouaen, dal dl· Befehl· und Daten zur Eingabe, bereit sind, daA der Beladungsvorgang folgt und daB dann die Laufphase eingeleitet wird. FUr die Zweoke der Beschreibung sei auf Fig· *A und 4B verwiesen. Dies· Figuren bilden eine symbolische Darstellung der assoziativen Speicher, wobei aufeinanderfolgende Speicherregister gefüllt werden· In der Praxis werden die in Flg. 4A und 4B dargestellten Wörter Über die versohiedenen assoziativen Spe lohe module verteilt.
BAD ORIGINAL
009851/1558
H740A7
neladen
Ein freier Rechenmodul trifft auf eine Eingabevorrichtung im Eoreit-Zustand. Ein Hort wird.aus der Eingabevorrichtung In den Rechenaodul Übertragen. Dlca kann z.B. das Wort am Boden des Daums sein, d.h. das Wort mit den Kennwort Y 1. Da dieses Wort den Status I hat« wird es Genuß Hegel 1 im richtigen Speicher (Zeile 1, Flg. 4A) gespeichert, und zwar 1st der richtige Speiohcr vorher fUr das betreffende Wort durch die Programmkompillerun£sopcratlon definiert worden· (Die Adresse des richtigen aaooziativen Sp-lchermodulo erscheint im Speloherte11 der Steuerung, wie an anderer Stelle beschrieben 1st·)
Nach den Speichern des Wortes Y1 wird ein zweites Wort aus der Eingabevonichtung ausgelesen. Dies kann s.B. das Wort mit den Kennfeld Y110101 sein. Der Status 1st wieder I, so d*0 dieses Wort in Speicher gespeichert wird (Zelle 2, Pig. 4A). Nun wird wieder ein Wort aus der Eingabevorrichtung ausgelesen« und »war wird ongenonr.en, dafl es daa Wort mit dem Kennfeld Y1101111 1st· Dieses Wort hat den Status PC und wird · wieder ecmäB Regel 1 im Speicher geepoichcrt (Zeile }, Pig. 4A), Derselbe Rechenmodul speichert dann nacheinander alle in den Baum gezeigten Wörter. Diese Wörter sind auf den Zellen 4 bis 19 von Pig. 4A dargestellt·
Nach dem Beladen des Speichers mit den Baun stehen die Daten für die Aufgabe an der Eingabevorrichtung zur Verfugung· Es sei angenommen, daß der Reohenmodul dann das Wort mit Gegenstand T empfängt. Dieses Wort hat den Status C, so dafl die Regel 1 nicht zutrifft, und der Rechenmodul arbeitet nun welter nach Regel 2·
Mit dem Wort mit dem Ocgenetand T, das in das Rechenaodul· Befehlsregister 23 eingebracht worden 1st, wird durch die Abfragung daa Wort entnommen, dessen Kennfeld Y11101 auf Zelle
009851/1558
BAD
von Fig· 4a gezoigt ist. Aue diesen beiden Wörtern wird nach Re* gel 2 ein neues Wort cebildet unJ Im Speicher gespeichert (Zelle 20, Pig· 4A). Dieses Wort hat Status R und Status C und ist daher ein "bereites" Wort, das zur Assoziativen Entnahme durch einen be* liebigen freien Rechenmodul zur Verfugung steht· Hütte im Speicher eiskaltes Status-C-Wort pit diesem gleichem Kennfold gestanden, wäre es zur Zelt der Eingabe dieses neuen Wortes gelöscht worden· Zur Vereinfachung der Beschreibung wird hja> nicht versucht, die Ausführung paralleler Operationen zu zeigen. Nach Abschlufl der Be* ladungsoperatlon wird das Status-R-Wort bearbeitet· Da nur ein ein* slges Status-I-Wort mit dem Oecenstandsfeld T vorliegt« wird hier* durch die Beladungsoperation in bezug auf daa Wort alt den Gegen* standsfeld T abgeschlossen·
Nun empfängt der Roohenaodul das Wort alt dem Qegenstand K und ent* nimmt dann das Oefehlsforraatwort Y1101011 (Zeile 16« Pig. 4A). Aus diesen beiden Wörtern wird nach Regel 2 ein neues Wort gebildet und la Speicher gespeichert (Zelle 21« Pig· 4A). Da wieder nur ein ein* zlßca Wort mit dem Gegenstand K vorliegt, wird daa naohste Wort alt dem Kennwort X aus der Eingabevorrichtung in den Rochenmodul Übertragen. Dieses Wort dient dazu, in Verbindung mit den entsprechenden D·fehleformatwörtern vier neue im Speicher zu speichernde Wörter zu erzeugen, da der Wert von X an vier Stellen in dem Programm benötigt wird. Zuerst wird daa Befehlewort Y11001 (Zelle 9« Flg.4A) entnommen, und aus ihm wird In Verbindung mit dem DatenXraatwort ein neues "bereites" Wort gebildet, wie es auf Zelle 22 von Flg· 4A gezeigt 1st. Mit demselben Datenformatwort, aber Jetzt mit einem Bofehleformatwort, das das Kennfeld Y11010001 hat (Zelle I7, Fig.4A), wird das neue "bereite" Wort erzeugt und im Speicher gespeichert (Zelle 2}, Pig, 4B).
Xn gleicher Weise werden die bereiten Wörter, die auf den Zeilen 24 und 25 von Pig. 4B gezeigt sind, aus diesem selben Datenwort in Verbindung mit den Befehlswörtern der Zeilen 18 bzw. 19 von Pig. 4A erzeugt.
BAD ORIGINAL
009851/1558
U7A0A7
Diese Befehle werden bol ihrer Entnahme aus dem Speloher markiert· Da der Block nun fertig beladen 1st» wird Regel 4 befolgt· un etwaige weitere Code-D-Wörter dieser selben Aufgabe zu finden« die la vorliegenden Beispiel die Aufgabe Nr. 3 1st· In diesem PalIe sind alle D-Wörter entnommen und markiert worden in Verbindung mit der Einführung der Daten mit den Kennwörtern T, X und X, und daher 1st keine weitere Operation nach Regel 4 erforderlich· Naoh Abschluß des Beladens fragt nun der Reohenmodul die Speicher nach allen Code-D-Wörtern ab« entfernt die nach Regel 5 benötigten Markierungen, entleert sich und sucht dann nach neuer Arbelt·
Laufen
Ein naoh Arbelt suchender freier Reohenmodul fragt alle Speloher naoh jedem Status-R-Wort gemäß Regel 6 ab. Xn diesem Falle wird angenommen, daß das auf Zeile 20 von Flg. 4A gezeigte bereit· Daten· wort mit dem Kennfeld YHlOl entnommen wird. Bei der Entnahme wird der R-Status in Speicherplatz gelöscht. Da es Jedooh eine Konstante mit dem Status C 1st« wird das Datenwort selbst nlohtlösohend ausgelesen im Gegensatz zur Löschung des R-Symbols· Dieses Wort wird zum Befehlsregister 28 des Reohenooduls Übertragen und erscheint unter der Steuerung des Kennreldgenerators 36 al· der link« Operand. Dl« Kennfelder Yl1111 für den rechten Operanden und YlHl für den Befehl erscheinen dann im rechten Operandregister 22 bzw. im Befehlsregister 28. Die Entnahme des Status-I-Befehls mit dem Kennfeld YlHl (siehe Zeile 8« Flg. 4A) 1st abgeschlossen. Aber der Versuch« da· Status-T-Wort für den rechten Operanden zu entnehmen« 1st erfolglos. Da der Code in diesem Befehl eine binäre Operation erfordert, 1st der rechte Operand zur Ausführung des Befehls nötig. Daher kann der Rechenmodi:! diese Operation nioht ausführen und rauf naoh Regel 9 den ersten Operanden, in diesem Falle den linken Operanden, abstoßen. Dei* linke Operand wird daher zum Speloher surüokgeschickt« wo er Kit Status R und Stutus T auf Zeile 26 In Fig. 4B erscheint.
BAD
U7A047
Dleser Rechenmodul (oder ein anderer freier Rechenmodul, wenn mehr als ein Rechenaodul zur Verfügung stehen) entnimmt als nächstes das bereite Datenwort mit dem Kennfeld Yl101011 (Zelle 21, Flg. 4A). Aus den Kennfeld dieses Worte·« das ein rechter Operand 1st,werden daa Kennfeld YIlOlOOl des linken Operanden sowie das Befehlskennfeld YIlOlOl errechnet. Mit Hilfe des neuen Befehlskennfeldes wird das Befehlswort (Kennfeld YIlOlOl) entnommen, das auf Zelle 2, von Flg. 4A gezeigt 1st. Dieser Defehl erfordert die binäre Subtroktionaoperatlon und benötigt daher sowohl einen linken Operanden al· auoh den zur Zelt verfügbaren rechten Operanden. Oa die versucht· Entnahme de· Statua-T-Y/ortes mit dem Kennfeld des linken Operanden In diesen Stadium erfolglos 1st, muß der Rechennodul wieder den rechten Operanden t\bstoßen, der dann erscheint, wie ·· auf; Leitung^ 27 In Flg. 4 B gezeigt 1st. Dieses Wort erhält Icein Bereit-Symbol, well en ein rechter Operand 1st.
Als nächstes entnimmt ein Reohenmodtfl da* Wort mit dem Kennfeld YIlOOl (Zelle 22, Flg. 4A). Die Kennwörter für den rechten Operanden und den Befehl, Yl1011 bzw· YIlOl, werden aus dem Kennfeld YIlOOl erreohnet. Wie zuvor steht kein rechter Operand mit dem Status T zur Verfügung. Daher wird der linke Operand mit dem Berelt-*Symbol abgestoßen, wie es auf Zelle 28 von Flg. 4B gezeigt 1st.
Das Wort mit dem. Kennfeld Yl 1010001, daa ein linker Operand 1st, wird nun entnommen, und aus seinem Kennfeld wird das Kennfeld YIlOlOOl 1 für den rechten Operanden und das Kennfeld YIlOlOOl für den Befehl erreohnet, wie es Zelle 1$ von Flg. 4A zeigt. Wieder steht kein Status-T-Wort für den reohten Operanden zur Verfügung, und da es für die MuItlpllkatlonaoparation dieses Befehls nZStig 1st, wird der linke Operand abgestoßen und erscheint, wie auf Zelle 29 von Flg. 4B dargestellt.
BAD C-RiGiNAL
009Θ51/1558
U7A0A7
Nun entnimmt der Reohenmodul daa bereite Datenwort mit dem Kennfeld YllOlOOll (Zelle 24, Pig. 4B). Dies 1st ein rechter Operand mit den Datenwert 10. Aus seinem Kennfold findet der Reohenmodul das Kennwort des linken Operanden Yl1010001 (Zeile 29« Fig. 4B). Der linke Operand, der als Statua-T-Wort gespeichert 1st, wird löschend ausgelesen und daher bei der Entnahme gelöscht. Der Befehl mit dem Kennfeld YIlOlOOl (Zeile 15. PIg. *A) erfordert die Multiplikationsoperation, und da nun beide Operanden vorliegen, kann die Operation In der Recheneinheit 38 ausgeführt werden. Das Resultat 100 erscheint Im Befehlsregister 28 mit dem Konnwort des Befehls. Während aloh nun die Operation von diesem Punkt aus den Baum hinunter bewegt, werden Jeweils die Resultate der letzten Operation der linke Operand für die nächst niedrigere Reohenebene und erscheinen im linken Operandreglstcr 20. Das Kennfeld YIlOlOl1 für den reohten Operanden wird erzeugt. Dieser rechte Operand 1st in Zeile 27 von Pig. 4B gezeigt, und zwar wird der Wert 66 löschend ausgelesen und im rechten Operandregister 22 gespeichert. Außerdem wird das Kennfeld YIlOlOl für den Befehl errechnet, und der Befehl, der fUr die Subtraltlon gilt, wie es Zelle 2 von Flg. 4A zeigt« wird aus dem Speicher entnommen. Die Subtraktionsoperation (100 - 66) wird in der Recheneinheit 28 ausgeführt, und da« Resultat >4 erscheint im Befehlsregister 28.
Bei der Bewegung den Baum hinunter wird das Resultat 34 unter Beibehaltung seines Kennfeldes YIlOlOl in das linke Operaoreglster 20 eingebracht.-Die Kennfelder Y11O111 und YUOIl für den reohten Operanden bzw. den Befehl werden errechnet. Der auf Zelle 10 von Pig. 4A gezeigte Befehl wird entnommen, aber es steht kein Status-T-Datenwort für den rechten Operanden zur Verfügung. Daher wird der linke Operand abgestoßen (Zelle 30, Flg. 4B). (Dieses Wort würde tatsächlich im Speicher In dem Speicherplatz erscheinen, der vorher von den Wort mit dem Kennfeld Yl101011 gemäß Zelle 27 besetzt war, da dieses löschend entnommen worden 1st. Zur Vereinfachung der Darstellung 1st das Wort auf Zeile 30 gezeigt, statt den veränderten Status auf Zeile 27 zu zeigen.)
009851/1558
U74LU7
-140-
Nun wird das bereite Datenwort YIlOl101 entnommen. Dies 1st ein linker Operand, und daher wird das Kennfeld Yl101111 des rechten Operanden errechnet. Der rechte Operand 1st eine Programmkonstante (Status PC) und kann gemäß Regel 8 entnommen werden. Außerdem wird der Befehl mit dem Kennfeld Yl10111 entnommen. Dieser erfordert die Multiplikation von 10 χ 2, deren Ergebnis 20 Jetzt Im Befehlsregister 28 erscheint.
In Abwärtsrichtung des Baumes erscheint das Resultat 20 Im echten Operandregister 22 mit seinen Kennfeld Yl10111, und das Kennfeld YIlOlOl des linken Operanden wird errechnet, und das Status-T-Wort (Zelle 30, Pig. 4B) wird löschend entnommen. Die von dem Befehl mit dem Kennfeld Yl1011 (Zelle 10, Pig. 4A) angeforderte Operation 1st die Division, und daher wird Jetzt die Division In der Recheneinheit 38 ausgeführt. Das Resultat von 34 ι 20, das gleich 1,7 1st, steht nun Im Befehlsregister 28 zur Verfugung.
Dieser Befehl hat den Status B, der auf eine Verzweigungeoperation hinweist. Daher muß die durch Rcjpl 11 erforderliche Operation ausgeführt werden, beror welter den Baum hinunter vorgegangen wird. Beim Abfragen Im Oegenstandsfeld mit dem Kennfeld Y11011 wird das Befehlswort alt dem Kennfeld YlIl111 entnommen (Zelle 14, Pig. 4A). Aus diesem Wort wird ein neues bereite· Datenwort gebildet unter Verwendung des aus der letzten Reohenoperation abgeleiteten Wertes 1,7* Das neue D&tenwort wird Im Speicher gespeichert, wie es Zelle 31» Flg. 4b zeigt. Da nur eine Verzweigungsoperation angefordert worden 1st, fährt der Reohenmodul nun fort, den Baum hlnuter weiterzuarbeiten, wobei sich der Wert 1,7 Jetzt zur Position des rechten Operanden bewegt unter Beibehaltung des Kennfeldes YIlOH. Jetzt werden die Kennfelder YIlOOl und YIlOl des linken Operanden bzw. des Befehls erzeugt. Die vorläufigen Daten für den linken Operanden, die.auf Zeile 28 in Fig. 4B gezeigt sind, werden erfolgreich aus dem Speicher entnommen, und die durch den Befehl auf Zelle 7, Pig.4A angeforderte Subtraktionsoperation wird ausgeführt, wonach als Resultat denn der Rest 8,3 aus der Recheneinheit 38 In das Befehlsregister 28 übertragen wird.
009851/1558
U7A0A7
Wleder erscheint bei der Walterbewegung den Baum hinunter dieses Resultat im linken Operandregister 20 mit den Kennfeld YIlOl, und die Kennfelder Yl111 und YlIl werden fUr den rechten Operanden bzw. fUr den nächsten Befehl errechnet. Der auf Zeile 6, Pig. 4A gezeigte Befehl wird entnommen, und zwar betrifft er eine binäre Operation mit beiden Operanden. Das vorläufige Datenwort für den rechten Operanden steht nicht zur Verfügung, und daher wird der linke Operand abgestoßen, wie es Zeile 32 von Pig. 4B zeigt.
Nun nimmt ein Rechenmodul das bereite Datenwort mit dem Kennfeld YlIlOl gemäß Zeile 26 von Flg. 4B auf. Da dies ein Statua-T-Wort ist, wird es bei der Entnahme gelöscht. FUr den rechten Operanden und den Befehl werden die Kennfelder YlIl11 bzw. Yl111 errechnet. Der Befehl für die binäre Operation gemäß Zeil« 8 in Pig. 4A wird entnommen, aber es steht kein Datenwort mit dem Status T zur Verfügung. Daher wird der linke Operand abgestoßen (Zeile 3J5, Pig.4B), und der Rechenmodul sucht ein anderes bereites Datenwort. In diesem Falle wird das Wort mit dem Kennfeld YIl1111 entnommen und das Kennfeld Y111101 für den linken Operanden erreohnet. Ebenso wird das Kennfeld Yl1111 fUr den Befehl erreohnet. Es steht kein linker Operand zur Verfugung, aber der Befehl gemäß Zelle 12 von Fig. 4a 1st die Operation mit unKrem absolutem Wert, die keinen linken Operanden erfordert. Daher findet die Operation in der Recheneinheit 38 statt und ergibt das Resultat 1,7 in Befehleregister 28, das jetzt das Kennfeld Ylllll hat.
00S851/155S
-Z42-
BeI Fortsetzung der Operation den Baum hinunter erscheint das Resultat 1,7 In rechten Operandreglater 22, und daa Kennfeld YlIlOl für den linken Operanden wird errechnet. Entsprechend diesem Kennwort wird der auf Zelle 33 von PIg. 4B gezeigte linke Operand entnommen, und außerdem wird der Befehl mit dem Kennfeld YlHl (Zelle 8, Pig. 4A) entnommen. Die Subtraktion wird ausgeführt, und das Resultat von 0,2 - 1,7, nämlich -1,5, wird aus der Recheneinheit 38 zum Befehlsregister 28 Übertragen.
Bei Portsetzung der Operation in Baumabwärterlchtung erscheint das Resultat -1,5 Im rechten Operandregister 2? mit seinem Xennfeld YlHl. Das Kennfeld YHOl wird für den linken Operanden errechnet, und seine Daten (Zelle 32, Pig. 4B) werden löschend entnommen. Der Befehl mit dem Kennfeld YlH (Zeile 6, Flg. 4A) wird ebenfalls entnommen. Dies 1st der IP-Befehl, der gemäß Regel 12 arbeitet. Da der rechte Operand negativ 1st, bestimmt Regel 12(b) die Operation des Befehle.
Beim Abfragen nach Wörtern mit Code D, Status I und Gegenstand X werden vier solche Wörter gefunden. Aus diesen vier Wörtern werden nacheinander neue bereite Datenwörter mit den Kennfeldern yilOOl, Yl 1010001. YIlOlOOl und YHOHOl gebildet, wie ·· dl· Zellen 3* von Flg. 4b zeigen. In Jede· Fall« 1st der diesen Wörtern zugeordnet« Gegenstand der Wert 8,3, der einen verbesserten Wert der Quadratwurzel aus 66 darstellt, deren ursprünglich geschätzter Wert gleioh 10 war. Der IP-Befehl bedeutet eine bedingte Verzweigungsoperation, bei der im einen Falle der Zweig den Baum hinunterführt. Aber im vorliegenden F.lle veAäuft er parallel zu vier verschiedenen Speicherplätzen zurück. Um diese Operation abzuschllefien, fragt gemäB Hegel 12(b)(ii) der Reohenaodul mit der Aufgabennuramer nach unmarkierten Wörtern alt Status Z und Code D ab. Das erste solche Wort» da« entnommen wird, 1st ein Wort mit dem Kennfeld YHlOl (Zelle 11» Fig. 4A). Beim erneuten Abfragen alt seinen Kennfeld nach ein·« Statu*-C-Wort wird das Wort gemäS Zelle 20 von Flg. 4A entnommen. Unter AbXndesng seines Status in Statue T wird dieses Wort dann ale bereites Datenwort nach "Zuerst hinein, zuerst ha&us"-Art bezüglich R gespeichert, wie
009851/155» bad original
U7A0A7
es Zelle 38 von Flg. 4B zeigt. In gleicher Welse wird dos neue bereite Wort alt dem Kennfeld Yl101011 aus den auf den Zellen 16 und 21 von Flg. 4A gezeigten Wörtern gebildet, und das neue Wort wird gespeichert, wie ee Zelle 39 von Flg. 4B zeigt. Jetzt entleertsich der Hcchenmodul und auoht nach neuer Arbelt.
AIa nächstes findet ein Rechenmodul das bereite Datenwort alt dem Kennfeld YIlOOl gemäß Zelle 34 von PIg. AB. Dies 1st ein linker Oper&nd, und nach Errechnen des Kennfelde· für den rechten Operanden l3t die versuchte Entnahne des dem errechneten Kennwort entsprechenden rechten Operanden erfolglos. Da es sich hier um eine binäre Operation handelt, wird der linke Operand genäfl Regel 9 gespeichert und erscheint nun, wie es Zelle 40 von Pig. 4B zeigt. Dann entnimmt der Rechenmodul das bereite Wort YllOlOOOl. Da dies ein linker Operand 1st, erscheint dieses Kennfeld nun im linken Operandregleter mit dem Wert 6,3. Das Kennfeld Yl1010011 für den rechten Operanden wird errechnet, und das auf Zelle 36 von Pig. 4B gezeigte Status-T-Wcrt wird erfolgreich entnommen und gibt den Wert 8,3 für den rechten Operanden. Das Kennfeld für den Befehl wird ebenfalls als YIlOlOOl errechnet, und dieser Befehl (Zelle 15, Pig. 4A) wird aus dem Speicher entnommen. Die MuItlpllkatlonsoperatlon gemäfi diesem Befehl wird ausgeführt, und da· Ergebnis 68,89 ersohelnt la Befehlsregister 28. Der Wert 68,89 geht dann mit seinem Kennfeld in das linke Operandregister 20, während die Operation den Baum hinunter weitergeht, und das Kennfeld Yl101011 für den rechten Operanden wird errechnet. Das auf Zelle 39 von Fig. 4B gezeigte Stetus-T-Wort wird aus dem Speicher entnommen. Der Befehl (Zelle 2, Fig. 4a) mit dem Kennfeld YIlClOl wird ebenfalls aus dem Speicher entnommen. Dieser Befehl betrifft die Subtraktionsoperation, die in der Recheneinheit ausgfUhrt wird und das Resultat 2,89 im Befehlsregister 28 ergibt.
In Abwärtsrichtung des Baums erscheint der Wert 2,89 in linken Operandregister 20, und das Kennfeld Yl10111 für den rechen Operanden wird gebildet. Es gibt kein dem rechten Operandkennfeld
009851/1558
U74047
entsprcchendes Str.tua-T-Wort. Die an dieser Stelle aufgerufene Operation ist die binäre Division« wie es der Befehl mit den Kennfeld Y11011 auf Zelle 10 von Fig. 4A zeigt, der aus dem Speicher entnommen wird. Daher wird der linke Operand abgestoßen als bereites Datenwort mit dem Wert 2,89 und dem Kennfeld Yl10101« wie es Zelle 41 von Pig. 4B zeigt.
Als nKohstes entnimmt ein Rechenmodul das bereite Datenwort mit dem Kennfeld Y1101101 (Zelle 37, Pig. 4D) Dies ereohaint als der linke Operand mit dem Wert 8,3. Aus diesem Kennfeld werden die Kennfelder Yl101111 und Yl10111 fUr den rechten Operanden bzw. für den Befehl errechnet. Der rechte Operand kann entnommen werden» da er ein Status-PC-Wort 1st (Zeile 3, Flg. 4A). Ebenso wird der Befehl (Zeile 13, Pig. 4A) entnommen. Die aufgerufene Multiplikation wird in der Recheneinheit 38 ausgeführt, und da« Resultat 16,6 erscheint in Befehlsregister 28.
Zn Abwärtsrlchtung des Baums ersoheint der Wert 16,6 «1· rechter Operand, und von seinem Kennwort werde» al· Kennfelder YIlOlOl und YUOIl für den linken Operanden bzw. den Befehl abgeleitet· Das Status-T-Wort (Zeile 41, Pig.4B) für den linken Operanden mit dem Wert 2,89 wird erfolgreich aus dem Speicher entnoanen.
Ebenso wird der Befehl gemäß Zelle 10 von Pig. 4A entnommen. Die Dlvisionsoperation gemäß diesem Befehl wird in der Recheneinheit 38 ausgeführt, und zwar wird 2,89 duroh 16,6 dividiert und ergibt das Resultat 0,17. Dieser Befehl ist ein Verzweigungsbefehl mit dem Status B. Daher wird, bevor weiter den Baum hinunter vorgegangen wird, ein neues bereites Datenwort gemäß Regel 11 gebildet. Dieses wird mit Wert 0,17 und Kennfeld YIl1111 gespeichert (Zelle 42, Pig. 4B).
Zn Abwärtsrichtung des Bauras erscheint nun Ar Wert 0,17 in rechten Operandregister 22, während das linke Operandregister 20 mit dem Kennfeld YIlCOl den Wert 8,3 enthält, wie er aus dem Speicher entnommen wird (Zelle 40, Pig. 4B). Das Befehlsregister 28 enthält das Kennfeld YIlOl und den aus dem Speicher entnommenen Subtraktionsbefehl (Zelle 7, Flg. 4A). Das Resultat 8,13 der Sub-
009851/1558 BAD original
U74047
traktlonsQperatlon wird aus der Recheneinheit 38 In das Befehleregister 2b Ubertraeen.
Bei der Weiterbewegung den Baum hinunter wird der linke Operand (Zelle 43, Pig. 4B) im Speicher gespeichert. Oa der entsprechende rechte Operand nloht zur Verfugung steht« wie es die binäre Operation erfordert, wird dieser linke Operand zum Speloher zurückgeführt. Als nächstes findet ein Reohcnraodul das bereite Datenwort mit dem Kennfeld YlIlOl und dem Wert 0,2 (Zelle 38, Pig. 4B). Dieses Wort erscheint im linken Operandregister 20, und wieder wird der benötigte rechte Operand nicht gefunden. Daher wird dieser linke Operand im Speicher mit dem Kennfeld YlIlOl und dem Wert 0,2 gespeichert.
Nun entnimmt ein freier Rechenmodul das bereite Datenwort mit den Kennfeld YIl1111 und dem Wert 0,17 (Zeil· 42, Pig. 4B). Dieses erscheint als rechter Operand, und obwohl der entsprechende linke Operand nicht als Status-T-Wort gefunden wird, wird der Befehl mit dem Kennfeld Yl1111 (Zelle 12, Flg. 4A) aus dem Speieher entnommen. Der Befehl erfordert die unäre Operation des Auffindene des absoluten Wertes. Daher 1st der linke Operand nicht nötig, und die Recheneinheit 33 überträgt den Wert 0,17 surtlok In da« Befehlsregister 28.
Dieser Wert 0,17 erscheint Im rechten Operandregister 22 alt dem Kennfeld Yl1111, wenn die Operation wieder den Baum hinunter fortgesetzt wird. Nach dem Errechnen des linken Operandkennfeldes YlIlOl wird das Status-T-Wort mit dem Wert 0,2 (Zelle 44, Pig. 4B) aus uem Speloher entnommen. Das Befehlswort mit dem Kennfeld YMIl (Zelle 8, Flg. 4A) erfordert die Subtraktloneoperatlon, und die Recheneinheit 38 führt diese Operation aus und sohiokt das 0,03 zu« Befehlsregister 28.
Bei Fortsetzung der Operation den Baum hinunter wird der Befehl .öl ν dt .1 Kennfeld YiIl (Zelle 6, Flg. 4A) zusammen mit dem linken anden mit dem Kennfeld Yl 101 (Fig. 43, Fig. 4B) aus dem
0098S1/1558
Speioher entnommen« D?r BefeW mit den Kennfeld YHl Ut ein IF-
Befehl und 1st gem&Q Regel 12(q) wirksam, da der rechte Operand positiv 1st, was zeigt, daß die Wiederholung den Punkt erreicht hat, wo ein genügend genauer Wert für die Quadratwurzel aus Co errechnet worden let. Daher wird der Wert 8,13 au3 dem linken Operandregister 20 herausUbertragen und erscheint nun la Befehlsregister 28 mit dem Kennfeld YlIl und geht dann zum reohten Operandregister 22. Das Kennfeld YlOl für den linken Operanden wird aus dem Kennfeld YlIl erreohnet. Die Programmkonstante Bit dem Status PC und dem Wert 6 gemä3 Zelle 5 von PIg. 4A wird durch das erzeugte Kennfeld YlIl entnommen. Ebenso wird der Befehl mit dem Ktjnnfeld YIl gemäß Zelle 4 von PIg.4A aufgefunden. Dieser Befehl erfordert die Subtraktion 6 - 8,13 Bit dem Resultat -2,13.
SohlIeBlloh erscheint bei der Portsetzung der Operation In Abwärtsrlohtung des Baums der Wert -2,13 Bit dem Kennfeld YIl In rechten Operandregister 22, und es wird ein linker Operand Bit dem Kennfeld YOl, Status T, zusammen mit einen Befehl mit den Kennfeld Yl gesucht. Dieser Befehl (Zelle 1, Pig. 4A) wird aus dem Speicher entnommen, und da er die unäre Operation des Auffinden des absoluten Wertes betrifft, wird die Operation In der Recheneinheit 38 ausgeführt« obwohl kein linker Operand entnommen wird· Daher ist das Endresultat gleloh 2,13«
Wenn der Rechenmodul versucht, weiter den Baum hinunter vorzugehen, stellt der Kennfeldgenerator fest, daß diese Resultate den Boden eines Baumes darstellen, und daher wird das Resultat gemäß Regel zur Ausgabevorrichtung übertragen.
Rachenmodul-Ausgabemultlplexclnhelt
Die Reohenmodul-Ausgabemultlplexelnhelt 30 von Flg. 2B ist in Flg. 9A, 9B und 9C genauer dargestellt. Pig. 9A zeigt die Datenwege für die Übertragung von Daten zwischen den Rechenmodulen und den Eingftbereihenspelohern 44 (Pig. 2A) zusammen alt den Toren zvm Steuern dieser übertragung. Flg. 9 B und 9C stellen die Steuerlcgik zum Betreiben der in Flg. 9A gezeigten Datenwegtore dar.
009851/1558 i*c original
U740A7
-H7-
DIe nechenmodul-Ausgabemultiplexeinheit gestattet ea, gleichzeitig Über getrennte Kanüle eine große Duteaiienge aus verschiedenen Rechoiiaodulcn In verschiedene Speicherdateneingabereihen ohno gegenecitige Störung zu Übe .ragen. Sa wird angenommen, dsü eine feststehende Zahl von Kanälen in deu System vorgesehen let» und die Figuren zeigen insgesamt E Kanüle, von denen die Kanäle I9 2 und E dargestellt sind. Die Zahl der verwendeten Rechenmodule kann bis zu irgendeiner feststehenden Maxiraalzahl verschieden sein. In den Zeichnungen wird angenommen« daß N Rechenmodule angeschlossen sind, von denen die Module 1,2 und N dargestellt mim*, Des» lys-ten it* so wandlungsfUhig, daß »eitere Rechenaodule der feststehenden Zahl von Kanälen hinzugefügt werden können. Die Zahl der assoziativen Speicher kann bis zu einer feststehenden Maximalzahl reichen. Zn den hler gezeigten Beispiel sind N assoziative Speloheroodule enthalten, und Schaltungen sind für die assoziativen Speioher 1* 2 und M dargestellt. Im PalIe der assoziativen Speloheraodule zeigen die Rechenmodul-Ausgabemultlplexschaltungen Eingänge zu den Speichere ingabedatenrelhen, die an Hand von Fig. 11 in einzelnen beschrieben werden.
Die in Flg. 9A angedeuteten Datenwege sind durch eine einzige Linie und durch einzelne logische Blöcke dargestellt» die fur eine Vielzahl paralleler Wege und Schaltungen stehen· Jedes Über diese Wege zu Übertragende Wort besteht eus vielen Bits, die parallel tibertragen werden. Das Wort umfaßt die in Fig. 5A und 5 B gezeigten Felder sowie die Steuerinformationen. Hler 1st die Steuerinforraation diejenige« die Insbesondere erforderlloh 1st, um das ganze Wort richtig zu lenken und um die Befehle zum assoziativen Speicher zu senden.
Zwei Hauptübertragungsarten sind mit Hilfe der Rechenmodul-AusgabemultiplexelnheJt möglich. Im einen Falle werden Wörter, die in einem Rechenmodul als des Ergebnis der Ausführung eines Programms gebildet werden, in einem assoziativen Speicher gespeichert. Deher erfordert die übertragung Steuerinformationen, die den assoziativen
009851/1558
U74047
Speloher bezeichnen. In dem das Wort gespeichert werden soll, und Befehle an den assoziativen Speichermodul, die besagen, was mit den Wort geschehen soll. In zweiten Falle sendet ein Rechenmodul, der •in Wort aus einem assoziativen Speicher anfordert, seine Anforderung aus dem Rechenmodul Über die Rechenmodul-Ausgabemultlplexeinheit zu einem ausgewählten assoziativen Speloher* In diesem Falle bezeichnet die Steuerinformation den richtigen Rechenmodul, sendet Befehle zum assoziativen Spelohermodul bezüglich der Funktion, die er ausführen soll, und liefert die nötigen Informationen zur ZurUokleitung der Ausgangsinformation des assoziativen Speichere zu dem richtigen Register in dem Reohenaodul. Diese rückgeleiteten Informationen werden Über die Spelcher-Ausgabemultlplexelnhelt 12 von Flg. 2A geleitet, die in Verbindung mit Flg. 1OA und 103 näher beschrieben wird.
Nachstehend wird nun die Wirkungsweise der Reehenmodul-Ausgabemultiplexoinheit für den ersten Fall beschrieben, d. h., wenn ein Rechenmodul Informationen in einen Speicher überträgt. Es sei angenommen, daß ein Reohenraodul, z.B. Modul 2, den linken Operanden genäfi Regel 9 abstoßen r.u3. Er führt seinem Ausgaberegister 6o (Flg. 9A) das gesamte Wort au· dem linken Operandregister 20 einsohlleßlloh de· Kennfeldeβ nit «einen Indizes, der In diesen Stadium des Rechenvorgangs errechneten Daten und des Status T zu, der von der Rechner-Programmsteuerelnhelt 26 von Flg. 2B geliefert wird, wie es die Regel 9 erfordert. Außerdem wird dem Auegaberegister die Adresse des Speichers zugeführt, in dem da« Wort gespeichert werden soll, welches vom-Speioheradressengenerator 24 ▼on Fig. 2B geliefert wird. Weitere Steuerinformationen werden von der Speiohersteuerlnformatlonselnheit 42 von Flg. 2 B geliefert. Im besonderen liefert diese den Befehl Spelohern "Zuerst hinein, zuerst heraus" bezüglich R gemäß Regel 9. Außerdem sei angenommen, daß dieses linke Operandwort in dem assoziativen Speichermodul M gespeichert werden muß.
BAD GRSGiNAL
009851/1558
H74047
Dleses gesamte Wort einschließlich der Steuerinformationen, das im Ausgaberegister 86 (Flg. 9A) zusammengestellt 1st, wird durch ein Signal auf Leitung 90« daa aus dem Systentaktgeber von Pig. 2A abgeleitet ist» in ein Pufferregloter 68 gesteuert. Ein Signal CR2 auf einer Leitung 92 entsteht dadurch, daß ein Ausgangsimpuls la Pufferregister 86 vorliegt. Dieses Signal zeigt an» daß der Rechenmodul 2 eine Anforderung zur Übertragung Über die Rechennodul-Aus* gabemultlplexelnhelt vorliegen hat. Das Signal CR2 wird als Sin« gangsslgnal den Und-Schaltungen 94» 96« 96 von Fig. 9B zugeführt»
Ein Signal CR2, welches das Komplement des Signals CR3 let, ist In diesem Falle auf einer Leitung 100 nicht vorhanden. Das Signal CR2 wird den Und-Schaltungen 102» 104 und 106 in PIg. 9B zugeführt. Es selen zwei Fälle betrachtet» und zwar sei zuerst angenommen, dafl auch im Rechenmodul 1 eine Anforderung vorliegt» die zu der Rechennodul-Ausgabemultiplexeinheit geht, wie es das Vorliegen eines Signals CR. auf einer Leitung IO8 anzeigt. Das Signal CR- wird einem Eingang der Und-Schaltungen 110» 112 und 114 von Flg. 9B zugeführt. Ein Signal CR. auf Leitung II6, welches das Komplement des Signale CR1 1st» speist die Und-Schaltungen II8, 120 und 122. Im vorliegenden Falle liegt Icein Signal auf dieser Leitung) daher wird die Und-Schaltung 118 nicht betätigt, und es existiert kein Signal auf Leitung 124. Daher kann die Und-Sohaltung 94 nloht arbeiten, da sie dazu Eingangssignale auf ihren beiden Leitungen 92 und 124 berttlgt. Mit anderen Worten, der Rechenmodul 1 hat gegenüber dem Rechenmodul 2 den Vorrang gewonnen beim Versuch» den Kanal 1 auszuwählen. Das Ausgangssignal der Und-Schaltung 94, wenn es vorgelegen hütte, wäre als Signal 12C einer Leitung 126 zugeführt worden, um eine Undschaltung 128 in Pig. 9A zu betätigen, damit Daten auf Kanal 1 übertrag"! werden. Da der Rechenraodul 1 ein Signal HC auf eine Leitung 150 'Iber die Und-Sohaltung 110 übertragen hat, die in Verbindung salt ieo Signal auf einer Leitung 122 aus dem Taktgeber 412 (Fig.2A) betätigt worder. Jst, wird «Ine Oder-Sehaltung 134 (Fig.9B) betätigt
00«eS1/156i
und achlokt einen Tor impuls zu der Und-schaltung 9u, der In Verbindung nlt dem Signal CR2 auf Leitung 92 die Und-Schaltung 9*> betätigt* so da8 ale das Signal 22C auf Leitung IjJG erzeugt· Daa Signal 22C lat daa Steuersignal für eine Und-Schaltung I38 (Flg. 9A), die Jetzt betätigt wird, um die Information aus den Pufferreglater 68 Über die 0aer-3chaltungen 142 zu den Leitungen 140 : dea Kanals 2 zu Übertragen. Bis hierher 1st gezeigt worden» da3 die Information aua den iiechennodul 2 über tenal 2 gesteuert wird,
well der Rechenmodul 1 gegenüber de* Reohenmodul 2 den Vorrang : bei der Auswahl dea Kanäle 1 gewonnen hat.
Öle Ausgangsleitungen der Oder-Schaltungen 142, dl· den Speicheradreaaentell des Wortes führen, sind an eine Kanal-2-3peioher- ; adreaaen-Decodlerachaltung 144 Über Leitungen 146 angeschlossen · } Da die vom Rechenmodul aus den Speloheradresaengenerator 24 (Pig.2B)
gelieferte Speicheradresse die Speicherung der Informationen im : Speicher N erfordert, erzeugt die Kanal-2-Speloheradreesen-Decodlerelnhelt 144, die die Informationen in herkönnllcher W«lse bearbeitet, ein Ausgang aslgnal D2M auf einerLeitung 148. Die Jetzt auf Kanal 2 verfügbaren Informationen nüssen unter der Voraussetzung zum Eingabereihenspeicher 44N Übertragen werden, daß für Ihre Speicherung ein Leerplatz in der Reihe vorhanden 1st. Wenn ■ der Reihenspeicher 44M einen Leerplatz aufweist, liegt ein Signal "Eingaberelhenspeicher freimachen" auf einer Leitung 150 (Flg.SC), j das in Verbindung alt dem Signal auf einer Leitung 152 aus dem ι Taktgeber 412 (Flg. 2A) eine Und-Schaltung 154 betätigt. Wenn die ■■ Informationen auf Kanal 1 nloht für den Speicher M bestimmt sind, befindet sich kein DIM-Signal auf einer Leitung 156, das in ähnlicher Welse wie das Signal D2N erzeugt wird. Duroh das Fehlen des Signals DlM würde in diesem Falle eine Und-Schaltung 158 nach Inversion durch einen Inverter 100 wirksam gemacht· Daher wird die Und-Sohaltung 153 wegen des Vorllegens des Auegangssignals der Und-Schaltung 154 betätigt. Das Ausgangssignal der Und-3ohaltung I58 auf Leitung 162 betätigt nun in Verbindung alt dem Signal D2M auf Leitung 148 eine Und-Schaltung 164, die das Signal auf einer Leitung 166 erzeugt.
000851/1558 ead original
Das Signal 2MQ hat drei Funktionen. In Pig. 9A betätigt es die Und-Scheltungen 166« um die auf Kanal 2 (Leitungen 140) vorliegenden Informationen Ubor Oder-Schaltungen 170 zu dem Eingabereihenspeicher 44M zu leiten. Welter liefert das Signal 2MQ das Signal "CPM speichern" auf einer Leitung 172 Über eine Cder-3chaHung 174. Wie die Informationen tatsächlich In dem Reihenspeicher gespeichert werden» wird an Hand von Pig. Il erläutert.
Zunächst sei die dritte Punktion des Signals 2MQ erläutert. Wenn ein Rcchenisodul versucht« eine Anforderung zu einen Speichermodul zu Übertragen« kann es sein, dafl er keinen Erfolg hat entweder» weil er vielleicht nicht instand· 1st» einen unbenutzten Kanal zu finden, oder well er selbst nach dem Finden eines Kanals zur Übertragung der Informationen nieht Imstande 1st, in die Datenreihe des erforderlichen Speichemodule hineinzukönnen. Wenn die übertragung erfolglos 1st, versucht der Reohencnodul sie erneut im nächsten Torumlauf, da sein Anforderungsslgnal CR2 auf Leitung 92 (?ig. 9A) noch vorliegt. Wenn aber alle Bedingungen für eine erfolgreiche übertragung der Informationen erfüllt sind, mud er Jedoch das Anforderungsslgnal CHp abschalten. Diese Abschaltoperation wird durch das Signal 2KQ auf Leitung 165 (Pig. 9C) eingeleitet. Bei Jeder abgeschlossenen Operation auf Kanal 2, in diesem Palle der Operation des Obertragens zu*Reihenspeicher 44M, wird ein Impuls durch die Oder-Schaltung 175 gesendet, die dann das Ausgangssignal C2 auf Leitung 176 (Pig. 9B) erzeugt, das die Und-Schaltungen 176, 160 und 182 wirksam macht· Im vorliegenden Palle liegt auch auf der anderen Eingangsleitung 130 der Und-Schaltung 1&0 ein Signal, wie oben erläutert. Daher erzeugt die Und-Schaltung ISO das Ausgangssignal CF2, das Über eine Oder-Schaltung l64 ein Pllpflop Ausgabepufferregister 86 (Flg. 9Λ) In den O-Zuetand rückstellt. Ln nächsten Umlauf wird, falls der Rechennodul 2 keine neue Anforderung hat, das Anforderungebit des Pufferreglaters 68 entsprechend in den O-Zustand rtlckgcstellt und dadurch das Signal CR. abgeschaltet. Hierdurch wird verhindert, daß der Rechenaodul 2 ver-
009851/1558
sucht, dieselbe Anforderung zu reaktivleren, und außerdem wird dadurch dem Rechner mitgeteilt, daß eine neue Ausgabeanforderung in das Pufferregister 88 eingegcien werden kann.
Im vorstehenden Beispiel 1st angenommen worden, daß auch der Rechenmodul 1 eine Anforderung hatte und daduroh den Ausgangskanal belegte und den Rechenmodul 2 daran hinderte, turn Spelcherniodul 2 zu Übertragen. Nun sei angenommen, daß der Rechenmodul 1 zur Zelt des Erscheinens des Sl&nals auf Leitung lj)2 (Flg. 9B) keine Anforderung aufweist. Wenn keine Anforderung vorliegt, liegt ein Signal CR. auf der Leitung 166, das zusammen mit dem Signal GATE die Und-Schaltung 118 betätigt, so daß diese ein Signal auf Leitung 124 erzeugt. Dieses Signal betätigt zusammen mit dem Signal CRp auf Leitung 92 die Und-Sohaltung 94, die ein Signal 12C auf Leitung 126 erzeugt. Das Signal 12 1st Hhnlloh wie das oben beschriebene Signal 22C wirksam, um die Jetzt im Pufferregister 68 stehenden Informationen auf Kanal 1 statt auf Kanal 2, wie es in vorhergehenden Beispiel der Pail war, zu Übertragen. Eine Kanal-1 Spelehtradressenendeoodlerelnhelt l6o (Pig. 9A) erzeugt ein Signal DlM auf Leitung 156, durch das die Speicherung der Informationen in der Speichereingabedatenreihe 44M Über Schaltungen KImIlOh den beim vorausgegangenen Beispiel besohriebenenen eingeleitet wird.
Nun wird beschrieben, wie dl· Rechenmodul-Ausgabemultlplexeinheit im zweiten Falle arbeitet, d.h., wenn ein Re ehe modul zum Speicher •ine Anforderung nach einem Informationswort sendet, das ihn wieder zugeführt werden soll. Hler wie in ersten Fall« definiert der Steuetell des Übertragenen Wortes nioht nur den Namen des Speicher·, zu dem die Anforderung gesteuert werden soll, sondern er gibt auch den Namen des die Anforderung sendenden Reahenmoduls •owl· den Namen des Pufferregisters in dem Reohenmodul, das die Informationen empfangen soll, an. Bei RUckübertragung der Informationen zu ein^m Operandregister muß er außerdem angeben, ob das linke Operandpigister 20 oder das rechte Opeandrtgister 22 (Pig.2B)
0098SIHSSi BAD ORIGINAL
U74047
dle Informationen empfangen soll· Eine weitere Steuerinformation, die geliefert werden muß, 1st der Defehl an den Speicher, ein« bestimmte Punktion auszuführen. In diesem Falle gibt ebenfalls ein Teil dieses Befehls an, welche Felder für die Speicherabfrageoperation abgedeckt werden müssen, was Je nach den Erfordernissen des Falles durch die Rechenprogrammstcuerelnhelt 26 (Flg. 2D) gemä3 den Regain 2, 4, ό, 8, 11 oder 12(b) bestimmt wird. Diese Informationen werden von dor Spelchersteuerlnformatlonsclnhelt 42 (Flg. 23) zusammengestellt und in das Ausgaberoglster eingeführt. Die verschiedenen Operationstypen und die Zusammenstellung dieser Daten werden In Verbindung mit den Rechenmodulausgängen (Pig.10) noch im einzelnen erläutert. Hier sei nun als Beispiel angenommen, daß der Rechenmodul 2 entsprechend Regel 8 einen rechten Operanden aus dem Speicher M entnimmt. In diesem Falle gibt der au« der Rechner-Programmsteuereinheit von Fig. 9B kommende Befehl an den assoziativen Spelohermodul eine löschende Entnahme mit Abfragung bezüglich Aufgabennummer, Status und Kennfeld mit Indizes an. Außerdem liefert die Rechenprogrammsteuereinheit 26 den Status T oder PC für diese Abfragung. Das im rechten Ope*rondr"egißter 22 ersohelnende Kennfell wird ebenfalls Im Rechenmodulausgabere^lster δυ (Fig. 9A) zur Übertragung für die Abfragung zusammengestellt. Ausserdem liefert die Rechner-Programmsteuereinheit den Befehl, daß das Codefeld und der Gegenstand mit seinen Anhängen für die Abfragung abgedeckt werden müssen. Der Spelcheradressengenerator 24 liefert die Adresse M des assoziativen Spelohermoduls 16M (Fig. 2A), an den die Anforderung gerichtet werden soll. Da die Anforderung aus dem Reohenmodul 2 kommt, enthält ein feststehender Teil des Befehls die Information, daß das Resultat der Abfragung zum Reohenmodul 2 zurUokzuUbertragen 1st. Da ein rechter Operand benutlgt wird, wird auch eine Information übertragen, die besagt, daß die funkübertragung der Informationen aus dem Speicher Über den Operandpuff «r 18 (Flg. 2B) zum rechten Operandregister erfolgen muß.
Di® Heohenmodul-Ausgabemultiplexelnheit arbeitet genau so, wie es T\\r den «traten Fall beschrieben worden 1st. Ein verfügbarer Kanal wild ausgewählt, und fall» die Speloherelngabedatenreih· des Speicher» H nicht vollständig besetzt 1st, wird die Anforderung dieser Reihe zugeführt, und das Ausgaberegist«tr 86 (Fig. 9A) wird freige-
ooaiswma
BAD
U74047
g«ben, so daß der Rechenmodul seine nächste Anforderung stellen kann» die den gemHö Regel 6 benötigten Befehl betrifft· Ein gewisser Teil der Steuerinformationen diesor Anforderung mud Jedoch zusammen mit den entnommenen Wort Übertragen werden« Uanit dieses zu dem richtigen rechten Operandreglster 22 in Rechenroodul zurtlcktlbertragen wird.
Spelcherauspabcnultlplexschaltuns
Jetzt kann die Spelcherausgabeoiultiplexsohaltung 12 (Pig. 2A) in einzelnen an Hand von Fig. 1OA und 1OB beschrieben werden. Pig· 1OA zeigt die Datenwege für die Datenübertragung aus den assoziativen Speichermodulen zu den Rechenmodulen und die Toro, die die Übertragungen steuern· Flg. 1OB zeigt die Steuerlogik, die die Datentore von Fig. 1OA steuert.
Dl· Spelcherausgabenultlplexsohaltung gestattet es mehreren assoziativen Speichern, gleichzeitig Informationen parallel Über mehrere Kanüle zu mehreren Reohenmodulen zu Übertragen.
Wie bereits in Verbindung mit der Rechenmodul-Ausgabemultlplexschaltung 30 von Flg. 2B erläutert worden 1st« sind dl· Ausgabe« signale eines assoziativen Speloherosoduls das Ergebnis einer aus einen Rechenmodul stammenden Anforderung. Dl· Anforderungsinfomatlon bezeichnet den assoziativen Speloher, aus dem die Informationen entnommen werden mtlssen, und liefert Abfrageinformationen als Grundlage für die Abfragung des assoziativen Speiohers. Auflerdem bezeichnen die vom Rechenmodul gelieferten Informationen den Reohennodul und das Pufferregister innerhalb dieses Moduls, das die Ausgangesicnale des assoziativen Spelohermoduleu empfangen soll. Als Beispiel für die Wirkungsweise der Spelctrerausgabemultiplexscnaltung sei angenommen, da3 ein Rechenmodul (l) 188 (Flg. 10A) einem assoziativen Speichermodul (2) 190 (Flg. 10A) eine Anforderung zugesandt hat, dafl ein Datenwort zum rechten Operandreglster 22 (?ig. 2B) Über ein Operandpufferregister (}) 18 (Flg. 10A) Übertragen werden soll. Wenn der assoziativ· Speichermodul (2) 190 das richtig· Wort
009851/1S5» BADOBiQlNAL
U74047
rUr diese Anforderung gefunden hat. wird dieses in einen Ausgeberegiatcr 194 zusaianen alt der Information gespeichert, dfc über das Operandpufferregister (1) 16 zun rechten Operandreglster 22 des Rechenmoduls (1) I88 zurUekUbertrftßen werden raufl. Wenn das Ausgctberegleter 194 Informationen enthält· werden diese durch ein Signal cuf der Ausgangslei tun;; 196 (Fig· 10A) des Systemtaktgebers 412 (Pig. 2A) zu einen Pufferregioter 196 (Fig. 10A) Übertragen. Diese Informationen erscheinen auf den Leitungen SOO9 um die Und-Sohaltungen 202, 204 und 20ό wlrksun zu aachen. AuSerden erscheint ein Signal NR2 auf einer Leitung 208, und sein Konplementslgnal ΕΪ2* auf der Leitung 210 (Pig. 10A) wird beseitigt. OemäS Pig.1CB speist das Signal MR 2 auf Leitung 208 die Und-Sohaltungen 212» 214 und 216, deren Punktion es 1st» einen verfUgbarenXanal zu beetinmen.
Wenn angenommen wird, daß der assoziative Spelohernodul 1 keine Informationen in seinen Pufferregister 218 enthält, liegt ein Signal EAT auf der Leitung 220 (Pig. 10A). In Pig. 1OB betttlgt dieses Signal zusammen mit einem Signal auf Leitung 222 eine Und-Cchaltung 224, die ein Signal auf Leitung 220 erzeugt, welches in Verbindung mit dea Signal KR2 auf Leitung 206 die Und-Schaltung 212 betätigt, so da8 diese ein Signal 12M auf Leitung 228 (Flg.10B) erzeugt. Das Signal 12M betätigt nun die Und-Schaltungen 202, (Pig. 10A)9 so dafl die Jetzt auf den Leitungen 200 vorliegenden Informationen Über Oder-Schaltungen 232 auf die Kanalleitungen 230 gelangen. Die Leitungen 230 führen zu den Schaltungen, die die Informationen In den Reohenmodul 1 leiten sollen. Die Leitung 2JO leitet diese Modul- und Pufferinformationen auch zu einer Kanal-1-Decodiereinheit 236« die ein Ausgangssignal erzeugt, b<*l dem es sich in diesen PalIe um des Signal HOP auf Leitung 238 handelt. Das Signal HOP bäütlgt zusammen mit Signalen auf den Leitungen 230 die Und-Schaltungen 240, damit diese Über Oder-Schaltungen 242 Informationen zum Operandpufferregister (1) 192 Übertragen. Ein Teil der in das Operandpufferregister geleiteten Steuerlnfornationen steht zur Verfugung, um die restlichen Informationen aus dem Operandpufferregister IS (Flg. 2B) in das reohte Operandregister 22 zu steuern.
BAD ORIGINAL 009851/1558
PIg. 1OB dient das Signal 12N auf Leitung 226 außerdem dazu, das Signal MR2 auf Leitung 208 (Flg. 10A) abzuschalten. Das geschieht Ober eine Oder-Schaltung 244, die das Signal MF2 erzeugt» wenn Irgendeine Kanalauswahl bezüglich des MR2-Slgnals auf Leitung 208 getroffen worden 1st. Wenn keine Kanalauswahl erfolgt'Ißt, bleiben die Inforcationen im Pufferregister, und das Signal KR2 leitet eine Suohe nach einem verfügbaren Kanal bei Jedem neuen Signal auf Leitung 222 (Flg. ICB) ein. Wenn jedoch die Übertragung auf einem verfügbaren Kanal eingeleitet worden ist, wie es hler der Fall 1st« scheltet das SIg-
Vväal KP2 das Flipflop in Ausgabereglstcr 194 (Pig.ICA) ab. Bein nächsten Torimpulsumlftuf wird, falls der assoziative Gpeiohcrmodul 2
^ keine neue Anforderung aufweist, das Anforderungsbit des Pufferrosters 198 entsprechend abgeschaltet« wodurch das Signal MR2 abge-
1 haltet wird. Hierdurch wird auch das Ausgaberegister 194 für ein s Ausgangssignal des assoziativen Spelohers 2 verfügbar gemacht.
tte der assoziative Speicher 1 die Verwendung von Kanal 1 engeert, so wäre ein Signal ILM auf einer Leitung 246 (Pig. 10B) einer Welse erzeugt worden, die der bezüglich des Signals 12M Leitung 226 beschriebenen entspricht. Welter hätte in diesen das Signal MRl die Und-Sohaltung 212 an der Erzeugung des « 12M gehindert. Das Signal HN hätte jedoch über eine Oder*
lühaltung 248 dann die Und-Sohaltung 214 betätigt« so dafl dies« das
ignal 22M auf Leitung 250 erzeugt hatte, um die übertragung der ΌmatIonen aus dem assoziativen Spelehernodul 2 auf Kanal 2 zu tat ten. Die Decodierung für den Rechner würde dann in ähnlicher ise wie der oben beschriebenen vor sich gehen» aber In diesem 1« in einer Decodiereinheit 252 (Pig. 10A).
$tf*e in einen anderen Falle die Information zum Befehlspufferregister (1) 14 (Pig.2B) zurllckzuUbertragen, so würde die Decodiereinheit 23c In ähnlicher Welse vorgehen, würde absr ein Signal HI auf elnr Leitung 254 statt des Signals HOP auf Leitung 238 erzeugen. Hierdurch wurde die Information von den Leitungen 2}0 aus durch die Ond-Schaltungen 25b und die Oder-Schaltungen 258 In das Befehlspufferreglster (l) 14 (Pig.2B) gebracht werden.
I;
BAD ORfGiNAL
009851/1558
H74047
-57-Eingaberelhenspelcher
Die Eingabereihenspoioher 44 - 44M von Pig. 2A werden nun genauer In Verbindung mit Flg. 11 beschrieben. In der hler vorgeschlagenen Fora bildet oln Elngabereihenspeloher ein MIttel zum vorÜbersehenden Feuthalten von Anforderungen naoh zu leistender Arbelt In einem assoziativen Speichermodul· Dies ermöglicht den Ausgleioh von Arbeltsbelastungen« wenn die Aufgabenberechnung mehrere Zugriffe zu einem bestimmten assoziativen Speichenr.odul innerhalb kurzer Zelt erfordert. Diese Anforderungen werden in die Datenreiho hineIngopuffert und euf der Baals "Zuerst da, zuerst bedient" dem assoziativen Spolchermodul zugeführt. Die Datenreihe besteht aus Q Registern, von denen in Flg. 11 drei gezeigt sind, nämlloh die Register (1) 260, (2) 202 und Q 264. Jedem dieser Register sind Eingangstore 2Co, 268 bzw. 270 und Ausgangstore 272, 274 bzw. 270 zugeordnet. Die Daten auf den Leitungen 278 (ebenfalls in Fig. 2A für den Reihenspeicher N gezeigt) führen die Anforderungsinformationen aus der Rechenmodul-Musgabemultlplexelnheit parallel den Eingängetorcn zu· Die '.«lrkungsweise der Eingänge tore wird durch Und-Sohaltungen 2öO, 282 und 284 gesteuert, die durch das Signal "Speichern" auf Leitung 172, das aus der Rechenmodul-Ausgabemultiplexelnhelt von Hg· 9C abgeleitet 1st, in Verbindung mit Eingangsringsignalen auf Leitungen 2&ü, oder 290 betätigt werden. Von diesen Signalen liegt Jeweils nur eins vor, je nach der bestehenden Einstellung des Eingangsrlnges 292, der als bekannte Zählringschaltung ausgebildet 1st. Außerdem liegt das Signal "Leere Datenreihe" auf Leitung vor. Dieses Signal 1st ebenfalle als Eingangssignal für die Rechenmodul-Ausgabemultiplexeijaheit (Fig. 9C) dargestellt· Es entsteht, wenn wenigstens eins der Speichereingaberegister 2cO, 262 und 264 leer 1st. Verai ein Register unbesetzt 1st und damit Platz für das Speichern einer Arbeiieanforderung aus einem Rechenmodul bietet, arbeitet das Signal "Leere Datenreihe* in der oben in Verbindung mit Fig. 9C beschriebenen Weise, um das Signal "Speichern" auf Leitung 172 zu erzeugen und so die
BAD ORIGINAL.
009851/1558
U74047
entspreohende der Und-Schal tungen 280, 282 oder 284 su betätigen, die ihrerseita das entsprechende Elngang3tor 266, 268 oder 270 betätigt, denlt es die Daten auf den Leitungen 276 in dl· entsprechenden Register 260, 262 oder 264 der Speloherelngabedatenrelhe Überträgt. Außerdem durch läuft das Signal "Speichern" eine Verzögerungseinheit 294, um den Slngangsrlng 292 in seine nächste Stelle welterzuachaltcn. (Nachdem er auf das Betätigen des Re* glsters Q eingestellt war, kehrt der Ring in dl· Stellung aurück, in der das Register 1 betätigt wird.)
Eins der Bits In den Speicheratufen 1st das 'jeerbit, das in den Registern 200, 262 und 264 mit V.B. bezeichnet 1st. Wenn dieses Bit auf "0" eingestellt 1st, liegt ein Signal V.B. - 0 auf der entspreohendenLeitung 290, 293 bzw. 300. Dieses Signal zeigt an, daS das entsprechende Register unbesetzt 1st und zum Speichern einer neuen Anforderung zur Verfügung steht. Diese Signale werden in einer Oder-Schaltung 302 verknüpft , um das Signal "Leere Datenreihe" auf Leitung 150 zu erzeugen, wie oben erwähnt. BoIm Speichern eines neuen Wortes in einem leeren Register wird das Leerbit auf "1" gesetzt durch dl· Speicherung des Anfordorungsbite, das aus dem die Anforderung stdLlenden Reohenmodul kommt. Aus Jeder Leerbitstelle erzeugt da« Signal V.B· * 1 auf den Leitungen 304, 306 und 308 das Signal "Mehr Arbeit" auf einer Leitung 310 über eine Oder-Schaltung 312. Dieses Signal wird von der Speloherprogrammsteuerelnheit des assoziativen Spelohermoduls verwendet, die in Verbindung mit Flg. 8 beschrieben worden 1st und in Verbindung mit Pig. 12 noch näher erläutert wird.
Ein Ausgangsring 314 erzeugt ein Signal auf nur einer der Leitungen 316, 316 oder 320, um das Jeweils nächste Register des Relhensp«lehere zu identifizieren, aus dem eine Speloheranforderung auszulesen 1st. Das Signal "Lesen" aif Leitung 322 wird durch dl· Speloherprogrammateuerelnhelt des assoziativen Speichermodul· (Fig· 8) erzeugt, wenn der assoziativ· Speicher eine vor-
BAD
009851/1S5·
U7A047
hergehende Anforderung fertig bearbeitet hat. Das Signal "Lesen" betätigt zusammen mit einem der Ausgangsringsignale auf Leitung 316, 318 oder 320 die entsprechende Und-Schaltunc i2k, 326 oder 328 und betätigt dadurch die entsprechenden Ausgangstore 272« 274 bzw. 276. Die In den entsprechenden Eingabedatenregiater gespel· cherten Daten werden daher über die Oder-Sohaltungen 330 als neue Anforderung dem assoziativen Spelohermodul auf den Leitungen 332 zugofUhrt. Das Signal "Lesen" auf Leitung 322 schaltet nach der ; Betätigung einer VerzögerungseInholt 33* den Ausgangsring 314 In dl« ί dem nächsten Elngabedatcnreglster entsprechende Stellung weIter. j (Nach der Betätigung des Registers Q schaltet der Ring weiter« um dae Register 1 zu betätigen, wie oben erwähnt).
Die von den Und-Schaltungen 324, 326 und 328 erzeugten Signal· be- j
tätigen nicht nur die entsprechenden Ausgabeschaltungen, sondern j
werden auch verwendet, um Über die Leitungen 336» 338 und 3*0 dft· j
Leerbit auf "0" zu setzen. Daher kann das Jetzt leer geworden· Register erneut zum Speichern einer neuen Speicheranforderung benutzt werden·
Assoziativer Spelchermodul
In Verbindung ait Pig. 12 «ei nun Ια einzelnen erläutert« wie die assoziativen Speichermodule 16, l6a und 16b von PIg. 2A arbeiten·
Das Haupteletnent in dem assoziativen Speichermodul 1st ein aase* zlatlver Speicher 3*2, der in Verbindung mit S1Ig. 8 im einzelnen beschrieben wird. Darüber hinaus enthält der assoziative Speichermodul Steuerungen, die Signale und Daten aus dem Eingabereihenspeicher 44M (Flg. 2A) in die richtigen Register des assoziativen Speichers steuern. Der auf Leitung 344 aus dem Elngaberelhenspelcher kommende Datenworttell wird direkt einer Reihe von Eingabeschal tern 346 (Flg.8) zugeführt. Das aus dem Eingabereihenspeicher auf einer Leitung 348 ankommende Steuerfeld wird bezüglich seiner
009851/1558
U7A0A7
Punktlon aufgetrennt, und diejenigen Bite, die dr.s Programm bestimmen, werden Über Leitungen 350 In eine Progrnr.mdecodierelnheit 352 einer Speicherprogrommsteuereinheit 354 eingeführt· Diejenigen Bits, dl· die Adresse des Reohenmodula enthalten, worden Über Leitungen 356 einen Reohenmoduladrossenregister 358 zugeführt.
Nach Erfüllung einer vorhergehenden Anforderung wird eine neue Operation des Speieherprogranas durch das Vorliegen des Signals "Mohr Arbeit" auf Leitung 310 eingeleitet, das in Verbindung mit Flg. 11 beschrieben worden 1st. Das Signal "Lesen" auf Leitung 322 wird dem Eincabereihenapeicher zugeleitet, und das Ergebnis 1st, daß das Datenwort und das Steuerfeld in den assoziativen Spelohennodul eingegeben werden. Die Programmbits werden in der Progremmdeoodlereinhelt 352 entschlüsselt und ergeben zusammen mit entsprechenden Taktsignalen ausgewählte "Γ'-en, die Über die Leitungen 344 übertragen werden, um die entsprechenden Eingabeschalter von Pig. 8 einzustellen, Über Leitungen 300, tun entsprechende Auswahlsohalter 302 von Flg.6 einzustellen, und Über Leitungen 36^» um entsprechende Steuerschalter in der Speichersteuereinheit 68 von Pig. Ö einzustellen. Außerdem stellen die Speioherprograminsteuersohaltungen die entsprechenden Stellen des Abdeokreglsters 366 ein, und diese wiederum erzeugen entsprechende Signale auf Leitungen 368, die die Abdeokeohalter 370 (Pig. 8) einstellen.
Ein Spelcherausgabereglster 372 (auch in Pig. 1OA gezeigt) ist das Register, in dem ein Datenwort mit den entsprechenden Steuerinfor- «at ionen zus annenge stellt wird, um Über das Pufferregister und die Speicherausgebemultlplexschaltung zum richtigen Rechenmodul Übertragen zu werden. Wenn das 5peichorau3gabcreglster noch durch Informationen aus der vorhergehenden Anforderung besetzt ist, fehlt auf Leitung 374 des Signal "Ausgaberegister unbesetzt", das die Speicherprogranarsteuereinheit speist. Durch das Fehlen dieses Signale wird verhindert, da3 die Speicherprograrjnsteuerelnheit ein Wort aus dem assoziativen Speicher 3^2 in das Speicherausfcaberegister sendet. Wenn die verhergehende Anforderung das Spelcher-
0098 £ 1 / " S58
U7A047
ausgaberegister verlassen hat, 3tellt das Signal MFM auf einer aus der SpeieherausgabemultIpIexoInholt kommenden Leitung yjb daa Anforderungsbit zurück und erzeugt so cic3 Signal "Auogaberegister unbesetzt" auf Leitung 374, wodurch der Auegabete11 dea Speicherprogranunsteuerumlaufs eingeleitet wird, falls der Zugriff aus dem assoziativen Speicher vollständig 1st. Jetzt übertragt das Signal" "Abfühlverstärker" betätigen auf Leitung 378 die Einstellungen dor Ausgangsanzeiger 74 (Pig* 8) Über die Leitungen ?60 und dl*: Abfühlverstärker 3Ö2 zum Datenwortteil 284 des Speicherausgaberegisters 372. Außerdem liefert die Speieherpronyammsteuereinheit ein Signal "Steuerinformation weiterleiten" Über eine Leitung 386 zu den Und-Schaltungen 388 und 390. Die Und-Schaltung 388 leitet die im Rechenmodul-Adressenregister 358 gespeichorte Rechenmoduladresse in den Reohcnrnoduladressonteil 392 des Speicherausgaberegisters weiter, während die Und-Schaltung 390 die feststehende Speicheradresse dieses assoziativen Speiohermoduls, wie sie auf den feststehenden Speloheradressenschaltern eingestellt 1st, über eine Leitung 394 In den 3peichoradressonteil 390 des Speicherausgaberegisters weiterleitet. Das Signal "AbfUhIverstärker betätigen" auf Leitung 378 betätigt außerdem dio AbfUhIverstärker 39ö für die Übertragung der Informationen in den Steueranzeigern 70 (Pig.8) aus dem assoziativen Speicher 342 Über die Leitungen 400 In einen Uberelnstlmmungsanzolgeteil 402 des Speicherausgaberegisters· Der Uberelnstimmungsanzelger 402 zeigt an, ob keine Übereinstimmung in dem assoziativen Speicher auf die Speieheranforderung hin besteht, ob genau eine Übereinstimmung im Speicher auf die Anforderung hin besteht oder, wenn keines dieser Signale vorhanden 1st» ob mehrere Übereinstimmungen Im Speicher auf die Anforderung hin bestehen. Außerdem liefert die Speicherprograinmsteuereinhelt das Signal nAnforderungsbit einstellen" auf Leitung 404, das dann von der Speicherausgabemultiplexeinheit verwendet wird bei Einleitung seiner Operation, wie es in Verbindung mit Pig. 1OA und 1OB beschrieben ist.
Wenn das Datenwort eine Konstante ist, wie es das Signal "Status C'1 auf Leitung 40o 'anzeigt, muß die Speloherprogranmsteuereinhelt
009851/1558 -no
U7A047
dle erneute Eingabe des Datenwortes In den Speicher veranlassen. In diesen PalIe liegt ein Signal "Zu den Eingabeschaltern leiten" auf einer Leitung 4Od vor« das die Und-Schaltungen 410 bcttttlgt, die daraufhin Signale zum Einstellen der Slngabosohalter 34b Über die Leitungen 344 erzeugen.
Entsprechend der zeitlichen Steuerung duroh das Signal auf Leitung 190 aus einem Systemtektgeber 412 (Pig.2A) Übertragen die Und-Schal tungen 414 den gesamten Informationssatz einschließlich der Steuer· und der Datenworttelle aus den Spelcherausgaberegister Ober die Leitungen 4ΐυ zu einem Pufferregister 4l8 (Pig. 10A).
Speicheradressengenerator
Jetzt sei der Speicheradressengenerator 24 (Pig· 2B) in Verbindung mit Pig. 13 in einzelnen erläutert. Der Speioheradressengcnerator bestimmt den Namen des Speichers« in dem der nächste Befehl oder Operand zu finden 1st.
Neue von der Eingabevorrichtung kommende Befehle weisen eine Zuteilung zu einem assoziativen Spelohermodul auf* die vorher als Teil des Elngabeprogramms erzeugt worden 1st« Diese Zuteilung erfolgt zu zwei Zwecken, und zwar erstens» damit dJe Befehl· glelchmäfilg über die In dem System enthaltenen assoziativen Speiohermodule verteilt werden, und zweitens, damit eng zusammenhängende Wörter in dem binären Baum in verschiedenen Speiohermodulen erscheinen und so gleichzeitig entnommen werden können, um die Oesamtzugrlffs« zelt zu verkürzen. Zu diesen Zweck wird eine einfache Verteilungsregel angewendet. Nach dieserRegel wird die Speicheradresse des Polgebefehls um 1 erhöht, wenn von einem linken Zweig aus den Baum hinunter vorgegangen wird, und die Speicheradresse des Polgebefehls wird um 1 verringert, wenn von dem reohten Zweig aus den Baum hinunter vorgegangen wird. Wenn z.B. ein linker Operand im Spoloher i gespeichert worden 1st, findet man den Polgebefehl im Speicher 2, und daher steht der rechte Operand Im 3peloher 3, wenn angenommen wird, da8 das System mindestens drei Speicher enthält. Wenn angenommen wird, daS die M Speloher in dem System mit 1, 2, 3... M
009851/1558
- BAD ORIGINAL
U7A0A7
numorlert sind, nuß für den Fall gesorgt werden, daS naoh der He^uI elno Adresse erreicht wird, die ?,rö3er als Π oder kleiner als 1 let. tonn daher Speicheradressen durch die Addition von 1 errechnet werden, wird ein Test ausgeführt, um zu sehen« ob der Vscrt M durch die nächste Adresue Überschritten wird. Wenn versucht wird, cien Wert 1 zu dem Wert M zu addieren, wird dafür die Adresse 1 eingesetzt, und die Operation £oht dann zyklisch weiter. wenn die Operation von der Adresse eines rechten Operanden aus eingeleitet wird, wird die Speicheradresse des Polgebefehls durch das Subtrahieren vcn 1 gefunden, und die Speicheradresse des linken Operanden wira dann durch das Subtrahieren von 1 von der Befehls-Speicheradresse gefunden. In diesen Falle muH ebenfalls geprüft worden, ob die fragliche Adresse gleioh 1 1st. Statt 1 tu subtrahieren, wird in diesen Falle dls Adresse N verwendet, und dl· Operation geht dann zyklisoh welter.
Der iJpelcheradressengenerator (Fig· 13) hat vier Haupt te He, nänlich ein Speich'iradresaenein^abererjlstcr 420, ein Soelcheradresaenausn?.bereglster 422, eine "1 hinauf oder 1 hinunter"-ZählelnheIt -1Ot und eine Einheit 42L-, die prüft, ob die Adresse gleich (l) oder gleich (M) 1st. Außer diesen vier Hauptteilen sind vier Quellen für feststehende Adressen vorhanden» ninlloh ein Spelcher-(l)-Anzeiger 428, ein Spelcher-M-Anzeiger *30, eine Elngabevorrichtung-Adressenquelle 4J2 und eine Ausgabevorrichtung-Adressenquelle 4}4. Außerdem sind verschiedene Und- und Oder«Schaltunken vorhanden, die in Verbindung alt der Beschreibung des Generators ncch aufgezählt werden.
Vlihrend der Boladungnphese wird ein Befehl aus der £ingabevorrlch-Ua^ 10 (Fir;, ck) Ub-r die ipelchcrausgabor.ultiplexeinheit in das Herchlspufferrcgi3ter 14 übertreten. Die jpeichcraaresee des Q ac.'ioziatlven Spelcherr.cduls, in den dieser Befehl eingeführt werden soll, wird ale Teil der Funktion der Eingabevorrichtung tn err.eu.^t. Aus cen Esfehlsoufferrec;ister 14 (Pig. 2B) wird die Spei- >„ clv rnaresse durch die Leitungen 4*o in das Speicherr.dressen-Ein-"^ F, . -Tf-jister hCO ein-:cru^j?t. Vcn hier aus i:ann die Adresse ütf.·:· '■r Ii ■-,:■?]■.■ itun-cn 4j- unj Oier-ochaltungen *kQ in ein Spelc^cracires-
wrat -* X-Ie QusraUoyDLUex^Und-^
BAD OfsiQlNAL
Sohaltungen 4}O wird durch das Signal "Adresse zum Ausgaberegistor schicken" auf Leitung 442 gesteuert, das aus der Reohenniodulprograrransteuerelnhelt 26 (Flg. 23) kommt. Aus dem Speicheradressen-Ausgaberegister 422 wird die Adresse Uoer Und-Schaltungen 444 und Leitungen 44o zu dem Rechenmodul-Ausgabere£l3ter In der Rechenmodul-Ausgabemultiplexeinhöit (Fig. 9A) übertragen. Dies· Und-Schaltungen 4>4 haben den Zweok, In allen Fällen die Speicheradresse aus dem Ausgaberegieter 422 zu entnehmen. Sie werden gesteuert durch das Signal "Adresse zur Rechenmodul-Ausgabemultip1exeInheIt leiten" auf Leitung 448, das von der Reohenprogrararasteuerung 26 erzeugt wird.
Wenn der Kennfeldgenerator 36 (Flg. 2B) Kennfelder für einen Befehl Im Befehlsregister und für den linken Operanden oder den rechten Operanden In dem entsprechenden Register «zeugt, empfängt die Rechenprogrammsteuereinheit ein Signal« welches das Datenwort Identifiziert, das sich als linker oder rechter Operand bereits Im Rechenmodul befindet. (Diese Operation des Kennfeldgenerators wird In Verbindung nlt Fig. 14 und 15 noch im einzelnen erläutert). Die Speicheadresse dieses Operanden steht Im Spelcheradressen-Eingaberegieter 420 zur Verfugung, wie es zur Zelt der Sendung der vorhergehenden Anforderung bestimmt war.
Die Speicheradresse des Folgebefehlswortes wird errechnet duroh die Addition einer 1 oder durch die Subtraktion einer 1 von der Speicheradresse des Operanden in den "1 hinauf- oder 1 herab-"Zählsohaltungen 424 entsprechend der Steuerung durch da* Signal "Aufwärtazithlen" auf Leitung 430 oder durch das Signal "Abwärtszählen" auf Leitung 452 aus der Reohenprogrammsteuerelnhelt in Abhängigkeit davon, ob der Operand ein linker oder ein rechter Operand 1st. Dieses Resultat kann über Und-Schaltungen 454 und Oder-Schaltungen zum Speicheradressen-Ausgabereigster 422 übertragen werden· Dl· Operation der Und-Schaltungen 454 wird duroh das au· der Rechenprograamsteuerelnheit 2ö stammende Signal "Zähler betätigen" auf Leitung 456 gesteuert.
UUS)UbI M 558 BADORIG^'
U7A0A7
Wenn eine Speicheradresse im Einncberecistor 420 entweder ßleich 1 ocr-r gleich M ist, wird entweder da3 Signal "Speicheradresse ■ (l)" auf Leitung 45d oder das Signal "Speicheradresse » (M)" auf Leitung 460 zu der Rechenorogranansteuereinheit Ubertrrtgen, wo diese Signale die Operation dieser Einholt verändern* Wenn die Adresse gleich M 1st» also sonst ein Aufwärtszähl Vorgang erforderlich wlire, v/ird die Adresse 1 statt dessen eingesetzt, indem eine 1 Über die Leitungen 462 unter der Steuerung der Und-Schaltungen 464 in Verbindung rait den Signal OATS 1 auf Leitung 46ö Übertragen. Dieses Signal GATE 1 v/ird von der Rechenprogratimsteuereinhe it erzeust. Die Adresse wird durch die Und-Schaltungen 464 über die 0der-3chaltungon 440 zum Speichöraüreesen-Auagaberogister 422 übertragen, um zur Rochonmodul-Ausgabemultiplexeinheit Übertragen zu werden, wie schon erwähnt. Falls die Speicheradresse im Eingaberegister 420 eine 1 1st, also sonst ein Abwärtszühlvorgang nötig wäre, wird die Adresse M Über die Leitungen 468 und die Und-Schaltungen 470 unter der Steuerung des Signals GATB N auf Leitung 472 über die Oder-Sohaltungen 440 zum Speicheradressen-Auagabcregleter 422 Übertragen.
Wenn bei der Operation nach Regel 1 oino Eingabevorrichtungsadresse oder bei der Operation nach Regel 13 eine Ausgabevorrichtungsadresse benötigt wird, liefert die Rechenprogremmsteuereinheit entweder das Signal "Eingabevorrichtungeadresse weiterleiten" auf Leitung 474 oder das Signal "Ausgabevorrichtungsadresse weiterleiten" auf Leitung 476 zur Steuerung von Und-Schaltungen 478 oder 480, damit die feststehende Eingabevorrichtungsadresse aus der Einheit 4^2 oder die feststehende Ausgabevorrichtungsadresse aus der Einheit 434 über die Oder-Schaltungen 440 zum Speicheradreseen-Ausgaberegister 422 Übertragen wird. ·
EAD
009851/1558
U74047
DIe so erhaltene und Im Spelchcr&dressen-AusgabercKlster 4i?2 geepeioherte Adresse kann Über Und-3ohaltungen 482 zum Speicheradressen-Elngabereglster 420 zurUckübertragen werden. Diese Operation wird durch das aus der HechenprogrammsteuereInhalt stammende Signal "Adresse zum Eingaberegister leiten" auf Leitung 484 gesteuert. Diese Operation 1st z.B. erfordernoh, wenn die Speicheradresse dos rechten Operanden errochnet wird, fall3 zunächst die Adresse des linken Operanden verfügbar 1st. In diesen Falle wird zuerst die "1 aufwärts zählen"-Operatlon ausgeführt» um die Speicheradresse des Befehls zu bilden, die im Spcicheradressen-Ausgaberegleter 422 gespeichert wird. Die Speicheradresse wird In der sohon beschriebenen Welse derRechenmodul-Ausgabemultipiexeinhe It zugeführt und außerdem zua Eingaberegister rllokUbortragen, wodurch die "1 aufwärts zählen "-Schaltung 424 «ine weitere 1 dezuaddlert werden kann, um die Speicheradresse des rechten Operanden zu erhalten. Die umgekehrte Operation wird ausgeführt, wenn ein linker Operand von einem rechten Operanden abgeleitet werden muß; in diesem Falle werden die "1 abwärts zählen"-Schaltung«η verwendet.
Kennfoldgenerator
Der in Flg. 23 ge se igte Kennfeldgenerator wird In Verbindung mit PIg. 14 und 15 im einzelnen beschrieben· Der Kennfeldgenerator erzeugt die Kennfelder des näohsten Befehle und Operanden gemäß Regel 7 des oben beschriebenen Beladungs- und Lauf programs. Bekanntlich muß, wenn das binäre Baumprograimn abläuft· das Kennfeld des folgenden Befehls und Operanden errechnet werden, da diese Kennfelder zum Identifizieren und Entnehmen der Ihnen zugeordneten WOrter verwendet werden. Um das Kennfeld für den folgenden Befehl und Operanden zu erlangen, wird zunächst die Bitstelle festgestellt, die die extrem rechte "l" des Indexteils des Kennfeldes des gegenwärtigen Befehls enthält. Dann wird das Kennfeld des folgenden Befehls dadurch gebildet, daß die extrem rechte "l"-Bit-
BAD ORIQ!?..·
009851/1558
U7A0A7
etelle im Kennfold des gegenwartlccn Befehls auf 0 und die direkt links davon liegende Stelle auf "l" gestellt werden. Ebenso wird zur Erlangung des Kennfcldes de3 nächsten linken oder rechten Operanden die Bitstelle direkt links vcn der extrem rechten "lH-DltsteHo auf "O" bzw. "1" Gestellt. Dieses VerfrJiren 1st In dem Plu3dlagroir.n von Pig. 14 dargestellt. Die fUr die Ausführung der In dem FIuQdloßramm aufgezählten Operationen benötigten Schaltungen sind in Pig. 15 gezeigt. Sie bestehen aus einem Indexregister 486, einer "Extromrechte 1 "-Schaltung 483 und einen linken oder rechten Operandanzeigebitreglster 490. Cenäfl Fig. 15 fUhren die Kennfeldgenerator-Einsansssteuerungon in die Indexteile οine3 linken Operandregister3 492, eines rechten Operandreglsters 494 und eines Befehlsregisters 496. In der Plgur sind nur die ElnG^ngsleltuneen, Über die die Anhänge auf den laufenden Stand gebracht werden, dargestellt.
Das Indexregister 486 besteht aus S Bits. In der Plgur sind vier solche Bits gezeigt* Bit "1" 493, Bit "S-2" 500, Bit "S-I" 502 und Bit "S" 504. Die Blt3 sind »On links naoh reohts numeriert. Die EIngangsslgnalleltungen für das Indexregister sind zwar In der Figur nicht Gezeigt, aber sie korken aus dem Befehlsregister 2Ö (Pig. 2B). Ein Anhang wird aus dem Befehlsregister während der Ausführung der Regel 7 in das Anhangsregister geleitet. Die Ausgangsleitungen 506, 508, 510, 512, 514, 516, 518 und 520 de· Anhangsregisters bilden die Hingänge für die "Extrem reohte 1"-Schaltung. Außerdem führen die Null-Ausgangsleitungen 506, 51Ο, 514 und 518 In die Anzelgeblteln* gangssohaltung.'
Die "Extrem rechte 1"-Schaltung 488 1st eine PriorItKtsschaltung, die dazu dient, beginnend von rechts das erste Indexbit su suchen, das in den "1"-Zustand gebracht wird. Das über Leitung 522 aus der Rechenmodul-Prograramsteuereinhelt 26 (Pig. 2B) könnende Signal "Neue Kennwörter erzeugen" wandert vom extrem rechts stehenden Indexbit aus nach rechte, bis es zur ersten im 1-Zustand befindlichen Bitstelle gelangt. An dieser Bitstelle wird das Signal In die Anzelgebitelngangaachaltung η und in das rechte oder das linke Operandregister und das Befehlsregister geleitet.
009851/1558
Se eel z.B. angenommen, daß alle Indexbits "l", "S-2", 11S-I" und "S" auf 0110 stehen. Das Ergebnis 1st» daß ein Signal auf die Ausgangsleitungen 50ό« 512, 5l6 und 518 gelangt. Nun wandert das über Leitung 522 hereinkommende Signal "Neue Kennfelder erzeugen" zunächst duroh eine Und-schaltung 524 zu einer Leitung 526 und In die Bitstelle S-I. In der Bitstelle S-I gelangt das Signal "Neue Kennfelder erzeugen" Über eine Und-Sohaltung 528 auf eine Leitung 530, da die Bitstelle S-I Im 1-Zustand ist. Das Signal auf Leitung 530 zeigt an, daJ diese Bitstelle die extrem rechte "l" enthält· Falls das Indexregister nur Nullen enthalten hatte, wäre da3 3ignal "Neue Kennwörter erzeugen" durch dieUnd-Schaltungen 524, 532, 534 und 536 weitergeleitet worden, um einen Fehler anzuzeigen, da das Indexregister unmöglich lauter Nullen enthalten kenn. Falle das Indexregister eine 1 in Bitstelle 1 und Nullen In allen anderen Bitstellen enthalten hätte, wäre das Signal "Neue Kennwörter erzeugen" durch die Und-Schaltungen 524, 532, 534 und 538 gelangt, υπ das Ende des Bauosprogramms anzuzeigen. Das Signal "Ende des Baumprograimss11 wird zur Rechenmodul-Programrasteuereinheit 26 (Flg. 2D) gesendet, um anzuzeigsn, daß der in Ausführung begriffene Befehl der letzte Befehl des Programms 1st.
Die Signale auf den Auegangsleitungen 540» 530 und 542 der "Extrem rechte l'-Sohaltung zeigen an, welche Bltetelle dee Indexregisters die extrem rechte 1 enthält. Diese Ausgangssignale werden In die Anzelgeblteingabesohaltungen eingespeist, die aus einer Oder-Schaltung 544 und den Und-Schaltungen 546, 548 und 550 bestehen. Die Anzelgebltelngabeschaltunjtn tasten den Zustand der Bitstelle unmittelbar links von der Stelle mit der extrem rechten 1 ab. Wenn diese BItstelle auf O steht, zeigt sie an, daß das Kennfeld des gegenwärtigen Befehls zu einem linken Operanden gehört, und wenn diese Bitstelle
; auf 1 steht, zeigt sie an, daß dos Kennfeld dieses Befehls zu einem rechten Operanden gehört. Es eel s.B. angenommen, defl die Bitstelle S-I die Bitstelle mit der extrem rechten 1 1st. In diesem Falle erscheint das Signal "Neue Kennfelder erzeugen" auf Leitung 530, wie.
BAD GRiGiNAL
009851/1558
oben beschrieben. Wenn die Bltstello unmittulbar links von der Bitstelle S-I, also die Bitstelle S-2?, In O-Zuatand ist, veranlaßt ein auf beiden Leitungen 510 und 530 erscheinendes Signal die Und-Schaltung 548, ein 3ignal durch eine Oder-Schaltung 54*4 zu senden und das Anzeigebit so einzustellen» daß ein linker Operand angezeigt wird. Die Anzeigebitschaltung 490 i3t vorher durch ein Signal "Gelöscht" auf der Ausgang3leltung 552 der Rechenmodul-Programmsteuereinheit 26 in den gelöschten Zustand gebracht worden.
Der Ausgang der Anzelgebitschaltung zeigt an, üb der gegenwärtige Befehl ein linker oder ein rechter Operand wird, und danit, ob olch die Operation von einem linken Zweig oder von einem rechten Zweia; aus den Baum hinunter bewegt· Diese Information wird über die Ausgangsleitungen 554 und 55<5 der Rechenmodul-Programmsteuereinheit 26 entweder als das Signal "Linker Operand" oder als des Signal "Rechter Operand" zugeführt.
Die Ausgangsleitungen 540, 530 und 532 der "Extrem rechte 1"-Schaltung führen auch zum Befehlsregister 496, zum rechten Operr.ndreci.ster 494 und zum linken Operandregiater 492. Diese Ausgan^sleituncen stellen den Indexteil des Kennfeldteiles dieser Register so ein, daJ3 er ihre korrekten Kennfelder anzeigt« Das bedeutet, dafl das Befehlsregister das Kennfeld des nUoheten Befehle tnthält· und daß entweder daa linke oder das reoht· Operandroglster das Kennfeld des nächsten Operanden enthält in Abhäng&elt davon, ob die Operation von links bzw. von rechts aus dem Baum hinab fortschreitet. Ea sei r.B. angenommen, daß die Bitstelle S-I die Bitstelle mit der extrem reohten 1 ist,und daß daa auf der Ausgangsleitung 530 der "Extrem reohte 1"-Schal tung erscheinende Signal die S-1-Bitoteile 553 des Befehlsregisters in den O-Zustand bringt. Dieses Signal bringt außerdem die S-2-Bltetelle 56O des Befehlsregisters in den 1-Zustand, die S-2-Bitstelle 562 des rechten Operandregisters in den 1-Zustand und die 3-2-Bitstelle 564 des linken Operandregisters in den O-Zustand.
cc-py
B;..D 009851/1558
-7o- U74047
Obwohl die Schaltungen eins Änderung in Zustand aller drei Register anzeigen, werden tatsächlich nur zwei dieser Register verändert» ds. das dritte vorher schon in den für das Eingangssignal erforderlichen Zustand gebraoht worden 1st. Es brauchten nur höchstens zwei Bits in jedem Register verändert zu werden, weil das Kennfeld des laufenden Befehls vorher in alle Register eingebracht worden war.
Rechenmodul-Ausgangsslgnale
Die Zusammenstellung von Informationen aus verschiedenen Quellen in dem Rechenmodul zur Vorbereitung einer Anforderung, die über das Reohenroodul-Ausgaberegister 66, z.B. in Fig. 9A, über die Reohenmodul-Ausgabemultlplexelnhelt JO zum Elngaberelhenspeioher 44a (Pig. 2A) zu Übertragen 1st, wird nun an Hand von Flg. 16 im einzelnen erläutert.
Zn dieser Figur ist die zusammengestellte Ausgangsinformation aus der zur Übertragung über Leitungen 568 des Ausgangs 366 dargestellt· Diese Leitungen sind auch in Fig. 9A dargestellt, wo sie in ein Ausgabereglster 86 führen. DIo Ausgangsleitungen sind in zwei Hauptteile unterteilt, nämlich einen Steuerteil 372 und einen Datenwort·· teil 374. Der Steuerteil 372 ist in vier Felder mit den durch entsprechende Leitungen dargestellten Eingingen eingeteilt. Die zwei Eingänge zu dem Feld für das Anforderung8bit R.B. 376 sind die 1- und die O-Leitung. Das Anforderungsbit wird eingeschaltet oder in den 1-Zustand gebraoht durch das Signal aus der SpeichersteuerInformationseinheit auf einer Leitung 380 und abgeschaltet oder in den O-Zu8tand gebraoht duroh das Signal CF2 auf Leitung 378. Die Erzeugung dieses letztgenannten Signals 1st in Verbindung alt Fig. 9B erläutert worden. Die ebenfalls aus der Spelohersteuerlnformatlonseinhelt kommenden Leitungen 382 führen den Programmoode Prog. 384, der aus dem Befehl ftir den assoziativen Spelohermodul (Pig. 12) bezüglich der Funktion, die dieser ausfuhren soll, besteht. Die ebenfalls aus der Speichersteuerinformationseinheit kommenden Leitungen 386 liefern die feststehende Roohenmoduladresso 388, die diesen Recheiiraodul identifiziert (im vorliegenden Falle z.B. den Reohenmodul 2). Die Leitungen 446 aus dem Speloheradressengenerator (Pig.13) liefern die Speicheradresse 39O·
009851/1558 bad original
Für das Datenwort 574 sind Mehrweg-Oder-Schaltunken durch die Zahl der in Jedes Unterfcld könnenden Leitungen angedeutet. Es sind drei Eln^.angsschaltungen durch Klammern 59?., 594 und 590 dai'ceatollt, die Informationen In das gcs&sto Datenwort einführen, d.h. in alle Unterfelder. Zunächst werden die Informationen auf den Leitungen 593, die durch die Klammer 592 dargestellt werden, aus den rechten Operandregister 22 über die Und-Schaltungen c00 unter der 3teuerung des Signals "Datenwort durchlassen" auf Leitung o02 aus der Rcchenmodul-Programmsteuereinheit geliefert.
Wenn das ganze Dntonwort 574 aus den llnlcen Operandregister 20 koir.tnen soll, wie es die Klammer 59*1 angibt« werden Verbindungen hergestellt Über die Leitungen OC* durch die Und-Schaltungen u)6 unter der Steuerung des Signals "Datenwort durchlassen" auf Leitung 008 aua der Rechcnmodul-Prograainsteuerelnheit. Wenn schließlich das Datenwort 574 aus dem Befehlsregister 28 können soll, wie es die Klammer 590 andeutet, erfolgt die Übertragung Über die Leitungen UlO durch die Und-Schaltungen 612 unter der Steuerung des Signals "Datenwort In 30 eingeben" auf einer Leitung 614 aus der Rechenraodul-Progrcinfflsteuerelnheit (Pig· 17B).
Es ist nun möglich, die Steuerung von Daten In die einzelnen Unterfelder des Datenwortes zu betrachten. ZunXohst sei das Aufgabenldentlflzlcrungsslgnal 016 betrachtet, das Über elno Leitung bl8 und Und-Sohaltungen 620 aus dem Aufgabenteil 622 des Befehlsregisters 28 geliefert werden kann. Die Und-Sohaltungen 620 werden durch das Signal "Aufgabe in JO eingeben" auf Leitung 624 gesteuert. Der Aufgabenteil 6Io des Ausgangs 566 erfordert 4-Weg-Oder-Sohaltungen fUr diese Eingangssignale, wobei einer der Eingänge duroh die Leitungen 618 und die anderen drei Eingänge duroh die Klammern 592, 594 und 59b dargestellt sind.
Der Statusteil 026 des Datenwortes erfordert 7-Weg-Oder-Schaltungen, dargestellt durch die vier Leitungen 628, 63O, 6^2 und 634 und die drei Klaranern 592, 59* und 596. Der Status kann aus dem
009851/1558 BAD ORIGINAL
Statuateil 636 des Befehlsregisters 28 über Und-Schaltungen 638 und Leitungen 63O zum Ausgang übertragen werden. Die Und-Schaltungen 636 werden durch das Signal "Status in 30 eingeben".auf Leitung 640 gesteuert. Der feststehende Eingang I 6*2 kann dem Statusteil 626 des Datenwortea über die Leitungen 628 unter der Steuerung der Und-Schaltungen 644 zugeführt werden. Der Statuateil kann von den Reehenprogramnisteuersignalen QATE I 4 L4 GATS I ft D oder GATE I abgeleitet werden, von denen jedes den I-Status hervorbringt. Daher i3t eine 3-Weß-Oder-Schaltung 646 für die Steuerung der Und-schaltung 644 vorgesehen, und die Eingangssignale für die Oder-Schaltungen 646 sind die oben erwähnten Signale GATE I & L auf Leitung 648, GATE I & D auf Leitung 650 und GATE I auf Leitung 652, die aus der Rechenmodul-Programmsteuereinheit stammen.
Der Status T 654 kann zum Statusteil 626 des Datenwortes von einem feststehenden Eingang 654 aus durch die Und-Schaltung 656 unter der Steuerung des Signals GATE T auf Leitung 658 aus der Rechenmodul-Programmsteuereinheit Übertragen werden. Ebenso kann der Status C von einer fiststehenden Quellenschaltung όυΟ aus Über eine Leitung 664 durch die Und-Schaltung 662 unter der Steuerung des 3ignals GATE C auf Leitung 604 ebenfalls aus der Reohenmodul-Prograramsteuerelnheit (Fig· 17B) Übertragen werden·
Als nächstes oel der Kennfeldteil 666 de3 Datenwortes 574 betrachtet. Hler eind 6-Weg-Oder-Sohaltungen erforderlich, wie es die drei' Leitungen 668, 670 und 672 zusammen mit den Klammern 592, 594 und 596 erkennen lassen. Der Kennfeldteil 074 des linken Operandregisters 20 kann über Und-Schaltungen 676 und Leitungen 068 zum Kennfeldteil 666 des Datenwortes übertragen werden. Zn diesem Falle werden die Und-Schaltungen 676 durch das Signal "Kennfeld weiterleiten" auf den Leitungen 678 gesteuert. Wenn der KennfeldteiJ<666 des Ausgangsdatenwortes 574 aus dem Kennfeldteil 680 des Befehlsregister 28 übertragen werden soll, erfolgt die übertragung über die Leitungen 670, die Und-Schaltungen 682 unter der Steuerung des Signals "Kennfeld in 30 eingeben n auf Leitung 684. Wenn schließlich der Kennfeld-
009851/1558
copy bad original
U74047
teil 666 aus dem Kennfeldteil fc>S6 des rechten Operahdreglsters 22 übertragen werden soll, geschieht das auf Leitung 672 Über Und-Schaltunken 6S8 unter der Steuerung des Signals "Kennfeld in JO eingeben" auf Lei· tung 690, das aus der RechenmodulrProgranrasteuerMnhoit (Fig. 17A) ab· geleitet 1st.
Nun sei der Datenteil .692 des Datonwortcs betrachtet» wobei zu beachten ist, daS in manchen Fällen dieser Datenteil welter unterteilt ist in de: Codeteil 694 und den Gegenstandste11 696. Zunächst sei die Operation bc trachtet, bei der der Datenteil als Ganzes behandelt wird* Wenn der Datenteil 693 des linken Operondrecisters 20 zum Datenteil 692 Überträgen werden soll, geschieht das über die Leitungen 7CO und die Und-Schaltungen 702 unter der Steuerung des Signals "Daten weiterleiten1* auf Leitung 704 aus der Rechenmodul-Prosramrasteuereinheit. Ebenso kann der Detente 11 692 aus den Datenteil 706 des Befehlsregisters 28 über die Leitungen 703 und die Und-Schaltungen 710 unter der Steuerung des Signals auf der Leitung 712 aus der Reohenmodul-Prograomsteuereinheit übertragen werden.
Nun soi als nächstes der Code C94-Teil des Datenteils 692 betrachtet. •Dieser kann aus einer feststehenden Quelle L 714 oder aus einer feststehenden Quelle D 716 über die Leitung 7lS bzw. die Leitungen 720 durci die Und-Schaltungen 722 bzw. die Und-Schaltungen 724 unter der Steuerung des Signals auf Leitung 643 bzw· des Signals auf Leitung 65O Übertragen werden«
Der Gegenstandstell 696 des Datenwortes 574 kann aus dem Kennfeldteil 68O des Befehlsregister 28 über Und-Schaltungen 726 und Leitung 728 Übertragen werden. Die Und-Schaltungen 726 werden durch das Signal "Kennfeld in Gegenstand von 30 eingeben" auf Leitung 730 gesteuert. Die Unordnung, durch die ein Kennfeld zu einem Gegenstandsfeld wird, ist gemäß den Regeln 2 und 11 erforderlich.
PUr den Codeteil 694 sind 7-Weg-Oder-Schaltungen nötig, dargestellt durch die Leitungen 700, 708, 718, 720 und die Klammern 592, 594, 596. Für den Gegenstandsteil 090 sind o-Weg-Oder-Schaltungen erfor-
copy ! { 0 0 9 8 51/15 5 8 EAD 01GiNA
derlloh, dargestellt duroh die Leitungen 700, 708« 728 und die Klammern 592« 594, 596.
Reoherunodul-Progr amme teuere lnhelt
Die Reohenmodul-Programmsteuerelnhelt 26 von Flg. 2D wird nachstehend in Verbindung nit Pig. 17A, 17B und 17C In einzelnen beaproehen. Diese Plguren bilden eine sohematisohe Darstellung der Reohenmodul-Programmsteuerelnhelt in Fora von Eingangssignalen auf der linken Seite, dlo aus anderen Absohnftten des Rechenmoduls zu ihr gelangen, und von Ausgangssignalen auf der rechten Seite, die von der Rechenmodul-Programmsteuereinheit erzeugt und zu anderen Teilen des Systems übertragen werden, ua deren Operation in der richtigen Reihenfolge zu steuern. Bei Jedem Eingangssignal 1st die Bezugszlffer der Einheit von Flg. 2A oder 2B angegeben, aus der das Signal kommt, sowie der Name des Signals und diejenigen Regeln (innerhalb des Blocks), nach denen das Signal benOtlgt wird. Ebenso zeigen die Ausgangssignale reohts, welohe Regeln zu ihrer Erzeugung fUhren, den Namen de« Signale und die Bezugszlffer der Einheit von Flg. 2B, zu der das Signal übertragen wird.
Die Erzeugung der Ausgangesignale in der richtigen Reihenfolge wird Uberwcht duroh konventionelle Sohrlttsohaltrlnge, die unter der Steuerung der Elngangsslgnale arbeiten* und deren Ausgänge ebenfalls unter der Steuerung der Eingangssignale zur Erzeugung der Auegangssignale ausgewählt werden. Die zeitliche Steuerung wird durch den Systemtaktgeber 412 (Flg. 2A) bewirkt» um ein rlohtlges zeitliches Verhältnis zwlsohen dem Reohenmodul und seinen Ausgangssignalen über die Reohenmodul-Ausgabemultlplexelnhelt und andererseits zwlsohen dem Reohenmodul und seinen Eingangs-Signalen über die Speloherauegdsmultiplexelnhelt 12 zu gewährleisten· Außer den Rlngschrlttsohaltungen enthält die Reohenmodul-Progrannisteuerelnhelt Anzeigeeinheiten, die die Betriebsart des Systems angeben. Eine Anzeigeeinheit bestimmt, ob der Reohenmodul bein Beladen 1st und damit, daß er nach einer der Regeln 1 bis 5 arbeitet, oder ob er bei einer Laufoperation 1st
lner der Regeln 6 bis 13 arbeitet. Das Beladen
0 0 9 8 51/15 5 8 bad original
U740A7
wird angezeigt, wenn daa System zuerst eingeschaltet wird, sowie nach jeder Entleerung^- oder A'oatoßoperatlon, wlo βίο die Regeln 5, 9, 12(b)(ll) oder 13 vorsehen. Wenn die Eingabevorrichtung keine gemäß Regel 1 in das System einzugebenden Oaten enthält, wird der Reohenmodul gemMfl Regel 6 auf die Laufoperation umgestellt·
Als Beispiel für die Wirkungsweise sei angenommen, daß eben eine AbstoBoperatlon eingeleitet und damit der Reohenmodul auf die Beladungsoperation zurückgestellt worden 1st. Oemlß Regel 1 wird zuerst eine Anforderung ausgegeben« üb zu sehen« ob sich la der Eingabevorrichtung zu einem Reohenoodul zu Übertragende Informationen befinden. Die Anforderung kann erst dann Übertragen werden, wenn die vorhergehende Anforderung« in diesem Falle die Abstoßanforderung, erfüllt worden 1st. Daher ist für die Einleitung der Operation das Signal "Anforderung Übertragen" aus der Reohennodul-Ausgabemultlplexelnhelt 30 erforderlloh. Erzeugt werden die Signale "Adresse der Eingabevorrichtung weiterleiten"« das turn Speloheradressengenerator 24 Übertragen wird« und "Adresse in 30 eingeben", das ebenfalls zum Speicheradressengenerator 24 geht. Diese beiden Signale werden zum SpeIcheradreesente11 590 (Flg. IC) kombiniert, der in diesem Falle die Adresse der Eingabevorrichtung darstellt.
Außerdem liefert die Reohenmodul-Prograiansteuereinhelt das Signal "Eingabevorrichtung naoh bereiter Arbeit abfragen" zur SpeiohersteuerInformationseinheit 42 (Flg. 2B) zur Blnoodlerung in den Programmteil 584 (Flg. 16), und zwar wird das Signal aus der Spelohersteuerlnformatlonseinheit 42 Ober die Leitungen 5Ö2 übertragen. Das Signal "Reohenmodulnainen« Befehlapufferregistsreode und Anforderungsbit weiterleiten"« das der SpeloherSteuerInformationseinheit 42 zugeführt wird, codiert die Rechennoduladresse 568 und das Anforderungsbit 576 von Fig. 16. Hierduroh wird der Steuerten 572 des als Anforderung zu Übertragenden Signalausgangs vervollständigt. FUr eine zu einer Eingabevorrichtung gehende Anforderung ist keine den Datenworttell 574 betreffende Information erforderlioh. Wenn diese Anforderung im Ausgaberegister
009851/1558 BAD ORIGINAL.
U74047
. -76-
gespeichert werden kann, wird eine Vartestandanzelgeelnhelt so eingestellt» da3 sie^eigt, daß der Reohenmodul auf die Erfüllung seiner Anforderung wartet.
Bei RückÜbertragung der Daten aus der Eingabevorrichtung werden ale durch die Speicherausgabemultiplexeinheit 12 (Fig. 2A) dem Befehlspufferregister 14 (Pig· 2B) zugeführt. Bas Vorliegen von Daten in diesem Register» wird durch das Signal "Befehlspufferregister besetzt" angezeigt, das aus dem Befehlepufferregister zur Rcchenmodul-Programmsteuerelnhelt gelangt» Dieses Signal zusammen mit der oben erwähnten Wartestandanzeigeeinheit leitet erneut die Operation der Rechenmodul-Programrasteuerelnheit gemäß Regel 1 ein. Das Vorliegen des Signale "Ubereinstiramungeanzeige für assoziativen Speicher - 0" bedeutet, dafl auf die vorher eingeleitete Anforderung hin keto Information aus der Eingabevorrichtung empfangen worden 1st. In dlosera Falle wird die Anzeigevorrichtung für die Betriebsart der Reahenmodul-Programmsteuerelnheit auf die Laufoperation eingestellt, und die Operation wird gemäß Regel 6 fortgesetzt. Wenn dagegen das Signal "Ubereinstimmungsanzelge für assoziativen Speicher - l" vorliegt, stehen gültige Informationen im Befehlspufferregister zur Verfügung, und die Operation wird geraäS Regel 1 fortgesetzt· Als näohetee wird das Datenwort aus dem Befehlspufferregister 14 in das Befehlsregister übertragen unter der Steuerung des Signals "Datenwort in 28 eingeben". Jetzt wird duroh das Vorllqpn des Signals "Status I oder FC" die Rechenmodul-Programmateuerelnhelt dazu veranlaßt» eine neue Anforderung zu erzeugen, die zu Ihren Ausgaberegister übertragen wird.
Der Spelcheradressentell 590 (FIg* 16) wird aus demSpeloheradressengenerator (Fig. 14) durch die aufeinanderfolgenden Signale "Adresse In Ausgaberegister eingeben" und "Adresse in JO eingeben" entnommen. Der Datenworttell 574 des Ausgaberegisters kommt in diese« Falle aus dem Befehlsregister 28 durch das Wirksanwerden des Signale "Datenwort in JO eingeben? Dor Programmteil 584
BAD ORIGINAL
(Fig. 16) wird in der Speichersteuerinformationseinheit 42 (Fig.2B) unter der Steuerung des Signals "Im eraten leeren Register speichern" verschlüsselt. Sohlie31Ioh liefert die Speichersteuerinformationseinheit 42 den Anforderungsbitteil 576 unter der Steuerung des Signals "Rechenmodulnamen und Anforderungsbit woiterleiten" zugeführt. (Dieses Signal bildet auch die Reohenmoduladresse 588, die für die vorliegende Anforderung aufler Betraoht bleiben kann)·
Beispiel für Laufoperation
Ein Beispiel für die Wirkungsweise des gesamten Systems» wobei der Reohenmodul die Laufoperation ausführt« sei nun unter Bezugnahme auf das in Fig. 6 gezeigte Rechenprogramm betraohtet. Bei dieses Programm handelt es sich ua die sehr einfache Aufgabe Y - AB + CX. Das baumförmlg aufgebaute Programm weist die beiden Multiplikationen und die Addition der Gleichung wie folgt auf 1 Der linke Hauptzv/eig besteht aus den drei Befehlswörtern Bit den Kennfeldern YOOl, YOl ' und YOIl (Nullen rechts von der extrem rechten 1 erscheinen in der Figur nur als Leerstellen; außerdem wird angenommen« daß der Kennfeldlndex vier Bits enthält« und daher 1st in diesem Beispiel 3 gleich 4 in Flg. 15). Der Befehl für diese drei Wörter 1st in den Kennfeld YOl enthalten« wo der Operatlonsoode für die Multiplikation ale Sternchen (*) erscheint. Das Wort mit dem Kennfeld YOOl zeigt« daß die Daten mit der Bezeichnung A für den linken Operanden benötigt werden« und das Wort mit den Kennfeld YOIl zeigt« daß die Daten mit der Bezeichnung B für den rechten Operanden benötigt werden. Ebenso sind für den rechten Zweig die Daten mit der Bezeichnung C« wie es das Wort mit dem Kennfeld YlOl zeigt« zu multiplizieren« wie es das Wort mit dem Kennfeld YIl zeigt« mit den Daten mit der Bezeichnung X« wie es das Wort mit den Kennfeld YlIl zeigt. Die Resultate dieser beiden Operationen« d.h. der linke Zweig mit dem Kennfeld YOl und der rechte Zweig mit dem Kennfeld YIl, werden dann addiert« wie es das Wort mit dem Kennfeld Yl zeigt. Diese Operation wird auf der nächsten Stufe baumabwärts ausgeführt. Außerdem sind in Fig. 6 vier Dateneingänge nit den Bezeichnungloh A« B« C und X und den Werten 1«2; 2,3t 3*4 und 6«7 dargestellt.
009851/155« bad original
U74Ü4/
Es wird angenommen, dafl das Reohensystem wie folgt aufgebaut 1st: Ss sind zwei Rechenmodule vorhanden, dl« als Reohennodul 1 und Rechenraodul 2 bezelohnot sind; daher ist bei diesem Beispiel "N" gleloh 2 (siehe Pig.9A). Es sind drei assoziative 'Spelchermodulc vorhanden, nämlich der assoziative Spelohermodul 1, der assoziative Speichermodul 2 und der assoziative Spelohermodul 3, und da· her 1st bei diesem Beispiel "M" gleloh 3 (siehe Flg. 10A)· Es sind drei Register In Jeder der Eingabereihenapeioher 44 vorhanden, und daher 1st bei diesem Beispiel "0/ gleloh 3 (siehe Flg. 11). Drei Kanäle verbinden den Spelohermodulausgang mit den Elngabereihenspelohern ,und daher 1st bei diesem Beispiel "E" gleich 3 (siehe Flg. 9A). Ebenso verbinden drei Kanäle den Ausgang der assoziativen Speichermodule mit den Reohenmodulen Über die Speioherausgabemultiplexeinheit 12, und daher 1st bei diesem Beispiel "C" gleloh 3 (siehe Flg. 10A).
Die Wirkungswelse des Rechonaystens wird für die untere Dreiergruppe des Baumprogramas (Flg. 6) beschrieben, d.h. für die Wörter mit den Kennwörtern YOl, YIl und Yl. Es wird angenommen, dafl die Beladungsoperation, die In Verbindung mit den Regeln 1 bis 5 beschrieben wos^ea 1st, abgeschlossen ist und dad der Rechenmodul 1 die durch den Befehl mit den Kennfeld YOl aufgerufene Operation ausfuhrt.
Während diese Multiplikationsoperation ausgeführt wird, werden die Kennfelder für die nächste Operationsebene des Baumprogramms durch den Kennfeldgenerator 36 (Fig. 2B) errechnet, wie es in Flg. 13 veranschaulicht ist. Der Zhde;:tell 01 des Kennfeides wird aus dem Befehlsregister 28 (Flg. 2B) über die Leitungen 734 zum Kennfeldgenerator 36 geleitet und erscheint la Indexregister 486 (Flg.15)· In diesem Falle enthalten die Indexbitstelle 498 eine 0, die Indexbitstelle 500 eine 1 und die Indexbitstellen üO2 und 504 Je eine Ebenso wird der Indexteil des Kennfeldes aus dem Befehlsregister JSß über die Zieltungen 34 zum linken Operandregister 20 und zum «eohten Operandregister 22 Übertragen, worin er Jeweils im Index-
BAD ORIGINAL
- 7 OOMIt/tSSt copy T
-79- '
teil des Kennfeldteils 674 des linken Operandregistera und im Indexteil des Kennfcldtells 686 des rechten Operandregisters (Fig.l6) gespeichert' wird. Die übertragung der Indizes wird durch das Signal "Indizes in 36, 22, und 20 einbringen" aus der Rechenmodul-Programmsteuerelnhtlt 26 (FIg 2B) gesteuert, die im einzelnen in Fig. 17A-C gezeigt 1st. .
Nun wird die Operation des Kennfeldgenerators (Fig· I5) eingeleitet durc das Signal "Anzeigebit lösohen" auf Leitung 552 und durch das Signal "Ne Kennfelder erzeugen" auf Leitung 522, die beide aus der Reohennodul-ProgrammsteuereinheIt (Flg. 17B) kommen.
Das Signal "Neue Kennfelder erzeugen", das in die "Sxtree rechte l"-Scha tung 488 gelangt, sucht die die extrem rechte 1 enthaltende Bitstelle he aus. In diesem Beispiel enthält die Bitatelle (2) 500 die extrem rechte
-""' Daher gelangt das Signal "Neue Kennfelder erzeugen" durch die Und-Schaltungen 524, 532 und 73^ zu der AusgangsIeItung 540. Die Ausgangeleitung 540 1st gestrichelt gezeichnet, aber sie wird für den vorliegenden Beispielsfall als durchgehende Leitung angesehen. Das Signal auf der Ausgangeleitung 540 zeigt an, daß die Bitstelle 2 die extrem rechte 1 enthält. Jetzt gelangt das Signal in die der Anzeigeblt-Sinstelleinhelt 490 zugeordnete Eingabeschaltung und in die dem Befehlsregister 496, dem rec ton Operandregister 494 und dem linken Operandregister 492 zugeordnete Eingabeschaltung. Bei der Und-Schaltung der Eingabeschaltung für das Anzeigebit sieht man, daß ein Signal durch diese Und-Schaltung 546 Bindurc geht, well die Bitstelle "1" im O-Zustand 1st. Nach dem Durchlaufen der Und-Schaltung 546 gelangt das Signal dann durch die Oder-Schaltung 544
J hindurch und stellt das Anzeigebit in den 1-Zustand, wodurch angezeigt wird, daß das Kennfeld dieses Befehls einen linken Operanden darstellen wird. Das auf Leitung 5^0 erscheinende Ausgangssignal gelangt ebenfalls In den Indexteil des Kennfeldes des Befehlsregisters 496. Dieses Ausgangssignal bringt die erste Bitstelle in den !-Zustand und die zweite Bitstelle in den O-Zustand. Das im Befehlsregister erscheinende Kennfeld lautet nun also YlOOO. Das Ausgangssignal auf Leitung 540 gelangt außerdem in das rechte Operandregister 494 und bringt die erste Bitstelle in den !-Zustand. Daher lautet nun das Kennfeld YIlOO. Schließlich
Copy
BAD ORIGINAL
009851/155·
gelangt daa Ausganges ifpial auf Leitung 540 auoh in da« linke Operandreglster 492 und bringt dort die erste Dltstello in den 0-Zustand. Das im linken Operandregister erscheinende Kennfeld lautet daher jetzt YOlOO.
Nach der vorausgegangenen Operation befindet sich der Kennfeldbuchstabe Y noch im linken Operandreglater und im rechten Operandregister« und die eben beschriebene Operation verändert daher nur den Indexteil des Kennfeldes.
Das Anzeigebit liefert das Signal "linker Operand1*·auf Leitung 556 zur Rechenmodul-Programmsteuercinheit (Pig* 17B)· Dieses Signal hat die Punktion, der Rechenmodul-Progranmsteuereinhelt mitzuteilen» daß in diesem Falle die Operation bezüglich de3 Programms vom linken Zweig aus den Baura hinunter fortschreitet. Das Resultat der laufenden Operation erscheint infolgedessen auf der nächsten Reohnungs-Aeno als linker Operand.
Nun sei dlo Wirkungswelse des Speicheradressengenerators betachtet. In» £egenwärtl£on Stadium ist daa Programm dabei, eine Anforderung zu erzeugen, die zum Speicher gehen soll, um den Befehl mit dem Kennfeld Yl zu suchen. Ein Teil der für diese Anforderung benötigten Informationen 1st die Adresse des Spelohers, der diesen Befehl ent« hält. Was nun den Speicheradressengenerator (Pig. 13) betrifft, so steht die Speicheradresse des Befehls mit dem Kennfeld YOl derzeit aus der vorausgegangenen Operation im Speicheradreeeeneingaberegleter zur Verfügung, das Jetzt die Adresse 3 enthält. Da Im vorliegenden Beispiel 3 - M 1st, entsteht ein Ausgangssignal auf Leitung 460, wodurch daa Signal "Speicheradresse · (M)" zur Rechenmodul-Programrasteuereinhoit übertragen wird. Da auch das Signal "linker Operand" auf Leitung 556 (Flg. 15) der Rechenmodul-Programmsteuerelnheit (Pig. 17B) zur Verfügung steht, wird ein Signal von dieser Einheit über Leitung 466 der Und-Schaltung 464 (Fig. 13) zugeführt, damit diese die Adresse 1 eus der feststehenden Quelle 428 über die Oder-
BAD OR!G/nal' 009851/1558
H740A7
Solwltungen 440 dem Speioheradreaaenauegabereglster 422 zuleitet. Gewöhnlich hätte das Signal "Linker Operand" die AufwärtszKhloperatlon In Spelcheradreasengenerator nutIg gemacht· aber Im vorliegenden Beispiel war die Adresse bereite für Speicher 3 vorhanden. Da der Speicher 3 der Speicher mit der höohaten Nummer In dem System 1st, geht die Adresse zyklisch, wie oben erläutert« zum Speicher mit der niedrigsten Nummer, also zum Speloher 1, welter« dessen Adresse Jetzt Im Auegaberegister 422 steht·
Jetzt stehen also sur Verfugung das auf den neuesten Stand gebrachte Kennfeld Im Befehlsregister» die auf den neuesten Stand gebrachte Speicheradresse Im Speicherauegaberegister 422 (Flg. 13) und die Aufgabennummer ebenfalls im Befehlsregister· Nun kann daher die Zusammenstellung eines AnforderungsWortes vor eioh gehen» das zu dem entsprechenden assoziativen Spelohermodul gesendet wird, ura das Befehlswort mit dem Kennfeld Yl su entnehmen. Diese Zusammen-. stellung wird In Verbindung mit Flg. 16.beschrieben·
Zunächst eel der Ditcnworttell 374 der Ausgabeeinheit 566 betrachtet) die Aufgabennummer wird aus dem Aufgabenteil 622 des Befehlsregisters 28 durch die Betätigung der Und-Sohaltung 620 unter der Steuerung des Signals "Aufgabennummer in JO eingeben" auf Leitung 624, das aus der Reohenmodul-Programmsteuerelnheit (Flg. 17) kommt» übertragen. Da die in Vorbereitung begriffene Anforderung einem Befehl gilt, 1st der Status I erforderHöh, der aus der feststehenden I-Quelle 642 unter der Steuerung der Und-Schaltung 644 (Flg.l6) duroh das Signal GATE I aus der Rechenmodul-Programmsteuerelnhelt auf Leitung 652 der Oder-Sohaltung 646 zugeleitet wird. Der Status I wird also Im Statusteil 626 Über die Leitungen 628 gespeichert. Das auf den neuesten Stand gebrachte Kennfeld wird aus dem Kennfeldteil 680 des Befehlsregisters 28 Über die Und-Schaltung 682 und die Leitungen 670 in den Kennfeldteil 666 des Datenwortes 574 Übertragen. Diese Operation wird gesteuert durch das Signal "Kennfeld in 50 eingeben" auf Leitung 684. Der Datenteil 692 des Datenwortes 574 1st für dlcae Speicheranforderung nicht nötig.
0 09851/155· bad original
-B2- U7A0A7
Jiun «el der Steuerteil 572 der Ausgabeeinheit 5C6 betrachtet. Der Spelcheradreeeenteil 590 wird über die Leitungen 446 aus dem Spcicheradressenausgabereglster 422 (Flg. 13) durch die Betätigung der Und-schaltung 444 Übertragen, die durch das Signal "Adresse zur Rcohenmodul-Ausgabemultlplexelnheit übertragen" auf Leitung 448 aus der Rechenmodul-Programmsteuerelnhelt gesteuert wird· Zur Zelt der Betätigung der Und-Sohaltung 444 (Flg. 13) wird auch die Und-Schaltung 482 betätigt, um diese selbe Speicheradresse, also Im vorliegenden Falle die Adresse 1 wieder in das dpelcheradressenelngabereglster 420 zurückzuübertragen. Diese letztgenannte Operation wird gesteuert durch das Signal "Adresse in Eingaberegister eingeben11 auf Leitung 464 aus der Reohenmodul-Prograinmeteuereinheit (Fig· 17A). Die Speicheradresse wird zum Speioheradressenelngabereglster rllok-Ubertragen als Vorbereitung der Erzeugung der Speicheradresse des reohten Operanden, die hlernaoh besprochen wird·
Als nächstes wird der Programmteil 584 des Steuerteil· 572 (Flg. 16) über die Leitungen 582 aus der Speiohersteuerinfomatlonselnheic (Pig. 23) übertrafen. Diese r.inheit hat den Pro.^rnirancode so verschlüsselt, wie es das Signal "Abfraßen nach Aufgabe, Stdus, Kennfeld und ni?htlöschend entnehmen" gefordert wird, das aus der Rechenmodul-ProgroErcsteuerelnheit (Fig. 17C) kommt. Schließlich wird das aus der Rechenmodul-Progranmsteurelnhelt kommende Signal "Reche nmodulnamen, Befehlspufferregister und Anforderungsbit weiterleiten* in der Speichersteuerinformationseinheit 42 (Fig. 2B) so verschlüsselt, daß der Rechenmoduladressenteil 588 (Flg. l6) und der Anforderungsbitteil 576 auf den Leitungen 586 bzw· 58O entstehen.
Jetzt enthält das Ausgaberegister 565 des Reohenmoduls 1 die folgenden Informationen! Das Anforderungsbit 576 ist im 1-Zuatand; der Programmteil 584 enthält den Programmcode fUr die Operation des assoziativen Speichermoduls; der Rechenmoduladressenteil 588 enthält die Adresse des Rechenmoduls 2 in seinem ersten Abschnitt sowie den I-Code, der auf das Befehlspufferregister hinweist, in seinem zweiten Abschnitt] der Speicheradressenteil enthält die Adresse
009851/1558
Copy
BAD ORIGINAL
β,- U74047
den assozlflHvrn SpelchPr.T.oduls 3, der dao Eerenieworc entnaxt; xbj Datonworttell 574 enthalten der Aufßabentell 6l6 dio Aufgabennunner 2, der Ctatusteil 026 den status I und der Kennfeldte11 666 das Kennfeld YlCOO.
Die r.ucamacnger.telltc ^ncicheranforderung wird dann durch das Pufferregiater dce Rccherunodule 1 Über einen durch die Rechenmodul-Ausgabeaultlplexelnheit auspewählten Kanal in den Eingabereihenapeloher für den r.ssozlativen Speichcrnodul 1 geleitet, um den erforderlichen Befehl zu entnehmen, der durch die Spelcherausgabemultlplexelnhelt zum Befchlspufferrcglster des Rechenmoduls 1 weitergeleitet wird·
Wie es Fig. 9Ä r.eigt, erscheinen die vorgenannten Informationen Im Ausgaberegister 738 des Rechennoduls 1 und werden von dort aus unter der Steuerung des Signals auf Leitung 90 aua den Systemtaktgeber 412 (Fig. 2Λ) zum Pufferregister 740 tibertragen. Die Jetzt Im Puffer 740 stehenden Informationen liefern das Anforderungesignal CIL auf Leitung 106 (Flg. 9B), das die Und-Schaltungen 110, 112 und 114 erregt. (Die Und-Gcholtungen 112 und 114 sind Im ,Falle des Reohenmoduls 1 nicht nütlr, stti aber als Teil des Rechennoduls beigesteuert worden, um den Modulcharakter aufrechtzuerhalten; mit anderen Worten, die Und-Sohalturgr. 11Γ und 11^» würden benötigt, wenn dieser Rechenmodul mit einer anderen Nummer »reiter hinten in dem Satz von Rechenciodulen stünde).
Das Signal auf Leitung 132, das der Systemtaktgeber 412 erzeugt, betHtigt In Verbindung mit dem Signal CR, auf Leitung 108 die Und-Schaltung 110, so daß diese das Signal HC auf Leitung 130 erzeugt. OetnÄfl Fig. 9A betätigt das Signal HC die Und-Sohaltungen 742, woduroh die Jetzt im Pufferregister 7^0 befindlichen Informationen über die Oder-Schaltungen 72^ auf Kanal 1, Leitungen 7^4,gelangen. Der Speicheradres-, senteil der Spelcheranfordcrungsinforraationen erscheint auf den Leitungen 748, die zu der Spcicheradressendecodiereinheit (1) 186 führen. Da im vorliegenden Beispiel die Speicheradresse für den assoziativen Speiehermodul 1 verwendet wird, erzeugt die Speicheradressendecodiereinheit 186 ein Signal DH auf Leitung 750. Jetzt liegt das Signal zur Weiterleitung der Anforderung zun richtigen Speicher vor. Es muß Jedoch noch bc3tiraat werden, ob in dera £lnßaberelher3peicher (Flg. 11) für c'rn assoziativen Speichermodul 1 ein leeres Register
EAD ORIGINAL- . 009851/1558
-81-
enthalten lat.
Wenn angenommen wird» dall alle früheren Anforderungen durch den assoziativen Spelohenaodul 1 erfüllt worden sind» liegt das "Leerer· Elngabespeioher"-Slgn&l 1 auf Leitung 752 (Pig· 9C) vor. Dieses Signal wird aus dem Eingabereihenspeicher 1 (Flg. 11) ebenso abgeleitet, wie es oben in Verbindung mit dem Leerer-Slngabespelcher-Slgnal M auf Leitung 150 in Flg. 11 und 9C beschrieben worden 1st. Gemäß Flg. 9C wird die Und-Sohaltung 754 durch das Leerer-Relhenspeicher-1-Signal In Verbindung mit den Torsignal auf Leitung 152 betätigt und erzeugt daa Signal auf Leitung 756· Dieses Signal betätigt In Verbindung mit dem Signal DIl auf Leitung 750 die Und-Schaltung 758, so daß diese das Signal HQ auf Leitung 76O erzeugt· Das Signal HQ betätigt die Und »Schaltungen 762 (Flg. 9A) damit die SpeIcheranforderung auf den Leitungen 744 ttber die Oder-Schaltungen 764 in des Relhenspeicher 44 (Flg. 2Λ,11) gespeichert wird·
Ss sei nun angenommen, wie oben erwtthnt, defl keine früheren Spei· cheranforderangen mehr von dom assoziativen Spelohenaodul 1 zu erfüllen sind und daß der Elnganssrlng 292 In dem Zustand 1st« in den die Und-Schaltung 280 für das £lngengstor 1 auf Leitung 266 Über Leitung 286 erregt ist« Das Signal "CFl speichern? auf Leitung 766 (Flg. 9C), daa von den oben beschriebenen Signal HQ über die Oder-Schaltung 766 abgeleitet wird, steht zur Verfügung« um die Und-Sohaltung 280 (Flg. 11) zu betätigen} es 1st hler allgemein mit "Speichern" bezeichnet und wird über die Leitung 172 übertragen. Daher wird das Eingangs tor 266 betätigt und leitet dl« Datenlnfor-■atlonen auf Leitung 278 welter in da« Register 260.
Das Signal HQ auf Leitung 760 (Flg. 9C) wird duroh die Oder-Schaltung 770 geleitet, um das Signal C 1 auf Leitung 772 su ergeben. Das Signal Cl betätigt zusammen mit deo oben beschriebenen Signal HC auf Leitung 130 (Flg. 9B) die Und-Schaltung 772 (Flg. 9B), damit diese das Signal CPl auf Leitung 774 Über die Oder-Schaltung 776 erzeugt. Das Signal CFl stellt dar, daß die Speicheranforderung
009851/1558 BAD original
erfolgreich aus dem Reche nnjodul 1 zur Spelcherdatenelngaberelhe 1 übertragen worden ist, und daalt, daß das Ausgaberegister 738 des Reohennodula l (Fig. 9A) zur Behandlung einer neuen Anforderung zur Verfugung gestellt werden kann« Daher wird da« Signal CFl In das Ausgabereglstor des Rcchenmoduls 1 geleitet« wie es ?ig· $A und l6 zeigen. (In FIg* 16 verwendet das dort gegeben· Beispiel das SIg* nal CF2 auf Leitung 578). Das Signal CPl stellt dl« Anforderungsbiteinheit zurück und gestattet es damit dem Reohenmodul, eine neue Speicheranforderung unter der Steuerung der Reohenmodul-Programmsteuerelnhelt (Pig. 17B) mittels «es Signals "Anforderung fibertragen" zu erzeugen.
Duron die. Eingabe des Anforderungsbits des Speloheranforderungswortes 1st der Status des Leerbits Im Register 1 260 des Reihenspeiohers in den 1-Zustand umgeändert worden« und daher erzeugt das Register das Signal V.B. 5* 1 auf Leitung 304, das das Signal "Mehr Arbeit" auf Leitung 310 erzeugt» welches dem assoziativen Spelohermodul (Flg. 12) mitteilt, daß er eine Anforderung erfüllen soll. Da dlo Spa iche rprogr amins teuere inhelt alle vorherigen Anforderungen erfUlIt hat, ist sie jetzt Imstande, diese laufende Anforderung zu bearbeiten, und daher erzeugt sie das Signal "Lesen" auf Leitung 322 zum Eingabereihenspeicher (Pis· 11)· Das Signal "Lesen" betKtlgt die Und-Schaltung 324 in Verbindung mit dem Ausgangsring 314, der Jetzt so eingestellt ist, daß er ein Signal auf die Leitung 316 gibt, die dem Register (l) 260 entspricht· Das Ausgangssignal der Und-Schaltung 324 betätigt die Schaltungen des Ausgangstore (l) 272, um die Speicheranforderung Über die Oder-Schaltungen 330 zu den Datenausgabeleitungen 332 zu Übertragen. Außerdem wird das Ausgangssignal der Und-schaltung 324 auf Leitung 336 übertragen, um das Leerbit in Register (l) 260 In den 0-Zustand zu bringen und damit dieses Register sua Speichern einer neuen Speicheranforderung frelzumaohen.
• *
Eine Betrachtung dos assoziativen Spelohermoduls von Flg. 12 zeigt, dad der Datenwort teil der Anforderung Über die Leitungen 344 über-
009851/1558
U74047
-ÖO-
tragen wird, um die Eingabesehalter la assoziativen Speloher 342 einzustellen. Bekanntlich umfassen die Informationen des Datenworttells la vorliegenden Beispiel die Aufgabenuaeer 2, den Status I und das Kennfeld YlOOO.
Der Programmteil der SteuerInformationen wird Ober die Leitungen zu der Aufgabendeoodlerclnhelt 352 der SpeloherprograoBSteuereinhelt 354 Übertragen. Der Rcchenmodul-Adressentell der Steuerlnfornatlonen wird über die Leitungen 356 zum Reehenmodulsteuerreglster 358 Übertragen. PUr diese Spclcheranforderung liefert die Spelcherprogramrasteuerelnhelt 354 Signale auf den Leitungen 36O, die alle Auswahlschalter (Flg. 8) In dem assoziativen Speicher 342 In den Blngang-Ausgang-ohne-Sortlerung-Statue bringen. Da der Prograssitell der Steuerlnfornatlonen die Abfragung durch den assoziativen Speloher bezüglich Aufgabe« Status und Kennfeld« aber nloht bezüglloh des Datentells des Datenwortes erfordert» wird das Abdeokreglster 366 In der Spelcherprogrammsteuerelnhelt In den Abdeokzuatand für den Datentell des Datenwortes gebracht, so daß Signale auf den Leitungen 368 entstehen, die die Abdeckaohalter In die entsprechende Stellung bringen. Außerdem erzeugt die Speicherprogrammsteuereinheit Signale auf den Leitungen 364, die die Steuerschalter des assoziativen Speichers 342 (Flg. 12)für dl· Ausführung einer Auvgangsoperatlon einstellen.
Duron die vorstehenden Operationen wird das Blngabereglster 48 (PIg. 8) entsprechend den Aufgaben-, Status- und Kennfeldteilen des Datenworte β eingestellt, also In vorliegenden Palle Aufgabe Mr. 2, Status I und Kennfeld YlOOO. Die vom Abdeokreglster 366 (flg. 12) aus gesteuerten Abdeckschalter 370 werden in dl· Ab« deckstellung für den Datentell des Datenwortes gebracht· Die Auswahlsohalter 362 bringen alle Stellen des Auswahlreglsters 76 in den Blngang-Ausgang-ohne-Sortlerung-Status, wie oben erwlthnt. Unter der Wirkung dieser Steuerungen findet der assoziative Spelohermodul 1 das Befehlswort mit dem Kennfeld YlOOO und Überträgt es *ur Ausgangsanzeigeeinheit 74. Außerdem zeigt der assoziative Spei-
BAD ORIGINAL
009851/1558
oher In den Steueranzeigeelnheltcn 70 den Zustand der übereinst immungsanze ige an« in diesen Falle den 1-Zustand, der zeigt, daß für die gegenwärtige Abfragung nur ein einziges Übereinstimmend«· Wort vorliegt« DIo Über die Leitungen 380 angeschlossenen Ausgangsanzeigeelnhelten werden durch die AbfUhlverstärker 362 festgestellt, um dem Speioherausgaberegleter 372 das Datenwort zuzuführen. Da die vorherige Speloheranforderung vor der gegenwärtigen Operation abgeschlossen war, betätigt das Signal "Ausgaberegister unbesetzt" auf Leitung 37* die Speloherprogrammsteuerelnheit, so daß sie das Signal "AbfUhlverstärker betätigen" auf Leitung 378 erzeugt und damit die Ausgangesignale des assoziativen Spelohers 342 in das Speicherausgaberegleter 372 Überträgt. Außerdem Überträgt das Signal "AbfUhlverstärker betätigen" auf Leitung 378 die Ausgangssignale der Steueranzeigeeinheit auf Leitung 400 Über den AbfUhlverstärker 398 zun Uberelnatlmoungsanselgetell der Steuerinformationen in Speloherausgabereglster.
Weiter liefert die Speloherprogrammsteuereinhelt das Signal "Steuer rnformatlonen weiterleiten" auf Leitung 386, das die Rechenmodulp.dresse aus dem Rechenmoduladressenreglster 358 Über die Ünd-Schaltungcn 3&8 zum Reohenmoduladressentoil des Speloherausgabereglster· leitet. Dieses selbe Signal betätigt außerdem dl· tJnd-Sohaltungen 390, so daß diese die feststehend· Speicheradresse, dl· in diesem Falle den assoziativen Spelohermodul i identifiziert, zum Speloheradressentell 396 des Speloherausgabereglsters weiterleiten. Sohlleßlioh erzeugt die Speioherprogramnsteuereinhelt das Signal "Anforderungbit einstellen" auf Leitung 404 zum Anforderungsblttell 778 des Speloherausgabereglsters.
Jetzt enthält das Speloherausgabereglster folgend· Informationen! Die Anforderungsbiteinheit 778 ist im 1-Zustand und zeigt damit das Vorliegen von Ausgangssignalen im Speloherausgaberegister an. Die Uberelnstlmmungsanzelgeelittlt 402 1st im 1-Zustand und zeigt damit an, daß ein einziges Übereinstimmendes Wort Im assoziativen
009851/155·
U7A047
Sρ«loher bei dieser Abfragung gefunden worden 1st. Der Reohenmoduladressentell 392 1st la I-Zustand In seinen ersten Absohnltt, was bedeutet« daß der Reohenmodul 1 diese Informationen empfangen soll· Der zweite Absohnltt der Reohennoduladreese 1st In 1-Zustand, wa· anteIgt, dafi der Roohenmodul 1 diese laufenden Informationen In sein Befehlspufferregister aufnehnen soll· Der dritte Absohnltt der Reohenmoduladreese 1st für dies· Operation ohne Bedeutung·
Der Speloheradressente11 396 1st Im 1-Zustand, was anzeigt, dafl die Informationen aus dem assoziativen Spelohormodul 1 können. Der Aufgabenteil 780 1st Im 2-Zustand und zeigt damit an* da£ das Programm ein Teil der Aufgabe Nr. 2 1st. Der Statustell 782 1st Im I-Zustand und zeigt an, daß dieses Wort ein Befehl 1st. Der Kennfeld te 11 784 1st Im YlOOO-Zustand und Identifiziert damit diesen Befehl als untersten Befehl des Baums In Flg. 6. Der Codete11 786 (PIg. 12) 1st auf die Operation plus (+) eingestellt und zeigt damit an, daB unter der Steuerung dieses Befehls eine Addition auszuführen 1st· Dae Oegenstaadsfeld 788 1st für diesen Befehl leer.
Das jetzt Im 3peloherauagabereglster zusammengestellte Wort wird al· nMohstes über da· Pufferregister de· assoziativen Speloheroo· duls 1 duroh die Speloherauegabemultlplexelnhelt Über einen ausgewlhlten Kanal zum Reohenmodul 1 übertragen» wo es im Befehlspufferregister 1 gespelohert wird.
Nun sei auf die Speloherausgabemuitlplexelnhelt von Flg. 1OA eingegangen. In der das Ausgaberegister 790 für den assoziativen Spelebermodul 1 gezeigt Ist. Da· zusammengestellte Wort wird als näoh-•te· aus dem Ausgaberegister In da« Pufferregister 218 geleitet duroh das Signal auf der Ausgengeleltung 196 des Systeataktgeber· 412 (Flg. 2A). Aus dem Pufferregleter liegt das Signal MRl auf der Leitung 792 vor entsprechend dem "1"-BIt Im Anforderungsblttell des Pufferregisters. Daher liegt kein Signal HrT auf Leitung 220. Die Ausgangesignale des Register· stehen auf den Leitungen 794 eur Verfugung, die als Eingang« an die Und-Schaltungen 796, 798 und 800 angesohlossen sind.
009851/1588 bad original
SIn Blick auf die Steuerlogik der Spelcherausgabemultlplexelnhelt (Flg. 10B) zeigt, daß das Signal MRl auf Leitung 792 die Und-schaltung 602 zusammen mit dem Taktsignal auf Leitung 222 betätigt. (Die Und-Schaltungen 804, 806 erfüllen Im Falle des assosiatlven Speloherraoduls 1 keine Funktion· Sie sind Jedooh als Teil dt· Modulblooke mit dargestellt und wtlrden benutzt« wenn dieser Speloher als Speioher mit höherer Nummer eingebaut würde, d.h. »reiter nach rechts entlang der in Flg. 1OA und 1OB dargestellten Kanlle). Das Ausgangssignal der Und-Schaltung 802 auf Leitung 246 1st das Signal UM, das auch In Flg. 1OA als steuerndes Eingangssignal für die Ond-Sohaltungen 796 erscheint. Dieses Signal 1st es nun« das die Jetzt im Pufferregister 218 des assosiatlven Speiohermodule 1 befindlichen Informationen auf die Leitungen 230 von Kanal 1 über die Oder-Schaltungen 232 leitet.
Als nächstes wird der Reohennoduladressehtell der Informationen in der Decodier-Elnhelt 236 benutzt« um zu bestimmen« welcher Reohenmodul und welches Pufferregster ii dem betreffenden Reohenmodul die Informationen empfangen soll. In diesem Falle erscheint das Deeodierslgnal als das Signal 111 auf Leitung 254 (Flg. 10A), die zu den Und-Schaltungen 256 führt. Diese leiten die Informationen aus den Kanalleitungen 23O über die Oder-Schaltungen 258 weiter su den Leitungen 808« die in das Befehlspufferregister 14 la Reohenaodul 1 (Flg. 2B) führen. Durch das Vorliegen dieser Informationen la Befehlspufferregister wird das Signal "Befehlspufferregister besetzt" zu der Rechenmodul-ProgrammsteuerelnheIt (Flg. 17A) gesendet. Jetzt wird angenommen, daß der Reohenmodul noch den vorhergehenden Befehl bearbeitet und daß daher die Reohenprogrammsteuerelnhelt eine auf diesem Signal beruhende Operation nooh nicht ausfuhrt.
Während die Recheneinheit 38 des Reohenmoduls (Flg. 2B) noch die vorhergehende Multiplikationsoperation ausfuhrt, d.h. die Operation, die der Befehl mit dem Kennfeld YOlOO erfordert, bereitet der Rechenmodul eine Speieheranforderung für den nächsten benötigten Operanden vor, bei der es sich in diesem Falle um eine Anfor-
009851/1558 clAD original
derung für den rechten Operanden mit de« Kennfeld YIlOO handelt. Das Kennfeld YUOO 1st der Kennfeldtell 60ό de· rechten Operandregisters 22, wie ea oben In Verbindung alt Flg. 16 beschrieben worden 1st. Die Übertragung der vorhergehenden Anforderung· d.h. der Anforderung fUr dao Befehlewort alt den Kennfeld YlOOO, durch die Reohemodul-Ausgabemultlplexelnhelt 30 (Plg.2B) hat sur Erseugung des Signals "Anforderung Übertragen" geführt, welches die Rechenmodul-Progremmeteucrelnhelt (Pig. 17B) veranlaßt, jetst eine neue Anforderung zusammenzustellen, .In dieses Fall· ein· Anforderung für den rechten Operanden.
Bin Teil der fUr die neue Anforderung benötigten Informationen 1st die Adresse des Speichere, der den rechten Operanden enthält· Die Speicheredresse 1 erscheint la Spelcheradreecenauegabereglster 422 des Speicheradressengenerators (PIg. 13) und la Speicheradressen-•lngabereglster 420 als Resultat der vorausgegangenen Operation. Da das frühere Resultat einen linken Operanden betraf» sendet der Kennfeldgenerator 36 (Flg. 2B) das Signal "Linker Operand" zur Reohenaodul-Progranraateuerelnhclt, damit es In der nachfolgenden Operation verwendet wird Dieses Signal veranlaßt die Rechentnodul-Progranmsteuereinhelt, d&3 Signal "Aufwärtszählen" Über Leitung 450 tu den "l Aufwärtszählen"-Sohaltuiigen 424 (Pig· 13) r.u senden. Von diesen Schaltungen aus wird das Ausgangeslgnal 2 über dl· Oder-Sohaltungen 440 und die Und-Sehaltungen 454 sum Speloheradressenausgaberegister 422 übertragen unter der Steuerung de· Signal· "ZMhler betätigen" auf Leitung 456 aua der Rechenoodul-Progranmateuerelnheit (Pig. 17A).
Bs 1st nun möglich, die neu· Speicheranforderung In dem Reohennodul-Ausgaberegiater 566 (Flg. 16) zusaanenzustellen. Dar Anforderungebit teil 576 und der Rechenaoduladreesentell 588 werden aus der Spelohersteucrlnformatlonselnhelt 42 Übertragen» abgeleitet aus der Rechenuodul-Programmsteuerelnhelt (Pig. 17C) Infolge des Signals "Rechennodulnamen, Operandpufferreglateroode, Code des rechten Operandregisters und Anforderungsbit weiterleiten". Der Programmteil 5^4 der Speicheranforderung wird über die Leitungen 582 aus der
009851/1S5« «0 ORQ1NAL
Spelohereteuerlnformatlonselnhelt 42 übertragen» abgeleitet aus der Reohenmodulprogrammftteuerelnhelt durch daa Signal "Abfragen nach Aufgabe, Statue, Kennwort und.löschend entnehmen". Der Speloheradressentell 390 wird aus dem Spcioheradreesenausgaberegister 422 (PIg. 13) Übertragen unter der Steuerung der Und-Schaltungen 444, die durch da· Signal "Adreeee In 30 eingeben" auf Leitung 448 gesteuert werden. Der Aufgabentell 6l6 de· Wortes (Flg. 16) wird aus den Aufgabentell des Befehlsregisters 28 Über die Und-Sohaltungen 620 abgeleitet, die durch das Signal "Aufgabe In 30 eingeben" auf Leitung 624 aus der Reoherunodul-Programmmteuereinhelt gesteuert werden. Dar Statueteil C2o wird aus der feststehenden T-Quelle Über die Und-Sohaltungen 656 Übertragen, die durch das Signal "T weiterleiten" auf der Leitung 638 au« der Reohenmodul-Programasteuer· einheit gesteuert werden. Der Kennfeldtell 666 des Ausgangswortes 566 (PIg. 16) könnt aus dem Kennfeldtell 686 des reohten Operandregisters 22 Über die Leitungen 672 und die Und-Schaltungen 688 unter der Steuerung des Signals "Kennfeld In 30 eingeben" auf Leitung 690 aus der Rechenmodul-Programmsteuerelnhelt. Der Datenteil von Flg. 16 1st für diese Speloheranforderung nloht nOtlg.
Ss sind also folgende Informationen Im Ausgaberegister 366 von Flg. 16 zusammengestellt wordeni Das Anforderungsbit 576 steht auf 1 und zeigt damit an, dafl eine neue Anforderung der Rechenmodul-Ausgabemultlplexelnhelt (Flg. 9A) zur Übertragung zu einem assoziativen Spelohermodul zur Verfügung steht. Der Programmteil 584 1st auf den Code für die durch den assoziativen Spelohermodul auszuführende Operation eingestellt. In diesem Falle die Operation der Abfragung nach der Aufgabennummer, dem Status und dem Kennfeld und danach der löschenden Entnehme des übereinstimmenden Wortes. Der Rechenmoduladressenteil 588 weist in seinem Feld drei Absohnltte auf. Der erste Abschnitt 1st im 1-Zustand und zeigt damit, dafl die aus dem assoziativen Speichermodul entnommenen Informationen zum Rechenmodul 1 zurUckzuUbertragen itndj der zweite Abschnitt zeigt
009851/1558
an, dftfl die Informationen zum Operandpufferregister l8 dea Reohennodula 1 zurüokzuUbertragen sind» wie es Flg. 1OA und 1 B zeigen« und der dritte Absohnitt der Reohenmoduladresso iat in den "Rechts"-Zustand gestellt« um anzuzeigen, dafl die Informationen aus dan Operandpufferreglster 18 in das reohte Operandregister 22 zu Übertragen sind·
Der Speloheradressentell 590 (Fig. 16) ist la ^"-Zustand, was bedeutet, dafl diese Anforderung zum assoziativen Spelohennodul 2 geleitet werden soll. Der Aufgabenteil 6l6 ist in "2"-Zustand und zeigt damit an, dafl diese Anforderung die Aufgabe Nr. 2 betrifft. Der Statusteil 626 ist in T-Zuatand, was zeigt, dafl die Suohe im assoziativen Speieher ein Datenwort in T-Status betrifft. Der Konnfeldteil 666 1st auf Yl 100 eingestellt, das Kennfeld für den rechten Oparanden· VIe aohon erwähnt, 1st der Datenteil 692 hler ohne Bedeutung.
Die Reohenmodul-Auegabeeultiplexeinheit (Pig. 9A) arbeitet In bezug auf diese neue Anforderung ähnlich, wie oben beschrieben, nur wird diese Anforderung entsprechend den Speicheradresse te 11 der Steuerlnformatlonen zu den assoziativen Spelohemodul 2 weitergeleitet, während bei der früheren Anf ordeamg der assoziativ· Speiobermodul 1 dar Bestimmungsort war. Dies· Operation wird eingeleitet, indan da· Signal 12Q auf Leiten« 810 in ähnlicher Velae abgeleitet wir«, wie ·· oben in bezug auf das Signal HQ auf Leitung 760 (fig. 9A) besehrieben «orden 1st·
Auen der tlnt*ber«lh«asp*leb«r 44a des Spei ehe rmoduls (flg. 11) arbeitet Ähnlich, wie es oben In verbindung mit der vorherigen flpeloheranforderung für Spelohermodul 1 beschrieben worden 1st· 01· Oparation des assoziativen 8peich«rmoduls gleloht der ftlr die frühere Anforderung mit der Ausnas», daß der Befehl die löeohende Entnahme der Infomationen aus den Speieher vorsieht, da dies ein vorläufiges Datenwort 1st, während dl· frUhore Anforderung «in Befehlswort betraf, das dauernd in Speieher zurückbehalten werden nuflte.
008881/1558 bad original
Das Ergebnis dieser Operationen 1st die übertragung der folgenden Steuer- und Datenwortlnformatlonen zum Speloherausgabereglster 372 (Flg. 12), um dessen Absohnltte entsprechend einzustellen. Im Speleherausgabereglster 372 wird der Anforderungsbitte 11 778 In den 1-Zustand gebracht* um anzuzeigen» daß die Anforderung erfüllt worden 1st· Der Über·Instlmmungsanzelgetell 402 wird in den 1-Zustand gebracht» um anzuzeigen, dafl In diesen assoziativen Spelehermodul ein einsiges Wort enthalten war, das den durch die Anforderung aufgestellten Bedingungen entsprach. Der Heohenmoduladressentell 392 wird la ersten Abschnitt in den 1-Zustand gebracht» um anzuzeigen« dafl die Informationen dem Reohenmodul 1 zuzuleiten sind· Der zweite Abaohnltt wird in den O-Zuatand gebraoht, um anzuzeigen, dafl die Informationen in das Operandpufferregister das Reohenmoduls 1 zu übertragen sind, und der dritte Absohnltt wird in den ^"Reohts"-Zustand gebracht» um anzuzeigen» dsj die Informationen in das recht· Operandregister zu Übertragen sind. Der Speloheradressentell 396 wird in den 2-Zustand gebraoht, um anzuzeigen, dafl dies· Informationen aus dem assoziativen Spelehermodul 2 abgeleitet werden. Der Aufgabent«ll 780 wird in den 2-Zustand gebracht« um anzuzeigen, dsJ diese Informationen die Aufgab· Nr. 2 betreffen. Der Statustell 782 wird in den T-Zustand gebraoht» um anzuzeigen, dsJ das rtloktlbertragene Wort ein Datenwort mit Status T 1st· Der Kennfeldteil 784 wird auf YIlOO eingestellt» um anzuzeigen· dafl diese Informationen für das Vort mit diesem Kennfeld gelten. Der Datenteil 812 wird auf den Wert 22,78 eingestellt. (Der Wert 22,78 1st das Resultat der Multiplikation τοη 3,4 χ 6,7, die durch den Befehl mit dem Kennfeld YIlOO aufgerufen wurde und von der angenommen wird, dafl sie von einem anderen Rechenmodul ausgeführt und gespeichert worden 1st gemäß Regel 9 vor der hler beschriebenen Operation).
BAD
009851/1558
-9H- ·
Die Jetzt Im Speloherausgabereglster zusammengestellten Informationen werden durch die Speloherausgabe-Multlplexelnhelt (Flg. 1OA und lOB) In ähnlicher Welse wie für die vorausgegangene Anforderung übertragen mit der Ausnahme, daß das Ausgangsslgnal der Deoodler-Klnhelt 236 (Flg.10A) das Signal 110 P auf Leitung 2J>& 1st, um diese Informationen über die Oder-Schaltungen 242 und die Und-Schaltungen 240 Im Operandpufferreglster (l) 18 zu speichern. Venn Kanal 1 für die Informationsübertragung ausgewählt worden 1st, In diesem Falle für die Übertragung der aus dem assoziativen Speichermodul 1 kommenden Befehlsanforderung, 1st Kanal 1 für die Übertragung der gegenwtfrtlgen Anforderung nicht verfügbar. Statt der Steuerung des Signals 12Jf auf Leitung 228 steht Jetzt das Signal 22N auf Leitung 250 zur Verfügung, das die Und-Sohaltunken 204 betätigt, um die Informationen über die Oder-Sohaltungen 8l6 auf die Leitungen 8l4 des Kanals 2 zu übertragen. In diese« Falle findet die Decodierung der Reohenmoduladresse In der Kanal-2-DeoodlereInhalt 252 atatt, die das Signal 210P auf Leitung 8l8 erzeugt, welches die Und-Sehaltungen 820 betätigt, so daß die Informationen von den Leitungen 814 aus über die Oder-Schaltungen 242 zum Operandpufferreglster (1) l8 gelangen. Durch die Speicherung der Informationen Im Operandpufferregister 18 entsteht das Signal "Operandpufferregister besetzt", das der Reohenmodul-Prograamsteuerelnhelt 26 (Flg. 17A) zugeführt wird.
Jetzt stehen die neuen Informationen sowohl la Befehlspufferreglster 14 als auoh Im Operandpufferreglster 18 zur Verfugung. £9 einzelnen enthält das Befehlspufferreglster 14 das Anforderungsbit, das Im 1-Zustand 1st und damit anzeigt, daß eine erfüllte Anforderung nun am Befehlspufferreglster verfügbar 1st, und außerdem 1st die übereInstlmmungsanzeIge Im 1-Zustand und zeigt damit an, daß ein gültiges Wort als Resultat der Anforderung aus dem Speicher entnommen worden 1st. Der Reohenaoduladressentell und der Speicheradressente11 sind nicht mehr von Bedeutung. Der Datenworttell enthält die Aufgabennununer 2, die besagt, daß diese Informationen zur Aufgabe Nr. 2 gehören. Der Statuste11 steht auf I und zeigt an, daß dies ein Befehl 1st, der Kennfeldteil steht auf YlOOO und definiert damit dieses Befehlswort als unterstes Wort
009851/1558 ^original
U7A0A7
des Daum» von Pig. 6. Außerdem enthält das Befehlspufferregister den Code +, der besagt, dafl die Additionsoperation unter der Steuerung des Befehlswortes auszuführen 1st· Iq Oegenstandsfeld erscheint eine Leerstelle, da der Gegenstand ohne Bedeutung für den Bef*i 1st.
In Operandpufferregister 18 stehen folgende Informationen gur Verfügung ι Das Anforderungsbit 1st Im 1-Zustand und zeigt an, daß jetzt eine erfüllte Anforderung la Operandpufferregister 1st, und das Ober-•lne>tliaDung«anzelgeblt 1st la 1-Zustand und zeigt an« dsl «in gültige β Wort auf die Anforderung hin entnommen worden 1st· Der erste und der zweite Abschnitt der Reohenmoduladresse sind nioht »ehr von Bedeutung, da sie ihren Zweck erfüllt haben, nlalioh dl« Informationen zua richtigen Rechennodul und sun rlohtigen Operandpufferregister tu leiten. Der dritte Abschnitt der Reehennoduladresse Ut jedoch noch von Bedeutung, denn er liefert die Information in dieses Falle» dal der Operand ein rechter Operand 1st» und dal daher la niobate» Stadium der Operation die·· Informationen au· dta Operandpufferregister 18 in das rechte Operandreglftter 22 tibertragen werden nttssen. 01· Speicheradresse 1st für dies· Operation ohne Bedeutung.
Ia Datenworttell de· Operandpufferregieters 1st die Aufgab«tinummor In 2-Zuatand und zeigt an« dal dl··· Informationen dl· Aufgab· MrΛ betreffent der Statusteil 1st in T-Zu>tand und aelgt an« daJ dl··· Informationen ein Datenwort alt Status T bildenj der Kennf«ldtell ist la Zustand YlIOO und zeigt an, dafl diese Informationen don reehten ! Operanden für die letzt· Operation in dem Befehlebaun von Fig· be- j treffen, und der Datente11 ist auf den wort 22,78 ·ing··tollt, dor das Resultat der Rechnung d«s reohten Bafeptzwolgea do« TTiftirtrtiiaM ist.
Bekanntlich überschnitt sloh dl· Erfüllung der beiden oben beschriebenen Anforderungen alndeatens teilweise alt der Operation der Re- ,' ohenclnhelt 38 bei der Ausführung der vorhergehenden Multiplikation·- operation. Als nächste· wird da· vorhergehende Resultat, das der link« Operand wird, nit den Jetzt In Operandpufferregister stehenden rechten Operanden kombiniert. Die Operation wird unter der Steuerung
009851/1551
des jetzt In Befehlspufferreglater 14 enthaltenen Befehle auagefUhrt. Zu dieaen Zweck werden dloae Wörter aua den Operandpufferreglater 18 bzw. aua den BefeKbpufferregiater 14 In daa rechte Operandreglater 22 und in daa Befehlsregister 28 Übertragen.
Venn die Recheneinheit 28 die duroh den Befehl nit den Kennfeld YOlOO aufgerufene Multipllkationsoperation beendet*, atehen die Resultate 2,76 zur Verfügung. Daa Signal "Operation beendet" wird von der Recheneinheit erzeugt und zur Recheiwodul-Progrannateuereinhelt (Pig. 17B) übertragen. Diese sendet daa Signal "Daten in 28 eingeben" zur Recheneinheit 38, die die Übertragung dleaea Reaultats über Lei* tung 732 zun Datenteil 706 Flg. (16) des Befehlsregiatera 28 veran-IaBt. Da der Befehl In Befehlareglater keine Verzweigungaoperatlon erforderte, wird daa Signal "Status-B-Befehl" nieht zur Reobenoodul-ProgramneteuereInhalt Übertragen. Dleae kann daher weiter den Baun hinunter vorgehen· Qn dies zu tun, besteht dl· erate Operation darin, daa Datanwort aua den Befehlareglater 28 sowohl in das link· Operandreglater 2o ala auch In daa rechte Operandregiater 22 zu Übertragen mittels dea Signale "Datenwort In 20 und 22 eingeben" aua der Reohernodul-Progranmsteuerelnhelt.
Wenn dann die Reohenaiodul-Progrannsteuereinhelt featateBfc, da£ ihr der niobate Befehl In Befehlapufferreglater 14 zur Verfugung ateht, was duroh das Signal "Befehlspufferregister besetzt" angezeigt wird, und daJ ihr der nächste Operand in Operandpufferregistar 18 zur Verfugung steht, was durch das Signal "Operandpufferregistar besetzt" und das Signal "Assoziativer Speicher - Obere lnatinwtnga anzeige -1" angezeigt wird, kann si« das Datenwort aua den Befehlapufferregiater 14 über die Leitungen 822 zum Befehlsregister 28 und aus den reohten Operandpufferregister 18 Über die Leitungen 824 zun reohten Operand* register 22 Übertragen. Der Operand wird den reohten Operandregister 22 duroh das Operandpufferreglater 18 auf Aufforderung durch daa Signal "Rechter Operand" zugeführt, das zur Recheneodul-Prograjnaateuerelnhelt übertragen wird (Pig. 17A).
BAD ORIGINAL
009851/1558
H74047
Jetat enthalten die drei Hauptregiater des Reoheiwoduls folgende Informatloneni Des linke Operandregister 20 enthält die Aufgabennummer 2, den Status Z (der nicht mehr von Bedeutung 1st)« das Kennfeld YOlOO und das Datenwqrt 2,76. Das rechte Operandregister 22 enthält die Aufgabennummer 2, den Status T (der ebenfalls Jetzt ohne Bedeutung ist), das Kennfeld YlIOO und das Datenwort 22«78. Das Befehlsregister 28 enthält die Aufgabennumner 2, den Status I» das Kennfeld YlOOO, den Code + und ein leeres Oegenstandsfeld, da dieser Befehl keinen Gegenstand erfordert« Daher sind In den drei Hauptregistern die Jeweiligen Operanden «sad der Befehl zur Ausführung der Operation zusamnengesteilt, die an Boden des Baus» in Flg. 6 angefordert 1st.
Die Rechenmodul-Programmsteuerelnhelt Übertrügt das Signal "Code In 32 eingeben" zum Befehlsregister 28 (Flg. 2B). Dieses Signal Übertragt den Code ftlr die Addltbnaoperatlon aus dem Codeteil des Befehlsregisters 28 sur Befehlsdecodlerelnhelt 32 über die Leitun- " gen 826, die das Steuersignal liefern, das die Recheneinheit 38 veranlaßt, die Addition auszuführen, wenn sie die beiden Operanden empfängt. Die Operationsinformationen werden aus der Befehl» decodlerelnhelt 32 zur Recheneinholt 38 unter der Steuerung des Signals "Operation In 38 eingeben" übertragen, das aus der Reohenmodul-Frogrammsteuerelnhelt kommt. Außerdem übertrügt die Reohen-Dodul-Prograumsteuerelnheit das Signal "Operation In 38 eingeben" zun linken Operandregister 20 (Flg. 2B) und veranlaßt dieses so, seine Daten Über die Leitungen 628 zur Recheneinheit 38 zu senden» In Falle unseres Beispiels handelt es sich dabei un die Zahl 2,76. Ebenso erzeugt die Reohenmodul-Programmsteuerelnheit das Signal "Daten In 38 eingeben", das zum rechten Operandregister 22 tibertragen wird und es veranlaßt, seine Daten Über die Leitungen 83Ο zur Recheneinheit 38 zu Übertragen. In diesem Falle wird der Wert 22,78 tibertragen· Die Recheneinheit 38 führt nun die dem Befehl entsprechende Operation aus, also in diesem Falle die Addition.
PkD OBlGlNAL
009851/1558
VMhrend die Recheneinheit gen** diese« Befehl arbeitet« wird gewöhnlich die Erzeugung neuer Kennfelder und die Vorbereitung neuer Speloheranforderungen fortgesetzt· Zuntlohet wird der Kennfeldindex aus den Befehlareglster 28 Über die Leitungen 34 sun linken Operandregister 20 und sun rechten Operandregister 22 und Über die Leitungen 724 sum Kennföldgenorator 36 übertragen unter der Steuerung des Signals "Index In 20, 22 und J6 eingeben·, das aus der Reohenoodul-Programme teuere lnhe it abgeleitet wird· OewBhnlleh würde nun der Kennfeldgenerator neue Kennfelder erzeugen, wie es oben besehrieben 1st. Za vorliegenden Falle 1st Jedoch der Anhang gleich 1000» und die Tataaohe, dafl die extrem rechte laich In der extrem linken Stelle des Indexfeide» befindet» erzeugt das Signal "Ende des Bauaprograroma" auf Leitung 832 (Mg· 15)· Dieses Signal wird wie folgt erzeugt 1 Das auf Leitung $22 von der ReohensKHSul-rrograaasteuerelnhelt erzeugte Signal "Neue Kennfelder erzeugen" führt zu eines Signal auf der Leitung 526 als Ausgangssignal der Qhd-Sohaltung 52** die In Verbindung alt der "0" In der vierten Bitstelle des Anhangs betätigt wird. Da auoh die dritte Bitateile des Anhangs eine 0 enthält, liegt ein Signal auf Leitung 514 vor, das zusammen mit dea Signal auf Leitung 526 die Und-schaltung 532 betätigt, die ein Ausgangesignal auf Leitung 634 erzeugt. Da auoh die zweite Stelle des Zndexreglsters eine 0 enthält. Hegt ein Signal auf Leitung 510 vor, das zusaaasn alt dea Signal auf Leitung 834 die Und-Sohaltung 534 betätigt, die ein Signal auf Leitung 836 erzeugt· Jetzt 1st jedoch eine 1 In der ersten Stelle des Index enthalten, so dafl ein Signal auf Leitung 508 vorliegt, das j Susannen alt dea Signal auf Leitung 836 die Und-schaltung 538 be- J tätigt, die dasSlgnal "Ende des Bauaprogramms" auf Leitung 632 l erzeugt. Dieses Signal wird der Reohenaodul-Prograaasteuerelnhelt zugeführt und leitet dort die Operation gemäfl Regel 13 ein, wodurch das Resultat der Rechnung über die Leitungen 838 zu der Auegabevorrichtung 46 übertragen wird·
Zn der vorstehenden Beschreibung wird ein hoohparallel arbeitendes Reohenaaeohinenayetem angegeben. In dea viele gleichzeitige Operationen nahezu selbsttätig ablaufen. Außerdem erhält dieses System
BAD OPiG(NAL
009851/155B
durah 8VlIMn Modulcharakter eehr viel «ehr FlexlblllUtt alt bekannte Syetene vergleichbarer Ordnung· S· können Spelototraodule sueHtzlloh verwendet werden, ohne daft grttfiere Xnderungen in den bestehenden InstalXatIonen oder im Steuerprograen erfordeiiloh sind. Welter wird nicht nur die ZuverllUelgkelt de· Bfutimi atark ernöht. eondern duroh die glelohseltlce Auaftlhrung vieler rereohle« dener Operationen wird da« Sjetea auoh eehr gut auegenutlt*
009851/1558

Claims (1)

  1. -100-PATENTANSPRUCHE
    1. Programmgesteuerte Rechenanordnung mit mindestens einer Recheneinheit, mindestens einer Speichereinheit zur Aufnahme von Daten- und Befehlswörtern und mit mindestens einer Programmeinheit, welche die Folge der Programmbefehle festlegt, dadurch gekennzeichnet, daß die Speichereinheit als assoziativer Speicher ausgebildet ist, in welchem Daten- und Befehlswörter in beliebiger Folge ein-gegeben werden, daß jeder Wortbereich des Speichers ein Kennfeld umfaßt, dessen Inhalt die relative Lage der Daten- und Befehlswörter in einer baumartigen Progranastruktur ohne Bezugnahme auf örtliche Speicheradressen * definiert, und daß die Programmeinheit einen Kennfeldgenerator (36) enthält, der bei Entnahme eines beliebigen verarbeitungsbereiten Datenwortes aus der Speichereinheit den Kennfeldinhalt des zur Verarbeitung dieses Datenwortes benötigten weiteren Datenwortes sowie den Kennfeldinhalt des die Verarbeitungsart steuernden Befehlswortes entsprechend der vorgegebenen Programmstruktur bestirnt und der Speichereinheit für eine assoziative Entnahme dieser Worte zur Verfügung stellt. ,
    2. Anordnung nach AnspruchJ dadurch gekennzeichnet, daß eine Steuereinheit (26) vorgesehen ist, die in einer Ladephase Befehlsworte mit Kenndaten zugehöriger Datenwörter in der Folge ihres Auftretens eingespeichert und daraufhin die einzugebenden Daten durch assoziativen Aufruf der Befehlsworte mittels diesen Daten beigefügten Kenndaten mit den Befehlsworten zu ▼erarbeitungsbereiten Datenwörtern vereinigt und diese in freie Wortbereiche der Speichereinheit einspeichert.
    3. Verfahren nach Anspruch 1 und 2, dadurch gekennzeichnet, daß die Kennfelder eine das jeweilige Programm bezeichnende Angabe und eine die Lage des Wortes im Programmbaum bezeichnende
    009851/1558 original inspected
    H74047
    Angabe enthalten und daß letztere eine Anzeige dafür darstellt, ob der zugehörige Wortbereich einem rechten oder einem linken Zweig der binären Programmbaumstruktur angehört.
    4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die Kennfelder je eine Binärziffern-Kombination enthalten, in der die Zahl der einen Wertbedeutung aufweisenden Ziffern die jeweilige Programmstufe und die Kombination zweier Randziffern einen rechten oder einen linken Programmbaumzweig definieren.
    5. Anordnung nach einem oder mehreren der Ansprüche 1 - 4 , dadurch gekennzeichnet, daß din BefehlswortSpeicherbereich ein weiteres Kennzeichnungsfeld aufweist, in welchem Besiehungen zu verschiedenen anderen Worten in Form von mit ausgewählten Feldern dieser Worte korrespondierenden Kennzeichen eingetragen werden, die als inhaltsbezogene Adresse bei Verzweigungaoperationen verwendet werden.
    009881/165·
    -κ«. 147*047
    ·. Anordnung nach einem oder mehreren der Ansprüche 1-5» dadurch gekennzeichnet, daft da Befshlswortareicherbereich aebea seinem Kennfeld «ar Anzeige der Lage Im Programm, «lern Operationskode der aus« zafOhreadea Operation uad dem weiteren Keanzeichaungafeld für Be sie· Imafen zwischen verschiedenen Worten ela Problem*lfummerafeld und ein SUtnafeld aufveiat, daa einen Befehl von einem Datenwort antoracbeldet «ad Sonderbefehle, wie Verzweigungen, angibt.
    7. Anordnung nach einem oder mehreren der Anaprflcho 1 - β, dadurch gekennzeichnet, dag ein D .tenwortepeicherbereich neben seinem Kenn· feld tür Ansei ge ύ%ψ Lage im Programm uad dem Datenfeld ela ProUtm-Nammemfeld und ein Statu«feld aufweist· daa ein Dateawort von einem EofehUwort unterscheidet und die Art dea Datenworte« (Konstante ooei-Zwischenwert) »owie seine VerarbeiUuigebereitschaft angibt.
    g. Anordnung nach einem oder mehrere« der Ansprache 1 bis 7« dadurch gekennxeichnet. dai die Steuereinheit (26) für sich odor la Verbindung mit Befehls- und DutenwOrtem Steuerinformationen «wischen Rechen· einheit uad SpoichereinheiVtbertrlgt. die den arbeiuborelten Zustanc uad die Adresse einer Einheit anselgea und eine andere Einheit sur Datenabgabe oder Datenaufnahme auffordern.
    0. Anordnung nach einem oder mehreren deT Anspruchs 1 bis β, dadurch gekenhseichnet, dafl die Steuereinheit (26) nach der Ausführung ve«
    BAD ORIGINAL
    009851/1558
    U740A7
    Programrabefehlcn, durch deren Rewiltaf vorher nichUusfOhrbare Prog ram mbe frhle aeaführUr g«worden sind, die bisher nicht ausfuhr· baren Befehl· über das Kennzcichnting«feld für Erziehungen zwischen verschiedenen Worten aufruft und ihnen die ermittelten Tellreeultate und/od*r eine Markierung zur Anzeige der Verarbeitunf*berelt*ch*ft zuordnet,
    10. Rechenanordnung nach einem oder mehreren der Ansprüche 1 bis f. mit mehreren selbetflndigen, weitgehend umbhlngtg voneinander arbeitenden Recheneinheiten und mehreren Speicherelnhelu«, dadurch gekenaselchnet, dafi mehrere parallel ge »ehalt β te Rechenmodule und mehrere parallel geschaltete, al^bber ihren Inhalt adre««lerbare Speicher ausgebildete Spei« hermodule durch eine Anaohl Datentibertragungekanlle miteinander koppelbar angeordnet «Ind. daO eine von den Ausgängen der Rechenmodule gesteuerte «rate Multiplextchaltung (SO) vorgesehen Ist, die auf eine Zugrifftanforderung von einem Rechenmocul in Abhängigkeit von im anfordernden Rechenmodul errechneten Zugriff»adreasd*ten einen Obertragungsk&nal sum gewünschten Sj eichermodul bereitstellt, and dafl eine von den Ausgängen der Speichermodule gesteuerte «weite Multiplex «(.haltung (12) vorgesehen let, dio auf eine Auggabeanfordenuig -on einem Speicher· modul in Abhängigkeit von im betreifenden Zugriff enthaltenen Ausgabeadresadaten einen Cbertragungekanal zum gewünschten Rechenmodul bereitstellt.
    BAD ORIGINAL
    009851/U58
    11.Anordnung naoh Anspruch 10, daduroh gekennzeichnet, daß jeder . der Reohenmodule ein erstes mit der Recheneinheit (38) ver- \ bundenes Operandenregister (20t für Operanden von nach links • gsrlohteten Zweigen des Prograonbauas und ein zweites nit ddr Recheneinheit verbundenes Operandenregister (22) für Operanden von nach rechte gerichteten Zweigen des Programnbaunee aufweist, da£ beide Operandenregister einerseits mit elnea Operandenpufferregister (18) des Reohenmoduleingangs und andererseits mit einem Befehlsregister (28) in Abhängigkeit vom jeweiligen Kennfeld des in Behandlung stehenden Wortes wahlweise koppelbar sind, und daß die Operandenregister und dft· Befehlsregister ausgabeseitig mit der Reohenausgang-Nultlplexsohaltung (30) In Verbindung stehen.
    18«Anordnung naoh Anspruch 10 und/oder 11, dadurch gekennzeichnet« da· jeder Reoheimodul einen Kennfeldgenerator (36) aufweist, dessen Hingang alt dem Befehlsregister (28) und dessen Ausgang silt beiden Operandenregistern (20 und 22) und de« Befehlsregister verbunden ist und der in eins« von Befehlsregister empfangenes Kennfeld als Kennfeld eines rechten oder linken Operanden erkennt und die Kennfelder des zugehOrlgen linken bzw. reahten Operanden und der zugehörigen Instruktion errechnet.
    ·" ! 13·Anordnung naoh Anspruch 12, dadurch gekennzeichnet, dafi der ' * Keonfeldgenerator (36) eine Schaltung zur Ermittlung der Xulersten binären 1 des Kennfeldes und eine Anzeigeschaltung (filer den Zustand der der äußersten binären 1 des Kennfaides benabarten Binärziffer aufweist zur Angabe, ob ein rechter •der ein linker Operand vorliegt. ·.
    V% A Sk A - ■ λ. - ψ- ■'-■-,-■
    m «Anordnung naoh eine· oder mehreren Ansprüche 10 - 13« dadurch gekennzeichnet, daJ Jeder Rechenmodul einen Speloheraodul-
    009851/1558
    ·■ . '■ BAD ORIGINAL
    Adreeeengenerator (24) aufweist, der die Reohenmodulm
    der folgenden Daten- oder Befehlewort· aus der Reohenmodulnummer des laufenden Daten- oder Befehlswortes und aus der von Kennfeldgenerator (36) erzeugten Anzeige Über das Vor· liegen einer Programmkomponente von einem linken oder rechten Program**Ig bestimmt·
    15· Anordnung nach Anspruch 14, dadurch gekennzeichnet, dal der Adreeeengenerator (24) eine die Nummern der Speichermodule In form einer geschlossenen Schleife nacheinander bildende Um-I-Erhöhungssohaltung und Um-1-Ärniedrigungaschaltung auf« weist, die in Abhängigkeit vom Vorliegen eines Operanden von einem linken oder rechten Prograramzweig die Speioherfflodulnunmir um 1 erhöht oder um 1 erniedrigt· so daJ aufein« anderfolgende Entnahmen in verschiedenen Spt iohermodulen wl«fcsam werden.
    16. Anordnung nach einem oder mehreren der AnsprUohe 10 dadurch gekennzeichnet, daß dm Eingang eines Jeden der Spei« ohennodule ein Elngabereihenspeloher (44) zugeordnet ist, der naoh dem Schema "als erster hinein, als erster heraus" arbeitet und der Blngangsseitlg mit der Reehnerauegang-Multlplexschaltung (30) verbunden ist zur Pufferung von Elnspeloher- oder Entnahmeanforderungen.
    17· Anordnung naoh einem oder mehreren der Anspruchs 10 - 16, daduroh gekennzeichnet, dad die Rechnerausgang-Multlplexsohaltung (20) eine Anzahl Ubertragungskanäle aufweist« von denen duroh eine Auswahlschaltung (Flg. 9A Die 9C) mehrere für gleichzeitig von verschiedenen Reohenmodulen erfolgende Übertragungen auswählbar sind und dafl die Reohnerausgang-Multiplexeohaltung für Jeden Kanal einen Spelohermodul-Adresaendeoodlereri(l44, 186) aufweist, der aus der Über den ausgewählten Kanal zu übertragenden An-
    BAD
    .00*15 Y/I)Uf
    -106-
    \ förderung die Spelehermodulnummer entnimmt und aus ihr ein Adressenelgnal bildet» das in Verbindung mit einem 9rei-3ignal vom Blngabepuffer (44) des betreffenden Spelohermoduls die Durchs oh al tung des ausgewählten Kanals zu diese« 8peiohermodul vornimmt»
    18· Anordnung nach Anepruoh 17, daduroh gekennzelohnet, da· die Reohnerausgang-Nultlplexsohaltung (30) für jeden Reohenmodul ein Ausgangsregister (86« 738) besitzt, das aus zwei Speicher-
    "· berelohen zur Aufnahme von Anforderungen eines Reohenooduls an «inen Spelohermodul besteht« wobei der «ine Bereioh für das Befehls- oder Datenwort und der ander· Bereioh SUr Steuerinformationen bestimmt 1st« dl· eine Anforderungsanzeige, eine Speloheroperatlonsanzelge« dl· Nummer des anfordernden Rechenmodule und die Hummer des anzurufenden Spelohermoduls enthalten.
    19· Anordnung naoh einem oder mehreren der Ansprüche 10 - 18, daduroh gekennzeichnet, daß die Speleherausgcng-Multlplexechaltung $2) eine Anzahl Ubertragungskanäle aufweist, von denen duroh eine Auswahlschaltung (Pig. 1OA u. 10B) mehrere für gleichzeitig von verschiedenen Spelohermodul en erfolgende Übertragungen auewählbar sind, und daB dl· Speloherausgang-Multlplexsohaltung für jeden Kanal «inen Iteehenmodul-Adressendeoodlerer (236, 252) aufweist, der aus der Über den ausgewählten Kanal zu übertragenden Antwort die Reohenmodul-lfummer entnimmt und aus ihr ein Adressensignal bildet« welches die Durchschaltung des ausgewählten Kanals zum gewünschten Reohenmodul vornimmt·
    ' 20. Anordnung naoh Anepruoh 19, daduroh gekennzeichnet, da· die Speicherausgangs-Multiplexeohaltung (12) fttr jeden Speioher-{ . modul ein Ausgangsregieter (790« 194, 372) aufweist» das zwei Speicherbereiche umfaßt zur Aufnahm· von Antworten «Ines Speichermoduls an einen Reohenmodul, wobei der eine Bereioh für das Befehls- oder Datenwort und der ander· Bereioh für eine
    009811/15(8 BAD ORIGINAL
    -107-
    Steuerlnformatlon beetlfoat let, die et» einer OefOllt-Zustand· Anzeige des Ausg*ngtre£ieter einer UberelnatlwnungH anzeige für den durchgeführten aeeosle>tlven Vergleich, der Nunaer dee antwortenden Spelohermodul· und der Ihnaer de· *nfordernd en Reehennodul« besteht.
    009851/1551
    f"'
    Lee rs eι te
DE19641474047 1963-11-07 1964-11-06 Programmgesteuerte Rechenan Ordnung Expired DE1474047C (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US32216063 1963-11-07
US322160A US3349375A (en) 1963-11-07 1963-11-07 Associative logic for highly parallel computer and data processing systems
DEJ0026829 1964-11-06

Publications (3)

Publication Number Publication Date
DE1474047A1 true DE1474047A1 (de) 1970-12-17
DE1474047B2 DE1474047B2 (de) 1972-09-28
DE1474047C DE1474047C (de) 1973-04-19

Family

ID=

Also Published As

Publication number Publication date
JPS4941942B1 (de) 1974-11-12
GB1077845A (en) 1967-08-02
DE1474047B2 (de) 1972-09-28
US3349375A (en) 1967-10-24

Similar Documents

Publication Publication Date Title
DE2540975C2 (de) Datenverarbeitungseinrichtung zur Ausführung mehrerer gleichzeitig ablaufender Prozesse
DE1424732A1 (de) Elektronische Ziffernrechenmaschine
DE2209282A1 (de) Datenverarbeitungsanlage
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2646296A1 (de) Assoziative elektronische schaltungsanordnung aus digitalen prozessoren
DE1218761B (de) Datenspeidbereinrichtung
DE1900141B2 (de) Hilfssteuerwerk fur eine Datenver arbeitungsanlage
DE1499288B2 (de) Datenverarbeitungsanlage
DE1549523A1 (de) Datenverarbeitungsanlage
DE1499175A1 (de) Digitalrechner-Datenverarbeitungszentralanlage
DE1499182A1 (de) Elektrische Datenverarbeitungsanlage
DE2054947A1 (de) Adressenvorbereitungseinnchtung und verfahren und Speicherzugnffan forderungseinnchtung fur ein Infor mationsver arbeitungssystem
DE1774052B1 (de) Rechner
DE2248296A1 (de) Programmsteuereinrichtung
DE4207158A1 (de) Speicher-zugriffssteuerung
DE1499206B2 (de) Rechenanlage
DE2458286A1 (de) Datenverarbeitungssystem zum verschieben von datenfeldern mit verschiedenen strukturen
DE3013064C2 (de) Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher
DE2912073A1 (de) Stapelspeicheranordnung zur kurzzeitigen speicherung von informationen bei nichtabsetzbarkeit dieser informationen in einem datenverarbeitungssystem
DE1191145B (de) Elektronische Zifferrechenmaschine
DE1774053A1 (de) Digitaldaten-UEbertragungssystem
DE1221037C2 (de) Verfahren zur Speicherung hierarchisch geordneter Datenketten und Anordnung zur Durchfuehrung dieses Verfahrens
DE1499224C3 (de) Datenverarbeitungsanlage mit Kellerspeichereinrichtungen
DE1474042C3 (de) Datenspeichersystem zur Ein- und Ausspeicherung von in Ketten zusammengefaßten Daten unterschiedlicher Feldlänge
DE1474047A1 (de) Programmgesteuerte Rechenanordnung

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
EHJ Ceased/non-payment of the annual fee