DE2806024A1 - Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit - Google Patents

Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit

Info

Publication number
DE2806024A1
DE2806024A1 DE19782806024 DE2806024A DE2806024A1 DE 2806024 A1 DE2806024 A1 DE 2806024A1 DE 19782806024 DE19782806024 DE 19782806024 DE 2806024 A DE2806024 A DE 2806024A DE 2806024 A1 DE2806024 A1 DE 2806024A1
Authority
DE
Germany
Prior art keywords
memory
signal
error
information
signals
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19782806024
Other languages
English (en)
Other versions
DE2806024C2 (de
Inventor
Lawrence W Chelberg
James L King
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2806024A1 publication Critical patent/DE2806024A1/de
Application granted granted Critical
Publication of DE2806024C2 publication Critical patent/DE2806024C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1016Error in accessing a memory location, i.e. addressing error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1064Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Description

Die vorliegende Erfindung betrifft ein Speichersystem nach dem Gattungsbegriff des Anspruches 1 und insbesondere ein mit einem Pufferspeicher versehenes Speichersystem.
In einem Datenverarbeitungssystem ist es von größter Bedeutung, die Gültigkeit der aus einem Speichersystem ausgelesenen Daten sicherzustellen. Im allgemeinen wird die geforderte Zuverlässigkeit durch die zusätzliche Anordnung von Fehlerkorrektur- und Feststellschaltkreisen zu solchen Speichersystemen erzielt. Um den gleichen Grad an Zuverlässigkeit hinsichtlich des Pufferspeichers zu erzielen, müssen Schaltkreise der gleichen Art angeordnet werden.
Diese Lösung führt aufgrund der dem Pufferspeicher zugeordneten Schaltkreise zu einem erhöhten schaltungstechnischen Aufwand. Weiterhin muß jeder Pufferspeicherzyklus für die Feststellung und Korrektur von Fehlern in der aus dem Pufferspeicher ausgelesenen Information mit zusätzlicher Zeit ausgestattet werden.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Speichersystem der eingangs genannten Art so auszubilden, daß es mit einem minimalen Aufwand an zusätzlichen Schaltkreisen und zusätzlicher Zeit einen zuverlässigen Betrieb gewährleistet. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten Erfindung. Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Das erfindungsgemäße Speichersystem umfaßt einen Hintergrundspeicher und einen Pufferspeicher. Der Pufferspeicher liefert einen schnellen Zugriff auf zuvor aus dem Hintergrundspeicher abgerufene Informationsblöcke. Der Hintergrundspeicher weist Fehlerfeststell- und Korrektureinrichtungen (EDAC) zur Feststellung und Korrektur von Fehlern in der während eines Hintergrundspeicher-Operationszyklus in den Hintergrundspeicher einzuschreibenden Information auf. Der Pufferspeicher weist Paritätserzeugungsschaltkreise auf,
809834/0620
die Prüfbits für Adressen erzeugen, die in eine zugeordnete Liste eingeschrieben werden.
Der Pufferspeicher enthält zusätzlich Paritätsprüfschaltkreise zur Feststellung von Fehlern in den Adressen und der Information, die aus der Liste und dem Pufferspeicher während eines Lese-Operationszyklus ausgelesen wird. Das Speichersystem enthält ferner eine Steuereinrichtung für die Betriebsfreigabe des Hintergrundspeichers und des Pufferspeichers aufgrund von Anweisungen. Die Steuereinrichtung enthält Schaltkreise, die an die Paritätsprüfschaltkreise angeschlossen sind. Diese Schaltkreise erzeugen bei der Feststellung eines Fehlers entweder in der Adresse oder in der aus der Liste oder dem Pufferspeicher während eines Lese-Oper ationszyklus ausgelesenen Information Signale, die einen Zustand simulieren, der vorgibt, daß die angeforderte Information als in dem Pufferspeicher nicht gespeichert festgestellt wurde, obgleich sie gespeichert war und ausgelesen wurde. Die Steuereinrichtung löst aufgrund solcher Signale einen Hintergrundspeicher-Operationszyklus zum Auslesen einer korrekten Version der tatsächlich angeforderten Information aus. Durch die Durchführung einer Prüfung hinsichtlich der HinweisIlste-Adresse wird sichergestellt, daß die falsche Information nicht ausgelesen wird.
Die Anordnung gemäß der vorliegenden Erfindung vermeidet auf diese Weise umfangreiche Fehlerfeststell- und Korrekturschaltkreise in dem Speichersystem. Durch die Verwendung von Signalen, die Fehlerzustände in der aus der Hinweisliste und dem Pufferspeicher ausgelesenen Adresse und Information anzeigen, und durch die Simulierung des Zustandes, daß die angeforderte Information in dem Pufferspeicher nicht gespeichert ist, ergibt sich ein minimaler Aufwand an zusätzlichen Schaltkreisen sowie an Modifikationen hinsichtlich des restlichen Systems.
809834/0620
Zusätzlich, kann während des Hintergrundspeicher-Operationszyklus die korrekte Version der aus dem Hintergrundspeicher ausgelesenen Information in den Pufferspeicher eingeschrieben werden, wenn die Speicheranweisung aufgrund ihrer Codierung dies festlegt. Es sei darauf verwiesen, daß in solchen Fällen die Pufferspeicherinformation automatisch korrigiert wird, wodurch die Zuverlässigkeit des Speichersystems hinsichtlich der Wiederauffindung von Übertragungsfehlern erhöht wird.
Die Anordnung gemäß der vorliegenden Erfindung macht mit Vorteil von der Tatsache Gebrauch, daß die Fehlerhäufigkeit eines Speichers mit geringer Kapazität, wie beispielsweise einem Pufferspeicher, gering ist und daß die normalerweise schnelle Zugriffszeit hinsichtlich des Pufferspeichers erhalten bleibt. Dies bedeutet, daß die Paritätserzeugungs- und Prüfschaltkreise nur ein Minimum an Zeit benötigen, um die geforderten PrüfOperationen auszuführen. Es muß somit keine zusätzliche Zeit zugeteilt werden, was zu einer Verlängerung der Zugriffszeit führen würde.
Es sei vermerkt, daß mit der Reduktion des Schaltkreisaufwandes der gleiche Grad an Zuverlässigkeit wie bei einer gemeinsamen Benutzung der in hohem Maße zuverlässigen Fehlerfeststeil- und Korrekturschaltkreise des Hintergrundspeichers erzielt wird. Da die Fehlerhäufigkeit des Pufferspeichers extrem niedrig liegt, ist darüberhinaus die zusätzlich erforderliche Zeit beim Zugriff auf die korrekte Information im Hintergrundspeicher gering.
Anhand eines in den Figuren der beiliegenden Zeichnung dargestellten Ausführungsbeispieles sei die Erfindung im folgenden näher erläutert. Es zeigen:
Fig. 1 ein das erfindungsgemäße Speichersystem verwendendes Ein/Ausgabe-System in Blockdiagrammform.
Fig. 2 die Ein/Ausgabe-Verarbeitungseinheit gemäß Fig. 1 in näheren Einzelheiten.
Fig. 3a und 3b die System-Schnittstelleneinheit gemäß Fig. 1 in näheren Einzelheiten.
809834/0620
Fig. 4 ein die Wirkungsweise der vorliegenden Erfindung erläuterndes Blockdiagramm.
Fig. 5a bis 5b verschiedene Schnittstellen in Fig. 1.
Fig. 6 den internen Speichermodul gemäß Fig. 1 in Blockdiagrammform.
Fig. 7a bis 7d Teile des internen Speichermoduls gemäß Fig. 6 in näheren Einzelheiten.
Fig. 8 das Format einer ZAC-Speicheranweisung gemäß der vorliegenden Erfindung.
Fig. 9 ein Zeittaktdiagramm zur Erläuterung der Wirkungsweise der \orliegenden Erfindung.
Allgemeine Beschreibung
Gemäß Fig. 1 weist das System der vorliegenden Erfindung wenigstens ein E/A-Prozessorpaar PO 200-0, eine Systemschnittstelleneinheit SIU-100, einen Hochgeschwindigkeitsmultiplexer HSMX-3OO, einen Niedriggeschwindigkeitsmultiplexer LSMX-4OO,
809834/0620
einen Zentralprozessor 700 und eine Anzahl von Speichermodulen entsprechend einem internen Speichermodul 500 und einem Haupt-Epeichermodul 800 auf. Verschiedene - -..''■■'■ dieser Module sind jeweils an einen aus einer Reihe von Anschlüssen der System-Schnittstelleneinheit 100 über eine Viel-· zahl von Leitungen angeschlossen/ die ihrerseits verschiedene Arten von Schnittstellen 600-603 bilden. Insbesondere sind der E/A-Prozessor 200 r der Zentralprozessor 700 und der Hochgeschwindigkeitsmultiplexer 300 an die Anschlußstellen H,G,D und A angeschlossen, während der Niedriggeschwindigkeitsmultiplexer 400 und die Speichermodule 500 und 800 an die Anschlußstellen -- J1 'XiMO-und RMO" angeschlossen sind. · :
Das E/A-System gemäß Figur 1 kann als ein System betrachtet werden, das eine Anzahl von "aktiven Modulen", "passive Modulen" und "Speichermodule" aufweist. Der E/A-Prozessor 200, der Zentral prozessor 700 und der Hpchgeschwindigkeitsmultiplexer 300 arbeiten als aktive Module,indem jeder die Fähigkeit besitzt, Anweisungen auszugeben. Die aktiven Module sind normalerweise an die Anschlußstellen A-H angeschlossen. Mehrere passive Module sind an die Anschlußstellen J, K und L angeschlossen. Diese Module sind durch die Niedriggeschwindigkeitsmultiplexer und die System-Schnittstelleneinheit 100 gegeben und sie sind in der Lage, An- * Weisungen zu =. interpretieren und auszuführen, die auf den Leitungen der Schnittstelle 601 zugeführt, werden. Die letzte Gruppe der Module wird durch die internen Speichermodule und die
externen Speichermodule gebildet,wie sie beispielsweise im Hauptsystem gegeben sind und die in der Lage sind, zwei verschiedene Arten von Anweisungen auszuführen, die
t
auf den Leitungen der Schnittstelle 6O3_ zugeführt werden.
Das E/A-System gemäß Figur 1 arbeitet normalerweise als ein E/A-Untersystem in Abhängigkeit von durch den Zentralprozessor 700 ausgegebenen E/A-Bcfehlen, die an die Anschlußstelle E über die Schnittstellen 600, 601 und 602 angeschlossen sind und eine Datenschnittstelle, eine programmierbare Schnittstelle und eine
8Q9834/Q620 · . - '. '*.
. ORIGINAL INSPECTED
Unterbrechungs-Schnittstelle repräsentieren. Die Anschlußstellen F und E weisen Schnittstellen auf, die einen Anschluß von Multiplexer- oder Prozessormodulen gemäß Figur 1 gestatten. Im Hinblick auf die vorliegende Erfindung kann der Zentralprozessor 700 in herkömmlicher Weise aufgebaut sein und in seiner Ausführung dom in der US-PS 3 413 613 beschriebenen Prozessor entsprechen. Im bevorzugten Ausführungsbeispiel löst der E/A-Prozessor 2OO Kanalprogramme aus und beendigt diese/ wobei die Kanalprogramme für die Ausführung von E/A-Befehlen erforderlich sind, und er verarbeitet Unterbrechungsanforderungen/ die er von der System-Schnittstelleneinheit 100 erhält und schließlich steuert er periphere an den Niedriggeschwindigkeitsmultiplexer 400 angeschlossene Geräte. Der Prozessor 200 ist über die Datenschnitt-Btelle 600. und die Unterbrechungs-Schnittstelle 602 mit der Anschlußstelle H verbunden. Der Niedriggeschwindigkeitsmultiplexer 4OO kann ebenfalls eine herkömmliche Ausbildung aufweisen. Er ist über periphere Adapter mit peripheren Geräten niedriger Geschwindigkeit verbunden, wobei die Adapter an die Leitungen einer Geräte-Adapter-Schnittstelle DAI angeschlossen sind. Schnitt-Stelle und Adapter können in der Art ausgebildet sein, wie dies in der US-PS 3 742 457 beschrieben ist. Die peripheren Geräte Mit niedriger Geschwindigkeit umfassen Kartenleser, Karten-Btanzer und Drucker. Wie aus Figur 1 ersichtlich, ist der Multiplexer 400 über die programmierbare Schnittstelle 601 mit der Anschlußstelle J verbunden. . .· ....
Der Hochgeschwindigkeitsmultiplexer 300 steuert direkt die Datenübertragung zwischen der Gruppe von Platteneinheiten und Bandeinheiten 309-312, die an verschiedene Kanaladapter 203-306 angeschlossen sind. Jeder der Kanal-Steueradapter 303-306 ist seinerseits über die Leitungen einer Kanal-Adapter-Schnittstelle CAI-301-1 an verschiedene Anschlußstellen 0-3 angeschlossen. Der Hochgeschwindigkeitsmultiplexcr 300 ist mit der Anschlußstelle A über eine Datenschnittstelle 600, eine programmierbare Schnittstelle 601 und eine Üntorbrechungs-Schnittstelle 6O2 angeschlossen. Jeder der Kanal-Steueradapter 303-306 kann so ausgebildet sein, wie dies in der zuvor erwähnten US-PS 3 742 457 beschrieben ist. 809834/0620
-13.- -': ··■.>.■■ 2806Ό24
Wie zuvor erwähnt, ist jeder der Module an verschiedene Anschlußstellen der System-Schnittstelle'inheit 100 angeschlossen. Die Schnittstelleneinheit 100 steuert die Verbindung der verschiedenen Module untereinander über Datenübertragungswege, die die übertragung von Daten und die Steuerung von Information zwischen Paaren von Modulen gestatten. Im Hinblick auf die vorliegende Erfindung kann die Systemschnittstelleneinheit 100 als ein Schaltnetzwerk beträchtet werden, das jedem aktiven Modul die übertragung von Daten zu und aus. einem internen Speichermodul 5OC gestattet, falls der anfordernde Modul die höchste Priorität aufweist und durch den nächsten verfügbaren Speicherzyklus freigegeben ist. Zu diesem Zweck v/eist die Schnittstelleneinheit 100 Prioritäts-Logikschaltkreise auf, die die relative Priorität der * Anforderung durch jeden der aktiven Module festeilen und den nächsten verfügbaren Speicherzyklus der höchsten empfangenen Prioritätsanforderung zuordnen. Die Schnittstelleneinheit 1OO weist zusätzlich Unterbrechungsprioritäts-Schaltkreise auf', welche die relative Priorität der von den Modulen empfangenen Unterbrechungsanforderungen feststellen und die höchste Prioritätsanforderung auswählen und über ein Schaltnetzwerk zu dem Prozessor 200 weiterleiten.
Anschluß-Schnittstellen . ."'*.· -l .
Bevor die verschiedenen Module gemäß Figur 1 näher beschrieben werden, sollen anhand der Figuren 5a-5d die Schnittstellen 600-603 näher erläutert werden. Gemäß Figur 5a ist ersichtlich, daß die dort dargestellten Leitungen die Datenschnittstelle darstellen, die eine der Schnittstellen bildet, die für den Austausch von Information zwischen einem aktiven Modul und der System-Schnittstelleneinheit 100 erforderlich sind. Der Informationsaustausch wird durch Steuerung des logischen Zustandes der verschiedenen Signalleitungen verwirklicht, wobei diese Steuerung in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die in einer als "Dialog11 bezeichneten Signalfolge enthalten sind.
GRlG^AL fNSPECTED
Gemäß Figur 5a umfaßt die Schnittstelle mehrere Leitungen mit folgender Bedeutung: Aktive Ausgangs-Anschiuß-Anforderung AOPR/ Daten zur Schnittstelleneinheit DTS OO~DTS 35, PO-P3,·" Steuerung von Daten zur Schnittstelleneinheit SDTS 0-6, P/identifizierte Mehrfachanschlüsse zur Schnittstelleneinheit MITS 0-3, P,' aktive Anforderung angenommen ARA/ gelesene Daten angenommen ARDA; Daten von der Schnittstelleneinheit DFS 00-35, P0-P3; Mehrfachanschluß-Identifizierer von der Schnittstelleneinheit, MIES 0-3, P ; Doppelpräzision von der Schnittstelleneinheit DPFS und Status angenommen AST. Die Beschreibung der Schnittstellenleitungen erfolgt im nachstehenden Abschnitt in näheren Einzelheiten.
: Daten-Schnittstellen-Leitungen
Bezeichnung
DTS 00-34, PO-P3
SDTS 0-6, P
Beschreibung ■ · . ·. ,
Diese Leitung dient der übertragung einer aktiven Ausgangs-Anschluß-Anforderung in einer Richtung, die sich von jedem der aktiven Module zu der Schnittstelleneinheit SIU-100 erstreckt. Wenn diese Leitung gesetzt ist, so signalisiert sie der Schnittstelleneinheit SIü daß der Modul einen übertragungsweg anfordert, über den eine Anweisung oder Daten zu übertragen sind.
Diese Leitungen stellen einen Datenübertragungsweg mit einer Breite von vier Bytes dar, die sich in einer Richtung zwischen jedem der aktiven Module und der Schnittstellenheit SIU erstrecken und die zur übertragung von Anweisungen oder Daten von jedem aktiven Modul zu ■ der Schnittstelleneinheit SIU-100 benutzt werden, , ■
Diese Leitungen erstrecken'sich von jeden akti ven Modul nach der Schnittstelleneinheit SIU-100, Sie dienen der Steuerung .von Daten £ur
803834/06 ?0
...V28Ö6024
MITS 0-3, P
Schnittstellencinheit und sie werden benutzt,, um die Schnittstelleneinheit SIU-100 mit Steuerinformation zu versorgen, wenn die Leitung AOPR gesetzt ist. Die Steuerinformation besteht aus sieben Bits und einem Paritäts-Bit, welche in folgender Weise codiert sind:
a) Der Zustand des Bits 0 gibt die Art der Anweisung an, die über die DTS-Leitung zugeführt wird. Die Anweisung kann hierbei eine programmierbare Schnittstellenanweisung oder eine Speicheranweisung sein.
b) Die Bits 1-4 geben durch ihre Codierungen, welcher der Module, die Anweisung empfangen und interpretieren soll (Speicheranweisungen
• werden nur durch Speichermodule und program-
. mierbare Schnittstellenanweisungen werden durch alle Module außer dem E/A-Prozessor 200 interpretiert) . '·■"·■·. , -^
c) Der Zustand des Bits 5 zeigt an, ob ein oder
• zwei Worte der Anweisungsinformation zwischen dem anfordernden aktiven Modul und dem ausgewählten empfangenden Modul übertragen werden sollen (ein Viort bestimmt eine Übertragung mit einfacher Präzision und zwei Worte bestimmen ej ne übertragung mit doppelter Präzision).
d) Der Zustand des Bits. 6 zeigt die Richtung der übertragung zwischen dem anfordernden Modul und dem ausgewählten empfangenden Modul an.
e) Das Bit P ist ein Paritäts-Bit, das von dem anfordernden aktiven Modul erzeugt wird und von einer in,der Schnittstelleneinheit SIU-100 ent
* haltenen Anordnung geprüft wird.
Diese Leitungen erstrecken sich von dem aktive Modul zu der Schnittstellcnheit SIU-100. Sie zeigen durch ihre Codierung an', welcher Uhtcrkanal oder Anschluß innerhalb eines aktiven 809834/062-0 .
-.16 -
DFS 00-35, P0-P3
MIFS 0-3, P
Moduls das Setzen der Leitungen AOPR verursacht hat, ,'...·.
Diese Leitung erstreckt sich von der Schnittstelleneinheit S1U-100 zu jedem der aktiven Module. Diese Leitung wird gesetzt, ura anzu- . zeigen, daß der ausgewählte empfangende Modul die Anforderung durch den aktiven Modul angenommen hat, wodurch dem Modul gestattet wird, ,die angeforderte" Information von den Daten— Sdmttste Ilen leitungen zu entfernen". · " . A Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU zu jedem der aktiven Module und sie wird durch die Schnittstelleneinheit gesetzt, um den aktiven Modul anzuzeigen, daß -er die zuvor angeforderten Daten eines ausgewählten Moduls anzunehmen hat.
Die Daten von der Schnittstelleneinheit werden* auf einem anderen Satz von Datenübertragungs-Ie5-tungen übertragen, welche eine Breite von vier Bytes aufweisen und sich in einer Richtung von der Schnittstelleneinheit zu jedem aktiven Modul erstrecken. Diese Gruppe von Leitungen wird von der Schnittstelleneinheit SIU-100 benutzt/ um gelesene Daten zu einem ausgewählten aktiven Modul 2U übertragen.
Diese vier Mehrfachanschluß-Bestimmungsleitungsn plus eine ungerade Paritätsleitung erstrecken sich von der Schnittstelleneinheit SIU-100 zu jddem der aktiven Module. Diese Leitungen geben durch ihre Codierung an, welcher Anschluß oder Unterkanal des aktiven Moduls die Daten einer vorausgegangenen Leseoperation von der Schnittstelleneinheit SIU-100 aufzunehmen hat. Diese Doppelpräzisions-Leitung erstreckt sich von der Schnittstelleneinheit SIU zu jedem der aktiven Module. Durch den Zustand dieser Leitung wird angezeigt, ob ein oder zwei Worte der gelesenen Daten von dem aktiven Modul zur Ver-. 808834/062.0 . ...
ORiGiNAL INSP1ECTED
-η - ..' ''-'Vr- ■'',28-Θ6Ο2Λ.
• · ;; ..?.·'. ; :· ·: Vollständigung einer übertragung aufzunehmen ,""-'-..-[ ·,;",.'--- ;-;■;-'·· sind .(Leseanweisung) * '·.."_, ..,;·. '.''·"".· ·. · \ • AST .-./■--.-■. Diese Leitung erstreckt sich "von der Schnitt-.-'·■■ , " /.- λ: · "... Stelleneinheit SIU-100 zu jedem aktiven Modul .;-..· ...;..'■ .■["' . und ihr Zustand/ der wechselseitig exklusiv zu. . · ;..·;"-■·· ■'; der Leitung AR0£. ist, signalisiert dem aktiven
.· · v. :■.·-'. Modul, daß er die auf den DFS-Leitungen zuge- -■- .'- ." "':. -. : . .führte Status information aufnehmen soll.
Die Leitungen der'programmierbaren Schnittstelle 601 sind in Figur 5b dargestellt und sie dienen der übertragung von Anweisungen -Von einem aktiven Modul und einem ausgewählten Modul. Die übertragung vMLrd durch die Steuerung der logischen Zustände der verschiedenen Signalleitungenbewerkstelligt* wobei dies in Übereinstimmung - mit zuvor errichteten Regeln erfolgt, die eine als "Dialog1.1 be-zeir ." --''chnete Signalfolge ausführen. Die programmierbare Schnittstelle ' umfaßt verschiedene Leitungen, denen folgende Bedeutung zugeord-'•net istt Programmierbare Schnittstellenanweisungen angenommen APC; programmiere Schnittstellendaten von der Schnittstelleneinheit SIU •( PDPS 00-35i P.0-P3; programmierbare Schnittstelle bereit PIR/ Anfor-.. äerung der übertragung gelesener Daten RDTR; programmierbare .'"Schnittstellendaten zu der Schnittstelleneinheit SIU PDTS 00-35; . PO-P3 und gelesene Daten angenommen RDAA. Eine Beschreibung der Schnittstellenleitungen wird nachfolgend in näheren Einzelheiten
■programmierbare Schnittstellenleitungen ''.'·'.·./.. ν !=! -
' Bezeichnung Beschreibung . .·'···· '.. = APC ;. · ... Diese Leitung erstreckt sich von der Schnitt-
.. ' · · : .." stelleneinheit SIU-100 zu jedem empfangenden
. . ,·· - - Modul und sie signalisiert im gesetzten Zustand
'-.V: ■ . dem Modul, daß Anweisungsinformation den PDFS-
. - ;'. Leitungen der Schnittstelle durch die Schnitt-
··■■-." ·" · ·. .f' '. stelleneinheit SIU zugeführt worden ist und dun
. · , den Modul aufgenommen werden soll.
/■" .- :: -:.vV V k"·.'·;'..· 8O9834/Q€ 2Q .··.. ν· .,.·.■.:"·"·■■■■"■ : ' . · ■ · / :. .'- ·· -ORIGINAL INSPECTED ·
~ 18 _
PDFS 00-35/ PO-P3 Diese Leitungen weisen eine Breite von vier
■; -.. Bytes auf und sie erstrecken sich in einer .·..·.· · Richtung von der Schnittstelleneinheit SIU-100 . . -■·.·. ■ zu jedem Modul. Sie führen einem ausgewählten c .■"·■' ' empfangenden Modul programmierbare Schnitt-■·'-.■■ stelleninformation von der System-Schnittoin-
. heit SIU-100 zu. .
PIR Diese Leitungen erstrecken sich von jedem Modul
. . zu der Schnittstelleneinheit SIU-100 und sie
■ . · . zeigen im gesetzten Zustand an, daß der Modul '-·'.' bereit ist, eine über die Leitung FDFS zuge-'. führte Anweisung aufzunehmen.
PJ)TS 00-35,PO-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich-in einer Richtung von jedem Modul zu der Schnittstellen-
• · · ·': · . einheit SIU-100. Diese Leitungen werden zur
·"'■".·- übertragung von programmierbarer Schnittstellen-.... . - information zu der Schnittstelleneinheit SIU-1OC ■·■ ■ · . -. "'.·■' benutzt. . . ' \
RDTR '"-·- Diese Leitung erstreckt sich von jedem Modul, • ■ ■·'., .-'/■; äer an die programmierbare Schnittstelle ange- ; .'■ ·. ■ schlossen ist, zu der Schnittstelleneinheit . ■ -·.' ' SIU-100. Im gesetzten Zustand zeigt diese Lei—
• . -"[ ". '■■'.. tung an, daß die zuvor angeforderten gelesenen ·"·■ ·■.'·· ■". '■■'"■■ ; . ■ ■ Daten für eine übertragung zu einem Modul ver-• . ■-.' ·■.·'. ■" .■". fügbar sind und durch den Modul den Leitungen
;· '. . · PDTS zugeführt worden sind. RDAA . Diese Leitung erstreckt sich von der Schnitt-
Btelleneinheit SIU-100 nach jedem Modul und sie : zeigt im gesetzten Zustand dem Modul an, daß die ■ ; über die Leitungen PDTS zugeführten Daten auf-'. · genommen worden sind und daß der Modul die In-■ formation von diesen Leitungen wegnehmen kann.
Gemäß Figur 5 c ist als weitere Schnittstelle die Unterbrechungs-Schnittstelle 602 dargestellt, die für die Unterbrechungsverarbeitung durch den E/A-Prozossor 200 vorgesehen ist. Diese Schnitt-
"ö 0-9 8*3 4/06 2 0 · · ■
.·.·,■.■ ;:■ "'■ -'1^l- . ' ...'.· ;·.;·■ 2606024
stelle gestattet die Übertragung von Unterbrechungsinformation von einem, aktiven Modul zu der Schnittstelleneinheit SIU-100 sowie die übertragung von Unterbrechungsinformation von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor 200 zwecks Verarbeitung. Entsprechend den anderen Schnittstellen wird die übertragung der Unterbrechungsanforderung durch Steuerung der logischen Zustände der verschiedenen Signalleitungen verwirklicht, wobei dies in Übereinstimmung mit zuvor errichteten Regelnerfolgt, die durch eine als "Dialog" bezeichnete Signalfolge ausgeführt werden. Die Unterbrechungsschnittstelle weist verschiedene Leitungen mit folgender Bedeutung auf: Unterbrechungsanforderung IR; Unterbrechungsdaten IDA 00-11, PO-P1 und Unterbrechungs-Mehrfachanschluß-Identifizierer IMID 00-03 für an die Anschlüsse A bis D angeschlossene Module. Hinsichtlich der an die Anschlüsse G und H angeschlossenen Module weist die Unterbrechungsschnittstelle ferner Leitungen mit folgender Bedeutung auf: Pegel Null vorhanden'.LZP; höhere Pegelunterb.rechung vorhanden HLIP; Unterbrechungsdaten-Anforderung IDR/ Freigabe RLS und aktiver Unterbrechungspegel AILO-2. Wie aus Figur 5c hervorgeht, weisen die Unterbrechungsschnittstellen-Anschlüsse G und II keine Unterbrechungs-Mehrfachanschluß-Identifiziererleitung auf. Eine Beschreibung der Unterbrechungs-Schnittstellenleitungen erfolgt nachstehend in näheren Einzelheiten. ■ ..
Unterbrechungs-Schnittstellenleitungen . '.V-.7."
Bezeichnung Beschreibung _ ■ '■" ;■.:.'■ : ;V ' ·'·'■.· IR ■ .'· Diese Leitung erstreckt .sich von jedem Modul . . ' 7" .■ . nach der Schnittstelleneinheit SIU-100 und sie ...·■-"· ' , zeigt im gesetzten Zustand der Schnittstelleneinheit SIU-100 an, daß sie eine Bedienung an-...". ' fordert.
IDA 0-3/ PO Diese Unterbrechungs-Datenleitungen erstrecken IDA 4-11,P1 ' sich von einem aktiven Modul nach der Schnitt-,
stellenoinheit SIU-100. Durch ihre Codierung • ■ '. enthalten diese Leitungen Steuerinformation,
deren übertragung nach dem E/A-Prozessor ange-*
. ' fordert wird, wenn eine Unterbrechungsanfordc-809834/0620
IMID 00-03
rung von dem Prozessor angenommen worden ist. Diese Bits sind wie folgt.codiert: . a)Der Zustand des Bits 0 signalisiert der Schnitt-'Stelleneinheit SIUrIOO, welcher der beiden Prozessoren die Unterbrechungsanforderung verarbeiten soll.
b)Die Bits 1-3 zeigen durch ihre Codierung die Priorität oder die Pegelnummer der Unterbrechungsanforderung der Schnittstelleneinlie.it SIU-100 an.
c)das Bit PO ist ein Paritäts-Bit für die Bits
0-3. .
d)die Bits 4-8 erzeugen durch ihre Codierung einen Teil einer Adresse, deren Erzeugung durch den E/A-Prozessor 200 für eine Bezugnahme auf die korrekte Prozedur bei der Verarbeitung der Unterbrechung erforderlich ist (z.B. eine Unterbrechungssteuerblocknurtuner ICBN)
e)das Bit P1 ist ein Paritäts-Bit für die Bits • 4-11. N '■ .
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU-100 und sie bestimmen durch ihre Codierung, welcher spezifische Unterkanal des aktiven Moduls eine Unterbrechungsbearbeitung angefordert hat. Diese Leitung erstreckt sich von der Schnitt-. Stelleneinheit SIU-100 zu dem E/A-Prozessor und sie zeigt im gesetzten zustand an, daß durch die Schnittstellenoinheit SIU-100 eine Anforderung mit höchster Priorität (Pegel Null) an den * Prozessor 200 gerichtet ist.
. Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem E/A-Prozessor 200 und sie zeigt im gesetzten Zustand an, daß eine Unterbrechungsanforderung mit einem höheren Pegel als der Pegel des gerade auf dem Prozessor
200 bearbeiteten Prozesses vorliegt, 809834/0620
" · " ORIGINAL INSPECTED
IDR . Diese Leitung erstreckt sich von dem E/A-
■ '. ■ Prozessor 200 nach der Schnittstellencinhcit
. ■··■■.' ■ ■ SIÜ-100 und sie zeigt im gesetzten Zustand ein, ..■·*:'» ;· .·■·'■. daß von der Schnittstelleneinheit SIU-100 auf
• -'' ; . ' den Leitungen DFS Unterbrechungsdaten nach dem ' ' '" ·" ' Prozessor zu senden sind.
RLS . · Diese Leitung erstreckt sich von dem E/A-
. ' ·.· · .'· ·' Prozessor 200 nach der Schnittstelleneinheit
• .' " . : SIU-100 und sie zeigt im gesetzten Zustand an, - .·"-";.-. -'. daß der Prozessor 200 die Ausführung der lau-
' -V-'..'" fenden Prozedur beendet hat.
AIL 0-2 Die den aktiven Unterbrechungspegel führenden
;.■"■·".· ..Leitungen erstrecken sich von der Schnitt-
·. '. ■".. V- '·■-■-■■.· Stelleneinheit SIU-100 zu dem E/A-Prozessor
.; -'■'-;" . - - 200. Diese Leitungen geben durch ihre Codierum ' .. · ·;.-'" '* '. die Unterbrechungspegelnummer der auf dem Pro· • .-; . ' "'■■- ■■·' ·'.. zessor 200 auszuführenden Prozedur an.
Eine letzte Gruppe von Schnittstellenleitungen, die von bestimmten Modulen gemäß Figur 1 benutzt wird, wird durch interne Speicherschnittstellen-Leitungen gemäß Figur 5d repräsentiert. Die
interne Speicherschnittstelle 603 dient dem Informationsaustausch zwischen dem internen Speicher 500 und den Modulen des
Systems. Der Informationsaustausch wird durch Steuerung der logischen Zustände der verschiedenen Signal-Schnittstellenleitunge: in Übereinstimmung mit zuvor festgelegten Regeln bewerkstelligt, wobei diese Regeln eine als "Dialog" bezeichnete Signalfolge ausführen. Die interne Speicherschnittstelle weist eine Anzahl von LeitungerPauf, denen folgende Bedeutung·. zugeordnet ist:
Daten zum Speicher DTM 00-35, P0-P3; Datenidentifizierer zum
Speicher RITM Or7, PO-P1 ,· Bestimmungsleitungen zum Speicher SLTM 0-3, P,* Annahme PI-Anweisung APC; Annahme ZAC-Anweisung AZC;
PI-Schnittstelle bereit PIR,* ZAC-Schnittstelle bereit ZIR,-Übertragungsanforderung gelesener Daten RDTR,* Daten vom Speicher DFM 00-35, P0-P3/ Anforderungsidentifiziorer vom Speicher RIFM
07-, PO-P1 ; Doppelprä"ζisioη . vom Speicher DPFM;QUAD/ gelesene
809834/0620
Daten angenommen RDiVA und Systemtakt SYS-CLK.
Speicher- und programmierbare Schnittstellenanweisung werden über die gleichen Datenleitungen der Schnittstelle übertragen. Die Schnittstelle weist keine Leitungsgruppe zur Verarbeitung von Unterbrechungsanforderungen auf, so daß die an.den internen Speicher über die Schnittstelleneinheit SIU-100 angeschlossenen Module nicht direkt eine Speicherunterbrechung veursachen können. Eine Beschreibung der internen Speicherschnittstellenleitungen wird nachstehend in näheren Einzelheiten gegeben.
Interne Speicher-Schnittstellenleitungen.
Bezeichnung
DTM 00-35, PO-P3
RITM 0-3, PO
RITM 4-7, P1
SLTM 0-3, P
Beschreibung _ *
.· auf, Diese Leitungen weisen eine Breite von 4 Bytes
06 Informationsleitungen und vier ungerade Paritätsleitungen) , die sich in einer Richtung von der Schnittstelleneinheit SIU-100 nach dem internen Speicher 500 erstrecken. Diese Leitungen werden zur Übertragung von Speicheroder programmierbaren Schnittstellenanweisungen zu dem internen Speicher 500 benutzt. Diese Leitungen bilden zwei Gruppen mit vier Leitungen, welche sich von der Schnittstellen— einheit SIU-100 nach dem internen Speicher 5OO erstrecken und der Anforderungsidentifizierung dienen. Diese Leitungen übertragen aufgrund ihrer Codierung Information zu dem internen Speicher, durch die der Modul bestimmt wird, der die Anweisung ausgelöst hat und sie werden benutzt, um die angeforderten Daten in den geeigneten Modul zurückzuholen.
Diese Leitungen erstrecken sich von der Schnitt Stelleneinheit SIU-100 nach dem internen Speicher 500 und sie umfassen zwei Anschlußnummer-Auswahlleitungen, eine Lese/Schrcib-Leitung zum Speicher, eine Doppalpräzisionsleituncj zum Speicher und eine Paritätsleitung. Die diesen
Leitungen aufgeprägten Informationssignale sine 809834/0620 ·
folgendermaßen codiert:
• · ' a) Die Bits Ö-1 stellen Anschlußnummer-Auswahl- ''■'■ . -■-·. Bits dar./ die durch ihre Codierung anzeigen, "■':... ."■'".■ . .. ._ welcher Anschluß oder Unterkanal innerhalb
. . · . ■ ■ des beigefügten Moduls die zu dem Modul ge- , '-.""..''. . ' sendete Speicheranweisung empfangen oder . - ' · interpretieren soll.
b) Bit 2 ist ein Lese/Schreib-Bit zum Speicher, • ■ " das in der von dem aktiven Modul empfangenen
.. · Steuerinformation enthalten ist und von der • .·' . . Schnittstelleneinheit SIU nach dem internen - . ' · Speicher 500 v/eitergereicht wird, wenn von : . . der Schnittstel.leneinheit SIU-100 eine neue . ■ Anweisung zu dem Speicher abgewendet wird. ;■ . ■ .' '. Der Zustand dieses Bits zeigt die Richtung
der Datenübertrag an*
: ■ '.". c) Bit 3 ist ein Doppelpräzisions-Bit zum Spei-
■ eher, das durch seine Codierung den Betrag
- ■ , ■■'·'■■ der zu übertragenden Daten anzeigt. Es ist . ...'. ebenfalls in der durch den aktiven Modul er-
. · , ' · ' zeugten Steuerinformation enthalten, wobei .. ■; ; /">: .. es durch die Schnittstelleneinheit .SIU-100 ■'"'/■■· . . '; nach dem internen Speichermodul 500 übertra-
.·.'■.·, ■ gen wird, wenn eine neue Anweisung nach dem • . ': ·. · '. Speichermodul abgesendet wird. AZC -\ Diese Leitung erstreckt sich von der Schnitt-
. stelleneinheit SIU-100 nach dem internen Spei- : · chermodul 500 und sie zeigt im gesetzten Zustand ' . ' . · .dem internen Speichermodul 500 an, daß eine von» γ '-der Schnittstelleneinheit SIU-100 auf den anderen Leitungen angebotene ZAC-Anweisung und Steu-. erinformation anzunehmen ist..Das Setzen dieser Schnittstellenleitungen erfolgt wechselseitig exklusiv mit dem Setzen der Schnittstellenlci-• : tung APC.
809834/0620
~ 24 -
PIR/ZIR
APC . . Diese Leitung dient der Annahme einer ."pro-
. '.;'·■ grammierbareri Schnittstellenanweisung und sie • ■ erstreckt sich von der Schnittstellcncinheit - ■ SIU-100 nach dem internen Spei.chermodul 500, Im gesetzten Zustand zeigt diese Leitung an, daß die auf den Leitungen DTM vorliegende Anweisungsinformation von dem internen Speicher-
• modul 500 anzunehmen ist.
,Diese Leitung signalisiert die Bereitschaft ^ der programmierbaren Schnittstelle und sie erstreckt sich von dem internen Speichermodul 500 zu der Schnittstelleneinheit SIU-100. Im gesetzten Zustand zeigt diese Leitung der Schnittstelleneinheit SIU-100 an/ daß der interne Speichermodul 500 in der Lage ist, eine ' programmierbare Schnittstellenanweisung bzw. Speicheranweisung (ZAC) anzunehmen. Diese Leitung erstreckt sich von dem internen ■ . - Speichermodul 500 nach der Schnittstellcnein-
• heit SIU-100 und sie zeigt im gesetzten Zustand ·. . an, daß die zuvor durch eine ZAC- oder PJ-
Anweisung angeforderte^ gelesenen Daten zusam-■ . '■""."; men mit der erforderlichen Steuerinformation
verfügbar sind und zu dem die Daten anfordernden Modul gesendet werden können. DFM 00-35, P0-P3 Diese Leitungen weisen eine Breite von 4 Bytes
auf und sie erstrecken sich in einer Richtung . ·.'■' · von dem internen Speichermodul 500 nach der -..;-.. ;· Schnittstelleneinheit SIU-100. Diese Leitungen
. . werden zur Rückholung angeforderter Lesedaten ·' \ in einen aktiven Modul über die Schnittstelleneinheit SIU-100 benutzt.
• Die beiden Gruppen von Leitungen erstrecken sich von dem internen Speichermodul 500 nach der Schnittstellcneinheit SIU-100. Diese Leitungen werden benutzt, um die gelesenen Daten aus dem Modul 500 zurück nach dem anfordernden Modul zu leiten.
80983A/DG20 ;■ · ORIGINAL INSPECTED
RIFM 0-3, PO
RIFM 4-7, P1
~ 25 -
DPFM und QUAD
Die Doppelpräzisionsleitung vom Speicher und
die QUAD-Leitung erstrecken sich von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Diese Leitungen zeigen durch ihre Codierung die Anzahl der Worte an,
die über die Schnittstelleneinheit SIU-100 zu dem anfordernden Modul während des Zeitintervalles der Ubertragungsanforderung der gelesenen Daten zu übertragen sind. Diese Leitungen sind folgendermaßen codiert:
QUAD,. DPFM ·
0 ' 0 ein Wort, Einfachpräzision
0 1 zwei Worte, Doppelpräzision
1 X vier Worte · · ■
Diese Leitung für die Statusidentifikation der gelesenen Daten erstreckt sich von dem interner
. Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Der Zustand dieser Leitung signalisiert der Schnittstelleneinheit SIU-100, ob
. die auf den Leitungen DFM vorliegende Informa-. tion sich auf gelesene Daten oder eine Statusinformation bezieht, wenn die Leitung RDTR ge-setzt ist. Im gesetzten Zustand zeigt diese
Leitung an, daß eine Statusinformation von ein oder zwei Worten (QUAD=O) zu übertragen ist.
Wenn diese Leitung den Binärwert Null einnimmt
■ so vtfrd hierdurch signalisiert, daß bis zu vier ' Worte zu übertragen sind, wobei die Anzahl der Worte durch die Codierung der Leitungen QUAD
Und DPFM vorgegeben wird.
Diese im Zusammenhang mit der programmierbaren Schnittstelle erwähnte Leitung erstreckt sich von der Schnittstelleneinheit SIU-100
nach dem internen Speichermodul 500. Im gesetzten Zustand signalisiert diese Leitung dem Speichermodul, daß die von ihm auf den Schnitt
, · : Stellenleitungen -ausgegebenen Daten angenommen . worden sind und daß er daher diese Daten auf den Leitungen wegnehmen kann« . SYS-CLK Die Systemtakt-Leitung erstreckt sich von der
.■Schnittstelleneinheit SIU-100 nach jedem Modul « des Systems. Diese Leitung ist an eine Takt-.geberquelle innerhalb des E/A-Prozessors 200 angeschlossen und sie dient der Synchronisation der Operationen eines jeden Speichermoduls durch den gemeinsamen Systemtakt.
Während die Figuren 5a bis 5d diejenigen Leitungen zeigen, welche •die verschiedenen Module des Fystems gemäß Figur 1 mit der Schnitt Stelleneinheit SIU-1OO verbinden, sei darauf verwiesen, daß noch andere Leitungen vorgesehen sind, zur Signalisätion anderer Zustände, wie beispielsweise von Fehlerzuständen und Betriebszuständen. Nachdem die verschiedenen von den Modulen gemäß Figur 1 benutzten Arten von Schnittstellen beschrieben worden sind, soll nunmehr, eine nähere Beschreibung der einzelnen Module gegeben werden. ' '
E/A-Prozessor 200 . · '..■.· ·
Gemäß Figur 2 weist der Prozessor 200 einen mikroprogrammierten Steuerabschnitt 201 auf, der in Abhängigkeit von in einem Steuerspeicher 201-10 gespeicherten Mikrobefehlen Steuersignale für die Ausführung von.Befehlen erzeugt. Ferner umfaßt der Prozessor 2OO
einen Befehls-Pufferabschnitt 202 zur Speicherung von aus dem internen Speichermodul 500 abgerufenen Befehlen, einen Speicherabschnitt 203 und einen Verarbeitungsabschnitt 204 zur Ausführung arithmetischer und logischer Operationen unter Steuerung von in dem Stcuerspeicher 201-10 gespeicherten Mikrogrograminen.
Steuerspeicherabschnitt 201
Der Steuerspeicher 201-10 besteht beispielsweise aus Abschnitten eines Festwertspeichers ROM. Der Stcuerspeicher 201-10 ist über
809834/06 2 0 " " ,. ' -
■■· 28.0602A
Signale von irgendeiner von acht Ursprungsadressen adressierbar, -die an einem Auswahlschalter 201-14 verfügbar sind. Der Inhalt der adressierten Speicherplätze wird in ein Ausgangsregister 201-15 ausgelesen und durch in einem Block 201-16 enthaltene Decodierschaltkreise decodiert. Zusätzlich werden Signale von einem der Felder des den Mikrobefehl enthaltenden Registers 201-15 ' als Eingangssignale für den Schalter 201-14 benutzt, um eine der acht Ursprungsadressen als Adresse für den Steuerspeicher 201-10 auszuwählen. Die in das Register 201-15 eingelesenen Mikrobefehle weisen Adresskonstanten auf zum Verzweigen des Steuerspeichers 201-10 auf geeignete Mikroprogrammroütinen.
'··- Wie aus Figur 2 ersichtlich, sind folgende Steuerspeicher-Ursprunyj adressen vorgesehen: Unterbrechunc/s/Ausnahmesignale', die von Signalen abgeleitet werden, die von der System-Schnittstelleneinheit 100 und von Schaltkreisen innerhalb des Prozessors 200 erzeugt werden; eine Nächst-Adressregisterposition, die an die über • einen Addierschaltkreis 201-24 in ein Register 201-22 eingespei--" cherte Nächst-Adresseninformation angeschlossen ist? eine Rück-
. kehradressregisterposition, der der Inhalt eines Rückkehrregisters 201-20 als Rückkehradresse zugeführt ist; eine Ausführungs-Adressregisterposition, der von einem Wegsucherspeicher 201-2 über ein Speicherausgangsregister 201-4 eine Adresse zugeführt
. wird; eine Folgeadressregisterposition, die die Adresse ebenfalls aus dem Register 201-4 erhält und .eine Konstantenpösition, der ein Konstantenwert aus dem Ausgangsregister 201-15 zugeführt
Die geeignete nächste Adresse wird durch den Addierschaltkreis 201-24 erzeugt, dem als ein Operandeneingang Adressignale in
. Form einer durch den Schalter 201-14 ausgewählten Ursprungsadresse· und als ein anderer Operand Signale von Sprung.—Steuerschaltkreisen eines Blockes 201-26 zugeführt werden. Die Sprung-' .Steuerschaltkreise werden durch in dem Steuerspeicherregister 201-15 gespeicherte Konstantensignale beeinflußt und sie erzeu r.-. gen einen geeigneten Wert als einen Operandeneingang für den ■ Addierschaltkrcis 201-24. Die durch den Addierschaltkreis 201-»24 '';"·■ ■;.-.■ · 809834/0820 ; \
OR'S'NA INSPECTED '".
erzeugte resultierende Adresse ergibt sich als Summe von durch den Schalter 201-14 ausgewählten Adressen und von Konstantenßignr.ien, die durch die Sprung-Steuerschaltkreise des Blockes 201-26 erzeugt werden. Die verschiedenen Positionen des Schalters 201-14 werden in Abhängigkeit von aus dem Steuerspeicher 201-10 ausgelesenen Mikrobefehlen ausgewählt, um wiederum geeignete Adressenfür in dem Steuerspeicher 201-10 gespeicherte . Mikroprogramme zu erzeugen, wobei diese Mikroprogramme für die Ausführung einer Operation erforderlich sind, die durch den Operationscode eines Programmbefehls bestimmt ist. Der Operationscode des Befehls wird dem Wegsucherspeicher 201-2 über den Daten weg 201-6 zugeführt. Die Rückkehr-Adressregisterposition des Schalters 201-14 wird während der Programmfolge als Folge einer Verzweigungsoperation ausgewählt, während, die Konstenregister-. position ausgewählt wird/ um eine Verzweigung nach einem vorbe- > stimmten Speicherplatz im Steuerspeicher 201-10 zu erzeugen, die durch das Konstantenfeld des in dem Register 201-15 gespeicherten Mikrobefehls bestimmt.ist. . ■ .-
Unterbrechungen werden nach der Vervollständigung der Ausführung eines Programmbefehles verarbeitet.- Aus Figur 2 ist ersichtlich, daß Leitungen HLIP und LZP, die das Vorhandensein eines höheren Unterbrechungspegels bzw. einer Unterbrechung mit dem Pegel Null anzeigen, Signale an den Schalter 201-14 anlegen. Das über die
• Leitung HLIP angelegte Signal wird mit einem Unterbrechungs-Sperrsignal aus einem Prozeßsteuerregister 204-22 einer UND-Verknüpfung unterzogen und das Resultat wird zusammen mit dem
■ auf der Leitung LZP anliegenden Signal einem ODER-Gatter zugeführt. Wenn das das Vorhandensein der Unterbrechung mit höherem Pegel anzeigende Signal nicht gesperrt ist oder ein Signal auf '"der Leitung LZP angelegt wird, so wählen Signale von nicht dargestellten an den Schalter 201-14 angeschlossenen Schaltkreisen die Stellung Ausnahme/Unterbrechung aus. Die Signalleitungcn, Welche das Vorhandensein einer Unterbrechung (LZP und HLP) anzeigen, wählen eine Unterbrcchungsfolgo von Mikrobefehlen anstelle der Mikrobefehlsfolgc für die Ausführung des nächsten
Progrämmbcfehles aus.
809834/0624)
Ausnahmen anzeigende Signalleitungen sind an nicht dargestellte Steuerschaltkreise angeschlossen/ die dem Schalter 201-14 zugeordnet sind und verursachen die Auswahl der Ausnahme/Unterbrechungsposition. Dies führt zu einer Adresse zur Bezugnahme auf eine Ausnahmefolge von Mikrobefehlen. In Abhängigkeit von dem Ausführungstyp kann die Ausnahme sofort verarbeitet werden, da die weitere Ausführung des Programmbefehles verhindert werden muß oder nicht möglich ist (z.B. Fehler, illegale Befehle). Die
Sei
Beendigung der Ausführung des Programmbefehles verarbeitet, wenn der Zustand keine sofortige Beachtung erfordert (z.B. Zeitablauf, Überlauf usw.) . Der Auftritt von Ausnahmen verursacht die Auswahl der Ausnahme/Unterbrechungsposition des Schalters 201-14 und das Setzen einer entsprechenden Bit-Position im Prozeßsteuerregister 204-22.
Mit PDA in Figur 2 bezeichnete Zeittaktsignale werden durch Taktschaltkreise innerhalb eines Blockes 201-30 erzeugt und sie dienen der Vorgabe geeigneter Speicherzyklen für den Steuerabschnitt 201 sowie als Zeittaktsignale für den Betrieb der anderen Abschnitte des Prozessors 200 und der anderen Module des Systems gemäß Figur 1. Im Falle der vorliegenden Erfindung können die Taktschaltkreise ebenso wie die anderen Schaltkreise gemäß Figur 2 als herkömmliche Schaltkreise ausgebildet sein, wie sie beispielsweise in der Veröffentlichung "The Integrated Circuits Catalog.·.- for Design Engineers" von Texas Instruments, Inc., 1972 beschrieben sind. Insbesondere können die Taktschaltkreise einen quarzgesteuerten Oszillator und Zählerschaltkreise, aufweisen, während der Zähler 201-14 aus mehreren Daten-Selektor/Multiplexer-Schaltkreisen bestehen kann. *■·...
·· · ■■'..■'·, ■ ■
Aus Vorstehendem ergibt sich, daß bei den meisten durch Mikroprogramme gesteuerten Maschinen der Steuerspeicher 201-10 die erforderliche Steuerung eines jeden Prozessors pro Operationszyklus übernimmt. Zu diesem Zweck wird jedes Mikrobefehlswort, das aus dem Steuerspeicher 201-10 herausgelesen wird, während eines Operationszyklus in einer Anzahl getrennter Steuerfelder
- fc 0 9.8 3 A /. 0 6 2 G ;. ORIGINAL INSPECTED
unterteilt, die die erforderlichen Eingangssignale für die verschiedenen Auswahlschalter gemäß Figur 2 erzeugen. Diese Schalter werden zur Adressierung der verschiedenen Zwischenspeicher und für die Auswahl der Operanden benutzt» Die Steuerfelder erzeugen ferner Signale zum Pestlegen verschiedener Testbedingungon für eine Verzweigung sowie Signale für die Steuerung der Operation einer Addier/Verschiebeeinheit im Abschnitt 204 und schließlich Signale für die Erzeugung von Steuerinformation/ die für die Erzeugung von Anweisungen erforderlich ist.
Befehlspuffer-Abschnitt 202 "
ι · ■
Dieser Abschnitt weist mehrere Register 202-2 für die Speicherung von bis zu vier Worten von aus dem internen Speichermodul 500 abgerufenen Befehlen auf,' die über ein Dateneingangsregister 204t
.;. 18 zugeführt werden. Die Gruppe von Registern2O2-2 ist an einen Befehlsregisterschalter 202-4 mit zwei Stellungen angeschlossen, der seinerseits zwei Ausgangssignale erzeugt, ein Ausgangssignai CIR betreffend einen gerade ausgelesenen Befehl und ein weiteres Ausgangssignal NIR betreffend einen nächsten ausgelesenen Befehl. Die Auswahl von Befehlsworten auf einer Halb- oder Vollwortbasis
·'■ wird in Abhängigkeit von dem Zustand der Bit-Positionen in dem laufenden Befehlszähler IC getroffen, der normalerweise in einem ersten Register der Arbeitsregister des .Blockes 204-12 gespei-
.•Speicherabschnitt 203 ' ' . _J- - . " · ·■ ' · ·
Gemäß Figur 2 weist dieser Abschnitt einen Zwischenspeicher auf, der acht Gruppen von Registern aufweist, die acht verschiedenen Prozessen zugeordnet sind, die unterschiedliche Prioritätspcgel
. besitzen. Der höchste Prioritätspegel entspricht dem Pegel 0 und der niedrigste Prioritätspegel entspricht dem Pegel 7* Jeder
. Gruppe bzw. jedem Pegel sind 16 Register zugeordnet.
80.98 34/06 2 0
Der Zwischenspeicher 203-10 wird über einen Daten-Auswahlschalter 203-14 mit acht Schaltstellungen adressiert, wodurch den Adresseingängen 203-12 selektiv eine 7-Bit-Adresse aus einer der" acht Ursprungsadressen zugeführt wird. Die drei höchstrangigsten Bit-Positionen der Adresseingänge 203-12 wählen eine der acht Registergruppen aus, während die verbleibenden'vier Bits eines der 16 Register auswählen. Die von der Schnittstelleneinheit SIU-100 auf den Leitungen AIL erzeugten Signale führen die drei höchstrangigsten Bits den Adresseingängen 203-12 des Zwischenspeichers zu. Die verbleibenden Signale werden von dem ■Steuerspeicherregister 201-15 oder Felder'des über IRSW zugeführten Befehls erzeugt. . ' · ■
Das Schreib-Adressregister 203-22 wire" über den Schalter 202-4 geladen, um Signale entsprechend den Bits 9-12 oder den Bits 14-17 des laufenden Programmbefehls zu speichern, wobei dieser durch eines der Felder des Mikrobefehls innerhalb des Registers 201-15 bestimmt wird. Das Schreib-Adressregister weist somit Adressen-Speicherraum für das Laden oder das Rückführen eines Ergebnisses in eines der Allgemeinregister des Zwischenspeichers 203-10 auf. ■ Die Schreiboperation wird durch ein Schreibtaktsignal ausgelöst, das entweder beim Schalten eines nicht dargestellten getakteten Schreib-Flip-Flops auf "1" oder in Abhängigkeit eines in das Register 201-15 geladenen Feldes eines Mikrobefehls auftritt. Bei einer Erzeugung durch das Schreib-Flip-Flop tritt das Schreibtaktsignal auf, wenn das Schreib-Flip-Flop beim Auftritt des nächsten PDA-Taktimpulses auf "0" zurückgestellt wird. Hierdurch wird eine auf einen Programmbefehl bezogene Schreiboperation während des Beginns der Verarbeitung des nächsten Befehls gestattet.
Der Inhalt des Schreib-Adressregisters 203-22 wird über den Auswahlschalter 303-1.4 einem Decodiernetzwerk 203-28 zugeführt, welches jedesmal ein Signal auf einer Ausgangsleitung erzeugt, wenn das Register 203-22 eine Adresse von 0,1 oder 15 speichert. Diesei Signal verhindert die Erzeugung eines Schreibtaktimpulses durch nicht dargestellte Gatterschaltkreise, wenn das Schreib-Flip-Flop auf "1" gesetzt ist. Dem Decodiernetzwerk 203-28 wird zusätzlich
.·■■.. · 8098-34/0620 .. · ;
'· ■"·■■■ ' ' . ;'· CRiQiMAL INSPECTS
- 32- V/. '- ■; ,:" 2806:02A
von. dem Prozeßzustandsregister 204-20 ein Modussignal zugeführt. Das.Modussignnl zeigt an, ob der Prozessor 200 in der Haupt-
' bzw. Nebenbetriebsweise betrieben wird,und es wird mit dem Ausgangssignal einer UND-Verknüpfung unterzogen und zur Erzeugung eines Ausnahmesignales auf einer anderen Ausgangsleitung benutzt, die ihrerseits als ein Eingang zu dem Prozeßsteuerregister 204-22 und auf einen Eingang, der die Auswahl der Ausnahme/ünterbrechungsposition des Schalter 201-14 bewirkt, geführt ist. Hierdurch wird eine Veränderung des Inhalts des Prozeßzustands-
_ registers GRO des Zwischenspeichers 203-10 verhindert. Der Inhalt eines adressierten Register-Speicherplatzes wird, über einen Datenauswahlschalter 203-18 mit zwei Stellungen in ein Zwischenspeicher-Puff erregister 203-16 übernommen. Der Inhalt des Pufferregisters 203-16 wird sodann über einen weiteren Datenauswählschalter 2O3-2Q mit zwei Stellungen dem Verarbeitungsabschnitt 2O4 zugeführt. Die verschiedenen Schaltstellungen der Datenauswahlschalter 203-14, 203-18 und 203-20 werden durch verschiedene
•Felder ausgewählt, die in Mikrobefehlen enthalten sind, die in
-das Register 201-15 eingelesen werden. Der Zwischenspeicher 2O3-1C empfängt Datensignale über eine von zwei Ausgangsschienen, die wahlweise an eines von vier Arbeitsregistern des" Blockes 204-12 •angeschlossen sind. · . . ... ·.■"·■
Jede Gruppe von 16 Registern weist einen Prozeßzustandsregisterepeicherplatz (Allgemeinregister GRO) zur Speicherung von Infor-
: »nation auf, die für die Steuerung des laufenden Prozesses von Bedeutung ist. Die ersten acht Bit-Positionen des Registers spei-'ehern Steuerungsinformation, die aufgrund ihrer Codierung den unterbrechenden Modul festlegt. D'ie" nächste Position ist durch eine Vorrang-Bit-Position gegeben, die durch ihre Codierung die Betriebsweise der Operation festlegt. Das Register umfaßt ferner eine externe Register-Bit-Position, die angibt, ob der Register-" Inhalt verändert werden kann sowie eine Adressenmodus-rBit-Position, zwei Zustandscode-Bit-Positionen, eine Ubertrags-Bit-Position und 22 Bit-Positionen für die Speicherung eines Zähletandcs, der periodisch heruntergezählt wird, während der zugeordnete Prozeß aktiv ist. Wegen der für eine Modifikation oder
809834/0620 _ , , r_ _
Bezugnahme erforderlichen Frequenz des Zugriffs auf den Inhalt des Prozeßzustanasregisters sind Signale entsprechend dem Inhalt dieses Registers in einem der Register des Verarbeitungsabschnittes 204 (z.B. Register 204-20) gespeichert. Der Speicherplatz des Allgemeinregisters zum Speichern des Inhalts des Prozeßzustandsregisters dient daher zum Speichern des laufenden Wertes des Prozeß-Zustandsregisters des Abschnittes 204 beim Auftritt einer Unterbrechung. . . . e
Jede Gruppe von Registern weist ferner einen Befehlszähler ■ (Allgemeinregister GR1) zur Speicherung der Adresse des laufenden Befehls des zugeordneten Prozesses auf. Zusätzlich weist jede Gruppe von Registern ein Seitentabellen-Basisregister (Allgemeinregister GR15) und eine Anzahl von Allgemeinregister'n (Allgemeinregister 2-14) zur temporären Speicherung von Operanden und * ' Adressinformationen auf. Der Zwischenspeicher 203-10 umfaßt ferner ein Register für eine Steuerblockbasis CBB, welches eine absolute Adresse speichert, die auf die Basis eines Ausnahmesteuerblockes und auf Unterbrechungssteuerblocktabellen im internen Speichermodul 500 verweist. Das erste Register GRO mit der höchsten Priorität innerhalb der Gruppe von Registern, dessen" Inhalt niemals verändert wird, speichert die Steuerblockbasisinformation. Die Unterbrechungs-Steuerblocktabellen weisen 256 Gruppen von Speicherplätzen auf, welche Information für die Verarbeitung der Art der Unterbrechung speichern. Die Ausnahme-Steuerblocktabellen weisen 16 Gruppen von Speicherplätzen auf, die Information für 3die Verarbeitung des Ausnahmetyps speichern.
Ausnahmen sind vom Prozessor festgestellte Zustände, die den Prozessor 200 automatisch veranlassen, in eine der 16 Ausnahme-Verarbeitungsroutinen einzutreten. Die Ausnahmezustände werden durch eine 4-Bit-Ausnahmenummer festgelegt, die den Bits 10-13 des Programmbefehls entspricht, wenn- der Prozessor in die Hauptbetriebsweise eintritt. In allen anderen Fällen weist die Ausnahmenummer den Wert O auf. Die Ausnahmennummer (ECB-Nummer) wird zur Bestimmung eines der Ausnahiuestcucrblöcke ECB mit vier Worten benutzt, welcher auf eine Ausnahme-Verarbeitungsroutinc verweist. ·
809834/0620
■■'■■■■■■■ · "· · ■-·" ORlGINALiNSPECTED
Die Byte-Adresse eines Ausnähmesteuerblockes ECB entspricht der Steuerblockbasis CBB-16 (ECB-Nummer -1). Jeder Ausnahinestcuo.rblock ECB v;eist Werte zum Laden der Register PSR, IC und PTBR auf sowie zusätzlich einen Wert für eine Sicherungsbereich-Hinweisadresse, die als Stapelbereich für die Speicherung von Information dient, die dem laufenden Prozeß zugeordnet ist, bevor der Prozessor 200 in die Ausnahmeroutine eintritt. Die Adresse eines Unterbrechungs-Steuerblockes ICB entspricht der Steuerblockbasis . CBB +16 (ICB-Nummer) . Die ICB-Nummer wird aus dem Unterbrechungswort in der erläuterten Weise gewonnen. Der Unterbrechungs-Steuerblock stellt ebenfalls einen Block von vier Worten dar und er enthält Werte für die Register PSR, IC, GR14 und PTBR.
Verarbeitungsabschnitt 204 " .' -.■■""
In diesem Abschnitt werden alxe arithmetischen und logischen Operationen durchgeführt, die von den Programmbefehlen des Prozesses gefordert werden. Der Abschnitt 204 umfaßt eine Addier/Verschiebeeinheit 204-1, die in der Lage ist, arithmetische, Verschiebe-
• und logische Operationen mit einem Paar Operanden von 36 Bit durcl zuführen. Die von einem Addierteil oder einem Verschiebeteil der Einheit 204-1 erzeugten Resultate werden aufgrund von Mikrobefehlen ausgewählt und anschließend selektiv über einen Datenauswählschalter 204-8 mit vier Stellungen über ein Paar Ausgangs-
■ leitungen entweder zu irgendeinem der Arbeitsregister des Blockes 204-12 oder zu einem Datenausgangsregister 204-14 übertragen. Das Daten-Ausgangsregister 204-14 ist an die Leitungen der Prozessor-Datenschnittsteile 600 angeschlossen. Der Block 204-12 umfaßt vier Arbeitsregister RO bis R3, die der temporären Speicherung des Inhalts des Befehlszählers "und der Adressen während einer Befehlsausführung dienen. Die RegMster können aus irgendeiner Position des Schalters 204-8 geladen werden. Das zu ladende Register und das hierzu erforderliche. Schreibsignal wird durch Felder innerhalb eines Mikrobefehls festgelegt, der dem Register 201-15 entnommen wird.
• ■
Gemäß Figur 2 sind die Register an ein Paar von Ausgangsschienen WRPund WRR angeschlossen. Die WRP-Schiene ist an Adresseingänge
204-5.an den Schalter 203-18 und den Zwischenspeicher 203-10 an- 1 · BQ9834/0.620·
: . ■ ~35 - " · . 2B06024
geschlossen. Die WRR-Schiene ist an den A-Operandenschalter 203-20, den B-Operandenschalter 204-1, an das Register 204-20 und an das Register 204-22 angeschlossen. Die zum Anschluß an die ViRR- und WRP-Schienen ausgewählten Register v/erden durch ein Feldpaar eines Mikrobefehls bestimmt, der aus dem Register 2O1-1S ausgelesen wird.
Gemäß Figur 2 weist der Verarbeitungsabschnitt 204 ein Prozeßzustandsregister 204-20 und ein Prozeßsteuerregister 204-22 auf. Das Prozeßzüstandsregister 204-20 wird in der erwähnten Weise über die Ausgangsschiene WRR vom Zwischenspeicher 203-10 geladen. Das Prozeßsteuerregister 204-22 ist ein 36-Bit-Register, das allen acht Unterbrechungspegeln gemeinsam ist. Die Bit-Positionen des Prozeßsteuerregisters 204-22 enthalten die folgende Information. Die Bit-Positionen 0-8 bestimmen folgende verschiedene Arter von Nicht-Hauptbetriebsweise-Ausnahmen:
PCR-Bit-Position Ausnahmetyp . · ··
.0 ' ' Operation nicht vollständig; keine Antwort der ■'.■■·.-.- Schnittstelleneinheit SIU-100 auf den Leitunger : . · ARA oder ARDA.
1 . ':.'.. . Seitenadress-Grenzfehler (Kennschlüsselprüfung) . 2 Seiten-Zugriffsfehler
" ' .3 ■■ · Seite im Speicher nicht vorhanden
; .· 4 . "".; . . Illegale Operation : . . ■ · :·_·■· · . . · ·.'···■■:.
.* 5 . .;■_■" Prozeß-Zeitgeber-Ablauf . , · ; "'·'". 6 : ' ·. . überlauf _ ' ■ t: \\ "■:''' '^' 1 .· 7 Verr.iegelungsfehler ■ \ f ■' ·.!·.■; . . "
8 " Adressen-Fehlausrichtung . . . ■ ,' Der Ausdruck "Fehler" bezieht sich nicht notwendigerweise auf den Auftritt eines Hardware-Fehlers, sondern umfaßt auch Fehlerzustände usw. ' % " . '
Die Bit-Positionen 9-15 bestimmen den Speicherplatz der Paritätsfehlcr und die Bit-Positionen 23-26 bestimmen die Prozessornummer und den Pegel, die über die Leitungen PNID und AIL erhalten werden. Die Bit-Position 27 stellt ein Unterbrechungs-
809834/0620 . . ·
Sperr-Bit dar, während die Bit-Positionen 28-35 Unterbrechungp-Anforderungs-Bits speichern die für den Fall, daß sie den Wert "1" aufweisen, eine Unterbrechung mit einem der Bit-Position entspre- . chenden Pegel anzeigen (z.B. 28 = Pegel O). Die Bit-Positionen 27 bis 35 können durch, einen Programmbefehl über die Ausgangsschiene WRR aus der Reihe von Registern des Blockes 204-12 geladen werden. Die Inhalte eines jeden Registers 204-20 und 204-22 werden selektiv, über einen Datenauswahlschalter 204-24 mit zwei Positionen einer der Positionen des Datenauswahlschalters 204-8 zugeführt. Das Register 204-20 ist ferner mit der PI-Position eines zweistufigen Steuerungs-Auswahlschalters 2O4-1O und eines vierstufigen Adressen-Auswahlschalters 204-6 verbunden. Der Steuerungsschalter ■ 204-10 erzeugt Steuerungsinformation für die Schnittstelleneinheit SIU-IOO,- welche zur Übertragung der Anweisung zu dem richtigen Modulverwendet wird. Eines der Felder des aus dem Register 201-15
. . ausgelesenen Mikrobefehls wählt die geeignete Position entweder
. , für eine Speicher oder eine programmierbare Schnittstellenanv/eisung aus. Die Steuerungsinformation für eine Speicheranweisung wird erzeugt durch Felder innerhalb des Mikrobefehls und durch seitenunterteilte Adresseninformation vom Zwischenspeicher 204-4 oder durch absolute Adresseninformation von der Schiene WRP. Im Falle einer Lese/Schreib-Anweisung wird die Steuerungsinformation wie - folgt erzeugt: das Bit 0 weist für eine Lese/Schreib-Anweisung den
·..,'· Wert "0" auf; das Bit 1 definiert den internen/externen Speicher und entspricht dem PTW-Bit 0 (seitenunterteilt) oder dem WRP-Bit 0 (absolut). Die Bits. 2-4 entsprechen den PTK-Bits 1-3 (seitenunterteilt) oder den WRP-Bits 1-3 (absolut). Die Bits 5-6 entsprechen Bits eines der Felder des Mikrobefehls, die durch ihre Codierung eine Einfachwort- oder Doppelwortübertragung bzw. eine Lese- oder Schreib-Zyklusoperation festlegen. Beim Start eines Speicher-. . zyklus oder bei der Auslösung einer Anweisung werden die Signale des Steuerungsschalters 204-10 in ein Steuerungsregister 204-16 geladen, das die Signale den geeigneten Leitungen der Daten-. schnittstelle 600 des Prozessors 200 zuteilt. Die zusätzliche
* ■' Steuerungsinformation aufweisende Anweisung wird durch die Position 2 des Adressenschalters 204-6 im Falle einer programmier-
809834/0620 .
..,..■ ..·· ' , ··· .■■'·'·. CniGINAL INSPECTED
baren Schnittstellenanweisung erzeugt. ' ■
Wie der Figur 2 weiterhin entnehmbar ist, umfaßt der Verarbeitungsabschnitt 204 einen Zwischenspeicher 204-4, der über Adresseingänge 204-5 adressierbar ist. Der Zwischenspeicher 204-4 gestattet eine Seitentabellen-·Adresspeicherung für jeden der acht ünterbrechungspegel, die bei der Erzeugung absoluter Adressen für die Adressierung des internen Speichermoduls 500 benutzt werden. Im Falle der Adressierung wird der Inhalt des Speicherplatzes des Zwischenspeichers 204-4 in zwei Positionen des Adressenschalters 204-6 mit vier Positionen ausgelesen. Diese zwei Positionen werden für eine- Bezugnahme auf Seiten innerhalb des internen . Speichermoduls 500 benutzt. Da die Seitenunterteilung des Zwischenspeichers 204-4 kein besonderes Merkmal der vorliegenden Erfindung bildet, wird auf eine nähere Diskussion dieser Speichertechnik verzichtet. Die anderen beiden Positionen des Adressen-Auswahlschalters 204-6 werden zur Vorgabe der Speicher- oder programmierbaren Schnittstellenanweisung benutzt. Insbesondere
\ wird die Position 1 des Adressenschalters 204-6 bei Auswahl durch ein Adressen-Steuerfeld eines im Register 201-15 gespeicherten Mikrobefehlswortes zur Erzeugung der Lese/Schreib-Speicheranweisung benutzt, die Bits 0-8 mit einer Codierung entsprechend den vorbestimmten Feldern des Mikrobefehlswortes umfaßt und ferner Bits 9-35 aufweist, die aufgrund ihrer "Codierung entweder der .seitenunterteilten Adresseninformation des Speichers 204-4 oder den absoluten Adressen-Bits entsprechen, wie sie von den Arbeitsregistern des Blockes 204-12 auf der Ausgangsschiene WRP ausgegeben werden. Wird die PI-Position des Schalters 204-6 ausgewählt, so erzeugt der Schalter eine programmierbare Schnittstellenanweisung mit folgenden Bits: Bit 0 weist den Wert "0" auf; Bit1 wird aus einem Feld eines Mikrobefehls zugeführt, der in dem Register 201-15 gespeichert' ist,· Bit 2 wird dem Bit 9 des PSR-Registers 204-20 entnommen und bestimmt, ob der ablaufende Prozeß gewisse externe Register verändern kann,· Bits 5-Q entsprechen den Bits 4-7 des Registers 204-20 und sie bestimmen den Anschluß oder Unterkanal innerhalb des Moduls; Bit 3 bestimmt
• ■ .·· 8098.3-4/062-0 · · . . .
- 38 - ■-.'■'■ .
durch seine Codierung die Prozessor-Paarnummer, die von der Schnittstelleneinheit SIU-IOO angewählt wurde; Bit 4 weist den Wert "O" auf und die Bits 9-35 entsprechen den Bits 9-35 der Schiene WRP, die die absolute Adresse der programmierbaren Schnittstellenanweisung liefert.
80983 A/062.0·
Interner Speichermodul 500
Fig. 4 zeigt die Hauptblöcke der vorliegenden Erfindung und ein bevorzugtes Ausführungsbeispiel eines internen Speichermoduls 500. Es ist ersichtlich, daß der Modul 500 einen Pufferspeicherabschnitt 500-2, einen Hintergrundspeicherabschnitt 500-4, einen Eingangsregisterabschnitt 500-12, einen Steuerschaltkreisabschnitt 500-6, einen Eingangsschalter 500-8 und einen Ausgangsschalterabschnitt 500-10 aufweist, die in der dargestellten Weise angeordnet sind. Der Ausgangsschalterabschnitt 500-10 und der Eingangsregisterabschnitt 500-12 übertragen Steuerinformation zu und von dem Prozessorpaar PO bzw. dem Multiplexermodul 300 über die Schalter der Schnittstelleneinheit SIU-100, wie dies hier erläutert wird.
Der in näheren Einzelheiten in Fig. 6 dargestellte Pufferspeicherabschnitt 500-2, umfaßt einen Puffer 500-20 mit zugeordneten Steuerschaltkreisen 500-21, eine Listenspeichereinheit 500-22 mit zugeordneten Vergleichsschaltkreisen 500-24, Adressenerzeugungsschaltkreise 500-23, Listenfehlerprüfschaltkreise 500-32, Pufferspeicher fehlerprüf schaltkreise 500-30, Anzeigenlogikschaltkreise 500-28 und Steuerschaltkreise 500-26, die in der dargestellten Weise angeordnet sind. Der Pufferspeicher ist in 4 Pegel bzw. Abschnitte unterteilt, von denen jeder aus mehreren herkömmlichen bipolaren Schaltkreischips aufgebaut ist. Jeder Pegel ist in acht Byteabschnitte unterteilt, wobei jeder Byteabschnitt fünf bipolare Schaltkreischips umfaßt. Die Schaltkreischips enthalten jeweils 128 adressierbare Speicherplätze mit einer Breite von 2 Bit, wobei die Gesamtheit der Chips zu einer Kapazität von 64 Blockadressen-Speicherplätzen oder 256 Adressenspeicherplätzen führt. Jeder Block wird durch vier Worte mit 40 Bit gebildet, wobei jedes Wort vier Bytes aufweist und jedes Byte aus 9 Datenbits und einem Paritätbit besteht. Wie hier erläutert wird, führen die Fehlerprüfschaltkreise 500-30 eine Paritätsprüfung der aus dem Pufferspeicher 500-20 ausgelesenen Information durch.
809834/062Q
Die Listenspeichereinheit 500-22 speichert die Adressen eines jeden Pufferblockes und ist in ähnlicher Weise in vier Pegel aufgeteilt. Die Einheit 500-22 weist einen nicht dargestellten umlaufenden Zähler auf zur Vorgabe des Pegels des Pufferspeichers, in den während eines nächsten Operationszyklus einzuschreiben ist. Die verschiedenen Pegel des Puffers definieren eine Spalte von 80 Bits und der Pufferblock umfaßt zwei solche Spalten. Die Listenspeichereinheit 500-22 ist somit in eine Anzahl von Spalten entsprechend der Anzahl von Blöcken in dem Puffer unterteilt. Im Hinblick auf die vorliegende Erfindung kann die Organisation des Pufferspeichers als herkömmlich angesehen v/erden und beispielsweise der Organisation entsprechen, wie sie in der US-PS 3.845.474 dargestellt und beschrieben ist. Während eines Operationszyklus des Pufferspeichers werden vier Bytes in den Ausgangsmultiplexerschalter 5OO-1O über eine Anzahl von 1 aus 8-Selektorschalkteisen 500-2Oa ausgelesen, die in Pig. 7c in näheren Einzelheiten dargestellt sind.
Die Listenspeichereinheit 500-22 liefert Adreßsignale an die Vergleichsschaltkreise des Blockes 500-24. Diese herkömmlich aufgebauten Schaltkreise stellen fest, ob sich die angeforderte Information im Pufferspeicher oder irgendeinem der vier Pegel befindet. Die Vergleichsschaltkreise 500-24 legen das Ergebnis des Vergleichs an die Anzeigeschaltkreise des Blockes 500-28 an. Die Anzeigeschaltkreise 500-28 speichern ihrerseits die Übereinstimmungsanzeigen, die als Eingangssignale an die Steuerlogikschaltkreise des Blockes 500-6 angelegt werden. Die Listenadresse-Erzeugungsschaltkreise 5OO-23 erzeugen Parität-Prüfbits für die Adreßleitungen DTM 17-25, die in einen der vier Pegel eingeschrieben werden. Die Listenfehler-Prüfschaltkreise 500-32 führen eine Paritätsprüfung hinsichtlich der aus der Liste 500-22 ausgelesenen Adresse durch, um sicherzustellen, daß die korrekte Information aus dem Pufferspeicher 500-20 abgerufen wird. Der Hintergrundspeicherabschnitt 500-4 umfaßt einen Hintergrundspeicher 500-40, Zeittaktschaltkreise 5OO-48, ein Ausgangsregister
809834/0620
500-42 mit 160 Bit, Datenkorrektur- und Parität-Erzeugungsschaltkreise 500-44 und eine Anzahl von Steuerschaltkreisen des Blockes 500-46, wobei diese Elemente in der in Fig. 6 dargestellten Weise angeordnet sind. Die Schaltkreise 500-48 umfassen herkömmlich aufgebaute Zählerschaltkreise und Verzögerungsleitungen, welche Zeittakt- und Steuersignale für die Synchronisierung der Gesamtoperation des Speichermoduls 500-2 liefern.
Der Hintergrundspeicher 500-40 ist aus 4K MOS-Speicherchips in herkömmlicher Weise aufgebaut und besitzt eine Kapazität von 128K-Speicherworten, die in 32K Blöcken angeordnet sind und wobei jedes Wort aus 40 Bit besteht. Die Datenkorrektur- und Parität-Erzeugungsschaltkreise gemäß Fig. 7d stellen Fehler in den Worten fest und korrigieren diese, wenn die Worte aus dem Hintergrundspeicher 500-40 ausgelesen bzw. in diesen eingeschrieben werden. Im Hinblick auf die vorliegende Erfindung können diese Schaltkreise als herkömmlich angesehen werden.
Gemäß Fig. 6 weist der Eingangsregisterabschnitt ein Zonen-, Adressen- und Anweisungsregister 500-120 (ZAC-Register), ein erstes Wortpufferregister 500-22 und ein zweites Wortpufferregister 500-123 auf, die in der dargestellten Weise angeordnet sind. Das ZAC-Register 500-120 speichert- das ZÄC-Anweisungswort, das das in Fig. 8 gezeigte Format besitzt. Den Eingangspufferregistern 500-122 und 500-123 wird das Datenwort bzw. die Datenworte einer ZAC-Anweisung zugeführt, die an die Leitungen DTM der Schnittstellen 603 durch einen Anforderungsmodul angelegt werden. Der Inhalt der Register 500-122 und 500-123 wird an verschiedene Bytepositionen des 1 aus 2-Multiplexerschalters 500-8 angelegt. An den Schalter 500-8 werden ebenfalls die aus dem Hintergrundspeicher ausgelesenen und in den Pufferspeicher 500-20 einzuschreibenden Daten angelegt.
Die in dem ZAC-Register 500-120 enthaltene Anweisung wird an die in dem Block 500-6 enthaltenen Decodiergatterschaltkreise ange-
809834/0620
legt, während die Adreßsignale an die Schaltkreise des Blockes 500-6, der Listenspeichereinheit 500-22, des Pufferspeichers 500-20 und des Hintergrundspeichers 500-40 zu deren Adressierung angelegt werden.
Die Schaltkreise des Blockes 500-6 erzeugen die verschiedenen Steuer- und Zeittaktsignale, um verschiedene Teile des internen Speichermoduls in die Lage zu versetzen, die durch die in dem ZAC-Register 500-120 gespeicherte Anweisung festgelegte Operation auszuführen. Hierbei werden Steuersignale dem Eingangsmultiplexerschalter 500-8 und dem Ausgangsmultiplexerschalter 500-10 zugeteilt, um die Gruppe von Datensignalen auszuwählen, die in den Hintergrundspeicher 500-40 einzuschreiben bzw. aus dem Hintergrundspeicher 500-40 und dem Pufferspeicher 500-20 auszulesen ist, Im Hinblick auf die vorliegende Erfindung können der Multiplexer bzw. die Datenselektorschaltkreise und Register zusätzlich zu den noch anhand der Fig. 8 zu erläuternden Schaltkreise als herkömmlich angesehen werden.
Fig.7a zeigt in näheren Einzelheiten bestimmte Schaltkreise der Blöcke 500-6, 500-21, 500-26 und 500-46. Aus dieser Figur geht hervor, daß die Steuerschaltkreise des Blockes 500-6 mehrere ÜND/NAND-Gatter 500-60 bis 500-74 umfassen. Den Gattern 500-60, 6OO-61 und 500-62 werden verschiedene Bitsignale der ZAC-Anweisung und das Puffer-Umgehungssignal von dem ZAC-Register 500-120 zugeführt. Diese Signale werden in der dargestellten Weise miteinander verknüpft und an die Gatter 500-64 und 500-74 angelegt. Das resultierende Lese- und Schreib-Ladeanweisungssignal wird an die Puffersteuerschaltkreise 500-21, die Listensteuerschaltkreise 500-46 in der dargestellten Weise angelegt. Die anderen Anweisungssignale, wie beispielsweise RCLOOO und RR100, werden ebenfalls an die Hintergrundspeicherschaltkreise 5OO-46 angelegt.
809834/0620
Wie aus Fig.7a hervorgeht, weisen die Pufferschaltersteuerschaltkreise 500-21 in Reihe miteinander verbundene NAND/UND-Gatter 500-2:10 und 500-212 auf, die ein Pufferspeicher-Schreibtaktsignal WRCACHE100 für einen Schreib-Taktfreigabeschaltkreis 500-214 erzeugen. Der Schreib-Taktfreigabeschaltkreis 500-214 umfaßt herkömmliche Logikgatterschaltkreise, die an den Pufferspeicher 500-20 die geeigneten Zeittaktsignale liefern, wie sie für einen Schreibzyklus der Operation erforderlich sind. Die Steuerschaltkreise weisen ferner zusätzliche UND/NAND-Gatter 500-216 bis 500-222 auf, die den Zustand des Adreßbits 32 modifizieren, wie dies beim Einschreiben eines Datenblockes vom Hintergrundspeicher 500-40 in den Pufferspeicher aufgrund einer Schreibbzw. Leseanweisung erforderlich ist. In gleicher Weise umfassen die Listensteuerschaltkreise in Reihe geschaltete NÄND/UND-Gatter 500-260, 500-262 und 500-264, wobei das letzte Gatter ein Listen-Schreibtaktsignal WRDR100 an einen Schreib-Freigabeschaltkreis 500-266 liefert. Der Schreib-Freigabeschaltkreis 500-266 umfaßt herkömmliche Logikgatterschaltkreise, die geeignete Zeittaktsignale an die Listenspeichereinheit 500-22 liefern, wie sie für die Ausführung eines Schreibzyklus der Operation erforderlich sind.
Die Hintergrundspeichersteuerschaltkreise 500-46 umfassen in Reihe geschaltete UND/NAND-Gatter 500-460 bis 500-468. Diese Gatter erzeugen ein Hintergrundspeicher-Anforderungssignal BSREQ100 und sie gestatten einem Datensignal, einen Hintergrundspeicher-Lese/Schreib-Zyklus der Operation auszulösen und Daten des Hintergrundspeichers an die Schnittstelleneinheit SIU-100 zu übertragen .
809834/0620
-AA-
Die letzte Gruppe von Schaltkreisen in Fig. 7a bilden die Übereinstimmungs-Registerschaltkreise 500-28 gemäß Fig. 6. Die Schaltkreise umfassen NAND/UND-Gatter 500-280 und 500-282 sowie ein UND-Gatter 500-281, die in der dargestellten Weise miteinander verbunden sind. Dem NAND/UND-Gatter 500-280 werden die resultierenden Vergleichssignale von den Vergleichsschaltkreisen 500-24 zugeführt und dieses Gatter liefert einen Hinweis auf einen Listenvergleich an das Gatter 500-282. Der Ausgang des Gatters 500-282 ist seinerseits auf den Setzeingang eines übereinstimmungsregisters-Flip-Flops 500-284 geführt. Einem NAND/UND-Gatter 500-283 wird von der Schnittstelleneinheit SIU-IOO ein ZAC-Annahmesignal zugeführt und anschließend auf den Rückstel.leingang des Flip-Flops 500-284 gegeben. Die Ausgangssignale mit den Binärwerten "1" und "0" des Flip-Flops 500-284 werden anschließend an verschiedene Blöcke innerhalb von Fig. 7a in der dargestellten Weise verteilt.
Gemäß der vorliegenden Erfindung werden den Übereinstimmungs-Registerschaltkreisen 500-28 Fehlersignale von den Listen-Fehlerprüfschaltkreisen 500-32 und von den Pufferspeicher-Fehlerprüfschaltkreisen 500-30 gemäß Fig. 6 zugeführt. Es sei darauf verwiesen, daß der UND-Ausgang des Gatters 500-285 als weiterer Eingang dem Ubereinstimmungsgatter 500-282 zugeführt wird. Wenn daher irgendeines der Fehlersignale CAERROÖOO bis DIRERROOO auf den Binärwert "0" gesetzt ist und somit einen Fehler anzeigt, so wird über das UND-Gatter 500-285 das Signal DIR/CERROOO auf den Binärwert "0" gesetzt. Hierdurch wird das Gatter 500-282 an der Umschaltung des Signales SETHIT100 auf den Binärwert "1" gehindert, ungeachtet der Tatsache, daß die Information als im Pufferspeicher 500-20 vorhanden ermittelt wurde. Dies bewirkt die Simulation eines Fehl-Zustandes, wie noch zu erläutern sein wird. Die Fehlersignale CAERROOOO bis CAERR3000 werden zusätzlich an ein ODER-Gatter 500-287 angelegt, dessen Ausgang einen Eingang eines UND-Gatters 500-298 bildet. Der Ausgang des UND-Gatters 5OO-298 ermöglicht bei einem Binärwert von "1" die Fortschaltung
809834/0620
des in dem Block. 500-22 enthaltenen zyklischen Zählers, auf den nächsten Zählstand, um den nächsten Pegel der H.tnweislisten-Speichereinheit 500-22 zu adressieren. Wenn daher irgendeines der Fehlersignale, welche einen Pufferspeicher-Fehlerzustand anzeigen, nicht den Binärwert "1" aufweist, so verhindert das UND-Gatter 500-289 die Fortschaltung des Zählstandes auf den nächsten Pegel. Dies ermöglicht seinerseits das Einschreiben der korrekten aus dem Hintergrundspeicher 500-40 ausgelesenen Version der Information in den Pufferspeicher 500-20,wenn das Umgehungsbit 9 auf den Binärwert "0" gesetzt ist. Das Signal IKHIBRROOO des Gatters 500-287 kann somit als ein Haltesignal angesehen werden, das sicherstellt, daß die Hintergrundspeicherinformation in den gleichen Pegel des Pufferspeichers zurückgeschrieben wird, an dem sie gespeichert war, als sie als fehlerhaft festgestellt wurde. Hierdurch wird die Korrektur von Übertragungsfehlern ermöglicht.
Fig. 7b zeigt in näheren Einzelheiten die Schaltkreise 500-23. Wie ersichtlich, umfassen die Schaltkreise einen Paritäts-Erzeugungsschaltkreis, der bei Abwesenheit einer Löschoperation (z.B. durch das Signal DIRCLR001 freigegeben) ein ungerades Paritätssignal für die Ädreßsignale CAADDR17100 bis CAADDR251OO erzeugt. Dies bedeutet, daß das Listen-Paritätssignal DIRDAPARITY100 am geraden Ausgangsanschluß auf den Binärwert "0" gesetzt wird, wenn eine ungerade Anzahl von Binärwerten "1" in den Signalen CAADDR17100 t>is CAADDR251OO vorliegt. Andererseits setzen die Paritäts-Erzeugungsschaltkreise das Signal DIRDAPARITY100 auf den Binärwert "1", wenn eine gerade Anzahl von Binärwerten "1" innerhalb der Signale CAADDR17100 bis CAADDR251OO vorliegt.
Die Listen-Paritätsfehlerschaltkreise 500-23 gemäß Fig. 7b umfassen eine Anzahl von Paritätserzeugungsschaltkreisen 500-320 bis 500-326, welche Paritätsfehlersignale LVL0DIRPE100, LVL1DIRPE100, LVL2DIRPE000 und LVL3DIRPE000 für jede der aus den vier Listenpegeln ausgelesenen Adressen erzeugen.
809834/0620
Jeder der Schaltkreise 500-320 bis 500-326 wird durch entsprechende Gültigkeitssignale LVLOVALIDOOOO bis LVL3VALIDOOOO freigegeben, die ebenfalls aus der Listen-Speichereinheit 500-22 ausgelesen werden.
Es sei darauf verwiesen, daß die Signale LVL0DIRPE100 und LVL1.DIRPE100, die bei Abwesenheit von Fehlern normalerweise den Binärwert "1" aufweisen, von den geraden Ausgangsanschlüssen den Eingängen von tibertragssicherungs-Addierschaltkreisen 500-330 bis 5OO-336 zugeführt v/erden. Die Signale LVL2DIRPEOOO und LVL3DIRPE000, die normalerweise den Binärwert "0" bei Abwesenheit von Fehlern aufweisen, werden von den geraden Ausgangsanschlüssen entsprechenden Ubertragssicherungs-Addierschaltkreisen 500-334 und 500-336 zugeführt.
Jedem der Ubertragssicherungs-Addierschaltkreise 500-330 bis 5OO-336 wird als zweiter Eingang ein entsprechendes Paritäts-Prüfbitsignal LVLODIRPAR100, LVLrDIRPAR100, LVL2DIRPAROOO und LVL3DIRPAR000 zugeführt. Die Addierschaltkreise 5OO-33O bis 500-336 summieren ohne Übertrag das Paar von Eingangsignalen. Wenn das Paar von Eingangssignalen einander gleich ist, so weist jedes der Ausgangssignale LVLODIRPER100, LVLi DIRPERlOO, LVL2DIRPER000 und LVL3DIRPER000 den Binärwert "0" auf.
Die Signale LVL0DIRPER100 bis LVL3DIRPER0O0 werden als Eingangssignale einem UND/NOR-Gatter 500-338 zugeführt. Zusätzlich werden die verschiedenen Pegelvergleichssignale von den Listen-Vergleichschaltkreisen 500-24 verschiedenen Eingängen des Gatters 500-338 zugeführt, um das Vorliegen von mehr als einem Pegelvergleich und somit einen Fehlerzustand festzustellen. Wenn ein Unterschied zwischen der durch die Anweisung festgelegten Adresse und der aus der Listen-Speichereinheit 500-22 gelesenen Adresse vorliegt oder wenn mehr als ein einziger Pegelvergleich vorliegt, so setzt das Gatter 500-338 das Signal DIRERROOO auf den Binärwert 11O".
809834/0620
Fig. 7c veranschaulicht in näheren Einzelheiten die Pufferspeicher-Auswahlschaltkreise 500-2Oa gemäß Fig. 6. Jeder der vier Gruppen von acht Eingangsdaten-Auswahlschaltkreisen 500-200 bis 500-206 werden Signale von den vier Pegeln des Pufferspeichers 500 -20 zugeführt. Jeder Gruppe von Auswahlschaltkreisen werden Steuersignale zugeführt, die festlegen, welches der acht Daten- und Paritäts-Bitsignale als ein Ausgangssignal auszuwählen ist. Die Paritäts- und Daten-Äusgangssignale der Daten-Auswahlschaltkreise 500-200 bis 500-206 werden außer den Schaltern 500-10 in Fig. 6 noch einer entsprechenden Anzahl von Paritäts-Erzeugungsschaltkreisen 500-300 bis 500-306 zugeführt.
Da das Paritäts-Prüfsignal als Eingang jedem Paritäts-Erzeugungsschaltkreis zusammen mit den Datensignalen eines jeden Bytes zugeführt wird, setzen die Schaltkreise bei Abwesenheit eines Fehlers die Signale CAERROOO bis CAERR3000 auf den Binärwert "1". Anders ausgedrückt wird das an dem ungeraden Ausgangsanschluß vorliegende Fehlersignal (z.B. eines der Signale CAERROOOO bis CAERR3000) auf den Binärwert "O" gesetzt, wenn ein Byte eine fehlerhafte Parität entsprechend einer geraden Anzahl von "1" aufweist.
Die Pufferspeicher-Fehlersignale und die .Listenspeicher-Fehlersignale werden durch entsprechende NAND-Gatter 500-310 bis 500-318 invertiert und beim Auftritt eines Listenspeicher-Taktsignales CLKDIR020 von den Schaltkreisen 500-266 in Fig. 7a in einem Register 500-320 gespeichert. Die Ausgänge mit dem Binärwert "O" des Registers 500-320 werden einem Paritätserzeugungsschaltkreis 500-322 zugeführt. Der Schaltkreis 500-322 setzt bei Abwesenheit von Fehlersignalen das Signal CESPAR100 an seinem ungeraden Ausgangsanschluß auf den Binärwert "1". Ein Hinweis auf den Pufferspeicher- oder Listen-Fehlerzustand wird durch das Speichersystem als Statusinformation gespeichert.
809834/0620
Fig. 7d zeigt in näheren Einzelheiten die Fehlerfeststeil- und Korrekturschaltkreise 500-44 von Fig. 6. Die Schaltkreise 500-44 umfassen eine Anzahl von Paritäts-Erzeugungsschaltkreisen in dem Block 500-440, die eine Anzahl von Prüfbitsignalen PC1-8000 erzeugen . Gruppen dieser Signale werden einer Anzahl von Binär/Oktal-Decodierschaltkreisen 500-4 42 bis 500-446 zugeführt. Die Signale des Decodierers werden einer Anzahl von 1 aus 2-Datenselektorschaltkreisen mit fünf Eingängen innerhalb des Blockes 500-448 zugeführt. Die ausgewählten Ausgangssignale sind an eine Anzahl von Ubsrtragssicherungs-Addierschaltkreisen des Blockes 500-450 angelegt, die eine korrigierte Version der Eingangs-Datensignale RDOO bis RD71100 bei einer Feststellung eines korrigierbaren Fehlerzustandes durch die Schaltkreise des Blockes 5OO-46O (z.B. Signal UCEROOO=I) erzeugen. Die Paritätserzeugungsschaltkreise innerhalb des Blockes 500-450 erzeugen die Prüfbitsignale RDPO-P07111 für die korrigierte Version der Signale RDOO bi.s rd71111. Es sei darauf verwiesen, daß ein an die Schaltkreise des Blockes 500-460 und des Blockes 500-462 angelegtes Sperrsignal DABLEECOOO normalerweise den Binärwert "1" aufweist. Die verschiedenen Abschnitte der Fehlerfeststell- und Korrekturschaltkreise können somit als normalerweise für den Betrieb freigegeben angesehen werden.
Die Signale RD72 bis RD79 entsprechen den Fehlercode-Prüfbits, die durch nicht-dargestellte in dem Block 500-44 enthaltene Paritätserzeugungsschaltkreise erzeugt werden und die während eines vorangegangenen Schreibzyklus in den Speicher 500-46 eingeschrieben wurden. Die Fehlercode-Prüfbitsignale RD72 bis RD79 werden in herkömmlicher Weise benutzt, um bestimmte Prüfbitsignale PCI-1OOO zu erzeugen.
Es sei darauf verwiesen, daß alle Fehlerkorrektur-, Feststellvmd Paritäts-Erzeugungsschaltkreise 500-44 einen herkömmlichen bekannten Aufbau aufweisen können.
809834/0620
- , 49 -
.. . ■ System-Schnittstelleneinheit 100
Unterbrechungsabschnitt 101
Die System-Schnittstelleneinheit 100 dient dem Nachrichtenaustausch zwischen den Modulen des Systems gemäß Figur 1 über mehrere Doppelkanalschalter. Verschiedene Doppelkanalschalter wer-
■- den zum Sammeln der Signale auf den Leitungen der verschiedenen Schnittstellen der Module verwendet. In Figur 3a sind die Schalter und Schaltkreise des Unterbrechungsabschnittes 1'O1 zum Verarbeiten der Modul-Unterbrechungsschnittstellen dargestellt. Im System gemäß Figur 1 sind Module 'dargestellt, die an die Anschlüsse LMO, A,E, G und J angeschlossen sind und die jeweils Signale zu der Schnittstelleneinheit SIU-100 über verschiedene Leitungen
' der Unterbrechungs-Schnittstelle 602 zuleiten. Die Schnittstelle SIU-100 gibt zusätzlich Signale über eine Unterbrechungs-Schnittstelle 600 an den zugeordneten Anschluß L gemäß Figur 1 ab. . . · ··:■-..
Gemäß Figur 2'ß. gibt jeder Modul, wenn er eine Bearbeitung anfordert, ein Signal auf. seiner Unterbrechungsanforderungsleitung IR zusammen .mit einer geeigneten Unterbrechungs-Bestimmungsinf ormation auf den Leitungen IDA ab, wobei diese Leitungen den Schaltkreisen eines Unterbrechungsprioritäts- und Steuerblockes 101-2 zugeführt sind. Die Schaltkreise .des Blockes 101-2 überwachen alle Unterbrechungs-Schnittstellen und sie wählen den geeigneten, dem Prozessor 200 zugeordneten Prozeß . aus, wenn die Anforderung eine Priorität aufweist, die höher ist als die Priorität des gerada ausgeführten Prozesses. Wenn der Prozessor 200 seine 'Bereitschaft zur Aufnahme der Anforderung signalisiert, schaltet die Schnittstelleneinheit SIU-100 die der höchsten Prioritäts-'Anforderung zugeordnete Identifizierungsinformation auf den Prozessor 200. Die Identifizierungsinformation weist eine Unter-
8:0 9*83%/08 2 0 ' . ORIGINAL INSPECTED
■· \
brechungs-Steuerblocknumraer von 8 Bit einschließlich eines Paritäts-Bits auf sowie eine Unterbrechungs-Pegclnununer von 3 Bit und eine Prozessor nummer von einem Bit mit einem Paritäts-Bit und schließlich eine Kanalnummer von 4 Bit.
Die Schaltkreise des Blockes 101-2 weisen Decodierschaltkreise ' auf, dieieProzessornummer und die Unterbrechungs-Anforderungssignale decodieren. Unter der Voraussetzung/ daß kein Paritätsfehler vorliegt, werden die Ausgangssignale der Decodierschaltkreise den Prioritäts-Logikschaltkreisen des ausgewählten Prozessors zugeführt. Die Prioritäts-Logikschaltkreise decodieren die. Unterbrechungs-Pegelsignale und bestimmen den höchsten Prioritätspegel und sodann die Priorität des Anschlusses, so daß der Modul mit dem höchsten Prioritätspegel und der höchsten Anschlußpriorität ausgewählt wird. Die Unterbrechungs-Anschlußpriorität innerhalb eines vorgegebenen Pegels stellt sich wie folgt dar:
Alt; Anschluß L; Anschluß-A, Anschluß B7 Anschluß C; .
Anschluß D; Anschluß E; Anschluß F, Anschluß G; Anschluß H;
Anschluß I und Anschluß K. : .
Dies bedeutet hinsichtlich des Systemes gemäß Figur 1, daß der Anschluß des laufenden Prozesses die höchste Priorität gefolgt von der Schnittstelleneinheit SIU-100, dem Hochgeschwindigkeitsmultiplexer 300, dem Zentralprozessor 70O7 dem Prozessor 200 und dem Niedriggeschwindigkeitsmultiplexer'400 aufweist.'
Die Prioritätsschaltkreise des Blockes 101-2 erzeugen ein Ausgangssignal auf einer Leitung von N-Ausgahgsleitungen, wobei die Zahl N der Anzahl der unterbrechenden Module innerhalb des Systems entspricht. Die N-Ausgangsleitungen werden einem Daten-Auswahlschalter 101-4 mit acht. Positionen zugeführt, der die Unterbrechungs-Pegelsignale eines Unterbrechungspegels mit einer höheren Priorität als des gerade·bearbeiteten Pegels auswählt und in ein Register 101-6 überträgt. Die Ausgangssignale des Registers 101-6 werden auf den Leitungen AIL ausgegeben, wenn der Prozessor 200 die Leitung IDR den Wert H1" annehmen läßt, vorausgesetzt.daß die Schnittstelleheinheit SIU-100 zuvor
809834/0620
die Leitungen HLIP und LZP zur Annahme des Viertes "1" veranlaßt hat. Wenn der laufende Prozeß für eine Unterbrechung nicht gesperrt ist, so verursacht die Unterbrechungsanforderung die Aufgabe des laufenden Prozesses durch den Prozessor 200 und die Annahme eines Unterbrechungswortes von der Schnittstelleneinheit SIU-100/ wobei dieses Wort die zuvor erwähnte Identifizierungsinformation enthält. Das Unterbrechungswort weist im einzelnen folgendes Format auf: ' '
Bit 0 ist eine neue Unterbrechungs-Bit-Position. Wenn dienes Bit auf den Wert "1" gesetzt ist, so zeigt es an, daß es sich
• bei der Unterbrechung um eine neue Unterbrechung handelt und wenn es auf den Wert "0" gesetzt ist, so zeigt es an, daß die
.· Unterbrechung einen zuvor unterbrochenen Prozeß betrifft, der
• wieder aufgenommen wird.
Bits 1-17 werden nicht benutzt und weisen den Wert "O" auf.
• Bits 18-27 bestimmen die Unterbrechungs-Steuerblocknummer, . wobei die Bits 18 und 27 auf den Wert "0" gesetzt sind.
Bits 28-31 werden durch die Schnittstelleneinheit SIU-100 erzeugt und bestimmen den Ursprungsmodul.
Bits 32-35 werden durch die Module mit Mehrfachansch.lüssen erzeugt und bestimmen den Unterkanal oder Anschluß innerhalb des Ursprungsmoduls. .
Die Ausgangsleitungen der Unterbrechungs-Prioritätsschaltkreise 101-2 werden einem weiteren Daten-Auswahlschalter 101-8 zugeführt. Da nur der die höchste Priorität aufweisende anfordernde Modul ein Signal an den Auswahlschalter 101-8 abgeben wird, ist dieser in vorbestimmter Weise so verdrahtet, daß er einen Satz 'codierter Steuerungssignale abgibt, die den physikalischen Anschluß festlegen, mit dem der anfordernde Modul verbunden wird. Hierzu diener beispielsweise die Bits 28 - 31 des Unterbrechungswortes. Im vorliegenden Fall werden die folgenden Steuerungscodes für die Auswahl der Module gemäß Figur 1 erzeugt:
809834/0620
' : . original: inspected
Code Identifizierter Schnittstelleneinheit-Anschluß
OOOO Interner Speichermoudl - Anschluß LMO
• 0001 Anschluß K :" , · . ■ OO1O Schnittstelleneinheit SIU-100 - Anschluß L 0101 Niedriggeschwindigkeitsmuitiplexer 400 - Anschluß 1
• 0110 Prozessor 200 - Anschluß G · ■
1101 Hochgeschwindigkeitsmultiplexer 300 - Anschluß A 1110 Zentralprozessor 700 - Anschluß E
Der von dem Auswahlschaltkreis 101-8 erzeugte Vier-Bit-Code wird seinerseits einerGruppe herkömmlicher UND-Gatterschaltkreise züge führt, die in dem Gatternetzwerk 101-12 enthalten sind. Die andere Identfizierungsinformation, die von den verschiedenen Ursprung modulen des Systems erzeugt wird, wird anderen Gatterschalt* «■
' kreisen des Netzwerkes 101-12 zugeführt. Insbesondere führt jeder Modul eine Unterbrechungs-Steuerblocknummer ICBN über die Leitungen IDA einer Position des Datenauswahlschalters 1O1-14 zu. Ferner erzeugt jeder Modul auf den Leitungen IMID der Unterbrechungsschnittstelle für andere Gatterschaltkreise des Netzwerkes
' 101-12 die Information, die zur Bestimmung des anfordernden Unterkanals oder Anschlusses des Quellenmoduls erforderlich ist." Wenn der Prozessor 200 die Leitung IDR zur Annahme des Wertes "1"
. veranlaßt, so gitbt die Schnittstelleneinheit SIU-100 über eine Stellung des Auswahlschalters 101-20 die Signale des Gatternetzwerkes 101-12 an die Leitungen DFS der Prozessor-Datenschnittstelle 600 ab. Die anderen Positionen des Schalters 101-20 sind nicht dargestellt, da sie für ein Verständnis der vorliegenden Erfindung ohne Bedeutung sind.
' Datenübertragungsabschnit 102 ",
In Figur 3b ist der Datenübertragungsabschnitt 102 der System-Bchnittstolleneinheit 100 dargestellt. Dieser Abschnitt enthält Prioritätsschaltkreise, welche festlegen, welcher Modul über seine programmierbare Schnittstelle 601 Anweisungen zu dem Hochgeschwindigkeitsmultiplexer 300 übertragen hat und welcher Quellenmodul über seine Datenschnittstolle 600 Daten zu den
809834/0620
Multiplexer 300 zu übertragen hat. Weiterhin weist der Abschnitt .102 Prioritätsschaltkreise auf, welche festlegen,.welcher Quellen nodul entweder Daten oder Anweisungen nach dem internen Speichermodul 500 zu übertragen hat. ' · · . .·. .
Es sei darauf verwiesen, daß Übertragungen zwischen einem Paar von Modulen erfolgen, wenn ein Modul eine Anforderung an den anderen Modul erzeugt hat und diese Anforderung durch den anderen-Modul angenommen worden ist. Damit eine Anforderung angenomme wird, muß der anfordernde Modul die höchste Priorität aufweisen, beide Module müssen sich in einem Zustand der Empfangsbereitschaft für die"-Information befinden und der Datenübertragungsweg muß verfügbar sein und darf nicht belegt sein.
• >
Die von dem Prozessor 200 an den Abschnitt 102 herangeführten Sig nale werden hinsichtlich ihrer Erzeugung in gro.ßem Umfang durch verschiedene Felder der aus dem Prozessorregister 201-15 gemäß Figur 2 herausgelesenen Mikrobefehle gesteuert. Beispielsweise wird die von dem Prozessor 200 zu den Schaltkreisen des Blockes 102-4 zugeführte Leitung AOPR durch ein Steuer-Bit-Feld eines · aus dem Register 201-15 ausgelesenen Mikrobefehls betreffend den Anforderungstyp der Schnittstelleneinheit SIU freigegeben, wobei das Bit-Feld durch seine Codierung die übertragung einer Lese/Schreibspeicher- oder programmierbaren Schnittstellenanweisung festlegt. Die an den Datenauswahlschalter 102-2 angelegten Leitungen der Prozessor-Datenschnittstelle 600 vermitteln eine Anweisungsinformation, welche durch eine Mikroprogrammsteuerung erzeugt wird, die In das Prozessor-Datenausgangsregister 204-14 gemäß Figur 2 geladen ist. Die Leitungen SDTS führen Signale, die durch eine Mikroprograramsteuerung erzeugt werden, welche in das ^ Prozessor-Steuerungsregister 204-16, gemäß Figur 2 geladen ist.
Hinsichtlich des Systems gemäß Figur 1 übertragen nur E/AProzessoren Anweisungen nach dem Multiplexer 300 und der Prozessor 200 gibt Signale an das Netzwerk 102-4 ab. Das Netzwerk ' 102-4 weist daher Decodierschaltkreise auf, welche die Steuerung; information des Prozessors decodieren, falls der Prozessor
Anweisungen nach dem Multiplexer 300 zu übertragen wünscht. Liegen mehrere E/A-Prozessoren vor und fordern mehrere Prozessoren während des gleichen Zyklus eine Übertragung, so wählt ein Prioritätsschaltkreis innerhalb des Netswerkes 102-4 den Modul aus, dem die höchste Priorität zugeordnet ist und gibt die übertragung einer Anweisung durch diesen Modul nach dem Multiplexer 300 auf den Leitungen PDFS seiner programmierbaren Schnittstelle 601 frei. Insbesondere versorgt das Netzwerk 102-4. ' den Auswahlschalter 102-2 mit Signalen, die Signale des geeigneten Moduls auswählen. Dieser Fall tritt ein, wenn der Multi-, plexer 300 der Schnittstelleneinheit SlU-100 anzeigt, daß er bereit ist, eine Anweisung aufzunehmen, indem er den Wert dar Leitung PIR auf "1" setzt. Zum gleichen Zeitpunkt setzt .das
- Netzwerk 102-4 die Leitung T1PC auf den Wert "1", wodurch dem Multiplexer 300 angezeigt wird, daß er die auf den Leitungen PDFS angelegte Anweisung annehmen soll. Wenn der Prozessor
. einen Befehl ausführt, der ihn zur Abgabe einer programmierbaren Schnittstellenanweisung an den Multiplexer 300 veranlaßt, so legt der Prozessor 200 die Prozessornummeridentfikation im Bit 3 der Anweisung ab. Der Multiplexer 300.speichert die Projs«ssornummer, die in der Anweisung enthalten ist, bis er eine Unterbrechungsanförderung abzugeben wünscht, wobei dann die Prozessornummer einen Teil der Unterbrechungsdaten bildet. Wenn die
.' programmierbare Schnittstellenanweisung dem Multiplexer 300 übermittelt wird, so wird die den Prozessor 200 als den Anforderer bestimmende Steuerungsinformation in einem Register 102-6 gespeichert, das dem Multiplexer 300 an dem Anschluß A zugeordnet
. ist. Bei einer Reaktion des Multiplexers 300 durch Erzeugung einer übertragungsanforderung gelesener Daten an die Schnittetelleneinheit SIU-100 wird der Inhalt des Registers 102-6 zur Festlegung des Prozessors 200 als dem tatsächlichen die Daten empfangenden Modul benutzt.
Eine ähnliche Einrichtung wird zur übertragung von Datensignalen .zu dem Multiplexer 300 verwendet. Gemäß Figur 1 ist der Spcicher-. . modul 500 der einzige Modul, der Daten zu dem Multiplexer übertrügt.. Eine solche übertragung erfolgt beim Auftritt einer Spoicherleseanwcisung ZACr die über das Netzwerk 102-20 von dem
* " 809834/0620
ORIGINAL INSPECTED
Multiplexer 300 an den Speichermoudul geleitet wird. Bei der Weiterleitung der Anweisung durch den Multiplexer 300 erzeugt die Schnittstelleneinheit SIü-100 den geeigneten Anforderer-Identifizierungscode von 4 Bits (Steuerungscode), der zu der vom Multiplexer 300 übermittelten Mehrfachanschluß-Identifizierungsinformation gehört. Die Information ist in dem Speicher- , modul 500 gespeichert und wird zu der Schnittstelleneinheit SIU-100 zurückgeholt, wenn der Modul 500 eine Ubertragungsanforderung fürgelesene Daten erzeugt und hiermit dem Multiplexer 300 signalisiert, daß er die Daten aufzunehmen hat. Wenn die Schnittstelleneinheit SIU-100 die Anforderung aufnimmt, so wird dies dem Multiplexer 300 angezeigt, indem die Leitung ARDA. den Wert "1" einnimmt. :
Die Leitung für die Übertragungsahforderung gelesener Daten RDTR • signalisiert im durch den Speichermodul 500 gesetzten Zustand dem Netzwerk 102-14, daß sie bereit ist, während eines Operationszyklus ausgelesene Information zu übertragsn.Der interne •.Speichermodul 500 liefert ferner Signale an die Leitungen RIFM zur Festlegung des anfordernden Moduls, zu welchem die Infor-' mation zu übertragen ist. Insbesondere decodieren Schaltkreise innerhalb des Decodiernetzwerkes 102-14 die an die Leitungen RIFM angelegten Identifizierungsignale und falls diese Signale anzeigen, daß der interne Speichermodul 500 bereit ist, Information zu dem Multiplexer 300 zu übertragen und daß der Multi- , plexer 300 bereit ist f die Information aufzunehmen, so legt das-Decodiernetzwerk 102-14 die geeigneten Signale an den Auswahlschalter 102-12 und an Schaltkreise innerhalb eines Gatternetzwerkes 102-16 an. Zusätzlich legt das Decodiernetzwerk 102-14
und ein Signal an die Leitung ARDA der Datenschnittstelle an Signalisiert hiermit dem Multiplexer 300, daß er auf den Leitungen DFS seiner Schnittstelle 600 die Daten von der Schnittstelleneinheit SIU-100 anzunehmen hat. Die Schaltkreise des Blockes 102-16 legen die geeignete Mehrfachanschluß-Identifizierungsinformation an die Leitungen MI S an, wodurch der anfordernde ünterkanal bestimmt wird. Wenn die Datenübertragung stattgefunden hat, so bewirkt das Netzwerk 102-14, daß die Leitung RDAA . . 80983 Iy f η Β 20
den Wert "1" einnimmt, wodurch dem anfordernden Modul signalisiert wird, daß die Daten von dem Speichermodul 500 aufgenommen worden sind. . _ ·- ■ ' .
Eine Anordnung ähnlich dem Netzwerk 102-14 wird von der Schnitt-Stelleneinheit SIU-100 zur übertragung von programmierbaren Schnittstellen- und Speicheranweisungen von einem der Module gemäß Figur 1 nach dem internen Speichermödul 500 verwendet. Der Modul 500 bewirkt, daß entweder die Leitung PIR oder die an das Decodiernetzwerk 102-20 angeschlossene Leitung ZIR den Wert "1" einnimmt, wenn er bereit ist, eine programmierbare Schnitt-Stellenoder Speicheranweisung anzunehmen. Zusätzlich führen » der Prozessor 200, der Prozessor 700 und der Multiplexer 3OO dem Netzwerk 102-20 Signale auf 'der Leitung AQPR und den Lei- . tungen SDTS ihrer entsprechenden Datenschnittstellen zu. Das Netzwerk 102-20 ist durch Decodierung der von jedem der Module zugeführten Steuerungsinformation in der Lage, geeignete Signale für einen Auswahlschalter 102-24 mit drei Positionen zu erzeugen,' der den Modul mit der höchsten Priorität in die Lage versetzt, Signale zu der Datenschnittstelle 603 des Spsiehermoduls 500 zu übertragen. Es ist ebenfalls erkennbar, daß das Netzwerk 102-20 Signale auf die Leitung APC oder die Leitung AZC sowie über einen Gatterschaltkreis 102-26 auf die Leitungen RITM der Datenschnitt-Bt'elle 603 des internen Speichermoduls.-500 gibt.
Die letzten beiden Netzwerke 102-30 und 102-40 werden zur übertragung von Speicherdaten und von programmierbaren Schnitt-Btellendaten zu dem Prozessor 200 benutzt, wobei dies in Abhängigkeit von Speicheranweisungen und programmierbaren Schnitt-Btellenanweisungen erfolgt/ die zuvor durch den Prozessor 200 erzeugt wurden. Wie aus Figur 3b ersichtlich, besitzt das Prioritäts-Decodiernetzwerk 102-30 die gleichen Eingangsleitungen wie das Netzwerk 102-14 und arbeitet in der gleichen Weise, um die angeforderten Speic.herdaten zu dem Prozessor 200 über einen Datenauswahlschalter 102-32 und den vierstelligen Auswahlschalter 101-20 gemäß Figur 3a weiterzuleiten. Es sei darauf verwiesen, daß kein Konflikt zwischen den Modulen,die Daten an den
809834/0520
ORIGINAL INSPECTED
■ ■ - 57 -
Auswahlschalter 101-20 zur übertragung zu den Leitungen DFS abgeben, entstehen kann, da zu jedem Zeitpunkt der Prozessor 200 eine einzige Anweisung bearbeitet. Das führt dar.u, daß die Operation des Prozessors zum Stillstand gelangt, während des Empfangs der angeforderten Daten, nachdem der Prozessor 200 eine Anweisung an einen der Module gemäß Figur 1 abgegeben hat. Die Schnittstellencinheit SIU-100 wirkt bei der Aufnahme der Anforderung des Prozessors auf äiq. LeitungARA ein, wodurch der Prozessor zur Verzögerung der Operationen veranlaßt wird.
Das separate Netzwerk 102-40 verarbeitet Anforderungen von Rückkehrdaten von -jenen Modulen, die auf programmierbare Schnittstellenanweisungen ansprechen. Das Netzwerk 102-40 decodiert die von den Leitungen -RDTR geführten Signale sowie'die Signale des Registers 102-6 zusammen mit denjenigen Registersignalen von anderen nicht dargestellten Modulen. Wenn die Schnittstellen einheit SIU-100 feststellt, daß ein Modul versucht, angeforderte Daten zu dem Prozessor 200 zurückzuschicken, so erzeugt das Netzwerk 102-40 Signale, welche einen dreistelligen Datenauswahl schalter 102-42 in die Lage versetzen, Signale auf den Leitungen PDTS der programmierbaren Schnittstelle des Moduls zu dem Prozessor 200 zurückzuschicken. Diese Signale werden ihrerseits auf die Leitungen DFS des Prozessors über den Auswahlschalter 1O1-2O gemäß Figur 3a gegeben, der durch das :Modul-Anforderungssignal geschaltet wird. Während eines nächsten Operationszyklus veranlaßt das Netzwerk 102-40 die Leitung RDAA zur Annahme des Wertes "1", wodurch dem Modul angezeigt wird, daß die auf den Leitungen PDTS vorhandenen Daten angenommen worden> sind und daß der Modul nunmehr diese Daten entfernen kann, z.B. durch Löschen seiner Ausgangsregister. Es ist somit ersichtlich, daß der Schalter 101-20 selektiv irgendeinen von drei Datentypen auf den Leitungen DFS der Datenschnittstelle 600 des Prozessors erzeugt.
• . 809834/0620
Die Wirkungsweise des erfindungsgemäßen Systems sei nunmehr unter Bezugnahme auf die Figuren 1 bis 9 beschrieben. Wie aus Fig. 8 ersichtlich, ist der interne Speichermodul 500 in der Lage, eine Anzahl verschiedener Arten von ZAC-Anweisungen auszuführen. Kurz gesagt, ist der Modul 500 in der Lage, 5 verschiedene Arten von ZAC-Anweisungen zu bearbeiten, die folgendermaßen definiert sind: ' ■ ·--■-■·■
1. Lesen Einfach - der Inhalt (ein Wort) des! adressierten Speicherplatzes wird gelesen und zu dem anfordernden Wod'ul übertragen. Der Speicherinhalt wird nicht verändert. Das ZAC-Bit 9 legt fest, ob der Pufferspeicher geladen yi'rd oder umgangen wird. Wenn jedoch dieser Block bereits in den Pufferspeicher geladen ist, so wird der Lesezyklus im Pufferspeicher ausgeführt und die Information dem Pufferspeicher entnommen.
Lesen/Löschen Einfach - der Inhalt (ein Wort) des adressierten Speicherplatzes wird gelesen und zu dem anfordernden Modul übertragen und der Speicherplatz (ein Wort) wird auf "0" gelöscht und mit den richtigen Paritätbits (oder EDAC) versehen. Der in dem adressierten Wort enthaltene Datenblock wird nicht in den Puffer-
speicher geladen. Wenn dieser Block bereits in den Pufferspeicher geladen ist, so wird das adressierte Wort in dem Pufferspeicher ebenfalls auf "0" gelöscht.
3. Lesen Doppelt - der Inhalt des adressierten Paares von Speicherplätzen (zwei Worte) wird gelesen und wortseriell zu dem anfordernden Modul übertragen. Der Speicherinhalt wird nicht verändert. Das ZAC-Bit 9 legt fest, ob der Pufferspeicher geladen oder umgangen wird. Wenn jedoch dieser Block bereits in den Pufferspeicher geladen ist, so wird der Lesezyklus in dem Pufferspeicher ausgeführt und die Information wird dem Pufferspeicher entnommen.
809834/06 2 0 qrig.nal inspected
4. Schreiben Einfach. - ein bis vier Bytes des von dem anfordernden Modul gelieferten Datenwortes werden in dem addressierten Speicherplatz gespeichert. Die zu speichernden Bytes werden durch die Zonenbits festgelegt. Die Zonenbits 5, 6, 7 und 8 steuern entsprechend die Bytes O, 1, 2 und 3. Der Speicherinhalt der Bytepositionen, die nicht gespeichert werden, bleibt unverändert.
5. Schreiben Doppelt- die zwei von dem anfordernden Modul gelieferten Datenworte werden in dem adressierten P-ar von Speicherplätzen gespeichert.
Die spezifischen Codes für die verschiedenen ZAC-Anweisungen werden nachstehend angegeben. Die anderen möglichen 11 Codes werden als illegal definiert und erzeugen in der erläuterten Weise ein Fehlersignal.
Anweisung Zone Pufferspeicher-
Umgehungsbit
Lesen einfach
Lesen/Löschen
einfach
Lesen doppelt
Schreiben ein
fach
Schreiben
doppelt
12 3 4 5 6 7 8 - 9
0 0 0 0
0 0 10
0 10 0
10 0 0
110 0
0 0 0 0
0 0 0 0
0 0 0 0
I/O 1/0 1/0 1/0
1111
1/0
1/0
809834/0620
Ea sei beispielsweise zunächst angenommen, daß einer der Prozessoren 2OO des Paares PO mit der Bearbeitung einer Reihe von Programmbefehlen beginnt, die eine Bezugnahme auf den internen Speichermodul 500 festlegen. In diesem Beispiel sind der erste und die nachfolgenden Befehle so formatiert, daß sie wenigstens ein Feld aufweisen, das ein Allgemeinregister festlegt, wobei ein weiteres Feld eine Adresssilbe enthält. Der Indexwert des Allgemeinregisters definiert den Status des Umgehungsbits 9, von dem angenommen worden ist, daß es auf den Binärwert "0" gesetzt worden ist. Der Prozessor 2OO kombiniert die Information, um eine absolute Adresse 2U erzeugen.
Nachdem die absolute Adresse errechnet worden ist, erzeugt der Prozessor 200 das erforderliche Speicher-Anweisungswort und die geeignete SlU-Steuerungsinformation zum Richten der Anweisung an den internen Speichermodul 500. Die Steuerung und die Anweisung besitzen die Formate gemäß Fig. 8.
Betrachtet man den vorstehenden Sachverhalt in näheren Einzelheiten/ so ist zu sehen, daß der Operationscode eines jeden Befehls durch seine Codierung eine Speicher-Bezugsoperation festlegt, die durch die Erzeugung einer ZAC-Anweisung 'ausgeführt wird. Der Operationscode des ersten Befehls wird durch den Befehlsregisterschalter 202-4 an den Speicher, 201-2 angelegt, wodurch der Speicher zur Bezugnahme auf einen der Speicherplätze veranlaßt wird. Der Inhalt des Speicherplatzes wird in das Register 201-4 ausgelesen und dieser umfaßt ein Paar von Adressen, die die Speicheradressen im Steuerspeicher 201-10 und somit die Mikrobefehlsfolgen festlegen, die für die Befehlsbearbeitung erforderlich sind.
Während einer ersten Phase der Befehlsbearbeitung, die während der Bearbeitung eines laufenden Befehls beginnt, werden die Indexbits des nächsten Befehls benutzt, um einen bestimmten Allgemeinregister-Speicherplatz des Zwischenspeichers 203-10 über die Position 3 des Schalters 203-14 (z.B. Lev, XR1) zu
809834/0620
adressieren. Der Inhalt des Speicherplatzes wird in den Puffer 203/16 ausgelesen.
Der Inhalt des Indexregisters wird über die Position O des Schalters 203-20 an den A-Operandeneingang des Addierers 204-2 angelegt, und das Verschiebefeld des Befehls wird über die Position 0 des Schalters 204-1 an den B-Operandeneingang des Addierers 204-2 angelegt. Beide Werte werden zusammenaddiert und das Ergebnis wird in das Arbeitsregister R2 über den Schalter 204-8 übertragen. Wenn ein zweiter Indexpegel vorgegeben ist, so wird eine ähnliche Operation ausgeführt, wodurch der in dem zweiten Allgemeinregister-Speicherplatz gespeicherte Wert zu dem zuvor gespeicherten Resultat im Register R2 addiert wird. Es liegt ohne weiteres auf der Hand, daß der geeignete Wert für das Bit 9 in dem zweiten Allgemeinregister anstatt in dem ersten Allgemeinregister gespeichert sein kann.
Während der Bearbeitungsphase des Befehls erzeugt der Prozessor 200 eine ZAC-Anweisung an den internen Speicher 500, wodurch eine Leseoperation vorgegeben wird, und er liefert die geeignete Speicheradresse, die entweder von dem Speicher 204-4 oder dem Register R2 erhalten wird. Unter der Annahme einer absoluten Adresse wird die Adresse von dem Register R2 an die Sammelschiene WRP angelegt und über die R/W-Position des Adressenschalters 204-6 und den Doppelkanalschalter 204-8 in das Daten-Ausgangsregister 204-14 geladen.
Der Steuerungsschalter 204-10 liefert die SIU-Steuerung für den Speicher-Operationszyklus. Die Signale besitzen das Format gemäß Fig.9 und sie liefern die Information, die von der Schnittstelleneinheit SIU-100 zur übertragung der R/W-Anweisung an den internen Speichermodul 500 oder an den Anschluß LMO, an den der Modul 500 angeschlossen ist, benutzt wird. Die Signale werden unter Mikroprogrammsteuerung von dem Register 201-15 und von dem Adressenschalter 204-6 über die R/W-Position des Steuerungsschalters 2O4-1O in die Bitpositionen 0-8 des Steuerungsregisters 204-16 geladen.
809834/0620
Nach dem Laden der beiden Register 204-4 und 204-16 setzt der Prozessor 200 die Leitung AOPR auf den Binärwert "1", wodurch die Signalfolge zur übertragung der R/W-Anweisung an den internen Speichermodul 5OO ausgelöst wird. Ferner erhöht der Prozessor 200 den Befehlszähler (IC) und speichert das Ergebnis im Arbeitsregister R3. Sodann verzögert der Prozessor 200 die Bearbeitung des nächsten Mikrobefehls bis er ein Signal über die Leitung ARA von der Schnittstelleneinheit SIU-1OO erhält, welches die Annahme der Anforderung anzeigt.
Die Schnittstelleneinheit SIU-IOO betrachtet die R/W-Anweisung als ein Erfordernis nach einem Paar von SIU-Zyklen, d. h. als ein Adressen/Anweisungs-Zyklus, der von einem Datenzyklus gefolgt wird. Unter der Annahme/ daß der interne Speichermodul 500 bereit ist, die Anweisung anzunehmen, ist die Leitung ZIR auf den Binärwert "1" gesetzt (bei den Impulszügen gemäß Fig. wurde eine negative Logik verwendet). Der SlU-Prioritätsschaltkrels 102-4 gemäß Fig. 3b bewirkt das Anlegen des Anweisungswortes über einen SIU-Auswahlschalter an die Leitungen DTM der internen Speicherschnittstelle 602 während eines Operationszyklus. Der Prozessor 200 wartet unter Speicherung des Anweisungswortes in dem Daten-Ausgangsregister 204-14 bis die Schnittstelleneinheit SIU-100 die Leitung ARA auf den Binärwert "1" setzt. Die Schnittstelleneinheit SIU-1OO schaltet gleichzeitig die Leitung AZC auf den Binärwert "1" und signalisiert hiermit dem Modul 5OO die Annahme der R/W-Anweisung (siehe Fig. 9) .
Bei Feststellung der Zustandsänderung der Leitung ARA vervollständigt der Prozessor 200 unter Mikroprogrammsteuerung die Bearbeitung des Befehls. Das heißt, der Prozessor 2OO wartet bis das angeforderte Datenwort bzw. die angeforderten Datenworte von der Schnittstelleneinheit SIU-1OO empfangen worden sind.
809834/0620
Hier sei angenommen, daß die Speicheranweisung aufgrund ihrer Codierung eine Einfach-Leseoperation vorgibt, wobei das Umgehungsbit 9 aufgrund seiner Codierung festlegt, daß der Pufferspeicher 500-20 nicht zu umgehen sondern zu laden ist (z.B. Bit 9=0). Wie zuvor erläutert, steuert der Status des Bits 9 das Laden des Pufferspeichers 500-20 im Falle von Einfach- und Doppel-Leseanweisungen .
Gemäß den Fig. 8 und 9 ist ersichtlich, daß die Anweisungs- und Adreßdaten des ZAC-Anweisungswortes in das ZAC-Register 500-120 aufgrund des Signales AZC100 von der Leitung AZC zum Zeitpunkt 1T geladen werden. Der Zeitpunkt 1T ist durch die abfallende Flanke vorgegeben, wenn der System-Taktimpuls 1T von dem Binärwert "1" auf den Binärwert "0" umschaltet. Die Adreßsignale von den Leitungen DTM 17-33, die in dem ZAC-Register 500-120 gespeichert sind, werden als Eingangssignale an die Listenspeichereinheit 500-22 und an die Listen-Vergleichslogikschaltkreise 500-24 in Fig. 7 angelegt.
Insbesondere werden die an die Leitungen DTM 26-32 angelegten Adreßsignale als Blockadresse für die Adressierung der Listenspeichereinheit 500-22 benutzt, während die an die Leitungen DTM 17-25 angelegten Adreßsignale den Signalen entsprechen, die in die Listenspeichereinheit 500-22 im Falle einer Listen-Schreiboperation einzuschreiben sind. Die gleichen an die Listen-Vergleichsschaltkreise 500-24 angelegten Adreßsignale werden benutzt, um festzustellen, ob sich der Datenblock bereits im Pufferspeicher 500-20 befindet. Es sei vermerkt, daß die an die Leitungen DTM 17-33 angelegten Adreßsignale ebenfalls dem Hintergrundspeicher 500-40 zugeführt werden, um aus diesem einen Datenblock auszulesen, wenn sich die Daten nicht im Pufferspeicher 500-20 befinden.
Aus Fig. 9 ist ersichtlich, daß eine Absuche der Listenspeicher-500-22 sofort ausgelöst wird, um festzustellen, ob die angeforderte Information bereits im Pufferspeicher 500-20 gespeichert worden ist. Die Suchoperation wird während des Intervalles zwischen
809834/0620
den Taktimpulsen 1T und 2T durchgeführt. Im vorliegenden Beispiel sei angenommen, daß die von dem Prozessor 200 angeforderte Information sich im Pufferspeicher 500-20 befindet.
Gemäß Fig. 7a ist ersichtlich, daß die Schaltkreise des Blockes 500-6 die Bits 1-4 der ZAC-Anweisung decodieren. Da die Bits 1-4 und das Bit 9 alle den Binärwert "0" aufweisen, besitzen die Signale RCLOOO und WROOO beide den Binärwert "1". Das Gatter 500-61 setzt somit das Signal RR100 auf den Binärwert "1", wodurch das Vorliegen einer Leseanweisung angezeigt wird. Dieses Signal wird als ein Eingangssignal den Gattern 500-62 und 500-460 zugeführt.
Es sei vermerkt, daß das Signal NOLOADOOO, das dem Gatter 500-62 zugeführt wird, den komplementierten Status des Umgehungsbits 9 besitzt und somit den Binärwert "1" aufweist. In dieser Hinsicht wurde angenommen, daß keine fehler bei der Übertragung der Anweisung bzw. der Daten von einem Abschnitt des Speichermoduls zu einem anderen aufgetreten sind und daß die Anweisung gültig ist usw. Ferner wurde angenommen, daß keine Mehrfachpegelvergleiche oder andere von dem ODER-Gatter 500-338 festgestellte und zu einem Listenfehler führende Fehler vorliegen. Das Signal LME/DEOOO besitzt somit den Binärwert "1", da kein interner Speicherfehler und kein Listenfehler vorliegt.
Aus Fig. 9 ist ersichtlich, daß in diesem Beispiel angenommen wurde, daß die angeforderte Information im Pufferspeicher 500-20 vorliegt. Dementsprechend setzt das Gatter 500-82 gemäß Fig. 7a das Signal SETHIT100 auf den Binärwert "1"/ wodurch das Übereinstimmungsregister-Flip-Flop 500-284 auf den Binärwert "1" umschaltet. Im vorliegenden Beispiel wird jedoch angenommen, daß ein Teil der aus dem Pufferspeicher 500-20 zu lesenden Information nicht korrekt ist.
Wie aus Fig. 7c erkennbar, schaltet hierdurch einer der Paritätserzeugungsschaltkreise 5OO-3OO bis 500-206 das Signal an seinem ungeraden Ausgangsanschluß auf den Binärwert "0". Gemäß Fig. 7a
809834/0620
Il Λ II
- 65 -
schaltet hierdurch das Gatter 500-285 das Signal DIR/CERROOO auf den Binärwert "0", wodurch das Flip-Flop 500-284 an der Umschaltung auf den Binärwert "1" gehindert wird. Ferner setzt das Pufferspeicher-Fehlersignal über das NOR-Gatter 500-287 das Signal INHIBRROOO auf den Binärwert "0". Dadurch wird andererseits über das UND-Gatter 500-289 die fortschreitende Modifizierung der Listenadresse zum Einschreiben der aus dem Hintergrundspeicher 500-40 ausgelesenen Information in den nächsten Listenpegel verhindert.
Aufgrund des aufgetretenen Pufferspeicher-Fehlerzustandes entsprechen die Signale HITOOO und HIT100 jeweils den Binärwerten "1 und "0". Auf diese Weise wird ein Zustand simuliert, der keiner Übereinstimmung entspricht.
Das Hintergrundspeicher-Zeittaktsignal BST8000 besitzt den Binärwert "0" während des Zeittaktimpulses T8, wodurch über das Gatter 500-68 das Signal RDLDTiOO auf den Binärwert "1" gesetzt wird. Das Gatter 500-62 setzt dementsprechend das Signal RDL0AD100 auf den Binärwert "1".
Die Signale RR100 und HITOOO setzen über das Gatter 500-460 das Lese- und Fehlsignal RD/MISSOOO auf den Binärwert "0". Hierdurch wird über das Gatter 5O0-462 das Hintergrundspeicher-Anweisungssignal BSCMDlOO auf den Binärwert "1" gesetzt. Unter der Annahme, daß die Leseanweisung gültig ist (z.B. korrekter Code und Format), besitzt das Signal TCERROROOO den Binärwert "1". Dementsprechend setzt beim Auftritt des Hintergrundspeichers-Zeittaktsignales SLO4T/NSLO2T1OO das Gatter 500-464 das Hintergrundspeicher-Anforderungssignal BSREQ100 während des Intervalles zwischen den Zeittaktimpulsen 1T und 2T auf den Binärwert "1". Dies signalisiert dem Hintergrundspeicher 500-40 die Auslösung eines Speicher-Operationszyklus .
809834/0520
Aufgrund einer solchen Anforderung liest der Hintergrundspeicher 500-40 160 Datenbits in das Ausgangsregister 500-42 aus. Die Daten treten in korrekter Form am Ausgang der Schaltkreise 500-44 vor dem Auftritt des Zeittaktimpulses T7 in Fig. 9 auf. Die Fehlerfeststeil- und Korrekturschaltkreise 500-44 gemäß Fig. 7d stellen somit sicher, daß eine korrekte Version der angeforderten Daten am Ausgang der Schaltkreise 500-450 auftritt.
Beim Auftritt des Hintergrundspeicher-Zeittaktsignales BS8T1O1 von den Taktschaltkreisen 500-48 setzt das Signal RDL0AD100 über das Gatter 5OO-26O das Listen-Schreibsignal WRDIROOO auf den Binärwert "0". Hierdurch setzt das Gatter 500-262 das Listen-Schreibfreigabesignal ENABDIRWR100 auir den Binärwert "1", wenn das Listen-Löschsignal DRCLROOO den Binärwert "1" besitzt. Dieses Signal besitzt den Binärwert "1", mit Ausnahme, wenn die Listenspeichereinheit 500-22 gelöscht wird (Siehe US-PS 3.845.474).
Das Gatter 5OO-264 setzt das Listen-Schreibsignal WRDIR100 beim Auftritt des Listen-Taktsignales CLKDIR100 auf den Binärwert "1". Das Signal WRDIR100 ermöglicht den Listen-Schreibgatterschaltkreisen 500-266 das Anlegen geeigneter Zeittaktsignale an die Schaltkreise eines jeden Listenpegels. Hierdurch können die an die Listenspeichereinheit 500-22 angelegten Adreßsignale und das Paritätsbitsignal DIRDAPARITY100, das durch den Schaltkreis 500-23 erzeugt wird, in den Signalpegel an dem Speicherplatz eingeschrieben werden, der durch die über die Leitungen DTM 26-31 angelegten Adreßsignale festgelegt ist.
Aus Fig. 9 ist ersichtlich, daß während des gleichen Zeitintervalles, in dem die ersten 80 Bits korrekter Daten aus dem Hintergrundspeicher 5OO—40 ausgelesen werden, diese in den Pufferspeicher 500-20 eingeschrieben werden. Insbesondere werden die Pufferspeicher-Schreib-Freigabeschaltkreise 500-214 durch das Pufferspeicher-Schreibsignal WRCACHE100 während der Zelttaktimpulse 8T und 1OT vorbereitet. Dies bedeutet, daß das Signal MISS100
809834/0620
infolge des simulierten Fehl-Zustandes den Binärwert "1" aufweist. Das Zeittaktsignal BST1O1O1 von den Hintergrundspeicherschaltkreisen 500-46 besitzt während des Zeittaktimpulses T1O den Binärwert "1". Das Gatter 500-68 setzt dementsprechend das Signal RDLDT100 während des Zeittaktimpulses T8 auf den Binärwert "1", wenn das Hintergrundspeichersignal T8000 den Binärwert "0" aufweist und wenn während des Zeittaktimpulses T10 das Signal LDSCND80000 den Binärwert "0" aufweist.
Das Gatter 500-62 setzt das Signal RDLOAD100 auf den Binärwert "1", wodurch über das Gatter 500-74 das Signal RDLOADT00O auf den Binärwert "0" gesetzt wird. Demgemäß setzt das Gatter 500-210 während der Zeittaktintervalle 8T und 1OT das Pufferspeicher-Schreibsignal WRCACHE1OO auf den Binärwert "1". Das Gatter 500-210 setzt somit das Pufferspeicher-Schreibsignal WRCACHE100 beim Auftritt des Pufferspeicher-Zeittaktsignales CLK141 auf den Binärwert "1". Es sei darauf verwiesen, daß das Signal WRLOADOOO unbeachtet bleiben kann (z.B. Binärwert "1"), da es sich hier um eine Leseanweisung handelt. Ähnlich dem Listen-Schreibsignal WRDIR100 versetzt das Pufferspeicher-Schreibsignal WRCACHE100 die Pufferspeicher-Schreib-Freigabeschaltkreise 500-214 in die Lage, Zeittaktsignale zu erzeugen, die an die verschiedenen Pufferspeicherabschnitte angelegt werden.
Während des Zeittaktimpulses T8 werden die ersten 80 Bit entsprechend den Signalen RD00-RD71 und RDP0-P7 über den Eingangsschalter 500-8 angelegt und in die Spalte eingeschrieben, die durch die an die Leitungen DTM 26-31 angelegten Adreßsignale festgelegt ist. Zu diesem Zeitpunkt weist das Adreßbit 32 den Binärwert 11O" auf. Vor dem Zeittaktimpuls T10 wird das Adreßbit komplementiert, und es werden während des Zeittaktimpulses T10 die oberen 80 in dem Register 500-42 enthaltenen Bit über den Schalter 500-8 angelegt und in den Pufferspeicher 500-20 eingeschrieben. Der Status des Adreßbits 32 wird durch die Schaltkreise 500-216 bis 500-222 bearbeitet, um das Einschreiben der gesamten 160 Bit entsprechend einem Datenblock in den Pufferspeicher 500-20 zu ermöglichen.
80983 A/06 2 0
Dies geschieht durch Komplementierung des unteren 80 Bit-Signales LWR8O1OO der Hintergrundspeicher-Steuerschaltkreise 500-46. Insbesondere setzt das Gatter 500-218 das Signal RDLDU8OOOO auf den Binärwert "1", wenn das Signal LWR80100 den Binärwert "1" aufweist ( schreiben der unteren 80 Bit). Das Gatter 500-222 veranlaßt das Signal CAADDR321OO zur Annahme des Status des Adreßsignales , das in dem ZAC-Register 500-120 gespeichert ist. Dies bedeutet, daß das Signal CAADDR321OO den Binärwert "1" besitzt, wenn das Adreßbit 32 den Binärwert "1" aufweist. Wenn jedoch das Signal LWR80100 auf den Binärwert "0" gesetzt ist (schreiben der oberen 80 Bit), so wird das Signal RDLDU80000 auf den Binärwert "0" gesetzt. Hierbei wird das Adreßsignal CAADDR321OO auf den Binärwert "0" gesetzt.
Die Daten werden als Eingangssignale an den Ausgangsschalter 500-10 angelegt. Der Ausgangsschalter 500-10 wird durch das Freigabesignal ENABBSDATA100 freigegeben, welches durch das Gatter 500-468 aufgrund der Signale HITREGOOO und BSRD100 auf den Binärwert "1" gesetzt wird. Die Schaltkreise 500-6 legen zusätzlich geeignete Auswahlsignale an den Schalter 500-10 an, um festzulegen, welches Wort der 160 Bit zu dem Prozessor 200 zu übertragen ist. Die Auswahlsignale werden von Feststell-Adreßsignalen 32 und 33 abgeleitet, die in dem ZAC-Register 500-120 gespeichert sind. Die Daten werden während des Zeittaktimpulses T10 an die Leitungen DFM angelegt.
Der interne Speichermodul 500 setzt die Leitung RDTR auf den Binärwert "1" und signalisiert somit der Schnittstelleneinheit SIU- 100, daß die zuvor durch eine ZAC-Anweisung angeforderten Daten verfügbar sind, wenn der Prozessor 200 nach der Errichtung eines Datenweges die Daten angenommen hat. Dies wird durch die Leitungen ARDA signalisiert, indem diese auf den Binärwert "1" gesetzt werden, worauf die Schnittstelleneinheit SIU-100 die Leitung RDAA "auf den Binärwert "1" setzt. Hierdurch wird dem internen Speichermodul 500 signalisiert, daß die Daten angenommen worden sind und daß er die Daten von den Leitungen DFM wegnehmen kann.
809834/0620
Da gemäß Fig. 9 die angeforderte korrekte Version der Daten an den Prozessor 200 gerichtet worden ist, wird ein Datenblock,· der durch, die Anforderung bestimmt wird, ebenfalls in den Pufferspeicher 500-40 an dem gleichen Pegel eingeschrieben, an dem er ausgelesen wurde (z.B. ist das Umgehungsbit 9 auf den Binärwert "0" gesetzt). Diese Anordnung gestattet die Korrektur von Pufferspeicherfehlern, die bei der Datenübertragung erzeugt werden.
Gemäß Fig. 9 werden die gesamten 160 Bit in den Pufferspeicher 500-20 eingeschrieben bevor mit einem nächsten Speicher-Operationszyklus begonnen wird.
Es sei vermerkt, daß im Falle eines Listenfehlers einer der Schaltkreise 500-330 bis 500-336 seinen Ausgang in einen Zustand setzt, der einen Fehler anzeigt. Hierdurch setzt das NOR-Gatter 500-338 das Signal DIRERROOO auf den Binärwert "0". Aus Fig. 7a ist ersichtlich, daß dadurch das UND-Gatter 500-285 das Signal DIR/CERROOO auf den Binärwert "0" setzt, wodurch das Übereinstimmungsregister-Flip-Flop 500-284 an der Umschaltung auf den Binärwert "1" gehindert wird. Dies bewirkt die Simulation eines Fehl-Zustandes in der zuvor erläuterten Weise. Das Signal DIRERROOO hindert ebenfalls das Gatter 500-66 an der Umschaltung auf den Binärwert "1". Somit werden die Steuerschaltkreise 500-6 am Einschreiben der korrekten Version der angeforderten Information in den Pufferspeicher 500-20 gehindert. Der Grund hierfür liegt darin, daß aufgrund des festgestellten Listenfehlers die Listen-Adresseninformation nicht korrekt ist und somit zu einer Auswahl von Daten am falschen Speicherplatz führen würde. In diesem Fall wird somit keine Information in die Listenspeichereinheit 500-22 und den Pufferspeicher 500-20 geschrieben.
Es ist aus Fig. 7c erkennbar, daß der Auftritt irgendeines Pufferspeicherfehlers oder eines Listenfehlers die Umschaltung eines der Flip-Flops des Registers 500-320 auf den Binärwert "1H hervorruft. Hierdurch setzt seinerseits der Paritätsfehlerschaltkreis 500-322 das Signal CESPAR100 auf den Binärwert "1".
S09834/0620
Das Signal CESPAR1OO wird benutzt, um ein Statusbit in einem nicht-dargestellten Register zu setzen, wodurch, der Ein/Ausgabe-Verarbeitungseinheit des Systems die Feststellung eines Pufferspeicherfehlers angezeigt wird. Das Betriebssystem überwacht periodisch den Zustand des Statusbits, um den Grund für irgendeine Abnahme der Systemleistung aufgrund von Pufferspeicherfehlern festzustellen.
Aus vorangegangenem ist ersichtlich, wie das Pufferspeichersystem gemäß der vorliegenden Erfindung einen zuverlässigen Betrieb ohne das Erfordernis umfangreicher Fehlerfeststell- und Korrekturschaltkreise ermöglicht. Es verwirklicht dieses Ziel durch die Simulierung des Vorhandenseins eines Fehl-Zustandes und die Ermöglichung des Auslesens einer korrekten Version der Information aus dem Hintergrundspeicher, der hochentwickelte Fehlerfeststell- und Korrekturschaltkreise enthält. Das Pufferspeichersystem ist zusätzlich in der Lage, eine automatische Korrektur falscher Pufferspeicherinformation durchzuführen, indem in den Pufferspeicher eine korrekte Version der aus dem Hintergrundspeicher ausgelesenen Information eingeschrieben wird, wenn die Anweisung dies ermöglicht.
Es sei darauf verwiesen, daß mannigfaltige Modifikationen hinsichtlich des bevorzugten Ausführungsbeispieles der vorliegenden Erfindung vorgenommen werden können, insbesondere solche Modifikationen, die die Art und Weise der Formatierung und der Codierung der Anweisungen sowie die Erzeugung bestimmter Steuer- und Zeittaktsignale betreffen. Aus Gründen der Vereinfachung wurde in vielen Fällen eine einzige Quelle für die verschiedenen Signale dargestellt. Es sei jedoch vermerkt, daß die gleichen Signale unabhängig durch andere Quellen erzeugt werden können, um zeitliche Restriktionen zu vermindern.
809834/0620
Leerseite

Claims (10)

  1. HONEYWELL INFORMATION SYSTEMS INC. J3. Februar 1978
    Smith. Street ·
    Walthanw Mass., USA 5202685 Ge
    Speichersystem mit Fehlerfeststeil- und Korrekturmöglichkeit.
    Patentansprüche:
    I1./Speichersystem, gekennzeichnet durch einen Hintergrundspeicher zur Speicherung von Informationsworten in mehreren Wort-Speicherplätzen, wobei eine Anzahl von Wort-Speicherplätzen jeweils einen Block definiert; mit dem Hintergrundspeicher verbundene Fehlerfeststell- und Korrekturschaltkreise zur Feststellung und Korrektur von Fehlern in aus dem Hintergrundspeicher während eines Operationszyklus ausgelesenen Worten;
    einen Pufferspeicher zur Speicherung von Blöcken von Informationsworten in mehreren Wort-Speicherplätzen, wobei eine Anzahl von Wort-Speicherplätzen jeweils.einen Block definiert; mit dem Pufferspeicher verbundene Fehlerfeststellmittel zur Erzeugung eines Fehlersignales bei der Feststellung eines Fehlers in einem aus dem Pufferspeicher während eines Operationszyklus ausgelesenen Block von Informationsworten; eine Hinweisliste mit mehreren Wort-Speicherplätzen entsprechend der Anzahl von Blöcken im Pufferspeicher, wobei jeder Wort-Speicherplatz eine Blockadresse speichert, unter der ein bestimmter Informationsblock im Pufferspeicher gespeichert ist; eine mit der Hinweisliste verbundene Listen-Fehlerfeststelleinrichtung zur Erzeugung eines Fehlersignales beim Auftritt eines Fehlerzustandes in der Hinweisliste während dem Pufferspeicher-Operationszyklus;
    809834/0620
    .eine mit dem Pufferspeicher und dem Hintergrundspeicher verbundene Überwachungseinrichtung zur Betriebsüberwachung dieser Speicher, welche aufweist:
    ein Eingangsregister zur Aufnahme von Speicher-Leseanweisungen, die eine Adresse aufweisen, welche vorgibt, auf welche Wort-Speicherplätze Bezug zu nehmen ist; und Anwelsungs-Decodierschaltkreise, die an das Eingangsregister angeschlossen sind und die Speicheranweisung decodieren und aufgrund einer jeden Leseanweisung Steuersignale zur selektiven Freigabe des Hintergrundspeichers und des Pufferspeichers erzeugen, um die durch die Leseanweisung festgelegten Infonaationsworte auszulesen;
    eine an die Hinweisliste und das Eingangsregister angeschlossene Vergleichseinrichtung zum Vergleichen der Adresse der Speicheranweisung mit der aus der Hinweisliste aufgrund der Speicheranweisung ausgelesenen Blockadresse und zur Erzeugung eines den Adressenvergleich anzeigenden Ausgangs-Vergleichssignales; und
    eine Übereinstimmungs-überwachungseinrichtung zur Erzeugung eines Übereinstimmungssignales aufgrund des Ausgangs-Vergleichssignales, um anzuzeigen, daß die durch die Leseanweisung abzurufenden Inforamtionsworte sich im Pufferspeicher befinden, wobei die übereinstimmungs-überwachungseinrichtung an die Vergleichseinrichtung, die Pufferspeicher-Fehlerfeststelleinrichtung und die Listen-Fehlerfeststelleinrichtung angeschlossen ist und beim Auftritt irgendeines Fehlersignales an der Erzeugung des Übereinstimmungssignales aufgrund des Vergleichssignales gehindert wird, um einen Zustand zu simulieren, der dem des Übereinstimmungssignales entgegengesetzt ist, wodurch ein Abruf einer korrekten Version von Informationsworten aus dem Hintergrundspeicher ermöglicht wird.
    809834/0620
  2. 2. System nach Anspruch !,dadurch gekennzeichnet , daß die Überwachungseinrichtung ferner Hintergrundspeicher-Anforderungsschaltkreise aufweist, die an die Anweisungs-Decodierschaltkreise und die übereinstimmungs-Überwachungseinrichtung angeschlossen sind und durch diese in die Lage versetzt werden, ein Anforderungssignal zu erzeugen, durch welches der Hintergrundspeicher während des Hintergrundspeicher-Operationszyklus die korrekte Version der durch die Leseanweisung festgelegten Informationsworte gleichzeitig mit dem Pufferspeicher-Operationszyklus, in dem das Fehlersignal erzeugt wird, ausliest.
  3. 3. System nach Anspruch 2, dadurch gekennzeichnet , daß die Übereinstimmungs-Überwachungseinrichtung eine bistabile Speichereinrichtung aufweist, deren Eingängen das Ausgangs-Vergleichssignal und die Fehlersignale von den Listen- und Pufferspeicher-Fehlerfeststelleinrichtungen zugeführt werden, wodurch die bistabile Speichereinrichtung, selektiv gesteuert durch die Fehlersignale, aufgrund des Ausgangs-Vergleichssignales von einem ersten in einen zweiten Zustand umschaltet.
  4. 4. System nach Anspruch 3, dadurch- gekennzeichnet, daß die ersten und zweiten Zustände den Binärwerten "O" und "1" entsprechen und das Übereinstimmungssignal dem Binärwert "1" zugeordnet ist.
  5. 5. System nach Anspruch 2, dadurch gekennzeichnet, daß jeder Block der Hintergrundspeicher-Wort-Speicherplätze Fehlerfeststell- und Korrekturcodes für die Informationsworte des Blockes beim Einschreiben in den Hintergrundspeicher speichert, daß die Fehlerfeststell- und Korrekturschaltkreise aufgrund dieser Fehlerprüfcodes und der
    809834/0620
    aus dem Hintergrundspeicher während dessen Operationszyklus ausgelesenen Informationsworte Fehler in den Informationsworten lokalisieren und korrigieren, und daß die Pufferspeicher-Wort-Speicherplätze Parität-Prüfbits zum Prüfen der Richtigkeit der aus dem Pufferspeicher ausgelesenen Inforinationsworte speichern, daß die Fehlerfeststelleinrichtung einen Pufferspeicher-Paritätserzeugungsschaltkreis aufweist, dem die Signale entsprechend einem Informationswort und den aus dem Pufferspeicher gelesenen Parität-Prüfbits zugeführt werden und der das Fehlersignal erzeugt, wenn die Prüfbits anzeigen, daß das Informationswort fehlerhaft ist.
  6. 6. System nach Anspruch 5, dadurch gekennzeichnet, daß jedes Informationswort eine Anzahl von Bytes und eine entsprechende Anzahl von Parität-Prüfbits aufweist, daß die Anzahl der Paritäterzeugungsschaltkreise der Anzahl von Bytes entspricht und
    daß der Pufferspeicher ferner eine an die Anweisungs-Decodierschaltkreise, die Vergleichseinrichtung und die Pufferspeicher-Paritäterzeugungsschaltkreise angeschlossene Ausgangs-Auswahleinrichtung aufweist, die an die Paritätserzeugungsschaltkreise Signale entsprechend unterschiedlicher Bytes und einem Parität-Prüfbit anlegt, wobei jeder Paritäterzeugungssehaltkreis das Fehlersignal erzeugt, wenn das Parität-Prüfbit anzeigt, daß das Byte fehlerhaft ist.
  7. 7. System nach Anspruch 2, dadurch gekennzeichnet, daß jeder der Hinweisliste-Speicherplätze ein Parität-Prüfbit zum Prüfen der Richtigkeit der aus diesen Speicherplätzen ausgelesenen Blockadressen speichert, daß die Fehlerfeststelleinrichtung Listen-Paritätsprüfschaltkreise aufweist, denen Signale entsprechend der Blockadresse einschließlich des aus der Hinweisliste gelesenen Parität-Prüfbits zugeführt werden und die ein Fehlersignal erzeugen, welches anzeigt, wenn die Blockadresse falsch ist.
    80983A/0620
  8. 8. System nach Anspruch 7, dadurch gekennzeichnet, daß die Hinweisliste mehrere Speicherpegel aufweist/ die der Speicherung einer Blockadresse dienen und die festlegen, wo ein bestimmter Informationsblock im Pufferspeicher zu speichern ist;
    daß die Vergleichseinrichtung mehrere Vergleichsschaltkreise entsprechend der Anzahl von Speicherpegeln aufweist, wobei jeder Vergleichsschaltkreis die Adresse der Leseanweisung mit einer aus einem der Speicherpegel ausgelesenen Blockadresse vergleicht und ein Ausgangssignal erzeugt, das das Vorliegen eines erfüllten Vergleichs anzeigt; und daß die Fehler-Prüfeinrichtung eine an jeden der Vergleichsschaltkreise angeschlossene Mehrfachgatter-Detektoreinrichtung aufweist, die beim Vorliegen des Ausgangssignales an wenigstens einem Paar von Verglexchsschaltkreisen das Fehlersignal zur Simulation des Zustandes erzeugt.
  9. 9. System nach Anspruch 8, dadurch gekennzeichnet , daß die Listen-Paritätsprüfschaltkreise umfassen:
    mehrere der Anzahl der Speicherpegel entsprechende Paritäts-Erzeugerschaltkreise, denen die aus verschiedenen Speicherpegeln ausgelesene Blockadresse zugeführt wird und die ein Paritätsbitsignal für diese Blockadresse erzeugen; und mehrere der Anzahl der Speicherpegel entsprechende Summierschaltkreise, denen das Paritätsbitsignal von verschiedenen Paritäts-Erzeugerschaltkreisen und das aus den verschiedenen Speieherpegeln ausgelesene Paritätsprüfsignal zugeführt wird und die bei nicht-erfülltem Vergleich zwischen den Paritätssignalen das Fehlersignal erzeugen.
    809834/0620
  10. 10. System nach Anspruch 2,dadurch gekennzeichnet, daß jede Leseanweisung ein vorbestimmtes Bit zur selektiven Umgehung der Informationsspeicherung in dem durch die Leseanweisung festgelegten Pufferspeicher aufweist, wobei dieses Bit in einem vorbestimmten Zustand die Änweisungs-Decodierschaltkreise in die Lage versetzt, Steuersignale zum Schreiben der korrekten Version der Informationsworte aus dem Hintergrundspeicher in den Pufferspeicher zu erzeugen, und daß das Übereinstimmungsregister an die Pufferspeicher-Fehler feststelleinrichtung und die Hinweisliste angeschlossene Gatter aufweist, die aufgrund des Fehlersignales der Hinweisliste das Einschreiben der korrekten Version der Informationsworte in den Block von Wort-Speicherplätzen gestatten, der durch die über die Speicher-Leseanweisung vorgegebene Blockadresse festgelegt ist, wodurch Übertragungs-Fehler zustände korrigiert werden.
    809834/0620
DE19782806024 1977-02-18 1978-02-14 Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit Granted DE2806024A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/770,132 US4084236A (en) 1977-02-18 1977-02-18 Error detection and correction capability for a memory system

Publications (2)

Publication Number Publication Date
DE2806024A1 true DE2806024A1 (de) 1978-08-24
DE2806024C2 DE2806024C2 (de) 1987-08-27

Family

ID=25087580

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782806024 Granted DE2806024A1 (de) 1977-02-18 1978-02-14 Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit

Country Status (7)

Country Link
US (1) US4084236A (de)
JP (1) JPS53103328A (de)
AU (1) AU511692B2 (de)
CA (1) CA1106066A (de)
DE (1) DE2806024A1 (de)
FR (1) FR2381356B1 (de)
GB (1) GB1599836A (de)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4357656A (en) * 1977-12-09 1982-11-02 Digital Equipment Corporation Method and apparatus for disabling and diagnosing cache memory storage locations
US4195341A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. Initialization of cache store to assure valid data
JPS54147747A (en) * 1978-05-12 1979-11-19 Hitachi Ltd Data processor
US4231089A (en) * 1978-12-15 1980-10-28 Digital Equipment Corporation Data processing system with apparatus for correcting microinstruction errors
US4290106A (en) * 1979-06-27 1981-09-15 Burroughs Corporation Microprocessor system with source address selection
US4392201A (en) * 1980-12-31 1983-07-05 Honeywell Information Systems Inc. Diagnostic subsystem for a cache memory
US4467417A (en) * 1981-09-16 1984-08-21 Honeywell Information Systems Inc. Flexible logic transfer and instruction decoding system
JPS5853097A (ja) * 1981-09-24 1983-03-29 Fujitsu Ltd キ−記憶のエラ−処理方式
US4466059A (en) * 1981-10-15 1984-08-14 International Business Machines Corporation Method and apparatus for limiting data occupancy in a cache
US4464717A (en) * 1982-03-31 1984-08-07 Honeywell Information Systems Inc. Multilevel cache system with graceful degradation capability
US4638425A (en) * 1982-09-29 1987-01-20 International Business Machines Corporation Peripheral data storage having access controls with error recovery
US4625273A (en) * 1983-08-30 1986-11-25 Amdahl Corporation Apparatus for fast data storage with deferred error reporting
US4649475A (en) * 1984-04-02 1987-03-10 Sperry Corporation Multiple port memory with port decode error detector
US4637024A (en) * 1984-11-02 1987-01-13 International Business Machines Corporation Redundant page identification for a catalogued memory
US4833601A (en) * 1987-05-28 1989-05-23 Bull Hn Information Systems Inc. Cache resiliency in processing a variety of address faults
US4852083A (en) * 1987-06-22 1989-07-25 Texas Instruments Incorporated Digital crossbar switch
US5063497A (en) * 1987-07-01 1991-11-05 Digital Equipment Corporation Apparatus and method for recovering from missing page faults in vector data processing operations
US4831622A (en) * 1987-12-22 1989-05-16 Honeywell Bull Inc. Apparatus for forcing a reload from main memory upon cache memory error
DE68924501T2 (de) * 1988-06-28 1996-06-13 Ibm Speichersubsystem mit Fehlerkorrekturcache-Speicher.
US5189665A (en) * 1989-03-30 1993-02-23 Texas Instruments Incorporated Programmable configurable digital crossbar switch
DE3912705C2 (de) * 1989-04-18 1996-06-20 Siemens Nixdorf Inf Syst Verfahren und Anordnung zur Steuerung des Datenaustausches bei Schreibanforderungen von Verarbeitungseinheiten an einen Cachespeicher
JPH0418648A (ja) * 1990-05-11 1992-01-22 Mitsubishi Electric Corp キャッシュを有するデータ処理装置及びそのデータアクセス方法
US5155843A (en) * 1990-06-29 1992-10-13 Digital Equipment Corporation Error transition mode for multi-processor system
US5233616A (en) * 1990-10-01 1993-08-03 Digital Equipment Corporation Write-back cache with ECC protection
US5517015A (en) * 1990-11-19 1996-05-14 Dallas Semiconductor Corporation Communication module
US5392302A (en) * 1991-03-13 1995-02-21 Quantum Corp. Address error detection technique for increasing the reliability of a storage subsystem
US5339322A (en) * 1991-03-29 1994-08-16 Sgs-Thomson Microelectronics, Inc. Cache tag parity detect circuit
US5649090A (en) * 1991-05-31 1997-07-15 Bull Hn Information Systems Inc. Fault tolerant multiprocessor computer system
US5994770A (en) * 1991-07-09 1999-11-30 Dallas Semiconductor Corporation Portable electronic data carrier
US5297099A (en) * 1991-07-10 1994-03-22 Dallas Semiconductor Corp. Integrated circuit with both battery-powered and signal-line-powered areas
US5848541A (en) * 1994-03-30 1998-12-15 Dallas Semiconductor Corporation Electrical/mechanical access control systems
US5831827A (en) * 1994-04-28 1998-11-03 Dallas Semiconductor Corporation Token shaped module for housing an electronic circuit
US6161208A (en) * 1994-05-06 2000-12-12 International Business Machines Corporation Storage subsystem including an error correcting cache and means for performing memory to memory transfers
US5604343A (en) * 1994-05-24 1997-02-18 Dallas Semiconductor Corporation Secure storage of monetary equivalent data systems and processes
US5679944A (en) * 1994-06-15 1997-10-21 Dallas Semiconductor Corporation Portable electronic module having EPROM memory, systems and processes
JPH09511088A (ja) * 1995-04-18 1997-11-04 インターナショナル・ビジネス・マシーンズ・コーポレーション マルチプロセッサ・システムのための高可用性のエラー自己回復共用キャッシュ
US5894487A (en) * 1997-07-15 1999-04-13 International Business Machines Corporation Error detection of directory arrays in dynamic circuits
US20040034820A1 (en) * 2002-08-15 2004-02-19 Soltis, Donald C. Apparatus and method for pseudorandom rare event injection to improve verification quality
DE10327549A1 (de) * 2003-06-18 2005-01-13 Robert Bosch Gmbh Verfahren und Vorrichtung zur Fehlererkennung für einen Cachespeicher und entsprechender Cachespeicher
US7506226B2 (en) * 2006-05-23 2009-03-17 Micron Technology, Inc. System and method for more efficiently using error correction codes to facilitate memory device testing
JP2011108306A (ja) * 2009-11-16 2011-06-02 Sony Corp 不揮発性メモリおよびメモリシステム
JP2019207524A (ja) * 2018-05-29 2019-12-05 セイコーエプソン株式会社 回路装置、電気光学装置、電子機器及び移動体
KR20220107007A (ko) 2021-01-14 2022-08-01 창신 메모리 테크놀로지즈 아이엔씨 비교 시스템
US11599417B2 (en) * 2021-01-14 2023-03-07 Changxin Memory Technologies, Inc. Error correction system
US11886295B2 (en) 2022-01-31 2024-01-30 Pure Storage, Inc. Intra-block error correction

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573728A (en) * 1969-01-09 1971-04-06 Ibm Memory with error correction for partial store operation
US3668644A (en) * 1970-02-09 1972-06-06 Burroughs Corp Failsafe memory system
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
US3896419A (en) * 1974-01-17 1975-07-22 Honeywell Inf Systems Cache memory store in a processor of a data processing system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3618040A (en) * 1968-09-18 1971-11-02 Hitachi Ltd Memory control apparatus in multiprocessor system
US3588829A (en) * 1968-11-14 1971-06-28 Ibm Integrated memory system with block transfer to a buffer store
US3588839A (en) * 1969-01-15 1971-06-28 Ibm Hierarchical memory updating system
US3866183A (en) * 1973-08-31 1975-02-11 Honeywell Inf Systems Communications control apparatus for the use with a cache store
US3845474A (en) * 1973-11-05 1974-10-29 Honeywell Inf Systems Cache store clearing operation for multiprocessor mode
US3893070A (en) * 1974-01-07 1975-07-01 Ibm Error correction and detection circuit with modular coding unit
US3949369A (en) * 1974-01-23 1976-04-06 Data General Corporation Memory access technique
US3938097A (en) * 1974-04-01 1976-02-10 Xerox Corporation Memory and buffer arrangement for digital computers
JPS5140825A (en) * 1974-10-04 1976-04-06 Fujitsu Ltd Batsufua memoriseigyohoshiki
JPS51113427A (en) * 1975-03-28 1976-10-06 Toshiba Corp Information processing device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573728A (en) * 1969-01-09 1971-04-06 Ibm Memory with error correction for partial store operation
US3668644A (en) * 1970-02-09 1972-06-06 Burroughs Corp Failsafe memory system
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
US3896419A (en) * 1974-01-17 1975-07-22 Honeywell Inf Systems Cache memory store in a processor of a data processing system

Also Published As

Publication number Publication date
FR2381356A1 (fr) 1978-09-15
CA1106066A (en) 1981-07-28
US4084236A (en) 1978-04-11
GB1599836A (en) 1981-10-07
FR2381356B1 (fr) 1986-05-30
JPS53103328A (en) 1978-09-08
DE2806024C2 (de) 1987-08-27
AU511692B2 (en) 1980-08-28
AU3328078A (en) 1979-08-23

Similar Documents

Publication Publication Date Title
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE2755897C2 (de)
DE2750721A1 (de) Ein/ausgabe-system
DE2806045A1 (de) Dv-system mit pufferspeicher
DE2755952C2 (de)
DE2459975C2 (de)
DE2846495C2 (de) Zentraleinheit
DE2612139A1 (de) Ein/ausgang-steuerungssystem
DE2829550C2 (de)
DE2714805C2 (de)
DE3128740C2 (de)
DE2750299A1 (de) Ein/ausgabe-system
DE2612083A1 (de) Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2755608A1 (de) Wartungseinrichtung in einem dv-system
CH522921A (de) Rechneranlage
DE2721319A1 (de) Einrichtung zur selbsttaetigen aenderung der prozessor/speicher-konfiguration
DE3127349A1 (de) Signalverarbeitungssystem mit verteilten elementen
DE2657848A1 (de) Steuereinheit fuer ein datenverarbeitungssystem
DE2746505C2 (de)
DE2459956A1 (de) Prozessor und diesen verwendendes peripheres verarbeitungssystem
DE2122338A1 (de) Schaltungsanordnung zur Steuerung des Datenflusses in Datenverarbeitungsanlagen
DE2629266A1 (de) Ein/ausgabe-system
DE2248296A1 (de) Programmsteuereinrichtung
DE2722124A1 (de) Anordnung zum feststellen des prioritaetsranges in einem dv-system

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G11C 29/00

D2 Grant after examination
8327 Change in the person/name/address of the patent owner

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

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee