DE1934365C3 - Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage - Google Patents

Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage

Info

Publication number
DE1934365C3
DE1934365C3 DE1934365A DE1934365A DE1934365C3 DE 1934365 C3 DE1934365 C3 DE 1934365C3 DE 1934365 A DE1934365 A DE 1934365A DE 1934365 A DE1934365 A DE 1934365A DE 1934365 C3 DE1934365 C3 DE 1934365C3
Authority
DE
Germany
Prior art keywords
data processing
processing unit
unit
signal
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE1934365A
Other languages
English (en)
Other versions
DE1934365A1 (de
DE1934365B2 (de
Inventor
William Daniel Kastner
William Joseph Watson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of DE1934365A1 publication Critical patent/DE1934365A1/de
Publication of DE1934365B2 publication Critical patent/DE1934365B2/de
Application granted granted Critical
Publication of DE1934365C3 publication Critical patent/DE1934365C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program 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/126Program 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)
  • Multi Processors (AREA)

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 arbeitsgeschwindigkeitbegrenzenden 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 Schaltzeit 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
3 4 - Ar
einem Rechenwerk durchgeführte arithmetische oder tungsgeschwindigkeit des Rechners bis auf e -
logische Operation wesentlich weniger Zeit als die beitsgeschwindigkeit des Rechenwerks zu "™" ■
Übertragung der Daten vom Datenspeicher zum Da die periphere Daten verarbeitungseuiheitiauHP
rechenwerk und die Zurückübertragung der im augenblicklich nicht bearbeitete aber nniwM Rechenwerk erzeugten Daten in den Speicher. 5 vorhandene Programme vorsorgJicü aarauiniu
Je umfangreicher nun ein Computer w.rd, je mehr prüft, ob sie für eine Weiterverarbeitung durcn <jic verschiedene Speicher und Periphciegeräte erent- zentrale Datenverarbeitungseinheit bereit sui<j, hiüt und je höher ihre Speicherkapazität wird, desto len die bisher benötigten Wartezeiten weg, °« ™ häufiger kommt es vor, daß im Verlauf einer Be- das Warten auf die Ausführung von DiensUe*siuno rechnung umfangreiche Anlagenteile stillstehen, weil io in Peripheriegeräten auftragen, we.l jeai m c eine Beendigung von Abläufen von anderen Orten solchen Fall unverzüglich auf ein *ur ,"· \j das abgewartet werden muß. Damit eine große Anlage beitung bereites Programm umgeschaltet wu, wirtschaftlich ausgenutzt werden kann, indem sie dann in der zentralen DatenverarbeitungseinnciL α wenigstens in der Nähe ihrer Verarbeitungskapazität läuft Die zentrale Datenverarbeitungseinneii im « betrieben wird, die durch die Verarbeitungsgeschwin- 15 ständig in Betrieb, so daß die durcnscnninucnc ν digkeit der zentralen Datenverarbeitungseinheit in- arbeitungsgeschwindigkeit erhöht wird. innerhalb des Rechners bestimmt wird, wurden bereits liine Ausgestaltung der Erfindung ist 8»* Multiprogramm-Datenverarbeitungsanlagen entwik- zeichnet durch eine Schaltung zur Übertragung c jceh, die eine gleichzeitige oder quasi-gleichzeitige von der zentralen Datenverarbeitungseinnen. vuu Bearbeitung mehrerer Programme in mehreren bzw. ao menden Fehlersignals zu der peripheren uaieuvcj in einer zentralen Datenverarbeitungseinheit ge- beitungseinheit, die daraufhin ebenfalls oen ri statten. grammwechsel in der zentralen Datenverarbeitungs-
In den USA.-Patentschriften 3 337 854 und einheit auslöst. _rf
3 346 851 sind Hochgeschwindigkeits-Rechner be- Mit Hilfe dieser Ausgestaltung der tran""'J> schnoben, bei denen eine zentrale Datenverarbei- 25 kann auch dann ein Programmwechsel ausgeiunr
tune,einheit auf Grund eines, in ihr ablaufenden Be- werden, wenn die zentrale Datenveraroeitunfesuii-
nut/orprogramms Dienstleistungen von Peripherie- heit ein Fehlersignal abgibt, das anzeigt, aau u**
geräten mit Hilfe interner Systemprogramme anfor- zur Zeit bearbeitete Programm auf Grund eines ren-
dein vann. Nach einer solchen Anforderung wartet lers nicht mehr weiter bearbeitet werden kann, wer der »«-treffende Rechner, bis das Systemprogramm 30 Betrieb des Rechners wird in diesem hall men: un-
nacr. einer bestimmten Wartezeit dem Benutzerjiro- fach unterbrochen, sondern es wird zu einem anuc
gramm bzw. der zentralen Datenverarbeitungseinheit ren Programm umgeschaltet, das zur Weitervera -
anze ut, daß eine Programmumschaltung von Seiten beitung bereit ist.
der zentralen Datenverarbeitungseinheit durchge- Eine vorteilhafte Weiterbildung der brtinaung, ffihit werden kann. 35 bei der die zentrale Datenverarbeitungseinhett ein Dc Erfindung liegt nun die Aufgabe zugrunde, Rechenwerk, ein Befehlsabruf register zur u?erm"1" eine IJmschaltanordnung der eingangs angegebenen lung von Befehlen zu dem Rechenwerk, sowie einen An öcrart auszugestalten, daß für den Fall, daß die Adressengenerator zur Erzeugung von .^euercouczenuaie Datenverarbeitungseinheit auf die Ausfüh- gruppen für die Steuerung des Einspeicnerni unu rung von Programmen in der peripheren Daten- *o Abrufens von Operanden zwischen dem »P«^" veratbeitungseinheit warten muß, von der periphe- und dem Rechenwerk aufweist ist df"™f Kenirren üatenverarbeitungseinheit ein Programm zur zeichnet, daß das Befehlsabrufeinheitsregister einen Bearbeitung in der Wartezeit ausgewählt wird, mit Abschnitt aufweist, in dem entweder ein .AU""'" dessen Bearbeitung die zentrale Datenverarbeitungs- und Weiterbearbeitungsbefehl gespeichert wiru, einheit nach Austausch entsprechender Signale be- 45 wenn die zentrale Datenverarbeitungseinheit ohne SnJt Programmwechsel weiterarbeiten kann, oder der Auf-Erfindungsgetiäß wird diese Aufgabe dadurch ge- ruf- und Wartebefehl, wenn ein Programmwechsel löst daß die periphere Datenverarbeitungseinheit so erforderlich ist, daß mit diesem Abschnitt des Beausgebildet ist, daß sie in Abhängigkeit von dem fehlsabrufeinheitsregisters «P^^J" Stand des in der zentralen Datenverarbeitungseinheit 50 ist, der entweder das erste Signal auf einer ersten laufenden Programms die Auswahl des nächsten von Ausgangsleitung erzeugt, wenn in dem ADScnniu der zeilen !Datenverarbeitungsanlage zu verarbei- ein Aufruf- oder Weiterbearbeitungjefehl steht, tenden Programms aus dem Speicher steuert und ein oder das zweite Signal auf einer zweiten Abgang Freigabesignal erzeugt, das anzeigt, daß eine Aus- leitung erzeugt, wenn in dem Abschnitt ein Aufruf warf gesoffen ist, daß die zentrale Datenverarbei- 55 und Wartebefehl steht, daß ferner eine Schaltung Γη"«einheit der peripheren Datenverarbeitungsein- vorgesehen ist, um das jeweils vorhandene Ausgangs-SS entweder ein erstes Signal zuführt, das anzeigt, signal zum Rechenwerk zu bringen, wenn,derigdaß die zentrale Datenverarbeitungseinheit ohne vierte Speicherplatz verfugbar ist, und daß, schheB Programmwechsel weiterarbeiten kann, oder ein lieh eine von diesem Ausgangssignal ges euerte le£ zweites Signal, das anzeigt, daß ein Programmwech- fio schaltung vorgesehen ist zur Weiterleitung der ge Äorderiich ist, und daß eine Schaltung vorge- raJe vorliegenden Steuercodegruppe als die genannte sehen ist, die auf das zweite Signal und auf das Frei- Codegruppe an Stelle der Operanden in den reser eabesignal anspricht und in der zentralen Datenver- vierten Speicherplatz. . , . F Sungseinheit die Bearbeitung des nächsten von Nachfolgend wird ein *™™ά™^™^[£[% de peripheren Datenverarbeitungseinheit ausgewähl- 65 findung an Hand der Zeichnung bes,chriebe v n nn Es R2 ten Programms auslöst. Fig. 1 eine vorzugsweise Anordnung von Rech
Mit Hilfe der erfindungsgemäßen Umschaltordnung nereinheiten und -peripheriegeraten,
wird es möglich, die durchschnittliche Verarbei- F i g. 2 ein Blockschaltbild zu F1 g. 1,
5 6
Fig. 3 ein Blockschaltbild zur Darstellung einer periphere Datenverarbeitungseinheit 11, die Spei- Umschaltanordnung zwischen einer zentralen Daten- chersteuereinheit 18 und die Speicher 10 bis 15 ar-
verarbeitungseinheit und einer peripheren Datenver- beiten synchron miteinander. Ein Taktsignal für die
arbeitungseinheit der F i g. 1 und 2, zentrale Datenverarbeitungseinheit erscheint alle
F i g. 4 ein ausführlicheres Blockschaltbild der 5 50 Nanosekunden, während ein Taktsignal für die Umschaltanordnung von F i g. 3, periphere Datenverarbeitungseinheit alle 65 Nano-
F i g. 5 ein Diagramm zur Darstellung einer Be- Sekunden erscheint. Weitere Speichereinheiten wertriebsweise der zentralen Datenverarbeitungseinheit den von Plattenspeichern 16, 17 mit einer durchgemäß Fig. 1 bis 4, schnittlichen Zugriffszeit von etwa 60 Millisekunden
Fig. 6 eine Puffereinheit zum Eingeben beispiels- ίο* und von Bandspeichern 21 bis 26 gebildet. In den
weise von Vektordaten in einen Rechner, Bandspeichern 21, 22 werfen vorzugsweise 1-ZoIl-
F i g. 7 ein Blockschaltbild der zentralen Daten- Bänder verwendet, während in den Bandspeichern 23 Verarbeitungseinheit gemäß F i g. 1 bis 4, bis 26 Halbzollbänder verwendet werfen. Alle F i g. 8 ein aus zwei Abschnitten aufgebautes Bandspeicher können als Arbeitsspeicher und auch Rechenwerk in der zentralen Daten ve rarbeitungs- 15 zu Ein-Ausgabe-Zwecken verwendet werden. Ein
einheit. Kartenleser 19 dient zur Eingabe von auf Lochkar-
F i g. 9 Baueinheiten innerhalb der zentralen Da- ten gespeicherten Daten, und ein Kartenstanzer 20 tenverarbeitungseinheit zur Durchführung der Um- dient ^ur Ausgabe von Daten auf gestanzten Lochschaltung mit Hilfe der in den F i g. 3 und 4 darge- karten. Ein Zeilendrucker 27 ist als Ausgabegerät stellten Umschaltanordnung, 20 vorgesehen.
Fig. 10 eine Darstellung zur Veranschaulichung Als weiteres Ein-Ausgabe-Gerät dient eine BiIddes Zeitteilbetriebs zwischen virtuellen Datenverar- schirmkonsole 28. Diese Bildschirmkonsole enthält beitungseinheiten innerhalb der peripheren Daten- zwei Bedienungspulte, die mit der peripheren Datenverarbeitungseinheit gemäß F i g. 1 und 2, verarbeitungseinheit 11 gekoppelt sind und zwei BiId-
F i g. 11 ein Blockschaltbild der peripheren Daten- 25 schirme von Zweistrahl-Kathodenstrahlröhren ent-
verarbcitungseinheit, halten. Die Bedienungspulte bilden nicht nur die
Fig. 12 den Zugriff auf Zellen in einem Kommu- Steuereinheit für die Bildschirmkonsole 28, sondern
nikationsregister von F i g. 11 und auch für den Kartenleser 19, den Kartenständer 20,
Fig. 13 eine ausführliche Darstellung der in den Zeilendrucker 27 und die Bandspeicher 21 F i g. 11 gezeigten Zuordnungssteuerung. 30 bis 26. Ober die Bedienungspulte kann eine Bedie- In der nachfolgenden Beschreibung eines Anwen- nungsperson in den Rechner Befehle zum Prüfen der
dungsbeispiels der Erfindung wird die Zusammen- Hardware oder der Software eingeben; ebenso kön-
arbeit einzelner Einheiten innerhalb eines Vorzugs- nen über die Bedienungspulte Programmunterbre-
weise zur Verarbeitung wissenschaftlicher Daten aus- chur.gen an bestimmten Stellen ausgeführt werfen,
gelegten Rechners genau erläutert. 35 die es erlauben, den Fortgang einer Operation zu
überprüfen und auf Grund der erzielten Fortschritte in ihrem weiteren Ablauf zu beeinflussen. Letiteres
Zu Fig. 1: kann bedeuten, daß die Operation auf dem eingeschlagenen Weg weitergeführt wirf oder daß mög-
Der Rechner enthält eine zentrale Datenverarbei- 40 licherweise mit anderen Daten auf einem anderen
tungseinheit 10 sowie eine periphere Datenverarbei- Weg fortgefahren wirf.
rungseinheit 11. Ein Zentralspeicher besteht aus vier, Wie es bei Rechnern allgemein üblich ist. shV in von Dünnschichtspeicherelementen gebildeten Spei- dem in Fig. 1 dargestellten Rechner mehrere Speichern 12 bis 15 mit einer Zykluszeit von 160 Nano- cherhierarchien vorgesehen. Beispielsweise gibt es Sekunden bei einer durchschnittlichen Zugriffszeit 45 die vier folgenden Hierarchien: a) die zentrale Davon 100 Nanosekunden. In den Speichern erfolgt tenverarbeitungseinheit 10 mit dem schnellsten Speibeim Lesen ein Löschungsvorgang. Der Zentralspei- eher, b) die Speicher 12 bis 15 des Zentralspeichers, eher ist an die zentrale Datenverarbeitungseinheit 10 die etwas langsamer arbeiten, c) die Plattenspeichel und an die periphere Datenverarbeitungseinheit 11 16, 17, die noch langsamer arbeiten und d) die angeschlossen; er kann von konventioneller Bauart 50 Bandspeicher 21 bis 26, die im Vergleich zu den zusein, vor erwähnten Speichern die längste mittlere Zu·
Jeder Speicher 12 bis 15 hat eine Wortkapazität griffszeit haben, falls von ihnen keine entsprechend
von 16 384 Wörtern. Ein Wort besteht aus 32 Bits. vorsortierten Daten abgerufen werfen.
256 Bits =8-32 Bits = 8 Wörter heißen »Wort- Der Rechner von Fig. 1 verfügt über mehren
gruppe«, was bedeutet, daß 2048 Wortgruppen zu je 55 Untersysteme, die neu sind und eine bemerkenswert«
256 Bits in jedem der Speicher 12 bis 15 gespeichert Steigerung der Verarbeitungskapazität für die Fälle
sind. aufweisen, bei denen eine große Anzahl vorsortierter
Eine Speichersteuereiriheit 18 stellt die Lese- in bestimmten Gruppen geordneter Daten zur Ver Schreib-Steuerung für den Zentralspeicher and damit arbeitung anfallen.
das hu allgemeinen notwendige Zwischenstück zwi- 60 Ein erstes solches Untersystem besteht in eine
. sehen dem Zentralspeicher einerseits und der zen- automatischen Umschaltanordnung zwischen de
traten Datenverarbeitungseinheit 10 bzw. der peri- zentralen Datenverarbeitungseinheit 1· und der pert
pheren Datenverarbeitungseinheit 11 andererseits dar. pheren Datenverarbeitungsemheit 11 des Rechnen
Die Speichersteuereinneit 18 hat eine Pufferwirkung, in dem mehrere Programme gleichzeitig ablaufe)
und sie enthält Vorrichtungen zur Ein- und Aus- 65 und verarbeitet werfen können,
blendung, Kartierung und zum Schutz der Daten in Ein weiteres solches Untersystem im in der zen
den Speichern 12 bis 15. traten Datenverarbeitungseinheit 1· enthalten. Die
Die zentrale Datenverarbeitungseinheit 10, die ses Untersystem ermöglicht es, Daten zur Eingab
ifl den Rechner »α zu speichern „ gruppier^; und
dem Rechner in solcher Re)hen^^nd a"^IC^; daß damit seine Vcrarbe,iungsgcscrm.ndigke.t ue
scnlüch erhöht wird. _
Bin nächstes solches UntcrsyMcm bctnmc.n Par
allelrcchenwerk mit hoher y^10·*^,11^ digkeit und Flexibilität, m dem Ope andtn η»einer Art von Fließbandverfahren verarbeitet werden.
E»n weitem solches Untersyrtem »ehicßlich be trifft da» Arbeiten mehrerer v.rtueiler Oatenvcrarb« tung*e.r<hc,te« .nncrhalb ^f pc'»ph^cn Datenverar bJungseinhci.ll in einem Zeitteilverfahren.
Zu Fig 2:
^pin^erc Datcnverarbeitun&seinheit 11 enthält JJ(1JjJJ16JJ6 Dalenverarbeitungseinheiten, von denen
,. Mchr7ahl so programmiert werden kann, daß die Menm* P^ Datenverarbeitungseinheit
ff j£m SLigcn Peripheriegerät gekoppelt •er^ri hcrc DatCTverarbeitungse»nheit mit Hilfe der virtuellen Datenverarbei-Un entsprechend dem im ZeiUralspcicher J^SS^Pf.^Liin. wnhe, die v.rtue«en Daten- *£*£««gseinhfiien außerdem das in de, zentralen KS«rbdtungseinheit 1· laufende Programm
überwachen.
Fm Kanal 33 verbindet die zentrale Datenverar-
s Αϊ««'
,5
rcilkn Fin Kanal 29 verbmdet d.c|J
einheit 18 mit einer puffernden Platten-
mcKtetieremheit 3t. von der ein K.d™>
speicher 16 und ein weit««* Kanal ^ PlattCTp
eher 17 führen. Die Platten- und Tirmnmd*«T_
einheit 3« .st ein einfacher. ^'/^^^
zweckrechner zur Durchführung d« Oatentranjport»
z.,schen den mit ^^^^^' Sehern
l>und*r.tn7xnlraNKiclwufld^
«.6 17 über den Kanal 19 nach trhali e.ncs cr.isprc
chtndcn Befehl*. . K;,lf<,ktiona! wn
I),c eben erwähnten Kanäle ««<■ bidtrrtüonal. we
bc. <n dem /wichen drn W«1^1^™" ^1" .tnd der Platten- und Trommdsteueranhui * «« {.enden Kanal nur jeweils ein Wort pro' ™»*g, .,rderl wird. Im Kanal 29 werden dagegen g^c,ch /CMj5 8 Worter, also cmc WortgrupiK. zw.schc^^oer Spcithentcuereinheit IS und der Platten- und Tron stcuc.-einhctt 3* transput«*
30 Je/'^r.pheren Da,envcrarbeitun&«inhe,t 1 kann Jf 7Vntralc Datcnvcrarbeuunj-scnheit 1« alle acht oner Wortgruppe au, dem Zentratspc.cher wobcj sic übcr,,ies die Fah.gke.t bcMtzt. W^gc Kombinattn, d.eser acht Wörter zu J^1 oder L «hre.ben. Im Kanal 33 werden vor- ^J so Nanosckundcn dre, Wörter tranv
port-crt. «ntaei /wei Worter in die zentrale Datenver-Trbctungsemhct IO eingegeben werden wahrend ^ Worf zur SpetchcTsieuereinheit IS gelangt
Weiter unten wird noch beschrieben, wie ate zenwc.tca ^1, nheit t« VektoroperaUo-
«„direkt und ohne Übersetzung durch e.nen Com-ηer^d.. ^^ ^^^ )ange BefehKketten
^icdcn werden, da d,e zentrale Datenv^arhc,-ver ^^ ^n auf c d eincs
Wg obefeh,s io|eflI ausführt Die zentrale
^;erarbcitungseinheI, 16 hat d.ese Fähigkeit ibesondere deshalb, weil zwischen qci Speie,,«.-
assort-
Cf ^«terer Kanal zur von 256 Bits M der bidir
£XSSS
SS
onale ^
1Äär^ aus
Rechen-
^ 4 4t Kanal 3. am Ausgang der *-—£
he?,, ^--^JÄÄ
wurde, dient die
5» tunisemheuen od. dgl. zusä^lich angeschlossen we,
zweckrechncr, dem unter Datenfluwe» zu allen Pcnr leanäle an An angeschlossen »πα. Plattenspeicher 1« und 17 ond des eher* 31 obliegt. .
Beim nicht zerstörungsfreien Zentrakpeicher müssen die ·«· generativ wieder cingespeicln eine» der acht Wörter cincr ripheren DaienverarbcHun£
wird Dies erweist sich schon ucwmi»_<»=· ..«·»-·- cj di von der pcriphercn Datenverarbeitungseinhct m von o« fvf^,,,, «,«,ifler laiiEsam arbeitenden
pp » Kanüle 29 und 32 bis 34 hat über di< ^„^,e^^nncit 18 direkt Z^rrfi auf jeder ^cher 12 bis 15 des Zcntralspeichers. Zar Erho jpe. Verarbeitungsgeschwind^keit werden u,
rnnig^^ ^^ insbesondere im Zentralspetcher siel vorzugsweise zeitlich überlappende Arbeitszyk ei angewendet. In der Speicnersteuereinheit 18 ist em tlrangsteuerung mit vorzugsweise festen Zuord 6o nungen vorgesehen, damit Anfragen an det! Zentral ^Scher ta doer gewünschten Reihenfolge bean« Sortei werden können. So werfen Anfragen von de die Kanäle 29, 32, 33 und 34 unmittelbar an
ss
Große Übertragung von
Daten iÄalb der pcriphercn abzuändern.
409613/3
9 10
Fig. 3: die Und-Gatter43 auf einer Leitung45 ein Signal
»Umschalten«, wenn auch die Schaltkennzeichenvor-
,. Form eines Blockschaltbilds wird ,ne auto- i^^SSe^SäaS^^^
malische Unischaltanordnung geze.gt die die pen u sa£ en der erforderlichen Umschaltung
phere Datenverarbeitungseinheit 11 mit der zentralen au^u β^ das ^ einem sjgna,
batenverarbeitungseinheit 10 verbindet Mit Hilfe vor^de"j £en P $ Programm, das von der
dieser Umschaltanordnung »st es möglich, den Ze t- ^^»^"Satcnverarbeitung^inheit 11 aus den in
haushalt der zentralen ^f^^Sw^ ^e e'rve befindUchen Programmen als das Programm SSSV ST^pS^ 5Si^SS ,o ausgewählt ,orden ist, das als nächstes an die Re.he
lungseinheit 11 vermieden ^" ^^fTß tarinielnen spielt sich bei diesem Vorgang fol-
weise der Umschaltanordnung basiert damn, aaü Wenn die Schaltkennzeichenvorrichtung
in der zentralen I*»«™*«"1·1«^^^ I4 gesetzt ist, kann beim Auftreten eines Signals 5CIV
gleichzeitig oder vorzugsweise quas.-ge^chzeittg 4 g ^ Datenverarbeitungseinheit
mehrere Benutzerprogramme ώ%ηί™Υ<η™™* 5 J0 über das Und-Gatter43 das Signal »Umschalten« daß andererseits die periphere ^g^gg, auf der Leitung 45 zur zentralen Datenverarbeitungseinheit 11 Periphere A"^ v0^ ^er peri- einheit 10 gelangen und dieser anzeigen, daß sie an Programme zu erledigen hat, w°durcn nun «Π«£ Stee des Programms, das zur Abgabe des Signals pheren DatenVerarbeitungseinheit 1dieAufgabe ate ^ ^ ^ ^ ^ ^^ .n ^ zukommt, den Ablauf^ der in der zentralen uat ^ ^ ^ ^^ ^^ jn R .^ be verarbeitungseinhe.t IC' ^*^^^01 findliches Programm oder Programmsegmen: weiter nutzerprogramme P»anensch ^^J die in bearbeiten kann Sie wird dieses Programm oe,-r Pro-Durch zwei ^^^^^^S ausge- grammsegment automatisch und ohne Verzögerung der zentralen θ3ΐεην"^^ a5 übernehmen und weiterverarbeiten, indem ihr durch führten ^««^^^^^KJSstui- Rücklrage bei der periphere« Datenverarbeitungseintenverarbeitungseinheit 11 Penpje«^ D^hi. heit „ *on dieser das betreffende Programm oder
8S IcptTsFll^^ÄalS iommTdann im Programmsegment angezeigt wurde. Hat nun bei-
gen SC P und it W. uas »igna . . d spielsweise die periphere Datenverarbeitungseinhct
Benutzerprogram^,vor *n^ J^Jg^ ohne 30 & etwa bei Fehlen solcher in Wartestellung befind-
S1CSS ^nSeTn perjheren Dienst- licher, betr.ebsbereiter Programme keine solche An-
Γ . «- SS leiten der oeripheren Datenverarbei- zeige /u machen, dann ist von der penpheren Daten-
leistung von Seuen der penpnere Datenver- verarbeitungseinheit auch die Schaltkennzeichenvor-
tungsemheit Il **™^f \?*?^9£™ά der ent- richtung nicht gesetzt worden, so daß die Abgabe
arbeimngseinhe,,11\ <mrt^^ S d Sl Uhl hi möglich
tung ^f \??^£ά der ent- richtung nicht gesetzt worden, so daß die Abgabe
arbeimngseinhe,,11\ <mrt^^ S. Adressen 35 des Signals »Umschalten« von vornherein unmöglich SfS i Te Sll b u gemacht te Beim Auftreten des Signals SCW been-
^^ S. Adressen 35 des Signals »Umschalten« von vornherein unmögl
SfS einze Troern Srstellen bzw. zu- gemacht te. Beim Auftreten des Signals SCW been-
oder ein ganzes rrug Ahlauf des inner- det die zentrale Datenverarbeitungseinheit 10 m die
sammenstellen, «^™^η Α3ίΧ. sem Fall zwar eben« die Weite, verarbeitung des B^
iSÄSlrÄS to^SSS^«^ nuueφrogramms. das zur Abgabe des Signals SC» Si5STl»Ä^ Date^veLbei-.ungseinheit 4o geführt hat. doch bleibt dieses Benutze^rogramm ,n
11 iSSrt dann das angeforderte Datenmaterial der zentralen DatenverarbeUungsemheit 10 so lange.
11 uoertrap aann ua- β ^ bis dje Scha!tkennzeichenvomchtung44 von der
ϊνΡΓΓ^£Κ üSr riS^ngrieitung periphoen DatenverarbeuungseinheU 11 gesetzt wird !Ti von der Sä ec! Datenverarbe.tungseinheit 10 Sobald das Signal »Umschalten* erscheint, wird die zur MriDheren Datenverarbeitungseinheit 11 über- 45 die Schahkennzeichenvorrichtung 44 bildende Fl.p zur penpiicrcii ^ Flop-Schaltung zurückgesetzt,
tragen. ^.^ dagegen dann von einem Mit dieser automatisch arbeitenden Umschaltan
uas ^g"5" smepcoeben wenn dieses nicht Ordnung wird em sonst üblicher zeitraubender Dialo?
T SSXTSni Se die' vTn der peripheren zwischen der zentralen und der peripneren Datenver r^Vp^vPra-beituneseinheit 11 angeforderte periphere 50 arbeitungsemheit dadurch vermieden, daß die pen Datenvera. Denung^^ ^ ^^ ^ Signa]SCW phere Datenverarbeitungseinheit U vorsorglich samt
• H "ter eine Auseangsleitung 42 aus der zentralen liehe in Reserve befindliche Programme innerhalb de
na7Ptiv7rarbeitungsernheit 10 an die in Fig. 3 zwi- zentralen Datenverarbeitungseinheit 10 auf Einsatz
vS?Ü«^zentralen Datenverarbeitungseinheit 10 und bereitschaft, d. h. auf die Möglichkeit, sofort weiter
£r Erinneren Datenverarbeitungseinheit 11 liegende 55 verarbeitet zu werden, prüft und registriert. Ein wei
είκΕε Umschaltanordnung angelegt. terer Vorteil ergibt sich daraus, daß in der zentrale.
™7neriohere Datenverarbeitungseinheit 11 unter- Datenverarbeitungsemheit keine Schaltungseinnch
h. X hinerhalb der zentralen Datenverarbeitungs- tungen zur Durchführung des sonst üblichen Dialog
Seif« gerade unterbrochenen und nicht weiter benötigt werden.
Sd Programme daraufhin, welches von der 60
«ei«*<^^ . Zu Fig. 4:
^dLT'Szt Se "periphere Datenverarbei- F i g. 4 zeigt ein ausführlicheres Blockschaltbild de
iiiheit 11 eine Schal&ennzeicheneinrichtung 44, in F i g. 3 dargestellten Umschaltanoidnung. -»* dei
fer als Füo-Flop-Schaltung dargestellt ist. Wird 65 die Zusammenwirkung zwischen der zentrale. dter
in der zentralen Datenverarbeitungseinheit 10 verarbeitungseinheit 10, der peripheren Daienvei
^n Anlauf eines in ihr verarbeiteten Benutzerpro- arbeitungseinheit 11 und der Speichersteuereinheit
gramms ein Signal SCW gefunden, dann entsteht über deutlich hervorgeht. In Fig. 4 ist der wesentlich
11 12
Teil der automatischen Umschaltanordnung als zur pheren Datenverarbeitungseinheit 11 bestimmte Be-
peripheren Datenverarbeitungseinheit 11 gehörig ge- triebsbedingungen auftreten.
zeichnet, indem er als Ausgangsteil der peripheren Auf einer Leitung 57 wird ein Signal PSC als Datenverarbeitungseinheit 11 in Richtung zur zentra- Quittiersignal von der zentralen Datenverarbeitungskn Datenverarbeitungseinheit 10 und zur Speicher- 5 einheit 10 zur peripheren Datenverarbeitungseinheit Steuereinheit 18 dargestellt ist. Die periphere Daten- Il auf Grund eines vorausgegangenen Signals SCW Verarbeitungseinheit 11 enthält also in Fig. 4 auf der oder eines Fehlersignals übertragen. Die periphere linken Seite einer gestrichelten, senkrechten Linie Datenverarbeitungseinheit Il löst eine Operationseine Umschaltanordnung als Ausgangsteil, während folge aus, die die momentan unterbrochene Zentralauf der rechten Seite der gestrichelten Linie die io datenverarbeitungseinheit veranlaßt, einen bestimmeigentlichen Schahtingsanordnungen der peripheren ten Informationscode in den zentralen Speicher zu Datenverarbeitungseinheit liegen, von denen jedoch übertragen, der den Gesamtzustand des Programm-Bur Anschlüsse dargestellt sind. teils in der zentralen Datenverarbeiiungseinheit 10
Die Ausgangsleitungen 41 und 42 für die Signale charakterisiert, bei welchem diese Einheit die Ver- SCP und SCW führen von der zentralen Datenver- 15 arbeitung des Programms unterbrochen hat. Nach arbeitungseinheit 10 zur peripheren Datenverarbei- dieser Absicherung wird nun die zentrale Datentungseinhcit 11. Für diese Übertragung ist ein Oder- Verarbeitungseinheit 10 in einen gänzlich neuen ZuGatter 50 vorgesehen, an dessen Eingänge die Signale stand versetzt, auf Grund dessen sie ein neues Pro-5CP und SCW angelegt werden können, und es ist gramm ausführen kann. Dieses Programm beginnt ein einen weiteren Signalkanal bildendes Oder-Gatter »o bei dem Zustand, der dem Inforniationscode 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, das Fehlersignal entstehen auf Grund bestimmter 15 42 oder 53 nachfolgend erscheinende Signale SCP, Programmbefehle im Benutzerprogramm, wobei im SCW oder »Fehler« beantworten. Wie noch gezeigt Falle der zvei letzteren Signale ein Umschalten vom wird, registriert die periphere Datenverarbeitungseinbisherigen Benuucrprogramm zu dem nächsten Pro- heit 11 das auf der Leitung 57 erscheinende Signal gramm erwünscht sein kann. und bringt dementsprechend das nächste Programm
Ein kurze Zeit nach Erscheinen der Signale SCP 30 sowie die von der zentralen Datenverarbeitungseinoder SCW oder des Fehlersignals entstehender Tast- heit 10 zu verarbeitende Information in Bewegung, impuls auf einer l-eitung 54, kommt von der zentra- sobald ein Signal 5CW oder ein Fehlersignal auf den len Datenverarbeuungseinheit 10 zur peripheren Da- Leitungen 42 bzw. 53 erscheint, tenverarbeitungseinheit 11, in der er eine Flip-Flop- Das Signal »Umschalten« (P5) an der Leitung45 Schaltung73 setzt. Es sei bemerkt, daß der Tastim- 35 von Fig. 3 und Fig. 4 zeigt der zentralen Datenverpuls und die von ihm getastete Flip-Flop-Schaltung arbeitungseinheit an, daß diese die Umschaltung von 73 ohne Abweichung ν im dem in Fig. 3 dargestellten einem Benutzerprogramm zu einem anderen BePrinzip entfallen könnten. nutzerprogramm vornehmen kann.
Mit einem Signal aaf einet der Ausgangsleitungen Ein auf der Leitung 58 von der peripheren Daten-
41. 42 fragt die zentrale Datenverarbeitungseinheit 10 40 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 M5C auf einer Leitung 59 zeigt, was die speichern darf. Dabei erstreckt sich die Zeitspanne, Speichersteuereinheit 18 anbelangt, daß ein Umin deren Verlauf den bestim-nten Teiten des in die- schaltbefehl ausgeführt wurde. Das Signal gelangt von sem Augenblick von der zentralen Datenverarbei- der Speichersteuereinheit 18 zur peripheren Datentungseinheit 10 verarbeiteten Programms enthalten verarbeittingsemheit 11 und zu einem Eingang eines soll, übe. die Zeit, die die periphere Datenverarbei- 5° Und-Gatters 64, dessen zweiter Eingang mit der das tungseinheit II benötigt, diesen Programmteil abzu- Signal P5C führenden Leitung 57 verbunden ist fragen und auf Grund des vorgefundenen Informa- Wenn die Und-Bedingung an diesem Und-Gatter ertionsgehalts eine dementsprechende Instruktionsfolge füllt ist, kann die periphere Datenverarbeitungseinablaufen zu lassen. Tn dem hier beschriebenen Bei- heit 10 den nächsten Zustandswechsel für die zenspiel wird für eine solche Steueroperation einer Um- 55 trale Datenverarbeitungseinheit vorbereiten. Ein« schaltanordnung eine Wortstelle im Zentralspeicher von der peripheren Datenverarbeiuuigseinheit 11 zureserviert. Ein auf einer Leitung 55 von der zentra- Speichersteuereinheit 18 führende Leitung 60 über len Datenverarbeitungseinheit 10 zur peripheren Da- trägt wie die obengenannte Leitung 45 das Signa tenverarbeitungseinheit 11 übertragenes Signal CCC »Umschalten«; dieses Signal zeigt der Speichersteuer meldet der peripheren Datenverarbeitungseinheit 11, 6° einheit 18 an, daß sie den Umschaltbefehl ausführe! daß ein mit dem Signal SCP oder SCW begonnener kann.
Ablauf beendet ist. Wie im Zusammenhang mit F i g. 2 bereits erwähn
Auf einer Leitung 56 gelangt ein Signal R von der wurde, übertragen die Kanäle 32 und 33 acht Wöi
peripheren Datenverarbeitungseinheit II zur zentra- ter -- 256Bits, d.h. jeweils einen ganzen ν ' -iloc
len Datenverarbeitungseinheit 10, das, wie nachher 65 gleichzeitig zwischen der peripheren Daten»jrarbei
erläutert wird, dazu verwendet werden kann, den tungseinheit und der Speichersteuereinheit bra
Ablauf innerhalb der zentralen Datenverarbeitungs- zwischen der zentralen DateTiverarbeitungseinheit un
einheit 10 abzustoppen, sobald innerhalb der peri- der Speichersteuereinhsit.
1
13 14
Der zur Umschaltanordnung gehörende Ausgangs- Schluß 84 e, der Ja-Ausgang der die Schaltkennzeiteil der peripheren Datenverarbeitungseinheit 11 ent- chenvorrichtung bildenden Flip-Flop-Schaltung 44 hält nach Fig. 4 zehn Flip-Flop-Schaltungen71 bis zum Anschluß84/, der Ja-Ausgang der Fhp-Flop-75, 44 und 77 bis 80. Zu diesem Ausgangsteil ge- Schaltung 77 zum Anschluß 84 g und der Ja-Ausgang hören auch die Oder-Gatter SO, 51,68 sowie die Und- 5 der Flip-Flop-Schaltung 78 zum Anschluß 84Λ. Samt-Gatter 43 und 61 bis 67. liehe Anschlüsse 84a bis 84/ sind programmzugang-
Die Flip-Flop-Schaltungen können einfache gleich- Hch, was unten naher erläutert wird, soweit dies für stromgekoppelte .RS-Flip-Flops sein, deren Setz- und das Verständnis einer die Umschaltanordnung be-Rücksetzeingänge mit den Buchstaben S bzw. R be- treffenden Operation erforderlich ist.
zeichnet sind. Der Ja-Ausgang der Flip-Flop-Schal- io Das Signal CCC an der Leitung 55 führt zum Setztungen ist mit 1 bezeichnet, und der Nein-Ausgang eingang der Flip-Flop-Schaltung 74, die nach Beist mit 0 bezeichnet. Die Flip-Flop-Schaltungen sind endigung eines Anrufs in den Setz-Zustand übergeht; ferner mit Buchstaben bezeichnet, die die jeweils auf durch Abgabe des Signals CC am Anschluß 84 d wird den entsprechenden Ja-Ausgängen abgegebenen Si- der peripheren Datenverarbeitungseinheit gemeldet, gnale kennzeichnen. Beispielsweise bedeutet der »5 daß der Aufruf beendet ist, worauf die periphere Buchstabe C bei der Flip-Hop-Schaltung 71, daß an Datenverarbeitungseinheit die Flip-Flop-Schaltung der an den Ja-Ausgang angeschlossenen Leitung 81 74 über eine Leitung 85 rücksetzt,
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 zo Zustand erzeugt diese Flip-Flop-Schaltung am Ja-
Und-Gatters 61 ist mit dem Setzeingang der Flip- Ausgang ein Signal R, das über die Leitung 56 zum
Flop-Schaltung 71 verbunden. Der Nein-Ausgang der Anschluß 84 p gelangt, der vom Programm abgefragt
Flip-Flop-Schaltung 71 ist mit einem zweiten Eingang werden kann. Die Hip-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 periphere Datenver-
Oder-Gatters 51 ist mit dem zweiten Eingang des arbeitungseinheit II kann also den Zustand der Flip-
Und-Gatters 62 \erbunden, dessen Ausgang an den Flop-Schaltung 75 feststellen.
Setzeingang der Flip-Flop-Schaltung 72 angeschlos- Über den Setz- und den Rücksetzeingang, an diesen ist. Der Nein-Ausgang dieser Flip-Flop-Schaltung Leitungen 87 bzw. 88 angeschlossen sind, ist die Flipist 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- Anschluß 84/ führt und auch über eine Leitung 89 tungen 71 bis 73, den Und-Gattern 61 bis 63 und den 35 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 51 dann, wenn ein Anruf auszuführen ist. Ferner mit dem Ausgang des Und-Gatters 67 verbunden ist. bewirkt diese Baugruppe die Abgabe eines Signals S 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ähtung 72 verbundenen Ausgangsleitung 82, wenn eine rend ein 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 Fingabeleitung 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 den 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 Sip ' S Feststellung, welche der Funktionen Anruf oder Uman der Leitung 82 als Kennzeichen des Setz-Zusiu.i- 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 »Umden Programm führt, wodurch nach Beendigung eines 6° schalten« (PS), wodurch der zentralen Datenverar-Anruf-oder Umschaltvorgangs ein Rücksetzsignai für bcitungseinheit 30 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- r.challbefchls begonnen werden soll. Am Ja-Ausgang
Schlüssen 84a und 84b, die zu einer Gruppe von An- der Flip-Flop-Schallung 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ß 84 rf, daß mit der Ausführung des Anruf-Befehls begonnen
der Ja-Ausgang der Flip-Flop-Schaltung 75 zum An- werden so!!, wobei die Flip-Flop-Schaltung 80 jedoch
A>
i 934 365
nur dann in den Setz-Zustand übergeht, wenn vorher die Flip-Flop-Schaltungen 71 und 77 gesetzt worden sind.
Die bisherigen Ausführungen betrafen die Durchführung einer automatischen Umschaltund von einem zu einem anderen Programm innerhalb der zentralen Datenverarbeitungseinheit JO unter Berücksichtigung der in ihr vorliegenden Bedingungen und unter der Steuerung durch die periphere Datenverarbeitungseinheit. In der am Ende angefügten Tabelle I ist der Ablauf der Umschaltoperation in Form von Booleschen Gleichungen angegeben.
Die Besonderheiten der zwischen die zentrale Datenverarbeitungseinheit 10 und die eigentliche periphere Datenverarbeitungseinheit 11 eingefügte Schaltung zur Verarbeitung der Signale SCW und SCP sowie des Fehlersignals sind:
a) Eine Anfrage an die zentrale Datenverarbeitungseinheit kann sein:
1. Eine durch einen Fehler verursachte Anfrage an die Umschaltanordnung,
2. ein Anruf durch ein Signal SCP oder
3. ein Umschaltbefehl durch das Signal SCW.
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 peripberen Datenverarbeitungseinheit, in dem von der eigentlichen peripheren Datenverarbeitungseinheit getrennte Schaltungselemente für Anruf und Umschaltung benutzt werden.
d) Bei der Durchführung des \on einem SCP- oder SCW-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 uad 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 lOFlip-Flop-Schaltii"gen verwendet, die in der am Ende angefügten Tabelle I gemäß der in Fig. 4 dargestellten Schaltung aufgeführt sind. Wie später an Hand von Fig. 11 eri^utert wird, werden im Ausgangsteil 10 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 Schallvorgang (Signal SCW) erfolgen.
Zu Fig. 5:
Der hier beschriebene Rechner eignet sich nicht nuf für skalare Operationen, sondern insbesondere auch zur Verarbeitung laufend veränderlicher, vektorieller Daten, welche dem Rechenwerk wiederholt zugeführt werden; der Rechner ist also besonders für Vektoroperationen geeignet.
Eine typische Vektoroperation ist däe Addition zweier Vektoren Ä + S = C (mit A, B und C als ndimensioualen linearen Feldern) in Form einer Addition ihrer Komponenten at 4- bt = C1. Die Vsktoren 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 skalaren 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
5
ι= ι
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 an a 1.1
«21 «22 a
«11 «32 a
l3
cn
mit beispielsweise C11 = au 6„ + flt2 b.n + flts 6gl
und allgemein
cii = ^atkbkj
♦° wobei ρ der Grad der Determinante ist.
Die Erzeugung des Elements c„ kann man als eine Multiplikation der ersten Reihe der Determinante A mit der ersten Spalte der Determinante B durchführen. Ein Element C12 kann als Multiplika-
tion der ersten Reihe der Determinante A mit dei zweiten Spalte der Determinante B entsprechend erzeugt werden; ein Element C13 aus der Multiplikation der ersten Reihe der Determinante A mit der dritter Spalte der Determinante B.
Vektoriell ausgedrückt kann man so sagen: Dei Reihenvektor 1 der Determinante A dient als Ope-.andenvektor für drei Vektoroperationen mit derr Spaltenvektor 1 oder 2 oder 3 der Determinante E zur Erzeugung des Reuenvektors 1 der resultierer.
den Determinante C. In solcher Weise wird nun noch zweimal verfahren. Ein erstes Mal, indem jetzt statl des Reihenvektors 1 der Reihenvektor 2 der Determinante A und ein zweites Mal, indem jetzt der Reihenvektor 3 der Determinante A zur Erzeugung der 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
mehrmals durchlaufen werden. Diese Schleifen seien als innere bzw. äußere Schleife bezeichnet. Für das Heispiel der Matrixmultiplikation sei die innere Schleife zur Indizierimg von Element zu Element
409613/305
innerhalb einer Reihe et* Matrix C vorgesehen, die gegen die vom g^ ^vA^ £
äußere Schleife dagegen zum Fortschreiten von Reihe gebnisse, ehe s« be»P»ebww» m w orgjpp^n ge
zu Reihe innerhalb dir Matrix C. sammelt zu den Spähern 12 bis 15 zurucktranspor
Die in Fig. 5 hinsichüich ihrer Ablaufschleifen tiert werden. w,ailt Haß er beisrnels
skizzierten Operationen werden in der gemäß F i g. 6 5 Der Puffer 102 ist »"gg?1^1^^^
aufgebauten zentralen Datenverarbeitungseinheit in weise mit jeder achten Takuert iauf einmal eme aus
protlemorientierte.opümierterWeiserealisiert. ^ ^Z^
Zu Fig. 6: wird jede Wortgmppe zum Puffer 103 weitertrans-
Die Verarbeitungsgeschwindigkeit der zentralen M V^^^^^^^S^S^S^ Datenverarbeitungseinheit 10 des hier beschriebenen Puffer 103 ^m Rechenwerk 101 so übertragen daß Rechners liegt wesentlich über der Verarbeitungsge- ein Wort P™ taktimpuls bewegtwirf. Je weh,Art schwindigkeil, mit der Daten aus einem Speicher aus- der vom Rechenwerk 101 ω^^*° ^™£?" gelesen und in diesen wieder eingespeichert werden wird zu jeder Taktzeit ein vom können. Damit die hohe Verarbeitungsgeschwindig- ,5 detes Resultat aus ^t ^^ keil innerhalb der zentralen Datenverarbeitungsein- Zentralspeicher gebracht. D heit 10 zur Verarbeitung großer, vorsortierter Daten- eher Weise Iiochwirksame ^J blöcke, beispielsweise bei Vektoroperationen, ausge- Operationen m.t geringeren Anforderungen au fuhnutzt werden können, wird zwischen dem Rechen- ren. Ein Beispiel für höchste Anforderungen bei einer werk und dem Speicher eine Kopplungseinrichtung »- Operation der Puffereinheit 100 und des Rechenangebracht, die speziell der Forderung nach höchster werks 101 ist die Add.üon von Vektoren, bei der de Verarbeitungsgeschwindigkeit Rechnung trägt. Die zwei Operanden aus den Puffern "»und 106 mit Kopplungseinrichtung wird im folgenden als Puffer- jedem Taktimpuls zum Rechenwerk 101 übertragen einheit 100 bezeichnet, die nach Fig. 6 zwischen die werden, das mit jedem Taktimpuls eine Summe bil-Speichersteuereinheit 18 und da* Rechenwerk 101 a5 det, die unmittelbar vom Puffer 108 aufgenommen eingefügt ist. Die Puffereinheit 100 wird als Teil der wird. . zentralen Datenverarbeitungseinheit 10 angesehen, In der zentralen Datenverarbeitungseinheit 10 be- und sie ist über den Kanal 33 mit der Speichersteuer- findet sich eine Datei aus; adressierbaren Registern, einheit 18 verbunden. Außerdem führen zwei Daten- nämlich Basisregistern 120,121, allgemeinen Kegikanäle 100a und lOOft von der Puffereinheit 100 3» stern 122 und 123, einem Indexregister 124 sowie zum Rechenwerk 101, das hier als Vektorrechenwert einem Vektorparameterregister 125. Jedes der Kegibezeichnet werden kann. Ein Datenkanal 100c führt ster 120 bis 125 hat über einen gemeinsamen Komvom Rechenwerk 101 zur Puffereinheit 100. Über munikationskanal 104 und eine Operandenabruf- und die Datenkanäle ΙΟΟα und 100ό werden Operanden Operandenspeicheranordnung 126 Zugang zum Kezum Rechenwerk transportiert, während der Daten- 36 chenwerklOl. Die Anordnung 126 dient als Durchkanal 100 c das im Rechenwerk erzeugte Resultat zur gangskanal zu Operanden in beiden Kicntungen Puffereinheit 100 überträgt, von wo es über die Spei- Eine Steuereinheit 127 dient unter an°ere,m n zur chersteuereinheit 18 zu den Speichernd bis 15 ge- Steuerung des Rechenwerks 101 dadurch, daß sie langen kann. ihre Steuersignale auf Grund der von einem Befehls-
40 pufferspeicher 127a gelieferten Befehle bildet. Der
^■u rig. /: Befehlspufferspeicher 127a dient der Pufferung von
Unter Bezugnahme auf die mehr ins einzelne ge- Befehlen, die aus einer Befehlsabruf einheit 128stam-
hende Darstellung von Fig. 7 kann die Wirkung des men. Die Befehlsabrufeinheit 128 beliefert nicht nur
Puffers 100 bei Hochgeschwindigkeitsübertragungen den Befehlspufferspeicher 127a mit Befehlen, son-
zum und vom Rechenwerk 101 erläutert werden. Wie 45 dern es liefert auch Adressen an eine Indexeinheit
bereits erwähnt wurde, sind im Zentralspeicher Wort- 126a; der Ausgang der Indexeinheit 126 a tuhrt da-
gruppen von 256 Bits in Wörtern zu je 32 Bits ent- bei zur Anordnung 126. Die Befehlsdateien 129 und
halten; eine Wortgruppe kann dabei jeweils gleich- 130 bilden puffernde Kanäle fur einen Berehlsfluli
zeitig gelesen oder geschrieben werden. Die Wort- von den Speichern 12 bis IS zur Befehlsabrufein-
gruppen werden aus dem Zentralspeicher über die 50 heit 128.
Speichersteuereinheit 18 und den Kanal 33 zu einer F.ine Steuereinheit 131 steht mit Ausnahme der Torschaltungseinheit 18 a transportiert. Der Torschal- Belehlsdateien 129 und 130 mit allen in Fig. 7 getungseinheitl8a ist der Puffer 100 nachgeschaltet. zeigten Einheiten in Verbindung; es besteht auch Wie in F i g. 6 dargestellt ist, verlaufen zwischen der eine Verbindung zwischen ihr und derTorschaltungs-Puffereinheit 100 und dem Rechenwerk 101 drei Da- 55 einheit 18a. Zur Aufgabe der Steuereinheit 131_ eetenkanäle 100a, 1006 und 100c. Der Kanal 100a hört es, auf Grund des Signals SCW oder des Fehlerist der Ausgangsteil eines Registerkanals für den signals (F i g. 4) den gesamten augenblicklichen ZuOperanden A, der zwei in Serie geschaltete Puffer stand der zentralen Datenverarbeitungseinheit IG 102 und 103 enthält. Der Kanal 100 b ist der Aus- vorzugsweise in den Zentralspeicher zu übertragen gangskanal eines Registerkanals für den Opc- 60 und an Stelle dieses Zustandes in die zentrale Dateni-anden B, der von zwei in Serie geschalteten Puffern Verarbeitungseinheit einen neuen Zustand einzuge-105 und 106 gebildet wird. Der Kanal 100 c ist da- ben, so daß der Ablauf eines neuen Programms begegen der Eingangskanal eines Registerkanals für gönnen werden kann.
das Resultate, der aus zwei in Serie geschalteten Die Puffereinheit 100 enthält eine Parameterregi-
Puffern 108 und 107 besteht. Die Registerkanäle für 65 sterdatci 132 und eine Arbeitsspeicherregisterdatci
die Operanden A und R puffern die Operanden auf 133. Die Parameterregisterdatei 132 ist über einen
dem Weg zwischen dem Zentralspeicher und dem Kanal 134 und über den Kommunikationskanal 104
Rechenwerk. Der Resultatregisterkanal puffert da- mit dem Vektorparameterregister 125 verbunden
per Inhalt des Vektorparameterregisters 125 wird in die Parameterregisterdatei 132 übertragen, sobald ein Vektorbefehl aus dem Zentralspeicher zum Befehlsspeicherregister 128 geholt wird. Wenn das Befei-lsspeicherregister 128 beispielsweise einen solchen Vektorbefehl aufgenommen hat, erfolgt unmittelbar Jn Maschinensprache eine Übertragung der Parameterdaten aus dem Vektorparameters cgister 125 in die Parameterregisterdatei 132. Die Ausführung der daraufhin erfolgenden Operationen erfolgt vermittels der Indexeinheit 126a, des Befehlspufferspeichers 127 a, sowie der Anordnung 126 und der Steuereinheit 127· Dies bedeutet im einzelnen, daß im Verlauf der Zeit, in der das Rechenwerk 101 eine bestimmte Operation ausführt, die Anordnung 126 und die Steuereinheit 127 die nächste nachfolgende Operation zur Durchführung durch das Rechenwerk 101 vorbereiten. In der gleichen Zeit bereiten auch die Indexeinheit 126a und der Befehlspufferspeicher 127 a die nächstfolgende Operation vor. Schließlich nimmt während derselben Zeitdauer die öefehlsabrufeinheit 128 den daraufhin folgenden Befehl auf. «;.,,, Befehl wird somit im Rechenwerk 101 drei
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 beschriebene Puffereinheit 100 erreicht werden
kann.
In F i g. 8 ist ein Rechenwerk dargestellt, das mehrere Funktionseinheiten aufweist, die auf bestimmte Rechenoperationen spezialisic* c einander angeordnet und in v
einander verbunden werden
werk 101 beste
liehen gleichen
tionseinheiten über eigen;
gen. Das Rechenwerk er
die es gestatten, in einem
bilden. Im Rechenwerk ivi rr~«— c-_.
die hinter-Weise mit-Rechen-...i wesentderenFunkverfü-
zierei
an Produkt zu α ^
e er Befehl wird somit im Rechenwerk 101 drei üe, -onen später als der augenblicklich wirksame Befehi ausgeführt. Bei einer derartigen Organisation werden also vier Befehle gleichzeitig verarbeitet, indem sich jeder in einer verschiedenen Verarbeitungs-S hinsichtlich der anderen Befehle befindet, wie äes,nFig.7durchdieZeitenri,r2,73undT4 Ä hingewiesen, daß infolg, der Korn-
S?5Ä die in der Darstelangeordnet sind. if den Bezugs-
enthält eine Ex-5Λ
;ers dahingehend erhöht wird, daß mit hoher Ge-Bindigkeit komplexe Vektoroperationen in Maschincnsprache programmgesteuert durchgeführt Weameterregisterdatei 132 und in der Arbelsspcicherregisterdatei 133 vorkommende Abkür-„ngen sind in der am Ende angefugten Tabelle IV aufgeführt und erklärt. .
Die Parameter werden vorzugsweise vor Ausfuhrung e,nes Vektorbefehls aus dem Zentralspeicher m oie Register geladen. Die Vektoren werden hinter-Sander entsprechend den in der zentralen Daten-Verarbeitungseinheit enthaltenen Parameterwerten durch das Rechenwerk geschleust.
Im folgenden wird das durch die oben angegebenen Gleichungen beschriebene Bespiel einer Determinantenmultiplikation ausgeführt, wöbe, die Zuordnung zwischen den Speicherplätzen und den Elemen- ?en der Determinanten A B und C (auch Vektoren genannt) in der am Ende angefugten Tabelle V an-Kanal 305 eine
35 Kanal 309 mit einer Aus-
40
45
«am Fnde angefügten TabeUe VI is, die Adiessenfolgem"nd die Ar\ de'r Berechnung des Veki ÄT und C werden in ähnlicher Weise 300« und 300c sind
über e ne ^ ^ ^^ d n T1Ξ über einen Kanal 313 zu einem weiteren Ausgang ^f^Vj^ 306 führt. Ein vom Aus-Eingang dei^^Addκ«*°™^ kornmender Kanal gang der j^8"0^™ eines Akkumulators 314, an
f»hrt pn M^^m ßSSg über einen Kanal 316 der dessen we terem E "jg jt 306 angeschiOSsen
^Ferner verbindet ein Kanal 317 den Akkumulator ls*-4 F^er e^e e r^m spiegelbildlich angeordneten Akku-314 mit einemg SP «h crksabschniUs 300B. Ein
5o mutatt«-MS de Rc Akkumulators 314 mhrX über erster Ausgang Fin der £χ.
^Vakt önseUeit 302, während ein zweiter ^ Akkumuiators 314 über emen Kana Ä einem zweiten Eingang der Ausgabeeinheit 310 verbunden »t^ Exponentensubtraktionsemheit 302 ist mit einem Kanal -^O verbunderi, der d^
ist m, m + 1 ■ · m + 8 Die Erzeugung der Adres senfolge ist jeweils von dem speziellen Vekto b h ten
g nentensubtr
^ besitzt ein*
V (/MUiv
Puffereinheit 100 eingegeben.
pliziereinheit 312 des Rechenwerksabschnitts 300 A angeordnet ist.
Für das zwei Abschnitte aufweisende Rechenwerk ist von Bedeutung, daß die Operandeneingangskanäle 300 a und 300 c über Kanäle 323 bzw. 324 direkt an jede Funktionseinheit des Rechenwerksabschnitts 300/4 angeschlossen sind, wobei lediglich der Akkumulator 314 davon ausgenommen ist. Tm einzelnen führen die Kanäle 323 und 324 also über Kanäle 325 an die Multipliziereinheit 312, über Kanäle 326 an die Ausrichteinheit 304, über Kanäle 327 an die Addiereinheit 306, über Kanäle 328 an die Normalisierungseinheit 308 sowie schließlich direkt an die Ausgabeeinheit 310. Torsclhaltungen öffnen oder schließen die Kanäle des Rechenwerks auf Grund von Maschinen- oder Programmbefehlen.
Der Rechenwerksabschnitt 300B ist entsprechend dem Rechenwerksabschnitt 300 A aufgebaut. Dabei entspricht die Exponentensubtraktionseinheit 330 der Exponentensubtraktionseinheit 302, die Ausrichteinheit 332 der Ausrichteinheit 304, die Additionseinheit 334 der Additionseinheit 306, die Normalisierungseinheit 336 der Normalisierungseinheit 308, die Ausgabeeinheit 338 der Ausgabeeinheit 310, die Vornormafisierungseinheit 340 der Vornormalisierungseinheit 311, die Multipliziereinheit 341 der Multipliziereinheit 312 und der Akkumulator 345 dem Akkumulator 314
Ebenso entsprechen sich die folgenden Kanäle: 300 b und 300 c, 300 d und 300 a, 331 und 303. 333 und 305, 335 und 307, 337 und 309. 342 und 324, 343 und 323, 346 und 315, 348 und 318. 353 und 313, 344 und 316, 352 und 321, 351 und 320 sowie 347 und 319. Überdies führt ein Kanal 350 von der Exponentensubtraktionseinheit 330 zur Exponentensubtraktionseinheit 303, und ein Kanal 355 führt von der Ausgabeeinheit 338 zur Ausgabeeinheit 31P.
Wie bereits erwähnt wurde, verfügt jede Funktionseinheit der zwei Rechenwerksabschnitte 300 A und 300 B über eigene Zwischenspeicher, wie dies am Beispiel der Ausgabeeinheit 310 durch das Bezugszeichen 310 a angegeben ist. Die Additionseinheiten und die Exponentensubtraktionseinheiten haben eine Kapazität von 32 Bits; die Multipliziereinheiten haben eine Kapazität von 64 Bits.
Das Rechenwerk 101 enthält also eine Vielzahl von Funktionseinheiten zur Durchführung einer speziellen arithmetischen Operation. Jede Funktionseinheit mit Ausnahme des Akkumulators besitzt eigene Operandeneingänge. Durch Programm- oder Maschinenbefehle können die Funktionseinheiten in der verschiedensten Weise miteinander verbunden werden, so daß eine Vielzahl voneinander verschiedener arithmetischer Beziehungen realisiert werden können. Sind die Verarbeitungswege festgelegt, dann können die zu verarbeitenden Daten so durch die beiden Rechenwerksabschnitte geschickt werden, daß beispielsweise während einer Taktzeit unterschiedliche Operanden jeweils eine Funktionseinheit durchlaufen. . wodurch ermöglicht wird, daß mehrere A- und B-Operandenwörter hintereinander durch den Rechenwerksabschnitt strömen, in dem sie jeweils beispielsweise vier Verarbeitungsstufen durchlaufen. Dieses Verarbeirungsverfahren mittels zweier parallelgeschalteter Rechenwerkskanäle mit speziellen Funktionseinheiten, die in jeder denkbaren Weise untereinander verbunden werden können, gewährleistet eine sehr schnelle Verarbeitungszeit innerhalb des Rechenwerks bei entsprechend gleich schnell angelieferten und abschließenden Datenmengen.
Zur Erklärung der Wirkungsweise sei bemerkt, daß eine der im Rechner am meisten benötigten Operationen die Gleitkomma-Addition ist, die in vier Schritten ausgeführt werden muß. Diese Schritte sind: eine Subtraktion der Exponenten des A- und B-Operanden, ein Ausrichten der Mantissen vorzugsweise ίο nach rechts, eine Addition der Mantissen sowie eine eventuelle Nachnormalisierung des Resultats beispielsweise in Form einer Linksverschiebung. Diese Schritte sind in der am Ende angefügten Tabelle VII dargestellt.
Bei der Addition zweier Zahlenreihen oder Vektoren ist zu Beginn (Zeit /e) jede Funktionseinheit des Rechenwerks leer. Zur Zeit /, wird das erste Zahlenpaar α, und bx der Exponentensubtraktion unter zogen, die als erstes ausgeführt werden muß. Zur so Zeit L1 wird ein zweites Zahlenpaar a, und b3 dieser Exponentensubtraktion unterzogen, während das erste Zahlenpaar α, und ft, einen zweiten Schritt in Form der Mantissenausrichtung durchläuft. Dieses Verfahren wird weiter fortgeführt, bis zur Zeit /4 der Rechenwerksabschnitt derart gefüllt ist. daß jede Funktionseinheit bei jedem Schritt ein Zahlenpaar verarbeitet.
Das Rechenwerk 101 ist grundsätzlich 64-Bit orientiert. Alle Funktionseinheiten von F i g. 8 außer den Muitipliziereinheiten 312 und 341 empfangen 32 Bits und geben 32 Bits an ihren Ausgängen ab. Die Multipliziereinheiten geben dagegen 64 Bits ab. Mit Ausnahme einer Multiplikation und ei^er Division benötigen alle Funktionen sowohl für Operanden mit einfacher Wortlänge als auch für Operanden mit doppelter Wortlänge d'cselbe Verarbeitungszeit.
Festkomma-Zahlen werden vorzugsweise im Zweierkomplement dargestellt, während Gleitkomma-Zahlen als Exress-64-Zahl nach Vorzeichen, Mantisse und Exponent erscheinen.
Der besondere Aufbau des Rechenwerks in der Art eine« Verarbeitungskanals ermöglicht eine fließende Verarbeitung, die insbesondere bei der Anwendung auf Vektorbefehle besonders günstige ♦5 Eigenschaften hat. Die Anordnung von zwei parallelen Rechenwerksabschnitten gestattet es. daß zu jeder Taktimpulszeit an jeder der Ausgabeeinheiten 310 und 338 ein Resultat erscheint. Jeder Rechen werksabschnitt kann Teile anderer Befehle verarbeiten. Jeder Rechenwerksabschnitt enthält Funktionseinheiten, mit deren Hilfe insbesondere die Additionszeit für Gleitkomma-Additionen verkürzt werder kann. Die zueinander spiegelbildlich liegender Funktionseinheiten der beiden Rechenwerksabschnittt können jeweils miteinander kombiniert werden; diei gilt allerdings nicht für die Multipliziereinheiten. Di< Exponentensubtraktionseinheiten 302, 330 könncr eine Verarbeitungsstufe bilden, in der sie vonein ander getrennt oder miteinander kombiniert arbeiten Im Falle einer Kombination verarbeiten sie einet Operanden mit doppelter Wortlänge.
Die Ausrichteinheiten 304, 332 können bei Gleit komma-Additionen für Rechtsverschiebungen ver wendet werden. Die Norraalisierunpsptnheiten 308 H 336 dienen alle Nonnalisierangscr· .^missen, als« auch Linksverschiebungen. Die Addiereinheiten 306 334 werden vorzugsweise für Hochgeschwindigkeits operationen zur Ausführung von Gleit- -oder Fest
komma-Addilionen verwendet. Sie finden überdies Verwendung bei der Addition der sogenannten Pscudosumme oder des sogenannten Pseudoübcrlaufs, die aus der Multipliziereinheit kommen.
Bei der Verarbeitung von Vektoren ist ein Gleitkomma-Additionsbetrieb zur Anpassung an einen großen dynamischen Bereich wünschenswert. Das Rechenwerk 101 kann zwar sowohl Fest- als auch Gleitkomma-Additionen durchführen, doch wird seine wirtschaftliche Arbeitsweise hinsichtlich der Verarbeitungszeit und des Baueiemcniaufwands besonders bei Gleitkomma-Additionen nach der Tabelle VIl erkennbar.
Die Multipliziereinheit 312 kann eine Multiplikation von 32 Bits mit weiteren 32 Bits in einer Taktzeit durchführen. Infolge dieser Fähigkeit der Multipliyitreinheit passen diese Einheiten gut mit den übrigen Funktionseinheiten zusammen, da die Verarbeitungszeiten grundsätzlich gleich sind.
Die Multipliziereinheiten bilden gleichzeitig die Verarbeitungseinheiten für eine Division. Multiplikationen oder Divisionen mit Operanden mit doppelter Wortlänge erfordern mehrere Iterationen über die Multipliziercinheit, bevor das Resultat erhalten wird. Festkomma-Mulliplikationen und Gleitkomma-Multiplikationen mit Operanden mit einfachet Wortlänge werden nach einem Durchgang durch die MuI-üpli/ieranlwil erhalten. Die Multipliziereinheit 312 gibt zwei Doppellängenwörter mit je 64 Bits in Form einer Pstudosumme und eines PseudoÜberlaufs ab. In der Addiercinheit 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 Wertlange gewonnen werden, dann erzeugt die Multipliziereinheit 341 eine aus 64 Bits bestehende Pscudosumme und einen aus 64 Bits bestehenden Pscudoüberlauf. und die Psciidosumme und der PseudoÜberlauf werden dann in den Addiercinhciten 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 Saldierung in den Akkumulatoren 314 und 345. Die Akkumulatoren 314. 345 gleichen den Addiereinheiten, und sie werden fÜT spezielle Zwecke verwendet, in denen eine fortlaufende Saldierung erforderlich ist.
Eine Multiplikation mit Operanden mit doppelter Wortlänge erfordert eine solche laufende Saldierung, da vier getrennte 32· 32 Bit-Multiplikationen durchzuführen sind, worauf deren Zwischenergebnisse {Partialsummen) stellenrichtig in den Akkumulatoren aufaddiert werden. Eine Doppellängenmultiplikation erfordert deshalb acht Taktzeiten, bis das richtige Ausgangssigiial erscheint, während eine Einzellangenmultiplikation nur vier Taktzeiten benötigt. Eine Doppellängenmultiplikation bedeutet zwei 64-Bit-Gleitkommazahlen (56-Bit-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 erein aus 64 Bits bestehendes Resultat.
Eine Division ist die umfangreichste vom Rechenwerk auszuführende Operation, wobei die Fähigkeit einer Stellcnmultiplikation 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 xly = Q, dann kann der Rest aus der Beziehung R --- χ (y Q) gewonnen werden. Der Rest wird auf so viele Bits genau, als der Dividend mal Bits enthält. Die zur Bildung des Rests erforderliche Zeit addiert sich direkt zu der Zeit, die
t5 zur Bildung des Quotienten erforderlich war. Die Divisionszeit für Operanden mit einfacher Wortlänge wächst von 1 2 Taktzeiten bis zu 16 Taktzeiten bei der Erstellung eines Rests. Der Divisionslogarithmus erfordert, daß der Divisor normalisiert wird, nämlich
zo 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 aiien Funktionseinheiten sowie der Ausführung einfacher Datenverschiebungen, Boolescher Beziehungen usw., zu deren Durchführungen eine laktzcit im Rechenwerk 101 benötigt wird.
Die Speichermöglichkcit in jeder Funktionseinheit des Rechenwerks ermöglicht eine wirksame Trennung der einzelnen, in ilen 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 310 a angegeben ist.
Zu Fig. 9:
Nach einer Beschreibung der Umschaltanordnung an Hand der Fi g. 3 und 4 sowie einer Beschreibung der zentralen Datenverarbeitungseinheit 10 an Hand der F i g. 5 bis 8 folgt nun zweckmäßigenveise in einer Beschreibung der Fig."? die Darstellung der
♦5 Zusammenwirkung zwischen der zentralen Datenverarbeitungseinheit 10. der peripheren Datenverarbeitungseinheit 11 und der Speichersteuereinheit 18.
Die F i g. 9 und 4 betreffen die Umschaltanordnung, wobei F i g. 4 den in der penpheren Datenverarbeitungseinheit 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.
In Fi g. 9 ist eine Befehlsabrufeinheit 128dargestellt, die ein Ausgangsregister 128 ο aufweist, das in einer bevorzugten Ausführung eine Kapazität von 32 Bits hat. Das Register ist in mehrere Abschnitte aufgeteilt; ein erster Abschnitt 128 b mit einer Kapazität
von 8 Bits enthält den Operationscode, ein nächster Abschnitt 128 c enthält ein Adressenmerkmal von 4 Bits, und ein weiterer Abschnitt 128<f mit 4 Bits enthält normalerweise Daten zum Betrieb des Rechenwerks 101, mit denen ein Register bestimmt wird, das nicht zur Umschaltanordnung <
Schließlich ist ein weiterer Abschnitt 128e mi: ener Kapazität von 16 Bits vorgesehen, der ein Adressenfeld enthält.
25 26
Bei einem normalen Operationsablauf führt eine der Flip-Flop-Schaltung 72 ermöglicht (F i g. 4). Vor-Indexeinheit 126a, die ein Ausgangsregister 126 ft zugsweise ist die Leitung 53 an einem dritten (in enthält, einen Schritt im Zeitablauf 71 bis T4 aus. Fig. 9 nicht dargestellten) Eingang des Oder-Gatters Bei einigen Operationen wird durch die Indexeinheit 211 sowie nach einer Und-Vcrknüpfung mit der Lei-126a im Ausgangsregister 1266 ein Wort gebildet, 5 tung58, an der das Signal »Anrufen« liegt, an einen das der Summe aus dem Code im Abschnitt I28<? ersten, ebenfalls nicht dargestellten Eingang eines und aus dem Code im Indexregister 124 entspricht, Oder-Gatters 213. Zwei Eingänge des Oder-Gatters wobei der Code im Indexregister 124 durch das 213 sind mit den Ausgängen von Und-Gattern 212, Adressenmerkmal im Abschnitt 128c aufgerufen 214 verbunden. Das Und-Gatter212 hat zwei Einwurde. Eine solche Indexoperation entspricht also io gänge, von denen einer über die Leitung 202 das Sider bei Rechnern üblichen Adressenmodifikation mit- gnal SCW empfängt, während der zweite über die tels Indizierung. Leitung 58 das Signal »Anrufen« {PC) empfängt. Das
Die Adresse aus dem Ausgangsregister 1266 wird Und-Gatter214 ist in entsprechender Weise durch
dann weiter zur Steuerung des Operandenfiusses von die Koinzidenz der Signale SCP und »Anrufen« (PC)
und zum Rechenwerk 101 von der Anordnung 126 15 aktivierhar.
^f1S1". ... . «,, · , ο Damh auf der Ausgangsleitung 204 des Oder-Sobald im Abschnitt 1286 em dem Signal SCW Gatters 213 ein Signal erscheint und damit cine Ab- oder dem Signal SCP entsprechender Operationscode speicherung der im Register 126d befindlichen Codieerscheint, beginnt ein hinsichtlich der anderen Ope- rung in die durch den Inhalt des AdressenreRistcrs rationscodes verschiedener Operationsablauf. Zu- 20 208 bestimmte Speicherzelle erzielt wird muß zunächst wird der aus 8 Bits bestehende Code aus dem säl/Iich zu den Signalen »Feiiler« SCW \h\·· SCP Abschnitt 1286 in den Befehlspufferspeicher 127a das Signal »Anrufen« (PC) von seilen der pen >crcn übertragen, wonach er in einem Ausgangsregister Datenverarbeitungseinheit vorhanden sein N 1 hei 1276 des Befehlspufferspeichers 127a erscheint. An- entsprechendem Signalzustand auf den Lei· incen schließend wird dieser aus 8 Bits bestehende Code 25 56. 57. 45. 58, 55 53 wird also eine solch \b über einen Kanal 200 zur Steuereinheit 127 über- speicherung erfolgen können. Der {-esamte Betrieb
trapn. c . . . t,_ . . . -η··. ίΓ zentralen Datenverarbeitungseinheit kann auf
In der Steuereinheit 127 wird der aus 8 Bits be- diese Weise unterbrochen werden; andererseits kann
p?S% °? Γ einemÄ°uie f rtr, ! verarb?tet Jfr Betrich während einleitender oder vorbereitender
Enthalt der Code einen KW-Bcfehl. dann erscheint 30 Operationen in Teilen des Rechners außerhalb der
«n einer Leitung 202 und somU an der Leitung 42 zentralen Datenverarbeitungseinheit 10 aufrechterhal-
irp ΛΛ "? η ϊ ? SS58*!, eineP a" Werden Diese En^cheidung hängt von dem im
SCP-Befehl, dann W1rd an der Leitung203 und som.t Ausgangsreairtcr 128a der Befehlsfbrufeinheit »28
an der L eitung 41 das Signal SCP erzeugt. befindlichen Befehl ab, nätnhchdavoΓ t Ab
Wenn die penphere Datenverarbeitungseinheit 11 35 schnitt 1286 der Befehlsabrufeinheit dieCodegruppe
nach F1 g. 4 auf der Leitung 41 oder auf der Leitung für das Signal .VCW, das Sienal 5CP oder ein anderes
42 ein Signal feststellt, dann wird sie nach einer be- Sip.nai vorhanden ist. nal5Cr Clder ein anclircs
stimmten Zeit über die Leitung 58 an die Steuerein- An der Lei'u"" 51 1™ n
heit 127 das Signal »Anrufen«" (PO senden, das es das Sienal »Ar« wen
der Steuereinheit 127 ermöglich, ihrerseits ein Signa. 4o Da^rhS?^^?.^^,?>jS£m
»uf einer Leitung204 zum Rechenwerk 101 zu über- wurde. In Fiε 9 ist !„ n£?r. f 8S?
tragen. Dieses zu.etzt genannte Signal hat auch zur AusgangsUungSa L«da m„ efnemEm'
Folge daß der im Register 127d der Anordnung 126 gang über eine^eitun^ff "n dt sS,r Sit I '7
enthaltene Code zu einer bestimmten Speicherstelle und mit einem weiteren Fin aieueronneit 1-/
übertragen wird. Diese übertragung erfolp über eine »5 101 ™ w "h^sTe^ S t
Leitung 205 eine Leitung 206 innerhalb des Rechen ilt Jfi ™
l·.^"?«2,05::™? ^"ΙΛ^6_:™!Ϊ^.1Κ_Κ_^η: sPiels^ bei einem überlauf im Rechner 101 er-
g p
werks 101, eine Leitung 207, emen Zwischenspeicher zeugt
XUe sowie über den K^murikationskanal 10^ zum gruppe
^abzuspeichernde Codierung aus dem Zwi- 5o ASS
schenspeicherl26e wird in die Speicherstelle einge- diesen Eingang
schrieben, die durch den Inhalt deVAdressenregisters gung des ρΚ^,ιΓ,
208 bestimmt ist Der Inhalt dieses Adressenregisters η J D?e sSereE 131
kennzeichnet eine Speicheradresse, die vorzugsweise schaltung der
nicht anderweitig benutzt wird und speziell für solche 55 die Ι'^ΛΆί^
Zwecke vorgesehen ist. Dies kann durch eine ein- Datenveraibeilumad
fache Festverdrahtung innerhalb des Rechners er- Daten faSSSS
reicht werden. Die Adresse aus dem Adressenregister
208 wird durch Aktivieren des Gatters209 unter der Zu Fig. 10-
SS d LdtUng204 anliegenden Si- 60 D iUS den bisherigen Ausführungen zur periphere«
m führen die Leitungen 202 S^SÄlSS^Tp1? J^V"' «nd 203 jeweils einen Eingang eines Oder<iatters erung der " eniSe^ £T ^ ^' ^ St?« ZU, an dessen Ausgangsleitung über eine Verzö- spTelf öie'peSS^DaSS »u^*?™^ Ιβ
geningseinheit 210 ein Taktimpuls arf der Leitung 54 65 in P £ ^g5^JSfaTJZfcT**"*"*1 '' «schönt, der in der peripheren Datenverarbeitung^ tralen SSiZSbS^iiSSiS0^ eraheftll nach dem Setzen der Flip-Flop-Schaltung Komponenten H^ * ? fn
73 das Setzen der Hip-Hop-Schaltung 71 und/odef ff S
27 28
eilen Datenverarbcitungscinheiten in der peripheren speicher mit den Speichern 12 bis 15 ist mit seine
Datenverarbeitungseinheil U angewendet wird. In Speichersteuereinheit 18 verbunden, die ihrerseit
der peripheren Datenverarbeitungseinheit 11 sollen über den Kanal 32 mit der peripheren Datenver
von einer Gruppe von virtuellen Datenverarbeitungs- arbeitungscinheit 11 verbunden ist. Die virtuelle
einheiten Programme verarbeitet werden. Bei stark 5 Datenverarbeitungseinheiten P0 bis P7 sind über einei
variierenden Programmen wird vorteilhafterweise Ausgangskanal 402 sowie über einen Eingangskana
von einer fest zugeordneten Zeitteilung zwischen den 403 mit dem Rechenwerk 400 verbunden. Überdie:
virtuellen Datenverarbeitungseinheiten abgegangen. sind sie über Kanäle 410 bis 417 mit einem Kommu
In der in Fig. 10 dargestellten Anordnung ist es nikationskanal408 verbunden. Eine Puffereinheit41!
möglich, einigen virtuellen Datenverarbeitungsein- io der peripheren Datenverarbeitungseinheit 411 enthäl
heiten wesentlich mehr Zeit /uzuteilen als anderen. achi einzelne Ein-Wort-Pufferregister 420 bis 427
Außerdem kann die Zeitzuteilung zwischen den vir- jeweils eines dieser Pufferregister ist dabei einer der
tuellen Datenverarbeitungseinheiten verändert werden. virtuellen Dalenverarbeitungseinheiten P11 bis P7 zugc-
Aus Fig. 10 ist zu erkennen, daß die virtuellen ordnet. Die virtuellen Datenverarbeitungseinheiten
Datenverarbeitungseinheiten P1, bis P. der peri- »s P0 bis P7 sind mit einer Zuordnungssteuerung418
pheren Datenverarbeitungseinheit 11 von einem versehen, die ein Teil der in Fig. 10 schemalisch als
Rechenwerk 400 der peripheren Datenverarbeitungs- Zeiger dargestellten Schrittschaltvorrichtung 401 dar-
einheit 11 versorgt werden. stellt. Die Zuordnungssteuerung 418 wird mit Hilfe
Das Prinzip der Zeitteilung, bei dem ein Rechen- von Taktimpulser. betrieben. Die Puffereinheit 419
werk mit virtuellen Datcnverarbeitungseinheiten zu- ao wird von einer Puffersteuereinheit 428 gesteuert. Der
sammenarbeitet, wird als bekannt vorausgesetzt. Die Kanal 408 ist über einen Kanal 429 mit dem Rechen-
hier beschriebene Anordnung ermöglicht jedoch eine werk 400 verbunden. Die virtuellen Datenverarbei-
höchst flexible Zuordnung der am Zeitteilbetrieb be- tungseinheiten P0 bis P7 sind ferner mit einem als
teiiigten Elemente sowie eine besondere Steuerung Festwertspeicher ausgebildeten Speicher 430 ausge-
der Zeitteilung. Die virtuellen Datenverarbeitungs- as stattet. In einer bevorzugten Ausführung besteht der
einheiten P0 bis P7 können so aufgebaut sein, wie Speicher 430 aus einem fest verdrahteten Diodenfeld
beispielsweise in der USA.-Patentschrift 3 337 854 für schnellen Zugriff.
beschrieben ist, in der den virtuellen Datenverarbei- Eine Speicheranordnung 431 dient der Datenüber-
tungseinheiten feste Zeitspannen zyklisch zugeordnet tragung zwischen dem Kommunikationskanal 408,
sind. Mit der hier beschriebenen Anordnung wird da- 30 den Peripheriegeräten und weiteren Steuer- und
gegen ermöglicht, die zeitlichen Zuordnungen in Ab- Datenkanälen. Bei dem hier beschriebenen Ausfüh-
hängigkeit von den vorzugsweise von Programmen rungsbeispiel enthält die Steueranordnung 431 insge-
gestellten Aufgaben steuerbar zu machen. samt 64 Register.
Von den acht virtuellen Datenverarbeitungsein- Die an dem Zeitteilbetrieb beteiligten Einheiten heiten P0 bis P7 der peripheren Datenverarbeitungs- 35 sind das Rechenwerk 4*0, der Speicher 430, die einheit 11 (Fig. H)) kann während einer Taktzeit Speicheranordnung431 mit den Registern CR0 bis nur jeweils eine virtuelle Datenverarbeitungseinheit CiR, ... und die Puffereinheit 419 mit den Ern-Wortüber das Rechenwerk 400 verfügen: das bedeutet, PufTerregistcrn 420 bis 427, wobei die Puffereinheit daß während einer Taktzeit jeweils nur eine virtuelle 419 die Verbindung zwischen der peripheren Daten-Datenverarbeitungseinheit mit dem Rechenwerk 400 40 Verarbeitungseinheit 11 und dem Zentralspeicher herverbunden ist. Die Auswahl unter den virtuellen stellt.
Datenverarbeitungseinheiten trifft eine Schrittschalt- Der Speicher 430 enthält einen bestimmten Provorrichtung 491, die in Fig. 10 durch einen rotie- grammvorrat, der mit Ausnahme eines Zugriffs von renden Zeiger dargestellt ist. Mit jedem Taktimpuls den Programmzählern der virtuellen Datenverarbeiwird der Zeiger um eine Stellung weiterbewegt, wo- « tungseinheiten nicht zugänglich ist. Der Programmbei jede Stellung eine Verarbeitungszeitspanne von vorrat enthält ein Grundausfiihrungsprograrnm und der Länge eines Taktimpulses darstellt. Insgesamt 16 wenigstens ein Steuerprogramm für jedes Peripherieverschiedene Stellungen des Zeigers bezeichnen Zeit- gerät, das an den Rechner angeschlossen ist. Die spannen 0 bis 15. Das Rechenwerk 400 wird dabei Zykluszeit des Speichers 430 beträgt 20Nanosekunjeweils mit derjenigen virtuellen Datenverarbeitungs- 5° den, und er liefert einen Befehlsvorrat aus 32-Biteinheit verbunden, die durch die Codegruppe (bei- Befehlen für die virtuellen Datenverarbeitungseinspielsweise 0 bis 7) bestimmt ist, die vom Zeiger ab- heiten P0 bis P7. Die Kapazität des Speichers 430 begetastet wird. In einem Extremfall wird während der trägt für die Programme 1024 Wörter. Er ist in Dauer des gesamten Zyklus nur eine bestimmte vir- 256 Wortbauemheiten unterteilt, so daß es möglich tuelle Datenverarbeitungseinheit mit dem Rechen- 55 ist, Programmabschnitte abzuändern, ohne den gewerk 400 unter Ausschluß aller übrigen virtuellen samten Speicher neu aufzubauen.
Datenverarbeitungseinheiten verbunden, während im Die Steuerprogramme für die Peripheriegeräte entanderen Extremfall alle virtuellen Datenverarbei- halten Steuerfunktionen für die zu den Peripherietungseinheiten für die Dauer gleicher Zeitabschnitte geräten gehörenden Pufferspeicher sowie DatenSbermit dem Rechenwerk 400 verbunden sind. Die An- 60 tragungsfunktionen. Auf diese Weise können mechaordnung, die diese Vielseitigkeit der Zuordnung er- nische Bewegungsabläufe in den Peripheriegeräten möglicht, ist in den Fig. II bis 13 im einzelnen ge- direkt durch Programme gesteuert werden, und es η au dargestellt wird eine jeweils speziell für jedes Peripherie«""-*·
eigens durchgeführte andere Festverdrahtung K . :·
Zu Fig. 11: 65 tigt. Durch das Arbeitsprogramm können Parameter
zur Variation eines Grundprogramms vorgesehen
Der Aufbau der peripheren Datenverarbeitungs- werden. Solche Parameter sind im Zentralspeicher
einheit 11 ist aus Fig. 11 zu erkennen. Der Zentral- oder in "" " "
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 Datenverarbeituugseinheit adressierte Speicher wird durch die Adressieruflgsart 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 Zentraispeicher größere Zugriffszeiten als der Festwertspeicher hai, 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 /t geordnet. Deshalb arbeitet am Anfang nur die virtuelle Datenverarbeitungseinheit, die durch den Schalter bestimmt wird. Da die Programmzähler aller virtuellen Datenverarbeitungseinheiten P0 bis P1 ursprünglich auf 0 stehen, beginnt die ausgewählte virtuelle Datenverarbeitungseinheit mit der Ausführung ihres Programms, beginnend mit der Adresse 0 im Speicher 430. An dieser Adresse befindet sich ein Einlcitungsprogramm. Der Schalter auf dem Bedienungspult 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 IS. Die Puffereinheit 419 besteht aus acht 32-Bit-Datenregislern, acht 24-Bil-Adtesscnregistern und entsprechenden Steuerkreisen. Von einer einzelnen virtuellen Daten-Verarbeitungseinheit aus gesehen erscheint die Puffereinheit 419 lediglich als ein einzelnes Datenregistsr 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äisebenen 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 Zentralspcicher bestimmt ist; die Prioritätszuordnungen sind in einem Register der Speicheranordnung 431 festgehalten. Die Prioritäten sind entsprechend der Nummer der jeweiligen virtuellen Datcnverarbeitungseänheit angeordnet; alle Anfragen von Seiten einer bestimmten virtuellen Datenverarbeitungseinheit erhalten die Ptioritäts Zuordnung, die in 2 Bits des entsprechenden Register in de Speicherenordnung 431 verschlüsselt ist. De; Inhalt dieses Registers wird durch das Ausführungs programm bestimmt; die Prioritätszuordnung für jedi virtuelle Datenverarbeitungseinheit wird vom auszu führenden Programm bestimmt. Zusätzlich zu diesei 2 Prioritäts-Bits kann eine Zeitkennung mitvurwen det werden, damit die Fälle gleicher Prioritätszuord nung gelöst werden können.
Die Register in der Speicheranordnung 431 ent halten jeweils 32 Bits. Jedes Register kann von üei virtuellen Datenverarbeitungseinheit adressiert wer den, und die Einheit, mit der es verbunden ist, kam aus dem Register lesen oder in das Register schrei bcn. Die Register der Speicheranordnung 431 sine Verbindungsglieder zu allen Peripheriegeräten ein schließlich des Bedienungspults. Einige Parametei zur Steuerung des Rechnerbetriebs werden ebcnfalh in den Registern der Speicheranordnung 43? gespeichert, von denen aus die Steuerung erfolt.;.
Zu Fig. 12:
In der Speicheranordnung 431 sind vorzugweist als Flip-Flop-Sehaltungen ausgeführte Speicherelemente enthalten, die nach Fig. 12 zwei F.ing.ingt aufweisen. Ein (ingang ist mit der peripheren ! Juten-Verarbeitungseinheit 11 verbunden, wahrem; dei andere Eingang einem Peripheriegerät zur Verfugung steht. Von der peripheren Datenverarbeitungso ihel· kommende Daten werden synchron mit dem Takt impuls des Rechners in das Speicherelement eingegeben. Eine Eingabe von Daten in das Speicher element von einem Peripheriegerät kann durch Zwischenschaltungsanordnungcn zwischen dem Pcri phcriegcrät und dem Speicherelement erfolgen; die Eingabe muß nicht notwendigerweise synchron mi dem Rechnertakt erfolgen.
Zu Fig. 13:
In Fig. 13 ist eine Anordnung dargestellt, mi deren Hilfe die verfügbare Zeit einer oder mehrere: der virtuellen Datenverarbeitungseinheiten P0 bis P. so zugeordnet werden kann, daß diese Datenverarbei tungseinheiten den anderen vorgezogen werden ode: umgekehrt so zugeordnet werden kann, daß die Zei auf alle virtuellen Datenverarbcitungscinheiten gleich mäßig aufgeteilt wird.
Die Steuerung der Verteilung der Zeitzuordnunj für die einzelnen virtuellen Datenverarbeitungs einheiten P0 bis P1 erfolgt mit Hilfe von zwei Spei chersegmenten 431 η und 431 m aus der Speicher anordnung 431.
Diese von Registern gebildeten Speichersegment« haben jeweils eine Kapazität von 32 Bits; sie sine in acht Abschnitte zu je 4 Bits unterteilt. So enthäl beispielsweise ein Abschnitt 440 des Speichersegment! 431 η 4 Bits α bis el, die jeweils an die Eingänge vor Und-Gattern 441 bis 444 angelegt sind. Ein Ab schnitt 445 desselben Spcicherscgments enthält eben falls 4 Bits α bis el, die an die Eingänge von Und Gattern 446 bis 449 angelegt sind. Das erste Und Gatter am Ausgang jedes Abschnitts, an das da; Bit α angelegt ist, beispielsweise die Und-Gatter 441 446 ist an den Eingang eines Oder-Gatters 450 ange schlossen. In entsprechender Weise sind alle Und Gatter 442, 447 .. ., an die die Bits b der Abschnittt
angelegt sind, mit dem Ausgang an den Eingängen eines Oder-Gatters 441 angeschlossen. Ebenso ist ein Oder-Gatter 452 an die Ausgänge der Und-Gatter 443, 448 angeschlossen, an die die Bits c der Abschnitte angelegt sind. Schließlich sind die Ausgänge der Und-Gatter 444, 449 ..., an die die Bits d angelegt sind, mif den Eingängen eines Oder-Gatters 453 verbunden.
Die Ausgänge der Oder-Gatter 450 bis 453 führen zu einem Register 454, dessen Ausgang mit einem Decodierer 455 verbunden ist. Acht Ausgangsleitungcn 463 bis 470 des Decodieren steuern jeweils die Ein- und Ausgänge der virtuellen Datenverarbeitungseinheit P0 bis P-.
Die Zuordnungssteuerung 418 empfängt Taktimpulse von einem Taktgeber 460λ über eine Leitung 460. Sie arbeitet vorzugsweise als 16-stufiger Ringzähler, bei dem jede Stufe eine Ausgangsleitung aufweist. Die erste Ausgangsleitung 461 aus der ersten Stufe des Ringzählers führt zum zweiten Ein- ao gang der Und-Gatter 441 bis 444. In gleicher Weise ist die zweite Ausgangslcitung 462 der zweiten Stufe des Ringzählers mit den /weiten Eingängen der Und-Gatier 446 bis 449 verbunden. Die restlichen vierzehn Ausgangsleitungen der Zuordnung^teuerung 418 sind in entsprechender Weise mit jeweils vier weiteren Und-Gattern verbunden.
3 der 4 Bits des Abschnitts 440, nämlich die Bits b, c und d. kennzeichnen eine der virtuellen Datenvcrarbeitungseinheilen P0 bis P. durch ein entsprechendes Signal auf einer der Ausgangsleitungen des Dccodierers 455. Das vierte Bit, nämlich das Bit a des Abschnitts 440. dient zur Freigabe bzw. zur Sperrung der Decodierung, so daß ein bestimmter Zeitabschnitt frei, d. h. unbezogen bleiben kann.
Es ist zu erkennen, daß das Rechenwerk 400 über Kanäle 470 mit den Speichersegmenten 431 m und 431/1 verbunden ist, so daß das Rechenwerk programmgesteuert die gewünschten Zuordnungen in den Speichersegmenten 431 m und 431 η durch- ,.. fuhren 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 Jen Speichersegmenten 431 m und 431 η enthaltenen Codierung gleichmäßig oder auch ungleichmäßig den virtuellen ,. Datenverarbeitungseinheiten zugeteilt werden.
Aus der Betrachtung der Steuerleitungen am Ausgang des Dccodierers 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 Ausgungslcitungcn 463 bis 470 freigegeben oder verhindert werden. Im einzelnen führt die Ausgangsleitung 463 zu einer Koinzidenzschaltung 490, an die auch die Leitung 6; 478 angeschlossen ist. Eine Koinzidenzschaltung 500 ist mit der Ausgangsleitung der virtuellen Datenverarbeitungseinheit Pn und mit der Ausgangslcitung 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 arbeitet gleichzeitig jeweils nur eine der virtuellen Dalenverarbeitungseinheiten 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.
Tabelle I
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 - FF 73 · FFTT · FF 72.
FF71: (»Anruf«, gesetzt durch SCP + SCW zur Anzeige der speziellen Programmsituation für die zentrale Datenverarbeitungseinheit): Setzen FF 71 = FF 73 · FH\ ■ ΤΤΊ1 ■ c', wobei c = SCP + SCW.
Rücksetzen FF 71 von Seiten der peripheren Datenverarbeitungseinheit am Ende der Operation.
FF72: (»Schaltanforderung«, gesetzt durch SCW-I »Fehler« zur Anzeige der speziellen Programmsituation der zentralen Datenverar-
beitung^inheit):
Setzen FF72 = FF73 · (FTH ■ TFTl ■ s'; wobei s = SGW + »Fehler«. Rücksetzen FF 72 von Seiten der peripheren Datenverarbeitungseinheit am Ende der Operation.
FF77: (»Anrufe-Kennzeichen):
Setzen FF 77 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 Datenverarbeitungseinheit zur Anzeige für die zentrale Datenverarbeitungseinheit, daß eine Anrufoperation nicht durchzuführen ist.
FF44: (»Umschalte-Kennzeichcn):
Setzen FF 44 von Seiten der peripheren Datenverarbeitungseinheit zur Anzeige für die zentrale Datenverarbeitungseinheit, daß eine l'mschaltopcration durchzuführen ist. Rücksetzen FF 44 von Seiten der peripheren Datenverarbeitungseinheit zur Anzeige für lie zentrale Datenverarbeitungseinheit, daß eine l'mschaltoperation nicht durchzuführen ist.
FFlS: (»Betricbserlaubnis«):
Setzen FF75 von Seiten der peripheren Dalenvcrarbcitungseinhcit, wenn ein Betrieb der zentralen Datenverarbeitungseinheit erwünscht ist.
Rücksetzen FF75 - FF77 · FF71 FF72; d. h.: bei (FF77 W (& Fehler), also bei fehlende*
Seiten der peri ^
cinhcit und 'be,
I 934
33
' 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 FFSO = FF77 FFIl. Rücksetzen FFSO von Seiten der peripheren Datenverarbeitungseinheir nach Rückstellung von FF 71 und FF 72.
FF71: (»Umschalten« befiehlt den Beginn der Umschaltoperation von Seiten der zentralen Datenverarbeitungseinheit): Setzen FF71 = FF 44 ■ FF72. Rücksetzen FF71 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstellung von FF 71 und FF FF74· (»Anruf ausgeführt« zur Rückmeldung an die periphere Datenverarbeitungseinheit): Setzen FF74 = CCC.
Rücksetzen FF74 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstellung von FF 71 und /7F72.
FF78: (»Umschaltung ausgeführt« zur Rückmeldung an die periphere Datenverarbeitungseinheit):
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 Speichersteuereinheii ist. Rücksetzen FF78 von Seiten der peripheren Datenverarbeitungseinheit nach Rückstellung von FF 71 und FF 72.
Zeit I
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 1 10 0 110 0 0 110 0 110 0 0 1101100001
110 110 00100000
00110000
00100010
10100010
10 10 10
0 I 10 0 10 0 0 0 0
1100110000 1 100100011 1 1 1 1 10001 1 1111101011 1111101111
Neubeginn derperipheren Datenverarbeitungseinheit
»Fehler«
»Umschalten« »SCP« -+C-* »Anrufen«
Ablaufdiagramm zur Umschaltanordnung am Beispiel:
Automatische Umschaltung und Anrufverarbeitung bei fortwährend betriebener zentraler Datenverarbeitungseinheit.
Bedeutung der Zeiten I bis VI:
warten auf eine Anfrage »SCP*, »SCW« oder »Fehler« von der zentralen Datenverarbeitungseinheit, »SCW«-*C sowie S ^ »Anrufen« sowie »Umschalten« II Tastimpuis,
III Beschicken von FF 71 und oder FFIt,
IV Beginn der Operation auf Seiten der peripheren Datenverarbeitungseinheit,
V »Anruf ausgeführt«,
VI »Umschaltung ausgeführt«.
Zeit I II 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 100010 0 000 10 00100000
1000110000 10 0 0 10 0 0 0 10 0 10 0 0 0 0 10 0 10 0 0 10
1 0 0 0 1 1 0 i) 0 0
1 0 0 0 1 0 0 0 1 0
1 0 1 0 1 0 0 0 1 0
1 0 1 0 1 0 1 0 1 0
10 0 0 110 0 0 0
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
»Fehler« -+S-* »Umschalten« »SCP« -.* C -v »Anrufen« —Γ sowie S-* »Anrufen« sowie »Umschalten«
Ablaufdiagramm zur Umschaitanordnung am Beispiei-
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 H.
Bemerkung zu »/4«: Die periphere
Datenverarbeitungseinheit leitet
eine (Pseu(Jo)Umschaltung ein, indem FF79 auf »Ein« gesetzt wird.
Bemerkung zu »B«:
Zwar wird hier FF80 auf die übliche Art gesetzt, wodurch eine automatische Anrufverarbeitung in Gang kommt; die periphere Datenverarbeitungseinheit leite! aber infeige FF44 eine (Pseudo)Umschaltung ein. indem das FF79 auf »Ein* gesetzt wird.
35
Tabelle IV Parameter-Datei
SA Speiche ι Startadresse 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 Durchläufe in der inneren Schleife N Φ Anzahl der Durchläufe in der äußeren Schleife . 1 / Adresseninkrement für die innere Schleife N Φ Adresseninkrement für die äußere Schleife
Tabelle V
Arbeits-Datei
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
Die Dominante,* * reihend auf & Speicherstellen ist spaltenmäßig auf die Speicherstellen
Ult „ SSeC ist reihenmäßig auf die Speicherten
m bis zn + 8 verteilt
Zu Beginn der Multiplikation wird:
SA = fc NV = 3
Al==\
SC = m
Tabelle VI
Adressen- und Steuerungsablauf für die Determinante A zur Durchführung der Multiplikation
gemäß Tabelle V
Schritt SA^ Operation NV- \~» VC VC IC
1 Nl - 1 -+ AA N Φ - 1 -+ Φ C 2 2
AA + 1-* IC
2 FC-1-» AA 1 2
AA +1-, VC
3 FC-I-. .AA 0 2
SA- *vc NV - 1 - »ve
4 /C-I- »AA 2 1
/1/4 + 1- »IC
5 FC-I- »AA 1 1
/4/4+1- + VC
6 FC-I- + AA 0 1
SA- + VC NV-I- -+VC
7 IC-I- + AA 2 0
/4/4 + 1- ■+IC
8 FC-I- -+AA 1 0
/4/1 + 1 - -+VC
9 FC - 1 -+AA 0 0
SA + \Φ -+VC SA NV - 1 -+VC
10 NI- 1 -+AA,. ΦC - 1 -^ Φ C 2 2
AA + 1 -+IC
11 FC- 1 -+AA 1 2
-+VC
/4 Adresse
2 *
2 fc + 1
2 /c + 2
2 *
2 fc + 1
2 fc + 2
2 fc
2 fc + 1
2 fc + 2
1 fc + 3
Ä + 4
(Tabelle VI Fortsetzung)
Schritt Operation ve IC Φ C A Adresse
12 AA+ X-+AA
VC - 1 -+VC
0 2 X A + 5
13 SA^AA NV-X-* VC
IC-I-* IC
2 1 1 k + 3
14 AA + X-+AA
VC-X-* VC
1 1 I A+ 4
15 AA + 1 -+AA
VC-X-* VC
0 1 1 A + 5
16 SA-* AA NV-X^-VC
IC-X-* IC
2 0 1 A + 3
17 AA+ X-* AA
VC - X -+ VC
1 0 1 A+4
18 AA + X^AA
VC-X-+VC
0 0 1 A + 5
19 SA + Λ Φ -+ AA, SA NV-X-* VC
NI- X-+IC 0C - Ϊ -*<I>C
2 2 0 A +6
20 AA+X-* AA
VC- X-+VC
1 0 A + 7
21 AA+ X-* AA
VC-X-* VC
0 2 0 A + 8
22 SA -+AA NV-X^VC
IC-X-+IC
2 1 0 A+ 6
23 AA + X-+AA
VC - 1 -* VC
1 1 0 A + 7
24 AA + X-* AA
VC-X-* VC
0 1 0 A + 8
25 SA-* AA NV-X-+VC
IC-X-+ IC
2 0 ΰ A + 6
26 AA+ X-+AA
VC-X-+VC
1 0 0 A + 7
27 AA+ X-* AA
VC-X-* VC
0 0 0 A + 8
Tabelle VII
Beispiel für Gleitkommaadditionen im Rechenwerk 101
Zeit
'. I ',
arb2
avbi
'. U
Subtraktion des Exponenten ...
Ausrichtung der Mantissen
Addition der Mantissen
Nachnormalisierung des
Resultats
avbx SA
α2, bt
avbt
fl2, b„
avb,
Im selben Rechenwerk befinden sich zur Zeit J1 vier verschiedene Wortpaare o„ ft,; i = 1 ~4 in vi<
rcrhli*r{pnr>n RparKwiluno^liifen!
verschiedenen
Hierzu 2 Blatt Zeichnungen

Claims (9)

Patentansprüche *
1. Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage mit einer zentraten Datenverarbeitungseinheit, einer peripheren Datenverarbeitungseinheit und einem gemeinsamen Speicher, dadurch gekennzeichnet, daß die periphere Datenverarbeitungseinheit (11) so ausgebildet ist, 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, ao das anzeigt, daß die zentrale Datenverarbeitungseinheit (10) ohne Programmwechsel weiterarbeiten kann, oder ein zweites Signal (SCW)1 das anzeigt, daß ein Programmwechsel erforderlich ist, und daß eine Schaltung (43, 44) vorge- as sehen ist, die auf das zweite Signal (5CH0 und auf das Freigabesignal anspricht und in der zentralen Datenverarbeitungseinheit (10) die Bearbeitung des nächsten von der peripheren Datenverarbeitungseinheit (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 oder zweite Signal (SCP bzw. SCW) nach einer vorbestimmten Verzögerungszeit freigibt.
3. Anordnung nach Anspruch 1 oder 2, gekennzeichnet durch eine Schaltung (220, 53) zur Übertragung eines von der zentralen Datenverarbeitungseinheit (10) stammenden Fehlersignals zu der peripheren Datenverarbeitungseinheit (H), 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 (SCW) 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 Anordnung (126) enthalten ist, die in den Speicher (12 bis 15) eine Codegruppe überträgt, die den Stand des in der zentralen Datenverarbeitungseinheit laufenden Programms anzeigt.
7. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß in dem Speicher (12 bis 15) ein Speicherplatz zum Speichern der Codegruppe reserviert ist und daß der reservierte Speicherplatz für die periphere Datenverarbeitungseinheit zugänglich ist
8. Anordnung nach Anspruch 5 und nach Anspruch 6 oder 7, wobei die zentrale Datenverarbeitungseinheit ein Rechenwerk, ein Befenlsabrufregister zur Übermittlung von Befehlen zu dem Rechenwerk sowie einen Adressengenerator zur Erzeugung von Steuercodegruppen fur die Steuerung des Einspeicherns und Abrufens von Operanden zwischen dem Speicher und dem Rechenwerk aufweist, dadurch gekennzeichnet, daß das Befehlsabrufeinheitsregister (128) einen Abschnitt (1286) aufweist, in dem entweder em Aufruf- und Wciterbearbeitungsbefehi gespeichert wird, wenn die zentrale Datenverarbeitungseinheit (10) ohne Programmwechsel weiterarbeiten kann, oder der Aufruf- und Wartebefehl, wenn ein Prog;ammwechsel erforderlich ist, daß mit diesem Abschnitt (128*) des Befehlsabrufeinheitsregisters (128) ein Decodierer (201) verbunden ist, der entweder das erste Signal (SCP) auf einer ersten Ausgangsleitung (41) erzeugt, wenn in dem Abschnitt (128 ft) ein Aufruf- und Weiterbearbeitungsbefehl steht, oder das zweite Signal (SCW) auf einer zweiten Ausgangsleitung (42) erzeugt, wenn in dem Abschnitt (1285) 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 (5CP, SCW) des Decodieren (201) gesteuertes Gatter (209) zur Weiterleitung der genannten Codegruppe an den reservierten Speicherplatz vorgesehen ist.
DE1934365A 1968-07-09 1969-07-07 Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage Expired DE1934365C3 (de)

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 DE1934365B2 (de) 1973-08-09
DE1934365C3 true 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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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
DE1934365B2 (de) 1973-08-09
GB1267384A (en) 1972-03-15
NL172008B (nl) 1983-01-17
JPS505542B1 (de) 1975-03-05
CA932868A (en) 1973-08-28
BE735858A (de) 1969-12-16

Similar Documents

Publication Publication Date Title
DE1934365C3 (de) Umschaltanordnung für eine Multiprogramm-Datenverarbeitungsanlage
DE2724125C2 (de)
EP0079471B1 (de) Schaltungsanordnung und Verfahren zur Bildung von Skalarprodukten und Summen von Gleitkommazahlen mit maximaler Genauigkeit
DE1942005B2 (de) Datenverarbeitungsanlage zur aufnahme und abgabe von digitalen daten und zur ausfuehrung von operationen an den daten
DE1813916C3 (de) Elektronische Datenverarbeitungsanlage
DE2753062C2 (de) Einrichtung zur wiederholten Durchführung von Programmschleifen
DE2246968C2 (de) Einrichtung zur Multiplikation zweier Gleitkommazahlen
DE3114934A1 (de) Zentrales subsystem fuer eine datenverarbeitungsanlage
DE2746505C2 (de)
DE2930441C2 (de) Anzeigeeinrichtung zur wahlweisen dynamischen oder statischen Anzeige
CH644461A5 (de) Digitale multipliziereinrichtung.
DE2222197C3 (de) Anordnung zum Auf- bzw. Abrunden von Binärzahlen
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2801543A1 (de) Datenverarbeitungsanlage
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE3507584C2 (de)
DE2830334C2 (de)
EP0265555B1 (de) Verfahren und Schaltungsanordnung zur Addition von Gleitkommazahlen
DE2746355A1 (de) Einrichtung und verfahren zur wahlweisen multiplikation oder division zweier als binaerzahlen vorliegender operanden
DE2425574A1 (de) Adressierung von zeichen in einem wortorientierten system eines rechenautomaten
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher
DE1934441C3 (de) Befehlswerkgesteuertes Rechenwerk für einen Digitalrechner
DE2220329C3 (de) Schaltungsanordnung zum Umsetzen einer in Gleitkomma-Darstellung ausgedrückten Zahl in eine Festkomma-Darstellung bei elektronischen Rechnern
DE3535215A1 (de) Verfahren und schaltungsanordnung zum lesen von daten aus dem speicher einer datenverarbeitungsanlage

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