DE1900141C3 - HilfsSteuerwerk für eine Datenverarbeitungsanlage - Google Patents

HilfsSteuerwerk für eine Datenverarbeitungsanlage

Info

Publication number
DE1900141C3
DE1900141C3 DE1900141A DE1900141A DE1900141C3 DE 1900141 C3 DE1900141 C3 DE 1900141C3 DE 1900141 A DE1900141 A DE 1900141A DE 1900141 A DE1900141 A DE 1900141A DE 1900141 C3 DE1900141 C3 DE 1900141C3
Authority
DE
Germany
Prior art keywords
memory
register
cycle
address
registers
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.)
Expired
Application number
DE1900141A
Other languages
English (en)
Other versions
DE1900141B2 (de
DE1900141A1 (de
Inventor
George S. Sudbury Hoff
Ming-Tzer Brighton Miu
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 DE1900141A1 publication Critical patent/DE1900141A1/de
Publication of DE1900141B2 publication Critical patent/DE1900141B2/de
Application granted granted Critical
Publication of DE1900141C3 publication Critical patent/DE1900141C3/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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/265Microinstruction selection based on results of processing by address selection on input of storage
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13083Jumps

Description

Die Erfindung bezieht sirh auf ein HilfsSteuerwerk für eine Datenverarbeitungsanlage mit einem Hauptverarbeitungsteü, enthaltend einen Hauptspeicher und Steuereinrichtungen zur Verarbeitung von Befehlen und Informationen, die in dem Hauptspeicher gespeichert sind, wobei in einem einzigen Speicherzyklus des Hauptspeichers eine Vielfachverzweigung vornehmbar ist.
Bei herkömmlichen Programmierungsmethoden wird die Ausführung einer Vielfach-Verzweigungsoperation dadurch ermöglicht, daß herkömmliche Verzweigungsbefehle hintereinandergereiht werden. Diese Methode ist langsam, und zwar insofern, als ein geprüfter Zweigbefehl pro Element der hintereinander angeordneten Elemente 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 einzigen Befehlszyklus die Vielfachadressen vorliegen und die ferüfanforderungen ausgeführt werden. Dadurch müssen sämtliche Priifanordnuneen bezeichnet nnrl
3 I 4
nahezu gleichzeitig erfüllt werden, was zuweilen als richtung vorgesehen ist, welche solche Schaltverbin-
umständlich anzusehen ist. düngen zwischen den genannten Registern und dem
Es ist bereits eine programmgesteuerte eleklron- Speicher herzustellen gestattet, daß die Adressen von siehe Rechenmaschine bekannt (deutsche Auslege- Speicherplätzen des Speichers in den unabhängigen schrift 1 180 172), bei der die Organisation einer 5 Registern in aufeinanderfolgenden Arbeitszyklen des Steuereinheit so getroffen ist, daß eine gleichzeitige Speichers abgespeichert werden, daß diese Adressen Verarbeitung einer Anzahl von Operationen Lrmög- jeweils Teil der Information sind., die aus dem Regilicht ist, ohne daß dabei die Rechengeschwindigkeit ster herausgeführt und in dem zweiten Register abgeherabgesptzt werden muß. Um dies zu erreichen, ist speichert wird, daß ferner eine Vielzahl von bistabibei der betreffenden Rechenmaschine eine Speicher- io len Einrichtungen vorgesehen ist, deren Anzahl der anordnung vorgesehen, die in eine Anzahl von Ein- der unabhängigen Register entspricht, und die jeweils heiten unterteilt ist, welche individuell mit unten- einem dieser unabhängigen Register zugeordnet sind, schiedlichen Bereichen des Rechnersystems in Ver- daß eine erste Logikschaltung vorgesehen ist, die auf bindung gelangen. Die Operationen der verschiede- Steuersignale und auf Ergebnisse von Prüfoperationen Bereiche des Rechnersystems werden dabei mul- 15 nen anspricht, welche unter in der Datenverarbeitiplexmäßig ausgeführt, und die Einheiten des Spei- tungsanlage festgelegten Bedingungen ausgeführt chers werden nacheinander durch den Steuerteil des werden, und zwar zum Setzen einer bestimmten biSystems adressiert. Der betreffende Steuerteil des Sy- stabilen Einrichtung der bistabilen Einrichtungen, stems leitet dabei eine Adresse durch die Adressenre- daß eine zweite Logikschaltung vorgesehen ist, die gister der jeweiligen Speichereinheit während einer 20 auf weitere Steuersignale und auf das Ausgangssignal Wortzykluszeit hindurch. Eine solche Operation hat einer der bistabilen Einrichtungen in dem Fall anjedoch nichts mit einer Vielfachverzweigungsopera- spricht, daß die betreffende bistabile Einrichtung getion zu tun. wie sie bei dem eingangs genannten setzt ist, und daß die zweite Logikschaltung die Uber-Hilfssteuerwcrk vornehmbar sein soll. tragung der in dem der jeweiligen bistabilen Einrich-
Es ist ferner eine Ziffernrechenmaschine mit 25 tung zugehörigen unabhängigen Register enthaltenen einem Speicher für Instruktionen und Operanden be- Information in das erste Register bewirkt, in welkanr.t (deutsche Auslegeschrift 1 193 279), wobei chem diese Information vor Bereitstellung irgendeieine spezielle Form eines Indexsystems benutzt wird, ner weiteren Adresse für die Bezeichnung der nächstweiches eine Vielzahl von Indexregistern enthalt, de- folgenden Adresse des Speichers benutzt wird
ren Inhalt selektiv und automatisch auf irgendeinen 30 Die Erfindung bringt gegenüber den oben betrach-Befehl hin abgegeben werden kann, wei es durch das terne als auch externe Verzweigungsoperationen, betreffende System gefordert wird. Dabei ist es zwar den Vorteil mit sich, daß eine größere Flexibilität für möglich, einen bestimmten Operationscode in einem Vielfachverzweigungsoperationen erzielt ist, da näm-Befehl dazu heranzuziehen, Steuerungsübergaben zu lieh die Speicherung der jeweiligen Adresseninformabezeichnen, wobei der Speicherplatz des jeweils 35 tion unabhängig von der Operation erfolgt, die die nächsten Programmbefehls durch einen »M«-Ziffern- jeweilige Adresse benötigt.
teil des jeweiligen Befehls in dem Fall festgelegt Die zuvor erwähnte Flexibilität betrifft sowohl inwird, daß entsprechend der Handhabung in dem Re- terne als auch externe Verzweigungsoperationen, chenvverk ein »N«-Ziffernteil eines durch den Befehl Eine besondere Anwendung der Vielfachverzweibezeichneten adressierbaren Registers hinsichtlich 40 gungsoperation liegt in der Anwendung bei einer seines Inhalts nicht auf Null vermindert wird. Ob- Folgesteuerung durch gespeicherte Programme, Derwohl die somit möglichen Ope-ationen als program- artige gespeicherte Programme können die Form mierte Verzweigungsoperationen eine gewisse Ver- eines normalen gespeicherten Programms besitzen, zvveigung ermöglichen ist die Bereitstellung der je- wie es in herkömmlichen Datenverarbeitungsanlagen weiligen Ad'essen jedoch zeitlich abhängig von der 45 benutzt wird. Im Unterschied dazu kann das ProOperation, in der die jeweilige Adresse benötigt wird. gramm, wie dies bei der bevorzugten Ausführungs-
Der Erfindung liegt die Aufgabe zugrunde, einen form der Erfindung der Fall ist, Bestandteil eines Le-Weg zu zeigen, wie bei einem HilfsSteuerwerk der sespeichers sein, der zur Erzeugung von Steuersignaeingangs genannten Art vorzugehen ist, damit eine len in einer zugehörigen Datcnverarbeitungsvorrich-Vielzahl von Verzeigungsoperationen ausgeführt 50 tung benutzt wird. Dabei kann eine geplante Anwenwcrden kann, ohne daß eine zeitliche Abhängigkeit dung auf einen reinen internen Anwendungsbereich der Auswahl der jeweiligen Adressen von den jeweils einen Anwendungsfall darstellen, bei dem der Proauftretenden Verzweigungsoperationen vorhanden grammierer eine interne Programmschleife zu realiist. sieren beabsichtigt, in der eine begrenzte Anzahl von
Gelöst wird die vorstehend aufgezeigte Aufgabe 55 Lesespeicherstellen zyklisch nacheinander angesteubei einem HilfsSteuerwerk der eingangs genannten ert werden, bis in einem zugehörigen Register, das in Alt erfindungsgemäß- dadurch, daß ein Speicher zur jedem Zyklus um 1 weitergeschaltet wird, eine der Speicherung von Mikrobefehlen und Adressen vorge- gewünschten Anzahl an Programmschleifen entspresehen ist, daß ein erstes Register zur Speicherung chende Information gespeichert ist. Zu einem derarvon Adressen vorgesehen ist, die zur Bezeichnung von 60 tigen Zeitpunkt ist die Prüfanordnung eines einem Speicherplätzen des Speichers dienen, daß ein zwei- Zweigadressenregister zugeordneten Flipflops erfüllt, tes Register für eine kurzzeitige Speicherung des In- so daß die nächstfolgende Lesespeicherstelle berückhalts der jeweils bezeichneten Speicherplätze des sichtigt wird, die der in dem zugehörigen Zweig-Speichers vorgesehen ist, daß eine Viezahl von unab- adressenregister gespeicherten Adresse entspricht,
hängigen Registern vorgesehen ist, die die Adressen 65 Das Beispiel einer externen Verzweigungsoperavon Speicherplätzen des Speichers über eine Vielzahl tion stellt einen Fall dar, bei dem verschiedene aufvon aufeinanderfolgenden Arbeitszyklen des Spei- einanderfolgende Auslesespeicherstellen zur Erzeuchers zu speichern imstande sind, daß eine Steuerein- gung von Steuersignalen führende Zyklen festlegen,
die einer Vielzahl von Programmbefehlen gemeinsam D-Operandcnspeicherregister, Folgeregister, periphe-
sind, die jedoch nur einen kleinen Anteil der Ge- ren Übertragungsoperationen zugehörige Darstel-
samtzahl von Zyklen ausmachen, die zur vollständi- lungs- und Auslöse-Befehlsrcgister Und für die kurz-
gen Ausführung irgendeiner dieser Operationen er- zeitige Informationsspeicherung dienende spezielle
forderlich sind. 5 Arbeitsspeicherregister.
In derartigen Fällen werden die gemeinsamen Zy- Eine in dem Steuerspeicher 22 erzeugte Signalfolge klen auf die verschiedenen Programmbefehle aufge- einer Hauptspeicheradresse wird dem Hauptspeicherteilt: eine externe Verzweigungsoperation wird dabei adressenregister 24 über das Steuerspeicherregister eingeführt, um Steuersignale für nachfolgende Ope- 30 und einen Kurzzeitspeicher bzw. ein S-Register 32 rationszyklen der betreffenden Befehle an verschie- io zugeführt. Diese Adressen werden normalerweise dene andere Teile des Auslesespeichers zurückzulei- auch einem zweiten Kurzzeitspeicherregister bzw. ten. M-Register 34 zugeführt, das mit einer normalen An Hand von Zeichnungen wird nachstehend ein Vergrößerungs-Verkleinerungs-Logikschaltung 36 Ausführungsbeispiel der Erfindung näher erläutert. verbunden ist. Die jeweils erhöhten oder «erringerten Fig. 1 zeigt schematisch ein das A-isführungsbei- 15 Adressen werden danach wieder in dem Steuerspeispid der Ernndung umfassendes Rechnersystem; eher 22 für nachfolgende Adressierungszwecke ge-
Fig. 2 A bis 2F veranschaulichen im einzelnen speichert.
Verknüpfungsschaltungen zur Ausführung des Aus- Der Rechenteil 12 umfaßt grundsätzlich eine führungsbeispiels der Erfindung; Gruppe von vier Operandenspeicherregistern 38, 40, F i g. 3 zeigt ein Flußdiagrainm eines zur Erläute- 20 42 und 44, die mit einem Rechenwerk 46 zusammenrung der Arbeitsweise des Ausführungsbeispiels der arbeiten. Das Rechenwerk 46 besteht seinerseits Erfindung benutzten Programmbefehls. grundsätzlich aus einem Addierer, der sowohl binäre Ire;, folgenden sei das in Fig. 1 dargestellte Block- als auch dezimale Rechenoperationen auszuführen schaltbild betrachtet, das den generellen Aufbau erlaubt und der in der Weise realisiert sein kann, wie einer elektronischen Datenverarbeitunesanlage zeigt, 25 es in dem Buch »Arithmetic Operations in Digital in welcher die Merkmale der vorliegenden Erfindung Computers«, von R. K. Richards, D. Van Norealisiert sind. Wie aus Fig. 1 hervorgeht, kann der strand Company, 1955, angegeben ist. Der Rechenzcntralc Verarbeitungsteil der Anlage im vvesentli- teil wird mit seiner normalen Kapazität dazu benutzt, clien als in drei Teile aufgeteilt betrachtet werden: entweder numerische oder logische Operationen auf ein Speicherteil 10, ein Rechenteil 12 und ein Hilfs- 30 Operanden hin auszuführen, die in der zugehörigen Steuerwerk 14. Eine Haupttakteinrichtung (nicht ge- Datenverarbeitungsanlage verarbeitet werden, zeigt) wird dazu benutzt, Taktsignale für die Syn- Ein weiteres Element, das unter den in F i g. 1 aufchronisierung sämtlicher Einrichtungen des Systems geführten Elementen nicht genannt worden ist, deszu erzeugen. Dk von der Haupüakteinriditimg bzw. sen Funktion jedoch für eine vollständige Datemervon dem Haupit ^generator abgegebenen Signale 35 arbeitungsanlage erforderlich ist, ist eine Eingabeköiinen, obwohl dies nicht dargesicilt ist, so angese- Ausgabe-Verkehrssteuereinrichtung. Wie der Name hen werden, als seien sie an sämtliche entsprechen- dieser Einrichtung sagt, steuert diese Einrichtung den den Einrichtungen der Anlage verteilt, die solche Si- Datenfluß zwischen der zentralen Datenverarbeignale zur Synchronisierung ihrer Operationen benöti- tungsanlage und den Eingabe-Ausgabe-Einrichtungen. 4° gen, und zwar dadurch, daß die zentrale Datenverar-Im folgenden sollen die den Speicherteil 10 gemäß beitungsanlage während entsprechender Zeitspannen Fig. 1 bildenden Elemente r.riher betrachtet werden. für die Eingabe-Ausgabe-Operationen zur Verfugung Zu diesen Elementen gehört ein Hauptspeicher 20, steht und die peripheren Steuereinrichtungen identifider ein mehrere Ebenen umfassender Koinzidenz- ziert, die die jeweilige Zeitspanne für die Datenüberstrom-Kernspeicher sein kann, wie er in der USA.- 45 tragung benutzen. Ein derartiges System ist in der Patentschrift 3 201 762 angegeben ist. Der Zugriff zu USA.-Patentschrift 3 323 110 beschrieben, dem Hauptspeicher 20 von dem Steuerspeicher 22 Im folgenden sei das HilfsSteuerwerk 14 näher beher kann über ein mehrstufiges Hauptspeicheradres- trachtet. Die Hauptfunktion des HilfsSteuerwerks 14 senregister 24 erfolgen. Dieses Register speichert die besteht darin, die Auswahl, Auswertung und Ausfüh-Adresse eines gegenwärtig bezeichneten Speicher- 50 rung von das gespeicherte Programm bildenden Beplatzes in dem Hauptspeicher. An dem Ausgang des fehlen zu unterstützen. In der Ausführung dieser Hauptspeichers 20 ist ein Hauptspeicherregister 26 Maßnahmen koordiniert das Hilfssteuenverk die verangeschlossen, das den Inhalt einer bezeichneten schiedenen Operationen der Datenaufnahme von den Hauptspeicherstelle aufzunehmen und kurzzeitig zwi- Eingabeeinrichtungen, der Datenübertragung von der schenzuspeichern vermag. 55 zentralen Datenverarbeitungsanlage und der Übertra-In entsprechender Weise wie beim Hauptspeicher gung verarbeiteter Daten zu den Ausgabeeinrichtun-20 sind auch dem Steuerspeicher 22 ein Steuer- gen hin. Demgemäß vermag das Hilfssteuenverk Speicheradressenregister 28 und ein Steuerspeicherre- Steuersignale zu erzeugen und an die Datenverarbeigister 30 zugehörig. Der Steuerspeicher 22 kann eine tungsanlage bildende Gatter und Register abzugeben. Vielzahl von mehrstelligen Speicherregistern enthal- 60 Gleichzeitig muß das Hilfssteuenverk flexibel sein, ten, die in geeigneter Weise geschaltet sind. Jedes um auf in der Datenverarbeitungsanlage vorhandene dieser Speicherregister vermag eine Information zu Zustände reagieren zn können, speichern, die die Verarbeitung der verschiedenen Das Schlüsselelement in dem Hilfssteuenverk 14 Programmbefehle betrifft. Diese Speicherregister ent- ist der Speicher 48, der bei einer bevorzugten Aushalten die Befehlsadressen und die währ1" ud eines 65 führungsform der Erfindung ein adressierbarer, elek-Programmdurchlaufs zu verarbeitenden iJaten. Bei trisch steuerbarer Lesespeicher mit 4096 Speichereiner bevorzugten Ausführungsform der Erfindung stellen ist, deren jede eine Information von 120 Bits umfaßt das Steuerspeicherregister A-, B-, C- und zu speichern vermag. Jede Speicherstelle des Lese-
Speichers 48 ist ausschließlich durch ein ein Speicherädressenregister 50 herkömmlicher Art darstellendes erstes Register ansteuerbar. Die das Ausgangssignal des Speichers 48 bildenden 120 Bits werden in dem ein zweites Register darstellenden Speicherregister 52 kurzzeitig gespeichert. Das Speicherregister 52 ist ebenfalls von herkömmlicher Bauart; es kann auch so aufgebaut sein, daß es ferner drei unterschiedliche Bit-Gruppen zu speichern vermag, die 12, 22 bzw. 86 Bits umfassen. Die 12-Bh>Gruppe dient als Steuergruppe, die in einem Fall zur Aufnahme von Eingabedaten für ein Kurzzeilspeiehei register benulzt wird, das hier als QG-Register 54 bezeichnet ist. Die in dem OG-Register 54 enthaltenen Bits werden dazu benutzt, eine selektive Auswertung entsprechend dem Hauptanteil des Inhalts des Speicherregisters 52 zu bewirken, nämlich die Auswertung der 86-Bil-Gruppe. Dies erfolgt mittels eines Unterbefehls-Generators 56. Jede Änderung der in dem QG-Register 54 gespeicherten 12-Bit-Gruppe bewirkt eine andere Auswertung der dem Untcrbefehls-Gcneratnr 56 zugeführtcn 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 ckr Funktion der Auswertung des Inhalts des Unterbefehls-Generators 56 dient die 12-Bit-Gruppe des Speicherregisters 52 ferner dazu, eine Adresseninformation selektiv an eine Vielzahl von Adressenregistern (A bist) 60 bis 68 während aufeinanderfolgender Zyklen des HilfsSteuerwerks 14 abzugeben. Die 22-Bil-Gruppc in dem Speieherregistcr 52 dient hauptsächlich dazu, Lcscspeicher-Vcrzweigungssteueriunktionen 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 üperationselemente der Datenverarbeitungsanlage zu deren Steuerung verteilt werden. Die 86 Bits können ferner in zwei Gruppen unterteilt sein, von denen die eine 30 Bits enthält, die zur Erzeugung von etwa 40 oder mehr sich gegenseitig ausschließenden Operationen selektiv kombiniert werden. Die übrigen 56 Bits werden entsprechend dem Inhalt des Speicherregisiers 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 Adressenregistern 60 bis 68 enthaltenen vorgespeicherien Adressen.
In dem Übertragungsweg zwischen den Adressenregistern 60 bis 68 und dem Speicheradressenregister 50 befindet sich eine Adressenerkennungs-Logikschaltung 72, die zum Teil durch Signale aus der 22-Bit-Gruppe des Speicherregisters 52 sowie durch einen Teil der die zu überprüfenden Systemanforderungen darstellenden Anforderungssignale angesteuert wird. Die zuletzt genannten Signale gelangen zu der Logikschaltung 72 hin, nachdem sie zuerst in einer Prüflogikschaltung 78, in durch Flipflops gebildeten bistabilen Einrichtungen 76 und in der Prioritätslogikschaltung 74 verarbeitet worden sind. Eine zusätzliche Reihe von Eingangssignalen für die Prüflogikschaltung 78 sowie für den Unterbefehls-Generalor 56 wird von einem A-Stammregister 80 und einem A-Zeigerregister 82 sov/ie von einem-B-Stammregister 84 und einem 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.
Die Arbeitsweise des in F i g. 1 gezeigten Hilfssteuerwerks 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ß das Hilfsstcuuivcrk für eine Verzweigungsoperation entsprechend vorbereitet ist. Diese Vorbereitung wird bei der normalen Überprüfung der Funktionen des Hilfssieuervverks vorgenommen. Dabei kann eine in dem Speicheradressen register 50 gespeicherte Adresse irgendeine Speicherstelle der etwa 2000 Speicherstellen des Speichers 48 bezeichnen und bewirken, daß der Inhalt der betreffenden Speichersteile in das Speicherregister 52 übertragen wird. Es sei daran erinnert, daß der Speicher 48 bei jedem auszuführenden Programmbel'ehl mehrere Male nacheinander angesteuert wird. Während des ersten Speicherzyklus werden die Bits in der in dem 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ß er eine bestimmte Auswertung der 56 Bits umfassenden Bit-Gruppe vornimmt, die aus dem Speicherregister 52 ausgegeben worden sind. Nach erfolgter Decodierung in dem Unterbot ehls-Generator werden diese Bits als Steuersignale den verschiedenen der Datenverarbeitungsanlage zugehörigen Verknüpfungsgattern und Registern zugeführt.
Von dem in dem Speicheradressenregister 50 gespeicherten Informationsinhalt kann ein vergrößerter oder verkleinerter Informationsteil über die Verknüpfungsschaltung 70 nach Ausführung des ersten Operationszyklus des Speichers 48 wieder eingespeichert werden. In diesem Zyklus kann eine Bitfolge entweder in der 86-Bit-Gruppe oder in der 22-Bit-Gruppe auftreten, und zwar eine solche Bitfolge, die anzeigt, daß die niedrigerwertigen 12 Bits des Speicherregisters 52 eine in einem der Adressenregister 60 bis 68 zu speichernde Adresse darstellen.
Daraufhin werden entsprechende Steuersignale erzeugt, mit deren Hilfe der Informationsinhalt der niedrigerwertigen 12 Bits in das bezeichnete Adressenregister der Adressenregister 60 bis 68 eingeführt wird. Gleichzeitig wird der übrige Teil des Informa-
tionsinhaltes des Speicherregisters 52 in dem Unterbefehls-Generator 56 decodiert. Dadurch werden der Datenverarbeitungsanlage zusätzliche Steuersignale zugeführt, und zwar in einer Weise, die der in Verbindung mit dem Zyklus 1 erläuterten Weise entspricht:
Während nachfolgender Zyklen wird aus dem Speicher 48 eine zusätzliche Information zur Kurzzeitspeicherung in dem Speicherregister 52 ausgespeichert. Dieser Vorgang braucht nicht notwendigerweise während des jeweils nachfolgenden Zyklus zu
erfolgen. Aus dem Speicherregister 52 wird die betreffende Information dann zu einem bezeichneten Adressen register der Adressenregister 60 bis 68 übertragen.
409 621/293
Während der folgenden Zyklen, während der die Operation des Hilfssleuerwerks entsprechend dem betrachteten Programmbefehl erfolgt, werden aus der Bitfolge der in dem Speicherregister 52 gespeicherten 22-Bit-Gruppe ferner Signale erzeugt, die der Prüflogikschaltung 78 entsprechend den Prüfanforderungssignalen wirksam steuern, die verschiedentlich in der Datenverarbeitungsanlage auftreten. Diese Prüfanforderungssi enale stellen ferner Eingangssignale für die Prüflot'iksclKiltung 78 in einer von der betrachteten Weise unabhängigen Weise dar.
Der Prüflogikschaltung 78 ist unmittelbar eine Viel/ahl bistabiler Einrichtungen 76, nachstehend nur als Flipflops bezeichnet, zugeordnet, deren jedes die Ergebnisse einer bestimmten geprüften Anforderung 7u speichern vermag. Ein gesondertes Flipflop der Flipflops 76 ist jedem der Adressenregisler 60 bis 68 zugeordnet. Das Setzen der Flipflops 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 Flipflop zugehörigen Adressenregisters der Adressenregister 60 bis 68 über die Adressenerkennungs-Logikschaltung 72 zu dem Speicheradressenregister 52 hin übertragen wird. Dies erfolgt auf die Aufnahme eines von dem Speicherregister 52 abgegebenen Signals »Verzweigung auf gespeicherte Prüfung hin« in der I.ogikschaitung 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 Flipflop, dessen entsprechendes Adressenregister vorgeladen ist, zugehörigen Prüfanforderungen auf die Erzeugung eines Prüfsignals in dem Speicherregister 52 hin nicht erfüllt sein, so wird die den betreffenden Speicherzyklus betreffende Adresse der Verknüpfungsschaltung 70 zugeführt.
Nachstehend seien die Fig. 2A bis 2F näher betrachtet, in welchen Verknüpfungsanordnungen näher gezeigt sind, durch die jene Teile des Hilfssteuerwerks 14 realisiert sind, die zu der Erfindung gehören. Dabei zeigt Fig.2A eine Verknüpfungsschaltung, de> die Bitpositionen 106, 107 und 108 des Speicherregisters 52 gemäß Fig. 1 darstellende Signale zugeführt werden. Diese Signale sind mit RK 10620, RK 10720 und RK 10820 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 Speicherregisters 52 diese Bedingungen erfüllt, gibt die in F i g. 2 A gezeigte, ein UND-Gatter A 1 bildende Verknüpfungsschaltung ein Ausgangssignal RLFAUU ab. Dieses Ausgangssignal bildet ein Ansteuersignal für die nächsthöhere Reihe von Verknüpfungsschaltungen, d. h. für Verknüpfungsschaltungen, wie sie in Fig. 2B gezeigt sind.
Gemäß Fig.2B sind Teile der Prüflogikschaltung 78 mit einem Teil der Flipflops 76 gemäß F i g. 1 zusammengefaßt. Dabei wird ein Signal 5FßP010 einem UND-Gatter A 2 zugeführt. Dieses Signal kennzeichnet das Vorliegen einer in der zugehörigen Datenverarbeitungsanlage erzeugten Prüfanforderung. Das betreffende Signal wird in dem UND-Gatter A 2 mit einem Signal RLFGlZX kombiniert, das ein Signal aus einer Gruppe von Signalen darstellt, ίο die einem bestimmtem Taktzustand zugehörig sind. Dem anderen Steuereingang des UND-Gatters A 2 wird das am Ausgang des UND-Gatters A 1 gemäß F i g. 2 A auftretende Signal zugeführt.
Das Ausgangssignal des UND-Gatters A 2 wird an einen Verstärker GIiA 1 abgegeben. An dem Eingang des betreffenden Verstärkers ist ferner der Ausgang eines UND-Gatters A 3 angeschlossen. Dieses UND-Gatter wird durch andere Prüfanforderungssignale und Taktsignale gesteuert. An dem Eingang des Verstärkers GAB 1 können ferner weitere, den UND-Gattern A 2 und A 3 entsprechende UND-Gatter angeschlossen sein, um den Prüfergebnissen von anderen, in der zugehörigen Datenverarbeitungsanlage vorhandenen Prüfanforderungen entsprechende Signale über den Verstärker zu übertragen. Das Ausgangssignal des Verstärkers GBA 1 wird seinerseits als Signal RFLAXlO dem einen Eingang eines UND-Gatters A 4 zugeführt. Dem anderen Eingang des UND-Gatters A 4 wird ein Taktsignal RBITGH zugeführt.
Das UND-Gatter A 4 bildet die Eingangsstufe eines Flipflops A, das als dem Adressenregister 60 zugehöriges Flipflop betrachtet werden kann. Dabei wird das Ausgangssignal des UND-Gatters A 4 in ein Flipflop .SFFl eingegeben, um ein Signal RLFAA 10 zu erzeugen, wenn das betreffende Flipflop gesetzt ist, und ein SignalRLF/1/1 00 zu erzeugen, wenn das betreffende Flipflop zurückgestellt ist. Es dürfte genügen, darauf hinzuweisen, daß die übrigen Adressenregister 62 bis 68 des HilfsSteuerwerks 14 gemäß F i g. 1 mit entsprechenden Flipflops und zugehörigen Gatterschaltungen versehen sind. Die dabei vorgesehenen Flipflops seien zusätzlich mit ß, C, D und E bezeichnet. Diese Flipflops reagieren unabhängig voneinander auf Signalkombinationen aus dem Speicherregister 52 und auf die Ergebnissignale von in der zugehörigen Datenverarbeitungsanlage vorliegenden Prüfanforderungen. Die dabei ablaufenden Vorgänge entsprechen den im Zusammenhang mit dem Flipflop A betrachteten Vorgängen.
Das bei gesetztem Flipflop A auftretende Ausgangssignal RLFAA 10 wird dem einen Eingang eines UND-Gatters A 5 zugeführt. Dieses UND-Gatter wirkt als Rückkopplungsgatter, über das das FIipflop A so lange gesetzt gehalten bleibt, bis ein Prüfsignal erzeugt wird. Daraufhin werden sämtliche Flipflops zurückgestellt. Demgemäß bleibt die Rückkopplung so lange aufrechterhalten, bis das erwähnte Prüfsignal auftritt. Damit bleibt auch das Flipfiop A entsprechend gesetzt. Dies hat zur Folge, daß auf Grund von Prüfanforderungen erzielte Ergebnisse gespeichert werden, und zwar so lange, 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 Priifanforderungssignale, die Speicherung der Prüfanforderungssignale und die Einleitung der eigentlichen Ver-
zweigungsoperation zeitlich unabhängig voneinander und asynchron erfolgen.
Im Zusammenhang mit Fig. I 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 Speichers 48 erzeugt werden, entsprechend einer gegebenen Rangordnung auszuführen. Bei der bevorzugten Ausführungsform der Erfindung wird entsprechend der betreffenden Rangordnung zuerst das Adresscnregisler 60 bedient. Sodann wird in dem Fall, daß die Prüfanforderungen nicht erfüllt sind, d. h., daß das Flipflop A nicht gesetzt ist, das erste Adressenregister der Adressenregisler 62 bis 68 bedient, dessen Prüfanforderungen bereits erfüllt sind. Gemäß Fig. 2 C hängt die Einstellung eines UND-Gatter A 6 lediglich vom Auftreten eines Signals RLFAA 10 ab. Ist das UND-Gatter A 6 eingestellt, d. h. angesteuert, so gibt es an den Eingang des Verstärkers SCiA 1 ein Signal ab, der daraufhin ein Ausgangssignal RBQAOiO abgibt. Zur Ansteuerung eines UND-Gatters A 7 sind zwei Ansteuersignale erforderlich, nämlich ein Signal RLFBB 10 von dem Flipflop ß und ein negiertes Signal RLFAA 00, das das Fehlen eines Signals am Ausgang des Flipflops A bezeichnet. In entsprechender Weise erfordert jedes der übrigen UND-Gatter A 8 bis A 10 für seine Ansteuerung neben dem Signal von dem jeweils zugehörigen Flipflop noch ein negiertes Signal von jedem der höherrangigen Flipflops.
F i g. 2 D zeigt den Aufbau der Adressenerkennungs-I.ogikschaltung 72 gemäß Fig. 1. Die UND-Gatter A 11 bis A 15 gemäß Fi g. 2 D werden jeweils durch zwei Fingangssignale angesteuert, die durch ein Ausgangssipnal der Prioritätslogikschaltung und durch ein Signal gebildet sind, das in einer bestimmten Bitposition der Adressenregister 60 bis 68 auftrni. Die in Fig. 2 gezeigte Verknüpfungsschaltung stellt somit die der ersten Bitposition jeder der den Adressenregistern 60 bis 68 zugehörigen Gatterschaltungen dar. Bezüglich des UND-Gatters AW sei bemerkt, daß die Verknüpfungsbedingung dieses UND-Gatters erfüllt ist, wenn das Flipflop A gesetzt ist und die Priorilätslogikschaltung diesem Flipflop zugeordnet ist und außerdem das der ersten Bitposition des Adressenregisters 60 zugehörige Flipflop gesetzt ist. In diesem Fall tritt am Ausgang des Verstärkers GBA 2 ein Signal RO 1 QY 10 auf. Es dürfte ohne weiteres einzusehen sein, daß die Verknüpfungsbedingungen jeweils nur eines der UND-Gatter AW bis A 15 erfüllt sind, und zwar wegen der Eigenschaft der in der Prioritätslogikschaltung 74 erzeugten Prioritätssignale, sich gegenseitig auszuschließen.
F i g. 2 E zeigt die Eingangsschaltung der Logikschaltung 72, und zwar in Verbindung mit einer Stufe des in Fig. 1 gezeigten Speicheradressenregisters 50. Das Ausgangssignal der in Fig. 2 D gzeigten Verknüpfungsschalrungsanordnung wird als Steuersignal dem Eingang eines UND-Gatters A17 (F i g. 2 E) zugeführt. Einem weiteren Eingang dieses UND-Gatters A 17 wird ein Signal RBSTO 10 zugeführt, durch das das Vorliegen eines eine Verzweigung betreffenden Prüfsignals angezeigt wird. Einem weiteren Eingang, nämlich dem dritten Eingang des UND-Gatters A YJ, wird ein Signal RA MPO 40 zugeführt, das der vorliegenden Operation insofern entspircht, als es sich auf die Auf rech terhaltungsoperationen bezieht und insoweit das Fehlen derartige! Operationen im vorliegenden Fall anzeigt. Das Ausgangssignal des UND-Gatters A 17 wird einem Flipflop SFF2 zugeführt. Dieses Flipflop wird auf diese Signalzuführung hin gesetzt; es gibt somit in dem Fall, daß die Verknüpfungsbedingungen des UND-Gatters A 17 erfüllt sind, ein Ausgangssignal RQRO WO ab.
Wie oben bereits angedeutet, bildet das Flipflop
ίο SFF 2 einen Teil des Speicheradressenregisters 50 und entspricht dabei der ersten oder die niedrigste Wertigkeit besitzenden Bitposition.
In Fi g. 2 E ist noch eine weitere Einrichtung vergesehen, die das Flipflop SFF 2 anzusteuern erlaubt.
Dabei handelt es sich um ein UND-Gatter /4 16, das durch zwei Signale RQZOWO und RlNCO 10 angesteuert wird. Das Signal RQZOWO stellt, von der zuletzt benutzten Speicheradresse ausgehend, eine vergrößerte oder verkleinerte Speicheradresse dar.
Das zur Ansteuerung des UND-Gatters A 16 gemäß Fig. 2 E benutzte Signal RlNCO 110 wird in der in Fig. 2 F gezeigten Verknüpfungsschaltung erzeugt. In diesem Zusammenhang dürfte ohne weiteres einzusehen sein, daß die Verknüpfungsanordnung gemaß Fig. 2 F eine Kombination eines Prioritäts-Festsetzungssignals und eines eine Verzweigung betreffenden Prüfoperationssignals vornimmt. Das UND-Gatter A 18 wird durch die ihm zugeführten Ansteuersignale wirksam, wenn ein eine Verzweigung betreffendes Prüfsignal auftritt und die Ergebnisse sämtlicher vorgespeicherter Prüfanforderungen negativ ausfallen, d. h., wenn keines der den Adressenregistern 6Ö bis 68 zugehörigen Flipflops 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 Datenverarbeitungsanlage erleichtern. Bei dieser Erläute-Tung werden verschiedene Speicherzyklen und Steuersignale betrachtet, die die Ausführung des Befehls betreffen. Die betreffenden Zusammenhänge sind schematisch in dem Flußdiagramm gemäß Fig. 3 wedergegeben. Zur Erleichterung der Erläuterung des in Fig.3 dargestellten Flußdiagramms möge das nachstehend angegebene Verzeichnis dienen, in welchem die einzelnen Verknüpfungsfunktionen näher erläutert sind.
Register
R = Steuerspeicheradressenregister,
Y = Steuerspeicherregister,
N = Hauptspeicherregister,
13
S = ÜHertragungsregister, Steuerspeicher für das Hauptspeicheradressenregister,
M = Übertragungsregister,
Steuerspeicher für die Vergrößerungs-/VerkIeinerungs-Logikschaltung, ">
A, B, C, D — Operandenspeicherregister, dem Rechenwerk zugehörig,
AC = A-Operandenregister in dem Steuerspeicher,
AccY = Akkumulatorregister in dem Steuerspeicher,
CM = gegenwärtig adressierter Steuerspeicherplatz,
AP. AH, BP. BH = A- und ß-Stammregister sowie A- und ß-Zeigerregister,
WL^WL0 = Arbeitsstellenregister3und6 in dem Steuerspeicher,
QA, QB,QC,QD, OE = Adressenregister 60 bis 63, LA, LB, LC, LD, LE = Flipflops A bis E.
Operationen
ASRC, BSRC = Verschiebe Inhalt des A- und B-Operandenspeicherregisters um eine Zeiciienposition nach rechts.
Venitigcre die Größenordnung von 3 in das Speicherregiiter geschobenen Zeichenpositionen des B-Operandenspeicherregisters.
Verschiebe den Inhalt der vierU η Zeichenposition des A-Opcrandenspeicherrcgisters in die erste Zeichenposition des B-Operan.denspeicherregis.iers.
CMW = Einschreiben in den Steuerspeichcr.
MMR — Hauptspeicher-Bezugszyklus.
BST — Verzweigung auf gespeicherte Prüfung.
CABPO = Setze Flipflop A, wenn das B-Zeigerregister 0 ist.
Die durch die einzelnen Blöcke gemäß Fig. 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-Verzweigungsoperalion selbst betreffen. Der zu betrachtende Programmbefehl ist der TMA-Befehl (Übertrage vom Speicher zum Akkumulator), durch den acht In
B1, Y —
/I4, B1
formationszeichen 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 22 vermögen jeweils drei Informationszeichen aufzunehmen. Das erste Zeichen der jeweiligen drei Informationszeichen kann in irgendeinen der vier Zeichcnspeichcrplä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. Dcnmemäß wird der TMA-Befehl in Lesespeicherzvklen 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 ,dcT Steuerspeicher übertragen werden können.
Die Gesamtoperation einer Datenverarbeitungsanlage unter der Steuerung eines F.- ^ramrrK"Ti*hls wird mit der F.Mraktionsphase eingeleitet. Dabei werden die verschiedenen, die auszuführende Operation bestimmenden Parameter in entsprechende Register der zugehörigen Datenverarbeitungsanlage eingeführt. Danach wird die eigentliche Abführung des Programmbefehls eingeleitet. Während dieser Zeitspanne ^."folgt ein Austausch des Informationsinhalls der verschiedenen, während der Extraktionsphase mit Informationen gefüllten Register. Zur Iirläutcruiig der vorliegenden Erfindung im Hinblick auf den TMA-Befehl sei angenommen, daß die verschiedenen Schritte betreuend die Extraktionsphase bereits ausgeführt worden sind. Da/u gehören die Ermittelung des vorliegenden Befehls, wie eines TMA-Befchls, sowie das Laden zugehöriger Register mit Stcuerinformationen, umfassend die Operandenadressenregister des Steuerspeichers und der Sonderspeicher des Systems, die kurzzeitig zur Steuerinformationsspeicherung dienen.
Zur vorläufigen Betrachtung der Einleitung der Extraktionsphase auf den TMA-B"fehl hin oder aui irgendeinen anderen Befehl in einer die Erfindung umfassenden Datenverarbeitungsanlage hin sei davon ausgegangen, daß in dem B-Zeigerregister 86 ein Binärzeichen »1« gespeichert ist. Während des ersten Lesespeicher-Zyklus (ROM-Zyklus), der als TMAO H0-Zykl"c in Fig. 3 bezeichnet ist, wird die Adresse des A-Operandenspeicherregisters des Steuerspeichers in das Adressenregister dieses Speichers übertragen. Während des TMAO 110-Zyklus oder kurz während des Zyklus 10 wird der Inhalt des B-Zcigerregisters 86, in welchem gerade ein Binärzeichen »1« gespeichert ist, zu dem B-Stammregisler 84 hin übertragen.
Während des Zyklus 11 wird der Inhalt des A-Operandertadressenregisters des Steuerspeichers in das Steuerspeicherregisler 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 Speichers 48 und des Unterbefehls-Generalors 56 auftretenden Signale die Einleitung einer Übertragung des vorliegenden Inhaltes des Steuerspeicherregisters 30 in das M-Register 34, das auf die Durchführung einer Vergrößerungs-Verkleinerungs-Operation vorbereitet ist. Gleichzeitig wird der Inhalt des Steuerspeicherregisters (welches gegenwärtig die Hauptspeicheradresse der ersten drei herauszuführenden Wörter enthält) zu dem S-Registcr 32 hin übertragen, das auf die nachfolgende Übertragung zu dem Hauptspeicheradressenregister 24 hin vorbereitet ist. Neben der zur Adressierung des Hauptspeichers benutzten Bilfolge des Steuerspeicherregisters verbleibt in dem 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-Gruppc bezeichnet wird. Diese beiden Bits werden von dem Steuerspeicherregister während des ROM-Zyklus 12 übertragen und kurzzeitig in dem B-Zeigerregisu-r 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 des ROM-Zyklus 12 ein dem Wen drei entsprechendes Binärwort (011). Die Funktion dieses Stammregisters in der gerade betrachteten Programmschleifenoperation liegt darin, die Anzahl der zyklischen Vorgänge zu überwachen. Während des folgenden Lescspeichcr/yklus, d.h. während des Zyklus 13, erfolgt ein Vergleich zwischen dem Inhalt des B-Stammregisters und einer Information 0 XX. 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 Vergleichsbedingung erfüllt, und ferner wird ein einem der Adressenregister 60 bis 68 zugehöriges, bezeichnetes Flipflop gesetzt. Das Adrcssenregisler wird nahezu gleichzeitig mit der dem Zyklus 12 entsprechenden Lesespcieheradresse 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 der Adressenregister 6ö bis 68 in das Speichcradressenregister 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-Opeialion bezüglich des Inhalts des M-Registers 34 verbunden. Der Inhalt dieses Registers wird in dieses Register während des betreffenden Lesespeicherzyklus von dem Steuerspeicherregister 30 her übertragen. Während dieses Zyklus erfolgt ferner eine Einspeicherung derjenigen Adresse in das 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 einer Verzweigung auf ein gespeichertes Prüfsignal hin während eines nachfolgenden Lesespeicherzyklus eingeleitet.
Während des Lesespeicherzyklus 13 wird die 5 obenerwähnte BST-Prüfung eingeleitet, bei der der Inhalt des B-Stammregisters mit einer Information 0 XX verglichen wird, um festzustellen, ob noch ein Programnischleifenzyklus auszuführen ist. Zur Erläuterung dieser Vorgänge sei angenommen, daß das
ίο Flipflop D und das zugehörige 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 F i g. 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 Zyklus oder mehrere Zyklen danach erfolgt. Bei der bevorzugten Ausführungsform 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 Speicher 48 hin wirksam. Dies wird durch den Inhalt des ranghöchsten Adressenregisters 60 bis 68 bewirkt, dessen zugehöriges Flipflop gesetzt ist. In Abweichung hiervon kann dies auch durch die vergrößerte oder verkleinerte Adresse der vorangehenden ROM-Adresse bewirkt werden. Unter der Annahme, daß kein unrechtmäßiges OP-Kodezeichen ermittelt worden ist und daß kein ranghöheres Flipflop gesetzt war, ist der nächstfolgende Lescspeichcrzyklus durch den Inhalt des Adressenregisters 66 bestimmt, das im vorliegenden Fall den dem Zyklus 12 entsprechenden Lesespeicherplatz bestimmt.
Im Hinblick auf den Zyklus 14 sei ferner bemerkt, daß das Adrcssenregister 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 Adressenregister 62 eingegeben wird, ist unabhängig davon, daß das Verzweigungssignal gegebenenfalls während des betreffenden Zyklus erzeugt wird, und zwar insofern, als das FlipflopB nicht gesetzt ist.
Unabhängig von dem Setzen oder Zurückstellen irgendeines Flipflops ist, daß eine Adresse, die in eines der Adressenregister 60 bis 68 eingegeben ist, so lange 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-Registers 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 Hauptspeicherregister 26
zwischengespeicherte Inhalt des Hauptspeichers zu dem C-Operandenspeicherregister 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, daß eine interne Verzweigungsoperation abläuft, bei der das Flipflop D gesetzt und das Flipflop/4 zurückgestellt ist. Ferner führt dies dazu, daß der Inhalt des Adressenregislers 66 zu dem Speicheradressenregister 50 übertragen wird. Hieran schließt sich ein Übergang zu einer wirksamen Steuerung des Speicherzyklus bzw. Zyklus 12 an.
Es sei ferner bemerkt, daß bei der besonderen Ausführungsform der vorliegenden Erfindung ein Geschwindigkeitsunterschied zwischen den Lese-Speicherzyklen und den Hauptspeichenryklen 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 Lese-Speicherzyklen später ausgeführt. Während des Zyklus IS des ersten Programmschleifenumlaufs wird somit der in das C-Operandenspeicherregister übertragene Inhalt des Hauptspeicherregisters 26 nicht beachtet. Während des zweiten Programmschleifen-Umlaufs und insbesondere wahrend des dabei aultretenden Zyklus 14 steht jedoch der Inhalt des während des vorangehenden Zyklus 12 bezeichneten Hauptspeicherplatzes in dem Hauptspeicherregister zur Verfugung. Der betreffende Inhalt vvi.d während des folgenden Steuerspeicherzyklus (das ist Zyklus 15) aus dem Hauptspeicherregister in das C-Register übertragen. Dies stellt dann den Abholvorgang des ersten Wortes der drei Worter dar, nach denen bei Vorliegen des TMA-Befehls gearbeitet wird.
Ls sei ferner darauf hingewiesen, daß während des zweiten Programmsehlüfendurchlaufs, und zwar insbesondere während des Zyklus 12 dieses Programmschleifcndurciilaufs, eine zweite den Hauptspeicher betreffende Anforderung auftritt, die etwa sechs Lesespeicherzyklen spater bedient wird. Wenn der Prograr.;.".:schleifenbe!rieb so fortliefe, würde dies w"' rend des Zyklus 14 des folgenden Programmschleifen?^ klus erfolgen. Während des Zyklus 12 des zweiten Programmschleifendurchlaufs wird der Inhalt des B-Stammregisters jedoch um eins erhöht. Damit ist in dem B-Stammregister nunmehr die Bitfolge 100 gespeichert, die im Zyklus 13 dazu führt, daß das Flipflop D zurückgestellt bleibt. Unter diesen Voraussetzungen ist bei der Erzeugung eines Verzweigungssignals im Zyklus 14 keines der den Adressenregistern 60 bis 68 entsprechenden Flipflops gesetzt. Dadurch gibt die eine Vergrößerung/Verkleinerung der Speicheradresse bewirkende Verknüpfungsschaltung 70 die nächstfolgende Speicheradresse ab. nämlieh 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-Registers bezeichnende Zeichen zu dem B-Zeigerregister 86 wie in dem Zyklus 12 übertragen. Feiner wird während des Zyklus 16 das erste, aus dem Speicher während des Zyklus 14 ausgespeicherte und aus dem Hauptspeicherregister 26 während des vorangehci.Jc- Zy^'us 15 in das C-Operandenspeicherregister 42 eingespeicherte Wort der drei Wörter nunmehr zu dem B-Operandenspeicherregister 40 übertragen. Gleichzeitig wird in das Adressenregister 66 die Speicher- bzw. Lesespeicheradresse des Zyklus 23 eingespichert.
Bei der weiteren Erläuterung der Erfindung und insbesondere bei der Erläuterung einer Operation, die mit einer Verzweigung auf eine externe Anforderung hin abläuft, sei die durch den TMA-Befehl realisierte Funktion mit 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-Operandenspeicherregister 40 gespeichert ist. Da das erste der dem Steuerspeicher 22 zu übertragenden aehl Zeichen irgendein Zeichen der in dem B-Operandensp^icherregister 40 enthaltenen vier Zeichen bilder kann, sei nunmehr die Auswahl des ersten Zeichen: und die Vorbereitung für seine Übertragung betrachtet. Ls sei daran erinnert, daß der Zeichen-Bezeichnungsieil der ursprünglich in dem Steuerspeicher 22 gespeicherten Adresseninformation in das B-Zeigerregister 86 übertragen worden ist. Dadurch wird im Zyklus 17 das Flipflop/) gesetzt, wenn festgestelli 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 da; B-Stammregister 84, in dem zuvor das einer 0 entsprechende Binärcodewort gespeichert war, weitergeschaltet, so daß nunmehr in diesem Register ein einei »Ι« entsprechendes Binärkodewort (das ist 01) enthalten ist. Der Inhalt des Adressenregisters 60 wird durch die dem Zyklus 22 entsprechende Speicheradresse ersetzt. Hs sei daran erinnert, daß in derr Adressenregister 60 zuvor eine Speicheradresse ent halten war. die in dem betreffenden Fall als unrecht mäßiges OP-Kodewort bezeichnet ist. Dieser zuletz genannte Zustand wurde während der Ausführung der eisten Verzvveigungsoperation überprüft, und zi diesem Zeitpunkt der AuMuhrung des gerade vorlie genden Befehls wird das betreffende Kodewort al" überflüssige Information betrachtet.
Nunmehr sei der nächste Zyklus, d. h. Zyklus 2( (Oktalschreibvveise), näher betrachtet. Hierbei ist da; Flipflop A gesetzt, wenn in dem R-Zeigerregister eir einer 0 entsprechendes Binärkodewort (das ist 00) ir den anderen zwei Bits gespeichert ist. In entspre chender Weise ist das Flipflop B gesetzt, wenn ir dem B-Zeigerregister ein einer 1 entsprechendes Bi närkodewort (das ist 01) in den beiden niedrigerwer tigen Bits gespeichert ist. Das Setzen des A- und de: ß-Flipflops während des Zyklus 20 erfolgt nahezi gleichzeitig mit der Abgabe eines Verzweigungssi gnals in das Speicherregister 52. Die Flipflops / und B und ihre zugehörigen Adressenregister 60 unc 62 werden durch die gerade vorliegende Verzwei gungsoperation nicht beeinflußt. Demgemäß erfolg eine Verzweigung zu der dem Zyklus 23 entspre chenden Lesespeicherstelle hin, wenn das Flipflop £ während des Zyklus 17 gesetzt ist. Damit ist danr angezeigt, daß ein einer 3 entsprechendes Binärkode wort (das ist 11) gerade in dem B-Zeigerregister ge speichert war. Das in dem B-Zeigerregister 86 ge speicherte, einer 3 entsprechende Binärkodewort (da; ist 11) zeigt an, daß sämtliche vier Zeichen, die da: aus dem Hauptspeicher ausgespeicherte erste Wor enthalten, als brauchbare Information in den Steuer speicher zu übertragen sind. Mit anderen Wortei ausgedrückt heißt dies, daß die gewünschten ach
% ι 900 141
Zeichen gerade in den ersten beiden bezeichneten ^u erläuiern die wä^^z^^Ug ^eit Hauptspeichenvörtern enthalten sind. Unter diesen 8efuhrt ^""J^rend des vorangehenden Zyklus Voraussetzungen führt die Ausführung der im Zyklus merkt, ^™^ 20 he° in das Haupt-20 ausgelösten Verzweigungsoperat.cn zu einem un- 20 von dem ^p 1 Information nunmittelbaren Übergang zum Zyklus 23, nachdem der 5 sP^.h™SJster -ö u β ^ A_Operanden-Speicher 48 den Zyklus 21 durchlaufen hat. mehr wahrend des /£Mus Darüber hipaus Der Inhalt des während des Zyklus 12 des werten ^.e'ch^Sk2ewOrt 01 von dem B-Stammregi-Programmschleifendurchlaufes bezeichneten Haupt- wird em Binarkodcwort : Wn übertragen. Ferner Speicherplatzes wird während des Zyklus 20 in dem ster zu dem B-Ze gerrcg s er h B ^ Haupupikherregister 26 verfügbar. Während des io wird in^n]^^^lm A-Stammregister geZyklus 20 wird in das Adressenregister 68 ferner chert die bezogen auf *e im ^ .^ Ange. eine Information eingespeichert, die eine Speicher- speicherte Adresse im^VV «' 5st ;n dem adresse bezeichnet, welche während der Ausfuhrung sichi der voJ^enden P des Binärko. der Verzweigungsoperation umzulaufen hat Hier- A-Swmn«g«wr e η eme y f ^ ^ durch ist der Höhepunkt des vorliegenden Befehls 15 ^?«^™^1 Lesespeicher-Zweigadresse geerreicht. Während des Zyklus 20 wird ferner der In- g^mber h.naus «ne^«c ^ zugehörig ^ halt des A-Zeigerregisters 82 als Binarkodewort 00 bildrt die de verzweg fc H abschließt, zu dem A-Stammregister 80 hin übertragen Dieses welchedengcra<ie vdrlg,e t ^^ d{e Binärkodewort ist während des vorangehenden Die.Funktion deζ* ίοπ auszuIösen, die derzeit Speicherzyklus aus dem Y-Registev m das A-Ze,ger- *o Vei^ng^Mnfo^ ^ 3g ^
register S2 eingespeichert worden. £ n^nrtensneicherrefiister 40 enthalten ist. Diese
Während des Zyklus 21 wird ein Signal erzeugt, B-OperandtnsPei^"?&*r«. Übertragung
um das FlipfloM im gesetnen Zustand zu halten, f䙣™^£^^lm Steuetspetaher
wenn das B-Zeigerrcgister 86 ein eine 0 darstellendes der buaffu.dcn Int ο ™ auf die übertra. Binärkodewort speichert. Ebenso wie dem Setzen des *5 22 hin vorbLreitet. aiii κ bevorzuten Ausfüh-
A- und des ß-Flipflops während des Zyklus 20 die ^η^η^™η^ t ß d betreffende Infor-
im Zyklus 21 ausgelöste Verzweigungsopcration ent- rungsform der J«muun^ 1^ Zeichenposit.o-
spricht. entspricht hier dem Setzen des Flipfliops/1 mation m ^"^'^^f^eSrs 40 eingeführt
Ehrend des Zyklus 21 die Ausführung der Verzwe,- nen des ^™*™?™™^^^ 22 hin
gungsoperation während des Zyklus 22. Somit lost 3o werden, bevor si«, zu ^m ^eu ρ des
die mit dem Zyklus 21 beginnende Verzweigung*- "be^^
operation eine verkürzte Programmschle.fenopera- B-°Pera"SÄrS durch den Zyklus 22 um
tion während des Zyklus 22 aus. und ,war entweder jamn^hte^ ,„ entspre.
für eine B-Zeigerdarstellung 00 oder fur e.ne Zeiger- e ne Position naO[J^ d InhaIt des darstellung 01. Im Unterschied da?u führt ein Binär- 35 ^^^^^ί ^g stes 3? Gleichzeitig w.rd
kodewort 10 in dem B-Zeigerregister zu einer nor- A-()perandLnspeic^rreg.sw bebitzende Zei-
malen Arbeitsfolge durch den Zyklus 22 in dem Zy- das vierte, une "^^ ^irregister 38 in die
klus 23. Es se. daran erinnert, daß ein Binärkode- chen in dem Α;ΟΡ\™;α^^η|β Zeichenpcsi-
wort 11 in dem B-Zeigerregister 86 eine Verzwe,- einer lohe" ^™^ 40 verschogung hervorruft, und zwar d.rekt vom Zyklus 23 zum 40 tion des B-Operand ^Pe'cherreg.sters
Zyklus 21, unter Aus«assung des Zyklus 22. ben Wahreno jedes SP™^U 80 im Wen vcr.
Es sei angenommen, daß in dem B-Zeigerregister wellige Innalt des A-Stamm.eg.s.ers 0
86 ursprünglich ein Binänvon (M) enthalten war Da- ringert. vorliesende Operation durch
mit dürfte einzusehen sein, daß zu dem Zeitpunkt, zu Wenn die gera^ v°niege j der
dem der Zyklus 21 beginnt, da^ Flipflop A nochmals 45 einen TMA-Befehl bes ,mmt ^^e dann
gesetzt wird, so daß ein erster Durchlauf des Zyklus vorliegenden Erlauterung «igenommen , ^
22 als normale Folge der eine Vergrößerung/Verklci- wird wahrend de^ ^tsprechenden /.y _
Tierung einer Adresse bewirkenden Verknüpfung*- Speicheradresse ein« A-ZaWe^ in
schaltung 70 auftritt. Ein zweiter Durchlauf des Zy- Speicheradressen «g«^ 'e'ines spezicllen
k.us erfolgt in Abhängigkeit von der Erfüllung des 50 J™ ™£^
Prüfzustands des Flipflops A wie dies wahrend des ^beitsplatzreg ster d ^^ ^ übertragen.
Zyklus 20 entsprechend dem Verzweigungssignal des m das bteuer^P^'cn,',", d B.Zeieerregisters
Zyklus 21 festgelegt ist. Ein dritter Programmschlei- Gleich« ««wjrdder Inhal tj« Btoegr g ^
fendurchlaiif durch den Zyklus 22 tritt dann auf, zu dem S euersP^IC™™d^ ^ Register eine im
wenn die Anforderungen bezüglich des Setzens des 55 Jagen AuBe^m J^in d *c^!zeige^registers ein-
Flipflops/i erfüllt sind, und zwar entsprechend der Wert verringerte Adresse aes d b
Festlegung im Zyklus 21 und als Folge des während ^g^ 23 wird ferner der Inhalt des
Nachdem die Umstände bezeichnet worden sind, ^'&^^« e z" dem Y-Register übertrager
21 ' 22
übertragen worden sind, verbleiben in der einer hö- Ausführung der im Zyklus 24 ausgeführten Operatioheren Wertigkeit entsprechenden Position des nen. Hierzu gehört das Verschieben des Inhalts des B-Operandenspeicherregisters 40 ein einziges Infor- A-Operandenspeicherregislers und des B-Operanmationszeichen und in dem A-Operandenspeicherre- denspeicherregisters, wobei die Übertragung des Ingisler zwischen einem und vier brauchbaren Informa- 5 halts der einer niedrigen Wertigkeit entsprechenden tionszeichen, was von dem Originalzustand des Zeichenposition des A-Opcrandenspeicherregisters in B-ZcigCi registers 86 abhängt. Gleichzeitig ist in das die einer höheren Wertigkeit entsprechende Zeichen-D-Operandenspeicherregister der restliche Teil der position des B-Operandenspeicherregisters erfolgt, brauchbaren Information eingegeben worden. Damit Eine bedingte Übertragung des Inhalts des D-Opcwcr'len die nachfolgenden Operationszyklen des io randenspcicheiregisteis 44 in das A-Operanden-Spcichers 48 dazu benutzt, eine weitere Gruppe der Speicherregister 38 erfolgt wie im Zyklus 24 auf die drei Informalions/eichen in den einer geringen Wer- Feststellung eines einer 0 entsprechenden Binärwortigkeit zugehörigen drei Zeichenposilionen des les in dem A-Stammrcgisler 80. Während des Zyklus B-Operandensncicherregisters zu sammeln, bevor die 25 wird das Flipflop/·; bedingungslos gesetzt. Eine beireifenden Zeiuien zu dem Steuerspeicher hin is auf ein gespeichertes Prüfsignal hin erfolgende Verülurtragen werden. Um diese Sammeloperation aus- zweigung bewirkt dann die Auswahl des Inhalts des führen zu können, wird eine an keine Bedingungen Adressmregisters 68 nur in dem Fall, daß samtliche geknüpfte Verzweigungsoperalion ausgeführt, indem eine niedrigere Rangordnung besitzenden Flipflops während des Zyklus 23 das Flipflop D bedingungslos zurückgestellt sind.
gesetzt wird. Dies bedeutet, daß mit dem nächsten 20 Während des Zyklus 26 wird die Reehlsversehie-Auftreten einer Verzweigung zufolge eines gespei- bung der Zeichen in dem A-Operandenspeicherregichtrun Trüfsignals eine Maßnahme zur Auslösung ster 38 und in dem B-Operandenspeichcrrcgisler 40 einer Übertragung zu dem Speicherplatz hin ausge- fortgesetzt. Außerdem wird die Übertragung des Inführt wird, und zwar entsprechend dem Inhalt des halts des einer niedrigen Wertigkeit entsprechenden Adressenregisters 66, welcher im vorliegenden Fall 25 ZeichenspeiJierplatzes des A-Operandenspeicherredem Zyklus 23 entspricht. Während des Zyklus 23 gisters in den einer höherwertigen Zeichenposition wird ferner in das Adressenregister 62 eine Lese- des B-Oporandenspeicherregistcrs fortgesetzt. Wähspcicheradresse eingespeichert, die bei der den Höhe- rend dieses Zvklus erfolgt ferner das bedingte Setzen [junkt des vorliegenden Befehls bildenden Verzwei- der Flipflops A, B. C und D. Dabei wird das FHpgunnsoperution benutzt wird. 30 flop A dann gesetzt, v.enn die gerade vorliegende
Wie im Zyklus 22 erfolgt auch im Zyklus 24 eine Operation entweder eine Addition oder eine Subtrak-VerKchiebung der brauchbaren Informationszeichen tion betrifft. Das Flipflopß wird dann gesetzt, wenn in die cir... modrigen Wenigkeit enisprei.her.1en Ze< durch die gerade vorliegende Operation eine Mulli-,.iienpositionen ü^ A-Operandi-nspeicherregislers 38 plikation ausgeführt wird. Das Flipflop Γ wird dann und des B-Opcrandenspcicherrcpisiers 40. Der Inhalt 35 gesetzt, wenn durch die gerade vorliegende Operades A-Stammregisters 80 wird dazu benutzt, die je- tion eine Division durchgeführt wird. Das Flipflop Γ> wcils verschobene Information zu überwachen. Da- wird schließlich dann gesetzt, wenn die gerade vorliebei wird jede Zeichenverschiebung in das A-Operan- gende Operation das Laden eine speziellen Registers denspeicherregister 38 durch eine Verringtrune des betrifft, das bei der Durchführung wissenschaftlicher Inhalts des A-StammrcgiMe" 80 begleitet. Dies setzt 40 Operationen benutzt wird. Während des Zvklus 26 sich bis zu dem Zeitpunkt U-rt, zu dem in den einer werden ferner Maßnahmen getroffen, um in das niedrigen Wertigkeit entsprechenden 2-Bitpesitionen Adressenregister 66 die Adresse eines Lesespeicherdcs A-Stammre<ri<;ters die Bitfolge 00 festgestellt platz.es einzuspeichern, die der dem Flipflop D zugewird. Dies zeigt dann an, daß die brauchbaren Infor- hörigen bedingten Operation entspricht, mationszeichen von dem A-Operandenspeicherregi- 45 Während des Zyklus 27 wird die Steuerspeichcrstcr 38 zu dem B-Operandenspeicherregister 40 hin adresse des Folgeregisters des Steuerspeichers in das übertragen sind. Auf eine derartige Anzeige hin wird Steuerspeicheradressenregister 28 übertragen, wenn der Inhalt des D-Operandenspeicherregisters 44, d. h. der gerade vorliegende Befehl die Eigenschaft einer das dritte aus dem Hauptspeicher ausgespeicherte In- TMA-Operation besitzt, was für die folgende Erläuformalionswort, in das A-Operandenspeicherregister 5° terung auch angenommen worden ist. Im Unter-38 übertragen. schied dazu wird die Adresse des Arbeilsspeicher-
Während des Speicherzyklus 24 erfolgt ferner die platzes 6 des Steuerspeichers in das Steuerspeicher-Einspeicherung einer Speicheradresse in das Adres- adressenregister28 übertragen. Gleichzeitig wird der senregister 60. Diese Adresse wird bei dem Höhe- Inhalt des B-Zeigerregisters 86 in das Steuerspeicherpunkt des vorliegenden Befehls benutzt. Während 55 adressenregister übertragen, und die in dem B-Opedes Zyklus 24 tritt auf ein gespeichertes Prüfsignal randenspeicherregister 40 noch enthaltenen, eine niedhin eine Verzweigung auf, die nach dem Zyklus 25 rige Wertigkeit besitzenden drei Zeichen werden in bewirkt, daß in Abhängigkeit von dem bedingungslo- das Steuerspeichßrregister übertragen und anschliesen Setzen des Flipflops D ein wiederholter Durchlauf ßend wieder in den Speicherplatz des Steuerspeichers durch die Speicherplätze entsprechend den Zyklen 60 zurückgespeichert, der für eine Speicherung gerade 23, 24 und 25 erfolgt. adressiert ist. Zu diesem Zeitpunkt wird die letzte Ver-
Es dürfte einzusehen sein, daß diese Programm- zweigung auf ein gespeichertes Prüfsignal hin erzeugt, schleife automatisch nach einem einzigen Zyklus Während des Zyklus 30 wird in das Steuerspeicher-
bcendet wird, da der Inhalt des Adressenregisters 66 adressenregister die AcI esse eines Folgezählers einwährend des Zyklus 25 durch die dem Zyklus 26 ent- 65 gespeichert, und der InhuH des B-Zeigerregisters sprechende Adresse des nächstfolgenden Speicher- wird um eine Einheit erhöht. Am Ende des Zyklus platzes ersetzt wird. 30 wird die während des Zyklus 27 ausgelöste Ver-
Während des Zyklus 25 erfolgt eine nochmalige zweigung auf eine gesDeicherte Prüfoperation hin
wirksam, wodurch das höchstwertige Adressenregister der Adressenregister 60, 62, 64 und 66, dessen zugehöriges Flipflop gesetzt ist, dazu benutzt wird, die nächste Speicheradresse abzugeben.
Gemäß einem Beispiel, bei dem, wie dies im vorliegenden Fall angenommen worden war, die vorliegende Operation einem TMA-Befehl entspricht, wird keines der Flipflops A bis D gesetzt. Dabei obliegt es dem Adressenregister 68, die Adresse für den nach-
sten Speicherzyklus 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.
Hierzu 2 Blatt Zeichnungen

Claims (6)

Patentansprüche:
1. HUfssteuerwerk für eine Datenverarbeitungsanlage mit einem Hauptverarbeitungsteü, enthaltend einen Hauptspeicher und Steuereinrichtungen zur Verarbeitung von Befehlen und Informationen, die in dem Hauptspeicher gespeichert sind, wobei in einem einzigen Speicherzyklus 'des Hauptspeichers eine Vielfachverzwcigung vornehmbar ist, dadurch gekennzeichnet, daß ein Speicher (48) zur Speiche- ' rung von Mikrobefehlen und Adressen vergesehen ist, daß ein erstes Register (50) zur Speicherung von Adressen vorgesehen ist, die zur Bezeichnung von Speicherplätzen des Speichers (48) dienen, daß ein zweites Register (52) für eine kurzzeitige Speicherung des Inhalts der jeweils bezeichneten Speicherplätze des Speichers (48) vorgesehen ist, daß eine Vielzahl von unabhängigen Registern (60, 62, 64 66, 68) vorgesehen ist, die die Adressen von Speicherplätzen des Speichers (48) über eine Vielzahl von aufeinanderfolgenden Arbeitszyklen des Speichers (48) zu speichern imstande sind, daß eine Steuereinrichtung vorgesehen ist, weiche solche Schaltverbindungen zwischen den genannten Registern (50, 52 60, 62, 64 66, 68) und dem Speicher (48) herzustellen gestattet, daß die Adressen von Speicher} -liitzen des Speichers (48) in den unabhängigen Registern (60, 62, 64, 66, 68) in aufeinanderfolgenden Arbeitszyklen des Speichers (48) abgespeichert werden, daß diese Adressen jeweils Teil der Information sind, die aus dem Speicher (48) herausgeführt und in dem zweiten Register (52) abgespeichert wird, daß ferner eine Vielzahl von bistabilen Einrichtungen (76) vorgesehen ist, deren Anzahl der der unabhängigen Register (60, 62, 64. 66, 68) entspricht und die jeweils einem dieser unabhängigen Register (60, 62, 64, 66, 68) zugeordnet sind, daß eine erste Logikschaltung (78) vorgesehen ist, die auf Steuersignale und auf Ergebnisse von Prüfoperationen anspricht, weiche unter in der Datenverarbeitungsanlage festgelegten Bedingungen ausgeführt werden, und zwar zum Setzen einer bestimmten bistabilen Einrichtung der bistabilen Einrichtungen (76), daß eine zweite Logikschaltung (74, 72) vorgesehen ist, die auf weitere Steuersignale und auf das Ausgangssignal einer der bistabilen Einrichtungen (76) in dem Fall anspricht, daß die betreffende bistabile Einrichtung gesetzt ist, und daß die zweite Logikschaltung (74, 72) die Übertragung der in dem der jeweiligen bistabilen Einrichtung zugehörigen unabhängigen Register enthaltenen Information in das erste Register (50) bewirkt, in welchem diese Information vor Bereitstellung irgendeiner weiteren Adresse für die Bezeichnung der nächstfolgenden Adresse des Speichers (48) benutzt wird.
2. HilfsSteuerwerk nach Anspruch 1, dadurch gekennzeichnet, daß die genannte eine Steuereinrichtung so ausgelegt ist, daß andere Informaitiönstcjle aus den bezeichneten Speicherplätzen des Speichers (48) dazu heranziehbar sind, zumindest einige PrüfbeiMuguüg^.i. festzulegen, und daß eine Abtästeinrichtung (78) vorgesehen ist, die auf die Ermittelung einer bestimmten Bitdarstellung der anderen hiformationsteile hin eine Abtastung der bistabilen Einrichtungen (76) zur Feststellung eines entsprechenden Zustands und die Übertragung des Inhalts des der gesetzten bistabilen Einrichtung entsprechenden einen Registers der unabhängigen Register (60, 62, 64, 66, 68) zu dem ersten Register (50) hin einleitet.
3. HilfsSteuerwerk nach Anspruch 2, dadurch gekennzeichnet, daß die Abtasteinrichtung (78) so ausgelegt ist, daß sie eines der unabhängigen Register (60, 62, 64, 66, 68) entsprechend einer die bistabilen Einrichtungen (76) betreffenden Priorität auswählt und daß der zu dem ersten Register (50) hin übertragene Inhalt derjenigen bistabilen Einrichtung der bistabilen Einrichtungen (76) zugehörig ist, die eine Anzeige darüber speichert, daß die erfüllte Prüfbedingung die höchste Priorität besitzt.
4. HilfsSteuerwerk nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der Speicher (48) ein Lesespeicher ist.
5. HilfsSteuerwerk nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß mit dem ersten Register (50) eine Verknüpfungsschaltung (70) verbunden ist, der der Inhalt des ersten Registers (50) während jedes Speicherzyklus zugeführt wird, wobei dieser Inhalt erhöht oder verringert wird, und aus der der Inhalt des ersten Registers (50) für den jeweiligen Speicherzyklus in dem Fall gewonnen wird, daß keine der bistabilen Einrichtungen (76) gesetzt ist.
6. HilfsSteuerwerk nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß eine Vielfachverzweigungsoperation mit einer solchen Geschwindigkeit ausgeführt wird, daß sie mit der Ausführungsperiode eines einzelnen Programmbefehls des P-iptverarbeitungsteils synchronisiert ist und innerhalb dieser Austührungsperiode abläuft.
DE1900141A 1968-01-02 1969-01-02 HilfsSteuerwerk für eine Datenverarbeitungsanlage Expired DE1900141C3 (de)

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 DE1900141A1 (de) 1969-09-04
DE1900141B2 DE1900141B2 (de) 1973-10-25
DE1900141C3 true 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)

* Cited by examiner, † Cited by third party
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
WO1986005015A1 (en) * 1985-02-20 1986-08-28 Magellan Corporation (Australia) Pty. Ltd. Microprogram controller
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
EP0551934A2 (de) * 1987-06-05 1993-07-21 Mitsubishi Denki Kabushiki Kaisha Digitalsignalprozessor
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 海光信息技术股份有限公司 利用共享存储器存储数据的方法

Also Published As

Publication number Publication date
JPS5031419B1 (de) 1975-10-11
GB1254538A (en) 1971-11-24
CH512782A (fr) 1971-09-15
BE726343A (de) 1969-05-29
NL163339B (nl) 1980-03-17
DE1900141B2 (de) 1973-10-25
US3570006A (en) 1971-03-09
NL163339C (nl) 1980-08-15
NL6900010A (de) 1969-07-04
DE1900141A1 (de) 1969-09-04
SE345332B (de) 1972-05-23
FR1603682A (de) 1971-05-10

Similar Documents

Publication Publication Date Title
DE1900141C3 (de) HilfsSteuerwerk für eine Datenverarbeitungsanlage
DE2355993C3 (de) Programmierbare Datenverarbeitungsanlage
DE2234867C2 (de) Anordnung in einer Datenverarbeitungsanlage zum Steuern der Verarbeitung zweier voneinander unabhängiger Befehlsfolgen
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE1499288B2 (de) Datenverarbeitungsanlage
DE1549522B1 (de) Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner
DE3116100A1 (de) Sprungabschaetz-zentraleinheit
DE2646296A1 (de) Assoziative elektronische schaltungsanordnung aus digitalen prozessoren
DE2758830A1 (de) Rechenvorrichtung
DE2457612B2 (de) Mikroprogrammier-Steuereinrichtung
DE1499193A1 (de) Datenverarbeitungsanlage
DE1424732A1 (de) Elektronische Ziffernrechenmaschine
DE1282337B (de) Programmgesteuerte elektronische Rechenanlage
DE1285220B (de) Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten
DE2911909C2 (de) Digitales Datenverarbeitungsgerät
DE1499206B2 (de) Rechenanlage
DE1179027B (de) Speicherprogrammierte digitale Rechenanlage
DE2245284A1 (de) Datenverarbeitungsanlage
DE1574877B1 (de) Verfahren und Einrichtung zur Kopplung von datenverarbeitenden Anlagen
DE1193279B (de) Elektronen-Ziffernrechner mit eingespeichertem Programm
DE1168129B (de) Verfahren zur Verarbeitung von Daten
DE1499224C3 (de) Datenverarbeitungsanlage mit Kellerspeichereinrichtungen
DE2759120A1 (de) Prozessor fuer datenverarbeitungssysteme
DE2644180C3 (de) Datenverarbeitungssystem
DE1223177B (de) Elektronischer Digitalrechner mit Schaltung fuer die Errechnung der Quadratwurzel aus einer Binaerzahl

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