DE1285220C2 - Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten - Google Patents

Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten

Info

Publication number
DE1285220C2
DE1285220C2 DE1967J0034232 DEJ0034232A DE1285220C2 DE 1285220 C2 DE1285220 C2 DE 1285220C2 DE 1967J0034232 DE1967J0034232 DE 1967J0034232 DE J0034232 A DEJ0034232 A DE J0034232A DE 1285220 C2 DE1285220 C2 DE 1285220C2
Authority
DE
Germany
Prior art keywords
register
data
address
channel
main memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE1967J0034232
Other languages
English (en)
Other versions
DE1285220B (de
Inventor
Duke Keith Albert
Bush Grant Harold
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1285220B publication Critical patent/DE1285220B/de
Application granted granted Critical
Publication of DE1285220C2 publication Critical patent/DE1285220C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Multi Processors (AREA)

Description

Die Erfindung betrifft ein Datenverarbeitungssystem mehrerer selbständiger Recheneinheiten, bestehend aus einer zentralen Verarbeitungseinheit, die über Datenkanäle und Steuereinheiten mit Ein- und Ausgabeeinheiten verbunden ist und außerdem mit selbsttätig arbeitenden programmgesteuerten Recheneinheiten zur Lösung einer gemeinsamen Aufgabe in Verbindung steht und mindestens eine Kanalsteuereinheit für die Steuerung der Ein- und Ausgabeoperationen umfaßt, die unter der Steuerung der bn Speicher der zentralen Verarbeitungseinheit enthaltenen Kanalkommandoworte steht, daß außerdem für die Zwischenspeicherung der zu übertragenden Daten sowie zur Zwischenspeicherung der Instruktionen, Kanalkommandoworte und Steuerinfornationen Pufferregister vorgesehen sind, die zur Anpassung der erforderlichen Datenformate für die einzelnen Einheiten des Datenverarbeitungssystems ein Blocklängenregister umfassen.
Wie unter anderem aus dem Artikel »Zur Simultanverarbeitung mehrerer Programme« von H. Donner und K. Leipold, aus Elektronische Rechenanlagen, 3 (1961) H. 2. S. 54 bis 60, hervorgeht, sind Datenverarbeitungssysteme mit mehreren in sich abgeschlossenen selbständigen und programmgesteuerten Recheneinheiten prinzipiell bekannt. Hier werden zwei Typen von Datenverarbeitungsanlagen gezeigt, die zur Simultanverarbeitung mehrerer Programme geeignet sind. Der erste Typ besteht aus einem zentralen Arbeitsspeicher und mehreren mit selbständigen Programmsteiierwerken ausgerüsteten Verarbeitungseinheiten, und der andere Typ besteht aus einem Arbeitsspeicher und mehreren Verarbeitungseinheiten, die gemeinsam von einem zentralen Programmsteuerwerk gesteuert werden. Um eine bestmögliche Ausnutzung der einzelnen Verarbeitungseinheiten, die verschiedene Programme verarbeiten, sicherzustellen, wird die Priorität des Speicherzyklus durch eine Warteschlangenbildung sichergestellt. Um jedoch derartige Warteschlangen zu bilden, sind mehrere arithmetische sowie logische Operationen von den peripheren Rechnern durchzuführen. Außerdem wird neben dem für die zu bildende Warteschlange erforderlichen Speicherplatz effektive Rechenzeit und Datenübertragungszeit der zentralen Verarbeitungseinheit und der peripheren Rechner blockiert. Steuert man die Zusammenarbeit der einzelnen Recheneinheiten des gemeinsamen Hauptspeichers sowie der Ein- und /\usgabeeinheiten durch ein übergeordnetes Betriebssystem mit Hilfe der Programmierung, so ist zwar eine durchaus flexible Anpassung der einzelnen Geräte an die anderen vorhandenen innerhalb des Systems möglich, jedoch wird für Prüfoperationen und für Datenübertragungen sowie zur Ausführung sekundärer Steuerungen so viel Zeit benötigt, daß die gewünschte Zeiteinsparung dadurch meistens zumindest kompensiert wird.
Außerdem ist in der deutschen Auslegeschriff 1 232 374 eine Zusammenschaltung mehrerer Datenverarbeitungsmaschinen über Übertragungskanäle begrenzter Übertragungsgeschwindigkeit, wobei jede der datenverarbeitenden Maschinen auf einen Eingabe- und einen Ausgabe-Zwischenspeicher arbeitet und zwischen dem Eingabe- und dem Ausgabe-Zwischenspeicher und den Übertragungskanälen eine Eingangsschaltung und eine Ausgangsschaltung vorgesehen sind, zu dem Zweck, daß jede Maschine jede andere selektiv ansteuern kanu, bekanntgeworden, deren kennzeichnende Merkmale darin bestehen, daß jed« Eingangsschaltung HilfsSpeicher zur Aufnahme dei die Eingangsinfonnation bildenden Wörter und eint Adressen vergleichsein richtung hat und abhängig voir Ergebnis des Adressenvergleichs entweder die Durchschaltung der Information zum Zwischenspeichei steuert oder, bei negativem Vergleichsergebnis, die Weiterleitung verhindert und die eigenen Hilfsspeicher löscht und daß jede Ausgangsschaltung Hilfs-
ίο speicher zur Aufnahme der die Ausgangsinformatiorj bildenden Worte und eine Prüfvorrichtung für die Prüfung der vollständigen Wortzahl und der Zulässigkeit der abgegebenen Adresse hat und abhängig von dem Prüfergebnis die Durchschaltung der Information an den Übertragungskanal steuert und, bei negativem Prüfergebnis, die Weiterleitung verhindert und die eigenen Zwischenspeicher sowie den Hilfsspeichei löscht. Die hier gezeigte Zusammenschaltung mehrerer datenverarbeitender Maschinen hat jedoch auch noch, abgesehen von dem hohen technischen Aufwand an Spekherschaltungen, den großen Nachteil, daß die Operationen der zentralen Verarbeitungseinheit während jeder Zeitperiode, in der eine Verbindung zwischen einer der peripheren Recheneinheiten und dem Gesamtsystem vorliegt, unterbrochen bzw. verschoben werden müssen. Dies hat wiederum den Nachteil zur Folge, daß bei bekannten Systemen, die mit mehr als einem peripheren Rechner ausgestattet sind, die Zeit für die Unterbrechung der Operationen der zentralen Verarbeitungseinheit mindestens proportional mit der Anzahl der verwendeten peripheren Rechner steigt, denn es kommen auch noch beträchtliche Zeitintervalle hinzu, die zur Steuerung des Vorrangs, zur Sperrung sowie zur Prüfung dieser
zusätzlichen Operationen benötigt werden.
Der Erfindung liegt deshalb die Aufgabe zugrunde, ein Datenverarbeitungssystem mit einem gemeinsamen Hauptspeicher und mehreren in sich geschlossenen selbständigen programmgesteuerten Rechnern
zu schaffen, indem die zusätzlichen peripheren programmgesteuerten Recheneinheiten so in das Gesamtsystem eingeordnet sind, daß sie zusammen zur Lösung einer einzigen Aufgabe vom zentralen Rechner mit geringstmöglichem Aufwand an Instruktionen und Steuer- sowie Speichermitteln sofort zur Verarbeitung zusätzlicher einzelner Programme zur Verfügung stehen
Die erfindungsgemäße Lösung der Aufgabe besteht nun darin, daß zwischen den peripheren selbsttätigen programmgesteuerten Rechnern und der zentralen Verarbeitungseinheit eine für die genannten peripheren Rechner gemeinsiame Steuereinheit angeordnet ist, die außerdem mit dem Hauptspeicher verbunden ist, die durch Entschlüsselung einer Start-Ein- und Ausgabe-Instruktion Zugriff zum genannten Hauptspeicher erlangt, um ein Koinmandowort zu entnehmen, das über die Steuereinheit zu einem der peripheren Rechner gelangt, in dem dadurch eine arithmetische Operation eingeleitet, wird.
Der Vorteil der vorliegenden Erfindung liegt dann, daß durch die erfindungsgemäße Einführung der Steuereinrichtung mil geringem technischem Aufwand eine sehr variable Steuerung der einzelnen Rechnet von der Zentraleinheit her gewähileistet ist, ohne daß mit Hilfe umfangreicher Instruktionen der zeitliche Operaiionsablauf geslört oder unnötig verlängert wird, so daß unter S.cuerung der zentralen Verarbeitungseinheit dir Lösung einer Aufgabe mi; Hilfe def
peripheren, in sich abgeschlossenen programmgesteuerten Recheneinheiten möglich ist.
Die Erfindung wird nun an Hand sines in den Zeichnungen dargestellten Ausführungsbeispiels erklärt. In den Zeichnungen bedeutet
F i g. 1 ein Blockschaltbild des erfindungsgemäßen Datenverarbeitungssystems,
F i g. 2 den Aufbau einer in der erfindungsgemäßen Datenverarbeitungsanlage verwendeten Instruktion,
F i g. 3 das Format eines verwendeten Kaxialadressenwortes,
Fig. 4 das Format eines Kanalkommandowortes,
F i g. 5 a bis 5 c ein Schaltbild eines verwendeten peripheren Rechners und
F i g. 6 a, 6 b ein Schaltbild der in der Erfindung verwendeten Steuereinheit.
In Fig. 1 ist ein informationsverarbeitungssystem dargestellt, das einen Hauptspeicher 10 enthält, der über eine Sammelleitung 11 mit der zentralen Verar beitungseinheit 12 verbunden ist. Zur Steuerung der Ein- und Ausgabeeinheiten 15' bis 15'" und 16' bis 16'" sind Steuereinheiten 15 und 16 mit einer Koppelleitung 17 verbunden, die Vorrangstromkreise sowie Zeitschachtelungsvorrichtungen besitzt, die nicht dargestellt sind. Die Koppelleitung 17 stellt die Verbindung der Ein- und Ausgabeeinheiten mit dei Steuereinheit 14 her. Außerdem stellt die Koppelleitung 17' die Verbindung der Steuereinheit 14' mit den peripheren Verarbeitungseinheiten 21 und 22 her. Die Steuereinheiten 14 sind über die Koppelleitung 20 mit der zentralen Verarbeitungseinheit
12 und mit dem Hauptspeicher 10 über die Koppelleitung 23 verbunden, die von der Steuereinheit
13 im Multiplexbetrieb zur Übertragung betrieben wird. Die Koppelleitungen 25 verbinden die peripheren Steuereinheiten 14 und 14' mit der Steuereinheit 13. Außerdem ist die Steuereinheit 13 mit dem Speicher über die Speichersammelleitung 30 und über die Sammelleitungen 28 und 29 mit der zentralen Verarbeitungseinheit 12 verbunden. Bevor die Koppeleinrichtungen und die peripheren Steuereinrichtungen näher beschrieben werden, soll zunächst eine periphere Verarbeitungseinheit 21 oder 22 «schrieben werden, die für die vorliegende Erfindung erforder- 4-, lieh ist. Eiii? solche Verarbeitungseinbei: ist %öllig in sich abgeschlossen und kann eme Anzahl von Funktionen selbst ausführen. Emc zentrale Verarbeitungseinheit soll zur Bildung einer Vielzahl son Summen. die durch folgende Funktion definier; sind, ausgebii- y.-det sein-
Cn =
: η < S
Diese Funktion kann zur Lesung \->n Kreuzkorre- y: !ation- und Autokorreiaiionfunk" ^mr '.ε"^ende! werden, wobei die ersten Operanden F . die F:!terdaten und die zu.ei:c-n Op-.:^n Jen '..... da:>" = 'jer y ;?t die Anzahl ί-ϊτ F:h-:""-reranc!rr. /; die Arzah de- Probeoperar.den awi .7. . Y Njü. v,-;r.r. --.
Eine per:pher;· Ve'a::-;.· -.^ =■ ·:■'r.· cit zu: B;-;'v'-•T.;ng der oHe-'s.'.ereri.vir. ': ' ·;::ογ;π -· .- dt: >: ; g. ; a. 5 ? und 5 : d^rr ■·..>
In F ■ g ::a is: <J:e ξr::h- ;·■.;:;■;· E -:-.e.· :;-^-:ίΠ! ί;
des Speichers 136 (F i g. 5 b) zu den Registern IK bis 115 übertragen, und der erste Filteroperand wire in das Register 116 übertragen, um die Selbsthalte schaltungen des Registers 117 einzustellen. Jeder FiI ter- bzw. Probeoperand besteht aus ]6 Datenbits pll»! zwei Paritätsbits, deren Länge als zwei Bytes oder eir halbes Wort definiert wird. Die Produkte werdet durch Operationen mit den Operanden in den Registern 110 bis 115 gebildet, und die Summe dei ι Produkte, die gebildet wird durch die Addition dei einzelnen Produkte, werden als Teilsummen in den sechs Registern 123 bis 128 zwischengespeichert Durch das Vorhandensein der sechs Resultatregistei 123 bis 128 ist die zentrale Verarbeitungseinheit nach der vorliegenden Erfindung in der Lage, eine einzelne Summe von Produkten oder sechs Summen von Produkten während einer Serie von Operationen zu bilden. Wenn sechs einzelne Summen zu bilden sind, wird der erste Filtcroperrand zum Register 117 übertragen, und dann wird das Produkt dieses ersten Filteroperanden mit jedem der ersten Probeoperanden der Register 110 bis 115 nacheinander gebildet. Die Ergebnisse gelangen über das Addiersystem zu den Registern 123 bis 128. Wenn jedes Produkt gebildet ist. wird der entsprechende Probcoperand zu dem nächstniedrigeren der Register 110 bis 115 übertraeen. Nach dieser Operation wird der zweite Filteroperand zum Register 117 übertragen, und eine zweite Serie von Produkten wird nacheinander mi! modifizierten Probeoperanden, wie es für die zu berechnende Funktion erforderlich ist, gebildet. Nach der Bildung der einzelnen Produkte werden diese zu den Inhalten der entsprechenden Register 123 bis 128 addiert und die Resultate wiederum in den Registern 123 bis 128 gespeichert. Dieser Prozeß wird so lange kontinuierlich fortgesetzt, bis die ersten sechs Summen berechnet sind. Die Inhalte der Register 123 bis 128 werden dann zu dem Register 135 (Fi y. 5b; übertragen, und .-s kann somit die zweite FoIy: von r,echr. Summen in den entsprechenden Registern 123 bis 128 gebildet werden Diese Folgen starten mi' dem ersten Filteroperand und mit dem siebten Probeoperand.
Der Multiplikandengeneriit'jr 119 wird »or dei Bildung der einzeir :i: Partidlprodukk: angerufen, dr danach gemeinsan. im Addierwerk 120 addiert wer dt-n. Ein Decode- 118 teilt die Ausgänge des Rc gisters 117 in sieben Zwuibüi/ruppen ·ιηά 'cmc v.eiter-Gruppe Jede Gruppe v.ird rk-codiert und als Multiplikator mit dem inhalt eine- Registers 110 br-. 115 das einen Versuchsoperanden beinhaltet multipliziert. Wenn die Bits mit der Dreibügruppe decodien werden dann wird einer -.on % ie- möglichen SuI)-MuI' plikatoren erzeugt. Die letzte Gruppe ν,η nur zw-Bi?'-erzeugt einen von zwe; rr.ögiichtn Sub-Mul;ip!; katoren Der .NfultipÜKandenaenerator 119 fij* ''. <:ir<.-
■:■·■■■ r-'i g; ■ -Ju -.''-r. ·;-:■·■;.".- ei π/.^n er. ·'■':;: '-.r J If! b:s Ϊ15. ;>;: MAt:-- MU -yiri v.v.'';' :::■] -..-: .ei!-
■jT-ύ r/b';r--
M-h'-ke-iC: \'ic -,·.-■■;· 121 a
v,öe S'~-rrt --it -h',-.) "2 ?,-X D- R^ztu:^-■·■■:' et 129 >■ ■- -;·;- P-v'-y-hi'-Vrei-: IV) ν-: <: /υ ' '.'·-' »-ν-·'-,· ■ r:.:rrrr.:':r-Pr^-r. :<:.·
Die genannten Generatoren erzeugen Bits, die das Resultat eines Multiplikations-Summations-Prozesses vorher bilden. Wenn das vorher gebildete Resultat nicht mit dem tatsächlichen Resultat übereinstimmt, wird eine Fehlerbedingung erzeugt. Die Resterzeugung basiert auf einem Modulus-Drei-System. Die ungeraden Bits eines Eingangs zu irgendeinem Generator sind einem Restwerl von 1 zugewiesen und die geraden Bits sind einem Wert von 2 zugewiesen. Diese Bitwerte werden addiert und schließen eine Kombination resultierend in 3 aus, um einen Restwert für die ganze Zahl zu erzeugen. Der Reslgcnerator 131 erzeugt die einzelnen Restwerte für jeden der Filter- und Versuchsoperanden. Wenn ein Filter- und ein Versuchsoperand multipliziert werden, werden die Restwerte ebenfalls multipliziert, und die Dreien sind zu eliminieren, um einen Produktrest zu erzeugen. Der Restgeneralor 129 erzeugt den tatsächlichen Rest für die Produklsummc, der beim Vergleich mit dem vorherigen Rest in der Prüfschaltung 130 entsteht. Wenn der tatsächliche Rest nicht mit dem vorhergehenden Rest übereinstimmt, wird ein Fehlersignal erzeugt. In der nachfolgenden Beschreibung wird zur Vermeidung eines großen Umfangs der vorliegenden Beschreibung nur darauf hingewiesen, daß die erforderlichen Steuerschaltkreise, Taktimpulserzeuger und Zeitsteuerglieder nicht näher erklärt werden, sondern nur im Zusammenhang mit den für die Erfindung erforderlichen Schaltungen im einzelnen auf zeitliche Steuerfolgen hingewiesen wird.
Die entsprechenden Adressenregister 147 bis 153 werden durch die Speicheradressen der Probt-, Filter- und Produktfelder genausogut bestimmt, wie sie im nachfolgenden noch beschrieben werden. Jedes dieser Register wird über eine Sammelleitung gespeist und kann ebenso über eine Sammelleitung, die mit dem Speicherdatenregister 135 in Verbindung steht, Informationen liefern. Ein Addierprüfer 157 ist vorgesehen, um entweder 2 oder den Inhalt des programmgesteuerten Filterinkrementors zu addieren, um die entsprechenden Adressen auf dem neuesten Stand zu halten, die zur Ansteuerung des Adressenspeichers 136 verwendet werden. Die neuen Adressen werden danach zurück zu ihren entsprechenden Registern gesendet. Zu jeder Zeit, zu der ein nicht dargestellter Ladering des Speichers gestartet wird, wird die Starterfilteradresse in das Speicheradressenregister 137 übergeführt, um den ersten Filteroperand in das Register 116 (F i g. 5 a) zu überführen. Das Register 116 wird vom Übersetzer 134 mit Informationen, die in einem Steuerwort enthalten sind, das später beschrieben wird, geladen. Das Filteradressenregister 152 wird mit der nächsten Adresse vom internen Speicher während einer Serie von Multiplikationen gelesen. Die StartfHteradresse wird um den Inhalt des Filterinkrementors 155 weitergeschaltet und im Filteradressenregister 152 während des ersten Zyklus des Ladesteuerrings eingeschrieben. Während jedes Zyklus eines anderen Steuerrings wird die Adresse des nächsten Filters zum Speicheradressenregister 137 um den nächsten Filteroperand, der für die nächste Serie von Multiplikationen benötigt wird, zu adressieren. Zu jeder Zeit wird eine Filteradresse zu dem Speicheradressenregister übertragen and ebenfalls zu dem AddicrpufTer 154. um den Inhalt des Filterinkrementors 155 zu erhöhen und zurück zum FilteradressenregiMcr 152 zu schicken.
Das Probeadrcssenregister 151 enthält die Adresse des nächsten Probeoperanden im internen Speicher. Das Probeadressenregister 151 wird auf Null gesetzt. Während des Ladezyklus wird der Inhalt von diesem Adresseniegistei" zum Speicheradressenregister und zum AddicrpufTer 154 zur Erhöhung übertragen und danach im Probeadressenregister 151 gespeichert. Wenn die sechste Probeadresse aus dem Prabcadrcsrenregisler 151 ausgelesen ist, ist es auch um 2 erhöht und im Adressenregister 150 gespeichen. Nachdem die ersten sechs Produktsummen gebildet sind, wird die Startprobeadresse zum Speicheradressenregister gegeben, um die Adresse für den ersten Probeoperanden -Jcs nächsten Zyklus von Multiplikationen anzugeben.
Das Produktadressenregister 148 enthält die interne Speicheradresse, wo die erste Produktsumme wahrend einer ersten Speicheroperation eingeschrieben wurde. Während der ersten Speicheroperation wird die erste Adresse aus dem Produktsummenbereich des internen Speichers in das Register 148 übertragen. Seitdem die Produktsummenregister gefüllt sind, d.h. 32 Bits plus ein Paritätsbit umfassen, sind für jeden Schritt einer Speicheroperation zwei Speicherzyklcn erforderlich, und der Inhalt vom Register 148 wird um 2 erhöht, nachdem jede Gruppe von zwei Halbworten gespeichert worden ist mit der erhöhten Adresse zurück ins Register 148. Vor dem Start einer Ein- und Ausgabeoperation wird die Adresse von der ersten Produktsumme zu dem Ein- und Ausgabeadressenregister 147 übertragen.
Das Ein- und Ausgabeadressenregister 147 ermöglicht während der Operationen eine Verbindung mit der peripheren Steuereinheit. Solche Operationen können das Schreiben des Probe- bzw. der Filteroperanden in den internen Speicher genausogut wie das Lesen der Produktsummen aus dem internen Speicher und das Übertragen zu einer Steuereinheit bewerkstelligen. Die Einzelheiten dieser Operationen werden später beschrieben. Das Testadressenregister 149 ist zum manuellen Eingriff und zum Prüfen eines peripheren Verarbeitungsgeräts vorhanden.
Der Inhalt von jedem Adressenregister ist kennzeichnend für die Speicherstelle, zu der ein Zugriff beim Start einer Teilfoige von Operationen, die zu einer bestimmten Zeit durch ein Teiladressenregistei dargestellt wird, möglich ist. Die Länge der Zeit, in der eine Einzeladresse benutzt wird, auf den neuesten Stand gebracht wird und zurück zum Register gebracht wird, wird in Verbindung mit der entsprechenden Operation durch die sieben Längenregister 140 bis 146 bestimmt. Die Initiallängen werden durch einen Programmierer mit Hilfe von Kommandos gesetzt und können nicht gewechselt werden, außer über ein entsprechendes Steuerkommando.
Das Register 140 wird durch den Inhalt eines Kanalsteuerkommandos, das später beschrieben wird, versorgt und enthält die Anzahl der Versuchsoperanden zur Bildung der Produktsummen. Der Inhalt von diesem Register gelangt nur zu dem Dekrementor, wenn die Verarbeitung für die erste Zeit der gesamten Operationen gestartet wurde. Das Längenregister 142 enthält eine sich ständig verändernde Gesamtzahl von Versuchsoperanden, die zu jedem Zeitpunkt zur Verfügung stehen. Ein erster Teil mit der verringerten Länge wird vom Längenregister 140 über den Länpendekremcntor 157 empfangen. Danach wird der Inhalt vom I^ängenregistcr J42 jeweils beim Aus-
lesen eines Versuchsoperanden aus dem Arbeitsspeicher 136 um 1 vermindert und wieder in das Register 142 eingetragen. Dieser Prozeß wiederholt sich so lange, bis der Inhalt des Längenregisters 142 gleich Null ist.
Bei den meisten Operationen, wenn die erste Serie von Multipiik;itionssumrnationeii beendet ist. ist die Gcsi.mtoperation nicht abgeschlossen, da immer nocr zu multiplizierende Operanden vorhanden sind. Zuvor waren die anfänglichen Produktsummen gespeichert, die ersten sechs Versuchsoperanden werden nicht langer benötigt, wodurch die Operation zui Versuchslange zurückkehrt, welche um 6 kleiner ist als die Gesamtzahl der Versuchsoperanden, d. h.. das ist die anfängliche Versuchslänge. Das I.iingenregistei 141 wird unmiiiclba; vor dem Multiplikationszyklus mit dem neuesten inhalt des Längenregisters 142 geiüiit. Diese Zahl, gespeichert im Längenregister 14Ϊ. wurde dann um 6 kleiner als die anfängliche Versuchslänge. Der gesamte Prozeß kann mehrere Speicher- und Ladezyklen erfordern, aber der Inhalt vom Versuchslängenregister 141 wird immer die Länge beinhalten, die um 6 kleiner ist als die vorangehende Länge.
Das Filterlängenregister 145 wird ebenfalls durch Mittel vom Kanalkommando geladen, welches die anfängliche Anzahl von Filteroperanden, die zur Dachfiihrung der Produktsumme benötigt wird, angegeben. Das Filteiliingeriegisler 146 wird mit dem verminderten Inhalt von Startlängenregister 145 während jedes Ladezyklus gefüllt. Während jedes Multiplikationsz\klus wird ein Filieroperand multipliziert mit sechs Versuchsoperanden, und der nächste Multiplikationszyklus verursacht die Multiplikation des nächsten Filteroperanden mit den sechs Versuchsoperanden. Der Inhalt des Längenregisters 146 gelangt zum Längendekrementor 157. wird dort um 1 vermindert und zurück zum Register 146 während jedes Multipiikationszyklus geschickt.
Das Startlängenregister 143 wird ebenfalls durch Mittel von einem Kanalkommando mit Informationen geladen, die die Anzahl der erforderlichen Produkte sn der Sechsfachen anzeigt. Das ist der Fall, wenn sechs Produktsummen gebildet worden sind und zum Speichern ausgelesen wurden. Der Inhalt vom Siariproduktlängenregister wird dann zum Längendekrementor 157 übertragen, dort um 1 vermindert und zurück zum Produktlängenregister 144 gebracht, wodurch angezeigt wird, daß sechs Produktsummen gebildet wurden. Bei der nächsten Gruppe von sechs Produktsummen, die gebildet werden, wird der Inhalt vom Produktlängenregister 144 zum Längendekrementor 157 übertragen, hier wieder um 1 verringert und zurück zum Produktlängenregister 144 gebracht. Der Multiplikations-Summations-Prozeß ist dann beendet, wenn das Produktlängenregister 144 auf Null steht.
Die verbleibenden Schaltkreise in F i g. 5 b enthalten Ausgangsleitungen von der peripheren Steuereinheit zum Koppelregister 133 das Daten und Steuerinformationen zum Übersetzer 134 sendet, wo die einzelnen Bits zu Halbworten (zwei Bytes) zusammengefügt werden. Der Datentransport zur peripheren Steuereinheit geschieht ebenfalls über das Registei 133 und die leitung 39 zur peripheren Steuereinheit. Die Register 138 und 139 enthalten Informationen, jie von der Verarbeitungseinheil zur Übertragung zur icriphcren Steuereinheit für den Zeitpunkt übertragen werden, wie es oben beschrieben wurde. Das Adressenregister 132 ist erforderlich, iim die Verarbeitungseinheitadresse während der Anfangsauswahl der Verarbeitungseinheit für die Operation, die später beschrieben wird, /u speichern. Autter der Zusammenführung der D;itenbits zu größeren Dateneinhciien. wird der Übersetzer 134 auch noch zur Feststellung von Daten mit negativen Kennzeichen, das durch das entsprechende Vorzeichcnbit angezeigt
in wird, sowie zur Umwandlung der Zahl in einem Zweierkomplement verwendet, damit der Multiplikations-Suniraations-Vorgang sowohl mit positiven als auch mit negativen Zahlen durchgeführt werden kann.
Her zentrale Rechner, der in Verbindung mit der Ein- und Ausgabckoppelemheit 17' steht, enthält einen Hauptspeicher 10. eine zentrale Verarbeitungseinheit 12 und eine oder mehrere periphere Steuereinheiten, sie sind auch bekannt als Synchronisierungsschaltungen bzw. Kanäle, und durch sie wird eine einzelne Instruktion durch die zentrale Verarbcitungseinheit initialisiert, um die zugehörige Steuerinformation vom Hauptspeicher zum Übertragen der Daten und Steuerinformationen zwischen dem Haupt-
»5 speicher und irgendeiner gegebenen peripheren Einheu zu bewerkstelligen.
Bevor eine detaillierte Beschreibung eines Kanals gegeben wird, soll zunächst das Format der verwendeten binär codierten Kombinationen beschrieben werden, welche als Instruktionen. Kommandos und Steuerzeichen verwendet werden, um die Operation in einem Kanal zu steuern. Eine Instruktion v.ird durch die zentrale Verarbeitungseinheit decodiert. Eine Instruktion kann eine Start-Eingabe-Ausgabe-Instruktion, eine Halt-Eingabe-ZAusgabe-lnstruktion, eine Test-Eingabe- und Ausgabe-Instruktion oder eine Testkanalinstruktion sein. Diese Kommandos werden vom Speicher an den Kanal abgegeben, wenn eine Start-Eingabe- und Ausgabe-Instruktion dieses anzeigt. Der Kanal kann eine Schreiboperation, eine Leseoperation, Lesen rückwärts, Stellen-Abtasten und Übertragen eines Kanalkommandos durchführen. Ein Steuerkommando zeigt eine Operation mit einer Ein- und Ausgabeeinheit an.
in F i g. 2 ist ein instruktionsformat 91 gezeigt, das 32 Binärstellen besitzt. Das Instruktionsformat enthält ein Operationscodefeld 81, ein Kanaladressenfeld 82 und ein Adressenfeld 83 für eine periphere Einheit. Der Operationalcode ist acht Bits lang und ist zur Darstellung der Ein- und Ausgabe-, Test-Ein- und Ausgabe-, Halt-Ein- und Ausgabe- und Testkanaloperation ausgelegt. Die Bitpositionen 8 bis 15 und 18 bis 25 dieser Instruktion werden nicht benutzt Das Kanaladressenfeld enthält drei Binärstellen. und das Adressenfeld enthält acht Binärstellen. Eine Start-Ein- und Ausgabe-Operation veranlaßt den Kanal, den Speicher an einer bezeichneten Stelle anzusteuern und ein Kanaladressenwort (CA W), dessen Format in F i g. 3 dargestellt ist, abzugeben. Das Kanaladressenwort 92 ist eine indirekte Adresse, das die Adresse des gewünschten Kommandos angibt. Das Kanaladressenwort 92 hat 32 binäre Stellen, inklusive ein Kennzeichenfeld 84 und ein Kommandoadressenfeld 85. Das Kennzeichenfeld 84 hat *ier Bits, welches den Zugriff zu dem Speicherbereich steuert, in dem Ein- und Ausgabeopcralionen wie Schreiben. Lesen, Lesen rückwärts usw. gespeichelt sind. Das Kommandoadressenfeld 85 spezifiziert die
309615/468
Speicherstellen von einem Kommandosleuerwoit (CCW). das eine bestimmte Ein- und Ausgabeoperation, die durchzuführen ist. angibt. Die Bitstellen -4 bis 7 stehen beim Kanaladressenwort 92 immer aut Null.
In Fig. 4 ist das Kanalkommandowort (CCW) 93 mit 64 Bits plus acht Paritätsbits, die nicht zu sehen sind, dargestellt. Dieses Kanalkommandowort 93 enthält ein Operationscodefeld 86 von acht Bits, ein Datenadressenfeld 87 von 24 Bits, ein Kennzeichenleid 88 von fünf Bits, ein Pufferfeld 89 von drei Bits und ein Zählfeld 90 von 16 Bits. Die Bitpositionen 40 bis 47 werden beim Kanalkommandowort 93 nicht besetzt. Das Kommandofeld 86 gibt die Operationen, wie z. B. Lesen, Schreiben usw. an. Das Datenadressenfeld 87 spezifiziert eine Acht-Byte-Speicherzelle im Hauptspeicher, in der die Daten gespeichert werden. Das Zählfeld 90 spezifiziert die Anzahl der zu verarbeitenden Datenbytes. Die Bitpositionen 37 bis 3v zeigen die Gültigkeit eines Kanalkommandowortes an. Das Kennzeichenfeld 88 enthält ein Kettendaten-Adressen-Kennzeichenbit, ein Ketteri-Komrnando-Kennzeichenbit, ein Unterdrückungs-Anzeige-Falsche Länge-Kennzeichenbit, ein Überspring-Kennzeichenbit und ein Programm-Steuer-Unterbrechungs-K.enn- 2;, zeichenbit. Die Kommandos, die durch das Operationscodefeld 86 vom Kanalkommandowort 92 spezifiziert werden können, enthalten Schreib-, Lese-, Steuer-, Abtast- und Übertragungsoperationen in dem Kanal.
Ein im Operationsfeld 86 auitretendes Scni<".rkommando initialisiert die Ausführung einer Schrc. operation durch eine periphere Einheit bzw. ein penpheres Gerät. Das Kommando verursacht, das Daten vom Hauptspeicher zum peripheren Rechner gebracht werden. Die Daten im Hauptspeicher werden durch im Kanalkommandowort angegebene Datenadresse aus dem Speicher gelesen Ein Kanalkommandowort 93 das zu einer Schreiboperation verwendet «:■■' wird auf verschiedene Kennzeichen, die Fehler unc andere Bedingungen, die während einer Operation auftreten können, anzeigen, geprüft Di<: Lcseopcration kann auch modifiziert werden durch das Vorhandensein von ausgewählten Bits im Operationsfeld.
Das Sieuerkommando wird zur Übertragung der Steuennformationen zum penphercn Rechner verwendet, und zwar so. daß die Daten unter der Steuerung eines Schreibkommandos übertragen werden. Dieses Kommando wird vor allem dazu verwendet, um die Steuerdaten, die zu dem peripheren Rechner zu senden sind, auf den neuesten Stand zu bringen.
Das Abtastkommando initialisiert die Ausführung von Abtastoperationen im peripheren Rechner Dieses Kommando verursacht die Übertragung des Abtaststatus vom peripheren Rechner zum Hauptspei- eher. Das Abtastkommando ermöglicht folglich die Übertragung detaillierter Informationen in bezug auf den Status des peripheren Rechners zum Hauptsystem.
Die Instruktionen, Kommandos und Steuerinformationen, dargestellt durch das Wortformat nach F i g. 3 und 4, ermöglichen dem Kanal die Steuerung des Datenflusses zwischen den peripheren Einheiten und dem Hauptspeicher. Die Instruktionen werden von der zentralen Verarbeitungseinheit decodiert und ausgeführt und sind Teil des Programms der zentralen Verarbeitungseinheit Die Kommandos werden durch den Kanal vom Hauptspeicher in Antwort auf eine Instruktion empfangen. Die Sieueiinformationen sind Teile von Kommandos und werden ebenfalls vom Hauptspeicher geholl. Wenn eine Instruktion, ein Kommando oder eine Steuerinformation initialisiert wird, dann führt der Kanal 8 verschiedene Testoperationen durch, bevor die Einleitung der Operation ausgelöst wird.
In Antwort auf eine Instruktion wird der Kanal einen Bedingungscode für verschiedene Instruktionen senden, beinhaltend den Status des Kanals, wie Arbeiten, nicht aufnahmefertig oder fertig; der Kanal ist entweder in Betrieb, oder die Kanalsteuereinheit kann keine gesendeten Instruktionen empfangen Wenn ein Kanal eint! Instruktion aufgenommen hai, dann wird die Adresse zu der peripheren Einheit und von da wiederum zum Kanal geliefert. Ein Vergleich der gesendeten und der empfangenen Adressen, der keinen Fehler ergibt, wird die Durchführung einer Operation einleiten, in dem Faii, wo eine periphere Einheit nicht arbeitsfähig ist, wird ein Signal über die periphere Einheit zum Kanal geleitet, welcher seinerseits einen Bedingungscode zur zentralen Verarbeitungseinheit abgibt, der anzeigt, daß die Instruktion nicht ausgeführt werden kann. Die zentrale Verarbeitungseinheit fragt darauf den Speicher, um die iV:iin· gung zu bestimmen, die verhindert, daß die pe ahj'·. Einheit vom Kommando gesteuert wird.
in den Fig. fta und 6b ist ein Kanal, wie ι in der vorliegenden erfindungsgemäßen Schaliup» verv^dei wird, gezeigt Der Kanal enthält PropranimretyA\■·■ Datenübertragungsregister. Steuer- und 'i aktseh;.ί-iij. gen. Diese Schaltungen steuern auf eine instrukiio;' von der zentraler Verarbenuiiy.seinhei' hm. .Jie i''ba tragung von informationen vom b/v. <urr Hauptsparhsr. Wenn eine c ' - und Ausgabeeinheit :.■■■·■ S: gnal abgibt, das im vorliegenden Programm de eistraiep. Verarbeitungseinheu brachtet werden rnui;, konvertiert eier Kanal dieses Signa! in das Forma; da.· ir der zentralen Verarbeitungseinbe;? veru-r>dt wire· Der Kanal enthält alle üblichen Vereini^T".·!, gen. um die Steuerung der Fir·- und Ausgab'·-^» .rutionen vornehmen zu könne:: Die Ein md .·"■:.)'■.-gabcüperiü.ionen verlauten überlappt mit der Arbeii in der zentralen Verarbeitungseinheit. Während der Ein- und Ausgabeoperaiionen sind nur Haup'.speicherzykien zum Transport von Daten zu einer ode; von einer Endstation in den bzw. von dem Hauptspeicher erforderlich. Diese Zyklen stören den Programmablauf innerhalb der zentralen Rechenverarbeitungseinheit nicht, ausgenommen, wenn zum gleiche:; Zeitpunkt die zentrale Verarbeitungseinheu und der Kanal Zugriff zum selben Speicher anfordern
Das Schaltbild nach Fig. 6a enthält ein Datenadressenregister 60, ein Kommandoregister 62, ein Kennzeichenregister 64, ein Zahlregister 66, ein Speicherschutzregister 68, ein Adressenregister 70 füi die peripheren Einheiten und ein Operationsregister 72. Mit diesen genannten Registern stehen ein Addierer 74 und ein Bytezähler 76 in Verbindung. Diese Register sind gemeinsam verbunden über die Leitun gen 40 und 44 sowie über die Speicheradressenleitung 41 sowie über andere Datenleitungen. Die horizontalen Leitungen über den einzelnen Registern zeigen die Anzahl der Bitstellen an, die durch bestimmte Eingänge auf die Register gelangen, und die horizontalen Leitungen unterhalb der Register zeigen die Anzahl der Bitstellen an, die für einen bestimmter Ausgang maßgebend sino. Die verschiedenen
3075
i 285
Halbkreise in den Datenieitungen stellen Torschaltungen dar, ciie hier nicht näher beschrieben werden.
Das in Fig. 6 a dargestellte Datenadressenregister 60 hat 24 Stellen. Zusätzliche Stellen sind für Prüfzwecke enthalten. Jede Speicherstelle ist durch eine bekannte Selbsthalteschaitimg oder eine bistabile Kippschaltung oder andere bistabile Speicherkreise dargestellt. Jede Bitposition ist mit einer ausgewählter Leitung der Sammelleitung 40 und 44 verbunden. Alle Bitstellen, ausgenommen die drei niedrigsten, sind weiterhin zu entsprechenden Bitstellen des Addierers 74 geführt. Des weiteren sind alle Bitstellen, ausgenommen die drei niedrigsten, mn ausgewählten Leitungen der Speicheradressensammelleitung41 verbunden. Die drei niedrigsten Bits vom Register sind als Eingange auf den Bytezähler 7h und auf die entsprechenden Eingänge des Addierers 74 geführt.
Grundsätzlich enthält das Register 60 die Adresse, wo die Daten in der Speichereinheu gespeichert sind. Während eines Obertragungskanalkommandos spei- ao chert dieses Register die Adresse des nächsten Kanalkommanciowortes. Dieselbe Adresse ist auf dem neuesten Stand und wurde zum Register 62 aK das pächMc Kanaladressenwort gesendet. Das Register i-.Miw dadurch eint. uese-. Schreib- oder Lesen-rückvviins-Operation ausführen. Die drei niedrigsten Bit-Stellen zi'ieen die Byteposition von einen-. Wort an. wo das Speichern oder das Übertragen beginnen soll.
Da.= Kommando-Adressenregister 62 hat 21 Steilen jede Steile gesteht wiederum aus bekannten 2c Seibsihalieschahungen oder bistabilen Kippschaltungen. Die drei zusätzlichen Positionen sind für die Prüianzeigc vorhanden. Der Eingang /u diesem Kommando-Adressenreg!s!er 62 ist über die entsprechenden Busieiien aiii da. Addierwerk 64 geführt. Fm Ausgang vom Kommando-Adressenregister62 ist ZL' den entsprechenden Sielh·'! de1- Addierwerkes geführ!. i;:rt anderer Ausgang -.si /u besonderen Leitun-2cn de; Kanaistatus-Sammelieilung 78 geführt, die diese wiederum mil der Sneicherdaten-Sammeiieitung 4(( \crhmdc. Der andere Ausgang ist zur Speicheradressen-Sammelleitung 4i geführt. Das Registc 62 enthalt das Kanaiadressenwort. welches die Speichersieitc bezeichnet, die das gewünschte Kanaikomman d ο wort enthält, is' ein Kanalkommandowort ausge-.vählt worden, dan:, wird das Kanaladressenwort auf ■Je;-, neuesten Siand gebracht, damit die Speicherzelle für das nächste Kanaikommaridowort, wenn erforderlich, definiert ist. Wenn durch den Kanal eine Unterbrechungsbedingung signalisiert wird, dann wird der 5t1 Inhalt des Registers ein Teil des Kommando-Statuswortes.
Das Zähiregister 66 besitzt 16 Bits und besteh) wiederum aus bekannten Selbsthalteschaltungen oder bistabilen Kippschaltungen. Die zusätzlichen Bitpositionen sind wiederum für Prüfzwecke vorhanden. Außerdem enthält diese? Register einen Ausgang für das letzte Wort, einen Ausgang, der anzeigt, wenn der Wert kleiner als 2 ist und einen Ausgang, der anzeigt, wenn der Wert kleiner als 1 ist. Der Eingang des Zählregisters 66 wird durch bestimmte Leitungen der Speicherdaten-Sammelleitung 44 und entsprechende Bitpositionen de1, Addierers 74 gebildet.
Die Ausgange des Zählregisters liegen sowohl in wahrer Form als auch m komplementärer Form vor.
Die drei niedrigsten Bits dieses Registers sind zum Bytevergleicher 51 und zum Register 52 geführt. Alle Bitstellen sind außerdem mit dem Addierwerk 74 und mit der Sammelleitung 78 für das Kanalstatuswort verbunden. Das Zählregister 66 nimmt das Zählfeld vom Kanalkommandowort auf. Wenn eine Datenübertragung über den Kanal stattfindet, dann wird das Zählfeld durch das Addierwerk 74 verändert. Das Zählfeld und die niedrigsten Stellen des Bytezählers stehen algebraisch in Beziehung miteinander, um das Ende einer Datenübertragungsoperation festzulegen.
Das Kennzeichenregister 64 hat eine Kapazität von fünf Bits und besteht ebenfalls wiederum aus bekannten bistabilen Kippschaltungen oder Selbsthalteschaltungen. Der Eingang des Kennzeichenregisters 64 wird über ausgewählte Positionen der Speicherdaten-Sammelleitung 40 gebildet. Die Ausgänge dieses Registers sind zu dem Prüfschaltkreis 65 geführt.
Das Kennzeichenregister 64 enthält fünf Kennzeichen, die in Verbindung mit F i g. 4 beschrieben wurden. Die Kennzeichen zeigen z. B. an, welche Verkettung erforderlich ist oder ob ein Kanalfehler vorliegt.
Das Adressenregister 70 besitzt eine Kapazität von achl Bits und speichert das Adressenfeld der Instruktion für die zentrale Recheneinheit. Das Adressenfeld selektiert die Ein- und Ausgabeeinheit, mit der zu einem bestimmten Zeitpunkt zusammengearbeitet werden soli. Der Eingang wird durch die Sammelleitung 36 und die Datensammelleitung 3s* gebildet. Die Eingangssignale erzeugen ihrerseits Ausgangssignale, die zu entsprechenden Stellen des Vergleichsregisters 71 in Verbindung stehen. Die Ausgänge sinii außerdem zur Sammelleitung 37 und zur Ein- und Ausgabeperäte-Sammelieitung 38 geführt.
Das Register 70 enthält die Adresse, die zur Aus wah! einer Ein- und Ausgabeeinheit benutzt wird Das Register 70 enthalt außerdem noch die Adresse einer Einheit, die den Unterbrechungsstatus enthält. Außerdem sind noch die entsprechenden Schaltkreise zur Prüfung im Register 70 vorhanden.
Das Vergleichsregister 71 umfaßt acht Stellen und vergleicht die Adressen auf den Sammclleitunceri 36 und 38
Das Speicherschuizrcgister 74 umfaßt ν-er Birstellen. Der Eingang dieses- Registers t>S wird ilurcb ausgewählte Leitungen der Datensamrneileitung 44 gebildet. Die Aussängi·: dieses Register;; üirirj τ··,τ Speicherschutz-Sammelleitung 73 geführ; und über ausgewählte Leitungen der Kanalstatus-Sammelleiiung7S. Außerdem führen bestimmte Ausgänge noch zu dem Register 69.
Das Register 68 enthält das Speicherschutzkenn zeichen, das den Bereich im Speicher ansteuert, zu welchem der Kanal Zugriff hat.
Das Operationsregiste, 72 hat acht Positionen Außerdem besitzt es noch zusätzliche Bitpositionen für Prüfzwecke. Der Eingang des Operationsregisteis 72 wird von Leitungen der Datensammelleitung 44 gebildet. Die Ausgänge dieses Registers sind zur Da tensammelleitung 38 der Ein- und Ausgabekoppeleinheit geführt.
Das Register 72 enthält den Kommandocode, der in Verbindung mit F i g 4 beschrieben wurde, um die Ein- und Ausgabeeinheiten 15' und 16' zu steuern.
Kommandos, die diese Operationen einleiten, verursachen, daß alle acht Bits zu der entsprechenden Ein und Ausgabeeinheit übertragen werden. Die höchststelligen Bits enthalten Modifizierbits. Diese Bits geben der entsprechenden Ein- und Ausgabeeinheit an. wie das jeweilige Kommando auszuführen
3075
ist Sie ermöglichen es der Ein- und Ausgabeeinheit, während eines Schreibzyklus die empfangenen Daten mit den vorher aufgezeichneten Daten zu vergleicheil, und sie geben außerdem die Bedingung hinsichtlich der Aufzeichnungsdichte und der Parität an. Für die Kontrollkommandos können die Modifizierbits einen speziellen Code enthalten, der die Steuerfunktion, die auszuführen ist, angibt.
Wenn der Kanal ein ungültiges Kommando erkennt, werden Programm-Prüfbedingungen generiert. Wenn das Kanalkommandowort einen ungültigen Code enthält, wird der Statusteil des Kommando-Status-Wortes während der Ausführung einer Ein- und Ausgabeinstruktion gespeichert. Wenn der ungültige Code während einer Kommandoverkettung entdeckt wird, wird die neue Operation nicht initiert und die Unterbrechungsbedingung generiert. Der Kommandocode wird während einer Datenverkettung nicht beachtet.
Das Addierwerk 74 kann 24 Stellen verarbeiten und enthält einen Volladdierteil, einen Erhöhungsund einen Erniedrigungsteil. Der Volladdierteil umfaßt dabei die vier niedrigsten Stellen. Die übrigbleibenden Stellen des Addierers bilden die Erhöhungsbzw, die Verminderungsschahung.
Der Eingang zu den niedrigstelligen Bits wird vom Datenregister 60 gebildet. Zusätzlich gelangen an alle Bitpositionen des Addierers \nm Zählregister 66 noch Eingangsimpulse. Die Bitposition 4 empfängt ein Übertragssignal von dem Erhöhungs-Verminderungsteil und das Datenadressensignal. Der Ausgang ist zu einem nicht dargestellten Vergleichsschaltkreis, zum Erhöhungs-Verminderungsteil, der ebenfalls nicht zu sehen ist, und zum Zählregister 66 geführt.
Jede Bitposition im Erhöhungs-Verminderungsteil empfängt vom Kommandoadressenregister 66 und vom Datenadressenregister 60 die Eingangsimpulse. Die Ausgänge dieses Registers sind zum Datenadressenregister 60, zum Kommandoadressenregister 62 und zum Zählregister 66 geführt.
Die genannten Schaltungen arbeiten zusammen, um das Zählfeld sowie das Erhöhen sowie das Erniedrigen der Datenadressen oder der Kommandoadressenfelder zu ermöglichen, um diese auf den neuesten Stand zu bringen. Während dieser Prozesse werden die Kommandoadressenregister und das Zählregister auf Paritätsfehler geprüft. Ein Paritätsfehlei löst Steuerungen aus, die Prüfprogramme für den Kanal einleiten. Das Addierwerk 74 erniedrigt den Inhalt des Zählregisters um 8 und erhöht den Inhalt des Datenregisters 60 um 8.
Der Bytezähler 76 hat drei Positionen und dient zur Auswahl der variablen Wortgrenze von Daten, die zwischen den Ein- und Ausgabegeräten und dem Speicher übertragen werden. Der Zähler 76 enthält ein Register 75, einen Entschlüsseier 77 und eine Selbsthalteschaltung 79. Der Eingang des Zählers 76 wird durch die drei niedrigsten Stellen des Ausgangs vom Datenadressenregister 60 gebildet.
Der Entschlüsseier 77 ist mit dem Register 75 verbunden und erzeugt speziell Ausgangssignale, um das Bitregister 52 und das Datenbitregister 59 zu kennzeichnen. Der Entschlüsseier 77 wählt die entsprechenden bistabilen Kippschaltungen des Registers 52 und des Registers 59 aus. um die entsprechenden im Register 58 gespeicherten Daten zum Speicher übertragen zu können.
Der Sclbsthaltcschalikreis 79 empfängt dieselben Eingangsimpulse wie das Register 75. Der Ausgang der Selbsthalteschaltungen 79 ist auf den Eingang des Vergleichers 51 in Fig. 6b geführt. Der Bytezähler ist ein binärer Oktalzähler mit einem Paritätsbit zur Selbstprüfung. Die Selbsthalte- und Decodierteile bilden eine Vorausschau, um die Übertragszeit, die bei Zählern mit Binärtriggern auftritt, zu eliminieren. Wenn der Bytezähler ein Wechselsignal empfängt, wird das Register 75 auf den Wert der Vorausschau
ίο gestellt. Der Wert der Vorausschau ist um eine Zahl höher als der in den Registerstellen. Wenn der Zähler gewechselt hat, dann ist keine Verzögerung im Decodieren der Ausgangssignale notwendig, ebenso ist die Vorausschau \ erriegelt, weil der Zähler gewechselt hat. Die Schaltung zur Vorausschau schaltet unverzüglich zur nächsten Zahl um. In Verbindung mit F i g. 6 b werden nun anschließend die Dateniibertragungsregister zur Übertragung der Daten zwischen dem Speicher und den Ein- und Ausgabeeinheiten
beschrieben. Die Däicnübcrtragungsregibter umfassen ein A-Register 58. ein B-Register 59. einen Vergleicher 51 für die Zählerbytes und Zählregisterbytes. Schaltungen 54 für die Ein- und Ausgabesammelleitungen zur Eingabe. Schaltungen 53 tür die Ein-
und Ä'isgabegeräte zur Ausgabe, Schaltungen 57 für den Kanalstatus und Register 55 für den Adressenvergleich. Die genannten Register werden nun anschließend kurz nacheinander beschrieben.
Das Register 50 umfaßt acht Positionen und eine
weitere Position für das Paritätsbit. Die Eingänge werden von den entsprechenden Bitpositionen des Registers 52 gebildet. Alle Eingänge des Registers 50 sind mit entsprechenden Torsignalen über Und-Schaltungen gesteuert. Außerdem bekommt das Re-
gister .£ur Steuerung noch andere Steuersignale. Diese Steuersignale in Verbindung mit Eingangsimpulsen auf die einzelnen Stellen des Registers bilden Ausgangssignale, die auf die Sammelleitung 73 des Speichers gegeben werden. Die Ausgangssignale werden durch verschiedene Bitpositionen im Register 50 gebildet, die die Speicherschaltungen zur Speicherung von Daten in ausgewählten Speicherzellen ansteuern. Das Register 52 umfaßt acht Bitpositionen. und der Eingang wird durch den Ausgang des Bytezählerdecoders 77 gebildet. Die vier niedrigsten Stellen des Registers 66 sind mit den entsprechenden Stellen des Registers 52 verbunden. Außerdem sind alle Ausgänge des Registers 52 mit den Eingängen des Registers 50 verbunden. An den eingezeichneten Und-Schaltungen liegen die erforderlichen Steuer- und Taktimpulse, die hier nicht näher beschrieben werden sollen, da sie zur Erklärung der prinzipiellen Wirkungsweise nicht enorderlich sind. Die drei niedrigsten Stellen des Registers 52 werden außerdem zum Vergleicher 51 geführt. Außerdem sind eine Anzahl niedrige Stellen vom Register 52 mit der Speichersammelleitung 44 verbunden. Durch diese vorhandenen Verbindungen bestimmt das Register 52 entsprechend seinem Inhalt die Einstellung des Registers 50.
Das Register 50 hat eine Kapazität von 64 Bits und dient zur Übertragung und zur Zusammenführung der Daten zwischen dem Speicher 10 und den Ausgabeeinheiten 15', 16' usw. Die Eingänge dieses Registers werden von ausgewählten Leitungen dei Speiclierdatcn-Sammcllcitung 44 gebildet. Außerdem sind alle Ausgänge des Registers 59 mit den entsprechenden Stellen des Registers 58 verbunden. Die einjiezeichnelen I'nd-Schaltunpen werden hier ebenfalls
nicht näher erklärt. Außerdem sind die Ausgänge des Registers 58 mit den entsprechenden Stellen des Registers 59 und mit bestimmten Leitungen der Speicherdatenleitung 40 verbunden. Für jedes Byte wird ein Paritätsbit erzeugt und sowohl in das Register 59 als auch auf die Speichersammelleitung 40 gesendet. Das Register 59 hat genauso wie das Register 58 eine Stellenkapazität von 64 Bits. Außer den beschriebenen Verbindungen zum Register 58 bestehen
denen Bedingungen des Ein- und Ausgabekanalstatus. Um den jeweiligen Status, wie z. B. Adresse auf den neuesten Stand, Programmprüfung, eine Speicherschutzbedingung, bilden bzw. anzeigen zu können, bekommen die einzelnen Verriegelungsschaltkreise bzw. bistabilen Kippschaltungen der Schaltung 57 verschiedene Kennzeichen, Steuer- und Taktsignale zugeleitet. Die Ausgangssignale der verschiedenen Verriegelungsschaltkreise bzw. bistabilen Kippschal-
noch Verbindungen zur Ein- und Ausgabesammei- 10 tungen werden auf die Sammelleitung 78 für den Kaleitung 39. nalstatus gegeben, um über die Sammelleitung 40 zu
Jede Stelle des Registers 59 ist mit der konespon- einer Speichereinheit zu gelangen, dierenden Stelle des Registers 58, wie vorher be- Mit der vorstehend beschriebenen Erfindung ist es
schrieben, verbunden. Die Ausgänge sind weiterhin möglich, eine Vielzahl von Einzelfunktionen mit zu ausgewählten Leitungen der Ein- und Ausgabe- 15 einem oder mit mehreren peripheren Spezialrech-Datensammelleitung 38 geführt. Die Aufgabe des Re- nern, die selbsttätig organisiert sind und miteinander gisters 59 besteht darin, die Übertragung der Daten
in den Speicher und die Übertragung aus dem Speicher zu den Ein- und Ausgabeeinheiten zu bewerkstelligen.
Die Vergleichsschaltung 51 hat eine Kapazität von
in Verbindung stehen, über Standardein- und -auskoppeleinheiten mit Kanälen bzw. mit peripheren Steuereinheiten eines Datenverarbeitungssyslems so durchzuführen. Die Einleitung der Operationen der einzelnen peripheren Rechner geschieht in Abhängigkeit zur Ausführung von einer Start-Ein- und Ausgabe-Instruktion durch die Hauptzcntraleinheit des Systems, in Abhängigkeit davon, zu welchem Kanal
sechs Stellen und empfängt sowohl wahre als auch
komplementäre Signale von dem Bytezähler 79 und
dem Register 62 (s. F i g. 6 a). Wie schon beschrieben, gelangen auch die drei niedrigsten Stellen des 25 oder zu welcher peripheren Steuereinheit verschie-Registers 52 auf den Eingang des Vergleichers 51. dene Daten und Stcuerinformationen vom Haupt-Diese Eingänge sind über Und-Schaltungen geführt,
an deren andere Eingänge die Ausgänge des Zählers
79 angeschaltet sind, um ein Ausgangssignal zu er-
speicher gegeben werden. Der periphere, in sich abgeschlossene Rechner kann eine vorbestimmte Steuereinheitsadresse haben und außerdem mit einem Ka-
zeugen, das anzeigt, daß der Inhalt des Bytezählers 30 nal verbunden sein. Die Auswahl beginnt, wenn der 79 gleich dem Inhalt des Registers 52 ist. Wie dieses Kanal die Adresse einer einzelnen Steuereinheit auf Ausgangssignal auf die weiteren Steuerschaltungen die Ein- und Ausgabesammelleitung bringt und die wirkt, wird im nachfolgenden beschrieben. Kennzcichenleitung ansteuert. Der Kanal steuert dar-
Während einer Datenübertragung vergleicht die aufhin die Auswahl- und Steuerleitungen an. Wenn Vergleichsschaltung 51 die Eingänge des Zählregisters 35 die betreifende Steuereinheit die Adresse auf der 66 und des Bytezählers 76, um das Ende der Daten- Sammelleitung aufnimmt, wird die Adresse auf die übertragung zu bestimmen. Die Einzelheiten dieser Eingangssammelleitung gegeben und veranlaßt, daß Operationen werden in Verbindung mit der Kanal- die Arbeitsein-, Steueradressenein- und Kennzeichenoperation beschrieben. Sammelleitungen erregt werden. Der Kanal antwortet Die Schaltung 54 hat acht Stellen und eine zusatz- 40 darauf mit einem Kommandosignal und gibt die liehe Stelle für die Paritätsanzeige. Jede Position ist Steuerinformation auf die Ausgangssammelleitung.
Dadurch wird veranlaßt, daß die Kommando-Ausgangsleitung eine Anforderung für den Stcuereinheitenstatus anfordert. Der Rechner antwortet daiaul mit einem Eingangsstatussignal und gibt diesen Status auf die F.ingangssammclleitung. Wenn der Status angenommen wird, dann fährt der periphere Rechner in der Verarbeitung fort, nachdem der Kanal den Status angenommen hat und ein Verarbeitungs-Aus-
leitung 38 ist im wesentlichen genauso aufgebaut, wie 50 Signal zur Aufhebung der Sperre an die Ein- und die Schaltung 54 für die Ein- und Ausgabesammei- Ausgabekoppeleinheit gegeben hat. Zum Initialisieren leitung 39, nur mit dem Unterschied, daß die Schal- von Operationen im peripheren Rechner decodiert lung 54 zum Empfang von Signalen ausgelegt ist und der Zentralrechner eine Start-Ein- und Ausgabedie Schaltung 53 zum Aussenden von Signalen. Wie Instruktion, worauf der Kanal oder eine Steuereinheit aus F i g. 6 b zu erkennen ist, ist die Schaltung 53 mit 55 Zugriff zum Hauptspeicher erlangt, um das erste Kabestimmten Ausgängen des Registers 59 mit den Re- nalkommandowort zu entnehmen. Dieses Kanalkomgistern 70 und 72 verbunden. Der Ausgang der mandowort ist ein Sleuerkommando und spezifiziert Schaltung 53 bildet die Ein- und Ausgabesammei- den Ort im Hauptspeicher, an dem die Filterlänge leitung 38. und die Filter-Startadresse gespeichert ist, die dann
Das Register 55 für den Adressenvergleich besitzt 60 zum peripheren Rechner übertragen werden. Dieses eine Slellenkapazität von acht Bits und einem zusatz- Steuerkommando enthält auch noch ein Kettenbit,
mit einer einzelnen Leitung der Ein- und Ausgabesammelleitung 39 verbunden. Die Ausgänge sind mit bestimmten Stellen des Registers 59 und mit allen Stellen des Registers 70 (F i g. 6 a) verbunden. Außerdem besteht eine Verbindung zu der Schaltung 57 zur Anzeige des Kanalstatus, zum Register 58 und zum Adressenvergleicher 55.
Die Schaltung 53 für die Ein- und Ausgabesammel-
lichen Bit für die Paritätsprüfung. Wie schon beschrieben, ist die Adressenvergleichsschaltung 55 mit dem Register 70 für die Ein- und Ausgabccinlicitenadrcssen verbunden.
Die Schaltung 57 bestellt aus einer Vielzahl von bekannten bistabilen Kippschaltungen bzw. Vcrriegelungsschaltungen und dient zur Anzeige der verschie-
welches verursacht, daß der Kanal seinerseits darauf ein zweites Steuerkommando abgibt, welches den Ort im Hauptspeicher kennzeichnet, der die Probclängen- und die Produktlängen-lnstruktioncn enthält, die zum peripheren Rechner übertragen werden. Dieses zweite Kontrollkommando enthält ebenfalls ein Kettenbit, welches den Kanal veranlaßt, ein drittes Korn-
mandowort vom Hauptspeicher zu holen, das ein Schreibkommando ist und den Ort im Hauptspeicher angibt, in dem die Versuchs- und Filterdaten, die zur Berechnung im peripheren Rechner erforderlich sind, ausgewählt werden. Dieses dritte Kommando enthält s ebenfalls ein Bit im Operationscode, das den peripheren Rechner veranlaßt, mit der Berechnung zu beginnen, wenn die Datenübertragung abgeschlossen ist. Die periphere Steuereinheit ist nun frei und kann somit andere periphere Rechner oder periphere Ein heiten an die Ein- und Ausgabekoppeleinheit anschließen. Wenn der periphere Rechner bereits mit zugehörigen Steuerinformationen von der vorhergehenden Operation versehen ist, dann benötigt die Start-Ein- und Ausgabe-Instruktion, die durch den zentra- len Rechner decodiert wird, nur einen Hinweis auf das Schreibkommando.
Hat ein peripherer Rechner die Operation beendet, und die gebildeten Produktsummen sind im Arbeitsspeicher gespeichert, dann können die Produktsum- ao men zurück zum Hauptspeicher des Systems übertragen werden durch die Ausführung einer weiteren Start-Ein- und Ausgabe-Instruktion des zentralen Rechners in Abhängigkeit zu einem Kanalkommandowort vom Hauptspeicher durch den Kanal, in dem der Operationscode vom Kanalkommandowort nun als Lesekommando verwendet wird. Die Steuerung der Sperre an der Ein- und Ausgabekoppeleinheit erfolgt genauso wie schon oben in Verbindung mit der Schreiboperation beschrieben.

Claims (6)

Patentansprüche:
1. Datenverarbeitungssystem mit mcnreren selbständigen programmgesteuerten Recheneinheiten, bestehend aus einer zentraien Verarbei- : tungseinheit, die über Datenkanäle und Steuereinheiten mit Ein- und Ausgabeeinheiten verbunden ist und außerdem mit den anderen selbsttätig arbeitenden programmgesteuerten Recheneinheiten und einem gemeinsamen zentralen Hauptspeicher in Verbindung steht und mindestens eine Kanalsteuereinheit für die Ein- und Ausgabeoperationen, die unter der Steuerung der im Hauptspeicher der zentralen Verarbeitungseinheit enthaltenen Kanalkommandoworte steht sowie Pufferregister umfaßt, die für die Zwischenspeicherung der zu übertragenden Daten sowie zur Zwischenspeicherung der Instruktionen, Kanalkommandoworte und Steuerinformationen dienen, wobei das Kanalkornrnandowort, neben Operationssteuerdaten ein Blockadressenfeld für einen zwischen der zentraien Verarbeitungseinheit und den Ein- und Ausgabeeinheiten zu übertragenden Datenblock sowie ein Blocklängcnfeld zur Markierung der Anzahl der zu einem Block gehörenden Bitgruppen umfaßt, und daß ein Blocklängenrcgister vorhanden ist. das xur Aufnahmt einer in keiner festen Beziehung zu einem Speicher-Wort-Ende stehenden Blocklängenangabe aus dem Blocklängenfeld dient, das vor Beginn einer Übertragung über ein Addierwerk modifiziert werden kann, um die verschiedenen Datenformalc anzupassen, dadurch g e Ii e η η ζ c i c h η e t, daß zwischen den peripheen selbsttätigen programmgesteuerten Rechnern (21 und 22) und der 6S zentraien Verarbeitungseinheil (12) eine für die genannten peripheren Rechne.!' gemeinsame SU'iiereinhei! {M ans/enion;·; isi. die aulk
mit dem Hauptspeicher (10) verbunden ist, die durch Entschlüsselung einer Start-Ein- und Ausgabe-Instruktion Zugriff zum genannten Hauptspeicher erlangt, um ein Kanalkommandowort (CCW) zu entnehmen, das über die Steuereinheit (14') zu einem der peripheren Rechner (21 und 22) gelangt, in dem dadurch eine arithmetische Operation eingeleitet wird.
2. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß durch die Entschlüsselung einer Start-Ein- und Ausgabe-Instruktion durch die zentrale Verarbeitungseinheit (12) vom Hauptspeicher (10) eine erste Steuerinformation, enthaltend eine Hauptspeicheradresse für den Speicherplatz, der die Steuerdaten für die durchzuführenden Operationen enthält und eine zweite Steuerinformation, die die Adresse für den Speicherplatz angibt, der die zu berechnenden Daten enthält, entnommen werden, und daß die genannte Steuereinheit (14') sowohl die übertragung der Sieuerdaten als auch tier zu berechnenden Daten zu dem ausgewählten peripheren Rechner (z. B. 21) und die Übertragung des Ergebnisses der Berechnung zum Hauptspeicher (10) oder zur zentralen Verarbeitungseinheit (12) steuert.
3. Datenverarbeitungssystem nach Anspruch 1. dadurch gekennzeichnet, daß zum Einleiten von Operationen in einem peripheren Rechner die zentrale Verarbeitungseinheit (12) eine Start-Ein- und Ausgabe-Instruktion decodiert, worauf die Steuereinheit (14') Zugriff zum Hauptspeicher (10) erlangt und das erste Kanalkommandowort (CCW) entnimmt, daß dieses Kanalkommondowort die Speicherzelle im Hauptspeicher (10) angibt, in der die Filterlänge und die Filterfeld-Startadresse gespeichert ist, die dadurch zu dem entsprechenden peripheren Rechner übertragen wird und daß das Kanalkommandowort ein Keitcnbit einhält, eins verursacht, daß der Kanal ein zweites Kanalkommandowort abgibt, welches die Zelle im Hauptspeicher (10) definiert, die die Probclängen- und Produktlängen-instruktionen enthüll, die daraufhin ebenfalls /u dem entsprechenden peripheren Rechner übertragen werden, und daß das zweite genannte Kanalkommandowort ebenfalls ein Kettenbit enthält, wodurch der Kanal ein drittes Kaiialkoinmandowort voiv Hauptspeicher (10) erhält, das den Ort im Hauptspeicher (10) angibt, der die Versuchs-und Filterdaten, die zur Berechnung erforderlich sind, ent hält, und daß das dritte genannte Kanalkommandowort ebenfalls ein Bit im Operationscode enthält, das den entsprechenden peripheren Rechner veranlaßt, die arithmetische Operation einzuleiten und die Steuereinheit (14') zur Ausführung einer nächsten Operation mit einem anderen peripheren Rechner freigibt.
4. Datenverarbeitungssystem nach den Ansprüchen 1 bis 3. dadurch gekennzeichnet, daß die übertragenen Stcuerdaten fü: einen ausgewählten peripheien Rechner (21 oder 22) Bitkombinationen enthalten, die die Anzahl der auszuführenden arithmetischen Operationen im periphercü Rechner (2! oder 22) in einer bestimmten Zeiteinheit angibt, damit gewährleistet ist, daß bei Anforderung eines Ergebnisses durch die zentral:' Ypiiiriv.-vunfifieinhei; ('■?.) keine Wsrtewit
entsteht und der periphere Rechner (21 oder 22) beim Einlauf neuer Eingangsdaten in seiner gerade ablaufenden Operation nicht gestört wird.
5. Datenverarbeitungssystem nach den Ansprüchen 1 bis 4, dadurch gekennzeichnet, daß die peripheren in sich abgeschlossenen programmgesteuerten Rechner (21 und 22) als Spezialzweckrechner ausgebildet sind und eine Vielzahl Summen, die durch die Funktion
γ
Cn = ^,Fy ·
definiert sind, bilden.
6. Datenverarbeitungssysiem nach Anspruch 5, dadurch gekennzeichnet, daß durch die Entschlüsselung einer ersten Instruktion von der zentralen Verarbeitungseinheit (12) eine arithmetische Operation in einem peripheren Rechner (21 oder 22) eingeleitet wird, daß die zwischen der zentralen Verarbeitungseinheit (12) und den peripheren Rechner (21 und 22) angeordnete Steuereinheit (14') bei der Entschlüsselung einer zweiten Instruktion durch die zentrale Verarbeitungseinheit (12) die Übertragung der Resultate von dem peripheren Rechner zu dem Hauptspeicher (10) einleitet.
Hierzu 2 Blatt Zeichnungen
DE1967J0034232 1966-07-25 1967-07-24 Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten Expired DE1285220C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US56748066A 1966-07-25 1966-07-25

Publications (2)

Publication Number Publication Date
DE1285220B DE1285220B (de) 1968-12-12
DE1285220C2 true DE1285220C2 (de) 1973-04-12

Family

ID=24267332

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1967J0034232 Expired DE1285220C2 (de) 1966-07-25 1967-07-24 Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten

Country Status (3)

Country Link
US (1) US3462741A (de)
DE (1) DE1285220C2 (de)
GB (1) GB1137786A (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3593299A (en) * 1967-07-14 1971-07-13 Ibm Input-output control system for data processing apparatus
US3651482A (en) * 1968-04-03 1972-03-21 Honeywell Inc Interlocking data subprocessors
US3573851A (en) * 1968-07-11 1971-04-06 Texas Instruments Inc Memory buffer for vector streaming
US3671942A (en) * 1970-06-05 1972-06-20 Bell Telephone Labor Inc A calculator for a multiprocessor system
US3673576A (en) * 1970-07-13 1972-06-27 Eg & G Inc Programmable computer-peripheral interface
US3710328A (en) * 1971-01-21 1973-01-09 Honeywell Inf Systems Method and apparatus for communicating devices each performing preprocessing operations on data autonomously of the central processor
US3729715A (en) * 1971-05-03 1973-04-24 Gte Automatic Electric Lab Inc Digital processing system
US3798613A (en) * 1971-10-27 1974-03-19 Ibm Controlling peripheral subsystems
US3760365A (en) * 1971-12-30 1973-09-18 Ibm Multiprocessing computing system with task assignment at the instruction level
FR2235427A1 (en) * 1973-06-28 1975-01-24 Ibm Connecting cct. for satellite data processors - has minimum number of programme interruptions in main processor
US3976979A (en) * 1974-01-02 1976-08-24 Honeywell Information Systems, Inc. Coupler for providing data transfer between host and remote data processing units
US4107773A (en) * 1974-05-13 1978-08-15 Texas Instruments Incorporated Advanced array transform processor with fixed/floating point formats
FR2296221A1 (fr) * 1974-12-27 1976-07-23 Ibm France Systeme de traitement du signal
IT1030280B (it) * 1975-03-06 1979-03-30 C Olivetti Ing Calcolatore elettronico con dispositivo per lo scambio di blocchi di carattere tra una memoria operativa ed un unita periferica
US4156907A (en) * 1977-03-02 1979-05-29 Burroughs Corporation Data communications subsystem
US4128876A (en) * 1977-04-28 1978-12-05 International Business Machines Corporation Synchronous microcode generated interface for system of microcoded data processors
US4171537A (en) * 1978-01-09 1979-10-16 National Semiconductor Number oriented processor
JPS54127653A (en) * 1978-03-28 1979-10-03 Toshiba Corp Data processor
GB2023314B (en) * 1978-06-15 1982-10-06 Ibm Digital data processing systems
JPS55124804A (en) * 1979-03-19 1980-09-26 Sanyo Electric Co Ltd Control system
JPS55149084A (en) * 1979-05-08 1980-11-20 Seiko Epson Corp Clock apparatus
US4319321A (en) * 1979-05-11 1982-03-09 The Boeing Company Transition machine--a general purpose computer
GB2092341B (en) * 1981-02-02 1984-09-12 Picker Int Ltd Computer peripheral selection
US4490788A (en) * 1982-09-29 1984-12-25 Schlumberger Technology Corporation Well-logging data processing system having segmented serial processor-to-peripheral data links
GB8816413D0 (en) * 1988-07-09 1988-08-17 Int Computers Ltd Data processing system
CN114328323A (zh) * 2021-12-01 2022-04-12 北京三快在线科技有限公司 一种数据中转单元及基于数据中转单元的数据传输方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL276308A (de) * 1961-03-24
US3311739A (en) * 1963-01-10 1967-03-28 Ibm Accumulative multiplier
US3297996A (en) * 1963-06-10 1967-01-10 Beckman Instruments Inc Data processing system having external selection of multiple buffers
US3299408A (en) * 1963-08-27 1967-01-17 Wang Laboratories Data translation system
US3366780A (en) * 1965-11-29 1968-01-30 Ibm Shift multiplier

Also Published As

Publication number Publication date
US3462741A (en) 1969-08-19
GB1137786A (en) 1968-12-27
DE1285220B (de) 1968-12-12

Similar Documents

Publication Publication Date Title
DE1285220C2 (de) Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten
DE2555963C2 (de) Einrichtung zur Funktionsmodifizierung
DE2714805C2 (de)
DE1299145B (de) Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen
DE2456578C2 (de) Datenverarbeitungsanlage
DE3638572C2 (de)
CH522921A (de) Rechneranlage
DE1549474C3 (de) Anordnung In einer elektronischen digitalen Datenverarbeitungsanlage zur Ausführung eines ersten Befehls und gleichzeitigen Decodierung eines folgenden Befehls
DE1774296B2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2030812A1 (de) Modulare Datenrechnersysteme
DE2612139A1 (de) Ein/ausgang-steuerungssystem
DE2248296A1 (de) Programmsteuereinrichtung
DE1499206C3 (de) Rechenanlage
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE2440628A1 (de) Datenverarbeitungsanlage mit mikroprogrammierung
DE2064383C3 (de) Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen
DE2530599A1 (de) Steuerung von ein/ausgabe-geraeten
DE2906685A1 (de) Instruktionsdecodierer
DE2704560C2 (de) Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen
DE2824711A1 (de) Steuereinrichtung fuer speicherzugriffe
DE2428013A1 (de) Mehrfachsteuergeraet
DE1524127B2 (de) Mehrfachrechenanlage mit internen verbindungsleitungen zwischen den datenverarbeitungsgeraeten
DE2221926B2 (de) Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor
DE2350871A1 (de) Recheneinheit zur verarbeitung von speziellen befehlen
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen

Legal Events

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