DE2503891C2 - Anordnung zur Steuerung von Datenübertragungen - Google Patents

Anordnung zur Steuerung von Datenübertragungen

Info

Publication number
DE2503891C2
DE2503891C2 DE19752503891 DE2503891A DE2503891C2 DE 2503891 C2 DE2503891 C2 DE 2503891C2 DE 19752503891 DE19752503891 DE 19752503891 DE 2503891 A DE2503891 A DE 2503891A DE 2503891 C2 DE2503891 C2 DE 2503891C2
Authority
DE
Germany
Prior art keywords
channel
data
input
program
command
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
DE19752503891
Other languages
English (en)
Other versions
DE2503891A1 (de
Inventor
Pierre Gabriel Palaiseau Antoine
Jean-Claude Marcel Conflans-Ste-Honorine Cassonnet
Daniel Rene Villepreux Vinot
Original Assignee
Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris
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 Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris filed Critical Compagnie Internationale Pour L'informatique Cii-Honeywell Bull, Paris
Publication of DE2503891A1 publication Critical patent/DE2503891A1/de
Application granted granted Critical
Publication of DE2503891C2 publication Critical patent/DE2503891C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

dadurchgekennzeichnet, daß
a) die Peripheriegeräte zu Untergruppen von einander gleichenden Geräten zusammengefaßt sind und je eine solche Untergruppe mit einer Gerätesteuerung (PCU) verbunden ist;
b) die gemeinsame Kanalschaltung (CCC) ein Dringlichkeitsnetzwerk zum Auswählen der Anforderung höchster Dringlichkeit für Übertragungen, die aus Kanaikopfeinheiien (CHU) kommen, und Einrichtungen zum Speichern der Verbindungsinformationen der Kanalkopfeinheiten (CHU) enthält;
c) die gemeinsame Kanalschaltung (CCC) mit einer Kanalsteuereinheit (CCU). verbunden ist, welche die Ausführung der Datenübertragungen selbständig steuert und dazu einerseits mit der Sammelleitung (A) und andererseits mit einer Datenhandhabungseinheit (Datenmanagementeinheil DMU) verbunden ist;
d) und daß die Datenhandhfbungseinheit (DMU) Datenausrichtungsnetzwerke enthält und direkt mit der Schnittstelleneinheit (MlU)des Zentralspcichers (MMU) verbunden ist.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Kanalsteuereinheit (CCU) Einrichtungen zum Decodieren von in einem Steuerspeicher (CSU) des zentralen Prozessors enthaltenen Mikrobefehlen und zum Aufführen der Mikrobefehle, Einrichtungen zum Auswählen der Anforderung höchster Dringlichkeit für die Übertrag:uigen, "-eiche aus mehreren gemeinsamen Kanalschaltungen (CCC) stammen, wobei diese Einrichtungen mit einer Kontrolleinheit (RCU) des Steuerspeichers (CCU) in Verbindung stehen, Einrichtungen zum Zähleii der '.u übertragenden Informationen und Einrichtungen zum Unterbrechen der Mikroprogramme des zentralen Prozessors enthält.
3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Datenhandhabungseinheit (DMU) einen Pufferspeicher (Register IB) für die Eingabe von Daten, einen Pufferspeicher (Register OB) für die Ausgabe der Daten, einen Pufferspeicher (Register XB) für Befehle und Maskierungseinrichtungen enthält, welche das Ausrichten der Informationen gestatten.
4. Anordnung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß eine Adreßrechenbetriebseinheit (ACU)dvs zentralen Prozessors für jeden räumlichen Kanal einen Speicher (Register PA 0, PA 1,...) enthält, welcher jeweils eine Adreßposition im Zentralspeicher (MM) für die Daten und jeweils eine Adreßposition für die Steuerbefehle enthält, wobei die Daten und die Befehle, die von der Datcnhandhabungseinheil (DMU) abgegeben werden, parallel mit den von der Adreßrechenbetriebseinheit (ACU) abgegebenen Adressen der Schnittstelleneinheit (MIU) des Zentralspeichers zugeführt werden.
5. Anordnung nach einem der Ansprüche 1 bis 4 dadurch gekennzeichnet, daß der Zentralspeicher für jeden räumlichen Kanal eine Speicherzone für die sich auf diesen Kanal beziehenden Hauptdaten enthält, und daß einem räumlichen Kanal Logikkanalwarteschlangen zugeordnet sind, wobei die Logikkanäle auf einem einzelnen räumlichen Kanal in Abhängigkeit von durch die Gerätesteuerung festgelegten Dringlichkeitsreihenfolgen multiplexiert sind.
6. Anordnung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß eine Kanalkopfeinheit (CHU)eine Gruppe von in einer Reihe angeordneten Registern (RF, SCR)und Einrichtungen (DP, L i) zum Adressieren der Register enthält, welche das Schreiben, das Lesen und die Übertragung von Daten ermöglichen.
Die Erfindung betrifft eine Anordnung zur Steuerung von Datenübertragungen nach dem Oberbegriff des Patentanspruchs 1. Eine solche Anordnung, die aus Review of the Electrical Communication Laboratories,
VoI 21, Nr. 3—4, März—April 1973, Seiten 165 bis 173 bekannt ist, hat die Aufgabe, die Übertragungen von Informationen zwischen dem Haupt- oder Zentralspeicher und den peripheren Geräten zu leiten. In einem Datenvcrarbeilungüsyslcm erfordert die Verarbeitung der Daten, die in dem zentralen Prozessor ausgeführt wird, einen fortwährenden und gleichzeitigen Dialog zwischem dem, was man als Hilfsmittel bezeichnet (im allgemeinen periphere Einheiten großer Kapazität), dem Zentralspeicher und diesem zentralen Prozessor.
In den Zentraleinheiten, die mit einer großen Anzahl von Peripheriegeräten verbunden sein können, werden die Geräte heutzutage durch Gerätestcucrungcn (PCU) gesteuert. Eine solche Gcrätestcuerung steuert jeweils einen besonderen Typ von peripheren Einheilen. Beispielsweise sind die verhältnismäßig langsamen Peripherie-
geräte, wie etwa Drucker, Lochkarteneinheiten, Übertragungssteuereinheiten, usw. mit einer besonderen Gerätesteuerung verbunden, die als Aufzeichnungssteuereinheit (LJRC) bezeichnet wird, während die sehr schnellen Einheiten, wie etwa Plattenspeicher, mit einer anderen Gerätesteuerung verbunden sind, die als Massenspeichersteuereinheit (MSC) bezeichnet wird.
In einem Datenverarbeitungssystem mittlerer oder großer Leistung ergibt sich das Hauptproblem aus der Geschwindigkeitsdifferenz zwischen dem Ablauf der Instruktionen im Innern des Rechners einerseits (eine Geschwindigkeit, die in der Größenordnung von 1 Million Operationen pro Sekunde liegen kann) und den im allgemeinen viel langsameren Übertragungsgeschwindigkeiten andererseits, die durch die peripheren Geräte aufgezwungen werden (zehn Zeichen pro Sekunde in dem Fall eines Fernschreibers, sechzig Zeichen pro Sekunde bei einem Streifenlocher, 200 000 bei einem Magnetband). Im Stand der Technik ist dieses Problem gelöst worden, indem man die Zentraleinheit bei einer Eingabe/Ausgabe-Operation solange gesperrt hat, bis diese beendet ist Die Erhöhung de? Verarbeitungsleistung der Computer hat eine Lösung dieser Art schnell unmöglich gemacht, und zwar wegen der Arbeitszeitkosten der Zentraleinheit Das hat Veranlassung gegeben, nach Einrichtungen zu suchen, welche das fast gleichzeitige Ausführen eines Programms und der Eingabe- und Ausgabeoperationen ermöglichen. Verschiedene Lösungen sind bereits vorgeschlagen worden, und insbesondere eine Betriebsart, die als Programmunterbrechung bezeichnet wird. Bei dieser Betriebsart wird die Zentraleinheit von der periodischen Überwachung der peripheren Geräte entlastet, welche sie unterbreche,! können, um ihr zu melden, daß sie bereit sind, eine bestimmte Arbeit auszuführen. Die Unterbrechung besteht darin, daß das gerade ablaufende Programm vorübergehend angehalten wird, damit das die Übertragung ausführende Programm diese mit Vorrang ausführen kann. Selbstverständlich wird das Verarbeitungsprogranrr durch diese Unterbrechung zwar verzögert, die Übertragungen von Daten erfordern jedoch, wenn sie durch die Gerätesteuerung vorbereitet worden sind, in bezug auf die eigentliche Verarbeitung nur eine geringe Zeit. Die Übertragung eines Worts setzt indessen bei dem Unterbrechungsbetrieb den Ablauf eines Programms voraus, welches 10 bis 20 Speicherzyklen dauert und von denen nur ein einziger tatsächlich benutzt wird.
Das hat dann zur Verwendung von automatischen Austauscheinheiten oder Kanälen geführt, die in der Lage sind, die Übertragung eines Datenblocks zu übernehmen. Die Austauscheinheit gibt dann eine Bedienungsanforderung ab, damit ihr ein Speicherzyklus zum Ausführen dieses Austausches zugeordnet wird.
Eine Operation läuft folgendermaßen ab:
— Initialisierung der Übertragung durch das Programm, .
— Übertragung mit einem durch das Peripheriegerät bestimmten Takt,
— Ende der Übertragung.
Bei Rechnern kleiner Leistung ist es bekannt, die Daten-Eingabc/Ausgabe-Operationen durch den zentralen Prozessor mit Hilfe von Programmunterbrechungen ausführen zu lassen. Dagegen ist diese Struktur nicht bei Rechnern vorstellbar, die gleichzeitig mit zahlreichen Peripheriegeräten verbunden sind, da der Prozessor seine gesamte Zeit mit Daten-Eingabe/Ausgabe-Operationen zubringen würde.
Aufgabe der Erfindung ist es, eine Anordnung der im Oberbegriff des Patentanspruchs 1 genannten Art zu schaffen, bei welcher der zentrale Prozessor mit einer großen Anzahl von Peripheriegeräten verbunden ist und bei geringem Aufwand an Hardware-Einrichtungen für die Datenübertragungen nur wenig Verarbeitungszeit des zentralen Prozessors für diese Datenübertragungen beanspr jcht wird.
Diese Aufgabe wird durch die Lehre des Patentanspruchs 1 gelöst.
Im folgenden wird unter der Eingabe/Ausgabe-Steuereinheit die Gesamtheit der Bestandteile des zentralen Prozessors verstanden, die an der Übertragung der Informationen zwischen dem Zentralspeicher und den peripheren Einheiten beteiligt sind.
Bei einer vorteilhaften Ausführungsform der Anordnung ist die Eingabe/Ausgabe-Steuereinheit, die im folgenden auch als Steuereinheit IOC bezeichnet wird, eine Einheit, die ein Eingabe/Ausgabe-Steuerprogramm oder Kanalprogramm, das im Zentralspeicher enthalten ist, unter Verwendung von in einem SpezialSpeicher enthaltenen Mikroprogrammen lesen, decodieren und ausführen kann.
Der Steuereinheit /OCsind folgende Aufgaben zugewiesen:
— Steuerung der zentralen Schnittstelle,
— Steuerung des Zugriffs auf den und des Lesens im Zentraispeiuier,
— Steuerung der Ausführung des Programms,
— Zuführung des Programms,
— Kontrolle der Zugriffe,
— lokale Ausführung von gewissen Befehlen,
— Verkettung der Folgen auf dem lokalen Programm.
Die Steuereinheit IOC ist im allgemeinen unter verschiedenen Kanälen aufgeteilt und kann ungefähr 100 Kanalprogramme gleichzeitig ausführen.
Zum Ausführen einer Aufgabe kann ein Prozessor Informationen benötigen, die in einem Peripheriegerät, wie beispielsweise einem Kartenleser, gespeichert sind. Es kann sein, daß die Resultate dieser Operation zu einem anderen Peripheriegerät geleitet werden müssen, beispielsweise zu einem Drucker. Diese Operationen werden durch spezielle Inst.uktioncn gesteuert, die als »Kanalbefehle« bezeichnet und durch die Eingabe/Ausgabe-Steuereinheit an das Psripheriegerät abgegeben werden. Als Kanalprogramm wird die Gesamtheit der Kanalbefehle bezeichnet, die bei einer Eingabc/Ausgabe-Operation benutzt werden.
Die Schnittstelle zwischen der Gerätcstcuerung und der Eingabe/Ausgabe-Steucreinheit wird als SchnilJstelle
des Untersystems oder Schnittstelle PSI bezeichnet. Es wird vereinbart, daß die Übertragungen zwischen dem Hauptspeicher und der Gerätestcuerung als Eingabe oder Lesen bezeichnet werden, wenn es sich um eine Übertragung von der Gerätesteuerung zu dem Hauptspeicher MM handelt, und als Ausgabe oder Schreiben bezeichnet werden, wenn es sich um eine Übertragung von dem Hauptspeicher MM zu der Gerätesteuerung handelt.
Wenn ein Prozeß die Verwendung eines Peripheriegeräts zum Ausführen einer Übertragung erfordert, »erweckt« er das zugeordnete Kanalprogramm durch einen an den zentralen Prozessor abgegebenen Spezial· befehl. In diesem Fall gibt die Eingabe/Ausgabe-Steuereinheit an die dem anzuschließenden Peripheriegerät zugeordnete Gerätesteuerung ein spezielles Kanalprogrammwartesignal über die Schnittstelle PSI ab, um
ic anzuzeigen, daß ein Kanalprogramm auf seine Ausführung wartet.
Die Anwenderprogramme sollen für die Übertragung von Daten und von Programmen mit den Peripheriegeräten in Verbindung treten können. In diesem Moment werden gewisse Hilfsquellen des zentralen Prozessors CPU der Eingabe/Ausgabe-Steuereinheit IOC zugeteilt. Die Anforderungen von Anwenderprogrammen werden mit Hilfe eines Makroaufrufes ausgeführt, der ein Programm zur Steuerung der Eingabe/Ausgabe-Kanäle generiert.
Die Eingabe/Ausgabe-Steuereinheit führt gewisse Befehle mit Hilfe des zentralen Prozessors CPU aus und gibt die anderen zur Ausführung an die Gerätesteuerung PCUab. Um die Möglichkeiten der Verarbeitung von mehrfachen Eingaben und Ausgaben zu vergrößern, ist jedes Kanalprogramm mit einem logischen Kanal verbunden, der durch Multiplexierung mit weiteren Logikkanälen durch einen räumlichen Kanal der Schnittstelle PSI hindurchgeht. Die Anwenderprogramme treten mit den Kanalprogrammen über Scmaphoren in Verbindung, bei welchen es sich um Strukturen handelt, welche das Synchronisieren der Befehle und der Daten ermöglichen. Die Kanalprogramme ermöglichen die Verkettung der Daten, die Verkettung der Steuerbefehle und die Übertragungen von Zwischen- oder Endzuständen, welche dem zentralen Prozessor CPU ermöglichen, genau den augenblicklichen Zustand eines beliebigen Peripheriegeräts zu kennen. In einem System, in welchem die Erfindung angewendet wird, ist die Eingabe/Ausgabe-Steuercinheit mikroprogrammiert. Das bedeutet, daß ein Steuerspeicher oder SpezialSpeicher maschineninterne Programme enthält, welche aus festen Folgen von Mikrobefehlen bestehen, deren Ausführung die verschiedenen Grundfunktionen verkettet, deren Summe eine Funktion der betreffenden Maschine darstellt. In dieser wird so jede Funktion durch einen Befehl gesteuert und jede Art von Befehl entspricht einem Mikroprogramm, welches aus der Folge von durch den Befehl angeforder-
ten Mikrobefehlen gebildet ist (Übertragung von Register zu Register. Wählen des Speichers und von Lesen/ Schreiben. Zählerfortschaltung, Betriebssteuerung der Einrichtung, usw.).
Jedes Mikroprogramm entspricht der Ausführung eines Befehls, der in dem »inneren Dekor« oder der Gesamtheit der funktioneilen Spezifikationen eines Systems festgelegt ist.
Die Verarbeitung der Codegruppe eines Befehls des inneren Dekors ruft das Mikroprogramm auf, welches sich in dauerhafter Weise in dem Steuerspeicher oder Spezialspcicher befindet. Diese Kontroll- oder Steuerspeicher besteht hauptsächlich aus einem Festspeicher ROS, der in dem zentralen Prozessor CPU vorgesehen ist und für den die Möglichkeit einer Ausdehnung in eine reservierte Zone des Hauptspeichers bestehi.
Das Mikroprogramm führt den Befehl des inneren Dekors mit den Operanden aus, die durch die Befehlscodegruppe 9PCd festgelegt sind. Sämtliche Standardmikroprogrammc sind in dem Festspeicherteil des Steuerspeichers gespeichert. Dieser Steuerspeicher ist in Segmente unterteilt. Die Mikroprogramme, die einer Gruppe von Befehlen des inneren Dekors entsprechen, sind in einem Segment untergebracht. Im Inneren der Steuerspeichereinheit CSU sind Verzweigungsmöglichkeiten vorgesehen, die die mehrfache Auswahl und dit wiederholte Verwendung von gemeinsamen Unter-Mikroroutinen gestatten. Die Mikroprogramme führen die gesamte Steuerung des zentralen Prozessors durch die Schaffung von Firmware-Blöcken aus, welche spezifische Funktionen besitzen. Diese Firmware-Blöcke stehen zwar mit dem Betriebssystem in Verbindung, sie werden jedoch nicht direkt durch die Befehle des inneren Dekors gesteuert.
Die Mikroprogramme der Eingabe/Ausgabe-Steuereinheit IOC führen die Funktionen aus, welche in dem inneren Dekor und in den funktioneilen Spezifikationen der Schnittstelle PSI des peripheren Untersystems festgelegt sind. Die peripheren Einheiten sind für den Programmierer sichtbar, und zwar über eine logische
so Größe, welche «ich auf die Hardware stützt und als Logikkanalprogramm bezeichnet wird (das aus einer Ff "ge von Eingabe- und Ausgabesteuerbefehlen besteht), und über Ausführungszustände, die dem zentralen Professur dank der Semaphorer. bekannt sein können.
Beispielsweise können die /OC-Mikroprogramme eine Zone von 5000 Oktaden in dem Kontroll- oder Steuerspeicher und eine Zone von 1500 Oktaden in dem Zentralspeicher einnehmen.
Theoretisch können 256 Logikkanäle Kanalprogramme auf einem einzigen räumlichen Kanal ausführen. Die praktische Grenze hängt von den Möglichkeiten des Kanais und der Gerätesteuening ab. Die Ausführung eines Kanalprogramms durch einen Logikkanal soll auf prinzipieller Ebene als ein Eingabe/Ausgabe-Prozeß angesehen werden, der gleichzeitig mit weiteren Eingabe/Ausgabe-Prozessen und mit Prozessen des zentralen Prozessors ausgeführt wird. Deshalb beträgt bei zwölf räumlichen Kanälen die Anzahl von Eingabe/Ausgabe-Prozessen theoretisch 12x256. Die Gerätesteuerung steuert die Ausführung des Kanalprogramms mit Hilfe eines speziellen Steuerbefehls, der an die Eingabe/Ausgabe-Steuereinheit adressiert und als Dienstcodegruppe bezeichnet wird.
Wenn ein Ereignis eintritt oder wenn die Ausführung des Kanalprogramms in der Gerätesteuerung beendet ist, wird eine Ereignisnachricht von der Gerätesteuerung an die Eingabe/Ausgabe-Steuereinheit abgegeben.
Eine Ereignisnachricht enthält eine Dienstcodegruppe und einen als eine Dateninformation betrachteten Zustand. Somit findet zwischen der Eingabe/Ausgabe-Steuereinheit und der Gerätesteuerung eine Übertragung von Dienstcodegruppen und eine Übertragung von Daten statt. Die Hardware- und Firmware-Bestandteile der Eingabe/Ausgabe-Steuereinheit sind mit dem Ziel der Steuerung dieser Übertragungen ausgelegt.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteranspriichen angegeben.
Ein besonderes Ausführungsbeispiel der Erfindung wird nun unter Bezugnahme auf die Zeichnung näher beschrieben. In der Zeichnung zeigt
F i g. I ein Schema des zentralen Prozessors uiul des Hauptspeichers eines Diitcnvernrbcitungssysicms, F i g. 2 ein Grundschaltbild des Anschlusses einer Eingabe/Ausg;tbe-Steucreinheit, F i g. 3 ein Schema der Multiplexierung der Kanalprogramme auf einem räumlichen Kanal, F i g. 4 eine auseinandergezogene Darstellung der Anordnung nach der Erfindung, F i ι 5 das Schema eines Kanalprogramms,
F i g. 6 ein Schema des Formats eines Kanalprogrammkopfes,
F i g. 7 die Struktur einer Kanalbefehlseingabe CCE, F i g. 8 eine Kanalbefehlseingabe CCEIw eine Datenübertragung, F i g. 9 die Schnittstelle PSl,
Fig. 10 ein Grundschaltbild der zwischen einer Gerätesteuerung und dem Zentralspeicher hergestellten Verbindungen,
F i g. 11 ein Schema einer Ausführungsform einer in den zentralen Prozessor integrierten Eingabe/Ausgabe- ; Steuereinheit, und
Fig. 12 ein Grundschema der Ausrichtung von Daten.
leder Gerätesteuerung PCU ist eine Kanalsteuer- oder Kanalkopfeinheit CHU zugeordnet. Jede Kanalkopf-
1.111!11.Il (.ItIIIUIL.
— ein Dienstcodegruppenregister SCR, welches die laufende Dienstcodegruppe speichert,
— ein !6-Oktaden-Pufferregister RF, welches die zwischen dem Hauptspeicher und der Gerätesteuerung PCU übertragenen Daten vorübergehend speichert,
— ein Zählregister L I, welche die Anzahl von Oktaden angibt, die zwischen der Gerätesteuerung PCU und dem Ablage- oder Pufferspeicherregister RFnoch zu übertragen sind,
— einen Differenzzeiger DP, welcher die Anzahl von in dem Register RFm einem bestimmten Augenblick gespeicherten Oktaden speichert.
Die Eingabe/Ausgabe-Steuereinheit /OCbesteht darüber hinaus aus verschiedenen Bestandteilen.
Die Kanalsteuereinheit CCU enthält einen Arbeitszähler SPC, welcher die Anzahl von Oktaden angibt, die zwischen dem Hauptspeicher und dem Pufferregister RFjeder Kanalkopfeinheit CHUzu übertragen übrigbleiben.
Die Datenmanagcmenteinheit DMt/enthiilt:
a) einen 4-Oktaden-Pufferspeicher OB, welcher vorübergehend die in dem Hauptspeicher gelesenen Daten speichert, bevor sie in das Register /?Feingegeben werden,
b) einen Pufferspeicher IB, welcher vor dem Eingeben der Daten in den Zentralspeicher die gleiche Aufgabe erfüiit.
Die Adreöstcüercinhcit /4CL'enthält einen Arbeitsspeicher PA für die Adressen, weicher zwei jeder Gerätesteuerung PCU zugeordnete Register PA 0 und PA I enthält.
Jeder Gerätesteuerung PCUsind verschiedene Dringlichkeitsstufen für die Ausführung der Kanalprogramme zugeordnet. In einem Datenverarbeitungssystem, in welchem die Erfindung verwendet wird, sind vier Dringlichkeitsstufen vorhanden. Die Stufe 0 entspricht einer Übertragung von Daten mit hoher Dringlichkeit Die Stufe I entspricht einer Übertragung von Dienstcodegruppen mit hoher Dringlichkeit. Die Stufe 2 entspricht einer Übertragung von Daten mit geringer Dringlichkeit, und die Stufe 3 entspricht einer Übertragung von Dienstcodegruppen mit geringer Dringlichkeit. Die Operationen des Steuersystems des zentralen Prozessors werden mit der Stufe 4 ausgeführt, d. h. daß die Operationen der Eingabe/Ausgabe-Steuereinheit IOC gegenüber den Rechenoperationen des zentralen Prozessors Vorrang haben.
Die Gerätesteuerung PCUsteuert die Ausführung der Kanalprogramme und leitet die Benutzung der räumlichen Kanäle. Diese Benutzungsleitung wird durch einen Dialog an der Schnittstelle PSI erreicht, welcher aus Folgen von Datenübertragungen und aus Folgen von Dienstcodegruppen besteht.
Die Folgen von Dienstcodegruppen werden zum Ausführen der folgenden Operationen verwendet:
— Beginn der Ausführung eines neuen Kanalprogramms und Beginn der Übertragung der ersten Kanalbefehlseingabe CÖFdes Kanalprogramms,
— Verschiebung der Kanaizeiger in dem Kanalprogramm und Initialisierung der Übertragung der nächsten Kanalbefehlseingabe CCE,
— Übertragung der Oktaden des detaillierten Zustandes oder Initialisierung der Übertragung der Oktaden des Zustandes während der Ausführung eines Kanalprogramms oder am Ende der Ausführung desselben.
Die Dienstcodegruppenfolgen können die Übertragungen von Oktaden zwischen der Gerätesteuerung PCU und der Eingabe/Ausgabe-Steuereinheit /OCinitialisieren.
Infolgedessen werden diese Übertragungen zwar als Datenübertragungsfolgen bezeichnet, bei diesen Oktaden kann es sich jedoch handeln um:
— Oktaden von Daten, die sich auf eine Übertragung von CCE-Daten beziehen,
— Steuerbefehlsoktaden, die von der Eingabe/Ausgabe-Steuereinheit IOC abgegeben werden (Oktaden der als nächste auszuführenden Kanalbefehlseingabe CCE),
— Befehle der Elingabe/Ausgabe-Steuereinhcii IOC, wenn diese die Orätesteuerung PCU über gewisse Ereignisse informieren möchte,
— Oktaden des detaillierten Zustands, die während der Ausführung eines Kanalprogramms von der Gerätesteuerung PCI/abgegeben werden.
Die Mikroprogramme der Eingabe/Ausgabe-Steuereinheit /OCsteuern und leiten sämtliche durch die Dienstcodegruppenfolgen verlangten Operationen und initialisieren, wenn erforderlich, die nächsten Übertragungen von Oktaden. Gemäß dem Typ der Folge können durch die Gerätesteuerung PCU bis zu fünf Oktaden abgegeben werden: Dienstcodegruppenoktade, Digitalkanalnummer, Verzweigungsargument oder eine der drei Oktaden des zusammengefaßten Zustands des Peripheriegeräts (PSB). Die beiden ersten Oktaden einer Dienstcodegruppenfolge werden in einer Kanalkopfeinheit CHU durch die Hardware empfangen, während mit dem eventuellen Empfang der drei letzten Oktaden die Firmware befaßt ist. Während einer Dienstcodegruppenfolge kann die /OC-Firmware zum Empfang der letzten Oktade aufgerufen werden, die von der Gerätesteuerung PCU abgegeben wird, und während einer Folge, die mehr als zwei Oktaden beträgt, wenn die Kanalkopfeinheit CHU die beiden ersten Oktaden empfangen hat.
Sämtliche Folgen von Datenübertragungen (Daten im eigentlichen Sinn, Zustands- oder Steuerbefehlsoktade) werden durch die /ÖC-Firmware während der vorangehenden Dienstcodegruppenfolge auf den Weg gebracht und wie die Übertragungen von verketteten Daten ausgeführt.
Kanalprogramrn
Eine Eingabe/Ausgabe-Operation, die durch die Eingabe/Ausgabc-Steuereinheit IOC und die Gerätesteuerung PCU ausgeführt werden soll, wird als Kanalprogramm bezeichnet. Ein Kanalprogramm ist ein echtes Programm, d. h. es handelt sich um eine Folge von Programmsignalcn mit Verzweigungsfähigkeit, d. h. Zugriff zu einer beliebigen Adresse. Jeder Digitalkanal ist in der Lage, ein Kanalprogramm auszuführen. Gewöhnlich erfordert die Ausführung eines Kanalprogramms an Software nur einen einzigen Startbcfehl (CONNECT) und den Empfang einer Nachricht mittels eines Semaphore am Ende der Ausführung. Es herrscht eine vollkommene Gleichzeitigkeit zwischen der Ausführung der Programme (oder Vorgänge, Prozesse) des zentralen Prozessors und der Ausführung der Kanalprogramme auf den Digitalkanälen. Die Ausführung eines Kanalprogramms ist deshalb ein peripherer Prozeß.
Ein Kanalprogramm besteht aus einem Kanalprogrammanfang und aus Kanalbefehlseingaben CCE. Eine Kanalbefehlseingabe CCEerstreckt sich über eine Breite von zwei Wörtern und enthält eine Steuerbefehlsoktade, welche die auszuführenden Operationen angibt, während eine Kennzeichenoktade die Ausführungsbedingungen angibt, wie etwa: Verkettung der Steuerbefehle, Verkettung der Daten, Unterbrechung usw., eine »Zählung« bei jeder zweiten Oktade und die absolute Adresse der Übertragung von Daten auf einer Länge von vier Oktaden. Die »Zählung« und das Adreßfeld können auch durch eine Steuerbefehlsverlängerung ersetzt werden.
in der Kennzeichenoktade gibt es ein spezielles Kennzeichen, weiches angibt, daß ein weiterer Steuerbefehl dem Steuerbefehl folgt, der gerade ausgeführt wird. Es handelt sich um das Kettungs- oder Verkettungskennzeichen. Wenn dieses Kennzeichen Null ist, weiß der Prozessor, daß es sich bei dem betreffenden Befehl um den letzten Befehl des Kanalprogramms handelt. Ein weiteres Kennzeichen, welches als Datenverkettungskennzeichen bezeichnet wird, gibt an, daß die durch die Adresse und die »Zählung« der Kanalbefehlseingsibe CCE festgelegte Datenübertragung nicht beendet ist und daß die Übertragung mit der Zählung und der Adresse fortgesetzt werden wird, die in die nächste Kanalbefehlscingabe eingetragen sind. Ein Feld von Kanalbefehlseingaben legt die Gesamtheit der Steuerbefehle in diesem Fall fest. Die Übertragung von Daten erfolgt in nicht aufeinanderfolgenden Zonen, welche durch die aufeinanderfolgenden Kanalbefehlseingaben CCE des Feldes festgelegt sind. Die letzte Kanalbefehlseingabe CCE wird dadurch markiert, daß das Kennzeichen gleich Null ist. Die Gerätesteuerung PCU ist nicht darüber informiert, ob eine Datenkcttung vorhanden ist, und beteiligt sich deshalb nicht an dem über die Schnittstelle PSI ausgetauschten Dialog. Die normale Datenübertragungsrate soll an der Schnittstelle PSIselbst dann aufrechterhalten werden, wenn eine Datenkettung vorliegt.
Die Kanaiprogramme enthalten einen Programmkopf, der die Nummer des Kanals enthält, welchem das Programm zugeordnet ist, den digitalen Namen GiDides Semaphors, der zum Aufrufen des Unterbrechungsverarbeitungsprozesses im Fall der Meldung eines Zwischen- oder Endereignisses verwendet wird. Der Programmkopf enthält außerdem die Abmessung und die Lage einer Speicherzone, die dem detaillierten Status vorbehalten ist, welcher von der Gerätesteuerung PCUgeliefert wird.
Während der Ausführung eines CONNECT-Befehls beginnt das periphere Untersystem die Übertragungsoperationen indem sie ein Signal CPWadressiert, welches angibt, daß ein Kanalprogramm wartet.
Gemäß einem Merkmal der Eingabe/Ausgabe-Steuereinheit nach der Erfindung ist es die Gerätesteuerung PCU, die die Ausführung der Kanalprogramme steuert Die Gerätesteuerung PCUbeginnt das Kanalprogramm, indem sie die Eingabe/Ausgabe-Steuereinheit IOC auffordert, die erste Kanalbefehlseingabe CCE abzugeben, und danach geht si«: zu seiner Ausführung über.
Die Steuereinheit IOC benutzt zwei Kanalprogrammzeiger, den Steuerbefehlszeiger CMP und den Steuerwortzeiger CWP.
Diese Zeiger werden auf Aufforderung der Gerätesteuerung PCU verschoben und durch diese Verschiebung können die Gerätesteuerungen ein Programm ausführen, zurückweisen oder von einem Programm auf ein anderes übergehen. Wenn der Steuerbefehl eine Datenübertragung beinhaltet, bewahrt die Eingabe/Ausgabc-Steuereinheit die »Zählung« und die Adresse in der Kanalbefehlseingabe CCE Wenn eine periphere Operation beendet ist, gibt die Gerätesteuerung PCU eine Nachricht über das Ende ab und die Eingabe/Ausgabc-Steuereinheit IOC reiht diese Nachricht in eine Meldungswarteschlange ein.
Die Gerätesteuerung steuert einerseits zwar den Ablauf des Kanalprogramms, sie optimiert jedoch auch die Benutzung des räumlichen Kanals und seiner Hilfsmittel, indem sie die Kanalprograrnme multiplexiert.
Die Gerttesteuerungen PCU haben nicht notwendigerweise auf das Ende der Ausführung eines Steuerbefehls zu warten. Sie können die Multiplexierung mitten während oder in einem beliebigen Zeitpunkt der Ausführung vornehmen.
Eine spezielle Gruppe von Mikrobefehlen ermöglicht das Analysieren der Dienstcodegruppen hoher und geringer Dringlichkeit und in der Kanalkopfeinheit CHU aas Initialisieren der Übertragungen von Daten zwischen den Gerätesteuerungen und dem Pufferregister RF. Sie ermöglicht außerdem das Steuern der Übertragung von Daten zwischen Hauptspeicher und dem Register RF mit hoher und geringer Dringlichkeit. Die Mikrobefehle der Eingabe/Ausgabe-Steuereinheit IOC werden in vier Blöcke unterteilt, die entsprechend den verschiedenen Dringlichkeilsstufen bei der Ausführung der Kanalprogramme mit 0 bis 3 numeriert sind.
Ein räumlicher Kanal ist eine räumliche (physische) Verbindung zwischen der Eingabe/Ausgabe-Steuereinheit IOC und der Gerätesteucrung PCU. Diese räumliche Verbindung besteht aus einer Schnittstelle PSl und Einrichtungen, die beiderseits der Schnittstelle angeordnet sind und die Aufgabe haben, diese Schnittstelle zu steuern. Eine Gerätestcuerung PCU kann eine beliebige Anzahl von Kanalprogrammen initalisieren und den Gebrauch der räumlichen Kanäle multiplcxieren.
Ein Digitalkanal ist für den Programmierer eine logische Einheit, d. h. ein Logikkanal, im folgenden weiterhin als Digitalkanal bezeichnet, welche das Ausführen einer Eingabe/Ausgabe-Operation erlaubt. Wenn ein Kanalr»rQorromm in A&r .Ausführun0 bsCTrifiep. ist, ist ihm ein Di^tjilkupy.! zugeordnet. Der zii^eordpctf Dipit^lk^n?.! ist aktiviert, wenu das Kanalprogramm ausgeführt wird, und der räumliche Kanal wird in Zeitteilung benutzt, d. h. die Digitalkt,.läle sind auf einem bestimmten räumlichen Kanal multiplexiert. Ein Digitalkanal entspricht immer einem einzelnen Peripheriegerät. Wenn jedoch mehrere Funktionen des Peripheriegeräts gleichzeitig ausgeführt werden sollen, können mehrere Digitalkanäle einem einzelnen Peripheriegerät entsprechen. Das ist beispielsweise bei einem Drucker der Fall, bei welchem gleichzeitig das Drucken der Zeichen und der Transport des Papiers ausgeführt werden sollen. Vom Standpunkt des Programmierers aus sind die Eingabe/Ausgabe-Operationen.die auf verschiedenen Digitalkanälen ausgeführt werden, vollkommen simultan und asynchron.
Die Gerätesteuerung teilt die Benutzungszeil der räumlichen Kanäle auf, um gleichzeitig mehrere Eingabe/ Ausgabe-Operationen auszuführen. Der Grad der Gleichzeitigkeit hängt zwar von der Konzeption der verwendeten Gerätesteuerung PCUab, die Steuereinheit IOC kann jedoch alle Gleichzeitigkeitsgrade akzeptieren, die von der Gerätesteuerung PCU verlangt werden, sofern sie nicht überlastet wird.
Ein Digitalkanal wird durch eine Kanalnummer bezeichnet. Diese Kanalnummer ist folgendermaßen zusammengesetzt:
— eine /OC-Nummer, die immer gleich Null ist (IOC Φ Φ), wenn in dem System nur eine einzige Eingabe/Ausgabe-Steuereinheit IOC vorhanden ist,
— eine Digitalkanalnummer,die zwischen 0 und 6 liegt (PC Φ φ),
— eine Digiialkanalnummcr,die zwischen 0 und 255 liegt (LC Φ φ).
Sie hat folgendes Format:
IOC*+ PC + +
LC +Φ
0 23 78 IS
Die Information bezüglich jedes räumlichen Kanals und jedes Digitalkanals wird in Tabellen aufbewahrt. Die Tabelle fCTder räumlichen Kanäle vereinigt die Informationen bezüglich der räumlichen Kanäle in Segmenten, die als Eingaben PCE von räumlichen Kanälen bezeichnet werden. So kann es sechs Eingaben PCE in der Tabelle PCTgeben. Die Eingaben von räumlichen Kanälen nehmen sechzehn Wörter ein, die von 0 bis Firn hexadezimalen System numeriert sind. Die Eingaben von räumlichen Kanälen, welche über 5 liegen, entsprechend Gerätesteuerungen PCU, die nicht mit dem zentralen Prozessor verbunden sind, sind in der Tabelle nicht dargestellt.
Jeder Eingabe PCEentspricht eine Tabelle der Digitalkanäle, in der die Informationen bezüglich der zugeordneten Digitalkanäle vereinigt sind, deren Anzahl 256 betragen kann. |ede Tabelle i-CTvon Digitalkanälen wird somit 256 Eingaben LCEvon Digitalkanälen enthalten. Eine Digitalkanaleingabe LCE nimmt immer sechzehn von 1 bis Fnumerierte Wörter ein. Zeiger PCTund LCTerlauben, jeder Tabelle die erforderlichen Informationen zu entnehmen. Der Zeiger PCTenthält die absolute Adresse des Anfangs der Tabelle PCTvon räumlichen Kanälen und die Anzahl von Eingaben PCE von räumlichen Kanälen. Er hat folgendes Format:
PCE* +
Absolute Adresse PCT
\LC * * j Absolute Adresse von LCT
Der Zeiger PCTist in dem Hauptspeicher über der Adresse BAR und in dem Arbeitsspeicher SPUenthalten. Der Zeiger der Digitalkanaltabelle LCTenthält die absolute Adresse der Digitaltabelle und die Anzahl von Eingaben in dieser Tabelle. Er hat folgendes Format:
78
Jeder Zeiger der Tabelle LCTist in einem Wort der Eingabe fC£des räumlichen Kanals enthalten.
Eine Eingabe ff £ des räumlichen Kanals wird durch Verwendung der Tabelle PCT und der Kanalnummer PC Φ φ erreicht
Eine Digitalkanaleingabe LCEwird unter Verwendung des Zeigei-s PCT, der Nummer des räumlichen Kanals PC Φ Φ, des Zeigers Z.CTund der Digitalkanalnummer LC Φ Φ erreicht.
Die Eingabe/Ausgabe-Steuereinheit IOC besitzt spezielle Befehle für die Eingabe- und Ausgabecperationen, die als Kanalbefehle bezeichnet werden. Ein Kanalprogramm ist eine Gruppe von Kanalbefehlen und von Adreßinformationen. die das Auslösen und Ausführen einer Eingabe/Ausgabe-Folge erlauben.
Ein Kanal programm enthält die Nummer des Digitalkanals, auf welchem die Übertragungen ausgeführt ίο werden. Ein Digitalkanal kann von verschiedenen Kanalprogrammen benutzt werden. Die Kanalprogramme können auch gleichzeitig auf verschiedenen räumlichen Kanälen ausgeführt werden. Die Eingabe/Ausgabe-Steuereinheit steuert diese Gleichzeitigkeit
Die verschiedenen Kanalprogramme können auch gleichzeitig ausgeführt werden, ausgenommen dann, wenn ί
sie dem gleichen räumlichen Kanal zugeordnet sind. Der zentrale Prozessor steuert diese Gleichzeitigkeit f
Strukturen von Kanalprogrammen ;;f
vi. In einem Kanalprogramm gibt es: ^
— einen Kanalprogrammkopf, der aus vier Wörtern besteht Die absolute Adresse des ersten Wortes des ;*·;
K.,inaiprogrammkopres wird ais absolute Kanaiprogrammadressc CFAA bezeichnet Sie ist in einem Won H der entsprechenden Digitalkanaleingabe gespeichert
— eine Kanalbefehlseingabe CCEaus zwei Wörtern, die als Kanalbefehlswörter 0 CCCWO) bzw. 1 (CCWl) fl bezeichnet werden. J
«
Die vier Wörter des Kanalprogrammkopfes enthalten:
die Nummer des dem Kanalprogramm zugeordneten Kanals, ii'
— die Dringlichkeitsstufe des Kanalprogramms im Vergleich zu den anderen Kanalprogrammen, ν — den Namen CD des Semaphore, zu welchem die während der Ausführung des Kanalprogramms erzeugten '.;
Nachrichten geleitet werden, ';
— informationen über die Zone des Hauptspeichers, in der der Zustand eines Peripheriegeräts im Fall einer Störung gespeichert werden kann. :
Die Kanalbefehlseingabe ermöglicht eine einfache Einwirkung auf ein Peripheriegerät. Die beiden Wörter
enthalten einen Kanalbefehl, ein Kennzeichen und eine Adreßinformation. ' j
Ausgestaltung der Eingabe/Ausgabe-Steuereinheit IOC
In den Datenverarbeitungssystemen, bei welchen die Erfindung angewendet wird, teilt sich die Eingabe/Ausgabe-Steuereinheit gewisse Hilfsmittel mit dem zentralen Prozessor und kann die Ausführung der Mikroprogramme des zentralen Prozessors in jedem beliebigen Zeitpunkt unterbrechen, um ihre eigenen Mikroprogramme auszuführen. Die Haupthilfsmittel, die sie mit dem zentralen Prozessor teilt, sind: der Steuerspeicher CSU, die Zentralspei-
cherschnittstelle MIUund einige digitale Einheiten, welche sind: . ■:
— die arithmetische und logische Einheit ALU, die die Operationen an den 4-Oktaden-Wörtern ausführt.
— die Datenmanagementeintteit DMU, die die Übertragungen von Daten in den Hauptspeicher leitet.
— die Adreßrecheneinheit ACU, die die Inkrementierungs- und Dekrementierungsoperationcn der absoluten Adressen ausführt,
— die Festspeichersteuereinheit, die die PCU— ÄCLZ-Übcrtragungen leitet und verschiedene Steuer- oder Tf ^register enthält.
Die Eingabe/Ausgabe-Steuereinheit IOC besitzt eigene Hilfsmittel, die in dem zentralen Prozessor CPU angeordnet sind. Es handelt sich:
— in dem Arbeitsspeicher SPU um 33 Speicherplätze zu jeweils vier Oktaten, die als Arbeits- oder Reservierungszonen verwendet werden,
— in der Datenmanagementeinheit um zwei Register eines Wortes mit 32 Bits (4 Oktaden) für die Übertragung der Daten zwischen der Kanalkopfeinheit CHUuna dem Hauptspeicher,
— in der Adreßrecheneinheit ACU um 32 Adreßpositionen, die für die Eingabe/Ausgabe-Steuercinheit IOC reserviert sind (zwei Adressen pro Digitalkanal),
— in der Spezialspeichcrsteuereinheit RCUum Schaltungen, die die Aufgabe haben, die Unterbrechungen von Mikroprogrammen für die Eingabe/Ausgabe-Stcuereinheit lOCzu leiten und auszuführen,
— in dem Steuerspeicher CSU um vier Firmware-Blöcke, von denen jeder einer Eingabe/Ausgabe-Dringlichkeitsstufe entspricht.
In dem Zentralspeicher ist eine Spezialzone vorhanden, die für die Steuerung der Eingabe/Ausgabe-Operatio-
nen reserviert ist Diese Zone ist in zwei Teile unterteilt: eine Tabelle PCT von räumlichen Kanälen und eine Digitalkanaltabelle LCT. Jede Eingabe der Tabelle von räumlichen Kanälen besteht aus 16 Wörtern, von denen jedes einem räumlichen Kanal entspricht. Eine gewisse Anzahl von Plätzen bleibt nämlich leer, wenn beispielsweise allein sechs räumliche Kanäle angeschlossen sind. Jedem räumlichen Kanal ist eine Digitalkanaltabelle LCTzugeordnet. Außer den Schaltungen, die sie mit dem zentralen Prozessor teilt benutzt die Eingabe/Ausgabe-Steuereinheit /OCeigene Schaltungen, welche sind:
— eine Kanalkopfeinheit CHUIm jede Schnittstelle PSI,
— eine Kanalsteuerschaltung CCC, die sechs Kanalkopfeinheiten CHUgemeinsam ist
— eine Kanalsteuereinheit CCU.
Eine interne gemeinsame Schnittstelle CBI ist festgelegt Die Schnittstelle CBI bildet die Schnittstelle zwischen der Kanalsteuerschaltung CCCund der Kanalsteuereinheit CCU. Die Kanalkopfeinheit CHUhai folgende Funktionen:
— Zwischenspeicherung der Daten in einem Register mit 16 Posititionen ohne Eingreifen der Mikroprogramme,
— Übertragung von Daten mit Datenkettung.
Während der Ausführung einer Folge durch den zentralen Prozessor CPU, die eine Adresse und eine Zählung für die nächste auszuführende Datenübertragung ergibt, werden die Hauptspcichcrzyklen nicht ausgeführt
Die Konfiguration wird aus verschiedenen Kanälen gebildet die alle die gleiche Geschwindigkeit haben. Der Kanal, der die geringste Dringlichkeit hat muß während der Speicherzyklen warten, die für die Zählung der anderen Kanäle ausgeführt werden.
— Zwischenspeicherung der anderen Parameter, welche die gerade ausgeführte Arbeit beireffen, wie etwa:
— die Dringlichkeitsstufe,
— die Dienstcodegruppe,
— die Restgröße des Datenblocks an der Schnittlinie PSl,
— die Fehler,
— Synchronisierung des Dialogs der Schnittstelle PSI mit den Stufen des zentralen Prozessors CPU,
— Erzeugung von Unterbrechungsanforderungen für die Verarbeitungsschaltungen, beispielsweise jedesmal dann, wenn vier Oktaden zur Übertragung in den Hauptspeicher bereitstehen, sofern die Übertragung eine Eingabe ist
— Ausführung von Funktionen, die durch Mikroprogramme gesteuert sind, um Dienstcodegruppen auszuführen, die über Spezialsteuerleitungen auf einem 2-Oktaden-Weg übertragen werden.
Gemeinsame Kanalschaltung
Die gemeinsame Kanalschaltung erfüllt folgende Funktionen:
— Auswählen der Anforderungen mit hoher Dringlichkeit, die aus Kanalkopfeinheiten CHi/kommen (Dringlichkeitsnetzwerk),
— Weitergeben der aus den Einheiten CWL/kommenden und zu den Einheiten CHUgehenden Daten,
— Speicherung der Verbindungsinformationen der Einheiten CHU.
Das Dringlichkeitsnetzwerk empfängt die Anforderungen, die durch jede Kanaikopfeinheit CHU erzeugt werden (wobei diese Anforderungen bei jedem Speicherzyklus fortgeschrieben werden). Es giht folgende Auskünfte:
— Stufe der höchsten Dringlichkeit (zwischen 0 und 3, wobei 0 die Stufe höchster Dringlichkeit ist),
— Nummer des Kanals mit höchster Dringlichkeit unter denjenigen Kanälen, die auf dieser Stufe anfordern (die Dringlichkeit unter den Kanälen nimmt in dem Fall, in welchem zwölf Gerätesteuerungen mit der Zentraleinheit verbunden sind, von 0 bis 11 ab).
Diese Auskünfte werden an die Kanalsteuereinheit CCUabgegeben. Die Kanalsteuereinheit CCUerfüllt folgende Funktionen:
— Auswahl der Stufe höchster Dringlichkeit unter den Anforderungen, die gegebenenfalls aus zwei Kanal- t>o Schaltungen kommen, und Übertragung zu der Spezialspeicher-Stcuereinheit RCU,
— Schnittstelle mit dem Übertragungsweg (BUS)A (für die Daten und die Dienstcodegruppe).
— Fortschreibung und Speicherung der zu übertragenden Oktaden,
— Synchronisierung der Hardware und der Firmware,
— Schnittstelle mit den Kanalschaltungen (die Kanalsteuereinheit CCU ist in der Lage, verschiedene Definitionen über die Schnittstelle Cßt/anzupassen),
— Ausrichtung der Oktaden von Dntcr. und gegebenenfalls der Marken.
Das Dringlichkeitsnetzwerk der Kanalsteuereinheit CCt/: Es hat zwei Funktionen analog den Funktionen, die in der gemeinsamen Kanalschaltung CCCausgeführt werde n. Man erhält so:
— die Stufe höchster Dringlichkeit unter zwei Kanalschal tungen CCC
5 — die Anzahl von Kanälen höherer Dringlichkeit, wenn die beiden Kanalschaltungen CCCgleichzeitig auf ein und derselben Dringlichkeitsstufe Operationen anfordern (die der Kanalschaltung Nr. 0 gegebene höchste Priorität entspricht der. Kanalkopfeinheiten Nr. 0 bis 5)·.
Diese Auskünfte werden in Registern RLR und ACN gespeichert und zum Erzeugen der Unterbrechungen 10 von Mikroprogrammen in dem zentralen Prozessor verwendet.
Datennetzwerk
15 Zwei Datennetzwerke richten die Daten aus, die zwLchcn den Pufferspeichern und dem Zentralspeicher übertragen werden. Die übertragenen Daten werden zu Wörtern aus vier Oktaden (plus Paritätsschlüssel) zusammengefaßt.
Die Steuerung der Ausrichtung hängt von der Adresse der Oktade innerhalb des gespeicherten Worts und von der Position der Oktaden in dem Pufferspeicher ab.
20 Der Zweiichtungs-Datenübertragungsweg. der auf die Übertragung der Dienstcodegruppen spezialisiert ist, ermöglicht die Übertragung von Zuständen, wenn er mit dem Übertragungsweg A verbunden ist, bei welchem es sich um den Hauptübertragungsweg des zentralen Prozessors handelt Eine Kanaleinheit kann durch die Kanalsteuereinheit CCUabgetrennt werden.
Dieses Merkmal ist zum Ausführen der Tests einer isolierten Routine erforderlich.
25 F i g. 1 zeigt ein Schema dss zentralen Prozessors und des Hauptspeichers.
Der Hauptspeicher MMU besteht aus adressierbaren Einheiten. Seine Kapazität kann beispielsweise zwischen 256 Kilooktaden und 1024 Kilooktaden variieren. Es ist mit dem zentralen Prozessor CPU durch mindestens eine Speichertorschaltung verbunden, welche die Schnittstelle MlU bildet. Über die Schnittstelle MIU ist der Speicher MMUeinerseits mit der Adreßrechenstufe ACU und andererseits mit der Datenmanagementein-30 heit ΟΛίί/verbunden.
Die Adreßi'chenstufe ACU ermöglicht die Übermittlung der Daten oder der Befehle zu dem Hauptspeicher. sj Sie formt die segmentierten Adressen in absolute Adressen um und speichert die absoluten Adressen für die
p| Verarbeitungen und die Übertragungen von Daten.
ß, Die Adreßrechenstufe ACU ist mit einem assoziativen Speicher verbunden, der die Segmentnummern, die
\?j 35 Zugriffsrechte, die Basen und die Grenzen der acht am häufigsten verwendeten Segmente enthält.
fS Die Datenmanagementeinheit DMU erlaubt die Datenübertragungen in den Hauptspeicher und aus dem
ja Hauptspeicher. Sie führt die Ausrichtungsoperationen an den Operanden und den Befehlen aus; sie nimmt
ii Vorauswahlen und Zwischenspeicherungen vor.
l''\ Die Datenmanagementeinheit DMU wirkt auf die Eingaben und Ausgaben von Dat?.n ein, /ichtet die Lese-
;j§ 40 oder Schreibvorgänge von Daten aus, liest die Programme und richtet sie aus und liest gewisse Programme im
fl Zentralspeicher. Die Datenmanagementeinheit steht in direkter Verbindung mit der Kanalsteuereinheit CCU.
β Die Kanalsteuereinheit CCU bildet die Schnittstelle zwischen dem zentralen Prozessor und der Kanalpuffe-
% rungseinheit CBU. Sie richtet die Eingaben und die Ausgaben von Daten aus und speichert die Parameter der
;fj Übertragungen.
:■; 45 Die Kanalpufferungseinheit CBU besteht aus der gemeinsamen Kanalschaltung CCCund aus sechs Kanalkopfeinheiten CHU. jede Kanalkopfeinheit CHU hat die Aufgabe, Wörter aus vier Oktaden, die aus der Einheit \.; CCUstammen, aufzunehmen und diese Oktaden eine nach der anderen zu der Schnittstelle PSI des peripheren
: Untersystems zu übertragen, oder Folgen von Oktaden der Schnittstelle PSl zu empfangen und sie so zusammenzufassen, daß Wörter aus vier Oktaden gebildet werden, die zu der Einheit CCU übertragen werden. Jede so Kanalkopfeinheit CHUenthält zu diesem Zweck einen Pufferspeicher mit einer Kapazität von beispielsweise 16 V Oktaden für die Eingabe/Ausgabe-Operationen.
ί Die Wartungskonsolstufe ΡΛΛ/ermöglichl Verbindungen mit:
ί ' — dem Bedienungskonsol SDP, welches die Steuerung des Systems durch die Bedienungsperson ermöglicht.
55 — dem Wartungskonsol SSPund dem Wartungskanal MC, die für die Instandhaltung des zentralen Prozessors nicht gleichzeitig benutzt werden.
Die Wartungskonsolstufe PMU wird über Fehler informiert, die während der Operationen des Prozessors festgestellt werden, und legt das Verhalten der Maschine in Abhängigkeit von dem Fehler fest. Sie führt darüber 60 hinaus auch die Wartungsfunktionen aus, die zum Auffinden eines Fehlers erforderlich sind.
Die Wartungskonsolstufe PMU\s\ mit einem Untersystemkonsol SSPverbunden.
Die Mikroprogrammierungsspcicher-Steuereinhcit RCL/ steuert die Operationen des zentralen Prozessors unter gewissen Bedingungen.
In diesem Fall:
— adressiert sie die Wörter von Mikroprogrammen, die in der Einheit CSU enthalten sind,
— speichert sie das Mikroprogrammwort, welches gerade ausgeführt wird.
— leitet sie die Verzweigungen und die Unterbrechungen,
10
— kontrolliert sie die Ausführungsslufen des Mikroprogramms,
— kontrolliert sie die Ausführung Firmware.
Die Einheit RCU überträgt die Wörter von Mikroprogrammen des Steuerspeichers CSU zu den anderen Einheiten und berechnet die nächste Adresse des Mikroprogramms. Jedes Mikroprogrammwon kann beispiels- s weise eine Länge von vier Oktaden haben und kann gleichzeitig fünf Mikrofunktionen steuern, die sich in verschiedenen Teilen des Prozessors befinden.
Die arithmetische und logische Einheit ALU führt die arithmetischen Dczimal/Binär-Operalioncn und die logischen Operationen an Operanden aus vier Oktaden aus. Sie führt außerdem die Rechenoperationen an segmentierten Adressen, die Speicherung der Segment- und Ringnummern und die Sammeloperation in dem Wartungsbetrieb aus.
Die Synchronisierungsstufe TEU enthält einen Taktgeber, welcher die verschiedenen Signale liefen, die von dem zentralen Prozessor CPU benutzt werden. Sie kontrolliert die Übertragung der Synchronisierungsimpulse und bestimmt die Länge der Zyklen des zentralen Prozessors CPU. Sie enthält außerdem drei Zeitmeßeinrichtungen, die von einem Quarzoszillator gesteuert werden.
Die lokale Speichereinheit SPU besteht aus einem Schreib-Lese-Speicher für beispielsweise 96 Wörter. Sie enthält Zonen zum Speichern des Inhalts der unter dem Gesichtspunkt der Software sichtbaren Register und der Parameter des Systems. Außerdem enthält sie Arbeitszonen für jede Mikroprogrammstufe.
Der Emulator EMU ist Gegenstand einer französischen Patentanmeldung der Anmelderin (Aktenzeichen 73 42713).
Fig.2 zeigt anhand eines vereinfachten Schemas die Aufgabe der Eingabe/Ausgabe-Steuer-"i/iheit IOC. In dieser Figur sind zwei Gerätesteuerungen PCU dargestellt, die jeweils mit mehreren Peripheriegerai-in verbunden sind. Die beiden Gerätesteuerungen PCU sind auf ihrer linken Seite mit der Steuereinheit IOC verbunden. Letztere ist mit der aus zentralem Prozessor CPU und Hauptspeicher MMU bestehenden Anordnung verbunden.
Wie im folgenden noch näher erläutert, wird der zentrale Proze*"or CPU für das Eingeben der Daten in den Hauptspeicher verwendet, und sei es nur für die Berechnung der absoluten Adressen.
Es ist berechnet worden, daß in einem mittleren System die lnformaiions-Eingabe/Ausgabe-Operationen statistisch ungefähr 1Ao der gesamten Verarbeitungszeit in Anspruch nehmen. Es folgt daraus, daß die Eingabe/ Ausgabe-Steuereinheit IOC nur während eines Zehntels der gesamten Verarbeitungszeit arbeitet. Das entspricht einem Verlust an Ausnutzungszeit des Materials.
Gemäß einem Merkmal der Erfindung ist die Eingabe'Ausgabe-Steuereinheit lOC'in den zentralen Prozessor CPU integriert In diesem sind eine gewisse Anzahl von Stufen reine /OC-Stufen. In F i g. 1 sind diese Stufen mit einer gestrichelten Linie umrahmt, welche das Bezugszeichen IOC trägt. Es handelt sich hauptsächlich um die Steuereinheit CCU, die gemeinsame Kanalschaltung CCCund die Kanalkopfeinheiten CHU.
Sämtliche Stufen des zentralen Prozessors CPU, die oben genannt worden sind, arbeiten bei den Eingabe/ Ausgabe-Operationen ebenso wie bei allen Verarbeitungen zusammen. Es sind jedoch Spezialregister der Eingabe/Ausgabe-Steuereinheit lOC'm die Datenmanagementstufe DMUeingeführt worden und die Kapazität des in der Adreßrecheneinheit enthaltenen Speichers ist vergrößert worden. Das Prinzipschema von F i s_:- 2 entspricht somit nicht der Wirklichkeit, da die Eingabe/Ausgabe-Steuereinheit IOC teilweise in den zentralen Prozessor CPU integriert ist.
In der Folge der Beschreibung wird die Eingabe/Ausgabe-Steuereinheit /OCaIs die Gesamtheit der Einrichtungen bezeichnet, die für die Übertragung der Informationen zwischen dem Hauptspeicher und den Peripheriegeräten erforderlich sind. Genauer gesagt, die Eingabe/Ausgabe-Steuereinheit IOC wird die Gesamtheit der Einrichtungen sein, die zur Herstellung von Verbindungen zwischen den Gerätesteuerungen PCU und dem Zcntralspeicher beitragen, wobei die Eingabe/Ausgabe-Steuereinheit IOC jedoch unter gewissen Umständen den zentralen Prozessor CPU anrufen kann.
Ein Ziel der Erfindung ist es, Einrichtungen zum Aufteilen der Hilfsmittel unter die Eingabe/Ausgabe-Steuereinheit IOC und den zentralen Prozessor CPU zu schaffen. Zu diesem Zweck gibt, wie im folgenden näher dargelegt werden wird, eine hierarchische Ordnung der Aufgaben den Eingabe/Ausgabe-Operationen den Vorrang gegenüber den eigentlichen Verarbeitungsoperationen.
Fig.3 zeigt diese Mu'liplexierung. In dieser Figur ist angenommen, daß die Gerätesteuerung PCU vier Digitalkanäle hat. Die Kanäle 1 und 3 haben ein in der Ausführung begriffenes Kanr.lprogramm, der Kanal 4 ist in eine Warteschlange eingereiht und das Programm ist nich' bt^oinen worden. Dem Digitalkanal Nr. 2 (nicht dargestellt) ist kein Kanalprogramm zugeordnet; er ist verfügbar. In diesem Zeitpunkt führt die Gerätesteuerung PCL/die Kanalbefehlseingabe CCE φ φ 3 auf dem Digitalkanal Nr. 3 aus. Die Gerätesteuerung PC/kann anfordern:
— entweder die Entnahme des nächsten Steuerbefehls des Kanals 3,
— oder Verbinden des Digitalkanals Nr. 1 und Nehmen der nächsten Kanalbefehlseingabe CCfNr. 2,
— oder den Beginn eines neuen Programms auf dem Digitalkanal Nr. 4,
Fig.4 ist eine auseinandergezogene Darstellung der Eingabe/Ausgabe-Steuereinheil IOC. In dieser Figur sind rechts drei Gerätestcuerungcn PCU1, PCU2 und PCU3 dargestellt, von denen jede mit Peripheriegeräten derselben Art verbunden ist. Jede Gerätestcuerung PCU verkehrt mit einen Pufferspeicher RF über eine Schnittstelle PSI. Die Übertragung erfolgt dabei durch einen Zeiger der sich in dem Arbeitsspeicher SPU befindet, welcher in da-Tabelle der räumlichen Kanäle eine Eingabe eines räumlichen Kanals PCEbestimmt, die
ihrerseits ermöglicht, eine Kanaltabellc zu erreichen, in der sich Digitalkanaleingaben LCE befinden. Die |
Pufferspeicher RF sind alle mit einer gemeinsamen Steuerschaltung CCC verbunden, deren Aufgabe oben beschrieben worden ist. An dem Ausgang der Schaltung CCC gehen die Daten in die Kanalsteucreinheit und danach in die Datenmanagementcinhcit DMUTiber, von wo aus sie in den /"cntra!speicher MMgehen, der außer den Tabellen von räumlichen Kanälen und von Digitalkanälen die eigentlichen Kanalprogramme enthält, die aus Kanalbefehlseingaben CCEgebildet sind, welche die Arbeit der r.ingabe/Ausgabe-.Sieuercinheit /OCorganisieren.
Schnittstelle PSIdcs periphcren Systems
ίο Das ist ein Verbindungsweg, der das Synchronisieren der Informationsübertragungen /wischen der Eingabe/ Ausgabe-Steuereinheit /OCund der entsprechenden Gerätesteucrung PCU erlaubt.
Es gibt 25 PSASignale.die in zwei Gruppen unterteilt sind:
— die neun Datenübertragungsleitungen und die sech?.ehn Steucrlcitungen.
Die Datenübertragungsleitungen (DLO bis 7 und P) sind Zwcirichtungswcgc mit einer Breite von einer Oktade (8 Informationsbits und 1 Bit für ungerade Parität). Diese Datenübertragungsleiiungcn werden /um Übertragen der Informationsoktaden von der Gerätesteuerung PCU zu der Steuereinheit /OC(Leseoperation)
—.-J — — .-—-» -j-*— c*·—. —_.~'-.t--·!» /y-i/—·.·. ι /~" ■·· * Λ — ns~*i lic U 'i~ ·· ·· w%\ ·, ι < u*»· n;n »»- ι ην*>^»η»
UUI. I VU[IUCI .JIt Ut I dllM4.ll ItVt- /.UUtI VJl-IClIt.^ ttUtl UHg I *~ C^ ^OtIII (.(Ul/plf itllUK/ » i. I ni.iiui.1. t^\,t wxt.« uk.it.w|<l*
ration können entweder die in den Peripheriegeräten erzeugten Informationsoktaden oder eine Dicnstcodcgruppe mit oder ohne zugeordnete Information übertragen werden, und umgekehrt.
Die Dienstcodegruppen werden von der Gerätesteucrung PCUan die Steuereinheit /OCabgcgebcn. um die Ausführung von sich auf die Gerätesteueriing PCU beziehenden Kanalprogrammen zu kontrollieren. Hin System von Dienstcodegruppen und zugeordneten Informationen wird als Dicnsleodegruppcnfolgc bezeichnet. Bei einer Schreiboperation können Daten, die entweder für das Peripheriegerät oder für das Steuerregister des Peripheriegeräts bestimmt sind, oder ein Kanalbcfchl oder ein /OC-Bcfehl übertragen werden, der an die Gerätesteuerung PCU abgegeben wird, um die Übertragungen in der Eingabe/Ausgabc-Steucrcinhcil lOC'v.u überprüfen.
Die Steuerleitungen übertragen die Informationen über die Schnittstelle, identifizieren die Folgen (Scqucnzen), beenden c!;e Übertragungen, modifizieren das Vorhandensein von Informationen in der Eingabe/Ausgabe-Steuereinheit IOC, stellen die Gerätesteuerung PCU auf Null zurück, gestaüen die Kontrolle des Systems und die Organisation der /^/-Kommunikationen, gestatten das Überprüfen oder die Diagnose vier Schnittstelle PSI. Alle diese Leitungen sind Ein-Richtungs-Leitungen.
Die am Ende mit »I« (IN) bezeichneten Leitungen haben ihren Anfang in der Gerätesteuerung PCU und ihr Ende in der Steuereinheit IOC; für die am Ende mit »O« (OUT) bezeichneten Leitunger, gilt das Umgekehrte.
Eine Schnittstelle PS/ stellt der Zentraleinheit CPU und der Gerätesteucrung PCU eine bestimmte Anzahl von Hilfsmitteln Z'jr Verfugung; die in F i g. 9 dargestellt sind.
In dieser Figur tragen die Verbindungsdrähtc Bczugs/.cichcn. welche Signale angeben, die folgende Bedeutung haben (die Pfeile geben die Übertragungsrichtung an):
5C/in das Initialisierungssignal einer Dicnstcodcgruppe.
5EO ist das Ausgabe-Freigabesignal: es bedeutet, daß die Kingabc/Ausgabc-.Steucreinheit zum Empfang einer Dienstcodegruppe bereit ist.
STI und STO kontrollieren die Datenübertragung an der Schnittstelle.
TMI ist das Signal, welches das Ende der Übertragung der von der Gerätestcucrung abgegebenen Informationen angibt.
7"MO ist ein Signal, welches das Ende der Übertragung der von der Zentraleinheit abgegebenen Informationen angibt.
CPW(Channel Programm Waiting) ist ein Signal, welches der Gerätesteuerung meldet, daß ein Kanalprogramrn in der Hardware/Firmware der Zentraleinheit wartet.
INW'ist ein Signal, weiches dafür verwendet wird, der Gcrätesteuerung zu melden, daß ein Befehl in die Warteschlange in der Eingabc/Ausgabc-Steucreinheit cingcrcil worden ist, um an sie abgegeben zu werden.
ISO ist ein Signal, welches bedeutet, daß ein Fehler in der Übertragungsfolge festgestellt worden ist und welches die Gerätesteuerung darüber informiert.
RSO ist ein Signal, welches die Gerätesteuerung wieder initialisiert und sie in einen bekannten Zustand bringt. Insbesondere erlaubt es, jeglichen Dialog zwischen der Gerätesicuerung und der F.ingabe/Ausgabe-Steuereinheit sofort zu unterbrechen.
OPO ist ein Signal, weiches angibt daß die Eingabc/Ausgabe-Steucreinheit. die an die Schnittstelle ange-
co schlossen ist, in Betrieb ist.
OPI ist ein Signal, welches angibt, daß die Gerätestcuerung. die an die Schnittstelle angeschlossen ist, in Betrieb ist
MTI ist ein Signal, welches jedesmal dann den Wert 1 hat, wenn die Gerätestcuerung zumindest ein Kanalprogramm ausführt
REl ist ein Signa!, welches jedesmal dann den Wert ! hai, wenn die Gerätesteuerung ein Kanalprogramm ausführt und einen besonderen Steuerbefehl (Kanalbefehl) empfängt.
DAO ist ein Signal, welches die Schnittstelle PSIv.u diagnostizieren gestattet
Die Eingabe/Ausgabe-Operationen an der Schnittstelle PSl sind in Kanalprogrammen spezifiziert, die in dem |>]
Zentralspeicher enthalten sind und die Gerätesteuerung leitet die F.ingube/Ausgabe-Operation in Abhängigkeit von den in jedem Kanalprogramm enthaltenen Steuerbefehlen. Die Gerätesteuerung soll somit unter Verwendung von Kanalprogrammzeigern auf das Kanalprogramm zugreifen: sie führt das Kanalprogramm mittels verschiedener Operationen aus, wie etwa: Lesen eines Inilialisicrungssteuerbefehls einer Datenübertragung, Übergang auf einen neuen Steuerbefehl usw. Diese Art der Ausführung des Kanalprogramms erreicht man mit Hilfe von Dienstcodegruppen, und die in dem Kanalprogramm enthaltenen Steuerbefehle werden in Abhängigkeit von den Dienstcodegruppen zu der Gerätcsteucrung übertragen. Die Dienstcodegruppe kann Bedeutungen habc-ii. wie etwa Initialisierung eines neuen Programms, Stan einer Übertragung von Daten oder Wiederholung eines Eingabe/Ausgabe-Steuerbefehls usw.
Die Struktur eines Kanalprogramms setzt sich aus dem Kopf des Kanalprogramms, der aus vier Wörtern besteht, von denen das erste Wort der absoluten Adresse CPAA des Kanalprogramms entspricht, und aus Kanalbefehlseingaben CCE zusammen, die jeweils aus zwei Wörtern bestehen, von denen das erste Wort mit jj
CClVO und das zweite Wort mit CCW1 bezeichnet ist. F i g. 5 zeigt diese Struktur.
Der Kopf des Kanalprogramms enthält folgende Informationen: 15 jjj
I. Die Nummer des dem Kanalprogramm zugeordneten Kanals, die aus der Digitalkanalnummer LCund einer Nummer FC besteht, die als Nummer des räumlichen Kanals bezeichnet wird, welcher der Hardware einer besonderen Schnittstelle PSI entspricht. Eine Zentraleinheit versorgt η Gerätesteuerungen mit η Schnittstellen PSI. 20 * Die Dringlichkeit der Ausführung des Kanalprogramms in Abhängigkeit von einem Vergleich mit den {'
anderen Kanalprogrammen.
3. Die Adresse (G, D,) des Semaphors, dem während der Ausführung eines Kanalprogramms bestimmte Nachrichten zugeleitet werden.
4. Die Information, welche die Zone angibt, in der die detaillierten Zustände der Peripheriegeräte gespeichert werden können.
Das Format des Kanalprogrammkopfes ist in F i g. 6 dargestellt.
Eine Kanalbefehlseingabe CCE liefert eine einfache Eingabe/Ausgabe-Operation an einem Peripheriegerät. Diebeiden Wörter enthalten:
1/ einen Kanalbefehl
2/ eine »Kennzeichenw-Zone
3/ die Adreßinformation.
Das Format eines Kanalbefehls ist in F i g. 7 angegeben.
Die Ausführung eines Kanalprogramms besteht aus folgenden verschiedenen Phasen.
1) Verbindungsphase.
In dieser Phase ist das Kanalprogramm mit dem Digitalkanal verbunden, welchem es zugeordnet ist. Der Digitalkanal ist in eine Warteschlange von Digitalkanälen eingereiht, die bereits mit ihren eigenen Kanalprogrammen verbunden sind.
2) Ausführungsphase.
In dieser Phase wird der dem Kanalprogramm zugeordnete Digitalkanal aus der Warteschlange herausgezogen, so daß die Gerätesteuerung die in dem Kanalprogramm enthaltenen Kanalbefehle ausführen kann.
3) Beendigungsphase.
Die Gerätesteuerung gibt an die Eingabe/Ausgabe-Steuereinheit der Zentraleinheit eine Nachricht ab. die das Ereignisende meldet.
Die Hauptbesonderheiten dieses Verfahrens des Austauschens von Informationen zwischen der Eingabe/Ausgabe-Steuereinheit /OCund der Gerätesteuerung sind:
— sein Zweirichtungscharakter; die Schreib- und Leseoperationen erfolgen auf denselben Leitungen der Schnittstelle,
— die Abtastsignale 577 und STO sind voneinander abhängig,
— die Daten werden auf den Leitungen gleichzeitig mit dem Abtastsignal dargeboten. Diese Gleichzeitigkeit beseitigt die Schwierigkeiten, die sich im Stand der Technik bei der Optimierung der Sicherheitsspanne ergeben, die zwischen dem Zeitpunkt der Übertragung von Daten und der Erzeugung des Abtastsignals vorzusehen ist;
— die Aufnahme der Daten in ein Pufferregister kann erst am Ende von drei Signalaustauschvorgängen an der Schnittstelle erfolgen. Der erste Austauschvorgang entspricht der Abgabe des Signals STI. Der zweite Austauschvorgang entspricht der Anwort des Signals STO. Der dritte Austauschvorgang entspricht der Übertragung der abfallenden Flanke des Signals STI. Es gibt somit keine Fehlermöglichkeit, da die Datenabtastung an stabilen Daten auf den Leitungen der Schnittstelle PSI erfolgt.
Diese letzteren Besonderheiten bewirken, daß die Verbindung einer Zentraleinheit mit ihrer entfernten Gerätesteuerung keine besondere Vorsicht erfordert und daß das Verbindungssystem von der Verbindungslänge vollkommen unabhängig ist.
Das Format der Kanalbefehlseingabe CCEfüreine Übertragung von Daten ist in F i g. 8 dargestellt. Die dieser besonderen Kanalbefehlseingabe CCEzugeordneten Kanalbefehle bcslim ,nen entweder Steueroperationen der Gerätesteuerung PCU oder die Übertragung von Daten zwischen den Peripheriegeräten und dem Hauptspeicher.
/, 5 Die mit »COUNT« (Zählung) bezeichnete Zone gibt in Oktaden die Abmessung des Hauptspeicherbereiches
an, zu dem oder von dem aus die Übertragung stattfinden wird, und das folgende Wort ist die absolute Adresse der ersten Oktade des Pufferspeicherbereichs des Hauptspeichers für die Übertragung von Daten, die durch den entsprecherden Kanalbefehl bewirkt wird.
■V Ein Kanaiprogramm kann auf normale oder auf anormale Weise beendet werden. In dem ersten Fall markiert
'.■!■ ίο die letzte übertragene Kanalbefehlseingabe CCE das Ende des Kanalprogramms, in dem zweiten Fall hört die
iVi Ausführung eines Kanalprogramms bei der Ausführung einer Zwischcnkanalbefchlseingabe CCE auf. In dem
U einen oder dem anderen dieser Fälle gibt die Gerätesteuerung an die Zentraleinheit eine Dienstcodegruppe zur
Initialisierung der Beendigung ab, woran sich die Nummer des Digitalkanals LC und die Übertragung von v; Zusammenfassungszuständen anschließen. Die Folge, welche die Endphase eines Kunalprogramms veranschau-
Fj 15 licht, ist in der Figur angegeben und ist gleich der der Ereignismeldung.
;y Ausführung der Kanalprogramme
L; Die Ausführung eines Kanalprogramms erfordert verschiedene Phasen. Während der Verbindungsphase wird
^ 20 das Kanalprogramm mit einem Digitalkanal verbunden, der ihm zugeordnet ist. Der Digitalkanal wird dann in
;;; eine Warteschlange von Digitalkanälcn eingereiht, die bereits mit ihren Kanalprogrammen Q/LC/INI verbun-
§ den sind.
ι!ΐ Die Ausführungsphase ist diejenige Phase, in deren Verlauf der Digitalkanal aus der Warteschlange herausge-
":, zogen wird und/oder die Gerätesteuerung PCL/die in dem Kanalprogramm enthaltenen Steuerbefehle ausführt.
t, 25 Während der Endphase gibt die Gerätesteuerung PCUeine Programmende-Nachricht ab.
j Zum Ausführen eines Kanalprogramms wird der passende Digitalkanal mit demselben durch den Befehl
CONNECT verbunden.
i't Der Befehl CONNECT bringt die absolute Adresse CPAA des Kanalprogramms in die Eingabe LCE des
4 zugeordneten Digitalkanals und bringt denselben in eine Schlange von Digitalkanälcn, die alle durch denselben
3 30 räumlichen Kanal hindurchgehen.
;-j Wenn zumindest ein Digitalkanal wartet, wird die Leitung CPWm den Digitalzustand 1 versetzt. Für jeden
;■: räumlichen Kanal gibt es eine Schlange Q/LC/INI von Digitalkanälen, die auf ihre Ausführung warten.
Jede Warteschlange organisiert die Digitalkanäle entsprechend der Reihenfolge ihres Aufrufes durch die
■■',' entsprechende Gerätesteuerung PCU.
ρ 35 Jeder Digitalkanal, dessen Kanalprogramm einen Ausführungsanfang erhalten hat, wird aus der Warteschlan-
.'.. ge herausgezogen, in die er eingereiht war. Wenn sämtliche Kanäle aus der Schlange entnommen worden sind
% fällt das Signal auf der Leitung CPWwieder auf Null ab.
f\ Die in die Schlange Q/LC/INI eingereihten Digitaikanäle werden in die Reihenfolge der Dringlichkeit der
;- zugeordneten Kanalprogramme und für jede Dringlichkeitstufc in die Reihenfolge der Ankunft gebracht.
Μ Ausführung der Übertragungen von verketteten Daten
π Ziel der Eingabe/Ausgabe-Steuereinheit IOC während einer Datenübertragungsfolge ist es, daß die Übertraft gungsrate an der Schnittstelle PSI nicht von der Gerätesteuerung PCU abhängig ist und durch die Ausführung
% 45 der Verkettung von Daten nicht beeinflußt wird. Aus diesem Grund wird ein Pufferspeicher RF mit einer
;1 Kapazität von sechzehn Oktaden in jede Torschaltung PSI (vgl. Fig.4) eingefügt. Die Schnittstelle dieses
ji; Pufferspeichers hat eine Breite von 1 Oktade auf der Seite der Gerätesteuerung PCU und von 4 Oktaden auf der
f< Seite des Zentralspeichers. Die Übertragungsrate zwischen dem Zentralspeicher und dem Pufferspeicher (bei-
H spielsweise 1,66 Megaoktaden/s) ist größer als die höchste Übertragungsrate an der Schnittstelle PSI für diese
I so Torschaltung (beispielsweise 1,25 Megaoktaden/s). Die Datenkettung wird durch die Firmware ausgeführt, wenn
I die »Zählung« auf der Höhe des Zentralspeichers beendet ist, und während dieser Ausführung können Oktaden
I zwischen der Gerätesteuerung PCU und dem Pufferspeicher übertragen werden.
I Während einer Schreiboperation (MM—+PCU) werden die Oktaden zuerst aus dem Zentralspeicher MM in
'Jf den Pufferspeicher RFund dann zu der Gerätesteuerung PCU übertragen.
ij. 55 Während einer Leseoperation (PCU--MM) werden die von der Gerätesteuerung PCUabgegebenen Oktaden
Ü zuerst in dem Pufferspeicher ÄFgespeichert und dann an den Zentralspeicher abgegeben.
Die Oktaden werden zwischen dem Pufferspeicher und dem Zentralspeicher während einer Hardware/Firmware-Folge oder -Sequenz übertragen, die als Datenübertragungsfolge oder Folge DQ bezeichnet wird. Diese Folge hat eine Länge von vier Oktaden. Die Position im Zentralspeicher, wo diese Daten eingeschrieben werden, 60 erhält man durch eine Adresse aus 20 Bits, die sich in einem Register SPA der Adreßrecheneinheit ACUbefindet. Diese Adresse wird am Ende jeder Folge DQ überprüft
Das Management der Datenübertragungen erfordert für jede Kanalkopfeinheit CHUdrei Zähler, nämlich:
— einen ersten Zähler SPC der sich in der Kanalsteuereinheit CCU befindet und der auf der Höhe des 65 Zentralspeichers für die Kanalbefehlseingt.be CCE. die gerade ausgeführt wird, die Anzahl von Oktaden
angibt, die zu übertragen übrigbleiben,-
— zwei weitere Zähler L1 und L 2, die in der Kanalkopfeinheit CHU angeordnet sind. Der Zähler L 1 wird zum Anzeigen der Anzahl von Oktaden verwendet, die auf der Höhe der Schnittstelle PSI for die entspre-
14
:hende Eingabe CCEzu übertragen übrigbleiben, und der Zähler L 2 wird mit der Länge der Übertragung geladen, die in der folgenden Eingabe CCEdes Feldes DCA angegeben ist.
Der Zähler L 1 wird jedesmal dann um I dekrementiert (vgl. Fig. 10), wenn eine Oktade an der Schnittstelle PSI übertragen wird, und der Zähler SPC wird bei jeder Folge DQ der Anzahl von in den Zentralspeicher übertragenen Oktaden dekrementiert.
Eine Übertragung von nicht verketteten Daten wird in der gleichen Weise wie die letzte Eingabe CCEdes Feldes DCA ausgeführt. Eine Steuerbefehls- oder Peripheriegcrätzustandsübertragung wird wie eine Datenübertragung ausgeführt, deren Parameter (Speicher- und Zählaktion) direkt durch die Firmware berechne?, werden.
Wenn die Gerätesteuerung PCL/die Ausführung eines neuen Kanalprogramms verlangt, ist der der Wartesch- u lange entnommene Digitalkanal mit der höchsten Dringlichkeitsstufe derjenige, der als erster angekommen war (das ist die Regel: wer als erster eingegeben wird, wird als erster abgegeben, — FIFO). Die Gerätesteuerung PCUfordert die Ausführung eines neuen Kanalprogramms an, indem sie an die Eingabe/Ausgabe-Steuereinheit IOC eine Dienstcodegrjppenfolge /A/P(Bcginnen eines neuen Programms) abgibt. Diese Folge wird mit einer Oktade geschrieben.
Jedem Difc'italkanal ist in der Warteschlange eine Verbindung zugeordnet. Es handelt sich um eine Zone der Digitalkanaleingabe LCE, welche die Nummer des nächsten Digitalkanals N ■ CCE) der Schlange und die Dringlichkeit des Kanalprogramms enthält, welches dem folgenden Digitalkanal zugeordnet ist (PRI).
Die Verbindung des Kopfes der Warteschlange enthält die Nummer des ersten Digitalkanals der Schlange und die Dringlichkeitsstufe des zugeordneten Kanalprogramms, welches in der Hingabe Hps entsprechenden ;c räumlichen Kanals gespeichert ist.
Die Ausführung eines Kanalprogramms wird durch die Gerätesteuerung PCUmittels einer Dienstcodegruppenfolge gesteuert. Die Dienstcodegruppenfolgcn geben Zugang zu dem Inhalt der Kanalbefehlseingaben des Kanalprogramms mit Hilfe von zwei Zeigern, dem Steuerzeiger CMPunddem Kontrollzeiger ClVP.
Der Steuerzeiger CMPkann ausschließlich auf das Steuerwort CCWO in einer Kanalbefehlseingabe hinweisen. Dieser Zeiger ist eine absolute Adresse und gibt die Kan?,lbefehlseingabe CCE des Kanals an, dessen Programm gerade ausgeführt wird. Er ist in einem Wort der Eingabe PCE eines dem Kanalprogramm entsprechenden räumlichen Kanals gespeichert.
Der Kontroll- oder Steuerwortzeiger CWP kann auf ein beliebiges Kanalbefehlswort im Innern eines Kanalprogramms hinweisen. Der Zeiger CWP ist eine absolute Adresse und erlaubt den Zugriff zu dem Inhalt der Wörter CCWO und CCW \ der Kanalbefehlseingabe CCE, deren Programm gerade ausgeführt wird.
Die Adresse CWP ist in einem Wort des lokalen Speichers SPU (Wort PA 0) entsprechend dem räumlichen Kanal gespeichert, auf welchem das Kanalprogramm ausgeführt wird.
Dienstcodegruppenfolge
Wenn der Digitalzusland der Leitung CPWgleich 1 ist, ist zumindest ein Digitalkanal einem Kanalprogramm zugeordnet und erwartet seine Ausführung in einer Warteschlange Q/LC/INI.
Um mit der Ausführung des Kanalprogramms zu beginnen, welches dem ersten Digitalkanal der Schlange zugeordnet ist, gibt die Gerätesteuerung PCU'an die Steuereinheit /OCeine als »Beginn eines neuen Programms INP« bezeichnete Dienstcodegruppenfolge auf den Datenübertragungsleitungen der Schnittstelle PSIab.
Die Steuereinheit IOC entnimmt der Warteschlange den ersten Digitalkanal und gibt an die Gerätesteuerung PCU die aus dem Kanalprogrammkopf entnommene Digitalkanalnummer und die erste Kanalbefehlseingabe CCE ab. Die Steuereinheit IOC initialisiert die beiden Kanalprogrammzeiger CAfP und CWP von der absoluten Programmadresse aus, die in der dem Kanalprogramm entsprechenden Digitalkanaleingabe LCE gespeichert ^5 ist. Der Zeiger CMP weist auf das Steuerwort CCWO in der ersten Kanalbefehlseingabe CCE hin, und der Zeiger CWP weist auf das Wort CCWl in der ersten Kanalbefehlseingabe oder das Steuerwort CCWO in der zweiten Eingabe gemäß der Art des Kanalbefehls in der ersten Eingabe hin.
Verschiebung der Programmzeiger
Jedesmal dann, wenn die Ausführung eines Kanalbefehls beendet ist, gibt die Gerätesteuerung PCU an die Steuereinheit /OCeine Dienstcodegruppenfolge ab, um den Progrsmmzeiger des Kanals zu verschieben.
Die Hauptfunktion dieser Dienstcodegruppe besteht darin, die Werte von CMP und CWP zu verändern. Es gibt zahlreiche Möglichkeiten:
— Wiederholung des Steuerbefehls, die Zeiger CMPund CWP weisen erneut auf die gleiche Kanalbefehlseingabe hin. Diese Möglichkeit wird verwendet, wenn die Geräiesteuerung PCU den Kanalbefehl Wiederbeginnen möchte, den sie soeben ausgeführt hat;
— normale Betriebsart, die Zeiger CMP und CWP weisen auf eine neue Kanalbefehiseingabe hin und werden nach vorn verschoben, entweder durch eine Kanalbefehlseingabe CCF(inkrementeller Betrieb) oder durch zwei oder mehr Eingaben CC£(Sprungbetrieb);
— salvenweiser Wiederbeginn, die Zeiger CMP und CWP werden nicht verschoben und weisen immer auf dieselbe Kanalbefehiseingabe CCEKm. Diese Möglichkeit wird verwendet, wenn die Gerätesieuerung PCU eine salvenweise Übertragung von Daten mit der Kanalbefehiseingabe, die sie gerade ausgeführt hat, Wiederbeginnen möchte.
Diese Dienstcodegruppenfolge gibt an, welche Aktion der Verschiebung der Zeiger CMP und CWP folgen soll, bei der es sich handeln kann:
— entweder um eine Datenübertragung mit geringer Dringlichkeit ohne Kanalbefehlsübertragung, — oder um eine Datenübertragung hoher Dringlichkeit ohne Kanalbefehlsübertragung,
— oder um eine Kanalbefehlsübertragung.
— oder um eine Kanalbefehlsübertragung und um eine Datenübertragung hoher Dringlichkeit, wenn eine Datenübertragung durch den Kanaibefehl verlangt wird (Kombinationsbetrieb).
ίο Die Dringlichkeitsstufe der Datenübertragung wird durch die Gerätesteuerung PCUfestgelegt
Beginn einer Datenübertragung in einem der beiden folgenden Fälle: |
— Datenübertragung, die durch den Kanaibefehl der ersten Kanalbefehlseingabe CCE des Kanalprogramms | verlangt wird; f
— eine Dienstcodegruppenfolge zur Verschiebung der Zeiger gibt eine Verschiebung der Zeiger an, an die sich yf alteiii eine Kanalbefehlsübertragung anschließt, wobei eine Datenübertragung durch den Kanaibefehl % verlangt wird. Die Datenübertragung kann erst begonnen werden, nachdem die Gerätesteuerung PCU an ; J die Eingabe/Ausgabe-Steuereinheit IOC eine als Datenübertragungsbeginn bezeichnete Dienstcodegrup- Sj
penfolge abgibt ;
Die Ausführung eines Kanalprogramms läuft folgendermaßen ab: Vj
IOC *- PCU r\
CPW'aufl — i|
♦— Beginn eines neuen Programms, INP 'A
In den zugeordneten Programmkanal wird —♦ Ausführung der ersten Kanalbefehlseingabe CCE ji die Nummer des Digitalkanals und die erste |"i
Kanalbefehlseingabe CCE eingegeben ?i
«— Verschiebung des Programmzeigers ' i
Folgende Kanalbefehlseingabe CCE
♦— Beginn der Datenübertragung \
<— Ausführung der Übertragung von CCE-Daten, '1
«— Verschiebung des Programmzeigers ; ·
usw. J:
Kanalbefehle Es gibt sechs Arten von Kanalbefehlen:
— Datenübertragung: Lesen/Schreiben/Eingabekontrolle/Ausgabekontrolle
— Kontrolle ohne Datenübertragung
— unbedingte Verzweigung (UCB)
Test und Vorbereitung
— Kontrolle ohne Datenübertragung (unmittelbar)
— bedingte Verzweigung (unmittelbar): bedingte normale Verzwcigung/Indexverzweigung
Diese Kanalbefehle werden aile durch die Gerätesteuerung PCU ausgeführt, mit Ausnahme der unbedingten Verzweigung UCB und des Test- und Nullstellbefehls, die durch die Eingabe/Ausgabe-Steuereinheit IOC ausgeführt werden. :
Die als unmittelbare Befehle bezeichneten Steuerbefehle sind durch das Vorhandensein eines Kennzeichens »flag« charakterisiert, welches den Digitalwcrt 1 hat. Eine Kanalbefehlseingabe ist in F i g. 7 dargestellt.
Format der Datenübertragungseingaben: F i g. 8
Die Kanalbefehle, die dieser Art von Eingabe zugeordnet sind, charakterisieren die Übertragungen von Daten zwischen den Peripheriegeräten oder den Kontrollregistcrn der Gerätesteuerung PCi/unddem Hauptspeicher. Das Zählfeld COUNT'gibt in Oktaden die Länge des Pufferbereiches des Hauptspeichers an, zu dem hin oder von dem aus die Übertragung erfolgen wird. Dieses Zählfeld ist niemals Null.
Die absolute Adresse im Datenpufferspeicher ist die absolute Adresse der ersten Oktade des Hauptspeichers für die durch den entsprechenden Kanalbefehl ausgeführte Übertragung.
Ausführung der Kanalbefehlscingabe
bS Jede Kanalbefehlseingabe CCE enthält ein Datenkettungskennzeichen und ein Befehlskettungskennzeichen, die angeben, in welcher Betriebsart sie ausgeführt werden soll. Im Befehlskettungsbelrieb wird das Verkettungskennzeichen jeder Eingabe CCE eines Kanalprogramms auf den Digitalwert Null gesetzt. Jede Eingabe CCE wird zu ihrer Ausführung an die Gerätesteuerung PCUabgegeben, ausgenommen dann, wenn die Eingabe CCE
eine unbedingte Verzweigung UCB oder ein Test ist, die durch die Steuereinheit IOC ausgeführt werden, wie oben angegeben. Das Befchlskeitungskennzeichcn hat den Digitalwcrt 1, mit Ausnahme in der letzten Eingabe CCEdcs Kanalprogramms, in welcher es Null ist.
Em Datenkettungsbetrieb werden die Übertragungen von Datenblöcken ohne Unterbrechung verkettet, selbst dann, wenn die Quellen und Bestimmungsorte dieser Blöcke in dem Zentralspeicher nicht aneinander s angrenzen. Die Datenblöcke werden verkettet, indem eine Gruppe von Kacalbefehlseingaben CCE verwendet wird, die sich in einem Verkettungsfeld DCA befindet Die Eingaben, die sich in dem Feld DCA befinden, sind allein Datenübertragungen von Verzweigungen oder von Teststeuerbefehlen.
Jede Eingabe CCfflegt die Übertragung eines Datenblockes fest Die Übertragungen von Blöcken in dem Feld DCA sollen alle Übertragungen desselben Typs sein (Schreiben oder Lesen).
In jeder Kanalbefehlseingabe CCEeines Datenkettungsfeldes DCA wird das Verkettungskennzeichen auf den Digitalwert 1 gebracht, ausgenommen in dem Fall einer unbedingten Verzweigung (d. h. dem Fall, in welchem die Kennzeichen unbekannt sind), und in der letzten Eingabe CCE des Feldes DCA, deren Kennzeichen den Digitalwert Null hat Das Befehlskettungskennzeichen ist in jeder Eingabe CCE des Feldes DCA (Feld der verketteten Daten) auf dem Digitalwert 1, mit Ausnahme der letzten Eingabe.
Allein die erste Eingabe CCE zur Steuerung der Übertragung von Daten wird zu der Gerätesteuerung PCU übertragen. Die Gerätesteuerung PCU, die auf diese Weise über eine Datenübertragung in verketteter Betriebsart (Schreiben oder Lesen) informiert worden ist, betrachtet das Feld DCA nur als eine gewöhnliche Kantleefehlseingabe. Die anderen Kanalbefehlseingaben werden durch die Eingabe/Ausgabe-Steuereinheit IOC ausgeführt Die Übertragung wird beendet, wenn die Steuereinheit IOC die Leitung TMO auf den Digitalwert 1 bringt oder wenn die Gerätesteuerung PCUein Signal auf der Leitung TMI erzeugt In einem Kanalprogramm kann es Kanalbefehlseingaben und Felder DCA geben, die gemeinsam ausgeführt werden.
Die /OC-Befehle
Während der Ausführung eines Kanaiprogramms kann die Eingabe/Ausgabe-Steuereinheit IOC das Abgeben von Informationen an die Gerätesteuerung PCU nötig haben, beispielsweise in dem Fall, in welchem ein Fehler festgestellt worden ist Das ist die Aufgabe der /OC-Befehle. Um einen /OC-Befehl an die Gerätesteuerung abzugeben, bringt die Steuereinheit IOC die Leitung ISO oder die Leitung INW(F i g. 9) auf den Digitalwert 1 und wartet bis die Gerätesteuerung PCU ihr eine als »Beginn des /OC-Befehls« bezeichnete Dienstcodegruppenfolge liefert Die Steuereinheit IOC erzeugt das Signal ISO jedesmal dann, wenn der abzugebende /OC-Befehl ein mit der Ausführung des Kanaiprogramms asynchroner Befehl ist Das ergibt sich in dem Fall, in welchem ein Fehler festgestellt worden ist doder in dem Fall, in welchem die für den zusammengefaßten Zustand der Digiulkanaleingabe reservierten Felder durch Oktaden PSB besetzt sind und nicht für die Aufnahme eines neuen zusammengefaßten Zustands zur Verfügung stehen, den die Gerätesteuerung PCU speichern möchte. indem sie eine der Dienslcodegruppenfolgen abgibt: Beginn der Meldung von Ereignissen oder Beginn des Programmendes. Der als STACK bezeichnete /OC-Befehl informiert die Gerätesteuerung PCU, daß sie die Folge sowie den zusammengefaßten Zustand, den sie enthält, einstweilig in einen Stapel geben soll.
Die Steuereinheit IOC erzeugt das Signal INW jedesmal dann, wenn ein asynchroner Befehl an die Gerätesteuerung PCUabzugeben ist Das geschieht in den folgenden drei Fällen:
Befehl DISCONNECT
Wenn der zentrale Prozessor CPU einen Befehl DISCONNECT ausführt, um ein Kanalprogramm abzubrechen, erzeugt die Steuereinheit einen Befehl DISCONNECT, der an die Gerätesteuerung PCUmn der Digitalkanalnummer entsprechend dem abgebrochenen Kanalprogramm, dessen Ausführung in die Endphase eintritt, abgegeben wird.
Bei dem Befehl DISCONNECT handelt es sich ebenso wie bei den folgenden Befehlen um Eingabe/Ausgabe-Befehle. Das sind Software-Befehle, die Teil der Kanalprogramme sind.
Befehl RESUME
Wenn die Gerätesteuerung PCU die Ausführung eines Kanalprogramms nach dem Empfang eines Befehls »SUSPEND« ausgesetzt hat, so führt der zentrale Prozessor CPU, um die Ausführung des ausgesetzten Kanalprogramms wieder aufzunehmen, den Befehl RESUME aus. Die Eingabe/Ausgabe-Steuereinheit IOC erzeugt dann einen Befehl RESUME. Dieser /OC-Befehl wird an die Gerätesteuerung PCU zusammen mit der dem ausgesetzten Kanalprogramm entsprechenden Digitalkanalnummer abgegeben und die Gerätesteuerung PCU muß die Ausführung des Kanalprogramms wieder aufnehmen.
Die Steuereinheit /OChat zuvor den /OC-Befehl an die Gerätesteuerung PCUabgegeben.
Befehl STACK
Wenn die in einer Digitalkanaleingabe für den zusammengefaßten Zustand reservierten Felder frei sind, so kann dieser zusammengefaßte Zustand, der in der Gerätesteuerung PCU nach dem Befehl STACK gespeichert ist, an die Steuereinheit IOC abgegeben werden, die den Befehl UNSTACK erzeugt, welcher an die Gerätesteuerung PCUabgegeben wird. Die Felder des »zusammengefaßten Zustands« können auf zwei Arten freigemacht werden:
a) durch den /OC-Befehl: Entnehmen des Digitalkanals (FLCH);
b) zwischen der Ausführung von zwei Befehlen des zentralen Prozessors analysiert dieser den Zustand des sich auf die Systemsteuereinheit beziehenden Signals PRR. Wenn PRR gleich 1 ist, besetzt wenigstens eine Oktade des zusammengefaßten Zustands ihre in der Eingabe LCE reservierte Zone und der zentrale
5 Prozessor CPU befreit sämtliche anderen Zustandszonen von den Digitalkanaleingaben.
Verschiedene Kanalprogramme können auf einem beliebigen räumlichen Kanal ausgeführt werden. Verschiedene /OC-Befehle, welche den Signalanstieg der Leitung INW der Schnittstelle PSl erzeugen und ihren Kanalprogrammen zugeordnet sind, können gleichzeitig darauf warten, an die entsprechende Gerätesteuerung 0CU
ι ο abgegeben zu werden.
Die Digitalkanäle, die sich auf die /OC-Befehle im Wartezustand beziehen, werden in eine Warteschlange Q/LC/INW eingereiht Es ist eine Schlange pro räumlichem Kanal vorhanden. Jede Schlange bringt die Digitalkanäle in die Reihenfolge der Ankunft der zugeordneten /OC-Befehle. Wenn ein /OC-Befehl an die gewünschte Gerätesteuerung PCU abgegeben worden ist wird der Digitalkanal aus der Schlange herausgezogen. Wenn
15 sämtliche Digitalkanäle aus der Schlange entnommen worden sind, wird die Leitung INW wieder auf Null zurückgestellt
Verkettung
20 Die DigitpJkanäle der Warteschlange Q/LC/INW werden nach der Reihenfolge der Ankunft der zugeordneten /OC-BeteMe geordnet Wenn ein zweiter /OC-Befehl einem Digitalkanal zuzuordnen ist, der sich bereits in der Schlange befindet behält der Digitalkanal seine ursprüngliche Position und wird nicht ein zweites Mal in die Schlange eingereiht
25 Entkettung
Wenn die Gerätesteuerung ff U eine Initialisierungsfolge einer Dienstcodepruppe abgibt, empfängt sie den /OC-Befehl, der dem in die entsprechende Warteschlange eingereihten ersten Digitalkanal zugeordnet ist. Der Digitalkanal wird dann aus der Schlange entnommen. Wenn ein zweiter /OC-Befehl diesem Digitalkanal zugeil jo ordnet worden ist, wird dieser erst dann aus der Warteschlange entnommen, wenn die beiden Betriebscodegrup-I penfolgen durch die Steuereinheit /OCempfangen worden sind.
ij Verbindungen von Warteschlagen
rf 35 Jeder Digitalkanal ist in der Schlange durch eine Verbindung zugeordnet Es handelt sich um eine Zone in der
Digitalkanaleingabe LCf, die die Nummer des in der Schlange folgenden Digitalkanals enthält (nächste Kanal-
(.; nummer).
( Der Kopf der Warteschlange enthält die Nummer des ersten Digitalkanals der Schlange und ist in die Eingabe
PCf des passenden räumlichen Kanals eingetragen.
p; Multiplexierung von Digitalkanälen
C\ Verschiedene Kanalprogramme, die den Digitalkanälen zugeordnet sind, können gleichzeitig ausgeführt
w werden. Die Gerätesteuerung PCL/steuert durch Multiplexierung die Benutzung eines räumlichen Kanals.
ik 45 Der Übergang von einem Kanalprogramm zu einem anderen Kanalprogramm (vom Standpunkt des Betriebs
;'■' aus) wird durch die Gerätesteuerung PCU ausgeführt, die eine Dienstcodegruppenfolge abgibt, welche die
k-: Nummer des dem neuen Kanalprogramm zugeordneten Digitalkanals enthält. In diesem Fall wird die Ausfüh-
■ rung des ersten Programms unterbrochen und die des zweiten beginnt.
,,, Während der Ausführung eines Kanalprogramms wird der Zeiger CMP in die Eingabe PCf und der Zeiger
fo 50 CWP in einen lokalen Speicher (adress Pad word PA 0) entsprechend dem räumllichen Kanal eingetragen, auf
I^ welchem die Datenübertragung ausgeführt wird. Wenn das Kanalprogramm unterbrochen wird, um einem
p7 anderen Programm den Ablauf zu gestatten, werden die Zeiger des ersten Programms in einer Spezialzone der
i^ Digitalkanaleingabe gespeichert Der Zeiger CMP des neuen Programms wird von der Eingabe LCf an die
;fj Eingabe PCEdes räumlichen Kanals abgegeben und der Zeiger CWPdcs neuen Kanalprogramms wird von der
ΐ 55 Eingabe LCf an den Zentralspeicher abgegeben.
;'.} Fall der Übertragungen von Daten
Γ Die Gerätesteuerung PCU kann eine Datenübertragung unterbrechen, damit ein dringlicheres Kanalpro-
\'l 60 gramm ablaufen kann. Während einer Datenübertragung speichert die Steuereinheit IOC für jede übertragene
;v Oktade:
— in dem lokalen Speicher PA 1 die absolute Adresse der Oktade im Hauptspeicher, die in einem Wort übertragen worden ist, entsprechend dem räumlichen Kanal, in dem die Übertragung von Daten ausgeführt
hr> wird;
— die Anzahl von Oktaden, die zu übertragen übrigbleiben, in dein Wort eines Arbeitszählers SPC, entsprechend dem räumlichen Kanal, auf welchem die Datenübertragung ausgeführt wird.
18
Wenn die Datenübertragung unterbrochen wird, bewahrt die Steuereinheit IOC'in der Eingabe des passenden ■Canals auf:
- die Zeiger CWPund CWP,
- die absolute Adresse im Zentralspeicher der letzten übertragenen Oktade, d. h. die Datenadresse,
- die Anzahl von Oktaden, die zu übertragen übrigbleiben. Das ist der Restwert
Wenn nach der Unterbrechung eines Kanalprogramms die Datenübertragung für ein anderes Kanalprojramm wieder aufgenommen werden soll, werden die Zeiger, die Datenadresse und der Zählungsrestwert der Digitalkanaleingabe LCE entnommen und in die Eingabe eines räumlichen Kanals (CMP, in die Adreßeingabe) ι ο bzw. in den Arbeitszähler (Restwert) eingegeben.
Die Betriebscodegruppenfolge »Beginn der Datenübertragung« wird zum Steuern einer Datenübertragung verwendet Zu diesem Zwecke enthält die Oktade der Dienstcodegruppe ein Bit, welches angibt, ob die Datenübertragung beginnt oder wiederbegonnen wird.
Fall der Übertragung eines detaillierten Zustands
Wie ic. dem Fall der Datenübertragung kann die Übertragung eines detaillierten Zustands durch ein Kanalprogramm unterbrochen werden, welches einem anderen Digitalkanal zugeordnet ist, und dann zusammengefaßt werden. Wenn die Übertragung des detaillierten Zustands unterbrochen wird, werden allein die Datenadressen und der Restwert in der entsprechenden Digitalkanaleingabe gespeichert.
Die Dienstcodegruppenfolge »Beginn der Übertragung eines detaillierten Zusiands« wird zum Sr?uern der Zustandsübertragung verwendet Ein Bit der uktade gibt an, ob die Übertragung beginnt oder fortgesetzt wird.
Übertragung von Salven von Daten oder detaillierten Zuständen
Wenn eine Gerätesteuerung PCU eine Übertragung von Daten oder detaillierten Zuständen unterbricht und dann wieder ingangsetzt, um die Ausnutzung der Hilfsmittel zu optimieren, wird der Daten- oder Zustandsblock in einen oder zwei Teile geteilt. Jeder Teil des Blocks, der mit einer teilweisen Übertragung in Zusammenhang steht wird als Daten- oder Zustandssalve bezeichnet.
Erneuter Versuch der Übertragung einer Datensalve
Wenn die Übertragung einer Salve beendet ist kann die Gerätesteuerung PCU wieder die Übertragung versuchen. Die Parameter für den neuen Versuch werden am Beginn der Übertragung der Salve in reservierten Zonen der entsprechenden Eintragung des räumlichen Kanals gespeichert. Diese Parameter sind:
- der Zeiger CWP
— der Restwert der Zählung
— die absolute Adresse der ersten Oktade der übertragenen Salve.
Eine Zeigerverschiebungsfolge wird zum Wiederbeginnen der Übertragung einer Datensalve verwendet.
Multiplexierung der räumlichen Kanäle
Sechs räumliche Kanäle können beispielsweise mit der Eingabe/Ausgabe-Steuercinheit IOC verbunden sein. Sie sind von 0 bis 5 numeriert. Verschiedene Kanalprogramme können gleichzeitig auf verschiedenen räumlichen Kanälen ausgeführt werden. Die Organisation dieser Gleichzeitigkeit erfolgt durch die Steuereinheit IOC und durch die Mikroprogramme, die ihr zugeordnet sind. Die Steuereinheit IOC unterscheidet zwei Informationsverarbeitungsarten:
— die Verarbeitung der Dienstcodegruppen;
— die Verarbeitung der Übertragungen von Daten oder von detaillierten Zuständen.
Für jede Verarbeitungsart gibt es eine Stufe hoher oder niedriger Dringlichkeit.
55 Verarbeitung Dringlichkeitsstufe Nummer der Stufe
Übertragung von Daten oder Zuständen
Dienstcodcgruppen hoch 1 so
Übertragung von Daten öder Zuständen Dienstcodegruppen
Alle diese Verarbeitungsarten haben eine Dringlichkeit, die größer ist als die Dringlichkeit der Operationen des zentralen Pro?essors, die die Dringlichkeitsstufe 4 haben. b5
Wenn in einem bestimmten Zeitpunkt verschiedene räumliche Kanäle Verarbeitungen auf unterschiedlichen Dringlichkeitsstufen vergangen, so wählt eine Dringlichkeitseinrichtung die Arbeit mit höherer Dringlichkeit aus und läßt die anderen warten.
hoch 0
hoch 1
niedrig 2
niedrig 3
Wenn in der gleichen Weise zwar verschiedene Kanäle eine Verarbeitung verlangen, jedoch auf derselben Dringlichkeitsstufe, so wählt das Dringlichkeitssystem der Eingabe/Ausgabe-Steucreinheit IOC den räumlichen Kanal mit der niedrigsten Stufennummer aus und läßt die anderen warten.
Wenn in einem bestimmten Zeitpunkt eine Verarbeitung für einen räumlichen Kanal oder den zentralen Prozessor CPU ankommt und wenn das Dringlichkeitssystem der Steuereinheit IOC eine andere Arbeit mit höherer Dringlichkeit auswählt, erfolgt eine Unterbrechung, die die Verarbeitung der in der Ausführung begriffenen Arbeit unterbricht und sie durch eine neue Arbeit ersetzt. Die unterbrochene Arbeit wird wieder aufgenommen, wenn die neue Arbeit beendet ist. Die Aufgaben werden so aufeinanderfolgend unterbrochen und in ihrer Dringlichkeitsreihenfolge wieder aufgenommen, wenn die Aufgabe mit höchster Dringlichkeit beendet
ίο worden ist.
Die /OC-Firmware besteht aus einer gewissen Anzahl von Mikroprogrammblöcken entsprechend den verschiedenen Dringlichkeitsstufen der durch die Steuereinheit /OCausgeführten Verarbeitungen.
Die Unterbrechungen von Mikroprogrammen aufgrund der Änderung in den durch die Steuereinheit IOC ausgeführten Aufgaben sind die /OC-Unterbrechungen.
F i g. 10 ist ein Schema, welches die verschiedenen Stufen zeigt, welche an den Eingabe/Ausgabe-Operationen beteiligt sind, die Informationsaustauschvorgänge zwischen dem Hauptspeicher MM und einer Gerätesteuerung PCU bilden. Die Gerätesteuerung PCU gibt Informationen Oktade für Oktade an eine Kanalkopfeinheit CHU ab. die hauptsächlich eine Anordnung von Pufferregistern RFenthält, welche beispielsweise eine 4x4-Ma(rix bilden. Ein Register SCR speichert die Dienstcodegruppen im Hinblick auf ihre Auswertung durch die Betriebsstufen. Ein Zähler L 1 zählt die Anzahl der Oktaden, die an der Schnittstelle PSI in der einen und in der anderen Richtung übertragen werden. Ein Differenzzählcr DPbercchnct fortwährend die Differenz zwischen der Anzahl von Oktaden, die in den Pufferspeicher RF eingegeben werden, und der Anzahl von Oktaden, die daraus abgegeben werden. Der Zähler DPgibt somit in jedem Zeitpunkt die Anzahl von verfügbaren Positionen in dem Pufferspeicher RF der Kanalkopfeinheit CHU an. Die in dem Pufferspeicher RF enthaltenen Informationen werden 4-Oktaden-weise in den Speicher übertragen, so daß sie einem Speicherwort entsprechen, !.,cider werden die jeweils zu viert zu übertragenden Oktaden in Abhängigkeit von freien Positionen in den Pufferspeicher RFeingetragen, d. h. von Positionen, die entweder nicht geladen oder bereits gelesen worden sind. Für das Eintragen in den Speicher ist es nämlich erwünscht und notwendig, daß die erste Oktade des Wortes in den ersten Speicherplatz eingetragen wird.
In der Datenmanagementstufe DMU ist deshalb ein Dateneingabepufferregister IB, welches zur Ausrichtung der Oktaden dient, und ein Ausgabepufferregister OB vorgesehen, welches zur Ausrichtung der Daten vor ihrer Übertragung in den Pufferspeicher RFd'icnt, was im folgenden ausführlicher beschrieben wird. Die Übertragungen von Daten zwischen den Registern IB, OB und dem Zcntralspeicher werden durch einen Zähler SPC kontrolliert, der in der Kanalsteuereinheit CCUangeordnet ist. Der Zähler SPCgibt die Anzahl von Oktaden an.
die in Abhängigkeit von dem Kanalprogramm zwischen dem Zentralspeicher und dem Pufferspeicher jeder Kanalkopfeinheit Cf/t/zu übertragen übrigbleiben.
Die Adreßrecheneinheit ACUenthält eine Adresse im Lokalspeicher PA. welcher seinerseits zwei Adressen PA 0 und PA 1 enthält, die jeder Gerätesteucrung PCt/zugeordnet sind.
— Der Inhalt des PA O-Registers weist auf das Steuerwort CCW des gerade ablaufenden Kanalprogramms hin.
— Der Inhalt des PA !-Registers speichert die Adresse der in den Zentralspeicher übertragenen letzten Oktade DO.
F i g. 11 zeigt eine ausführliche Darstellung des vorhergehenden Schemas.
Peripheriegeräte, wie beispielsweise Datendrucker, Magnetbandeinheiten, Platteneinhciten, sind über Anpassungseinrichtungen DA nach Kategorien mit Gerätesteuerungen PCU verbunden. Jede Gerätesteuerung kann beispielsweise bis zu 256 Digitalkanäle, d. h. theoretisch 256 Peripheriegeräte steuern. Die eigentliche Steuereinheit IOC steht mit den Peripheriegeräten durch die Schnittstellen PSI in Verbindung. Jeder Gerätesteuerung PCU entspricht eine Kanalskopfeinheit CHU. In F i g. 11 sind sechs Kanalkopfeinheiten CHUdargestellt Wie bereits erwähn*, enthält jede Kanalkopfeinheit CHU einen Pufferspeicher und empfängt Firmware-Steue: .«- fehle, Dialogsignale und Anforderungen. In F i g. 11 sind gestrichelt eine zweite Anordnung von sechs Kanaikopfeinheiten CHt/(mit CBU bezeichnet) und eine Multiplexierungseinheit CMUdargestellt Die gemeinsame Kanalschaltung CCC wählt die Kanalkopfeinheiten CHUm Abhängigkeit von der Reihenfolge der Dringlichkeit der auszuführenden Kanalprogramme aus.
Die Übertragung von Daten erfolgt bei jeder Kanalkopfeinheit CHU über zwei Kanäle DR und DW, die eine Breite von vier Oktaden haben und entsprechend den zuvor getroffenen Vereinbarungen zum Lesen bzw. zum Schreiben verwendet werden. Parallel erlaubt ein Weg CHDA mit einer Breite von 16 Bits das Weiterleiten der Mikrobefehle in dem gewünschten Zeitpunkt von der Einheit RCUam über UND-Schaltungen 20 und 21 zu den gepufferten Einheiten CBU.
An dem Ausgang der Schaltung CCC werden die Daten in die Kanalsteuereinheit CCU übertragen. Diese Einheit kontrolliert die Fortschaltung der übertragenen Oktaden, zählt die Oktaden in bezug auf jede Kanalsteuereinheit CCU gibt die Nummer der Kanalkopfeinheit CHU für jedes Eingabe/Ausgabe-Niveau an und wählt gegebenenfalls eine Einheit CBU unter den beiden aus, die dank einem nicht dargestellten Zähler SPC
b5 vorhanden sein können.
Die arithmetische und logische Einheit ALU wird von der Firmware für die /OC-Mikroprogrammberechnungen benutzt Der lokale Hilfsspeicher SPU besitzt eine gewisse Anzahl von Speicherplätzen, die für die /OC-Operationen bestimmt sind, um die Inhalte von Zustandsrcgisicrn während jedes Unterbrechungsniveaus aufzu-
bewahren.
Die Adreßrecheneinheit ACLJ enthält eine Steueradreßposilion CA und eine Datenadreßposition DA für jeden räumlichen Kanal. Aus praktischen Gründen sind sechzehn Positionen für die Steueradressen und sechzehn Positionen für die Datenadressen vorhanden. Der Steuerspeichcr CSU enthält vier Gruppen von /OC-Mikroprogrammcn, von denen jedes einer Dringlichkeitsstufe entspricht, dazu Mikrobefehle der Stufe 4, welche ϊ die Operationen des zentralen Prozessors steuern. Die Steuerstufe des Spezialspeichers RCU ist ebenfalls an der Steuerung der Eingaben und Ausgaben beteiligt, und zwar in dem Maß, in welchem der auszuführende Mikrobefehl in das Register RD eingegeben wird, und/oder diese Stufe berechnet die Adresse NEXA des nächsten Mikhjöefehls. Die Adreßrecheneinheit -4CC tauscht die Adressen von Kanälen mit dem Zcntralspeicher MM über die Schnittstelleneinheit MlU aus. Die Daten werden durch die Datenmanagementeinheit DMU ausgetauscht, in der das Register XBdas gerade ablaufende Kanalprogramm enthält und die Register IB und Oßdie in den Zentralspeicher einzugebenden oder von diesem abzugebenden Daten enthalten, wie es oben beschrieben worden ist. Die Daten werden in einer Schaltung der Kanalstcucrcinheit CCUausgerichtet, die in Fig. Il die Bezeichnung I/O DAL trägt.
Fig. 12 ist ein Prinzipschema der Ausrichtungsoperationen. Das Eingabesignal der aus der Schaltung // ODAL von Fig. 11 kommenden Daten ist mit IBAL bezeichnet. Dieses Signal ist das ausgerichtete Signal. In dem Fall von Datenausgaben ist das Signal mit OBAL bezeichnet. Im folgenden wird die Ausrichtung des %
Eingabesignals IBAL beschrieben. |
Vor der Stufe I/O DALvon Fig. 11 bewegen sich die von der Kunalkopfeinheit CHU abgegebenen Daten auf Datenwegen (HCJi)O : 32, die mit DR und DWbezeichnet sind, jeder Zyklus des Einschreibens in den Zentralspeicher betrifft maximal vier Oktaten, d. h. 32 Bits, die auf diesem Datenweg nach Ausrichtung und Auswahl in einer Maske Af 2 (vgl. Fig. 12) entnommen werden. Die Ausrichtungsoperationen werden ausgeführt unter Berücksichtigung:
— der Angabe der ersten Oktade der Serie, die von dem Register oder Pufferspeicher RF gegeben wird, welche von den Parametern bezüglich des vorangehenden Lesezyklus abhängt (wobei das Wort »lesen« in dem oben vereinbarten Sinn aufgefaßt wird),
— der Angabe der ersten Oktade der in den Zentralspeicher einzutragenden Daten, die nicht maskiert ist, angegeben durch (PAn)30 :2,
— der Richtung der Übertragung, die durch PL angegeben ist (weiche praktisch einen Maskierungseffekt hat).
Die Reihenfolge der Oktaden auf dem Datenweg wird durch CMP 2 :2 (ein Register, welches sich in der Kanalkopfeinheit CHU befindet) angegeben.
Wenn CMP2 :2 - 00, so ist die Reihenfolge der Oktaden 12 3 4
- 01, so ist die Reihenfolge der Oktaden 4 12 3 = 10, so ist die Reihenfolge der Oktaden 3 4 12
— 1 λ _Λ :„» j;A DA;uAnrAiMn ~jA- /Λΐ·*Α<4ηη ο ι α ι
~ 11, avr lai uiu rwiiii-itiistgt. ut»i v/iviauvti λ. ~r ~r ι
Die Ausrichtungsinformation der Oktaden in dem Signal IBAL wird durch die beiden letzten Bits der Adresse (PAn)\m Zentralspeicher angegeben.
Wenn (PAn)ZQ : 2 = 00, ist die Reihenfolge der Oktaden 12 3 4
= 01, ist die Reihenfolge der Oktaden χ 123
= 10, ist die Reihenfolge der Oktaden xxl2
= 11, ist die Reihenfolge der Oktaden χ χ χ 1
In dem Fall PL·= 1 werden die Speicheradressen inkrementiert.
In dem Fall PL—0 werden die Adressen dekrementiert und es ergibt sich folgende Ausrichtung:
WennC/Mn;30:2 =00 lxxx
= 01 2 1 χ χ
= 10 321 χ
= 11 4321
Das Kreuz in diesen Feldern gibt an, daß der Wert der Oktaden unwichtig ist, da diese nach der Aktion der Maske M 2 nicht berücksichtigt werden. Die Fortschaltungsrichtung die durch den Wert des Signals PL angegeben ist, gibt einfach an, ob das Peripheriegerät vorwärts oder rückwärts gelesen worden ist.
Sechzehn Fälle können sich aus verschiedenen Werten von CMP 2 :2 und (PAn) 30 :2 ableiten. Wenn diese Bits alle Null sind, erfolgt die Ausrichtung ohne Beteiligung der Maske, was in dem unteren Teil von Fig. 12 dargestellt ist
Die Codierung wird in dem Fall eines Schreibsignals zwischen dem Zentralspeicher und der Kanalkopfeinheit CHU nach einem gleichen Prinzip ausgeführt werden, bis auf die Ausnahme, daß die Adressen des Zentralspeichers nur inkrementiert werden können. Infolgedessen besteht die Ausrichtung der Daten allein aus einer Linksverschiebung im Register ÜB (Fig. 11). Ein Register (CCR2) 0 :2 speichert die Differenz (PAn) 30 :2
(CMP) 2 :2, welche die für die Ausrichtung erforderliche Anzahl von Linksverschiebungen in dem Register 0ß angibt.
In Fi g. 12 isi das Prinzip dieser Ausrichtung dargestellt. Die Datcnmanagcmcnicinheit DMUsteht mit einer Kanalkopfeinheit CHL/überdie Kanalstcucrcinheit CCU\n Verbindung.
Es können sich zwei Fälle ergeben:
5 — Die Daten sind ausgerichtet, d. h. daß die Oktaden 1, 2, 3 und 4 des Wortes an den Adressen 1, 2, 3 und 4 in den Zentralspeicher eingetragen werden, und umgekehrt. Die Einheit CCU erlaubt nur den Durchgang der
Daten in der einen oder anderen Richtung.
— Die Da'in sind nicht ausgerichtet. Das bedeutet, daß die erste Oktadc des Wortes nicht als erste in den
Zentralspeicher einzuschreiben ist, sondern daß die als erste einzuschreibende Oktade die zweite, die dritte ίο oder die vierte Oktade des Wortes ist. In diesem Fall greifen Fortschreibungsmaskcn M\ und Mj ein. die nur
eine, zwei oder drei Okuden übertragen.
Diese Masken werden durch die Restzahlung (SPCn) und die Form der Ausiauschanfordcrung CDPgesteuert. Der Wert der Maske Mj in der Datencingaberichtung ist außerdem dem Wert eines Signals PL untergeordnet,
15 welches die Richtung der Übertragung festlegt. Die Adresse der nächsten Oktadc wird auf der Seite der Kanalkopfeinheit CHU durch das Register CMP 2 : L und auf der Seite der Dalenmanagementcinheit DMU durch den Zähler 5fCangegeben, der sich in der Einheit CCU befindet. Die Speicheradressen werden, wie oben angegeben, in der Stufe ACU berechnet. Die Fortschreibung erfolgt für die Maske M\ (Ausgabe) durch das Signal CCR 2 und für die Maske M2 durch ein Signal CHMK (0 :4).
:<■■ Die Verwendung von Mikroprogrammen ermöglicht das Herstellen einer Eingabc/Ausgabc-Steuercinheit. die mit einer beträchtlichen Einsparung an Einrichtungen arbeitel. Der zentrale Prozessor CPU kann nämlich die Eingabe/Ausgabe-Operationen durch Hin/ufügung von zusäl/llichcn Registern in der Adreßrechcnstufc ACU und von drei Pufferregistern in der Managementstufc verarbeiten. Die der Eingabe/Ausgabe-Sicuereinheit IOC eigenen Stufen bestehen aus Einheiten zum Ausrichten und zum Bestimmen von Dringlichkeiten. Diese
25 Struktur bietet die Möglichkeit, das Eingabe/Ausgabe-Programm wie Pseudoprozessc zu verarbeiten, mit der Möglichkeit, ihnen Nachrichten mit Hilfe von Semaphoren gemäß einem Verfahren zu übermitteln, welches in der gleichzeitig eingereichten deutschen Patentanmeldung (DE-OS 25 03 825) der Anmclderin vorgeschlagen ist.
Hierzu 8 Blatt Zeichnungen
30

Claims (1)

Patentansprüche:
1. Anordnung zur Steuerung von Datenübertragungen zwischen einem Zentralspeicher (MMU) und einer Gruppe von Peripheriegeräten eines Datenverarbeitungssystems, worin
— die Peripheriegeräte jeweils mit einer Gerätesteuerung (PCU) verbunden sind,
— die Zentraleinheit des. Systems den Zentralspeicher (MMU) mit einer Schnittstelleneinheit (MIU) und einen zentralen Prozessor enthält, der aus Betriebseinheiten gebildet ist, welche über eine Sammelleitung (^miteinander verbunden sind,
— jede Gerätesteuerung (PCU) mit der Zentraleinheit über einen räumlichen Kanal (Schnittstelle PSl) verbunden ist,
— ein räumlicher Kanal mit der Zentraleinheit jeweils über eine Kanalkopfeinheit (CHU) verbunden ist,
— und eine bestimmte Anzahl von Kanalkopfeinheiten mit einer gemeinsamen Kanalschaltung (CCC) verbunden ist,
DE19752503891 1974-02-01 1975-01-30 Anordnung zur Steuerung von Datenübertragungen Expired DE2503891C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7403488A FR2289003A1 (fr) 1974-02-01 1974-02-01 Dispositif de commande de transferts de donnees entre la memoire centrale et les unites peripheriques d'un systeme informatique

Publications (2)

Publication Number Publication Date
DE2503891A1 DE2503891A1 (de) 1975-08-07
DE2503891C2 true DE2503891C2 (de) 1985-03-21

Family

ID=9134378

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752503891 Expired DE2503891C2 (de) 1974-02-01 1975-01-30 Anordnung zur Steuerung von Datenübertragungen

Country Status (5)

Country Link
JP (1) JPS6022380B2 (de)
DE (1) DE2503891C2 (de)
FR (1) FR2289003A1 (de)
GB (1) GB1485189A (de)
IT (1) IT1031322B (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3048417A1 (de) * 1980-12-22 1982-07-08 Computer Gesellschaft Konstanz Mbh, 7750 Konstanz Datenverarbeitungsanlage
KR102891496B1 (ko) * 2019-11-01 2025-11-27 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
CN116546038A (zh) * 2023-05-11 2023-08-04 上海商睿智能科技有限公司 一种智能手持终端数据同步系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3550133A (en) * 1964-04-06 1970-12-22 Ibm Automatic channel apparatus
NL164143C (nl) * 1965-09-10 Ibm Gegevensverwerkend systeem met variabele prioriteiten.
GB1142290A (en) * 1966-05-25 1969-02-05 Gen Electric Data processing system with improved subsystem communication
US3559187A (en) * 1968-11-13 1971-01-26 Gen Electric Input/output controller with linked data control words
US3639909A (en) * 1970-01-26 1972-02-01 Burroughs Corp Multichannel input/output control with automatic channel selection

Also Published As

Publication number Publication date
JPS50125644A (de) 1975-10-02
IT1031322B (it) 1979-04-30
DE2503891A1 (de) 1975-08-07
FR2289003A1 (fr) 1976-05-21
FR2289003B1 (de) 1977-09-16
JPS6022380B2 (ja) 1985-06-01
GB1485189A (en) 1977-09-08

Similar Documents

Publication Publication Date Title
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
DE3114961C2 (de)
DE2902080C2 (de) Anordnung zum Steuern von Datenübertragungen zwischen einem Hauptspeicher und Eingabe/Ausgabe-Einheiten
DE3725343C2 (de) Vielzweck-Kanalsteuersystem
DE2104733C2 (de) Eingabe/Ausgabe-Einrichtung für eine Datenverarbeitungsanlage
DE69125840T2 (de) Fehlertolerierendes rechnersystem
DE69730276T2 (de) Vorrichtung und Verfahren zur Erleichterung der Vermeidung von exzeptionellen bestimmten Zuständen während des Ablaufs eines Programmes
DE2846495C2 (de) Zentraleinheit
DE1524166B1 (de) Schaltungsanordnung zur Herstellung von Verbindungen zwischen mehreren unabhaengigen Teilen und einem gemeinsamen Teil einer Datenverarbeitungsanlage
CH522921A (de) Rechneranlage
DE2740056A1 (de) Mulitprozessor-rechnersystem
DE2912738A1 (de) System mit direkter uebertragung zwischen subsystemen
DE2030812A1 (de) Modulare Datenrechnersysteme
DE1299145B (de) Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen
DE2243956A1 (de) Speicherprogrammierte datenverarbeitungsanlage
DE1282335B (de) Einrichtung zum programmabhaengigen Datenaustausch zwischen mehreren Datenverarbeitungseinheiten
DE3114934A1 (de) Zentrales subsystem fuer eine datenverarbeitungsanlage
DE2626703A1 (de) Intern programmierbares datenverarbeitungssystem
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE3151120C2 (de) Datenverarbeitungsanlage mit Arbeitsspeicher und mehreren in Serie geschalteten Prozessoren
DE2617127A1 (de) Mehrfachprogramm-datenverarbeitungssystem
DE2503891C2 (de) Anordnung zur Steuerung von Datenübertragungen
DE2609698C2 (de) Elektronischer Rechner
DE2503825C2 (de)
EP0010135B1 (de) Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen

Legal Events

Date Code Title Description
OGA New person/name/address of the applicant
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition