DE2163162A1 - Schaltungsanordnung zur Kanalfehlerkorrektur - Google Patents

Schaltungsanordnung zur Kanalfehlerkorrektur

Info

Publication number
DE2163162A1
DE2163162A1 DE19712163162 DE2163162A DE2163162A1 DE 2163162 A1 DE2163162 A1 DE 2163162A1 DE 19712163162 DE19712163162 DE 19712163162 DE 2163162 A DE2163162 A DE 2163162A DE 2163162 A1 DE2163162 A1 DE 2163162A1
Authority
DE
Germany
Prior art keywords
channel
command
address
register
ccw
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
DE19712163162
Other languages
English (en)
Inventor
Roger Louis Wappingers Falls N.Y.; Sorg jun. John Holliday Los Gatos Calif.; Thorn Caryl Alleyn Poughkeepsie N.Y.; Cormier (V.St.A.). G06f 11-08
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 DE2163162A1 publication Critical patent/DE2163162A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor

Landscapes

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

Description

Bobiingen, den 13. Dezember 1971 ru-nr
Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: Docket PO 970 O29
Schaltungsanordnung zur Kanalfehlerkorrektur
Die Erfindung betrifft eine Schaltungsanordnung zur Fehlerkorrektur bei einem in einem Kanal zu einer zentralen Recheneinheit auftretenden Kanalfehler, wobei 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 Kanalbefehlsablauf diskrete Signale zugeordnet werden, so daß mit dieser Information eine möglicherweise erforderliche Rücksetzung der Eingabe-Ausgabe-Einheit und eine geeignete Wiederholungsoperation für den betreffenden Kanalbefehl einleitbar ist.
209829/0930
Bei bekannten Datenverarbeitungsanlagen hat ein Kanalfehler große Auswirkungen auf den Ablauf der Operationen in der gesamten Datenverarbeitungsanlage. Zu den Kanalfehlern zählen auch die im Kanal selbst auftretenden Fehler, wie beispielsweise Kanal-Datenfehler, Kanal-Befehls— oder -Steuerfehler oder Eingabe—Ausgabe-Steuereinheitenfehler. Beim Auftreten derartiger Fehler haben bekannte Datenverarbeitungsanlagen den gesamten Operationsablauf unterbrochen, und es wurde
. ein Programm eingeleitet, das Systemfehleraufzeichnung genannt wird und das die die Fehler betreffenden Daten sammelte und speicherte. Daraufhin wurden in einem langwierigen Prozeß sowohl das Arbeitsprogramm als auch die Daten wiedergewonnen. Unter Umständen erforderte dieser Prozeß mehrere Maschinenstunden. Bekannte Systeme reagieren auf Kanalfehler anders als auf bestimmte Arten von vorübergehenden Eingabe-Ausgabe-Einheitenfehlern, die sich beispielsweise durch Bandrücksetzen, erneutes Lesen oder Schreiben korrigieren lassen. Kanalbefehlswiederholungen sind außerordentlich schwierig,
*' da ein Kanal über eine Eingabe—Ausgabe-Steuereinheit mehrere auf Anforderung hin arbeitende Eingabe-Ausgabe-Geräte bedienen muß. Die Kanalbefehlswörter werden bei d^n bekannten Maschinen in sequentiellen Adressen im Hauptspeicher abgespeichert und einige dieser Kanalbefehlswörter enthalten Befehle, andere enthalten hingegen wiederum Speicheradressen für Daten, aber keine Befehle. Ein Anfangsbefehl für den Kanal teilt dem Kanal die Adresse mit, wo das erste Kanalbefehlswort im Speicher abgespeichert ist, und die weiteren Kanalbefehlswörter werden
po 9-70-029 209829/0930
mit den weiteren Kanalbefehlswörtern verkettet, indem sie jeweils nach dem Abarbeiten eines Kanalbefehlswortes die Lageadresse des nächsten Kanalbefehlswortes im Speicher angeben, was dadurch erreicht wird, daß die jeweilige Adresse z.B. um 1 erhöht wird.
Es sind bereits auch Systeme bekannt geworden, bei denen einzelnen Befehlsphasen während der Ausführung eines Befehls diskrete Signale zugeordnet sind. Bei Auftreten eines Fehlers dienen diese Signale als Information für die Entscheidung darüber, ob der gerade ablaufende Befehl wiederholt, ob eine Sperrung des Befehlsablaufes erfolgen oder ob auf ein Fehlerberichtigungsprogramm umgeschalten werden muß.
Eine geeignete Wiederholungsoperation bei Auftreten eines Fehlers führt mit großer Wahrscheinlichkeit zum Erfolg, da 75% aller Fehler nur vorübergehend auftreten und auf Störspannungen zurückzuführen sind.
Um sog. flüchtige Kanalfehler schnelll und sicher korrigieren zu können, wurde bereits in dem DBP 1815666 eine schaltungsanordnung vorgeschlagen, die beim Auftreten von Kanalfehlern die zentrale Recheneinheit veranlaßt, einen Korrekturprozeß, bestehend aus mehreren Korrekturoperationen, durchzuführen. Gemäß dieser Patentschrift wird diese Aufgabe dadurch gelöst, daß die die diskreten Signale führenden Steuerleitungen der
PO 9-70-029 209829/0930
Eingabe—Ausgabe—Verbindung auf der Seite der Recheneinheit über eine Kanalsteuerung zu einer Positionsanzeigeschaltung geführt sind, in der durch Codierung aus den diskreten Signalen bestimmte Operationsabschnitte bezeichnende Positionscodes gebildet werden und diese nacheinander speicherbar sind, daß bei Auftreten eines Kanalfehlers der zuletzt in der Positionsanzeigeschaltung gespeicherte Positionscode festgehalten wird, bis eine nicht unterbrechbare Operation abgeschlossen ist und zur Einleitung der zugeordneten Wieder— " holungsoperation in die vorgesehenen Speicherplätze der zentralen Recheneinheit übertragen wird.
Diese Schaltungsanordnung zur Fehlerkorrektur in Kanälen hat jedoch den Nachteil, daß auch hier die zentrale Recheneinheit selbst beim Auftreten eines Kanalfehlers, eines Eingabe-Ausgabe-Steuereinheitenfehlers oder eines Eingabe-Ausgabe-Fehlers blockiert wird und Fehlerkorrekturprogramme durchführen muß.
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Schaltungsanordnung zur Kanalfehlerkorrektur zu schaffen, die es ermöglicht, daß beim Auftreten eines Kanalfehlers der Kanal selbst die entsprechenden Operationen wiederholen kann, ohne daß die zentrale Recheneinheit zum Zwecke der Fehlerkorrektur ihre ablaufenden Operationen unterbrechen muß.
po 9-70-029 209329/0930
Die erfindungsgemäße Lösung der Aufgabe besteht darin, daß jeder im Datenverarbeitungssystem vorhandene Kanal ein Rückgriff register aufweist, in dem die Lageadresse des letzten Kanalbefehlswortes innerhalb einer Reihe, das einen Befehl enthält, abgespeichert ist, die beim Auftreten einer Fehlerbedingung oder einer anderen Bedingung, die die Wiedergewinnung des ursprünglichen Befehls erfordert, abgerufen wird.
Der Vorteil der vorliegenden Erfindung besteht vor allem darin, daß beim Auftreten eines Signales von einer E/A-Einheit, einer E/A—Steuereinheit oder vom Kanal selbst, der ursprüngliche Befehl durch Abruf der im Rückgriffregister abgespeicherten Adresse im Kanalprogramm wiedergewonnen werden kann, ohne daß die zentrale Recheneinheit in ihrer Arbeit unterbrochen werden muß, um das ursprüngliche Kommando wiederzugewinnen.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben. Es zeigen:
Fig. IA und XB ein Kanalgerät, in welchem die vorliegende Erfindung angewandt ist, und
Fig. 2 in Form eines Blockdiagrammea eine Steuereinheit, die insbesondere zum Betrieb mit dem in den Fig. IA und IB gezeigten Kanal geeignet ist.
PO 9-70-029 209829/0930
Es wird angenommen, daß eine E/A-Operation eingeleitet wird, wenn die zentrale Verarbeitungseinheit (CPU) einen Befehl ausführt, der eine Operationsart, die Kanaladresse, die Eingabe-/Ausgabe-Steuereinheit und die zu wählende Eingabe—/ Ausgabe-Einheit angibt. Der Kanal hat an einer angegebenen Stelle zum Hauptspeicher Zugriff und erhält ein Kanaladresswort (CAW), welches wiederum die Lage des ersten einer Reihe von Kanalkommandowörtern (CCWs) im Hauptspeicher liefert. Jedes CCW enthält ein Operationscodefeld, eine auf eine Lageadresse im Hauptspeicher hinweisende Datenadresse und ein Zahlenfeld, welches die Anzahl von zu übertragenden Dateneinheiten angibt, beginnend an der Lageadresse. Ein Kennzeichenfeld im CCW ist vorgesehen für die Anzeige, ob CCWs verkettet werden müssen oder nicht. Dabei kann eine Kommandoverkettung (CC) und eine Datenverkettung (CD) auftreten. Mit der angegebenen Verkettung wird am Ende der Ausführung eines CCW ein neues CCW automatisch von dem Platz im Hauptspeicher gewählt, der neben dem des vorher ausgeführten CCW liegt. Bei einer Eingabe-/Ausgabe-Operation enthält das erste CCW einer Kette ein Kommando zum Lesen oder Schreiben von Daten auf der Einheit. Dieses Kommando wird an das Steuerwerk übertragen, welches die Einheit steuert, und das Steuerwerk überträgt Daten auf den Kanal. Der Kanal speichert die Daten automatisch im Hauptspeicher an der durch die im CCW gespeicherte Lageadresse angegebenen Adresse im Hauptspeicher. Wenn neue Dateneinheiten vom Steuerwerk empfangen werden, wird die
PO 9-70-029 209829/0930
Lageadresse erhöht, bis der Zahlenteil des CCW auf null reduziert ist. Dadurch wird angezeigt, daß die Gesamtzahl von zu diesem CCW gehörenden Datenadressen erschöpft ist.
Es wird angenommen, daß die Kennzeichenposition des CCW erregt ist, so daß es mit einem nachfolgenden CCW verkettet wird. Wenn die Zahl auf null reduziert ist, holt der Datenkanal das nächstfolgende CCW und setzt die Datenübertragung fort, jetzt wird jedoch durch die Lageadresse des neuen CCW auf die Adressen im Hauptspeicher verwiesen. Die Lageadresse des neuen CCW wird der Reihe nach während der übertragung von Dateneinheiten erhöht, bis die Zahl des neuen CCW auf null reduziert ist. Diese Verkettungsoperation läuft weiter, bis das Ende des CCW-Stromes erreicht ist.
Im Kanal ist ein Einheitensteuerwort vorgesehen, das einen Hinweis enthält, durch welchen der Datenkanal die Hauptspeicheradresse bestimmt, von der jedes folgende CCW zu erhalten ist. Dieser Hinweis wird nach jeder Operation fortgeschrieben, und daher kann bei Auftreten eines Fehlers in einem CCW in der Kette nicht zu dem CCW am Anfang der Kette zurückgegriffen werden, weil die Adressinformation nicht mehr existiert.
Nach der vorliegenden Erfindung wird die Adresse des zuletzt ausgeführten Kommandos in einem Kommandoadresse-Rückgriffregister 203 gespeichert, welches in Fig. IA vorgesehen ist.
po 9-70-029 209829/0930
Wenn jetzt am Steuerwerk eine Fehlerbedingung erscheint, wiederholt der Kanal den CCW-Strom mit Hilfe der im Kommandoadressen—Rückgriffregister gespeicherten Adresse bis zum Abruf des CCWs, welches das Kommando am Anfang des CCW-STromes enthielt.
Das Steuerwerk gibt ein Wiederhälungs—Zustandssignal an den Datenkanal über ein Status- oder Zustandsbyte, welches vom Steuerwerk während einer ersten Wahlfolge über die E/A-) Anschlußeinheit 170, 176 in Fig. IB auf den Kanal übertragen wird.
Ein typisches Steuerwerk für die Verwendung der vorliegenden Erfindung ist in Fig. 2 gezeigt. Dieses Steuerwerk arbeitet mit der oben beschriebenen Eingabe-/Ausgabe—Anschlußeinheit.
In der in Fig. 2 gezeigten Steuereinheit werden vom Kanal über die E/A-Anschlußeinheit 170 empfangene Kommandos de- ^ codiert und entsprechend den Forderungen der jeweils gesteuerten E/A-Einheit ausgeführt. Wenn von dem Steuerwerk oder der -einheit eine die Wiederholung eines bestimmten Kommandos fordernde Bedingung angetroffen wird, werden durch diese Wiederholungsbedingung Bits im Zustandsbyte im Steuerwerk gesetzt. Bei der nächsten ersten Wahlfolge über die E/A-Anschlußeinheit wird diese Zustandsinformation auf den Kanal übertragen, und der Kanal stellt fest, daß das Steuerwerk die Wiederholung des vorhergehenden Kommandos wünscht.
po 9-70-029 209 8 29/0930
Der Kanal leitet dann die im Kommandoadressen-Rückgriffregister 203 (Fig. IA) gespeicherte Adresse auf das Kommandoadressregister 202 und ruft mit dieser Adresse ein CCW ab. Dieses CCW entspricht dem CCW, welches das gerade ausgeführte Kommando enthielt. Der Kanal kann dann im Kanalprogramm zurückgreifen und die ganze Folge von CCWs noch einmal ausführen .
Selektorkanal
Für die vorliegende Beschreibung wird eine Operation definiert als die Folge von Schritten, beginnend mit der Annahme eines Start-E/A-Befehls oder eines ähnlichen Befehls durch den Kanal bis zur nachfolgenden E/A-Unterbrechung, die die Beendigung dieser Operation anzeigt. Wenn ein Kanalprogramm verschiedene, in einer Kette verbundene KoMmandos umfaßt, wird die ganze Folge von Kommandos als eine Operation definiert.
Der im Beispiel verwendete Kanal ist ein Selektorkanal und kann zu einem gegebenen Zeitpunkt nur eine Operation ablaufen lassen und bleibt daher für die ganze Operation mit einer Einheit verbunden. Die vorliegende Erfindung kann auch bei anderen Kanalarten, wie z.B. Byte-Multiplex- oder Block-Multiplex-Kanälen, verwendet werden, wie später beschrieben wird.
po 9-70-029 209 8 29/0930
In Fig. IA sind Leiteinrichtungen vorgesehen, um das Kommandoadressen Rückgriffregister 203 mit dem Kommandoadressregister 202 zu verbinden. Außerdem sind Leiteinrichtungen am Ausgang des Kommandoadressregisters 202 so vorgesehen, daß der Inhalt dieses Registers in das Kommandoadressen-Rückgriffregister 203 geleitet werden kann. Das Datenadressregister 200, das Kommandoregister 202, das Kennzeichenregister 204, das Zahlenregister 206, das Speicherschutzregister 208, das Einheitenadressregister 210 und ψ das Operationsregister 212 sind über Datenwege mit dem Speicher verbunden. Der Kanal der Fig. IA und IB ist außerdem an die E/A-Ausgangsanschlußeinheit 170 und an die E/A-Eingangsanschlußeinheit 176 angeschlossen. Die in Fig. 2 gezeigte Steuerschaltung ist über die E/A-Anschlußeinheit mit dem Kanal verbunden.
Eine durch einen Start-E/A-Befehl eingeleitete E/A-Operation veranlaßt den Kanal, das Kommandoadresswort (CAW) abzurufen, k dessen Adressteil im Kommandoadressregister 202 gespeichert ist. Der Kanal wird durch ein Signal von der CPU veranlaßt, den Inhalt des Kommandoadressregisters 202 auf die Speicheradressleitung 151 zu leiten. Der Kanal holt das erste CCW, und das Kommandoadressregister wird um 1 erhöht, um die Adresse des nächsten CCW liefern zu können.
Jedes abgerufene CCW enthält ein Operationscodefeld, eine auf die Lage im Hauptspeicher hinweisende Datenadresse und
PO 9-70-029 209823/0830
-ii-
ein Zahlenfeld, vrelch.es die Anzahl von Dateneinheiten angü> t, die, beginnend an der Lageadresse, zu übertragen sind. Der Operationscode wird im Register 212 gespeichert, die Datenadresse im Register 200 und die Zahl im Register 206. Ein Kennzeichenfeld im CCW.ist für die Anzeige vorgesehen, ob eine Verkettung von CCWs erforderlich ist oder nicht. Das Kennzeichenfeld ist im Kennzeichenregister 204 gespeichert. Bei der Verkettung können zwei Arten auftreten, nämlich, die Kommandoverkettung und die Datenverkettung, die durch, das Kommandoverkettungsbit (.CC-Bit) bzw. das Daten— verkettungsbit (CD—Bit) bezeichnet sind. Wenn am Ende der Ausführung eines CCW eine Verkettung angegeben ist, wird ein neues CCW automatisch, aus der Stelle im Hauptspeicher gewählt, die neben der Stelle des vorher ausgeführten CCW liegt. Die Adresse für dieses nächste CCW erhält man durch Erhöhung des Inhalts des Kommandoadressregisters 202. Wenn das CC-Bit gesetzt ist, heißt das, daß das nächste CCW ein Kommando enthält. Wenn das CD—Bit gesetzt ist, heißt das, daß das nächste CCW kein Kommando enthält und nur zur Steuerung der Datenübertragung benutzt wird. Wenn das CD-Kennzeichen gesetzt ist, leitet die Schaltung den Inhalt des Koinmandoadressregisters 202 in das Rückgriff register 203. Wenn das CD-Bit aus ist, erfolgt in dieser Operation, wenn überhaupt, eine Kommandoverkettung, und daher wird der Inhalt des Koinmandoadressregisters nicht in das Rückgriff register übertragen. Somit enthält das Rückgriffregister das letzte ausgeführte Kommando in einer Folge von CCWs.
po 9-70-029 209829/0930
Wenn z.B. angenommen wird, daß das erste CCW einer CCW-Kette ein Kommando zum Datenlesen enthält, dann wird dieses Kommando im Operationsteil des CCW und im Register 212 der Fig. IA gespeichert. .Nachfolgende CCWs enthalten in diesem Teil des CCW kein Kommando, jedoch die notwendige Information zur Steuerung der Leseoperation zwecks Datenübertragung in die Speicherstellen.
Das Kommando wird an das Steuerwerk der Fig. 2 über die E/A-Anschlußeinheit 170 übertragen. Die Reihenfolge für diese Anschlußeinheit wird durch die Wahlschaltung und Folgesteuerung 405 gesteuert. Diese veranlaßt das Laden des Kommandos über das UND-Glied 409 und den Kommandodecodierer in das Register 400. Die Kommandos werden decodiert und an die Kommando-Ausführungssteuerung 402 übertragen, welche die E/A-Einheit 404 steuert. Das Kommando wird ausgeführt und Daten über die E/A-Anschlußeinheit übertragen. Wenn der Zahlenteil des CCW auf null reduziert ist, werden n^eue CCWs abgerufen. Wenn im Steuerwerk ein Fehler auftritt oder eine fehlerfreie Bedingung, die die Wiederholung des ausgeführten Kommandos fordern, hebt die Kommando-Ausführungssteuerung den Signalpegel auf der Wiederholungsleitung 406 an. Dadurch wird das UND-Glied 410 erregt. Wenn die Einheit nicht zur unmittelbaren Wiederholung des Kommandos bereit ist, hebt die Steuerung 402 das Signal auf der Leitung 408 an, wodurch über das ODER-Glied 412 das UND-Glied 414 erregt wird. Dadurch wird das ODER-Glied 416 erregt und der
PO 9-70-029 20982 9/0930
Wiederliolungszustand (Einheitenprüfung und Zustandsveränderung) zusammen mit dem Kanalende im Zustandsregister 418 gespeichert. Bei der nächsten Wahl der E/A-Anschlußeinheit erregt die Wahlschaltung 405 den Torzustand zur Sammelleitung in der Leitung 420, die den Inhalt des Zustandsregisters auf die Sammelleitung führt über das UND-Glied 422 und das ODER-Glied 424.
Wenn die die Wiederholung anzeigende Zustandsinformation vom Kanal empfangen wird, veranlaßt der Kanal die Steuerungen zum Einschalten der Kommandoverkettungsverriegelungs-Schaltungen und leitet den Inhalt des Kommandoadressen-Rückgriffregisters auf das Kommandoadressregister 202 der Fig. IA. Durch das Einschalten der Kommandoverriegelung wird die Verkettungsoperation erzwungen, die nicht näher beschrieben ist. Die Verkettung der Kommandoadressen beginnt mit dem Setzen der Kommandoverriegelung im CC-Kennzeichen im CCW. Für die Wiederholungsoperation wird die Kommandoverkettungs-Verriegelung jedoch gesetzt, wenn die Wiederholungszustandsbits, und nicht das CC-Kennzeichen durch den Kanal interpretiert werden. Der Kanal hat in der Kette von Operationen zurückgegriffen und beginnt mit dem letzten CCW, welches das Kommando und ein gesetztes Verkettungsbit (CC-Bit) enthält.
Block-Multiplexkanal
Bei der Arbeit mit Kommandoverkettung brauchen bestimmte
PO 9-70-029 209829/0930
Steuereinheiten nach Empfang eines Kommandos eine relativ lange Zeit, bevor sie das nächste Kommando der Kette empfangen können.
Um den Kanal unter solchen Umständen besser nutzen zu können, wurde in neue Datenkanäle eine Modifikation eingeführt, die dem Kanal gestattet, die Einheit während dieser langen Zeiträume freizugeben, die Adresse des nächsten auszuführenden Kommandos jedoch festzuhalten. Wenn die jeweilige Einheit zur Fortsetzung bereit ist, wird sie wieder an den Kanal angeschlossen, und der Kanal ruft mit Hilfe der geretteten Kommandoadresse das nächste Kommando in der Reihe ab und setzt die Operation fort. Während des Zeitraumes, in dem die Einheit abgetrennt ist, kann der Kanal für andere Operationen benutzt werden. Dieser Kanal kann verschiedene Operationen gleichzeitig ablaufen lassen und wird daher Block-Multiplexkanal genannt.
Normalerweise läuft ein Block-Multiplexkanal so, daß nach Ausführung eines Kommandos die Einheit Bits für Kanalende
und Einheitenende in den Zustandsbits während einer Beendigungsfolge über die E/A-Anschlußeinheit an den Kanal überträgt, wenn sie direkt das nächste Kommando ausführen kann. Wenn vor Ausführung des zweiten Kommandos eine lange Verzögerungszeit vorweggenommen vird, sendet die Einheit nur das Zustandsbit für Kanalende, wodurch der Kanal von der Einheit getrennt werden kann. Zu einem späteren Zeit-
PO 9-70-029 209829/0930
punkt wird die Einheit aufgrund einer Aufruffolge durch den Kanal wieder angeschlossen und gibt Bits für Einheitenende und setzt dann die Operation am Unterbrechungspunkt fort.
Mit Hilfe der vorliegenden Erfindung können bei einem solchen Block-Multiplexkanal der Kanal und die Steuereinheit gemeinsam ein Kommando am Anfang eines CCW-Stromes erneut ausführen. Während der Ausführung eines Kommandos behält der Kanal die Adresse des Kommandos sowie die Adresse des nächsten Kommandos. Bei Beendigung eines Kommandos kann die Steuereinheit dem Kanal daher über ein Signal mitteilen, ob eine Fortsetzung mit dem nächsten Kommando oder ein Rückgriff und eine erneute Ausführung des laufenden Kommandos gewünscht werden.
Tritt bei der Ausführung eines Kommandos ein Fehler auf, dann kann die Steuereinheit durch Signalisierung des Wiederholungszustandes den Kanal dazu veranlassen, das Kommando noch einmal abzurufen und daher noch einmal auszuführen. Dadurch können Kanal und Steuereinheit gemeinsam eine Fehlerbedingung korrigieren, ohne eine E/A-Unterbrechung in der Verarbeitungseinheit hervorzurufen.
Bei fehlerfreien Bedingungen ist die Wiederholungsmöglichkeit auch nützlich für eine Abtrennung bei dem oben beschriebenen Block-Multiplexkanal. Der Block-Multiplexkanal kann ein Kommando an die Steuereinheit senden und durch die Art
po 9-7O-O29 20982 97 0930
-1 fides: Kommandos und den Zustand der Steuereinheit bestimmt letztere, daß ein langer Zeitraum vergeht, bevor sie das Kommando ausführen kann. In dieser Situation sendet die Steuereinheit ein Signal für den Wiederholungszustand zurück, in welchem ein Bit für Kanalende gesetzt ist, jedoch kein Bit für Einheitenende. Der Kanal gestattet dann der Steuereinheit die Abtrennung und geht zu anderen Operationen über. Wenn die Einheit wieder zur Ausführung des Kommandos bereit ist, wird sie wieder an den Kanal angeschlossen und gibt in den Zustandsbits das Bit "Einheitenende" ab, wodurch der Kanal zur erneuten Ausführung des Originalkommandos veranlaßt wird, dessen Adresse er im Einheitensteuerwort gespeichert hatte.
Kommandowiederholung in fehlerfreien Situationen
Die Kommandowiederholung kann in einigen Steuereinheiten für Zwecke benutzt werden, die mit Fehlern nichts zu tun haben. Dadurch wird die Leistung der Steuereinheit und der E/A-Einheit erhöht und ebenso die Leistung von Kanälen, die die Abtrennung der E/A—Einheit vom Kanal gestatten und dadurch dessen Quellen wirksamer nutzen lassen.
Es wird weiter berücksichtigt, daß einige Steuereinheiten ein neues Kommando mit sich bringen können, welches die Wiedergewinnungseinheiten in der Steuereinheit steuert. Somit müssen bestimmte Kommandos, Kommandoketten oder
PO 9-70-029 209829/0930
Kommandofolgen wahlweise mittels dieses neuen Kommandos wiederholbar sein. Solche Kommandos sind jedoch kein Erfordernis der Kommandowiederholungseinrichtung und einheitenabhängig, wenn sie vorgesehen sind.
Manche Bandeinheiten sind auf ein breites Band ausgelegt, auf welchem Daten in einer ersten Richtung in einem· Teil des Bandes vom Anfang bis zum Ende geschrieben werden und dann in der Gegenrichtung weitergeschrieben werden, nachdem der Kopf auf die nächsthöhere Spur seitlich auf dem Band neu eingestellt wurde. Bei Ausführung eines Lese- oder Schreibkommandos auf einer derartigen Bandeinheit kann mit Vorteil der Kommando-Wiederholungsmechanismus benutzt werden.
PO 9-70-029 209829/0930

Claims (5)

  1. P atentansprüche
    1/ Schaltungsanordnung zur Fehlerkorrektur bei einem in einem Kanal zu einer zentralen Recheneinheit auftretenden Kanalfehler, wobei zur Erlangung einer Information für die während der Ausführung eines Kanalbefehls zum Zeitpunkt des Auftretens eines Kanalfehlers durchlaufene Position der Eingabe-Ausgabe-Einheit verschiedenen Positionen im Kanalbefehlsablauf diskrete Signale zugeordnet werden, so daß mit dieser Information eine möglicherweise erforderliche Rücksetzung der Eingabe-Ausgabe-Einheit und eine geeignete Wiederholungsoperation für den betreffenden Kanalbefehl einleitbar ist, dadurch gekennzeichnet, daß jeder im Datenverarbeitungssystem vorhandene Kanal ein Rückgriffregister (203) aufweist, in dem die Lageadresse des letzten Kanalbefehlswortes CCCW) innerhalb einer Reihe, das einen Befehl enthält, abgespeichert ist, die beim Auftreten einer Fehlerbedingung oder einer anderen Bedingung, die die.Wieder gewinnung des ursprünglichen Befehls erfordert, abgerufen wird.
  2. 2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß beim Auftreten eines Fehlers ein Wiederholungs-Zustandssignal an den Kanal über ein Statusbyte abgegeben wird, welches über eine Eingabe-Ausgabe-Anschlußeinheit (170, 176) auf den Kanal
    PO 9-70-029 209829/0930
    übertragen und decodiert wird, wonach die im Rückgriffregister (203) abgespeicherte Adresse in das Kommandoadressregister (202) übertragen wird, wodurch das Kanalbefehlswort gelesen wird, das den gerade ausgeführten Befehl enthielt.
  3. 3. Schaltungsanordnung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß allen Unterdatenkanälen mit einem gemeinsamen Hauptdatenkanal ein gemeinsames Rückgriffregister zugeordnet ist.
  4. 4. Schaltungsanordnung nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß im Kennzeichenfeld des Kanalbefehlswortes (CCW) ein Feld vorhanden ist, das die Aneinanderkettung von mehreren Kanalbefehls— Wörtern anzeigt.
  5. 5. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß in Abhängigkeit vom Inhalt des Verkettungskennzeichenfeldes (CC-Bit) bzw. eines vorhandenen Datenverkettungsbits (CD-Bit) die Adresse des nächstfolgenden Kanalbefehlswortes (CCW) vom Befehls- bzw. Kommandoadressregister (202) in das Rückgriffregister (203) übertragen wird.
    po 9-70-029 209829/0930
    Leerseite
DE19712163162 1970-12-23 1971-12-20 Schaltungsanordnung zur Kanalfehlerkorrektur Pending DE2163162A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10107970A 1970-12-23 1970-12-23

Publications (1)

Publication Number Publication Date
DE2163162A1 true DE2163162A1 (de) 1972-07-13

Family

ID=22282959

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19712163162 Pending DE2163162A1 (de) 1970-12-23 1971-12-20 Schaltungsanordnung zur Kanalfehlerkorrektur

Country Status (6)

Country Link
US (1) US3688274A (de)
JP (2) JPS5118298B1 (de)
CA (1) CA951435A (de)
DE (1) DE2163162A1 (de)
FR (1) FR2119340A5 (de)
GB (1) GB1310869A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0163096B1 (de) * 1984-04-26 1988-11-17 BBC Brown Boveri AG Einrichtung zur Rettung eines Rechnerzustandes

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1393898A (en) * 1971-08-17 1975-05-14 Systemware Ltd Electronic data processing apparatus
US3748650A (en) * 1972-08-21 1973-07-24 Ibm Input/output hardware trace monitor
JPS5317259B2 (de) * 1972-10-23 1978-06-07
US3913074A (en) * 1973-12-18 1975-10-14 Honeywell Inf Systems Search processing apparatus
GB1509193A (en) * 1974-04-17 1978-05-04 Nat Res Dev Computer systems
JPS5528091B2 (de) * 1974-12-03 1980-07-25
US3984814A (en) * 1974-12-24 1976-10-05 Honeywell Information Systems, Inc. Retry method and apparatus for use in a magnetic recording and reproducing system
US4040037A (en) * 1976-06-01 1977-08-02 International Business Machines Corporation Buffer chaining
US4096578A (en) * 1976-12-20 1978-06-20 International Business Machines Corporation Data system with microprocessor featuring multiplexed data transfer and repeat cycle driving arrangement
US4130240A (en) * 1977-08-31 1978-12-19 International Business Machines Corporation Dynamic error location
US4224667A (en) * 1978-10-23 1980-09-23 International Business Machines Corporation Command queuing for I/O adapters
US4381540A (en) * 1978-10-23 1983-04-26 International Business Machines Corporation Asynchronous channel error mechanism
AU5497280A (en) * 1979-01-31 1980-08-07 Honeywell Information Systems Incorp. Synchronous bus wait/retry cycle apparatus
US4295208A (en) * 1979-11-14 1981-10-13 Gte Laboratories Incorporated Signalling system including apparatus for generating and testing data and command words within first and second message intervals
NL8003567A (nl) * 1980-06-20 1982-01-18 Philips Nv Dienstverlenende inrichting met een digitale program- meerinrichting welke is beveiligd tegen storingen door een willekeurig aanschakelen van het apparaat.
US4471457A (en) * 1980-08-21 1984-09-11 International Business Machines Corporation Supervisory control of peripheral subsystems
US4435762A (en) 1981-03-06 1984-03-06 International Business Machines Corporation Buffered peripheral subsystems
EP0077153B1 (de) * 1981-10-01 1987-03-04 Stratus Computer, Inc. Digitale Datenverarbeitungsanlage mit Zuverlässigkeits-Bus-Protokoll
US4866604A (en) * 1981-10-01 1989-09-12 Stratus Computer, Inc. Digital data processing apparatus with pipelined memory cycles
US4939643A (en) * 1981-10-01 1990-07-03 Stratus Computer, Inc. Fault tolerant digital data processor with improved bus protocol
JPS59133054U (ja) * 1983-02-25 1984-09-06 九州積水工業株式会社 海苔網干出枠
JPS6085149U (ja) * 1983-11-17 1985-06-12 九州積水工業株式会社 海苔網干出枠
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 株式会社日立製作所 エラー回復方法
US4930065A (en) * 1987-08-20 1990-05-29 David Computer Corporation Automatic data channels for a computer system
US5347637A (en) * 1989-08-08 1994-09-13 Cray Research, Inc. Modular input/output system for supercomputers
DE69028462T2 (de) * 1989-08-11 1997-03-27 Ibm Vorrichtung zur Verbindung von einer Steuereinheit mit parallelem Bus mit einem Kanal mit serieller Verbindung
US5428802A (en) * 1990-05-16 1995-06-27 International Business Machines Corporation Method and apparatus for executing critical disk access commands
US5392425A (en) * 1991-08-30 1995-02-21 International Business Machines Corporation Channel-initiated retry and unit check for peripheral devices
US5423026A (en) * 1991-09-05 1995-06-06 International Business Machines Corporation Method and apparatus for performing control unit level recovery operations
US5526484A (en) * 1992-12-10 1996-06-11 International Business Machines Corporation Method and system for pipelining the processing of channel command words
US5475542A (en) * 1993-06-14 1995-12-12 International Business Machines Corporation Method and apparatus for improving inter-block gap length tolerance and locate accuracy for write appends
US5931954A (en) * 1996-01-31 1999-08-03 Kabushiki Kaisha Toshiba I/O control apparatus having check recovery function
TW355762B (en) * 1996-12-26 1999-04-11 Toshiba Co Ltd Checkpoint rollback I/O control device and I/O control method
US6128677A (en) * 1997-10-15 2000-10-03 Intel Corporation System and method for improved transfer of data between multiple processors and I/O bridges
US6269360B1 (en) 1998-04-24 2001-07-31 International Business Machines Corporation Optimization of ordered stores on a pipelined bus via self-initiated retry
US6336194B1 (en) * 1998-10-29 2002-01-01 International Business Machines Corporation Program products for repositioning an input/output device without knowledge of current positioning of the device
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
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
US7720468B1 (en) * 1999-06-23 2010-05-18 Clearwire Legacy Llc Polling methods for use in a wireless communication system
US6820213B1 (en) 2000-04-13 2004-11-16 Stratus Technologies Bermuda, Ltd. Fault-tolerant computer system with voter delay buffer
US6687851B1 (en) 2000-04-13 2004-02-03 Stratus Technologies Bermuda Ltd. Method and system for upgrading fault-tolerant systems
US6687853B1 (en) * 2000-05-31 2004-02-03 International Business Machines Corporation Checkpointing for recovery of channels in a data processing system
US7065672B2 (en) 2001-03-28 2006-06-20 Stratus Technologies Bermuda Ltd. Apparatus and methods for fault-tolerant computing using a switching fabric
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US6928583B2 (en) * 2001-04-11 2005-08-09 Stratus Technologies Bermuda Ltd. Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3411143A (en) * 1966-01-13 1968-11-12 Ibm Instruction address control by peripheral devices
US3432813A (en) * 1966-04-19 1969-03-11 Ibm Apparatus for control of a plurality of peripheral devices
US3564502A (en) * 1968-01-15 1971-02-16 Ibm Channel position signaling method and means
US3564506A (en) * 1968-01-17 1971-02-16 Ibm Instruction retry byte counter

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0163096B1 (de) * 1984-04-26 1988-11-17 BBC Brown Boveri AG Einrichtung zur Rettung eines Rechnerzustandes

Also Published As

Publication number Publication date
FR2119340A5 (de) 1972-08-04
JPS5118298B1 (de) 1976-06-09
JPS52129248A (en) 1977-10-29
GB1310869A (en) 1973-03-21
CA951435A (en) 1974-07-16
US3688274A (en) 1972-08-29

Similar Documents

Publication Publication Date Title
DE2163162A1 (de) Schaltungsanordnung zur Kanalfehlerkorrektur
DE2953432C1 (de) Vorrichtung zum Testen eines Mikroprogramms
DE2614000C2 (de) Diagnoseeinrichtung zur Prüfung von Funktionseinheiten
DE2132565C3 (de) Umsetzer
DE2122338A1 (de) Schaltungsanordnung zur Steuerung des Datenflusses in Datenverarbeitungsanlagen
DE1524239B2 (de) Schaltungsanordnung zur aufrechterhaltung eines fehler freien betriebes bei einer rechenanlage mit mindestens zwei parallel arbeitenden rechengeraeten
DE1901036A1 (de) Anordnung fuer die wiederholte Ausfuehrung fehlerhaft ausgefuehrter Funktionen
DE1815666B2 (de) m, 19.12.68 OT 07.08.69 fr 15.01.68 V.St.v.Amerika 697797 Schaltungsanordnung zur Kanalfehlerkorrektur
DE2430464A1 (de) Einrichtung zur fehlergesicherten datenuebertragung
EP0057756A2 (de) Anordnung zum Datenaustausch in parallel arbeitenden Multi-Mikrorechnersystemen
DE2842548A1 (de) Programmierbare speicherschutzlogik fuer mikroprozessorsysteme
DE2036729A1 (de) Digital Datenverarbeiter
DE1499206C3 (de) Rechenanlage
EP0282877B1 (de) Verfahren und Einrichtung zur Steuerung der Fehlerkorrektur innerhalb einer Datenübertragungssteuerung bei von bewegten peripheren Speichern, insbesondere Plattenspeichern, eines Datenverarbeitungssystems gelesenen Daten
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2350229A1 (de) Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen
DE1293188B (de) Schaltungsanordnung zur UEbertragung von Pruefinformationen mit vorbestimmter Paritaet in Datenverarbeitungsanlagen
DE69534316T2 (de) Telekommunikationsanlage mit einem prozessorsystem und ein prozessorsystem
EP0655688A2 (de) Programmspeichererweiterung für einen Mikroprozessor
DE1966991C3 (de) Ausfallgesicherte Datenverarbeitungsanlage
DE2842603A1 (de) Schnittstelle zwischen einem wartungsprozessor und einer mehrzahl einzeln zu pruefender funktionseinheiten eines datenverarbeitenden systems
DE2314733A1 (de) Verfahren und schaltungsanordnung zur warteschlangenbildung
DE2240432C3 (de) Verfahren und Einrichtung zum Festlegen von Fixpunkten und zur Operationswiederholung ab dem letzten Fixpunkt in Datenverarbeitungsanlagen mit überlappter Arbeitsweise
DE2906221C3 (de) Verfahren zur Umschaltung der zentralen Steuereinrichtung in Fernmelde-, insbesondere Fernsprechvermittlungsanlagen
DE3211256C2 (de) Schaltungsanordnung zur im Fehlerfall vorgesehenen Wiederholung von Maschinenbefehlen in einer Datenverarbeitungsanlage

Legal Events

Date Code Title Description
OD Request for examination
OHW Rejection