DE2629266A1 - Ein/ausgabe-system - Google Patents
Ein/ausgabe-systemInfo
- Publication number
- DE2629266A1 DE2629266A1 DE19762629266 DE2629266A DE2629266A1 DE 2629266 A1 DE2629266 A1 DE 2629266A1 DE 19762629266 DE19762629266 DE 19762629266 DE 2629266 A DE2629266 A DE 2629266A DE 2629266 A1 DE2629266 A1 DE 2629266A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- registers
- control
- data
- signals
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
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/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1433—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
Description
5202556 Ge 2 8. JUNi 1976
HONEYWELL INFORMATION SYSTEMS INC.
200 Smith Street Waltham, Mass., USA
Ein/Ausgabe-System
Die Erfindung betrifft ein E/A-System zur Steuerung von E/AOperationen
mehrerer an einen Multiplexer angeschlossener peripherer Geräte, wobei die Operationen auf Grund von Benutzer-Programmbefehlen
ausgeführt werdenf mit einem Speicher,
einem Prozessor zur Erzeugung von Anweisungen in Abhängigkeit von den Benutzerbefehlen und mit einer Einrichtung zur Datenverbindung
des Speichers mit dem Prozessor und dem Multiplexer auf einer Prioritätsbasis.
Viele Systeme sehen im allgemeinen eine Zugriffsbeschränkung
verschiedener Untersysteme auf bestimmte Teile des Systemspeichers vor. Beispielsweise ist es bei einer Mehrprogramm-Ausführung
eines DV-Systems erforderlich, sicherzustellen, daß die Daten eines überwachungs- oder Ausführungsprograniraes
von einem Benutzer- oder Nebenprogramm nicht verändert oder zerstört werden bzw. dafl von diesem Programm auf sie Zugriff
genommen wird. Die bekannten Systeme sehen daher meistenteils
609884/0790
262
Schutseinrichtungen vor, um einen Speicherzugriff zu verhindern,
der su einer unbeabsichtigten Zerstörung gültiger Programmdaten
führen würde.
Anders Systeme sehen zusätzlich zu einem Schutz von Daten und
Programmen gegen Zerstörung eine Sicherung gegen unberechtigte Benutzung und Auffindung vor. Im allgemeinen wird bei diesen
Systemen die Systemsicherheit in erster Linie durch die Software des Betriebssystems gewährleistet. Während diese bekannten Systeme
einerseits ein hohes Maß an Sicherheit gewährleisten, sind sie auf der anderen Seite mit beträchtlichem Aufwand verbunden und
daher sehr teuer. Ferner kann es in solchen Systemen trotzdem eines Benutzerprogramm möglich sein, durch falsche Berechnungen
oder bestehende Sprünge innerhalb der E/A-Routinen Zugriff auf Information zu gewinnen, auf die normalerweise durch das Benutzerprogramm
kein Zugriff möglich sein sollte.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein E/A-Verarbeitungssystem
anzugeben, das einen v/irksamen Schutz gegen unerlaubten Zugriff auf Information gestattet, die innerhalb
der verschiedenen Module des Systems gespeichert ist. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten
Erfindung. Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Gemäß der Erfindung werden in bestimmten Steuermodulen und Einheiter»,
die das E/A-Sy stem bilden^Einrichtungen vorgesehen, die
prüfens ob der Zugriff des Programmes auf Information innerhalb
«sines bestimmten Moduls gestattet ist oder nicht. In einem bevorzugten
Ausführungsbeispiel ist jeder Modul an einen Anschluß aus eiser Vielzahl von Anschlüssen einer System-Sehnittstelleneinheii;
angeschlossen. Ein jeder solcher Anschluß (port) der Module weist eine programmierbare Schnittstelle zusätzlich zu
den Schnittstellen des Normaltyps aus. Die Module umfassen eine E/Ä-732arbeitungseinheitf die über die programmierbare Schnittstelle
Anweisungen an andere Module ausgibt s wobei diese"Module
6 05884/0790
wenigstens einen Multiplexer aufweisen. Mehrere Register sind operativ mit der programmierbaren Schnittstelle verbunden und
werden während der Ausführung von E/A-Operationen zur Speicherung von Information benutzt. Im bevorzugten Ausführungsbeispiel umfaßt
jedes der mehreren Register eine Anzahl von Registern zur Speicherung von Steuerinformation, die zur Verarbeitung von Unterbrechungen
benutzt wird, wobei die Unterbrechungsanforderung von den mit der Multiplexereinheit verbunden Geräten stammt. Andere
Register speichern Adresseninformation, die zum Zugriff auf Speichermodule des Systems benutzt wird. Weitere Register speichern
Steuerinformation, auf die durch die Systemroutinen, beispielsweise
bei Wartungs- und Dxagnoseoperationen Zugriff genommen wird.
Ferner sind gemäß der vorliegenden Erfindung den verschiedenen Systemroutinen verschiedene Zugriffsrechte zugeordnet, die zum
Laden und Abrufen der verschiedenen Register des Multiplexers durch die programmierbare Schnittstelle erforderlich sind. Durch
die Zuordnung verschiedener Zugriffsrechte zu verschiedenen Systemroutinen
ist die in dem Multiplexer enthaltene Einrichtung in der Lage, sicherzustellen, daß nur der geeignete Modul auf ein vorgegebenes
Register Zugriff besitzt, wodurch die Sicherheit des Gesamtsystems erhöht wird. In jenen Fällen, wo eine Systemroutine
oder.ein Benutzerprogramm einen ungeeigneten Zugriff zu einem Register versucht, sperrt die Einrichtung des Multiplexers den
Zugriff bzw. eine Veränderung des Registerinhalts und versetzt seinerseits eine Steuereinrichtung in die Lage, eine den versuchten
Zugriff signalisierende Unterbrechung zu erzeugen.
Alle Steuerroutinen, welche E/A-Operationen in Abhängigkeit von
Benutzerprogrammen ausführen, werden mit der erforderlichen Information
zum Laden bzw. Entladen verschiedener Register der Multiplexereinheit versehen. Solche E/A-Routinen sind zum Aufruf
einer weiteren Steuerroutine erforderlich, die größere Zugriff srechte aufweist und mit der die Register geladen werden.
60988A/0790
Zu diesem Zeitpunkt dient die Steuerroutine als Teil des Aufrufes ihrer eigenen Identifizierung und der Identifizierung der
Operation durch Festlegung einer Tabelle aus einer Anzahl peripherer
Transaktionstabellen, welche Speicher-Hinweisadressen zur Bezugnahme auf einen Speichermodul speichern,,Hierdurch wird
sichergestellt e daß die in irgendeines der Register über die
prograirauierbare Schnittstelle geladene Information in geeigneter Weise fortschreitet. Darüberhinaus ist nur das Programm e
welches für das Laden der Steuerinformation in ein Register in geeigneter Weise autorisiert ist in der Lageff dieses Register
zu laden.
Anhand· eines in den Figuren der beiliegenden Zeichnungen dar=
gestellten Ausführungsbeispieles x-zird die Erfindung im folgenden
näher beschrieben. Es zeigen;
Figur 1 ein Blockdiagramm eines E/A-Systerne&s das voa den
Prinzipien der vorliegenden Erfindung Gebrauch machte
Figur 2 das E/Ä-Verarbeitungssystem gemäß Figur 1 in näheren
Einzelheiten,
Figuren 3a bis 3c die System-Sehnittstelleneinheit gemäß Figur
in näheren Einzelheiten B
Figuren 4a und 4b nähere Einzelheiten des Multiplexers gemäß
Figur 1 In über eins tiraiaung mit der vorliegenden Erfindung 0
Figuren &c und 4d verschiedene Ausführungen eines Teiles der
Steuerschaltkreise gemä:'- Figur 4a P
Figuren 5a bis Sd di© verschiedenen Schnittstellen geaäß Figur l
Figur β Q±n erstes Format der WREX und RDEX=Prograasabefehlep
Figuren 7a bis ?e äas Format versetiiedener Anweisungen,, weiche
in 2ttsaaBy©ahar<g Mit d@a MultiplesssE1 300 gasiäB Figur 1 bsantst
Figur la sians
© i^ gssaMasRraaaf sit daa ^öltiplessos1 feiaSB Wigms 1
η % ® φ>
ι
J ei 'e) G ;
2623266
Figuren 8a und 8b die Formate bestimmter Kanal-Steuerworte,
Figuren 9a und 9b die verschiedenen Formate des Prozeß-Zustandsregisters gemäß der vorliegenden Erfindung,
Figur 9c ein anderes Format der programmierbaren Schnittstellenanweisung
gemäß der vorliegenden Erfindung und Figuren 10a und 10b Signaldiagramme zur Erläuterung der
Operationen gemäß der vorliegenden Erfindung.
Allgemeine Beschreibung
Gemäß Figur I weist das System der vorliegenden Erfindung
wenigstens einen E/A-Prozessor IOPP-200, eine Systemschnittstelleneinheit
SIU-IOO, einen Hochgeschwindigkeitsmultiplexer HSMX-300, einen Niedriggeschwindigkeitsmultiplexer LSMX-400,
2L·* O ir% ^3T- tf*5 if^
bz3z®B
einen gentralprozessor 700 und wenigstens einen Speichermodui
entsprechend einem internen Speichermoudul 500 auf. Verschiedene dieser Module sind jeweils an einen aus einer Reihe von Anschlüssen
der System-Schnittstelleneinhext 100 über eine Vielzahl Ton Leitungen angeschlossen, die ihrerseits verschiedene
krt'BL· von Schnittstellen 600-603 bilden. Insbesondere sind der
Ξ'/Ä-Prozessor 200, der Zentralprozessor 700 und der Hochgescfrwindigkeitsmultiplexer
300 an die Anschlußstellen G, E und L· angeschlossen, während der Niedriggeschwindigkeitsmultiplexer
400 und der Speichermodul 500 an die Anschlußstellen J und LMO
angeschlossen sind.
Das E/A-System gemäß Figur 1. kann als ein System betrachtet werden,
das eine Anzahl von "aktiven Modulen", "passive Modulen"
und "Speichermodule" aufweist. Der E/A-Prozessor 200, der Zentral·-
prozessor 700 und der Hochgeschwindigkeitsmultiplexer 300 arbeiten
als aktive Module,indem jeder die Fähigkeit besitzt, Anweisungen
auszugeben. Die aktiven Module sind normalerweise an die Anschlußstellen A-H angeschlossen. Mehrere passive Module sind
ein die Anschlußstellen J, K und L angeschlossen. Diese Module sind durch die Niedriggeschwindigkeitsmultiplexer und die Systera-Sehnittstelleneinheit
100 gegeben und sie sind in der Lage, Anweisungen zu-: interpretieren und aus zuführen, die auf den Lei·=
Ititngea der Schnittstelle 601 zugeführt werden. Die letzte Gruppe
dsr Module wird durch die internen Speicliermodule und die nicht
X5.rgestellten externen Speicliermodule gebildet ,wie sie beispielsweise
im Hauptsystem gegeben sind und die in der Lage si.no. f sv/ei verschiedene Arten vor Anweisungen auszuführen s die
•«-.i-:f dsEi Leitungen der Schnittstelle 603 zugeführt werden,
".JiS E/Ä-Systeffi gemäß Figur 1 arbeitet normalerweise als ein 3/A=*
V"<:-c-~,-?j&tem in Abhängigkeit τοη i.iarch dea Isntralprosessor 700
;ii"sv:'3gsbeE!;en £/AH3efehls:^ dis an dia ÄRscIilußstelle 1 über äie
o^hL^ufcstsllen SOO c SOi 'iziü 602 siageschiossan sind and eise Da=
lSy ©iae psograszalörbars Schill-its te I Ie mvä sine
BAD 6 :: S 3 5 ^- / ü "; 9 U
Unterbrechungs-Schnittstelle repräsentieren. Die Anschlußstellen
F and E weisen Schnittstellen auf, die einen Anschluß von Multiplexer- oder Prozessormodulen gemäß Figur 1 gestatten. Im Hinblick
auf die vorliegende Erfindung kann der Zentralprozessor 700 in herkömmlicher Weise aufgebaut sein und in seiner Ausführung
dem in der US-PS 3 413 613 beschriebenen Prozessor entsprechen. Im bevorzugten Ausführungsbeispiel löst der E/A-Prozessor
200 Kanalprogramme aus und beendigt diese, wobei die Kanalprogramme für die Ausführung von E/A-Befehlen erforderlich sindj
und er verarbeitet Unterbrechungsanforderungen, die er von der System-Schnittstelleneinheit 100 erhält und schließlich steuert
er periphere an den Niedriggeschwindigkeitsmultiplexer 400 angeschlossene
Geräte. Der Prozessor 200 ist über die Datenschnittstelle 600 und die Unterbrechungs-Schnittstelle 602 mit der Anschlußstelle
H verbunden. Der 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 eines:
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, Kartenstanser
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 Band= elnheiten 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
CiUE-301-1 an verschiedene Anschlußstellen 0-3 angeschlossen.
&3r aiochgeschwindigkeitsmultiplessesr 300 ist mit der AnschlußcäelüLs
Ä über eine Datenschnittstelie 600, eine programmierbare
Schnittstelle ßO1 und eine Ünterbrechungs-Schaittstelle 602 angeschlossen«.
»Jeder der Kanal-Steusradapter 303-306 kann so aus=·
gsMMefc sein, wie aiss ia ösr swor srwaSmfceis OS=PS 3 742 457
beschrieben ist. Γ- Q g Q £! £ / Q 7 Q Π
Wie zuvor erwähnt, ist jeder der Module an verschiedene Anschlußstellen
der System-Schnittstelleinheit 100 angeschlossen. Die Schnittstelleneinheit 100 steuert die Verbindung der verschiedenen
Module untereinander über Datenübertragungswege, die die Übertragung von Daten und die Steuerung von Information zwischen
Paaren von Modulen gestatten. Im Hinblick auf die vorliegende Erfindung kann die Systemschnittstelleneinheit 100 als ein
Schaltnetzwerk betrachtet werden, das jedem aktiven Modul die übertragung von Daten zu und aus einem internen Speichermodul
gestattet, falls der anfordernde Modul die höchste Priorität aufweist und durch den nächsten verfügbaren Speicherzyklus freigegeben
ist. Zu diesem Zweck weist die Schnittstelleneinheit 100 Prioritäts-Logikschaltkreise auf, die die relative Priorität der
Anforderung durch jeden der aktiven Module festeilen und den nächsten verfügbaren Speicherzyklus der höchsten empfangenen
Prioritätsanforderung zuordnen. Die Schnittstelleneinheit 100 weist zusätzlich Unterbrechungsprioritäts-Schaltkreise auf, welche
die relative Priorität der von den Modulen empfangenen ünterbrechungsanforderungen
feststellen und die höchste Prioritätsanforderung auswählen und über ein Schaltnetzwerk zu dem Prozessor
200 weiterleiten.
Anschluß-Schnittstellen
Bevor die verschiedenen Module gemäß Figur 1 näher beschrieben werden, sollen anhand der Figuren 5a-5d die Schnittstellen 600-603
näher erläutert werden. Gemäß Figur 5a ist ersichtlich, daß die dort dargestellten Leitungen die Datenschnittstelle darstellen,
die eine der Schnittstellen bildet, die für den Austausch von Information zwischen einem aktiven Modul und der
System-Schnittstelleneinheit 100 erforderlich sind. Der Informationsaustausch wird durch -Steuerung des logischen Zustandes der
verschiedenen Signalleitungen verwirklicht:, wobei diese Steuerung
in Übereinstimmung mit zuvor errichteten Regeln erfolgt, die in einer als "Dialog" bezeichneten Signalfolge enthalten sind.
609884/0790
Gemäß Figur 5a umfaßt die Schnittstelle mehrere Leitungen mit folgender Bedeutung: Aktive Ausgangs-Anschluß-Anforderung AOPR/
Daten zur Schnittstelleneinheit DTS OO-DTS 35, P0-P3,* Steuerung
von Daten zur Schnittstelleneinheit SDTS 0-6, P/identifizierte
Mehrfachanschlüsse zur Schnittstelleneinheit MITS 0-3, P/ aktive Anforderung angenommen ÄRA,· gelesene Daten angenommen ARDA;
Daten von der Schnittstelleneinheit DFS 00-35, P0-P3; Mehrfachanschluß-Identifizierer
von der Schnittstelleneinheit, MIES 0-3, P; Doppelpräzision von der Schnittstelleneinheit DPFS und Status
angenommen AST. Die Beschreibung der Schnittstellenleitungen erfolgt im nachstehenden Abschnitt in näheren Einzelheiten.
Daten-Schnittstellen-Leitungen
Bezeichnung
DTS 00-34, PO-P3
SDTS 0-6, P
Beschreibung
Diese Leitung dient der übertragung einer aktiven Ausgangs-Anschluß-Anforderung in
einer Richtung, die sich-von jedem der aktiven Module zu der Schnittstelleneinheit SIU-100
erstreckt. Wenn diese Leitung gesetzt ist, so signalisiert sie der Schnittstelleneinheit 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 jedem der aktiven Module und der Schnittstellenheit SIU
erstrecken und die zur übertragung von Anweisungen oder Daten von jedem aktiven Modul zu
der Schnittstelleneinheit SIU-100 benutzt werden.
Diese Leitungen erstrecken sich von jedem aktiven Modul nach der Schnittstelleneinheit SIU-100.
Sie dienen der Steuerung von Daten zur
609884/0790
Schnittstelleneinheit und sie werden benutzt, um die Schnittstelleneinheit SIU-100 mit Steuerinformation
zu versorgen, wenn die Leitung AOPR gesetzt ist. Die Steuerinformation besteht aus sieben
Bits und einem Paritäts-Bit, welche in folgender Weise codiert sind:
a) Der Zustand des Bits 0 gibt die Art der Anweisung an, die über die DTS-Leitung zugeführt
wird. Die Anweisung kann hierbei eine programmierbare Schnittstellenanweisung oder eine
Speicheranweisung sein.
b) Die Bits 1*-4 geben durch ihre Codierung an,
welcher der Module die Anweisung empfangen und interpretieren soll (Speicheranweisungen
werden nur durch Speichermodule und programmierbare Schnittstellenanweisungen werden durch
alle Module außer dem E/A-Prozessor 200 interpretiert) .
c) Der Zustand des Bits 5 zeigt an, ob ein oder zwei Worte der Anweisungsinformation zwischen
dem anfordernden aktiven Modul und dem ausgewählten empfangenden Modul übertragen werden
sollen (ein Wort bestimmt eine Übertragung mit einfacher Präzision und zwei Worte bestimmen eine
übertragung mit doppelter Präzision).
d) Der Zustand des Bits 6 zeigt die Richtung der übertragung zwischen dem anfordernden Modul
und dem ausgewählten empfangenden Modul an.
e) Das Bit P ist ein Paritäts-Bit, das von dem anfordernden aktiven Modul erzeugt wird und von
einer in der Schnittstelleneinheit SIU-100 enthaltenen
Anordnung geprüft wird.
MITS 0-3, P Diese Leitungen erstrecken sich von dem aktiven
Modul zu der Schnittstellenheit SIü-100. Sie
zeigen durch ihre Codierung an, welcher Unterkanal oder Anschluß innerhalb eines aktiven
609884/0790
DFS 00-35, P0-P3
MIFS 0-3, P
Moduls das Setzen der Leitungen AOPR verursacht hat.
Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU-100 zu jedem der aktiven
Module. Diese Leitung wird gesetzt, um anzuzeigen, daß der ausgewählte empfangende Modul
die Anforderung durch den aktiven Modul angenommen hat, wodurch dem Modul gestattet wird,
die angeforderte- Information von den Daten-Sctnittstellenleitungen
zu entfernen. Diese Leitung erstreckt sich von der Schnittstelleneinheit SIU zu jedem der aktiven Module
und sie wird durch die Schnittstelleneinheit gesetzt, um den aktiven Modul anzuzeigen, daß
er die zuvor angeforderten Daten eines ausgewählten Moduls anzunehmen hat.
Die Daten von der Schnittstelleneinheit werden auf einem anderen Satz von Datenübertragungsleitungen
übertragen, welche eine Breite von vier Bytesaufweisen und sich in einer Richtung
von der Schnittstelleneinheit zu jedem aktiven Modul erstrecken. Diese Gruppe von Leitungen
wird von der Schnittstelleneinheit SIU-100 benutzt, um gelesene Daten zu einem ausgewählten
aktiven Modul zu übertragen.
Diese vier Mehrfachanschluß-Bestimmungsleitungen 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-Leitung erstreckt sich von der Schnittstelleneinheit SIU zu jedem der
aktiven Module. Durch den Zustand dieser Lei tung wird angezeigt, ob ein oder zwei Worte der
gelesenen Daten von dem aktiven Modul zur Ver-
609884/0790
vollständigung einer übertragung aufzunehmen sind (Leseanweisung)
AST Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 zu jedem aktiven Modul
und ihr Zustand, der wechselseitig exklusiv zu der Leitung AÜOA istf 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 übertragung
wird durch die Steuerung der logischen Zustände der verschiedenen Signalleitungenbewerkstelligt, wobei dies in Übereinstimmung
mit zuvor errichteten Regeln erfolgt, die eine als "Dialog? bezeichnete
Signalfolge ausführen. Die programmierbare Schnittstelle umfaßt verschiedene Leitungen, denen folgende Bedeutung zugeordnet
ist: Programmierbare Schnittstellenanweisungen angenommen APC; programmiere Schnittstellendaten von der Schnittstelleneinheit SIU
PDFS 00-35;. P0rP3; programmierbare Schnittstelle bereit PIR; Anforderung
der übertragung gelesener Daten RDTR; programmierbare Schnittstellendaten zu der Schnittstelleneinheit SIU PDTS 00-35;
PO-P3 und gelesene Daten angenommen RDAA. Eine Beschreibung der Schnittstellenleitungen wird nachfolgend in näheren Einzelheiten
gegeben.
Programmierbare Schnittstellenleitungen
Bezeichnung Beschreibung
APC Diese Leitung erstreckt sich von der Schnitt
stelleneinheit SIU-100 zu jedem empfangenden Modul und sie signalisiert im gesetzten Zustand
dem Modul, daß Anweisungsinformation den PDFS-Leitungen der Schnittstelle durch die Schnittstelleneinheit
SIU zugeführt worden ist und durch den Modul aufgenommen werden soll.
609884/0790
PDFS 00-35, P0-P3 Diese Leitungen weisen eine Breite von vier
Bytes auf und sie erstrecken sich in einer Richtung von der Schnittstelleneinheit SIU-100
zu jedem Modul. Sie führen einem ausgewählten empfangenden Modul programmierbare Schnittstelleninformation
von der System-Schnitteinheit SIU-100 zu.
PIR Diese Leitungen erstrecken sich von jedem Modul
zu der Schnittstelleneinheit SIU-100 und sie zeigen im gesetzten Zustand an, daß der Modul
bereit ist, eine über die Leitung 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 Leitungen werden zur Übertragung von programmierbarer Schnittstelleninformation
zu der Schnittstelleneinheit SIU-100 benutzt.
RDTR Diese Leitung erstreckt sich von jedem Modul,
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-Schnittstelle
602 dargestellt, die für die Unterbrechungsverarbeitung durch den E/A-Prozessor 200 vorgesehen ist. Diese Schnitt-
609884/079 0
- ι4 - 2623266
stelle gestattet die übertragung von Unterbrechungsinformation
von einem aktiven Modul zu der Schnittstelleneinheit SIU-100
sowie die übertragung von Unterbrechungsinformation von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor 200 zwecks
Verarbeitung. Entsprechend den anderen Schnittstellen wird die übertragung der Unterbrechungsanforderung durch Steuerung der
logischen Zustände der verschiedenen Signalleitungen verwirklicht, wobei dies in Übereinstimmung mit zuvor errichteten Regeln
erfolgt, die durch eine als "Dialog" bezeichnete Signalfolge ausgeführt werden. Die Unterbrechungsschnittstelle weist verschiedene
Leitungen mit folgender Bedeutung auf: Unterbrechungsanforderung
IR; Unterbrechungsdaten IDA 00-11, PO-P1 und Unterbrechungs-Mehrfachanschluß-Identifizierer
IMID 00-03 für an die Anschlüsse A bis D angeschlossene Module. Hinsichtlich der an
die Anschlüsse G und H angeschlossenen Module weist die Unterbrechungsschnittstelle
ferner Leitungen mit folgender Bedeutung auf: Pegel Null vorhanden LZP; höhere Pegelunterbrechung vorhanden
HLIP; Unterbrechungsdaten-Anforderung IDR/ Freigabe RLS und aktiver Unterbrechungspegel AILO-2. Wie aus Figur 5c hervorgeht, weisen die Unterbrechungsschnittstellen-Anschlüsse G und H
keine Unterbrechungs-Mehrfachanschluß-Identifiziererleitung auf.
Eine Beschreibung der Unterbrechungs-Schnittstellenleitungen erfolgt nachstehend in näheren Einzelheiten.
Unterbrechungs-Schnittstellenleitungen
Bezeichnung Beschreibung
IR Diese Leitung erstreckt sich von jedem Modul
nach der Schnittstelleneinheit 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 Schnittstelleneinheit
SIU-100. Durch ihre Codierung enthalten diese Leitungen Steuerinformation,
deren übertragung nach dem E/A-Prozessor angefordert wird, wenn eine Unterbrechungsanforde-609884/0790
IMID 00-03
rung von dem Prozessor angenommen worden ist. Diese Bits sind wie folgt.codiert:
a)Der Zustand des Bits 0 signalisiert der Schnittstelleneinheit SIUtIOO, welcher der beiden
Prozessoren die Unterbrechungsanforderung verarbeiten soll.
b)Die Bits 1-3 zeigen durch ihre Codierung die Priorität oder die Pegelnummer der Unterbrechungsanforderung
der Schnittstelleneinheit 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 ist (z.B. eine UnterbrechungsSteuerblocknummer
ICBN)
e)das Bit P1 ist ein Paritäts-Bit für die Bits
e)das Bit P1 ist ein Paritäts-Bit für die 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ß durch
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 200 bearbeiteten Prozesses vorliegt.
609884/0790
IDR Diese Leitung erstreckt sich von dem E/A
Prozessor 200 nach der Schnittstelleneinheit SIU-100 und sie zeigt im "gesetzten Zustand an,
daß von der Schnittstelleneinheit SIU-100 auf den Leitungen DFS Unterbrechungsdaten nach dem
Prozessor zu senden sind.
RLS Diese Leitung erstreckt sich von dem E/A
Prozessor 200 nach der Schnittstelleneinheit SIU-100 und sie zeigt im gesetzten Zustand an,
daß der Prozessor 200 die Ausführung der laufenden Prozedur beendet hat.
AIL 0-2 Die den aktiven Unterbrechungspegel führenden
Leitungen erstrecken sich von der Schnittstelleneinheit SIU-100 zu dem E/A-Prozessor
200. Diese Leitungen geben durch ihre Codierung die Unterbrechungspegelnummer der auf dem Prozessor
200 auszuführenden Prozedur an.
Eine letzte Gruppe von Schnittstellenleitungen, die von bestimmten
Modulen gemäß Figur 1 benutzt wird, wird durch interne Speicherschnittstellen-Leitungen
gemäß Figur 5d repräsentiert. Die interne Speicherschnittstelle 603 dient dem Informationsaustausch
zwischen dem internen Speicher 500 und den Modulen des Systems. Der Informationsaustausch wird durch Steuerung der logischen
Zustände der verschiedenen Signal-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/
Übertragungsanforderung gelesener Daten RDTR/ Daten vom Speicher DFM 00-35, P0-P3/ Anforderungsidentifizierer vom Speicher RIFM
07-, PO-P1/ Doppelpräzision, vom Speicher DPFM/QUAD/ gelesene
60S884/0790
Daten angenommen RDAA und Systemtakt SYS-CLK.
Speicher- und programmierbare Schnittstellenanweisung werden über die gleichen Datenleitungen der Schnittstelle übertragen. Die
Schnittstelle weist keine Leitungsgruppe zur Verarbeitung von Unterbrechungsanforderungen auf, so daß die an den internen
Speicher über die Schnittstelleneinheit SIU-100 angeschlossenen
Module nicht direkt eine Speicherunterbrechung veurSachen können.
Eine Beschreibung der internen Speicherschnittstellenleitungen wird nachstehend in näheren Einzelheiten gegeben.
Interne Speicher-Schnittstellenleitungen
Bezeichnung DTM 00-35, P0-P3
RITM 0-3, PO RITM 4-7, P1
SLTM 0-3, P
Beschreibung
auf,
Diese Leitungen weisen eine Breite von 4 Bytes (36 Informations leitungen und vier ungerade
Paritätsleitungen), die sich in einer Richtung von der Schnittstelleneinheit SIU-100 nach dem
internen Speicher 500 erstrecken. Diese Leitungen werden zur Übertragung von Speicheroder
programmierbaren Schnittstellenanweisungen zu dem internen Speicher 500 benutzt.
Diese Leitungen bilden zwei Gruppen mit vier Leitungen, welche sich von der Schnittstelleneinheit
SIU-100 nach dem internen Speicher 500 erstrecken und der Anforderungsxdentifizierung
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ßnummer-Auswahlleitungen,
eine Lese/Schreib-Leitung zum Speicher, eine Doppelpräzisionsleitung zum Speicher und eine ParItätsleitung. Die diesen
Leitungen aufgeprägten Informationssignale sind 609884/0790
folgendermaßen codiert:
a) Die Bits 0-1 stellen Anschlußnummer-Auswahl-Bits dar, die durch ihre Codierung anzeigen,
welcher Anschluß oder Unterkanal innerhalb des beigefügten Moduls die zu dem Modul gesendete
Speicheranweisung empfangen oder interpretieren soll.
b) Bit 2 ist ein Lese/Schreib-Bit zum Speicher, das in der von dem aktiven Modul empfangenen
Steuerinformation enthalten ist und von der Schnittstelleneinheit SIU nach dem internen
Speicher. 500 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 übertragen wird, wenn eine neue Anweisung nach dem
Speichermodul abgesendet 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 Schnittstelleneinheit SIU-100 auf den anderen
Leitungen angebotene ZAC-Anweisung und Steuerinformation anzunehmen ist. Das Setzen dieser
Schnittstellenleitungen erfolgt wechselseitig . exklusiv mit dem Setzen der Schnittstellenleitung APC.
609884/0790
APC Diese Leitung dient der Annahme einer pro
grammierbaren Schnittstellenanweisung und sie erstreckt sich von der Schnittstelleneinheit
SIU-100 nach dem internen Speichermodul 500. Im gesetzten Zustand zeigt diese Leitung an,
daß die auf den Leitungen DTM vorliegende Anweisungsinformation von dem internen Speichermodul
500 anzunehmen ist.
Diese Leitung signalisiert die Bereitschaft der programmierbaren Schnittstelle und sie erstreckt
sich von dem internen Speichermodul 500 zu der Schnittstelleneinheit SIU-100. Im
gesetzten Zustand zeigt diese Leitung der Schnittstelleneinheit SIU-100 an, daß der interne
Speichermodul 500 in der Lage ist, eine programmierbare Schnittstellenanweisung 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
angeforderten.gelesenen Daten zusammen
mit der erforderlichen Steuerinformation verfügbar sind und zu dem die Daten anfordernden
Modul gesendet werden können.
DFM 00-35, P0-P3 Diese Leitungen weisen eine Breite von 4 Bytes
auf und sie erstrecken sich in einer Richtung von dem internen Speichermodul 500 nach der
Schnittstelleneinheit SIU-100. Diese Leitungen
werden zur Rückholung angeforderter Lesedaten in einen aktiven Modul über die Schnittstelleneinheit
SIU-100 benutzt.
Die beiden Gruppen von Leitungen erstrecken sich von dem internen Speichermodul 500 nach
der Schnittstelleneinheit SIU-100. Diese Leitungen werden benutzt, um die gelesenen Daten
aus dem Modul 500 zurück nach dem anfordernden Modul zu leiten.
609884/0790
609884/0790
RIFM 0-3, PO
RIFM 4-7, P1
DPFM und QUAD
Die Doppelpräzisionsleitung vom Speicher und die QUAD-Leitung erstrecken sich von dem internen
Speichermodul 500 nach der Schnittstelleneinheit SIU-100. Diese Leitungen zeigen
durch ihre Codierung die Anzahl der Worte an, die über die Schnittstelleneinheit SIU-100 zu
dem anfordernden Modul während des Zeitintervalles der Übertragungsanforderung der gelesenen
Daten zu übertragen sind. Diese Leitungen sind folgendermaßen codiert:
QUAD, DPFM
0 0 ein Wort, Einfachpräzision
QUAD, DPFM
0 0 ein Wort, Einfachpräzision
0 1 zwei Worte, Doppelpräzision
1 X vier Worte
Diese Leitung für die Statusidentifikation der gelesenen Daten erstreckt sich von dem internen
Speichermodul 500 nach der Schnittstelleneintieit 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 vord 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-
609884/0790
Stellenleitungen ausgegebenen Daten angenommen worden sind und daß er daher diese Daten auf
den Leitungen wegnehmen kann.
SYS-CLK Die Systemtakt-Leitung erstreckt sich von der
Schnittstelleneinheit SIU-100 nach jedem Modul des Systems. Diese Leitung ist an eine Takt-.geberquelle
innerhalb des E/A-Prozessors 200 angeschlossen und sie dient der Synchronisation
der Operationen eines jeden Speichermoduls durch den gemeinsamen Systemtakt.
Während die Figuren 5a bis 5d diejenigen Leitungen zeigen, welche die verschiedenen Module des 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 Betriebszuständen. Nachdem die verschiedenen von den Modulen gemäß Figur 1
benutzten Arten von Schnittstellen beschrieben worden sind, soll nunmehr eine nähere Beschreibung der einzelnen Module gegeben
werden.
E/A-Prozesscr 200
Gemäß Figur 2 weist der Prozessor 200 einen mikroprogrammierten Steuerabschnitt 201 auf, der in Abhängigkeit von in einem Steuerspeicher
201-10 gespeicherten Mikrobefehlen Steuersignale für die Ausführung von Befehlen erzeugt. Ferner umfaßt der Prozessor 200
einen Befehls-Pufferabschnitt 202 zur Speicherung von aus dem internen Speichermodul 500 abgerufenen Befehlen, einen Speicherabschnitt
203 und einen Verarbeitungsabschnitt 204 zur Ausführung arithmetischer und logischer Operationen unter Steuerung von in
dem Steuer speicher 201-10 gespeicherten Mikrogrogr aminen.
Steuerspeicherabschnitt 201
Der Steuerspeicher 201-10 besteht beispielsweise aus Abschnitten
eines Festwertspeichers ROM. Der Steuerspeicher 201-10 ist über
. 609884/0790
Signale von irgendeiner von acht Ursprungsadressenadressierbar,
die an einem Auswahlschalter 201-14 verfügbar sind. Der Inhalt der adressierten Speicherplätze wird in ein Ausgangsregister
201-15 ausgelesen und durch in einem Block 201-16 enthaltene Decodierschaltkreise decodiert. Zusätzlich werden Signale von
einem der Felder des den Mikrobefehl enthaltenden Registers 201-15 als Eingangssignale für den Schalter 201-14 benutzt, um eine der
acht Ursprungsadressen als Adresse für den Steuerspeicher 201-10 auszuwählen. Die in das Register 201-15 eingelesenen Mikrobefehle
weisen Adresskonstanten auf zum Verzweigen des Steuerspeichers 201-10 auf geeignete Mikroprogrammroutinen.
Wie aus Figur 2 ersichtlich, sind folgende Steuerspeicher-Ursprungsadressen vorgesehen: Unterbrechungs/Ausnahmesignale, die von Signalen
abgeleitet werden, die von der System-Schnittstelleneinheit 100 und von Schaltkreisen innerhalb des Prozessors 200 erzeugt
werden; eine Nächst-Adressregisterposition, die an die über einen Addierschaltkreis 201-24 in ein Register 201-22 eingespeicherte
Nächst-Adresseninformation angeschlossen ist? eine Rückkehradressregisterposition,
der der Inhalt eines Rückkehrregisters 201-20 als Rückkehradresse zugeführt ist; eine Ausführungs-Adressregisterposition,
der von einem Wegsucherspeicher 201-2 über ein Speicherausgangsregister 201-4 eine Adresse zugeführt
wird; eine Folgeadressregisterposition, die die Adresse ebenfalls aus dem Register 201-4 erhält und eine Konstantenposition, der
ein Konstantenwert aus dem Ausgangsregister 201-15 zugeführt wird.
Die geeignete nächste Adresse wird durch den Addierschaltkreis 201-24 erzeugt, dem als ein Operandeneingang Adressignale in
Form einer durch den Schalter 201-14 ausgewählten Ursprungsadresse" und als ein anderer Operand Signale von Sprung. «^Steuer-Schaltkreisen
eines Blockes 201-26 zugeführt werden. Die Sprung-Steuerschaltkreise werden durch in dem Steuerspeicherregister
201-15 gespeicherte Konstantensignale beeinflußt und sie erzeugen einen geeigneten Wert als einen Operandeneingang für den
Addierschaltkreis 201-24. Die durch den Addierschaltkreis 201*24
609884/0790
erzeugte resultierende Adresse ergibt sich als Summe von durch den Schalter 201-14 ausgewählten Adressen und von Konstantensignalen,
die durch die Sprung-Steuerschaltkreise des Blockes 201-26 erzeugt werden. Die verschiedenen Positionen des Schalters
201-14 werden in Abhängigkeit von aus dem Steuerspeicher 201-10 ausgelesenen Mikrobefehlen ausgewählt, um wiederum geeignete
Adressenfür in dem Steuerspeicher 201-10 gespeicherte
Mikroprogramme zu erzeugen, wobei diese Mikroprogramme für die Ausführung einer Operation erforderlich sind, die durch den Operationscode
eines Programmbefehls bestimmt ist. Der Operationscode des Befehls wird dem Wegsucherspeicher 201-2 über den Datenweg
201-6 zugeführt. Die Rückkehr-Adressregisterposition des Schalters 201-14 wird während der Programmfolge als Folge einer
Verzweigungsoperation ausgewählt, während die 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 Signalleitungen,
welche das Vorhandensein einer Unterbrechung (LZP und HLP) anzeigen, wählen eine Unterbrechungsfolge von Mikrobefehlen anstelle
der Mikrobefehlsfolge für die Ausführung des nächsten Programmbefehles aus.
60988 4/0790
Ausnahmen anzeigende Signalleitungen sind an nicht dargestellte Steuerschaltkreise angeschlossen, die dem Schalter 201-14 zugeordnet
sind und verursachen die Auswahl der Ausnahme/Unterbrechungsposition.
Dies führt zu einer Adresse zur Bezugnahme auf eine Ausnahmefolge von Mikrobefehlen. In Abhängigkeit von dem
Ausführungstyp kann die Ausnahme sofort verarbeitet werden, da die weitere Ausführung des Programmbefehles verhindert werden
muß oder nicht möglich ist (z.B. Fehler, illegale Befehle). Die
Ausnahme wira Beendigung der Ausführung des Programmbefehles verarbeitet, wenn der Zustand keine sofortige Beachtung erfordert
(z.B. Zeitablauf, Überlauf usw.) . Der Auftritt von Ausnahmen verursacht
die Auswahl der Ausnahme/Unterbrechungsposition des Schalters 201-14 und das Setzen einer entsprechenden Bit-Position
im Prozeßsteuerregister 204-22.
Mit PDA in Figur 2 bezeichnete Zeittaktsignale werden durch Taktschaltkreise
innerhalb eines Blockes 201-30 erzeugt und sie dienen der Vorgabe geeigneter Speicherzyklen für den Steuerabschnitt
201 sowie als Zeittaktsignale für den Betrieb der anderen Abschnitte des Prozessors 200 und der anderen Module des Systems
gemäß Figur 1. Im Falle der vorliegenden Erfindung können die
Taktschaltkreise ebenso wie die anderen Schaltkreise gemäß Figur 2 als herkömmliche Schaltkreise ausgebildet sein, wie sie
beispielsweise in der Veröffentlichung "The Integrated Circuits Catalog· for Design Engineers" von Texas Instruments, Inc.,1972
beschrieben sind. Insbesondere können die Taktschaltkreise einen quarzgesteuerten Oszillator und Zählerschaltkreise, aufweisen,
während der Zähler 201-14 aus mehreren Daten-Selektor/Multiplexer-Schaltkreisen
bestehen kann.
Aus Vorstehendem ergibt sich, daß bei den meisten durch Mikroprogramme
gesteuerten Maschinen der Steuerspeicher 201-10 die erforderliche Steuerung eines jeden Prozessors pro Operationszyklus übernimmt. Zu diesem Zweck wird jedes Mikrobefehlswort,
das aus dem Steuerspeicher 201-10 herausgelesen wird, während eines Operationszyklus in einer Anzahl getrennter Steuerfelder
609884/0790
unterteilt, die die erforderlichen Eingangssignale für die verschiedenen
Auswahlschalter gemäß Figur 2 erzeugen. Diese Schalter werden zur Adressierung der verschiedenen Zwischenspeicher
und für die Auswahl der Operanden benutzt. Die Steuerfelder erzeugen ferner Signale zum Festlegen verschiedener Testbedingungen
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 Registern202-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 Vollwortbasis wird in Abhängigkeit von dem Zustand der Bit-Positionen in dem
laufenden Befehlszähler IC getroffen, der normalerweise in einem ersten Register der Arbeitsregister des Blockes 204-12 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.
609884/0790
Der Zwischenspeicher 203-10 wird über einen Daten-Auswahlschalter 203-14 mit acht Schaltstellungen adressiert, wodurch den Adresseingängen
203-12 selektiv eine 7-Bit-Adresse aus einer der acht
Ursprungsadressen zugeführt wird. Die drei höchstrangigsten Bit-Positionen der Adresseingänge 203-12 wählen eine der acht Registergruppen aus, während die verbleibenden vier Bits eines der 16 Register auswählen. Die von der Schnittstelleneinheit SIU-100 auf den Leitungen AIL erzeugten Signale führen die drei höchstrangigsten Bits den Adresseingängen 203-12 des Zwischenspeichers zu. Die verbleibenden Signale werden von dem SteuerSpeicherregister 201-15 oder Felder des über IRSW zugeführten Befehls
erzeugt.
Ursprungsadressen zugeführt wird. Die drei höchstrangigsten Bit-Positionen der Adresseingänge 203-12 wählen eine der acht Registergruppen aus, während die verbleibenden vier Bits eines der 16 Register auswählen. Die von der Schnittstelleneinheit SIU-100 auf den Leitungen AIL erzeugten Signale führen die drei höchstrangigsten Bits den Adresseingängen 203-12 des Zwischenspeichers zu. Die verbleibenden Signale werden von dem SteuerSpeicherregister 201-15 oder Felder des über IRSW zugeführten Befehls
erzeugt.
Das Schreib-Adressregister 203-22 wird über den Schalter 202-4
geladen, um Signale entsprechend den Bits 9-12 oder den Bits 14-17 des laufenden Programmbefehls zu speichern, wobei dieser durch
eines der Felder des Mikrobefehls innerhalb des Registers 201-15 bestimmt wird. Das Schreib-Adressregister weist somit Adressenspeicherraum für das Laden oder das Rückführen eines Ergebnisses in eines der Allgemeinre^ister des Zwischenspeichers 203-10 auf. Die Schreiboperation wird durch ein Schreibtaktsignal ausgelöst, das entweder beim Schalten eines nicht dargestellten getakteten
Schreib-Flip-Flops auf "1" oder in Abhängigkeit eines in das Register 201-15 geladenen Feldes eines Mikrobefehls auftritt. Bei
einer Erzeugung durch das Schreib-Flip-Flop tritt das Schreibtaktsignal auf, wenn das Schreib-Flip-Flop beim Auftritt des nächsten PDA-Taktimpulses auf "0" zurückgestellt wird. Hierdurch wird eine auf einen Programmbefehl bezogene Schreiboperation während des
Beginns der Verarbeitung des nächsten Befehls gestattet.
geladen, um Signale entsprechend den Bits 9-12 oder den Bits 14-17 des laufenden Programmbefehls zu speichern, wobei dieser durch
eines der Felder des Mikrobefehls innerhalb des Registers 201-15 bestimmt wird. Das Schreib-Adressregister weist somit Adressenspeicherraum für das Laden oder das Rückführen eines Ergebnisses in eines der Allgemeinre^ister des Zwischenspeichers 203-10 auf. Die Schreiboperation wird durch ein Schreibtaktsignal ausgelöst, das entweder beim Schalten eines nicht dargestellten getakteten
Schreib-Flip-Flops auf "1" oder in Abhängigkeit eines in das Register 201-15 geladenen Feldes eines Mikrobefehls auftritt. Bei
einer Erzeugung durch das Schreib-Flip-Flop tritt das Schreibtaktsignal auf, wenn das Schreib-Flip-Flop beim Auftritt des nächsten PDA-Taktimpulses auf "0" zurückgestellt wird. Hierdurch wird eine auf einen Programmbefehl bezogene Schreiboperation während des
Beginns der Verarbeitung des nächsten Befehls gestattet.
Der Inhalt des Schreib-Adressregisters 203-22 wird über den Auswahlschalter
303-14 einem Decodiernetzwerk 203-28 zugeführt, welches jedesmal ein Signal auf einer Ausgangsleitung erzeugt, wenn
das Register 203-22 eine Adresse von 0,1 oder 15 speichert. Dieses Signal verhindert die Erzeugung eines Schreibtaktimpulses durch
nicht dargestellte Gatterschaltkreise, wenn das Schreib-Flip-Flop auf "1" gesetzt ist. Dem Decodiernetzwerk 203-28 wird zusätzlich
nicht dargestellte Gatterschaltkreise, wenn das Schreib-Flip-Flop auf "1" gesetzt ist. Dem Decodiernetzwerk 203-28 wird zusätzlich
609884/0790
von dem Prozeßzustandsregister 204-20 ein Modussignal zugeführt.
Das Modussignal zeigt an, ob der Prozessor 200 in der Hauptbzw. Nebenbetriebsweise betrieben wird;und es wird mit dem Ausgangssignal
einer UND-Verknüpfung unterzogen und zur Erzeugung eines Ausnahmesignales auf einer anderen Ausgangsleitung benutzt,
die ihrerseits als ein Eingang zu dem Prozeßsteuerregister 204-22 und auf einen Eingang, der die Auswahl der Ausnahme/Unterbrechungsposition
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
Datenauswahlschalter 203-18 mit zwei Stellungen in ein Zwischenspeicher-Pufferregister
203-16 übernommen. 0er Inhalt des Pufferregisters 203-16 wird sodann über einen weiteren Datenauswahlschalter
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 203-10 empfängt Datensignale über eine von zwei Ausgangsschienen, die
wahlweise an eines von vier Arbeitsregistern des Blockes 204-12 angeschlossen sind.
Jede Gruppe von 16 Registern weist einen Prozeßzustandsregisterspeicherplatz
(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 Übertrags-Bit-Position
und 22 Bit-Positionen für die Speicherung eines Zählstandes, der periodisch heruntergezählt wird, während der zugeordnete
Prozeß aktiv ist. Wegen der für eine Modifikation oder
609884/0790
Bezugnahme erforderlichen Frequenz des Zugriffs auf den Inhalt des Prozeßzustandsregisters sind Signale entsprechend dem Inhalt
dieses Registers in einem der Register des Verarbeitungsabschnittes 204 (z.B. Register 204-20) gespeichert. Der Speicherplatz
des Allgemeinregisters zum Speichern des Inhalts des Prozeßzustandsregisters dient daher zum Speichern des laufenden Wertes
des Prozeß-Zustandsregisters des Abschnittes 204 beim Auftritt einer Unterbrechung.
Jede Gruppe von Registern weist ferner einen Befehlszähler (Allgemeinregister
GR1) zur Speicherung der Adresse des laufenden Befehls des zugeordneten Prozesses auf. Zusätzlich weist jede
Gruppe von Registern ein Seitentabellen-Basisregister (Allgemeinregister GR15) und eine Anzahl von Allgemeinregistern (Allgemeinregister
2-14) zur temporären Speicherung von Operanden und Adressinformationen auf. Der Zwischenspeicher 203-10 umfaßt
ferner ein Register für eine Steuerblockbasis CBB, welches eine absolute Adresse speichert, die auf die Basis eines Ausnahmesteuerblockes
und auf ünterbrechungsSteuerblocktabellen im internen
Speichermodul 500 verweist. Das erste Register GRO mit der höchsten Priorität innerhalb der Gruppe von Registern, dessen
Inhalt niemals verändert wird, speichert die Steuerblockbasisinformation. Die ünterbrechungs-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 Programmbefehls entspricht, wenn der Prozessor in die Hauptbetriebsweise eintritt. In allen anderen Fällen weist die Ausnahmenummer
den Wert 0 auf. Die Ausnahmennummer (ECB-Nummer) wird zur Bestimmung eines der Ausnahmesteuerblöcke ECB mit vier Worten
benutzt, welcher auf eine Ausnahme-Verarbeitungsroutine verweist.
609384/0790
Die Byte-Adresse eines Ausnahmesteuerblockes ECB entspricht der Steuerblockbasis CBB-16 (ECB-Nummer -1). Jeder Ausnahmesteuerblock
ECB weist Werte zum Laden der Register PSR, IC und PTBR auf sowie zusätzlich einen Wert für eine Sicherungsbereich-Hinweisadresse,
die als Stapelbereich für die Speicherung von Information
dient, die dem laufenden Prozeß zugeordnet ist, bevor der Prozessor 200 in die Ausnahmeroutine eintritt. Die Adresse eines
Unterbrechungs-Steuerblockes ICB entspricht der Steuerblockbasis
CBB + 16 (ICB-Nummer). Die ICB-Nummer wird aus dem Unterbrechungswort in der erläuterten Weise gewonnen. Der Unterbrechungssteuerblock
stellt ebenfalls einen Block von vier Worten dar und er enthält Werte für die Register PSR,. IC, GR14 und PTBR.
Verarbeitungsabschnitt 204
In diesem Abschnitt werden alle arithmetischen und logischen Operationen
durchgeführt, die von den Programmbefehlen des Prozesses gefordert werden. Der Abschnitt 204 umfaßt eine Addier/Verschiebeeinheit
204-1, die in der Lage ist, arithmetische, Verschiebe- und logische Operationen mit einem Paar Operanden von 36 Bit 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. Das Daten-Ausgangsregister 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
WRPund WRR angeschlossen. Die WRP-Schiene ist an Adresseingänge
2O4-5jan den Schalter 2O3-T8 und den Zwischenspeicher 203-10 an-
cnnoo/ fntnn
geschlossen. Die WRR-Schiene ist an den Α-Operandenschalter -.■■-,
203-20, den B-Operandenschalter 204-1, an das Register 204-20
und an das Register 204-22 angeschlossen. Die zum Anschluß an
die WRR- und WRP-Schienen ausgewählten Register werden durch ein Feldpaar eines Mikrobefehls bestimmt, der aus dem Register 201-15
ausgelesen wird.
Gemäß Figur 2 weist der Verarbeitungsabscbnitt 204 ein Prozeßzustandsregister 204-20 und ein Prozeßsteuerregister 204-22 auf.
Das Prozeßzustandsregister 204-20 wird in der erwähnten Weise
über die Ausgangsschiene WRR vom Zwischenspeicher .203-10 geladen.
Das Prozeßsteuerregister 204-22 ist ein 36-Bit-Register, das
allen acht Unterbrechungspegeln gemeinsam ist. Die Bit-Positionen
des Prozeßsteuerregisters 204-22 enthalten die folgende Information. Die Bit-Positionen 0-8 bestimmen folgende verschiedene 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 ARDA. .
1 Seitenadress-Grenzfehler (Kennschlüsselprüfung)
2 Seiten-Zugriffsfehler
3 Seite im Speicher nicht vorhanden
4 Illegale Operation
■ 5 Prozeß-Zeitgeber-Ablauf
6 Überlauf
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ätsfehler
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-
ennoo/: /nion
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. Bit 28 = Pegel 0). Die Bit-Positionen 27-35 können durch einen Programmbefehl über die Ausgangsschiene
WRR aus der Reihe von Registern des Blockes 204-12 geladen werden. Die Inhalte eines jeden Registers 204-20 und
204-22 werden selektiv über einen Datenauswahlschalter 204-24 mit zwei Positionen einer der Positionen des Datenauswahlschalters
204-8 zugeführt. Das Register 204-20 ist ferner mit der PI-Position eines zweistufigen Steuerungs-Auswahlschalters 204-10
und eines vierstufigen Adressen-Auswahlschalters 204-6 verbunden. Der Steuerungsschalter 204-10 erzeugt Steuerungsinformation für
die Schnittstelleneinheit SIU-100, 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 Schnittstellenanweisung aus. Die Steuerungsinformation
für eine Speicheranweisung wird erzeugt durch Felder innerhalb
des Mikrobefehls und durch seitenunterteilte Adresseninformation vom Zwischenspeicher 204-4 oder durch absolute Adresseninformation
von der Schiene WRP. Im Falle einer programmierbaren Schnittstellenanweisung wird die Steuerungsinformation wie
folgt erzeugt: Das Bit 0 wird bei einer programmierbaren Schnittstellenanweisung
zwangsläufig auf den Wert "1" gesetzt; die Bits 1-4 entsprechen den Bits 0-3 des Registers 204-20 und die Bits
5-6 entsprechen den Bits eines der Felder des Mikrobefehles, die durch ihre Codierung angeben, ob eine Einfach- oder Doppelwortübertragung
vorliegt und ob es sich bei der Operation um einen Lese- oder Schreibzyklus handelt. Beim Start eines Speicherzyklus oder bei der Auslösung einer Anweisung werden die Signale
des Steuerungsschalters 204-10 in ein Steuerungsregister 204-16
geladen, das die Signale den geeigneten Leitungen der 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-
609884/0790
baren Schnittstellenanweisung erzeugt.
Wie der Figur 2 weiterhin entnehmbar ist, umfaßt der Verarbeitungsabschnitt
204 einen Zwischenspeicher 204-4, der über Adresseingänge 204-5 adressierbar ist. Der Zwischenspeicher 204-4 gestattet
eine Seitentabellen-Adresspeicherung für jeden der acht 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 Adressenschalters 204-6 bei Auswahl durch
ein Adressen-Steuerfeld eines im Register 201-15 gespeicherten Mikrobefehlswortes zur Erzeugung der Lese/Schreib-Speicheranweisung
benutzt, die Bits 0-8 mit einer Codierung entsprechend den vorbestimmten Feldern des Mikrobefehlswortes umfaßt und ferner
Bits 9-35 aufweist, die aufgrund ihrer Codierung entweder der seitenunterteilten Adresseninformation des Speichers 204-4 oder
den absoluten Adressen-Bits entsprechen, wie sie von den Arbeitsregistern des Blockes 204-12 auf der Ausgangsschiene WRP ausgegeben
werden. Wird die PI-Position des Schalters 204-6 ausgewählt, so erzeugt der Schalter eine programmierbare Schnittstellenanweisung
mit folgenden Bits: Bit 0 weist den Wert "0" auf/ Bit1 wird aus einem Feld eines Mikrobefehls zugeführt, der
in dem Register 201-15 gespeichert ist/ Bit 2 wird dem Bit 9 des PSR-Registers 204-20 entnommen und bestimmt, ob der ablaufende
Prozeß gewisse externe Register verändern kann/ Bits 5-8 entsprechen
den Bits 4-7 des Registers 204-20 und sie bestimmen den Anschluß oder Unterkanal innerhalb des Moduls; Bit 3 bestimmt
609884/0790
durch seine Codierung die Prozessor-Paarnummer, die von der
Schnittstelleneinheit SIU-100 angewählt wurde/ Bit 4 weist den Wert "0" auf und die Bits 9-35 entsprechen den Bits 9-35 der
S'chiene WRP, die die absolute Adresse der programmierbaren
Schnittstellenanweisung liefert.
System-Schnittstelleneinheit 100
Unterbrechungsabschnitt 101
Die System-Schnittstelleneinheit 100 dient dem Nachrichtenaustausch
zwischen den Modulen des Systems gemäß Figur 1 über mehrere Doppelkanalschalter. Verschiedene Doppelkanalschalter werden
zum Sammeln der Signale auf den Leitungen der verschiedenen Schnittstellen der Module verwendet. In Figur 3a sind die Schalter
und Schaltkreise des Unterbrechungsabschnittes 101 zum Verarbeiten der Modul-Unterbrechungsschnittstellen dargestellt. Im
System gemäß Figur 1 sind Module dargestellt, die an die Anschlüsse LMO, A,E, G und J angeschlossen sind und die jeweils Signale
zu der Schnittstelleneinheit SIU-100 über verschiedene Leitungen
der Unterbrechungs-Schnittstelle 602 zuleiten. Die Schnittstelle SIU-100 gibt zusätzlich Signale über eine Unterbrechungs-Schnittstelle
600 an den zugeordneten Anschluß L gemäß Figur 1 ab.
Gemäß Figur 3a gibt jeder Modul, wenn er eine Bearbeitung anfordert,
ein Signal auf seiner Unterbrechungsanforderungsleitung IR zusammen mit einer geeigneten Unterbrechungs-Bestimmungsinformation
auf den Leitungen IDA ab, wobei diese Leitungen den Schaltkreisen eines Unterbrechungsprioritäts- und Steuerblockes 101-2
zugeführt sind. Die Schaltkreise des Blockes 101-2 überwachen alle Unterbrechungs-Schnittstellen und sie wählen den geeigneten,
dem Prozessor 200 zugeordneten Prozeß . aus, wenn die Anforderung eine Priorität aufweist, die höher ist als die Priorität
des 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 Identifizierungsinformation weist eine Unter-
609884/0790
brechungs-Steuerblocknummer von 8 Bit einschließlich eines Paritäts-Bits
auf sowie eine Unterbrechungs-Pegelnummer von 3 Bit und eine Proζessornummer von einem Bit mit einem Paritäts-Bit
und schließlich eine Kanalnummer von 4 Bit.
Die Schaltkreise des Blockes 101-2 weisen Decodierschaltkreise
dig»
auf, die Prοζessornummer und die Unterbrechungs-Anforderungssignale decodieren. Unter der Voraussetzung, daß kein Paritätsfehler vorliegt, werden die Ausgangssignale der Decodierschaltkreise den Prioritäts-Logikschaltkreisen des ausgewählten Prozessors zugeführt. Die Prioritäts-Logikschaltkreise decodieren die Unterbrechungs-Pegelsignale und bestimmen den höchsten Prioritätspegel und sodann die Priorität des Anschlusses, so daß der Modul mit dem höchsten Prioritätspegel und der höchsten Anschlußpriorität ausgewählt wird. Die Unterbrechungs-Anschlußpriorität innerhalb eines vorgegebenen Pegels stellt sich wie folgt dar:
auf, die Prοζessornummer und die Unterbrechungs-Anforderungssignale decodieren. Unter der Voraussetzung, daß kein Paritätsfehler vorliegt, werden die Ausgangssignale der Decodierschaltkreise den Prioritäts-Logikschaltkreisen des ausgewählten Prozessors zugeführt. Die Prioritäts-Logikschaltkreise decodieren die Unterbrechungs-Pegelsignale und bestimmen den höchsten Prioritätspegel und sodann die Priorität des Anschlusses, so daß der Modul mit dem höchsten Prioritätspegel und der höchsten Anschlußpriorität ausgewählt wird. Die Unterbrechungs-Anschlußpriorität innerhalb eines vorgegebenen Pegels stellt sich wie folgt dar:
Alt; Anschluß L; Anschluß A, Anschluß 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 Schnittstelleneinheit SIU-100, dem Hochgeschwindigkeitsmultiplexer
300, dem Zentralprozessor 700, dem Prozessor 200 und dem Niedriggeschwindigkeitsmultiplexer 400 aufweist.
Die Prioritätsschaltkreise des Blockes 101-2 erzeugen ein Ausgangssignal
auf einer Leitung von N-Ausgangsleitungen, wobei die
Zahl N der Anzahl der unterbrechenden Module innerhalb des Systems entspricht. Die N-Ausgangsleitungen werden einem Daten-Auswahlschalter
101-4 mit acht Positionen zugeführt, der die Unterbrechungs-Pegelsignale eines Unterbrechungspegels mit einer
höheren Priorität als des gerade bearbeiteten Pegels auswählt und in ein Register 101-6 überträgt. Die Ausgangssignale des
Registers 101-6 werden auf den Leitungen AIL ausgegeben, wenn der Prozessor 200 die Leitung IDR den Wert "1" annehmen läßt,
vorausgesetzt,daß die Schnittstelleneinheit SIU-100 zuvor
60988A/0790
die Leitungen HLIP und LZP zur Annahme des Wertes "1" veranlaßt hat. Wenn der laufende Prozeß für eine unterbrechung nicht gesperrt
ist, so verursacht die Unterbrechungsanforderung die Aufgabe des laufenden Prozesses durch den Prozessor 200 und die Annahme
eines Unterbrechungswortes von der Schnittstelleneinheit SIU-100, wobei dieses Wort die zuvor erwähnte Identifizierungsinformation enthält. Das Unterbrechungswort weist im einzelnen
folgendes Format auf:
Bit 0 ist eine neue Unterbrechungs-Bit-Position. Wenn 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 ist, so zeigt es an, daß die
Unterbrechung einen zuvor unterbrochenen Prozeß betrifft, der wieder aufgenommen wird.
Bits 1-17 werden nicht benutzt und weisen den Wert "0" auf. Bits 18-27 bestimmen die Unterbrechungs-Steuerblocknummer,
wobei die Bits 18 und 27 auf den Wert "0" gesetzt sind. Bits 28 - 31 werden durch die Schnittstelleneinheit SIU-100
erzeugt und bestimmen den Ursprungsmodul.
Bits 32-35 werden durch die Module mit Mehrfachanschlüssen erzeugt
und bestimmen den Unterkanal oder Anschluß innerhalb des Ursprungsmoduls.
Die Ausgangsleitungen der Unterbrechungs-Prioritätsschaltkreise
101-2 werden einem weiteren Daten-Auswahlschalter 101-8 zugeführt. Da nur der die höchste Priorität aufweisende anfordernde Modul
ein Signal an den Auswahlschalter 101-8 abgeben wird, ist dieser in vorbestimmter Weise so verdrahtet, daß er einen Satz codierter
Steuerungssignale abgibt, die den physikalischen Anschluß festlegen, mit dem der anfordernde Modul verbunden wird. Hierzu dienen
beispielsweise die Bits 28 - 31 des Unterbrechungswortes. Im vorliegenden Fall werden die folgenden Steuerungscodes für die Auswahl
der Module gemäß Figur 1 erzeugt:
609884/0790
Code Identifizierter Schnittstelleneinheit-Anschluß
0000 Interner Speichermoudl - Anschluß LMO
0001 Anschluß K
0010 Schnittstelleneinheit SIU-100 - Anschluß L
0101 Niedriggeschwindigkeitsmultiplexer 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 einerGruppe herkömmlicher. UND-Gatterschaltkreise zugeführt,
die in dem Gatternetzwerk 101-12 enthalten sind. Die andere Identfiζierungsinformation, die von den verschiedenen Ursprungsmodulen des Systems erzeugt wird, wird anderen Gatterschalfekreisen
des Netzwerkes 101-12 zugeführt. Insbesondere führt jeder Modul eine Unterbrechungs-Steuerblocknummer ICBN über die Leitungen
IDA einer Position des Datenauswahlschalters 101-14 zu. Ferner erzeugt jeder Modul auf den Leitungen IMID der Unterbrechungsschnittstelle
für andere Gatterschaltkreise des Netzwerkes 101-12 die Information, die zur Bestimmung des anfordernden
Unterkanals oder Anschlusses des Quellenmoduls erforderlich ist. Wenn der Prozessor 200 die Leitung IDR zur Annahme des Wertes "1"
veranlaßt, so gitbt die Schnittstelleneinheit SIU-100 über eine Stellung des Auswahlschalters 101-20 die Signale des Gatternetzwerkes
101-12 an die Leitungen DFS der Prozessor-Datenschnittstelle 600 ab. Die anderen Positionen des Schalters 101-20 sind
nicht dargestellt, da sie für ein Verständnis der vorliegenden Erfindung ohne Bedeutung sind.
Datenübertragungsabschnit 102
In Figur 3b ist der Datenübertragungsabschnitt 102 der Systemschnittstelleneinheit
100 dargestellt. Dieser Abschnitt enthält prioritätsschaltkreise, welche festlegen, welcher Modul über
seine programmierbare Schnittstelle 601 Anweisungen zu dem Hochgeschwindigkeitsmultiplexer
300 übertragen hat und welcher Quellenmodul über seine Datenschnittstelle 600 Daten zu dem
6 0 9 8 8 4/0790
Multiplexer 300 zu übertragen hat. Weiterhin weist der Abschnitt 102 Prioritätsschaltkreise auf, welche festlegen, welcher Quellenmodul
entweder Daten oder Anweisungen nach dem internen Speichermodul 500 zu übertragen hat.
Es sei darauf verwiesen, daß Übertragungen zwischen einem Paar von Modulen erfolgen, wenn ein Modul eine Anforderung an den
anderen Modul erzeugt hat und diese Anforderung durch den anderen Modul angenommen worden ist. Damit eine Anforderung angenommen
wird, muß der anfordernde Modul die höchste Priorität aufweisen, beide Module müssen sich in einem Zustand der Empfangsbereitschaft
für die Information befinden und der Datenübertragungsweg muß verfügbar sein und darf nicht belegt sein.
Die von dem Prozessor 200 an den Abschnitt 102 herangeführten 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, wobei
das Bit-Feld durch seine Codierung die Übertragung einer Lese/Schreibspeicher- oder programmierbaren Schnittstellenanweisung
festlegt. Die an den Datenauswahlschalter 102-2 angelegten Leitungen der Prozessor-Datenschnittstelle 600 vermitteln eine
Anweisungsinformation, welche durch eine Mikroprogrammsteuerung erzeugt wird, die in das Prozessor-Datenausgangsregister 204-14
gemäß Figur 2 geladen ist. Die Leitungen SDTS führen Signale, die durch eine Mikroprogrammsteuerung erzeugt werden, welche in das
Prozessor-Steuerungsregister 204-16 gemäß Figur 2 geladen ist.
Hinsichtlich des Systems gemäß Figur 1 übertragen nur E/AProzessoren
Anweisungen nach dem Multiplexer 300 und der Prozessor 200 gibt Signale an das Netzwerk 102-4 ab. Das Netzwerk
102-4 weist daher Decodierschaltkreise auf, welche die Steuerungsinformation des Prozessors decodieren, falls der Prozessor
Rηqflß/, /n7Qn
Anweisungen nach dem Multiplexer 300 zu übertragen wünscht. Liegen mehrere E/A-Prozessoren vor und fordern mehrere Prozessoren
während des gleichen Zyklus eine übertragung, so wählt
ein Prioritätsschaltkreis innerhalb des 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 102-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 dem Multiplexer 300 angezeigt wird, daß er die auf den Leitungen
PDFS angelegte Anweisung annehmen soll. Wenn der Prozessor einen Befehl ausführt, der ihn zur Abgabe einer programmierbaren
Schnittstellenanweisung an den Multiplexer 300 veranlaßt, so legt der Prozessor 200 die Prozessornummeridentfikation im
Bit 3 der Anweisung ab. Der Multiplexer 300 speichert die Prozessornummer, die in der Anweisung enthalten ist, bis er eine
ünterbrechungsanforderung abzugeben wünscht, wobei dann die Prozessornummer
einen Teil der Unterbrechungsdaten bildet. Wenn die programmierbare Schnittstellenanweisung dem Multiplexer 300 übermittelt
wird, so wird die den Prozessor 200 als den Anforderer bestimmende Steuerungsinformation in einem Register 102-6 gespeichert,
das dem Multiplexer 300 an dem Anschluß A zugeordnet ist. Bei einer Reaktion des Multiplexers 300 durch Erzeugung
einer übertragungsanforderung gelesener Daten an die Schnittstelleneinheit
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 Speichermodul 500 der einzige Modul, der Daten zu dem Multiplexer
überträgt. Eine solche übertragung erfolgt beim Auftritt einer Speicherleseanweisung ZAC, die über das Netzwerk 102-20 von dem
609884/0790
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 Übertragungsanforderung fürgelesene Daten erzeugt und hiermit dem Multiplexer
300 signalisiert, daß er die Daten aufzunehmen hat. Wenn die Schnittstelleneinheit SIU-100 die Anforderung aufnimmt, so
wird dies dem Multiplexer 300 angezeigt, indem die Leitung ARDA den Wert "1" einnimmt.
Die Leitung für die übertragungsanforderung 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, die Information aufzunehmen, so legt das
Decodiernetzwerk 102-14 die geeigneten Signale an den Auswahlschalter 102-12 und an Schaltkreise innerhalb eines Gatternetzwerkes
102-16 an. Zusätzlich legt das Decodiernetzwerk 102-14
und
ein Signal an die Leitung ARDA der Datenschnittstelle an signalisiert
hiermit dem Multiplexer 300, daß er auf den Leitungen DFS seiner Schnittstelle 600 die Daten von der Schnittstelleneinheit
SIU-100 anzunehmen hat. Die Schaltkreise des Blockes 102-16 legen die geeignete Mehrfachanschluß-Identifizierungsinformation
an die Leitungen MI S an, wodurch der anfordernde Unterkanal bestimmt wird. Wenn die Datenübertragung stattgefunden
hat, so bewirkt das Netzwerk 102-14, daß die Leitung RDAA
60998/4/0790
den Wert "1" einnimmt, wodurch dem anfordernden Modul signalisiert
wird, daß die Daten von dem Speichermodul 500 aufgenommen worden sind.
Eine Anordnung ähnlich dem Netzwerk 102-14 wird von der Schnittstelleneinheit
SIU-100 zur Übertragung von programmierbaren Schnittstellen- und Speicheranweisungen von einem der Module
gemäß Figur 1 nach dem internen Speichermodul 500 verwendet. Der Modul 500 bewirkt, daß entweder die Leitung PIR oder die an
das Decodiernetzwerk 102-20 angeschlossene Leitung ZIR den Wert "1" einnimmt, wenn er bereit ist, eine programmierbare Schnittstellen-
oder Speicheranweisung anzunehmen. Zusätzlich führen der Prozessor 200, der Prozessor 700 und der Multiplexer 300
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 Auswahlschalter 102-24 mit drei Positionen zu erzeugen,
der den Modul mit der höchsten Priorität in die Lage versetzt, Signale zu der Datenschnittstelle 603 des Speichermoduls 500 zu
übertragen. Es ist ebenfalls erkennbar, daß das Netzwerk 102-20 Signale auf die Leitung APC oder die Leitung AZC sowie über einen
Gatterschaltkreis 102-26 auf die Leitungen RITM der Datenschnittstelle 603 des internen Speichermoduls 500 gibt.
Die letzten beiden Netzwerke 102-30 und 102-40 werden zur Übertragung
von Speicherdaten und von programmierbaren Schnittstellendaten zu dem Prozessor 200 benutzt, wobei dies in Abhängigkeit
von Speicheranweisungen und programmierbaren Schnittstellenanweisungen erfolgt, die zuvor durch den Prozessor 200
erzeugt wurden. Wie aus Figur 3b ersichtlich, besitzt das Prioritäts-Decodiernetzwerk
102-30 die gleichen Eingangsleitungen wie das Netzwerk 102-14 und arbeitet in der gleichen Weise, um die
angeforderten Speicherdaten zu dem Prozessor 200 über einen Datenauswahlschalter 102-32 und den vierstelligen Auswahlschalter
101-20 gemäß Figur 3a weiterzuleiten. Es sei darauf verwiesen, daß kein Konflikt zwischen den Modulen,die Daten an den
609884/0790
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 zur Verzögerung der Operationen veranlaßt wird.
Das separate Netzwerk 102-40 verarbeitet Anforderungen von Rückkehrdaten
von jenen Modulen, die auf programmierbare Schnittstellenanweisungen ansprechen. Das Netzwerk 102-40 decodiert
die von den Leitungen RDTR geführten Signale sowie die Signale des Registers 102-6 zusammen mit denjenigen Registersignalen
von anderen nicht dargestellten Modulen. Wenn die 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-Anforderungssignal geschaltet wird. Während eines nächsten Operationszyklus veranlaßt
das Netzwerk 102-40 die Leitung RDAA zur Annahme des Wertes "1", wodurch dem Modul angezeigt wird, daß die auf den Leitungen
PDTS vorhandenen Daten angenommen worden sind und daß der Modul nunmehr diese Daten entfernen kann, z.B. durch Löschen seiner
Ausgangsregister. Es ist somit ersichtlich, daß der Schalter 101-20 selektiv irgendeinen von drei Datentypen auf den Leitungen
DFS der Datenschnittstelle 600 des Prozessors erzeugt.
609884/0790
Hochgeschwindigkeitsmultiplexer 300
Gemeinsamer Abschnitt
Die Figuren 4a und 4b zeigen in näheren Einzelheiten den gemeinsamen
Steuerabschnitt 301 und einen Teil des Kanaladapterabschnittes
302. Gemäß Figur 4a ist ersichtlich, daß der gemeinsame Steuerabschnitt ein Paar Register 301-2 und 301-5 für
die Speicherung der Worte einer programmierbaren Schnittstellenanweisung aufweist, welche Anweisung über die Leitungen PDFS
von der programmierbaren Schnittstelle 601 des Multiplexers über einen zweistufigen Datenauswahlschalter 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. Es ist
ferner ersichtlich, daß einem Register 301-40 über Treiber-Schaltkreise 301-3 Speicherdaten zugeführt werden, die auf den
Leitungen DFS der Schnittstelle 600 des Multiplexers anstehen. Die Anweisungen in den beiden Registern 301-2 und 3OV5 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 Kanaladapterabschnitte über die Treiberschaltkreise 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.
/. /n*7on
Die Signale des Registers 201-5 können über Treiberschaltkreise 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 Unterbrechungs-Steuerblock-,
Pegel- und Maskenregisters der Kanaladapterabschnitte können während der Ausführung der Test- und Überprüfungsoperationen
aufgrund von programmierbaren Schnittstellenanweisungen gelesen werden.
Die Unterbrechungs-Steuerblockregister des Blockes 30VlO 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-Auswahlschalters 301-25 bis
301-28 zugeführt. Es ist erkennbar, daß jedes der Pegelregister des Blockes 301-12 an verschiedene Positionen des vierstufigen
Auswahlschalters 301-30 und des achtstufigen Auswahlschalters 301-32 angeschlossen ist. Es 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 Unterbrechungsanforderungen
609884/0790
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 wird; eine Datensteuerwort-ör±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 Steueradapter kann ebenso vier verschiedene Typen von
Unterbrechungsanforderungen erzeugen, die von dem Typ des Gerätes abhängen, das an den Adapter angeschlossen ist. Im Falle
einer Platteneinheit umfassen die Unterbrechungsanforderungen
folgende Typen: eine durch die Feststellung von Paritätsfehlern
Umdrehungsverursachte Fehlerunterbrechung einer aufgrund einer rotierenden
position erfaßte Unterbrechung, eine Datenübertragungs-Beendigungsunterbrechung
und eine Offline-Unterbrechung, die bei der Beendigung einer Offline-Operation, z.B. bei einer Suchoperation
verursacht wird. Die vier Typen von Kanal-Unterbrechungsanforderungen und die vier Typen von Steueradapter-' Unterbrechungsanforderungen
ergeben zusammen eine Gruppe von acht Typen pro Steueradapter-Kanal, die als die Ereignisauftritte EV0-EV7 bezeichnet
werden. Jedem Typ einer Unterbrechungsanforderung ist eine 3-Bit-Typnummer zugeordnet, so daß die vier Typen der Kanal-
en
Unterbrechungsanforderung mit den Nummern 0-3 entsprechend EVO-
EV3 bezeichnet sind, während die vier Steueradapter-Unteren
brechungsanforderung mit den Nummern 4-7 entsprechend EV4-EV7 versehen sind. Die Ereignisauftritte mit den niedrigsten Codes 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 Typnummer 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.
brechungsanforderung mit den Nummern 4-7 entsprechend EV4-EV7 versehen sind. Die Ereignisauftritte mit den niedrigsten Codes 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 Typnummer 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.
6 0 9884/0790
Die Schaltkreise innerhalb des Blockes 301-34 kombinieren die Signale von jedem der Maskenregister des Blockes 301-14 mit
den Unterbrechungs-Anforderungssignalen 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 wird einem entsprechenden Multiplexer-Auswahlschaltkreis
301-25 bis 301-28 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 Multiplexer-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 Netzwerk 301-24 erzeugten Signale legen den Kanal oder den Anschluß mit der höchsten Priorität fest. In dem-Fall wo mehr
als ein Kanal 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, wo 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,
609884/079 0
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 v/erden 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 zweistufigen Datenauswahlschalters 301-42 einem zweistufigen
Kanalschreibschalter 301-44 zugeführt. Wenn die erste Position des Schalters 301-44 ausgewählt wird, so wird hierdurch der Inhalt
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 301-2 und 301-68
und von den dargestellten Kanaladaptern zugeführt und sie erzeugen Ausgangssignale auf den Ausgangsleitungen und in dem Ausgangsregister
301-65. ßie Register der Gruppe 301-46 umfassen ein 40-Bit-Register zum Speichern eines Listen-Hinweisadressenwortes
LPW für den zugeordneten Anschluß, ein 40-Bit-Datenadressregister zum Speichern der Adresse von auszulesenden oder einspeichernden
Daten und ein 40-Bit DT-Register zur Speicherung von Zähl- und Steuerinformation 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-Prufschaltkreis
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-44
zugeführt.
609884/0790
Wie aus Figur 4a weiterhin ersichtlich, werden die Ausgangssignale
des Schalters 301-50 selektiv einem 8-Bit-Steuerungsregister 301-60 über einen Steuerungsschalter 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 v/erden. Die Ausgangssignale des
DT-Schalters 301-20 und des ZAC-Schalters 301-61 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-Datenschnittstelle
600 oder die Leitungen PDTS der Multiplexer-Schnittstelle 601 gegeben. Wenn das ZAC-R'egister 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.
Kanaladapter-Abschnitte
In Figur 4b sind die Register und der Daten-Auswahlschalter dargestellt,
die in jedem der Kanaladapter-Abschnitte CA0-CA3 enthalten sind. Da alle Abschnitte identisch sind, ist nur der Abschnit
CAO dargestellt. Es ist ersichtlich, daß der Abschnitt Ausgangssignale von dem Datenübertragungsschalter 301-6 und dem
" ' G09384/0790
2623266
H-Schalter 301-42 zugeführt erhalt. Die Signale des Datenübertragungsschalters
301-6 werden über Treiberschaltkreise des Blockes 302-2 einem zweistufigen Datenauswahlschalter 302-4
zugeführt. Die Ausgangssignale des Schalters 302-4 können selektiv entweder in ein Modusregister 302-5 oder in eines von
mehreren Steuer-Flip-Flops 302-3 in Abhängigkeit von den Steuersignalen von 301-4 geladen werden. Die Ausgangssignale des
Modusregisters 302-5 und der Steuer-Flip-Flops werden als Eingangssignale den logischen Schaltkreisen des Blockes 302-7 zugeführt,
der die erforderlichen Steuersignale für die Ausführung einer Anweisung durch den Steueradapter erzeugt. Die Schaltkreise
des Blockes 302-7 empfangen ferner Steuersignale von dem Block 301-4, von der Registergruppe 301-46, die dem Kanaladapter
zugeordnet ist und von den Leitungen der Steueradapterschnittstelle. In der vorliegenden Ausführungsform weist die
Steueradapter-Schnittstelle folgende Leitungen auf:
Bezeichnung
DTA
DTA
ADTA
ACTA
CHBSY
Steueradapter-Leitungen
Beschreibung
Dieser Datenweg umfaßt 40 Leitungen, die sich von dem Modul 300 nach dem Steueradapter erstrecken und
sie werden benutzt, um Anweisungen und Adressen enthaltende Daten nach dem Adapter zu übertragen.
Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an,
daß auf den DTA-Leitungen Daten verfügbar sind, die von dem Adapter angenommen werden sollen.
Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an,
daß eine programmierbare Schnittstellenanweisung oder Daten auf den DTA-Leitungen verfügbar sind, die von
dem Adapter angenommen werden sollen. Diese Leitung erstreckt sich von dem Modul 300 nach
dem Adapter und sie zeigt bei einem indirekten Modus dem Adapter an, daß der Multiplexer 300 nunmehr in
6 0 9 8 8 A /0790
PIDFA
ADFA
AD-BÜSY
einer Daten-Selbstübertragungsweise arbeitet; der Kanal bleibt belegt, bis die Daten-Selbstübertragungsoperation
beendigt ist. Bei einer direkten Betriebsweise wird diese Leitung gesetzt, wenn eine
Speicher-ZAC-Anweisung von dem Adapter empfangen wird und sie bleibt gesetzt, bis entweder die angeforderten
gelesenen Daten übertragen sind oder der Status von dem Speichermodul zurückgeholt worden ist.
Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie zeigt im gesetzten Zustand an,
daß der Modul 300 bereit ist, weitere Daten oder Anweisungen von dem Adapter anzunehmen.
Diese Leitung erstreckt sich von dem Modul 300 nach dem Adapter und sie wird während Daten-Selbstübertragungsoperationen
im indirekten Modus benutzt, um anzuzeigen, daß das letzte Wort der Daten übertragen
worden ist (schreiben) oder das letzte Wort der Daten gespeichert wurde (lesen).
Dieser Datenweg umfaßt 40 Leitungen, die sich von dem Steueradapter nach dem Modul 300 erstrecken und die
benutzt werden, um Daten zu übertragen, die Status-Speicheradressen und Anweisungen für den Modul 300
umfassen.
Dieser Datenweg umfaßt zwei Leitungen von dem Adapter nach dem Modul 300, wobei diese Leitungen zusammen
mit den Unterbrechungsleitungen benutzt werden, um
anzuzeigen, welcher Unteranschluß des Steueradapters die Unterbrechung verursacht.
Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand an, daß
Daten oder eine Speicheranweisung auf den DFA-Leitungen ansteht und von dem Modul angenommen werden
soll.
Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand an,
daß der Adapter eine programmierbare Schnittstellenanweisung angeommen hat und nicht in der Lage ist,
irgendwelche weitere Anweisungen anzunehmen. 609884/0790
ADR Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand
dem Kanal an, daß der Adapter bereit ist, mehr Daten anzunehmen.
IFA DieserDatenweg umfaßt vier Leitungen, die sich von
dem Steueradapter nach dem Modul 300 erstrecken und die den Typ der Unterbrechungsanforderung anzeigen.
TFA Diese Leitung erstreckt sich von dem Adapter nach dem Modul 300 und sie zeigt im gesetzten Zustand an,
daß eine Datenübertragungsoperation nach dem Modul 300 beendigt ist.
Es sei an dieser Stelle erwähnt, daß die Steueradapter-Schnittstelle
weitere Leitungen aufweist, die beispielsweise für eine Auslösung, eine Freigabe usw. erforderlich sind.
Die Ausgangssignale des Schalters 302-4 werden einem weiteren zweistufigen Auswahlschalter 302-6 zugeführt, dem ferner Datensignale
auf den DFA-Leitungen durch den zugeordneten Steueradapter zugeführt werden. Während einer Datenübertragungsoperation
werden die Ausgangssignale der DFA-Position des Schalters 302-6 in verschiedene Register der 40-Bit-Datenregister 302-8
geladen, um über diese zu dem gemeinsamen Abschnitt 301 über einen vierstufigen Schalter 302-12 oder zu dem Steueradapter
über einen zweistufigen Auswahlschalter 302-10 übertragen zu werden. Außerdem werden Ausgangssignale des WD~Schalters 302-4
über die WD-Position des Schalters 302-10 zu dem Steueradapter übertragen. Verschiedene Register der Register 302-8 werden zum
Laden und Entladen durch Adressignale ausgewählt, wobei die Adressignale in Lese- und Schreibadressregistern des Blockes
302-14 gespeichert sind und die Inhalte dieser Register durch Signale modifiziert werden, die durch die Schaltkreise des
Blockes 302-7 erzeugt werden. Diese Schreibadress- und Leseadress-Register liefern Signale, die die Anzahl der gespächerten
Worte angeben, die ihrerseits benutzt werden, um den Status einer Übertragungsoperation zu bestimmen.
609 884/079 0
Während einer Datenübertragungsoperation prüfen die Paritäts-Schaltkreise
des Blockes 302-14 die Parität der von dem Steueradapter über den Schalter 302-6 empfangenen Datensignale und
erzeugen die geeignete Parität. Es ist ferner ersichtlich, daß dem Schalter 302-4 Signale von dem ersten Paar der Kanal-Schreibdatenregister
(W-Register 0, W-Register 1) zugeführt werden, wobei
diese Register zwei Informationsworte speichern, die eine übertragung von dem H-Schalter 301-42 zu irgendeinem der Register
302-8 oder eine direkte übertragung zu dem Steueradapter über den Auswahlschalter 302-10 festlegen.
Detaillierte Beschreibung der Abschnitte 301-4 und 301-34
In den Figuren 4c und 4d sind verschiedene Ausführungsbeispiele eines Teiles der Schaltkreise dargestellt, wie sie innerhalb
der Blöcke 301-4 und 301-34 in Übereinstimmung mit den Prinzipien der vorliegenden Erfindung verwirklicht sind. Gemäß Figur 4c
weisen die Schaltkreise des Blockes 301-4 Flip-Flops 301-402, 301-414, einen Binär/Dezimal-Decodierschaltkreis 301-416 und
mehrere NAND-Gatter 301-417, 301-434 und 301-436 sowie UND-Gatter 301-401, 301-404 bis 301-412, 301-418 bis 301-422,
301-430 und 301-432 in der dargestellten Anordnung auf.
Das Flip-Flop 301-402 wird über das UND-Gatter 301-401 auf "1" geschaltet, wenn eine programmierbare Schnittstellenanweisung
(PI-Anweisung) empfangen worden ist, was durch den Anstieg der
APC-Leitung, die ein nicht dargestelltes Flip-Flop auf "1" schaltet und hierdurch das Signal PCRCVDlO auf "1" setzt,angezeigt
wird und wenn die Anweisung gültig ist, d. h. wenn das Bit 0 des Anweisungswortes gemäß den Figuren 7a und 7b den
Wert "1" aufweist, was durch den Wert "1" des Signales PIVLDlO signalisiert wird. Das UND-Gatter 301-404 setzt das Signal
HSMXCMDlO auf "1" wenn das Bit 28 des PI-Anweisungswortes "O"
ist, wodurch angezeigt wird, daß die Anweisung durch den Hochgeschwindigkeitsmultiplexer
und nicht durch einen Kanal auszuführen ist. Die UND-Gatter 301-406 und 301-408 bringen ein
609884/0790
externes PI~Anweisungssignal EXPICOMlO auf "1", wenn das
Anweisungswort eine Registeroperation festlegt. Dies ist beispielsweise der Fall, wenn die Bits 27 und 31 den Wert "0"
aufweisen.
Das UND-Gatter 301-409 setzt ein Register-Ladesignal PCLDREGlO auf "1", wenn das Anweisungswort eine Register-Ladeanweisung
darstellt, d. h. wenn die Bits 1 und 27 die Werte "1" und "0" entsprechend aufweisen und wenn das Anweisungswort nicht das
Laden eines vorangegangenen Anweisungsinhalts betrifft, d.h.
wenn das Signal PREVPCOl den Wert "1" aufweist. Das Signal PCLDREGlO wird an jedes Register weitergegeben, dessen Inhalt
durch ein Benutzer- oder Nebenprogramm modifiziert werden kann.
Im bevorzugten Ausführungsbeispiel speichern diese Register in noch näher zu erläuternder Weise in erster Linie Daten in Abhängigkeit
von Benutzerbefehlen. Das Laden dieser Regiser erfolgt
somit auf einer unbeschränkten Basis.
Das Signal PCLDREGlO wird zusätzlich an das UND-Gatter 301-411 angelegt, welches dieses mit dem externen PI-Anweisungssignal
EXPICOMlO und einem durch das Bit 2 des PI-Anweisungswortes
erzeugten restriktiven Bitsignal PCREG0210 verknüpft. Das UND-Gatter 301-411 setzt ein Register-Anweisungs-Ladesignal C0MLDREG10
auf "1", wenn das Bit 2 den Wert "1" aufweist. Wie aus Figur 4c ersichtlich, wird das Signal COMLDREGlO als Freigabesignal einem
Eingang des Binär/Dezimal-Schaltkreises 301-416 zugeführt, dem
ebenfalls ein 3 Bit-Code entsprechend den Bits 32 bis 34 des PI-Anweisungswortes zugeführt wird. Wie noch näher zu erläutern*
sein wird, definieren die Bits 29 bis 35 eine dreistellige oktale Registernummer. Das Bit 29 bestimmt die erste oktale Ziffer, die
Bits 30 bis 32 bestimmen die zweite oktale Ziffer und die Bits 33 bis 35 bestimmen die dritte oktale Ziffer. Zusätzliche Decodier-Gatterschaltkreise
sind erforderlich, um die geeigneten Steuersignale an die verschiedenen Schalter zum Laden der ausgewählten
Register zu legen.
60S884/0790
Wenn der Schaltkreis durch das Signal PCLDREGlO freigegeben ist,
so nimmt einer seiner Ausgänge den Wert "1" ein. Die verschiedenen Ausgänge erzeugen Register-Ladesignale PILDDAlO, PILDDTlO
und PILDLPWlO, die an verschiedene der beschränkt zugänglichen Register 301-46 über die UND-Gatter 301-418, 301-420 und 301-422
angelegt werden. In Abhängigkeit von verschiedenen Gruppen binärer oktal codierter Signale, die an den Schaltkreis 301-416 angelegt
werden, werden unterschiedliche Ausgangssignale erzeugt.
Wenn das UND-Gatter 301-418 durch das Signal PILDDTSOO des NAND-Gatters
301-417 vorbereitet ist, so schaltet sein Ausgang auf "1", wenn die Signale PCREG341O, PCREG321O und PCREG331O einen
Oktalwert von "4" aufweisen, wodurch die Adresse des DA-Registers
festgelegt wird. Die UND-Gatter 301-420 und 301-422 schalten am Ausgang auf "1", wenn die Signale PCREG341O, PCREG321O und
PCREG331O Oktalwerte von 5 und 6 aufweisen. Das NAND-Gatter 301-417
ist vorbereitet, wenn das Signal PC3010 den Wert "0" aufweist, wodurch festgelegt ist, daß die zweite Oktalziffer einen
Wert kleiner als 4 besitzt. In gleicher Weise schalten die Ausgänge der UND-Gatter 301-430 und 301-432 auf "1", wenn die Signale
PCREG341O, PCREG321O und PCREG331O einen Oktalwert von 0
auf v/eisen, wodurch der Schaltkreis 301-416 in die Lage versetzt wird, ein Signal PIWRTC0M10 mit dem Wert "1" abzugeben. Die Signale
PCREG35OO und PCREG351O des PC-Anweisungsregisters 301-2
wählen zwischen Registern aus, die entsprechend den Bits 29 bis 35 der PI-Anweisung gemäß Figur 7a oktale Adressennummern von
000 und 001 aufweisen.
Das Paar von NAND-Gattern 301-434 und 301-436 erzeugt verschieden codierte Kombinationen von Signalen LDDTSOO und LDDTSlO die an
invertierende Eingangsschaltkreise der Registerbank 301-64 angelegt werden. Dies erlaubt die Auswahl eines von vier durch die
Registernummerη 042, 046, 052 und 056 gekennzeichnete Register.
Die Signale PCREG3010, PCREG321O und PCREG331O entsprechend der
zweiten und dritten Oktalziffer erzeugen die geeignete Registerausnwahl. Zu diesem Zeitpunkt sperrt das Signal PCREG3010 über
6 0 9884/0790
das NAND-Gatter 301-417 das Signal PILDDTSOO gegen eine Annahme
des Wertes "1". Das UND-Gatter 301-412 setzt ein Ausnahmesignal
SETEXCPT10 in Abhängigkeit von den Signalen PCLDREGlO und
EXPICOMlO auf 11I", wenn das Komplement des restriktiven Bitsignales
PCREG0210 den Wert "1" aufweist. Das Flip-Flop 301-414 schaltet in Abhängigkeit von dem Signal SETEXCPTIO das Signal
EXCPTlO auf den Wert "1". Das Ausnahmesignal wird dem Block 301-34 zur Verarbeitung zugeführt. Das Flip-Flop 301-414 schaltet
durch Signale RSTEXCPTCO in Abhängigkeit von einer PI-Anweisung
auf den Wert "0".
Wie aus Figur 4c ersichtlich, weist der Abschnitt 301-34 mehrere
NAND- und UND-Gatter 301-340 bis 301-348 auf. Das Gatter 3O1-34O
gibt ein Unterbrechungssignal TYPE310 vom Typ 3 ab, wenn das Maskensignal MSK300 des ausgewählten Maskenregisters den Wert
"1" aufweist. Zum gleichen Zeitpunkt schaltet das Gatter 301-340 das Signal TYPE300 auf "0", wodurch andere Prioritäts-Codier-.
gatter gesperrt v/erden, die in gleicher Weise wie die Gatter 301-344 bis 301-348 angeordnet sind. Das Gatter 301-342 verknüpft
das Signal TYPE310 mit anderen FehlerSignalen r wodurch
das Signal TYPEOIlOO vom Typ 3 auf "0" gesetzt wird, falls Unterbrechungen mit höherer Priorität nicht vorhanden sind.
Das Signal TYPEOIlOO versetzt die NAND-Gatter 301-344 bis 301-348 in die Lage, einen Code von "011" zu erzeugen. Die Ausgangssignale
TYPEOlO,.TYPElIO und TYPE210 werden an die CAO-Pegelschaltkreise
301-28 angelegt.
Figur 4d zeigt eine andere Ausführungsform der Schaltkreise des Blockes 301-4. Zur Bezeichnung der Gatter wurden die
gleichen Bezugsziffern verwendet, sofern diese gleiche Funktionen wie in Figur 4c ausführen. Eine Unterscheidung wurde lediglich
durch einen nachgestellten Buchstaben getroffen. Es sei darauf verwiesen, daß die Bits 25 und 26 des PI-Anweisungswortes
zur Festlegung einer besonderen Klasse von beschränkten Registern benutzt werden, wie noch zu erläutern sein wird. Wenn die Bits
25 und 26 beide den Wert "o" aufweisen, so setzt das UND-Gatter 3Ol-4O9b in Abhängigkeit von dem UND-Gatter 3Ol-4O9a das Signal
609884/0790
PCLDREGlO auf "1" und das Register-Ladesignal LDREGGOlO auf
"1". Dieses Signal wird nicht-restriktiven Registern zugeführt, die in der Gruppe IV zusammengefaßt sind.
Wenn die Bits 25 und 26 die Codierungen "01" aufweisen, so
gibt das UND-Gatter 301-411a ein zweites Register-Ladesignal LDREGGIlO mit dem Wert "1" aus. Wenn das Bit 2 des PC-Registers
den Wert "1" aufweist, so gibt das UND-Gatter 301-411e das Signal C0MLDREG110 mit dem Wert "1" aus, wodurch der Binär/Dezimal-Schaltkreis
301-416a in-die Lage versetzt wird, individuelle Ladesteuersignale für die Register der Gruppe I zu erzeugen.
Das NAND-Gatter 301-417a erzeugt ebenfalls das Signal PILDDTSOO, welches mit den Ladesignalen verknüpft wird, wie dies aus Figur 4c hervorgeht. In gleicher Weise erzeugen die UND-Gatter
301-411b bis 301-432a die Ladesteuersignale für die Register der Gruppe II, wenn die Bits 25 und 26 die Codierung "10" aufweisen.
Schließlich erzeugen die UND-Gatter 301-4lic und 301-412g
zusammen mit den NAND-Gattern 301-434d und 3Ol-436d Ladesteuersignale
für die Register der Gruppe III, wenn die Bits 25 und 26 die Codierung "11" aufweisen.
Bezüglich der Ausnahmesignale werden von den UND-Gattern 301-412b,
301-412c und 301-412d Ausnahmesignale an ein gemeinsames
ODER-Gatter 3Ol-412a gelegt, wenn die entsprechenden Bits der Bitpositionen 2 bis 4 des PC-Registers auf "0" gesetzt sind.
Hierdurch wird am Ausgang des Gatters 301-412a das Gruppen-Ausnahmesignal SETEXCPT10 erzeugt, wodurch das Ausnahme-Flip-Flop
301-414a gesetzt wird, dessen Ausgangssignal mit dem Wert "1" dem Block 301-34 zugeführt wird. Das Flip-Flop 301-414a
wird über eine PI-Anweisung zurückgestellt, die das Signal RSTEXCPTOO auf "1" setzt. Dem Statusregister 301-45 werden zusetzlich
die individuellen Ausnahmesignale zugeführt, um die die Art der Registerübertretung kennzeichnenden Signale zu
speichern. In dem Ausführungsbeispiel gemäß Figur 4c ist dies nicht erforderlich, da die Art der Unterbrechung zu einer
603884/0790
Information führt, die die Unterbrechung als eine Registerübertretung
kennzeichnet.
Bevor die Wirkungsweise des Systems gemäß der vorliegenden Erfindung
erläutert wird, sei noch auf die Figuren 7a und 9a bis 9c Bezug genommen. Diese Figuren zeigen die Formate von PI-Anweisungen
und von Prozeß-Zustandsregistern für die Ausführungsformen gemäß den Figuren 4c und 4d. Figur 7a zeigt das bei dem
Ausführungsbeispiel gemäß Figur 4c verwendete Format der PI-Anweisung. Die PI-Anweisung wird durch den Prozessor 200 in
Abhängigkeit von einem WREX-Befehl erzeugt, der das Format
gemäß Figur 6 aufweist.
Aus Figur 7a ist ersichtlich, daß das Bit 0 auf "1" gesetzt ist, um ein PI-Anweisungswort zu definieren. Das Bit 1 wird
durch den Inhalt des PSR-Registers des Prozessors 200 vorgegeben und es wird auf "1" oder "0" gesetzt, um dementsprechend
eine externe Registerschreiboperation (laden) bzw. eine externe Registerleseoperation (lesen) zu definieren. Das Bit 2, welches
dem Bit 9 des PSR-Registers gemäß Figur 9a entspricht, legt fest, ob das laufende Programm den Inhalt bestimmter externer Register
in Übereinstimmung mit der vorliegenden Erfindung verändern kann. Das Bit 3 wird gleichgesetzt mit der Prozessor-Paarnummer, wie
sie von der Schnittstelleneinheit SIU-IOO geliefert wird, während das Bit 4 normalerweise den Wert "0" aufweist. Die Bits 5 bis
werden auf den Wert der Bits 4 bis 7 des PSR-Registers gesetzt und sie bestimmen den zu adressierenden Anschluß des Multiplexers.
Das Bit 27 wird im Falle einer Register-Ladeoperation auf 11O"
gesetzt, während das Bit 28 auf "0" gesetzt wird, um festzustellen, wann eine Anweisung, eine Multiplexer-Anweisung ist.
Wie zuvor erwähnt, legen die Bits 29 bis 35 eine dreistellige Oktaladresse eines Registers fest, das geladen oder ausgelesen
wird. Die Oktaladressen für diese Register sind in den Figuren 7d und 7e angegeben. Figur 9a zeigt das Format des PSR-Registers.
Wie zuvor erläutert, liefern die Bits 0 bis 7 eine bestimmte Steuerinformation, die die Bits 5 bis 8 der PI-Anweisung umfaßt.
609884/0790
Die Steuerungsinformation wird in das Steuerungsregister 204-16 des Prozessors 200 geladen, wodurch die geeignete übertragung
der PI-Anweisung freigegeben wird. Das Bit 9 stellt das externe Register-Lade-Erlaubnisbit dar, das durch das Bit 2 der PI-Anweisung
geliefert wird. Die verbleibenden Bits dienen den zuvor erwähnten Funktionen. Da sie im Zusammenhang mit der vorliegenden
Erfindung keine Rolle spielen, sollen sie nicht weiter erläutert werden.
In Figur 9c ist das Format der PI-Anweisung bezüglich der Ausführung
gemäß Figur 4d dargestellt. Es ist ersichtlich, daß die Bits 2 bis 4 den Bits 10 bis 12 des PSR-Registers gemäß
Figur 9b entsprechen und daß sie jene Arten von Register definieren, die ein laufendes Programm in über eins tinimung mit
der vorliegenden Erfindung verändern können. Insbesondere sind die Register des Multiplexers 300 in vier Gruppen unterteilt.
Die erste Gruppe von Registern (Gruppe I) entspricht den in den Figuren 7b und 7e aufgelisteten Multiplexerregistern, die
während der Ausführung einer E/A-Datenübertragungsoperation benötigten absoluten Speicheradressen enthalten. Wie erläutert,
kann das Laden dieser Register nur durch ein in hohem Maße privilegiertes Programm, wie beispielsweise ein E/A-Überwachungsprogramm
erfolgen. Es kann daher nur dieser Programmtyp das Bit 2 (Rl) auf "1" setzen. Dies gewährleistet die Aufrechterhaltung
der Systemsicherheit, was nachfolgend anhand der Figuren 10a und 10b näher erläutert wird.
Die Bits 25 und 26 werden zur Bestimmung einer jeden Gruppe
herangezogen. Im Falle der Codierung "01" definieren sie die Gruppe I der Register. Im Falle der Codierung "10" bestimmen
die Bits 25 und 26 die Gruppe II der Register. Diese Register enthalten Unterbrechungsinformation, z.B. Unterbrechungs-Vektoradressen,
Prioritätspegel usw. wobei diese Information während einer durch die Hardware erzeugten Unterbrechung des Prozessors
200 benutzt wird. Im bevorzugten Ausführungsbeispiel ist das
609884/0790
Laden, dieser Register auf ein Programm mit hoher Priorität beschränkt,
z. B. auf ein E/A-Prozessorsteuerung-überwachungsprogramm,
um die Systemsicherheit zu gewährleisten. Lediglich dieser Programmtyp ist daher in der Lage, das Bit 3 (R2) auf
den Wert "1" zu setzen.
Die nächste Klasse von Registern wird durch die Codierung "11" der Bits 25 und 26 festgelegt. Diese Register werden nicht direkt
während der Ausführung eines E/A-Programmes geladen, sondern werden zur Erleichterung der Diagnose von Kanalfehlern benutzt. Im
vorliegenden Ausführungsbeispiel ist das Laden dieser Register auf Test- und Diagnoseprogramme beschränkt. Auf diese Weise
ist nur dieser Programmtyp in der Lage, das Bit R3 auf "1" zu setzen.
Die letzte Klasse von Registern wird durch eine Codierung "00" der Bits 25 und 26 vorgegeben. Diese Register werden durch Kanal-Steuerprogramme
benutzt und sie weisen keine Ladebeschränkungen auf. Wie zuvor erwähnt, speichern diese Register Daten in Abhängigkeit
von Benutzer- und Nebenprogrammen. Die Bits 2 bis 4 müssen natürlich nicht auf "1" gesetzt werden.
Die anderen Bits der PI-Anweisung, wie beispielsweise die Bits
0, 1 und 27 bis 35 weisen das in Figur 7a dargestellte Format auf. Das Bit 9 enthält die gleiche Information wie das Bit 3.
Figur 9b zeigt das Format des PSR-Registers, das zusammen mit
der PI-Anweisung gemäß Figur 9c benutzt wird. Mit Ausnahme der Bits 10 bis 12 sind die verbleibenden Bits wie jene Bits in
Figur 9a codiert. Die Bits 10 bis 12 werden benutzt, um die Bits 2 bis 4 der PI-Anweisung gemäß Figur 9c zu liefern. Die
nicht benutzten Bits des Prozeß-Zeitgeberfeldes werden zur Lieferung der beiden zusätzlich erforderlichen externen Register-Lade-Erlaubnisbits
herangezogen.
609884/079 0
Aus dem anhand der Figuren 1 bis lob beschriebenen Aufbau des
Systems ergibt sich folgende Wirkungsweise:
Zunächst sei die Wirkungsweise des Multiplexers 300, der die Einrichtung gemäß Figur 4c aufweist unter Bezugnahme auf die
Figuren 10a und 10b beschrieben. Figur 10a zeigt die verschiedenen Steuertabellen, die den Softwaremodul der zentralen Systemschnittstelle
(CSI) umfassen. Dieser Modul überwacht jegliche
die
E/A-Aktivität,, durch den Prozessor 200 unter Steuerung durch eine Anzahl von Geräte-Behandlungsroutinen bearbeitet wird. Jede der Geräte-Behandlungsroutinen steuert einen oder mehrere Kanäle. Der Modul umfaßt eine Ansammlung verschiedener Routinen zur Erzeugung einer zentralen Systemkommunikation und einer internen E/A-Kommunikation. Im allgemeinen überwacht oder steuert die Schnittstelle CSI jegliche Kommunikation zwischen dem zentralen System und dem Prozessor 200 oder den verschiedenen Modulen des Systemes gemäß Figur 1. Im ersten Fall wird die Kommunikation durch Verbindungsbefehle des Zentralprozessors ausgelöst und im zweiten Fall wird die Kommunikation durch eine vorbestimmte Befehlsfolge ausgelöst, die in eine Warteschlange des Verteilers im internen Speicher 500 auf einem niedrigeren Prioritätspegel eintritt. Dies umfaßt die übertragung logischer Kanalnummern in physikalische Kanalnummern, die Errichtung temporärer Tabellen (z.B. PTT, IDCW und DCW), denen nicht erledigte E/A-Operationen zugeordnet sind und dies umfaßt die übertragung der Steuerung auf geeignete Geräte-Behandlungsroutinen zur Ausführung der E/A-Operation. Bei Beendigung der E/A-Operation reiht die Geräte-Behandlungsroutine den resultierenden Status und die Beendigungs-Codesignale in eine Warteschlange ein zur nachfolgenden Bezugnahme durch die CSI-Routine. Die CSI-Routine verschiebt sodann den Status zurück zu dem anfordernden Benutzerprogramra und sie löst im Falle der Anwendbarkeit eine Beendigung des Unterbrechungsprozesses aus und vervollständigt die E/A-Transaktion durch Freigabe der errichteten temporären Tabellen und Listen für einen anderweitigen Gebrauch.
E/A-Aktivität,, durch den Prozessor 200 unter Steuerung durch eine Anzahl von Geräte-Behandlungsroutinen bearbeitet wird. Jede der Geräte-Behandlungsroutinen steuert einen oder mehrere Kanäle. Der Modul umfaßt eine Ansammlung verschiedener Routinen zur Erzeugung einer zentralen Systemkommunikation und einer internen E/A-Kommunikation. Im allgemeinen überwacht oder steuert die Schnittstelle CSI jegliche Kommunikation zwischen dem zentralen System und dem Prozessor 200 oder den verschiedenen Modulen des Systemes gemäß Figur 1. Im ersten Fall wird die Kommunikation durch Verbindungsbefehle des Zentralprozessors ausgelöst und im zweiten Fall wird die Kommunikation durch eine vorbestimmte Befehlsfolge ausgelöst, die in eine Warteschlange des Verteilers im internen Speicher 500 auf einem niedrigeren Prioritätspegel eintritt. Dies umfaßt die übertragung logischer Kanalnummern in physikalische Kanalnummern, die Errichtung temporärer Tabellen (z.B. PTT, IDCW und DCW), denen nicht erledigte E/A-Operationen zugeordnet sind und dies umfaßt die übertragung der Steuerung auf geeignete Geräte-Behandlungsroutinen zur Ausführung der E/A-Operation. Bei Beendigung der E/A-Operation reiht die Geräte-Behandlungsroutine den resultierenden Status und die Beendigungs-Codesignale in eine Warteschlange ein zur nachfolgenden Bezugnahme durch die CSI-Routine. Die CSI-Routine verschiebt sodann den Status zurück zu dem anfordernden Benutzerprogramra und sie löst im Falle der Anwendbarkeit eine Beendigung des Unterbrechungsprozesses aus und vervollständigt die E/A-Transaktion durch Freigabe der errichteten temporären Tabellen und Listen für einen anderweitigen Gebrauch.
609884/0790
Die CSI-Routine, die die durch den Steuerungs-Überwachungsmodul
errichteten Untersystem-Tabellen benutzt, bildet während der
Systemauslösung die Steuertabellen gemäß Figur 10a in ihrem eigenen Speicher. Die Tabellen sind vom Typ der verketteten
Liste und sie v/erden beim Empfang eines Verbindungsbefehls des Zentralprozessors dem Speicher zugeordnet und beim Empfang
eines Beendigungs-Statussignals vom Speicher getrennt.
Die zentrale System-Konfigurationstabelle umfaßt bis zu 64
Kanäle, wobei die ersten 8 Kanäle zur Ausführung von übergeordneten Operationen benutzt werden, die sich auf Systemfehler
und spezielle Unterbrechungen beziehen, welche nicht Gegenstand der vorliegenden Erfindung sind. Die verbleibenden 56 Kanäle
sind periphere zur Ausführung von E/A-Operationen benutzte Kanäle. Jede der 56 Kanal-Eingangsstellen der Konfigurationstabelle umfaßt Information, die dem peripheren Gerät eine Kanalnummer
zuordnet. Beispielsweise ist die Eingangsstelle 10 einer Platteneinheit zugeordnet und umfaßt Information, die den Anschluß
A und den Kanal CAO für den Multiplexer auswählt.
Nach der Ausgabe eines Verbindungsbefehls durch den Zentralprozessor
speichert die Schnittstelle CSI eine Hinweisadresseninformation im Kanal 10. Die CSI-Routine errichtet ebenfalls
in diesem Zeitpunkt die verbleibenden Tabellen, die für die Dauer der Transaktion gebraucht werden. Die Routine benutzt
die periphere Transaktionstabelle zur Speicherung von Speicher-Hinweisadressen, welche auf den Speicherort von Steuerworten im
Hauptspeichermodul verweisen und die zur Bezugnahme auf Listen von Datensteuerworten benutzt werden. Beim Errichten der peripheren
Transaktionstabelle ruft die CSI-Routine vom Hauptspeichermodul die Datensteuerwortliste ab, die die Operation steuert und
sie speichert diese im internen Speicher 500. Während dieser Operation trennt sie die peripheren Anweisungen, die Befehlsdatensteuerworte
(IDCW) genannt werden von den Datensteuerworten (DCW) bei fehlender Anweisung. Die CSI-Routine errichtet sodann
im Speicher 500 eine Befehlsdatensteuerworttabelle, die eine
609884/0790
Länge von 4 Worten aufweist. Sie sichert eine Anweisung in dieser Tabelle und setzt die Befehlsdatensteuerworttabelle
mittels einer LPW-Hinweisadresse zu der anderen Tabelle in
Beziehung, welche die Liste der Datensteuerworte speichert, die ihrerseits Hinweisadressen zu den Informationsspeicherbereichen
im Speicher sind. Nachfolgend wird das Listen-Hinweisadressenwort LPW in eines der LPW-Register des Multiplexers
300 geladen. Die Befehlsdatensteuerworte IDCW und die Datensteuerworte DCW besitzen das in Figur 10a und 8b dargestellte
Format. Jedes IDCW weist einen Geräte-Befehlscode von 6 Bit auf, der die Art der Operation (z.B. lesen, schreiben, suchen
usw.) bestimmt und einen Gerätecode von 6 Bit, durch den das bestimmte Gerät festgelegt wird. Jedes Datensteuerwort DCW
besteht aus zwei Worten, von denen das erste die Steuerinformation
beschreibt und das zweite eine Wortadresse enthält.
Es sei beispielsweise angenommen, daß eine Platteneinheit-Behandlungsroutine
zugeteilt worden ist, um eine Übertragungsoperation gelesener Daten von der Platteneinheit zu dem Steueradapter
303 durchzuführen, was das Laden eines der LPW-Register gemäß Figur 4a erfordert. Die Geräte-Behandlungsroutinen sind
Nebenroutinen und im Hinblick auf die Verwendung der Register beschränkt. Dies bedeutet, daß wenn immer ein Fehler oder ein
Softwareproblem in einer Geräte-Behandlungsroutine auftritt, diese Routine nicht in die Operation anderer Routinen eingreifen
muß oder in der Lage sein muß{ einennicht-autorisierten
Zugriff auf Information zu gewinnen, wodurch das System unsicher würde. Die Sicherheit des Systems und der Schutz des
Speichers erfordert, daß jede Geräte-Behandlungsroutine keinen Zugriff auf Bereiche außerhalb jener zugeteilten Bereiche gewinnen
darf. Jene Register in den Kanälen, welche die absoluten Adressen stexiern und bearbeiten, müssen daher durch Programme
mit höherem Rang gesteuert werden, wie sie in Form der CSI- und CS-Routinen gemäß Figur 10b vorgegeben sind. Diese Register,
welche das LPW-Register mit umfassen, werden gemäß Figur 7c als
609384/0790
beschränkt zugänglich definiert, was bedeutet, daß nur ein Programm, das die geeignete Autorisierung zum Laden der Register
aufweist, in der Lage ist, diese Register zu laden. Das CSI-Programm umfaßt eine Mastermodus-Routine, die die
Zuteilung der Operationen durchführt und direkt die Geräte-Behandlungsroutinen steuert. In einer ersten Ausführungsform
überwacht diese Routine das Laden der beschränkt zugänglichen Register, um die Sicherheit des Systems zu gewährleisten.
Wenn ein E/A-Verbindungsbefehl durch den Zentralprozessor an den Prozessor 200 ausgegeben wird, so verursacht dieser eine
Unterbrechung. Der Prozessor 200 tritt auf Grund der Unterbrechung
in die CSI-Routine über einen Unterbrechungssteuerblock ICB ein. Die CSI-Routine überprüft die Anweisung und
teilt die geeignete Geräte-Behandlungsroutine zu. Bevor die Zuteilung stattfindet, errichtet die CSI-Routine die geforderten
Parameter, welche an die Platteneinheit-Behandlungsroutine weitergereicht und in vier Generalregistern gespeichert werden.
Bestimmte Parameter sind im Register GRlO des zugeordneten Prozessranges gespeichert (z.B. Unterbrechungsrang 5). Die
ersten 15 Bitpositionen des Registers GRlO speichern die periphere Transaktions-Tabellenadresse, die nächsten vier
Bitpositionen speichern den Ursprung (im allgemeinen das Zentralsystem), die nächsten 11 Bitpositionen speichern einen
Geräte-Identifizierungscode während die nächsten sechs Bitpositionen einen Geräte-Behandlungs-Identif i*zierungscode
speichern, der einer Subsystem-Nummer entspricht, wobei jeweils eine verschiedene Nummer jedem geladenen Programm zugeordnet
ist. Die CSI-Routine ruft das erste Befehlsdatensteuerwort IDCW ab und lädt dieses in das Register GR12. Andere Parameter
sind in den Registern GRlI und GR13 gespeichert.
Wenn die Platteneinheit-Behandlungsroutine das IDCW von dem Register GR12 angenommen hat, so decodiert sie die Anweisung
und findet heraus, daß es sich um eine Datenübertragungsanweisung handelt, worauf sie das Laden des LPW-Registers durch
609884/0790
die Operation bewerkstelligt. Wenn die Routine feststellt, daß es sich um eine übertragung gelesener Daten handelt, so führt
der Prozessor 200 eine Befehlsfolge zur Feststellung der Verfügbarkeit des durch das IDCW gekennzeichneten Gerätes aus.
Wenn die Routine feststellt, daß das Gerät verfügbar ist, dann lädt sie einen Aktionscode in das Register GR13. Vor dem
Eintritt in die CSI-Routine lädt die Geräte-Behandlungsroutine verschiedene seiner Generalregister. Wie erwähnt lädt die
Routine das Register GR13 mit einem Code, der die durch die CSI-Routine vorzunehmende Aktion bestimmt (z.B. wird ein Code
von 01 für das Laden eines LPW-Registers im Multiplexer 300 benutzt). Eine Kopie des Inhalts des Registers GRlO, der zum
Zeitpunkt der Verbindung an die Geräte-Behandlungsroutine weitergereicht wird und im Speicher 500 abgespeichert wird,
wird zu diesem Zeitpunkt aufgerufen. Dieser Registerinhalt wird sodann im Register GRlO gespeichert und dient als ein
Identifizierungscode für die CSI-Routine. Es sei darauf verwiesen, daß die in das Register zu ladende Information nicht
zu der Geräte-Behandlungsroutine weitergereicht wird. Die Information führt sodann einen Mastermodus-Eingangsstellenbefehl
durch, um die CSI-Routine aufzurufen.
In den Mastermodus-Prozeß (CSI) wird über einen Ausnahme-Steuer
block (z.B. ECBl) eingetreten, wobei der Ausnahme-Steuerblock durch die niedrigrangigsten 4 Bits eines Sofort-Operandenfeldes
des Mastermodus-Eingangsstellenbefehles festgelegt wird. Dies sind beispielsweise die Bits 10 bis 13 desjenigen Befehls,
der in seinem Format ein 8 Bit-Operationscodefeld, ein 4 Bit-Sofortwertfeld
und ein 4 Bit-Allgemeinregisterfeld aufweist.
Gemäß Figur 10a ist ersichtlich, daß der interne Speicher 500 eine Anzahl von Ausnahmesteuerblöcken aufweist, die durch die
CS-Routine fortgeschrieben werden, wobei jeder Ausnahmesteuerblock das dargestellte Format aufweist. Im Detail weist jeder
Ausnahmesteuerblock ECB vier Worte auf. Das erste Wort besitzt das Format des PSR-Registers und legt die Eigenschaften der
609884/0790
durch das vierte Wort festgelegten CSI-Routine fest. Im in
Figur 10a dargestellten Beispiel weisen die Bits 9 und 10 des ersten Wortes den Wert "1" auf. Dies bedeutet, daß die
CSI-Routine beschränkt zugängliche Register laden kann. Das Bit 10 zeigt an, daß die Operation seitenunterteilt ist. Im
vorliegenden Ausführungsbeispiel werden die Inhalte eines
jeden der Ausnahmesteuerblocke ECB während der Systemauslösung durch die CS-Routine geladen. Im allgemeinen nimmt
die CS-Routine auf andere durch sie fortgeschriebene Tabellen Bezug und lädt die in den Tabellen aufgelisteten Eigenschaften
für jede Routine in verschiedene Ausnahmesteuerblöcke ECB.
Während der Ausführung des Mastermodus-Eingangsstellenbefehles speichert der Prozessor 200 den Inhalt des CSR-Registers in
einem der Allgemeinregister und lädt die PSR-Information, die
aus dem Ausnahmesteuerblock (Wort 1) erhalten wird. Der Prozessor 200 speichert ebenfalls zusätzliche Information über den laufenden
Prozeß (z.B. IC, GR2, GR3, usw.).
Die CSI-Routine, deren Position durch das Wort 4 des Ausnahmesteuerblockes
ECB vorgegeben ist, wird aufgerufen. Die Routine wählt die zugehörige periphere Transaktionstabelle durch den
Geräte-Behandlungs-Identifizierungscode aus. Von hier aus nimmt die CSI-Routine unter Benutzung der Hinweisadresse auf die
entsprechende IDCW-Tabelle Zugriff, auf deren Information. Als
nächstes führt die CSI-Routine einen WREX-Befehl aus, der das Format gemäß Figur 6 aufweist, wodurch die Information in das
LPW-Register des Multiplexers 300 in der erläuterten Weise geladen wird. Da die Geräte-Behandlungsroutine bereits die geeignete
Steuerungsinformation in das PSR-Register geladen hat, wenn der Aufruf erfolgt, muß die CSI-Routine den zu adressierenden
physikalischen Kanal nicht mehr bestimmen. Ebenso sind die dem LPW-Register zugeordneten Beschränkungen in das PSR-Register
geladen worden.
609884/0790
Wie zuvor erläutert, erzeugt der Prozessor 200 gemäß Figur 2
bei der Ausführung eines WREX-Befehles eine PI-Anweisung, die das Format gemäß Figur 7a aufweist. Im Detail bestimmt das
GRl-FeId des WREX-Befehles durch seinen Code, welches der Allgemeinregister im Zwischenspeicher 203-10 die in das LPW-Register
zu ladende Adresseninformation enthält, wobei die Adresse des LPW-Registers durch das Adressenfeld festgelegt
ist.
Der Operationscode des WREX-Befehles wird durch, den Schalter
202-4 an den Speicher 201-2 gegeben, wodurch die Bezugnahme auf einen der Speicherplätze verursacht wird. Der Inhalt
des Speicherplatzes umfaßt ein Paar von Adressen, die die Startadressen der Mikrobefehlsfolgen im Steuerspeicher 201-10
vorgeben, welche für die Befehlsverarbeitung erforderlich sind. Das Adressenfeld des WREX-Befehles wird unter Mikroprogrammsteuerung
an die B-Operandeneingänge des Addierers/Verschiebers
204-2 angelegt, während der Inhalt "Null" des Zwischenspeicherpuffers an die A-Operandeneingänge gegeben wird. Die sich ergebende
Summe, die dem Adressenfeld des PI-Anweisungswortes
gemäß Figur 7a entspricht, wird in das Arbeitsregister R2 übertragen.
Als nächstes wird der durch das GRl-FeId festgelegte Allgemeinregisterspeicherplatz
adressiert und der Inhalt in den Puffer 203-16 ausgelesen. Während der Ausführungsphase des WREX-Befehles
wird die in dem R2-Register stehende PI-Anweisung in das Daten-Ausgangsregister
204-14 geladen. Der Prozessor 200 lädt zusätzlich unter Mikroprogrammsteuerung Signale von dem Register 201-15
und dem PSR-Register 204-20 in die Bitpositionen 0 bis 8 des Steuerungsregisters 204-16. Diese Signale geben die erforderliche
Steuerungsinformation für die Schnittstelleneinheit SIU-100 vor und sie dient der übertragung der PI-Anweisung zu dem
Multiplexer 300 oder zu der Anschlußstelle (z.B. Anschluß A)f
zu dem der Multiplexer eine Verbindung herstellt.
60S884/0790
Der Prozessor 200 setzt die Leitung AOPR auf "1" und verzögert die Ausführung des nächsten Mikrobefehls bis er über
die Leitung ARA ein Signal empfängt, das die Annahme der Anforderung durch die Schnittstelleneinheit SIU-IOO anzeigt.
Unter der Voraussetzung, daß die Annahme gegeben ist, setzt die Schnittstelleneinheit SIU-IOO die Leitung ARA auf "1".
Gleichzeitig setzt die Schnittstelleneinheit SIU-IOO die Leitung APC auf "1", wodurch dem Multiplexer 300 angezeigt
wird, daß er die PI-Anweisung anzunehmen hat.
Gemäß Figur 4c verursacht der Wert "1" auf der Leitung ACA die Umschaltung des Signales PCRCVDlO auf den Wert "1". Das
PI-Anweisungswort wird ferner über die Leitungen PDFS in das
PC-Register 301-2 geladen. Bei Feststellung einer Änderung des logischen Zustandes auf der Leitung ARA vervollständigt
der Prozessor 200 unter Mikrobefehlssteuerung die Verarbeitung des VIREX-Befehles durch Übertragung des LPW-Datenwortes,
welches das Format gemäß Figur 8a aufweist, von dem Puffer 203-16 zu dem Daten-Ausgangsregister 204-14. Das LPW-Wort
wird über die Leitungen PDFS in das PD-Register 301-5 geladen.
Die Gatterschaltkreise gemäß Figur 4c decodieren das PI-Anweisungswort
und setzen die Signale EXPICOMlO und C0MLDREG10 auf 11I". Der durch das Signal C0MLDREG10 freigegebene Schaltkreis
301-416 decodiert die Adressensignale entsprechend den Bits 32 bis 34 des Anweisungswortes und setzt das Signal
PILDLPWlO auf "1". Dieses Signal gibt seinerseits das LPW-Register zum Laden durch den Inhalt des PD-Registers 301-5
frei.
Es sei darauf verwiesen, daß die verschiedenen Schalter, wie beispielsweise PD, H und CW durch geeignete nicht dargestellte
Schaltkreise betätigt werden, die ebenfalls die Adressensignale des PI-Anweisungswortes decodieren. Beispielsweise wird der
DT-Schalter nicht betätigt, wenn das Signal PILDDTSOO den Wert "1" aufweist, während die anderen erwähnten Schalter betätigt
609884/0790
werden. Da in diesem Beispiel das Laden des LPW-Registers
gestattet ist, weist das Signal PCREG0200 den Wert "O" auf. Das Ausnahme-Flip-Flop 301-414 verbleibt deshalb in dem Zustand
11O".
Es ist ersichtlich, daß; wenn beispielsweise die Geräte-Behandlungsroutine
einen WREX-Befehl auszuführen versucht, der ein Adressenfeld enthielt, durch das das LPW-Register
als das zu ladende Register gekennzeichnet wird, das von dem PSR-Register erhaltene Bit 2 auf den Wert "0" gesetzt
ist. In diesem Fall behält das Ladesignal CDMLDREG10 den Wert "0" bei, wodurch der Schaltkreis 301-416 an seiner
Freigabe gehindert wird. Das Signal PCREG0200 besitzt den Wert "1"-, wodurch das Gatter 301-412 das Signal SETEXCPT10
auf "1" gesetzt wird und das Flip-Flop 301-414 auf "1" umschaltet.
Das Ausnahmesignal EXCPTlO versetzt die Schaltkreise des
Blockes 301-34 in die Lage, eine Unterbrechung vom Typ 3 zu erzeugen, sofern keine anderen Unterbrechungen mit
höherer Priorität vorliegen. Diese Signale wählen die geeigneten Pegelsingale von den Schaltkreisen des Blockes 301-28
aus, die dem Unterbrechungs-Rang-Priorität-Netzwerk 301-24 zugeführt werden.
Die Pegel- und Typsignale für den Kanal Null (CAO) werden
sodann in das Register 301-22 zusammen mit der anderen Unterbrechungsinformation
geladen. Zu diesem Zeitpunkt wird das Unterbrechungs-Anforderungs-Flip-Flop 301-21 ebenfalls auf
den Wert "1" durch Schaltkreise geschaltet, die im Block 301-34 vorhanden sind. Da die Unterbrechung vom Typ 3 normalerweise
den Auftritt einer Ausnahme anzeigt, ist es nicht erforderlich, daß ein weiterer Status durch den Multiplexer
300 zu dem Prozessor 200 gegeben wird.
609884/0790
" 68 "" 2629268
Aus vorstehendem ist ersichtlich, daß nur jene Rotuinen, die auf Grund ihrer zugeordneten Eigenschaften einen unbeschränkten
Gebrauch der Multiplexerregister gestatten, diese Register auch laden können. Im gerade beschriebenen Beispiel gibt es nur eine
Klasse beschränkter Register. Im Gegensatz hierzu ist in Figur 4d eine Einrichtung dargestellt, bei der verschiedenen beschränkten
Registern gemäß Figur 7d eine Anzahl von Beschränkungen zugeordnet ist. Diese Beschränkungen werden nunmehr
unter Bezugnahme auf Figur lOb beschrieben.
Figur 10b zeigt schematisch die verschiedenen Klasse von Registern
und sie zeigt ferner, welchen Steuerroutinen Eigenschaften zur Steuerung des Ladens derselben zugeordnet sind.
Wie aus Figur lob ersichtlich, steuert die CSI-Routine das
Laden der Register der Gruppe I, welche wie zuvor erwähnt, Speicheradressen speichern. Diese Register entsprechen den
LPW-, den DA- und DT-Registern 301-46 gemäß Figur 4a. Die Steuerungs-Uberwachungsroutine (CS-Routine) steuert das Laden
der Register der Gruppe II, die wie zuvor erwähnt, Information für die Unterbrechungsverarbeitung speichern, wie beispielsweise
Unterbrechungsvektoren und Unterbrechungs-Prioritätsränge. Diese Register entsprechen den ICB-Registern 301-IO,
den Pegelregistern 3O1-12 und den Maskenregistern 301-14
gemäß Figur 4a. Die Wartungssystem-Routine (MSOS-Routine) steuert das Laden der Register der Gruppe III, wobei diese
Information für Testabläufe und Diagnoseoperationen benötigt wird. Diese Register entsprechen dem ZAC-, PDTS-, Daten 1-
und Daten 2-Registern der Registerreihe 301-64 gemäß Figur 4a. Schließlich steuern die Geräte-Behandlungsroutinen, wie beispielsweise
die Platteneinheit-Behandlungsroutine direkt das Laden der Register der Gruppe IV, die normalerweise Daten
speichern, die durch Benutzerprogramme bearbeitet werden und keinen Ladebeschränkungen unterliegen. Diese Register entsprechen
den verschiedenen Registern des Blockes 302 gemäß Figur 4a.
609884/0790
Die Steuerungs-Überwachungsroutine gibt die Eigenschaften
für jede andere Routine vor, obgleich die CS-Routine nur das Laden der Register der Gruppe II steuert. Die CS-Routine
kann daher das Laden aller der beschränkt zugänglichen Register des Multiplexers 300 steuern. Wie zuvor erwähnt, sind
die den verschiedenen Routinen zugeordneten Eigenschaften in
dem ersten Wort eines jeden Ausnahmesteuerblockes gemäß Figur 10a enthalten, xtfelches bei der Systemauslösung durch die
CS-Routine geladen wird. Die infolge einer Ausnahmeverarbeitung aufzurufende Routine wird durch das Wort 4 des Ausnahmesteuerblockes
vorgegeben.
Die Art und Weise, in der die Register der Gruppe I geladen werden, entspricht im wesentlichen derjenigen Art und Weise,
wie sie im Zusammenhang mit Figur 10a beschrieben wurde. Die Unterschiede betreffen die Formate des PSR-Registers und der
PI-Anweisung. Insbesondere umfassen die Eigenschaftssignale entsprechend dem ersten Wort des Ausnahmesteuerblockes ECBl
gemäß Figur 10a drei Lade-Erlaubnisbits anstelle von einem. Demgemäß weist eine von dem Prozessor 200 in Abhängigkeit
von dem WREX-Befehl ausgegebene PI-Anweisung das Format gemäß
Figur 9c auf.
Die PI-Anweisungsworte werden zu dem Multiplexer 300 in der
gleichen zuvor beschriebenen Weise übertragen und in dem PC-Register 301-2 und dem PD-Register 301-5 gespeichert. Die
Schaltkreise gemäß Figur 4d decodieren das Anweisungswort, was dazu führt, daß das UND-Gatter 301-411e das Signal
C0MLDREG110 auf "1" setzt. Hierdurch wird der Schaltkreis 301-416a in die Lage versetzt, die Signale PC321O bis PC341O
zu decodieren, wodurch eines der Ladesignale der Register der Gruppe I auf "1" gesetzt wird (z.B. der Registercode von 013
setzt das LPW-Ladesignal PILDLPWlO auf "1"). Das Ausnahme-Flip-Flop
301-414a behält den Wert "0" bei.
609884/0790
2623268
Es ist ersichtlich, daß für den Fall, daß ein unterschiedlicher restriktiver Bitcode durch die PI-Anweisung ausgewählt
wurde und der gleiche. Registercode aufgerufen wurde, keine Ladesignale für die Register der Gruppe I erzeugt werden.
Das UND-Gatter 301-412b setzt das Signal SETEXCPGIOO
auf den Wert 11O", wodurch das Ausnahme-Flip-Flop 301-414a
auf "1" umschaltet. Gleichzeitig setzt das Gatter 301-412b das Signal SETEXCPG110 auf "1", wodurch ein vorbestimmtes
Bit innerhalb der Bitpositionen des Statusregisters 301-45 auf "1" umgeschaltet wird. Hierdurch wird dem System die
besondere Art der Registerübertretung angezeigt. Der Inhalt des Statusregisters 301-45 wird gelesen.
Die anderen Gatter des Schaltkreises gemäß Figur 4d arbeiten in ähnlicher Weise, um Laderegistersignale für die anderen
beschränkt zugänglichen Register nur dann zu erzeugen, wenn die Routinen, die die PI-Anweisungen ausgeben, auf "1" gesetzte,
geeignete Erlaubnisbits aufweisen. Beim Feststellen einer Übertretung sperren diese Schaltkreise die Erzeugung
der Ladesignale, setzen die geeigneten Bitpositionen des Statusregisters 301-45 und schalten das Ausnahme-Flip-Flop
301-414a auf den Wert "1".
Da die Register der Gruppe II Unterbrechungsinformation behandeln,
werden diese Register normalerweise durch die CS-Routine als Teil einer Ladeoperation geladen. Dies bedeutet,
daß die CS-Routine zunächst in den internen Speicher 500 geladen wird. Ist die Routine einmal geladen, so erzeugt sie
verschiedene Tabellen und anschließend wird die CSI-Routine geladen. Als nächstes werden die Geräte-Behandlungsroutinen
geladen. Sind sie einmal geladen, so führt die Geräte-Behandlungsroutine eine Auslösungsroutine durch, während der
die CS-Routine über einen Mastermodus-Eingangsstellenbefehl zum Laden der Register der Gruppe II aufruft. Vor der Ausführung
des Mastermodus-Eingangsstellenbefehles lädt die
609884/0790
Geräte-Behandlungsroutine das Allgemeinregister 14 mit Information, um anzuzeigen, welches Register zu laden ist
und sie lädt das Allgemeinregister 8 mit der Steuerungsinformation, die zur Auswahl des Kanales erforderlich ist
(z.B. PSR-Bits 0 bis 7).
Wie zuvor erläutert, geht die Steuerung auf die CS-Routine über, welche einen WREX-Befehl zum Laden der angeforderten
Unterbrechungsinformation in die Register der Gruppe II (z.B. Registernummer 001) ausführt. Wie in Figur 10a dargestellt,
nimmt die Geräte-Behandlungsroutine auf einen Ausnahmesteuerblock ECB Bezug, um den vorstehenden Befehl zu
verwirklichen.
Die letzte Routine, der ein unbeschränkter Zugriff auf bestimmte
Register des Multiplexers 300 gestattet ist, ist die MSOS-Routine. Wenn immer ein Fehler in einem Kanal festgestellt
wird, so wird hierdurch der Multiplexer 300 veranlaßt, den Prozessor 200 zu unterbrechen. Der Prozessor 2OO
tritt über einen Unterbrechungssteuerblock ICB in die CSI-Routine
ein, welche feststellt,
welches Kanalprogramm oder welche Geräte-Behandlungsroutine zu diesem Zeitpunkt ausgeführt worden ist und er gibt die
Steuerung an diese : Routine ab, wodurch bestimmte, infolge eines Fehlers unterbrochene Operationen vervollständigt
werden können. Bei der Vervollständigung wird eine Ausnahme erzeugt, wobei die Geräte-Behandlungsroutine die CS-Routine
über einen Mastermodus-Eingangsstellenbefehl aufruft. Vor dem
Aufruf lädt die Geräte-Behandlungsroutine Information in das Allgemeinregister 13, wodurch der Grund des Fehlers angezeigt
wird und sie lädt das Allgemeinregister 14}durch dessen Inhalt
die angeforderte Steuerungsübernahme durch die MSOS-Routine angezeigt wird. Die CS-Routine bewirkt auf Grund des Inhalts
verschiedener Generalregister (PSR, IC und PTBR) den Steuerungsübergang auf die MSOS-Routine anstelle der Geräte-Behandlungsroutine
bei der Rückkehr der Steuerung über einen Mastermodus-
609 8 84/0790
Befehl, der eine Wiederherstellung des Prozeßzustandes verursacht, der gerade vor dem Auftritt der letzten Ausnahme
bestand. Die CS-Routine sichert ebenfalls Information, durch die die anfordernde Routine gekennzeichnet ist.
Da die CS-Routine bei der Wiedererrichtung des vorangegangenen
Prozeßzustandes die Information verändert hat, auf die Bezug
genommen werden muß, geht die Steuerung auf die MSOS-Routine über. Die MSOS-Routine prüft den Inhalt des Allgemeinregisters
13, um festzustellen, ob die Steuerung des Kanals den Ablauf sofortiger Test- und Diagnoseprogramme erfordert. Wird eine
sofortige Kanalsteuerung gewünscht, so ruft die MSOS-Routine über einen Mastermodus-Eingangsstellenbefehl durch Erzeugung
einer Ausnahme die CS-Routine auf. Die CS-Routine übernimmt die Information, die die Geräte-Behandlungsroutine kennzeichnet.
Sie lädt sodann die Information in die zugehörigen Generalregister und führt eine Rückkehr von dem Mastermodus-Befehl
durch. Hierdurch kehrt die Steuerung auf die Geräte-Behandlungsroutine zurück, welche die CS-Routine zur Freigabe
des Kanals auffordert. Bei einer Signalisierung der Freigabe durch die CS-Routine signalisiert die Geräte-Behandlungsroutine
der MSOS-Routine die Freigabe.
Die MSOS-Routine fordert die CS-Routine zur Zuordnung des Kanales auf, damit die Test- und Diagnoseroutinen hinsichtlich
des Kanales ablaufen können. Zu diesem Zeitpunkt fordert die MSOS-Routine die CS-Routine auf, das Unterbrechungssteuerblockregister
(Registernummer 001) mit der geeigneten Unterbrechungssteuerblockinformation
zu laden, um alle Unterbrechungen zurück zu der MSOS-Routine und nicht zu der Geräte-Behandlungsroutine
zu leiten. Nur die CS-Routine ist daher in der Lage, dieses Register zu laden, da es ein Register
der Gruppe II ist.
Die CS-Routine führt in der zuvor erläuterten Weise einen WREX-Befehl aus, der eine PI-Anweisung zum Laden des Unterbrechungssteuerregisters
des Kanals erzeugt. Bei Beendigung
G --] ? ° 9- h / 0 7 9 0
dieses Befehls kehrt die CS-Routine zu der MSOS-Routine zurück,
die nunmehr den Kanal direkt steuern kann. Da die MSOS-Routine berechtigt istr Zugriff auf die Register der Gruppe III zu
nehmen, ist sie auch in der Lage, diese Register zu laden, wie
dies beim Ablauf von Test- und Diagnoseroutinen erforderlich ist.
Bei der Vervollständigung des Ablaufs von Test- und Diagnoseroutinen
ruft die MSOS-Routine die CS-Routine auf und lädt das Allgemeinregister 14 mit einer Anforderung, daß die Steuerung
auf die Geräte-Behandlungsroutine überzugehen hat. Durch Umkehrung der zuvor erwähnten Operationen holt die CS-Routine
die Steuerung von dem Kanal auf die Geräte-Behandlungsroutine zurück. Bei der Steuerungsaufnahme ersucht die Geräte-Behandlungsroutine
die CS-Routine,das ünterbrechungssteuerregxster
des Kanals erneut mit der geeigneten ICBD-Information zu laden,
so daß neue Unterbrechungen zu dieser Routine zurückgeleitet werden.
Aus vorstehendem ergibt sich, daß die Anordnung gemäß der vorliegenden
Erfindung Systemsicherheit dadurch sicherstellt, daß verschiedene Routinen vorgesehen sind, die durch Modifikation
verschiedener Register innerhalb des Multiplexers 300 den Aufruf einer geeigneten Steuerroutine erzeugen, die die erforderlichen
Eigenschaften zum Laden der beschränkt zugänglichen Register aufweisen. Dies geschieht durch die Verwendung von
Aufnahmesteuerblöcken, die die erforderliche Eigenschaftsinformation
(z.B. PSR von Wort 1) aufweisen. Durch Veränderung der Codierung der verschiedenen PSR-Wörter dieser Blöcke ist
die CS-Routine in der Lage, die Systemsicherheit wirksam zu steuern. Ebenso ist die CS-Routine in der Lage, die Registerbeschränkungen
in Übereinstimmung mit den Anforderungen des Systems zu verändern.
608884/0790
Liste der verwendeten Abkürzungen
AD-BUSY - Adapter Busy - Adapter belegt ADR - Adapter Data Ready - Adapter Daten bereit
ADTA - Accept Data To Adapter - Daten nach dem Adapter angenommen
ACTA - Accept Control To Adapter - Steuerung nach dem Adapter
angenommen
AIL - Active Interrupt Level - Aktiver Unterbrechungspegel
AOPR - Active Output Port Request - Aktive Ausgangsanschluß-Anforderung
APC - Accept Programmable Interface Command - Programmierbare Schnittstellenanweisung angenommen
ARA - Active Request Accepted - Aktive Anforderung angenommen
ARDA - Accept Read Data - Gelesene Daten angenommen
AST - Accept Status - Status angenommen
CA - Channel Adapter - Kanal-Adapter
CAI - Channel Adapter Interface - Kanal-Adapter Schnittstelle
CBB - Control Block Base - Steuerblockbasis
CDR - Channel Data Ready - Kanal-Daten bereit
CHBSY - Channel Busy - Kanal belegt
CSA - Control Store Adress - Steuerspeicheradresse
DA - Data Adress - Datenadresse
DAI - Device Adapter Interface - Geräte Adapter-Schnittstelle
DCW - Data Control Word - Datensteuerwort
DFM - Data From Memory - Daten vom Speicher
DFS - Data From SIU - Daten von der Schnittstelleneinheit
DFA - Data From Adapter - Daten vom Adapter
DT - Data Transfer - Datenübertragung
DTA - Data To Adapter - Daten zum Adapter
DPFM - Double Precision From Memory - Doppelpräzision vom
Speicher
DPFS - Double Precision From SIU - Doppelpräzision von der
Schnittstelleneinheit
DTM . - Data To Memory - Daten zum Speicher DTS - Data To SIU - Daten zur Schnittstelleneinheit
ECB - Exception Control Block - Ausnahme-Steuerblock
603884/07 9 0
EDT EV
GR
HLIP
GR
HLIP
IC
ICB IDA IDR
ICB IDA IDR
IFA IMID
LZP MIFS
NIR PCR PDFS
PI
PIR
PIR
End Data Transfer - Ende der Datenübertragung
Event - Ereignisauftritt
General Register - Allgemeinregister
Higher Level Interrupt Present - Unterbrechung mit höherem Pegel vorhanden
High Speed Multiplexer - Hochgeschwindigkeits-
Multiplexer
Instruction Counter - Befehlszähler
Interrupt Control Block - Unterbrechungssteuerblock
Interrupt Data - Unterbrechungsdaten
Interrupt Data Request - Uriterbrechungsdatenanforde-
rung
Interrupt From Adapter - Unterbrechung vom Adapter
Interrupt Multiport Identifier - Unterbrechungs-Mehr fachanschluß-Identifizierer
Input/Output-Processor - Eingang/Ausgang-Prozessor
Interrupt Request - Unterbrechungsanforderung List Pointer Word - Listen-Hinweisadressenwort
Low Speed Multiplexer - Niedriggeschwindigkeits-
Multiplexer
Level Zero Present - Pegel Null vorhanden
Multiport Identifier From SIU - Mehrfachanschluß-Identifizierer
von der Schnittstelleneinheit
Multiport Identifier To SIU - Mehrfachanschluß-Identifizierer nach der Schnittstelleneinheit
Next Instruction Read - Nächster Befehl gelesen Process Control Register - Prozeßsteuerregister
Programmable Interface Date From SIU - Programmierbare
Schnittstellendaten von der Schnittstelleneinheit
Programmable Interface Data To SIU - Programmierbare Schnittstellendaten zur Schnittstelleneinheit
Programmable Interface - Programmierbare Schnittstelle
Programmable Interface Ready - Programmierbare Schnittstelle bereit
Process State Register - Prozeßzustandsregister
Page Table Base Register - Seitentabellenbasisregister
Port Identifier From Adapter - Anschlußidentifizierer
vom Adapter
6 G 0 3 8 4 / 0 7 9
RDAA RDTR
RDEX RIFM
RLS
ROM
SDTS
ROM
SDTS
SIU
SLTM
SLTM
SYS-CLK -
WREX WRR
ZAC
ZIR
ZIR
Read Data Accepted - Gelesene Daten angenommen
Read Data Transfer Request - Übertragungsanforderung gelesener Daten
Read External - Externes Lesen
Request Identifier From Memory - Anforderungsidentifizierer
vom Speicher
Request Identifier To Memory - Anforderungsidentifizierer
zum Speicher
Release - Freigabe Read Only Memory - Festwertspeicher
Steering Data To SIU - Steuerungsdaten zur Schnittstelleneinheit
System Interface Unit - Systemschnittstelleneinheit Specification Lines To Memory - Bestimmungsleitungen
zum Speicher
System Clock - Systemtakt Terminate From Adapter - übertragungsbeendigung vom
Adapter
Write External - Externes Schreiben Working Register Output For Supplying Operands Arbeitsregisterausgang
für die Operandenlieferung
Working Register Output For Paging - Arbeitsregisterausgang für Seitenadressierung
Zone Address and Command - Zonenadresse und Anweisung ZAC Interface Ready - ZAC-Schnittstelle bereit
609884/0790
Claims (12)
1. Ein/Ausgabe-System zur Steuerung von Ein/Ausgabe-Operationen mehrerer, an einen Multiplexer angeschlossener peripherer
Geräte, wobei die Operationen auf Grund von Benutzer-Programmbefehlen
ausgeführt werden, mit einem Speicher, einem Prozessor zur Erzeugung von Anweisungen in Abhängigkeit von den
Benutzerbefehlen und mit einer Einrichtung zur Datenverbindung des Speichers mit dem Prozessor und dem Multiplexer auf einer
Prioritätsbasis, dadurch gekennzeichnet, daß der Multiplexer umfaßt:
mehrere Register zur Speicherung von durch die Anweisungen übertragenen Daten und Steuerinformationen, die zur Ausführung
von Ein/Ausgabe-Operationen durch den Multiplexer erforderlich sind, wobei
einem ersten dieser Register jede dieser Anweisungen zugeführt wird;
an die Register angeschlossene Steuereinrichtungen, welche ihrerseits umfassen:
an verschiedene Register angeschlossene Signalerzeugereinrichtungen
und an das erste Register und die Signalerzeugereinrichtung
angeschlossene Decodiereinrichtungen, wobei diese auf jede Anweisung ansprechen, die auf Grund ihrer Codierung das
Laden eines der Register festlegt, und wobei diese ausgewählten Register die Signalerzeugereinrichtung in die Lage versetzen,
ein Ausgangssignal zu erzeugen, das das Laden des einen Registers nur dann gestattet, wenn die Anweisung durch
ihre Codierung anzeigt, daß das Laden von dem System autorisiert ist.
609884/0790
2629288
2. System nach Anspruch 1, dadurch gekennzeichnet , daß jede Register-Ladeanweisung mehrere
Felder aufweist, von denen jedes wenigstens ein Bit umfaßt, daß ein erstes Feld durch seine Codierung die Register-Ladeoperation
festlegt, daß ein zweites Feld mit wenigstens einem Bit anzeigt, wenn das Laden untersagt ist und daß
die Signalerzeugungseinrichtung ein erstes Gatter aufweist, das an die Signale des ersten und zweiten Feldes angeschlossen
ist und in Abhängigkeit dieser Signale das Ausgangssignal zum Laden des einen Registers in Übereinstimmung
mit dem ersten Feld erzeugt, wenn das zweite Feld anzeigt, daß das Laden gestattet ist.
3. System nach Anspruch 2, dadurch gekennzeichnet , daß die Signalerzeugungseinrichtung
ein zweites Gatter aufweist, dem die Signale der ersten und zweiten Felder zugeführt sind und das ein Ausnahmesignal
erzeugt, wenn das zweite Feld anzeigt, daß das Laden durch das System nicht gestattet ist.
4. System nach Anspruch 3, dadurch gekennzeichnet,
daß der Multiplexer ferner eine an die Steuereinrichtung angeschlossene Logikschaltung aufweist
und die Logikschaltung ein zweites Gatter umfaßt, dem das Ausnahmesignal zugeführt ist und das eine Unterbrechung
für den Prozeß erzeugt.
5. System nach Anspruch 4, dadurch gekennzeichnet , daß der Multiplexer weiterhin ein an
das zweite Gatter angeschlossenes Statusregister aufweist, das durch das Ausnahmesignal in einen vorbestimmten Zustand
geschaltet wird, um den Typ des nicht gestatteten Ladeversuches anzuzeigen.
609884/0790
262926$
6. System nach Anspruch 2, dadurch gekennzeichnet
, daß die Register-Ladeanweisung erste und zweite Worte umfaßt, wobei das erste Wort die Vielzahl
von Feldern und das zweite Wort die in das eine Register zu ladenden Daten aufweist und wobei dem einen
der Register das erste Wort und einem zweiten aus der Vielzahl von Registern das zweite in das eine Register
zu ladende Wort zugeführt wird.
7. System nach Anspruch 1, dadurch gekennzeichnet , daß jede Register-Codeanweisung mehrere
Felder aufweist, daß ein erstes Feld die Register-Ladeoperation bestimmt, daß ein zweites Feld mehrere Bits aufweist,
die durch ihre Codierung Beschränkungen hinsichtlich des Ladens verschiedener Gruppen innerhalb dieser Register
vorgeben, daß ein drittes Feld durch seine Codierung ein Register innerhalb einer Registergruppe festlegt, daß
mehrere Gatter angeordnet sind, daß jedem Gatter Signale entsprechend dem ersten Feld und einem Bit aus der Vielzahl
der Bits des zweiten Feldes zugeführt sind und jedes Gatter auf Grund der zugeführten Signale ein Ausgangssignal
zum Laden des durch das dritte Feld in Übereinstimmung mit dem ersten Feld festgelegten Registers erzeugt, wobei das
Laden nur erfolgt, wenn das entsprechende Bit des zweiten Feldes anzeigt, daß das Laden gestattet ist.
8. System nach Anspruch 7, dadurch gekennzeichnet , daß jedes der Gatter an die Signale
des dritten Feldes angeschlossen ist und daß das dritte Feld eine Anzahl Bits aufweist, die durch ihre Codierung
die verschiedenen Gruppen von zu ladenden Registern bestimmen , wobei
ein erstes codiertes Bitmuster aus der Anzahl von Bits eine erste Gruppe von Registern zur Speicherung absoluter
Speicheradressen festlegt;
609884/0790
ein zweites codiertes Bitmuster aus der Anzahl von Bits eine zweite Gruppe von Registern zur Speicherung von
Unterbrechungsdaten zur Unterbrechung des Prozesses festlegt;
ein drittes codiertes Bitrauster aus der Anzahl von Bits eine dritte Gruppe von Registern zur Speicherung von Information
festlegt, die zur Diagnoseerleichterung des Multiplexers benutzt wird und
ein viertes codiertes Eitmuster aus der Anzahl von Bits
eine vierte Gruppe von Registern zur Speicherung von Information während der Ausführung.der E/A-Operationen
festlegt.
9. System nach Anspruch 8, dadurch gekennzeichnet , daß die eine Vielzahl von Speicherplätzen
aufweisende Speichereinrichtung Gruppen von Speicherplätzen zur Befehlsspeicherung besitzt, wobei
die Befehle verschiedene Steuerroutinen und Geräte-Behandlung sr outinen umfassen, daß eine erste Steuerroutine
der Steuerung der Geräte-Behandlungsroutine dient und den Prozessor in die Lage versetzt, eines der Register
aus der ersten Gruppe der beschränkt zugänglichen Register zu laden, daß eine zweite Steuerroutine der Steuerung von
E/A-Systemmittel dient und den Prozessor in die Lage versetzt, eines der Register aus der zweiten Gruppe der beschränkt
zugänglichen Register zu laden, daß eine dritte Steuerroutine der Steuerung von Fehlerdiagnosen innerhalb
des Multiplexers dient und den Prozessor in die Lage versetzt, eines der Register aus der dritten Gruppe der beschränkt
zugänglichen Register zu laden und daß die Geräte-Behandlungsroutine den Prozessor in die Lage versetzt, eines
der Register aus der vierten Gruppe der beschränkt zugänglichen Register zu laden.
609884/0790
262926S
10. System nach Anspruch 1, dadurch gekennzeichnet
, daß der Prozessor aufweist:
ein Prozessor-Zustandsregister zur Speicherung von Informationen, die zur Steuerung der Operation einer
gerade auf dem Prozessor bearbeiteten Routine erforderlich ist, wobei die Information durch ihre Codierung
Hinweise auf mit der laufenden Routine verbundene Beschränkungen aufweist und
mikroprogrammierte Steuereinrichtungen zur Ausführung eines jeden Befehles innerhalb der eine E/A-Operation
festlegenden Routine durch Erzeugung von Signalen in Abhängigkeit von der Codierung entsprechender Anweisungen,
um anzuzeigen, ob das Laden von dem System autorisiert ist.
11. System nach Anspruch 10,dadurch gekennzeichnet , daß die Speichereinrichtung eine Vielzahl
von Speicherplätzen zur Speicherung von Gruppen von Ausnahmesteuerblöcken aufweist, die durch ihre Codierung
die in das Prozeß-Zustandsregister zu ladende Information sowie eine auf Grund einer Ausnahmebedingung auszuwählende
Steuerroutine festlegen und daß der Prozessor eine der Peststellung.des Ausnahmezustandes dienende Ausnahmesteuerung
aufweist, die folgende Einrichtungen umfaßt:
ein erstes Register zur Speicherung einer Steuerblockbasisadresse für die Steuerblöcke,
ein zweites Register zur Speicherung einer den Typ der Ausnahme festlegenden Konstanten und
einen Addierer, der an die beiden Register angeschlossen ist und aus der Steuerblockbasisadresse und der Konstanten eine
einen bestimmten Steuerblock bestimmende Adresse bildet, wobei der adressierte Steuerblick der Verarbeitung der Ausnahme
und dem Laden des Prozessor-Zustandsregisters mit den der Steuerroutine zugeordneten Beschränkungen dient.
60S884/0790
12. System nach Anspruch 1, dadurch gekennzeichnet , daß der Multiplexer als E/A-Multiplexer
mehrere Anschlüsse aufweist, an die verschiedene periphere Geräte angeschlossen sind und die der Verarbeitung von
Ereignisauftritten während auf Grund von Benutzer-Programmbefehlen ausgeführter E/A-Operationen dienen, daß ferner
hinsichtlich des Multiplexers mehrere Kanalabschnitte angeordnet sind, von denen jeder an einen Anschluß angeschlossen
ist und daß jeder Kanalabschnitt eine Anzahl von Registern aufweist, die der Speicherung der durch die
Anweisungen übertragenen Daten und Steuerinformationen dienen und die zur Ausführung der E/A-Operationen durch den
Multiplexer erforderlich sind.
609884/0790
Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/591,563 US4017839A (en) | 1975-06-30 | 1975-06-30 | Input/output multiplexer security system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2629266A1 true DE2629266A1 (de) | 1977-01-27 |
Family
ID=24366962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762629266 Withdrawn DE2629266A1 (de) | 1975-06-30 | 1976-06-30 | Ein/ausgabe-system |
Country Status (7)
Country | Link |
---|---|
US (1) | US4017839A (de) |
JP (1) | JPS526432A (de) |
BE (1) | BE843562A (de) |
CA (1) | CA1074456A (de) |
DE (1) | DE2629266A1 (de) |
FR (1) | FR2316657A1 (de) |
GB (1) | GB1557672A (de) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4271466A (en) * | 1975-02-20 | 1981-06-02 | Panafacom Limited | Direct memory access control system with byte/word control of data bus |
US4124889A (en) * | 1975-12-24 | 1978-11-07 | Computer Automation, Inc. | Distributed input/output controller system |
US4313160A (en) * | 1976-08-17 | 1982-01-26 | Computer Automation, Inc. | Distributed input/output controller system |
US4494186A (en) * | 1976-11-11 | 1985-01-15 | Honeywell Information Systems Inc. | Automatic data steering and data formatting mechanism |
US4093986A (en) * | 1976-12-27 | 1978-06-06 | International Business Machines Corporation | Address translation with storage protection |
US4104721A (en) * | 1976-12-30 | 1978-08-01 | International Business Machines Corporation | Hierarchical security mechanism for dynamically assigning security levels to object programs |
US4156907A (en) * | 1977-03-02 | 1979-05-29 | Burroughs Corporation | Data communications subsystem |
US4296464A (en) * | 1977-03-03 | 1981-10-20 | Honeywell Inc. | Process control system with local microprocessor control means |
US4115854A (en) * | 1977-03-28 | 1978-09-19 | International Business Machines Corporation | Channel bus controller |
JPS5530730A (en) * | 1978-08-22 | 1980-03-04 | Nec Corp | Data processor |
US4384322A (en) * | 1978-10-31 | 1983-05-17 | Honeywell Information Systems Inc. | Asynchronous multi-communication bus sequence |
US4370708A (en) * | 1978-10-31 | 1983-01-25 | Honeywell Information Systems Inc. | Logic system for selectively reconfiguring an intersystem communication link |
US4287562A (en) * | 1979-09-06 | 1981-09-01 | Honeywell Information Systems Inc. | Real time adapter unit for use in a data processing system |
US4310895A (en) * | 1979-11-02 | 1982-01-12 | International Business Machines Corporation | Plural null digital interconnections |
DE3041219C2 (de) * | 1980-11-03 | 1983-11-03 | Bruker Analytische Meßtechnik GmbH, 7512 Rheinstetten | Vorrichtung zur Speicherung von Meßdaten |
US4425615A (en) | 1980-11-14 | 1984-01-10 | Sperry Corporation | Hierarchical memory system having cache/disk subsystem with command queues for plural disks |
US4831523A (en) * | 1986-10-31 | 1989-05-16 | Bull Hn Information Systems Inc. | Multiple DMA controller chip sequencer |
AU2814089A (en) * | 1987-11-10 | 1989-06-01 | Echelon Systems | An input/output section for an intelligent cell which provides sensing, bidirectional communications and control |
US5113498A (en) * | 1987-11-10 | 1992-05-12 | Echelon Corporation | Input/output section for an intelligent cell which provides sensing, bidirectional communications and control |
JPH07122868B2 (ja) * | 1988-11-29 | 1995-12-25 | 日本電気株式会社 | 情報処理装置 |
US5185865A (en) * | 1989-08-04 | 1993-02-09 | Apple Computer, Inc. | System for simulating block transfer with slave module incapable of block transfer by locking bus for multiple individual transfers |
GB9010603D0 (en) * | 1990-05-11 | 1990-07-04 | Int Computers Ltd | Access control in a distributed computer system |
US5530901A (en) * | 1991-11-28 | 1996-06-25 | Ricoh Company, Ltd. | Data Transmission processing system having DMA channels running cyclically to execute data transmission from host to memory and from memory to processing unit successively |
US5692170A (en) * | 1995-04-28 | 1997-11-25 | Metaflow Technologies, Inc. | Apparatus for detecting and executing traps in a superscalar processor |
EP0825739A1 (de) * | 1996-08-15 | 1998-02-25 | Koninklijke KPN N.V. | Verfahren zum Laden von Befehlen in ein Sicherheitsmodul eines Endgerätes |
US6320501B1 (en) | 1999-05-25 | 2001-11-20 | Pittway Corporation | Multiple sensor system for alarm determination with device-to-device communications |
KR100792213B1 (ko) * | 2005-08-11 | 2008-01-07 | 삼성전자주식회사 | 메모리 컨트롤러와 메모리를 인터페이싱하는 랩퍼 회로 |
US7530106B1 (en) | 2008-07-02 | 2009-05-05 | Kaspersky Lab, Zao | System and method for security rating of computer processes |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL294416A (de) * | 1962-06-22 | |||
US3328768A (en) * | 1964-04-06 | 1967-06-27 | Ibm | Storage protection systems |
US3530438A (en) * | 1965-12-13 | 1970-09-22 | Sperry Rand Corp | Task control |
US3447135A (en) * | 1966-08-18 | 1969-05-27 | Ibm | Peripheral data exchange |
US3562717A (en) * | 1968-02-23 | 1971-02-09 | Gen Electric | System protection apparatus |
US3815101A (en) * | 1972-11-08 | 1974-06-04 | Sperry Rand Corp | Processor state and storage limits register auto-switch |
US3845425A (en) * | 1973-06-15 | 1974-10-29 | Gte Automatic Electric Lab Inc | Method and apparatus for providing conditional and unconditional access to protected memory storage locations |
US3839706A (en) * | 1973-07-02 | 1974-10-01 | Ibm | Input/output channel relocation storage protect mechanism |
-
1975
- 1975-06-30 US US05/591,563 patent/US4017839A/en not_active Expired - Lifetime
-
1976
- 1976-05-17 CA CA252,681A patent/CA1074456A/en not_active Expired
- 1976-06-28 FR FR7619655A patent/FR2316657A1/fr active Granted
- 1976-06-29 BE BE168444A patent/BE843562A/xx not_active IP Right Cessation
- 1976-06-29 JP JP51076987A patent/JPS526432A/ja active Pending
- 1976-06-30 DE DE19762629266 patent/DE2629266A1/de not_active Withdrawn
- 1976-06-30 GB GB27209/76A patent/GB1557672A/en not_active Expired
Non-Patent Citations (1)
Title |
---|
BORNEMANN, Helmut, Hrsg.: Jahrbuch des elektrischen Fernmeldewesens, 18. Jg., Bad Windsheim: Verlag für Wissenschaft und Leben Georg Heidecker, 1987, S. 18-22 * |
Also Published As
Publication number | Publication date |
---|---|
FR2316657B1 (de) | 1979-07-20 |
JPS526432A (en) | 1977-01-18 |
BE843562A (fr) | 1976-10-18 |
AU1422976A (en) | 1977-12-01 |
FR2316657A1 (fr) | 1977-01-28 |
GB1557672A (en) | 1979-12-12 |
US4017839A (en) | 1977-04-12 |
CA1074456A (en) | 1980-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2629266A1 (de) | Ein/ausgabe-system | |
DE2755897C2 (de) | ||
DE2750721A1 (de) | Ein/ausgabe-system | |
DE2755371A1 (de) | Ein/ausgabe-verarbeitungssystem | |
DE2612139A1 (de) | Ein/ausgang-steuerungssystem | |
DE3716229C2 (de) | Mikroprozessorchip mit einem Stapelrahmen-Cache | |
DE2612083A1 (de) | Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung | |
DE2755952C2 (de) | ||
DE2722099C2 (de) | ||
DE2714805C2 (de) | ||
DE2224537C2 (de) | Einrichtung und Verfahren zur Instruktionsauswahl in einem Fließbandprozessor | |
DE2411963C3 (de) | Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken | |
DE3127349C2 (de) | ||
DE2230830C2 (de) | Datenverarbeitungsanlage | |
DE3114961C2 (de) | ||
DE2806045A1 (de) | Dv-system mit pufferspeicher | |
DE4104781C2 (de) | Speicherzugriffssteuerung | |
DE2165767A1 (de) | Datenverarbeitungssystem | |
DE2657848A1 (de) | Steuereinheit fuer ein datenverarbeitungssystem | |
DE2806024A1 (de) | Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit | |
DE3131341A1 (de) | "pufferspeicherorganisation" | |
DE2750299A1 (de) | Ein/ausgabe-system | |
DE3606211A1 (de) | Multiprozessor-computersystem | |
DE2517276A1 (de) | Datenverarbeitungssystem | |
DE2755608A1 (de) | Wartungseinrichtung in einem dv-system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8125 | Change of the main classification |
Ipc: G06F 3/04 |
|
8139 | Disposal/non-payment of the annual fee |