DE2210325A1 - Datenverarbeitungssystem - Google Patents
DatenverarbeitungssystemInfo
- Publication number
- DE2210325A1 DE2210325A1 DE19722210325 DE2210325A DE2210325A1 DE 2210325 A1 DE2210325 A1 DE 2210325A1 DE 19722210325 DE19722210325 DE 19722210325 DE 2210325 A DE2210325 A DE 2210325A DE 2210325 A1 DE2210325 A1 DE 2210325A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- processing module
- error
- register
- segment
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0721—Error 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 within a central processing unit [CPU]
- G06F11/0724—Error 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 within a central processing unit [CPU] in a multiprocessor or a multi-core unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/073—Error 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 a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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 processing functionality is redundant
Description
Dipl.-Ing. Egon Prinz βοοο KoncUn 6o, 29.Februar 1972
22Ί032
Dipl.-Ing. Egon Prinz βοοο KoncUn 6o, 29.Februar 1972
Dr. Gertrud Hauser · Emib.re.rMro..e ι» 22Ί0325
Dipl.-Ing. Gottfried Leiser
Patentanwälte
Telefon, 83 15 10
Poiljchedtkonto, München 1)7078
HiESSEY HAHDSL UND INVESTMENTSAG
6300 Zug. Schweiz
Gartenstrasse 2
Gartenstrasse 2
Datenverarbeitungssystem
Die Erfindung bezieht sich auf eine in einem Schtzeit-Datenverarbeitungssystem
zu verwendende Anordnung zur Erkennung und Behandlung von Fehlern und insbesondere,
jedoch nicht ausschließlich, auf die Verwendung einer solchen Anordnung in einem sogenannten Multiprozessorsystetn.
In Echtzeitverarbeitungsanlagen, beispielsweise in
multipr-ozessorgesteuerte η Fernvermittungsystemen
muß sichergestellt werden, daß ein fehlerhaftes Arbeiten einer der Einrichtungen der Verarbeitungsanlage festge-Etellt
und sobald als möglich kompensiert wird. Es müssen sowohl Hardware-Fehler als auch sogenannte Software-Fehler
(Programmierungsfehler) festgestellt und behandelt werden; vernünftigerweise ist jedoch anzunehmen, daß der
größte Teil der Software-Fehler entfernt wird, ehe das Verarbeitungssystem ei.nsatzfähig wird, indem gründliche
und umfassende Prüfungen der Anwendungs- und Überwachungsprogramme
des Systems vor seinem betriebsmäßigen Überschneiden ausgeführt werden. Solche Software-Fehler, die noch
209838/1 101
vorliegen, wenn das System einsatzfähig wird, müssen bei
ihrer Feststellung ebenso wie beständige und vorübergehende Hardware-Fehler behandelt werden.
In vielen bekannten Systemen verursacht die Feststellung eines Fehlers, einfach, daß die Einrichtung, in der der
Fehler festgestellt worden ist, aus dem ßn-Line-Systera abgestoßen wird (d.h. in den Off-line-Betrieb) gesetzt
wird. Hardware-Fehler können jedoch in "»beständige " oder
in "vorübergehende " Fehler eingeordnet werden, und es wird allgemein angenommen, daß bedeutend mehr vorübergehende
Fehler als beständige Fehler auftreten, wobei das Verhältnis von vorübergehenden Fehlern zu beständigen Fehlern in der
Größenordnung von einigen fünf vorübergehenden Fehlern zu einem beständigen Fehler liegen kann. Die einfache Abstossung
einer fehlerhaften Einrichtung aus dem Betriebssystem zieht als unmittelbare Folge eine Verringerung der Betriebssicherheit
des restlichen Systems nach sich, weil 3eine Fehlersicherheitsredundanz teilweise oder sogar vollständig
beseitigt wird. Dies gilt insbesondere in sogenamten Multiprozessorsystemen, bei denen die Entfernung eines
der Verarbeitungsgeräte die Reservekapazität des Verarbeitungssysteras
ernsthaft einschränkt. Die Abstossung der fehlerhaften Einrichtung läßt das Betriebssystem in einem
kritischen Zustand zurück, bis ein Wiederherstellungsmechanismus
so betätigt wird, daß er die fehlerhafte Einrichtung durch eine Reserveeinrichtung ersetzt.
Nach Entdeckung eines Fehlers in einem Multiprozessorsystem
muß sichergestellt werden, daß sich die Auswirkungen des Fehlers nicht durch den Rest des Datenverarbeitungssystems
ausbreiten. Die Auswirkungen de3 Fehlers müssen auf einen möglichst kleinen Bereich beschränkt werden, so daß die
richtig arbeitenden Einrichtungen nicht durch die Auswirkungen des Fehlers beeinträchtigt werden. Daher sollen
209838/ 1101
gemäß der Erfindung die Funktionen einer fehlerhaften Einrichtung
auf jene Funktionen beschränkt werden, die für den
Rest des On-Line-Systems schädlich sind, wenn ein Fehler
festgestellt wird.
Gemäß der Erfindung wird ein Datenvecarbeitungssystem
mit einem Speicher zum Speichern einer sich auf Anwendungs- und Überwachungsprogramme beziehende Information und einer
sich auf ein Fehlerprüfprogramm beziehenden Information
und mit wenigstens einem Verarbeitungsmodul geschaffen, das dadurch gekennzeichnet ist, daß das Verarbeitungsoodul
mit einer Anordnung zur Erkennung und Behandlung von Fehlern ausgestattet ist, die derart ausgebildet ist, daß sie nach
Entdeckung eines Fehlerzustands innerhalb des Verarbeitungatooduls
sofort derart wirksam wird, daß sie den erlaubten Zugriffsbereich des Speichers auf den Bereich beschränkt,
in dem die sich auf das Fehlerprüfprogramm beziehende
Information gespeichert ist.
Wie oben bereits erwähnt wurde, fallen alle Hardware-Fehler in eine von zwei Kategorien (d.h. beständige
oder vorübergehende), so daß die Feststellung eines Fehlers in vielen Fällen das System in dem kritischen
Zustand zurückläßt, wenn die Einrichtung (das Verarbeitungsgerät),
in dem der Fehlerzustand festgestellt worden ist, unmittelbar aus dem On-Line-System entfernt
wird, obgleich der tatsächlich aufgetretene Fehler vorübergehend gewesen sein könnte. Gemäß der Erfindung soll daher
ein in einem Datenverarbeitungssystem verwendbarer Fehlerunterbrechungsmechanismus
so ausgestaltet werden, daß er zwischen beständigen und vorübergehenden Fehlern unterscheiden
kann.
209838/1101
Gemäß einerWeiterbildung der Erfindung wird ein On-Line-Datenverarbeitungssystem
mit einem mehrere Speichermodule enthaltenden Speicher zum Speichern einer sich auf Anwendungsund
Überwachungsprogramme sowie auf ein Fehlerprüfprogramm
beziehenden Information und mit wenigstens einem Verarbeitungsmodul geschaffen, das dadurch gekennzeichnet ist, daß mehrere
Eintrittssegmente eines Fehler prüfprogramme gebildet werden,
von denen jedes eine Information enthält, die eine sich auf diejenigen Speicherbereiche beziehende Segmentbelegungsinformation
definiert, die eine sich auf das Fehlerprüfprogramm beziehende Information enthalten, daß jedes der
Eintrittssegmente in einem anderen der Speichermodule
gespeichert wird, daß ein Verarbeitungsmodul mit Fehlererkennungseinrichtungen
ausgestattet ist, die derart ausgebildet sind, daß sie bei Feststellungen eines Fehlerzustandes
innerhalb des Verarbeitungsraoduls derart wirksam
werden, daß der Verarbeitungsmodul durch Verhindern des Zugriffs auf die sich auf die Anwendungs- und Überwachungsprogramme beziehende Information vom On-Line-System getrennt
wird, und eines der Eintrittssegmente zum Eintritt in das Fehlerprüfprogramm zur Überprüfung aller Betriebsvorgange
des Verarbeitungsmoduls verwendet wird, daß die lehlererkennungseinrichtungen
derart ausgebildet sind, daß bei Feststellung eines weiteren Fehlers bei der Durchführung
des Fehlerprüfprogramms der Verarbeitungsmodul veranlaßt wird, ein anderes Eintrittssegment zum Wiedereintritt in
das Fehlerprüfprogramm zu verwenden, während der Verarbeitungsmodul wieder in das On-Line-System eingefügt wird,
wenn das Fehlerprüfprogramm erfolgreich abgelaufen ist.
Unter Verwendung der oben genannten Anordnungen nach der Erfindung kann ein fehlerhaftes Verarbeit ungs ge rät in
einer unendlichen Schleife enthalten sein, die nacheinander der Reihe nach alle Fehlerprüfprogramm-Eingangssegmente
209838/1 101
verwendet. Wenn der ursprüngliche Fehler jedoch nur vorübergehend
war, dann vollendet das Verarbeitungagerät die
Prüfung und tritt wieder in das On-Line-System ein. Außerdem
hält ein Fehler in einem Speichermodul, der als Fehler des Verarbeitungsmoduls in Erscheinung tritt, das Verarbeitungsgerät
nicht im Off-Line-Betrieb, da der Prüfvorgang schließlich unter Verwendung eines anderen Eintrittssegments
und einer in einem nicht fehlerhaften Speichermodul enthaltenen Prüfprogrammkbpie schließlich
erfolgreich ist.
Die Erfindung findet insbesondere, wenn auch nicht
ausschließlich bei Da te η ve rar be it ungs systeme η Anwendung,
die Speicherschutzsysteme enthalten, wie sie in der deutschen Patentanmeldung P 21 26 206.6 beschrieben
sind. In solchen Systemen sind mehrere sogenannte "Fähigkeits"· Itegteter(capability-reg.)in einem Verarbeitungsmodul vorgesehen,
von denen jedes so ausgebildet ist, daß es eine Segmentbezeichnung enthält, die die Basis- und
Endadressen eines bestimmten Informationssegments
im Speicher des Systems definiert.In dem in der genannten Anmeldung beschriebenen Verarbeitungsmodul
sind zwei Gruppen von solchen Fähigkeitsregistern verwendet, von denen die eine aus sogenannten "Arbeitsbereichsu-Fähigkeitsregistern
und die andere aus sogenannten Registern mit "verdeckter"Fähigkeit besteht.
Die Arbeitsbereichs-Fähigkeitsregister werden dazu verwendet, die Segmentbezeichnungen zu speichern, die
einige der .Arbeitsbereiche des Speichers definieren,
auf die das vom Verarbeitungsmodul gerade ausgeführte Programm einen Zugriff ausüben darf. Alle Speicherzugriffe
beziehen sich auf die Basi3adresse eines ausgewählten Fähigkeitsregisters, und die tatsächliche Zugriffsatlresae
209838/1101
wird überprüft, damit sichergestellt wird, daß sie in dem von dem Fähigice its register definierten Segment liegt.
Außerdem sind Vorkehrungen getroffen, damit sichergestellt wird, daß die erforderliche Zugriffsart zu der Zeit auch
zugelassen wird.
Die Register mit verdeckter Fähigkeit enthalten Segmentbezeichnungen,
die Organisationssegmentfcereiche im Speicher definieren, die beispielsweise bei Speicherauszugsvorgängen
und bei Unterbrechungsvorgängen verwendet werden. Eines
der Register mit verdeckter Fähigkeit ist das sogenannte Hauptfähigkeitsregister, das in der oben genannten Anmeldung
mit MCR bezeichnet ist. Das Haupt fähigke its reg is ter ist
so ausgebildet, daß es bei normalen Arbeitsbedingungen eine Segmentbezeichnung enthält, die eine im Speicher enthaltene,
sogenannte Hauptfähigkeitstabelle definiert. Die Hauptfihigkeitstabelle
besteht aus einer Liste von Eintragungen, von denen jeweils eine für jedes Informations segment im
Speicher vorgesehen ist. Jede Eintragung besteht aus den Basis- und Endadressen eines Speichersegments, und die
Hauptfähigkeitstabelle enthält für jedes Inforraationssegment
für alle Programm»des Systems im Speicher eine entsprechende
Eintragung.
Gemäß einer bevorzugten Ausführungsform der Erfindung enthält
der Verarbeitungsmodul ein besonderes Register , das eine Information enthält, die eines der Eintrittssegmente definiert, von denen jedes eine sich auf eine
Segtnentbezeichnung beziehende Information enthält,die
eine besondere FUhigko its tabelle definiert; die Kehlorerkennungseinrichtungen
3ind dabei ho aur;·.; bi Idet, daß
2 Π 9 8 3 8 f\ I 0 1
sie nach Feststellung eines Fehlerz us ta nd es den Inhalt
des Haupt fähigkeits registers durch die die besondere Fähigkeitstabelle definierende Segmentbezeichnung ersetzen,
wobei die besondere Fähigkeitstabelle für jedes sich allein auf das Prüfprogramm beziehende Informatbnssegment
eine Anzahl von Eintragungen umfaßt.
Infolge der Einrichtung des besonderen Registers wird das Hauptfähigkeitsregister, das bei allen Ladevorgängen
der Arbeitsbereichs-Fähigkeitsregister verwendet wird, mit einer eine besondere Fähigkeitstabelle definierenden
Segraentbezeichnung geladen, sobald ein Fehler festgestellt
wird. Die besondere Fähigkeitstabelle enthält eine sich auf eine sehr begrenzte Untergruppe der
Systemprogramne beziehende Information, typischerweise
nur die sich auf das Fehlerprüfprogramm allein beziehenden
Segmente. Die oben genannten Vorkehrungen stellen daher
sicher, daß die Speicherzugriffsfähigkeiten des fehlerhaften Verarbeitungsmoduls auf die Speicherbereiche, in denen
das Fehlerprüfprogramm untergebracht ist, beschränkt sind,
sobald ein Fehlerzustand festgestellt wird. Der fehlerhafte Verarbeitungsaodul kann auf die sich auf alle
anderen Programme (d.h. Anwendungs-und Überwachungsprogramme)beziehenden
Segmente wegen der von der Fähigkeitsregisteranordnung geschaffenen SpeicherschutzVorkehrungen
keinen Zugriff ausüben; eine Beeinträchtigung dieser Segmente kann dafaer während der Durchführung des Fehlerprüf
Programms durch den Verarbeitungsaodul nicht auftreten.
Das Fehlerprüfprogramm ist so ausgestaltet, daß es alle
Operationen des Verarbeitungsmoduls übeiprüft; wenn es
erfolgreich beendet ist, kann ein Austritt aus diesem Programm in ein Anlaufüberwachungsprogramm erfolgen,
das es dem nominellen fehlerhaften Verarbeitungsmodul,
das vom On-Line-System abgetrennt worden ist, ermöglicht,
209838/1101
eich äiesem System wieder anzuschliessen. Daher wird ein
Verarbeitungsmoäul, das ei'nem vorübergehenden Fehler unterworfen
war, nicht vorschnell aus dem System entfernt. Wenn jedoch ein beständiger Fehler aufgetreten ist, wird der
Verarbeitungsmodul ohne schädliche Auswirkungen in der zuvor erwähnten Fehlerprüfschleife festgehalten.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt. Darin zeigen:
Fig.1 ein Blockschaltbild eines Vielfach-Datenverarbeitungssysteras,
in dem ein die Erfindung enthaltender Verarbeitungsmodul verwendet werden kann,
Fig.2 ein Blockschaltbild eines Verarbeitungsmoduls, der
eine Ausführungsform der Erfindung enthält,
Fig.3 die Anordnung eines sogenannten Akkumulatorstapels
des Verarbeitungsmoduls von Fig.2,
Fig.4 die Anordnung von sogenannten Fähigkeitsregisterstapeln,
im Verarbeitungsmodul von Fig.2,
Fig.5 ein Flußdiagramra des als Reaktion auf die Feptetellung
eines Fehlerzustand es durchgeführten Vorgangs
nach der Erfindung und
Fig.6 in Blockform bestimmte Datensegmente des Speichers'
des Datenverarbeitungssystems von Fig.1.
Unter Bezugnahme auf Fig. 1 sei zunächst eine kurze Betrachtung eines auf einer Modulbasis organisierten typischen
Mehrfach- Datenverarbeitungssystems angegeben. Das Datenverarbeitungssystem
enthält typischerweise einen Speicher MEM
209838/ 1101
mit einer Anzahl von Speichermoduln SM1 bia SM5, eine
Anzahl von Verarbeitungsmoduln PM1 bis PM3, eine Anzahl von Eingabe-Ausgabe-Moduln IOM1 bia IOM3, die die peripheren
Geräte PU1, PU2 und PUA bis PUN bedienen, sowie eine Verbindungseinriehtung ICM zur gegenseitigen "Verbindung
von Speicher zu Verarbeitungsgerät und zu den Eingabe-Ausgabe-Moduln.
Die tatsächliche Zahl der verschiedenen Moduln von Fig.1 soll nur als Beispiel dienen, ohne
daß dadurch eine Beschränkung erfolgen soll. Die Eingabe-Ausgabe
-Moduln IOM1 bis IOM3 können so ausgebildet sein, daß sie ein einziges peripheres Gerät (wie PU1) oder übereine
für Peripheriegeräte bestimmte Zugriffsschaltanordnung PUASN mehrere periphere Geräte (wie PUA bis PUN)
auf einer Time-Sharing-Basis bedienen.
Jeder Verarbeitungsmodul kann mit Hilfe der Verbindungseinrichtung
ICM mit jedem der Speichermoduln SM1 bis SM5 verbunden werden; der Speicher MEM speichert dazu
alle Anwendungs- und Überwachungsprogramme sowie alle
Arbeitsdaten und permanenten Daten. Während der Durchführung eines Programms kann ein Verarbeitungsmodul eine
Bedarfsmeldung an die Verbindungseinrichtung ICM geben,
die die erforderliche Speicheradresse anzeigt, und die Verbindungseinrichtung weist diese Zugriffsbedarfsraeldungen
unter Anwendung der Time-Sharing-Arbeitsweise den verschiedenen Speichermoduln zu. Die Eingabe-Ausgabe-Moduln
IOM1 bis IOM3 können ebenfalls für den Informationsaustausch
zwischen bestehenden Speicherbereichen und den peripheren Geräten einen Zugriff auf den Speicher
ausüben.
Bei einem Datenverarbeitungssystem in modularer Bauweise
ist der Speicher auf einer negme nt ierten Baoi3 aufgebaut.
Alle Progr-uninrla fcen und die dazu gehörigen Arbeit α- und
Dauerduten .sind in aegmerifcierter lorm auf die verschiedenen
2 0 9 8 3 8 / 1 I Ü 1
Speichermoduln des Systems aufgeteilt. Jeder Verarbeitungsmodul
ist mit mehreren sogenannten Fähigkeitsregistern ausgestattet,
von denen jedes eine sogenannte Segne nt be zeichnung enthalten kann, die ein Segment defiliert, auf das der
Verarbeitungsmodul bei der Durchführung des derzeit zugewiesenen Programms einen Zugriff ausüben muß. Eine solche
Anordnung ist in der deutschen Patentanmeldung P 21-26 206.6 beschrieben. Zwei der Fähigkeits register in einem solchen
Verarbeitungsmodul werden dazu verwendet, Segment be ze ic h-r
nungen zu speichern, die eine sogenannte Haupt fiihigkeitstabelle
und eine sogenannte Hinweistabelle für reservierte Segmente definieren. Die Hau pt fähigkeits ta bei Ie hat für
jedes Segment im Soeicher eine Eintragung, und jede Eintragung enthält eine Information, die die Basis- und Endadressen
des Segments definieren, auf die sie sich bezieht. Auf diese Weise bildet die Haupt fähigkeits ta bei Ie eine Information
auf dem Speicherplatz im Speicher für jedes Informationssegment für alle Programme und alle Arbeitsund
Dauerdaten des Systems. Offensichtlich gehören einige der Informationssegtnente einer Anzahl von Programmen gemeinsam
an, während andere einzeln zu besonderen Programmen gehören. Jedes Programm enthält eine Liste von Segmenten,
auf die es einen Zugriff ausüben muß und darf, und diese Liste enthält eine Reihe von mit der Haupt fähig ke its liste
in Beziehung stehenden Hinweisen, die in einer jedem Programm zugeordneten Hinweisliste für reservierte Segmente
gespeichert sind. Die Segmentbezeiohnung, die die Hinweistabelle
für reservierte Segmente des Programms definiert, wird jedesmal dann in eines der Fähigkeitsregister eines
Verarbe itungsmoduia eingegeben, wenn der Verarbeitungsmodul
mit der Durchführung des bestimmten Programms beginnt.
Die Fqhigkeitsregin ter eines Verarbeitunßamodu ls sind in
zwei Gruppen geteilt, von denen die eine (einschließlich den
2 Π <) 8 .1 8/1101
Hauptfähigkeitstabellenregisters) für organisatorische Zwecke und die andere für den Gebrauch im laufenden Arbeitsprogramm vorgesehen ist. Die zweite Registergruppe enthält
gerufene Arbeitsbereichsfähigkeitsregister, die dazu verwendet werden, Segmentbezeichnungen zu speichern, die
bei der Ausführung des laufenden Programms zu verwendende 'Segnente definieren. Aus Ersparnisgründen sind in einem
VerarbeitungstTiodul beträchtlich weniger Arbeitsbereichsfähigkeitsregister
vorgesehen als Plätze in der Hinweistabelle für reservierte Segmente vorhanden sind, und die
Verarbeitungsmoduln sind mit einem Fäh ig ke its registerlad
ebefehl versehen. Dieser Befehl ben tzt die Hinweistabelle für reservierte Segmente für das laufenden Programm
sowie die Hauptfähigkeitsliste dazu, aus der Hauptfähigkeitstabelle
eine Segmentbezeichnung für das Programm herzuleiten, wie bei seiner Durchführung erforderlich
ist.
Ein Fähigkeitsregister wird jedesmal dann verwendet, wenn ein Speicherzugriffsvorgang erforderlich ist. Die
Basisadresse eines bestimmten,von einem Befehlswort definierten Fähigkeit sregistets wird zu der von dem Befehlswort
definierten Adresse hinzugefügt, damit die absolute Adresse eines bestimmten Speicherplatzes innerhalb des
geforderten Segmente gebildet wird. Die Adresse für jeden S pe icherzugriff wird überprüft, damit sichergestellt
wird, daß sie innerhalb der Grenzen des geforderten Segments liegt (d.h. absolute Speicheradresse ^ definierte
Segmentbasisadresse und <^ definierte Segmentendadresse)
je SpeicherZugriffe zugelassen werden. Wenn eine der oben angegebenen Bedingungen nicht eintritt, wird
sofort ein Fehlerzustand angezeigt.
209838/ 1101
Oben ist angegeben worden, daß Umstände eintreten können, in denen Segmente einer Anzahl von Programmen gemeinsam
angehören und gewissen Programmen nur erlaubt sein kann, die darin befindliche Information zu lesen, während
anderen Progranmen erlaubt sein kann, in diesen Segmenten
sowohl zu lesen als auch zu schreiben. Zur Anpassung an diese und andere Umstände ist mit jedem Reservesegmenthinweis
ein sogenannter Zugriffserlaubniscode verbunden, der die von dem besonderen Programm erlaubten Zugriffsvorgänge definiert. Der Zugriffserlaubniscode wird in
das Fähigkeitsregister eingegeben, das mit dem Segmenthinweis geladen ist, und er wird zur Überprüfung verwendet,
ob jeder Zugriff auf das Segment durch den Verarbeitungsmodul ein erlaubter Zugriff ist. Auch hier erfolgt
wieder eine Fehleranzeige, wenn eine Zugriffsstörung vorliegt.
Auf Grund des beschriebenen Mechanismus kann man erkennen, daß in die Organisation eines Verarbeitungsmoduls ein sehr
sicheres Speicherzugriffssystem eingebaut werdet kann und
daß durch das Vorsehen anderer normalerer Fehlererkennungsmechanisraen
(beispielsweiseParitäts-Prüfing) ein Verarbeitungsmodul geschaffen werden kann, der eine sehr große interne
Sicherheit aufweist. Wie jedoch oben bereits erwähnt worden iet, sind viele der auftretenden Fehler vorübergehend
auftretende Fehler, und mit Hilfe des hier beschriebenen Systems soll ein Fehlerunterbrechungsmechanismus geschaffen
werden, der den Verarbeitungsmodul vom On-Line-System abtrennt,
wenn ein Fehler auftritt, den Verarbeitungsmodul aber in das On-Line-Systera wieder einschaltet, wenn er
einen Fehlerprüfvorgang korrekt durchläuft.
Zu diesem Zweck ist jeder Verarbeitungsmodul des Systems von
Fig. 1 mit einem Fehler unter bre ch ungs me chanismus ausgestattet,
209838/1101
der nach Feststellung eines Fehlerzustand es veranlaßt,
daß der Segmenthinweis im Hauptfähigkeitaregister mit
einem Segmenthinweis überschrieben wird, der eine spezielle Fähigkeitstabelle mit einer sehr begrenzten Anzahl
von Eintragungen definiert. Die von der besonderen Fähigkeitstabelle angegebenen Segmente sind jene, die einem Fehlerprüfprogramm
und einem Systemrückführungsprogramm angehören. Mit Hilfe dieser Anordnung wird der Verarbeitungsmodul, in
dem ein Fehlerzustand festgestellt worden ist, unmittelbar auf einen begrenzten Bereich des Speichers beschränkt
(d.h. auf den zum Fehlerprüfprogramm gehörigen Bereich), so daß er daher keine zerstörenden Auswirkungen auf den
Rest des in Betrieb befindlichen On-Line-Systems haben
kann.
Der Segmenthinweis für die besondere Fähigkeitsliste
wird vom Speicher hergeleitet, und jeder Vera r be it ungs modul ist mit einem besonderen Fähigkeitsregister ausgestattet,
das auf einen bestimmten Bereich in einem sogenannten Fehlerblock hinweist. Tatäßhlich sind mehrere dieser
Fehlerblöcke vorgesehen, von denen jeder einen jedem Verarbeitungsmodul
angehörigen Bereich in verschiedenen Speichermoduln sowie eine Kopie des Fehlerprüfprogramms
in jedem Speichermodul mit einem Fehlerblocfc besitzt.
Die Basiaadresse des Bereichs in einem Fahlerblock für
einen bestimmten Verarbeitungamodul ist so aufgebaut ,daß
sie in jedem Speichermodul, in dem sie erscheint, gleich ist, und der Fehlerunterbrechungsmechanismus und das
Fehlerprüfprogramm sind so aufgebaut, daß der Verarbeitungsmodul
dann, wenn während ihres Betriebszustandes ein Fehler festgestellt wird, zum Beginn der Fehlerunter bre ch ungs folge
unter Verwendung de3 Fehlerblocks von einem anderen Speichermodul
zurückkehrt und daher in das Fehlerprüfprogramm unter
209838/1101
Verwendung einer anderen Kopie dieses Programms eintritt... Mit Hilfe dieser Anordnung kann das Fehlerprogramm dann,
wenn der Fehler in einem bestimmten Speichermodul und nicht im Verarbeitungsmodul auftrat, unter Verwendung eines
funktionsfähigen Speichermoduls nach Durchführung eines fehlgeschlagenen Versuchs bei Verwendung des fehlerhaften
Speicherraoduls durchgeführt werden. Wenn der aufgetretene
Fehler im Verarbeitungsmodul ein beständiger Fehler war, wird der fehlerhafte Verarbeitungsmodul außerdem ohne
störende Auswirkungen im Fehlerprüfprogramm festgehalten, das nacheinander einen Zugriff auf jedes Speichermodul
der Reihe nach ausübt,in dem die Fehlerblöcke gespeichert sind.
Unter Bezugnahme auf die Figuren 2 , 3 und 4 erfolgt
nun eine Betrachtung eines typischen Verarbeitungsmoduls, der den erfindungsgemäßen ünterbrechungsmechanismus enthalten
kann, bevor die Arbeitsweise einer Ausführungsform des erfindunggjemäßen Unterbre cn ungs me cha nis muß näher
beschrieben wird.
In Fig.2 , die sich aus den Figuren 2a und 3b Seite an
Seite zusammensetzt, wobei Fig.2b auf der rechten Seite anzuordnen ist, sind die relevanten Einzelheiten eines
typischen Verarbeitungsmoduls dargestellt, der die Einrichtungen zur Durchführung der Erfindung enthält.
Der VerarbeitungsoDdul CPU besteht aus einem Befehlsregister
IR, einem Registerstapel aus Akkumulator/Arbeits-Registern
ACC STK, einem Ergebnisregister RES REG, einem Operandenregister OPEG , einer Mikroprogrammsteuereinheit
yuPROG, einem Rechenwerk MILL, einer Datenvergleichsein-
209838/1101
heit COMP, einem Speicherdateneingangs register SDIREG,
zwei Speicherschutzregisterstapeln BASE STJC und TC/LMTSTK
(Fähigkeitsregister), zwei Maschinenanzeigeregistern MIP und MlS, einem sogenannten Verlaufsregisterstapel HIS STK,
einer Parityerzeugungs/Vergleichsschaltung PGC und einein Sonderblockfähigkeitsregister SSCR. Typischerweise können
die vier Registerstapel (ACC STK, BASE STK, TC/LMT STK
und HIS STK) unter Verwendung sogenannter Hilfseinheiten (scratch-pad units) aufgebaut sein, die mit Leitungswählschaltungen
(SELA, SELB, SELL und SELH') ausgestattet sind, die die Verbindung des geforderten Registers mit den
Eingangs- und Ausgangswegen des Stapels steuern.
Dns Verarbeitungsmodul CPU ist für eine ParalIeIverarbeitung organisiert; zur Erleichterung der Darstellung sind
die verschiedenen Datenwege in den Figuren 2a und 2b jedoch als eine einzige Laitung dargestellt. Der Verarbeitungsmodul
ist mit einem sogenannten Hauptstrang MHV/, einem Epeichereingangsstrang SIH und einem Speicherausgangsstrang
SOH versehen. Jeder dieser Leitungsstränge umfaßt typischerweise 24 Bits entsprechend der Speicherwortgröße.
An die verschiedenen Leitungsstränge sind mehrere von Mikroprogrammsignalen gesteuerte Und-Gatter, beispielsweise
das Und-Gatter G6 (d.h. solche Gatter, die mit der Zahl 2 bezeichnet sind) angeschlossen. Es ist zu beachten,
daß jedes Gatter in der praktischen Ausführung aus 24 Gattern besteht, wobei jeweils eines für jede Leitung
in dem 24 Bits umfassenden Leitungsstrang vorgesehen ist. Diese Gatter werden unter der Steuerung durch das
Mikroprogramm so betätigt, daß sie bei Bedarf das Einschreiben der Daten auf den verschiedenen Leitungssträngen
209838/1101
in ausgewählte Register erlauben. Auch am Ausgang der Register und der Registerstapel sind Und-Gatter, beispielsweise
das Und-Gatter G3, angebracht, die eine selektive Verbindung der verschiedenen Register mit dem Rechenwerk
MILL erlauben. In Fig.2 sind auch mehrere Oder-Gatter (das sind jene Gatter, die mit der Zahl 1 bezeichnet sind)
dargestellt, die einfach zu Trennzwecken verwendet werden
und erlauben, daß zwei oder mehr Signal wege über eine Oder-Verknüpfung in einen Eingangsweg eingegeben werden.
Akkumulatorstapel: Diese Hilfseinheit wird dazu verwendet,
eine Anzahl von Akkumulatorregistern zu bilden (ACCO^ACC?,
die auch als Maskierungsregister oderAbwandlungsregister
verwendet werden können). Aus diesen Registern können die
geforderten Register entweder von Mikroprogrammsteuersignalen oder von Steuersignalen der Befehlswortsteuerfeldbits
ausgewählt werden. Im Akkumulitorstapel AGC STK
befindet sich auch das Ablaufsteuerregister (SCR) zusammen mit zusätzlichen Registern, von denen nur eines (ACC(I))
in Fig.3 dargestellt ist. Das Register ACC (I) wird zum Speichern der primären Maschinenarbeitsanzeiger verwendet,
wenn eine Fehlerunterbrechung auftritt. Das für eine Operation
geforderte Register wird dadurch ausgewählt, daß ein Auswählcode zu der Hilfseinheitenauswählschaltung SELA
von Fig.2a geleitet wird.
Verlaufsregisterstapel HIS STK : Diese Hilfseinheit speichert
folgende Daten:(I) Den absoluten Wert des laufenden Ablaufsteuerregisters, (II) das laufende Befehlswort für alle
Programmschritte (Befehle) und (III) die absolute Adresse des Speicheroperanden bei Speicherzugriffsbefehlen. Der
Stapel besteht aus 16 Registern zu 24 Bits, die von einem vier Bit fassenden Auswählregister SELH adressiert werden,
209838/1101
um als eine geschlossene Ringanordnung (first-in-first-out
circular queue) aufgebaut ist, bei der das erste Eingangssignal auch das erste Ausgangssignal ist. Die Verlaufsregister erzeugen daher eine Aufzeichnung der zuletzt
ausgeführten Programmschritte, und diese Information kann
in einem Fehlerabhandlungsprogramra zur Ermittlung der Gründe für den Fehler verwendet werden.
Basisregisterstapel· BASE STK; Diese Hilfseinheit wird dazu
verwendet, eine Anzahl von "halben" Fähigkeitsregistern für den Verarbeitungsmodul CPU zu bilden. Oben wurde ausgeführt,
daß das Speicherschutzsystem eine Anzahl von sogenannten Fähigkeitsregistern enthält, von denen jedes einen aus einer
Basisadresse, einer Endadresse und einem Zugriffsarterlaubniscode bestehenden Segmenthinweis enthält. Der Basisregisterstapel
enthält die Basisadre3sen aller Fähigkeitsregister. Auf der linken Seite von Fig.4 sind die in diesem
Stapel enthaltenen "halben" Fähigkeitsregister dargestellt,
die aus acht sogenannten Arbeitsbereichsfähigkeitsregistern WCRO bis WCR7 und aus einer Anzahl von sogenannten Fähigkeitsregistern mit verdeckter Fähigkeit bestehen.In Fig.4- sind
nur zwei der Fähigkeitsregister mit verdeckter Fähigkeit
(DCR und MCR) dargestellt, da diese die einzigen Register sind, die für das Verständnis der hier ausgeführten Beschreibung
wichtig sind. Die Arbeitsbereichsfähigkeitsregister sind mit Hilfe von Auswählcodes in Maschinenbefehleregister
IR und mit Hilfe von Mikroprogrammsteuersignalen auswählbar, während die Register mit verdeckter
Fähigkeit nur mit Hilfe von speziellen Befehlswortsteuercodes
und mit Hilfe von vom Mikroprogramm erzeugten Auswahlcodes ausgewählt werden können.
Die Arbeitsbereichsfähigkeitsregister werden dazu verwendet,
Segraenthinweise zu speichern, die einige der Arbeitsbereiche des Speichere definieren, auf die der
209838/1 101
derzeit eingesetzte Verarbeitungsmodul einen Zugriff ausüben muß. Eine oder mehrere der Arbeitsbereichsfähigkeits- "
register werden dazu verwendet, einen Segmenthinweis zu
speichern, der als "Reservesegmenthinweistäbelle"
definiert ist; vereinbarungsgemäß wird die Hau pt tabelle if)<
für das laufende Programm vom Register WCR7 definiert. :
An die Unterseite des Fähigkeitsregisterstapels von Fig»4
ist ein Register SSCR angefügt, das dem in Fig.2 dargestellten Sonderblockfähigkeitsregister SSCR gleicht.
Dies® Register wird beim Auslösen eines Fehlerunterbrechungsablaufs
dazu verwendet, die Information zur Beschränkung des S^eicherzugriffsbereichs des Verarbeitungsmoduls herzuleiten. las Fähigke its register DCR ist das
Speicherauszugsfähigkeitsregister, das das Segment definiert,
in dem die Parameter des gerade laufenden Programm abgespeichert
werden sollen, wenn eine Verarbeitungsänderungsoperation durchgeführt werden soll. Das Fähigkeitsregister
MCR definiert das Speichersegment, in der die Hau pt fäh ig ke it si is te untergebracht ist; es wird mit
der Bezeichnung für die besondere Fähigkeitstabelle gefüllt, wenn eine Fehlerunterbrechung erfolgt.
Jede Basis eines Fähigkeitsregisters bezeichnet (a)
den Speichermodul (z.B. die wichtigsten acht Bits),
in dem das Segment sitzt und (b) die Basis* oder Ausgangsadresse dieses Segments innerhalb des Speicherrooduls.
An jede Basis ist ein Paritäts-Bit für die volle Basisadresse angefügt.
Typencode/Endstapel TC/LMT STK: Dieser Stapel bildet
die andere "Hälfte" der Fähigkeitsregister; er ist
in Fig.4 auf der rechten Seite dargestellt. Jedes Fnhigkeitsregister wird sowohl im Basis- als auch ie
Endstapel von einer entsprechenden Zeile gebildet.
209838/1101
Die Endadresse definiert die letzte Adresse des Segments. An sie ist ein nur für diese Endadresse bestimmtes Paritäts-Bit
angefügt. Der Typencode ist nicht mit einem Paritäts-Bit
versehen; er hat auch keine Bedeutung für die Paritäts-Bits der Basis- und Endadressen.
Ergebnisregister RBS REG: Dieses Register, das eine Länge
von 24 Bits hat, wird vom Haupt strang MHW gespeist, und
es kann zur zeitweiligen Speicherung von Daten, beispielsweise zum Speichern des Ergebnisses eines RechenVorgangs,.
verwendet werden.
Operandenregister QPREG : Dieses Register, das eine Länge
von 24 Bits hat, kann entweder über den Haupt strang MIIW oder über den Speicherausgangsstrang SOH gespeist werden.
Es wird zum Empfang eines Befehlsworts und als Zwischenregister bei der Bildung einer Speicherzugriffsadresse
verwendet.
Befehlsregister IR: Dieses Register wird zum Speichern der Steuerbitfelder eines Befehlsworts verwendet, die es
der Mikroprogrammsteuerung zuführt. Es spielt jedoch beim
Betrieb der hier zu beschreibenden Einrichtung keine Rolle, 30 daß weiter nicht darauf eingegangen wird.
Mikroprogramme!nheit »PROG : D^ese Einheit steuert die Ablauf folge
der Operationen des Verarbeitungsmoduls durch Abgabe von zeitlich festgelegten und aufeinanderfolgenden SteuersignalenCuPGCS)
zur Steuerung (I) der verschiedenen Eingangsunä
Ausgangsgatter der Register,(II) des Rechenwerks MILL
(Leitungen AUuS), (III) der Vergleichs einheit COMP Leitungen
(GuS), (IV) der Fehlerbits des primären A nzei ge register MIP
(Leitungen FIS) und (V) der Zustandsbits des sekundären Anzeigeregisters MIS (Leitungen SIuCS). Die Mikroprogrammeinheit
kann auch folgende Funktionen ausführen: (I) über Leitungen RSEL und GRSEL verschiedene Ragister auswählen.
209838/1101
(II) das Portschalten des Verlaufsregisteradressenwählers
(Leitung ING) steuern, (III) .die Inhalte der Speichereingangsregister
S11IREG (Leitung +1S) erhöhen und (IV) Steuercodes
auf dem Speicher zugriffssteuersignalstrang SIHCS gemäß
dem angesprochenen Segraenthinweiscode erzeugen. In die
Einheit werden verschiedene Steuer- und Zustande signale
eingegeben, die die verschiedenen Zustände und Anzeigen angeben, die im Verarbeitungsmodul zu jeder Zeit vorhanden
sind. Die Darstellung dieser Signale erfolgt (a) als Leitungen AUOS für die Zustandssignale vom Rechenwerk MILL,
(b) als Leitungen ICS für Anzeigesignale von den primären und sekundären Anzeigeregistern MIP und MIS, (c) als
Leitungen PCS für die Zustandssignale, von der Paritätsgenerator/ftrüfschaltung
(PGC)und (d) als Leitungen CIS für Zustandssignale von der Vergleichseinheit COMP. Die Mikroprogrammeinheit
kann irgendein bekannter Typ einer solchen Einheit sein, der beispielsweise mit selbstadressierten Festwertspeichern
arbeitet.
Rechenwerk MILL: Diese Einheit ist ein herkömmliches Rechenwerk,
das Datenwörter , die ihm über seine zwei Eingänge angeboten werden, in paralleler Arithmetik verarbeiten kann.
Sein Ergebnis wird über den Hauptstrang MHW einer vom Mikroprogramm definierten Bestimmung zugeführt. Die tatsächlichen
Vorgänge, die vom Rechenwerk MILL ausgeführt werden, werden von den Mikroprogrammsteuersignalen AUuS
für das Rechenwerk festgelegt.
Vergleichs einheit COMP; Diese Einheit wird dazu verwendet,
die in die Speicherdateneingangsregister SDIREG eingegebene
Adresse und die geforderten Zugriffsoperationen mit den Grenzen (d.h. der Basis und dem Ende) und dem Zugriffserlaubniscode
der zu dem Speicherzugriff gehörigen Segmentbezeichnung
zu vergleichen. Ihre ihren Zustand anzeigenden A us gangs s ig na le CIS werden in die Mikro programmeinheit uPROG
• 2 0 9 8 3 8/1101
eingegeben, und sie steuern den Zustand einig* der primären Anzeiger. Die Vergleichseinheit ist auch so
ausgebildet, daß sie die Parität der Basis- und Endadressen jedesmal überprüft, wenn sie verwendet werden.
Die Bedeutung der Punktionen der Vergleichseinheit werden später noch deutlich.
Speicherdateneingangs register SDIREG-: Dieses Register
wirkt als AEisgangs register für Daten vom Verarbeitungsmodul zum Speicher. Die Speicheradressierungs- und Speicherschreibdaten
zur Durchgabe zum Speicher werden in diesem Register gesammelt, ehe sie über den S pe icher eingang sstrang
SIH zum Speicher befördert werden. Dieses Register ist mit einer Einrichtung zur "Erhöhung um Eins" ausgestattet,
die über die Leitung +1S unter der Steuerung durch das
Mikroprogramm steht.
Parittätserzeugungs-und Paritätsprüfschaltung PGC; Diese
Erhaltung wird dazu verwendet, das über den Speicherausgangssteuerstrang
SOHGS empfangene Paritätsbit (Leitung SPB), das ein Lesedatenwort begleitet, mit einer lokal
erzeugten Parität von den Daten am Strang SOH und den in das Operandenregister OPREG eingesetzten Daten
zu überprüfen. Darüberhinaus überprüft diese Schaltung die lokal erzeugte Parität der Adressen oder Daten im
Speichereingangsregister SDIREG in Bezug auf den Zustand einer Par it äts prüf leitung PCW im S pe i ehe raus gangs st euerstrang
SOHCS. Die Paritätsprüfleitung PCW wird dazu
verwendet, die Parität der vom Speicher empfangenen Adressen oder Daten, die vom Verarbeitungsmodul erzeugt worden sind,
zu diesem Verarbeitungsmodul zurückzusenden. Die Ergebnisse
dieser verschiedenen Paritätsprüfungen werden über Leitungen
PSC der Mikroprogrammeinheit mitgeteilt. Die Speicher-
209838/1 101
paritätsbitleitung SPB ist den Wirkungen einer schaltbaren
Inversionsschaltung IP ausgesetzt, deren Bedeutung später noch ersichtlich wird.
Maschinenanzeigeregister MIP: Das Register MIP wird zum
Speichern der sogenannten primären Anzeiger verwendet, während das Register MIS die sogenannten sekundären
Anzeiger speichert.Die folgende Tabelle zeigt eine typische Liste von primären Anzeigern, die im Register MIP gespeichert
sind. Bs ist nicht beabsichtigt, daß diese Tabelle erschöpfend alle Arten von verfügbaren Fehle rzustandsfeststellungsanordnungen
enthält; sie ist vielmehr nur beispielshalber angegeben.
209838/ 1101
Bit Nr. | Name des Anzeigers | Funktion |
O | MILL gleich Null | Arithmetische Anzeiger |
1 | MILL größer als Null | Fehler anzeiger |
CvJ | MILL Überlauf | - |
3 | Register identitäts anzeiger |
|
4 | ||
5 | Zugriffsfeldstörung | |
6 | Fähigke it spa r it ät s fehl er | |
7 | Fähigke its-Basis/End-Störung | |
8 | Fähigke it ssummenprüf fehler | |
9 | Spei eher kopplungs ze it sperre | |
10 | £aritäts Vergleichs fehl er | |
11 | Leseuatenparitätsfehler | |
12 | Ungültige Operation | |
13 | St ro maus fall | |
14 | Ungültiges Speichersteuersignal | |
15 16 17 18 19 |
• | |
20 21 22 23 |
Adresse des Fähigke its registers |
209838/1 101
(a) Arithmetische Anzeige: -Diese Anzeiger verstehen sich
von selbst; sie sind entsprechend dem Zustand von Peststellungseinrichtungen
im Rechenwerk MlIL eingestellt.
(b) !Fehleranzeiger; Diese Anzeiger sind als Ergebnis von
Fehlerzuständen eingestellt, die auftreten und vom Verarbeitungsmodul festgestellt werden. Es folgt nun der Reihe
nach eine Betrachtung jedes der Anzeiger.
(I) Bit 5-Zugriffsfelästörung: Dieses Bit wird von einem .
Ausgangszustand von der Vergleichseinheit COMP gesetzt, wenn die geforderte Speicheroperation, die von einer Codierung
an einer Gruppe von drei sogenannte Steuerleitungen bildendan Leitungen im Strang SOHCS bestimmt wird ,
nicht den vom Segmentbezeichnungstypcode zugelassenen Operationen entspricht. Die drei Steuerleitungen können
so oudfert sein, daß der Gode 001 die Bedeutung "Lesen",
der Code 010 die Bedeutung "Lesen und Halten",der Code 100 die Bedeutung "Schreiben" und der Code 111 die
Bedeutung "Rücksetzen" hat. Man erkennt, daß die angegebenen Codes so ausgestattet sind, daß ein in einem Bit auftretender
Fehler beim Speicher als ein ungültiges Muster entdeckt wird. Der Artcode einer Fähigkeit, der als
die wichtigsten acht Bits in der End half te des Fähigkeitsregisters angeordnet ist, ist linear codiert, so daß das
Bit 16 Lesedaten, das Bit 17 Schreibdaten, das Bit 18
Ausführungsdaten, das Bit 19 eine Lesefähigkeit, das Bit
eine Schreibfähigkeit und das Bit 21 eine Eintrittsfähigkeit spezifiziert, während die Bits 22 und 23 frei bleiben.
Man erkennt, daß die Information eines Programms in zwei Typen unterteilt ist, nämlich in Daten- und Fähigkeitshinweise. Datenblöcke können entweder Programmbefehle (Artcode
mit gesetztem Bit 18) , Datenkonstanten (Bit 16 gesetzt) oder Veränderliche (Bit 17 gesetzt) enthalten. Blöcke von
209838/1101
Fähigkeitshinweisen werden während des Ladens der Fähigkeitsregister (Bit 19 gesetzt) während des Sueicherns von Fähigkeitshinweisen
(Bit 20 gesetzt) oder zum Lesen anderer Programmfähigkeitshinweise (Bit 21 gesetzt) verwendet.
Aus der obigen Beschreibung kann*man erkennen, daß dann, wenn ein Programm mit einer ausschließlichen Fähigkeit zum
Lesen eines bestimmten Segments das Schreiben in das Segment auszusagen versucht, der Schreibcode 100 an den Steuerleitungen
dera Strangs SOHCS nicht mit der Setzbedingung
des Bits 16 des Artcodes für diese Segmentbezeichnung
zusammenpaßt, so daß dadurch das Bit 5 des Anzeigeregisters MIP von der Vergleichseinheit COMP gesetzt
wird.
(II) Bit 6 -Fähigkeitsparitätsfehler; Wie oben erwähnt wurde, sind an die in den Fahigkeitsregistern gespeicherten
Basis- und Endadressen Paritätsbits angefügt, die vom Verarbeitungsmodul
empfangen werden, wenn diese Adressen der Hauptfähigkeitstabelle entnommen und über die Koppeleinheit
zwischen Speicher und Verarbeitungsmodulweitergegeben werden.
Jedesmal, wenn eine Basisadresse oder eine Endadresse im Verarbeitungsmodul verwendet wird, berechnet die Vergleichseinheit COMP das Paritätsbit für diese Adresse und vergleicht
esmit dem Paritätsbit, das mit der bestimmten Adresse gespeichert ist. Diese Anordnung hält eine beständige Prüfung
gegen ein-Bit-Fehler der Segmentbezeichnungsadressen aufrecht, während sie sich in den Fähigkeitsregistern des
Verarbeitungsmoduls befinden. Wenn die Paritätsbits nicht übereinstimmen, wird das Bit 6 des primären Anzeigeregiaters
MIP durch ein Ausgangssignal der Vergleichseinheit gesetzt.
209838/1 101
(III) Bit 7 - Fähigkeits-Basis/End-Störung: Wie oben
erwähnt , umfaßt jeder Speicherzugriff die Verwendung eines Fähigiceitaregisters, und die berechnete absolute Speicheradresse (beispielsweise die Basisadresse und die vom Befehlswort
bestimmte Adresse) wird gegen die Basis- und End werte des geforderten Segments überprüft. Dieeer Vorgang wird
von der Vergleichseinheit COMP wieder ausgeführt, und das Bit 7 dea primären Anzeigeregisters MIP wird gesetzt, wenn
die berechnete absolute Adresse außerhalb der Grenzen der Segmentbezeichnung liegt.
(IV) Bit 8-Fähigkeit3Summenprüffehler: In der deutschen Patentanmeldung
P 21 26 2O6.ß«ird gezeigt, daß jede Hau pt fähigke it 3-tabelleneintragung
drei Speicherwörter umfaßt, nämlich (I) die Summenprüfung, (II) dieBasisadresse und (III) die Endadresse.
Das erste Wort ist eine berechnete Summe der zweiten zwei Wörter, und es wird zur Sicherung verwendet, daß
die Fähigkeits register korrekt geladen sind. Wenn ein Ladefähigkeitsregisterbe
fehl ausgeführt wird, wird das erste Wort intern gespeichert und mit einem lokal erzeugten
Summenprüfwort verglichen, das aus den in das bestimmte Fähigkeitsregister
eingegebenen Basis- und Endadressen berechnet worden ist. Wenn die lokal erzeugte Summen prüfung und die
Suramenprüfung der Haupt fähigke its ta bei Ie nicht gleich sind,
erzeugt das Rechenwerk MILL einen Zustand "MILL größer als Null", der unter Verwendung einer der Leitungen FIS , vom
Mikroprogramm gesteuert, zum Eetzen des Bits 8 des primären Anzeige registers MiP verwendet wird.
Bit 9-Speicherkopplungszeitnperre: Dieses Bit den
primären Anzeigeregiste rs MiP wird von der Mikroprogrammsteuerung
unter Verwendung einer der Leitungen FLS gesetzt,
wenn eine vor bestimmte Zeit zwischen dem Anbieten eines
209838/110 1
Daten- oder Adressenworts vom Verarbeitungsmodul zum Speicher und einer Antwort vom Speicher verstreicht.
Typischerweise kann die Mikroprogrammsteuereinheit einen Zähler enthalten, der so aufgebaut ist, daß er bis etwa
20 Mikrοse künden zählt. Dieser Zähler wird ausgelöst,
wenn das Adressen-oder Datenwort im Speichereingangsregister
SDlREG zum Strang SIH abgegeben wird. Die Rückkehr einer Information auf dem Speicherausgangssteuerstrang
SOHCS hält den Zähler an. Wenn jedoch der volle Zählerstand erreicht wird, ehe die Informationsrückkehr festgestellt wird, wird das Bit 9 des Anzeigeregisters
MIP gesetzt.
(VI) Bit 10-Paritätsvergleichsfehler: Dieses Bit wird,
vom Mikroprogramm gesteuert, unter Verwendung einer der
Leitungen FlS gesetzt, wenn die bei den Speicheradressen- oder Speicherschreibäatenwörtern erzeugte und über die
Paritätsrückführleitung des Strangs SOHCS zurückgeführte
Parität nicht mit der im Par it äts genera tor PGC lokal erzeugten Parität des im Register SDIREG geformten
Adressen- oder Datenworts übereinstimmt.
(VII) Bit 11-Lesedatenparitätsfehler: Dieses Bit wird,,
vom Mikroprogramm gesteuert, unter Verwendung einer der
Leitungen FIS gesetzt, wenn die über den Strang SOH empfangenen und in das Operandenregister eingeschriebenen Daten
nicht die im Paritätsgenerator PGC lokal erzeugte gleiche
Parität aufweisen, die an der "Paritäts"-Leitung des
Strangs SOHCS angezeigt wird.
(VIII) Bit 12-ungültige Operation: Dieses Bit wird, vom
Mikroprogramm gesteuert ,unter Verwendung einer der Lei tungen FIS gesetzt, wenn der in das Befehlsregister IR
209838/1101
eingegebene Funktionscode beim Zuführen zur Mikr οprogrammsteuereinheit
uPROG von dieser Einheit als ein ungültiger Befehl festgestellt wird.
(IX) Bit 13-Stromausfall: Dieses Bit wird gesetzt, wenn
festgestellt wird, daß die Energieversorgungsgrenzwerte überschritten worden sind.
(X) Bit 14-ungültiges Speichersteuereignal: Dieses Bit
wird, vom Mikroprogramm gesteuert, unter Verwendung einer
ifer Leitungen FlS dann gesetzt, wenn über den Strang SOHCS
vom Speicher eine Anzeige erfolgt, daß der dem Speicher über den Strang SIHCS zugeführte Steuercode ungültig ist.
E3 sei daran erinnert, daß für den Steuercode drei Leitungen
verwendet werden, und daß die Codierung derart beschaffen ist, daß Ein-Bit-Fehler in diesem Teil des
Steuerstrangs einen ungültigen Speicherbetätigungscode erzeugen.
(c) Regis te rid en tit äts, -Fehle ran zeiger:
Die Bits 20 bis 23 des Registers MIP werden unter der
Steuerung durch das Mikroprogramm über Leitungen FIS gesetzt, damit die Identität des Fähigkeitsregisters
in einen 1 a.us 16 -Code bestimmt wird, das in Gebrauch
ist, wenn eine der Pehleranzeigebits 5 » 6, 7 oder 8 gesetzt wird. Der Adressencode wird von der Mikroprogrammsteuereinheit
erzeugt.
Maschinenanzeigere^iater MIS; Das Register MIS speichert
eine Anzahl von Anzeigern, die für den internen Gebrauch durch die über Leitungen SIuCS wirksame Mikroprogrammsteuereinheit
benötigt werden. Für die hier vorliegende Beschreibung sind nur fünf dieser Anzeiger von Bedeutung. Das sind die
folgenden Anzeiger : (I) ein Anzeiger für einen ersten Versuch, (II) ein Anzeiger für einen Organisationfehler, (III) einen
209838/1101
Anzeiger für einen zweiten Fehler, (IV) einen Anzeiger für einen gemeinsamen Fehler und (V) einen Anzeiger für
interne Parität. Die Bedeutung dieser Anzeiger geht aus der folgenden Beschreibung der Arbeitsweise des Verarbeitungsmoduls
bei Auftreten einer Fehlerunterbrechung hervor.
Der Ablauf von Operationen, die vom Bearbeitungsmodul ausgeführt
wird, ; wenn ein Fehleranzeiger gesetzt ist, wird
nun im Zusammenhang mit den Figuren 2a und 2b sowie mit Fig.5 beschrieben.
Der Schritt"SO (CFI gesetzt) von Fig.5 ist der Eintrittsschritt in das Fehlerunterbrechungsmikroprogramm; er-gibt
an, daß der Anzeiger für den gemeinsamen Fehler (CFI ) im sekundären Anzeigeregister MIS (Fig.2a) gesetzt worden
ist, und daß sein Setzzustand über «die entsprechende Leitung der Leitungen ICS der Mikroprogrammsteuereinheit nPROG·
mitgeteilt worden ist. Das Setzen eines der Bits 5 bis H
des primären Anzeigeregisters MIP bewirkt über die Leitung F
das Setzen des Anzeigers für den gemeinsamen Fehler des Registers MIS. Ohne Rücksicht auf alle anderen zur Zeit
vorliegenden Zustände bewirkt die Aktivierung des Anzeigers für den gemeinsamen. Fehler den Beginn des Fehlerunterbrechungsmikroprogramms·
Die folgende Beschreibung ist in die Schritte von Fig.5
unterteilt, doch wird häufig auch auf andere Figuren der
Zeichnung Bezug genommen.
SI- Setzen von F.A.T.
Die Mikroprogramrasteuereinheit uPROG prüft den Zustand
des Erstversuchaanzeigera (F.A.T.) im sekundären Anzeige-
209838/1101
register MIS (durch Abfragen der zugehörigen ICS-Leitung),
um festzustellen, ob er gesetzt ist.
Es wird angenommen, daß der Erstversuchaanzeiger in diesem Stadium nicht gesetzt ist, so daß angezeigt wird, daß dies
der erste Eintritt in die Fehlerunterbrechungs-Mikroprogrammfolge für den derzeitigen Fehlerzustand ist; die Bedeutung
dieses Prüfvorgangs wird unten noch ersichtlich.
S2 - Paritätsinversion;
Die Mikroprogrammsteuereinheit nPROG ändert bei diesem Schritt den Zustand des Anzeigers für die interne* Parität im sekundären
Anzeigeregister MIS. Dieser Anzeiger wird dazu verwendet, an den leitungen PS Bedingungen zur Steuerung der Paritätsinversfonsschaltung
IP zu erzeugen und an die Paritätsprüf- und
Paritätserzeugungsschaltung PGC sowie an die Vergleichs einheit
COMP Paritätszustandsanzeigesignale (d.h. "ungerade"
oder "gerade" ParitätssignaIe) zu liefern. Das Datenverarbeitungssystem
kann beispielsweise auf der Grundlage einer
ungeraden Parität organisiert sein, so daß in den Speichereinrichtungen
eine ungerade Parität gespeichert i3t und beim Lesen von Daten an die Verarbeitungsmoduln weitergegeben
wird. Die Verarbeitungsmoduln können jedoch so aufgebaut sein, daß sie intern mit ungerader oder mit
gerader Parität abhängig vom Zustand des Anzeigers für die interne Parität arbeiten. Jedesmal dann, wenn eine
Fehlerunterbrechung auftritt, bei der der Erstversuchsanzeiger rückgesetzt ist, wird der Anzeiger für die interne
Parität invertiert. Die zu dieser Zeit gerade im Verarbeitungsmodul befindlichen Daten werden daher, wenn sie irrtümlich
verwendet werden, als -^aten mit falscher Parität beurteilt.
Dies ist besonders ira Hinblick auf die Fähigkeitsregister von Bedeutung, da die gespeicherten Paritätsbita für die
Basis— und Endadressen jedes gel-Adenen Fähigkeitsregisters
209838/1101
nun ungültig gemacht werden. Dadurch wird sichergestellt,
daß das derzeit ablaufende Programm von dem fehlerhaften Verarbeitungstnodul nicht beeinträchtigt werden kann, da
jeder Versuch, ein zur Zeit gerade geladenes Fähigkeitsregister zu verwenden, nachdem ein Fehlerzustand festgestellt
worden ist, zu einem Paritätsfehlerzustand in
einem Fähigkeitsregister führt.
einem Fähigkeitsregister führt.
53 -Setzen von F.A.T.:
Die Mikroprogrammsteuereinheit setzt in diesem Schritt den Erstversuchsanzeiger(F.A.T.), damit aangezeigt wird, daß
der derzeitige Eintritt in die Fehlerunterbrechungsfolge
der erste Eintritt al3 Folge des derzeitigen Fehlerzustandes ist. Von den Leitungen SIuCS wird die entsprechende
Leitung zum Setzen des Srstversuchsanzeigers im Register
MIS aktiviert. Der Erstversuchsanzeiger ist im gesetzten Zustand so beschaffen,daß er das Unterbrechungssystem
des Verarbeitungsmoduls sperrt, so daß der Verarbeitungsmodul daher auf den Fehlerprüfvorgang beschränkt ist.
Gegen Ende des Fehlerprüfprogramms wird der Erstversuchsanzeiger von einem Programmbe fehl wieder rückgesetzt.
des Verarbeitungsmoduls sperrt, so daß der Verarbeitungsmodul daher auf den Fehlerprüfvorgang beschränkt ist.
Gegen Ende des Fehlerprüfprogramms wird der Erstversuchsanzeiger von einem Programmbe fehl wieder rückgesetzt.
54 - Erhöhe. SELH um 1:
Die Mikroprogrammsteuereinheit erhöht (durch Aktivierung
der Leitung ING) den Adressenhinweis im Verlaufsregisterstapel
KlS STK bei diesem Schritt zur Bereitschaft für den späteren Gebrauch.
55 - ACC(I): = MIP ;
Die Mikroprogrammsteuereinheit bewirkt ein Einschreiben
der im Register MIP befindlichen Primärmaschinenanzeiger in den Akkumulator ACC (I) der Anzeiger. Es sei bemerkt,
209838/1101
das im Schritt S4 von Fig.5 gezeigte Symbol (: = ) als
"ergibt sich aus" zu lesen ist. Die Operationen bei diesem Schritt werden dadurch ausgeführt, daß (I) der Akkumulator
ACC(I) durch Verwendung der Leitungen RSEL ausgewählt wird, daß (II) das Gatter G1 geöffnet wird und daß (III) das
Gatter G2 geöffnet wird. Dadurch kann der Inhalt des Registers MIP über dem Strang MHW an den ausgewählten
Akkumulator ACC(I) angelegt werden.
56 - Setzen von F1T:
Die Mikroprogrammsteuereinheit uPROG setzt in diesem
Stadium unter Verwendung der entsprechenden SIuCS-Leitung
äen Anzeiger für falsche Organisation (F1T). Dieser Anzeiger wird dazu verwendet, die Aufzeichnung der Zustände der
Fehleranzeiger im Akkumulator ACC (I) zu schützen, falls ein zweiter Fehler auftreten sollte, ehe diese Anzeigerzustände
in die Verlaufsregister eingeschrieben worden sind. Der Einfachheit halber ist es zwar in Fig.5 nicht dargestellt,
doch ist dieser Anzeiger (F1T) so ausgestaltet, daß er die Schritte S4 und S5 umgeht, wenn der Eintritt in
die Nummerunterbrechungs-Mikroprogrammfolge bei gesetztem
F1I erfolgt.
57 - Rücksetzen von FI:
Die Mikroprogrammsteuereinheit aiPROG bewirkt die Rücksetznpg
des gesetzten fehleranzeige rs im primären Anzeigeregister MIP und den Anzeiger für den gemeinsamen Fehler
(CFI) im sekundären Anzeigeregister MIS bei diesem Schritt unter Verwendung der entsprechenden S LuCS-Leitung.
58 - FIIT gesetzt ?
Bei diesem Schritt prüft die Mikroprogrammsteuereinheit uPROG
209838/ 1101
aen Zustand äes Zweitfehleranzeige rs (FIIT) im sekundären
Anzeigeregister MIS unter Verwendung der entsprechenden ICS-Leitung. Es sei angenommen, daß derZweitfehleranzeiger
in diesem Stadium nicht gesetzt ist, da es der erste Eintritt in die Fehlerunterbrechungs-Mikroprogrammfolge ist.
Die Mikroprogrammsteuereinheit uPROG bewirkt bei diesem
Schritt das Anlegen des aus 1- Zeichen bestehenden Codes·
an die Steuerleitungen des Speichereingangssteuersitrangs
SIHGS, wenn der Fehler während der Adressierung des Speichers aufgetreten ist. Dies bewirkt die Abtrennung
des Speichers von einer Verwendung durch andere Verarbeitungsmoduln.
Die Mikroprogrammsteuereinheit uPROG veranlaßt das Laden des Hau pt fä hi gke its registers MCR (von Fig.4) mit
der Segmentbezeichnung der besonderen Fähigkeitstabelle für diesen Verarbeitungsmodul.Die bei diesem Schritt
ausgeführten Funktionen sind ziemlich kompliziert; es wird daher nicht nur auf die Figuren 2a und 2b sondern
auch auf Fig.6 Bezug genommen.
Fig.6 zeigt in einer sehr knappen Übersicht einen Verarbeitungsmodul
CPUY und einen Speichermodul SMX-* Die
im Verarbeitungsmodul von Fig.6 gezeigten Register sind
nur skizzenmäßig dargestellt worden, da dieses Bild nur als Erklärung der verschiedenen, bei der Fehlerunterbrechungs-Mikroprogrammfolge
ausgeführten Funktionen angesehen werden soll. Die Arbeitsbereich3fähigkeitsregister WCRO-7
2098-J8/1101
(Fig.4) sind in Fig.6 nur als Block dargestellt, und von
den Registern mit verdeckter Fähigkeit sind nur das Speicherauszugsfähigkeitsregister und das Haupt fähigke itsregister
dargestellt. Das Sonder fähigke itsregister SSCR und das Operandenregister OPREG sind die einzigen zwei
anderen in Fig.6 dargestellten Register. Es ist oben
bereits erwähnt worden, daß einige der Speichermodulη
im Speicher mit einem Fehlerblock ausgestattet sind, der für jeden Verarbeitungsmodul im System eine besondere
Information enthält. Der lehlerblock ist in Fig.6 bei SFB
dargestellt; er besteht aus N vier Wörter umfassenden Bereichen, wobei N die Zahl der Verarbeitungsmoduln ist.
In Fig.6 sind nur zwei solche Bereiche dargestellt, und der zum Verarbeitungsmodul CPUY gehörige Bereich
ist so dargestellt, daß auf ihn über den Weg (1) vom Sonderfähigkeitsregister SSCR in dem Modul hingezeigt wird.
Jeder Bereich im Fehlerblock SFB besteht (I) aus einem Summe ηprüfwort, (II) aus einer Basisadresse BASE, (III) aus
einer Endadresse LIMIT und (IV) aus einem Hinweiswort RSPC-O. In Fjg.6 ist eine Anzahl von anderen Segmenten
im ßpeichermodul Si«IX dargestellt, die bei der späteren
Beschreibung gebraucht werden. Kurz gesagt bestehen sie (I) aus einem Block von Sonderfähigkeitstabellen SCT ,
von denen jeweils eine für jeden Verarbeitungsinodul vorgesehen ist,(II) aus einen Block von Prüfprogrammspeicherauszugsstapeln
C-ODS, von denen jeweüs einer für jeden Terarbeitungsraodul vorgesehen ist, (III) aus einem
Block von Prüf programm-Segme nt bezeichnungsl is te η C-ORSPT ,
von denen jeweils eine für jeden Verarbeitungsmodul vorgesehen ist, und (IV) au3 einem Block von Segaenten, die
die Information für das Prüfprogramm C-OPROG speichern.
209838/1101
Es folgt nun die Betrachtung der Aktionen der Mikroprogrammsteuereinheit
uPROG (F-^g. 2) bei der Durchführung des laufenden Schritts der Fehlerunterbrechungs-Mikroprogrammfolge.
Die erste Operation besteht darin, den Speichermodul SMX(von Fig.6) mit der Startadresse des den Verarbeitungsmodul CPUY im Fehlerblock SFB angehörigen Bereichs zu
adressieren.
S10a - Zugriff auf das erste V/ort im Bereich des Fehlerblocks SFB;
Diese Oueration wird durch Aktivieren der Gatter G3, G4 und
G6 von Fig.2 durchgeführt. Die Aktivierung des Gatters G3 bewirkt die Eingabe des Ba3isadres3enInhalts des Sonderfähigkeit
3 registers SSOR über das Rechenwerk MILL und
den Strang ICiW in das Speichereingangsregister SDIREG4
Das Sonderfähigkeitsregister SSCR ist in zwei Abschnitte aufgeteilt. Der erste Abschnitt wird über ein fest verdrahtetes
Verbindungsfeld SF gesetzt, das so ausgestaltet ist, daß dieser erste Abschnitt dauerhaft mit der ersten
Adresse des Bereichs im Fehlerblock jedes Speicherraoduls
codiert wird. Der zweite Abschnitt ist veränderlich , und er kann in diesem Stadium insgesamt auf Null zurückgestellt
werden, was, wie angenommen wird, die Speichermoduladresse
des Speichermoduls GMX in Fig.6 anzeigt. Wenn das Gatter G5
(Fig.2) geöffnet wird, befördert der Spsichereingangsst rang
SIH daher die erste Adresse des Bereichs, der für den Verarbeitungsmodul
CPUY im Sonder fehler block SFB (lig.6)
verwendbar ist. Gleichzeitig setzt die Mikr ο program ras te uereinheit
die Codeleitungen des Speichereingangssteuersignalstrangs SIHCS (Fjg.2) in einen Zustand, der dem Speicher
einen Lesevorgang anzeigt. Der in Fig.6 dargestellte Weg (1) ist daher aktiviert, und das erste Wort im Bereich
209838/1101
des Blocks SFB des Verarbeitungsmoduls wird gelesen und
über den Speicherausgangsstrang SOH (Fig.2) zum Verarbeitungsmodul
zurücktransportiert.
Dieses Wort ist in Wirklichkeit das Summenprüfwort für
die Segmentbezeichnung der Sonderfähigkeitstabelle, und
seine Ankunft am Verarbeitungsmodul wird von der Mikroprogrammsteuereinheit
uPROG (Fig.2) über den Steuersignalstrang
SOHGS angezeigt. Die Mikroprogrammsteuereinheit öffnet darauf hin die Gatter GS und G6f wodurch das Summenprüfwort
in das Operandenregister OPREG geschrieben wird. Während der Durchführung dieses Vorgangs prüft die Paritätsa:zeugungsunü
Paritätsprüfschaltung PGG die Parität des ankommenden Worts und der Daten im Operandenregister in
Bezug auf den Speicherparitätsbitzustand an der Leitung SPB. Wenn keine Paritätsfehler festgestellt werden, wird das
zweite Wort aus dem Bereich im Block SFB adressiert.
"Jf- '· ■
Bei diesem Teilschritt aktiviert die Mikroprogrammsteuereinheit die Leitung +1S derart, daß das Adressenwort im
Register SDIREG erhöht wird, während das Gatter G5 geöffnet und die Codeleitungen des Speichereingangssteuersignalstrangs
SIHCS gesetzt werden, damit eine Leseoperation definiert wird.
Das zweite Wort in dem vom Sonderfähigkeitsregister
bestimmten Bereich im Fehlerbl ock SFB (Fig.6) ist die Basisadresse BASE der Segmentbezeichnung der Sonderfähigkeitstabelle;
wenn diese Information gelesen wird, wird sie über den Weg (2) von Fig.6 zum Verarbeitu-ngsmodul
geleitet, damit sie in die "Basishälfte" des
209838/1101
Hauptfähigkeits registers MGR eingegeben wird.
Die MikroprograratDsteuereinheit uPROG (Fig.2) öffnet nach
Empfang von Steuersignalen am Speicherausgangssteuersignalstrang
SOHCS die Gatter GS, G7 und G8 , nachdem über leitungen CRSEL die Basishälfte des Fähigkeitsregisters
im Basisstapel ausgewählt worden ist. Dadurch wird das Speicheraus gangs signal am Strang SOH zusammen mit dem
Zustand des Paritätsbits für dieses Wort auf der Leitung SPB in die Basishälfte des Hau pt fähigke itsregisters
eingeschrieben.
Die Mikroprogrammsteuereinheit uPROG aktiviert nun die Leitung +1S derart, daß das Adressenwort im Register
SDIREG um 1 erhöht wird; außerdem öffnet sie das Gatter G5 und setzt die Codeleitungen des Strangs SIHCS so, daß
eine Leseoperation definiert wird.
Das dritte Wort des vom Sonderfähigkeitsregister bestimmten
Bereichs im Fahlerblock SFB (Fig.6) ist die Endadresse LIMIT
der Segmentbezeichnung der Sonderfähigkeit stabeile. Wenn
diese Information gelesen wird, wird sie unter Verwendung des Wegs (2) von Fig.6 zur Eingabe in die "Endhalfte" des
Hau pt fähigke it s registers zum Verarbeitungsmodul transportiert.
S1Of-Eingabe des dritten Worts aus dem Bereich im Block SFB:
Die Mikroprogrammsteuereinheit bewirkt dann, wenn sie über
άβη Strang SOHCS (Fig.2) betätigt wird, die Aktivierung
der Leitungen CRSEL, so daß das Hau ptfähigkeits register
209838/1101
ausgewählt und die Gatter GS, G9 und.GIO
geöffnet werden. Dadurch wird die Endadresse zusammen mit ihrem Paritätslit in die zugehörige "Zeile" des Endstapels
LMT STK eingegeben.
Die Mikroprogrammsteuereinheit prüft nun das geladene Hauptfähigkeitsregister, damit sichergestellt wird,
daß es korrekt geladen worden ist. Dieser Teilschritt wird in zwei Hälften ausgeführt.Zunächst wird dadurch
eine lokale Summenprüfung durchgeführt, daß die Leitungen CRSEL (Fig.2) mit der Identität des Hauptfähigkeitsregisters
aktiviert werden, daß die Gatter G11, G12 und G13 geöffnet werden, und daß das Rechenwerk
MILL angewiesen wird, die angelegten Datenwörter zu addieren. Man erkennt, daß die oben genannten Operationen
die Eingabe der lokal erzeugten Summenprüfung in das Ergebnisregister RES REG bewirken. Gleichzeitig werden
die Paritäten der Basis- und Endadressen in der Vergleichseinheit
COMP geprüft.
In der zweiten Hälfte dieses Teilschritts wird die im Ergebnisregister befindliche, lokal erzeugte Summenprüfung
mit dem Wort im Operandenregister OPREG verglichen. Dies wird dadurch erreicht, daß die Gatter GH
und GI5 geöffnet werden, und daß das Rechenwerk MILL
über entsprechende Leitungen AUuS angewiesen wird, eine Subtraktion auszuführen und die arithmetischen
Anzeiger im primären Anzeigeregister MIP auf dae erhaltene Ergebnis zu stellen.Die Mikroprogrammsteuereinheit
uPROG prüft nun die Zustände der arithmetischen Anzeiger
unter Verwendung der zugehörigen ICS-Leitungen daraufhin, ob die zwei SummanprüfWörter identisch sind. Unter der
Annahme, daß sie identisch sind, schaltet die Fehlarunter-
209838/1101
S3
brechungs-Programmfolge zum Schritt S11 weiter.
511 - HIS:» ACO (I):
Bei diesem Schritt aktiviert die Mikroprogrammsteuereinheit
uPROG Leitungen R3EL derart, daß der Anzeiga:-
akkuraulator AGC (I) im Registerstapel ACC STK bestimmt
wird und daß dann die Gatter G16, G17 und G18 aktiviert
werden. Dies bewirkt die Weitergabe der im Schritt S4 in den Anzeigerakkumulator angegebenen primären Anzeiger
über das Rechenwerk MILL, den Strang MHW und das Operandenregister
OPREG zur nächsten (beim Schritt S3 bestimmten) Zeile des Verlaufsregisterstapels HIS STK. Durch diesen
Vorgang wird sichergestellt, daß die primären Anzeiger
in denVerlaufsregis tern unmittelbar nach der letzten
s.er.-, Befehlswort- und, falls es zutrifft der Eintragung
des absoluten Speicheradresseninformationsblocks gespeichert wird.
512 - Erhöhe SEIjH um 1;
Die Mikroprcgrammsteuereinheit uPROG bewirkt durch
Aktivierung der Leitung INT , daß der Adressenhinweis der Verlaufsregister um 1 weitergeschaltet wird.
513 - Rücksetzen von F1T;
Die Mikroprogrammsteuereinheit uPROG bewirkt bei diesem Schritt die Rücksetzung der Kippschaltung F1T für Organisationsfehler,
da die primären Anzeiger, so wie sie durch den ursprünglichen fehler gesetzt worden sind, nun in den
Verlaufsregistern abgespeichert worden sind.
209838/1 101
Bei diesem Schritt wird einer der sekundären Anzeiger
daraufhin überprüft, ob der Punkt, an welchem der Fehler im laufenden Befehl auftrat, nach der Stufe lag, an der
das AblaufSteuerregister so fortgeschaltet wurde, daß es
auf den nächsten Befehl des laufenden Programms hinweist. Wenn dies bereits erfolgt war, dann wird der Schritt S15
gusgeführt, damit der Inhalt des Ablaufsteuerregisters auf den Wert des laufenden Befehls zurückgestellt wird.
Wenn dieser Punkt noch nicht erreicht worden ist, wird der Schritt S16 direkt ausgeführt.
S16 - Lpseti des Worts RCPC-O:
Bei diesem Schritt wird das vierte Wort im Bereich des Fehlerblocks SFB (Fig.6) des Verarbeitungsmoduls gelesen,
und die Reservesegmentbezeichnung in diesem Wort wird über den Weg (3) von Fig.6 befördert und im Operandenregister
des Verarbeitungsmoduls gespeichert. Diese Segmentbezeichnung, die sich auf die Sonderfähigkeitstabelle bezieht,
bestimmt einen zum Verarbeitung3modul und zum Prüfprogramm
gehörigen Speicherauszugsstapel. Die vom Verarbeitungsmodul
unter der Steuerung durch eine Mikroprogrammeinheit uPROG (Fig.2) ausgeführten Operationen sind in zwei Abschnitte
geteilt. Der erste Abschnitt bewirkt eine Adressierung des Speichers zur Durchführung einer Lese operation, während
der zweite Abschnitt die Eingabe der vom Speicher . ·
erzeugten Daten in das Operandenregister OPREG bewirkt. Die erste Operation wird durch eine von der Mikroprogrammsteuereinheit
ausgeführte Aktivierung der Leitung +1S, des Gatters G5 und durch eine Aktivierung
der zugehörigen Steuer leitungen des Strangs SIHCS bewirkt. Es sei daran erinnert, daß im Register SDIREG
209838/1 101
vor diesem Schritt, eigentlich seit dem Ende des Schritts S9,
die Adresse des dritten Worts des Bereichs im Block SFB des VerarbeitungenoduIs von Fig.6 gespeichert ist. Daher
ist die bei diesem Schritt an den Speicher angelegte Adresse diejenige des vierten Worts in diesem Bereich.
Wenn der Speicher das Wort RSPC-O produziert, wird es über Leitungen SOH (Fig.2) in den Verarbeitungsmodul
eingegeben, und der Steuersignalstrang SOHCS zeigt
seinVorhandensein der Mikroprogramrasteuereinheit uPROG an. Die Gatter GS und G17 werden daher geöffnet, und das
ankommende Datenwort (RSPC-O) wird in das Operandenregister OPREG eingegeben. Gleichzeitig mit dieser Operation
prüft die Paritätserzeugungs- und Paritätsprüfschaltung
PCG die Parität des empfangenen Datenworts sowie die Parität des in das Operandenregister eingegebenen Worts.
Bei diesem Schritt prüft die Mikroprogrammsteuereinheit yuPROG eine entsprechende Leitung der Leitungen ICS daraufhin,
ob der zweite Fehleranzeiger im sekundären Anzeigeregister MIS gesetzt ist. Dieser Anzeiger ist in diesem
Stadium nur gesetzt, wenn dies der zweite Durchlauf durch die Fehlerunterbrechungs-Mikroprogrammfolge ist. .
Da sich die obige Beschreibung auf den ersten Durchlauf durch die Mikroprogrammfolge bezieht, wird die Ablauffolge
am Punkt oc beendet.
In Wirklichkeit ist der Verarbeitungsmodul nun so eingerichtet,
daß er einen sogenannten automatischen Programmänderungsbefehl ausführt. In diesem Stadium hat der Verarbeitungnmodul
die Durchführung des Programms aufgegeben,
209838/1101
das er vor der Erzeugung eines F eh le runt erbrech ungssignals
(durch den Anzeiger für einen geroeinsamen Fehler im sekundären Anzeigeregister) durchgeführt hat, und es
müssen nun die Parameter des aufgegebenen Programms im Speicher aufbewahrt und die Parameter des Fehlerprüfprogramras
aus dem Speicher herausgenommen werden.
Es ist oben bereits erwähnt worden, daß jedes Programm mit einem sogenannten S pe icheiausz ugs be reichsegment ausgestattet
ist, auf das der.Inhalt des Speicherauszugsfähigkeitsregisters
DCR (F^g.4) hinweist. Jedes Speicher- · auszugsbereichs3egment enthält eine Information über den
Zustand des zugehörigen Programms, beispielsweise die Werte der Reservesegmentbezeichnungen, die jedem der
Arbeitebereichs fähig keitsregister des Verarbeitungsmoduls
bei Durchführung dieses Programms entsprechen. Diese Speicherplätze werden mit der entsprechenden Reservesegmentbezeichnung
geladen, wenn einFähigkeitsregister geladen wird, wie in der deutschen Patentanmeldung P 21 26 206.6
gezeigt ist.Das Speicherauszugsbereichssegroent wird jedoch
auch zum Speichern des Inhalts der Register des Akkumulatorstapels AGC STK einschließlich des zur Zeit vorhandenen
Werts des Ablaufsteuerregisters und des Zustandes der primären
Anzeiger verwendet, wenn das Programm ausgesetzt wird. Das Verlassen des Diagramms von Fig.5 über den Weg od erfolgt
daher zu einer automatischen Programmwechsel operation, die bewirkt, daß der Inhalt des Akkumulatorstapels ACC STK
in dem Bereich abgespeichert wird, der vom Speicherabzugsstapel-Fähigkeitsregister
DCR bestimmt wird. Es wird daran erinnert, daß in diesem Stadium alle Fähigkeitsregister mit
Ausnahme des Hau pt fähigkeits reg is te rs MCR (Fig.4) immer
noch die Segment bezeichnungen enthalten, die zu dem bei Auftreten der Fehlerbedingung durchgeführten Programm
gehören.Die im Verarbeitungamodul von Fig.2 tatsächlich
2 ü 9 3 3 8 / Π
durchgeführten Operationen erfordern: (1) die Bildung
einer ersten Speicherauszugsbereichs adresse durch Auswahl
der DCR-Easisadresse (über Leitungen GRSEL) und durch
Zugriff auf den Speicher ( durch Öffnen der Gatter G11, G12, G5) für eine Schreiboperation in dem Speicherauszugsbereich,
wobei die Speicherauszugsbereichsadresse ebenfalls für nachfolgende Speicherauszugsbereichszugriffe
( durch öffnen der Gatter G13 zur gleichen Zeit wie der Gatter G4) im Ergebnisregister RES REG
aufbewahrt wird, und (2) die Durchgabe der (von RSEL ausgewählten und über die Gatter G16, G4 und G5 durchgelassenen)
entsprechenden Registerinhalte der jeder zugehörigen Eintragung im Akkumulatorstapel ACC STK
zusammen mit einem Nachdatieren der Zugriffsadresse
(durch Öffnen der Gatter GH und G13 mit dem Gatter G4 und durch einen Befehl an das Rechenwerk MILL zur
Durchführung einer Addition von 1). Die oben mit (1) und (2) bezeichneten Operationen werden für alle erforderlichen
Eintragungen im Akkumulatorstapel ACC STK durchgeführt. Es sei bemerkt, daß der Schritt S2 von Pig,5
die Parität in allen zu dieser Zeit geladenen Fähigkeitsregistern ungültig machte, und daß die Portschaltung der
automatischen Progrararawechseloperation so erfolgt, daß
diese Situation berücksichtigt wird, wodurch das Speicherauszugsstapel-Fähigkeitsregister
gültig be nut zt wird.
Bei einer normalen Programmwechsel-Befehls folge wird «
derVerarbeitungsmodul im entsprechenden Befehlswort
mit einer AbwärtsVersetzung einer Raservesegment be zeichnungstabelle
versehen, die dazu verwendet wird, einen Zugriff auf die Haupt fähigkeitstabelie auszuüben,
um das Speicherabzugsbereichssegment für das Programm zu erhalten, zu dem die Änderung erfolgen soll. In der
derzeitigen Situation erfolgt die Programmwechselfolge jedoch automatisch (d.h. als Ergebnis des gesetzten
209838/1101
Zustandes des Anzeigers für den gemeinsamen Fehler ), so daß
das Speicherauszugsbereichssegment für das Prüfprogramm
daher auf andere Weise erhalten werden muß.
Es wird daran erinnert, daß beim Schritt S16 von Fig.5
die Entnahme einer Reservesegmentbezeichnung (RSPC-O)
auf dem letzten Wort des Verarbeitungsmodulsbereichs
im Fehlerblock de3 Speichermoduls SMX(Fig.6) erfolgt
ist. Diese Reservesegmentbezeichnung ist so ausgestaltet,
daß sie eine Abwärtsversetzung der Sonderfähigkeitstabelle
des Verarbeitungsmoduls bewirkt, die im Block SCT gespeichert ist, bei dem die Segmentbezeichnung zu dem diesem
Verarbeitungsmodul angehörigen PrüfSpeicherauszugsbereich
im Speichermodul SMX enthalten ist. Die Segment be zeichnung für den geforderten Speicherabzugs bereich kann daher der
Sonderfähigkeitstabelle entnommen werden, indem eine normale
Laäefähigkeitsregisteroperation unter Verwendung des
Inhalts des Operandenrggisters OPREG als Sonderfähigkeitstabellenversetzung
angewendet wird. Der Weg (4) und der Weg (5) in Fig.6 geben diese Operation in groben Zügen an.
Nachdem das Fähigkeitsregister des Speicherauszugsstapels
mit der Segmentbezeichnung des geforderten Speicherauszugsbereichs geladen worden ist, können nun die verschiedenen
Parameter des Fehlerprüfprogramms aus dem Prüfprogranra-Speicherauszugsbereich
, der zum Verarbeitungsmodul
im Block C-ODS gehört, entnommen und in den Verarbeitungsmodul·
unter Verwendung der Wege (6) und (7) eingegeben werden, so daß der Eintritt in das Prüfprogramm
ermöglicht wird.
Aus Fig.6 kann man erkennen, daß der Speichermodul SMX
fünf Speicherbereiche besitzt, die der Fehlerunterbrech'ung3-Mikroprogramrafolge
angehören, wobei vier dieser
209838/110 1
Speicherbereiche/eines pro Verarbeitungs modul,vorgesehen
sind. Wie bereits erwähnt wurde, enthält der Fehler block SFB eine Anzahl von .Bereichen,von denen jeweils einer für
jedes Vera r be it u ngs mod ul des Systems vorgesehen ist, In gleicher Weise besitzen der Sonder fähigke its tabelle nblock
SCT, der Block: C-ODS für den Speicherauszugs be reich des
Prüfprogramms und der Block C-ORSPT für die Reservesegmenthinweistabelle
desPrüfprogramms einen entsprechenden Bereich für jeden Verarbeitungsmodul. Der tatsächliche
Prüfprogrammcode kann zusammen mit einigen Arbeitsbereichen
und dergleichen, die im Festspeichermodus betrieben
werden, allen Verarbeitungsmodulη gemeinsam angehören oder,
falls es der Speicherplatz zuläßt, ihnen jeweils einzeln zugeordnet sein. Überdies sind im gesamten Modulsystera
mehrere Speichermoduln so beschaffen, daß die solche Blöcke wie in Fig.6 aufweisen.
Das (im Festspeicherbetrieb ablaufende) Fehlerprüfprogramm
ist so gestaltet, daß es die verschiedenen Funktionen des Verarbeitungsmoduls prüft und einen der Fehleranzeiger
aktiviert, wenn eine fehlerhafte Operation auftritt.Außerdem
werden die verschiedenen Prüfungen, die bei der Betätigung des Vorarbeitungsmoduls durchgeführt werden,
in gleicher Weise in der Fehlerunterbrechungs-Mikroprogrammfolge durchgeführt. So werden beispielsweise
beim Schritt S10 von Fig.5 die ankommenden Daten auf ihre Parität überprüft, und das Hauptfähigkeitsregister
wird nach dem Laden unter Verwendung der Summe ηprüfWörter
geprüft. Wenn der Verarbeitungsraodul ein zweites Mal ausfällt, -erfolgt daher ein erneutes Eintreten in die Fehlerunter
brechungs-Mikrοprogrammfolge von Fig.5, wobei diesesmal
jedoch der Eratversuchsanzeiger (F.A.T.) gesetzt ist.
209838/1101
ft
Nach Pig.5 bewirkt der zweite Eintritt in die Fehlerunterbrechungs-Mikroprogramtnfolge
(infolge des Setzzustandes des für einen gemeinsamen Fehler vorgesehenen Anzeigers CFI
der sekundären Anzeiger) die Durchführung des Schritts S1. Diesmal wird jedoch der ErstVersuchsanzeiger gesetzt,
so daß die Durchführung des Schritts S18 veranlaßt wird. Es sei bemerkt, daß der Schritt S2 unter diesen Umständen
nicht durchgeführt wird, der den invertierten Zustand der Parität in Verarbeitungsmodul aufrechterhält.
Dieser Schritt bewirkt das Setzen des Zweitfehleranzeigers (FIIT) im sekundären Anzeigeregister MIS (Fig.2) durch
Aktivierung der entsprechenden SIuCS-Leitung unter der
Steuerung durch die Mikroprogrammsteuereinheit. Nun werden die Schritte S4, S5, S6, S7 und S8 (von Fig.5)
mit den oben beschriebenen Wirkungen ausgeführt. Der Schritt S8 erzeugt jedoch ein "ja"-Ergebnis, das die
Durchführung des Schritts S19 bewirkt.
Die Mikroprogrammsteuereinheit uPROG (Fig.2) bewirkt,
daß der Speichermodulnummernteil der Basisadresse de3
Sonderfähigkeitsregisters SSCR erhöht wird. Diese Operation
wird durch Öffnen der Gatter G3 und G19 und durch Anweisung an das Rechenwerk MILL ausgeführt, zum Speichermoduladressenfeld
des Adressenworts 1 hinzuzuaddieren. Nun erfolgt die Durchführung der Schritte S9 bi3 S16;
da jedoch die Speichermodulnummer der Basisadresse in
Sonderfähigkeitsregister SSCR erhöht worden ist, beinhalten die Operationen dieses Schritts, obwohl sie gleichartig
sind, den Gebrauch eines anderen Speichermoduls, als der Speichermodul, der beim ersten Durchlauf durch die Mikroprogrammfolge
verwendet worden ist.
209838/1 101
Außerdem erzeugt der Schritt S17 ein "^"-Ergebnis, das
einen Austritt aus der Mikroprogrammfolge über den Weg ß nach dem Rücksetzen des Zweitfehleranzeiger3 im Schritt S20
bewirkt. Dieser \veg ß ist ein Eintrittsweg in die oben beschriebene automatische Programmwechseloperation, doch
ist er so ausgestaltet, daß er teilweise durch dieses Programm führt, da keine Verweisung auf ein nochmaliges
Abspeichern der Parameter des unterbrochenen Programms vorhanden ist. Ebenso kann man erkennen, daß der Schritt S11
die Informationen ü>a: dsa den zweiten Fehler enthaltenden primären
Anseiger veranlaßt, unter den primären Fehleranzeigerzuständen in den Verlaufsregistern angeordnet zu werden.
lurch den oben genannten Wiedereintrittsmechanismus kann
ein fehlerhafter Verarbeitungsaodül entweder in der Fehlerunterbrechuncs-Hikroprogrammfolge
oder in der Prüfprogrammfolge festgehalten werden, wobei nacheinander jeder Speicherffiodul
verwendet wird, in dem das Prüfprogramm in Erscheinung
tritt. Jedesmal wenn ein Fehler auftritt, werden die primären Anzeiger in den nächsten Speicherplatz im Verlaufsregisterstapel
geschrieben. Wenn andrerseits der erste Fehler als Folge eines Ausfalls im Speichermodul SMX von Fig.6 auftrat,
bewirkt der Wiedereintrittsmechanismus die Verwendung
eines weiteren Speichermoduls, und das Prüfprogramm wird dann wahrscheinlich vom Verarbe itungsmodul korrekt
befolgt.
Typischerweise kann das Prüfprogramm für einen Betrieb
im Festwertmodus und auch so geschrieben werden, daß
alle Funktionen eines Veraibeitungsmoduls und eines Speichermoduls
geprüft werden; dabei kann es so aufgebaut sein, daß der Verarbeitungsnodul nach seiner korrekten Beendigung sich
zum On-Line-Systera hinwendet, damit ein Eintritt in ein
"Anschluß"-Programm erfolgt, das es ihm ermöglicht, nach
209838/1 101
der Rücksetzung des Erstversuchsanzeigers zum On-Line-System zurückzukehren. Während der gesamten Durchführung
des Fehlerprüfprogramms bleibt der Erstversuch3anzeiger
(F.A.T.) gesetzt, und das Fehlerprüfprogramra
selbst ist so beschaffen, daß dieser Anzeiger rückgesetzt wird, wenn es vollendet ist. Dadurch wird
sichergestellt, daß das Fehlerprüfprogramm nicht unterbrochen
werden kann, wenn der Erstversuchsanzeiger, wie oben erwähnt den normalen Unterbrechungsmechanismus
des Verarbeitungstnoduls sperrt. Wenn der Verarbeitungsmodul ein Unterbrechungssystem gemäß der amerikanischen
Patentanmeldung Nr.41 951/70 verwendet, kann der
Setzzustand des Erstversuchsanzeigers zum Sperren der Unterbrechungstaktimpulsquelle verwendet werden.
Das On-Line-System kann vom Ergebnis der Prüfung unter Verwendung von sogenannten "Statuswörtern" unterrichtet
werden; eine Aufforderung, sich wieder dem System anzuschließen,
kann den anderen Verarbeitungsmoduln des Systems über den normalen Unterbrechungsmechanismus
mitgeteilt werden.
Aus der obigen Beschreibung kann man ableiten, daß der nach der Erfindung geschaffene Unterbrechungsmechanismus
den Verarbeitungsmodul, in dem ein Fehlerzustand auftritt, veranlaßt, die gerade.eingegebene Information unverzüglich
ungültig zu machen, und den Inhalt seines Haupt Fähigkeit sregisters
mit einer eine Sonderfähigkeitstabelle bestimmenden Segmentbezeichnung zu überschreiben. Die Eintragungen
in der Sonderfähigkeitstabelle sind dergestalt , daß der
Bereich im Speicher, auf dem der Verarbeitungsmodul Zugriff
209838/1 101
hat, sehr stark eingeschränkt wird. Außerdem kann ein
Verarbeitungsmodul, wenn er einmal in die Fehlerunterbrechungs-Ablauffolge
eingetreten ist, nicht mehr unterbrochen werden, und er kann sich dem On-Iine-System nicht
wieder anschließen, bis er erfolgreich ein Prüfprogramm
befolgt hat. Durch Vorsehung einer Anzahl von Prüf programmfcopien
mit entsprechenden Zugriffs informationen in einer Anzahl von Speichermoduln wird ein beständig fehlerhafter
Verarbeitungsmodul, nachdem er einmal eine Fehlerunterbrechung erfahren hat, ohne schädliche Auswirkungen in den Fehlerprüfprogrammabläufen
festgehalten. Der Fachmann kann erkennen, daß Vorkehrungen, wie ZeitablaufWörter im Speicher, die
gleichzeitig abgetastet und einzeln von den Verarbeit ungsmoduln
des On-Line-Systems nachdatiert werden, vorgesehen werden können, damit das On-Line-System feststellen kann,
daß ein fehlerhafter Verarbeitungsmodul abgetrennt worden
ist.
Die hier beschriebene Anordnung ist zwar in Bezug auf ein Verarbeitungsmodul mit einer besonderen Art von
Speicherschutzsys-tem beschrieben worden, doch können auch
andere Arten von Schutzsystemen damit überwacht werden. Die hier beschriebene Ausführung ist auf ein modulares
Verarbeitungssystem bezogen worden, doch können die
grundlegenden Merkmale in gleicher Weise auch auf ein System mit nur einem Verarbeitungsgerät angewendet
werden.
209838/1 101
Claims (10)
- Patentansprüche., 1y Datenverarbeitungssystem mit einem Speicher zum Speicherneiner sich auf Anwendungs- und Überwachungsprogramme begehenden Information und mit einer sich auf ein Fehlerprüfprogramm beziehenden Information und mit wenigstens einem Verarbeitungsmodul, dadurch gekennzeichnet, daß der Verarbeitungsmodul mit einer Anordnung zur Erkennung und Behandlung von Fehlern ausgestattet ist, die derart ausgebildet ist, daß sie nach Entdeckung eines Fehlerzustandes innerhalb des Verarbeitungsmoduls sofort derart wirksam wird, daß sie den erlaubten Zugriffsbereich des Speichers auf den Bereich beschränkt, in dem die sich auf das Fehlerprüfprogramm beziehende Information gespeichert ist.
- 2. DatenverarbeitungssystetD mit einem Speicher zum Speichern einer sich auf Anwendungs- und Überwachungsprogramme beziehenden Information und einer sich auf ein Fehlerprüfprogramm beziehenden Information und mit wenigstens einem Verarbeitungsmodul , dadurch gekennzeichnet, daß dar oder jeder Verarbeitungsmodul mit einer Anordnung zur Erkennung und Behandlung von fehlern ausgestattet ist, die derart ausgebildet ist,daß sie nach Entdeckung eines Fehlerzustandes innerhalb des Verarbeitungsmoduls sofort derart wirksam wird, daß sie (I) den Verarbeitungsmodul durch Verhinderung des Zugriffs durch den Verarbeitungsmodul auf die sich auf die Anwendungs- und Überwachungsprogramme beziehende Information voraäctiven Verarbeitungssystem abtrennt und (II) in ein Fehlerprüfprogramm zum Prüfen aller funktionellen Operationen des Vera r be it ungs moduls eintritt.
- 209838/1 101
- ~51 " 221032S
- 5. Datenverarbeitungssystem mit einem Speicher zum Speichern von sich auf Anwendungs- und Überwachungsprogramme beziehenden Informations Segmenten und von sich auf ein Fehlerprüfprogramm beziehenden Informationssegmenten in segmentierter Form, wenigstens einen Verarbeitungsmodul, von denen einer oder jeder mit Speicherschutzeinrichtungen versehen ist, die mehrere Fähigkeitsregister enthalten, von denen jedes so ausgebildet ist, daß es eine die Basis- und Endspeicheradressen eines Speichersegments anzeigende Speichersegmentbezeichnungsinformation enthält, während eines der Fähigkeitsregister so ausgebildet ist, daß es eine erste Segment be zeichnung ent hält, die ein eine Haupt fähigke its tabelle enthaltendes Informationssegment bildet (die zur Bildung der Basis- und Endadresseninformation jedes der restlichen Fähigice its register in deren geladenem Zustand verwendet wird), wobei die Hau pt fähigke it stäbe He für jedes Informationssegment in dem Speicher eine Eintragung aufweist, dadurch gekennzeichnet, daß der oder jeder Verarbeitungsmodul mit einer Fehlererkennungs- und Fehlerbehandlungseinrichtung versehen ist, die so aufgebaut ist, daß sie bei Feststellung eines Fehlerzustandes innerhalb des Verarbeitungsraoduls sofort derart wirksam wird, daß sie diesen Vera r be it ungs modul durch Überschreiben der Bezeichnungsinformation in dem Haupt fähigke itsregister mit der eine Sonderfi.higk-3 itsta belle bildenden Bezeichnungsinformation vom aktiven Verarbeitungssystem abtrennt , wobei die Sonderfähigke its tabelle Eintragungen aufweist, die alle sich auf das Fehlerprüfprogramm allein beziehenden Informations-• segmente bestimmen.4. Datenvera rbe it ungs system nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß der Speicher aus mehreren Speichermoduln besteht und mehrere Prüfprogrammbezeichnungssegmente speichert, die unter die Speichermoduln des Speichers auf209838/1101der Grundlage der gegenseitigen Ausschließung verteilt sind, daß die Fehlererkennungs- und Pehlerbehandlungseinrichtungen in dem oder in jedem Speichermodul so ausgebildet ist, daß bei Feststellung eines ersten Fehlerzustandes eines der Prüfprogrammbezeichnungssegmente zum Eintritt in das Fehlerprüfprogramm verwendet wird und daß bei Feststellung eines weiteren Fehlerzustandes während des abgetrennten Zustandes des Verarbeitungsmoduls von dem aktiven Verar be it ungs system die Fe bier er kenn ungs- und Fehlerbehandlungseinrichtungen so beschaffen sind, daß sie den Verar be it ungs modul veranlassen, ein anderes der Prüfprogrammhinweissegmente zum Wiedereintritt in das Fehlerprüfprogramm zu verwenden.5. Datenverarbeitungssystem nach Anspruch 4, dadurch gekennzeichnet, daß mehrere Kopien der sich auf das Fehlerprüfprogramm beziehenden Information in den Speicher vorgesehen sind, daß diese Kopien auf die Speichermoduln verteilt sind und daß jedes Prüfbezeichnungssegment eines sich auf den von einer anderen Kopie des Fehlerprüfprogramms besetzten Speicherbereich beziehende Information enthalten kann.
- 6. Datenve rar be it ungs system nach Anspruch 5, dadurch gekennzeichnet, daß der oder jeder Verarbeitungsmodul· Einrichtungen zur Paritätsbitinversion enthält, die nach Feststellung des ersten Fehlerzustandes aktiviert werden, so daß dadurch die gesamte Information im Verarbeitungsmodul, die sich auf andere -Programms als auf das Fehlerprüfprogramm bezieht, ungültig gemacht wird.
- 7. Datenverarbeitungssystem nach Anspruch 6, dadurch gekennzeichnet, daß der oder ,je ier Vera rbeitungsmori ul einer in zwei Zustände schaltbare Γ ehalt vorrichtung enthält,; η ο - -8/1101die räch Feststellung des ersten Fehlerzustandes in einen ersten oder aktiven Zustand und durch einen Befehl im Prüfprogramm in einen zweiten oder inaktiven Zustand schaltbar ist.
- 8. Datenve rar be it ungs system nach Anspruch 7» dadurch gekennzeichnet, daß die in zwei Zustände schaltbare Schaltvorrichtung in diesem aktiven Zustand eine Veränderung der Inhalte eines besonderen Registers um einen bestimmten Betrag jedesmal dann bewirkt, wenn einer der weiteren Fehlerz us tände festgestellt wird, und daß das besondere Register dazu verwendet wird, die Speicheradresse des bei jedem Eintritt in das Prüfprogramm zu verwendenden Prüfbezeichnungssegments zu speichern.
- 9. Datenverarbeitungssystem nach Anspruch 8,dadurch gekennzeichnet, daß jedes Prüfbe zeichnungssegment für den oder für jeden Verarbeitungsmodul eine Information enthält, die die Basis- und Endadressen der Sonderfähigkeitstabelle bezeichnet.
- 10. Iatenverarbeitungssystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der oder jeder Vera rbe it ungs modul nach erfolgreicher Beendigung des Fehlerprüfprogramms in das aktive Vera rbe it ungs syst em zurück führ bar ist.209838/1 101
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB599471 | 1971-03-04 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2210325A1 true DE2210325A1 (de) | 1972-09-14 |
DE2210325B2 DE2210325B2 (de) | 1979-11-08 |
DE2210325C3 DE2210325C3 (de) | 1980-07-31 |
Family
ID=9806471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2210325A Expired DE2210325C3 (de) | 1971-03-04 | 1972-03-03 | Datenverarbeitungseinrichtung |
Country Status (9)
Country | Link |
---|---|
US (1) | US3814919A (de) |
JP (1) | JPS5348060B1 (de) |
AU (1) | AU464228B2 (de) |
CA (1) | CA952627A (de) |
DE (1) | DE2210325C3 (de) |
GB (1) | GB1344474A (de) |
NL (1) | NL181149C (de) |
SE (1) | SE449669B (de) |
ZA (1) | ZA721305B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2328058A1 (de) * | 1972-06-03 | 1973-12-20 | Plessey Handel Investment Ag | Digitale datenverarbeitungsanordnung |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE31318E (en) * | 1973-09-10 | 1983-07-19 | Computer Automation, Inc. | Automatic modular memory address allocation system |
GB1509193A (en) * | 1974-04-17 | 1978-05-04 | Nat Res Dev | Computer systems |
US3911402A (en) * | 1974-06-03 | 1975-10-07 | Digital Equipment Corp | Diagnostic circuit for data processing system |
JPS596415B2 (ja) * | 1977-10-28 | 1984-02-10 | 株式会社日立製作所 | 多重情報処理システム |
US4181940A (en) * | 1978-02-28 | 1980-01-01 | Westinghouse Electric Corp. | Multiprocessor for providing fault isolation test upon itself |
GB2059652B (en) * | 1979-09-29 | 1983-08-24 | Plessey Co Ltd | Memory protection system using capability registers |
US4446514A (en) * | 1980-12-17 | 1984-05-01 | Texas Instruments Incorporated | Multiple register digital processor system with shared and independent input and output interface |
EP0076846B1 (de) * | 1981-04-16 | 1988-01-27 | Ncr Corporation | Datenverarbeitungssystem mit fähigkeit zur fehlerkontrolle |
US4458312A (en) * | 1981-11-10 | 1984-07-03 | International Business Machines Corporation | Rapid instruction redirection |
US4485472A (en) * | 1982-04-30 | 1984-11-27 | Carnegie-Mellon University | Testable interface circuit |
GB2158622A (en) * | 1983-12-21 | 1985-11-13 | Goran Anders Henrik Hemdal | Computer controlled systems |
US4683532A (en) * | 1984-12-03 | 1987-07-28 | Honeywell Inc. | Real-time software monitor and write protect controller |
US4797853A (en) * | 1985-11-15 | 1989-01-10 | Unisys Corporation | Direct memory access controller for improved system security, memory to memory transfers, and interrupt processing |
ATE71788T1 (de) * | 1986-03-12 | 1992-02-15 | Siemens Ag | Verfahren zum betrieb einer fehlergesicherten hochverfuegbaren multiprozessorzentralsteuereinheit eines vermittlungssystemes. |
US5564030A (en) * | 1994-02-08 | 1996-10-08 | Meridian Semiconductor, Inc. | Circuit and method for detecting segment limit errors for code fetches |
US5577219A (en) * | 1994-05-02 | 1996-11-19 | Intel Corporation | Method and apparatus for preforming memory segment limit violation checks |
US5822786A (en) * | 1994-11-14 | 1998-10-13 | Advanced Micro Devices, Inc. | Apparatus and method for determining if an operand lies within an expand up or expand down segment |
US6021261A (en) * | 1996-12-05 | 2000-02-01 | International Business Machines Corporation | Method and system for testing a multiprocessor data processing system utilizing a plurality of event tracers |
JP3545252B2 (ja) * | 1999-03-30 | 2004-07-21 | 富士通株式会社 | 情報処理装置 |
US6654909B1 (en) * | 2000-06-30 | 2003-11-25 | Intel Corporation | Apparatus and method for protecting critical resources against soft errors in high performance microprocessors |
JP4941954B2 (ja) * | 2005-07-25 | 2012-05-30 | ルネサスエレクトロニクス株式会社 | データエラー検出装置およびデータエラー検出方法 |
JP4458119B2 (ja) * | 2007-06-11 | 2010-04-28 | トヨタ自動車株式会社 | マルチプロセッサシステム及びその制御方法 |
JP4571996B2 (ja) * | 2008-07-29 | 2010-10-27 | 富士通株式会社 | 情報処理装置及び処理方法 |
JP5574230B2 (ja) * | 2010-04-28 | 2014-08-20 | 株式会社日立製作所 | 障害処理方法および計算機 |
US9542254B2 (en) | 2014-07-30 | 2017-01-10 | International Business Machines Corporation | Application-level signal handling and application-level memory protection |
US9740551B2 (en) | 2014-12-02 | 2017-08-22 | International Business Machines Corporation | Enhanced restart of a core dumping application |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3201760A (en) * | 1960-02-17 | 1965-08-17 | Honeywell Inc | Information handling apparatus |
US3286239A (en) * | 1962-11-30 | 1966-11-15 | Burroughs Corp | Automatic interrupt system for a data processor |
US3387276A (en) * | 1965-08-13 | 1968-06-04 | Sperry Rand Corp | Off-line memory test |
US3517171A (en) * | 1967-10-30 | 1970-06-23 | Nasa | Self-testing and repairing computer |
US3599179A (en) * | 1969-05-28 | 1971-08-10 | Westinghouse Electric Corp | Fault detection and isolation in computer input-output devices |
US3692989A (en) * | 1970-10-14 | 1972-09-19 | Atomic Energy Commission | Computer diagnostic with inherent fail-safety |
-
1972
- 1972-02-18 GB GB599471A patent/GB1344474A/en not_active Expired
- 1972-02-28 ZA ZA721305A patent/ZA721305B/xx unknown
- 1972-02-29 CA CA135,854A patent/CA952627A/en not_active Expired
- 1972-02-29 AU AU39479/72A patent/AU464228B2/en not_active Expired
- 1972-03-01 US US00232463A patent/US3814919A/en not_active Expired - Lifetime
- 1972-03-03 SE SE7202743A patent/SE449669B/xx unknown
- 1972-03-03 DE DE2210325A patent/DE2210325C3/de not_active Expired
- 1972-03-03 NL NLAANVRAGE7202889,A patent/NL181149C/xx not_active IP Right Cessation
- 1972-03-04 JP JP2273072A patent/JPS5348060B1/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2328058A1 (de) * | 1972-06-03 | 1973-12-20 | Plessey Handel Investment Ag | Digitale datenverarbeitungsanordnung |
Also Published As
Publication number | Publication date |
---|---|
DE2210325C3 (de) | 1980-07-31 |
DE2210325B2 (de) | 1979-11-08 |
JPS5348060B1 (de) | 1978-12-26 |
CA952627A (en) | 1974-08-06 |
US3814919A (en) | 1974-06-04 |
NL7202889A (de) | 1972-09-06 |
NL181149B (nl) | 1987-01-16 |
AU464228B2 (en) | 1975-08-01 |
SE449669B (sv) | 1987-05-11 |
ZA721305B (en) | 1972-11-29 |
GB1344474A (en) | 1974-01-23 |
AU3947972A (en) | 1973-08-30 |
NL181149C (nl) | 1987-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2210325A1 (de) | Datenverarbeitungssystem | |
DE2614000C2 (de) | Diagnoseeinrichtung zur Prüfung von Funktionseinheiten | |
DE3048365C2 (de) | ||
DE2359776C2 (de) | Speichermodul | |
DE2619159C2 (de) | Fehlererkennungs- und Korrektureinrichtung | |
DE2225841C3 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
DE1279980C2 (de) | Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem | |
DE2328058C2 (de) | Fehlerdiagnoseeinrichtung in einer digitalen Datenverarbeitungsanordnung | |
EP0011685B1 (de) | Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung | |
DE2048670A1 (de) | Speicherwartungsanordnung fur Daten verarbeitungsanlagen | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE1524239B2 (de) | Schaltungsanordnung zur aufrechterhaltung eines fehler freien betriebes bei einer rechenanlage mit mindestens zwei parallel arbeitenden rechengeraeten | |
CH654943A5 (de) | Pruefeinrichtung fuer mikroprogramme. | |
DE2319753B2 (de) | Anordnung zur Datenverarbeitung mittels in Mikroprogrammierung betriebener Prozessoren | |
DE2030760A1 (de) | Speicherschaltung | |
EP0104635A2 (de) | Verfahren und Anordnung zum Prüfen eines digitalen Rechners | |
DE2461592C3 (de) | Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem | |
CH658137A5 (de) | Steuereinrichtung mit einem speicher und einer schnittstelle, insbesondere fuer werkzeugmaschinen. | |
EP0151810B1 (de) | Verfahren und Schaltungsanordnung zum Prüfen eines Programms in Datenverarbeitungsanlagen | |
DE3138989A1 (de) | Zusaetzliche funktionseinheit in einem mikroprozessor, mikroprozessorsystem und verfahren zu seinem betrieb | |
DE2823457C2 (de) | Schaltungsanordnung zur Fehlerüberwachung eines Speichers einer digitalen Rechenanlage | |
DE2048670C (de) | Verfahren und Anordnung zur Über prüfung einer Datenverarbeitungsanlage | |
EP0919917B1 (de) | Verfahren zum Testen des Pufferspeichers eines Mikroprozessorsystems | |
DE2505475C3 (de) | Verfahren und Vorrichtung zur Fehlerprüfung bei einem programmierbaren Logikwerk für die Ausführung logischer Operationen | |
EP0566756A1 (de) | Verfahren zur Fehlererkennung in numerischen Steuerungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PLESSEY OVERSEAS LTD., ILFORD, ESSEX, GB |