DE1178623B - Programmgesteuerte datenverarbeitende Maschine - Google Patents

Programmgesteuerte datenverarbeitende Maschine

Info

Publication number
DE1178623B
DE1178623B DEJ19221A DEJ0019221A DE1178623B DE 1178623 B DE1178623 B DE 1178623B DE J19221 A DEJ19221 A DE J19221A DE J0019221 A DEJ0019221 A DE J0019221A DE 1178623 B DE1178623 B DE 1178623B
Authority
DE
Germany
Prior art keywords
command
memory
register
program
control
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
DEJ19221A
Other languages
English (en)
Other versions
DE1178623C2 (de
Inventor
Stephen W Dunwell
Wappingers Falls
Clarence Ernest Stephens
William R Stringfellow
Vaughn Donald Winkler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1178623B publication Critical patent/DE1178623B/de
Application granted granted Critical
Publication of DE1178623C2 publication Critical patent/DE1178623C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Description

BUNDESREPUBLIK DEUTSCHLAND
DEUTSCHES
PATENTAMT
AUSLEGESCHRIFT
Internat. Kl.: G06f
Deutsche KL:
Nummer:
Aktenzeichen: J19221IX c / 42 m
Anmeldetag: 24. Dezember 1960
Auslegetag: 24. September 1964
Die Rechenmaschinentechnik verlangt nach immer schnelleren Rechnern. So wurden schon viele Vorschläge gemacht, die Geschwindigkeit einer programmgesteuerten Rechenmaschine zu erhöhen. Bekannt ist z. B. in großen Rechenanlagen zwei Rechner vorzusehen. Es ist verständlich, daß hierdurch eine Erhöhung der Rechengeschwindigkeit erzielt werden kann, weil beide Rechner zugleich zwei Operationen ausführen können. Zum Beispiel kann der eine Rechner eine arithmetische Operation ausführen, während der andere die Datenübertragung zwischen Ein-/Ausgabeeinheiten und dem Hauptspeicher steuert.
In bekannten programmgesteuerten, elektronischen Rechenmaschinen ist ein Befehlsregister vorgesehen. Der gerade zur Verarbeitung entstehende Befehl wird aus dem Hauptspeicher in dieses Register gebracht. Über ein Leitwerk steuern die jeweils im Befehlsregister stehenden Befehle die Rechenanlage zur Ausführung bestimmter Operationen.
Zweck der Erfindung ist es, die Rechengeschwindigkeit eines Rechners durch neuartige Aufbereitung der Befehle zu erhöhen.
Die Erfindung betrifft eine programmgesteuerte, datenverarbeitende Maschine. Sie ist dadurch gekennzeichnet, daß für ein Rechenwerk mehrere Befehlsregister vorgesehen sind und daß eine Vorrangsteuerung vorgesehen ist, welche die in den Befehlsregistern stehenden Befehle nach einer vorbestimmten Rangfolge zur Ausführung bringt.
Gemäß einer Weiterbildung der Erfindung kann die Geschwindigkeit der Rechenanlage dann noch weiter erhöht werden, wenn ein Programm ausgeführt wird, das aus mehreren mehrmals sich wiederholenden Befehlen besteht. Gemäß dieser Weiterbildung werden die Befehle dieses Programms in den Befehlsregistern abgespeichert und die Befehlsregister zu einer Schleife zusammengeschaltet. Die Befehle laufen in den Befehlsregistern um und werden wiederholt ausgeführt.
Nachstehend soll ein Ausführungsbeispiel der Erfindung an Hand der Fig. 1 (die sich aus den Teilen A + B zusammensetzt) und der F i g. 2 beschrieben werden.
Die in dem Ausführungsbeispiel der F i g. 1 beschriebene parallel arbeitende Rechenmaschine verwendet zwei schnelle Kernspeicher 101 und 102. Ihr Speichergang hat eine Dauer von 6 μ&. Die ersten 3 μ$ sind für das Auslesen von Informationen aus dem Speicher und die zweiten 3 με für das Einspeichern von Informationen vorgesehen.
Die Rechenmaschine nach dem Ausführungsbei-Programmgesteuerte datenverarbeitende
Maschine
Anmelder:
International Business Machines Corporation,
New York, N. Y. (V. St. A.)
Vertreter:
Dipl.-Ing. H. E. Böhmer, Patentanwalt,
Böblingen (Württ), Sindelfinger Str. 49
Als Erfinder benannt:
Stephen W. Dunwell, Poughkeepsie, N. Y.,
William R. Stringfellow,
Wappingers Falls, N. Y.,
Vaughn Donald Winkler,
Clarence Ernest Stephens,
Poughkeepsie, N. Y. (V. St. A.)
Beanspruchte Priorität:
V. St. v. Amerika vom 30. Dezember 1959
(862 967)
spiel der Fig. 1 verwendet zwei Rechner, einen Hauptrechner und einen Steuerrechner. Beide enthalten eine zugeordnete Recheneinheit und Befehlsregister. Ein Befehlszähler, der normalerweise in jedem Gang um 1 weitergeschaltet wird, kann jeden der Speicher adressieren und einen Befehl für jeden der Rechner entnehmen. Im normalen Betrieb werden die Speicher abwechselnd adressiert.
Die Speicher 101 und 102 speichern Informationen in Form von Daten- und Befehlswörtern. Ein vollständiges Datenwort enthält ein Vorzeichenbit und fünfunddreißig Iniformationsbits oder im Falle eines halben Wortes ein Vorzeichenbit und siebzehn Informationsbits. Ein Befehlswort enthält ein Vorzeichenbit in der Nullbitposition, einen Operationsteil in den Positionen 1 bis 5, erne Adresse in den Positionen 6 bis 17 und ein Rechnerbit in Position 18. Der Befehlszähler 142 ist ein 12-Bit-Zähler und adressiert bei normaler Weiterschaltung zunächst den einen und dann den anderen Speicher. Wenn die Vorrangsteuerung 143 einen Befehlsbezugsgang gestattet, wird ein Befehl an der durch den Befehlszähler 142 angegebenen Adresse ausgespeichert. Da-
409 688/295
bei kann es sich um einen sofortigen Befehl oder einen nichtsofortigen Befehl handeln. Wenn es ein sofortiger Befehl, und zwar ein Kopierbefehl, ist, handelt es sich um einen Speichergang, d. h., der Speicher speichert entweder Information aus einer ausgewählten Eingabe-Ausgabe-Einheit, oder es werden Informationen aus dem Speicher zu einer ausgewählten Eingabe-Ausgabe-Einheit übertragen. Wenn ein nicht sofortiger Befehl vorliegt und ein Speichergang stattfindet, kann ein Speichergang oder ein Datengang nötig sein. In einem Speichergang werden Informationen aus einer ausgewählten Einheit im Rechenteil eines der Rechner in einer ausgewählten Speicheradresse gespeichert.
Es gibt folgende drei Speicherbefehle:
1. »Speichern Akkumulator«, bei dem die sechsunddreißig Bits des Akkumulators in den Speicher gebracht werden;
2. »Speichern Adresse«, bei dem die Bits 6 bis 17 des Akkumulators in den Speicher gebracht werden;
3. »Speicher MQ«, bei dem die sechsunddreißig Bits im Multiplikator-Quotient-(MQ)-Register in den Speicher gebracht werden.
Wenn es sich um einen Datengang handelt, wird die Information aus einer ausgewählten Adresse im Speicher ausgelesen, und in eine ausgewählte Einheit im Rechenteil eines der Rechner übertragen. Es gibt folgende zehn Datenbefehle:
1. Rückstellen und addieren;
2. Addieren;
3. Absolutwert addieren;
4. Rückstellen und subtrahieren;
5. Subtrahieren;
6. Absolutwert subtrahieren;
7. Multiplizieren;
8. Multiplizieren und runden;
9. Dividieren;
10. Eingabe in Multiplikator-Quotien-(MQ)-Register.
Die sofortigen Befehle, die keinen Speichergang erfordern, sind:
1. Stoppen und übertragen;
2. Übertragen;
3. Abtasten;
4. Lesen;
5. Rückwärts lesen;
6. Schreiben;
7. Ende der Aufzeichnung schreiben;
8. Zurückspulen;
9. Keine Operation.
Die nichtsofortigen Befehle, die keinen Speichergang erfordern, sind:
1. Übertragen bei Überlauf;
2. Übertragen bei plus;
3. Übertragen bei null;
4. L. links;
5. L. rechts;
6. Akkumulator rechts;
7. Akkumulator links;
8. Verriegelung.
Die Information wird direkt aus den Abtasttoren eines der Speicher 101 oder 102 in die Register des Steuer- und des Hauptrechners übertragen und zunächst nicht zu einem Speicherpufferregister gesendet. Jedem Speicher ist ein Speicheradressenregister zugeordnet, und zwar das Speicheradressenregister 103 dem Speicher 101 und das Speicheradressenregister 104 dem Speicher 102. Speicherleitungsschalter 105 lenken die aus den Speichern entnommenen Informationen zu einem Überwachungsregister 113 über die Leitung 106, zum Hauptrechner über die Leitungen 107 und 108, zum Steuerrechner über die
ίο Leitungen 109 und 110 und zum Eingabe-Ausgabe-Register 111 über die Leitung 112. Außerdem wird aus dem Speicher 101 entnommene Information stets zum Puffer 119 und aus dem Speicher 102 entnommene Information zum Puffer 120 übertragen.
Das Überwachungsregister 113 speichert aus dem Speicher entnommene Befehle. Da zwei Rechner verwendet werden, enthält das aus dem Speicher entnommene Befehlswort eine zusätzliche Bitposition, nämlich die Bitposition 18, das sogenannte Rechnerbit. Es bestimmt, zu welchem Rechner der Befehl weitergeleitet werden muß. Diese achtzehnte Bitposition steuert die Schalter 114, die den Befehl dann entweder dem Haupt- oder dem Steuerrechner zuleiten.
Dem Operationsteil des Befehls in dem Überwachungsregister 113 ist ein Entschlüsseier 115 zugeordnet. Er entschlüsselt den Operationsteil des Befehlswortes, die Bitpositionen 1 bis 5.
Wenn der Entschlüsseier einen Kopierbefehl feststellt, wird dessen Adresse aus dem Adressenteil nahezu sofort entweder zu einem Kopierregister 116 oder zu einem Kopierregister 117 geschickt, vorausgesetzt, eins von ihnen ist leer. Wenn angenommen wird, daß beide Register leer sind, wird die Kopieradresse zum Kopierregister 117 geschickt. Wenn dieses jedoch voll ist, d. h., eine frühere Kopieradresse enthält, wird die Kopieradresse aus dem Überwachungsregister 113 dem Kopierregister 116 zugeleitet. Gleichzeitig leitet der Entschlüsseier die Operation der ausgewählten Eingabe-Ausgabe-Einheit ein, die die Kopierfunktion ausführen soll, nämlich entweder Information in einen ausgewählten Speicher einzugeben oder Information aus einem ausgewählten Speicher zu entnehmen und in die Eingabe-Ausgabe-Einheit zu übertragen. Wenn der Kopierbefehl so lautet, daß z. B. Informationen aus einem Band in den Speicher übertragen werden, sobald die ausgewählte Information aus dem Band im Eingabe-Ausgabe-Register 111 gespeichert ist, wird dem System angezeigt, daß der Kopierbefehl bereit zum Ausführen ist. Bei Ausführung des Befehls wird die im Register 111 stehende Information zu den Schaltern 118 und von dort aus entweder zum Pufferregister 119 des Speichers 101 oder zum Pufferregister 120 des Speichers 102 geleitet. Aus diesen Registern wird sie dann dem richtigen Speicher zur Eingabe zugeleitet. Falls gemäß dem Kopierbefehl eine Übertragung aus dem Speicher in eine ausgewählte Eingabe-Ausgabe-Einheit erfolgen muß, wird die Information aus dem ausgewählten Speicher über die Speicherleitungsschalter 105 entnommen und im Eingabe-Ausgabe-Register 111 gespeichert, von wo sie der ausgewählten Eingabe-Ausgabe-Einheit zugeführt wird, sobald diese bereit ist, diese Information aufzunehmen. Außerdem wird diese Information aus dem ausgewählten Speicher dem diesem zugeordneten Puffer 119 oder 120 zugeführt, um wieder in den
Speicher eingespeichert zu werden, damit sie nicht verlorengeht, da hier eine löschende Entnahme aus dem Speicher verwendet wird.
Falls nun das Überwachungsregister einen Befehl enthält, der ein nicht sofortiger Befehl ist, wird diese Information zur entsprechenden Zeit über die Schalter 114 dem bezeichneten Rechner, entweder dem Haupt- oder dem Steuerrechner, zugeführt. In der Zeichnung ist der Steuerrechner links und der
müssen, bevor sie zum nächsten Befehl übergehen können. In der erfindungsgemäßen datenverarbeitenden Maschine kann eine Anzahl von gespeicherten Gängen ausgeführt werden, während die Ausführung 5 des Kopienganges abgewartet wird. Um die Zeitersparnis zu erreichen, sind in dieser Rechenmaschine jedem Rechner Mittel zugeordnet, die eine Mehrzahl von Befehlen speichern können und die mit der Vorrangsteuerung zusammenwirken, um die
Hauptrechner rechts dargestellt. Soll das Befehls- io Geschwindigkeit zu erhöhen. Die Vorrangsteuerung wort durch die Schalter 114 zum Steuerrechner über- kann je einmal in jedem Speichergang den Zustand tragen werden, wird dieser Befehl zum Befehls- der Rechenmaschine überblicken und einen aus der register 121 übertragen. Dieses Register empfängt ihr zur Ausführung zur Verfügung stehenden Anzahl das Befehlswort bitweise parallel. Es ist zur Weiter- von Befehlen auswählen, damit diese Zeitleistung leitung von Information in Serie zu den Befehls- 15 erhöht wird.
registern 122 und 123 geschaltet. Jedem der 17-Bit- Ist durch die Vorrangsteuerung festgestellt wor-
Register 121, 122 und 123 ist ein Entschlüsseier 121, den, daß keine Bedingungen vorliegen, durch welche 122, 123 zur Bearbeitung des Operationsteils des eine der Prioritätsstufen veranlaßt würde, einen Befehlswortes zugeordnet. 121' erkennt Datenbefehle, Speicherbezugsgang einzuleiten, so kann im nächsten 122' Speicherbefehle, und 123' enthält einen Rück- 20 Gang nur eine Übertragung von Informationen zwiwärtszähler zum Zählen bestimmter Schritte, z.B. sehen den Befehlsregistern in jedem Rechner bewirkt im Laufe von Multiplizier-, Dividier- oder Schiebe- werden. Wenn jedoch ein Rechenbefehl im Register operationen. Bevor ein Datenbezugs- oder Speicher- 129 oder 123 der beiden Maschinen enthalten wäre, befehl ausgeführt werden kann, muß er durch würde die gemäß diesem Befehl ausgeführte Rechendie Reihenschaltung der Register nach 123 hin- 25 operation während des nächsten Ganges selbst dann untergeschoben werden. Der dem Register 123 zu- fortgesetzt, wenn kein Speicherfoezugsgang stattfände, gordnete Entschlüsseier stellt die erforderlichen Soll der Befehl im Speicherregister zum Haupt-
Schalter zur Ausführung des in diesem Register ent- rechner geleitet werden, werden die Schalter 114 so haltenen Befehls ein. Die Entschlüsseier 121' und eingestellt, daß der Befehl zum Puff erregister 124 122' der Register 121 und 122 arbeiten in Verbin- 30 gelenkt wird. Die Puff erregister 124, 125 und 126 dung mit der Vorrangsteuerung. Die Vorrang- arbeiten in Verbindung mit dem Hauptrechner. Sie steuerung erteilt einem Kopierbefehl die bezüglich sind zur Übertragung von Informationen in Reihe des Zugriffs zum Speicher höchste Priorität, und geschaltet, und jedes von ihnen ist ein 17-Bitdies wird als Kopiergang bezeichnet. Wenn es sich Register. Die Befehlsregister 127, 128 und 129 sind bei dem Befehl nicht um einen Kopierbefehl handelt, 35 weiterhin mit den Registern 124, 125 und 126 in erteilt die Prioritätssteuerung die nächsthöhere Prio- Reihe geschaltet, um Information in Serie weiterzurität der Entnahme eines weiteren Befehls aus dem leiten, und auch dies sind 17-Bit-Register. Die den Speicher, wie es der Befehlszähler bestimmt, und Registern 127 und 128 zugeordneten Entschlüsseier dies wird als Befehlsbezugsgang bezeichnet. Wenn 127' und 128' erkennen Datenbefehle bzw. Speicherdie Prioritätssteuerung feststellt, daß weder ein 40 befehle. Der dem Register 129 zugeordnete Ent-Kopiergang noch ein Befehlsbezugsgang ausgeführt schlüsseler 129' arbeitet ähnlich wie der dem Rewerden kann, weist er einem Speichergang die gister 123 im Steuerrechner zugeordnete Entnächste Brioritätsstufe zu. Wenn die Prioritätssteue- schlüsseler 123'.
rung feststellt, daß keiner dieser drei Gänge ausge- Um einen Befehlsgang zu ermöglichen, muß das
führt werden kann, wird die nächste Prioritätsstufe 45 Überwachungsregister 113 entleert werden, um den einem Datenbezugsgang zugeteilt. Wenn keiner der aus dem Speicher entnommenen Befehl aufnehmen vier Gänge ausgeführt werden kann, wird die nächste zu können. Das Überwachungsregister schiebt bei Prioritätsstufe einem Sanderbefehls-Bezugsgang zu- einer Operation mit einem nicht sofortigen Befehl geteilt. Von den beiden Rechnern erhält der Haupt- seine Adresse entweder zum Befehlsregister 121 oder rechner die Priorität gegenüber dem Steuerrechner. 50 zum Pufferregister 124 weiter. Schließlich werden Um diese Priorität mit zu berücksichtigen, enthält die Befehle im Pufferregister 124 durch die dadie Rechenmaschine die Vorrangsteuerung, die in zwischenliegenden Register in das Befehlsregister jedem Gang einmal den Zustand der Rechen- 129 geschoben. Register 127 erkennt Dateaibefehle maschine überwacht und die während des nächsten und Register 128 Speicherbeifehle. Wenn das Rechner-Speicherganges auszuführende Art von Speichergang 55 Steuerbit 18 im Überwachungsregister eine 0 ist, bestimmt. zeigt das an, daß das Überwachungsregister leer ist
Bekanntlich brauchen manche Befehle für ihre oder sein Befehl zum Steuerrechner geht. Ausführung mehr als einen einzigen Speichergang. Bei Feststellung eines Befehls im Register 127
Zum Beispiel kann ein Speicherbefehl in einem werden bei nächster Gelegenheit die Daten aus den Speichergang ausgeführt werden, während für einen 60 diesen Befehlen zugeordneten Adressen aus dem Kopierbefehl mehrere Gänge erforderlich sein Speicher entnommen und in ein entsprechendes können. Bei einem Kopierbefehl muß eine Eingabe- Speicherregister 136 oder 137 des Hauptrechners Ausgabe-Einheit, wie z. B. ein Band, dem Befehlsteil eingeführt. Gleichzeitig mit der Entnahme der Daten des Kopierbefehls entsprechend orientiert sein, be- aus dem Speicher und ihrer Eingabe in eines dieser vor sie Daten aus dem Speicher empfangen oder dem 65 Register wind der Befehl aus dem Register 127 zum Speicher Daten zuführen kann. Bei den bekannten Register 128 übertragen. Danach wird der Befehl Rechnern geht natürlich Zeit verloren, wenn die aus dem Register 128 zum Register 129 übertragen, Rechner zuerst jeden Befehl zu Ende ausführen und sofort nach seiner Ankunft im Register 129
wird der Datenbefehl unter Verwendung des Operanden, der jetzt in einem der beiden Speicherregister des Hauptrechners enthalten ist, ausgeführt. Die für die Ausführung der Datenbefehle benötigte Zeitdauer ist nicht immer gleich. Zum Beispiel benötigen Datenbefehle, wie Zurückstellen—Addieren, Zurückstellen—Subtrahieren, in MQ eingeben, nur 3 μ$ zur Ausführung. Das bedeutet, daß der Befehl, sobald er das Register 129 erreicht, entschlüsselt
zugeordnete Entschlüsseier betätigt den Schalter 132, um den Inhalt des Speicherregisters 130 bzw. 131 zu der ausgewählten Einheit des Rechenteils zu steuern. Wenn der Datenbefehl für den Hauptrech-5 ner bestimmt ist, findet natürlich ein ähnlicher Operationsablauf statt, an dem die Register in dem Hauptrechner und deren Recheneinheit beteiligt sind.
Ein Speicherbefehl wird in den Befehlsregistern
wird und in 3 μβ fertig ausgeführt ist. Andere Daten- io 122 oder 128 erkannt. Er erfordert die Speicherung befehle, wie Addieren, Absolutwert addieren, Sub- von Information aus der Recheneinheit im Speicher, trahieren und Absolutwert subtrahieren, benötigen Diese Information wird aus der Recheneinheit entaber 12 με für ihre Ausführung, und die Daten- nommen und durch die Schalter 118 zum Puffer 119 befehle Multiplizieren, Multiplizieren und runden oder 120 gesteuert, je nach dem 'beteiligten Speicher, und Dividieren benötigen viele Vielfache von 15 Mit der im bezeichneten Adressenregister 103 oder 12-^s-Gängen zur vollständigen Ausführung. Zur 104 gespeicherten Adresse werden die Informationen zeitlichen Steuerung der 12^s-Gänge ist ein Rechen- aus den Puffern 119 oder 120 in den abgewählten taktgeber von zwölf Stufen vorgesehen. Speicher übertragen. Wenn gerade ein »Lese-
Die Recheneinheiten der beiden Rechner sind Kopieren«-Gang oder ein Speichergang für einen identisch. Sie enthalten zwei Speicherregister, die 20 Speicher ausgeführt wird, erhält man keine Inforüber Schalter mit Addierschaltungen verbunden sind, mation am Ausgang des betreffenden Speichers, ein Akkumulatorregister und ein Multiplikator- In vielen Fällen kann das Programm eine wieder-
Quotient-Register. Im Steuerrechner tragen das holte Ausführung mehrerer Befehle erfordern. Bei Speicherregister die Ziffern 130 und 131, die Schal- bekannten datenverarbeitenden Maschinen wird der ter die Ziffer 132, die Addierschaltungen die Ziffer 25 erste Befehl aus dem Speicher entnommen, ausge- 133, der Akkumulator die Ziffer 134 und das Multi- führt, dann wird der nächste Befehl aus dem Speicher plikator-Quotient- oder MQ-Register die Ziffer 135. entnommen und ausgeführt. Dieser Vorgang wird Im Hauptrechner tragen die Speicherregister die mit einer durch das sich wiederholende Programm Ziffern 136 und 137, die Schalter die Ziffer 138, die bestimmten Zahl von Befehlen wiederholt. Dann Addierschaltungen die Ziffer 139, der Akkumulator 30 kann das Programm wiederholt werden, um die sich die Ziffer 140 und das MQ-Register die Ziffer 141. wiederholende Operation auszuführen. Für jede
Der Befehlszähler 142 wird beim normalen Be- Wiederholung ist dann für jeden in dem wiedertrieb in Abständen von 3 μ5 um je 1 weitergeschaltet. holenden Programm enthaltenen Befehl ein Zugriff Er enthält eine aus 12 Bits bestehende Speicher- zum Speicher nötig. Hierzu werden die Schalter 150 adresse entweder für den Speicher 101 oder für den 35 in der Hauptmaschine geschlossen und bilden so eine Speicher 102. Wenn ein Befehlsbezugsgang zulässig Schleife von Befehlsregistern, die aus 124 bis 129 ist, wird die im Befehlszähler 142 stehende Adresse und außerdem 151 und 152 besteht, infolge der Vorrangsteuerung 143 zu dem 12-Bit- Zwischen den Schleifen sind für diese Programm-
Speicheradressenpuffer 144 übertragen. Die Adresse art keine Befehlsbezugsgänge für den Hauptrechner im Speicheradressenpuffer 144 wird durch die Vor- 40 erforderlich. Man sieht also, daß während der Ausrangsteuerung 143 zu dem ausgewählten Adressen- führung einer Verriegelungsoperation die Speicher register 103 oder 104 gesendet, je nach dem zu
adressierenden Speicher. Der Befehl an der ausgewählten Adresse wird über die Speicherleitungsschalter 105 ausgegeben und über die Strecke 106 45
dem Überwachungsregister 113 und außerdem dem
zugeordneten Puffer 119 bzw. 120 parallel zugeführt.
Wenn die Vorrangsteuerung 143 feststellt, daß der
Befehl im Überwachungsregister 113 zu dem ihm zugeordneten Register in dem ausgewählten Rechner 50 register 113. Wenn der Verriegelungsbefehl in Reweitergeschoben werden kann, erfolgt das während gister 129 steht, muß der Zustand der siebzehnten der nächsten 3^s-Periode. Ist der Befehl ein Daten- Bitposition beachtet werden. Der letzte Befehl im befehl und soll er zum Steuerrechner geschickt wer- Wiederholungsprogramm wird durch ein Minusden, wird er dann zum Register 121 übertragen. aeichen in der Vorzeichenposition des Befehls fest-
Wenn die Vorrangsteuerung 143 einen Daten- 55 gestellt, wenn dieser letzte Befehl aus dem Überbezugsgang zuläßt, wird der Adressenteil des Daten- wachungsregister in das Pufferregister 124 geschoben befehls im Befehlsregister 121 zu dem Speicher- wird. Wenn sich der Verriegelungsbefehl im Register adresisenpuffer 144 übertragen, und der ganze Befehl 129 befindet, ist der letzte Befehl des Wiederholungswird in das Befehlsregister 122 geschoben. Die Programms im Überwachungsregister enthalten. UmAdresse wird aus dem Speicheradressenpuffer 144 60 faßt das Weiderholungsprogramm weniger als sechs zum Speicheradressenregister 103 oder 104 für den Befehle, muß eine ausreichende Zahl von Lücken ausgewählten Speicher gesteuert. Die Information vorgesehen werden, um dies zu erreichen. Wenn sich wird aus dem ausgewählten Speicher 101 oder 102 in der letzte Befehl des Wiederholungsprogramms im den zugeordneten Puffer 119 oder 120 übertragen Pufferregister 124 befindet, ist der Verriegelungsund wird durch die Speicherpufferschaltung außer- 65 befehl aus dem Register 129 entfernt worden. Das dem entweder im Speicherregister 130 oder im Register 129 wird rückgestellt und damit der Ver-Speicherregister 131 gespeichert. Der Datenbefehl riegelungsbefehl gelöscht. Danach erfolgt die Weiterwird in das Befehlsregister 123 geschoben, und der leitung des Wiederholungsprogramms durch die ver-
für die Ausführung von Speichergängen im Steuerrechner und von anderen als Befehlsbezugsgängen im Hauptrechner benutzt werden können.
Bei der Verriegelungsoperation werden bis zu 6 Befehle aus dem Speicher für den Hauptrechner ausgespeichert. Die Verriegelungs-Operationsart wird eingeleitet durch die Übertragung eines Verriegelungsbefehls aus dem Speicher in das Überwachung^-
schiedenen Register in der Hauptmaschine mit der üblichen Vorrangssteuerung.
Fig.2 ist eine Blockdarstellung der Vorrangsteuerung 143 von Fig. 1. Die Kopiersteuerschaltung trägt die Bezugsziffer 201. Beim Anlegen der erforderlichen Eingangssignale an die Leitung 202 wird ein Signal auf Leitung 203 erlangt, das »Übergang zum Kopiergang« anzeigt. Wenn daher die Leitung 203 ein hohes Potential hat, liefert der Inverter 204 ein Sperrsignal mit niedriger Spannung an seinem Ausgang zur Leitung 205, und dieses wird als »Nicht Steuerung 1« bezeichnet. Dadurch werden also alle anderen Steuerungen 2 bis 7 gesperrt. Falls die Leitung 203 keinen »Übergang zum Kopiergang« anzeigt, hat der Ausgang des Inverters 204 ein hohes Potential und bereitet die Schaltung 206 »Befehlsbezugssteuerung 2« für den Empfang entsprechender Signale auf ihrer Eingangsleitung 207 vor. Dadurch entsteht ein Ausgangssignal auf Leitung 208, dessen Potential steigt und so einen »Übergang zum Befehls- ao bezugsgang« liefert, sowie einen Sperrimpuls am Ausgang des Inverters 209 auf Leitung 210. Das Und-Tor 211 mischt das »Nicht Steuerung !«-Signal auf Leitung 205 und das »Nicht Steuerung 2«-Signal auf 210 und liefert einen Sperrimpuls an seinem Ausgang, falls eine dieser Leitungen ein niedriges Potential hat. Das Ausgangssignal des Und-Tors 201 ist das »Nicht Steuerung 1, 2«-Signal. Wenn diese Ausgangsleitung 212 ein hohes Potential hat und so weder einen Kopier- noch einen Befehlsbezugsgang anzeigt, kann die Hauptspeichersteuerung 213 ein Ausgangssignal auf Leitung 214 auf Eingangssignale auf Leitung 215 hin liefern. Das Ausgangssignal auf 214 bedeutet »Übergang zum Hauptspeichergang« und veranlaßt, daß der Hauptrechner einem Speichergang ausführen kann. Das Ausgangssignal auf 203 »Übergang zum Kopiergang« kann einen Kopiergang entweder für den Haupt- oder für den Steuerrechner anzeigen. Ein Ausgangssignal auf Leitung 208 »Übergang zum Befehlsbezugsgamg« kann einen Befehlsbezugsgang entweder für den Haupt- oder für den Steuerrechner anzeigen. Aber ein Ausgangssignal auf Leitung 214 zeigt nur einen »Übergang zum Hauptspeichergang« für den Hauptrechner an. Wenn die Leitung 214 ein niedriges Potential hat und so anzeigt, daß kein Hauptspeichergang stattfindet, also »Nicht Steuerung 3«, erzeugt der Inverter 216 ein hohes Potential auf Leitung 217 und bereitet so das Und-Tor 218 vor. Wenn zusätzlich ein hohes Potential auf Leitung 219 liegt, das »Nicht Steuerung 1, 2« anzeigt, liefert dieses Und-Tor ein Signal »Nicht Steuerung 1, 2, 3« auf Leitung 220. Dadurch wird die Steuerspeicher-Steuerung 221 vorbereitet und liefert auf Leitung 222 ein Ausgangssignal »Übergang zum Steuerspeichergang« gleichzeitig mit den richtigen Eingangssignalen auf Leitung 223. Wenn die Leitung 222 ein niedriges Potential hat und so einen Eingangsimpuls mit niedrigem Pegel auf Leitung 224 zum Inverter 225 sendet, hat die Leitung 226 ein hohes Potential. Das Und-Tor 227 mischt die Signale der Leitungen 212 und 226 und bildet ein Signal »Nicht Steuerung 1, 2, 3, 4« auf Leitung 228 zu der Hauptdatenbezugssteuerung 229. Dadurch wird 229 vorbereitet, so daß entsprechende Eingangssignale auf Leitung 230 ein Signal »Übergang zum Hauptdatenbezugsgang« auf Leitung 231 erzeugen. Die Leitung 231 ist an den Eingang des Inverters 232 angeschlossen, um den Zustand der Leitung 231 umzukehren und ihr Ausgangssignal dem Und-Tor 233 zuzuführen. Die Leitung 234 verbindet den Ausgang des Und-Tors 227 mit dem Und-Tor 233. Wenn der Ausgang des Und-Tors 233 ein hohes Potential hat, zeigt das an »Nicht Steuerung 1, 2, 3,4 und 5«, und die bei 235 gezeigte Steuerdatenbezugssteuerung 6 wird vorbereitet. Signale auf der Eingangsleitung 236 von 235 erzeugen ein Ausgangssignal auf 237, das »Übergang zum Steuerdatenbezugsgang« bedeutet. Die Leitung 237 ist an den Inverter 238 angeschlossen, dessen Ausgang mit dem Und-Tor 239 verbunden ist. Das Und-Tor 239 mischt das Ausgangssignal des Inverters 238 und des Und-Tors 233. Wenn der Ausgang des Und-Tors 239 ein niedriges Potential hat, zeigt das »Nicht Steuerung 1, 2, 3, 4, 5 und 6« an. Dadurch wird die Haupt- und Steuerbefehlsbezugssteuerung (7) 240 vorbereitet und liefert ein Ausgangssign/al auf Leitung 241 bei Anlegung der richtigen Signale an die Leitung 242. Dieses Ausgangssignal bedeutet »Übergang zum Befehlsbezugsgang«. Die Steuerung 7 wird in Sonderfällen verwendet, wenn keiner der vorhergehenden Gänge ausgeführt werden kann.

Claims (2)

Patentansprüche:
1. Programmgesteuerte datenverarbeitende Maschine, dadurch gekennzeichnet, daß für ein Rechenwerk (139,140,141) mehrere Befehlsregister (124 bis 129, 151, 152) vorgesehen sind, und daß eine Vorrangsteuerung (143) vorgesehen ist, welche die in den Befehlsregistern (124 bis 129, 151, 152) stehenden Befehle nach einer vorbestimmten Rangfolge zur Ausführung bringt.
2. Programmgesteuerte datenverarbeitende Maschine nach Anspruch 1, dadurch gekennzeichnet, daß zur Ausführung eines aus mehreren mehrmals sich wiederholenden Befehlen bestehenden Programms die Befiehle dieses Programms in den Befehlsregistern (124 bis 129, 151, 152) abgespeichert werden, daß die Befehlsregister (124 bis 129, 151, 152) zu einer Schleife zusammengeschaltet werden (150) und daß die Befehle in den Befehlsregistern (124 bis 129, 151, 152) umlaufen und wiederholt ausgeführt werden.
In Betracht gezogene Druckschriften:
Deutsche Patentschrift Nr. 975 265.
Hierzu 1 Blatt Zeichnungen
409 688/295 9.64 © Bundesdruckerei Berlin
DE1960J0019221 1959-12-30 1960-12-24 Programmgesteuerte datenverarbeitende Maschine Expired DE1178623C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US862967A US3202969A (en) 1959-12-30 1959-12-30 Electronic calculator

Publications (2)

Publication Number Publication Date
DE1178623B true DE1178623B (de) 1964-09-24
DE1178623C2 DE1178623C2 (de) 1973-01-25

Family

ID=25339881

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1960J0019221 Expired DE1178623C2 (de) 1959-12-30 1960-12-24 Programmgesteuerte datenverarbeitende Maschine

Country Status (3)

Country Link
US (2) US3202969A (de)
DE (1) DE1178623C2 (de)
GB (1) GB888732A (de)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1296430B (de) * 1964-04-16 1969-05-29 Ncr Co Steuerschaltung fuer den Zugriff eines Rechenwerkes und mindestens einer peripheren Einheit zum Hauptspeicher eines programm-gesteuerten Ziffernrechners
DE1549479B1 (de) * 1966-09-12 1971-06-03 Ibm Schaltungsanordnung zur adressierung eines aus mehreren moduln bestehenden speichers
DE1499288B2 (de) * 1964-12-07 1971-12-23 Western Electric Co Datenverarbeitungsanlage
DE2215066A1 (de) * 1971-03-31 1972-10-05 Ibm Informationsspeicher mit Schieberegister
DE2717374A1 (de) * 1977-04-20 1978-11-02 Hugs Aircraft Co Folgesteuerung fuer das rechenwerk eines computers

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3307150A (en) * 1962-11-16 1967-02-28 Stromberg Carlson Corp Queue store
US3286239A (en) * 1962-11-30 1966-11-15 Burroughs Corp Automatic interrupt system for a data processor
US3349375A (en) * 1963-11-07 1967-10-24 Ibm Associative logic for highly parallel computer and data processing systems
US3343140A (en) * 1964-10-27 1967-09-19 Hughes Aircraft Co Banked memory system
US3519842A (en) * 1964-12-17 1970-07-07 Matsushita Electric Ind Co Ltd Voltage switching device
FR1477814A (de) * 1965-04-05 1967-07-07
US3377621A (en) * 1965-04-14 1968-04-09 Gen Electric Electronic data processing system with time sharing of memory
US3373408A (en) * 1965-04-16 1968-03-12 Rca Corp Computer capable of switching between programs without storage and retrieval of the contents of operation registers
US3435420A (en) * 1966-01-03 1969-03-25 Ibm Contiguous bulk storage addressing
US3426330A (en) * 1966-02-14 1969-02-04 Burroughs Corp Central data processor
US3416139A (en) * 1966-02-14 1968-12-10 Burroughs Corp Interface control module for modular computer system and plural peripheral devices
FR1536616A (fr) * 1966-09-21 Ibm Système de traitement d'instructions avec des perfectionnements pour le branchementet les boucles du programme
FR1541240A (fr) * 1966-11-10 Ibm Accès à chevauchement et à intercalation pour mémoires à plusieurs vitesses
US3496551A (en) * 1967-07-13 1970-02-17 Ibm Task selection in a multi-processor computing system
US3573852A (en) * 1968-08-30 1971-04-06 Texas Instruments Inc Variable time slot assignment of virtual processors
US3573854A (en) * 1968-12-04 1971-04-06 Texas Instruments Inc Look-ahead control for operation of program loops
US3573853A (en) * 1968-12-04 1971-04-06 Texas Instruments Inc Look-ahead control for operation of program loops
US3623017A (en) * 1969-10-22 1971-11-23 Sperry Rand Corp Dual clocking arrangement for a digital computer
JPS514381B1 (de) * 1969-11-24 1976-02-10
BE789583A (fr) * 1971-10-01 1973-02-01 Sanders Associates Inc Appareil de controle de programme pour machine de traitement del'information
CA1051121A (en) * 1974-09-25 1979-03-20 Data General Corporation Overlapping access to memory modules
JPS5848146A (ja) * 1981-09-18 1983-03-22 Toshiba Corp 命令先取り方式
JPS5858653A (ja) * 1981-10-02 1983-04-07 Hitachi Ltd デ−タ処理装置
US4739472A (en) * 1984-12-07 1988-04-19 Nec Corporation Information processing device capable of rapidly processing instructions of different groups

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE975265C (de) * 1949-06-22 1961-10-26 Ibm Elektronische Ziffern-Rechenmaschine

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2925588A (en) * 1954-12-31 1960-02-16 Rca Corp Memory reading system
US2914248A (en) * 1956-03-07 1959-11-24 Ibm Program control for a data processing machine
US3070304A (en) * 1957-04-12 1962-12-25 Thompson Ramo Wooldridge Inc Arithmetic unit for digital control systems
US3058658A (en) * 1957-12-16 1962-10-16 Electronique Soc Nouv Control unit for digital computing systems
US3020525A (en) * 1958-04-04 1962-02-06 American Telephone & Telegraph Record controlled translator
US3061192A (en) * 1958-08-18 1962-10-30 Sylvania Electric Prod Data processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE975265C (de) * 1949-06-22 1961-10-26 Ibm Elektronische Ziffern-Rechenmaschine

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1296430B (de) * 1964-04-16 1969-05-29 Ncr Co Steuerschaltung fuer den Zugriff eines Rechenwerkes und mindestens einer peripheren Einheit zum Hauptspeicher eines programm-gesteuerten Ziffernrechners
DE1499288B2 (de) * 1964-12-07 1971-12-23 Western Electric Co Datenverarbeitungsanlage
DE1549479B1 (de) * 1966-09-12 1971-06-03 Ibm Schaltungsanordnung zur adressierung eines aus mehreren moduln bestehenden speichers
DE2215066A1 (de) * 1971-03-31 1972-10-05 Ibm Informationsspeicher mit Schieberegister
DE2717374A1 (de) * 1977-04-20 1978-11-02 Hugs Aircraft Co Folgesteuerung fuer das rechenwerk eines computers

Also Published As

Publication number Publication date
DE1178623C2 (de) 1973-01-25
GB888732A (de)
US3202969A (en) 1965-08-24
USRE26087E (en) 1966-09-20

Similar Documents

Publication Publication Date Title
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2724125C2 (de)
DE1549522B1 (de) Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner
DE2712224A1 (de) Datenverarbeitungsanlage
DE1282337B (de) Programmgesteuerte elektronische Rechenanlage
DE2019444A1 (de) Datenverarbeitungsanlage
DE1255356B (de) Steuervorrichtung fuer taktgesteuerte Rechenmaschinen
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
DE1499206B2 (de) Rechenanlage
DE2336020B2 (de) Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme
DE1115488B (de) Datenverarbeitungssystem
DE1179027B (de) Speicherprogrammierte digitale Rechenanlage
DE2609698C2 (de) Elektronischer Rechner
DE2136210A1 (de) Zentraleinheit fur eine EDV-Anlage
DE1168129B (de) Verfahren zur Verarbeitung von Daten
DE2403669A1 (de) Spezialcomputer
DE1957600C3 (de)
DE1184122B (de) Addiervorrichtung
DE1499286B2 (de) Datenbearbeitungsanlage
DE1181948B (de) Elektronische Datenverarbeitungsmaschine
DE2220329B2 (de) Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Rechnern
DE2936801C2 (de) Steuereinrichtung zur Ausführung von Instruktionen
DE2004762A1 (de) Übertragungsanschlussgerät
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen

Legal Events

Date Code Title Description
E77 Valid patent as to the heymanns-index 1977
EHJ Ceased/non-payment of the annual fee