DE2755897A1 - Ein/ausgabe-system - Google Patents

Ein/ausgabe-system

Info

Publication number
DE2755897A1
DE2755897A1 DE19772755897 DE2755897A DE2755897A1 DE 2755897 A1 DE2755897 A1 DE 2755897A1 DE 19772755897 DE19772755897 DE 19772755897 DE 2755897 A DE2755897 A DE 2755897A DE 2755897 A1 DE2755897 A1 DE 2755897A1
Authority
DE
Germany
Prior art keywords
memory
instruction
signals
register
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19772755897
Other languages
English (en)
Other versions
DE2755897C2 (de
Inventor
Jaime Calle
Lawrence W Chelberg
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 DE2755897A1 publication Critical patent/DE2755897A1/de
Application granted granted Critical
Publication of DE2755897C2 publication Critical patent/DE2755897C2/de
Granted legal-status Critical Current

Links

Classifications

    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Description

— η _
Die vorliegende Erfindung bezieht sich auf ein Ein/Ausgabe-System nach dem Gattungsbegriff des Anspruches 1 und insbesonders auf solche Systeme, die einen Pufferspeicher aufweisen.
In einigen bekannten Systemen 'umfaßt die Zentraleinheit ein Register zur Steuerung der Betriebsweise. Normalerweise wird das Register durch einen speziellen Befehl geladen, der in der Lage ist, den Pufferspeicher ein und auszuschalten, wodurch der Speicher wirksam umgangen werden kann. In solchen Systemen ist es daher erforderlich, die Zentraleinheit in eine bestimmte Betriebsweise zu bringen, wobei sodann die Umgehung des Pufferspeichers gestattet wird. Auf der Hand liegende Nachteile dieser Lösung betreffen den zusätzlichen Verarbeitungsaufwand. Darüberhinaus ist diese Lösung nicht geeignet für Systeme, b^i denen mehr als eine Verarbeitungseinheit Zugriff auf den Pufferspeicher besitzt, wie dies beispielsweise bei Mehrprozeß-Systemen der Fall ist.
Ein anderes bekanntes System verwendet ein Segment-Cpeichorsystem, das über die Benutzung von Segment-Deskriptorworten die Art und Weise vorgibt, in der die Segmente zu behandeln sind. Die Segment-Deskriptorworte weisen Bits auf, die die Adresseneinheit veranlassen, den Pufferspeicher für einen erfolgreichen Adressenvergleich zu sperren. Dies gestattet, daß einige Segmente im Pufferspeicher sortierte Worte aufweisen und daß andere Segmente den Pufferspeicher umgehen. In einer solchen Anordnung ist es normalerweise erforderlich, daß die Ein/Ausgabe-Operationen zugeordneten Segmente am Eintritt in den Pufferspeicher der Zentraleinheit gehindert werden, da eine Fortschreibung der Worte im Hauptspeicher erfolgen könnte, die nicht festgestellt werden kann. Während diese Anordnung für Mehrprozeß-Systeme mehr geeignet ist, besitzt sie jedoch ebenfalls den Nachteil des erhöhten Aufwandes beim Feststellen, welche Segmente Zugriff zu dem Pufferspeicher besitzen dürfen, insbesondere dort, wo Segmente gemeinsam benutzt werden.
809827/0695
Ebenso ergeben sich zusätzliche Einschränkungen hinsichtlich des Zugriffes auf den Hauptspeicher und eine komplizierte Speicherverwaltung.
Es ist daher die /vufgabe der vprliegenden Erfindung, eine verbesserte Lösung für die Umgehung eines Pufferspeichers anzugeben, wobei auf jeden Bereich des Pufferspeichers selektiv durch irgendeine Anzahl von Anweisungsmodulen zugegriffen werden kann. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten Erfindung. Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Die vorliegende Erfindung betrifft ein Ein/Ausgabe-System mit einer Anzahl von Anv/eisungsmodulen und einem internen Speichermodul. Der interne Speichermodul umfaßt einen Hintergrundspeicher und einen Pufferspeicher. Der Pufferspeicher gestattet einen schnellen Zugriff auf zuvor aus dem Hintergrundspeicher abgerufene Informationsblöcke. Das System gemäß dem bevorzugten Ausführunqsbeispiel umfaßt ferner eine System-Schnittstelleneinheit, die mehrere Anschlüsse aufweist, von denen jeder mit einem unterschiedlichen Modul verbunden ist.
Jede an den internen Speichermodul angelegte Speicher-Leseanweisung weist ein vorbestiiumtes Bit auf, das aufgrund seiner Codierung festlegt, wann die von dem Hintergrundspeicher angeforderte Information ebenfalls in den Pufferspeicher zu schreiben ist. Der interne Speichermodul umfaßt ferner eine Steuereinrichtung, die aufgrund einer jeden Speicher-Leseanweisung wirksam wird und der von dem Hintergrundspeicher angeforderten Information die selektive Umgehung des Pufferspeichers in Abhängigkeit von dem Zustand des vorbestimmten Anweisungsbits gestattet.
809827/0695
- li -
Im bevorzugton Ausführungsbeispiel umfassen die Anwe.isungsmodule wenigstens einen E/A-Prozessor und einen Multiplexsrmodul. Im allgemeinen wird der Pufferspeicher von dem sich im Betrieb befindlichen Prozessor benutzt und dieser setzt das vorbestimmte Bit einer jeden Speicher-Leseanweisung in den vorbestimmten Zustand. Hierdurch wird die Steuereinrichtung in die Lage versetzt, in dem Pufferspeicher Informationsblöcke zu speichern, die die aus dem Hintergrundspeicher durch den Prozessor angeforderte Information umlassen. Während E/A-Datenübertragungen gibt der Multiplexermodul Speiclieranweisungen aus, in denen das vorbestimmte Bit nicht auf den vorbestimmten Zustand gesetzt ist. Somit überträgt die Steuereinrichtung die von dem Hintergrundspeicher angeforderte E/AInformation ohne Speicherung im Pufferspeicher. Der Multiplexermodul wird somit daran gehindert, zuvor durch den Prozessor in den Pufferspeicher eingespeicherte Information durch E/A-Information zu überschreiben. Wenn jedoch die angeforderte E/A-Information bereits in dem Pufferspeicher vorhanden ist, so überträgt die Steuereinrichtung die angeforderte E/A-Information von dem Pufferspeicher, was zu einem schnelleren Speicherzyklus führt. Auf diene Weise erhält der Prozessor eine geeignete Steuerung des Pufferspeichers aufrecht auch wenn der Zugriff zu dem gleichen internen Speichermodul durch andere Anweisungsmodule gemeinsam erfolgt. Als Ergebnis ergibt sich eine schnellere Steuerung von E/A-Operationsn.
Es können jedoch bestimmte Situationen vorliegen, in denen der Prozessor nicht die von. dem Hintergrundspeicher angeforderte Information in dem Pufferspeicher zu speichern wünscht. In gleicher Weise kann es Fälle geben, in denen das System das Einschreiben von aus dem Hintergrundspeicher von dem Multiplexer angeforderter E/A-Information in den Pufferspeicher wünscht.
809827/0698
Im Falle des Prozessors wird dt.r vorstehende Fall akut, wenn der Prozessor eine Lescanweisung ausgibt, um eine in einem Proze&sor-Arbeitsregister zu speichernde Platten-Suchadresse zu erhalten. Da nicht beabsichtigt ist, auf die von dem Hintergrundspeicher angeforderte Information erneut im Speicher bezug zu nehmen, gibt der Prozessor eine Spei eher anv/ei sung aus, in der sich das vorbest.liwnte Bit in einem anderen als dem vorbestimmten Zustand befindet.
Hinsichtlich des Multiplexermoduls errichtet das System normalerweise Tabellen im Hintergrundspeicher, auf die der Multiple:Lernodul während der Ausführung von Datenübertragungsoperationen Bezug nimmt, Im bevorzugten Ausführungsbeispiel umfassen die Tabellen Datensteuerwort-(DCW) und Befehls-Datensteuerwort-Tabellen (IDCW). Die IDCTi-1J.1 abeHe weist Listen-Hinweisadressenworte (LPW) auf", die auf eine DCW-Tabelle verweisen. Die DCW-Tabelle speichert eine Liste von Datcnsteuerworten, die die Hinweisadressen auf Informationsbereiche im internen Speicher darstellen. Die LPW- und DCW-Werte sind normalerweise im Multiplexermodul gespeichert und sie werden benutzt, um Speicheranweisungen zur Bezugnahme auf den Hintergrundspeicher zu erzeugen. Das System setzt vorbestimmte Bits in öen LPW- und DCW-Worten in jenen Fällen auf vorbestimmte Zustände, in denen die durch den Multiplexermodul von dem Hintergrundspeicher auszulesende Information im Pufferspeicher zu speichern ist.
Durch die Möglichkeit, der Zustandsänderung des vorbestimmten Bits innerhalb jeder Speicheranweisung sind die verschiedenen Anweisungsmodule des E/A-Systems in der Lage, einen schnelleren Zugriff auf die Information durchzuführen, ohne daß hierdurch eine unerwünschte Uberschreibung oder Zerstörung der in dem Pufferspeicher gespeicherten Information erfolgt, so daß bestimmte Operationen rationel ler durchgeführt werden können.
809827/0695
Anhand eines in den Figuren der beiliegenden Zeichnung dargestellten Ausführungsbeispieles sei die Erfindung im folgenden näher beschrieben. Es zeigen:
Fig. 1 ein Blockdiagramm eines Ε/Λ-Systems, in dem
das Prinzip der vorliegenden Erfindung verwendet wird.
Fig. 2 die F./A-Verarbeitungseinheit gemäß Fig. 1 in näheren Einzelheiten.
Fig. 3a und 3b die System-Schnittstelleneinheit gemäß Fig. 1 in näheren Einzelheiten.
Fig. 4a und 4b die Multiplexereinheit gemäß Fig. 1 in näheren Einzelheiten.
Fig. 5a bis 5d verschiedene Schnittstellen in Fig. 1.
Fig. 6 ein Blockdiagramm des internen Speichermoduls gemäß Fig. 1.
Fig. 7 den internen Speichermodul gemäß Fig. C in näheren Einzelheiten.
Fig. 8 bestimmte Teile von Fig. 7 in näheren Einzelheiten.
Fig. 9 das Format einer ZAC-Speicheranweisung gemäß der vorliegenden Erfindung.
Fig. 10a und 10b das Format eines Listen-Hinweisadressenwortes und eines Datensteuerwortes gemäß der vorliegenden Erfindung.
Fig. 11 ein zur Erläuterung der Betriebsweise der erfindungsgemäßen Einrichtung benutztes Zeittaktdiagramm.
Allgemeine Beschreibung
Gemäß Fig. 1 weist das System der vorliegenden Erfindung wenigstens ein E/A-Prozessorpaar PO 200-0, eine SystemschnittGtelleneinhG.it SIU-IOO, einen Hochgeschwindigkeitsmultiplexer HSMX-300, einen Niedriggeschwindigkeitsmultiplexer LSMX-400,
809827/0695
einen Zentralprozessor 700 und wenigstens einen Speicherrnodui entsprechend einem internen Speichormoudul 500 auf. Verschiedene dieser Module sind jeweils an einen aus einer Reihe «On Anschlüssen dor System-Sohnittstelleneinheit 100 über eine Vielzahl von Leitungen angeschlossen, die ihrerseits verschiedene Arten von Schnittstellen 600-603 bilden. Insbesondere sind der E/A-Prozessor 200, der Zentralprozessor 700 und der Hochqeschwindigkeitsmultiplexer 300 an die Anschlußstellen H,G,D und A angeschlossen, während der Niedriggeschwindigkeitsmultiploxer 400 und die Speichurmodule 500 und 800 an die Anschlußstellen J, LMO 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 "Speicherrnodule" aufweist. Der E/A-Prozessor 200, der Zentralprozessor 700 und der Hochgeschwindigkeitsmultiplexer 300 arbeiten als aktive Module,indem jeder die Fähigkeit besitzt, Anweisungen auszugeben. Die aktiven Module sind normalerweise an die /vnschluß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-Schnittste]leneinheit 100 gegeben und sie sind in der Lage, Anweisungen 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 Speicherrnodule gebildet ,wie sie beispielsweise im Hauptsystem gegeben sind und die in der Lixge sind, zwei verschiedene Arten von Anweisungen auszuführen, die auf den Leitungen der Schnittstelle 603 zugeführt werden.
Das E/A-System gemäß Figur 1 arbeitet normalerweise als ein E/A-Untersystem in Abhängigkeit von durch den Zentralprozossor 700 ausgegebenen E/A-ßefehlen, die an die Anschlußstelle E über die Schnittstellen 600, 601 und 602 angeschlossen sind und eine Datenschnittstello, eine programmierbare Schnittstelle und eine
809827/0695
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 V7eise aufgebaut sein und in seiner Ausführung dem in der US-PS 3 413 613 beschriebenen Prozessor entsprechen. Im bevorzugten Ausführungsbeispiel löst der E/A-Prozessor 200 Kanalprograrome aus und beendigt diese, wobei die Kanalprogranune für" die Ausführung von E/A-Befehlen erforderlich sind , und er verarbeitet Unterbrechungsanforderungen, die er von eier 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-· stelle 600 und die Unterbrechungs-Schnittstelle 602 mit der Anschlußstelle II verbunden. Dor Niedriggeschwindigkeitsmultiplexer 400 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. Schnittstelle 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, Kartenstanzer und Drucker. Wie aus Figur 1 ersichtlich, ist der Multiplexer 400 über die programmierbare Schnittstelle 601 mit der Anschlußstelle J verbunden.
Der Hochgeschwindigkeitsmultiplexer 300 steuert direkt die Datenübertragung zwischen der Gruppe von Platteneinheiten und Bandeinheiten 309-312, die an verschiedene Kanaladapter 203-306 angeschlossen sind. Jeder der Kanal-Steueradapter 303-306 ist seinerseits über die Leitungen einer Kanal-Adapter-Schnittstelle CAI-301-1 an verschiedene Anschlußstellen 0-3 angeschlossen. Der Hochgeschwindigkeitsmultiplexer 300 ist mit der Anschlußstelle A über eine Datenschnittstelle 600, eine programmierbare Schnittstelle 601 und eine Unterbrechungs-Schnittstelle 602 angeschlossen. Jeder der Kanal-Steuerndapter 3O3-3C6 kann so ausgebildet sein, wie dies in der zuvor erwähnten US-PS 3 742 457 beschrieben ist. 809827/0695
Wie zuvor ti) wähnt, .ist joder der Module an verschiedene AniJchlußstellen dc:r Systom-Sohni ttstellcinheit 100 angeschlossen. Die Schnittstel l.c?neinhrit 100 steuert die Verbindung der verschiedenen Modulo untereinander über Datenübcrtragungswege, d.ic 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 ßchciltnötxwerk betrachtet werden, das jedem aktiven Modul die tiliertragung von Daten zu und aus einem internen Speichermodul gestattet, falls der anfordernde Modul die höchste Prioritat auf v/eist und durch den nächsten verfügbaren Speicherzyklus freigegeben ist. Zu diesem Zweck weist die Schnittstelleneinheit 100 Prioritats-Logikschaltkreise auf, die die relative Priorität der Anforderung durch jeden der aktiven Module festellen und den nächsten verfügbaren Speicherzyklus der höchsten empfangenen Prioritätsanfordurung zuordnen. Die Schnittstelleneinheit 100 weist zusät?,lieh Untcrbrechungsprioritäts-Schaltkreise auf, welche die relative Priorität der von den Modulen empfangenen Unterbrechungsaniorderungen feststellen und die höchste Prioritätsanförderung auswählen und über ein Schaltnetzwerk zu dem Prozessor 200 v/eiterleiten.
Anschluß-Schnittstellen
Bevor die verschiedenen Module gemäß Figur 1 näher beschrieben v;erden, sollen anhand der Figuren 5a-5d die Schnittstellen GOO-603 näher erläutert werden. Gemäß Figur 5a ist ersichtlich, daß die dort dargestellten Leitungen die Datenschnittstelle darstellen, die eine der Schnittstellen bildet, die für den Austausch von Information zwischen einem aktiven Modul und der System-Schnittstelleneinheit 100 erforderlich sind. Der Informationsaustausch wird durch Steuerung des logischen Zustandes der verschiedenen Signalleitungen verwirklicht, wobei diese Steuerung in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die in einer als "Dialog" bezeichneten Signalfolge enthalten sind.
809827/0695
Gemäß Figur 5a umfaßt die Schnittstelle mehrere Leitunycn mit folgender Bedeutung: Aktive Ausgangn-Anschluß-Anforderung AOVU/ Daten zur Schnittstelleneinheit DTS OO-DTS 35, PO-P3f Steuerung von Daten zur Schnittstelleneinheit SDTS 0-6, P/identifizierte MehrfachanschlÜBse zur Schnittstelleneinheit MlTS 0-3, P/ aktive Anforderung angenonunen ARA/ gelesene Daten angenommen AIlDA; Daten von der Schnittstelleneinheit DFS OO-35, PO-P3; Mehrfcichanschluß-IdentifLzierer von der Schnittstelleneinheit, MTFS 0-3, P, Doppelpräzision von der Schnittstelleneinheit DPFS und Status angenonunen AST. Die Beschreibung der Schnittstellenleitungen erfolgt im nachstehenden Abschnitt in näheren Einzelheiten.
Daten-Schnittstellen-Leitungen
Bezeichnung
DTS 00-34, P0-P3
SDTS 0-6, P
Beschreibung
Diese Leitung dient der übertragung einer aktiven Ausgangs-Anschluß-Anforderung in einer Richtung, die sich van jedem der aktiven Module zu der Schnittstelleneinheit SIU-IOO erstreckt. Wenn diese Leitung gesetzt ist, so signalisiert sie der Schnittstelleneinheit SIU, daß der Modul einen übertragungsweg anfordert, über den eine Anweisung oder Daten zu übertragen sind.
Diese Leitungen stellen einen Datenübertragungsweg mit einer Breite von vier Bytes dar, die sich in einer Richtung zwischen jeddn der aktiven Module und der Schnittstellenheit SIU erstrecken und die zur übertragung von Anweisungen oder Daten von jedem aktiven Modul zu der Schnittstelleneinheit SIU-100 benutzt werden.
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU-100. Slü dienen der Steuerung von Daten zur
809627/0695
Schnittstellenoinheit und sie werden benutzt/ um die Schnittstelleneinheit SIU-1OO mit Steuerinfor mation zu versorgen, we:nii die Leitung AOPR gesetzt ist. Die Steuerinformation besteht iius sieben Bits und einem Paritäts-Bit/ welche in folgender Weise codiert sind:
a) Der Zustand des Bits 0 gibt die Art der Anv;eisung an, die über die DTS-Leitung zugeführt wird. Die Anweisung kann hierbei, eine progreimmierbare Schnittstellenanweisung oder eine Speicheranweisung sein.
b) Die Bits 1-4 geben durch ihre Codierung an, welcher der Module die Anv.'eisung empfangen und interpretieren soll (Speicheranweisungen werden nur durch Speichermodule und programmierbare Schnittstellonanweisungen 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 Wort bestimmt eine Übertragung mit einfacher Präzision und zwei Worte bestimmen eine übertragung mit doppelter Präzision}.
d) Der fcuntand 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-1OO ent-
• haltenen Anordnung geprüft wird.
MITS 0-3, P Diese Leitungen erstrecken sich von dem aktiven
Modul zu der Schnittsbellcnheit SIU-100. Sie zeigen durch ihre Codierung an, welcher Unterkanal oder Anschluß innerhalb eines aktiven
809827/0695
DFS 00-35, P0-P3
MIFS 0-3, P
- 19 -
Moduls das Setzen der Leitungen AOPR hat.
Diese Leitung erstreckt sich von der Schnittstelleneinbcit SIU-100 zu jedem de* aktiven Module. Dif'.se Leitung wird gesetzt, um anzuzeigen, daß der angewählte empfangende Modul die Anforderung durch den aktiven Modul angenommen hat, wodurch dem Modul gestattet wird, ,die angeforderte Information von den Daten-Schuttsta Ilen leitungen zu entfernen. Diese Leitung erstreckt sich von der Schnittstelleneinheit SIÜ zu jedem der aktiven Module und sie wird durch die Schnittsteller.einhei t gesetzt, um den aktiven Modul anzuzeigen, daß er die zuvor angeforderten Daten eines ausgewählten Moduls anzunehmen hat.
Die Daten von der Schnittstelleneinheit v/erden auf einem anderen Satz von Datenübertragungs·- leitungen übertragen, welche eine Breite von vier Bytes aufweisen und sich in einer Richtung von der Schnittstolleneinheit zu jedem aktiven Modul erstrecken. Diese Gruppe von Leitungen wird von der Schnittstelleneinheit SIU-100 benutzt, uni gelesene Daten zu einem ausgewählten aktiven Modul zu übertragen.
Diese vier Mehrfachanschluß-Bectinunungsleitungon plus eine ungerade Paritätsleitung erstrecken sich von der Schnittstelleneinheit SIU-100 zu jedem der aktiven Module. Diese Leitungen geben durch ihre Codierung an, welcher Anschluß oder Unterkanal des aktiven Moduls die Daten einer vorausgegangenen Leseoperation von der Schnittstelleneinheit SIU-100 aufzunehmen hat. Diese Doppelpräzisions-Loitung erstreckt sich von der Schnittstelleneinheit SIfJ 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-
809827/0695
"20 ' 2V55897
Vollständigung einer übertragung aufzunehmen sind (Leseanweisung)
AST Diese Leitung erstreckt sich von der Schnitt-
stellenoinheit SIU-100 zu jedem aktiven Modul und ihr Zustand, der wechselseitig exklusiv zu der Leitung AlW. ist, signalisiert dem aktiven Modul, daß er die auf den DFS-Leitungen zugeführte Statusinformation aufnehmen soll.
Die Leitungen der programmierbaren Schnittstelle 601 sind in Figur 5b dargestellt und sie dienen der übertragung von Anweisungen von einem aktiven Modul und einem ausgewählten Modul. Die über tracing wird durch die Steuerung der logischen Zustände der verschiedenen Signa] 1 cäitungen bewerkstelligt, wobei dies in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die eine als "Dialog1.1 bezeichnete Signnlfclge ausführen. Die programmierbare Schnittstelle umfaßt verschiedene Leitungen, denen folgende Bedeutung zugeordnet ist: Programmierbare Schnittstellenanweisungen angenommen APC/ programmiere Schnittstellendaten von der Schnittstelleneinheit SIU FDFS 00-35,. P0-P3; programmierbare Schnittstelle bereit PIR/ Anforderung der übertragung gelesener Daten RDTR/ programmierbare Schnittsteliondaten zu der Schnittstelleneinheit SIU PDTS 00-35/ PO-P3 und gelesene Daten angenommen RDAA. Eine Beschreibung der Schnittstellen]eitungen wird nachfolgend in näheren Einzelheiten gegeben.
Programmierbare Schnittstellenleitungen
Bezeichnung Beschreibung
APC Diese Leitung erstreckt sich von der Schnitt-
otelleneinheit SIU-100 zu jedem empfangenden Modul und sie signalisiert im gesetzten Zustand dem Modul, daß Anweisungsinformation den PDFS-Leitungen der Schnittstelle durch die Schnittstelleneinheit SIU zugeführt worden ist und durcl·. den Modul aufgenommen werden soll. 809827/0695
PDFS 00-35, P0-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich in einer Richtung von der Schnittstellcneiniieit SIü-100 zu jedem Modul. Sie führen einem ausgewählten empfangenden Modul programmierbare Schnittstelleninformation von der System-Schnittoinheit SIÜ-100 zu.
PIR Diese Leitungen erstrecken sich von jedem Modul
zu der Schnittstelleneinheit SIU-100 und sie aeigen im gesetzten Zustand an, daß der Modul bereit ist, eine über die Leitung PDFS zugeführte Anweisung aufzunehmen.
PDTS 00-35,P0-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich in einer Richtung von jedem Modul zu der Schnittstelleneinheit SIU-100. Diese Leitunger, werden zur übertragung von programmierbarer Schnittstellenin forma tion zu der Schnittstelleneinheit SIU-100 benutzt.
RDTR Diese Leitung erstreckt sicli von jedem Modvil,
der an die programmierbare Schnittstelle angeschlossen ist, zu der Schnittstelleneinheit
SIU-100. Im gesetzten Zustand zeigt diese Leitung an, daß die zuvor angeforderten gelesenen Daten für eine übertragung zu einem Modul verfügbar sind und durch den Modul den Leitungen PDTS zugeführt worden sind.
RDAA Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 nach jedem Modul und sie zeigt im gesetzten Zustand dem Modul an, daß die über die Leitungen PDTS zugeführten Daten aufgenommen worden sind und daß der Modul die Information von diesen Leitungen wegnehmen kann.
Gemäß Figur 5 c ist als weitere Schnittstelle die Unterbrechungs-Schnitts teile 602 dargestellt, die für die Unterbrechungsvorarbeitung durch den E/A-Prozessor 200 vorgesehen ist. Diese Schnitt-
809827/0695
stelle gestattet die Übertragung von Unterbrechung^information von einem aktiven Modul zu der Schnittstelleneinheit: SIU-IOO sowie die übertragung von Unterbrechungsinformation von der Schnittctellcneinhc.it SIU-100 zu dem Ε/Λ-Prozessor 2OO zwecks Verarbeitung. Entsprechend den anderen Schnittstellen wird die übertragung der Unterbrechungsanforderung durch Steuerung der logischen Zustände der verschiedenen Signalleitungen verwirklicht, v/obei dies in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die durch eine als "Dialog" bezeichnete Signal folge ausgeführt verarm. Die Unterbrechungsschnittstelle v/eist verschiedene Leitungen mit folgender Bedeutung auf: ünterbrechungsanforderung IR; Unterbrechungsdaten IDA 00-11, PO-Pl und Unterbrechungs-Mchrfachancchluß-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 UnterbrechungsschnittsteJ.le ferner Leitungen mit folgender Bedeutung auf: Pegel Null vorhanden LZP; höhere Pegelunterb.reehung vorhanden HLlP; Unterbrechungsdaten-Anforderung IDR; Freigabe RLS und aktiver Unterbrechungspegel AILO-2. Wie aus Figur 5c hervorgeht, weisen die Unterbrechungsschnittstellen-Anschlüsse G und II keine Unterbrechungn-Mehrfachanschluß-Identifiziererleitung auf . Eine Beschreibung der Unterbrechungs-Schnittstellenleitungen erfolgt nachstehend in näheren Einzelheiten.
Unterbrechungs-SchulttStellenleitungen
Bezeichnung Beschreibung
IR Diese Leitung erstreckt sich von jedem Modul
nach der Cchnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand der Schnittstelleneinheit SIU-100 an, daß sie eine Bedienung anfordert.
IDA 0-3/ PO Diese Unterbrechungs-Datenleitungen erstrecken IDA 4—11,PI sich von einem aktiven Modul nach der Schnitt-
stellenoinheit SIU-100. Durch ihre Codierung enthalten diese Leitungen Steuerinformation, deren übertragung nach dem E/A-Prozessor angefordert v/ird, wenn eine Unterbrechungsanforde-· 809827/0695
IMID 00-03
rung von den» Prozessor angenommen worden ist. Diese Hits sind wie folcjt. codiert: a) Dor Zustand dos Bits 0 signalisiert der Schn-il stellenoinhoit SIUrIOO, welcher der beiden Prozessoren die Unterbrechungsanfordoiuny verarbeiten soll.
b)Die Bits 1-3 zeigen durch ihre Codierung die Priorität oder die Pegclnununer der Unterbrechungsanforderung der Schnitts tellenci nhe.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 ii>t (z.B. eine Unterbrechungssteuerblocknummer ICBN)
e)das Bit P1 ist ein Paritäts-Bit für dje Bits
4-11.
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU-100 und sie bestimmen durch ihre Codierung, welcher spezifische Unterkanal des aktiven Moduls eine Unterbrechungsbearbeitung angefordert hat. Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor und sie zeigt, im gesetzten Zustand an, daß durcl· die Schnittstelleneinheit SIU--100 eine Anforderung mit höchster Priorität (Pegel Null) an den Prozessor 200 gerichtet ist.
Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem E/A-Prozessor 200 und sie zeigt im gesetzten Zustand an, daß eine Unterbrechungsanforderung mit einem höheren Pegel als der Pegel des gerade auf dem Prozessor 2CO bearbeiteten Prozesses vorliegt. 809827/0695
IDU Diese Leitung erstreckt sich von dem E/A
Prozessor 200 nach der Schnittutellcneinhoit SIU-IOO und sie zeigt im gesetzten Zustand an, daß von der Sohnittstellencinheit SIU-100 auf den Leitungen DFS Unterbrechungsdaten, nach dem Prozessor zu senden sind.
RLS Diese Leitung erstreckt sich von dem E/A
Prozessor 200 mich der Schnittstellcneinheit SIU-100 und sie zeigt im gesetzten Zustand an, daß der Prozessor 200 die /vusiührung der laufenden Prozedur beendet hat.
/vIL 0-2 Die den aktiven Untcrbrechungspegel führenden
Leitungen erstrecken sich von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor 200. Diese Leitungen geben durch ihre Codierung die Unterbrechungspogelnummer der auf dem Prozessor 200 auszuführenden Prozedur an.
Eine letzte Gruppe von Schnittstellenleitungen, die von bestimmten Modulen gernäß Figur 1 benutzt wird, wird durch interne Speichcrschnittstellcn-Leitungen gemäß Figur 5d repräsentiert. Die interne Speicherschnittstelle 603 dient dem Informationsaustausch zwischen dem intarnen Speicher 500 und den Modulen des Systems. Der Informationsaustausch wird durch Steuerung der logischen Zustände der verschiedenen Signal-Schnittstellenleitungen in Übereinstimmung mit zuvor festgelegten Regeln bewerkstelligt, wobei diese Regeln eine als "Dialog" bezeichnete Signalfolge ausführen. Die interne Speicherschnittstelle weist eine Anzahl von Leitungen auf, denen folgende Bedeutung« zugeordnet ist: Daten zum Speicher DTM 00-35, P0-P3/ Datenidentifizierer zum Speicher RITM 0-7, PO-P1/ Bestimmungsleitungen zum Speicher SLTM 0-3, P; Annahme PI-Anweisung APC/ Annahme ZAC-Anweisung AZC; Pl-Schnittstelle bereit PIR/ ZAC-Schnittstelle bereit ZIR,-Ubertragungsnnforderung gelesener Daten RDTR,· Daten vom Speicher DFM 00-35, P0-P3,· Anforderungsidentifizierer vom Speicher RIFM 07-, PO-P1; Doppclpräzision . vom Speicher DPFM/QUAD/ gelesene
809827/0695
_ 25 -
Daten angenommen RDAA und Systemtakt SYS-CLK.
Speicher- und programmierbare Schnittstellcnanweisung werden üb:·: die gleichen Datenleitungen der Schnittstelle übertragen. Die Schnittstelle weist keine Leitungsgruppe zur Verarbeitung \ov Unterbrechungsanforderungen auf, so daß die an den internen Speicher über die Schnittstellcneinheit SIU-100 angeschlossenen Module nicht direkt eine Speicherunterbrechung veursachen können. Eine Beschreibung der internen Speicherschnittsteilen.l. eitungen 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
auf, A Bytes
Beschreibung
Diese Leitungen weisen eine Breite von 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 Speichoroder programmierbaren Schnittstsllenar.weisungen zu dem internen Speicher 500 benutzt. Diese Leitungen bilden zwei Gruppen mit vier Leitungen, welche sich von der Schnitts teilen-· 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 Schnittstelleneinheit SIU-100 nach dem internen Speicher 500 und sie umfassen zwei Anschlußnummur-Auswahllcitungcn, eine Lese/Schrcib-Lcltung zum Speicher, eine Doppolpräzisionslci hung z"i» Speichor und eine Paritätsleitung. Die diesen LßitxiiKUiju yuii&pprttgtcn Informationssignale sin1.
folgendermaßen codiert:
a) Dig Bits 0-1 stollen Anschlußnunnner-Ausv.'abl-Bits dar, die durch ihre Codierung i:nzeigen, welcher Anschluß oder Unterkanal innerhalb des beigefügten Moduls die zu dom Modul gesendete Speicheranweisung empfiingen oder interpretieren soll.
b) Bit 2 ist ein Lese/Schreib-Bit zum Speichor, das in der von dem aktiven Modul empfangenen Steuerinformation enthalten ist und von der Schnittstcllenoinheit SIU nach dem internen Speicher 500 weitergereicht wird, wenn von der Schnittstelleneinheit SIU-100 eine neue Anweisung zu dem Speicher abgesendet wird. Der Zustand dieses Bits zeigt die Richtung der Datenübertrag an.
c) Bit 3 ist ein Doppelpräzisions-Bit zum Speicher, das durch seine Codierung den Betrag der zu übertragenden Daten anzeigt. Es ist ebenfalls in der durch den aktiven Modul erzeugten Steuerinformation enthalten, wobei es durch die Schnittstelleneinheit SIU-100 nach dem internen Speichermodul 500 übertra-
; gen wird, wenn eine neue Anweisung nach dem
Speichermodul abgefsandet wird.
AZC Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU™100 nach dem internen Speichermodul 500 und sie zeigt im gesetzten Zustand dem internen Speichermodul 500 an, daß eine von der Schnittstellenoinheit SIU-100 auf den anderen Leitungen angebotene ZAC-Anweisung und Steuerinformation anzunehmen ist. Das Setzen dieser Schnittstellenleitungen erfolgt wechselseitig exklusiv mit dem Setzen der Schnittstellenlcitung APC.
809827/0695
PIR/ZIR
DFM 00-35, PO-P3
UIFM 0-3, PO
RIFM 4-7, P1
Diese Lei tang client dor Annahme» einer pi;o~ grammierbaren Schnittstellenanwclsung und sie erstreckt sich von der Schnittsteileneinheit SIU-100 noch dem internen Speichermodul 500. Im gesetzten Zustand zeigt diese Leitung r.n, daß die auf den Leitungen DTM vorliegende Au-Weisungsinformation von dem internen Speichormodul 500 anzunehmen ist.
Diese Leitung signalisiert die Bereitschaft der programm!erbaren Schnittstelle und sie erstreckt sich von dem internen Speicherinodul 500 zu der Schnittstelleneinheit SIU-100. Im genetzten Zustand zeigt diese Leitung dor Schnittstelleneinheit SIO-100 an, daß der interne Speichermodul 500 in der Lage ist, eine programmierbare Schnittstellenanweisung kzw. Speicheranweisung (ZAC) anzunehmen. Diese Leitung erstreckt sich von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand an, daß die zuvor durch eine ZAC- oder PI-Anweisung angeforderte^gelesenen Daten zusammen mit der erforderlichen Steuerinformation verfügbar sind und zu dem die Daten anfordernden Modul gesendet werden können. 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 Rttckholung angeforderter Lesedaten in einen aktiven Modul über die Schnittstelleneinhoit SIU-100 benutzt.
Die beiden Gruppen von Leitungen erstrecken sich von dem internen Speichermodul 5OO nach der Schnittstellcneinheit SIU-100. Diese Leitungen werden benutzt, um die gelesenen Daten aus dem Modul 5CO zurück nach dem anfordernden Modul zu leiten.
809827/0695
DPFM und QUAD
Die Doppelpräzisionslcitung vom Speicher und die QUAD-Lc:itung erstrecken sich von dem internen Speichormodul 500 nach der Schnittst elleneinhcit SIU-100. Diese Leitungen zeigen durch ihre Codierung die Anzahl der Worte an, die über die Schnittstelleneinheit SlU-100 zu dem anfordernden Modul während des Zeitintervalles der Ubertraguncjsanforderung der gelesenen Daten zu übertragen sind. Diese Leitungen sind folgendermaßen codiert:
QUAD, DPFM
0 0 ein Wort, Einfachpriizicion
0 1 zwei Worte, Doppelpräzision
1 X vier Worte
Diese Leitung für die Statusidentifikation der gelesenen Daten erstreckt sich von dem internen Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Der Zustand dieser Leitung signalisiert der Schnittstelleneinheit SIU-100, ob die. auf den Leitungen DFM vorliegende Information sich auf gelesene Daten oder eine Statusinformation bezieht, wenn die Leitung RDTR gesetzt ist. Im gesetzten Zustand zeigt diese Leitung an, daß eine Statusinformation von ein oder zwei Worten (QUAD=O) zu übertragen ist. Wenn diese Leitung den Binärwert Null einnimmt, so wird hierdurch signalisiert, daß bis zu vier Worte zu übertragen sind, wobei die Anzahl der Worte durch die Codierung der Leitungen QUAD und DPFM vorgegeben wird.
Diese im Zusammenhang mit der programmierbaren Schnittstelle erwähnte Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 nach dem internen Speichermodul 500. Im gesetzten Zustand signalisiert diese Leitung dem Speichermodul, daß die von ihm auf den Schnitt-
809827/0695
stellenleitungcn ausgegebenen Daten angenommen worden sind und daß er daher diene Daten auf den Leitungen wegnehmen kann.
SYS-CLK Die Systemtakt-Leitung erstreckt sich von dor
Schnittsteileneinheit SIU-100 nach jedem Modul des Systems. Diese Leitung ist an eine Takt·- . geberquelle innerhalb des E/A-Prozcssors 2OO angeschlossen und sie dient der Synchronisation der Operationen eines jeden Speichermoduls durch den gemeinsamen Systeintakt.
Während die Figuren 5a bis 5d diejenigen Leitungen zeigen, weicht die verschiedenen Module des Systems gemäß Figur 1 mit der Schnittstelleneinheit SIU-100 verbinden, sei darauf verwiesen, daß noch andere Leitungen vorgesehen sind, zur Signalisätion anderer Zustände, wie beispielsweise von Fehlerzuständen und Betriebezustä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 v/eist der Prozessor 200 einen mikroprogrammi erten Steuerabschnitt 201 auf, der in Abhängigkeit von in einem Stouerspeicher 201-10 gespeicherten Mikrobefehlen Steuersignale für die Ausführung von Befehlen erzeugt. Ferner umfaßt der Prozessor 200 einen Befehls-Pufferabschnitt 202 zur Speicherung von aus dem internen Speichermodul 500 abgerufenen Befehlen, einen Speicherabschnitt 203 und einen Verarboitungsabschnitt 204 zur Ausführung arithmetischer und logischer Operationen unter Steuerung von in dem Steuerspeicher 201-10 gespeicherten Mikrogrogrammen.
Sleuerspeicherabschnitt 201
Der Steuerspeicher 201-10 besteht beispielsweise aus Abschnitten eines Festwertspeichers ROM. Der Steuerspeicher 201-10 ist über
809827/0695
~ 30 -
Signale· von irgendeiner von aclil: Ursprungsadressen actresro erl er, die an einen Auswahlsc-ha] tor 201-Vi verfügbar sind. Tor Inhalt der adressiertem Speicherplätze wird in ein Ausgangsrcgis tc;i: 201 -15 ausgelesen und durch in einem Block 201-16 enthaltene; neeodierschaltki.eise decodiert. Zusätzlich v/erden Signale von einem der Felder dc.c; den Mikrobefehl enthaltender; Registers 201 -15 als Eingangssignal für den Schalter 201-14 benutzt, um eine der acht Ursprungsadresson als Adresse für den Steuerspeicher 2O1-1O auszuwählen. Die in da? Register 201-15 eingelesenen Mikrobefehle weisen Auresskonstanton auf zum Verzweigen des Steuerspeicbc.rs 201-10 auf geeignete Mikroprogranimroutincn.
Wie aus Figur 2 ersichtlich, sind folgende Steuerspeichör-üisprur;.· adressen vorgesehen: Unterbrechungs/Z^usnahmesignaie', die von Signalen abgeleitet werden, die von der System-Schnittstellenolnheiv 100 uiid von Schaltkreisen innerhalb des Prozessors 200 orzev.gt werden; eine Nächst-Adressregisterposition, die an die über einen Addierschaltkreis 201-24 in ein Register 201-2 2 eingespeicherte Nächst-Adresseninforrnation angeschlossen ist} eine Rückkehradressregisterposition, der d~r Inhalt eines Pückkehrregisters 201-20 als Rückkehradresse zugeführt ist; eine Ausführungs-Adressregisterposicion, 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 Konstantenposition, der ein Konstantenwert aus dom Ausgangsregister 201-15 zugeführt wird.
Die geeignete nächste Adresse wird durch den Addierschaitkreis 201-24 erzeugt, dem als ein Operandeneingang Adressignalo in Form einer durch den Schalter 20 1-14 ausgewählten Ursprungsadresse und als ein anderer Operand Signale von Sprung.·* S Lnuerschaltkreisen eines Blockes 201-26 zugeführt werden. Die Sprung-Steuerschaltkreise worden durch in dom Steuerspeicherregister 201-15 gespeicherte Konstantensignale beeinflußt und sie erzeugen einen geeigneten Wert als einen Operondeneingnng für den Addierschaltkreis 201-24. Din durch den Addicrnchaltkrcis 201Oi
809827/0695
erzeugte resultierende Adresse ergibt sich als Summe von durch den Schalter 201-14 ausgewählten Adressen und von Kor«stantcnsignalc-n, 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 Operationscocie eines Programmbefehls bestimmt ist. Der Operationscode de? Befehls wird dem Wegsucherapeicher 201-2 über den Datenweg 2O1-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 Konstenregisterposition ausgewählt wird, um eine Verzweigung nach einem vorbestimmten Speicherplatz im Steuerspeicher 201-10 zu erzeugen, die durch das Konstantenfeld des in dem Register 201-15 gespeicherten Mikrobefehls bestimmt ist.
Unterbrechungen werden nach der Vervollständigung der Ausführung eines Programmbefehles verarbeitet. Aus Figur 2 ist ersichtlich, daß Leitungen HLIP und LZP, die das Vorhandensein eines höheren Unterbrechungspegels bzw. einer Unterbrechung mit dem Pegel Null anzeigen, Signale an den Schalter 201-14 anlegen. Das über die Leitung 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 Unterbrcchungsfolge von Mikrobefehlen anstelle der Mikrobefohlsfolge für die Ausführung des nächsten Programmbcfehles aus.
809827/0696
Ausnahmen anzeigende Signalleitungen sind an nicht dargestellte Steuerschaltkreise angeschlossen, die dem Schalte" 201-14 zugeordnet sind und verursachen die Auswahl der Ausnahme/Unterbrechung sposi tion. 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 Prcgrammbefehles verhindert werden muß oder nicht möglich ist (z.B. Fehler, illegale Befehle). Die Ausnahme wird 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 Ausnahnie/Unterbrechungsposition des Schalters 201-14 und das Setzen einer entsprechenden Eit-Position im Prozeßsteuerregister 204-22.
Mit PDA .in Figur 2 bezeichnete Zeittaktsignale werden durch TaVt-schnltkreise innerhaJb eines Blockes 201-30 erzeugt und sie dienen der Vorgabe geeigneter Speicherzyklen für den Steuerabschnitt 2O1 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
809827/0695
unterteilt, die die erforderlichen Eingangssignal für die verschiedenen Auswahlschalter gemäß Figur 2 erzeugen. Diese Schalter werden zur Adressierung der verschiedenen Zwischenspeicher und für die Auswahl der Operanden benutzt. Die Steuerfelder erzeugen ferner Signale zum Festlegen verschiedener Testbedingnngen 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 204-18 zugeführt werden. Die Gruppe von Registern 202-2 ist an einen Befehlsregisterschalter 202-4 mit zwei Stellungen angeschlossen, der seinerseits zwei Ausgangssignale erzeugt, ein Ausgangssignal CIR betreffend einen gerade, ausgelesenen Befehl und ein weiteres Ausgangssignal NIR betreffend einen nächsten ausgelesenen Befehl. Die Auswahl von Befehlsworten auf einer Halb- oder Vol.lv.'ortbasis wird in Abhängigkeit von dem Zustand der Bit-Positionnn in dem laufenden Befehlszähler IC getroffen, der normalerweise in einem ersten Register der Arbeitsregister des Blockes 204-12 gespeichert ist.
Speicherabschnitt 203
Gemäß Figur 2 weist dieser Abschnitt einen Zwischenspeicher auf, der acht Gruppen von Registern aufweist, die acht verschiedenen Prozessen zugeordnet sind, die unterschiedliche Prioritätspegel besitzen. Der höchste Prioritätspegel entspricht dem Pegel 0 und der niedrigste Prioritätspegel entspricht dem Pegel 7. Jeder Gruppe bzw. jedem Pegel sind 16 Register zugeordnet.
809827/0696
Der Zwischenspeicher 203-10 wird über einen Daten-Ausv:aiil£>c halter 203-14 mit acht Schaltstellungen itdressi crt, wodurch den Adresseingängen 2Ol-*-12 selektiv eine V-Bit-Adresso aus einer der acht
Ursprungsadressen zugeführt wird. Die drei höchstrangigsten ELt-Positionen dar Adresseingänge 203-12 wühlen eine der acht Registeraruppen aus, während die verbleibenden vier Bits eines der 16 Register auswählen. Die von der Schnittstel]eneinbeit SlU-IGO auf den Leitungen AJL 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 wird über den Schalter 202-4
geladen, um Signale entsprechend den Bits 9-12 oder den Bite 14-17 des laufenden Programmbefehls zu speichern, v/ob ei dieser durch
eines der Felder des Mikrobefehls innerhalb des Registers 2O1 -Ί5 bestimmt wird. Das Schreib-Adressregister weist somit Adrescer>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
Schroib-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-Flcp tritt das Schreibtaktsignal auf, wenn das Sehreib-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 Auswahlschaiter 303-14 einem Decodiernetzwerk 203-28 zugeführt, \;elches jedesmal ein Signal auf einer Ausgangsleitung erzeugt, wenn das Register 203-22 eine Adresse von 0,1 oder 15 speichert. Dieses Signal verhindert die Erzeugung eines Schreibtaktimpulses durch
nicht dargestellte Gatterschaltkreisc, wenn das Schreib-Flip-Flop auf "1" gesetzt ist. Dem Decodiernetzwerk 203-28 wird zusätzlich
809827/0695
von dem Prozeßzustandsregister 204-20 ein Modussignal zugeführt. Da?: Ilcdussignal zeigt an, ob der Prozessor 200 in der Hauptbzw. Nebenbetriebsweise betrieben wird,und es wird mit dem Ausgangssignal einer UND-Vcrknüpiung unterzogen und zur Erzeugung eines Ausriahmesignales auf einer anderen Ausgangsleitung benutzt, die ihrerseits als ein Eingang zu dem Prozeßsteuerregister 2O4-22 und auf einen Eingang, der dip Auswahl der Ausnahme/Unterbrechuncjspositj.on des Schalter 201-14 bewirkt, geführt ist. Hierdurch wird eine Veränderung des Inhalts des Prozeßzustandsregisters GRO des Zwischenspeichers 203-10 verhindert. Der Inhalt eines adressierten Register-Speicherplatzes wird über einen Datenauswahl.rchalter 203-18 mit zwei Stellungen in ein Zwir>chenßpeicher-Pufferregister 203-16 übernommen. Der Inhalt des Pufferregisters 203-16 v.'ird sodann über einen weiteren Dat'enauswahlschalter 203-20 mit zwei Stellungen dem Verarbeitungsabschnitt 204 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-1O empfängt Datensignale über eine von zwei Ausgangsschienen, die wahlweise an eines von vier Arbeitsregistern des Blockes 2O4--12 angeschlossen sind.
Jede Gruppe von 16 Registern weist einen Prozeßzustandsregistei— Speicherplatz (Allgemeinregister GRO) zur Speicherung von Information auf, die für die Steuerung des laufenden Prozesses von Bedeutung ist. Die ersten acht Bit-Positionen des Registers speichern Steuerungsinformation, die aufgrund ihrer Codierung den unterbrechenden Modul festlegt. Die nächste Position ist durch eine Vorrang-Bit-Position gegeben, die durch ihre Codierung die Betriebsweise der Operation festlegt. Das Register umfaßt ferner eine externe Register-Bit-Position, die angibt, ob der Registerinhalt verändert werden kann sowie eine Adressenmodus-Bit-Position, zwei Zustandscode-Bit-Positionen, eine Ubertrags-Bit-Por.jtion und 22 Bit-Positionen für die Speicherung eines Zähletandos, der periodisch heruntergezählt wird, während der zugeordnete Prozeß aktiv iat. Wegen der für eine Modifikation od^r
809827/0695
Bezugnahme erforderlichen Frequenz der. Zugriffs auf den Inhalt dos Pro'zenzustandsrecjisters sind Signale entsprechend dem Inhalt dieses Registers in einem der Register des Verarbeitungsabschnittes 204 (z.B. Register 204-20) gespeichert. Der Speicherplatz des Allgenieinregisters zum Speichern des Inhalts des Prozeßzustanclsregisters dient daher zum Speichern des laufenden Viertes des Prozeß-Zustandsregiüters des Abschnittes 204 beim Auftritt einer Unterbrechung.
Jede Gruppe von Registern weist ferner einen Befehlszähler (.Mlgemeinregj.nter GR1) zur Speicherung dor Adresse des laufenden Befehls des zugeordneten Prozesses auf. Zusätzlich weist jede Gruppe von Registern ein Seitentabellen-Easisrogister (Allgemein register 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 e'.no absolute Adresse speichert, die auf die Basis eines Ausnahmesteuerblockes und auf Unterbrechungssteuerblocktabellen im internen Speichermcdul 500 verweist. Das erste Register GRO milder höchsten Priorität innerhalb der Gruppe von Registern, dessen Inhalt niemals verändert wird, speichert die Steuerblockbasisinfor;naticn. Die Unterbrechungs-Steuerblocktabellen weisen 256 Gruppen von Speicherplätzen auf, welche Information für die Verarbeitung der Art der Unterbrechung speichern. Die Ausnahme-Steuerblocktabellen weisen 16 Gruppen von Speicherplätzen auf, die Information für die Verarbeitung des 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 Programmbefchls entspricht, wenn der Prozessor in die Hauptbetriebsweise eintritt. In allen anderen Fällen weist die Au«3-nahmenummer den Wert 0 auf. Die Ausnahmennuinmer (ECB-Nummer) wird zur Bestimmung eines der AusnahmestcuerblÖcke ECB mit vier Worten benutzt, welcher auf eine Ausnahmo-Vcrarbeitungsroutine verweist.
809827/0695
Die Byte-Adresse eines Ausnahmesteuerblockes ECB entspricht der Steuerblockbasis CBB-16 (ECB-Nummcr -1). Jeder Ausnahroesteuerblock ECB weist Werte zum Larlan der Register PSR, IC und PTBR auf sowie zusätzlich einen V7ert 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 Steueiblockbasis CBB +16 (ICB-Nummer) . Die ICB-Nummer wird aus dem Unterbrechungswort in dar erläuterten Weise gewonnen. Der Unterbrechungssteuerblock stellt ebenfalls einen Block von vier Worten dar und er enthält Vierte für die Register PSR, IC, GR14 und PTBR.
Verarbeitungsabschnitt 204
In diesem Abschnitt werden alle arithmetischen und logischen Operationen durchgeführt, die von den Programmbefehlen des Prozesses gefordert werden. Der Abschnitt 204 umfaßt eine Addier/Verschiebe- einhei t 204-1, die in der Lage ist, arithmetische, Verschiebe- und logische Operationen mit einem Paar Operanden von 36 Bit durchzuführen. Die von einem Addierteil oder einem Verschiebeteil der Einheit 204-1 erzeugten Resultate werden aufgrund von Mikrobefehlen ausgewählt und anschließend selektiv über einen Datenauswahlschalter 204-8 mit vier Stellungen über ein Paar Ausgangsleitungen entweder zu irgendeinem der Arbeitsregister des Blockes 204-12 oder zu einem Datenausgangsregister 204-14 übertragen. Dan Daten-Ausgangsregifjter 204-14 ist an die Leitungen der Prozessor-Datenschnittstelle 600 angeschlossen. Der Block 204-12 umfaßt vier Arbeitsregister RO bis R3, die der temporären Speicherung des Inhalts des Befehlszählers und der Adressen während einer Befehlsausführung dienen. Die Register können aus irgendeiner Position des Schalters 204-8 geladen werden. Das zu ladende Register und das hierzu erforderliche Schreibsignal wird durch Felder innerhalb eines Mikrobefehls festgelegt, der dem Register 201-15 entnommen wird.
Gemäß figur 2 sind die Register an ein Paar von Ausgangsschienen WKPund WRR angeschlossen. Die WRP-Schiene ist an Adresseingänge 2O4-5fan den Schalter 203-10 und den Zwischenspeicher 203-10 an-
809827/0695
geschlossen. Die WRR-Schiene ist im den A-Operandencchalter 203-20, den 3-Operandenüchalter 204-1, an das Register 204-20 und an das Register 204-22 angeschlossen. Die zum Anschluß an die WJUI- und WRP-Schienen ausgewähltem Register weiden durch oin Feldpaar eines Mikrobefehls bestimmt, der aus dem Register 201-15 ausgelesen wird.
Gemäß Figur 2 weist der Verarbeitungsubschnitt 2O4 ein Prozeßzustandsregister 204-20 und ein Prozeßsteuerregister 2O4-.22 auf. Das Proscßzustandsrcgister 2O4--2O wird in der erwähnten Weise über die /uisgangsschiene ViRR vcm Zwischenspeicher 203-10 geladen. Das ProzeGsteuerregister 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 Arten von Nicht-Hauptbetriebsweise-Ausnahmen:
PCR-Bit-Position Ausnahmetyp
0 Operation nicht vollständig; keine Antwort der Schnittstelleneinheit SIU-100 auf den Leitungen ARA oder /vRDA.
1 Seitenadress-Grenzfehler (Kennschlüsselprüfunc.)
2 Seiten-Zugriffsfehler
3 Seite im Speicher nicht vorhanden
4 . Illegale Operation
• 5 Prozeß-Zeitgeber-Ablauf
6 überlauf
7 Verriegelungsfehler
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-
809827/0695
Sperr-Bit dar, während die Bit-Positionen 28-35 Unterbrechungs-Anforderungs-Bits speichern die für den Fall, daß sie den Wert "1* aufweisen, eine Unterbrechung mit einem der Bit-Position entsprechenden Pegel anzeigen (z.B. 28 = Pegel 0). Die Bit-Positionen 27 bis 35 können durch einen Prograiiimbefehl über die Ausgangsschiene WRR aus der Reihe von Registern des Blockes 204-12 geladen v/erden. 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 Steucrungs-Auswahlscholters 204-10 und eines vierstufigen Aciressen-Auswahlschalters 204-5 verbunden. Der Steuerungsschalter 2O4-1O erzeugt Steuerungsinformation für die Schnittstelleneinheit SIU-IOO, welche zur übertragung der Anweisung zu dem richtigen Modul verwendet wird. Eines der Felder des aus dem Register 201-15 ausgelesenen Mikrobefehls wählt die geeignete Position entweder für eine Speicher oder eine programmierbare Schnittsteli enanweisuncj aus. Die Steuerungsinformation für eine Speicheranweisung wird erzeugt durch Felder innerhalb des Mikrobefehls und durch seitenunterteilte Acirosseninformation vom Zwischenspeicher 204-4 oder durch absolute Adresseninformation von der Schiene WRP. Im Falle einer Lese/Echreib-Anweisung wird die Steuerungsinformation wie folgt erzeugt: das Bit 0 weist für eine Lese/Schreib-Anweisung den Viert "0" auf; das Bit 1 definiert den internen/externen Speicher und entspricht dem PTW-Bit 0 (seitenunterteilt) oder dem WRP-Bit (absolut). Die Bits 2-4 entsprechen den PTW-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 Speicherzyklus oder bei der Auslösung einer Anweisung werden die Signale des Steuerungsschalters 204-10 in ein Steuerungsregister 204-16 geJaden, das die Signale den geeigneten Leitungen der Datenschnittstelle 600 des Prozessors 200 zuteilt. Die zusätzliche Steuerungsinformation aufweisende Anweisung wird durch die Position 2 des Adressenschalters 204-6 im Falle einer programmier-
809827/0695
baron Schnittstellenanweisung erzeugt.
Wie dor Figur 2 weiterhin entnehmbar ist, umfaßt der Verarbei·- tungsnbrschnitt 204 einen Zwischenspeicher 204-4, der über Adresseingänge 204-5 adressierbar ist. Der Zwischenspeicher 204-4 gestattet eine Seitentabellen-7\dresspeicherung für jeden der acht Unterbrechungspegel, die bei der Erzeugung absoluter Adressen für die Adressierung des internen Speichermoduls 500 benutzt werden. Im Falle der Adressierung wird der Inhalt des Speicherplatzes des Zwischenspeichers 204-4 in zwei Positionen des 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 Adresscnschalters 204-6 bei Auswahl durch ein Adressen-Steuerfeld eines im Register 201-15 gespeicherten Mikrobefehlswortes zur Erzeugung der Lese/Schreib-Spedcheranweisung benutzt, die Bite 0-8 mit einer Codierung entsprechend den vorbestimmten Feldern des Mikrobefchlswortes umfaßt und ferner Bits 9-3Γ> aufweist, die aufgrund ihrer Codierung entweder der ,seitenunterteilten Adresseninformatj on des Speichers 204-4 oder den absoluten Adressen-Bits entsprechen, wie sie von den Arbeitsregistern des Blockes 204-12 auf der Atisgangsschiene WRP ausgegeben v/erden. Wird die PI-Position des Schalters 204-6 ausgewählt, so erzeugt der Schalter eine programmierbare Schnittctellenanweisung mit folgenden Bits: Bit 0 weist den Wert "0" auf; Biti 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-8 entsprechen den Bits 4-7 des Registers 204-20 und sie bestimmen den Anschluß oder Unterkanal innerhalb des Moduls; Bit 3 bestimmt
809827/0695
durch ssine Codierung die Prozessor-Paarnummer, die von der Schnittstelleneinheit SIU-IOO angewählt wurde; Bit 4 v/eist den Wert K0" auf und die Bits 9-35 entsprechen den Bits 9-35 der Schiene WRP, die die absolute Adresse der programmierbaren Schnittstellenanweisung liefert.
809827/0695
Interner Speichcrmodul 500
Fig. 6 zeigt die ilauptblöcke der vorliegenden Erfindung und ein bevorzugtes Ausführungsbeispiel eines internen Speichermoduls 500. Es ist ersichtlich, daß der Modul 500 einen Pufferspeicherabschnitt 5OO--2, einen Hintergrundpeicherabschnitt 500-4, einen Eingangsregisterabschnitt 500-12, einen Steuerschaltkreisabschnitt 500-6, einen Eingangsschalter 500-8 und einen Ausganasschalterabschnitt 500-10 aufweist, die in der dargestellten Weise angeordnet sind. Der Ausgangsfcchalterabschnitt 500-10 und der Eingangsregisterabschnitt 500-12 übertragen Steuerinformation zu und von dem Proz.essorpaar PO bzw. dem Multiplexermodul 300 über die Schalter der Schnittfitelleneinheit SIU-IOO, wie dies hier erläutert wird.
Der in näheren Einzelheiten in Fig. 7 dargestellte Pufferspeicherabschnitt 500-2 umfaßt einen Puffer 500-20 mit zugeordneten Steuerschaltkreisen 500-21, eine Listenspeichereinheit 500-22 mit zugeordneten Vergleichsschaltkreisen 500-24, Anzeigelogikschaltkreise 500-28 und Steuerschaltkreise 500-26, die in der dargestellten We?se 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-Cpeicherplätzen oder 256 Adressenspeicherplätzen führt. Jeder Block wird durch 4 Worte mit 40 Bit gebildet, wobei jedes Wort 4 Bytes aufweist und jedes Byte aus 9 Datenbits und einem Paritätbit besteht.
Die Listenspeichereinheit 500-22 speichert die Adressen eines jeden Pufferblockes und ist in ähnlicher Weise in 4 Pegel aufgeteilt. Die Einheit 500-22 weist einen nicht dargestellten umlaufenden Zähler auf zur Vorgabe des Pegels des Pufferspeichers, in den während
809827/0695
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 werden und beispielsweise der Organisation entsprechen, wie sie in der UG-PS 3.845.474 dargestellt und beschrieben ist. Während eines Operationszyklus des Pufferspeichers werden 4 Bytes in den Juisgangsmultiplexerschalter 500-10 über eine Anzahl von 1 aus 8-Selektorschaltkreisen ausgelesen.
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 4 Pegel befindet. Die Vergleichsschaltkreise 500-24 legen das Ergebnis des Vergleichs an die ivnzeigeschaltkreise 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. Der Hintergrundspeicherabschnitt 500-4 umfaßt einen Hintergrundspeicher 500-40, Zeittaktschaltkreise 500-48, ein Ausgangsregister 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. 7 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
809827/0695
aus 40 Bit besteht. Die Datenkorrektur- und Parität-Erzeugungsschaltkreise stellen Fehler in den Worten fest und korrigieren diese, wenn die Worte aus dem Hintergründspeicher 500-40 ausgelesen büw. in diesen eingeschrieben werden. Im Hinblick auf die vorliegende Erfindung können diese Schaltkreise als herkömmlich angesehen werden.
Goroäß Fig. 7 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-Rogister 500-120 speichert das ZAC-Anweisungswort, das das in Fig.9 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 Anfcrdcrungsiuodul angelegt werden. Der Inhalt der Register 500-122 und 500-123 wird an verschiedene Bytepositionen des 1 aus 2-I-'iultiplexerschalters 500-8 angelegt. Dem Schalter 500-8 werden ebenfalls die aus dem Hintergrundspeicher gelesenen Daten zugeführt, die in den Pufferspeicher 500-20 einzuschreiben sind.
Die in dem ZAC-Register 500-120 enthaltene Anweisung wird an die in dem Elock 500-6 enthaltenen Dekodiergatterschaltkreise angelegt, während die Adre/3signale an die Schaltkreise des Blockes 500-6, der Listenspeichereinheit 500-22, des Pufferspeichers 5OO-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 v/erden Steuersignale dem Eingangsmultiplexerschalter 500-8 und dem /vusgangsmultiplexerschalter 500-10 zugeteilt, um die Gruppe von Datensignalen auszuwählen, die in den
809827/069 5
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 v/erden.
Fig. 8 zeigt in näheren Einzelheiten bestimmte Schaltkreise der Elöcke 500-6, 500-21, 500-26 und 500-45. Aus dieser Figur geht hervor, daß die Steuerschaltkreise des Blockes 500-6 mehrere UND/NAilD-Gatter 500-60 bis 500-74 umfassen. Den Gattern 500-60, 600-51 unä 500-62 werden verschiedene Bitsignale der ZAC-AnWeisung unö 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. Des resultierende Lese- und Schreib-Ladeanweisungssignal wird an die Puffersteuerschaltkreise 500-21, die Listensteuerschaltkreise 500-26 und die Hintergrundspeicher-Steuerschaltkreise 500-46 in der dargestellten Weise angelegt. Die anderen Anweisungssignale, wie beispielsweise RCLOOO und RRlOO, werden ebenfalls an die Hintergrundcpe.i.cherschaltkreise 500-46 angelegt.
Wie aus Fig. 8 hervorgeht, weisen die Pufferschalterstcuerschaltkreiae 500-21 in Reihe miteinander verbundene NAND/UND-Gatter 500-210 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ätzlich 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 erforderlich ist.
809827/0695
In gleicher Weise umfassen die Listensteuerschaltkreise in Reihe geschaltete NAND/UND-Gatter 500-260, 500-262 und 500-264, wobei das letzte Gatter ein Listen-Schreibtaktsignal WRDRlOO an einen Schreib-Freigabeschaltkreis 500-266 liefert. Der Schreib-Freigabeschaltkreis 500-2 66 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-Anforderuiigssignal BSREQlCO und sie gestatten einem Datensignal, einen Hintergrundspeicher-Lese/Schreib-Zyklus der Operation auszulösen und Daten des Hintergrundspeichers an die Schnittiitelleneinhe.it SJ.U--100 zu übertragen.
Die letzte Gruppe von Schaltkreisen in Fig. 8 wird durch die Anzeigeregisterschaltkreise 500-28 von Fig. 7 gebildet. Die Schaltkreise umfassen NAND/UND-Gatter 500-280 und 500-2 82 zusätzlich zu einem UND-Gatter 500-261, wobei die Gatter in der dargestellten Weise miteinander verbunden sind. Dem NAND/UND-Gatter 500-280 werden die sich von den Vergleichsschaltkreisen 500-24 ergebenden Vergleichssignale zugeführt, und dieses Gatter liefert einen Hinweis auf einenjl.istenvergle.i.ch an das Gatter 500-282. Der Ausgang des Gatters 500-282 wird seinerseits an den Setzeingang eines Anzeigeregister-Flip-Flops 500-284 gelegt. Ein NAND/UND-Gatter 500-284 erhält ein ZAC-Annahmesignal von der Schnittstelleneinhe.it SIU-IOO zugeführt, welches komplementiert wird und einem Rückstelleingang des Flip-Flops EOO-284 zugeführt wird. Die Ausgangssignale mit den Binärwerten "1" und "0" des Flip-Flops 500-284 werden sodann verschiedenen Blöcken innerhalb Fig. 8 in der dargestellten Weine zugeführt.
809827/0695
System-Schnittstelleneinheit 100
Unterbrechungsabschnitt 101
Die Gystenv-Schnittstellencinheit 100 dient dem Nachrichtenaustausch zwischen den Modulen des Systems gemäß Figur 1 über mehrere Doppelkanalschalter. Verschiedene Doppelkanalschalter werden zum Sammeln der Signale auf den Leitungen der verschiedenen Schnittstellen der Module verwendet. In Figur 3a sind die Schalter und Scheltkreise des Unterbrechungsabschnittes 101 zum Verarbeiten der Modul-Unterbrechungsschnittsteilen 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 su der Schnittstelleneinheit SIU-100 über verschiedene Leitungen der Unterbrechungs-Schnittstelle 602 zuleiten. Die Schnittstelle SIU-100 gibt zusätzlich Signale über eine Unterbrechungs-Schnittstelle 600 an den zugeordneten Anschluß L gemäß Figur 1 ab.
Gemäß Figur 3a gibt jeder Modul, wenn er eine Bearbeitung anfordert, ein Signal auf seiner Unterbrechungsanfcrderungsleitung IK zusammen mit einer geeigneten Unterbrechungs-Bestimmungsinforraation auf don 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 gerade ausgeführten Prozesses. Wenn der Prozessor 200 seine Bereitschaft zur Aufnahme der Anforderung signalisiert, schaltet die Schnittstelleneinheit SIU-100 die der höchsten Prioritätsanforderung zugeordnete Identifizierungsinformation auf den Prozessor 200. Die Identifizierungs.information weist eine Unter-
809827/0695
brechungs-Steucrblocknummer von 0 Bit einschließlich eines Parittits-Bits auf sowie eine Unterbrechungs-Pegclnummer von 3 Bit und eine Prozesr:ornummcr 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, dic>iePro%cesornummer und die Unterbrechungs-Anforderungssignale decodieren. Untor 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-Iogikschaltkreise decodieren die Unterbrechungs-Pegelsignale und bestimmen den höchsten Prioritätspogel und sodann die Priorität des Anschlusses, so daß der Modul nut dem höchsten Prioritätspegel und der höchsten Anschlußpriorit^t ausgewählt wird. Die Unterbrechungs-Anschlußpriorität innerhalb eines vorgegebenen Pegels stellt sich wie folgt dar:
Alt; Anschluß L; Anschluß A, Anschluß B, Anschluß C; Anschluß D; Anschluß E; Anschluß F, Anschluß G; Anschluß H; Anschluß I und Anschluß K.
Dies bedeutet hinsichtlich des Systemes gemäß Figur 1, daß der Anschluß des laufenden Prozesses die höchste Priorität gefolgt von der Schnittstclleneinheit SIÜ-100, dem Hochgeschwindigkeitsmultiplexer 300, dem Zentralprozessor 700, dem Prozessor 200 und deia Niedriggescbwindigkeitsmultiplexer 400 aufweist.
Die Prioritätsschaltkreise des Blockes 101-2 erzeugen ein Ausgangssignal auf einer Leitung von N-Ausgangsleitungen, wobei die Zahl N dor Anzahl der unterbrechenden Module innerhalb des Systems entspricht. Die N-Ausgangsleitungen werden einen» Daten-Auswahlschalter 101-4 mit acht Positionen zugeführt, der die Untcrbrechungs-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 v/erden auf den Leitungen AIL ausgegeben, wenn der Prozessor 200 die Leitung IDR den Wert "1" annehmen läßt, vorausgesetzt,daß die Schnittstelioneinheit SIÜ-100 zuvor
809827/069S
die Leitungen HLTT und LZP zur Annahme des Weites "1" veranlaßt hat. Wenn der laufende Prozeß für eine Unterbrechung nicht gesperrt ist, so verursacht dir· tint.erbrechungscuiforderung die Λυί:- gnbe des laufenden Prozesses durch den Prozessor 200 und die Annahme eines Unterbrechungsv'ortes von der Schnittstellonoinheit SIU-100, wobei dieses Wort die zuvor erwähnte Identifizierungsinforiv.ation enthält. Das Unterbrechungswort weist im einzelnen folgendes Format auf:
Bit 0 ist eine neue Unterbrechungs-Bit-Position. Wenn dieses Bit auf den Wert "1" gesetzt ist, so zeigt es an, daß es sich bei der Unterbrechung um eine neue Unterbrechung handelt und wenn es auf den Wert "0" gesetzt iot, 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 "0" auf. Bits 18-27 bestimmen die Unterbrechungs-Sveuorblocknuituner, wobei die Bits 18 und 27 auf den Viert "0" gesetzt sind. Bits 28 - 31 werden durch die Schnittstelloneinheit SlU-100 erzeugt und bestimmen den Ursprungsmodul.
Bits 32-35 werden durch die Module mit Mehrfachanschlüssen erzeugt und bestimmen den Unterkanal oder Anschluß innerhalb don 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 v/ird, ist dieser in vorbestimmter Weise so verdrahtet, daß er einen Satz codiercer SteueruiKjssignale abgibt, die den physikalischen Anschluß festlegen, mit dem der anfordernde Modul verbunden wird. Hierzu dienei beispielsweise die Bits 28 - 31 des Unterbrechungswortes. Im vorliegenden Fall werden die folgenden Steuerungscodes für die Auswahl der Module gemäß Figur 1 erzeugt:
809827/0695
275B897
Code Identifizierter Schnittstelleneinheit-Anschluß
OCOO Iiil-.ornnr Speiciormoudl - Anschluß LMO
0001 Anschluß K
0010 SchnittGtGlleneirihe.it SIü-100 -- Anschluß L
0Ί01 Nledrigge.schwindigkoitsmultiplexer 400 - Anschluß I
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 einerGruppo herkömmlicher UND-Gatterschaltkreise zugeführt, die in dem Gatternetzwerk 101-12 enthalten sind. Die andere Identfizierungsinformation, die von den verschiedenen Ilrsprungsmodulen des Systems erzeugt wird, wird anderen Gatterschalt-* kreisen des Netzwerkes 101-12 zugeführt. Insbesondere führt jeder Modul eine Unterbrechungs-Steuerblocknununcr ICBN über die Leitungen IDA einer Position des Datenauswahlschalters 101-14 zu. Ferne) erzeugt jeder Modul auf den Leitungen IMID der Unterbrechungsnchnittstelle 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-IOO ü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 Systcmschnittstelleneinheit 100 dargestellt. Dieser Abschnitt enthält prioritätsschaltkreise, welche festlegen, welcher Modul über seino programmierbare Schnittstelle 601 Anweisungen zu dem Hochgeschwindigkeitsmultiplexer 300 übertragen hat und welcher Quellenmodul über seine Datenschnittstelle 600 Daten zu dem
809827/0695
Multiplexor 300 zu übertragen hat. Weiterhin weist der Abschnitt 102 Prioritätsschaltkreise auf, welche festlegen, welcher Quelleni-nodul entweder Daten oder Ar/eisungen nach dem internen Speichermodul 500 zu übertragen hat.
Es sei darauf verwiesen, daß Übertragungen zwischen einem Paar von Modulen erfolgen, wenn ein Modul eine Anforderung an den anderen Modul erzeugt hat und diese Anforderung durch den anderen Modul angenommen worden ist. Damit eine Anforderung angenommen wird, muß der anfordernde Modul die höchste Priorität aufv/eicen, beide Module müssen sich in einem Zustand der Empfangsbereitschaft für die Information befinden und der Datenübertragungsweg muß verfügbar sein und darf nicht belegt sein.
Die von dem Prozessor 200 an den Abschnitt 102 herangeführten Signale werden hinsichtlich ihrer Erzeugung in großem Umfang durch verschiedene Felder der aus dem Prozessorregister 201-15 gemäß Figur 2 herausgelesenen Mikrobefehle gesteuert. Beispielsweise wird die von dem Prozessor 200 zu den Schaltkreisen des Blockes 102-4 zugeführte Leitung AOPR durch ein Steuer-Bit-Feld eines · aus dem Register 201-15 ausgelesenen Mikrobefehls betreffend den Anforderungstyp der Schnittstelleneinheit SIU freigegeben, wo bei, das Bit-Feld durch seine Codierung die übertragung einer Lese/Schreibspeicher- oder programmierbaren Schnittstellenanweisung festlegt. Die an den Datenauswahlschalter 102-2 angelegten Leitungen der Prozessor-Datenschnittstelle 600 vermitteln eine Anweisungsinformation, welche durch eine Mikroprogrammsteuerung erzeugt wird, die in das Prozessor-Datenausgangsregister 204-14 gemäß Figur 2 geladen ist. Die Leitungen SDTS führen Signale, die durch eine Mikroprogrammsteuerung erzeugt werden, welche in das Prozessor-Steüerungsregister 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 Steuerungsinformation des Prozessors decodieren, falls der Prozessor
809827/0695
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 dos Netzwerkes 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 1C2-4 den Auswahlschalter 102-2 mit Signalen, die Signale des geeigneten Moduls auswählen. Dieser Fall tritt ein, wenn der Multiplexer 300 der Schnittstelleneinheit SIU-100 anzeigt, daß er bereit ist, eine Anweisung aufzunehmen, indem er den Wert der Leitung PIR auf "1" setzt. Zum gleichen Zeitpunkt setzt das Netzwerk 102-4 die Leitung APC auf den Wert "1", wodurch der.i 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 Prozessornummor, die in der Anweisung enthalten ist, bis er eine Unterbrochungsanforderung abzugeben wünscht, wobei denn 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 Ubertragungsanforderung gelesener Daten an die Schnitt-Btelleneinheit 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 Spcichermodul 500 der einzige Modul, der Daten zu dem Multiplexer 300 überträgt. Eine solche übertragung erfolgt beim Auftritt, einer Speicherlescanweisung ZAC, die über das Netzwerk 102-20 von dem
809827/0695
Multiplexer 300 an den Speichermoudul geleitet wird. Bei der Weiterleitung der Anweisung durch den Multiplexer 300 erzeugt die Schnittstelleneinheit SIU-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 Speichermodul 500 gespeichert und wird zu der Schnittstelleneinheit SIU-100 zurückgeholt, wenn der Modul 500 eine Ubertragungsanforderung für.gelesene Daten erzeugt und hiermit dem Multiplexer 300 signalisiert, daß er die Daten aufzunehmen hat. Wenn die Schnittstelleneinheit SIU-100 die Anforderung aufnimmt, so wird dies dem Multiplexer 300 angezeigt, indem die Leitung ARDA den Wert "1" einnimmt.
Die Leitung für die Ubertragungsanforderung gelesener Daten RDTR signalisiert im durch den Speichermodul 500 gesetzten Zustand dem Netzwerk 102-14, daß sie bereit ist, während eines Operationszyklus ausgelesene Information zu übertragen.Der interne Speichermodul 500 liefert ferner Signale an die Leitungen RIFM zur Festlegung des anfordernden Moduls, zu welchem die Information zu übertragen ist. Insbesondere decodieren Schaltkreise innerhalb des Decodiernetzwerkes 102-14 die an die Leitungen RIFM angelegten Identifizierungsignale und falls diese Signale anzeigen, daß der interne Speichermodul 500 bereit ist, Information zu dem Multiplexer 300 zu übertragen und daß der Multiplexer 300 bereit ist f die Information aufzunehmen, so legt das Decodiernetzwerk 102-14 die geeigneten Signale an den Auswahl-Schalter 102-12 und an Schaltkreise innerhalb eines Gatternetzwerkes 102-16 an. Zusätzlich legt-das Decodiernetzwerk 102-14
und
ein Signal an die Leitung ARDA der Datenschnittstelle an signalisiert hiermit dem Multiplexer 300, daß er auf den Leitungen DFS seiner Schnittstelle 600 die Daten von der Schnittstelleneinheit SIU-100 anzunehmen hat. Die Schaltkreise des Blockes 102-16 legen die geeignete Mehrfachanschluß-Identifizierungsinformation an die Leitungen MI S an, wodurch der anfordernde Unterkanal bestimmt wird. Wenn die Datenübertragung stattgefunden hat, so bewirkt das Netzwerk 102-14, daß die Leitung RDAA
809827/0695
- S4 ~
den Wort "I" 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 Schnittstelleneinheit SIU-100 zur übertragung von programmierbaren Schnittstellen- und Speicherarn/eisungen von einem der Module gemäß Figur 1 nach dem internen Speichermödul 500 verwendet. Der Modul 500 bewirkt, daß entweder die Leitung PlR oder die an das Docodiernetzwerk 102-20 angeschlossene Leitung ZIR den Wert "1" einnimmt, wenn er bereit ist, eine programmierbare Schnittstellen- oder 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 Leitungen SDTS ihrer entsprechenden Datenschnittstellen zu. Das Netzwerk 102-20 ist durch Decodierung der von jedem der Module zugeführten Steuerungsinformation in der Lage, geeignete Signale für einen Auswahlscha.lter 102-24 mit drei Positionen zu erzeugen, der den Modul mit der höchsten Priorität in die Lage versetzt, Signale zu der Datenschnittstelle 603 des Speichermoduls 5OO zu übertragen. Es ist ebenfalls erkennbar, daß das Netzv/erk 102-20 Signale auf die Leitung APC oder die Leitung AZC sowie über eine> Gatterschaltkreis 102-26 auf die Leitungen RITM der Datenschnittstelle 603 des internen Speichermoduls 500 gibt.
Die letzten beiden Netzwerke 102-30 und 102-40 werden zur Übertragung von Speicherdaten und von programmierbaren Schnittstellondaten zu dem Prozessor 200 benutzt, wobei dies in Abhängigkeit von Speicheranweisungen und programmierbaren Schnittstelleiianweisungen erfolgt, die zuvor durch den Prozessor 200 erzeugt wurden. Wie aus Figur 3b ersichtlich, besitzt das Prioritäts-Decodiernetzwerk 102-30 die gleichen Eingangsleitungcn wie das Netzwerk 102-14 und arbeitet in der gleichen Weise, um die angeforderten Speicherdaten zu dem Prozessor 200 über einen Datcnauswahlschalter 102-32 und den vierstelligen Auswahlschalter 101-20 gomäß Figur 3a weiterzuleiten. Es sei darauf verwiesen, daß kein Konflikt zwischen den Modulen,die Daten an den
8D9827/0695
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 dazu, daß die Operation des Prozessors zum Stillstand gelangt, während des Empfangs der angeforderten Daten, nachdem der Prozessor 200 eine Anweisung an einen der Module gemäß Figur 1 abgegeben hat. Die Schnittstelleneinheit SIU-100 wirkt bei der Aufnahme der Anforderung des Prozessors auf die LeitungARA ein, wodurch der Prozessor zar Verzögerung der Operationen veranlaßt wird.
Das separate Netzwerk 102-40 verarbeitet Anforderungen von Rückkehrdaten von jenen Modulen, die auf programmierbare Schnittstellenanwcisungen ansprechen. Das Wetzwerk 102-40 decodicrt die von den Leitungen RDTR geführten Signale sowie 'die Signale des Registers 102-6 zusammen mit denjenigen Registers.tgnaüen von anderen nicht dargestellten Modulen. Wenn die Schnittstelleneinheit SIU-100 feststellt, daß ein Modul versucht, angeforderte Daten zu dem Prozessor 200 zurückzuschicken, so erzeugt das Netzwerk 102-40 Signale, welche einen dreistelligen Datenauswahlschalter 102-42 in die Lage versetzen, Signale auf den Leitungen PDTS der programmierbaren Schnittstelle des Moduls zu dem Prozessor 200 zurückzuschicken. Diese Signale werden ihrerseits auf die Leitungen DFS des Prozessors über den Auswahlschalter 101-20 gemäß Figur 3a gegeben, der durch das Modul-Anfordcrungssignal geschaltet wird. Während einen 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 Datenschnittstolle 600 des Prozessors erzeugt.
809827/0695
Hochgeschwindigkcitsmultiplexer 300
Gemeinsamer Abschnitt
Beide Teile vcn Fig. 4a zeigen, in näheren Einzelheiten den gemeinsamen Steuerabschnitt 301 und einen Teil des Kanaladapter— abschnittcc 302. Gemäß Figur 4a ist ersichtlich, daß der gemeinsame Steucrabcchnitt ein Paar Register 301-2 und 301-5 für die Speicherung der Worte einer programmierbaren Schnittstellenanweisung aufweist, welche Anweisung über die Leitungen PDL1S von der programmierbaren Schnittstelle 601 des Multiplexers über clnen zweistufigen Datenauswcihlschalter 301-1 erhalten wird. Der Schalter 301-1 gestattet die alternative Speicherung der programmierbaren Schnittstellenanweisung in den Registern 301-2 und 301-5. Im bevorzugten Ausführungsbeipiel gemäß der Erfindung wird jedoch nur die Stellung PDFS des Schalters benutzt. Etf ist fernej.- ersichtlich, daß einem Register 301-40 über Treiber-Schaltkreise; 301-3 Speicherdaten zugeführt werden, die auf de)) Leitungen DFS der Schnittstelle 600 des Multiplexers anstehen. Die Anweisungen in den beiden Registern 301-2 und 301-5 werden über einen zweistufigen Datenauswahlschalter 301-6 und Treiberschaltkreise 301-8 den vier Kanaladapter-Abschnitten zugeführt. Ebenso kann die Anweisung selektiv einer Position eines achtstufigen Datenauswahlschalters 301-20 über einen zweistufigen Datenauswahlschalter 301-42 zugeführt werden. Der gleiche Schalter 301-42 legt die Datensignale des Registers 301-40 an jeden der vier Kanaladaptcrabschnitte über die Treiberschaltkreine 301-43.
Ein Paar von Paritäts-Prüfschaltkreisen 301-45 und 301-49 überprüft den Inhalt der Register 301-2, 301-5 und 301-40 und legt Signale entsprechend dem Ergebnis der Prüfung an die Schaltkreise des Blockes 301-4 an, der ein Statussignal für den C--Schalter 301-50 erzeugt. Diese Schaltkreise kombinieren Signale des Registers 301-2 mit Signalen der Kanaladapterabschnitte und erzeugen hierdurch die erforderlichen Steuersignale über die Ausführung der von dem Prozessor 200 empfangenen Anweisungen.
809827/0695
Die Signale des Registers 201-5 können über Treiberschnltkreisc der Blöcke 301-8, 301-15 und 301-16 zusätzlich .in ein aus der Vielzahl der Register gemäß den Blöcken 301-10, 301-12 und 301-14 ausgewähltes Register geladen werden. Der Block 301-10 weist vier Register mit 8 Bit auf, wobei die Ausgangssignale eines jeden dieser Register selektiv als Eingang auf eine Unterbrechungsposition des Auswahlschalters 301-20 zusammen mit den entsprechenden Signalen eines vierstufigen Auswahlschalters 301-30 und eines achtstufigen Auswahlschalters 301-32 gegeben werden können. Die Inhalte des ünterbrechungs-Steuerblock-, Pegel- und Maskenregisters der Kanaladapterabschnitte können während der Ausführung der Test- und Uberprüfungsoperationen aufgrund von programmierbaren Schnittstellenanweisungen gelesen werden.
Die Unterbrechungs-Steuerblockregister des Blockes 30H0 sind in Abhängigkeit von durch ein Unterbrechungspegel-Prioritätsnetzwerk 301-24 erzeugten Signalen selektiv an ein Unterbrechungs-Datenregister 301-22 (IDA-Register) mit 14 Bits anschließbar. Gruppen von Bit-Positionen eines jeden der Pegelregister mit 24 Bits des Blockes 301-12 werden entsprechenden Positionen eines achtstufigen Multiplexer-Auswahlschaiters 301-25 bis 301-28 zugeführt. Es ist erkennbar, daß jedes der Pegelrcgister des Blockes 301-12 an verschiedene Positionen des vierstufigen Auswahlschalters 301-30 und des achtstufigen Auswahlschaltcrs 301-32 angeschlossen ist. Ec ist ferner erkennbar, daß jedes der 8 Bit-Maskenregister des Blockes 301-14 an verschiedene Positionen des Auswahlschalters 301-32 sowie an die Logikschaltkreise des Blockes 301-34 für die Unterbrechungsfreigabe und Prioritätsbestimmung angeschlossen ist.
Wie aus Figur 4a ersichtlich, werden den Schaltkreisen des Blockes 301-34 Gruppen von Unterbrechungs-Anforderungssignalen von den Kanaladaptern zusammen mit Gruppen von Unterbrechungssignalen, die durch die den Kanaladaptern zugeordneten Steueradapter erzeugt werden, zugeführt. Insbesondere kann jeder CA-Kanal vier verschiedene Typen von Unterbrechungsanforderungon
809827/0695
-56 -
erzeugen. Die Unterbrechungsanforderungen umfassen hierbei folgende Typen: Eine Fehlerunterbrechung, die durch das Setzen eines Paritätsfehler-Indikator-Bits in einem nicht dargestellten gemeinsamen Statusregister verursacht wi):d; eine Deitensteuerwort-rJ±erbrechung; eine programmierbare Unterbrechung und eine Ausnahmeunterbrechung, die bei Feststellung einer illegalen Anweisung usw. erzeugt wird. Die Fehlerunterbrechung ist jedem Kanal gemeinsam, so daß sie einen Eingang zu dem Block 301-34 aufweist, der allen vier Kanälen gemeinsam ist.
Jeder Steucradepter kann ebenso vier verschiedene Typen von Uiiterbrechungsanforderungen erzeugen, die von dem Typ des Gerätes abhängen, das an den Adapter angeschlossen ist. Im Fc\lle einer Platteneinheit umfassen die Unterbrechungsanforderungen folgende Typen: eine durch die Feststellung von Paritätsfehlern
Umdrehungs· verursachte Fehlerunterbreehung einer aufgrund einer rotierenden position erfaßte Unterbrechung, eine Datenübertragungs-BeencJigungsunterbrechung und eine Offline-Unterbrechung, die bei der Beendigung einer Offline-Operation, z.B. bei einer Suchopereition verursacht wird. Die vier Typen von Kanal-Unterbrechungsanforderungen und die vier Typen von Steueradapter- Unterbrechung.sanforderungon ergeben zusammen eine Gruppe von acht Typen pro Stea eradapter-Kanal, die als die Ereignisauftritte EVO-EV7 bezeichnet werden. Jedem Typ einer Unterbrechungsanforderung ist eine 3-Bit-Typnummer zugeordnet, so daß die vier Typen der Kanal-Unterbrechungsanforderung mit den Nummern 0-3 entsprechend EVO-EV3 bezeichnet sind, während die vier Steueradapter-Unterbrechungsanforderung mit den Nummern 4-7 entsprechend EV4-EV7 versehen sind. Die Ereignisauftritte mit den niedrigsten Coder, besitzen die höchste Priorität, z.B. 000 = höchste Priorität = EVO = Fehlerunterbrechung und 111 = niedrigeste Priorität - EV7 -Offline-Unterbrechung. Die Priorität der verschiedenen Typen von Unterbrechungsanforderungen wird durch die Typnuinmer festgelegt. Jeder der Kanäle erzeugt sieben Unterbrechungs-Anforderungseingänge für den Block 301-34 zusammen mit dem gemeinsamen Fehlereingang der durch den Block 301-4 erzeugt wird.
809827/0695
Die Schaltkreise innerhalb des Blockes 301-34 kombinieren die Signale von jedem der Maskenregister des Blockes 301-14 mit den Unterbrechungs-Anforderungssignaler» jedes Kanales und Adapters und sie wählen den Unterbrechungstyp aus, der die höchste Priorität für jeden Kanal besitzt. Der Typ-Code von 3 Bits für jeden Kanal v.'ird einem entsprechenden Multiplexer-Auswahlschaltkreis 301-25 bis 301-20 zugeführt. Die durch den Block 301-34 erzeugten Gruppen von Typ-Codierungen werden als Eingänge entsprechenden Stellungen eines vierstufigen Pegel/Typ-Auswahlschalters 301-35 zugeführt.
Jeder der Multiplexcr-Schaltkreise 301-25 bis 301-28 erzeugt bei seiner Freigabe durch die Schaltkreise des Blockes 301-34 einen geeigneten 3-Bit-Pegelcode als Eingangssignal für ein Unterbrechungs-Pegel-Prioritäts-Netzwerk 301-24. Das Netzwerk 301-24 erzeugt auf einem Leitungspaar Signale, die den Steuereingängen der ICB-Register des Blockes 301-10, dem Schalter 301-35 und einem vierstufigen IMID-Schalter 301-36 zugeführt werden. Die von dem Netswerk 301-24 erzeugten Signale legen den Kanal oder den Anschluß jnit der höchsten Priorität fest. In dem Fall wo mehr als ein Knnal den gleichen Prioritätspegel aufweist, wählen die Schaltkreise des Netzwerkes 301-24 den Kanal aus, der der niedrigsten Kanalnummer zugeordnet ist (z.B. CAO=OOXX=höchste Priorität, CA3=1iXX=niedrigste Priorität). In jenen Fällen, v/o die Steueradapter Unterkanäle oder Unteranschlüsse verwenden, liefert ein Leitungspaar von dem CAI Signale an die niedrigrangigsten beiden Bit-Positionen des Schalters 301-36. Die höchstrangigsten beiden Bit-Positionen des Schalters sind permanent an die entsprechende Kanaladapternummer angeschlossen (z.B. 0O=CAO usw.). Der.Ausgang des Schalters 301-36 ist zu dem IMID-Register 301-23 geführt.
Die Ausgangssignale des ausgewählten ICB-Registers des Blockes 301-10, die Pegelsignale von den ausgewählten Multiplexer-Schaltkreisen und die Typ-Signale des Blockes 301-34 werden in das IDA-Register 301-22 eingegeben. Diese Signale werden ebenfalls den Paritäts-Schaltkreisen eines Blockes 201-37 zugeführt,
809827/0695
der ein Paar von ungeraden Paritäts-Bits für die in dem Register 301-22 gespeicherten Signale erzeugt. Ein weiteres Flip-Flop 301-21, das als Teil des Registers 301-22 angesehen verden kann, empfängt ein Signal von den Schaltkreisen des Blockes 301-34, um das Vorliegen einer Unterbrechungsanforderung anzuzeigen.
Wie aus Figur aus 4a entnehmbar, werden die in dem Bit-Register 301-40 gespeicherten Datensignale über die H-Registerposition des zvieistufigen Datenauswahlschalters 301-42 einem zweistufigen Ka.nalschreibschalter 301-4 4 zugeführt. Wenn die erste Position des Schalters 301-44 ausgewählt wird, so wird hierdurch der Inholt eines der vier Gruppen von Kanaladapter-Anschlußregister 301-46 ausgewählt. Diese Auswahl erfolgt .in Abhängigkeit von Signalen, die durch die Prioritätsauswahl- und Steuerscha__ltkreise des Blockes 301-48 erzeugt werden. Den Schaltkreisen des Blockes 301-48 werden Eingangssignale aus den Registern 3O1--2 und 301-68 und von den dargestellten Kanaladaptern zugeführt und sie erzeugen Ausgangssignale auf den Ausgangsleitungen und in dem Ausgangsregistcr 301-65, Die Register der Gruppe 301-46 umfassen ein 40-Bit-Rcgister zum Speichern eines Listen-Hinweisadressenwortes LPW für den zugeordneten Anschluß, ein 40-Bit-Datenadress-'register zum Speichern der Adresse von auszulesenden oder einspeichernden Daten und ein 40-Bit DT-Register zur Speicherung von Zähl- und Stcuerinformation für eine laufende Datenübertragungsoperation. Die gleichen Register der vier Kanaladapterabschnitte sind an verschiedene Positionen eines vierstufigen Datenauswahlschalters 301-50 angeschlossen, denen Steuersignale von den Schaltkreisen des Blockes 301-48 zugeführt werden. Die Ausgangssignale des Schalters 301-50 werden einem Paar von Addiernetzwerken 301-52 und 301-54 und zusätzlich einem Paritäts-Prüfschaltkreis 301-56 zugeführt. Das Addiernetzwerk 301-52 ergänzt den Inhalt des über den Schalter 301-50 ausgewählten Registers, während das Addiernetzwerk 301-54 Ausgangssignale für einen Paritäts-Generatorschaltkreis 301-58 erzeugt. Die Signale der Schaltkreise 301-52 und 301-58 werden in das ausgewählte Register über die ergänzte Netzwerkposition des Schalters 301-4 zugeführt.
809827/0695
Wie aus Figur 4a weiterhin ersichtlich, werden die Ausgangssignale des Schalters 301-50 selektiv einem 8-Bit-Steuerungr.-register 301-60 über einen Steuerungsochalter 301-59 sowie einem DT-Schalter 301-20 zugeführt. Jedem der Daten-Auswahlschalter 301-59 und 301-61 werden Ausgangssignale von dem DT-Schalter 301-20 zugeführt, dem zusätzlich zu den erwähnten Quellen Datensignale von den DS-Leitungen jedes Kanal-Adapterabschnittes CA0-CA3 zugeführt werden. Die Ausgangsnignale des DT-Schalters 301-20 und des ZAC-Schalters 3OH51 werden einem Paritätsschaltkreis 301-62 und der Reihe von Registern des Blockes 301-64 zugeführt. Zusätzlich wird dem Schalter 301-61 die ZAC-Information zugeführt, die von den Kanaladapter-Bedienungsleitungen abgeleitet wird, wobei diese Leitungen an den Block 301-4 gelegt sind, wenn der Multiplexer 300 nach einem speziellen Verfahren betrieben wird, das nicht Gegenstand der vorliegenden Erfindung ist. Die vier Register des Blockes 301-64, die mit ZAC, PDTS, Daten 1 und Daten 2 bezeichnet sind, speichern Speicher-Anweisungssignale, programmierbare Schnittstellen-Datensignale und Kanaladapter-Datensignale. Die Ausgangssignale dieser Register werden auf die Leitung DTS der Multiplexer-Datenschnittste]Ie 600 oder die Leitungen PDTS der Multiplexer-Schnittstelle 601 gegeben. Wenn das ZAC-Register des Blockes 301-64 geladen wird, so wird hierdurch ein AOPR-Flip-Flop 301-65 auf "1" gesetzt, wodurch der Schnittstelleneinheit SIU-100 signalisiert wird, daß der Multiplexer 300 einem Datenweg anfordert, über den er eine Speicher-ZAC-Anweisung und Daten übertragen kann. Die über den Schalter 301-59 zugeführte geeignete Speicher-Steuerungsinformation wird im Register 301-60 gespeichert und ein Paritäts-Prüfschaltkreis 301-36 erzeugt eine ungerade Parität für die Steuerungsinformation.
809827/0695
Beschreibung der Wirkungsweise
Die Wirkungsweise des erfindungsgemäßen Systems sei nunmehr unter Bezugnahme auf die Figuren 1-11 beschrieben. Wie aus Fig. 9 ersichtlich, ist der interne SpQichermodul 500 in der Lage, eine Anzahl verschiedener Arten von ZAC-Anweisungen auszuführen. Der Modul ist in der Lage, fünf verschiedene Arten von ZAC-Anweisungen zu verarbeiten, die folgendermaßen definiert sind:
1.Einfaches Lesen - der Inhalt ( ein Wort) des addressierten Speicherplatzes wird gelesen und zu dem anfordernden Modul übertragen. Der Speicherinhalt wird nicht verändert. Das ZAC-Bit 9 definiert, ob der Pufferspeicher geladen wird oder umgangen wird. Wenn jedoch dieser Block bereits in den Pufferspeicher geladen ist, so findet eier Lesezyklus im Pufferspeicher statt und die Information wird dem Pufferspeicher entnommen.
2. Einfaches Lesen/Löschen - der Inhalt (ein Wort) des adressierten Speicherplatzes wird gelesen und zu dem anfordernden Modul übertragen,und es wird der Speicherplatz (ein Wort) gelöscht, d.h. auf Null zurückgestellt, wobei die richtigen Paritätbits vorgesehen werden. Der das adressierte Wort enthaltende Datenblock wird nicht in den Pufferspeicher geladen. Wenn dieser Block bereits in den Pufferspeicher geladen ist, so wird das adressierte Wort im Pufferspeicher gelöscht und auf Null zurückgestellt.
3. Doppeltes Lesen - der Inhalt des adressierten Paares von Speicherplätzen ( zwei Worte) wird gelesen und seriell Wort für Wort an den anfordernden Modul übertragen. Der Speicherinhalt wird nicht verändert. Das ZAC-Bit 9 legt fest, ob der Pufferspeicher geladen oder umgangen wird. Wenn dieser Block jedoch bereits in den Pufferspeicher geladen ist, so findet der Lesezyklus im Pufferspeicher statt und die Information wird vom Pufferspeicher entnommen .
809827/0695
4. Einfaches Schreiben - ein bis vier von dem anfordernden Modul gelieferte Bytes des Datenwortes werden in dem adressierten Speicherplatz gespeichert. Die zu speichernden Bytes werden durch die Äonenbits festgelegt. Die Zonenbits 5, 6, 7 und 8 steuern die Bytes 0, 1, 2 und 3 entsprechend. Der Speicherinhalt von Bytepositionen, die nicht zu speichern sind, verbleibt ungeändert.
5. Doppeltes Schreiben - die zwei von dem anfordernden Modul gelieferten Datenworte werden in dem adressierten Paar von Speicherplätzen gespeichert.
Die spezifischen Codes für die verschiedenen ZAC-Amvei sungen sind in der nachstehenden Weise aufgebaut. Die anderen elf möglichen Codes werden als illegal definiert und erzeugen ein Fehlcrsignal in der noch zu erläuternden Weise.
Anweisung 5 6 Zone 8 Pufferspeicher-
Umgehungs-Bit
Einfaches Lesen
12 3 4 0 0 7 0 9 Einfaches
Löschen
Lesen/
O 0 0 0 0 0 0 0 1/0 Doppeltes Lesen
0 0 10 0 0 0 0 - Einfaches Schreibon
0 1 0 O 1/0; 1/0 0 1/0 VO Doppeltes Schreiben
10 0 0 1 1 1/0 1 -
■»100 1
809827/0695
Beispielsweise sei zuerst angenommen, daß einer der Prozessoren 200 des Paares PO mit der Bearbeitung einer Keine von Programmbefehlen beginnt, welche, eine Bezugnahme auf den internen Speichermodul 500 vorgeben. In diesem Fall sind der erste und die folgenden Beföhle so formatiert, daß sie wenigstens ein Feld umfassen, welches ein Allgemeinregistor festlegt, das einen Indexwert speichert, sowie ein weiteres Feld, das eine Adreßsilbe enthält. Der Inhalt des Allgemeinregisters hinsichtlich des Indexwertes definiert den Status des Umgehungsbits 9, von dem angenommen wird, daß es auf den Binärwort "0" gesetzt worden ist. Der Prozessor 200 verknüpft die Information, um eine absolute Adresse zu erzeugen.
Wenn die absolute Adresse errechnet worden ist, so erzeugt der Prozessor 200 das erforderliche Speicher-Anweisungswort und die geeignete SlU-Steuerungsinfomation, um die Anweisung an den internen Speichermodul 500 zu leiten. Die Steuerung und die Anweisung besitzen die Formate gemäß Fig. 9.
Betrachtet man die Formate in näheren Einzelheiten, so legt der Operationscode eines jeden Befehls durch seine Codierung eine Speicher-Bezugnahmeoperation fest, die durch die Erzeugung einer ZAC-Anweisnng ausgeführt wird. Der Operationscode des ersten Befehls wird durch den Befehlsregister schalter 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 er umfaßt ein Paar von Adressen, die die Speicheradressen im Steuerspeicher 201-10 festlegen,unter denen die für die Befehlsverarbeitung erforderlichen Mikrobefehlsfolgen gespeichert sind.
Während einer ersten Phase der Befehlsverarbeitung, die während der Bearbeitung eines laufenden Befehls beginnt, werden die Indexbits des nächsten Befehls benutzt, um einen bestimmten Allgemeinregisterspeicherplatz des Zwischenspeichers 203-10 über die Position 3 des Schalters 203-14 zu adressieren. Der Inhalt des Speicherplatzes wird in den Puffer 203-16 ciusgelesen.
809827/0695
Der Inhalt des Indexregisters wird über die Position 0 des Schalters 203-20 an den A-Operandeneingang des Addierers 204-2 angelegt, wobei das Verschiebefcld des Befehls über die Position 0 des •Schalters 204-1 an den B-Operandeneingang des Addierers 204-2 angelegt wird. Die beiden Größen werden addiert und das Ergebnis wird über den Schalter 204-8 zu dem Arbeitsregister R2 übertragen. Wenn ein zweiter Indexpegel angezeigt ist, so wird eine ähnliche Operation durchgeführt, wobei der in dem zweiten Allgemeinregisterspeicherplatz gespeicherte Wert zu dem zuvor im Register R2 gespeicherten Resultat addiert wird. Es liegt ohne weiteres auf der Hand, daß der geeignete Wert für das Bit 9 ebenso in dem zweiten Allgemeinregister anstelle des ersten Allgemeinregisters gespeichert werden kann.
Während der Bearbeitungsphase des Befehls erzeugt der Prozessor 200 eine ZAC-Anweisung an den internen Speicher 500, wodurch eine Leseoperation bestimmt wird, und er legt die geeignete Speicheradresse an, die entweder von dem Speicher 204-4 oder dem Register R2 erhalten wird. Unter der Annahme einer absoluten Adresse, wird diese Adresse von dem Register R2 an die Datenschiene WRP angelegt und in das Daten-Ausgangsregister 204-14 über die R/W-Position des Adressenschalters 204-6 und den Doppelkanalschalter 204-8 geladen.
Der Steuerungsschalter 204-10 erzeugt die SIU-Steuerung für den Speicher-Operationszyklus. Die Signale besitzen das Format gemäß Fig. 9 und sie liefern die Information, die von der System-Schnittstelleneinheit SIU-100 benutzt wird, um die R/W-Anweisung an den internen Speichermodul 500 oder an den Anschluß LMO, an den der Modul 500 angeschlossen ist, zu übertragen. Sie werden unter Mikroprogrammsteuerung von dem Register 201-15 und von dem Adressenschalter 204-6 über die R/W-Position des Steuerungsschalters 204-10 in die Bitpositionen 0-8 des Steuerungsregisters 204-16 geladen.
809827/0695
Nach dem Laden der beiden Register 2O4--4 und 204-15 setzt der Prozessor 200 die Leitung AOPR auf den Binärwert "1",. wodui"ch mit der Signalfolqe für die Übertragung der R/tf-Anv/eioung an dem internen Speichermodul 500 begonnen wird. Der Prozessor 200 erhöht ebenfalls den Befehlszähler (XC) und speichert das Ergebnis im Arbeitsregister R3. Sodann-verzögert der Prozessor 200 die Bearbeitung des nächsben Mikrobefehls bis er über die Leitung ARA von der Schnittstelleneinheit SIU-IOO ein Signal empfängt, day die Annahme der Anforderung anzeigt.
Die Schnittstelleneinheit SlU-IOO si*:ht die R/W-Anweir.ung als das Erfordernis eines Paares von STU- Zyklen an, d.h. ein Adressen/Anweisungs-Zyklus gefolgt von einem Datenzyklus. Untor dar Annahme, daß der interne Speichermcdul 500 bereit ist, die Anweisung anzunehmen, ist die Leitung ZlR auf den Binärwert "1" gesetzt. Der SlU-Prioritähsschaltkreis 102-4 gemäß Fig. 3b legt das Anweisungswort über einen SlU-Selektorschalter an die Leitungen DTM der internen Speicherschnittctelle 602 während eines Operationszyklus an. Der Prozessor 200 wartet auf die Speicherung der Information in dem Daten-Ausgangsregister 204-14 bis die Schnittstelleneinheit SIU-IOO die Leitung ARA auf den Einärwert "1" setzt Gleichzeitig schaltet die Schnittstelleneinheit SlU-100 die Leitung AZC auf den Binärwert "1", wodurch dem Modul bOO die Annahme der R/W-AnWeisung (siehe Fig. 11) angezeigt wird.
Bei Peststellung der Zustandsänderung der Leitung ARA vervollständigt der Prozessor 200 unter Mikroprogrammsteuerung die Befehlsverarbeitung. Das heißt, der Prozessor 200 wartet, bis das angeforderte Datenvrort von der Schnittstelleneinheit SIU-IOO erhalten worden ist.
Hier ist angenommen worden, daß die Speicheranweisung aufgrund ihrer Codierung eine einfache Leseoperation festlegt, wobei das Umgehungsbit 9 durch seine Codierung festlegt, daß der Pufferspeicher 500-20 nicht umgangen,sondern geladen wird (z.B. Pit 9 - 0).
809827/0695
Wie zuvor erläutert, steuert der Zustand des Bits 9 das Laden des Pufferspeiehers 500-20 im Falle einer einfachen und einer doppelten Leseanweisung.
Gemäß den Fig. 11 und 7 ist ersichtlich, daß die Anweisungs- und Adreßdaten des ZAC-Anweisungswortes in das ZAC-Register 500-120 in Abhängigkeit von den Signal AZC 100 der Leitung AZC zum Zeitpunkt 1T geladen werden (z.B. abfallende Flanke, wenn der Systemtaktimpuls 1T von dem Binärwert "1" auf den Binärwert "0" umschaltet ). Die Adrefisignale der DTM-Leitungen 17-33, die in dem ZAC-Rsgister 500-120 gespeichert sind, werden als Eingangssignale an die Listenspeichereinheit 500-22 und die Listen-Vergleichslogikschaltkreise 500-24 gemäß Fig. 7 angelegt.
Insbesondere werden die an die DTM-Leitungen 26-32 angelegten Adreßsignale als Blockadressen zur Adressierung der Listenspeichereinheit 500-22 benutzt, während die an die DTM--Leitungen 17-25 angelegten Adreßsignale den Signalen entsprechen, die in die Listenspeichereinheit 500-22 im Falle einer Listen-Schreiboperation eingeschrieben werden. Die gleichen an die Listen-Vergleichsschaltkreise 500-24 angelegten Adreßsignale werden benutzt, um festzustellen, ob der Datenblock sich bereits im Pufferspeicher 500-20 befindet.
Es sei ebenfalls darauf verwiesen, daß die an die DTM-Leitungen 17-33 angelegten Adreßsignale ebenfalls an den Hintergrundspeicher 500-40 angelegt werden, um aus diesem einen Datenblock auszulesen, wenn die Daten nicht im Pufferspeicher 50O-20 vorgefunden werden.
Aus Fig. 11 geht hervor, daß eine Absuche der Listenspeichereinheit 500-22 unmittelbar ausgelöst wird, um festzustellen, ob die angeforderte Information bereits im Pufferspeicher 500-20 gespeichert worden ist. Die Suchoperation wird während des Intervalls zwischen den Taktimpulsen 1T und 2T ausgeführt. In diesem Beispiel sei angenommen, daß die von dem Prozessor 200 angeforderte Information nicht in dem Pufferspeicher 500-20 enthalten ist.
809827/0695
Aus i'ig. 8 geht horvor, daß die Schaltkreise des Blockes 5OO-6 die Bi to 1-4 und 9 der ZAcWinweisugn decodieren. Da die Bits 1-4 und 9 alle den Binarwert "0" aufweisen, v.'eisen die Signale RCLOOC und WUOCO beide den Binarwert "1" auf. Dan Gatter 500-61 setzt somit das Signal RRlOO auf den Binärwert "1", wodurch das Vorliegen einer Lt:seanWeisung angezeigt wird. Dieses Signal wird als Eingang den Gattern Γ>00-62 und 500-460 zugeführt.
Ks sei vermerkt, daß das an das Gatter 500-62 angelegte Signal NOJjOADOOO dem komplementären Zustand des Umgehungsbits S entspricht und den Bin&rwert "1" aufweist. Das Signa] LME/DEGOO besitzt norimierweise be:i Abwesenheit eines internen Speicherfehlers oder eines Listenfehlers den Binärwert "1". Da angenommen wird, daß die angeforderte Information sich nicht im Pufferspeicher 500-20 befindet, entsprechen die Signale HITOOO und HITREGlOO den Binärwerten "I" und "0" (keine Übereinstimmung festgestellt). Das Ilintergrundr.peicher-Zeittaktsignal FST8000 besitzt während des Zeittaktiinpulses T8 den Binärwert "0" , wodurch das GAtter 500-68 das Signal RDLDTlOO auf den Binärwert "1" setzt. Dementsprechend setzt das Gatter 500-62 das Signal RDLOADlOO auf den Binärwort "1".
Die Signale RRlOO und IHTOOO setzen über das Gatter 500-460 das Lese- bzw. Fehlsignal RD/MISSOOO auf den Binärwert "0". Hierdurch setzt das Gatter 500-462 das Hintergrundspeicher-Anweisungssignal BSCMDlOO auf den Binürwert "1". Unter der Annahme, daß die Leseanweisung gültig ist (z.B. korrekter Code und richtiges Format), weist das Signal TCERROROOO den Binärv/ert "1" auf. Beim Auftritt des Hintergrundspeicher-Zeittaktsignales SLO4T/NSLO2T1OO setzt somit das Gatter 500-464 das Hintergrundspeicher-Anforderungssignal BSREQlOO auf den Binärwert "1" während des Intervalles zwischen den Zeittaktimpulsen 1T und 2T (siehe Fig. 11). Dies signalisiert den Hintergrundspeicher 500-40 die Auslösung eines Speicher-Operationszyklus.
809827/0695
Aufgrund einer solchen Anforderung werden aus dem Hintergrund-Speicher 500-40 160 Datenbits in dr.s Ausgangsregistor 500-42 ausgelesen. Die Daten treten in korrekter Form am Ausgang der Schaltkreise 500-44 vor dem Auftritt des Zcittaktimpulses T7 (siehe Fig. 11) auf. Beim Auftritt des Hintcrgrundspoicher-Zeittaktsignales BS8T101 von den Taktschaltkreisen 500-48 setzt das Signal RDLOADlOO über das Gatter 500-260 das Listen-Schreibsignal WRDIROOOO auf den Binärwert "0". Hierdurch wird über day Gatter 500-62 das Listen-Schreibfreigabesignal ENARDIKV7R100 auC den Binärwert "1" genetzt, wenn das Listen-Löschsignal DRCLROOC den Binärwert "1" aufweist. Dieses Signal veist den Binärwert "I" immer dann auf, wenn die Listenspeichereinheit 500-22 nicht gelöscht wird (siehe US-PS 3.845.474 und die dort beschriebenen Löschoperationen).
Das Gatter 500-264 setzt das Listen-Schreibsignal WRDlROOO auf den Binärwert Ί", wenn das Listen-Taktsignal CLKDIRlOO gemäß Fig. 11 auftritt.
Das Signal ViRDIRlOO legt über die Listen-Schreibgatterschaltkreise 500-266 geeignete Zeittaktsignale an die Schaltkreise eines jeden Listenpegels an. Dies ermöglicht das Einschreiben der über die Leitungen DTM 17-25 der Listenspeichereinheit 500-22 angelegten Adreßsignale in den Speicherplatz, der durch die über die Leitungen DTM 26-31 angelegten Adreßsignale festgelegt ist.
Es ist aus Fig. 11 erkennbar, daß während des gleichen Zeittaktintervalles, in dem die ersten 80 Bit aus dem Hintergrundspeicher 500-40 ausgelesen werden, diese Bits in den Pufferspeicher 500-20 eingeschrieben werden. Insbesondere werden die Pufferspeicher-Schreibfreigabeschaltkreise 500-214 während der Zeittaktimpulse 8T und 1OT gemäß Fig. 11 durch das Pufferspeicher-Schreibsignal WRCACHE100 beaufschlagt. Dies bedeutet, daß das Signal MISSlOO bei nicht vorliegender Übereinstimmung den ninärwert "1" aufweist. Das Zeittaktsignal BSTlOlO.t von den Hintergrundspeicher-Schaltkreisen 500-46 besitzt während des Zeittaktimpulses TlO
809827/0695
den 3inärwort "1". Demgemäß so'-.zt das Gatter 500-68 das Signal P.DLDT100 auf den Binärwort " 1", wenn während des Zeiti:aktinpulr;es T8 das Hintergrundspeichers.ignal T8000 den Binärwert "0" bzw. v.'ährend des ZeittaktJmpul ses TlO dv.c, Signal LDSCND80000 den Binarv/ert "O" aufweist.
Das GAtter 5OC-62 aet^t das Signal RDLOADlOO auf den Binärwert "1", welches Signal seinerseits über dac Gatter 500-74 das Signal RDLOADTüOO auf den Binärwert i:0" setzt. Dementsprechend setzt das Gatter 500-210 das Pufferspeicher-Schreibsignal WRCACHE100 während der Zeitintervalle 8T und 1OT auf den Binärwert "1". Das Gatter 500-210 bewirkt somit die Umschaltung des Pufferspeicher-Schreibsjgnales WRCACiIElOO beim Auftritt des Pufferspeicher-Zeitvaktsignales CLKl41 gemäß Fig. 11 auf den Binärwert "1". Es sei darauf verwiesen, daß das Signal WRLOADOOO außer acht gelassen werden kann, da es eich hier um eine Leseanweisung handelt.
Ahnlich dem Listen-Schreibsignal WRDIRlOO ersetzt das Puffer-Schreibsignal WRCACHE100 die Pufferspeicher-Schreibfreigabeschaltkreise 500-214 in die Lage, Zeittaktsignale zu erzeugen, die en die verschiedenen Abschnitte des Pufferspeichers angelegt werden.
Während des Zeittaktimpulses T8 werden die ersten 80 Bits entsprechend den Signalen KD00-RD71 und RDP0-P7 über den Eingangsschaltar 500-8 angelegt und in die Spalte eingeschrieben, die durch die über die Leitungen DTM 26-31 angelegten Adreßsignale festgelegt ist Zu diesem Zeitpunkt weist das Adreßbi.t 32 den Binärwert "0" auf. Das Adreßbit 32 wird vor dem Zeittaktimpuls TlO komplementiert und während des Zeittaktimpulses TlO werden die oberen in dem Register 500-42 enthaltenen 80 Bits ü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 verändert, um die gesamten 160 einem Datenblock entsprechenden Bits in den Pufferspeicher 500-20 einschreiben zu könren.
809827/0695
Dies wird bewerkstelligt durch Komplementierung des unteren 80 Bit-Signales LWR80100 der Hintergrundspeicher-Steuerschaltkrc.ise 500-46. Insbesondere set2t das Gatter 500-218 das Signal RDLDIV80000 auf den Binärwert 11I", wenn das Signal LWR80100 der. Binärwert "1" (Schreiben der unteren 80 Bits) aufweist. Das Gatter 500-222 veranlaßt das Adreßsignal CAADDR321OO, den in dem ZAC-Register 500-120 gespeicherten Zustand des Adreßsignales anzunehmen. Dies bedeutet, daß das Signal CAADDR321OO den Binärwert "1" aufweist, wenn das Adressenbit 32 den Binärwert "1" besitzt. WEnn jedoch das Signal LWR80100 auf den Binärwert "0" gesetzt ist (Schreiben der oberen 80 Bits), so wird das Signal RDLDIV80000 auf den Binärwert "0" gesetzt. In diesem Fall ist das Adreßsignal CAADDR3210O auf den Binärwert "0" geschaltet.
Die Daten werden als Eingangsignal dem Ausgangsschalter 500-10 zugeführt. Der Ausgangsschalter 500-10 wird durch das Freigabesignal ENABBSDATA100 betätigt, welches Signal durch das Gatter 5OO-468 aufgrund der Signale HITREGOOO und BSRDlOO auf den Binärwert "1" gesetzt wird. Die Schaltkreise 500-6 legen zusätzlich geeignete Auswahlsignale an den Schaltern 500-10 an, um festzulegen, welches Wort der 160 Bits zu dem Prozessor 200 zu übertragen ist. Die Auswahlsignale werden aus den Adreßsignalen 32 und 33 abgeleitet, die in dem ZAC-Register 500-120 gespeichert sind. Die Daten werden an die Leitungen DFM während des Zeittaktimpulses TlO gemäß Fig. 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 Errichtung eines Datenweges die Daten akzeptiert hat. Die Errichtung eines Datenweges wird signalisiert, indem die Leitung ARDA auf den Binärwert "1" gesetzt wird und die Schnittstelleneinheit SIü-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.
809827/069$
Ks ist aus Fig. 11 erkennbar, daß beim Zuführen der aus dem Hinf-ergrundcpoiicher angeforderton Daten £u dem Prozessor" 200 ein dnr<"h die angeforderten Daten identifizierter Datenblock ebenfalls in den Pufferspeicher ?00-40 eingeschrieben wird, wenn das Umgehungsbit 9 auf den Binärwert "0" gesetzt worden ist. Gemäß Fig. II werden die gesamten .160 Bits in den Pufferspeicher 500-20 vor dem P.eginn eines nächsten Speicherzyklus eingeschrieben.
Er. sei darauf verwiesen, daß im Falle einer. Listenvergleichs (z.B. eine Übereinstimmung ), bei dem sich die durch den Prozessor 2OO angefordorve Information im Pufferspeicher 500-20 befindet, das Signal HITOOC den Binärwert "0" aufweist. Dieses Signal verhindert über die Schaltkreise 500-46 die Umschaltung des Hintergrundi-peicher-Anforderimgssignales DSREQlOO auf den Binärwert 'Ί". Zum qj eichen Zeitpunkt weist das Signal HDTREGlOO den Binärwert "1" auf, wodurch das Signal MISSlOO auf den Binärwert "0" gesetzt wird.
Das Signal RDLOADlOO behält somit den Binärwert "0" bei. Dies verhindert die Umschaltung des Listen-Schreibfreigabesignales ENABDIP.WR100 und dec Pufierspeicher-Schreibnignales WRCACHE100 während des Zeittaktimpulses T8 auf den Binärwart "1". Wenn der geeignete 1 aus 8-Pufferrpeicher-Auswah.lschaltkreis durch die Schaltkreise 500-6 betätigt wird, so wird das aus dem Pufferspeicher 500-20 ctusgelesene Datenwort über den Schalter 500-10 und die Leitungen OF14 an äie Schnittstelleneinheit SIU-IOO angelegt. Das Datonwort wird in der zuvor beschriebenen Weise an den Prozessor 200 geleitet.
Im gegebenen Bciispiel wird durch die Speicher-Leseanweisung das Unigehungsbit 9 auf den Binärwort "0" gesetzt. Es sei darauf verwiesen, daß in einigen Fällen der Prozessor 200 das Einschreiben der angeforderten Information in den Pufferspeicher 500-20 nicht fordert. Ein Beispiel, wo dies der Fall ist, ist gegeben, wenn der Prozessor 200 eine Gpeicheranweisung zum Auslesen eines Listen-
809827/0695
Hinwe.rsadressenwortes (LPW) ausgibt, wobei dieses Wort im Hintergrundspeicher 5OO~4O gespeichert ist und dem Zugriff auf ein Datensteuerwort (DCW) dient.
Bevor dieser Fall, betrachtet wird, sei zunächst auf Fig. 6 Bezug genommen. Diese Figur zeigt in' schematischer Darstellung die Tabellen und Listen, die die Worte LPW und DCW enthalten. Diese Information dient der Bearbeitung peripherer Anweisungen. Die peripheren Anweisungen, die als Befehls-Datensteuerworte (IDCW) bezeichnet sind, sind in einer IDCW-Tabelle gespeichert. Diese Tabelle steht in Beziehung zu der anderen Tabelle (DCVJ) , die die Liste der Datensteuerworte speichert, welche HinweisAdressen auf die Informationsbereiche im internen Speicher 500 bilden. Jedes Befehls-Datensteuerwort DCW umfaßt einen Geräte-Befehlscode von 6 Bit, der die Art der Operation (z.B. Lesen, Schreiben, Suchen usw.) festlegt und einen Gerätecode von 6 Bit, der das spezielle Gerät festlegt. Jedes Datensteuerwort weist zwei Worte auf, wobei das erste Wort eine Steuerinformation und das zweite Wort eine Wortadresse enthält. Fig. 10a zeigt das Format der beiden Worte. Das Format des Listsn-Hinweisadressenwortes LPW ist ebenfalls in Fig. 10a dargestellt.
Aus dieser Figur ist ersichtlich, daß jede LPW- und jede DCW-Wortadresse ein Bit umfaßt (z.B. das Bit 9 und das Bit 45), das von dem Prozessor 200 bzw. dem Multiplexer 300 in der erwähnten Weise benutzt werden kann, um den Status des Pufferspeicherbits 9 während der Erzeugung einer Speicheranweisung entsprechend einzustellen.
Es sei beispielsweise angenommen, daß das Prozessorpaar 200-0 als nächstes Speicherbefehle bearbeitet, um auf eine Eintrittsstelle innerhalb einer bestimmten DCW-Liste Zugriff zu nehmen. Gemäß Fig. 6 muß das Prozessorpaar 200-0 zunächst die LPW-Adresse aus einer der IDCW-Tabellen abrufen. Der auszuführende Speicher-Bezugnahmebefehl umfaßt zwei Indexwerte. Der erste Indexwert bestimmt
809827/0695
aufgrund seiner Codierung e.Lii Ailgemeinregister, das die Basisadresse der speziellen IDCW-Tabello speichert. Der zweite Indexwert bestimmt aufgrund seiner Codierung ein Allgemeinregister, das eine Eintrittsstellennuininec zur Bezugnahme auf ein spezielles Listen-riiriweisadressei:wort LPVi innerhalb der IDCW-Tabello speichert.
Es sei darauf verv/iesen, daß in einem der Indexwerte das Bit 9 auf den Binärwert "1" gesetzt ist. Da das Prozessorpaar 2OO-O nicht das Einschreiben des aus dem Hintergrundspeicher 500-40 abgerufenen Listen-Hinweisadresservort.es LPW in den Pufferspeicher 500-20 fordert, wird dar Status des Bits S) nicht verändert. Der Prozessor 200 erzeugt in der zuvor beschriebenen Weise unter Mikroprogrammsteuerung eine andere einfache ZAC-Speicher-Leseanweisung, in der das Bit 9 dan Binärwert "1" besitzt. Die ZAC-Anweisung und die geeignete Steuerungsinformation werden erneut in das Daten-Ausgangsregister 204·-J 4 und das Steuerungsregister 204-16 geladen.
Die schnittstellcneinheit SIU-100 bewirkt die übertragung der ZAC-Anweisung an den internen Speichermodul 500. Gemäß den Fig. 7 und 3 ist ersichtlich, daß die ZAC-Anweisung und die Adresse in dem ZAC-Register 500-120 gespeichert sind. Da die Speicheranweisung eine einfache Leseanweisung betrifft, weisen die an die Leitungen DTMOl bis DTM04 angelegten Signale den Binärwert 11O" auf. Das Signal RRlOO wird daher erneut auf den Binärwert "1" gesetzt. Da jedoch das an die Leitung DTM09 angelegte Umgehungsbit den Binärwert "1" besitzt, wird das Signal NOLOADOOO auf den Binärwert "0" gesetzt.
Aus Fig. 8 ist ersichtlich, daß der Binärwert "0" des Signales NOLOADOOO das Gatter 500-62 sperrt, so daß das Signal RDLOADlOO nicht auf den Binärwert "1" gesetzt werden kann. Während dos Auftritts des Zeittaktimpulses T8 behält somit das Listen-Schreibsignal WRDIROOO den Binärwert "1" bei. über das Gatter 500-262 be-
809827/0695
hält somit das Listen-Schreibrreigabcsignal ENABDIRWRIOO den Binärwert "O" bei. Das Zeittaktsignal WRDIRlOO wird daher an die Schalt-
kreise 500-2C6 nicht angelegt. Dementsprechend werden die Listen-Schreibfreigabeschaltkreise 500-266 nicht betätigt, so daß eine
Listen-Schreiboperation nicht stattfindet.
Die Pufferspeicher-Schreibfreigabecchaltkreise 500-214 werden in
gleicher Weise durch das auf den Bin'irwert "0" gesetzte Signal
RDLOADlOO gesperrt. Andererseits weist das Signal RDLOADTOOO den
Binärwert "1" auf, wenn das Signal RDLOADlOO den Binärwert "O" besitzt. Hierdurch gibt das Gatter 500-210 weiterhin das Pufferspeicher-Schreibsignal WRCACHE100 mit dem Binärwert "O" aus, wodurch
ein Anlegen des Zeittaktsignales WRCACHElCO an die Schaltkreise
500-214 verhindert wird. Die Pufferspeicher-Schreibschaltkreise
500-214 werden somit nicht betätigt, wodurch eine Pufferspeicher-Schreiboperation verhindert wird.
Es sei darauf verwiesen, daß die Listenspeichereinheit 5OO-26 weiterhin ungeachtet der Tatsache abgesucht wird, daß das Pufferspeicher-Umgfihungsbit 9 den Binärwert "I1* aufweist. Wenn eine Übereinstimmung festgestellt wird, so wird natürlich das spezielle Datenwort aus dem Pufferspeicher 500-20 ausgelesen und zu dem Prozessor 200 übertragen.
Aus Fig. 8 ist ersichtlich« daß bei fehlender Übereinstimmung das
Gatter 500-464 das Hintergrundspeicher-Anforderungssignal BSREQlOO auf den Binärv/ert "1" setzt. Danach wird in der zuvor beschriebenen Weise das angeforderte und aus dem Hintergrundspeicher 5OO-4O ausgelesene Datenwort in den Prozessor 200 übertragen. Da jedoch die
Signale WRDIROOO und WRCACHElOO nicht erzeugt werden, was durch
die gestrichelten Linien in Fig. 11 angedeutet ist, wird keine Information in den Pufferspeicher 500-20 eingeschrieben.
809827/0695
Wenn öer Prozessor 200 die LPW-AdreKf.eninformation von der SchnittstelleneinheiL STU-IOO erhält, so ist das Bit 9 normalerweise auf den Binärwert "1" gesetzt. Da der Prozessor 200 kein Laden des Datensteuorwortci DCVJ in den Pufferspeicher 500-20 fordert, bleibt das Bit 9 unverändert. Wahrend der Bearbeitung eines nächsten Pefehls erzeugt somit der Porzessor 200 eine ZAC-Speicheranweisunci, die die LPW-Adresse umfaßt und hai der das Umgehungsbit 9 erneut auf den Binärwert "1" gesetzt ist. Der interne Speichermodul 500 wird in der zuvor beschriebenen Weise daran gehindert, die aus dem Hintergrundspeicher 500-40 gelesene Information in den Pufferspeicher 5C0--2O zu schreiben. In jenen Fällen, wo der Prozessor 200 Zugriff auf zusätzliche Datenworte wünscht, die in dem gleichen Block wj.e das angeforderte Datenwort angeordnet sind, bewirkt er ein Setzen des Pufferspeicher-Umgehungsbits auf den Biniirwert "0" innerhalb jeder ZAC-Speicheranweisung.
Aus vorstehendem ist ersichtlich, daß die Anordnung gemäß der vorliegenden Erfindung das Prozessorpaar 200-0 in die Lage versetzt, auf einer Anweisungsbasis zu entscheiden, welche aus dem Hintergrundspeicher 500-40 abgerufene Information in den Pufferspeicher 500-20 zu schreiben ist. Ferner gestattet die Anordnung gemäß der vorliegenden Erfindung dem Multiplexer 300 die Entscheidung auf einer Anweisiangsbasis darüber, welche Information in den Pufferspeicher 500-20 einzuschreiben ist. Dies bedeutet, daß der Multiplexer 300 während der Bearbeitung von Schreibdaten-Übertragungsoperationen ZAC-Speicheranweisungen erzeugen muß, die er der System-Schnitt.'Jtelleneinheit SIU-IOO in der erläuterten Weise anbietet.
Es sei beispielsweise angenommen, daß das Betriebssystem eine kurze Leseoporation auszuführen wünscht, die einen der Kanäle des Multiplexers 300 (z.B. CAO) betrifft, und daß das System anschließend bestimmte Operationen mit der gleichen Information ausführt.
809827^0695
Zur Auslösung der Kanaloperation bearbeitet der Prozessor 200 einen Befehl, der eine programmierbare Schnittstellenänweisung (PI-Anweisung) erzeugt, durch die das Laden des LPW-Registers des Kanals vorgegeben wird. Gemäß Fig. 4a ist ersichtlich, daß das Anweisungswort in das PC-Register 301-2 geladen wird, wodurch die Schaltkreise des Blockes 301-4 in die Lage versetzt werden, Signale zu erzeugen, durch die der Dateiiwortinhalt des PD-Registers 301-5 über die PD-Positionen des Schalters 301-6 und 301-42 sowie die HSW-Position des CW-Schalters 3O1--44 in das LPW-Register des Xanales übertragen wird, der aufgrund der in dem PC-Register 301-2 gespeicherten Signale ausgewählt wird.
Das LPW-Register enthält nunmehr eine Adresse, die auf die Liste der Datensteuerworte DCW verweist. Nach dem Laden des LPW-Kanalregisters bearbeitet der Prozessor 200 einen anderen Befehl, der eine pi -Anweisung erzeugt, durch die eine Ladesteueroperation festgelegt wird, die anzeigt, daß das in dem PD-Register 301-5 gespeicherte Datenwort zu ignorieren ist.
Das in dem PC-Register 301-2 gespeicherte Anweisungswort versetzt die Schaltkreise des Blockes 301-4 in die Lage, Signale zu erzeugen, durch die Signale des PC-Registers 301-2 über die PC-Position des PD-Schalters 301-6 und die DTA-Position des WD-Schalters 302-4 in eine Gruppe von nicht dargestellten Kanal-Steuer-Flip-Flops übertragen werden. Eines der Flip-Flops (ein AÜTO-Flip-Flop) signalisiert im gesetzten Zustand, daß der Kanal mit der Datenübertragung beginnen kann.
Das AUTO-Flip-Flop legt ein erstes Listensignal an einen von vier Eingängen der Prioritätsauswahl- und Steuerschaltkreise 301-48 sowie ein Behandlungs-Anforderungssignal an eine von zwei Anforderungsleitungen des Kanales an. Die Schaltkreise 301-48 wählen den Kanal mit der höchsten Priorität jenes anfordernden Gerätes aus,
809827/0695
worauf die vier Eingängrj aus Kanal os festlegen, welche Register auszuwählen sind. Die Prioritätsschaltkreise 301-48 codieren das CAO-BehandlungG-Ar.fordcrungssignal in einem 2 Bit-Code (CAO-OO) . welcher Code an die Schaltkreise 301-4 angelegt wird, unter der Annahme, daß keine andere Operation bearbeitet wird, die die Gewährung der Anforderung verhindert' (z.B. keine vom Speichermcdu] 500 zu übertragende Daten) , legen die Schaltkreise 301-4 Freigabe.signale an die Schaltkreise 301-48 an. Die Schaltkreise 30.1-48 bewirken das Anlegen eines Signales mit dem Binärwert "1" an die Behandlungslei tung ANS des Kanalos CAO. Dieses Signal macht den Kanal CAO für die Datenübertragung bereit.
Das von dem Kanal CAO über die Schaltkreise 301-48 übertragene Listonsignal veranlaßt die Schaltkreise 301-4, die LPW-Position des C-Schalters 301-50 auszuwählen. Signale entsprechend dem 2 Bit-Kanalcode und das Signal werden in die ersten drei Bitpositionen des Registers 301-65 geladen. Die zwei hochrangigen Bitpositiontn des Registers 301-65 identifizieren die Kanal-Anforderungsdaten. Gemäß Fig. 4a wird der Inhalt des Registers 301-65 auf die Leitungen MITS gegeben. Signale auf den Kanal-Auswahlleitungen von den Schaltkreisen 301-48 wählen das LPW-Register für den Kanal CAO aus.
Die Adresse in dem LPW-Register wird in das ZAC-Register der Reihe 301-64 geladen, v/obei ein entsprechendes Register durch Signale von den Schaltkreisen 301-4 über die CSW-Position des DT-Schalters 301-20 ausgewählt wird. Die CSW-Position des DT-Schalters 301-20 v/i rd aufgrund von durch die Schaltkreise 301-48 angelegten Signalen ausgewählt. Die Schaltkreise 301-48 liefern zusätzlich Signale über die Zonen/CMD-Position des ZAC-Schalters 301-Gl, welche in die erste Byteposition des ZAC-Registers geladen werden. Dies führt zu einer Formatierung eines ZAC-Anweisungswortas, wie dies in Fig. 9 dargestellt ist. Die Signale an einem der vier Kanaleingänge (z.B. direkter oder indirekter Modus, Lese- oder Schreibanweisung, Einfach- oder Doppelpräzision und Liste) definieren den Status des Anweisungsteiles des ZAC-Anweisungswortes. Da der Multiplexer 3OO nur ZAC-Anwei-
809827/0695
sungen erzeugt, befindet eich die Bitposition 0 des ZAC-Registers auf dem Binärwert "0". Da ferner eine Listenbehandlung vorliegt, definieren die Bits des Anweisungsteils durch ihre Codierung eine Doppolpräzision-Leseanweisung. Da ein Auslesen der DCW-Information aus dem internen Speichermodul 500 unter der Benutzung der in dem Pufferspeicher 500-20 gespeicherten LPW-Adresse nicht gewünscht wird, ist das Bit 9 der LPW-Adrecse normalerweise auf den Binärwert "1" gesetzt. Das Pufferspeicher-Umgehungsbit 9 der in dem ZAC-Register gespeicherten ZAC-Anweisung ist somit auf den Binärwert "1" gesetzt.
Während des Ladens des ZAC-Registers wird die LPW-Adresse an das Paar von Addierschaltkreisen 301-52 und 301-54 angelegt,in welchen sie um 2 erhöht wird (2 Worte oder 8 Bytes) und in welchen eine neue Parität erzeugt wird. Das Ergebnis wird über die Fortschreibungsposition des CW-Schalters 301-44 in das LPW-Kanalregister zurückgeführt. Die in dem LPW-Register enthaltene Steuerungsinformation wird zusätzlich über die CSW-Position des Steuerungsschalters 301-59 in das Stcuerungsregister 301-60 geladen. Das Laden des ZAC-Registers verursacht die Umschaltung des AOPR-Flip-Flops 301-69 auf den Binärwert "1".
Der Multiplexer 300 wartet bis der Schaltkreis 1O2-2O der Schnittstelleneinheit SIU gemäß Fig. 3b die Anforderung akzeptiert, was durch die Leitung AOPR signalisiert wird, indem die Leitung ARA auf den Binärwert "1" geschaltet wird. Wenn die Schnittstelleneinheit SlU-IOO die Anforderung vom Multiplexer 300 akzeptiert hat, so setzt sie die Leitung AZC auf den Binärwert "1", wodurch der Modul 500 einen Daten-Lese/Schreib-Operationszyklus auslöst. Wie in Fig. 11a gezeigt, werden gleichzeitig mit dem Setzen der Leitung AZC die Anfordereridentifiziersignale, die ZAC-AnweisungsSignaIe und das Doppelpräzisionssignal vom Multiplexer 300 an die Leitungen RITM, DTM und SLTM der Schnittstelle 603 aufgrund der Signale des Schaltkreises 102-20 angelegt.
809827/0695
Der interne Speichermodul 500 hält die Anfordereridentifiziersignale zurück, und gibt diese als Steuerungsinformation mit den gelesenen Daten an die Schnittstelleneinhe.it SIU-IOO ab. Der interne Speichermodul 500 antwortet durch Umschaltung der Leitung ZIR auf den Binärwert "0". Dies ermöglicht der Schnittstelleneinheit SIU-IOO, den .Anfordererweg zu sperren. Der interne Speichermodul 500 löst die übertragung von Daten zur Schnittstelleneinheit SIU-IOO aus, indem er die Leitung RDTR auf den Binärwert "Ί" setzt, und'zusätzlich das vom Multiplexer 300 herrührende Anfordereridentiiiersignal und ein DoppelpräzisionsEignal auf die Leitungen RIFM und Dl'FM der Schnittstelle 603 entsprechend abgibt.
Die Schnittstelleneinheit SIU-IOO antwortet auf die Umschaltung der Leitung IVDTB. durch Setzen der Leitung RDAA auf den Binärwert "1", wie dies in Fig. 11 gezeigt ist. Dies signalisiert dem internen Speichermodul 500, daß der Datenweg zu dem Anforderermodul geöffnet ist und daß mit der Datenübertragung fortgefahren werden kann. Das Signal auf der Leitung RDAA veranlaßt den Modul 500 zur Abgabe eines zweiten Datenwortes an die Schnittstelle 603 mit dar abfallenden Flanke der, Taktimpulses, der auf den Empfang der Signale auf der Leitung RDAA erfolgt. Bei Vervollständigung der Operation, d.h. sobald der Modul 500 bereit ist, eine andere Anweisung anzunehmen, schaltet er die Leitung ZIR auf den Binärwert "1".
Zum Zeitpunkt der Umschaltung der Leitung RDAA zeigt die Schnittstelleneinheit SIU-IOO dem anfordernden Multiplexermodul 300 an, daß ein Datenwort an ihre Leitungen DFS angelegt ist, indem die Leitung ARDA auf den Binärwert "1" gesetzt wird. Die Schnittstelleneinheit SIU-IOO legt ferner die Anfordereridentifiziersignale an die Leitungen MIFS an, was zur Speicherung der Signale im Register 301-68 führt. Der an die Schaltkreise 301-48 angelegte Identifikationsinhalt des Registers 301-68 wird decodiert und ruft die Auswahl des geeigneten Kanalregisters zusätzlich zur Freigabe des Kanales CAO über die CAO-Auswahlleitung hervor. Das erste Datenwort wird in dös H-Register 301-40 über die Treiberschaltkreise 301-3 geladen. Von dort wird der Inhalt in das DT-Register des
809827/0695
Kanales CAO über die Η-Position des Schalters 301-42 und die Η-Position des CW~Schalters 301-44 geladen. Das zweite Datenwort wird nach dem ersten Wort einen Taktimpuls später in das Register 30-142 geladen und danach in das DA-Register 301-40 des Kanales CAO übertragen.
Wie zuvor erwähnt, geben die Signale der Schaltkreise 301-4 8 die Reihe der auszuwählenden Kanalregister (z.B. CAO) vor. Wenn der Multiplexer 300 auf die Llstenanforderung des Kanales CAO antwortet, so erzeugen die Schaltkreise 301-48 ebenfalls ein Signal, durch welches die CAO-Kanalschaltkreise veranlaßt werden, ein nicht dargestelltes Listen-Flip-Flop auf den Binärwert "0" zurückzustellen. Zu diesem Zeitpunkt schalten die Schaltkreise 302-7 ein nicht dargestelltes Kanal-Beleg-Flip-Flop auf den Binärwert "1" um, wobei dieses Flip-Flop als ein weiteres Steuer-Flip-Flop betrachtet werden kann. Hierdurch wird ein Signal mit dem Binärwert "1" an die Kanal-Belegt-Leitung der Schnittstelle CAi des Steueradapters 303 angelegt, wodurch signalisiert wird, daß der Kanal für eine übertragung bereit ist.
Wie zuvor erwähnt, sind die Formate der beiden Datenworte des Datensteuerwortes DCW, das in die Register DT und DA geladen wird, in Fig. 10a dargestellt. Da der Prozessor 200 Zugriff auf die durch den Multiplexer 300 angeforderten Daten nach ihrer übertragung fordert, bewirkt das Betriebssystem das Setzen des Bits des DA-Wortes des Datensteuerwortes DCW auf den Binärwert "0". Hierdurch erzeugt der Multiplexer 300 eine ZAC-Speicheranweisung, in welcher das Pufferspeicher-ümgehungsbit 9 auf den Binärwert "0" gesetzt ist.
Während des Betriebs bewirken die Schaltkreise 301-4 die Auswahl der DA-Position des C-Schalters 301-50 als Signalquelle zum Laden der letzten drei Bitpositionen des ZAC-Registers der Reihe 301-64 und des Steuerungsregisters 301-60. Die Bitposition 9 des ZAC-
809827/0695
Registers wird somit auf den Binärwert "0" gesetzt. DaJ Laden erfolgt über die Zonen/CMö-Position des Z/^C-Schnlters 301-G1, den DT-Gchalter 30.1-20 und öen Steuerimgsschalter 30.1-59. Die ersten zwei Bitpositicnen des Registers 301-65 werden ebenfalls mit dem Binärwert "0" geladen, wodurch der Kanal CAO als Anforderer festgelegt wird.
Zu -diesem Zeitpunkt wird die Leitung AOPR auf den Binärwort "1" gesetzt. Während des gleichen Intervalles und während des zweiten Taktimpulnes nach der Kanalsuswahl wird die Adresse (DA) durch den Acidierschaltkreis 301-52 um zwei erhöht und über die Fortschreibungsposition das CW-Schalters 301-44 in das DA-Register zurückgeführt. Als nächstes wird die DT-Registerposition des C-Schalterr, 301-50 ausgewählt, der Datenzählerinhalt an den Addierschaltkreis 301-52 angelegt und um 2 erniedrigt und sodann über den Schalter 301-44 in das DT-Register zurückgeführt.
Eine Signalfoige ähnlich der zuvor beschriebenen wird zur übertragung der ZAC-Anweisung durch die Schnittstelleneinheit SIU-IOO ausgelöst, wobei diese Anweisung das Format gemäß Fig. 7c besitzt (z.B. wird die Leitung AOPR auf den Binärwert "1" gesetzt, wenn das ZAC-Register geladen wird).
Es sei darauf verwiesen, daß der interne Speichermodul 500 aufgrund der ZAC-Anweisung das von dem Hintergrundspeicher 500-40 angeforderte Datenwort bzw. die Datenworte ausliest und zum gleichen Zeitpunkt einen Informationsblock im Pufferspeicher 500-20 in der zuvor beschriebenen Weise speichert. Dies macht die Information für den Prozessor 200 leicht erreichbar.
Aus vorstehendem wird ersichtlich, wie die verschiedenen Anweisungsmodule auf einer Anweisungsbasis in der Lage sind, festzulegen, welche aus dem Hintergrundspeicher 500-40 gelesene Information in den Pufferspeicher 500-20 zu laden i3t, um auf diese Information einen schnellen Zugriff zu ermöglichen. Durch Anord-
809827/0695
nung eines getrennten und unabhängigen Bits in jeder Anweisung, dessen Zustand festlegt, ob der Pufferspeicher 500-20 zu laden ist, wird die Anweisungsdecodierung und die Ausführung anderer Operationen, die die Änderung eines solchen Bits betreffen, erleichtert.
Es sei vermerkt, daß manche Modifikationen hinsichtlich des bevorzugten Ausführungsbeispieles der Erfindung vorgenommen werden können. Diese Modifikationen können beispielsweise die Art und Weise betreffen, in der Anweisungen formatiert und codiert sind und sie können sich ebenfalls auf die Erzeugung bestimmter Steuer- und Zeittaktsignale beziehen. Aus Gründen der Einfachheit wurde in vielen Fällen nur eine einzige Signalquelle für die verschiedenen Signale dargestellt. Es sei jedoch darauf verwiesen, daß die gleichen Signale durch andere Quellen unabhängig erzeugt werden können, um Zeitbeschränkungen zu reduzieren.
809827/0695

Claims (17)

  1. HONEYWELL INFORMATION SYSTEMS INC. ng qj^ 1Q77
    Ski ti» Street
    VJalthrun, Mass., USA 5202590 Co
    Ein/Ausgabe~System
    Patentansprüche:
    / 1.jEin/Auügabe-System zur Steuerung von Ein-Ausgabe-OpsratJonen hinrichtlich mehrerer Ein/Ausgaba-Geräte, gekennzeichnet durch
    eine Systera-Schnittstelleneinhe.it mit mehreren Anschlüssen; an verschiedene dieser Anschlüsse angeschlossene Module, welche wenigstens einen Speichermodul und mehrere Anveisungsjr.orlulc umfassen, wobei jeder der Anweisuncts.module aufv/eist: eine Einrichtung zur Erzeugung von Speicher-Anweisungen, wobei ein erster Anweisungstyp wenigstens ein vorbe-stinumtes Bit aufweist, das durch seine Codierung eiste und zweite Kategorien des Zugriffs auf die Information des Rpeichermoduls festlegt; und
    wobei der eine Speichermodul umfaßt:
    einen betriebsmäßig an einen der Anschlüsse angeschlossenen Pufferspeicher, der zuvor aus dem Speichermodul aufgrund der Speicheranweisungen abgerufene Informationsblöcke speichert; einen betriebsmäßig an einen der Anschlüsse angeschlossenen Hintergrundspeicher zur Speicherung von Inforinationssignalen; und
    809R27/0R95 OHWMAL »««1»
    an ilen Pufferspeicher und den Hintergrundspeicher angeschlossene Steuorschaltkreise zur Operationssteuerung dieser Speicher, welche aufweisein:
    ein an den einen Anschluß angeschlossenes Eingangsregister, dem Spoicharanweisungan von den Anwe.i sungsmodulen zugeführt werden; und
    Anweisungsdecodierschaltkreise, die an das Eingangsregistet zwecks Decodierung der Anweisungen angeschlossen sind und die in Abhängigkeit einer jeden Speicheranweisung vom ersten Typ Steuersignale für die Freigabe des Hintergrundspeichers zum Auslesen von Information, die durch den ersten Speicheranweisungstyp bei Abwesenheit dieser Information im Pufferspeicher festgelegt wird, erzeugen, und die Steuersignale für die Freigabe des Pufferspeichern erzeugen, um in diesen die aus dem Hiritergrur.c'-speicher ausgelesene Information nur dann einzuschreiben, wenn das vorbestimmte Bit durch seine Codierung die erste Zugriffskategorie festlegt.
  2. 2. System nach Anspruch 1,dadurch gekennzeichnet, daß jeder erste Typ der Speicheranweisungen aufgrund seiner Codierung einen Anweisungsteil, einen Kategorieteil und einen Adressenteil umfaßt, wobei aufgrund der Codierung der Anweiüungsteil eine Leseoperation und der Adressenteil die Adresse der angeforderten Information festlegt und der Kategorieteil mit dem vorbestimmten Bit festlegt, wann der Pufferspeicher während der Leseoperation zu umgehen ist.
  3. 3. System nach Anspruch 2,dadurch gekennzeichnet, daß das vorbestimmte Bit. den Binärwert "0" aufweist und die Steuerschaltkreise in die Lage versetzt werden, die Steuersigna Ig zur Freigabe des Pufferspeichers zu erzeugen, um die Information in diesen einzuschreiben.
  4. 4. System nach Anspruch 1, dadurch gekennzeichnet, daß das vorbestimmto Bit den Binärwert "1" aufweist und die Steuerschaltkreise an der Erzeugung der Steuersignale zur Freigabe des Pufferspeichers gehindert werden, wodurch der Pufferspeicher umgangen wird.
  5. 5. System nach Anspruch 2, dadurch gekennzeichnet, daß die Anweisungsmodule wenigstens eine E/A-Verarbeitungseinheit aufweisen, wobei die die Anweisungen erzeugende Einrichtung der Verarbeitungseinheit umfaßt:
    eine mikroprograrnmierte Steuereinrichtung zur Speicherung von Folgen von Mikrobefehlsworten, die die für die Erzeugung der Speicheranweisungen erforderlichen Steuersignale erzeugen; und eine Adressensteuereinrichtung zur Erzeugung von Adresseninformation, die als Adreßteil in jeder Speicheranweisung enthalten ist.
  6. 6. System nach Anspruch 5, dadurch gekennzeichnet, daß der Hintergrundspeicher mehrere Speicherplätze zur Speicherung mehrerer Tabellen aufweist, wobei eine erste Tabelle für die Bezugnahme auf Information von in dem Hintergrundspeicher gespeicherten Datensteuerworten benutzt wird und eine zweite Tabelle der Speicherung von Listen-Hinweisadressenworten für die Bezugnahme auf die Datensteuerworte dient, daß eine vorbestimmte Bitposition eines jeden Datensteuerwortes und eines jeden Listen-Hinweisadressenworteo durch ihre Codierung festlegt, wann der Pufferspeicher zu umgehen ist, daß die Anweisungsmodule einen Multiplexermodul mit mehreren an die E/AGeräte angeschlossenen Adapteranschlüssen aufweisen und daß die die Anweisungen erzeugende Einrichtung umfaßt:
    mehrere Register zur Speicherung von Adressen- und Steuerinformation für die Verarbeitung der E/A-Operationen; wobei einem ersten dieser Register Anweisungen von der E/A-Verarbeitungseinheit zugeführt werden;
    80PR77/0R95
    eine Steuereinrichtung zur Steuerung der Operation des Multiplexermoduls aufgrund der Anweisungen, wobei die Steuereinrichtung an die Register angeschlossen ist; und ein an die Register angeschlossenes Ziusgangsregister, wobei die Steuereinrichtung aufgrund einer ersten Anweisung von der Verarbeitungseinheit Signale zur Speicherung in einem zweiten Register erzeugt und die Signale einem aus der zweiten Tabelle gelesenen Listen-Hinweisadrensenwort entsprechen und wobei die Steuereinrichtung aufgrund einer zweiten Anweisung von der Verarbeitungseinheit Signale vom ersten Typ der Speicheranweisung erzeugt und die Signale das zweite Register in die Lage versetzen, day Ausgangsregister mit dem Listen-Hinweisadressenwortinhalt zu laden, der bei der Bezugnahme auf ein erstes Datensteuerwort der ersten Tabelle benutzt wird.
  7. 7. System nach Anspruch 6, dadurch gekennzeichnet, daß der Listen-Hinweisadressenwortinhalt den Kategorieteil und den Adreßteil der ersten Speieheranweisung vom ersten Typ umfaßt, wobei das vorbestimmte Bit des Kategorieteils auf den Binärv/ert "1" gesetzt ist, um die Steuerschaltkreise des Speichermoduls daran zu hindern, Signale entsprechend den aus dem Hintergrundspeicher gelesenen Datensteuerworten in den Pufferspeicher zu schreiben.
  8. 8. System nach Anspruch 7,dadurch gekennzeichnet, daß jedes der Datensteuerworte ein Datenzählerwort und ein Datenadreßwort aufweist, daß aufgrund der zweiten Anweisung erzeugte Signale dritte und vierte Register in die Lage versetzen, Datenzähler- und Datenadreßworte eines ersten Datensteuerwortes zu speichern und daß die Steuereinrichtung Signale einer zweiten Speicheranweisung vom ersten Typ erzeugt und die Signale das vierte Register in die Lage versetzen, das Ausgangs register mit dem üatenadresseninhalt zu laden, um auf in dem Hintergrundspeicher während der E/A-Operationen gespeicherte Information Bezug zu nehmen.
    809827/0695
  9. 9. System nach Anspruch 8, dadurch gekennzeichnet, daß der Datenadressen-Wort inhalt den Kategorieteil und den Adreßteil der zweiten Speicheranweisung vom ersten Typ enthält, daß das vorbestimmte Bit des Kategorieteili» den Binärwert. "0" aufweist, um den Steuerschaltkreis des Speichermoduls in die Lage zu versetzen, Signale entsprechend dieser Information in den Pufferspeicher zu schreiben, wodurch ein schneller Zugriff auf diese Information durch die E/A-Verarbeitungseinheit erzielt wird.
  10. 10. System nach Anspruch 2, dadurch gekennzeichnet, daß der Speichermodul f-erner aufweist: ein Verzeichnis mit mehreren Speicherplätzen zur Speicherung mehrerer Adressen, wobei jede Adresse den Speicherplatz in dem Pufferspeicher festlegt, an dem ein Informationsblock gespeichert ist;
    einen Vergleichsschaltkreis, dem eine erste Gruppe von Hits des Adreßteils einer jeden Speicheranweisung vom ersten Typ zum Vergleich mit dem Adresseninhalt eines der Speicherplätze des Verzeichnisses zugeführt wird, wobei der Speicherplatz durch eine zweite Gruppe von Bits des Adreßteils festgelegt wird und wobei der Vergleichsschaltkreis Signale erzeugt, die anzeigen, wenn die Information, auf die durch die Speicheranweisung zugegriffen wird, in dem Pufferspeicher gespeichert worden ist; und
    ein an den Vergleichsschaltkreis angeschlossenes Anzoigeregister, das aufgrund der Signale ein Ausgangssignal erzeugt, welches die Abwesenheit der Information im Pufferspeicher anzeigt.
    809827/0695
  11. 11. System nach Anspruch 10, dadurch gekennzeichnet, daß der Steuerschaltkreis ferner einen an den Anweisungsdecodierschaltkreis und das Anzeigeregister angeschlossenen Verzeichnis-Schreib-Freigabeschaltkreis aufweist, der durch den Anweicungsdecodierschaltkreis aufgrund des Ausgancjssignales in die Lage versetzt wird, Verzeichnis-Schreibtaktsignale zu erzeugen, worauf das Verzeichnis aufgrund der Schreibtaktsignale Signale entsprechend der ersten Gruppe von Bits den Adreßteils in einem seiner Speicherplätze speichert, wobei der Speicherplatz durch die zweite Gruppe von Bits festgelegt wird und der nachfolgende Zugriff auf diese Information im Pufferspeicher ermöglicht wird.
  12. 12. System nach Anspruch 11, dadurch gekennzeichnet, daß der Steuerschaltkreis ferner einen an den Anweisungsdecodierschaltkreis und das Anzeigeregister angeschlossenen Puffer-Schreib-Freigabeschaltkreis aufweist, der durch den Anweißungsdecodierschaltkreis aufgrund des Ausgangssignales in die Lage versetzt wird, Schreibtaktsigna]e zu erzeugen, wobei der Pufferspeicher aufgrund der Schreibtaktsignale die aus dem Hintergrundspeicher ausgelesene Information speichert.
  13. 13. System nach Anspruch 12, dadurch gekennzeichnet, daß der Hintergrundspeicher mehrere Wort-Speicherplätze aufweist und daß der Steuerschaltkreis ferner einen an den Anweisungsdecodierschaltkreis und das Anzeigeregister angeschlossenen Hintergrundspeicher-Anforderungsschaltkreis aufweist, der durch den Anweisungsdecodierschaltkreis aufgrund des Ausgangssignales in die Lage versetzt wird, ein Anforderungssignal für den Hintergrundspeicher zu erzeugen, um den Wortinhalt einer Gruppe von Wort-Speicherplätzen entsprechend einem Informationsblock auszulesen.
    809827/0695
  14. 14. System nach Anspruch 13, dadurch gekennzeichnet, daß der Speichermodui ferner eine Datenausgabe-Schalteinrichtung aufweist, die an einen der Anschlüsse, den Hintergrundspeichor, den Anweisung.sdecüdierschaltkreis und den Hintergrundspeicher-Anforderungsschaltkreis angeschlossen ist, und
    daß der Hintergrundspeicher-Anforderungsnchaitkreis ein Freigabegatter aufweist, das in Abhängigkeit von dem Ausgangcsjgnal die Datenausgabe-Schalteinrichtung in die Lage versetzt, den Wortinhalt der Gruppe von Wort-Speicherplätzen an den Anweisungsmodul zu übertragen, der die Speicherönweisung gleichzeitig mit dem Schreiben des VJortinhalts des Blockes in den Pufferspeicher erzeugte.
  15. 15. System nach Anspruch 14,dadurch gekennzeichnet, daß der Anweisungsdecodierschallkreis eine an das Eingangsregister angeschlossene Einrichtung zum Anlegen vorbestimmter Bits des Adreßteils der Speicheranweisung an die Datenausgabe-Schalteinrichtung aufweist, um auszuwählen, welche Worte der Gruppe an den Anweirungsmodul zu übertragen sind, der die Speicheranweisung erzeugte.
  16. 16. System nach Anspruch 15, dadurch gekennzeichnet, daß der Puffer-Schreib-Freigabeschaltkreis ein an die Anweisungsdecodierschaltkreise, das Eingangsregister, den Pufferspeicher und den Hintergrundspeicher angeschlossenes Adressengatter aufweist, das aufgrund eines vorbestimmten Adressenbits des Eingangsregisters die Zustandsmodifizierung dieses Adressenbits bewirkt, um das Einschreiben aller Worte der Gruppe in den Pufferspeicher beim Empfang vom Hintergrundspeicher zu gestatten.
    809827/0695
  17. 17. System nach Anspruch 1 oder einem der folgenden, gekennzeichnet durch
    einen Prozessormodul mit einer Einrichtung zur Erzeugung von Speicheranweisungen, wie sie für Datenübertragungsoperationen zwischen mehreren peripher.en Geräten erforderlich sind, wobei jede Speicheranweisung vom Lesetyp ein Steuerbit aufweist, das durch seine Codierung die selektive Umgehung der durch die Lesespeicheranweisungen angeforderten Informationsspeicherung vorgibt;
    einen an die Geräte angeschlossenen Multiplexermodul, der eine Einrichtung zur Erzeugung von Speicheranweisungen während der Ausführung der Datenübertragungsoperationen aufweist, wobei jede der Speicheranweisungen vom Lesetyp ein Steuerbit aufweist, das durch seine Codierung die selektive Umgehung der durch die Lesespeicheranweisungen angeforderten Informationsspeicherung vorcfibt; und
    eine Einrichtung zur Verbindung der Module zwecks übertragung der Speicheranweisungen und Datensignale.
    809827/0695
DE19772755897 1976-12-30 1977-12-15 Ein/ausgabe-system Granted DE2755897A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/755,871 US4075686A (en) 1976-12-30 1976-12-30 Input/output cache system including bypass capability

Publications (2)

Publication Number Publication Date
DE2755897A1 true DE2755897A1 (de) 1978-07-06
DE2755897C2 DE2755897C2 (de) 1989-03-30

Family

ID=25041015

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772755897 Granted DE2755897A1 (de) 1976-12-30 1977-12-15 Ein/ausgabe-system

Country Status (7)

Country Link
US (1) US4075686A (de)
JP (1) JPS5384632A (de)
AU (1) AU509939B2 (de)
CA (1) CA1105147A (de)
DE (1) DE2755897A1 (de)
FR (1) FR2376465A1 (de)
GB (1) GB1596519A (de)

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4197580A (en) * 1978-06-08 1980-04-08 Bell Telephone Laboratories, Incorporated Data processing system including a cache memory
US4246637A (en) * 1978-06-26 1981-01-20 International Business Machines Corporation Data processor input/output controller
CA1123964A (en) * 1978-10-26 1982-05-18 Anthony J. Capozzi Integrated multilevel storage hierarchy for a data processing system
US4225922A (en) * 1978-12-11 1980-09-30 Honeywell Information Systems Inc. Command queue apparatus included within a cache unit for facilitating command sequencing
US4208716A (en) * 1978-12-11 1980-06-17 Honeywell Information Systems Inc. Cache arrangement for performing simultaneous read/write operations
GB2037038B (en) * 1978-12-11 1983-05-05 Honeywell Inf Systems Cache storage systems
CA1119307A (en) * 1978-12-15 1982-03-02 Guenther K. Machol Microcomputer having separate bit and word accumulators and separate bit and word instruction sets
JPS55154649A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash write-in system
JPS55154648A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system
US4868734A (en) * 1984-04-30 1989-09-19 Unisys Corp. Variable rate improvement of disc cache subsystem
US5241666A (en) * 1979-06-04 1993-08-31 Unisys Corporation Variable rate improvement of disc cache subsystem
US5371855A (en) * 1979-06-04 1994-12-06 Unisys Corporation Disc cache subsystem having plural-level cache memories
JPS564857A (en) * 1979-06-25 1981-01-19 Hitachi Ltd Access system for memory unit
JPS5667430A (en) * 1979-11-07 1981-06-06 Toshiba Corp Dma control device
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
US4394732A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem trickle
US4392201A (en) * 1980-12-31 1983-07-05 Honeywell Information Systems Inc. Diagnostic subsystem for a cache memory
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US4445174A (en) * 1981-03-31 1984-04-24 International Business Machines Corporation Multiprocessing system including a shared cache
CA1187198A (en) * 1981-06-15 1985-05-14 Takashi Chiba System for controlling access to channel buffers
JPS5856277A (ja) * 1981-09-29 1983-04-02 Toshiba Corp 情報処理装置ならびに方法
US4466059A (en) * 1981-10-15 1984-08-14 International Business Machines Corporation Method and apparatus for limiting data occupancy in a cache
US4500954A (en) * 1981-10-15 1985-02-19 International Business Machines Corporation Cache bypass system with post-block transfer directory examinations for updating cache and/or maintaining bypass
US4429363A (en) * 1981-10-15 1984-01-31 International Business Machines Corporation Method and apparatus for managing data movements from a backing store to a caching buffer store
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4780808A (en) * 1981-11-27 1988-10-25 Storage Technology Corporation Control of cache buffer for memory subsystem
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
GB2140595B (en) * 1982-11-15 1986-11-12 Storage Technology Corp Control of cache buffer for memory subsystem
US4547851A (en) * 1983-03-14 1985-10-15 Kurland Lawrence G Integrated interactive restaurant communication method for food and entertainment processing
US4586133A (en) * 1983-04-05 1986-04-29 Burroughs Corporation Multilevel controller for a cache memory interface in a multiprocessing system
US4635194A (en) * 1983-05-02 1987-01-06 International Business Machines Corporation Instruction buffer bypass apparatus
DE3502147A1 (de) * 1984-01-23 1985-08-08 Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung
CA1233271A (en) * 1984-06-26 1988-02-23 David S. Mothersole Cache disable for a data processor
US4740889A (en) * 1984-06-26 1988-04-26 Motorola, Inc. Cache disable for a data processor
JPH0630075B2 (ja) * 1984-08-31 1994-04-20 株式会社日立製作所 キャッシュメモリを有するデータ処理装置
US4663742A (en) * 1984-10-30 1987-05-05 International Business Machines Corporation Directory memory system having simultaneous write, compare and bypass capabilites
US4636990A (en) * 1985-05-31 1987-01-13 International Business Machines Corporation Three state select circuit for use in a data processing system or the like
US4821185A (en) * 1986-05-19 1989-04-11 American Telephone And Telegraph Company I/O interface system using plural buffers sized smaller than non-overlapping contiguous computer memory portions dedicated to each buffer
JP2965987B2 (ja) * 1988-02-22 1999-10-18 株式会社日立製作所 データ処理システム
US5034885A (en) * 1988-03-15 1991-07-23 Kabushiki Kaisha Toshiba Cache memory device with fast data-write capacity
DE3812858A1 (de) * 1988-04-18 1989-10-26 Siemens Ag Verfahren zur kennzeichnung ungueltiger eintraege in einem speicher, insbesondere in einem cache-speicher, und anordnung zur durchfuehrung des verfahrens
US4905141A (en) * 1988-10-25 1990-02-27 International Business Machines Corporation Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification
US5201041A (en) * 1988-12-29 1993-04-06 International Business Machines Corporation Cache bypass apparatus
US5287482A (en) * 1989-01-13 1994-02-15 International Business Machines Corporation Input/output cache
US5161219A (en) * 1989-01-13 1992-11-03 International Business Machines Corporation Computer system with input/output cache
GB2228116B (en) * 1989-02-10 1993-05-26 Intel Corp Pipelined floating-point load instruction for microprocessor
US5067078A (en) * 1989-04-17 1991-11-19 Motorola, Inc. Cache which provides status information
US5247639A (en) * 1989-06-20 1993-09-21 Nec Corporation Microprocessor having cache bypass signal terminal
US4998221A (en) * 1989-10-31 1991-03-05 International Business Machines Corporation Memory by-pass for write through read operations
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
DE69025302T2 (de) * 1989-12-22 1996-10-02 Digital Equipment Corp Hochleistungsrasterpuffer- und -cachespeicheranordnung
US5838946A (en) * 1990-04-14 1998-11-17 Sun Microsystems, Inc. Method and apparatus for accomplishing processor read of selected information through a cache memory
US5488709A (en) * 1990-06-27 1996-01-30 Mos Electronics, Corp. Cache including decoupling register circuits
US5732241A (en) * 1990-06-27 1998-03-24 Mos Electronics, Corp. Random access cache memory controller and system
US5247447A (en) * 1990-10-31 1993-09-21 The Boeing Company Exception processor system
US5446850A (en) * 1991-01-15 1995-08-29 International Business Machines Corporation Cross-cache-line compounding algorithm for scism processors
US5454093A (en) * 1991-02-25 1995-09-26 International Business Machines Corporation Buffer bypass for quick data access
US5293603A (en) * 1991-06-04 1994-03-08 Intel Corporation Cache subsystem for microprocessor based computer system with synchronous and asynchronous data path
US5319760A (en) * 1991-06-28 1994-06-07 Digital Equipment Corporation Translation buffer for virtual machines with address space match
JPH07122864B2 (ja) * 1991-07-22 1995-12-25 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システム、データ処理システムに使用するインターフエース回路及びデータ・プロセツサ間の通信方法
US5371872A (en) * 1991-10-28 1994-12-06 International Business Machines Corporation Method and apparatus for controlling operation of a cache memory during an interrupt
WO1993018461A1 (en) * 1992-03-09 1993-09-16 Auspex Systems, Inc. High-performance non-volatile ram protected write cache accelerator system
DE4323929A1 (de) * 1992-10-13 1994-04-14 Hewlett Packard Co Software-geführtes Mehrebenen-Cache-Speichersystem
US5551000A (en) * 1993-03-18 1996-08-27 Sun Microsystems, Inc. I/O cache with dual tag arrays
US5550998A (en) * 1993-06-14 1996-08-27 Storage Technology Corporation Pre-seeking process for enhancing reading and writing performance in a mass storage system having multiple individual disk drives
JPH07160582A (ja) * 1993-12-06 1995-06-23 Mitsubishi Electric Corp キャッシュバッファを有するデータ処理装置
SG47015A1 (en) * 1994-02-24 1998-03-20 Intel Corp Apparatus and method for prefetching data to load buffers in a bridge between two buses in a computer
JP3886189B2 (ja) * 1995-12-18 2007-02-28 テキサス インスツルメンツ インコーポレイテツド バースト可でキャッシュ不可のメモリアクセスを支援するマイクロプロセッサ装置
JP2000512416A (ja) 1997-03-12 2000-09-19 ストーリッジ テクノロジー コーポレーション ネットワーク付属仮想テープデータ記憶サブシステム
US6658526B2 (en) 1997-03-12 2003-12-02 Storage Technology Corporation Network attached virtual data storage subsystem
US6094605A (en) 1998-07-06 2000-07-25 Storage Technology Corporation Virtual automated cartridge system
US6272599B1 (en) * 1998-10-30 2001-08-07 Lucent Technologies Inc. Cache structure and method for improving worst case execution time
US6330621B1 (en) 1999-01-15 2001-12-11 Storage Technology Corporation Intelligent data storage manager
US7010575B1 (en) * 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US6834324B1 (en) 2000-04-10 2004-12-21 Storage Technology Corporation System and method for virtual tape volumes
JP2003530640A (ja) * 2000-04-12 2003-10-14 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ キャッシュメモリを含むデータ処理回路およびこのような回路を備える装置
US9131899B2 (en) 2011-07-06 2015-09-15 Apple Inc. Efficient handling of misaligned loads and stores
JP5008845B2 (ja) * 2005-09-01 2012-08-22 株式会社日立製作所 ストレージシステムとストレージ装置及びその制御方法
WO2007110898A1 (ja) * 2006-03-24 2007-10-04 Fujitsu Limited マルチプロセッサシステムおよびマルチプロセッサシステムの動作方法
US8683139B2 (en) 2006-10-31 2014-03-25 Hewlett-Packard Development Company, L.P. Cache and method for cache bypass functionality
US8621154B1 (en) 2008-04-18 2013-12-31 Netapp, Inc. Flow based reply cache
US8161236B1 (en) 2008-04-23 2012-04-17 Netapp, Inc. Persistent reply cache integrated with file system
US8171227B1 (en) 2009-03-11 2012-05-01 Netapp, Inc. System and method for managing a flow based reply cache
EP2452266A4 (de) * 2009-07-07 2013-12-04 Lsi Corp Systeme und verfahren für einen geschichteten nicht flüchtigen speicher
US20120290786A1 (en) * 2011-05-11 2012-11-15 Mesnier Michael P Selective caching in a storage system
US8904128B2 (en) * 2011-06-08 2014-12-02 Hewlett-Packard Development Company, L.P. Processing a request to restore deduplicated data
JP6155723B2 (ja) * 2013-03-18 2017-07-05 富士通株式会社 レーダ装置及びプログラム
EP3746902B1 (de) * 2018-01-29 2023-09-27 Micron Technology, Inc. Speichersteuergerät

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3413613A (en) * 1966-06-17 1968-11-26 Gen Electric Reconfigurable data processing system
US3742457A (en) * 1972-05-15 1973-06-26 Honeywell Inf Systems High speed data transfer for a peripheral controller
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
DE2612139A1 (de) * 1975-03-26 1976-11-04 Honeywell Inf Systems Ein/ausgang-steuerungssystem

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1124017A (en) * 1964-12-17 1968-08-14 English Electric Computers Ltd Data storage apparatus
US3569938A (en) * 1967-12-20 1971-03-09 Ibm Storage manager
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
US3670309A (en) * 1969-12-23 1972-06-13 Ibm Storage control system
US3670307A (en) * 1969-12-23 1972-06-13 Ibm Interstorage transfer mechanism
US3735360A (en) * 1971-08-25 1973-05-22 Ibm High speed buffer operation in a multi-processing system
DE2261586C3 (de) * 1972-12-15 1979-08-09 Siemens Ag, 1000 Berlin Und 8000 Muenchen Speichereinrichtung
US3845474A (en) * 1973-11-05 1974-10-29 Honeywell Inf Systems Cache store clearing operation for multiprocessor mode

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3413613A (en) * 1966-06-17 1968-11-26 Gen Electric Reconfigurable data processing system
US3742457A (en) * 1972-05-15 1973-06-26 Honeywell Inf Systems High speed data transfer for a peripheral controller
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
DE2612139A1 (de) * 1975-03-26 1976-11-04 Honeywell Inf Systems Ein/ausgang-steuerungssystem

Also Published As

Publication number Publication date
JPS6133217B2 (de) 1986-08-01
FR2376465B1 (de) 1984-11-09
DE2755897C2 (de) 1989-03-30
AU3122077A (en) 1979-06-14
FR2376465A1 (fr) 1978-07-28
JPS5384632A (en) 1978-07-26
CA1105147A (en) 1981-07-14
US4075686A (en) 1978-02-21
GB1596519A (en) 1981-08-26
AU509939B2 (en) 1980-05-29

Similar Documents

Publication Publication Date Title
DE2755897A1 (de) Ein/ausgabe-system
DE2750721A1 (de) Ein/ausgabe-system
DE2806045A1 (de) Dv-system mit pufferspeicher
DE2755952C2 (de)
DE2612139A1 (de) Ein/ausgang-steuerungssystem
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE2612083A1 (de) Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung
DE2755371A1 (de) Ein/ausgabe-verarbeitungssystem
DE3131341C2 (de)
DE2856483C2 (de)
DE3222390C2 (de)
DE2829550C2 (de)
DE2755608A1 (de) Wartungseinrichtung in einem dv-system
DE2629266A1 (de) Ein/ausgabe-system
DE2415900A1 (de) Rechenautomat mit mehreren mit je einem vorratsspeicher versehenen rechenanlagen
DE2750299A1 (de) Ein/ausgabe-system
DE2332734A1 (de) Datenverarbeitungssystem
DE3127349A1 (de) Signalverarbeitungssystem mit verteilten elementen
DE2854397A1 (de) Pufferspeichereinheit fuer ein datenverarbeitungssystem
DE2714805A1 (de) Datenverarbeitungssystem
DE2248296A1 (de) Programmsteuereinrichtung
DE1774052B1 (de) Rechner
DE3013070C2 (de) Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE1499206B2 (de) Rechenanlage

Legal Events

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

Ipc: G06F 3/04

8127 New person/name/address of the applicant

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

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee