DE2163162A1 - Schaltungsanordnung zur Kanalfehlerkorrektur - Google Patents
Schaltungsanordnung zur KanalfehlerkorrekturInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/122—Program 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program 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/126—Program 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
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
.
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.
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.
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)
- P atentansprüche1/ 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. 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 KanalPO 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. 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. 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. 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/0930Leerseite
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)
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)
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 |
US4926315A (en) * | 1981-10-01 | 1990-05-15 | Stratus Computer, Inc. | Digital data processor with fault tolerant peripheral bus communications |
ATE25779T1 (de) * | 1981-10-01 | 1987-03-15 | Stratus Computer Inc | Digitale datenverarbeitungsanlage mit zuverlaessigkeits-bus-protokoll. |
US4866604A (en) * | 1981-10-01 | 1989-09-12 | Stratus Computer, Inc. | Digital data processing apparatus with pipelined memory cycles |
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 |
EP0412268B1 (de) * | 1989-08-11 | 1996-09-11 | International Business Machines Corporation | 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 |
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 |
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 |
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)
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 |
-
1970
- 1970-12-23 US US101079A patent/US3688274A/en not_active Expired - Lifetime
-
1971
- 1971-09-22 GB GB4410371A patent/GB1310869A/en not_active Expired
- 1971-11-16 FR FR7141956A patent/FR2119340A5/fr not_active Expired
- 1971-12-13 JP JP46100303A patent/JPS5118298B1/ja active Pending
- 1971-12-14 CA CA130,047,A patent/CA951435A/en not_active Expired
- 1971-12-20 DE DE19712163162 patent/DE2163162A1/de active Pending
-
1977
- 1977-05-13 JP JP5451477A patent/JPS52129248A/ja active Pending
Cited By (1)
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 |
US3688274A (en) | 1972-08-29 |
CA951435A (en) | 1974-07-16 |
JPS52129248A (en) | 1977-10-29 |
GB1310869A (en) | 1973-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2163162A1 (de) | Schaltungsanordnung zur Kanalfehlerkorrektur | |
DE2953432C1 (de) | Vorrichtung zum Testen eines Mikroprogramms | |
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 | |
DE2132565A1 (de) | Umsetzer | |
DE2614000A1 (de) | Einrichtung zur diagnose von funktionseinheiten | |
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 | |
DE2657897A1 (de) | Externes geraet, das die ureingabe fest gespeichert enthaelt, fuer elektronische datenverarbeitungsanlagen mit einem zentralen speicher | |
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 | |
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 |