DE1181948B - Elektronische Datenverarbeitungsmaschine - Google Patents

Elektronische Datenverarbeitungsmaschine

Info

Publication number
DE1181948B
DE1181948B DEG33624A DEG0033624A DE1181948B DE 1181948 B DE1181948 B DE 1181948B DE G33624 A DEG33624 A DE G33624A DE G0033624 A DEG0033624 A DE G0033624A DE 1181948 B DE1181948 B DE 1181948B
Authority
DE
Germany
Prior art keywords
register
command
instruction
circuit
address
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.)
Pending
Application number
DEG33624A
Other languages
English (en)
Inventor
Charles Henry Propster Jun
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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of DE1181948B publication Critical patent/DE1181948B/de
Pending 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • 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 or look ahead
    • G06F9/3802Instruction prefetching
    • 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 or look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

BUNDESREPUBLIK DEUTSCHLAND
DEUTSCHES
PATENTAMT
AUSLEGESCHRIFT
Internat. Kl.: G 06 f
Deutsche Ki.; 42 m-14
Nummer:
Aktenzeichen:
Anmeldetag:
Auslegetag:
JeM KL1 ty J
.BI. Yi -5. 1.
94S
G 33624IX c/42 m
20. November 1961
19. November 1964
Die Erfindung betrifft eine elektronische Datenverarbeitungsmaschine und bezieht sich insbesondere auf eine digitale Rechenmaschine mit gespeichertem Programm, die für verschiedene Zwecke benutzt werden kann.
Eine Rechenmaschine dieser Art soll in bekannter Weise alle arithmetischen Operationen, und zwar Addition, Subtraktion, Multiplikation und Division durchführen können, sowie weitere Operationen, z. B. die Übertragung von Daten zwischen dem Speicher und der Ein- und Ausgabevorrichtung in Abhängigkeit von einer Folge von Instruktionen oder Befehlen, die in dem Speicher gespeichert sind. Die Rechenmaschine soll auch logische Entscheidungen von sich aus ausführen und auf der Grundlage dieser Entscheidungen Befehle überspringen, abzweigen oder zu anderen Befehlen übergehen.
Viele Befehle erfordern einen Operanden. Wenn der Operand in einem Register bereits verfügbar ist, kann die Operation in einer »Wortzeit« durchgeführt werden. Die Wortzeit ist bei einer Serienrechenmaschine mit einem Speicher, der serienmäßig zugängliche Speicherplätze aufweist, das Zeitintervall zwischen dem Auftreten von einander entsprechenden Binärziffern aufeinanderfolgender Worte beim serienmäßigen Ablesen. Die Wortzeit ist daher eine Funktion der Bitgeschwindigkeit und der Wortlänge, wobei ein Wort eine Gruppe von binärverschlüsselten Digitalsignalen ist und die Bitgeschwindigkeit die Zahl der Bits pro Zeiteinheit angibt, die seriell verarbeitet werden. Wenn der Operand jedoch nicht verfügbar ist oder nicht sofort verfügbar gemacht werden kann, muß Zeit zur Verfügung stehen, um ihn aufzusuchen und verfügbar zu machen. In ähnlicher Weise muß auch, wenn ein Wort in einem Speicher gespeichert ist, Zeit zum Auffinden der Stelle des Speichers zur Verfügung stehen, bevor die Operation durchgeführt werden kann. Bei einer Rechenmaschine, die seriell zugängliche Speicherplätze aufweist, ζ. B. bei einer Rechenmaschine mit Trommelspeicher, ist es möglich, die Zeit zum Aufsuchen der Operanden dadurch möglichst klein zu halten, daß die Operanden an Plätzen gespeichert werden, die sofort nach dem Lesen des Befehls zugänglich sind. Es ist jedoch nicht immer möglich, dem Operanden an der günstigsten Stelle aufzuschreiben.
Nachdem ein Befehl ausgeführt worden ist, muß ein weiterer Befehl aus dem Speicher entnommen werden. Wenn der nächste Befehl nicht ebenfalls an einer Stelle mit möglichst kleiner Zugriffszeit gespeichert werden kann, geht beim Aufsuchen des Elektronische Datenverarbeitungsmaschine
Anmelder:
General Electric Company, Schenectady, N. Y.
(V. St. A.)
Vertreter:
Dr.-Ing. W. Reichel, Patentanwalt,
Frankfurt/M. 1, Parkstr. 13
Als Erfinder benannt:
Charles Henry Propster jun., Phoenix, Ariz.
(V. St. A.)
Beanspruchte Priorität:
V. St. v. Amerika vom 21. November 1960
(70549)
nächsten BeMiIs weitere Zeit verloren. Wenn der Operand jedes Befehls an der günstigsten Stelle aufgezeichnet und die gewünschte Operation in der Wortzeit durchgeführt werden soll, die erforderlich ist, um den Operanden aus dem Speicher abzulesen, dann ist der günstigste Platz für den nächsten Befehl der in der Reihenfolge nächstzugängliche Platz. Zur Erzielung der höchsten Geschwindigkeit und zur günstigsten Ausnutzung der Zeit sollten die Befehle jeweils am übernächsten Platz des Speichers untergebracht werden, und der Operand, der für einen gegebenen Befehl erforderlich ist, sollte an dem nächsten Platz des Speichers aufgezeichnet werden.
Dieses Schema zur günstigsten Programmierung einer Rechenmaschine mit der Reihe nach zugänglichen Speicherplätzen kann nicht immer eingehalten werden, da der Operand nicht stets an dem günstigsten Speicherplatz untergebracht werden kann. Außerdem erfordern einige Operationen von sich aus mehr Zeit als eine Wortzeit zur Ausführung, z. B. die Multiplikation und die Division, so daß die Unterbringung des nächsten Befehls an einer günstigsten Stelle es notwendig macht, daß der Befehl an einem Speicherplatz aufgezeichnet wird, der nach der vollständigen Durchführung der Operation als nächster zugänglich ist; manche Operationen, wie z. B. die Multiplikation gemäß der Erfindung, erfordern eine nicht festliegende Anzahl von Wortzeiten.
Eine Lösung des Problems zur optimalen Programmierung einer Rechenmaschine würde darin be-
409 728/363
stehen. Befehle und Operanden an den günstigsten Plätzen unterzubringen und die Adresse des Operanden sowie die Adresse des nächsten Befehls in jedem Befehl anzugeben. Dies wird im allgemeinen bei einer Vielfach-Adressen-Rechenmaschine auch tatsächlich getan. Bei einer Rechenmaschine mit zwei Adressen enthält z. B. ein Befehl zwei Adressen, nämlich die Adresse eines Operanden und die Adresse des nächsten Befehls. Wenn ein zweiter
einen Adressenvergleicher. Das Rechenwerk bei bekannten Rechenmaschinen enthält ein Eingabe- oder Speicherregister, ein Addierwerk und einen Akkumulator. Außer dem Akkumulatorregister können 5 mindestens ein oder zwei Hilfsregister vorgesehen sein, von denen das eine hauptsächlich den Multiplikator und den Quotienten bei der Multiplikation bzw. Division speichern soll und das andere für spezielle Operationen, z. B. die automatische AbOperand erforderlich ist, wird er aus einem io änderung einer Befehlsadresse vorgesehen ist. Das Speicherregister entnommen, das jedoch keinen Teil Steuerwerk ist der Teil der Rechenmaschine, der bedes Hauptspeichers bildet. Hierdurch wird die Auf- wirkt, daß die anderen Teile so arbeiten, daß die gäbe gelöst, den nächsten Befehl unterzubringen, Befehle eines gespeicherten Programms in der vorwenn er nicht optimal angeordnet werden kann, doch bestimmten Reihenfolge ausgeführt werden. Es entverlängert die Zufügung einer zweiten Adresse zu 15 hält Einrichtungen, die die Arbeitsschritte einleiten, jedem Befehl diesen Befehl, so daß nicht nur mehr welche zum Ablesen und zum Ausführen der BeZeit verbraucht wird, indem die Wortzeit für jeden fehle erforderlich sind, sowie einen Befehlszähler Befehl verlängert wird, sondern auch mehr Speicher- oder eine entsprechende Einrichtung, um die platz. Adresse des nächsten Befehls zu ermitteln, wenn ein
Das Hauptziel der Erfindung besteht daher darin, 20 Befehl ausgeführt worden ist. Das Steuerwerk enteine in Abhängigkeit von der gespeicherten Folge hält auch ein Befehlsregister und Einrichtung zur von Befehlen arbeitende Rechenmaschine zur Ver- Entschlüsselung der darin gespeicherten Befehle. Die arbeitung von Daten zu schaffen, bei der jeder Be- Eingabe-Ausgabe-Vorrichtung enthält im allgemeifehl in einer möglichst kurzen Zeit durchgeführt nen auch ein Puffer- oder Zwischenregister und wird und der nächste Befehl in einer möglichst kur- 25 andere Vorrichtungen, z. B. eine Schalttafel oder ein zen Zeit zugänglich ist. Steuerpult, um dem Speicher der Rechenmaschine
Es ist bekannt, eine Rechenmaschine derart auf- Informationen von Aufzeichnungsträgern, z. B. zubauen, daß das Steuerwerk eine Verbindung zwi- einem Lochband oder einem Magnetband zuzusehen dem Speicher und dem Rechenwerk herstellt, führen. Weitere Eingabevorrichtungen können vorum die gewünschte Operation auszuführen. Dabei 30 gesehen sein. Der Aufbau einer normalen Rechenwird das gewonnene Resultat dem Speicher wieder maschine ist z. B. in dem Buch »Arithmetic Operazugeführt. Um die Arbeitsweise zu vereinfachen
und einfache Rechenvorgänge während der Verarbeitung von Daten im Hauptrechenwerk vornehmen zu können, ist gemäß der Erfindung ein 35
einfaches Hilfsrechenwerk zwischen dem Eingabespeicher und dem teuren Register eingeschaltet. Die
Erfindung ist also dadurch gekennzeichnet, daß das
Steuerwerk eine Verbindung zwischen dem Speicherplatz des langsam arbeitenden Speichers und dem 4° Speicherkapazität sowie der Schaltungen und der schnell arbeitenden Register über das Hilfsrechen- Arbeitszeit der Rechenmaschine zu erzielen. Einer werk zur Ausführung einer gewünschten Operation der wichtigsten Unterschiede ist, daß das Eingabein dem Hilfsrechenwerk während der Übertragung oder Speicherregister weggelassen wird, so daß alle von dem Speicher zum Register oder umgekehrt von Speicherplätzen abgelesenen Informationen einherstellt und daß dem Register bzw. dem Speicher 45 schließlich der Befehle direkt durch das Addierwerk die abgeänderten Daten, die sich aus dem Rechen- des Rechenwerkes einem Register zugeführt werden, Vorgang innerhalb der Wortzeit ergeben, zuführbar
sind.
Weitere Einzelheiten und Merkmale der Erfindung gehen aus der folgenden Beschreibung eines 5° Ausführungsbeispiels hervor. In den Zeichnungen ist Fig. 1 ein Blockschaltbild, in dem die Anordnung der Grundeinheiten der Rechenmaschine dargestellt ist, um den Weg der Signale anzugeben, den
diese bei verschiedenen Funktionen der Rechen- 55 zähler nicht erforderlich ist, um die Stelle des näch-
maschine nehmen; sten Befehls zu bestimmen. Der Speicher enthält
Fig. 2 zeigt ein Schaltbild für die Befehlsfolge; eine umlaufende Magnettrommel, so daß die
F i g. 3 zeigt ein Schaltbild des Rechenwerkes. Speicherplätze auf einer gegebenen Spur der Reihe
Das Blockschaltbild der F i g. 1 zeigt den Verlauf nach zugänglich sind. Durch die Speicherung von
der Information und der Steuersignale in der 6o Einadressenbefehlen an jedem zweiten Speicherplatz Rechenmaschine. Eine Rechenmaschine enthält bei ist es möglich, eine Folge von Einadressenbefehlen normalem Aufbau vier Grundeinheiten: einen automatisch durchzuführen, von denen jeder aus Speicher, ein Rechenwerk, ein Steuerwerk und eine einem Wort oder eine Gruppe von Digitalsignalen Eingabe- und Ausgabevorrichtung. Bei einem besteht, welche ein Kommando oder eine auszufüh-Trommelrechner enthält die Speichereinheit eine 65 rende Operation und die Adresse eines Operanden Magnettrommel, einen Spur- bzw. Kopfwähler, eine darstellt, wenn ein solcher erforderlich ist. Der Einrichtung, die das Ablesen oder Schreiben Operand kann in einer von mehreren beliebigen steuert, Zeitsteuerungskanäle, einen Wortzähler und Spuren gespeichert sein, wenn nur der Sektor, in
tions in Digital Computers« von R. K. Richardo, veröffentlicht 1955 von der D. Van Norstrand Comp., Princeton, N.J., im Kapitel 11 beschrieben. Der Aufbau der Rechenmaschine weicht gemäß der Erfindung von dem normalen Aufbau einer Rechenmaschine in verschiedener Weise ab. Der Zweck dieser Abänderung ist, die Datenverarbeitung rascher zu machen und eine bessere Ausnutzung der
so daß Bauteile gespart werden und die Möglichkeit besteht, eine Operation an einem Wort, während es an dem Speicherplatz abgelesen wird, durchzuführen. Ein weiterer wesentlicher Unterschied ist der, daß wahlweise Befehle mit einer oder zwei Adressen bei dem gleichen Programm verwendet werden können. Einadressenbefehle werden automatisch von jedem zweiten Speicherplatz abgelesen, so daß ein Befehls-
dem er sich befindet, als nächster in der Reihenfolge zugänglich ist, so daß der Operand abgelesen werden kann, während der Befehl ausgeführt wird.
Eine Spur auf einer Magnettrommel ist die Umfangsfläche, die unter einem Magnetkopf beim Umlauf der Trommel vorbeiläuft; ein Sektor ist das Bogenstück, welches gleichzeitig unter allen Köpfen vorbeiläuft, die entlang der Trommelachse angeordnet sind. Die Länge des Bogens, die indirekt durch Zeitimpulse bestimmt wird, die dauernd auf der Trommel aufgezeichnet sind, beträgt eine Wortlänge, zu der noch einige Extrabits hinzukommen, die vorgesehen sind, um eine Umschaltung der Steuerkreise zwischen den Operationen zu ermöglichen. Alle Einadressenbefehle müssen in einer Wortzeit durchgeführt werden können, d. h. in einer Zeit, die erforderlich ist, damit ein Sektor unter einem Kopf vorbeiläuft, so daß der nächstfolgende Befehl während der folgenden Wortzeit abgelesen werden kann. Wenn der Befehl nicht in einer Wortzeit ausgeführt werden kann oder wenn ein Operand benötigt wird, der nicht an dem günstigsten Platz im nächsten Sektor gespeichert werden kann, muß ein Zweiadressenbefehl verwendet werden.
Ein Zweiadressenbefehl besteht aus zwei Wörtern an aufeinanderfolgenden Speicherplätzen, die durch ein kennzeichnendes Digitalsignal im ersten Wort miteinander verbunden sind. Ein solcher Befehl wird im folgenden als 1 + 1-Adressenbefehl bezeichnet, da er aus zwei Wörtern besteht, von denen das zweite Wort den Ort des nächsten Befehls angibt, der in einem beliebigen Sektor liegen kann. Durch Verwendung eines 1 + 1-Adressenbefehls zur Ausführung einer gegebenen Operation ist es möglich, den Operanden an einem beliebigen Platz auf der Trommel unterzubringen und die Durchführung der Operation über mehrere Wortzeiten zu erstrecken, wie es z. B. bei einer Multiplikation und Division erforderlich ist.
Ein 1 + 1-Adressenbefehl ist auch zweckmäßig, um von einer Befehlsfolge auf einer gegebenen Spur auf eine andere, auf derselben Spur oder einer anderen Spur überzugehen. Außerdem kann der Befehl zu einem solchen Übergang, der in dem ersten Wort enthalten ist, auch ein bedingter Befehl sein; nachdem das erste Wort aus dem Speicherplatz abgelesen ist, wird es entschlüsselt und geprüft, ob die angegebene Bedingung zutrifft, bevor das zweite Wort des Befehls, welches die Adresse des nächsten Befehls enthält, zugänglich wird. Wenn die angegebene Bedingung nicht zutrifft, wird das zweite Wort auch noch nicht abgelesen, und der nächste Befehl wird von dem übernächsten Speicherplatz derselben Spur abgelesen.
Der allgemeine Aufbau der Rechenmaschine wird nun an Hand des Blockschaltbildes der F i g. 1 näher beschrieben. Die dicken Linien, welche die einzelnen Rechtecke verbinden, stellen Leitungen dar, über die Informationen in Form von Gruppen von digitalen Signalen übertragen werden können, welche Befehlsadressen, Befehle und zu verarbeitende Daten darstellen. Die dünnen Linien stellen Leitungen dar, über die Steuersignale zur Ausführung der verschiedenen Befehle geleitet werden. Es sei darauf hingewiesen, daß sowohl die Informationsleitungen als auch die Steuerleitungen tatsächlich noch komplizierter, als in Fig. 1 dargestellt ist, verlaufen und daß nur die wichtigsten Leitungen angegeben sind.
Das Speicherwerk enthält eine kontinuierlich umlaufende Trommel 10 mit einer magnetisierbaren Oberfläche, die in eine Anzahl von am Umfang verlaufenden Datenspuren durch eine Anzahl von Magnetköpfen 11,12,13 geteilt ist, von denen jeder sowohl Informationen aufzeichnen als auch ablesen kann. Obwohl nur drei Köpfe dargestellt sind, können natürlich mehr verwendet werden.
Zwei weitere Magnetköpfe i/1800 und H1801 sind zwei Spuren zugeordnet, um Taktgeberimpulse, die von Anfang an aufgezeichnet sind, kontinuierlich abzulesen, wenn die Rechenmaschine in Betrieb ist. Wenn sie auch in dem vorliegenden Ausführungsbeispiel nur zum Lesen dienen, können sie praktisch auch so ausgebildet sein, daß sie die Taktgeberimpulse zu Beginn aufzeichnen. Der Kopf /71800 liest Taktimpulse ab, die gleiche Abstände auf der Spur haben, so daß Synehromsierimpulse geliefert werden, und der Kopf H 1801 liest einen einzelnen Impuls auf der zugeordneten Spur ab, der den Anfangspunkt auf der Trommel kennzeichnet, um einen gewünschten Sektor feststellen zu können.
Eine Schaltung 14 mit einem Verstärker für die Taktimpulse und einem Verstärker für die Anfangsimpulse ist vorgesehen, um zwei phasenverschobene Taktimpulse ΦΪ und Φ2 in Abhängigkeit von jedem Taktimpuls und einem Index- oder Anfangsimpuls IP zu erzeugen, der durch Φ1- und $2-Impulse synchronisiert ist.
Eine Schaltung 15, welche die Zeitlage der Bits steuert, enthält einen 24stufigen Ringzähler zur Erzeugung der Bit-Steuerimpulse LO bis L 23 in Abhängigkeit von <£2-Impulsen, um die Oberfläche der Trommel 10 in hundertachtundzwanzig Sektoren einzuteilen, von denen jeder vierundzwanzig Speicherzellen pro Spur aufweist. Die Umlaufgeschwindigkeit und der Trommeldurchmesser sind so gewählt, daß dreitausendzweiundsiebzig Taktimpulse für jeden Indeximpuls mit einer Geschwindigkeit von 250 kHz gegeben werden. Die Indeximpulse werden dazu benutzt, den Ringzähler zu synchronisieren, der die Bit-Takt-Impulse LO bis L 23 erzeugt.
Eine Steuerschaltung 16 zur Kopfauswahl ist vorgesehen, um einen ausgewählten Magnetkopf mit dem Rechenwerk 25 zu verbinden. Die in der Wicklung des ausgewählten Kopfes induzierten Signale werden dem Rechenwerk 25 sowie einer Paritätsprüfeinrichtung 17 über die Leitungen 18 und 19 zugeführt. In der Paritätsprüfschaltung 17 werden Eingangs-Tor-Schaltungen nur betätigt, wenn Eingangs-Tor-Schaltungen des Rechenwerkes 25 geöffnet worden sind, um ein Wort an ein Register zu übertragen, wenn ein Steuersignal von dem Rechenwerk 25 über eine Leitung 20 zugeführt wird, um eine Paritätsprüfung durchzuführen.
Jedes auf der Trommel gespeicherte Wort wird mit Hilfe eines Paritätsgenerators 29 an einer bestimmten Stelle aufgeschrieben, der die Bits des Wortes abzählt, während es gespeichert wird, und ein zusätzliches Bit 1 oder eine Null aufzeichnet, so daß die Zahl der Einer-Bits in jedem Wort eine ungerade Zahl ist. Um eine Paritätsprüfung auf ungerade Zahlen durchzuführen, ist es daher nur notwendig, die Zahl der Einer-Bits in einem Wort, das abgelesen wird, zu zählen und festzustellen, ob die Zahl ungerade ist.
Die aufzuzeichnenden Wörter werden über eine Leitung 21 dem Paritätsgenerator 29 unter der
Steuerung einer Schaltung in dem Rechenwerk 25 in Abhängigkeit von einem Kommandosignal zugeführt, das einem Befehlsentschlüßler 22 über eine Leitung 23 entnommen wird, die eine Gruppe von Leitungen für alle Kommandosignale darstellt, welche die Betätigung des Rechenwerks 25 verursachen. Ein Befehlssignal, welches die Speicherung eines Wortes in einem Speicherplatz bewirkt, wird ebenfalls über eine Leitung 24 der Kopfauswahl- und Steuer-
den abliest oder ein Wort an einem Speicherplatz in Abhängigkeit von Signalen speichert, die von einer Befehlsfolgeschaltung 34 über eine Leitung 35 zugeführt werden, welche eine Anzahl von Steuer-5 leitungen darstellt. Es sei bemerkt, daß die Sektorteile der Adressen sowohl im α- als auch im /?-Register gleichzeitig mit dem Inhalt des Wortzählers verglichen werden, um getrennte Signale (a FND und β FND) über eine Leitung 36 (die zwei
einrichtung 16 zugeführt, damit ein Schreibsteuer- io Leitungen darstellt) der Befehlsfolgeschaltung zuzukreis in dem Steuerwerk Stromimpulse über eine leiten, um einen von zwei Vorgängen auszulösen, Wicklung des ausgewählten Kopfes zur Löschung und zwar entweder den nächsten Befehl in das eines alten Wortes und zur Niederschrift eines neuen α-Register über das Rechenwerk 25 von einem Platz Wortes schickt. Schreibtaktimpulse WCU, die in der abzulesen, der durch eine Adresse in dem ^-Register Schaltung 14 erzeugt werden, werden zur Synchroni- 15 bezeichnet ist, wenn der letzte Befehl ein 1 + 1-Befehl sierung dem Steuerwerk 16 zugeführt, um die Im- war, oder auf dem Speicherplatz, der durch eine pulse durch die ausgewählte Kopfwicklung in die Adresse im α-Register bezeichnet wurde, eine Aufrichtige Zeitlage zu bringen. zeichnung oder Ablesung vorzunehmen, wenn der Beim vorliegenden Ausführungsbeispiel besteht letzte Befehl, der dem α-Register zugeführt wurde, ein Wort aus einer Gruppe von zwanzig Digital- ao einen Zugang zu einem Speicherplatz erfordert, um Signalen je nach dem entsprechenden Verwendungs- einen Operanden abzulesen oder ein Wort zu zweck. Für ein Wort, welches eine Zahl darstellt, speichern.
bestehen die zwanzig digitalen Signale aus neunzehn Wenn der in dem α-Register vorliegende Befehl
binär verschlüsselten Bits sowie einem Vorzeichen- ein Einadressenbefehl ist, der aus einem Sektor η signal. Das Paritätsprüfsignal bildet ein einundzwan- 25 abgelesen ist, dann wird das Kopfauswahlregister zigstes Bit, das lediglich für eine Paritätsprüfung auf automatisch auf die Spuradresse der Platzadresse ungerade Zahl benutzt wird und daher nur in dem eingestellt, die in dem /(-Register gespeichert wurde, Speicherwerk vorkommt. Da jede Speicherstelle vier- als der letzte 1 +1-Adressenbefehl abgelesen wurde, undzwanzig Binärzellen aufweist, sind drei Extra- um automatisch den nächsten Sektor π+2 derselben zellen zwischen aufeinanderfolgenden Speicher- 30 Spur abzulesen. Auf diese Weise werden Einplätzen vorhanden, so daß ein Raum von drei Bits adressenbefehle automatisch aus jedem zweiten
Speicherplatz einer Spur abgelesen, so wie es durch den Inhalt des /Ϊ-Registers bestimmt wird.
Die volle Adresse eines Befehls, der in dem 35 /J-Register gespeichert ist. wird dazu verwendet, um nur den ersten einer Reihe von Einadressenbefehlen aufzufinden oder um den nächsten 1 + 1-Adressenbefehl aufzufinden, wenn zwei 1 + 1-Adressenbefehle der Reihe nach auftreten. Nur der Spurteil der
der während der Wortzeit abgetastet wird, die auf 4° Adresse in dem ^-Register, die auf das Kopfden Indeximpuls folgt, und indem die Zahl jedes auswahlregister 28 übertragen worden ist, wird über Sektors mit der Sektoradresse des gewünschten
Platzes verglichen wird. Ein Wortzähler 26 und ein
Adressenkomparator 27 sind für diesen Zweck vorgesehen. Der Oktalcode für den ersten Speicherplatz 45
einer gegebenen Spur ist 000 und für den letzten 177.
Die Köpfe und Spuren sind auch der Reihe nach
numeriert und werden dem Oktalcode entsprechend
mit Zahlen von 000 bis 177 bezeichnet. Jede
Speicherplatzadresse besteht daher aus zwei drei- 50 38 und 39 dem Adressenvergleicher 27 zugeführt, stelligen Oktalzahlen, von denen die eine die Spur Außer dem Sektorteil werden mindestens einige der oder den Kopf und die andere den Sektor bezeichnet. Jede dreistellige Zahl wird durch einen 7-Bit-Code dargestellt, so daß eine volle Speicherplatzadresse eine Gruppe von vierzehn digitalen Signalen 55 über eine Leitung 50 zugeführt, um mit entsprechenenthält, den Digitalsignalen verglichen zu werden, die von Ein Kopfauswahlregister 28 ist vorgesehen, um dem α- und yS-Register dem Adressenvergleicher 27 den Spurteil einer Speicherplatzadresse zu speichern, über Leitungen 38 und 39 zugeführt werden, um die über eine Leitung 30 oder 31 empfangen wird, sicherzustellen, daß die Spuradresse in dem Kopfwobei jede Leitung eine Gruppe von sieben Leitun- 60 auswahlregister in der richtigen Weise abgeändert gen für eine Parallelübertragung der Speicher- worden ist, so daß sie mit der Spuradresse in dem adresse darstellt. Das Kopfauswahlregister arbeitet einen oder dem anderen Befehlsregister übereinals Puffer zwischen dem Steuerwerk 16 und zwei stimmt. Sämtliche Leitungen 38, 39 und 40 stellen Befehlsregistern 32 und 33, die im folgenden als dabei Kabel dar, die eine entsprechende Anzahl von x- und /J-Register bezeichnet werden. Das Kopf- 65 Leitungen zur parallelen Übertragung von digitalen auswahlregister wird von dem /^-Register so ein- Signalen enthalten.
gestellt, daß es den nächsten Befehl abliest, und von Wie oben erwähnt, enthält das Rechenwerk 25
dem α-Register so eingestellt, daß es einen Operan- einen Serien-Binäraddierer und komplizierte Steuer-
zwischen den Worten verbleibt. Innerhalb dieser Zeit können Befehlsentschlüsselungen und andere Steuervorgänge der Rechenmaschine ausgeführt werden.
Ein bestimmter Speicherplatz auf einer ausgewählten Spur wird durch Abzählen der Wörter oder Sektoren in der Spur aufgefunden, wobei mit dem ersten Wort in einem Sektor begonnen wird,
eine Leitung 37 (welche eine Gruppe von sieben Leitungen darstellt) dem Steuerwerk 16 zugeführt, um den nächsten Befehl aufzufinden.
Wenn die Adresse eines Speicherplatzes, der durch einen Befehl in dem α-Register oder durch den Inhalt des /^-Registers bestimmt ist, dazu verwendet wird, um einen Speicherplatz aufzufinden, wird der Sektorteil der Adresse parallel über zwei Leitungen
digitalen Signale des Spurteiles, der parallel auf das Kopf auswahlregister 28 über die Leitung 30 oder 31 übertragen wurde, auch dem Adressenvergleicher 27
schaltungen, welche Steuersignale über die Leitung 23 von dem Befehlsentschlüßler aufnehmen. Steuersignale werden auch auf das Rechenwerk von einer Befehlsfolgeschaltung 34 über eine Leitung 43 übertragen, welche zwei Übertragungsleitungen darstellt, von denen die eine zur Übertragung eines Steuersignals zur Beschickung des α-Registers mit einem Befehl aus einem Speicherplatz und die andere für die Übertragung eines Steuersignals zur Beschickung des ^-Registers mit einer Adresse aus einem Speicherplatz ausgebildet sind, da die α- und /5-Register über das Rechenwerk und entsprechende Leitungen 41 und 42 beschickt werden müssen. Während die «- und ^-Register auf diese Weise beschickt werden, werden ihnen Schiebeimpulse von einer α- und /J-Registersteuerschaltung 44 in Abhängigkeit von einem Steuersignal zugeführt, das aus der Befehlsfolgeschaltung 34 über eine Leitung 45 kommt.
Es sei bemerkt, daß das /^-Register nur dann mit einer Adresse aus dem Speicherplatz beschickt wird, wenn ein unterscheidendes Digitalsignal in einem Befehlswort vorhanden ist, das in das α-Register gelangt. Wenn ein solches unterscheidendes Signal vorhanden ist, wird ein Steuersignal über eine Leitung 46 übertragen, um die Operation der Befehlsfolgeschaltung 34 abzuändern und zu bewirken, daß die Steuersignale über die Leitung 43 und 45 dem Rechenwerk 25 sowie der <x- und /?-Registersteuerschaltung 44 zugeführt werden, damit ein Wort in das /3-Register übertragen wird. Das unterscheidende Digitalsignal ist ein Signal, welches ein Bit 1 an der zweiten Stelle 18 des Befehlswortes darstellt, das in das «-Register eingegeben wird, wobei die Bitstellen im vorliegenden Ausführungsbeispiel von 0 bis 19 von der höchsten Stelle bis zur niedrigsten Stelle durchnumeriert sind.
Das /!-Register kann auch mit einer Gruppe von Digitalsignalen beschickt werden, welche die Adresse eines Speicherplatzes darstellen, von dem der nächste Befehl in Abhängigkeit von einem Befehl für eine unbedingte Verzweigung abgelesen werden soll, der nach der Einführung in das «-Register und nach der Entschlüsselung bewirkt, daß der Adressenteil des Befehls in dem «-Register über das Rechenwerk und eine Leitung 27 und an das /J-Register über eine Leitung 42 übertragen wird. Da das α-Register zwanzig Binärstufen beim vorliegenden Ausführungsbeispiel aufweist, um zwanzig Bits zu speichern, und das /3-Register nur vierzehn Stufen zur Speicherung einer Adresse mit vierzehn Bits aufweist, werden die x- und /3-Registersteuerschaltung 44 dazu verwendet, die Arbeitsweise der α- und /^-Register zu synchronisieren, so daß Digitalsignale in das ^-Register nur übertragen werden können, während der Adressenteil des Befehls in dem «-Register durch das Rechenwerk übertragen wird. Danach schaltet die Befehlsfolgeschaltung 34 das Kopfauswahlregister 28 von dem /S-Register 33 um und macht es möglich, daß das Rechenwerk 25 das «-Register 32 über die Leitung 41 mit einem neuen Befehl beschickt, wenn ein Signal (ßFND) über die Leitung 36 von dem Adressenvergleicher empfangen wird, welches anzeigt, daß die von dem /5-Register bezeichnete Adresse aufgefunden worden ist.
Da beide Befehlsregister mit Wörtern, die aus den Speicherplätzen über das Rechenwerk abgelesen worden sind, beschickt worden sind, kann ein gegebenes Wort, welches gerade entweder in das a- oder y?-Register übertragen wird, automatisch abgeändert werden, indem der Inhalt eines X-Registers über das Rechenwerk und eine Leitung 49 synchron übertragen wird, so daß das tatsächlich in dem Befehlsregister gespeicherte Wort die binäre Summe des Wortes aus dem Speicherplatz und des Inhalts des X-Registers darstellt. Da das X-Register hauptsächlich dazu verwendet wird, um den Adressenteil
ίο des Befehlswortes abzuändern, enthält es nur vierzehn Stufen zur Speicherung eines Wortes mit vierzehn Bits. Eine X-Registersteuerschaltung 50 synchronisiert die Arbeitsweise des X-Registers, so daß die darin gespeicherten Bits mit den entsprechenden Bits des Adressenteils eines Wortes addiert werden, das in das α-Register übertragen wird, und mit entsprechenden Bits einer Adresse, die in das /S-Register übertragen wird. :.
Das X-Register kann nicht nur dazu verwendet werden, die Befehlsadressen abzuändern. Zum Beispiel kann es auch dazu benutzt werden, um eine darin gespeicherte Zahl mit einer Zahl zu vergleichen, die durch eine Nummer gegeben ist, welche in einem abgelesenen Befehlsort enthalten ist. Solch ein Befehl zum Vergleichen und Abzweigen, wenn eine bestimmte Relation vorhanden ist, kann dadurch ausgeführt werden, daß die Zahl in dem Befehl in Zweierkomplementform geschrieben wird, so daß, wenn die Zahl im X-Register zu ihr addiert wird, während der Befehl abgelesen wird, in das α-Register nur die Differenz zwischen den beiden Zahlen tatsächlich in das α-Register übertragen wird. Das Zweierkomplement einer Zahl Y ist die Binärzahl, die durch Subtraktion der Zahl von 2n1 erhalten wird und die dazu verwendet werden kann, die Binärzahl — Y darzustellen, wobei η die Zahl der Bits in der Zahl ist.
Das Zweierkomplement einer bestimmten Zahl wird in die Bitstellen des Befehls eingetragen, die normalerweise die Adresse eines Operanden enthalten.
Vergleichs- und bedingte Sprung-, d. h. Abzweigungsbefehle können Befehlscode von zwei verschiedenen Arten enthalten: Die eine Art, die durch den Mnemonikcode BXH bezeichnet wird, wird dazu verwendet, eine Verzweigung zu bezeichnen, wenn der Inhalt des X-Registers gleich oder größer als die im Befehl angegebene Zahl ist; die andere Art, die durch den Mnemonikcode BXL bezeichnet wird, wird dazu verwendet, um einen bedingten Sprung zu bewirken, wenn die Zahl in den X-Registera kleiner als die im Befehl enthaltene Zahl ist. Diese Vergleichs- und Abzweigungsbefehle sind 1 + 1-Adressenbefehle, die ein kennzeichnendes Signal an der Bitstelle 18 aufweisen, welches bewirkt, daß die Befehlsfolgeschaltung das nächste der Reihe nach aus der Spur abgelesene Signal dem /^-Register zuführt. Alle bedingten Sprungbefehle werden von dem Befehlsentschlüßler 22 entschlüsselt, bevor das nächste Wort in das /Ϊ-Register eingeführt wird und eine Prüfung auf den durch den Befehl gegebenen Zustand durchgeführt ist, durch eine Verzweigungsentschlüßler- und Entscheidungsschaltung 51 in Abhängigkeit von Signalen, die über eine Leitung 52 übertragen werden, die aus einer Gruppe von verschiedenen Leitungen für verschiedene Abzweigungsbefehle sowie für Vergleichs- und Abzweigungsbefehle bestehen. Wenn die angegebene Relation
409 728/363
nicht vorhanden ist, wird ein Sperrsignal über eine Leitung 53 der Befehlsfolgeschaltung 34 zugeführt, um ihre Arbeitsweise abzuändern und zu verhindern, daß das nächste Wort in das /3-Register eingeführt wird. Ein neuer Befehl wird dann dem α-Register von der nächstfolgenden Stelle derselben Spur zugeführt.
Eine Anzahl verschiedener Befehle zum Prüfen und Abzweigen können in ähnlicher Weise aus-
59 zugeführt werden und kann verschoben oder direkt dem ß-Register über eine Leitung 60 zugeleitet werden. Das Q-Register kann entweder nur auf das Λ-Register oder auf einen Speicherplatz über das 5 Rechenwerk und eine Leitung 61 übertragen werden oder auch direkt in das A -Register über eine nicht dargestellte Leitung. Da der Inhalt des Λ-Registers verschoben oder direkt in das ß-Register gespeist werden kann und der Inhalt des ß-Registers ver-
als Ringschieberschaltungen auszuführen oder den Inhalt der A- und Q-Register durch gleichzeitige Wortübertragung auszutauschen.
Wenn ein Befehl zur Ringverschiebung der A- und Ö-Register um eine bestimmte Anzahl von Plätzen ausgeführt wird, werden die Vorzeichenbits ih dem A- und Q-Register nicht mitverschoben. Das Vorzeichenbit des Q-Registers wird gleich dem Vor
geführt werden, wie die Befehle zum Vergleichen io schoben oder auf das A-Register übertragen werden und Abzweigen, die im vorhergehenden Abschnitt kann, ist es möglich, entweder die A- und Q-Register beschrieben worden sind. Der Unterschied besteht
darin, daß der Inhalt des Bitregisters nicht zu den
Prüf- und Abzweigbefehlen hinzuaddiert wird,
während diese in das α-Register eingebracht werden, 15
und daß der Zustand, für den eine Prüfung durchgeführt wird, durch die Gruppe von digitalen
Signalen in dem Befehl angegeben wird, der normalerweise einen Operanden bezeichnet. In allen
übrigen Hinsichten werden die Prüf- und Abzweig- 20 zeichenbit des A -Registers gemacht, in dem die Vorbefehle in der gleichen Weise durchgeführt wie die zeichenbitstelle des Q-Registers direkt gleich der Vergleichs- und Abzweigbefehle. Vorzeichenbitstelle des .^-Registers gemacht wird,
Zwei Register 54 und 55 sind außer dem ohne die Vorzeichenbitstelle des ΛΙ-Registers zu än-AT-Register vorgesehen, um die Daten in Überein- dem. Hierdurch wird sichergestellt, daß die Zahlen, Stimmung mit den in das α-Register gegebenen Be- 35 die zwischen den beiden Registern im Kreise verfehlen zu verarbeiten. Diese Register werden im fol- schoben werden, derart miteinander verträglich sind, genden als A- und Q-Register bezeichnet. Das daß beide entweder positive oder negative Zahlen A-Register ist das Akkumulatorregister, das für die sind, so daß der Befehl richtig ausgeführt werden kann. Ausführung der meisten Befehle benutzt wird. Sein Die A- und Q-Register werden gemeinsam zur
Inhalt kann in Abhängigkeit von Verschiebeimpulsen, 30 Multiplikation und Division unter der Steuerung von die mit Hilfe einer A- und Q-Registersteuerschaltung Multiplikations- und Divisionsfolgeschaltungen 62 56 über eine Anzahl von Leitungen gegeben werden, und 63 benutzt. Die Multiplikationsschaltung 62 bedie durch eine einzige Leitung 57 dargestellt sind, wirkt, daß die A- und Q-Register mit Ausnahme verschoben oder übertragen werden, und zwar in ihrer Vorzeichenbitstellen um eine Bitverstellung je-Abhängigkeit von Befehlssignalen, die dem Befehls- 35 weils verschoben werden, um jede Bitstellung des entschlüßler 22 über verschiedene Leitungen 58 ent- Multiplikators, die ursprünglich in dem Q-Register nommen werden. gespeichert war, mit zunehmend höheren Stellen zu
Alle Wortübertragungen aus dem ^-Register an prüfen und zu bewirken, daß der Multiplikant dem eine andere Stelle einschließlich des Speicherplatzes Inhalt des ^-Registers in Abhängigkeit von jedem erfolgen über eine Leitung 59 und über das Rechen- 4° Bit 1 hinzuaddiert wird, das in dem Multiplikator vor werk 25. Eine Wortübertragung auf den Speicher in der Verschiebung der A- und Q-Register festgestellt Abhängigkeit von einem Befehl, den Inhalt des wird.
Λ-Registers an einem Speicherplatz zu speichern, Da die Ausführung eines Multiplikationsbefehls
wird auch durch das Rechenwerk durchgeführt, aber mehr als eine Wortzeit erfordert, sperrt die Multiplinur über den Steuerteil dieses Rechenwerkes. Alle 45 kationsfolgeschaltung 62 die Befehlsfolgeschaltung 34 weiteren Wortübertragungen aus dem A -Register durch ein Sperrsignal, das über eine Leitung 64 in werden über den Binäraddierer des Rechenwerkes Abhängigkeit von einem Kommando des Entschlußdurchgeführt, so daß, wenn ein gegebener Befehl be- lers 22 über eine Leitung 65 übertragen wird. Gleichwirkt, daß irgendein anderes Wort gleichzeitig von zeitig wird ein Zähler 66 in Abhängigkeit von einem irgendeinem anderen Platz, z.B. einem Speicherplatz, 50 Signal, das über die Leitung 67 kommt, eingestellt, übertragen wird, eine arithmetische Operation mit wobei die Leitung 67 eine Anzahl von Leitungen des dem Wort durchgeführt wird, während es das Entschlüßlers 62 darstellen soll, so daß der Zähler Rechenwerk durchläuft. Jede Zahl wird durch eine neunzehn aufeinanderfolgende Schiebeoperationen Anzahl von digitalen Signalen im Binärcode dar- zählen und daher feststellen kann, ob alle neunzehn gestellt, und eine negative Zahl wird als das Zweier- 55 Bits des Multiplikators, die ursprünglich in dem komplement der absoluten Binärzahl angegeben. Q-Register gespeichert waren, geprüft worden sind. Wenn ein Befehl erfordert, daß eine algebraische Bevor eine Multiplikation durch wiederholte Addi-
Diff erenz zwischen zwei Zahlen gebildet wird, wird tion begonnen wird, wird der Multiplikant von einem ein Übertrag-Flip-Flop in dem Rechenwerk gesetzt, Speicherplatz in das «-Register übertragen. Dieser und das Einerkomplement des Subtrahenten wird 60 Speicherplatz ist durch den Befehl selbst bezeichnet, serienweise durch das Rechenwerk hindurchgeführt. so daß es notwendig ist, das Multiplikations-Auf diese Weise wird ein Bit 1 dem Einerkomple- kommandosignal zu speichern, nachdem der Befehl ment des Subtrahenten hinzugefügt, so daß ein entschlüsselt ist. Das wird dadurch erreicht, daß eine Zweierkomplement gebildet wird, während der besondere Speicher-Flip-Flop-Schaltung in dem EntMinuend gleichzeitig durch das Rechenwerk hin- 65 schlüßler 22 für Multiplikationssignale vorgesehen
durchgeführt wird.
Der Inhalt des /4-Registers kann den A- und
X-Registern über das Rechenwerk und eine Leitung
ist. Es sei bemerkt, daß ein Multiplikationsbefehl
mehr als eine Wortzeit benötigt, und daher ein 1 + 1-Adressenbefehl verwendet werden muß, so daß die
Adresse des nächsten Befehls in das ^-Register übertragen wird, bevor der Befehl zum Multiplizieren entschlüsselt und ausgeführt ist.
Wenn der Zähler 66 neunzehn Verschiebeoperationen gezählt hat, und zwar unter Steuerung durch ein Signal, das über eine Leitung 68 zugeführt wird, wird die Folgesteuerung der Multiplikationsfolgeschaltung 62 durch ein Signal über eine Leitung 69 beendet. Zu dieser Zeit befindet sich das Produkt im A-und Q-Register, und zwar die niedrigen Stellen im Q-Register und die höheren Stellen im A-Register. Es sei bemerkt, daß während der Ausführung des Multiplikationsbefehls die aufeinanderfolgenden Additionen des Multiplikanten, die in dem α-Register gespeichert sind, zu immer höheren Stellen des Partialproduktes fortschreiten, das in den A- und Q-Registern entwickelt wird, da das A- und Q-Register nach rechts verschoben werden, während der Multiplikator jeweils um ein Bit geprüft wird.
Während der Inhalt des ^-Registers durch das Rechenwerk hindurchgeführt wird, damit der Multiplikant hinzugefügt werden kann, wird das Vorzeichenbit als Teil der Zahl übertragen. Da jedoch die A- und Q-Register als ein Register verschoben werden, wird die Vorzeichenbitstelle des Q-Registers nicht verschoben und die Vorzeichenbitstelle des Λ-Registers nicht geändert, so daß das Vorzeichenbit des .,4-Registers die leeren Stellen ausfüllt, wenn der Inhalt des ^-Registers in das Q-Register verschoben wird. Auf diese Weise wird dem Produkt automatisch ein Korrekturfaktor hinzugefügt, um einen Fehler zu kompensieren, der dadurch entsteht, daß ein negativer Multiplikant in dem α-Register als Zweierkomplement ausgedrückt ist. Ein weiterer Korrekturfaktor muß hinzugefügt werden, um einen Fehler zu korrigieren, der dadurch entsteht, daß der Multiplikator in dem Q-Register in Zweierkomplementform gespeichert ist, aber dies wird in einfacher Weise dadurch erreicht, daß das Zweierkomplement dem endgültigen Produkt als letzter Schritt hinzugefügt wird.
Ein Divisionsbefehl wird in ähnlicher Weise durchgeführt wie ein Multiplikationsbefehl; nachdem der Befehl entschlüsselt ist, wird ein Kommandosignal in einem besonderen Speicher-Flip-Flop gespeichert, der in dem Entschlüßler 22 vorgesehen ist, um die Divisionsfolgeschaltung 63 zu betätigen und die Befehlsfolgeschaltung 34 stillzusetzen, nachdem der Divisor in dem Speicherplatz, der durch den Befehl gekennzeichnet ist, aufgefunden worden ist, so daß der Divisor in das α-Register übertragen werden kann. Die Divisionsfolgeschaltung 63 setzt die Befehlsfolgeschaltung durch ein Signal über eine Leitung 70 außer Betrieb. Der Zähler 66 wird durch ein Divisionskommandosignal über die Leitung 67 eingestellt, so daß eine vorbestimmte Zahl von Wortzeiten, die erforderlich ist, um den Befehl auszuführen, gezählt werden kann.
Eine Division wird durchgeführt, indem der Divisor in dem «-Register wiederholt von entsprechenden Stellen des Dividenden in dem A- und Q-Register abgezogen wird. Die entsprechenden Stellen des Dividenden werden automatisch in dem A-Register für jede Subtraktion gespeichert, weil nach jeder Subtraktion das A- und Q-Register um einen Platz nach links verschoben wird, wenn ein Bit 1 oder ein BitO in die niedrigste Bitstelle des Q-Registers eingeführt wird, je nachdem, ob die die verhergehende Subtraktion einen positiven oder negativen Rest ergeben hat. Die Subtraktionen werden wiederholt, bis neunzehn Bits des Quotienten in dem Q-Register vorhanden sind, während der Rest von neunzehn Bits in dem ^-Register verbleibt. Es sei bemerkt, daß die Verschiebung nach links durch eine Ringverschiebung der A- und Q-Register um einen vollen Umlauf vermindert um einen Platz zustande kommt, da im vorliegenden Beispiel nur eine Ver-Schiebung nach rechts vorgesehen ist.
Jede Subtraktion erfordert eine Wortzeit, da der Inhalt des α-Registers und des A -Registers durch das Rechenwerk hindurchgeführt werden muß, um einen Rest zu erhalten, der in dem /!-Register gespeichert ist. Daher ist ein Minimum von neunzehn Wortzeiten für die Durchführung des Teilungsbefehles erforderlich. Zusätzliche Wortzeiten werden benötigt, um den Dividenden für die Operation vorzubereiten und um den endgültigen Quotienten und den Rest in eine bestimmte Form taazuwandeln. Wenn die erforderliche Anzahl von Wortzeiten unter Steuerung durch ein Signal der Divisionsfolgeschaltung 68 über eine Leitung 71 gezählt worden ist, wird die Divisionsfolgeschaltung deck ein Signal über die Leitung 69 außer Betrieb gesetzt, «ad die Befehlsfolgeschaltung 34 wird wieder betätigt, ssßi den nächsten Befehl unter der Adresse aufzufinden, Se <dmrch den Inhalt des /3-Registers bezeichnet ist, und ihn m «das Λ-Register zur Ausführung zu übertragen.
Der Zähler 66 wird häuiger dazu benutzt, um zu zählen, um wieviel Stufen oder Plätze der Inhalt eines bestimmten Registers nach rechts unter der Steuerung eines Befehls in dem α-Register verschoben worden ist, welcher nicht nur festlegt, daß das oder die Register verschoben werden sollen, sondern auch die Zahl der Plätze bestimmt. Wenn der Inhalt eines Registers um die bestimmte Anzahl von Plätzen verschoben worden ist, wird der Steuerteil des Registers durch, ein Signal über eine nicht dargestellte Leitung außer Betrieb gesetzt. Signale des Befehlsentschlüßlers 34 werden über die Leitung 67 übertragen, um den Zähler 66 einzustellen, wenn ein Verschiebebefehl in einem Befehl entschlüsselt wird, damit er die Zahl der Plätze, um die verschoben werden soll, abzählen kann.
Da allen negativen Zahlen in Form eines Zweierkomplements dargestellt sind, ist es notwendig, daß die leeren Stellen des /!-Registers mit dem Vorzeichenbit ausgefüllt werden, wenn sein Inhalt um eine bestimmte Anzahl von Plätzen verschoben wird, damit der Wert der Zahl beim Verschieben nicht geändert wird. Wenn eine negative Zahl z. B. im /!-Register gespeichert ist und es notwendig ist, sie nach rechts zu verschieben, um sie durch Verschiebung gegenüber einem festen binären Punkt abzuzählen, müssen leere Plätze mit Einerbits ausgefüllt werden, da sonst Nullbits in die leeren Plätze hineingeschoben würden, die den Wert der negativen Zahl im /!-Register verändern würden. Diese Maßnahme wird einfach dadurch erzielt, daß der Eingangskreis des Flip-Flops, der für die höchste BitsteSe (die Vorzeichenbitstelle) der im A -Register gespeicherten Zahl vorgesehen ist, gesperrt wird.
Ein iV-Register 75 ist in dem Eingabe-Ausgabe-Teil 76 als Eingabe- und Ausgabezwischenregister vorgesehen. Die von einem Bandlesegerät 225 abgelesenen Daten werden über eine Ablesesteuerschaltung 77 parallel dem iV-Register zugeführt. Darauf
wird unter dem Einfluß einer Programmsteuerung der Inhalt des iV-Registers in das A -Register über eine Leitung 78 seriell verschoben. Ein Signal über eine Leitung 79 von dem Entschlüßler 22 bewirkt, daß eine iV-Registersteuerschaltung 80 das N-Register verschiebt. Um Daten abzulesen, wird der Vorgang dadurch umgekehrt, daß eine Gruppe von digitalen Signalen seriell in das iV-Register von dem/!-Register über eine Leitung 81 entsprechend einer Programmauf Steuersignale über eine Leitungsgruppe 95 anspricht, steuert diese Betätigung über Leitungen 96 und 97.
Die Daten können auch in das Rechengerät über 5 das A -Register mit Hilfe von anderen Vorrichtungen, z. B. eine Gruppe von handbetätigten Schaltern entweder direkt oder unter einer Programmsteuerung eingegeben werden. Von Hand betätigbare Übertragungsschalter sind ebenfalls vorgesehen, um zu be-
steuerung eingegeben und dann parallel von dem io wirken, daß die so in das A -Register eingegebenen N-Register einer Schreibmaschine 221 über eine Daten auf andere Register übertragen werden können. Gruppe von Leitungen eines Kabels 82 zugeführt Außer durch handbetätigte Schalter können die wird. Sie wird auch einer Ausgabesteuerschaltung 83 Daten auch direkt in das Λ-Register durch Parallelzugeleitet, die eine Entschlüßlermatrix enthält und übertragung von einem äußeren Register über eine bewirkt, daß ein Buchstabe, der der Gruppe von 15 Gruppe von UND-Schaltungen übertragen werden, Digitalsignalen in dem iV-Register entspricht, ge- die von einer Programmsteuerung gesteuert werden.
Diese zusätzlichen Eingabevorrichtungen, die in F i g. 1 nicht dargestellt sind, werden weiter unten beschrieben.
Die Rechenmaschine enthält insgesamt: Ein Speicherwerk einschließlich einer Magnettrommel sowie der zugehörigen Schreib- und Leseköpfe und der Steuervorrichtung, wie ein Kopfauswahlregister, Wortzähler, Adressenvergleicher und Paritätsgenera
schrieben wird.
In der Eingabe- und Ausgabeschaltung 76 sind
zwei nicht dargestellte Relaiskontakte in Reihe geschaltet und bilden eine UND-Schaltung, welche 2°
bewirkt, daß ein Signal der Abzweigungs-Entscheidungsschaltung 51 über eine nicht dargestellte Leitung zugeführt wird, so daß ein Befehl zum Abzweigen (bedingter Sprung) ausgeführt werden kann,
wenn die letzte elektromechanische Operation des 25 tor und Prüf vorrichtungen; ferner ein Rechenwerk Bandlesegerätes 225 oder der Schreibmaschine 221 mit einem Addierer und Steuerschaltungen; ferner beendet ist. Getrennte Abzweigungsbefehle für das ein Steuerwerk mit einer Befehlsfolgeschaltung, Ent-Bandablesegerät und die Schreibmaschine sind vor- schlüsselungsschaltung und einer Abzweigungs- und gesehen, indem für jeden dieser Teile Entschlüßler Entscheidungsschaltung, einem Zähler, einer Multi- und Entscheidungsschaltungen angeordnet sind; da 30 plikationsfolgeschaltung, einer Divisionsfolgeschalaber die nicht dargestellte UND-Schaltung in der tung und einem Steuerpult; eine Ein- und Ausgabe-Ein- und Ausgabeschaltung 76 ein gemeinsames Si- vorrichtung einschließlich eines iV-Registers, einer gnal liefert, das anzeigt, daß ein vorhergehender Schreibmaschine und der zugehörigen Steuerschalelektromechanischer Vorgang beendet ist, brauchen tungen, eines Bandlesegerätes und der zugehörigen auch nur ein Abzweigungsbefehl und eine Anord- 35 Steuerschaltungen sowie anderer Eingabevorrichnung zu seiner Entschlüsselung vorgesehen zu wer- tungen und Speicherregistern, zu denen die A-, Q-den. Da die Bedingung, die geprüft werden muß, um und X-Register gehören.
festzustellen, ob die Abzweigung durchgeführt Im folgenden werden verschiedene Zeit- oder werdensoll, aus der Anwesenheit eines vorbestimmten Taktimpulse näher beschrieben, die von an sich bevon der UND-Schaltung erzeugten Signals besteht, 40 kannten Schaltungen abgeleitet werden können. Das braucht nur eine Abzweigungsverschlüsselungs- und grundlegende Taktsignal wird von einem Oszillator Entscheidungsschaltung für den Befehl der Abzwei- abgeleitet, der eine Frequenz von 250 kHz erzeugt, gung vorgesehen zu werden, der gegeben wird, wenn Impulsformschalrungen, die nicht dargestellt sind der letzte elektromechanische Vorgang beendet ist, und die an sich bekannt sind, liefern Rechteckunabhängig davon, ob der letzte Vorgang das Band- 45 impulse von 0,9 MikroSekunden Dauer, die als Φ1-ablesegerät oder die Schreibmaschine betraf, da das Taktimpulse bezeichnet werden, sowie die KompleiV-Register als Eingabe- und Ausgabepuffer benutzt mentimpulse Φ'. Andere ähnliche Taktimpulse werden kann, so daß nur eine Eingabe- oder Aus- können von diesen Impulsreihen abgeleitet werden, gabevorrichtung in einem bestimmten Zeitpunkt z.B. die Impulse Φ2 und Φ'2, die ebenfalls eine tätig ist. Diese Maßgabe ist von Vorteil, wenn eine 5° Wiederholungsfrequenz von 250 kHz aufweisen, aber größere Anzahl von Eingabe-Ausgabe-Vorrichtungen um 180°, d.h. 1,8 Mikrosekunden gegenüber den dem Rechengerät bei einer speziellen Ausführung Φ 1-Impulsen verschoben sind, hinzugefügt wird. Die genaue Zeitlage jedes Vorganges innerhalb Ein weiteres Eingabezwischenregister 90, das auch einer gegebenen Wortzeit in dem ganzen Rechenais /-Register bezeichnet wird, ist vorgesehen, damit 55 gerät wird durch Bittaktimpulse LO bis L 23 und Daten ihm von einem äußeren Akkumulator 91 par- ihre Komplementimpulse LO'bis L 23' bewirkt. Jeder allel über eine Leitung 92 zugeführt und über eine einzelne Bittaktimpuls, der innerhalb einer gegebenen Leitung 93 dem Rechenwerk 25 zugeführt werden Wortzeit erzeugt wird, bildet eine Takteinheit von können. Ein besonderer Befehl ist vorgesehen, um 4 Mikrosekunden, die einer Speicherzelle auf der gleichzeitig eine in einem besonderen Speicherplatz 60 Trommel entspricht. Wie oben erwähnt, besteht ein befindliche Zahl durch das Rechenwerk hindurch- Datenwort aus zwanzig Bits, und zwar neunzehn zuführen, so daß die Summe von dem Ausgang des Bits plus einem Vorzeichenbit. Ein Befehlswort beRechenwerkes in das A -Register über die Leitung 74 steht aus zwanzig Bits, die übrigen Bits werden für übertragen wird. Der äußere Datenakkumulator 91 die Paritätsprüfung und andere Steuerzwecke bekann eine automatische Speicherschaltung sein, die 65 nötigt. Für die Befehlsfolge besteht eine Wortzeit Daten festhält, welche periodisch einem vorher in aus dreiundzwanzig Bitzeiten, die von der Vordereinem Speicherplatz gespeicherten Ergebnis hinzu- front eines L21-Impulses bis zur Rückfront eines gefügt werden. Eine/-Registersteuerschaltung 94, die L20-Impulses rechnen. Es sei bemerkt, daß Zu-
sammengehörigkeit eines gegebenen Bits mit einem Bitzeitimpuls erst dann eine zeitliche Koinzidenzbezeichnung ergibt, wenn das betreffende Bit abgelesen worden und für die Durchführung eines Befehls verfügbar ist. Der Grund hierfür ist darin zu sehen, daß, wenn ein Wort aus dem Speicher in ein Register, z. B. das /!-Register, gelesen wird, das niedrigste Bit 19 in der neunzehnten Stufe des Schieberegisters vorhanden ist. Wenn z.B. das aus dem Speicher abgelesene Wort ein Befehl ist, wird es in das α-Register eingegeben. Das neunzehnte oder niedrigste Bit wird dann in der neunzehnten Stufe des α-Registers gespeichert.
Das neunzehnte Bit eines Befehlswortes gibt immer an, ob der Inhalt des Z-Registers dem Befehl hinzuaddiert werden soll oder nicht, wenn er auf dem Trommelspeicher abgelesen wird. Das achtzehnte Bit gibt immer an, ob der laufende Befehl ein Eineradressenbefehl oder ein 1 + 1-Adressenbefehl ist. Die übrigen Bits 0 bis 17 werden dazu verwendet, um die auszuführende Operation, einschließlich der Spur und des Sektors des Operanden, wenn ein solcher erforderlich ist, sowie eine Konstante (K) oder die Länge der gewünschten Verschiebung anzugeben.
Die Bits werden vorzugsweise in einem Schieberegister erzeugt, das vierundzwanzig Stufen LO bis L 23 aufweist, die im Ring geschaltet sind und als Ringzähler arbeiten, indem ein Startimpuls, der eine Stufe schaltet, von Stufe zu Stufe in Form einer Schleife 128mal während einer Trommelumdrehung in Abhängigkeit von Φ'-Impulsen übertragen wird.
Jeder Bittaktimpuls, z.B. der ImpulsL16 ist ein 4 Mikrosekunden langes Spannungssignal von 0 Volt, das von der Vorderflanke eines 02-Impulses bis zur Vorderflanke des nächsten 4>2-Impules dauert und über eine Umkehrschaltung verteilt wird.
Nachdem der allgemeine Aufbau des Rechengerätes gemäß der Erfindung beschrieben worden ist, wird nun unter Bezugnahme auf Fig. 2 und 3 eine bevorzugte Ausführung spezieller Teile des Rechengerätes näher erläutert.
Die Befehlsfolgeschaltung liefert Steuersignale, so daß die Komponenten der Rechenmaschine derart miteinander zusammenarbeiten, daß Befehle automatisch dem Speicher in der richtigen Reihenfolge entnommen und ausgeführt werden.
In der Rechenmaschine werden zwei Arten von Befehlen verwendet: Einadressenbefehle und 1 + 1- oder Doppeladressenbefehle. Da die erste Art nur ein Wort erfordert, und die zweite Art von Befehlen zwei Wörter benötigt, kann die Befehlsfolgeschaltung auf zwei verschiedene Weisen arbeiten. Bei der einen Art der Betätigung wird ein Einadressenbefehl von einem Speicherplatz einem /!-Register während einer Wortzeit zugeführt und während der nächsten Wortzeit ausgeführt. Ein vollständiger Arbeitskreislauf für einen Einadressenbefehl besteht daher aus zwei Vorgängen, und zwar der Einführung des nächsten Befehls der Reihe nach in das A -Register und der Durchführung desselben. Ein 1 + 1-Adressenbefehl erfordert fünf oder mehr Wortzeiten, um die im Befehl enthaltenen Vorgänge durchzuführen: eine Wortzeit um das erste Wort in das A -Register einzuführen, welches den Operationscode oder das Kommando sowie die Adresse eines Operanden enthält, wenn ein solcher erforderlich ist; eine weitere Wortzeit, um das zweite Wort, welches die Adresse des nächsten Befehls enthält, in das /3-Register einzuführen; ferner ein oder mehrere Wortzeiten, um den Platz des Operanden aufzusuchen, wenn ein solcher durch das erste Wort bezeichnet worden ist; ein oder mehrere Wortzeiten, um den Befehl auszuführen, je nachdem, welche Operation durch den Kommandoteil angegeben worden ist; und ein oder mehrere Wortzeiten, um den Platz des nächsten Befehls aufzusuchen, der durch das zweite Wort angegeben ist, das in dem /5-Register gespeichert ist. Die Befehlsfolgeschaltung wird automatisch von der ersten Arbeitsweise auf die zweite zur Ausführung eines 1 + 1-Adressenbefehls dadurch umgeschaltet, daß ein Bit 1 in der Stelle 18 des ersten Befehlswortes in das α-Register eingegeben wird.
Wenn ein Befehl nicht in einer Wortzeit ausgeführt werden kann oder wenn der nächste Befehl in dem Speicherplatz, der während der nächsten Wortzeit zugänglich ist, die auf die Ausführungswortzeit folgt, nicht aufgefunden werden kann, muß der nächste Befehl als 1 + 1-Adressenbefehl geschrieben werden. Es gibt verschiedene spezielle Befehle, die als 1 + 1-Adressenbefehle geschrieben sind, die es jedoch erforderlich machen, daß die Befehlsfolgeschaltung von dem normalen Arbeitslauf für einen 1 + 1-Adressenbefehl abweicht. Dies sind:
1. Abzweigbefehle, d.h. bedingte Sprungbefehle werden zwar als 1 + 1-Adressenbefehle beschrieben, sie erfordern aber, daß eine bestimmte Bedingung vorhanden ist, bevor die Adresse des nächsten Befehls in das ^-Register eingegeben werden kann. Wenn diese Bedingung nicht vorhanden ist, wird der Befehl ausgeführt, als ob er ein Einadressenbefehl wäre, und der normale nächste Befehl, der in der Reihe folgt, wird in das /!-Register von derselben Spur eingegeben, nachdem eine volle Wortzeit verstrichen ist, während der Sektor, welcher die Adresse enthält, unter der die Abzweigung ausgeführt worden wäre, abgetastet, aber nicht in das /^-Register eingegeben wird.
2. Schieber- und Wortübertragungsbefehle überspringen, wenn sie als 1 + 1-Adressenbefehle geschrieben sind, den Vorgang des Aufsuchens eines Operanden, wenn ein solcher nicht besonders angegeben ist. Dies wird dadurch erzielt, daß ein Signal (aFND) in dem Adressenvergleicher zwangsweise erzeugt wird, welches den Vorgang des Aufsuchens eines Operanden vortäuscht, wenn ein solcher nicht verlangt worden ist.
3. Multiplikations- und Divisionsbefehle sind 1 + 1-Adressenbefehle, die viele Wortzeiten zur Ausführung benötigen, während andere Befehle nur eine Wortzeit zur Ausführung benötigen, nachdem ein erforderlicher Operand aufgefunden worden ist. Um zusätzliche Wortzeiten verfügbar zu machen, wird eine Suche nach dem nächsten Befehl nach der üblichen einen Wortzeit für die Ausführung gesperrt, und zwar durch ein Multiplikations- oder Divisionssteuersignal (MPY oder DVD), bis ein Signal (END MPY oder END DVD) aus der Multiplikationsoder Divisionsbefehlsfolgeschaltung aufgenommen worden.ist, das anzeigt, daß der Vorgang beendet wurde.
Außer den eben erwähnten speziellen Befehlsarbeitskreisläufen ist eine manuelle Betätigung vor-
409 728/363
nächsten Wortzeit erzeugt, so daß ein Wort von einem Sektor in einer Spur, die durch den Inhalt des /^-Registers gekennzeichnet ist, in das «-Register eingegeben wird. Wenn der zuletzt ausgeführte Befehl ein Einadressenbefehl war, wird der in das «-Register eingegebene Befehl in dem nächsten Speichersektor untergebracht, der auf derselben Spur liegt wie der vorhergehende Befehl, jedoch nach der vollständigen Ausführung des letzten Befehls.
Man kann dies anders auch so ausdrücken: wenn ein Einadressenbefehl nach einem 1 + 1-Adressenbefehl in dem Programm erreicht wird, wird er von einer Adresse TN, die durch das /i-Register gegeben ist, abgelesen und in das α-Register während einer
die Befehlsfolgeschaltung wiederum ein LOADw-Signal, damit der nächste Befehl an der Adresse T (n+2) in das α-Register eingegeben wird.
Während jeder Einadressenbefehl in das α-Register eingespeist wird, erfolgt die Spurauswahl von den Digitalsignalen in den Stellen 4 bis 10 des /J-Registers über das Kopfauswahlregister28 (F i g. 1). Wenn der Befehl einen Operanden erfordert, wird
gesehen, die bewirkt, daß die Befehlsfolgeschaltung in normaler Weise für einen Einzeladressenbefehl umläuft, jedoch in der Stellung stehenbleibt, in der der Operand während jedes 1 + 1-Adressenbefehlsarbeitskreislaufes gesucht wird, selbst wenn ein Operand nicht erforderlich ist und ein aFMD-Signal, wie oben erwähnt, erzeugt wird. Diese Art der Handsteuerung ermöglicht es, die Rechenmaschine zwischen aufeinanderfolgenden Einzeladressenbefehlen anzuhalten, wenn Programmprüfungen oder Betriebs-Prüfungen durchgeführt werden sollen.
Wenn eine Programmprüfung oder Betriebsprüfung
mit einem Einzeladressenbefehl durchgeführt werden soll, kann ein 1 +1-Schalter geschlossen werden, um
das Vorhandensein eines Bits 1 in der Stellung 18 15 gegebenen Wortzeit eingeführt, wobei T derjenige eines jeden Einzeladressenbefehls vorzutäuschen, so Teil der Adresse ist, die die Spur angibt, und N der daß die Befehlsfolgeschaltung arbeitet, als ob alle Teil der Adresse ist, welche den Sektor bezeichnet.
Befehle 1 + 1-Adressenbefehle wären, und während Während einer zweiten Wortzeit, während der Sekjedes Arbeitskreislaufes auf der Suche nach einem tor N+l abgetastet wird, wird der Befehl im a-Re-Operanden anhält. Bevor jeder Befehl ausgeführt 20 gister ausgeführt, und bei Beginn der dritten Wortzeit, wird, muß darauf geachtet werden, daß der Spurteil während der Sektor N+ 2 abgetastet wird, erzeugt
der Adresse in dem ^-Register von Hand für jeden Einadressenbefehl wieder eingeführt wird, weil durch die zwangsweise Herbeiführung eines 1 + 1-Adressenbefehlskreislaufes eine äußere Gruppe von Digital-Signalen in das /^-Register als Adresse des nächsten Befehls eingeführt wird, während die Adresse des nächsten Befehls sich in derselben Spur befinden muß, wie die Adresse des laufenden Befehls, der
durch den Inhalt des ^-Registers bestimmt ist (der 30 die Spur des Operanden, z. B. aus den Digitalsignalen dort in Abhängigkeit von dem letzten 1 + 1-Adressen- an den Stellen 4, 8, 9 und 10 des α-Registers und den befehl des Speicherprogramms aufgezeichnet ist), Stellen 5 bis 7 des /S-Registers ausgewählt. Die sich jedoch an einem Speicherplatz befindet, der Stelle 4 des α-Registers bezeichnet eine von zwei Mazwei Wortzeichen später abgetastet wird. Es muß trizen, aus denen eine spezielle Gruppe von Köpfen darauf geachtet werden, daß auch die Sektorbezeich- 35 ausgewählt werden soll. Die Stellen 5 bis 7 des /S-Renung für den nächsten Befehl eingesetzt wird. Wenn gisters bezeichnen eine Gruppe von acht Köpfen, z. B. der laufende Befehl von der Spur T im Sektor η und die Stellen 8, 9 und 10 bezeichnen einen beabgelesen wird, muß vor seiner Ausführung die stimmten Kopf dieser Gruppe, der der Spur zugeord-Adresse des nächsten Befehls in der Spur T im Sek- net ist, auf welcher sich der Operand befindet. Nachtor n+2 von Hand in das ^-Register eingegeben 40 dem der Befehl ausgeführt worden ist, wird der werden. Diese Adresse wird der neue Bezugswert für nächste Befehl von dem nächsten Sektor n+2 in der die übrigen Einadressenbefehle, die in abwechseln- Spur T abgetastet, der durch den Inhalt des /?-Regiden Sektoren η+4, η+6 usw. der Spur Γ auf ge- sters gegeben ist.
zeichnet sind, bis sie dadurch zerstört wird, das ein Der Inhalt des /9-Registers wird nur durch einen
Kreislauf für einen 1 + 1-Adressenbefehl zwangs- 45 1 + 1-Adressenbefehl geändert. Eine Reihe von Einadressenbefehlen, die auf einen 1 + 1-Adressenbefehl erfolgt, muß daher in der Spur gesucht werden, die durch die Adresse des ^-Registers gegeben ist. Eine Sektoradresse ist nicht erforderlich, um auf einander-Die Befehlsfolgeschaltung der F i g. 2 enthält 50 folgende Einadressenbefehle der Reihe nach aufzusieben Flip-Flops F 700 bis F 706. Der Flip-Flop finden, da sie automatisch von jedem zweiten Sektor F 700 wird nur für Fortschaltung von Hand verwendet, während ein Schalter 525 offen ist, damit
die UND-Schaltungen G 703 und G 704 geöffnet werden können. Für die normale Fortschaltung wird der 55
Schalter geschlossen gehalten, so daß die UND-Schaltungen G 703 und G 704 gesperrt sind und die
Flip-Flop-Schaltung F 700 sperren, so daß die Befehlsfolgeschaltung durch sie nicht betätigt werden
kann und die Vorgänge automatisch von einem 60 Flop F7"02 gesetzt werden und der Flip-Flop F706 Befehl zum nächsten ablaufen. zurückgesetzt werden. Der Flip-Flop F702 ist bereits
Nur zwei Flip-Flops F702 und F705 werden wäh- gesetzt, da das «-Register gerade beschickt worden rend eines Einadressenarbeitskreislaufes verwendet. ist, und der Flip-Flop F 706 ist zu dieser Zeit zu-Nachdem ein Befehl gerade ausgeführt worden ist, rückgesetzt, weil der Befehl, der gerade in das wird der Flip-Flop F 702 gesetzt und der Rip-Flop 65 «-Register eingeführt worden ist, ein Einadressen-F705 durch einen Taktimpuls L 21 zurückgesetzt. befehl ist und durch ein Bit 0 an der Bitstelle 18 geWenn der Flip-Flop F702 gesetzt ist, wird ein Signal kennzeichnet ist. Der Flip-Flop F706 wird durch LOADx an der Klemme F702' für die Dauer dei einen Φΐ'-Impuls während eines Taktimpulses Ll'
weise für den Einadressenbefehl herbeigeführt wird, der aus dem Sektor n—4 abgelesen wird.
Arbeitskreislauf für Einadressenbefehle
abgelesen werden, wobei der erste Sektor in dem /i-Register durch den 1 + 1 Adressenbefehl gekennzeichnet ist.
Nachdem ein Einadressenbefehl in das α-Register zur Ausführung abgegeben worden ist, setzt ein Taktimpuls L 21 die Flip-Flop-Schaltung F 702 zurück und setzt die Flip-Flop-Schaltung F 705. Um die Flip-Flop-Schaltung F 705 zu setzen, muß der Flip-
zurückgesetzt, wenn das Bit an der Stelle 18 des
Befehls bei Speicherung in dem Flip-Flop F1400
eine Null ist. Der Flip-Flop F1400 ist ein Puffer-Flip-Flop in dem Rechenwerk 25 und enthält das
Bit, welches aus der Stelle 18 des Speichers addiert
werden muß, da das Bit der Stelle 17 den Flip-Flop
F1400 erst setzt oder zurücksetzt, nachdem der Φ2-Impuls abgelaufen ist, der während der L2'-Impulsperiode auftritt.
der UND-Schaltung G 701 auf +6VoIt liegen. Dies ist ein Zustand, der ebenfalls dauernd vorhanden ist, ausgenommen, wenn ein Divisions- oder Multiplikationsvorgang gerade beendet worden ist. Es wird 5 ferner angenommen, daß alle Eingangsklemmen der ODER-Schaltung G 708 auf +6 Volt liegen. Die eine Eingangsklemme 1603 wird auf + 6 Volt gehalten, außer wenn der entschlüsselte laufende Befehl ein Kommando »Speichern« enthält, in diesem Fall beWenn der Flip-Flop F 706 zurückgesetzt ist, be- ίο tätigt ein O-Volt-Signal die ODER-Schaltung G 708. findet sich die Ausgangsklemme, die an der UND- Es sei bemerkt, daß alle Befehle, die ein Kommando Schaltung G 707 liegt, auf der Spannung von »Speichern« enthalten, als 1 +1-Adressenbefehle ge- + 6 Volt. Da die andere Eingangsklemme der UND- schrieben werden müssen. Die Eingangsklemme 1603 Schaltung G 707 mit der anderen Ausgangsklemme bleibt daher auf + 6 Volt während der Durchführung des gesetzten Flip-Flops F 702 verbunden ist und 15 des ganzen Einadressenbefehls. Eine Eingangsklemme sich ebenfalls auf +6VoIt befindet, wird die UND- 842 hält eine zweite Eingangsklemme der ODER-Schaltung G 707 in die Lage versetzt, ein O-Volt-Si- Schaltung G 708 auf +6VoIt über einen Umkehrer gnal an eine Eingangsklemme einer ODER-Schaltung 1701. Die Eingangsklemme 109 befindet sich nor-G 715 abzugeben, deren Ausgang ein Signal von malerweise auf OVoIt, außer wenn die von dem + 6VoIt an die Eingangsklemme der Flip-Flop- 20 /J-Register angegebene Adresse während eines Schaltung F705 abgibt, worauf der nächste Impuls 1 + 1-Arbeitskreislaufes gefunden worden ist. Die L 21' diese Flip-Flop-Schaltung setzt, nachdem der dritte Eingangsklemme der ODER-Schaltung G 708 laufende Befehl vollständig in das α-Register einge- wird durch eine gesperrte UND-Schaltung G 704 auf führt worden ist, so daß es in die Lage versetzt wird, + 6 Volt gehalten, die während des automatischen ein Signal »Ausführen« zu übertragen. Zur gleichen 25 Ablaufs aller Befehle, wie oben bemerkt, gesperrt geZeit setzt der Impuls L 21' den Flip-Flop F 702 zu- halten wird.
rück, weil die Eingangsklemme sich auf +6 Volt be- Ein Flip-Flop F1300 in dem Abzweigbefehlsent-
findet, da beim Auftreten des L21'-Impulses sich die schlüßler 51 (Fig. 1) hält eine Spannung von Ausgangsklemme der Flip-Flop-Schaltung F 705 auf + 6 Volt an der zweiten Eingangsklemme der ODER-OVoIt befindet. Das O-Volt-Signal wird über eine 30 Schaltung G 711 und eine Spannung von+6 Volt an Reihe von UND-Schaltungen G 700, G 701, G 710 der Eingangsklemme der UND-Schaltung G 716 auf- und G 711 sowie einen Umkehrer, der am Ausgang recht. Wenn Einadressenbefehle aufeinanderfolgen, ist der ODER-Schaltung G711 sitzt, der Eingangs- die UND-Schaltung G716 durch ein Flip-Flop F703 klemme des Flip-Flops F 702 zugeführt. gesperrt, das durch ein Flip-Flop F 706 im zurück-
Während die Flip-Flop-Schaltung F 705 gesetzt ist, 35 gesetzten Zustand gehalten wird. Die Flip-Flopüberträgt ein Signal »Ausführen« über eine Klemme Schaltung F1300 bleibt ebenfalls zurückgesetzt, weil F 705 an die Entschlüsselungsschaltung, damit der alle Zweigbefehle als 1 + 1-Adress'enbefehle geschrielaufende Befehl entschlüsselt und innerhalb der fol- ben werden. Die Aufgabe des Flip-Flops F1300 begenden Wortzeit ausgeführt werden kann. Wenn der steht darin, die normale Ausführung eines Abzweig-Befehl so geartet ist, daß er in einer Wortzeit nicht 40 befehls zu gestatten, so daß eine Folge von Einausgeführt werden kann, sollte er auch nicht als adressenbefehlen beendet und eine Abzweigung 1 + 1-Befehl beschrieben werden. Während der lau- durch Einführung der Adresse des nächsten Befehls fende Befehl ausgeführt wird, sperrt der Flip-Flop eingeleitet wird, der der erste einer neuen Folge in F702 die UND-Schaltung G707, und der Flip-Flop dem ß-Register ist, jedoch nur dann, wenn eine Prii-F 705 öffnet die UND-Schaltung G 700, so daß ein 45 fung, die kurz nach dem Beschicken des «-Registers Signal +6VoIt über die Schaltungen G 701, G 710 gemacht wurde, erfolgreich ist. Wenn die Prüfung und G 711 dem Eingang des Flip-Flops G 702 züge- feststellt, daß der gewünschte Zustand nicht vorhanführtwird. Die gesperrte UND-Schaltung G 707 über- den ist, wird die Abzweigung nicht vorgenommen, trägt ein Signal +6 Volt über eine ODER-Schaltung Der Flip-Flop F1300 wird gesetzt, und die Umschal-G 715 und ein Umkehrer auf die zurücksetzende Ein- 50 tung G 716 bleibt gesperrt, so daß der Inhalt des gangsklemme des Flip-Flops F705. /J-Registers nicht geändert wird. Der gesetzte Flip-
Bei dem nächsten L 21'-InIpUIs am Ende der Wort- Flop F1300 liefert ein Signal von 0 Volt an die Einzeit wird der Flip-Flop F702 gesetzt und der Flip- gangsklemme der ODER-Schaltung G711; so daß Flop F705 zurückgesetzt, so daß ein Arbeitskreis- bei Beendung der Wortzeit, die der Ausführung eines lauf für den nächsten Befehl eingeleitet wird. So- 55 Zweigbefehls zugeordnet ist, der darin besteht, dem lange die aufeinanderfolgenden Befehle des Pro- ^ ß-Register eine neue Adresse zuzuführen, ein L 21'-
Impuls den Flip-Flop F 702 setzt und der nächste Befehl in das α-Register eingespeist wird, als ob der vorhergehende Zweigbefehl als Einzeladressenbefehl 60 geschrieben worden wäre.
Bei der Ausführung einer Reihe von Einadressenbefehlen wechselt die Befehlsfolgeschaltung zwischen den Vorgängen LOADx und »Ausführen« ab, von denen jede eine Wortzeit erfordert, indem der Flipdauernd vorhanden ist, wenn nicht der laufende Be- 65 Flop F 702 am Ende des Vorganges »Ausführen« auf fehl ein Befehl zum Multiplizieren und Dividieren, LOAD» eingestellt wird und indem der Flip-Flop d.h. ein 1 + 1-Adressenbefehl ist. Es ist ferner ange- F705 gesetzt wird, um den Vorgang »Ausführen« nommen, daß die Eingangsklemmen 604 und F 652 nach dem Einführen des nächsten Befehls in das
gramms Einadressenbefehle sind, wiederholt die Befehlsfolgeschaltung den gleichen Kreislauf mit zwei
Vorgängen, wobei der nächste Befehl in das α-Register eingeführt und dann ausgeführt wird.
Bei der obigen Erläuterung des Arbeitskreislaufes
mit Einadressenbefehlen wurde angenommen, daß
eine Eingangsklemme 941 der UND-Schaltung G 700
auf + 6 Volt gehalten wird. Dies ist ein Zustand, der
α-Register zu beginnen. Jedesmal, wenn der Flip-Flop F705 für den Vorgang »Ausführen« gesetzt wird, wird ein O-Volt-Signal von seiner einen Ausgangsklemme an das Kopfauswahlregister 28 (F i g. 1) geliefert, um den Kopf auszuwählen, der der Spur zugeordnet ist, die durch die Operandenadresse bezeichnet ist, welche sich in dem α-Register befindet, um den Operanden an das Rechenwerk25 (Fig. 1) zu übertragen. Wenn der Flip-Flop F 705 zurückgesetzt ist und der Flip-Flop F 702 gesetzt ist, um den nächsten Befehl einzuführen, wird ein 0-VoIt-Signal an das Kopfauswahlregister 28 von der Ausgangsklemme des Flip-Flops F 705 geliefert, um den Kopf auszuwählen, der der Spur zugeordnet ist, die durch die im /^-Register gespeicherte Adresse bezeichnet ist, um den nächsten Befehl an das «-Register über das Rechenwerk zu liefern. Diese Spuradresse ist im /J-Register gespeichert und bleibt während der Ausführung der Folge von Einzeladressenbefehlen ungeändert. Beim Auftreten des nächsten 1 + 1-Adressenbefehls wird eine neue Spuradresse in dem /3-Register gespeichert und eine neue Folge von Befehlen eingeleitet. Ein auf Richtigkeit geprüfter Abzweigungsbefehl leitet ebenfalls eine neue Folge von Befehlen ein.
Arbeitskreislauf mit 1 + 1-Adressenbefehlen
Die Folge von Operationen für einen 1 +1-Adressenbefehl besteht darin, einen neuen Befehl in das «-Register während einer Wortzeit einzuführen, die Adresse des nächsten Befehls in das /?-Register während einer zweiten Wortzeit einzugeben, den Operanden aufzusuchen, wenn ein solcher durch die Adresse in dem »-Register während einer folgenden oder mehrerer folgenden Wortzeiten gegeben ist, und den laufenden Befehl in dem α-Register in einer Wortzeit auszuführen, wenn der Operand aufgefunden ist, sofern es sich nicht um einen Multiplikations- oder Dilaufenden Befehl gespeichert ist, der in das «-Register eingegeben wurde und erkennen läßt, daß der laufende Befehl ein 1 + 1-Adressenbefehl ist. Der gesetzte Flip-Flop F706 sperrt die UND-Schaltung G 707 und beendet dadurch das Signal +6VoIt an der Eingangsklemme des Flip-Flops F 705, so daß der zweite L21'-Impuls den Flip-Flop F 705 nicht setzt, um zu bewirken, daß der laufende Befehl in dem «-Register ausgeführt wird.
ίο Wenn der Flip-Flop F 706 gesetzt ist, führt die eine Ausgangsklemme + 6 Volt, so daß ein Signal von +6 Volt an die UND-Schaltung G 712 und von dort an die Eingangsklemme des Flip-Flops F 703 übertragen wird, damit der zweite L21'-Impuls diesen setzen kann. Wenn man annimmt, daß der laufende Befehl entweder kein Abzweigungsbefehl oder ein solcher Abzweigungsbefehl ist, für den die Prüfung nicht erfolgreich war, werden, wenn der Flip-Flop F 703 gesetzt ist, beide Eingangsklemmen der UND-Schaltung G 716 ein Potential von +6 Volt annehmen, so daß ein O-Volt-Signal übertragen wird und in das ^-Register das zweite Wort des 1 + 1-Adressenbefehls, ferner die Adresse des nächsten Befehls aus dem nächsten abgetasteten Sektor eingegeben wird. Ein O-Volt-Signal wird auch über die Oder-Schaltung G713 und die UND-Schaltung G714 an die Eingangsklemme des Flip-Flops F 704 gegeben. Ein Umkehrer, der die UND-Schaltung G 714 mit der Eingangsklemme verbindet, überträgt ein 6-Volt-Signal, so daß der Flip-Flop F 704 in der Lage ist, bei Auftreten eines dritten L 21'-Impulses gesetzt zu werden.
Wenn der Flip-Flop F 704 gesetzt ist, wird ein Signal von + 6 Volt von seiner einen Ausgangsklemme an das Kopfauswahlregister 28 übertragen, so daß der Kopf, welcher der Spur zugeordnet ist, die durch den Spuradressenteil des Befehls im α-Register bezeichnet ist, . mit dem Rechenwerk verbunden wird. Nachdem die in dem α-Register angegebene
visionsbefehl handelt. Nachdem der Befehl ausge- 40 Adresse gefunden worden ist, wird ein Signal von
führt worden ist, wird der nächste Befehl unter der + 6 Volt an der Eingangsklemme 820 eine ODER-
im /S-Register gespeicherten Adresse aufgesucht. Schaltung G 705 aufgenommen, um die UND-Schal-
Wenn die im ^-Register angegebene Adresse gefun- tung£>714 zu sperren und eine UND-Schaltung
den worden ist, wird ein neuer Folgekreislauf da- G 706 über einen UmkehrerE1700 zu öffnen. In dem
durch eingeleitet, daß der Flip-Flop F 702 gesetzt 45 Zeitpunkt, in dem der Flip-Flop F 704 durch einen
Impuls L 21' gesetzt wurde, wurde der Flip-Flop
wird, um das «-Register mit dem nächsten Befehl zu speisen, der ein weiterer 1 + 1-Adressenbefehl oder ein Einzeladressenbefehl sein kann. Wenn man annimmt, daß der nächste Befehl ein F 703 zurückgesetzt, so daß die UND-Schaltung G716 gesperrt ist. Wenn der Flip-Flop F703 zurückgesetzt ist und der Flip-Flop F 704 gesetzt ist, wird
1 +1-Adressenbefehl ist und daß der Flip-Flop F702 50 ein Signal von OVoIt, das von der UND-Schaltung
durch einen L21-Impuls gesetzt worden ist, erhält eine Eingangsklemme von drei UND-Schaltungen G 719, G 712 und G707 ein Signal von +6VoIt, ohne daß jedoch eine dieser Schaltungen dadurch in G 716 kommt, an dem einen Eingang der ODER-Schaltung G 713 wieder weggenommen, aber ein Signal von 0 Volt, das von der Ausgangsklemme des gesetzten Flip-Flops F 704 kommt, bleibt bestehen, so
die Lage "kommt, ein O-Volt-Signal zu übertragen, 55 daß die ODER-Schaltung G 713 weiter geöffnet bleibt mit Ausnahme der UND-Schaltung G 707, die aber und ein Signal von +6 Volt an der Ausgangsklemme
abgibt, so daß auch die UND-Schaltung G 714 und
wirkungslos bleibt, weil die übrigen Eingangsklemmen auf 0 Volt bleiben. Die UND-Schaltung G707, die ein O-Volt-Signal überträgt, weil der Flip-Flop F 706 zu Anfang zurückgesetzt ist, wird gesperrt, wenn der Flip-Flop F 706 während eines !^'-Impulses gesetzt wird, bevor ein L21'-Impuls den Flip-Flop F705 setzen kann.
Nach dem Impuls L 21', der den Flip-Flop F 702 setzt wird ein Φ 1'-Impuls während der nächsten L 2'-Impulsperiode auftreten und den Flip-Flop F 706 setzen, weil der Puffer-Flip-Flop F1400 des Rechenwerkes durch ein Bit 1 gesetzt ist, das durch den die UND-Schaltung G706 geöffnet bleiben. Sobald ein Signal »α gefunden« (txFND) an der Eingangsklemme 820 der ODER-Schaltung G 705 auftritt, wird ein Signal von + 6 Volt durch den Umkehrer 11700, wie oben erwähnt, an die UND-Schaltung G 706 übertragen, und ein Sperrsignal von OVoIt wird direkt der UND-Schaltung G 714 zugeleitet. Die geöffnete UND-Schaltung G 706 überträgt ein Signal von OVoIt an die ODER-Schaltung D 715, so daß diese ein Signal von +6 Volt an die Eingangsklemme des Flip-Flops F 705 abgibt. Beim
Auftreten des nächsten L21'-Impulses ist der HipHop F 704 gesetzt und der Flip-Hop F705 zurückgesetzt.
Während der Flip-Flop F 705 gesetzt ist, wird ein Signal »Ausführen« an die UND-Schaltung G 700 und an das Kopfauswahlregister 28 übertragen, um den Kopf auszuwählen, der einer Spur, die durch den Inhalt des ^-Registers bezeichnet ist, zugeordnet ist. Die geöffnete UND-Schaltung G 700 liefert ein Signal von +6VoIt über eine ODER-Schaltung G 701 an die Eingangsklemme der UND-Schaltungen G 709 und G 710. Die UND-Schaltung G 709 wird dann geöffnet und liefert ein Signal von 0 Volt, weil beide anderen Eingangsklemmen auch +6VoIt in diesem Zeitpunkt führen. Die geöffnete UND-Schaltung G 709 sperrt die UND-Schaltung G 710, so daß ein Signal von + 6 Volt der zurücksetzenden Klemme des Hip-Flops F 702 zugeführt wird, während ein Signal von 6 Volt dem Setzeingang des Hip-Hops F701 zugeleitet wird. Bei Ablauf der für die Ausführung vorgesehenen Wortzeit ist der Hip-Flop F 701 durch den nächsten L21'-Impuls gesetzt, wenn man annimmt, daß der Befehl kein Multiplikations- oder Divisionsbefehl ist und daß er auch kein Kommando »Speichern« enthält.
Wenn der Flip-Hop F 701 gesetzt ist, wird ein Signal von + 6 Volt von der einen Ausgangsklemme an das Kopf auswahlregister 28 geliefert, um den . Kopf auszuwählen, der einer Spur zugeordnet ist, die durch die Adresse in dem ß-Register bezeichnet ist, wenn dies nicht bereits geschehen ist. Ein Signal von 0 Volt von der einen Ausgangsklemme des HipHops F 701 wird der ODER-Schaltung G 701 zugeleitet, um die UND-Schaltungen G 709 und G 710 offen zu halten, weil der Impuls L 21', welcher den Flip-Flop F 701 setzt, auch den Flip-Flop F 705 zurücksetzt und das Signal von + 6 Volt beendet, welches der UND-Schaltung G 700 zugeführt wird; die UND-Schaltungen G 709 und G 710 müssen offen bleiben, nachdem der Flip-Flop F 701 gesetzt ist, bis die durch das /3-Register angegebene Adresse aufgefunden ist.
Wenn die von dem /^-Register gegebene Adresse gefunden worden ist, wird ein Signal von 0 Volt (ßFND) an der einen Eingangsklemme 842 von dem Adressenkomparator (F i g. 28) aufgefunden. Ein Umkehrer £701 formt das β FND-Signal in +6 Volt um, so daß die ODER-Schaltung G 708 und die UND-Schaltung G 709 gesperrt werden und ein Signal + 6 Volt an die UND-Schaltung G 710 und auch an die eine Eingangsklemme der Flip-Flop-Schaltung F 701 übertragen wird, damit diese beim Auftreten des nächsten L 21'-Impulses zurückgesetzt wird. Gleichzeitig wird der Flip-Flop F 702 gesetzt, worauf der nächste Befehl unter der durch den Inhalt des ,^-Registers bezeichneten Adresse in das α-Register gespeist wird, um einen neuen Kreislauf einzuleiten.
MPY- und D FD-Befehlsfolgen
Angenommen, daß der gerade auszuführende Befehl ein Multiplikations- oder Divisionsbefehl ist, wird eine Eingangsklemme 941 der UND-Schaltung G 700 auf OVoIt gebracht und auf dieser Spannung gehalten, bis die Multiplikation oder die Division vollständig durchgeführt worden ist, um ein Signal von +6VoIt der ODER-Schaltung G 701 zuzuführen. Wenn an alle Eingangsklemmen der ODER-Schaltung G 701 eine Spannung von +6 Volt herrscht, werden die UND-Schaltungen G 709 und G 710 gesperrt gehalten, so daß die Hip-Hops F 701 und F 702 auch nicht gesetzt werden können. Außerdem hört die Befehlsfolge nach einer Wortzeit, die für die Ausführung vorgesehen ist, auf, wenn alle Hip-Hops F 701 bis F 705 zurückgesetzt sind, bis ein Signal von OVoIt (END-DVD), welches anzeigt, daß das Ende der Division erreicht ist, an der Eingangsklemme 604 erscheint oder ein 0-Volt-Signal, welches das Ende der Multiplikation anzeigt, an der Eingangsklemme F 652' auftritt, .ram die ODER-Schaltung G 701 zu öffnen und die^Ubertragung eines Signals von +6 Volt an die UND-Schaltung G 709 und G710 vorzunehmen. Beim Auftreten des nächsten L21'-Impulses wird der Flip-Flop'#"701 gesetzt, und die oben beschriebene Befehlsfolge wird weiter fortgesetzt, indem in das α-Register, der nächste Befehl aus der im /?-Register bezeichneten Adresse einge-
geben wird. ·:
Es sei bemerkt, daß der Impuls L 2V, der zum Setzen und Zurücksetzen des Flip-Hops F 701 verwendet wird, der Auslöseklemme über eine UND-Schaltung G702 und eineil WmkehrerF702 zuge-
a5 führt wird. Die UND-Schaltung G 702 ist normalerweise durch ein + 6 Volt-Signal gesperrt, das einer Eingangsklemme 627 zugeführt wird, sofern nicht ein Divisionsvorgang ausgeführt wird, bei dem ein Signal DVD-OP von 0 Volt der Eingangskemme 627 zugeführt wird, um zu verhindern, daß L21'-Impulse dem Hip-Hop F 701 zugeführt werden, bis der Divisionsvorgang beendet ist.
Das in F i g. 3 dargestellte Rechenwerk ist der zentrale Teil der Rechenmaschine, in dem arithmetische und andere logische Operationen mit Gruppen von digitalen Signalen durchgeführt werden können, die auch als Worte bezeichnet werden, während sie von einem Speicherplatz den A-, X-, α- oder /3-Registern zugeführt werden oder von einem Register zu einem anderen geleitet werden (mit Ausnahme von Wortüberträgen vom Λΐ-Register in das Q-Register, die direkt erfolgen) und von'dem A-, X- und ß-Register an einen Speicherplatz gelangen. Der Vorgang einer Wortübertraguhg ist von einem Verschiebevorgang zu unterscheiden, da der letztere auch ohne das Rechenwerk durchgeführt werden kann und da die Verschiebung nicht ein vollständiges Wort umfassen muß. Während' der Ausführung eines Divisionsbefehles z. B. wird der in einem α-Register gespeicherte Divisor synchron durch das Rechenwerk übertragen, wobei der Rest im A -Register verbleibt, um einen neuen Rest zu erhalten und ein weiteres Bit des'Quotienten in dem Q-Register zu entwickeln. Als Teil des Vorganges ist es notwendig, das Q-Register um einen Platz nach links zu verschieben, wobei dies durch eine Ringverschiebung nach rechts erfolgt, die einen vollen Umlauf, vermindert um einen Platz, umfaßt. Die Steuerschaltungen für Register sind an sich bekannt und brauchen nicht näher erläutert zu werden. Nur die Schaltungen, die für die Steuerung der durch das Rechenwerk hindurchgeführten Informationen während einer Wortübertragung stattfinden, werden im Zusammenhang mit F i g. 3 näher beschrieben.
Außer den Steuerkreisen für die Wortübertragungen enthält das Rechenwerk einen seriell arbeitenden Binäraddierer 1410, einen ersten Puff er-Hip-HopF1400 in dem Wortübertragungskanal, einen
409 728/363
zweiten Puffer-Flip-Flop F1401 in einem weiteren Wortübertragungskanal und einen Übertrags-Flip-Flop F1402, der durch eine ODER-Schaltung G1437 gesetzt sein kann. Es sei bemerkt, daß alle Wortübertragungen über die beiden Kanäle auch über den Addierer führen, so daß, wenn zwei Wörter synchron durch den Addierer geführt werden, die Summe an der Ausgangsklemme erscheint. Es gibt nur drei Ausnahmefälle, von denen jeder einen Speichervorgang benötigt. Der erste ist die Ausführung eines STQ-Kommandos, welches erfordert, daß der Inhalt des Q-Registers gespeichert wird, während der Inhalt der Λ-undß-Register ausgetauscht wird. Um dies zu bewirken, wird ein .Srß-Kommando über eine ODER-Schaltung G1411 übertragen, um eine UND-Schaltung G1416 zu öffnen, welche gestattet, daß der Inhalt des ß-Registers seriell durch den Addierer 1410 dem A -Register zugeführt wird, während der Inhalt des .,4-Registers direkt dem g-Register zugeleitet wird. Die Eingangs- und Ausgangsklemmen 1407 und 1403 eines Umkehrers /1403 werden mit den Eingangsklemmen des Paritätsprüfers29 (Fig. 1) zur Übertragung an einen Speicherplatz verbunden. Die zweite Ausnahme betrifft nur den Vorgang der Speicherung des Inhaltes des A -Registers. Dieser Vorgang wird durch ein SZ/1-KommandosignaI aus dem Befehlsentschlüßler 22 (Fig. 1) gesteuert, welches einer ODER-Schaltung G1410 zugeleitet wird, um die UND-Schaltung G1415 zu öffnen. Die dritte Ausnahme betrifft den Vorgang der Speicherung des Inhaltes des Z-Registers in einem Speicherplatz. Dies wird indirekt durch ein STZ-Kommandosignal gesteuert, welches einen Flip-Flop in dem Z-Registersteuerabschnitt50 (Fig. 1) steuert. Während dieser Flip-Flop gesetzt wird, wird eine UND-Schaltung G1414 geöffnet (Klemme £-512' in F i g. 3), und der Inhalt des X-Registers (Klemme X-I7) wird durch die ODER-Schaltung G1417 dem Speicherabschnitt zugeleitet, ähnlich wie die Übertragung der A- und ß-Registerinhalte an den Speicher. Für die X-, A- und ß-Register gibt es natürlich auch noch andere Kommandos oder Steuersignale, welche bewirken, daß der Inhalt dieser Register über die entsprechenden UND-Schaltungen G1414, G1415 und G1416, wie weiter unten beschrieben, übertragen wird.
Der Vorteil der Übertragung von Wörtern über das Rechenwerk besteht darin, daß ein Wort, welches übertragen wird durch arithmetische oder logische Operationen geändert werden kann, während es mit Hilfe des Addierers 1410 von einer Stelle zur anderen übertragen wird. So kann z. B. die Adresse eines Befehls, die dem «-Register oder dem ^-Register zugeführt wird, automatisch dadurch abgeändert werden, daß der Inhalt des Z-Registers hinzuaddiert wird, während der Befehl von einem Speicherplatz über den Addierer dem «- oder /3-Register zugeführt wird. Dies wird dadurch bewirkt, daß das erste Bit des Befehlswortes, während es in dem Flip-Flop F1400 gespeichert ist, mit einem Φΐ-Impuls während einer Ll'-Periode geprüft wird. Wenn das Bit 1 ist, wird ein Flip-Flop in dem Z-Registersteuerabschnitt 50 (Fig. 1), wie oben beschrieben, besetzt, um eine UND-Schaltung G1414 in dem Rechenwerk zu öffnen und den Inhalt des Z-Registers über die ODER-Schaltung G1417 dem Addierer über den Puffer-Flip-Flop F1401 zuzuführen, so daß der Inhalt des Z-Registers zu dem Adressenteil des Befehlswortes addiert wird, welches seriell über UND-Schaltungen G1401 und G1402 von den Eingangsklemmen 1815 und 1816, die an einen ausgewählten Leseverstärker angeschlossen sind, übertragen wird. Die UND-Schaltungen G1401 und G1402 sind über entsprechende ODER-Schaltungen G1406 und G1407 an den Addierer 1410 angeschlossen.
Ein weiteres Beispiel, wie ein Wort, das von einem Speicherplatz in ein Register übertragen wird, einer arithmetischen Operation unterworfen werden
ίο kann, während es seriell dem Speicherplatz entnommen wird, ist die Ausführung eines Subtraktionskommandos. Ein St/5-Kommandosignal des Befehlsentschlüßlers 22 (F i g. 1) öffnet die UND-Schaltungen G1404 und G1405 über einen Umkehrer/1400 und öffnet eine UND-Schaltung G1415 über eine ODER-Schaltung G1410, wenn der Platz des Wortes im Speicher aufgefunden worden ist. Das SUB-Kommandosignal öffnet eine UND-Schaltung G1438 über eine ODER-Schaltung G1437, um den Übertrags-Flip-FlopF1402 in Abhängigkeit von einem LO'-Impuls zu setzen. Danach wird der Inhalt des betreffenden Speicherplatzes durch die geöffneten UND-Schaltungen G1401 und G1405 dem Addierwerk zugeführt, während der Inhalt des ^-Registers seriell über die geöffnete UND-Schaltung G1415 dem anderen Eingang des Addierers über die Flip-Flop-Schaltung F1401 zugeleitet wird. Die UND-Schaltungen G1404 und G1405 sind so mit dem Addierer über die ODER-Schaltungen G1406 und G1407 verbunden, daß das Einerkomplement des Inhaltes des betreffenden Speicherplatzes zu dem Inhalt des Λ-Registers hinzuaddiert wird. Um eine algebraische Subtraktion des Inhaltes eines Speicherplatzes von dem Inhalt des A -Registers zu erhalten, ist es notwendig, das Zweierkomplement des Inhaltes des Speicherplatzes zu addieren und nicht das Einerkomplement. Das Zweierkomplement wird automatisch durch die Voreinstellung des Übertrags-Flip-Flops F1402 in Abhängigkeit von dem SUB-Kommandosignal gebildet und wird addiert, weil auf diese Weise ein Bit 1 zu der niedrigsten Stelle des Einerkomplementes des Inhaltes des Speicherplatzes hinzuaddiert wird, während es auch zu der niedrigsten Stelle des Inhaltes des A -Registers hinzuaddiert wird.
Die algebraische Summe, die an den SUM- und St/M'-Ausgängen des Addierers entsteht, wird in dem A -Register gespeichert. Andere Kombinationen von Wortübertragungen für arithmetische Operationen werden weiter unten noch beschrieben.
Kontrollsignale für das Rechenwerk werden durch den Befehlsentschlüßler und die Befehlsfolgeschaltung sowie von den Schaltungen zur Ausführung besonderer Programme, z. B. der Division und Multiplikation, geliefert. Einige Eingangssteuersignale können auch von Hand von dem Schaltpult aus gegeben werden. Wie oben erwähnt, können Wörter von einem Speicherplatz aus von den «-, A-, Q- und X-Registern und außerdem von einem äußeren Register, dem /-Register 90 (F i g. 1) durch das Rechenwerk hindurch über eine Eingangsklemme 2405, die an die ODER-Schaltung G1417 angeschlossen ist, übertragen werden. Wortübertragungen von dem Addierer sind für das A-, X-, «- und /5-Register vorgesehen.
Aus der vorangehenden Beschreibung ergibt sich, daß die Hauptfunktion des Rechenwerkes darin besteht, die arithmetische Operation der binären Addition während der mathematischen Lösung von
Problemen durchzuführen und Wortübertragungen zu steuern. Mit Hilfe der Addition können weitere arithmetische Operationen durchgeführt werden, nämlich die Multiplikation durch wiederholte Addition, die Subtraktion durch die Addition des Zweierkomplementes der Zahl und die Division durch wiederholte Subtraktion. Außerdem arbeitet das Rechenwerk als Zentralstelle für die Weiterleitung von Informationen für alle Wortübertragungen, die von Hand von dem Steuerpult aus in ähnlicher Weise wie von der Programmsteuerung gesteuert werden.
Bevor auf die Wirkungsweise des Rechenwerkes in bezug auf die anderen Einrichtungen der Rechenmaschine eingegangen wird, sei der allgemeine Aufbau des Rechenwerkes noch näher beschrieben. Die Eingangsklemmen 1815 und 1816 verbinden den Speicherplatz mit dem Addierer über UND-Schaltungen G1401 und G1402. Das Komplement eines Wortes, das aus dem Speicherplatz abgelesen wird, wird mit Hilfe der UND-Schaltungen G1404 und G1405 gebildet. ODER-Schaltungen G1406 und G1407 werden verwendet, um die Ausgangsklemmen der UND-Schaltungen G1401 bis G1404 direkt mit den Eingangsklemmen des Addierers zu verbinden und ferner mit Ausgangsklemmen der Flip-Flops F1400, um ihn in den gesetzten oder rückgesetzten Zustand zu bringen, je nachdem, ob ein Bit 1 oder ein Bit 0 an das Addierwerk übertragen wird. Der Flip-Flop F1400 wird ständig am Ende einer Wortzeit durch einenL23'-Impuls zurückgesetzt, der dem einen Auslöseeingang zugeführt wird, um sicherzustellen, daß das Rechenwerk vor der nächsten Wortzeit zurückgesetzt ist. Der Flip-Flop F1400 wird auch durch ein Signal von 0 Volt an der Eingangsklemme 632 während der Ausführung einer Division zurückgesetzt.
Der Inhalt des «-Registers kann über das Addierwerk und den Puffer-Flip-Flop F1400 übertragen werden, wenn eine UND-Schaltung G1425 geöffnet wird. Die UND-Schaltung kann durch Steuersignale geöffnet werden, die den Eingangsklemmen einer ODER-Schaltung G1421 zugeführt werden. Diese Signale sind: das /JVX-Kommandosignal, welches bewirkt, daß der Inhalt der Bitstellen 7 bis 17 des Befehls in dem «-Register dem Inhalt des Z-Registers hinzuaddiert wird, wobei die Summe des Addierers im ΛΓ-Register gespeichert wird; das BRU-Kommandosignal, welches bewirkt, daß der Inhalt der Bitstellen 4 bis 17 des Befehls in das /S-Register übergeführt wird; ein 0-Volt-Signal von der Ausgangsklemme des gesetzten Flip-Flops F 651 während der Ausführung eines Multiplikationsbefehls mit der Wirkung, daß der Multiplikant, der in dem α-Register gespeichert ist, in der höchsten Stelle des Produktes hinzuaddiert wird, das in dem Λ-Register entwickelt und gespeichert wird; ein 0-Volt-Steuersignal an der Eingangsklemme 615 und 628, welches bewirkt, daß ein Divisor der höchsten Stelle des Restes in dem A -Register hinzuaddiert wird, wie es erforderlich ist, um einen Quotienten während der Ausführung eines Divisionsbefehls zu entwickeln; und ein 0-Volt-Signal an der Eingangsklemme 1258 einer nicht dargestellten UND-Schaltung, welches bewirkt, daß der Inhalt des «-Registers von Hand in das ^-Register übergeführt wird.
Das Einerkomplement des Inhaltes des α-Registers kann durch den Addierer übertragen werden, wenn der Übertrags-Flip-Flop F1402 gesetzt wird, damit das Zweierkomplement zu dem Inhalt des /!-Registers hinzugezählt wird, wie dies erforderlich ist, um eine Multiplikation und Division durchzuführen. Für die Multiplikation wird dies durch ein 0-Volt-Signal erreicht, das einer Klemme 656 zugeleitet wird, die sowohl an die ODER-Schaltung G1437 angeschlossen ist, um den Flip-Flop F1402 zu setzen, als auch an eine ODER-Schaltung G1420, um die
ίο UND-Schaltung G1424 zu öffnen. Das O-Volt-Signal an der Klemme 656 wird von der Multiplikationsschaltung abgeleitet, die am Ende eines Multiplikationsvorganges geöffnet wird, wenn der Multiplikator negativ war. Der Grund für die Addierung des Zweierkomplementes des Multiplikanden, wenn der Multiplikator negativ ist, ergibt sich aus dem Multiplikationsfolgealgorithmus.
Das Zweierkomplement des Inhaltes des Divisors, der in dem α-Register gespeichert ist, wird in ähn-
ao licher Weise zu dem Inhalt des Λ1-Registers unter der Steuerung der DivMonsfolgeschaltung 63 hinzuaddiert (F i g. 1). Die 0-Volt-Signale an den Klemmen 614 und 629, die mit den ODER-Schaltungen G1420 und G1437 verbunden sind, um dies zu erreichen, werden in der Divisionsfolgeschaltung 63 von entsprechenden Stellen des Dividenden nach dem normalen Divisionsvorgang abgeleitet, um einen negativen Rest zu korrigieren, "weaa dies erforderlich ist. Synchrone Φ l'-Taktimpulse sind an dem Auslöseeingang des Flip-Flops F1400 erforderlich, wenn der Inhalt des α-Registers durch den Addierer hindurchgeführt wird. Sie werden von einer Torschaltung in der a-Registersteuerschaltung 32 (F i g. 1) abgeleitet und dem Flip-Flop F1400 durch eine ODER-SchaltungG1409 in Fig..3 zugeführt.
Das Einerkomplement des Inhaltes des Q-Registers 55 und der Inhalt des Q-Registers 55 werden über den Binäraddierer durch gesteuerte UND-Schaltungen G1422 und G1423 übertragen. Das Komplement des Q-Registers wird über den Addierer unter der Steuerung eines SL/B-Q-Signals übertragen, das dem einen Eingang einer ODER-Schaltung G1418 von dem Befehlsentschlüßler 22 (F i g. 1) sowie unter der Steuerung eines 0-Volt-Signals zugeführt wird, welches der Eingangsklemme 623 und 625 von der Divisionsfolgeschaltung 63 (F i g. 1) zugeleitet wird. Der Inhalt des Q-Registers wird über den Addierer unter der Steuerung eines ADD-QSignah dem Eingang einer ODER-Schaltung G1419 von dem Befehlsentschlüßler 22 zugeleitet, sowie unter der Steuer rung eines O-Volt-Signals von der Divisionsfolgeschaltung 63, welches einer Eingangsklemme 622 der ODER-Schaltung G1419 zugeleitet wird. Synchrone Φ l'-Taktimpulse werden dem Auslöseeingang des Flip-Flops .F1400 für die Übertragung des Inhaltes des Q-Registers und für die Übertragung des Einerkomplementes des Inhaltes des Q-Registers durch eine UND-Schaltung G1408 über die ODER-Schaltung G1409 zugeleitet, wenn ein Flip-Flop in der Q-Registersteuerschaltung 56 der an die Klemme F 401' angeschlossen ist, gesetzt ist, jedoch nur, wenn ein O-Volt-Signal an einer Ausgangsklemme 1411 einer ODER-Schaltung G1411 vorhanden ist, wenn weder ein STQ- noch ein QA -Steuersignal der Befehlsfolgeschaltung 22 an der Eingangsklemme der ODER-Schaltung G1411 vorhanden ist.
Der Addierer der F i g. 3 kann bei verschiedenen Übertragungsoperationen benutzt werden, und zwar
in Abhängigkeit von Steuerimpulsen, die den verschiedenen Eingängen der ODER-Schaltungen, z. B. G1418, G1419, G1420, G1421, G1437 usw., zugeführt werden. Die ODER-Schaltungen sind je nach der gewünschten Rechenaufgabe und zeitlichen Folge an UND-Schaltungen angeschlossen. Zum Beispiel kann eine Operation, die abgekürzt als SUB-Q bezeichnet wird (subtrahiere den Inhalt des Q-Registers), auch erfordern, daß ein /4DD-1-Vorgang als gespeist wird. Das .St/B-Kommandosignal der Befehlsentschlüsselungsschaltung öffnet die UND-Schaltungen G1404 und G1405, um zu bewirken, daß das Einerkomplement des aus einem Speicherplatz abgelesenen Wortes durch den Addierer übertragen wird. Es setzt auch den Übertrags-Flip-Flop F1402 durch die ODER-Schaltung G1437, um das Zweierkomplement des Wortes aus dem Speicher zu bilden. Um das Wort aus dem Speicher zu dem Inhalt des A-Re-
Teil des Operationscodes bei einer Wortübertragung io gisters zu addieren, wird das ylDD-Kommando des vorgenommen wird, damit das Zweierkomplement Entschlüßlers 22 dazu benutzt, die UND-Schaltungen
G1402 und G1401 über eine ODER-Schaltung G1400 zu öffnen. Für beide Operationen wird die
des Inhaltes des ß-Registers durch den Addierer hindurehgeführt wird. Ein v4DD-l-Steuersignal des Befehlsentschlüßlers 22 (F i g. 1) setzt den Übertrags-Flip-Flop 1402 durch öffnen der UND-Schaltung G1438 über die ODER-Schaltung G1437. Ein LO'-Impuls steuert den Zeitpunkt des Setzens, so daß es rechtzeitig erfolgt, damit ein Bit 1-dem ersten durch den Addierer über die UND-Schaltung G1422 übertragenen Bit hinzugezählt werden kann. Wenn das Zweierkomplement des ß-Registers durch den Addierer unter der Steuerung eines 0-Volt-Signals von der Divisionsbefehlfolgeschaltung 63 an die Eingangsklemme 623 der ODER-Schaltung G1418 übertragen werden soll, wird in ähnlicher Weise der Übertrags-Flip-Flop F1402 durch das 0-Volt-Signal an der Eingangsklemme 623 gesetzt, die mit der ODER-Schaltung G1437 verbunden ist. Ein 0-Volt-Signal, welches einer Eingangsklemme 603 der UND-Schaltung G141S durch die ADD- und SUB-Kommandosignale über die ODER-Schaltung G1410 geöffnet, um den Inhalt des A -Registers durch den Addierer zu übertragen.
Der Inhalt des /4-Registers kann auch durch den Addierer in Abhängigkeit von folgenden Steuer-Signalen übertragen werden: AX und AA mit 0-Volt-Signalen an den Eingangsklemmen 1254, 1255 und 1256 zur Übertragung in die λ-, β- und Z-Register, 0-Volt-Signale an den Eingangsklemmen 614, 615, 628 und 629 der Divisionsfolgeschaltung und ein 0-Volt-Signal an den Eingangsklemmen F 651 und F 656 der Multiplikationsfolgeschaltung. Ein weiteres Steuersignal, welches der ODER-Schaltung G1410 zugeführt wird, ist das STA -Steuersignal, welches bewirkt, daß der Inhalt des ^-Registers durch die
ODER-Schaltung G1437 zugeführt wird, wird eben- 3° UND-Schaltung G1415 übertragen wird, welches
falls von der Divisionsfolgeschaltung 63 abgeleitet, wie es der Divisionsalgorithmus vorschreibt, z. B. mit Hilfe einer an sich bekannten Programmierungstechnik, wenn das Einerkomplement des Inhaltes des Q-Registers durch den Addierer unter der Steuerung eines Signals von 0 Volt übertragen wird, welches der Eingangsklemme 605 der ODER-Schaltung G1418 zugeführt wird.
Der Inhalt der Z-, A- und ß-Register kann durch aber nicht bewirkt, daß eine Übertragung in den Speicherplatz über den Addierer stattfindet, da der Ausgang des Rechenwerkes von dem Inverter /1403 abgenommen wird.
Ein Wort des Speicherplatzes kann auch zu dem Inhalt des Z-Registers und des äußeren /-Registers durch entsprechende ADX- und yiD/-Kommandosignale addiert werden, die der ODER-Schaltung G1400 zugeführt werden. Das v4Z)Z-Kommando-
die betreffenden UND-Schaltungen G1414, G1415 40 signal, welches aus der Z-Registersteuerschaltung 50
und G1416 übertragen werden, um den Inhalt in einem Speicherplatz zu speichern. Der Inhalt des ß-Registers kann auch durch die UND-Schaltung G1416 in Abhängigkeit von einem QA -Übertragungssteuersignal übertragen werden, das von einem anderen Teil der Rechenmaschine, z. B. einer UND-Schaltung in dem Entschlüßler 22, kommt, wenn ein Wortübertragungsbefehl entschlüsselt ist, der sich auf die Übertragung des Inhaltes des ß-Registers an das /!-Register bezieht, z. B. ein EZC-Befehl, der den Austausch des Inhaltes des A- und ß-Registers verlangt. Der Inhalt des ^-Registers kann direkt an das ß-Register übertragen werden, während der Inhalt des ß-Registers an das ^4-Register über den Addierer übertragen wird.
-Der Inhalt des y4-Registers kann durch den Addierer in Abhängigkeit von mehr Steuersignalen übertragen werden als irgendein anderes Register, da es das Hauptregister ist, welches zusammen mit dem Rechenwerk als die Recheneinheit in der normalen Ausführung einer Rechenmaschine betrachtet werden kann, die aus drei Baueinheiten besteht, und zwar dem Speicher, dem Rechenwerk und dem Steuerwerk. Die Kommandosignale, welche am häufigsten in einem Programm vorkommen, sind wahrscheinlich ADD und SUB, welche bewirken, daß der Inhalt des ^-Registers einem Wort hinzuaddiert wird, während es in das ^-Register von dem Speicherplatz her ein-(Fig. 1) abgeleitet wird, öffnet den Ausgang F512', um die UND-Schaltung G1414 für die Übertragung des Inhaltes des Z-Registers durch den Addierer zu öffnen, während das. Wort aus dem Speicher durch den Addierer übertragen wird. Das ^4D/-Kommandosignal steuert das /-Register in ähnlicher Weise durch öffnen der Torschaltung G1417 in Fig. 3, während die ODER-Schaltung G1400 zur Übertragung des Wortes aus dem Speicherplatz in das
A-Register durch den Addierer geöffnet wird. '.
Ein weiteres O-Volt-Steuersignal, das der ODER-Schaltung G1400 zugeführt werden kann, dient dazu, die A-, X-, λ- oder /?-Register mit einem Wort aus dem Speicherplatz zu beschicken. Für das A- und Z-Register bestehen die Steuersignale aus LDA- und LDZ-Kommandosignalen der Entschlüsselungsschaltung. Für die <x- und /J-Register bestehen die Steuersignale aus LOADa- und LOAD ^-Signalen der Ausgangsklemme eines zugehörigen Flip-Flops der Befehlsfolgeschaltung 34 (F i g. 1). Das α-Register kann auch von einem Speicherplatz in Abhängigkeit von einem Multiplikations- und Divisionsbefehl gespeist werden, der von dem zugehörigen Steuerabschnitt 44 gegeben wird. Die ODER-Torschaltung G1400 (F i g. 3) wird für diesen Zweck geöffnet.
Es sei bemerkt, daß die Steuerung des Rechenwerkes stets mit der Steuerung einer oder mehrerer Register synchronisiert ist und, wenn nötig, auch mit
dem Speicherabschnitt. Die synchronisierte Steuerung wird dadurch bewirkt, daß gleichzeitig oder in Koordination Steuersignale von dem Befehlsentschlüßler 22 und der Befehlsfolgeschältung 34, 62 und 63 und von der üblichen Handeingabevorrichtung abgegeben werden.

Claims (9)

Patentansprüche:
1. Synchron arbeitende digitale 'Rechenmaschine, bei der Taktsignale erzeugt' werden, um Wortzeiten festzulegen, mit einem langsam arbeitenden Speicher großer Aufnahmefähigkeit zum Festhalten von Gruppen von digitalen Signalen, von denen jede Gruppe einen Befehl oder ein Datenwort auf einem mit einer Adresse versehenen Speicherplatz darstellt, ferner mit einem schnell arbeitenden Register kleiner Aufnahmefähigkeit zur Speicherung von'Gruppen von digitalen Signalen und zum Festhalten von Daten für spätere Verarbeitung durch · die Rechenmaschine und mit einem Steuerwerk, das auf die Taktsignale' anspricht, um eine Gruppe von digitalen Signalen von einem Speicherplatz in das Register oder umgekehrt zu übertragen, dadurch gekennzeichnet, daß das Steuerwerk (34, 45, 44; 30, 31, 28; 37; 40, 27, 28, 39) eine Verbindung zwischen dem Speicherplatz (225, 77, 75) und dem Register (10) über ein Hilfsrechenwerk (25) zur Ausführung einer gewünschten Operation (18, 49; 54, 74; 55, 61) in dem Hilfsrechenwerk (25) während der Übertragung von dem Speicher (225) zum Register (10) oder umgekehrt herstellt und daß dem Register (10) bzw. dem Speicher (225) die abgeänderten Daten, die sich aus dem Rechenvorgang innerhalb der Wortzeit ergeben, zuführbar sind·. ·'■■ ^
2. Rechenmaschine nach Anspruch 1, bei der zwei Gruppen von digitalen Signalen zur Ausführung einer arithmetischen Operation übertragen werden, dadurch gekennzeichnet, daß das Steuerwerk Steuerstromkreise in dem Rechenwerk zur Ausführung einer arithmetischen Operation herstellt, die mit zwei Gruppen von digitalen Signalen, von denen die eine an einem gegebenen Speicherplatz des Speichers (225) gespeichert ist und die andere in dem Register (10) gespeichert ist, durchgeführt werden soll, während beide Gruppen durch das Rechenwerk hindurchgeführt werden.
3. Rechenmaschine nach Anspruch 2, bei der die Signalgruppen serienweise übertragen werden, dadurch gekennzeichnet, daß beide Gruppen von Signalen serienweise über einen Addierer in dem Rechenwerk synchron übertragen werden, so daß die arithmetische Operation ausgeführt werden kann, während die eine Gruppe der digitalen Signale gerade direkt über den Addierer von dem Speicherplatz aus übertragen wird, während die zweite Gruppe von Signalen direkt von dem Register aus über den Addierer übertragen wird.
4. Rechenmaschine nach Anspruch 1, bei der die Gruppen von digitalen Signalen Befehle und Operanden darstellen, dadurch gekennzeichnet, daß das Steuerwerk ein Befehlsregister (90) enthält sowie Schaltelemente, welche einen Stromkreis (18 bis 93) schließen, der bewirkt, daß eine Befehlsgruppe von digitalen Signalen von einem Speicherplatz dös schnell· arbeitenden Registers (10) aus auf das Befehlsregister (90) des Steuerwerks direkt übef das Hilfsrechenwerk (25) übertragen wird, während die Operandengruppe von digitalen Signalen von einem zweiten Speicherplatz des schnell arbeitenden Registers (10) aus auf den Speicher (225, 75) direkt über das Hilfsrechenwerk (25) übertragen wird, ■ und daß eine logische Schaltung (22, 34) vorgesehen ist, die ' auf den in dem Befehlsregister (90) gespeicherten Befehl anspricht, um Steuersignale an das Hilfsrechenwerk (25) zu übertragen und die durch den Befehl bestimmte OperaÄötT auszuführeil, während der Operand auf defl Speicher übertragen wird.
5. Rechenmaschine nach Anspruch 4, dadurch gekennzeichnet, daß Sperreinrichtungen, z. B. Flip-Flops, mit der logischen Schaltung (22) verbunden sind, welche den nächsten Befehl aufsucht, wenn ein besonderer Befehl, der ausgeführt werden soll, mehr-als eine vorbestimnite Zeit für die Ausführung benötigt, daß ferner feine Einrichtung (34, 62, 63, 66) ein Signal erzeugt, das anzeigt, daß die Ausführung des besonderen Befehls beendet ist, und die logische Schaltung betätigen, welche den nächsten Befehl aufsucht.
6. Rechenmaschine nach Anspruch 1, bei der mehrere Arten von Befehlen verwendet werden, von denen die eine Art eine Gruppe vonSignalen aufweist, die die auszuführende Operation und die Adresse eines Operanden angeben (sofern ein
' solcher erforderlich ist), wobei ein gegebener Befehl dieser Art" In einem Speicherplatz des Registers (10) gespeichert ist und der Operand^ (sofern einer erforderlich ist) an dem nächsten Speicherplatz gespeichert ist, während die zweite Ari des Befehls aus zwei Gruppen von Signalen besteht, die an aufeinanderfolgenden Plätzen gespeichert sind, wobei die erste Gruppe die auszuführende Operation sowie die Adresse eines Operanden angibt (sofern ein solcher erforderlich ist) und die zweite Gruppe die Adresse des nächsten Befehls angibt, wobei eine der beiden Gruppen von Signalen in einem Befehl der zweiten Art an dem ersten von zwei aufeinanderfolgenden Plätzen gespeichert ist und wobei ein unterscheidendes Signal in dem Befehlswort enthalten ist, welches die Art des Befehls charakterisiert, dadurch gekennzeichnet, daß die Rechenmaschine eine Abfühleinrichtung (34 in Fig. 2, F701, F 705), welche die Anwesenheit des kennzeichnenden Signals feststellt, sowie eine logische Befehlsschaltung enthält, die durch die Abfühleinrichtung gesteuert wird und die Befehle in der Rechenmaschine (25, 32 oder 33) in Abhängigkeit davon, ob ein kennzeichnendes Signal vorhanden ist oder nicht, weiterleitet.
7. Rechenmaschine nach Anspruch 6, dadurch gekennzeichnet, daß die logische Befehlsschaltung Übertragungsstromkreise (44) und ein Datenregister (32, 33) enthält, die miteinander in gesteuerter Weise, z. B. durch Torschaltungen, verbunden werden können, wenn erstens ein Befehl der ersten Art vorliegt, um aufeinanderfolgende Befehle der ersten Art in ein Register (z. B. 32) von jedem zweiten, Speicherplatz des Registers (10). aus zu übertragen und die von dem Befehl angegebene Operation von dem Hilfsrechenwerk
• " '< ■·'· ' >' 409 728/36J
(25) unmittelbar nach der Beendigung auszuführen und ferner den nächsten Befehl in das Befehlsregister (32) zu übertragen, wie es durch den nächsten Speicherplatz bestimmt ist, und daß, wenn zweitens der Befehl der zweiten Gruppe angehört, in ein Register (32) die zweite Gruppe von Signalen eines Befehls der zweiten Art übertragen wird, daß ferner ein Operand aus einem besonderen Speicherplatz des Registers (10) aufgesucht wird, der eines der Datenregister (32, 33) übertragen soll (wenn ein Operand durch einen Befehl der zweiten Art angegeben ist), daß die durch den besonderen Befehl bezeichnete Operation durch das Hilfsrechenwerk (25) ausgeführt wird, während der Operand in das Datenregister eingegeben wird, daß der nächste Befehl unter einer Adresse aufgesucht wird, die durch die zweite Gruppe von Signalen des Befehls der zweiten Art nach der Ausführung des ersten Befehls bestimmt ist, und daß die Übertragung des eo nächsten Befehls in das Register von dem nächsten bezeichneten Speicherplatz ermöglicht wird, nachdem er aufgefunden ist, aber nur wenn der Befehl in dem Register ein solcher der zweiten Art ist. *5
8. Rechenmaschine nach Anspruch 7, bei der eine Gruppe von Signalen eines Befehls ein weiteres kennzeichnendes Signal enthält, welches festlegt, daß diese Gruppe von Signalen automatisch durch eine gespeicherte Gruppe von Signalen abgeändert wird, dadurch gekennzeichnet, daß die abändernde Gruppe von Signalen (aus 48) mit der zweiten Gruppe von Signalen (über Leitung 49) vereinigt wird, während die zweite Gruppe von Signalen von einem Speicherplatz des Registers (10) über das Hilfsrechenwerk (25) übertragen wird, wenn das weitere kennzeichnende Signal abgefühlt wird, wobei die zweite Gruppe von Signalen automatisch abgeändert wird, während sie auf dem Speicher (225) übertragen wird.
9. Rechenmaschine nach Anspruch 1 zum Multiplizieren, bei der das Multiplikandenwort ein Vorzeichenbit an der höchsten Stelle aufweist, und zwar ein Bit 0 für eine positive Binärzahl und ein Bit 1 für eine negative Binärzahl, daß entsprechende Teilprodukte in einem Register (32, 33) vorübergehend einschließlich eines Vorzeichenbits an der höchsten Stelle gespeichert werden und wobei negative Zahlen als Zweierkomplement des Absolutwertes der Binärzahl dargestellt sind, dadurch gekennzeichnet, daß das Vorzeichenbit an der höchsten Stelle des Partialproduktes, das in dem Register vorübergehend gespeichert ist, mehrere Stellen in diesem Register ausfüllt, wenn das Register verschoben wird, wobei ein Faktor (2"—Y)2" automatisch zu dem Produkt addiert wird, um einen Fehler zu korrigieren, der durch einen negativen Multiplikanden eingeführt ist, wobei (2nY) ein Ausdruck für das Zweierkomplement des Multiplikators (Y) ist und η die Stellenzahl einer Binärzahl angibt, die in anderen Registern der Rechenmaschine gespeichert sein kann.
In Betracht gezogene Druckschriften:
Buch von H. Rutishauser, A. Speiser, E. Stiefel, »Programmgesteuerte, digitale Rechengeräte«, Basel, 1951, S. 16 bis 19.
Hierzu 1 Blatt Zeichnungen
409 728/363 11.64 0 Bundesdruckerei Berlin
DEG33624A 1960-11-21 1961-11-20 Elektronische Datenverarbeitungsmaschine Pending DE1181948B (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US70549A US3311885A (en) 1960-11-21 1960-11-21 Electronic data processor

Publications (1)

Publication Number Publication Date
DE1181948B true DE1181948B (de) 1964-11-19

Family

ID=22095968

Family Applications (1)

Application Number Title Priority Date Filing Date
DEG33624A Pending DE1181948B (de) 1960-11-21 1961-11-20 Elektronische Datenverarbeitungsmaschine

Country Status (3)

Country Link
US (1) US3311885A (de)
DE (1) DE1181948B (de)
GB (1) GB1008775A (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3525082A (en) * 1967-10-23 1970-08-18 Hermann Borge Funck Jensen Conditional alternative program branching in automated working machines
US8314807B2 (en) 2010-09-16 2012-11-20 Apple Inc. Memory controller with QoS-aware scheduling
US8510521B2 (en) * 2010-09-16 2013-08-13 Apple Inc. Reordering in the memory controller
US8631213B2 (en) 2010-09-16 2014-01-14 Apple Inc. Dynamic QoS upgrading
US9053058B2 (en) 2012-12-20 2015-06-09 Apple Inc. QoS inband upgrade
US9229896B2 (en) 2012-12-21 2016-01-05 Apple Inc. Systems and methods for maintaining an order of read and write transactions in a computing system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2810516A (en) * 1949-06-03 1957-10-22 Nat Res Dev Electronic digital computing devices
GB719066A (en) * 1951-06-02 1954-11-24 Nat Res Dev Electrical digital computing engines
NL130448C (de) * 1952-12-22
GB789207A (en) * 1953-03-24 1958-01-15 Nat Res Dev Electronic digital computing machines
US2974866A (en) * 1954-03-30 1961-03-14 Ibm Electronic data processing machine
US2936118A (en) * 1954-09-27 1960-05-10 Marchant Res Inc Electronic digital computers
US2982472A (en) * 1955-05-02 1961-05-02 Harry D Huskey Binary digital computer with magnetic drum storage
US2872666A (en) * 1955-07-19 1959-02-03 Ibm Data transfer and translating system
US2974867A (en) * 1956-10-25 1961-03-14 Digital Control Systems Inc Electronic digital computer
US2967296A (en) * 1956-12-14 1961-01-03 Rca Corp Information extracting system
IN69632B (de) * 1958-08-29 1900-01-01

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Also Published As

Publication number Publication date
US3311885A (en) 1967-03-28
GB1008775A (en) 1965-11-03

Similar Documents

Publication Publication Date Title
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1151397B (de) Programmgesteuerte Datenverarbeitungs-anlage mit gespeicherten Unterprogrammen
DE1282337B (de) Programmgesteuerte elektronische Rechenanlage
DE1524225B2 (de) Verfahren zum betriebe einer redigier- und wiedergabeeinrichtung
DE1424732A1 (de) Elektronische Ziffernrechenmaschine
DE1179397B (de) Datenverarbeitende Maschine mit sich zeitlich ueberlappender Datenverarbeitung
DE2539211A1 (de) Zugriffssteuereinheit
DE1774164B1 (de) Datenverarbeitungsanlage mit mehreren gleichzeitig taetigen verarbeitungseinheiten
DE1168130B (de) Magnetkernregister
DE1806535A1 (de) Digitale Rechenanlage
DE2014325A1 (de) Elektronische Rechenmaschine
DE1179027B (de) Speicherprogrammierte digitale Rechenanlage
DE1201586B (de) Programmgesteuerte Daten-Auswertmaschine
DE1171650B (de) Maschine zur serienmaessigen Verarbeitung von Daten in binaerer Zeichenverschluesselung
DE1191145B (de) Elektronische Zifferrechenmaschine
DE1181948B (de) Elektronische Datenverarbeitungsmaschine
DE1180171B (de) Zahlenrechner
DE1221037C2 (de) Verfahren zur Speicherung hierarchisch geordneter Datenketten und Anordnung zur Durchfuehrung dieses Verfahrens
DE1957600C3 (de)
DE1197651B (de) Datenverarbeitungssystem
DE1085360B (de) Datenuebertragungssystem fuer programmgesteuerte elektronische Rechenmaschinen
DE1474017C3 (de) Datenverarbeitungsanlage
DE1194605B (de) Verbesserung an Geraeten zur Verarbeitung von Angaben, Informationen od. dgl.
DE1212748B (de) Datenverarbeitende Maschine mit Programmunterbrechung