DE2755897A1 - Ein/ausgabe-system - Google Patents
Ein/ausgabe-systemInfo
- 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
Links
- 230000015654 memory Effects 0.000 claims description 372
- 239000000872 buffer Substances 0.000 claims description 145
- 238000003860 storage Methods 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 42
- 230000005540 biological transmission Effects 0.000 claims description 31
- 238000012546 transfer Methods 0.000 claims description 29
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 description 37
- 230000008569 process Effects 0.000 description 31
- 238000004886 process control Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 101100462123 Arabidopsis thaliana OHP1 gene Proteins 0.000 description 3
- 101000709114 Homo sapiens SAFB-like transcription modulator Proteins 0.000 description 3
- 108010076504 Protein Sorting Signals Proteins 0.000 description 3
- 102100032664 SAFB-like transcription modulator Human genes 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 101001125481 Simulium damnosum Phenoloxidase subunit 1 Proteins 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- LROAUBRDKLVBCP-UHFFFAOYSA-N dcvj Chemical compound C1CCC2=CC(C=C(C#N)C#N)=CC3=C2N1CCC3 LROAUBRDKLVBCP-UHFFFAOYSA-N 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 235000013601 eggs Nutrition 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 101000635799 Homo sapiens Run domain Beclin-1-interacting and cysteine-rich domain-containing protein Proteins 0.000 description 1
- 238000012369 In process control Methods 0.000 description 1
- 102100030852 Run domain Beclin-1-interacting and cysteine-rich domain-containing protein Human genes 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 238000010965 in-process control Methods 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000020477 pH reduction Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000010453 quartz Substances 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
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
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
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
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
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
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.
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.
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
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
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.
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.
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.
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)
- HONEYWELL INFORMATION SYSTEMS INC. ng qj^ 1Q77Ski ti» StreetVJalthrun, Mass., USA 5202590 CoEin/Ausgabe~SystemPatentansprüche:/ 1.jEin/Auügabe-System zur Steuerung von Ein-Ausgabe-OpsratJonen hinrichtlich mehrerer Ein/Ausgaba-Geräte, gekennzeichnet durcheine 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; undwobei 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; und809R27/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; undAnweisungsdecodierschaltkreise, 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. 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. 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. 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. 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. 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/0R95eine 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. 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. 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. 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. 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; undein an den Vergleichsschaltkreis angeschlossenes Anzoigeregister, das aufgrund der Signale ein Ausgangssignal erzeugt, welches die Abwesenheit der Information im Pufferspeicher anzeigt.809827/0695
- 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. 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. 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. 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, unddaß 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. 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. 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. System nach Anspruch 1 oder einem der folgenden, gekennzeichnet durcheinen 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; undeine Einrichtung zur Verbindung der Module zwecks übertragung der Speicheranweisungen und Datensignale.809827/0695
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)
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 |
GB2075731B (en) * | 1978-12-11 | 1983-05-25 | Honeywell Inf Systems | Improvements in or relating to data processing apparatus |
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 |
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 |
US5371855A (en) * | 1979-06-04 | 1994-12-06 | Unisys Corporation | Disc cache subsystem having plural-level cache memories |
US5241666A (en) * | 1979-06-04 | 1993-08-31 | Unisys Corporation | Variable rate improvement of disc cache subsystem |
US4868734A (en) * | 1984-04-30 | 1989-09-19 | Unisys Corp. | Variable rate improvement of disc cache subsystem |
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 |
WO1984002017A1 (en) * | 1982-11-15 | 1984-05-24 | 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 |
US5161219A (en) * | 1989-01-13 | 1992-11-03 | International Business Machines Corporation | Computer system with input/output cache |
US5287482A (en) * | 1989-01-13 | 1994-02-15 | International Business Machines Corporation | 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 |
EP0405318A3 (en) * | 1989-06-20 | 1991-11-27 | Nec Corporation | Microprocessor having cash 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 | 株式会社日立製作所 | キャッシュ制御方法および制御装置 |
EP0435475B1 (de) * | 1989-12-22 | 1996-02-07 | Digital Equipment Corporation | 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 |
US5732241A (en) * | 1990-06-27 | 1998-03-24 | Mos Electronics, Corp. | Random access cache memory controller and system |
US5488709A (en) * | 1990-06-27 | 1996-01-30 | Mos Electronics, Corp. | Cache including decoupling register circuits |
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 |
JPH07504527A (ja) * | 1992-03-09 | 1995-05-18 | オースペックス システムズ インコーポレイテッド | 高性能の不揮発性ram保護式の書き込みキャッシュアクセラレータシステム |
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 |
KR100798020B1 (ko) * | 2000-04-12 | 2008-01-24 | 엔엑스피 비 브이 | 데이터 처리 회로, 데이터 처리 회로를 포함하는 장치, 그리고 장치를 위한 컴퓨터 독출 가능 저장 매체 |
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 |
US20120102261A1 (en) * | 2009-07-07 | 2012-04-26 | Harley Burger | Systems and Methods for Tiered Non-Volatile Storage |
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 | 富士通株式会社 | レーダ装置及びプログラム |
KR102407128B1 (ko) * | 2018-01-29 | 2022-06-10 | 마이크론 테크놀로지, 인크. | 메모리 컨트롤러 |
Citations (4)
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)
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 |
-
1976
- 1976-12-30 US US05/755,871 patent/US4075686A/en not_active Expired - Lifetime
-
1977
- 1977-10-13 CA CA288,642A patent/CA1105147A/en not_active Expired
- 1977-12-05 AU AU31220/77A patent/AU509939B2/en not_active Expired
- 1977-12-15 DE DE19772755897 patent/DE2755897A1/de active Granted
- 1977-12-23 JP JP15461877A patent/JPS5384632A/ja active Granted
- 1977-12-28 FR FR7739543A patent/FR2376465A1/fr active Granted
- 1977-12-30 GB GB54276/77A patent/GB1596519A/en not_active Expired
Patent Citations (4)
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 |
---|---|
CA1105147A (en) | 1981-07-14 |
FR2376465B1 (de) | 1984-11-09 |
AU3122077A (en) | 1979-06-14 |
FR2376465A1 (fr) | 1978-07-28 |
US4075686A (en) | 1978-02-21 |
JPS5384632A (en) | 1978-07-26 |
JPS6133217B2 (de) | 1986-08-01 |
DE2755897C2 (de) | 1989-03-30 |
AU509939B2 (en) | 1980-05-29 |
GB1596519A (en) | 1981-08-26 |
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 | |
DE3783370T2 (de) | Schaltung zur blockierungsverhinderung von hochprioritaetsanforderungen an eine systemsteuerung. | |
DE2755371A1 (de) | Ein/ausgabe-verarbeitungssystem | |
DE3131341C2 (de) | ||
DE2856483C2 (de) | ||
DE2829550C2 (de) | ||
DE2755608A1 (de) | Wartungseinrichtung in einem dv-system | |
DE2629266A1 (de) | Ein/ausgabe-system | |
CH656729A5 (de) | Schnittstellenschaltungsanordnung zur verbindung eines prozessors mit einem nachrichtenkanal. | |
DE2750299A1 (de) | Ein/ausgabe-system | |
DE2332734A1 (de) | Datenverarbeitungssystem | |
DE3127349A1 (de) | Signalverarbeitungssystem mit verteilten elementen | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
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 | |
EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
DE69131954T2 (de) | Zeichenfolgensuchgerät und -system | |
DE1549548A1 (de) | Vorrichtung zur Aktivierung eines bestimmten Befehls aus einer Vielzahl von Befehlen,die in einem Befehlsspeicher eines Rechners gespeichert sind |
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 |