DE2459956A1 - Prozessor und diesen verwendendes peripheres verarbeitungssystem - Google Patents
Prozessor und diesen verwendendes peripheres verarbeitungssystemInfo
- Publication number
- DE2459956A1 DE2459956A1 DE19742459956 DE2459956A DE2459956A1 DE 2459956 A1 DE2459956 A1 DE 2459956A1 DE 19742459956 DE19742459956 DE 19742459956 DE 2459956 A DE2459956 A DE 2459956A DE 2459956 A1 DE2459956 A1 DE 2459956A1
- Authority
- DE
- Germany
- Prior art keywords
- routine
- processor
- branch
- microinstruction
- control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Detection And Correction Of Errors (AREA)
- Debugging And Monitoring (AREA)
- Executing Machine-Instructions (AREA)
Description
Patentanwalt
3 MOnchsn 22, Herrnstr. 15, Tel. 292555
Mein Zeichen: P 2068
Anmelder: Honeywell Information Systems Inc. 200 Smith Street
Waltham, Mass., V. St. A.
Waltham, Mass., V. St. A.
Prozessor und diesen verwendendes peripheres
Verarbeitungssystem
Die Erfindung bezieht sich auf Datenverarbeitungssysteme und
insbesondere auf mikroprogrammierte Prozessoren für die Ausführung
von Befehlen, um ein peripheres System zu betreiben.
Y/ie an sich bekannt, sind periphere Untersysteme von Datenverarbeitungssystemen
in zunehmendem Maße bedeutsam geworden. Außerdem hat ihre Kompliziertheit zugenommen im Hinblick darauf,
viele Funktionen ausführen zu können, die bisher durch Eingabe/Ausgabe-Verarbeitungseinheiten
oder -Steuereinrichtungen ausgeführt wurden. Darüber hinaus sind periphere Untersysteme
erforderlich, um eine Vielzahl von Einrichtungen, die jeweils unterschiedliche Eigenschaften besitzen, zu bedienen.
Auf Grund der steigenden Anforderungen an die peripheren Untersysteme sind die Steuerspeicher von mikroprogrammierbaren
509825/0978
ORIGINAL
peripheren Prozessoren ständig in der Größe und Breite gewachsen. Darüber hinaus hat die derartigen Steuerspeichern
zugehörige Verzweigungsanordnung an Kompliziertheit in starkem Maße zugenommen. Ein Grund liegt darin, daß der Prozessor Folgen
von Mehrverzweigungsoperationen auszuführen hat, um den Befehlscode unter einem gegebenen Satz von Bedingungen zu
überprüfen. Dies dient dazu, auf die in Frage kommende Routine während der Verarbeitung des jeweiligen Befehlstyps
überzugehen. Die bisher bekannten mikroprogrammierbaren peripheren Prozessoren haben sich als teuer erwiesen, und zwar
auf Grund der gestiegenen Speicheranforderungen und Ablauffolge-Hardware. Wenn derartige Prozessoren darüber hinaus zusätzliche
Einrichtungen zu bedienen haben, die Eigenschaften aufweisen, welche unterschiedlich sind zu den Eigenschaften,
der zuvor bedienten Einrichtungen, müssen die betreffenden Prozessoren darüber hinaus einem vollständigen Neuaufbau unterzogen
werden.
Der Erfindung liegt demgemäß die Aufgabe zu Grunde, ein verbessertes
Verfahren und eine verbesserte Anordnung für einen mikroprogrammierbaren peripheren Prozessor zu schaffen. Darüber
hinaus soll ein verbesserter mikroprobrammierbarer peripherer Prozessor für die Verarbeitung von Befehlen geschaffen
werden, in die die Operation einer Vielzahl von Einrichtungen einbezogen ist, welche unterschiedliche Betriebseigenschaften
haben. Schließlich sollen ein verbessertes Verfahren und eine verbesserte Anordnung für periphere Untersysteme
geschaffen werden, die eine erhöhte Flexibilität und eine Kostenherabsetzuhg für das periphere Untersystem mit sich
bringen.
Gelöst wird die vorstehend aufgezeigte Aufgabe bei einer bevorzugten Ausführungsform der vorliegenden Erfindung dadurch,
50 9 8 25/0978
" 3" 2459as6
daß ein mikroprogrammierbarer peripherer Prozessor vorgesehen ist, der einen Mehrzweckregisterspeicher und einen Festwert-Steuerspeicher
für die Speicherung von Mikroprogrammen zumindest zweier genereller Klassen oder Typen von Mikroprogrammen enthält.
Die erste Klasse umfaßt Steuer-Mikroprogrammroutinen, die die Funktionen angeben, welche unterschiedliche Befehle auszuführen
haben. Die zweite Klasse umfaßt die Ausführungs-Routinen, die die verschiedenen Bereiche des Prozessors für die Ausführung
des Befehls einstellen. Der Prozessor ruft diese Routinen durch die Benutzung einer zumindest ein Rückführregister enthaltenden
Verzweigungs-Anordnung und über die Verzweigung auf Bedingungs-Mikrobefehle hin an. Die Befehle sind so codiert, daß
bestimmte Leitungs- oder Direktor-Bytes abgeholt werden, die
in dem Allzweckregisterspeicher gespeichert sind. Danach erfolgt durch die unterschiedlichen Ausführungs-Mikroprogramm-Routinen
eine Bezugnahme auf diese Informations-Bytes, um nämlich zu bestimmen, welche Operationen auszuführen sind.
Die obige Anordnung ermöglicht, die Leitungs-Routinen zu spezialisieren, um verschiedene Ereignisse, die sich auf die
Ausführung eines bestimmten Befehls beziehen, zu verarbeiten. Dies ermöglicht seinerseits den Ausführungs-Routinen, effektiv
zu arbeiten, indem ein Minimum an Mikrobefehlen benutzt wird. Die Ausführungs-Routinen haben dabei insbesondere nicht
kontinuierlich Test-Befehle auszuführen, um den Typ des Befehls zu bestimmen, der ausgeführt wird, da nämlich die Leitungs-Routinen
zuvor die Bedingungen für die Ausführung des Befehls festgelegt haben.
Darüber hinaus gestattet die vorliegende Erfindung, daß Einrichtungen
mit unterschiedlichen Eigenschaften dieselben Leitungs-Routinen verwenden und eine Verzweigung zu der in Frage
kommenden Ausführungs-Routine als Funktion der Einrichtungs-
50982570978
Eigenschaften ausführen. Demgemäß kann das System der vorliegenden
Erfindung ohne weiteres angepaßt werden an Änderungen in den Einrichtungstypen, welche Änderungen aus unterschiedlichen
Verbraucheranforderungen oder auf Grund der Tatsache entstehen könnten, daß Forderungen dahingehend bestehen, unterschiedliche
Systeme emulieren zu können.
Die vorliegende Erfindung erleichtert außerdem die Hinzufügung neuer Befehle zu einem System. Wenn der periphere Prozessor benötigt
wird, um neue Befehle auszuführen, erfordert dies insbesondere lediglich eine Hinzufügung neuer Leitungs-Mikroprogramm-Routinen
zu dem Steuerspeicher, ohne daß Änderungen bezüglich der normalerweise zeitlich festgelegten Ausführungs-Routinen
vorgenommen werden müssen.
An Hand von Zeichnungen wird die Erfindung nachstehend hinsichtlich
ihrer Organisation und ihres Betriebsverfahrens näher erläutert.
Fig. 1 zeigt schematisch ein die Prinzipien der vorliegenden Erfindung verkörperndes Datenverarbeitungssystem.
Fig. 2 zeigt in Einzelheiten einen peripheren Prozessor 300 gemäß Fig. 1. ·
Fig. 3a zeigt im einzelnen einen Steuerbereich einer peripheren
Untersystem-Schnittstelle des Prozessors gemäß Fig. 2. Fig. 3b zeigt im einzelnen Datenpufferregister und einen
Steuerbereich 302-50 gemäß Fig. 2.
Fig. 3c zeigt im einzelnen einen Steuerablaufspeicher eines Speicherbereichs 308 gemäß Fig. 2.
Fig. 3d zeigt im einzelnen Zählersteuereinrichtungen des Bereichs
308 gemäß Fig. 2.
Fig. 3e zeigt in Blockform einen Festwertspeicher-Steuerbereich 304 gemäß Fig. 2.
Fig. 3f zeigt im einzelnen unterschiedliche Verzweigungsschaltungen
gemäß Fig. 3e.
Fig. 3g zeigt im einzelnen verschiedene Teile des Lese/Schreib-Pufferspeicherbereichs
306 gemäß Fig. 2.
S09825/0978
Fig. 3h zeigt im einzelnen Steuerverknüpfungsschaltungen 306-70
sowie Kippschaltungs-I-Schrittschaltungen 306-100 des Bereichs
306 gemäß Fig. 3g.
Fig. 3i zeigt im einzelnen einen Rechen- und Verknüpfungsbereich 316 gemäß Fig. 2. .
Fig. 3d zeigt im einzelnen einen Daten- und Zählerbereich 318
gemäß Fig. 2.
Fig. 3k zeigt im einzelnen einen Adapter- und Einrichtungsleitungssteuerbereich
310 gemäß Fig. 2.
Fig. 4a bis 4g zeigen verschiedene Mikrobefehlsformate, die durch den Prozessor gemäß der vorliegenden Erfindung ausgeführt
werden.
Fig. 5a und 5b zeigen das Format der in der Massenspeichereinrichtung
gespeicherten Aufzeichnungen.
Fig. 6a und 6b zeigen in Flußdiagrammen Initialisierungs-Mikroprogrammroutinen,
die von der Anordnung gemäß der Erfindung benutzt werden.
Fig. 7 zeigt die Codierung verschiedener Steuerbytes gemäß der vorliegenden Erfindung.
Fig. 8 zeigt die Codierung von Befehlscodes gemäß der vorliegenden
Erfindung.
-Fjrg·. 9a bis 9c zeigen in Flußdiagrammen eine Lese-Leitungs-Routine,
die im Zusammenhang mit der Beschreibung des Betriebs der vorliegenden Erfindung benutzt wird.
Fig. 10 zeigt in einem Flußdiagramm eine weitere Leitungs-Rbutine.
Fig. 11a bis 11e zeigen Flußdiagramme eines ersten Typs einer
Ausführungs-Routine.
Fig. 12a und 12b zeigen Flußdiagramme eines zweiten Typs der Ausführungs-Routine.
Die vorliegende Erfindung findet hauptsächlich in einem Dätenverarbeitungssystem
Anwendung, welches ein Eingabe/Ausgabe-Unter system, enthält, in welchem ein peripherer Prozessor die
50 9 8 25/0978
Operation bzw. den Betrieb einer Vielzahl von peripheren Einrichtungen
auf Befehle hin steuert, die von einem Eingabe/Ausgabe-Kanal empfangen werden. Diese Art des Systems kann für die
Zwecke der vorliegenden Erfindung als in herkömmlicher Weise ausgeführt angesehen werden. Demgemäß wird das System lediglich
in dem für das Verständnis des Betriebs der vorliegenden Erfindung erforderlichen Ausmaß erläutert werden. Zum Zwecke
einer leichten Bezugnahme werden außerdem Definitionen bestimmter, hier benutzter Ausdrücke in einem beigefügten Anhang
zusammengefaßt.
In Fig. 1 ist ein System gezeigt, welches den mikroprogrammierbaren
peripheren Prozessor gemäß der vorliegenden Erfindung umfaßt. Das System enthält einen zentralen Prozessor-Komplex
(CPC), der diejenigen Einheiten enthält, welche für die Adressierung des Hauptspeichers benötigt werden, und zwar für
die Wiederauffindung oder Speicherung einer Information, für die Ausführung von Rechen- und Verknüpfungsoperationen auf
Daten hin, für die Folgesteuerung von Befehlen in der gewünschten Reihenfolge und für die Auslösung von Nachrichtenverbindungen
zwischen dem Hauptspeicher und externen Einrichtungen. Die Haupteinheiten des zentralen Prozessor-Komplexes 100
enthalten eine Zentraleinheit (CPU) 102, ein Hauptspeicher-Untersystem 104 und eine Eingabe/Ausgabe-Steuereinrichtung (IOC)
106. Die Zentraleinheit führt Befehle eines Programms oder mehrerer Programme aus, die in dem Hauptspeicher-Untersystem 104
gespeichert sind. Die Eingabe/Ausgabe-Steuereinrichtung ist derjenige Teil des Systems, der in die Ausführung von Befehlen
einbezogen ist, die zur Ausführung einer Eingabe/Ausgabe-Operation benutzt werden. Eine Eingabe/Ausgabe-Operation wird durch
ein Kanal-Programm definiert. Das Programm enthält eine Vielzahl
509825/0978
von Instruktionen, die Befehle genannt werden. Die Operation
wird durch einen "Kanal" ausgeführt. Der Kanal enthält die Eingabe/Ausgabe-Einrichtungen, eine Hardware-Verbindung
zwischen der Eingabe/Ausgabe-Steuereinrichtung und dem peripheren Prozessor, der als physikalischer Kanal bezeichnet wird,
sowie einen Verknüpfungs-Kanal. Der Verknüpfungs-Kanal ist eine Sammlung der Eigenschaften in einem peripheren Prozessor, der
für die Ausführung einer durch ein Kanal-Programm definierten Eingabe/Ausgabe-.Operation erforderlich ist. Da "Kanäle" auf
dem vorliegenden,Gebiet bekannt sind, wird deren Operation hier nicht im einzelnen beschrieben werden.
Eine periphere Untersystem-Schnittstelle (PSI) 200 ruft eine
Übertragung und eine Steuerverbindung für Austausch-Informationen
zwischen einem Massenspeicher-Peripherie-Prozessor und der Eingabe/Ausgabe-Steuereinrichtung 106 hervor. Der Austausch
wird dadurch bewirkt, daß die Verknüpfungszustände verschiedener
Signalleitungen gesteuert werden, und zwar in Übereinstimmung mit vorher festgelegten Regeln, die durch eine
Ablauffolge von Signalen realisiert sind, welche als "Dialog" bezeichnet sind. Die Schnittstelle umfaßt eine Bedienungscode-Eingabeleitung
200-1, eine Bedienungsfreigabe-Ausgangsleitung 200-2, eine Takt-Eingangsleitung 200-3, eine Takt-Ausgangsleitung
200-4, eine Abschluß-Eingangsleitung 200-4, eine Abschluß-Ausgangsleitung 200-6 und eine Operations-Eingangsleitung
200-7 sowie eine Operations-Ausgangsleitung 200-8 und Datensammelleitungen D0-D07. Die Schnittstellenleitungen
werden im nachfolgenden Abschnitt noch im einzelnen erläutert werden.
50982570978
Periphere
Untersystem-Schnlttstellenleitun^en
Bezeichnung Beschreibung
•DO-7» DP Die Datenweg-Leitungen sind ein 1 Byte
breiter bidirektionaler Weg (8 Bits + "Parität), der zwischen MSP und der
Eingabe/Ausgabe-Steuereinrichtung verläuft. Die Eigenschaft der Information auf den Datenleitungen (d.h. Daten, Be-"
dienungscode, etc.) wird durch den Dialog festgelegt.
SCI " Die Bedienungscode-Eingangsleitung ver
läuft vom Massenspeicher-Peripherieprozessor (MSP) zur Eingabe/Ausgabe-Steuereinrichtung.
Wenn sie gesetzt ist, zeigt SCI an, daß MSP eine Bedienungscodefolge an die Eingabe/Ausgabe-Steuereinrichtung
auszusenden hat. Diese Leitung ist vollständig mit einer Bedienungsfreigabe-Ausgangsleitung
verbunden. Durch MSP wird lediglich die Bedienungscodefolge übertragen,'wenn
die SEO-Leitung einen hohen Signalwert führt. Die SCI-Leitung führt lediglich
dann einen hohen Signalwert, wenn die SEO-Leitung einen niedrigen Signalwert führt.
SEO Die Bedienungsfreigabe-Ausgangsleitung
verläuft von der Eingabe/Ausgabe-Steuereinrichtung zu MSP; sie liefert eine
Anzeige, wenn die Eingabe/Ausgabe-Steuereinrichtung bereit ist, eine Bedienungscodefolge
aufzunehmen. Die Leitung ist vollständig mit der SCI-Leitung verbunden.
OPI Die Operations-Eingangsleitung verläuft von
MSP zur Eingabe/Ausgabe-Steuereinrichtung. Diese Leitung zeigt den Operationszustand
von MSP der Eingabe/Ausgabe-Steuereinrichtung an. Bei der Aktivierung zeigt die OPI-Leitung an, daß MSP in Betrieb
ist und eine Nachrichtenverbindung mit der Eingabe/Ausgabe-Steuereinrichtung herzustellen erlaubt. Eine Unwirksamschaltung bedeutet, daß MSP von der
509825/0978
Bezeichnung Beschreibung
Stromversorgung abgeschaltet wird oder sich in einem Zustand befindet, der MSP
außerstande setzt, auf Signale auf der PSI-Leitung anzusprechen.
OPO 'Die Operations-Ausgangsleitung verläuft
von der Eingabe/Ausgabe-Steuereinrichtung zu MSP. Diese Leitung zeigt den Zustand
der Eingabe/Ausgabe-Steuereinrichtung an. Ist sie aktiviert, so zeigt dies an, daß
die Eingabe/Ausgabe-Steuereinrichtung in Betrieb ist und eine Nachrichtenverbindung
mit MSP herzustellen imstande ist. Ist sie nicht aktiviert, so signalisiert
dies, daß die Eingabe/Ausgabe-Steuereinrichtung von der Stromversorgung
abgeschaltet ist oder sich in einem Zustand befindet, der sie außerstande setzt, auf Signale anzusprechen, die
auf der PSI-Leitung auftreten.
STI Die Takt-Eingangsleitung verläuft von
MSP zur Eingabe/Ausgabe-Steuereinrichtung. Diese Leitung steuert in Verbindung mit
einer Takt-Ausgangsleitung Datenübertragungen
in der Schnittstelle. Für eine Leseoperation (d.h. für Daten aus MSP) kann die STI-Leitung lediglich gesetzt
werden, wenn STO/TMO zurückgesetzt ist. Die STI-Leitung zeigt der Eingabe/Ausgabe-Steuereinrichtung
an, daß Daten auf den Daten-Leitungen vorhanden sind.
Um Daten zu erhalten, spricht die Eingabe/Ausgabe-Steuereinrichtung an, indem entweder die STO-Leitung oder die TMO-Leitung
gesetzt wird, die die STI-Leitung zurücksetzt. Wenn die Eingabe/Ausgabe-Steuereinrichtung
die RrtaldaLabsenkung der
STI-Leitung feststellt, nimmt sie die Daten von den Leitungen her auf.
Bei einer Schreiboperation sind die Rollen der Leitungen STO und STI vertauscht.
Die Eingabe/Ausgabe-Steuereinrichtung bewirkt eine Erregung der STO- Leitung, wenn sie Daten an die Datenleitungen abgibt. Wenn MSP die Erregung
509825/0978
Bezeichnung Beschreibung
bzw. den Signalanstieg der Leitung STO ermittelt und bereit ist, Daten aufzunehmen,
wird dadurch das Potential ent-.weder auf der Leitung STI oder auf der
Leitung TMI angehoben. Wenn MSP eine Potentialabsenkung auf der Leitung STO feststellt, werden Daten von den Datenleitungen
her aufgenommen.
STO Die Takt-Ausgangsleitung bzw. Abtast-
Ausgangsleitung, die von der Eingabe/Ausgabe-Steuereinrichtung zu MSP hin läuft.
Diese Leitung wird von der Eingabe/Ausgabe-Steuereinrichtung dazu benutzt, ihre
Teilnahme an dem Dialog in der Schnittstelle anzuzeigen.
Für eine Leseoperation wird das Potential der STO-Leitung durch die Eingabe/Ausgabe-Steuereinrichtung
angehoben, wenn diese den Anstieg des Potentials der STI-Leitung (oder der TMI-Leitung) feststellt
und bereit ist, die Daten aufzunehmen. Bei einer Leseoperation kann das Potential auf der STO-Leitung nicht angehoben
werden, wenn STI und TMI beide verknüpfungsmäßig den Wert Null führen.
Wenn MSP den Potentialanstieg auf der STO-Leitung feststellt, erfolgt eine Potentialabsenkung auf STI (oder TMI).
Auf die Feststellung der Potentialabsenkung auf STI (oder TMI) nimmt die Eingabe/Ausgabe-Steuereinrichtung Daten
von den Datenleitungen her auf. Sofern erforderlich, kann die Eingabe/Ausgabe-Steuereinrichtung
den Dialog an dieser Stelle aufrechterhalten, und zwar durch Verzögerung der Potentialabsenkung von
STO. Wenn die betreffende Einrichtung bereit ist, weiterzuarbeiten, senkt sie das Potential auf der STO-Leitung, wodurch
MSP angezeigt wird, daß die Daten aufgenommen worden sind und daß die Datenleitungen nunmehr gewechselt werden
können. Wenn die Eingabe/Ausgabe-Steuereinrichtung den laufenden Dialog beendet,
bewirkt sie dies durch Anheben des
509825/0978
Bezeichnung Beschreibung
Potentials der TMO-Leitung anstatt der STO-Leitung, und zwar für das letzte
zu übertragende Byte.
Für eine Schreiboperation zeigt die STO-Leitung für MSP -an, daß die Eingabe/
Ausgabe-Steuereinrichtung Daten enthält, die für MSP bereitstehen. Die Eingabe/ Ausgabe-Steuereinrichtung gibt die Daten
' an die Datenleitungen ab und erhöht das Potential der STO-Leitung. Die STO-Leitung
kann für eine Schreiboperation solange nicht aktiviert werden, bis die Leitungen STI und TMI zurückgestellt
sind. Die STO-Leitung muß zurückgestellt werden, wenn STI (oder TMI) aktiviert
wird. Wenn MSP die Potentialabsenkung der STO-Leitung feststellt, kann durch
MSP die Datenaufnahme erfolgen. Sofern erforderlich, kann MSP den Dialog an
dieser Stelle aufrecht erhalten, und zwar durch Verzögern der Absenkung des Potentials auf der STI-Leitung (oder auf
der TMI-Leitung). Wenn eine Bereitschaft vorliegt, senkt MSP das Potential der
Leitung STI (oder TMI), wodurch der Eingabe/Ausgabe-Steuereinrichtung angezeigt
wird, daß die Datenleitungen nunmehr gewechselt werden können.
TMO Die Beendigungs-Ausgangsleitung verläuft
von dar Eingabe/Ausgabe-Steuereinrichtung zu MSP. Diese Leitung wird von der Ein-
. . gabe/Ausgabe-Steuereinrichtung dazu be
nutzt, den laufenden Dialog zu beenden.
Für eine Schreiboperation kann TMO eine der folgenden Bedingungen anzeigen:
1) Für eine Datenübertragung schließt TMO ein, daß ein übertragenes Byte
das letzte Byte eines Feldes ist und daß die Datenzählung gewissermaßen erschöpft ist. Da die Datenkette für
MSP transparent ist, steigt das Potential auf TMO lediglich dann, . wenn die Zählerstellung der letzten
Datenkette CCE in dem Datenkettenfeld erschöpft ist.
509825/0978
Bezeichnung Beschreibung
2) Für einen Befehl oder eine Eingabe/ Ausgabe-Steuereinrichtungs-Befehlsübertragung
zeigt TMO an, daß die Übertragung vollständig ist, und zwar mit Hilfe eines Bytes, das auf
die laufende Übertragung hin ausgesendet wird. Ferner zeigt die betreffende Leitung an, daß keine
weiteren Bytes mehr zur Verfügung stehen.
Während einer Schreiboperation kann das Potential TMO lediglich dann ansteigen,
wenn die Potentiale auf STI und TMI niedrig sind; das betreffende Potential sinkt, wenn die
Eingabe/Ausgabe-Steuereinrichtung den Potentialanstieg auf STI (oder
. TMI) feststellt.
Für eine Leseoperation wird TMO in einer Weise von folgenden Weisen benutzt:
1) Bei einer Datenübertragung zeigt TMO an, daß ein übertragenes Byte die
Daten-Zählung aufbraucht. Da die Datenkette für MSP transparent ist, wird das Potential auf TMO lediglich
dann ansteigen, wenn die der letzten Datenkette CCE des Datenkettenfeldes
zugeordnete Zählerstellung ausgenutzt ist.
2) Bei einer Betriebscode-Ablauffolge
wird TMO in einer Weise der folgenden Weisen benutzt:
1. Die Eingabe/Ausgabe-Steuereinrichtung kann das Potential auf.TMO
anheben, um die Übertragung der Ablauffolge unmittelbar anzuhalten
(z.B. nach Ermittelung eines Fehlers);
2. Die Eingabe/Ausgabe-Steuereinrichtung hat die maximale Anzahl von
Zustands-Bytes erhalten, die sie verarbeiten kann, und MSP hält
Jede weitere Übertragung von Zustandsbytes in dieser Bedienungscodefolge an.
9 8 25/0978
Bezeichnung Beschreibung
Bei einer Leseoperation wird TMO in einer der oben angegebenen Weisen benutzt,
und zwar beim Einsetzen anstelle von STO. Während einer Leseoperation
kann TMO lediglich eine Potentialanhebung bewirken, wenn STI (oder TMO) ein hohes Potential führt. TMO wird
eine Potentialabsenkung erfahren, wenn das Potential auf STI (oder TMI) abfällt.
Diese Leitung muß, wenn sie nicht in Benutzung ist, in einen Verknüpfungszustand
Null zurückgestellt werden.
TMI ' Die Beendigungs-Eingangsleitung verläuft
von MSP zur Eingabe/Ausgabe-Steuereinrichtung. Diese Leitung wird von MSP dazu
herangezogen, den laufenden Dialog zu beenden.
Für eine Schreiboperation wird TMI bereitgestellt anstelle von STI; sie
kann eine der folgenden Bedingungen anzeigen:
1. Für eine Datenübertragung zeigt TMI an, daß ein aufgenommenes Byte das
letzte Byte ist, welches MSP für diese Ubertragungsfolge aufnimmt
(z.B. wenn das Medium aufgebraucht ist); eine andere Anzeige betrifft
den Fall, daß MSP kurzzeitig die Datenübertragungsfolge unterbricht.
2. Für eine Befehlsübertragung zeigt TMI an, daß ein empfangenes Byte
das letzte Byte ist, das von MSP benötigt wird.
Für eine Leseoperation wird TMI-ausgesendet
anstatt STI; es zeigt eine der folgenden Bedingungen an:
1. Für eine Datenübertragung zeigt TMI an, daß ein übertragenes Byte das
letzte Byte ist, das von dem Aufzeichnungsträger für diese Datenübertragungsfolge
verfügbar ist, oder daß MSP kurzzeitig die. Datenübertragungsfolge unterbricht. Die unter-
509825/0978
Bezeichnung Beschreibung
brochene Ablauffolge kann wieder aufgenommen werden, indem der Bedienungscode "Datenübertragungsauslösung-Wieder
auf nähme " benutzt wird. Es ist jedoch wichtig darauf hinzuweisen, daß
ein Bedienungscode, der eine Befehlszeigerbewegung (für diesen gleichen Verknüpfungskanal) hervorruft, die
Beendigung der Datenübertragung (die nicht wieder aufgenommen werden kann) anzeigen wird, da nämlich der Zeigerbewegungs-Betriebscode
umfaßt, daß die Ausführung von CCE abgeschlossen ist. Wenn somit MSP beabsichtigt, eine
,Datenübertragung wieder aufzunehmen, die sie unterbricht, so sollten keine
weiteren Zeigerbewegungs-Bedienungscodes für den Verknüpfungskanal ausgesendet
werden, bis die übertragung wieder aufgenommen wird;.
2. Für eine Bedienungscodefolge zeigt TMI an, daß das Byte bzw. die Bytes,
das bzw. die übertragen worden ist/ sind das letzte Byte in der Bedienungscodefolge
ist/sind.
TMI muß auf den Verknüpfungswert Null gesetzt werden, wenn es nicht benutzt
wird.
Wie aus Fig. 1 hervorgeht, vermag die Eingabe/Ausgabe-Steuereinrichtung
106 eine Vielzahl physikalischer Kanäle zu steuern, die mit 200-1 bis 200-n bezeichnet sind und die die Eingabe/Ausgabe-Steuereinrichtung
mit einem peripheren Prozessor einerAnzahl peripherer Prozessoren 300 bis 300-n verbinden. Jeder
periphere Prozessor nimmt einen Informationstausch mit jeder seiner zugehörigen peripheren Einrichtungen über eine Einrichtungs-Ebenen-Schnittstelle
(DLI) vor, und zwar in Übereinstimmung mit bestimmten Dialog-Folgen. Die verschiedenen Leitungen,
die die Einrichtungs-Ebene-Schnittstelle darstellen, und Erläuterungen sind in der nachstehenden Tabelle angegeben.
509825/0978
Bezeichnung Beschreibung
DCP, DC0-DC5 Die Befehlscodeleitungen führen codierte
Befehle von dem Massenspeicher-Prozessor (MSP) zu der Massenspeichereinrichtung
(msd) für eine Decodierung und Ausführung hin.
DIP, D1O-D17 . Die neun bidirektionalen Leitungen werden
benutzt für die Übertragung von Daten, Adressen, einer Steuerungs- und Zustandsinformation
zwischen dem Massenspeicher-Prozessor und der Massenspeicher-Ein- . richtung.
DCS Eine Einrichtungs-Befehlsabtastleitung,
die bei Vorliegen eines Verknüpfungswertes' 1 signalisiert, wenn die Signale
auf den Befehlscodeleitungen für die Abtastung gültig sind.
OPI Eine Operations-Eingangsleitung, die
signalisiert, daß MSD vorhanden ist, und die gespeist wird und eine Nachrichtenverbindung
mit MSP herzustellen imstande ist.
IDX Eine Index-Markierungsleitung, die bei
Vorliegen eines Verknüpfungszustands 1 während zwei Mikrosekunden anzeigt, daß
eine Verknüpfungsspur beginnt.
OPO . Eine Operations-Ausgangsleitung, die
signalisiert, daß MSP existiert und die gespeist wird und eine Nachrichtenverbindung
mit MSD herzustellen imstande ist.
DIN Eine Einrichtungs-Auslöseleitung, die
bewirkt, daß eine Massenspeicher-Einrichtung ihre sämtlichen Speicherelemente
in einen Auslösezustand bringt.
825/097 8
Bezeichnung Beschreibung
SRI Eine Serien-Einleseleitung, die während
einer Schreiboperation dem Massenspeicher-Prozessor signalisiert, daß
die Massenspeicher-Einrichtung einen ,Schreibbefehl ausführt. Die Massen-'speicher-Einrichtung
aktiviert diese Leitung auf die Aufnahme eines Schreibbefehls
hin; sie bewirkt solange keine Rückstellung, bis die Rückflanke von DCS auftritt. Während einer Leseoperation
enthält diese Leitung die von dem Aufzeichnungsträger gelesene Information. Das Lesesignal wird durch die Köpfe erzeugt,
verstärkt und in digitale Form umgesetzt, bevor es an die SRI-Leitung
abgegeben wird. Es enthält einen Impuls für jeden auf dem Aufzeichnungsträger aufgezeichneten Übergang. Diese Leitung
wird ferner als Abtastleitung für einen Steuerungs-Schnittstellendialog
benutzt, wenn eine Information über die bidirektionalen Datenleitungen
übertragen wird.
SWO Die Serienschreib-Ausgabeleitung über
trägt die zu schreibende Information. Sie weist einen einzigen Impuls mit dem
Verknüpfungswert 1 für jeden auf dem Aufzeichnungsträger aufzuzeichnenden übergang auf. Diese Leitung wird außerdem
als Abtastleitung für den Steuerungs-Schnittstellendialog verwendet, wenn eine
Information über die bidirektionalen Datenleitungen übertragen wird.
Die Einrichtungs-Ebenen-Schnittstelle sorgt für den Austausch von Daten und Steuerinformation zwischen einem peripheren
Prozessor und angeschlossenen peripheren Einrichtungen. Es dürfte einzusehen sein, daß die Schnittstellenleitungen lediglich
für einen bestimmten Typ der Einrichtung gemeinsam sind. Die angegebene bestimmte Schnittstelle verbindet eine Massen-
speichereinrichtung 500 mit dem peripheren Massenspeicher-
509825/0978
Prozessor 300, wie dies in Fig. 1 gezeigt ist. Wie die Eingabe/
Ausgabe-Steuereinrichtung 106 Daten und Steuerungsinforraation
zwischen einer Vielzahl von peripheren Prozessoren auszutauschen imstande ist, kann jeder periphere Prozessor Daten und Steuerungs-Information
zwischen sich und einer Vielzahl von peripheren Einrichtungen austauschen. Der Einfachheit halber ist lediglich eine
einzige periphere Einrichtung als mit jedem peripheren Prozessor
gemäß Fig. 1 verbunden dargestellt.
Aus Fig. 1 geht ferner hervor, daß das Speicher-Untersystem
eine Speicher-Schnittstelleneinheit 104-2 und einen Hauptspeicher 104-4 enthält. Wie dargestellt, kann das Hauptspeicher-Untersystem
zwischen 1 und 4 Speicheranschlüssen aufweisen, deren jeder eine Speicherkapazität von 256 Kilobytes bereitstellt.
Die Speicher-Schnittstelleneinheit 104-2 enthält die Verknüpfungs- und Steuerschaltungen, die für die Herstellung
einer Nachrichtenverbindung zwischen einem Speicheranschluß und der Zentraleinheit und der Eingabe/Ausgabe-Steuereinrichtung
erforderlich sind. Für die Zwecke der vorliegenden Erfindung können diese Einheiten als in herkömmlicher Weise
aufgebaut angesehen werden. Bei der bevorzugten Ausführungsform verwendet das Hauptspeicher-Untersystem 104-4 einen MOS-Halbleiterspeicher.
Wie aus Fig. 1 hervorgeht, besteht das Hauptspeicher-Untersystem aus 1 bis 4 Hauptspeichereinheiten,
deren jede über ein entsprechendes Kabel der Kabel 104-6
bis 104-9 mit dem Prozessor-Untersystern verbunden ist, wie
dies dargestellt ist. In dem Prozessor selbst ist ein Speicheranschluß an einer Speichereinheit angeschlossen. Jede Hauptspeichereinheit
enthält eine Speichersteuereinrichtung oder eine Hauptspeicher-Folgesteuereinheit und bis zu acht Speicher-Untereinheiten.
Jede Untereinheit enthält vier Bereiche, deren jeder ein 8K-zu 10-Bit-Speicherfeld enthält. Jede Hauptspeicher-
509 8 2 5/0978
Steuereinrichtung arbeitet in der Weise, daß die erforderlichen Lese/Schreib-Speicheroperationen ausgeführt werden, die für den
Zugriff zu einem Informationswort erforderlich sind, welches 9-Bit-Informationsbytes umfaßt.
Bevor mit einer Erläuterung des gemäß der Erfindung benutzten Massenspeicher-Prozessors 300 gemäß Fig. 1 begonnen wird, sei
zunächst die Art und Weise erläutert, in der eine Information in einem Speichersystem auftritt, in welchem die vorliegende
Erfindung benutzt wird. Die betreffende Erläuterung wird dabei lediglich als beispielsweise Erläuterung gegeben, die indessen
nicht als Beschränkung der vorliegenden Erfindung aufgefaßt werden sollte.
Eine Information wird im allgemeinen längs Umfangsspuren auf
einer sich drehenden Einrichtung, Wie einer Platte , in Aufzeichnungen
gespeichert, die eine Anzahl von Informationsfeldern umfassen. Diese Felder enthalten ein Zählerfeld, ein Kennzeichenfeld
und ein Datenfeld. Normalerweise zeigt eine Indexmarkierung den physikalischen Anfang der Jeweiligen Spur an, wobei sämtliche
Spuren in einer Plattenpackung durch dieselbe Indexmarkierung synchronisiert sind. Jeder Spur geht ein Spuradressen-
bzw. Hausadressenfeld für eine Adressenidentifizierung und eine Spur-Deskriptoraufzeichnung (Aufzeichnung RO)
für die Anzeige des physikalischen Zustande der Spur voraus. Die in einer Spur Jeweils aufgezeichneten Informationsfelder
sind durch Spalte voneinander getrennt; Die Spaltlängen variieren in Abhängigkeit von der Speichereinrichtung, der
Stelle innerhalb der Aufzeichnung, dem Format, der Bitdichte und der Aufzeichnungslänge.
509825/0978
Eine Adressenmarkierung zeigt den Beginn der jeweiligen Aufzeichnung
für Steuerzwecke an. Jeder Adressenmarkierung geht ein Synchronisationsbereich voran, der eine Vielzahl von
Synchronisationssignalen enthält, die für die Synchronisation von Zeitsteuerschaltungen herangezogen werden, welche im Zuge
der Ausführung einer Leseoperation benutzt werden. Die oben angegebenen verschiedenen Ausdrücke sind im übrigen in einer
als Anhang beigefügten Begriffsliste definiert. Die Bedeutung dieser Felder wird später in Verbindung mit den Fig. 5a und 5b
noch erläutert werden.
In Fig. 2 ist ein detaillierteres, jedoch vereinfachtes Blockschaltbild
eines gemäß den Prinzipien der vorliegenden Erfindung aufgebauten peripheren Prozessors gezeigt. Aus Fig. 2 ergibt
sich dabei, daß die Hauptbereiche des Prozessors 300 folgende Einrichtungen enthalten: einen peripheren Untersystem-Schnittstellensteuerbereich
(PSI) 302, einen Allzweckregisterbereich 314, einen Rechen- und Verknüpfungseinheitbereich (ALU) 316,
einen Festwertspeicher-Steuerbereich 304, einen Hochgeschwindigkeits-FolgeSteuerungsbereich
308, einen Einrichtungs-Ebenen-Schnittstellensteuerbereich (DLI) 310, einen Lese/Schreib-Pufferspeicherbereich
(RWS) 306 und einen Zählerbereich 318.
Der periphere Untersystem-Schnittstellensteuerbereich 302 enthält Verknüpfungsschaltungen und Pufferregister, die für
die Verbindung des Prozessors mit einer asynchronen peripheren Schnittstelle 200, die eine Breite von 1 Byte besitzt, erforderlich
sind und die die erforderlichen Daten und den Steuerungsdialog festhalten, der für eine Nachrichtenverbindung bzw. für
eine Kommunikation mit der Eingabe/Ausgabe-Steuereinrichtung
5098 25/0 97 8
benötigt wird. Wie aus Fig. 2 hervorgeht, ist dieser Bereich an die verschiedenen Bereiche für die Aufnahme von Daten und die
Steuerung von Signalen über Ubertragungsleiterwege 303-1 bis
303-5 angeschlossen. Der Bereich 302 ist in zwei Bereiche
in
unterteilt:/ einen PSI-Steuerbereich bzw. peripheren Untersystem-Schnittstellenbereich
302-1 sowie in ein Pufferregister und in einen Steuerbereich 302-50. Diese Bereiche werden hier
im einzelnen beschrieben werden. Der ALU-Bereich 316 ist neben dem Anschluß an dem Pufferbereich 302-50 ferner an dem Pufferspeicherbereich
306 und dem Allzweckregisterbereich 314 angeschlossen, und zwar über die Wege 303-5 bzw. 303-6. Der
ALU-Bereich 316 führt Verknüpfungs-Jlechen- und Registerübertragungsfunktionen
innerhalb des Prozessors aus. Die verschiedenen Betriebsarten für die Rechen- und Verknüpfungseinheit
ALU werden durch Signale festgelegt, die über den Leiterweg 303-9 von dem Festwertspeicher-Steuerbereich 304 her zugeführt
werden. Wie im einzelnen noch beschrieben wird, enthält der Bereich bzw. Abschnitt 316 zwei identische Rechen- und
Verknüpfungseinheiten, die in herkömmlicher Weise aufgebaut sind und die als Haupt-ALU bzw. als Hilfs-ALU bezeichnet sind.
Ferner enthält der betreffende Bereich bzw. Abschnitt die den betreffenden Einheiten zugehörigen Steuer- und Fehlerprüf-Verknüpfungsschaltungen.
Die beiden Rechen- und Verknüpfungseinheiten ALU sind aus zwei 4-Blt-MSI-Rechen- und
Verknüpfungseinheiten aufgebaut, die zur Bildung eines 8-Bit-Ausgangssignals
miteinander verbunden sind. In Abhängigkeit von den Zuständen der Eingangssignale, die den Freigabe-Ubertragungs-,
Eintrag- und Betriebssteuereingangsanschlüssen der Rechen- und Verknüpfungseinheiten zugeführt werden, können
diese Rechen- und Verknüpfungseinheiten veranlaßt werden, 16 Verknüpfungsoperationen oder 32 verschiedene Rechenoperationen auf zwei Operanden hin auszuführen, auf die hin sie
50 9 8 25/097 8
betrieben werden. Die beiden Rechen- und VerknUpfungseinheiten
arbeiten auf dieselben Operanden hin gleichzeitig, und die Fehlerprüfschaltungen vergleichen die Ergebnisse der beiden
Rechen- und Verknüpfungaeinheiten. Der Allzweckregisterbereich
314 enthält 16 Allzweckregister mit einer Breite von 8 Bit; er bewirkt die Speicherung der Information, die während
einer bestimmten Operation benötigt wird (z.B. Befehlscodes, -Operanden der Rechen- und Verknüpfungseinheit, etc.). Darüber
hinaus enthält der betreffende Bereich bzw. Abschnitt 16 MuItiplexer-Auswahlschaltungen
mit acht Eingängen von herkömmlichem Aufbau. Von diesen Schaltungen kann der Inhalt von irgendeiner
Quelle von acht weiteren Quellen an die Rechen- und Verknüpfungseinheiten als ein Operand abgegeben werden. Bei einer
bevorzugten Ausführungsform entsprechen die Allzweckregister den Speicherplätzen eines adressierbaren Festkörper-Hilfsspeichers
von herkömmlichem Aufbau. Die Register sind durch den Steuerspeicherabschnitt bzw. -bereich 304 und den Pufferspei
ehe rbe reich 306 über den Weg 303-8 bzw. über den Weg 303-12
adressierbar.
Der Spalt- und Datenzählerbereich 318 ist ferner über den
Leiterweg 303-10 mit dem Rechen- und Verknüpfungseinheitsbereich 316 verbunden* Dieser Bereich enthält Datenzähler-Verknüpfungsschaltungen;
Spalt-Zählerschaltungen liefern die Hauptzählersteuerung während der Lese-, Schreib- und Suchoperationen.
Die Datenzählerschaltungen liefern eine Zählerstellung
bezüglich der Anzahl von Bytes, auf die hin gearbeitet wird. Die Spalt-Zählerverknüpfungsschaltungen liefern eine Orientierungsinformation durch Abgabe einer genauen Anzeige bezüglich
der Spaltlänge zwischen den Feldern einer Datenaufzeichnung, die gelesen wird (z.B. bezüglich der Spaltlänge
zwischen den Kopf- und Kennzeichenfeldern, bezüglich der Spaltlänge zwischen dem Kennzeichenfeld und dem Datenfeld, etc.),
509825/097 8
Jeder der beiden Zähler enthält, wielhier erläutert wird, einen
Hauptzähler und einen Hilfszähler, und zwar zusammen mit
Weiterschalt-Schaltungen und Prüflogikschaltungen. Jeder Zähler
ist aus vier Synchron-4-Bit-Binärzähler-Chipsaufgebaut, die
zur Bildung eines 16-Bit-Zählers zusammengeschlossen sind.
Die beiden Zähler des Datenzählers werden durch einen Mikrobefehl geladen, und zwar mit derselben Zählerstellung, die
durch den Inhalt von ROSLR oder RWSLR angegeben ist. Der Inhalt der beiden Zähler wird verringert, und die Zustände
beider Zähler werden durch FehlerprUfschaltungen verglichen.
Wenn die Schaltungen eine fehlende Übereinstimmung feststellen, bewirken sie das Einstellen einer Fehleranzeige. In entsprechender
Weise werden beide Zähler des Spalt-Zählers über den Rechen- und Verknüpfungseinheit-Bereich 316 mit derselben
Zählerstellung geladen, die aus einem Konstantenfeld eines
Mikrobefehls abgeleitet ist. Auf eine Freigabe hin werden die Zählerstellungen der Zähler durch Taktimpuls-Slgnale
von einer Taktschaltung 308-2 her verringert.(Dies bedeutet, dass die Zählerstellung des Zählers alle 600 NanoSekunden
um 1 vermindert wird). Die FehlerprUfschaltungen prüfen
die Zähler hinsichtlich einer richtigen Operation, und zwar injierselben Weise wie die Operation des Daten-Zählere geprüft
wird.
Der Festwertspeicher-Steuerbereich 304 bewirkt die Speicherung für vorhandene Steuerungs- und Fehlerdiagnose-Mikroprogramme
(das heisst für 4K-32-Bit-Speicherworte). Der betreffende Bereich weist, wie im einzelnen beschrieben wird, einen
Steuerspeicher auf, der zwei Abschnitte enthält. Der eine Abschnitt wird für Maschinencodeoperationen benutzt, und,
der andere Abschnitt wird für die Emulation von Fremdsystemen benutzt. Bei der bevorzugten AusfUhrungsform ist
der Steuerspeicher unveränderlich; er ist aus herkömmlich aufgebauten programmierbaren Festwertspeicher-Chips (PROM)
aufgebaut. Es dürfte einzusehen sein, dass der Steuerspeicher
509825/0978
auch aus herkömmlich aufgebauten Speicher-Chips mit wahlfreiem
Zugriff (RAM) gebildet bzw. aufgebaut werden kann. Demgemäss kann er mit Mikrobefehlen durch externe Einrichtungen,
wie eine Bandkassetten-Einrichtung, geladen werden.
Der Bereich bzw. Abschnitt 304 enthält ferner.zugehörige
Adressierungs-, Steuerungs-, Dekodierungs- und Paritätsverknüpfungsschaltungen.
Zusätzlich sind Adressen-Steuerschaltungen enthalten, die die Verzweigung zwischen drei
Ebenen von Mikrobefehls-Subroutinen freigeben.
Der Lese/Schreib-Speicherbereich 306 ist über die Leiterwege
303-1, 305-5 und 303-12 mit anderen Bereichen verbunden, wie dies in Fig. 2 gezeigt ist. Dieser Berebh enthält
einen änderbaren Lese/Schreib-Speicher von 1,5 K.10 Bits; er wird für die Speicherung von Einrichtungsparameter-Bytes
verwendet, und zwar zusätzlich zur Bereitstellung eines Kurzzeitspeichers für Steuerungs- und Datenbehandlungsoperationen (zum Beispiel für die Zustands- und Adresseninformation).
Der Einrichtungs-Ebenen-Schnittstellen-Steuerbereich 310
enthält einen integrierten Steueradapter, der als Block 310-2 bezeichnet ist, welcher mit den Wegen 310-4 und 400 verbunden
ist. Der Adapter enthält Verknüpfungsschaltungen und Pufferregister, die für die Bildung einer Schnitstelle
mit Plattenspeichereinrichtungen des Systems erforderlich sind, und zwar für die Steuerung von Einrichtungsoper at jenen
und für die Erzeugung von erforderlichen Dialog-Ablauffolgen über die Sammelleitung 400. Dies bedeutet, dass der betreffende
Bereich die Auswahl der bezeichneten Platteneinrichtung und die Ausführung der verschiedenen Befehle freigibt. Die Pufferregister
stellen eine Schnittstelle zwischen den asynchron betriebenen Einrichtungs-Adapterschaltungen und den Synchron
betriebenen Massenspeicher-Prozessor-Verknüpf ungsschaltungen dar.
5098 25/097 8
Nunmehr werden die oben beschriebenen Bereiche unter Bezugnahme
auf die Pig. 3a bis 3k näher erläutert.
Peripherer Untersystem-Scnnlttatellensteuerbereicb. 502-50
und Pufferbereich 302
Der Periphere Untersystem-Schnittstellen-Steuerbereich bzw.
PSI-Steuerbereich 302 und der Pufferregister- und Steuerbereich
302-50 sind in Fig. 3a bzw. 3b im einzelnen dargestellt.
Aus Pig. 3a geht dabei hervor, dass dieser Bereich eine Vielzahl von Empfänger/Steuerlogikschaltungen 302-3 enthält,
die derart betrieben sind, dass digitale Steuer- und Datensignale für die Schnittstelle 200 bereitgestellt werden. Die
Empfänger/Steuerschaltungen können als in herkömmlicher Weise aufgebaut betrachtet werden; sie umfassen zwei Differenzverstärkerschaltungen.
Ausserdem können diese Schaltungen die Porm der Treiber/Empfangsschaltung haben, wie sie an anderer
Stelle beschrieben wird (US-Patentanmeldung, Ser.No. 863 087).
Wie aus Pig. 3a hervorgeht, übertragen ein lesepuffer 302-14
und ein Schreib-Puffer eine Information zwischen den Schnittstellen-Treiberschaltungen
bzw· -Steuerschaltungen und den Empfängerschaltungen sowie den Datenpuffern des Pufferbereichs
302-50.
Der Lese-Puffer 302-14 enthält eine Vielzahl von Verstärker-Verriegelungsschaltungen,
die von herkömmlichem Aufbau sind. Während Leseoperationen werden Ausgangssignale von dem A-
eine
Puffer des Bereichs 302-50 über/Bus-Leitung 302-16 in den Lese-Puffer 302-14 geladen, wenn ein Steuersignal RATPI0 in ein Binärsignal 1 umgeschaltet wird. Wie erläutert wird, wird dieses Signal durch in diesem Block 302-4 enthaltene asynchrone Schaltungen erzeugt· Dieser Block enthält, kurz
Puffer des Bereichs 302-50 über/Bus-Leitung 302-16 in den Lese-Puffer 302-14 geladen, wenn ein Steuersignal RATPI0 in ein Binärsignal 1 umgeschaltet wird. Wie erläutert wird, wird dieses Signal durch in diesem Block 302-4 enthaltene asynchrone Schaltungen erzeugt· Dieser Block enthält, kurz
509825/0978
gesagt, eine Vielzahl von Verriegelungs-Verstärkerschaltungen,
die einstellbar und zurückstellbar sind, und zwar durch die Eingabe/Ausgabe-Steuereinrichtung mittels Signale, die an
verschiedene Leitungen der Schnittstelle 200 abgegeben werden. So signalisieren zum Beispiel die asynchronen Verknüpfungsschaltungen der Eingabe-/Ausgabe-Steuereinrichtung das Vorhanden·
sein von Daten, die in dem Lese-Puffer gespeichert sind, und zwar durch Einstellen bzw. Setzen der Leitungen SXI öder
!EMI. Der Lese-Puffer 302-14 speichert solange Bytes, bis
die Eingabe/Ausgabe-Steuereinrichtung eine der Leitungen
STO oder TMO zurücksetzt. Dies führt seinerseits zur Zurückstellung
entsprechender Verriegelungsschaltungen.
Der Schreib-Puffer 302-12 enthält eine Vielzahl von Registerstufen,
die von herkömmlichem Aufbau sind. Der Puffer 302-12 nimmt Eingangssignale auf, die in dem Puffer auf ein Auagabe-Datengültigkeits-Signal
PADV10 gespeichert werden, das in einen Binärzustand 1 umgeschaltet ist. Dieses Signal wird
durch asynchrone Verknüpfungsschaltungen erzeugt, wenn die Eingabe/Ausgabe-Steuereinrichtung das Abtast-Ausgangs-Signal
P1ST010 vom Binärzustand?in den Binärzustand Null umschaltet.
Die Inhalte des Schreib-Puffers werden selektiv in die Puffer
A, E oder P geladen, und zwar in Abhängigkeit von ihrer
Verfügbarkeit des Bereichs 302-50 durch Steuersignale· Diese Steuersignale werden durch die Steuerschaltungen 302-70
und 302-72 auf das Signal PAPRP10 hin erzeugt.
Der PSI-Steuerbereich 302-1 enthält ferner die in 302-12
enthaltenen synchronen Steuerverknüpfungsschaltungen. Die synchronen Steuerschaltungen enthalten eine Vielzahl von
Plipflops, die durch Mikoroperations-Signale von dem Festwertspeicher-Steuerbereich
304 her setzbar sein können. Diese Signale werden über eine Eingangs-Busleitung abgegeben,
die in Flg. 3a mit 302-14 bezeichnet ist. Ausserdem können
die betreffenden Schaltungen durch Signale gesetzt werden, die über die Schnittstelle 200 zugeführt werden. Die Mikro-
5 0 9 8 2 5/0978
Operationssignale können zum Beispiel die Aktivität in der perlpheren Untersystem-Schnittstelle 200 auslösen, und zwar
durch Setzen eines der drei Folgesteuerungs-Flipflops, die
in diesem Bereich enthalten sind. Dies bedeutet, dass ein Mikrobefehl das Setzen eines Anforderungs-Daten-Flipflops
RQD bewirken kann, welches die Schnittstelle 200 vorbereitet, um Daten-Bytes von der Eingabe/Ausgabe-Steuereinrichtung
her aufzunehmen. Mikrooperations-Signale von einem anderen
Befehl können ebenfalls ein Datenübertragungs-Flipflop DDT
veranlassen, die Schnittstelle 200 in den Stand zu versetzen, Daten-Bytes an die Eingabe/Ausgabe-Steuereinrichtung
zu übertragen. Ein weiterer Befehl kann Mikrooperations-Signale erzeugen, die ein Bedienungscode-Flipflop DSC in
den Stand setzen, die Schnittstelle 200 für die Signalisierung einer Übertragung eines Bedienungscodes oder einer
Befehlsinformation an die Eingabe/Ausgabe-Steuereinrichtung zu konditionieren. Die anderen Flipflops umfassen ein End-Flipflop
TRM, ein Bedienungscode-Eintritts-Flipflop SCR, ein Bedienungsfreigabe-Austritt-Flipflop SEO, ein Operations-Austritt-Flipflop
OPO und ein Operations-Eintritt-Flipflop OPI. Einige dieser Flipflops werden auch durch Mikrooperations-Signale
gesetzt und zurückgestellt, und zwar zur Steuerung der Übertragung von Befehls- und Daten-Bytes über die Schnittstelle
200. Die Operation dieser Flipflops wird für ein Verständnis der vorliegenden Erfindung noch näher beschrieben
werden.
Jedes der in dem synchronen Steuerbereich 302-12 enthaltenen Flipflops erhält PDA-Taktsignale von einer zentralen Taktoder
Zeitsteuerungsquelle 308-2, die in dem Bereich 308 enthalten ist. Die Taktschaltung kann als in herkömmlicher
Weise ausgeführt angesehen werden; sie kann zum Beispiel Schaltungen enthalten, wie sie in der US-PS 3 725 871 angegeben
sind.
509825/0978
Es dürfte ferner ersichtlich sein, dass der Bereich bzw. Abschnitt 302-1 einen 2-Byte- oder 16-Bit-Rückwärtszähler
enthält, der vier 4-Bit-Binärzählerstufen enthält, die von
herkömmlichem Aufbau sind. Dieser Zähler wird von den asynchronen
Steuerverknüpfungsschaltungen des Blockes 302-4 dazu benutzt zu bestimmen, wenn ein Beendigungs-Eintritts-Flipflop
TMI zu setzen ist. Ein Hilfszähler 302-10 ist
ebenfalls enthalten, um die Vergleicherschaltungen des Blockes 302-8 freizugeben für die Peststellung des Auftretens
eines Zählerausfalls. Dies bedeutet, dass der Hilfszähler 302-10 und der Hauptzähler 302-6 auf einen Eingabe/Ausgabe-Mikrobefehl
hin von derselben Quelle her geladen werden (zum Beispiel über den AIU-Basich 318 von dem Steuerspeicher des
Bereiches 304 oder von dem Pufferspeicher des Bereiches 306.) Ausserdem werden die Zählastellungen beider Zähler durch ein
Taktsignal PCCLK10 von den Steuerschaltungen 302-4 her
verringert. Die Vergleicherschaltungen des Blockes 302-8 nehmen eine Prüfung vor um zu bestimmen, ob beide Zähler
im selben Zustand sind, wenn der Inhalt eines der Zähler auf Null verringert worden ist. In dem Fall, dass die betreffenden
Zähler nichtJLm selben Zustand sind, veranlassen die Schaltungen das Setzen einer Fehleranzeige. Sind die
Zählerstellungen beider Zähler auf Null verringert worden, so schalten die Schaltungen des Blockes 302-8 ein Zähler-Gleichheits-Null-Signal
PCCE020 in den Binärzustand Null um. Dieses Signal zeigt an, dass die erforderliche Anzahl
von Bytes übertragen worden ist (das heisst, dass kein Fehler angezeigt wird). Zur weiteren Information bezüglich
der Arten von Schaltungen, die zur Ausführung der Zähler, Register und der anderen hier beschriebenen Schaltungen verwendet
werden kann, sei auf die Druckschrift "The Integrated Circuits Catalog for Design Engineers11 der Firma Texas
Instruments Inc., 1972, hingewiesen.
509825/0978
Aus Pig. 3b geht hervor, dass jeder Bereich 302-50 sechs Register 302-52 bis 302-57, die hier als Register A bis P
bezeichnet werden, und zugehörige Steuerverknüpfungs-Schaltungen
enthält, die in den Blöcken 302-70 und 302-72 enthalten sind. Jedes Register weist 11 Stufen auf: Neun Stufen
für die Speicherung der acht Datenbits und des Paritätsbits eines Bytes, eine Stufe für die Speicherung eines Markierungsoder eines Anzeigebits, das ein volles Register anzeigt,
und eine Stufe für die Speicherung eines End-Ausgabe-Anzeigebits. Die Daten- und Steuerinformations-Bytes werden zwischen
Lese- und Schreibpuffern des Bereichs 302-1 und einer Sehreib-Multiplexerschaltung und einem lesepuffer bitparallel oder, byte-seriell übertragen. Die Übertragungsrichtung
und der übertragungsweg werden durch die Zustände von Plipflops bestimmt, die in dem Hochgeschwindigkeits-Ablaufsteuerbereich
308 enthalten sind. Wie erläutert wird, werden diese Plipflops in bestimmte Zustände voreingestellt,
und zwar durch Mikrobefehle, und die von den Plipflops an die Schaltungen der Steuerblöcke 302-70 und 302-72
abgegebenen Eingangssignale versetzen diese Schaltungen
in den Stand für derartige Übertragungen.
Die Arten der Betriebsweisen, die angegeben werden können, sind folgende: Die erste Betriebsart (eine Nicht-Ablaufsteuerungs-Aktiv-Betriebsweise-NSA)
stellt den statischen Zustand des Prozessors dar, in welchem keine Datenübertragungen
zu/von den Platteneinheiten oder zu/von der EinAusgabe- _
gabe/Steuereinrichtung stattfinden. Die Schaltungen des
Blockes 302-70 und 302-72 werden derart konditioniert, dass die Register 302-52, 302-53 und 302-54 arbeitsmässig
mit der peripheren Untersystem-Schnittstelle verbunden sind, und die Register D, E und P sind arbeitsmässig mit dem
Efinrichtungsadapter 310-2 verbunden. Die Zustände zweier
Signale CQTXI10 und CQTX010, die durch in den Ablaufsteuerschaltungen
enthaltene Übertragungs-Eintritts- und
509825/0978
Übertragungs-Austritts-Flipflops erzeugt werden, bestimmen
die Richtung von Byte-Übertragungen für die Gruppen der Register A bis 0 und D bis P. Die Richtungen der Übertragung
für die Zustände dieser Signale sind beispielsweise folgende:
1) CQTXIOCr 1' β PSI >
REG · A —> reg · —* reg «C
Warten aifPr ο ze ss or {-Pirmen ware)-Maßnahme;
2) CQTXHo"' = reg . C-—>
reg · B —> reg * A ·—^ Warten auf PSI-Maßnahme;
3) CQTXOOO'' β Einrichtungsadapter —>
reg · P —^ reg E -—^ reg · D
Warten auf Prozessor (Finnenware) -Maßnahme; und
4) CQTXOIO^ 1^ a reg · D —^ reg " E -^>
reg · P—>
Potentialanhebung der Anforderungsleitung —>
Warten auf Einrichtungsadapter-Maßnahme·
Weitere Betriebsarten, nämlich Unterbetriebsarten, werden durch Ausnutzung der Zustände dieser beiden Signale wie
folgt abgeleitet:
1.. CQTXIOO & CQTXOOO - Normalzustand des Prozessors.
Bei dieser Betriebsart werden Bytes von PSI und/oder dem Einrichtungsdapter in den Prozessor übertragen.
2. CQTXIOO & CQTX010 - Bei dieser Betriebsart werden Steuerinformationsbytes zu dem Einrichtungsadapter und
/oder der Einrichtung übertragen.
3. CQTXI10 & CQTXOOO - Bei dieser Betriebsart werden Informationen, wie Bedienungscodebytes, Zustandsbytes,
zur Eingabe/Ausgabe-Steuereinrichtmg übertragen.
5098 25 /0978
4. CQTXI10 4 CQTX010 - Bei dieser Betriebsart werden die
Übertragungen der Betriebsarten 2 und 3 kombiniert.
Eine weitere Betriebsart ist eine Schreiboperations-Betriebsart,
die durch den Zustand eines Steuersignals CQWT010 festgelegt
wird, das durch ein in den Folgesteuerungsschaltungen enthaltenes Schreiboperations-Ablaufsteuerungs-Plipflop erzeugt
wird. Wenn das Signal CQWT010 als Binäraignal 1 auftritt bzw. in diesen Zustand umgeschaltet wird, führt es
das Signal CQIXOIO und das Signal CQTXIOO in den Binärzustand
1 bzw. Null· Diese Signale veranlassen die Register, Bytes von FSI an den Einrichtungsadapter oder an den Lese/Schreib-Speicher
etc. zu übertragen.
Die nächste Betriebsart ist eine lese-Betriebsart, die|durch
den Zustand eines Signals CQRDO10 festgelegt wird, das durch ein in den AblaufSteuerschaltungen bzw. Folgesteuerschaltungen
enthaltenes Leseoperations-Ablaufsteuerungs-Flipflop erzeugt
wird. Das Signal CQRDO10 bewirkt zusammen mit dem Signal
PADDT10 von dem PSI-Steuerbereich 302-1, dass die Signale
CQTXI10 und CQTXOOO in den Binärzustand 1 bzw. Null umgeschaltet werden« Dies ermöglicht, Bytes aus dem Einrichtungsadapter durch die Register 302-57 bis 302-57 zu PSI hin
zu verschieben.
Eine weitere Betriebsart ist eine Suchoperations-Betriebsart,
die durch den Zustand eines Signals CQSHO10 festgelegt wird,
welches durch ein in den Ablaufsteuerschaltungen enthaltenes Suchoperations-Ablaufsteuerungs-Plipfiop erzeugt wird. Das
Signal CQSH010 konditioniert den RWS-Bereich während Suchoperationen,
wodurch die Übertragung von Bytes durch die Register von dem Einrichtungsadapter oder von PSI zu dem ALU-Bereich
316 hia ermöglicht ist, um in den lese/Schreib-Speicherbereich 306 eingeschrieben zu werden.
509825/0978
Die Steuerblöcke 302-70 und 302-72, wie sie aus Fig. 3b
ersichtlich sind, erzeugen die Signale, die für die Übertragung von Bytes zwischen den Registern zu dem jeweils
in Frage kommenden Zeitpunkt erforderlich sind (das heisst dann, wenn die Register leer sind). Die dargestellten Signale
werden entsprechend folgenden booleschen Ausdrücken erzeugt.
Die Zeichen "+" und Μ·η geben "ODER11- bzw. "UND"-Operationen
an.
1.CDPTA10 = CQTXIOO · CDPTEOO · CDPTFOO · EAPRF30 · CDARFOO.
Dies ist ein Übertragungssignal von der peripheren Untersystem-Schnittstelle
PSI zu dem Α-Register hin; das betreffende Signal tritt mit hohem Pegel auf, wenn das Übertragungs-Eintritts-Flipflop
sich im Rückstellzustand befindet (das heisst dann, wenn das Signal CQTXIOO = 1 ist),
wenn keine Übertragung von der Schnittstelle PSI zu dem
Ε-Register oder dem F-Register hin erfolgt (das heisst, dass die Signale CDPTEOO und CDPTFOO = 1 sind), wenn
ferner das Α-Register nicht voll ist (das heisst, dass das Signal CDARFOO = 1 ist) und wenn das Schreibregister
voll ist (das heisst, dass das Signal PAPRF30 = 1 ist).
2.PAPRF10 =PKVSP10 . PA0VD10 + PAPRF10 · PKVSP10 »' CDPTX20.
Dies ist die Anzeige für ein volles Register für das PSI-Schreibregister,
welches gesetzt wird, wenn PA0DV10 mit hohem Pegel auftritt und wenn eine gültige Ablauffolge
im weiteren Verlauf vorhanden ist (das heisst, dass PKVSP10 = 1 ist). Dieses Anzeigeglied wird zurückgestellt, wenn
PTX mit hohem Pegel auftritt. Dadurch wird der Inhalt des Schreibregisters in das A-, E- oder F-Register übertragen.
3. PAATP10 = ((PKDSCOO · PKVSP10 + PKSE01A · PKVSP10) PKST020
• PKTM020 · PKADV10 · PKSTI20 · PKTMI20 · PKDDT10) + PAATP10
. PKVSP10 · CDARFOO.
Dies ist eine Übertragung des Inhalts des A-Registers in
5 0 9 8 2 5/0978
das PSI-Lesregister. Dabei tritt ein Signalwert lediglich
während der Leseoperationen auf (das sind Datenübertragungen zur Eingabe/Ausgabe-Steuereinrichtung). Das betreffende Signal
tritt jeweils dann mit hohem Pegel auf, wenn die PSI-Schnittstelle
sich in einem Lesebetrieb befindet (das heisst, dass das PKDDT10-Signal vorhanden ist), wenn sich kein Abtastzyklus
in der Entwicklung befindet, die Ablauffolge gültig ist, der
PSI-Zähler eine von Null abweichende Zählerstellung besitzt
und ein gültiges Byte in dem Α-Register vorhanden ist (das heisst, dass das Signal PKADV1O = 1 ist). Dabei bleibt der Setz—zustand
lang genug erhalten, um sicherzustellen, dass die Signale PKSTI10,
PKTMI10 und PKATP30 gesetzt sind und das Yollständigkeits-Anzeigeglied
für das A-Register zurückgestellt ist (das heisst,
dass CDARPOO - 1 ist).
4. CDATB10 = CQTXIOO · CDBRPOO + CDBTC10.
Das die Übertragung vom Α-Register zum B-Register betreffende Übertragungssignal tritt mit hohem Pegel auf, wenn das Eingangsübertragungssignal
CQTXIOO eine Null ist und das B-Register leer ist (das heisst, dass das Signal CDBRPOO = 1 ist).
Das betreffende Signal tritt auch mit hohem Pegel dann auf, wenn ein die Übertragung vomB-Register zu dem C-Register betreffendes
Übertragungssignal mit hohem Pegel auftritt (das heisst, dass das Signal CDBTC10 = 1 ist)·
5. CDBTA10 = CDBTA10 = CDARPOO · CDPTAOO * CQTXHO · CPARL20.
ein
Dies ist/die Übertragung vom B-Register zum Α-Register betreffendes
Übertragungssignal, das mit hohem Pegel auftritt, wenn das Übertragungs-Eintritts-Polgesteuerungs-Plipflop
gesetzt ist (das heisst, dass das Signal CQTXHO = 1 ist), das Α-Register leer ist (das heisst, dass das Signal CDARPOO
= 1 ist) und keine weitere Übertragung vom P-Register oder
ALU her (das heisst, dass die Signale CDPTAOO und CPARL20 ■ sind) erfolgt.
509825/0978
6. CDBTC10 = CQTXIOO ' CPCRI20 · CDCRPOO + CDCTD10 · CQTXIOO.
Dies ist ein die Übertragung vom B-Register zum C-Register
betreffendes Übertragungssignal, das mit hohem Pegel auftritt,
wenn das Übertragungs-Eintritts-Ablaufsteuerungs-Plipflop
zurückgestellt ist (das heisst, dass das Signal CQTXIOO = 1 ist) und das B-Register leer...ist (das heisst,. dass das Signal
CDBRPOO = 1 ist). Das Signal tritt mit hohem Pegel auf, wenn der Inhalt des C-Registers zu dem D-Register auf Schreiboperationen
hin Übertragen wird (das heisst, dass die Signale CDCTD10 und CQTXIOO = 1 sind).
7. CDCTB10 = CDABE10 · CDPTBOO · GQTXHO.
Dies ist ein die Übertragung von dem C-Register zu dem B-Register
betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt, wenn das .Übertragungs-Eintritts-Ablaufsteuerungs-Plipflop
im Setzzustand ist (das heisst, dass das Signal CQTXITO = 1. ist), das Α-Register und/oder das B-Register
leer ist (das heisst, dass das Signal CDABE10 = 1 ist) und
keine Übertragung von dem F-Register zu dem B-Register hin erfolgt
(das heisst, dass das Signal CDPTBOO = 1 ist).
8. CDCTD10 = (CDDRPOO + CDPRP10) · CYWPB10.
Dies ist ein die Übertragung von dem C-Register zu dem D-Register
betreffendes Übertragungssignal, das lediglich während Schreiboperationen mit hohem Pegel auftritt.
9. CDDTC10 = (CDARPOO + CDBRPOO +CDCRPOO) CQRD010.
Dies ist ein die Übertragung von dem D-Register zu dem C-Register
betreffendes Übertragungsignal, das während einer
Leseoperation mit hohem Pegel auftritt (das heisst, dass das
Signal CQRD010 = 1 ist), wenn das Register A, B oder C
leer ist·
509825/0978
10. CDDTE10 a CQTXO10 * CDPTEOO · CDIDE10.
Dies ist ein die Übertragung von dem D-Register zu dem E-Register
betreffendes Übertragungssignal, das dann mit hohem
Pegel auftritt, wenn das Überträgungs-Austritts-Polgesteuerungs-Plipflop
gesetzt ist (das heisst, dass das Signal CQTX010 = "7 ist), das Ε-Register und/oder das P-Register leer ist (das
heisst, dass das Signal CDIDE10 a 1 ist) und keine Übertragung
von PSI zu dem Ε-Register hin erfolgt (das heisst, dass das Signal CDPTEOO = 1 ist).
11. CDETD10 a CQTXOOO · CDDRPOO · CPDRI20 + CDDTC10.
Dies ist ein die Übertragung von dem Ε-Register zu dem D-Register
betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt,
wenn das Übertragungs-Austritts-Folgesteuerungs-Flipflop
zurückgestellt ist (das heisst, dass das Signal CQTXOOO = 1 ist) und das P-Register leer ist (das heisst, dass das Signal
CDDRPOO = 1 1st). Das Signal tritt dann mit hohem Pegel auf, wenn der Inhalt des D-Registers zu dem C-Register während
Leseoperationen übertragen wird (das heisst, dass das Signal CDDTC10 a 1 ist).
12. CDETP10 = CQTX010 ■· CDEPA10 · CDPTPOO.
Dies ist ein die Übertragung von dem Ε-Register zu dem P-Register
betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt,
wenn das Übertragungs-Austritts-Polgesteuerungs-Plipflop
gesetzt ist (das heisst, dass das Signal CQTXO10 = 1 ist),
das P-Register leer ist (das heisst, dass das Signal CDEPA10
a 1 ist) und keine Übertragung von PSI zu dem P-Register hin erfolgt (das heisst, dass das Signal CDPTPOO = 1 ist).
13. CDPTE10 a (CQTXOOO · CDERPOO + CDETD10) · CDPTAOO · CDPTBOO.
Dies ist ein die Übertragung von dem P-Register zu dem A-Register
betreffendes Übertragungssignal, das dann mit hohem
509825/0978
Pegel auftritt, wenn das Übertragungs-Austritts-Folgesteuerungs-Flipflop
zurückgestellt ist (das heisst, dass-das Signal CQTXOOO
= 1 ist), das Ε-Register leer ist (das heisst, dass das Signal CDERFOO = 1 ist und keine Übertragungen von dem F-Register
zu dem Α-Register oder zu dem B-Register hin erfolgen (das heisst, dass die Signale CSPTAOO und CDPTBOO = 1 sind).
Das Signal7wanrend der Übertragung des Inhalts des E-Registers zu dem D-Register hin mit hohem Pegel auf (das heisst, dass
das Signal CDETD10 « 1 ist).
14. CDRTP10 = CDDAK10 * CQTXOOO · CDPRFOO.
Dies ist ein die Übertragung von Lesedaten zu dem P-Register
betreffendes Übertragungssignal, das dann mit hohem Pegel auf tritt, wenn ein Datenquittungs signal von dem Einrichtungsadapter her mit hohem Pegel auftritt, das Übertragungs-Austritts-Polgesteuerungs-Plipflop
zurückgestellt ist (das heisst, dass das Signal CQTXOOO = 1 ist) und das P-Register leer ist
(das heisst, dass das Signal CDPRPOO « 1 ist).
Dieser Bereich enthält die Zeitsteuerschaltungen der Blöcke 308-2 und 308-4 zusätzlich zu den Schaltungen mit den zugehörigen
Schaltkreisen. Wie erwähnt, erzeugt die Taktschaltung 308-2, die von herkömmlichem Aufbau ist, das Taktimpulssignal
für den Prozessor. Der Generator 308-4f der von herkömmlichem
Aufbau ist, erzeugt Schreibimpulssignale richtiger Polarität
und Phase aus den PDA-Signalen. Diese CLK-Impulse werden
den Registerschaltungen und den Zählerschaltungen der Bereiche
314 und 318 zugeführt, um diese Schaltungen für Schreiboperationen
bzw. Ladeoperationen zu konditionieren. Die
verschiedenen Ablaufsteuerungs- und Zyklus-Schaltungen sind in Pig. 3c und 3d im einzelnen dargestellt. Die Folgesteuerungs·
Flipflops dieses Bereichs sind in Pig· 3c als durch Firmenware setzbare Flipflops gezeigt, wobei das Setzen zu Beginn einer
509 8 25/097 8
Operation und das Rückstellen durch Hardware am Ende der
Operation erfolgt. Die aus den Mikrobefehlen abgeleiteten Steuersignale weisen entweder ein "CEn- oder ein "OP"-Präfix
auf.
Wie aus Pig. 3c hervorgeht, enthalten die Hardware-Folgesteuerschaltungen
eine Gatter- und Inverterschaltung 308-10 und Plipflops 308-1 bis 308-9 mit zugehörigen Gatterschaltungen
308-11 bis 308-92, die in der dargestellten Weise angeordnet
sind. Das Flipflop 308-1 ist ein erstes Durchlas s-Fortnat-Flipflop,
welches in den Binärzustandiwährend Suehoperation en
/Schreiboperationen gesetzt wird. Das Flipflop 308-2 ist ein Such-Flipflop, welches in den Binärzustandiwährend Suchoperationen
gesetzt ist. Das Flipflop 308-3 ist ein eine Lese/Schreibspeicherung ermöglichendes Flipflop, welches in
den Binärzustand 1 gesetzt ist und eine Hardwaresteuerung
bezüglich des Lesens, Schreibens und Verkleinerns des Inhalts
des lese/Schreibspeichers des Bereichs 306 gestattet. Das
Flipflop 308-4 ist ein Suchkopfoperations-Flipflop, das
auf sein Setzen in den Binärzustand 1 den ALU-Bereich ermöglicht,
sämtliche 1-Bytes in einem Suchargument eines Kennzeichenfeldes einer Aufzeichnung während Suchkennzeichenoperationen
zu vergleichen.
Das Flipflop 308-5 ist das Übertragungs-Austritts-Folgesteuerungs-Flipflop,
das, wie erwähnt, die Richtung von Byte-Übertragungen durch die Register D, E und F steuert.
Wenn dieses Flipflop in den Binärzustand 1 gesetzt ist, ermöglicht es eine Übertragung von Bytes aus dem D-Register
zu dem Ε-Register und aus dem Ε-Register zu dem F-Register;
es bewirkt ferner die Umschaltung des CDDAKIO-Signals, wodurch
dem Einrichtungsadapter gemeldet wird, dass ein Byte in dem F-Register enthalten ist, van das Voll-Flipflop in
509825/0978
den Binärzustand 1 gesetzt ist. Auf die Zurückstellung hin ist eine Übertragung von Bytes aus dem F-Register zu dem
Ε-Register und aus dem Ε-Register zu dem D-Register ermöglicht,
Die Gatter- und Inverterschaltung 308-10 erzeugt das ttbertragungs-Eintrittssignal.
Wie erwähnt, steuert dieses Signal die Übertragung von Bytes durch die Register A, B und O.
Ist das Signal ein Binärsignal 1, so ermöglicht es die Übertragung von Bytes von dem Α-Register zu dem B-Register
und von dem B-Register zu dem C-Register. Das Setzen erfolgt während der Leseoperationen (das heisst, dass das Signal
CQRDOOO = O ist) oder dann, wenn entweder die Datenübertragungsschaltungen
oder die Bedienungscodeschaltungen freigegeben sind (das heisst, dass das Signal FKDDTOO oder
das Signal PKDSCOO - Null 1st).
Das Flipflop 308-6 ist ein Zählspalt-Flipflop, das in den Binärzustand 1 während Lese/Suchoperationen gesetzt
wird, wenn ein letztes Prüfbit verarbeitet wird (das heisst dann, wenn entweder das Signal CQRDOOO oder CQSHOOO = 0
ist und wenn das Signal CDLBT10 = 1). Das betreffende Flipflop w£d ferner während Schreiboperationen durch nicht
dargestellte Schaltungen gesetzt. Das Flipflop 308-8 ist ein Leseoperations-Flipflop, das in den Binärzustand 1
während Leseoperationen gesetzt wird. Das Flipflop 308-9 ist ein Schreib-Operations-Flipflop, das während Schreiboperationen
in den Binärzustand 1 gesetzt ist.
Bestimmte Signale der durch die oben angegebenen Schaltungen erzeugten Signale werden an die Schaltungen des Hardware-Zyklus
Zählers abgegeben, den Fig. 3d im einzelnen zeigt. Dabei 1st ersichtlich, dass der Zähler Flipflops 308-100
bis 308-102 und zugehörige Eingangsschaltungen 308-110 bis
308-132 enthält, die in der dargestellten Weise angeschlossen
sind. .
509825/09 78
Das Flipflop 308-100 ist ein Vergleicherzyklus-Flipflop,
das durch Firmenware (das heisst^dass das Signal CTSH01S = 1
ist) während einer Suchoperation in den Binärzustand 1 gesetzt
ist. Das betreffende Flipflop wird in den Binärzustand Null zurückgestellt, wenn ein Satzzeichen-Bitsignal ermittelt
wird (das heisst, dass das Signal CWNR810 = 1 ist) und das
erste Durchlauf-Flipflop nicht gesetzt ist (das heisst, dass nicht der erste Durchlauf vorliegt). Das betreffende Flipflop
wird ferner zurückgestellt, wenn ein End-Austritts-Bit in dem C-Register ermittelt wird (das heisst, dass das Signal
CDCRT10 =1 ist).
Die Flipflops 308-101 und 308-102 sind unter Bildung eines zweistufigen Sprungzählers miteinander verbunden. Während
einer Schreiboperation (das heisst, dass die Signale CYWFB10, A1DAV31 und CYFCW10 = 1 sind) sperrt der Zähler die Verringerung
der Zählerstellung des DatenZählers des Bereiches
318 und bewirkt das "Festhalten" von Synchron-Bytes oder
Adressen und Synchron-Bytes. Während einer Leseoperation verhindert der Zähler die Übertragung von Synchron-Bytes oder
Führungs-Bytes eines Feldes einer gelesenen Aufzeichnung zu PSI hin (das heisst, dass die Signale CQRS010, CDFTX10
und OYIDTOO = 1 sind). Der betreffende Zähler ermöglicht
jedoch das Einschreiben der betreffenden Signale erforderlichenfalls in den Lese/Schreib-Speicherbereich 306 (zum
Beispiel des Kennzeichen-Bytes, das während einer Iesezähl-Operation
gelesen ist).
In Fig. 3e ist der Bereich 304 in Blockform dargestellt. Wie ersichtlich, enthält der betreffende Bereich einen
Festwertspeicher 304-2, der über ein Adressenregister 304-4 adressierbar ist, welches eine 12-Bit-Adresse über einen
Weg 304-3 abgibt. Dieselbe Adresse wird einem Inkrement-Register
304-6 zugeführt. Das Register 304-6 ist von
509825/0978
herkömmlichem Aufbau; es ermöglicht die Vergrösserung
seines Inhaltes um 1 und das Laden in das Register 3o4-4 über den Weg 304-7 auf das Auftreten eines Inkrement-Steuersignals
CRINC10 hin vorzunehmen, das durch Steuerschaltungen des Blockes 304-8 als binäres Signal 1 abgegeben
wird. ' ■
Darüber hinaus wird der Inhalt des Registers 304-6 zwei Rückführregistern 304-10 und 304-12 über den Weg 304-14
bzw. 304-16 zugeführt. Der Inhalt des Registers 304-6 wird selektiv geladen, und zwar auf ein Signal der beiden
Signale CPIR110 und CFIR210 hin, das als Binärsignal 1
abgegeben wird, und zwar durch die Verzweigungs-Sprung-Schaltungen des Blockes 304-20. In ähnlicher Weise werden die Inhalte
der Rückführregister 304-10 und 304-12 selektiv in das Addressregister 304-4 geladen. Dies erfolgt über die
Wege 304-21 und 304-22 auf das Auftreten eines Signals der beiden Signale CERISI0 und OFR2S10 hin, wobei das
betreffende Signal durch die Verzweigungssprung-Schaltungen 304-20 als binäres 1-Signal abgegeben wird.
Wenn der Speicher 304-2 adressiert ist, werden Signale an die Lese-Verriegelungs-Verstärkerschaltungen eines Registers
304-25 abgegeben, welches seinerseits Signale an die Verzweigungssprung-Schaltungen 304-20 für die Dekodierung
und an das Adressregister 304-4 über den Weg 304-26 bzw. 304-27 abgibt. Wenn die Verzweigungs-Sprung-Schaltungen
304-20 einen Verzweigungs-Mikrobefehl dekodieren und die Prüfbedingung erfüllt ist, wird das Signal CiDTSIO
in den Binärzustand 1 überführt, und der Inhalt eines Adressenfeldes wird in das Register 304-4 geladen.
Zusätzlich wird ein Teil des Inhalts aus den Schaltungen 304-25 den Multiplexer-Auswahlschaltungen eines schnell arbeitenden
Verzweigungs-MUX-Blockes 304-28 zugeführt, der ausserdem
509825/0978
eine Vielzahl von Prüfbedingungs-EingangsSignalen an Eingangsanschlüssen 2-31 erhält· Eines dieser Eingangssignale wird
von den Verknüpfungsschaltungen des Blockes 304-30 her zugeführt.
Ausserdem nehmen die betreffenden Schaltungen Eingangssignale von dem ALU-Bereich her auf (das heisat, dass die
Bus-Ieitungs-Signale CJIRB0-C/LRB7 vorhanden sind). Die Schaltungen
des MUX-Blockes 304-28 erzeugen Ausgangssignale,
die kennzeichnend sind für Zustände, die geprüft werden.
Diese Ausgangssignale werfen dem Verzweigungssprung-Block 304-20 zugeführt. Dieser Block wird in Verbindung mit Pig. 3f
im einzelnen beschrieben werden.
Die Inhalte der Schaltungen 304-25 werden selektiv den Flipflop-Stufen
eines örtlichen Registers 304-32 über, einen Weg 304-31 zugeführt und in das Register geladen, wenn die in einem Verzweigungsprüfblock
304-34 enthaltenen Schaltungen ein Abtastsignal CRSTR10 als Binärsignal 1 abgeben. Teile der Inhalte
des Registers 304-32 werden dem Verzweigungsprüfblock 304-34 und einer Multiplexer-Auswahlschaltung zugeführt, die in
dem Verzweigungs-MUX-Block 304-36 enthalten ist. Darüber hinaus
nimmt der MUX-Block Signale von ALU auf, wie dies angedeutet
ist. Ausserdem lädt das Register 304-32 eine Adresse in das Adressregister 304-4, und zwar über einen Weg 304-37, wenn
der Verzweigungsprüfblock ein Signal CFNTS10 als Binärsignal
1 abgibt. In einem Ablaufsteuerungs-Dekoder 304-38 enthaltene Schaltungen erzeugen die Mikrooperatipns-Steuersignale auf
das Auftreten der Signale, die über eisen Weg 304-39 von dem Register 304-32 zugeführt werden.
Mikrobefehlsformate
Bevor die verschiedenen Blöcke gemäss Fig. 3e im einzelnen
beschrieben werden, werden zunächst die unterschiedlichen Arten der Mikrobefehle und deren Formate unter Bezugnahme auf die
Figuren 4a bis 4g beschrieben.
509825/0978
In Pig. 4a ist ein Lese/Schreibspeicher (RWS)-Mikrobefehlswort
dargestellt, welches dazu "benutzt wird, den Adressen-
und Datenweg einer aus dem Lese/Schreib-Speicherbereich 306
zu lesenden Information oder in diesen Bereich zu schreibenden Information zu steuern. Wie aus dieser Pig. hervorgeht, weist
dieses Mikrobefehlswort einen durch die Bits 0 bis 2 bezeichneten Operationscode 101 auf. Die Bits 13 und 14"
bilden ein PeId, welches die Stelle in dem Lese/Schreib-Pufferspeicher
angibt, die für ein Auslesen oder ein Einschreiben eines einzigen Bytes vorgesehen ist. In dem Pail,
dass mehr als eine Einzelbyte-Lese/Schreib-Operation auszuführen
ist, gibt der Inhalt dieser Stelle eine Startadresse
an. Das nächste PeId ist ein Zählerfeld, welches die Bits 15 bis 18 enthält. Dieses PeId wird hauptsächlich für Lese/
Schreib- oder Suchzähler- oder Kopfadressenoprationen benutzt,
die entweder das Lesen oder Schreiben einer fortlaufenden Information aus dem bzw. in den Lese/Schreib-Pufferspeicherbereich
erfordern. Die durch dieses PeId angegebene 4-Bit-Zählerstellung kann zum Beispiel in die Byte-Position niedriger
Wertigkeit des in dem Bereich 318 enthaltenen DatenZählers
geladen werden, während die übrigen Stufen des Zählers durch Hardware mit Nullen aufgefüllt werden. Die Bits 19 und 20
dienen als Adressenauswahlfeld, welches drei Wege angeben
kann, durch die die Pirmenware eine Lese/Schreib-Speicheradresse
erzeugen kann. Diese Wege sind in der zugehörigen Tabelle ausgeführt. Aus der betreffenden Tabelle ergibt sich
dabei, dass dann, wenn dieses PeId auf"01". gesetzt ist, die Hardware den Inhalt des Lese/Schreib-Speicheradressregisters
ohne Bezugnahme auf das RWS-Adress&ld des Mikrobefehls
ausnutzt. Wenn das PeId auf "10" gesetzt ist, erzeugt
die Pirmenware die Lese/Schreib-Speicheradresse dadurch, dass
eine vier Bits umfassende Zahl des gegenwärtigen Verknüpfungskanals (LCN) in die Bitpositionen 2 bis 5 eines Lese/Schreib-Speicheradressregisters
geladen wird. Die übrigen Bits der Adressenbits werden aus dem RWS-Adressenfeld entnommen, das
in dem Mikrobefehl enthalten ist. Wenn dieses PeId auf "11"
509825/0978
gesetzt ist, wird die gesamte RWS-Adresse, die durch, das
RWS-Adressenfeld des in dem örtlichen Festwertspeicherregister
enthaltenen Mikrobefehls angegeben ist, benutzt.
Die Bits 21 und 22 dienen als Sprungzählerfeld; sie werden
dazu herangezogen, die Anzahl an Bytes anzugeben, die auszublenden sind, um in verschiedenen Betriebsarten zu arbeiten.
Die Bits 23 bis 26 stellen ein 4-BIt-FeId dar, welches
dazu benutzt wird, bestimmte Ablauffolgen anzugeben, die für lese/Schreib- oder Suchoperationen benötigt werden, welche
die Einspeicherung einer Information in den Hilfsspeicher
des Lese/Schreib-Speicherbereichs umfassen. Die Tabelle zeigt
den Typ der Operationen an, die durch unterschiedliche Kodierungen der B-Unteroperationscodebits angegeben sind.
In Pig. 4b ist das Format eines unbedingten Verzweigungs-Mikrobefehls
gezeigt. Dieser Mikrobefehl ist einer von zwei "SchnellverzweigungsM-Mikrobefehlen,
die erfordern, dass die Bits des Mikrobefehls von den Leseverstärker-Verriegelungsschaltungen
her dekodiert werden, um nämlich die Erzeugung einer nächsten Mikrobefetals-Wortadresse innerhalb einer Taktimpuls-Zeitperiode
freizugeben. Wie aus dem Namen hervorgeht, wird dieser Mikrobefehl
dazu benutzt, eine Nicht-Prüf-Verzweigungsoperation zum Zwecke des Aufrufs eines weiteren Mikroprogramms oder einer
Routine anzugeben. Die Operationscodebits Null bis 2, wie sie in Fig. 4b angegeben sind, werden als 110 kodiert. Das Bit 3
wird auf den Binärwert Null gesetzt um anzugeben, dass dies eine unbedingte Schnellverzweigungs-Operation ist. Die Bits 4
und 5 entsprechen einem llVorverzweigungszustands"-Feld, welches
dazu benutzt wird, das Setzen einer Rückführadresse vor der unbedingten Verzweigung anzugeben. Der Festwertspeicher-Steuerbereich
304 enthält, wie erwähnt, insbesondere zwei Verzweigungs-Rückführregister (das ist das Rückführ-Adressregister 1
und das Rückführ-Adresaregiater 2). Diese Register werden dazu
509825/09 78
benutzt, die Adressen festzuhalten, wenn eine Verzweigung
von einer Routine zu einer anderen erfolgt· Vie durch die
Tabelle in Fig. 4b angedeutet, tritt die Verzweigung in
dem Fall, dass die Bits 4 und 5 auf "00" gesetzt sind, auf, ohne dass irgendein Rückführregister auf eine bestimmte
Adresse einzustellen wäre. Wenn die Bits 4 und 5 auf "10w
gesetzt sind, ist die Verzweigungs-Hardware derart in Betrieb, dass die laufende Adresse, die sich in ROSAR (504-4)
findet, um 1 erhöht wird und in das Rückführadressregister 1 gespeichert wird, bevor eine Verzweigung auf eine neue
Adresse erfolgt. Nachdem die Routine-Verzweigung abgeschlossen worden ist, wird der Inhalt des Rückführ-Adressregisters
dazu benutzt, auf die erste oder ursprüngliche Routine zurückzukehren.
Wenn die Bits 4 und 5 auf "01" gesetzt sind, wird das Rückkehr-Adressregister 2 mit der Adresse des
Mikrobefehls geladen f nachdem diese um 1 vergrössert worden
ist. Dieses Adressregister stellt eine zweite Ebene der Verzweigungsrückkehr bereit. Wie durch dieselbe Tabelle angegeben,
ist es unerwünscht, die Bits 4 und 5 auf "11" zu setzen, da dies nämlich zum Laden derselben Adresse in die
beiden Adressregister 1 und 2 führt.
Wie durch Fig. 4b angegeben, stellen die Bits 6 bis 18
eine 12-Bit-Verzweigungsadresse dar, in der das Bit 18
das Bit niedrigster Wertigkeit ist und in der das Bit 6
ein Paritätsbit für eine ungerade Parität darstellt. Die Bits 19 und 20 stellen ein "Verzweigung zum Adressenzustand"-FeId
dar, welches die in der Tabelle angegebenen Zustände bezeichnet. Wenn diese Bits auf "00" gesetzt sind, führt
der Speicher eine Verzweigung zu einer Stelle hin aus, die durch die Verzweigungsadresse des Mikrobefehls definiert
ist. Wenn die Bits 19 und 20 auf "01" gesetzt sind, bewirkt der Speicher eine Verzweigung zu einer Adresse, die
509825/097 8
-W-
in dem Rückkehr-Adressregister 1 enthalten ist. Demgegenüber
"bewirkt der betreffende Speicher eine Verzweigung zu der in dem Rückkehr-Adressregister 2 enthaltenen Adresse,
wenn diese Bits auf "10" gesetzt sind. In ähnlicher Weise werden die Bits 19 und 20 nicht auf "11" gesetzt, da dies
einen unzulässigen Zustand definiert. Die Bits 21 bis 26 enthalten normalerweise nur Nullen, da sie ein nicht benutztes
PeId bilden. Die übrigen Bits sind wie angedeutet.
In Pig. 4c ist das Pormat des zweiten Schnellverzweigungs-Mikrobefehle
gezeigt, der einem bedingten SchnellVerzweigungs-Mikrobefehl
(PCB) entspricht. Wie dargestellt, besitzt der betreffende Mikrobefehl denselben Operationscode wie
der unbedingte Verzweigungs-Mikrobefehl; das Bit 3 ist jedoch auf den Binärwert 1 gesetzt. Das Bit 4 dient als
Setz-RÜckführadressregister-i-Peld. Wenn dieses Bit auf
den Binärwert 1 gesetzt ist und wenn das Prüfergebnis positiv ist, wird der Inhalt des Pestwertspeicher-Adressregisters
um 1 erhöht und in dem Rückführadressregister 1 gespeichert. Der Speicher führt dann eine Verzweigung zu der Stelle hin
aus, die durch das Verzweigungsadressenfeld des bedingten Schnellverzweigungs-Mikrobefehls bezeichnet ist. Das Bit 5
ist ein Rücksetz-Prüf-Plipflop-Peld-Bit, das im Setzzustand
die Zurückstellung bestimmter Prüf-Plipflops nach der Beendigung
der Prüfung bewirkt. Eines dieser Flipflops entspricht einem hier beschriebenen Befehlsende-Plipflop.
Die Bits 6 bis 18 bilden ein Verzweigungsadressenfeld, während die Bits 19 bis 23 ein Multiplex-Prüfzustandsfeld
bilden. Die Prüfzustände bzw. Prüfbedingungen sind so festgelegt,
wie dies in der Tab'elle 1 gemäss Pig. 4c angegeben
ist. Dabei können bis zu 31 Flipflops vorhanden sein, die geprüft werden können. Die Tabelle gibt einige der
einschlägigeren Flipflops an. Durch die Prüfung wird fest-
509825/0978
gestellt, ob ein Flipflop sich im Binärzustand 1 oder
Setzzustand befindet oder nicht. Wenn dieses PeId so gesetzt
ist, dass sämtlich Bits Einsen sind, dann zeigt dies an, dass keines der 31 Prüf-Flipflops zu überprüfen
ist, dass aber eine der Verriegelungsschaltungen, die die ALU-Ergebnis-Bus-Signale aufnehmen, wie sie durch
die Bits 24 bis 26 festgelegt sind, zu prüfen ist. Die Bits 24 bis 26 stellen ein Prüfzustands-Verriegelungsfeld
dar, welches in der aus der Tabelle 2 ersichtlichen Weise kodiert ist. Wie hier erläutert ist, ermöglicht
dieses Feld, dass der Inhalt irgendeines der Acht-Bit-Register über den zu prüfenden ALU-Bereich abgegeben wird,
und zwar auf eineijbitweisen Grundlage.
In Fig. 4d ist das Format eines normalen bedingten Verzweigungs-Mikrobefehls
(NCB) gezeigt. Im Unterschied zu bedingten Schnellverzweigungs- und unbedingten Verzweigungs-Mikrobefehlen
wird dieser Mikrobefehl am Ausgang des örtlichen Festwertspeicher-Registers decodiert, wobei ein
Intervall von zwei Taktimpulsperioden benötigt wird, um die Ergebnisse der Prüfung zu erhalten. Der normale
bedingte Verzweigungs-Mikrobefehl ermöglicht die Überprüfung irgendeiner Bit-Position (Binärzustand 1 und
Binärzustand Null) eines Registers vorzunehmen, das durch das A-Operandenfeld des Mikrobefehls bezeichnet ist.
Wie aus Fig. 4d hervorgeht, besitzt dieser Mikrobefehl einen Operationscode von "111". Das Bit 3 zeigt an,
ob die binäre 1 oder die binäre Null der Ausgangssignale
der durch das A-Operandenfeld bezeichneten Register zu
überprüfen ist. Die Bits A, 5 und 19 sind nicht benutzte
Felder; demgemäss sind sie auf binäre Nullen gesetzt.
Die Bits 6 bis 18 bilden ein Verzweigungsadressenfeld, während die Bits 20 bis 22 ein Verriegelungsfeld bilden.
509825/0978
Wie aus der betreffenden Figur ersichtlich sein dürfte,
geben diese Bits, wenn sie in der durch Tabelle 1 angegebenen Weise codiert sind, die Bitposition des durch
ALU ausgewählten zu überprüfenden Registers an. Die Bits 23 bis 26 bilden das A-Operandenfeld (AOP), welches,
wie durch Tabelle 2 angegeben 1st, irgendeines von 16 Registern bezeichnet, dessen Inhalt in den ALU-Verriegelungsschaltungen
gespeichert werden kann.
In Pig. 4e sind die Formate eines Eingabe/Ausgabe-Mikrobefehls
gezeigt. Dieser Mikrobefehl wird dazu benutzt, den Massenspeicher-Prozessor PSI und die Einrichtungsadapterschaltungen
in den Stand zu versetzen, diejenigen Operationen zu verarbeiten, die eine Informationsübertragung
zu/von dem Einrichtungsadapter und den Eingabe/Ausgabe-Steuereinrichtungs-Schnittstellen
erfordern. Wie aus Fig. 4e hervorgeht, besitzt dieses Mikrobefehlswort einen
Operationscode "011". Das Bit 3 entspricht einem Setzzähler-Bit, das im Binärzustand 1 entweder einen Eingabe/Ausgabe-Zähler
oder einen Datenzähler mit dem Inhalt des Zählerfeldes, welches die Bits 11 bis 18 umfasst, oder
von RWSLR her zu laden gestattet. Diese Operation tritt auf Eingabe/Ausgabe-Operationen hin auf, wie auf eine Bedienungscode-Ablauf
folge, eine Schreibdaten-Ablauffolge, eine Lesedaten-Ablauffolge, eine Such-Kennzeichen- oder Datenablauf
folge, etc.. Wenn dieses Bit in den Binärzustand Null gesetzt ist, wird keiner der zuvor erwähnten Zähler mit
einer Information geladen. Lediglich die Ablaufsteuerungs-Flipflops
werden, wie dies durch die Tabellen 1 bis 6 gemäss Fig. 4e angegeben ist, gesetzt. Das Bit 4 wird
benutzt, wenn das Zählerfeld benutzt wird (das heisst, dass das Bit 3 eine binäre 1 ist). Dieses Bit wird
dazu benutzt, dem Prozessor anzuzeigen, welches Byte der 2-Byte-PSI-Schnittstelle oder der Datenzähler mit
509825/0978
der durch das Zählerfeld bezeichneten Zählerstellung zu
laden ist. In dem Fall, dass zwei Bytes in die Zähler geladen
werden, erfordert dies zwei Eingabe/Ausgabe-Mikrobefehlsworte. Jedesmal, wenn die Byte-Stellen niedriger
Wertigkeit eines Zählers geladen werden, werden die Byte-Stellen höherer Wertigkeit desselben Zählers auf binäre
Nullen zurückgestellt. Wenn das Bit 4 eine binäre Null ist, zeigt es an, dass die Byte-Stellen niedriger Wertigkeit
des Zählers mit dem Zählerfeld des Eingabe/Ausgabe-Mikrobefehls geladen werden. Wenn demgegenüber das Bit 4 eine
binäre 1 ist, werden die oberen Byte-Stellen des Zählers mit dem Mikrobefehls-Zählfeld geladen. Wenn das Bit 3
des Mikrobefehls auf eine binäre Null gesetzt ist, wird hierdurch dem Prozessor signalisiert, welche Flipflops
in den Feldern 1 bis 3 und jene in den Fehlerkorrektur-
und Fremdbetriebsfeldern zu setzen oder zurückzustellen
sind. Wenn das Bit 4 auf eine binäre 1 gesetzt ist, werden jene Flipflops, die durch diese Felder bezeichnet
sind, in die Binärzustände 1 gesetzt. Wenn das Bit 4 eine binäre Null ist, werden jene Flipflops, die durch
die Felder bezeichnet sind, in ihre Binärzustände Null zurückgestellt. Das Bit 4 besitzt keine Bedeutung, wenn
die Felder codiert werden, um nur Nullen zu enthalten. Die Tabellen 4 bis 6 zeigen Codes, die kennzeichnend sind
für bestimmte Flipflops der in dem Massenspeicher-Prozessor enthaltenen Flipflops.
Die Bits 5 und 6 geben ein Unter-Operationscodefeld an,
wenn das Zählfeld benutzt wird (das heisst, dass das Bit eine binäre 1 ist). Das Operationscodefeld gibt an, welcher
der Zähler (das heisst der PSI-Byte-Zähler oder der Daten-Zähler)
zu laden ist; ferner wird die zu ladende Zählquelle
5098 2-5/0978
angegeben (das heisst das laden von den örtlichen lese/
Schreib-Speicherregistera oder dem örtlichen Festwertspicherregister).
^ie Tabelle 1 gibt die verschiedenen Codierungen für diese Bits und die entsprechenden Funktionen
an. Die Bits 7 bis 10 definieren ein PSI-Ablaufsteuerungs-Flipflop-Feld,
wenn das Bit 3 auf eine binäre 1 gesetzt ist. Diese Flipflops stellen, wie oben erwähnt, die Datenwege
für die PSI-Anordnung bereit, um Datenübertragungen zwischen der Eingabe/Ausgabe-Steuereinrichtung und dem
Massenspeicher-Prozessor vorzunehmen. Die !Tabelle 2 zeigt die Codes für die Kennzeichnung unterschiedlicher Flipflops
dieser vier Flipflops an. Während die Codierung der Bits 7 bis 10 das Setzen eines einzelnen Flipflops veranschaulicht,
kann die Codierung der betreffenden Bits so modifiziert werden, dass mehr als ein einzelnes Ablaufsteuerungs-Flipflop
mit einem einzelnen Mikrobefehl gesetzt wird. Die Bits 11 bis 18 geben ein Zählfeld an, welches von dem Prozessor
dazu benutzt wird, entweder den PSI-Zähler oder den Datenzähler
zu laden. Wenn die zwei Byte breiten Zähler geladen werden^ werden die PSI-Flipflops oder die Ablaufsteuerungs-Flipflops
lediglich dann gesetzt, wenn eine Zählerstellung in die oberen Bytestufen des Zählers geladen wird. Wie
durch Fig. 4e angegeben, sind die Bits 19 und 20 nicht benutzte Bits,wenn das Bit 3 eine binäre 1 ist. Die
Bits 21 und 22 dienen als Sprungzählfeld, wenn das Bit 3 eine binäre 1 ist. Dieses Zählfeld zeigt die Anzahl von
Bytes an, die von dem Prozessor während einer lese-, einer Schreib- oder einer Suchoperation einzuschllessen bzw.
zu überspringen sind. In Abhängigkeit von dem bestimmten, verarbeiteten Aufzeichnungsformat wird dieses Feld gesetzt,
um die richt- Anzahl der einzuschliessenden bzw. zu überspringenden
Bytes anzugeben. Die Bits 23 bis 26 definieren ein Ablaufsteuer-Flipflop-Feld, wenn das Bit 3 eine binäre
1 ist. Die Ablaufsteuerungs-Flipflops werden in bestimmte
50 9 8 25/0978
Zustände gesetzt, die ihrerseits den Weg für die Herstellung
bidirektionaler Informationsübertragungen durch die verschiedenen Register von MSP festlegen. Die Codierungen
für diese Felder sind in der Tabelle 3 in Pig. 4e angegeben. Einige dieser Flipflops sind oben bereits erläutert
worden.
Wenn das Bit 3 auf eine binäre Null gesetzt wird, werden
die Bits 5 bis 26 in der durch die Tabellen 4 bis 6 angezeigten Weise benutzt.
In Fig. 4f sind zwei Formate für Mikrobefehle gezeigt,
die zur Angabe unterschiedlicher Rechenoperationen verwendet werden. Die Rechenoperations-Mikrobefehle enthalten
einen Operationscode "010". Das Bit 3 wird dazu benutzt, unterschiedliche Formate des Mikrobefehls anzuzeigen.
Die Bits 4 bis 7 bilden ein Unteroperationscode-Feld, welches bis zu 16 unterschiedliche Rechenoperationen
festlegt, von denen einige Verknüpfungsoperationen sind. Die Tabelle 1 zeigt bestimmte Rechenoperationen der durch
die Bits 4 bis 7 codierten Rechenoperationen an. Diese Operationen sind bekannt, weshalb sie hier nicht weiter
ins einzelne gehend beschrieben werden. Zur weiteren Information sei auf die oben erwähnte Druckschrift der
Firma Texas Instruments, Inc. hingewiesen. Die Bits 8
und 9 dienen als Eintrag-Feld; sie werden gemäss Tabelle 2 codiert, um drei unterschiedliche Eintragzustände
festzulegen, und zwar für die Ausführung von verschiedenen Rechenoperationen. Die Bits 15 bis 18 werden nicht benutzt,
wenn das Bit 3 eine binäre Null ist; daher sind diese Bits binäre Nullen. Die Bits 10 bis 14 sind in der
aus Tabelle 3 ersichtlichen Weise codiert, um den Bestimmungsort
des durch eine Rechenoperation erzeugten Ergebnisses anzugeben. Die Bits 19 bis 22 bilden ein
SO 9-8 26/0978
B-Operanden-Konstanten-Feld (BOP), welches die Quelle
des B-Operanden gemäas Tabelle 4 anzeigt. In ähnlicher
Weise zeigen die Bits 23 bia 26 die Quelle des A-Operanden
gemäss Tabelle 5 an. Es sei bezüglich der Fig. 4f darauf hingewiesen, dass dann, wenn das Bit 3 eine
binäre 1 ist, die Bits 15 bis 22 als B-Operandenbenutzt
werden.
In Fig. 4g sind zwei Formate für Mikrobefehle gezeigt, die zur Angabe unterschiedlicher Arten von Verknüpfungsoperationen verwendet werden. Die VerknüpfungsOperations-Mikrobefehle
enthalten einen Operationscode "001". Der Zustand eines Format-Bits 3 zeigt dann, wenn dieses
Bit eine binäre Null ist, an, dass eines der in der Tabelle bezeichneten Register die Quelle des B-Operanden
zu sein hat. Wenn das Bit 3 eine binäre 1 ist, ist
das 8-Bit-Konstanten-Feld des Mikrobefehls der B-Operand.
Die Bits 4 bis 7 eines Unteroperations-Code-Feldes
bezeichnen die Verknüpfungsoperation, die durch ALU auf die A- und B-Operanden hin auszuführen ist. Die Tabelle 1
zeigt dabei einige Arten von Operationen. Bezüglich weiterer Information sei jedoch auf die oben erwähnte Druckschrift
der Firma Texas Instruments hingewiesen.
Die Bits 15 bis 18 werden nicht benutzt, wenn das Bit 3 eine Null iat. Die Bits 10 bis 14 bilden eine Bestimmungsangabe des AIU-Ergebnisfeldes; sie sind so codiert, dass
sie eines der Register in der angegebenen Tabelle für die Aufnahme des durch ALU erzeugten Ergebnisses bezeichnen.
Sämtliche Codes mit Ausnahme von 11110 und 11111 bewirken, dass das Ergebnis an das bezeichne» Register abzugeben ist
sowie in den ALU-Verriegelungsschaltungen zu speichern ist.
Bei den Codes 11110 und 11111 wird das Ergebnis nicht in ein Register übertragen, sondern es wird vielmehr in den
509825/0978
ALU-Verriegelungsschaltungen gespeichert·
Wie oben erwähnt, geben die Bits 19 bis 22 die Quelle
des B-Operanden für ALU an, wenn das Bit 3 eine Null ist..
Die Bits 15 bis 22 definieren den B-Operanden, wenn das
Bit 3 eine binäre 1 ist. Im übrigen werden, die Bits 8 und 9 bei diesem Mikrobefehfetyp nicht benutzt. In ähnlicher
Weise definieren die Bits 23 bis 26 die Quelle des A-Operänden
für ALIT.
Unter Bezugnahme auf Pig. 3f werden nunmehr bestimmte Schaltungen gemäss Fig. 3e im einzelnen beschrieben. Aus Fig. 3e
geht hervor, dass der Verzweigungssprungblock 304-20 die Schaltungen 304-200 bis 304-215 enthält, die in der dargestellten
Weise angeordnet sind. Wie erwähnt, erzeugen diese Schaltungen die erforderlichen Signale während der
Ausführung der beiden schnellen Befehle, die unmittelbar an die Schaltungen mittels der Leseverstärker-Verriegelungs-Schaltungen
304-25 abgegeben werden. Die durch die Verzweigungssprung-Schaltungen
gebildeten Signale werden gemäss folgenden booleschen Ausdrücken erzeugt.
1. CFDTS10 (ROS Daten zu ROSAR) = CFUCB10 · OBNOKOO ·
CFR1S00 · CFR2S00 + CFFCB10 ' CBB0K10.
2. CFFCB10 (schnelle bedingte Verzweigung) = CFBNH10
• CDR0310
3. CFIR110 (Inkrementierer auf Rückführ-Reg 1) = CFUCB10
• CBNOKOO.
4. CFIR210 (Inkrementierer auf Rückführ-Reg 2) = CBNOKOO
• CFUCB10 · CRD2210.
0 9 8 2 5/0978
5. CFR1S10 (Rückführ-Reg 1 zu ROSAR) * CPÜCB10 · CRD1910
• CBNOKOO.
6. CFR2S10 (Rückführ-Reg 2 zu ROSAR) = CFUCB10 · CRD2010
• CBNOKOO.
7. CBB0K10 (Verzweigung OK für PCB) β CBBOKOC · CBTRBOO
+ CBTRB10 · CBRBOJOO + CBN0K10.
8. CBBOKOC (FCB-Testbedingungen) = CBBOKOA · CRD1900 .
CBBOKOB.
Die Signale CBBOKOA, CBBOKOB und CBRSTOO werden von entsprechenden Wählerschaltungen der Multiplexer-Wählerschaltungen
304-280 bis 304-285 abgeleitet, die in dem Schnellverzweigungs-MUX-Block 304-28 enthalten sind. Diese
Schaltungen nehmen eine Anzahl von Eingangssignalen von verschiedenen Teilen des Prozessors auf. Diese Signale,
die kennzeichnend sind für bestimmte Testbedingungen, werden abgetastet, und die Ergebnisse der Abtastung werden
den Verzweigungssprungs-Schaltungen 304-20 zugeführt, wie dies dargestellt ist. Eines der der Multiplexer-Schaltung
304-284 zugeführten Eingangssignale ist das Signal CBE0C10.
Dieses Signal wird durch ein Flipflop 304-300 erzeugt, welches in den Schnellverzweigungs-Verknüpfungsschaltungen
des Blockes 304-30 enthalten ist. Wie dargestellt, umfasst dieser Block dieses Flipflop zusammen mit zugehörigen Gatterschaltungen
304-301 bis 304-302,/in der dargestellten Weise angeschlossen sind.
Weitere Test- bzw. Prüfsignale umfassen ein den Nichtempfang
eines Indeximpulsea anzeigendes Signal A1IDTOO, das durch
XnQex— den Adapterbereich 310 auf das Auftreten des/Impulssignals
von der Leitung IDX hin erzeugt wird. Ferner umfassen die
509825/0978
Testsignale ein. die Ungleichheit von Null des Spaltenzählerinhalts
anzeigendes Signal CCGCZOO von dem Bereich 318, ein die Ungleichheit von Null des DatenZählerinhalts
anzeigendes Signal CCDCZOO von dem Bereich 318, ein das-Nichtsetzen
eines Datenende-Plipflops anzeigendes Signal PKDDTOO von dem Bereich 302 und ein den ersten Durchlass
/das Setzen des Pormat-Plipflops betreffendes Signal CQPPP10
von dem Hochgeschwindigkeits-Ablaufsteuerberelch 308 her.
Es sei ferner darauf hingewiesen, dass die Schaltung 304-208 ein die Gleichheit von A und B anzeigendes Signal CAAEBIO
und ein Signal CAAGB10, das anzeigt, dass A grosser ist als B, von dem ALU-Bereich 316 her empfängt.
Aus Pig. 3f geht ferner hervor, dass die Verzweigungsprüfschaltungen
des Blockes 304-34 die Schaltungen 304-340 bis 304-344 enthalten, die .in der dargestellten Weise angeschlossen
sind. Diese Schaltungen sind derart betrieben, dass Verzweigungssignale auf einen Normalzustands-Verzweigungs-Mikrobefehl
hin erzeugt werden, der in dem örtlichen Pestwertspeicher-Register 304-32 gespeichert ist. Darüber hinaus
erzeugen diese Schaltungen Signale für die Preigabe der Ablaufsteuer-Dekoderschaltung 304-38, die derart betrieben
ist, dass sie die Bits 23 bis 26 des Normalzustands-Verzweigungs-Mikrobefehls
dekodiert, weiche Bits über den Weg 304-39 zugeführt werden. Die in dem Verzweigungs-MUX-Block
304-36 enthaltenen Multiplexer-Auswahlschaltungen liefern ein Verzweigungssignal CBN0K10 auf die Abtastung einer der
Verriegelungsschaltungen des ALU-Bereiches hin, wie dies
durch die Verriegelungsfeld-Bits 20 bis 22 festgelegt ist. Darüber hinaus wird das Signal 0BN0K10 an die Schaltungen
abgegeben, die in dem Inkrement-Verknüpfungsschaltungsblock 304-8 enthalten sind. Wie dargestellt, umfasst dieser Block
die Schaltungen 304-80 bis 304-83. Diese Schaltungen führen das Signal CRINC10 in ein binäres 1-Signal über, und zwar
509825/0978
■ - 3* -
entsprechend folgendem booleschen Ausdruck:
CRINC10 (Vergrössern yon ROSAR) = (CBNOKOO · CPUCBOO ·
CRRESOO) · (CPPCBOO + CBBOKOO).
Die Piguren 3g und 3h zeigen im einzelnen den Lese-Schreib-Speicherbereich
306. Wie ersichtlich, enthält dieser Bereich einen Hilfsspeicher 306-2, der aus einer
Anzahl von 256 · 1-Bit-Peldern von herkömmlichen] Aufbau
in der angegebenen Weiaa aufgebaut ist. Der Speicher 306-2
wird über ein Adressregister 306-4 adressiert, welches eine Anzahl von Verstärker-Verriegelungsschaltungen enthält.
Das Register 306-4 kann von ROSLR her über die Busleitung 306-6 auf ein Steuersignal CPSRI10 hin geladen werden,
das über ein UND-Glied und eine Verstärkerschaltung 306-8 erzeugt wird. In ähnlicher Weise können bestimmte Bitstellen
des Registers 306-4 mit einem ICN-Bit von einem RWS-Einrichtungs-Anschlussregister
306-7 über einen Weg 306-5 geladen werden, und zwar auf ein Steuersignal CiDVPIO hin.
Wie aus Pig. 3g ersichtlich ist, wird das Register 306-7 von den AIU-Busleitungs-Verriegelungsschaltungen des Bereiches
316 her geladen. Wenn das Signal CPSRL10 ein Binärsignal Null ist, kann das Register 306-4 ' über einen
Weg 306-10 mit einer Adresse geladen werden, die von dem Registerepeicher 306-12 abgegeben wird. Dieses Register
erhält eine Adresse von den Schaltungen eines Blockes 306-14, nachdem die Adresse von dem Register 306-4» die über eten
Weg 306-20 abgegeben worden ist, um 1 erhöht worden und abgegeben worden ist, wenn ein Inkrement-Signal CWINC1Q
und ein allein eine Inkrementierung bewirkendes Inkrement-Signal
CWIN010 als Binärsignale 1 auftreten. Die Schaltungen 306-16 bis 306-19 lassen das Signal CWINC10 als
Binärsignal 1 während sämtlicher Schreiboperationen,
509825/0978
während der Suchoperationen und leseoperationen gemäss
folgendem Ausdruck auftreten:
CWINC10 = CVWPA10 . CWDTMOO + CQSH010 · CQITIOO · CWPTM10
+ CFRED10.
Die Schaltung 306-20 lässt das Signal CWIN010 als Binärsignal 1 während der Suchoperationen auftreten, wenn das
Signal CWT0G10 ein Binärsignal Null ist und wenn das Signal CWINC1Ö ein Binärsignal 1 ist.
Die drei Adressensignale hoher Wertigkeit von dem Adressregister
306-4 werden den Chip-Iteigabedekoderschaltungen
306-30 zugeführt, die für jede Reihe der Felder Freigabesignale erzeugen. Wenn die Schaltungen des Blockes 306-32
das Lesesignal CWRED10 als Binärsignal 1 auftreten lassen, werden die Byte-Inhalte eines adressierten Speicherplatzes
in ein örtliches Ausgaberegister 306-40 geladen. Die Schaltungen 306-33 bis 306-39 des Blafces 306-32 lassen das
Signal CWRED10 als Binärsignal 1 auftreten, wenn der Folgesteuer-Dekoder
bzw. Ablaufsteuer-Dekoder des Bereiches 304 das Signal CEMSQ08 erzeugt und wenn das Flipflop 306-36
das Signal CWRED1A in den Binärzustand 1 überführt.
Der -Block 306-42 zeigt eine repräsentative Stufe der Daten-Eingabeschaltungen,
die für die Eingabe eines Informationsbits in einen adressierten Speicherplatz benutzt werden.
Die Schaltungen umfassen UND-Glieder 306-43 bis 306-57 und Verstärkerschaltungen 306-48, die in der dargestellten
Weise angeschlossen sind. Die Verknüpfungsglieder 306-44 bis 306-46 werden dazu benutzt, eine Information von den
Registern C, D und F des Pufferbereichs her zu speichern. Das Verknüpfungsglied 306-47 wird dazu benutzt, eine Information
in dem örtlichen Register 306-40 zu speichern. Die verschiedenen Übertragungssignale werden durch die
50982 5/0978
Schaltungen des Blockes 306-70 erzeugt, die in Verbindung mit Fig. 3h noch beschrieben werden. Wie ferner gezeigt,
kann das örtliche Register 306-40 von dem ALU-Bereich her geladen werden, und zwar über einen Weg 306-50, wenn der
Pestwertspeicher ein Signal CFNRL10 als Binärsignal 1
abgibt.
Während eines Schreibteiles eines Speicherzyklus ist eine Gatter- und Inverterschaltung 306-52 freigegeben, um einen
Schreibimpuls abzugeben, der durch einen Schreibimpulsgenerator 306-54 erzeugt wird. Dadurch wird eine Reihe
von acht Treiber-Inverterschaltungen (zum Beispiel CWWPLOO
bis CWWPL07) gesteuert. Dies bewirkt, dass die Information in einen adressierten Speicherplatz eingeschrieben wird.
Die Schaltung 306-52 ist freigegeben, wenn eine weitere Gatter- und Inverterschaltung 306-56 ein Schreibimpuls-Freigabesignal
als Binärsignal 1 auftreten lässt.
Figur 3h zeigt die Schaltungen 306-71 bis 306-88 des
Blockes 306-70, die für die Erzeugung der verschiedenen Übertragungssteuer-Signale CWDTM10, CWCTM10, CWFTM10
und CWNTM10 dienen. Die UND-Glieder 306-76 bis 306-78 dekodieren die Zustände bestimmter Folgesteuerungs-Flipflops;
sie setzen die Inverterschaltung 306-79 in den Stand, das Signal CWDTMOB als Binärsignal 0 auftreten zu lassen,
und zwar für die Übertragung von Bytes von dem D-Register zu dem Lese/Schreib-Speicher während einer anderen Operation
als der ersten Durchlauf-Suchoperation. Dies bewirkt seinerseits, dass die UND-Glied- und Inverterschaltung 306-80
das Signal CWDTM10 als Binärsignal 1 auftreten lässt. In ähnlicher Weise bewirkt der Festwertspeicher durch Abgabe
des Signals CEMSQOA als Binärsignal Null eine Übertragung von Bytes von dem D-Register auf die Dekodierung
eines MOA"-Wertes hin, der in dem Unteroperations-
50 98 25/09 7 8
Codefeld eines RWS-Mikrobefehls enthalten ist.
Die Schaltungen 306-81 bis 306-86 dekodieren die Zustände
■bestimmter Folgesteuerungs-Flipflops, um das Signal CWCTMOB
als Binärsignal Null auftreten zu lassen, wenn Bytes aus dem C-Register zu dem Lese/Schreib-Speicher während einer
ersten Durchlauf-Suchoperation übertragen werden. In ähnlicher Weise führt der Festwertspeicher das Signal CEMSQ09 als
Binärsignal Null auf die Decodierung einer "09" in dem Unteroperationscodefeld eines RWS-Mikrobefehls ab. Dies
ermöglicht die Übertragung von Bytes aus dem C-Register zu dem Lese/Schreib-Speicher hin.
Die UND-Glied- und Inverterschaltung 306-88 ermöglicht
das Schreiben des Inhalts des örtlichen Lese/Schreib-Speicherregisters
in den Lese/Schreib-Speicher zurück, und zwar auf die Decodierung von "OB" oder"OC" in dem Unteroperationscodefeld
bzw. Suboperationscodefeld eines RWS-Mikrobefehls. Die UND-Glieder 306-71 bis 306-74 führen
das Übertragungssignal CWPTM10 in ein Binärsignal 1
während Schreib-Zählungs- oder Kennzeichenoperationen über,
wobei Bytes von dem Sprungzähler während Suchoperationen
übersprungen werden. Dabei erfolgt eine entsprechende
Signalerzeugung während Lese-Zähl- oder Kennzeichenoperationen,
wenn ein Byte aus dem F-Register übertragen wird.
In Fig. 3h sind ferner die Verknüpfungsschaltungen des
Blockes 306-100 gezeigt, die zur Erzeugung eines Umschalt-Signals CWT0G10, eines Einzel-Umschaltsignals CWTG010
und eines Umschalt- und Inkrement-Signals CWTIC10 verwendet werden. Diese Schaltungen bringen durch die Erzeugung
des Signals CWTOG10 die Eigenschaft mit sich,
den Inhalt des RWS-Adressenregisters um 512 Speichestellen
innerhalb einer Taktzeit (FDA) zu erhöhen. Diese Anordnung
5 09825/0978
- se «
erleichtert die Speicherung einer Information von zwei Quellen während der Suchoperationen; dies bedeutet,
dass diese Anordnung die unmittelbare Speicherung der Zählerstellungs- und Kennzeichenfeld-Bytes von einer
ausgewählten Einrichtung in einer ersten Gruppe von Speicherstellen (Null-511) und die Speicherung von
Suchargument-Bytes von der Eingabe/Ausgabe-Steuereinrichtung in einer zweiten Gruppe von Speicherstellen
(512-1023) ermöglicht. Die Bitstelle zweithöchster Wertigkeit (CWS01) wird zwischen zwei Zuständen "umgeschaltet",
um verknüpfungsmässig die Speicheradresse um 512 Stellen
zu erhöhen/zijverringern, da sie einen Pos i Ions wert von
512 besitzt.
Die Umschalt-Verknüpfungsschaltungen des Blockes 306-100
enthalten UND-Glieder 306-1 bis 306-104» eine Verstärker-Schaltung
306-105 und die Inverterschaltung 306-106. Das Umsehaltsignal CWTOG10 wird auf die Dekodierung der
Zustände bestimmter Ablaufsteuerungs-Flipflops hin erzeugt.
Die UND-Glieder 306-101 bis 306-104 führen das Signal CWT0G10 im besonderen in den geeigneten Zustand über,
und zwar für die Speicherung eines Kennzeichen-Bytes, das in dem F-Register gespeichert ist. Dies erfolgt
während einer Suchoperation nicht im ersten Durchlauf, um ein in dem D-Register gespeichertes Byte während irgendeiner
Suchoperation in dem Vergleicherzyklus zu speichern,
wenn ein Zeichensetzungs-Bit in einem vorhergehenden lesezyklus
nicht ermittelt worden ist, bzw. für die Speicherung eines in dem C-Register enthaltenen Bytes im Zuge des
ersten Durchlaufs in dem Speicherzyklus und für das Auslesen
eines Suchargument-Bytes aus dem Lese/Schreib-Speicher
während einer Suchoperation, die nicht im ersten Durchlauf erfolgt.
509825/0978
Die UND-Glied- und Verstärkerschaltungen 306-110 und
306-111 des Blockes 306 - 100 verknüpfen das Umschaltsignal
CWTOGIO mit Inkrement-Signalen CWINC1O und CWICOO
in der dargestellten Weise, um ein einziges Umsehaltsignal
CWTG010 und ein Umschalt-[und Inkrement-Signal CWTIC10
zu erzeugen. Ist das Inkrement-Signal CWINC10 in den Binärzustand 1 gesetzt bzw. tritt es als Binärsignal 1
auf, so wird das einzige Umschaltsignal CWTG010 im Binarzustand Null gehalten. Auf diese Weise ist ein Zugriff zu
der nächsten Gruppe der 512 Speicherplätze verhindert. Das UND-Glied 306-20 gemäss Pig. 3g lässt das einzige
Schrittsignal CWIN010 als Binärsignal Null dann auftreten, wenn das Signal CWT0G10 ein Binärsignal 1 ist. Dadurch
kann die Adresse von den Inkrement-Verriegelungsschaltungen
in die Adressregister-Flipflops geladen werden. Wenn CWS0110
des Adressregisters in ein Binärsignal Null umzuschalten ist und die Adresse um 1 erhöht wird, schaltet das UND-Glied
306-110 das Signal CWT1C10 in ein Binärsignal 1 um.
Mehrzweckregister-Bereich 314 und Rechenverknüpfungseinheit-Berelch 316.
In Fig. 3i sind die Bereiche 3H und 316 im einzelnen
dargestellt. Dabei ist ersichtlich, dass ALU eine Haupt-Rechen- und Verknüpfungseinheit (AIU) 316-2 und eine Hilfs-ALU-Einheit
316-4 zusammen mit zugehörigen Betriebsauswahl-Eintrag-
und Ausführungsfreigabe-Schaltuispn enthält (zum Beispiel
den Schaltungen des Blockes 316-6). Darüber hinaus sind Paritätfehlerprüfschaltungen 316-6 vorgesehen. Da die Hilfs-ALU-Einheit
316-4 lediglich dazu dient, die Operation der
Haupt-ALU-Einheit 316-2 für Prüfzwecke zu verdoppeln, brauchen
ihre zugehörigen Schaltungen nicht erläutert zu werden, und ausserdem braucht ihre Arbeitsweise nicht beschrieben zu werden.
509 8 25/0 97 8
Die Haupt-ALU-Einheit 316-2 vermag sechzehn Verknüpfungsoperationen
oder zweiunddreissig Rechenoperationen auf die Abgabe bestimmter Kombinationen von EingangsSignalen
auszuführen, die ihren Eintrag-(CIN), Ausführungsfreigabe-(CEN)- und Betriebssteuerungs- (M0-M3)-Eingangsanschlüasen
zugeführt werden. Die ALU-Einheit wird für die Aufnahme von A- und B-Operandensignalen durch die Schitungen 316-62
bis 316-65 freigegeben, die das Freigabesignal CACENOO als Binärsignal auftreten lassen. Wenn weder eine Verknüpfungsoperation noch eine-Rechenoperation ausgeführt wird, arbeitet
die ALU-Einheit 316-2 in einem Subtaktionsbetrieb
(das heisst in einem Betrieb, der normalerweise während der Such- und Fehlerfestelloperationen benutzt wird).
Dies bedeutet, dass der natürliche Zustand der ALU-Einheit bei Fehlen von anliegenden Signalen an den Betriebssteuerschaltungen
gegeben ist mit f = A-B-1, wobei f = das Ergebnis ist. Die Betriebsartsignale, die der ALU-Einheit
zugeführt werden, werden insbesondere als "0110"-codiert.
Dies versetzt die ALU-Einheit in den Stand, das gewünschte Ergebnis zu erzeugen (siehe Fig. 4f). Die ALU-Einheit
subtrahiert die A- und B-Operanden durch Ausführung einer Einser-Komplement-Addition und Erzeugung eines Ergebnisses
entsprechend A-B-1 in den Stufen CAFOO bis CAF07. Das Fehlen eines Eintragsignals bewirkt, dass ein erzwungenes
Eintragsignal dem Eintrag-Eingangsansdiuss Cin zugeführt
wird. Das Ergebnis wird seinerseits an die Ergebnis-Busleitungs-Verriegelungsschaltungen
316-10 und an die Ergebnis-Verriegelungsschaltungen 316-12 abgegeben. Dies
erfolgt auf die Abtastung durch ein Abtastsignal CASTR10 hin, das durch die Schaltungen eines Abtast/RST-Steuerblockes
316-20 erzeugt wird. Die an den A s B-Ausgangsanschlüssen
beider ALU-Einheiten auftretenden Ausgangssignale werden mit Hilfe einer UND-Schaltung des Blockes
316-8 verglichen, um den Vergleich bzw. die Übereinstimmung
50982 5/0978
zu kontrollieren.
Während einer Verknüpfungsoperation wird das Unteroperationscodefeld
des Mikrobefehls (das heisst 011110410-CRNOTIO)
an den Dekoder 316-60 abgegeben, und zwar von dem örtlichen ROS-Register des Bereiches 304. Die Eingangssignale CRN0410
bis CRN0710 bewirken zusammen mit den Abtast- bzw. Auatastsignalen
CASTRiO und CASTROO von der Steuereinrichtung 316-20, dass der Decoder 316-60 die in Präge kommenden
Betriebssteuereingangssignale erzeugt, die ihrerseits an die Eingänge MO bis M3 abgegeben werden.
Wie oben erwähnt, veranlassen diese Signale die Haupt-ALU-Einheit,
die angegebene Verknüpfungsoperation auszuführen.
Der Α-Operand (AOP) wird von dem Allzweckregisterabgegeben Speicherplatz oder dem "heissen" Register/, Welches die im
A-OperatJenscodefeld des Mikrobefehlswortes bezeichnete Adresse
aufweist (das sind die Bits N23 bis N26). Der B-Operand
(BOP) wird abgegeben von:
1) Einem Allzweckregister oder "heissen" Register, das
durch das B-Op-PeId des Mikrobefehlswortes angegeben ist
(das sind die Bits N19 bis N22), oder
2) von einer Acht-Bit-Konstante, die durch den Mikroprograramierer
(das sind die Bits I5 bis 22 des in dem örtlichen ROS-Register gespeicherten Mikrobefehlswprtes)
angegeben ist, wenn das das Mikrooperationscodeformat anzeigende Bit eine binäre 1 ist. Wie aus Pig. 3h hervorgeht, werden diese Signale über die in dem Block 314-2
enthaltene B-Operand-Miiltiplexer-Auswahlschaltung abgegeben.
Zu diesem Zeitpunkt veranlassen die Bits NO bis N2 des Operationscodefeldes zusammen mit den Bits
19 bis 22, dass ein Dekoder innedialb des Blockes 314-2
die in Frage kommenden Auswahlsignale an die B-Operand-MUX-Schaltung
314-22 abgibt.
5098 25/0978
Nach Ausführung dieser bezeichneten Verknüpfungsoperationen gibt die Haupt-AIU-Einheit 316-2 das Ergebnis an die Ergebnis-Busleitungsschaltung
316-10 und an die Schaltungen eines Ergebnis-Test- und Speicherblockes 316-30 ab. Wie aus Pig. 3i
ersichtlich ist, enthalten die Schaltungen 316-30 eine Vielzahl von Flipflops 316-300, 316-310 und 316-330, und zwar
zusammen mit Gatter- oder Verknüpfungsschaltungen 316-301 bis 316-304, Schaltungskreisen 316-311 bis 316-325 und Schaltungskreisen
316-331 bis 316-333, die in der dargestellten Weise angeschlossen sind. Das Gleichheits-Speicher-Flipflop
316-300 wird in seinen Binärzustand 1 gesetzt, wenn die ALU-Einheit das Gleichheitssignal CAEQA10 in ein Binärsignal
T überführt, und zwar zum selben Zeitpunkt, zu dem das Abtast
signal CASTR10 in ein Binärsignal 1 übergeht. Das Flipflop 316-300 wird in einen Binärzustand Null zurückgestellt,
wenn das Signal CAEQA10 in ein Binärsignal Null während eines Vergleichszeitintervalls überführt wird (das
heisst dann, wenn das Signal CACMT10 ein. Binärsignal 1 ist).
Das die Tatsache, dass A grosser ist als B, speichernde Flipflop 316-310 wird in seinen Binärzustand 1 umgeschaltet,
wenn das Gleichheits-Signal CAEQA10 ein Binärsignal Null
ist und wenn ein Ausführungssignal CAAC010 ein Binärsignal
1 ist. Das Plipflop 316-310 wird in den Binärzustand Null zurückgestellt, wenn das Abtastsignal CASTR10 in ein Binärsignal
1 überführt wird. Es sei darauf hingewiesen, dass die Ausgangssignale von den Flipflops 316-300 und 316-310
zu den Schaltungskreisen 316-305 bzw. 316-3H wieder zurückgeleitet
werden. Wenn ein Flipflop in den Binärzustand Null zurückgestellt wird, veranlasst es, dass das entsprechende
Signal der Signale CAAEB10 und CAAGB10 ebenfalls als Blnär-Signal
Null auftritt. Wie oben erwähnt, werden die Signale CAAEB10 und CAAGB10 den Verzweigungskreisen zugeführt.
Diese Signale zeigen an, ob der Vergleich während einer Suchoperation erfolgreich war. Das Ausführungs-Speicher-Flipflop
316-330 wird in seinen Binärzustand 1 gesetzt, wenn durch die Haupt-AIU-Einheit 316-2 ein Ausführungssignal
erzeugt wird.
509825/0978
Das in den Ergebnis-Busleitungs-Schaltungen 316-10 enthaltene
Ergebnis wJrd dem Festwertspeicher-Steuerbereich 304 und dem Mehrzweckregisterbereich. 314 zugeführt.
Wie erwähnt, verbleibt das Ergebnis entweder in den Ergebnis-Busleitungsschaltungen
für eine nachfolgende Verzweigungs-Überprüfung, oder aber das betreffende Ergebnis
wird an eines der 31. Register abgegeben, das durch die Bits N10 bis NH eines Verknüpfungs- oder Rechen-Mikrobefehls
bezeichnet ist (das ist das DOR-Mikrobefehlsfeld siehe
Fig. 4f und 4g). Die durch den Steuerblock 316-20 gebildeten, die Abtastung ermöglichenden Signale ermöglichen
die Zurückstellung der Ergebnis-Schaltungen 316-12 und der Pehierprüfschaltungen 316-8 durch ein Rückstellsignal
CARSTOO. Wie aus Fig. 3i ersichtlich ist, enthalten diese
Schaltungen eine Vielzahl von Gatter- bzw. Verknüpfungsschaltungen 316-21 bis 316-28, die in der dargestellten
Weise angeschlossen sind. Die UND-Gatter- und Inverterschaltung 316-21 arbeitet in der Weise, dass ein eine
Abtastung ermöglichendes Signal CASTA10 erzeugt wird, welches die Speicherung des ALU-Ergebnisses für sämtliche
Rechen-Mikrobefehle, Verknüpfungs-Mikrobefehle und normale bedingte Verzweigungs-Mikrobefehle ermöglicht; eine Ausnahme
hiervon bildet jedoch ein Verknüpfungs-Mikrobefehl,
dessen Bits 4 bis 7 alle tinären Einsen sind. Dies ermöglicht
die Abgabe des Ergebnisses eines vorhergehenden Mikrobefehls ohne die Zerstörung der gespeicherten Information. Im
Falle einer Verknüpfungsoperation ist das Signal CFL0G10
gleich, eine binäre 1, im Falle einer Rechenoperation ist
das Signal CFAR010 eine binäre 1,und im Falle einer normalen bedingten Verzweigungsoperation ist das Signal
CFNCBI0 eine binäre 1. Diese Signale veranlassen ihrerseits
die Verstärkerschaltung 316-25 und die Inverterschaltung 316-26, die in Frage kommenden Abtastsignale zu erzeugen.
Die UND-Gatter- und Verstärkerschaltung 316^28 ist in
der Weise betrieben, dass das Rückätellsignal CARPFOO
50 9 825/0978
in den richtigen Zustand auf das Ruckste11signal OAHESOO
und das Abtastsignal CASTROO gebracht wird, wie dies angedeutet ist. Entsprechend einer Verknüpfungsoperation
veranlassen die Bits CRN04 bis CRN07 zusammen mit den Abtastsignalen, dass der Dekoder 516-60 die in Präge
kommenden Betriebssteuer-Eingangssignale während einer Rechenoperation erzeugt. Darüber hinaus wird ein Eintrag-Signal
CACINOO aus den Eintrag-Bits CRN08 bis CRN09
des Mikrobefehlswortes erzeugt. Hierfür dienen nicht näher dargestellte Schaltungen. Die Ergebnisse werden dem Eintrag-Anschluss
(CIN) zugeführt. In Abhängigkeit von der Codierung der erwähnten Mikrobefehls-Wortbits geben die an
die Anschlüsse CIN und MO bis M3 abgegebenen Signale
die bestimmte auszuführende Rechenoperation an. Die A- und B-Operanden werden von den Quellen abgeleitet, die oben
in Verbindung mit der Beschreibung einer Verknüpfungsoperation
erwähnt worden sind. In entsprechender Weise kann das in die Ergebnis-Verriegelungsschaltungen 316-12 geladene
und an die Ergebnis-Busleitung abgegebene Ergebnis
abgeführt oder für die Überprüfung gespeichert werden, wie dies durch die Bits des DOR-Feldes des Mikrobefehlswortes angegeben ist.
Wie erwähnt, führt die AIU-Einheit während einer Suchoperation
sämtliche Rechenoperationen aus, die für die Verarbeitung der Zähl-, Kennzeichen- und Datenfeldteile einer
Aufzeichnung während der entsprechenden Zähl-, Kennzeichenoder Datenfeld-Suchoperationen erforderlich sind. Die AIU-Einheit
wird in den Stand versetzt, die gewünschte Verknüpfungsoperation (A-B-1) auszuführen, während der der
B-Operand,der von der B-Operand,
Mulitplexer-Auswahlschaltung 314-22, von dem C-Register
oder dem Lese/Schreib-Speicherbereich erhalten worden ist,
mit dem Α-Operand verglichen wird, der von der A-Operand-
5 0 9.8 2 5/0978
Multiplexer-Schaltung 314-22 über das D-Regieter erhalten
wird. Zu Anfang "bewirkt ein Verknüpfungs-Mikrobefehl, der
ao codiert ist, dass er eine Operation P = 1 angibt, (siehe Pig. 4f), dass die ALU-Einheit das Gleichheitssignal
CAEQA1O als Binärsignal 1 abgibt. Gleichzeitig wird das
Abtastsignal CASTR1O in ein Binärsignal 1 überführt,
wodurch das für den Gleichheits-Vergleich dienende Plipflop 316-300 in den Binärzustand 1 umgeschaltet wird. Während
der Suche werden keine weiteren Rechen- oder Verknüpfungs-Mikrobefehle ausgeführt. Deshalb bleibt das Abtaetsignal
CASTR10 ein Binärsignal Null. Am Ende der Suchoperation
wird ein PCB-Müscobefehl benutzt, um den Zustand der Signale
CAAEB10 und CAAGB10 zu überprüfen, um festzustellen, ob
ein erfolgreicher Vergleich vorgelegen hat. Der Mikrobefehl führt das Abtastsignal CASIR10 ausserdem in ein Binärsignal 1
über, welches die ALU-Schaltungen zurückstellt.
Betrachtet man nun das Allzweck-Register und die Multiplexer-Schaltungen
des Blockes 314, so zeigt sich aus Pig. 3i, dass die Allzweckregister in zwei Pestkörper-Speichern
314-3 und 314-4 enthalten sind. Diese Speicher, die von
herkömmlichem Aufbau sind, sind über ihre entsprechenden Adressregister 314-6 und 3H-8 adressierbar. Diese Register
nehmen Signale unmittelbar von dem örtlichen Pestwertspeicher-
-Register her auf (das sind CRN20 bis 0RN22 und CRN12
bis CRNI4). Diese Register liefern die Adresse für das
Allzweckregister. Die Inhalte des Adressregisters werden dann an ein Auswahlregister abgegeben, woraufhin die Abgabe
an die ALU-Einheit erfolgt.
Die Adressenauswahlschaltungen, die in dem Block 314-20
enthalten sind, decodieren die Bits N19 bis N22 und liefern
Ausgangs-Auswahlsignale BMO bis BM2 als Eingangssignale für die B-Operand-Multiplexerschaltungen 314-22. Die Multi-
50 9 8 25/0978
2459955
plexer-Ausgangssignale von dem ausgewählten Quellenregister
her werden dem Auswahlregister 3H-28 zugeführt, wenn die
Steuerschaltungen des Blockes 314-34 das Signal CABBAOO
in ein Binärsignal 1 überführen. Dies erfolgt auf die spezielle Codierung der Bits NO bis N3 und N19, die bestimmen,
ob die Information aus einem Allzweckregister oder einem der übrigen Register des Systems als C-Operand-Quelle
dient. Die in dem MUX-Adifessenspeicherblock 3H-21
enthaltenen Plipflops halten eine Anzeige der Bits N20 bis N22 fest, und zwar für eine kontinuierliche Auswahl
der betreffenden Quelle während einer Suchoperation. Im einzelnen wird das Bit 19 den Steuerschaltungen 3H-34 zugeführt,
die bestimmen, welche der Zulassungsfunktionen CABBA10 oder CABBAOO in eine binäre 1 überführt wird,
um entweder das adressierte Allzweckregister oder das Register auszuwählen, das mit den Multiplexerschaltungen
des Blockes 314-22 verbunden ist. In ähnlicher Weise geben die Multiplexer-Adressenauswahlschaltungen des
Blockes 314-26 die Steuersignale AMO bis AM2 an die A-Operand-Multiplexerschaltungen des Blockes 314-24 ab,
um eines der Register als Quelle des Α-Operand auszuwählen. Ausserdem halten die in dem MUX-Adressenspeicher
314-27 enthaltenen Flipflops eine Anzeige der Bits N24
bis N26 für eine weitere Bezugnahme während einer Suchoperation fest. Die in dem Block 314-32 enthaltenen
Steuerschaltungen sind auf die Bits NO bis N2 und N23 hin derart betrieben, dass Zulassungs-Signale CAABA10
und CAABAOO erzeugt werden, um das Ausgangssignal eines adressierten Allzweckregisters oder eines der Register
auszuwählen, die mit den Multiplexerschaltungen 314-24 verbunden sind. Wenn das Signal CAABA10 als Binärsignal
1 auftritt, wird der Inhalt eines Adressen-Allzweckregisters dem Wähler 314-30 zugeführt. Wenn demgegenüber
das Zulassungssignal CAABAOO als Binärsignal 1 auftritt,
509825/0978
wird der Inhalt eines bezeichneten Registers der Register ausgewählt und an den Wähler 314-30 abgegeben. Wenn eine
Information in ein Allzweckregister jedes der Speicher 514-2
und 314-4 eingeschrieben wird, werden, wie oben erwähnt,
die Adressen durch die Bits N12 bis N14 bezeichnet (das
heisst durch das DOR-PeId eines Verknüpfungs- oder Rechen-Mikrobefehls)
. Ein Einschreibyorgang erfolgt auf ein Impulssignal
CLK hin, das durch den Schreibgenerator 308-4 ; erzeugt wird.
Pig. 3j zeigt im einzelnen die Verknüpfungsschaltungen,
die den Bereich 318 bilden. Aus Pig. 3j geht dabei
hervor, dass die Verknüpfungsschaltungen für den Datenzähler (DAC) einen Hauptzähler 318-2 und einen Hilfszähler
318-4 zusammen mit deren die Zählerstellung verkleinernden Steuersehaltungen 318-6 und Pehierprüf-Verknüpfungs
schaltungen 318-8 enthalten. Zusätzlich enthält der Bereich ZählVerknüpfungsschaltungen, Ae so geschaltet
sind, dass ein Signal abgegeben wird,wenn die Zählerstellung des Datenzählers auf Null verringert worden ist. Wie dargestellt,
enthalten diese Schaltungen innerhalb des Blockes 318-10 einen Dekoder 318-100, der von herkömmlichem Aufbau ist und der so betrieben ist, dass die Signale CDDCZ1A
als Binärsignale 1 auftreten, wenn der betreffende Dekoder feststellt, dass die ZählersteTLung des Datenzählers sich
auf Null vermindert hat. Dies bewirkt seinerseits, dass ein UND-Glied 318-102 des Plipflops 318-104 in den Binärzustand
1 umschaltet, und zwar wenn eines der UND-Glieder 318-108 bzw. 318-110 eine Verstärkerschaltung 318-112
veranlasst, das Signal CGSCZ10 als Binärsignal 1 abzugeben.
Das Plipflop 318-104 wird über ein UND-Glied 318-106 in seinen Binärzustand Null zurückgestellt, wenn ein Haltesignal
CCCZH10 als Binärsignal Null auftritt. Wie zuvor
509825/0978
kurz beschrieben, werden die Zähler 318-2 und 318-4 auf ein Eingabe/Ausgabe-Mikrobefehlswort hin geladen.
Dabei wird insbesondere ein Acht-Bit-Zählfeld in diese Zähler von dem örtlichen Pestwertspeicher-Register her
(das sind die Bits CRN15 bis CRN22) oder von dem örtlichen
Lese/Schreib-Speicher-Register her geladen (das heisst
von den Stufen CWNR1 bis CWNR7). Ein Satz dieser Sätze von Signalen wird an eine Zähler-Busleitung abgegeben
und dann in die Zähler geladen, und zwar gleichzeitig mit der Absenkung des Impulssignals CLK und der Signale
CCDUIOO (DAC-obere ladung) sowie des Signals CCDLIOO
(DAC-untere Ladung)· Die Auswahl der genau festgelegten
Zählfelder wird durch das Setz-Zählfeld des Eingabe/Ausgabe-Mikrobefehlswortes
bewirkt. Dieses Zählfeld bewirkt die Erzeugung der Signale CPCi1RIO und CRCPM10.
Während des Betriebs werden die Zählerstellungen beider Zähler durch ein sogenanntes Dekrement-Signal CCDEC10
jeweils dann verringert, wenn ein Byte zu/von dem Einrichtungsadapter übertragen wird. Obwohl des Verringern
der Zählerstellung während einer Schreiboperation, einer Lese/Suchoperation oder einer Ladeoperation erfolgen kann,
ist lediglich die UND-Schaltung angegeben, die das Dekrement-Signal für eine Lese/Suchoperation erzeugt (das ist die
UND-Gatter- und Verstärkerschaltung 318-60). Die Pehlerprüf-Verknüpfungsschaltungen
318-8 enthalten einen herkömmlichen Vergleicher, der den Inhalt beider Zähler
vergleicht. Im Falle der Feststellung einer Nicht-Übereinstimmung geben diese Schaltungen ein Fehlersignal CCDCE10
als Binärsignal 1 ab·
Wie aus Pig. 3j hervorgeht, enthält dieser Bereich ferner
einen Hauptspalt-Zähler 318-12, einen Hilfsspalt-Zähler
318-H zusammen mit Dekrement-Steuerschaltungen 318-16
509825/0978
and Pehlerprüfs chaltungen 318-18. Ausserdem enthält der
Bereich 318, wie dargestellt, eine Spalt-Dekoderschaltung 318-20, die ein Ausgangssignal erzeugt, welches anzeigt,
dass die Zählerstellung des Hauptspaltzählers auf Null verringert worden ist. Die beiden Zähler 318-12 und 318-14
werden gleichzeitig mit einer Acht-Bit-Konstante von der ALU-Ergebnis-Busleitung
her geladen, und zwar auf das CLK-Impulssignal hin, wenn die Signale CCGLIOO (GAC-untere Ladung)
und CCGULOO (GAC-obere Ladung) als Binärsignale Null auftreten. Das Laden erfolgt auf die Dekodierung eines Rechen-Mikrobefehls
hin, der die Erzeugung des Signals CFGLL10 bewirkt. Dies geschieht auf einen Rechen-Mikrobefehl hin.
Während des Betriebs werden die Zählerstellungen beider Zähler durch das Signal CCGEC10 verringert, das durch ein
Flipflop 318-160 erzeugt wird. Dieses Flipflop wird über ein UND-Glied 318-162 auf das Signal CQCGP10 hin gesetzt,
das als Binärsignal 1 auftritt. Das Flipflop 318-60 wird
über ein.UND-Glied 318-164 am Ende einer Taktimpulszeit
(PDA) zurückgestellt. Die Inhalte beider Zähler werden mittels einer herkömmlichen Vergleicherschaltung verglichen,
die in dem Block 318-18 enthalten ist. Wird eine Nicht-Übereinstimmung festgestellt, so gibt die Vergleichersehaltung
ein Fehlersignal CCGCE10 als Binärsignal 1 ab.
Unter Bezugnahme auf Fig. 3k wird der Bereich 310 Im einzelnen
beschrieben; Wie oben erläutert, besteht dieser Bereich aus einem integrierten Steueradapter 310-2 und aus
Lese/Schreib-Multiplexer- und Pufferschaltungen, die in dem
Block 310-3 enthalten sind. Wie aus Fig. 3k hervorgeht, enthält der Adapter 310-2 eine Vielzahl von Registern,
die die Konditionierung des Adapters und einer ausgewählten
5 0 982 5 /0978
Einrichtung ermöglichen. Diese Register enthalten ein Einrichtungs-Anschlussregister 310-1, ein Einrichtungs-Befehlsregister
310-4 und ein Adapter-Befehlsregiater 310-6 sowie ein Parameter-Register 310-8. Jedes Register
wird in einer speziellen Ablaif folge zur Speicherung einer
Information freigegeben. Dabei werden insbesondere die verschiedenen Register für die Speicherung von Signalen
durch Steuersignale CFDPL10, CFDCLIO, CFACL10 und CFPRL10
freigegeben. Diese Signale werden aus der Decodierung eines speziellen Feldes eines Verknüpfungs-Mikrobefehls
durch die DOR-Dekoderschaltungen des. Bereichs 304
gewonnen. Wie dargestellt, werden die Register auf die Steuersignale hin von der ALU-Ergebnis-Busleitung des
Blockes 310-3 geladen. Die Schreib-Multiplexerschaltung dient als Tasteinrichtung für sämtliche Schreiboperationen;
sie erhält Eingangssignale von den verschiedenen Bereichen
des Prozessors (zum Beispiel von dem F-Register des Pufferbereiches
302-50).
Das Einrichtungs-Anschlussregister 310-1 ist normalerweise das erste Register, das in einer vorgegebenen Ablauffolge
geladen wird und das dazu benutzt wird, einer bestimmten Einrichtung eine Verknüpfungskanalnummer zuzuordnen,
Dies bedeutet, dass die von der ALU-Ergebnis-Busleitung her zugeführten vier Bits niedriger Wertigkeit in das Einrichtungs-Anschlussregister
geladen werden und dass ein Binrichtungs-Anschlussdekoder 310-10 diese Bits in eine
Anzahl von Auswahlsignalen decodiert, von denen lediglich
einige dargestellt sind. Diese Auswahlsignale werden zur Auswahl irgendeiner Speichereinrichtung von zwölf Massen-Speichereinrichtungen
verwendet. Das Parameter-Register 310-8 ist normalerweise das zweite Register, das geladen
wird. Es wird von dem Lese/Schreib-Speicherbereich her
509825/0978
mit der savor gespeicherten Einrichtungs-Parameter-Byte-Information
geladen, die für eine bestimmte Operation über die ALU-Einheit benötigt wird. Dieses Informations-Byte
wird durch die Adapter-Steuerschaltungen 310-12 decodiert und führt zur Erzeugung von Steuersignalen,
die den Adapter veranlassen, in einem vorgegebenen Betrieb zu arbeiten. Da Einzelheiten für die vorliegende
Erfindung nicht relevant sind, werden sie hier nicht gegeben .
Das Einrichtungs-Befehlsregister 310-4 erhält eine Information
von der ALU-Einheit und leitet die Information unmittelbar an eine bezeichnete Einrichtung der Einrichtungen
weiter, um den Befehl auszuführen (und zwar entsprechend der Auswahl durch den Einrichtungs-Anschluss-Dekoder
310-10). Das Adapter-Befehlsregister 310-6 ist normalerweise das letzte Register, das in der Ablauffolge
geladen'wird und das die Schaltungen innerhalb des Adapters 310-2 veranlasst, den angegebenen Einrichtungsbefehl
auszuführen. Die vier Bits A1AC4 bis A1AC7 niedriger Wertigkeit werden durch einen Adapter-Befehlsdekoder
310-14 decodiert, der Signale erzeugt, die zum Setzen verschiedener Markierungsleitungen der
Schnittstelle oder zur Bezeichnung bestimmter Operationsarten innerhalb des Adapters verwendet werden. Die Bits
Null bis 3 werden zur Steuerung von Gatterschaltungen abgegeben und zum Setzen verschiedener Steuer-Flipflops
herangezogen, die in einem Block 310-16 enthalten sind. Diese Flipflops liegen fest, ob der Adapter eine Lese-Operation
oder eine Schreiboperation auszuführen hat. Zusätzlich bestimmen die betreffenden Flipflops eine
weitere Information in Bezug auf den Operationstyp. Da eine Diskussion derartiger Schaltungen nichte mit der '
509825/0978
vorliegende Erfindung zu tun hat, ist sie hier auch nicht enthalten.
Wie aus Pig. 3k ferner hervorgeht, enthält der Adapter
ein Schieberegister 310-18 sowie
zugehörige Lese/Schreib-Takt- und Zählerschaltungen 310-20.
Wenn in einem Serienbetrieb gearbeitet wird, wird die über eine Schnittstellenleitung SRI von der Einrichtung
her zugeführte Information in das Schieberegister 310-18 unter der Steuerung einer lesetaktschaltung eingeschoben,
die VDn herkömmlichem Aufbau ist. Wenn das Einschieben erfolgt, wird die Zähletsteilung eines in dem Block 310-20
enthaltenen Bit-Zählers in jedem zweiten Bitintervall um 1 erhöht, da normalerweise ein Synchronisationsbit
jedes Datenbit trägt. Wenn die Zählerstellung des Zählers auf einen vorbestimmten Wert erhöht worden ist, wie auf
eine Zählerstellung 6 bei einem 6-Bit-Betrieb oder auf eine Zählerstellung 8 bei einem 8-Bit-Betrieb, bewirkt
dies, dass das zusammengesetzte Zeichen parallel in einen Lese-Puffer 310-32 übertragen wird. Darüber hinaus veranlasst
diese Übertragung den Adapter 310-2, ein Daten-Verfügbarkeitssignal (A1DAV10 tritt als Binärsignal 1
auf) zu erzeugen, was dem Prozessor-Folgesteuerungs-Verknüpfungsschaltungen
des Bereiches 304 anzeigt, dass ein Datenbyte in dem lesepuffer 310-32 gespeichert worden
ist und für die Übertragung in das F-Register des Bereiches
302 bereitsteht. Auf die Feststellung des Daten-Verfügbarkeitssignals hin quittieren die Polgesteuerungs-Schaltungen
des Bereiches 304 das Signal durch Abgabe eines Datenquittungssignals A1DAK10 als Binärsignal 1. Damit
dürfte ersichtlich sein, dass die Erzeugung der Signale A1DAV10 und A1DAK10 die Adapter- und Prozessor-Operationen
miteinander zu synchronisieren gestattet.
509825/0978
Im Falle einer Schreiboperation bewirkt der Adapter 310-2
auf die Feststellung hin, daß Daten in dem F-Register gespeichert worden sind, daß das Einrichtungsabtastsignal
DXDCS10 als Binärsignal 1 auftritt. Der in das Einrichtungs-Befehlsregister
310-4 geladene Befehl wird decodiert und ausgeführt» In ähnlicher Weise benutzt der Adapter die
Signale A1DAK10 und A1DAV10 für die Abtastung, wenn ein
Byte in dem F-Register gespeichert worden ist und für die Übertragung in einen Schreibpuffer 310-34 und sodann
in das Schieberegister 310-18 bereitsteht, -um jeweils ein Bit auf die Schnittstellenleitung SWO hinauszuschieben. Das
Schieberegister 310-18 enthält, obwohl hierüber nichts gezeigt ist, Gatterschaltungen, die so angeschlossen sind,
daß sie durch die Taktschaltungen 310-20 veranlaßt werden,
die Bitübertragungen mit Synchronisationsbits abzuwechseln. Wenn der Adapter im Unterhied hierzu in einem Parallelbetrieb
arbeitet, überträgt und empfängt er Informationsbytes von dem Schreibpuffer 310-34 bzw. dem Lesepuffer
310-32 über die Busleitungen D10-D17. In dieser Betriebsart übertragen die Leitungen SWO und SRI
Abtastsignale.
509825/0978
Bevor die Arbeitsweise der vorliegenden Erfindung beschrieben wird, sei zunächst auf Fig. 7 Bezug genommen, in der die Bedeutung
der verschiedenen Bits der verschiedenen Steuerbytes angegeben ist, die von dem Prozessor 300 verwendet werden.
Die Operation des Prozessors 300 wird in Übereinstimmung mit der Information gesteuert, die in drei Bytes gespeichert ist,
welche dem Arbeitsbyte 1, dem Arbeitsbyte 2 und dem Lese/Schreib-Leitungs-Byte
entsprechen, wie dies in Fig. 7 dargestellt ist. Die Bits des Jeweiligen Bytes können lediglich durch den
Prozessor"modifiziert und/oder getestet werden, wenn der
betreffende Prozessor unter mikroprogrammierter Steuerung arbeitet. Eine derartige Überprüfung erfolgt in der Rechen-
und Verknüpfungseinheit des Prozessors.
Betrachtet man die Bytes gemäß Fig. 7 näher, so zeigt sich, daß das in dem Allzweckregister 6 gespeicherte Arbeitsbyte 1
acht Bits enthält, das so codiert ist, daß sie die in Fig. 7
angegebenen Zustände anzeigt. Dieses Byte wird durch Such-, Lese- und Schreib-Mikroprogrammroutinen benutzt und aktualisiert;
es wird für Orientierungs-Zwecke benutzt. Die Bedeutung des jeweiligen Bits ist folgende. Das Bit 0 wird auf eine
binäre 1 gesetzt um anzuzeigen, daß die Operation des
509825/0978
Massenspeicher-Prozessors in bezug auf die Information, die
von- der Platte weggelesen wird» "ausgerichtet" bzw. orientiert
ist. Im allgemeinen wird dieses Bit durch Kopf-Verarbeitungs-Mikroprogramm-Routinen
auf eine binäre 1 gesetzt und durch Steuerbefehle auf eine binäre 0 zurückgestellt. Diese Steuerbefehle
bewirken einen. Verlust in der Ausrichtung bzw. Orientierung. Wenn das Bit 0 auf eine binäre 1 gesetzt ist,
wodurch die Ausrichtung signalisiert ist, kennzeichnet das Bit 1 den Zustand des geradzahligen/ungeradzahligen Bits
eines vorhergehenden Kopf-Kennzeichenbytes. Im allgemeinen vergleicht der Vergleicher in dem Fall, daß ein Kopf-Feld
einer Aufzeichnung gelesen wird, das ungeradzahlige/geradzahlige
Bit dieses Bytes. Demgemäß wird das Bit 1 nach jeder Kopf-Verarbeitungsoperation gesetzt oder zurückgesetzt.
Das Bit 2 signalisiert dem Prozessor, wenn es auf eine binäre gesetzt ist, daß der Lese/Schreibkopf der Platte durch die
Hausadresse zum Aufzeichnungs-Null-Spalt während der Zeitspanne
läuft, während der der Spalt-Zähler sich nicht in einer Zählerstellung befindet, die gleich 0 ist. Der Prozessor
setzt dieses Bit auf eine binäre 1, und zwar entweder
auf einen Lesebefehl, einen Schreibbefehl oder einen Such-Hausadressenbefehl
hin. Das Bit 3 signalisiert dem Prozessor in dem Fall, daß es auf eine binäre 1 gesetzt ist, daß der
Platten-Lese/Schreibkopf durch den Kopf zu dem Kennzeichenspalt während der Zeitspanne läuft, während der der Spalt-Zähler
sieh nicht in einer Zählerstellung befindet, die gleich Ö ist. Dieses Bit wird durch den Prozessor auf eine
binäre 1 gesetzt, und zwar auf den Abschluß von Kopf-Routinen, wenn kein Fehler ermittelt worden ist.
509825/0978
Das Bit 4 signalisiert dem Prozessor, wenn es auf eine binäre gesetzt ist, daß der Platten-Kopf durch ein Kennzeichen zu dem
Daten-Spalt hin während der Zeitspanne bewegt wird, während der der Spalt-Zähler nicht eine Zählerstellung von 0 speichert.
Dieses Bit wird durch Kennzeichen-Verarbeitungs-Mikroprogrammroutinen
und durch Kopf-Routinen gesetzt, wenn die Kennzeichenlänge einer Aufzeichnung 0 ist. Das Bit 5 signalisiert dem
Prozessor 300, wenn es auf· eine binäre 1 gesetzt ist, daß der Platten-Lese/Schreibkopf über die Daten zu dem Kopf-Spalt hin
bewegt wird, und zwar während der Zeitspanne, während der der Spalt-Zähler nicht eine Zählerstellung von 0 speichert. Dieses
Bit wird auf eine binäre 1 durch Datenverarbeitungs-Mikroprogrammroutinen
gesetzt. Das Bit 6 signalisiert dem Prozessor 300, wenn es auf eine binäre 1 gesetzt ist, daß die
laufende Aufzeichnung, die gelesen wird, eine Kennzeichenlänge von 0 besitzt. Schließlich wird das Bit 7 durch Such-Mikroprogrammroutinen
benutzt, die hier nicht beschrieben werden.
Wie aus Fig. 7 hervorgeht, enthält das in dem Allzweckregister-Speicherplatz
7 gespeicherte Arbeitsbyte 2 ebenfalls acht Bits, die so codiert sind, daß sie die bezeichneten Zustände
darstellen. Dieses Byte wird von Such-, Lese- und Schreib-Routinen benutzt und aktualisiert. Es speichert
hauptsächlich eine Befehlsketteninformation für die Verwendung durch Schreib-Mikroprogrammroutinen. Der Prozessor
setzt dieses Byte auf binäre Nullen bei der Auslösung eines Kanalprogramms zurück sowie nach beendeter Ausführung von
Steuerbefehlen. Im einzelnen ist die Bedeutung des jeweiligen Bits dieses Bytes folgende. Das Bit 0 signalisiert dem Prozessor
300, wenn es auf eine binäre 1 gesetzt ist, daß ein Schreib-Aufzeichnungs-Null-Befehl zugelassen ist. Dieses Bit
wird normalerweise auf eine binäre 1 durch einen Such- oder Schreib-Hausadressenbefehl gesetzt. Wird das Bit 1 auf eine
509825/0978
binäre 1 gesetzt, so signalisiert dies dem Prozessor 300,
daß Schreib-Zähl-, Kennzeichen- und Datenbefehle zugelassen sind. Wenn das Bit 2 auf eine binäre 1 gesetzt ist, signalisiert
dies dem Prozessor 300, daß Schreib-Kennzeichen- und/oder Datenbefehle zugelassen sind. Damit dürfte ersichtlich sein,
daß die ersten drei Bits für die Überprüfung der Befehls-Ablauffolge
oder -kette verwendet werden.
Das Bit 3 ist ein Ersatzbit, während das Bit 4 in dem Fall, daß es auf eine binäre 1 gesetzt ist, dem Prozessor 300
signalisiert, daß eine Indexmarkierung in bzw. auf der Spur, die gelesen wird, festgestellt worden ist. Im allgemeinen wird
dieses Bit auf eine binäre 1 gesetzt und von Mehrspur-Mikroprogrammroutinen
herangezogen um zu bestimmen, auf welche Indexmarkierung hin eine■Spurumschaltung erfolgen sollte. Das
Bit 5 signalisiert dem Prozessor 300, wenn es auf eine binäre gesetzt ist, daß die Einrichtung sich in einem einen Schreibvorgang
zulassenden Betrieb befindet, der gestattet, daß auf die Platte· geschrieben wird. Die Bits 6 bzw. 7 werden dazu
herangezogen, dem Prozessor zu signalisieren, daß Daten in einer anderen Spur untergebracht worden sind und daß eine
Überlauf-Aufzeichnung ermittelt worden ist.
Wie aus Fig. 7 hervorgeht, enthält das normalerweise in dem Mehrzweckregister 3 gespeicherte Lese/Schreib-Leitungsbyte
ebenfalls acht Bits, die die angegebene Bedeutung besitzen. Dieses Byte wird von den üblichen Lese-Äusführungs- und Schreib-Ausführungs-Routinen
dazu herangezogen, die Leitung im Hinblick darauf zu bewirken, welche bestimmten Operationen von diesen
Routinen für die bestimmten Befehle auszuführen sind, die von
dem Prozessor 300 ausgeführt werden. Im Falle beider Lese- und Schreiboperationen werden die Bits des Leitungs-Bytes von der
besonderen Leitungs-Routine festgelegt und danach von den
50 9 8 25/0978
Ausführungs-Routinen überwacht, die in Übereinstimmung mit der Codierung des Leitungs-Bytes fortfahren.
Die Bedeutung des jeweiligen Bits ist, wie im einzelnen gezeigt wird, folgende. Wenn das Bit 0 in den Binärzustand 1 gesetzt
ist, signalisiert dies dem Prozessor 300, daß der PSI-Bereich für eine Übertragung von Bytes zu/von der Eingabe/Ausgabe-Steuereinrichtung
hin zu konditionieren ist. Wenn das Bit 1 in den Binärzustand 1 gesetzt ist, signalisiert dies dem
Prozessor 300, daß die Ausführungsroutine Fehler unberücksichtigt zu lassen hat, die in den Kennzeichen- und Datenfeldern
ermittelt worden sind. Das Bit 2 ist ein die Rückkehr nach einem Zählfeld betreffendes Rückkehr-Bit, das im Binärzustand
1 dem Prozessor 300 signalisiert, daß auf eine rufende Leitungs-Routine zurückzukehren ist, nachdem der Lese/Schreib-Plattenkopf
das Zählfeld einer Aufzeichnung durchlaufen oder dieses übersprungen hat. Das Bit 3 ist ein eine Rückkehr zur
Datenausrichtung betreffendes Rückkehr-Bit, das im Binärzustand dem Prozessor signalisiert, daß auf die rufende Leitungs-Routine
zurückzukehren ist, wenn der Lese/Schreib-Plattenkopf sich in dem Kennzeichen- bis Daten-Spalt oder in dem.Kopfbis
Daten-Spalt befindet (d.h., daß dann die Kennzeichenlänge ist). Es sei darauf hingewiesen, daß die Bits 2 und 3 sich
gegenseitig ausschließen; wenn kein Bit in den Binärzustand gesetzt ist, kehrt die Lese-Ausführungsroutine auf die rufende
Leitungs-Routine erst zurück, nachdem das Datenfeld einer Aufzeichnung gelesen ist.
Das Bit 4 ist ein die Ermittelung eines Indeximpulses anzeigendes Bit, das im Binärzustand 1 signalisiert, daß die
Leseausführungsroutine des Prozessors einen Indeximpuls während der Suche nach einem Kopffeld einer Aufzeichnung gefunden hat.
5 0 9825/0978
Das Bit 5 ist ein die Beendigung bei der peripheren Untersystem-Schnittstelle
PSI festsetzendes Bit, das im Binärzustand 1 anzeigt, daß das End-Flipflop der peripheren Untersystem-Schnittstelle
PSI in den Binärzustand 1 zu setzen ist. Es sei bemerkt, daß dieses Bit lediglich dann in den Binärzustand
1 gesetzt ist, wenn das Bit 0 auf eine binäre 1 gesetzt
ist.
Die Bits 6 und 7 werden in Verbindung mit Suchoperationen benutzt.
Sie liefern eine Anzeige, wenn eine Aufzeichnung festgelegt wurde, die ein Sucharguinent enthält, welches gleich dem
Suchargument ist, das von der Eingabe/Ausgabe-Steuereinrichtung ausgesendet worden ist, und wenn eine Suchoperation erfolgreich
gewesen ist.
In Fig. 8 sind die verschiedenen Mikroprogramm-Routinen und
die Befehlscodes dargestellt, die zum Anrufen dieser Routinen benutzt werden. Dies bedeutet, daß in Fig. 8 die generelle
Beziehung bestimmter Routinen sowie typischer Verzweigungs-Ablauffolgen gezeigt ist. Es sei bemerkt, daß die Hauptfunktion
dieser Routinen darin besteht, das Auftreten bestimmter externer Ereignisse zu interpretieren und auf diese Ereignisse in einer
Verknüpfungsweise zu reagieren. Die generelle Quelle dieser
externen Ereignisse ent^richt den PSI-und DLI-Schnittstellen.
Wenn Kanalprogrammbefehle von dem Prozessor 300 empfangen werden, werden sie decodiert und dazu herangezogen, eine
in dem Festwertspeicherbereich gespeicherte geeignete Mikroprogramm-Routine
auszuwählen, die ihrerseits von dem Prozessor ausgeführt wird. Am Ende der Ausführung der Routine beendet
der Prozessor 300 entweder das Kanalprogramm und kehrt dann auf eine Abrufroutine zurück, oder aber er bewirkt eine Ver-
50982 5/0978
zweigung zu einer weiteren Routine, um die Verarbeitung desselben
Kanalprogramms fortzusetzen.
Wie zuvor erwähnt, enthält der Festwertspeicherbereich zwei Rückführ-Adressregister. Während einer Verzweigungsoperation
kann die um eins erhöhte Adresse einer laufenden Routine in dem Rückführ-Adressregister 1 (RAR1) gespeichert werden. Dies
ermöglicht dem Prozessor, in die richtige rufende Routine zum richtigen Zeitpunkt oder an der richtigen Stelle wieder einzutreten.
Wenn der Prozessor 300 eine zusätzliche Verzweigung ausführt, kann die Adresse +1 der laufenden Routine in dem
Rückführ-Adressregister 2 (RAR2) gespeichert werden. Auf diese Weise vermag der Prozessor eine zweite Ebene der Verzweigung
im Bedarfsfalle zu unterstützen. In Fig. 8 ist das Rückführregister
bezeichnet, das von einer bestimmten Routine und die Routinen benutzt wird, die durch verschiedene Leitungs-Routinen
aufgerufen werden.
Da einige Routinen gemäß Fig. 8 sich nicht in besonderer Weise
auf die Erfindung beziehen, werden sie hier nur kurz erläutert werden. Im allgemeinen arbeitet die Ausführungs-Routine (XIRCT)
in der Weise, daß angeschlossene Massenspeichereinrichtungen
abgefragt werden und daß auf Einrichtungsanforderungen von der Eingabe/Ausgabe-Steuereinrichtung gewartet wird. Wenn ein
Kanalprogramm wartet (CPW), geht die Ausführungs-Routine auf eine Kanalprogramm-Auslösungsroutine (CPINT), Fig. 6a,über,
die die Verarbeitung eines Kanalprogramms auslöst, wie dies hier im einzelnen beschrieben wird. Nachdem die in Fig. 8
angegebene Operationen abgeschlossen sind, geht die Kanal-Auslösungsroutine auf eine Befehlsdecodierroutine über (siehe
Fig. 6b), die den von der Eingabe/Ausgabe-Steuereinrichtung empfangenen Befehlscode decodiert, wie dies hier im einzelnen
509825/0978
erläutert wird. Die Befehlscodebits werden decodiert, und
der Prozessor ruft die in Frage kommenden Leitungs-Routinen für die Ausführung des angegebenen Befehls auf.
Wie aus Fig. 8 hervorgeht, sind die Lese-Mikroprogrammroutinen in Ausführungs- und Leitungs-Routinen wie folgt unterteilt:
a) Ausführungsroutinen = Lese-Ausführung (Serie) und Lese-Ausführung
(parallel) und
b) Leitungs-Routinen = Lese-Zählung (RDCNT), Lese-Kennzeichen und Daten (RD:KD), Lese-Daten (RDDAT), Lese-Aufzeichnung
(RDROM) und Lese-Zählung, Kennzeichen und Daten (RDCKD).
Wie noch im einzelnen erläutert wird, führen die Lese-Ausführungsroutinen
die Hardware-Einstellung und die Ausführung
der bestimmten Leseoperation aus. Die Routinen können durch irgendeine der Lese-Leitungsroutinen aufgerufen werden; sie
sind mit geeigneten Eintrittspunkten versehen. Nach dem Abschluß wird die Steuerung auf die rufende. Routine zurückgeführt,
und zwar über das Rückführregister 1.
Im allgemeinen führen die Leitungs-Routinen folgende Funktionen aus. Die Lese-Zähl-(RDCNT)-Leitungs-Routine liest die Bytes des
Zählfeldes einerAufzeichnung und überträgt sie zu der Eingabe/Ausgabe-Steuereinrichtung.
Die Lese-Kennzeichen- und Daten-(RD;KD)-Leitungs-Routine liest die Bytes der Kennzeichen-
und Datenfelder einer Aufzeichnung für die Übertragung
zu der Eingabe/Ausgabe-Steuereinrichtung. Die Lese-Daten-(DDAT)-Routine
liest die Bytes des Datenfeldes einer Aufzeichnung für
die Übertragung zu der Eingabe/Ausgabe-Steuereinrichtung. Die Lese-Aufzeichnung-0-(RDROM)-Leitungs-Routine liest die Bytes
der Zähl-Kennzeichen- und Datenfelder einer Aufzeichnung R0
und überträgt sie zu der Eingabe/Ausgabe-Steuereinrichtung.
50 9 8 25/0978
Die Lese-Zähl-Kennzeichen- und Daten-(RDCKD)-Leitungs-Routine
liest die Bytes der Zähl-, Kennzeichen- und Datenfelder einer Aufzeichnung für die Übertragung zu der Eingabe/Ausgabe-Steuereinrichtung'
(das bedeutet, daß eine vollständige Aufzeichnung gelesen wird).
In ähnlicher Weise sind die Schreib-Routinen in Ausführungsund Leitungs-Routinen unterteilt, wie dies in Fig. 8 veranschaulicht
ist (d.h., daß Schreib-Ausführungs- und Schreib-Kennzeichen- und Daten-, Schreib-Zähl-Kennzeichen- und Daten-Leitungs-Routinen
vorliegen).
Die Zwischenraum-Zähl-(SPCI0)-Leitungs-Routine wird dazu herangezogen, eine Verteilung eines mangelhaften bzw. unbrauchbaren
Zählfeldes zu bewirken und die Bytes der Kennzeichen- und Datenfelder einer Aufzeichnung wieder aufzufinden.
Die den Raum für die Aufzeichnung 1 (SPACE) betreffende Leitungs-Routine wird dazu benutzt, die Hausadresse
(HA) und die Aufzeichnung 0 (Ro) einer Spur zu verteilen. Die den Raum für das Ende eines Feldes (SPEOF) betreffende Leitungs-Routine
wird dazu herangezogen, über die unbrauchbaren Kennzeichen- und Datenfelder oder über den Zwischenaufzeichnungsspalt
einer Aufzeichnung hinwegzugehen.
In Fig. 8 ist ferner eine Anzahl der Arbeits- oder Ausführungsroutinen und deren Funktionen aufgeführt. Diese Arbeitsroutinen enthalten eine Dateiende-Verarbeitungsroutine (PREOF ),
eine Mehrspur-(MLTTK)-Routine, eine variable Spalt-(VARGAP)-Routine und eine Kopf-Kennzeichen-HFLAG)-Routine. Die Dateiende-Verarbeitungsroutine
wird lediglich von den Lese- oder Schreibroutinen aufgerufen, wenn der Platten-Lese/Schreibkopf
in dem Kennzeichen- bis Datenspalt ausgerichtet ist. Dabei
50982 5/0978
sind zwei Einträge in die Routine vorgesehen, ein normaler
Eintrag und ein Format-Schreibeintrag. Wenn die Datenlänge einer Aufzeichnung 0 ist und der normale Eintrag benutzt
wird, wird das Kanalprogramm beendet, nachdem die Zustandsinformation
modifiziert ist. Wenn die Datenlänge 0 ist und der Format-Schreibeintrag benutzt wird, wird der Datenzähler
mit einer Zählerstellung von 1 geladen, woraufhin eine Verzweigung
zu der rufenden Routine folgt. Wenn die Datenlänge nicht 0 ist, wird eine Verzweigung zu der rufenden Routine
über das Rückführ-Adreßregister 2 (RAR2) ausgeführt. In allen
Fällen wird, wie dies durch Fig. 8 angegeben ist, das Kennzeichen-Daten-Spalt-Bit
des Arbeitsbytes 1 auf eine binäre festgesetzt.
Die Mehrspur-(MLTTK)-Routine wird dazu benutzt, die Lese/ Schreibköpfe auf eine folgende Spur auf einen Zylinder umzuschalten.
Die Routine bestimmt, ob eine Mehrspuroperation zugelassen ist; sie ermöglicht dem Prozessor 300, eine Verzweigung
zu dem gemeinsamen Verarbeitungsteil einer Routine hin vorzunehmen, um die Lese/Schreib-PIattenkopfumschaltung
vorzunehmen. Wenn der Befehl eine Nicht-Mehrspuroperation angibt, überprüft die Routine das Indeximpuls-Zählbit des
Arbeitsbytes 2. Wenn ein Indeximpuls nicht ermittelt worden ist, modifiziert die Routine die detaillierte Zustandsinformation
und führt eine Verzweigung zu der Leseausführungs-Routine
für die Zustandsspeicherung aus und beendet den Befehl. In anderen Fällen wird das Indeximpuls-Bit des Arbeitsbytes 2
auf eine binäre 1 gesetzt, woraufhin eine unbedingte .Verzweigung zu der rufenden Routine hin erfolgt.
Die den variablen Längen-Spalt betreffende Routine berechnet eine variable Spaltlänge dadurch, daß sie einen Anteil der
509825/097 8
Summe der Größen der Kennzeichenlänge und der Datenlänge einer Aufzeichnung aufnimmt und dann das Ergebnis in zwei
Mehrzweckregistern speichert. Am Ende der Berechnung des variablen Spalts kehrt die Routine auf die rufende Routine
zurück, und zwar über das Rückführ-Adreßregister 2. Die Le seausführungs-Routine
und die Schreib-Ausführungsroutine führen die Hardware-Einstellung und die Ausführung von Lese/Schreiboperationen
aus.
Unter Bezugnahme auf die Fig. 1, 2, 3a bis3k, 4a bis 4g,
5a und 5b, 7 und 8 und unter Bezugnahme auf die Flußdiagramme
gemäß Fig. 6a, 6b, 9a bis 9c, 10, 11a bis 11e sowie 12a und 12b wird nunmehr die Arbeitsweise der vorliegenden Erfindung
im Hinblick auf den mikroprogrammierten peripheren Prozessor der vorliegenden Erfindung erläutert. In Fig. 10 sowie 12a
und 12b sind die Unterschiede in den Leitungs- und Ausführungsroutinen veranschaulicht. In Fig. 10 ist dabei der Ablauf der
Lese/Zähl-Leitungs-Routine gezeigt, während in Fig. 12 und 12b
der Ablauf der Lese-Ausführungsroutine für die Verarbeitung von Daten in einem Parallelbetrieb veranschaulicht ist. Da
beide Arten von Routinen in ähnlicher Weise arbeiten wie die Lese-Zähl-Kennzeichen- und Daten-Leitungs-Routine gemäß
Fig. 9a bis 9c und die Lese-Ausführungs-Routine gemäß Fig. 11
bis 11e, werden diese Routinen hier nicht gesondert beschrieben werden.
Es sei beispielsweise angenommen, daß die Eingabe/Ausgabe-Steuereinrichtung
106-6 einen Eingabe/Ausgabe-Befehl erhält, der angibt, daß der Prozessor 300 eine Lese-Zähl-, Kennzeichen-
und Datenoperation auszuführen hat, bei der er die Zähl-
S0982B/0978
Kennzeichen- und Datenfelder einer Aufzeichnung liest. Die Eingabe/Ausgabe-Steuereinrichtung wird in der ¥eise betrieben,
daß der Befehl decodiert wird und daß dann die Anzahl der Eingabe/Ausgabe-Befehlsbytes zu dem Massenspeicher-Prozessor
300 hin übertragen wird. Die Bytes enthalten ein Verknüpfungs-Kanalnummer-(LCN)-Byte oder entsprechende Bytes
von einem oder mehreren Kanalbefehlsworten. Das LCN-Byte gibt den Kanal an, der in die Ausführung des Eingabe/Ausgabe-Befehls
einbezogen ist. Die Befehlsworte enthalten ein Befehlscodebyte, welches den Operationstyp angibt, Zahl-Bytes, die
die Anzahl der Bytes angeben, welche zwischen dem Hauptspeicher
und dem Prozessor 300 zu übertragen sind, und Adressenbytes, die eine Hauptspeicher-Startadresse für die
Übertragung angeben.
Nachdem die Bingabe/Ausgabe-Steuereinrichtung Signale von
dem Massenspeicher-Prozessor 300 her aufgenommen hat, welche Signale anzeigen, daß der betreffende Prozessor bereit ist,
die Befehlsbytes aufzunehmen, beginnt die Eingabe/Ausgabe-Steuereinrichtung mit der Übertragung der Bytes, und zwar
beginnend mit dem LCN-Byte. In Fig. 6a ist in vereinfachter Form ein Teil der Kanalprogrammroutine für die Verarbeitung
eines nächsten Befehls veranschaulicht. In Fig. 6a und ebenso in den übrigen Flußdiagrammen sind die verschiedenen Mikrobefehle
durch "relative" Adressen oder Verknüpfungsadressen bezeichnet, die den Namen der Routine und eine Buchstaben-Zahl-Angabe
enthalten (z.B. A0700). Die Mikrobefehle der jeweiligen Routine sind aufeinanderfolgenden physikalischen
Adressen in dem Festwertspeicher zugeteilt, und zwar in Übereinstimmung mit der alphanumerischen Reihenfolge ihrer
relativen Adressen.
50 9 8 25/0978
Die ausgeführten vorläufigen Operationen entsprechen den beiden Blöcken gemäß Fig. 6a. Der Prozessor 300 bereitet
sich auf die Aufnahme des Befehls durch Ausführung eines Eingabe/Ausgabe-Mikrobefehls vor, der linterbefehlssignale
erzeugt. Diese Signale bewirken das Setzen der TRM- und RQD-Flipflops und die Ladung des PSI-Zählers mit der bestimmten
Zählerstellung 3 (siehe Fig. 3a). Das LCN-Byte wird in den PSI-Schreibpuffer 302-12 geladen, nachdem das Signal
PA0DV10 durch die Prozessor-PSI-Schaltungen in ein Binärsignal
1 überführt worden ist. Der Schreibpuffer-Inhalt wird
in das Α-Register geladen, wenn das Signal CDPTA10 durch die Steuerschaltungen 302-70 auf ein hohes Potential gebracht
wird. Danach führen die Steuerschaltungen 302-70 nacheinander die Signale CDATB10 und CDBC10 in Binärsignale 1 über.
Während des Übertragungsintervalls überprüft, wie dies aus Fig. 6a hervorgeht, der Festwertspeicher den Inhalt des
C-Registers hinsichtlich des Eintreffens des LCN-Bytes, und zwar durch fortwährende Ausführung eines schnellen Verzweigungs-Mikrobefehls.
Wenn das C-Register mit einem Byte geladen ist, hält der Speicher die Überprüfung an und geht
auf den nächsten Mikrobefehl A0600 über. Dieser Mikrobefehl bewirkt auf seine Ausführung hin, daß der Prozessor 300 das
LCN-Byte in einem der Allzweckregister (das ist GPR Nr. 0)
speichert. Danach führt der Prozessor 300 einen Rechen-Mikrobefehl A0850 aus, der eine Darstellung des in dem Mehrzweckregister
Nr. 0 gespeicherten LCN-Bytes über die ALU-Einheit zu dem Einrichtungs-Adapter-Anschlußregister hin überträgt.
Gleichzeitig wird das LCN-Byte über die ALU-Einheit übertragen und in dem RWS-Einrichtungs-Anschlußregister gespeichert.
509825/0978
Es sei angenommen, daß das LCN-Byte zu einem Befehl für ein Kanalprogramm gehört, das zuvor aktiviert worden ist. Deshalb
sei ferner angenommen·, daß die dem Kanalprogramm zugehörige
Massenspeichereinrichtung "belegt" worden ist und 'daß der Bit-Zustand davon erhalten wird. Demgemäß sind aus dem Flußdiagramm
gemäß Fig. 6a derartige Einzelheiten weggelassen. Die Prozessor-Hardware 300 verringert die Zählerstellung des
PSI-Zählers durch das Signal STI jeweils dann um 1, wenn sie
ein Byte empfängt. Durch Ausführen einer ähnlichen Folge von Operationen speichert der Prozessor 300 das Befehlscodebyte
in einem anderen der Allzweckregister (das ist GPR JMr. 9).
Wie aus Fig. 6a hervorgeht, beendet der Prozessor die Routine auf die Aufnahme eines dritten Bytes hin, welches ein Kennzeichenbyte
bzw. Spurkennungszustandsbyte ist. Dieses Byte wird in ein weiteres Mehrzweck.register (d.h. in GPR Nr. 10)
geladen.
Auf diese Weise wird die Kanalprogramm-Auslösungsroutine beendet, und der Prozessor 300 tritt dann in die Befehls-Decodierroutine
ein, wie sie in Fig. 6b im einzelnen angegeben ist. Aus Fig. 6b geht dabei hervor, daß die Befehls-Decodierroutine
zunächst den Mikrobefehl A0100 ausführt, der den Zustand des
das Format/den ersten Durchlauf betreffenden Flipflops überprüft. Da der Prozessor zuvor nicht einen Schreibbefehl ausgeführt
hat, wird das Format/Flipflop in den Binärzustand 0 gesetzt. Der Prozessor führt dann den Mikrobefehl A0700 aus,
der den Befehlscode aus dem Allzweckregister Nr. 9 zu dem Mehrzweckregister Nr. 3 hin verschiebt, woraufhin dieser
Befehlscode in der Rechen- und Verknüpfungseinheit ALU über- ~ prüft wird«, Der Prozessor führt dann eine Reihe von Verzweigungs-
und Verknüpfungs-Mikrobefehlen aus, die die Bits
eines Befehlscodes überprüfen, wobei jeweils ein Bit oder eine
509825/0978
Anzahl von Bits überprüft wird. Die Bits werden dabei sequentiell überprüft, um das Vorhandensein von Bits zu
erleichtern, die "unberücksichtigt zu lassen sind" (das sind jene Bits, die nicht bei der Auswahl einer Routine verwendet
werden). Wie aus Fig. 6b hervorgeht, bewirkt der Prozessor eine Verzweigung auf die Ergebnisse einer Überprüfung hin
zum Anfang einer geeigneten Mikroprogramm-Routine zwecks Ausführung des Befehls. Dabei zeigt sich insbesondere, daß
der Prozessor Mikrobefehle ausführt, die zunächst eine Überprüfung bezüglich des Befehlscodes 45 vornehmen. Jeder der
in dieser Figur angegebenen Teste stellt eigentlich eine Folge von Mikrobefehlen dar. Da bei diesem Beispiel angenommen
worden ist, daß der Befehlscode eine Lese-Zähl-Kennzeichen-
und Datenfeldoperationen angibt, tritt der Prozessor 300 in die RD;CKD-Leitungs-Routine ein, die mit dem Verzweigungs-Mikrobefehl
A0100 beginnt. Aus Fig. 9a ergibt sich dabei, daß dieser Mikrobefehl prüft, ob der Prozessor in
bezug auf die Aufzeichnung, die gelesen wird, "ausgerichtet" bzw. orientiert ist. Dies bedeutet, daß der Prozessor zuvor
eine Orientierungs- bzw. Ausrichtinformation gespeichert hat und derart betrieben wird, daß das Arbeitsbyte 1 in dem
Mehrzweckregister Nr. 6 abgeholt und der Zustand des Bits 0 überprüft wird. Unter der Annahme, daß das System "ausgerichtet"
ist, führt der Prozessor 300 sodann den Mikrobefehl A0350 aus.. Wie angedeutet, veranlaßt dies den Prozessor,
die Schreib-Zulassungsbits 0, 1 und 2 des Arbeitsbytes 2 zurückzustellen,
das in dem Allzweckregister Nr. 7 gespeichert ist.
Nunmehr geht der Prozessor auf den Verknüpfungs-Mikrobefehl A0400 über. Dieser Mikrobefehl besitzt ein Format, das dem
Format des zweiten Mikrobefehls gemäß Fig. 4g entspricht.
509825/0978
Dieser Mikrobefehl lädt eine bestimmte Konstante in das Mehrzweckregister Nr. 3. Diese Konstante entspricht dem
Lese/Schreib-Leitungsbyte. Es sei bemerkt, daß der Prozessor
mit Rücksicht darauf, daß er diese bestimmte Folge von Mikrobefehlen
ausgewählt hat, imstande ist, auf den Mikrobefehl A0400 Bezug zu nehmen. Die Hauptbedingung für den Eintritt
in diese Ablauffolge besteht darin, daß der Prozessor festgelegt
hat, daß der Befehlscode ein solcher Code ist, der ein Lese-Zähl-, Kennzeichen- und Datenfeld angibt, das
seinerseits die Auswahl eines Lese/Schreib-Leitungs-Byte-Bitmusters
entsprechend dem/Konstanten-Feld des Mikrobefehls A0400 bewirkt. Damit dürfte ersichtlich sein, daß eine ausgewählte
Leitungs-Routine, und zwar hier die Lese-Zähl-, Kennzeichen- und Daten-Leitungsroutine, das in Frage kommende
Leitungs-Byte für die anschließend ausgewählten Lese-Ausführungsroutinen festlegt.
Wie aus Fig. 9a hervorgeht, besitzt das Leitungs-Byte für
die Leitungs-Routine die Konfiguration "101000XXM, die den
Bits 0 bis 7 gemäß Fig. 7 entspricht. Für die Zwecke der vorliegenden Erfindung sind die Bits 6 und 7 als »XX»1 bezeichnet;
es handelt sich hierbei im wesentlichen um Bits, die anzeigen, daß keine Berücksichtigung zu erfolgen hat.
Wie aus Fig. 9a hervorgeht, tritt der Prozessor 300 dann in
die Lese-Ausführungsroutine ein (Fig. 11a bis 11e). Zuerst wird
dabei ein Mikrobefehl A0100 ausgeführt, der eine Überprüfung
dahingehend vornimmt, ob die in die Ausführung der Leseopera- ■
tion einbezogene Einrichtung eine Parallel- oder Serien-Einrichtung
ist. Diese Überprüfung erfolgt dadurch, daß der Zustand eines Bits des Codes überprüft wird, der in dem
Adapter-Parameter-Register 310-8 gemäß Fig. 3k gespeichert ist (das bedeutet, daß der Zustand des Signals.BNNPMIO
509825/0978
überprüft wird, welches der MUX-Schaltung 304-280 gemäß
Fig. 3f zugeführt wird). Dieses Register wird zuvor mit
der Einrichtungs-Parameterinformation geladen, die aus dem
RWS-Speicher erhalten wird.
Pur den Fall, daß es sich bei der betreffenden Einrichtung
um eine Parallel-Einrichtung handelt, ruft der Prozessor eine weitere Ausführungsroutine für Parallel-Einrichtungen
ab (das ist die Routine N4REX gemäß Fig. 12a und 12b). Wenn auf der anderen Seite die Einrichtung nicht eine Parallel-Einrichtung
ist, beginnt der Prozessor mit der Ausführung der eingeführten Lese-Ausführungsroutine (das ist die Routine
REXEC), die die Prozessor-Hardware für Serien-Einrichtungen konditioniert.
Die obige Überprüfung erfolgt in der Ausführungs-Routine, um die Anzahl der Verzweigungs-Mikrobefehle zu verringern.
Daraus dürfte ersichtlich sein, daß mittels eines relativ einfachen Testes eine Leitungs-Routine über die zunächst eingeführte
Ausführungs-Routine unterschiedliche Ausführungs-Routinen auswählen kann, die ihrerseits die Hardware in geeigneter
Weise in Abhängigkeit von den Eigenschaften der Einrichtungen einsetzen.
Unter der Annahme, daß die Einrichtung eine Serien-Einrichtung ist, beginnt der Prozessor die REXEC-Routine. Aus Fig. 11a
ergibt sich dabei, daß zwei Eintrittspunkte in diese Routine vorhanden sind. Der erste Eintritt wird dann benutzt, wenn
die Bytes eines Zählfeldes, das nicht die Aufzeichnung 0 ist, gelesen wird. Demgegenüber ist der zweite Eintritts- bzw.
Eintragpunkt für das Lesen der Bytes des Aufzeichnungs-Null-Zählfeldes
vorgesehen. Da der Befehlscode das Lesen eines
50 9 8 25/0978
Zähl-, Kennzeichen- und Datenfeldes angibt, führt der
Prozessor 300 einen Verknüpfungs-Mikrobefehl A0105 aus. Dies veranlaßt den Prozessor, einen Lese-Zählbefehlscode
in demAllzweckregister 4 zu speichern und sodann den Verzweigungs-Mikrobefehl
A0700 auszuführen. Dieser Mikrobefehl holt dann das Lese/Schreib-Leitungs-Byte in dem Allzweckregister
3 ab und überträgt es zu den Verriegelungsschaltungen der Rechen- und Verknüpfungseinheit ALU hin, um das
Bit 0 zu überprüfen. Aus Fig. 7 geht dabei hervor, daß das
Bit 0 in dem Fall, daß es eine binäre 1 ist, anzeigt^ daß
die PSI-Schaltungen Daten zu übertragen haben. Da bei dieser
Betriebsart der Prozessor benötigt wird, um Daten über die PSI-Schnittstelle zu übertragen, ist das Bit 0 des Leitungs-Bytes
auf eine binäre 1 gesetzt.
Aus Fig. 11a geht hervor, daß der Prozessor 300 sodann einen
weiteren Verzweigungs-Mikrobefehl ausführt, der den Zustand des Bits 5 des Leitungs-Bytes überprüft. Wie zuvor erwähnt,
zeigt dieses Bit'in dem Fall, daß es eine binäre 1 ist, an, daß der Prozessor die End-Leitung nach Übertragung des
letzten Bytes eines Feldes zu der Eingabe/Ausgabe-Steuereinrichtung hin setzt, da nämlich keine weiteren Bytes mehr
für die Ausführung dieses Befehlscodes zu übertragen sind. Wenn dieses Bit daher auf eine binäre 1 gesetzt ist, würde
der Prozessor 300 seine Übertragung von Bytes beenden, nachdem sämtliche Bytes des Zählfeldes übertragen worden sind.
Da bei diesem Beispiel der Prozessor 300 benötigt wird, um die Bytes von mehr als einem Feld zu übertragen, wird dieses
Bit auf eine binäre 0 gesetzt. Der Prozessor 300 führt dann einen Mikrobefehl aus, der die PSI-Steuerschaltungen für die
Übertragung von Bytes zu der Eingabe/Ausgabe-Steuereinrichtung hin festlegt (z.B. das PSI DDT-Flipflop in den Binär-
509825/0978
zustand 1 setzt), und außerdem führt dies zum Laden des PSI-Zählers mit einer bestimmten Zählerstellung 8.
Nachfolgend führt der Prozessor 300 den Verzweigungs-Mikrobefehl B0200 aus, der das Arbeitsbyte 1 aus dem Allzweckregister
Nr. 6 abholt und zu den Verriegelungsschaltungen der Rechen- und Verknüpfungseinheit ALU hin überträgt. Der
Prozessor überprüft den Zustand des Bits 0 um zu bestimmen, ob es in bezug auf die einlaufenden Datenbytes "ausgerichtet"
bzw. "orientiert" ist. Unter der Annahme, daß dieses Bit auf eine binäre 1 gesetzt worden ist, führt der Prozessor 300
sodann den Mikrobefehl B0850 aus, gemäß dem eine Prüfung nach
einer Spalt-Länge von 0 erfolgt. Da dies ein Lese-Zähl-Kennzeichen-
und Datenbefehl ist, ist die Spalt-Länge nicht 0. Dies veranlaßt den Prozessor, sodann einen Eingabe/Ausgabe-Mikrobefehl
B0400 auszuführen. Dieser Mikrobefehl stellt den Prozessor für den Lesebetrieb ein. Dies umfaßt das Festlegen
der Zustände der Folgesteuerungs-Flipflops in Übereinstimmung
mit den Feldern des Eingabe/Ausgabe-Mikrobefehls. Darüber hinaus
lädt der Prozessor eine bestimmte Zählerstellung 9 in den Daten-Zähler und sendet den Lese-Befehlscode, der in dem Allzweckregister
4 gespeichert ist, an das Adapter-Befehlsregister aus.
Auf die obigen Operationen folgend tritt der Festwertspeicher in eine Zwei-Mikrobefehls-Schleife ein, welche die Verzweigungs-Mikrobefehle
B0600 und B1100 umfaßt. Demgegenüber erfolgt die Übertragung von Bytes, die aus dem Zählfeld der
Aufzeichnung gelesen worden sind, unter der Steuerung der Hardware-Schaltungen des Prozessors. Am Ende der Übertragung,
das normalerweise dadurch angezeigt wird, daß das Befehlsende-
509825/0978
.- 93 -
CBEOC-Flipflop in den Binärzustand 1 gesetzt worden ist, führt
der Prozessor 300 den Mikrobefehl B120 aus, wie dies in Fig. 11b
angegeben ist.
Unter der Annahme, daß kein Fehler durch den Adapter festgestellt worden ist, tritt der Prozessor sodann in die HFLAG-Routine
ein, die eine B'e hl erÜberprüfung vornimmt und die
Spalt-Ausrichtung festlegt. Mit Beendigung dieser Routine führt der Prozessor 300 dann den Mikrobefehl C0120 aus, um
eine Überprüfung hinsichtlich Lesefehler vorzunehmen. In dem Fall, daß ein Lesefehler vorhanden.war, führt der Prozessor
den Mikrobefehl C0400 aus, gemäß dem das Leitungs-Byte in dem
Register GPR Nr. 3 abgeholt und der Zustand des Bits 1 des Leitungs-Bytes überprüft wird, um nämlich zu bestimmen, ob
Lesefehler unberücksichtigt bleiben können oder nicht. Da der Befehl das Lesen von Zähl-, Kennzeichen- und Datenfeldern
angibt, ist dieses Bit eine binäre 0. Wäre ein Lesefehler ermittelt worden, so würde demgemäß das Leitungs-Byte die Lese-Ausführungsroutine
veranlassen, den Betrieb zu beenden, und zwar durch Eintritt in die Zustands-Routine über den Mikrobefehl
D0100, wie dies in Fig. 11b angegeben ist. k
Unter der Annahme, daß keine Lesefehler vorliegen, führt der Prozessor 300 sodann den Mikrobefehl C0130 aus, wie dies in
Fig. 11b angegeben ist. Dies veranlaßt den Prozessor, die Kennzeichenlänge der Aufzeichnung in den Datenzähler zu laden
und dann den Mikrobefehl C0160 auszuführen um zu bestimmen,
ob diese Länge 0 ist. Da diese Länge nicht 0 ist, führt der Prozessor 300 sodann den Mikrobefehl C0170 aus, was dazu
führt, daß das Bit 3 des Arbeitsbytes 1 auf eine binäre 1 gesetzt wird. Wie aus Fig. 5a und 5b ersichtlich ist, überläuft nunmehr der Platten-Lese/Schreibkopf den Kopfteil des
509825/0978
Kennzeichen-Spaltbereiches der Aufzeichnung. Zu diesem Zeitpunkt führt der Prozessor 300 den Mikrobefehl C0200 aus. Wie
angegeben, bestimmt die Lese-Ausführungsroutine, ob die Forderung besteht, die Steuerung auf die Leitungs-Routine
zurückzuführen, nachdem das Lesen des Zählfeldes abgeschlossen ist. Wie oben erwähnt, ist dieses Bit des Leitungs-Bytes
auf eine binäre 1 gesetzt. Dies ermöglicht der RD:CKD-Leitungs-Routine zu prüfen, ob eine vollständige Aufzeichnung
gelesen worden ist. Dies erfolgt durch Überprüfen der Aufnahme eines Indeximpulses. Damit kehrt der Prozessor 300,
nachdem er den Teil der angegebenen Lese-Ausführungsroutine ausgeführt hat, auf die Leitungs-Routine zurück, um den
Mikrobefehl A0600 auszuführen, wie dies in Fig. 9a angegeben
ist. Aus diesem Teil des Betriebs kann ersehen werden, daß die Lese-Ausführungs;routine durch Überprüfen des Zustands
eines einzigen Bits innerhalb des Leitungs-Bytes imstande ist, schnell zu bestimmen, was als nächstes zu tun erforderlich ist.
Dies vermeidet die Forderung nach Ausführung von Mehrfachverzweigungen zufolge der Decodierung eines Befehlscodes.
Der Prozessor führt infolgedessen eine Verzweigung zu dem Inhalt des Rückführ-Adreßregisters +1 hin aus und tritt in
die Routine bei A0600 ein, wie dies durch Fig. 9a veranschaulicht ist. Die B0800-Bezeichnung bezeichnet eine Verzweigung
mit einer Rückführoperation. Dadurch, daß auf den Inhalt des Rückführ-Adreßregisters +1 eine Verzweigung möglich
ist, ist der Prozessor sehr schnell imstande, die Steuerung auf die richtige Leitungs-Routine zurückzuführen
(das ist die rufende Routine). Durch Vergleichen des gerade beschriebenen Teiles der Lese-Zähl-, Kennzeichen- und Daten-Leitungsroutine
mit der Leitungs-Routine gemäß Fig. 10 werden die Ähnlichkeiten zwischen diesen beiden Feldern bemerkt.
50 9 8 25/0978
Wie aus Fig. 9a hervorgeht, führt der Prozessor 300 nunmehr den Mikrobefehl A0700 aus, der das-Leitungs-Byte aus GPR Nr.
abholt und den Zustand des Bits 4 überprüft, um nämlich zu bestimmen, ob die Indexmarkierung von der Lese-Ausführungsroutine
gefunden worden ist. Da. dies nicht der Fall war, bedeutet dies, daß die' Lese-Ausführungsroutine das Zählfeld
der Aufzeichnung verarbeitet hat. Nunmehr führt die Leitungs-Routine den Mikrobefehl A0900 aus, um zu bestimmen, ob die
Aufzeichnung in einer anderen nächsten Spur fortgesetzt wird (d.h., daß eine Überlauf-Aufzeichnung ermittelt worden ist).
Zu diesem Zeitpunkt holt der Prozessor das Arbeitsbyte 2 aus dem Allzweckregister Nr. 7 ab und überprüft den Zustand des
Bits 7. Da das Bit 7 als binäre 0 angenommen worden ist, führt der Prozessor sodann einen Verzweigungs-Mikrobefehl B0100 aus,
wie dies in Fig. 9b angegeben ist. Dadurch wird überprüft, ob der Prozessor mehr als eine Aufzeichnung zu verarbeiten
hat. Da dies nicht der Fall ist, führt der Prozessor 300 den Mikrobefehl BOI10 aus, gemäß dem das Leitungs*Byte aus
GPR Nr. 3 abgeholt und das Bit 5 auf eine binäre 1 gesetzt wird. Dies bedeutet, daß der Prozessor den Betrieb auf die
Übertragung der Bytes des nächsten Datenfeldes zu beenden hat, da der Prozessor 300 die Bytes von lediglich einer Aufzeichnung
zu der Eingabe/Ausgabe-Steuereinrichtung hin überträgt. ·
Anschließend führt der Prozessor 300 den Mikrobefehl B0135
aus, gemäß dem das Bit 6 des Arbeitsbytes 1 überprüft wird. Da die Aufzeichnung ein Kennzeichen-Feld besitzt, ist dieses
Bit eine binäre 0. Diese binäre 0 veranlaßt den Prozessor, wieder in die Lese-Ausführungsroutine bei dem Mikrobefehl
C0230 einzutreten, wie dies in Fig. 9c veranschaulicht ist.
509825/0978
Bevor in die betreffende Routine eingetreten wird, führt der Prozessor einen Verzweigungs-Mikrobefehl aus, gemäß dem
die Rückkehradresse des Mikrobefehls B0140 +1 in dem Rückführ-Adreßregister 1 gespeichert wird. Wenn auf der anderen
Seite die Kennzeichenlänge 0 wäre, hätte der Prozessor 300 den Teil der Lese-Ausführungsroutine bei dem Mikrobefehl
DO35O (siehe Fig. 9) eingeführt, gemäß dem lediglich die aus
dem Datenfeld der Aufzeichnung gelesenen Bytes übertragen werden.
Aus Fig. 11c ergibt sich, daß der Prozessor 300 zuerst den Mikrobefehl C0230 ausführt, um die richtige Ausführungsroutine auszuwählen. Dies erfolgt durch Überprüfung des
Zustands des Signals BNNPM10 (siehe Fig. 3f). Sodann führt
der betreffende Prozessor den Mikrobefehl C0240 aus, gemäß dem er das Leitungs-Byte aus dem Allzweckregister Nr. 3 abholt
und den Zustand des Bits 0 überprüft. Da das Bit 0 eine binäre 1 ist, führt der Prozessor 300 einen Eingabe/Ausgabe-Mikrobefehl
aus, der die periphere Untersystem-Schnittstelle PSI für die Übertragung von Datenbytes einstellt. Es sei
darauf hingewiesen, daß die Leitungs-Routine außerdem über den gerade beschriebenen Weg unter den in Fig. 9b angegebenen
beiden weiteren Bedingungen abläuft. In beiden Fällen ist jedoch das Übertragungsbit "0" des Leitungs-Byte auf eine
binäre 0 gesetzt. Dadurch wird die Übertragung der Kennzeichen- und Datenbytes zu der Eingabe/Ausgabe-Steuereinrichtung hin in
dem Fall verhindert, daß die Eingabe/Ausgabe-Steuereinrichtung
lediglich die Bytes des Zählfeldes der Aufzeichnung wünscht oder die Übertragung beendet hat (d.h., daß ein Beendigungs-Austritts-Signal
von dem Prozessor 300 gespeichert worden ist - TOS =1). Auf diese Weise vermag die Leitungs-Routine
die Leitungs-Byte-Bits auf externe Ereignisse hin während der
509825/0978
Übertragung zu modifizieren. Dadurch ist der Ausführungs-Routine
ermöglicht, effektiv abzulaufen.
Im Zuge der weiteren Verarbeitung der Aufzeichnung ergibt
sich aus Fig. 11c, daß der Prozessor 200 dann den Verzweigungs-Mikrobefehl
D0100 ausführt, der bestimmt,, ob der Befehl zeitgerecht
aufgetreten ist oder nicht. Diese Bestimmung erfolgt dadurch, daß der Zustand des Spalt-Zählers überprüft wird,
um sicher zu sein, daß er nicht 0 ist. Unter der Annahme, daß
der betreffende Zählerstand nicht 0 ist, führt der Prozessor 300 sodann den Mikrobefehl D0150 aus. Dies bewirkt, daß der
Lesebefehlscode zu dem Einrichtungs-Befehlsregister und dann zu der !Einrichtung hin übertragen wird. Danach befindet sich
der Prozessor 300 in der oben beschriebenen Weise im Leerlaufzustand über eine Zwei-Mikrobefehls-Schleife, wobei auf die Beendigung
der Bytes-Übertragung gewartet wird, die durch Ermittelung eines Befehlszustandsendes oder einer Indexmarkierung
signalisiert wird. Unter der Annahme, daß keine Indexmarkierung ermittelt worden ist, daß aber das Befehlsende
festgestellt worden ist, führt der Prozessor 300 sodann den Mikrobefehl D0300 aus, gemäß dem der Adapter auf Fehler überprüft
wird. Unter der Annahme, daß keine Fehler vorliegen, tritt der Prozessor 300 sodann in die die Verarbeitung des
Dateiendes betreffende Routine ein. Diese Routine veranlaßt den Prozessor, das Bit 4 des Arbeitsbytes 1 auf eine binäre 1
zu setzen. Außerdem wird die Datenlänge der Aufzeichnung in den Datenzähler geladen, um die Verarbeitung des Datenfeldes
zu beginnen.
Wie aus Fig. 11d hervorgeht, führt der Prozessor 300 sodann den Mikrobefehl D033Ö aus, um das Vorhandensein eines Lesefehlers
zu überprüfen. Unter der Annahme, daß kein Lesefehler
509825/0978
vorliegt, führt der Prozessor 300 sodann den Mikrobefehl aus, gemäß dem der Zustand des Signals BNNPM10 überprüft wird, um
die richtige Ausführungs-Routine auszuwählen. Da es sich bei der betreffenden Einrichtung um dieselbe Einrichtung handelt,
die in die Übertragung einbezogen war, führt der Prozessor den Mikrobefehl DO36O aus, der den Zustand des Bits 3 des in
dem Allzweckregister Nr. 3 gespeicherten Lese/Schreib-Leitungs-Bytes
überprüft. Ist dieses Bit auf eine binäre 1 gesetzt, so kehrt die Lese-Ausführungs-Routine auf die rufende
Routine zurück (das ist die Lese-Zähl-, Kennzeichen- und
Daten-Leitungsroutine), und zwar auf die Ausführung des Verzweigungsbefehls D0500 hin. Da der 'Befehlscode die Übertragung
eines Zähl-, Kennzeichen- und Datenfeldes einer Aufzeichnung angegeben hat, ist dieses Bit, wie zuvor angegeben,
eine binäre 0. Daher führt der Prozessor 300 den Mikrobefehl D0380 aus, der den Zustand des Bits 0 des Leitungs-Bytes überprüft.
Da dieses Bit eine binäre 1 ist, führt der Prozessor 300 sodann einen Verzweigungs-Mikrobefehl aus, um den Zustand
des Bits 5 zu überprüfen. Da dieses Bit eine binäre 1 ist, führt der Prozessor 300 sodann den Eingabe/Ausgabe-Mikrobefehl
aus, der die PSI-Bitstelle veranlaßt, Datenbytes des Datenfeldes
zu übertragen und auf das letzte Byte hin die Übertragung zu beenden.
Anschließend führt der Prozessor 300 den Mikrobefehl E0160
aus, der ebenfalls eine Überprüfung vornimmt, um sicherzustellen, daß der B^efehl pünktlich eingetroffen ist. Da der Befehl
zuvor eingetroffen ist, führt der Prozessor 300 sodann den Mikrobefehl E0180 aus, wie dies in Fig. 11e angegeben ist.
Dieser Mikrobefehl sendet den Lesebefehl an die Einrichtung aus, woraufhin der Prozessor 300 dann in die den variablen
Spalt betreffende Routine eintritt, um Daten bezüglich des Kopfteils der variablen Spalt-Länge in der zuvor genannten
509825/0978
Weise zu berechnen. Gleichzeitig damit führt der Prozessor die.Steuerung auf die Hardware für die Übertragung über. Auf
die Berechnung hin führt der Festwertspeicher die Zwei-Mikrobefehls-Leerlaufschleife
ein, wie dies zuvor beschrieben worden ist.
Am Ende der durch das Befehlsende ermittelten Übertragung führt der Prozessor 300 den Mikrobefehl E0300 aus, der von
dem Mikrobefehl E0500 gefolgt wird, wenn keine Fehler vorhanden sind. Durch Ausführen des Mikrobefehls E050Q verschiebt
der Prozessor 300 die Zylinder-, Spur- und Aufzeichnungsnummer zu dem Adreßregister in dem Lese/Schreib-Speicher
und setzt das Bit 5 des Arbeitsbytes 1 in eine binäre 1. Dadurch wird angezeigt, daß der Platten-Lese/Schreibkopf
den von den Daten bis zu dem Kopfteil reichenden Spalt einer nächsten Aufzeichnung überläuft. Der Prozessor 300
führt dann den Mikrobefehl E135O aus, um das Vorliegen von
Lesefehlern zu überprüfen. Unter der Annahme, daß keine Fehler vorliegen, erfolgt eine Rückkehr zu der Lese-Zähl-Kennzeichen-
und Daten-Leitungs-Routine, wie dies in Fig. 11e gezeigt ist. Dies geschieht durch Ausführen eines Verzweigungs-Mikrobefehls
E13Ö0, der den Inhalt des Rückführ-Adreßregisters in das Festwertspeicher-Adreßregister lädt. Wie aus Fig. 9c
hervorgeht, kehrt der Prozessor 300 auf den Mikrobefehl B0150
zurück, der dann den Prozessor 300 veranlaßt, in die die Operation beendende CPMGT-Routine einzutreten bzw. diese
zu beginnen.
Aus Vorstehendem dürfte ersichtlich sein, daß die Ausführungs-Routinen
in sehr wirksamer Weise unter der Steuerung der Leitungs-Bytes ausgeführt werden können. Durch die Ausnutzung
unterschiedlicher Leitungs-Routinen können dieselben Aus-
509825/0978
führungs-Routinen in wirksamer Weise ausgenutzt werden. Darüber
hinaus können sich dieselben Leitungs-Routinen unterschiedliche Ausführungs-Routinen teilen. Sämtliche Leitungs-Routinen
teilen sich beide Typen von Ausführungs-Routinen. Der Ablauf der N4REX-Ausf ührungs-Routine, die zur Verarbeitung
von Daten in Parallelform benutzt wird, ist in Fig. 12a und 12b veranschaulicht.
Im Vorstehenden ist ein peripheres System veranschaulicht,
welches die Verarbeitung von Befehlen erleichtert, durch die Einrichtungen mit unterschiedlichen Betriebseigenschaften
erfaßt sind. Gemäß der vorliegenden Erfindung enthält das Untersystem einen mikroprogrammierbaren peripheren Prozessor,
der einen Mehrzweckregisterspeicher und einen Steuerspeicher für die Speicherung von zumindest zwei Klassen oder Typen
von Mikroprogramm-Routinen aufweist. Die erste Klasse umfaßt Leitungs-Mikroprogrammroutinen für jeden der Befehle. Die
zweite Klasse umfaßt Ausführungs-Mikroprogrammroutinen für jede der unterschiedliche Eigenschaften aufweisenden Einrichtungen.
Der periphere Prozessor, der unter der Leitung der Leitungs-Routinen
arbeitet, und zwar durch Ausführung von Tests auf verschiedene Bits hin, die in den Leitungs-Bytes enthalten
sind, welche in dem Mehrzweckregisterspeicher enthalten sind, wählt die in Frage kommenden Ausführungs-Routinen aus. Diese
Anordnung bringt den Vorteil einer erhöhten Geschwindigkeit durch Vereinfachung und Verringerung der Anzahl von Prüfoperationen
mit sich, die von dem peripheren Prozessor gemäß der vorliegenden Erfindung ausgeführt werden müssen. Darüber
hinaus vermeidet die Anordnung die Forderung nach speziellen Verzweigungs-Mikrobefehlen oder nach Mikrobefehlen irgendeines
50 9 8 25/0978
anderen Typs sowie nach komplizierten Verzweigungsschaltungen.
Weitere Vorteile des Systems gemäß der vorliegenden Erfindung
liegen darin, daß das System die Hinzufügung von neuen Einrichtungstypen und die Hinzufügung von neuen Befehlen erleichtert.
Im Falle der Hinzufügung eines neuen Einrichtungstyps (das ist eine Einrichtung mit Eigenschaften, die unterschiedlich
sind zu den Eigenschaften der an dem Prozessor bereits angeschlossenen Einrichtungen - z.B. unterschiedliche
Datenformate) ist lediglich eine neue einrichtungsspezifische
Ausführungs-Routine, die für die betreffende Einrichtung maßgeschneidert ist, erforderlich, um in den Steuerspeicher einbezogen
zu werden. Die neue Ausführungs-Routine teilt sich dann die verschiedenen Leitungs-Routinen. Wenn ein neuer
Befehl hinzugefügt wird, erfordert dies die Einbeziehung einer neuen Leitungs-Routine in den Steuerspeicher. Weitere
Vorteile der vorliegenden Erfindung dürften für den Fachmann ohne weiteres ersichtlich sein.-
Um eine Überlastung der Beschreibung mit Dingen zu vermeiden, die im Wissen des Fachmanns sind, ist eine Blockdiagramm-Darstellungsweise
gewählt worden, wobei bezüglich des jeweiligen Blocks eine detaillierte funktioneile Beschreibung
gegeben ist und wobei die Schaltungen, die der jeweilige Block darstellt, speziell angegeben worden sind. Der jeweilige
Ingenieur ist dabei frei, Elemente und Bauelemente, wie Flipflop-Schaltungen, Schieberegister, etc. auf Grund
des eigenen Wissens oder aus Standart-Bezugsquellen, wie sie oben angegeben worden sind, auszuwählen.
Es sei ferner darauf hingewiesen, daß die genauen Codierungsmuster für sämtliche Mikrobefehle hier nicht angegeben worden
50 98 25/0978
sind, da es dem Ingenieur freisteht, alternative Formen der Codierung auszuwählen. Bezüglich weiterer Einzelheiten und
eines Eindringens, in die Techniken und Ableitung einer derartigen
Codierung sowie zur Bereitstellung einer zusätzlichen, das System betreffende Hintergrundinformation sei auf die
Druckschrift "Computer Design Fundamentals" von Chu, McGraw-Hill Book Company, Inc., Copyright 1962 und auf
die Druckschrift "Microprogramming Principles and Practice" von S.S. Husson, Prentice-Hall, Inc., Copyright 1970, hingewiesen.
Zum Zwecke einer leichteren Bezugnahme sind in einer nachfolgenden Anhangtabelle bestimmte Ausdrücke definiert,
die im Zuge der Beschreibung einer bevorzugten Ausführungsform der vorliegenden Erfindung benutzt worden sind.
Abschließend sei bemerkt, daß durch die Erfindung ein mikroprogrammierter
peripherer Prozessor geschaffen ist, der einen eine Vielzahl von Mikroprogrammen enthaltenden Festwertspeicher
und eine Zwei-Wege-Verzweigungsanordnung zusätzlich enthält, um eine Rückführ-Adressenregisterspeicherung vorzunehmen.
Darüber hinaus enthält der periphere Prozessor eine Anordnung zur Speicherung von einem oder mehreren Informationssteuerbytes.
Diese Bytes enthalten ein Lese/Schreib-Leitungs-Byte, das so codiert ist, daß es die Operationen angibt, die von unterschiedlichen
Arbeits-Mikroprogrammen auszuführen sind, welche von dem Prozessor für den angegebenen Befehlstyp durchgeführt
werden. Die Codierung dieses Steuerbytes wird anfänglich durch den bestimmten Befehlscode festgelegt, · der den Typ der Operation
angibt, welche der Prozessor auszuführen hat. Während der Ausführung des Befehls stellt der Prozessor eine Kommunikation
zwischen den Leitungs-Routinen und den Ausführungs-Routinen her, und zwar durch Bezugnahme auf das Leitungs-Byte
und den Rückführ-Registerspeicher.
509825/0978
Anhangtabelle
Verzeichnis von Ausdrücken
Ausdruck Ersatzspur
Byte
Weg mit Byte-Breite
Eine Ersatzspur ist eine Spur, die Daten enthält, welche von einer defekten Hauptspur
her in eine neue Stellung gebracht worden sind.
Die Grundeinheit der Information, die von dem Massenspeicher-Untersystem (MSS)
verarbeitet wird. Ein Byte enthält bis zu acht Informationsbits, deren jedes auf
den Verknüpfungswert 1 (ein) oder auf den Verknüpfungswert Null (aus) gesetzt
werden kann, um irgendeine Kombination von 256 Kombinationen darzustellen. Dps
Bit Null ist als das am weitesten links stehende Bit oder als Bit höchster Wertigkeit
definiert, und das Bit 7 ist das am weitesten rechts stehende Bit oder das Bit niedrigster Wertigkeit.
Informationsbytes, die über die Schnittstelle übertragen werden, bestehend aus
acht Informationsbits zuzüglich einem Bit für ungerade Parität. Die Information ist so zusammengestellt, dass das Bit Null
stets das Bit höchster Wertigkeit ist. Paritätsbit ist 1, wenn zweier11 ϊ-Sits
in den entsprechenden acht Informationsbits geradzahlig ist; es ist Null, wenn
die Anzahl der 1-Bits ungeradzahlig ist. Dies bedeutet, dass eine ungerade bzw.
98 25/0978
Ausdruck
Zentraler Prozessor-Komplex (CPC)
Kanalbefehls-Eintrag (CCE)
Kanalateuerwort
(CCW) .
Definition
ungeradzahlige Parität bezüglich der acht Informationsbits erzeugt wird.
Der zentrale Prozessor-Komplex besteht
die aus jenen Einheiten, die für/Adressierung
des Hauptspeichers, die Wiederauffindung oder Speicherung einer Information, für
die Rechen- und Verknüpfungsverarbeitung von Daten, für die Polgesteuerung von
Befehlen in der gewünschten Reihenfolge und für die Auslösung der Kommunikation zwischen Speichereinrichtungen und externen
Einrichtungen verwendet werden. Di'e Haupteinheiten des zentralen Prozessor-Komplexes
sind die Zentraleinheit (CPU), der Hauptspeicher und die Eingäbe/Ausgabe-Steuerdnrichtung
(IOC).
Der Kanalbefehlseintrag ist der elementare Baustein von Kanalprogrammen. Er
besteht aus zwei Kanalsteuerworten und kann einen Befehl, ein Kennzeichen, eine Zählinformation, eine Verzweigungsinforraation,
ein Kennzeichen oder Pufferadressen und ein Befehlserweiterungsfeld umfassen. Die Adresse des Kanalbefehlseintrags
ist die Adresse ihres ersten Kanalsteuerwortes·
Ein Känalsteuerwort ist ein 32-Bit-(4-Byte)-Wortf
das eine Unterteilung eines Kanalbefehlseintrags 1st.
509825/0978
Ausdruck
.2459956 Definition
Kanalprograimn (CP) Ein Kanalprogramm ist ein vollständiger
Satz von Befehlen und Adresseninformation zur Ausführung einer Eingabe/Ausgäbe-Operation.
Er besteht aus zwei Kanalbefehlseintragen, die das Kanalsteuerwort ausmachen.
Zählfeld Das erste PeId jeder Aufzeichnung. Das
Zählfeld beschreibt die Kennzeichen- und Datenfelder derselben Aufzeichnung.
Zyklischer Prüfcode
Zylinder
Ein zyklischer Prüfcode wird für die Fehlerermittlung verwendet, wenn eine
Information in einem Feld gespeichert bzw, aus einem PeId herausgeführt wird.
Wenn Daten aufgezeichnet werden, ist der zyklische Prüfcode arithmetisch von
der Information codiert, die in dem PeId unterzubringen ist; er wird als Teil des
Feldes aufgezeichnet. Wenn ein Feld von dem Speicherträger gelesen wird, wird der zyklische Prüfcode neu berechnet und
mit dem zyklischen Prüfcode verglichen, der als Teil des Feldes aufgezeichnet ist.
Ist der Vergleich nicht erfolgreich, so wird ein Fehlerzustand angezeigt. Bei bestimmten Einrichtungen wird der zyklische
Prüfcode durch einen Fehlerermittlungsund Korrekturcode ersetzt. Sämtliche Spuren, die für die Datenübertragung
ohne zusätzliche Bewegung des Zugriffsmechanismus verfügbar sind. Jeder Zylinder in einer Speichereinrichtung
wird durch eine eindeutige Zylinderadresse identifiziert; er gibt eine bestimmte
982 5/097 8
ORIGINAL
Ausdruck Datenfeld
Feld
Position des Satzes der lese/Schreibköpfe
auf der jeweiligen Oberfläche der Einrichtung an.
Dasjenige Feld, das die Information enthält, welche durch die Zähl- und Kennzeichenfelder
der Aufzeichnung identifiziert ist. Das Datenfeld wird auf dem Speicherträger unmittelbar auf das Kennzeichenfeld
folgend aufgezeichnet. Wenn ein Kennzeichenfeld nicht existiert, folgt
das Datenfeld dem Zählfeld. Eine unbrauchbare Spur ist eine Spur, von der eine aufgezeichnete Information
nicht in zuverlässiger Weise erhalten werden kann. Dieser Zustand ist normalerweise
ein Ergebnis eines Oberflächenmangels und auf einen kleinen Bereich der Spurfläche lokalisiert.
Eine Gruppe von in Beziehung zueinander stehenden abhängigen Bytes. Vier Typen von Feldern sind in dem Massenspeicher-Prozessor definiert: Ein Hausadressenfeld, ein Zählfeld, ein Kennzeichenfeld und ein Datenfeld (Definitionen folgen)· Ein Hausadressenfeld folgt in der jeweiligen Spur der Indexmarkierung und identifiziert den physikalischen Ort der Spur innerhalb der Speichereinrichtung; es enthält eine Information, die den' Zustand der Spur beschreibt. Die erste in der Spur aufgezeichnete Aufzeichnung beginnt an einer Indexmarkierung, wenn ein Hausadressenfeld nicht existiert.
Eine Gruppe von in Beziehung zueinander stehenden abhängigen Bytes. Vier Typen von Feldern sind in dem Massenspeicher-Prozessor definiert: Ein Hausadressenfeld, ein Zählfeld, ein Kennzeichenfeld und ein Datenfeld (Definitionen folgen)· Ein Hausadressenfeld folgt in der jeweiligen Spur der Indexmarkierung und identifiziert den physikalischen Ort der Spur innerhalb der Speichereinrichtung; es enthält eine Information, die den' Zustand der Spur beschreibt. Die erste in der Spur aufgezeichnete Aufzeichnung beginnt an einer Indexmarkierung, wenn ein Hausadressenfeld nicht existiert.
509825/0978
Ausdruck
Indexmarkierung
Indexmarkierung
Eingabe/Ausgabe-Steuereinrichtung
(IOC)
Eingabe/Ausgabe-Steuereinrichtungs- Befehl
Kennzeichenfeld
Definition
Eine Markierung, die den Beginn einer Spur signalisiert. Sämtliche Spuren
auf einem Zylinder sind durch, dieselbe Indexmarkierung synchronisiert.
Eine Eingabe/Ausgabe-Steuereinrichtung ist die Hauptrahmen-Hardware/Firmenware,
die während der Ausführung eines Kanalprogramms betroffen ist. Sie kann mehrere physikalische Kanäle steuern. Im vorliegenden
Pail ist diejenige Einheit, die an der Hauptrahmenseite der peripheren
Untersystemschnittstelle angeschlossen
ist, als Eingabe/Ausgabe-Steuereinrich-
die tung bezeichnet. Andere Ausdrücke,/mit
derselben Bedeutung benutzt worden sind, sind Zentraleinheit, Kanalsteuereinheit,
Kanal, Eingabe/Ausgabe-Prozessor, etc..
Ein Eingabe/Ausgabe-Steuereinrichtungs—
Befehl ist ein Befehl, der von der Eingabe /Ausgabe-Steuereinrichtung an die Prozess-Steuereinheit
PCU ausgesendet wird. Dieser Befehl ist nicht Teil des Kanalprogramms, kann aber auf die Kanalprogramm-Aktivität
bezogen sein (z.B. Trennen). Das Kennzeichenfeld ermöglicht die Suche nach der Identifizierungsinformation
um eine Aufzeichnung. Die Identifizierungsinformation
ist in dem Kennzeichenfeld gespeichert. Ist sie vorhanden, so folgt das Kennzeichenfeld unmittelbar
dem Aufzeichnungezählfeld.
509825/0978
Ausdruck
Leitungszustände
Verknüpfungskanal
(LG)
(LG)
Definition
Eine Schnittstellen-Signalleitung, die sich im Ein-Zustand befindet bzw. ein hohes
Potential führt, wird als verknüpfungsmässig den 1-Zustand führend angesehen.
Eine Leitung, die sich im Null-Zustand befindet oder ein niedriges Potential führt,
wird als verknüpfungsmässig den Null-Zustand führend angesehen. Der Potentialanstieg auf
einer Leitung bedeutet einen Übergang vom Null-Zustand zum 1-Zustand, während eine
Potentialabsenkung auf einer Leitung bedeutet, dass ein Übergang vom 1-Zistand
auf den Null-Zustand erfolgt.
Das Eingabe/Ausgabe-System basiert auf dem Konzept von Verknüpfungskanälen. Der
Zugriffsweg von der Zentraleinheit zu der Einrichtung zum Zwecke der Ausführung einer
Eingabe/Ausgabe-Operation wird als Kanal bezeichnet. Der Kanal besteht aus Eingabe/
Ausgabe-Steuereinrichtungen, einer Hardware-Verbindung zwischen der Eingabe/Ausgabe-Steuereinrichtung
und der Prozess-Steuereinheit, die als physikalischer Kanal und als Verknüpfungskanal identifiziert
sind. Der Verknüpfungskanal ist in seiner elementarsten Form die Zusammenstellung
von Einrichtungen in einem peripheren Steuereinheit-Untersystem, das für die Ausführung einer Eingabe/Ausgabe-Operation
benötigt wird, wie für das Schreiben, Lesen, etc..Eine Eingabe/Ausgäbe-Operation
ist durch ein Kanalprogramm definiert· Ein Verknüpfungskanal kann
9825/097 8
Ausdruck Magazin
lediglich jeweils ein aktives Kanalprogrannn
besitzen. Die Verknüpfungskanalnummern
werden von dem Kanal für die Ordnung der Speicherung von Parametern
benutzt, die zum Festhalten einer Anzahl von Kanalprogramraen benötigt werden, welche
gleichzeitig arbeiten. Insofern erfolgt die Software-Verfügbarkeit einer Eingabe/
Ausgabe-Operation über einen Verknüpfungs-Kanal (vom Standpunkt der Software aus
werden Einrichtungen einer Eingabe/Ausgabe-Steuereinrichtungs-Zahl,
einer physikalischen Kanal-Zahl und einer Verknüpfungskanal-Zahl für Auswahlzwecke zugeordnet)
Eine Verknüpfungskanalnummer bzw. -zahl identifiziert explizite eine Einrichtung.
Ein Kanalprogramm ist auf eine Einrichtung beschränkt. Einrichtungen werden Verknüpfungskanalnummern
zur System-Bildungs-Zeit zugeteilt oder dann, wenn die Einrichtung dem System hinzugefügt wird.
Dabei kann mehr als ein Kanal pro Einrichtung vorgesehen sein. Ein Verknüpfungskanal wird von dem Zeitpunkt an als aktiv
angesehen, zu dem von der Eingabe/Ausgabe-Steuereinrichtung ein Bedienungscode "löse neues Kanalprogramm aus" empfangen
wird, und zwar bis zur Beendigung durch eine Ereignis-Meldung an die Software..
Eine Gruppe von Spuren und/oder Zylindern, die individuell entfernbar sind. Wenn
mehrere Magazine in einer Einrichtung existieren, kann lediglich ein Magazin
9 8 25/0978
Ausdruok
Periphere Einrichtung
Peripherer Prozessor
zu einem Zeitpunkt in Bezug auf den Lese/
Schreib-Lösch-Meohaniemus in Stellung gebracht werden.
Die Fähigkeit des Massenspeicher-Untersystems
in dem Fall, dass es mit bestimmten Eingabe/Ausgabe-Befehlen in bestimmten
Betriebsarten versorgt wird, automatisch auf aufeinanderfolgende Spuren desselben
Zylinders umzuschalten und die Operation in bzw. auf der neuen Spur fortzuaetzen.
Eine periphere Einrichtung ist eine einzelne adressierbare Datenquelle oder
Datensenke. Die periphere Einrichtung kann eine Einheit sein, die ein physikalisches
Medium steuert (zum Beispiel einen Plattenantrieb, Bandantrieb) oder
ein elektronisches Medium (zum Beispiel ein Kommunikationskanal).
Ein peripherer Prozessor (zum Beispiel Massenspeicher-Prozessor (MSP)) ist
diejenige Einheit, die an der peripheren Seite der peripheren Untersystem-Schnittstelle
PSI angeschlossen ist, welche die periphere Einrichtung steuert und betreibt. Andere Namen mit ähnlicher
Bedeutung sind periphere Steuereinheit, periphere Steuereinrichtung, mikropror·.
grammierte periphere Steuereinrichtung (MPC), Mehrleitungs-Steuereinrichtung
(MLC)1 etc.*
509825/097 8.
Ausdruck
Peripheres Unter-System
Physikalischer
Kanal
Kanal
Primäre Spur Lesen
Ein peripheres Untersystem (zum Beispiel das Massenspeicher-Untersystem MSS) besteht
aus solchen Funktionseinheiten, die ausserhalb der zentralen Verarbeitungs-
und Hauptspeichereinrichtungen liegen, welche den Betrieb und die Steuerung der peripheren Einrichtungen in einem
System benötigen. Ein peripheres Untersystem kann eine oder mehrere periphere Untersystem-Schnittstellen, eine oder
mehrere periphere Steuereinheiten und eine oder mehrere periphere Einrichtungen
enthalten.
Ein physikalischer Kanal ist die Hardware-Verbindung
zwischen der Eingabe/Ausgabe-Steuereinrichtung und der peripheren Steuereinheit. Diese Hardware-Verbindung
besteht aus einer peripheren Untersystem-Schnittstelle und den Einrichtungen am
jeweiligen Ende der peripheren Untersystem-Schnittstelle, welche Einrichtungen der
betreffenden Schnittstelle zur Verfügung stehen.
Eine primäre Spur ist die Ursprungsspur,
in der Daten gespeichert worden waren.
Das Lesen gibt die Richtung des Dialog-Flusses an (von der Zentraleinheit zur
Eingabe/Ausgabe-Steuereinrichtung); das heisst, dass eine Eingabeoperation vorliegt.
509825/0978
ORIGINAL INSPECTED
Ausdruck
Aufzeichnunge-Überlauf
Aufzeiohnungs-Segment
Sine Gruppe von in Beziehung zueinander stehenden Feldern, Eine Aufzeichnung besteht
aus einem Zählfeld, einem Kennzeichen· JPeId, das unmittelbar auf sein mit ihm
4n Beziehung stehendes Zählfeld auf dem Speichermedium folgt, und aus einem Datenfeld,
welches unmittelbar seinem mit ihm in Beziehung stehenden Zähl- und Kennzeichenfeld folgt. Die Länge des
Kennzeichenfeldes kann mit Null angegeben sein; in diesem Fall besteht eine Aufzeichnung lediglich aus einem Zählfeld
und einem Datenfeld.
Ein Aufzeichnungs-ttberlauf ist eine Fähigkeit, die eine Verknüpfungs-Aufzeichnung
in mehr als einer Spur aufzuzeichnen gestattet. Eine derartige Aufzeichnung ist als Überlauf-Aufzeichnung
bekannt. Ein Teil einer Überlauf-Aufzeichnung,
die in einer Spur geschrieben wird, wird Aufzeichnungs-Segment genannt. Die meisten in dem Massenspeicher-Untersystem
bezeichneten Funktionen behandeln die gesamte Verknüpfungs-Aufzeichnung als wäre sie eine einzige physikalische
Aufzeichnung.
Ein Segment einer Überlauf-Aufzeichnung - siehe Aufzeichnungs-Überiauf·
Ein Bedienungscode ist ein 8-Bit-Befehl (zuzüglich Parität), der über die periphere
Untersystem-Schnittstelle von dem peri-
25/097 8
Ausdruck
Spur
Schreiben
pheren Prozessor zur Eingabe/Ausgabe-Steuereinrichtung
übertragen wird und der für die Bezeichnung der folgenden Informationsübertragung über die Schnittstelle
sowie für die Auslösung der Aktivität in der Eingabe/Ausgabe-Steuereinrichtung benutzt wird.
Einer der konzentrischen Aufzeichnungsbereiche auf einer Plattenoberfläche.
Jede Spur in bzw. auf einem Zylinder ist durch eine - eindeutige Spuradresse
identifiziert, die den in Präge kommenden
lese/Schreib-Kopf angibt, der bei der
Bezugnahme der Einrichtung zu benutzen ist. '
Das Schreiben gibt die Richtung des Dialog-Flusses (von der Eingabe/Ausgabe-Steuereinrichtung
zu dem peripheren Prozessor) an, das heisst, dass eine Ausgabeoperation
vorliegt.
509825/097 8
Claims (22)
- Patentansprüche/iy Prozessor mit Hardware-Einrichtungen für die bedarfsweise Übertragung von Daten zur Ausführung von unterschiedlichen Arten von Befehlen, umfassend zumindest eine periphere Einrichtung, die mit dem Prozessor verbunden ist, der ein Mikroprogramm-Steuersystem enthält, dadurch gekennzeichnet, daß das Mikroprogramm-Steuersystem (300) eine adressierbare Speichereinrichtung (304-2) mit einer Vielzahl von Speicherplätzen enthält, daß zumindest eine Gruppe der in einer Vielzahl vorgesehen Speicherplätze für die Speicherung von Mikrobefehlen einer ersten Routine ausgenutzt ist, welche zur Prozessor-Leitung im Zuge der Ausführung von Operationen ausgenutzt sind, die sich auf einen Typ der Befehle beziehen, daß die genannte erste Routine einen Mikrobefehl enthält, der ein codiertes Steuerbyte undfürMikrobefehle einer zweiten Routine/eine solche Konditionierung der Prozessor-Hardwareeinrichtungen aufweist, daß jene Operationen entsprechend bestimmten Eigenschaften der betreffenden einen peripheren Einrichtung für die Ausführung der durch das Steuerbyte angegebenen Operationen ausgeführt werden, daß eine Registerspeichereinrichtung (314) mit der Speichereinrichtung verbunden ist und zumindest ein Informationssteuerbyte zu speichern imstande ist, daß mit der Speichereinrichtung eine Verzweigungssteuereinrichtung (304-20, 304-28, 304-30, 304-34, 304-36) verbunden ist, die auf für den betreffenden einen Befehlstyp kennzeichnende Signale hin die Speichereinrichtung veranlaßt, eine Verzweigung zu dem betreffenden einen Mikrobefehl hin vorzunehmen, derart, daß die betreffende Speichereinrichtung eine Bit-Darstellung des genannten Steuerbytes speichert, und daß die Verzweigungssteuer-509825/0978einrichtung Schaltungsanordnungen aufweist, die durch bestimmte, in dem zweiten Satz von Mikrobefehlen enthaltene Mikrobefehle veranlaßt werden, auf das genannte Steuerbyte zum Zwecke der Überprüfung der darin enthaltenen Bits Bezug zu nehmen, derart, daß diejenigen Operationen bestimmt werden, die von den-Hardwareeinrichtungen in Verbindung mit der Übertragung von Daten auszuführen sind, die für die Ausführung des betreffenden einen Befehlstyps erforderlich sind.
- 2. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß die Verzweigungssteuereinrichtung ferner eine mit der Speichereinrichtung verbundene Rückführ-Registereinrichtung enthält und daß mit der Speichereinrichtung und der genannten Registereinrichtung eine Verzweigungsschaltungsanordnung verbunden ist, die auf das Auftreten eines weiteren Mikrobefehls bzw. Mikrobefehlstyps eine laufende Adresse um 1 vergrößert und diese vergrößerte Adresse in die Rückführ-Registerspeichereinrichtung einspeichert und die betreffende Speichereinrichtung veranlaßt, eine Verzweigung zu einem zweiten Satz von Mikrobefehlen hin auszuführen.
- 3. Prozessor nach Anspruch 2, dadurch gekennzeichnet, daß die Verzweigungssteuereinrichtung eine mit der Speichereinrichtung und der Registereinrichtung verbundene Steuereinrichtung enthält, die auf eine erfolgreiche Beendigung des zweiten Satzes von Mikrobefehlen hin den genannten weiteren Mikrobefehl bzw. Mikrobefehlstyp an einer festgelegten Stelle innerhalb der zweiten Routine ausführt, derart, daß die Speichereinrichtung veranlaßt wird, auf den Mikrobefehl der ersten Routine Bezug zu nehmen, der durch den Adresseninhalt der Rückführ-Registerspeichereinrichtung angegeben ist.509825/0978
- 4. Prozessor nach Anspruch 2, dadurch gekennzeichnet, daß der genannte weitere Mikrobefehlstyp ein codierter Verzweigungs-Mikrobefehl ist, der folgende Feldbereiche enthält:Einen Operationscode-Peldbereich, der so codiert ist, daß eine unbedingte Verzweigungsoperation angegeben ist; einen Verzweigungsadressen-Feldbereich, der so codiert ist, daß ein Speicherplatz angegeben ist, der dein Anfang der zweiten Routine-Mikrobefehle entspricht; einen Vorverzweigungs-Feldbereich, der so codiert ist, daß er die Speicherung einer Rückkehradresse angibt; und einen Verzweige-zur-Adresse-Bedingungs-Feldbereich, der so codiert ist, daß er einen Speicherplatz angibt, der dem genannten Verzweigungsadressen-Feldbereich entspricht.
- 5. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß die genannte eine periphere Einrichtung eine Speichereinrichtung ist, daß die genannten Mikrobefehle der ersten Routine eine Leitungs-Routine aus einer Anzahl von Leitungs-Routinen angibt, die den Prozessor im Zuge der Ausführung jener Operationen leiten, die sich auf die Interpretierung der verschiedenen Typen von Befehlen bezüglich des Lesens oder Schreibens einer Information aus bzw. in eine periphere Einrichtung beziehen, und daß die Mikrobefehle der zweiten Routine eine von zwei Klassen von Ausführungs-Routinen definieren, die die Hardware-Einrichtungen hinsichtlich der Formatbildung der gespeicherten Information, des Übertragungstyps und der Übertragungsfrequenz der betreffenden einen Einrichtung konditionieren.
- 6. Prozessor nach Anspruch 1, dadurch gekennzeichnet, daß der genannte eine Mikrobefehl ein Verknüpfungs-Mikrobefehl ist,50 9 8 25/0978der zumindest einen Operationscode-Feldbereich und einen Konstanten-Feldbereich entsprechend dem Steuerbit enthält und der so codiert ist, daß er ein bestimmtes Bitmuster enthält, das speziell für den genannten einen Befehlstyp vorgesehen ist, daß die Speichereinrichtung eine Decoderanordnung'enthält, die in der Vielzahl der Speicherplätze' gespeicherte Mikrobefehle decodiert, und daß die Decoderanordnung auf den Operationscode-Feldbereich des genannten einen Mikrobefehls der Verknüpfungs-Mikrobefehle hin Signale erzeugt, durch die eine dembestimmten Bit-Muster entsprechende Bit-Darstellung in die Speiehereinrichtung geladen wird.
- 7. Prozessor nach Anspruch 6, dadurch gekennzeichnet, daß bestimmte Mikrobefehle den Verzweigungs-Mikrobefehlen entsprechen, deren jeder einen Verzweigungs-Ein-Zustand auf der Basis des Zustande eines bestimmten Bits des Steuerbytes festlegt, und daß die Schaltungsanordnung durch die Verzweigungs-Ein-Zustands-Mikrobefehle veranlaßt wird, die betreffenden Operationen und diejenigen Bereiche der zweiten Routine-Mikrobefehle zu bestimmen,, die für die Ausführung durch die Hardware-Einrichtungen für einen erfolgreichen Abschluß des genannten einen Befehlstyps erforderlich sind.
- 8. Prozessor nach Anspruch 6, dadurch gekennzeichnet, daß das genannte bestimmte Bitmuster ein Leitungs-Byte mit einer Vielzahl von Bits enthält, die entsprechend folgendem Codeplan codiert sind:Ein erstes Bit ist so codiert, daß es angibt, wann die Prozessor-Hardware-Einrichtungen eine Information zwischen der genannten einen peripheren Einrichtung und einer509825/0978- '■' ι-*:..■:■?',■ :'„■.:■* -„■Speichereinrichtung zu übertragen haben; ein zweites Bit ist so codiert, daß es angibt, wann die . Prozessor-Hardware-Einrichtungen Fehler in der Information, die von der genannten einen Einrichtung her gelesen wird, unberücksichtigt zu lassen haben;dritte und vierte Bits sind so codiert, daß sie angeben, wann die zweite Routine auf die Beendigung der Verarbeitung von unterschiedlichen bestimmten Teilen der genannten Information zurückzukehren hat;ein fünftes Bit ist so codiert, daß es angibt, wann die Hardware-Einrichtungen der ersten Routine den Zustand zu signalisieren haben, der sich aus den Operationen ergibt, die von den Hardware-Einrichtungen während der Durchführung der zweiten Routine ausgeführt werden, und ein sechstes Bit ist so codiert, daß es angibt, wann die Prozessor-Hardware-Einrichtungen die Datenübertragung zu beenden haben.
- 9. Prozessor nach Anspruch 8, dadurch gekennzeichnet, daß durch den Zustand des genannten dritten Bits festgelegt ist, wann die genannte zweite Routine die Steuerung auf die erste Routine nach erfolgter Verarbeitung eines ersten bestimmten Teiles der genannten Information zurückzuführen hat, und daß durch den Zustand des genannten vierten Bits angegeben ist, wann die zweite Routine die Steuerung auf die erste Routine in dem Fall zurückzuführen hat, daß diese bereit ist, mit der Verarbeitung eines zweiten bestimmten Teiles der genannten Information ζμ beginnen.
- 10. Prozessor nach Anspruch 9, dadurch gekennzeichnet, daß die genannte eine periphere Einrichtung eine sich drehende Magnetspeichereinheit ist, die eine Vielzahl von Datenaufzeichnungen längs einer Vielzahl von kreisförmigen Spuren509825/0978zu speichern gestattet, daß jede Aufzeichnung normalerweise einen Zähl-Feldteil, einen Kennzeichen-Feldteil und einen Daten-Feldteil aufweist und daß der genannte eine Teil der bestimmten Teile der Information einem Zähl-Feldteil einer der in einer Vielzahl vorgesehenen Datenaufzeichnungen entspricht, während der genannte zweite bestimmte Teil der·genannten Information einem Daten-Feldteil einer der in einer Vielzahl vorgesehenen Datenaufzeichnungen entspricht.
- 11. Prozessor nach Anspruch 10, dadurch gekennzeichnet, daß der genannte eine Befehlstyp ein Lese-Befehlstyp ist, der das Auslesen der Zähl-, Kennzeichen- und Datenteile bzw. -bereiche der betreffenden einen Datenaufzeichnung festlegt, und daß das erste Bit bis sechste Bit des Leitungs-Bytes anfänglich als 101000 codiert ist.
- 12. Prozessor nach Anspruch 10, dadurch gekennzeichnet, daß der eine Befehlstyp ein Befehlscode-Byte enthält, das so codiert ist, daß es die Verzweigungssteuereinrichtung veranlaßt, die Speichereinrichtung eine Verzweigung zu der genannten ersten Routine hin ausführen zu lassen, die das bestimmte Muster des Leitungs-Bytes auswählt, welches derart codierte Bits enthält, daß eine Angabe darüber erfolgt, wie jene Teile der betreffenden einen Datenaufzeichnung von den Prozessor-Hardware-Einrichtungen zu verarbeiten sind.
- 13. Prozessor nach Anspruch 9, dadurch gekennzeichnet, daß er mit einer Vielzahl von sich drehenden Speichereinrichtungen verbunden ist, die unterschiedliche Datenträger-Formateigenschaften besitzen, daß die adressierbare Speichereinrichtung eine Vielzahl von zweiten Mikrobefehls-Routinen509825/0 9 78enthält, deren jede Mikrobefehle erhält, die die Hardware-Einrichtungen veranlassen, den genannten einen Befehlstyp auszuführen, der eine bestimmte Einrichtung der genannten Einrichtungen erfaßt, die festgelegte Datenträger-Formateigenschaften besitzen, daß die Verzweigungssteuereinrichtung die Speichereinrichtung veranlaßt, eine Verzweigung zu der genannten ersten Routine hin vorzunehmen, derart, daß das Steuerbyte abgeholt und durch die erste Routine die Speichereinrichtung veranlaßt wird, auf einen ersten Mikrobefehl der zweiten Routinen-Mikrobefehle Bezug zu nehmen, und daß die genannte eine Routine- der zweiten Routinen die Verzweigungssteuereinrichtung veranlaßt, für die Ausführung eine der zweiten Routinen in Übereinstimmung mit den festgelegten Datenträger-Formateigenschaften derjenigen Einrichtung auszuwählen, die in die Ausführung des genannten einen Befehls einbezogen ist.
- 14. Prozessor nach Anspruch 9, dadurch gekennzeichnet, daß die adressierbare Speichereinrichtung eine Vielzahl von ersten und zweiten Routinen, jeden der ersten Sätze von Mikrobefehlen für die Ausführung eines bestimmten Befehlstyps und an einer bestimmten Stelle einen Mikrobefehl enthält, der so codiert ist, daß er ein bestimmtes Leitungs-Byte-Bitmuster enthält, welches einem in Frage kommenden Mikrobefehlssatz der genannten zweiten Sätze von Mikrobefehlen anzeigt, welche bestimmten Operationen für den betreffenden bestimmten Befehlstyp auszuführen sind, der durch einen der genannten ersten Befehlssätze durchgeführt wird.
- 15. Prozessor nach Anspruch 14, dadurch gekennzeichnet, daß die ersten Sätze von Mikrobefehlen der genannten ersten509825/0978Routinen eine Anzahl von Lese-Leitungs-Routinen und Schreib-Leitungs-Routinen enthalten, daß die Verzweigungssteuereinrichtung durch Signale, die kennzeichnend sind für den betreffenden Befehlstyp, veranlaßt werden, die Speichereinrichtung eine Bezugnahme auf eine entsprechende Leitungs-Routine der genannten Lese- und Schreib-Leitungs-zu lassen
Routinen aus führen/, und daß die genannten zweiten Sätzevon Mikrobefehlen zumindest eine gemeinsame Lese-Ausführungs-Routine und eine gemeinsame Schreib-Ausführungs-Routine enthalten, durch welche Routine die Hardware-Einrichtungen veranlaßt werden, Lese-Operationen bzw. Schreib-Operationen in der Weise auszuführen, wie sie durch das Leitungs-Byte-Bitmuster festgelegt ist, auf das von der betreffenden einen" Leitungs-Routine Bezug genommen ist. - 16. Peripheres Verarbeitungssystem mit einem mikroprogrammierbaren Eingabe/Ausgabe-Prozessor, insbesondere nach einem der Ansprüche 1 bis 15» unter Verwendung von Hardware-Einrichtungen für die Ausführung einer Vielzahl von unterschiedlichen Befehlen sowie für die Steuerung des Betriebs einer Vielzahl von Eingabe/Ausgabe-Speichereinrichtungen, die unterschiedliche Datenträger-Formateigenschaften besitzen, dadurch gekennzeichnet, daß ein adressierbarer Steuerspeicher (304-2) mit einer Vielzahl von Speicherplätzen vorgesehen ist, daß Gruppen der betreffenden Speicherplätze zumindest zwei erste und zweite Klassen von Mikroprogramm-Routinen speichern, daß jede der Mikroprogramm-Routinen der genannten ersten Klasse einen ersten Mikrobefehlstyp mit einem Operationscodefeld und einem Konstantenfeld enthält, . welches so codiert ist, daß es ein bestimmtes Bitmuster aufweist,509825/0978durch das Operationen festgelegt werden, die während der Ausführung des betreffenden einen Befehlstyps auszuführen sind, daß jede Mikroprogramm-Routine der zweiten Klasse von Mikroprogramm-Routinen Mikrobefehle enthält, die Operationen angeben, welche die Ausführung einer ersten oder einer zweiten Gruppe von unterschiedlichen Befehlstypen durch eine der in einer Vielzahl vorgesehenen Eingabe/Ausgabe-Speichereinrichtungen freigeben, welche Speichereinrichtung eine bestimmte Eigenschaft der unterschiedlichen Datenträger-Formateigenschaften besitzt, daß mit dem Steuerspeicher eine Decodereinrichtung (304-38, 304-40) verbunden ist, die Steuersignale auf verschiedene Mikrobefehle hin zu erzeugen gestattet, daß mit dem Steuerspeicher eine Mehrzweckregisterspeichereinrichtung (314) verbunden ist, daß mit der Mehrzweckregistereinrichtung eine Rechen- und Verknüpfungseinheit (316) verbunden ist, die ein Befehlssteuerbyte aufzunehmen vermag, welches so codiert ist, daß es angibt, welcher der in einer Vielzahl vorgesehenen unterschiedlichen Befehlstypen von dem Prozessor auszuführen ist, daß mit dem Steuerspeieher und der Rechen- und Verknüpfungseinrichtung eine Verzweigungssteuereinrichtung (304-20, 304-25, 304-30, 304-34, 304-36) verbunden ist, die eine Schaltungsanordnung enthält, welche durch das genannte Befehlssteuerbyte veranlaßt wird, eine Verzweigung zu einer bestimmten Mikroprogramm-Routine der genannten ersten Klassen von Mikroprogramm-Routinen hin auszuführen, und daß die Decodiereinrichtung durch den Operationscode-Feldteil des genannteil ersten Mikrobefehlstyps veranlaßt wird. Signale für die Speicherung einer Signaldarstellüng des genannten bestimmten Bitmusters in der Mehrzweckregisterspeichereinrichtung zum Zwecke der Bezugnahme durch eine ausgewählte Mikroprogramm-Routine509825/0978der genannten zweiten Klassen von Mikroprogramm-Routinen zu erzeugen.
- 17. Verarbeitungssystem nach Anspruch 16, dadurch gekennzeichnet, daß die Verzweigungssteuereinrichtung eine mit dem Steuerspeicher verbundene Rückführ-Registereinrichtung enthält und daß mit dem Steuerspeicher und der genannten Registerspeichereinrichtung eine Verzweigungsschal tungsanordnung verbunden ist, die auf einen weiteren Mikrobefehlstyp hin die laufende Adresse um 1 vergrößert und die betreffende vergrößerte Adresse in die Rückführ-Registerspeichereinrichtung einspeichert sowie den Steuerspeicher veranlaßt, eine Verzweigung zu dem zweiten Satz von Mikrobefehlen hin vorzunehmen.
- 18. S3?-stem nach Anspruch 17, dadurch gekennzeichnet, daß die Verzweigungssteuereinrichtung eine mit dem Steuerspeicher und der Registereinrichtung verbundene Steueranordnung enthält, die auf eine erfolgreiche Beendigung des zweiten Satzes von Mikrobefehlen hin einen weiteren Mikrobefehlstyp an einer genau angegebenen Stelle innerhalb der genannten zweiten Routine ausführt, derart, daß der betreffende Steuerspeicher veranlaßt wird, auf den Mikrobefehl der ersten Routine Bezug zu nehmen, der bzw. die durch den Adresseninhalt der genannten Rückführ-Registerspeichereinrichtung angegeben ist.
- 19. System nach Anspruch 17, dadurch gekennzeichnet, daß der genannte weitere Mikrobefehlstyp ein Verzweigungs-Mikrobefehl ist, der folgende Codierung besitzt:Ein Operationscode-Feldbereich ist so codiert, daß er eine unbedingte Verzweigungsoperation angibt, ein Verzweigungsadressen-Feldbereich ist so codiert,509825/0978daß er einen Speicherplatz angibt, der dem Beginn der zweiten Routine-Mikrobefehle entspricht, ein Vorverzweigungs-Feldbereich ist so codiert, daß er die Speicherung einer Rückführadresse angibt, und ein die Verzweigung zur Adresse betreffender Bedingungs-Feldbereich ist so codiert, daß er einen Speicherplatz entsprechend dem Verzweigungsadressen-Feldbereich angibt.
- 20. System nach Anspruch 16, dadurch gekennzeichnet, daß der genannte eine Mikrobefehl ein Verknüpfungs-Mikrobefehl ist, der zumindest einen Operationscode-Feldbereich und einen Konstanten-Feldbereich entsprechend dem Steuerbyte aufweist und der so codiert ist, daß er ein bestimmtes Muster enthält, insbesondere für den einen Befehlstyp, und daß die Decodereinrichtung eine Schaltungsanordnung enthält, die auf den genannten Operationscode-Feldbereich des genannten einen Verknüpfungs-Mikrobefehls hin Signale erzeugt, die zum Laden der dem.bestimmten Bit-Muster entsprechenden Bit-Darstellung in die Speichereinrichtung dienen.
- 21. System nach Anspruch 20, dadurch gekennzeichnet, daß die genannten bestimmten Mikrobefehle Verzweigungs-Mikrobefehlen entsprechen, deren jeder eine bedingte Verzweigung auf der Grundlage des Zustands eines bestimmten Bits.der Bits des Steuerbytes angibt, und daß die Schaltungsanordnung durch die Verzweigungsbedingungs-Mikrobefehle veranlaßt wird, die Operationen festzulegen und diejenigen Teile der zweiten Routine-Mikrobefehle anzugeben, die von deiiJHardware-Einrichtungen für eine erfolgreiche Beendigung des genannten einen Befehlstyps auszuführen sind.5098 25/097 8
- 22. Verfahren zur Organisierung einer mikroprogrammierbaren Steuereinrichtung eines mikroprogrammierbaren Prozessors, insbesondere nach einem der Ansprüche 1 bis 15, unter Verwendung einer Hardware, die derart betrieben ist, daß ein vorgegebener Satz von Befehlen zum Zwecke einer erleichterten Vergrößerung der Anzahl von Eingabe/Ausgabe-Speiehereinrichtungen ausführbar ist, die unterschiedliche physikalische Eigenschaften besitzen und die durch Steuerung von dem Prozessor her betreibbar sind, dadurch gekennzeichnet, daß zunächst zumindest erste und zweite Klassen von Mikroprogramm-Routinen (F198) bereitgestellt werden, daß durch jede Routine-der ersten Klasse von Routinen der Prozessor hinsichtlich der Durchführung von Operationen für die Verarbeitung von Daten geleitet wird, die von sämtlichen Speichereinrichtungen-gespeichert werden, daß durch jede Routine der zweiten Klasse von Routinen die Prozessor-Hardware veranlaßt wird, Operationen einer ersteh oder zweiten Kategorie des betreffenden Satzes von Befehlen auszuführen, in die eine bestimmte Anfangszahl der genannten Einrichtungen einbezogen ist, daß ein Paar von Routinen der genannten zweiten Klasse eingeführt wird und die genannte Hardware veranlaßt wird, Operationen der genannten ersten und zweiten Kategorien des betreffenden Satzes von Befehlen in dem Fall auszuführen, daß eine weitere Eingabe/Ausgabe-Speichereinrichtung hinzugefügt wird, deren physikalische Eigenschaften unterschiedlich sind von denen der in einer Anzahl vorgesehenen Eingabe/ Ausgabe-Speichereinrichtungen, daß in jede Routine eines bestimmten Paares der ajifangs bereitgestellten Routinen der genannten zweiten Klasse ein Verzweigungs-Mikrobefehl an einer ausgewählten Stelle eingeführt wird, durch den als Angabe einer Verzweigungs-Testbedingung eine physikalische Differenz zwischen der genannten anderen Eingabe/Aus-509825/0978gabe-Speichereinrichtung einer zuvor angeschlossenen Einrichtung angegeben wird, und daß eine Verzweigungs-• steuereinrichtung (304-28) bereitgestellt wird, die auf die Ergebnisse der Überprüfung des genannten Zustandes hin eine Auswahl zwischen den Routinen der zweiten Klasse in denselben Kategorien vornimmt, derart, daß entsprechende Befehle des genannten Satzes von Befehlen ausgeführt werden.23» Verfahren zur Organisierung einer mikroprogrammierbaren Steuereinrichtung eines mikroprogrammierbaren Prozessors, insbesondere nach einem der Ansprüche 1 bis 15, wobei der Prozessor derart betrieben ist, daß ein vorgegebener Satz von Befehlen zum Zwecke der Erleichterung der Vergrößerung der Anzahl von Befehlen in dem betreffenden Satz von Befehlen zur Steuerung des Betriebs einer Vielzahl von Eingabe/Ausgabe-Speichereinrichtungen ausgeführt wird, die unterschiedliche physikalische Eigenschaften besitzen, wobei jeder Befehl durch ein Befehlssteuerbyte mit einem bestimmten Bitmuster festgelegt wird, dadurch gekennzeichnet, daß zunächst zumindest erste und zweite Klassen von Mikroprogramm-Routinen (F198) bereitgestellt werden, daß auf jede Routine der zu der ersten Klasse von Routinen gehörenden Routinen von dem genannten Befehlssteuerbyte Bezug genommen wird, derart, daß der Prozessor bei der Durchführung von Operationen zur Verarbeitung von Daten geleitet wird, die von sämtlichen Speichereinrichtungen gespeichert werden, daß jede Routine der zweiten Klasse von Routinen dazu herangezogen wird, die Prozessor-Hardware zu veranlassen, Datenübertragungsoperationen einer ersten oder zweiten Kategorie des genannten Satzes von Befehlen für eine bestimmte Speichereinrichtung der509825/0978Vielzahl von Speiehereinrichtungen in- Übereinstimmung mit einem Leitungs-Byte-Bitmuster auszuführen, das durch einen an einer bestimmten Stelle innerhalb jeder Routineenthaltenen Mikrobefehle der ersten Klasse von Mikroprogramm-Routznen^angegeben ist, daß eine zusätzliche Routine der genannten ersten Klasse für die Leitung .des Prozessors ;bei einem Typ der Datenübertragungsoperation eingeführt wird, welche durch einen neuen Befehl angegeben ist, daß die genannte Routine an einer bestimmten Stelle mit einem Mikrobefehl versehen ist, der so codiert ist, daß er ein Leitungs-Byte-Bitmuster angibt, welches verschieden ist von den Leitungs-Byte-Bitmustern, die in den anfangs bereitgestellten Routinen der genannten ersten Klasse enthalten sind, daß die genannte Routine einen eine Verzweigung mit einer Rückkehr betreffenden Mikrobefehl enthält, der so codiert ist, daß durch ihn eine Bezugnahme auf zumindest eine bestimmte Routine der anfänglich vorgesehenen Routinen der zweiten Klasse von Routinen vorgenommen wird, und daß eine Verzweigungssteuereinrichtung (304-28) bereitgestellt wird, die auf das Befehls-Steuerbyte hin, welches den neuen Befehl anzeigt, eine Verzweigung zu der genannten zusätzlichen Routine hin ausführt, derart, daß die bestimmte eine Routine der zweiten Klasse von"Routinen die Hardware in der durch das unterschiedliche Leitungs-Byte-Bitmuster erforderlichen Weise für die Ausführung des genannten neuen Befehls mittels der anfangs vorgesehenen Routinen der genannten zweiten Klasse leitet,. . " -509825/0978Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US425769A US3909800A (en) | 1973-12-18 | 1973-12-18 | Improved microprogrammed peripheral processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2459956A1 true DE2459956A1 (de) | 1975-06-19 |
Family
ID=23687960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19742459956 Ceased DE2459956A1 (de) | 1973-12-18 | 1974-12-18 | Prozessor und diesen verwendendes peripheres verarbeitungssystem |
Country Status (6)
Country | Link |
---|---|
US (1) | US3909800A (de) |
JP (1) | JPS594736B2 (de) |
CA (1) | CA1027251A (de) |
DE (1) | DE2459956A1 (de) |
FR (1) | FR2295484A1 (de) |
GB (1) | GB1496779A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109828491A (zh) * | 2019-01-08 | 2019-05-31 | 深圳市爱尚智联科技有限公司 | 按键电路和按键控制装置 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1499742A (en) * | 1974-10-30 | 1978-02-01 | Motorola Inc | Interface adaptor circuits in combination with a processo |
US4027293A (en) * | 1975-09-12 | 1977-05-31 | Control Data Corporation | Microcode program sequencer |
JPS6038740B2 (ja) * | 1976-04-19 | 1985-09-03 | 株式会社東芝 | デ−タ処理装置 |
US4261033A (en) * | 1977-01-19 | 1981-04-07 | Honeywell Information Systems Inc. | Communications processor employing line-dedicated memory tables for supervising data transfers |
US4103338A (en) * | 1977-02-28 | 1978-07-25 | Xerox Corporation | Self-diagnostic method and apparatus for disk drive |
US4210959A (en) * | 1978-05-10 | 1980-07-01 | Apple Computer, Inc. | Controller for magnetic disc, recorder, or the like |
USRE36989E (en) * | 1979-10-18 | 2000-12-12 | Storage Technology Corporation | Virtual storage system and method |
US4853956A (en) * | 1983-05-20 | 1989-08-01 | American Telephone And Telegraph Company | Communication system distributed processing message delivery system |
US4571673A (en) * | 1983-09-29 | 1986-02-18 | Tandem Computers Incorporated | Enhanced CPU microbranching architecture |
JPS60144597U (ja) * | 1984-03-08 | 1985-09-25 | 辰野 幸正 | 防寒材 |
US4771378A (en) * | 1984-06-19 | 1988-09-13 | Cray Research, Inc. | Electrical interface system |
US5390304A (en) * | 1990-09-28 | 1995-02-14 | Texas Instruments, Incorporated | Method and apparatus for processing block instructions in a data processor |
JPH065949U (ja) * | 1991-12-13 | 1994-01-25 | 株式会社アサヒゴム | 保温材料 |
US6032262A (en) * | 1995-04-18 | 2000-02-29 | Emc Corporation | Disk drive reliability determination system and method |
GB2323944A (en) * | 1997-04-01 | 1998-10-07 | Ibm | Parallel data processing system |
EP1008051A4 (de) | 1997-03-12 | 2007-04-25 | Storage Technology Corp | Netzwerkangehängtes virtuelles banddaten-speicheruntersystem |
US6658526B2 (en) | 1997-03-12 | 2003-12-02 | Storage Technology Corporation | Network attached virtual data storage subsystem |
US20010039564A1 (en) * | 1997-10-20 | 2001-11-08 | Victor Hahn | Log on personal computer |
JP3829504B2 (ja) * | 1998-02-16 | 2006-10-04 | 株式会社デンソー | 情報処理装置 |
US6094605A (en) | 1998-07-06 | 2000-07-25 | Storage Technology Corporation | Virtual automated cartridge system |
US6330621B1 (en) | 1999-01-15 | 2001-12-11 | Storage Technology Corporation | Intelligent data storage manager |
US6834324B1 (en) | 2000-04-10 | 2004-12-21 | Storage Technology Corporation | System and method for virtual tape volumes |
US20040024992A1 (en) * | 2002-08-02 | 2004-02-05 | Shan-Chyun Ku | Decoding method for a multi-length-mode instruction set |
US7895483B2 (en) * | 2007-05-25 | 2011-02-22 | International Business Machines Corporation | Software memory leak analysis using memory isolation |
US10154700B2 (en) | 2012-05-29 | 2018-12-18 | Nokia Technologies Oy | Wearable apparatus |
US10275254B2 (en) * | 2017-03-08 | 2019-04-30 | International Business Machines Corporation | Spin loop delay instruction |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3377619A (en) * | 1964-04-06 | 1968-04-09 | Ibm | Data multiplexing system |
US3588831A (en) * | 1968-11-13 | 1971-06-28 | Honeywell Inf Systems | Input/output controller for independently supervising a plurality of operations in response to a single command |
GB1312504A (en) * | 1970-05-20 | 1973-04-04 | Ibm | Control unit for serial data storage apparatus |
US3654617A (en) * | 1970-10-01 | 1972-04-04 | Ibm | Microprogrammable i/o controller |
US3713108A (en) * | 1971-03-25 | 1973-01-23 | Ibm | Branch control for a digital machine |
US3736567A (en) * | 1971-09-08 | 1973-05-29 | Bunker Ramo | Program sequence control |
US3753236A (en) * | 1972-03-31 | 1973-08-14 | Honeywell Inf Systems | Microprogrammable peripheral controller |
US3713107A (en) * | 1972-04-03 | 1973-01-23 | Ncr | Firmware sort processor system |
US3766532A (en) * | 1972-04-28 | 1973-10-16 | Nanodata Corp | Data processing system having two levels of program control |
US3766526A (en) * | 1972-10-10 | 1973-10-16 | Atomic Energy Commission | Multi-microprogrammed input-output processor |
-
1973
- 1973-12-18 US US425769A patent/US3909800A/en not_active Expired - Lifetime
-
1974
- 1974-12-17 FR FR7441611A patent/FR2295484A1/fr active Granted
- 1974-12-17 JP JP49144174A patent/JPS594736B2/ja not_active Expired
- 1974-12-17 CA CA216,262A patent/CA1027251A/en not_active Expired
- 1974-12-18 GB GB54622/74A patent/GB1496779A/en not_active Expired
- 1974-12-18 DE DE19742459956 patent/DE2459956A1/de not_active Ceased
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109828491A (zh) * | 2019-01-08 | 2019-05-31 | 深圳市爱尚智联科技有限公司 | 按键电路和按键控制装置 |
Also Published As
Publication number | Publication date |
---|---|
FR2295484A1 (fr) | 1976-07-16 |
JPS594736B2 (ja) | 1984-01-31 |
US3909800A (en) | 1975-09-30 |
FR2295484B1 (de) | 1980-07-04 |
CA1027251A (en) | 1978-02-28 |
JPS5093552A (de) | 1975-07-25 |
GB1496779A (en) | 1978-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2459956A1 (de) | Prozessor und diesen verwendendes peripheres verarbeitungssystem | |
DE2459975A1 (de) | Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem | |
DE69730276T2 (de) | Vorrichtung und Verfahren zur Erleichterung der Vermeidung von exzeptionellen bestimmten Zuständen während des Ablaufs eines Programmes | |
DE3689184T2 (de) | Vorabrufmonitor. | |
DE2316296C2 (de) | Mikroprogrammierbarer Prozessor | |
DE3741850A1 (de) | Ausfuehrungseinheit fuer einen i/o-prozessor | |
DE2806024A1 (de) | Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit | |
DE2612083A1 (de) | Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung | |
DE1524102C3 (de) | Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine | |
DE2500006A1 (de) | Wirtsdatenverarbeitungssystem und verfahren zur emulation von eingabe/ausgabe- befehlen | |
DE2755952C2 (de) | ||
DE2612139A1 (de) | Ein/ausgang-steuerungssystem | |
DE2847934A1 (de) | Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher | |
DE2806045A1 (de) | Dv-system mit pufferspeicher | |
DE1499200B2 (de) | Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung | |
DE2750721A1 (de) | Ein/ausgabe-system | |
DE1449532B2 (de) | Datenverarbeitungsanlage | |
DE2813128A1 (de) | Mikroprogrammspeicher | |
DE2517276A1 (de) | Datenverarbeitungssystem | |
DE2248296A1 (de) | Programmsteuereinrichtung | |
DE1929010B2 (de) | Modular aufgebaute datenverarbeitungsanlage | |
DE2164793A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit | |
DE2440628A1 (de) | Datenverarbeitungsanlage mit mikroprogrammierung | |
DE2626703A1 (de) | Intern programmierbares datenverarbeitungssystem | |
DE2856680A1 (de) | Befehlspuffer fuer ein datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8131 | Rejection |