DE1499193B2 - Speicher-adressierschaltung - Google Patents

Speicher-adressierschaltung

Info

Publication number
DE1499193B2
DE1499193B2 DE19651499193 DE1499193A DE1499193B2 DE 1499193 B2 DE1499193 B2 DE 1499193B2 DE 19651499193 DE19651499193 DE 19651499193 DE 1499193 A DE1499193 A DE 1499193A DE 1499193 B2 DE1499193 B2 DE 1499193B2
Authority
DE
Germany
Prior art keywords
address
character
memory
register
main memory
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
DE19651499193
Other languages
English (en)
Other versions
DE1499193A1 (de
DE1499193C3 (de
Inventor
Walter R Canton Blume Michael H Newton Centre Mass Lethin (V St A)
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.)
Honeywell Inc
Original Assignee
Honeywell Inc
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 Honeywell Inc filed Critical Honeywell Inc
Publication of DE1499193A1 publication Critical patent/DE1499193A1/de
Publication of DE1499193B2 publication Critical patent/DE1499193B2/de
Application granted granted Critical
Publication of DE1499193C3 publication Critical patent/DE1499193C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30185Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/04Addressing variable-length words or parts of words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes

Description

Die Erfindung betrifft eine Speicher-Adressierschaltung für mit einem gespeicherten Programm versehene Datenverarbeitungsgeräte, die ein Hauptspeicheradressenregister zum Adressieren eines Hauptspeichers und einen an das Hauptspeicheradressenregister angeschlossenen und dieses steuernden Steuerspeicher aufweist, wobei beim Verarbeiten von mit einem Operationscöde und einer Adresse veränderlicher Länge versehenen Programmbefehlen eine Reihe von Speicheradressieroperationen durchgeführt werden. Die Entwicklungstendenz bei den Datenverarbeitungsgeräten ist gegenwärtig auf die sogenannte Einheitsbauweise gerichtet, bei der Baugruppen unterschiedlicher Größe und Arbeitsgeschwindigkeit zusammenarbeiten können und gegeneinander austauschbar sind. Diese Bauweise ermöglicht es, zunächst nur diejenigen Einheiten aufzustellen und in Betrieb zu setzen, die den Anforderungen eines bestimmten Anwendungsgebietes Rechnung tragen und diese Grundeinheiten nachträglich durch weitere Baugruppen und -einheiten zu ergänzen, um so den hinzukommenden Aufgaben und Anforderungen Rechnung zu tragen. Eine Möglichkeit zur Veränderung der Größe und Leistungsfähigkeit eines in Einheitsbauweise erstellten Datenverarbeitungsgerätes besteht in der Erweiterung des zugehörigen Haupt-Speichers, in dem nicht nur die einzelnen, zu verarbeitenden Operanden, sondern auch die Programmbefehle und die Adressen gespeichert sind, unter denen die zu verarbeitenden Operanden aufgesucht werden können.
Es ist ein Datenverarbeitungsgerät bekannt, dessen Programmbefehl jeweils eine bestimmte, gleichbleibende Länge besitzt, wobei allerdings der Adressenteil des Befehls um zwei Stellen geändert werden kann. Datenverarbeitungsgeräte mit derartigen, eine gleichbleibende Befehlslänge aufweisenden Programmbefehlen werden vielfach als Festwortmaschinen bezeichnet, wobei darauf geachtet werden muß, daß die zur Verfügung stehende Befehlslänge der größtmöglichen zu erwartenden Binärzifferdarstellung des Befehls Rechnung trägt. Nachteilig bei derartigen Festwortmaschinen ist, daß die festgelegte Wortlänge im Hinblick auf eine möglichst wirkungsvolle Anpassung der Programmbefehle zu einer Beeinträchtigung des Wirkungsgrades des Datenverarbeitungsgerätes führen kann, da die Länge der benötigten und zu bearbeitenden Befehle innerhalb des Aufgabenbereiches eines Datenverarbeitungsgerätes oft sehr stark schwankt. Auch ist die Speicherkapazität des Datenverarbeitungsgerätes von vornherein durch die feststehende Länge des Befehlswortes festgelegt. Eine gewisse Abhilfe schaffen hier Datenverarbeitungsgeräte mit einer variablen Befehlswortlänge, deren Programmbefehle aus einer variablen Anzahl von Zeichen bestehen. Dabei ist es bekannt, eine variable Anzahl von Zeichen für den sogenannten Operationscode vorzusehen, welcher die von dem Datenverarbeitungsgerät auszuführende Operation kennzeichnet, während dem sogenannten Adressenfeld eine bestimmte Anzahl von Zeichen fest vorgegeben ist, so daß die Länge des Adressenfeldes in diesen bekannten Datenverarbeitungsgeräten immer gleich bleibt. Die gleichbleibende Anzahl der einem Zeichen zugeordneten Bits ist vielfach gerade so groß, daß es einschließlich der für das Datenverarbeitungsgerät notwendigen Nebeninformationen gerade ein alphanumerisches Zeichen zu definieren vermag. Obwohl nun bei den bekannten Datenverarbeitungsgeräten mit variabler Befehlswortlänge die Länge des Befehls und damit die auszuführenden Operationen veränderbar ist, haben die Befehle doch, wie schon erwähnt, eine konstante Länge des Adressenfeldes, was der Adressierfähigkeit einer solchen Anlage bestimmte Begrenzungen auferlegt. Soll beispielsweise bei einem
I 499 193
bekannten Datenverarbeitungsgerät mit variabler Wortlänge die Kapazität des Speichers verändert werden, so ist dies nur möglich, wenn die zugeordneten Steuerschaltungen zusammen mit der Länge des Adressenfeldes erweitert werden, was einen erheblichen Aufwand bedeutet, oder aber die Steuerschaltungen schon von Anfang an auf die größtmögliche Speicherkapazität des Datenverarbeitungsgerätes zugeschnitten sind, was den Nachteil in sich trägt, daß derartige Steuerschaltungen möglicherweise niemals optimal genutzt werden.
Aufgabe der Erfindung ist es, eine Speicher-Adressierschaltung zu schaffen, die bei Datenverarbeitungsgeräten der Einheitsbauweise auf die Erzielung einer großen Wirtschaftlichkeit hinsichtlich der Speicherkapazität und der Rechenzeit gerichtet ist, indem sie eine Änderung der Speicherkapazität des Datenverarbeitungsgerätes mit relativ geringem Aufwand zuläßt und bei Datenverarbeitungsgeräten mit großer Speicherkapazität besonders wenig Zeit benötigt, um die Adressen zusammenzustellen, welche einen Zugriff zu den Operandenadressen erlauben.
Die Aufgabe wird dadurch gelöst, daß die eingangs genannte Speicher-Adressierschaltung mit den im kennzeichnenden Teil des Hauptanspruchs bezeichneten Merkmalen versehen wird. Bei Datenverarbeitungsgeräten, welche mit der erfindungsgemäßen Adressierschaltung versehen sind, kann daher zum einen also die Länge der Adressen, mit denen man Zugriff zu den Operandenadressen erhält, verändert werden. Hat man beispielsweise einen relativ kleinen Speicher, so werden auch die Operandenadressen eine geringe Anzahl von Stellen haben. Es ist daher wenig sinnvoll, in dem Adressenfeld des Programmbefehles, aus dem sich indirekt die Operandenadresse ergibt, eine große Anzahl von Zeichen vorzusehen, da vielen aus diesem Zeichen zusammensetzbaren Ziffern gar keine Stelle im Speicher zugeordnet sein wird; andererseits wird aber für einen großen, gegebenenfalls auch nachträglich vergrößerten Speicher, eine größere Anzahl Zeichen in dem Adressenfeld benötigt werden, um einen bestimmten Platz im Hauptspeicher zu definieren, welcher die Operandenadresse angibt. Die Speicher-Adressierschaltung gemäß der Erfindung ist daher so aufgebaut, daß sie wahlweise eine unterschiedliche Anzahl von Zeichen aufweisende Operandenadressen aus dem Hauptspeicher herauszieht und in vorgegebenen Speicherorten im Steuerspeicher (nachfolgend vielfach als Operandenadressenregister bezeichnet) speichert. Dabei ist es nicht nur möglich, einmal eine bestimmte Anzahl von Zeichen den einzelnen Operandenadressen zuzuordnen, sondern es kann auch innerhalb eines ablaufenden Programms durch entsprechende Befehle die Zahl der in dem nachfolgenden Befehl pro Operandenadresse herauszuziehenden Zeichen verändert werden. Eine derartige Variation des Adressenmodus während eines Programmes oder bei dem Wechsel eines Programmes in einem Datenverarbeitungsgerät mit gleichbleibender Speicherkapazität ist dann besonders vorteilhaft, wenn beispielsweise aus einem oder mehreren Zeichen bestehende Teile der Operandenadresse im Operandenadressenregister stehenbleiben können, welche dann einen sogenannten, für die nachfolgenden Adressen stets gleichbleibenden Sektor innerhalb des Hauptspeichers definieren. Ist daher bekannt, daß die nachfolgenden Adressen innerhalb dieses Sektors liegen werden, so empfiehlt es sich, den Adressenmodus dahingehend zu ändern, daß nur noch wenige Zeichen aus dem Hauptspeicher zur Kennzeichnung der Operandenadresse herausgezogen werden, während der höherstellige Adressenrest, welcher den genannten Sektor kennzeichnet, im Operandenadressenregister stehenbleibt und auch für die späteren Operandenadressen gültig ist.
Das Adressenfeld selbst zerfällt gewöhnlich in ein A -Adressenfeld und ein B -Adressenfeld, welche indirekt die Adressen des A- und B-Operanden definieren, die nachfolgend von dem Datenverarbeitungsgerät gemäß dem Programmbefehl zu verarbeiten sind.
Um die Gewinnung der Operandenadressen zu erleichtern, ist die erfindungsgemäße Speicher-Adressierschaltung mit den im kennzeichnenden Teil des Anspruchs 2 angegebenen Merkmalen zu versehen. Durch die zeichenmäßige Organisation der aus dem Hauptspeicher kommenden Adressenteile der Operandenadresse wird die Operandenadresse in nacheinander erfolgenden Schritten aus den einzelnen Zeichen zusammengesetzt, wodurch die Speicheradressierschaltung sich in ihrem Aufwand erheblich vermindert, da sie immer nur gerade zur Verarbeitung und Behandlung eines Zeichens in der Lage sein muß. Müßten sämtliche Zeichen gleichzeitig behandelt werden, so wäre der Aufwand für die Speicher-Adressierschaltung erheblich größer.
Hierdurch wird auch die vorteilhafte Wirkungsweise einer weiteren Ausgestaltung der Erfindung besonders begünstigt, nach der der Steuerspeicher Folgeregister aufweist, die die Adressen der demnächst auszuführenden, zur Bildung der Operanden-Adressen dienenden Befehle enthalten und nach der, um innerhalb des Hauptspeichers jedes zum Befehl gehörende Zeichen zu finden, ein Hilfsregister vorgesehen ist, in dem die ziffernmäßige Darstellung der Adresse des letzten Zeichens des vom Hauptspeicher entnommenden Befehls vergrößert oder verkleinert wird, um hierdurch die Adresse des nächsten zu entnehmenden Zeichens zu bilden. Danach wird also, nachdem durch das Adressenfeld innerhalb des Befehls der Speicherplatz des Hauptspeichers festgelegt ist, aus dem sich das erste Zeichen der Operandenadresse ergibt, der nächste Speicherplatz und alle folgenden Speicherplätze durch schrittweises Weiterschalten eines Hilfsregisters (vorzugsweise um eine Einheit) quasi automatisch in einer sehr einfachen Weise gewonnen. Es muß festgehalten werden, daß durch ein derartiges Weiterschalten sich nicht die Operandenadresse selbst ergibt, die ja erst im Operandenadressenregister zusammengestellt wird, sondern nur immer jeweils ein Speicherplatz in dem ein Teil bzw. ein Zeichen der Operandenadresse gespeichert ist. Weiterhin ist noch festzuhalten, daß die Operandenadresse auch nicht den ganzen Operanden angibt, sondern nur seine unterste oder oberste Stelle, wobei die Adressen für die im Speicher meist nebenan liegenden weiteren Ziffern des Operanden wiederum durch ein derartiges automatisches Verfahren gewonnen werden können.
Um in einfacher Weise zur Änderung des Adressenmodus den Zustand des Adressenmodusregisters ändern zu können, empfiehlt sich nach einer vorteilhaften Weiterbildung in der erfindungsgemäßen Schaltung die im kennzeichnenden Teil des Anspruchs 6 angegebenen Merkmale anzuwenden. Die Möglichkeit, gemäß der Erfindung den Adressenmodus zu wechseln, gestattet es daher auch quasi als
Nullfall das Adressenfeld im Programmbefehl ganz wegzulassen, wodurch sich eine erhebliche Zeitersparnis ergibt.
Zusätzliche vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den weiteren Unteransprüchen.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend an Hand der Zeichnung erläutert. Es zeigt
Fig. 1 ein Blockschaltbild eines Teils eines Datenverarbeitungsgeräts in dem die erfindungsgemäße Speicher-Adressierschaltung enthalten ist, und
Fig. 2 ein Signalflußdiagramm aus dem sich die Reihenfolge der einzelnen Arbeitsschritte beim Herausziehen der Programmbefehle während aufeinanderfolgender Arbeitszyklen ergibt.
Fig. 1 zeigt einen Teil eines elektronischen Datenverarbeitungsgeräts mit einer zentralen Recheneinheit, deren Hauptspeicher 11 beispielsweise einen Koinzidenz-Kernspeicher mit mehreren Speicherebenen (3D-Speicher) enthält. Von einem Steuerspeicher 13 besteht Zugang zum Hauptspeicher 11 über ein vielstufiges Hauptspeicher-Adressenregister 15, welches die Adresse des im Hauptspeicher aufzusuchenden Speicherplatzes enthält. Dem Adressenregister 15 ist ein Hilfsregister 17 zugeordnet, welches kenntlich macht, ob der Inhalt des Hauptspeicher-Adressenregisters 15 um einen Schritt vergrößert, verkleinert oder unverändert in ein vorbestimmtes Feld des Steuerspeichers 13 überführt werden soll. Die Informationen gelangen zu den Speicherplätzen des Hauptspeichers und verlassen diese entsprechend der vom Register 15 gegebenen Adressierung über das zum Hauptspeicher gehörige Register 19, welches außerdem eine den eingespeicherten Daten entsprechende Prüfinformation erzeugt und die Daten bei ihrer Ausspeicherung überprüft. Der Weg zum Herausnehmen der Information aus dem Speicher 11 führt über eine Gruppe von Leseverstärkern 21.
Der Steuerspeicher 13 besteht aus einer Vielzahl von Speicherregistern mit jeweils mehreren Stellen (2D-Register), wobei jedes Register eine zur Durchführung der verschiedenen Programmbefehle gehörige Information speichert. In dieser Beziehung werden alle Programmbefehle über den Steuerspeicher geführt, der die Auswahl, Auswertung und Durchführung in der richtigen Reihenfolge unterstützt. Bei der Ausübung seiner Funktionen koordiniert der Steuerspeicher 13 die verschiedenen Vorgänge der Datenaufnahme, der Umspeicherung innerhalb der zentralen Recheneinheit und der Ausgabe der berechneten Daten an die verschiedenen peripheren Geräte. Bei einer bevorzugten Ausführungsform der Erfindung umfaßt die Steuerspeicheranlage A- und B-Operanden-Adressenregister, Folge- sowie weitere Speicherregister. Die Mehrzahl der Speicherregister im Steuerspeicher 13, werden über ein Steuerspeicher-Adressenregister 23 adressiert. Informationen werden in den Steuerspeicher entweder vom Hilfsadressenregister 17 oder als Ausgangssignal einer Addiereinrichtung 25 über ein zum Steuerspeicher gehöriges, lokales Register 27 übertragen. Außerdem kann der Steuerspeicher jede der in ihm gespeicherten Informationen über zugehörige Leseverstärker 29 in das Hauptspeicher-Adressenregister 15 leiten.
Das zum Steuerspeicher gehörige lokale Register 27 und die Leseverstärker 29 besitzen Speichermöglichkeiten für eine Vielzahl von Zeichen und außerdem die Fähigkeit, wahlweise irgendwelche, den verschiedenen Speicherplätzen zufließende Informationen durchzulassen oder zu sperren.
Die Addiervorrichtung in Fig. 1 kann sowohl binäre als auch dezimale arithmetische Operationen durchführen. Zwei Operandenregister 31 und 33 sind an den Eingang der Addiereinrichtung 25 angeschlossen und stellen eine Einrichtung zur Speicherung der A- und der B-Operanden-Daten während der Verarbeitung der Programmbefehle dar. Die Information
ίο gelangt vom lokalen Register 19 des Hauptspeichers in die genannten Operanden-Register. Die in das A -Operanden-Register 33 einfließende Information läuft über eine der drei Leitungen in einer direkten Einer- oder Neuner-Komplementdarstellung je nach Art der auszuführenden Operation.
Die Addiervorrichtung 25 enthält eine Ubertragvorrichtung 35, die die wahlweise Kombination der aus entsprechenden Stufen des A- und des B-Operanden-Registers 31 bzw. 33 stammenden Signale mit
«ο in den vier Stufen der Übertragungsvorrichtung 35 erzeugten Ubertragsignalen bewirkt. Diese wahlweise Kombination von Signalen wird durch in dem Entschlüßler 37 erzeugte Signale gesteuert, der den Befehlscode und die Varianten entschlüsselt und die
»5 Reihenfolge der Arbeitsvorgänge während der Extraktionsphase jedes Befehls bestimmt und außerdem feststellt, ob gerade eine logische oder eine arithmetische Operation durchgeführt wird.
Die Ausgangssignale entsprechender Stufen der A- und B-Operanden-Register 31 und 33 werden in einem Summen-Register 39 mit Signalen aus der Übertragvorrichtung 35 kombiniert. Das Ausgangssignal des Summen-Registers 39 gelangt zu einem Summenentschlüßler 41, wo das Signal in eine dezimale Darstellung zurückverwandelt wird, sofern die ursprüngliche Darstellung dezimal war; während für binäre Operationen die ermittelte Darstellung an dem Entschlüßler unverändert vorbeigeleitet wird. Normalerweise wird das Ausgangssignal des Summenentschlüßlers 41 zwecks anschließender Speicherung im Hauptspeicher 10 in das diesem zugeordnete Register 19 überführt. In einem Befehlscode-Register 43 wird der Befehlscode und in einem Modifizierungsregister 45 die Befehlscode-Modifikation oder Variante gespeichert. Der Befehlscode gibt die auf Grund des Befehls auszuführende Grundoperation an, während die Befehlscode-Modifikation oder Variante die durch den Befehlscode gegebene Definition erweitert. Ferner ist ein besonderes Taktgeber- und Zeitfolge-Register 47 vorgesehen, welches aktiviert wird, sobald die zentrale Recheneinheit einen Programmbefehl oder einen anderen Befehl verarbeitet. Das Taktgeber- und Zeitfolge-Register 47 ist zusammen mit dem Befehlscode-Register 43 und dem Modifizierungsregister 45 an den Entschlüßler 37 angeschlossen, der, wie bereits erwähnt, die Zeitfolge der in der Addiereinrichtung 25 ablaufenden Vorgänge bestimmt. An die Ausgänge der beiden Register 43 und 45 ist das Adressenmodus-Register 49 angeschlossen. Dessen Aufgabe besteht darin, ein Signal zu speichern, welches angibt, ob im 3-Zeichen- oder im 2-Zeichen-Adressenmodus gearbeitet wird. In seiner einfachsten Form besteht das Adressenmodus-Register aus einer einfachen Kippschaltung. Jedoch kann durch einfaches Vergrö-Bern der Speicherkapazität mittels zusätzlicher Stufen angezeigt werden, in welcher von η möglichen Betriebsarten gearbeitet wird.
Bei einer bevorzugten Ausführungsform der Erfin-
dung erfolgt die Verarbeitung der Daten und Befehle auf Zeichenbasis mit einem einzigen aus einer Mehrzahl von Binärziffern bestehenden Zeichen, welches in jedem Speicherzyklus aus dem Hauptspeicher übertragen wird. Bei jeder programmierten Operation besteht der erste Schritt darin, den als nächsten auszuführenden Befehl aus dem Speicher zu entnehmen. So werden mit fortschreitender Verarbeitung des Befehls dessen Zeichen eines nach dem anderen aus den aufeinanderfolgenden Speicherplätzen des Hauptspeichers herausgenommen und in die verschiedenen Befehlsregister der zentralen Recheneinheit und des Steuerspeichers überführt. Ein typischer Programmbefehl kann beispielsweise überhaupt nur ein Zeichen oder zehn oder mehr Zeichen enthalten. Dies hängt von der Art des Befehls und vom Adressenmodus ab.
Die Verarbeitung eines Befehls, der arithmetische oder logische Operationen enthält, erfolgt in zwei Schritten; zunächst werden nämlich die Befehlszeichen aus dem Hauptspeicher herausgeholt und anschließend die durch die herausgeholten Zeichen gekennzeichneten Daten verarbeitet. Nunmehr soll auf Fig. 2 Bezug genommen werden, die ein Signalflußdiagramm darstellt und die Speicherzyklen wiedergibt, wie sie der Verarbeitung der verschiedenen Zeichen eines Programmbefehls während der Extraktionsphase zugeordnet sind. Die Extraktionsphase eines Programmbefehls beginnt mit der Entnahme der Information eines durch das Folgeregister des Steuerspeichers 13 bestimmten Speicherplatzes im Hauptspeicher und dessen Identifizierung als Befehlscode-Zeichen, welches im folgenden als V3 bezeichnet wird. Hierauf folgt die Verarbeitung des Zeichens A1, wonach festgestellt wird, ob die Anlage im 2-Zeichen- oder im 3-Zeichen-Adressenmodus arbeiten muß. Soll im 2-Zeichen-Adressenmodus gearbeitet werden, so führt der Signalweg am Zeichen A2 vorbei und beginnt sofort mit der Verarbeitung des Zeichens A3. Wird statt dessen im 3-Zeichen-Adressenmodus gearbeitet, so setzt sich der Signalfluß über die Zeichen A2 und A3 fort, worauf eine Überprüfung folgt, ob ein direkter, indirekter oder Indexmodus vorliegt. Dementsprechend schließt sich beim Indexmodus die Verarbeitung der Zeichen AIx, AIx und A3x an, während bei indirektem Modus die Zeichen AId, A2d und A3d aufeinander folgen.
In ähnlicher Weise werden die Zeichen Bl, B 2 und B 3 entnommen und hinsichtlich der genannten Bedingungen überprüft und der entsprechenden Operationsfolge unterworfen. Die Ausspeicherphase wird durch Entnahme der Signale Vl und V2 oder sonstiger zusätzlicher, den Befehlscode modifizierender Zeichen angeschlossen.
Nunmehr soll zur weiteren Erläuterung der während jeder der zuvor genannten Zeitintervalle auftretenden Extraktionszyklen erneut auf Fig. 1 Bezug genommen werden. Die Entnahme der Befehlscode-Zeichen beginnt mit der Information, die auf den Ziffernplätzen 1 bis 15 des Folgeregisters des Steuerspeichers 13 anzutreffen ist und über entsprechende Leseverstärker 29 in die zugehörigen Stufen des Hauptspeicher-Adressenregisters 15 überführt wird. Hierauf wird die im Hauptspeicher 11 befindliche Information durch entsprechende weitere Leseverstärker 21 in das dem Hauptspeicher zugeordnete Register 19 übertragen. Nach dieser Informationsübertragung wird die digitale Darstellung im Hauptspeicher-Adressenregister 15 um einen Schritt vergrößert und in das Hilfsregister 17 übertragen. Anschließend gelangt sie in das Folgeregister des Steuerspeichers 13 und identifiziert hierdurch den Speicherplatz im Hauptspeicher, von dem das folgende Zeichen des Programmbefehls abgenommen werden muß.
Dieses folgende Zeichen, welches durch die zuvor um einen Schritt fortgeschaltete Darstellung im Folgeregister des Steuerspeichers 13 gekennzeichnet ist,
ίο erweist sich im allgemeinen als das höherstellige Zeichen des ^4-Operanden-Adressenfeldes. Nimmt man an, daß die Verarbeitung in dem mit drei Zeichen pro Adresse arbeitenden Adressenmodus erfolgt, so wird die digitale Darstellung von den dem Steuerspeicher 13 zugeordneten Leseverstärkern 29 in das Adressenregister 15 des Hauptspeichers übertragen und löst hierdurch die Entnahme der zum höherstelligen Zeichen des A -Operanden gehörenden Information aus dem Hauptspeicher aus. Die in dem angesteuerten Speicherplatz des Hauptspeichers 11 gespeicherte Information wird über die weiteren Leseverstärkers 21 des Hauptspeichers 11 in das zum Hauptspeicher gehörige Register 19 umgeladen. Diese Information wird dann vorübergehend im Modifizierungsregister 45 gespeichert, wobei die ersten drei Binärziffern anzeigen, ob die nachfolgende Adressierung des laufenden Programmbefehls direkt, indirekt oder indexiert ist.
Normalerweise kennzeichnet der Adressenteil eines Befehls die Adresse eines bestimmten Datenfeldes im Hauptspeicher. Diese Art der Adressierung eines Datenfeldes wird als direkte Adressierung bezeichnet. In manchen Fällen ist es jedoch günstiger, den Speicherplatz einer anderen Adresse anzugeben, die ihrerseits den Speicherplatz eines gewünschten Datenfeldes kennzeichnet. Diese Art der Adressierung wird als indirekte Adressierung bezeichnet. Bei der dritten Art der Adressierung, der sogenannten Index-Adressierung, wird der Inhalt eines Index-Registers automatisch dem Adressenfeld eines Befehls hinzuaddiert. Die auf dem adressierten Speicherplatz des Hauptspeichers 11 gespeicherte Information wird außerdem im B -Operanden-Register 33 aufbewahrt, um während des nächsten Arbeitszyklus in das dem Steuer- C Speicher 13 zugeordnete lokale Register 27 übertragen zu werden. Etwa gleichzeitig wird die zuvor im Adressenregister 15 gespeicherte Information um einen Schritt vergrößert und in das Folgeregister des Steuerspeichers 13 zurückgeführt.
Nimmt man erneut das Signalschema gemäß F i g. 2 zur Hand, so erkennt man, daß zu dieser Zeit das Adressenmodus-Register 49 abgetastet und festgestellt wird, ob die Adressierung im 2- oder im 3-Zeichen-Modus erfolgt, d. h. ob die während des ^iI-Zyklus aufgenommene Information tatsächlich das höherstellige Zeichen der A -Operanden-Adresse '■ oder dessen mittleres Zeichen ist. In Abhängigkeit vom Ergebnis dieser Überprüfung wird die im Augen- ; blick im lokalen Register 27 des Steuerspeichers be- \ findliche Information so, wie sie ist, in die das mittlere | Zeichen aufnehmenden Ziffernplätze des A-Operandenadressenregisters des Steuerspeichers 13 überführt. Die drei niedrigrangigen Binärzeichen der Information, welche das höherrangige Zeichen bilden, werden an die entsprechenden Ziffernplätze des A-Operandenadressenregisters geleitet. Würde die Verarbeitung nach dem 2-Zeichen-Adressenmodus erfolgen, so würde der normalerweise dem Herauszie-
hen des ^4 2-Zeichens zugeordnete Speicherzyklus statt dessen der Extraktion des ^43-Zeichens zugewiesen, wonach das hierauf folgende, zur Verfügung stehende Speicherzyklus-Intervall zum Herausziehen des .B 1-Operanden-Zeichens benutzt wird.
Wenn, wie hier vorausgesetzt wurde, die Operation im 3-Zeichen-Adressenmodus abläuft, so werden die Zeichen Al und /13 in aufeinanderfolgenden Subintervallen des Speicherzyklus herausgezogen, wonach die während des Al Zyklus in das Modifizierungsregister 45 übertragende Information abgetastet und dabei festgestellt wird, ob die Verarbeitung direkt, indirekt oder im Indexmodus erfolgt.
Wird direkte Adressierung verwendet, so ist der folgende Arbeitszyklus der Herausziehung des Bl-Zeichens zugeordnet, während bei indirekter Adressierung sich die Extraktion der Zeichen Ald, A2d und A3d während der folgenden Speicherzyklus-Subintervalle anschließt. Wird im Indexmodus gearbeitet, so werden während der entsprechenden Zeitintervalle die AIx-, AIx- und /13x-Zeichen entnommen. Diese Betriebsart kann dadurch ausgeführt werden, daß den modifizierten Adressen ein Code hinzugefügt wird, der angibt, welcher aus einer Vielzahl reservierter Speicherplätze im Hauptspeicher 11 benutzt werden soll. In ähnlicher Weise legt eine indirekte Adresse das erste Zeichen eines eine andere Adresse enthaltenden Feldes fest.
Ferner ist dafür gesorgt, daß entweder die den mittleren Zeichenstellen der /!-Operanden-Adresse oder die den unteren drei Binärziffern der höherstelligen A -Operanden-Adresse entsprechende Information auf die entsprechenden Ziffernplätze des A -Operandenadressenregisters des Steuerspeichers 13 überführt werden. Entsprechend einer hier getroffenen Entscheidung sind die darauffolgenden Betriebszyklen der Extraktion der Binärzifferdarstellung entsprechend dem mittleren oder dem unteren /1-Operandenadressen-Zeichen zugeordnet. In beiden Fällen wird die Adresse des die zugehörige Information aufweisenden Speicherplatzes im Hauptspeicher vom Folgeregister des Steuerspeichers 13 durch die zugeordneten Leseverstärker 29 in das Hauptspeicher-Adressenregister 15 umgeladen, wo nach der Adressierung des Hauptspeichers 11 die im Adressenregister gespeicherte Information um eine Stelle vergrößert und in das Folgeregister des Steuerspeichers 13 zurückgeführt wird.
Bei der Verarbeitung eines Programmbefehls, dessen Aufbau sowohl ein A- als auch ein ß-Operanden-Adressenfeld aufweist, werden die aufeinanderfolgenden Subintervalle des Speicherzyklus zum Herausziehen der B-Operanden-Adresse in ähnlicher Weise ausgenützt, wie dies zuvor an Hand von F i g. 2 für die Extraktion der A -Operanden-Adressen erläutert wurde. Im Anschluß an das Herausziehen der Operanden-Adressen werden die Varianten-Zeichen Vl und V2 verarbeitet, womit die Extraktionsphase des Befehls abgeschlossen wird. Für das Herausziehen der Varianten-Zeichen wird der um einen Schritt erweiterte Inhalt der durch das Folgeregister des Steuerspeichers 13 bestimmten Speicherplätze im Hauptspeicher 11 in das Modifizierungsregister 45 umgeladen. Ein wesentliches Merkmal der Erfindung ist die Möglichkeit, einen Befehl zu verarbeiten, der eine unbeschränkte Anzahl von Varianten-Zeichen aufweist. Die Anlage ist so ausgelegt, daß sie das zuletzt verarbeitete Varianten-Zeichen zurückhält. Diese Merkmale sind für die Verarbeitung eines Programmbefehls von besonderer Bedeutung.
Wie bereits erwähnt, wird das Adressenmodusregister 49 für die Adressierart durch einen Programmbefehl eingestellt, dessen Format sich zu Fl V ergibt. Unter Bezugnahme auf die Fig. 1 und 2 erkennt man, daß der Befehlscode oder das F3-Zeichen, wenn es aus dem Hauptspeicher herausgezogen wird, im Befehlscode-Register 43 gespeichert wird. Im besonderen wird der Inhalt des Folgeregisters des Steuerspeichers 13 über die zugehörigen Leseverstärker 29 in das Hauptspeicheradressenregister 15 des Hauptspeichers umgeladen. Diese Information definiert einen bestimmten Platz im Hauptspeicher, von dem die
1S darin gespeicherte Information über die zugeordneten weiteren Leseverstärker 21 in das Register 19 des Hauptspeichers umgeladen und anschließend in das Befehlscode-Register 43 überführt wird. Nachdem das Befehlscode-Zeichen aus dem Hauptspeicher herausgezogen ist, wird der Inhalt des Hauptspeicheradressenregisters 15 des Hauptspeichers um eine Stelle weitergeschaltet und über das dem Steuerspeicher zugeordnete lokale Register 27 in das Folgeregister des Steuerspeichers 13 eingespeichert. Entsprechend dem oben erwähnten Aufbau des für die Änderung des Adressierungsmodus verantwortlichen Befehls werden die A- und die Extraktionszyklen umgangen.
Wie man aus Fig. 2 erkennt, ist der nächste auf die Abtrennung des Befehlscodes folgende Zyklus der /11-Zyklus, der während der Extraktionsphase jedes programmierten Befehls auftritt. Da jedoch bei der Verarbeitung des /I-Adressenmodus-Befehls die A- und B-Extraktionszyklen umgangen werden, ist das nächste bei der Verarbeitung dieses Befehls herausgezogene Zeichen das Varianten-Zeichen. Dieses wird also aus dem Folgeregister während des normalerweise mit A1 bezeichneten Zyklus herausgenommen. Während dieses Zyklus wird die im Folgeregister des Steuerspeichers 13 enthaltene Information in das Hauptspeicheradressenregister 15 des Hauptspeichers umgeladen und die auf dem derart adressierten Platz des Hauptspeichers 11 gespeicherte Information über die zugehörigen Leseverstärker 21 in das lokale Register 19 des Hauptspeichers überführt, von wo sie in das A -Operanden-Register 31 und schließlich in das Modifizierungsregister 45 gelangt. Nach der Verarbeitung des Varianten-Zeichens wird die Folge der Zyklen, wie F i g. 2 zeigt, durch Wiedereinfügen in den Hauptverkehrsweg fortgesetzt, und zwar auf der Ebene des F2-Zyklus.
Während der Verarbeitung innerhalb des T/2-Zeitzyklus eines die Betriebsart ändernden Befehls wird die Information im Folgeregister des Steuerspeichers
13 vor ihrer Übertragung in das Adressenregister des Hauptspeichers abgetastet, ob sie das charakteristische, dazugehörige Endzeichen aufweist. Diese besondere Interpunktion wird als Wortmarke bezeichnet und kennzeichnet in diesem Falle, daß das gegenwärtig im Folgeregister befindliche Zeichen tatsächlich der Befehlscode des nächsten Befehls ist. Hierdurch wird festgestellt, daß die Extraktionsphase des gegenwärtigen Befehls abgeschlossen ist.
Die Phase, in der ein den Adressiermodus verändernder Befehl ausgeführt wird, schließt praktisch mit der Verarbeitung eines Leerzyklus ab, während dem die im Folgeregister des Steuerspeichers 13 vorhandene Information in das Hauptspeicheradressenregi-
13 14
ster 15 des Hauptspeichers umgeladen, anschließend ten Platz übereinstimmt. Im Rahmen der Erfindung um einen Schritt vergrößert und in das zum Steuer- soll ein Speicherblock als ein Sektor des Hauptspeispeicher gehörige lokale Register zurückgeführt wird. chers 11 mit einer Vielzahl von Speicherplätzen ange-Dabei wird jedoch verhindert, daß die um eine Einheit sehen werden, die durch eine aus zwölf Binärziffern vergrößerte Information wieder im Folgeregister des 5 bestehende, binärcodierte Darstellung adressierbar Steuerspeichers aufgenommen wird. Da das Folgere- sind.
gister des Steuerspeichers 13 nicht um eine Einheit Betrachtet wird nun die Verarbeitung einer Reihe weitergeschaltet wurde und da es zuvor den Befehls- von Befehlen, wobei alle Zeichen der /!-Operanden code des folgenden Befehls enthielt, bleibt die zur in einem ersten Speicherblock und alle Zeichen der Verarbeitung des nachfolgenden Befehls gehörige In- io B-Operanden in einem zweiten Speicherblock geformation im Folgeregister, bis die Ausführungsphase speichert sind. Durch Zuordnung eines bestimmten des gerade in Verarbeitung befindlichen Befehls ab- Speicherblocks zur Information der A -Operandengeschlossen ist. Adresse und eines zweiten Speicherblocks zur Infor-
Während des Leerzyklus wird kein Versuch ge- mation der B-Operanden-Adresse ist es möglich, die macht, Informationen aus dem Hauptspeicher zu ent- 15 Speicherplätze der A- und B-Operanden im Hauptnehmen. Jedoch wird bei einer Anlage, die etweder speicher mit einem 2-Zeichen-Modus anzusteuern, im 2- oder im 3-Zeichen-Adressenmodus arbeitet, obwohl die Verarbeitung mit einem erweiterten Speieine bestimmte Binärziffer des im Modifizierungsre- eher durchgeführt wird. Zur Durchführung dieser gister 45 gespeicherten Varianten-Zeichens abgefühlt Operation wird die Verarbeitung mit einem 3-Zei- und das Ergebnis zur Einstellung der Kippschaltung *o chen-Adressenmodus begonnen, und die Ziffernsteldes Adressenmodusregisters 49 verwendet. Während len in den A- und B-Operandenadressenregistern des der Verarbeitung eines folgenden Programmbefehls Steuerspeichers 13, die den höherrangigen Zeichen zeigt die zum Adressenmodusregister 49 gehörige der A- und B-Operanden zugeordnet sind, werden ff" Kippschaltung an, ob das Programm im 2- oder im mit Informationen aufgeladen, die den entsprechen- y 3-Zeichen-Adressenmodus abgewickelt wird, und 25 den, dem A- und fl-Operanden zugeordneten Speihält diese Anzeige nach der Verarbeitung des Extrak- cherblock kennzeichnen. Hiernach wird die den tionsteils und des Ausführungsteils eines den Adres- Adressenmodus umschaltende Kippschaltung derart senmodus ändernden Befehls bei. Obwohl zuvor die umgesteuert, daß die Anlage im 2-Zeichen-Adrespraktische Anwendung der Erfindung hinsichtlich der senmodus weiterarbeitet. Bei der Durchführung eines Auswahl zwischen einem 2- oder 3-Zeichen-Adres- 30 binären Additionsbefehls bestimmt die zuerst aus dem senmodus geschildert wurde, ist es klar, daß die Aus- Folgeregister des Steuerspeichers 13 herausgezogene dehnung dieses Prinzips auf eine 4-, 5- oder n-Zei- Information den Platz des mittleren Zeichens der chen-Adressiertechnik durch Eingeben einer entspre- ^.-Operanden-Adresse im Hauptspeicher. Diese Inchenden Anzahl von Ziffernstellen in das Varianten- formation gelangt zusammen mit der A -Operanden-Zeichen und durch. Einstellen bzw. Rückstellen 35 Adresse niedriger Ordnung in das Operandenadresentsprechender Kippschaltungen ermöglicht werden senregister des Steuerspeichers 13. Da die drei oberen ; kann. Binärziffern des /4-Operandenadressenregisters, wel- j
Es wurde bereits erwähnt, daß im vorliegenden ehe einen bestimmten Speicherblock kennzeichnen, ! Ausführungsbeispiel Informationen in den Steuer- bereits eingespeichert sind, genügt die jetzt im i Speicher auf Zeichenbasis eingegeben werden, statt 4° A -Operandenadressenregister befindliche Informamit einem Adressenfeld vorgegebener konstanter tion zur vollständigen Definition des Speicherplatzes j Länge. Diese Eigenschaft ermöglicht die Anwendung im Hauptspeicher der den yl-Operanden enthält. j der Technik der unterschiedlichen Anzahl von Kenn- In ähnlicher Weise wird die die Adresse des I zeichen pro Adresse, wenn die Erfindung bei einem B-Operanden kennzeichnende Information aus dem ,v erweiterten Speicher angewandt wird, d. h. bei einem 45 Hauptspeicher entnommen und in das B-Operanden- ψ Speicher, bei dem es nicht möglich ist, einen bestimm- adressenregister des Steuerspeichers 13 überführt. ! ten Speicherplatz allein durch die verfügbaren Binär- Dieses hat bereits in den oberen drei Binärzifferstellen j ziffern der beiden Zeichen der Adresseninformation den zum B-Operanden zugehörigen, bestimmten I vollständig zu kennzeichnen. In dieser Beziehung Speicherblock registriert. Die Durchführung des bi- j hängt die den Binärzifferdarstellungen der A- und 50 nären Additionsbefehls schreitet in Übereinstimmung | B-Adressen zukommende Interpretation davon ab, mit der zuvor erörterten Betriebsart voran, wobei die j ob die Anlage nach dem 2- oder dem 3-Zeichen- im A- und B-Operandenadressenregister des Steuer- I Adressenmodus arbeitet. Bei Anwendung des Adres- Speichers 13 gespeicherte Information zur Aufladung senmodus stellt die auf die höher-und niederrangigen der zugehörigen A- und B-Operanden-Register 31 Zeichen einer Adresse ausgedehnte Interpretation die 55 und 33 dient. Anschließend wird in der Addiervoreiner fortlaufend binärcodierten, zwölf Binärziffern richtung 25 das Ergebnis der binären Addition erzeugt enthaltenden Zahl dar. Demgegenüber enthält das und an denjenigen Platz des Hauptspeichers zurück-Adressenfeld mit drei Zeichen achtzehn Binärziffern, geführt, der zuvor vom Operanden eingenommen von denen die fünfzehn unteren einen Platz im Haupt- wurde. Auf diese Weise können die aufeinanderfolspeicher definieren, während die oberen drei die Art 60 genden Befehle der gerade zu verarbeitenden Reihe der Adressierung kennzeichnen, d. h. ob direkt, indi- unter Benutzung des 2-Zeichen-Adressiermodus verrekt oder indexiert adressiert wird. Die unteren fünf- arbeitet werden, wodurch eine beträchtliche Ersparnis zehn Binärziffern können weiterhin dahingehend aus- an Arbeitszeit erzielt wird, die pro Operation der für gewertet werden, daß deren obere drei einen zwei Speicherzyklen benötigten Zeit entspricht,
bestimmten Speicherblock kennzeichnen, während 65 Das Ausführungsbeispiel besitzt die Fähigkeit, Bedie zwölf unteren einen bestimmten Speicherplatz fehle mit einer unbeschränkten Anzahl von Varikennzeichnen, der mit dem durch die zwölf Binärzif- anten-Zeichen zu verarbeiten und das zuletzt verarfern des 2-Zeichen-Adressiermodus gekennzeichne- beitete Varianten-Zeichen zurückzuhalten. Diese
Fähigkeit gestattet es dem Programmierer, zwei Befehle Rücken an Rücken derart anzuordnen, daß die Information des einen zur Verarbeitung des anderen benutzt werden kann. Insbesondere kann eine binäre Addition, an die sich ein logischer Austauschbefehl anschließt, das folgende Befehlsformat haben: FIA/ BZV1ZV2/ ...VnFIV.
Da das letzte Varianten-Zeichen Vn im Modifizierungsregister 45 verbleibt, kann dieses Zeichen als Variante für den nachfolgenden Austauschbefehl verwendet werden. Nachdem die Varianten-Zeichen des binären Additionsbefehles herausgezogen wurden,
werden sie im Modifizierungsregister gespeichert, sobald der Befehlscode des logischen Austauschbefehles entnommen ist. Vorausgesetzt, daß ein spezielles Interpunktionszeichen, nämlich eine Wortmarke, mit dem auf den Operationscode des logischen Austauschbefehls folgenden Zeichen erscheint, wird das zuvor gespeicherte Varianten-Zeichen als zu diesem Befehl gehörig interpretiert. Es ergibt sich also eine . Einsparung von fünf Speicherzyklus-Subintervallen beim Arbeiten im 2-Zeichen-Modus und eine Ersparnis von sieben Speicherzyklus-Subintervallen bei Betrieb im 3-Zeichen-Modus.
Hierzu 1 Blatt Zeichnungen

Claims (11)

Patentansprüche:
1. Speicher-Adressierschaltung für mit einem gespeicherten Programm versehene Datenverarbeitungsgeräte, die ein Hauptspeicheradressenregister zum Adressieren eines Hauptspeichers und einen an das Hauptspeicheradressenregister angeschlossenen und dieses steuernden Steuerspeicher aufweist, wobei beim Verarbeiten von mit einem Operationscode und einer Adresse veränderlicher Länge versehenen Programmbefehlen eine Reihe von Speicheradressieroperationen durchgeführt werden, dadurch gekennzeichnet, daß ein mit seinem einen Eingang an den Hauptspeicher (11) zur Übernahme eines die Länge der Adressen des nachfolgenden Programmbefehls kennzeichnenden Führungssignals angeschlossenes Adressenmodusregister (49) vorgesehen ist, wobei das Führungssignal des Adressenmodusregisters einstellt, dessen Ausgang zur Übergabe eines die Länge der Adresse des folgenden Programmbefehles bestimmenden Stellsignals mit einem ersten Eingang des Steuerspeichers (13) verbunden ist,
daß das Adressenmodusregister (49) durch ein von dem Hauptspeicher (11) abgegebenes Folgesignal zurückgestellt wird, sobald die Länge des Adressenteiles des folgenden Programmbefehls geändert werden soll, andernfalls aber im alten Zustand verbleibt,
daß die Adresse des nächsten anzuwählenden Speicherplatzes des Hauptspeichers (11) in vorgegebenen Speicherorten in dem Steuerspeicher (13) zusammengestellt und danach zu dem Hauptspeicheradressenregister (15) geleitet wird und daß zumindest ein Teil der zu erzeugenden Adresse aus in dem Hauptspeicher (11) gespeicherten Informationen in Übereinstimmung mit dem Zustand des Adressenmodusregisters (49) abgeleitet wird, wobei dieser Teil der Adresse zu einem zweiten Eingang des Steuerspeichers (13) über ein lokales Register (27) gelangt, welches die Informationen in der entsprechenden Reihenfolge in die vorgesehenen Speicherorte des Steuerspeichers (13) eingibt und
daß ein gegebenenfalls vorhandener weiterer Teil der Adresse in den genannten Speicherorten zurückgehalten wird, wenn zuvor der Zustand des Adressenmodusregisters entsprechend geändert wurde.
2. Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die von dem Hauptspeicher (11) über den zweiten Eingang (über 25, 27) zum Steuerspeicher (13) kommende Information zeichenorganisiert ist,
daß die die gesuchte Adresse für den Speicherplatz im Hauptspeicher (11) bildenden Zeichen in Operandenadressenregistern des Steuerspeichers (13) mit η Speicherplätzen für die Adresse gespeichert werden,
daß bei zwei-Zeichen-Adressenmodus das erste Zeichen der Adresse in den (n-l)-ten Speicherplatz gespeichert wird, während im Dreizeichen-Adressenmodus das erste Zeichen in dem {n— 2)-ten Speicherplatz gespeichert wird und bei einem n-Zeichen-Adressenmodus das erste Zeichen in dem ersten Speicherplatz gespeichert wird.
3. Schaltung nach Anspruch 1 oder 2, dadurch
gekennzeichnet, daß die in ihrer Länge veränderliche Adresse zwei Zeichen und das Adressenmodusregister (49) n — l Zustände aufweist.
4. Schaltung nach einem der Ansprüche 1 bis
3, dadurch gekennzeichnet, daß das erste Zeichen der Adresse eine kodierte Darstellung aufweist und die Schaltung derart beeinflußt, daß sie den gewählten Teil des Hauptspeichers (11) über einen von drei Wegen anwählt, von denen der erste direkt, der zweite indirekt über einen weiteren Satz von η durch den ersten Satz Zeichen adressierten Speicherplätzen und der dritte über ein Indexverfahren führt, indem vorbestimmte Bits mit jedem der ersten η Zeichen verbunden werden, wodurch ein neuer Satz von η Zeichen entsteht.
5. Schaltung nach einem der Ansprüche 1 bis
4, bei der ein erstes Zeichen des Programmbefehls des gewünschten Datenverarbeitungsvorgangs in Form eines Operationscodes die grundsätzliche von der Schaltung durchzuführende Arbeitsweise bestimmt und bei der am Ende des Befehls ein Variantenzeichen (Fl, Vl) zur Änderung des Operationscodes der nachfolgenden Befehle steht, dadurch gekennzeichnet, daß die Schaltung mit einem Modifizierungsregister (45) versehen ist, in welches die Darstellung eines oder mehrerer, einen Befehl ausmachender Zeichen gespeichert wird, wobei der Inhalt des Modifizierungsregisters (45) den Zustand des Adressenmodusregisters (49) bestimmt,
daß der Programmbefehl mit einer Anzahl zur Änderung der augenblicklichen Betriebsart dienender abweichender Zeichen ( Vl, Vl, V3) versehen sein kann, die in dem Modifizierungsregister (45) gespeichert sind und
daß das letzte während der Bildung des Befehls gewonnene Zeichen ( Vl bzw. F3) während der nachfolgenden Betriebsvorgänge wahlweise in dem Modifizierungsregister (45) zurückbehalten wird.
6. Schaltung nach einem der Ansprüche 1 bis
5, dadurch gekennzeichnet, daß zur Zustandsänderung des Adressenmodusregisters (49) für die Vorbereitung der nachfolgenden Adressierart ein besonderer Betriebsablauf vorgesehen ist, durch den ein besonderer Befehl erzeugt wird, der in Form eines Operationscodes ein erstes Zeichen (V3) zur Bestimmung der auszuführenden Operation und in Form eines Varianten-Zeichens ( VV) ein zweites Zeichen aufweist, welches während eines gewöhnlich für das erste Zeichen der Speicheradresse {A\) reservierten Zeitraumes ausgewählt und nachfolgend in dem Modifizierungsregister (45) abgelegt wird, daß hierauf die normalerweise zum Zusammensetzen einer Adresse dienenden Schritte ausgelassen und eine weitere Operationsfolge vorgesehen ist, in der ein weiteres Varianten-Zeichen ( Vl) herausgezogen und als sich auf die nachfolgenden Operationen beziehender Code erkannt wird und
daß der Inhalt des Modifizierungsregisters (45) zum Rückstellen des Adressenmodusregisters (49) dient.
7. Schaltung nach einem der Ansprüche 4 bis
6, gekennzeichnet durch ein Interpunktionsbit, welches bei Zuordnung zu einem besonderen Zeichen ( Vl) während eines den Befehl ausführenden Schrittes der Schaltung anzeigt, daß das be-
sondere Zeichen (V2) den die Betriebsweise während der nachfolgenden Operation bestimmenden Code aufweist.
8. Schaltung nach einem der Ansprüche 1 bis
7, dadurch gekennzeichnet, daß durch das Zurückhalten des letzten abgeänderten Zeichens im Modifizierungsregister (45) die durch den Operationscode während des nachfolgenden Betriebes bestimmte grundsätzliche Betriebsart geändert wird.
9. Schaltung nach einem der Ansprüche 1 bis
8, dadurch gekennzeichnet, daß das Adressenmodusregister (49) mit mindestens einer bistabilen Kippstufe versehen ist.
10. Schaltung nach einem der Ansprüche 1 bis
9, dadurch gekennzeichnet, daß der Steuerspeicher (13) Folgeregister aufweist, die die Adressen der demnächst auszuführenden zur Bildung der Operandenadressen dienenden Befehle enthalten,
daß, um innerhalb des Hauptspeichers (11) jedes zum Befehl gehörende Zeichen zu finden, ein Hilfsregister (17) vorgesehen ist, in dem die ziffernmäßige Darstellung der Adresse des letzten Zeichens des vom Hauptspeicher (11) entnommenen Befehls vergrößert oder verkleinert wird, um hierdurch die Adresse des nächsten zu entnehmenden Zeichens zu bilden.
11. Schaltung nach einem der Ansprüche 1 bis
10, bei der A- und B-Operandenregister zum Speichern der zu verarbeitenden Operanden vor der Verarbeitung sowie A- und ß-Operandenadressenregister zum Zusammenstellen der die Adressen der Speicherplätze im Hauptspeicher (11) bildenden Zeichen vorgesehen sind, in denen die A- und B- Operanden gespeichert werden, dadurch gekennzeichnet, daß die yl-Operanden eines Datenverarbeitungsvorganges in dem einen Teil und die entsprechenden .B-Operanden in dem anderen Teil des Hauptspeichers (11) gespeichert sind,
daß die Adressierung der gewünschten ersten A- und B-Operanden mit η Zeichen geschieht, daß die η — 2 oberen Zeichen der Adresse in den Operandenadressenregistern während der folgenden Operanden-Adressiervorgänge zurückgehalten werden,
daß das Adressenmodusregister (49) nach dem ersten Vorgang zurückgestellt wird, so daß die Schaltung mit einer 2-Zeichen-Adressierung weiterarbeitet und
daß während dieser Arbeitsweise die entsprechenden 2-Zeichen-Adressen jedes Operanden in den zwei unteren Speicherplätzen des betreffenden Operandenadressenregisters an Stelle der dort während der vorangegangenen Adressierung gespeicherten Zeichen gespeichert sind.
DE1499193A 1964-07-15 1965-07-10 Speicher-Adressierschaltung Expired DE1499193C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US382891A US3331056A (en) 1964-07-15 1964-07-15 Variable width addressing arrangement

Publications (3)

Publication Number Publication Date
DE1499193A1 DE1499193A1 (de) 1970-03-12
DE1499193B2 true DE1499193B2 (de) 1973-08-16
DE1499193C3 DE1499193C3 (de) 1974-03-14

Family

ID=23510845

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1499193A Expired DE1499193C3 (de) 1964-07-15 1965-07-10 Speicher-Adressierschaltung

Country Status (11)

Country Link
US (1) US3331056A (de)
AT (1) AT261940B (de)
BE (1) BE666942A (de)
CH (1) CH448574A (de)
DE (1) DE1499193C3 (de)
DK (1) DK129814B (de)
FI (1) FI46100C (de)
GB (1) GB1115765A (de)
NL (1) NL156840B (de)
NO (1) NO119855B (de)
SE (1) SE341282B (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3422405A (en) * 1966-03-25 1969-01-14 Burroughs Corp Digital computer having an indirect field length operation
US3425036A (en) * 1966-03-25 1969-01-28 Burroughs Corp Digital computer having a generalized literal operation
US3462744A (en) * 1966-09-28 1969-08-19 Ibm Execution unit with a common operand and resulting bussing system
US3448436A (en) * 1966-11-25 1969-06-03 Bell Telephone Labor Inc Associative match circuit for retrieving variable-length information listings
US3521237A (en) * 1967-05-11 1970-07-21 Bell Telephone Labor Inc High-speed data-directed information processing system
US3530439A (en) * 1968-07-22 1970-09-22 Rca Corp Computer memory address generator
NL6815506A (de) * 1968-10-31 1970-05-04
US3581287A (en) * 1969-02-10 1971-05-25 Sanders Associates Inc Apparatus for altering computer memory by bit, byte or word
US3593312A (en) * 1969-11-14 1971-07-13 Burroughs Corp Data processor having operand tags to identify as single or double precision
BE758815A (fr) * 1969-11-28 1971-04-16 Burroughs Corp Systeme de traitement d'information presentant des moyens pour la preparation dynamique d'adresses de memoire
BE758811A (fr) * 1969-11-28 1971-04-16 Burroughs Corp Systeme de traitement d'information ayant un emmagasinage sans structure pour traitements emboites
FR10582E (fr) * 1970-06-29 1909-07-30 Paul Alexis Victor Lerolle Jeu de serrures avec passe-partout
US3701108A (en) * 1970-10-30 1972-10-24 Ibm Code processor for variable-length dependent codes
US3701111A (en) * 1971-02-08 1972-10-24 Ibm Method of and apparatus for decoding variable-length codes having length-indicating prefixes
US3735355A (en) * 1971-05-12 1973-05-22 Burroughs Corp Digital processor having variable length addressing
US3739352A (en) * 1971-06-28 1973-06-12 Burroughs Corp Variable word width processor control
US3806877A (en) * 1971-07-28 1974-04-23 Allen Bradley Co Programmable controller expansion circuit
US3827027A (en) * 1971-09-22 1974-07-30 Texas Instruments Inc Method and apparatus for producing variable formats from a digital memory
US3828316A (en) * 1973-05-30 1974-08-06 Sperry Rand Corp Character addressing in a word oriented computer system
US4109310A (en) * 1973-08-06 1978-08-22 Xerox Corporation Variable field length addressing system having data byte interchange
US3883847A (en) * 1974-03-28 1975-05-13 Bell Telephone Labor Inc Uniform decoding of minimum-redundancy codes
US4037213A (en) * 1976-04-23 1977-07-19 International Business Machines Corporation Data processor using a four section instruction format for control of multi-operation functions by a single instruction
DE2846495C2 (de) * 1977-10-25 1993-10-21 Digital Equipment Corp Zentraleinheit
US4206503A (en) * 1978-01-10 1980-06-03 Honeywell Information Systems Inc. Multiple length address formation in a microprogrammed data processing system
US4291370A (en) * 1978-08-23 1981-09-22 Westinghouse Electric Corp. Core memory interface for coupling a processor to a memory having a differing word length
US4240142A (en) * 1978-12-29 1980-12-16 Bell Telephone Laboratories, Incorporated Data processing apparatus providing autoincrementing of memory pointer registers
US4293907A (en) * 1978-12-29 1981-10-06 Bell Telephone Laboratories, Incorporated Data processing apparatus having op-code extension register
US4250545A (en) * 1978-12-29 1981-02-10 Bell Telephone Laboratories, Incorporated Data processing apparatus providing autoloading of memory pointer registers
USRE32493E (en) * 1980-05-19 1987-09-01 Hitachi, Ltd. Data processing unit with pipelined operands
CA1174370A (en) * 1980-05-19 1984-09-11 Hidekazu Matsumoto Data processing unit with pipelined operands
US4403284A (en) * 1980-11-24 1983-09-06 Texas Instruments Incorporated Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4814978A (en) * 1986-07-15 1989-03-21 Dataflow Computer Corporation Dataflow processing element, multiprocessor, and processes
US5127104A (en) * 1986-12-29 1992-06-30 Dataflow Computer Corporation Method and product involving translation and execution of programs by automatic partitioning and data structure allocation
US5072372A (en) * 1989-03-03 1991-12-10 Sanders Associates Indirect literal expansion for computer instruction sets
US5168571A (en) * 1990-01-24 1992-12-01 International Business Machines Corporation System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data
JP3428741B2 (ja) * 1994-02-14 2003-07-22 松下電器産業株式会社 演算装置とアドレス発生装置及びプログラム制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1163267A (fr) * 1956-12-12 1958-09-24 Electronique & Automatisme Sa Perfectionnements apportés aux calculatrices numériques
US3200380A (en) * 1961-02-16 1965-08-10 Burroughs Corp Data processing system
US3275989A (en) * 1961-10-02 1966-09-27 Burroughs Corp Control for digital computers
US3223982A (en) * 1962-04-06 1965-12-14 Olivetti & Co Spa Electronic computer with abbreviated addressing of data

Also Published As

Publication number Publication date
NL6509102A (de) 1966-01-17
FI46100B (de) 1972-08-31
NL156840B (nl) 1978-05-16
SE341282B (de) 1971-12-20
NO119855B (de) 1970-07-13
DK129814B (da) 1974-11-18
DE1499193A1 (de) 1970-03-12
AT261940B (de) 1968-05-27
GB1115765A (en) 1968-05-29
CH448574A (fr) 1967-12-15
BE666942A (de) 1965-11-03
DK129814C (de) 1975-05-12
DE1499193C3 (de) 1974-03-14
US3331056A (en) 1967-07-11
FI46100C (fi) 1972-12-11

Similar Documents

Publication Publication Date Title
DE1499193C3 (de) Speicher-Adressierschaltung
DE2716369C2 (de)
DE2515696C2 (de) Datenverarbeitungssystem
DE2230102A1 (de) Rechenwerk fuer variable wortlaengen
DE2055784A1 (de) Datenverarbeitungssystem
DE2318069A1 (de) Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix
DE1285219B (de) Steuerwerk zur Ausfuehrung von Unterprogrammen
DE1115488B (de) Datenverarbeitungssystem
DE2433436A1 (de) Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer
DE1171650B (de) Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung
DE2725614C2 (de)
DE2403039C2 (de) Einrichtung zur Befehlsausführung in einer adressenerweiterten elektronischen Datenverarbeitungsanlage
DE2245284A1 (de) Datenverarbeitungsanlage
DE1499224B2 (de) Datenverarbeitungsanlage mit kellerspeichereinrichtungen
DE1549434A1 (de) Datenverarbeitungsanlage
DE2000608C3 (de) Schaltungsanordnung fuer eine Nachrichtenverarbeitungs-,insbesondere fuer eine Nachrichtenvermittlungsanlage
DE1069910B (de) Kommandowerk mit Indexregister
DE3341339C2 (de) Befehlsfolgegenerator
DE10107102B4 (de) Verfahren und Anordnung zur Instruktionswortgenerierung bei der Ansteuerung von Funktionseinheiten in einem Prozessor
DE1549446A1 (de) Digitalrechner
DE2735874C2 (de)
DE2419836A1 (de) Verfahren zur durchfuehrung von unterprogramm-sprungbefehlen in datenverarbeitungsanlagen
DE2451984C2 (de) Datenverarbeitungsanlage
DE1774866C3 (de) Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenen, gesuchten Information
DE2502005C2 (de) Schaltungsanordnung zur Zuordnung von Adressen zu Operationen zwecks Ausführung von Befehlen in einer Datenverarbeitungseinrichtung

Legal Events

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