DE2750299A1 - Ein/ausgabe-system - Google Patents

Ein/ausgabe-system

Info

Publication number
DE2750299A1
DE2750299A1 DE19772750299 DE2750299A DE2750299A1 DE 2750299 A1 DE2750299 A1 DE 2750299A1 DE 19772750299 DE19772750299 DE 19772750299 DE 2750299 A DE2750299 A DE 2750299A DE 2750299 A1 DE2750299 A1 DE 2750299A1
Authority
DE
Germany
Prior art keywords
signals
test
interrupt
interface
processor
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.)
Ceased
Application number
DE19772750299
Other languages
English (en)
Inventor
Donald V Mills
Earnest M Monahan
Garvin Wesley Patterson
Marion G Porter
Iii Edward F Weller
John M Woods
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2750299A1 publication Critical patent/DE2750299A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing

Description

Die vorliegende Erfindung betrifft ein Ein/Ausgabe-Ryt>tem ge*- mäß dem Gattungsbegriff des Anspruches 1 und insbesondere solche Systeme, die für eine verbesserte Zuverlässigkeit Doppeleinheiten umfassen.
Es ist bekannt, arithmetische Einheiten doppelt vorzusehen, wobei deren Ausgänge an Vergleichsschaltkreise angeschlossen sind, um zu prüfen, ob die Ergebnisse korrekt sind. Solche Anordnungen wurden bisher in erster Linie benutzt, um Fehler festzustellen. Die beiden Einheiten arbeiten dementsprechend als eine einzige Einheit und diese einzige Einheit wurde daher als fehlerhaft angesehen, wenn die Ergebnisse der beido.n Einheiten nicht übereinstimmten. Andere bekannte Systeme haben Rechnersysteme dreifach vorgesehen, die an Majoritäts-Logikschal tkr eise angeschlossen sind, um das Vorliegen von Fehlern festzustellen und das fehlerhafte System beim Auftritt eines Fehlers zu ermitteln. Diese bekannten Systeme, obgleich äußerst zuverlässig, sind normalerweise zu teuer und zu komplex.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Vererbe it ungs system anzugeben, das bei einem hohen Grad an Zuverlässig* keit mit einem Minimum an Aufwand auskommt. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten Erfindung. Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Gemäß der vorliegenden Erfindung ist wenigstens ein Paar von E/A-Verarbeitungseinheiten vorgesehen, wobei deren Ausgänge an Vergleichsschaltkreise angeschlossen sind, die Innerhalb der System-Schnittstelleneinheit angeordnet sind und der Feststellung und Speicherung von Hinweisen auf Vergleichsfehler eines Prozessors dienen. Darüber hinaus umfaßt die Einheit Schaltkreise zur Feststellung und Speicherung von Signalen, die das Vorliegen von anderen Fehlertypen anzeigen, wobei diese Fehler jedem der Prozessoren zugeordnet sind und zu
809820/0898
einem Zeitpunkt vorliegen, wo ein Fehle:: hinsichtlich des Vergleichs der Aucgangssignale festgestellt wird. Diesen Schaltkreisen werden Signale von Gruppen von Steuerleitungen einer Fehlerschnittstelle zugeführt, an die die Prozessoren des Paares angeschlossen sind. Eine Einrichtung, die Folgesteuer-Logikschaltkreise umfaßt, wird auf Grund eines Fehlvergleichssignals v/irksam und erzeugt Signale, die das Prozessorpaar entriegeln und einen ersten Prozessor des Paares für einen Test auswählen.
Gemäß einem bevorzugten Ausführungebeispiel der vorliegenden Erfindung erzeugen die Folgesteuerschaitkreise Signale, die eine Unterbrechungsanforderung eines bestimmten Types zu dem für den Test ausgewählten Prozessor leiten. Der Typ der Unterbrechungsanforderung hängt davon ab, ob die in der System-Schnittstelleneinheit enthaltenen Schaltkreise das Vorliegen von irgendwelchen anderen Fehlertypen im Zusammenhang mit einem der Prozessoren feststellen. Wenn beispielsweise ein interner Prozessorfehler festgestellt wird, der durch einen Prozessor signalisiert wird, indem eine der Steuerleitungen der Fehlerschnittstelle in einen vorbestimmten Zustand gebracht wird, so wird ein erster Typ der Unterbrechungsanforderung von der Einheit zu dem intakten Prozessor geleitet. Ferner stoppt die Einheit die Fortführung des Betriebes des fehlerhaften Prozessors, indem eine andere Steuerleitung in einen vorbestimmten Zustand gebracht wird. Wo kein anderer Fehlertyp durch irgendeinen Prozessor des Paares festgestellt wird, richtet die Einheit einen zweiten Typ einer Unterbrechungsanforderung an einen ersten Prozessor des Paares und hält den Betrieb des zweiten Prozessors an.
Nach dem Test eines jeden Prozessors in der erforderlichen Weise trennt die Einrichtung den fehlerhaften Prozessor von dem System ab. Danach werden Ein/Ausgabe-Operationen nur durch den intakten Prozessor ausgeführt, der sodann periodisch durch die Software des Betriebssystems in dem erforderlichen Ausmaß getestet werden kann.
809820/0898
Die Anordnung gemäß der vorliegenden Erfindung liefeit somit sowohl eine Fehlerfeststellung, als auch die Verfügbarkeit beider Prozessoren für die Verarbeitung in dem Fall, wo ein Fehlvergleich festgestellt wird. Da ein solcher Test mit wenigen zusätzlichen Schaltkreisen innerhalb der System-Schnittstelleneinheit ausgeführt wird, ergibt sich eine erhöhte Zuverlässigkeit. Für den Fall, daß durch den Test keiner der Prozessoren als fehlerhaft festgestellt wird, können die Steuerschaltkreise zusätzlich betätigt werden, um die Prozessoren wieder miteinander zu verriegeln. Dies versetzt das System in die Lage, mit einer zuverlässigen Bearbeitung fortzufahren, ungeachtet von Übergangs-Fehlerzustünden.
Der ausgewählte Prozessor wird zunächst zur Ausführung einer Selbst-Testoperation bereitgestellt. Zusätzlich wird ein in dem Prozessor enthaltener Zeitgeber gestartet und verursacht das Setzen einer der Steuerleitungen auf einen vorbestimmten Zustand nach Zeitablauf des Zeitgebers. Hierdurch wird signalisiert, daß der Prozessor insofern Schwierigkeiten aufweist, als er die Selbst-Testoperation nicht vollständig ausführen kann und es sich bei ihm um den fehlerhaften Prozessor handelt. Durch die Forderung, daß der Prozessor auf die Unterbrechungsanforderung innerhalb eines vorgegebenen Zeitbetrages antworten muß, wird die befriedigende Ausführung der Selbst-Testoperation des Prozessors überwacht. Die vollständige Ausführung der Selbst-Testoperation liefert eine ausreichende überprüfung einer Anzahl von Prozessor-Schaltkreisen, so daß der Prozessor in der Lage ist, Speicheranweisungen ohne Fehler zu erzeugen. Nur wenn die Einrichtung feststellt, daß der Prozessor einen geringen Zuverlässigkeitspegel aufweist, wird mit einem ausgeprägteren Test fortgefahren. Auch wenn die Einrichtung und die zugeordneten Diagnoseroutinen festgestellt haben, daß der Prozessor intakt ist, wird der Test hinsichtlich des anderen Prozessors des Paares in jenen Fällen fortgesetzt, wo keine Fehler hinsichtlich eines der Prozessoren festgestellt wurden. Hierdurch wird die Zuverlässigkeit bei der Verarbeitung sichergestellt.
809820/0898
Anhand eines in den Figuren der beiliegenden Zeichnungen dargestellten Ausführungsbeispiöles sei die Erfindung im folgenden näher erläutert. Es zeigen:
Fig. 1 in Blockdiagrammdarstellung ein E/A-System, bei dem von der vorliegenden Erfindung Gebrauch gemacht wird.
Fig. 2 eine E/A-Verarbeitungseinheit eines Prozessorpaares gemäß Fig. 1 in näheren Einzelheiten.
Fig. 3a bis 3f die System-Schnittstelleneinheit 100 gemäß Fig. 1 in näheren Einzelheiten.
Fig. 4a und 4b die Multiplexereinheit 300 gemäß Fig. 1 in näheren Einzelheiten.
Fig. 5a die eine Datenschnittstelle bildenden Leitungen.
Fig. 5b die eine programmierbare Schnittstelle bildenden Leitungen in dem System gemäß Fig. 1.
Fig. 5c die eine Unterbrechungsschnittsfcelle bildenden Leitungen in den System gemäß Fig. 1.
Fig. 5d die eine interne Speicher Schnittstelle gemäß Fig. 1 bildenden Leitungen.
Fig. 5e die eine Fehlermeldeschnittstelle gemäß Fig. 1 bildenden Leitungen.
Fig. 6 das Format von IiREX- und RDEX-Progranunbefehlen.
Fig. 7a bis 7c Formate von Schnittstellenanweisungen.
Fig. 8a bis 8d Formate des Inhalts verschiedener Register, in der System-Schnittstelleneinheit 100 gemäß Fig.
Fig. 9 die Signalfolge bei der Verarbeitung einer Unterbrechung .
Fig. 10a und 10b die Signalfolgen bei der übertragung einer WREX-Anweisung.
Fig. 11 in einer negativen Logik (z.B. Binärwert "1" «= negativer Signaldurchgang) die Signalfolgen für die Ausführung einer Speicher-Leseoperation.
Fig. 12 das Format eines Unterbrechungs-Datenwortes.
Fig. 13 das Format eines Types von Steuerungsdaten.
809J20/0893
Fig. 14 die Anordnung eines Unterbrechungssteuerblockes im Speichermodul 500 für die System-Schnittstelleneinheit 100.
Fig. 15 ein Statusdiagraram einer Folgesteuereinrichtung gemäß der vorliegenden Erfindung.
Fig. 16 ein Flußdiagramm zur Beschreibung der Wirkungsweise der vorliegenden Erfindung.
Allgemeine Beschreibung
Gemäß Fig. 1 umfaßt das System gemäß der vorliegenden Erfindung zwei Ein/Ausgabe-Prozessorpaare (XOPP) 200-0 und 200-1, eine System-Schnittstelleneinheit (SIU) 100, einen Hochgeschvindigkeits-Multiplexer (HSMX) 300, einen Niedriggeschwindigkeits-Multiplexer (LSMX) 400, einen Zentralprozessor 700 und wenigstens einen Speichermodul entsprechend einem internen Speichermodul 500. Verschiedene dieser Module sind jeweils an einen aus einer Reihe von Anschlüssen der System-Schnittstelleneinheit über eine Vielzahl von Leitungen angeschlossen, die ihrerseits verschiedene Arten von Schnittstellen €00-603 bilden. Insbesondere sind der E/A-Prozessor 200, der Sentralprozessor 700 und der Hochgeschwindigkeitsmultiplexer 300 an die Anschlußstellen G,/Ie1/und A angeschlossen, während der Niedriggeschwindigkeitsmultiplexer 400 und der Speichermodul 500 an die Anschlußstellen J und LMO angeschlossen sind.
809020/0899
Das E/A-System gemäß Figur 1 kann als ein System betrachtet werden, das eine Anzahl von "aktiven Modulen", "passive Modulen" und "Speichermodule" aufweist. Per E/A-Prczessor 200, der Zentralprozessor 700 und der Hochgeschwindigkeitsmultiplexer 300 arbeiten als aktive Module,indem jeder die Fähigkeit besitzt, Anweisungen auszugeben. Die aktiven Module sind normalerweise an die Anschlußstellen A-H angeschlossen. Mehrere passive Module sind an die Anschlußstellen J, K und L angeschlossen. Diese Module sind durch die Niedriggeschwindigkeitsmultiplexer und die Systern-Schnittstelleneinheit 100 gegeben und sie sind in der Lage, Anweisungen zu interpretieren und auszuführen, die auf den Leitungen dar Schnittstelle 601 zugeführt werden. Die letzte Gruppe der Module wird durch die internen Speichermodule und die nicht dargestellten externen Soeiehemodule gebildet,wie sie beispielsweise im Hauptsystem gegeben sind und die in der Lage sind, zwei verschiedene Arten von Anweisungen auszuführen, die auf den Leitungen der Schnittstelle 603 zugeführt werden.
Das E/A-System gemäß Figur 1 arbeitet normalerweise als ein E/A-Untersystem in Abhängigkeit von durch den Zentralprozessor 7OO ausgegebenen E/A-Befehlen, die an die Anschlußstelle E über die Schnittstellen 600, 601 und 602 angeschlossen sind und eine Datenschnittstelle, eine programmierbare Schnittstelle und eine
609820/0898
Unterbrechungs-Schnittstelle repräsentieren. Die Anschlußstellen F und E weisen Schnittstellen auf, die einen Anschluß von Multiplexer- oder Prozessormodulen gemäß Figur 1 gestatten. Im Hinblick auf die vorliegende Erfindung kann der Zentralprczessor 700 in herkömmlicher Weise aufgebaut sein und in seiner Ausführung dem in der US-PS 3 413 613 beschriebenen Prozessor entsprochen. Im bevorzugten Ausführungsbeispiel löst der E/A-Prozessor 2OO Kanalprogramme aus und beendigt diese, wobei die Kanalprogramme für die Ausführung von E/A-Befehlen erforderlich sind, und er verarbeitet Unterbrechungsanforderungen, die er von der System-Schnittstelleneinheit 100 erhält und schließlich steuert er periphere an den Niedriggeschwindigkeitsmultiolexer 400 an-
200-0
geschlossene Geräte. Das ProzessorpaarYist über die Datenschnittstelle 600 und die Unterbrechungs-Schnittstelle 602 mit den An-
G und H
schlußstellen /^"verbunden. Der Niedriggeschwindigkcitsmultipl^ier 400 kann ebenfalls eine herkömmliche Ausbildung auf v/eisen. Er ist über periphere Adapter mit peripheren Geräten niedriger Geschwindigkeit verbunden, wobei die Adapter an die Leitungen einer Geräte-Adapter-Schnittstelle DAI angeschlossen sind. Schnittstelle und Adapter können in der Art ausgebildet sein, wie di3S in der US-PS 3 742 457 beschrieben ist. Die peripheren Geräte mit niedriger Geschwindigkeit umfassen Kartenleser, Kartenstanzer und Drucker. Wie aus Figur 1 ersichtlich, ist der Multiplexer 400 über die programmierbare Schnittstelle 601 mit der Anschlußstelle J verbunden.
Der Hochgeschwindigkeitsmultiplexer 300 steuert direkt die Datenübertragung zwischen der Gruppe von Platteneinheiten und Bandeinheiten 309-312, die an verschiedene Kanaladapter 203-306 angeschlossen sind. Jeder der Kanal-Steueradapter 303-306 ist seinerseits über die Leitungen einer Kanal-Adapter-Schnittstelle CAI-301-1 an verschiedene Anschlußstellen 0-3 angeschlosäen. Der Hochgeschwindigkeitsmultiplexer 300 ist mit der Anschlußstelle A über eine Datenschnittstelle 600, eine programmierbare Schnittstelle 601 und eine Unterbrechungs-Schnittstelle 602 angeschlossen. Jeder der Kanal-Steueradapter 303-306 kann so ausgebildet sein, wie dies in der zuvor erwähnten US-PS 3 742 457 boschrieben ist. 8og82o/O898
.-.Oy-
Wie zuvor erwähnt, ist jeder der Module an verschiedene Anschlußstellen der System-Schnittstelleinheit 100 angeschlossen. Die Schnittstelleneinheit 100 steuert die Verbindung der verschiedenen Module untereinander über Datenübertragungswegev die die übertragung von Daten und die Steuerung von Information zwischen Paaren von Modulen gestatten. Im Hinblick auf die vorliegende Erfindung kann die Systemschnittstelleneinheit 100 als ein Schaltnetzwerk betrachtet werden, das jedem aktiven Modul die übertragung von Daten zu und aus einem internen Speichermodul gestattet, fiills der anfordernde Modul die höchste Priorität aufweist und durch den nächsten verfügbaren Speicherzyklus freigegeben ist. Zu diesem Zweck weist die Schnittstelleneinheit Prioritäts-Logikschaltkreise auf, die die relative Priorität der Anforderung durch jeden der aktiven Module festeilen und den nächsten verfügbaren Speicherzyklus der höchsten empfangenen Prioritätsanforderung zuordnen. Die Schnittstelleneinheit 100 weist zusätzlich Unterbrechungsprioritäts-Schaltkreise auf, welche die relative Priorität der von den Modulen empfangenen Unterbrechungsanforderungen feststellen und die höchste Prioritätsanforderung auswählen und über ein Schaltnetzwerk zu dem Prozessor 200 weiterleiten.
Anschluß-SchnittsteIlen
Bevor die verschiedenen Module gemäß Figur 1 näher beschrieben v/erden, sollen anhand der Figuren 5a-5d die Schnittstellen 600-603 näher erläutert werden. Gemäß Figur 5a ist ersichtlich, daß die dort dargestellten Leitungen die Datenschnittstelle darstellen, die eine der Schnittstellen bildet, die für den Austausch von Information zwischen einem aktiven Modul und der System-Schnittstelleneinheit 100 erforderlich sind. Der Informationsaustausch wird durch Steuerung des logischen Zustandes der verschiedenen Signalleitungen verwirklicht, wobei diese Steuerung in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die in einer als "Dialog" bezeichneten Signalfolge enthalten sind.
809820/0898
Gemäß Figur 5a umfaßt die Schnittstelle mehrere Leitungen r.it folgender Bedeutung: Aktive Ausgangs-Anschluß-Anforderung AOPR; Daten zur Schnittstelleneinheit DTS 00-DTS 35, PO-P3,· Steuerung von Daten zur Schnitt.stelleneinheit SDTS 0-6, P/identifizierte Mehrfachanschlüsse zur Schnittstelleneinheit MITS 0-3, P/ aktive Anforderung angenommen ARA/ gelesene Daten angenommen APDA; Daten von der Schnittstelleneinheit DFS 00-35, P0-P3; Mehrfachanschluß-Identifizierer von der Schnittstelleneinheit, MIES 0-3, P; Doppelpräzision von der Schnittstelleneinheit DPFS und Status angenommen AST. Die Beschreibung der Schnittstellenleitungen erfolgt im nachstehenden Abschnitt in näheren Einzelheiten.
Daten-Schnittstellen-Leitungen
Bezeichnung
DTS 00-34, P0-P3
SDTS 0-6, P
Beschreibung
Diese Leitung dient der übertragung einer aktiven Ausgangs-Anschluß-Anforderung in einer Richtung, die sichwn jedem der aktiven Module zu der Schnittstelleneinheit SIU-100 erstreckt. Wenn diese Leitung gesetzt ist, so signalisiert sie der Schnittstelleneinheit SIU, daß der Modul einen übertragungsweg anfordert, über den eine Anweisung oder Daten zu übertragen sind.
Diese Leitungen stellen einen Datentibertragungsweg mit einer Breite von vier Bytes dar, die sich in einer Richtung zwischen jedem der aktiven Module und der Schnittstellenheit SIU erstrecken und die zur übertragung von Anweisungen oder Daten von jedem aktiven Modul zu der Schnittstelleneinheit SIU-100 benutzt werden.
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU- 100. Sie dienen der Steuerung von Daten zur
809820/0898
Schnittstelleneinheit und sie werden benutzt, um die Schnittst.elleneinheit SIU-100 mit Steuerinforination zu versorgen, wenn die Leitung AOPR gesetzt ist. Die Steuerinformation besteht aus sieben Bits und einem Paritäts-Bit, welche in folgender Weise codiert sind:
a) Der Zustand des Bits 0 gibt die Art der Anweisung an, die über die DTS-Leitung zugeführt wird. Die Anweisung kann hierbei eine programmierbare Schnittstellenanweisung oder eine Speicheranweisung sein.
b) Die Bits 1-4 geben durch ihre Codierung an, v/elcher der Module die Anweisung empfangen und interpretieren soll (Speicheranweisungen werden nur durch Speichermodule und programmierbare Schnittstellenanweisungen werden durch alle Module außer dem E/A-Prozessor 200 interpretiert) .
c) Der Zustand des Bits 5 zeigt an, ob ein oder zwei Worte der Anweisungsinformation zwischen dem anfordernden aktiven Modul und dem ausgewählten empfangenden Modul übertragen werden sollen (ein VJort bestimmt eine übertragung mit einfacher Präzision und zwei Worte bestimmen eine übertragung mit doppelter Präzision).
d) Der Zustand des Bits 6 zeigt die Richtung der übertragung zwischen dem anfordernden Modul und dem ausgewählten empfangenden Modul an.
e) Das Bit P ist ein Paritäts-Bit, das von dem anfordernden aktiven Modul erzeugt wird und von einer in der Schnittstelleneinheit SIU-100 enthaltenen Anordnung geprüft wird.
MITS 0-3, P Diese Leitungen erstrecken sich von dem aktiven
Modul zu der Schnittstellenheit SIU-100. Sie zeigen durch ihre Codierung an, welcher Unterkanal oder Anschluß innerhalb eines aktiven
809820/0898
DFS 00-35/ P0-P3
MIFS 0-3, P
- 25 -
2750^99
Moduls das Setzen der Leitungen AOPR verursacht hat.
Diese Leitung erstreckt sich von der Schnitt-Stelleneinheit SIU-100 zu jedem der aktiven Module. Diese Leitung wird gesetzt, um anzuzeigen, daß der ausgewählte empfangende Modul die Anforderung durch den aktiven Modul angenommen hat, wodurch dem Modul gestattet wird, die angeforderte Information von den Daten-Schuttotellenleitungen zu entfernen. Diese Leitung erstreckt sich von dor Schnittstelleneinheit SIU zu jedem der aktiven Module und sie wird durch die Schnittstelleneinheit gesetzt, um den aktiven Modul anzuzeigen, das er die zuvor angeforderten Daten eines ausgewählten Moduls anzunehmen hat.
Die Daten von der Schnittstelleneinheit werden auf einem anderen Satz von Datenübertregungsleitungen übertragen, welche eine Breite von vier Bytes aufweisen und sich in einer Richtung von der Schnittstelleneinheit zu jedem aktiven Modul erstrecken. Diese Gruppe von Leitungen wird von der Schnittstelleneinhait SIU-IOO benutzt, um gelesene Daten zu einem ausgewählten aktiven Modul zu übertragen.
Diese vier Mehrfachanschluß-Bastiinmungsleitungen plus eine ungerade Paritätsleitung erstrecken sich von der Schnittstelleneinheit SIU-100 zu jedem der aktiven Module. Diese Leitungen geben durch ihre Codierung an, welcher Anschluß oder Unterkanal des aktiven Moduls die Daten einer vorausgegangenen Leseoperation von der Schnittstelleneinheit SIU-100 aufzunehmen hat. Diese Doppelpräzisions-Leitung erstreckt sich von der Schnittstelleneinheit SIU zu jedem der aktiven Module. Durch den Zustand dieser Leitung wird angezeigt, ob ein oder zwei Worte der gelesenen Daten von dem aktiven Modul zur Ver-
809820/0898
"2750^99
vollständigunq einer übertragung aufzunehmen sind (Leseanweisung)
AST Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 zu jedem aktiven Modul und ihr Zustand, der wechselseitig exklusiv zu der Leitung AROA ist, signalisiert dem aktiven Modul, daß er die auf den DFS-Leitungen zugeführte Statusinformation aufnehmen soll.
Die Leitungen der programmierbaren Schnittstelle 601 sind in Figur 5b dargestellt und sie dienen der Übertragung von Anweisungen von einem aktiven Modul und einem ausgewählten Modul. Die Übertragung wird durch die Steuerung der logischen Zustände der verschiedenen Signalleitungen bewerkstelligt» wobei dies in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die eine als "Dialog" bezeichnete Signalfolge ausführen. Die programmierbare Schnittstelle umfaßt verschiedene Leitungen, denen folgende Bedeutung zugeordnet ist: Programmierbare Schnittstellenanweisungen angenommen APC; programmiere Schnittstellendaten von der Schnittstelleneinheit SlU PDFS 00-35, P0-P3; programmierbare Schnittstelle bereit PIR; Anforderung der übertragung gelesener Daten RDTR; programmierbare Schnittstellendaten zu der Schnittstelleneinheit SIU PDTS 00-35; PO-P3 und gelesene Daten angenommen RDAA. Eine Beschreibung der Schnittstellenleitungen wird nachfolgend in näheren Einzelheiten gegeben.
Programmierbare Schnittstellenleitungen
Bezeichnung Beschreibung
APC Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 zu jedem empfangenden Modul und sie signalisiert im gesetzten Zustand dem Modul, daß Anweisungsinformation den PDFS-Leitungen der Schnittstelle durch die Schnittstelleneinheit SIU zugeführt worden ist und durch1 den Modul aufgenommen v/erden soll.
809820/0898
PDFS 00-35, P0-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich in einer Richtung von der Schnittstellensinheit SIU--10O zu jedem Modul. Sie führen einem ausgewählten empfangenden Modul programmierbare Schnittstelleninformation von der System-Schnitteinheit SIU-100 zu.
PIR Diese Leitungen erstrecken sich von jedem Modul
zu der Schnittstelleneinheit SIU-100 und sie zeigen im gesetzten Zustand an, daß der Modul bereit ist, eine über die Leitung PDFS zugeführte Anweisung aufzunehmen.
PDTS OO-35,PO-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich in einer Richtung von jedem Modul zu der Schnittstelleneinheit SIU-100. Diese Leitungen werden zur Übertragung von programmierbarer Schnittstelleninformation zu der Schnittstelleneinheit SIU-100 benutzt.
RDTR Diese Leitung erstreckt sich von jedem Modul,
der an die programmierbare Schnittstelle angeschlossen ist, zu der Schnittstelleneinheit SIU-100. Im gesetzten Zustand zeigt diese Leitung an, daß die zuvor angeforderten gelesenen Daten für eine übertragung zu einem Modul verfügbar sind und durch den Modul den Leitungen PDTS zugeführt worden sind.
RDAA Diese Leitung erstreckt sich von der Schnitt-
stelleneinheit SIU-100 nach jedem Modul und sie zeigt im gesetzten Zustand dem Modul an, daß die über die Leitungen PDTS zugeführten Daten aufgenommen worden sind und daß der Modul die Information von diesen Leitungen wegnehmen kann.
Gemäß Figur 5 c ist als weitere Schnittstelle die Unterbrechungs-Schnittstelle 602 dargestellt, die für die Unterbrechungsverarbeitung durch den E/A-Prozessor 2OO vorgesehen ist. Diese Schnitt-
809820/0898
_ 28 _
stelle gestattet die übertragung von ünterbrechungsinformation von einem aktiven Hodul zu der Schnittstelleneinheit SIU-100 sowie die Übertragung von Unterbrechungsinformation von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor 200 zwecks Verarbeitung. Entsprechend den anderen Schnittstellen wird die Übertragung der Unterbrechungsanforderung durch Steuerung der logischen Zustände der verschiedenen Signalleitungen verwirklicht, wobei dies in Übereinstimmung mit zuvor errichteten Regelnerfolgt, die durch eine als "Dialog" bezeichnete Signalfolge ausgeführt werden. Die Unterbrechungsschnittstelle weist verschiedene Leitungen mit folgender Bedeutung auf: Unterbrechungsanforderung IR; Unterbrechungsdaten IDA 00-11, P0-P1 und Unterbrechungs-Mehrfachanschluß-Identifizierer IMID 00-O3 für an die Anschlüsse A bis D angeschlossene Module» Hinsichtlich der an die Anschlüsse G und H angeschlossenen Module weist die ünterbrechungsschnittstelle ferner Leitungen mit folgender Bedeutung auf: Pegel Null vorhanden LZP; höhere Pegelunterbrechung vorhanden HLIP; Unterbrechungsdaten-Anforderung IDR/ Freigabe RLS und aktiver Unterbrechungspegel AILO-2. Wie aus Figur 5c hervorgeht, weisen die Unterbrechungsschnittstellen-Anschlüsse G und II keine Unterbrechungs-Mehrfachanschluß-Identifiziererleitung auf. Eine Beschreibung der Unterbrechungs-Schnittstellenleitungen erfolgt nachstehend in näheren Einzelheiten.
Unterbrechungs-Schnittstellenleitungen
Bezeichnung Beschreibung
IR Diese Leitung erstreckt sich von je'dem Modul
nach der Schnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand der Schnittstelleneinheit SIU-100 an, daß sie eine Bedienung anfordert.
IDA 0-3^ PO Diese Unterbrechungs-Datenleitungen erstrecken
IDA 4-11,PI sich von einem aktiven Modul nach der Schnittstelleneinheit SIU-100. Durch ihre Codierung enthalten diese Leitungen Steuerinformation, deren übertragung nach dem E/A-Prozessor angefordert wird, wenn eine Unterbrechungsanforde-
809820/0898
IMID 00-03
rung von dem Prozessor angenommen worden ist. Diese Bits sind wie folgt codiert: a)Der Zustand des Bits 0 signalisiert der Schnittstelleneinheit SIUrIOO, welcher der beiden Prozessoren die ünterbrechungsanforderung verarbeiten soll.
b)Die Bits. 1-3 zeigen durch ihre Codierung die Priorität oder die Pegelnuminer der ünterbrechungsanforderung der Schnittsteileneinheit SIü-100 an.
c)das Bit PO ist ein Paritäts-Bit für die Bits
0-3.
d)die Bits 4-8 erzeugen durch ihre Codierung einen Teil einer Adresse, deren Erzeugung durch den E/A-Prozessor 200 für eine Bezugnahme auf die korrekte Prozedur bei der Verarbeitung der Unterbrechung erforderlich ist (z.B. eine Unterbrechungssteuerblooknuinmor ICBN)
e)das Bit P1 ist ein Paritäts-Bit für die Bits
4-11.
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU-100 und sie bestimmen durch ihre Codierung, welcher spezifische Unterkanal des aktiven Moduls eine Unterbrechungsbearbeitung angefordert hat. Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor und sie zeigt im gesetzten Zustand an, daß durch die Schnittstelleneinheit SIU-100 eine Anforderung mit höchster Priorität (Pegel Null) an den Prozessor 200 gerichtet ist.
Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem E/A-Prozessor 200 und sie zeigt im gesetzten Zustand an, daß eine Unterbrechungsanforderung mit einem höheren Pegel als der Pegel des gerade auf dem Prozessor 200 bearbeiteten Prozesses vorliegt.
809820/0898
IDR Diese Leitung erstreckt sich von dem E/A
Prozessor 200 nach der Schnittstelleneinheit SIü-100 und sie zeigt im gesetzten Zustand an, daß von der Schnittstelleneinheit SIU-100 auf den Leitungen DFS Unterbrechungsdaten nach dem Prozessor zu senden sind.
RLS Diese Leitung erstreckt sich von dem E/A
Prozessor 200 nach der Schnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand an, daß der Prozessor 200 die Ausführung der laufenden Prozedur beendet hat.
AIL 0-2 Die den aktiven Unterbrechungspegel führenden
Leitungen erstrecken sich von der Schnitt-Steuereinheit SIU-100 zu dem E/A-Prozessor 200. Diese Leitungen geben durch ihre Codierung die: Unterbrechungspegelnummer der auf dem Prozessor 200 auszuführenden Prozedur an.
Eine letzte Gruppe von Schnittstellenleitungen, die von bestimmten Modulen gemäß Figur 1 benutzt wird, wird durch interne Speicherschnittstellen-Leitungen gemäß Figur 5d repräsentiert. Die interne Speicherschnittstelle 603 dient dem Informationsaustausch zwischen dem internen Speicher 500 und den Modulen des Systems. Der Informationsaustausch wird durch Steuerung der logischen Zustände der verschiedenen Signal-Schnittstellenleitungen in Übereinstimmung mit zuvor festgelegten Regeln bewerkstelligt, wobei diese Regeln eine als "Dialog" bezeichnete Signalfolge ausführen. Die interne Speicherschnittstelle weist eine Anzahl von Leitungen auf, denen folgende Bedeutung·. zugeordnet ist: Daten zum Speicher DTM 00-35, P0-P3; Datenidentifizierer zum Speicher RITM 0-7, PO-P1 ,· Bestimmungsleitungen zum Speicher SLTM 0-3, P/ Annahme PI~Anweisung APC; Annahme ZAC-Anweisung AZC; PI-Schnittstelle bereit PIR/ ZAC-Schnittstelle bereit ZIR,-Ubertragungsanforderung gelesener Daten RDTR/ Daten vom Speicher DFM 00-35, P0-P3/ Anforderungsidentifizierer vom Speicher RIFM 07-, P0-P1,· Doppelpräzision, vom Speicher DPFM;QUAD; gelesene
809820/0898
Daten angenommen RDAA und Systemtakt SYS-CLK. Eine ähnliche Schnittstelle wird benutzt, um den Hauptupeichermodul 800 mit der Schnittstelleneinheit SIU-100 zu verbinden.
Speicher- und programmierbare Schnittstellenanweisung werden übor die gleichen Datenleitungen der Schnittstelle übertragen. Die Schnittstelle weist keine Leitungsgruppe, zur Verarbeitung von Unterbrechungsanforderungen auf, so daß die an den internen Speicher über die Schnittstelleneinheit SIU-100 angeschlossenen Module nicht direkt eine Speicherunterbrechung veursachen können. Eine Beschreibung der internen Speicherschnittstellenleitungen wird nachstehend in näheren Einzelheiten gegeben.
Interne Speicher-Schnittstellenleitungen
Bezeichnung DTM 00-35, PO-P3
RITM 0-3, PO RITM 4-7, P1
SLTM 0-3, P
Beschreibung
auf.
Diese Leitungen weisen eine Breite von 4 Bytes 06 Informationsleitungen und vier ungerade Paritätsleitungen), die sich in einer Richtung von der Schnittstelleneinheit SIU-100 nach dem internen Speicher 500 erstrecken. Diese Leitungen werden zur übertragung von Speicheroder programmierbaren Schnittstellenanweisungen zu dem internen Speicher 500 benutzt. Diese Leitungen bilden zwei Gruppen mit vier Leitungen, welche sich von der Schnittstelleneinheit SIU-100 nach dem internen Speicher 500 erstrecken und der Anforderungsidentifizierung dienen. Diese Leitungen übertragen aufgrund ihrer Codierung Information zu dem internen Speicher, durch die der Modul bestimmt wird, der die Anweisung ausgelöst hat und sie werden benutzt, um die angeforderten Daten in den geeigneten Modul zurückzuholen.
Diese Leitungen erstrecken sich von der Schnittstelleneinheit SIU-100 nach dem internen Speicher 500 und sie umfassen zwei Anschlußnummer- Auswahlleitungen, eine Lese/Schreib-Leitung zum Speicher, eine Doppelpräzisionslcitung zum Speicher und eine Paritätsleitung. Die diesen Leitungen aufgeprägten Informationssignale sind 809820/0808
folgendermaßen codiert:
a) Die Bits 0-1 stellen Anschlußnummer-Auswahl-Bits dar, die durch ihre Codierung anzeigen, welcher Anschluß oder Unterkanal innerhalb des beigefügten Moduls die zu dein Modul gesendete Speicheranweisung empfangen oder interpretieren soll.
b) Bit 2 ist ein Lese/Schreib-Bit zum Speicher, das in der von dem aktiven Modul empfangenen Steuerinformation enthalten ist und von der
r Schnittstelleneinheit SlU nach dem internen Speicher 500 weitergereicht wird, wenn von der Schnittstelleneinheit SIU-100 eine neue Anweisung zu dem Speicher abgesendet wird. Der Zustand dieses Bits zeigt die Richtung der Datenübertrag an.
c) Bit 3 ist ein Doppelpräzisions-Bit zum Speicher, das durch seine Codierung den Betrag der zu übertragenden Daten anzeigt. Es ist ebenfalls in der durch den aktiven Modul erzeugten Steuerinfonnation enthalten, wobei
es durch die Schnittstelleneinheit SIU-100 nach dera internen Speichermodul 5OO übertragen wird, wenn eine neue Anweisung nach dem Speichermodul abgesendet wird.
AZC Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 nach dem internen Speichermodul 500 und sie zeigt im gesetzten Zustand dem internen Speichermodul 500 an, daß eine von der Schnittstelleneinheit SIU-100 auf den anderen Leitungen angebotene ZAC-Anweisung und Steuerinformation anzunehmen ist. Das Setzen dieser Schnittstellenleitungen erfolgt wechselseitig exklusiv mit dem Setzen der Schnittstellenleitung APC.
PIR/ZIR
APC Diese Leitung dient der Annahme einer pro
grammierbaren Schnittstcllcnunweisung und sie erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem internen Speichermodul 500. Im gesetzten Zustand zeigt diese Leitung an, daß die auf den Leitungen DTM vorliegende Anweisungsinformation von dem internen Speichermodul 500 anzunehmen ist.
Diese Leitung signalisiert die Bereitschaft der programmierbaren Schnittstelle und der 7,7.C-Schnittstelle und sie erstreckt sich von dem internen Speichermodul 500 zu der Schnittstelleneinheit SIU--100. Im gesetzten Zustand zeigt diese Leitung der Schnittstelleneinheit SIU-100 an, daß der interne Speichermodul 500 in der Lage ist/ eine programmierbare Schnittstellenanweisung bzw. eine ZAC- Speicheranwei-
sung anzunehmen.
Diese Leitung erstreckt sich von dem internen
Speichermodul 500 nach der Schnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand an, daB die zuvor durch eine ZAC- oder PI-Anweisung angeforderten,gelesenen Daten zusammen mit der erforderlichen Steuerinformation verfügbar sind und zu dem die Daten anfordernden Modul gesendet werden können.
DFM 00-35, P0-P3 Diese Leitungen weisen eine Breite von 4 Bytes
auf und sie erstrecken sich in einer Richtung von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Diese Leitungen werden zur Rückholung angeforderter Lesedaten in einen aktiven Modul über die Schnittstelleneinheit SIU-100 benutzt.
Die beiden Gruppen von Leitungen erstrecken sich von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Diese Leitungen werden benutzt, um die gelesenen Daten aus dem Modul 500 zurück nach dem anfordernden
Modul zu leiten.
809820/0898
RIFM 0-3, PO
RIFM 4-7, P1
DPFM und QUAD
Die Doppelpräzisionsleitung vom Speicher und die QUAD-Leitung erstrecken sich von dem internen Speichermodul 500 nach der Schnitt-· Stelleneinheit SIU-IOO. Diese Leitungen zeiger, durch ihre Codierung die Anzahl der Worte an, die über die Schnittstelleneinheit SIU-100 zu dem anfordernden Modul während des Zeitintervalles der Ubertragungsanforderung der gelesenen Daten zu übertragen sind. Diese Leitungen sind folgendermaßen codiert;
QUAD, DPFM
0 0 ein Wort, Einfachpräzision
0 1 zv/ei Worte, Doppelpräzision
1 X vier Worte
Diese Leitung für die Statusidentifikation der gelesenen Daten erstreckt sich von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Der Zustand dieser Leitung signalisiert der Schnittstelleneinheit SIU-100, ob die auf den Leitungen DFM vorliegende Information sich auf gelesene Daten oder eine Statusinformation bezieht, wenn die Leitung RDTR gesetzt ist. Im gesetzten Zustand zeigt diese Leitung an, daß eine Statusinformation von ein oder zv/ei Worten (QUAD=O) zu übertragen ist. Wenn diese Leitung den Binärwert Null einnimmt, so wird hierdurch signalisiert, daß bis zu vier Worte zu übertragen sind, wobei die Anzahl der Worte durch die Codierung der Leitungen QUAD und DPFM vorgegeben wird.
Diese im Zusammenhang mit der programmierbaren Schnittstelle erwähnte Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem internen Speichermodul 500. Im gesetzten Zustand signalisiert diese Leitung dem Speichermodul, daß die von ihm auf den Schnitt-
809820/0 898
Stellenleitungen avisgegebenen Daten angenommen worden sind und daß er daher diese Daten auf den Leitungen wegnehmen kann.
SYS-CLK Die Systemtakt-Leitung erstreckt sich von der
Schnittctelleneinheit SIU-IOO nach jedem Modul des Systems. Diese Leitung ist an eine Taktgeberquelle innerhalb des E/A-Prozessors 200 angeschlossen und sie dient der Synchronisation der Operationen eines jeden Speichermoduls durch den gemeinsamen Systoratakt.
Eine letzte Gruppe von Schnittstellenleitungen ist in Fig. 5e dargestellt. Gemäß der vorliegenden Erfindung signalisieren verschiedene dieser Leitungen Zustände, wie beispielsweise Fehler- und Betriebs zustände. Von großer Bedeutung ist, daß diese Leitungen die Schnittstelle SIU-100 in die Lage versetzen, die Operation des Pro— zessorpaares zu steuern.
Wie aus Fig. 5e ersichtlich/ umfaßt diese Schnittstelle folgende Leitungen: Paritätsfehler festgestellt PED; Störung TBL; STOP; Auslösen INIT und Betriebszustand OPI.
Nachstehend wird eine Beschreibung dieser Schnittstellenleitur.gen in näheren Einzelheiten gegeben.
Fehlerfeststell-Schnittstellenleitungen
PED Diese Leitung stellt eine Einzelleitung dar,
die durch ihre Codierung der Schnittstelle SIU-IOO die logische ODER-Verknüpfung aller Paritätsfehler-Detektorschaltkrcise innerhalb des angeschlossenen E/A-Prozessors anzeigt. Diese Leitung wird von der Schnittstelle SIU-100 benutzt, um anzuzeigen, daß eine Unterbrechung mit dem Pegel 0 an den Prozessor auszugeben ist.
809820/0808
_ Jo _
TBL Diese Leitung signalisiert im dx-rch den Pro
zessor gesetzten Zustand der Schnittstelle SIU-IOO, daß sie einen Ausnahmezustand festgestellt hat, während ein Pegel 0 oder ein Zeitablauf während des Selbsttests vorliegt.
STOF Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-IOO zu einem Modul, und sie zeigt im gesetzten Zustand an, daß der Modul jegliche Aktivität beenden soll.
INIT Diese Leitung erstreckt sich ebenfalls von
der Schnittstelle SIU-IOO zu einem Modul und sie veranlaßt im gesetzten Zustand, daß der Modul den initialisierten Status einnimmt.
OPI Dies ist ein Setz/Komplement-Leitungspaar
von einem Modul zu der Schnittstelle SIü-100. Dieses Leitungspaar zeigt durch seine Codierung an, wenn der Modul aktiv, mit Strom versorgt und bereit ist, Anweisungen zu erzeugen oder anzunehmen.
Nachdem die verschiedenen Arten von Schnittstellen, wie sie durch die Module gemäß Fig. 1 benutzt werden, beschrieben worden sind, sei nunmehr eine nähere Beschreibung der einzelnen Module gegeben.
E/A-Prozessor 200
Gemäß Fig. 2 weist der Prozessor 200 einen mikroprogrammierten Steuerabschnitt 201 auf, der in Abhängigkeit von in einem Steuerspeicher 201-10 gespeicherten Mikrobefehlen Steuersignale für die Ausführung von Befehlen erzeugt. Ferner umfaßt der Prozessor 200 einen Befehls-Pufferabschnitt 202 zur Speicherung von aus dem internen Speichermodul 500 abgerufenen Befehlen, einen Speicherabschnitt 203 und einen Verarbeitungsabschnitt 204 zur Ausführung arithmetischer und logischer Operationen unter Steuerung von in dem Steuerspeichcr 201-10 gespeichorten Mikroprogrammen.
809820/0898
Steuerspeicherabschnitt 201 2 7 S 0 I 9 9
Der Steuerspeicher 201-10 besteht beispielsweise aus Abschnitten eines Festwertspeichers ROM. Der Steuerspeicher 201-10 i3t über Signale von irgendeiner von acht Urcprungsadressenadressierbar, die an einem Auswahlschalter 201-14 verfügbar sind. Der Inhalt der adressierten Speicherplätze wird in ein /^usgangsregistor 201-15 ausgelesen und durch in einem Bleck 201-16 enthaltene Decodierschaltkreise decodiert. Zusätzlich werden Signale von einem der Felder des den Mikrobefehl enthaltenden Registers 201-IS als Eingangssignale für den Schalter 201-14 benutzt, um eine dox* acht Ursprungsadressen als Adresse für den ßteuerspeicher 201-10 auszuwählen. Die in das Register 201-15 eingelesenen Mikrobefehle weisen Adresskonstanten auf zum Verzweigen des Steuerspeichers 201-10 auf geeignete Mikroprogrammroutinen.
Wie aus Figur 2 ersichtlich, sind folgende Steuerspeicher-ürsprvTr^ adressen vorgesehen: Ünterbrechungs/Ausnahmesignale, die von Signalen abgeleitet werden, die von der System-Schnittstelleneinheii. 100 und von Schaltkreisen innerhalb des Prozessors 200 erzeugt werden; eine Nächst-Adressregisterposition, die an die über einen Addierschaltkreis 201-24 in ein Register 201-22 eingespeicherte Nächst-Adresseninformation angeschlossen ist; eine Rückkehradressregisterposition, der der Inhalt eines Rückkehrregisters 201-20 als Rückkehradresse zugeführt ist; eine Ausführungs-Adressregisterposi.tion, der von einem Wegsucherspeicher 2O1-2 über ein Speicherausgangsregister 201-4 eine Adresse zugeführt wird; eine Folgeadressregisterposition, die die Adresse ebenfalls aus dem Register 201-4 erhält und eine Konstantenposition, der ein Konstantenwert aus dem Ausgangsregister 201-15 zugeführt wird.
Die geeignete nächste Adresse wird durch den Addierschaltkreis 201-24 erzeugt, dem als ein Operandeneingang Adressignale in Form einer durch den Schalter 201-14 ausgewählten Ursprungsadresse und als ein anderer Operand Signale von Sprung. ••-Steuerschaltkreisen eines Blockes 201-26 zugeführt werden. Die Sprung-Steuerschaltkreise werden durch in dem Steuerspeicherregister 201-15 gespeicherte Konstantensignale beeinflußt und sie erzeugen einen geeigneten Wert als einen Operandeneingang für den Addierschaltkreis 201-24. Die durch den Addierschaltkreis 201-24
809820/0899
_ 36 _
erzeugte resultierende /\dresse ergibt sich als Summe von durch den Schalter 201-14 ausgewählten Adressen und von Konstanten-Signalen, die durch die Sprung-Steuerschaltkreise des Blockes 201-26 erzeugt v/erden. Die verschiedenen Positionen des Schalters 201-14 werden in Abhängigkeit von aus dem Steuei'speicher 201 --10 ausgelesenen Mikrobefehlen ausgewählt, um wiederum geeignete Adressen für in dem Steuerspeicher 201-10 gespeicherte Mikroprogramme zu erzeugen, wobei diese Mikroprogramme für die Ausführung einer Operation erforderlich sind, die durch den Operationscode eines Programmbefehls bestimmt ist. Der Operationscode des Befehls wird dem Wegsucherspeicher 201-2 über den Daterweg 201-6 zugeführt. Die Rückkehr-Adressregisterposition des Schalters 201-14 v/ird während der Programmfolge als Folge einer Verzweigungsoperation ausgewählt, während die Konstenregisterposition ausgewählt wird, um eine Verzweigung nach einem vorbestimmten Speicherplatz im Steuerspeicher 201-10 zu erzeugen, die durch das Konstantenfeld des in dem Register 201-15 gespeicherten Mikrobefehls bestimmt ist.
Unterbrechungen werden nach der Vervollständigung der Ausführung eines Programmbefehles verarbeitet. Aus Figur 2 ist ersichtlich, daß Leitungen HLIP und LZP, die das Vorhandensein eines höheren Unterbrechungspegels bzw. einer Unterbrechung mit dem Pegel Null anzeigen, Signale an den Schalter 201-14 anlegen. Das über die Leitung KLIP angelegte Signal wird mit einem Unterbrechungs-Sperrsignal aus einem Prozeßsteuerregister 204-22 einer UND-Verknüpfung unterzogen und das Resultat wird zusammen mit dem auf der Leitung LZP anliegenden Signal einem ODER-Gatter zugeführt. Wenn das das Vorhandensein der Unterbrechung mit höherem Pegel anzeigende Signal nicht gesperrt ist oder ein Signal auf der Leitung LZP angelegt wird, so wählen Signale von nicht dargestellten an den Schalter 201-14 angeschlossenen Schaltkreisen die Stellung Ausnahme/Unterbrechung aus. Die Signalleitungen, welche das Vorhandensein einer Unterbrechung (LZP und HLP) anzeigen, wählen eine Unterbrechungsfolge von Mikrobefehlen anstelle der Mikrobefehlsfolge für die Ausführung des nächsten Programmbefehles aus.
809820/0898
Ausnahmen anzeigende Signalleitungen sind an nicht dargestellte Steuerschaltkreise angeschlossen, die dem Schalter 201-14 zugeordnet sind und verursachen die Auswahl der Ausnahme/Unterbrechungsposition. Dies führt zu einer Adresse zur Bezugnahme auf eine Ausnahmefolge von Mikrobefehlen. In Abhängigkeit von dem Ausführungstyp kann die Ausnahme sofort verarbeitet werden, da die weitere Ausführung des Programmbefehles verhindert werden muß oder nicht möglich ist (z.B. Fehler, illegale Befehle). Die Ausnahme wira Beendigung der Ausführung des Programmbefehles verarbeitet/ wenn der Zustand keine sofortige Beachtung erfordert (z.B. Zeitablauf, überlauf usw.). Der Auftritt von Ausnahmen verursacht die Auswahl der Ausnahme/Unterbrechungsposition des Schalters 201-14 und das Setzen einer entsprechenden Bit-Pcsition im Prozeßsteuerregister 204-22.
809820/0898
Mit PDA in Fig. 2 bezeichnete Zeittaktsignale werden durch Taktschaltkreise innerhalb eines Blockes 201-30 erzeugt und sie dienen der Vorgabe geeigneter Speicherzyklen für den Steuerabnchnitt 201 sowie als Zeittaktsignale für den Betrieb der anderen Abschnitte des Prozessers 200 und der anderen Module des Systems gemäß Fig. 1. Die Taktschaltkreise weisen als einen Eingang die STOF-Leitung auf, die einen weiteren Betrieb des Steuerabschnittes 2Cl sperrt, wenn sie auf den Binärv;ert "1" gesetzt ist. Der-Block 2O1-3O umfaßt Schaltkreise, um der Schnittstelleneinheit SIU-IOO über die OPI-Leitung zu signalisieren, daß sich der Prozessor 200 im Betrieb befindet. Im Falle der vorliegenden Erfindung können die Taktschaltkreise ebenso wie die anderen Schaltkreise gemäß Fig. 2 als herkömmliche Schaltkreise ausgebildet sein, wie sie beispielsweise in der Veröffentlichung "The Integrated Circuits Catalog for Design Engineers" von Texas Instruments, Inc., 1972 beschrieben sind. Insbesondere können die Taktschaltkreise einen quarzgesteuerten Oszillator und Zählerschaltkreise aufweisen, während der Zähler 201-14 aus mehreren Daten-Selektor/Multiplexer-Schaltkreisen bestehen kann.
Aus Vorstehdem ergibt sich, daß bei den meisten durch Mikroprogramme gesteuerten Maschinen der Steuerspeicher 201-10 die erforderliche Steuerung eines jeden Prozessors pro Operationszyklus übernimmt. Zu diesem Zweck wird jedes Mikrobefehlswort, das aus dem Steuerspeicher 201-10 herausgelesen wird, während eines Operationszyklus in eine Anzahl getrennter Steuerfelder
809820/0833
unterteilt, die die erforderlichen Eingangssignale für die verschiedenen Auswahlschalter gemäß Figur '2 erzeugen. Diese Schalter werden zur Adressierung der verschiedenen Zwischenspeicher und für die Auswahl der Operanden benutzt. Die Steuerfelder erzeugen ferner Signale zum Festlegen verschiedener Testbedingungen für eine Verzweigung sowie Signale für die Steuerung der Operation einer Addier/Verschiebeeinheit im Abschnitt 204 und schließlich Signale für die Erzeugung von Steuerinformation, dis für dio Erzeugung von Anweisungen erforderlich ist.
Befehlspuffer-Abschnitt 202
Diesel* Abschnitt weist mehrere Register 202-2 für die" Speicherung von bis zu vier Worten von aus dem internen Speichermodul 500 abgerufenen Befehlen auf, die über ein Dateneingangsregister 204-18 zugeführt werden. Die Gruppe von Registern 202-2 ist an einen Befehlsregisterschalter 202-4 mit awei Stellungen angeschlossen, der seinerseits zwei Ausgangssignale erzeugt, ein Ausgangssignal CIR betreffend einen gerade ausgelesenen Befehl und ein weiteres Ausgangssignal NIR betreffend einen nächsten ausgelesenen Befehl. Die Auswahl von Befehlsworten auf einer Halb- oder Vollwortbasis wird in Abhängigkeit von dem Zustand der Bit-Positionen in dem laufenden Befehlszähler IC getroffen, der normalerweise in einem ersten Register der Arbeitsregister des Blockes 204-12 gespeichert ist.
Speicherabschnitt 203
Gemäß Figur 2 weist dieser Abschnitt einen Zwischenspeicher auf, der acht Gruppen von Registern aufweist, die acht verschiedenen Prozessen zugeordnet sind, die unterschiedliche Prioritätspegel besitzen. Der höchste Prioritätspegel entspricht dem Pegel 0 und der niedrigste Prioritätspegel entspricht dem Pegel 7. Jeder Gruppe bzw. jedem Pegel sind 16 Register zugeordnet.
809820/0898
Der Zwischenspeicher 203-10 wird über einen Daten-Auswahlschaiter 203-14 mit acht Schaltstellungen adressiert, wodurch den Adresseingängen 203-12 selektiv eine 7-Bit-Adrcsse aus einer der acht Urcprungsadressen zugeführt wird, Die drei höchstrangigsten Bit-Positionen der Adresseingänge 203-12 wählen eine der acht Registergruppen aus, während die verbleibenden vier Sits eines der. 16 Register auswählen. Die von der Schnittstelleneinheit SIU-100 auf den Leitungen AIL erzeugten Signale führen die drei höchstrangigsten Bits den Adre?.;seingängen 203-12 des Zwischenspeichern zu. Die verbleibenden Signale werden von dem Steucr.speicherregister 201-15 oder Felder des über IRSW augeführten Befehls erzeugt.
Das Schreib-Adressregister 203-22 wird über den Schalter 202-4 geladen, um Signale entsprechend den Bits 9-12 oder den Bits 14-17 des laufenden Programrribefehls zu speichern, wobei dieser durch eines der Felder des Mikrobefehls innerhalb des Registers 201-15 bestimmt wird. Das Schreib-Adressregistor weist somit Adressenspeicherraum für das Laden oder dss Rückführen eines Ergebnisses in eines der Allgemeinregister des Zwischenspeichers 203-10 auf. Die Schreiboperation wird durch ein Schreibtaktsignal ausgelöst, das entweder beim Schalten eines nicht dargestellten getakteten Schreib-Flip-Flops auf "1" oder in Abhängigkeit eines in das Register 201-15 geladenen Feldes eines Mikrobefehls auftritt. Bei einer Erzeugung durch das Schreib-Flip-Flop tritt das Schreibtaktsignal auf., wenn das Schreib-Flip-Flop beim Auftritt des nächsten PDA-Taktimpulses auf "0" zurückgestellt wird. Hierdurch wird eine auf einen Programmbefehl bezogene Schreiboperation während des Beginns der Verarbeitung des nächsten Befehls gestattet.
Der Inhalt des Schreib-Adressregisters 203-22 wird über den Auswahlschalter 303-14 einem Decodiernetzwerk 203-28 zugeführt, welches jedesmal ein Signal auf einer Ausgangsleitung erzeugt, wenn das Register 203-22 eine Adresse von 0,1 oder 15 speichert. Dieses Signal verhindert die Erzeugung eines Schreibtaktimpulses durch nicht dargestellte Gatterschaltkreise, wenn das Schreib-Flip-Flop auf "1" gesetzt ist. Dem Decodiernetzwerk 203-28 wird zusätzlich
609820/0899
von dem Prozeßzustandsregister 204-20 ein Modussignal zugeführt. Das Modussignal zeigt an, ob der Prozessor 200 in der Hauptbzw. Nebenbetriebsweise betrieben wird;und es wird mit dem Ausgangssignal einer UND-Verknüpfung unterzogen und zur Erzeugung eines Ausnahmesignales auf einer anderen Ausgangsleitung benutzt, die ihrerseits als ein Eingang zu dem Prozeßsteuerregister 204-22 und auf einen Eingang, der die Auswahl der Ausnahme/Unterbrechungsposition des Schalter 201-14 bewirkt, geführt ist. Hierdurch wird eine Veränderung des Inhalts des Prozeßzustands-registers GRO des Zwischenspeichers 203-10 verhindert. Der Inhalt eines adressierten Register-Speicherplatzes wird über einen Datenauswahlschalter 203-18 mit zwei Stellungen in ein Zwischenspeicher-Pufferregister 203-16 übernommen. Der Inhalt des Pufferregisters 203-16 wird sodann über einen weiteren Datenauswahlschalter 203-20 mit zwei Stellungen dem Verarbeitungsabschnitt 204 zugeführt. Die verschiedenen Schaltstellungen der Datenauswahlschalter 2O3-14, 203-18 und 203-20 werden durch verschiedene Felder ausgewählt, die in Mikrobefehlen enthalten sind, die in das Register 201-15 eingelesen werden. Der Zwischenspeicher 203-10 empfängt Datensignale über eine von zwei Ausgangsschienen, die wahlweise an eines von vier Arbeitsregistern des Blockes 204-12 angeschlossen sind.
Jede Gruppe von 16 Registern weist einen Prozeßzustandsregisterspeicherplatz (Allgemeinregister GRO) zur Speicherung von Information auf, die für die Steuerung des laufenden Prozesses von Bedeutung ist. Die ersten acht Bit-Positionen des Registers speichern Steuerungsinformation, die aufgrund ihrer Codierung den unterbrechenden Modul festlegt. Die nächste Position ist durch eine Vorrang-Bit-Position gegeben, die durch ihre Codierung die Betriebsweise der Operation festlegt. Das Register umfaßt ferner eine externe Register-Bit-Position, die angibt, ob der Registerinhalt verändert werden kann sowie eine Adressenmodus-Bit-Position, zwei Zustandscode-Bit-Positionen, eine Ubertrags-Bit-Position und 22 Bit-Positionen für die Speicherung eines Zählstandes, der periodisch heruntergezählt wird, während der zugeordnete Prozeß aktiv ist. Wegen der für eine Modifikation oder
109820/0801
Bezugnahme erforderlichen Frequenz des Zugriffs auf den Inhalt des Prozeßzustandsregisters sind Signale entsprechend dem Inhalt dieses Registers in einen der Register des Verarbeitungsabschnittes 204 (z.B. Register 204-20) gespeichert. Der Speicherplatz des Allgcmeinregisters zum Speichern des Inhalts des Froze/J-zustandsregisters dient daher zum Speichern des laufenden Viertes des Prozeß-Zustandsregisters des Abschnittes 204 beim Auftritt einer Unterbrechung.
Jede Gruppe von Registern weist ferner einen Befehlszähler (AlJgemeinregister GR1) zur Speicherung der Adresse des laufenden Befehls des zugeordneten Prozesses auf. Zusätzlich v/eist jede Gruppe von Registern ein Seitentabellen-Basisregister (Allgenieinregister GR15) und eine Anzahl von Allgemeinregistern (Allgemein register 2-14) zur temporären Speicherung von Operanden und Adressinformationen auf. Der Zwischenspeicher 2O.3--1Ü umfaßt ferner ein Register für eine Steuerblockbasis CBB, welches eine absolute Adresse speichert, die auf die Basis eines Ausnahmesteuerblockes und auf Unterbrechungssteuerblocktabellen im internen Speichermodul 500 verweist. Das erste Register GRO mit der höchsten Priorität innerhalb der Gruppe von Registern, dessen Inhalt niemals verändert wird, speichert die Steuerblockbas i.s~ information. Die Unterbrechungs-Steuerblocktabellen weisen 256 Gruppen von Speicherplätzen auf, welche Information für die Verarbeitung der Art der Unterbrechung speichern. Die Ausnahme-Steuerblocktabellen weisen 16 Gruppen von Speicherplätzen auf, die Information für die Verarbeitung des Ausnahmetyp:; speichern.
Ausnahmen sind vom Prozessor festgestellte Zustände, die den Prozessor 200 automatisch veranlassen, in eine der 16 Ausnahme-Verarbeitungsroutinen einzutreten. Die Ausnahmezustände werden durch eine 4-Bit-Ausnahmenumraer festgelegt, die den Bits 1O-13 des Programmbefchls entspricht, wenn der Prozessor in die Hauptbetriebsweise eintritt. In allen anderen Fällen weist: die Ausnahmenummer den Wert 0 auf. Die Ausnahmennummer (ECB-Nummer) wird zur Bestimmung eines der Ausnahmesteuerblöcke ECB mit vier Wortnn benutzt, welcher auf eine Ausnahme-Verarbeitungsroutina verweist.
B09820/0898
Die Byte-Adresse eines Ausnahinesteuerblockes ECB entspricht der Steuerblockbasis CBB-16 (ECB-Nummsr -1). Jeder Ausnahmesteuerblock ECB weist Werte zum Laden der Register PSR, IC und PTBR auf sowie zusätzlich einen Wert für eine Sicherungsbereich-Hinweisadresse, die als Stapelbereich für die Speicherung von Information dient, die dem laufenden Prozeß zugeordnet ist, bevor der Prozessor 200 in die Ausnahmeroutine eintritt. Die Adresse eines ünterbrechungs-Steuerblockes ICB entspricht der Steuerblockbasis CBB +16 (ICB-Nummer). Die ICB-Nummer wird aus dem Unterbrechungswort in der erläuterten Weise gewonnen. Der Unterbrechungssteuerblock stellt ebenfalls einen Block von vier Worten dar und er enthält Werte für die Register PSR, IC, GR14 und PTBR.
Verarbeitungsabschnitt 204
In diesem Abschnitt werden alle arithmetischen und logischen Operationen durchgeführt, die von den Programmbefehlen des Prozesses gefordert werden. Der Abschnitt 204 umfaßt eine Addier/Verschiebeeinheit 204-1, die in der Lage ist, arithmetische, Verschiebe- und logische Operationen mit einem Paar Operanden von 36 Bit durch zuführen. Die von einem Addierteil oder einem Verschiebeteil der Einheit 204-1 erzeugten Resultate werden aufgrund von Mikrobefehlen ausgewählt und anschließend selektiv über einen Datenauswahlschalter 2O4-8 mit vier Stellungen über ein Paar Ausgangsleitungen entweder zu irgendeinem der Arbeitsregister des Blockes 204-12 oder zu einem Datenausgangsregister 204-14 übertragen. Das Daten-Ausgangsregister 204-14 ist an die Leitungen der Prozessor-Datenschnittstelle 600 angeschlossen. Der Block 204-12 umfaßt vier Arbeitsregister RO bis R3, die der temporären Speicherung des Inhalts des Befehlszählers und der Adressen während einer Befehlsausführung dienen. Die Register können aus irgendeiner Position des Schalters 204-8 geladen werden. Das zu ladende Register und das hierzu erforderliche Schreibsignal wird durch Felder innerhalb eines Mikrobefehls festgelegt, der dem Register 201-15 entnommen wird.
Gemäß Figur 2 sind die Register an ein Paar von Ausgangsschienen WRPund WRR angeschlossen. Die WRP-Schiene ist an Adresseingänge 204-5.an den Schalter 203-18 und den Zwischenspeicher 203-10 an-
809820/0898
geschlossen. Die WRR-Schicne ist an den A-Operandenschalter 203-20, den B-Operandenschalter 204-1, an das Register 2O4--2O und an das Register 204-22 angeschlossen. Die zum Anschluß an die ViRR- und WRP-Schienen ausgewählten Register werden durch ein Feldpaar eines Mikrobefehls bestimmt, der aus dem Register 201-15 ausgelesen wird.
Gemäß Figur 2 weist der Verarbeitungsabschnitt 204 ein Prozeßzustandsregister 204-20 und ein Prozeßsteuerregister 204-22 auf. Das Prozeßzustandsregister 204-20 wird in der erwähnten Weise über die Ausgangsschiene WRR vom Zwischenspeicher 203-10 geladen. Das Prozeßsteuerregister 204-22 ist ein 36-Bit-Register, das allen acht Unterbrechungspegeln gemeinsam ist. Die Bit-Positionen des Prozoßsteuerrecjis ters 204-22 enthalten die folgende Information. Die Bit-Positionen 0-8 bestimmen folgende verschiedene Arten von Nicht-Hauptbetriebsweise-Ausnahmeii:
PCR-Bit-Position Ausnahmetyp
0 Operation nicht vollständig; keine Antwort der Schnittst^lleneinheit SIU-100 auf den Leitungen ARA oder ARDA.
1 Seitenadress-Grenzfehler (Kennschlüsselprüfung)
2 Seiten-Zugriffsfehler
3 Seite im Speicher nicht vorhanden
4 Illegale Operation
5 Prozeß-Zeitgeber-Ablauf
6 überlauf
7 Verriegelungsfchler
8 Adressen-Fehlausrichtung
Der Ausdruck "Fehler" bezieht sich nicht notwendigerweise auf den /uiftritt eines Hardware-Fehlers, sondern umfaßt auch Fehlerzustände usw.
809820/0898
_ 47 . .
Die Bit-Positionen 9-12 speichern die durch das Datenweg-Substrat festgestellten Paritätsfehler. Die Bit-Position 13 zeigt an, wenn ein Paritätsfehler in dem Daten-Eingangsregister festgestellt wird. Die Bitpositionen 14-15 speichern Hinweise auf Paritätsfehler, die von dem Steuerspeicher und dem Wegsucherspeicher festgestellt werden. Das Bit 15 signalisiert, daß keine Antwort auf die Unterbrechung mit dem Pegel O vorliegt. Die Bit-Positionen 23-26 bestimmen die Prozessornummer und den Pegel, die über die Leitungen PNID und AIL erhalten werden. Die Bit-Positionen 27 stellt ein Unterbrechungs-
909820/0898
Sperr-Bit dar, während die Bit-Positionen 28-35 Unterbrechungs-Anforderungs-Bits speichern, die für den Fall, daß sie den Wort "1" aufweisen, eine Unterbrechung mit einem der Bit-Position entsprechenden Pegel anzeigen (z.B. Bit 28 = Pegel O). Die Bit-Positionen 27-35 können durch einen Programmbefehl über die Ausgangsschiene WRR aus der Reihe von Registern des Blockes 204-12 geladen werden. Die Inhalte eines jeden Registers 2Ο4-2Ο und 204-22 v/erden selektiv über einen Datenauswahlschalter 204-24 mit zwei Positionen einer der Positionen des Datenauswahlschaiters 204-8 zugeführt. Das Register 204-20 ist ferner mit der PI-Position eines zweistufigen Steuerungs-Auswahlnchalters 2Ο4-1Ο und eines vierstufigen Adressen-Auswahlschalters 204-6 verbunden. Der Steuerungsschalter 204-10 erzeugt Stouerungsinforination für die Schnittstelleneinheit SIU-100, welche zur Übertragung dsr Anweisung zu dem richtigen Modul verwendet wird. Eines der Felder des aus dem Register 201-15 ausgelesenen Mikrobefehls wählt die geeignete Position entweder für eine Speicher oder eine programmierbare Schnittstellenanweisung aus. Die Steuerungsinfcrrnation für eine Speicheranweisung wird erzeugt durch Felder innerhalb des Mikrobefehls und durch seitenunterteilte Adresseninfornation vom Zwischenspeicher 204-4 oder durch absolute Adresseninforreation von der Schiene WRP. Im Falle einer programmierbaren Schnittstellenanweisung wird die Steuerungsinformation wie folgt erzeugt: Das Bit 0 wird bei einer programmierbaren Schnittstellenanweisung zwangsläufig auf den Wert "1" gesetzt; die Bits 1-4 entsprechen den Bits 0-3 des Registers 204-20 und die Bits 5-6 entsprechen den Bits eines der Felder des Mikrobefehles, die durch ihre Codierung angeben, ob eine Einfach- oder Doppelwortübertragung vorliegt und ob es sich bei der Operation um einen Lese- oder Schreibzyklus handelt. Beim Start eines Speicherzyklus oder bei der Auslösung einer Anweisung v/erden die Signale des Steuerungsschalters 204-10 in ein Steuerungsregister 204-16 geladen, das die Signale den geeigneten Leitungen der Datenschnittstelle 600 des Prozessors 200 zuteilt. Die zusätzliche Steuerungsinformation aufweisende Anweisung wird durch die Position 2 des Adressenschalters 204-6 im Falle einer programmier-
809820/0890
baren Schnittstellenanweisung erzeugt.
Wie der Figur 2 weiterhin entnehmbar ist, umfaßt der Verarbeitungsabschnitt 204 einen Zwischenspeicher 204-4, der über Aciresseingänge 204-5 adressierbar ist. Der Zwischenspeicher 204-4 gestattet eine Seitentabellen-Adresspeicherung für jeden der acht Unterbrechungspegel, die bei der Erzeugung absoluter Adressen für die Adressierung des internen Speichermoduls 500 benutzt werden. Im Falle der Adressierung wird der Inhalt des Speicherplatzes des Zwischenspeichers 204-4 in zwei Positionen des Adressensclialters 2O4-6 mit vier Positionen ausgelesen. Diese zwei Positionen werden für eine Bezugnahme auf Seiten innerhalb des internen Speichermoduls 500 benutzt. Da die Seitenunterteilung des Zwischenspeichers 204-4 kein besonderes Merkmal der vorliegenden Erfindung bildet, wird auf eins nähere Diskussion dieser Speichertechnik verzichtet. Die anderen beiden Positionen des Adressen-Auswahlschalters 204-6 v/erden zur Vorgabe der Speicher- oder programmierbaren Schnittstellenanweisung benutzt. Insbesondere wird die Position 1 des Adressenschalters 204-6 bei Auswahl durch ein Adressen-Steuerfeld eines im Register 201-15 gespeicherten Mikrobefehlswortes zur Erzeugung der Lese/Schreib-Speicheranweisung benutzt, die Bits 0-8 mit einer Codierung entsprechend den vorbestimmten Feldern des Mikrobefehlswortes umfaßt und ferner Bits 9-35 aufweist, die aufgrund ihrer Codierung entweder der seitenunterteilten Adresseninformation des Speichers 204-4 oder den absoluten Adressen-Bits entsprechen, wie sie von den Arbeits-
. registern des Blockes 204-12 auf der Ausgangsschiene ViRP ausgegeben werden. Wird die PI-Position des Schalters 204-6 ausge-
" wählt, so erzeugt der Schalter eine programmierbare Schnittstellenanweisung mit folgenden Bits: Bit 0 weist den Wert "0" auf; Bit1 wird aus einem Feld eines Mikrobefehls zugeführt, der in dem Register 201-15 gespeichert ist/ Bit 2 wird dem Bit 9 des PSR-Registers 204-20 entnommen und bestimmt, ob der ablaufende Prozeß gewisse externe Register verändern kann/ Bits 5-3 entsprechen den Bits 4-7 des Registers 204-20 und sie bestimmen den Anschluß oder Unterkanal innerhalb des Moduls; Bit 3 bestimmt
809820/0808
durch seine Codierung die Prozessor-Paarnummer, die von der Schnitrstelleneinheit SIU-IOO angewählt wurde; Bit 4 weist den Wert "0" auf und die Bits 9-35 entsprechen den Eits 9-35 der Schiene WRP, die die absolute Adresse der programmierbaren Schnittstellenanweisung liefert.
Fehler-Detektorschaltkreise 201-32- Fig. 2
Zusätzlich zu den zuvor beschriebenen Scheltkreisen weist jeder E/A-Prozessor Fehler-Detektorschaltkreise herkömmlicher Bauart auf. Diese Schaltkreise umfassen beispielsweise Paritätsprüfschaltkreise, die Prüfungen hinsichtlich verschiedener Speicherabschnitte eines jeden E/A-Prozessors ausführen. Der Block 201-32 liefert ferner Signale an die verschiedenen Leitungen der Schnittstelle 604.
Obgleich sie in Form eines einzigen Blockes dargestellt sind, liegt es auf der Hand, daß die Paritätsprüfschaltkreise an verschiedenen Stellen des Prozessors 200 angeordnet sind. Beispielsweise v/erden die vier Paritätbits der in den Allgemeinregister-Speicherplätzen des Zwischenspeichers 203-10 gespeicherten Daten durch Schaltkreise erzeugt, die an die Eingangs-Datenschiene des Zwischenspeichers 203-10 angeschlossen sind. Paritätsschaltkreise, die an den Ausgang des SPB-Registers angeschlossen sind, überprüfen die Ausgancjssignale auf eine korrekte Parität. In gleicher V/eise erzeugen Parität-Erzeugungsschaltkreise die Parität für Signale am Ausgang des B-Operandenschalters 204-1, dessen Information in den PTN-Zwischenspeicher 204-4 einzuschreiben ist. Die Parität eines jeden aus dem PTW-Zwischenspeicher 204-4 ausgelesenen Byte wird durch Paritätprüfschaitkreise geprüft, die am Eingang des Adressenschalters 204-6 angeordnet sind.
Der Steuerspeicher 201-10 und der Wegsucherspeicher 201-2 weisen zusätzlich Paritätsprüfschaltkreise zur Feststellung des Vorliegens von Einzelbitfehlern in Speicherplätzen auf. Beim Auftritt eines Fehlers werden die entsprechenden Steuerspeicherbit (z.B. die Bitpositionen 14-15) des PCR-Registers 204-22 gesetzt. Ferner prüfen
8Ö982Ö/Ö898
_ 51
an das Daten-Eingangsregister 204-18 angeschlossene Paritätsprüfschaltkreise alle Daten und Befehle, die in das Datenbit-Eingangsregister 204-18 eingetaktet werden. Ein hinsichtlich Daten
der Schnittstelleneinheit SIU-IOO festgestellter Paritätsfehler
setzt das entsprechende Substrat-Paritätsfehlerbit (z.B. die Bitpositionen 9-12) für das fehlerhafte Byte und die Daten-Eingangs-Bitposition 13 des PCR-Registers 204-22.
Der Block 201-32 weist logische ODER-Schaltkreise auf, denen Signalhinweise auf die in dem PCP-Register 204-22 gespeicherten Paritätsfehlerbits zugeführt werden. Eine Gruppe dieser Schaltkreise
erzeugt ein resultierendes Signal für die Leitung PED, das der logischen ODER-Verknüpfung der Paritätsfehlersignale entspricht.
Zähler- und Detektorschaltkreise
Eine letzte Gruppe von Schaltkreisen gemäß der vorliegenden Erfindung betrifft die Schaltkreise der Blöcke 201-34, 201-36 und 201-38, Der Block 201-34 umfaßt einen 9-stufigen Zähler herkömmlicher Bauart, der durch die Schaltkreise des Blockes 201-36 gesteuert wird. Der Zähler dient als "Pegel OM-Zeitgeber, der feststellt, wenn der Prozessor 200 nicht auf eine Unterbrechungsanforderung innerhalb
einer Zeitperiode anspricht, die dem zweifachen der für ein nichtvollständiges Operationsintervall benötigten Zeit entspricht.
In näheren Einzelheiten wird der Zähler anfänglich durch die Schaltkreise des Blockes 201-36 auf den Zustand 0 eingestellt und dieser Zustand wird so lange beibehalten« wie die Leitung LZP den Binärwert "0" beibehält. Wenn die Leitung LZP auf den Binärwert "1" umschaltet:so trennen die Schaltkreise des Blockes 201-36 das Initialisierungssignal ab und der Zähler beginnt mit der Zählung und erhöht seinen Zählstand in Abhängigkeit von jedem PDA-Signal der
Schaltkreise des Blockes 201-30 jeweils um eins. Wenn der Zähler
seinen maximalen Zählstand erreicht (alle Binärstellen weisen den
Binärwert "1" auf) und die Leitungen AIL noch nicht auf den Binärwert "0" umgeschaltet sind, so erzeugt der Zähler ein Ausgangssignal, durch welches die Bitpor.ition 16 des PCR-Registers 204-22 auf den Binärwert 1 gesetzt wird. 809820/089B
Die "ählntandserhöhung des Zählers des Blockes 201-34 wird durch die Schaltkreise des Blockes 201-36 angehalten, wenn entweder die Leitungen AIL auf den Binärwert "0" umschalten oder die Leitung LZP durch die Schnittstelleneinheit SlU-IOO auf den Binärwert "0" umgeschaltet wird. Diese Signale setzen ebenfalls den Zähler in den Anfanyszustand. Schließlich legen die Schaltkreise 201-36 die Signale auf der Leitung INIT als Eingang an den Schalter 201-14 an. Wenn die Schnittstelleneinheit SIU-IOO die Leitung INIT auf den Binärwert "1" setzt, so wird hierdurch der Inhalt der verschiedenen Register innerhalb des Prozessors 200 (z.B. das PCR-Register 204-22) gelöscht. In dem zurückgestellten Zustand beginnt der Prozessor 200 mit der Bearbeitung einer Initialisierungsroutine im Steuerspeicher 201-10.
Die Schaltkreise des Blockes 201-38 weisen verschiedene ODER- und UND-Gatter auf. Diese Schaltkreise werden benutzt, um die Leitung TBL auf den Binärwert "1" zu setzen. Die Leitung TBL wird auf "1" gesetzt, wenn die Bitposition 16 des PCR-Registers 204-22 infolge eines Zeitablaufs gesetzt worden ist bevor die Schnittstelle SIU den Prozessor 200 auf den Pegel 0 umgeschaltet hat. Somit werden die Signale entsprechend der Bitposition 16 und der Pegcl-Bitpositionen 24-26 einer UND-Verknüpfung unterzogen, so daß die Leitung TBL auf "1" umschaltet, wenn die Bitposition 16 den Binärwert "1" aufweist und die Bits des PCR-Registers anzeigen, daß sich der Prozessor nicht auf dem Pegel 0 befindet. Eine andere Gruppe von Schaltkreisen erzeugt eine logische ODER-Verknüpfung der Ausnahme-Bitsignale, die in dem PCR-Register 204-22 (z.B. die Bitpositionen 0-8) gespeichert sind. Das Ausgangssignal v/ird sodann einer UND-Verknüpfung mit den Pegelbits 24-26 des PCR-Registers 204-22 unterzogen. Wenn somit der Prozessor auf den Pegel 0 umgeschaltet worden ist, so setzt eines der Ausnahmesignale die die Leitung TBL auf den Binärwert "1".
Β09Θ20/0838
_ 53 _
Vor dem Umschalten des Prozessors 200 auf den Pegel 0 sind jedoch die Ausnahmesignale nicht in der Lage, die Leitung TBL auf den Binärwert "1" umzuschalten. Der Grund hierfür liegt darin, daß während eines anfänglichen Selbsttestes in der Zeit, in der ein Fehler auftreten kann, ein Ausnahmesignal in dem PCR-Register 204-22 bereits gespeichert sein könnte und es nicht wünschenswert wäre,
daß dieser Fall nicht als Störung angezeigt würde. Daher wird ein spezifischer Test (Selbsttest) benutzt, um Störungsanzeigen in der erläuterten Weise zu bi3.den.
809820/0898
System-Schnitts telleneiriheit 100
Unterbrechungsabschnitt 101
Die System-Schnittstelleneinheit 100 dient dem Nachrichtenaustausch zwischen den Modulen des Systems gemäß Figur 1 über mehrere Doppelkanal.scha.lter. Verschiedene Doppelkanalschalter werden zum Sammeln der Signale auf den Leitungen der verschiedenen Schnittstellen der Module verwendet. In Figur 3a sind die Schalter und Schaltkreise des Unterbrechungsabschnittes 101 zum Verarbeiten der Modul-Unterbrechungsschnittstellen dargestellt. Im System gemäß Figur 1 sind Module dargestellt, die an die Anschlüsse LMO, A,E, G und J angeschlossen sind und die jeweils Signale zu der Schnittstelleneinheit SIU-100 über verschiedene Leitungen der Unterbrechungs-Schnittstelle 602 zuleiten. Die Schnittstelle SIU-100 gibt zusätzlich Signale über eine Unterbrechungs-Schnittstelle 600 an den zugeordneten Anschluß L gemäß Figur 1 ab.
Gemäß Figur 3a gibt jeder Modul, wenn er eine Bearbeitung anfordert, ein Signal auf seiner Unterbrechungsanforderungsleitung IR zusammen mit einer geeigneten Unterbrechungs-Bestimmungsinformation auf den Leitungen IDA ab, wobei diese Leitungen den Schaltkreisen eines Unterbrechungsprioritäts- und Steuerblockes 1O1-2 zugeführt sind. Die Schaltkreise des Blockes 101-2 überwachen alle Unterbrechungs-Schnittstellen und sie wählen den geeigneten, dem Prozessor 200 zugeordneten Prozeß aus/ wenn die Anforderung eine Priorität aufweist, die höher ist als die Priorität des gerade ausgeführten Prozesses. Wenn der Prozessor 200 seine Bereitschaft zur Aufnahme der Anforderung signalisiert, schaltet die Schnittstelleneinhvxt SIU-100 die der höchsten Prioritätsanforderung zugeordnete Identifizierungsinformation auf den Prozessor 200. Die Identifizierungs.information weist eine Unter-
809820/0838
brechungs-Steuerblocknumraer von 8 Bit einschließlich eines Paritäts-Bits auf sowie eine Untsrbrechungs-Pegelnummer von 3 Bit und eine Prozessornummer von einem Bit mit einem Paritäts-Bit und schließlich eine Kanalnummer von 4 Bit.
Die Schaltkreise des Blockes 101-2 weisen Decodierschaltkreise auf, dieProzessornummer und die Unterbrechungs-Anforderungssignale decodieren. Unter der Voraussetzung, daß kein Paritätsfehler vorliegt, werden die Ausgangssignale der Decodierschaltkreise den Prioritäts-Logikschaltkreisen des ausgewählten Prozessors zugeführt. Die Prioritäts-Logikschaltkreise decodieren die Unterbrechungs-Pegelsignale und bestimmen den höchsten Prioritätspegel und sodann die Priorität des Anschlusses, so daß der Modul mit dem höchsten Prioritätspegel und der höchsten Anschlußpriorität ausgewählt wird. Die Unterbrechungs-Anschlußpriorität innerhalb eines vorgegebenen Pegels stellt sich wie folgt dar:
Alt; Anschluß L; Anschluß A, Anschluß B, Anschluß C; Anschluß D; Anschluß E; Anschluß F, Anschluß G; Anschluß H; Anschluß I und Anschluß K.
Dies bedeutet hinsichtlich des Systemes gemäß Figur 1, daß der Anschluß des laufenden Prozesses die höchste Priorität gefolgt von der Schnittstelleneinheit SIU-IOO, dem Hochgeschwindigkeitsmultiplexer 300, dem Zentralprozessor 7OO, dem Prozessor 200 und dem Niedriggeschwindigkeitsmultiplexer 4OO aufweist.
Die Prioritätsschaltkreise des Blockes 101-2 erzeugen ein Ausgangssignal auf einer Leitung von N-Ausgangsleitungen, wobei die Zahl N der Anzahl der unterbrechenden Module innerhalb des Systems entspricht. Die N-Ausgangsleitungen werden einem Daten-Auswahl scha lter 101-4 mit acht Positionen zugeführt, der die Unterbrechungs-Pegelsignale eines Unterbrechungspegels mit einer höheren Priorität als des gerade bearbeiteten Pegels auswählt und in ein Register 101-6 überträgt. Die Ausgangssignale des Registers 101-6 werden auf den Leitungen AIL ausgegeben, wenn der Prozessor 200 die Leitung IDR den Wert "1" annehmen läßt, vorausgesetzt,daß die Schnittstelleneinheit SIU-100 zuvor
809820/0898
die Leitungen HLlP und LZP zur Annahme des Wertes "1" .veranlaßt hat. Wenn der laufende Prozeß für eine Unterbrechung nicht gesperrt ist, so verursacht die Unterbrechungsanforderung die Aufgabe dos laufenden Prozesses durch den Prozessor 200 und die Annahme eines Unterbrechungswortes von der SchnittGtelleneinheit SIU--1OO, wobei dieses Wort die zuvor erwähnte Identifizierungsinformation enthält. Das Unterbrechungswort weist im einzelnen folgendes Format auf:
Bit 0 ist eine neue Unterbrechungs-Bit-Position. Wenn dieses Bit auf den Wert "1" gesetzt ist, so zeigt es an, daß es sich bei der Unterbrechung um eine neue Unterbrechung bandelt und wenn es auf den Wert ''O" gesetzt ist, so zeigt es an, daß die Unterbrechung einen zuvor unterbrochenen Prozeß betrifft, der v/ieder aufgenommen wird.
Bits 1-17 werden nicht benutzt und weisen den Wert "0" auf. Bits 18-27 bestimmen die Unterbrechungs-Steuerblocknumraer, wobei die Bits 18 und 27 auf den Wert "0" gesetzt sind. Bits 28 - 31 werden durch die Schnittstelleneinheit SIU-100 erzeugt und bestimmen den Ursprungsmodul.
Bits 32-35 werden durch die Module mit Mehrfachanschlüssen erzeugt und bestimmen den Unterkanal oder Anschluß innerhalb des Ursprungsmoduls.
Die Ausgangsleitungen der Unterbrechungs-Prioritätsschaltkreise 101-2 werden einem weiteren Daten-Auswahlschalter 101-8 zugeführt. Da nur der die höchste Priorität aufweisende anfordernde Modul ein Signal an den Auswahlschalter 1O1-8 abgeben wird, ist dieser in vorbestinunter Weise so verdrahtet, daß er einen Satz codierter Steuerungssignale abgibt, die den physikalischen Anschluß festlegen, mit dem der anfordernde Modul verbunden wird. Hierzu diener beispielsweise die Bits 28-31 des Unterbrechungswortes. Im vorliegenden Fall werden die folgenden Steuerungscodes für die Auswahl der Module gemäß Figur 1 erzeugt:
809820/0898
Code Identifizierter Schnittstelleneinheit-Anschluß
0000 Interner Speichermoudl - Anschluß LMO
0001 Anschluß K
0010 Schnittstelleneinheit SIU-100 - Anschluß L
0101 Niedriggeschwindigkeitsmultiplexer 400 - Anschluß
0110 Prozessor 200 - Anschluß G
1101 Hochgeschwindigkeitsmultiplexer 300 - Anschluß A
1110 Zentralprozessor 700 - Anschluß E
Der von dem Auswahlschaltkreis 101-8 erzengte Vier-Bit-Code wird seinerseits einerGruppe herkömmlicher UND-Gatterschaltkreise zugeführt, die in dem Gatternetzwerk 101-12 enthalten sind. Die andere Identfizierungsinformation, die von den verschiedenen Ursprungr;-modulen des Systems erzeugt wird, v/ird anderen Gatterschaltkreisen des Netzwerkes 101-12 zugeführt. Insbesondere führt jed^r Modul eine Unterbrechungs-Steuerblocknummer ICBN über die Leitungen IDA einer Position des Datenauswahlschalters 101-14 zu. Ferner erzeugt jeder Modul auf den Leitungen IMID der Unterbrechungsschnittstelle für andere Gatterschaltkreise des Netzwerkes 101-12 die Information, die zur Bestimmung des anfordernden Unterkanals oder Anschlusses des Quellenmoduls erforderlich ist. Wenn der Prozessor 200 die Leitung IDR zur Annahme des Wertes "1" veranlaßt, so gitbt die Schnittstelleneinheit SIU-100 über eine Stellung des Auswahlschalters 101-20 die Signale des Gatternetzwerkes 101-12 an die Leitungen DFS der Prozessor-Datenschnittstelle 600 ab. Die anderen Positionen des Schalters 101-20 sind nicht dargestellt, da sie für ein Verständnis der vorliegenden Erfindung ohne Bedeutung sind.
Datenübertragungsabschnit 102
In Figur 3b ist der Datenübertragungsabschnitt 102 der Systemschnittstelleneinheit 100 dargestellt. Dieser Abschnitt enthält prioritätsschaltkreise, welche festlegen, welcher Modul über seine programmierbare Schnittstelle 601 Anweisungen zu dem Hochgeschwindigkeitsmultiplexer 300 übertragen hat und welcher Quellenmodul über seine Datenschnittstelie 600 Daten zu dem
809820/0896
Multiplexer 300 zu übertragen hat. Weiterhin weist der Abschnitt 102 Prioritätsschaltkreise r.af, welche festlegen, welcher Quellennodul entweder Daten oder Anweisungen nach dem internen Speichermodul 500 zu übertragen hat.
Es sei darauf verwiesen, daß Übertragungen zwischen einem Paar von Modulen erfolgen, wenn ein Modul eine Anforderung an den anderen Modul erzeugt hat und diese Anforderung durch den anderen Modul angenommen worden ist. Damit eine Anforderung angenommen wird, muß der anfordernde Modul die höchste Priorität aufweisen, beide Module müssen sich in einem Zustand der Empfangsbereitschaft für die Information befinden und der Datenübertragungsweg muß verfügbar sein und darf nicht belegt sein.
Die von dem Prozessor 200 an den Abschnitt 102 herangeführten Signale werden hinsichtlich ihrer Erzeugung in großem Umfang durch verschiedene Felder der aus dem Prozessorregister 201-15 gemäß Figur 2 herausgelesenen Mikrobefehle gesteuert. Beispielsweise wird die von dem Prozessor 200 zu den Schaltkreisen des Blockes 102-4 zugeführte Leitung AOPR durch ein Steuer-Bit-Feld eines aus dem Register 201-15 ausgelesenen Mikrobefehls betreffend den Anforderungstyp der Schnittstelleneinheit SIU freigegeben, wobei das Bit-Feld durch seine Codierung die übertragung einer Lese/Schreibspeicher- oder programmierbaren Schnittstellenanweisung festlegt. Die an den Datenauswahlschalter 102-2 angelegten Leitungen der Prozessor-Datenschnittstelle 600 vermitteln eine Anweisungsinformation, welche durch eine Mikroprogrammsteuerung erzeugt wird, die in das Prozessor-Datenausgangsregister 204-14 gemäß Figur 2 geladen ist. Die Leitungen SDTS führen Signale, die durch eine Mikroprogrammsteuerung erzeugt werden, welche in das Prozessor-Steuerungsregister 204-16 gemäß Figur 2 geladen ist.
Hinsichtlich des Systems gemäß Figur 1 übertragen nur E/AProzessoren Anweisungen nach dem Multiplexer 300 und der Prozessor 200 gibt Sign -",ο an das Netzwerk 102-4 ab. Das Netzwerk 102-4 weist daher Decodierschaltkreise auf, welche die Steuerungsinformation des Prozessors decodieren, falls der Prozessor
809820/0899
Anweisungen nach dem Multiplexer 3OO zu übertragen wünscht. Liegen mehrere E/A-Prozessoren vor und fordern mehrere Prozessoren während des gleichen Zyklus eine übertragung, so wählt ein Prioritätsschaltkreis innerhalb des Hetzwerkes 1O2-4 den Modul aus, dem die höchste Priorität zugeordnet ist und gibt die übertragung einer Anweisung durch diesen Modul nach dem Multiplexer 300 auf den Leitungen PDPS seiner programmierbaren Schnittstelle 601 frei. Insbesondere versorgt das Netzwerk 102-4 den Auswahlschalter 102-2 mit Signalen, die Signale des geeigneten Moduls auswählen. Dieser Fall tritt ein, wenn der Multiplexer 300 der Schnittstelleneinheit SIU-1OO anzeigt, daß er bereit ist, eine Anweisung aufzunehmen, indem er den Wert der Leitung PIR auf "1" setzt. Zum gleichen Zeitpunkt setzt das Netzwerk 102-4 die Leitung APC auf den Wert "1", wodurch dem Multiplexer 300 angezeigt wird, daß er die auf den Leitungen PDFS angelegte Anweisung annehmen soll. Wenn der Prozessor einen Befehl ausführt, der ihn zur Abgabe einer programmierbaren Schnittstellenanweisung an den Multiplexer 3OO veranlaßt, so legt der Prozessor 200 die Prozessornummeridentfikation im Bit 3 der Anweisung ab. Der Multiplexer 300 speichert die Prozessornummer, die in der Anweisung enthalten ist, bis er eine Unterbrechungsanforderung abzugeben wünscht, wobei dann die Prozessornummer einen Teil der Unterbrechungsdaten bildet. Wenn die programmierbare Schnittstellenanweisung dem Multiplexer 3OO übermittelt wird, so wird die den Prozessor 200 als den Anfordercr bestimmende Steuerungsinforraation In einem Register 102-6 gespeichert, das dem Multiplexer 300 an dem Anschluß A zugeordnet ist. Bei einer Reaktion des Multiplexers 3OO durch Erzeugung einer Übertragungsanforderung gelesener Daten an die Schnittstelleneinheit SIU-1OO wird der Inhalt des Registers 102-6 zur Festlegung des Prozessors 200 als dem tatsächlichen die Daten empfangenden Modul benutzt.
Eine ähnliche Einrichtung wird zur übertragung von Datensignalen zu dem Multiplexer 3OO verwendet. Gemäß Figur 1'ist der Speicherntodul 500 der einzige Modul, der Daten zu dem Multiplexer 3OO überträgt. Eine solche Übertragung erfolgt beim Auftritt einer Speicherleseanwcisung ZAC, die über das Metzwerk 102-20 von dem
809820/0896
- co --
Multiplexer 300 an don Speichermoudul geleitet wird. Eei der Weiterleitung der Anweisung durch den Multiplexer 300 erzeugt die Schnj ttstellenemheit SIU-1OO den geeigneten Anforderer-IdentifizLcrungscodc von 4 Bits (Steuerungscode), der zu der vom Multiplexer 300 übermittelten Mehrfachanschluß-Idontifizierunysinformation gehört. Die Information ist in dem Speicherlr.odul 500 gespeichert und wird zu der Schnittstelleneinheit SIU-100 zurückgeholt, wenn der Modul 500 eine Ubertragungsanforderung fürgelesene Daten erzeugt und hiermit dem Multiplexer 300 signalisiert, daß er die Daten aufzunehmen hat. Wenn die Schnittstelleneinheit SIU-100 die Anforderung aufnimmt, so wird dies dem Multiplexer 300 angezeigt, indem die Leitung ARDA den Wert "1" einnimmt.
Die Leitung für die Ubertragungsanforderung gelesener Daten RDTR signalisiert im durch den Speichermodul 500 gesetzten Zustand dem Netzwerk 102-14, daß sie bereit ist, während eines Operationszyklus ausgelesene Information zu übertragen.Der interne Speichermodul 500 liefert ferner Signale an die Leitungen RIFM zur Festlegung des anfordernden Moduls, zu welchem die Information zu übertragen ist. Insbesondere decodieren Schaltkreise innerhalb des Decodiernetzwerkes 102-14 die an die Leitungen RIFM angelegten Identifizierungsignale und falls diese Signale anzeigen, daß der interne Speichermodul 500 bereit ist, Information zu dem Multiplexer 300 zu übertragen und daß der Multiplexer 300 bereit ist; die Information aufzunehmen, so legt das Decodiernetzwerk 102-14 die geeigneten Signale an den /vuswahlschalter 102-12 und an Schaltkreise innerhalb eines Gatternetzwerkes 102-16 an. Zusätzlich legt das Decodiernetzwerk 102-14
und
ein Signal an die Leitung ARDA der Datenschnittstelle an signalisiert hiermit dem Multiplexer 300, daß, er auf den Leitungen DFS seiner Schnittstelle 600 die Daten von der Schnittstelleneinheit SIU-100 anzunehmen hat. Die Schaltkreise des Blockes 102-16 legen die geeignete Mehrfachanschluß-Identifizierungsinformation an die Leitungen MI S an, wodurch der anfordernde Unterkanal bestimmt wird. Wenn die Datenübertragung stattgefunden hat, so bewirkt das Netzwerk 102-14, daß die Leitung RDAA
809820/0898
den Wert "1" einnimmt, wodurch dem anfordernden Modul signalisiert wird, daß die Daten von dem Speicherinodul DOO aufgenommen worden sind.
Eine Anordnung ähnlich dem Netzwerk 102-14 wird von de?: Schnittstelleneinheit SIU-100 zur übertragung von programmierbaren Schnittstellen- und Speicheranweisungen von einem der Module gemäß Figur 1 nach dem internen Speichermodul 500 verwendet. Der Modul 500 bewirkt, daß entweder die Leitung PIR oder die an das Decodiernetzwerk 102-20 angeschlossene Leitung ZIR den Wort "1" einnimmt, wenn er bereit ist, eine programmierbare Schnittstellen- oder Speicheranweisung anzunehmen. Zusatzlieh führer der Prozessor 200, der Prozessor 7OO und der Multiplexer 300 dem Netzwerk 102-20 Signale auf der Leitung AOPR und den Leitungen SDTS ihrer entsprechenden Datenschnittstellen zu. Das Netzwerk 102-20 ist durch Decodierung der von jedem der Module zugeführten Steuerungsinformation in der Lage, geeignete Signale für einen Auswahlschalter 102-24 mit drei Positionen zu erzeugen, der den Modul mit der höchsten Priorität in die Lage versetzt. Signale zu der Datenschnittstelle 603 des Speichermoduls 500 zu übertragen. Es ist ebenfalls erkennbar, daß das Netzwerk 102-20 Signale auf die Leitung APC oder die Leitung AZC sowie über einen Gatterschaltkreis 102-26 auf die Leitungen RITM der Datenschnittstelle 603 des internen Speichermoduls 500 gibt.
Die letzten beiden Netzwerke 102-30 und 102-40 werden zur übertragung von Speicherdaten und von programmierbaren Schnittstellendaten zu dem Prozessor 200 benutzt, wobei dies in Abhängigkeit von Speicheranweisungen und programmierbaren Schnittstellenanweisungen erfolgt, die zuvor durch den Prozessor 200 erzeugt wurden. Wie aus Figur 3b ersichtlich, besitzt das Prioritäts-Decodiernetzwerk 1O2-3O die gleichen Eingangsleitungen wie das Netzwerk 102-14 und arbeitet in der gleichen Weise, um die angeforderten Speicherdaten zu dem Prozessor 200 über einen Datenauswahlschalter 102-32 und den vierstelligen Auswahlschalter 101-20 gemäß Figur 3a weiterzuleiten. Es sei darauf verwiesen, daß kein Konflikt zwischen den Modulen,dia Daten an don
809 8 20/0 898
Auswahl3Chalter 101-20 zur übertragung zu den Leitungen DFS abgeben, entstehen kann, da zu jedem Zeitpunkt der Prozessor 200 eine einzige Anweisung bearbeitet. Das führt dazu, daß die Operation des Prozessors zum Stillstand gelangt, während des Empfangs der angeforderten Daten, nachdem der Prozessor 200 eine Anweisung an einen der Module gemäß Figur 1 abgegeben hat. Die Schnittstelleneinheit SIU-100 wirkt bei der Aufnahme der Anforderung des Prozessors auf die LeitungARA ein, wodurch der Prozessor zur Verzögerung der Operationen veranlaßt wird.
Das separate Netzwerk 102-40 verarbeitet Anforderungen von Rückkehrdaten von jenen Modulen, die auf programmierbare Schnittstellenanweisungen ansprechen. Das Netzwerk 102-40 decodiert die von den Leitungen RDTR geführten Signale sowie die Signale des Registers 102-6 zusammen mit denjenigen Registersignalen von anderen nicht dargestellten Modulen. Wenn die Schnittstelleneinheit SIU-100 feststellt, daß ein Modul versucht, angeforderte Daten zu dem Prozessor 200 zurückzuschicken, so erzeugt das Netzwerk 102-40 Signale, welche einen dreistelligen Datenauswahlschalter 102-42 in die Lage versetzen, Signale auf den Leitungen PDTS der programmierbaren Schnittstelle des Moduls zu dem Prozessor 200 zurückzuschicken. Diese Signale werden ihrerseits auf die Leitungen DFS des Prozessors über den Auswahlschalter 101-20 gemäß Figur 3a gegeben, der durch das Modul-Anforderungssignal geschaltet wird. Während eines nächsten Operationszyklus veranlaßt das Netzwerk 102-40 die Leitung RDAA zur Annahme den Viertes "1", wodurch dem Modul angezeigt wird, daß die auf den Leitungen PDTS vorhandenen Daten angenommen worden sind und daß der Modul nunmehr diese Daten entfernen kann, z.B. durch Löschen seiner Ausgangsregister. Es ist somit ersichtlich, daß der Schalter 101-20 selektiv irgendeinen von drei Datentypen auf den Leitungen DFS der Datenschnittstelle 600 des Prozessors erzeugt.
809820/0899
Steuerabschnitt 103
Flg. 3c zeigt in Blockdiagrammdarstellung den Abschnitt 103 der System-Schnittstelleneinheit 100. Dieser Abschnitt umfaßt Vergleichs- und Steuer-Logikschaltkreise 103-10 und 103-11 für die Prozessorpaare 200-0 und 200-1. Da diese Schaltkreise für jedes Prozessorpaar doppelt vorhanden sind, ist nur ein solcher Schaltkreis in näheren Einzelheiten dargestellt (siehe Fig. 3d). Ferner enthält der Abschnitt 103 Schaltkreise in Blöcken 103-20, 103-24 und 103-25, die an eine programmierbare Schnittstelle 603 angeschlossen sind und programmierbare Schnittstellenanweisungen interpretieren und bearbeiten, die über den Anschluß L an die internen Logikschaltkreise der System-Schnittstelleneinheit gerichtet sind.
Gemäß Fig. 3c umfassen die internen Logikschaltkreise zusatzlich zu den die programmierbaren Schnittstellenanweisungen verarbeitenden Schaltkreise ein internes Unterbrechungssteuerregister 103-30, das interne Unterbrechungslogikschaltkreise 103-28 speist. Diese Schaltkreise sind in ihrem Aufbau den Prioritätsunterbrechungs-Logikschaltkreisen 101 gemäß Fig. 3a ähnlich. Die internen Unterbrechungslogikschaltkreise 103-28 erzeugen 8 Arten von Unterbrechungen. Die Unterbrechungsarten gemäß der vorliegenden Erfindung sind folgende:
1 β beim Nulldurchgang des Intervallzeitgebers erzeugte Intervallzeitgeber-Abarbeitung;
4 β Prozessorfehler, festgestellt bei Fehlvergleich;
5 B Fehlvergleich-Fehler, festgestellt zusammen mit
einem Prozessorfehler; und
6 ■ Fehlvergleich-Fehler mit keinen anderen bestehenden
Fehlern.
809820/0898
Die Untciibrechungspriorität innerhalb des Anschlusses L basiert auf der Typnummer der Unterbrechung und die Prioritätsranyordnung ist folgende:
Typ Rang
A — höchster
3 — niedrigster
Die Unterbrechungstypen 4-7 sind mit dem Pegel O fest verdrahtet, während die Unterbrechungspegel für die anderen Typen (z.B. O, 1, 2 und 3) unter Benutzung der codierten Pegelsignale, die in dem Unterbrechungssteuerregister 103-30 gespeichert sind, programmierbar sind. Die Schaltkreise 103-28 bilden die Unterbrechung mit der höchsten Priorität und erzeugen geeignete Anforderungssignale, die den Unterbrechungslogikschaltkreisen 101 zugeführt werden. Das Format der Anforderung ist in Fig. 12 dargestellt. Wie erwähnt, leiten die Schaltkreise 101 die Unterbrechungen an das ausgewählte E/A-Prozessorpaar weiter.
Die internen Logikschaltkreise der Eystem-Schnittstelleneinheit gestatten in Abhängigkeit von einem RDEX-Befehl an den Anschluß L das Auslesen des Inhalts verschiedener Register 103-12 bis 103-17, des Registers 103-30 und des Zeitgebers 103-40 über einen Mehrstallungs-Auswahlschalter 103-40. Das Konfigurationsreciister 103-15, dem die Oktaladresse 0 zugeordnet ist, speichert Identifizierungsinformation und den Betriebsstatus aller Anschlüsse der System-Schnittstelleneinheit.
809820/0898
Sein Format ist in Fig. 8a dargestellt. Der Intervallzeitgeber 103-40, der im Hinblick auf die vorliegende Erfindung einen herkömmlichen Aufbau auf v/eisen kann, besteht aus einem 24 Bit-Register, dem die Oktaladresse 2 zugeordnet ist und das einen Zählstand speichert, der ein bestimmtes Zeitintervall definiert« Das zyklische Register 103-17, dem die Oktaladresse 3 zugeordnet ist, stellt ein durch die Test- und Diagnoseroutinen benutztes Arbeitsregister dar.
Das Auslöseregister 103-16, dem die Oktaladresse 4 zugeordnet ist, speichert Hinweise für die selektive Initialisierung und Maskierung der Anschlüsse der System-Schnittstelleneinheit. Die Initialisierung wird in Abhängigkeit von Signalen ausgelöst, die durch die Initialisierungs-Steuerlogikschaltkreise des Blockes 103-18 erzeugt werden. Dies bedeutet, daß das Register 103-16 durch einen WREX-Befehl geladen wird und die Anfangs-Bitpositionen durch die Schaltkreise 103-18 zurückgestellt werden. Die Maskierungsoperation läuft in ähnlicher Weise ab, gehört jedoch nicht zu der vorliegenden Erfindung. Das Format der Register ist in Fig. 8b dargestellt.
Den Fehler-Statusregistern 103-12 und 103-14 sind die Oktaladressen 10 und 7 entsprechend zugeordnet. Das Fehler-Statusregister Nr. 1 ist ein 36 Bit-Register, das zur Signalisierung aller von der System-Schnittstelleneinheit 100 mit Ausnahme der von dem Prozessor oder dem Speicher herrührender festgestellter Fehler benutzt wird. Die Speicherung der auf einen Fehlerzustand bezogenen Information verriegelt das Register mit dem ersten festgestellten Fehler bis es über einen RDEX-Befehl (programmierbare Schnittstellenanweisung) gelöscht wird. Das Format ist in Fig. 8c dargestellt. Das Fehler-Statusregister Nr. 2 ist ebenfalls ein 36 Bit-Register, das zur Signalisierung aller Prozessor-Fehlvergleichs-Fehler und irgendwelcher anderer nicht in dem Fehler-Statusregister Nr. gespeicherten Fehler benutzt wird. Dieses Register weist das Format gemäß Fig. 8d auf.
809820/0898
Gemäß Fig. 3c weist der Abschnitt 103 ebenfalls Paritätserzeugungs- und Prüfschaltkreise in einem Block 103-35 auf. Diese Schaltkreise können im Hinblick auf die vorliegende Erfindung einen herkömmlichen Aufbau aufweisen. Sie erzeugen Parität-Prüfbits für die den verschiedenen Prozessorschnittstellen durch jeden Prozessor zugeführten Eignale und sie prüfen diese Signa.! e im Hinblick auf die Parität-Prürbitsigna.le, die von den Prozossorpaaren geliefert werden. Das Ergebnis der Paritätsprüfung wird als Eingangssignal den dem Prozefsorpaar :,<ugeordneten Vergleichs- und Steueriogikschaikraisen zugeführt. Obgleich dies nicht dargestellt ist, werden den Paritätsschaltkreissn 103-3 5 ebenfalls Signale von dem Prossebrsorpaer 200-1 zugeführt und diese liefern Ergebnissignale an die Schaltkreise 103-11.
Detaillierte Beschreibung des Abschnittes 103
In den Figuren 3d, 3e und 3f sind in näheren Einzelheiten die Schaltkreise 103-100, 103-102 und 103-18 zusätzlich zu den den Registern 103-12 und 103-15 gemäß Fig. 3c zugeordneten Schaltkreise dargestellt. Gemäß Fig. 3d sind in näheren Einzelheiten die I'olgesteuerschaltkreise des Blockes 103-102 dargestellt. Die i'olgesteuerschaltkreise umfassen drei Flip-Flops 103-130, 103-131 und 103-132 vom D-Typ, die durch ein über ein UND-Gatter 103-106 zugeführtes Signal GIICMPERREN10 freigegeben werden. Dem erwähnten Gatter wird ein Signal AUTORECNFGOO, das normalerweise den Binärwert "1" aufweist und ein Signal UEG100110 von dem Fehler-Statusregister Nr. 2 zugeführt. Das Signal REG100110 weist den Binärwert "1" auf, wenn an den Anschlüssen G und H ein Fehlvergleich festgestellt wird. Das Signal SET11GH10 setzt, wenn es auf den Binärwert "1" geschaltet wird, das YI-F1Lp-FlOp 103-130 auf den Binärwert "1". In gleicher Weise s< '-en die Signale SET21GH10 und SET31GH10, wenn sie den Binärwert "1" aufweisen, die Flip-Flops 103-131
809820/0898
und 103-132 entsprechend auf den Binärwert "1". Ein Signal RESET1O wird benutzt/ uns din Yi, Y2 und Y3-Flip-Flopr> 103-131 bis 103-132 in den Binärzustand "O" umzuschalten. Einer der Eingangsabschnitte der Flip-Flops ist in näheren Einzelheiten dargestellt. Er umfaßt ein Paar von UND-Gattern, deren Ausfänge fest verdrahtet nach Art einer ODER-Schaltung zusanttitengefaßt sind.
Die Anzahl von NAND-Gattern 1O3-1.O8 bis 103-129 erzeugt Signale SET11GH10 bis SET13GH10 in Abhängigkeit von c5.en dargestellten Signalen. Größtenteils entsprechen diese Signale Ausgangssignalen eines Decodierers 103-40, der die Scha.'..:.-zustände der Flip-Flops 103-130, 103-131 und 1O3-122 decodiert.
In näheren Einzelheiten werden die Y1, Y2 und Y3-Flip-Flops 103-130 bis 103-132 gemäß folgenden Bool*schen Gleichungen gesetzt, wobei das runktsymbol und das Pluszeichensymbcl eine logische UND- bzw. eine logische ODER-Operation repräsentiert.
Set 0Y1-GH1OO - (RESET) (GECHP-ERR-EK 10O) - ( (YO-PTH-KiIi 100)
+ (Y1-SMSIlO) + (Y7)4(0Yl·READ/CLR10) )
Set 0Y2-GII1OO · RESET GHCMP-ERR-EN10O · ( (YO-ERR-GlI)
+ (Yl·PTG-TBL) + (0Y2·#Y3·READ/CLR1O + (Y3)+(Y7*SMS)+(0Y1*0Y2«SMS) )
Set 0Y3-GH1OO ■ RESET GHCMP-ERR-EN1CO · (
(Y7-PTHTBL* SMS.) + (Y5-READ/CLR1O) )
809820/08ÖÖ
Yl = 0Yl · ψ[2 '
Υ2 - £ΫΎ · 0Υ2 · $?Υ3Γ
Υ3 = 0Yl · 0Υ2 · ψΓ£
Υ4 =·· ψϊΐ * ψΠ ' 0Υ3
Υ5 = 0Yl · ψϊΊ · 0Y3
Υ6 =-- PT · 0Υ2 - 0Υ3
Y7 a 0Yl · 0Υ2 · 0Y3
Andere Kombinationen der Decodierersignale werden an eine weitere Gruppe von NAND-Gattern 103-141, 1C3-142 und 103-143 angelegt. Diese Gatter decodieren dia Kombinationen der angelegten Signale und sie erzeugen Steuersignale DECNFIG1O, DECNFIGH1O und MISCMPLDCKFGOIO, die an die Eingangsschaltkreise der Konfigurationsregister 103-15 gemäß Fig. 3f angelegt werden.
Ein Paar von Flip-Flops lOS'-ISO und 103-151 liefert, wenn sie durch die Signale SET3U100 und GHCMPERREN10 auf den Binärwert "1" geschaltet sind, Hinweise auf die Prozessorkonfiguration an Anzeigeschaltkreise auf der Bedienungskonsole, was als Testhilfe dient. Ein Paar von ODER-Gattern 103-154 und 103-155 erzeugt in Abhängigkeit von den Ausgangssignalen des Decodierers 103-14O ein Unterbrechungssignal vom Typ 5 oder vom Typ 6, das an die internen Unterbrechungsschaltkreise des Blockes 103-28 angelegt wird. Die Unterbrechungssignale werden gemäß folgenden Bool1sehen Gleichungen erzeugt:
Unterbrechungstyp 5 «= Y2 + Y6 Unterbrechungstyp 6 & Y1 + Y7
Eine weitere Gruppe von NAND- und UND-Gatterschaltkreisen 103-160 bis 103-162, ein JK-Flip-Flop 103-164 und ein Gatter 103-165
809820/08Ö8
erzeugen ein Wiederauslösungs-Unterbrechungssignal für die Schaltkreise 1O3-28 gemäß Fig. 3c. Dieses Signal wirci gem J; G folgender Boolescher Gleichung erzeugt:
Wiederauslösungs-Unterbrechung (REINIT-IIiT-GIItOO) « (PTB-TBL»Y7) + (Y3) +
Bei Betätigung durch die dargestellten Signale schelten die Schaltkreise das Flip-Flop 1C3-164 auf den Binär zustand "1" um, worauf das Gatter 1Ο3-165 das Signal KEINTINTGm O erzeugt. Dieses Signal löst erneut die Unterbrechungsschaltfcraise auc. Ein letztes Paar von Gattern 103-166 und 1Ο3-167 schaltet in Abhängigkeit von Signalen des Fehler-Statusregistern Kr. 2 die Prozessor-Nunanernsignale FORCKPNIO und ALTPNIO ouf die geeigneten Zustände um. Diese Signale werden ebenfalls als Eingangssignale den Unterbrechungsschaltkreisen 1Ο3-28 zugeführt.
Fig. 3e zeigt in näheren Einzelheiten die Vergleichslogikschaltkreise 1Ο2-1ΟΟ geraäö Fig. 3c. Diese Schaltkreise umfassen mehrere UND-Gatter in dem Block 103-2OO, die die Signalzustände vergleichen, die an die verschiedenen Schnittstellenleitungen beider Prozessoren des Paares 2OO-O angelegt werde». Wenn ein Fehlvergleich (keine Übereinstimmung) festgestellt wird, so setzen die Schaltkreise ein entsprechendes Fehlvergleichs-Fehlersignal auf den Binärwert "1". Das Signal GHCMPERRI0 signalisiert einen Fehlvergleich des Prozessorpaares GB, während das Signal DATACMPERR1O einen Fehlvergleich der Datenschnittstelle auf den Leitungen DTS signalisiert. Die verbleibenden Signale STRCMFERR10, POCMPRERROR1O und OPIMSCMPRO10 zeigen entsprechend das Auftreten eines Fehlvergleichs auf den Steuerungsleitungen, den Unterbrechungsschnittstellenleitungen und den OPI-Leitungen an; diese Signale werden den Eingangsschaltkreisen des Fehler-Statusregisters Nr. 2 zugeführt.
809820/0898
Mehrere NAKD/ÜND-Gatter 1O3-2O1 bis 103-208 vergj.eichen die Zustände der TBL- und PED-Schnittstellenleitunqen von den Prozessoren G und H. Sie versetzen die UND-Gatter 103-210 und 103-211 in die Lage, die Signale GHTBLCMPOO und GHPEDCMPOO bei der Anzeige einer Störung oder eines Paritätsfehlerzustandes auf den Binärwert "1" zu setzen. Diese Signale werden ebenfalls äen Eingangsschaltkreisen des Fehler-Statusregisters Nr. 2 zugeführt.
Die UND-Gatter 103-214 bis 103-216 setzen ein Freigabesignal P0ENAI510 auf den Binärwert "1", wenn beide Prozessoren G und H aktiv sind und in einer verrie9elten Konfiguration bzw. einem Vergleichsmodus betriebsmäßig miteinander verbunden sind (z.B. Signal POCMP10 =1). Der Zustand des Konfigurationsregister:; 103-15 wird in der erwähnten Weise benutzt, vim diesen Operationstyp zu definieren.
Es sei ferner darauf verwiesen, daß Signale entsprechend dem Zustand der TBL-Prozessorleitungen über Gatter 103-217 und 1O3-218 an die Folgesteuerschaltkreise des Blockes 103-102 angelegt werden.
Eine letzte Gruppe von Schaltkreisen des Blockes 1O3-1OO umfaßt Fehlersammel-NAND/UND-Gatter 103-220 und 103-222, denen die durch die Prüfschaltkreise des Blockes 103-35 sowohl für die Daten- als auch für die Unterbrechungsschnittstellen eines jeden Prozessors erzeugten Paritätsfehlersignale zugeführt werden. Die Äusgangssignale werden an eine weitere Gruppe von NANDrGattern iO3*-224 bis 103-226 eines Anschlußcodierers angelegt. Der Codierer setzt Ausgangssignale PPO1OO, PP11OO, PP2100 und PP3100 auf geeignete Zustände, um den Anschluß anzuzeigen, an dem ein Fohler festgestellt wurde. Die Signale PPOIOO bis PP31OO werden den Bitpositionen 12-15 des Fehler-Statusregisters Nr. 1 zugeführt. Das Komplement der Fehlersignale wird ebeijialls den Bit-Positionen 0-15 eines anderen Abschnittes des Fehler-Statusregisters Nr. 1 zugeführt.
809820/0898
Fig. 3f zeigt die dem Fehler-Statusregister Nr. 2 und dem Konlfigurationsregister 103-15 zugeordneten Eingangs- und Ausgangs-Gatter. Wie ersichtlich, erzeugen die NiJvID-Gatter ΊΟ3-3ΟΟ bis 103-303 Signale, die den Bitpositionen 1, 4 und 5 des Fehler-Statusregisters Nr. 2 zugeführt werden. Die UND- und ODER-Gatter 103-305 bis 103-310 setzen in Abhängigkeit von einer programmierbaren Schnittstellenanweisung oder einem Dekonfigurationssignal Ladesignale LDINPT(G)IO und LDINPT(H)IO auf den Binärwert "V, wodurch die Bitpositior-en 33 und 34 des Konfigurationsregisters 103-15 gesetzt werden. Das Signal MISCMt5LDCNrGOIO wird als Lade-Betätigungssignal dem Register 103-15 zugeführt.
Die Ausgangssignale des Konfigurationsregisters 103-15 werden durch UND-Gatter 103-314 bis 103-317, einen Verstärkerschaltkreis 103-318 und Gatter 103-319 und 103-320 kombiniert, um Vergleichsmodussignale P0CMP10 und PICMP10 zu erzeugen. Die Schaltkreise, die die Signale hinsichtlich des Vergleichs des Prozessorpaares P1 erzeugen, sind der Vollständigkeit halber dargestellt. Es sei darauf verwiesen, daß zusätzliche Steuersignale, die die Prozessoren E und F definieren, ebenfalls benutzt werden, da dieses Paar nicht mit dem System verbunden sein kann.
Eine letzte Gruppe von Schaltkreisen umfaßt Verstärkerschaltkreise 103-330 und 103-332 zusätzlich zu NAND-Gattern 103-334 und 103-335. Diese Schaltkreise setzen die Stop-Schnittstellenleitungen in Abhängigkeit von Ausgangssignalen der Bitpositionen 31-34 des Konfigurationsregisters 103-15 auf den geeigneten Zustand.
809820/0838
Hochgeschwindigkeitsmultiplexer 300
Gemeinsamer Abschnitt
Die Figuren 4a und 4b zeigen in näheren Einzelheiten den gemeinsaincn Steuerabschnitt 301 und einen Ted 1 des Kanaladapterabschnittes 302. Gemäß Figur 4a ist ersichtlich, daß der gemeinsame Steuerabschnitt ein Paar Register 301-2 und 301-5 für die Speicherung der Worte einer programmierbaren Schnittstellenanweisung aufweist, welche Anweisung über die Leitungen PDFS von der programmierbaren Schnittstolle C01 des Multiplexers über einen zweistufigen Datenauswahlschalter 301-1 erhalten wird. Der Schalter 301-1 gestattet die alternative Speicherung der programmierbaren Schnittstellenanweisung in den Registern 301-2 und 301-5. Im bevorzugten Ausführungsbeipiel gemäß der Erfindung wird jedoch nur die Stellung PDFS des Schalters benutzt. Es ist ferner ersichtlich, daß einem Register 301-40 über Treiber-Schaltkreise 301-3 Speicherdaten zugeführt werden, die auf den Leitungen DFS der Schnittstelle 600 des Multiplexers anstehen. Die Anv;eisungen in den beiden Registern 301-2 und 301-5 v/erden über einen zweistufigen Datenauswahlsehalter 301-6 und Treiberschaltkreise 301-8 den vier Kanaladapter-Abschnitten zugeführt. Ebenso kann die Anweisung selektiv einer Position eines achtstufigen Datenauswahlschalters 301-20 über einen zweistufigen Datenauswahlschalter 301-42 zugeführt werden. Der gleiche Schalter 301-42 legt die Datensignale des Registers 301-40 an jeden der vier Kanaladapterabschnitte über die Treiberschaltkreise 301-43.
Ein Paar von ParitäCs-Prüfschaltkreisen 301-45 und 301-49 überprüft den Inhalt der Register 301-2, 301-5 und 301-40 und legt Signale entsprechend dem Ergebnis der Prüfung an die Schaltkreise des Blockes 301-4 an, der ein Statussignal für den C-Schalter 301-50 erzeugt. Diese Schaltkreise kombinieren Signale des Registers 301-2 mit Signalen der Kanaladapterabschnitte und erzeugen hierdurch die erforderlichen Steuersignale über die Ausführung der von dem Prozessor 200 empfangenen Anweisungen.
809820/0898
Die Signale des Registers 201-5 können über Treiberschaltkreise der Blöcke 301-8, 301-15 und 301-16 zusätzlich in er:i aus der Vielzahl der Register gemäß den Blöcken 301-10, 301-12 und 301-14 ausgewähltes Register geladen werden. Der Block 301-10 weist vier Register mit 8 Bit auf, wobei die Ausgangssignale eines jeden dieser Register selektiv als Eingang auf eine Unterbrechungsposition des AuswahIschalters 301-20 zusammen mit den entsprechenden Signalen eines vierstufigen A;iswahlschalters 301-30 und eines achtstufigen Auswahlschaltors 3C1-32 gegeben werden können. Die Inhalte des Unterbrechungs-Steuorbiock-,' Pegel- und Maskenregisters der Kanaladapterabschnitte könnon während der Ausführung der Test- und Ubarprüfungsoperationen aufgrund von programmierbaren Schnittstellenanveiuungen gelesen werden.
Die Unterbrechungs-Steuerblcckregister des Blockes 30H0 Find in Abhängigkeit von durch ein Unterbrechungspegel-Prioritätsnetzwerk 301-24 erzeugten Signalen selektiv an ein Unterbrechung? Datenregister 301-22 (IDA-Register) mit 14 Bits anschließbar. Gruppen von Bit-Positionen eines jeden der Pegelregister mit 24 Bits des Blockes 301-12 werden entsprechenden Positionen eines achtstufigen Muitiplexer-Auswahlschalters 301-25 bis 301-28 zugeführt. Es ist erkennbar, daß jedes der Pegelregister des Blockes 301-12 an verschiedene Positionen des vierstufigen Auswahlschalters 301-30 und des achtstufigen Auswahlschaltors 301-32 angeschlossen ist. Es ist ferner erkennbar, daß jedes der 8 Bit-Maskenregister des Blockes 301-14 an verschiedene Positionen des Auswahlschalters 301-32 sowie an die Logikschaltkreise des Blockes 301-34 für die Unterbrechungsfreigabe und Prioritätsbestimmung angeschlossen ist.
Wie aus Figur 4a ersichtlich/ v/erden den Schaltkreisen des Blockes 301-34 Gruppen von Unterbrechungs-Anforderungssignalon von den Kanaladaptern zusammen mit Gruppen von Unterbrechumjssignalen, die durch die den Kanaladaptern zugeordneten Steuer adapter erzeugt werden, zugeführt. Insbesondere; kann jeder CA--Kanal vier verschiedene Typen von UnterbrcchungsanfortioruiiMon
809820/0898
- 74 - 2760299
erzeugen. Die Unterbrochungsanforderungen umfassen hierbei folgende Typen: Eine Fohlez-unterbrechung, die durch da:: Setzen eines Paritätsfehler-Indikator-Bits in einem nicht dargestellten gemeinsamen Statusregister verursacht wird; eine Datensteuerwort-Unterbrechung; eine programmierbare Unterbrechung und eine Ausnahineunterbrechung, die bei Feststellung einer illegalen Anweisung usw. erzeugt wird. Die Fehlerunterbrechung ist jedem Kanal gemeinsam, so daß sie einen Eingang zu dem Block 301-34 aufweist, der allen vier Kanälen gemeinsam ist.
Jeder Steueradapter kann ebenso vier verschiedene Typen von Unterbrechungsanforderungen erzeugen, die von dem Typ des Gerätes abhängen, das an den Adapter angeschlossen ist. Im Falle einer Platteneinheit umfassen die Unterbrechungsanforderungen folgende Typen: eine durch die Feststellung von Paritätsfehlern
Umdrehungs·· verursachte Fehlerunterbrechung einer aufgrund einer rotierenden position erfaßte Unterbrechung, eine Datenübertragungs-Beendigungsunterbrechung und eine Offline-Unterbrechung, die bei der Beendigung einer Offline-Operation, z.B. bei einer Suchoperation verursacht wird. Die vier Typen von Kanal-Unterbrechungsanforderungen und die vier Typen von Steueradapter- Unterbrechungsanforderungen ergeben zusammen eine Gruppe von acht Typen pro Steueradapter-Kanal, die als die Ereignisauftritte EVO-EV7 bezeichnet werden. Jedem Typ einer Unterbrechungsanforderung ist eine 3-Bit-Typnuiiimor zugeordnet, so daß die vier Typen der Kanal-Unterbrechungsanforderung mit den Nummern 0-3 entsprechend EVO-EV3 bezeichnet sind, während die vier Steueradapter-Unterbrochungsanforderung mit den Nummern 4-7 entsprechend EV4-EV7 versehen sind. Die Ereignisauftritte mit den niedrigsten Codes besitzen die höchste Priorität, z.B. 000 = höchste Priorität = EVO = Fehlorunterbrechung und 111= niedrigeste Priorität = EV7 = Offline-Untorbrochung. Die Priorität der verschiedenen Typen von Unterbrechungsanforderungen wird durch die Typnummer festgelegt. Jeder der Kanäle erzeugt sieben Unterbrechungs-Anforderungnoimjanqo für den Block 301-34 zusammen mit dem gemeinsamen Fehlereingaiicj tier durch den Block 3Ο1-4 erzeugt wird.
8090 20/0890
Die Schaltkreise innerhalb des Blockes 301-34 kombinieren die Signale von jedem der Maskenregister des Blockes 301-14 mit den Unterbrechungs-Anforderungssignalen jedes Kanales und Adaptor." und sie wählen den Unterbrechungstyp aus, der die höchste Priorität für jeden Kanal besitzt. Der Typ-Code von 3 Bits für jeden Kanal wird einem entsprechenden Multiplexer-Auswahlschaltkre.is 301-25 bis 301-28 zugeführt. Die durch den Bleck 301-34 erzeugten Gruppen von Typ-Codierungen werden als Eingänge entsprechenden Stellungen eines vierstufigen Pegel/Typ-Auswahlschalters 301-35 zugeführt.
Jeder der Multiplexer-Schaltkreise 301-25 bis 301-28 erzeugt bei seiner Freigabe durch die Schaltkreise des Blockes 301-34 einen geeigneten 3-Bit-Pegelcode als Eingangssignal für ein Unterbrechungs-Pegel-Prioritäts-Netzwerk 3O1-24. Das Netzwerk 301-24 erzeugt auf einem Leitungspaar Signale, die den Steuereingängen der ICB-Register des Blockes 301-10, dem Schalter 301-35 und einem vierstufigen IMID-Schalter 301-36 zugeführt werden. Die von dem Netzwerk 301-24 erzeugten Signale legen dan Kanal oder den Anschluß mit der höchsten Priorität fest. In dem Fall wo mehr als ein Kanal den gleichen Prioritätspegel aufweist, wählen die Schaltkreise des Netzwerkes 301-24 den Kanal aus, der der niedrigsten Kanalnummer zugeordnet ist (z.B. CAO=OOXX=höchste Priorität, CA3=11XX=niedrigste Priorität). In jenen Fällen, wo die Stcueradapter Unterkanäle oder Unteranschlüsse verwenden, liefert ein Leitungspaar von dem CAI Signale an die niedrigrangigsten beiden Bit-Positionen des Schalters 301-36. Die höchstrangigsten beiden Bit-Positionen des Schalters sind permanent an die entsprechende Kanaladapternummer angeschlossen (z.B. 0O=CAO usw.). Der Ausgang des Schalters 301-36 ist zu dem IMID-Register 301-23 geführt.
Die Ausgangssignale des ausgewählten ICB-Registers des Blockes 301-10, die Pegelsignalc von den ausgewählten Multiplexer-Schaltkreisen und die Typ-Signale des Blockes 301-34 werden in das IDA-Register 301-22 eingegeben. Diese Signale werden eben falls den Paritäts-Schaltkreisen eines Blockes 201-37 zugeführt,
809820/0898
der ein Paar von ungeraden Paritäts-Bits für die in dem Register 301-22 gespeicherten Signale erzeugt. Ein weiteres Flip-Flop 301-21, das als Teil des Registers 301-22 angesehen werden kann, empfängt ein Signal von den Schaltkreisen des Blockes 301-34, um das Vorliegen einer Unterbrechungsanforderung anzuzeigen.
V7ie aus Figur aus 4a entnehmbar, werden die in dem Bit-Register 301-40 gespeicherten Datensignale über die H-Registerposition des zweistufigen Datenauswahlschalters 301-42 einem zweistufigen Kanalr.chroibschalter 301-4 4 zugeführt. Wenn die erste Position des Schaiters 301-4 4 ausgewählt wird, so wird hierdurch der Inhal eines der vier Gruppen von Kanaladapter-ArSchlußregister 301-46 ausgewählt. Diese Auswahl erfolgt in Abhängigkeit von Signalen, die durch die Prioritätsauswahl- und Steueirscha_.ltkreise des Blockes 301-48 erzeugt werden. Den Schaltkreisen des Blockes 301-48 werden Eingangssignale aus den Registern 301-2 und 301-68 und von den dargestellten Kanaladaptern zugeführt und sie erzeugen Ausgangssignale auf den Ausgangsleitungen und in dem Ausgangsregister 301-6 5. Die Register der Gruppe 301-46 umfassen ein 40-Bit-Register zum Speichern eines Listen-Hinweisadressenwortes LPW für den zugeordneten Anschluß, ein 40-Bit-Datenadressregister zum Speichern der Adresse von auszulesenden oder einspeichernden Daten und ein 40-Bit DT-Register zur Speicherung von Zähl- und Steuerinformation für eine laufende Datenübertragungsoperation. Die gleichen Register der vier Kanaladapterabschnitte sind an verschiedene Positionen eines vierstufigen Datenauswahlschalters 301-50 angeschlossen, denen Steuersignale von den Schaltkreisen des Blockes 301-48 zugeführt werden. Die Ausgangssignale des Schalters 301-50 werden einem Paar von Addiernetzwerken 301-52 und 301-54 und zusätzlich einem Paritäts-Prüfschaltkreis 301-56 zugeführt. Das Addiernetzwerk 301-52 ergänzt den Inhalt des über den Schalter 301-50 ausgewählten Registers, während das /iddiernetzwerk 301-54 Ausgangssignale für einen Paritäts-Generatorschaltkreis 301-58 erzeugt. Die Signale der Schaltkreise 301--52 und 301-58 werden in das ausgewählte Register über die ergänzte Netzwerkposition des Schalters 301-44 zugeführt.
809820/0898
- '77 -
Wie aus Figur 4a weiterhin ersichtlich, werden die Ausgangssignale des Schalters 301-50 selektiv einem 8-Bit-Steuerungsrcgister 3O1-GO über einen oteuerungsschalter 301-59 sowie einem DT-Schalter 301-20 zugeführt. Jedem der Daten-Auswahlschalter 301-59 und 301-61 werden Ausgangssignale von dem DT-Schalter 301-20 zugeführt, dem zusätzlich zu den erwähnten Quellen Datensignale von den DS-Leitungen jedes Kanul-Adaptcrabschnittes CA0-CA3 zugeführt werden. Die Ausgangssignalo des DT-Schalters 301-20 und des ZAC-Schalters 3OV61 werden eineTC Paritätsschaltkreis 301-62 und der Reihe von Registern des Blockes 301-64 zugeführt. Zusätzlich wird dem Schalter 3ΟΊ-61 die ZAC-Information zugeführt, die von den Kanelao.apter-Bedienungsleitungen abgeleitet wird, wobei diese Leitungen ar: den Block 301-4 gelegt sind, wenn der MultipJL-exer 3OO nach oinen. speziellen Verfahren betrieben wird, das nicht Gegenstand der vorliegenden Erfindung ist. Die vier Register des Blockes 3ΟΊ-64, die mit ZAC, PDTS, Daten 1 und Daten 2 bezeichnet sj.nd, speichern Speicher-Anweisungssignale, programmierbare Schnittstellen-· Datensignale und Kanaladapter-Datensignale. Die Ausgangssignale dieser Register werden auf die Leitung·DTS der Multiplexcr-Datenschnittstelle 6OO oder die Leitungen PDTS der Multiplexer--Schnittstelle 601 gegeben. Wenn das ZAC-Registe:c des Blockes 3O1-64 geladen wird, so wird hierdurch ein AOPR-Flip-Flop 301-65 auf "1" gesetzt, wodurch der Schnittstelleneinheit SIU-100 signalisiert wird, daß der Multiplexer 300 eineW Datenweg anfordert, über den er eine Speicher-ZAC-Anweisung und Daten übertragen kann. Die über den Schalter 301-59 zugeführte geeignete Speicher-Steuerungsinformation wird im Register 301-60 gespeichert, und ein Paritäts-Prüfschaltkreis 3O1-36 erzeugt eine ungerade Parität für die Steuerungsinformation.
Kanaladapter-Abschnitte
In Figur 4b sind die Register und der Daten-Auswahlschalter dargestellt, die in jedem der Kanaladapter-Abschnitte CA0-CA3 enthalten sind. Da alle Abschnitte identisch sind, ist nur der Abschnit CAO dargestellt. Es ist ersichtlich, daß der Abschnitt Ausgangssignale von dem Datenübertragungsschalter 301-6 und dem
809820/0898
_ 78 _
H-Schalter 301-42 zugeführt erhält. Die Signale des Datenübertrayungsschalters 301-6 werden über Treiberschaltkreise des Blockes 302-2 einem zweistufigen Datenauswahlschalter 302-4 zugeführc. Die Ausgangssignale des Schalters 302-4 können selektiv entweder in ein Modusrogister 302-5 oder in eines von mehreren Steuer-Flip-Flops 302-3 in Abhängigkeit von den Steuersignalen von 301-4 geladen werden. Die Ausgangssignale des Modusregisters 302-5 und der Steuer-Flip-Flops werden als Eingangssignale den logischen Schaltkreisen des Blockes 302-7 zugeführt, der die erforderlichen Steuersignale für die Ausführung einer Anweisung durch den Steueradapter erzeugt. Die Schaltkreise des Blockes 302-7 empfangen ferner Steuersignale von dem Block 301--4, von der Registergruppe 301-46, die dem Kanaladapter zugeordnet ist und von den Leitungen der Steueradapterschnittstelle. In der vorliegenden Ausführungeform weist die Steueradapter-Schnittstelle folgende Leitungen auf:
Bezeichnung
• DTA
ADTA
ACTA
CHBSY
Steueradapter-Leitungen
Beschreibung
Dieser Datenweg umfaßt 40 Leitungen, die sich von dem Modul 300 nach dem Steueradapter erstrecken und sie werden benutzt/ um Anweisungen und Adressen enthaltende Daten nach dem Adapter zu übertragen. Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an, daß e.uf den DTA-Leitungen Daten verfügbar sind, die von dem Adapter angenommen werden sollen. Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an, daß eine programmierbare Schnittstellenanweisung oder Daten auf den DTA-Leitungen verfügbar sind, die von dem Adapter angenommen werden sollen. Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt bei einem indirekten Modus dem Adapter an, daß der Multiplexer 3OO nunmehr in
Ö09820/0896
einer Daten-SelbstübertragungsweisG arbeitet; der Kanal bleibt belegt, bis die Daten-Selbstübertragungsoperation beendigt ist. Bei einer direkten Betriebsweise wird diese Leitung gesetzt, wenn eine Speicher--ZAC-Anweisung von dem Adapter empfangen wird und sie bleibt gesetzt, bis entweder die angeforderten gelesenen Daten Übertragen sind oder der Status vcn dem Speichermodul zurückgeholt worden ist.
CDR Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an, daß der Modul 300 bereit ist, weitere Daten oder Anweisungen von dem ?*dapter anzunehmen.
EDT Diese Leitung erstreckt sich von dom Modul 300 nach dem Adapter und sie wird während Daten-Selbstübertragungsoperationen im indirekten Modus benutzt, um anzuzeigen, daß das letzte Wort der Daten übertragen worden ist (schreiben) oder das letzte Wort dar Datoη gespeichert wurde (lesen).
DFA Dieser Datenweg umfaßt 4O Leitungen, die sich von dem Steuer adapter nach dem. Mdditl 300 erstrecken und die benutzt werdene um Daten zu übertragen, die Status-Speicheradressen und Anweisungen für den Modul 3OO umfassen.
PIDFA Dieser Datenweg umfaßt zwei Leitungen von den, Adapter nach dem Modul 30O,-wobei diese Leitungen zusammen mit den Unterbrechung^leitungen benutzt v/erden, v.n anzuzeigen, welcher Unteranschluß des Steueradapters die Unterbrechung verursacht.
ADFA Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand an, daß Daten oder eine Speicheranweisung auf den DFA-Leitungen ansteht und von dem Modul angenommen werden soll.
AD-BUSY Diese Leitung erstreckt sich von dem Adapter nach
dem Modul 300 und sie zeigt im gesetzten Zustand cn, daß der Adapter eine programmierbare Schnittotellcnanweisung angeommen hat und nicht in der Lage ist, irgendwelche weitere Anweisungen anzunehmen. 809820/0398
ADR Diese Leitung erstreckt sich von dem Adapter nach dem MoSuI 300 u-'.d sie zeigt im gesetzten Zustand dem Kanal an, daß der Adapter bereit ist, mehr Daten anzunehmen.
IFA Dieser Datenweg umfaßt vier Leitungen, die sich von dem Steueradapter nach dem Modul 300 erstrecken und die den Typ der Unterbrechungsanforderung anzeigen. TFA Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand an, daß eine Datenübertragungsoperation nach dein Modul 300 beendigt ist.
Es sei an dieser Stelle erwähnt, daß die Steueradapter-Schnittstelle v/eitere Leitungen aufweist, die beispielsweise für eine Auslösung, eine Freigabe usw. erforderlich sind.
Die Ausgangssignale des Schalters 302-4 werden einem weiteren zweistufigen Auswahlschalter 302-6 zugeführt, dem ferner Datei»- signale auf den DFA-Leitungen durch den zugeordneten Steueradapter zugeführt werden. Während einer Datenübertragungsoperation werden die Ausgangssignale der DFA-Position des Schalters 302-6 in verschiedene Register der 40-Bit-Datenregister 302-8 geladen, um über diese zu dem gemeinsamen Abschnitt 301 über einen vierstufigen Schalter 302-12 oder zu dem Steueradapter über einen zweistufigen Auswahlschalter 302-10 Übertragen zu werden. Außerdem werden Ausgangssignale des WD-Schalters 302-4 über die WD-Position des Schalters 302-10 zu dem Steueradapter übertragen. Verschiedene Register der Register 302-8 werden zum Laden und Entladen durch Adressignale ausgewählt, wobei die Adressignale in Lese- und Schreibadressregistern des Blockes 302-14 gespeichert sind und die Inhalte dieser Register durch Signale modifiziert werden, die durch die Schaltkreise des Blockes 302-7 erzeugt werden. Diese Schreibadress- und Leseadress-Register liefern Signale, die die Anzahl der gespeicherten Worte angeben, die ihrerseits benutzt werden, um den Status einer Ubertragungsoperation zu bestimmen.
809820/Q89B
Während einer Datenübartragungsoperation prüfen die Paritäts-Schaltkreise des Blockes 302-14 die Parität der von :\cm Stcucradapter über den Schalter 302-6 empfangenen Datensignale und erzeugen die geeignete Parität. Es ist ferner ersichtlich, daß dem Schalter 302-4 Signale von dem ersten Paar der Kanal-ßchreibdatenregister (W-Register 0, W-Register 1) zugeführt werden, wobei diese Register zv?ei Informationsworte speichern, die eine Übertragung von dem H-Schalter 301-42 zu irgendeinem der Register 302-8 oder eine direkte übertragung zu dem Stcueradijpter über den Auswahlschalter 302-10 festlegen.
Beschreibung der Wirkungsweise
Unter Bezugnahme auf die Figuren 1 bis 14, das Statusdiagrarnm gemäß Fig. 15 und das Flußdiagramm gemäß Fig. 16 sei die Wirkungsweise des bevorzugten Ausführungsbeispieles der vorliegenden Erfindung im folgenden näher erläutert.
Wie zuvor erwähnt, 3ind die Schnittstellenleitungen beider Paare der E/A-Prozessoren doppelt vorgesehen. Sie sind parallel an die Vergleichsschaltkreise der Systeiu-Schnittstelleneinheit SIU-100 gemäß Fig. 3c angeschlossen. Da beide Prozessorpaare 200-0 und 200-1 in gleicher Weise arbeiten, sei im folgenden nur die Betriebsweise eines Paares (200-0 bzw. PO) beschrieben.
Während jedes Taktintervalles vergleichen die Vergleichslogikschaltkreise 103-100 die Signalgruppen, die auf jeder der SchnittStellenleitungen der Prozessoren G und H anstehen. Die Bitpositionen 33 und 34 des Konfigurationsregisters 103-15 sind beide auf den Binärwert "1" gesetzt, da beide Prozessoren des Paares PO normalerweise in einer verriegelten Konfiguration bzw. in einem Vergleichsmodus zum Zwecke der Fehlerfeststellung betrieben werden. Die Bitpositionen 33 und 34 des Konfigurationsregisters 103-15 sind durch eine PI-Laderegisteranweisuncj an den
809820/0898
Anschluß L der Schnittstelleneinheit SIU gesetzt worden, wobei, diese Anweisung das Format gemäß Fig. 7b besitzt. Die Schaltkreise gemäß Fig. 3£ setzen somit den Zustund einer jeden Step-Leitung der Schnittstelle GO4 eines jeden Prozessors auf den Binärwort "0", wodurch die Taktschaltkreise und die zyklische Fortschaltung des Steuerabschnittes 201 gemäß Fig. 2 hinsichtlich der Prozessoren G und H freigegeben werden. Ferner wird das Signal POCMP1O auf den Binärwert "1" gesetzt, wodurch der Betrieb der Schaltkreise 103-200 und 103-205 bis 103-208 gemäß Fig. 3e freigegeben wird.
Ebenso erzeugen während einer normalen Operation die Paritätsschalt.kreise der Schnittstelleneinheit SIU Paritätsbits für die an dio Schnittstellen.leitungen einer jeden E/A-Prozessorschnittstelle (Daten- und Unterbrechungsschnittstellen) angelegten Signale. Die erzeugten Paritätprüfbits, die von dem Prozessor geliefert werden und die Resultate werden als Eingangssignale an die NAND/UND-Gatter 103-220 und 103-222 gemäß Fig. 3e angelegt. Wenn ein Fehlvergleich-Fehler festgestellt wird, so wird das Signal P0CMPERR10 über das ODER-Gatter 103-300 auf den Binärwert "1" gesetzt. Hierdurch schaltet die Bitposition 1 des Fehler-Statusregisters Nr. 2 auf den Binärwert "1" um. Es sei beispielsweise angenommen, daß ein Fehlvergleich auf den DTS-Datenleitungen der Datenschnittstelle 600 festgestellt wird. Das erwähnte Signal wird sofort in das Statusregister eingetaktet. Dies führt zu einer ausreichenden Zeit für die Abfrage durch einen E/A-Prozessor nach einem vorliegenden Fehlvergleich-Zustand.
Die den aufgetretenen Fehlvergleich betreffende Information wird von den Test- und Diagnoseroutinen in der erläuterten Weise benutzt. Die gespeicherte Information darüber, welcher Anschluß den Fehlverglejr'i aufwies, wird von den Folgesteuerschaltkreisen 103-102 benutzt. Das vorliegende Beispiel bezieht sich auf die Anschlüsse G und H.
609820/0898
GewSß Pig. 16 ist erkennbar, daß die Schaltkreise 1OH-102 prüfen, ob ein Fehler hinsichtlich des Prozessors vorlag, was ebenfalls in dem Fehler-Statusregister Nr. 1 durch die Schaltkreise gemäß Fig. 3e gespeichert wird. Von Bedeutung sind Paritätsfehler, die durch die Schnittstelleneinheit SIU-1OO oder intern durch den Prozessor während des Fehlvergleichs festgestellt werden. Irgendwelche festgestellten Paritätsfehler werden im Fehler-Statusregister Nr. 1 durch die Schaltkreise gemäß Fig. 3e zusammen mit der Bestimmung des Anschlusses, der die Fehlerquelle (siehe Fig. 8c) bildet. gespeichert.
Aus Fig. 15 ist ersichtlich, daß die Folgesteuer-Flip-Flops entweder in den Zustand 010 oder den Zustand 110 gesetzt werden, wenn die Steuerlogikschaltkreise der Schnittstelleneinheit SIU einen Fehler feststellen oder wenn ein iin Prozessor festgestellter Fehler über die Leitungen PED signalisiert wird. Durch den Fehlvergleich wird das Freigabesignal GHCMPERREN10 auf den Binärwert "1" gesetzt und das Y2-Flip~Flop 103-104 wird über das Signal SET21GH10 in den Binärzustand "1" umgeschaltet.
Das Signal SET11G10 wird auf den Binärwert "1" gesetzt, wenn der festgestellte Fehler dem Prozessor H zugeordnet ist. Dies bedeutet, daß ein im Prozessor H (REG731OO « 0) festgestellter Paritätefehler oder ein am Anschluß H (HERROO « O) festgestellter Schnittstellenfehler das Signal PTHERR10 auf den Binärwert "1" setzt, wenn das Signal Y0GH10 von dem Decodierer 103-140 den Binärwert "1" aufweist und somit anzeigt, daß sich die Folgesteuerung in dem Zustand 000 befindet.
Die Schaltkreise der Schnittstelleneinheit SIU gemäß den Fig. 3d und 3f dienen der Dekonfiguration bzw. der logischen Abtrennung des Prozessors des Paares» der den Fehler auf Grund des Ladens von Signalen entsprechend der gesuchten Prozessor-
8098 20/0898
konfiguration in die Bitpositionen 33 und 34 des Konfigurationsreg.isters 103-15 aufweist. Wenn beispielsweise ein dem Prozessor G zugeordneter Fehler festgestellt wird, so werden die Folgcsteuer-Flip-riopa in den Zustand 010 gesetzt. Hierdurch schaltet der Decodierer 103-140 das Signal DECNFIG10 auf den Binärwert "0" und das Signal DECWFIHIO auf den Binärwert "1" um. Genauer gesagt, decodiert der Decodierer 103-140 den Eingangscode von 010 und erzeugt, ein Ausgangssignni Y2GH10 mit dem Binärwort "1". Dies führt dazu, daß die Signale DECKFlGIO und DECNFItIO auf den erwähnten Zustand gebracht werden.
Wenn eier festgestellte Fehler jedoch dein Prozessor H zugeordnet ist, so werden die Folgesteuer-Flip-Flops auf den Zustand ViO gesetzt. Hierdurch Schaltet der Decodierer 103-140 das Signal DECNFG10 auf den Binärwert "1" und das Signal DECNFH10 auf den Binärwort "0" um. Dies bedeutet, daß bei einem Eingangscode von 011 der Decodierer 103-140 nur das Signal Y6GH10 auf den Binärwert "1" sstzt. Der Decodierer 103-140 setzt ferner in beiden Fällen das Signal MISCMPLDCNFG010 auf den Binärwert "1", wodurch die Bitpositionen 33 und 34 gemäß dem Zustand der Signale LDINPT(G)IO und LDINPT(H)IO geladen werden. Diese Signale werden durch die Eingangsschaltkreise gemäß Fig. 3f in Abhängigkeit von den Signalen DECNFIGG10 und DECNFIGH10 erzeugt. Es sei ferner darauf verwiesen, daß der Zustand der Bitpositionen 33 und 34 des Konfigurationsregisters 103-15 ebenfalls den Zustand der Ctop-Leitungen des Prozessors vorgibt. Insbesondere werden die Signale STOPGOO und STOPHOO auf den Binärwert "1" und "0" entsprechend gesetzt, wenn sich der Prozessor G in der Konfiguration und der Prozessor H außerhalb der Konfiguration befindet. Hierdurch wird der Takt des Prozessors angehalten, der nicht die Unterbrechungsanforderung empfängt und es wird somit sein Zustand üum Zeitpunkt des Fehlerauftritts konserviert.
In jedem Fall versetzt der Decodierer 103-140 das ODER-Gatter 103-154 in die Lage einen Unterbrechungstyp 5 für die internen
809820/0898
Unterbrcchungsschaltkrelse 1O3-28 zu erzeugen. Dies signalisiert den die Unterbrechungsanfordexung empfangenden Prozessor, daß ein Fehlvergleich festgestellt wurde und daß ein Fehler vorliegt, der den fehlerhaften Prozessor anzeigt. Die Signale REGIOOlOO und REG1OOO1O von dem Konfigurationsregister 103-15 setzen die Signale F0RCEPN10 und ALTPN10 entsprechend auf die Binärwerte "1" und 1O". Der Zustand dieser Signale sinrialisiei:«: den Unterbrechungsschaltkreisen, welches logische Prozessorpaar die Unterbrechungsanforderung zu empfangen hat. Da in dem vorliegenden Beispiel der Prozessor G oder II den Fehlvergleich lieferte, werden alle Unterbrechungen an dieses logische Paar (z.B. das Paar PO) geleitet. Der Zustand des Signales ALTPNlO legt das Prozessorpaar fest, den» die Unterbrechung zuzuführen ist. Wenn das Signal ALTPNIO den BinSrwert "1" aufweist, so legt es das Prozessorpaar P1 (die Prozessoren E und F) fest. Wenn das Signal ALTPNIO den BinMrwert "O" auf v/eist, so wird hierdurch das Prozessorpaar PO (die Prozessoren G und H) festgelegt«
Wenn irgendeines der Prozessorpaare PO oder P1 als den Fehlvergleich aufweisend festgestellt wird, was durch die Bitpositionen 0 und 1 des Statusregisters Nr. 2 angezeigt wird, so wird hierdurch das Signal F0RCEPN10 auf den Binärwert "1" gesetzt. Dieses Signal zeigt einen Fehlvergleich an und es wird benutzt, um die geeignete Prozessornuiraner in das Unterbrechungsanforderungswort gemäß Fig. 12 der System-Schnittstelleneinheit zu laden. Normalerweise wird diese Bestimmung der Prozessornummer durch die Software des Betriebssystems während des Ladens des Prozessorpaares festgelegt und die Schaltkreise der System-Schnittstelleneinheit SIU-100 stellen sicher, daß die Unterbrechungslogikschalkreise die Anforderung an das Prozessorpaar PO weiterleiten (z.B. laden eines Binärwertes 11O", festgelegt durch den Zustand des Signales ALTPN10).
Zusammenfassend ist ersichtlich, daß die Schaltkreise der Schnittstelleneinheit SIU Information speichern, die den Status der SIU-Anschlüsse bei der Feststellung eines Fehlvergleichs
609820/0898
anzeigen. Basierend auf dem festgestellten Status trennen die ElU~Schaltkrei.se einen Prozessor aus der Konfiguration heraus, sofern dieser als fehlerhaft festgestellt wurde, und sie geben einen Unterbrechungstyp 5 mit dem Pegel O an das Prozessorpaar aus, das den Fehler aufweist. Zu diesem Zeitpunkt haben die Schaltkreise der Schnittstelleneinheit SIU ihre Operationen vervollständigt und die Steuerung wird zu den Test- und Diagnoseroutinen übertragen, die durch den Unterbrechungstyp 5 mit dem Pegel O festgelegt werden.
Gemäß Fig. 16 führt der intakte Prozessor einen Selbst-Test vor r]£ia Test durch die Test- und Diagnoseroutine durch. Der fehlerhafte Prozessor besitzt jedoch nicht die Gelegenheit, einen Selbst-Test durchzuführen, da sein Status angehalten und konserviert wurde. Während des internen Tests soll der intakte Prozessor nicht die Leitung TBL setzen, da die Unterbrechung an den intakten Prozessor gerichtet wurde und der fehlerhafte Prozessor aus der Konfiguration herausgetrennt wurde. Kenn die Leitung TBL das hohe Potential einnehmen sollte, so signalisiert dies einen fatalen, nicht wieder aufdeckbaren Zustand, der dem Operator in herkönunlicher Weise mitgeteilt wird. Es sei daran erinnert, daß die Möglichkeit eines solchen Fehlers höchst unwahrscheinlich ist. Der intakte Prozessor fordert, nachdem er einen Punkt erreicht hat, an dem die Selbstüberprüfung vervollständigt ist, das Unterbrechungsanforderungswort von der System-Schnittstelleneinheit SIU-100 an, indem die Leitung IDR auf den Binärwert "1" gesetzt v/ird.
Bevor der interne Test bzw. die Test- und Diagnosercutinen erläutert v/erden, sei die Situation betrachtet, wo kein Fehler festgestellt wird. Wenn ein Fehlvergleich auftritt, beispielsweise auf den Leitungen DTS, aber weder die Schnittstelleneinheit SIU noch die Prozessoren einen Paritätsfehler festgestellt haben, so werden die Folgesteuerungs-Flip-Flops in der erwähnten Weise auf den Zustand 001 gesetzt. Insbesondere weist bei
809820/0898
Abwesenheit eines Paritätsfehlers das Signal ERRGHOO den Binärwert "1" auf, welches Signal zusammen mit dem Signal YOGH1O das Signal SET31GH1O auf den Binarwert "1" setzt. Die VI und Y2-Flip-Flops 103-130 und 103-131 bleiben zurückgestellt, da keine Paritätsfehler im Zusammenhang mit den Prozessoren G und H festgestellt wurden.
Wie aus Fig. 15 ersichtlich, können der Prozessor G und der Prozessor H in die Konfiguration aufgenommen und aus dieser entfernt werden. Der Decodierer 103-14O gemäß Fig. 3d setzt in Abhängigkeit von dem Code 001 nur das Signal Y1GH10 auf den Binärwert "1". Dementsprechend werden die Signale DECNFIG10 und DECQFIH10 auf die Binärwerte "1" und "0" entsprechend gesetzt. Zur gleichen Zeit wird das Ladesignal MISCMPLDCNFGOIO des Konfigurationsregisters auf den Binärwert "1" gesetzt. Hierdurch werden die Bitpositionan 33 und 34 des Konfigurationsregisters mit den Werten "10" geladen. Ferner setzt das Signal Y1GH00 das Signal INTTYPE600 auf den Binärwert 11O", wodurch eine Unterbrechunganf orderung vom Typ 6 an den Prozessor G erzeugt wird. Dies signalisiert die Feststellung eines Fehlvergleichbits und daß kein Fehler festgestellt wurde, der anzeigt, welcher Prozessor des logischen Paares fehlerhaft ist. Erneut werden durch den Zustand der Bitpositionen 33 und 34 des Konfigurationsregisters 103-15 die Leitungen STOPGOO und STOPHOO auf den geeigneten Zustand umgeschaltet und es werden zusätzlich die Prozessor-Nummernsignale F0RCEPN10 und ALTPNIO auf die Binärwerte "1" und "0" gesetzt. Dies bedeutet, daß die Leitung STOPGOO auf den Binärwert "0" und die Leitung STOPHOO auf den Binärwert M1H gesetzt wird. Hierdurch wird der Status des Prozessors H angehalten und konserviert und dem Prozessor G gestattet« die Operation fortzusetzen. Ein Binärwert "O" wird in die Prozessornummer-Bitposition des Unterbrechungsanforderungswortes geladen, welches an die internen Unterbrechungslogikschaltkreise 103-28 der Schnittstelleneinheit SIU gerichtet ist. Wenn die Unterbrechungsanforderung Priorität aufweint, so
609820/0808
wird diese Information an die Unterbrechungslogikschaltkreise 101 weiteryeleitet.
Gemäß Fig. 14 übergibt die Schnittstelleneinheit SIU-100 die Steuerung an die Routinen mit dem Pegel O. Die Betriebsweise des E/A-Prozessors 200 sei nunmehr in näheren Einzelheiten erläutert. Wie erwähnt, gibt es zwei Arten von durch die Schnittstelleneinheit SIU festgestellten Prozessorfehlern: Einen Fehler vom Typ 5 mit einen Fehlvergleich und einen Fehlvergleich vom Typ 6 ohne Fehler. Diese Fehlerunterbrechungen rufen eine Bezugnahme auf die ünterbrechungssteuerblocks 5 und 6 hervor. Der Adressgeber IC in jedem Block verweirt auf die Eintrittsstellen der Diagnoseroutinen im internen Speicher 500.
Es sei zunächst der Fall betrachtet, wo die Schnittste]leneinheit SIU-100 einen Fehlvergleich feststellt aber keinen·. Prozessor des Paares PO Paritätsfehler zugeordnet sind. In diesem Fall legt die Schnittstelleneinheit SIU-100 Signale an die internen Unterbrechungslogikschaltkreise 103-28, die eine Unterbrechung vom Typ 6 anzeigen. Unter der Annahme, daß keine Unterbrechungsanforderung mit höherer Priorität vorliegt, reicht die Schnittstelleneinheit SIU-100 die Anforderung an die Logikschaltkreise 101 weiter. Da Unterbrechungen vom Typ 5 und 6 auf dem Pegel 0 fest verdrahtet sind, weist der Unterbrechungspegel, der durch den Anschluß L der Schnittstelle SIU an die Schaltkreise 101 angelegten Anforderung den Pegel "0 auf. Bei Abwesenheit irgendwelcher Anforderungen mit dem Pegel 0 von anderen Quellen (Anschlüssen) mit höherer Priorität setzen die Logikschaltkreise 101 gemäß Fig. 3a die Leitung LZP einer jeden Unterbrechungsschnittstelle 601 auf den Binärwert "1", wodurch das Vorliegen einer Unterbrechung mit dem Pegel 0 signalisiert wi rd.
Um sicherzustellen, daß der Prozessor die Unterbrechung angenommen hat, erzeugen die Folgcsteuerschaltkreise 103-102 das
809820/0Ö98
Signal REINITINTGH1O, das an die ünterbrechungsSchaltkreise 101 der Schnittstelle SIU angelegt wird. Hierdurch wird das Potential geeigneter Leitungen der Unterbrechungsschnittstelle erniedrigt und angehoben.
Gemäß Fig. 2 ist ersichtlich, daß das an die Leitung LZP eingelegte Signal den Steuerspeicher 201-10 in die Lage versetzt, auf einen bestimmten Start-Speicherplatz zu verzweigen. Das auf der Leitung LZP angelegte Signal dominiert die Unterbrechungssperrsignale, die in dem Prozeßsteuerregister 204-2?. gespeichert sind. Ferner löst das an die Leitung LZP angelegte Signal den Start eines Zeitablaufintervalles aus, welches die zweifache Dauer einer nicht vollständigen Operationsperiode besitzt. Dies bedeutet, daß dieses Signal die Schaltkreise 201-36 in die Lage versetzt, den Zähler des Blockes 2Ο1-34 zu starten. Der Zählstand des Zählers xvird danach in Abhängigkeit von jedem Systemtaktimpuls um 1 erhöht.
Nach Verzweigung auf den Start-Speicherplatz wird der Steuerabschnitt 201 des Prozessors durch in dem Steuerspeieher 201-10 gespeicherte Mikrobefehle fortgeschaltet. Die Mikrobefehle versetzen den Prozessor 200 in die Lage, eine Selbstprüfung auszuführen, bei der ein Großteil der Prozessorschaltkreise im Hinblick auf eine interne Fehlerverursachung überprüft wird. Beispielsweise werden von bestimmten Mikrobefehlen erzeugte Datensignale in Zwischenspeicher 203-10 und 204-4 geladen und aus diesen ausgelesen und über Addierer/Verschieber 204-2 zu den Arbeitsregistern 204-12 übertragen. Durch die Selbstprüfung wird ein wesentlicher Betrag an Prozessorschaltkreinen überprüft und es werden insbesondere jene Schaltkreise überprüft, die mittels der Test- und Diagnoseroutinen schwierig zu überprüfen sind. Auf diese Weise wird der Testaufwand durch Diagnoseprogramme vermindert.
909820/0898
Zusätzlich werden arithmetische und logische Operationen ausgeführt und das Resultat wird auf Richtigkeit überwacht. Im Falle der Richtigkeit erfolgt die Fortschaltung durch den Steuer speicher 201-10 bis zu einem Punkt, wo der Prozessor 200 eine Anforderung nach ünterbrechungsdaten ausgibt, indem die Leitung IDR ant den Binärwert "1" gesetzt wird. Dies bedeutet, daß der Prozessor 200 Mikrobefehle zur Beantwortung der Unterbrechungsanforderung von der Schnittstelleneinheit SIU-100 ausliest, wenn die Fortschaltung durch den Steuerspeicher 210-10 in geeigneter Weise fortschreitet.
Wenn die Fortschaltung nicht in geeigneter Weise fortschreitet, so erreicht der Prozessor 200 nicht den zuvor erwähnten Punkt in der Folge des Steuerspeichers 210-10. Dies führt dazu, daß der Zähler des Blockes 201-30 auf einen Zählstand erhöht wird, indem er in allen Positionen die Binärziffer "1" aufweist, wodurch der Auftritt des Zeitablaufs signalisiert wird. Der Zeit-ablauf ruft seinerseits die Umschaltung der Bitposition 16 des Prozeßsteuerregisters 204-22 auf den Binärwert "1" hervor. Die UKD-Schaltkreise des Blockes 201-30 bringen in Abhängigkeit von der Bitposition 16 ihrerseits die Störungsleitung TBL auf den Binärwert "1", wodurch der Schnittstelleneinheit SIU-100 der Fehler signalisiert wird. Es sei darauf verwiesen, daß die Verwirklichung der Selbstprüfungs-Kikrobefehlsfolge als herkömmlich für den Zweck der vorliegenden Erfindung angesehen werden kann. Sie. kann beispielsweise die Form bestimmter Tests einnehmen, die in der Patentanmeldung mit der Seriennummer 533 743 vom 17. Dezember 1974 beschriebensind. Ein weiteres Beispiel für eine Selbstprüfungs-Mikrobefehlsfolge kann der Patentanmeldung mit der Seriennummer 562 361 vom 26. März 197 5 entnommen werden. Zu diesem Zeitpunkt befindet sich die SIU-Folgesteuerung 103-102 in einem solchen Zustand (siehe Fig. 15), in dem sie den Zustand in Abhängigkeit von der Störungsleitung TBL nicht umschaltet. Die Störungsanzeige wird jedoch in dem Fehler-Statusregister Nr. 1 gespeichert.
609820/0099
Unter der Annahme, daß der Prozessor 200 die Selbstprüf ungs-· Mikrobfefchlsfolge ohne Fehler bearbeitet, führt der i'rozessor 200 einen Mikrobefehl aus, der die Leitung IDR auf den Binärwert "1" setzt. Die SlU-Schaltkreise 101-2 gemäß Fig. 3a legen ihrerseits über die Unterbrechungsschnittstellen 602 an das Prozessorpaar PO das Unterbrechungsanforderungswort an, dessen Daten das Format gemäß Fig. 12 aufweisen. Das Anforderung sv/ort umfaßt eine Pegelnummer von 0 und einen Code von 110, wodurch ein Fehlvergleich mit keinem festgestellten Fohler signalisiert wird. Die Steuerungsinformation bestimmt auf Grund ihrer Codierung den Anschluß L der Systenv-Schnittstelleneinheit SIU.
Beim Empfang des Signales IDR lädt die Schnittstelleneinheit SIU-100 den Unterbrechungspegel in das AIL-Register 101-6 und legt die Unterbrechungs-Datenwortsignale mit dem Format gemäß Fig. 13 an die Leitungen DFS einer jeden Prozessorschnittstelle 600 an. Zur gleichen Zeit setzt die Schnittstelle SIU die Leitung ARDA auf den Binärwert "1", wodurch dem Prozessor 200 signalisiert wird, daß das Unterbrechungswort an die Leitungen DFS angelegt ist. Diese Schrittfolge ist in Fig. 9 veranschaulicht. Sobald die Leitungen AIL auf den Binärwert "0" gesetzt sind, halten die Schaltkreise 201-36 den Zähler des Blockes 201-34 an und setzen diesen auf den Anfangszustand. Hierdurch wird angezeigt, daß der Prozessor 200 ohne Störung betrieben wurde und daher in der Lage war, einen Unterbrechungszustand mit dem Pegel O anzunehmen.
Gemäß Fig. 2 verursacht das Signal der Leitung ARDA das Laden des Unterbrechungsanforderungswortes in das Daten-Eingangsregister 204-18. Zu diesem Zeitpunkt nimmt die Schnittstelle SIU-100 die Daten von den Leitungen DFS hinweg. Zusätzlich setzt der Prozessor 200 beim Empfang des Signales ARDA die Leitung AOPR auf den Binärzustand "0" zurück. Es sei darauf verwiesen, daß der Prozessor H, obgleich er ebenfalls Information über die Unterbrechungsschnittstellenleitunger. empfängt, daran gehindert ist, irgendeine Antwort abzugeben, da er sich im angehaltenen Zustand befindet.
Θ09820/0Θ9Θ
Als nächstes ruft der Prozessor G unter Mikroprogrammsteuerung die Steuerblockbasis CBB vom Zwischenspeicher-Speicherplatz während der Zeit ab, in der das Unterbrechungswort in das Daten-Eingangsregister 204-18 geladen wird. Die über die Leitungen ΛΙΙ.· als ein Eingangssignal für den Schalter 203-14 und das Prozeßsteuerregister 204-22 angelegten Pegelnuirnersignale mit dem Wert 0 legen fest, daß der Prozeß oder die Routine auf dem Pegel 0 abzulaufen hat. Der Inhalt des Unterbrechungswortes vn ru über die DI-I'osition dec B-i>cha3ters 204-1, üoer den Add.lerer/Verschieber 204-7 und über die entsprechende Stellung des Schalters 204-8 in dan Arbeitsregister IC der Regi.sterre.ihe 204-12 übertragen. Terner wird dar: Zwischenspeicher-Adressregister 203-12 auf C gesetzt, um die Steuerblockbasis CBB aus dem Zwischenspeicher 203-10 in den Puffer 203-16 auszulesen.
Hinsichtlich einer neuen Unterbrechung muß die primäre Steuerblockbasis CBB ausgerichtet werden, in dem der Inhalt der Steuerblockbasis um 11 Bitpositionen nach links verschoben wird. Die Steuerblockbasis wird an den A-Operandcneingang des Addierers/Verschiebers 204-2 über die SPB-Position des A-Schalters 203-20 angelegt. Das Ergebnis wird über den Schalter 204-8 in das Arbeitsregister R2 übertragen.
Der Prozessor 200 bildet unter Mikroprogrammsteuerung die Unterbrechungssteuerblockadresse, indem er zunächst den Inhalt der Unterbrechungsdaten in dem R1-Arbeitsregister über die WRR-Schiene und die WRR-Position des A-Schalters 203-20 an den Addierer/Verschieber 204-2 anlegt, in welchem der Inhalt um 9 Bitpositionen nach rechts verschoben wird und sodann diesen verschobenen Inhalt in das Arbeitsregister R2 lädt, welches die Steuerblockbasisnummer 1 speichert. Durch die Verschiebung wird die Unterbrechungssteuerblocknummer von dem Unterbrechungsdatenwort entfernt. Während des gleichen Zyklus wird der Inhalt des Arbeitsregisters R2 sodann über die WRP-Schiene zu dem Puffer 203-16 übertragen. Als nächstes wird der Inhalt der UnterbrechungssteuerblocknuiTOier von dem Puffer 203-16 über
809820/0098
den Α-Schalter 203-20 an den Addierer/Verschieber 201-2 angelegt und in diesem um 4 Bitpositionen nach links verschoben. Das verschobene Resultat wird sodann in das Arbeitsregister R2 geladen. Die Verschiebeoperation bewirkt eine Multiplikation der Unterbrechungssteuerblocknummer mit dem Faktor 16. Der /vddierer/Verschieber 204-2 summiert den Inhalt des über den A-Schalter 203-20 angelegten Inhalts des Puffers 203-16 mit dem über den B-Schalter 204-1 angelegten Inhalt des Arbeiteregisters R2. Das Resultat, welches die Adresse des Unterbrechungssteuerblockes im Internen Ppelchermodul 500 festlegt, wird in das Arbeitsregister R2 geladen.
Gemäß Fig. 14 ist ersichtlich, daß der Typ 6 die spezielle Unterbrechungssteuerblockroutine definiert, die die SIU-Fahlvergleichsunterbrechung bearbeitet. Der Prozessor 2OO bearbeitet daher die Unterbrechungsroutine, unter der durch den Unterbrechung ssteuerblock 6 festgelegten Adresse. Diese Routine führt einen vollständigen Test des Prozessors durch.
Der Prozessor 200 löst insbesondere unter Mikroprogrammsteuerung eine Doppel-Leseoperation zum Abruf eines Doppelwortes des Unterbrechungssteuerblockes ICB (z.B. PSR und IC) von dem Modul 500 aas, wobei die Unterbrechungssteuerblockadresse benutzt wird, die in dem Arbeitsregister R2 gespeichert ist. Die Unterbrechungssteuerblockadresse wird zusammen mit anderer Information in das Daten-Ausgangsregister 204-14 von dew R2~Register über die ABS-Stellung des Adress-Schalters 204-6 und die WRP-Schiene geladen (z.B. besitzt die erzeugte ZAC-Anweisung das Format gemäß Flg. 7c). Die Dialog-Signalfolge zwischen der Schnittstelleneinheit SIU-100 und dem internen Speichermodul 500 ist in Fig. 11 dargestellt und wird später erläutert. Zusätzlich wird das Steuerungsregister 204-16 über die R/W-Stellung des Steuerungsschalters 204-10 geladen und der Prozessor 200 setzt die Leitung AOPR auf den Binärwert "1", um der Schnittstelle SIU-100 eine Speicheranforderung zu signalisieren. Ferner wird die ünterbrecbuiigssteuerblockadresse um
809820/0098
erhöht und in das Arbeitsregister R2 zurückgeführt. Der Prozessor 200 verzögert sodann die Bearbeitung v/eiterer Mikrobefohle, bis die Schnittstelle SIU-100 die Annahme der Anforderung signalisiert (der Schaltkreis 102-20 setzt z.B. die Leitung ARA auf den Binärwert "1").
Als nächstes liidt der Prozessor 200 den Inhalt des PCR-Registers 204-22 in das Arbeitsregistcr R3. Zu diesen; Zeitpunkt speichern die Arbeitsregister R1 , R2 und R3 das Unterbrechung;;-wort, die Unterbrechungssteuerblockadrense plus 8 unci den PCR-Inhalt. Der in dem Arbeitsregister R3 gespeicherte PCR-Inhalt wird geprüft, um festzustellen, daß eine Antwort von der Schnittstelle GIU-IOO auf der Leitung APA oder ARDA erfolgte. Der Prozessor 200 erzeugt unter Mikroprogrammsteuerung eine andere Doppel-Lcseanforderung an den Speichermodul 500, um die nSchsten beidc-n Worte des Unterbrechungssteuerblocks abzurufen.
Während der Prüfung des PCR-Inhalts werden die PSR- und IC-Worte vom Speichermodul 500 zum Daten-Elngangsregicter 204-13 übertragen. Das erste Wort (z.B. PSR) wird über die Di-Stellung des B-Schalters 204-1 und den Addierer/Verschieber 2O4-2 zu dem Arbeitsregister R3 übertragen. Das zweite Wort (z.B. IC) wird in das IC-Arbeitsregister geladen.
Der Prozessor 200 führt unter Mikroprogrammsteuerung die erforderlichen Operationen durch, um die Unterbrechungswortsteuerung in das PSR-Register 204-20 zu laden. Zunächst wird der PSR-Inhalt des Arbeitsregisters R3 um 8 Bitpositionen nach links verschoben. Hierdurch wird das in dem linken Byte enthaltene Steuerungsfeld eliminiert, da es für die Verarbeitung der Unterbrechung keine Bedeutung besitzt. Das Ergebnis wird sodann in das Arbeitsregister R3 übertragen. Der ünterbrechungs-Wortinhalt des Arbeitsregicters R1 wird zu dem Puffer 203-16 über die WRP-Schiene übertragen. Es sei vermerkt, daß die Bits 28-35, die durch die Schnittstelleneinheit SIU-100 und den Multiplexer 300 erzeugte Steuerungsinformation enthalten,
809820/0998
welche in das PSR-Register 204-20 einzusetzen ist.
Während eines nächsten pperationszyklus wird der Inhalt des Arbeitsregisters R3 über die WRR-Schiene und die WRR-Stellung des B-Schalters 204-1 an den B-Operandeneingang des Addierers/ Verschiebers 204-2 angelegt, während der Inhalt des Puffers 203-16 über die SPB-Stellung des A-Schalters 203-20 an den A-Operandeneingang des Addierers/Verschiebers 204-2 angelegt wird. Die Operanden A und B werden miteinander verkettet und durch den Verschieber ausgerichtet, um den neuen PSR-Inhalt zu bilden, der in das Arbeitsregister P.1 übertragen wird.
Der Prozessor 200 verzögert die Bearbeitung weiterer Mikrobefehls bis zum Empfang der nächsten beiden Worte des Unterbrechungssteuerblockes. Beim Empfang des Signales ARDA von der Schnittstelleneinheit SIU-100 überträgt der Prozessor den neuen PSR-Inhalt des Arbeitsregisters R1 über die WRR-Schiene in das PSR-Register 204-20. Während nachfolgender Zyklen werden die von dem ünterbrechungssteuerblock in das Daten-Eingangsregister 204-10 geladenen Worte in die geeigneten Zwischenspeicher-Speicherplätze (z.B. GR14 und PTBR--Adressen) geladen. Danach ruft der Prozessor 200 Befehle des Programmes ab, die durch die Unterbrechungs-Verarbeitungsroutine unter Benutzung des IC-Arbeitsregisterinhalts festge-, legt sind.
Wie aus Fig. 16 hervorgeht, werden Ausnahmebedingungen durch die anfängliche Testroutine nicht getestet. Die ausgeführten Tests sind jenen grundlegenden Tests ähnlich, die bei der Selbst-Prüfroutine ausgeführt werden, sie sind jedoch ausgeprägter im Hinblick auf die Kombinationen der erzeugten Datenmuster und im Hinblick auf die bearbeiteten Befehlsfolgen. In dieser Anfangsphase soll daher der Prozessor 200 getestet werden, ohne daß Ausnahmezustände erzeugt werden. Irgendwelche von der Schnittstelleneinheit SIU festgestellten Fehler, die
809820/0890
von der Leitung TBL während der Bearbeitung dieser Testroutine signalisiert werden, veranlassen die Schnittstelleneinheit SIU-100, eine Unterbrechung vom Typ 5 auf dom Pegel O zu erzeugen, die an die andere Prozessor:r.älfte des Paares, in diesem Fall an den Prozessor H, gerichtet ist.
Die Zustandstypen, die als Prozessorfeh.ler festgestellt werden, sind folgende:
1. Operation nicht vollständig (ONC), wobei der Auftritt eines Zeitablaufs festgestellt wird, wahrend die Bearbeitung eines Prozessorbefehls versucht wird; und
2. irgendein anderer Ausnahmezustand.
Die vorstehend erwähnten Fehler veranlassen die Umschaltung verschiedener BitpositJonen des Prozeßsteuerregisters 204-22 auf den Binärzustand "1". Da der Prozessor in die Bearbeitung eines Pegels 0 eingetreten ist, verursacht ein durch den Prozessor festgestellter Ausnahmezustand über die Fehlerfeststellschaltkreise des Blockes 201-30 das Setzen der Störungsleitung TBL auf den Binärwert "1". Dies steht im Gegensatz zu der Selbst-Prüfroutine, bei der Ausnahmezustände daran gehindert wurden, die Störungsleitung TEL auf den Binärwert "1" zu setzen. Wie aufgezeigt, setzt der Fehlerdetektor 201-8 die StörungsJeitung TBL nur auf den Binärwert "1", wenn die Bitposition 16 des Prozeßsteuerregisters 204-22 beim Auftritt nines Zeitablaufs auf den Binärwert "1" gesetzt ist und wenn der Prozessor 200 nicht den Pegel 0 bearbeitet.
Die Schnittstelleneinheit SIU-100 stellt Zustände der Gruppe fest, indem der Prozessor die Störungsleitung TBL auf den Binärwert "1" schaltet. Zustände der Gruppe 2 werden durch das bearbeitete Programm festgestellt, wenn dieses aus dem Inhalt des PCR-Registers gelesen wird. Schließlich werden Zustände der Gruppe 3 ebenfalls von der Schnittstelleneinheit SIU-100 als Fehler festgestellt, da diese ebenfalls als Ausnahmen abgefangen werden.
Θ09820/069Θ
Gemiiß den Flg. 3d, 15 und 16 ist ersichtlich, daß die Folgesteuerschaltkreise 1O3-1O2 in Abhängigkeit von dem auf den Binärwert "1" gesetzten Störungsleitungssignal PTGTBL12 auf den Zustand 011 umschalten, der einen Pssudozustand darstellt. Beim nächsten Taktimpuls schalten die Folgesteuerschaltkreise 103 -1 02 auf den Zustand 010 um. Dies entspricht dem gleichen Zustand wie in der Situation, wo ein Fehlvergleich festgestellt wurde und die Schnittstelleneinheit SIU-100 einen dem Prozessor G zugeordneten ParitStsfehler feststellte. Dementsprechend bewirken in der zuvor beschriebenen Weise die SIV-Folgesteuerschaltkreise 1O3--1O2 die Einschaltung dos intakten Prozessors H und die Ausschaltung des Prozessors G. Ferner setzen die Schaltkreise das Signal INTTYPE500 auf der. Binörwert "0", wodurch der Unterbrechungstyp 5 mit dem Pegel 0 dor Schnittstelleneinheit SIU-100 signalisiert wird. Erneut werden die Signale STOPGOO und STOPHOO auf die Binärwerte "0" und "1" gesetzt. Dies gibt den Betrieb des Prozessors G frei und konserviert den Zustand des Prozessors H. Der Prozessor H startet in der gleichen Weise wie der Prozessor G die Bearbeitung der Selb3t-Prüfroutine.
Wenn die anfängliche Testroutine durch den Prozessor G ohne Fehler bearbeitet wird, so nimmt die Routine auf dem Pegel 0 Bezug auf WREX- und RDEX-Befehle, wodurch Information in das zyklische SIU-Register 103-17 geschrieben und Information aus diesem ausgelesen wird. Die Befehle WREX und RDEX besitzen das in Fig. 6 dargestellte Format. Jeder Befehl versetzt den Prozessor 200 in die Lage, unter Mikroprogrammsteuerung eine programmierbare Schnittstellenanweisung zu erzeugen, die das Format gemäß Fig. 7a besitzt. Hinsichtlich weiterer Information betreffend die Art und Weise, in der solche Anweisungen erzeugt werden, sei auf die US-Patentanmeldung mit der Seriennummer 562 364 vom 26. März 1975 verwiesen.
Durch die erfolgreiche Bearbeitung von RDEX-und WREX-Befehlen wird die Fähigkeit des Prozessors Überprüft, externe andere
Θ09820/0Θ9Θ
98- 2 V b Ü 2 9 9
Modulo des Systems gemäß Fig. 1 betreffende Operationen auszulösen. Hei der Sicherstellung, daß der Prozessor diese Befehle in geeigneter Weise ausführen kann, nimmt die Testroutine auf einen weiteren WREX-Befehl Bezug, der den Prozessor 200 in die Lage versetzt, eine PI-Ladesteueranweisung zu erzeugen. Diese Anweisung weist das Format gemäß Fig. 7b auf. Das Bit 19 dieser Anweisung ist auf den Binärwert "1" gesetzt, wodurch der Schnittstelleneinheit SIU-100 die schrittweise Fortschaltung der Folgestcuerschaltkreise 103-102 signalisiert wird.
In näheren Einzelheiten betrachtet, wird die programmierbare Schnittstellenanweisung (PI-Anweisung) durch den Prozessor erzeugt und in das Daten-Ausgangsregister 204-14 geladen. Die Anweisung umfaßt einen Pegel bzw. eine Art \fon Stcuerungsinformation (ζ.13. die Bits 5-8). Die Bits der Steuerungsinformation im Falle der Schnittstelleneinheit S3U-100 weisen jedoch alle den Wert 0 auf. Der Prozessor 200 lädt weiterhin unter Mikroprogrammsteuerung Signale vom Register 201-15 und vom PSR-P.egister 204-20 über die PI-Stellung des Steuerungsschalters 204-10 in die Bitpositionen 0-8 des Steuerungsregisters 14. Diese Signale besitzen das Format gemäß Fig. 13 und sie liefern eine andere Art von Steuerungsinformation für den Gebrauch durch die Schnittstelleneinheit SIU-100, um die programmierbare Schnittstellenanweisung zu dem ausgewählten Anschluß (z.B. Anschluß L) zu übertragen.
Nach dem Laden der beiden Register 204-14 und 204-16 setzt der Prozessor 200 die Leitung AOPR auf den Binärwert "1", wodurch mit der Signalfolge bei der übertragung der programmierbaren Schnittstellenanweisung zu der Schnittstelleneinheit SIU-100 begonnen wird. Der Prozessor 200 erhöht ebenfalls den Inhalt des Befehlszählers (IC) und speichert das Resultat im Arbeitsregister R3. Sodann verzögert der Prozessor 200 die Bectrbeitung des nächsten Mikrobefehls bis er ein Signal über die Leitung ARA von der Schnittstelleneinheit SIU-1OO erhält, das die Annahme der Anforderung anzeigt.
809820/089Θ
Die Signalfolge für die Anweisungsübertragung ist in B'ig. 1Oa dargestellt. Die Schnittstelleneinheit SIU-100 betrachtet die programmierbare Schnittstellenanweisung so, als würde sie ein Paar von Schnittstellenzyklen erfordern, ein Adressen/Anweisungszyklus gefolgt von einem Datenzyklus, die mit A und D entsprechend in Fig. 10a bezeichnet sind. Es sei angenoiravon, daß die Schnittstelleneinheit SIU-100 bereit ist, eine programmierbare Schnittstellenanweisung anzunehmen, und daß die Leitung PIR auf den Binärwert "1" gesetzt ist. Der SlU-Pricri tätsschaltkreis 102-4 gemäß Fig. 3b legt das /^nweisungsv/crt über den Auswahlschalter 102-2 an die Leitungen PDFS der Schnittstelleneinheit SIU-100 während des ersten Operationszyklus an. Der Prozessor 200 wartet und speichert die Information in dem Daten-Ausgangsregister 204-14 solange, bis die Schnittstelleneinheit SIU-100 die Leitung ARA auf den Binarwert "0" umschaltet.
Bei Feststellung der Zustandsänderung der Leitung ARA vervollständigt der Prozessor 200 unter Mikroprogrammsteuerung die Bearbeitung des WREX-Befehls durch Übertragung des Datenwortes mit dem Format gemäß Fig. 7a von dem Puffer 203-16 durch den Addierer/Verschieber 204-2 über die Addier/Verschiebe-Stellung des Schalters 204-8 in das Daten-Ausgangsregister 204-14. Wie aus Fig. 10a ersichtlich, wird dieses Wort der Schnittstelleneinheit SIU-100 während des ersten Taktimpulses angeboten, nachdem der Prozessor 200 die Zustandsänderung der Leitung ARA festgestellt hat. Das Datenwort verbleibt auf den Leitungen DTS bis zum Auftritt des nächsten Taktimpulses, zu welchem Zeitpunkt die Operation vervollständigt ist.
Gemäß Fig. 3c ist ersichtlich, daß das Anweisungswort und das Datenwort in die PI-Register 103-25 und 103-24 über die Leitungen PDFS entsprechend geladen werden. Da dies eine Laiesteueranweisung ist, wird der Inhalt der Datenregister 1C3-24 unterdrückt. Die Schaltkreise des Blockes 103-20 decodieren die Bitsignale der Anweisung und prüfen ihre Parität. Beim
809820/0698
275Ü299
nächsten Taktimpuls, setzen die Schaltkreise 103-20 das Signal SMSIC auf den Binarwert "1".
Gemäß Fig. 3d irt ersichtlich, daß das Signal SMS10 das Y1-Flip-Flop 103-130 über die NAND-Gatter 103-112 und 1O3-111 in den Ii.Lnär zustand "1" umschaltet, indem das Signal SET11GH10 auf den Binärwort "1" gesetzt wird. Gemäß Fig. 15 wird hierdurch der Folgesteuerschaltkreis 103-102 auf den Zustand 101 veiteryoijchaltet. Ir diesem Zustand ruft die Anzeige auf der Störuno,^leitung von dem Prozessor keine Fortschaltung der Folgesteuer schaltkreise 103-102 auf einen Zustand hervor, der die Heraustrennung des Prozessors veranlassen könnte. Dies bedeutet, daß die Schnittstellenoinheit SIU-100 daran gehindert wird, auf Zustandsänderungen der Störungsleitung zu antworten.
Gemäß Fig* 16 prüfen die Testroutinen den Prozessor G auf Ausnahmezustände, um sicherzustellen, daß sich der Prozessor irr. geeigneten Zustand befindet. Ein solcher Test kann das Schreiben und das Auslesen von Information in und aus dem internen Speicher 500 erfordern. Dies führt dazu, daß der Prozessor Speicheranweisurgen (ZAC) erzeugt, die zu einer Dialog-Signalfolge zwischen der Schnittstelleneinbeit SIU-1OO und dem internen Speichermodul 500 gemäß Fig. 11 führen. Der Prozessor 200 wartet bis der SIU-Schaltkreis 102-20 geiaäß Fig. 3b die durch die Leitung AOPR signalisierte Anforderung annimmt, sofern diese Leitung auf den Binärwert "1" gesetzt ist. Unter der Annahme, daß die Schnittstelleneinheit SIU-1OO die Anforderung von dem Prozessor 200 angenommen hat, setzt sie die Leitung AZC auf den Binärwert "1", wodurch der Modul 500 zur Auslösung eines Lese/Schreib-Operationszyklus veranlaßt wird. Wie in Fig. 11 gezeigt, werden gleichzeitig mit dem Setzen der Leitung AZC die AufOrderersignale I.D., die Anweisungssignale ZAC und das von dem Prozessor 200 herrührende Doppel-Präzisionssigr.al an die Leitungen RITM, DTM und SLTM der Schnittstelle C03 in Abhängigkeit von den Signalen des Schaltkreises 102-20 angelegt.
809820/0898
- ιοί - 2750^99
Wie zuvor erwähnt, enthält der interne Speichermodul 500 die Anforderersignale I.D., die er zu der Schnittstelleneinheit SIU-100 als Steuerungsinformation mit den gelesenen Daten zurückleitet. Gemäß Fig. 11 ist ersichtlich, daß der interne Speichermodul 5OO hierauf durch umschaltung der Leitung ZIR auf den Binärwert "0" antwortet. Dies versetzt die Schnittstelleneinheit SIU-100 in die Lage, den Anforderungsweg zu sperren. Der interne Speichermodul 5OO löst die übertragung der Daten zu der Schnittstelleneinheit SIU-100 durch. Setzen der Leitung RDTR auf den Binärwort "1" aus, wöbe3. zusätzlich das von dem Prozessor 200 herkommende Anforderung^- signal I.D. und ein Doppel-Präzisionssignal auf die Leitungen RIFM und DPFM der Schnittstelle 603 gegeben werden.
Die Schnittstelleneinheit SIU-100 antwortet auf die Umschaltung der Leitung RDTR durch Setzen der Leitung RDAA auf den Binärwert "1", wie dies in Fig. 11 dargestellt ist. Dies signalisiert dem internen Speichermodul 500, daß der Weg zu dem anfordernden Modul 200 geöffnet ist und daß mit der Datenübertragung fortgefahren werden kann. Das Signal auf der Leitung RDAA veranlaßt den Modul 500, ein zweites Datenwort auf die Schnittstelle 603 zu geben, wobei dies mit der abfallenden Flanke des Taktimpulses nach dem Empfang des Signales auf der Leitung RDAA erfolgt. Bei Vervollständigung der Operation schaltet die Leitung ZIR auf den Binärwert "1", sobald der Modul 500 bereit ist, eine andere Anweisung anzunehmen .
Zum Zeitpunkt des Setzens der Leitung RDAA meldet die Schnittstelleneinheit SIU-100 dem anfordernden Modul 200, daß ein Datenwort an seine Leitungen DFS angelegt worden ist, indem die Leitung ARDA auf den Binärwart "1" gesetzt wird (siehe Fig. 9).
809820/0898
Während den Ausnahme-Tests vird ein hinsichtlich des Prozessors G erzeugter Ausnahmezustand durch die Diagnose-Testroutine festgestellt. Statushinweise al? Ergebnis des AusnahmeteGts werden dem zyklischen Register 103-17 über eine PI-Laderegisteranweisung gespeichert, die an den Anschluß L der Schnittstelleneinheit SIU ausgegeben wird. Ebenso werden Statushinweise im Hinblick auf den getesteten Prozessor G in dem zyklischen Register 103-17 gespeichert.
Gemäß Fig. 15 kann die Software bei dor Prüfung des Resultats eines solchen Tests ebenfalls; eine PI-Lese- und Löschanveisung pn das Fehler-Statusregister Nr. 1 ausgaben. Hierbei v/ird das Bit 23 der programmierbaren Sch.nittstellenanweir.ung (ΡΙ-Λπν/eisung) auf den Binärwert "1" gesetzt (siehe Fig. 7a). Die Anweisungs-Decodierschaltkreise 103-20 erzeugen die geeigneten Steuersignale, um das ausgewählte Register zu löschen, nachdem aein Inhalt gelesen worden ist. Die Lese- und Löschanweisung stellt die Antwort auf die Rückstellung der Unterbrtichungsquelle in dem System dar. Dies bedeutet, daß der in irgendeinem Fehler-Statusregister Nr. 1 oder Nr. 2 gespeicherte Status entsprechend dem Ausnahmetest eine Unterbrechung erzeugt. Wenn der Ausnahmetest stattfindet, während die Folgesteuereinrichtung sich in dem Zustand 101 befindet, so v/ird hierbei die Folgesteuereinrichtung daran gehindert, auf Änderungen des Zustandes der Störungsleitung TBL zu antworten, wie dies zuvor erläutert worden ist.
Gemäß Fig. 16 bearbeitet der Prozessor 200 nach dem Ausnahmetest einen anderen WREX-Befehl, der auf Grund seiner Codierung eine stufenweise Fehlvergleichs-Folge (SMS)-Ladesteueranweisung an die Schnittstelleneinheit SIU-100 festlegt. Wie zuvor beschrieben, werden hierdurch die Anweisungsdecodier-Logikschaltkreise 103-20 zur Ausgabe des Signales SMG10 veranlaßt. Dieses Signal schaltet seinerseits die Folgesteuerschaltkreise 103-102 auf den Zustand 111 um. Im einzelnen schaltet das Signal SMSIO die NAND-Gatter 103-120 und 103-121, wodurch das Signal SLT22GH1O auf den Binärwert "1"
808S20/0Ö98
gesetzt wird. Durch dieses Signal schaltet das Y2~Fli'?-Flop 103-131 in den Binärzustand "1" um.
Die Umschaltung der Folgesteuerschaltkreise 103-102 durch die zweite Anweisung SMS veranlaßt die Schnittstelleneinheit SIU-100, den Prozessor G aus der Konfiguration herauszunehmen und den Prozessor H in der Konfiguration zu belassen, wobei eine Unterbrechung vom Typ 6 auf dem Pegel 0 an den Prozessor II ausgegeben wird (siehe Fig. 15 und 16). Die Y1, Y2 und Y3-Fiip-Flops 103-130 bis 103-132 sind hierbei alle auf den Binärwert "1" gesetzt und der Decodierer 103-140 gemäß Fig. 3d setzt in Abhängigkeit von dem Code 111 das Signal Y7GH10 auf den Linärwert "1". Hierdurch werden die Dekcnfigurationssignale DECNFIGG10 und DECNFIGH10 auf die EinMrwerte 11O" und "1" entsprechend gesetzt. Ferner setzt das Signal Y7GH10 das Signal IKTTYPE600 auf den Binärwert "0", worauf die SlU-Unterbrechurnjsschaltkreise 103-28 die Unterbrechung vom Typ 6 mit dom Pegel C erzeugen. Die Zustandsänderungen der Bitpositionen 33 und 34 des Konfigurationsregisters setzen die Stopsignale STOPGOO und STOPHOO in den geeigneten Zustand (z.B. anhalten des Prozessors G und freigeben des Prozessors H für den Betrieb).
Es sei darauf verwiesen, daß bei der Umschaltung in den Zustand 111 eine Wiederauslösung der Unterbrechung hervorgerufen wird. Wenn durch die SlU-Unterbrechungslogikschaltkreise 101 einmal eine Unterbrechung mit dem Pegel 0 erzeugt worden ist, so können die Schaltkreise eine andere Unterbrechung mit dem Pegel 0 solange nicht erzeugen, bis die erste Unterbrechung gelöscht ist. Die Schaltkreise gemäß Fig. 3e (z.B. die NAND-Gatter 103-100, 103-162 und das UND-Gatter 103-161) veranlassen durch Setzen des WlederauslÖsungssignales REININTINTGH10 auf den Binärwert "1" die Unterbrechungslogikschaltkreise 101, die Leitung HLIP auf den Binärwert "1" zu setzen und Signale mit dem Pegel 0 an die Leitungen AIL anzulegen. Der Grund hierfür liegt darin, daß die Unterbrechungs-Anforderungssignalc nur das spezielle logische
809820/0898
Prozeasorpaar (hier dan Paar ?0) festlegen und nicht den Prozessor. Wenn sich daher die Störungslei tune; auf dem hohen Pegel befindet, so ist nicht sicher, ob der Prozessor G oder der Prozessor H mit dem Problem behaftet ist. Die Unterbrechungslocjikschaitkreise 101 werden daher jedesmal ausgelöst/ wenn die Steuerschaltkreise auf den Zustand 111 umschalten.
Gemäß Fig. 16 beginnt der Prozessor H mit der Bearbeitung seiner Selbst-Prüfroutine. Die Felbstprüfung und die anfängliche Testroutine werden in der zuvor beschrie Jenen Weise ausgeführt. Im Falle eines Fehlers, der durch den Zustand der Störungsleitung TBL v.'ahrend eines solchen Tents angezeigt wird, wird das Signal PTKTBLOO auf den Binärwert "0" gesetzt. Hierdurch werden die Folgesteuerschaltkreise von dem Zustand 111 in den Zustand 110 umgeschaltet.
In näheren Einzelheiten veranlaßt das Signal PTIITBLOO das NAND-Gatter 103-126 zur Umschaltung des Lignales SET32GH1O auf den Binärwert 11O". Da das Signal SET31GH10 zu diesem Zeitpunkt den Binärwert "0" aufweist, wird das Y3-Flip-Flop 103-132 gemäß Fig. 3d auf den Binärwert "0" zurückgestellt. Wie aus Fig. 15 ersichtlich, veranlaßt dies die SlU-Schaltkreise, den Prozessor G in der Konfiguration zu belassen und den Prozessor H aus der Konfiguration herauszunehmen, wobei zusätzlich eine Unterbrechung vom Typ 5 mit dem Pegel 0 erzeugt wird. Es geht aus Fig. 15 hervor, daß dies analog dem Vorgang geschieht, bei dem der Prozessor 200 an den Anschluß G angeschlossen ist und die Steuerfolgeschaltkreise von dem Zustand 001 auf den Zustand 010 umschalten (z.B. Zustand 111 ungefähr gleich OO1).
Die Schnittstelleneinheit SIU-100 erzeugt demgemäß die erforderlichen Steuersignale in der zuvor beschriebenen Weise. Insbesondere setzen die Decodierschaltkreise 103-140 gemäß Fig. 3d beim Umschalten auf den Zustand 110 das Signal Y6GH10 auf den Binärwert "1". Hierdurch werden wiederum die Konfigurationssictnale DECNFIGG10 und DECNFICH10 auf den Binärwert "1" und "0" entsprechend gesetzt. Die. L'itpositionen 33 und 34 des
Konfigurationsregisters 103-15 schalten dadurch auf den Wert 10 um, wodurch der Prozessor G zum betrieb freigegeben wird und der Prozessor H an einem Betrieb gehindert wird, was über die Stopleitungen STOPGOO und STOPHOO geschieht. Das Signal YGGHOO setzt ferner das Unterbrechungssignal INTTYPE500 vom Typ 6 mit dem Pegel 0 auf den Binärwert "0".
Wenn ein Störungshinweis von dem Prozessor H sowohl während der Bearbeitung der internen Selbst-Prüfroutine als auch der, anfänglichen Diagnoseroutine nicht festgestellt wird, εο führt die Diagnoseroutine einen WREX-Befehl aus, der eine Anweisung SMS an den Anschluß L der Schnittstelleneinheit SIU leitet. Die Anweisungs-Decodierschaltkreiße 103-20 setzen in der zuvor beschriebenen Weise das Signal SMS10 auf den TJinärwert "1". Hierdurch schalten gemäß Fig. 15 die Folgesteuerschaltkreise 103-102 von dem Zustand 111 auf den Zustand 1OO um.
In näheren Einzelheiten schaltet das Signal SKSOO, wenn es auf den Binärwert "0" gesetzt wird, das Signal SET32GH1O auf den Binärwert "0". Da das Signal SET31GH10 zu diesem Zeitpunkt den Binärwert "0" aufweist, wird das Y3-Flip-Flop 103-132 auf den Binärwert "0" zurückgestellt. In gleicher Weise schaltet das Signal SMSOO das Signal SET22GH1O auf den Binärwert "0". Da das Signal SET21GH10 zu diesem Zeitpunkt den Binärwert "0" besitzt, wird das Y2-Flip-Flop 103-131 auf den Binärwert "0" zurückgestellt.
Während die Folgesteuerschaltkreise 103-102 den Zustand 1OC aufweisen, testet die Testroutine Ausnahmezustände im Hinblick auf den Prozessor G in der zuvor beschriebenen Weise. In Abhängigkeit von den Testresultaten kann die Testroutine eine Lese- und Löschanweisung an das Statusregister Nr. 2 ausgeben, die den Fehlvergleich-Fehlerzustand löscht. Dieser Anweisung folgt eine andere programmierbare Schnittstellenanweisung, die die Bitpositionen 33 und 34 des Konfigurntionsregisters 103-15 wieder auf den Anfangszustand zurücksetzt,
809820/0898
2750*99
wodurch die Prozessoren G un'' H erneut in dsr verriegelten Konfiguration, d« h. im Vergleichsmodus betrieben werden (die Bitpositionen 33 und 34 worden auf den Binärwert "1" gesetzt).
Die vorsteherden Maßnahmen werden beispielsweise ausgeführt, v/enn festgestellt wurde, daß der getestete Prozessor II intakt ist. Hierdurch wird ein vorübergehender Fehler signalisiert. Jeder Fehler wird in einer Fehlcrdatei aufgezeichnet und es wird ein Schwellwert für vorübergehende Fehler vorgegeben, der sich als Fehleranzahl pro Zeiteinheit darstellt. Wenn die Fehlerhäuf igkeit den Schwellwert überschreitet, so erzeugt die Software des Systems eine Nachricht, die ein die Eedienungskonscle übermittelt wird und die die Auslösung einer speziellen Diagnoseroutine erfordert.
Ee sei darauf verwiesen, daß die Unterbrechung vom Typ 6 auf dem Pegel O von einem Fehler der Schnittstelleneinheit SIU herrrührt und nicht von einem Prozessorfehler. Die Software des Systems kann daher als eine Alternative einen Zwischentest der den Fehlvergleich liefernden Schaltkreise! innerhalb der Schnittstelleneinheit SIU-100 durchführen. Zu dienern Zeitpunkt ist das Prozessorpaar PO bereits getestet worden, wobei der festgestellte Fehler auf Grund eines Fehlvergleichs auf einer der Prozessor-Schnittstellenleitungen ausgegeben worden ist.
Bei der Ausführung eines solchen Tests werden die Programme und Daten des Systems aus einer Hilfs- bzw. Hintergrundquelle in herkömmlicher Weise geladen, nachdem die neue Prozessorkonfiguration in das Register 103-15 geladen worden ist. Das Laden erfolgt über eine programmierbare Schnittstellenanweisung an ein Register (oktal 5) des Anschlusses L der Schnittstelleneinheit SIU. Diese Anweisung gestattet das Laden des Konfigurationsregisters 103-15 und die Initialisierung des Registers 103-16. Dies hat zur Folge, daß die Anweisungs-Decodierschaltkreise 103-20 Signale erzeugen, die die Bitpositionen 5-27 des
809820/0898
Registers 103-16 und die Bitrositionen 20-35 der, Konfigurationsregisters 103-15 laden. Der Inhalt des Initialisierungsregisters 103-16 legt fest, welcher Anschluß bzw. welche Anschlüsse einen Initialisierungsimpuls vorbestimmter Breite (z.B. 1,4 /as) zugeführt erhalten. Dieser Impuls wird durch die Initialisierungs-Steuerschaltkreise 103-18 erzeugt (z.B. durch ein herkömmliches Monoflop, das durch den Binärwert "1" in den Bitpositicr.en 0-27 getriggert wird).
Wenn während eines Ausnahmetests ein Problem oder ein Fehler festgestellt wird, s»o führt die Diagnoseroutine einen KREX-Befehl aus, der durch seine Codierung eine SMS-Anweisung festlegt. Gemäß Fig. 16 schalten hierdurch die Folgesteuerschaltkreise von dem Zustand 100 auf den Zustand 110 um. Diese Zustandsänderung ist der Zustandsänderung von dem Zustand 001 in den Zustand 010 analog.
In näheren Einzelheiten veranlaßt das Signal SMS10 über das NAND-Gatter 103-120 gemäß Fig. 3d die Umschaltung des Signales SET22GH1O auf den Binärwert "1". Zu diesem Zeitpunkt setzt das NAND-Gatter 103-117 das Signal SET21GH10 auf den Binärwert "1", wodurch das Y2-Flip-Flop 103-131 in den Binärzustand "1" umgeschaltet wird. Der Decodierer 103-140 gibt auf Grund der Signale der Flip-Flops 103-130 bis 103-132 das Signal Y6GH10 mit dem Binärwert N1" aus. In der zuvor beschriebenen Weise veranlassen die Konfigurationssignale DECNFIGG10 und DECNFIGH10, daß der Prozessor G in der Konfiguration verbleibt und der Prozessor H aus der Konfiguration entfernt wird. Ferner wird eine Unterbrechung vom Typ 5 mit dem Pegel 0 an den Prozessor G ausgegeben, wenn das Signal INTTYPE5OO durch das Signal Y6GH00 auf den Binärwert "1" gesetzt wird.
Gemäß den Fig. 15 und 16 verbleiben die Folgesteuerschaltkreise 103-102 in dem Zustand 110 bis zur Ausgabe einer anderen Lese- und Löschanweisung. Der Prozessor G beginnt mit der Bearbeitung der Selbst-Prüfroutine, die chne Fehler vollständig bearbeitet.
809820/0898
- 106 -
werden sollte (nur Einzclfehler angenommen). Danach antwortet der Prozessor G auf die Unterbrechung vom Typ 5 mit dem Pegel O, worauf er die Steuerung auf die durch den Unterbrechungssteuerblock TCH5 gemäß Fig. 14 festgelegte Routine überträgt.
Die Unterbrechung vom Typ 5 legt fest, daß die Identität des den Fehlvergleich-Fehler erzeugenden Prozessors bekannt ist. In der gerade beschriebenen Ablauffolge wurde der intakte Prozessor durch einen wirksamen Test festgestellt. Aus Fig. 15 ist jedoch ersichtlich, daß die Folgesteuerschalt.Vreine 103-102 ebenfalls den Zustand 110 einnehmen, wenn die SIU-5chaltkrei.se einen dem Prozessor H zugeordneten Paritätsfehler zu dem Zeitpunkt festgestellt haben, wo der Fehlverg]eich-Fehler festgestellt wurde. Es sei vermerkt, daß der Zustand 110 dem Zustand 001 entspricht, den die Folgesteuerschaltkreise 103-102 einnehmen, wenn die SIU-Schaltkreise einen dem Prozessor G zugeordneten Paritätsfehler zu dem Zeitpunkt feststellen, wo der Fehlvergleich-Fehler festgestellt wurde. Ebenso wird in den Zustand 010 aus dem Zustand 001 umgeschaltet, wenn eine Störung im Prozessor G festgestellt wurde.
Dementsprechend prüft die durch die Unterbrechung vcm Typ 5 auf dem Pegel C hervorgerufene Testroutine den Inhalt der Fehler-Statusregister Nr. 1 und Nr. 2, um festzustellen, ob der Eintritt in die Routine durch einen Eintritt aus der Fehlerroutine vom Typ 6 ir.it dem Pegel 0 verursacht wurde. In dem Fall, wo der Eintritt aus der Fehlerroutine vom Typ 6 mit dem Pegel 0 erfolgte, wird das System erneut geladen und erneut in der zuvor beschriebenen Weise gestartet. Die Folgesteuerschaltkreise 103-102 werden über eine Lese/Löschanweisung in den Anfangszustand 000 zurückgeführt.
Wenn der Eintritt in die Routine vom Typ 5 auf dem Pegel 0 durch die den fehlerhaften Prozessor feststellende Schnittstelleneinheit SIU-100 hervorgerufen wurde, so veranlaßt die Schnittstelloneinheit SIU-100 dio Ausführung einer Sclbst-
609820/0808
Testoperation hinsichtlich des anderen intakten Prozessors in der zuvor beschriebenen Weise. Diese Situation trivt auf, wenn die Schnitt5telleneinhe.lt EIU-100 einen dem Prozessor H zugeordneten Paritätsfehler feststellt oder wenn sie während des Tests des Prozessors H einen Fehler feststellt, nachdem der Prozessor G im Falle des Zustandes 110 als intakt getestet wurde bzw. wenn sie einen Paritätsfehler feststellt, der dem Prozessor G im Falle des Zustandes 010 zugeordnet ist.
Gemäß Fig. 16 ermittelt die Routine vom Typ 5 mit dem Pegel 0 den Status der Fehler-Statusregister Kr. 1 und Nr. 2 ebenso wie den Inhalt des Prozeßateuerregisters 204-22 geir.äS Fig. Hierdurch wird dem System die Identität des intakten Prozessors angezeigt.
Die Diagnoseroutine gibt ferner eine Ladeanweisung für das Register 5 aus, auf die eine Lese- und Löschanweisung an das Fehler-Statusregister Nr. 2 folgt. Hierdurch wird das Prozessorpaar in die verriegelte Konfiguration zu einem weiteren Test durch die Software des Betriebssystems zurückgeführt.
Das Betriebssystem besitzt danach die Fähigkeit, zu entscheiden, ob die Operation mit einem Prozessor fortgesetzt worden soll. Dies bedeutet, daß das System in einfacher Weise erneut gestartet wird und das Konfigurationsregister 103-15 mit dem geeigneten Wert geladen wird. Danach ist das Betriebssystem in der Lage, periodisch den einzigen in der Konfiguration verbliebenen Prozessor zu testen und hierdurch die Zuverlässigkeit des Systems sicherzustellen.
Die Einrichtung gemäß der vorliegenden Erfindung ist demnach in der Lage, zuverlässig das Vorliegen einer; fehlerhaften Prozessors innerhalb eines Prozessorpaares festzustellen. Dies wird in einer Weise verwirklicht, die sicherstellt, daß ein als fehlerhaft festgestellter Prozessor nur durch positive Hinweise ermittelt wird, indem direkt ein Fehler festgestellt
Ö09820/0898
v/j.rd oder inden nach dem TePt eines intakten Prozessors der fehlern ~i£ Le Prozessor getestet wird.
Ks liegt auf der !!and, daß vielerlei Änderungen hinsichtlich des bevorzugten Ausführungsbeispielcs der vorliegenden Erfindung vorgenormen werden können, beispielsweise Änderungen hinsichtlich des individuellen Prozessorpaares, der Folgesteuerschaltkrcise und arderer Schaltkreise, ohne daß hierbei der Rahmen der vorliegerden Erfindung verlassen wird. Für den Fachmann liegt es ferner auf der Hand, daß andere Fehlerzustünde ebenfalls dor Schni ttotellaneinhe.it SIU-100 signalisiert werden können und für Test zwecke benutzt v/erden können.
Ö09820/08Ö8
ΑΛΛ Leerseite

Claims (32)

  1. L INFORMATION SYSTKHS INC. 9. NOV. 1977
    Smith Street S2O2632 Ge
    Haltham, Mass., USA 2750299
    Ein/Ausg«be-Syiitero
    Patentansprüche:
    Ein/Juisgabe-System zur Steuerung von Ein/Ausgabe--Operationen hinsichtlich mehrerer Ein/Ausgabe-Gexäte, gekennzeichnet durch
    mehrere Module, von denen jeder einen Schniitstelleaanschlu^ und Einrichtungen zum Erzeugen von Aucgemgssignalen einschließlich von Anforderungen aufweist, die Eingangssignale über dieser. Anschluß aufnehmen und Ein/Ausgabe-Verarbeitungseinheiten anfassen; und
    eine System-Schnittstellensinheit mit mehreren Echnittstellenanschlüssen, von denen jeder an einen Modul zur Aufnähme der Ausgangssignale angeschlossen ist, wobei die System-Sclmittstelleneinheit umfaßt:
    Register zur Festlegung verschiedener Konfigurationen der zum Betrieb freigegebenen Ein/Ausgabe-Verarbeitungseinheiten, wobei die Register auf eine Anfangskonfiguration gesetzt sind
    zur Freigabe wenigstens eines Paares der Ein/Ausgabe-Verarbeitungseinheiten für einen Norms!betrieb in einem verriegelten Konfigurationsmodus;
    0Ö982Ö/Ö89I ORIGINAL INSPECTED
    275Ü299
    Vergleichsschciltkreise, die einzeln an die Schnittstellencmschlüsse einer jeden der Ein/Ausgabe-Verarbeitungseinheiten angeschlossen sind und die Gruppen der Ausgangcsignaie'von Paaren der Schnittstellenanschlüsse von paarweise für den Normalbetrieb im verriegelten Modus zusammengeschalteten Ein/ Ausgabs-Verarbeitungseinhaiten vergleichen, wobei sie einen B'ehlvergleich zwischen den Gruppen von Ausgangssignalen anzeigende Signale erzeugen; und
    eine an die Vergleichscchaltkreise und die Register angaschio^nene Folgesteuereinrichtung, die in Abhängigkeit von den den Fehlvergleich anzeigenden Signalen die Register aus dem verriegelten in einen unverriegclten Konfigurationsmoduß umschaltet, um ein selektiver» Testen e.i ner jeden Verarbeitungseinheit des Paares km gestatten und zuverlässig festzustellen, welche Verarbeitungseinheit des Paares fehlerhaft ist.
  2. 2. System nach Anspruch 1, dadurch gekennzeich. net, daß jeder Anschluß einer jeden E/A-Verarbeitungreinheit eine Fehiermeldeschnittstelle zur Signalisierung interner von der E/A-Verarbeitungseinheit festgestellter Fehler aufweist, daß die Systenv-Schnittstellenainheit ferner an die Fehlermelduschnittstelle angeschlossene Fehlerregister zur Speicherung erster Signalhinweise auf die internen Fehler aufweist, daß άίο Folgesteuere.inrichtung an die Register angeschlossen ist und die ersten Signalhinweise der Register die Folgesteuerung zur umschaltung von einem Anfangszustand in einen vorbestimmten Zustand veranlassen, um die Register in einen vorgegebenen unverriegelten Konfigurationsmodus umzuschalten und die fehlerhafte E/A-Verarbeitungseinheit des Paares zu sperren und die intakte E/A-Verarbeitungseinheit des Paares für den Test freizugeben.
  3. 3. System nach Anspruch 2, dadurch gekennzeichnet, daß die System-Schnittstelleneinheit ferner an die Anschlüsse der E/A-Verarbeitungseinheiten angeschlossene Prüfschaltkreise umfaßt, daß die Prüfschaltkreise Prüffehlersignale
    809820/0898
    27502Ü9
    zur Anzeige der Ungültigkeit dor von den E/A-Verarbeitongsoinheiten empfangenen Ausgangssignale erzeugen, wobei dio Prüfschaltkreise an die Register angeschlossen sind, um die Fe.hlerregister zur Speicherung von zweiten Hinweisen auf die Prüffehlersignale zu veranlassen, und daß die Folgesteuereinrichtung durch die Prüffehlersignale in die Lage versetzt wird, vom Anfangszustand in den vorbestimmten Zustand umzuschalten, um die Ausschaltung der mit Fehlern behafteten E/A-Verarbeitunyseinhelt und die Einschaltung der intakten E/A-Verarbeitungseinheit für den Test zu gestatten.
  4. 4. System nach Anspruch 2, dadurch gekennzeichnet, daß jede Fehlermeldeschnittstelle mehrere Steuerlei·· tungen umfaßt, wobei eine erste Steuerleitung dem selektiven Freigabewiderruf der zugeordneten E/A-Verarbeitungseinheit dient und wobei das Systemschnittstellenregister mehrere Bitpositionen zur Speicherung von Signalen entsprechend den verschiedenen Konfigurationen aufweist und die Bitpositionen an die jeweils ersten Steuerleitungen einer jeden Fehlermeldeschnittstelle eingeschlossen sind.
  5. 5. System nach Anspruch 4, dadurch gekennzeichnet, daß jede E/A-Verarbeitungseinheit umfaßt: eine Takteinheit zur Erzeugung von Zeitsteuersignalen, wobei die Takteinheit an die erste Steuerleitung der Fehlermeldeschnittstelle angeschlossen ist; und
    eine an die Takteinheit angeschlossene raikroprogramraierte Steuereinheit, welche Folgen von Mikrobefehlsworten zur Erzeugung von Steuersignalen für den Operationsablauf der E/A-Verarbeitungseinheiten speichert, wobei die erste Steuerleitung, wenn sie durch den Inhalt einer der Bitpositionen in einen ersten vorbestimmten Zustand geschaltet wird, den Betrieb der Takteinheit sperrt, um den weiteren Betrieb der mikroprogrammierten Steuereinheit zu verhindern und den Zustand der E/A-Verarbeitungseinheit zu dem Zeitpunkt zu konservieren, zu dem ein Fehler durch die System-Schnittstelleneinheit festgestellt worden let.
    8098?'0/0898
  6. 6. System nach Anspruch 2, daclurch gekennzeichnet , daß jede E/A-Verarbeitungseinheit folgende Schaltkreise umfaßt:
    eine Takteinheit zur Erzeugung von Zeitsteuersignalen für die E/A-Verarbsitungseinheit, die mit der Fehlermeldeschnittstelle verbunden ist; und
    eine an die Takteinheit angeschlossene mikroprograminierte Steuereinheit, die Folgen von Mikrobefehlsworten zur Erzeugung von Steuersignalen für den Operationsablauf der E/A-Verarbeitungseinheit speichert, wobei eine der Folgen auf Grund ihrer Codierung eine Selbst-Testfolge von Mikrobefehlen zum Einwirken auf einen Großteil der Schaltkreise umfaßt; und daß die System-Schnittstelleneinheit ferner umfaßt: eine an die Folgesteuereinrichtung angeschlossene Unterbrechungseinrichtung, und λ
    an die Vergleichsschaltkreise angeschlossene Statusregister zur Speicherung von Hinweisen auf einen Fehlvergleich, wobei die Statusregister die Unterbrechungssteuereinrichtung in die Lage versetzen, eine Unterbrechungsanforderung über den Anschluß zu dem Paar von E/A-Verarbeitungseinheiten zu leiten, das durch das Statusregister als für den Fehlvergleicb verantwortlich ausgewiesen wird, und
    wobei die Takteinheit der intakten E/A-Verarbeitungseinheit, die durch die Fehlermeldeschnittstelle freigegeben wird, in Abhängigkeit von der Unterbrechungsanforderung die mikroprogrammierte Steuereinheit zur Bezugnahme auf die Selbst-Testfolge von Mikrobefehlen veranlaßt, um sicherzustellen, daß die intakte Verarbeitungseinheit richtig arbeitet.
  7. 7. System nach Anspruch 6, dadurch gekennzeichnet, daß jede E/A-Verarbeitungseinheit ferner umfaßt:
    Fehlerfeststelleinrichtungen, denen ein Signalhinweis Auf die Unterbrechungsanforderung zugeführt wird und die feststellen, wenn die E/A-Verarbeitungseinheit die Selbst-Testfolge der Mikrobefehle nicht erfolgreich durchführen kann;
    809820/Οβββ
    die Fehlerfeststelleinrichtungen mit der Fehlermeldeschnittstelle verbindende Einrichtungen, um der System-Schnittstelleneinheit einen Fehlerzustand bei nicht-erfolgreicher Bearbeitung der Selbst-Testfolge zu signalisieren.
  8. 8. System nach Anspruch 7, dadurch gekennzeichnet, daß die Fehlermeldeschnittstelle eine an die genannte Einrichtung angeschlossene Störungshinweisleitung aufweist, daß die Fehlerfeststelleinrichtung einen internen Zeitgeber zur Erzeugung eines Zeitablaufsignales am Ende eines vorbestimmten Zeitintervalles aufweist, der zur Fortschaltung an den Taktgeber angeschlossen ist und wobei der Signalhinweis auf die Unterbrechungsanforderung den Zeitgeber startet und daß die genannte Einrichtung auf Grund des Zeitablaufsignaies die Störungshinweisleitung zur Annahme eines vorbestimmten Zustandes zwingt, wodurch der System-Schnittstelleneinheit der Fehler angezeigt wird.
  9. 9. System nach Anspruch 8, dadurch gekennzeichnet, daß die Unterbrechungsanforderung auf Grund ihrer Codierung einen von mehreren Typen vorgibt, um festzulegen, welche von mehreren Test- und Diagnoseroutinen durch die intakte E/A-Verarbeitungseinheit während ihres weiteren Tests zu bearbeiten ist.
  10. 10. System nach Anspruch 9, dadurch gekennzeichnet, daß ein Speicher an einen der Schnittstellenanschlüsse angeschlossen ist, welcher mehrere Speicherplätze zur Speicherung einer Anzahl verschiedener Unterbrechungssteuerblocks aufweist, die auf Grund ihrer Codierung eine vorbestimmte Test- und Diagnoseroutine vorgeben; und daß die E/A-Verarbeitungseinheit ferner Unterbrechungssteuereinrichtungen umfaßt, denen die Unterbrechungsanforderungen zugeführt werden und die nach erfolgreicher Bearbeitung der Selbst-Testfolge die Unterbrechungsanforderung von der System-Schnittstelleneinheit bearbeiten und auf den durch den speziellen Typ der Unterbrechungsanforderung festgelegten Unterbrechungssteuerblock des Speichers Bezug nehmen.
    ΘΟ982Ο/Ο8Α§
  11. 11. System nach Anspruch 10, dadurch gekennzeichnet , daß i'ie E/A-Verarbeitungseinheit ferner umfaßt:
    eine an die Störungsanzeigeleitung angeschlossene Fehlerfeststelleinrichtung zur Signalisierung von während verschiedener Test- und Diagnoseroutinen festgestellter Fehler; und
    daß die Unterbrechungssteuereinrichtung durch die Codierung des ausgewählten Unterbrechungssteuerblockes zur Bezugnahme auf eine erste Test- und Diagnoseroutine veranlaßt wird, wodurch die E/A-Verarbeitungseinheit zu einem gegenüber dar Selbst-Testfolge ausgeprägteren Test der Schaltkreise veranlaßt wird und die Fehlerfeststelleinrichtung bei der Feststellung eines Fehlers während der Bearbeitung dieser ersten Test- und Diagnoseroutine die Störungsanzeigeleitung in den vorbestimmten Zustand bringt, der der System-Schnittstelleneinheit die Störung anzeigt.
  12. 12. System nach Anspruch 11, dadurch gekennzeichnet , daß die erste Test- und Diagnoseroutine wenigstens einen vorbestimmten Befehlstyp zur Erzeugung eines vorbestimmten Anweisungstyps für die System-Schnittstelleneinheit umfaßt;
    daß die System-Schnittstelleneinheit ferner eine Anweisungs-Decodiereinrichtung aufweist, die an die Anschlüsse einer jeden der E/A-Verarbeitungseinheiten angeschlossen ist und auf Grund des vorbestimmten Anweisungstyps die Folgesteuereinrichtung aus dem vorbestimmten Zustand in den Anfangszustand umschalten, um die Register in die Lage zu versetzen, das Paar von E/A-Verarbeitungseinheiten zu veranlassen, mit den Tests im verriegelten Konfigurationsmodus fortzufahren.
  13. 13. System nach Anspruch 1, dadurch gekennzeichnet , daß die System-Schnittstelleneinheit ferner umfaßt:
    eine Zeitgebereinheit zur Erzeugung von Taktsignalen, die aufeinanderfolgende Operationszyklen zur Synchronisierung
    609820/0098
    der Sy Steinoperationen erzeugen, und daß dem Vergleichsschaltkreis die Taktsignale zugeführt werden, um Gruppen von Ausgangssignalen von Paaren der Schnittstellenanschlüsse während jedes aufeinanderfolgenden Operationszyklus zu vergleichen.
  14. 14. System nach Anspruch 13, daß die System-Schnittstelleneinheit ferner umfaßt:
    an die Register angeschlossene Anzeigeeinrichtungen zur Anzeige von Geräte-Benutzungssignalen, die die verschiedenen Konfigurationen erkennen lassen, welche die E/A-Verarbeitungseinheiten während ihres Betriebes einnehmen.
  15. 15. System nach Anspruch 13, dadurch gekennzeichnet , daß die System-Schnittstelleneinheit ferner umfaßt!
    an den Anschluß einer jeden E/A-Verarbeitungseinheit angeschlossene Anweisungs-Decodiereinrichtungen, welche auf Grund einer Anweisung irgendeiner E/A-Verarbeitungseinheit. Signale zum Umschalten der Folgesteuereinrichtung auf den Anfangszuetand für den Normalbetrieb erzeugen.
  16. 16. System nach Anspruch 1, dadurch gekennzeichnet , daß jeder Anschluß einer jeden E/A-Verarbeitungseinheit eine Fehlermeldeschnittstelle zur Signalisierung interner durch jede E/A-Verarbeitungseinheit festgestellter Fehler aufweist, und wobei die System-Schnittstelleneinheit an jeden Anschluß einer jeden E/A-Verarbeitungseinheit angeschlossene Prüfschaltkreise aufweist, welche die Gültigkeit der von jeder E/A-Verarbeitungeeinheit empfangenen Ausgangssignale feststellen, und wobei diese an die Fehlermeldeschnittstelle und die Prüfschaltkreise angeschlossene Statusregister zur Speicherung von Hinweisen auf interne Fehler und Prüffehler aufweist, um intakte und fehlerhafte Verarbeitungseinheiten festzustellenι
    809820/0698
    daß die Folgesteuereinrichtuig mehrere an die Statusregister angeschlossene bistabile Speichereinrichtungen
    umfaßt, die auf Grund von Anzeigen der Statusregister in
    Abhängigkeit von einem Fehlvergleichssignal von einem
    Anfangszustand in einen ersten Zustand einer ersten vorbestimmten Zustandsfolge umschalten, wenn die Anzeigen
    eine Verarbeitungseinheit des Paares als fehlerhaft festlegen, und
    wobei die bistabilen Speichereinrichtungen von dem Anfangszustand in einen ersten Zustand einer zweiten vorbestimmten Zustandsfolge umschalten, wenn die Anzeigen keine Verarbeitungseinheit des Paares als fehlerhaft festlegen, und
    daß die Register durch die bistabilen Speichereinrichtungen zur Umschaltung von der Anfangskonfiguration in eine unverriegelte Moduskonfiguration veranlaßt werden, um das selektive Testen der intakten und fehlerhaften Verarbeitungseinheiten des Paares in einer durch die ersten und zweiten Zustandsfolgen vorgegebenen Weise zu gestatten, wodurch zuverlässig festgestellt wird, welche Verarbeitungseinheiten
    fehlerhaft sind.
  17. 17. System nach Anspruch 16, dadurch gekennzeichnet , daß die bistabilen Speichereinrichtungen im ersten Zustand der ersten Zustandsfolge die Umschaltung
    der Register vom verriegelten Konfigurationsmodus in den
    unverriegelten Konfigurationsmodus veranlassen, die auf
    Grund der Codierung die intakten und fehlerhaften Verarbeitungseinheiten freigeben bzw. sperren, und
    daß die bistabilen Speichereinrichtungen im ersten Zustand
    der zweiten Zustandsfolge die Umschaltung der Register vom
    verriegelten Konfigurationsmodus in den unverriegelten
    Konfigurationsmodus veranlassen, die auf Grund ihrer Codierung erste und zweite Verarbeitungseinheiten des Paares frei· geben bzw. sperren.
    809820/0898
  18. 18. System nach Anspruch 17, dadurch gekennzeichnet , daß der erste Zustand der ersten Folge einen Code von "010" oder "110" und der erste Zustand der zweiten Folge einen Code von "110" aufweist.
  19. 19. System nach Anspruch 17, dadurch gekennzeichnet , daß jede E/A-Verarbeitungseinheit umfaßt:
    eine Takteinheit zur Erzeugung von Zeittaktsignalen zur Fortschaltung der E/A-Verarbeitungseinheit, v/elche an die Fehlermeldeschnittstelle angeschlossen ist; und eine mikroprogrammierte an die Takteinheit angeschlossene Steuereinheit zur Speicherung von Mikrobefehlswortfolgen, die Steuersignale für den Betriebsablauf der E/A-Verarbeitungseinheit erzeugen, wobei eine der Folgen auf Grund ihrer Codierung eine Selbst-Testfolge von Mikrobefehlen zum Einwirken auf einen Großteil der Schaltkreise umfaßt; und
    daß die System-Schnittstelleneinheit ferner umfaßt: an den Vergleichsschaltkreis angeschlossene Vergleichsregister zur Speicherung von Fehlvergleichshinv/eisen, die die Unterbrechungeeinrichtung in die Lage versetzen, eine Unterbrechungsanforderung über die Anschlüsse zu dem Paar von E/A-Verarbeitungseinheiten zu leiten, das durch das Vergleichsregister .als den Fehlvergleich erzeugend angezeigt wird,
    wobei die Takteinheit der ersten Verarbeitungseinheit des Paares durch die Fehlermeldeschnittstelle freigegeben wird, die die mikroprogrammierte Steuereinheit in Abhängigkeit von der Unterbrechungsanforderung zur Bezugnahme auf die Selbst-Testfolge des Mikrobefehls veranlaßt, um zu prüfen, ob die erste der Verarbeitungseinheiten richtig arbeitet.
  20. 20. Systen nach Anspruch 19, dadurch gekennzeichnet , daß jede E/A-Verarbeitungseinheit ferner umfaßtt
    809020/0898
    Fehlerfeststelleinrichtungen, denen ein Signalhi?'weis auf die Unterbrechungsanforderung von der System-Schnittstelleneinheit zugeführt wird und die feststellt, wenn die E/A-Verarbeitungseinheit nicht in der Lage ist, die Selbst-Testfolge von Mikrobefehlen erfolgreich zu bearbeiten ; und
    die Fehlerfeststelleinrichtung mit der Fehlermeldeschnittstelle verbindende Einrichtungen, um der Systern-Schnittstelleneinheit einen Fehlerzustand bei nicht-erfolgreicher Bearbeitung der Selbst-Testfolge zu signalisieren.
  21. 21. System nach Anspruch 20, dadurch gekennzeichnet , daß die Unterbrechungsanforderung durch ihre Codierung einen von mehreren Typen festlegt, um zu bestimmen, welche der Test- und Diagnoseroutinen durch die intakte E/A-Verarbeitungseinheit während des weiteren Tests derselben zu bearbeiten ist.
  22. 22. System nach Anspruch 21, dadurch gekennzeichnet , daß es einen an einen der Schnittstellenanschlüsse angeschlossenen Speicher aufweist, der mehrere Speicherplätze zur Speicherung einer Anzahl verschiedener Unterbrechungssteuerblöcke besitzt, die durch ihre Codierung eine vorbestimmte Test- und Diagnoseroutine festlegen; und
    daß die E/A-Verarbeitungseinheit ferner Unterbrechungssteuereinrichtungen aufweist, denen die Unterbrechungsanforderung zugeführt wird und die nach einer erfolgreichen Bearbeitung einer Selbst-Testfolge die Unterbrechungsanforderung der System-Schnittstelleneinheit bearbeiten und auf den speziellen Unterbrechungssteuerblock des Speichers Bezug nehmen, auf den durch die Art der Unterbrechungsanforderung verwiesen wird.
    809820/0898
  23. 23. System nach Anspruch 22, dadurch gekennzeichnet , daß die E/A-Verarbeitungseinheit ferner umfaßt:
    eine an die Störungsanzeigeleitung angeschlossene Fehlerfeststelleinrichtung zur Signalisierung von während der Bearbeitung verschiedener Test- und Diagnoseroutinen festgestellter Fehler;
    daß die Unterbrechungssteuereinrichtung durch einen ausgewählten Unterbrechungssteuerblock auf Grund dessen Codierung zur Bezugnahme auf eine erste Test** und Diagnossroutine veranlaßt wird, wobei die E/A-Verarbeitungseinheit durch die Test- und Diagnoseroutine zu einem ausgeprägteren Test der während der Selbst-Testfolge getesteten Schaltkreise veranlaßt wird; und
    daß die Fehlerfesteteileinrichtung bei Feststellung eines Fehlers während der Bearbeitung der ersten Test- und Diagnoseroutine die Störungsanzeigeleitung auf den vorbestimmten Zustand setzt, um der System-Schnittstelleneir.heit die Störung zu signalisieren.
  24. 24. System nach Anspruch 23, dadurch gekennzeichnet , daß die eine Test- und Diagnoseroutine wenigstens einen vorbestimmten Befehletyp zur Erzeugung eines vorbestimmten Anweisungstypes an die System-Schnittstelleneinheit aufweist;
    daß die System-Schnittstelleneinheit ferner eine an den Anschluß einer jeden E/A-Verarbeitungeeinheit angeschlossene Anweieungs-Decodiereinrichtung aufweist, die auf Grund des vorbestimmten Anweisungstypes die bistabilen Speichereinrichtungen vom ersten Zustand der zweiten Folge in einen zweiten Zustand der zweiten Folge umschaltet, um ein weiteres Schalten der bistabilen Speichereinrichtungen auf Grund von Signalen der Fehlermeldeschnittstelle zu sperren; und
    das die E/A-Verarbeitungseinheit ferner umfaßt: Prozeßsteuerregister zur Speicherung von AusnahmebedJngungen, die an die Fehlerfesteteileinrichtung angeschlossen sind
    809820/0096
    und durch diese zur Speicherung von Signalen veranlaßt werden, die Ausnahmebedingungen während der Bearbeitung der Test- und Diagnoseroutinen nach dem Umschalten der bistabilen Speichereinrichtungen in den zweiten Zustand anzeigen.
  25. 25. System nach Anspruch 24, dadurch gekennzeichnet , daß der erste und der zweite Zustand den Codierungen "001" und. "101" entsprechen.
  26. 26. System nach Anspruch 24, dadurch gekennzeichnet , daß die Test- und Diagnoseroutinen Befehle zur Erzeugung von Speicheranweisungen umfassen, um Information in den Speicher einzuschreiben und aus diesem auszulesen.
  27. 27. System nach Anspruch 24, dadurch gekennzeichnet , daß die Test- und Diagnoseroutinen einen anderen vorbestimmten Befehlstyp zur Erzeugung des vorbestimmten Anveisungstypes umfassen, wobei die Anweisungs-Decodiereinrichtung auf Grund des vorbestimmten Anweisungstypes die bistabilen Speichereinrichtungen von dem zweiten Zustand in einen dritten Zustand der zweiten Folge umschaltet, daß die bistabilen Speichereinrichtungen die Umschaltung der Register vom unverriegelten Konfigurationsmodus, der auf Grund seiner Codierung die erste und zweite Verarbeitungseinheit freigibt und sperrt, in einen anderen unverriegelten Konfigurationsmodus veranlaßt, wobei der andere Konfigurationsmodus auf Grund seiner Codierung die ersten und zweiten Verarbeitungseinheiten freigibt und sperrt, um beide Verarbeitungseinheiten des Paares gemäß einer Folge ähnlich der zweiten Folge vorbestimmter Zustände zu testen und zuverlässig festzustellen, welche der Verarbeitungseinheiten fehlerhaft ist.
    809820/0898
  28. 28. System nach Anspruch 27, dadurch gekennzeichnet , daß der dritte Zustand dem Code "111" entspricht.
  29. 29. System nach Anspruch 27, dadurch gekennzeichnet , das die Unterbrechungseinrichtung der System-Schnittstelleneinheit ferner einen an jeden der Anschlüsse angeschlossenen Auslöseschaltkreis aufweist, wobei die bistabilen Speichereinrichtungen im dritten Zustand die Unterbrechungseinrichtung in die Lage versetzen, eine Unterbrechungsanforderung innerhalb der Anzahl von Anforderungstypen über den Anschluß an das Paar weiterzuleiten, das den Fehlvergleich aufweist, und wobei diese den Auslöseschaltkreis konditionieren, um dem Paar die Unterbrechungsanforderungen zu signalisieren.
  30. 30. System nach Anspruch 29, dadurch gekennzeichnet , daß die Fehlerfeststelleinrichtung der zweiten Verarbeitungseinheit des Paares feststellt, wenn die zweite Verarbeitungseinheit nicht in der Lage ist, die Selbst-Testfolge von Mikrobefehlen erfolgreich zu bearbeiten; und
    daß diese Einrichtung die Fehlermeldeschnittstelle zur Signalisierung eines Fehlerzustandes an die System-Schnittstelleneinheit bei nicht-erfolgreicher Bearbeitung der Selbst-Testfolge veranlaßt.
  31. 31. System nach Anspruch 30, dadurch gekennzeichnet , daß die bistabilen Speichereinrichtungen durch die Fehlermeldeschnittstelle zur Umschaltung vom dritten Zustand in einen vierten Zustand der zweiten Folge veranlaßt werden und eine Umschaltung der Register von dem anderen unverriegelten Konfigurationsmodus in den unverriegelten Konfigurationsmodus, der durch seine Codierung die ersten und zweiten Verarbeitungseinheiten freigibt und sperrt, bewirkt.
    809820/0898
  32. 32. System nach Anspruch 31, dadurch gekennzeichnet , daß der vierte Zustand dem Code "110" entspricht.
    809820/0898
DE19772750299 1976-11-15 1977-11-10 Ein/ausgabe-system Ceased DE2750299A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/741,632 US4099234A (en) 1976-11-15 1976-11-15 Input/output processing system utilizing locked processors

Publications (1)

Publication Number Publication Date
DE2750299A1 true DE2750299A1 (de) 1978-05-18

Family

ID=24981524

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772750299 Ceased DE2750299A1 (de) 1976-11-15 1977-11-10 Ein/ausgabe-system

Country Status (9)

Country Link
US (1) US4099234A (de)
JP (1) JPS5391542A (de)
AU (1) AU510225B2 (de)
CA (1) CA1109563A (de)
DE (1) DE2750299A1 (de)
FR (1) FR2371017A1 (de)
GB (1) GB1595919A (de)
IT (1) IT1090438B (de)
NL (1) NL7712493A (de)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4456952A (en) * 1977-03-17 1984-06-26 Honeywell Information Systems Inc. Data processing system having redundant control processors for fault detection
US4231087A (en) * 1978-10-18 1980-10-28 Bell Telephone Laboratories, Incorporated Microprocessor support system
US4205374A (en) * 1978-10-19 1980-05-27 International Business Machines Corporation Method and means for CPU recovery of non-logged data from a storage subsystem subject to selective resets
SE421151B (sv) * 1979-01-02 1981-11-30 Ibm Svenska Ab Kommunikationsstyrenhet i ett databehandlingssystem
US4428044A (en) 1979-09-20 1984-01-24 Bell Telephone Laboratories, Incorporated Peripheral unit controller
US4306288A (en) * 1980-01-28 1981-12-15 Nippon Electric Co., Ltd. Data processing system with a plurality of processors
US4356546A (en) * 1980-02-05 1982-10-26 The Bendix Corporation Fault-tolerant multi-computer system
JPS6053339B2 (ja) * 1980-10-09 1985-11-25 日本電気株式会社 論理装置のエラ−回復方式
WO1983001135A1 (en) * 1981-09-18 1983-03-31 Rovsing As Christian Multiprocessor computer system
US4866604A (en) * 1981-10-01 1989-09-12 Stratus Computer, Inc. Digital data processing apparatus with pipelined memory cycles
US4939643A (en) * 1981-10-01 1990-07-03 Stratus Computer, Inc. Fault tolerant digital data processor with improved bus protocol
US4488228A (en) * 1982-12-03 1984-12-11 Motorola, Inc. Virtual memory data processor
DE3442418A1 (de) * 1984-11-20 1986-05-22 Siemens AG, 1000 Berlin und 8000 München Verfahren zum betrieb eines signaltechnisch sicheren mehrrechnersystems mit mehreren signaltechnisch nicht sicheren ein/ausgabebaugruppen
US4885683A (en) * 1985-09-27 1989-12-05 Unisys Corporation Self-testing peripheral-controller system
US5155678A (en) * 1985-10-29 1992-10-13 International Business Machines Corporation Data availability in restartable data base system
US4788640A (en) * 1986-01-17 1988-11-29 Intel Corporation Priority logic system
IT1213344B (it) * 1986-09-17 1989-12-20 Honoywell Information Systems Architettura di calcolatore a tolleranza di guasto.
DE3688139T2 (de) * 1986-12-30 1993-10-07 Ibm Gedoppelte Schaltungsanordnung zur schnellen Übertragung und Reparierbarkeit.
US5020024A (en) * 1987-01-16 1991-05-28 Stratus Computer, Inc. Method and apparatus for detecting selected absence of digital logic synchronism
US4852083A (en) * 1987-06-22 1989-07-25 Texas Instruments Incorporated Digital crossbar switch
US5051887A (en) * 1987-08-25 1991-09-24 International Business Machines Corporation Maintaining duplex-paired storage devices during gap processing using of a dual copy function
US4970640A (en) * 1987-08-28 1990-11-13 International Business Machines Corporation Device initiated partial system quiescing
US4907228A (en) * 1987-09-04 1990-03-06 Digital Equipment Corporation Dual-rail processor with error checking at single rail interfaces
US5185877A (en) * 1987-09-04 1993-02-09 Digital Equipment Corporation Protocol for transfer of DMA data
EP0306211A3 (de) * 1987-09-04 1990-09-26 Digital Equipment Corporation Synchronisiertes Doppelrechnersystem
EP0306244B1 (de) * 1987-09-04 1995-06-21 Digital Equipment Corporation Fehlertolerantes Rechnersystem mit Fehler-Eingrenzung
EP0325078B1 (de) * 1988-01-22 1992-09-09 International Business Machines Corporation Fehlererkennungs- und -meldemechanismus über einen Synchronbus
DE68913629T2 (de) * 1988-03-14 1994-06-16 Unisys Corp Satzverriegelungsprozessor für vielfachverarbeitungsdatensystem.
US4943966A (en) * 1988-04-08 1990-07-24 Wang Laboratories, Inc. Memory diagnostic apparatus and method
US5278973A (en) * 1989-03-27 1994-01-11 Unisys Corporation Dual operating system computer
US5189665A (en) * 1989-03-30 1993-02-23 Texas Instruments Incorporated Programmable configurable digital crossbar switch
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
US5283868A (en) * 1989-05-17 1994-02-01 International Business Machines Corp. Providing additional system characteristics to a data processing system through operations of an application program, transparently to the operating system
US5369749A (en) * 1989-05-17 1994-11-29 Ibm Corporation Method and apparatus for the direct transfer of information between application programs running on distinct processors without utilizing the services of one or both operating systems
US5144692A (en) * 1989-05-17 1992-09-01 International Business Machines Corporation System for controlling access by first system to portion of main memory dedicated exclusively to second system to facilitate input/output processing via first system
US5369767A (en) * 1989-05-17 1994-11-29 International Business Machines Corp. Servicing interrupt requests in a data processing system without using the services of an operating system
US5325517A (en) * 1989-05-17 1994-06-28 International Business Machines Corporation Fault tolerant data processing system
US5113522A (en) * 1989-05-17 1992-05-12 International Business Machines Corporation Data processing system with system resource management for itself and for an associated alien processor
US5068780A (en) * 1989-08-01 1991-11-26 Digital Equipment Corporation Method and apparatus for controlling initiation of bootstrap loading of an operating system in a computer system having first and second discrete computing zones
US5068851A (en) * 1989-08-01 1991-11-26 Digital Equipment Corporation Apparatus and method for documenting faults in computing modules
US5163138A (en) * 1989-08-01 1992-11-10 Digital Equipment Corporation Protocol for read write transfers via switching logic by transmitting and retransmitting an address
US5065312A (en) * 1989-08-01 1991-11-12 Digital Equipment Corporation Method of converting unique data to system data
US5251227A (en) * 1989-08-01 1993-10-05 Digital Equipment Corporation Targeted resets in a data processor including a trace memory to store transactions
EP0415545B1 (de) * 1989-08-01 1996-06-19 Digital Equipment Corporation Verfahren zur Softwarefehlerbehandlung
US5153881A (en) * 1989-08-01 1992-10-06 Digital Equipment Corporation Method of handling errors in software
US5048022A (en) * 1989-08-01 1991-09-10 Digital Equipment Corporation Memory device with transfer of ECC signals on time division multiplexed bidirectional lines
AU650242B2 (en) * 1989-11-28 1994-06-16 International Business Machines Corporation Methods and apparatus for dynamically managing input/output (I/O) connectivity
US5428769A (en) * 1992-03-31 1995-06-27 The Dow Chemical Company Process control interface system having triply redundant remote field units
GB2268817B (en) * 1992-07-17 1996-05-01 Integrated Micro Products Ltd A fault-tolerant computer system
US5537607A (en) * 1993-04-28 1996-07-16 International Business Machines Corporation Field programmable general purpose interface adapter for connecting peripheral devices within a computer system
US5752063A (en) * 1993-12-08 1998-05-12 Packard Bell Nec Write inhibited registers
US5632013A (en) * 1995-06-07 1997-05-20 International Business Machines Corporation Memory and system for recovery/restoration of data using a memory controller
JPH09212371A (ja) * 1996-02-07 1997-08-15 Nec Corp レジスタ退避及び復元システム
US6820213B1 (en) 2000-04-13 2004-11-16 Stratus Technologies Bermuda, Ltd. Fault-tolerant computer system with voter delay buffer
US6687851B1 (en) 2000-04-13 2004-02-03 Stratus Technologies Bermuda Ltd. Method and system for upgrading fault-tolerant systems
US6691225B1 (en) 2000-04-14 2004-02-10 Stratus Technologies Bermuda Ltd. Method and apparatus for deterministically booting a computer system having redundant components
US7065672B2 (en) 2001-03-28 2006-06-20 Stratus Technologies Bermuda Ltd. Apparatus and methods for fault-tolerant computing using a switching fabric
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US6928583B2 (en) * 2001-04-11 2005-08-09 Stratus Technologies Bermuda Ltd. Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep
FR2862457B1 (fr) * 2003-11-13 2006-02-24 Arteris Systeme et procede de transmission d'une sequence de messages dans un reseau d'interconnexions.
US10514990B2 (en) * 2017-11-27 2019-12-24 Intel Corporation Mission-critical computing architecture
US10946866B2 (en) 2018-03-31 2021-03-16 Intel Corporation Core tightly coupled lockstep for high functional safety
US11120642B2 (en) 2018-06-27 2021-09-14 Intel Corporation Functional safety critical audio system for autonomous and industrial applications
US11520297B2 (en) 2019-03-29 2022-12-06 Intel Corporation Enhancing diagnostic capabilities of computing systems by combining variable patrolling API and comparison mechanism of variables
CN112380119A (zh) * 2020-11-12 2021-02-19 上海东软载波微电子有限公司 芯片、编程调试器、系统及锁定编程调试入口的方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3252149A (en) * 1963-03-28 1966-05-17 Digitronics Corp Data processing system
US3409877A (en) * 1964-11-27 1968-11-05 Bell Telephone Labor Inc Automatic maintenance arrangement for data processing systems
US3386082A (en) * 1965-06-02 1968-05-28 Ibm Configuration control in multiprocessors
DE1524239B2 (de) * 1965-11-16 1971-07-22 Telefonaktiebolaget Lm Ericsson, Stockholm Schaltungsanordnung zur aufrechterhaltung eines fehler freien betriebes bei einer rechenanlage mit mindestens zwei parallel arbeitenden rechengeraeten
SE313849B (de) * 1966-03-25 1969-08-25 Ericsson Telefon Ab L M
NL153059B (nl) * 1967-01-23 1977-04-15 Bell Telephone Mfg Automatisch telecommunicatie-schakelstelsel.
US3864670A (en) * 1970-09-30 1975-02-04 Yokogawa Electric Works Ltd Dual computer system with signal exchange system
BE789512A (fr) * 1971-09-30 1973-03-29 Siemens Ag Procede et installation pour le traitement des erreurs dans un systeme de traitement de donnees compose d'unites separees
US3812469A (en) * 1972-05-12 1974-05-21 Burroughs Corp Multiprocessing system having means for partitioning into independent processing subsystems
US3828321A (en) * 1973-03-15 1974-08-06 Gte Automatic Electric Lab Inc System for reconfiguring central processor and instruction storage combinations
US3898621A (en) * 1973-04-06 1975-08-05 Gte Automatic Electric Lab Inc Data processor system diagnostic arrangement
US3921141A (en) * 1973-09-14 1975-11-18 Gte Automatic Electric Lab Inc Malfunction monitor control circuitry for central data processor of digital communication system
US3838261A (en) * 1973-09-14 1974-09-24 Gte Automatic Electric Lab Inc Interrupt control circuit for central processor of digital communication system
US3908099A (en) * 1974-09-27 1975-09-23 Gte Automatic Electric Lab Inc Fault detection system for a telephone exchange
US3958111A (en) * 1975-03-20 1976-05-18 Bell Telephone Laboratories, Incorporated Remote diagnostic apparatus

Also Published As

Publication number Publication date
GB1595919A (en) 1981-08-19
JPS5391542A (en) 1978-08-11
JPS62538B2 (de) 1987-01-08
FR2371017B1 (de) 1985-01-18
FR2371017A1 (fr) 1978-06-09
CA1109563A (en) 1981-09-22
NL7712493A (nl) 1978-05-17
IT1090438B (it) 1985-06-26
AU510225B2 (en) 1980-06-12
AU3025677A (en) 1979-05-10
US4099234A (en) 1978-07-04

Similar Documents

Publication Publication Date Title
DE2750299A1 (de) Ein/ausgabe-system
DE2755897C2 (de)
DE2750721A1 (de) Ein/ausgabe-system
DE2908316C2 (de) Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage
DE2612083A1 (de) Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung
DE1279980C2 (de) Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem
DE2459975C2 (de)
DE2614000C2 (de) Diagnoseeinrichtung zur Prüfung von Funktionseinheiten
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE2856483C2 (de)
DE2755952C2 (de)
DE2806045A1 (de) Dv-system mit pufferspeicher
DE2612139A1 (de) Ein/ausgang-steuerungssystem
DE2030812A1 (de) Modulare Datenrechnersysteme
DE2317870C2 (de) Schaltungsanordnung zur Steuerung der Datenübertragung zwischen dem Hauptspeicher und mindestens einem E/A-Gerät in einer digitalen Datenverarbeitungsanlage
DE2755608A1 (de) Wartungseinrichtung in einem dv-system
DE2714805C2 (de)
DE2829550C2 (de)
DE3127349A1 (de) Signalverarbeitungssystem mit verteilten elementen
DE2657848A1 (de) Steuereinheit fuer ein datenverarbeitungssystem
DE2629266A1 (de) Ein/ausgabe-system
DE2741886A1 (de) Datenuebertragungseinrichtung
DE2210325A1 (de) Datenverarbeitungssystem
DE1524102B2 (de) Elektronische, aus baueinheiten aufgebaute datenverarbeitungsmaschine
DE1935944C3 (de) Steuereinrichtung in einer elektronischen Datenverarbeitungsanlage

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US

8131 Rejection