DE1900141A1 - Datenverarbeitungsvorrichtung - Google Patents
DatenverarbeitungsvorrichtungInfo
- Publication number
- DE1900141A1 DE1900141A1 DE19691900141 DE1900141A DE1900141A1 DE 1900141 A1 DE1900141 A1 DE 1900141A1 DE 19691900141 DE19691900141 DE 19691900141 DE 1900141 A DE1900141 A DE 1900141A DE 1900141 A1 DE1900141 A1 DE 1900141A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- memory
- cycle
- address
- branch
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
- G06F9/264—Microinstruction selection based on results of processing
- G06F9/265—Microinstruction selection based on results of processing by address selection on input of storage
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13083—Jumps
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Patentanwalt München, 2.1.1969
B München 22, HEtrns;M5,TeI1WM53
Mein Zeichen: P 674
Anmelder: HONEYWELL INC.
27Ol Fourth Avenue South
Minneapolis, Minnesota
USA
Datenverarbeitungsvorrichtung
Die Erfindung bezieht sich auf eine Datenverarbeitungsvorrichtung und insbesondere auf eine Einrichtung, die in
dieser Datenverarbeitungsvorrichtung eine Vielfach-Verzweigungsoperation
durchzuführen gestattet.
Bei herkömmlichen Programmierungsmethoden wird die Ausführung einer Vielfach-Verzweigungsoperation dadurch ermöglicht,
daß herkömmliche Verzweigungsbefehle.hintereinander gereiht werden. Diese Methode ist langsam, und
zwar insofern, als ein geprüfter Zweigbefehl pro Element der hintereinander angeordneten Befehle erzeugt werden
muß. Es sind auch schon Vielfach-Verzweigungsoperationen
bekannt, die ihre Operationen während der einem einzigen Maschinenzyklus entsprechenden Zeitspanne auszuführen gestatten.
Derartigen Vielfach-Verzweigungsoperationen haftet jedoch der Mangel an, daß normalerweise während eines
909836/1256
1900U1
einzigen Befehlszyklus die Vielfach-Adressen vorliegen und die Prüfanforderungen ausgeführt werden. Dadurch
müssen sämtliche Prüfanforderungen bezeichnet und nahezu gleichzeitig erfüllt werden. Dies steht im Gegensatz zum
Gegenstand der vorliegenden Erfindung. Gemäß der Erfindung werden Einrichtungen geschaffen, die eine oder mehrere Verzweigungsadressen
und Angaben über Prüfanforderungen unabhängig voneinander vorzuspeiehern gestatten. Zu einem
späteren Zeitpunkt werden dann die Ergebnisse der vorgespeicherten Anforderungen überprüft, und außerdem wird
eine einer der vorgespeicherten Adressen entsprechende Verzweigungsoperation ausgeführt.
Der Erfindung liegt daher die grundsätzliche Aufgabe zugrunde, eine Vorrichtung zu schaffen, die auf irgendeine
Verzweigungsadresse einer Vielzahl vorgespeicherter Verzweigungsadressen hin eine Verzweigungsoperation ausführt,
und zwar entsprechend den in dem zugehörigen Datenverarbeitungssystem
vorliegenden Anforderungen. Dabei ist eine Überprüfung zu irgendeinem Zeitpunkt nach der eigentlichen
Ausführung der betreffenden Operation vorzunehmen.
Gelöst wird diese Aufgabe mit einer Datenverarbeitungsvorrichtung der eingangs genannten Art erfindungsgemäß
dadurch, daß ein adressierbar ansteuerbarer Speicher vorgesehen ist, dem ein erstes Register zur Speicherung einer
Speicheransteueradresse und ein zweites Register zur Kurzzeitspeicherung des Inhalts eines bezeichneten Speicherplatzes
de.s Speichers zugeordnet ist, daß eine Vielzahl unabhängig voneinander ansteuerbarer Register vorgesehen
ist, in welche mit Hilfe von Steuereinrichtungen selektiv zumindest ein Teil des jeweiligen Informationsinhalts des
zweiten Registers während aufeinanderfolgender Operationszyklen des Speichers einspeicherbar ist, und daß die Steuereinrichtungen
eine der Anzahl der unabhängig voneinander
909836/1256
1900U1
ansteuerbaren Register entsprechende Anzahl von Speicherelementen
und Prüfeinrichtungen enthalten, die auf Prüfanforderungssignale hin selektiv ansprechende Auswerteeinrichtungen
einstellen, woraufhin der Inhalt eines bestimmten Registers der unabhängig voneinander ansteuerbaren
Register als Speicheransteueradresse zur Bezeichnung des nächsten Speicherplatzes des Speichers heranziehbar ist.
Die der Erfindung zugrundeliegende Aufgabe wird also dadurch gelöst, daß eine Vielzahl von als Zweigadressenregistern zu
bezeichnenden Speicherregistern zur Verfugung steht, die einer Adresse oder einem Teil einer Adresse in einem zugehörigen
Speicher entsprechende digitale Daten zu speichern imstande sind. Jedem der Zweigadressenregister ist eine
setzbare bistabile Speichereinrichtung in Form eines Flip-Flops zugeordnet, Jede dieser bistabilen Einrichtungen
kann auf eine erfolgreiche Ausführung in dem System vorhandener Anforderungen gesetzt werden, woraufhin die Verzweigungsoperation
bestimmt ist. Ferner ist eine Abtasteinrichtung in Form einer Prüflogikschaltung vorgesehen,
die auf eine Feststellung eines gespeicherten Verzweigungssignals, das die Steuereinrichtung des zugehörigen Datenverarbeitungssystems
erzeugt, eine Abtastung der bistabilen Einrichtungen einleitet um festzustellen, welche der
Verzweigungsadressen zu beachten ist. Bei einer bevor- :
zugten Ausführungsform der Erfindung ist die Reihenfolge
der Abtastung und damit die Richtung der Abtastung der Flip-Flops durch eine abnehmende Wertigkeit festgelegt.
Gemäß einem speziellen Zweck ist eine Vielfach-Verzweigungsmethode
anzuwenden, bei der Verzweigungsadressen, die irgendeiner Anforderung einer Vielzahl von zu überprüfenden
Anforderungen entsprechen, in Verzweigungsadressenregistern
vorgespeichert werden, währenddessen die zu prüfenden Anforderungen in entsprechenden Flip-Flops
909836/1266
gespeichert werden. Daraufhin wird ein Verzweigungssignal abgegeben, mit dessen Hilfe die Abtastung der Flip-Flops
eingeleitet wird. Die Überprüfung erfolgt in einer dem Inhalt eines bestimmten Verzweigungsadressenregisters
entsprechenden Reihenfolge.
Die durch die Verzweigung zufolge einer gespeicherten Prüfanforderung erzielte zusätzliche Flexibilität dürfte
somit ersichtlich sein. Diese Flexibilität !trifft sowohl interne als auch externe Verzweigungsoperationen. Eine
besondere Anwendung der Vielfach-Verzweigungsmethode liegt in der Anwendung bei der Folgesteuerung durch gespeicherte
Programme. Derartige gespeicherte Programme können die Form eines normalen gespeicherten Programms besitzen, wie
es in herkömmlichen Datenverarbeitungsanlagen benutzt wird. Im Unterschied dazu kann das Programm, wie dies bei der
bevorzugten Ausführungsform der Erfindung der Fall ist, Bestandteil eines Auslesespeichers sein, der zur Erzeugung
von Steuersignalen in einer zugehörigen Datenverarbeitungsvorrichtung benutzt wird. Dabei kann eine geplante Anwendung
auf einen reinen internen Anwendungsbereich einen Anwendungsfall darstellen, bei dem der Programmierer eine interne
Programmschleife zu realisieren beabsichtigt, in der eine begrenzte Anzahl von Lesespeicherstellen zyklisch nacheinander
angesteuert werden, bis in einem zugehörigen Register, das in jedem Zyklus um eins weitergeschaltet
wird, eine der gewünschten Anzahl an Programmschleifen entsprechende Information gespeichert ist. Zu einem derartigen
Zeitpunkt ist die Prüfanforderung eines einem der Zw.eigadressenregister zugeordneten Flip-Flops erfüllt, so daß
die nächstfolgende Lesespeicherstelle berücksichtigt wird, die der in dem zugehörigen Verzweigungsadressehregister
gespeicherten Adresse entspricht.
908836/1268
'*" 1900U1
Das Beispiel einer externen Verzweigungsoperation stellt einen Fall dar, bei dem verschiedene aufeinanderfolgende
Auslesespeicherstellen zur Erzeugung von Steuersignalen ν führende Zyklen festlegen, die einer Vielzahl von Programmbefehlen
gemeinsam sind, die jedoch nur einen kleinen Anteil der Gesamtzahl von Zyklen ausmachen, die zur vollständigen
Ausführung irgendeiner dieser Operationen erforderlich sind. In derartigen Fällen werden die gemeinsamen
Zyklen auf die verschiedenen Programmbefehle aufgeteilt; eine externe Verzweigungsoperation wird dabei eingeführt,
um Steuersignale für nachfolgende Operationszyklen der betreffenden Befehle an verschiedene andere Teile des
Auslesespeichers zurückzuleiten.
Anhand von Zeichnungen wird nachstehend ein Ausführungsbeispiel der Erfindung näher erläutert.
Fig. 1 zeigt schematisch ein die Erfindung umfassendes Rechnersystem. '
Fig. 2A bis 2F veranschaulichen im einzelnen Verknüpfungsschaltungen zur Ausführung der vorliegenden Erfindung.
Fig. 3 zeigt ein Flußdiagramm eines zur Erläuterung der
Arbeitsweise der vorliegenden Erfindung benutzten Programmbefehls.
Im folgenden sei das in Fig. 1 dargestellte Blockschaltbild
betrachtet, das den generellen Aufbau eines, elektronischen
Datenverarbeitungssystems zeigt, in welchem die Merkmale der vorliegenden Erfindung realisiert sind.
Wie aus Fig. 1 hervorgeht, kann der zentrale Verarbeitungsteil
des Systems im wesentlichen als in drei Teile aufgeteilt betrachtet werden: Ein Speicherteil 10, ein
■Rechenteil 12 und ein Steuerteil 14. Eine Haupttakteinrichtung (nicht gezeigt) wird dazu benutzt, Taktsignale
für die Synchronisierung sämtlicher Einrichtungen des Systems zu erzeugen. Die von der Haupttakteinrichtung
806836/1256
1900U1
bzw. von dem Haupttaktgenerator abgegebenen Signale können, obwohl dies nicht dargestellt ist, so angesehen
werden, als seien sie an sämtliche entsprechenden Einrichtungen des Systems verteilt, die solche Signale zur
Synchronisierung ihrer Operationen benötigen.
Im folgenden sollen die den Speicherteil 10 gemäß Fig. 1
bildenden Elemente näher betrachtet werden. Zu diesen Elementen gehört ein Hauptspeicher 20, der ein mehrere
Ebenen umfassender Koinzidenzstrom-Kernspeicher sein kann, wie er in der US-Patentschrift 3 201 762 angegeben
ist. Der Zugriff zu dem Hauptspeicher 20 von dem Steuerspeicher 22 her kann über ein Mehrfachstufen-Hauptspeicheradressenregister
24- erfolgen. Dieses Register speichert die Adresse eines gegenwärtig bezeichneten Speicherplatzes
in dem Hauptspeicher. An den Ausgang des Hauptspeichers ist ein örtliches Hauptipeicherregister 26 angeschlossen,
Inhalt
das den / einer bezeichneten Hauptspeicherstelle aufzunehmen
und kurzzeitig zwischenzuspeichern vermag.
In entsprechender Weise wie beim Hauptspeicher 20 sind auch dem Steuerspeicher 22 ein Steuerspeicheradressenregister
28 und ein örtliches Steuerspeicherregister 30 zugehörig. Der Steuerspeicher 22 kann eine Vielzahl von Mehrstellen-Speicherregistern
enthalten, die in geeigneter Weise geschaltet sind. Jedes dieser Speicherregister vermag eine
Information zu speichern, die die Verarbeitung der verschiedenen Programmbefehle betrifft. Diese Speicherregister
enthalten.die Befehlsadressen und die während eines Programmdurchlaufes
zu verarbeitenden Daten. Bei einer bevorzugten Ausführungsform der Erfindung umfaßt das Steuerspeicherregister
A-, B-, C- und D-Operanden-Adressenregister, Folgeregister,
peripheren Übertragungsoperationen zugehörige Darstellungs- und Auslöse-Befehlsregister und für die kurzzeitige
Informationsspeicherung dienende spezielle Arbeitsspeicherregister·
909836/126 6
Eine in dem Steuerspeicher 22 erzeugte Signalfolge einer Hauptspeicheradresse wird dem Hauptspeicheradressenregister
24 über das ortliche Steuerspeicherregister 30 und einem Kurzzeitspeicher oder S-Register 32 zugeführt.
Diese Adressen werden normalerweise auch einem zweiten Kurzzeitspeicherregister oder M-Register 34 zugeführt,
das mit einer normalen Vergrößerungs-Verkleinerungs-Logikschaltung
36 verbunden ist. Die jeweils erhöhten oder verringerten Adressen der betreffenden Adressen werden danach
wieder in dem Steuerspeicher 22 für nachfolgende Adressierungszwecke gespeichert.
Der Rechenteil des Systems 12 umfaßt grundsätzlich eine Gruppe von vier Operanden-Speicherregistern 38, 40, 42
und 44, die als Recheneinheit 46 dienen. Die Recheneinheit besteht ihrerseits grundsätzlich aus einem Addierer, der sowohl
binäre als auch dezimale Rechenoperationen auszuführen erlaubt und der in der Weise realisiert sein kann, wie es
in dem Buch "Arithmetic Operations in Digital Gomputers", von R.K.Richards, D.Van Nostrand Company, 1955» angegeben
ist. Der Rechenteil wird mit seiner normalen Kapazität dazu benutzt, entweder numerische oder logische Operationen auf
Operanden hin auszuführen, die in dem zugehörigen Datenverarbeitungssystem verarbeitet werden.
Ein weiteres Element, das unter den zu der zentralen Verarbeitungsexnrichtung
gemäß Fig. 1 aufgeführten Elementen nicht genannt worden ist, dessen Funktion jedoch für ein
vollständiges Datenverarbeitungssystem erforderlich ist,
ist die Eingabe-ZAusgabe-Verkehrsregeleinrichtung. Wie der Name dieser Einrichtung sagt, reguliert die Eingabe-/Ausgabe-Verkehrsregeleinrichtung
den Datenfluß zwischen der zentralen Verarbeitungsexnrichtung und den Eingabe-/Ausgabe-Einrichtungen,
und zwar dadurch, daß die zentrale Verarbeitungsexnrichtung während entsprechender Zeitspannen für die
909836/1266
Eingabe-/Ausgabe-Operationen zur Verfügung gestellt wird und die peripheren Steuereinrichtungen identifiziert,
die die jeweilige Zeitspanne für die Datenübertragung benutzen. Ein derartiges System ist in der US-Patentschrift
3 323 110 beschrieben.
Die Erfindung betrifft jedoch den Steuerteil oder die Steuereinheit der zentralen Verarbeitungseinrichtung, der
den Kern der zentralen Datenververarbeitungsvorgänge bildet. Die Hauptfunktion der Steuereinheit besteht darin,
die Auswahl, Auswertung und Ausführung der das gespeicherte Programm bildenden Befehle zu unterstüzten. In der
Ausführung dieser Maßnahmen koordiniert die Steuereinheit die verschiedenen Operationen der Datenaufnahme von
den Eingabeeinrichtungen, der Datenübertragung von der zentralen Verarbeitungseinrichtung und der Übertragung
verarbeiteter Daten zu den.Ausgabeeinrichtungen hin. Demgemäß vermag die Steuereinheit Steuersignale zu erzeugen
und an das Datenverarbeitungssystem bildende Gatter und Register abzugeben. Gleichzeitig muß der Steuerteil
flexibel sein, um auf in der Datenverarbeitungsvorrichtung vorhandene Zustände reagieren zu können. Die Erzielung
der erforderlichen Flexibilität ist in großem Maße in dem Steuerteil der zentralen Verarbeitungseinrichtung
durch Anwendung der die Erfindung kennzeichnenden Merkmale erleichtert.
Gegebenenfalls ist das Schlüsselelement in der Steuereinheit 14 der Speicher 48, der bei einer bevorzugten
Ausführungsform der Erfindung ein adressierbarer, elektrisch steuerbarer Auslesespeicher mit 4096 Speicherstellen
ist, deren jede eine Information von 120 Bits zu speichern vermag. Jede Speicherstelle des Lesespeichers
48 ist ausschließlich durch ein Speicheradressenregister 50 herkömmlicher Art ansteuerbar. Die das
90S83S/1266
-9- 1900U1
Ausgangssignal des Speichers 48 bildenden 120 Bits
werden in dem örtlichen Speicherregister 52 kurzzeitig gespeichert. Das Speicherregister 52 ist ebenfalls von
herkömmlicher Bauart. Das örtliche Speicherregister 52 kann auch so aufgebaut sein, daß es ferner drei unterschiedliche
Gruppen zu speichern vermag, die 12 Bits, 22 Bits bzw. 86 Bits umfassen. Die 12-Bit-Gruppe dient
als Steuergruppe, die in einem Fall zur Aufnahme von Eingabedaten für. ein Kurzzeitspeicherregister 54- benutzt
wird, das hier als QG-Register bezeichnet ist. Die in dem QG-Register 54· enthaltenen Bits werden dazu benutzt, eine
selektive Auswertung entsprechend dem Hauptanteil des Inhalts des örtlichen Speicherregisters 52 zu bewirken,
nämlich die Auswertung der 86-Bit-Gruppe. Dies erfolgt in einem Unterbefehls-Generator 56. Jede Änderung der
in dem QG-Register 54 gespeicherten 12-Bit-Gruppe bewirkt
eine andere Auswertung der dem Unterbefehls-Generator 56 zugeführten Bitfolge. Ist die 12-Bit-Gruppe in
das QG-Register 54 eingegeben, so bleibt diese Bit-Gruppe
normalerweise während der Verarbeitung des gerade gespeicherten Programmbefehls unverändert.
Neben der !funktion der Auswertung des Inhalts des Unterbefehls-Generators
56 dient die 12-Bit-Gruppe des örtlichen Speicherregisters 52 ferner dazu, eine Adresseninformation
selektiv an eine Vielzahl von Adressenregistern 60 bis 68 während aufeinanderfolgender Zyklen
der Steuereinheit 14 abzugeben. Die 22-Bit-Gruppe in dem örtlichen Speicherregister 52 dient hauptsächlich
dazu, die Lesespeicher-Verzweigungssteuerfunktionen auszuführen. Zu diesem Zweck sind 17 Bits auf die Ausführung
von Prüfvorgängen gerichtet. Der Rest von etwa 86 Bits ist für die Erzeugung von Unterbefehlen vorbehalten,
die an verschiedene Operationselemente der Datenverarbeitungsvorrichtung zu deren Steuerung verteilt werden.
909636/1266
ORIGINAL !NSPECTED
-ίο- 1900U1
Die 86 Bits können ferner in zwei Gruppen unterteilt sein, von denen die eine 30 Bits enthält, die zur Erzeugung von
etwa 4O oder mehr sich gegenseitig " -. ausschließenden
Operationen selektiv kombiniert werden. Die übrigen 56 Bits werden entsprechend dem Inhalt des örtlichen Speicherregisters
52 ausgewertet sowie zur Erzeugung einer Gruppe
von einigen 400 Mikrobefehlen herangezogen.
Das Speicheradressenregister 50 verwendet als Adresseninformation
entweder eine vergrößerte oder verkleinerte Adresse der jeweils vorangehenden Adresse, und zwar durch
Verwendung einer Verknüpfungsschaltung 70, oder im Falle einer Zweigoperation eine der in den Registern 60 bis 68
enthaltenen vorgespeicherten Adressen.
In dem Übertragungsweg zwischen dem Kurzzeitspeicherregister 60 bis 68 und dem Hauptspeicheradressenregister 50
befindet sich eine Adressenerkennungs-Verknüpfungsschaltung 72, die zum Teil durch Signale aus der 22-Bit-Gruppe
des örtlichen Speicherregisters 52 sowie durch einen Teil
der. die zu überprüfenden Systemanforderungen darstellenden Anforderungssignale angesteuert wird· Die zuletzt genannten
Signale gelangen zu dem Verknüpfungselement 72 hin, nachdem sie zuerst in der Prüflogikschaltung 78, in den Verbindungs-Flip-Flops
76 und in der Prioritätslogikschaltung 72J- verarbeitet
worden sind. Eine zusätzliche Reihe von Eingangssignalen für das Prüf-Verknüpfungselement 78 sowie für den
Unterbefehls-Generator 56 wird von dem A-Stammregister 80
und dem A-Zeigerregister 82 sowie von dem B-Stammregister 84-
und dem B-Zeigerregister 86 geliefert. Aus. einer weiter unten noch erfolgenden Erläuterung des Betriebs des Gesamtsystems
wird die Funktion der A- und B-Zeigerregister und -Stammregister näher ersichtlich werden.
909836/1266
19001 A
Die Arbeitsweise der in Fig. 1 gezeigten Steuereinheit 14-dürfte durch Erläuterung eines Beispiels besser verständlich
werden. Dabei soll die Arbeitsweise bei einem typischen Verzweigungsprogramm näher betrachtet werden. Es
sei angenommen, daß die Steuereinheit für eine Verzweigungsoperation entsprechend vorbereitet ist. Diese Vorbereitung
wird bei der normalen Überprüfung der Funktionen der Steuereinheit vorgenommen. Dabei kann eine in dem
Speicheradressenregister 50 gespeicherte Adresse irgendeine Speicherstelle der etwa 2000 Speicherstellen des
Lesespeichers ^S bezeichnen und bewirken, daß der Inhalt
der betreffenden Speicherstelle in das örtliche Speicherregister 52 übertragen wird. Es sei daran erinnert, daß
der Lesespeicher bei jedem auszuführenden Programmbefehl
mehrere Male nacheinander angesteuert wird. Während des ersten Lesespeicherzyklus werden die Bits in der in dem
örtlichen Speicherregister 52 gespeicherten 12-Bit-Gruppe
in das QG-Register 54- übertragen und während der restlichen
Dauer des betreffenden Programmbefehls gespeichert. Dadurch wird der Unterbefehls-Generator 56 derart angesteuert, daß
dieser eine bestimmte Auswertung aus einer Vielzahl von Auswertungen der 56 Bits umfassenden Gruppe vornimmt, die
aus dem örtlichen Speicherregister ausgegeben worden sind. Nach erfolgter Dekodierung in dem Unterbefehlsgenerator
werden diese Bits als Stauersignale den verschiedenen dem Datenverarbeitungssystem zugehörigen Verknüpfungsgattern und Registern zugeführt.
Von dem in dem Adressenregister 50 gespeicherten Informationsinhalt
kann ein vergrößerter oder verkleinerter Informationsteil
über die Verknüpfungsschaltung 70 nach Ausführung des ersten Operationszyklus des LeseSpeichers wieder
eingespeichert v/erden. In diesem Zyklus kann eine Bitfolge entweder in der 86-Bit-Gruppe oder in der 22-Bit-Gruppe
909836/1266
-12- 1900H1
auftreten, und zwai eine solche Bitfolge, die anzeigt,
daß die niedrigerwertigen 12 Bits des örtlichen Speicherregisters 52 eine in einem Kurzzeitspeicherregister der
Kurzzeitspeicherregister 60 bis 68 zu speichernde Adresse darstellen. Daraufhin werden entsprechende Steuersignale
erzeugt, mit deren Hilfe der Informationsinhalt der niedrigerwertigen
12 Bits in das bezeichnete Speicherregister der Speicherregister 60 bis 68 eingeführt wird. Gleichzeitig
wird der übrige Teil des Informationsinhaltes des Örtlichen Speicherregisters 52 in dem Unterbefehls-Generator
56 dekodiert. Dadurch werden dem Datenverarbeitungssystem zusätzliche Steuersignale zugeführt, und zwar in
einer Weise, die der oben in Verbindung mit dem Zyklus 1 erläuterten Weise entspricht.
Während nachfolgender Zyklen wird aus dem Lesespeicher 48
eine zusätzliche Information zur Kurzzeitspeicherung in dem örtlichen Speicherregister 52 ausgespeichert. Dieser
Vorgang braucht nicht notwendigerweise während jedes nachfolgenden Zyklusses erfolgen. Aus dem örtlichen Speicherregister
52 wird die betreffende Information dann zu einem bezeichneten Kurzzeitspeicherregister der Kurzzeitspeicherregister
60 bis 68 übertragen.
Während der folgenden Zyklen, während der die Operation der Steuereinheit entsprechend dem betrachteten Programmbefehl
erfolgt, werden aus der Bitfolge der in dem örtlichen Speicherregister 52 gespeicherten 22-Bit-Gruppe
ferner Signale erzeugt, die das Prüf-Verknüpfungselement
entsprechend den Prüfanforderungssignalen wirksam steuern,
die verschiedentlich in dem Datenverarbeitungssystem auftreten.
Diese Prüfanforderungssignale stellen ferner Eingangssignale
für das Prüf-Verknüpfungselement bzw. Prüflogikelement
78 in einer von der betrachteten.Weise unabhängigen
Weise dar.
9Ö983S/12SS
Dem Prüflogikelement 78 sind unmittelbar Leitungs-Flip-Flops
78 zugeordnet, die eine Vielzahl bistabiler Einrichtungen oder Flip-Flops enthalten können, deren jedes
die Ergebnisse einer bestimmten geprüften Anforderung zu speichern vermag. Ein gesondertes Flip-Flop der Flip-Flops
ist jedem der Zweigadressenregister 60 bis 68 zugeordnet. Das Setzen der bistabilen Einrichtungen oder Leitungs-Flip-Flops
stellt eine Anzeige dafür dar, daß die -jeweilige in der zugehörigen Prüflogikschaltung 78 geprüfte Anforderung
erledigt ist. Darüber hinaus steuern diese Signale die Prioritätslogikschaltung 74- an, und zwar
derart, daß ,der Speicherinhalt des dem ranghöchsten gesetzten Leitungs-Flip-Flop zugehörigen Zweigadressenregisters
der Zweigadressenregister 60 bis 68 über die Adressenregister-Überwachungsanordnung 72 zu dem Speicheradressenregister
52 hin übertragen wird. Dies erfolgt auf die Aufnahme eines von. dem örtlichen Speicherregister 52
abgegebenen Signals "Verzweigung auf gespeicherte Prüfung hin" in der Anordnung 72· Zu diesem Zeitpunkt wird der
Inhalt des ausgewählten Adressenregisters der Adressenregister 60 bis 68 in das Speicheradressenregister 50
übertragen. In diesem Register wird der erwähnte Inhalt des ausgewählten Adressenregisters während eines folgenden
Zyklus zur Bezeichnung des Speichers 48, d.h. als Ansteueradresse für diesen Speicher benutzt. Sollten die
irgendeinem Leitungs-Flip-Flop, dessen entsprechendes Zweigadressenregister vorgeladen ist, zugehörigen Prüfanforderungen
auf die Erzeugung eines Prüfsignals in dem örtlichen Speicherregister 52 hin nicht erfüllt sein, so
wird die :> den betreffenden Spexcherzyklus betreffende
Adresse der Verknüpfungsschaltung 70 zugeführt.
Nachstehend seien die Figuren 2A bis 2F näher betrachtet,
in welchen Verknüpfungsanordnungen näher gezeigt sind, durch die jene Teile der Steuereinheit 14 realisiert sind, die zu
909836/1256
1900H1
der Erfindung gehören. Dabei zeigt !ig. 2A eine Verknüpfungsschaltung,
der die Bitpositionen 106, 107 und 108 des örtlichen Speicherregisters 250 gemäß Fig. 1 darstellende
Signale zugeführt werden. Diese Signale sind mit RK10620, RK10720 und RK1O83O bezeichnet. Die "2" an
der zweitniedrigsten Stelle der den Bitpositionen 106 und 107 entsprechenden Signalbezeichnungen bedeuten die
Negation oder das Fehlen eines Signals in der betreffenden Bitposition. Die "3" an der betreffenden Stelle des
die Bitposition 108 bezeichnenden Signals bedeutet eine Aussage über das Vorhandensein des betreffenden Signals.
Wenn die Bitfolge in den betreffenden Bitpositionen des örtlichen Speicherregisters 50 diese Bedingungen erfüllen,
gibt die in Fig. 2A gezeigte, ein UND-Gatter A1 bildende Verknüpfungsschaltung ein Ausgangs signal REiE1AHO ab. Dieses
Ausgangssignal bildet ein Ansteuersignal für die nächsthöhere
Reihe von Verknüpfungsschaltungen, d.h. für Verknüpf ungsBchaltungen, wie sie in Fig. 2B gezeigt sind.
Gemäß Fig. 2B sind Teile der Prüflogiksehaltung 78 mit
Teilen der Leitungs-Flip-Flops 76 gemäß Fig. 1 zusammengefaßt.
Dabei wird ein Signal SFBP010 einem UND-Gatter A2 zugeführt. Dieses Signal kennzeichnet das Vorliegen einer in
der zugehörigen Datenverarbeitungsvorrichtung erzeugten Prüfanforderung. Das betreffende Signal wird in dem UND-Gatter
A2 mit einem Signal RLFG231 kombiniert, das ein Signal aus einer Gruppe vonSignalen darstellt, die einem
bestimmtem Taktzustand zugehörig sind. Dem anderen Steuereingang des UND-Gatters A2 wird das am Ausgang des UND-Gatters
A1 gemäß #ig. 2A auftretende Signal zugeführt.
Das Ausgangssignal des UND-Gatters A2 wird an einen Ver
stärker GBA1 abgegeben. An den Eingang des betreffenden Verstärkers ist ferner der Ausgang eines UND-Gatters A3
909836/1256
1900H1
angeschlossen. Dieses UND-Gatter wird durch andere Prüfanforderungssignale
und Taktsignale gesteuert. An den Eingang des Verstärkers GAB1 können ferner weitere, den
UND-Gattern A2 und A3 entsprechende UND-Gatter angeschlossen sein, um den Prüfergebnissen von anderen, in
dem zugehörigen Datenverarbeitungssystem vorhandenen Prüfanforderungen entsprechende Signale über den Verstärker
zu übertragen. Das Ausgangssignal des Verstärkers GBA1 wird seinerseits als Signal BLFAX1O dem einen Eingang
eines UND-Gatters A4 zugeführt. Dem anderen Eingang des
UND-Gatters A4 wird ein Taktsignal RBIT021 zugeführt.
Das UND-Gatter A4 bildet die Eingangsstufe des Flip-Flops
A, das als dem A-Adressenregister 60 zugehöriges
Flip-Flop betrachtet werden kann. Dabei wird das Ausgangssignal des UND-Gatters A4 in ein Flip-Flop SFF1 eingegeben,
um ein Signal RLFAA10 zu erzeugen, wenn das betreffende Flip-Flop gesetzt ist, und ein Signal ELFAAOO zu erzeugen,
wenn das betreffende Flip-Flop zurückgestellt ist. Es dürfte genügen darauf hinzuweisen, daß die übrigen Adressenregister
62 bis 68 der Steuereinheit 14 gemäß Fig. mit entsprechenden Flip-Flops und zugehörigen Gatterschaltungen
versehen sind. Die dabei vorgesehenen Leitungs-Flip-Flops werden mit B,OrD und E bezeichnet. Diese
zusätzlichen Leitungs-Flip-Flop reagieren unabhängig voneinander auf Signalkombinationen aus dem örtlichen Speicherregister
52 und auf die Ergebnissignale von in einem zugehörigen Datenverarbeitungssystem vorliegenden Prüfanforderungen.
Die dabei ablaufenden Vorgängen entsprechen den im Zusammenhang mit dem Leitungs-Flip-Flop A betrachteten
Vorgängen.
909836/1266
1900H1
Das "bei gesetztem Leitungs-Flip-Flop A auftretende Ausgangssignal
KEJ1AAIO wird dem einen Eingang eines UND-Gatters
A5 zugeführt. Dieses UND-Gatter wirkt als Rückkopplungsgatter,
über das das Leitungs-Flip-Flop A solange gesetzt gehalten bleibt, bis ein Prüfsignal erzeugt wird.
Daraufhin werden sämtliche Leitungs-Flip-Flops zurückgestellt. Demgemäß bleibt die Rückkopplung solange aufrechterhalten,
bis das erwähnte Prüfsignal auftritt. Damit bleibt auch das Leitungs-Flip-Flop A entsprechend gesetzt.
Dies hat zur Folge, daß aufgrund von Prufanforderungen
erzielte Ergebnisse gespeichert werden, und zwar solange, bis ein eine Verzweigung betreffendes Prüfsignal auftritt,
durch das die Verzweigungsoperation abgeschlossen wird. Es'sei hier darauf hingewiesen, daß die Aufstellung
der Verzweigungsadresse, die Erzeugung der Prüfanforderungssignale, die Speicherung der Prüfanforderungssignale und
die Einleitung der eigentlichen Verzweigungsoperation zeitlich unabhängig voneinander und asynchron erfolgen.
Im Zusammenhang mit ^ig. 1 ist bereits ausgeführt worden,
daß die Funktion der Prioritätslogikschaltung 74- darin
besteht, eine Überwachung der Vielzahl von Zweigadressen, die für aufeinanderfolgende Bezeichnungszyklen des Lesespeichers
erzeugt werden, entsprechend einer gegebenen Rangordnung auszuführen. Bei der bevorzugten Ausführungsform der Erfindung wird entsprechend der betreffenden Rangordnung
zuerst das A-Adressenregister 60 bedient. Sodann
wird in dem Fall, daß die Prüfanforderungen nicht erfüllt
sind, d.h. daß das A-Leitungs-Flip-Flop nicht gesetzt ist,
das erste Adressenregister der B-, C-, D- oder E-Adressenregister
62 bis 68 bedient, dessen Prüfanforderungen bereits
erfüllt sind. Gemäß Fig. 2C hängt die Einstellung eines UND-Gatters A6 lediglich vom Auftreten eines Signals
RLFAA10 ab. Ist das UND-Gatter A6 eingestellt, d.h. angesteuert, so gibt es an den Eingang des Verstärkers SGA1
9098367 1256
1900H1
ein Signal ab, der daraufhin ein Ausgangssignal RBQA010
abgibt. Zur Ansteuerung eines UND-Gatters A7 sind zwei Ansteuersignale erforderlich, nämlich ein Signal RLi1BBIO
von einem Leitungs-Flip-Flop B und ein negiertes Signal RLi1AAOO, das das Fehlen eines Signals am Ausgang des
Leitungs-Flip-Flops A bezeichnet. In entsprechender Weise erfordert jedes der übrigen UND-Gatter A8 bis Δ10 für seine
Ansteuerung neben dem Signal von dem jeweils zugehörigen Leitungs-Flip-Flop noch ein negiertes Signal von jedem der
höherrangigen Leitungs-Flip-Flops .-
]?ig. 2D zeigt den Aufbau der Adressenregister-Abtast- und
Überwachungslogikschaltung 72 gemäß Fig. 1. Die UND-Gatter
A11 bis A15 gemäß Fig. 2D werden jeweils durch zwei Eingangssignale angesteuert, die durch ein Ausgangssignal der Prioritäts-Überwachungslogikschaltung
und durch ein Signal gebildet sind, das in einer bestimmten Bitposition der Adressenregister
60 bis 68 auftritt. Die in Fig. 2 gezeigte Verknüpfungsschaltung stellt somit die der ersten Bitposition
jedes Registers 60 bis.68 zugehörige Gatterschaltung dar. Bezüglich des UND-Gatters A11 sei bemerkt, daß die Verknüpfungsbedingung
dieses UND-Gatters erfüllt ist, wenn das Leitungs-Flip-Flop A gesetzt ist und die Prioritäts-Überwachungsschaltung
diesem Flip-Flop zugeordnet ist und außerdem das der ersten Bitposition des A-Adressenregisters
zugehörige Flip-Flop gesetzt ist. In diesem FaIL' trifcb am Ausgang
des Verstärkers GBA2 ein Signal R01QX10 auf. Es dürfte
ohne weiteres einzusehen sein, daß die Verknüpfungsbedingungen
jeweils nur eines der UND-Gatter A11 bis A15 erfüllt
sind, und zwar wegen der Eigenschaft der in der Logikschaltung 74- erzeugten Prioritätssignale, sich gegenseitig
auszuschließen.
909836/1256
_ 18 _ 1900U1
Fig. 2E zeigt die Eingangsschaltung des Verknüpfungselementes 72, und zwar in Verbindung mit einer Stufe des
in Fig. 1,gezeigten Speicheradressenregisters 50. Das Aus—
gangssignal der in Fig. 2D gezeigten Verknüpfungsschaltungsanordnung
wird als Steuersignal dem Eingang eines UND-Gatters AI7 (Fig. 2E) zugeführt. Einem weiteren Eingang
dieses UND-Gatters A17 wird ein Signal RBSOiOIO zugeführt,
durch das das Vorliegen eines eine Verzweigung betreffenden Prüfsignals angezeigt wird. Einen weiteren Eingang,
nämlich dem dritten -Eingang des UND-Gatters Ai? wird ein
Signal RAMPQ40 zugeführt, das der vorliegenden Operation
insofern entspricht, als es sich auf die Aufrechterhaltungsoperationen
bezieht und insoweit das Fehlen derartiger Operationen im vorliegenden Fall anzeigt. Das Ausgangssignal
des UND-Gatters A17 wird einem Flip-Flop SFF2 züge- "
führt. Dieses Flip-Flop wird auf diese Signalzuführung hin gesetzt. Dieses Flip-Flop gibt somit in dem Fall, daß die
Verknüpfungsbedingungen des UND-Gatters A17 erfüllt sind, ein Ausgangs signal RQROHO ab. Wie oben bereits angedeutet,
bildet das Flip-Flop SFF2 einen Teil des Lesespeicheradressenregisters 50 und entspricht dabei der ersten oder die
niedrigstelfertigkeit besitzenden Bitposition.
In Fig. 2E ist noch eine weitere Einrichtung vorgesehen, die das Flip-Flop SFF2 anzusteuern erlaubt. Dabei handelt
es sich um ein UND-Gatter A16, das durch zwei Signale RQZ0110
und RINC010 angesteuert wird. Das Signal RQZ0110 stellt, von
der zuletzt benutzten Speicheradresse ausgehend, eine vergrößerte oder verkleinerte Speicheradresse dar. Das zur Ansteuerung
des UND-Gatters A16 gemäß Fig. 2E benutzte Signal RINCOHO wird in der in Fig. 2F gezeigten Verknüpfungsschaltung
erzeugt. In diesem Zusammenhang dürfte ohne weiteres einzusehen sein, daß die Verknüpfungsanordnung gemäß Fig. 2F
eine Kombination eines Prioritäts-FestSetzungssignals und
909838/ 1256
1900U1
eines eine Verzweigung betreffenden Prüfoperationssignals
vornimmt. Das UND-Gatter A18 wird durch die ihm
zugeführten Ansteuersignale wirksam, wenn ein eine Verzweiguno; betreffendes Prüfsignal auftritt und die Ergebnisse
sämtlicher vorgespeicherter Prüfanforderungen negativ ausfallen, d.h. wenn keines der den Adressenregistern
60 bis 68 zugehörigen Leitungs-Flip-Flpps gesetzt
ist. Dies heißt im wesentlichen, daß die die Speicheradressen jeweils vergrößernde oder verkleinernde Verknüpfungsschaltung
in dem Fall wirksam ist und entsprechend vergrößerte Adressen abgibt, daß ein Verzweigungs-Zyklus
eingeleitet wird und sämtliche vorgespeicherten Prüfanforderungen als negativ ermittelt worden sind. Dabei
sind Einrichtungen vorgesehen, die einen vergrößerten oder verkleinerten Speicherinhalt des Speicheradressenregisters
bei Fehlen eines Verzweigungs-Prüfzyklus zu benutzen gestatten.
Die Erläuterung eines typischen Programmbefehls, bei dessen Ausführung in umfangreichem Maße von der
Verzweigungsoperation Gebrauch gemacht wird, dürfte das Verständnis der Arbeitsweise der erfindungsgemäßen
Datenverarbeitungsvorrichtung erleichtern. Bei dieser Erläuterung werden verschiedene Speieherzyklen und
Steuersignale betrachtet, die die Ausführung des Befehls betreffen* Die betreffenden Zusammenhänge sind schematisch
in dem Flußdiagramm gemäß Fig. 3 wiedergegeben.
Zur Erleichterung der Erläuterung des in JB1Ig. 3 dargestellten
Flußdiagramms möge das nachstehend angegebene Verzeichnis dienen, in welchem die einzelnen .
Verknüpfqngsfunktionen näher erläutert sind.
909826/1256
Register
R - Steuerspeicheradressenregister I - örtliches Steuerspeicherregister
N - örtliches Hauptspeicherregister
S - Ubertragungsregister, Steuerspeicher für das Hauptspeicheradressenregister
M - Übertragungsregister, Steuerspeicher für die Vergrößerungs-/Verkleinerungs-Logikschaltung
A, B, C, B- Operandenregister, der w/ Recheneinrichtung
zugehörig
AC - A-Operandenregister in dem Steuerspeicher
Acci - Akkumulatorregister in dem Steuerspeicher CM - gegenwärtig adressierter Steuerspeicherplatz
AP, AH, BP, BH- A- und B-Stammregister sowie A- und B-Zeigerregister
WL,, WL6 - Arbeitsstellenregister 3 und 6 in dem Steuerspeicher
QA, QB, QC, QD, QE- Adressenregister A bis E LA, LB5LC, LD, LE - Leitungs-Flip-Elops A bis E
ASRC, BSRC - Verschiebe Inhalt des A- und B-Operandenregisters
um eine Zeichenposition nach rechts
B^ Y- Verringere die Größenordnung von 3 in das örtliche
Speicherregister geschobenen Zeichenpositionen des B-Operandenregisters
A^ B^ - Verschiebe den Inhalt der vierten Zeichenposition
des A-Operandenregisters in die erste Zeichenposition des B-Operandenregisters
CMW - Einschreiben in den Steuerspeicher MMR - Hauptspeicher-Bezugszyklus
BST - Verzweigung auf gespeicherte Prüfung
OABPO - Setze Leitungs-Flip-Flop A, wenn das B-Zeigerregister
O ist ir
909836/1256
1900U1
Die durch die einzelnen Blöcke gemäß S1Ig. 3 bezeichneten
Lesezyklen sind für fünf verschiedene Programmbefehle gemeinsam. In dem Bemühen, eine einheitliche Ausdrucksweise beizubehalten, wird eine die verschiedenen Zyklen
der Ausführung eines bestimmten Befehls betreffende Erläuterung gegeben. Hiervon ausgenommen sind jedoch Vorgänge,
die die Vielfach-Verzweigungsoperation selbst betreffen. Der zu betrachtente Programmbefehl ist der TMA-Befehl
(Übertrage vom Speicher zum Akkumulator), durch den acht Informationszeichen aus einem Speicherplatz des Hauptspeichers
20 gemäß Fig. 1 in einen entsprechenden Speicherplatz des Steuerspeichers 22 übertragen werden. Bei der bevorzugten
Ausführungsform der Erfindung ist der Hauptspeicher 20 wortorientiert; er enthält pro Speicherplatz
24- Informationsbits. Gleichzeitig wird ein aus sechs Informationsbits bestehendes Informationszeichen festgelegt. Damit
enthält jeder WortSpeicherplatz vier Informationszeichen.
Die verschiedenen Speicherplätze in dem Steuerspeicher vermögen jeweils drei .Informationszeichen aufzunehmen. Das
erste Zeichen der jeweiligen drei"Informationszeichen kann
in irgendeinen der vier Zeichenspeicherplätze eingeführt werden, die ein Hauptspeicherwort aufzunehmen vermögen.
Dadurch kann es erforderlich sein, drei Hauptspeicherstellen zu bezeichnen, um einen Zugriff zu den gewünschten acht
Zeichen zu haben, die in den Steuerspeicher zu übertragen sind. Demgemäß wird der TMA-Befehl in Lesespeicherzyklen
so ausgeführt, daß eine kurzzeitige Übertragung zur Speicherung der drei Hauptspeicherwörter erfolgt, aus
welchen die gewünschten acht Zeichen ausgewählt und zur Einspeicherung in den Steuerspeicher übertragen werden
können.
909836/12S6
1900U1
Die Gesamtoperation einer Datenverarbeitungsvorrichtung
unter der Steuerung eines Programmbefehls wird mit der Extraktionsphase eingeleitet. Dabei werden die verschiedenen,
die auszuführende Operation bestimmenden Parameter in entsprechende Register des zugehörigen Datenverarbeitungssystems eingeführt. Danach wird die eigentliche Ausführung
des Programmbefehls eingeleitet. Während dieser Zeitspanne erfolgt ein Austausch, des Informationsinhalts der verschiedenen,
während der Extraktionsphase mit Informationen gefüllten
Register. Zur Erläuterung der vorliegenden Erfindung im Hinblick auf den TMA-Befehl sei angenommen,
daß die verschiedenen Schritte betreffend die Extraktionsphase bereits ausgeführt worden sind. Dazu gehören die
Ermittelung des vorliegenden Befehls, wie eines TMA-Befehls,
sowie das Laden zugehöriger Register mit Steuerinformationen, umfassenddie Operandenadressenregister des Steuerspeichers
und der Sonderspeicher des Systems , die kurzzeitig zur Steuerinformationsspeicherung dienen.
Zur vorläufigen Betrachtung der Einleitung der Extraktionsphase auf dem TMA-Befenl hin oder auf irgendeinen anderen
Befehl in einer die Erfindung umfassenden Datenverarbeitungsvorrichtung hin sei davon ausgegangen, daß in dem
B-Zeigerregister 56 ein Binärzeichen "1" gespeichert ist.
Während des ersten I«esespeicher-Zyklus (ROM-Zyklus), der
als TMAOHO-Zyklus in fig. 3 bezeichnet ist, wird die
Adresse des A-Operandenregisters des Steuerspeichers in
das Adressenregister dieses Speichers übertragen. Während des THA.O11O-Zyklus oder kurz während des Zyklus 10 wird
der Inhalt des B-Zeigerregisters 56, in welchem gerade ein
Binärzeichen "1" gespeichert ist, zu dem B-Stammregister
hin übertragen.
909836/1256
Während des Zyklus 11 wird der Inhalt des A-Operandenadressenregisters
des .Steuerspeichers in das örtliche Steuerspeicherregister 30 übertragen, wie dies während
des vorangehenden Zyklus festgelegt ist. Gleichzeitig wird der Inhalt des B-Stammregisters 84 um eins erhöht, so
daß nunmehr der Binärwert zwei in diesem Register gespeichert ist.
Der ROM-Zyklus 12 stellt den ersten Zyklus einer Programmschleife dar, die durch eine interne Verzweigungsoperation
ausgeführt wird. Während des Zyklus 12 bewirken die am Ausgang des Lesespeichers 48 und des Unterbefehls-Generators 56
auftretenden Signale die Einleitung einer Übertragung des vorliegenden Inhaltes des örtlichen Steuerspeicherregisters 30
in das M-Register 34, das auf die Durchführung einer Vergrößerungs-/Verkleinerungs-Operation
vorbereitet ist. Gleichzeitig wird der Inhalt des örtlichen Steuerspeicherregisters
(welches gegenwärtig die Hauptspeicheradresse der ersten drei herauszuführenden Wörter enthält) zu den S-Register 32 hin
übertragen, das auf die nachfolgende Übertragung zu dem Hauptspeicheradressenregister
24 hin vorbereitet ist. Heben der zur Adressierung des Hauptspeichers benutzten Bitfolge des
örtlichen Steuerspeicherregisters verbleibt in dem örtlichen
Steuerspeicherregister noch eine 2-Bit-Gruppe, die ein bestimmtes Zeichen der vier Zeichen des Speicherwortes bezeichnet,
das als Beginnzeichen der in den Steuerspeicher zu übertragenden
8-Bit-Gruppe bezeichnet wird. Diese beiden Bits werden von dem örtlichen Steuerspeicherregister während des
ROM-Zyklus 12 übertragen und kurzzeitig in den B-Zeigerregister 86 gespeichert.
Während des ROM-Zyklus 12 erfolgt ferner ein Austausch des
Inhalts des B-Stammregisters 84 durch eine vergrößerte Information.
Damit befindet sich in dem B-Stammregister 84 am Ende
909836/1256
1900U1
des ROM-Zyklus 12 ein dem Wert drei entsprechendes Binärwort
(011). Me !Funktion dieses Stammregisters in der gerade
betrachteten Programmschleifenoperation liegt darin, die Anzahl der .zyklischen Vorgänge zu überwachen. Während
des folgenden Lesespeicherzyklus, d.h. während des Zyklus 13,
erfolgt ein Vergleich zwischen dem Inhalt des B-Stammregisters und einer Information OXX. Während XX sind die unbedeutenden
Ziffern im Hinblick auf die erfolgende Vergleichsoperation bezeichnet. Solange eine "0" in der
dritthöchsten Bitposition vorhanden ist, ist die Ver-* gleichsbedingungen erfüllt, und ferner wird ein einem bestimmten
Adressenregister 60 bis 68 zugehöriges, bezeichnetes Leitungs-Flip-Flop gesetzt. Das Adressenregister wird
nahezu gleichzeitig mit der dem Zyklus 12 entsprechenden Lesespeicheradresse geladen. Wie aus der nachstehenden Beschreibung
noch näher ersichtlich werden wird, beendet eine auf ein gespeichertes Prüfsignal hin erfolgende Verzweigung
(BST) einen bestimmten Zyklus der Programmschleifenoperation, indem der Inhalt des zuvor erwähnten einen Adressenregisters
60 bis 68 in das Speicheradressenregister 50 übertragen wird.
Auf diese Weise wird dann ein neuer Zyklus der Programmschleifenoperation eingeleitet.
Mit jeder Durchführung des Lesespeicherzyklus 12 ist ferner
die Anzeige einer Verkleinerungs-Operation bezüglich des Inhalts des M-Registers 34 verbunden. Der Inhalt dieses
Registers wird in dieses Register während des betreffenden Lesespeicherzyklus von dem örtlichen Steuerspeicherregister
30 her übertragen. Während dieses Zyklus erfolgt ferner eine Einspeicherung derjenigen Adresse in das A-Adressenregister
60, die den ersten Speicherplatz aus einer Reihe von Lesespeicherplätzen
bezeichnet. Diese Adresse bezeichnet diejenige Maßnahme, die in dem Fall auszuführen ist, daß ein
unrechtmäßiges OP-Kodewort in dem -vorliegenden Befehl ermittelt
wird. Eine derartige Maßnahme wird bei der Auslösung -
909836/1256
-25- 1900H1
einer Verzweigung auf ein gespeichertes Prüfsignal hin während eines nachfolgenden Lesespeicherzyklus eingeleitet.
Während des Lesespeicherzyklus 13 wird die oben erwähnte BST-Prüfung eingeleitet, bei der der Inhalt des B-Stammregisters
mit einer Information OXX verglichen wird, um festzustellen, ob noch ein Programmschleifenzyklus auszuführen
ist. Zur Erläuterung dieser Vorgänge sei angenommen, daß das Leitungs-Flip-Hop D und das zugehörige D-Adressenregister
66 die Ergebnisse der Überprüfung sowie die Adresse zu speichern haben. Während des ROM-Zyklus 13 wird ferner
der im Wert verkleinerte Teil des Inhalts des M-Registers zur nachfolgenden Rückspeicherung in den Steuerspeicher 22
gespeichert.
Der ROM-Zyklus 14 wird dazu benutzt, ein Signal zu erzeugen,
das zur Einleitung der Durchführung der Verzweigung auf die gespeicherte Prüfoperation hin herangezogen wird. Dies
erfolgt, wie aus Pig. 3 hervorgeht, nach Beendigung des ROM-Zyklus 15- Die Tatsache, daß ein vollständiger Zyklus
benutzt wird, um die Einleitung der BST-Operation und das Auftreten eines Antwortsignals zu trennen, soll nicht als
Beschränkung des Systems betrachtet werden, da es lediglich eine Frage der Auslegung des Systems ist, ob die eigentliche
Verzweigung während des unmittelbar folgenden Zyklus oder einen oder mehrere Zyklen danach erfolgt. Bei der; bevorzugten
Ausführung der Erfindung wird somit das auf eine gespeicherte Prüfung hin erzeugte Verzweigungssignal erst nach
dem nächstfolgenden ROM-Zyklus für die Übertragungssteuerung zu dem Speicherplatz in dem Lesespeicher hin wirksam. Dies
wird durch den Inhalt des ranghöchsten Adressenregisters 60 bis 68 bewirkt, dessen zugehöriges Leitungs-Plip-fflop
gesetzt is; . In Abweichung hiervon kann dies auch durch die vergrößerte oder verkleinerte Adresse der vorangehenden ROM-Adresse
bewirkt werden. Unter der Annahme, daß kein unrecht-
909838/1256
-26- 1900ΊΑ1
mäßiges OP-Kodezeichen ermittelt worden ist und daß
kein ranghöheres Leitungs-Flip-Flop gesetzt war, ist
der nächstfolgende Lesespeicherzyklus durch den Inhalt
des DxZweigadressenregisters 66 bestimmt, das im vorliegenden
Fall den dem Zyklus 12 entsprechenden Lesespeicherplatz bestimmt.
Im Hinblick auf den Zyklus 14 sei ferner bemerkt, daß das B-Adressenregister 62 mit einer Information geladen wird,
die die dem Zyklus 22 entsprechende ROM-Adresse bezeichnet. Die Tatsache, daß während des Zyklus 14 diese Information
in das B-Adressenregister eingegeben wird, ist unabhängig davon, daß das Verzweigungssignal gegebenenfalls während
des betreffenden Zyklus erzeugt wird, und zwar insofern, als das Leitungs-3?lip-]?lop B nicht gesetzt ist. Unabhängig
von dem Setzen oder Zurückstellen irgendeines Leitungs-Flip-Flops
ist, daß eine Adresse, die in eines der Adressenregister 60 bis 68 eingegeben ist, solange zur Verfügung
steht, bis sie durch eine neue Adresse ersetzt wird.
Vor. der eigentlichen Ausführung der internen Verzweigungsoperation wird der Lesespeicherzyklus 15 ausgeführt, in
welchem der verkleinerte Inhalt des M-Eegisters in einen entsprechenden Speicherplatz des Y-Registers zurückgespeichert
wird, und zwar zusammen mit dem Inhalt des B-Zeigerregisters 86. Darüber hinaus wird der während des vorangehenden
Lesespeicherzyklus .aus dem Hauptspeicher herausgeführte und in dem Örtlichen Hauptspeicherregister 26
zwischengespeicherte Inhalt des Hauptspeichers zu dem C-Register 42 hin übertragen.
Wie oben bereits erwähnt, führt die Einleitung der Verzweigungsoperation auf die Erzeugung des Verzweigungssignals während des Zyklus 15 dazu, dass eine interne
80983S/1256
-27- 1900U1
Verzweigungsoperation abläuft, bei der das Leitungs-Flip-Flop
D gesetzt und das Leitungs-Flip-flop A zurückgestellt
ist. Ferner führt dies dazu, daß der Inhalt des D-Adressenregisters 66 zu dem Speicheradressenregister
50 übertragen wird. Hieran schließt sich ein Übergang zu einer wirksamen Steuerung des
Lesespeicherzyklus 12 an.
Es sei ferner bemerkt, daß bei der besonderen Ausführungsform der vorliegenden Erfindung ein Gesehwindigkeitsunterschied
zwischen den Lesespeicherzyklen und den Hauptspeicherzyklen in der Größenordnung von 6:1 vorhanden
ist. Demgemäß wird eine Anforderung, die während des vorangehenden Zyklus 12 bezüglich des Inhalts eines
bezeichneten Hauptspeicherplatzes auftritt, etwa sechs Leaeapeicherzyklen später ausgeführt. Während des Zyklus
des ersten Programmschleifenumlaufs wird somit der in das G-Register übertragene Inhalt des örltichen Hauptspeicherregisters
26 nicht beachtet. Während des zweiten Programmschleifenumlaufs und insbesondere während
des dabei auftretenden Zyklus 14 steht jedoch der Inhalt des während des vorangehenden Zyklus 12 bezeichneten
Hauptspeicherplatzes in dem N-Register zur Verfügung. Der betreffende Inhalt wird während des folgenden Steuerspeicherzyklus
(das ist Zyklus 15) aus dem N-Register in das G-Register übertragen. Dies stellt dann den Abholvorgang
des ersten Wortes der drei Wörter dar, nach denen bei Vorliegen des TMA-Befehls gearbeitet wird.
Es sei ferner darauf hingewiesen, daß während des zweiten Programmschleifendurchlaufs, und zwar insbesondere
während des Zyklus 12 dieses Programmschieifendurchlauf
s, eine zweite den Hauptspeicher betreffende Anforderung auftritt, die etwa sechs Lesespeicherzyklen
909836/1256
1900H1
später bedient wird. Wenn der Programmschleifenbetrieb so fortliefe, würde dies während des Zyklus 14 des folgenden Programmschleifenzyklus erfolgen. Während des
Zyklus 12 des zweiten Programm s chieif endurchiaufs wird
der Inhalt des B-Stammregisters jedoch um eins erhöht. Damit ist in dem B-Stammregister nunmehr die Bitfolge
gespeichert, die im Zyklus 13 dazu führt, daß das Leitungs-Flip-Flop D zurückgestellt bleibt. Unter diesen
Voraussetzungen ist bei der Erzeugung eines Verzweigungssignals im Zyklus 14 keines der den Adressenregistern 60 bis 68 entsprechenden Leitungs-Flip-Flops
gesetzt. Dadurch gibt die Vergrößerungs-ZVerkleinerungs-Verknüpfungsschaltung 70 die nächstfolgende Lesespeicheradresse ab, nämlich die für den Zyklus 16.
Während des Zyklus 16 wird durch die Übertragung des Inhalts des Y-Registers in das S-Register eine weitere
Anfrage bezüglich des Hauptspeichers ausgelöst. Dadurch wird die Ausspeicherung des dritten Wortes ausgelöst.
Gleichzeitig wird das den Inhalt des Y-ßegisters bezeichnende Zeichen zu dem B-Zeigerregister 86 wie in dem
Zyklus 12 übertragen. Ferner wird während des Zyklus das erste, aus dem Speicher während des Zyklus 14- ausgespeicherte und aus dem örtlichen Hauptspeicherregister während des vorangehenden Zyklus 15 in das C-Register 4-2
eingespeicherte Wort der drei Wörter nunmehr zu dem B- Register 40 übertragen. Gleichzeitig wird in das D-Adres·»
senregister 66 die Lesespeicheradresse des Zyklus 2$ eingespeichert.
Bei der weiteren Erläuterung der Erfindung und insbesondere
bei der Erläuterung einer Operation, d'ie mit
einer Verzweigung auf eine externe Anforderung hin abläuft, sei die durch den TMA-Befehl realisierte Funktion mit
909836/1256
-29- 1900U1
betrachtet. In diesem Zusammenhang sei angenommen, daß das erste der drei Vielfach-Zeichenwörter bereits
aus dem Hauptspeicher ausgespeichert ist und gerade in dem B-Registers 40 gespeichert ist. Da das erste der
dem Steuerspeicher 22 zu übertragenden acht Zeichen
irgendein Zeichen der in dem B-Operandenregister 40 enthaltenen
vier Zeichen bilden kann, sei nunmehr die Auswahl des ersten Zeichens und die Vorbereitung für seine
Übertragung betrachtet. Es sei daran erinnert, daß der Zeichen-Bezeichnungsteil der ursprünglich in dem Steuerspeicher
22 gespeicherten Adresseniüformation in das
B-Zeigerregister 86 übertragen worden ist. Dadurch wird im Zyklus 17 das Leitungs-Flip-Flop D gesetzt, wenn festgestellt
wird, daß in dem B-Zeigerregister 86 ein einer "3" entsprechendes Binärkodewort gespeichert ist, d.h.
die Bitfolge 111. Während des Zyklus 17 wird das B-Stammregister 84, in dem zuvor das einer 0 entsprechende Binärkodewort
gespeichert war, weitergeschaltet, so daß nunmehr in diesem Register ein einer "1" entsprechendes Binärkodewort
(das ist 01) enthalten ist. Der Inhalt des A-Adressenregisters 60 wird durch die dem Zyklus 22 entsprechende
Lesespeicheradresse ersetzt. Es sei daran erinnert, daß in dem A-Adressenregister 60 zuvor eine Lesespeicheradresse
enthalten war, die in dem betreffenden Fall als unrechtmäßiges OP-Kodewort bezeichnet ist. Dieser zuletzt genaaante
Zustand wurde während der Ausführung der ersten.Verzweigungsoperation
überprüft, und zu diesem Zeitpunkt der Ausführung des gerade vorliegenden Befehls wii'd das
betreffende Kodewort als überflüssige Information betrachtet,
Nunmehr sei der nächste Zyklus, d.h. Zyklus 20 (Oktalschreibweise),
näher betrachtet. Hierbei ist das Leitungs-Flip-Flop A gesetzt, wenn in dem B-Zeigerregister
ein einer 0 entsprechendes Binärkodewort (das ist 00)
909836/ 1256
-30- 1900U1
in den anderen zwei Bits gespeichert ist. In entsprechender Weise ist das Leitungs-Flip-Flop B gesetzt,
wenn in dem B-Zeigerregister ein einer 1 entsprechendes
Binärkodewort (das ist 01) in den beiden niedrigerwertigen Bits gespeichert ist. Das Setzen des A- und des B-Leitungs-Flip-Flops
während des Zyklus 20 erfolgt nahezu gleichzeitig mit der Abgabe eines Verzweigungssignals in
das örtliche Speicherregister 52. Die Leitungs-Flip-Flops
A und B und ihre zugehörigen Adressenregister 60 und 62 werden durch die gerade vorliegende Verzweigungsoperation
nicht beeinflußt. Demgemäß erfolgt eine Verzweigung zu der dem Zyklus 23 entsprechenden Lesespeicherstelle hin,
wenn das Leitungs-Flip-Flop D während des Zyklus 17 gesetzt
ist. Damit ist dann angezeigt, daß ein einer 3 entsprechendes Binärkodewort (das ist 11) gerade in dem B-Zeigerregister
gespeichert war. Das in dem B-Zeigerregister 86 gespeicherte, einer 3 entsprechende Binärkodewort (das
ist 11) zeigt an, daß sämtliche vier Zeichen, die das aus dem Hauptspeicher ausgespeicherte erste Wort enthalten, als
brauchbare Information in den Steuerspeicher zu übertragen sind. Mit anderen Worten ausgedrückt heißt dies, daß die
gewünschten acht Zeichen gerade in den ersten beiden bezeichneten Hauptspeicherwörtern enthalten sind. Unter
diesen Voraussetzungen führt die Ausführung der im Zyklus
20 ausgelösten Verzweigungsoperation zu einem unmittelbaren Übergang zum Zyklus 23, nachdem der Lesespeicher den Zyklus
21 durchlaufen hat.
Der Inhalt des während des Zyklus 12 des zweiten Programmschleif
endur chi auf es bezeichneten Hauptspeicherplatzes wird während des Zyklus 20 in dem örtlichen Hauptspeicherregister
26 verfügbar. Während des Zyklus 20 wird in das E-Adressenregister 68 ferner eine Information eingespeichert,
die eine Lesespeicheradresse bezeichnet, 'welche
909836/ 1256
-31- 1900H1
während der Ausführung der Verzweigungsoperation umzulaufen hat. Hierdurch ist der Höhepunkt des vorliegenden
Befehls erreicht. Während des Zyklus 20 wird ferner der Inhalt des A-Zeigerregisters 82 als Binärkodewort
zu dem A-Stammregister 80 hin übertragen. Dieses Binärkodewort
ist während des vorangehenden Lesespeicherzyklus aus dem Y-Register in das A-Zeigerregister 82 eingespeichert
worden.
Während des Zyklus 21 wird ein Signal erzeugt, um das Leitungs-Flip-Flop A im gesetzten Zustand zu halten,
wenn das B-Zeigerregister 86 ein eine 0 darstellendes Binärkodewort speichert. Ebenso wie dem Setzen des A- und
des B-Leitungs-Flip-Flops während des Zyklus 20 die im Zyklus 21 ausgelöste Verzweigungsoperation entspricht,
entspricht hier dem Setzen des Leitungs-Flip-Flops A während des Zyklus 21 die Ausführung der Verzweigungsoperation während des Zyklus 22. Somit löst die mit dem
Zyklus 21 beginnende Verzweigungsoperation eine verkürzte Programmschleifenoperation während des Zyklus 22 aus, und
zwar entweder für eine B-Zeigerdarstellung 00 oder für eine Zeigerdarstellung 01. Im Unterschied dazu führt
ein Binärkodewort 10 in dem B-Zeigerregister zu einer normalen Arbeitsfolge durch den Zyklus 22 in den Zyklus
Es sei daran erinnert, daß ein Binärkodewort 11 in dem B-Zeigerregister 86 eine Verzweigung hervorruft, und zwar
direkt vom Zyklus 23 zum Zyklus 21, u^ter Auslassung cii^
Zyklus 22.
Es sei angenommen, daß in dem B-^oirc^-regi^-·-; 0'5 ~;\/
sprünglich, ein Binärwort >"Γ: eni;h;;.? ; t/; -.··ν:· , 7 ;■ .:'': ;:.Ü;::;■·"■■-.
einzusehen sein, daß zu uem Γ-:,.:.ν.^.,:·'.:".. ■-::. :"■:■-:■-■. l·-.;.-
Zyklus 21 beginnt, das A-'.". :\.t:urj^ —?λ:ί.ν '"'-■.""■: ^.. ;:>^als ne»
setzt wird, so daß ein ftv-'-er D^cbla^ :-;>
Sytltia 2ä als·
9 0 S 8 3 6 / 1 2 5 6
-52- 1900U1
normale Folge der Vergrößerungs-/Verkleinerungs-Verknüpfungsschaltung
auftritt. Ein zweiter Durchlauf des Zyklus erfolgt in Abhängigkeit von der Erfüllung des
Prüfzustands des Leitungs-Flip-Flops A, wie dies während
des Zyklus 20 entsprechend dem Verzweigungssignal des Zyklus 21 festgelegt ist. Ein dritter Pro gr amm sohle if en*-
durchlauf durch den Zyklus 22 tritt dann auf, wenn die Anforderungen bezüglich des Setzens des Flip-Flops A
erfüllt sind, und zwar entsprechend der Festlegung im Zyklus 21 und als Folge des während des Zyklus 22 erzeugten
Verzweigungssignals.
Schließlich sei angenommen, daß in dem B-Zeiger-Register 86 während des* Zyklus 20 ein Binärkodewort 01 gespeichert
ist. Dies führt zum Setzen des B-Leitungs-Flip-Flops und zur Auslösung einer einzigen Programmschleife durch den
Zyklus 22, und zwar zusätzlich zu den Vorgängen, die als normale Arbeitsvorgänge in der Vergrößerungs-ZVerkleinerungs-Verknüpfungsschaltung
auftreten.
Nachdem die Umstände bezeichnet worden sind, unter denen der Lesespeicherzyklus 25 erreicht wird, ist noch erforderlich,
die Eigenschaft der Operationen zu erläutern, die während der Zyklen 21 und 22 ausgeführt werden. In
diesem Zusammenhang sei bemerkt, daß die während des vorangehenden Zyklus 20 von dem Speicher 20 her in das
örtliche Hauptspeicherregister 26 übertragene. Information nunmehr während des Zyklus 21 in das A-Operandenregister
übertragen wird. Darüber hinaus wird ein Binärkodewort 01 von dem B-Stammregister zu dem B-Zeigerreigster hin übertragen.
Ferner wird in dem B-Zeigerregister eine Adresse eingespeichert, die bezogen auf die im A-Stammregister gespeicherte
Adresse im Wert verkleinert ist. Angesichts der vorangehenden Operationen ist in dem A-Stammregister ein
einer 3 entsprechendes Binärkodewort gespeichert. In dem
909836/1256
-33- 1900U1
C-Adressenregister 64· ist darüber hinaus eine Lesespeicher-Zweigadresse
gebildet, die der Verzweigungsoperation zugehörig ist, welche den gerade vorliegenden
Befehl abschließt.
Die ]?unktion des Zyklus 22 besteht darin, die Verschiebung
der Information auszulösen, die derzeit in dem A-Operandenregister
38 und dem B-Operandenregister 40 enthalten ist.
Diese Operandenregister sind für die Übertragung der betreffenden Information zu dem Steuerspeicher 22 hin vorbereitet.
Mit Rücksicht auf die Ubertragungseigenschaften
bei der bevorzugten Ausführungsform der Erfindung muß die betreffende Information in den drei niedrigerwertigen
Zeichenpositionen des B-Operandenregisters 40 eingeführt werden, bevor sie zu dem Steuerspeicher 22 hin übertragen
wird. Demgemäß wird der Inhalt des B-Operandenregisters 4O
während ^jedes Programm schl eif endur chi aufs durch den Zyklus
22 um eine Position nach rechts verschoben. In entsprechender Veise geschieht dies mit dem Inhalt des A-Operandenregisters
38. Gleichzeitig wird das vierte, eine niedrige Wertigkeit besitzende Zeichen in dem A-Operandenregister 38
in die einer hohen Wertigkeit entsprechende. Zeichenposition des B-Operandenregisters 40 verschoben. Während jedes Lesespeicherzyklus
22 wird der jeweilige Inhalt des A-Stammregisters 80 im Wert verringert.
Wenn die gerade vorliegende Operation durch einen THA-Befehl
bestimmt wird, wie dies bei der vorliegenden Erläuterung angenommen ist, dann wird während des entsprechenden Zyklus
die Lesespeicheradresse des Α-Zählers in das Steuerspeicheradressenregister 23 eingegeben. Im Unterschied dazu wird die
Steuerspeicheradresse eines speziellen Arbeitsplatzregisters, d.h. des Arbeitsplatzregisters 3« in das Steuerspeicheradressenregister
übertragen. Gleichzeitig wird der Inhalt des
909836/1256
1900U1
B-Zeigerregisters 86 zu dem Steuerspeicheradressenregister
28 hin übertragen. Außerdem wird in dieses Register eine im Wert verringerte Adresse des B-Zeigerregisters'
eingegeben.
Während des Zyklus 23 wird ferner der Inhalt des Hauptspeicherplatzes,
bezüglich dessen während des Zyklus 16 eine Anforderung ausgelöst worden war, von dem örtlichen
Hauptspeicherregister 26 zu dem D-Operandenregister 24
hin übertragen. Dadurch wird die Ausspeicherung der drei Informationswörter aus dem Hauptspeicher beendet. Im
übrigen liegt damit ein Zustand vor, gemäß welchem die eine geringe Wertigkeit besitzenden drei Zeichen des
B-Operandenregisters zu dem Y-Eegister übertragen werden können. Nachdem die ersten drei Zeichen übertragen worden
sind, verbleibt in der einer höheren Wertigkeit entsprechenden Position des B-Operandenregisters 40 ein einziges Informationszeichen
und in dem A-Operandenregister zwischen einem und vier brauchbaren Informationszeichen, was von
dem Originalzustand des B-Zeicherregisters 86 abhängt.
Gleichzeitig ist in das D-Operandenregister der restliche Teil der brauchbaren Information eingegeben worden. Damit
werden die nachfolgenden Operationszyklen des Lesespeichers
dazu benutzt, eine weitere Gruppe der drei Informationszeichen in den einer geringen Wertigkeit zugehörigen drei
Zeichenpositionen des B-Operandenregisters zu sammeln, bevor
die betreffenden Zeichen zu dem Steuerspeicher hin übertragen werden. Um diese Sammelpperation ausführen zu können,
wird eine -an keine Bedingungen geknüpfte Verzweigungsoperation ausgeführt, in_dem während des Zyklus 23 das
Leitungs-Plip-Plop D bedingungslos gesetzt wird. Dies
bedeutet, daß mit dem nächsten Auftreten einer Verzweigung zufolge eines gespeicherten Prüfsignals eine
Maßnahme zur Auslösung einer Übertragung zu dem Lesespeicherplatz hin ausgeführt wird, und zwar entsprechend
909836/1256
1900H1
dem Inhalt des D-Adressenregisters 66, welcher im vorliegenden Fall dem Zyklus 23 entspricht. Während des
Zyklus 23 wird ferner in das Adressenregister 62 eine Lesespeicheradresse eingespeichert, die bei der den
Höhepunkt, des vorliegenden Befehls bildenden Verzweigungsoperation benutzt wird.
Wie im Zyklus 22 erfolgt auch im Zyklus 24· eine Verschiebung
der brauchbaren Informations zeichen in die einer niedrigen Wertigkeit entsprechenden Zeichenpositionen
des A-Operandenregisters 38 und des B-Operandenregisters 4-0.
Der Inhalt des A-Stammregisters 80 wird dazu benutzt, die
jeweils verschcu-bene Information zu überwachen. Dabei wird
jede Zeichenverschiebung in das A-Operandenregister 38
durch eine Verringerung des Inhalts des A-Stammregisters 80 begleitet. Dies setzt sich bis zu dem Zeitpunkt fort, zu
dem in den einer niedrigen Wertigkeit entsprechenden 2-Bitpositionen des A-Stammregisters die Bitfolge 00 festgestellt
wird. Dies zeigt dann an, daß die brauchbaren Informationszeichen von dem A-Operandenregister 38 zu dem B-Operandenregister
4-0 hin übertragen sind. Auf eine derartige Anzeige hin wird der Inhalt des D-Operandenregisters 44-, d.h. das
dritte aus dem Hauptspeicher ausgespeicherte Informationswort , in das A-Operandenregister 38 übertragen.
Während des Lesespeicherzyklus 24· erfolgt ferner die Einspeicherung
einer Lesespeicheradresse in das A-Adressenregister 60. Diese Adresse wird bei dem Höhepunkt des
vorliegenden Befehls benutzt. Während des Zyklus 24- tritt auf ein gespeichertes Prüfsignal hin eine Verzweigung auf,
die nach dem Zyklus 25 bewirkt, daß in Abhängigkeit von dem bedingungslosen Setzen des Leitungs-llip-Flops D ein
wiederholter Durchlauf durch die LeseSpeicherplätze entsprechend
den Zyklen 23, 24- und 25 erfolgt.
909836/1256
1900H1
Es dürfte einzusehen sein, daß diese Programmschleife
automatisch nach einem einzigen Zyklus beendet wird, da der Inhalt des D-Adressenregisters 66 während des Zyklus
25 durch die dem Zyklus 26 entsprechende Adresse des nächstfolgenden Lesespeicherplatzes ersetzt wird.
Während des Zyklus 25 erfolgt sine nochmalige Ausführung
der im Zyklus 24 ausgeführten Operationen. Hierzu gehört das Verschieben des Inhalts des Α-Registers und des B-Registers
sowie die Übertragung des Inhalts der einer niedrigen Wertigkeit entsprechenden Zeichenposition des
Α-Registers in die einer höheren Wertigkeit entsprechende Zeichenpositipn des B-Registers, Sine bedingte Übertragung
des Inhalts des D-Operandenregisters 44 in das A-Operandenregister
38 erfolgt wie im Zyklus 24 auf die Feststellung eines einer O entsprechenden Binärwortes in dem A-Stammregister
80. Während des Zyklus 25 wird das Leitungs-Flip-Flop
E bedingungslos gesetzt. Eine auf ein gespeichertes Prüfsignal hin erfolgende Verzweigung bewirkt dann die
Auswahl des Inhalts des E-Adressenregisters 68 nur in dem
Fall, daß sämtliche eine niedrigere Hangordnung besitzenden Leitungs-Flip-Flops zurückgestellt sind.
Während des Zyklus 26 wird die Sechtsvsrschiebung. der
Zeichen in dem A-Operandenregister 38 und in dem 3-Gperandenregister
40 fortgesetzt. Außerdem wird die Übertragung des Inhalts des einer niedrigen Wertigkeit entspx'echsziden
Zeichenspeicherplatzes des A-Op^randsnrsgisters in ctei
einer höherwertigen Zeichenposition des B-Operandenregisters fortgesetzt. Während dieses Zyklus erfolgt faraer
das bedingte Setzen der Leitungjs-Flip-Ficps I5-B5 0 und B«
Dabei wird das A-Leitungs-Flip-]?lop da:on gesetzt, -"/enn die
gerade vorliegende Operation entweder eine Addition odereine Subtraktion betrifft. Das E-Leitungs-Flip-Flop wird
~ 57 " 1900H1
dann gesetzt, wenn durch die gerade vorliegende Operation
eine Multiplikation ausgeführt wird. Das O-Leitungs-Flip-Flop
wird dann gesetzt, wenn durch die gerade vorliegende Operation eine Din-ision durchgeführt wird. Das D-Leitungs-Flip-Elop
wird schließlich dann gesetzt, wenn die gerade vorliegende Operation das Laden eines speziellen Registers
betrifft, das bei der Durchführung wissenschaftlicher Operationen benutzt wird. Während des Zyklus 26 werden
ferner Maßnahmen getroffen, um in das D-Adressenregister
66 die Adresse eines Lesespeicherplatzes einzuspeichern, die der dem D-Leitungs-Elip-Flop zugehörigen bedingten
Operation entspricht.
Während des Zyklus 27 wird die Steuerspeicheradresse des Polgeregisters des Steuerspeichers in das SteuerSpeicheradressenregister
28 übertragen, wenn der gerade vorliegende Befehl die Eigenschaft einer TMA-Operation besitzt, was
für die folgende' Erläuterung auch angenommen worden ist. Im Unterschied dazu wird die Adresse des Arbeitsspeicherplatzes
6 des Steuerspeichers in das Steuerspeicheradressenregister 28 übertragen. Gleichzeitig wird der Inhalt des
B-Zeigerregisters 86 in das Steuerspeicheradressenregister übertragen, und die in dem B-Operandenregister 4Ό noch enthaltenen,
eine niedrige Wertigkeit besitzenden drei Zeichen werden in das örtliche Steuerspeicherregister übertragen
und anschließend wieder in den Speicherplatz des Steuerspeichers zurückgespeichert, der für eine Speicherung
gerade adressiert ist. Zu diesem Zeitpunkt wird die letzte Verzweigung auf ein gespeichertes Prüfsignal hin erzeugt.
Während des Zyklus 30 wird in das Steuerspeicheradressenregister
die Adresse des IFolgezählers eingespeichert, und der Inhalt des B-Zeigerregisters 86 wird um eine Einheit
erhöht. Am Ende des Zyklus 30 wird die während des Zyklus
909836/1256
. 1900U1
3«
ausgelöste Verzweigung auf eine gespeicherte Prüfoperation
hin wirksam, wodurch das höchstwertige Adressenregister der Adressenregister A, B, C und D, dessen zugehöriges
Leitungs-Flip-Flop gesetzt ist, dazu benutzt wird, die nächste Lesespeicheradresse abzugeben.
Gemäß einem Beispiel, bei dem, wie dies im vorliegenden Fall angenommen worden war, die vorliegende Operation
einem TMA-Befehl entspricht, wird keines der Flip-Flops
A bis D gesetzt. Dabei obliegt es dem D-Adressenregister 68, die Adresse für den nächsten Lesespeicherzyklus abzugeben.
In derartigen Fällen, in denen die TMA-Operation selbst beendet
wird, ist der nächstfolgende Zyklus der erste Ausspeicherzyklus des folgenden Programmbefehls, wie dies
durch den Inhalt des Folgeregisters des Steuerspeichers bezeichnet ist.
Die Ausführung des TMA-Befehls erfolgt in der Weise, daß
eine Verzweigungsoperation entsprechend der jeweils auszuführenden Operation erfolgt. In Abweichung hiervon kann
auch ein bedingungsloser Übergang auf den nächsten Programmbefehl in einem Fall erfolgen, bei dem die vorliegende
Operation beendet ist. Dies ist dabei nicht als Beschränkung der vielfältigen Anwendungsmöglichkeiten der Erfindung
anzusehen.
8C3936/1256
Claims (1)
1900U1 53
Paten tansprüche
Datenverarbeitungsvorrichtung, dadurch gekennzeichnet, daß ein adressierbar ansteuerbarer Speicher (48) vorgesehen ist, dem ein erstes Register (50) zur Speicherung
einer Speicheransteueradresse und ein zweites Register (52) zur Kurzzeitspeicherung des Inhalts eines bezeichneten
Speicherplatzes zugeordnet ist, daß eine TEielzahl unab
hängig voneinander ansteuerbarer Register (60 bis 68) vorgesehen ist, in welche mit Hilfe von Steuereinrich
tungen (72) selektiv zumindest ein Teil des jeweiligen Informationsinhalts des zweiten Registers (52) während
aufeinanderfolgender Operationszyklen des Speichers (43) einspeicherbar ist, und daß die Steuereinrichtungen (?2)
eine der Anzahl der unabhängig voneinander ansteuert-aren
Register (38 bis 42) entsprechende Anzahl von Speieherelementen
(76) und Prüf einrichtungen (76) enthalten», die auf Prüfanfor&erungssignale hin selektiv ansprechende
Auswerteeinrichtungen einstellen, woraufhin ler Inhalt
eines bestimmten Registers der unabhängig beieinander
ansteuerbaren Register (60 bis 68) als Spei'.■aeransteueradresse
zur Bezeichnung des nächst sr. Spsie^c -' ■■
Platzes des Speichers (4-5) heransiehbar lsi;*
Datenverarbeitungsvorricctung nach Aiiapr'HV-i ·'■ - -u·,·"..-gekennzeichnet;,
daß zur Gasführung r>ir..·; - :.;:.v '■'■: /Λ
Verzweigungsadresse f e ^t ,r si epr
innerhalb des Ausführt.:^;;z
befehls eine Vielzahl c
bis 68) vorgesehen Lz~ < .
Informationen zu s>-5x . e... r.
plätze in dem Soeirie: -:'
innerhalb des Ausführt.:^;;z
befehls eine Vielzahl c
bis 68) vorgesehen Lz~ < .
Informationen zu s>-5x . e... r.
plätze in dem Soeirie: -:'
r 1J ^n
9 O 9 8 2 e / 1 2 c ο BAD ORIGlNAt
19 00H1
den Zweigadressenregistern (60 bis 68) bistabile Elemente (76) zugeordnet sind, die unabhängig voneinander
auf externe Anforderungssignale hin setzbar
sind und die jeweils dasjenige Zweigadressenregister (60 bis 68) bezeichnen, dessen Adresse zur
Ansteuerung des Speichers (4-8) dient.
3. Datenverarbeitungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Prüfeinrichtungen (78) auf
die Feststellung eines bestimmten Bits in dem den Speicher (48) zugehörigen zweiten Register (52) eine
Abtastung des Zustands der bistabilen Speicherelemente (76) einleiten und als Ergebnis dieser Abtastung den
Inhalt eine-s bestimmten Zweigadressenregisters (60 bis 68) an das erste Register (50) des Speichers (48)
übertragen.
4. Datenverarbextungsvorrxchtung nach Anspruch 2 oder 3,
dadurch gekennzeichnet, daß eine Verzweigung einer Operation mit Aufnahme eines bestimmten Anforderungssignals dadurch erfolgt, daß eine durch dieses Anforderungssignal
in dem jeweiligen Zweigadressenregister (60 bis 68) festgelegte Adresse zur Speicheransteuerung
abgegeben wird.
5. Datenverarbextungsvorrxchtung nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß die
Speicherelemente (76) in einer bestimmten Reihenfolge abgetastet werden, bis ein Speicherelement ermittelt
ist, das sich im Setzzustand befindet, und daß daraufhin
der Inhalt des diesem Speicherelement entsprechenden Verzweigungsadressenregisters (60 bis 68) zu dem
ersten Register (50) hin übertragen wird.
909836/ 1256
1900H1 In
6. Datenverarbeitungsvorrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß
Einrichtungen (70) vorgesehen sind, die den Wert der in dem dem Speicher (48) zugehörigen ersten
Register (50) gespeicherten Adresse nach jedem Zyklus selektiv erhöhen oder verringern, daß mit
den bistabilen Speicherelementen (76) eine Priorität s-Prüfl ogikschaltung (74) verbunden ist, und daß
der Inhalt des dem höchstrangigen, im Setζzustand
befindlichen bistabilen Speicherelement zugehörigen Zweigadressenregisters (60 bis 68) dem ersten Register
(50) des Speichers (48) zugeführt wird.
909836/ 1256
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US69494968A | 1968-01-02 | 1968-01-02 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1900141A1 true DE1900141A1 (de) | 1969-09-04 |
DE1900141B2 DE1900141B2 (de) | 1973-10-25 |
DE1900141C3 DE1900141C3 (de) | 1974-05-22 |
Family
ID=24790930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1900141A Expired DE1900141C3 (de) | 1968-01-02 | 1969-01-02 | HilfsSteuerwerk für eine Datenverarbeitungsanlage |
Country Status (9)
Country | Link |
---|---|
US (1) | US3570006A (de) |
JP (1) | JPS5031419B1 (de) |
BE (1) | BE726343A (de) |
CH (1) | CH512782A (de) |
DE (1) | DE1900141C3 (de) |
FR (1) | FR1603682A (de) |
GB (1) | GB1254538A (de) |
NL (1) | NL163339C (de) |
SE (1) | SE345332B (de) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3673573A (en) * | 1970-09-11 | 1972-06-27 | Rca Corp | Computer with program tracing facility |
US3699526A (en) * | 1971-03-26 | 1972-10-17 | Ibm | Program selection based upon intrinsic characteristics of an instruction stream |
US3728686A (en) * | 1971-06-07 | 1973-04-17 | Rca Corp | Computer memory with improved next word accessing |
US3704448A (en) * | 1971-08-02 | 1972-11-28 | Hewlett Packard Co | Data processing control system |
US3781814A (en) * | 1971-10-07 | 1973-12-25 | Raytheon Co | Method and apparatus for applying source language statements to a digital computer |
US3798613A (en) * | 1971-10-27 | 1974-03-19 | Ibm | Controlling peripheral subsystems |
US3881172A (en) * | 1971-12-01 | 1975-04-29 | Struthers Dunn | Process control computer |
FR2166733A5 (de) * | 1972-01-06 | 1973-08-17 | Sagem | |
US3753236A (en) * | 1972-03-31 | 1973-08-14 | Honeywell Inf Systems | Microprogrammable peripheral controller |
US3760369A (en) * | 1972-06-02 | 1973-09-18 | Ibm | Distributed microprogram control in an information handling system |
US3800291A (en) * | 1972-09-21 | 1974-03-26 | Ibm | Data processing system memory relocation apparatus and method |
US3793631A (en) * | 1972-09-22 | 1974-02-19 | Westinghouse Electric Corp | Digital computer apparatus operative with jump instructions |
US3979725A (en) * | 1973-08-06 | 1976-09-07 | Xerox Corporation | Multi-way program branching circuits |
US3922538A (en) * | 1973-09-13 | 1975-11-25 | Texas Instruments Inc | Calculator system featuring relative program memory |
IT1000638B (it) * | 1973-12-28 | 1976-04-10 | Olivetti & Co Spa | Calcolatore elettronico con dispo sitivo di deviazione dei micropro grammi |
DE2529348A1 (de) * | 1975-07-01 | 1977-01-13 | Siemens Ag | Verfahren zum verarbeiten von maschinenbefehlen mit bytefeldoperanden in einem mikroprogrammierten prozessor einer datenverarbeitungsanlage |
DE2805939C2 (de) * | 1978-02-13 | 1980-01-31 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Steuerwerk |
US4271484A (en) * | 1979-01-03 | 1981-06-02 | Honeywell Information Systems Inc. | Condition code accumulator apparatus for a data processing system |
IT1134780B (it) * | 1980-12-18 | 1986-08-13 | Honeywell Inf Systems | Unita' di controllo microprogrammata con rete di salti multipli |
EP0215028A4 (de) * | 1985-02-20 | 1987-07-23 | Magellan Corp Australia | Mikroprogrammsteuergerät. |
US4885682A (en) * | 1986-12-01 | 1989-12-05 | Nec Corporation | Microprogram controller for detecting the occurrence of an interrupt request or a termination of a string instruction |
EP0551931B1 (de) * | 1987-06-05 | 1998-07-15 | Mitsubishi Denki Kabushiki Kaisha | Digitaler Signalprozessor mit Adress-Generator für den Zugriff von Daten aus einem Zweidirektionalen Bereich eines Datenspeichers |
US4933847A (en) * | 1987-11-17 | 1990-06-12 | International Business Machines Corporation | Microcode branch based upon operand length and alignment |
US5664135A (en) * | 1994-09-28 | 1997-09-02 | Hewlett-Packard Company | Apparatus and method for reducing delays due to branches |
US8301890B2 (en) * | 2006-08-10 | 2012-10-30 | Inside Secure | Software execution randomization |
US7613907B2 (en) * | 2006-08-11 | 2009-11-03 | Atmel Corporation | Embedded software camouflage against code reverse engineering |
US7554865B2 (en) | 2006-09-21 | 2009-06-30 | Atmel Corporation | Randomizing current consumption in memory devices |
CN114116533B (zh) * | 2021-11-29 | 2023-03-10 | 海光信息技术股份有限公司 | 利用共享存储器存储数据的方法 |
-
1968
- 1968-01-02 US US694949A patent/US3570006A/en not_active Expired - Lifetime
- 1968-12-23 GB GB61128/68A patent/GB1254538A/en not_active Expired
- 1968-12-24 CH CH1934368A patent/CH512782A/fr not_active IP Right Cessation
- 1968-12-27 SE SE17835/68A patent/SE345332B/xx unknown
- 1968-12-28 JP JP43096432A patent/JPS5031419B1/ja active Pending
- 1968-12-31 BE BE726343D patent/BE726343A/xx unknown
- 1968-12-31 FR FR1603682D patent/FR1603682A/fr not_active Expired
-
1969
- 1969-01-02 NL NL6900010.A patent/NL163339C/xx not_active IP Right Cessation
- 1969-01-02 DE DE1900141A patent/DE1900141C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
CH512782A (fr) | 1971-09-15 |
NL163339B (nl) | 1980-03-17 |
GB1254538A (en) | 1971-11-24 |
BE726343A (de) | 1969-05-29 |
US3570006A (en) | 1971-03-09 |
DE1900141B2 (de) | 1973-10-25 |
NL163339C (nl) | 1980-08-15 |
JPS5031419B1 (de) | 1975-10-11 |
FR1603682A (de) | 1971-05-10 |
NL6900010A (de) | 1969-07-04 |
DE1900141C3 (de) | 1974-05-22 |
SE345332B (de) | 1972-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1900141A1 (de) | Datenverarbeitungsvorrichtung | |
DE1928202C3 (de) | Einrichtung zur Erstellung statistischer Daten über den Operationsablauf programmgesteuerter Datenverarbeitungsanlagen | |
DE69738188T2 (de) | Verfahren und apparat für eine erhöhte genauigkeit bei der verzweigungsvorhersage in einem superskalaren mirkroprozessor | |
DE2355993C3 (de) | Programmierbare Datenverarbeitungsanlage | |
DE1424732C3 (de) | Einrichtung zum gegenseitigen Austausch von Angabenwörtern zwischen einem unmittelbar zugänglichen Hauptspeicher eineT Ziffernrechenmaschine und einem an diese angeschlossenen Sekundärspeicher vergleichsweise längerer Zugriffszeit | |
DE2316296C2 (de) | Mikroprogrammierbarer Prozessor | |
DE2060635A1 (de) | Rechner-Steuergeraet sowie Verfahren und Steuerpult zum Programmieren desselben | |
DE3116100A1 (de) | Sprungabschaetz-zentraleinheit | |
DE1901228A1 (de) | Datenverarbeitungsanlage mit Einrichtungen zur Wiederholung von Operationen bei Auftreten eines Fehlers | |
DE2753062A1 (de) | Einrichtung zur durchfuehrung programmierter befehle | |
DE1499193A1 (de) | Datenverarbeitungsanlage | |
DE2023354A1 (de) | Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE1524222B1 (de) | Schaltung zum bereichsweisen Adressieren der Register des Hauptspeichers eines Rechenautomaten | |
DE1524102B2 (de) | Elektronische, aus baueinheiten aufgebaute datenverarbeitungsmaschine | |
DE1285219B (de) | Steuerwerk zur Ausfuehrung von Unterprogrammen | |
DE2713253A1 (de) | Programmlader fuer ein steuergeraet | |
DE1499206C3 (de) | Rechenanlage | |
DE2145709B2 (de) | ||
DE2556617C2 (de) | Schiebe- und Rotierschaltung | |
DE1935944C3 (de) | Steuereinrichtung in einer elektronischen Datenverarbeitungsanlage | |
DE2063195C2 (de) | Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern | |
DE3811658C2 (de) | ||
DE2433436A1 (de) | Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer | |
DE1191145B (de) | Elektronische Zifferrechenmaschine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
SH | Request for examination between 03.10.1968 and 22.04.1971 | ||
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 |