DE2459975A1 - Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem - Google Patents

Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem

Info

Publication number
DE2459975A1
DE2459975A1 DE19742459975 DE2459975A DE2459975A1 DE 2459975 A1 DE2459975 A1 DE 2459975A1 DE 19742459975 DE19742459975 DE 19742459975 DE 2459975 A DE2459975 A DE 2459975A DE 2459975 A1 DE2459975 A1 DE 2459975A1
Authority
DE
Germany
Prior art keywords
signals
control
register
memory
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19742459975
Other languages
English (en)
Other versions
DE2459975C2 (de
Inventor
Jun Frank V Cassarino
Jun Edward F Getson
Karl F Laubscher
Albert R Mclaughlin
Edwin J Pinheiro
John A Recks
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2459975A1 publication Critical patent/DE2459975A1/de
Application granted granted Critical
Publication of DE2459975C2 publication Critical patent/DE2459975C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

DIpWng.Hein0ardehle
/j
/ München, den 18, Dez. 197%, .
Mein Zeichen: P 2069
Anmelders Honeywell Information Systems Inc. 200 Smith Street
Waltham, Mass. V. St. A.
Mikroprogrammierter peripherer Prozessor sowie diesen verwendendes peripheres Untersystem
Die vorliegende Erfindung bezieht sich auf eine Anordnung zur Verbindung einer Vielzahl von peripheren Einrichtungen zum Zwecke der Herstellung einer Nachrichtenverbindung mit einem Datenverarbeitungssystea. Die Erfindung bezieht sich insbesondere auf periphere Steuereinrichtungen, die eine geeignete Schnittstelle für eine Vielzahl von Massenspeichereinrichtungen, wie Platteneinrichtungen, bereitstellen.
Um eine größere Wirtschaftlichkeit bei der Verarbeitung von Eingabe/Ausgabe-Operationen zu erzielen, ist die Last der Steuerung an Eingabe/Ausgabe-Operationen auf die peripheren Steuereinrichtungen verschoben worden. Dies hat seinerseits in starkem Ausmaß die Kompliziertheit derartiger Steuerein-
509825/0980
richtungen erhöht, und zwar insbesondere dort, wo die Steuereinrichtungen erforderlich sind, um Datentransferoperationen zu behandeln, welche Einrichtungen einschließen, die eine Vielzahl unterschiedlicher Betriebseigenschaften besitzen. Um die Kosten derartiger Steuereinrichtungen zu senken, benutzen viele Systeme eine Mikroprogrammierung. Im allgemeinen haben die Steuereinrichtungen Allzweck-Mikroprozessoren mit maßgeschneiderten Mikroprogrammen für unterschiedliche Arten von Einrichtungen verwendet.
Ein wesentlicher Nachteil der zuvor angegebenen Lösung besteht darin, daß die Geschwindigkeit der durch die mikroprogrammierte periphere Steuereinrichtung bewirkten Datentransferoperationen durch die Verarbeitungsgeschwindigkeit des Steuereinrichtungs-Mikroprozessors begrenzt ist. Um angemessen wirksame bzw. wirtschaftliche Transfergeschwindigkeiten zu erzielen, muß der Mikroprozessor bei höheren Frequenzen betrieben werden, um die erforderlichen Transfer- und Steuersignale zu erhalten, die mit den Verarbeitungsgeschwindigkeiten bzw. -frequenzen der Einrichtungen vergleichbar sind. Dies kann seinerseits erheblich die Kosten der peripheren Steuereinrichtung anheben. Wenn das System Jedoch benötigt wird, um schnellere Eingabe/Ausgabe-Einrichtungen zu bedienen, bringt dies normalerweise die Notwendigkeit nach einem vollständigen Neuaufbau des Mikroprozessors mit sich.
Der Erfindung liegt demgemäß die Aufgäbe zu Grunde, einen mikroprogrammierten peripheren Prozessor für die Verarbeitung von Datentransferoperationen zwischen einem Kanal und einer peripheren Einrichtung mit einer Frequenz zu schaffen, die unabhängig von der Prozessor-Verarbeitungsfrequenz ist.
609825/0980
Darüber hinaus soll ein peripherer Prozessor für die Behandlung von Datentransferoperationen zwischen einem Kanal und einer Vielzahl von peripheren Einrichtungen geschaffen werden, die eine Vielzahl von unterschiedlichen Betriebseigenschaften aufweisen. Schließlich soll ein peripherer Prozessor geschaffen werden, der imstande ist, hohe Transfergeschwindigkeiten unter Verwendung eines Minimums an anordnungsgemäßem Aufwand zu bedienen.
Gelöst wird die vorstehend aufgezeigte Aufgabe erfindungsgemäßdurch einen mikroprogrammierten peripheren Prozessor mit einem Steuerspeicher, der eine Anzahl von Mikroprogrammen für die Verarbeitung von Befehlen enthält, die von einer Datenverarbeitungseinheit und einer peripheren Einrichtung aus einer Anzahl von peripheren Einrichtungen abgegeben werden. Der periphere Prozessor bzw. die periphere Zentraleinheit enthält ferner eine Folgesteuerurigs-Hardwareanordnung, die so ausgelegt ist, daß sie durch Mikrobefehle aus dem Steuerspeicher auf den abgegebenen Befehl hin konditioniert wird. Auf eine derartige Konditionierung hin stellt die Hardware-Anordnung verschiedene Datenübertragungswege zwischen einer bezeichneten peripheren Einrichtung und einem Kanal her. Danach läuft die Übertragung unter der Steuerung der Hardware-Anordnung bei einer maximalen Frequenz weiter. Während der Datenübertragung ist der Mikroprogramm-Prozessor imLeerlauf, oder aber er führt Operationen unabhängig von der Datenübertragung bzw. dem Datentransfer aus, bis er ein Signal von der Hardware-Anordnung erhält, welches Signal eine Beendigung der Übertragungsoperation anzeigt. Auf die Aufnahme des Signals hin wird die Steuerungs-Verarbeitung wieder auf den mikroprogrammierten Prozessor zurück übertragen.
509825/0980
Demgemäß kann die Anordnung gemäß der vorliegenden Erfindung die Datenübertragung unabhängig von der Verarbeitungsgeschwindigkeit des mikr©programmierten Prozessors weiterführen. Dies bedeutet, daß die Anordnung gemäß der vorliegenden Erfindung die Forderung vermeidet, daß der mikroprogrammierte Prozessor eine Anzahl von Mikrobefehlen für Übertragungs- oder Vergleichs-Bytes ausführen muß, wie dies durch die an den Prozessor abgegebenen Befehle gefordert ist. Darüber hinaus vermeidet die Anordnung gemäß der vorliegenden Erfindung die Notwendigkeit, in den peripheren Prozessor zusätzliche Hardware einführen zu müssen, durch die Operationen verdoppelt werden, welche außerdem durch Mikroprogramme bereitgestellt werden, die normalerweise in einem Allzweck-Mikroprozessor enthalten sind. Damit senkt die Anordnung gemäß der vorliegenden Erfindung die Kosten auf ein Minimum, und zwar durch Verringerung des Anteils der Verdoppelung oder der Redundanz, was sich aus der Ausnutzung eines Allzweck-Mikroprozessors ergibt. Durch Verringern der Verdoppelung erreicht darüber hinaus die Anordnung gemäß der vorliegenden Erfindung eine hohe Zuverlässigkeit.
An Hand von Zeichnungen wird die Erfindung nachstehend beispielsweise näher erläutert, und zwar hinsichtlich ihrer Organisation und hinsichtlich ihres Betriebsverfahrens. Fig. 1 zeigt schematisch ein die Prinzipien der vorliegenden Erfindung verkörperndes Datenverarbeitungssystem. Fig. 2 zeigt in Einzelheiten einen peripheren Prozessor 300 des Systems gemäß Fig. 1.
Fig. 3a zeigt im einzelnen einen PSI-Steuerungsbereich des Prozessors gemäß Fig. 2.
Fig. 3b zeigt im einzelnen Datenpufferregister und einen Steuerbereich 302-50 des Prozessors gemäß Fig. 2.
509825/0980
Fig. 3c zeigt im einzelnen einen Steuerablaufspeicher eines Bereiches 308 des Prozessors gemäß Fig. 2.
Fig. 3d zeigt im einzelnen Zählersteuereinrichtungen des Bereiches 308 gemäß Fig. 2.
Fig. 3© 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.
Fig. 3h zeigt im einzelnen Steuerlogikschaltungen 306-70 sowie Kippschaltungs-1-Schrittschaltungen 306-100 des Bereichs 306 gemäß Fig. 3g. -
Fig. 3i zeigt im einzelnen einen ALU-Bereich 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 Einrlchtungs-Leitungssteuerbereich 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 den Massenspeichereinrichtungen gespeicherten Aufzeichnungen.
Fig. 6a bis 6c zeigen Flußdiagramme, die zur Erläuterung des Betriebs des Prozessors gemäß der vorliegenden Erfindung verwendet werden.
Allgemeine Beschreibung des Gesamtsystems gemäß Fig. 1
Die vorliegende Erfindung findet hauptsächlich in einem Datenverarbeitungssystem Anwendung, welches ein Eingabe/Ausgabe-Unter system, enthält, in welchem ein peripherer Prozessor die
509825/0980
Operation bzw. den Betrieb einer Vielzahl von peripheren Einrichtungen auf Befehle Mn 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 enthalten eine Zentraleinheit (CPU) 102, ein Hauptspeicher-Unter system 104 und eine Eingabe/Ausgabe-Steuereinrichtung (IOC) 106. Die Zentraleinheit führt Befehle eines Programms oder mehrerer Programme aus, die in dem Hauptspeicher-Untersystem 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/0980
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 (PSl) 200 ruft eine Übertragung und eine Steuerverbindung für Austausch-Informationen zwischen einem Massenspeicher-Peripherie-Prozessor 300 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 Äbschluß-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.
509825/0980
Periphere Untersystem-Schnittstellenleitungen
Bezeichnung Beschreibung
-1)0-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, Bedienungscode, 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
S09825/0980
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 Machrichtenverbindung 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 STQ/TMO zurückgesetzt ist. Die STI-Leitung zeigt der Eingabe/Ausgabe-Steuereinrichtung an, daß Daten auf den Daten-Leitungen vorhanden sind, trm Daten zu erhalten, spricht die Eingabe/Ausgabe-Steuereinrichtung an, indem entweder die STQ-Leitung oder die TMO-Leitung gesetzt wird, die die STI-Leitung zurücksetzt. Wenn die Eingabe/Ausgabe-Steuereinrichtung dfeBjfet±ial£bsenkiingder 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/0980
Bezeichnung Beschreibung
"bzw. den Signalanstieg der Leitung STO ermittelt und bereit ist, Daten aufzunehmen, wird dadurch das Potential entweder auf der Leitung STI oder auf der Leitung TMI angehoben. Wenn MSP eine Potentialabsenkung auf der Leitung STO feststellt, werden Daten von den Batenleitungen her aufgenommen.
STO Die Takt-Ausgangsleitung bzw. Äbtast-
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 KuIl 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 Datenieitungen her auf. Sofern erforderlich, kann die Eingabe/Ausgabe-Steuereinrichtung den Dialog an dieser Stelle aufrechterhalten, und zwar durch ¥erzö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/0980
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 der Eingabe/Ausgabe-Steuereinrichtung zu MSP. Diese Leitung wird von der-Ein-. ■ gabe/Ausgabe-Steuereinrichtung dazu benutzt, den laufenden Dialog zu beenden.
Für eine Schreiboperation kann TMO eine der folgenden Bedingungen anzeigen: 1) Für eine Datenübertragung sehließ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/0980
Bezeichnung Beschreibung
Z) 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.
SQ982S/Ö980
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 KuIl 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 Übertragungsfolge 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 STIj es zeigt eine der folgenden Bedingungen ans
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/0980
Bezeichnung Beschreibung
brochene Ablauffolge kann wieder aufgenommen werden, indem der Bedienungscode "Datenübertragungsauslösung-Wiederaufnahme" 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-Bedienungscödes für den Yerknüpfungskanal ausgesendet werden, bis die Übertragung wieder aufgenommen wird.
2· Für eine Bedienungscodefolge zeigt TME 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 Yerknü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 einer Anzahl 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 Einrichttmgs-Ebene-Schnittstelle darstellen, und Erläuterungen sind in der nachstehenden Tabelle angegeben.
509825/0980
Eiririchtungs-Ebenen-Schnittstellenleitungen
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, D10-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-Einrichtung.
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.
50982B/0980
Bezeichnung Beschreibung
SRI Eine Serien-Einleseleitung, die während
einer Schreiboperation dem Massenspeicher-Prozessor signalisiert, daß die Massenspeicher-Einrichtung einen Schreibbefehl ausführt. Die Massenspeicher-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 Mässenspeichereinrichtung 500 mit dem peripheren Massenspeicher-
509825/0980
prozessor 300, wie dies in Fig. 1 gezeigt ist. Wie die Eingabe/ Ausgabe-Steuereinrichtung 106 Daten und Steuerungsinformation zwischen einer Vielzahl von peripheren Prozessoren auszutauschen imstande ist, kann jeder periphere Prozessor Daten und Steuerungsinformation 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* I- geht ferner hervor, daß das Sp eicher-Unter system 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-Untersystem verbunden ist, wie ' dies dargestellt ist. In dem Prozessor selbst ist ein Speicheranschluß an einer Speiehereinheit 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-
509825/0980
Steuereinrichtung arbeitet in der Weise, daß die erforderlichen Lese/Schreib-Speieheroperationen 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, w.ie 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.
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.
Allgemeine Beschreibung des Massenspeicher-Prozessors 300
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 Festwertspeieher-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
509825/0980
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 Übertragungsleiterwege 303-1 bis 303-5 angeschlossen. Der Bereich 302 ist in zwei Bereiche 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-Rechen- 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-Bit-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-Übertragungs-, 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 auezuführen, auf die hin sie
509825/0980
betrieben werden. Die beiden Rechen- und Verknüpfungseinheiten arbeiten auf dieselben Operanden hin gleichzeitig, und die Fehlerprüfschaltungen vergleichen die Ergebnisse der beiden Rechen- und Verknüpfungseinheiten. 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 Multiplexer-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ührungsförm 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 Pufferspeicherbereich 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üpfungsschal tungenj 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/0980
Jeder der beiden Zähler enthält, wiejhier 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-CMpsaufgebaut, 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üpftingseinheit-Bereieh 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-Signale von einer Taktschaltung 308-2 her verringert.(Dies bedeutet, dass die Zählerstellung des Zählers alle 600 NanoSekunden um 1 vermindert wird). Die Fehlerprüfschaltungen prüfen die Zähler hinsichtlich einer richtigen Operation, und zwar inkerselben Weise wie die Operation des Daten-Zählers 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 Ausführungsform 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/0980
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 Berech enthält einen änderbaren Lese/Schreib-Speicher von 1,5 Κ·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 Zustande- 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üpf ungeschaltüngen und Pufferregister, die für die Bildung einer Schnitstelle alt Plattenspeichereinrlchtungen dea Systeme erforderlich sind, und zwar für die Steuerung, von Einrichtungsoperatjenen 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üpfungsschaltungen dar.
509825/0980
Detaillierte Beschreibung der Massenspeicher-Prozeasorbereiche
Nunmehr werden die oben beschriebenen Bereiche unter Bezugnahme auf die S1Ig. 3a bis 3k näher erläutert.
Peripherer Untersystem-Seftnittstellensteuerbereich 302-50 und Pufferbereich 302
Der Periphere Untersystem-Sehnittstellen-Steuerbereich bzw. PSI-Steuerbereich 302 und der Pufferregister- und Steuerbereich 302-50 sind in Pig. 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 form 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-Verriegelungsschal tungen, die von herkömmlichem Aufbau sind. Während Leseoperationen werden Ausgangssignale von dem A-Puffer des Bereichs 302-50 über/öus-Leitung 302-16 in den Lese-Puffer 302-14 geladen, wenn ein Steuersignal ÄATP10 in ein Binäreignal 1 umgeschaltet wird. Wie erläutert wird, wird dieses Signal durch in diese« Block 302-4 enthaltene asynchrone Schaltungen erzeugt. Dieser Block enthält, kurz
509825/0980
gesagt, eine Vielzahl von Verriegelungs-Verstärkerschaltungen, die einstellbar und zurückstellbar sind, und zwar durch, die Eingabe/Ausgabe-Steuereinriehtung mittels Signale, die an verschiedene Leitungen der Schnittstelle 200 abgegeben werden. So signalisieren zum Beispiel die asynchronen Verknüpfungsschaltungen der Eingabe/Ausgabe-Steuereinrichtung das Vorhandensein von Daten, die in dem Lese-Puffer gespeichert sind, und zwar durch Einstellen bzw· Setzen der leitungen STI öder OMI· 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 Ausgabe-Datengültigkeits-Signal PADV10 gespeichert werden, das in einen Binarzustand 1 umgeschaltet ist. Dieses Signal wird durch asynchrone Verknüpfungsschaltungen erzeugt, wenn die Eingabe/Ausgabe-Steuereinrichtung das Abtast-Ausgangs-Signal P1ST010 vom Binärzustand1in den Binärzustand UuIl umschaltet. Die Inhalte des Schreib-Puffers werden selektiv in die Puffer A, E oder 3? 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 PAPRI1IO 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 Flipflops, die durch Mikoroperations-Signale von dem Festwertspeicher-Steuerbereich 304 her setzbar sein können. Diese Signale werden über eine Eingangs-Busleitung abgegeben, die in Fig. 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-
509825/0980
Operationssignale können zum Beispiel die Aktivität in der peripheren 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. Mikropperations-Signale von einem anderen Befehl können ebenfalls ein Datenübertragungs-Flipflop DDO? 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 Mikrooperationssignale 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 nooh 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/0980
Es dürfte ferner ersichtlich sein, dass der Bereich bzw. Abschnitt 502-1 einen 2-Byte- oder 16-Bit-Rückwärtszähler enthält, der vier 4-Bit-Binärzählerstufen enthalt, die von herkömmlichen Aufbau sind. Dieser Zähler wird von den asynchronen Steuerverknüpfungsschaltungen des Blockes 302-4 dazu benutzt zu bestimmen, wenn ein Beendigungs-Eintritts-Flipflop TME zu setzen ist. Ein Hilfszähler 302-10 ist ebenfalls enthalten, um die Vergleicherschaltungen des Blockes 302-8 freizugeben für die feststellung 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 ALU-Besich 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 PCClKIO 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 Pail, dass die betreffenden Zähler nicht|Lm selben Zustand sind, veranlassen die Schaltungen das Setzen einer Fehleranzeige. Sind die Zählerstellungen beider Zähler auf Hull verringert worden, so schalten die Schaltungen des Blockes 302-8 ein Zähler-Gleichheits-Null-Signal PCCE020 in den Binärzustand Hull üb. Dieses Signal zeigt an, dass die erforderliche Anzahl von Bytea ü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/0980
Aus Pig. 3b geht hervor, dass jeder Bereich 302-50 sechs Register 302-52 Ms 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 Markierungs- oder 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 Schreib-Multiplexerschaltung und einem Lesepuffer Bitparallel oder byte-seriell übertragen. Die Übertragungsrichtung und der Übertragungsweg werden durch die Zustände von flipflops 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 ten 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 Ein-
AIiS gäbe—
gäbe/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 Einrichtungsadapter 310-2 verbunden. Die Zustände zweier Signale CQIXHO und CQTX010, die durch in den Ablaufst euer schaltungen enthaltene Übertragungs-Eintritts- und
509825/0980
Übertragungs-Austritts-iFlipflops erzeugt werden, bestimmen die Richtung von Byte-Übertragungen für die Gruppen der Register A bis C und D bis Έ, Die Richtungen der Übertragung für die Zustände dieser Signale sind beispielsweise folgende:
1) CQTXIOO (1^ =s PSI > REG · A —> reg · —£ reg »C
Warten aif Pr ο ze ssorflirmen ware) -Maßnahme;
2) CQTXI1O^1^ = reg . 0 —^ reg · B —> reg · A —^ Warten auf PSl-Maßnahme;
3) CQiDXOOO' ' = Einrichtungsadapter —> reg · F —> reg · E —^ reg · D
Warten auf Prozessor (Mrmenware) -Maßnahme·; und
4) CQiDXOI O^1 ^ = 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> CQiDXIOO & CQTXOOO - Iformalzustand des Prozessors.
Bei dieser Betriebsart werden Bytes von PSI und/oder dem Einrichtungsdapter in den Prozessor übertragen.
2. CQTXIOQ & CQTX010 - Bei dieser Betriebsart werden Steuerinformationsbytes zu, dem Einriehtungsadapter und /odter der Einricht/ung übertragen*
3. CQTXI10 & CQTXOO0 - Bei diesem BBtriebsart werden Informationeni,, wie Bedienungseodlebytes, Zustandsbytes, zur Eingabe/Ausgabe-Steiuereinri©htmg. übertragen ·
4. CQTXI10 & CQ3X010 - Bei dieser Betriebsart werden die Übertragungen der Betriebsarten2 und 3 kombiniert.
Eine weitere Betriebsart ist eine Schreiboperations-Betriebsart, die durch den Zustand eines Steuersignals CQWT010 festgelegt wird, das durch, ein in den PolgesteuerungsschaXtungen enthaltenes Schxeiboperations-Ablaufsteuerungs-Plipflop erzeugt wird. Wenn das Signal GQWTOtO als Binärsignal 1 auftritt bzw. in diesen Zustand umgeschaltet wird, führt es das Signal CQSXOIO und das Signal CQSXIOO in den Binärzustand 1 bzw. Null· ©ies© Signale veranlassen die Register, Bytes von PSI an den Einrichtungsadapter oder am den Lese/Schreib-Speicher etc. zu übertragen.
Die nächste Betriebsart ist eine Lese-Betriebsart, diepureh den Zustand eines Signals CQRBOiO festgelegt wird, das durch ein in den Ablaufsteuerschaltungen bzw. lölgeSteuerschaltungen enthaltenes Leseoperations-Ablaufsteuerun-gs-Flipflop erzeugt wird. Bas Signal CQRDOtO bewirkt zusammen mit dem Signal PADDTtO von dem PSI-Steuerbereich 302-1r dass die Signale CQTXI10 und CQTXOOO in äem 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 QQSSQIO festgelegt wird, welches durch ein? in den Ablaufsteuerschaltungen enthaltenes Suchoperations-Ablaufsteuerungs-Flipfiop erzeugt wird. Das Signal CQSHOtO konditioniert den RWS-Bereich während Suchoperationen, wodurch die Übertragung von Bytes durch *ie Register von dem Einriehtuiigsadapter oder vom PS! zu dem ALU-Bereich 316 hin ermöglicht ist» um im den lese/Schrelb-Speicherbereieh 306 eingeschrieben zm werden.
Die Steuerblöcke 302-70 und 302-72, wie sie aus Pig. 3"b 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 "ODER"- bzw. "UND"-Operationen an.
1.CDPIAIO = OQTXIOO · CDPTBOO · CDPTFOO · BAPRF30 · 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üekstellzustand 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 · PA07D10 + PAPRF10 · PK7SP10 > CDPTX20.
Dies ist die Anzeige für ein volles Register für das PSI-Schreibregister, welches gesetzt wird, wenn PA0DY10 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 · PK7SP10 + PKSE01A · PKVSP10) PBST020 • PKTM020 · PKADV10 · PKSTI20 · PKTMI20 · PEDDT10) + PAATP1C . PKVSP10 · CDARFOO.
Dies ist eine Übertragung des Inhalts des Α-Registers in
509825/0980
das PSI-Iesregister. 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_jzustand lang genug erhalten, um sicherzustellen, dass die Signale PESiDHO, PKTMI10 und PKATP30 gesetzt sind und das Vollständigkeits-Anzeigeglied für das Α-Register zurückgestellt ist (das heisst, das3 ODARiOO = 1 ist).
4. CDATB10 = CQTXIOO · ODBRPOO + 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 = CDARK)O · CDFTAOO · CQTXHO · CPARI20.
ein
Dies ist/die Übertragung vom B-Register zum Α-Register betreffendes Übertragungssignal, das mit hohem Pegel auftritt, wenn das Übertragungs-Eintritts-Folgesteuerungs-Flipflop gesetzt ist (das heisst, dass das Signal CQTXHO = 1 ist), das Α-Register leer ist (das heisst, dass das Signal CDARJ1OO =s 1 ist) und keine weitere Übertragung vom F-Register oder ALU her (das heisst, dass die Signale CDFTAOO und CFARL20 = sind) erfolgt.
509825/0980
6. CDBiDCIO = CQTXIOO * CFGRIi20 · CDCRPOO + CDCTD10 · CQOiXIOO.
Dies ist ein die Übertragung vom B-Register zum C-Register "betreffendes Übertragungssignal, das mit hohem Pegel auftritt, wenn das tibertragungs-Eintritts-Ablaufsteuerungs-Flipflop zurückgestellt ist (das heisst, dass das Signal CQiDXIOO = 1 ist) und das B-Register leer ist (das heisst, dass das Signal CDBRFOO = 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 · CDFTBOO · CQTXI10.
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-Flipflop im Setzzustand ist (das heisst, dass das Signal CQTXI10 = 1 ist), das Α-Register und/oder das B-Regisfcer 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 CDFTBOO = 1 ist).
8. CDCTD10 = (CDDRFOO + CDFRF10) · CIWFB10.
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 = (CDARFOO + CDBRFOO + CDCRFOO) CQRD010.
Dies ist ein die Übertragung von dem D-Register zu dem C-Register betreffendes Übertragungssignal, 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· .
S0982S/Ö980
10. CDDTEIO = CQTX010 " CDPIEOO · CDIDE10.
Dies ist ein die Übertragung von dem D-Register zu dem E-Register betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt, wann das Übertragungs-Austritts-Folgesteuerungs-Flipflop gesetzt ist (das heisst, dass das Signal CQTX010 =1 ist), das Ε-Register und/oder das F-Register leer ist (das heisst, dass das Signal CDIDE10 = 1 ist) und keine Übertragung von PSI zu dem Ε-Register hin erfolgt (das heisst, dass das Signal CDPTEOO = 1 ist).
11. CDETD10 a CQTXOOO * CDDRiOO * CFDRL20 + 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-Folgesteuerüngs-Flipflop zurückgestellt ist (das heisst, dass das Signal CQTXOOO = 1 ist) und das F-Register leer ist (das heisst, dass das Signal CDDRFOO = 1 ist). 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 = 1 ist).
12. CDETF10 = CQTX010 · CDEFA10 · CDPTFOO.
Dies ist ein die Übertragung von dem Ε-Register zu dem F-Register betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt, wenn das Übertragungs-Austritts-Folgesteuerungs-Flipflop gesetzt ist (das heisst, dass das Signal CQTXO10 = 1 ist), das F-Register leer ist (das heisst, dass das Signal CDEPA10 a 1 ist) und keine Übertragung von PSI zu dem F-Register hin erfolgt (das heisst, dass das Signal CDPTFOO = 1 ist).
13. CDFTE10 a (CQTXOOO · CDERFOO + CDETD10) · CDFTAOO · CDFTBOO.
Dies ist ein die Übertragung von dem F-Register zu dem A-Register betreffendes Übertragungssignal, das dann mit hohem
509625/0980
Pegel auftritt, wenn das tfoertragungs-Austritts-Polgesteuerungs-Plipflop zurückgestellt ist (das heisst, dass das Signal CQiEXOOO a 1 ist), das Ε-Register leer ist (das heisst, dass das Signal CDERiOO = 1 ist und keine Übertragungen von dem P-Register zu dem Α-Register oder zu dem B-Register hin erfolgen (das heisst, dass die Signale CDPiDAOO und CDPTBOO = 1 sind). Das Signal^wahrend der Übertragung des Inhalts des E-Registers zu dem D-Register hin mit hohem Pegel auf (das heisst, dass das Signal CDETDiO = 1 ist).
14. CDRTP10 = CDDAK10 * CQTXOOO · CDPRPOO.
Dies ist ein die Übertragung von Lesedaten zu dem P-Register betreffendes Übertragungssignal, das dann mit hohem Pegel auftritt;, wenn ein Datenquittungssignal 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).
Hochgeschwindigkeits-Polgesteuerungsbereich 308
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-4, 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 Polgesteuerungs-Plipflops dieses Bereichs sind in Pig. 3c als durch Pirmenware setzbare Plipflops gezeigt, wobei das Setzen zu Beginn einer
28/0980
Operation und das Rückstellen durch Hardware am Ende der Operation erfolgt. Die aus den Mikrobefehlen abgeleiteten Steuersignale weisen entweder ein "CE"- oder ein "CP"-Präfix auf.
Wie aus Fig. 3c hervorgeht, enthalten die Hardware-Polgesteuerschaltungen 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 Plipflop 308-1 ist ein erstes Durchlass-Porraat-Flipflop, welches in den Binärzustandiwährend Suchoperati cn en /Schreiboperationen gesetzt wird. Das Plipflop 308-2 ist ein Such-3?lipflop, welches in den Binärzustandi während Suchoperationen gesetzt ist. Das Plipflop 308-3 ist ein eine Lese/Schreibspeieherung ermöglichendes Plipflop, 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 Plipflop 308-4 " ist ein Suchkopfoperations-Plipflop, das auf sein Setzen in den Binärzustand 1 dem AlU-Bereich ermöglicht, sämtliche 1-Bytes in einem Suchargument eines Kennzeichenfeldes einer Aufzeichnung während Suchkennzeichenoperationen zu vergleichen.
Das Plipflop 308-5 ist das Übertragungs-Austritts-Polgesteuerungs-Plipflop, das, wie erwähnt, die Richtung von Byte-Übertragungen durch die Register D, E und P steuert. Wenn dieses Plipflop 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 P-Register; es bewirkt ferner die Umschaltung des CDDAKIO-Signals, wodurch dem Einrichtungsadapter gemeldet wird, dass ein Byte in dem P-Register enthalten ist, vein das Voll-Plipflop in
S0982S/Ö980
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 Übertragungs-Eintrittssignal. Wie erwähnt, steuert dieses Signal die Übertragung von Bytes durch die Register A, B und C. 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 = 0 ist) oder dann, wenn entweder die Datenübertragungsschaltungen oder die Bedienungscodeschaltungen freigegeben sind (das heisst, dass das Signal PEDDTOO oder das Signal PKDSCOO = Null ist).
Das Flipflop 308-6 ist ein Zählspalt-Plipflop, 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 GQRiX)OO oder CQSHOOO = 0 ist und wenn das Signal CDLBI10 =1). Das betreffende Plipflop w±ü ferner während Schreiboperationen durch nicht dargestellte Schaltungen gesetzt. Das Plipflop 308-8 ist ein leseoperations-Plipflop, das in den Binärzustand 1 während Leseoperationen gesetzt wird. Das Plipflop 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-Zykluszählers abgegeben, den Pig. 3d im einzelnen zeigt. Dabei ist ersichtlich, dass der Zähler Plipflops 308-100 bis 308-102 und zugehörige Eingangsschaltungen 308-110 bis 308-132 enthält, die in der dargestellten Weise angeschlossen sind.
509825/098Q
Das Flipflop 308-100 ist ein Vergleicherzyklus-Flipflop, das durch Firmenware (das heisst^dass das Signal CFSH01S = 1 ist) während einer Suchöperation 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 CYWFBIO, A1DAV31 und C^FCWIO = 1 sind) sperrt der Zähler die Verringerung der Zählersteilung 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 zufSl hin (das heisst, dass die Signale CQRS010, CDETX10 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).
Festwertspeicher-Steuerbereich 304 ·
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 adiessierbar ist, welches eine 12-Bit-Adresse über einen Weg 304-5 abgibt. Dieselbe Adresse wird einem Inkrement-Register 304-6 zugeführt. Das Register 304-6 ist von
509825/0980
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 CRIITCiO 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 CPIRI10 und CPIR210 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 CER1S10 und GER2S10 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-2^ 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 CH)TSIO 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-MÜX-Blockes 304-28 zugeführt, der ausserdem
509828/0980
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 heisst, dass die Bus-Leitungs-Signale CARBO-CARB7 vorhanden sind). Die Schaltungen des MUX-Blockes 304-28 erzeugen Ausgangssignale, die kennzeichnend sind für Zustände, die geprüft werden. Diese Ausgangssignale weflen dem Verzweigungssprung-Block 304-20 zugeführt. Dieser Block wird in Verbindung mit Fig. 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 0RSTR10 als Binärsignal 1 abgeben. Teile der Inhalte des Registers 304-32 werden dem Verzweigungsprüfblock 304-34 und einer Multiplexer-Auswahlsehaltung zugeführt, die in dem Verzweigungs-MUX-Block 304-36 enthalten ist. Darüber hinaus nimmt der MUX-Block Signale von AIU 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 OFNiDSIO als Binärsignal 1 abgibt. In einem Ablaufsteuerungs-Dekoder 304-38 enthaltene Schaltungen erzeugen die Mikrooperations-Steuersignale auf das Auftreten der Signale, die über einen 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/0980
In Fig. 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 Feld, welches die Stelle in dem Iese/Sehreib-Pufferspeicher angibt, die für ein Auslesen oder ein Einschreiben eines einzigen Bytes vorgesehen ist. In dem Fall, dass mehr als eine Einzelbyte-Lese/Schreib-Operation auszuführen ist, gibt der Inhalt dieser Stelle eine Startadresse an· Das nächste Feld ist ein Zählerfeld, welches die Bits 15 bis 18 enthält. Dieses Feld wird hauptsädSLich 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 Feld 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 Firmenware 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 Feld auf"01" gesetzt ist, die Hardware den Inhalt des Lese/Schreib-Speicheradressregisters ohne Bezugnahme auf das RWS-Adressfeld des Mikrobefehls ausnutzt. Wenn das Feld auf "10" gesetzt ist, erzeugt die Firmenware 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 ddra Mikrobefehl enthalten ist. Wenn dieses Feld auf "11"
S0982S/0980
gesetzt ist, wird die gesamte RWS-Adresse, die durch das RWS-Adressenfeld des in dam örtlichen Pestwertspeicherregister 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-Peld 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 lyp der Operationen an, die durch unterschiedliche Kodierungen der B-Unteroperationscodebits angegeben sind.
In Pig. 4b ist das Pormat eines unbedingten Verzweigungs-Mikrobefehls gezeigt. Dieser Mikrobefehl ist einer von zwei "Schnellverzweigungs"-Mikrobefehlen, die erfordern, dass die Bits des Mikrobefehls von den ieseverstärker-Verriegelungsschaltungen her dekodiert werden, um nämlich die Erzeugung einer nächsten Mikrobefehls-Wortadresse innerhalb einer Taktimpuls-Zeitperiode freizugeben. Wie aus dem Namen hervorgeht, wird dieser Mikrobefehl dazu benutzt, eine Mcht-Prüf-Verzweigungsoperation zum Zwecke des Aufrufs eines weiteren Mikroprogramms oder einer Routine anzugeben. Die Operationscodebits Null bis 2, wie sie in Pig. 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 "Vorverzweigungszustande"-Feld, welches dazu benutzt wird, das Setzen einer Rückführadresse vor der unbedingten Verzweigung anzugeben. Der Pestwertspeicher-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-Adressregister 2). Diese Register werden dazu
509325/0980
benutzt, die Adressen ,festzuhalten, wenn eine Verzweigung von einer Routine zu einer anderen erfolgt. Wie durch die Tabelle in Fig. 4b angedeutet, tritt die Verzweigung in dem Pail, dass die Bits 4 und 5 auf 11OO" gesetzt sind, auf, ohne dass irgendein Rückführregister auf eine bestimmte Adresse einzustellen wäre. Wenn die Bits 4 und 5 auf "10" gesetzt sind, ist die Verzweigungs-Hardware derart in Betrieb, dass die laufende Adresse, die sich in ROSAR (304-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, 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 Pig. 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"-PeId 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/0980
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 Feld bilden. Die übrigen Bits sind wie angedeutet.
In Pig. 4c ist das Format des zweiten Schnellverzweigungs-Mikrobefehls 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 Verzweigungsädressenfeld des bedingten SchnellVerzweigungs-Mikrobefehls bezeichnet ist. Das Bit 5 ist ein Rücksetz-Prüf-Flipflop-Feld-Bit, das im Setzzustand die Zurückstellung bestimmter Prüf-Flipflops nach der Beendigung der Prüfung bewirkt. Eines dieser Flipflops entspricht einem hier beschriebenen Befehlsende-Flipflop.
Die Bits 6 bis 18 bilden ein Verzweigungsadressenfeld, während die Bits 19 bis 23 ein MuItiplex-Prüfzustandefeld bilden. Die Prüfzustände bzw. Prüfbedingungen sind so festgelegt, wie dies in der Tabelle 1 gemäss Fig. 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 feet-
509825/0930
gestellt, ob ein Flipflop sich, im Binärzustand 1 oder Setzzustand befindet oder nicht. Wenn dieses Feld 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 hler erläutert ist, ermöglicht dieses PeId, dass der Inhalt irgendeines der Acht-Bit-Register über den zu prüfenden ALU-Bereich abgegeben wird, und zwar auf eineijbitweisen Grundlage,
In Pig. 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 Pestwertspeicher-Registers decodiert, wobei ein Intervall von zwei iEaktimpulsperioden 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 UuIl) 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 4» 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/0980
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 ist, 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-Ablauffolge, 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/0980
der durch das Zählerfeld bezeichneten Zählerstellung zu laden ist. In dem Pail, 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 Hüllen 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 Mull gesetzt ist, wird hierdurch dem Prozessor signalisiert, welche Flipflops in den Feldern Ί 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. Pie 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 TJnter-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
50982S/0980
angegeben (das heisst das laden von den örtlichen Lese/ Schreib-Speicherregistern oder dem örtlichen Festwertspicherregister). ^ie Tabelle 1 gibt die verschiedenen Codierungen für diese Bits und die entsprechenden Punktionen an. Die Bits 7 bis 10 definieren ein PSI-Ablaufsteuerungs-Flipflop-Peld, 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-2ä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 einzuschliessen 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
509825/Ö980
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 ITuIl 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 l&rma 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
509825/0980
B-Operanden-Konstanten-Feld (BOP), welches die Quelle des B-Operanden gemäss Tabelle 4 anzeigt. In ähnlicher Weise zeigen die Bits 23 bis 26 die Quelle des A-Operanden gemäss Tabelle 5 an. Es sei bezüglich der Pig. 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 Pormate für Mikrobefehle gezeigt, die zur Angabe unterschiedlicher Arten von Verknüpfungsoperationen verwendet werden. Die YerknüpfungsOperations-Mikrobefehle enthalten einen Operationscode "001". Der Zustand eines Eormat-Bits 3 zeigt dann, wenn dieses Bit eine binäre Hull 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-Peld des Mikrobefehls der B-Operand. Die Bits 4 bis 7 eines Ünteroperations-Code-Peldes bezeichnen die Verknüpfungsoperation, die durch AIU 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 ist. Die Bits 10 bis 14 bilden eine Bestimmungsangabe des ALU-Ergebnisfeldes; sie sind so codiert, dass sie eines der Register in der angegebenen Tabelle für die Aufnahme des durch ALTJ erzeugten Ergebnisses bezeichnen, Sämtliche Codes mit Ausnahme von 11110 und 11111 bewirken, dass das Ergebnis an das bezeichnete 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/0980
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 dieseml Mikrobefebityp nicht benutzt. In ähnlicher Weise definieren die Bits 23 bis 26 die Quelle des A-Operanden für AIiU.
Detaillierte Beschreibung der ROS-Schaltungen gemäss Fig. 3e
Unter Bezugnahme auf Pig. 3f werden nunmehr bestimmte Schaltungen gemäss Pig. 3e im einzelnen beschrieben. Aus Pig. 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 ieseverstärker-Verriegelungs-Schaltungen 304-25 abgegeben werden. Die durch die Verzweigungssprung-Schaltungen gebildeten Signale werden gemäss folgenden booleschen Ausdrucken erzeugt.
1. CPDTS10 (ROS Daten zu ROSAR) = GPUCB10 · CBNOKOO · CPR1S00 · CPR2S00 + CPPCB10 · CBB0K10.
2. CPPCB10 (schnelle bedingte Verzweigung) = CPBKHiO . CDR0310
3. CPIR110 (Inkrementierer auf Rückführ-Reg 1) = CPUCB10
• CBNOEOO.
4. CPIR210 (Inkrementierer auf Rückführ-Reg 2) = CBNOKOO
• CPÜCB10 · CRD2210.
50982S/0980
5. Ci1RISIO (Rückführ-Reg 1 zu ROSAR) = CMJCBi0 · CRD1910
• CBNOKOO.
6. CFR2S10 (Rückführ-Reg 2 zu ROSAR) = CI1UCBIO · CRD2010
• CBNOKOO.
7. CBB0K10 (Verzweigung OK für PCB) = CBBOKOC · CBTRBOO + CBTRB10 · CBRBTOO + 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 dein 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 Indeximpulses anzeigendes Signal A1IDT00, das durch den Aäapterbereich 310 auf das Auftreten des/Impulssignals der leitung IDX hin erzeugt wird. Ferner umfassen die
509825/0980
ORIGINAL INSPECTED
Sestsignale ein. die Ungleichheit von Null des Spalten-Zählerinhalts anzeigendes Signal COG-CZOO von dem Bereich 318, ein die Ungleichheit von null des DatenZählerinhalts anzeigendes Signal CCDCZOO von dem Bereich 31.8, ein das Mchtsetzen eines Datenende-3?lipflops anzeigendes Signal PEDD[DOO von dem Bereich 302 und ein den ersten Durchlass /das Setzen des Format-JFlipflops betreffendes Signal CQFPF10 von dem Hochgeschwindigkeits-Ablaufsteuerbereich 308. her. Es sei ferner darauf hingewiesen, dass die Schaltung 304-208 ein die Gleichheit von A und B anzeigendes Signal CAAEB10 und ein Signal CAAG-B10, das anzeigt, dass A grosser ist als B, von dem AIU-Bereich 316 her empfängt.
Aus IMg. 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 angeschlos sen sind. Diese Schaltungen sind derart betrieben, dass Verzweigungssignale auf einen ITormalzustands-Verzweigungs-Mikrobefehl hin erzeugt werden, der in dem örtlichen Festwertspeicher-Register 304-32 gespeichert ist· Darüber hinaus erzeugen diese Schaltungen Signale für die Freigabe der Ablaufsteuer-Dekoderschaltung 304-38, die derart betrieben ist, dass sie die Bits 23 bis 26 des Uormalzustands-Verzweigungs-Mikrobefehls dekodiert, welche Bits über den Weg 304-39 zugeführt werden. Die in dem Verzweigungs-MUX-Block 304-36 enthaltenen Multiplexer-Auswahlschaltungen liefern ein Verzweigungssignal CBETOKiO 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 CBIiOKIO an die Schaltungen abgegeben, die in dem Inkrement-Verknüpfungsachaltungsblock 304-8 enthalten sind. Wie dargestellt, umfasst dieser Bloc die Schaltungen 304-80 bis 304-83. Diese Schaltungen führen das Signal CRINC10 in ein binäres 1-Signal über, und zwar
509825/0980
ORIGINAL
entsprechend folgendem booleschen Ausdruck:
CRINCIO (Vergrössern von ROSAR) = (CBNOKOO · CFUCBOO ' CRRESOO) · (CPPCBOO + CBBOEOO).
lese/Schreib-Speicherbereich 306
Die Figuren 3g und 3h zeigen im einzelnen den Iese-Schreib-Speicherbereich 306. Wie ersichtlich, enthält dieser Bereich einen Hilfsspeicher 306-2, der aus einer Anzahl von 256 · 1-Bit-Feldern von herkömmlichem Aufbau in der angegebenen Weise 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 ROSIR 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 CPDVP10 hin. Wie aus Fig. 3g ersichtlich ist, wird das Register 306-7 von den AIÜ-Busleitungs-Verriegelungsschaltungen des Bereiches 316 her geladen. Wenn das Signal CPSRI10 ein Binärsignal Null ist, kann das Register 306-4 über einen Weg 306-10 mit einer Adresse geladen werden, die von dem Registerspeicher 306-12 abgegeben wird. Dieses Register erhält eine Adresse von den Schaltungen eines Blockes 3O6-14t nachdem die Adresse von dem Register 306-4» die über e±sn Weg 306-20 abgegeben worden ist, um 1 erhöht worden und abgegeben worden ist, wenn ein Inkrement-Signal CWINC10 und ein allein eine Inkreraentierung bewirkendes Inkrement-Signal CWIN010 als Binärsignale 1 auftreten. Die Schaltungen 306-16 bis 306-19 lassen das Signal GWINC10 als Binärsignal 1 während sämtlicher Schreiboperationen,
509825/0980
während der Suchoperationen und leseoperationen geraäss folgendem Ausdruck auftreten:
CWIFC10 = CWWPA10 . CWDIMOO + CQSH010 · CQIPFOO · + CFRED1O.
Die Schaltung 306-20 lässt das Signal 0WIIT01Ö als Binärsignal 1 während der Suchoperationen auftreten, wenn das Signal CWTOG-10 ein Binärsignal Null ist und wenn das Signal CWIUCI0 ein Binärsignal 1 ist.
Die drei Adressensignale hoher Wertigkeit von dem Adressregister 306-4 werden den Chip-Freigabedekoderschaltungen 306-30 zugeführt, die für jede Reihe der Felder Freigabesignale erzeugen. Wenn die Schaltungen des Blockes 306-32 das lesesignal CWKED10 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 Bloöces 306-32 lassen das Signal CWREDIO als Binärsignal 1 auftreten, wenn der Folgesteuer-Dekoder bzw. Ablaufsteuer-Dekoder des Bereiches 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-Eingabe schaltungen,· 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 Ubertragungssignale werden durch die
509825/0980
Schaltungen des Blockes 306-70 erzeugt, die in Verbindung mit Fig. 3h. noch beschrieben werden· Wie ferner gezeigt, kann das ortliche Register 306-40 von dem AEö-Bereich her geladen werden, und zwar über einen Weg 306-50, wenn der Pestwertspeicher ein Signal GFHRL10 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 Sehreibimpulsgenerator 306-54 erzeugt wird· Dadurch wird eine Reihe von acht Ireiber-Intrerterschaltungen (zum Beispiel OWWELOO bis CWWHD07) gesteuert. Dies bewirkt, dass die Information in einen adressierten Speicherplatz eingeschrieben wird. Die Schaltung 306-52 ist freigegeben, wenn eine weitere Gatter- und Inva*erschaltung 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 CWBiMIO, CWCfMIO, GWFTM10 und CWNTM10 dienen. Die OKD-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-Speieher 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 EuIl eine Übertragung von Bytes von dem D-Register auf die Dekodierung eines WOAM-Wertes hin, der in dem Unteroperations-
509825/0980
Codefeld eines. RWS-Mikrobefehls enthalten ist.
Die Schaltungen 306-81 bis 306-86 dekodieren die Zustände ■bestimmter Folgesteuerungs-Jlipflops, um das Signal CWCTMOB als Binärsignal Full 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 Pestwertspeicher das Signal CEMSQ09 als Binärsignal Hull 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/Sehreib-Speicherregisters in den Lese/Schreib-Speicher zurück, und zwar auf die Decodierung von "OB" oder'OC" in dem ünteroperationscodefelä bz». Suboperationscodefeld eines RWS-Mikrobefehls. Die UND-Glieder 306-71 bis 306-74 führen das Übertragungssignal CW5TM10 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 ümscfaarfr-Signals CWIT0G10, eines Einzel-Umschaltsignals CWTG010 und eines Umschalt- und Inkrement-Signals CWTIC10 verwendet werden. Diese Schaltungen bringen durch die Erzeugung des Signals CWT0G10 die Eigenschaft mit sich, den Inhalt des RWS-Adreasenregisters um 512 Speichastellen innerhalb einer Taktzeit (PDA) zu erhöhen. Dies« Anordnung
509825/0980
erleichtert die Speicherung einer Information von. zwei Quellen während der Suchoperationen; dies bedeutet, dass diese Anordnung die unmittelbare Speicherung der Zählerstellungs- und Kennzeichen feld-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 (CWSO1) wird zwischen zwei Zuständen "umgeschaltet", um verknüpfungsmässig die Speicheradresse um 512 Stellen zu erhöhen/zujverringern«, da sie einen PosiiLonswert von ■512 besitzt.
Die Umschalt-Yerknüpfungsschaltungen des Blockes 506-100 enthalten UND-Glieder 306-1 bis 306-104, eine Verstärker-Schaltung 306-105 und die Inverterschaltung 306-106. Das Ums ehalt signal CWiDOGIO 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 Yergleicherzyklus 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/0980
Die UND-Glied- und Verstärkerschaltungen 306-110 und 306-111 des Blockes 306 - 100 verknüpfen das Umschaltsignal CWT0G10 mit Inkrement-Signalen CWIiTGiO und CWICOO in der dargestellten Weise, um ein einziges ümschaltsignal CWiDGOIO und ein ümschalt-jund Inkreraent-Signal CWTIC10 zu erzeugen. Ist das Inkreraent-Signal CWINC10 in den Binärzustand 1 gesetzt bzw. tritt es als Binärsignal 1 auf, so wird das einzige Urasehaltsignal CWTG010 im Binärzustand 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-Bereieh 314 und Rechenverknüpfungseinheit-Bereich 316.
In Fig. 3i sind die Bereiche 314 und 316 im einzelnen dargestellt. Dabei ist ersichtlich, dass ALU eine Haupt-Rechen- und Verknüpfungseinheit (ALU) 316-2 und eine Hilfs-ALU-Einheit 316-4 zusammen mit zugehörigen Betriebsauswahl-Eintrag- und Ausführungsfreigabe-Schaltuiipn 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.
509825/0980
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-(CElT)- und Betriebssteuerungs- (M0-M3)-Eingangsanschlüssen zugeführt werden. Die ALU-Einheit wird für die Aufnahme von A- und B-Operandensignalen durch die SchCtungen 316-62 bis 316-65 freigegeben, die das Ereigabesignal CACEHOO 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 Pig. 4f). Die ALU-Einheit subtrahiert die A- und B-Operanden durch Ausführung einer Einser-Komplement-Additipn und Erzeugung eines Ergebnisses entsprechend A-B-1 in den Stufen CAI1OO bis CAIO7. 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 = 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
5O982S/0980
zu kontrollieren.
Während einer Verknüpfungsoperation wird das Unteroperationscodefeld des Mikrobefehls (das heisst ORNO41O-CRNO71O) 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. Austastsignalen CASTR10 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-Operatjcnscodefeld des Mikrobefehlswortes bezeichnete Adresse aufweist (das sind die Bits N23 Mb. N26). Der B-Operand (BOP) wird abgegeben von:
1) Einem Allzweckregister oder "heissen" Register, das durch das B-Og-PeId des Mikrobefehlswortes angegeben ist (das sind die Bits Fi9 bis N22) ) oder
2) von einer Acht-Bit-Konstante, die durch den Mikroprogrammierer (das sind die Bits 15 bis 22 des in dem örtlichen ROS-Register gespeicherten Mikrobefehlswortes) 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-Multiplexer-Auswahlschaltung abge-
. geben. Zu diesem Zeitpunkt veranlassen die Bits NO bis N2 des Operationscodefeldes zusammen mit den Bits 19 bis 22, dass ein Dekoder innehalb des Blockes 314-2 die in Präge kommenden Auswahlsignale an die B-Operand-MÜX-Schaltung 314-22 abgibt.
509825/0980
Nach Ausführung dieser bezeichneten Verknüpfungsoperationen gibt die Haupt-ALU-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-531 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 0AEQA10 in ein Binärsignal 1 überführt, und zwar zum selben Zeitpunkt, zu dem das Abtastsignal 0ASTR10 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 CACMÖJ10 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 Flipflop 3*6-310 wird in den Binärzustand Null zurückgestellt, wenn das Abtastsignal 0ASTR10 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 Binär-Signal Null auftritt. Wie oben erwähnt, werden die Signale 0AAEB10 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-AIÜ-Einheit 316-2 ein Ausführungssignal erzeugt wird.
509825/0980
Das in den Ergebnis-Busleitungs-Schaltungen 316-10 enthaltene Ergebnis wird dem Pestwertspeicher-Steuerbereich 304 und dem Mehrzweckregisterbereich 3H 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 IH eines Verknüpfungs- oder Rechen-Mikrobefehls bezeichnet ist (das ist das DOR-Mikrobefehlsfeld siehe Pig. 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üf schaltungen 316-8 durch ein Rückstellsignal CARSIOO. Wie aus Pig. 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 CASIA10 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 !mären Einsen sind. Dies ermöglicht die Abgabe des Ergebnisses eines vorhergehenden Mikrobefehls ohne die Zerstörung der gespeicherten Information. Im Palle einer Verknüpfungsoperation ist das Signal CPI0G10 gleich eine binäre 1, im Palle einer Rechenoperation ist das Signal CPAR010 eine binäre 1,und im Palle einer normalen bedingten Verzweigungsoperation ist das Signal CPNCBIO eine binare 1. Diese Signale veranlassen ihrerseits die Verstärkerschaltung 316-25 und die Inverterschaltung 316-26, die in Präge kommenden Abtastsignale zu erzeugen. Die UND-Gatter- und Verstärkerschaltung 316-28 ist in der Weise betrieben, dass das Rückstellsigna! CARPPOO
609828/0080
in den richtigen Zustand auf das Ruckste11signal CARESOO 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 316-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 Epgebnis-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 ALU-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 G-Register oder dem lese/Schreib-Speicherbereich erhalten worden ist, mit dem Α-Operand verglichen wird, der von der A-Operand-
50982S/Ö9SQ
Multiplexer-Sehaltung 314-22 über das D-Register erhalten wird. Zu Anfang "bewirkt ein Verknüpfungs-Mikrobefehl, der so codiert ist, dass er eine Operation 3? = 1 angibt, (siehe Fig. 4f), dass die ALU-Einheit das GIeichheitssignal 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 Flipflop 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 Abtastsignal CASIR10 ein Binärsignal lull. Am Ende der Suchoperation wird ein iOB-MSrobefehl 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 CASiDRIO 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 314-8 adressierbar. Diese Register nehmen Signale unmittelbar von dem örtlichen Pestwertspeicher- -Register her auf (das sind CRN20 bis 0RU22 und GRFl 2 bis CRN14). 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 WI9 bis U22 und liefern Ausgangs-Auswahlsignale BMO bis BM2 als Eingangssignale für die B-Operand-Multiplexerschaltungen 314-22. Die Multi-
5G9825/Ü980
plexer-Ausgangssignale von dem ausgewählten Quellenregister her werden dem Auswahlregister 314-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 M) bis N3 und NI9, die bestimmen, ob die Information aus einem Allzweckregister oder einem der übrigen Register des Systems als C-Operand-Quelle dient. Die in dem MUX-Adressenspeicherblock 314-21 enthaltenen Flipflops halten eine Anzeige der Bits N20 bis N22 fest, und zwar für eine kontinuierliche Auswahl der betreffenden Quelle während einer Suchoperation. Im eizelnen wird das Bit 19 den Steuerschaltungen 3H-34 zugeführt, die bestimmen, welche der Zulassungsfunktionen CABBA1O 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-Mmltiplexerschaltungen 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 ΪΓ26 für eine weitere Bezugnahme während einer Suchoperation fest. Die in dem Block 314-32 enthaltenen Steuerschaltungen sind auf die Bits UO bis ΙΓ2 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/0980
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 314-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 Einschreibvorgang erfolgt auf ein Impulssignal OLE hin, das durch den Schreibgenerator 308-4 erzeugt wird.
Paten- und SpaltZählerbereich 318
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 Steuerschaltungen 318-6 und Pehlerprüf-Verknüpf ungs schaltungen 318-8 enthalten. Zusätzlich enthält der Bereich Zählverknüpfungsschaltungen, cLe 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ählerstellung des Datenzählers sich auf UuIl vermindert hat. Dies bewirkt seinerseits, dass ein UND-Glied 318-102 des Flipflops 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 C0SCZ10 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
5Q9Ö2S/Ö9ÖÖ
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 yon 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 GIiK. und der Signale OCDUlOO (DAC-obere Ladung) sowie des Signals CCDlLOO (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 CFCFRI0 und CRCEM10.
Während des Betriebs werden die Zählersteilungen 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 Fehlerprüf -Verknüpf ungs schaltungen 318-8 enthalten einen herkömmlichen Vergleicher, der den Inhalt beider Zähler vergleicht. Im Falle der Featstellung einer Nicht-Übereinstimmung geben diese Schaltungen ein Fehlersignal CCDCE10 als Binärsignal 1 ab.
Wie aus Fig. 3j hervorgeht, enthält dieser Bereich ferner einen Hauptspalt-Zähler 318-12, einen Hilfsspalt-Zähler 3I8-I4 zusammen mit Dekrement-Steuerschaltungen 318-16
5Q982S/0980
und Fehlerprüfschaltungen 318-18. Ausserdem enthält der · Bereich 318, wie dargestellt, eine Spalt-Dekoderschaltung 318-20, die ein Ausgangssignal erzeugt, welches anzeigt, dass die Zählersteilung des Hauptspaltzählers auf Mull verringert worden ist. Die "beiden Zähler 318-12 und 318-14 werden gleichzeitig mit einer Acht-Bit-Eonstante von der ALU-Ergebnis-Busleitung her geladen, und zwar auf das CLK-Impulssignal hin, wenn die Signale CCG-LLOO (G-AC-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 CI1G-LLIO "bewirkt. Dies geschieht auf einen Rechen-Mikrobefehl hin. Während des Betriebs werden die Zählerstellungen beider Zähler durch das Signal CCG-EC10 verringert, das durch ein Flipflop 318-160 erzeugt wird. Dieses Flipflop wird über ein UED-Glied 318-162 auf das Signal CQCGPtO hin gesetzt, das als Binärsignal 1. auftritt. Dös 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 Vergleicherschaltung ein Fehlersignal CCGCE10 als Binärsignal 1 ab.
Einrichtungs-Ebenen-Schnittstellen-Steuerbereich 310
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
509825/0980
Einrichtung ermöglichen. Diese Register enthalten ein Einrichtungs-Anschlussregister 310-1, ein Eiririchtungs-Befehlsregister 310-4 .und ein Adapter-Befehlsregister 310-6 sowie ein Parameter-Register 310-8. Jedes Register wird in einer speziellen Ab]aif folge zur Speicherung einer Information freigegeben. Dabei werden insbesondere die verschiedenen Register für die Speicherung von Signalen durch Steuersignale CEDPHO, CZD0L10, Ci1ACLIO und Ci1PRHO freigegeben. Diese Signale werden aus der Decodierung eines speziellen leides 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 Schreiboperatiönen; sie erhält Eingangssignale von den verschiedenen Bereichen des Prozessors (zum Beispiel von dem P-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 Einrichtungs-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 Massenspeichereinrichtungen verwendet. Das Parameter-Register 310-8 ist normalerweise das zweite Register, das geladen wird. Es wird von dem lese/Schreib-Speicherbereich her
509*25/0960
-.71 -
mit der aivor gespeicherten Einrichtungs-Pararaeter-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 Einrichtung^-Befehlsregister 310-4 erhält eine In-Ärmation 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 Adapier-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 Plipflops Liegen fest, ob der Adapter eine Lese-Operation oder eine Schreiboperation auszuführen hat. Zusätzlich bestimmen die betreffenden Plipflops eine weitere Information in Bezug auf den Operationstyp. Da eine Diskussion derartiger Schaltungen nichtemit der
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 von herkömmlichem Aufbau ist. Wenn das Einschieben erfolgt, wird die Zählesstellung eines in dem Block 31 ΟΖΟ 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 !"-Register des Bereiches 302 bereitsteht. Auf die Feststellung des Daten-Verfügbarkeitssignals hin quittieren die iOlgesteuerungs-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.
S0982S/0980
Im Falle einer Schreiboperation bewirkt der Adapter 310-2 auf die Feststellung hin, dass Daten in dem F-Register gespeichert worden sind, dass das Einrichtungsabtastsignal DXDCS10 als Binärsignal 1 . auftritt. Der in das Einricrfunga-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, dass sie durch die Taktschaltungen 310-20 veranlasst werden, die Bitübertragungen mit Synchronisationsbits abzuwechseln, Wenn der Adapter im Unterschied 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.
Beschreibung des Betriebs
Unter Bezugnahme auf die Flussdiagramme gemäss Fig. 6a bis 6c wird nunmehr die Arbeitsweise der Anordnung gemäss der vorliegenden Erfindung, wie sie in Fig. 1, 2 und 3a bis 3k angegeben ist, beschrieben« Zunächst empfängt die Eingabe/Ausgabe-Steuereinrichtung 106-6 einen Eingabe/ Ausgabe-Befehl, der eine Such-Kennzeichenoperation angibt. Die Eingabe/Ausgabe-Steuereinrichtung 106-6 decodiert den Befehl und löst dann eine Übertragung von Eingabe/ Ausgabe-Befehlsbytes an den Massenspeicher-Prozessor aus. Die Bytes enthalten ein Verknüpfungskanalnummera-(LC1T)-Byte und Bytes von einen oder mehreren Kanalbefehlsworten. Das LOIT-Byte zeigt an, welcher Kanal in die Aus-
5Q982S/D980
führung des Befehls einzubeziehen ist. Die Befehlsworte enthalten ein Befehlscoäebyte, welches den Operationstyp angibt, Zählbytes, die die Anzahl der zwischen dem Hauptspeicher und dem Prozessor zu übertragenden Bytes angeben, und Adressenbytes, die eine Hauptspeicher-Startadresse für die Übertragung angeben.
Nach Empfang von Signalen durch die Eingabe/Ausgabe-Steuereinrichtung, welche anzeigen, dass der Massenspeicher-Prozessor 300 bereit ist, Befehlsbytes für die Ausführung der Operation aufzunehmen, beginnt die betreffende Steuereinrichtung mit der Übertragung der Bytes, und zwar beginnend mit dem LCN-Byte. In Fig. 6a ist in vereinfachter Form ein Teil einer Kanalprogramm-Auslöseroutine gezeigt, die im Zuge der Verarbeitung eines nächsten Befehls benutzt wird. In Pig. 6a und ebenso in den übrigen Plussdiagrammen sind die verschiedenen Mikrobefehle durch "relative" Adressen oder Verknüpfungsadressen bezeichnet, die den Namen der Ratine und eine Buchstaben-Nummer enthalten (zum Beispiel A0700). Die Mikrobefehle jeder Routine werden nacheinander physikalischen Adressen in dem Pestwertspeicher zugeteilt, und zwar in Übereinstimmung mit der alphanumerischen Reihenfolge ihrer relativen Adressen. Der Massenspeicher-Prozessor 300 bereitet sich für die Aufnahme des Befehls durch Ausführung eines Eingabe/ Ausgabe-Mikrobefehls vor, der Unterbefehlssignale erzeugt, die das Setzen der TRM- und RQD-Plipflops und das Laden des PSI-Zählers mit einer bestimmten Zählerstellung (das ist die Zählerstellung 3) bewirken.'Das ICN-Byte wird in den PSI-Schreibpuffer 302-12 auf das Signal PA0DV10 hin geladen, das als Binärsignal 1 durch die Prozessor-PSI-Schaltungen abgegeben wird. Die Schreibpuffer-Inhalte werden in das Α-Register geladen, wenn das Signal CDPTA10 mit hohem Pegel von den Steuerschaltungen 302-70 abgegeben wird. Danach führen die Steuerschaltungen 302-70 nacheinander die Signale CDATB10, CDBTC10 und CDCTD10. in Binärsignale 1 über.
509325/0930
Wie aus Pig. 6a ersichtlich ist, überprüft der Festwertspeicher während des übertragungsintervalls den Inhalt des C-Registers bezüglich des Eintreffens des LCN-Bytes, und zwar durch Ausführung eines schnellen Verzweigungs-Mikrobefehls A0700. Wenn das C-Register geladen ist, hält der Speicher die Prüfung an, und sodann wird der nächste Mikrobefehl A0600. für die Speicherung des LCN-Bytes in einem der Allzweckregister (das heisst GPR Nr.0) vorgerückt. !Danach führt der Prozessor 300 einen weiteren Mikrobefehl AÖ850 aus, der eine Bitdarstellung des LCN-Bytes, welches in dem Allzweckregister Nr. Null gespeichert ist, an das Einrichtungs-Adapter-Anschlussregister über die ALU-Einheit überträgt. Gleichzeitig wird das LCN-Byte überjdie ALU-Einheit übertragen und in dem RWS-Einrichtungs-Anschlussregister gespeichert.
Es sei angenommen, dass sich das LCN-Byte auf einen Befehl eines zuvor aktivierten Kanalprogramms bezieht. Deshalb ist bezüglich der Einrichtung angenommen, dass sie "belegt" worden ist. Ferner wird der Bit-Zustand dieser Einrichtung erhalten. Demge'mäss sind in dem Flussdiagramm nach Fig. 6a derartige Einzelheiten weggelassen.
Die Prozessor-Hardware verringert die Zählerstellung des PSI-Zählers um 1 durch das Signal STI, und zwar jedesmal, wenn er ein Byte aufnimmt. Der Mikroprogramm-Steuerspeicher wartet, bis das nächste Byte in das C-Register geladen ist. Durch Ausführen einer ähnlichen Folge von Operationen speichert der Prozessor 300 das Befehlscodebyte in einem anderen Allzweckregister (das ist GPR Nr. 9). Die Prozessor-Hardware beendet die Routine-Ablauffolge auf die Aufnahme des dritten Bytes hin, welches ein Kennzeichen-Byte ist. Dieses Byte wird in ein anderes Allzweckregister geladen. Zu diesem Zeitpunkt hat die Prozessor-Hardware die Zähler-
$09825/0980
stellung des PSI-Zählers auf Null varingert. Dadurch wird das Ende der Übertragung signalisiert.
Der Prozessor 300 tritt in eine Befehls-Decodier-Ablauffolge ein, in der er die Bits des Befehlscodes überprüft. Dies bedeutet, dass er einen mit CMDEC A0700 bezeichneten Mikrobefehl ausführt, gemäss welchem er den Befehlscode aus dem Mehrzweckregister ITr. 9 holt und in die AlU-Ißcriegelungsschaltungen lädt. Während einer Aufeinanderfolge von Verzweigungs-Mikrobefehlen überprüft der Prozessor sodann den Befehlscode, wobei zu einem Zeitpunkt jeweils ein Bit oder eine Anzahl von Bits geprüft wird, und sodann erfolgt auf die Ergebnisse der Prüfung hin eine Verzweigung zum Anfang einer geeigneten Mikroprogrammroutine für die Ausführung des Befehls. Die Bits werden sequentiell überprüft, um leichter das Auftreten von sogenannten "unberücksichtigt zu lassenden" Bits festzustellen (das sind diejenigen Bits, die die Auswahl einer Routine nicht benötigen.
Es sei angenommen, dass eine durch ein Kanalprogramm bezeichnete Eingabe/Ausgabe-Operation eine Suchoperation ist, bei der die Bytes des Kennzeichenfeldteiles der Aufzeichnung gemäss Eig. 5 aus der Massenspeiehereinrichtung gelesen und mit den Suchargument-Bytes verglichen werden, die der Prozessor von der Eingabe/Ausgabe-Steuereinrichtung erhält. Aus,tilg. 6b ergibt sich dabei, dass der Festwertspeicher den Prozessor veranlasst, eine Prüfung auszuführen, um zu bestimmen, ob er in Bezug auf die Aufzeichnung, die gelesen wird, "orientiert" ist. Im einzelnen ist zu bemerken, dass der Prozessor zuvor eine Orientierungsinforraation in einem Mehrzweckregister gespeichert hatte, welche Information die relative Stellung des Massenspeiehermediums und des Formates der Aufzeichnung, die von einer
S0 982S/0980
Spur gelesen wird, angibt. DaTbei prüft der Prozessor diese Information (das heisst ein bestimmtes Bit) um zu "bestimmen, wann eine durch den Befehl bezeichnete Operation auszuführen ist. Wenn die verschiedenen Felder innerhalb einer Aufzeichnung gelesen werden, werden die Bits der Orientierungsinformation eines in dem Allzweckregister bzw. Mehrzweckregister gespeicherten Steuer-nArbeitsbytesn aktualisiert.
Aus Pig. 5a und 5b geht hervor, dass der Anfang einer Spur durch eine Indexraarkierung angezeigt wird. Wenn die ausgewählte Massenspeicher-Einrichtung dem Adapter signalisiert, dass sie den Anfang der Spur ermittelt hat, wird die leitung IDX in den Binärzustand 1 gebracht. Der Adapter gibt seinerseits ein Signal an den Prozessor ab, der ein erstes Bit in dem Steuerarbeitsbyte in ein Binärsignal 1 überführt, wodurch die Aufnahme eines Index-Markierungssignals angezeigt wird. Der Zustand dieses Bits wird dadurch überprüft, dass der Festwertspeicher einen Verzweigungs-Mikrobefehl A0300 ausliest bzw. ausgibt. In dem IaJLl, dass dieses Bit nicht ein 1-Bit ist, führt der Prozessor eine Verzweigung zu einer anderen Mikroprogrammroutine aus, und zwar beginnend mit dem Mikrobefehl AOtOO* um nämlich ein Zählfeld abzuholen, welches die Stelle des Aufzeichnungsträgers in Bezug auf die geschriebene Aufzeichnung anzeigt.
Die nächste Prüfung, die der Prozessor ausführt, besteht darin zu bestimmen, ob der Kopf den Kopfteil bezüglich des Kennzeichensignalspaltes feststellt. Dies bedeutet, dass das nächste Feld ein Kennzeichensignalfeld ist. Dies erfolgt durch Ausführung eines weiteren Verzweigungs-Mikrobefehls A100Q. Unter der Annahme, dass das in demselben
5088257Q980
Mstasweokregister enthalten® Steuerarbeitsbyte anzeigt, class sieh, der Lese-Sohreibkopf in dem Kopfteil-Kennzeichen ■«Spa-ΐΐ befindet j werden die Ergebnisse der Prüfengen, die des Zustand^ eines weiteren Bits innerhalb des
unternommen werden 9 das in dem Mehrzweckregister gespeichert ist, positiv sein0 Der festwertspeicher geht dann auf den nächsten Speicherplatz über^ aus welchem er einen v/eiteren Mikrobefehl B0300 ausliest, der den Inhalt voa G-PR Nr. 10 abholt und den Zustand eines Bits 6 überprüfte Auf diese Weise wird festgestellt9 ob dies ein erster Durchlauf bzw0 Arbeitsgang ist0 Dadurch wird angezeigt, dass der Prozessor aieht nach einem Kennzeichen oder ■einer -vorhergehendes Aufzeichnung auf diesen Kanalbefehl hia gesucht hat» Da dieser Arbeitsgang bsi diesem Beispiel der erste Arbeitsgang bzw0 Durchlauf ist (das heisst, dass das Bit 6 normalerweise eine binäre Null ist)^ geht der Pestwer-tspeieher daaa auf den Mikrobefehl B0600 über, wie dies in Pig« Gb angegeben ist0
Der Prozessor liest eiaen Eingabe/Ausgabe-Typ-Milcrobefehl B0600 aus, der das Format des oberen Befehls gemäss Hg» 4e besitzte Diesen Mikrobefehl benutzt der Prozessor, um die Hardware-Wege für den ersten Durchlauf einer Such-Kennzeichenoperation einzustellen bzw. festzulegen. Das Eingabe/Ausgabe-Mikrobefehls-Unteroperationscodefeld wird als "00" codiert, um das Laden des PSI-Zählers von dem örtlichen Lese/Sehreib-Speieherregister her anzugeben* Dieses Register enthält normalerweise die Kennzeichenlängen-Information, die von dem Kopfteil der Aufzeichnung erhalten wird, welche gelesen wird. Der Datenzähler wird von einem vorhergehenden Befehl geladen, da zuvor angenommen worden war, dass der Orientierungstest positiv war.
Das PSI-Polgesteuerunge-Flipflop-Pelddes Eiagabe/Ausgabe-
509825/0980
Mikrobefehls B0600 wird auf den Code "1001" gesetzt, so dass Daten von der Eingabe/Ausgabe-Steuereinrichtung angefordert werden und der Eingabe/Ausgabe-Steuereinrichtung signalisiert wird, um die Übertragung mit dem letzten Byte zu beenden. Das Zählfeld enthält ausschliessnich Nullen, und das Sprungzählfeld ist auf "01" gesetzt, was anzeigt, dass der Prozessor das erste Byte des Kennzeichen feldes der Aufzeichnung unbeachtet za lassen hat, da es ein Synchronisierbyte ist, welches den Anfang eines Feldes signalisiert. Das nächste Feld, MSCSEQ-Flipflop, des Mikrobefehls B060O wird als "0101" decodiert, welches eine Suche einer ersten Durchlauffunktion angibt«
Wenn der Mikrobefehl B0600 in das örtliche Pestwert-Speicherregister ausgelesen ist, wird er durch den Folgesteuerungs-Dekoder decodiert, und die in Präge kommenden Steuer- und Ablaufsteuer-Flipflops werden in Binärzustände 1 gesetzt. Dies bedeutet, dass das erste Durchlauf-(CQFPF)-Flipflop 308-1, das Iese/Schreib-Aktiv-(CQRWA)-Flipflop 308-2 und das Such-CQSHO-Flipflop 308-3 jeweils in den Binärzustand 1 umgeschaltet werden. Das Übertragungs-(CQTXO)-Flipflop 308-5 verbleibt im Binärzustand Null. Ausserdem ist das Übertragungs-Eingangssignal CQTXI10 ein Binärsignal 1, welches die Pufferregister in ihre statischen Zustände führt. Die übrigen Flipflops geraäss Fig. 3c verbleiben in ihren Binärzuständen Null. Die Sprung^Flipflops308-101 und 308-102 gemäss Fig. 3d sind in eine Zählerstellung "01" gesetzt. Das Vgrgleicherzyklus-CQCMP-Flipflop 308-100 wird in einen Binärzustand 1 umgeschalt*, wenn das Such-Flipflop in den Binärzustand 1 umschaltet. Dieses Flipflop gibt die ALÜ-Ergebnis-Test- und Speieherschaltungen 316-30 (siehe Fig. 3i) für die Speicherung der Suchergebnisse während des jeweiligen Byte-Vergleiches frei (das bedeutet, dass dem Signal CACMHO ermöglicht wird, in den Binärzu-
50982 5/0980
stand 1 überzugehen, wenn die beiden Register C und D Bytes speichern - Signal CACMT1B =1).
Das Such-CQSHO-Flipflop veranlasst im Binärzustand 1 die Verknüpfungsschaltungen gemäss Pig. 3h, den RWS-Speicher in den Stand zu setzen, die Bytes in den in Frage kommenden Speicherplätzen zu speichern, und zwar wie sie von der Eingabe/ Ausgabe-Steuereinrichtung und der Einrichtung übertragen werden. Das den ersten Durchlauf/das Format betreffende CQFPF-Flipflop veranlasst im Binärzustand 1 die Puffersteueschaltungen, die Register A, B und C Bytes von der PSI-Steuereinrichtung her zu übertragen anstatt vom RWS-Speicher. Die FlipflopsCQFPF und CQRWA bewirken, wenn sie beide im Binärzustand 1 sind, dass der RWS-Speicher 306-2 mit dem C-Register verbunden \ä.rd. Dies ermöglicht, dass die von der Eingabe/Ausgabe-Steuereinrichtung empfangenen Bytes in den RWS-Speicher geschrieben werden. Ausserdem ruft das CQFPF-Flipflop einen Weg zwischen dem D-Register und dem RWS-Speicher 306-2 hervor. Diese Wege ermöglichen das Einschreiben der Suchargument-Bytes von der Eingabe/ Ausgabe-Steuereinrichtung her und der Kennzeichenfeld-Bytes, die aus der Massenspeichereinrichtung gelesen worden sind, in den RWS-Speicher 306-2, und zwar in der Weise, dass dieses Einschreiben gleichzeitig erfolgt.
Wie aus Fig. 6b hervorgeht, lädt der Prozessor 300 die in Fragejkommende Startadresse in das RWS-Adressregister von dem Festwertspeicher her, und zwar durch Ausführen eines RWS-Mikrobefehls, der mit B0700 bezeichnet ist. Anschliessend liest der Prozessor einen Verzweigungs-Mikrobefehl aus, der auf seine Decodierung hin feststellt, ob der Befehl von der Eingabe/Ausgabe-Steuereinrichtung her zeitgerecht eingetroffen ist (das heisst, ob der Lese/Schreib-
509825/0980
Kopf sich noch, in der Kopfteit-Kennzeichenspalte befindet, die anzeigt, dass der Befehl nicht zu spät auftritt, um auf das "bezeichnete Feld hin zu arbeiten. Nimmt man an, dass dies der Fall ist, so wird der Test-"Ketten-Schlupf" im Negativen liegen (das ist das Spalt-Zähler-Null-Signal CCGOZ1O). Ausserdem beginnt der Prozessor 300 nunmehr, die Einrichtung einzustellen (siehe Pig. 3k). Wie aus 3?ig. 6b hervorgeht, liest der Prozessor Mikrobefehle aus, und zwar mit einem Mikrobefehl C0200 beginnend. Dies erfolgt,, obwohl es nicht dargestellt ist, dann, wenn die Zählerstellung des Spalt-Zählers auf Null verringert worden ist. Der erste Yerknüpfungs-Mikrobefehl (siehe Fig. 4g) bewirkt, wenn er ausgelesen und decodiert ist, dass ein durch das Konstanten-Feld bezeichneter Lesebefehl in.das •^inriehtungsbefehlsregister 3Φ0-4 geladen wird. Ein weiterer Verknüpfungs-Mikrobefehl desselben Typs bewirkt, dass ein Befehl in das Adapter-Befehlsregister.310-6 geladen wird. Dies veranlasst den Adapter 310, an die DCS-ieitung ein Binärsignal 1 abzugeben. Dadurch wird der Einrichtung der Befehl signalisiert. Darüber hinaus wird der Adapter 310 auf den Befehl hin derart betrieben, dass Bytes über den JDesepuffer 310-32 ausgesendet werden, nachdem festgestellt worden ist, dass die benötigte vorläufige Steuerungsinformation gel#sen ist, wie zum Beispiel ein bestimmtes Start-Muster.
Anschliessend liest der Prozessor 300 einen Verzweigungs-Mikrobefehl C0500 aus, der auf seine Decodierung hin erneut den Zustand des Bits 6 des Kennzeichen-Byter Inhalts von GHJuTr. 10 überprüft. Da dieses Bit als Binärsignal Null auftritt, läuft der Festwertspeicher weiter zu dem Mikrobefehl C0800, in welchem das Bit 6 des Kenn·- zeichen-Bytes in GPR Nr. 10 als Binärsignal 1 auftritt, wie dies in Fig. 6b gezeigt ist. Anschliessend liest
S0982S/0980
der Prozessor einen Verknüpfungs-Mikrobefehl (F = 1)C0900 aus. Dieser Mikrobefehl "bewirkt auf seine Decodierung durch den Folgesteuerungs-Dekoder hin die Festlegung der Endwege, und zwar für die Freigabe des ALU-Bereichs zwecks Vergleichs des Byte-Inhalts der Register C und D. Dies bedeutet, dass die B-OperandL- und A-Operand-Felder des Verknüpfungs-Mikrobefehls derart kodiert werden, dass in den MUX-Adressenspeichern 314-21 und 314-22 codierte Signale gespeichert sind, die die B-Op-MUX-Einrichtung 314-22 bzw. die A-Qp-MUX-Einrichtung 3I4-24 veranlassen, an die Haupt- und Hilfs-ALU-Einheiten die Inhalte der Register 0 und D als Operanden abzugeben. Dadurch ist die Verbindung des Vergleichsweges abgeschlossen. Ausserdem veranlassen die Signale, dass die ALU-Einheit das Gleichheitssignal CAEQATO als Binärsignal 1 abgibt. Dies erfolgt dadurch, dass die Betriebsart-Signale MO bis M3 derart festgelegt werden, dass ein Ergebnis f = 1 angegeben wird. Dies schaltet seinerseits das Gleichheits-Speiche r-Flipflop 316-300 in den Binärzustand 1 um, und zwar in Bereitschaft für das Suchen.
Zu diesem Zeitpunkt sind die unterschiedlichen Gruppen der Pufferregister derart verbunden, dass Bytes in der richtigen Richtung verschoben werden. Die PSI-Schnittstelle ist in den Stand versetzt, Bytes von der Eingabe/Ausgabe-Steuereinrichtung her aufzunehmen. Der Einrichtung ist ein Befehl zugeführt worden; der Adapter ist. in den Stand versetzt worden, Bytes von der Einrichtung her aufzunehmen. Der ALU-Bereich ist schliesslich in den. Stand versetzt, die Bytes von den bezeichneten Quellen her zu vergleichen. Ausserdem sind die Zähler auf die in Frage kommenden Zählerstellungen eingestellt worden. Der PSI-Zähler ist auf eine Zählerstellung eingestellt worden, die einer Kennzeichenlänge entspricht. Danach
509825/0980
wird die Zählerstellung des betreffenden Zählers automatisch verringert, und zwar auf die Aufnahme jedes Bytes von der Eingabe/Ausgabe-Steuereinrichtung her. Der Datenzähler ist in eine geeignete Zählerstellung eingestellt worden (das ist die in dem Zählfeld enthaltene Kennzeichenlänge). Ausserdem wird die Zählerstellung dieses Zählers automatisch verringert, wenn das jeweilige Byte von der Einrichtung her empfangen wird.
Zu diesem Zeitpunkt ist die aus Hardware zusammengestellte Firmenware vollständig, und der Prozessor 300 ist unter die Steuerung der Hardware gebracht. Dies bedeutet, dass sämtliche Bytes-Übertragungen unabhängig von dem Festwertspeicher erfolgen und damit frei von jeglichen Yerarbeitungsverzögerungen sind. Dies kann aus einer Überprüfung des Plussdiagramms gemäss Fig. 6b ersehen werden. Der Festwertspeicher tritt in eine Leerlaufschleife ein, die zwei Yerzweigungs-MkrobefehleJumfaEBk, welche mit G1000 und 01100 bezeichnet sind. Während der Übertragungsoperation liest der Festwertspeicher einen FCB-Mikrobefehl aus, der auf seine Decodierung hin den Zustand des Befehlsende-CBEOC-Flipflops 304-300 gemäss Fig. 3f überprüft (das heisst, dass eine Überprüfung des Eingangs Hr. 1 der Schaltung 304-284 gemäss Fig. 3f erfolgt). Wenn das CBEOG-Flipflop in den Binärzustand 1 gesetzt ist, signalisiert dies der Firraenware, dass die Übertragungsoperation vollständigst. Wenn der Test positiv ist (CBE0C10 = 1) unterbricht der Festwertspeicher seinen Leerlauf und übernimmt wieder die Steuerung durch den Weiterlauf auf den Mikrobefehl C1300, woraufhin er die Ergebnisse der Such-Eennzeichenoperation in der beschriebenen Weise speichert. Durch einen weiteren FCB-Mikrobefehl 01100 überprüft der Prozessor 300 ebenfalls das Ende einer Spur. Dies wird von der Einrichtung signalisiert, die eine Indexmarkierung feststellt. Dies führt seinerseits das Signal A1IDI00 in
SQ9825/098G
ein Binärsignal Full. Bis eines dieser Signale in ein Binär-Signal 1 überführt wird, setzt der Prozessor 300 seinen Leerlauf durch die beiden Mikrobefehls-Schleifen fort. Während des Leerlaufs bewirken die Schaltungen des Blockes 316-30 jeweils dann, wenn ein Byte in den Registern CD gespeichert ist, dass das Vergleichs-Zeitsignal CACMT1O in ein Binärsignal 1 überführt wird. Wenn beide Bytes übereinstimmen, führt der ALU-Bereich 316-2 das Signal CAEQA10 in ein Binärsignal 1 über, welches seinerseits das Flipflop 316-300 in dessen Binärzustand 1 hält. Wenn in irgendeinem Vergleichsintervall die Bytes nicht übereinstimmen, führt der ALU-Bereich das Signal CAEQA10 in ein Binärsignal Hull über. Dies führt das Haltesignal OAEQS1H in ein Binärsignal Null über, welches das Flipflop 310-300 in den Binärzustand Full zurückstellt. Zu diesem Zeitpunkt wird ausserdem das Signal CAAEB10 in ein Binärsignal Null überführt. Demgemäss wird eine erste Nicht-Übereinstimmung das Gleichheits-Vergleichs-Flipflop 310-300 zurückstellen, wobei dieses Flipflop in dem betreffenden Zustand solange verbleibt, bis ein weiterer Mikrobefehl ausgeführt wird. Dies erfolgt nach Abschluss der Operation.
Aus Pig. 3f geht hervor, dass das Befehlsende-Flipflop 304-300 in den Binärzustand 1 gesetzt wird, wenn die Zählerstellung des Datenzählers auf Null verringert worden ist (das ist das Signal 0CDCZ1A =1) und sämtliche Register (das sind die Register A, B, C, D, E und F) leer sind (das ist das Signal 0DDBE10 =1). Unter der Annahme, dass das letzte Byte übertragen worden ist und dass die Zählerstellung des Daiaizählers auf Null verringert worden ist, geht der Festwertspeicher auf das Auslesen und Decodieren des FCB-Mikrobefehls C1010. hin auf den Verzweigungs-Mikrobefehl 1300 über, der eine Überprüfung
S0982S/0980
ausführt um festzustellen, ob das EOC-Flipflop 304-300 im Binärzustand 1 gesetzt war, da nämlich das Ende der Übertragungsoperation vorhanden war (das heisst, dass die Zählerstellung des Datenzählers auf Null verringert worden war) oder da ein Fehler durch den Adapter 310 festgestellt worden war (das ist das Signal AEERR10 =1). Unter der Annahme, dass kein Fehler vorliegt, geht der Festwertspeicher auf den Mikrobefehl DO4OO über, der der erste Mikrobefehl einer Routine für die Berechnung der Yergleichsergebnisse ist. Dabei werden entweder ein Flipflop oder keines der Flipflops 316-300 und 316-310 des Ergebnis-Iest- und Speicherbereiches 316-30 geraäss Fig. 3h in den Binärzustand 1 gesetzt. Unter der Annahme, dass ein Vergleich vorgenommen .worden ist, wird das Gleichheits-CAEQS-Flipflop 316-300 in den Binärzustand 1 gesetzt. Fach dem Setzen der Zustandsbits, die die Ergebnisse der Kennzeichen-Suche wiedergeben, führt der Prozessor einen Verzweigungs-Mikrobefehl aus, der den Prozessor auf den Mikrobefehl D0100 zurückführt. Dieser Mikrobefehl prüft die Ergebnisse und setzt eine Anzeigeeinrichtung. Der Prozessor 300 geht auf den Mikrobefehl D400 weiter, um festzustellen, ob ein Lesefehler vorgelegen hat. Unter der Annahme, dass kein Lesefehler vorgelegen hat, bedeutet dies, dass ein echter Vergleich erfolgt ist. Nunmehr geht der Festwertspeicher auf eine Mikrobefehls-Routine über, die mit dem Mikrobefehl H100 beginnt. Diese Mikrobefehls-Routine lädt einen geeigneten Code in ein Mehrzweckregister (G-PR Nr. 8), das für die Signalisierung zu der Eingabe/Ausgabe-Steuereinrichtung hin verwendet wird. Nach geeigneten Signalaustauschvoigängen über die periphere Untersystem-Schnittstelle PSI wird die Eingabe/Ausgabe-Steuereinrichtung veranlasst, den nächsten
503825/0980
auszuführenden Befehl auszusenden.· Dieser Befehl könnte zum Beispiel ein Befehl zur Ausführung einer Operation in dem Datenfeld der Aufzeichnung seins deren Kennzeichen mit dem Kennzeichen vergleichbar ist bzw* übereinstimmt, das von der Eingabe/Ausgabe-Steuereinrichtung abgegeben worden ist.
In Fig. 6c sind die Operationen angegeben, die von dem Prozessor ausgeführt werden, während dieser den nächsten Befehl von der Eingabe/Ausgabe^Steuereinrichtung erwartet. Während dieser Zeitspanne überläuft der Lese/Schreibkopf der Massenspeicher-Einrichtung den Kennzeichen/Daten-Spalt der Aufzeichnung (siehe I1Ig8 5b).Der Prozessor bewirkt
.das ADholen
zum Beispiel/und Dekodieren des Mikrobefehls, der den Datenzähler mit einer Zählerstellung lädt, die dem Datenlängenfeld entspricht, welches in dem Zählfeld enthalten ist, das dem Kennzeichenfeld der gerade gesuchten Aufzeichnung zugehörig ist. Dies erfolgt in der Erwartung, dass der nächste Befehl eine Operation bezüglich des Datenfeldes angeben wird. Die Routine gemäss dieser Figur wird "verarbeite Dateiende" (PBEOi1) genannt. Wenn der Datenzähler geladen wird, erfolgt ausserdem eine Überprüfung bezüglich einer Datenlänge Null. Ist die Datenlänge Null, so zeigt dies an, dass dies ein Ende einer Dateiaufzeichnung ist. Unter der Annahme, dass kein Dateiende vorliegt, geht der Festwertspeicher auf den Mikrobefehl A0100 über. Dies führt zur Aussendung des in dem Allzweckregister gespeicherten Codeszu der Eingabe/Ausgabe-Steuereinrichtung hin. Damit liegt auch ein Teil der Anforderung für den nächsten Befehl vor. Der Festwertspeicher kehrt dann auf eine vorhergehende Routine zurück, gemäss der er den In-: halt einer Adressregisterstelle in dem RWS-Speicher derart aktualisiert, dass diese dem Identifizierglied der letzten Aufzeichnung entspricht, die erfolgreich gesucht worden ist.
509825/0980
Sodann geht der Festwertspeicher auf die Suchroutine ein letztesmal über, um den PSI-Steuerbereich derart einzustellen, dass der nächste folgende Befehl aufgenommen wird, der schliesslich eine Verzweigung zu der Befehlscode-Routine CMDEC hin bewirkt, um den nächsten Befehlscode zu decodieren.
Es dürfte ersichtlich sein, dass durch die vorliegende Erfindung ein mikroprogrammierbarer Prozessor geschaffen worden ist, der eine Hardware-Ablaufsteueranordnung zusätzlich zu einem Mikroprogramm-Steuerspeicher enthält. Der Steuerspeicher erzeugt Signale., die die Hardware-Ablaufsteueranordnung veranlassen, in Präge kommende Hardware-Wege für die Ausführung eines bestimmten Befehls einzustellen bzw. festzulegen. Auf das betreffende Pestlegen derartiger Wege hin überträgt der Mikroprogramm-Steuerspeicher die Steuerung auf die Hardware-Ablaufsteueranordnung, die ermöglicht, dass die Datenübertragung mit maximaler Geschwindigkeit fortgeführt wird, und zwar unabhängig von der Betriebs- oder Durchlaufgeschwindigkeit des Steuerspeichers.
Bei der oben beschriebenen besonderen Operation war der Steuerspeicher solange unwirksam, bis die Hardware-FolgesteuerungsanOrdnung den Abschluss der Übertragung signalisierte. Selbstverständlich war die AlU-Einheit einbezogen in den Vergleich der Bytes von zwei Quellen, wie sie von der Suboperation benötigt- werden. Es sei darauf hingewiesen, dass im Falle von anderen Arten von Opsratianen der Steuerspeicher anstatt in unwirksamem Zustand zu sein, bestimmte Operationen ausführen könnte, die nicht in Beziehung zu der Übertragung von Bytes stehen. Auf Rechen-Mikrobefehle zum Beispiel hin, die aus dem Steuerspeicher gelesen werden, kann die AIU-Einheit einen Spalt variabler länge als Seil eines Schreibbefehls berechnen. Dies heisst,
5G982S/0980
dass in gewissen Fällen einer Platte ein Format gegeben wird, um einen Spalt variabler Länge zu erzielen, und zwar auf der Basis der länge des Datenfeldes, das geschrieben wird. Während die Datenübertragung stattfindet, berechnet demgemäss die ALU-Einheit in dem Prozessor der vorliegenden Erfindung den Spalt dadurch, dass die Daten-Länge und die Kennzeichen-Länge addiert werden und dass ein Anteil von der Summe genommen wird. Ähnliche Berechnungen können als Teil eines Lesebefehls ausgeführt werden, und zwar in dem Fall, dass ein Spalt variabler Länge in Erwartung eines anderen Formates berechnet wird, das durch einen Schreibbefehl angegeben wird, der mit dem ausgeführten Lesebefehl verkettet ist.
Der Steuerspeicher kann darüber hinaus Operationen ausführen, die den Inhalt verschiedener Adressenregister innerhalb des Prozessors modifizieren· Hierzu gehört die Aktualisierung bestimmter Register, um die Adresse eines "letzten verarbeiteten Datenfeldes" anzuzeigen. Diese Operationen würden entweder ausgeführt werden, bevor der Steuerspeicher in einen Leerlaufschleifenzustand eintritt, oder während der Datenübertragung, wie sie für den ' bestimmten Befehl benötigt ist, der ausgeführt wird.
Die obigen Beispiele sind lediglich zum Zwecke der Veranschaulichung gegeben worden. Weitere Einzelheiten bezüglich der Art und Weise, in der gewisse, hier beschriebene Operationen ausgeführt werden können, werden an anderer Stelle näher erläutert. Im vorliegenden Fall sei jedoch darauf hingewiesen, dass eine Vielzahl von Änderungen bezüglich des Prozessors der vorliegenden Erfindung ohne Abweichung vom Erfindungsgedanken vorgenommen werden können.
60982S/0980
Um eine unnötige Belastung der Beschreibung mit dem Wissen des Fachmanns zu bewirken, ist eine Blockdiagramm-Darstellungsweise benutzt worden, wobei eine detaillierte funktioneile Beschreibung des jeweiligen Blockes und eine spezielle Identifizierung der Schaltungen, die der 3'eweilige Block darstellt, gegeben worden ist. Dem einzelnen Ingenieur steht es frei, Elemente und Bauteile, wie Flip-Flop-Schaltungen, Schieberegister, etc., aufgrund eigenen Wissens öder aus Standard-Druckschriften auszuwählen, wie sie oben erwähnt worden sind.
Es sei ferner darauf hingewiesen, dass die genauen Codierungsmuster für sämtliche Mikrobefehle hier nicht angegeben worden sind, da der Ingenieur frei ist, alternative Codierungsformen auszuwählen. Bezüglich weiterer Einzelheiten und eines Einblicks in die Verfahren zur Ableitung einer derartigen Codierung und zur Bereitstellung einer zusätzlichen^das System betreffenden Information mag auf die Druckschrift "Computer Design Fundamentale "» 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 Bezug genommen werden. Zum Zwecke einer bequemen Bezugnahme ist die folgende Anhangtabelle beigefügt, in der bestimmte Ausdrücke definiert worden sind, die im Zuge der Beschreibung einer bevorzugten Ausfuhrungsform der vorliegenden Erfindung benutzt worden sind.
503825/0980
Anhanget abe lie
■Verzeichnis von Ausdrücken
Ausdruck
Ersatzspur
Weg mit Byte-Breite
Definition
Eine Ersatzspur ist eine Spur, die Daten enthält 9 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 Hull (aus) gesetzt werden kann, um irgendeine Kombination von 256 Kombinationen darzustellen. Dps Bit Hull 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 Full
stets das Bit höchster Wertigkeit ist.
die Anzahl Das Paritätsbit ist 1, wenn/der T-Bits
in den entsprechenden acht Informationsbits geradzahlig ist? es ist Null, wenn die Anzahl der 1-Bits ungeradzahlig ist. Dies bedeutet, dass eine ungerade bzw.
503825/0980
Ausdruck
Zentraler Prozessor-Komplex (CPC)
Kanalbefehls-Eintrag (CCE)
Kanalsteuerwort
(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 Folgesteuerung von Befehlen in der gewünschten Reihenfolge und für die Auslösung der Kommunikation zwischen Speichereinrichtungen und externen Einrichtungen verwendet werden. Die Haupteinheiten des zentralen Prozessor-Komplexes sind die Zentraleinheit (CPU), der Hauptspeicher und die Eingabe/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 Verzweigungsinformation, ein Kennzeichen oder Pufferadressen und ein Befehlserweiterungsfeld umfassen. Die Adresse des Kanalbefehlseintrags ist die Adresse ihres ersten Kanalsteuerwortes .
Ein Kanalsteuerwort ist ein 32-Bit-(4-Byte)-Wort, das eine Unterteilung eines Kanalbefehlseintrags ist.
509825/0980
Ausdruck
Definition
Kanalprogramm (CP) Ein Kanalprogramm ist ein vollständiger
Satz von Befehlen und Adresseninformation zur Ausführung einer Eingabe/Ausgäbe-Operation. Er besteht aus zwei Kanalbefehlseinträgen, 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 Feld herausgeführt wird. Wenn Daten aufgezeichnet werden, ist der zyklische Prüfcode arithmetisch von der Information codiert, die in dem Feld 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 Zylinväeradresse identifiziert; er gibt eine bestimmte
S09825/Ö980
Ausdruck Datenfeld
Unbrauchbare Spur
PeId
Hausdressenfeld
Definition
Position des Satzes der Iese/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 lypen 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/0980
Ausdruck
Indexmarkierung
Eingabe/Ausgabe-Steuereinrichtung (IOC)
Eingabe/Ausgabe-St euereinrichtungs-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 KanalprogratDtQS betroffen ist. Sie kann mehrere physikalische Kanäle steuern. Im vorliegenden Fall 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 POU 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 A%x£zeichnung. Die Identifizierungsinforraation ist in dem Kennzeichenfeld gespeichert. Ist sie vorhanden, so folgt das Kennzeichenfeld unmittelbar dem Aufzeichnungszählfeld.
509825/0980
Ausdruck
Leitungszustande
Verknüpfungskanal (LC)
Definition
Eine Schnittstellen-Signalleitung, die sich im Ein-Zustand befindet bzw. ein hohes Potential führt, wird als verknüpfungsraässig den 1-Zustand führend angesehen. Eine leitung, die sich im Hull-Zustand befindet oder ein niedriges Potential führt, wird als verknüpfungsmässig den Hull^Zustand führend angesehen. Der Potentialanstieg auf einer leitung bedeutet einen Übergang vom Null-Zustand zum 1-Zus.tand, während eine Potentialabsenkung auf einer leitung bedeutet, dass ein Übergang vom 1-Zustand auf den Full-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/Ausgabe-Operation ist durch ein Kanalprogramm definiert. Ein Verknüpfungskanal kann
509825/0980
Ausdruck Magazin
Definition
lediglich, jeweils ein aktives Kanalprogramm besitzen. Die Verknüpfungskanalnummern werden von dem Kanal für die Ordnung der Speicherung von Parametern benutzt, die zum Pesthalten einer Anzahl von Kanalprogrammen 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
509825/0980
Ausdruck
MehrspurOperation
Periphere Einrichtung
Peripherer Prozessor
- 97 Definition
zu einem Zeitpunkt in Bezug auf den Lese/ Schreib-Lösch-Mechanismus in Stellung gebracht werden.
Die Fähigkeit des Massenspeicher-Untersystems in dem 3?all, 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 fortzusetzen.
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, mikropro'-grammierte periphere Steuereinrichtung (MPO), Mehrleitungs-Steuereinrichtung (MIC), etc.*
509325/0980
Ausdruck
Peripheres Unter-System
Physikalischer
Kanal
Primäre Spur Lesen
Definition
Ein peripheres Untersystem (zum Beispiel das Massenspeicher-Untersystem MSS) besteht aus solchen Funktionseinheiten, die ausserhalb der zentralen Verarbeitungsund 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/0980
Ausdruck
Aufzeichnung
Aufzeichnungs-Überlauf
Aufzeichnungs-Segment
Bedienungscode
Definition
Eine Gruppe von in Beziehung zueinander stehenden Feldern. Eine Aufzeichnung besteht aus einem Zählfeld, einem Kennzeichen-Feld, das unmittelbar auf sein mit ihm
in 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 Hull angegeben sein; in diesem Fall besteht eine Aufzeichnung lediglich aus einem Zählfeld und einem Datenfeld.
Ein Auf zeichnungs-Übeirlauf 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-Üntersystem bezeichneten Funktionen behandeln die gesamte Verknüpfungs-Aufzeichnung
als wäre sie eine einzige physikalische Aufzeichnung.
Ein Segment einer Überlauf-Aufzeichnung - siehe Aufzeichnungs-überte-uf.
Ein Bedienungscode ist ein 8-Bit-Befehl · (zuzüglich Parität), der über die periphere Untersystem-Schnittstelle von dem peri-
509825/0980
- too -
Ausdruck
Spur Schreiben
Definition
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-Elusses (von der Eingabe/Ausgabe-Steuereinrichtung zu dem peripheren Prozessor) an, das heisst, dass eine Ausgabeoperation vorliegt.
Abschliessend sei bemerkt, dass durch die Erfindung ein mikroprogrammierb;arer peripherer Prozessor geschaffen worden ist, der so ausgelegt ist, dass er eine Mikroprogramm-Steuerspeicheranordnung enthält, die die notwendigen Steuersignale für die Interpretierung von Befehlen liefert, die ihr von einem Datenverarbeitungssystem her zugeführt werden. Darüber hinaus enthält der periphere Prozessor eine Hardware-Ablaufsteueranordnung, die durch den mikroprogrammierten .Steuerspeicher in Übereinstimmung mit dem auszuführenden Befehl konditioniert wird. Die Hardware-Ablaufsteueranordnung wird dabei in den Stand versetzt, die verschiedenen Hardware-Wege · für die jeweils auszuführende bestimmte Operation festzulegen.
509825/0980
Nachdem die Festlegeoperation ausgeführt worden ist, überträgt die mikroprogrammierbare Steuerspeicheranordnung die Steuerung auf die Hardware-Ablaufsteueranordnung, die Datenübertragungen bei maximaler Geschwindigkeit auszuführen gestattet, welche vollständig unabhängig von der Betriebsgeschwind igkeit der MikroprQgramm-Steuerspeicheranordnung ist. Während der Datenübertragungsoperation ist die Steuerspeiche ran Ordnung unwirksam, oder sie führt Operationen aus, die die Übertragung nicht beeinflussen, und zwar solange, bis die Hardware-üOlgesteueranordnung die Beendigung der Operation signalisiert»
509825/0980

Claims (28)

  1. Patentansprüche
    Mikroprogrammierter peripherer Prozessor, der mit einer ersten Schnittstelle verbunden ist und der derart betrieben ist, dass die Operation zumindest einer an einer zweiten Schnittstelle angeschlossenen Eingabe/Ausgabe-Einrichtung auf Befehls signale hin gesteuert wird, die von der ersten Schnittstelle empfangen werden, wobei die betreffende Eingabe/Ausgabe-Einrichtung zur Übertragung von Informationssignalen zwischen den beiden Schnittstellen dient, dadurch gekennzeichnet, dass eine Mikroprogramm-Steuereinrichtung (304) vorgesehen ist, die eine Speichereinrichtung (304-2) für die Speicherung einer Vielzahl von Mikrobefehlsfolgen enthält, deren jede aus einer Vielsahl von Mikrobefehlen besteht, dass eine Verzweigungs-Steuereinrichtung (304-20, 304-26, 304-28, 304-30 und 304-34) vorgesehen ist, die eine Vielzahl von zu prüfenden Signalen aufnimmt und die an der Speichereinrichtung derart angeschlossen ist, dass die Speichereinrichtung veranlasst wird, eine Verzweigung auf Ablaufsteuerfolgen in Übereinstimmung mit den Signalen vorzunehmen, dass an der Speichereinrichtung eine Dekodiereinrichtung (304-38, 304-40) angeschlossen ist, die Steuersignale auf die aus der Speichereinrichtung ausgelesenen Mikrobefehle hin erzeugt, dass an der ersten Schnittstelle und an der zweiten Schnittstelle eine bidirektionale Datenübertragungseinrichtung (302-50) angeschlossen ist, dass an der Datenübertragungseinrichtung und und an der Mikroprogramm-Steuereinrichtung eine Folgesteuereinrichtung (308) angeschlossen ist, dass die Verzweigungs-Steuereinrichtung auf Signale hin, die kenn-
    50982S/U980-
    zeichnend sind für einen Befehlscode, die Speichereinrichtung veranlasst, eine Verzweigung zu einer dieser Ablauffolgen vorzunehmen, und dass die Dekodiereinrichtung derart betrieben ist, dass Steuersignale auf eine Ablauffolge hin erzeugt werden, durch die die Polgesteuereinrichtung veranlasst wird, Signale für die Steuerung der übertragung von Inforinationssignalen durch die Datenübertragungseinrichtung mit einer Frequenz zu erzeugen, die unabhängig von der Betriebsfrequenz der Mikroprogrammsteuereinriehtung (304) ist.
  2. 2. Prozessor nach Anspruch 1, dadurch gekennzeichnet, dass die Folgesteuereinrichtung eine Vielzahl von bistabilen Einrichtungen enthält, die so geschaltet sind, dass eine Zustandsumschaltung auf bestimmte Steuersignale von der Mikroprogramm-Steuereinrichtung her erfolgt, und dass eine der Routinen an einem bestimmten Punkt einen bestimmten Typ von Mikrobefehl enthält, durch den die Voreinstellung der in einer Vielzahl vorgesehenen bistabilen Einrichtungen in bestimmte Zustände zwecks Steuerung der Übertragung von Informationssignalen erfolgt.
  3. 3. Prozessor nach Anspruch 2, dadurch gekennzeichnet, dass der bestimmte Mikrobefehlstyp ein Eingabe/Ausgabe-Mikrobefehl ist, der eine Vielzahl von Feldern aufweist, deren eines einem Polgesteuerfeld entspricht, welches so codiert ist, dass angegeben ist, welche der bistabilen Einrichtungen in ihre Binärzustände 1 für die Ausführung der durch den Befehlscode bezeichneten Operation umzuschalten sind.
  4. 4. Prozessor nach Anspruch 1, dadurch gekennzeichnet«
    dass die Speichereinrichtung ein Pestwertspeicherelement enthält.
    509825/0980
  5. 5. Prozessor nach. Anspruch 1, dadurch gekennzeichnet, dass die Verzweigungs-Steuereinrichtung an der Folgesteuereinrichtung angeschlossen ist und "bei Fehlen eines bestimmten Signals von der Folgesteuereinrichtung derart betrieben ist, dass die Speichereinrichtung veranlasst wird, die Ausführung einer bestimmten Mikrobefehlsfolge zu wiederholen, und dass die Verzweigungs-Steuereinrichtung auf die Aufnahme des bestimmten Signals von der Folgesteuereinrichtung her derart betrieben ist, dass die Beendigung der Datenübertragung zum Zwecke der Unterbrechung der Wiederholung der bestimmten Mikrobefehlsfolge angezeigt wird ·
  6. 6. Prozessor nach Anspruch 5ι dadurch gekennzeichnet, dass die Ablauffolge zwei Verzweigungs-Mikrobefehle enthält, die so codiert sind, dass sie Verzweigungsadressen und !Eestbedingungen enthalten, die zwei Mikrobefehlsschleifen solange festlegen, bis eine der Testbedingungen erfüllt ist.
  7. 7. Prozessor nach Anspruch 5» dadurch gekennzeichnet, dass die Folgesteuereinrichtung eine Zyklussteuereinrichtung enthält, die mit unterschiedlichen bistabilen Einrichtungen verbunden ist und die eine Vielzahl von bistabilen Einrichtungen enthält, welche durch die genannten bistabilen Einrichtungen veranlasst werden, in einer bestimmten Folge eine Zustandsumsehaltung auf Signale hin vorzunehmen, die das Auftreten bestimmter Hardware-Ereignisse anzeigen, derart, dass Signale erzeugt werden, die unterschiedliche Operationsfolgen für den Prozessor während der genannten Übertragung festlegen.
  8. 8. Prozessor nach Anspruch 5» dadurch gekennzeichnet, dass die Verzweigungssteuereinrichtung auf das bestimmte Signal
    509325/0980
    hin derart betrieben ist, dass die Speichereinrichtung veranlasst wird, eine Verzweigung zu einer weiteren Mikrobefehlsfolge zu bewirken, derart, dass die Ergebnisse der Übertragung überprüft werden, und dass in Übereinstimmung mit den Ergebnissen auf eine bestimmte Routine der Mikrobefehle für die Verarbeitung eines nächsten Befehlscodes Bezug genommen wird.
  9. 9. Prozessor nach Anspruch 7, dadurch gekennzeichnet, dass eine der in einer Vielzahl vorgesehenen bistabilen Einrichtungen der Zyklussteuereinrichtung so geschaltet ist, dass sie das bestimmte Signal aufzunehmen gestattet, welches ein Ende der Datenübertragung anzeigt, dass die betreffende eine bistabile Einrichtung derart betrieben ist, dass sie von einem ersten Zustand in einen zweiten Zustand umschaltet, derart, dass die Verzweigungssteuereinrichtung auf die Bezugnahme auf einen Mikrobefehl in der codierten Ablauffolge veranlasst wird, das Ende der betreffenden Übertragung zum Zwecke der Beendigung der Wiederholung der Ablauffolge durch die Mikrosteuereinrichtung zu überprüfen.
  10. 10. Prozessor nach Anspruch 1, dadurch gekennzeichnet, dass die bl_direktionale Datenübertragungseinrichtung eine Vielzahl von Pufferregistern enthält, die in Reihe geschaltet sind und die ein Informationsbyte bidirektional seriell übertragen, und dass mit den verschiedenen Pufferregistern und der Polgesteuereinrichtung eine Schaltungsanordnung verbunden ist, die durch die Folgesteuereinrichtung veranlasst wird, selektiv den Pufferregistern in einer bestimmten Weise zu ermöglichen, die Datenübertragungseinrichtungen in einer Vielzahl von unterschiedlichen Betriebsarten zu betreiben.
    509825/0980
  11. 11. Prozessor nach Anspruch 10^ dadurch gekennzeichnet, dass die Folgesteuereinrichtung ein Übertragungs-Eintritts-Flipflop und ein Übertragungs-Austritts-Flipflop enthält, dass diese Flipflops mit der Schaltungsanordnung verbunden sind und dass die Schaltungsanordnung derart betrieben ist, dass die Übertragungsrichtung für erste und zweite Gruppen von Pufferregistern aus der Vielzahl von Pufferregistern in Übereinstimmung mit den Zuständen der Übertragungs-Flipflops festgelegt wird.
  12. 12. Prozessor nach Anspruch 11, dadurch gekennzeichnet, dass die erste Gruppe Register (A, B, C) enthält, dass die zweite Gruppe Register (D, E, F) enthält, dass die Schaltungsanordnung durch das Übertragungs-Eintrags-Flipflop gesteuert bei Vorliegen einer binären 1 bzw. einer binären Null die genannte erste Gruppe veranlasst, Bytes aus dem C-Register zu dem Α-Register und aus dem Α-Register zu dem C-Register hin zu übertragen, und dass die Schaltungsanordnung durch das Übertragungs-Austritts-Flipflop gesteuert bei Vorliegen einer binären 1 bzw. einer binären Null die zweite Gruppe veranlasst, Bytes aus dem D-Register zu dem F-Register und aus dem F-Register zu dem D-Register hin zu übertragen.
  13. 13. Prozessor nach Anspruch 12, dadurch gekennzeichnet, dass den Zuständen der Übertragungs-Eintritts- und der Übertragungs-Austritts-Flipflops entsprechende Signale für die Festlegung einer Vielzahl von Unter-Betriebsarten in Übereinstimmung mit den Zuständen bestimmter Folgesteuerungs-Flipflops verwendet werden.
  14. 14. Prozessor nach Anspruch 13» dadurch gekennzeichnet, dass bei einer ersten Unter-Betriebsart die Prozessor-
    509825/0980
    Folgesteuereinrichtung eine Übertragung von Informations-Bytes in den Prozessor von der ersten Schnittstelle und der zweiten Schnittstelle über die erste Gruppe und die zweite Gruppe von Registern ermöglicht.
  15. 15. Prozessor nach Anspruch 2, dadurch gekennzejfonet, dass eine Rechen- und Verknüpfungs-Verarbeitungseinrichtung an der zweiten Schnittstelle und an der Datenübertragungseinrichtung angeschlossen ist, dass eine Lese/Schreib-Speichereinrichtung mit der Rechen- und Verknüpfungseinrichtung und der Datenübertragungseinrichtung verbunden ist und dass die Polgesteuereinrichtung derart betrieben ist, dass sie die Signale abgibt, die die Rechen- und Verknüpfungs-Verarbeitungseinrichtung und die lese/Schreib-Speichereinrichtung in den Stand versetzen, Operationsfolgen auszuführen, die für die Verarbeitung bzw. Speicherung der Byte-Signale erforderlich sind.
  16. 16. Peripheres TJntersystem mit einem peripheren Prozessor, insbesondere nach einem der Ansprüche 1 bis 15» welcher Prozessor an einer peripheren Untersystem-Busleitung angeschlossen ist und die Operation zumindest einer peripheren Einrichtung zu steuern gestattet, die an einer Einrichtungs-Ebenen-Schnittstelle angeschlossen ist, derart,' dass eine Übertragung von Byte-J3ignalen zwischen der peripheren Untersystem-Busleitung und der Einrichtungs-Ebenen-Schnittstelle auf Befehle hin erfolgt, die an das Untersystem abgegeben werden, dadurch gekennzeichnet, dass der periphere Prozessor einen peripheren Untersystem-Schnittstel3.enbereich (302), enthält, dass eine Mikroprogramm-Steuereinrichtung (304) vorgesehen ist, die eine adressierbare Steuerspeichereinrichtung (304-2) für die Speicherung einer Vielzahl von Mikrobefehlen enthält, dass eine Verzweigungs-Steuereinrichtung (304-20, 304-26, 304-28, 304-30 und 304-34) mit einer Anzahl von Test-Eingängen
    509825/0980
    vorgesehen ist, dass diese. Verzweigungs-Steuereinrichtung mit der Steuerspeichereinrichtung verbunden ist und die Speichereinrichtung veranlasst, eine Verzweigung auf einen Mikrobefehl entsprechend den den genannten Eingängen zugeführten Signalen hin auszuführen, dass mit der Speichereinrichtung eine Dekodiereinrichtung verbunden ist, die Steuersignale auf die aus der Steuerspeichereinrichtung ausgelesenen Mikrobefehle hin erzeugt, dass mit dem peripheren Untersystem-Schnittstellenbereich Pufferregister- und Steuereinrichtungen (302-50) verbunden sind, dass mit der Mikroprogramm-Steuereinrichtung und den Pufferregister- und Steuereinrichtungen eine Rechen- und Verknüpfungseinrichtung (316) verbunden ist, dass mit der Einrichtungs-Ebenen-Schnittstelle ein Einrichtungs-Ebenen-Schnittstellenbereich (310-2) verbunden ist, dass mit den Pufferregister- und Steuereinrichtungen und der Rechen- und Verknüpfungseinrichtung eine lese/Schreib-Speichereinrichtung (306) verbunden ist, dass mit dem Einrichtungs-Ebenen-Schnittstellenbereich, den Pufferregister- und Steuereinrichtungen und der Rechen- und Verknüpfungseinrichtung eine Adapter-Steuereinrichtung (310) verbunden ist, dass mit der Mikroprogramm-Steuereinrichtung, der Rechen- und Verknüpfungseinrichtung, der Lese/Schreib-Speichereinrichtung, der Adapter-Steuer-Einrichtung und den Pufferregister- und Steuereinrichtungen eine Folgesteuereinriehtung (308) verbunden ist, dass die Verzweigungs-Steuereinrichtung auf Befehls-Codesignale hin,die einem der Befehle entsprechen, welche bestimmten lesteingängen zugeführt sind, die Steuerspichereinrichtung veranlasst, eine Verzweigung zu einer ersten Folge von Mikrobefehlen hin zu bewirken, und dass die Dekodiereinrichtung auf die betreffende Folge von Mikrobefehlen hin derart betrieben ist, dass Steuersignale erzeugt werden, die die Folgesteuerein-
    509825/0980
    richtung veranlassen, einen bestimmten Satz von Unterbefehls-Steuersignalen abzugeben, durch welche die Operation der Pufferregister- und Steuereinrichtungen, der Rechen- und Verknüpfungseinrichtung, der lese/Schreib-Speichereinrichtung und der Adapter-Steuereinrichtung in einer bestimmten Weise für die Ausführung des betreffenden einen Befehls ausgeführt wird.
  17. 17. Untersystem nach Anspruch 16t dadurch gekennzeichnet, dass die Polgesteuereinrichtung eine Befehlsspeichereinrichtung enthält, die eine Vielzahl von bistabilen Speichereinrichtungen aufweist, welche so geschaltet sind, dass sie auf die Steuersignale hin in "bestimmte Zustände umschalten und den bestimmten Satz von Unterbefehls-Steuersignalen abgeben, dass mit der Befehlsspeichereinrichtung eine Zyklussteuereinrichtung verbunden ist, die eine Vielzahl von bistabilen Speicherelementen enthält, welche selektiv bestimmte Steuersignale des genannten Satzes von Steuersignalen von den in einer Vielzahl vorgesehenen bistabilen Speichereinrichtungen und Signale von verschiedenen Bereichen des Untersystems aufnehmen, die kennzeichnend sind für das AuftiEfcen bestimmter Hardware-Ereignisse, und dass die in einer Vielzahl vorgesehenen bistabilen Speichereinrichtungen derart betrieben sind, dass Zyklussteuer-Signale erzeugt werden, die unterschiedliche Operationsfolgen angeben, welche durch die Rechen- und Verknftpfungs-Einrichtung und die Lese/Schreib-Speichereinrichtung während der Ausführung des betreffenden einen Befehls auszuführen sind.
  18. 18. Untersystem nach Anspruch 17, dadurch gekennzeichnet, dass der Prozessor ferner eine mit der Iese/Sehreib-Speichereinrichtung und der Mikroprogrammsteuereinrichtung verbundene Daten-Zählereinrichtung enthält,- die durch
    50982S/0980
    Steuersignale während der ersten Ablauffolge veranlasst ist, selektiv mit einer bestimmten Zählerstellung geladen zu werden, die kennzeichnend ist für die Anzahl der Byte-Signale, die zwischen den Schnittstellenbereichen zu übertragen sind, und dass die Zählereinrichtung an der Adapter-Steuereinrichtung angeschlossen ist und auf bestimmte Signale von der Adapter-Steuereinrichtung her, die kennzeichnend sind für das Auftreten von Übertragungen von Byte-Signalen hin,die Zählerstellung während der Ausführung des betreffenden einen Befehls zu modifizieren gestattet.
  19. 19. Untersystem nach Anspruch 18, dadurch gekennzeichnet, dass die Zähle reinrichtung ferner eine Dekodereinrichtung enthält, die derart betrieben ist, dass ein Ausgangssteuersignal in dem Fall erzeugt wird, dass die Zählereinrichtung hinsichtlich ihrer Zählerstellung modifiziert worden ist und eine Zählerstellung aufweist, die kennzeichnend ist für die Beendigung der Übertragung der betreffenden Anzahl von Byte-Signalen, und dass einer der Eingänge der Verzweigungs-Steuereinrichtung so angeschlossen ist, dass er das Ausgangs-Steuersignal aufnimmt, wobei die Verzweigungs-Steuereinrichtung auf das Ausgangssteuersignal hin die Steuerspeichereinrichtung veranlasst, die Mikrobefehlsfolge, die . ausgeführt wird, zu unterbrechen, und eine anschliessende Mikrobefehlsfolge zum Zwecke der Verarbeitung der Ergebnisse aus der Ausführung des betreffenden einen Befehls zu beginnen.
  20. 20. Untersystem nach Anspruch 17, dadurch gekennzeichnet« dass der periphere Untersystem-Schnittstellenbereich eine erste Vielzahl von bistabilen Speicherelementen enthält, die mit der Mikroprogramm-Steuereinrichtung verbunden sind und die die Übertragung von Signalen durch den betreffenden Bereich zu steuern ge statten *,
    50982S/0980
    dass eine Schnittstellen-Folgesteuereinrichtung eine zweite Vielzahl von bistabilen Speicherelementen enthält, die an der Mikroprogramm-Steuereinrichtung angeschlossen sind, und dass die Steuersignale die zweite Vielzahl von bistabilen Speicherelementen in bestimmte Zustände umzuschalten gestatten, derart, dass der Untersystem-Schnittstellenbereich veranlasst wird, den betreffenden einen Befehl auszuführen.
  21. 21. Untersystem nach Anspruch 20, dadurch gekennzeichnet, dass die erste Mikrobefehlsfolge einen Eingabe/Ausgabe-Mikrobefehl enthält, der eine Vielzahl von Feldbereichen aufweist, wobei ein erster Folge-Feldbereich so codiert ist, dass er die Zustände der zweiten Vielzahl von bistabilen Speichereinrichtungen der peripheren Untersystem-Schnittstelle definiert und wobei ein zweiter Folge-Feld-Bereich so codiert ist, dass er die Zustände einer Vielzahl von bistabilen Speichereinrichtungen der Folgesteuereinrichtung definiert, und dass die Folgesteuereinrichtung auf den betreffenden Eingabe/ Ausgabe-Mikrobefehl hin Signale erzeugt, durch die die in einer Vielzahl vorgesehenen bistabilen Speichereinrichtungen in bestimmte Zustände entsprechend den ersten und zweiten Folge-Feldern umgeschaltet werden, derart, dass der Prozessor in den Stand versetzt wird, den betreffenden einen Befehl auszuführen.
  22. 22. Untersystem nach Anspruch 21, dadurch gekennzeichnet« dass der periphere Untersystembereich eine mit der Mikroprogrammsteuereinrichtung und der Lese/Schreib-Speichereinrichtung verbundene Zählereinrichtung enthält, dass der Eingabe/Ausgabe-Mikrobefehl ferner einen Unter-Operationscodefeldbereich enthält, der so codiert ist, dass er angibt, welche Zählereinrichtung
    509825/0980
    der Zählereinrichtungen mit der bestimmten Zählerstellung zu laden ist, dass der betreffende Mikrobefehl ferner einen Zählfeldbereich enthält, der so codiert ist, dass er die bestimmte Zahl angibt, und dass die Folgesteuereinrichtung auf den Mikrobefehl hin veranlasst wird, Signale zu erzeugen, durch die ein bestimmter Bereich mit der betreffenden Zahl geladen wird.
  23. 23. Untersystem nach Anspruch 22, dadurch gekennzeichnet, dass die erste Folge von Mikrobefehlen ferner im Bedarfsfall Lese/Schreib-Speicher-Mikrobefehle und Verknüpfungs-Mikrobefehle an bestimmten Punkten enthält und dass die Dekodiereinrichtung auf die Mikrobefehle hin Signale erzeugt, durch)clie Lese/SChreib-Speichereinrichtung, die Adapter-Steuereinrichtung, die betreffende eine periphere Einrichtung und die Rechen- und Verknüpfungseinrichtung veranlasst werden, den genannten einen Befehl auszuführen.
  24. 24. Untersystem nach Anspruch 22, dadurch gekennzeichnet, dass der Unter-Qperationscoäe-Feldbereich des Eingabe/ Ausgabe-Mikrobefehls in folgender.Weise codiert ist:
    00 gibt an, dass die Zählereinrichtung des peripheren UnterSystembereichs von der Lese-Schreib-Speichereinrichtung her zu laden ist;
    01 gibt an, dass die Zählereinrichtung des peripheren Untersystembereiches von der Mikroprogramm-Steuereinrichtung her zu laden ist;
    10 gibt an, dass die Daten-Zählereinrichtung von der Lese/Schreib-Speichereinrichtung her zu laden ist; und
    11 gibt an, dass die Daten-Zählereinrichtung von der Mikroprogramm-Steuereinrichtung her zu laden ist.
  25. 25. Untersystem nach Anspruch 13» dadurch gekennzeichnet, dass zumindest zwei bistabile Speicherelemente der in einer Vielzahl vorgesehenen bistabilen Speicherelemente
    $09825/0980
    der Zyklussteuereinrichtung unter Bildung eines Sprungzählers miteinander verbunden sind und dass der Eingabe/ Ausgabe-Mikrobefehl ferner einen Sprungzähl-Feldbereich enthält, der so codiert ist, dass er eine Anzahl von von einer peripheren Einrichtung her empfangenen Daten-Byte-Signalen angibt, die während der Ausführung des betreffenden einen Befehls zu überspringen sind, wobei die Mikroprogramm-Steuereinrichtung auf den betreffenden Mikrobefehl hin Signale erzeugt, durch die der Sprungzähler mit einer Bit-:—Darstellung des Sprung-Zählfeldbereiches geladen wird.
  26. 26. Untersystem nach Anspruch 25, dadurch gekennzeichnet, dass die Befehlscodesignale, die den genannten einen Befehl bestimmen, derart codierbar sind, dass sie eine Lese-, eine Schreib- oder eine Suchoperation angeben, in die die betreffende eine periphere Einrichtung einbezogen ist, derart, dass die Verzweigungs-Steuereinrichtung veranlasst wird, die Steuerspeichereinrichtung auf unterschiedliche Folgen von Mikrobefehlen verzweigen zu lassen, deren jeder an bestimmten Punkten einen Eingabe/Ausgabe-Mikrobefehl enthält, welcher so codiert ist, dass die Folgesteuereinrichtung veranlasst wird, den Prozessor für die Ausführung der bezeichneten Operation freizugeben.
  27. 27. Peripherer Prozessor, insbesondere nach einem der Ansprüche 1 bis 15, der mit einer ersten Schnittstelle verbunden ist und derart betrieben ist, dass die Operation irgendeiner Eingabe/Ausgabe-Einrichtung aus einer Vielzahl von Eingabe/Ausgabe-Einrichtungen gesteuert wird, die mit einer zweiten Schnittstelle verbunden sind, wobei die Steuerung auf die Aufnahme von BefehlsSignalen hin erfolgt, die in einem Befehlscode-Byte enthalten sind, welches die Übertragung von
    509825/0980
    Informationsbyte-Signalen zwischen der ersten Schnittstelle und der zweiten Schnittstelle erfordert, dadurch gekennzeichnet. dass der periphere Prozessor (300) eine Mikroprogramm-Steuereinrichtung (304) enthält^ die einen adressierbaren Steuerspeicher (304-2) enthält, der eine Vielzahl von Speicherstellen für die Speicherung von Mikrobefehlen aufweist, dass mit dem Steuerspeicher ein Adressenregister (304-4), verbunden ist, das. eine Adresse für die Bezugnahme auf die Speicherstellen während Speicherzyklen speichert, dass mit dem Adressenregister eine Verzweigungs- und Prüfsteuereinrichtung (304-28 und 304-36) verbunden ist, die in Abhängigkeit von Ergebnis-Signalen hin den Inhalt des Adressenregisters derart zu modifizieren gestattet, dass eine Verzweigung zu einer Folge von Mikrobefehlen hin bewirkt wird, dass mit dem Steuerspeicher ein Ausgaberegister (304-32) verbunden ist, das den Mikrobefehls-Inhalt einer Speicherstelle, auf die Bezug genommen worden ist, während eines Speicheroperationszyklus kurzzeitig zu speichern gestattet, dass mit dem Ausgaberegister Dekodiereinrichtungen (304-38, 304-40) verbunden sind, die derart betrieben sind, das sie Steuersignale auf bestimmte Teile des Mikrobefehls-Inhalts hin erzeugen, dass bidirektionale Datenübertragungseinrichtungen (302-50) vorgesehen sind, die eine Vielzahl von Eingags- und Ausgangs-Datenwegen aufweisen, wobei ein Eingangs- und Ausgangsweg mit der ersten und zweiten Schnittstelle verbunden ist, dass die Rechen- und Verknüpfungseinrichtung (316) eine Rechen- und Verknüpfungseinheit (316-2) mit einem ersten Operand-Eingang und einem zweiten Operand-Eingang enthält, dass diese Rechen- und Verknüpfungseinheit derart betrieben ist, dass sie eine bestimmte Anzahl von Rechen- und Verknüpfüngsoperationen auf Byte-Signale hin auszuführen gestattet, die als Operanden
    509825/0980
    dem ersten Eingang und dem zweiten Eingang zugeführt werden, dass mit dem ersten Eingang und dem zweiten Eingang erste bzw. zweite Eingangs» Mehrfach-Schaltungsanordnungen (314-22 und 314-24) verbunden sind, dass jeder der Multiplex-Schaltungsanordnungen einen Ausgang und eine Vielzahl von Eingängen aufweist, die so angeschlossen sind, dass sie Byte-Signale von einer entsprechenden Anzahl von Quellen aufnehmen, dass .Schaltungsanordnungen (314-20 und 314-26) für die Auswahl von Signalen von einer der betreffenden Quellen vorgesehen sind, wobei diese Signale an den betreffenden Ausgang abgegeben werden, dass zumindest einer der Eingänge der jeweiligen Eingangs-Multiplex-Schaltungsanordnungen mit einem bestimmten Ausgangs-Datenweg verbunden ist, dass die Lese/Schreib-Speichereinrichtung (306) eine Vielzahl von Speicherplätzen für die Speicherung von für die Ausführung der Befehle benötigten Steuerungs- und Daten-Bytes enthält, wobei die Speichereinrichtung ferner Daten-Eingabe-Gattereinrichtungen (306-42) enthält, die an bestirnten Ausgängen der Datenübertragungseinrichtungen angeschlossen sind, dass mit den Dateneingabe-Einrichtungen Steuerschaltungsanordnungen (306-70) verbunden sind, die derart betrieben sind, dass sie Signale erzeugen, durch die derjenige Ausgang ausgewählt wird, der Signale an die Speichereinrichtung abzugeben hat, dass Ausgabe-Registereinrichtungen (306-40) vorgesehen sind, die aus einem der adressierten Speicherplätze ausgelesene Signale kurzzeitig zu speichern gestatten und die mit den Eingangs-Multiplex-Schaltungsanordnungen verbunden sind, dass die Folgesteuereinrichtung (308) mit dem Ausgaberegister (304-32) des Steuerspeichers (304-2), der Datenübertragungseinrichtung und der Lese/Schreib-Speichereinrichtung (306) verbunden ist, dass die Mikroprogramm-Verzweigungs-Steuereinrichtung (304-28) durch die Eregnisse der Überprüfung des
    509825/0980
    Befehls-Code-Bytes veranlasst wird, eine Verzweigung zu einer bestimmten Folge von Mikrobefehlen hin vorzunehmen, dass die Dekodier-Einrichtungen (304-38) auf das Auslesen der bestimmten Folge von Mikrobefehlen hin Steuersignale erzeugen, durch die die Folgesteuereinrichtung veranlasst wird, Signale an die Datenübertragungseinrichtung, die Lese/Schreib-Speichersteuer-Schaltungsanordnung und an die Eingang^s-Multiplex-Schaltungsanordnungen (314-22 und 314-24) abzugeben, derart, dass die Übertragung von Byte-Signalen durch die Datenübertragungseinrichtung zu der ersten und zweiten Schnittstelle hin, zu der Rechen- und Verknüpfungseinrichtung (316-2) hin und zu der Lese/Schreib-Speichereinrichtung (306) hin freigegeben ist, wobei die betreffende Einrichtung durch den Befehlscode bestimmt ist, und dass die Übertragung mit einer Frequenz vornehmbar ist, die unabhängig ist von der Mikroprogramm-Steuereinrichtung (304), derart, dass die Steuereinrichtung für die Ausführung von Operationen verfügbar ist, die in keiner Beziehung zu der betreffenden übertragung stehen.
  28. 28. Prozessor nach Anspruch 27, dadurch gekennzeichnet, dass er einen peripheren Schnittstellenbereich enthält, der mit der ersten Schnittstelle und den Datenübertragungs-Eingangs- und Datenübertragungs-Ausgangswegen verbunden ist, dass der Schnittstellenbereich eine erste Vielzahl von bistabilen Speicherelementen enthält, die mit.der Mikroprogramm-Steuereinrichtung verbunden sind, wobei die erste Vielzahl von Speicherelementen veranlasst wird, die übertragung von Signalen durch den betreffenden Bereich zu steuern, und dass eine Schnittstellen-
    509825/0980
    Folgesteuereinrichtung mit einer zweiten Vielzahl von bistabilen Speicherelementen vorgesehen ist, die mit der Mikroprogramm-Steuereinrichtung verbunden sind, wobei die betreffenden Steuersignale die zu der zweiten Vielzahl von bistabilen Speicherelementen gehörenden bistabilen Speicherelemente in bestimmte Zustände zu schalten gestatten, derart, dass der Untersystem-Schnittstellenbereich in den Stand versetzt wird, den betreffenden einen Befehl auszuführen.
    509825/0380
    Leerseite
DE19742459975 1973-12-18 1974-12-18 Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem Granted DE2459975A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US425760A US3909799A (en) 1973-12-18 1973-12-18 Microprogrammable peripheral processing system

Publications (2)

Publication Number Publication Date
DE2459975A1 true DE2459975A1 (de) 1975-06-19
DE2459975C2 DE2459975C2 (de) 1989-12-21

Family

ID=23687915

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742459975 Granted DE2459975A1 (de) 1973-12-18 1974-12-18 Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem

Country Status (6)

Country Link
US (1) US3909799A (de)
JP (1) JPS5838809B2 (de)
CA (1) CA1027250A (de)
DE (1) DE2459975A1 (de)
FR (1) FR2254831B1 (de)
GB (1) GB1496780A (de)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2261567B1 (de) * 1974-02-20 1977-09-23 Honeywell Bull Soc Ind
GB1499742A (en) * 1974-10-30 1978-02-01 Motorola Inc Interface adaptor circuits in combination with a processo
JPS5178643A (en) * 1974-12-29 1976-07-08 Fujitsu Ltd Sabuchaneru memori akusesuseigyohoshiki
US3976977A (en) * 1975-03-26 1976-08-24 Honeywell Information Systems, Inc. Processor for input-output processing system
US4124888A (en) * 1975-12-24 1978-11-07 Computer Automation, Inc. Peripheral-unit controller apparatus
US4093981A (en) * 1976-01-28 1978-06-06 Burroughs Corporation Data communications preprocessor
US4162520A (en) * 1976-09-30 1979-07-24 Burroughs Corporation Intelligent input-output interface control unit for input-output subsystem
US4090250A (en) * 1976-09-30 1978-05-16 Raytheon Company Digital signal processor
JPS5362945A (en) * 1976-11-17 1978-06-05 Toshiba Corp Disc address system
US4161788A (en) * 1977-04-21 1979-07-17 Texas Instruments Incorporated Bubble memory controller with multipage data handling
US4099236A (en) * 1977-05-20 1978-07-04 Intel Corporation Slave microprocessor for operation with a master microprocessor and a direct memory access controller
US4246637A (en) * 1978-06-26 1981-01-20 International Business Machines Corporation Data processor input/output controller
US4293909A (en) * 1979-06-27 1981-10-06 Burroughs Corporation Digital system for data transfer using universal input-output microprocessor
USRE36989E (en) * 1979-10-18 2000-12-12 Storage Technology Corporation Virtual storage system and method
NL8004884A (nl) * 1979-10-18 1981-04-22 Storage Technology Corp Virtueel stelsel en werkwijze voor het opslaan van gegevens.
US4471457A (en) * 1980-08-21 1984-09-11 International Business Machines Corporation Supervisory control of peripheral subsystems
US4394734A (en) * 1980-12-29 1983-07-19 International Business Machines Corp. Programmable peripheral processing controller
US4476522A (en) * 1981-03-09 1984-10-09 International Business Machines Corporation Programmable peripheral processing controller with mode-selectable address register sequencing
US4454575A (en) * 1980-12-29 1984-06-12 International Business Machines Corporation Shared memory system with access by specialized peripherals managed by controller initialized by supervisory CPU
US4410962A (en) * 1981-02-17 1983-10-18 Pitney Bowes Inc. Mailing system interface interconnecting incompatible communication systems
US4395756A (en) * 1981-02-17 1983-07-26 Pitney Bowes Inc. Processor implemented communications interface having external clock actuated disabling control
US4435763A (en) 1981-04-13 1984-03-06 Texas Instruments Incorporated Multiprogrammable input/output circuitry
US4931922A (en) * 1981-10-01 1990-06-05 Stratus Computer, Inc. Method and apparatus for monitoring peripheral device communications
US4476527A (en) * 1981-12-10 1984-10-09 Data General Corporation Synchronous data bus with automatically variable data rate
US4493028A (en) * 1982-02-02 1985-01-08 International Business Machines Corporation Dual mode I/O
US4490784A (en) * 1982-04-21 1984-12-25 Ives David C High-speed data transfer unit for digital data processing system
DE3241376A1 (de) * 1982-11-09 1984-05-10 Siemens AG, 1000 Berlin und 8000 München Dma-steuereinrichtung zur uebertragung von daten zwischen einem datensender und einem datenempfaenger
US4773000A (en) * 1984-01-23 1988-09-20 Raytheon Company DMA for digital computer system
JPS63121610U (de) * 1987-01-27 1988-08-08
GB8816413D0 (en) * 1988-07-09 1988-08-17 Int Computers Ltd Data processing system
US5081609A (en) * 1989-01-10 1992-01-14 Bull Hn Information Systems Inc. Multiprocessor controller having time shared control store
US5237676A (en) * 1989-01-13 1993-08-17 International Business Machines Corp. High speed data transfer system which adjusts data transfer speed in response to indicated transfer speed capability of connected device
US6658526B2 (en) 1997-03-12 2003-12-02 Storage Technology Corporation Network attached virtual data storage subsystem
WO1998040810A2 (en) 1997-03-12 1998-09-17 Storage Technology Corporation Network attached virtual tape data storage subsystem
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
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US20030126132A1 (en) * 2001-12-27 2003-07-03 Kavuri Ravi K. Virtual volume management system and method
KR100860985B1 (ko) * 2003-05-23 2008-09-30 삼성전자주식회사 패딩 정보를 이용한 기록/재생 방법
US20090198876A1 (en) * 2008-01-31 2009-08-06 Jimmy Kwok Lap Lai Programmable Command Sequencer
US8302083B2 (en) * 2009-01-23 2012-10-30 Lsi Corporation Architecture and implementation method of programmable arithmetic controller for cryptographic applications
US10141072B2 (en) * 2015-06-11 2018-11-27 SK Hynix Inc. Efficient encoder based on modified RU algorithm
US10613128B2 (en) 2015-10-22 2020-04-07 Powertech Technology Inc. Testing device and testing method
TWI559325B (zh) * 2015-10-22 2016-11-21 力成科技股份有限公司 高頻記憶體之測試裝置及測試方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3654617A (en) * 1970-10-01 1972-04-04 Ibm Microprogrammable i/o controller

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573741A (en) * 1968-07-11 1971-04-06 Ibm Control unit for input/output devices
US3559187A (en) * 1968-11-13 1971-01-26 Gen Electric Input/output controller with linked data control words
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
US3675209A (en) * 1970-02-06 1972-07-04 Burroughs Corp Autonomous multiple-path input/output control system
US3673575A (en) * 1970-06-29 1972-06-27 Ibm Microprogrammed common control unit with double format control words
US3673576A (en) * 1970-07-13 1972-06-27 Eg & G Inc Programmable computer-peripheral interface
US3725864A (en) * 1971-03-03 1973-04-03 Ibm Input/output control
US3713108A (en) * 1971-03-25 1973-01-23 Ibm Branch control for a digital machine
US3716837A (en) * 1971-04-22 1973-02-13 Ibm Interrupt handling
US3740728A (en) * 1972-01-19 1973-06-19 Hughes Aircraft Co Input/output controller
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
US3742457A (en) * 1972-05-15 1973-06-26 Honeywell Inf Systems High speed data transfer for a peripheral controller
US3766526A (en) * 1972-10-10 1973-10-16 Atomic Energy Commission Multi-microprogrammed input-output processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3654617A (en) * 1970-10-01 1972-04-04 Ibm Microprogrammable i/o controller

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
US-Buch "Mikroprogramming" S. Husson, Prentice Hall, 1970, S. 186-191 *
US-Z.: Datamation, 1970, H. 4, S. 119-124 *

Also Published As

Publication number Publication date
US3909799A (en) 1975-09-30
GB1496780A (en) 1978-01-05
JPS5838809B2 (ja) 1983-08-25
JPS5093551A (de) 1975-07-25
DE2459975C2 (de) 1989-12-21
FR2254831A1 (de) 1975-07-11
CA1027250A (en) 1978-02-28
FR2254831B1 (de) 1978-10-13

Similar Documents

Publication Publication Date Title
DE2459975A1 (de) Mikroprogrammierter peripherer prozessor sowie diesen verwendendes peripheres untersystem
DE2459956A1 (de) Prozessor und diesen verwendendes peripheres verarbeitungssystem
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE1524102C3 (de) Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine
DE2500721A1 (de) Sekundaerspeicher fuer datenverarbeitungssysteme
DE2755952C2 (de)
DE2723523A1 (de) Kompression und dekompression von gespeicherten digitaldaten
DE2500006A1 (de) Wirtsdatenverarbeitungssystem und verfahren zur emulation von eingabe/ausgabe- befehlen
DE2806045A1 (de) Dv-system mit pufferspeicher
DE1449532B2 (de) Datenverarbeitungsanlage
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2847934A1 (de) Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher
DE2612083A1 (de) Verfahren und vorrichtung zur ein/ausgang-datenverarbeitung
DE2750721A1 (de) Ein/ausgabe-system
DE3741850A1 (de) Ausfuehrungseinheit fuer einen i/o-prozessor
DE2122338A1 (de) Schaltungsanordnung zur Steuerung des Datenflusses in Datenverarbeitungsanlagen
EP0010185B1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2248296A1 (de) Programmsteuereinrichtung
DE2440628A1 (de) Datenverarbeitungsanlage mit mikroprogrammierung
DE2801543A1 (de) Datenverarbeitungsanlage
DE1499206B2 (de) Rechenanlage
DE2365569A1 (de) Elektronischer rechner
DE2458286A1 (de) Datenverarbeitungssystem zum verschieben von datenfeldern mit verschiedenen strukturen
DE1806535A1 (de) Digitale Rechenanlage
DE1910859A1 (de) Speichersteuereinrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

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

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