DE2320698C2 - Anordnung zur Fehlerüberwachung in einer Mehrfach-Datenverarbeitungsanlage - Google Patents
Anordnung zur Fehlerüberwachung in einer Mehrfach-DatenverarbeitungsanlageInfo
- Publication number
- DE2320698C2 DE2320698C2 DE2320698A DE2320698A DE2320698C2 DE 2320698 C2 DE2320698 C2 DE 2320698C2 DE 2320698 A DE2320698 A DE 2320698A DE 2320698 A DE2320698 A DE 2320698A DE 2320698 C2 DE2320698 C2 DE 2320698C2
- Authority
- DE
- Germany
- Prior art keywords
- processing device
- processor
- data
- fault
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
- G06F11/2242—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors in multi-processor systems, e.g. one processor becoming the test master
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
- G06F11/2736—Tester hardware, i.e. output processing circuits using a dedicated service processor for test
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54541—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
- H04Q3/5455—Multi-processor, parallelism, distributed systems
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Exchange Systems With Centralized Control (AREA)
- Debugging And Monitoring (AREA)
- Hardware Redundancy (AREA)
Description
Die Erfindung bezieht sich auf eine Anordnung gemäß dem Oberbegriff des Patentanspruchs 1.
In bestimmten Anwendungsfällen von Datenverarbeitungsunlagen,
wie bei der Kontrolle oder Steuerung einer F-'ernsprechvermittlungscinrichtung, ist die Sicherheit
(im Sinne der Anlagen-Zuverlässigkeit) von äußerster Wichtigkeit. Mehrfach-Datcnverarbcitungsnnlagcn
sind in solchen Anwendungsfällcn vorteilhaft, da die Anordnung so getroffen werden kann, daß ein Ausfall eines
Verarbeitungsgerätes nicht zu einem vollständigen Zusammenbruch der Anlage führt, sondern lediglich die
Gcsamlkapa/ität für die Verarbeitung von Daten reduziert.
Es ist jedoch zweifellos wünschenswert, ein fehlerhaftes Verarbeitungsgerät so schnell wie möglich zu er-
kennen und der» Fehler mil der kleinstmöglichen Verzögerung
zu diagnostizieren und richtigzustellen.
In der älteren DE-PS 21 04 298 ist eine Datenverarbeitungsanlage
beschrieben, die einige Überwachungsniöglichkeiien gemäß dem Oberbegriff des Patentanspruchs
1 vorsiehit.
Der Erfindung liegt die Aufgabe zugrunde, eine Anordnung zur Fehlerüberwachung einer Mehrfach-Datenverarbeitungsdnlage
zu schaffen, die mit zusätzlichen neuen Mitteln eine wirksame Fehlerüberwachung mit optimaler Ausnutzung der Anlagenkapazilät erreicht.
Diese Aufgabe wird erfindungsgemäß durch die Kennzeichnungsmcrkmale des Patentanspruchs 1 gelöst.
Zweckmäßige Weiterbildungen der Erfindung sind den Unteransprüchen zu entnehmen.
Durch die erfindungsgemäße Anordnung wird ein fehlerhaftes Verarbeitungsgcräl sehr schnell erkannt,
und der Fehler wird ohne wesentliche Verzögerung diagnostiziert und korrigiert. Dies ist ein besonderer Vorteil
gegenüber der Anordnung nach der älteren DE-PS 21 04 298, bei der die ausgewählten Daten nicht an das
andere Verarbeitungsgerät rückübertragen werden.
Eine Mehrfach-Daicnverarbeitungsanlagc gemäß der
Erfindung wird nunmehr anhand der sie beispielsweise wiedergebenden Zeichnungen beschrieben. Dabei zeigt
F i g. 1 ein schematisches Blockschaltbild der Anlage,
Fig.2 ein schematisches Blockschaltbild eines Fehlcrkanals
der Anlage, die
Fig.3, 4 und 5 Schaltungsanordnungen von Teilen
des Fehlerkanals im größeren Detail und die
F i g. 6 bis 10 Flußdiagramme, welche den Betrieb der
Datenverarbeitungsanlage veranschaulichen.
Hardware — Allgemeine Beschreibung
Wie aus F i g. 1 hervorgeht, enthält die Anlage eine
Vielzahl (in diesem Falle drei) von unabhängigen Daien-Verarbcitungsgcrätcn
10, die jeweils als Verarbeitungsgerälc 0, 1 und 2 bezeichnet werden. (Andere Anlagen
können mehr als drei oder nur zwei Verarbeitungsgcrä-Ic
aufweisen.) Jedes Verarbeitungsgerät 10 hat Zugang zu einer Anzahl von Kernspeichern 11 über jeweilige
Datcn-Hauptwege 13, wobei jeder der Speicher 11 allen
Verarbcilun^sgeräten gemeinsam zugehört. Die Konstruktion
der Verarbcitungsgeräte 10 und der Speicher i i wird nicht im einzelnen beschrieben, da diese Einrichtungen
allgemein bekannt sind und eine geeignete Einrichlung im Handel frei crSälilich ist.
|edes Vcrarbcitungsgeräl 10 weist einen entsprechenden
Eingangs/Ausgangs-Daien-I lauptweg 14 auf,
der mit seinem Daten-EinyangsMusgangs-Anschiiiß
(Interface) verbunden ist. Diese Hauptwege gewähren Zug;:ng zu einer Anzahl von Ilingangs/Ausgangs-Kanälen
15, von denen jeder eine Anzahl von Untcrkanälcn 16 aufweist, die mit entsprechenden peripheren Schaltungen
17 der Anlage verbunden sind. Die peripheren Schaltungen können beispielsweise Trommelspeicher
12, Fcrnspreeh-Vcrmittlungssehallungen 18, VcrbinduDgsleiliingKkrcisc
19, Seniler und F.mpfängur 20 sowie Mcnsch/Maschinc-Kopplungen 21, wie beispielsweise
Fernschreiber, aufweisen, leder Dnlcrkanal 16 ist polenticll
für jedes der Veriirbeilungsgeräie zugänglich.
F.inigen der peripheren Schaltungen können ganze Kanüle 15 zugeordnet sein. In einigen speziellen Fällen
kann der Zugang zu ein;·: peripheren Schaltung über
eine Auswahl von zwei Kanälen erfolgen, so daß ein Ausfall des einen Kanals den Zugang zu dieser Schallung
nicht verhindert.
leder der Eingangs/Ausgangs-Datenhaaptwege 14 weist jeweils drei Gruppen von achtzehn Drähten auf,
was eine Gesamtzahl von vierundfünfzig Drähten ausmacht, wie in der Zeichnung angedeutet. Die erste
Gruppe von achtzehn Drähten bildet einen Adressenweg, mittels welchem das Verarbeitungsgerät 10 irgendeinen
der Unterkanäle 16 für die Übermittlung von Information an diesen Unlerkanal oder von diesem her
auswählen kann. Die zweite und dritte Gruppe von achtzehn Drähten dienen als Datensende- und -empfangswege
für die jeweilige Übertragung von Daten zum ausgewählten Unterkanal oder von diesem weg.
Jede Gruppe von achtzehn Drähten trägt eine Information in Form von zwei Acht-Bit-Bytes (als obere und
untere Bytes bezeichnet), wobei jedes Byte ein Paritätsbit aufweist, welches eine Überprüfung auf richtige
Übertragung der Bytes vorsieht. (Anmerkung: Bit = Binarstelle bzw. Binärziffer; Byte = eine Gruppe von
Binärziffern, die einen Teil eines Wor/i bilden und im
Computer als eine Einheit verarbeitet werden, im typischen Fall = 8 Bits).
Sechs Bits des oberen Byte auf dem Adressenweg dienen dazu, den anzusteuernden Kanal 15 zu identifizieren.
Jeder der Kanäle hat eine eindeutige, aus sechs Bits bestehende Adresse und ist mit einer logischen Decodierungsschallung
(nicht dargestellt) ausgerüstet, um jene Adresse zu erkennen, wenn sie auf dem Adressenweg
erscheint. Das untere Byte identifiziert denjenigen der Unlerkanäle 16 innerhalb dieses Kanals, der ausgewählt
v/erden soll, und wird dazu verwendet, einen Multiplexer
(nicht dargestellt) innerhalb des Kanals so zu steuern, daß er den ausgewählten Unterkanal mit den
Datensende- und -empfangsdrähten des Eingangs/Ausgangs-Hauptweges
verbindet.
Die Anlage enthält außerdem eine Vielzahl von Fehlerkanälcn 22, und zwar einen für jedes der Verarbeiiuiigsgeräte
10. Jeder Fehlerkanal ist mit dem Eingangs/ Ausgangs-Hauptweg i4 jedes der Verarbeitungsgeräte
verbunden und kann durch jedes beliebige derselben in genatt der gleichen Weise wie die Eingangs/Ausgangs-Kanäle
15 adressiert bzw. angesteuert werden. Anstatt jedoch mit den Unierkanälen 16 und somit mil peripheren
Schaltungen 17 verbunden zu werden, werden die Fehlerkanäle 22 mit Überwachungs-Eingangs/Ausgangs-Anschlüssen
23 der jeweiligen Verarbeitungsgeräte 10 verbunden. Jedem Verarbeitungsgerät 10 ist eine
jeweilige Konsole 24 zugeordnet, wobei die Konsole mit dem Überwachungsanschluß 23 des Verarbeitungs-
w gerätcs über den Feb'.erkanal 22 dieses Verarbeitungsgerätes verbunden ist.
Der Beirieb der Fehlerkanäle wird nunmehr im einzelnen
beschrieben. Kurz gesagt, wird jedoch jeder Kanal durch sein zugeordnetes Verarbeitungsgerät gesteuert
und kann in einen »offenen« oder einen »geschlossenen« Zustand durch dieses Verarbeitungsgerät gebracht
werden. Wird der Fehlerkanal geschlossen, so kann der Betrieb des Verarbei'.ungsgerätes manuell
durch eine Bedienungsperson von der zugeordneten
bo Konsole 24 her überwacht werden. Wird jedoch der
Fchlcrkanal geöffne!, dann kann der Betrieb des Vcr^rbcitungsgcräles
automatisch durch jedes andere der Vcrarbcitungsgcräic über den Fehlcrkanal überwacht
werden, wobei die manuelle Konsolensteuerung über-
t>r· gangen wird.
leder der Eingangs/'Ausgangs-Kanäle 15 und Fehlerkanäle
22 ist mit einer Zugangssehaltung (nicht dargestellt)
versehen, wie sie in der GB-PS 13 31 786 beschrie-
ben ist, die verhindert, daß zu einer Zeit mehr als ein
Verarbeitungsgerät Zugang zu dem Kanal erlangt. Die
Speichereinheiten 11, 12 haben ähnliche Zugangsschaltungen.
Nach Fig. 1 ist jeder Fehlerkanal 22 mit allen l-.ingangs/Ausgangs-Hauptwcgcn
14 verbunden. |edoch ist es an sich nicht wesentlich, daß ein Fehlerkanal mit dom
Eingangs/Ausgangs-Hauptweg seines zugeordneten Verarbeitungsgerätes verbunden ist. Vielmehr kann in
einigen Fällen die Anordnung so getroffen sein, daß jeder Fehlerkanal nur mit einem Hauptweg verbunden
ist. so daß er für nur ein Verarbeitungsgerät zugänglich ist: Beispielsweise kann der Fehlerkanal 0 nur für das
Verarbeitungsgerät 1, der Fehlerkanal I nur für das Verarbeitungsgerät 2 und der Fehlerkanal 2 nur für das
Verarbeitungsgerät 0 zugänglich sein.
Die Anlage enthält ferner eine Unterbrechereinheit 25, die rp.st jedem der VerarbciU'igsgeräte gekoppelt ist
und eine Anzahl von Triggereingängen 26 aufweist, von denen einige mit der peripheren Einrichtung verbunden
sind und von denen andere mit den Verarbeitungsgeräten und mit einem Taktgeber 27 verbunden sind.
Konstruktion und Funktion der Unterbrechereinheit 25 sind in der GB-PS 14 25 173 beschrieben. Kur/ gesagt,
sind jedoch einige der Eingänge 26 »Sofortunterbrechungs«-Eingänge,
während der Rest »nicht-sofortige« sind. Wenn eine Unterbrechungsaufforderung einem
der »Sofortunterbrechungs«-Eingänge übermittelt wird, so sucht die Unterbrechereinheit das Verarbeitungsgerät,
das den Prozeß von niedrigster Priorität in diesem bestimmten Augenblick durchführt (siehe unten
eine Diskussion von »Prozessen« und »Prioritäten«), und unterbricht dieses Verarbeitungsgerät. Die Inhalte
der Register dieses Verarbeitungsgerätes werden eingenistet, d. h. in einem speziellen Bereich der Kernspeicher
11 gespeichert, die dem Prozeß zugeordnet sind, damit
auf den unierbrochenen Prozeß später zurückgegriffen werden kann, und ein Programm, als »Überwacher«
(siehe unten) bekannt, wird dann an diesem Verarbeitungsgerät automatisch weiterbetrieben. Die »nicht sofortigen«
Eingänge verursachen keine Unterbrechung, sondern dienen lediglich dazu, der Anlage anzuzeigen,
daß beispielsweise eine periphere Einrichtung Beachtung erfordert. Die Signale von diesen nicht-sofortigen
Eingängen her werden periodisch durch das Übcrwacherprogramm bedient, wie nachfolgend noch beschrieben
wird.
Fehlerkanal
Die Konstruktion der Fehlerkanäle 22 soll nunmehr im einzelnen beschrieben werden. Es wird hierzu auf
F i g. 2 Bezug genommen, die ein schematisches Blockschaltbild
von einem der Fehlerkanäle ist, wobei davon ausgegangen wird, daß dies der Fehlerkanai 0 ist (d. h.
der Fehlerkanal, der mit dem Überwachungsanschluß des Verarbeitungsgerätes 0 verbunden ist). Zum Zwekke
der Vereinfachung der Beschreibung sei davon ausgegangen, daß dieser Fehlerkanal nur für das Verarbeitungsgerät
1 zugänglich ist, so daß keine Zugangsschaltung notwendig ist, um zu verhindern, daß zu einer Zeil
mehr als ein Verarbeitungsgerät Zugang zu dem Fehierkanal
erlangt.
Wie aus Fig.2 hervorgeht, enthält der Fehlerkanal
zwei Verbindungsleitungsempfänger 201, 2OZ die mit achtzehn Adressendrähten des Eingangs/Ausgangs-Hauptweges
des Verarbeitungsgerätes 1 verbunden sind. Bits 0—5 und das Paritätsbit des oberen Bytes der
Adresse werden dem limpfängcr 201 zugeführt, und
/war gleichzeitig mit Bits 6 und 7 des unteren Bytes. (Die iichl Bits bzw. Biniir/iffcrn jedes Bytes sind mit
0—7 numeriert.) Bits Q—ri und das Paritätsbit des untc-'>
rcn Bytes werden dem Empfänger 202 zugeführt.
Der Empfänger 201 gibt die Bits 0—5 des oberen Bytes, nebst deren Paritätsbit, über einen sicbendrähtigcn
Weg 204 ;in eine logische Decodierungsschaltung 205 weiter, die so eingerichtet ist, daß sie die aus sechs
ίο Bits bestehende, dem Fehlerkanai zugeordnete Adresse
erkennt und eine Pcrsistenz- bzw. Bestandsprüfung an dieser Adresse ausführt. Wenn die Adresse erkannt wird
und die PersistcnzprUfung zufriedenstellend ausfällt, dann erzeugt die logische Decodierungsschaltung 205
is zwei Ausgangssignalc: Das erste, am Draht 206, wird als
Fehlerkanal-Taktsignal bezeichnet, während das andere, am Draht 207, eine Instruktion darstellt, um Daten
vom Fehlerkanai zum VerarbcitungSKcrät-Eingangs/
Ausgangs-Hauptweg 14 durchzuschleusen.
Das Fehlerkanal-Taktsignal wird dazu verwendet, den Leitungsempfänger 202 zu aktivieren, wobei dieser
veranlaßt wird, die Bits 0—5 und das Paritätsbit des unteren Bytes über einen siebendrähtigen Weg 208 dem
Eingang eines Registers 209 zu übermitteln, welches als Fehlerkanal-Adressenregister (FCAR) bezeichnet wird.
Dieses Register 209 wird durch das Fehlerkanal-Taktsignal auf dem Weg 206 gesteuert und außerdem durch
das Bit 6 des unteren Bytes, welches ihm vom Empfänger 201 her über einen Draht 210 zugeführt wird, wobei
dieses Bit 6 als das FC4/?-Taktsifnal bezeichnet wird.
Wenn es das Verarbcitungsgerä: 0 erfordert, daß sein Fehlerkanal geöffnet wird, so erzeugt es ein Ausgangssignal,
das als »öffne-Fehlerkanalw-Signal bezeichnet
wird, wie unten noch beschrieben wird, und dieses Signal wird außerdem dem Register FCAR 209 am Draht
203 übermittelt. Daten werden in das Register 209 vom Leitungsempfänger 202 her eingeschrieben, wenn das
Fehlerkanal-Taktsignal, das FG4/?-Taktsignal und das
»Öffnc-Fehlerkana!«-Signal alle gleichzeitig vorhanden sind.
Der Fehlerkanal enthält außerdem einen weiteren Verbindungsleitungsempfänger 211, der mit den achtzehn
»Datensende«-Drähten des Daten-Hauptwcges 14 des Verarbeitungsgerätes 1 verbunden ist. Die von dicsem
Empfänger herkommenden Daten werden über eine logische Torschaltung 212 weitergeleitet, die durch
das »Öffne-Fchlerkanal«-Signal vom Verarbeitungsgerät 0 her, welches am Draht 213 erscheint, gesteuert
wird, und werden dem Eingang eines weiteren Registers 214 übermittelt, der als Fehlerkanal-Datenret; ster
(FCDR) bezeichnet wird. Dieses Register 214 wird durch das Fehlerkanal-Taktsignal am Draht 206 gesteuert
und außerdem durch das Bit 7 des unteren Adressenbytes, welches ihm vom Empfänger 201 her über einen
Draht 215 zugeführt wird, wobei dieses Bit 7 als das FCDÄ-Taktsignal bezeichnet wird. Daten werden daher
in das Register 2t4 vom Verbindungsleitungsempfänger 211 her eingeschrieben, wenn das »Öffne-Fchlerkanal«-Signal.
das Fehlerkanal-Taktsignal und das FCDR-
bo Taktsignal alle gleichzeitig vorhanden sind.
Wie oben erwähnt, weist jedes Verarbeitungsgerät 10 eine Konsole 24 auf. Die Konsolen sind in den meisten
Datenverarbeitungsanlagen üblich, und sie werden hier im einzelnen nicht beschrieben. Es sei jedoch kurz dar-
f>5 auf hingewiesen, daß jede dieser Konsolen eine Anzahl
von Steuertasten, zwei Drehschalter und eine Reihe von Anzeigelampen aufweist, deren Zweck aus der nachfolgenden
Beschreibung hervorgeht.
Vier der Steuerlasten sind mit einem mehradrigen
Weg 217 in Fig. 2 verbunden. Dieser Weg ist mit dem
einen Siuz von Eingängen eines DntcnwAhlcrs 218 verbunden,
während der andere Satz von Eingängen mit dem 1''CAR 209 verbunden ist. Der Ausgang des Datcnwiihlcrs
218 ist über einen mehradrigen Weg 219 mit dem Oberwachungsanschluü 23 (Fig. 1) des Verarbeitungsgerätes
und von dort mit der Steuer- oder Kontrollschaltung des Verarbeitungsgerätes verbunden.
Weitere neun der Konsolentasten sind mit einem mehradrigen Weg 220 in F i g. 2 verbunden. Dieser Weg ist
mit dem einen Satz von Eingängen eines Datenwählers 221 verbunden, während der andere Satz von Eingängen
mit dem FCDR 214 verbunden ist. Der Ausgang des Datenwählers 221 ist über einen Signalweg 222 mit dem
Überwachungsanschluß 23 und von dort mit der Steuerbzw. Kontrollschaltung des Verarbeitungsgerätes verbunden.
Die Datenwähler 218 und 221 werden durch das »Öffne-Fehlerkanal«-Signal
vom Verarbeitungsgerät 0 gesteuert. Normalerweise, wenn das »Öffne-Fchlerkanal«-Signal
abwesend ist (d. h., wenn der Fehlerkanal geschlossen ist), werden die Datenwähler 218 und 221 so
eingestellt, daß sie die Wege 217 und 220 mit den Wegen 219 und 222 verbinden. Auf diese Weise wird bei diesem
Zustand die Betätigung der Verarbeitungsgerät-Kontrollschaltung
durch die Konsolentasten gesteuert. Die vier mit dem Weg 217 verbundenen Tasten leiten, wenn
sie gedruckt werden, die folgenden Betriebsweisen des Verarbeitungsgerätes 0 ein:
(I) Instruktion »one-shot«. Diese veranlaßt das Verarbeitungsgerät,
eine Instruktion eines Programms auszuführen. (Anmerkung: »one-shot Instruktion«
= Verfahren zum Betrieb eines Computers, bei welchem eine einzige Instruktion oder ein Teil einer
Instruktion auf einen Beiehi hin ausgeführt wird.)
(II) Übertragung »one-shoi«. Diese veranlaßt das Verarbeitungsgerät,
eine Übertragung bei einer Instruktion auszuführen. (Es ist in Datenverarbeitungsanlagen
für jede Instruktion eines Programms üblich, daß es durch eine Mikroprogrammeinheit
innerhalb des Verarbeitungsgerätes in eine Anzahl von Übertragungsvorgängen umgesetzt wird, wobei
diese Übertragungen die grundsätzlichen Operationen der Maschine sind.)
(III) Instruktionslauf. Dieser veranlaßt das Laufen des
Programms mit normaler Geschwindigkeit.
(IV) Übertragung. Dieser leitet das freie Laufen des MikrOpro^rsnün-Tukt^cbtirs
des VerErbeitun^^erütes
ein.
Eine der mit dem Weg 220 verbundenen Tasten (die »Konsolenquelle«-Taste) ermöglicht das Eingeben von
Daten in das Verarbeitungsgerät direkt von den Konsolentasten her, wie nachfolgend noch beschrieben wird.
Andere mit dem Weg 220 verbundene Tasten wirken in der Weise, daß sie verschiedene Kontrollen und andere
Einrichtunger, die im Verarbeitungsgerät vorgesehen sind, sperren und das Mikroprogramm rückstellen.
Die Art und Weise, in welcher die Signale von den Konsolentasten auf die Steuerschaltung des Verarbeitungsgerätes
wirken, um diese Betriebsarten hervorzubringen, wird in dieser Beschreibung nicht erläutert, da
sie nicht Teil der vorliegenden Erfindung ist, und in jedem Fall ist das Vorsehen solcher Konsolentasten in der
Computertechnik allgemein bekannt Natürlich wurden
bei einer herkömmlichen Datenverarbeitungsanlage ohne l'chli'i'kaniil die Koiisnlcninsu-ii direkt mil ιΙι·ιιι
Obcrwiii'luingsunschluU dos VcrurheiiungsgLTliiirs μί
bunden sein, und zwur ohne irgendwelche Zwischcn-Datenwiihler.
wie beispielsweise 218 und 221.
Wenn der Fehlerkanal offen ist (d. h. wenn das »Fehlcrkanal-offenw-Signal
vorhanden ist), werden die Datenwählcr 218 und 221 so eingestellt, daß sie FCAR 209
und FCDR 214 mit den Wegen 219 und 222 verbinden.
ίο So wird bei diesem Zustand die Verarbeitungsgerät-Steuerschaltung
durch den Inhalt der beiden Register 209 und 214, anstatt von den Konsolentasten, gesteuert.
Der Ausgang vom Datenwähler 218 und der Ausgang des FCDR 214 werden beide an einer speziellen Fehlerkanal-An/eigeeinheit
223 angezeigt, die aus einem Satz von Lampen besteht, die so eingerichtet sind, daß sie
aufleuchten, wenn Binär-»1 «-Signale an den entsprechenden Drähten bzw. Adern erscheinen. Dies ergibt
die Möglichkeit der visuellen Überwachung des Betriebs des Fehlerkanals.
Wenn die erwähnte »Konsolenquelle«-Taste gedrückt wird, sind die anderen Konsolentasten automatisch
von den Wegen 217, 220 mittels entsprechender Sperrschaltung in der Konsole getrennt, und ein spezielles
festverdrahtetes Instruktionswort wird dem Verarbeitungsgerät übermittelt, wobei dieses veranlaßt wird,
ein an einem Signalweg 226 erscheinendes Datenwort einzulesen, und zwar mittels des Überwachungsanschlusses
23. Durch Drücken der »Konsolenquelle«-Taste werden außerdem weitere Konsolentasten mit einem
mehradrigen Signalweg 224 verbunden, der mit dem Weg 226 mittels einer logischen »ODER«-Schaltung
225 verbunden ist. Die »Konsolenquellew-Taste ergibt
somit die Möglichkeit, Daten manuell von den Konsolentasten her in das Verarbeitungsgerät einzuschreiben.
Wie nach FCDR 214, wird der Ausgang der logischen
Torschaltung 212 auch mittels eines mehradrigen Weges 227 einer weiteren logischen Torschaltung 228 übermittelt,
deren Ausgang einem weiteren Satz von Eingängen der logischen »ODER«-Schaltung 225 zugeführt
wird. Die Torschaltung 228 wird durch ein »Daten-Lade«-Signal an einem Draht 229 vom FCAR 209 her gesteuert,
welches vom Bit 5 des unteren Bytes der Kanaladresse abgeleitet wird. Ist somit das »Daten-Lade«-Signal
vorhanden, so können Daten direkt in das Verarbeitungsgerät vom Eingangs/Ausgangs-Hauptweg mittels
des Verbindungsleitungsempfängers 211, der Torschaltungen 212 und 228 und der logischen
»ODER«-Schaltung 225 eingeschrieben werden.
Die Betätigung der obenerwähnten Konsolen-Drehschalter
soll nunmehr beschrieben werden. Jeder dieser Schalter hat achtzehn mögliche Stellungen und ist so
eingerichtet, daß er ein einziges Vter-Bit-Ausgangssignal
in jeder dieser Stellungen erzeugt. Der Ausgang des ersten der Drehschalter erscheint am Weg 230 in
F i g. 2. Dieser Weg ist mit dem einen Satz von Eingängen eines Datenwählers 231 verbunden, während der
andere Satz von Eingängen mit einem vierdrähtigen Weg 232 verbunden ist, der vom Weg 227 abgeleitet
wird. Der Datenwähler 231 wird durch ein »Abfrage«-Signal gesteuert, welches an einem Draht 233 vom
FCAR her erscheint und von dem Bit 4 des unteren Bytes der Kanaladresse abgeleitet wird. Normalerweise,
es wenn der Fehierkanai geschlossen ist, fehlt das »Abfrage«-Signal,
und der Datenwähler 231 verbindet daher den Weg 230 mit einem Ausgangsweg 234.
Die auf dem Weg 234 getragene Binärzahl wird dazu
16
verwendet, einen Multiplexer 235 zu steuern, der als Anzeige-Multiplexer bezeichnet wird. Dieser Multiplexer ist mit einer ersten Gruppe der Register innerhalb
des Verarbeitungsgerätes verbunden (bis zu sechzehn solcher Register) und zwar über jeweilige Wege 236,
die einen Teil des Überwachungsanschlusses 23 des Verarbeitungsggrates bilden, und er ist so eingerichtet,
daß er jeden beliebigen ausgewählten dieser Wege mit einem Weg 237 verbindet, der zu den Anzeigelampen an
der Konsole führt. Daraus ergibt sich somit, daß bei geschlossenem Fehlerkanal der Inhalt irgendeines aus
der ersten Gruppe von Registern an der Konsole durch Drehen des ersten Drehschalters in die entsprechende
Stellung angezeigt werden kann.
Der andere Drehschalter ist mit einem anderen Anzeige-Multiplexer (nicht dargestellt) mittels eines anderen ähnlichen Datenwählers (ebenfalls nicht dargestellt)
verbunden und wird dazu verwendet, den Inhalt irgendeines von einer zweiten Gruppe der Verarbeitungsgerät-Register (bis zu sechzehn) anzuzeigen, und zwar
gleichzeitig mit der ersterwähnten Anzeige.
Es ergibt sich somit, daß der Weg 237 Daten von zwei ausgewählten Registern trägt — insgesamt vier Neun-Bit-Bytes (einschließlich der Paritätsbits).
Wenn der Fehlerkanal offen ist, so wird durch das Erscheinen einer »1« im Bit 4 des unteren Adressenbytes, welches vom Verbindungsleitungsempfänger 202
empfangen wird, eine »1« in die entsprechende Stufe des FCAR 209 eingeschrieben, und dies führt wiederum
dazu, daß ein »Abrage«-Signal am Draht 233 erzeugt wird. Dies veranlaßt den Datenwähler 231, den Weg 232
mit dem Ausgangsweg 234, anstatt mit dem Weg 230, zu verbinden. In diesem Zustand wird somit der Anzeige-Multiplexer 235 durch ein vom Verbindungsleitungsempfänger 211 abgeleitetes Signal, anstatt durch den
Drehschalter, gesteuert. Das gleiche gilt für den anderen Anzeige-Multiplexer (nicht dargestellt).
Weitere drei der Bits auf dem Weg 227 werden auf den Weg 238 gegeben und dazu verwendet, einen weiteren Multiplexer 239 zu steuern, der als Fehlerkanai-Multiplexer bezeichnet wird. Dieser Multiplexer ist normalerweise untätig, aber wird durch das »Abfragen-Signal am Draht 229 aktiviert Im aktivierten Zustand
wählt der Multiplexer 239 eines der vier Bytes am Weg 237 aus (wie durch die Adresse auf dem Weg 238 bestimmt) und übermittelt dieses Byte an einen neundrähtigen Ausgangsweg 240. Der Multiplexer 239 enthält
außerdem eine Paritätsüberprüfungsschaltung zum Überprüfen der Parität des ausgewählten Bytes. Das
Ergebnis dieser Paritätsprüfung wird durch Erzeugung eines zweiten Neun-Bit-Bytes am Ausgangsweg 241 angezeigt, wobei das am wenigsten bedeutsame Bit dieses
Bytes »0« ist, wenn die Paritätsprüfung bestanden ist, und eine »1«, wenn sie negativ verläuft. (Die anderen
Bits dieses zweiten Bytes werden vom Fehlerkanal zur Übermittlung anderer Information verwendet oder
können als »Ersatz«-Bits betrachtet werden.) Die beiden Bytes auf den Wegen 240 und 241 werden am Weg
242 jeweils als untere und obere Bytes eines Achtzehn-Bit-Wortes kombiniert
Dieses Achtzehn-Bit-Wort wird einer logischen Torschaltung 243 zugeführt, die durch das »Tordatcn«-Signal an der Ader 207 von der logischen Dccodierungsschaltung 205 her gesteuert wird. Wenn dieses Signal
vorhanden ist dann wird das Achtzehn-Bit-Wort durch die Torschaltung 243 hindurchgelassen und einer Leitungs-Treiberschaltung 244 übermittelt Diese Schaltung 244 ist normalerweise untätig, wird jedoch durch
das Fehlerkanal-Taktsignal an der Ader 206 von der logischen Decodierungsschaltung 205 her aktiviert, wobei sie dafür sorg», daß das Achtzehn-Bit-Wort nach den
»Datenrückführ«-Drähtcn des Eingangs/Ausgangs-
Hauptweges 14 übermittelt wird, um zum Verarbei
tungsgerät 1 rückübertragen zu werden.
Daraus ergibt sich somit, daß der Inhalt jedes ausgewählten Registers über den Hauptweg 14 in Form von
zwei aufeinanderfolgenden Datenwörtern übertragen
werden kann, wobei das untere Byte jedes Wortes das
eine Byte des Inhalts des Registers enthält, während das obere Byte eine Anzeige dafür enthält, ob das übermittelte Byte paritätsgerecht ist oder nicht. Dadurch wird
eine sichere Übertragung des Registerinhalts über den
Hauptweg 14 sichergestellt, und zwar selbst dann, wenn
der Registerinhalt nicht paritätsgerecht ist.
Zusammengefaßt heißt dies: Wenn der Fehlei kanal geschlossen ist, dann kann der Betrieb des zugeordneten
Verarbeitungsgerätes manuell überwacht werden, wo·
bei die Konsolcntasten verwendet werden. Zusätzlich
können Daten von irgendeinem der Verarbeitungsgerät-Register an der Konsole angezeigt werden, wobei
die Register durch Betätigung der Konsolen-Drehschalter ausgewählt werden. Durch Verwendung der Konso-
leneinrichtungen ist es einer Bedienungsperson möglich, am Verarbeitungsgerät verschiedene Tests durchzuführen, wie beispielsweise ein Testprogramm laufen zu lassen, und zwar mit einem Schritt zu einer Zeit bzw. in
Einzelschritten, und das Überprüfen des Inhalts der Re
gister, nachdem jede Programminstruktion oder -über
tragung ausgeführt worden ist. Auf diese Weise kann der Zustand des Verarbeitungsgerätes diagnostiziert
und eine Abhilfeaktion unternommen werden.
Wenn der Fehlerkanal geöffnet ist, können diese
Tests automatisch durchgeführt werden, und zwar dadurch, daß das Verarbeitungsgerät 1 Zugang zum Feh-Ierkanai mittels seines Eingangs/Ausgangs- Hauptweges
14 erlangt.
Es sei nunmehr auf F i g. 3 Bezug genommen, welche
ein detailliertes Schaltbild der logischen Decodierungsschaltung 205 zeigt. Die Schaltung weist ein KiAND-Tor
301 mit sechs Eingängen sowie sechs Inverter 302 auf, die mit den Bits 0—5 des oberen Adressenbytes vom
Verbindungsleitungsempfänger 201 (Fig.2) beliefert
werden. Die Eingänge zum Tor 301 sind mit den Inverlern in einer Weise verbunden, die von der dem Fehlerkanal zugeordneten Adresse abhängig ist, so daß, wenn
diese Adresse der Decodierungsschaltung zugeführt wird, eine Binär-»0« am Ausgang des Tores 301 er
scheint Als Beispiel zeigt die Zeichnung entsprechende
Verbindungen für das Erkennen der Adresse ! JOSOl.
Der Ausgang des Tores 301 wird dem Eingang einer 200-Nanosekunden-Verzögerungsleitung 30cl zugeführt, die acht Anzapfungspunkte aufweist welche mit
einem NAND-Tor 304 verbunden sind. Dieses Tor 304 erzeugt daher einen Binär-»0«-Ausgang immer dann,
wenn die Fehlerkanaladresse, wie sie durch die Decodierungsschaltung erkannt wird, mindestens 200 Nanosekunden lang besteht Der Ausgang vom Tor 304 liefert
das Fehlerkanal-Taktsignal am Draht 206.
Der Ausgang vom Tor 304 triggert außerdem eine nioiiustabilc Schaltung 305. die eine rnonostabilc Zeit
von 5 Mikrosekundcn aufweist. Im ausgelösten Zustand stellt diese Schaltung 305 eine bistabile Schaltung 306
ein, um auf diese Weise das »Tordaten«-Signai am Draht 207 zu erzeugen.
F i g. 4 zeigt ein detailliertes Schaltbild des Fehlerkanal-Adressen^egisters 209 und des Datenwählers 218
von F i g. 2.
Das FCAR (Fehlerkanal-Adressenregister) 209 weist in Siebenstül'enregister 401 auf. Die sieben Stufen dieses
Registers sind mit dem Verbindungsleitungsernpfänger
202(F i g. 2) verbunden, um jeweils Bits 0—5 und das Paritätsbit des unteren Bytes der Kanaladresse zu empfangen.
Das Fehlerkanal-Taktsignal der logischen Decodierungsschaltung 205 erscheint am Draht 402 und wird zur
Taktsteuerung der bistabilen Schaltung 403 verwendet, die dann mittels des Bits 6 des unteren Bytes der Adresse
vom Empfänger 201 her am Draht 404 eingestellt werden kann. Wenn eingestellt, triggert die bistabile
Schaltung 403 eine monostabile Schaltung 405 mit einer monostabilen Zeit von 300 Nanosekunden, und diese
übermittelt wiederum einen Taktimpuls an den Takteingang 406 des Registers 401, wobei dieses veranlaßt wird,
die ihm vom Empfänger 202 dargebotene Information hereinzulesen.
Das »öffne-Fehlerkanal«-Signai besteht aus einer Binär-»O«,
die an einen Draht 407 vom zugeordneten Verarbeitungsgerät 0 übermittelt wird. Dieses Signal wird
durch das Tor 408 invertiert und an den »Clear«-Eingang 409 des Registers 401 übermittelt, um zu verhindern,
daß Daten in das Register 401 eingegeben werden, wenn das »Öffne-Fehierkanalw-Signal fehlt.
Die vier Konsolentasten zur Steuerung der Betriebsart des Verarbeitungsgerätes sind mit sieben Drähten
411—417 verbunden, wie in Fig.4 angedeutet. Es ist
ersichtlich, daß drei dieser Tasten, nämlich jene für den Übertragungslauf (TXR.RUN). Übertragungs-one-shot
(TXR.O/S) und Instruktions-one-shot (INST.O/S). mit
jeweiligen Paaren von Drähten 411/412, 414/415 und 416/417 verbunden sind. Wenn irgendeine dieser Tasten
gedrückt wird, so erzeugt sie jeweils Binärziffern »1« und »0« an ihrem entsprechenden Drahtpaar; sonst erzeugt
sie jeweils Ziffern »0« und »1«. Die andere Taste — für Instruktionslauf (INST.RUN) — ist mit einem
einzelnen Draht 413 verbunden. Wenn diese Taste gedrückt
wird, so erzeugt sie eine Binärziffer »0« an diesem Draht 413 und sonst eine »1«.
Der Datenwähler 218 weist zwei Sätze von je acht UND-Toren 418 und 419 auf. Die Ausgänge von entsprechenden
Paairen dieser UND-Tore sind jeweils mit
acht NOR-Toren 420 verbunden, deren Ausgänge ihrerseits mit acht Invertern 421 verbunden sind. Die Ausgänge
dieser Inverter erscheinen an jeweiligen Ausgangsdrähten 422—429, die mit den entsprechenden
Punkten der Verarbeitungsgerät-(O)-Steuereinheit verbunden sind, und zwar über den Verarbeitungsgerät-Oberwachungsanschluß,
wie angedeutet. Die Eingänge von vier Toren des ersten Satzes von UND-Toren 418
werden mit Signalen von den ersten vier Stufen des Registers 401 beliefert (welche die Bits 0—3 des unteren
Bytes der Adresse enthalten). Die anderen vier der UND-Tore 418 werden mit den Invertierungswerten
dieser Signale beliefert, und zwar mittels vier inverter 430. Die Eingänge von sieben des zweiten Satzes von
UND-Toren 419 werden mit Signalen von den sieben Drähten 411—4118 von den Konsolentasten her beliefert,
wobei das achte Tor einen geerdeten Eingang 431 aufweist, der eine permanente Binärziffer »1« repräsentiert.
Der Dalenwähler 218 wird durch das »Öffne-Fehlerkanai«-Signai
vom Draht 407 her gesteuert, weiches durch das Tor 40IS invertiert ist.
Das Signal vom Tor 408 wird jedem der UND-Tore 418 übermittelt, ist ebenfalls durch einen Inverter 432
invertiert und wird jedem der UND-Tore 419 übermittelt. Wenn somit ein »Öffne-Fehlerkanalw-Signal vorhanden
ist, so werden die Tore 418 alle angesteuert, und Daten werden von den vier Stufen des Registers 401 an
die Drähte 422—429 weitergeleitet. V/enn ungekehrt das »Öfline-Fehlerkanak-Signal fehlt, dann werden die
Tore 4I1S alle angesteuert, und Daten werden von den
Drähten 411—417 (d.h. von den Konsolentasten her) den Drähten 422-429 übermittelt.
ίο Es ist somit ersichtlich, daß, wenn der Fehlerkanal
geschlossen ist, die Konsolentasten in der normalen Weise wirken, um die Betriebsweise des Verarbeitungsgerätes zu steuern. Wenn jedoch der Fehlerkanal geöffnet
ist, dann wird die Betriebsart des Verarbeitungsgeis rätes durch den Inhalt der ersten vier Stufen des Registers
4011 gesteuert.
Die fünfte Stufe des Registers 401 (welche das Bit 4 des unteren Bytes der Adresse enthält) wird mittels eines
inverters 433 mit dem Draht 233 (siehe F i g. 2j verbunden und liefert das vorerwähnte »Abfrage«-Signal.
In ähnlicher Weise ist die sechste Stufe des Registers 401 (welche das Bit 5 des unteren Bytes der Kanaladresse
enthält) mittels eines Inverters 434 mit dem Draht 229 (siehe F i g. 2) verbunden und liefert das obenerwähnte
»Daten· Lade«-Signal.
Aus F i g. 4 geht hervor, daß die Bits 0—5 des unteren Bytes der Adresse die folgenden sechs Instruktionen
repräsentieren:
Bit 0 = )>1« repräsentiert »Instruktion one-shot«.
Bit 1 = i)l« repräsentiert »Übertragung one-shot«.
Bit 2 = »1« repräsentiert »Instruktionslauf«.
Bit 3 = )>1« repräsentiert »Übertragungslauf«.
Bit4 - »!«repräsentiert»Abfrage«. Bit 5 = »1« repräsentiert »Daten-Lade«.
Fig.5 zeigt die logische Torschaltung 212 und das
Fehlerkanal-Datenregister 214 der F i g. 2 mehr im einzelnen.
Das FCDR (Fehlerkanal-Datenregister) weist zwei Neunstufenregister auf: Ein Register 501 für das obere
Byte und eines (nicht dargestellt) für das untere Byte des vom Eingangs/Ausgangs-Hauptweg 14 mittels dcv Verbindungsleitungsempfängers
211 empfangenen Wortes.
Die logische Torschaltung 212 enthält neun NAND-Tore 502 zum Durchschleusen entsprechender Bits in das
entsprechende Stufenregister 501. Diese Tore 502 werden durch das »Öffne-Fehlerkanalw-Signal vom zugeordneten
Verarbeitungsgerät her angesteuert, welches
so am Draht 503 erscheint. Der Draht 503 ist außerdem mit dem »Clear«-Eir.gang des Registers 501 verbunden, um
dieses Register rückzustellen, wenn das »Öffne-Fehlerkanalw-Signal fehlt
Das FCD/?-Taktsignal vom Verbindungsleitungsempfänger 201 erscheint am Draht 215, während das Fehlerkanal-Taktsignal von der logischen Decodierungsschaltung 205 her am Draht 206 (siehe Fi g. 2) erscheint. Das Erscheinen des Fehlerkanal-Taktsignals, während der FCDÄ-Takt vorhanden ist, sorgt für die Einstellung der bistabilen Schaltung 504, die ein Ausgangssignal von einem NAN D-Tor 50i> erzeugt, welches eine Taktstsuerung des Registers 501 vornimmt, um dieses zu veranlassen, die Information von der Torschaltung 212 her hereinzulesen.
Das FCD/?-Taktsignal vom Verbindungsleitungsempfänger 201 erscheint am Draht 215, während das Fehlerkanal-Taktsignal von der logischen Decodierungsschaltung 205 her am Draht 206 (siehe Fi g. 2) erscheint. Das Erscheinen des Fehlerkanal-Taktsignals, während der FCDÄ-Takt vorhanden ist, sorgt für die Einstellung der bistabilen Schaltung 504, die ein Ausgangssignal von einem NAN D-Tor 50i> erzeugt, welches eine Taktstsuerung des Registers 501 vornimmt, um dieses zu veranlassen, die Information von der Torschaltung 212 her hereinzulesen.
Die Ausgänge von den ersten acht Stufen des Registers 501 werden durch Tore 506 invertiert und an den
Datenwähler 221(Fi g. 2) weitergegeben. Die Ausgänge von diesen Toren werden außerdem einem mit acht Ein-
gangen versehenen Paritiitsprüfer 507 zugeführt, der
einen Ausgang erzeugt, welcher anzeigt, ob die Summe
der acht Datenbits im Register ungerade oder gerade ist Der Ausgang vom Prüfer 507 wird mit dem Paritätsbit von der letzten Stufe des Registers 501 her verglichen, und zwar in einem Äquivalenztor 508, dessen Ausgang anzeigt, ob dieses Byte paritätsgerecht ist oder
nicht
Die Ausgänge von der Torschaltung 502 werden nicht
nur dem Register 501 zugeführt, sondern auch in Parallelschaltung den NAN D-Toren 509, von denen aus sie
an den Signalweg 227 (siehe F i g. 2) weitergegeben werden.
Das andere (unteres Byte) Register (nicht dargestellt) des FCDR weist eine ähnliche Schaltung auf, die ihm
zum Durchschleusen, Taktsteuern, Rückstellen und Paritätsprüfen zugeordnet ist Die anderen Datenwähler
221 und 231, in Blockform in Fig.2 dargestellt, sind in
der Konstruktion dem Datenwähler 218 ähnlich, der im
einzelnen mit Bezug auf F i g. 4 beschrieben wurde, und werden daiier nkht noch einmal gesondert beschrieben.
Darüber hinaus sind die Multipiexerschaltungf^, wie
235 und 239, die Verbindungsleitungsempfänger, wie 201,202 und 211, und die Leitungstreiber, wie 244, alles
bekannte Einzelteile der Einrichtung, und es wird nicht für notwendig angesehen, sie im einzelnen zu beschreiben.
Die Software der Anlage nach Fig. 1 ist in eine Anzahl von Prozessen unterteilt, von denen jeder eine ganz
bestimmte Daten-Manipulation oder Eingangs/Ausgangs-Funktionen ausführt und einen ihm zugedachten
eindeutigen Prioritätspegel aufweist Ein Zusammenwirken zwischen den Prozessen Findet durch Übertragung, vom einen Prozeß auf einen anderen, von Datenblocks statt und zwar in einem vorbestimmten Format,
welches als »tasks« (Aufgaben) bekannt ist Diese Modularkonstruktion der Software vereinfacht weitgehend
das Beschreiben der Software, wobei sie die Möglichkeit bietet, separate Prozesse durch verschiedene Programmierungsteams zu entwickeln.
Wenn ein Prozeß eine oder mehrere Aufgaben hat, die darauf warten, von ihm geprüft zu werden, so werden diese Aufgaben in einer Eingangsreihe (Eingabe-Warteschlange) von Aufgaben für diesen Prozeß placiert (enthalten in einem der Kernspeicher U, Fig. 1).
Wenn ein Prozeß eine oder mehrere Aufgaben erzeugt hat, die noch nicht an andere Prozesse übertragen worden sind, so werden diese Aufgaben in einer Ausgangsreihe (Ausgabe-Warteschlange) von Aufgaben aus diesem Prozeß heraus placiert (ebenfalls in einem der
Kernspeicher).
jedem Prozeß ist ein Bereich des Speicherraums in den Kernspeichern Il als Arbeitsspeicherraum zugeordnet, der nicht mit irgendeinem anderen Prozeß geteilt wird. Dies stellt sicher, daß Fehler, die während der
Ausführung des einen Prozesses auftreten können, die Arbeitsdaten anderer Prozesse nicht verderben. Die
Prozesse teilen sich aber dennoch Programme und festgelegte Daten, die in den Kernspeichern 11 gespeichert
sind, wenn sie in einer Betriebsweise des Nurlesens verwendet werden.
Die Trommelspeicher 12 werden dazu verwendet. Kopien aller festgelegten Daten und außerdem von
wichtigen Arbeitsdaten für die Prozesse zu enthalten, und zwar zwei Kopien auf verschiedenen Trommeln.
Dies erhöht die Sicherheit der Anlage gegen Fehler,
welche die gespeicherten Daten beeinträchtigen.
Jeder beliebige Prozeß kann an irgendeinem der Verarbeitungsgeräte 10 laufen. Dies bedeutet, daß alle Ver-
arbeitungsgeräte 10 von gleichem Status und komplett untereinander austauschbar sind. Wenn somit das eine
Verarbeitungsgerät aus dem Dienst genommen wird, so kann, die Anlage normal weiterarbeiten, wenn auch mit
einer reduzierten Kapazität Dies lsi ein wichtiges
ίο Merkmal vom Gesichtspunkt der Sicherheit gegen Fehler.
Ein Prozeß kann jedoch nicht an mehr als einem Verarbeitungsgerät zu einer Zeit gefahren werden (d. h. die
Prozesse sind nicht neu einbringbar). Dies hilft wieder
um, irgendwelche Fehler, die auftreten können, zu erfas
sen.
Ein Prozeß befindet sich zu irgendeinem gegebenen
Zeitpunkt in einem der folgenden Zustände:
(a) Laufender Zustand. In diesem Zustand wird der
Prozeß an einem der Verarbeitungsgeräte gefahren.
(b) Ruhezustand. In diesem Zustand hat der Prozeß
keine Aufgaben in seiner Eingangs-Aufgabenreihe
und wird nicht wieder anlaufen, bis eine Aufgabe
empfangen wird.
(c) Blockierter Zustand. In diesem Zustand kann der
Prozeß erst dann wieder laufen, wenn ein Vorkommnis außerhalb dieses Prozesses stattfindet,
um ihn zu entblockieren.
(d) Anhängiger Zustand. In diesem Zustand hat der
Prozeß Aufgaben in seiner Eingangsreihe und wartet darauf, an einem Verarbeitungsgerät zu laufen,
aber er wird erst dann laufen, wenn alle anhängigen
Prozesse mit höherer Priorität abgelaufen sind.
Wird einem ruhenden Prozeß eine Aufgabe zugeteilt, so wird er in den anhängigen Zustand versetzt.
Wird in ähnlicher Weise ein blockierter Prozeß entblockiert so wird er in den anhängigen Zustand
versetzt
Einige der Prozesse können periodisch sein; d. h. sie werden in den anhängigen Zustand, fertig zum Laufen,
in periodischen Intervallen versetzt, die Vielfache der
Taktperiode (5,5 ms) sind, wobei diese Prozesse zu anderen Zeiten blockiert werden. Andere Prozesse sind
nicht periodisch; d. h. sie werden in den anhängigen Zustand nur dann versetzt, wenn sie gefordert werden —
z. B. wenn sie durch einen anderen laufenden Prozeß
angefordert werden.
Die Prozesse werden durch ein Spezialprogramm, bekannt als Überwacherprogramm, koordiniert. Wie die
Prozesse, so kann der Überwacher an jedem der Verarbeitungsgeräte laufen. Der Überwacher befaßt sich un-
ter anderem mit: Der Übertragung von Aufgaben vom einen Prozeß zum anderen; Versetzen der Prozesse in
die entsprechenden Zustände (ruhend, anhängig, blokkiert, laufend) zu den entsprechenden Zeiten; Bedienung von Anforderungen von peripheren Einrichtungen
der Anlage und Behandlung von Fehlerzusländen in der Anlage, wie noch beschrieben wird.
F i g. 6 ist ein Flußdiagramm, welches die Struktur des Überwacherprogramms veranschaulicht. Unter Bezugnahme auf Fig.6 in Verbindung mit Fig. 1 übermittelt
in periodischen Intervallen von 5,5 ms der Taktgeber 27
ein Taktsignal an einen der Sofortunterbrechungseingänge o'er Unterbrechereinheit 25. Dies führt dazu, daß
das Verarbeitungsgerät 10, das gerade den Prozeß mit der niedrigsten Priorität fährt, unterbrochen wird (wie
durch das Kästchen 601 in Fi g. 6 angedeutet) und daß der Registerinhalt eingenistet wird (Anmerkung: »Einnisten« — Speichern von Daten, die einem Prozeß zugeordnet sind, wenn dieser Prozeß unterbrochen wird, damit dieser Prozeß zu einem späteren Zeitpunkt wieder
aufgenommen werden kann). Der Oberwacher wird dann automatisch am unterbrochenen Verarbeitungsgerät betrieben und führt folgende Tätigkeiten aus:
Zunächst versetzt der Überwachen den unterbrochenen Prozeß in den anhängigen Zustand (wie durch das
Kästchen 602 angedeutet). Er entscheidet dann, welche
der periodischen Prozesse zu diesem Zeitpunkt fällig sind, begonnen zu werden, und sorgt dafür, daß diese
entblockiert und somit in den anhängigen Zustand (Kästchen 603) versetzt werden. Diese Prozesse beginnen daher wieder zu laufen, sobald für sie ein Verarbeitungsgerät 10 verfügbar ist
Als nächstes prüft der Oberwacher alle Nichtsofort-Unterbrechungseingänge der Unterbrechereinheit 25
(Kästchen 604). Wenn irgendwelche dieser Eingänge durch Anforderungen von ihren entsprechenden peripheren Einrichtungen oder Verarbeitungsgeräten her
aktiviert sind, dann bedient der Überwacher diese Anforderungen, indem er den Prozessen entsprechende
Aufgaben erteilt Der Überwach er nimmt dann die Rückstellung der Unterbrechereinheit 25 vor.
Wenn die Abtastung vollendet ist, wählt der Überwacher flsn anhängigen Prozeß der höchsten Priorität aus
(Kästchen 605). Nach Beendigung seiner periodischen Tätigkeit geht der Überwacher aus dem Verarbeitungsgerät heraus (Kästchen 606), wobei er ein »Entnisten«
ausführt, d. h. die Werte, die dem ausgewählten Prozeß zugehören, in die Register des Verarbeitungsgerätes
einbringt, an welchem er (der Überwacher) lief. Der ausgewählte Prozeß übernimmt dann den Lauf in diesem Verarbeitungsgerät.
Der Überwacher kann außerdem angereizt werden (Kästchen 607) als Folge einer Sofortunterbrechungsanforderung (als »Fehlerunterbrechung« bezeichnet), die
der Unterbrechereinheit 25 von einem der Verarbeitungsgeräte 10 übermittelt wird, und zwar als Folge
davon, daß dieses Verarbeitungsgerät einen Fehler entdeckt. In diesem Falle übt der Überwacher eine spezielle Fehlerroutine aus (Kästchen 6C«). Wenn die Fehlerroutine beendet ist, schreitet der Überwacher fort nach
den Kästchen 605 und 606, wie vorher. Das Hervorbringen einer Fehlerunterbrechung sowie den Aufbau der
Fehletrcatine werden später beschrieben.
Zusätzlich dazu, daß er als Folge eines Sofortunterbrechungssignals gefahren wird, kann der Überwacher
außerdem zu irgendeiner Zeit auf einen »Anruf« hin durch einen Prozeß gefahren werden, der zur Zeit an
einem der Verarbeitungsgeräte (Kästchen 609) läuft. Zum Beispiel:
(a) Der Prozeß kann verlangen, daß eine oder mehrere Aufgaben, die er erzeugt hat, an einen oder mehrere andere Prozesse weitergegeben wird bzw. werden.
(b) Der Prozeß kann vom Überwacher verlangen zu entscheiden, ob er (der Prozeß) weiterlaufen soll
oder ob er in den anhängigen, blockierten oder Ruhezustand versetzt werden soll.
Wird ein Anruf durchgeführt so wird der Überwacher an dem Verarbeitungsgerät betrieben, an welchem
der Prozeß lief, der den Anruf durchführte. Der Oberwacher prüft zuallererst die Ausgangsreihe von Aufga-
ben (Kästchen 610 und 611) des rufenden Prozesses. Sind irgendwelche derartigen Aufgaben vorhanden, so
entfernt der Oberwacher sie (Kästchen 612) von der Ausgangsreihe und führt sie (Kästchen 613) in die Eingangsreihe des entsprechenden Prozesses ein. Befindet
ίο sich der letztere Prozeß zu diesem Zeitpunkt im Ruhezustand (Kästchen 614), so aktiviert der Überwacher ihn
und versetzt ihn in den anhängigen Zustand (Kästchen 615), so daß dieser Prozeß laufen kann, wenn ein verfügbares Verarbeitungsgerät vorhanden ist
Sind keine Aufgabe in der Ausgangsreihe des rufenden Prozesses vorhanden oder wenn irgendwelche Aufgaben, die vorhanden waren, entfernt worder», sind,
schreitet der Oberwacher (Kästchen 616) fort nach einer der folgenden drei Abzweigungen, wie sie in dem
(I) Wenn der Anruf nur für den Überwacher bestimmt
war, um sich mit Ausgangsaufgaben zu befassen, so »entnistet« der Überwacher den rufenden Prozeß
und tritt aus, um dem rufenden Prozeß die Möglichkeit zu geben, den Lauf am Verarbeitungsgerät
(Kästchen 617) wieder aufzunehmen.
(II) Wenn ein nichtperiodischer Prozeß seine derzeitige Verarbeitung beendet so führt er einen »Aufruf
zum Beenden« aus, um dies dem Oberwacher anzuzeigen, in diesem Falle inspiziert der Überwacher
die Eingangsreihe des rufenden Prozesses (Kästchen 618,619), um zu ermitteln, ob noch irgendwelche Aufgaben in der Eingangsreihe vorhanden sind
oder nicht Sind noch Aufgaben vorhanden, dann wird der rufende Prozeß lediglich in den anhängigen Zustand (Kästchen 620) versetzt, während
dann, wenn keine Aufgaben mehr vorhanden sind, der rufende Prozeß in den Ruhezustand versetzt
*o wird (Kästchen 621). In jedem Falle schreitet der
Überwacher fort, den anhängigen Prozeß mit der höchsten Priorität (Kästchen 605) auszuwählen, der
an diesem Verarbeitungsgerät laufen wird, nachdem der Überwacher herausgegangen ist.
(Hl) Wenn ein periodischer Prozeß seine derzeitige Verarbeitung beendet hat, so führt er einen »Aufruf
zum Blockieren« aus, wobei er vom Überwacher verlangt, ihn in den blockierten Zustand zu versetzen, und zwar bis zum nächsten Taktintervall, bei
so welchem dieser periodische Prozeß für den Lauf fällig ist. Herrschen Überbelastungszustände vor,
so ist es möglich, daß der Prozeß nicht seine ganze derzeitige Verarbeitung vollendet, bevor sein nächster Taktanreiz fällig ist, wobei dieser Zustand als
ein »Überlauf« bekannt ist. Wenn ein »Aufruf zum Blockieren« ausgeführt wird, so führt der Überwacher eine Prüfung durch, um festzustellen, ob der
rufende Prozeß einen Überlauf ausgeführt hat (Kästchen 622, 023). Wenn nicht, wird der Prozeß
Μ blockiert, wie gefordert (Kästchen 625). Hat jedoch
der Prozeß einen Überlauf ausgeführt, so wird er lediglich in den anhängigen Zustand (Kästchen 624)
versetzt, so daß er sofort wieder anlaufen kann, sobald für ihn ein Verarbeitungsgerät verfügbar ist.
lsi einmal der rufende Prozeß blockiert, so wird er im
blockierten Zustand bleiben, selbst wenn weitere Aufgaben in der Zwischenzeit empfangen werden, und zwar
17 18
bis er durch den Oberwacher in der entsprechenden re-Zeitgebervorrichtung, die dann eine festgelegte Zeit-Taktperiode
oder aus irgendeinem anderen Grund ent- dauer lang (im typischen Fall 200 ms) läuft, es sei denn,
blockiert bzw. freigegeben wird. daß sie rückgestellt ist Diese Zeitgabe-Periode wird als
Wie vorher, wenn der rufende Prozeß blockiert oder »Zeitgabe (b)m bezeichnet Wenn das Fehlerunterbre-
anhängig gemacht worden ist, wählt der Oberwacher s chungssignal nicht beantwortet worden ist, wenn die
den anhängigen Prozeß der höchsten Priorität aus »Zeitgabe (b)a abläuft, so wird das Verarbeitungsgerät
(Kästchen 605), damit dieser im Verarbeitungsgerät eine Selbstprüfung wie folgt versuchen,
läuft, nachdem der Oberwacher herausgegangen ist Zuallererst wird der Fehlerkanal geschlossen Käst-
(Kästchen 606). chen 704), der gegenwärtige Inhalt der Register des
Es ergibt sich somit, daß der Oberwacher den Betrieb io Verarbeitungsgerätes wird eingenistet (Kästchen 705).
der Prozesse koordiniert, indem er sie in ihre entspre- und eine spezielle Selbstprüfung, als »MAZE (A)« be-
chenden Zustände versetzt und Aufgaben zwischen ih- zeichnet, wird am Verarbeitungsgerät betrieben. Zur
nen überträgt gleichen Zeit wird eine weitere Hardware-Zeitgebervorrichtung
getriggert wobei diese Vorrichtung für ei-
Ermittlung von Fehlern durch Verarbeitungsgeräte 15 ne festgelegte Zeitgabe-Periode, als »Zeitgabe (a)a bezeichnet,
läuft Die Startinformation für das MAZE-Pro-
AHe Register in jedem der Verarbeitungsgeräte 10 gramm wird in jedes Verarbeitungsgerät eingedrahtet
enthalten zwei Bytes, wobei jedes Byte aus acht Daten- Das MAZE-Programm läuft über eine Folge, die alle
bits und einem Paritätsbit besteht, welches andeutet, ob Instruktionen umfaßt welche das Verarbeitungsgerät
die Summe dt,-acht Datenbits gerade oder ungerade ist 20 ausführen kann, um alle Funktionen desselben zu prü-Paritätsprüfungen
werden mittels geeigneter Hardwa- fen, wobei es die Ergebnisse seiner Aktionen, sobald es
re-Vorrichtungen immer dann ausgeführt, wenn Daten läuft überprüft Befindet sich ein Fehler im Vererbeiin
irgendeines dieser Register eingeschrieben oder her- tungsgerät, so wird das MAZE· Programm entweder
ausgelesen oder zwischen diesen übertragen werden. fangen, stoppen oder in einer Schleife laufen. V/enn das
Wenn ein Fehler durch eine dieser Paritäts-Prüfvorrich- 25 Verarbeitungsgerät fängt während es das MAZE-Protungen
entdeckt wird, so erzeugt sie ein Fangsignal, gramm betreibt wir<* die MAZE ernein gestartet aber
welches innerhalb eines speziellen Satzes von Fang- der Zeitgabe (a) wird die Möglichkeit gegeben, weiter-
bzw. Trapregistem innerhalb des Verarbeitungsgerätes zulaufen; das Fangen würde dann weitergehen, bis die
gespeichert wird. Ein Fang- oder Trapsignal triggert Zeitgabe (a| abläuft. In ähnlicher Weise wird das Ineine
Hardware-Auffangstelle innerhalb des Mikropro- 30 Schleife-Laufen, wenn es auftritt, bis zum Ablauf der
gramms des Verarbeitungsgerätes, welches eine vorbe- Zeilgabe weiterlaufen. Wenn andererseits das Verarbeistimmte
Fehleraktion eif leitet, -Je noch beschrieben tungsgerät das Ende des /M4ZE-Program ms erreicht,
wird. dann führt es eine spezielle Instruktion aus, um ein er-
Eine solche Paritätsüberprüfung st in der Computer- rechnctes Ergebnis mit einem eingedrahteten Datentechnik
allgemein bekannt, und die Vorrichtungen zur 3a wort zu vergleichen.
Durchführung dieser Prüfungen sowie die entsprechen- Wenn das Verarbeitungsgerät das Ende der MAZE
den Auffangeinrichtungen im Mikroprogramm werden innerhalb der Zeitgabe (a) erreicht und das Ergebnis
daher im einzelnen nicht erläutert richtig errechnet so wird davon ausgegangen, daß das
Es soll nunmehr auf F i g. 7 Bezug genommen werden, Verarbeitungsgerät in Wirklichkeit nicht fehlerhaft ist
welche die Wirkungsweise eines der Verarbeitungsge- 40 — die Fehleranzeige kann beispielsweise von einem
rate 10 bei Ermittlung eines Fehlers veranschaulicht. In vorübergehenden Geräuschstoß herrühren —, und das
dieser Figur stellt das Kästchen 701 den Normalbetriet) Verarbeitungsgerät wird daher in den Dienst zurückgc-
des Verarbeitungsgerätes dar, während das Kästchen bracht (Kästchen 706), und zwar nach Erzeugung eines
702 das Erscheinen eines Fangsignals repräsentiert, das Ausdruckes, um den Wartungstechnikern das Erschei-
einen Paritätsfehler anzeigt. 45 nen des Fehlers anzuzeigen. Der unterbrochene Prozeß
Durch das Erscheinen eines solchen Fangsignals wird am Verarbeitungsgerät wird beim Start einer Routine
das Verarbeitungsgerät veranlaßt, anzuhalten (Käst- wieder begonnen, und zwar innerhalb des Prozesses, der
chen 703) und seine Unterbrechungseingänge von der als »roll-back-Routlne« (Wiederstart-Routine) bekannt
Unterbrechereinheit 25 her zu sperren, um auf diese ist. Diese Routine versucht, die notwendigen Arbeitsda-
Weise zu verhindern, daß sie unterbrochen wird. Das 50 ten für den Prozeß erneut zu speichern.
Verarbeitungsgerät übermittelt dann ein »offener Feh- Wenn das Verarbeitungsgerät das Ende der MAZE
lerkanak-Signal an seinen zugehörigen Fehlerkanal 22 innerhalb der Zeitgabe (a) nicht erreicht oder wenn das
und übermittelt gleichzeitig ein Sofort-Fehlerunterbre- errechnete Ergebnis falsch ist, so kehrt das Verarbei-
chungssignal an die Unterbrechereinheit 25. Unter nor- tungsgerät nach Kästchen 703 zurück und öffnet den
malen Umständen wird dieses Fehlerunterbrechungssi- 55 Fehlerkanal, erzeugt ein Fehlerunterbrechungssignal
gnal die Unterbrechung eines der anderen Verarbei- und läßt die Zeitgabe (b) wieder anlaufen. Diese Schleife
tungsgeräte 10 hervorrufen, das in diesem Augenblick setzt sich fort, bis entweder das Fehlerunterbrechungs-
mit dem Prozeß von niedrigster Priorität läuft, worauf- signal bei der Unterbrechung eines anderen Verarbei-
hin der Überwacher an diesem unterbrochenen Verar- tungsgerätes Erfolg hat oder bis der Fehler sich selbst
beitungsgerät betrieben wird (siehe Fig. 6, Kästchen so klärt und die MAZE(A) richtig beendet wird.
607). Wie oben erwähnt, wird unter normalen Umständen
In einigen Füllen kann jedoch das Fehlcnmtcrbre- ein durch ein Verarbcitungsgerät erzeugtes Fehlcruncliitngssigmi!
keinerlei Auswirkung haben. Dies kniin lerbrcchungssignul eine Unterbrechung desjenigen der
beispielsweise nach einem heftigen GeräuschsloB vor- anderen Verarbeitungsgcrülc hervorrufen, das in diekommen,
der alle Verarbeilungsgeräte beeinträchtigt. 65 sem Augenblick gerade den Prozeß von niedrigster
Als Vorkehrung gegen diese Möglichkeit iriggert das Priorität betreibt, wobei dadurch das Überwacherpro-Verarbeitungsgerät
zur gleichen Zeit, wo es das Fehler- gramm am letzteren Verarbeitungsgerät eingeführt
Unterbrechungssignal erzeugt, außerdem eine Hardwa- wird. Der F.infachheit halber wird das Verarbeitungsge-
rät, welches das FehJerunterbrechungssignal abgibt, als
»fehlerhaftes Verarbeitungsgerät« bezeichnet, während das Venarbeitungsgerät, welches den Überwacher auf
das Fchlerunterbrechungssignal hin betreibt, als »überwachendes Verarbeitungsgerät« bezeichnet wird.
Wie durch F i g. 6 angedeutet, führt das überwachende
Verarbeitungsgerät eine Fehlerroutine ein (Kästchen 608). Diese Routine ist in weiteren Einzelheiten in
F i g. 8 dargestellt. Die erste Aktion des überwachenden Verarbeitungsgerätes besteht darin. Zugang zum Feh- to
lerkanal 22 des fehlerhaften Verarbeitungsgerätes zu
erlangen!, und zwar durch Übermittlung der Adresse dieses Fehlerkanals an seinen Datenhauptweg 14, und
den Fehlerkanal dazu zu verwenden, die Zeitgabe (b) im fehlerhaften Verarbeitungsgerät (Kästchen 802) rückzustellen.
Dadurch wird verhindert, daß die Zeitgabe (b) abläuft, und das fehlerhafte Verarbeitungsgerät wird somit
daraa gehindert, seinen Fehlerkanal erneut zu schließen (Kästchen 704, F i g. 7).
Das überwachende Verarbeitungsgerät fragt dann (Kästchen 802) das fehlerhafte Verarbeitungsgerät über
den Fehlerkanal des letzteren ab, um festzustehen, ob es
zum Zeitpunkt des Fehlers normal lief oder ob es zu diesem Zeitpunkt die MAZE(A) betrieb. Wenn es normal
lief, so besteht die Wahrscheinlichkeit, daß dies nur ein vorübergehender Fehler (z. B. infolge Geräusches)
war, und das überwachende Verarbeitungsgerät fährt fort entlang einem Zweig 803, um das fehlerhafte Verarbeitungsgerät
in den Dienst zurückzubringen. (Das Auftreten des Fehlers wird jedoch durch das überwachende
Verarbeitungsgerät in einer Spezialtabelle im Kernspeicher 11 aufgezeichnet, und wenn ein gegebenes Verarbeitungsgerät
den Anschein erweckt, als habe es zu viele vorübergehende Fehler, so wird eine Fehlerdiagnose
eingeleitet werden.) Wenn andererseits das fehlerhafte Verarbeitungsgerät eine MAZE (A) zum Zeitpunkt des
Fehlers betrieb, so besteht eher die Wahrscheinlichkeit, daß der Fehler nicht ein vorübergehender ist, und das
überwachende Verarbeitungsgerät fährt daher fort entlang einem Ztveig 804, um eine Fehlerdiagnose einzuleiten.
Bevor es das fehlerhafte Verarbeitungsgerät wieder in den Dienst zurückbringt (Zweig 803), nimmt das überwachende
Verarbeitungsgerät eine Aktion vor, um den aufgegebenen Prozeß (d. h. den Prozeß, der am fehlerhaften
Ver&rbeitungsgerät zum Zeitpunkt des Fehlers gerade lief) für den Lauf wieder vorzubereiten. Der Fehler
kann so gewesen sein, daß ein Teil der Information (im Kernspeicher 11), der von dem Prozeß verwendet
wurde, verstümmelt wurde oder verlorengegangen ist, und in diesem Falle muß eine Aktion durchgeführt werden,
um die verlorene Information wiederherzustellen, bevor der Prozeß weiterlaufen kann. Für einige Fehler
kann jedoch diese Information nicht beeinträchtigt worden sein, und in diesem Falle kann der Prozeß an der
Stelle wieder gestartet werden, wo er abgebrochen wurde. Im letzteren Falle nennt man den Prozeß »wiederablauffähig«.
Beim Eintritt in den Zweig 803 liest das überwachende Verarbeitungsgerät zunächst (Kästchen 805) den In- e>o
halt der Fangregister des fehlerhaften Verarbeitungsgeräte!;, um festzustellen, welche der Fehlerprüfvorrichtungen
das Fangsignal verursachte, das die Fehlerunterbrechung einleitete. Das überwachende Verarbeitungsgerät
entscheidet dsm (Kästchen 806), ob dieser Fehler ω
von einer solchen Art ist oder nicht ist, daß er wahrscheinlich eine Verstümmelung der Information im
KcrnsDcichcr verursacht hat foder durch eine solche hervorgerufen worden ist); d. h. es bestimmt, ob der unterbrochene
Prozeß wiederablauffähig ist oder nicht. Wenn beispielsweise der Fehler auftrat, während gerade
die Information zwischen zweien der Verarbeiiungsgeräte-Registcr
übertragen wurde, und zwar enthing einem internen Hauptweg innerhalb des Vcrarbeitungsgerätes,
so ist es unwahrscheinlich, daß er den Kernspeicher beeinträchtigt hat, und der Prozeß wird als wiederablauffähig
angenommen. Wenn andererseits der Fehler auftrat, während der Kernspeicher adressiert wurde, so
ist anzunehmen, daß der Prozeß nicht wiederablauffähig ist
Wenn der Prozeß für wiederablauffähig gehalten wird (Kästchen 807), dann versetzt das überwachende
Verarbeitungsgerät ihn in den anhängigen Zustand, bereit, den Lauf an der Stelle zu starten, wo er stoppte, und
zwar immer dann, wenn ein Verarbeitungsgerät für ihn verfügbar ist Wenn andererseits der Prozeß nicht als
wiederablauffähig erachtet wird (Kästchen 808), dann versetzt ihn das überwachende Ver?xbeitungsgerät in
den anhängigen Zustand bereit, den t.auf vom Beginn einer speziellen Routine innerhalb des Prozesses zu
starten, als die Prozeß-RoII-back-Routine bezeichnet.
(Jeder Prozeß in der Anlage enthält eine solche Rollback-Routine, die so ausgelegt ist, daß sie notwendige
Arbeitsiviiormation für den Prozeß wiederherstellt, bevor
er in seinen Normalbetrieb zurückkehrt.) Davor jedoch führt das Überwacherprogramm selbst bestimmte
Operationen durch, um die Arbeitsinformation für den Prozeß wiederherzustellen. Das »Roll-back« (Wiederstarten)
wird in einem späteren Abschnitt im einzelnen beschrieben.
Wenn der aufgegebene Prozeß behandelt worden ist, so tritt der Überwacher aus diesem Bearbeitungsgerät
über Kästchen 605 und 606 in F i g. 6 aus, wie vorher beschrieben. Die Zeitgabe (b)\m fehlerhaften Verarbeitungsgerät
wird ablaufen, wobei sie dieses Verarbeitungsgerät veranlaßt, seinen Fehlerkanal (Kestchen 704,
Fig. 7) zu schließen und das MAZE-Programm (A) zu
betreiben (Kästchen 705). Läuft die MAZE richtig, dann ist d·.-.." Fehler wahrscheinlich ein vorübergehender, und
das Verarbeitungsgerät wird daher in den Dienst zurückgebracht, wie vorher beschrieben (Kästchen 706).
Versagt jedoch die MAZE, so wird ein Fehlerunterbrechungssignal
erneut getriggert.
Es soll wiederum auf Fig.8 Bezug genommen werden.
Wie bereits erwähnt, schreitet, wenn das fehlerhafte Verarbeitungsgerät eine MAZE (A) zum Zeitpunkt
des Fehlers betrieb, das überwachende Verarbeitungsgerät entlang dem Zweig 804 fort, um eine Fehlerdiagnose
einzuleiten. Dies geschieht durch Erzeugung (Kästchen 809) einer »Diagnose«-Aufgabe für einen
spezie''c;n Prozeß, der als »Fehlerkanalprozeß« bezeichnet
wird, und durch Einstellen dieses Fehlerkanalprozesses in den anhängigen Zustand, bersit, immer
dann zu laufen, wenn für ihn ein Verarbeiiungsgerät zur Verfügung steht. Der Fehlerkanalprozeß wird unten im
nächsten Abschnitt beschrieben.
Hat es die Fehler diagnose in dieser Weise eingeleitet, so schreitet das Überwacherprogramm nach Kästchen
605 und 606 (F i g. 6) fort, wie vorher.
Fehlerkanalprozeß
Es sei nunmehr auf F i g. 9 Bezug genommen, die ein Flußdiagramm des Fehierkanalprozesses darstellt.
Wie durch Kästchen 901 angedeutet, befindet sich dzr
Fehlerkanalprozeß normalerweise im Ruhezustand. Wenn ihm eine DiaEnoseaufgabe (Kästchen 9021 erteilt
wird, so wird der Prozeß in den anhängigen Zustand versetzt, bereit, an irgendeinem Verarbeitungsgerät 10
zu laufen, das für ihn verfügbar ist. Dieses Verarbeitungsgerät ist nicht unbedingt das gleiche wie das
»überwachende Verarbeitungsgerät«, das oben erwähnt wurde.
Die erste Aktion des Fehlerkanaiprozesses, wenn er betrieben wird (Kästchen 903), besteht darin, den Fehlerkanal
des fehlerhaften Verarbeitungsgerätes zu adressieren und vorbestimmte Daten in die Register
dieses Verarbeitungsgerätes über den Fehlerkanal einzuschreiben, um auf diese Weise das fehlerhafte Verarbeitungsgerät
in Bereitschaft zu versetzen, ein spezielles diagnostisches Programm auszuführen, welches als
M/4ZE-Programm (B) bezeichnet wird. Dieses MAZE-Programm
ist ähnlich der MAZE(A), und es kann genau die gleiche Folge von Instruktionen verwenden. Während
jedoch die MAZE(A)durch das fehlerhafte Verarbeitungsgerät
unter eigener Steuerung und Kontrolle betrieben wird, wird die MAZE(B) unter der Steuerung
des Fehlerkanaiprozesses betrieben, wie noch beschrieben wird.
Der Prozeß nimmt außerdem eine Rückstellung der Zeitgabe (b) im fehlerhaften Verarbeitungsgerät vor
(Kästchen 904). Dadurch wird die Zeitgabe (b) am Ablaufen
gehindert und der Fehlerkanal offengehalten.
Nachdem dies geschehen ist, macht der Fehlerkanalprozeß dann einen »Aufruf zum Blockieren« (Kästchen
905) für das Überwacherprogramm (siehe F i g. 6). Der Überwacher wird dann den Fehlerkanalprozeß in den
blockierten Zustand (Kästchen 906) versetzen, und zwar für eine Zeitdauer von 66 ms, an deren Ende der Prozeß
wieder zurück in den anhängigen Zustand versetzt wird, bereit, wiederum an irgendeinem verfügbaren Verarbeitungsgerät
10 zu laufen (was nicht unbedingt dasjenige Verarbeitungsgerät ist, an welchem er gerade lief, als
der »Aufruf zum Blockieren« erfolgte).
Wenn der Prozeß wieder läuft, besteht seine erste Aktion (Kästchen 907) darin, einen »!nstruklion-oneshotw-Befeh!
dem Fehlerkanal des fehlerhaften Verarbeitungsgerätes zu übermitteln, wodurch dieses Verarbeitungsgerät
veranlaßt wird, eine Instruktion der MA ZE (B) auszuführen. Der Prozeß prüft dann (Kästchen
908) den Inhalt der Register des fehlerhaften Verarbeitungsgerätes, um nachzuprüfen, ob die Instruktion richtig
ausgeführt wurde. Ist kein Fehler vorhanden, so prüft der Prozeß (Kästchen 909), ob das Ende der MAZE(b)
erreicht worden ist, und kehrt zum Kästchen 904 zurück wenn dies nicht der Fall ist Diese Schleife setzt sich fort,
bis entweder ein Fehler entdeckt oder das Ende von MAZE (B) ohne irgendwelche Fehler erreicht wird. Es
ist ersichtlich, daß die Zeitgabe (b) etwa einmal alle 66 ms rückgestellt wird (Kästchen 904), und es wird ihr
daher nicht die Möglichkeit gegeben, abzulaufen, und der Fehlerkanal wird offengehalten.
Wenn der Prozeß die unrichtige Ausführung einer Instruktion entdeckt (Kästchen 908), wiederholt er diese
Instruktion, und zwar immer nur eine Übertragung zu einer Zeit, um die genaue Stelle der MAZE(B) zu entdecken,
an welcher der Fehler auftrat Zuerst (Kästchen 910) nimmt der Prozeß eine Rückstellung der Zeitgabe
(b) vor und macht dann (Kästchen 911) einen »Aufruf zum Blockieren«. Der Fehlerkanalprozeß wird dann für
6b ms blockiert (Kästchen 912). und zwar durch den \ ihcrwiiohcT. Am l-'ndc dieser Periode wird der Pro/eß
i-imblockicri b/.w. freigegeben und läuft an irgendeinem
verfügbaren Verarbeitungsgerät Wenn der Prozeß wieder läuft, besteht seine erste Aktion (Kästchen 913) darin,
einen »Übertragungs-one-shot«-Befehl dem Fehlerkanal des fehlerhaften Verarbeitungsgerätes zu übermitteln,
wobei dieses Verarbeitungsgeräi veranlaßt wird, eine Übertragung der letzten Instruktion auszuführen.
Der Prozeß überprüft dann (Kästchen 914) den Inhalt der Register des fehlerhaften Verarbeitungsgerätes,
um festzustellen, ob die Übertragung richtig ausgeführt wurde oder nicht. Ist kein Fehler vorhanden, so
wird eine Prüfung (Kästchen 915) durchgeführt, um fcstzustellen, ob das Ende der Instruktion erreicht worden
ist, und wenn nicht, kehrt der Prozeß nach Kästchen 910 zurück. Diese Schleife dauert an, bis entweder eine fehlerhafte
Übertragung gefunden oder das Ende der Instruktion erreicht ist
Als nächstes (Kästchen 916) vergleicht der Prozeß die an den Kästchen 908 und 914 ermittelten Fehler mit
einer L.istc von Fehlern, die vorher im fehlerhaften Verarbcilungsgerät
ermittelt worden sind, wobei diese Liste in einem Kernspeicher Ii gehalten wird, ist der Fehler
ein neuer, so erzeugt der Prozeß einen Ausdruck (Kästchen 917), um diesen Fehler den Wartungstechnikern
zur Kenntnis zu bringen, und führt den Fehler in die Liste (Kästchen 918) ein, um sicherzustellen, daß er
nicht wiederholt ausgedruckt wird.
Der Fehlerkanalprozeß macht dann (Kästchen 919) einen »Aufruf zum Beenden« für den Überwacher (siehe
Fig.6) und wird dann in den Ruhezustand zurückversetzt
(Kästchen 901). Die Folge davon ist, daß der Zeitgabe (b) im fehlerhaften Verarbeitungsgerät die
Möglichkeit gegeben wird, abzulaufen, woraufhin dieses Verarbeitungsgeräi seinen Fehlerkanal schließen und
eine MAZE(A) betreiben wird, wie vorher beschrieben (siehe F i g. 7).
Wenn unter weiterer Bezugnahme auf Fig.9 die
MAZE (B) beendet ist. ohne daß irgendwelche Fehler entdeckt worden sind (Kästchen 909), dann Starlet der
Fehierkanaiprozcß einen nfiäSSüfigs-rriäivörgang, um
die verschiedenen Paritäts-Prüfschaltungen innerhalb des fehlerhaften Verarbeitungsgerätes zu überprüfen.
Dies wird dadurch ausgeführt daß eine vorbeslimmtc »Paritätsinkorrektw-Information in jedes der Verarbeitungsgeräte-Register
nacheinander eingeschrieben wird, um zu sehen, ob diese durch die zugehörigen Paritäts-Prüfschaltungen
erfaßt wird. Zunächst (Kästchen
920) nimmt der Fehlerkanalprozeß eine Rückstellung der Zeitgabe (b) im fehlerhaften Verarbeitungsgerät
vor, um den Fehlerkanal offenzuhalten. Der Prozeß macht dann (Kästchen 921) einen »Aufruf zum Blockieren«,
woraufhin er in den blockierten Zustand für 66 ms
so versetzt wird (Kästchen 922). Wenn der Prozeß »-feder
läuft, führt er eine Erfassungsprüfung an einem ausgewählten der Register (Kästchen 923) aus und prüft das
Fangregister, um festzustellen, ob der Paritätsfehler richtig ermittelt ist (Kästchen 924). Ist dies der Fall, so
prüft der Prozeß, ob alle erforderlichen Erfassungsprüfungen durchgeführt worden sind (Kästchen 925).
Nimmt man an, daß noch mehr Prüfungen durchzuführen sind, so kehrt der Prozeß auf Kästchen 920 zurück,
um die nächste Prüfung durchzuführen.
Wenn ein Fehler an Kästchen 924 gefunden wird,
dann schreitet der Prozeß wie vorher nach Kästchen 916 bis 919 fort um den Fehler auszudrucken, wenn es
sich um einen neuen handelt bevor ein »Aufruf zum Beenden« gemacht wird.
h'» Die oben beschriebene Fchleraktion kann auch aufgrund
anderer Fehleranzeigen als Paritäts-Prüfungen eingeleitet werden: Zum Beispiel aufgrund einer internen
Prüfung innerhalb des Prozesses selbst
Es sei erneut auf Fig. 7 Bezug genommen: Wenn ein
vom Verarbeitungsgerät ermittelter Fehler von solcher Art ist, daß er wahrscheinlich in Wirklichkeit nicht durch
dieses Verarbeitungsgerät erzeugt worden ist (Kästchen
707), so kann die Fehleraktion modifiziert werden, so daß das Verarbeitungsgerät eine Selbstprüfung versucht.
Tit einer MAZE (A) Zuemi, und nur den Fehlerkanal
öflnct, um die Aktion durch ein anderes Verarbeitungsgerät
anzufordern, wenn die MAZE (A) fehlgeht. Beispielsweise kann die Anlage so eingerichtet sein, daß
sie eine Fehleranzeige erzeugt, sollte irgendein Prozeß versuchen, Zugang zu einem Teil der Arbeitsspeicherung
zu erhalten, der ihm verwehrt ist, z. B. weil er ein Teil des Arbeitsraumes eines anderen Prozesses ist. Ein
solcher »Adreß-Schutzausfall« kann wegen eines Fehlers eintreten, der auftrat, als der Prozeß vorher an einem
anderen Verarbeitungsgerät lief, oder sogar wegen eines Software-Fehlers. Somit versucht im Falle eines
derartigen Adreß-Schutzausfalles das Verarbeitungsgerät eine Selbstprüfung, bevor es eine Diagnose anfordert.
»Roll-back« (Wiederstart)
Unter bestimmten Fehlcrbedingungen kann einem Prozeß ein gewisser Teil seiner Information verstümmelt
werden oder verlorengehen. In einer solchen Situation wird der Prozeß unterbrochen und am Beginn einer
Spezialroutine innerhalb des Prozesses wieder gestartet, die als Prozeß-Roll-back-Routine bezeichnet wird.
Jeder Prozeß in der Anlage enthält eine derartige Rollback-Routine,
die so ausgelegt ist, daß sie die nötige Arbeitsinformation für den Prozeß wiederherstellt, bevor
dieser in seinen Normalbetrieb zurückkehrt.
Eine Situation, in welcher ein Prozeß unterbrochen und zum Beginn seiner Roll-back-Routine wieder gestartet
werden kann, wurde bereits beschrieben: Das heißt als eine Folge der Ermittlung eines Fehlers durch
Hardware-Schaltungen innerhalb des Verarbeitungsgerätes iO, in welchem der Prozeß zum Zeitpunkt des
Fehlers lief. Ein Roll-back kann auch in anderer Weise eingeleitet werden, z. B. kann das Überwacherprogramm
so eingerichtet werden, daß es verschiedene Prüfungen am Verlauf der Prozesse durchführt, und
wenn es einen Fehler entdeckt, der einen oder mehrere der Prozesse beeinträchtigt, so kann es entscheiden, jene
Prozesse wieder zu starten. Wenn somit ein Prozeß eine Aufgabe erzeugt und den Überwacher anruft, diese
Aufgabe einem anderen Prozeß (siehe Fig.6) zu überlassen,
so kann der Überwacher überprüfen, ob der rufende Prozeß tatsächlich ermächtigt ist, Aufgaben an
diesen anderen Prozeß zu übergeben. Ist der rufende Prozeß nicht befugt, dies zu tun, so kann der Überwacher
dann den rufenden Prozeß am Beginn seiner Rollback-Routine wieder starten. Als ein anderes Beispiel
kann das Roll-back (Wiederstarten) eines Prozesses durch das Überwacherprogramm aufgrund einer Anforderung
vom Prozeß selbst eingeleitet werden, und zwar als Folge des Versagens von internen Prüfungen innerhalb
des Prozesses.
Es soll nunmehr auf Fig. 10 Bezug genommen werden, die ein Flußdiagramm eines typischen Prozesses in
der Anlage darstellt und dessen Roll-back-Routine zeigt. Es sei angenommen, daß dieser Prozeß ein solcher
ist, der bestimmte Verarbeitungsfunktionen ausführt, die den Aufbau von Ferngesprächen in einer Fernsprechvermittlungsanlage
betreffen. Diese Verarbeitungsfunktionen bilden die normale Routine des Prozesses
und werden durch das Kästchen 101 in F i g. 10 dargestellt. Das Kästchen 102 repräsentiert den Ruhezustand
des Prozesses. Wenn dem Prozeß dann eine Aufgabe angewiesen wird (Kästchen 103), dann wird er in
den anhängigen Zustand versetzt (Kästchen 104). Der Prozeß wird nunmehr an irgendeinem der Verarbeitungsgeräte
10 (Fig. 1) laufen, das für ihn verfügbar ist. Wenn der Prozeß läuft, so startet er bei Kästchen 105,
welches als »Normalstart« bezeichnet ist. Hat er sich mit einer Aufgabe befaßt, dann entscheidet der Prozeß
ίο (Kästchen 106), ob noch irgendwelche Aufgaben in seiner
Eingangsreihe von Aufgaben vorhanden sind, und wenn dies so ist, dann kehrt er zum Normalstart (Kästchen
105) zurück. Sind keine Aufgaben mehr vorhanden, so macht der Prozeß einen »Aufruf zum Beenden«
(Kästchen 107) für den Überwacher und wird in den Ruhezustand zurückversetzt.
Dem Prozeß sind bestimmte Bereiche des Kernspeichers
11 (Fi g. 1) als Arbeitsspeicher zugeordnet, in welchen
er seine Arbeitsinformation hält. Diese Arbeitsinformation kann beispielsweise Details der Zustände einer
großen Anzahl von Leitungskreisen 19 in der Anlage wie auch andere Informationen umfassen. Von einigen
der wichtigeren Arbeitsinformationen ist eine Duplikatkopie an einem der Trommelspeicher 12 gespeichert.
Jedoch ist eine Duplikatkopie nicht für die Einzelheiten der Leitungskreise vorgesehen.
Wenn ein Fehler in der Anlage entdeckt wird, der wahrscheinlich die Arbeitsinformation des Prozesses in
den Kernspeichern 11 verstümmelt oder gelöscht hat, dann wird eine Roll-back-Aktion wie folgt vorgenommen.
Zunächst ist das Überwacherprogramm in der Weise wirksam, daß es die Information im Kernspeicher,
welche eine Duplikatkopie am Trommelspeicher hat, mit einer von der Trommel erhaltenen frischen Kopie
ersetzt. Dann versetzt das Überwacherprogramm den Prozeß in den anhängigen Zustand, bereit, wieder
zu laufen, wenn ein Verarbeitungsgerät verfügbar wird. Wenn der Prozeß wieder läuft, so startet er am Beginn
seiner Roll-back-Routine, wie durch das Kästchen 108 in Fig. 10 dargestellt. In diesem besonderen Beispiel
wirkt die Roll-back-Routine in der Weise, daß sie die Leitungskreise abfragt, um auf diese Weise die Information
im Kernspeicher 1!, welche die Zustände dieser Kreise betrifft, zu rekonstruieren. Jeder der Leitungskreise
19 hat drei »Abfrage«-Drähte, die als die Y-, S- und NS-Drähte bezeichnet werden und für jedes beliebige
der Verarbeitungsgeräte 10 über dessen Eingangs/ Ausgangs-Hauptweg 14 und den entsprechenden Eingangs/Ausgangs-Kanal
15 sowie den Unterkanal 16
so (siehe Fig. I)zugänglich sind. Jeder dieser Drähte trägt
ein Binärsignal, welches den Zustand eines bestimmten Relais innerhalb des Leitungskreises wiedergibt und somit
eine Information bezüglich des augenblicklichen Zustandes des Leitungskreises wie folgt enthält:
Y = 1 bedeutet, daß ein Anruf durch den Leitungskreis fortschreitet; V=O bedeutet, daß der Leitungskreis
leerläuft
S = 1 bedeutet daß es sich um einen abgehenden Anruf handelt; 5=0 bedeutet einen ankommenden
Anruf.
(Ill) Im Falle eines abgehenden Anrufs bedeutet NS =
0, daß der Leitungskreis sich im »Sprech«-Zustand befindet (d. h, daß die Verbindung völlig aufgebaut
ist); NS — 1 bedeutet entweder, daß der Leitungskreis leerläuft oder daß an ihm ein abgehender Anruf
aufgebaut wird, der jedoch noch nicht vollständig aufgebaut ist
25 26
Die Roll-back-Roiitine fragt (Kästchen 110) jeden der
Leitungskreise 19 ab, und zwar durch Anlegen der entsprechenden Kanal- und Unterkanal-Adressen an die
»Adreß« Drähte des Eingangs/Ausgangs-Hauptweges 14. Dadurch werden die Signale von den Y, S- und
NS-Drähten an dds Verarbeitungsgerät (an welchem die
Routine läuft) über die »Datenrückkehr«-Drähte des Hauptweges nickübermittelt. Als nächstes prüft die
Routine den Wert des Signals vom V-Drahl her (Kästchen 111). Wenn K=O ist, so ist anzunehmen, daß der
Leitungskreis leerläuft. Wenn V-1 ist, so prüft die Routine den Wert des Signals vom S-Draht her (Kästchen
112), und wenn 5-0 ist, so ist anzunehmen, daß der Leitungskreis sich im Zustand eines ankommenden Gesprächs befindet. Wenn S= 1 ist, dann prüft die Routine
den Wert des vom NS- Draht herkommenden Signals (Kästchen 113), und wenn NS=O ist, dann ist anzunehmen, daß sich der Leitungskreis im Zustand des abgehenden Gesprächs befindet. Wenn /VS= i isi, dann i»i
anzunehmen, daß sich der Leitungskreis im Freizustand befindet. Er befindet sich in Wirklichkeit wahrscheinlich
in einem gewissen Stadium des Aufbaus eines abgehenden Anrufs, aber es ist unmöglich, aus den Signalen an
den drei »Abfrage«-Drähten genau zu sagen, in welchem Stadium er sich befindet. In diesem FaIi wird daher
der abgehende Anruf, der im Aufbau begriffen war, als Folge des Fehlers verlorengehen. Es ist jedoch zu berücksichtigen, daß nur eine sehr kleine Anzahl von Anrufen auf diese Weise verlorengehen wird, da es viel
wahrscheinlicher ist, daß sich der Leitungskreis entweder in seinem »Sprech«-Zustand oder seinem Freizustand befindet.
Nach Durchführung dieser Prüfungen an den Y-, S- und Λ'5-Signalen adressiert die Routine die Speicherstelle im Kernspeicher 11, die dem in Frage stehenden
Leitungskreis zugeordnet ist, und schreibt ein Datenwort ein, v/e!ches je nach Fa!! dem »Freizustand«, »abgehenden Gespräch« oder »ankommenden Gespräch«
entspricht (Kästchen 114,115 und 116).
Die Routine führt dann eine Prüfung durch, um festzustellen, ob sie alle Leitungskreise abgetastet hat
(Kästchen 117), und wemi nicht, so kehrt sie nach Kästchen 110 zurück, um einen anderen Leitungskreis abzufragen. Sind alle Leitungskreise abgetastet worden, so
wird das Roll-back beendet, und der Prozeß läuft von seinem Normalstart 105 aus weiter.
Es sei darauf hingewiesen, daß unterschiedliche Prozesse unterschiedliche Roll-back-Routinen enthalten,
und zwar abhängig von den Erfordernissen jedes besonderen Prozesses. So können andere Prozesse Roll-back-
Routinen zum Abtasten der Zustände von anderen peripheren Einrichtungen als Leitungskreisen enthalten;
z. B. Schaltkreise 18 oder Sender und Empfänger 20 (Fig. 1).
Das »Roll-back« ist Gegenstand der GB-PS 14 34 187.
Claims (7)
1. Anordnung zur Fehlerüberwachung in einer Mehrfach-Datenverarbeitungsanlage mit einer Vielzahl
von unabhängigen Daten-Verarbeitungsgeräten, die je einen Datenanschluß und einen Überwachungsanschluß
aufweisen und je unter unabhängiger Programmsteuerung arbeiten, mit einem allen Verarbeitungsgeräten gemeinsamen Datenspeicher,
zu dem jedes der Verarbeitungsgeräte Zugang hat, mit einer Vielzahl von Daten-Hauptwegen, und
zwar einen für jedes Verarbeitungsgerät, zum Obertragen
von Daten nach den Daten-Anschlüssen der entsprechenden Verarbeitungsgeräte und von die- is
sen weg, mit einer Vielzahl von Eingangs/Ausgangs-Kanälen, die mit den Daten-Hauptwegen verbunden
sind, wobei jedes Verarbeitungsgerät dadurch Zugang zu irgeÄ-jeinem der Kanäle über seinen jeweiligen
Daten- Ksuptwsg hat, und mit einer Vielzahl von
Fehlerkanälen, von denen jeder einem entsprechenden der Verarbeitungsgeräte zugeordnet ist und
durch Instruktionen von seinem zugeordneten Verarbeitungsgerät geöffnet oder geschlossen werden
kann, wobei jeder Fehlerkanal einerseits mit dem Überwachungsanschluß seines zugehörigen Verarbeitungsgerätes
und andererseits mit dem Daten-Hauptweg von zumindest einem anderen Verarbeitungsgerät
verbunden ist, derart, daß der Betrieb des zugehörigen '''erarbeitungsgerätes durch dieses andere
Verarbeitungsgerät überwacht werden kann, wenn der Fehlerkanal geöffnet ist, der Überwachungsanschluß
jedes Veravbeitnjngsgerätes Daten aus einer Vielzahl von Registern innerhalb des Verarbeitungsgerätes
trägt und jeder Fehlerkanal MuI-tiplex-Einrichtungen zum Auswählen von Daten aus
einem der Register im zugehörigen Verarbeitungsgerät auf eine vom anderen Verarbeitungsgerät
über deren Daten-Hauptweg empfangene Instruktion hin aufweist, dadurch gekennzeichnet,
daß jeder Fehlerkanal (22) Einrichtungen (239. 244) zum Rückübermitteln der ausgewählten Daten
über den Daten-Hauptweg (14) des anderen Verarbeitungsgerätes (10) aufweist.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß jedes Verarbeitungsgerät (10) eine
Konsole (24) mit einer Vielzahl von Steuerungen und einer Anzeige aufweist, daß die Konsole (24) mit
dem jeweiligen Überwachungsanschluß (23) des Verarbeitungsgerätes (10) verbunden ist, wenn der
Fehlerkanal (22) geschlossen ist, derart, daß der Betrieb dieses Verarbeitungsgerätes (10) manuell von
der Konsole (24) aus überwacht werden kann, und daß jeder der Fehlerkanäle (22) außerdem eine entsprechende
Einrichtung (218,221) zum Trennen der Konsolen-Steuerungen von dein Überwachungsnnschluß
(23) des zugehörigen Verarbeitungsgerätes (10) aufweist, wenn der Fehlerkanal (22) geöffnet ist.
3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Daten in jedem der Rcgi- w)
stcr aus einer Vielzahl von Datenbits und einem Paritäts-Prüfbit
bestehen und daß die Einrichtung (239, 244) /um Rückübermittcln der ausgewählten Daten
über einen Datcn-Hauptweg (14) so eingerichtet ist, daß sie diese ausgewählten Daten gleichzeitig mit bs
einer weiteren Information übermittelt, um anzuzeigen, ob die ausgewählten Daten paritätsgerecht sind
oder nicht.
4. Anordnung nach einem der Ansprüche I bis 3, dadurch gekennzeichnet, daß jeder der Eingangs/
Ausgangs-Kanäle (. j) und der Fehlerkanäle (22), der mit einem gegebenen der Daten-Hauptwege (14)
verbunden ist, eine ihm zugeordnete eindeutige Adresse aufweist, und daß jeder dieser Kanäle mit
einer logischen Decodierungsschaltung (205) zum Erkennen seiner eigenen Adresse ausgerüstet ist,
wenn diese dem Daten-Hauptweg (14) durch das entsprechende Verarbeitungsgerät (10) übermittelt
wird.
5. Anordnung nach einem der Ansprüche 1 bis 4, gekennzeichnet durch eine Unterbrechereinheit (25)
zum Empfangen von Dienstanforderungen von irgendeinem der Verarbeitungsgeräte (10) und zum
Auswählen eines anderen dieser Verarbeitungsgeräte (10), damit dieses sich mit der Anforderung befaßt,
wobei jedes der Verarbeitungsgeräte dazu in der Lage ist, in ihm auftretende Fehler festzustellen, und
bei Auftreten eines solchen Fehlers veranlaßt wird, sich selbst vom Normalbetrieb auszuschließen, ihren
zugehörigen Fehlerkanal (22) zu öffnen und eine Anforderung des Dienstes der Unterbrechereinheit (25)
zu übermitteln.
6. Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß ein Verarbeitungsgerät (10), wenn es
durch die Unterbrechereinheit (25) ausgewählt ist, um sich mit einer Dienstanforderung für ein anderes
Verarbeitungsgerät (10) zu befassen, Zugang zum anfordernden Verarbeitungsgerät (10) über den
Fehlerkanai (22) des anfordernden Verarbeilur.gsgerätes
(10) erhält und daraufhin das anfordernde Verarbeitungsgerät (10) vorbestimmten Prüfungen unterwirft,
um den Zustand des anfordernden Verarbeitungsgerätes (10) zu diagnostizieren.
7. Anordnung nach Anspruch 5 oder 6, dadurch gekennzeichnet, daß jedes Verarbeitungsgerät (10)
ferner eine Zeitgebereinrichtung rur Zeitsteuerung
einer vorbestimmten Periode enthält, wobei diese Periode jedesmal dann gestartet wird, wenn der zugeordnete
Fehlerkanal (22) geöffnet ist, und erneut gestartet wird, wenn ein Zugang zum Verarbeitungsgerät
(10) über den Fehlerkanal (22) durch ein anderes Verarbeitungsgerät (10) hergestellt wird,
wobei durch Ablauf der Periode der Fehlerkanal (22) wieder geschlossen wird und das Verarbeitungsgerät
(10) veranlaßt wird, eine Seibstprüfung zu beireiben,
woraufhin bei richtiger Beendigung der Selbstprüfung das Verarbeitungsgerät (10) in den Normalbctricb
zurückkehrt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1936472A GB1434186A (en) | 1972-04-26 | 1972-04-26 | Multiprocessor computer systems |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2320698A1 DE2320698A1 (de) | 1973-11-08 |
DE2320698C2 true DE2320698C2 (de) | 1985-03-21 |
Family
ID=10128110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2320698A Expired DE2320698C2 (de) | 1972-04-26 | 1973-04-24 | Anordnung zur Fehlerüberwachung in einer Mehrfach-Datenverarbeitungsanlage |
Country Status (7)
Country | Link |
---|---|
US (1) | US3876987A (de) |
BE (1) | BE798782A (de) |
CA (1) | CA984519A (de) |
DE (1) | DE2320698C2 (de) |
GB (1) | GB1434186A (de) |
SE (1) | SE429692B (de) |
ZA (1) | ZA732851B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3906846A1 (de) * | 1989-03-03 | 1990-09-06 | Bodenseewerk Geraetetech | Redundante rechneranordnung fuer steuersysteme |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5248046B2 (de) * | 1974-04-17 | 1977-12-07 | ||
US3984819A (en) * | 1974-06-03 | 1976-10-05 | Honeywell Inc. | Data processing interconnection techniques |
US4015246A (en) * | 1975-04-14 | 1977-03-29 | The Charles Stark Draper Laboratory, Inc. | Synchronous fault tolerant multi-processor system |
US4023142A (en) * | 1975-04-14 | 1977-05-10 | International Business Machines Corporation | Common diagnostic bus for computer systems to enable testing concurrently with normal system operation |
US4177520A (en) * | 1975-08-14 | 1979-12-04 | Hewlett-Packard Company | Calculator apparatus having a single-step key for displaying and executing program steps and displaying the result |
US4315311A (en) * | 1975-10-28 | 1982-02-09 | Compagnie Internationale Pour L'informatique Cii-Honeywell Bull (Societe Anonyme) | Diagnostic system for a data processing system |
GB1584003A (en) * | 1976-06-07 | 1981-02-04 | Amdahl Corp | Data processing system and information scanout |
US4228496A (en) * | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor system |
DE2647367C3 (de) * | 1976-10-20 | 1982-12-09 | Siemens AG, 1000 Berlin und 8000 München | Redundante Prozeßsteueranordnung |
US4066883A (en) * | 1976-11-24 | 1978-01-03 | International Business Machines Corporation | Test vehicle for selectively inserting diagnostic signals into a bus-connected data-processing system |
JPS53121441A (en) * | 1977-03-31 | 1978-10-23 | Toshiba Corp | Duplicated information processor |
USRE31407E (en) | 1978-05-10 | 1983-10-04 | Tesdata Systems Corporation | Computer monitoring system |
US4209839A (en) * | 1978-06-16 | 1980-06-24 | International Business Machines Corporation | Shared synchronous memory multiprocessing arrangement |
JPS594050B2 (ja) * | 1979-01-25 | 1984-01-27 | 日本電気株式会社 | 情報処理システム |
US4356546A (en) * | 1980-02-05 | 1982-10-26 | The Bendix Corporation | Fault-tolerant multi-computer system |
CA1179069A (en) * | 1981-04-10 | 1984-12-04 | Yasushi Fukunaga | Data transmission apparatus for a multiprocessor system |
DE3208573C2 (de) * | 1982-03-10 | 1985-06-27 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | 2 aus 3-Auswahleinrichtung für ein 3-Rechnersystem |
US4488303A (en) * | 1982-05-17 | 1984-12-11 | Rca Corporation | Fail-safe circuit for a microcomputer based system |
US4539682A (en) * | 1983-04-11 | 1985-09-03 | The United States Of America As Represented By The Secretary Of The Army | Method and apparatus for signaling on-line failure detection |
US4583222A (en) * | 1983-11-07 | 1986-04-15 | Digital Equipment Corporation | Method and apparatus for self-testing of floating point accelerator processors |
DE3639055C2 (de) * | 1986-11-14 | 1998-02-05 | Bosch Gmbh Robert | Verfahren zur Betriebsüberwachung und Fehlerkorrektur von Rechnern eines Mehrrechnersystems und Mehrrechnersystem |
US4885739A (en) * | 1987-11-13 | 1989-12-05 | Dsc Communications Corporation | Interprocessor switching network |
US5050070A (en) * | 1988-02-29 | 1991-09-17 | Convex Computer Corporation | Multi-processor computer system having self-allocating processors |
US5159686A (en) * | 1988-02-29 | 1992-10-27 | Convex Computer Corporation | Multi-processor computer system having process-independent communication register addressing |
JP2996440B2 (ja) * | 1988-03-18 | 1999-12-27 | 富士通株式会社 | データ処理システムの診断方式 |
GB2228114B (en) * | 1989-02-13 | 1993-02-10 | Westinghouse Brake & Signal | A system comprising a processor |
JPH02242469A (ja) * | 1989-03-16 | 1990-09-26 | Fujitsu Ltd | 対向装置監視方式 |
JPH07120292B2 (ja) * | 1989-06-19 | 1995-12-20 | 日本電気株式会社 | 情報処理システム |
US5193187A (en) * | 1989-12-29 | 1993-03-09 | Supercomputer Systems Limited Partnership | Fast interrupt mechanism for interrupting processors in parallel in a multiprocessor system wherein processors are assigned process ID numbers |
JPH05508046A (ja) * | 1990-06-11 | 1993-11-11 | クレイ、リサーチ、インコーポレーテッド | 多重プロセッサシステムのための高速割込み機構 |
JPH04156641A (ja) * | 1990-10-20 | 1992-05-29 | Fujitsu Ltd | レジスタアクセス装置 |
CA2106280C (en) * | 1992-09-30 | 2000-01-18 | Yennun Huang | Apparatus and methods for fault-tolerant computing employing a daemon monitoring process and fault-tolerant library to provide varying degrees of fault tolerance |
US5581794A (en) * | 1992-12-18 | 1996-12-03 | Amdahl Corporation | Apparatus for generating a channel time-out signal after 16.38 milliseconds |
US6161202A (en) * | 1997-02-18 | 2000-12-12 | Ee-Signals Gmbh & Co. Kg | Method for the monitoring of integrated circuits |
JP2001034496A (ja) * | 1999-07-22 | 2001-02-09 | Nec Corp | 自己修復回路 |
FR2807594A1 (fr) * | 2000-04-05 | 2001-10-12 | Inup | Ferme d'ordinateurs simulant un reseau local avec surveillance de la simulation |
DE10328059A1 (de) * | 2003-06-23 | 2005-01-13 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Überwachung eines verteilten Systems |
US7152186B2 (en) * | 2003-08-04 | 2006-12-19 | Arm Limited | Cross-triggering of processing devices |
JP2006243865A (ja) * | 2005-03-01 | 2006-09-14 | Seiko Epson Corp | プロセッサおよび情報処理方法 |
US7840837B2 (en) * | 2007-04-27 | 2010-11-23 | Netapp, Inc. | System and method for protecting memory during system initialization |
US9311202B2 (en) * | 2012-11-01 | 2016-04-12 | Futurewei Technologies, Inc. | Network processor online logic test |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3386082A (en) * | 1965-06-02 | 1968-05-28 | Ibm | Configuration control in multiprocessors |
US3541517A (en) * | 1966-05-19 | 1970-11-17 | Gen Electric | Apparatus providing inter-processor communication and program control in a multicomputer system |
BE693071A (de) * | 1967-01-24 | 1967-07-24 | ||
US3564502A (en) * | 1968-01-15 | 1971-02-16 | Ibm | Channel position signaling method and means |
US3641505A (en) * | 1969-06-25 | 1972-02-08 | Bell Telephone Labor Inc | Multiprocessor computer adapted for partitioning into a plurality of independently operating systems |
US3654603A (en) * | 1969-10-31 | 1972-04-04 | Astrodata Inc | Communications exchange |
US3715729A (en) * | 1971-03-10 | 1973-02-06 | Ibm | Timing control for a multiprocessor system |
US3721961A (en) * | 1971-08-11 | 1973-03-20 | Ibm | Data processing subsystems |
US3735360A (en) * | 1971-08-25 | 1973-05-22 | Ibm | High speed buffer operation in a multi-processing system |
US3735362A (en) * | 1971-09-22 | 1973-05-22 | Ibm | Shift register interconnection system |
-
1972
- 1972-04-26 GB GB1936472A patent/GB1434186A/en not_active Expired
-
1973
- 1973-04-24 US US354120A patent/US3876987A/en not_active Expired - Lifetime
- 1973-04-24 DE DE2320698A patent/DE2320698C2/de not_active Expired
- 1973-04-25 CA CA169,509A patent/CA984519A/en not_active Expired
- 1973-04-25 SE SE7305813A patent/SE429692B/xx unknown
- 1973-04-26 ZA ZA732851A patent/ZA732851B/xx unknown
- 1973-04-26 BE BE130472A patent/BE798782A/xx not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3906846A1 (de) * | 1989-03-03 | 1990-09-06 | Bodenseewerk Geraetetech | Redundante rechneranordnung fuer steuersysteme |
Also Published As
Publication number | Publication date |
---|---|
US3876987A (en) | 1975-04-08 |
ZA732851B (en) | 1974-04-24 |
DE2320698A1 (de) | 1973-11-08 |
SE429692B (sv) | 1983-09-19 |
GB1434186A (en) | 1976-05-05 |
CA984519A (en) | 1976-02-24 |
BE798782A (fr) | 1973-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2320698C2 (de) | Anordnung zur Fehlerüberwachung in einer Mehrfach-Datenverarbeitungsanlage | |
DE3879069T2 (de) | Schwellenalarme zur Verarbeitung von Fehlern in einem Multiplex-Kommunikationssystem. | |
DE3879071T2 (de) | Verwaltung einer defekten Hilfsquelle in einem Multiplex-Kommunikationssystem. | |
DE3879072T2 (de) | Expertsystem zur Verarbeitung von Fehlern in einem Multiplex-Kommunikationssystem. | |
DE1279980C2 (de) | Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem | |
DE2230830C2 (de) | Datenverarbeitungsanlage | |
DE1449529C3 (de) | Unterbrechungseinrichtung für ein Datenverarbeitungssystem | |
DE2908316C2 (de) | Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage | |
DE2657848C2 (de) | ||
DE69228986T2 (de) | Durch hierarchisch verteilte wissenbasierte maschine ausgelöste wartungs-vorrichtung und -verfahren | |
DE2328058C2 (de) | Fehlerdiagnoseeinrichtung in einer digitalen Datenverarbeitungsanordnung | |
DE3688526T2 (de) | Verfahren und Vorrichtung zur Fehlerbehebung in einem verteilten Verarbeitungssystem. | |
DE2165767A1 (de) | Datenverarbeitungssystem | |
DE3508291A1 (de) | Realzeit-datenverarbeitungssystem | |
DE2751106C2 (de) | ||
DE2048670A1 (de) | Speicherwartungsanordnung fur Daten verarbeitungsanlagen | |
DE1549437A1 (de) | Datenverarbeitendes System aus mehreren miteinander verbundenen Datenverarbeitungsanlagen | |
DE3490263T1 (de) | Steuerkanal-Schnittstellenschaltung | |
DE1549550A1 (de) | Computeranordnung zum Steuern einer Anlage mit einer Anzahl zusammenwirkender Einrichtungen | |
DE2237672A1 (de) | Fehlerpruef- und fehlerdiagnoseeinrichtung in einer elektronischen datenverarbeitungsanlage und verfahren zu deren betrieb | |
DE69422158T2 (de) | Verfahren und System in einem verteilten Betriebssystem | |
DE2461592C3 (de) | Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem | |
DE69710034T2 (de) | Verfahren und Vorrichtung zum Schützen von Speicherteilen | |
DE2707267B2 (de) | Anlage zum Erlangen des Zugriffs zu Fernmeldeleitungen | |
DE69914568T2 (de) | Vorrichtung, Verfahren und System zur Dateisynchronisierung in einem Fehlertoleranten Netzwerk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |