DE1934365B2 - Umschaltanordnung fuer eine multiprogramm-datenverarbeitungsanlage - Google Patents
Umschaltanordnung fuer eine multiprogramm-datenverarbeitungsanlageInfo
- Publication number
- DE1934365B2 DE1934365B2 DE19691934365 DE1934365A DE1934365B2 DE 1934365 B2 DE1934365 B2 DE 1934365B2 DE 19691934365 DE19691934365 DE 19691934365 DE 1934365 A DE1934365 A DE 1934365A DE 1934365 B2 DE1934365 B2 DE 1934365B2
- Authority
- DE
- Germany
- Prior art keywords
- data processing
- processing unit
- unit
- signal
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims description 362
- 230000015654 memory Effects 0.000 claims description 141
- 230000002093 peripheral effect Effects 0.000 claims description 139
- 230000008859 change Effects 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 3
- 239000013598 vector Substances 0.000 description 51
- 239000000872 buffer Substances 0.000 description 47
- 238000000034 method Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 17
- 238000007792 addition Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000001356 surgical procedure Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 101100349268 Caenorhabditis elegans ntr-2 gene Proteins 0.000 description 1
- 241000548599 Omma Species 0.000 description 1
- 101100316117 Rattus norvegicus Unc50 gene Proteins 0.000 description 1
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 150000001768 cations Chemical class 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 108010028930 invariant chain Proteins 0.000 description 1
- 235000015250 liver sausages Nutrition 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 210000002105 tongue Anatomy 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/126—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
Description
Die Erfindung bezieht sich auf eine Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage
mit einer zentralen Datenverarbeitungseinheit, einer peripheren Datenverarbeitungseinheit
und einem gemeinsamen Speicher.
Die Arbeitsgeschwindigkeit datenverarbeitender, programmgesteuerter Rechner wurde in den letzten
Jahren ständig erhöht. Dies führte insbesondere als Folge unterschiedlicher Fortschritte in der Entwicklung
der Rechnerbauelemente dazu, daß nicht mehr diese Bauelemente den arbeitsgeschwindigkeitbegreni'.cnden
Faktor darstellen, sondern die Verbindungskanäle zwischen den Bauteilen einer zentralen Datenverarbeitungseinheit
und weiteren Bauteilen des Rechners, insbesondere dann, wenn man zu den Kanälen die Speicher hinzurechnet. So konnte die
Schaltzeil zur Verarbeitung einer logischen Operation oder gewisser arithmetischer Operationen auf
eine Dauer von weniger als 100 Nanosekunden herabgesetzt
werden. Auf diese Weise benötigt eine in
einem Rechenwerk durchgeführte arithmetische oder logische Operation wesentlich weniger Zeit als die
Übertragung der Daten vom Datenspeicher zum Rechenwerk und die Zurückübertragung der im
Rechenwerk erzeugten Daten in. den Speicher.
Je umfangreicher nun ein Computer wird, je mehr verschiedene Speicher und Peripheriegeräte erenthält
und je höher ihre Speicherkapazität wird, desto häufiger kommt es vor. daß im Verlauf einer Berechnung
umfangreiche Anlagenteile stillstehen, weil eine Beendigung von Abläufen von anderen Orten
abgewartet werden muß. Damit eine große Anlage wirtschaftlich ausgenutzt werden kann, indem sie
wenigstens in der Nähe ihrer Verarbeitungskapazität betrieben wird, die durch die Verarbeitungsgeschwindigkeit
der zentralen Datenverarbeitungseinheit innerhalb des Rechners bestimmt wird, wurden bereits
Multiprogramm-Datenverarbeitungsanlagen entwikkelt,
die eine gleichzeitige oder quasi-gleichzeitige Bearbeitung mehrerer Programme in mehreren bzw.
in einer zentralen Datenverarbeitungseinheit gestatten.
In den USA.-Patentschriften 3 337 854 und 3 346 851 sind Hochgeschwindigkeits-Rechner beschrieben,
bei denen eine zentrale Datenverarbeitungseinheit auf Grund eines in ihr ablaufenden Benutzerprogramms
Dienstleistungen von Peripheriegeräten mit Hilfe interner Systemprogramme anfordern
kann. Nach einer solchen Anforderung wartet der betreffende Rechner, bis das Systemprogramm
nach einer bestimmten Wartezeit dem Benutzerprogramm
bzw. der zentralen Datenveraroeitungseinheit anzeigt, daß eine Programmumschaltung \on Seiten
der zentralen Djtenverarbeitungseinheit durchgeführt
werden kann.
Der Erfindung liegt nun die Aufgabe zugrunde, eine Umschaltanoirinung der eingangs angegebenen
Art derart auszugestalten, daß für den Fall, daß die
zentrale Datenverarbeitungseinheit auf die Ausführung von Progummcn in der peripheren Datenverarbeitungseinheit
warten muß, von der peripheren Datenverarbeitungseinheit ein Programm zur Bearbeitung in der Wartezeit ausgewählt wird, mit
dessen Bearbeitung die zentrale Datenverarbeitungseinheit nach Austausch entsprechender Signale beginnt.
Frfindungsgcmäß wird diese Aufgabe dadurch gelöst,
daß die periphere Datenverarbeitungseinheit so ausgebildet ist. daß sie in Abhängigkeit von dem
Stand des in der zentralen Datenverarbeitungseinheit laufenden Programms die Auswahl des nächsten \on
der zentralen Datenverarbeitungsanlage zu verarbeitenden Programms aus dem Speicher steuert und ein
Freigabesignal erzeugt, das anzeigt, daß eine Auswahl getroffen ist. daß die zentrale Datenverarbei-Ϊ
tungseinheit der peripheren Datenverarbeitungseinheit
entweder ein erstes Signal zuführt, das anzeigt, ' daß die zentrale Datenverarbeitungseinheit ohne
Pvogrammwechsel weiterarbeiten kann, oder ein
/weites Signal, das anzeigt, daß ein Programmwechsel
erforderlich ist, und daß eine Schaltung vorgesehen ist, die auf das zweite Signal und auf das Freigabesignal
anspricht und in der zentralen Datenverarbeitungseinheit die Bearbeitung des nächsten von
der peripheren natenverarbeitungseinheit ausgewählten Programms auslöst.
Mit Hilfe der erfindungsgeimiHen I !mschahordnung
wird es möglich, die durchschnittliche Verarbeitungsgeschwindigkeit
des Rechners bis auf die Arbeitsgeschwindigkeit des Rechenwerks zu erhöhen. Da die periphere Datenverarbeitungseinheit laufend
augenblicklich nicht bearbeitete, aber im Rechner vorhandene Programme vorsorglich daraufhin überprüft,
ob sie für eine Weiterverarbeitung durch die zentrale Datenverarbeitungseinheit bereit sind, fallen
die bisher benötigten Wartezeiten weg, die durch das Warten auf die Ausführung von Dienstleistungen
ίο in Peripheriegeräten auftragen, weil jetzt in einem
solchen Fail unverzüglich auf ein zur Weiterverarbeitung bereites Programm umgeschaltet wird, das
dann in der zentralen Datenverarbeitungseinheit abläuft. Die zentrale Datenverarbeitungseinheit ist also
ständig in Betrieb, so daß die durchschnittliche Verarbeitungsgeschwindigkeit erhöht wird.
Eine Ausgestaltung der Erfindung ist gekennzeichnet durch eine Schaltung zur Übertragung eines
von der zentralen Datenverarbeitungseinheit stammenden Fehlersignals zu der peripheren Datenverarbeitungseinheit,
die daraufhin ebenfalls den Programmwechsel in der zentralen Datenverarbeitungseinheit
auslöst.
Mit Hilfe dieser Ausgestaltung der Erfindung kann auch dann ein Programmwechsel ausgeführt
werden, wenn die zentrale Datenverarbeitungseinheil ein Fehlersignal abgibt, das anzeigt, daß das
zur Zeit bearbeitete Programm auf Grund eines Fehlers nicht mehr weiter bearbeitet werden kann. Der
Betrieb des Rechners wird in diesem Fall nicht einfach unterbrochen, sondern es wird zu einem anderen
Programm umgeschaltet, das zur Weiterverarbeitung bereit ist.
Eine vorteilhafte Weiterbildung der Erfindung.
bei der die zentrale Datenverarbeitungseinheit ein Rechenwerk, ein Befehlsabruf register zur Übermittlung
von Befehlen zu dem Rechenwerk, sowie einen Adressengeneralor zur Erzeugung von Steuercodegruppen
für die Steuerung des Einspeicherns und Abrufens von Operanden zwischen dem Speicher
und dem Rechenwerk aufweist, ist dadurch gekennzeichnet,
daß das Befehlsabrufeinheitsregister einen Abschnitt aufweist, in dem entweder ein Aufruf-
und Weiterbearbeitungsbefehl gespeichert wird.
wenn die zentrale Datenverarbeitungseinheit ohne Programmwechsel weiterarbeiten kann, oder der Aufruf-
und Waitebefehl, wenn ein Programmwechsel erforderlich ist, daß mit diesem Abschnitt des Befehlsabi
ufeinheitsregistcrs ein Decodierer verbunden ist. der entweder das erste Signal auf einer ersten
Ausgangsleitung erzeugt, wenn in dem Abschnitt ein Aufruf- oder Weiterbearbeitungsbefehl steht,
oder das zweite Signal auf einer zweiten Ausgangsleitung erzeugt, wenn in dem Abschnitt ein Aufruf-
und Wartebefehl steht, daß ferner eine Schaltung vorgesehen ist. um das jeweils vorhandene Ausgangssignal zum Rechenwerk zu bringen, wenn der reservierte
Speicherplatz verfügbar ist, und daß schließlich eine von diesem Alisgangssignal gesteuerte Tetlschaltung
vorgesehen ist zur Weiterleitung der gerade vorliegenden Steueicodegruppc als die genannte
Coüegruppe an Stelle der Operanden in den reservierten Speicherplatz.
Nachfolgend wird ein Anwendungsbeispiel der Erfindung
an Hand der Zeichnung beschrieben. Hs zeigt Fig. 1 eine vorzugsweise Anordnung von Rechnereinlieiien
und -petiplieriegeräten,
Fig. 2 ein Blockschaltbild zu Fig. 1,
Fig. 2 ein Blockschaltbild zu Fig. 1,
F i g. 3 ein Blockschaltbild zur Darstellung einer Umschaltanordnung zwischen einer zentralen Datenverarbeitungseinheit
und einer peripheren Datenverarbeitungseinheit der F i g. 1 und 2,
F i g. 4 ein ausführlicheres Blockschaltbild der Umschaltanordnung von Fig. 3,
F i g. 5 ein Diagramm zur Darstellung einer Betriebsweise der zentralen Datenverarbeitungseinheit
gemäß F i g. 1 bis 4,
F i g. 6 eine Puffereinheit zum Eingeben beispielsweise
von Vektordaten in einen Rechner,
F i g. 7 ein Blockschaltbild der zentralen Datenverarbeitungseinheit
gemäß F i g. 1 bis 4,
F i g. 8 ein aus zwei Abschnitten aufgebautes Rechenwerk in der zentralen Datenverarbeitungseinheit,
F i g. 9 Baueinheiten innerhalb der zentralen Dalenverarbeitungseinheit
zur Durchführung der Umschaltung mit Hilfe der in den F i g. 3 und 4 dargestellten
Umschaltanordnung,
Fig. 10 eine Darstellung zur Veranschaulichung des Zeitteilbetriebs zwischen virtuellen Datenverarbeitungseinheiten
innerhalb der peripheren Datenverarbeitungseinheit gemäß F i g. 1 und 2,
F i g. 11 ein Blockschaltbild der peripheren Datenverarbeitungscinheit,
Fig. 12 den Zugriff auf Zellen in einem Kommunikationsregister
von Fig. 11 und
Fig. 13 eine ausführliche Darstellung der in
Fig. 11 gezeigten Zuordnungssteuerung.
In der nachfolgenden Beschreibung eines Anwendungsbeispiels der Erfindung wird die Zusammenarbeit
einzelner Einheiten innerhalb eines vorzugsweise zur Verarbeitung wissenschaftlicher Daten ausgelegten
Rechners genau erläutert.
Zu Fig. 1:
Der Rechner enthält eine zentrale Datenverarbeitungseinheit 10 sowie eine periphere Datenverarbeitungseinheit
11. Ein Zentralspeicher besteht aus vier, von Dünnschichtspeicherelementen gebildeten Speichern
12 bis 15 mit einer Zykluszeit von 160 Nanosekunden bei einer durchschnittlichen Zugriffszcii
von 100 Nanosekunden. In den Speichern erfolgt beim Lesen ein Löschungsvorgang. Der Zentralspeicher
ist an die zentrale Dalenverarbeitungseinheit 10 und an die periphere Datenverarbeitungseinheit 11
angeschlossen: er kann von konventioneller Bauart sein.
Jeder Speicher 12 bis 15 hat eine Wortkapazität von 16 384 Wörtern. Ein Wort besteht ans 32 Bits.
256 Bits = 8-32 Bits = 8 Wörter heißen »Wortgnippe«.
was bedeutet, daß 2048 Wortgruppen zu je 256 Bits in jedem der Speicher 12 bis 15 gespeichert
sind.
Eine Speicherstenereinheh 18 stellt die Lese-Schreib-Steuerong
für den Zentralspeicher und damit das im allgemeinen notwendige Zwischenstück zwischen
dem Zentralspeicher einerseits und der zentralen Datenverarbeitungseinheit 16 bzw. der peripheren
Datenverarbeitungseinheit 11 andererseits dar.
Die Speichersteuerernheit 18 hat eine Pufferwirkung,
und sie enthält Vorrichtungen zur Ein- und Ausblendung, Kartierung und zum Schutz der Daten in
den Speichern 12 bis 15.
Die zentrale Datenverarbeitungseinheit 10. die periphere Datenverarbeitungseinheit 11, die Speichersteuereinheit
18 und die Speicher 10 bis 15 arbeiten synchron miteinander. Ein Taktsignal für die
zentrale Datenverarbeitungseinheit erscheint alle 50 Nanosekunden, während ein Taktsignal für die
periphere Datenverarbeitungseinheit alle 65 Nanosekunden erscheint. Weitere Speichereinheiten werden
von Plattenspeichern 16, 17 mit einer durchschnittlichen Zugriffszeit von etwa 60 Millisekunden
ίο und von Bandspeichern 21 bis 26 gebildet. In den
Bandspeichern 21, 22 werden vorzugsweise 1-Zoll-Bänder verwendet, während in den Bandspeichern 23
bis 26 Halbzollbänder verwendet werden. Alle Bandspeicher können als Arbeitsspeicher und auch
zu Ein-Ausgabe-Zwecken verwendet werden. Ein Kartenleser 19 dient zur Eingabe von auf Lochkarten
gespeicherten Daten, und ein Kartenstanzer 20 dient zur Ausgabe von Daten auf gestanzten Lochkarten.
Ein Zeilendrucker 27 ist als Ausgabegerät
ao vorgesehen.
Als weiteres Ein-Ausgabe-Gerät dient eine Bildschirmkonsole
28. Diese Bildschinnkonsole enthält zwei Bedienungspulte, die mit der peripheren Datenverarbeitungseinheit
11 gekoppelt sind und zwei BiIdschirme
von Zweistrahl-Kathodenstrahlröhren enthalten. Die Bedienungspulte bilden nicht nur die
Steuereinheit für die Bildschirmkonsole 28, sondern auch für den Kartenleser 19, den Kartenstanzer 20.
den Zeilendrucker 27 und die Bandspeicher 21 bis 26. Über die Bedienungspulte kann eine Bedienungsperson
in den Rechner Befehle zum Prüfen der Hardware oder der Software eingeben; ebenso können
über die Bedienungspulte Programmunterbrechungen
an bestimmten Stellen ausgeführt werden.
die es erlauben, den Fortgang einer Operation zu überprüfen und auf Grund der erzielten Fortschritte
in ihrem weiteren Ablauf zu beeinflussen. Letzteres kann bedeuten, daß die Operation auf dem eingeschlagenen
Weg weitergeführt wird oder daß möglicherweise mit anderen Daten auf einem anderen
Weg fortgefahren wird.
Wie es bei Rechnern allgemein üblich ist, sind in
dem in F i g. 1 dargestellten Rechner mehrere Speicherhierarchien vorgesehen. Beispielsweise gibt es
die vier folgenden Hierarchien: a) die zentrale Daten Verarbeitungseinheit 10 mit dem schnellsten Speicher,
b) die Speicher 12 bis 15 des Zentralspeichers, die etwas langsamer arbeiten, c) die Plattenspeicher
16, 17. die noch langsamer arbeiten und d) die Bandspeicher 21 bis 26. die im Vergleich zu den zuvor
erwähnten Speichern die längste mittlere Zugriffszeit haben, falls von ihnen keine entsprechend
vorsortierten Daten abgerufen werden.
Der Rechner von F i g. 1 verfügt über mehrere
Untersysteme, die neu sind und eine bemerkenswerte Steigerung der Verarbeitungskapazität für die Fälle
aufweisen, bei denen eine große Anzahl vorsortierter, in bestimmten Gruppen geordneter Daten zur Verarbeitung
anfallen.
Ein erstes solches Untersystem besteht in einer automatischen Umschaltanordnung zwischen der
zentralen Datenverarbeitungseinheit 10 und der peripheren DatenveTarbritungsemheit 11 des Rechners,
in dem mehrere Programme gleichzeitig ablaufen
S5 und verarbeitet werden können.
Ein weiteres solches Untersstem ist n» der zentralen
Datenverarbeitungsehiheit 10 enthalten. Dieses Untersysiem ermöglicht es, Daten zur Eingabe
in den Rechner so zu speichern, zu gruppieren und dem Rechner in solcher Reihenfolge anzubieten,
daß damit seine Verarbeitungsgeschwindigkeit wesentlich erhöht wird.
Ein nächstes solches Untersystem betrifft ein Parallelrechenwerk mit hoher Verarbeitungsgeschwinddigkeit
und Flexibilität, in dem Operanden in einer Art von Fließbandverfahren verarbeitet werden.
Ein weiteres solches Untersystem schließlich betrifft
das Arbeiten mehrerer virtueller Datenverarbeitungseinheiten innerhalb der peripheren Datenverarbeitungseinheit
11 in einem Zeitteilverfahren.
Zu Fig. 2:
Die Organisation des Rechners von Fig. 1 ist
durch eine Erläuterung der im Blockschaltbild von F i g. 2 aufgezeigten Datcnkarsäle !eicht zu umreißen.
Ein Kanal 29 verbindet die Speichersteuereinheit t8 mit einer puffernden Platten- und Trommelsteuereinheit
30. von der ein Kanal zum Plattenspeicher 16 und ein weiterer Kanal zum Plattenspeicher
17 führen. Die Platten- und Trommelsteuereinheit 30 ist ein einfacher, fest verdrahteter Einzweckrechner
zur Durchführung des Datentransports zwischen den mit der Speichersteuereinheit 18 verbundenen
Zentralspeicher und den Plattenspeichern 16, 17 über den Kanal 29 nach Erhalt eines entsprechenden
Befehls.
Die eben erwähnten Kanäle sind bidirektional, wobei in dem zwischen den Plattenspeichern 16 und 17
und der Platten- und Trommelsteuereinheit 30 liegenden Kanal nur jeweils ein Wort pro Taktzeit gefördert
wird. Im Kanal 29 werden dagegen gleichzeitig 8 Wörter, also eine Wortgruppe, zwischen der
Speichersteuereinheit 18 und der Platten- und Trommelsteuereinheit 30 transportiert.
Der Anschluß eines Trommelspeichers 31 an die Platten- und Trommelsteuereinheit 30 zur Erhöhung
der Speicherkapazität mit mittlerer Zugriffszeit könnte über einen weiteren bidirektionalen Kanal
erfolgen.
Ein weiterer Kanal zur simultanen Übertragung von 256 Bits ist der bidirektionale Kanal 32 zwischen
der Speichersteuci einheit 18 und der peripheren
Datenverarbeitungseinheit 11, der je eine Wongruppe zwischen dem Zentralspeicher und der peripheren
Datenverarbeitungseinheit It über die Speichersteuereinheit 18 transportiert.
Wie oben bereits angedeutet wurde, dient die periphere Datenverarbeitungseinheit 11 als Mehrzweckrechner,
dem unter anderem die Steuerung des Datenflusses zn allen Peripheriegeräten, deren Datenkanäle
an ihn angeschlossen sind, mit Ausnahme der Plattenspeicher 16 und 17 und des Trommelspeichers
3! obliegt
Beim nicht zerstörungsfreien Auslesen aus dem Zentralspeicher müssen die ausgelesenen Daten regenerativ
wieder eingespeichert werden, während nur eines der acht Wörter einer Wortgrappe in der peripheren
Datenverarbeitungseinheit Ü verarbeitet wird. Dies erwebt sich schon deshalb als notwendig.
da von der peripheren Datenverarbeitungseinheit 11 infolge der mehr oder weniger langsam arbeitenden
Peripheriegeräte nur jeweils ein Wort aus der Achtwortgruppe (maximal) benötigt wird. Eine typische
Größe der Datenübertragungsgeschwindigkeit für die Übertragung von Daten innerhalb der peripheren
Datenverarbeitungseinheit 11 für ein Peripheriegerät liegt bei etwa 100 000 Wörtern pro Sekunde.
Die periphere Datenverarbeitungseinheit 11 enthält acht virtuelle Datenverarbeitungseinheiten, von denen
die Mehrzahl so programmiert werden kann, daß jede beliebige virtuelle Datenverarbeitungseinheit
mit jedem beliebigen Peripheriegerät gekoppelt werden kann. Die periphere Datenverarbeitungseinheit
11 arbeitet mit Hilfe der virtuellen Datenverarbeitungseinheiten entsprechend dem im Zentralspeicher
gespeicherten Programm, wobei die virtuellen Datenverarbeitungseinheiten außerdem das in der zentralen
Datenverarbeitungseinheit 10 laufende Programm überwachen.
Ein Kanal 33 verbindet die zentrale Datenverarbeitungseinheit 10 mit der Speichersteuereinheit 18,
die ihrerseits über Datenkanäle mit den Speichern 12 bis '5 des Zentralspeichers in Verbindung steht. Im
Gegensatz zu den obigen Ausführungen hinsichtlich
»ο der peripheren Datenverarbeitungseinheit 11 kann
die zentrale Datenverarbeitungseinheit 10 alle acht Wörter einer Wortgruppe aus dem Zentralspeicher
verwerten, wobei sie überdies die Fähigkeit besitzt, eine beliebige Kombination dieser acht Wörter zu
»5 lesen oder zu schreiben. Im Kanal 33 werden vorzugsweise
alle 50 Nanosekunden drei Wörter transportiert, wobei zwei Wörter in die zentrale Datenverarbeitungseinheit
10 eingegeben werden, während ein Wort zur Speichersteuereinheit 18 gelangt.
Weiter unten wird noch beschrieben, wie die zentrale Datenverarbeitungseinheit 10 Vektoroperationen
direkt und ohne Übersetzung durch einen Compiler ausführen kann, wodurch lange Befehlsketten
vermieden werden, da die zentrale Datenverarbeitungseinheit 10 solche Operationen auf Grund eines
einzigen Makrobefehls intern ausfuhrt. Die zentrale Datenverarbeitungseinheit 10 hat diese Fähigkeit
insbesondere deshalb, weil zwischen der Speichersteuereinheit 18 und dem Rechenwerk innerhalb der
zentralen Datenverarbeitungseinheit 10 Puffer vorgesehen sind, die solche zur Bildung der erforderlichen
Befehlsketten benötigten Mikrobefehle enthalten oder zu bilden gestalten. Zusätzlich enthält
die zentrale Datenverarbeitungseinheit 10 das als so-
*5 genannten Schlauchrechner ausgebildete Rechenwerk.
Ein Kanal 34 am Ausgang der Speichersteuereinheit 18 ist zur Erweiterung der Rechnerkapazität
vorgesehen, falls weitere zentrale Datenverarbeitungseinheiten od. dgl. zusätzlich angeschlossen werden
müssen.
Jeder der Kanäle 29 und 32 bis 34 hat über die Speichersteuereinheit 18 direkt Zugriff auf jeden
Speicher 12 bis 15 des Zentralspeichers. Zur Erhöhung der Verarbeitungsgeschwindigkeit werden im
Rechner und insbesondere im Zentralspeicher sich vorzugsweise zeitlich überlappende Arbeitszyklen
angewendet. In der Speichersteuereinheit 18 ist eine Vorrangsteuerung mit vorzugsweise festen Zuordnungen
vorgesehen, damit Anfragen an den Zentralspeicher in einer gewünschten Reihenfolge beantwortet
werden können. So werden Anfragen von den an die Kanäle 29, 32, 33 und 34 unmittelbar angrenzenden
Einheiten vorzugsweise in die«:· Reibenfolge
und vorrangiger behandelt als Anfragen von
solchen Einheiten, die nachgeschaltet sind, wobei die Möglichkeit besteht, die Prioritätsreihenfolge beliebig
abzuändern
309 532/417
Zu Fig. 3:
In Form eines Blockschaltbilds wird eine automatische Umschaltanordnung gezeigt, die die periphere
Datenverarbeitungseinheit 11 mit der zentralen Datenverarbeitungseinheit 1Θ verbindet. Mit Hilfe
dieser Umschaltanordnung ist es möglich, den Zeithaushalt der zentralen Datenverarbeitungseinheit 10
vorsorglich so einzuteilen, daß zeitraubende Dialoge zwischen ihr und der peripheren Datenverarbeitungseinheit
11 vermieden werden. Die Wirkungsweise der Umschaltanordnung basiert darauf, daß
in der zentralen Datenverarbeitungseinheit 10 echt gleichzeitig oder vorzugsweise quasi-gleichzeitig
mehrere Benutzerprogramme ablaufen können und daß andererseits die periphere Datenverarbeitungseinheit 11 periphere Anfragen von Seiten dieser
Programme zu erledigen hai, wodurch nun der peripheren
Datenverarbeitungseinheit 11 die Aufgabe zukommt, den Ablauf der in der zentralen Datenverarbeitungseinheit
10 wirksam werdenden Benutzerprogramme planerisch festzulegen.
Durch zwei verschiedene Signale können die in der zentralen Datenverarbeitungseinheit 10 ausgeführten
Benutzerprogramme von der peripheren Datenverarbeitungseinheit 11 periphere Dienstleistungen
anfordern. Diese Signale haben die Bezeichnungen SCP und SCW. Das Signal SCP kommt dann im
Benutzerprogramm vor, wenn es möglich ist, in der Verarbeitung dieses Programms fortzufahren, ohne
den Vollzug der angeforderten peripheren Dienstleistung von Seiten der peripheren Datenverarbeitungseinheit
11 abzuwarten. Die periphere Datenverarbeitungseinheil 11 wird also auf Grand der entsprechend
gestellten Anforderung Daten. Adressen oder ein ganzes Programm sicherstellen bzw zusammenstellen,
welche im weiteren Abiauf des innerhalb der zentralen Datenverarbeitungseinheit weiterverarbeiteten
gleichen Benutzerprogramms erforderlich werden Die periphere Datenverarbeitungseinheit
11 überträgt dann das angeforderte Datenmaterial bei passender Gelegenheit. Das Signal 5CP wird, wie
in F i g. 3 dargestellt ist, über eine Ausgangsleitung 41 von der zentralen Datenverarbeitungseinheit 10
zur peripheren Datenverarbeifungseinheii ii übeitragen.
Das Signal SCW wird dagegen dann von einem Benutzerprogramm ausgegeben, wenn dieses nicht
»■ei'.et ablaufen kam:, ohne die von der peripheren
Datenverarbeimngseinheit 11 angeforderte periphere
Dienstleistung erhalten zu haben. Das Signa' SCW
wird über eine Ausgangsleitung 42 aus der zentralen
Datenverarbeitungseinheh 10 an die in F i g. 3 zwischen der zentralen Datenverarbeitangseinheit 10 und
der peripheren Datenverarbeitungsejnheit Il liegend«
eigentliche Umschaltanordnang angelegt.
Die periphere Dateaverarbeitungseinheit 11 untersucht die innerhalb der zentralen Datenverarbeitungseinheit 10 gerade unterbrochenen und nicht weiter
ablaufenden Programme daraufhin, welches von der - ntralen Datenverarbeitungseinheit 10 weiterverar-. jitet werden sollte. Hat sie ein solches Programm
gefunden, dann setzt die periphere Datenverarbeitungseinheit 11 eine SchaltkennzeeAeneinricbtung 44,
die hier als Flip-Flop-Schahnng dargestellt ist Wird
nun in der zentralen Datenverarbeituneseinheit 10
beim Anlauf eines in ihr verarbeiteten Benutzerprogranuns ein Signal SCIf gefunden, dann entsteht über
die Und-Gatter 43 auf einer Leitung 45 ein Signal »Umschalten«, wenn auch die Schaltkennzeichenvorrichtung
44 gesetzt ist. Das Signal »Umschalten« verursacht in der zentralen Datenverarbeitungseinheit 10
die Durchführungen der erforderlichen Umschaltung von dem Benutzerprogramm, das zu einem Signal
SCW geführt hat, zu dem Programm, das von der peripheren Datenverarbeitungseinheit 11 aus den in
Reserve befindlichen Programmen als das Programm
ίο ausgewählt worden ist, das als nächstes an die Reihe
kommt.
Im einzelnen spielt sich bei diesem Vorgang folgendes
ab: Wenn die Schaltkennzeichenvorrichtung 44 gesetzt ist, kann beim Auftreten eines Signals SCW
von Seiten der zentralen Datenverarbeitungseinheit 10 über das Und-Gatter 43 das Signal »Umschalten«
auf der Leitung 45 zur zentralen Datenverarbeitungseinheit 10 gelangen und dieser anzeigen, daß sie an
Stelle des Programms, das zur Abgabe des Signals SCW geführt hat und das sich nun vorher in Wartestellung
befindet, ein anderes, bisher in Reserve befindliches Programm oder Programmsegment weiter
bearbeiten kann. Sie wird dieses Programm oder Programmsegmeni
automatisch und ohne Verzögerung
»5 übernehmen und weiterverarbeiten, indem ihr durch
Rückfrage bei der peripheren Datenverarbeitungseinheit 11 von dieser das betreffende Programm oder
Programmsegment angezeigt wurde. Hat nun beispielsweise die periphere Datenverarbeitungseinheit
11 etwa bei Fehlen solcher in Wartestellung befindlicher, betriebsbereiter Programme keine solche Anzeige
zu machen, dann ist von der peripheren Datenverarbeitungseinheit auch die Schaltkennzeichenvorrichtung
nicht gesetzt worden, so daß die Abgabe des Signals »Umschalten« von vornherein unmöglich
gemacht ist. Beim Auftreten des Signals SC W beendet
die r.entrale Datenverarbeitungseinheit 10 in diesem
Fall zwar ebenso d;c Weiterverarbeitung des Benutzerprogramms. das zur Abgabe des Signals SCW
«0 geführt hat. doch bleibt dieses BenutzerprogTamm in
der zentralen Datenverarbeitungseinheit 10 so lange, bis die Schahkennzcichenvorrichtung 44 von der
peripheren Datenverarbeitungseinheit 11 gesetzt wird. Sobald das Signal !»Umschalten« erscheint, wird die
die Schalikcnnzeichenvorrichtung 44 bilHende Flip-Flop-Schaltung
zurückgesetzt.
Mit dieser automatisch arbeitenden Umschaltanordnung wird ein sonst üblicher zeitraubender Dialog
zwischen der zentralen und der peripheren Datenverarbehungsemheit
dadurch vermieden, daß die periphere Datenverarbeitungseinheit 11 vorsorglich sämtliche in Reserve befindliche Programme innerhalb der
zentralen Datenverarbeitungseinheit 10 auf Einsatzbereitschaft, d. h. auf die Möglichkeit, sofort weiter-
verarbeitet zu werden, prüft und registriert. Ein weiterer Vorteil ergibt sich daraus, daß in der zentralen
Datenverarbeitungseinheit keine Schaltungsemrichtungen zur Durchführung des sonst üblichen Dialogs
benötigt werden.
ZoFig.4:
F i g. 4 zeigt ein ausführlicheres Block: cha*tbQd der
in F i g. 3 dargestellten Umschahanordnurig, aus dem
die Zusammenwirkung zwischen der zentralen Datenverarbertungseinheit 10, der peripheren Datenverarbeitungsejnheit 11 and der Speichersteuereinheit 18
deutlich hervorgeht In Fig.4 ist der wesentliche
I, 11 12
%eil der automatischen Umschaltanordnung als zur pheren Datenverarbeitungseinheit 11 bestimmte Be-
t jeripheren Datenverarbeitungseinheit U gehörig ge- triebsbedingungen auftreten.
iteichnet, indem er als Ausgangsteil der peripheren Auf einer Leitung 57 wird ein Signal PSC a!s
»patenverarbeitungseinheit 11 in Richtung zur zentra- Quittiersignal von der zentralen Datenverarbeitungsi
en Datenverarbeitungseinheit 10 und zur Speicher- 5 einheit 10 zur peripheren Datenverarbeitungseinheit
I iteuereinheit 18 dargestellt ist. Die periphere Daten- 11 auf Grund eines vorausgegangenen Signals SCW
Jverarbeitungseinheit 11 enthält also in F i g. 4 auf der oder eines Fehlersignals übertragen. Die periphere
linken Seite einer gestrichelten, senkrechten Linie Datenverarbeitungseinheit 11 löst eine Operationseine
Umschaltanordnung als Ausgangsteil, während folge aus, die die momentan unterbrochene Zentral-J*uf
der rechten Seite der gestrichelten Linie die io datenverarbeitungseinheit veranlaßt, einen bestimmeigentlichen
Schaltungsanordnungen der peripheren ten Informationscode in den zentralen Speicher zu
J)atenverarbeitungseinheit liegen, von denen jedoch übertragen, der den Gesamtzustand des Programm-Ipur
Anschlüsse dargestellt sind. teils in der zentralen Datenverarbeitungseinheit 10
1 Die Ausgangsleitungen 41 und 42 für die Signale charakterisiert, bei welchem diese Einheit die Ver-
^CP und SCW führen von der zentralen Datenver- 15 arbeitung des Programms unterbrochen hat. Nach
/ärbeitungseinheit 10 zur penpheren Datenverarbei- dieser Abspeicherung wird nun die zentrale Datentungseinheit
11. Für diese Übertragung ist ein Oder- Verarbeitungseinheit 10 in einen gänzlich neuen Zu-
'(latterSO vorgesehen, an dessen Eingänge die Signale stand versetzt, auf Grund dessen sie ein neues Pro-
~ ^CP und SCW angelegt werden können, und es ist gramm ausführen kann. Dieses Programm beginnt
ein einen weiteren Signalkanal bildendes Oder-Gatter ao bei dem Zustand, der dem Informationscode ent-51
vorgesehen, an dessen Eingänge das Signal SCW spricht, der der zentralen Datenverarbeitungseinheit
und ein Fehlersignal über eine Leitung 53, die aus nun zugeführt wurde. Erscheint auf der Leitung 57
der zentralen Datenverarbeitungseinheit 10 kommt, also ein solches Signal PSC, dann kann die periphere
; angelegt werden können. Die Signale SCP, SCW und Datenverarbeitungseinheit 11 auf den Leitungen 41,
's das Fehlersignal entstehen auf Grund bestimmter 25 42 oder 53 nachfolgend erscheinende Signale SCP,
] Programmbefehle im Benutzerprogramm, wobei im SCW oder »Fehler« beantworten. Wie noch gezeigt
- Falle der zwei letzteren Signale ein Umschalten vom wird, registriert die periphere Datenverarbeitungseint
bisherigen Benutzerprogramm zu dem nächsten Pro- heit 11 das auf der Leitung 57 erscheinende Signal
1 iramm erwünscht sein kann. und bringt dementsprechend das nächste Programm
Ein kurze Zeit nach Erscheinen der Signale SCT 30 sowie die von der zentralen Datenverarbeitungseinoder
SCW oder des Fehlersignals entstehender Tast- heit 10 zu verarbeitende Information in Bewegung,
impuls auf einer Leitung 54, kommt von der zentra- sobald ein Signal SCW oder ein Fehlersignal auf den
len Daienverarbeitungseinheit 10 zur peripheren Da- Leitungen 42 bzw. 53 erscheint.
■> tenverarbeitungseinhcit 11, in der er eine Flip-Flop- Das Signal »Umschalten« (PS) an der Leitung45
Schaltung 73 setzi. Cs sei bemerkt, daß der Tastim- 35 von F i g. 3 und F i g. 4 zeigt der zentralen Datenver-
~': puls und die von ihm getastete Flip-Flop-Schaltung arbeitungseinheit an, daß diese die Umschaltung von
73 ohne Abweichung von dem in F i g. 3 dargestellten einem Benutzerprogramm zu einem anderen BePrinzip
entfallen könnten. nutzerprogramm vornehmen kann.
Mit einem Signal auf einer der Ausgangsieitungen Ein auf der Leitung 58 von der peripheren Daten-
41. 42 fragt die zentrale Datenverarbeitungseinheit 10 *° Verarbeitungseinheit 11 zur zentralen Datenverarbei-
bei der peripheren Datenverarbeitungseinheit 11 an. tungseinheit 10 übertragenes Signal »Anruf« (PC)
ob sie einen bestimmten Teil des von ihr gerade aus- zeigt der zentralen Datenverarbeitungseinheit an, daß
geführten Programms über den Kanal 33 und die im Zentralspeicher eine bestimmte Stelle verfügbar
Speichersteuereinheit 18 in eine bestimmte, Vorzugs- ist.
weise reservierte Stelle des Zentralspeichers ein- 45 Ein Signal MSC auf einer Leitung 59 zeigt, was die
; speichern darf. Dabei erstreckt s>ch die Zeitspanne, Spcicher^ieuereiriheit 18 anbelangt, daß ein Um-
. in deren Verlauf den bestimmten Teilen des in die- schaltbefehl ausgeführt wurde. Das Signal gelangt von
sem Augenblick von der zentralen Datenverarbei- der Speiehersteueresnheit 18 zur penpheren Daten-
tungsemheit 10 verarbeiteiert Programms enthalten Verarbeitungseinheit 11 und zu einem Eingang eines
_ soll, über die Zeit, die die periphere Uatenverarbei- S^ Und-Gatters 64. dessen zweiter Eingang mit der das
j", tungseinheit 11 benotigt, diesen Programmteil abzu- Signal PSC führenden Leitung 57 verbunden ist.
j < fragen und auf Grund des vorgefundenen Informa- Wenn die Und-Bedingung an diesem Und-Gatter er-
i" tionsgefaalts eine dementsprechende Instniktionsfolge füllt ist, kann die periphere Datenverarbeitungsein-
' ablaufen zn lassen. In dem hier beschriebenen Bei- heit 10 den nächsten Zustandswechsel für die zen-
; spiel wird für eine solche Steueroperation einer Um- 55 irale Datenverarbeitungseinheit vorbereiten. Eine
schaltanordnung eine Wortstelle im Zentralspeicher von der penpheren Datenverarbeitungseinheit 11 zur
-, reserviert Ein auf einer Leitung 55 von der zentra- Speichersteuereinheit 18 führende Leitung 6Θ über-
len Datenverarbeitnngseinheit 10 zur peripheren Da- tragt wie die obengenannte Leitung 45 das Signal
J tenverarbeitiingserahert 11 übertragenes Signal CCC
»Umschalten«; dieses Signal zeigt der Speichersteuer-
meldet der peripheren Dateoverarbeitungseinheit 11, &>
einheit 18 an, daß sie den Umschaltbefehl ausführen
ν daß eis mit dem Signal SCP oder SCW begonnener kann.
'. peripheren Datenverarbeitungseinheit 11 zur zentra- ter = 256 Bits. d. h. jeweils einen ganzen '.Vonblock
■ len Datenverarbeitungseinheit 10, das, wie nachher 65 gleichzeitig zwischen der peripheren Datenverarbei-
erläutert wird, dazu verwendet werden kann, den tungseinheit und der Speichersteuereinlitii bzw.
Ablauf innerhalb der zentralen Datenverarbeitungs- zwischen der zentralen Datenverarbeitungseinheit und
einheit 10 aspen, sobald innerhalb der peri- der Speichersteuere inheit.
13 14
Der zur Umschaltanordnung gehörende Ausgangs- Schluß 84 e, der Ja-Ausgang der die Schaltkennzei- QJ
teil der peripheren Daten', erarbeiiungseinheit 11 ent- chenvorrichtung bildenden Flip-Flop-Schaltung 44 ^
hält nach Fig. 4 zehn P.ip-Flop-Schaltungen 71 bis zum Anschluß 84/, der Ja-Ausgang der Flip-Flop- sL
75, 44 und 77 bis 80. Zu diesem Ausgangsttil ge- Schaltung 77 zum Anschluß 84 g und der Ja-Ausgang
hören auch die Oder-Gatter 50, 51, 68 sowie die Und- 5 der Flip-Flop-Schaltung 78 zum Anschluß 84Λ. Samt- R
Gatter 43 und 61 bis 67. liehe Anschlüsse 84a bis 84/ sind programmzugang- a
Die Flip-Flop-Schaltungen können einfache gleich- lieh, was unten näher erläutert wird, soweit dies für D
stromgekoppelte ÄS-Flip-Flops sein, deren Setz- und das Verständnis einer die Umschaltanordnung be- &
Rücksetzeingänge mit den Buchstaben S bzw. R be- treßenden Operation erforderlich ist. <,,
zeichnet sind. Der Ja-Ausgang der Flip-Flop-Schal- io Das Signal CCC an der Leitung 55 führt zum Setz- ej
tungen ist mit 1 bezeichnet, und der Nein-Ausgang eingang der Flip-Flop-Schaltung 74, die nach Be- A
ist mit 0 bezeichnet. Die Flip-Flop-Schaltungen sind er.digung eines Anrufs in den Setz-Zustand übergeht; B
ferner mit Buchstaben bezeichnet, die die jeweils auf durch Abgabe des Signals CC am Anschluß 84 d wird
den entsprechenden Ja-Ausgäi.gen abgegebenen Si- der peripheren Datenverarbeitungseinheit gemeldet, E
gnale keniizeichnen. Beispielsweise bedeutet der 15 daß der Aufruf beendet ist, worauf die penphere
Buchstabe C bei der Flip-Flop-Schaltung 71, daß an Datenverarbeitungseinheit die Flip-Flop-Schaltung £
der an den Ja-Ausgane angeschlossenen Leitung 81 74 über eine Leitung 85 rücksetzt. w
das Signal C abgegeben"wird. Eine dem Programm zugängliche Leitung 86 führt
Der Ausgang des Oder-Gatters 50 führt an einen zum Setzeingang der Flip-Flop-Schaltung 75. Im Setz-Eingang
des Und-Gatters 61. Der Ausgang des so Zustand erzeugt diese Flip-Flop-Schaltung am Ja-Und-Gatters
61 ist mit dem Setzeingang der Flip- Ausgang ein Sigaal R, das über die Leitung 56 zum
Flop-Schaltung 71 verbunden. Der Nein-Ausgang der Anschluß 84e gelangt, der vom Programm abgefragt
Flip-Flop-Schaltung 71 ist mit einem zweiten Eingang werden kann. Die Flip-Flop-Schaltung 75 wird dann
des Und-Gatters 61 sowie mit je einem Eingang der automatisch rückgesetzt, wenn das Oder-Gatter 68
Und-Gatter 62 und 63 verbunden. Der Ausgang des 25 ein Ausgangssignal abgibt Die penphere Datenver-Oder-Gatters
51 ist mit dem zweiten Eingang des arbeitungseinheit 11 kann also den Zustand der Flip-Und-Gatters
62 verbunden, dessen Ausgang an den Flop-Schaltung 75 feststellen.
SeUeingang der Flip-P.op-Schaltung 72 angeschlos- Über den Setz- und den Rücksetzeingang, an die sen ist. Der Nein-Ausgang dieser Flip-Flop-Schaltung Leitungen 87 bzw. 88 angeschlossen sind, ist die Flip, ist mit je einem Eingang der Und-Gatter 61 bis 63 30 Flop-Schaltung 44 für das Programm zugänglich. Der verbunden. Der Tastimpuls an der Leitung 54 ist an Nein-Ausgang der Flip-Flop-Schaltung ist mit einem den Setzeingang der Flip-Flop-Schaltung 73 angelegt. Eingang des Und-Gatters 66 verbunden, während ihr deren Ja-Ausgang zu je einem der Eingänge der Und- Ja-Ausgang zu dem für das Programm zugänglichen Gatter 61 bis 63 führt. Die aus den Flip-Flop-Schal- AnsdilußM; führt und arch über eine Leitung 89 tungen 71 bis 73, den Und-Gattern 61 bis 63 und den 3£ mit einem Eingang des Und-Gatters 43 verbunden Oder-Gattern 50 und 51 bestehende Baugruppe be- ist. Der Ausgang des Und-Gatters 66 führt zu einem wirkt die Abgabe des Signals C auf der Ausgangslei- Eingang des Oder-Gatters 68, dessen zweiter Eingang tung £1 dann, wenn ein Anruf auszuführen ist. Ferner mit dem Ausgang des Und-Gatters 67 verbunden ist. bewirkt diese Baugruppe die Abgabe eines Signals 5 Ein Eingang des Und-Gatters 67 ist mit dem Neinauf einer mit dem Ja-Ausgang der Flip-Flop-Schal- *o Ausgang der Flip-Flop-Schaltung 77 verbunden, wähtnng 72 verbundenen Ausgangsleitung 82, wenn eine rend em zweiter Eingang dieses Und-Gatters über die ■ Umschaltung durchzuführen ist. Die Flip-Flop-Schal- Leitung 81 mit dem Ja-Ausgang der Flip-Flop-Schaltungen 71 und 72 können erst dann gesetzt werden. tung 71 in Verbindung steht. Eine programmabwenn auf der Leitung 54 der Tastimpuls erscheint. hängige Eingabeleitung 91 führt zum Setzeingang der wodurch bei Zwischenschaltung der Flip-Flop-Schal- 45 Flip-Flop-Schaltung 77, während eine entsprechende tung 73 das an dessen Ja-Ausgang erscheinende Aus- Leitung 92 an de« Rücksetzeingang dieser Flip-Flopblendsignal L an je einem Eingang der Und-Gatter 61 Schaltung angeschlossen ist. Die Flip-Flop-Schaltun- und 62 wirksam wird. Die den Anruf kennzeichnende gen 44 und 77 und die ihnen zugeordneten Schal-Flip-Flop-Schaltung 62 kann nur dann gesetzt wer- tungsteile ermöglichen dem in der peripheren Datenden, wenn sie selbst und die Flip-Flop-Schaltung 72 50 Verarbeitungseinheit 11 befindlichen Programm die bisher rückgesetzt waren. Ebenso wird das Signal S Feststellung, welche der Funktionen Anruf oder Uman der Leitung 82 als Kennzeichen des Setz-Zustan- schaltung entsprechend dem Zustand der Flip-Flopdes der Flip-Flop-Schaltung 72 nur dann zustande- Schaltungen 71 und 72 auszuführen ist und welche zu kommen, wenn diese Flip-Flop-Schaltung selbst und sperren ist.
die Flip-Flop-Schaltung 71 vorher rückgesetzt waren. 55 Die Flip-Flop-Schaltung 78 dient der peripheren
SeUeingang der Flip-P.op-Schaltung 72 angeschlos- Über den Setz- und den Rücksetzeingang, an die sen ist. Der Nein-Ausgang dieser Flip-Flop-Schaltung Leitungen 87 bzw. 88 angeschlossen sind, ist die Flip, ist mit je einem Eingang der Und-Gatter 61 bis 63 30 Flop-Schaltung 44 für das Programm zugänglich. Der verbunden. Der Tastimpuls an der Leitung 54 ist an Nein-Ausgang der Flip-Flop-Schaltung ist mit einem den Setzeingang der Flip-Flop-Schaltung 73 angelegt. Eingang des Und-Gatters 66 verbunden, während ihr deren Ja-Ausgang zu je einem der Eingänge der Und- Ja-Ausgang zu dem für das Programm zugänglichen Gatter 61 bis 63 führt. Die aus den Flip-Flop-Schal- AnsdilußM; führt und arch über eine Leitung 89 tungen 71 bis 73, den Und-Gattern 61 bis 63 und den 3£ mit einem Eingang des Und-Gatters 43 verbunden Oder-Gattern 50 und 51 bestehende Baugruppe be- ist. Der Ausgang des Und-Gatters 66 führt zu einem wirkt die Abgabe des Signals C auf der Ausgangslei- Eingang des Oder-Gatters 68, dessen zweiter Eingang tung £1 dann, wenn ein Anruf auszuführen ist. Ferner mit dem Ausgang des Und-Gatters 67 verbunden ist. bewirkt diese Baugruppe die Abgabe eines Signals 5 Ein Eingang des Und-Gatters 67 ist mit dem Neinauf einer mit dem Ja-Ausgang der Flip-Flop-Schal- *o Ausgang der Flip-Flop-Schaltung 77 verbunden, wähtnng 72 verbundenen Ausgangsleitung 82, wenn eine rend em zweiter Eingang dieses Und-Gatters über die ■ Umschaltung durchzuführen ist. Die Flip-Flop-Schal- Leitung 81 mit dem Ja-Ausgang der Flip-Flop-Schaltungen 71 und 72 können erst dann gesetzt werden. tung 71 in Verbindung steht. Eine programmabwenn auf der Leitung 54 der Tastimpuls erscheint. hängige Eingabeleitung 91 führt zum Setzeingang der wodurch bei Zwischenschaltung der Flip-Flop-Schal- 45 Flip-Flop-Schaltung 77, während eine entsprechende tung 73 das an dessen Ja-Ausgang erscheinende Aus- Leitung 92 an de« Rücksetzeingang dieser Flip-Flopblendsignal L an je einem Eingang der Und-Gatter 61 Schaltung angeschlossen ist. Die Flip-Flop-Schaltun- und 62 wirksam wird. Die den Anruf kennzeichnende gen 44 und 77 und die ihnen zugeordneten Schal-Flip-Flop-Schaltung 62 kann nur dann gesetzt wer- tungsteile ermöglichen dem in der peripheren Datenden, wenn sie selbst und die Flip-Flop-Schaltung 72 50 Verarbeitungseinheit 11 befindlichen Programm die bisher rückgesetzt waren. Ebenso wird das Signal S Feststellung, welche der Funktionen Anruf oder Uman der Leitung 82 als Kennzeichen des Setz-Zustan- schaltung entsprechend dem Zustand der Flip-Flopdes der Flip-Flop-Schaltung 72 nur dann zustande- Schaltungen 71 und 72 auszuführen ist und welche zu kommen, wenn diese Flip-Flop-Schaltung selbst und sperren ist.
die Flip-Flop-Schaltung 71 vorher rückgesetzt waren. 55 Die Flip-Flop-Schaltung 78 dient der peripheren
Eine Rücksetzleitung 83 führt zu den Rücksetzein- Datenverarbeitungseinheit 11 zum Abfragen und Begangen
der Flip-Flop-Schaltungen 71 und 72, wobei stimmen, wann ein Umschaltvorgang beendet ist. Die
diese Rücksetzleitung Signale entsprechend dem in Flip-Flop-Schaltung 79 erzeugt an ihrem Ja-Ausgang,
der peripheren Datenverarbeitungseinheit 11 laufen- also an den Leitungen 45 und 60 das Signal »Uraden
Programm führt, wodurch nach Beendigung eines 6° schalten« (PS), wodurch der zentralen Datenverar-Anruf-
oder Umschaltvorgangs ein Rücksetzsignal für beitungseinheit 10 und der Speichersteuereinheit 18
diese Flip-Flop-Schaltungen erscheint, angezeigt wird, daß mit der Ausführung des Um-
Die Ausgangsleitungen 81 und 82 führen zu An- schaltbefehls begonnen werden soll. Am Ja-Ausgang
Schlüssen 84 a und 84 ft, die zu einer Gruppe von An- der Flip-Flop-Schaltung 80 und an der damit verbun-
schlüssen 84 gehören, die alle programmzugänglich 65 denen Leitung 58 erscheint das Signal »Anruf« (PC),
oder programmabhängig sind. So führt der Ja-Aus- das der zentralen Datenverarbeitungseinheit anzeigt,
gang der Flip-Flop-Schaltung 74 zum Anschluß 84d, daß mit der Ausführung des Anruf-Befehls begonnen
der Ja-Ausgang der Flip-Flop-Schallung 75 zum An- werden soll, wobei die Flip-Flop-Schaltung 80 jedoch
j-nn in den Setz-Zustand übergeht, wenn vorher
^^.Flop-Schaltungen 71 und 77 gesetzt worden
nie bisherigen Ausführungen betrafen die Durchriß giner automatisd en Umschaltund von einem
*jne% anderen Programm innerhalb der zentralen
nltenverarbeitungseinheit 1β unter Berücksichtigung
A in ihr vorliegenden Bedingungen und unter der
cSnerune durch die periphere Datenverarbeitungsnheit.
In der am Ende angefügten Tabelle I ist der Ablauf der Umschaltoperatipn in Form von
Booleschen Gleichungen angegeben.
Die Besonderheiten der zwischen die zentrale
natenverarbeitungseinheit 10 und die eigentliche peri- ~.„t Datenverarbeitungseinheit 11 eingefügte Schalte
zw Verarbeitung der Signale SCW und 5CP sowie
des Fehlersignals sind:
λ Eine Anfrage an die zentrale Datenverarbeituneseinheit
kann sein:
1. Bine durch einen Fehler verursachte Anfrage an die Umschaltanordnung.
2. tin Anruf durch ein Signa! SCP oder
3' ein Umschaltbefehl durch das Signal SCH'.
b) Eine Anfrage an die zentrale Datenverarbeitungseinheit
wird in einer Taktzeit verarbeitet.
c) Die Programmumschaltung und. oder Erledigung
eines Anrufs erfolgt automatisch ohne Inanspruchnahme der Schaltungsteile der peripheren
Datenverarbeitungseinheit, in dem von der eigentlichen peripheren Datenverarbeitungseinheit getrennte Schaltungselemente für Anruf
und Umschaltung benutzt werden.
d) Bei der Durchführung des von einem SCP- oder SC »'-Signals ausgelösten Vorgangs wird eine bestimmte
Speicherstelle des Zentralspeichers verwendet.
e) Bei einem Signal SCW werden getrennte Beendigungssignale
für Anruf und Umschaltung verwendet, wodurch es möglich wird, den Anrufvorgang vor dem Umschaltvorgang und unabhängig
von diesem zu Ende zu führen.
f) Für die zentrale Datenverarbeitungseinheit ist eine Betriebs-Warte-Steuerung vorgesehen.
g) Wenn automatisch gesteuerte Anfragen an die zentrale Datenverarbeitungseinheit erledigt sind,
wird die periphere Datenverarbeitungseinheit unterbrochen. Diese Unterbrechung kann
maskiert werden.
Für den Ausgangsteil werden insgesamt 10 Flip-Flop-Schaltungen verwendet, die in der am Ende angefügten
Tabelle I gemäß der in F i g. 4 dargestellten Schaltung aufgeführt sind. Wie später an Hand von
Fig. 11 erläutert wird, werden im Ausgangsteil Bits verwendet, die in einem oder in mehreren
Wörtern einer Speicheranordnung 431 enthalten sind.
Zur Darstellung der bei der Umschaltung vorkommenden Operationen sind in den am Ende angefügten
Tabellen II und III zwei repräsentative Ablaufbeispiele angegeben, in denen die Fälle betrachtet werden,
daß nur ein Aufruf erfolgt (Signal SCP), daß nur ein Schaltvorgang erfolgt (Fehlersignal) oder daß
ein Aufruf und ein Schaltvorgaag (Signal SCW) erfolgen.
Zu F i g. 5:
Der hier beschriebene Rechner eignet sich nicht nur für skalare Operationen, sondern insbesondere
auch zur Verarbeitung laufend veränderlicher, vektorieller Daten, welcne dem Rechenwerk wiederholt
zugeführt werden; der Rechner ist also besonders für Vektoroperationen geeignet.
Eine typische Vektoroperation ist die Addition zweier Vektoren 2 +B = C (mit A, B und C als ndimensionalen
linearen Feldern) in Form einer Addition ihrer Komponenten af + 6/ = C1. Die Vektoren
A und B werden durch Kanalrechner so hindurchgeführt, daß die entsprechenden Komponenten
addiert werden. Auf diese Weise ergibt sich der Vektor C. "
Eine weitere häufig benutzte Operation innerhalb des Rechners ist die Bildung eines skalaien Produkts
(A-B) = C oder eines Vektorprodukts [Ä ■ B] = C-Das
Ergebnis wird wiederum so gewonnen, daß die Vektoren in ihre Komponenten zerlegt und gemäß
der Gleichung
c= ^T σι
1-1
1-1
arithmetisch berechnet werden, wobei der Cosinus oder Sinus des Winkels zwischen A und B berücksichtigt
wird.
Dies kann auf eine Multiplikation von Determinanten oder Matrizen erweitert werden. Heißt die
eine Determinante A und die andere B, so folgt für die resultierende Determinante C im Falle eines dreidimensionalen
Raums:
«11 | «12 | au | • | bn | b\i fcu | = | Cll C12 Ύΐ |
«21 | «22 | «2.1 | bn | btt btx | C21 °Ϊ2 C21 | ||
«SI | «12 | «1.1 | *.. | bXt b3* | C.1t CS8 CS.1 | ||
mit beispielsweise C11 = C11 6„ + alt f>fl + flts b3l
und allgemein
wobei ρ der Grad der Determinante ist.
Die Erzeugung des Elements clt kann man als
eine Multiplikation der ersten Reihe der Determinante A mit der ersten Spalte der Determinante ß
durchführen. Ein Element C11 kann als Multiplika-
*5 tion der ersten Reihe der Determinante A mit der
zweiten Spalte der Determinante B entsprechend erzeugt werden; ein Element C1. aus der Multiplikation
der ersten Reihe der Determinante A mit der dritten Spalte der Determinante B.
Vektoriell ausgedrückt kann man so sagen: Der Reihenvektor 1 der Determinante A dient als Operandenvektor
für drei Vektoroperationen mit dem Spaltenvektor 1 oder 2 oder 3 der Determinante B
zur Erzeugung des Reihenvektors 1 der resultierenden Determinante C. In solcher Weise wird nun noch
zweimal verfahren. Ein erstes Mal, indem jetzt statt des Reihenvektors 1 der Reihenvektor 2 der Determinante
Ά und ein zweites Mal, indem jetzt der Reihenvektor 3 der Determinante A zur Erzeugung der
60 Reihenvektoren 2 bzw. 3 der resultierenden Determinante
C verwendet wird.
Eine solche skalare Vektormultiplikation in Form einer Matrixmultiplikation kann demnach so durchgeführt
werden, daß zwei verschiedene Schleifen 65 mehrmals durchlaufen werden. Diese Schleifen seien
als innere bzw. äußere Schleife bezeichnet. Für das Beispiel der Matrixmultiplikation sei die innere
Schleife zur Indizierung von Element zu Element
309 532/417
innerhalb einer Reihe der Matrix C vorgesehen, die äußere Schleife dagegen zum Fortschreiten von Reihe
zu Reihe innerhalb der Matrix C.
Die in F i g. 5 hinsichtlich ihrer Ablaufschleifen skizzierten Operationen werden in der gemäß F i g. 6
aufgebauten zentralen Datenverarbeitungseinheit in problemorientierter, optimierter Weise realisiert.
Zu Fig. 6:
Die Verarbeitungsgeschwindigkeit der zentralen Datenverarbeitungseinheit 10 des hier beschriebenen
Rechners liegt wesentlich über der Verarbeitungsgeschwindigkeit, mit der Daten aus einem Speicher ausgelesen
und in diesen wieder eingespeichert werden können. Damit die hohe Verarbeitungsgeschwindigkeit
innerhalb der zentralen Datenverarbeitungseinheit 10 zur Verarbeitung gioßer, vorsortierter Datenblöcke,
beispielsweise bei Vektoroperationen, ausgenutzt werden können, wird zwischen dem Rechenwerk
und dem Speicher eine Kopplungseinrichtung *»
angebracht, die speziell der Forderung nach höchster Verarbeitungsgeschwindigkeit Rechnung trägt. Die
Kopplungseinrichtung wird im folgenden al« Pufferenjieit
100 bezeichnet, die nach Fig. 6 zwischen die
Speichersteuereinheit 18 und das Rechenwerk 101 as eingefügt ist. Die Puffereinheit 100 wird als Teil der
zentralen Datenverarbeitungseinheit 10 angesehen, und sie ist über den Kanal 33 mit der Speichersteuereinheit
18 verbunden. Außerdem führen zwei Datenkanäle 100 a und 100 b von der Puffereinheit 100
zum Rechenwerk 101, das hier als Vektorrechenwen beieichnet werden kann. Ein Datenkanal 100c fühn
vom Rechenwerk 101 zur Pufiereinheit 100. Über die Datenkanäle 100 6 und 100 b werden Operanden
zum Rechenwerk transportiert, während der Daten- 3i
kanal HHh das im Rechenwerk erzeugte Resultat zur Puffereinheit 100 überträgt, von ν·ο es über die Speichersteuereinheit
18 zu den Speichern 12 bis 15 gelangen kann.
Zu Fig. 7: *°
Unter Bezugnahme auf die mehr ins einzelne gehende Darstellung von Fig. 7 kann die Wirkung dei
Puffers 100 bei Hochgeschwindigkeitsübertragungen zum und vom Rechenwerk 101 erläutert werden. Wie
bereits erwähnt wurde, sind im Zentralspcicher Wortgruppen von 256 Bits in Wörtern zu je 32 Bits enthalten;
eine Wortgruppe kann dabei jeweils gleichzeitig gelesen oder geschrieben werden. Die Wortgruppen
werden aus dem Zentralspeicher über die Speiehersieuereinheit 18 und den Kanal 33 zu einer
Torschallungseinheit I80 transportiert. Der Torschaltungseinheit
18a ist der Puffer 100 nachgeschaltet. Wie in F i g. 6 dargestellt ist, verlaufen zwischen der
Puffereinheit 100 und dem Rechenwerk 101 drei Datenkanäle 100a, 100b und lOOr Der Kanal 100a
ist der Ausgangsttil eines Registerkanals für den Operanden A, der zwei in Serie geschaltete Puffer
102 und 103 enthält. Der Kanal 100 b ist der Ausgangskanal eines Rcgisterkanals für den Operunden
B, der von zwei in Serie geschalteten Puffern i05 und 106 gebildet wird. Der Kanal 100c ist dagegen
der Eingangskanal eines Registerkanals für das Resultat C, der aus zwei in Serie geschalteten
Puffern 108 und 107 besteht. Die Registerkanäle für die Operanden A und B puffern die Operanden auf
dem Weg zwischen dem Zentralspeicher und dem Rechenwerk. Der Resultatregisterkanal puffert daaegen
die vom Rechenwerk 101 ausgegebenen Er- i gebnisse, ehe sie beispielsweise in Wortgruppen gesammelt
zu den Speichern 12 bis 15 zurucktranspor- <
tiert werden. , _ , . . , j
Der Puffer 102 ist so aufgebaut, daß er beispielsweise mit jeder achten Taktzeit auf einmal eine aus :
orht Wörtern bestehende Wortgruppe empfangen
und abspeichern kann. Synchron mit dem Puffer 102
wird jede Wortgruppe zum Puffer 103 weitertrans-Dortiert
Aus 32 Bits bestehende Wörter werden vom Puffer 103 zum Rechenwerk 101 so übertragen, daß
-« Wort pro Taktimpuls bewegt wird. Je nach Art der vom Rechenwerk 101 auszuführenden Operation
wird zu jeder Taktzeit ein vom Rechenwerk gebildetes Resultat aus den Puffern 108 und 107 zum
Zentralspeicher gebracht. Der Rechner kann in gleicher Weise hochwirksame Operationen wie auch
Operationen mit geringeren Anforderungen ausführen Ein Beispiel für höchste Anforderungen bei einer
Operation der Puffereinheit 100 und des Rechenwerks 101 ist die Addition von Vektoren, bei der die
zwei Operanden aus den Puffern 103 und 106 mit iedem Taktimpuls zum Rechenwerk 101 übertragen
werden das mit jedem 1 aktimpuls eine Summe büdet, die unmittelbar vom Puffer 108 aufgenommen
In der zentralen Datenverarbeitungseinheit 10 befinaet
sich eine Datei aus adressierbaren Registern, nämlich Basisregistern 120,121, allgemeinen Registern
122 und 123, einem Indexregister 124 sowie einem Vektorparameterregister 125. Jedes der Register
120 bis 125 hat über einen gemeinsamen kommunikationskanal
104 und eine Operandenabruf - und Operandenspeicheranordnung 126 Zugang zum Rechenwerk
101 Die Anordnung 126 dient als Durcheangsk.nal
zu Operanden in beiden Richtungen. Fine Steuereinheit 127 dient unter anderem zur
Steuerung des Rechenwerks 101 dadurch, daß sie ihre Steuersignale auf Grund der von einem Befehlspufferspeicher 127a gelieferten Befehle bildet Der
Befehlspufferspeicher 127a dient der Pufferung von Befehlen, die aus einer Befehlsabrufeinheit 128 stammen
Die Befehlsabrufeinheit 128 beliefert nicht nur den Befehlspufferspeicher 127a mit Befehlen, sondern
es liefert auch Adressen an eine Indexeinheit 126a; der Ausgang der Indexeinheit 126a führt dabei
zur Anordnung 126. Die Befehlsdateien 129 und 130 bilden puffernde Kanäle für einen Befehlsfluß
von den Speichern 12 bis 15 zur Befehlsabrufeinheit 128
Fine Steuereinheit 131 steht mit Ausnahme der Befehlsdateien 129 und 130 mit allen in F i g. 7 gezeigten
Einheiten in Verbindung; es besteht auch eine Verbindung zwischen ihr und der Torschaltungseinheit
18a. Zur Aufgabe der Steuereinheit 131 gehört es, auf Grund des Signals SCW oder des Fehlersignals
(F i g. 4) den gesamten augenblicklichen Zustand der zentralen Datenverarbeitungseinheit 10
vorzugsweise in den Zentralspeicher zu übertragen und an Stelle dieses Zustandes in die zentrale Datenverarbeitungseinheit
einen neuen Zustand einzugeben, so daß der Ablauf eines neuen Programms begonnen
werden kann.
Die Puffereinheit 100 enthält eine Parameterregisterdatei
132 und eine Arbeitsspeicherregisterdatei 133. Die Parameterregisterdatei 132 ist über einen
Kanal 134 und über den Kommunikationskanal mit dem Vektorparameterregister 125 verbunden.
er Inhalt des Vektorparameterregisters 125 wird
die Parameterregisterdatei 132 übertragen, sobald tin Vektorbefehl aus dem Zentralspeicher zum Befehlsspeicherregister
128 geholt wird. Wenn das Bejehlsspeicherregister 128 beispielsweise einen solchen
/ektorbefehl aufgenommen hat, erfolgt unmittelbar Jn Maschinensprache eine Übertragung der Paraneterdaten
aus dem Vektorparameterregister 125 in Jie Parameterregisterdatei 132. Die Ausführung der
daraufhin erfolgenden Operationen erfolgt vermittels der Indexeinheit 126 a, des Befehlspufferspeichers
127 a, sowie der Anordnung 126 und der Steuereinfheit
127. Dies bedeutet im einzelnen, daß im Verlauf !der Zeit, in der das Rechenwerk 101 eine bestimmte
Zu Fig. 8:
bilden. Im Rechenwerk 101 werden grundsätzlich Verzögerungen vermieden, die bei iterativen Multipiikationsverfahren
sonst üblich sind.
Das Rechenwerk enthält zwei parallele Rechenwerksabschnitte 300/4 und 300 ß, die in der Darstellung
symmetrisch zur Mittellinie 300 angeordnet sind. Die Operandencingangskanäle sind mit den Bezugszeichen 300a bis 300 t/ gekennzeichnet.
Der Rechenwerksabschnitt 300/4 enthalt eine Exponentensubtraktionseinheit
302, zu der über einen Kanal 303 eine Ausnchteinheit 304 in Reihe geschaltet
ist. Der Ausrichteinheit 304 ist über einen Kanal 305 eine Addiereinheit 306 nachgeschaltct:
Aus der obigen Beschreibung geht hervor, daß der hier beschriebene Rechner vorsortierte Daten mit hoher
Geschwindigkeit liefern kann. Es ist daher erwünscht, daß das diese Daten verarbeitende Rechenwerk
101 so ausgelegt ist, daß es die Daten mit derselben Geschwindigkeit verarbeiten kann, die durch
die im Zusammenhang mit den F i g. 6 und 7 beo schriebene Puffereinheit 100 erreicht werden
kann.
In F i g. 8 ist ein Rechenwerk dargestellt, das mehrere Funktionseinheiten aufweist, die auf bestimmte
Rechenoperationen spezialisiert sind und die hinterOperation ausführt, die Anordnung 126 und die 15 einander angeordnet und in verschiedener Weise mit-Steuereinheit
127 die nächste nachfolgende Opera- einander verbunden werden können. Das Rechenj
tion zur Durchführung durch das Rechenwerk 101 werk 101 besteht vorzugsweise aus zwei im wesent-Ivorbereiten.
In der gleichen Zeit bereiten auch die lichen gleichen Rechenwerksabschnitten,derenFunk-I
Indexeinheit 126 a und der Befehlspufferspeicher tionseinheiten über eigene Zwischenspeicher verfü-1127
a die nächstfolgende Operation vor. Schließlich ao gen. Das Rechenwerk enthält Multipliziereinheiten,
■ nimmt während derselben Zeitdauer die Befehlsab- die es gestatten, in einem Taktimpuls ein Produkt zu
.' ruf einheit 128 den daraufhin folgenden Befehi auf.
Dieser Befehl wird somit im Rechenwerk 101 drei
Operationen später als der augenblicklich wirksame
Befehl ausgeführt. Bei einer derartigen Organisation 25
werden also vier Befehle gleichzeitig verarbeitet, indem sich jeder in einer verschiedenen Verarbeitungsstufe hinsichtlich der anderen Befehle befindet, wie
dies in Fig. 7 durch die Zeiten ΓΙ, Γ2, Ti und T4
angedeutet ist. 30
Dieser Befehl wird somit im Rechenwerk 101 drei
Operationen später als der augenblicklich wirksame
Befehl ausgeführt. Bei einer derartigen Organisation 25
werden also vier Befehle gleichzeitig verarbeitet, indem sich jeder in einer verschiedenen Verarbeitungsstufe hinsichtlich der anderen Befehle befindet, wie
dies in Fig. 7 durch die Zeiten ΓΙ, Γ2, Ti und T4
angedeutet ist. 30
Es sei darauf hingewiesen, daß infolge der Kombination des Vektorparameterregisters 125 mit der
Parameterregisterdalei 132 die Kapazität des Rechners dahingehend erhöht wird, daß mit hoher Geschwindigkeit komplexe Vektoroperationen in Ma- 35 eirs Ausgang der Addiereinheit 306 führt über einen schinensprache programmgesteuert durchgeführt Kanal 307 zu einer Normalisierungseinheit 308, dewerden können. ren Ausgang über einen Kanal 309 mit einer Ausin der Parameterregisterdatei 132 und in der Ar- gabeeinheit 310 verbunden ist.
Parameterregisterdalei 132 die Kapazität des Rechners dahingehend erhöht wird, daß mit hoher Geschwindigkeit komplexe Vektoroperationen in Ma- 35 eirs Ausgang der Addiereinheit 306 führt über einen schinensprache programmgesteuert durchgeführt Kanal 307 zu einer Normalisierungseinheit 308, dewerden können. ren Ausgang über einen Kanal 309 mit einer Ausin der Parameterregisterdatei 132 und in der Ar- gabeeinheit 310 verbunden ist.
beitsspeicherregisterdatei 133 vorkommende Abkür- Die Operandeneingangskanäle 300a und 300c sind
zungen sind in der am Ende angefügten Tabelle IV 40 außerdem über eine Vornormalisierungseinheit 311
aufgeführt und erklärt. mit einer Multipliziereinheit 312 verbunden, deren
Die Parameter werden vorzugsweise vor Ausfüh- Ausgang über einen Kanal 313 zu einem weiteren
rung eines Vektorbefehls aus dem Zentralspeicher in Eingang der Addiereinheit 306 führt. Ein vom Ausdie
Register geladen. Die Vektoren werden hinter- gare der Ausrichteinheit 304 kommender Kanal 315
einander en'sprechend den in der zentralen Daten- 45 führt zu einem Eingang eines Akkumulators 314, an
Verarbeitungseinheit enthaltenen Parameterwerten dessen weiterem Eingang über einen Kanal 316 der
durch das Rechenwerk geschleust. zweite Ausgang der Addiereinheit 306 angeschlossen
Im folgenden wird das durch die oben angegebenen ist Ferner verbindet ein Kanal 317 den Akkumulator
Gleichungen beschriebene Beispiel einer Determi- 314 mit einem spiegelbildlich angeordneten Akkur.antenmultiplikation
ausgeführt, wol»ei die Zuord- 5° mulator 345 des Rechenwerksabschnitts 300B. Ein
nung zwischen den Speicherp!ätzen und den Elemen- erster Ausgang des Akkumulators 314 führt über
ten der Determinanten A, B und C (auch Vektoren einer. Kanal 318 zu einem weiteren Eingang der Exgenannt)
in der am Ende angefügten Tabelle V an- ponentensubtraktionseinheit302, während ein zweiter
gegeben ist. Ausgang des Akkumulators 314 über einen Kanal
Aus der am Ende angefügten Tabelle VI ist die 55 319 mit einem zweiten Eingang der Ausgabeeinheit
Adressenfolge und die Art der Berechnung des Vek- 310 verbunden ist
tors A zu erkennen. Der Ausgang der Exponentensubtraktionseinheit
Die Vektoren B und C werden in ähnlicher Weise 302 ist mit einem Kanal 320 verbunden, der direkt
bearbeitet. Die Adresscnfolge des Vektors B gleicht zum ersten Eingang der Ausgabeeinheit 310 führt,
der Adresscnfolge des Vektors A, mit der Ausnahme. 60 Ebenso sind auch die Ausgange der Ausrichteinheil
304 sowie der Addiereinheil 306 an den Kanal 320
angeschlossen. Ein Kanal 32t führt von einem weiteren Ausgang der Addiereinheit 306 zu einem vierten
Eingang der Exponentensubtraktionseinheit 302.
abhängig. Das obige Beispiel gilt für eine skalare 65 Die Addiereinheit 306 besitzt einen dritten Eingang,
Multiplikation von Vektoren. Der entsprechende der über einem Kanal 322 mit dem Ausgang einer
Vektorcode wird zwecks dieser Bestimmung in die Multipliziereinheit 341 verbunden ist, die im Re-Puffereinheit
100 eingegeben. chenwerksabschnitt 300 ß spiegelbildlich zur Multi-
daß als Startadiesse an Stelle von k die Startadresse
genommen wird. Die Adressenfolge des Vektors C
ist m, m -f ! . . . m t S. Die Erzeugung der Adressen folge ist jeweils von dem speziellen Vektorbefehl
genommen wird. Die Adressenfolge des Vektors C
ist m, m -f ! . . . m t S. Die Erzeugung der Adressen folge ist jeweils von dem speziellen Vektorbefehl
pHziereinheU312 des Rechenwerksabschnitts 300 ,
ist von Bedeutunftdaß d« pdMh
300« und 300c über Kanäle
jede Funktionseinheit des ***™™™£?ί$Τ
3(MM angeschlossen sind, wöbe, led.glich de Akkunullator 314 davon ausgenommen „t Im *ιπ«ιη?£
führen die Kanäle 323 und 324 aho überKanäle
an 5
der ta |echner am meisten benötigten Ope-Gleitkomma-Addition ist, die in vier
Schritten ausgeführt werden muß. Diese Schritte sind:
Schntten Mg^ ^
^n des A_ md ^
Ausrichten der Mantissen vorzugsweise ra >
Addition ^ Manüssen ^
angefügten Tabelle VII
«■
an,
seir Vei sor
schließen die Kanäle des Reche™er
von Maschinen- oder Prograrnmbefeh ^
Der »^^"^^^
dem Rechenwerksabschnitt 300^4 autgeo
entspricht die Exponentensubtraktionse.nheit 330
derrExponentensubtrakt,onsemhen30Z ^ ^„ „
richteinheit 332 der Ausnchteinheit304, aie Ajai
malisierungsemheit 336 der
308, die Ausgabeeinheit 338
Aus
tionseinheit der zwei
ben eine
von F
ziellen
Smd d,e
Addition zweier Zahlenreihen oder Vektoren isl ra Begtan (Zeit fe) jede Funktionseinheit des
Senwerks IeTr. Zur ZdW1 wird das erste Zahlenpaar«, und b, der Exponentensubtraktion unter-Hi ι ausgeführt werden muß. Zur
zogen zlhlenpaar - «nd ft5 dieser
^««bWkto unte^gen/während das
Zahlcnpaara, und 6. einen zweiten Schritt in
FoS1 dt iiantiss'enausricWg durchläuft Dieses
Verfahren wird weiter fortgeführt, bis zur Ze.W,
Rechenwerksabschnitt derart gefüllt ist, daß jede
Funktionseinheit bei jedem Schritt ein Zahlenpaar
«£»£■*-** 1« ^ gTOndsätzlich 64.Bit.
orientiert. Alle Funktionseinheiten von Fig. 8 außer
den Multipliziereinheiten 312 und 341 empfangen
κ 32Bits ^ ^n Ausgängen ab.
Multipli|erei„heiten geben dagegen 64 Bits ab.
Ausnahme einer Multiplikation und einer D.vi-Ka- sion benötigen alle Funktionen sowohl für Operanden
35 mit einfacher Wortlänge als auch für Operanden mit Ka. αορρεηεΓ Wortlänge dieselbe Verarbeitungszeit.
Festkomma-Zahlen werden vorzugsweise im Zweierkomplement dargestellt, während Gleitkomma-Zah,en Λ Exzess_64-Zahl nach Vorzeichen, Mantisse und Exponent erscheinen. .
Der besondere Aufbau des Rechenwerks in der An eines Verarbeitungskanals ermöglicht eine
fließende Verarbeitung, die insbesondere bei der Anwendung auf Vektorbefehle besonders gunstige
^ Eigenschaften hat Die Anordnung von zwei paralle!« Rechenwerksabschnitten gestattet es, daß zu
jeder Taktimpuiszeit an jeder der Ausgabeeinheiten
310 und 338 ein Resultat erscheint. Jeder Rechen-
o^rJede werksabschnitt kann Teile anderer Befehle verarbe,-
n Or^rauoru Je jeder Rechenwerksabschnht enthält Funkt.ons-
i - oder Maschi- einheiten, mit deren Hilfe insbesondere die Add.t.ons-
zeit fSr Gta&omma-Additionen verk&zt werden
kann. Die zueinander spiegeftfldHchlBqgenden
FonktkmseinheHen der beiden Rechenwerfaabschnitte
» können jeweüs nriteinander kombkriert *^ d«s
. fld nicht für die MdtipHriereiiifaeiten. Die
btraMonseinheiteo 3KL, 33· können
SpSS 312 und der Akkumulator 345
dem Akkumulator314.
Ebenso'entsprechen sich die^
300 b und 300 c 300 rf ™d 300^ ^
333 und 305, .335 1and 307. 337 und 309. 342 un
324. 343 und 323. 346 und 315 34» una
353 und 313, ^ ^'"^
und 320 sowie 347
nal350 von der
^r Exponentensubtraktion
nal 355 führt von der Ausgabeeinheit gabeemheit 310.
Wi ^y
ein Ka-
au
am Beispiel «J« A«g£«nhe 3lü .Qnsein.
zugszeichen 310a «&&%£ub aktionseinheiten haheiten und die Exponentensut' ^
%£ub aktion
tensut' ^
g "„ 64 Bits
it? enthalt aSfdne Vielzahl
^ Durchführung einer spe- ^r Finktionsein-
rbmiden werden.
verschiedener SSa^wegkönnen.
L %5£ werden, daß bei- «rVerarbehnngsstufe bflden^ in de, de
einlVTaktzeit nnterschiedliche ander getrennt oder mitemander komtenert ar
Funktionseinheitdnrchlanfen, 60 fe Faflejeiner KomWnaton !erarbeiten s,e einen
wird, daß mehrere A- und Operanden mit doppelter Wortlange. ,_.-.,
strömen, in dem sie jeweils komma-Additionen fmr Rechtsyersctaebnng^ verdnrchlanfen. wendet werden. Die NormaGaeningsemheiten 3β8,
zweier par- «5 336 dienen aüe Nornialisienn^jdern«^ ag>
mit spezienen auch Unterschiebungen. Die Addieremheitel·
TedrkbareTWeise 334 werfen vorzngsweise für Hocb^w^gk
werfen können, gewähr- operationen znr AnsfBhmng von Giert- oder Fest
!aUsKomma-Additionen verwendet. Sie finden überdies
Verwendung bei der Addition der sogenannten 'seudosumme oder des sogenannten Pseudoüberaufs,
die aus der Multipliziereinheit kommen,
p Bei der Verarbeitung von Vektoren ist ein Gleit-Vjg comma-Additionsbetrieb zur Anpassung an einen iai »roßen dynamischen Bereich wünschenswert. Das Rechenwerk 101 kann zwar sowohl Fest- als auch Gleitkomma-Additionen durchführen, doch wird at eine wirtschaftliche Arbeitsweise hinsichtlich der (gJ^Verarbeitungszeit und des Bauelemcntaufwands be-
p Bei der Verarbeitung von Vektoren ist ein Gleit-Vjg comma-Additionsbetrieb zur Anpassung an einen iai »roßen dynamischen Bereich wünschenswert. Das Rechenwerk 101 kann zwar sowohl Fest- als auch Gleitkomma-Additionen durchführen, doch wird at eine wirtschaftliche Arbeitsweise hinsichtlich der (gJ^Verarbeitungszeit und des Bauelemcntaufwands be-
; sonders bei Gleitkomma-Additionen nach der Ta- ; belle VII erkennbar.
Die Multipliziereinheit 312 kann eine Muitipli-
kation von 32 Bits mit weiteren 32 Bits in einer Takt-/eit
durchführen. Infolge dieser Fähigkeit der Multipli7iereinheit
passen diese Einheiten gut mit den übrigen Funktionseinheiten zusammen, da die Verarbeitungszeiten
grundsätzlich gleich sind.
Die Multiphziereinheiten bilden gleichzeitig die Verarbeitungseinheiten für eine Division. Multiplikationen
oder Divisionen mit Operanden mit dopnelter Wortlänge erfordern mehrere Iterationen über
die Multipliziereinheit, bevor das Resultat erhalten wird. Festkomma-Multiplikationen und Gleitkomma-Multiplikationen
mit Operanden mit einfacher Wortlänge werden nach einem Durchgang durch die MuI-tiplizicreinheit
erhalten. Die Multipliziereinheit 312 gibt zwei Doppellängenwörter mit je 64 Bits in Form
einer Pseudosumme und eines PseudoÜberlaufs ab. In der Addiereinheit 306 werden aus diesen Wörtern
ausgewählte Bits miteinander addiert, damit ein Produkt mit der Länge eines Worts erhalten wird. Soll
mit einer Multiplikation mit einem Operanden mit einfacher Wortlänge ein Produkt mit doppelter Wortlänge
gewonnen werden, dann erzeugt die Multipli-7ioreinheit
341 eine aus 64 Bits bestehende Pseudosumme und einen aus 64 Bits bestehenden PseudoÜberlauf,
und die Pseudosumme und der PseudoÜberlauf werden dann in den Addiereinheiten 306
und 334 addiert, wodurch das Produkt mit der doppelten Wortlänge gewonnen wird. Eine Doppellängenmultiplikation
kann so durchgeführt werden, daß die drei folgenden Schritte in der richtigen Reihenfolge
durchgeführt werden: Eine Multiplikation in der Multipliziereinheit 341, eine Addition in den
Addiereinheiten 306 und 334 sowie eine Saidierung in den Akkumulatoren 314 und 345. Die Akkumulatoren
314. 345 gleichen den Addiereinheiten, und sie werden für spezielle Zwecke verwendet, in denen
eine fortlaufende Saldierung erforderlich ist.
Eine Multiplikation nut Operanden mit doppelter Wortlänge erfordert eine solche laufende Saldierung.
da vier getrennte 32 - 32 Bit-Multiplikationen durchzuführen sind, worauf deren Zwischenergebnisse
(Partialsummen) steflenrichtig in den Akkumulatoren aufaddiert werden. Eine Doppellängenmultiplikation
erfordert deshalb acht Taktzeiten, bis das richtige Ausgangssignal erscheint, während eine Emzellängenmultiplikation
nur vier Taktzeiten benötigt. Eine Doppellängenmultiplikatjon bedeutet zwei 64-Bit-Gleitkommazahlen
(56-Brt-Mantisse), die miteinander multipliziert werden, um ein aus 64 Bits bestehendes
Resultat zu erhalten, wobei die niedrigstwertigen Bits nach der Nachnormalisierung abgeschnitten
sind. Eine Festkomma-Multiplikation bedeutet eine Multiplikation von 32-32 Bits, und sie ergibt
ein aus 64 Bits bestehendes Resultat.
Eine Division ist die umfangreichste vom Rechenwerk auszuführende Operation, wobei die Fähigkeit
einer Stellenmultiplikation von Vorteil ist. Nach einer Anzahl itterierender Multiplikation ist der Quotient
mit der gewünschten Genauigkeit erstellt. Da bei diesem Divisionsverfahren kein Rest als Resultat der
vorhergehenden Multiplikationen erzeugt wird, muß zur Bestimmung des Rests mit Hilfe der vorhandenen
Hardware weitergerechnet werden, falls ein Rest erwünscht ist. War die Lösung x/y = Q, dann kann der
Rest aus der Beziehung R = χ — (y · Q) gewonnen
werden. Der Rest wird auf so viele Bits genau, als der Dividend ma! Bits enthält. Die zur Bildung des Rests
erforderliche Zeit addiert sich direkt zu der Zeit, die zur Bildung des Quotienten erforderlich war. Die
Divisionszeit für Operanden mit einfacher Wortlänge wächst von 12 Taktzeiten bis zu 16 Taktzeiten bei
der Erstellung eines Rests. Der Divisionslogarithmus erfordert, daß der Divisor normalisiert wird, nämlich
■20 bei Festkommaarithmetik bitweise oder bei Gleitkommaarithmetik
hinsichtlich der rückstelligen Hexadezimalziffer mit Ausnahme von Null.
Die Ausgabeeinheiten 310, 338 dienen der Sammlung der Ausgangsdaten aus allen Funktionseinheiten
sowie der Ausführung einfacher Datenverschiebungen, Boolescher Beziehungen usw., zu deren Durchführungen
eine Taktzeit im Rechenwerk 101 benötigt wird.
Die Speichermöglichkeit in jeder Funktionseinheit des Rechenwerks ermöglicht eine wirksame Trennung
der einzelnen, in den verschiedenen Funktionseinheiten getrennt verarbeiteten Daten. Das Rechenwerk
arbeitet synchronisiert, indem es eine gemeinsame Taktzeit für alle Schaltkreise anwendet. Aus
diesem Grund sind in jeder Funktionseinheit Speicherregister enthalten, wie es beispielsweise durch
das Bezugszeichen 31Oo angegeben ist.
Zu Fig. 9:
Nach einer Beschreibung der Umschaltanordnung an Hand der F i g. 3 und 4 sowie einer Beschreibung
der zentralen Datenverarbettungseinheit 10 an Hand der F i g. 5 bis 8 folgt nun zweckmäßigerweise in
einer Beschreibung der F i g. 9 die Darstellung der Zusammenwirkung zwischen der zentralen Datenverarbeitungseinheit
10. der peripheren Datenverarbeiiungi >einhcii 11 und der Speichersteuereir.heit 18.
Die F i g. 9 und 4 betreffen die Umschaltanordnung, wobei F i g. 4 den in der peripheren Daten-So
Verarbeitungseinheit enthaltenen Teil und F i g. 9 den in der zentralen Datenverarbeitungseinheit enthaltenen
Teil dieser Anordnung zeigen; die Verbindung zwischen diesen beiden Teilen wird über die Kanäle
41,42 und 53 bis 58 hergestellt.
SS In F i g. 9 ist eine Befehlsabrufeinheit 128 dargestellt,
die ein Ausgangsregister 128 a aufweist, das in einer
bevorzugten Ausführung eine Kapazität von 32 Bits hat. Das Register ist in mehrere Abschnitte aufgeteilt;
ein erster Abschnitt 1286 mit einer Kapazität von 8 Bits enthält den Operationscode, ein nächster
Abschnitt 128 r enthält ein Adressenmerkmal von 4 Bits, und ein weiterer Abschnitt 12&d mit 4 Bits
enthält normalerweise Daten zum Betrieb des Rechenwerks 101. mit denen ein Register bestimmt
wird, das nicht zur Umschaltanordnung gehört. Schließlich ist ein weiterer Abschnitt 128ε mit einer
Kapazität von 16 Bits vorgesehen, der em Adressenfeld
enthält.
309 »2/417
25
Bei eine, normen £rationsablauf «„.dnc ^^Hfi sTÄ ^
,ndexeinheit 126«. die ein Auw^1™ F^9 nicht dargestellten) Eingang des Oder-Otters
enthält, einen Schritt im Zeitabiauf Tl bis TAau. B nach ^ Und.Verknupfung mit der Lei- ζ
Bei einigen Operationen wird durch die| Indexeuihe t *ii ,Anrufen« hegt, an einen ein"
U6aZ Ausgangsregister 126/, ein Wortgcbjd«, 5 ttngSS, jnjer ^g ^^^ Eingang anes ;v^
das der Summe aus dem Code im AtachnittlMe Oder-Gatters 213. Zwei Eingänge des Oder-Gatte« von
und aus dem Code im Indexregister 124 eatspncht Ude Ausgängen von Und-Gattern 212, v«J
wobei der Code im Indexregister 124 du n* «gs JJJ verbunden. Das Und-Gatter 212 hat zwei Ein- J
Adressenmerkmal im Abschnitt 128c aufgerufen ^^ über ^ Leitung202 das Si- JJ
wurde. Eine solche Indexoperation entspricht also gange,, während der ZWeite über die heu
der bei Rechnern üblichen Adressenmodifikation mit- gnjl MJ^ j»^ ^^ (pc) em D AuI
dem Ausgangs,jJjrUJJ *- £Β5ϊί £ ^S^ÄK) ^
StWÄl- « -.erbarm der Ausgangsleitung204 des Oder- £
verwendet. . . . sCW Gatters 213 ein Signal erscheint und damit eine Ab-
Sobald im Abidiiuttllift «n d«n agaJSCW ^he der ^Registerl26ii befindlichen Cod.e-
oder dem Signal SCP entsprechender Opj^^g*« P in di| durch den Inhalt des Adressregisters
u„:„. K»oinnt ein hinsichtlich der anderen upe !."O B U__.: .„ c^^r-roiio nvielt wird, muß zu- Wl
;;^^;r^chiedener Oper^-blau.J^ » «« J^^ ^n^n^hl^; 5CH^ oder 5CP »
nächst wird der aus 8 B>te n^fcndi.^.^127™ das Signal »Anrufen« (PC) von Seiten der penpheren J
Abschnitt 128b in den BefchlspufferspeicterlZTfl Datent,erarbeitUngSeinheit vorhanden sein. Nur bei "
übertragen, wonach er ,«. .™™Α"Φ^&%£_ entsprechendem Signalzustand auf den Leitungen «
127 b des Befehlspuffersr^ichers 127a erscheint. An ^7, 45, 58, 55, 53 wird also eine solche Ab- °
schließend wird dieser aus 8 Bits ^stehende Code „ 56, , ^^ ^ gesam ßetneb e
über einen Kanal 200 zur Steuereinheit 127 über P^ ^^ D|tenverarbeitUngseinheit kann auf J
traeen. s Rit<. ^. diese Weise unterbrochen werden; andererseits kann
in der Steuereinheit 127 wird der aus »Bite he ^^ ein,eitender oder vorbereitcnaer ]
stehende Code in einem Decodierer 201 verarbeite^ £ Teikn des Rechners auBcrhalb der
Enthält der Code einen SCW-MM. *™™*™l zc P ntr2!en Datenverarbeitungseinheit 10 aufrecht,-rhal-
iner Leitung 202 und somit an der }£™nf d De Entscheidung hängt von dem im
Enthält der Code einen SCW l zcntr2!en Datenverarbeitungseinheit 10 aufrecht,
an einer Leitung 202 und somit an der }£™nf werden. Diese Entscheidung hängt von dem im
das Signal SCW. Enthält der Code dagegen,einen ^ f 12ge der Befehlsabrufeinhe.t 128
SCPBfhl dann wird an der !Leitung 203 und somit fi^d,j-h- B{hl b b Ab
das Signal SCW. Enthält der Code dageg^ f 12ge der Befehlsabrufeinhe.t 128
.SCP-Befehl. dann wird an der !Leitung 203 und somit befi^d,j-hen- Be{chl ab>
namiich davon, ob im Ab-
an der Leitung 41 das Signal SCP eneup. 28f) der Befehlsabrufeinheit die Codegruppe
Wenn d!e periphere .^^.^S^, „nl für da, Signal 5C)V, das S,gnal5CP oder em and.es
nach F. g. 4 auf der Leitung 41 oder au der U tun, vorhanden ist.
42 em Signal feststellt, dann «>J * nfjh s*™£n_ \n der Leit»ng53 von Fig.4 und 9 Hegt ifcnn
st.mm.en Zeh über die Leitung ^£^>£ ^ das si , ,Fehler<(, wenn ,nnerhalbder ,cnu, en
heil 127 aas S.gnai »«n.u.v... ^; " . Sl , DatenverarbcitunEseinheit 10 ein Ferner Jcm^—■»
der Steuereinheit 127 ermöglicht, ihrerseits ein SHgna. -q Oder-Gatter 220 mn der
auf einer Leitung 204 zum Rechenwerk 101 a über A^n£,sklluI4 53 dar2CS,eHt. das mit einem Im-
tragen. Dieses zuletzt genannte Signal h-t^uch zur , ^ Leitung 221 an die Steuereinheit 127
Folge, daß der im Register »".^Α^"Κί,β und „,it einem «eiteren Eingang an das Rechen^*
enthaltene Code zu einer bestimmen Spechersui anpeschlossen ,st. Ein Fehlersignal kann »ci-
^^.^^ÄSSSKS- spiced* be, „ncm Tberlauf im Rechner 101 er-
Leitung ^w=. wine ,....—.;.-«- -^ . .nsneicher 7eu-j' werden, und auch bei einer unaenniem-r. ν |·^--
werks 101. eine Leitung 207. cl"c"^™;Üiu" eruPIu innerhalb der Steuereinheit 127 kann em ! ,h-
!26r sowie über den Kommumkation.kanal 104 zum g^i^ aufueten pmc j e]mng ni mn 7U em,m
Speicher. .,.,„„ dem 7wi. 50 drit'l-n I-ingang des Ode,-Gatters 220. so daß an
Die abzufeiernde Codierung au _dem Λ 1 . ^ n^h ^^^ Prufkre,se nir hT?cu-
^«V^^^'^^^Sm^ g«nß des Fehiersignals angeschlossen werden tojj-
schrieben, die ^^ »"J^ AdrSSrSsttrs len^ Die Steuereinheit 131 (Fig. 7) steuert die Im-
2β8 r^timntt ist. DCT Inhahd^ Adr^nr^ schahung der zentralen Datenverarbeitungse.nhe.t.
kennzeichnet eine SP^^^i^^-T^fsolcne 55 dk bewirkt, daß der bisherige Inhalt der zentralen
niCht ^!^S^^D^än^S ΪΓ2^ Daienverarbeitung^nhei, abgespeichert und neue
£S?FeS3SSLi-iSS^diSd-« er- Daten in diese dafür ^gegeben werden.
St STTSS AcLse aus f-^«^ Zu Fig. 10:
208 W1Id durch AW^ teJg^JW-jer der ^ Ausführungen zur penpheren
Steuerung eines an der Leitung 2t4 anliegenden μ ^^icrailieitmigSnhdt 11 läßt sich entnehmen,
r?als ausgegeben Ldtuncen 2t2 daß diese Einheit eine bedeutende Rone bei der Steu-
lnderSteuererahettlWfarenAeL^gn ^^^ ^^,^,,^hen 1«
211. an dessen Abgasleitung ^fA^^mo^ 6j. £ &Γ ^ „, ^r3115 ^0 Anfordenagen der zentralen
Datenverarbeitungsemheit It and anderer
.. μ. j n^.u.-..«-. —« Wirtin tn/telll Cffl
«rs
Pt
ds
der
der
eilen Datenverarbeitungseinheiten in der peripheren Jatenverarbeitungseinheit 11 angewendet wird. In
3er peripheren Datenverarbeitungseinheit 11 sollen von einer Gruppe von virtuellen Datenverarbeitungs-Einheiten
Programme verarbeitet werden. Bei stark variierenden Programmen wird vorteilhafterweise
von einer fest zugeordneten Zeitteilung zwischen den virtuellen Datenverarbeitungseinheiten abgegangen.
In der in Fig. 10 dargestellten Anordnung ist es möglich, einigen virtuellen Datenverarbeitungsein-
^heiten wesentlich mehr Zeit zuzuteilen als anderen. I Außerdem kann die Zeitzuteilung zwischen den virftuellen
Datenverarbeitungseinheiten verändert werden. i Aus Fig. 10 ist zu erkennen, daß die virtuellen
j Datenverarbeitungseinheiten P0 bis P7 der peripheren
Datenverarbeitungseinheit 11 von einem Rechenwerk 400 der peripheren Datenverarbeitungseinheit 11 versorgt werden.
Das Prinzip der Zeitteilung, bei dem ein Rechenwerk
mit virtuellen Datenverarbeitungseinheiten zusammenarbeitet, wird als bekannt vorausgesetzt. Die
hier beschriebene Anordnung ermöglicht jedoch eine höchst flexible Zuordnung der am Zeitteilbetrieb beteiligten
Elemente sowie eine besondere Steuerung der Zeitteilung. Die virtuellen DatenverarbeitungseinheitenP,
bis P7 können so aufgebaut sein, wie beispielsweise in der USA.-Patentschrift 3 337 854
beschrieben ist, in der den virtuellen Datenverarbeitungseinheiten feste Zeitspannen zyklisch zugeordnet
sind. Mit der hier beschriebenen Anordnung wird dagegen ermöglicht, die zeitlichen Zuordnungen in Abhängigkeit
von den vorzugsweise von Programmen gestellten Aufgaben steuerbar zu machen.
Von den acht virtuellen Datenverarbeitungseinheiten P,, bis P7 der peripheren Datenverarbeitungseinheit U (Fig. 10) kann während einer Taktzeit
nur jeweils eine virtuelle Datenverarbeitungseinheit über das Rechenwerk 400 verfügen: das bedeutet,
daß während einer Taktzeit jeweils nur eine virtuelle Datenverarbeitungseinheit mit dem Rechenwerk 400
verbunden ist. Die Auswahl unter den virtuellen Datenverarbeitungseinheiten trifft eine Schrittschak-
\omchtung401. die in Fig. 10 durch einen rotierenden
Zeiger dargestellt ist. Mit jedem Taktimpuls wird der Zeiger um eine Stellung weiterbewegt, wobei
jede Stellung eine Verarbcitungvzcii>pannc vor.
der Länge eines Taktimpulses darstellt. Insgesamt 16 verschiedene Stellungen des Zeigers bezeichnen Zeitspannen
0 bis 15. Das Rechenwerk 400 wird dabei
jeweils mit derjenigen virtuellen Daienxciaibeuungseinhert
verbunden, die durch die Codegruppe ',beispielsweise
0 bis 7) bestimmt ist. die vom Zeiger abgetastet wird. In emem Extremfall wird während der
Dauer des gesamten Zyklus nur eine bestimmte virtuelle Datenverarbeitungseinheit mit dem Rechenwerk
4M unter Ausschluß aller übrigen virtuellen Dateoverarbeirnngseinheiten verbunden, während im
anderen Extrefll alle virtuellen Datenverarbeitungsemneiten for die Dauer gleicher Zeitabschnitte
mit dem Rechenwerk 4#t verbunden sind. Die Anordnung,
die diese Vielseitigkeit der Zuordnung ermöglicht, ist in den Fig. 11 bis 13 fan einzelnen genau
dargestellt.
Za Fig. 11:
Der Aufbau der peripheren Datenverarbeitungseinheit 11 ist aus Fig. 11 zn erkennen. Der Zentral-
P0 bis
speicher mit den Speichern 12 bis 15 ist mit seiner Speichersteuereinheit 18 verbunden, die ihrerseits
über den Kanal 32 mit der peripheren Datenverarbeitungseinheit 11 verbunden ist. Die virtuellen
Datenverarbeitungseinheiten P0 bis P7 sind über einen
Ausgangskanal 402 sowie über einen Eingangskanal 403 mit dem Rechenwerk 400 verbunden. Überdies
sind sie über Kanäle 410 bis 417 mit einem Kommunikationskanal 408 verbunden. Eine Puffereinheit 419
ίο der peripheren Datenverarbeitungseinheit 411 enthält
acht einzelne Ein-Wort-Pufferregister 420 bis 427; jeweils eines dieser Pufferregister ist dabei einer der
virtuellen Datenverarbeitungseinheiten P11 bis P7 zugeordnet.
Die virtuellen Datenverarbeitungseinheiten P, sind mit einer Zuordnungssteuerung 418
versehen, die ein Teil der in Fig. 10 schematisch als
Zeiger dargestellten SchriUschaltvorrichtung401 darstellt. Die Zuordnungssteuerung 418 wird mit Hilfe
von Taktimpulsen betrieben. Die Puffereinheit 419
»ο wird von einer Puffersteuereinheit 428 gesteuert. Der
Kanal 408 ist über einen Kanal 429 mit dem Rechenwerk 400 verbunden. Die virtuellen Datenverarbeitungseinheiten
P0 bis P7 sind ferner mit einem als
Festwertspeicher ausgebildeten Speicher 430 ausge-
*5 stattet. In einer bevorzugten Ausführung besteht der
Speicher 430 aus einem fest verdrahteten Diodenfeld für schnellen Zugriff.
Eine Speicheranordnung 431 dient der Datenübertragung zwischen dem Kommunikationskanal 408.
den Peripheriegeräten und weiteren Steuer- und Datenkanälen. Bei dem hier beschriebenen Ausführungsbeispitl
enthält die Steueranordnung 431 insgesamt 64 Register.
Die an dem Zeitteilbetrieb beteiligten Einheiten sind das Rechenwerk 400, der Speicher 430, die
Speicheranordnung 431 mit den Registern CR0 bis
CR1 . . . und die Puffereinheit 419 mit den Ein-Wort-Pufferregistern
420 bis 427. wobei die Puffereinheit 419 die Verbindung zwischen der peripheren Daten-Verarbeitungseinheit
11 und dem Zentralspeicher herstellt.
Dei i>pUcher430 enthält einen bestimmten Programmvorrat,
der mit Ausnahme eines Zugriffs \on den Proaramm/ahlern der \irtuellen Datenverarbeitungseinheiten
nicht zugänglich ist. Der Programmvorrat enthält ein Grundausführungsprogranim und
wenigstens ein Sieuerprogramm für jedes Peripheriegerät.
da1· an den Rechner angeschlossen ist. Die
ZNkluszeit des Speichers 430 beträgt 20Nanosckunden.
und er liefert einen Befehlsvorrat aus 32-Bit-Befehlen fur die virtuellen Daien\erarbeitunt:seinheiten
Pn bis P7. Die Kapazität des Speichers 430 beträgt
für die Programme 1024 Wörter. Er ist in
256 Wortbaucnheiten unterteilt, so daß es möglich
ist. Programmabschnitte abzuändern, ohne den gesamten Speicher neu autzubauen.
Die Steuerprogramme für die Peripheriegeräte enthalten
Steuerfunktionen für die zu den Peripherkgeräten gehörenden Pufferspeicher sowie Datenübertragungsfunktionen
Auf diese Weise können mechanische Bewegungsabläufe in den Peripheriegeräten direkt durch Programme gesteuert werden, und es
wird eine jeweils speziell für jedes Peripheriegerät eigens durchgeführte andere Festverdrahtuij ·νηο-tigt.
Durch das Arbeitsprogramm können Parameter zur Variation eines Grundprogramms vot gesehen
werden. Solche Parameter sind im Zentralspeicher oder in Akkumulatorregistern der virtuellen Daten-
Verarbeitungseinheit, die das Programm ausführt, enthalten.
Die Befehle für die virtuellen Datenverarbeitungseinheiten können entweder aus dem Speicher 430
oder aus dem Zentralspeicher stammen. Der vom Programmzähler einer virtuellen Datenverarbeitungseinheit adressierte Speicher wird durch die Adressierungsart
gesteuert, die durch Verzweigungsbefehle oder durch Löschung des Systems modifiziert werden
kann. Jede virtuelle Datenverarbeitungseinheit wird in den Festwertspeicherbetrieb versetzt, wenn das
System gelöscht wird.
Wenn vom Zentralspeicher eine Programmfolge erhalten wird, dann wird diese von der Puffereinheit
419 aufgenommen. Da diese Puffereinheit derselbe Zwischenspeicher ist, der für Datentransporte zu und
vom Zentralspeicher benutzt wird, und da der Zentralspeicher größere Zugriffszeiten als der Festwertspeicher
hat, werden also die Verarbeitungszeiten günstiger, wenn das Programm vom Speicher 430 erhalten
wird.
Ein Zeitabschnitt 0 kann einer der acht virtuellen Datenverarbeitungseinheiten durch einen Schalter auf
dem Bedienungspult zugeordnet werden. Diese Zuordnung kann durch das Programm nicht kontrolliert
werden. Die restlichen Zeitabschnitte sind anfänglich nicht zugeordnet. Deshalb arbeitet am Anfang nur
die virtuelle Datenverarbeitungseinheit, die durch den Schalter bestimmt wird. Da die Programmzähler aller
virtuellen Datenverarbeitungseinheiten P0 bis P. ursprünglich
auf 0 stehen, beginnt die ausgewählte virtuelle Datenverarbeitungseinheit mit der Ausführung
ihres Programms, beginnend mit der Adresse Π im Speicher 430. An dieser Adresse befindet sich ein
Einleitungsprogramm. Der Schalter auf dem Bedie nungspult bestimmt ebenfalls, welches der 8 Bits der
Speicheranordnung 431 durch ein von der Bedienungsperson ausgelöstes Einleitungssignal gesetzt
wird.
Die Puffereinheit 419 ermöglicht den Zugriff der
virtuellen Datenverarbeitungseinheiten auf den Zentralspeicher mit den Speichern 12 bis 15. Die Puffereinheit
419 besteht aus acht 32-Bit-Datenregistern, acht 24-Bit-Adressenregistern und entsprechenden
Steuerkreisen. Von einer einzelnen virtuellen Datenverarbeitungseinheit aus gesehen erscheint die Pufftreinheit419
lediglich als ein einzelnes Datenregister und ein einzelnes Adressenregister.
Die Puffereinheit 419 kann gleichzeitig bis zu acht Speicheranfragen enthalten, nämlich eine Speicheranfrage
von jeder virtuellen Datenverarbeitungseinheit. Die Anfragen werden vorzugsweise so verarbeitet,
daß eine feste Prioritätssteuerung und eine Prioritätssteuerung, bei der zuerst ankommende
Anfragen zuerst behandelt werden, kombiniert werden. Vorzugsweise werden vier Prioritätsebenen
festgelegt. Werden zwei oder mehr Anfragen aus derselben Prioritätsebene gestellt, dann werden sie
in der Reihenfolge bearbeitet, in der sie zeitlich erscheinen.
Wenn eine Anfrage zur Puffereinheit 419 gelangt, so besitzt sie automatisch eine Prioritätszuordnung,
die durch den Zentralspeicher bestimmt ist; die Prioritätszuordnungen sind in einem Register der
Speicheranordnung 431 festgehalten. Die Prioritäten sind entsprechend der Nummer der jeweiligen virtuellen
Datenverarbeitungseinheit angeordnet; alle Anfragen von Seiten einer bestimmten virtuellen
Datenverarbeitungseinheit erhalten die Prioritäts- an Zuordnung, die in 2 Bits des entsprechenden Registers eii
in der Speicheranordnung 431 verschlüsselt ist. Der tv
Inhalt dieses Registers wird durch das Ausführungs- G programm bestimmt; die Prioritätszuordnung für jede A
virtuelle Datenverarbeitungseinheit wird vom auszu- gi
führenden Programm bestimmt. Zusätzlich zu diesen ai 2 Prioritäts-Bits kann eine Zeitkennung mitverwen- 4!
det werden, damit die Fälle gleicher Prioritätszuord-
nung gelöst werden können. z\
Die Register in der Speicheranordnung 431 ent- E
halten jeweils 32 Bits. Jedes Register kann von der g'
virtuellen Datenverarbeitungseinheit adressiert wer- Έ
den, und die Einheit, mit der es verbunden ist, kann ti
aus dem Register lesen oder in das Register schreiben. Die Register der Speicheranordnung 431 sind ii
Verbindungsglieder zu allen Peripheriegeräten ein- ti
schließlich des Bedienungspults. Einige Parameter F zur Steuerung des Rechnerbetriebs werden ebenfalls a
ao in den Registern der Speicheranordnung 431 ge- e speichert, vor. denen aus die Steuerung erfolgt. e
Zu Fig. 12:
as In der Speicheranordnung 431 sind vorzugsweise
als Flip-Flop-Schaltungen ausgeführte Speicherelemente enthalten, die nach Fig. 12 zwei Eingänge
aufweisen. Ein Eingang ist mit der peripheren Datenverarbeitungseinheit 11 verbunden, während der
andere Eingang einem Peripheriegerät zur Verfugung steht. Von der peripheren Datenverarbeitungseinheil
kommende Daten werden synchron mit dem Taktimpuls des Rechners in das Speicherelement eingegeben.
Eine Eingabe von Daten in das Speicher-
element von einem Peripheriegerät kann durch Zwischenschaltungsanordnungen zwischen dem Peripheriegerät
und dem Speicherelement erfolgen; die Eingabe muß nicht notwendigerweise synchron mit
dem Rechnertakt erfolgen.
Zu Fig. 13:
In Fig. 13 ist eine Anordnung dargestellt, mit deren Hilfe die verfügbare Zeit einer oder mehrerer
der virtuellen Datenverarbeitungseinheiten P0 bis P7
so zugeordnet werden kann, daß diese Datenverarbeitungseinheiten
den anderen vorgezogen werden oder umgekehrt so zugeordnet werden kann, daß die Zeit
auf alle virtuellen Datenverarbeitungseinheiten gleichmäßig aufgeteilt wird.
Die Steuerung der Verteilung der Zeitzuordnung für die einzelnen virtuellen Datenverarbeitungseinheiten
P0 bis P7 erfolgt mit Hilfe von zwei Speichersegmenten
431 η und 431m aus der Speicheranordnung 431.
Diese von Registern gebildeten Speichersegmente haben jeweils eine Kapazität von 32 Bits; sie sind
in acht Abschnitte zu je 4 Bits unterteilt. So enthält beispielsweise ein Abschnitt 440 des Speichersegments
431 η 4 Bits α bis d, die jeweils an die Eingänge von
Uncl-Gattern 441 bis 444 angelegt sind. Ein Abschnitt
445 desselben Speichersegments enthält ebenfalls 4 Bits α bis d, die an die Eingänge von Und-Gattern
446 bis 449 angelegt sind. Das erste Und-Gatter am Ausgang jedes Abschnitts, an das das
Bit α angelegt ist, beispielsweise die Und-Gatter 441, 446 ist an den Eingang eines Oder-Gatters 450 angeschlossen.
In entsprechender Weise sind alle Und-Gatter 442, 447 ..., an die die Bits b der Abschnitte
ts_ ingelegt sind, mit dem Ausgang an den Eingängen
;rs:ines Oder-Gatters 441 angeschlossen. Ebenso ist
lernn Oder-Gatter 452 an die Ausgänge der Und-
;S_Gatter 443, 448 angeschlossen, an die die Bits c der
jeAbschnitte angelegt sind. Schließlich sind die Ausu.
gange der Und-Gatter 444, 449 .... an die die Bits d
;n angelegt sind, mit den Eingängen eines Oder-Gatters
ν 453 verbunden.
\. Die Ausgänge der Oder-Gatter 450 bis 453 führen
\. Die Ausgänge der Oder-Gatter 450 bis 453 führen
zu einem Register 454, dessen Ausgang mit einem t- [Decodierer 455 verbunden ist. Acht Ausgangsleitun-
:r gen 463 bis 470 des Decodierers steuern jeweils die
·. "Ein- und Ausgänge der virtuellen Datenverarbei-„
itungseinheit P0 bis P7.
- I Die Zuordnungssteuerung 418 empfängt Taktj
jimpulse von einem Taktgeber460a über eine Leistung
460. Sie arbeitet vorzugsweise als 16-stufiger r {Ringzähler, bei dem jede Stufe eine Ausgangsleitung
; \ aufweist. Die erste Ausgangsleitung 461 aus der
t ersten Stufe des Ringzählers führt zum zweiten Einj gang der Und-Gatter 441 his 444 In gleicher Weise
! ist die zweite Ausgangsleitung 462 der zweiten Stufe j des Ringzählers mit den zweiten Eingangen der
j Und-Gatter 446 bis 449 verbunden. Die restlichen vierzehn Ausgangsleitungen der Zuordnungssteuerung
418 sind in entsprechender Weise mit jeweils vier weiteren Und-Gattern verbunden.
j 3 der 4 Bits des Abschnitts 440, nämlich die Bits b. j c und d. kennzeichnen eine der \irtuellen Datcn-Verarbeitungseinheiten
P0 bis P. durch ein entsprechendes Signal auf einer der Ausgangsleitungen des
Decodierers 455. Das vierte Bit. nämlich das Bit a des Abschnitts 440, dient zur Freigabe bzw. zur
Sperrung der Decodierung, so daß ein bestimmter j Zeitabschnitt frei, d. h. unbezogen bleiben kann.
j Es ist zu erkennen, daß das Rechenwerk 400 über j Kanäle 470 mit den Speichersegmenten. 431 m und
j 431 η verbunden ist, so daß das Rechenwerk proj grammgesteuert die gewünschten Zuordnungen in
ι den Speichersegmenten 431 m und 431 η durch- ,.. j führen kann. Entsprechend den Taktimpulsen auf
ι der Leitung 460 kann also der Decodierer 455 mit jedem Taktimpuls von einer virtuellen Datenverarbeitungseinheit
zur nächsten umschalten. Entsprechend dem Inhalt der Speichersegmente 431 m und 431 η
kann die gesamte Zeit einer der virtuellen Datenverarbeitungseinheiten zur Verfugung gestellt werden,
oder die Zeit kann je nach der in den Speichersegmenten 431m und 431 π enthaltenen Codierung
gleichmäßig oder auch ungleichmäßig den virtuellen ,<>
Datenverarbeitungseinheiten zugeteilt werden.
Aus der Betrachtung der Steuerleitungen am Ausgang des Decodierers 455 ist zu erkennen, daß die
zwischen den Speichersegmenten 431 m, 431 η liegenden Schaltkreise bitmäßig, also einzeln für jede
Informationseinheit dargestellt wurden. Im Gegensatz dazu ist die zwischen dem Decodierer 455 und dem
Rechenwerk 400 liegende Schaltung zur Steuerung der virtuellen Datenverarbeitungseinheiten nur in
Form von Blockschaltbildern dargestellt.
Ein Datenfluß auf der Leitung 478 kann durch entsprechende Signale auf den Ausgangsleitungen
463 bis 470 freigegeben oder verhindert werden. Im einzelnen führt die Ausgangslcitung 463 zu einer
Koinzidenzschaltung 490, an die auch die Leitung 478 angeschlossen ist. Eine Koinzidenzschaltung
ist mit der Ausgangsleitung der virtuellen Datenverarbeitungseinheit
P0 und mit der Ausgangsleitung verbunden. In gleicher Weise steuern Koinzidenzschaltungen
491 bis 497 und 501 bis 507 die übrigen virtuellen Datenverarbeitungseinheiten. Die
Koinzidenzschaltungen 500 bis 507 speisen eine Oder-Schaltung 508, deren Ausgang unmittelbar
mit dem Rechenwerk 400 verbunden ist. Auf diese Weise arbeit« gleichzeitig jeweils nur eine der virtuellen
Datenverarbeitungseinheiten P0 bis P7, und die
Zuteilung der Zeit zu einer bestimmten virtuellen Datenverarbeitungseinheit erfolgt durch den Inhalt
der Abschnitte 440, 445 ... entsprechend der Taktsteuerung durch die Zuordnungssteuerung 418.
Ablauf der Umschaltoperation FF73: (»Laden« zur Zeit der Setzimpulse für FF71
und/oder FF 72)
Setzen FF 73 = (Tastimpuls), wobei (Tastimpuls) = verzögertes SCP-, SCW- oder
»Fehler«-Signal ist.
Rücksetzen FF 73 = l· l· 73 · 777T · FF 72.
FF71: (»Anruf«, gesetzt durch SCP + SCW zur Anzeige der speziellen Programmsituation
für die zentrale Datenverarbeitungseinheit): Setzen FF71 = FF73 · FFIl ■ FTIl ■ c'. wobei
c' = SCP + SCW.
Rücksetzen FF 71 von Seiten der peripheren Datenverarbeitungseinheit am Ende der
Operation.
FF72: (»Schaltanforderung«, gesetzt durch SCW^
»Fehler« zur Anzeige der speziellen Programmsituation der zentralen Datenverarbeitungseinheit):
Setzen FF72 = FF73 · (FFTI ■ FTTl ■ s';
wobeis' = SGW -f »Fehler«.
Rücksetzen FF 72 von Seiten der peripheren Datenverarbeitungseinheit am Ende der
Operation.
FF77: (»Anruf«-Kennzeichen):
FF77: (»Anruf«-Kennzeichen):
Setzen FF77 von Seiten der peripheren Datenverarbeitungseinheit
zur Anzeige für die zentrale Datenverarbeitungseinheit, daß eine Anrufoperation durchzuführen ist.
Rücksetzen FF77 von Seiten der peripheren Datenverarbeitungscinheit zur Anzeige für
die zentrale Datenverarbeitungseinheit, daß eine Anrufoperation nicht durchzuführen ist.
FF44: (»Umschalu-Kennzeichen):
Setzen FF 44 von Seiten der peripheren Datenverarbeitungseinheit
zur Anzeige für die zentrale Datenverarbeitungseinheit, daß eine Umschaltoperation durchzuführen ist.
Rücksetzen FF 44 von Seiten der peripheren Datenverarbeitungseinheit zur Anzeige für
die zentrale Datenverarbeitungseinheit, daß eine Umschaltoperation nicht durchzuführen
ist.
FFlS: (»Betriebserlaubnis«):
FFlS: (»Betriebserlaubnis«):
Setzen FF 75 von Seiten der peripheren Datenverarbeitungseinheit,
wenn ein Betrieb der zentralen Datenverarbeitungseinheit erwünscht ist.
Rücksetzen FF 75 = TFTJ ■ FF 71 + TTM ■
FF72; d.h.: bei {FFH,TFM)■ {SCP,SCW,
Fehler), also bei fehlendem Kennzeichen von Seiten der peripheren Datenverarbeitungseinheit und bei Aufkommen einer entspre-
309 532/417
chenden Anfrage von Seiten der zentralen Datenverarbeitungseinheit wird diese inaktiv
und abwartend.
FFSO: (»Anrufen« befiehlt den Beginn der Anrufoperation auf Seiten der zentralen Datenverarbeitungseinheit):
Setzen FF80 = FF77 · FFIl. Rücksetzen FF 80 von Seilen der peripheren Datenverarbeitungseinheit nach Rückstellung von FF71 und FF 72. »*>
Setzen FF80 = FF77 · FFIl. Rücksetzen FF 80 von Seilen der peripheren Datenverarbeitungseinheit nach Rückstellung von FF71 und FF 72. »*>
FF71: (»Umschalten« befiehlt der, Beginn der Umschaltoperation
von Seiten der zentralen Datenverarbeitungseinheit):
Setzen FF71 = FF44 · FF72. Rücksetzen FF 71 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstellung von FF 71 und FF 72.
Setzen FF71 = FF44 · FF72. Rücksetzen FF 71 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstellung von FF 71 und FF 72.
FF 74:
FF 78:
(»Anruf ausgeführt« zur Rückmeldung die periphere Datenverarbeitungseinheit)·
Setzen FF 74 = CCC.
Rücksetzen FF 74 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstelluno von FF 71 und FF 72. ^
Rücksetzen FF 74 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstelluno von FF 71 und FF 72. ^
(»Umschaltung ausgeführt« zur Rückmeldung an die periphere Datenverarbeitungs.
einheit):
Setzen FF 78 = PSC ■ MSC; wobei PSC die
Rückmeldung »Umschaltung ausgeführt» von der zentralen Datenverarbeitungseinheit
und MSC die Rückmeldung »Umschaltung ausgeführt« von der Speichersteuereinheit ist
ausgeführt« von der Speichersteuereinheit is Rücksetzen FF 78 von Seiten der periphere
Datenverarbeitungseinheit nach Rückstellun von FF71 und FF72
Dateng
von FF71 und FF72.
von FF71 und FF72.
Zeit
I
I
II
III
III
Tabelle II 77 44 80 71 75 73 74 78 71 72 77 44 80 71 75 73 74 78 71 72 77 44 80 71 75 73 74 78 71 72
Ί,
1100100000 1100110000 1100110001 1101100001
1101100101
1100100000
1100110000
1100110000
llOOiOOOlO
1110100010
1110101010
1110101010
110 0 10 0 0 0 0
1100110000
1100100011
1111100011 1111101011 1111101111
Neubeginn der peripheren Datenverarbeitungseinheit
»Fehler« -* 5->
»Umschalten« »SCP& -v C ->
»Anrufen«
Ablaufdiagramm zur Umschaltanordnung am Beispiel:
Automalische Umschaltung und Anmfverarbeitung bei
fortwährend betriebener zentraler Datenverarbeitungseinheit.
Bedeutung der Zeiten I bis VI:
warten auf eine Anfrage »SCP«, *SCW* oder »Fehler*
von der zentralen Datenverarbeitungseinheit, »SC W« -► C sowie S -^
»Anrufen« sowie »Umschalten« II Tastimpuls,
III Beschicken von FF71 und/oder FFIl,
IV Beginn der Operation auf Seiten der peripheren Datenverarbeitungseinheit,
V »Anruf ausgeführt«,
VI »Umschaltung ausgeführt«.
VI »Umschaltung ausgeführt«.
Zeit
I
Il
III
I
Il
III
Tabelle III 77 44 80 71 75 73 74 78 71 72 77 44 80 71 75 73 74 78 71 72 77 44 80 71 75 73 74 78 71 72
1000100000 1000110000 10 0 0 10 0 0 0 1
lOOlOOOOOl 10 0 10 0 0 10 1
1000100000
0 0 110 0 0 0
0 0 10 0 0 10
0 0 110 0 0 0
0 0 10 0 0 10
10 10 0 0 10
1010101010
1010101010
1000100000 1000110000 10 0 0 10 0 0 11
10 110 0 0 0 11
10 110 0 10 11
10 110 0 1111
Neubeginn der peripheren Datenverarbeitungseinheit Y
»Fehler« ·
»Umschalten« »SCP« »Anrufen«
»SCR« -»■ C sowie S -y
»Anrufen« sowie »Umschalten«
Ablaiifdiagramm zur Umschaltanordnung am Beispiel:
Automatische Anrufverarbeitung; verhinderte automatische Umschaltung, indem die zentrale Datenverarbeitungseinheit
nur so lange betrieben wird, bis von Seiten der zentralen Datenverarbeitungseinheit auf Umschaltung
angefragt wird.
Bedeutung der Spalten und Zeilen wie Tabelle II. Bemerkung zu ».-)«:
Die periphere Datenverarbeitungseinheit leitet eine (Pseudo)Umschaltung ein, indem FF79 auf »Ein« gesetzt
wird.
Bemerkung zu »ß«:
Zwar wird hier FF 80 auf die übliche Art gesetzt, wodurch eine automatische Anrufverarbeitung in Gang
kommt; die periphere Datenverarbeitungseinheit leitet aber infolge FF44 eine (Pseudo)Umschaltung ein, indem
das FF19 auf »Ein« gesetzt wird.
Tabelle IV Parameter-Datei 132
SA Speicherstartadresse zum Auslesen des Vektors A
SB Speicherstartadresse zum Auslesen des Vektors B
SC Speicherstartadresse zum Einschreiben des Vektors C
NY Anzahl der Elemente
in einer fundamentalen Vektoroperation NI Anzahl der Durchlaufe
in der inneren Schleife N Φ Anzahl der Durchläufe in der äußeren Schleife
ΔI Adresseninkrement für die innere Schleife
N Φ Adresseninkrement für die äußere Schleife
Arbeits-Datei 133
AA Arbeitsadresse (laufende Adresse)
für Vektor A
BB Arbeitsadresse (laufende Adresse) für Vektor B
CC Arbeitsadresse (laufende Adresse) für Vektor C
VC laufende Zählung der Vektorkomponenten IC laufende Zählung der Innenschleifen
Φ C laufende Zählung der Außenschleifen
CO
Speicherplatzbelegung zur Durchführung einer Multiplikation zweier Determinanten dritten Grades
5 | Spcicherstelle für | 1 | «11 | Speicherstelle | *.. | Speicherstelle | cu |
Determinante A | 2 | «12 | für Determinante B | 6« | für Determinante C | C12 | |
k | 3 | «13 | I | fts. | m | C13 | |
10 | 4 | «21 | Z-i | m+ 1 | C21 | ||
k + | 5 | «22 | b2-2 | »3 + 2 | ci2 | ||
k + | 6 | «23 | - 1 | b3i | m + 3 | C23 | |
k + | 7 | «31 | Z + 2 | b13 | m + 4 | C31 | |
15 | k + | 8 | «32 | Z- | b23 | m + 5 | C32 |
k + | «33 | Z- | b33 | m + 6 | |||
k + | Z- | m+1 | |||||
20 | k + | Z- | m + 8 | ||||
Z- | |||||||
I - | |||||||
-3 | |||||||
-4 | |||||||
i-5 | |||||||
-6 | |||||||
r7 | |||||||
-8 |
Die Detreminante A ist reihenmäßig auf die Speicherstellen
t bis k + 8 verteilt;
die Determinante B ist spaltenmäßig auf die Speichersiellen
/ bis / + 8 verteilt;
die Determinante C ist reihenmäßig auf die Speicherstellen m bis m + 8 verteilt.
Zu Beginn der Multiplikation wird:
SA = k NV = 3 ΔΙ = 1
SB = Z NI = 3 . J Φ = 3
5C = w ΝΦ = 3
Adressen- und Steuerungsablauf für die Determinante A zur Durchführung der Multiplikation
gemäß Tabelle V
Schritt | NI- | SA-* | Operation | NV- | Φ C | - X-* | VC | VC | /C | <PC | A Adresse |
1 | AA | - X-y | AA | ΝΦ- | - I -* | ΦC | 2 | 2 | 2 | A: | |
VC | + X-* | IC | |||||||||
2 | AA | -X-* | AA | 1 | 2 | 2 | k+X | ||||
VC | + X-* | VC | |||||||||
3 | - X-* | AA | O | 2 | 2 | k + 2 | |||||
IC | SA-* | VC | NV | -X-* | VC | ||||||
4 | AA | - X-* | AA | 2 | 1 | 2 | k | ||||
VC | + X-* | IC | |||||||||
5 | AA | - X-* | AA | 1 | 1 | 2 | k + X | ||||
VC | + X-y | VC | |||||||||
6 | - 1-H. | AA | O | 1 | 2 | k + 2 | |||||
IC | SA-* | VC | NV | 1 —>■ | VC | ||||||
7 | AA | -X-* | AA | 2 | O | 2 | k | ||||
VC | + X-* | IC | |||||||||
8 | AA | - X-* | AA | 1 | O | 2 | k+X | ||||
VC | + 1 -» | VC | |||||||||
9 | SA + | - l-> | AA |
r\
KJ |
O | 2 | k + 2 | ||||
NI | Λ Φ -. | VC | -AA,SA NV | - 1-* | VC | ||||||
10 | AA | - 1-, | ■ IC | - 1 --, | . Φ C | 2 | 2 | 1 | k + 3 | ||
VC | + 1 -. | .AA | |||||||||
11 | -VC | 1 | 2 | 1 | k+4 | ||||||
AA
VC |
37 | Operation | NV | NV | 1 934 | 365 | VC' | IC | 38 | 4>C | A Adresse | j | I | t ! |
Jt + 5 | |
IC |
AA
VC |
0 | 2 | I | k + 5 | * + 6 j | ||||||||||
AA
VC |
AA
IC |
(Tabelle VI Fortsetzung) | 2 | 1 | 1 | Jt+ 3 | Jfc + 7 j | |||||||||
Schritt |
AA
VC |
+ 1 -v | VC | NV | NV | 1 | 1 | 1 | k + 4 | k + 8 | ||||||
12 | IC | SA-+ - 1 — |
AA
VC |
0 | 1 | 1 | k + 5 | A-+ 6 | ||||||||
13 |
AA
VC |
4-1-* |
AA
IC |
- 1-+ VC | j | 0 | 1 | k + 3 | Jt+ 7 | |||||||
14 |
AA
VC |
+ 1-+ - 1-v |
AA
VC |
AA,SA NV
IC ΦC |
1 | 0 | 1 | Jt+4 | k + 8 | |||||||
15 |
SA +
Nl |
SA-+ |
AA
VC |
AA
VC |
0 | 0 | 1 | k -t- 6 | ||||||||
16 |
AA
VC |
+ 1 -+ - 1~- |
AA
VC |
-X^. VC | 2 | 2 | 0 | Jt + 7 | ||||||||
17 |
AA
VC |
+ 1-v - 1-* |
AA
IC |
1 | 2 | 0 | A- + 8 | |||||||||
18 | IC | ,1 Φ -+ - I-+ |
AA
VC |
0 | 2 | 0 | ||||||||||
19 |
AA
VC |
+ I-+ 1 ^ |
AA
VC |
-1-+VC - 1 -+ <PC |
2 | 1 | 0 | |||||||||
20 |
AA
VC |
+ 1 -* J __ |
AA
IC |
1 | 1 | 0 | ||||||||||
21 | IC | SA — - l-~ |
AA
VC |
0 | 1 | 0 | ||||||||||
22 |
AA
VC |
+ 1 — - 1 -v |
AA
VC |
- 1 — VC | 2 | 0 | 0 | |||||||||
23 |
AA
VC |
+ I-+ - 1-+ |
1 | 0 | 0 | |||||||||||
24 |
SA-*
I — |
0 | 0 | 0 | ||||||||||||
25 | + 1 — - 1 — |
~-\ — VC | ||||||||||||||
26 | + 1 — J k |
|||||||||||||||
27 | ||||||||||||||||
Tabelle VII Beispiel für Gleitkommaadditionen im Rechenwerk 101
Zeit
Subtraktion des Exponenten ...
Ausrichtung der Mantissen
Addition der Mantissen
Nachnonnalisierung des
Resultats
avbt
Im selben Rechenwerk befinden sich znr Zeh r, vier verschiedene Wortpaare α,, 6 ; ι = 1 -^- 4 in vier
verschiedenen Bearbeitungsstufen!
Hierzu 2 Blatt Zeichnungen
Claims (9)
1. Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage
mit einer zentralen Datenverarbeitungseinheit, einer peripheren
Datenverarbeirungseinheit und einem gemeinsamen Speicher, dadurch gekennzeichnet,
daß die periphere Datenverarbeitungseinheit (11) so ausgebildet Lst, daß sie in Abhängigkeit von dem Stand des in der zentralen
Datenverarbeitungseinheit (10) laufenden Programms die Auswahl des nächsten von der
zentralen Datenverarbeitungsanlage (10) zu verarbeitenden Programms aus dem Speicher (12,
13, 14, 15) steuert und ein Freigabesignal erzeugt, das anzeigt, daß eine Auswahl getroffen
ist, das die zentrale Datenverarbeitungseinheit
(10) der peripheren Datenverarbeitungseinheit
(11) entweder ein erstes Signal (SCP) zuführt, das anzeigt, daß die zentrale Datenverarbeitungseinheit
(10) ohne Programmwechsel weiterarbeiten kann, oder ein zweites Signal (SCW).
das anzeigt, daß ein Programmwechsel erforderlich ist, und daß eine Schaltung (43, 44) vorge- as
sehen ist, die auf das zweite Signal (5CW) und auf das Freigabesignal anspricht und in der zentralen
Datenverarbeitungseinheit (10) die Bearbeitung des nächsten von der peripheren Daten
Verarbeitungseinheit (11) ausgewählten Programms auslöst.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet,
daß mit der zentralen Datenverarbeitungseinheit (10) eine Teilschaltung (18. 33,
55) verbunden ist, die ein Signal (CCC) erzeugt, das die periphere Datenverarbeitungseinheit für
das Ansprechen auf das erste odeT zweite Signal (SCP bzw. SCW) nach einer vorbestimmten Verzögerungszeit
freigibt.
3. Anordnung nach Anspruch 1 oder 2. ge- 4= kennzeichnet durch eine Schaltung (220, 53) zur
Übertragung eines von der zentralen Datenverarbeitungseinheit (10) stammenden Fehlersignals
zu der peripheren Datenverarbeitungseinheit (11). die daraufhin ebenfalls den Programmwechsel
in der zentralen Datenverarbeitungseinheit (10) auslöst.
4. Anordnung nach Anspruch 3, dadurch gekennzeichnet,
daß in der peripheren Datenverarbeitungseinheit (11) mindestens teilweise derselbe
Signalkanal (51) für das zweite Signal (.VCW) und das Fehlersignal vorgesehen ist.
5. Anordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die
zentrale Datenverarbeitungseinheit (10) das
zweite Signal [SCW) als Antwort auf einen Aufruf-
und Wartebefehl erzeugt.
6. Anordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß in der
zentralen Datenverarbeitungseinheit (10) eine 6.>
Anordnung (126) enthalten ist, die in den Speicher (12 bis 15) eine Codegruppc überträgt, die
den Stand des in der zentralen Datenverarbeiuingseinheit
laufenden Programms anzeigt.
7. Anordnung nach Anspruch 6, dadurch gekennzeichnet,
daß in dem Speicher (12 bis 15) ein Speicherplatz zum Speichern der Codegruppc
reserviert ist und daß der reservierte Speicherplatz für die periphere Datenverarbeitungseinheit
zugänglich ist.
8. Anordnung nach Anspruch 5 und nach Anspruch 6 ovier 7, wobei die zentrale Datenverarbeitungseinheit
ein Rechenwerk, ein Befehlsabrufregister zur Übermittlung von Befehlen zu dem Rechenwerk sowie einen Adressengenerator
zur Erzeugung von Steuercodegruppen für die Steuerung des Einspeicherns und Abrufens von
Operanden zwischen dem Speicher und dem Rechenwerk aufweist, dadurch gekennzeichnet,
daß das Befehlsabrufeinheitsregister (128) einen Abschnitt (128 b) aufweist, in dem entweder ein
Aufruf- und Weiterbearbeitungsbefehl gespeichert wird, wenn die zentrale Datenverarbeitungseinheit
(10) ohne Programmwechsel weiterarbeiten kann, oder der Aufruf- und Wartebefehl,
wenn ein Programmwechsel erforderlich ist, daß mit diesem Abschnitt (1286) des Befehlsabrufeinheitsregisters
(128) ein Decodierer (201) verbunden ist, der entweder das erste Signal (SCP)
auf einer ersten Ausgangslcitung (41) erzeugt
wenn in dem Abschnitt (1286) ein Aufruf- und Weiterbearbeitungsbefehl steht, oder das zweite
Signal (SCW) auf einer zweiten Ausgangsleitung (42) erzeugt, wenn in dem Abschnitt (128 b) ein
Aufruf- und Wartebefehl steht, daß ferner eine Schaltung (58, 212, 214) vorgesehen ist, um das
jeweils vorhandene Ausgangssignal zum Rechenwerk (101) zu bringen, wenn der reservierte
Speicherplatz verfügbar ist. und daß schließlich eine von diesem Ausgangssignal gesteuerte Teilschaltung
(45, 60) vorgesehen ist zur Weiterleitung der gerade vorliegenden Steuercodegruppe
als die genannte Codegruppe an Stelle der Operanden in den reservierten Speicherplatz.
9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, daß die zentrale Datenverarbeitungseinheit
ein Adressenregister (208) mit festem Inhalt aufweist, das die Adresse des reservierten
Speicherplatzes beinhaltet, und daß ein von dem Ausgangssignal (SCP, SCW) des
Decodierer:; (201) gesteuertes Gatter (209) zur Weiterleitung der genannten Codegruppe an den
reservierten Speicherplatz vorgesehen ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74357268A | 1968-07-09 | 1968-07-09 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1934365A1 DE1934365A1 (de) | 1970-04-30 |
DE1934365B2 true DE1934365B2 (de) | 1973-08-09 |
DE1934365C3 DE1934365C3 (de) | 1974-03-28 |
Family
ID=24989305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1934365A Expired DE1934365C3 (de) | 1968-07-09 | 1969-07-07 | Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage |
Country Status (10)
Country | Link |
---|---|
US (1) | US3614742A (de) |
JP (1) | JPS505542B1 (de) |
BE (1) | BE735858A (de) |
CA (1) | CA932868A (de) |
DE (1) | DE1934365C3 (de) |
FR (1) | FR2012588A1 (de) |
GB (1) | GB1267384A (de) |
MY (1) | MY7300347A (de) |
NL (1) | NL172008B (de) |
SE (1) | SE364383B (de) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3725864A (en) * | 1971-03-03 | 1973-04-03 | Ibm | Input/output control |
US3896418A (en) * | 1971-08-31 | 1975-07-22 | Texas Instruments Inc | Synchronous multi-processor system utilizing a single external memory unit |
US3902162A (en) * | 1972-11-24 | 1975-08-26 | Honeywell Inf Systems | Data communication system incorporating programmable front end processor having multiple peripheral units |
US4149244A (en) * | 1976-06-07 | 1979-04-10 | Amdahl Corporation | Data processing system including a program-executing secondary system controlling a program-executing primary system |
US4305124A (en) * | 1978-06-09 | 1981-12-08 | Ncr Corporation | Pipelined computer |
DE2966601D1 (en) * | 1978-06-09 | 1984-03-08 | Ncr Co | A digital pipelined computer |
US4244019A (en) * | 1978-06-29 | 1981-01-06 | Amdahl Corporation | Data processing system including a program-executing secondary system controlling a program-executing primary system |
US4409653A (en) * | 1978-07-31 | 1983-10-11 | Motorola, Inc. | Method of performing a clear and wait operation with a single instruction |
JPS55112651A (en) * | 1979-02-21 | 1980-08-30 | Fujitsu Ltd | Virtual computer system |
JPS6043535B2 (ja) * | 1979-12-29 | 1985-09-28 | 富士通株式会社 | 情報処理装置 |
US4484274A (en) * | 1982-09-07 | 1984-11-20 | At&T Bell Laboratories | Computer system with improved process switch routine |
US4514846A (en) * | 1982-09-21 | 1985-04-30 | Xerox Corporation | Control fault detection for machine recovery and diagnostics prior to malfunction |
US4475156A (en) * | 1982-09-21 | 1984-10-02 | Xerox Corporation | Virtual machine control |
US4737907A (en) * | 1982-09-21 | 1988-04-12 | Xerox Corporation | Multiprocessor control synchronization and instruction downloading |
US4532584A (en) * | 1982-09-21 | 1985-07-30 | Xerox Corporation | Race control suspension |
US5023779A (en) * | 1982-09-21 | 1991-06-11 | Xerox Corporation | Distributed processing environment fault isolation |
US4870644A (en) * | 1982-09-21 | 1989-09-26 | Xerox Corporation | Control crash diagnostic strategy and RAM display |
US4550382A (en) * | 1982-09-21 | 1985-10-29 | Xerox Corporation | Filtered inputs |
US4698772A (en) * | 1982-09-21 | 1987-10-06 | Xerox Corporation | Reproduction machine with a chain of sorter modules and a method to perform chaining tasks |
US4521847A (en) * | 1982-09-21 | 1985-06-04 | Xerox Corporation | Control system job recovery after a malfunction |
US4689739A (en) * | 1983-03-28 | 1987-08-25 | Xerox Corporation | Method for providing priority interrupts in an electrophotographic machine |
US4589093A (en) * | 1983-03-28 | 1986-05-13 | Xerox Corporation | Timer manager |
US4509851A (en) * | 1983-03-28 | 1985-04-09 | Xerox Corporation | Communication manager |
US4562538A (en) * | 1983-05-16 | 1985-12-31 | At&T Bell Laboratories | Microprocessor having decision pointer to process restore position |
US4574348A (en) * | 1983-06-01 | 1986-03-04 | The Boeing Company | High speed digital signal processor architecture |
US4985848A (en) * | 1987-09-14 | 1991-01-15 | Visual Information Technologies, Inc. | High speed image processing system using separate data processor and address generator |
US5109348A (en) * | 1987-09-14 | 1992-04-28 | Visual Information Technologies, Inc. | High speed image processing computer |
US5146592A (en) * | 1987-09-14 | 1992-09-08 | Visual Information Technologies, Inc. | High speed image processing computer with overlapping windows-div |
US5129060A (en) * | 1987-09-14 | 1992-07-07 | Visual Information Technologies, Inc. | High speed image processing computer |
US5201039A (en) * | 1987-09-30 | 1993-04-06 | Mitsubishi Denki Kabushiki Kaisha | Multiple address-space data processor with addressable register and context switching |
US5159686A (en) * | 1988-02-29 | 1992-10-27 | Convex Computer Corporation | Multi-processor computer system having process-independent communication register addressing |
US5050070A (en) * | 1988-02-29 | 1991-09-17 | Convex Computer Corporation | Multi-processor computer system having self-allocating processors |
US5390329A (en) * | 1990-06-11 | 1995-02-14 | Cray Research, Inc. | Responding to service requests using minimal system-side context in a multiprocessor environment |
WO1992003783A1 (en) * | 1990-08-23 | 1992-03-05 | Supercomputer Systems Limited Partnership | Method of implementing kernel functions |
US5428779A (en) * | 1992-11-09 | 1995-06-27 | Seiko Epson Corporation | System and method for supporting context switching within a multiprocessor system having functional blocks that generate state programs with coded register load instructions |
US5825770A (en) * | 1996-06-06 | 1998-10-20 | Northern Telecom Limited | Multiple algorithm processing on a plurality of digital signal streams via context switching |
US7457671B2 (en) * | 2004-09-30 | 2008-11-25 | Rockwell Automation Technologies, Inc. | Systems and methods that facilitate management of add-on instruction generation, selection, and/or monitoring during execution |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3286239A (en) * | 1962-11-30 | 1966-11-15 | Burroughs Corp | Automatic interrupt system for a data processor |
US3283308A (en) * | 1963-06-10 | 1966-11-01 | Beckman Instruments Inc | Data processing system with autonomous input-output control |
US3406380A (en) * | 1965-11-26 | 1968-10-15 | Burroughs Corp | Input-output data service computer |
US3411143A (en) * | 1966-01-13 | 1968-11-12 | Ibm | Instruction address control by peripheral devices |
US3483521A (en) * | 1966-05-13 | 1969-12-09 | Gen Electric | Program request storage and control apparatus in a multiprogrammed data processing system |
US3479647A (en) * | 1966-06-03 | 1969-11-18 | Gen Electric | Data process system including means responsive to predetermined codes for providing subsystem communication |
US3421150A (en) * | 1966-08-26 | 1969-01-07 | Sperry Rand Corp | Multiprocessor interrupt directory |
-
1968
- 1968-07-09 US US743572A patent/US3614742A/en not_active Expired - Lifetime
-
1969
- 1969-06-03 CA CA053345A patent/CA932868A/en not_active Expired
- 1969-06-12 GB GB29855/69A patent/GB1267384A/en not_active Expired
- 1969-07-07 DE DE1934365A patent/DE1934365C3/de not_active Expired
- 1969-07-08 JP JP44053549A patent/JPS505542B1/ja active Pending
- 1969-07-09 SE SE12940/71A patent/SE364383B/xx unknown
- 1969-07-09 FR FR6923316A patent/FR2012588A1/fr active Pending
- 1969-07-09 NL NLAANVRAGE6910536,A patent/NL172008B/xx not_active IP Right Cessation
- 1969-07-09 BE BE735858D patent/BE735858A/xx not_active IP Right Cessation
-
1973
- 1973-12-30 MY MY347/73A patent/MY7300347A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
MY7300347A (en) | 1973-12-31 |
SE364383B (de) | 1974-02-18 |
FR2012588A1 (de) | 1970-03-20 |
US3614742A (en) | 1971-10-19 |
NL6910536A (de) | 1970-01-13 |
DE1934365A1 (de) | 1970-04-30 |
GB1267384A (en) | 1972-03-15 |
NL172008B (nl) | 1983-01-17 |
DE1934365C3 (de) | 1974-03-28 |
JPS505542B1 (de) | 1975-03-05 |
CA932868A (en) | 1973-08-28 |
BE735858A (de) | 1969-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1934365B2 (de) | Umschaltanordnung fuer eine multiprogramm-datenverarbeitungsanlage | |
DE1942005B2 (de) | Datenverarbeitungsanlage zur aufnahme und abgabe von digitalen daten und zur ausfuehrung von operationen an den daten | |
DE2847575C2 (de) | Einrichtung zur Abgabe von Mikrobefehlsschablonen an die Stufen einer Pipeline-Datenverarbeitungseinrichtung | |
DE1774296C2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
DE2353258C2 (de) | Datenverarbeitungsanlage | |
DE1549476C3 (de) | Anordnung zur Ausführung von Divisionen | |
DE2912287C3 (de) | Datenverarbeitungsanlage | |
DE2318069C2 (de) | Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix | |
DE1181461B (de) | Adressenaddierwerk einer programm-gesteuerten Rechenmaschine | |
EP0010185A1 (de) | Virtuell-Adressiervorrichtung für einen Computer | |
CH644461A5 (de) | Digitale multipliziereinrichtung. | |
EP0134831A1 (de) | Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung | |
DE2221693B2 (de) | Schaltungsanordnung zur Ausführung einer Multiplikation zwischen zwei Binärzahlen | |
DE1949916B2 (de) | Verfahren zum betrieb einer programmgesteuerten datenverarbeitungsanlage und anordnung zur durchfuehrung des verfahrens | |
DE2617485A1 (de) | Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen | |
EP0010263A1 (de) | Verfahren und Schaltungsanordnung zur Erweiterung des Adressierungsvolumens einer Zentraleinheit, insbesondere eines Mikroprozessors | |
DE1499224C3 (de) | Datenverarbeitungsanlage mit Kellerspeichereinrichtungen | |
DE1934441C3 (de) | Befehlswerkgesteuertes Rechenwerk für einen Digitalrechner | |
DE1449561C3 (de) | Rechenmaschine mit mechanischen Eingabe- und Ausgabevorrichtungen sowie elektronischem Rechen- und Speicherwerk | |
DE2507405C2 (de) | Anordnung zum Synchronisieren gleichzeitig auszuführender Tasks für Peripheriegeräte einer Datenverarbeitungsanlage | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE1934439C3 (de) | Digital-Rechner zur Verarbeitung von Vektorfeldern | |
DE3535215A1 (de) | Verfahren und schaltungsanordnung zum lesen von daten aus dem speicher einer datenverarbeitungsanlage | |
DE2601379C3 (de) | Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen | |
DE2551793C2 (de) | Indirekt gesteuerte Vermittlungsanlage, insbesondere Fernsprechvermittlungsanlage, und Verfahren zu deren Betrieb |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |