DE2612034A1 - Ausfallsicherung in einem universalrechner - Google Patents
Ausfallsicherung in einem universalrechnerInfo
- Publication number
- DE2612034A1 DE2612034A1 DE19762612034 DE2612034A DE2612034A1 DE 2612034 A1 DE2612034 A1 DE 2612034A1 DE 19762612034 DE19762612034 DE 19762612034 DE 2612034 A DE2612034 A DE 2612034A DE 2612034 A1 DE2612034 A1 DE 2612034A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- register
- bits
- control block
- control
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
Description
5202554 Ge 22. März 1976
HONEYWELL INFORMATION SYSTEMS INC.
200 Smith Street Waltham, Mass./ USA
Ausfallsicherung in einem Universalrechner.
Die Erfindung befasst sich mit DV-Systemen und insbesondere mit einem Universalrechner, der alternative Datenwege zur Adressierung
von Daten im Speicher aufweist, wobei ein Datenweg der normalen Adressierung und der andere Datenweg dem automatischen
Gebrauch im Falle einer Speicherstörung dient.
Mit zunehmender Komplexität der DV-Systeme ist auch die Größe und Anzahl der Prozessoren, der Hauptspeicher und der peripheren
Einheiten gewachsen. Bei diesen Systemen ist es dringend erforderlich, daß die Nachrichtenverbindungen zwischen dem Prozessor,
den peripheren Einheiten und dem Hauptspeicher aufrechterhalten werden. Wegen der hohen Kosten redundanter Prozessoren
zur Steuerung der Nachrichtenverbindung zwischen den peripheren Einheiten wurde ein Eingang/Ausgang-Austausch für eine Ankopplung
mehrerer peripherer Einheiten an die Zentraleinheit benutzt. Wenn dieser Eingang/Ausgang-Austausch gestört wurde, so wurde der Zugriff
aller peripherer Einheiten auf die Zentraleinheit blockiert. Ein Ausweg aus diesen Schwierigkeiten bestand darin, redundante
Datenwege vorzusehen, in dem wenigstens ein zusätzlicher Ausgangs-Austausch
vorgesehen wurde, an den alle peripheren Steuerungen und
609842/0637
peripheren Einheiten angeschlossen waren. Hinsichtlich dieser bekannten Lösung sei auf die US-PS 3 792 44-8 verwiesen.
Durch diese bekannte Lösung wurde jedoch nicht das Problem behoben,
das sich ergab, wenn eine periphere Einheit selbst, z.B.
ein Hauptspeicher gestört wurde. Wenn beispielsweise ein Modul oder ein Teil des Hauptspeichers, der die Basisadresse von
Routinen oder Prograirunen in einem intakten Teil des Hauptspeichers
speicherte, gestört wurde, so waren diese Routinen oder Programme in dem intakten Teil des Hauptspeichers für den Prozessor nicht
automatisch zugänglich.
Es ist die Aufgabe der vorliegenden Erfindung, eine Ausfallsicherung
für einen Universalrechner anzugeben, die auch in dem vorstehend erwähnten Fall einen automatischen Zugriff auf den intakten
Teil des Hauptspeichers gestattet. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten Erfindung.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Gemäß der vorliegenden Erfindung erzeugt ein Firmware/Hardwaremechanismus
eines Universalrechners automatisch einen alternativen Adressierweg zu einem intakten Teil des Hauptspeichers, wenn ein
gestörter Hautpspeicherteil festgestellt wird. Zwei Arten von Hauptspeicherstörungen sind feststellbar und in jedem Fall wird
ein alternativer Adressierweg zu einem intakten Teil des Hauptspeichers automatisch erzeugt. Der erste Störungstyp ist eine
Störung im Speicher, die durch die Speicherhardware oder die System-Schnittstelleneinheit-Hardware nicht festgestellt wird.
Eine solche Störung wird durch eine Ausnahme-Verarbeitungsroutine behandelt,durch welche automatisch ein alternativer Adressierweg
zu einem intakten Hauptspeicherteil erzeugt wird. Der zweite Störungstyp wird durch die Hardware des Speichers oder der Schnittstelleneinheit
festgestellt. Eine solche Störung wird durch eine Unterbrechungs-Verarbeitungsroutine behandelt, welche ebenfalls
609842/0637
copy
einen alternativen Datenweg zu einem intakten Teil des Hauptspeichers
erzeugt. Ein erstes und ein zweites Steuerblockbasisregister sind vorgesehen, um die redundante Adressierung
zu erzeugen. Wenn auf den ersten Steuerblock im Hauptspeicher durch Verwendung der ersten Steuerblockbasis nicht Zugriff genommen
werden kann, so stellt die Firmware unter Benutzung der zweiten Steuerblockbasis automatisch einen ünterbrechungs- oder
Ausnahmesteuerblock in einem anderen Speichermodul fest, welcher Steuerblock zunächst benutzt wird,*um eine Fehlerroutine zur
Feststellung des Fehlers in dem gestörten Speicher auszulösen und sodann eine Verarbeitungsroutine durchzuführen, die die
angeforderte Verarbeitung gestattet.
Anhand eines in den Figuren der beiliegenden Zeichnungen dargestellten
Ausführungsbeispieles sei im folgenden die Erfindung
näher erläutert. Es zeigen:
Figur 1 ein schematisches Blockdiagramm eines typischen DV-Systems
gemäß der vorliegenden Erfindung, Figuren 2A bis 2M Daten-Strukturdiagramme von verschiedenen
durch die Erfindung benutzten Registern und Figur 3 ein Blockdiagramm eines Prozessors gemäß der Erfindung.
COPY
609842/0637
Gemäß Figur 1 ist ein typisches von der Erfindung Gebrauch machendes Comutersystem dargestellt. Dieses System weist eine
Systemschnittstelleneinheit SIU 100 auf, die ihrerseits eine Prioritätsunterbrechungs- und Zuteileranordnung 101 und 102 enthält.
Die Systiemschnittstelleneinheit 100 erzeugt die Verbindung
zwischen den Elementen des Datenverarbeitungssystems. Zwecks Zugriff zu internen oder externen Speichern 121, 122 bzw. 122a und
123 durch aktive Prozessormodule 103 - 106, ein Konfigurations-Wartungsfeld
124 usw. sieht die Schnittstelleneinheit 100 eine ■ direkte Adressierung von Hochgeschwindigkeits- und Niedriggeschwindigkeitsmultiplexern
107, 112 und 113 und von Steueradaptern
108, 109, 134 und 135 durch die Prozessoren 1o3-106 vor. Die Unterbrechungsanordnung 101 und die Verteileranordnung
102 steuern die Unterbrechungsprozedur und führen die Prozessorzuteilung in der geforderten Weise aus. Jeder Prozessor IOP/P
103-106 weist typischerweise 16 Register 130-133 für jeden einem
Prozess zugeordneten Prioritätsrang auf. oder es sind insgesamt 128 Register pro Prozessor vorgesehen, die 128 Worte speichern
können. Die Register 130-133 werden in der nachfolgenden Beschreibung als Zwischenspeicher bezeichnet und weiter unten näher beschrieben. Jeder Prozessor IOP/P stellt einen Mehrzweck-Rechenprozessor dar mit einer herkömmlichen Ausrüstung von Register-Register-, Register-Speicher-, Sofort-, Verzweigungs-, Bitfeld-
und Verschiebebefehlen. Diese Prozessoren können als Eingang/
609842/063 7
Ausgang-Prozessoren (IOP) benutzt werden, deren Funktionen die
Einleitung und Beendigung von Ein/Ausgang-Befehlsfolgen, das Abrufen, das überprüfen und das übersetzen von Kanalprogranimen
umfassen und die eine direkte Steuerung von peripheren Geräten mit niedriger Geschwindigkeit, wie beispielsweise von Aufzeichnungseinheiten
und Datenübermittlungseinheiten ermöglichen. Die Prozessoren 103-106 sind über Anschlüsse H, G, F und E mit der
Schnittstelleneinheit 100 verbunden und stehen mit dieser im Nachrichtenaustausch. Der interne Speicher 121, 122 und die Prozessoren
103-106 sind an die Schnittstelleneinheit SIU 100 über Anschlüsse LM und LM- bzw. H-E angeschlossen. Jeder der internen
Speicher 121- 122 ist als Lese/Schreibspeicher 136, 137 organisiert und enthält zusätzlich eine Festwertspeicher ROM-138,
139 mit einem wahlfreien Pufferspeicher 140, 141. Die Datenbreite der Anschlüsse LMQ bzw. LM- beträgt 36 Bitplus 4 Bit für eine
Paritätsprüfung. Die Größe des internen Speichers beträgt typischerweise 256K oder 512K Bits, wobei die Größe K 1024 Bytes
entspricht. Die externen Speieheradapter 122a, 123 werden benutzt,
wenn die Schnittstelleneinheit SIU 1oo mit ihren Prozes- · soren und peripheren Geräten Teil eines größeren Mehrzweck-Computer
sy stems bildet. Die externen Speicheradapter (REMA) bilden sodann eine Einrichtung zum Auswechseln der Steuerung und
der Datenübertragung zwischen den Prozessoren 103-106 und den externen Speichern 122b und 123b eines anderen Mehrzweck-Computersystems,
das mit Med 6 bezeichnet ist. Bis zu z"wei Anschlüsse 0C1 β und ^y (f sind für jeden der externen Speicheradapter
(REMA) 122a, 123 vorgesehen, wobei jeder Anschluß einen 40 Bit-Datenweg als Ein- und Ausgang zwischen dem dargestellten
Computersystem und einem großen nicht dargestellten Computersystem besitzt. Die externen Speicheradapter 122a, 123 sind über
Anschlüsse RMQ und RM1 an die Schnittstelleneinheit SIU 100 angeschlossen.
Es sei hier drauf verwiesen, daß primäre und sekundäre Steuerblöcke, die weiter unten näher beschrieben werden, in
den externen Speichern 122b, 123b und in den internen Speichern 121, 122 gespeichert sind.
609842/0637
Ein Hochgeschwindigkeitsmultiplexer 107 erzeugt eine direkte
Steuerung der Datenübertragung zwischen peripheren Geräten mit hoher Geschwindigkeit, z.B. der Platteneinheit 110 und der Bandeinheit
111 und dem internen Speicher 121, 122. Der Hochgeschwindigkeitsmultiplexer
107 bildet eine Schnittstelle zwischen dem Anschluß A der Schnittstelleneinheit SIU 100 und den peripheren
Geräten. Jeder Niedriggeschwindigkeitsmultiplexer 112, 113 gestattet
die direkte Steuerung eines Gerätes mit niedriger Geschwindigkeit durch einen Prozessor 103-106, wobei solche peripheren
Geräte beispielsweise in Form von Kartenstanzerni18,
Druckern 119 und einerKonsole 120 gegeben sind, die über Geräteadapter-Schnittstelleneinheiten
DAI 115 und 116 und 117 an die
Multiplexer angeschlossen sind.
Gemäß den Figuren 2a bis 2L sind allgemein zugängliche Register dargestellt, d.h. jene Prozessorregister, auf die durch Prozessor-Software-Befehle
Zugriff genommen werden kann. Folgende Register bilden die zugänglichen Register eines jeden Prozessors IOP/P:
a. Prozeß-Zustandsregister ·(PSR)
b. Befehlszähler (IC)
c. Seitentabellen-Basisregister · ... (PTBR)
d. Ällgemeinregister (GR1s)
e. Steuerblockbasisregister (CBBR)
f. Prozessteuerregister (PCR)
Die Register PSR, IC, PTBR und GR1 s sind im Zwischenspeicher
von 16 36-Bit-Registern abgelegt und in der in Figur 2A dargestellten Weise zugeordnet.
Prozeß-Zustandsregister (PSR) Figur 2B - Das Prozeß-Zustandsregister
speichert Information, die für die Steuerung des.laufenden Prozesses von bedeutung ist. Das Register besitzt das Format
gemäß Figur 2B:
Steuerung (BMs 0-7) Die Steuerung bestimmt die Unterbrechungsquelle
If (Bit 8) - Zugriffsrecht. Haupt (O)- oder Neben (1)-Betrieb.
R (Bit 9) _ Externes Register. Bestimmte nicht im Prozessor
IOP/P befindliche Register können nicht ver-.'
ändert werden, wenn dieses Bit gesetzt ist.
609842/0637
A (Bit 10) - Adressenmodus. Absolute (O)- oder Seiten (1)-
Adressierweise.
CC (Bits 11-12) Zustandscode. Die Bedeutung des Zustands-
codes ist für jeden lOP/P-Befehl gegeben.
Im allgemeinen entspricht: · .· .
Ergebnis = 0 CC-*- O
Ergebnis < O CC"*- 1
Ergebnis > O CC ·*- 2
Überlauf CC <-3
C (Bit 13) - Übertrags-Bit des Addierers. Übertrag (1)
oder kein Übertrag (0) ergibt sich aus der ■· . Ausführung von Befehlen unter Heranziehung
der arithmetischen Funktionen des Addierers.
.' ' (Addieren, Subtrahieren, Multiplizieren,
Dividieren, Vergleichen und Negieren)
Prozess-Zeit- Ein Zeitgeber, der periodisch während der .geber(Bit 14-35)Bearbeitung des Prozesses herabgezählt wird.
Eine Zeitgeber-Auswurfausnähme tritt auf,
wenn der Zeitgeber den Wert Null erreicht. Der Zeitgeber wird jedesmal beim Ablauf von
512 Taktzyklen des Prozessors um 1 zurückgestellt. Bei einer Zykluszeit von 8o ns
führt dies zu einem Minimalwert von untje-/'
fähr 40 Ais und einem Maximalwert von 2,67 min.
Entsprechend der Zugriffsfrequenz zu dem Prozess-Zustandsregister PSR wird entweder für eine Modifikation oder eine Bezugnahme der
tatsächliche Wert des laufenden Prozesses in einem speziellen Register außerhalb des nicht dargestellten Allgemeinregister-Zwischenspeichers
abgespeichert. Änderungen in dem Register werden aus Leistungsgründen in dem Allgemeinregister GRQ nicht berücksichtigt.
Dieser dem Prozeßzustandsregister PSR zugeordnete Zwischenspeicher wird nur zur Sicherung des laufenden PSR-
Wertes für den Fall einer Unterbrechung benutzt. Alle Befehle,
welche das Allgemeinregister GRQ als einen Bestimmungsoperanden .
kennzeichnen, veranlassen eine Speicherung des Ergebnisses in dem Spezialregister für den PSR-Wert, wodurch das Allgemeinregister GRQ keine Veränderung erführt. Ein spezieller Befehl
kopiert den Inhalt des Prozeßzustandsregisters PSR in ein Generalregister GR, so daß dessen Inhalb als ein Operand benutzt
werden kann.
609842/0637
Befehlszähler (IC) Figur 2C - Der Befehlszähler speichert die Adresse des laufenden Befehls. Wenn Befehle eine Halbwort-Ausrichtung
aufweisen, so weist das niedrigstrangige Bit immer den Wert Null auf. Der Befehlszählerinhalt ist im Generalregister GR..
abgelegt und er besitzt das Format gemäß Figur 2C:
L/R (Bit O) - Intern/Extern (0) bestimmt den internen Speicher
121 r 122; (1) bestimmt den externen Speicher
122b, 123b
S (Bits 1-3) - Steuerung. Bestimmt, welcher externe Speicher
für die externe Speicherbezugnahme ausgewählt wird.
RFU (Bits 4-8)- Reserviert für zukünftigen Gebrauch IC (Bits'? 9-35) - Die (Byte)-Adresse des laufenden Befehls.
Seitentabellen-Basisregister (PTPR) Figur 2D - Das Seitentabellen-Basisregister
verweist auf die Seitentabelle, die benutzt wird, um eine seitenbezogene Adressenwiederauffindung für den laufenden
Prozeß zu erzeugen. Sie kann nur im Hauptbetrieb geladen werden. Das Register PTPR ist im Generalregister GR15 abgelegt und weist
das Format gemäß Figur 2D auf:
L/R (bit 0) - Intern/Extern
S (Bits 1-3) - Steuerung
L/R (bit 0) - Intern/Extern
S (Bits 1-3) - Steuerung
Programm Nr.(Bits 4-8) - Programmnummer. Ein Feld, welches von der
Software benutzt werden kann, um eine zusätzliche Programmidentifizierung durchzuführen.
Dieses Feld wird von der Prozessor-Hardware nicht beachtet.
Seitentabellen-Basis - Dies ist die absolute Adresse der Basis (Bits 9-29) der Tabelle des seitentabellenwortes für
diesen Prozeß. Wenn die Adresse auf 27 Bits durch addieren von sechs Nullstellen
an der rechten Seite aufgefüllt ist, so müssen die Seitentabellen-Adressen kongru-,
ent zu 0 mod 64 (Bytes) sein. Kennschlüssel (Bits 30-35) Dieser Kennschlüssel stellt einen
Prozeßidentifizierer dar, der benutzt wird um Seitentabellenworte den Prozessen zuzu-.
ordnen.
609842/0637
609842/0637
-■ 9 -
Allgemeinregister (GR) - Die verbleibenden 13 Register GR2 - GR-| 4
der zugünglichen Register gemäß Figur 2A sind Allgemeinregister. Diese können als Quellen- oder Bestimmungsoperanden benutzt werden
oder auch als Erst- oder Zweit-Pegeladressenmodifizierer.
Steuerblockbasis-Register (CBBR) Figur 2E - Die Steuerblockbasis
(CBB) gemäß den Figuren 2F und 2G ist eine absolute Adresse, welche auf die Basisadresse im Speicher des Ausnahmesteuerblocks(ECB)
gemäß Figur 2J und des Unterbrechungssteuerblocks (ICB) gemäß der Tabelle in Figur 2J hinweist. Das Steuerblock-Basisregister ist in
dem dem Allgemeinregister GR~ zugeordneten Zwischenspeicher für den Prozeß mit dem höchsten Prioritätsrang abgelegt. Zwei Werte CBB1
ein primärer und ein sekundärer, sind in dem Register abgelegt, welches das Format gemäß Figur 2E aufweist. Der erste Wert CBB gemäß
Figur 2F wird für alle Ausnahmen benutzt, und für alle Unterbrechungen mit Ausnahme jener, die den internen Speicherfehlern zugeordnet
sind. Im Falle der Benutzung ist der primäre CBB-Wert gemäß Figur 2F ausgebildet. Diese.'Ausbildung gestattet die Speicherung
von Basen der Tabellen des Ausnahmesteuerblockes ECB und " des Unterbrechungssteuerblockes ICB an, irgendeiner 512-Wortgrenze
in irgendeinem Speicher. In Figur 2F stellen dar: • L/R (Bit O) - Interner oder externer Speicher (SMie Fig.2C).
S (Bits 1-3) - Siehe Figur 2C
RFU (Bits 4-8) - Siehe Figur 2C
CBB1 (Bits 9-24) Adresse des primären Ausnahme-Steuerblockes
oder des primären Unterbrechungs-Steuerblockes.
Bits 25-35 - Gefüllt mit Nullstellen.
Der zweite CBB-Wert ist in Figur 2G dargestellt und wird aufgerufen
bei Unterbrechungen entsprechend interner Speicherfehler. Bei seinem Gebrauch ist der zweite CBB-Wert gemäß Figur 2G ausgebildet.
Diese Ausbildung gestattet die Ablage der Basen der Tabellen des Ausnahmesteuerblockes ECB und des Unterbrechungssteuerblockes ICB
an einer 512-Wortgrenze innerhalb der ersten 64K irgendeines Speichers.
Gemäß Figur 2G bedeuten:
609842/063
L/R (Bit O) - Interner oder externer Speicher (Siehe Fig.2C)
S (Bits 1-3) - Steuerung. Siehe Fig.2C RFU (Bits 4-8) - Reserviert für zukünftigen Gebrauch
Bits 9-17 - Gefüllt mit Nullstellen CBB2 (Bits 28-24)Adresse des zweiten Ausnahme-Steuerblockes oder
des zweiten Ünterbrechungs-Steuerblockes. Bits 25-35 - Gefüllt mit Nullstellen.
Die Ausnahme-Steuerblöcke und die Unterbrechungs-Steuerblöcke sind
in Bezug auf die Steuerblockbasis CBB-wie in Figur 2H dargestelltgespeichert. Es sei an dieser Stelle vermerkt, daß hinsichtlich der
Adresse der Unterbrechungs-Steuerblöcke ICB, bezogen auf die Steuerblockbasis
CBB, die relative Adresse der Unterbrechungs-Steuerblöcke zu der Steuerblockbasis hinzuaddiert wird, während hinsichtlich
der Adresse der Ausnahme-Steuerblöcke ECB deren relative Adresse von der Adresse der Steuerblockbasis CBB subtrahiert wird.
Prozeß-Steuerregister (PCR) - Ein Prozeßsteuerregister (PCR) ist allen Prioritätsrängen gemeinsam. Es weist das Format gemäß Figur21
auf:
.Ausnahmen (Bits 0-8)Jedes Bit bestimmt eine Nicht-Hauptspeicherausnahme
MME eines besonderen Typs
Paritätsfehler - Sie bestimmen den Ablaufpunkt in dem Prozessor,
- x . an welchem ein Paritätsfehler festgestellt
wurde.
LZ (Bit 16) - Es liegt keine Antwort auf eine Unterbrechung
LZ (Bit 16) - Es liegt keine Antwort auf eine Unterbrechung
mit dem Rang Null vor.
RFU (Bit 17) - Reserviert für zukünftigen Hardware-Gebrauch
T&D (Bit 18) - T&D-Betrieb. Ein Haltbefehl stoppt den Prozessor.
Alle Unterbrechungen bleiben unbeachtet. ROM (Bit 19) - ROM-Bit. Steuerzugriff zu dem Festwertspeicher
RFU (Bits 20-22)'- Reserviert für zukünftigen Hardware-Gebrauch
Prozessor Nr.u.Rang-Prozessor Nr. und Prioritätsrang des Prozesses
(Bits 23-26)
Sperr (Bit 27) - Unterbrechungs-Sperrbit
• UNT.ANF.(Bits28-35)-Unterbrechungs-Anforderungs-Bits. Jedes gesetzte
Bit bestimmt eine Software-Satzunterbrechung auf einem Pegelrang entsprechend
609842/0637
der Bit-Position. Die Pegelanforderung 7 (Bit 35) ist immer gesetzt. Die Prozessor-Satzunterbrechungen
mit den Pegeln 0-7 benutzen entsprechend die Bits 8-15 des Unterbrechungs-Steuerblocks
ICB.
Ausnahmen
Ausnahmen sind vom Prozessor festgestellte Zustände, die einen
automatischen Eintritt in eine Ausnahmeverarbeitungsroutine veranlassen. Ausnahmezustände können allmählich erzeugt werden oder sie
können das Ergebnis eines Programmierfehlers oder eines Hardwarefehlers außerhalb des Prozessors sein. Die Ausnahmebedingungen sind
wie unten dargestellt definiert. Für Nicht-Hauptspeicherausnahmen ist der Zusammenhang zwischen der Art der Ausnahme und der Bit-Position
des Prozeßsteuerregisters PCR in Figur 21 dargestellt.
0 Operation nicht vollständig(ONC). Keine Reaktion der
Schnittstelleneinheit SIU auf ARA oder ARDA.
1 Seitenadressen-Grenzfehler (Kennschlüsselprüfung)
2 Seitenzugriffsfehler
3 · Seite im Speicher nicht vorhanden
4 Illegale Operation (Ungültiger Befehl, illegaler Nebenbefehl oder illegale Nebenoperation)
5 . Prozeßzeitger-Ablauf
6 überlauf, wenn PSR CC = 11, Teilungsprüfung,wenn
PSR CC =00.
7 Verriegelungsfehler (Sperrunterbrechung für mehr als 40 yus) .
8 Adressen-Fehlausrichtung
Ausnahmezustände werden durch eine Vier-Bit-Ausnahmenummer gekennzeichnet.
Für Hauptbetriebs-Eingangsstellenausnahmen wird diese Nummer von den Bits 10-14 eines nicht dargestellten Befehls entnommen.
In allen anderen Fällen weist die Ausnahmenummer den Wert Null auf. Die Ausnahmenummer wird als eine Ausnahme-Steuerblocknummer
(ECB-Nummer) benutzt, um einen vlerwort-Ausnahme-Steuerblock (ECB) zu bestimmen, der auf die Ausnahme-Verarbeitungsroutine verweist.
Die Byte-Adresse eines Ausnahmesteuerblockes ECB ist gegeben durch:
609842/0637
ECB-Adresse = Steuerblockbasis -16 (ECB Nr. + 1) Das Format des Ausnahme-Steuerblockes ECB ist in Figur 2J dargestellt.
Gemäß Figur 2J ist ein PSR-Wort entsprechend Figur 2B
an der ersten Wortstelle abgelegt. Ein IC-Wort gemäß Figur 2C ist an der zweiten Wortstelle abgelegt. Weiterhin ist eine Bereichssicherungs-IIinweisadresse
SAP für das Prozessorpar O an der dritten Wortstelle des Ausnahme-Steuerblockes ECB O und eine
Bereichssicherungs-Hinweisadresse für das Prozessorpaar 1 an der dritten Wortstelle des Ausnahme-Steuerblockes 1 gemäß Figur
2H abgelegt.
Bevor mit einer Ausnahme-Verarbeitungsroutine begonnen werden kann, muß wichtige Information über den laufenden Prozeß gesichert
werden. Diese Sicherung erfolgt als Teil einer Prozessorantwort auf eine Ausnahme. Da die Ausnahmeauftritte verschachtelt
sein können, z.B. kann eine zweite Ausnahme auftreten, bevor die Verarbeitung der ersten Ausnahme beendigt ist, wird ein Stapel
benutzt, um Platz für die sichere Speicherung des Prozesses zu schaffen. Die /Stapelhinweisadresse wird als Sicherungsbereich-Hinweisadresse
SAP bezeichnet und an der dritten Wortstelle des Ausnahme-Steuerblockes ECBO abgelegt. Mehr-Prozessorsysteme erfordern
einen zweiten Stapel und die Sicherheitsbereich-Hinweisadresse für den zweiten Prozessor wird an der dritten Wortstelle
des Ausnahme-Steuerblockes ECB 1 abgelegt.
Wenn eine Ausnahme festgestellt wird, so vdrd die geeignete Sicherungsbereich-Hinweisadresse
aufgesucht und die Information über den ablaufenden Prozeß in dem Stapel in der"Reihenfolge gemäß
Figur 2K abgelegt. Die Sicherheitsbereichs-Hinweisadresse wird entsprechend ergänzt. Der in dem Stapel gemäß Figur 2K gespeicherte
Zählstand des Befehlszählers IC verweist auf den Befehl, der auf denjenigen innerhalb des Prozesses- folgt, der zu dem
Zeitpunkt vorlag, wo die Ausnahme festgestellt wurde. Die in dem letzten Stapelspeicherplatz gespeicherte Adresse ist die letzte
interessierende Adresse, die vor der Feststellung der Ausnahme erzeugt wurde. Nachdem diese Information über den laufenden Prozeß
in dem Stapel 2K sicher abgespeichert ist, werden die Inhalte
609842/0637
des Prozeßzustandsregister PSR1 des Befehlszählers IC und des
Seitentabellen-Basisregisters PTBR aus dem geeigneten Ausnahme-Steuerblock geladen und die durch diesen Prozessor benutzte
Adresse der Sicherheitsbereichs-Hinweisadresse wird in das Allgemeinregister GR0 geladen. Auf diese Weise wird der Eintritt
in die Ausnahme-Verarbeitungsroutine vervollständigt. Nach der Vervollständigung gibt die Ausnahme-Vaarbeitungsrou.tine einen
nicht dargestellten Spezialbefehl RMM aus, um zu dem Prozeß zurückzukehren, in welchem die Ausnahme festgestellt worden war.
Dieser Befehl lädt die Inhalte von PSR, IC, GR2, GR3, GR4,und
PCR und PTBR aus dem Stapel heraus und erniedrigt die Sicherheitsbereichs-Hinweisadresse
um 1. Wenn Ausnahmen und RMM-Befehle
nicht paarweise auftreten, so muß die Ausnahme-Verarbeitungs-Software sicherstellen, daß der Stapel aufrechterhalten bleibt.
Es gibt keine Fehlerüberprüfung hinsichtlich der Software-Handhabung der Stapel-Hinweisadresse oder hinsichtlich des
Stapel-^überlaufs oder -Unterlaufs.
Unterbrechungen
Unterbrechungen sind außerhalb des Prozessors festgestellte Ereignisse,*welche eine Reaktion des Prozessors erfordern. Unterbrechungen
des Prozessors IOP/P können einen von acht Prioritätsrängen aufweisen. Der Rang Null ist der höchste Prioritätsrang
und der Rang 7 entspricht dem niedrigsten Prioritätsrang. Um die zum Ansprechen auf eine Unterbrechungsanforderung erforderliche
Zeit zu minimalisieren, sieht der Prozessor IOP/P einen vollständigen
Satz von Registern für jeden der acht Prioritätsränge vor. Wenn eine Unterbrechung die Auslösung eines neuen Prozesses
veranlaßt, so bleibt der gerade laufende Prozeß unversehrt in den Registern,-die dem laufenden Prioritätsrang zugeordnet sind.
Die Steuerung kann auf den unterbrochenen Prozeß zurückkehren, indem der diesem Prozeß zugeordnete Prioritätsrang einfach reaktiviert
wird. Die Notwendigkeit der sicheren Speicherung und Neuspeicherung unterbrochener Prozesse zusammen mit dem damit verbundenen
Aufwand kann entfallen.
6 0 9842/0637
Die 16 Register für jeden Prioritätsrang sind in aufeinanderfolgenden
Blöcken in dem Zwischenspeicher. 328 des IOP/P mit 128 Bit-Wortlänge abgelegt. Die Register für den Prioritäts- .
rang O befinden sich an den Speicherplätzen 0-15 des Zwischenspeichers.
Da das Prozeßzustandsregister PSR.für den Prioritätsrang 0 niemals in den Zwischenspeicher übertragen wird, da ein
Prozeß mit dem Prioritätsrang 0 nicht unterbrochen werden kann, wird der Speicherplatz O des Zwischenspeichers zur Speicherung
der Steuerblockbasis benutzt, obgleich andere Register mit dem Prioritätsrang 0 benutzt werden könnten. Ein Nachrichtenaustausch
zwischen Registern auf verschiedenem Prioritätsrang ist nur über nicht dargestellte Hauptbetriebs-Kopierbefehle möglich, die den
Zwischenspeicher adressieren.
Die System-Schnittenstelleneinheit SIU-100 des Prozessors IOP
überwacht konstant den laufenden Prozeßrang des Prozessors und fordert Unterbrechungen von den Eingang/Ausgang-Systemmodulen an.
Jede ünterbrechungsanforderung bestimmt die Nummer des zu unterbrechenden
Prozessors, die Priortätsrangnummer der Anforderung
und die Steuerung, um den Ünterbrechungsanforderer zu bestimmen.
Diese Information befindet sich in jedem Modul,der Unterbrechungen
anfordern kann und hinsichtlich der meisten Module wird diese Information unter Verwendung programmierbarer Schnittstellenbefehle
gebildet. Immer wenn eine ünterbrechungsanforderung mit einem
höheren Prioritätsr.ang als der gerade laufende Prozessorrang vorliegt,
gibt die Schnittstelleneinheit SIU ein entsprechendes Unterbrechungssignal an die zu dem Prozessor führende Leitung ab.
Wenn verschiedene Unterbrechungsanforderungen mit gleichem Rang vorliegen, so bestimmt die Schnittstelleneinheit SIU auf der
Basis von Prioritäten,die durch die Anschlußnummer gegeben sind,
welche Anforderung an den Prozessor weitergeleitet wird. Wenn die Unterbrechung des laufenden Prozesses nicht gesperrt ist, so
veranlaßt eine Unterbrechungsanforderung den Prozessor IOP/P zur Aufgabe des gerade laufenden Prozesses und zur Annahme eines
Unterbrechungswortes von der Schnittstelleneinheit SIU. Das Unterbrechungswort besitzt hierbei das Format gemäß Figur 2L.
609842/0637
Der Aufbau des Wortes gemäß Figur 2L ist folgender: N (Bit;O) - Neu. Dieses Bit zeigt für den Fall, daß es
gesetzt ist an, daß die Unterbrechung eine neue Unterbrechung darstellt. Wenn das Bit
nicht gesetzt ist, so stellt das Unterbrechungswort eine vorangegangene unterbrochene
Unterbrechungsanforderung dar, die wieder
.aufgenommen wird.
M (Bit 1) - Nicht benutzt
RFU (Bits 2-17) - Reserviert für zukünftigen Gebrauch. Dieses
Feld muß O sein;aber es wird nicht überprüft
zwecks Sicherstellung, daß das Feld auch den Wert O aufweist. Bit 18 - Auf Null gesetzt
ICB Nr.(Bits 19-26)- Unterbrechungs-Steuerblocknummer
STEUERUNG (Bits 28-35)-Steuerung.'Diese Felds bestimmt den Unter-
brechungs-Anforderer. Die Bits 28 bis 35
werden von der Schnittstelleneinheit SIU erzeugt, und sie bestimmen den Quellenmodul
(SIU-Anschlußnummer) der Unterbrechung.
Zur Auslösung der Unterbrechungs-Verarbeitungsroutine werden vier Register aus dem Unterbrechungs-Steuerblock gemäß Figur 2J herausgeholt.
Wenn das Prozeßzustandsregister PSR geladen wird, wird das Steuerfeld des Unterbrechungswortes in das Steuerfeld des
Registers PSR eingefügt. Die anderen Register IC, GR14 und PTBR
werden durch aufeinanderfolgende Worte des Unterbrechungssteuerblockes ICB direkt geladen. Ein nicht dargestellter Freigabebefehl
REL wird benutzt, um als Folge einer Unterbrechung aus einem Prozeß auszusteigen. Nach einem Freigabebefehl REL wählt
die Schnittstelleneinheit SIU den wartenden Prozeß mit der höchsten Priorität zur Verarbeitung durch den Prozessor aus.
Dieser Prozeß kann ein zuvor unterbrochener Prozeß oder ein neuer Prozeß sein,der als Folge einer Unterbrechungsanforderung
ausgelöst wird. Bei gleichem Prioritätsrang besitzen zuvor unterbrochene Prozesse Priorität gegenüber neuen Unterbrechungs-
B09842/0837
anforderungen. Aufgrund von Hardware.und Software zum Laden des
Prozeßsteuerregisters PCR kann ein Prozessor der Schnittstelleneinheit
SIU eine Unterbrechung mit irgendeinem Rang 0-7 anbieten. Um jedoch eine wohldefinierte Reaktion auf einen Freigabebefehl
REL bei jedem Rang zu erzeugen, ist das die Unterbrechung mit dem Rang 7 anfordernde Bit des Prozeßsteuerregister PCR immer
gesetzt. Die Reaktion des Prozessors entspricht der durch eine normale Unterbrechung ausgelösten Reaktion, wenn ein neuer Prozeß
als Folge eines FreigabebefehJs REL bearbeitet wird und umfaßt die Annahme eines Unterbrechungswortes von der Schnittßtelleneinheit
SIU und den Zugriff zu einem Unterbrechungs-Steuerblock ICB. Wenn ein zuvor unterbrochener Prozeß erneut
bearbeitet werden soll, so gibt die Schnittstelleneinheit SIU lediglich die Rangnummer und die Tatsache aus, daß ein alter
Prozeß erneut bearbeitet werden soll. Da der Prozeßzustand zu dem Zeitpunkt seiner Unterbrechung in dem Zwischenspeicherregister
unversehrt vorhanden ist, bildet dies die einzige Information, die erforderlich ist, um den Prozeß erneut zu starten.
ΒΠ98Α2/0637
-* 17 -
O R 1 9 Π ^ /
Allgemeine Beschreibung des Prozessors IOP/P:
Allgemeine Beschreibung des Prozessors IOP/P:
Fi.gur 3 zeigt ein Blockdiagramm eines Prozessors gemäß der vorliegenden
Erfindung. Daten und Befehle von der System-Schnittstelleneinheit SIU werden in das Dateneingangsregister 310 eingegeben
und bearbeitete Daten werden an die Schnittstelleneinheit SIU über das Datenausgangsregister 312 abgegeben. Beim
taktweisen Eingeben der Daten und Befehle in das Register 310
wird eine Paritätsprüfung durchgeführt, so daß Paritätsfehler festgestellt werden. Befehle werden in einem zweifach auslesbaren Vorgriff-Register 314 abgelegt, welches vier Pufferworte für Befehle erzeugt. Ein 8-Rang-Steuerspeicher-Adressenschalter 316 (CSA-Schalter), der üblicherweise ein Multiplexer sein kann, erzeugt eine Adresse für den Steuaspeicher 318. Ein Rang des
CSA-Schalters 316 wird durch das Befehlsregister 314 über die Wegsuchereinheit 317 erzeugt. Der Steuerspeicher 318 enthält die Mikrobefehle zur Steuerung der Datenmanipulationen und ein
adressierter Mikrobefehl ist im Steuerspeicherregister 319 gespeichert.
taktweisen Eingeben der Daten und Befehle in das Register 310
wird eine Paritätsprüfung durchgeführt, so daß Paritätsfehler festgestellt werden. Befehle werden in einem zweifach auslesbaren Vorgriff-Register 314 abgelegt, welches vier Pufferworte für Befehle erzeugt. Ein 8-Rang-Steuerspeicher-Adressenschalter 316 (CSA-Schalter), der üblicherweise ein Multiplexer sein kann, erzeugt eine Adresse für den Steuaspeicher 318. Ein Rang des
CSA-Schalters 316 wird durch das Befehlsregister 314 über die Wegsuchereinheit 317 erzeugt. Der Steuerspeicher 318 enthält die Mikrobefehle zur Steuerung der Datenmanipulationen und ein
adressierter Mikrobefehl ist im Steuerspeicherregister 319 gespeichert.
Daten aus dem Eingangsregister 310 werden in einen Rang des
8-Rang-B-Schalters 320 geladen, der zusammen mit einem 2-Rang-A-Schalter 322 Operanden für ein Addier/Verschiebe-Netzwerk erzeugt. Der B-Schalter 320 wird durch ein Feld in dem Steuerspeicherregister 319 gesteuert. Der A-Schalter 322 erhält Eingangssignale von den zweifach auslesbaren Arbeitsregistern 326 und von dem Allgemeinregister-Zwischenspeicher 328 über das SPB-Register 330. Das Register 326 enthält drei Arbeitsregister und ein Abbild des Befehlszähler-Zählstandes IC, der in dem Allgemeinregister-Zwischenspeicher 328 enthalten ist. Der Leseausgang des Arbeitsregisters WRR wird dem A-Schalter 322 zugeführt und der Seitenadressierausgang des Arbeitsregisters WRP ist auf den Allgemeinregister-Zwischenspeicher 328 geschaltet. Eine 7-Bit-Adresse für den Allgemeinregister-Zwischenspeicher SPA wird
durch einen 1 aus 8-Schalter 332 erzeugt. Das Addier/Verschiebenetzwerk 324, welchem Operanden von dem B-Schalter 320 und dem A-Schalter 322 zugeführt werden, führt alle arithmetischen,
logischen und Verschiebeoperationen aus, die für eine Adressen-
8-Rang-B-Schalters 320 geladen, der zusammen mit einem 2-Rang-A-Schalter 322 Operanden für ein Addier/Verschiebe-Netzwerk erzeugt. Der B-Schalter 320 wird durch ein Feld in dem Steuerspeicherregister 319 gesteuert. Der A-Schalter 322 erhält Eingangssignale von den zweifach auslesbaren Arbeitsregistern 326 und von dem Allgemeinregister-Zwischenspeicher 328 über das SPB-Register 330. Das Register 326 enthält drei Arbeitsregister und ein Abbild des Befehlszähler-Zählstandes IC, der in dem Allgemeinregister-Zwischenspeicher 328 enthalten ist. Der Leseausgang des Arbeitsregisters WRR wird dem A-Schalter 322 zugeführt und der Seitenadressierausgang des Arbeitsregisters WRP ist auf den Allgemeinregister-Zwischenspeicher 328 geschaltet. Eine 7-Bit-Adresse für den Allgemeinregister-Zwischenspeicher SPA wird
durch einen 1 aus 8-Schalter 332 erzeugt. Das Addier/Verschiebenetzwerk 324, welchem Operanden von dem B-Schalter 320 und dem A-Schalter 322 zugeführt werden, führt alle arithmetischen,
logischen und Verschiebeoperationen aus, die für eine Adressen-
609842/0637
entwicklung und eine Befehlsausführung erforderlich, sind.
Ein Seitentabellenwort-Zwischenspeicher 334 speichert 16 Seitentabellenworte
.PTW" für jeden der acht Ränge des B-Schalters. 320.
Der Vier-Rang-Adressenschalter 335 verkettet Adressen entweder für programmierbare Schnittstellenbefehle oder Lese/Schreib-Speicherzyklen,
die seiten- oder absolutadressiert sein können. Der Ausgang des Addier/Verschiebenetzwerkes 324 kann über einen
Vier-Rang-Ausgangsschalter 338 auf den Ergebnis-Doppelkanal 340
(R-XBAR) und in das Daten-Ausgangsregister 312 gegeben werden. Der Doppelkanal erzeugt eine gleichzeitige Übertragung seiner
Eingangssignale sowohl zu dem Daten-Ausgangsregister 312 als auch
zu den Arbeitsregistern 326. Dem Schalter 338 werden ebenfalls Eingangssignale von einem Prozeßzustandsregister PSR-342 und
einem Przeßsteuerregister PCR-344 über einen Schalter 346 sowie aus dem Allgemeinregister-Zwischenspeicher 328 zugeführt.
Allgemejiregister-Zwischenspeicher
Der Allgemeinregister-Zwischenspeicher 328 enthält 128 Register mit je 40 Bit. Jedes Register enthält 4 Bytes mit 9 Bit und
1 Paritäts-Bit pro Byte. Die in den Zwischenspeicher eingeschriebenen Daten werden einem der vier Arbeitsregister an dem Ausgang WRP
entnommen. Die in dem Zwischenspeicher enthaltenen Register werden durch ein Prozeßzustandsregister PSR, einen Befehlszähler
IC, ein Seitentabellen-Basisregister PTBR, 13 Allgemeinregister GR
und ein Prozeßsteuerregister PCR gebildet. Die 7-Bit-Adresse für den Zwischenspeicher wird durch den 1 aus 8-Schalter SPA-332
erzeugt. Die Steuereingänge des Schalters sind direkt an den Ausgang des Steurspeicherregister CSR-319 angeschlossen. Die drei
höchstrangigsten Bits der Adresse bestimmen einen der acht Ränge und die vier niedrigrangigsten Bits bestimmen eines von 16 Registern
innerhalb des Ranges. Der Rang wird über nicht dargestellte aktive Unterbrechungsrangleitungen .AIL von der Schnittstelleneinheit
SIU für sechs der acht Positionen erzeugt. Die acht Adressenquellen sind folgende:
609842/0837
O) Sieben Bits des Konstanten-Feldes (2-8) des SteuerSpeicherregisters
CSR, welche die Adressierung irgendeines Registers in irgendeinem Rang gestatten;
Di - die AIL-Leitungen und vier Bits des Konstantenfeldes (5-8)
des Steuerspeicherregisters CSR, welche die Adressierung irgendeines Registers in dem vorliegenden Rang gestatten;
2) der Ausgang WER der Arbeitsregister mit den Bits 29-35. Mit diesen Bits bewirkt ein Arbeitsregister die Erzeugung der
Adresse entweder für eine Initialisierung oder eine Software-Adressierung;
3) Die AIL-Leitungen und Bits 19τ22 des laufenden Befehls. Diese
erzeugen die Leseadresse XR2 für eine Indizierung des zweiten Ranges;
4) die AIL-Leitungen und Bits 14-17 des laufenden Befehls.Diese
erzeugen die Leseadresse XR1 für die Indizierung des ersten Ranges oder die GR/GR2-Leseadresse für einen Operandenzugriff;
5) die AIL-Leitungen und Bits 9-12 des laufenden Befehls.Diese
erzeugen die GR1/GR-Leseadresse für einen Operandenzugriff;
6) die AIL-Leitungen und Bits 0-2 des Schreib/Adressregisters, wobei das niedrigrangigste Bit den Wert "1" aufweist. Hierdurch
wird die ungerade Adresse eines geraden/ungeraden Paares eines Lese- oder Schreibbefehls erzeugt.
7) die AIL-Leitungen und Bits 0-3 des Schreib/Adressregisters.
Hierdurch wird die Adresse beim Einschreiben in ein Allgemeinregister durch die Software auf dem vorliegenden Rang erzeugt.
Diese Adressenerzeugung umfaßt das Laden der Allgemeinregister
und das Zurückführen der sich bei der Ausführung ergebenden Resultate in das Ausgangs-Allgemeinregister.
Der Ausgang des Zwischenspeichers ist auf einen der beiden Schalter
33Oa geführt und geht zu dem SPB-Register 330, welches ebenfalls ein Eingangssignal für den Ergebnis-Doppelkanal 340 über
das Addier/Verschiebenetzwerk 324 bildet. Der Schalter in dem SPB-Register gestattet die Arbeit auf ,ein Allgemeinregister GR
und ein Arbeitsregister oder auf zwei Arbeitsregister durch
B 0 9 8 A 2 / 0 6 3 7
Laden einer "1" in das SPB-Register. Der Schalter 33Oa in dem
SPB-Register 330 wird durch das SP-Steuerfeld in dem Steuerspeicherregister
CSR-319 gesteuert.
Das Schreib/Adressregister 348 kann entweder von den Bits 9-12 oder den Bits 14-17 des laufenden Befehls geladen werden. Hierdurch
wird die Adresse zum Laden eines Allgemeinregistexs GR oder zur Rückführung eines Ergebnisses in ein Allgemeinregister
GR erzeugt. Dies ist erforderlich, da die Adresse für das Allgemeinregister GR in dem auszuführenden Befehl nicht langer an
dem zweifach auslesbaren Befehlszähler verfügbar ist, wenn dieser auf seinen neuesten Stand gebracht worden ist. Die Allgemeinregisteradresse
wird deshalb in dem Schreib/Adressregister WA-348
abgespeichert und für die Schreiboperation benutzt, indem ein Schreib-Flip-Flop,das mit dem Schreib/Adressregister verbunden
ist, gesetzt wird. Das Schreib-Flip-Flop W wird,nachdem es gesetzt
ist, mit dem ersten Takt danach zurückgesetzt, bis das Steuerfeld des Schreib/Adressregisteis WA in dem Steuerspeicherregister
CSR es erneut setzt. Ein Allgemeinregister-Zwischenspeicher-Schreibtaktimpuls
wird bei allen Takten erzeugt, die auftreten, während das Schreib-Flip-Flop W gesetzt ist und sofern
nicht die Schreibadresse bei irgendeiner Betriebsweise den Wert Null oder bei der Nebenbetriebsweise den Wert 15 aufweist.
Das SPB-Register 330 ist ein 40-Bit-Register. Es erzeugt eine
Pufferung für Worte, die aus dem Zwischenspeicher ausgelesen werden und spart somit die Zwischenspeicher-Zugriffszeit ein,
die sonst bei einer Addier/Verschiebeoperation erforderlich ist. Eine Paritätsprüfung wird hinsichtlich der Daten in dem SPB-Register
330 durchgeführt. Der SPß-Ladetakt wird durch das SP-Steuerfeld des Steuerspeicherregisters 219 gesteuert.
A- und B-Operandenschalter
Die A- und B-Operandenschalter erzeugen die beiden Operanden für
das Addier/Verschiebenetzwerk 324. Der A-Schalter 322 wählt entweder
den Ausgang des SPB-Registers 330 oder den WRR-Ausgang des Arbeitsregisters 326 aus. Die Auswahl wird durch ein Bit im
Steuerspeicherregister 319 gesteuert. Die Steuerung wird jedoch
609842/0637 · ·
zur Auswahl des WRR-Ausgangs gezwungen, wenn das Schreib-Flip-Flop
W gesetzt ist und die Adresse im Schreibftdressregister WA XR1 entspricht. Der neue Wert von XR1 oder GR2 wird somit zur
Verwendung herangezogen, wenn der vorangegangene Befehl diese Werte verändert hat. Der Schalterausgang wird zur Abgabe von
logischen Nullstellen veranlaßt, wenn in dem B-Schalter 320 die DL-Position ausgewählt wird und keine Indizierung aufgerufen
ist (XRI=O). Die Stellung des B-Schalter 320 wird durch ein Feld mit 3 Bit im Steuerspeicherregister 219 gesteuert. Das
niedrigrangigste Bit wird jedoch auf den Wert "1" gezwungen, wenn die DL-Position ausgewählt wird und eine Indizierung des
zweiten Ranges angefordert wird. Die acht Positionen des B-Schalters 320 sind wie folgt formatiert:
0) Die Bits 0-19 entsprechen dem Bit 19 des Befehlsregisterschalters
IRSW-319a. Die Bits 20-35 sind an die Bits 20-35 des Schalters IRSW angeschlossen. Diese bilden das Verschiebefeld
entweder für eine Erstrang- oder keine Indizierung;
1) die Bits 0-23 entsprechen dem Bit 23 des Schalters IRSW. Die Bits 24-35 sind an die Bits 24-35 des Schalters IRSW
angeschlossen. Diese bilden das Verschiebefeld für eine Zweitrangindizierung;
2) die Bits 0-30 entsprechen dem Bit 8 des Schalters IRSW.
Die Bits 31-35 sind an die Bits 9-13 des Schalters IRSW angeschlossen. Diese bilden den kurzen Sofortwert.
3) die Bits 0-17 entsprechen dem Bit 8 des Schalters IRSW. Die Bits 18-35 sind an die Bits 18-35 des Schalters IRSW
angeschlossen. Diese bilden den langen Sofortwert;
4) diese Stelle wählt den Ausgang WRR der zweifach auslesbaren
Arbeitsregister 322 aus;
5) die Bits 0-31 weisen den Wert 11O" auf. Das Bit 32 entspricht
dem höchstrangigsten Bit des. Konstantenfeldes des Steuerspeicherregisters CSR. Hierdurch wird die. Zahl 8
zur Erhöhung des Zählstandes des Befehlszählers IC vorgegeben, um auf das nächste gerade/ungerade Befehlspaar '
(.8 Bytes) im Speicher zu verweisen. Die Bits 33 und 34 verweisen auf die Wortlänge in Bytes des laufenden Befehls,
wenn die beiden höchstrangigsten Bits des Konstantenfeldes
des SteuerspeicherregisterßS^ den Wert Null aufweisen.
609842/063 7
Die Bit-Kombination 10 verweist hierbei auf eine Ganzwortlänge und die Bit-Kombination 01 auf eine Halbwortlänge.
Das Bit 35 entspricht dem Übertrags-Bit in dem Prozeß-zustandsregister PSR7 wenn das auf das höchstrangigste
Bit folgende Bit des Konstantenfeldes im Steuerspeicher-• regiser CSR den Wert 1 aufweist;
6) die Bits 0-26 weisen den Wert Null auf. Die Bits 27-35
. . sind an das Konstanteifeld des Steuer/Speicherregisters CSR
angeschlossen.
7) durch diese Position wird das Daten-Eingangsregister DI-310 der Schnittstelleneinheit angewählt;
Addier/Verschiebeschaltkreis
Dieser als logische Addiereinheit ALU. bezeichnete Schaltkreis führt arithmetische und logische Operationen mit jeweils 36 Bit
aus. Diese Einheit erzeugt ferner einen Datenübertragungsweg für die Operanden A oder B zu dem Doppelkanal 340. Die Operationen
der Recheneinheit ALU werden durch ALU/Verschiebe-Eingangs-Bits des Steuerspeicherregisters 319 gesteuert. Die Betriebsweise der
Recheneinheit wird durch das niedrigrangigste Bit innerhalb der Steuer-Bits in dem Steuersp icherregister gesteuert.
Seitentabellenwott(PTW)-Zwischenspeicher
Der PTW-Zwischenspeicher 334 besorgt die Speicherung von 16 SeitentabeUenwörtern für jeden der acht Prioritätsränge, was zu
128 SeitentabeUenwörtern führt. Der Ausgang des B-Operandenschalters
320 erzeugt die Schreibdaten für den Zwischenspeicher und der Schreibtakt wird hierbei durch ein Bit in dem Steuerspeicherregister
319 gesteuert. Die PTW-Zwischenspeicheradresse wird entweder durch die niedrigrangigsten 7 Bits des Ausgangs WRP
des Arbeitsregisters 326 oder durch den Rang und die Bits 21-24 des Ausgangs WRP erzeugt. Die erste Bit-Position dient der Auslösung
und der übertragung des Seitentabellenwortes vom Allgemeinregister
GR zur Basistabelle. Die zweite Bit-Position dient dem Lesen und Laden von Seitentabellewörtern, wenn entsprechende
Adressen in den SeitentabeUenwörtern fehlen. Die Adressenauswahl wird durch ein Bit im Steuerspeicherregister CSR-319 gesteuert.
609842/0637
Jedes Byte des PTW-Zwischenspeichers wird am Ausgang einer
Paritätsprüfung unterzogen. Der Ausgang des Zwischenspeichers 334 versorgt zwei der vier Adressenschalterpositionen mit Eingängsdaten.
Wenn der Ausgang des PTW-Zwischenspeichers durch die "Seiten"-Stellung des Adressenschalters ausgewählt wird, so werden
die folgenden Überprüfungen durchgeführt, um festzustellen, ob das Seitentabellenwort gültig ist: s
1) die Bits 30-35 des Seitentabellenwortes werden mit einem ■ Kennschlüsselregister 372 verglichen. Das Kennschlüsselregister
bestimmt hierbei den Prozeß> ..dem das Seitentabellenwort
zugeordnet ist und es wird mit den Bits 30-35 des Ausganges WRP jedesmal dann geladen, wenn GR 15 geladen
wird;
2) Sie Bits 27-29 des Seitentabellenwortes werden mit den Bits
18-20 am Ausgang WRP verglichen. Dieser Vergleich erfolgt,
. um festzustellen, ob das korrekte Seitentabellenwort am Speicherplatz des PTW-Zwischenspeichers vorhanden ist?
3) die nächste übeprüfung wird durchgeführt, um festzustellen,
ob die Seite im Lese/Schreibspeicher 122b 123b vorhanden ist,
Eine Nullstelle an der Bit-Position 6 des Seitentabellenwortes zeigt an, daß die Seite im Speicher nicht vorhanden
ist?
4) wenn die ersten drei Prüfungen erfolgt sind, werden die Bits 4-5 des Seitentabellenwortes mit dem ausgelösten Operationstyp vergIijenen.. Das Lesen von Daten ist immer legal. Ein
Befehlsabruf fordert das Bit 4 an, während eine Leseoperation das Bit 5 anfordert.
Wenn das Seitentabellenwortin dem Zwischenspeicher bei einer der
vorgenannten Prüfungen einen Fehler ergibt, so wird es aus der Seitentabelle im Lese/Schreibspeicher geholt und erneut überprüft,
bevor eine Ausnahme angezeigt wird..
Das Adressenwort entweder für den Lese/Schreibspeicher oder die programmierbare Schnittstelle wird in dem Adressenschalter 336
erzeugt. Der Schalter 336 wird durch d'ie Adressenschalter- ·
Steuer-Bits in dem Steuerspeicherregister 319 gesteuert. Wenn die
609842/0637
"Seiten"-Position ausgewählt wird und das Prozeßzustandsregister
PSR die absolute Adressierweise anzeigt,so wird die "Absolut"-Stellung des Schalters eingenommen, so daß die Seitentechnik
unterdrückt wird. Die vier Schalterstellungen sind folgende :
0) Diese Position erzeugt die Seitenadressierung des Lese/-Schreibspeichers.
Nimmt das Bit O den Wert O ein, so bestimmt eine Lese/Schreibadresse. Die Bits 1-3 werden durch
die Zonenadress- und Steuer-Bits (ZAC-Bits) im Steuerspeicherregister erzeugt. Das Bit 4 weist den Wert O auf.
Die Bits 5-8 stellen die Zonen-Bits dar und werden als eine Funktion der Lese/Schreibspeicheroperation erzeugt. Leseoperationen
veranlassen die Erzeugung von Nullstellen, während Schreiboperationen hinsichtlich eines Wortes oder
Doppelwortes die Erzeugung von E ine;r stellen bewirken. Das
Schreiben eines Bytes verusacht eine 1 in der zu schreibenden Byte-Position. Die Bits 9-24 entsprechen dem PTW-Zwischenspeicher
9-24, welcher die Seitenbasisadresse darstellt. Die Bits 25-35 entsprechen den Bits 25-35 am Ausgang
WRP, welche die seitenbezogene Adresse darstellen. Wenn diese Position ausgewählt wird, muß der Ausgang WRP der
Arbeitsregister die nicht-seitenunterteilte Adresse angeben.
1) Diese Position erzeugt die Lese/Schreibspeicheradresse, wenn keine Seitenunterteilung gefordert ist. Sie kann durch
das Steuerspeicherregister CSR ausgewählt werden oder wird zwangsweise angewählt, wenn die Position 0 angewählt ist
und das Steuerspeicherregister PSR das absolute Adressierverfahren verlangt. Die Bits o-8 entsprechen denjenigen
Bits der Position Null. Die Bits 9-34 entsprechen dem Ausgang WRP 9-35, der der absoluten 'Speicheradresse entsprechen
muß, wenn diese Position ausgewählt wird.
2) Diese Position erzeugt ein programmierbares Schnittstellen-(PI)-Steuerwort.
Entspricht das Bit 0 dem Wert "1", so bestimmt es ein PI-Steuerwort. Das Bit 1 wird durch das ZAC-
PeId des Steuerspeicherregisters erzeugt. Das Bit 2 entspricht
dem Bit 9 des ProzeßzustandsregistersPSR und
1 609842/0637
bestimmt, ob das laufende Programm gewisse externe Register
verändern kann. Das Bit 3 entspricht der Prozessornummer, die durch die Schnittstelleneinheit SIU erzeugt
wird. Das Bit 4 weist den Wert Null auf. Die Bits 5-8 entsprechen den Bits 4-7 des Prozeßzustandsregisters PSR und
sie bestimmen den Anschluß innerhalb des Multiplexers. Die Bits 9-35 entsprechen dem Ausgang WRP 9-35 und sie müssen
der absoluten Adresse entsprechen, die entweder für einen externen Lesebefehl RDEX oder einen externen Schreibbefehl
WREX erzeugt wird.
3) Diese Position erzeugt den Datenübertragungsweg zum Lesen eines Seitentabellenwortes PTW aus dem Zwischenspeicher.
Die Bits 0-2 des Adressenschalters 336 werden modifiziert,um die
Lese/Schreib-Speichersteuerung während des Ladens der absoluten Adressen in das Alügemeinregister GR wiederzugeben. Die Bits 0-2
des PTW-Zwischenspeichers geben somit eine Seitenadressierung und
die Bits 0-2 am Ausgang WRP eine absolute Adrresierung an. Dies wird durch die Auswahl der Stellung Null für den Adressenschalter
ermöglicht, falls kein.. Lese/Schreib-Speicherzyklus durch die Steuer-Bits des Steuerspeicherregisteis CSR bei einer Anforderung
durch die Schnittstellensteuerung SIÜ ausgelöst wird. Der Steuerschalter
ruft die Steuerung der Schnittstelleneinheit SIU entweder bei einem Lese/Schreib-Speicherzyklus oder bei einem programmierbaren
Schnittstellenbefehl hervor. Die Steuerung erfolgt durch die Steuer-Bits des Adressenschalters in dem Steuerspeicherregister
CSR.
Die Steuerung wird für den Lese/Schreibspeicher wie folgt erzeugt:
Bit 0 Dieses Bit weist den Wert 0 für den Lese/Schreibspeicher auf,
Bit 1 Dieses Bit bestimmt den internen oder externen Speicher. Es entspricht dem PTW-Bit 0 bei einer Seitenadressierung
oder dem WRP-Bit 0 bei einer absoluten Adressierung. Bits 2-4Diese Bits stellen die Speicher-Steuer-Bits dar. Der anfängliche
Wert entspricht den PTW-Bits 1-3 bei einer Seitenadressierung
oder den WRP-Bits 1-3 bei einer absoluten Adressierung. Diese Werte bilden ebenfalls den endgültigen
609842/Ü637
Wert, wenn das Bit 1 einen externen Speicher bestimmt. Wenn
das Bit 1 einen internen Speicher bestimmt, so bestimmen die Bits 2 und 3 den Anschluß des internen Speichers und die
Steueradressen für den Festwertspeicher in dem Steuerwerk
des internen Speichers. Das Bit 2 entspricht der Exklusiv-Oder-Verknüpfung des anfänglichen Wertes und der internen
Speicher-Anschlußkennzeichnungsleitung von der Schnittstelle
SIU. Das Bit 3 entspricht der Exklusiv-Oder-Verknüpfung
des PCR-Festwertspeicher-Bits, falls der anfäng-
: " liehe Wert Null ist.
Bit 5 Dieses Bit definiert einen Ein- oder Doppelwort-Speicherzyklus.
Es entspricht dem Bit 1 des ZAC-Feldes des Steuerspeicherregisters
CSR.
Bit 6 Dieses Bit definiert einen Lese- oder Schreibzyklus. Es
entspricht dem Bit O des ZAC-Feldes des Steuerspeicherregisters CSR.
Die Steuerung für einen programmierbaren Unterbrechungsbefehl (PI-Befehl) wird wie folgt erzeugt:
Bit O Dieses Bit entspricht dem Wert 1 für einen PI-Befehl.
Bits 1-4'Diese Bits bestimmen den Anschluß der Schnittstelleneinheit
SIU,an den der PI-Befehl gerichtet ist und sie entsprechen
den Bits 0-3 des Prozeßzustandsregisters PSR.
Bits 5-6 Diese Bits sind die gleichen wie bei einem Lese/Schreibspeicherzyklus
und werden in der gleichen Weise erzeugt.
Die Ausgänge des Steuerschalters werden in das Steuerregister in der Schnittstelleneinheit SIU zu jedem Zeitpunkt taktweise ein- .
gegeben, zu dem ein Speicherzyklus oder ein PI-Befehl ausgelöst wird.
Ergebnis-Doppelkanal
Der Ergebnis-Doppelkanal (R-XBAR) 340 erzeugt eine gleichzeitige übertragung seiner Eingänge sowohl zu dem Daten-Ausgangsregister
312 als auch zu dem Arbeitsregister 326. Ein dritter Ausgang ist an eine nicht dargestellte Anzeigetafel angeschlossen und bildet
den Datenweg für die Anzeige des Inhalts der meisten Register des Prozessors IOP/P. Der Ausgang zu dem Arbeitsregister wird
durch die Schreibadressen-Bits in dem Steuerspeicherregister CSR
609842/0637
gesteuert und kann auf irgendeinen von vier Eingängen geschaltet werden. Der Ausgang zu dem Daten-Ausgangsregister 312 wird durch
das Datenausgangs-Schreibadressen-Bit in dem Steuerspeicherregister
CSR gesteuert und kann entweder den Addier/Verschiebe-Ausgangsschalter 338 oder den Adressenschalter 336 auswählen.
Wenn die nicht dargestellte DPCR-Leitung von der Schnittstelleneinheit SIU aktiviert wird, muß diese Position jedoch den PSR/
PCR-Eingang auswählen.
0) ALU/Verschiebe-Ausgangsschalter
1) Adressenschalter
2) PSR/PCR-Schalter
3) SPB-Eingangsschalter
Arbeitsregister
Die vier Arbeitsregister sind in der zweifach auslesbaren Registerreihe
326 enthalten. Das Register 0 enthält den laufenden Inhalt des Befehlszähler IC. Die Register 1,2 und 3 sind Arbeitsregister für die Befehlsausführung. Sie sind mit R1 , R2 und R3
bezeichnet. Die beiden Ausgänge der Arbeitsregister sind mit WRP und WRR 'bezeichnet. Der Ausgang WRP wird benutzt, um auf Seitentabellenworte
des PTW-Zwischenspeichers Zugriff zu nehmen sowie für die Lese/Schreibspeicher-Adressenerzeugung· und er ist zu
dem Allgemeinregister-Zwischenspeicher 328 und zu dem SPB-Register 330 geführt. Die durch den Ausgang WRP freigegebenen
Register werden durch die WRP-Bits in dem Steuerspeicherregister 319 gesteuert. Der Ausgang WRR wird benutzt, um Operanden an die
Schalter 322 und 320 sowie an die Eingänge der beiden Register PSR und PCR zu legen. Die durch das Ausgangssignal WRR freigegebenen
Register werden durch die WRR-Bits in dem Steuerspeicherregister 319 gesteuert. Die Arbeitsregister können durch irgendeinen
der Doppelkanal-Eingänge geladen werden. Das zu ladende Register und der Schreibtakt wird durch die Schreibadresse und
die Schreib-Bits in dem Steuerspeicherregister CSR-319 gesteuert.
Hinsichtlich für Lese- bzw. Schreiboperationen ausgewählten Registerngibt
es keine Unterschiede. Es können drei verschiedene Register vorhanden sein oder es können alle Register gleich sein.
6 0 9842/0637
2&12034
PSR/PCR j. ....
Das Prozeßzustandsregister PSR-342 befindet sich außerhalb des
Allgemeinregister — Zwischenspeichers, da es fortlaufend überwacht
und ergänzt wird. Es wird von dem Ausgang WRR der Arbeitsregister 326 geladen. Ein Schreibtakt wird jedesmal für das
Prozeßzustandsregister PSR erzeugt, wenn ein Programm im Hauptbetrieb das Allgemeinregister GRO lädt oder die Steuer-Bits
der Register PSR/PCR in dem Steuerspeicherregister CSR eine Schreiboperation hinsichtlich des Prozeßzustandsregister PSR
bestimmen. Das gesamte Prozeßzustandsregister PSR wird während einer Ladeoperation von GRO .im Hauptbetrieb, während der Aus-,
führung einer Ausnahme des ECB oder der Ausführung eines DISP-, MME-, RMM- oder REL-Befehls geladen. Wenn eine Unterbrechung
ausgeführt wird, so wird vor dem Laden die Steuerung von dem ünterbrechungs-Datenwort aus dem ICB in die Daten des Prozeßzustandsregisteis
PSR eingefügt.
Ein Zustands-Code CC, ein Übertrag C und ein Prozeßzeitgeber
werden fortlaufend ergänzt. Der Zustands-Code CC wird jedesmal geladen, wenn ein Befehl ausgeführt wird, der eine Ergänzung des
Zustands-Codes erfordert. Der übertrag C wird jedesmal dem Übertragsausgang
der arithmetischen Recheneinheit ALU entnommen, wenn der Zustands-Code CC geladen wird und die ALU im arithmetischen
Betrieb arbeitet. Der Prozeßzeitgeber wird jeweils um 1 herabgezählt,
wenn das nicht dargestellte Zeitnormal überläuft. Das Zeitnormal wird durch einen 8-Bit-Zähler repräsentiert, welcher alle
Systemtakte zählt. Das Zeitnormal wird ferner benutzt, um eine nicht vollständige Operation festzustellen oder um eine Ausnahme
zu verriegeln, wie sie unter dem Abschnitt "Ausnahmen" beschrieben wurde.
Das Prozeßsteuerregister PCR-344 ist allen Prioritätsrängen gemeinsam
zugeordnet. Es wird von dem Ausgang WRR der Arbeitsregister geladen. Hierbei sind jedoch nicht alle Bits ladbar. Ein
Schreibtakt wird hinsichtlich der ladbaren Bits erzeugt, wenn die PSR/PCR-Steuer-Bits in dem Steuerspeicherregister CSR eine
PCR-Schreiboperation definieren. Die Bits 18-19 und 28-34 sind
609842/0637
_ 29 -
. 2612Ü34
ladbar. Die Bits 0-16 werden gesetzt, wenn der definierte Zustand
auftritt und sie werden durch eine Setz/Rückstell-Bit-Steucrung in dem Steuerspeicharregister CSR zurückgestellt. Die Bits 23-26
sind zum Lesen durch die Software vorgesehen.
Der PSR/PCR-Schalter in dem Doppelkanal R-XBAR wählt das entsprechende
Register zum Laden in die Arbeitsregister aus. Dieser Schalter wird durch die PSR/PCR-Steuer-Bits in dem Steuerspeicherregister
CSR gesteuert und wird zur Auswahl von PCR gezwungen, wenn die DPCR-Leitung von der Schnittstellenhext SIU
aktiviert wird.
Die zweifach auslesbare Registeranordnung 314 erzeugt vier Worte
für eine Befehlspufferung. Der Leseausgang für den laufenden Befehl CIR-380 und der Leseausgang für den nächsten Befehl NIR 38Oa
erzeugt einen Zugriff zu dem gesamten Befehl, unabhängig von der Befehlslänge und der Adresse. Dies wird durch den Befehlsregisterschalter
IRSW-319 verwirklicht. Die CIR-Adresse entspricht
den Bits 32 und 33 des laufenden Befehlszählers IC, welche Bits auf eines der vier Worte verweisen. Die NIR-Adresse wird erzeugt,
um auf das folgende Wort zu verweisen. Der Schalter IRSW-319a
wird durch das laufende Bit 34 des Befehlszählers IC gesteuert, wodurch festgelegt wird, ob der Befehl mit einer Wort- oder Halbwortadresse
beginnt. Die beiden Stellungen des Schalters IRSW-319a sind deshalb: (0) CIR-Bits 0-35 und (1) CIR-Bits 18-35,
NIR-Bits 0-17. Die Bits 0-17 des Schalters IRSW geben einen
Halbwort-Befehl und die Bits 0-35 des Schalters IRSW geben einen Ganzwort-Befehl wieder. Die CIR- und NIR-Adressen werden jedesmal
ergänzt, wenn der Befehlszähler IC des Arbeitsregisters ergänzt wird. Alle Felder des Befehlswortes müssen d4her vor einer
Ergänzung des Befehlszählers IC benutzt werden.
Das Befehlsregister IR-314 wird jedesmal geladen, wenn ein neuer
Wert in den Befehlszähler IC aufgrund einer Unterbrechung, einer Ausnahme, einer Verzweigung usw. geladen wird oder jedesmal dann,
wenn die CIR-Adresse eine Zweiwortgrenze tiberschreitet und der Befehlszähler IC durch die laufende Befehlslänge ergänzt wird.
609842/0637
Die Befehls-Zugriffssteuerung ist nachstehend für zwei Zustände beschrieben, wobei der Zustand 1 dem Eintritt in eine neue Prozedur
und der Zustand 2 der Erhöhung durch die laufende Prozedur entspricht. In beiden Fällen stellen sich die Befehlsabrufe
als Speicherzyklen mit doppelter Präzision dar und die Adressierung erfolgt seitenunterteilt, sofern nicht das Prozeßzustandsregister
PSR ein absolutes Adressierverfahren festlegt. 1) Der Doppelwort-Befehlsabruf wird ausgelöst und die Befehlsregister-Schreibadresse
mit dem Takt geladen, der den neuen Wert des Befehlszählers IC in Seiten unterteilt. Die Befehlsregister-Schreibadresse
wird mit OO geladen, wenn das Bit 32 des Befehlszählers den Wert 0 aufweist oder sie wird
mit 10 geladen, wenn das Bit 32 des Befehlszählers IC den
Wert 1 aufweist. Die CIR- und NIR-Adressen v/erden geladen,
wenn der neue Wert des Befehlszählers IC geladen ist. Wenn das erste Wort im Speicher verfügbar ist, wird es in das Be- '
fehlsregister IR eingeschrieben und es wird das niedrigrangigste Bit der Schreibadresse gesetzt. Hierdurch wird
das nächste Speicherwort in das zweite Wort des Paares (01 oder 11) geschrieben. Der Wert des BefehlszählersIC+8
(Bytes) wird sodann benutzt, um eine andere Speicherauslesung mit doppelter Präzision unter Heranziehung der seitenunterteilten
Adresse auszulösen. Die Befehlsregister-Schreibadresse wird mit den nächsten zwei Worten ergänzt
(10'wenn IC-Bit 32=0 oder 00 wenn IC-Bit 32=1) und es wird ein Test durchgeführt, um festzustellen, ob die Befehlsausführung
beginnen kann oder warten muß, bis der Speicherzyklus vollendet ist. Der Test wird mit dem Bit 33 des Befehlszählers
IC durchgeführt. Wenn der Test ergibt, daß eine neue Prozedur mit dem letzten Halbwort eines Zweiwortpaares
(33, 34=1, 1) begonnen wurde, so muß die Befehlsausführung verzögert werden, bis die Daten aus dem zweiten ?·
Zyklus mit doppelter Präzision verfügbar sind, um zu gewährleisten, daß das Befehlsregister IR ein vollständiges
Befehlswort enthält.
60 9842/0637
2) Die Ausführung eines jeden Befehls umfaßt die Ergänzung des Befehlszählers IC durch die Länge des jeweiligen Befehles.
Wenn diese Ergänzung den Befehlszähler IC zur •■ Überschreitung einer Zweiwortgrenze (alter IC 32 = neuer
IC 32) veranlaßt, so kann der Zweiwortbereich des Befehlsregisters IRfder gerade beendet wurde, (alter IC 32 Wert)
mit neuen Befehlen geladen werden. Der neue IC-Wert plus acht (Bytes) wird sodann benutzt, um eine Speicherlese-·
Operation mit doppelter Präzision unter Verwendung der seitenunterteilten Adressierung auszulösen. Die Befehlsregister-Schreibadresse
wird ergänzt, um auf den verfügbaren Befehlsregisterbereich hinzuweisen. Wenn die beiden
Worte empfangen werden, werden sie in den Zweiwortbereich, wie zuvor beschrieben, eingeschrieben.
Steuerspeicher-Adressierung und Fortschaltung Die SteuerSpeicheradresse wird in dem CSA-Schalter 316 er-
en
zeugt. Die ersten vier Position des CSA-Schalters werden durch das CSA-Schalter-Steuerfeld in dem Steuerspeicherregister CSR-319 gesteuert. Der CSA-Schalter 316 kann das Nächstadressregister NA 382, das Rückkehradressregister RA-384, das Ausführadressregister XA-386 oder den Ausgang des Standardfolge-Decodiernetzwerkes SS-388 auswählen. Die Ausnahme-Unterbrechungsposition wird zwangsweise eingenommen, wenn irgendeiner dieser beiden Zustände vorliegt. Die"Ausnahmeadresse wird wiedergegeben, sofern nicht eine Unterbrechung ausgeführt wird. Die beiden PTW-Fehlpositionen liegen zwangsweise vor, wenn das Fehlen eines Seitentabellenwortes PTW festgestellt wird. Die Konstantenposition wird gewählt, wenn das Verzweigungs-Steuerfeld in dem Steuerspeicherregister CSR eine Verzweigung nach der Konstantenadresse anfordert.
zeugt. Die ersten vier Position des CSA-Schalters werden durch das CSA-Schalter-Steuerfeld in dem Steuerspeicherregister CSR-319 gesteuert. Der CSA-Schalter 316 kann das Nächstadressregister NA 382, das Rückkehradressregister RA-384, das Ausführadressregister XA-386 oder den Ausgang des Standardfolge-Decodiernetzwerkes SS-388 auswählen. Die Ausnahme-Unterbrechungsposition wird zwangsweise eingenommen, wenn irgendeiner dieser beiden Zustände vorliegt. Die"Ausnahmeadresse wird wiedergegeben, sofern nicht eine Unterbrechung ausgeführt wird. Die beiden PTW-Fehlpositionen liegen zwangsweise vor, wenn das Fehlen eines Seitentabellenwortes PTW festgestellt wird. Die Konstantenposition wird gewählt, wenn das Verzweigungs-Steuerfeld in dem Steuerspeicherregister CSR eine Verzweigung nach der Konstantenadresse anfordert.
Das Nächstadressregister NA-382 wird bei jedem Ausführungstakt mit
der Summe des Ausgangs des CSA-Schalters/ 316 plus 1 plus eine Zustands-Sprungkonstante
390 geladen. Wenn durch das CSR-Sprungsteuerfeld keine Sprung gefordert wird, so wird das Nächstadressregister
NA-382 mit der Adresse des Mikrobefehls geladen, der unmittelbar auf den Mikrobefehl fotgi auf cUvt Zugriff genommen wurde. Das
609842/0637
heißt, daß der Takt, der den Mikrobefehl an der Adresse M in das Steuerspeicherregister CSR lädt, die Adresse M+1 in das Nächstadressregister
NA lädt. Wenn eine Zahl von Mikrobefehlen bedingungcgemäß übersprungen werden muß, so kann das CSR-Sprungfeld
festlegen, daß ein Sprung ausgeführt wird, wobei das CSR-Konstantenfeld
die zu testende Bedingung und die Anzahl der zu überspringenden Mikrobefehle festlegt. Die Schrittfolge bei einem
Sprung ergibt sich wie folgt: Der Mikrobefehl an der Adresse M ruft einen bedingten Sprung hervor: Durch die Ausführung dieses
Mikrobefehls wird M+1 in das SteuerSpeicherregister CSR geladen
und es wird die Adresse von M+1+1+SKP in.-das Nächstadressregister
NA geladen. M ist ein Speicherplatz im Steuerspeicher 318. SKP nimmt den Wert Null ein, wenn der Sprung nicht zufriedenstellend
wird
ausgeführt und SKP nimmt die Sprungzahl ein, die durch die niedrig-
ausgeführt und SKP nimmt die Sprungzahl ein, die durch die niedrig-
ten
rangigsten drei Bits des CSA-Konstanfeldes bestimmt sind, wenn der Sprung den Bedingungen genügt. Der Sprung wird gesperrt, wenn irgendeine der letzten vier Positionen in dem CSA-Schalter ausgewählt wird.
rangigsten drei Bits des CSA-Konstanfeldes bestimmt sind, wenn der Sprung den Bedingungen genügt. Der Sprung wird gesperrt, wenn irgendeine der letzten vier Positionen in dem CSA-Schalter ausgewählt wird.
Die Bedingungen, die hinsichtlich der Sprungausführung überprüft werden können, sind durch die Bits 3-5 des CSR-Konstantenfeldes
definiert. WRR 35, WRR O, WRR 33 und das Übertrags-Bit im Prozeßzustandsregister
PSR müssen auf den Wert Null oder 1 überprüft werden. Das PER-Zustands-Code-Feld wird auf Null, eins, zwei oder
drei überprüft. Die Bits 1-2 des Konstantenfeldes werden herangezogen, um den Test festzulegen. Die zu testenden Zustände sind
folgende:
0) WRR 35=K2 wenn K1 = 1
WRR 0=K2 wenn K 1=0
WRR 0=K2 wenn K 1=0
1) Übertrags-Bit in PSR=K2
2) WRR 33-34=Ki-2
3) Adresss-ilbe (AS) mitlRSW 18=0
4) PSR Zustands-Code-Feld weist entsprechendes Bit im IRSW CF
Feld auf
5) PSR Zustands-Code-Feld=Ki-2
6) IRSW 7=WRR0 wenn K1=O
IRSW 7=K2 wenn K1=1
IRSW 7=K2 wenn K1=1
60984 2 /0G37
7) Höherer Unterbrechungsrang oder Rang Null auf Leitung von Schnittstelleneinheit SIU vorliegend, wenn K2=O.
. Rang Null-Unterbrechung auf Leitung von Schnittstolleneinheit SIU vorliegend,wenn Κ2=1.
Das Rückkehr-Adressregister RA-384 wird von dem Nächstadressregister
NA-382 geladen, wenn immer das Lade-Bit für das Register RA in der Steuerspeichereinheit CSR vorliegt.
Das Ausführungs-Adressregister XA-386 wird mit dem Ausgang des Wegsuchers 217 jedesmal geladen, wenn die Standardfolge-Position
durch den CSA-Schalter ausgewählt wird. Die Benutzung des Wegsuchers
wird weiter unten beschrieben. Sein Ausgang weist ein Steuer-Bit und acht Adress-Bits auf. Die Adresse wird benutzt,
um die oberen 256 Worte des Steuerspeichers zu adressieren. Das Adress-Bit Null wird zwangsweise auf 1 gesetzt, wenn der CSA-Schalter
216 die Position XA einnimmt.
Die Ausführung eines Software-Befehles erfolgt in zwei Phasen. Die erste Phase besteht aus einer Mikrobefehlsfolge, die einer
Gruppe von Befehlen gemeinsam ist. Die zweite Phase ist eine Mikrobefehlsfolge, bestehend aus einem einzigen Mikrobefehl in den
meisten Fällen, die dem spezifischen auszuführenden Software-Befehl
zugeordnet ist. Nach Vervollständigung der zweiten Phase wird in die dem nächsten Befehl gemeinsame Phase eingetreten, wobei
in einigen Fällen die zweite Phase über das RA-Register für einige zusätzliche gemeinsame Schritte zu der ersten Phase
zurückkehren kann, bevor in die den nächsten Befehlen gemeinsame Phase eingetreten wird.
Der Operations-Code des Schalters IRSW-319a erzeugt die Wegsuchadresse
und ein Eingangssignal für das Standardfolgen-Decodiernetzwerk 388. Das Standardfolgen-Decodiernetzwerk erzeugt die
Steuerspeicheradresse für den Start der Mikrobefehlsfolge, die der Gruppe von Befehlen zugeordnet ist, die diese Folge enthalten.
Diese Folge sei als Standardfolge bezeichnet. Der Speicherplatz in dem Wegsucher der durch den Operations-Code adressiert wird,
609842/0637
enthält die Adresse im Steuerspeicher, an der die Folge für diesen
Befehl beginnt. Der Befehl wird sodann ausgeführt durch Verzweigung zu der Standardfolgeadresse, durch Ausführung der gemeinsamen
Schritte, Verzweigung zu der Folgeadresse im XA-Register 386,
Ausführung der entsprechenden Schritte, Ergänzung des Inhalts des Befehlszählers IC, so daß der Operations-Code der nächsten
Befehle aus dem schalter IRSW freigegeben wird und durch Wiederholung
der obengenannte Folge durch Verzweigung zu der neuen Standardfolge.
Die Antwort auf eine Unterbrechung, die Ausnahmeverarbeitung und die auf ein fehlendes Seitentabellenwort hinweisenden Folgen werden
bearbeitet, indem die entsprechende Position in dem CSA-Schalter 316 ausgewählt wird. Die Unterbrechungen werden bei der
Vervollständigung von Software-Befehlen ausgeführt. Wenn der nicht gesperrte höhere Unterbrechungsrang vorliegt oder die
Nullrangleitung von der Schnittstelleneinheit SIU aktiviert ist und wenn die Stellung SS des CSA-Schalters durch die entsprechenden
Steuer-Bits in dem Steuerspeicherregister CSR ausgewählt sind, so wird die Steuerlogik des CSA-Schalters zur Auswahl der Position
Ausnahme/Unterbrechung gezwungen. Dies veranlaßt den Eintritt auf die Unterbrechungs-Beantwortungsfolge anstelle einer Bearbeitung
,der nächsten Befehls-Standardfolge. Die Position Ausnahme/
Unterbrechung gibt die Adresse der Unterbrechungs-Beantwortungsfolge
zu diesem Zeitpunkt wieder.
Fehlende Seitentabellenworte veranlassen den sofortigen Eintritt in eine PTW-Fehlfolge. Durch die Steuerlogik des CSA-SChalters
wird während der Taktperiode,die unmittelbar auf den Schritt der Seitenbildung folgt, der Operand oder der Befehl zur Einnahme der
Fehlposition gezwungen. Die Rückkehr von irgendeiner dieser Folgen erfolgt zu der Standardfolge, die von dem Schalter IRSW-319a decodiert
wird. Dies veranlaßt eine erneute Bearbeitung des zuvor bearbeiteten Befehls. Das Mikroprogromm bewirkt daher vor der
Feststellung eines fehlenden Seitentabellenwortes PTW nichts was nicht erneut getan werden könnte. Ein nicht dargestelltes Flip-Flop
wird gesetzt, wenn das fehlende Seitentabellenwort PTW
609842/0637
festgestellt wird und bleibt gesetzt, bis die Adresse erneut seitenunterteilt worden ist. Ein Fehlen beim zweiten I^al verankßteine
Ausnahme, die weiter unten definiert ist.
Die Ausnahmen unterteilen sich in zwei Kategorieren. Der erste Typ verursacht einen sofortigen Eintritt in die Ausnahmeverarbeitungsfolge.
Der zweite Typ beeinflußt die Steuerlogik des CSA-Schalters 316 solange nicht, bis die nächste Befehlsstandardfolge
bearbeitet wird. Beide Typen rufen die Auswahl der Position Ausnahme/Unterbrechung in dem CSA-Schalter 316 hervor und sie
setzen das entsprechende Bit in dem Prozeßsteuerregister PCR-344.
Die erste Kategorie von Ausnahmen sind, nicht-vollständige Operationen,
Seitenfehler, nicht vorhandene Seiten und illegale Befehle. Sie alle müssen behandelt werden, sobald sie festgestellt
werden, da eine Fortführung der Befehlsausführung unmöglich ist. Die zweite Kategorie von Ausnahmen betrifft einen Prozeßzeitgeber-Auslauf,
überlauf, Verriegelungsfehler und Adressenfehlausrichtung. Eine Divisionsprüfung wird bei einem Test durchgeführt und eine
Verzweigung findet statt, wenn der Divisor den Wert Null aufweist. Alle diese Ausnahmen zeigen Fehler an,aber sie müssen nicht sofort
behandelt werden und können warten bis zum Beginn des nächsten Befehles.
Steuerspeicher-Ausgangsregister
Das Steuerspeicher-Ausgangsregister CSR-319 enthält den auszuführenden
Mikrobefehl.Ein externes Steuerspeicherregister kann
vorgesehen sein, wie dies angedeutet ist. Ein Schalter 39 4 kann eine von vier Lagen jeweils einnahmen und bildet den Eingang für
das Steuerspeicherregister CSR. Die vier Positionen des Eingangs.-schalters
394 sind folgende:
0) Diese Position bildet den Eingang von den Festwertspeicherchips
zu den SteuerSpeichersubstraten;
1) diese Position wird nicht benutzt;
2) Diese Position bildet den Eingang von der Wartungskonsole;
3) diese Position, gibt das interne Stevcrspeicherregister CSR
wieder« Diese Position wird, benutzt, um die Bits des
609842/0637
externen Steuerspeicherregisters CSR erneut zu laden, wenn die Schalter der Bedienungskonsole für die Anzeige
von Daten benutzt werden.
Daten werden in das Ein/Ausgangssystein durch Simulation des
Steuerpseicherregister CSR über die Schaltung der Wartungskonsole eingegeben. Wenn die Schalter durch den CSR-Eingangsschalter
freigegeben werden, so wird ein Signal erzeugt, das das Laden der externen CSR-Bits mit dem durch die Schalter simulierten Mikrobefehl
verursacht. Der alte Inhalt muß erneut geladen werden, wenn die Anzeige der Register vervollständigt wird. Dies geschieht
durch Auswahl der Position 3 für einen Takt vor dem Rückschalten auf die Position Null und durch erneutes Laden der
externen CSR-Bits während der einen Taktperiode. Das Format des SteuerspeicherregistersCSR ist folgendes:
Bit O Takt NA in RA
Bit'1 Führe Sprung aus (Ki-2=Test, K3-5=Zustand, K6-8=
Bit'1 Führe Sprung aus (Ki-2=Test, K3-5=Zustand, K6-8=
Sprungzählstand
Bit 2 Verzweigung nach Ko-8
Bits 3-4 WR-Schreibadresse
Bit 2 Verzweigung nach Ko-8
Bits 3-4 WR-Schreibadresse
00=schreibe IC (Lade WA wenn Schreiben WR) Oi=schreibe R1 (Setze W wenn Schreiben WR und CSA=SS)
iO=schreibe R2
11=schreibe R3
Bit 5 Warten auf die Annahme von Lesedaten (ARDA)' von der
Bit 5 Warten auf die Annahme von Lesedaten (ARDA)' von der
Schnittstelleneiheit SIU
Bits 6-7 X-BAR-Adresse für WRW-Ausgang OO=Addier/Verschiebe-Ausgangsschalter Oi=Adressenchalter
Bits 6-7 X-BAR-Adresse für WRW-Ausgang OO=Addier/Verschiebe-Ausgangsschalter Oi=Adressenchalter
1O=PSR/PCR-Schalter
11=SP-Ausgangsschalter
Bits 8-9 Zustands-Code (CC)-Steuerung 0O=NOP
Bits 8-9 Zustands-Code (CC)-Steuerung 0O=NOP
01=Ladearithmetik
iO=Ladelogik
1l=Ladeparität von niedrigrangigstem SPB-Byte
60984 2/0637
Bit 10 Schreibe PTW-Zwischenspeicher Bits 11-13 ZAC für Lese/Schreib-Speicherzyklus (Bits 1-3 der
Lese/Schreib-Adressen-Schalterpositionen O und 1)
OXX=Lesen
iXX=Schreiben
XOX=Einfachpräzision XiX=Doppelpräzision
Bit 14 Setz/Rückstell-Bits definiert durch CSR41-44
Bits 15-17 SIU-Anforderungstyp
00O=NOP
001=Unterbrechungsdaten 0i0=Freigabe und ünterbrechungsdaten
0i1=Speicher oder p3cg-rammierbare Schnittstellendaten
(PI wenn 19-20=10) i00=Gelesenes Byte zum Schreiben (Byte-Adresse, Lese/
Schreib-Zone,wenn schreiben) + 10i=Befehlabruf
+ 1i0=Befehlabruf wenn CIRO=IRWO . *+ 111=Befehlabruf wenn Sprungtest erfüllt oder wenn CSRI=O
+ 1i0=Befehlabruf wenn CIRO=IRWO . *+ 111=Befehlabruf wenn Sprungtest erfüllt oder wenn CSRI=O
eine * Diese Codes verursachen PTW-Fehl-Befehlsfolge, wenn ein
Seitenfehler festgestellt wird
++ Dieser Code verursacht eine PTW-Operanden-Fehlfolge,
wenn ein Seitenfehler festgestellt wird
Bit 18 PTW-Zwischenspeicheradresse 0=erweiterte Lese/Schreiboperation von WRP
1=laufender Rang der PTW-Lese/Schreiboperation von der
effektiven Adresse Bits 19-2OAdresse-Schaltersteuerung
00=seitenunterteilte Adresse (Steuerlogik erzwingt den Wert 01, wenn PSR1O=1)
01=absolute Adresse iO=PI-Adresse
11=PTW-Zwischenspeicher 0-35 Bit 21 Schreibe WR
609842/0637
Bits 22-23 CSA-Schaltersteuerung (erste vier Positionen)
OO=Nächst-Adressregister (NA)
• O1=Rückkehr-Adressregister (RA)
iO=Ausführungsadressregister .(XA)
11=Standard-Folgeadresse Bits24-25 WRR-Leseadresse
Bits 26-27 WRP-Leseadresse 0O=IC O1=R1 1O=R2
11=R3 Bit 28 Operandenschalter O=SPB
I=WRR Bits 29-30 PSR/PCR-Steuerung und ALU-Betriebsweise
00= Lese PSR oder logische Betriebsweise O1=Lese PCR oder arithmetische Betriebsweise
iO=Schreibe PSR
11=Schreibe PCR Bits 31-32 Addierer/Verschieber-Ausgangsschalter
00=Verschieber O1=ALU iO=Speichern
11=Laden Bits 33-35 B Operandenschalter
00O=DL 001=DS 01O=IS 011=IL 10O=WRR 101=8, Wortlänge oder übertrag
1iO=Konstante KO-8
Bits 36-44 Konstante KO-8 Dieses Feld wird ebenfalls für eine gegenseitige
exklusive Steuerung benutzt.
609842/0637
Bits 36-37 8/WL/CY-Steuerung
00, 8/WL/CY-IRSW Befehlswortlänge
01 , 8WL/CY-PSR Übertrags-Bit
10, 8/WL/CY=8 Bits 36-38 Verschiebe-Zählstand-Schaltersteuerung
000 Linksverschiebung
001 Rechtsverschiebung
010 CSR-Verschiebezählstand (39-44)
011 Befehl FI-FeId
100 Befehl F2-Feld
101 Befehl F3-Feld
110 Byte laden
111 Byte speichern
Bits 39-44 CSR-Verschiebe-Zählstand Bits 36-44 CSA-Schalter-Verzweigungsadresse
Bits 37-38 Sprung-Testwert für getestete Bedingungen mehrerer Werte
Bit- 38·. WA-Eingang-Schaltersteuerung (O=GRI, 1=GR2)
Bits 39-41 Sprung-Testbedingung
000 WRR35=CSR38 wenn CSR37=1 WRRO=CSR38 wenn CSR37=O
001 PSR13 (Übertrag)=CSR38
010 WRR33=CSR38
011 IRSW 14-35 enthält Adressilbe und Bit 18-0 100 BRAC CF-FeId besitzt Bit entsprechend PSR CC
wenn CSR 38=1
BRAC CR-FeId besitzt kein Bit entsprechend PSR CC wenn CSR38=O
1Ö1PSR CC-Feld=CSR37=38
110 ' IRSW7=WRR0 wenn CSR37=O
IRSW7=CSR38 wenn CSR37=1
111 SIU-HLIP-Leitung aktiv und nicht gesperrt oder
• I&P." aktiv
Bits 42-44 Spring-Zählstand Bits 38-44 GR-Zwischonspeicher-Gesamtädresse
Bits 41-44 GR-Zwischenspeicher-Adresse pro Prioritätsrang
U (J 9 H 4 2 / 0 6 3
Bits 41-44 Setze/Rückstelle Bit-Adresse
0000 Rückstelle Ilalte-Betricbsweise
0001 Setze Halte-Betriebsweise
0010 Rückstelle Sperr-Unterbrechungs-Betriebsweise
0011 Setze Sperr-Unterbrechungs-Betriebsweise 0100/0101 Rückstelle PCR-Ausnahme-Speicherung
0110/0111 nicht definiert
1000/1001 Invertierung DO, Steuerung und Unterbrechung
der Datenparität
1010/1011 Invertierung von PR-Parität und bedingte Sperrung von GR SP-Schreibtakt
1100/1101 Bedingte Sperrung von DR SP-Schreibtakt 1110/1111 Setze Maßnahme-Flip-Flop F/F
Bits 45-48 ALU-Steuerung/Verschiebeeingang-Schaltersteuerung Bits 45-48 ALU-Operation (CSR30=Betriebsweise)
Bits 45-46 Linksverschiebung-Eingangsschalter 0O=A Operandenschalter
01 Vorzeichen des Rechtsverschiebung-Eingangsschalters
10 Nullstellen
11 Einerstellen
Bits 47-48 Rechtsverschiebung-Eingangsschalter OX Nullstellen
10 B-Operandenschalter
11 A-Operandenschalter
Bits 49-50 GR-Zwischenspeichersteuerung
0O=NOP
01=Schreiben GR-Zwischenspeicher
iO=Laden SPB von GR Zwischenspeicher
11= ■ Laden SPB von WRP
Bits 51-53 GR-Zwischenspeicheradress.e
OOO=CSR-Zwischenspeicher-Gesamtadresse (CSR 38-44)
609842/0637
- -41 -
Bits 51-53 OO1=CSR Zwischenspeicher-Adresse pro Prioritätj}-rang
(AIL, CSR41-44)
010= erweiterte Lesc/Schreibadresse von WRR
011=laufender Prioritätsrang XR2
1OO=laufender Prioritätsrang XR1 102-laufender Prioritätsrang GR1
1iO=ungerades Register des durch WA im laufenden Prioritätsrang adressierten Paares
111-WA~Adresse im laufenden Prioritätsrang
Bit 54 A Operandenschalter
O=SPB
I=WRR
Der Steuerspeicher 318 besteht aus einem im Stand der Technik bekannten
Festwertspeicher ROM. Das im Steuerspeicher 318 abgelegte Mikroprogramm steuert die erfindungsgemäßen Operationen, wie
dies im Anhang zu dieser Beschreibung erläutert ist. Wenn der Steuerspeieher 318 entsprechend mikroprogrammiert
istf so bildet er die Firmware gemäß der Erfindung.
Die Firmware unterscheidet sich von einem Software-Programm
dadurch, daß eine tatsächliche Operation in dem Festwertspeicher ROM ausgeführt wird und beispielsweise ein Spannungsversorgungsausfall
dieses Mikroprogramm nicht verändert. Diese Ausbildung ist einem festverdrahteten Computerprogramm verwandt.
Bei einer Software-Porgrammierung ergibt sich jedoch keine physikalische Veränderung des Speichers, sondern nur eine
elektrische Veränderung, so daß beispielsweise ein Spannungsversorgungsausfall das Programm im Speicher des Rechners zerstört.
In Bezug auf eine Hardware-Logik besteht keine Verwandtschaft.
609842/0637
Aus der vorstehenden Beschreibung ergibt sich folgende Wirkungsweise
der Erfindung:
Grundsätzlich gibt es zwei Störungen, bei denen der Ausfall-Sicherungsspeicher
gemäß der Erfindung verwendet wird. Die ersten Störungen sind vom Prozessor festgestellte Bedingungen,
die nachstehend als Ausnahmebedingungen bezeichnet werden und eine automatische erneute Bearbeitung in einer Ausnahme-Verarbeitungsroutine
verursachen. Der zweite Typ von Störungen besteht in Ereignissen, die außerhalb des Prozessors festgestellt
werden und die eine Reaktion des Prozessors erfordern und nachstehend als Unterbrechungen bezeichnet sind. Ist eine Ausnahme
oder ein Unterbrechungszustand einmal festgestellt worden, so
wird jeder dieser Zustände durch eine Kombination aus Hardware und Firmware in nahezu identischer Weise bearbeitet. Der Hauptunterschied
in der Behandlung, abgesehen von der Nomenklatur, besteht darin, daß bei der Adressenbildung des Unterbrechungssteuerblockes
ICB, bezogen auf die Steuerblockbasis CBB die Unterbrechungs-Nummer ICBN zu der Adresse der Steuerblockbasis
CBB hinzuaddiert wird. Während bei der Adressenbildung für den Ausnahmesteuerblock ECB die Ausnahme-Steuerblocknummer ECBN
von der Adresse der Steuerblockbasis CBB subtrahiert wird. Diesbezüglich sei auf Figur 2H und die zugehörige Beschreibung
weiter vorne verwiesen.
Zum Zwecke der Veranschaulichung der Wirkungsweise der Erfindung sei angenommen, daß eine Unterbrechung durch die Schnittstelleneinheit
SIU erzeugt worden ist. Die Schnittstelleneinheit SIU überwacht konstant den laufenden Prioritsrang des Prozesses,
der auf dem Prozessor abläuft,und fordert Unterbrechungen von den Eingang/Ausgang-Systemmodulen an. Jede Unterbrechungsanforderung
bestimmt die Nummer des zu unterbrechenden Prozessors, die Prioritätsgangnummer der Anforderung und die Steuerung, um
den Unterbrechungsanforderer zu identifizieren. Diese Information
ist in jedem Modul,der eine Unterbrechung anfordern Kann, und hinsichtlich der meisten Module wird diese Information durch
die Benutzung programmierbarer Schnittstellenbefehle abgelegt.
609842/0637
.Wann immer eine Unterbrechungsanforderung mit einem höheren
Prioritätsrang als dem Rang des laufenden Prozessors vorliegt, erzeugt die Schnittstelleneinheit SIU auf einer Leitung ein
Unterbrechungssignal entsprechend dem höheren Prioritätsrang. Wenn verschiedene Unterbrechungsanforderungen mit dem gleichen
Prioritätsrang vorliegen, so bestimmt die Schnittstelleneinheit SIU, welche Anforderung an den Prozessor auf der Basis einer
durch die Anschlußnummer vorgegebenen Priorität weitergeleitet wird. Wenn die Unterbrechung des laufenden Prozesses nicht gesperrt
ist, veranlaßt die Unterbrechungsanforderung den Prozessor IOP/P zur Aufgabe des laufenden Prozesses und zur Annahme eines
Unterbrechungswortes gemäß Figur 2L von der Schnittstelleneinheit SIU. Die Information des Unterbrechungswortes enthält u.a. eine
Unterbrechungs-Steuerblocknummer ICBN in den Bit-Positionen 19-26.
Diese Nummer wird zu der Adresse CBB1 der primären Steuerblockbasis CBB hinzuaddiert, um eine Unterbrechungssteuerblock (ICB)-Adresse
zu erhalten. Im Falle einer Ausnahme anstelle einer Unterbrechung wird die Ausnahme-Steuerblocknummer ECBN von der
Adresse CBB1 der primären Steuerblockbasis CBB subtrahiert. Die Adresse wird von der Hardware und der Firmware-Steuerung gebildet.
Die eine Unterbrechung verarbeitende Firmware veranlaßt den Zugriff auf die Adresse CBB, die in der primären Steuerblockbasis
CBB im Allgemeinregister GRO unter dem Rang 1 und O gespeichert ist. Bei der Verwirklichung der Erfindung kann auch
irgendein anderer Rang benutzt werden. Die Firmware veranlaßt sodann eine Linksverschiebung um 11 Bits der primären Steuerblockbasis,
so daß das Format gemäß Figur 2F erhalten" wird. Die ICBN-Bits 19-26 des Unterbrechungswortes gemäß Figur 2L werden
zu der Adresse CBB1 der primären Steuerblockbasis CBB gemäß Figur 2F hinzuaddiert, um die Adresse der Unterbrechungs-Steuerblockbasis
ICBB zu erhalten. Die Anforderung eines Doppelwortes wird sodann von der Firmware durchgeführt, um auf die ersten
beiden Worte in dem Unterbrechungssteuerblock ICB gemäß Figur 2J Zugriff zu nehmen. Nach dem Zugriff auf die ersten beiden Worte
in dem Unterbrechungssteuerblock ICB wird das Bit ONC (ONC= Operation nicht vollständg), welches dem Bit 0 des PCR entspricht,
609842/0637
getestet, um festzustellen, ob die vorangegangene Operation vollständig
war oder nicht. Wenn die vorangegangene Operation vollständig war und das Bit ONC nicht gesetzt ist, so wird die normale
Unterbrechungs-Verarbeitungsroutine ausgelöst, indem die Prozeßregister mit den vier Registern aus dem Unterbrechungssteuerblock
ICB geladen werden. Wenn das Prozeßzustandsregister PSR geladen wird, so wird das Steuerfeld des Unterbrechungswortes in das Steuerfeld des Registers PSR eingefügt. Die anderen
Register, d.h. der Befehlszähler IC, das Allgemeinregister GR14
und das Seitentabellenbasisregister PTBR werden direkt durch aufeinanderfolgende
Worte in dem Unterbrechungssteuerblock ICB geladen .
Es sei nun angeommen, daß das BIT ONC, d.h. das Bit 0 des Prozeßsteuerregisters
PCR gesetzt ist, wodurch angezeigt wird, daß eine Fehlfunktion im Speicher vorliegt und ein anderer Speicher
benutzt werden soll. Dementsprechend veranlaßt die Unterbrechungsverarbeitungs-Firmware
erneut den Zugriff auf die Steuerblockbasis CBB in dem Allgemeinregister GRO mit den Prioritätsrängen 1 und 0 in dem Zwischenspeicher 328. In diesem Fall wird
jedoch die zweite Steuerblockbasis CBB2 gebildet, die einen anderen Speicher zum Zugriff auf einen anderen Unterbrechungssteuerblock
ICB benutzt, um den Speicherfehler in dem ersten Speicher zu behandeln. Die Adresse in dem zweiten Unterbrechungssteuerblock
ICB wird unter Firmware-Steuerung gebildet, indem die Bits 0-3 des SteuerblockbasxsregistersCBBR genommen werden und
in den Bits 0-3 des Arbeitsregisters 326 abgelegt werden. Ebenso werden die Bits 4-10 des SteuerblockbasisregistersCBBR in den
Bit-Positionen 18-24 des Arbeitsregisters abgelegt. Auf diese Weise wird die zweite Steuerblockbasis CBB2 gemäß Figur 2G gebildet.
Durch Verwendung der Adresse CBB2 und des neuen durch die Steuerung bestimmten Anschlusses und durch Addition dieser
Werte zu der Unterbrechungs-Steuerblocknummer ICBN wird auf einen anderen Unterbrechungs-Steuerblock Zugriff genommen und das
System wird nicht gestört.
609842/Q637
Um die Anwendung der Mikrobefehle in näheren Einzelheiten zu veranschaulichen, soll nunmehr die Ausnahmeverarbeitung,
welche der Unterbrechungsverarbeitung ähnlich ist, beschrieben werden. Eine Ausnahme tritt unter den weiter vorne beschriebenen
Bedingungen auf. Die Ausnahmen werden von dem Prozessor erkannt und mittels einer 4-Bit-Ausnahmenummer bestimmt. Für
Hauptbetriebs-Eintrittsausnahmen wird die Ausnahmenummer aus
den Bits 10-14 eines nicht dargestellten Befehls entnommen. In allen anderen Fällen weist die Ausnahmenummer den Wert O
auf. Die Ausnahmenummer wird als eine Ausnahme-Steuerblocknommer ECBN zur Bestimmung eines Vierwort-Ausnahme-Steuerblockes ECB gemäß Figur 2J benutzt. Wie zuvor unter dem Abschnitt "Ausnahmen" beschrieben, wird diese ECBN-Nummer von
der CBB-Adresse subtrahiert, um die ECB-Adresse zu gewinnen.
Bevor in eine Ausnahme-Verarbeitungsroutine eingetreten wird, muß wichtige Information über den laufenden Prozeß sicher abgespeichert werden. Diese Speicherung bildet einen Teil der
Reaktion des Prozessors auf die Ausnahme. Da der Auftritt der Ausnahmen verschachtelt sein kann, wird ein Stapel gemäß Figur 2K benutzt, um Speicherraum für eine sichere Prozeßspeicherung zu schaffen. Im Ausnahmesteuerblock ECB wird eine
Sicherungsbereichs-Hinweisadresse SAP gespeichert, die auf den Stapel verweist, der für die sichere Speicherung des laufenden
Prozesses benutzt wird. Dementsprechend beginnt die Firmware mit der Bearbeitung bei einer bestimmten Adresse. Es sei darauf
verwiesen, daß oktale Adressen verwendet werden. Von dieser Adresse erfolgt eine Verzweigung zu einer anderen Adresse.
Unter dieser Adresse befindet sich der Mikrobefehl, der einen Aufruf zur Adressenbildung darstellt, um die Sicherungsbereichs-Hinweisadresse SAP zu erhalten. Sodann erfolgt eine Verzweigung zu einer anderen Adresse, wo sich ein Mikrobefehl befindet, der die Prozessornummer überprüft, um festzustellen,
ob eine Sicherungsbereichs-Hinweisadresse SAP für das Pro- 1
zessorpaar PO oder das Prozessorpaar Pl angefordert wird.
609842/0637
Die Ausrichtung der Steuerblockbasis CBB wird durch einen Mikrobefehl unter einer weiteren Adresse bewirkt. Dieser
Befehl steuert die Ausrichtung der primären Steuerblockbasis CBBl durch Verursachung einer Linksverschiebung um
11 Bits, wodurch,das Format der primären Steuerblockbasis
gemäß Figur 2F erhalten wird. Ein anderer Mikrobefehl verursacht das Auslesen der adressierten Sicherungsbereichs-Hinweisadresse
SAP. Nach dem Zugriff auf die Hinweisadresse SAP wird das Bit ONC im Prozeß-Steuerregister PCR überpfüft,
um festzustellen, ob der Zugriff vollständig ausgeführt wurde oder nicht. Die Prüfung ONC bei Vollendung eines Speicherzyklus
wird unter der Steuerung eines Mikrobefehls unter der Oktaladresse ausgeführt» Wenn die Operation vollständig war,
so wird angezeigt, daß keine Zeittakt- oder Speicherstörung
vorlag und es wird dementsprechend in eine normale Ausnahmeprozedur unter Steuerung durch weitere Mikrobefehle eingetreten.
Ist jedoch das Bit ONC gesetzt, so zeigt dies an, daß die Operation auf Grund irgendeiner Fehlfunktion nicht
vollständig war und es wird ein Mikrobefehl übersprungen und der nächste Mikrobefehl ausgeführt. Die zweite Steuerblockbasis
CBB2 wird sodann durch das Steuerblockbasisregister CBBR gemäß Figur 2E erzeugt, wobei dies ebenfalls
unter Steuerung durch Firmware-Mikrobefehle erfolgt. Durch die Benutzung dieser zweiten Steuerblockbasis CBB2 wird eine
zweite Adresse in einem anderen Speicher für den Ausnahmesteuerblock erzeugt, wobei von den zuvor beschriebenen
Prinzipien der Adressbildung Gebrauch gemacht wird. Das System wird somit bei einem Speicherfehler vor einem Ausfall
bewahrt.
609842/0637
Liste der verwendeten Abkürzungen
AIL - Active - Interrupt Level - Aktiver Unterbrechungsrang ALÜ - Adder Logical Unit - Rechenwerk
ARA - Active Request Accepted - Aktive Anforderung angenommen ARDA - Accept Read Data - gelesene Daten angenommen
BRAC CP- Branch.on. Condition - Condition Field - Bedingungsverzweigüng
- Bedingungsfeld
BRB ' - Branch on Bit - Verzweigungs-Bit
CBB - Control Block Basis - Steuerblockbasis
CBBR - Control Block Basis Register - Steuerblockbasisregister
CC - Condition Code - Zustands-Code
CIR - Current Instruction Read - Laufender Befehl Lesen
CEMIO - Communication Input/Output - Nachrichteneingang/ausgang
CPI - Common Peripheral Interface - Gemeinsame periphere Schnittstelle
CSA - Control Store Address - Steuerspeicheradresse
CSR - Control Store Register - Steuerspeicherregister
DAI - Device Adapter Interface - Geräte Adapter-Schnittstelle
DI - Data Interface - Datenschnittstelle
DISP - Dispatch Instruction - Verteilbefehl
DL - Long Displacement - Lange Verschiebung
DO - Data Out (Register) - Datenausgangs(Register)
DPCR - Display Process Control Register - Prozeß-Steuerregister-Anzeige
DS - Short Displacement - Kurze Verschiebung
DSL - Double Shift Left - Doppelverschiebung nach links
DSR - Double Shift Right - Doppelverschiebung nach rechts
ECB - Exception Control Block - Ausnahmesteuerblock
GR - General Register - . Allgemeinregister
HLIP - Higher Level Interrupt Present - Unterbrechung mit höherem Rang vorhanden
HSMX - High Speed Multiplexer - Hochgeschwindigkeits-Multiplexer
/
609842/0637
ICB - Interrupt Control Block - Untcrbrechungs-Steuerblock
IL - Long Intermediate Value - Langer Zwischenwert
IS - Short Intermediate Value - Kurzer Zwischenwert
IOM - Input/Output Multiplexer - Eingang/Ausgang-Multiplexer
IOP - Input/Output Processor - -Eingang/Ausgang-Prozessor
IRSW - Instruction Register Switch - Befehlsregisterschalter
L2MG - Load 2 Words of Memory to General Register -
Lade 2 Worte des Speichers in das Allgemeinregister
LMPS - Local Memory Port Specifier - Interner Speicheranschluß Kennzeichner
LSMX - Low Speed Multiplexer - Niedriggeschwindigkeits-Multiplexer
LZP - Level Zero Interrupt Present - Unterbrechung mit Rang Null vorhanden
MME - Master Mode Entry - Entritt in Hauptbetriebsweise
MPC - Micro Program Peripheral Controllers - Mikroprogrammierte
periphere Steuerung
NA - Next Address (Register ) - Nächstadressen (Register)
NIR - Next Instruction Read - Nächster Befehl gelesen
NOP - No Operating Instruction - Kein Operationsbefehl
ONC - Operation not Complete - Operation nicht vollständig
PCR - Process Control Register - Prozeß-Steuerregister
PI - Programmable Interface - Programmierbare Schnittstelle
PRA - .Page Relative Address - Relative Seitenadresse
PSR - Process State Register - Proz.eß-Zustandsregister
PTBR - Page Table Base Register - Seitentabellen-Basisregister
PTW - Page Table Word - Seitentabellenwort
PSI - Peripheral Subsystem Interface - Periphere Untersystem-Schnittstelle
609842/0637
RA - Return Address-(Register) - Rückkehradress-(Register)
RDEX - Read External - Externes Lesen
RDRR - Read Remote Register - Lese externes Register
REL - Release - Freigabe
RFU - Reserved for Future Use - Reserviert für zukünftigen
Gebrauch
REMA - Remote Memory Adapter - Externer Speicher-Adapter
JRMM - Return from Master Mode - Rückkehr aus Hauptbetriebsweise
SAP - Saving Aera Pointer - Sicherungsbereich-Hinweisadresse
SIU - System Interface Unit - System-Schnittstelleneinheit
SKP - Skip .- Sprung
SPA - Scratch Pad Address - Zwischenspeicher-Adresse
SPB - Scratch Pad Buffer - Zwischenspeicher-Puffer
SS - Standard Sequence - Standardfolge-
S2MG - Store 2 General Register Words in Memory-
Speichere 2 Allgemeinregisterworte im Speicher
WA ,- Write Address - Schreibadresse
WRR - Working Register Output for supplying Operands Arbeitsregisterausgang
für die Operandenlieferung
WRRR - Write Remote Register - Schreibe externes Register WREX - Write External - Schreibe extern
WRW - Working Register Write Input - Arbeitsregister-Schreibeingang
WL/CY. - Word Lenght or Carry - Wortlänge oder übertrag
WRP - Working Register Output for Paging - Arbeitsregistereingang für Seitenadressierung
XR - Indexregister - Indexregister
XA - Execution Address (Register ) - Ausführungsadress-(Register)
ZAC - Zone Address and Command - Zonenadresse und Befehl
609842/0637
Claims (10)
- PatentansprücheIJ Universalrechner mit wenigstens einem Prozessor und einer Ausfallsicherung, gekennzeichnet durch eine erste Einrichtung zur Feststellung einer Störung in dem adressierten Teil des Hauptspeichers und eine zweite auf die erste Einrichtung ansprechende Einrichtung zur automatischen Erzeugung eines alternativen Weges zu einem zweiten Hauptspeicherteil bei der Feststellung einer Störung in dem ersten Hauptspeicherteil.
- 2. Universalrechner nach Anspruch 1, bei dem der Prozessor einen laufenden Prozeß bearbeitet, gekennzeichnet durch eine dritte an die erste Einrichtung angeschlossene Einrichtung zur Unterbrechung des Prozessors, wenn eine Störung in dem adressierten Teil des Hauptspeichers festgestellt wird.
- 3. Universalrechner nach Anspruch 2, gekennzeichnet durch eine vierte an eine Adressiereinrichtung für den Hauptspeicher und an die 2. Einrichtung angeschlossene Einrichtung zur Speicherung einer ersten und zweiten Steuerblockbasisadresse, wobei die Adressiereinrichtung die erste Steuerblockbasisadresse und die zweite Einrichtung die zweite Steuerblockbasisadresse zur Adressierung des Hauptspeichers benutzt.
- 4. Universalrechner nach Anspruch 3, gekennzeichnet durch einen ersten Unterbrechungssteuerblock in einem ersten durch die Adressiereinrichtung adressierten Teil des Hauptspeichers und durch einen zweiten Unterbrechungssteuerblock in einem zweiten durch die zweite Einrichtung adressierten Teil des Hauptspeichers, wobei der erste Unterbrechungssteuerblock Informationen zur Ausführung eines ersten Prozesses und der zweite Unterbrechungssteuerblock Informationen zur Ausführung eines zweiten Prozesses speichert.609842/0637
- 5. Universalrechner nach Anspruch 4, gekennzeichnet durch eine 5. auf die 1. Einrichtung ansprechende Einrichtung zur Erzeugung einer auf die 2. Unterbrechungssteuerblockadresse bezogenen Adresse für den 2. Unterbrechungssteuerblock.
- 6. Universalrechner nach Anspruch 5, gekennzeichnet durch eine 6. auf- die 4. und 3. Einrichtung ansprechende Einrichtung zur Entwicklung der absoluten Adresse des 2. Unterbrechungssteuerblockes.
- 7. Universalrechner nach Anspruch 6, gekennzeichnet durch eine 7. auf die 3. Einrichtung ansprechende Einrichtung zur Errichtung eines Stapels im Hauptspeicher zur Speicherung von Informationen über den gerade bearbeiteten Prozeß, um die Rückkehr auf den gerade bearbeiteten Prozeß bei der Beendigung der Unterbrechung des Prozessors zu gestatten.
- 8. Universalrechner nach Anspruch 1, gekennzeichnet durch eine 8. von dem zweiten Unterbrechungssteuerblock beeinflusste Einrichtung zur Entwicklung der Adresse des Stapels im Hauptspeicher.
- 9. Universalrechner nach Anspruch 8 mit einem internen Speicher, dadurch gekennzeichnet, daß die erste Steuerblockbasisadresse eine Adresse im Hauptspeicher und die zweite Steuerblockbasisadresse eine Adresse im internen Speicher angibt.609842/0637
- 10. Universalrechner nach Anspruch 1, bei dem wenigstens ein Prozessor sequentiell einen ersten von mehreren Prozessen bearbeitet, wobei jedem Prozeß ein Prioritätsrang entsprechend der relativen Wichtigkeit in Bezug auf andere Prozesse zugeordnet ist und jeder Prozeß nach einer Steuerung durch den Prozessor verlangt, mit wenigstens einem internen Speicher und einem Hauptspeicher mit jeweils wahlfreiem Zugriff, gekennzeichnet durcha. eine 9. Einrichtung zur Erzeugung eines Unterbrechungssignales, falls ein Prozeß mit höherem Prioritätsrang als jener erste bearbeitete Prozeß die Steuerung durch den Prozessor anfordert,b. eine 10. auf die 9. Einrichtung ansprechende Einrichtung zur Feststellung des Unterbrechungssignales,c. eine 11. auf die 10. Einrichtung ansprechende Einrichtung zur Adressierung des internen Speichers,d. eine 12. Einrichtung zur Feststellung einer Störung im internen Speicher unde. eine 13. auf die 12. Einrichtung ansprechende Einrichtung zur automatischen Erzeugung eines alternativen Adressierweges zum Hauptspeicher.R (J 9 0 4 '/ I 0 6 3 7S3Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/562,361 US4010450A (en) | 1975-03-26 | 1975-03-26 | Fail soft memory |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2612034A1 true DE2612034A1 (de) | 1976-10-14 |
Family
ID=24245967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762612034 Withdrawn DE2612034A1 (de) | 1975-03-26 | 1976-03-22 | Ausfallsicherung in einem universalrechner |
Country Status (7)
Country | Link |
---|---|
US (1) | US4010450A (de) |
JP (1) | JPS51120631A (de) |
BE (1) | BE840021A (de) |
CA (1) | CA1059638A (de) |
DE (1) | DE2612034A1 (de) |
FR (1) | FR2305791A1 (de) |
GB (1) | GB1547386A (de) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4093985A (en) * | 1976-11-05 | 1978-06-06 | North Electric Company | Memory sparing arrangement |
JPS5494850A (en) * | 1978-01-11 | 1979-07-26 | Nissan Motor | Arithmetic processor |
US4404647A (en) * | 1978-03-16 | 1983-09-13 | International Business Machines Corp. | Dynamic array error recovery |
US4255741A (en) * | 1979-11-26 | 1981-03-10 | Peterson Erik R | Communication module |
JPS57155642A (en) * | 1981-03-23 | 1982-09-25 | Nissan Motor Co Ltd | Computer capable of using correcting memory |
US4380067A (en) * | 1981-04-15 | 1983-04-12 | International Business Machines Corporation | Error control in a hierarchical system |
JPS57189396A (en) * | 1981-05-14 | 1982-11-20 | Nec Corp | Controller for plural storage parts in data processing system |
US4435754A (en) * | 1981-06-30 | 1984-03-06 | Ampex Corporation | Method of selecting PROM data for selective mapping system |
WO1983001135A1 (en) * | 1981-09-18 | 1983-03-31 | Rovsing As Christian | Multiprocessor computer system |
US4475194A (en) * | 1982-03-30 | 1984-10-02 | International Business Machines Corporation | Dynamic replacement of defective memory words |
US4524415A (en) * | 1982-12-07 | 1985-06-18 | Motorola, Inc. | Virtual machine data processor |
US4642629A (en) * | 1983-04-18 | 1987-02-10 | Megabit Communications, Inc. | Enhanced distance data transmission system |
USRE33404E (en) * | 1983-04-18 | 1990-10-23 | Megabit Communications, Inc. | Enhanced distance data transmission system |
US4872166A (en) * | 1986-09-10 | 1989-10-03 | Nec Corporation | Information processing system capable of reducing invalid memory operations by detecting an error in a main memory |
US4847517A (en) * | 1988-02-16 | 1989-07-11 | Ltv Aerospace & Defense Co. | Microwave tube modulator |
US5345582A (en) * | 1991-12-20 | 1994-09-06 | Unisys Corporation | Failure detection for instruction processor associative cache memories |
US6181929B1 (en) * | 1996-05-20 | 2001-01-30 | Motorola, Inc. | Method for switching cell site controllers |
TW405092B (en) * | 1998-12-10 | 2000-09-11 | Mitac Int Corp | Automatic switching control device for DRAM |
US6957361B2 (en) * | 2001-11-29 | 2005-10-18 | International Business Machines Corporation | Method, system, and program for error handling in a dual adaptor system |
US6983397B2 (en) * | 2001-11-29 | 2006-01-03 | International Business Machines Corporation | Method, system, and program for error handling in a dual adaptor system where one adaptor is a master |
US7035953B2 (en) * | 2002-05-03 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Computer system architecture with hot pluggable main memory boards |
US7979616B2 (en) * | 2007-06-22 | 2011-07-12 | International Business Machines Corporation | System and method for providing a configurable command sequence for a memory interface device |
US8144537B2 (en) * | 2008-11-11 | 2012-03-27 | Stmicroelectronics Pvt. Ltd. | Balanced sense amplifier for single ended bitline memory architecture |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3633175A (en) * | 1969-05-15 | 1972-01-04 | Honeywell Inc | Defect-tolerant digital memory system |
US3806716A (en) * | 1972-07-17 | 1974-04-23 | Sperry Rand Corp | Parity error recovery |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3312947A (en) * | 1963-12-31 | 1967-04-04 | Bell Telephone Labor Inc | Plural memory system with internal memory transfer and duplicated information |
US3444526A (en) * | 1966-06-08 | 1969-05-13 | Ibm | Storage system using a storage device having defective storage locations |
US3434116A (en) * | 1966-06-15 | 1969-03-18 | Ibm | Scheme for circumventing bad memory cells |
US3436734A (en) * | 1966-06-21 | 1969-04-01 | Ibm | Error correcting and repairable data processing storage system |
BE757040A (fr) * | 1969-10-06 | 1971-03-16 | Western Electric Co | Procede pour actionner un systeme de traitement de donnees |
US3668644A (en) * | 1970-02-09 | 1972-06-06 | Burroughs Corp | Failsafe memory system |
GB1410631A (en) * | 1972-01-26 | 1975-10-22 | Plessey Co Ltd | Data processing system interrupt arrangements |
US3737870A (en) * | 1972-04-24 | 1973-06-05 | Ibm | Status switching arrangement |
US3771143A (en) * | 1972-06-01 | 1973-11-06 | Burroughs Corp | Method and apparatus for providing alternate storage areas on a magnetic disk pack |
US3792448A (en) * | 1973-05-21 | 1974-02-12 | Burroughs Corp | Failsoft peripheral exchange |
US3905023A (en) * | 1973-08-15 | 1975-09-09 | Burroughs Corp | Large scale multi-level information processing system employing improved failsaft techniques |
IT995722B (it) * | 1973-10-10 | 1975-11-20 | Honeywell Inf Systems Italia | Calcolatore microprogrammato a interior decore espansibile mediante riconoscimento e interpre tazione di codici di operazione aggiunti |
US3934227A (en) * | 1973-12-05 | 1976-01-20 | Digital Computer Controls, Inc. | Memory correction system |
US3976977A (en) * | 1975-03-26 | 1976-08-24 | Honeywell Information Systems, Inc. | Processor for input-output processing system |
-
1975
- 1975-03-26 US US05/562,361 patent/US4010450A/en not_active Expired - Lifetime
-
1976
- 1976-02-02 CA CA244,779A patent/CA1059638A/en not_active Expired
- 1976-03-22 DE DE19762612034 patent/DE2612034A1/de not_active Withdrawn
- 1976-03-25 GB GB12054/76A patent/GB1547386A/en not_active Expired
- 1976-03-25 FR FR7608761A patent/FR2305791A1/fr active Granted
- 1976-03-25 BE BE165551A patent/BE840021A/xx not_active IP Right Cessation
- 1976-03-26 JP JP51033454A patent/JPS51120631A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3633175A (en) * | 1969-05-15 | 1972-01-04 | Honeywell Inc | Defect-tolerant digital memory system |
US3806716A (en) * | 1972-07-17 | 1974-04-23 | Sperry Rand Corp | Parity error recovery |
Non-Patent Citations (1)
Title |
---|
US-Z: Datamation, 6/1965, S. 31-34 * |
Also Published As
Publication number | Publication date |
---|---|
FR2305791A1 (fr) | 1976-10-22 |
US4010450A (en) | 1977-03-01 |
GB1547386A (en) | 1979-06-20 |
JPS51120631A (en) | 1976-10-22 |
BE840021A (fr) | 1976-07-16 |
CA1059638A (en) | 1979-07-31 |
FR2305791B1 (de) | 1981-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2612059A1 (de) | Verfahren und vorrichtung zum befehlsabruf und zur befehlsausfuehrung in einem universalrechner | |
DE2612034A1 (de) | Ausfallsicherung in einem universalrechner | |
DE2612037A1 (de) | Prozessor | |
DE2806024C2 (de) | ||
DE2611907A1 (de) | Dv-system mit einer prioritaets- unterbrechungs-anordnung | |
DE3144015C2 (de) | ||
DE2023354C2 (de) | Datenverarbeitungsanlage mit einem Mikrobefehlsspeicher | |
DE2612054A1 (de) | Verfahren zur adressentwicklung und prozessor zur durchfuehrung des verfahrens | |
DE2755952C2 (de) | ||
DE2517276A1 (de) | Datenverarbeitungssystem | |
DE2806045A1 (de) | Dv-system mit pufferspeicher | |
DE2902465A1 (de) | Datenverarbeitungsanordnung | |
DE2612139A1 (de) | Ein/ausgang-steuerungssystem | |
DE2846495A1 (de) | Digitales datenverarbeitungssystem | |
EP0010198A2 (de) | Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher | |
DE2721319A1 (de) | Einrichtung zur selbsttaetigen aenderung der prozessor/speicher-konfiguration | |
DE2657848A1 (de) | Steuereinheit fuer ein datenverarbeitungssystem | |
DE2248296A1 (de) | Programmsteuereinrichtung | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE2414311A1 (de) | Speicherschutzeinrichtung | |
EP0010185A1 (de) | Virtuell-Adressiervorrichtung für einen Computer | |
DE2856680A1 (de) | Befehlspuffer fuer ein datenverarbeitungssystem | |
DE2611975A1 (de) | Dv-system mit einer einrichtung zur zuordnung von prozessen zu einem prozessor auf einer prioritaetsbasis | |
DE3900246C2 (de) | ||
DE2336020C3 (de) | Adressen-Berechnungsschaltung für Paritätsfehler-Korrekturprogramme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8130 | Withdrawal |