DE1806535A1 - Digitale Rechenanlage - Google Patents

Digitale Rechenanlage

Info

Publication number
DE1806535A1
DE1806535A1 DE19681806535 DE1806535A DE1806535A1 DE 1806535 A1 DE1806535 A1 DE 1806535A1 DE 19681806535 DE19681806535 DE 19681806535 DE 1806535 A DE1806535 A DE 1806535A DE 1806535 A1 DE1806535 A1 DE 1806535A1
Authority
DE
Germany
Prior art keywords
register
memory
data
microinstruction
track
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
DE19681806535
Other languages
English (en)
Other versions
DE1806535B2 (de
DE1806535C3 (de
Inventor
Ayres Bruce L
Bernardo Levy
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.)
Unisys Corp
Original Assignee
Burroughs Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Burroughs Corp filed Critical Burroughs Corp
Publication of DE1806535A1 publication Critical patent/DE1806535A1/de
Publication of DE1806535B2 publication Critical patent/DE1806535B2/de
Application granted granted Critical
Publication of DE1806535C3 publication Critical patent/DE1806535C3/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/16Digital recording or reproducing using non self-clocking codes, i.e. the clock signals are either recorded in a separate clocking track or in a combination of several information tracks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
    • 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/24Loading of the microprogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Executing Machine-Instructions (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

Burroughs Corporation, Detroit, Michigan/USA
Digitale Rechenanlage
Die Erfindung betrifft eine digitale Rechenanlage mit internem Programm und gespeicherter Logik.
Die Erfindung schafft eine Rechenanlage, die einen Hauptspeicher, ein Datenverarbeitungswerk, ein Mikroprogrammsteuerwerk und ein Eingabe/Ausgabe-Werk enthält. Das Eingabe/Aus gäbe werk enthält eine Tastatur und einen Drucker. Die Rechenanlage kann so ausgebildet sein, daß sie an Lochkartenleser, Lochstreifenleser, Kartenlocher, Magnetbandgeräte und andere ähnliche Eingabe/Ausgabeeinrichtungen angeschlossen werden kann.
Der Hauptspeicher der Rechenanlage befindet sich auf einer magnetischen Platte, die in Makrospeicherspuren, Mikrospeicherspuren und Punktionsspuren unterteilt ist. Während des Betriebs der Rechenanlage sind die Makro- und Mikrospeicherspuren normalerweise streng voneinander getrennt, doch kann das Mikrospeichergebiet in Ausnahmefällen in das Makrospeichergebiet übergehen.
Der Punktionsteil des Hauptspeichers ist in mehrere Spuren unterteil^, die jeweils verschiedene Punktionen haben. Die Punktionsspuren sind am Rande der Platte angeordnet, doch können sie auch in der Nähe der Achse der Platte vorgesehen sein. Die Punktionsspuren liefern die Taktimpulse der Rechenanlage, und bei einer Ausführung der Rechenanlage bilden sie zwei geschlossene Kreise, d.h. zwei Umlaufspeicher, die zusammen mit dem Datenverarbeitungswerk der Rechenanlage
909825/ 1 3 2
zur Verarbeitung von Daten verwendet werden. Der eine Umlaufspeicher dient zum Synchronisieren von Lese- und Schreiboperationen, und der andere dient zum Speichern von Daten, die verarbeitet werden, und umfaßt verschiedene Register und Zwischenspeicher, die bei der Datenverarbeitung benötigt werden.
Das Datenverarbeitungswerk der Rechenanlage enthält einen Serienaddierer, ein fest verdrahtetes Zwischenspeicherregister und Kurzzeit-Datenspeicherplätze.■Die Kurzzeitdatenspeicherplätze können entweder die erwähnten Umlaufspeicher sein, die einen Teil des Hauptspeichers bilden, oder Metalloxid-Halbleiterregister. Diese Register können in Fällen verwendet werden, in denen ein größerer Speicherplatz auf der Platte erforderlich ist und eine größere Datenverarbeitungskapazität und -flexibilität erwünscht sind.
Das Mikroprogrammsteuerwerk enthält ein Steuerregister (Mikrobefehlsregister), eine Taktmatrix und eine Steuermatrix, die alle mit den Mikrobefehlsspuren auf der Magnetplatte zusammenarbeiten. Die aktive"Mikrospur (die ausgewählte Spur des Mikrobefehlsspeichers) speichert die Mikrobefehle, die gerade zur Ausführung eines Mikrobefehls oder Mikrobefehlteils erforderlich sind. Die die aktive Mikrospur besetzenden Mikrobefehle können sich an verschiedenen Stellen (Plätzen) der Spur wiederholen, um eine größere Zugriffsgeschwindigkeit bei Verwendung nur eines einzigen Lesekopfes zu erzielen. Die Mikrobefehle werden aus der aktiven Mikrospur in das Mikrobefehlsregister eingelesen, das seinerseits Ausgangssignale der Steuermatrix zuführt, die die geeigneten Spannungswerte zum Öffnen der zur Ausführung des Mikrobefehls erforderlichen Tore haben. Das Mikrobefehlsregister gibt auch Ausgangssignale an die Taktmatrix ab, die ihrerseits den Toren Signale im richtigen Augenblick, gesteuert durch synchronisierende Taktimpulse,
909825/1326
die aus den Taktspuren der Magnetscheibe gewonnen werden, zuführt. Das Mikrobefehlsregister, die Steuermatrix und die Taktmatrix sorgen zusammen für die Folgesteuerung des einfachen'Zustande der Rechenanlage.
Die Erfindung und Weiterbildungen der Erfindungen werden im folgenden anhand von Zeichnungen eines Ausführungsbeispiels näher beschrieben, wobei alle aus der Beschreibung und den Abbildungen hervorgehenden Einzelheiten zur Erfindung beitragen können und mit dem Willen zur Patentierung in die Anmeldung aufgenommen wurden.
Pig. 1 zeigt eine perspektivische Ansicht des Hauptgestells eines Rechners nach der Erfindung.
Pig. 2 ist ein Blockschaltbild der Hauptteile des in Pig. 1 gezeigten Rechners.
Pig. 3 ist eine schematische Darstellung des in dem erfindungs· geraäßen Rechner verwendeten Plattenspeichers.
Pig. 4 zeigt einen Teil des Plattenspeichers.
Pig. 5 ist eine schematische Darstellung eines in einer Spur des Speichers gespeicherten Wortes.
Pig. 6 zeigt als Blockschaltbild die Verbindungen zwischen dem Mikroprogrammsteuerwerk, dem Hauptspeicher und dem Datenverarbeitungswerk.
Pig. 7 zeigt ein Diagramm des Pormats der Mikroprogramme.
Pig. 8 ist ein Blockschaltbild, das zeigt, wie das Mikroprogrammsteuerwerk die Reihenfolge der auf der Magnetplatte gespeicherten Mikroprogramme steuert.
909825/1324
Pig. 9 ist ein Blockschaltbild, das zeigt, wie der Haupt- " speicher angewählt wird. ' .
Pig. 10 ist ein Blockschaltbild des Datenverarbeitungswerks.
Fig. 11 zeigt in perspektivischer Ansicht, wie eine einzelne (Paste der Tastatur ein kodiertes Signal bei der Kommunikation mit dem Eingabe/Ausgabe-Zwischenspeicher erzeugt.-
Fig. 12 zeigt in Draufsicht, wie der Drucker bei einer Ausführung der Erfindung arbeitet.
Fig. 13 veranschaulicht die Zusammengehörigkeit der Fig. 13A und 13B.
Fig. 13A,und 13B sind Blockschaltbilder der Rdchenanlage und zeigen die gegenseitige Anordnung der verschiedenen Teile der Rechenanlage.
Fig. 1 zeigt eine perspektivische Ansicht eines Tischrechners 100 nach der Erf-indung. Der Rechner ist mit einer alphanumerischen Tastatur 101 und einem Drucker 109 versehen. Die Tastatur 101 besteht aus einem alphabetischen; Teil 105 auf der linken Seite, einem numerischen Teil 107 auf der rechten Seite und einem Steuerteil 109- Der Drucker 103 enthält einen Kugelkopf 111, der parallel zur Druckwalze 113 bewegbar ist.
Dieser Tischrechner kann für viele Datenverarbeitungszwecke, z.B. zum Buchen in kleinen Betrieben verwendet werden. Die Bedienungsperson kann das Buchungsprogramm durch Drücken der entsprechenden Taste der Tastatur 109 auswählen. Dann kann sie über den alphabetischen Teil 105 und den numerischen Teil 107 der Tastatur von außen Daten eingeben, z.B. die Kennzahl des Käufers und die Teilenummern der gekauften Teile.
. " 909825/13,24
Wenn die Kennzahl des Käufers über die Tastatur 101 eingegeben ist, kann der Rechner die erforderlichen, den Käufer betreffenden Informationen auslesen, so daß der Druckkopf 111 den Namen des Käufers und die Kennzahl zusammen mit allen anderen erforderlichen Angaben auf dem Rechnungsvordruck ausdruckt, der in den Drucker 103 eingelegt ist. Dann kann die Bedienungsperson eine Teilnummer und eine einen einzelnen Kauf darstellende Menge tippen. Dann liest der Tischrechner, gesteuert vom ausgewählten Programm, die den durch die Teilnummer dargestellten Posten betreffende Information aus, druckt diese Information an der richtigen Stelle auf den Vordruck und berechnet einzelne Größen, wie Mehrwertsteuer· und den Gesamtpreis der speziellen Menge des Postens.
Die Bedienungsperson kann dann in dieser Weise fortfahren, wobei sie immer nur das erste Kennzeichen der Personen oder Posten mit Hilfe der Tastatur 101 eingibt, während der Rechner alle Informationen liefert, die in seinem Speicher gespeichert werden können, und selbsttätig alle Rechnungen ausführt, die bei dem von der Bedienungsperson ausgewählten Programm erforderlich-sind. Einige der Tasten der Tastatur 109 können außer auf Programmwahl auch auf die Verarbeitung außergewöhnlicher Posten, bei denen ein anderes Verarbeitungsprogramm erforderlich ist, als das Grund- oder gewöhnliche Maschinenprogramm, eingestellt werden.
-Wie aus dem in Pig. 2 dargestellten Blockschaltbild zu ersehen ist, enthält der Rechner eine Tastatur- und Druckereinheit 115, ein Eingabe/Ausgabe-Zwischenspeicher oder -Register 117, ein Datenverarbeitungswerk 119, einen Hauptspeicher 121 und ein Mikroprogrammsteuerwerk 123. Die Tastatur und der Drucker sind elektrisch und mechanisch voneinander unabhängig. Sie werden durch Mikrosteuerung koordiniert.
909825/1324
Jedesmal, wenn in der Tastatur eine Taste gedrückt wird, wird ein die Taste kennzeichnender Binärcode in den Tastaturzwischenspeicher eingegeben. Während eines Mikroprogramms wird' der Code aus dem Tastatur-Zwischenspeicher geholt und in den Eingabe/Ausgabe-Zwischenspeicher 117 zur weiteren Verarbeitung übertragen. Der Zwischenspeicher 117 überträgt den Code in das Datenveia?beitungswerk 119, wo er zum Abspeichern im Hauptspeicher 121 zu Wörtern zusammengestellt wird.
Der Eingabe/Ausgabe-Zwischenspeicher wird auch zur Adressierung des Hauptspeichers für Datenübertragungen zwischen dem Hauptspeicher und dem Datenverarbeitungswerk 119 verwendet. So wird beispielsweise nach der Zusammenstellung der Daten zu Wörtern im Datenverarbeitungswerk 119 ein Hauptspeicheradressenplatz in den Eingabe/Ausgabe-Zwischenspeicher 117 eingegeben. Dann werden die' Datenwörter über den Eingabe/Ausgabe-Zwischenspeicher 117 in den richtigen Speicherplatz eingegeben..
Das Datenverarbeitungswerk 119 erhält Informationen aus dem Hauptspeicher 121 und kann ebenfalls einige dieser Informationen in den Eingabe/Ausgabe-Zwischenspeicher 117 oder in den Hauptspeicher 121 zurück übertragen. Das Mikroprogrammsteuerwerk 123 erhält Informationen aus dem Hauptspeicher 121 und kann die Übertragung von Informationen aus dem Datenverarbeitungswerk 119 in den Hauptspeiher 121 bewirken.
In Fig. 3 ist der Hauptspeicher schematisch dargestellt. Bei dem Hauptspeicher handelt es sich um eine einzige Magnetplatte 125 mit 36 Spuren. Diese Spuren werden normalerweise nicht alle verwendet. Die äußere Spur ist eine Taktimpulsspur; und die nächste Spur ist eine Sektorimpulsspur. Diese beiden
909825/1324
Spuren sorgen für die Taktsteuerung des Rechners. Die unmitte bar neben der Sektorspur angeordnete Spur 133 wird für die beiden Umlaufspeicher verwendet, die mit dem Datenverarbeitungswerk zusammenarbeiten. Die Übrigen Spuren werden zur Speicherung von Daten, Makroprogrammen und Mikroprogrammen verwendet.
Jede Speicherspur enthält 32 Wörter in ihrer Längsrichtung, und jedes Wort enthält 64 Bits. Bei derjenigen Ausführung des Rechners, bei der Metalloxid-Halbleiterregister verwendet werden, wird die von den Umlaufspeichern besetzte Plattenfläche für andere Zwecke, z.B. als Zwischenspeicher und Datenspeicher verwendet.
In Fig. 4 ist ein Sektor 127 der Platte 125 gezeigt. Aus dieser Darstellung ist die relative Anordnung der Taktspur 129, der Sektorspur 131, der Spur 133, die für die beiden Umlaufspeicher verwendet wird, und der als Hauptspeicher verwendeten Spuren 137 zu erkennen. Der Hauptspeicher ist in einen Mikro- und einen Makrospeicherteil unterteilt. Der Mikrospeicherteil enthält die Mikrobefehle zur Ausführung aller.Maschinenoperationen. Der Makrospeicherteil enthält die Daten und Programmbefehle, die über das gespeicherte Mikroprogramm ausgeführt werden. Der Makrospeicherteil kann über die Eingabe-Tastatur dahingehend geändert werden, daß der Rechner verschiedene logische Operationen mit den gespeicherten oder anschließend eingegebenen Daten ausführt.
In Pig. 5 ist das Format aller 32 Wörter einer Spur dargestellt. Jedes Wort enthält 64 Bits, die in vier 16-Bit-Silben unterteilt sind. Jede Silbe ist 'in zwei 18-Bit-Zeichen und jedes Zeichen in zwei Vier-Bit-Ziffern unterteilt.
909825/1324
Das Blockschaltbild nach Pig. 6 zeigt, wie das Mikroprogramm-Steuerwerk 123 an die Magnetplatte 125 und das Datenverarbeitungswerk 119 angeschlossen ist, wobei das Datenverarbeitungswerk 119 den Addierereingangswähler 145 und den Addierer 147 enthält. Eine Gruppe magnetischer Leseköpfe 149 tastet die einzelnen Spuren der Magnetplatte 125 ab.
Einer dieser Köpfe tastet die aktive Mikrospur ab, die die Mikrobefehle enthält, die als nächste ausgeführt werden sollen. Dieser Lesekopf ist elektrisch mit dem Steuerregister 151 verbunden. Die Mikrobefehle brauchen nicht in derselben Reihenfolge längs der Spur angeordnet zu sein, in der sie in das Steuerregister 151 zur Ausführung eingelesen werden müssen, da alle Mikrobefehle die Adresse des nächsten Mikrobefehls enthalten, der in dieses Steuerregister eingelesen werden soll. Deshalb kann die richtige Reihenfolge bei der Ausführung der Mikrobefehle eingehalten werden, obwohl sie nicht in einer gleichbleibenden Reihenfolge in der aktiven Mikrospur angeordnet zu sein brauchen. .
Einige der Mikrobefehle sind mehrere Male in den Mikrobefehlsspuren aufgezeichnet, so daß sie in kürzerer Zeit unter dem Lesekopf erscheinen, nachdem sie von dem Adressteil des Mikrobefehls im Steuerregister 151 adressiert wurden. Der letzte Mikrobefehl enthält die Adresse der nächsten Mikrospur, die den auszuführenden Mikrobefehl enthält. Die Spur, die diesen Mikrobefehl enthält, wird vom Spurbestimmungsregister 181 (Fig. 9) bestimmt.
Die Steuermatrix 153 erhält Signale parallel aus dem Steuerregister 151, das den auszuführenden Mikrobefehl enthält. Die Steuermatrix gibt zweiwertige Spannungen über ihre Ausgangsleitungen 155 ab, wobei diese Ausgangsspannungen die im Steuerregister gespeicherten Mikrobefehle de-
9098 25/1324
kodieren. Über die Ausgangsleitungen wird jeweils einem der Tore, die das Datenverarbeitungswerk 119 des Rechners steuern, ein Signal zugeführt. Die Ausgangssignale des Steuerregisters 151 werden auch der Taktmatrix 157 zugeführt Die Taktmatrix 157 erhält ferner·. Signale von einem Zähler 159. Die Kombination dieser Signale aus dem Steuerregister 151 und dem Zähler 159 bewirkt die Erzeugung von Ausgangssignalen auf den Ausgangsleitungen 161 der Taktmatrix 157. Der Zähler 159 erhält Impulse aus den Takt- und Sektorspuren der Magnetplatte 125, die die Ausgangssignale auf den Leitungen 161 mit der Umdrehung der Platte 125 synchronisieren.
Die Steuermatrix 153 und die Taktmatrix 157 sind nicht im einzelnen dargestellt. Die Ausgangssignale dieser Matrizen wählen die Tore aus, die Verbindungen zwischen den verschiedenen Teilen des Rechners in Abhängigkeit vom Code des Mikrobefehls, der im Steuerregister 151 gespeichert ist, herstellen sollen.
In Fig. 7 ist das Format der Mikroprogramme gezeigt. Der Rechner arbeitet in der hexadezimalen Maschinensprache, so daß jeder Mikrobefehl 163 sechzehn Bits enthält. Jeder Mikrobefehl enthält in diesen 16 Bits die Adresse desjenigen Befehls, der als nächster ausgeführt werden soll. Jedes Mikrowort 165 enthält vier Mikrobefehle. Jede Mikrospeicherspur auf der Platte enthält 32 Mikrowort er und wird Mik'rospur genannt. Die Mikrobefehle, die ein Mikrowort bilden, sind nicht notwendigerweise nebeneinander angeordnet, sie werden jedoch zeitlich nacheinander gelesen.
In Pig. 8 ist ein Blockschaltbild des Mikroprogrammsteuerwerks gezeigt, das das Steuerregister 1-51 (Mikrobefehlsregister), die Steuermatrix 153, die Taktmatrix 157, den Taktzähler 159 und die Magnetplatte 125 enthält. Die
909825/1324
Magnetplatte hat eine Taktspur 129, die einen Impuls in Idem Bitzeitpunkt liefert, und eine Sektorspur 131, die die Adresseninformation für jeden der Sektoren auf der Platte enthält. Die in der Sektorspur aufgezeichneten Impulse werden vom Lesekopf 168 abgetastet und zum Taktzähler 159 und der Taktmatrix 157 übertragen. Die in der Taktspur 129 enthaltenen Impulse werden vom Lesekopf 169 abgetastet und zum Taktzähler 159 übertragen. Die Taktspur 129 schaltet den Zähler 159 weiter. Die Sektorspur wirkt als Zählerverlängerung, die den Zählbereich von 25 auf 211 Bits erhöht. Der Zähler 159 liefert zusammen mit der Sektorspur die Information zur Anordnung jedes Kommas oder Punktes auf der Platte.
Die Mikrobefehle werden, gesteuat von der Taktmatrix 157, aus der ausgewählten Datenspeicherspur von der Magnetplatte abgelesen und in das Mikröbefehlsregister 151 übertragen. Die Taktmatrix 157 schaltet das UND-Glied 177 durch, wenn sich der ausgewählte Kopf 175 über dem ersten Bit des Mikrobefehls befindet, der zuletzt adressiert wurde. Jeder Mikrobefehl adressiert denjenigen Mikrobefehl, der ihm folgen soll. Wenn der nächste Mikrobefehl unter den nächsten 16 'Befehlen auf derselben Spur wie derjenige Mikrobefehl angeordnet ist, der im Mikrobefehlsregister 151 gespeichert ist, werden die vier höchsten Bits , die zuletzt aus der Spur abgelesen werden, des Mikrobefehlsregisters 151 als dessen Adresse der Steuermairix 153 zugeführt, die bewirkt, daß die TaktmatrIx 157 das UM)-Glied 177 im richtigen Zeitpunkt durchschaltet, um einen neuen Befehl ins Mikrobefehlsregister 151 einzulesen. Bei einigen Befehlen ist nicht gewährleistet, daß der nächste Befehl vom Programmierer innerhalb der folgenden 16 Befehle, gerechnet vom Zeitpunkt der Ausführung des !atzten Befehls, angeordnet werden kann, so daß drei weitere Bits aus dem Mikröbefehlsregister 151 in diesen Mikrobefehlen zur
909325/1324
Adressierung des nächsten Befehls auf derselben Spur verwendet werden. Irgendein Befehl auf derselben Spur kann durch diese sieben Bits adressiert werden. Wenn ein Befehl auf einer anderen Spur adressiert werden soll, die dann zur aktiven Mikrospur wird, können hoch vier weitere Bits des gerade im Mikrobefehlsregister 151 gespeicherten Befehls verwendet werden. Durch diese Maßnahme kann eine ständige Folge von Mikrobefehlen geschaffen werden. Diese Befehle können auch die Adresse des folgenden Befehls bestimmen, die durch Informationen außerhalb des Befehls im Mikrobefehlsregister ausgewählt werden sollen, um für Sprungoperationen zu sorgen. Wenn der erste Mikrobefehl in der aktiven Mikrospur unter dem Lesekopf 175 vorbeiläuft, bewirkt die Taktmatrix 157, daß der abzutastende Mikrobefehl über das UND-Glied 177 in das Mikrobefehlsregister 151 übertragen wird. Dies geschieht, wie beschrieben, durch das Einwirken der Steuermatrix 153 auf die letzten vier oder sieben Bits des vorangegangenen Mikrobefehls im Mikrobefehlsregister in Verbindung mit dem Taktzähler 159 und der Taktmatrix 157.
Der Mikrobefehl wird durch das Zusammenwirken der Steuermatrix, der Taktmatrix und des Taktzählers bei der Steuerung , der Tore im Datenverarbeitungswerk des Rechners ausgeführt. Die letzten Adressenbits des Mikrobefehls bewirken ferner, daß der nächste Mikrobefehl aus der aktiven Mikrospur in; das Mikrobefehlsregister 151 zur Ausführung eingelesen wird. Um Zeit bei der Maschinenoperation zu gewinnen, werden die ersten acht Bits jedes Mikrobefehls ins Register 151 eingegeben. Wenn bei Überprüfung des 9ten Bits festgestellt wird, daß der richtige Mikrobefehl nicht vorhanden ist, dann werden die ersten acht Bits des nächsten Mikrobefehls eingegeben, und so weiter, bis der richtige Mikrobefehl eingegeben ist. Dieses Herausziehen eines der aktiven Mikroprogrammschritte und die Ausführung dieses Schrittes geschieht in vier größeren Phasen:
909825/1324
1) Mikrobefehlssuche
Die Logik wartet solange, bis das neunte Bit des ausgewählten Mikrobefehlsschrittes gerade am Leseverstärker der aktiven Mikroprogrammspur erscheint.
2) Mikrobefehlseingabe
Der ausgewählte Mikrobefehl wird ins Register 151 eingelesen.
3) Operandensuche
Der Inhalt des Mikrobefehlsregisters 151 wird durch die Steuermatrix dazu verwendet, aus einigen aufeinanderfolgenden Taktimpulsen den für diesen Befehl geeigneten auszusuchen. Die Logik wartet dann solange, bis die ausgewählte, durch die Taktmatrix bestimmte Information zur Verfügung steht.
4) Ausführung
Die Operation wird dann ausgeführt. Wenn die Zeit für die Ausführung zuende ist, kehrt die Taktmatrixlogik in die Phase 1 zurück, wo sie wartet, bis der nächste Mikrobefehl am Leseveisfcärker der aktiven Mikrospur erscheint.
Es gibt zwei mögliche Befehle zur Auswahl der aktiven Mikrospur. Der eine Befehl wählt die aktive Mikrospur anhand einer in dem vorangegangenen Mikrobefehl enthaltenden Adresse aus und der andere wählt die Mikrospur anhand einer im Eingabe/ Ausgabe-Zwischenspeicher 117 des Rechners enthaltenen Adresse aus. Die zuletzt genannte Adresse kann über die Tastatur, aus dem Datenverarbeitungswerk oder dem Speicher des Rechners programmgesteuert eingegeben werden.
909825/1324
In Fig. 9 ist ein Blockschaltbild der den Zugriff zum Haupt- · speicher 121 über die Kopfauswahlmatrix 179 herstellenden Einrichtung zeigt. Bei der Auswahl der Adresse zum Einlesen oder Einschreiben von Informationen in den Speicher 121 sind drei Register beteiligt. Diese sind das Mikrobefehlsregister 151, das Spurenbestimmungsregister 181 und das ■ Eingabe/Ausgabe-Register 117. Die Taktmatrix 157, die Steuermatrix 153, der Taktzähler 159 und die Takt- und Sektorspuren unterstützen die Spureinhaltung der Lese- und Schreibköpfe auf der Magnetplatte, die im Speicher 121 verwendet wird.
Ein spezielles Flipflop (Fc) 143 wird in Ausnahmefällen verwendet, in denen es nötig ist, den Mikrospeicherteil in den Makrospeibherteil auszudehnen. Mit Hilfe des Flipflop 143 kann der Mikrospeicherteil auf 16 weitere Spuren ausgedehnt werden. Eine Ausdehnung des Mikrospeicherteils läßt sich durch Einfügen einer Markierung beim Programmieren erreichen und ist besonders bei sogenannten Sprungoperationen zweckmäßig.
Die Synchronisierschaltung 183 (Fig. 13A) spricht auf eine vorbestimmte Folge von 15 Impulsen der gleichen Polarität an, die in der Sektorspur der Magnetplatte aufgezeichnet sind, um die Ausgangs- oder Anfangslage der Magnetplatte zu kennzeichnen. Wenn die Synchronisierschaltung 183 diesen Code in einer Anfangslage für einen Umlauf der Magnetplatte nach dem Einschalten der Anlage oder nach einem Fehler feststellt, löscht sie den Zähler, der zur Speicherung der Lage der Lese- und Schreibköpfe auf der Platte verwendet wird. Er zählt dann die Stellen, um die sich die Platte von den in der Taktimpulsspur und der Sektorspur aufgezeichneten .Bits wegbewegt hat. Die Sektorspur hält den Code für jedes Zeichen auf der Magnetplatte fest, und der Taktimpulszähler 159 zählt in Verbindung mit der Taktspur 129 bei jedem längs der Spur auftretenden Bit um einen Schritt weiter.
909825/1324
Der Zugriff zum Hauptspeicher, d.h. das Ein- und Auslesen, kann auf drei Arten erfolgen:
1)· Durch eine PoIge von zwei oder mehreren Mikrobefehlen, von denen alle mit Ausnahme des letzten Befehls die Adresse
ι,
ändern, wobei das Ergebnis im Eingabe/Ausgabe-Register abgespeichert wird. Der letzte Mikrobefehl wählt eine Spur aus der aus acht Spuren bestehenden Gruppe aus, die am Zugriff beteiligt ist und verwendet fünf der acht Bits des Eingabe/Ausgabe-Registers zur Auswahl des Wortes in der Spur. Die Adresse der Spur ist in den anderen drei Bits (Plipflops) enthalten.
2) Durch eine ähnliche Mehrfach-Mikrobefehlsoperation, bei der vier Bits des Eingabe/Ausgabe-Registers ins Spurbestimmungsregister 181 übertragen werden, um die Spur auszuwählen, und drei Bits des Mikrobefehlsregisters 151 und vier Bits des Eingabe/Ausgabe-Registers einen von 128 Mikrobefehlen in der ausgewählten' Spur auswählen.
3) Durch einen einzigen Mikrobefehl, bei dem die Adresse eines Mikrobefehls durch 11 Bits des Mikrobefehls vollständig bestimmt ist. Auch hier werden vier Bits ins Spurbestimmungsregxster übertragen, um die aktive Mikrospur auszuwählen.
Das Mikrobefehlsregister 151 schaltet in Verbindung mit dem Zähler 159 die dem ausgewählten Kopf in der Kopfauswahlmatrix 179 nachgeschalteten Tore im richtigen Augenblick durch. Die Spur wird durch das Spur-Bestimmungsregister 181 ausgewählt. Anstelle des Mikrobefehlsregisters 151 kann auch da£ Eingabe/Ausgaberegister 117 die Adresse des als nächstes auszuwählenden Wortes enthalten.
909825/1324
In Figur 10 ist ein Blockschaltbild des Datenverarbeitungswerks des Rechners zusammen mit den zum Speicher 121, dem Mikrobefehlsregister 151 und dem Eingabe/Ausgabe-Steuerwerk 115 führenden Verbindungen gezeigt. Ein Einwort-Umlaufspeicher 187 ist über das Tor 189 und das Tor 191 mit dem Speicher verbunden. Der Umlaufspeicher 187 wird zur Synchronisierung von Informationen während der Übertragung der Informationen aus dem Datenverarbeitungswerk in den Speicher 121 über das Tor 189 und zur Synchronisierung der Informationsübertragung aus dem Speicher 121 ins Datenverarbeitungswerk über das Tor 191 verwendet. Ein Vier-Wort-Umlaufspeicher 193 speichert Informationen, die bei der Folgesteuerung von Mikrobefehlen und zur Kurzzeitspeicherung von Daten, die der Rechner verarbeiten soll, verwendet werden.
Ein Addierer-Eingang-Auswahlnetz'werk 145 steuert die Übertragung von Informationen incen im Serienbetrieb arbeitenden Addierer-Subtrahierer 147. Das Netzwerk 145 erhält Informationen aus dem Umlaufspeicher 187 über die Leitung 195, aus dem Mikrobefehlsregister 151 über die Leitung 197, aus den vier höchsten Bitstellen des Eingabe/Ausgabe-Registers 117 (Zone) über die Leitung'201 und aus den vier niedrigsten Bitstellen des Eingabe/Ausgabe-Registers 117 (Ziffer) über die Leitung 203.
Eine "Übertrag"-Schaltung 205 wird zusammen mit dem Addierer-Subtrahierer 147 verwendet. Der Ausgang des Addierer-Subtrahierers 147 ist mit dem Umlaufspeicher 187 verbunden. Er ist außerdem mit den in dem Umlauf-Speicherkreis 193 liegenden Schaltungen verbunden: Dem Eingang zur "Zone",dem Eingang zur "Ziffer" und dem Eingang zum A-Register 207, das zwischen dem Eingabe/Ausgabe-Zwischenspeicher und dem Eingang des Umlaufspeichers 193 liegt.
909825/1324
Der Addierer-Subtrahierer 147 arbeitet im Binärcode. Vor dem Addieren wird entweder zum Augenden oder zum Addenden eine binäre Sechs addiert. Durch das Addieren der binären Sechs, wie es bei 317 in Pig.13A gezeigt ist, wird die Differenz zwischen den Übertirag-Ziffern im binären und dezimalen System korrigiert. Die Subtraktion kann nach dem Komplementärverfahren ausgeführt werden. Das Übertrag-Signal zeigt dabei jedesmal an, wann eine größere Zahl von einer kleineren subtrahiert wurde, so daß der Vorgang umgekehrt "und die richtige Differenz gebildet werden kann. Das Übertrag-Signal zeigt auch an, wann eine Sechs von der Summe oder •Differenz subtrahiert werden muß, weil eine Dezimal-Sechs-Korrektur nicht notwendig ist. Bei dem Addierer handelt es sich um einen gewöhnlichen Serienaddierer für binäre Zahlen mit einem getrennten Eingang für Subtraktion.
In Pig. 11 wird anhand einer typischen Taste der Tastatur gezeigt, wie ein codiertes Ausgangssignal beim Drücken einer Taste erzeugt wird. Der Tastendruckknbpf ist am Ende eines Hebels 209 befestigt. Wenn dieser Hebel nach unten gedrückt wird, wird eine Gabel 211 zwischen ausgewählte Codierstäbe 213, 215 und 217 geschoben. Diese Codierstäbe sind lediglich als Beispiel gewählt. Pur die Tastatur wird ein 8-Bit-Code verwendet, so daß acht verschiedene Codierstäbe erforderlich sind: für jedes Bit einer. Die Codierstäbe werden zur Eingabe von Daten, Makro- und Mikrobefehlen verwendet. Dieselben Codierstäbe werden zur Änderung des MikroSpeicherbereichs im Hauptspeicher verwendet, um den Rechner zur Ausführung verschiedener logischer Operationen anzupassen. Wenn eine Taste gedrückt wird, werden vorbestimmte Codierstäbe durch die Vorsprünge 219 und 221 nach links in Pig. 11 verschoben.
Jeder Codierstab liegt in einem Schlitz eines Winkelhebels 223» so daß der Winkelhebel geschwenkt wird, wenn der Codierstab vorwär.ts (d.h. nach links in Pig. 11) bewegt wird. Wenn der·Winkelhebel geschwenkt wird, dreht er sich durch den
909825/1324
.. Luftspalt zwischen einem ferromagnetischen Kern 225 und einem Dauermagneten 227.
Eine um den ferromagnetischen Kern 225 gewickelte Schaltwicklung 229 schaltet den Kern von einem Zustand in den anderen, wenn der Winkelhebel 223, der als Schirm oder Nebenschluß wirkt, sich zwischen den Dauermagneten 227 und dem Kern 225 befindet. Wenn sich der Winkelhebel 223 nicht zwische dem Dauermagneten 227 und dem Kern 225 befindet, ist der Kern gesättigt, so daß er nicht vom Feld des Dauermagneten umgeschaltet werden kann. Wenn der ferromagnetische Kern ' nicht gesättigt ist, wird durch den Schaltvorgang eine Spannun, in einer Wicklung erzeugt und dem Rechner als binäre 1 zugeführt .
Die Gabel 211 bewegt nur diejenigen Codierstäbe nach vorne, bei denen in der ihnen zugeordneten Binärstelle des Acht-Bit-Zeichens eine binäre Eins auftreten soll.
In Fig. 12 ist die Vorderansicht einer Ausführung des in diesem Rechner verwendeten Druckers gezeigt. Er enthält einen Kugelkopf 111, der auf das gewünschte Zeichen geschaltet und über ein Farbband auf das Papier gedrückt wird, das an der Druckwalze 113 anliegt. Der Druckkopf ist an einem Träger 231 befestigt, der durch eine Spindel 233 parallel zur Druckwalze 113 an die gewünschte Stelle bewegt.wird. Er gleitet ferner auf einer Schiene 235.
Jedesmal wenn der Träger 231 um eine Druckstelle weiterbewegt wird, erhält ein Umformer 237, der auf einem Träger angeordnet ist, ein Signal. Das Signal ist auf die Zähne einer Zahnstange 239 bezogen. Die Lage des Trägers wird von einem Zähler registriert, der die vom Umformer 237 abgegebenen Signale zählt. Die richtige Druckstelle wird dadurch festgestellt, daß ein Vergleicher, der den Zählerstand des
909825/132/;
Zählers mit einer Zahl vergleicht, die vom Rechner geliefert wird, bei Übereinstimmung des Zählerstandes mit der Zahl einen Elektromagneten 241 veranlaßt, eine Klinke 243 freizugeben. Die Klinke 243 greift in die Zähne der Zahnstange 239 ein, die am Rahmen des Rechners befestigt ist, und bewirkt dadurch, daß der Träger 231 angehalten wird, so daß der Druckkopf 111 ein Zeichen drucken kann.
Die Fig. 13A und 13B sind Teile eines Blockschaltbildes der Rechenanlage. Sie zeigen die Verbindungen des Hauptspeichers 121 mit dem Umlaufspeicher 187, dem Steuerregister (Mikrobefehlsregister) 151, der Steuermatrix 153, dem Addierer 147, dem Umlaufspeicher 193 und der Taktmatrix 157. Die Torschaltkreise, Synchronisierschaltkreise und die Eingabe/ Ausgabe-Einrichtung sind ebenfalls in diesen Figuren gezeigt.
Wie in Fig. 10 ist der Eingabe/Ausgabe-Zwischenspeicher in Fig. 13B mit zwei 4-Bit~Registern 245 und 247 dargestellt. Die Daten und Befehle werden entweder durch die Tastatur, über den Tastatur-Zwischenspeicher oder durch einen Lochkartenleser 251 über den Eingabeschalter 249 (Pig. 13A) in den Zwischenspeicher 117 eingegeben. Nach Durchlaufen des Eingabeschalters 249 wird die Information über ein Tor 255 in den Eingabe/Ausgabe-Zwischenspeicher 117 durchgeschaltet.
Die Bits der vier höchsten Stellen im Eingabe/Ausgabe-Zwischenspeicher 117 befinden sich im Z^onen-Register 247 und die Bits der vier niedrigsten Stellen im Ziffer-Register 245. Das Zonen-Register und das Ziffer-Register sind über ein Tor verbunden.
Drei der vier höchsten Bitspeicherplätze im Zonen-Register sind über ein Tor 259 mit der Kopfauswahlmatrix, verbunden. Die Bits dieser Speicherplätze sind bei der Auswahl des lesekopfes oder Schreibkopfes, der betätigt werden soll,
909826/1324
behilflich. Die aktive Mikrospur wird durch Informationen aus einem H-Register 261 ausgewählt. Zwei Bits aus dem Steuerregister 151 und drei Bits aus dem Zonen-Register 247 bestimmen den zu besetzenden oder auszulesenden Speicherplatz des Umlaufspeichere 187.
Der Eingabe/Ausgabe-Zwischenspeicher 117 führt dem Ausgabeechalter 267 auch aus dem Ziffern-Register 245 und aus dem Zonen-Register 247 über das !or 271 Informationen zu. Der Ausgabesohalter 267 erhält ferner Informationen aus dem Register 151 (Pig. 13A), das den Informationsfluß vom Eingabe/ Ausgabe-Zwischenspeicher 117 über den Ausgabesohalter 267 zu den Ausgangskreisen steuert. Der Ausgabeschalter steuert Anzeigelampen 273, die über der Tastatur angebracht sind, um die ausgewählten Tasten anzuzeigen. Die Lampen können von einer Anzeigesteuerschaltung 275 gesteuert werden. Der Ausgabeechalter 267 steuert auch die Pormularhandhabungssireuerung 277 und die LocSteuerung 279.
Die Druckerträgersteuerung 281 erhält die Daten zur Steuerung des Druckkopfes 111 vom Eingabe/Ausgabe-Schalter 267. Sie erhält außerdem Signale.von einem Flipflop 283 (Pig. 13A), das der Druckerträgersteuerung 281 anzeigt, wann sich der Druckkopf 111 drei Stellen vor derjenigen Stelle, an der er anhalten soll, befindet. Sie zählt von dieser Stelle bis zur Halt-Stelle und steuert die Geschwindigkeit so, daß der Träger allmählich abgebremst wird und schließlich an der richtigen Stelle anhält. Die Druckerträgersteuerung überträgt auch zur Eingabe/Ausgabe-Synchronisationsschaltung 185 und zum Eingabeschalter 249 Signale, die die Anzahl der Stellungen anzeigen, um die sich der Träger weiterbewegt hat.
Das 4-Bit-Register 207 und der Umlaufspeicher 193, der mit der Magnetplatte verbunden ist, bilden zusammen einen vier V/örter
909825/1324
langen Umlauf speicher. Der Daten'fluß kann dabei vom Register 207 durch das Tor 285 zum Umlaufspeicher 193 und vom Umlaufspeicher 193 durch das Tor 286 zurück zum Register 207 verlaufen. Das Tor 286 ist normalerweise geöffnet, sofern ein Eingabetor, z.B. 291, 309 oder 290, geöffnet ist. Wenn ein Eingabetor geöffnet ist, ist das Tor 286 geschlossen, und es bleibt solange geschlossen, bis das Eingabetor geschlossen wird. In diesem Augenblick öffnet sich das Tor 286 wieder, um erneut einen Umlauf im Umlaufspeicher 193 zu gestatten.
In den Umlaufspeicher 187 können entweder aus dem Hauptspeicher 121 über das Tor 191, aus dem'Addierer über das Tor 299 oder von seinem eigenen Ausgang über das Tor 303 Informationen übertragen werden. Über das Tor 189 können Informationen aus dem Umlaufspeicher 287 in den Hauptspeicher 121 übertragen werden. Das Tor 303 im Kreis des UmlaufSpeichers 187 wirkt praktisch in derselben Weise wie das Tor 286 im Kreis des UmlaufSpeichers 193. Das Tor schließt sich beim Öffnen irgendeines anderen Eingabetors des UmlaufSpeichers 187, um ein Vermischen der umlaufenden und der eingegebenen Information zu verhindern.
Der Umlaufspeicher 187 wird auch zur Verbindung des Hauptspeichers 121 mit dem Umlaufspeicher 193 verwendet. Es gibt zwei Wege vom Hauptspeicher 121 über den Umlaufspeicher 187 zum Umlaufspeicher 193. Der eine Weg steht zur Direktübertragung von Wörtern über den Addierer 147 in den Umlaufspeicher 193 für Additions- und Subtraktionszwecke zur Verfügung. Der andere Weg dient zur Übertragung von Ziffern oder Zeichen aus dem Umlaufspeicher 187 ins Eingabe/Ausgabe-Register 117, um den Inhalt des UmlaufSpeichers 193 durch einen anderen Mikrobefehl zu ändern.
909825/1324
Rechenoperationen und logische Operationen werden normalerweise mit Hilfe des UmlaufSpeichers 193 ausgeführt, wobei der Umlaufspeicher 187 zur Synchronisation der Daten- und Befehls-Eingabe und -Ausgabe in den bzw. aus dem Hauptspeicher verwendet wird. Einige Rechenoperationen und logische Operationen v/erden mit Hilfe des Umlauf speichere . ausgeführt, wenn eine kurze Zykluszeit erwünscht ist. Dem Vorteil des schnelleren Zugriffs steht der Nachteil gegenüber, daß der Umlaufspeicher 187 zur Steuerung des Zugriffs zum Hauptspeicher verwendet werden muß. Eine Sektorspur 131 und eine Taktspur 129 der Magnetplatte, die den Hauptspeicher 121 enthält, führt dem Taktzähler 159 und der Taktmatrix 157 Signale zu.
Die Synchronisierschaltung 183 überprüft die Sektorspur des Hauptspeichers 121 auf Anfangssignalcodes. Beim Anfangen (Einschalten der Anlage) oder beim Auftreten eines Fehlers löscht sie den Taktzähler 159. Der Taktzähler 159 erhält dann Impulse aus der Taktspur 129 und der Sektorspur 131. Er gibt Signale an die Taktmatrix 157 ab, die den Zeitpunkt, in dem die Kopfauswahlmatrix 179 das Ablesen von Informationen von der Magnetplatte veranlaßt, und den Zeitpunkt bestimmen, in dem Tore durch die Steuermatrix 153 gecffnet werden sollen. Ein spezielles Stromversorgungseinschalt-Mikroprogramm gibt die Adresse in ein H-Register 261 der Anfangsmikrospur ein. Die einzelnen Mikrobefehle werden dann in das Register 151 eingelesen, wo sie zur Ausführung der Makrobefehle verwendet werden. Pur jeden einzelnen Makrobefehl kann ein individuellüs Mikroprogramm verwendet werden. Einige wenige Mikrobefehle (Fig. 13) dienen zur Erläuterung der Art und Weise, in der sie den Rechner steuern, um .ihn vielseitig und wirtschaftlich arbeiten zu lassen.
9825/1324
Ein ausgewähltes Wort kann im Umlaufspeicher 193 um vier Bitstellen, gesteuert vom Mikroprogramm, verschoben werden. Dabei wird das Tor 307 geöffnet, so daß das ausgewählte Wort vom Ausgang des UmlaufSpeichers 193 direkt in seinen Eingang zurückgeführt wird, ohne durfch das A-Register 207 zu laufen. Wenn das Tor 307 geöffnet wird, wird gleichzeitig das Tor 2 95 geschlossen. Wenn 307 geschlossen ist, dann ist 285 geöffnet, so daß eine weitere Verschiebung oder der Verlust von Informationen verhindert wird. Der Inhalt des Registers 207 wird weiter verschoben, wenn das Tor 307 geöffnet ist, wobei Nullen ins Register geschoben v/erden. Durch diese Operation wird der Umlaufspeicher 193 um vier Bits verkürzt. Der Mikrobefehl im Register 151 endet vier Bits vor dem Wortendezeitpunkt, so daß vier Nullen aus dem A-Register 207 in die höchsten Ziffernstellen des Wortes eingegeben werden und die Rechtsverschiebeoperation beendet werden kann.
Der Inhalt des Umlauf Speichers 193 läßt sich durch Öffnen der Tore 293, 289 und 309 um vier Bits nach links verschieben, Diese Tore sind während der Dauer eines Wortes geöffnet. Durch diese Operation wird das Ziffer-Register 245 zum Weg des Umlaufspeichers 193 addiert, indem er um vier Bits verlängert wird. Eine Verlängerung des UmlaufSpeichers 193 bewirkt, daß die Information, die er enthält, nach links oder von der niedrigsten Ziffernstelle weg verschoben wird. Wenn die Steuerpegel ein ganzes Wort lang andauern, dann enthält das Ziffer-Register am Ende der Operation die zuletzt in den vier höchsten Bitstellen des ausgewählten Wortes im Umlaufspeicher 193 enthaltenen Bits, während die niedrigsten vier Bitstellen des ausgewählten Wortes das .enthalten, was vor der Ausführung dieses Schiebe-Mikrobefehls im Ziffer-Register 245 gespeichert war, und die übrigen fünfzehn 4-Btt-Ziffern im Umlaufspeicher 193 werden um eine Ziffer nach links verschoben.
909825/1324
Ein im Umlaufspeicher 187 gespeichertes" Wort kann durch ein im Umlaufspei&er 193 gespeichertes Wort dadurch ersetzt werden, daß die Tore 289, 299 und 290 geöffnet werden. Auf diese Weise läßt sich ein ausgewähltes Wort aus dem Umlaufspeicher 193 über den Addierer 14.7 in den Umlaufspeicher und das in dem Umlaufspeicher 187 gespeicherte Wort direkt in den Umlaufspeicher 193 übertragen.
Der Inhalt des UmlaufSpeichers 187 läßt sich durch Öffnen der Tore 289, 311, 291 und 313 zu einem ausgewählten Wort im Umlaufspeicher 193 hinzuaddieren. Durch öffnen des Tores 313 ist der Ausgang des Flipflop 205 mit dem Eingang des Rechenwerks verbunden. Der Dezimalkorrektureingang 317 ist mit dem A-Register 207 verbunden, um die im Register gespeicherten Daten direkt zu ändern.
Der Inhalt irgendeiner 4-Bit-Ziffer im Umlaufspeicher 193 kann durch Öffnen der Tore 289, 319, 293 und 291 im richtigen Ziffernzeitpunkt- zum Inhalt des Ziffernregisters 245 hinzuaddiert .werden. Am Ende der Operation ist der Inhalt der ausgewählten 4 Bits im Umlaufspeicher 193 und der Inhalt des Ziffernregisters 245 identisch und gleich der Sechserdezimalsumme der zwei Vier-Bit-Zeichen. Das Übertragflipflop wird gesetzt, wenn die Summe größer als 15 ist.
Wenn im Hauptspeicher 121 gespeicherte Daten geändert werden sollen, wird die Acht-Bit-Adresse des ausgewählten Wortes aus dem entsprechenden Block des Hauptspeichers in den Eingabe/Ausgabe-Zwischenspeicher 117 eingegeben. Das Nummernfeld dieses Mikrobefehls bestimmt, welcher Block von 8 Spuren angewählt werden soll. Fünf Bits des Eingabe/Ausgabe-Zwischenspeichers 117 vervollständigen die Zeitsteuerung des Befehls, der eines von 32 Wörtern, die in der ausgewählten Spur aufgezeichnet sind, auswählt. Das ausgewählte Wort wird dann aus dem Umlaufspeicher 187 durch Öffnen des Tores 189 in diesen Platz eingelesen.
909825/1324
Wenn eine Teilnummer oder eine Käufernummer als Teil eines Pro gramms, z.B. eines Programms zum Ausfüllen eines Rechnungsformulars, über die Tastatur in den Eingabe/Ausgabe-Zwischenspeicher 117 eingetippt wird, wird ein Makroprogramm ausgewählt, um diejenigen im Hauptspeicher gespeicherten Daten in das Formular einzutragen, die der Teil- oder.Käufernummer entsprechen und um alle Rechnungen auszuführen, die mit anschließend eingegebenen Daten, z.B. den Daten für die Preise der Posten, erforderlich sind.
Die Reihenfolgesteuerung der Mikrobefehle kann bei einem mikropgrogr aminiert en Rechner auf verschiedene Arten erfolgen. Da die Mikrobefehle vom Mikroprogramm gesteuert werden, lassen sich verschiedene Pormate verwenden, z.B. selbstadressierte Befehle, oder es kann ein Programmzähler zur Steuerung der Reihenfolge verwendet werden.
Bei dieser Ausführung wird ein Programmzähler verwendet, Dieser Programmzähler ist ein im Umlaufspeicher 195 angeordneter "Software"-Zähler. Er wird von den letzten 8 Bits des dritten Wortes des Umlaufspeichers 193 gebildet, der, wie oben erwähnt, vier Wörter lang ist. Der Programmzähler wird dadurch weitergeschalt et, daß das Übertrag-Steuerflipflop 205 gesetzt und der Übertrag im Addierer 147 zum Zählerstand ■ hinzuaddiert wird. Dies geschieht, gesteuert vom Mikroprogramm, jedesmal, wenn ein Mikrobefehlswort ausgeführt wird.
Mit Hilfe eines Silbenzählers wird einer von vier Befehlen registriert, die in jedem Makrobefehlswort enthalten sind, das gerade ausgeführt wird. Dieser Silbenzähler besteht aus vier Bits in der niedrigsten Stelle des ersten Wortes im Umlaufspeicher 193. Der Silbenzähler ist vom Programmzähler getrennt angeordnet, um die Fähigkeit des Rechners zu verbessern, Daten im Umlaufspeicher 193 aufzusuchen. Der Silbenzähler ist,so angeordnet, daß er sofort zur Verfügung steht,
909825/1324
wenn das Auslesemikroprogramm ausgeführt wird. Der Zähler wird vor diesem Zeitpunkt zurückgesetzt und beginnt mit der Zählung jedes Befehls des neu aufgesuchten Makrobefehlswortes, wenn es ausgeführt wird.
Das Makrobefehlswort, das gerade ausgeführt wird, ist in einem "Software"-Programmregister angeordnet, das im Hauptspeicher gespeichert ist. Da jedes Wort vier Mikrobefehle enthält, wird der Hauptspeicher normalerweise bei jedem vierten Befehl einmal angewählt, und die vier Befehle sind im Programmregister gespeichert. Dadurch wird die Betriebsgeschwindigkeit der Makroprogrammfolgesteuerung gesteigert.
909825/1324

Claims (17)

Patentansprüche
1. Digitale Rechenanlage, gekennzeichnet durch eine Eingabevorrichtung (101) zur Eingabe von Daten, Makrobefehlen und Mikrobefehlen, durch eine Speichervorrichtung (121) mit einem ersten Teil (131) zum Speichern von Daten und Makrobefehlen und einem zweiten Teil (137) zum Speichern von Mikrobefehlen, durch eine Mikroprogramrasteuervorrichtung (123) zum wählbaren Auslesen und Dekodieren von Mikrobefehlen, die aus dem zweiten Teil der Speichervorrichtung in einer Reihenfolge geholt sind, die den vorbestimmten Makrobefehlen entspricht, die bei der Verarbeitung im ersten Teil der Speichervorrichtung gespeicherter Daten ausgeführt werden sollen, durch eine Verarbeitungsvorrichtung (119 ), die die gespeicherten Daten, gesteuert von der Mikroprogrammsteuervorrichtung, verarbeitet und durch eine Ausgabevorrichtung (103), die das Ergebnis der Verarbeitung der gespeicherten Daten anzeigt.
2. Anlage nach Anspruch 1, dadurch gekennzeichnet , daß die Eingabevorrichtung eine Vorrichtung zum Eingeben einer neuen Gruppe von Mikrobefehlen enthält, um die 'im zweiten Teil der Speichervorrichtung gespeicherten Mikrobefehle zu ändern und die Rechenanlage dahingehend anzupassen, daß sie eine andere Operation mit den im ersten Teil der Speichervorrichtung gespeicherten Daten ausführt .
3. Anlage nach Anspruch 1 oder 2, dadurch;geke nnzeichnet , daß die Speichervorrichtung eine Magnetplatte enthält, die in Lese-Schreib-Daten- und Makrospeicher-Spuren in Lese-Mikrospeicher-Spuren, Taktspuren und Umlaufspuren unterteilt ist, die einen Teil der Datenverarbeitungsvorrichtung bilden.
809825/132*
4. Anlage nach Anspruch 1, 2 oder 3, gekennzeichnet durch eine den zweiten Teil der Speichervorrichtung in den ersten Teil der Speichervorrichtung, vom Mikroprogramm gesteuert, ausdehnende Vorrichtung.
5. Anlage nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Datenverar"beitungsvorrichtung eine erste Umlaufvorrichtung zum Synchronisieren von lese- und Schreiboperationen mit der Speichervorrichtung, eine zweite Umlaufvorrichtung mit einer Speicherlogik und einer Vorrichtung zum Speichern und Verarbeiten jedes im ersten Teil der Speichervorrichtung gespeicherten Makrobefehls, ein erstes .Register für Dezimalkorrekturen, ein zweites Register zur Eingabe und Ausgabe und zum Weiterleiten und Speichern von Daten in der Datenverarbeitungsvorrichtung und einen Serienaddierer zum Verarbeiten von Daten in der Datenverarbeitungsvorrichtung enthält.
6. Anlage nach Anspruch 5, dadurch gekennzeichnet , daß die Datenverarbeitungsvorrichtung einen Makrobefehlsprogrammzähler in der zweiten Umlaufvorrichtung und eine den Zählerstand des Programmζahlers jedesmal um eine durch das Mikroprogramm gesteuert erhöhende Vorrichtung, wenn ein Makrobefehl durch die Mikrobefehle ausgeführt ist.
7. Anlage nach Anspruch 6, dadurch gekennzeichnet , daß die Datenverarbeitungsvorrichtung eine Makroprogrammregistriervorrichtung in der zweiten Umlaufvorrichtung zum Speichern einer Folge von Makrobefehlen, die ausgeführt werden sollen, und eine der Reihe nach einen Teil der Mikrobefehlsfolge durch den Makrobefehlsprogrammzähler gesteuert auswählende Vorrichtung enthält.
909825/1324
8. Anlage nach Anspruch 6 oder 7, dadurch, gekennz e i c h η e t , daß die Datenverarbeitungsvorrichtung einen Makrobefehlssilbenzähler in der zweiten Umlauf vor richtung enthält, daß der Makrobefehlssilbenzähler unter Mikrobefehlssteuerung jedesmal v/eitergeschaltet wird, wenn eine Silbe eines Makrobefehls ausgeführt ist, und daß der Makrobefehlsprogrammzähler jedesmal um eins weitergeschaltet wird, wenn der Silbehzähler auf Null zurückgesetzt wird.
9. Anlage nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Mikrobefehlssteuervorrichtung eine. Mikrobefehlsvorrichtung zum kurzzeitigen Speichern eines ausgewählten Mikrobefehls, eine Steuervorrichtung zum Auswählen und Durchschalten logischer Tore in der Datenverarbeitungsvorrichtung, gesteuert durch den im Mikrobefehlsregister gespeicherten Mikrobefehl, und eine TaktVorrichtung enthält, die die Dauer bestimmt, während der die ausgewählten logischen Tore in der Datenverarbeitungsvorrichtung durch die Steuervorrichtung durchgeschaltet werden.
10. Anlage nach einem der Ansprüche 3 bis 9, dadurch gekennzeichnet , daß die Taktspuren in der Speichervorrichtung einen Sektorspurteil zum Speichern der Adressen von Informationsgruppen und einen Takt impulsspurteil zum Speichern eines Impulses für jedes. Bit auf einer Datenspur1 enthält, daß der Taktspurteil zum Zählen von Zeichen verwendet wird, die zwischen Adressen auf der Sektorspur auftreten, und daß mindestens eine Adresse auf der Sektorspur einen Adressen-Taktzähler dann löschenden Bezugscode enthält, wenn die Rechenanlage eingeschaltet wird oder unmittelbar nachdem der Rechner einen Fehler festgestellt hat.
909825/ 1 22L
11. Anlage nach Anspruch 1, dadurch. gekennzeichnet , daß schrittweise programmierbare Befehle zur Verarbeitung von Daten dadurch ausgeführt werden, daß nacheinander eine Folge von mindestens einem zuvor aufgezeichneten Mikrobefehl für jeden programmierten Befehl aufgerufen und ausgeführt werden, und daß die: Rechenanlage ein unterteiltes Eingabe-Register mit einem Ziffernteil zum Speichern dea niedrigstwertigen Teils eines Zeichens und einen Zonenteil zum Speichern des höchstwertigen Teils eines Zeichens, wobei das Zeichen eine vorbestimmte Anzahl von Bits enthält, ein Rechenwerk, eine zyklische Speichervorrichtung mit einem zum Lesen und Schreiben adressierbaren Speicherteil für umgesetzte Daten und Makroprogrammbefehle, einen nur zum Lesen adressierbaren Speicherteil zum Speichern von Mikroprogrammbefehlen und mehrere Umlaufregister zum Synchronisieren von Lese- und Schreiboperationen zwischen dem Eingabe-Register und der zyklischen Speichervorrichtung und zum wählbaren Verschieben von Daten relativ zu einem vorbestimmten Bezugspunkt während arithmetischer Operationen, ein Befehlsregister zum sequentiellen Speichern und Ausführen der Mikrobefehle, die aus dem adressierbaren Speicher ausgelesen sind, eine Steuermatrix zum Erzeugen logischer Steuersignale in Abhängigkeit vom Inhalt des Befehlsregisters und eine Torvorrichtung enthält, die auf die Matrixvorrichtung anspricht und wählbar Informationen zwischen den einzelnen Teilen des Eingaberegisters und des Umlaufregisters austauscht.
12. Anlage nach Anspruch 11, gekennzeichnet durch ein Informationsregister und eine logische Torvorrichtung zum wählbaren HintereinanderschaIten des Informationsregisters und des Umlaufregisters in einen geschlossenen Kreis, um die Länge des Umlaufregisters zu ändern.
909825/ 1324
13. Anlage nach Anspruch. 11 oder 12, gekennzeichnet durch eine bistabile Steuervorrichtung zum wählbaren Gestatten der programmierbaren Speicherung von Mikroprogramrobefehlen in dem Hauptspeicherteil der zyklischen Speichervorrichtung und durch Vorrichtungen zum Indern der Adresse des nächsten Mikrobefehls in Abhängigkeit vom Mikrobefehlsregister, wenn die bistabile Steuervorrichtung einen vorbestimmten Zustand einnimmt.
14. Anlage nach Anspruch 11, 12 oder 13, dadurch ekennzeichnet , daß die zyklische Speichervorrichtung eine drehbar gelagerte mehrspurige Magnetplatte mit mehreren Lese-Schreib-Köpfen zum wählbaren Auslesen und Einschreiben von Daten aus dem bzw. in den Hauptspeicherteil und mehrere Leseköpfe zum wählbaren Auslesen von zuvor in dem nur zum Auslesen vorgesehenen Speicherteil gespeicherten Informationen und mit einem Spurbestimmungsregister zum wählbaren Adressieren und Aktivieren eines der Köpfe für das Abtasten der Magnetplatte oder zum Aufzeichnen auf der Magnetplatte, und " daß die zyklische Speichervorrichtung ferner eine Torvorrichtung zum wählbaren Übertragen der Bits eines Zeichens aus vorbestimmten Stellen des Befehlsregisters und den einzelnen leilen des Eingaberegisters in das Spurbestimmungsregister.
15. Anlage nach Anspruch 14, dadurch gekenn-
e i c h η e t , daß die mehrspurige Magnetplatte mindestens 3ine Taktspur zum Speichern einer PoIge von Taktimpulsen entlält, und daß das Befehlsregister einen Befehlsteil und einen Adressteil für die Adresse des nächsten Befehls enthält, daß die Anlage ferner einen Taktzähler, der auf die Takt impulse anpricht und eine zyklische Taktimpulsfolge erzeugt, eine UND-Dor-Vorrichtung zum Ablesen von Informationen von dem Mikrobefehlsteil der Platte und Einlesen dieser Informationen in das Befehlsregister und eine auf den Taktzähler und die Steuervorichtung ansprechende Taktmatrix zum Aktivieren der UND-Tor-/orrichtung, um nacheinander Mikrobefehlsdaten in das Mikrobe-fehlsregister in Übereinstimmung mit dem Inhalt des Adressteils des Befehlsregisters einzulesen. nnnooc/iii/
y υ ybiö/ ι j Lk
16. Anlage nach Anspruch. 1, dadurch gekennzeichnet , daß programmierbare Befehle zur Verarbeitung in die Maschinensprache umgesetzter Daten dadurch ausgeführt werden," daß ein Mikrobefehl oder eine Folge von Mikrobefehlen für jeden programmierten -Befehl aufgerufen und ausgeführt wird und daß die Rechenanlage ein Rechenwerk, ein mehrteiliges Eingaberegister mit einem ersten Teil zum Speichern eines ersten Zeichenteils und einem zweiten Teil zum Speichern eines zweiten Zeichenteils, eine drehbare magnetische Speichervorrichtung mit einem zum Auslesen und Einschreiben adressierbaren Hauptspeicherteil zum Speichern von in die Maschinensprache umgesetzten Daten und von Makroprogrammbefehlen, mit einem nur zum Lesen adreseierbaren Speicherteil zum Speichern von Mikroprogrammbefehlen und einem Taktspurteil zum Speichern einer Folge von Taktimpulsen, ein Programmregister zum Speichern von Makroprogrammbefehlen, die aus dem Hauptspeicherteil geholt wurden, ein Mikroprogrammregister zum Speichern von Mikroprogrammbefehlen, die aus dem nur zum Lesen adressierbaren Speicherteil geholt wurden, mit einem Befehlsteil und einem Adressenteil für die Adresse des nächsten Befehls, daß die Anlage ferner mehrere Umlaufspeicherregister zur kurzzeitigen Speicherung von Programmwörtern und in die Maschinensprache umgesetzten Daten, eine Vorrichtung zum wählbaren Ändern der wirksamen Speicherlänge mindestens eines der Umlaufspeieherregister, eine Torvorrichtung zum wählbaren Austauschen des Inhalts einiger Teile des Eingabe-Registers mit dem Inhalt eines Teils des Umlaufregisters, eine Übertragungstorvorrichtung zum Übertragen des Inhalts einiger Teile des Eingaberegisters in das Mikroprogrammregister, eine Vorrichtung zum v/ählbaren Vorbinden eines Ausgangs dieser Teile des Eingaberegisters und eines Ausgangs der Umlaufvorrichtung mit dem Eingang des Rechenwerks und eine Vorrichtung zum wählbaren Verbinden des Ausgangs des Rechenwerks mit einem Eingang dieser Teile des Eingaberegisters und einem Eingang der Umlaufvorrichtung enthält.
909825/.1324
17. Anlage nach Anspruch 16, dadurch gekenn-, zeichnet , daß das Prograramregister mehrere aufeinanderfolgende Programmbefehlsv/örter speichert und einen Programmzähler zum Steuern der Reihenfolge der Ausführung der einzelnen Programmbefehle, die im Programmregister gespeichert sind, in Übereinstimmung mit dem Inhalt des Programmzählers und eine Vorrichtung mit einer Übertrag-Schaltung, die mit dem Rechenwerk zum Weiterschalten des Programmzählers bei Beendigung' vorbestimmter Programmbefehisschritte verbunden ist, enthält .
909825/ 1 324
DE19681806535 1967-11-02 1968-11-02 Seriell arbeitende digitale rechenanlage Granted DE1806535B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US68018467A 1967-11-02 1967-11-02

Publications (3)

Publication Number Publication Date
DE1806535A1 true DE1806535A1 (de) 1969-06-19
DE1806535B2 DE1806535B2 (de) 1973-07-26
DE1806535C3 DE1806535C3 (de) 1974-02-21

Family

ID=24730059

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681806535 Granted DE1806535B2 (de) 1967-11-02 1968-11-02 Seriell arbeitende digitale rechenanlage

Country Status (9)

Country Link
US (1) US3579192A (de)
JP (1) JPS5632653B1 (de)
BE (1) BE723095A (de)
BR (1) BR6803601D0 (de)
DE (1) DE1806535B2 (de)
FR (1) FR1591241A (de)
GB (1) GB1250181A (de)
NL (1) NL6815643A (de)
SE (1) SE337711B (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3675214A (en) * 1970-07-17 1972-07-04 Interdata Inc Processor servicing external devices, real and simulated
US3725868A (en) * 1970-10-19 1973-04-03 Burroughs Corp Small reconfigurable processor for a variety of data processing applications
US3800129A (en) * 1970-12-28 1974-03-26 Electronic Arrays Mos desk calculator
US3735363A (en) * 1971-04-07 1973-05-22 Burroughs Corp Information processing system employing stored microprogrammed processors and access free field memories
US3725652A (en) * 1971-06-01 1973-04-03 Houdaille Industries Inc Computer controlled machine tool system with stored macro language program for effecting pattern type punching operations
USH1970H1 (en) 1971-07-19 2001-06-05 Texas Instruments Incorporated Variable function programmed system
IT951233B (it) * 1972-04-07 1973-06-30 Honeywell Inf Systems Sistema di comando di un calcola tore mediante microprogrammazione ed estensione dinamica delle fun zioni di controllo ottenuta da reti logiche
US3859636A (en) * 1973-03-22 1975-01-07 Bell Telephone Labor Inc Microprogram controlled data processor for executing microprogram instructions from microprogram memory or main memory
US4314330A (en) * 1973-12-03 1982-02-02 Houdaille Industries, Inc. Machine tool data system
FR111576A (de) * 1973-12-13 1900-01-01
US3959776A (en) * 1974-02-19 1976-05-25 Modicon Corporation Programmable printer
US3949370A (en) * 1974-06-06 1976-04-06 National Semiconductor Corporation Programmable logic array control section for data processing system
US4035781A (en) * 1976-05-03 1977-07-12 Xerox Corporation Signal priority logic for serial printer
US4037216A (en) * 1976-05-03 1977-07-19 Xerox Corporation Position retry apparatus for serial printer
US5226164A (en) * 1991-04-24 1993-07-06 International Business Machines Corporation Millicode register management and pipeline reset

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3377619A (en) * 1964-04-06 1968-04-09 Ibm Data multiplexing system
US3315235A (en) * 1964-08-04 1967-04-18 Ibm Data processing system
US3404378A (en) * 1965-10-29 1968-10-01 Automatic Telephone & Elect Computers
US3478322A (en) * 1967-05-23 1969-11-11 Ibm Data processor employing electronically changeable control storage

Also Published As

Publication number Publication date
GB1250181A (de) 1971-10-20
JPS5632653B1 (de) 1981-07-29
NL6815643A (de) 1969-05-06
DE1806535B2 (de) 1973-07-26
DE1806535C3 (de) 1974-02-21
FR1591241A (de) 1970-04-27
US3579192A (en) 1971-05-18
BR6803601D0 (pt) 1973-05-15
SE337711B (de) 1971-08-16
BE723095A (de) 1969-04-01

Similar Documents

Publication Publication Date Title
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE2113890C2 (de) Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen
DE1146290B (de) Elektronisches Datenverarbeitungssystem
DE2315509A1 (de) Kodierte aufzeichnung und verfahren und einrichtung zum kodieren und dekodieren dieser aufzeichnung
DE1806535A1 (de) Digitale Rechenanlage
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE1815708C3 (de) Speicherprogrammierte elektronische Rechenanlage
DE1549517B1 (de) Speicherprogrammierte elektronische Rechenanlage
DE2363846C2 (de) Datenverarbeitungsanlage mit einer Schaltungsanordnung zur Steuerung des Datentransfers zwischen dem Hauptspeicher und mehreren peripheren Geräten
DE2032286A1 (de) Rechner
DE2365569A1 (de) Elektronischer rechner
DE2243080A1 (de) Vorrichtung zur wiedergabe programmiert ausgewaehlter, auf magnetkarten aufgezeichneter daten
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2255252C3 (de) Schaltungsanordnung zur Steuerung einer Anzeigeeinheit
DE1201586B (de) Programmgesteuerte Daten-Auswertmaschine
DE2609698C2 (de) Elektronischer Rechner
DE1474376A1 (de) Verfahren und Anordnung zum schnellen Zugriff bei grossen seriellen Speichern
DE1221037C2 (de) Verfahren zur Speicherung hierarchisch geordneter Datenketten und Anordnung zur Durchfuehrung dieses Verfahrens
DE1954475A1 (de) Zugriffsstelle einer Datenverarbeitungsanlage
DE2641971A1 (de) Digitale tisch-buchungs- und -rechenmaschine
DE2062384A1 (de) Einrichtung zum Auswahlen von ver schiedenen Zeichenformen bei einem Drucker mit mehreren Druckzeichensatzen
DE2637930A1 (de) Wort-prozessor mit tabellier- aufzeichnungsgeraet
DE1449561C3 (de) Rechenmaschine mit mechanischen Eingabe- und Ausgabevorrichtungen sowie elektronischem Rechen- und Speicherwerk
DE1761861A1 (de) Einrichtung zur Formatsteuerung einer Druckvorrichtung
DE1549435A1 (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977