[go: up one dir, main page]

DE1815666A1 - Verfahren und Einrichtung zur Kanalfehlerkorrektur - Google Patents

Verfahren und Einrichtung zur Kanalfehlerkorrektur

Info

Publication number
DE1815666A1
DE1815666A1 DE19681815666 DE1815666A DE1815666A1 DE 1815666 A1 DE1815666 A1 DE 1815666A1 DE 19681815666 DE19681815666 DE 19681815666 DE 1815666 A DE1815666 A DE 1815666A DE 1815666 A1 DE1815666 A1 DE 1815666A1
Authority
DE
Germany
Prior art keywords
channel
command
position code
unit
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE19681815666
Other languages
English (en)
Other versions
DE1815666B2 (de
Inventor
Boehner William Eduard
Mcgilvray Bruce Lloyd
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1815666A1 publication Critical patent/DE1815666A1/de
Publication of DE1815666B2 publication Critical patent/DE1815666B2/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Description

Verfahren und Einrichtung zur Kanalfehlerkorrektur
Die Erfindung betrifft ein Verfahren und eine Einrichtung zur Fehlerkorrektur bei einem in einer Eingabe/Ausgabe-Verbindung zu einer zentralen Recheneinheit auftretenden Kanalfehler und dadurch bedingter Kanalunterbrechung.
Bei bekannten Computersystemen hat ein Kanalfehler verheerende Auswirkungen auf den Ablauf der Operation. Zu den Kanalfehlern zählen auch die im Kanal selbst auftretenden B'ehler, wie beispielsweise Kanal-Datenfehler, Kanal-Steuerungsfehler oder Eingabe/Ausgabe -Verbindung-Steuerungsfehler. Bei Auftreten der-
_ artiger Kanalfehler beendeten frühere Computersysteme den ge-
J0 samten Operationsablauf, und es wurde ein Programm eingeleitet,
ca das System-Fehleraufzeichnung genannt wird und das die die Feh-
^ ler betreffenden Daten sammelte und speicherte. Daraufhin wurde _* in einem langwierigen, einleitendes Programmladen genannten Prozess Arbeitsprogramm und Daten wiedergewonnen. Unter Um-
PO 9-67-064
würden.
ständen erforderte dieser Prozeß mehrere Maschinenstunden.· Bekannte Systeme reagieren auf Kanalfehler anders als auf bestimmte Arten von vorübergehenden Eingabe/Ausgabe-Fehlern, die sich beispielsweise durch Bandrücksetzen, erneutes Lesen oder Schreiben korrigieren lassen. Kanalbefehlwiederholunglist ausserordentlich schwierig, da ein Kanal eine asynchron arbeitende Eingabe/Ausgäbe-Einheit steuert. Es wäre wertlos, bei Auftreten eines Kanalfehlers einfach den jeweils laufenden Kanalbefehl automatisch zu wiederholen, da dabei neue Fehler auftreten
Eine geeignete Wiederholungsoperation bei Auftreten eines Fehlers führt mit großer Wahrscheinlichkeitzum Erfolg, da 75^ aller Fehler nur vorübergehend auftreten und auf Störspannungen zurückzuführen sind. Es sind viele unterschiedliche Quellen für derartige Störspannungen bekannt. Beispielsweise haben die Störspannungen ihre Ursache in. Schaltfunken, Blitzeinschlägen und in der Entladung statischer Aufladungen, die beim Gehen über bestimmte Beläge auftreten. Bleibende Fehler, wie sie beispielsweise durch Fehler in der Schaltung verursacht werden, lassen sich durch Wiederholungsoperationen offensichtlich nicht korrigieren.
Es ist die Aufgabe der Erfindung, ein Verfahren und eine Einrichtung anzugeben, mit denen sich insbesondere flüchtige Kanalfehler schnell und sicher korrigieren lassen und bei denen die Kanalfehler als Fehler der Eingabe/Ausgäbe-Einheit erscheinen, so daß die zentrale Recheneinheit ein Korrekturverfahren durchführen kann.
PO 9-67-064 809832/1219
Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, daß zur Erlangung einer Information über die während der Ausführung eines Kanalbefehls zum Zeitpunkt des Auftretens eines Kanalfehlers durchlaufene Position der Eingabe/Ausgäbe-Einheit verschiedenen Positionen im Kanalbefehlsablauf diskrete Signale zugeordnet werden und daß mit dieser Information eine möglicherweise erforderliche Rücksetzung der Eingabe/Ausgabe-Einheit und eine geeignete Wiederholungsoperation für den betreffenden Kanalbefehl eingeleitet wird. Dabei hat es sich als vorteilhaft erwiesen, wenn die diskreten Signale bestimmte Teile im Ablauf des Kanalbefehls bezeichnende, durch Positionscodesdargestellte Zeltmarken sind.
Als vorteilhaft haben sich folgende Positionscodes erwiesen: Ein Positionscode am Ende der Ausführung eines Kanalbefehls, ein Positionscode, der den Beginn der Übertragung eines Kanalbefehls über den Kanal zur Eingabe/Ausgabe-Einheit anzeigt,ein Positionscode, der die Annahme oder Zurückweisung des Befehls durch die Eingabe/Ausgäbe-Einheit anaeigt, ein Positionscode, der den Beginn der Übertragung des Datenblocks zur Eingabe/ Ausgabe-Einheit anzeigt, ein Positionscode, der bei Befehlskettung den Beginn der Änderung der den nachten Kanalbefehl bezeichnenden Befehlsadresse anzeigt, ein Positionscode, der den Abschluß der Adressenänderung anzeigt und schließlich ein Positionscode, der die Adressenänderung für einen nachfolgenden Befehl angibt, der die Ausführung einer Verzweigung enthält.
Weiterhin wird vorgeschlagen, daß der bei Auftreten eines Kanalfehlers gespeicherte Positbnscode in trorbestimmte Speicherstel-
90 9 832/1219
1815556
len des Speichers der zentralen Recheneinheit übertragen wird, von denen aus die erforderliche Fehlerkorrektur durch Wiederholung des laufenden Kanalbefehls eingeleitet wird.
Eine Einrichtung zur Durchführung des Verfahrens besteht darin, daß die die Positionscodes führenden Steuerleitungen der Eingabe/Ausgabe-Verbindung auf der Seite der Recheneinheit über eine Kanalsteuerung zu einer Positionsanzeigeschaltung geführt fc sind, in der die Positionscodes nacheinander speicheübar sind, daß bei Auftreten eines Kanalfehlers der zuletzt in der Positionsanzeige schaltung gespeicherte Positionscode festgehalten . und zur Einleitung der zugeordneten Wiederholungsoperation in die vorgesehenen Speicherplätze der zentralen Recheneinheit übertragen wird. Schließlich wird vorgeschlagen, daß der Ausgang der Positionsanzeigeschaltung mit einer das Jeweilige Kanalstatuswort speichernden Schaltung verbunden ist, in der bei Auftreten eines Kanalfehlers der jeweilige Positionscode
in das Kanalstatuswort einstellbar ist, und daß dieses Kanal-
w statuswort und das jeweilige Programmstatuswort, die Zusammen-Kanaladresse, Einheitsadresse und Befehlsadresse enthalten, in die vorgesehenen Speicherplätze übertragbar sind.
Weitere Einzelheiten und Merkmale der Erfindung ergeben sich aus der nachstehenden Beschreibung des in der Zeichnung dargestellten, erfindungsgemäßen AusfUhrungsbeispiels. Es zeigen:
ι ·
Pig.1 eine Vielzahl von möglichen Eingabe/Ausgabe-Verbindungen (E/A-Verbindungen) bei einer Rechenanlage mit integrierten und nichtintegrierten Kanälen,
PO 9-67-064 · 909832/1219
Pig.2A
und 2B das Format einss in üblicher Weise verwendeten
E/A-Programmstatusworte s (PSW),
Fig.^A, ^B und
Fig.5 die Formate eines üblichen Kanalstatuswortes
(KSW) in erfindungsgemäß modifizierter Form,
Fig.4 die.zeitlichen Zusammenhänge zwischen dem Positionscode (PC) und der Ausführung des Kanalbefehlswortes (KBW) in einer eifLndungsgemäßen Einrichtung,
Fig.6 wesentliche, in einer E/A-Kanalverbindung in Zusammenhang mit der Zeitgebung der Einheitauswahl auftretende Signale, die eine Basis für die Zeitgebung der bei der Erfindung verwendeten Signale liefern,
Fig.7 eine Kanalanordnung, welche die Erfindung beinhaltet,
Fig.8 eine Ausführung einer erfindungsgemäßen Positionsanzeigeschaltung,
Fig.9 eine E/A-Überwachung, die den Positionscode in einem Kanalstatuswort decodiert,
Fig.10 eine Zeitgeberschaltung für die Positionsanzeige-
909832/1219
PO 9-67-064
- 6 schaltung der Fig.8,
Fig.11
bis 15 Flußdiagramme bei Anwendung der Erfindung,
Fig.16 den Bandlauf in einer Eingebe-Ausgabe-Einheit (E/A-Einheit) in Beziehung zum Durchlauf der Positionscodes während der Ausführung jeines Kanalprogramme,
Fig.17 Bits in einem E/A-Speicherblock für einen Bandantrieb und
Fig.18 mögliche Arbeitsgänge der Positionsanzeigeschaltung gemäß Fig.8 während der Ausführung verschiedener Kanalbefehlsworte, wenn kein Fehler auftritt.
Zunächst wird Bezug genommen auf Fig.16,um als Hintergrund ein Beispiel für die Anwendung der Erfindung zu geben. Dargestellt ist ein Magnetband, auf dem Datenblöcke 1-6 gespeichert sind. Es ist ein Satz von sieben Kanalbefehlsworten (KBW) angegeben, die Start und Lesen der Daten vom Band steuern. Das Band wird am Ende des Datenblocks 1 angehalten, bis die zentrale Recheneinheit einen Start-Befehl ausführt. Dieser Befehl bewirkt, daß das erste Kanalbefehlswort N gelesen und ausgeführt wird. Das erste Kanalbefehlswort ist ein Lesebefehl, der gekettet ist, da sein Kettungskennzeichen gesetzt ist. Der Bandantrieb spricht auf das erste Kanalbefehlswort derart PO 9-67-064 909832/1219
an, daß Datenblock 2 ganz ausgelesen wird.
Tritt während der Ausführung des ersten Kanalbefehlswortes kein Fehler auf, bewirkt das Kettungskennzeichen die Ausführung des nächsten Kanalbefehlsworte N+1, ohne daß ein weiterer Start-Befehl ausgegeben und der Bandlauf in IRG-2 gestoppt wird.
Tritt jedoch während der Ausführung des Kanalbefehlswortes N ein Fehler auf, wo wird das Band in IRG-2 gestoppt. Während der Ausführung des ersten Kanalbefehlswortes treten die in Fig.4 dargestellten Zeitabschnitte bzw. Zeitmarken S, A, B, C,
D und E auf. Diese Zeitabschnitte können durch entsprechende j · " v
Positionscodes S, A, B, C, D und £ dargestellt werden. Der Ablauf einer Wiederholungs-oder Wiederabfrageoperation hängt davon ab, welcher dieser Positionscodes in Abhängigkeit vom Bandlauf zum Zeitpunkt des Auftretens des Kanalfehlers vorhanden ist.
Die in Fig.16 in bezug auf IRG-1, Block 2 und IRG-2 angegebenen Stellen für den Positionscode entsprechen dem Ort, an dem sich der Lesekopf während 'einer Operation jeweils befindet. Somit können die Positionscodes S, A und D nur auftreten, bevor der Bandlauf beginnt (D tritt im betrachteten Beispiel nicht auf, da er nur verwendet wird, wenn die Kanalbefehlswort-Operation zurückgewiesen wird). Auch während eines Schreibbefehls tritt B(nicht dargestellt), vor Beginn des Bandlauß auf. Obwohl sich « das Band während S, A-, D und B (Schreiben) noch nicht bewegt hat, können in Abhängigkeit von diesen verschiedenen Positions-PO9-67-O64 .909832/1219
codes verschiedene Arten von Wiederholungsoperationen erfolgen. Während eines Lesebefehls tritt von vor Beginn des Bandlaufs bis zu dem Zeitpunkt, in dem das erste Byte des Datenblocks 2 gelesen ist, der Positionscode B auf. Ein Positionscode C existiert während die Daten vom Block 2 und die Statusbits am Ende des Blocks mit dem Ende-Signal gelesen werden. Danach wird das nächste Kanalbefehlswort geholt und ein Positionscode E hervorgerufen bis der Befehl zum Bandantrieb übertragen ist.
Tritt während der Positionscodes S und A/E ein Kanalfehler auf, werden verschiedene Arten von Korrekturgängen eingeleitet. Bei einem während des Positionscodes S auftretenden Kanalfehler wird von der zentralen Recheneinheit erneut abgefragt und ein Start-Befehl ausgegeben, da die E/A-Einheit den Befehl noch nicht empfangen hat. Ein während der Positionscode A, D oder B auftretender Fehler bewirkt, daß das laufende Kanalbefehlswort wiederholt wird. Der Bandantrieb braucht nicht beeinflußt zu werden, da zu diesem Zeitpunkt noch keine mechanische Be-) wegung des Bandes aufgrund des Start-Befehls erfolgen kann.
Ist jedoch die Kanaloperation soweit abgelaufen, daß es keine Umkehr mehr gibt, was mit Erreichen des ,Positionscodes B oder C eintritt, muß das Band neu eingestellt werden, indem die Vorwärtsbewegung in IRG-2 gestoppt und das Band bis IRG-1 rückgesetzt wird, bevor das Kanalbefehlswort N erneut ausgegeben werden kann. Der letzte Positionscode E während der Ausführung des Kanalbefehlswortes erscheint nach Übertragung derDaten des Blockes 2. Aus diesem,Grunde beeinflußt ein während des Positionecodes E auftretender Kanalfehler die Datenübertragung bei PO 9-67-064 ■ 909832/1219
1815566
der Ausführung des Kanalbefehlswortes N nicht und auf die E/A-Einheit braucht nicht eingewirkt zu werden. Es muß lediglich die Adresse des nächsten Kanalbefehlswortes erneut bestimmt und abgefragt werden.
Wenn bei einem Positionscode B (Lesen), C oder E ein Kanalfehler auftritt, wird der zu diesem Zeitpunkt vorhandene Positionscode solange in einer noch zu beschreibenden Positionsanzeigeschaltung j?0 gespeichert, öis das Ende des Datenblocks 2 erreicht ist. Die zentrale Recheneinheit wird infolge des Kanalfehlers unterbrochen. Der Positionscode wird nunmehr von der Positionsanzeigeschaltung J50 in vorherbestimmte Bitstellen des Kanalstatuswortes übertragen. Solange kein Fehler auftritt, werden die Leseoder Schreibworgähge aufgrund des geketteten Kanalbefehlswortes fortgesetzt, bis die gekettete Liste endet oder bis ein Fehler der Einheit, der Einheitssteuerung oder des eine Unterbrechung verursachenden Kanäles abgefühlt wird, wodurch die Kettung zum Zwecke einer Wiederholung unterbrochen wird. Der Stopp zum Zwecke der Wiederholung ist bei einem flüchtigen Fehler, der während der Wiederholung nicht auftritt, nur kurzzeitig. Wiederholungsoperationen können so voreingestellt sein, daß sie solange wiederholt werden, solange der Fehler auftritt, wobei eine maximale Anzahl von Wiederholungen vorgegeben 1st, bei der die gesamte Operation beendigt oder als mißlungen angesehen wird.
Die Antwort einer E/A-Einheit auf einen Kanalfehler ist abhängig von der Art des ausgeführten Kanalbefehls. Im allgemeinen gibt es zwei Arten von Befehlen, nämlich solche mit Bewegung und PO 9-67-064 909832/1219
- ίο -
solche ohne Bewegung. Beispiele für Befehle mit Bewegung sind Lesen, Schreiben, Rücksetzen, Vorsetzen, Suchen usw. Beispiele für Befehle ohne Bewegung sind Prüfen, Verzweigen, Maske Setzen, Betriebsart Setzen usw. Jede Art von E/A-Einheit hat im allgemeinen ihren eigenen Satz derartiger Befehle.
Die in den Fig.11-15 dargestellten Flußdiagramme zeigen, wie diese Zeit-Positions-Informationen verwendet werden können, fc um eine Wiederholungsoperation bei flüchtigen Fehlern auszuführen .
Nach einer Wiederholungsaperation liefert das Hauptprogramm einen Start-Befehl, der das Kanalprogramm dort fortfahren läßt, wo es unterbrochen wurde. Daraufhin wird das nächste Kanalbefehlswort N+1 (Lesebefehl, gekettet) ausgegeben und ausgeführt. Tritt kein Fehler auf, werden die restlichen Befehle bis zum Kanalbefehlswort N+6 ausgeführt, so daß die Blöcke 2-6 gelesen werden und der Bandlauf gestoppt wird^ wenn IRG-6 sich " am Kopf befindet. Die gegebene Darstellung eines Kanalprogramms für eine Magnetbandeinheit gilt auch für Kanalprogramme für andere Arten von E/A-Einheiten, wie beispielsweise Kartenlocher oder Kartenleser, Plattenspeicher und Drucker. Es kann sich um Selektorkanäle oder Mulitplexkanäle handeln, bei denen eine große Anzahl von Einheiten gleichzeitig betrieben werden. Obgleich ein Multiplexkanal eine große Anzahl von E/A-Einheiten gleichzeitig betreibt, führt er doch zu einer bestimmten Zeit . jeweils nur ein Kanalbefehlswort aus. Das in Fig.1 dargestellte komplexe Computersystem weist zwei zentrale Recheneinheiten und eine Anzahl von E/A-Verbindungen auf. Bei einem derartigen ■ PO 9-67-064. .,, 9Q9832/1219
iff
- 11 -
Computersystem ist die Erfindung beispielsweise anwendbar.
An eine zentrale Recheneinheit 1 sind nicht integrierte Kanäle A und B und an eine zentrale Recheneinheit 2 sind integrierte Kanäle C und D angeschlossen. Ein integrierter Kanal verwendet einen Teil seiner ausrüstung in Zeit-Multiplex-Betrieb mit der zentralen Recheneinheit, während ein nicht integrierter Kanal seine Ausrüstung lediglich dem Kanalbetrieb zur Verfügung stellt. Die Erfindung 1st bei beiden Kanaltypen anwendbar. Den Kanälen sind E/A-Verbindungen A, B, C und D zügeordnet,die über zugeordnete Steuereinheiten mit den E/A-Einheiten verbunden sind. Eine dnfache Steuereinheit kann lediglich eine einzelne E/A-Einheit steuern. Eine Mehrfach-Steuereinheit kann dagegen eine Mehrzahl von E/A-Einheiten steuern, in manchen Fällen über einen gemeinsamen Umschalter. Eine gemeinsame Mehrfach-Steuereinheit kann gleichzeitig mehrere E/A-Einheiten steuern, während eine integrierte Steuereinheit seine ihm zugeordnete E/A-Einheit mitenthält. Jede Gruppe von E/A-Verbindungsleitungen endet an einem Anschlußblock (EB), der sich an der letzten mit den Haupt-VerbindungsIeitungen verbundenen Steuereinheit befindet.
Auf diese Weise kann ein Kanal über eine Steuereinheit und in einigen Fällen auch über einen gemeinsamen Umschalter mit'einer E/A-Einheit verbunden werden. Sobald ein Fehler festgestellt wird, setzt dieser in der Einheit, in der er auftrat, also beispielsweise im Kanal oäer Steuerkreis einen Unterbrechungsspeioherkreis. Die Steuereinheit speichert gewöhnlich auch die Anzeige einer Unterbrechung einer Einheit. Diese Unterbrechungs-
po 9-67-064 .909832/1219
FU y O( U04 OR(GINALiNSPECTED
anzeige bleibt bis zur Übertragung des Unterbrechungszustandes in die zentrale Recheneinheit .bestehen, wo sie in bestimmten, für das E/A-Alte Programmstatuswort und für das Kanalstatuswort vorgesehenen Plätzen des Hauptspeichers abgespeichert wird ...
• ·
Die Erfindung bezieht sich insbesondere auf Kanalfehler, die in den Kanälen A, B, C oder D selbst auftreten. Wenn auch immer ein Fehler innerhalb eines Kanals A, B, D oder D auftritt, arbeitet dieser Kanal mit einer bestimmten Steuereinheit und einer bestimmten E/A-Einheit zusammen, und es wird eine Unterbrechung bewirkt. Eine durch einen Kanalfehier, Fehler in der Steuereinheit oder durch einen Fehler in einer E/A-Einheit hervorgerufene Unterbrechung bewirkt, daß das laufende Programmstatuswort an einem festen Speicherplatz gespeichert wird. Die Fig.2A und 2B zeigen die zwei Worte, aus denen sich das aufgrund eines Kanalfehlers in. einer bestimmten Speicherstelle gespeicherte E/A-Altes Programmstatuswort zusammensetzt. Die Bits I6-235 dieses Programmstatuswortes enthalten die Adresse des Kanals, von dem die Unterbrechung ausgeht. Die Bits 24-31 enthalten die Adresse der zurzeit des Kanalfehlers auf diesem Kanal betriebenen E/A-Einheit.
Zum Zeitpunkt einer Kanalunterbrechung wird auch in einer bestimmten Speicherstelle ein Kanalstatuswort gespeichert. Das Format des aus den beiden, in den Fig.j5A und J5B gezeigten Worten bestehenden Kanalstatuswoites ist gebräuchlich mit Ausnahme der in Fig OB eingezeichneten Bits 4,2,1 des Positionscodes, die Im Kanalstatuswort erfindungsgemäß gespeichert sind. Die
909832/1219
P0 9" 7~° ORIGINAL INSPECTED
1815656
Bits 8-31 bilden die nächste Befehlsadresse, um das nächste Kanalbefehlswort (KBW) zu holen. Die Bits 32-47 liefern die die E/A-Einheit, die Steuereinheit und den Kanal betreffende Statusinformation, die aufgrund einer Unterbrechung oder einer speziellen Befehlsausführung in die zentrale Recheneinheit übertragen wird. Aus einer mittels eines Programms durchgeführten Überprüfung dieser Status-Bits kann auf die Q1UeIIe und die Ursache der Unterbrechung geschlossen werden. Selbstverständlich liegt es im Rahmen der Erfindung, daß die Statusbits 4,2,1 auch in ein anderes Format eines Programmstatuswortes oder Kanalstatuswortes oder in andere Mittel übertragen werden, die eine Wiederholungsoperation aufgrund eines Fehlers einleiten.
In Fig.6 sind in einer E/A-Verbindung auftretende und für die Erfindung wesentliche Signale dargestellt. Ein Einheitauswahl-Signal wird durch Setzen eines Einheitauswahl-Triggers hervorgerufen und erst nach Abschluß der Verbindungsauswahl zurückgestellt. Die Leitung "Adressenausgabe" liefert ein Signal,vom Kanal einer Einheit. Die Leitung "Auswahl" führt kurz nach Beginn des Signales auf der Leitung "Adressenausgabe" ein Signal, das der Steuereinheit anzeigt, daß sie eine Einheitadresse empfängt, die gewählt werden sollte. Sind Steuereinheit- und E/A-Einheit ausgewählt, lie'fert die Steuereinheit auf der Leitung "Betrieb-Ein" ein Signal, das solange andauert, wie der Kanal in Betrieb ist. Die Steuereinheit liefert ein Signal auf der Leitung "Adresseneingabe", das für den Kanal anzeigt, daß die Eingabeleitungen die Adresse einer ausgewählten E/A-Einheit enthalten. Daraufhin liefert der Kanal ein Signal auf der Lei-PO 9-67-064 909832/1219
tung "Befehlausgabe", dae der Steuereinheit anzeigt, daß auf den Datenausgabeleitungen ein Befehl für die ausgewählte E/AEinheit vorhanden ist. Kurz darauf erscheint auf der Leitung "Statuseingabe" ein Signal von der ausgewählten Steuereinheit, das dem Kanal anzeigt, dafi die Steuereinheit die Statuslnformation auf die Eingabeleitung gegeben hat. Sobald der Kanal die Statusbits empfangen hat, sendet er über die Leitung "Dienst Aus" ein Signal zur Steuereinheit. " ·
Wird während des KanalProgramms eine Befehlskettung verwendet, liefert eine Leitung "Sperrung Aus" ein Signal vom Kanal zur Steuereinheit, das anzeigt, daß nach Ende der laufenden Operation die Operation von derselben E/A-Einheit fortgesetzt werden soll.
In Fig.7 sind die wesentlichsten Bestandteile eines Kanals dargestellt. Die E/A-Verbindung enthält eine Steuer-Sammelleitung
10 und eine Daten-Sammelleitung 11. Die Dat.en-Sarnmelleitungen
11 setzen sich aus neun Eingangsleitungen und neun Ausgangsleitungen zusammen. Die Steuer-Sammelleitung 10 enthält die in Fig.6 näher bezeichneten Signalleitungen. Die Steuer-Sammelleitung wird in üblicher weise über eine Kanalsteuerung 21 angesteuert. Die Kanalsteuerung 21 wird über Leitungen 24 von einem Festwertspeicher und Steuerung 22 betätigt. Die adressen für die Auswahl des Kanals, der Steuereinheit und der E/A-Einheiten werden von der zentralen Recheneinheit 17 über die SamT melleitung 16, das B-Register 14,- das C-Register 1p, die Byte-Auswahlgatter 12 und über die E/A-Verbindung zu den Steuereinheiten und den daran angeschlossenen E/A-Einheiten geführt.
909832/1219 PO 9-67-064
Nach der Auswahl der Einheit fließen die Daten von oder nach der E/A-Einheit über Gatter 12, wo sie im C-Register 15 in Byte-Form gebracht oder zerlegt werden. Anschließend werden die Daten als ein Wort nach oder von B-Reglster 14 und nach oder von Speicher I9 über Sammelleitung 16 und Register 18 unter der Kontrolle der Kanalsteuerung 21 und des Festwertspeichers 22 übertragen.
Das laufende Programmstatuswort befindet sich in der Schaltung 26, während das Kanalstatuswort in Schaltung 27 erzeugt wird. Programmstatuswort und Kanalstatuswort stehen unter der Kontrolle des Festwertspeichers 22. Während einer Kanalunterbrechung werden Programmstatuswort und Kanalstatuswort in festen Speicherstellen des Speichers I9 gespeichert, und zwar gesteuert von einem Adressenregister 25, das aufgrund einer Kanal-oder E/A-Unterbrechung über den Festwertspeicher 22 betätigt wird.
In Fig.7 ist erfindungsgemäß eine PositiaHsanzeigeschaltung 50 eingefügt, die über Leitungen 31 von der Kanalsteuerung 21 gesteuert wird. Die Ausgangssignale an den Ausgängen 4, 2, 1 der Schaltung 30 werden der Schaltung 27 für das Kanalstatuswort zugeführt, von wo sie bei Auftreten einer Unterbrechung in die in Fig.JB angegebenen Bitstellen des Kanalstatuswortes gebracht werden. Programmstatuswort und Kanalstatuswort werden nacheinander über Sammelleitung 16 und Datenregister 18 in die durch das Adressenregister 23 bestimmten, dem E/A-Altes Programmstatuswort und dem Kanalstatuswort zugeordneten Speicherplätze des Speichers 19 übertragen.
PO 9-67-064 - 909832/1219
Ein Ausführungsbeispiel der Positionsanzeigeschaltung JO ist in Fig.8 angegeben. Die binär .codierten Bits 1,2,4 an den Ausgangen 61 c, 62c und 6j5c der zugeordneten Trigger 61,62 und 63 bilden die bereits im Zusammenhang mit Fig.16 erläuterten Positionscodes A,B,C,D und E. Die Stellungen dieser drei Trigger ergeben einen Positionscode, der den in Flg.4 dargestellten Zeitabschnitten zugeordnet ist. Die Zuordnungen sind in folgender Zusammenstellung angegeben:
Positionscode PC
Position Bits im KSW Zeitabschnitte während Ausführung ; eines KBW
4 2 1
MBN «BBI BMH
A 0 0 1 Befehlsausgabe bis Befehlannahme
oder Befehlzurückweisung
B 0 10" Befehlannahme bis 1-Byte
Übertragen (nicht verw., bei Multiplexbetrieb
C 0 1' 1 I.Byte bis Neue Befehlsaar.
(bei Multiplexbetrieb von Befehlannahme bis Neue Befehlsadr.)
D 10 0 BefehlsZurückweisung (bleibt bis
BefehlZurückweisung nach KSW gegeben 1st.)
E 10 1 Von Neue Befehlsadr.bis Befehlaus-
gäbe
Definition der codierten Positionen:
Code A: Zeitabschnitt beginnend mit der Befehlsausgabe des Kanals an eine E/A-Einheit und endend, wenn der Kanal bestimmen kann, ob die Einheit den Befehl angenommen oder zurückgewiesen hat.
Code B: Zeitabschnitt beginnend, wenn der Kanal feststellt, .
r · , . 909832/1 219 PO 9-67-064
·■ - 17 -
daß die E/A-Einheit einen Befehl angenommen hat und endend, wenn das erste Datenbyte über die E/A-Verbindung übertragen wird. Code B ist in erster Linie für Einheiten geeignet, deren Bewegung erst beginnt, nachdem das erste Datenbyte übertragen ist. Im Falle eines Bandantriebes hat während des Positionscodes B ein Lesebefehl die Einheit in Lauf gesetzt, bei einem Schreibbefehl aber nicht. Injedem Pail ist die Bewegung bestimmbar ·
Code C: Verarbeitungszeit der Daten einesBefehls in einem Selekfcorkanal beginnend mit dem ersten Byte und endend mit dem Setzen einer neuen, der Verkettung dienenden Befehlsadresse, dagegen in einem Multiplexkanal beginnend, wenn der Kanal bestimmt, daß ein Befehl angenommen ist, und endend mit der neuen Befehlsadresse. Die Bewegung der Einheit ist bestimmbar.
Code D: Zeitabschnitt beginnend, wenn eine Einheit einen Befehl zurückweist, und endend, wenn diese entsprechende Information (Einer-Status-Byte) in das Kanalstatuswort gegeben wird. Da die Einheit den Befehl zurückwies, fand keine Bewegung statt.
Code E: Beginnend, wenn die neue Befehlsadresse für die Verkettung gesetzt ist, und endend, wenn der neue Befehl zur E/AEinheit übertragen ist. Dieser Code zeigt an, daß im Bereich der Einheit kein Steuersignal erforderlich ist, um diesen Befehl zu wiederholen.
Definition der Klassen von E/A-Einheiten:
EiAe Klasse enthält diese Typen von Einheiten, bei denen die PO 9-67-064 909832/1219
Kanalbefehle für zentrale Recheneinheit und/oder Wiederholungsoperation für gleiche Positionscodes gleicher Art sein können. Die E/A-Einheiten lassen sich in drei Klassen einteilen:
I: Bei diesen Einheiten beginnt die Wiederholungsoperation bei jedem Positionscode am Anfang einer Kanalbafehlswort-Verkettung. Das erste Kanalbefehlswort in einer Verkettung wird durch das letzte Kanaladresswort der betreffenden Einheit angezeigt.
II: Bei dieser Klasse wird das beim Auftreten des Fehlers vorhandene Kanalbefehlswort wiederholt, das durch die Befehlsadresse weniger 8 Bytes im KSW angezeigt wird. Dieses eine wiederholbare Kanalbefehlswort kann sich in der Mitte einer Kanalbefehlswort-Verkettung befinden, solange sich Befehlsverkettung und Datenverkettung innerhalb derselben Kette nicht vermischen.
III: Bei dieser Klasse wird eine Wiederholungsoperation für die |l meisten Positionscodes überhaupt nicht eingeleitet, für diese Codes wird ein ständiger Fehler signalisiert.
Die folgende Aufstellung gibt einen Überblick über die Zusammenhänge zwischen Wiederholungsoperationen, Klassen von E/AEinheiten und Positionscodes.
909832/1219 Po 9-67-064
ο - 19 -
ve Einheiten Positionscodes
o^ SABC D E
-ο Klasse II Wiederhol-Bei Befehl Bei Band- Bei Befehl mit Be- Keine Bewegung, Keine Bewegung α (zB.:Band- ung Zen- ohne Be- Schreibbefehl wegung Rückstellung Wiederholung Wiederholung ψ einheit) trale wegung ist keine Bewe- und Wiederholung des laufenden des laufenden
Rechen- Bewegung gung, also des laufenden KBW. KBW. KBW.
einheit ungewiß, Wiederholung Bei Befehl ohne Be-
deshalb des laufenden wegung Wiederholung
Beendigung KBW. Bei Band-des laufenden KBW
des Arbeits-Lesebefehl ."a ohne Rückstellung.
ganges.Bei fand Bewegung
Befehl mit statt, also
Bewegung Rückstellung
Wiederholungund Wiederho-
des laufen- lung des lau-
^ den KBW. f enden KBW.
° Klasse I Wiederho- Wiederho- Wiederholung Wiederholung von Wiederholung Wiederholung
^ (Direkter lung Zen- lung von An-von Anfang Anfang der KBW- von Anfang von Anfang
^, Zugang) trale fang der der KBW-Liste Liste (d.h.von der KBW-Liste der KBW-Liste ·
ro Rechen- KBW-Liste (d.h.von dem dem vom KAW (d.h.von dem (d.h.von dem
^ einheit (d.h.von dem vom KAW adressierten vom KAW vom KÄW
-* lfcom KAW ad- adressierten KBW. adressierten adressierten
*° ressierten KBWj :. KBW. KBW.
-* KBW.
Klasse Wiederho- Bei Befehl Beendigung Beendigung des Keine Bewegung, Keine Bewegung
III lung Zen- ohne Beweg, des Arbelts- Arbeitsganges Wiederholung des Wiederholung
(z.B. trale ist Beweg. ganges bei bei Kanalfehler laufenden KBW. des laufenden Drucker) Rechen- ungewiß,des- Kanalfehler (oder nochmals KBW.
einheit halb Beendig.(oder noch- drucken)
d.Arbeitsgang.mais druk- _»
Bei Befehl ken' OO
mit Beweg. __»
Wiederhol.d. -cn
laufenden <j)
KBW. <3>
Die Positionscodes sind demnach insbesondere in Verbindung mit Einheiten der Klasse II verwendbar, also beispielsweise Bandantrieben auf einem SelektDükanal oder Kartenlese-oder Stanzeinheiten auf einem Multiplexkanal.
Die in B1Ig.8 .eingezeichneten Leitungen 31*-m (mit Ausnahme von 31g) der Positibnsanzeigeschaltung 50 sind in Kanalanordnungen üblich. In einer derartigen Kanalanordnung haben die Leitungen W folgende Funktionen. Über Leitung J1a signalisiert der Kanal, daß vom Pestwertspeicher (Fig,7) e,ine neue Befehlsadresse ausgegeben wurde· Dabei wird die vorhergehende Befehlsadresse in den Adder der zentralen Recheneinheit 17 übertragen und dort die Zahl 8 hinzugezählt, so daß zur Lokalisierung.des laufenden Kanalbefehlswortes die vorausgegangene Befehlsadresse auf den neuesten Stand gebracht wird. Diese Operation erfolgt unmittelbar bevor jeweils das nächste Kanalbefehlswort geholt wird. . . '
Der Leitung 31b wird ein Signal zugeführt, wenn kein Selektorkanal oder Multlplex-Unterkanal in Betrieb ist. Das Signal auf Leitung J1b bleibt bestehen, solange der Kanal von der zentralen Recheneinheit nicht ausgewählt ist oder eine Abfrage über die E/A-Verbindung empfängt; der Kanal führt dann kein Kanalbefehlswort aus.
Die Leitung 31c (Setzen Code C) zeigt ein erstea Datenbyte bei
einem Selektorkanal oder ein Befehlsannahmesignal bei einem Multiplexkanal an, was in Verbindung mit Fig.10 noch erläutert wird.
PO 9-67-064 · 909832/1219
1815669
' Die Leitung 31d (Einheitsauswahl) empfängt ein Signal, sobald ein üblicher Einheitsauswahl-Trigger (nicht dargestellt) in der Kanalsteuerung 21 gesetzt wird, wenn ein Befehl von einer E/AEinheit auszuführen ist.
•Pig.6 zeigt den zeitlichen Zusammenhang zwischen dem Einheitauswahl-Signal und anderen E/A-Verbindunge-tSignalen.
Leitung 31 e ist ein Teil der E/A-Verbindung und führt das in Fig.6. mit "Befehlsaugabe" bezeichnete Signal, durch das der Kanal der E/A-Einheit anzeigt, daß für sie ein Befehl bereitgestellt ist.
Leitung 31f (Befehlannahme) und Leitung 31h (Befehlzurückweisung) liegen an einer in Pig.10 dargestellten Schaltung, die anschließend noch beschrieben wird.
Eine Oder-Schaltung 48 empfängt sämtliche Prüfsignale, die üblicherweise von einem Kanal an den Leitungen 31d*&,l und m ankommen. Bei Auftreten eines Kanalfehlers wird der Oder-Schaltung 48 ein Kanalfehlersignal zugeführt. Ein Kanalfehlersignal am Ausgang der Oder-Schaltung 48 setzt einen Kanalfehler-Trigger 50. Trigger 50 wird über Leitung 31t zurückgestellt, sobald die zentrale Recheneinheit die Unterbrechungsinformation empfangen hat. Der Ausgang 57a des Triggers 50 signalisiert einen Kanalfehler, während der Ausgang 57b ein Signal abgibt, Wenn kein Kanalfehler vorliegt.
PO 9-67-064 9 0 9 8 3 2/1219
Bei Auftreten eines Kanalfehlers wird über die Kanalsteuerung 21 in Pig.7 die E/A-Verbindung aktiviert, so daß die E/A-Einheit gestoppt wird. Dies geschieht, sobald Ausgang 57a.des Triggers 50 in Fig.8 ein Signal führt.
Die Anfänge der Zeitabschnitte A,B,C,D und E werden durch entsprechende Freigabe der Und-Schaltungen 44,46 oder 47,45 und 41 signalisiert, die während einer fehlerfreien Ausführung ) eines Kanalbefehls in der in Fig.18 dargestellten Weise angesteuert werden. Es ist Jeweils nur eine der Und-Schaltungen freigegeben. Der eingeschlagene Befehlsweg ist abhängig erstens von der Kanalart, zweitens davon, ob Befehls-oder Datenkettung verwendet wird und drittens von der spezifischen Operation im Kanalbefehlswort. Die Beschriftung an den von den Positionscodes ausgehenden Pfeilen gibt die für die Erzeugung des jeweiligen Positionscodes erforderliche Ursache an.
In Fig.18 repräsentiert Positionscode C zwei Zustände, C-I repräsentiert den über Leitung J51b gemeldeten Zustand "Kanal Leer". C-D wird über eine Leitung J1c (Setzen Code C) gemeldet, wodurch entweder das erste Byte bei einem Selektorkanal oder eine BefebJs&nnahme bei einem MuItiplexkanal angezeigt wird.
.Durch Freigabe der Und-Schaltung 44 werden die Trigger 61,62 und 65 entpprechend des Positionscodes A eingestellt. In ähnlicher Weise werden diese Trigger durch Freigabe der Und-Schaltung 46 entsprechend des Positionscodes B, durch Freigabe der Und-Schaltung 43 entsprechend des Positionscodes C,durch
909832/1219
PO 9-67^064
1815866
- 23 -
Freigabe der Und-Schaltung 47 entsprechend des Positionscodes B· und durch Freigabe der Und-Schaltung 41 entsprechend des Positionscodes B eingestellt. Die Freigabe der genannten Und-Sehaltungen 41-47 und damit das Aufeinanderfolge Setzen der Positionscodes erfolgt, solange der Ausgang 57b des Kanalfehler-Triggers 50 ein Signal liefert, das angibt, daß kein Kanalfehler vorliegt. Sobald ein Kanalfehler signalisiert wird, verschwindet d&ss genannte Signal am Ausgang 57b und der zum Zeitpunkt des Auftretens des Fehlers in der Positionsanzeigeschaltnng, &»&» in üen Triggern 61,62 und 63 eingegebene Positionseode bleibt dann gespeichert« An dieAusgänge der Und-Schaltungen 41«47 sind Inverter 51*52*53*54 und 56 angeschlossen, um Jeweils auch kompleesntäre Ausgangssignale zu erhalten· Den Triggern 61 #62 ma. 63 wird also jeweils das sehte und das komplementi&s Äusgangssignal der Und-Sshalfcungen 41-47 zugeführt» so äaS Hie trigger entsprechend der angegebenen Positionsöodes eingestellt werden^ \fenn -die Eirigänge öer Und«»Sohaltungen 41-47 während üer normalen Kanalopration erregt werden. Aufgrund der Eingangibeäingiingen kann zu einem Zeitpunkt Jeweils nur ein© der fünf Usid-Schaltungen freigegeben sein.
Jeder der Trigger.61/62 und 63 besteht aus einer Oder-Schaltung und einer ünd-Seha lab ung. Der Ausgang der Oder-Schaltung bildet einen Eingang der Und-Schaltung und der Ausgang der Und-Schaltung wird su einem Eingang der Oder-Schaltung rückgeführt.
Das Setzen des Triggers erfolgt bei Jedem der Oder-Schaltung zugeführten Eingangssignal, während die Rück&ellung Jeweils dann erSSLgt, wenn ein Eingangssignal der Und-Schaltung ver-PO 9-67-064 ' 909832/1219 ORlGlNAi WSPECTBD
. - 24 schwindet.
Im Betrieb durchläuft die Positionsanzeigeschaltung 30 nacheinander sämtliche vorgesehenen Positionscodes, solange kein Kanalfehler auftritt. Bei Auftreten-eines Kanalfehlers jedoch, werden sämtliche Und-Schaltungen 41-47 gesperrt und der Schaltzustand der Trigger 61,62 und 63 entsprechend des aura Zeitpunkt der Kanalunterbre drang existierenden. Positionscodes festgehalten. Die drei Trigger.61,62 und 63 verharren in diesem Schalt-
" zustand bis die Bits des Positionscodes mit weiterer Status-m information in die Kanalstatuswort-Schaltung 27 (Pig.7) und von dort zur Sammelleitung 16 übertragen sind, die das Kanalstatuswort in das Datenregister 18 weiterleitet, Bei einer Kanalunterbrechung bewirkt -die Kanalsteuerung 21 über Leitung 24 des Pestwertspeichers 22, daß das Adressenregister 23 einen Speicherzyklus einleitet» Dabei adressiert das Adressenregister 23 den für das Kanalstatuswort vorgesehenen Speicherplatz im Speicher I9 und es wird das Kanalstatuswort vom Datenregister
I 18 in diese Speicherställ&ceingespeichert·
In ähnlicher Weise wird das laufende Programmstatuswort an dem für das E/A-Altes Programmsteuerwort vorgesehenen Speicherplatz gespeichert.
Nach der Übertragung der Unterbrechungsinformation in die zentrale Recheneinheit wird ein Unterbrechungsendsignal zum Kanal übertragen, so daß sämtliche, die Unterbrechung hervorrufenden Zustände aufgehoben werden und Kanalfehler-Trigger über Eingang 31t zurückgestellt wird. PO 9-67-064 · 909832/1219
ORJGiNAL fNSPßCTED
Daraufhin kann die in Pig.9 dargestellte E/A-Überwachung die drei Bits 1,2 und 4 im Kanalstatuswort prüfenund sie in den jeweiligen Positionscode A,B,C,D oder Edecodieren. Das in Fig.2A angegebene E/A-Alte Programm-Statuswort liefert die Adresse des unterbrechenden Kanals, der unterbrochenen E/A-Einheit und seiner Steuereinheit.
Die E/A-Überwachung läßt dann die in den Flußdiagrammen der Fig.11-15 dargestellten Operationen des Systems ablaufen. Dabei wird die in Fig.17 angegebene Abfrageinformation verwendet, die immer dann gewonnen wird, wenn in den Flußdiagrammen die Abfrageroutine erwähnt ist. Die Abfrageinformationen werden in der in den Flußdiagrammen festgelegten Welse angewendet,um dieAuswahl und den Ablauf des erfofderlichen Fehlererkennungsprogramms und damit die zu einem bestimmten Zeitpunkt und bei Vorliegen bestimmter Umstände erforderliche Wiederholungsmethode zu gewährleisten.
Die in Fig.10 dargestellte Zeitgeberschaltung liefert einige der der Positionsanzeigeschaltung gemäß Fig.8 zuzuführenden Signale. Der Ausgang einer Oder-Schaltung 79 istmit der Leitung 31g der Positionsanzeigeschaltung verbunden. Der Ausgang der Oder-Schaltung 79 führt ein erstes Byte-Signal von einer Und-Schaltung 7I. und ein Multiplex-Befehlsannahmesignal von einer Und-Schaltung 76a* so daß der Positionsanzeigeschaltung ein Signal "Setzen Code Ct! zugeführt wird. Eine Und-Schaltung 76b liefert bei Selektorbetrieb über Leitung ~j>M einBefehlsannahmesignal an die PositionsanzeigescheLtung 30. In diesem FaJ.1 wird kein Multiplex-Befehlsannahmesignal geliefert. Bei PO 9-67-Q64 . 909832/1219
Multiplexbetrieb wird über Leitung 31 f kein Befehlsannahme-Signal übertragen; Leitung J1c empfängt in diesem Fall Befehlsannahmesignal über Leitung 78.
Das der Positionsanzeigeschaltung ^O zügeführteSignal "Setzen Code C" bewirkt einen unterschiedlichen Operationsablauf für Selektor-und Multiplexkanäle. Die unterschiedlichen Abläufe sind aus Fig.4 zu ersehen. Bei Multiplexbetrieb ist Positionscode B ausgelassen und Positionscode C erstreckt sich bis zu der Stelle, an der bei Selsktorbetrieb Positionscode B beginnt. Bei Multiplexbetrieb verhindert das fehlende Selektor-Befehlsannahmesignal, daß Und-Schaltung 46 durchgeschaltet wird. Das erste Byte-Signal schaltet lediglich wieder Und-Schaltung 4 3 durch, so daß wieder versucht wird, den Positionscode C in die Trigger 61,62 und 65 einzugeben, obwohl dieser Code bereits dort gespeichert wird.
Die Und-Schaltung 7I empfängt an den Eingängen 31nund 31g die Signale "Dienst Aus" und "Dienst Ein" von der E/A-Steuerung, die in der Kanalsteuerung 21 der Anordnung gemäß Fig.7 enthalten ist. Das Signal "Dienst Aus" (siehe Pig.6) zeigt der E/A-Einheit an, daß der Kanal von ihr die Information "Statuseingabe" empfangen hat. Das Signal "Dienst Ein" zeigt der E/A-Steuereinheit jeweils an, wenn ein Datenbyte zur Übertragung in den Kanal bereitgestellt ist.
Ist nur eine Kanalbetriebsart vorgesehen, kann die jeweils nicht erforderliche Und-Schaltung 76a oder 76b entfallen. In diesem Falle werden beide Eingänge 81 und 82 für die Betriebsart nicht PO 9-67-064 909832/1219
c (
benötigt.
Die Und-Schaltung 77 liefert über Leitung 31h der Und-Sohaltung 47 Ib FIg.8 das Signal "BefehlzurUckweisung11 · Die Und-Schaltung 77 wird durefo ein Signal "S^ug«NiciatannahmeM eines Inverters 74 erregt, der ύοά der Sclialtusg· 73 das Signa! "Status-Annahme" siäpfSagt· MeSchaltung 73 liefert ein Signal "Status-Annahme" as eie Ünd-Ssfealtiuagen ?6a und bP wenn sie witeead eier Überfeaguisg eirtes Sigaales "Stafciaseingab®" (FIg e6) auf der Leitung 11a f©a der E/Ä=?Eialieife einsnasfeiäba^es Steuerbyte eRipfängt. Wis=ß kein aaaelSHfoares Sta^iasüyta esipfaagea5 so wird anstelle -äss3 IM-Sohaltaagea 76a üad b die UBd-Ssfeal^sg 77 erregt« Ijisgfe fesin ICanalfefeles? vo?.^ so kasa Jgwgüs mar eine öer !IM»
77 es,:?3gt ssin= Wiyä s>i*f Loitung 5?b is^t^ so gibt clis Uiiä^SCIialtyng 7& ? Ufifl^Sofci.feiiig 70 ""ΐ"1"=3 über- Leitesg sitaustjahl3^ &θρ I-sifeisg 31p das -3in Signal iren stoa;^ Talcfcgecer 72 f2 bewirkt @ia(S Tsi-sSgsrte übermifct-
©ia Ansgaßgssigsal abc 5'M smell das Signal !31 Sigma! 5lBeferiel3 linsg β iiEg©ftlbrt β Des:
MSg ö@s aa Leitung JIs liegeEdeii Sigaala "Status©izigabe"*
ORIGINAL fNSPECTED
■ po 9-67-064
1 909832/1219

Claims (1)

  1. Patentansprüche
    1. Verfahren zur Fehlerkorrektur bei einem in einer Eingabe/ Ausgabe-Verbindung zu einer zentralen Recheneinheit auftretenden Kanalfehler und dadurch bedingter Kanalunter-
    w brechung, dadurch gekennzeichnet, daß zur-Erlangung einer Information über die während der Ausführung eines Kanalbefehls zum Zeitpunkt des Auftretens eines Kanalfehlers durchlaufene Position der Eingabe/Ausgabe-Einheit verschiedenen Positionen im Kanalbefe'hlsablauf diskrete Signale zugeordnet werden, und daß mit dieser Information eine möglicherweise erforderliche Rücksetzung der Eingabe/ Ausgabe-Einheit und eine geeignete Wiederholungsoperation für den betreffenden Kanalbefehl eingeleitet wird.
    2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die diskreten Signale bestimmte Teile im Ablauf des Kanalbefehls bezeichnende, durch Positionscodes dargestellte Zeitmarken sind.
    5· Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß ein Positionscode am Ende der Ausführung eines Kanalbefehls wird.
    BAD ORIGINAL.
    Ill·
    4. Verfahren nach Anspruch 2 und J, dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der den Beginn der Übertragung eines Kanalbefehls über den Kanal zur E/A-Einheit anzeigt.
    5· Verfahren nach Anspruch 2 bis 4, dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der die Annahme oder Zurückweisung des Befehls durch die Eingabe/Ausgabe-Einheit anzeigt*
    6. Verfahren nach Anspruch 2 bis 5* dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der den Beginn der Übertragung des Datenblocks zur Eingabe/Ausgabe-Einheit anzeigt.
    7. Verfahren nach Anspruuh 2 bis 6, dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der bei Befehlskettung den Beginn der Änderung der den nächsten Kanalbefehl bezeijhnenden Befehlsadresse anzeigt.
    8. Verfahren nach Anspruch 2 bis 1J3 dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der den Abschluß der Adressenänderung anzeigt,
    9. Verfahren nach Anspruch 2 bis 8, dadurch gekennzeichnet, daß ein Positionscode signalisiert wird, der die Adressenänderung für einennachfolgenden Betfehl angibt, der die Ausführung einer Verzweigung enthält.
    PO 9-67-064 90 9832/1219
    10. Verfahren nach den Ansprüchen 1 bis 9, dadurch gekenn- ■ zeichnet, daß der bei Auftreten eines Kanalbefehles gespeicherte Posittonscode in vorbestimmte Speicherstellen des Speichers der zentralenJRecheneinheit übertragen wird, von denen aus die erforderliche Fehlerkorrektur durch Wiederholung des laufenden Kanalbefehls eingeleitet wird.
    11. Einrichtung zur Durchführung des Verfahrens nach-den An- ^ Sprüchen 1 bis 10, dadurch gekennzeichnet, daß die die Positionscodes führenden Steuerleitungen der Eingabe-Ausgabe-Verbindung auf der Seite der Recheneinheit über eine Kanalsteuerung zu einer Positionsanzeigeschaltung geführt sind, in der die Positionscodes nacheinander speicherbar sind, daß bei Auftreten eines Kanalfehlers der zuletzt in der Positionsanzeigeschaltung gespeicherte Positionscode festgehalten und zur Einleitung der zugeordneten Wiederholungsoperation in die vorgesehenen Speicherplätze der zentralen Recheneinheit übertragen wird.
    12. Einrichtung nahh Anspruch 11, dadurch gekennzeichnet, daß der Ausgang der Positionsanzeigeschaltung mit einer das jeweilige Kanalstatuswort speichernden Schaltung verbunden ist, in der bei Auftreten eines Kanalfehlers der jeweilige Positionscode in das Kanalstatuswort einstellbar ist, und daß dieses Kanalstatuswort und dasjeweilige Programmstatuswort, die zusammen Kanaladresse, Einheitsadresse und Befehlsadresse enthalten, in die vorgesehenen Speicherplätze übertragbar sind.
    PO 9-67-064 909832/1219
DE19681815666 1968-01-15 1968-12-19 m, 19.12.68 OT 07.08.69 fr 15.01.68 V.St.v.Amerika 697797 Schaltungsanordnung zur Kanalfehlerkorrektur Pending DE1815666B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US69779768A 1968-01-15 1968-01-15

Publications (2)

Publication Number Publication Date
DE1815666A1 true DE1815666A1 (de) 1969-08-07
DE1815666B2 DE1815666B2 (de) 1970-09-10

Family

ID=24802580

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19681815666 Pending DE1815666B2 (de) 1968-01-15 1968-12-19 m, 19.12.68 OT 07.08.69 fr 15.01.68 V.St.v.Amerika 697797 Schaltungsanordnung zur Kanalfehlerkorrektur

Country Status (10)

Country Link
US (1) US3564502A (de)
JP (1) JPS4842741B1 (de)
BE (1) BE725193A (de)
CH (1) CH483059A (de)
DE (1) DE1815666B2 (de)
ES (1) ES362337A1 (de)
FR (1) FR1604086A (de)
GB (1) GB1184160A (de)
NL (1) NL162761C (de)
SE (1) SE337712B (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3688274A (en) * 1970-12-23 1972-08-29 Ibm Command retry control by peripheral devices
US3721961A (en) * 1971-08-11 1973-03-20 Ibm Data processing subsystems
US3735362A (en) * 1971-09-22 1973-05-22 Ibm Shift register interconnection system
GB1434186A (en) * 1972-04-26 1976-05-05 Gen Electric Co Ltd Multiprocessor computer systems
US4225917A (en) * 1976-02-05 1980-09-30 Motorola, Inc. Error driven interrupt for polled MPU systems
US4149244A (en) * 1976-06-07 1979-04-10 Amdahl Corporation Data processing system including a program-executing secondary system controlling a program-executing primary system
US4207609A (en) * 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
US4244019A (en) * 1978-06-29 1981-01-06 Amdahl Corporation Data processing system including a program-executing secondary system controlling a program-executing primary system
US4205374A (en) * 1978-10-19 1980-05-27 International Business Machines Corporation Method and means for CPU recovery of non-logged data from a storage subsystem subject to selective resets
US4381540A (en) * 1978-10-23 1983-04-26 International Business Machines Corporation Asynchronous channel error mechanism
US4410942A (en) * 1981-03-06 1983-10-18 International Business Machines Corporation Synchronizing buffered peripheral subsystems to host operations
US4636942A (en) * 1983-04-25 1987-01-13 Cray Research, Inc. Computer vector multiprocessing control
US4603380A (en) * 1983-07-01 1986-07-29 International Business Machines Corporation DASD cache block staging
JPS60142418A (ja) * 1983-12-28 1985-07-27 Hitachi Ltd 入出力エラ−回復方式
US4771378A (en) * 1984-06-19 1988-09-13 Cray Research, Inc. Electrical interface system
CA1228677A (en) * 1984-06-21 1987-10-27 Cray Research, Inc. Peripheral interface system
JPH0680492B2 (ja) * 1984-09-29 1994-10-12 株式会社日立製作所 エラー回復方法
US4703481A (en) * 1985-08-16 1987-10-27 Hewlett-Packard Company Method and apparatus for fault recovery within a computing system
US5303351A (en) * 1988-12-30 1994-04-12 International Business Machines Corporation Error recovery in a multiple 170 channel computer system
US5142638A (en) * 1989-02-07 1992-08-25 Cray Research, Inc. Apparatus for sharing memory in a multiprocessor system
JPH0776950B2 (ja) * 1990-06-22 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理方法及び装置
CA2154509A1 (en) * 1994-10-03 1996-04-04 Paul Peixoto Carreiro Method and apparatus for automatic frame transmission on a channel to controller interface in a data processing system
US5740406A (en) * 1995-05-15 1998-04-14 Nvidia Corporation Method and apparatus for providing fifo buffer input to an input/output device used in a computer system
US6339799B1 (en) * 1998-10-29 2002-01-15 International Business Machines Corporation Method of repositioning an I/O device to a predetermined position to retry a program without knowledge of which part of the program caused the retry
US6343335B1 (en) * 1998-10-29 2002-01-29 International Business Machines Corporation System for repositioning an I/O device to a predetermined position to retry a program without knowledge of which part of the program caused the retry
JP2000172624A (ja) * 1998-12-07 2000-06-23 Hitachi Ltd 入出力処理システム

Also Published As

Publication number Publication date
GB1184160A (en) 1970-03-11
US3564502A (en) 1971-02-16
NL6900173A (de) 1969-07-17
DE1815666B2 (de) 1970-09-10
FR1604086A (de) 1971-07-05
ES362337A1 (es) 1970-12-01
JPS4842741B1 (de) 1973-12-14
SE337712B (de) 1971-08-16
NL162761B (nl) 1980-01-15
BE725193A (de) 1969-05-16
CH483059A (de) 1969-12-15
NL162761C (nl) 1980-06-16

Similar Documents

Publication Publication Date Title
DE1815666A1 (de) Verfahren und Einrichtung zur Kanalfehlerkorrektur
DE2555963C2 (de) Einrichtung zur Funktionsmodifizierung
DE2359776C2 (de) Speichermodul
DE2328058C2 (de) Fehlerdiagnoseeinrichtung in einer digitalen Datenverarbeitungsanordnung
DE1524239A1 (de) Verfahren zur Lokalisierung eines Fehlers in einer Anlage mit mindestens zwei parallel arbeitenden Rechengeraeten
DE1151397B (de) Programmgesteuerte Datenverarbeitungs-anlage mit gespeicherten Unterprogrammen
DE2122338A1 (de) Schaltungsanordnung zur Steuerung des Datenflusses in Datenverarbeitungsanlagen
DE2163162A1 (de) Schaltungsanordnung zur Kanalfehlerkorrektur
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE1931966A1 (de) Elektronische Datenverarbeitungsanlage
DE19535546B4 (de) Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
DE2400064A1 (de) Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem
DE1499206B2 (de) Rechenanlage
DE1929495A1 (de) Zugriffsteuereinrichtung fuer einen umlaufenden Speicher einer Datenverarbeitungsanlage
DE1449425B2 (de) Einrichtung zur Ermittlung von Fehlern in einem Magnetband
DE1774307B2 (de) Schaltungsanordnung zum auffinden und beseitigen von stoerungen in aufzeichnungen
DE2242279C3 (de) Schaltungsanordnung zur Ermittlung von Fehlern in einer Speichereinheit eines programmgesteuerten Datenvermittlungssystems
EP0151810B1 (de) Verfahren und Schaltungsanordnung zum Prüfen eines Programms in Datenverarbeitungsanlagen
DE2343501A1 (de) Ein-/ausgabe-reserviersystem fuer die datenverarbeitende vorrichtung
DE1808678B2 (de) Verfahren und schaltungsanordnung fuer elektronische daten waehlvermittlungsanlagen mit einem zentralen speicher
DE1574590B2 (de) Matrixartig aufgebaute Schalteranordnung zur wahlweisen Verbindung einer von mehreren Eingabe-Ausgabe-Steuereinheiten mit einer von mehreren Eingabe/Ausgabe-Einheiten
DE3009121B1 (de) Mikroprogramm-Steuereinrichtung
DE1474090A1 (de) Informationsverarbeitung
DE3432837A1 (de) Datenkompressions- und datenexpandiereinrichtung zum uebertragen bzw. speichern von daten
DE2524957C3 (de) Anordnung zur Auswahl von Ein- und Ausgabeeinheiten mittels Adressen

Legal Events

Date Code Title Description
E77 Valid patent as to the heymanns-index 1977