DE2949793C2 - - Google Patents

Info

Publication number
DE2949793C2
DE2949793C2 DE2949793A DE2949793A DE2949793C2 DE 2949793 C2 DE2949793 C2 DE 2949793C2 DE 2949793 A DE2949793 A DE 2949793A DE 2949793 A DE2949793 A DE 2949793A DE 2949793 C2 DE2949793 C2 DE 2949793C2
Authority
DE
Germany
Prior art keywords
signal
signals
command
register
flip
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.)
Expired
Application number
DE2949793A
Other languages
English (en)
Other versions
DE2949793A1 (de
Inventor
Marion G. Phoenix Ariz. Us Porter
Robert W. Glendale Ariz. Us Norman Jun.
Richard T. Peoria Ariz. Us Flynn
Charles P. Phoenix Ariz. Us Ryan
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 Bull Inc
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
Priority claimed from US05/968,048 external-priority patent/US4314331A/en
Priority claimed from US06/005,101 external-priority patent/US4268907A/en
Application filed by Honeywell Bull Inc filed Critical Honeywell Bull Inc
Publication of DE2949793A1 publication Critical patent/DE2949793A1/de
Application granted granted Critical
Publication of DE2949793C2 publication Critical patent/DE2949793C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

Die vorliegende Erfindung betrifft eine Cachespeicher-Steuereinrichtung in einer Datenverarbeitungsanlage mit Hauptspeicher, Cachespeicher und Prozessor, in dem die Prozessor-Steuereinrichtungen eine Befehlsklassen- Dekodierschaltung umfassen, die auf den eine vorbestimmte Befehlsklasse darstellenden Operationscodeteil anspricht zur Erzeugung solcher Speicherkommandos, die den Abruf einer Datenwortgruppe aus dem Cachespeicher spezifizieren.
Im allgemeinen ermöglicht ein Cachespeicher der Datenverarbeitungsanlage einen schnellen Zugriff zu Daten und Befehlen. Zu diesem Zweck spricht ein Cachespeicher auf jedes Kommando an, das er von der DV-Anlage zugeführt bekommt, indem der angeforderte Block von Daten oder Befehlen aus dem Hauptspeicher abgerufen wird. In einem solchen System werden sämtliche Daten- und Befehlswörter aus dem Hauptspeicher, zu denen der Zugriff erfolgt, in den Cachespeicher eingeschrieben. Eine Ausnahme liegt jedoch dann vor, wenn bezüglich des Cachespeichers eine Umgehungs-Betriebsart eingestellt ist. Dies tritt in der Regel immer dann auf, wenn der Prozessor das Auftreten eines Fehlers ermittelt. Die Umgehung des Cachespeichers wird dann vom Prozessor her gesteuert. Nun hat sich allerdings herausgestellt, daß gewisse Befehlstypen, die man zur Verarbeitung von Datenfeldern innerhalb des Hauptspeichers heranzieht, während der normalen Befehlsausführung den Ersatz von umfangreichen, in dem Cachespeicher vorhandenen Datenwortsegmenten bewirken können. Wenn dies eintritt, so kommt das praktisch einer Löschung und Neubeschreibung des Cachespeichers gleich. Die Erkenntnis, daß man es dabei mit langen Ausführungs- bzw. Verarbeitungszeiten zu tun bekommt, wenn davon umfangreiche Datenfelder betroffen sind, hat die Systementwickler veranlaßt, in den Prozessoren Schaltungsanordnungen zur automatischen Unterbrechung derartiger Befehle als Teil einer Mittelbefehls-Unterbrechungsprozedur vorzusehen. Während man dadurch zwar die kontinuierliche Ausführung eines solchen Befehls vermeiden kann, kommt es dennoch zu einem extensiven Ersatz im Sinne von Löschung und Neueinschreiben von Daten im Cachespeicher.
In einer von der Patentsucherin stammenden US-Patentschrift 40 75 686 ist auch die Umgebung des Cachespeichers vorgesehen derart, daß der Prozessor direkt den Cachespeicher steuert, so daß die aus dem Hauptspeicher abgerufenen Daten am Cachespeicher vorbei übertragen werden. Dabei ist es so, daß jeder dem Cachespeicher zugeführte Lesebefehl ein in Abhängigkeit von der Codierung vorbestimmtes Bit enthält, das direkt die betreffende Betriebsweise des Cachespeichers steuert. Dabei gibt es einen Betriebszustand, in welchem dieses Bit den Cachespeicher veranlaßt, im Falle eines sogenannten "Cache-miss" keine vom Hauptspeicher empfangenen Daten abzuspeichern. Dabei will man in erster Linie erreichen, daß die Befehlsmodule eine raschere Abwicklung von Eingabe/Ausgabe-Transferoperationen erzielen. Insbesondere bei Transferoperationen, die sich auf Eingabe/Ausgabeeinheiten beziehen, besteht recht selten eine Veranlassung, die Daten auch in dem Cachespeicher abzuspeichern.
Aufgabe der vorliegenden Erfindung ist das Vermeiden großer, umfangreicher Datenübertragungs-Befehle, wie beispielsweise die Notwendigkeit, viele Befehle zum Austausch großer Datenmengen im Cachespeicher verarbeiten zu müssen. Damit unterscheidet sich die Aufgabenstellung deutlich von derjenigen beim US-PS 40 75 686. Die hier angestrebte Befehlsreduzierung erscheint deshalb sinnvoll, weil ohnehin nur für den ersten Teil der übertragenen Daten eine größere Wahrscheinlichkeit dafür besteht, daß sie frühzeitig für eine Verarbeitung durch den Prozessor aufgerufen werden.
Gelöst wird die vorstehend aufgezeigte Aufgabe durch die in dem Patentanspruch 1 angegebenen Merkmale. Die Implementierung der erfinderischen Lösung erfolgt ausschließlich mittels entsprechender Steuervorrichtung im Cachespeicher. Die Erfindung zielt darauf ab, durch eine geeignete Hardwarekonfiguration solche ganz bestimmte Typen von Befehlen zu identifizieren, und weiterhin darauf, daß es nur den ersten übertragenen Daten gestattet ist bzw. ermöglicht wird, dem Cachespeicher zugeführt zu werden, um dort bestimmte Daten zu ersetzen bzw. solche zu überschreiben.
Dies wird dadurch erreicht, daß man von der Tatsache nutzbringend Gebrauch macht, daß die umfangreichen Datenübertragungen durch den Prozessor so abgewickelt werden, daß eine Serie von Blockübertragungsbefehlen erzeugt wird, bis der gesamte Übertragungsverlauf beendet ist. Die Cache- Steuervorrichtungen emfpangen und identifizieren diese separaten Blockübertragungsbefehle und - im Falle eines Cachemiss (d. h. "im Cache nicht aufgefunden") - verlangen den Abruf der Datenblocks aus dem Hauptspeicher. Diese Cache-Steuervorrichtungen erlauben nur das Einschreiben des ersten Datenblocks in den Cachespeicher und bewirken, daß der Cachespeicher für die übrigen Datenblocktransfers in einen sogenannten exponierten Status versetzt wird.
Der Cachespeicher umfaßt Steuervorrichtungen, die auf einen ersten bestimmten Typ von den Aufruf von Datenwörtern spezifizierenden Kommandos hin ein Anzeigekennzeichen in einen bestimmten Zustand setzen. Die Steuervorrichtungen veranlassen auf das Auftreten nachfolgender Kommandos dieses bestimmten Typs, die Speicherung von anschließend aufgerufenen Datenwörtern im Cachespeicher zu umgehen, wenn sich das Anzeigekennzeichen in dem bestimmten Zustand befindet. Dadurch wird das Ersetzen einer zahlenmäßig übergroßen Menge von Daten- und Befehlswörters, die bereits in dem Cachespeicher während der Befehlsausführung gespeichert sind, vermieden.
Diese Steuervorrichtungen veranlassen die Speicherung von vom Hauptspeicher abgerufenen Datenwörtern im Cachespeicher auch dann zu umgehen, wenn die Datenwörter nicht in dem Cachespeicher gespeichert sind, aber das Anzeigekennzeichen sich in dem betreffenden bestimmten Zustand befindet. Dadurch werden auch andere Datenwörter, die aus dem Hauptspeicher abgerufen worden sind, auf das Auftreten einer bestimmten Befehlsklasse hin daran gehindert, in dem Cachespeicher gespeichert zu werden.
Gemäß einer bevorzugten Ausführungsform der Erfindung umfaßt das offenbarte DV-System einen Cachespeicher mit einer Vielzahl von Ebenen zur Speicherung von Datenblöcken und Befehlsworten, eine Adreßliste zur Speicherung von Adressen, die festlegen, welche Blöcke in den Cachespeicher untergebracht sind, und Steuervorrichtungen, die Anforderungen nach Absuchen der Adreßliste zur Ausführung bringen und auch feststellen, daß die angeforderten Daten nicht in dem Cachespeicher vorhanden sind. Die Steuervorrichtungen umfassen Decodierschaltmittel, die auf die Ermittlung eines bestimmten Kommandotyps hin derart betrieben sind, daß Signale erzeugt werden, die zur Umschaltung eines Anzeigekennzeichens in einen bestimmten Zustand in dem Fall dienen, daß bezüglich der durch den Befehl angeforderten Daten von der Adreßliste signalisiert wird, daß diese nicht in dem Cachespeicher gespeichert sind. Die Steuervorrichtungen werden auf das Auftreten eines nächsten Kommandos desselben Typs hin derart betrieben, daß weitere Steuervorrichtungen (ein weiteres bistabiles Steuerelement) in einen bestimmten Zustand umgeschaltet werden, wenn das Anzeigekennzeichen (Steuerkennzeichen) sich in dem bestimmten Zustand befindet und wenn die angeforderten Daten nicht in dem Cachespeicher gespeichert sind. Das weitere bistabile Steuerelement wird in dem bestimmten Zustand derart betrieben, daß die Adreßliste veranlaßt wird, eine Zuordnung zu weiteren Blöcken von Speicherplätzen in dem Cachespeicher vorzunehmen, um die dort gespeicherten Datenwörter durch Datenwörterblöcke zu ersetzen, die von jedem der folgenden bestimmten Kommandotypen gefordert werden, welche von der Verarbeitungseinheit erzeugt werden, währenddessen diese einen bestimmten Typ von Programmbefehl ausführt.
Derartige Befehle umfassen Bewegungs- bzw. Verschiebungs- Befehle, die Folgen von Datenzeichen umfassen, die von einem Segment des Hauptspeichers zu einem anderen Segment verschoben werden. Es hat sich herausgestellt, daß dann, wenn eine begrenzte Anzahl von Datenzeichen verschoben bzw. bewegt wird, eine hohe Wahrscheinlichkeit dafür vorhanden ist, daß derselbe Bereich des Hauptspeichers wieder einen Zugriff erhält. In dem Fall, daß die Anzahl der Datenzeichen groß ist, ist jedoch eine niedrige Wahrscheinlichkeit dafür vorhanden, daß wieder ein Zugriff zu demselben Bereich des Hauptspeichers erfolgt. Demgemäß ist es bei einer bevorzugten Ausführungsform der vorliegenden Erfindung durch die Abspeicherung eines Einleitungsteiles der Datenwörter, die einem halben Block innerhalb des Cachespeicher entsprechen, möglich, daß die Datenverarbeitungseinheit einen schnellen Zugriff zu jenen Zeichen erhält, wenn die Verschiebung bzw. Bewegung kurz ist. Bei der bevorzugten Ausführungsform umfaßt der halbe Block vier Wörter, wobei jedes Wort vier Datenzeichen oder Bytes umfaßt. Da die meisten Verschiebungs- bzw. Bewegungsoperationen, die kurz sind, im Mittel neun bis zwölf Zeichen einschließen, sind sämtliche Datenzeichen, zu denen aufeinanderfolgend mittels der Verarbeitungseinheit in dem Hauptspeicher zugegriffen wird, in dem Cachespeicher vorhanden. Wenn die Verschiebungs- bzw. Übertragungsoperation mehr als 16 Zeichen einschließt, werden die übrigen Datenzeichen automatisch an einer Speicherung in dem Cachespeicher gehindert. Dies bedeutet, daß der Cachespeicher gewissermaßen umgangen wird und daß die Datenzeichen direkt in einen 4-Wort-Datenpuffer geladen werden. Aus diesem Datenpuffer werden die betreffenden Datenzeichen zu der Datenverarbeitungseinheit hin übertragen.
Anhand von Zeichnungen wird die Erfindung nachstehend beispielsweise näher erläutert.
Fig. 1 zeigt in einem Blockdiagramm ein die Prinzipien der vorliegenden Erfindung anwendendes Datenverarbeitungssystem.
Fig. 2 zeigt in einem Blockdiagramm einen im System gemäß Fig. 1 vorgesehenen Hauptprozessor und eine Cachespeichereinheit.
Fig. 3a bis 3e zeigen im einzelnen einzelne der in Fig. 2 dargestellten Blöcke.
Fig. 4 zeigt in einem Blockdiagramm die in Fig. 2 dargestellte Cachespeichereinheit.
Fig. 5 zeigt im einzelnen eine Cachespeicher-Prozessorschnittstelleneinrichtung.
Fig. 6a veranschaulicht das Format der Steuerspeicher- Steuereinheit des Systems gemäß Fig. 1.
Fig. 6b veranschaulicht das Format von Mikrobefehlswörtern eines Ablaufsteuerspeichers gemäß Fig. 2 und 3.
Fig. 6c veranschaulicht das Format von Mehrfachwortbefehlen, die in der Anordnung gemäß der vorliegenden Erfindung verwendet werden.
Fig. 7a bis 7e veranschaulichen im einzelnen unterschiedliche Bereiche der Cachespeichereinheit.
Fig. 8 zeigt ein Flußdiagramm, welches zur Veranschaulichung der Arbeitsweise der vorliegenden Erfindung herangezogen wird.
Wie aus Fig. 1 ersichtlich ist, weist das die Prinzipien der vorliegenden Erfindung umfassende System zumindest einen Eingabe/Ausgabe-Prozessor 200, eine System- Schnittstelleneinheit 100, einen mit hoher Geschwindigkeit arbeitenden Multiplexer 300, einen mit niedriger Geschwindigkeit arbeitenden Multiplexer 400, einen Hauptprozessor 700, einen Cachespeicher bzw. Notizblockspeicher 750 und zumindest ein Speichermodul entsprechend einem örtlichen Speichermodul 500 und zumindest ein Speichermodul entsprechend einem Speichermodul 800 auf. Die verschiedenen Moduln sind mit einer Anzahl von Anschlüssen der Systemschnittstelleneinheit 100 über eine Vielzahl von Leitungen unterschiedlicher Arten von Schnittstelleneinrichtungen 600 bis 604 verbunden. So sind insbesondere der Eingabe/Ausgabe-Prozessor 200, der Cachespeicher 750 und der mit hoher Geschwindigkeit arbeitende Multiplexer 300 mit den Anschlüssen G, E bzw. A verbunden, während der mit niedriger Geschwindigkeit arbeitende Multiplexer 400, das örtliche Speichermodul 500 und das Hauptspeichermodul 800 mit den Anschlüssen J, LMO bzw. RMO verbunden sind. Der Hauptprozessor 700 ist mit dem Cachespeicher 750 verbunden.
Im folgenden werden die System-Schnittstelleneinrichtungen erläutert. Bevor der Prozessor 700 und die Cachespeichereinheit 750 im einzelnen beschrieben werden, die gemäß den Prinzipien der vorliegenden Erfindung aufgebaut sind, werden zunächst die Schnittstelleneinrichtungen 600 bis 604 betrachtet.
Die Daten-Schnittstelleneinrichtung 600 ist eine der Schnittstelleneinrichtungen, die für einen Informationsaustausch zwischen einem aktiven Modul und der Systemschnittstelleneinheit 100 sorgen. Der Informationsaustausch wird dadurch bewirkt, daß die Verknüpfungszustände verschiedener Signalleitungen in Übereinstimmung mit vorgegebenen Regeln gesteuert werden, die durch eine Folge von Signalen ausgeführt werden, welche als "Dialog" bezeichnet werden.
Die Schnittstelleneinrichtung 601 ist eine programmierbare Schnittstelleneinrichtung, die für eine Befehlsinformationsübertragung von einem aktiven Modul zu einem bezeichneten Modul hin sorgt. Die Übertragung wird dadurch bewirkt, daß die Verknüpfungszustände der verschiedenen Signalleitungen in Übereinstimmung mit vorher festgelegten Regeln gesteuert werden, die durch eine Reihenfolge von Signalen ausgeführt werden, welche als "Dialog" bezeichnet ist.
Eine weitere Schnittstelleneinrichtung ist die Unterbrechungs- Schnittstelleneinrichtung 602, die für eine Unterbrechungs-Verarbeitung durch den Eingabe/Ausgabe- Prozessor 200 sorgt. Dies bedeutet, daß die Schnittstelleneinrichtung die Übertragung einer Unterbrechungsinformation durch ein aktives Modul der Systemschnittstelleneinheit 100 zu dem Eingabe/Ausgabe-Prozessor 200 hin zum Zwecke der Verarbeitung ermöglicht. In entsprechender Weise wird bezüglich der anderen Schnittstelleneinrichtung die Übertragung von Unterbrechungsanforderungen dadurch vorgenommen, daß die Verknüpfungszustände der verschiedenen Signalleitungen in Übereinstimmung mit vorher festgelegten Regeln gesteuert werden, die durch eine als "Dialog" bezeichnete Folge von Signalen ausgeführt werden.
Eine nächste Reihe von Schnittstellenleitungen, die von bestimmten Moduln gemäß Fig. 1 verwendet sind, entspricht der örtlichen Speicherschnittstelleneinrichtung 603. Diese Schnittstelleneinrichtung sorgt für einen Informationsaustausch zwischen dem örtlichen Speicher 500 und den Moduln des Systems. Der Informationsaustausch wird dadurch bewirkt, daß Verknüpfungszustände der verschiedenen Signalschnittstellenleitungen in Übereinstimmung mit vorher festgelegten Regeln gesteuert werden, die durch eine Dialog-Folge von Signalen ausgeführt werden.
Die Speicher- und die programmierbaren Schnittstellenbefehle werden von denselben physikalischen Datenleitungen der Schnittstelleneinrichtung übertragen. Die Schnittstelleneinrichtung umfaßt nicht eine Reihe von Leitungen zur Verarbeitung von Unterbrechungsanforderungen, weshalb die über die Systemschnittstelleneinheit 100 mit dem örtlichen Speicher verbundenen Moduln nicht direkt eine Speicherunterbrechung hervorrufen können.
Bezüglich einer detaillierten Beschreibung der Elemente des in Fig. 1 dargestellten Systems und der Schnittstelleneinrichtungen 600 bis 603 sei auf die US-PS 40 06 466 hingewiesen.
Die letzte Schnittstelleneinrichtung 604 ist eine interne Schnittstelleneinrichtung, die zwischen der Cachespeichereinheit 750 und dem zentralen Prozessor 700 vorgesehen ist. Dies entspricht den Cachespeicher/Zentraleinheits- Schnittstellenleitungen gemäß Fig. 5. Diese Schnittstelleneinrichtung sorgt für den Informationsaustausch und den Austausch von Steuersignalen zwischen dem Prozessor 700 und der Cachespeichereinheit 750. Der betreffende Signalaustausch wird dadurch bewirkt, daß die Verknüpfungszustände der verschiedenen Signal-Schnittstellenleitungen gesteuert werden. Die Cachespeicher/ Zentraleinheits-Schnittstelleneinrichtung umfaßt eine Vielzahl von Daten für die Prozessorleitungen (ZDI 0-35, P₀-P₃), eine Vielzahl von ZAC- und Schreibdatenleitungen (ZADO 0-23, RADO 24-35, P₀-P₃), eine Prozessor- Anforderungssignalleitung (DREQ-CAC), eine Vielzahl von Cachespeicher-Befehlsleitungen (DMEM 0-3), eine Halte- Cachespeicherleitung (HOLD-C-CU), eine Löschleitung (CANCEL-C), eine Überleitungs-Leitung (CAC-FLUSH), eine Lesewortleitung (RD-EVEN), eine Lesebefehlpufferleitung (RD-IBUF), eine Lesedoppelleitung (FRD-DBLE), eine ungeradzahlige Leitung (FODD), eine Vielzahl von Befehlsleitungen (ZIB 0-35, P₀-P₃), eine Steuerleitung (DSZ), eine Lese-I-Pufferdatenleitung (RD-IBUF/ZDI), eine Vielzahl von Zonenbitleitungen (DZD 0-3), eine Nebenweg-Cachespeicherleitung (BYP-CAC), eine Schreibsignalleitung (WRT-SGN), eine Befehlspuffer-Leer-Leitung (IBUF-EMPTY), eine Befehlspuffer-Bereitschaftsleitung (IBUF-RDY), eine Befehlspuffer-Voll-Leitung (IBUF- FULL), eine CP-Stopleitung (CP-STOP), eine CP-Steuerleitung (DATA-RECOV), eine Deskriptor-Steuerleitung (FPIM- EIS), eine Transfer-Stop-Leitung (NO-GO) und eine Vielzahl von Befehlswortadressenleitungen (ZPTRORT 0-1).
Die Instruktionen bzw. Befehle, Cachespeicherbefehle und Daten werden der Cachespeichereinheit 750 über verschiedene Leitungen dieser Leitungen zugeführt. Darüber hinaus wird der Betrieb des Prozessors 700 über bestimmte Leitungen dieser Leitungen freigegeben bzw. gesperrt, wie dies noch erläutert werden wird. Nachstehend werden die Zentraleinheits/Cachespeicher-Schnittstellenleitungen im einzelnen beschrieben.
Zentraleinheits/Cachespeicher-Schnittstellenleitungen
Bezeichnung: DREQ-CAC
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu der Cachespeichereinheit 750 hin. Wenn die Leitung DREQ-CAC ein Binärsignal 1 führt, dann wird ein ZAC-Befehl zu dem Cachespeicher 750 hin über tragen. Im Falle des Auftretens eines Schreib-ZAC-Befehls werden Schreibdatenwörter in dem einen oder den beiden auf den ZAC-Befehl hin folgenden Zyklen übertragen, und Datenwörter werden von dem Prozessor 700 über den Cachespeicher 750 ohne eine Modifikation zu der Systemschnittstelleneinheit 100 hin übertragen.
Bezeichnung: DMEM 0,1,2,3
Beschreibung:
Diese Leitungen verlaufen von dem Prozessor 700 zu dem Cachespeicher 750 hin. Diese Leitungen führen eine solche Codierung, daß der Befehl bezeichnet wird, den der Cachespeicher 750 auszuführen hat. Dabei ist folgende Codierung vorgesehen:
DMEM = 0000 - keine Operation - dabei wird keine Maßnahme getroffen, und keine Cachespeicher-Anforderung wird hervorgerufen.
DMEM = 0001 - direkt - der direkte Befehl ermöglicht dem Prozessor 700, eine direkte Übertragung eines Operandenwertes ohne eine Wirkung auf den Teil des Cachespeichers 750 auszuführen. Damit wird keine Cachespeicheranforderung durch diesen Befehlstyp erzeugt.
DMEM = 0010 - Adreßbefehl in zyklischer Adreßfolge (ADD-WRAP): Dieser Befehl wird ausgeführt, um zu dem Befehl zurückzukehren, der dem Cachespeicher 750 von dem Prozessor 700 her gegeben worden ist. In demselben Zyklus wird der Befehl an den Prozessor 700 über die ZDI- Leitungen 0-35 abgegeben.
DMEM = 0100 - Laden des Befehlspuffers, Befehlsaufruf 1
(LD-IBUF-IF1): Der Ladebefehls- Pufferbefehl wird dazu herangezogen, die Adresse des nächsten Blocks von Befehlen in das andere Register RICA/RICB zu laden. Es gibt drei mögliche Betriebsablauffolgen für diesen Befehl:
  • 1. Im Falle einer Cachespeicheränderung werden dann, wenn der Cachespeicher 750 nicht umgangen wird, die in dem Cachespeicher 750 gespeicherte Blockadresse und die in diesem Speicher gespeicherte Ebene in das andere Befehlsregister geladen. Ein Cachespeicherspeicherzugriff wird dann vorgenommen, um den erwünschten Befehl aufzurufen, der zu dem Prozessor 700 über die ZDI-Leitungen 0-35 auf das Auftreten des folgenden T-Taktimpulses hin übertragen wird. Das andere Befehlsregister wird nunmehr zu dem benutzten Befehlsregister.
  • 2. Im Falle von Cachespeicher-Verfehlen, also dann, wenn der Cachespeicher 750 nicht umgangen wird, werden die durch die Umlaufschaltungen bezeichnete Blockadresse und die durch die bezeichneten Schaltungen bezeichnete Ebene in das andere Befehlsregister geladen. Der Prozessor wird abgeschaltet oder auf das Auftreten des folgenden T-Taktimpulses hin festgehalten, um zu bestimmen, ob die Erzeugung des IF1-Befehls auf einen Transferbefehl hin erfolgt. Wenn dies der Fall ist und wenn der Transferbefehl ein Stopbefehl ist, dann wird das gerade benutzte Befehlsregister dazu herangezogen, zum nächsten Befehl zuzugreifen, und der Prozessor 700 wird eingeschaltet. Wenn der IF1-Befehl durch einen Übertragungs- bzw. Transferbefehl hervorgerufen wird, bei dem es sich um einen GO-Befehl handelt, dann sendet der Cachespeicher 750 eine Speicheranforderung an die Systemschnittstelleneinheit 100 bezüglich des erwünschten Blockes von Informationen aus, und ferner wird eine Adreßlistenzuordnung bezüglich des fehlenden Blockes vorgenommen. Die von dem Speicher aufgenommenen Befehle werden zunächst in den Befehlspuffer eingeschrieben und dann in den Cachespeicher. Der angeforderte Befehl wird zu dem Prozessor 700 hin über die ZDI-Leitungen übertragen, und der Prozessor 700 wird auf das Auftreten des folgenden T-Taktimpulses hin eingeschaltet oder ausgelöst. Die übrigen Befehle des Blockes werden von dem Befehlspuffer über die ZIB-Leitungen zu dem Prozessor 700 hin übertragen.
  • 3. Wenn der Cachespeicher zu umgehen ist, liegt ein Treffer- bzw. Änderungssignal vor, wobei das Voll/Leer-Bit für den betreffenden Block zurückgesetzt wird. Sämtliche übrigen Operationen stimmen mit den Operationen des Ausweich-Falles überein, allerdings abgesehen davon, daß keine Adreßlisten-Zuordnung vorgenommen wird und daß der Block nicht in den Cachespeicher eingeschrieben wird.
DMEM = 0101 - Laden des Befehlspuffers - Befehlsaufruf 2
(LD-IBUF-IF2): Der Ladebefehls-Pufferbefehl wird dazu herangezogen, die Ebene des zweiten Blockes von Befehlen in das gerade benutzte Befehlsregister zu laden. Der Prozessor 700 wird im Falle eines Ausweichzustands nicht abgeschaltet. Außerdem sind drei mögliche Betriebsfolgen für diesen Befehl vorhanden:
  • 1. Im Falle des Vorliegens eines Cachespeicher-Trefferzustands und bei Vorliegen keiner Umgehung wird die Ebene des zweiten Blocks der Befehle in das gerade benutzte Befehlsregister geladen.
  • 2. Im Falle eines Cachespeicher-Umgehungszustands und bei Vorliegen keiner Umgehung wird in dem Fall, daß der IF1-Befehl als Ergebnis eines Transferbefehl-Stopzustands ermittelt worden ist, die IF1-Operation gelöscht. In einem anderen Fall als einem Stop-Zustand wird eine Adreßlisten-Zuordnung bezüglich des zweiten Blockes von Befehlen vorgenommen, und die aus den Umlaufschaltungen her erhaltene Ebene wird in das gerade benutzte Befehlsregister eingeschrieben. Der Cachespeicher 750 sendet eine Speicheranforderung an den Speicher bezüglich des Blockes aus. Wenn die Befehle aufgenommen sind, werden sie zunächst in den Befehlspuffer und später in den Cachespeicher 750 eingeschrieben. Wenn die Befehle benötigt werden, werden sie aus dem Befehlspuffer ausgelesen und über die ZIB Leitungen 0-35 zu dem Prozessor 700 hin übertragen.
  • 3. Im Falle eines Nebenweges bzw. einer Umgehung wird in dem Fall, daß ein Treffer- bzw. Änderungszustand vorhanden ist, das Voll/Leer-Bit für den betreffenden Block zurückgesetzt. Alle anderen Operationen stimmen mit jenen Operationen im Falle einer Cachespeicher- Umgehung überein, allerdings abgesehen davon, daß keine Adreßlisten-Zuordnung erfolgt und daß der Block nicht in den Cachespeicher 750 eingeschrieben wird.
DMEM = 0110 - Laden eines Vierer- Befehls:
Das Laden eines Vierer- Befehls wird dazu herangezogen, die Blockadresse für Daten (nicht Befehle) in das andere Befehlsregister zu laden. Dieser Vorgang ist ähnlich dem Vorgang beim Auftreten des Signals IF2, allerdings abgesehen davon, daß die Adresse und die Ebene (Umlaufschaltungen stellen die Ebene bereit, wenn ein Cachespeicher-Verfehlungszustand vorliegt) in das andere Befehlsregister geschrieben werden. Wenn die Daten nicht in dem Cachespeicher 750 enthalten sind und wenn der Prozessor 700 diese Daten anfordert, bevor sie aus dem Speicher aufgenommen worden sind, dann wird der Prozessor 700 angehalten oder stillgesetzt, bis die Daten aufgenommen sind. DMEM = 0111 - Vor-Lesen (PR-RD): Der Vor-Lesebefehl wird dazu herangezogen, den Cachespeicher 750 mit den Daten zu laden, die der Prozessor 700 für die Verwendung in der nahen Zukunft erwartet. Dabei sind die folgenden drei möglichen Betriebsablauffolgen vorhanden:
  • 1. Bei einem Cachespeicher-Treffer und ohne Vorliegen einer Umgehung wird der Vorlesebefehl als ein keine Operation bewirkender Befehl ausgeführt.
  • 2. Bei einem Cachespeicher-Ausweichsignal und ohne Vorliegen einer Umgehung erzeugt der Cachespeicher 750 eine Speicheranforderung bezüglich des Blockes, und außerdem wird eine Adreßlistenzuordnung bezüglich des fehlenden Blocks vorgenommen. Wenn die Daten von dem Speicher aufgenommen sind, werden sie in den Cachespeicher eingeschrieben. Der Prozessor 700 wird bezüglich dieses Zustands festgehalten.
  • 3. Bei einer Cachespeicher-Umgehung wird der Vorlesebefehl als keine Operation bewirkender Befehl behandelt.
DMEM = 1000 - Einfachlesebefehl (RD-SNG):
Der Einfachlesebefehl wird dazu herangezogen, ein einzelnes Datenwort zu dem Prozessor 700 zu übertragen. Dabei gibt es vier mögliche Betriebsablauffolgen für diesen Befehl:
  • 1. Im Falle eines Cachespeicher- Treffers und ohne eine Umgehung wird das adressierte Wort aus dem Cachespeicher 750 gelesen und auf das Auftreten des nächsten T-Taktimpulse hin über die ZDI-Leitungen 0-35 zu dem Prozessor 700 hin übertragen.
  • 2. Im Falle einer Cachespeicher- Ausweichung und ohne Vorliegen einer Umgehung wird der Prozessor 700 angehalten, und der fehlende Block wird in der Adreßliste bezeichnet. Der Cachespeicher 750 überträgt die Speicheranforderung zu dem Hauptspeicher hin. Die Datenwörter werden in den Cachespeicher eingeschrieben, wenn sie aufgenommen werden. Wenn das angeforderte Datenwort aufgenommen wird, wird der Prozessor 700 auf das Auftreten des folgenden T-Taktimpulses hin eingeschaltet.
  • 3. Im Falle eines Cachespeicher- Treffers und einer Umgehung wird das Voll/Leer-Bit des adressierten Blocks zurückgesetzt, und der Prozessor 700 wird abgeschaltet oder festgehalten. Der Cachespeicher 750 überträgt die Anforderung bezüglich eines Wortes zu dem Speicher hin, und der Prozessor 700 wird auf das Auftreten des folgenden T-Taktimpulses hin eingeschaltet, und zwar auf die Aufnahme des angeforderten Datenwortes hin. Das Datenwort wird nicht in den Cachespeicher 750 eingeschrieben.
  • 4. Bei einer Cachespeicher-Ausweichung und einer Umgehung laufen dieselben Operationen ab wie bei Vorliegen des Cachespeicher- Treffers und einer Umgehung, allerdings abgesehen davon, daß das Voll/Leer-Bit des adressierten Blocks nicht geändert wird.
DMEM = 1001 - Löschlesebefehl (RD-CLR):
Der Löschlesebefehl bzw. Leselöschbefehl wird dazu herangezogen, ein Datenwort aus dem Speicher zum Prozessor 700 hin zu übertragen und außerdem dieses Datenwort aus dem betreffenden Speicher zu löschen. Dabei sind zwei mögliche Betriebsablauffolgen bezüglich dieses Befehls vorhanden:
  • 1. Bei einem Cachespeicher-Treffer wird das Voll/Leer-Bit bezüglich dieses Blockes zurückgesetzt, und der Prozessor 700 wird abgeschaltet. Der Cachespeicher 750 führt eine Speicheranforderung bezüglich eines Datenwortes aus. Der Speicher löscht den betreffenden Speicherplatz. Wenn das Wort aufgenommen ist, überträgt der Cachespeicher 750 das Wort zum Prozessor 700 hin und schaltet den Prozessor 700 mit dem nächsten T-Taktimpuls ein. Das Wort wird nicht in den Cachespeicher 750 eingeschrieben.
  • 2. Bei einer Cachespeicher-Ausweichung laufen dieselben Operationen wie bei Vorliegen eines Cachespeicher-Treffers ab, allerdings abgesehen davon, daß keine Änderung der Voll/Leer-Bits des adressierten Blocks erfolgt.
DMEM = 1010 - Lesedoppel-Befehl (RD-DBL):
Der Lesedoppel-Befehl wird dazu herangezogen, zwei Datenwörter zum Prozessor 700 hin zu übertragen. Dabei gibt es zwei Typen von Lesedoppel-Befehlen, die sich in der Reihenfolge unterscheiden, in der die Datenwörter dem Prozessor 700 zugeführt werden. Wenn die Leitung DSZ1 ein Binärsignal "0" führt, dann ist die Reihenfolge gegeben durch ein ungeradzahliges Wort und ein geradzahliges Wort. Wenn die Leitung DSZ1 ein Binärsignal "1" führt, dann ist die Reihenfolge gegeben durch ein geradzahliges Wort und dann durch das Auftreten eines ungeradzahligen Wortes. Dabei existieren vier mögliche Betriebsablauffolgen für diesen Befehl:
  • 1. Bei einem Cachespeicher-Treffer und Fehlen einer Umgehung wird das erste Wort zu dem Prozessor 700 hin über die ZDI-Leitungen 0-35 mit Auftreten des folgenden T-Taktimpulsen übertragen. Auf das Auftreten des nächsten T-Taktimpulses hin wird das zweite Datenwort über die ZDI-Leitungen 0-35 zu dem Prozessor 700 hin übertragen.
  • 2. Bei einer Cachespeicher-Ausweichung und Fehlen einer Umgehung wird der Prozessor 700 abgeschaltet, und eine Adreßlistenzuordnung wird bezüglich des Blockes vorgenommen, der das adressierte Wortpaar enthält. Der Cachespeicher 750 überträgt die Speicheranforderung an die Systemschnittstelleneinheit 100 bezüglich des Blockes. Wenn die Datenwörter aufgenommen sind, werden sie in den Cachespeicher eingeschrieben. Wenn das angeforderte Wortpaar verfügbar ist, wird das erste Wort zu dem Prozessor 700 hin übertragen, der auf das Auftreten des nachfolgenden T-Taktimpulses hin eingeschaltet oder ausgelöst wird. der Cachespeicher 750 überträgt das zweite Wort zu dem Prozessor 700 hin auf das Auftreten des nächsten T-Taktimpulses hin.
  • 3. Bei Vorliegen eines Cachespeicher- Treffers und einer Umgehung wird das Voll/Leer- Bit des adressierten Blocks zurückgesetzt, und der Prozessor 700 wird abgeschaltet. Der Cachespeicher 750 überträgt die Anforderung bezüglich der beiden Datenwörter zu dem Speicher hin. Sobald die beiden Wörter verfügbar sind, wird der Prozessor 700 eingeschaltet, und das erste Datenwort wird diesem Prozessor auf das Auftreten des folgenden T-Taktimpulses hin zugeführt. Der Prozessor 700 nimmt das zweite Datenwort auf das Auftreten des nächsten T-Taktimpulses hin auf. Die Datenwörter werden nicht in den Cachespeicher eingeschrieben.
  • 4. Bei einer Cachespeicher-Ausweichung und einer Umgehung laufen dieselben Operationen wie im Falle des Vorliegens eines Cachespeicher-Treffers und einer Umgehung ab, allerdings abgesehen davon, daß keine Änderung der Voll/Leer- Bits erfolgt.
DMEM = 1011 - Fernlesebefehl (RD-RMT):
Der Fernlesebefehl wird dazu herangezogen, die normalen Cachespeicher- Lesevorgänge zu umgehen. Wenn der Befehl aufgenommen ist, wird der Prozessor 700 abgeschaltet, und die Anforderung wird zu dem Hauptspeicher hin übertragen. Wenn das angeforderte Wortpaar aus dem Speicher abgeholt ist, dann wird dem Prozessor 700 das erste Wort zugeführt, der auf das Auftreten des nachfolgenden T-Taktimpulses hin eingeschaltet wird. Das zweite Datenwort wird dem Prozessor 700 auf das Auftreten des nächsten T-Taktimpulses hin zugeführt. Die Reihenfolge, in der die Datenwörter übertragen werden, ist so, daß erst ein ungeradzahliges Wort und dann ein geradzahliges Wort auftreten. Innerhalb des Cachespeichers 750 erfolgen keine Änderungen.
DMEM = 1100 - Einzelschreibbefehl (WRT-SNG): Der Einzelschreibbefehl wird dazu herangezogen, Daten in den Speicher einzuschreiben. Dabei gibt es zwei mögliche Betriebsablauffolgen bezüglich dieses Befehls:
  • 1. Bei einem Cachespeicher-Treffer überträgt der Cachespeicher 750 die Anforderung zu dem Speicher hin. Wenn diese Anforderung angenommen wird, wird das Datenwort zu dem Speicher übertragen. Das Datenwort wird außerdem in den Cachespeicher 750 eingeschrieben.
  • 2. Bei einer Cachespeicher-Ausweichung laufen dieselben Operationen ab wie bei einem Cachespeicher- Treffer, allerdings abgesehen davon, daß keine Änderung bezüglich des Cachespeichers 750 erfolgt.
DMEM = 1100 - Doppelschreibbefehl (WRT-DBL):
Der Doppelschreibbefehl wird dazu herangezogen, zwei Datenwörter in den Speicher einzuschreiben. Dieser Befehl wird in ähnlicher Weise ausgeführt wie der Einzelschreibbefehl, allerdings abgesehen davon, daß zwei Wörter anstelle eines Wortes übertragen/eingeschrieben werden.
DMEM = 1111 - Fern-Schreibbefehl (WRT-RMT):
Der Fern-Schreibbefehl wird dazu herangezogen, die normalen Cachespeicher- Schreibvorgänge zu umgehen, und zwar insofern, als dann, wenn die adressierten Wörter in dem Cachespeicher 750 vorhanden sind, diese Wörter nicht aktualisiert werden. Der Cachespeicher 750 überträgt die Anforderung zu dem Speicher hin, und wenn sie dort angenommen ist, werden zwei Datenwörter zu dem Speicher hin übertragen.
Bezeichnung: HOLD-C-CU
Beschreibung:
Diese Leitung verläuft vom Prozessor 700 zu dem Cachespeicher 750 hin. Wenn diese Leitung ein Binärsignal 1 führt, dann legt dieses Steuersignal fest, daß der Cachespeicher 750 als im HOLD-Zustand bezüglich Anforderungen oder Datenübertragungen anzunehmen ist.
Bezeichnung: CANCEL-C
Beschreibung:
Diese Leitung verläuft vom Prozessor 700 zu dem Cachespeicher 750. Wenn diese Leitung ein Binärsignal 1 führt, zeigt das betreffende Steuersignal an, daß der Cachespeicher 750 jeglichen Prozessorbefehl unberücksichtigt lassen sollte, der gerade ausgeführt wird.
Bezeichnung: CAC-FLUSH
Beschreibung:
Diese Leitung verläuft vom Prozessor 700 zu dem Cachespeicher 750 hin. Wenn diese Leitung ein Binärsignal 1 führt, wird ein Durchlauf des Cachespeichers 750 begonnen (dies bedeutet, daß der Cachespeicher 750 in einen Zustand gebracht wird, in dem er leer erscheint, indem sämtliche Voll/Leer-Bits zurückgesetzt werden).
Bezeichnung: RD-EVEN
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Wenn der Cachespeicher eine Doppelwortanforderung an die Systemschnittstelleneinheit hin richtet, dann wird das geradzahlige Wort in einem Spezialregister (REVN) aufbewahrt. Wenn die Leitung RD-EVEN ein Binärsignal 1 führt, dann wird der Inhalt des REVN- Registers über den ZDIN-Schalter an die ZDI-Leitungen abgegeben.
Bezeichnung: ZADO 0-23, RADO 24-35, P₀-P₃
Beschreibung:
Diese vierzig, Signale in einer Richtung übertragenden Leitungen verlaufen vom Prozessor 700 zu dem Cachespeicher 750 hin. Die betreffenden Leitungen werden dazu herangezogen, ZAC-Befehle und Schreibdatenwörter zum Cachespeicher 750 hin zu übertragen. Wenn die Leitung DREQ CAC ein Binärsignal 1 führt, werden der ZAC-Befehl und im Falle eines Schreibbefehls die Schreibdatenwörter während eines oder zweier Zyklen auf den ZAC-Befehl hin übertragen. Die auf den DMEM-Leitungen codiert auftretenden Befehle können die gleichen Befehle sein wie der ZAC-Befehl.
Bezeichnung: RD-IBUF
Beschreibung:
Diese Leitung verläuft vom Prozessor 700 zu dem Cachespeicher 750 hin. Wenn diese Leitung ein Binärsignal 1 führt, so zeigt diese Leitung an, daß der Prozessor 700 den Befehl von dem Befehlsregister RIRA her aufnimmt. In den meisten Fällen wird der betreffende Befehl dazu herangezogen, das Abholen des nächsten in das Register RIRA zu ladenden Befehls zu beginnen.
Bezeichnung: DZD 0-3
Beschreibung:
Diese vier Leitungen verlaufen von dem Prozessor 700 zu dem Cachespeicher 750 hin. Sie übertragen Zonenbit-Signale des ungeradzahligen Worts bezüglich der Doppelschreibbefehle.
Bezeichnung: BYP-CAC
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Wenn sie ein Binärsignal 1 führt, dann wird der Cachespeicher 750 veranlaßt, Datenwörter aus dem Hauptspeicher auf Lesebefehl hin anzufordern. Wenn ein Cachespeicher-Treffer auftritt, wird der die angeforderten Daten enthaltende Block aus dem Cachespeicher 750 herausgeführt, indem das damit verbundene Voll/Leer-Bit zurückgesetzt wird. Bezüglich der Einzelschreib- oder Doppelschreibbefehle werden die Daten in den Cachespeicher 750 eingeschrieben, wenn ein Cachespeicher-Treffer auftritt.
Bezeichnung: WRT-SGN
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie wird dazu herangezogen, dem Prozessor 700 während der Schreibbefehle zu signalisieren, daß der Cachespeicher 750 die Übertragung der ZAC-Befehle und Datenwörter zu der Systemschnittstelleneinheit 100 hin beendet hat.
Bezeichnung: FPIM-EIS
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Wenn sie ein Binärsignal 1 führt, wird dem Cachespeicher 750 signalisiert, daß der Prozessor 700 einen IF1-Befehl für zusätzliche EIS-Deskriptoren abgibt.
Bezeichnung: DSZ1
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Der Zustand dieser Leitung legt für den Cachespeicher 750 fest, in welchen Reihenfolge die Wörter an den Prozessor 700 auszusenden sind, wenn ein Doppellesebefehl ausgeführt wird.
Bezeichnung: NO-GO
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Wenn sie Binärsignal 1 führt, zeigt dies an, daß der Prozessor 700 einen Übertragungs- bzw. Transferbefehl ausführt, der ein Befehl NO-GO ist. Dadurch wird dem Cachespeicher 750 signalisiert, daß er den IF1-Befehl löschen sollte, den er im Ausweichzustand aufgenommen hatte, und daß außerdem der IF2-Befehl unberücksichtigt bleiben sollte, der gerade an die DMEM-Leitungen abgegeben wird.
Bezeichnung: RD-IBUF/ZDI
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Sie bewirkt, daß der Cachespeicher 750 einen Zugriff zu dem Datenwort unter der Adresse vornimmt, die in dem anderen Befehlsregister enthalten ist, und diese Daten an die ZDI-Leitungen abgibt. Mit Rücksicht auf einen ausstehenden LDQAD-Befehl hält der Cachespeicher 750 den Prozessor 700 an, wenn die Leitung RD-IBUF/ZDI ein Binärsignal 1 führt.
Bezeichnung: FRD-DBL
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Sie signalisiert dem Cachespeicher 750 im Voraus, daß der Prozessor 700 die Ausführung einer Doppelleseoperation anfordert.
Bezeichnung: FODD
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu dem Cachespeicher 750 hin. Sie wird in Verbindung mit der Leitung FRD-DBLE dazu herangezogen, die Reihenfolge der angeforderten Wörter zu signalisieren. Wenn diese Leitung ein Binärsignal 1 führt, zeigt dies an, daß die Reihenfolge ungeradzahlig-geradzahlig ist.
Bezeichnung: ZDI 0-35, P₀, P₁, P₂, P₃
Beschreibung:
Diese vierzig Leitungen, die Signale in einer Richtung übertragen, verlaufen von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie geben Daten von dem Cachespeicher 750 an den Prozessor 700 ab.
Bezeichnung: ZIB 0-35, P₀, P₁, P₂, P₃
Beschreibung:
Diese vierzig Leitungen, die Signale in einer Richtung übertragen, verlaufen von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie geben Befehle an den Prozessor 700 ab.
Bezeichnung: I BUF-EMPTY
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Wenn sie ein Binärsignal 1 führt, zeigt dies an, daß der Cachespeicher 750 den letzten Befehl aus dem vorliegenden Befehlsblock übertragen hat.
Bezeichnung: I BUF-RDY
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Wenn sie ein Binärsignal 1 führt, zeigt dies an, daß zumindest ein Befehl in dem vorliegenden Befehlsblock in dem Cachespeicher 750 vorhanden ist. Das Auftreten eines Binärsignals 0 auf dieser Leitung zeigt einen Nichtbereitschaftszustand dann an:
  • 1. wenn die Befehlsadresse eines IF1-Blockes in dem Cachespeicher auf den ersten Befehl eines IF2-Blockes umschaltet, der nicht in dem Cachespeicher und nicht in dem IBUF2-Buffer enthalten ist.
  • 2. und wenn Befehle aus dem IBUF1- Puffer oder aus dem IBUF2-Puffer abgeholt werden und wenn der nächste aufzurufende Befehl in einem Zwei-Wort-Puffer enthalten ist, welcher von dem Speicher nicht aufgenommen worden ist.
Bezeichnung: I BUF-FULL
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie zeigt an, daß zumindest vier Befehle in dem vorliegenden Befehlsblock vorhanden sind oder daß zumindest ein Befehl und eine ausstehende IF2-Anforderung vorliegen.
Bezeichnung: CP STOP
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Wenn sie ein Binärsignal 1 führt, zeigt dies an, daß der Prozessor 700 angehalten ist oder bezüglich seiner Operation einen Warte- oder Haltzustand erfordert. Im Falle eines Leseausweichzustands infolge eines Prozessorbefehls wird der Prozessor 700 auf den anschließend auftretenden T-Taktzyklusimpuls hin festgehalten. Wenn der Prozessor ausgelöst wird, führt die Leitung DATA RECOV ein Binärsignal 1, wodurch die betroffenen Prozessor-Register wieder eine Abtastung erfahren. Wenn die Leitung RDIBUF/ZDI ein Binärsignal 1 führt, bevor die Daten aus dem Speicher aufgenommen sind, dann wird der Prozessor 700 vor dem anschließend auftretenden T-Taktimpuls festgehalten. Wenn er ausgelöst wird, werden die angeforderten Daten für den Prozessor 700 auf den ZDI-Leitungen verfügbar gemacht und auf den anschließend auftretenden T-Taktimpuls hin verwendet.
Bezeichnung: DATA-RECOV
Beschreibung:
Diese Leitung verläuft von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie wird dazu herangezogen, die Prozessor-Register nach erfolgter Stillsetzung des Prozessors 700 wieder abzutasten, und zwar auf die Ermittelung eines Cachespeicher-Ausweichzustands oder eines Lese-Umgehungszustands hin. Am Ende des Zyklus, innerhalb dessen auf der Leitung DREQ CAC ein Binärsignal 1 auftritt, wird der Ausweichzustand ermittelt, wobei der Prozessor 700 jedoch nicht stillgesetzt werden kann, und zwar bis nach Auftreten des folgenden T-Taktimpulses. Demgemäß werden Fehldaten/Befehle in die Prozessorregister von den Leitungen ZDI/ZIB her eingetastet. Wenn die geforderten Daten/Befehle verfügbar werden, wird an die Leitung DATA RECOV ein Binärsignal 1 abgegeben, um die Register wieder abzutasten, die während der letzten Cachespeicher- Anforderung abgetastet wurden.
Bezeichnung: ZPTR-OUT-0-1
Beschreibung:
Diese beiden Leitungen verlaufen von dem Cachespeicher 750 zu dem Prozessor 700 hin. Sie führen derart codierte Signale, daß die beiden Bits niedrigster Wertigkeit der Adresse des Befehls spezifiziert sind, der in dem RIRA-Befehlsregister oder in dem I-Puffer enthalten ist.
Bezeichnung: FE020
Beschreibung:
Diese Leitung verläuft von dem Prozessor 700 zu der Cachespeichereinheit 750 hin. Sie wird dazu herangezogen, der Cachespeichereinheit 750 ein Signal zuzuführen, wenn die Ausführung eines Übertragungsbefehls beendet ist.
Im folgenden wird der Prozessor 700 gemäß Fig. 2 generell beschrieben. Wie aus Fig. 2 ersichtlich ist, umfaßt der Hauptprozessor 700 eine Ablaufsteuereinheit 701, eine Steuereinheit 704, eine Ablauf- bzw. Ausführungseinheit 714, eine Zeicheneinheit 720, eine Hilfs-Rechen- und Steuereinheit 722 und eine Multiplikations/Divisions- Einheit 728. Diese Einheiten sind in der aus Fig. 2 ersichtlichen Weise miteinander verbunden. Die Steuereinheit 704 weist darüber hinaus eine Anzahl von Verbindungen mit der Cachespeichereinheit 750 auf, wie dies dargestellt ist.
Die Ablaufsteuereinheit 701 umfaßt eine Ausführungs- Steuerspeicher-Adressenvorbereitungs- und Verzweigungseinheit 701-1 und einen Ablaufsteuerspeicher 701-2. Der Speicher 701-2 und die Einheit 701-1 sind als über Busleitungen 701-3 und 701-6 miteinander verbunden dargestellt.
Die Steuereinheit 704 weist eine Steuerlogikeinheit 704-1 einen Steuerspeicher 704-2, eine Adressenvorbereitungseinheit 704-3, Daten- und Adressenausgabeschaltungen 704-4 und einen XAQ-Registerbereich 704-5 auf, der mit den betreffenden Einheiten in der ersichtlichen Weise verbunden ist.
Wie aus Fig. 2 ersichtlich ist, führt von der Systemschnittstelleneinheit 600 eine Anzahl von Eingangsleitungen zu der Cachespeichereinheit 750 hin. Die Leitungen dieser Schnittstelleneinrichtung sind zuvor im einzelnen beschrieben worden. In Verbindung mit dem Betrieb der Cachespeichereinheit 750 ist jedoch anzumerken, daß bestimmte dieser Leitungen in der nachstehend angegebenen Weise speziell codierte Signale führen.
  • 1. MITS 0-3 für Lesevorgänge sind wie folgt codiert: Bits 0-1 = 00, Bits 2-3 = Transitblockpufferadresse, die den ZAC- Befehl für die vorliegende Leseoperation enthält. Für die Schreiboperation sind die Bits 0-3 = ungeradzahlige Wortzone.
  • 2. MIPS-Leitungen führen folgende codierte Signale: Bit 0 = 0, Bit 1 = 0, geradzahlige Wortpaare (Worte 0,1) Bit 1 = 1 ungeradzahlige Wortpaare (Worte 2, 3) Bits 2-3 = Transitblockpufferadresse, die den ZAC- Befehl für die empfangenen Daten enthält.
Im Hinblick auf die Schnittstellenleitungen DPS 00-35, P₀-P₃ sei angemerkt, daß diese Leitungen Lesedaten zu der Cachespeichereinheit 750 hin führen. Die Leitungen DTS 00-35, P₀-P₃ werden dazu herangezogen, Befehle und Daten aus dem Cachespeicher 750 zu der Systemschnittstelleneinheit 100 hin zu übertragen.
Die Steuereinheit 704 nimmt die notwendige Steuerung zur Ausführung von Adressenvorbereitungsoperationen, Befehlsaufruf/ Ausführungsoperationen und bezüglich der sequentiellen Steuerung der verschiedenen Betriebszyklen und/oder Maschinenzustände vor. Die Steuerung wird durch Verknüpfungsschaltungen des Blocks 704-1 und durch die Ablaufsteuereinheit 701 bezüglich der verschiedenen Teile der Steuereinheit 704 ausgeführt.
Der XAQ-Registerbereich 704-5 umfaßt eine Anzahl von Sichtprogrammregistern, wie Indexregister, ein Akkumulatorregister und ein Quotientenregister. Andere Sichtprogrammregister, wie der Befehlszähler und Adreßregister, sind in der Adressenvorbereitungseinheit 704-3 enthalten.
Wie aus Fig. 2 hervorgeht, nimmt der Bereich 704-5 Signale von der Einheit 704-3 auf, die kennzeichnend sind für den Inhalt des Befehlszählers. Diese Signale gelangen über die Leitungen RIC 00-17. Außerdem werden über die Leitungen ZRESA 00-35 Ausgangssignale von der Ablaufeinheit 714 abgegeben. Diese Signale entsprechen den Ergebnissen der Operationen, die auf die verschiedenen Operanden hin ausgeführt sind. Der Bereich 704-5 erhält ferner ein Ausgangssignal von der Hilfs-Rechen- und Steuereinheit her über die Leitungen RAAU 0-8 zugeführt.
Der Bereich 704-5 gibt Signale ab, die kennzeichnend sind für den Inhalt eines der Register, die innerhalb des betreffenden Bereiches vorgesehen sind. Diese Signale werden als Eingangsgröße an die Adressenvorbereitungseinheit 704-3 abgegeben. Die Adressenvorbereitungseinheit bzw. Adressenbildungseinheit 704-3 leitet die betreffende Information über einen Schalter zu der Ausführungseinheit 714 hin, und zwar über die Leitungen ZDO 0-35. In entsprechender Weise kann der Inhalt bestimmter Register der in dem Bereich 704-5 enthaltenen Register zu der Ablaufeinheit 714 hin über die Leitungen ZEB 00-35 übertragen werden. Schließlich kann der Inhalt von ausgewählten Registern dieser Register aus dem Bereich 704-5 zu der Multiplikations/Divisions-Einheit 728 hin über die Leitungen ZAQ 00-35 übertragen werden.
Die Adressenbildungseinheit bzw. Adressenvorbereitungseinheit 704-3 erzeugt Adressen aus dem Inhalt der verschiedenen Register, die in der betreffenden Einheit enthalten sind, und gibt die sich ergebenden Verknüpfungssignale, effektiven Adressen und/oder absoluten Adressen zur Verteilung an die anderen Einheiten über die Leitungen ASFA 00-35 ab. Die Adressenbildungseinheit 704-3 nimmt die Ergebnisse der Operationen auf, die auf zwei Operanden hin durch die Ablaufeinheit 714 ausgeführt worden sind. Diese Ergebnissignale werden über die Leitungen ZRESB 00-35 aufgenommen. Die Einheit 704-3 nimmt Signale auf, die kennzeichnend sind für den Inhalt zweier Basiszeigerregister, und zwar von der Steuerlogikeinheit 704 hier über die Leitungen RBASA und RBASB 0-1. Die Ausgangssignale der Multiplikations/Divisions-Einheit 728 werden an die Adressenbildungseinheit 704-3 abgegeben. Schließlich wird der Inhalt eines Sekundär- Befehlsregisters (RSIR) als Eingangssignal über die Leitungen RSIR 00-35 an die Einheit 704-13 abgegeben.
Die Daten- und Adressenausgabeschaltungen 704-4 erzeugen die Cachespeicher-Adressensignale, die über die Leitungen RADO/ZADO 00-35 an die Cachespeichereinheit 750 abgegeben werden. Diese Adressensignale entsprechen den Signalen, die an eine Eingangsleitung der Reihe von Eingangsleitungen ZDI 00-35, ASFA 00-35 und ZRESB 00-35 abgegeben sind. Dabei werden die betreffenden Leitungen durch Schalter ausgewählt, die in den Schaltungen des Blockes 704-4 enthalten sind. Diese Schaltungen werden nachstehend im einzelnen erläutert werden.
Die Steuerlogikeinheit 704-1 stellt Datenwege bereit, die eine Schnittstellenbeziehung mit den verschiedenen Einheiten aufweisen, welche in der Cachespeichereinheit 750 enthalten sind. Wie hier im einzelnen beschrieben sorgen die Leitungen ZIB 00-35 für eine Schnittstelle zu einem Befehlspuffer, der in dem Cachespeicher 750 enthalten ist. Die Leitungen ZDI 00-35 werden dazu herangezogen, Datensignale von dem Cachespeicher 750 zu der Steuerlogikeinheit 704-1 zu übertragen. Die ZPTROUT-Leitungen werden dazu herangezogen, eine Adresseninformation aus dem Cachespeicher 750 zu der Einheit 704-1 hin zu übertragen. Andere Signale werden über die anderen Daten- und Steuerleitungen der Cachespeicher- Zentralprozessor-Schnittstelleneinrichtung 704 abgegeben. Diese Leitungen umfassen die in Fig. 2 gesondert dargestellte Leitung CP-STOP.
Wie aus Fig. 2 ersichtlich, liefert die Steuerlogikeinheit 704-1 eine Anzahl von Ausgangssignalgruppen. Diese Ausgangssignale umfassen den Inhalt bestimmter Register, wie beispielsweise eines Basisbefehlsregisters (RBIR), dessen Inhalt als Eingangsgröße dem Steuerspeicher 704-2 über die Leitungen RBIR 18-27 zugeführt wird. Die Steuerlogikeinheit 704-1 nimmt bestimmte Steuersignale auf, die aus dem Steuerspeicher 704-2 ausgelesen und über die Leitungen CCSDO 13-31 übertragen werden.
Die Steuerlogikeinheit 704-1 umfaßt ferner ein sekundäres Befehlsregister (RSIR), welches parallel mit dem Basisbefehlsregister zu Beginn einer Befehlsverarbeitung geladen wird. Der Inhalt des sekundären Befehlsregisters RSIR 00-35 wird, wie zuvor erwähnt, als Eingangsgröße der Adressenbildungseinheit 704-3 zugeführt. Darüber hinaus wird ein Teil des Inhalts des sekundären Befehlsregisters als Eingangsgröße der Hilfs-Rechensteuereinheit 722 über die Leitungen RSIR 1-9 und 24-35 zugeführt.
Der Steuerspeicher 704-2 bewirkt, wie hier erläutert, eine Anfangsdecodierung von Programmbefehls-Operationcodes, weshalb er so ausgelegt ist, daß er eine Anzahl von Speicherplätzen (1024), und zwar einen für jeden möglichen Befehlsoperationscode, aufweist.
Wie bereits erwähnt, werden die an die Leitungen RBIR 18-27 abgegebenen Signale als Eingangssignale dem Steuerspeicher 704-2 zugeführt. Durch diese Signale wird einer der 1024 möglichen Speicherplätze ausgewählt. Der Inhalt des jeweils ausgewählten Speicherplatzes wird an die Leitungen CCSDO 13-31 und CCSDO 00-12 abgegeben, wie dies aus Fig. 2 ersichtlich ist. Die an die Leitungen CCSDO 00-12 abgegebenen Signale entsprechen den Adressensignalen, die zur Adressierung der Ablaufsteuereinheit 701 herangezogen werden, wie dies hier erläutert wird.
Die übrigen Bereiche des Prozessors 700 werden nunmehr kurz beschrieben. Die Ablaufeinheit 714 sorgt für einen Befehlsablauf, im Zuge dessen die Einheit 714 Rechen- und/oder Verschiebeoperationen auf Operanden hin ausführt, die von den verschiedenen Eingangsgrößen ausgewählt sind. Die Ergebnisse derartiger Operationen werden ausgewählten Ausgängen zugeführt. Die Ablaufeinheit 714 nimmt Daten von einer Dateneingangsbusleitung her auf, die den Leitungen RDI 00-35 entspricht. Die Quelle dieser Daten ist die Steuerlogikeinheit 704-1. Der Inhalt der Akkumulator- und Quotientenregister, die in dem Bereich 704-5 enthalten sind, wird an die Ablaufeinheit 714 über die zuvor erwähnten Leitungen ZEB 00-35 abgegeben. Die an die Eingangsbusleitungen ZDO 00-35 von der Adressenbildungseinheit 704-3 abgegebenen Signale werden über in der Ablaufeinheit 714 enthaltene Schalter als Ausgangssignale an die in Fig. 2 dargestellten Leitungen ZRESA 00-35 und ZRESB 00-35 abgegeben. Darüber hinaus nimmt die Ablaufeinheit 714 eine Reihe von Notizblockspeicher-Adressensignalen von der Hilfs-Rechen- und Steuereinheit 722 her auf, welche Signale über die Leitungen ZRSPA 00-06 abgegeben werden. Überdies gibt die Einheit 722 eine Verschiebeinformation über die Leitungen ZRSC 00-35 an die Einheit 714 ab.
Die Zeicheneinheit 720 wird dazu herangezogen, Zeichenbefehle auszuführen, die solche Operationen erfordern, wie die Übersetzung und Aufbereitung von Datenfeldern. Wie hier erläutert, werden diese Befehlstypen als erweiterte Befehlssatz-(EIS)-Befehle bezeichnet. Derartige Befehle, die die Zeicheneinheit 720 ausführt, umfassen die Übertragungs-, Abtast- und Vergleicherbefehle. Signale, die kennzeichnend sind für Operanden, werden über die Leitungen ZRESA 00-35 abgegeben. Informationen bezüglich des Typs der Zeichenposition innerhalb eines Wortes und bezüglich der Anzahl der Bits werden an die Zeicheneinheit 720 über die Eingangsleitungen ZDB 00-07 abgegeben.
Informationen, die kennzeichnend sind für die Ergebnisse bestimmter Datenoperationen, werden über die Leitungen ZOC 00-08 an die Einheit 722 abgegeben. Eine derartige Information umfaßt Exponentendaten und Daten in Hexadezimalform. Die Zeicheneinheit 720 gibt Ausgangs- Operandendaten und eine Steuerinformation an die Einheit 722 bzw. an die Einheit 728 über die Leitungen RCHU 00-35 ab.
Die Hilfs-Rechen- und Steuereinheit 722 führt Rechenoperationen auf eine Steuerinformation hin aus, wie auf Exponenten hin, die bei Gleitkommaoperationen verwendet werden. Außerdem berechnet die betreffende Einheit Operandenlängen und Zeiger und erzeugt eine Zählinformation. Die Ergebnisse dieser Operationen werden über die Leitungen ZRSPA 00-06 und über die Leitungen ZRSC 00-06, die oben erwähnt worden sind, an die Ablaufeinheit 714 abgegeben. Die Informationssignale, die Zeichen entsprechen, wie 9-Bit-Zeichen, 6-Bit-Zeichen, aus eingangsseitigen Hexadezimaldaten umgesetzten Dezimaldaten, Quotienteninformationen und Vorzeicheninformationen, werden über die Leitungen RAAU 00-08 an den Bereich 704-5 abgegeben.
Wie aus Fig. 2 ersichtlich ist, nimmt die Einheit 722 eine Anzahl von Eingangssignalen auf. Die Zeichenzeigerinformation wird über die Leitungen ASFA 33-36 zugeführt. Eine numerische EIS-Maßstabs-Information sowie eine alphanumerische Feldlängeninformation werden über die Leitungen RSIR 24-35 der Einheit 722 zugeführt. Weitere Signale, die sich auf das Aufrufen von speziellen Befehlen beziehen, werden über die Leitungen RSIR 01-09 zugeführt. Die Exponentensignale für die Gleitkommadaten werden der Einheit 722 über die Leitungen ZOC 00-08 zugeführt, während Gleitkomma-Exponentendatensignale von der Einheit 704-1 über die Leitungen RDI 00-08 zugeführt werden. Verschiebe-Zählinformationssignale für die verschiedenen Befehle (z. B. binäre Verschiebebefehle) werden an die Einheit über die Leitungen RDI 11-17 abgegeben. Im Hinblick auf die an die Leitungen RCHU 00-35 abgegebenen Eingangssignale sei bemerkt, daß die Leitungen 24-35 Signale entsprechend der Länge der EIS-Befehlsfelder führen, während die Leitungen 18-23 Adressenmodifikationssignale zu der Einheit 722 hin führen.
Die letzte Einheit ist die Multiplikation/Divisions-Einheit 728, die für eine schnelle Ausführung von Multiplikations- und Divisionsbefehlen sorgt. Diese Einheit kann von herkömmlichem Aufbau sein und beispielsweise in der Form ausgeführt sein, wie die in der US-PS 40 41 292 beschriebene Multiplikationseinheit. Die in Fig. 2 angedeutete Einheit 728 nimmt über die Leitungen RCHU 00-35 Multiplikator-, Dividend- und Divisor-Eingangssignale auf. Die Multiplikanden-Eingangssignale aus dem Registerbereich 704-5 werden über die Leitungen ZAQ 00-35 zugeführt. Die Ergebnisse der durch die Einheit 728 ausgeführten Rechenvorgänge werden als Ausgangssignale an die Leitungen ZMD 00-35 abgegeben.
Wie bereits erwähnt, überträgt die Cachespeichereinheit 750 Daten und Steuersignale zu der Systemschnittstelleneinheit 100 und nimmt derartige Signale von dieser Einheit her über die Datenschnittstellenleitung 600 auf. Die Cachespeichereinheit 750 überträgt Daten und Steuersignale zu dem Prozessor 700 und empfängt derartige Informationen von diesem Prozessor über die Leitungen der Schnittstelleneinrichtung 604. Schließlich nimmt die Cachespeichereinheit 750 Adressen und Datensignale von den Schaltungen 704-4 über die Leitungen RADO/ZADO 00-35 auf.
Im folgenden wird der Prozessor 700 im einzelnen beschrieben. Bestimmte Bereiche der vorgesehenen Bereiche, die den in Fig. 2 dargestellten Prozessor bilden, werden nunmehr unter Bezugnahme auf Fig. 3a bis 3e im einzelnen beschrieben.
Aus Fig. 3a und 3b ist ersichtlich, daß der Prozessor zwei Steuerspeicher aufweist:
  • (1) Den Steuereinheit- Steuerspeicher 704-200, der einen Teil der Steuereinheit 704 bildet, und
  • (2) den Ablaufsteuerspeicher 701-3, der in der Ablaufsteuereinheit 701 enthalten ist.
Der cachespeicherorientierte Prozessor 700 enthält bei der bevorzugten Ausführungsform der vorliegenden Erfindung ein dreistufiges sogenannte Pipeline-System. Dies bedeutet, daß der Prozessor 700 zumindest drei Prozessorzyklen erforderlich macht, um die Verarbeitung eines gegebenen Programmbefehls zu beenden, und daß er einen neuen Befehlsbeginn dieses Zyklus ausgegeben kann. Damit kann die Anzahl der Programmbefehle in einer bestimmten Verarbeitungsstufe zu irgendeinem vorgegebenen Zeitpunkt vorliegen.
Gemäß der bevorzugten Ausführungsform enthält der Prozessor 700 folgende Stufen: einen Befehlszyklus (I), in welchem eine Befehlsauswertung, eine Operationscode- Decodierung und eine Adressenbildung erfolgen, einen Cachespeicher-Zyklus (C), in welchem ein Zugriff zu der Cachespeichereinheit 750 vorgenommen wird, um einen Betrieb hoher Leistungsfähigkeit sicherzustellen, und einen Ausführungszyklus (E), in welchem die Befehlsausführung unter einer Mikroprogrammsteuerung stattfindet.
Im Hinblick auf die Steuerung sei angemerkt, daß während des I-Zyklus der Operationscode des über die Leitungen RBIR 18-27 abgegebenen Befehls für einen Zugriff zu einer Speicherstelle bzw. zu einem Speicherplatz innerhalb des Steuerspeichers 704-2 herangezogen wird. Während eines C-Zyklus wird der Inhalt, zu dem im Steuerspeicher 704-2 ein Zugriff erfolgt ist, an die Leitungen CCS DO 00-12 abgegeben und für einen Zugriff zu einem der Speicherplätze des Ablaufsteuerspeichers 701-2 herangezogen. Während des C-Zyklus werden die Mikrobefehle des zur Ausführung des Befehls benutzten Mikroprogramms aus dem Ablaufsteuerspeicher 701-2 in ein 144-Bit-Ausgaberegister 701-4 gelesen. Die mit MEMDO 00-143 bezeichneten Signale werden auf die verschiedenen Funktionseinheiten des Prozessors 700 verteilt. Während eines E-Zyklus führt der Prozessor die durch den Mikrobefehl spezifizierte Operation aus.
Unter spezieller Bezugnahme auf Fig. 2 dürfte ersichtlich sein, daß der Steuerspeicher 704-2 einen Steuereinheit- Steuerspeicher 704-200 umfaßt, der durch die Operationscodesignale adressiert wird, die an die Leitungen RBIR 18-27 angelegt werden. Der betreffende Steuerspeicher 704-200 umfaßt 1024 Speicherplätze, deren Inhalt während eines I-Betriebszyklus in ein Ausgaberegister 704-202 gelesen wird. In Fig. 6a ist schematisch das Format der Wörter veranschaulicht, die in dem Steuerspeicher 704-200 gespeichert sind.
Aus Fig. 6a dürfte ersichtlich sein, daß jedes Steuereinheit- Steuerspeicherwort fünf Felder umfaßt. Das erste Feld ist ein 13-Bit-Feld, welches einen ECS-Startadressenplatz für den Befehl umfaßt, bezüglich dessen ein Operationscode an die Leitungen RBIR 18-27 abgegeben ist. Das nächste Feld ist ein 3-Bit-Feld (CCSO), welches zur Steuerung bestimmter Operationen dient. Die Bit-Interpretationen des Feldes hängen von ihrer Bestimmung und davon ab, ob sie durch bestimmte Verknüpfungsschaltungen oder unter einer Mikroprogrammsteuerung decodiert werden. Das nächste Feld ist ein 4-Bit-Feld, welches bestimmten Registersteueroperationen dient.
Das nächste Feld ist ein 6-Bit Folgesteuerfeld bzw. Sequenzsteuerfeld, welches so codiert ist, daß es eine Folge von Operationen bezeichnet, die unter einer hardwaremäßig verdrahteten Verknüpfungssteuerschaltung ebenso auszuführen sind wie die Cachespeicher-Operation. Bei der vorliegenden Ausführungsform ist dieses Feld als 758 codiert. Das letzte Feld ist ein 6-Bit-Anzeigefeld, welches für das Verständnis der vorliegenden Erfindung nicht wichtig ist.
Wie aus Fig. 3a ersichtlich ist, werden die dem CCSA-Feld eines Steuereinheit-Steuerspeicherwortes entsprechenden Signale über einen Verbindungsweg 704-204 als Eingangssignale an die Ablauferzeugerschaltungen 701-7 abgegeben. Die dem CCSR-Feld entsprechenden Signale werden als Eingangssignale an die Ablaufeinheit 714 über den Verbindungsweg 704-206 abgegeben. Darüber hinaus werden dieselben Signale als Eingangssignale an die Adressenbildungseinheit 704-3 über einen weiteren Verbindungsweg 704-208 abgegeben.
Die für das Ablaufsteuerfeld kennzeichnenden Signale werden als Eingangssignale an die Folgesteuerungs- Verknüpfungsschaltungen 704-100 über den Verbindungsweg 704-210 abgegeben. Wie hier erläutert, decodieren diese Schaltungen das Folgesteuerfeld und erzeugen Signale, durch die die Cachespeichereinheit 750 in den Stand versetzt wird, die bezeichnete Operation auszuführen.
Wie zuvor erwähnt, erhält die Ablaufadressenerzeugerschaltung 701-1 eine Eingangsadresse, die dem Feld CCSA von dem Steuerspeicher 704-2 her entspricht. Wie aus Fig. 3b ersichtlich ist, umfassen diese Schaltungen ein Eingabeadreßregister 701-10, dessen Ausgang mit einer Position eines 4-Stellungs-Schalters 701-12 verbunden ist; diese Stellung ist mit ZECSA bezeichnet. Der Ausgang des betreffenden Schalters dient als Adressenquelle für den Steuerspeicher 701-2. In der ersten Stellung des Schalters 701-12 wird eine Adresse von dem MICA- Register 701-14 her aufgenommen. Der Inhalt des Registers 701-14 wird am Ende jedes Zyklus aktualisiert, um auf die Stelle innerhalb des ECS-Steuerspeichers hinzuzeigen, die derjenigen Stelle bzw. demjenigen Speicherplatz folgt, dessen Inhalt während des betreffenden Zyklus ausgelesen wurde.
In der zweiten Stellung wird die von den ZCSBRA-Auswahlschalter 701-18 hervorgerufene Adresse ausgewählt. In der dritten Stellung wird die Adresse des ersten Mikrobefehls in jedem Mikroprogramm ausgewählt, welches von dem CCS-Steuerspeicher geliefert wird, wobei ein Laden in das REXA-Register 701-10 erfolgt. Wenn das CCS-Ausgangssignal am Ende eines Mikroprogramms nicht verfügbar ist, wird automatisch eine vorbestimmte Adresse (Octaladresse 14) ausgewählt.
In der ersten Stellung des Verzweigungsschalters 701-18 werden Signale aufgenommen, die einer Verzweigungsadresse entsprechen, welche aus dem Speicher 701-2 in das Register 701-4 gelesen worden ist und die ihrerseits zu einem Rückkehr-Steuerregister 701-20 hin weitergeleitet worden ist. In der zweiten und vierten Stellung des Schalters 701-18 werden Signale von dem RSCR-Register 701-20 bzw. einem MIC-Register 701-15 bzw. der Inhalt einer Anzahl von Vektorverzweigungsregistern 701-36 aufgenommen. Das MIC-Register 701-15 speichert eine Adresse, die auf das Mikrobefehlswort hinzeigt, welches dem Mikrobefehlswort folgt, welches ausgeführt wird. Diese Adresse entspricht der Adresse von dem Schalter 701-12 her, wobei einer Erhöhung um eins durch eine Erhöhungs- bzw. Inkrementierungsschaltung 701-12 erfolgt.
Die Vektorverzeigungsregister umfassen ein 4-Bit-Vektorverzweigungsregister 0 (RVBO), ein 2-Bit-Vektorverzweigungsregister 1 (RVB1) und ein 2-Bit-Vektorverzweigungsregister 2 (RVB2). Diese Register werden während eines Betriebszyklus mit Adressenwerten geladen, die aus Signalen abgeleitet sind, welche in einer Anzahl von verschiedenen Anzeige-Flipflops und Registern gespeichert sind und die als Eingangssignale an die Anzahl von Gruppen von Eingangs-Multiplexerauswahlschaltungen 701-32 und 701-34 abgegeben werden. Die Ausgangssignale der betreffenden Schaltungen 701-32 und 701-34 werden als Eingangssignale an Zwei-Stellungs-Auswahlschaltungen 701-30 abgegeben. Diese Schaltungen erzeugen ihrerseits die Ausgangssignale ZVBR0, ZVBR1 und ZVBR2, die in dem Register 701-36 gespeichert werden.
Der Schalter 701-36 liefert eine Adresse auf der Basis der Prüfung bzw. des Testens der verschiedenen Hardware- Anzeigesignale und Zustands-Flipflops-Signale, die über ein INDGRP-Feld ausgewählt werden. Die Verzweigungsentscheidung wird durch eine Maskierung (ANDING) des ausgewählten Anzeigesatzes mit den Feldern INDMSKU und INDMSKL eines Mikrobefehlswortes bestimmt. Wenn eine Vektorverzweigung ausgewählt ist, wird das Feld INMSKU als ein vier Null-Bits enthaltendes Feld behandelt. Das ODER-Signal der acht Bits wird mit dem Zustand verglichen, der durch die Mikrobefehlsfelder TYPG und GO definiert ist. Die Hardware-Signale werden über eine Anzahl von Daten-Auswahlschaltungen 701-28 abgegeben, von denen lediglich eine Auswahlschaltung veranschaulicht ist. Die Ausgangssignale dieser Ausgangsschaltungen werden nacheinander als Eingangssignale einer weiteren Fünf-Stellungs-Multiplexerauswahlschaltung 701-26 zugeführt. Das Ausgangssignal der Multiplexerschaltung 701-26 wird einer Vergleicherschaltung zugeführt, die die Anzeigesignale mit den Maskensignalen undmäßig zusammenfaßt, um die Ergebnissignale MSKCBR 0-7 zu erzeugen.
Die Signale MSKCBR 0-7 werden einer weiteren Vergleicherschaltung zugeführt, welche die betreffenden Signale mit den Zustandsverzweigungstestsignalen TYPGGO undmäßig zusammengefaßt, um ein Verzweigungsentscheidungs- Flipflop 701-22 zu setzen oder zurücksetzen. Dieses Flipflop erzeugt ein Signal RBDGO, dessen Zustand anzeigt, ob eine Verzweigung stattfindet. Das Ausgangssignal RBDGO wird als ein Steuereingangssignal dem ersten Eingang von zwei Eingängen bzw. Positionen des Schalters 701-12 zugeführt. Wenn die Verzweigungstestbedingung nicht erfüllt ist (d. h., daß das Signal RBDGO = 0 ist), dann wird die inkrementierte bzw. vergrößerte Adresse von dem MICA-Register 701-14 ausgewählt.
In einigen Fällen, wie im vorliegenden Fall, ist es nicht möglich, den Zustand einer Anzeige auf den Zyklus hin zu testen, der der Bildung der betreffenden Anzeige folgt. Aus diesem Grunde sind die historische Entwicklung aufzeichnende Entwicklungsregister HR0-HR7 (nicht dargestellt) für die Registerspeicherung der zur Gruppe 2 gehörenden Anzeigen vorgesehen. Die Zustände der so gespeicherten Anzeigen werden ausgewählt und in einer ähnlichen Weise getestet wie die übrigen Anzeigen (das sind Maskierungsfelder).
Die Einheit 701-1 umfaßt darüber hinaus eine Anzahl von Anzeigeschaltungen, von denen bestimmte Anzeigeschaltungen dazu herangezogen werden, den Betrieb von bestimmten Teilen des Prozessors 700 zu steuern, wenn die Zeichenfolgen, die durch bestimmte Befehlstypen verarbeitet werden, ausgegeben worden sind. Diese Anzeigeschaltungen sind in dem Block 701-42 enthalten; sie werden unter der Steuerung eines Feldes innerhalb des Mikrobefehlswortes gemäß Fig. 6a gesetzt und zurückgesetzt (das ist das IND6-Feld). Die Bits dieses Feldes, die aus dem ECS-Ausgaberegister 701-4 ausgelesen sind, werden an einer RMI-Register 701-38 abgegeben, um durch einen Decoder 701-40 decodiert zu werden. Auf der Grundlage des Zustands der Statusanzeigesignale, die von den verschiedenen Prozessoreinheiten her aufgenommen werden (z. B. 714, 720, 722, etc.) werden die in Frage kommenden Hilfs-Flipflops in die binären Zustände 1 geschaltet. Die Ausgangssignale dieser Flipflops werden über die verschiedenen Stellungen eines Vier-Stellungs-Schalters 701-44 an die GP3-Stellung des Schalters 701-26 abgegeben, um einen Test durchzuführen. Dieselben Ausgangssignale werden einer zweiten Stellung eines ZIR-Schalters 701-43 zugeführt, um über den ZDO-Schalter 704-310 eine Einspeicherung hervorzurufen. Der ZIR-Schalter 701-43 nimmt außerdem Anzeigesignale von dem Anzeigeregister (IR) 701-41 her auf. Dieses Register wird über die RDI-Leitungen 18-30 und 32 auf das Auftreten von bestimmten Befehlen hin geladen.
Die Anzeigestatussignale umfassen beispielsweise die Ausgangssignale der verschiedenen Addierschaltungen (AL, AXP) der Einheit 720. Diese Signale setzen unterschiedliche Flipflops der in einer Anzahl von vorgesehenen Ausgabe-Kennzeichen-Flipflops, die mit FE11, FE12, FE13, FE1E, FE2E, FE2 und FE3 bezeichnet sind. Die Flipflops FE1E und FE2E werden während jedes FPOA-Zyklus eines Befehls gesetzt. Diese Flipflops bewirken ihrerseits das Setzen der Flipflops FE11, FE12 und FE13, wenn die Ausgangssignale von den Addiererschaltungen AL oder AXP der Einheit 720 auftreten. Das Setzen und Zurücksetzen dieser Anzeigen wird nachstehend weiter im einzelnen in Verbindung mit der Erläuterung der Arbeitsweise beschrieben. Die Abgabe-Kennzeichen-Flipflops, die für die Ausführungsform wichtig sind, werden entsprechend den nachstehenden Bollschen Ausdrücken gesetzt bzw. zurückgesetzt, wobei das Setzen jeweils mit SET und das Zurücksetzen jeweils mit RESET angedeutet ist.
SET: FE1E = FPOA + IND6FLD Feld.
RESET: FE1E = IND6FLD Feld.
SET: FE2E = FPOA + IND6FLD Feld.
RESET: FE2E = IND6FLD Feld.
SET: FE11 = IND6FLD Feld · FE1E (ALES + AXPES + DESC1 · AP 0-4=0) + IND6FLD - Feld · FE1E. · DESC1 · (AP 0-5=0 + APZN + ALZN) + IND6FLD Feld.
RESET: FE11 = FPOA + IND6FLD Feld.
SET: FE12 = IND6FLD Feld · FE1E · (ALES + AXPES + FE13).
RESET: FE12 = FPOA + IND6FLD Feld.
SET: FE13 = IND6FLD Feld · FE1E · ALES + IND6FLD Feld.
RESET: FE13 = FPOA + IND6FLD Feld.
SET: FE2 = IND6FLD Feld · FE2E · ALES + IND6FLD Feld · FE2E · DESC2 · (AP 0-4=0 + AP 0-5=0 + APZN + ALZN) + (IND6FLD Feld) FE2E · DESC2 + IND6FLD.
RESET: FE2 = FPOA + IND6FLD Feld.
SET: FE3 = IND6FLD Feld · DESC3 · (AP 0--4=0 + AP 0-5 + APZN + ALZN) + IND6FLD Feld · DESC3 + IND6FLD.
RESET: FE3 = FPOA + IND6FLD Feld.
Wobei IND6FLD einen bestimmten Code abgibt.ALES = AL = 0 or ;AXPES = AXP = 0 or ;
APZN = AP 0-7 0; und,
ALZN = AL 0-11 0.
Der ZCSBRA-Schalter 701-18 ist normalerweise freigegeben, wenn das Verzweigungs-Entscheidungs-Flipflop RBD nicht in den Binärzustand 1 während des vorhergehenden Zyklus gesetzt wurde. In der ersten Stellung wird eine 13-Bit- Verzweigungsadresse von dem gerade vorliegenden Mikrobefehl ausgewählt, der über das RCR-Register 701-20 abgegeben wird. Die Verzweigungsadresse gibt die direkte Adressierung irgendeines Speicherplatzes der Speicherplätze des ECS-Steuerspeichers frei. In der zweiten Stellung wird die Verkettung der sechs niederwertigen Adressenbits von dem vorliegenden Mikrobefehl ausgewählt, der über das MIC-Register 701-15 abgegeben wird, und der sieben oberen Bits der Verzweigungsadresse von dem vorliegenden Mikrobefehl her, der über das RCR-Register 701-20 abgegeben wird. Dies ermöglicht Verzweigungen innerhalb einer 64-Wort-Seite, wie dies durch den Inhalt des MIC-Registers 701-15 festgelegt ist (vorliegender Speicherplatz +1).
In der dritten Position wird die Verkettung der vier niederwertigen Bits von dem RVB0-Vektorverzweigungsregister, der sechs Bits von dem Verzweigungsfeld des in dem RCSR-Register gespeicherten vorliegenden Mikrobefehls und der drei oberen Bits der Adresse vorgenommen, die in dem MIC-Register gespeichert ist. Dies ermöglicht 16fache Verzweigungen. In der vierten Stellung wird die Verkettung der zwei niederwertigen Nullen mit den vier Bits von dem Vektorverzweigungsregister RVB0 sowie mit den vier höchstwertigen Bits des Verzweigungsadressenfeldes des vorliegenden Mikrobefehls und mit den drei oberen Bits der vorliegenden Adresse ausgewählt, die in dem MIC-Register gespeichert ist. Dies ermöglicht 16fache Verzweigungen in den drei Steuerspeicherplätzen zwischen jedem benachbarten Bestimmungsadressenpaar.
In der fünften Stellung wird die Verkettung der zwei niederwertigen Nullen mit zwei Bits von dem Vektorverzweigungsregister RVB1 sowie mit den sechs Bits der Verzweigungsadresse des gerade vorliegenden Mikrobefehls und den oberen drei Bits von dem MIC-Register her ausgewählt. Dies ermöglicht Verzweigungen mit vier möglichen Bestimmungen bei drei Steuerspeicherplätzen zwischen dem jeweiligen benachbarten Bestimmungsadressenpaar.
In der sechsten Stellung wird die Verkettung der zwei niederwertigen Nullen mit zwei Bits von dem Vektorverzweigungsregister RVB2 her sowie mit den sechs Bits der Verzweigungsadresse des gerade vorliegenden Mikrobefehls und den oberen drei Bits von dem MIC-Register her ausgewählt. Dies ermöglicht vierfache Verzweigungen bei drei Steuerspeicherplätzen zwischen dem jeweiligen benachbarten Bestimmungsadressenpaar.
Die Ausgangssignale des Schalters 701-12 adressieren einen bestimmten Speicherplatz innerhalb des Steuerspeichers 701-2, der das Auslesen eines Mikrobefehlswortes mit einem in Fig.. 6b dargestellten Format hervorruft. Aus Fig.. 6b geht dabei hervor, daß dieses Mikrobefehlswort derart codiert ist, daß es eine Anzahl von unterschiedlichen Feldern umfaßt, die dazu herangezogen werden, die verschiedenen Funktionseinheiten innerhalb des Prozessors 700 zu steuern. Dabei werden hier lediglich diejenigen Felder beschrieben, die sich auf die vorliegende Ausführungsform beziehen.
Im folgenden wird die Steuerlogikeinheit 704-1 näher erläutert. Diese Einheit umfaßt ide Ablauf-Decodierverknüpfungsschaltungen 704-100, wie sie bereits erwähnt worden sind und deren Ausgangssignale einer Vielzahl von I-Zyklus-Steuerzustands-Flipflops des Blocks 704-102 zugeführt werden. Diese Flipflops erzeugen auf das Auftreten von Signalen von den Schaltungen 704-100 her sowie auf Mikrobefehlssignale von dem Register 701-4 (DMEMRO38-40), die dem MEM-Adressenfeld MEMADR gemäß Fig.. 6b entsprechen, die verschiedenen geforderten I-Zyklus-Steuerzuständen, die bezüglich der Ausführung von Programmbefehlen erforderlich sind. Es ist angenommen, daß der Block 704-102 ferner Verknüpfungsschaltungen aufweist, die Register-Haltesignale erzeugen (HOLDE00, die in dem Prozessor 700 verteilt werden).
Wie aus Fig.. 3c ersichtlich ist, nehmen die I-Zyklus- Steuerzustands-Flipflops Steuereingangssignale über Steuerleitungen, einschließlich einer Leitung CPSTOP00, von der Cachespeichereinheit 750 her auf. Wie hier erläutert, bestimmt der Zustand der CPSTOP00-Leitung, ob die Prozessoroperation fortgesetzt wird, wenn die Leitung ein Binärsignal 0 führt. Die Halte- oder Freigabesignale für die I-Zyklus-Steuerzustands-Flipflops und die anderen Speicherregister werden ebenfalls in den Nullzustand gebracht. Die Haltesignale, die den Signalen HOLDI00 und HOLDE00 entsprechen, werden in der Weise verarbeitet, daß der Zustand des Prozessors 700 festgehalten oder gehalten wird. Da keine Erhöhung der Steuerspeicheradresse stattfinden kann, liest der ECS-Steuerspeicher dasselbe Mikrobenbefehlswort aus. Die Signale HOLDI und HOLDE werden in Übereinstimmung mit den folgenden Booleschen Ausdrücken gesetzt: HOLDI = CACHE HOLD + TERMB (DREQ-IF-DIR) + HOLD REL, wobei der Zustand des Signals CACHE HOLD dem Zustand des Signals CPSTOP entspricht und wobei die Signale TERMB (DREQ-IF-DIR) Binärsignale 1 während des Steuerzustands FPOA sind, wenn der Cachespeicherbefehl eine I-Aufruf- oder direkte Operation spezifiziert und das Signal HOLD REL ein Binärsignal 1 ist, bis es zu einem Binärsignal 0 durch die Erzeugung eines Mikroprogramm-Auslösesignals umgeschaltet wird. Ferner ist HOLD E = HOLD I.
Die durch die Schaltungen 704-100 auf die Abgabe der Signale an die Leitungen CCSDO 20-25 in erzeugte Hardware- Ablauffolge wird im Zuge der Erläuterung der Arbeitsweise der vorliegenden Erfindung in folgender Weise herangezogen.
CCS-S Code
Ablauffolge
111011 =
MLR
Die Ablauffolge ist FPOA-FPOP1, gefolgt von FPOP2. Dabei tritt ein Ausweichen auf die Mikroprogrammsteuerung auf, worauf das Setzen der Register, Tabellen, etc., folgt, was für die Verarbeitung der Übertragung von Operandensignalen zu den Hardware- Steuerschaltungen zur Eingabe des Zustands FECS erforderlich ist.
Die fest verdrahteten Steuerzustände, die zur Erläuterung der Arbeitsweise der vorliegenden Erfindung herangezogen werden und zur Erläuterung der Operationen, die in Verbindung mit derartigen Steuerzuständen ausgeführt werden, sind folgende:
Steuerzustand/Zyklus: FPOA
Beschreibung:
Der FPOA-Vorbereitungs-Operandenadressenzustand ist der Start-Steuerzustand für sämtliche Befehle. Während eines FPOA-Zustands wird eine Adresse berechnet, und der Operationscode wird durch den CCS-Steuerspeicher zur Steuerung von weiteren Vorgängen übersetzt.
Steuerzustand/Zyklus: FPOP
Beschreibung:
Der FPOP-Vorbereitungs-Operandenzeiger ist der Steuerzustand, der zur Verarbeitung von Befehls-Deskriptoren herangezogen wird.
Steuerzustand/Zyklus: FESC
Beschreibung:
Die FESC-Ausweichung ist der Zustand zur Erzielung einer variablen Verzögerung bezüglich der I-Prozeß- Pipeline. Während des Vorliegens des FESC-Zustands soll der ECS-Steuerspeicher die vollständige Steuerung über den Prozessor 700 besitzen und bestimmen, wann mit dem I-Prozeß- Pipeline-Vorgang wieder zu beginnen ist.
Wie aus Fig.. 3c hervorgeht, werden den I-Zyklus-Steuerungszuständen entsprechende Signale als Eingangssignale einer Vielzahl von Steuerungs-Flipflops des Blocks 704-104, den Decoderschaltungen des Blocks 704-106, einer Anzahl von Steuerverknüpfungsschaltungen des Blocks 704-108 und einer Vielzahl von Steuerkennzeichen-Flipflops des Blocks 704-110 zugeführt. Außerdem dürfte ersichtlich sein, daß die verschiedenen Anzeige-Flipflops des Blocks 704-110 Mikrobefehls- Eingangssignale über die Leitungen MEMDO 54-57 von der Ablaufsteuereinheit 701-4 her aufnehmen.
Wie aus Fig.. 3c ersichtlich ist, fallen die durch die Hardware-Steuerverknüpfungsschaltungen 704-108 erzeugten Signale in eine von drei Gruppen, und zwar als Funktion der Einheiten, deren Operationen gesteuert werden. Dies bedeutet, daß die Gruppen gegeben sind durch die Befehlspuffersteuerung, durch die Hardwaresteuerung und die Hardwarespeichersteuerung.
In jedem Falle wird jede Gruppe von Signalen odermäßig mit entsprechenden bzw. äquivalenten Signalen zusammengefaßt, die von anderen Quellen erzeugt werden, und sodann erfolgt eine Decodierung. Die anderen Quellen entsprechen den Feldern innerhalb der beiden unterschiedlichen Formate des Mikrobefehlswortes gemäß Fig. 6a, die von dem ECS-Ausgaberegister 701-4 in das RCSR-Register 704-112 geladen werden.
Ein Feld entspricht den Bits 32-83 des einen Formates (CU lang), und ein anderes Feld (CU kurz) entspricht den Bits 32-41 eines anderen Formats. Diese Felder werden durch den Decoder 704-114 in die Sätze der bezeichneten Bits decodiert und in den Decodern 704-116, 704-124, 704-126 und 704-128 kombiniert. Eine weitere Decodierung wird durch die Schaltungen der Blöcke 704-118, 704-135 und 704-120 vorgenommen. Die Ergebnisse der Decodierung derartiger Felder werden entweder in dem Prozessor 700 verteilt, oder aber sie werden in einem RMEM-Register 704-130, einem RSZ-Flipflop 704-1312, einem FREQDIR-Flipflop 704-136 und einem FREQCAC-Flipflop 704-134 gespeichert.
Eine zusätzliche Decodierung der langen und kurzen CU- Felder und Signale von den I-Zykluszustands-Schaltungen des Blocks 704-112 erfolgt über einen Decoder 704-106 und einen Decoder 704-107. Der Decoder 704-106 erzeugt Steuersignale zum Laden unterschiedlicher Register der vorgesehenen Register und zur Freigabe verschiedener Multiplexer-Auswahlschalter innerhalb des Prozessors 700. Der Decoder 704-107 arbeitet in der Weise, daß er Signale zum Setzen eines Paares (RBASB) der Basiszeiger-B-Flipflops 704-144 erzeugt. Andere Kombinationen dieser Signale werden zum Setzen bzw. Zurücksetzen der Deskriptornummer- Flipflops der Blöcke 704-140 und 704-142 herangezogen.
Aus Fig.. 3c geht hervor, daß der Decoder 704-116 ein Steuersignal EXHOO aufnimmt, welches von den Decoderschaltungen des Blocks 704-117 erzeugt wird. Diese Schaltungen nehmen Signale von dem RDESC-Register 704-140 her auf sowie Signale von den Abgabe-Flipflops des Blocks 701-1. In Übereinstimmung mit den Zuständen dieser Signale geben die betreffenden Schaltungen das Signal EXHOO als Binärsignal 0 ab, um die Erzeugung eines Cachespeicherbefehls auf das Auftreten eines Ausgabezustands hin zu sperren. Das Signal EXHOOO wird in Übereinstimmung mit folgendem Boolschen Ausdruck erzeugt.
EXHOOO = DESCO · FE11 + DESC1 · FE2 + DESC2 · FE3.
Das Flipflop FNUM wird normalerweise auf das Auftreten des CCS-POP-Feldes des Mikrobefehlswortes hin gesetzt. Wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, zeigt dies an, daß der verarbeitete Deskriptor vom Zifferntyp bzw. numerischen Typ ist.
Im Folgenden werden die verschiedenen Flipflops des Blocks 704-104 im einzelnen erläutert. Das Flipflop FCHAR ruft dabei im einzelnen Änderungen in der Steuerung der Adressenerzeugung hervor. Wenn das FCHAR-Flipflop in den Binärzustand 1 während der Verarbeitung seines Ladebefehls gesetzt ist, der eine Zeichenmodifikation spezifiziert, dann wird der Inhalt des RDI-Registers unter dem Einfluß der Hardware-Steuerung nicht geändert. Dies ermöglicht, das RDI-Register mit Daten unter einer Mikroprogrammsteuerung vor dem Beginn der Pipeline-Operation zu laden. Wenn das FCHAR-Flipflop in den Binärzustand 1 während des Vorhandenseins eines Speicherbefehls gesetzt ist, der eine Zeichenmodifikation spezifiziert, dann wird außerdem die Ausführungsadresse für diesen Befehl unter der Hardsteuerung modifiziert, um auf eine eindeutige Adresse der Mikrobefehlsfolge in dem ECS-Steuerspeicher hinzuzeigen, gemäß der dieser Befehlstyp zu verarbeiten ist.
Das Flipflop FDT-FOUR führt zu einer zusätzlichen Steuerung bezüglich des Auslesens des Adreßregisters (ZAR0-19) des Blocks 704-304. Das Flipflop FADR-WD sorgt für eine zusätzliche Steuerung bezüglich des ZDO-Schalters 704-340. Wenn dieses Flipflop in einen Binärzustand 1 gesetzt ist, dann wird in der ZAR-Stellung des ZDO-Schalters eine Wortadresse ausgewählt. Das Flipflop FAD-B bewirkt eine zusätzliche Steuerung bezüglich des ZDO-Multiplexerschalters. Wenn dieses Flipflop im Binärzustand 1 ist, dann wird über die ZAR-Stellung des ZDO-Schalters eine Byteadresse ausgewählt. Das Flipflop FNUM wird normalerweise in Abhängigkeit von dem Feld CCS-OP des Mikrobefehlswortes gesetzt. Wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, zeigt dies an, daß der verarbeitete Deskriptor ein solcher von numerischen Typ ist. Das Flipflop FIG-LEN sorgt für eine zusätzliche Steuerung über das Laden der Register innerhalb der Einheit 722 (Längenregister) und über die Speicheroperationen hinaus. Wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, werden die Register RXP und RLN innerhalb der Einheit 722 von dem RSIR-Register 704-154 während bestimmter Zustände der Prozessorsteuerzustände FROP nicht geladen.
Das Flipflop FINH-ADR sperrt die Operation der Adressen- Bildungseinheit 704-3. Wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, umfaßt ein Adressenzyklus (FPOA/FPOP) das Addieren des Inhalts eines eine Effektivadresse enthaltenden Kurzzeit-Speicherregisters REA-T zu Null. Das Register REA-T wird mit der Adresse vor Ausführen eines FPOA-FPOP-Zyklus geladen sein. Das FABS- Flipflop ermöglicht die Erzeugung von absoluten Adressen. Wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, wird eine 24 Bit umfassende absolute Adresse verwendet. Im Hinblick auf das Kennzeichen oder die Kennzeichnung des Flipflops des Blockes 704-110 sei bemerkt, daß das Flipflop FID dann, wenn es in den Binärzustand 1 gesetzt ist, eine Anzeige darüber liefert, daß eine indirekte Adressenmodifikation während eines Befehls bezüglich des Deskriptors erforderlich ist, der in das RSIR-Register geladen ist.
Das FRL-Flipflop zeigt im gesetzten Zustand (Binärzustand 1) an, daß die Länge in einem Register spezifiziert ist, der dem Befehl zugehörig ist, welcher in die verschiedenen Befehlsregister geladen ist. Die drei Flipflops FINDA, FINDB und FINDC liefern Anzeigen, die zur Verarbeitung von Befehlen des Speichertyps herangezogen werden. Das Flipflop FINDA wird in einen Binärzustand 1 gesetzt, wenn eine Länge in einem Register spezifiziert ist oder wenn das Flipflop FAFI in den Binärzustand 1 gesetzt ist. Das Flipflop FINDB wird in einen Binärzustand 1 dann gesetzt, wenn der Deskriptor nicht 9-Bit-Zeichen umfaßt. Das Flipflop FINDC wird in einen Binärzustand 1 gesetzt, wenn der Deskriptor 6-Bit-Zeichen enthält.
Das FAFI-Flipflop wird in einen Binärzustand 1 dann gesetzt, wenn die Prozessorschaltungen feststellen, daß das Anzeigebit 30 des IR-Registers 701-41 in den Binärzustand 1 während der Ausführung eines EIS-Befehls gesetzt war, der kennzeichnend ist für eine Mitten-Befehlsunterbrechung (die erforderlich ist zur Einstellung des Zeigers und der Längenwerte aufgrund der Unterbrechung). Die Flipflops FTRGP, TTNGO und FTRF-TST werden in Verbindung mit Transfer-Befehlen in Binärzustände 1 gesetzt. Das FTRGP-Flipflop l 99999 00070 552 001000280000000200012000285919988800040 0002002949793 00004 99880iefert insbesondere eine Mikroprogrammanzeige des Gesetztseins in dem Binärzustand 1, wenn die Prozessorschaltungen das Auslesen eines Befehls vom Transfertyp während der Ausführung eines Doppelablauf-(XED) oder eines Wiederholungs-Befehls ermitteln. Das FTNGO- Flipflop liefert eine Mikroprogrammanzeige darüber, daß es im Binärzustand 1 gesetzt ist, wenn die durch die Ablaufsteuereinheit 701 signalisierte Übertragungsbedingung ein NOGO-Transfer war (was bedeutet, daß der Transfer nicht stattfindet). Das Ausgangssignal dieses Flipflops wird der Leitung NOGO der Schnittstellenschaltung 604 zugeführt. Das Flipflop FTRF-TST dieser Gruppe liefert eine Anzeige, wenn das betreffende Flipflop in den Binärzustand 1 gesetzt ist, wodurch angezeigt wird, daß der von dem Prozessor 700 zuvor ausgeführte Befehl ein Befehl vom Transfertyp war und daß der gerade ausgeführte I-Zyklus vom Vorhandensein eines Transfer-GO- (TRGO)-Signals von der Steuereinheit 701 her abhängt.
Die Schaltungen des Blockes 704-110 umfassen darüber hinaus eine Anzahl von Flipflops, die zur Ausführung von indirekten Adressierungsoperationen unter einer fest verdrahteten Steuerung ausgenutzt sind, und zwar für andere Befehle als für die EIS-Befehle. Diese Flipflops umfassen die Flipflops FIR, FIRT, FIRL und FRI, die in die Binärzustände 1 als Funktionen unterschiedlicher Arten von indirekten Adressierungsmodifikationen gesetzt werden, die auszuführen erforderlich ist. So signalisiert beispielsweise das FRI-Flipflop einem Register sodann eine indirekte Adressenmodifikation, und das betreffende Flipflop wird in einen Binärzustand 1 umgeschaltet, wenn eine indirekte Registeranzeige (RI) durch ein Binärsignal 1 gegeben ist. Das FRI-Flipflop wird in einen Binärzustand 1 dann umgeschaltet, wenn eine indirekte Registeranzeige (IR) als binäre 1 auftritt. Dieses Flipflop signalisiert den Beginn einer indirekten, sodann erfolgenden Registeradressenmodifikation. Das FIRL-Flipflop wird dann in einen Binärzustand 1 umgeschaltet, wenn bei indirektem Betrieb eine indirekte Zähleranzeige (IT-I) eine binäre 1 ist. Dieses Flipflop signalisiert eine letzte indirekte Operation. Ein weiteres Flipflop TSX2 liefert eine Anzeige, die bei der Verarbeitung eines Transfers herangezogen wird, und setzt Indexbefehle, während ein Flipflop STR-CPR im Zuge der Verarbeitung von Speicherbefehlen ausgenutzt wird.
Wie aus Fig.. 3c ersichtlich ist, werden die Ausgangssignale von den Steuerkennzeichen-Flipflops des Blockes 704-10 als Eingangssignale an die Verzweigungsanzeigeschaltungen des Blockes 700-1 angegeben. Außerdem werden die Ausgangssignale von den Steuerkennzeichen-Flipflops als Eingangssignale den I-Zyklus-Flipflops des Blockes 704-102 zugeführt.
Im folgenden wird der Registerbereich 704-150 näher erläutert. Wie aus Fig.. 3c hervorgeht, umfaßt die Steuerlogikeinheit 704-1 ferner einen Registerbereich 704-150. Dieser Bereich umfaßt das Basisbefehlsregister (RBIR) 704-152, das sekundäre Befehlsregister (RSIR) 704-154, ein Basiszeiger-A-Register (RBASA) 704-156, welches zur Auswahl eines der Adressenregister RAR0 bis RAR7 des Blockes 704-304 herangezogen wird, ein Leseindexregister A(RRDXA) 704-158, welches zur Auswahl von Indexregistern innerhalb des Bereiches 704-5 (nicht dargestellt) ausgenutzt wird und welches zur Auswahl von Ausgangssignalen des ZDO-Multiplexerschalters 704-340 herangezogen wird, sowie ein Lese-Index-A-Aufbewahrungsregister (RRDXAS) 704-159 und ein Deskriptor-Register (RTYP) 704-160, welches den Typ der Datenzeichen angibt, auf die durch den Deskriptorwert hingezeigt wird (z. B. 9-Bit, 6-Bit, 4-Bit). Der Auswahlbereich 704-150 umfaßt ferner ein 1-Bit-Befehls/EIS-Deskriptorregister, welches mit R29 des Blockes 704-162 bezeichnet ist. Der Zustand dieses Bits in Verbindung mit dem Inhalt des Registers RBAS-A 704-158 wird dazu herangezogen, das bestimmte Adressenregister auszuwählen, welches für die Adressenbildung herangezogen wird. Wenn das Register R29 des Blockes 704-162 in den Binärzustand 1 gesetzt ist, zeigt dies an, daß keine der Adressenregister des Blockes 704-304 während der Adressenbildung herangezogen werden. Die letzten Register des Bereiches 704-150 umfassen ein Daten- bzw. Dateneingaberegister (RDI) des Blockes 704-164 und ein Lese-Indexregister B (RRDXB), welches auf Register hinzeigt, die von der Ablaufeinheit 714 benutzt werden.
Wie aus Fig.. 3c ersichtlich ist, wird das RBIR-Register 704-152 über einen in zwei Stellungen einstellbaren Schalter 740-170 geladen, der so geschaltet ist, daß er Signale von den bezeichneten Quellen her aufnimmt (das sind ein Schalter ZIB-B 704-172 und Leitungen ZDI 0-35). Das RSIR-Register 704-154 nimmt in entsprechender Weise Signale von den ZDI-Leitungen und dem Schalter 704-172 her auf. Das RBASA-Register 704-156 nimmt Signale von der ZDI-Leitung 0-2 zusätzlich zu Signalen von einem weiteren Schalter ZBASA des Blockes 704-174 auf. Das RDDXA-Register und das RTYP-Register nehmen Signale von den ZDI-Leitungen sowie von einem Schalter 704-176 und 704-178 her auf, wie dies veranschaulicht ist. Außerdem nimmt das RRDXA-Register Signale von dem RRDXAS-Register 704-159 her auf.
Der Schalter 704-172 ist ein in zwei Stellungen einstellbarer Schalter, der Eingangssignale von den Schaltern ZIB bzw. ZRESB her aus der Cachespeichereinheit 750 bzw. von der Ablaufeinheit 714 her zugeführt erhält. Der Schalter 704-174 ist ein drei Eingänge aufweisender Schalter, der zwei Eingangssignale von den Ablaufeinheiten 714 und das Ausgangssignal des ZIB-Schalters der Cachespeichereinheit 750 her aufnimmt.
Der Schalter 704-176 ist ein vier Eingänge aufweisender Schalter, der zwei seiner Eingangssignale von der Ablaufeinheit 714 und ein einzelnes Eingangssignal von der Cachespeichereinheit 750 zugeführt erhält. In der ersten Stellung des ZRDXA-Schalters 704-176 wird das Ausgangssignal eines ZRDXM-Schalters 704-185 ausgewählt. In einer Stellung dieses Schalters wird ein Kennzeichenfeldwert von den Bitpositionen 5-8, 14-17 und 32-35 des RBIR- Registers 704-152 bzw. von den Bitpositionen 32-35 des RSIR-Registes 704-154 bereitgestellt, was durch den ZIDD-Schalter 704-180 und einen in zwei Stellungen einstellbaren ZMF-Schalter 740-176 ausgewählt wird.
In der zweiten Stellung des Schaltes 704-185 wird ein konstanter Wert vom Ausgang des ECS-Ausgaberegisters 704-1 abgegeben (CCM-Feld 32-34). Die von den Leitungen ZIDD 27-35 her kommenden Signale werden als Eingangssignale an die Steuerkennzeichen-Flipflops des Blocks 704-110 abgegeben. Der Schalter 704-178 nimmt ein Eingangssignal von dem Steuerspeicher 704-2 her auf sowie ein Eingangssignal von der Cachespeichereinheit 750 und ein Eingangssignal von der Ablaufeinheit 714.
Das Dateneingaberegister 704-164 nimmt eine Reihe von Eingangsdaten von einem ZIDD-Schalter 704-181 liegt, dessen Ausgangssignal ein Eingangssignal für einen weiteren Schalter 704-182 darstellt, welches direkt in das RDI-Register 704-164 geladen wird. Der ZDIA-Schalter 704-181 liefert ein weiteres Eingangssignal an einen drei Eingänge aufweisenden Schalter 704-183, der an den anderen bezeichneten Eingängen Signale von der Cachespeichereinheit 750 und der Ablaufeinheit 714 zugeführt erhält.
Der ZIDD-Schalter 704-180 erhält eine effektive Adresse über den Schalter 704-186 von der Adressenbildungseinheit 704-3 sowie Eingangssignale von dem RBIR-Register 704-152, von dem RSIR-Register 704-154 und von einem in zwei Stellungen einstellbaren ZMF-Schalter 704-187 zugeführt. Die Positionen 18 bis 35 der REA-Stellung des Schalters 704-180 werden, wie veranschaulicht, von dem ZDIA-Schalter 704-181 abgeleitet. Der ZDIA-Schalter 704-181 erhält Signale von den ZDI-Leitungen 0-35 zugeführt sowie einen konstanten Wert, der aus den Eingangssignalen für eine erste Schalterstellung erzeugt wird, und zwar zusätzlich zu Signalen vom Ausgang des ZIDD- Schalters 704-80 und des ZRESB-Schalters in der Ablaufeinheit 714. Der Schalter 704-182 nimmt das Ausgangssignal des ZDIA-Schalters und die Signale von den ZDI- Leitungen 0-35 auf. Das RRDXB-Register 704-189 wird mittels eines in drei Stellungen einstellbaren Schalters 704-188 geladen. Der Schalter nimmt in einer ersten Stellung Signale von einem RREG-Register auf, welches in der Ablaufeinheit enthalten ist. Einen konstanten Wert nimmt der betreffende Schalter von dem Steuerspeicher 701-2 in einer zweiten Stellung auf, und in einer dritten Stellung nimmt er Signale von dem ZIDD-Schalter her auf.
Der Bereich 704-150 umfaßt ferner einen in zwei Positionen einstellbaren Schalter 704-185 sowie ein Notizblockspeicher- Zeigerregister 704-186, dessen Ausgangssignal von der Einheit 722 dazu herangezogen wird, Adressen für einen Zugriff zu dem Notizblockspeicher der Einheit 714 zu bilden. In der ersten Schalterstellung wird ein konstanter Wert bereitgestellt, der unter Hardware- Steuerung ausgewählt wird (FPOA · ). In der zweiten Schalterstellung wird als Ausgangssignal der Inhalt des RBASE-Registers 704-156 abgegeben. Diese Stellung wird sowohl unter Hardware-Steuerung als auch unter Mikroprogrammsteuerung ausgewählt (d. h. FPOA · R29 oder MISCREG-Feld).
Es sei darauf hingewiesen, daß die erforderlichen Zeitsteuerungs- bzw. Taktsignale für den Betriebsbereich 704 sowie für die anderen Bereiche des Prozessors 700 und der Cachespeichereinheit 750 von zentral angeordneten Taktschaltungen geliefert werden. So sind beispielsweise bei der bevorzugten Ausführungsform gemäß Fig.. 1 die Taktschaltungen in dem Eingabe/Ausgabe-Prozessorsystem untergebracht. Derartige Taktschaltungen können als in herkömmlicher Weise aufgebaut betrachtet werden; sie können einen quarzgesteuerten Oszillator und Zählerschaltungen umfassen. Die Zeitsteuerungs- oder Taktsignale von den Taktschaltungen her werden in herkömmlicher Weise an die verschiedenen Teile des Systems gemäß Fig.. 1 zur Erzielung eines synchronisierten Betriebs verteilt. Aus deraritgen Zeitsteuersignalen leiten in dem Prozessor 700 vorgesehene Schaltungen zusätzliche Taktsignale bei Bedarf ab. Hierauf wird weiter unten im Zusammenhang mit de Erläuterung der Cachespeichereinheit 750 gemäß Fig.. 4 eingegangen.
Im folgenden wird die Adressenbildungseinheit 704-1 näher erläutert. Die Adressenbildungseinheit 704-3 umfaßt eine Anzahl von Registern und Addierern. Die Register enthalten eine Anzahl von Basisregistern (d. h. TBASEO bis TBASEB) des Blockes 704-300, die zur Speicherung von Deskriptorwerten eines Befehls verwendet werden, zwei Kurzzeitregister zur Speicherung von effektiven Adressen (TEA0, TEA1) und zwei Befehlszähler (ICBA, ICBB), die in dem Block 704-302 enthalten sind, der zur Adressierung des Befehlspuffers herangezogen wird. Außerdem sind acht Adreßregister (RAR0 bis RAR7) des Blockes 704-304 während der Adressenbildungsoperationen ausgenutzt. Die Einheit 704-3 umfaßt ferner einen Befehlszähler 704-310.
Die Addierer umfassen den Addierer 704-312, der zur Aktualisierung des Befehlszählers 704-310 über die Schalter 704-311 und 704-314 verwendet wird, sowie zwei Addierer 704-320 und 704-322. Der Addierer 704-322 wird dazu herangezogen, einen effektiven Adressenwert zu erzeugen, der in einem Register 704-342 gespeichert wird und als ein Eingangssignal an die Steuereinheit 704-1 abgegeben wird. Die effektive Adresse wird von einer Anzahl von Quellen erzeugt, die einen ZY-Schalter 704-326, dessen Ausgangssignal über eine Anzahl von UND-Gliedern des Blockes 704-327 abgegeben wird, ausgewählte Adreßregister des Blockes 704-304 oder ausgewählte Kurzzeit- Adreßregister TEA0 und TEA1 des Blockes 704-302 umfassen, wobei die Adressenabgabe über einen weiteren Schalter 704-328 erfolgt. Die betreffenden Quellen können aber auch Indexadreßsignale ZX 0-20 von der Einheit 704-5 umfassen. Darüber hinaus wird der Addierer 704-322 dazu herangezogen, den Inhalt des Befehlszählers des Cachespeicher- Befehlspuffers zu aktualisieren.
Wie aus Fig.. 3d hervorgeht, werden die Ausgangssignale des Addierers 704-322 außerdem als Eingangssignale dem Addierer 704-320 zugeführt. Der Addierer 704-320 wird dazu herangezogen, den in irgendeinem der Kurzzeit- Basisregister TBASEO bis TBASEB gespeicherten Basiswert mit den Adressensignalen ACSOS 0-19 vom Addierer 704-322 her zu kombinieren. Die dadurch erzielten Bits werden als Eingangsgröße einem weiteren Addierernetzwerk 704-320 zugeführt, welches eine Verknüpfungsadresse erzeugt, die über einen Addierer 704-321 an die Leitungen ASFA 0-36 abgegeben wird. Dieser Addierer summiert die Operanden- Eingangssignale mit den Übertrags-Eingangssignalen von den Blöcken 704-300 und 704-320 auf. Die effektive Adresse wird dazu herangezogen, eine absolute Adresse zu erhalten, wenn das System in einem Seiten- bzw. Seitenwechselbetrieb betrieben ist. Da diese Operation für die vorliegende Erfindung nicht wichtig ist, wird sie hier nicht weiter erläutert. Zur weiteren Information bezüglich einer Adressenbildung sei auf die US-PS 39 76 978 hingewiesen.
Die als Kurzzeitregister bezeichneten Zwischenspeicherbasisregister des Blocks 704-300 werden über einen Schalter 704-322 geladen. Der Schalter erhält ein Eingangssignal von der Ablaufeinheit 714 und das Ausgangssignal von dem Block 704-300 zugeführt. Die Ablaufeinheit 714 gibt weitere Eingangssignale an die Register des Blockes 704-302 über einen Schalter 704-334 sowie an die Adreßregister des Blockes 704-304 ab. Ein Ausgangs- Multiplexer-(ZDO)-Schalter 704-340 gibt die Auswahl der verschiedenen Register innerhalb der Adressenbildungseinheit 704-3 und eine Einheit 704-5 für den Transfer der Inhalte der betreffenden Einheiten zu der Ablaufeinheit 714 hin über die Leitungen ZDO 0-35 frei. Außerdem gibt der ZDO-Schalter 704-340 den Inhalt der verschiedenen Register und Steuer-Flipflops der Einheit 704-1 frei, um über eine vierte Stellung (ZDO-A) ausgelsen zu werden. In der fünften Stellung sind die Zustände der verschiedenen Anzeigen innerhalb der Steuerspeicherschaltungen des Blockes 701-1 zum Zwecke einer Auswahl zwecks Überprüfung freigegen.
Im folgenden wird der Daten/Adreß-Ausgabebereich 704-4 gemäß Fig.. 3e näher betrachtet. Dieser Bereich umfaßt die Register und Schalter, die zur Übertragung von Befehlen und Daten zu dem Cachespeicher 750 hin verwendet werden. Derartige Transferoperationen erfordern normalerweise zumindest zwei Zyklen, einen zum Aussenden einer Adresse und einen weiteren zum Aussenden der Daten. Die Bits 5-8 eines Befehlswortes werden vom Ausgangssignal eines 4-Stellungs-Schalters 704-40 gewonnen. Dieser Schalter erhält einen ersten konstanten Wert über eine erste Schalterstellung, den Inhalt eines RZN-Registers 704-42 über eine zweite Stellung, einen zweiten konstanten Wert über eine dritte Stellung und einen dritten konstanten Wert über eine vierte Stellung.
Die Bits 1-4 eines Befehls werden von den Schaltungen des Blockes 704-1 einer ODER-Verknüpfungsschaltung 704-44 zusammen mit den Bits 5-8 zugeführt. Das ODER-Glied 704-44 erhält außerdem über einen ZDAO-Schalter 704-46 die Bits 1-8 eines RADO-Registers 704-48 zugeführt. Das RADO-Register 704-48 ist ein Adressen- und Datenausgaberegister, welches in einer ersten Stellung eines ZADOB-Schalters 704-48 eine (virtuelle) Verknüpfungsadresse von der Adressenbildungseinheit 704-3 über die Leitungen ASFA 0-35 und Datenausgangssignale von der Einheit 714 über die Leitungen ZRESB 0-35 aufnimmt. Die Einstellungen des ZACOB-Schalters 704-48 erfolgen unter der Steuerung des FMTD-Feldes für ein kleines CU-Format und unter der Steuerung des RADO-Feldes im Falle eines großen CU-Formates.
Wie aus Fig. 3e ersichtlich ist, werden entweder die Bits ZZN 1-8 oder die ZADO-Bits 1 bis 8 als Ausgangssignale an die RADO/ZADO-Leitungen abgegeben, und zwar als Funktion des Zustands des Steuersignals RADO-ZADO. Die Bits 0 und 1 führen stets binäre Einsen, während die Bits 10-35 von den RADO-Registern 704-46 geliefert werden.
Eine weitere Information bezüglich der übrigen Bereiche des Prozessors 700 sowie bezüglich der Bereiche gemäß Fig.. 3a bis 3e findet sich der eingangs erwähnten anderen Stelle.
Im folgenden wird die Cachespeichereinheit 750 gemäß Fig.. 4 näher erläutert. Die Cachespeichereinheit 750 ist in fünf Hauptbereiche unterteilt: Einen Transitpuffer und einen Befehlsschlangenbereich 750-1, einen Cachespeicherbereich 750-3, einen Adreßlisten- und Treffer-Steuerbereich 750-5, einen Befehlspufferbereich 750-7 und einen Befehlszählerbereich 750-9.
Nachstehend wird der Transit-Puffer- und Befehlsschlagenbereich 750-1 näher betrachtet. Dieser Bereich umfaßt als Hauptelemente einen Vier-Wort-Schreibbefehlspuffer 750-100 und einen Vier-Wort-Transitblockpuffer- Lesebefehlspuffer 750-102. Diese Puffer werden über zwei Zählerschaltungen 750-104 und 750-106 adressiert. Darüber hinaus umfaßt der betreffende Bereich eine Befehlsschlange 750-107 mit zugehörigen Eingabe- und Ausgabeadressenzeiger- und Vergleicherschaltungen der Blöcke 750-108 bis 750-110. Der Schreibpuffer 750-100 sorgt für die Speicherung eines Zweier-Einfachschreib- oder eines einzigen Doppelschreibbefehls, während der Transitblock 750-102 für eine Speicherung bis zu vier Lesebefehlen sorgt. Der Transitblockpuffer 750-102 speichert ferner eine Information, die derartigen Lesebefehlen zugehörig ist und die zur Steuerung des Einschreibens von Speicherdatenwörtern in zugeteilten Bereiche des Cachespeicherbereiches 750-3 dient (das sind die Ebenen). Die vier Register ermöglichen bis zu vier Speicherlesevorgänge zu einem vorgegebenen Zeitpunkt fortschreitend auszuführen.
Der Bereich 750-1 umfaßt ferner einen Steuerbereich 750-112. Dieser Bereich enthält Reihen von unterschiedlichen Steuerschaltungen, wie den Befehlsdecoder und Steuerschaltungen des Blockes 750-113 und 750-114, die Schnittstellen- Steuerschaltungen der Blöcke 750-115 und 750-116 und Haltesteuerschaltungen des Blockes 750-117.
Die Schaltungen der Blöcke 750-113 und 750-114 decodieren Signale, die an die DMEM-Leitungen angelegt sind und die kennzeichnend sind für die Befehle, die von dem Prozessor 700 über die RADO/ZADO-Leitungen der Schnittstellenschaltung 604 übertragen sind. Außerdem erzeugen die betreffenden Schaltungen Steuersignale, um Einträge in die Befehlsschlange 750-107 vorzunehmen, um Werte in den Eingabe-Zeiger- und Ausgabe-Zeiger-Schaltungen der Blöcke 750-108 und 750-109 zu inkrementieren bzw. zu vergrößern bzw. zu setzen. Außerdem erzeugen die Schaltungen Steuersignale zur Abspeicherung von Befehlen entweder im Schreibpuffer 750-100 oder im Transit-Blockpuffer 750-102.
Die Schnittstellen-Steuerschaltungen der Blöcke 750-115 und 750-116 erzeugen Signale zur Steuerung des Transfers von von der Systemschnittstelleneinheit 100 her aufgenommenen Datensignalen in den Bereich 750-7 bzw. die Übertragung von Befehlen, die den Transfer derartiger Befehle zu der Systemschnittstelleneinheit umfassen. Die Halteschaltungen des Blockes 750-117, die Signale von der Decodeerschaltung 750-113 her aufnehmen, erzeugen Steuersignale zum Festhalten der Abwicklung bzw. Ausführung von Befehlen in geeigneten Situationen (z. B. Adreßlistenbereich belegt) und zur Steuerung des Ladens von Daten in den Bereichen 750-7.
Aus Fig.. 2 geht hervor, daß der Transfer von Schreibbefehls- Steuerwörtern von dem Puffer 750-100 ausgeht und über die dritte Stellung eines in vier Stellungen einstellbaren ZDTS-Schalters 750-118, ein Datenregister 715-119 und die erste Stellung des in zwei Stellungen einstellbaren Schalters 750-112 verläuft. Die Schreibdatenwörter werden von dem Puffer 750-100 zu der Systemschnittstelleneinheit 100 über ein Schreibdatenregister 750-121 und die zweite Stellung des Schalters 750-120 übertragen. Die RWRT-Stellung des Schalters 750-120 wird für ein Traktinvertall (Einzelschreibbefehl) oder für zwei Taktintervalle (Doppelschreibbefehl) auf die Aufnahme eines Signals von der Systemschnittstelleneinheit 100 über die ARA-Leitung ausgewählt, und zwar in Abhängigkeit davon, daß ein Signal an eine Leitung AOPR von dem Cachespeicher 750 für die Übertragung eines Schreibbefehls abgegeben wird. Lesebefehle werden von dem Lesebefehlsteil des Transitblockpuffers 750-102 der Systemschnittstelleneinheit 100 über die vierte Stellung (ZTBC) des ZDTS-Schalters 750-118, das Register 750-119 und die erste Stellung des Schalters 750-120 übertragen.
Über die Mehrfachanschluß-Identifizierungsleitungen RMITS werden die Zonen-Bitsignale aufgenommen, und zwar über ein RMITS-Register 750-124 und einen in zwei Stellungen einstellbaren Schalter 750-125 bezüglich des zweiten Datenwortes in dem Fall, daß ein Doppelschreibbefehl vorliegt. Wie aus der gerade betrachteten Figur hervorgeht, nimmt dieser Schalter Signale von der Befehlsschlange 750-107 und dem Prozessor 700 auf. Dies bedeutet, daß dann, wenn der Cachespeicher 750 einen Lesebefehl abgibt, die Transitblocknummer-Signale von der Schlange 750-107 in die Bitpositionen 2 und 3 des RMITS-Registers 750-124 geladen werden.
Die Transitblocknummersignale werden durch die Systemschnittstelleneinheit 100 an die MIFS-Leitungen mit dem Lesedatenwort zurückgeführt. Diese Signale werden in ein RMIFS-Register 750-127 über einen Vielfach-Stellungs- Schalter 750-126 geladen. Danach wird der Inhalt der Bitpositionen 2 und 3 über die erste Stellung eines in zwei Stellungen einstellbaren Schalters 750-128 an zwei Adresseneingangsanschlüsse des Transitblockpuffers 750-102 abgegeben. Ein zweites RMIFSB-Register 750-129 dient hauptsächlich der Kurzzeit- bzw. Zwischenspeicherung der Transitblocknummernsignale für Mehrfachworttransfers (d. h. für Vier-Lesebefehle).
Die Ausgangssignale von dem Schalter 750-128 werden außerdem an die Steuereingangsanschlüsse eines in vier Stellungen einstellbaren ZTBA-Schalters 750-130 abgegeben, um die in Frage kommenden Adressensignale auszuwählen, die an den Cachespeicherbereich 750-3 zur Speicherung der Datenwörter anzulegen sind. Der Adresseninhalt des Transitblockpuffers 750-102 wird außerdem einer Reihe von Eingangsanschlüssen einer bestimmten Vergleicherschaltung einer Gruppe von Vergleicherschaltungen 750-132 bis 750-135 zugeführt, um dort einen Vergleich mit dem Adressenbereich eines nächsten Befehls vorzunehmen, der einer zweiten Reihe von Eingangsanschlüssen der Vergleicherschaltungen über die RADO/ZADO-Leitungen zugeführt wird. Das durch ein NAND-Glied 750-136 erzeugte Vergleichssignal wird an die Haltesteuerschaltungen des Blockes 750-117 abgegeben.
Wie aus Fig. 4 ersichtlich ist, werden die Zonenbitsignale des ZAC-Befehls, der an die ZADOB-Leitungen 5-8 im Falle eines Einzelschreibbefehls oder bei einem geradzahligen Wort eines Doppelschreibbefehls angegeben ist, in ein RZONE-Register 750-140 geladen, wenn der Schreibbefehl in den Schreibbefehsldatenpuffer 750-100 geladen ist. Das Ausgangssignal des RZONE-Registers 750-140 wird an die erste Stellung eines in zwei Stellungen einstellbaren ZONE-Schalters 750-144 abgegeben. Die Zonenbitsignale ZDZD 0-3, die an die Leitungen DZD 0-3 von dem Prozessor 700 her für das ungeradzahlige Wort des Doppelschreibbefehls abgegeben werden, werden in ein RDZD-Register 750-142 geladen. Das Ausgangssignal des RDZD-Registers 750-142 wird an die zweite Stellung des ZONE-Schalters 750-144 abgegeben. Die Ausgangssignale ZONE 0-3 werden an die Schaltungen des Bereichs 750-9 zur Steuerung des Einschreibens von Prozessordaten in den Cachespeicher 750-300 abgegeben, wie dies noch erläutert wird.
Nachstehend wird der Cachespeicherbereich 750-3 näher betrachtet. Dieser Bereich umfaßt den Cachespeicher 750-300 mit 8192 (8K) 36-Bit-Wortspeicherplätzen, die in 128 Reihen von acht Acht-Wort-Blöcken organisiert sind. Die Einheit 750-300 ist aus bipolaren Speicherchips mit wahlfreiem Zugriff in herkömmlicher Ausführungsform aufgebaut.
Die Cachespeichereinheit 750-300 wird durch eine 10-Bit- Adresse RADR 24-33 adressiert, die über irgendeinen der in einer Anzahl vorliegenden 4×4-Crossbar-Schalter (beispielsweise 750-302 a) zugeführt wird, welche von herkömmlichem Aufbau sind. Die Adressierung erfolgt dabei durch den betreffenden Schaltern zugehörige Adreßregister. Wie aus der vorliegenden Figur hervorgeht, nimmt der Crossbar-Schalter Adressensignale von verschiedenen Quellen her auf, die den Bereich 750-5, den ZTBA-Schalter 750-130 und den Bereich 750-7 umfassen. Die am Ausgang des Crossbar-Schalters auftretenden Adressensignale werden kurzzeitig in dem zugehörigen Adressenregister zwischengespeichert und an die Adresseneingangsanschlüsse der Cachespeichereinheit 750-300 abgegeben.
Während eines Schreibzyklus des Betriebs werden die vier Sätze von Schreibsteuersignalen (WRT00100-WRT70100 bis WRT03100-73100), die von dem Bereich 750-9 erzeugt werden, an die Cachespeichereinheit 750-300 abgegeben und dazu herangezogen, Taktsignale an die Schreibabtasteingangsanschlüsse der Speicherchips abzugeben oder zu diesen hinzuleiten. Dies ermöglicht, ein bis vier Bytes entweder eines Datenwortes von dem Prozessor 700 über die ZADO/RADO-Leitungen oder ein Speicherdatenwort vom Bereich 750-7 in eine adressierte Ebene von acht Ebenen der Cachespeichereinheit 750-300 einzuschreiben. Bei Prozessordaten werden die Schreibsignale dadurch erzeugt, daß die Signale ZONE 0-3 von dem Schalter 750-144 her decodiert werden. Bei Speicherdatenwörtern werden sämtliche Zonensignale in Binärsignale 1 überführt.
Die in Frage kommende Ebene wird durch die Zustände der Signale RTBLEV 0100-2100 von dem Transitblockpuffer 750-102 festgelegt, wenn Schreibspeicherdaten vorliegen, und durch die Treffer-Ebene, die durch die Adreßlistenschaltungen des Blocks 750-512 ermittelt wird, wenn Schreibprozessordaten vorliegen. Diese Signale werden durch eine Decoderschaltung 750-303 decodiert, wenn die Freigabe durch ein Signal ENBMEMLEV100 von dem Bereich 750-9 her vorliegt.
Während eines Lesebetriebszyklus wird das 36-Bit-Wort jedes der acht Blöcke (Ebenen) als Eingangssignal an einen 1-aus-8-ZCD-Schalter 750-306 abgegeben. Die Auswahl des in Frage kommenden Wortes wird durch die Zustände einer Reihe von Treffer-Ebenensignalen ZCD 01-210 festgelegt, die durch den Bereich 750-5 erzeugt werden. Diese Signale werden an die Steuereingangsanschlüsse des ZCD-Schalters 750-306 abgegeben.
Wie aus der vorliegenden Figur ersichtlich ist, wird das ausgewählte Wort an zwei Register 750-308 und 750-130, an einen 1-aus-8-ZDI-Schalter 750-312 und an einen 1-aus-4-ZIB-Schalter 750-314 abgegeben. Die RIRA- und RIRB-Register 750-308 bzw. 750-310 geben ihre Inhalte an verschiedene Stellungen bzw. Positionen der ZIB- und ZDI-Schalter 750-312 bzw. 750-314 ab. Der ZIB-Schalter 750-314 wählt Befehle aus, die an den Befehlsbus (ZIB) des Prozessors 700 abgegeben werden, während der ZDI-Schlater 750-312 Befehle oder Operanden auswählt, die an die Dateneingabebusleitung (ZDI) des Prozessors 700 abgegeben werden.
Zusätzlich zur Abgabe der Befehlswortsignale, die aus dem Cachespeicher 750-300 ausgelesen sind, gibt der ZIB-Schalter 750-314 außerdem Befehlswortsignale, die er von dem Bereich 750-7 her erhalten hat, an den Prozessor 700 ab. Der ZDI-Schalter 750-312 gibt außerdem Datensignale, die er von dem ZCDIN-Schalter 750-304 und den Bereich 750-7 her erhalten hat, an den Prozessor 700 ab. Die Zustände der Steuersignale ZIB 01-110 und ZDI 010-210, die an die Steuereingangsanschlüsse der Schalter 750-314 bzw. 750-312 abgegeben sind, führen zur Auswahl der Quellen der Befehle bzw. Datenwörter, die durch die betreffenden Schalter zum Prozessor 700 zu übertragen sind. Die Steuersignale werden durch die Schaltungen des Bereichs 750-9 erzeugt.
Die Signale ZIB 010-110 sind so codiert, daß die Stellung Nr. 2 des Schalters 750-314 für eine erste Befehlsübertragung ausgewählt wird, und zwar auf die Ermittelung eines Adreßlisten-Treffers hin bezüglich eines I-Abruf-1-Befehls oder eines Adreßlisten-Treffers bezüglich eines I-Abruf-2-Befehls, der einen I-Abruf-1- Befehl für das letzte Wort in einem Block folgt. Die Steuersignale sind so codiert, daß die RIRA-Position Nr. 1 für nachfolgende Befehlsübertragungen ausgewählt wird, die einem Adreßlisten-Treffer folgen, der auf einen I-Abruf-1- oder auf einen I-Abruf-2-Befehl hin erzeugt wird.
In dem Fall, daß der I-Abruf-1-Befehl oder der I-Abruf- Zweierbefehl zu einer Adreßlisten-Ausweichung führt, werden die Signale ZIB 010-110 codiert, um die Schalterposition Nr. 3 des ZIB-Schalters 750-314 für die Übertragung von Befehlswörtern auszuwählen, die aus dem Bereich 750-7 aufgenommen werden bzw. sind.
Im Hinblick auf den ZDI-Schalter 750-312 sei bemerkt, daß die ZCD-Stellung Nr. 1 in Abhängigkeit von der Ermittelung von Adreßlisten-Treffern und Signalen ausgewählt wiurd, die an die RDIBUF/ZDI-Leitung auf das Auftreten eines Adreßlisten-Treffers hin erzeugt werden, der für einen LDQUAD-Befehl erzeugt wird. Speicherdatenwörter werden an den Prozessor 700 über die ZDIN-Stellung Nr. 3 des Schalters 750-312 im Anschluß an eine Adreßlisten- Ausweichung übertragen. Im Anschluß an das Festhalten des Prozessors 700 bezüglich eines Befehlsaufrufs aus dem Hauptspeicher werden die Signale ZDI 010-210 codiert, um die ZDIN-Stellung des Schalters 750-312 für die Übertragung des ersten Befehls auf dessen Aufnahme durch den Bereich 750-7 auszuwählen. Die übrigen Befehle werden über den ZIB-Schalter 750-314 übertragen.
Die ZCDIN-Stellung Nr. 2 des Schalters 750-312 wird für Diagnosezwecke herangezogen, um Signale von den ZADO-B/RADO-Leitungen zu übertragen. Die übrigen Stellungen bzw. Positionen des ZDI-Schalters 750-312 werden für Anzeigezwecke ausgenutzt (das sind die Stellungen RIRB, ZRIB und RIRA). Außerdem wird die Stellung RIRB dazu ausgewählt, Datenwörter zum Prozessor 700 hin im Falle eines LDQUAD-Befehls zu übertragen, wenn dort ein Adreßlisten-Treffer vorliegt.
Im folgenden werden die Adreßliste und der Treffer- Steuerbereich 750-5 näher betrachtet. Dieser Bereich umfaßt eine 8-Ebenen-Steuerungsadreßliste 750-500 und eine einem 8-Ebenen-Satz zugehörige Adreßliste 750-502. Die Adreßliste 750-502 enthält 128 Speicherplätze, deren jeder eine 14 Bit umfassende assoziative Adresse für jede Ebene enthält. Ein in vier Stellungen einstellbarer ZDAD-Schlater 750-530 liefert Speicheradressen für einen wahlfreien Speicherzugriff (RAM) zum Zwecke der Adressierung der Adreßlisten 750-500 und 750-502, und zwar zusätzlich zur Adressierung der Cachespeichereinheit 750-300.
Während eines Adreßlisten-Suchoperationszyklus wählt der Schalter 750-530 unter der Steuerung von Signalen SELZDADC 0100-1100, die durch die Schaltungen innerhalb des Blockes 750-526 erzeugt werden, die RADO-Stellung 0 aus. Dadurch werden die 14-Bit-Adressensignale eines ZAC-Befehls von den Leitungen RADO 24-33 des Prozessors 700 her an die Ausgangsanschlüsse des ZDAD-Schalters 750-530 abgegeben. Diese Signale werden an die Adresseneingangsanschlüsse der Adreßlisten 750-500 und 750-502 abgegeben. Während des Suchzyklus wird der Inhalt der acht Block/ Ebenen-Adressen ausgelesen und als Eingangsgröße an jede Vergleicherschaltung einer Gruppe von acht Vergleicherschaltungen 750-536 bis 750-543 abgegeben. Jede Vergleicherschaltung vergleicht ihre Block/Ebenen-Adresse mit den Bits 10-23 des ZAC-Befehls, um das Vorliegen eines Treffer- oder Ausweich-Zustands zu bestimmen. Die durch die Schaltungen 750-536 bis 750-543 erzeugten Ergebnissignale werden an die entsprechenden Eingänge einer Gruppe von UND-Gliedern 750-545 bis 750-552 abgegeben. Jede Vergleicherschaltung besteht aus bis zu vier Bereichen, wobei die Ergebnisse dieser Bereiche in einem UND-Glied und UND-Glieder 750-545 bis 750-552 kombiniert werden. Die Endergebnis-Treffersignale ZHT 0100 bis ZHR 7100 werden als Eingangssignale an Treffer/Ausweich-Netzwerkschaltungen des Blockes 750-512 abgegeben, wie dies noch erläutert wird.
Die ZAC-Adressensignale werden außerdem in einem RDAD- Register 750-532 aufbewahrt, wenn kein Haltezustand ermittelt wird (d. h. dann, wenn das Signal HOLD-DMEM von der Einheit 750-112 her ein Binärsignal 0 ist). Während des Adreßlisten-Zuteilungszyklus, der dem Suchzyklus folgt, in welchem ein Ausweichzustand ermittelt wurde, während die Signale SELZDADC 0100-100 die RDAD- Stellung 1 des ZDAD-Schalters 750-534 mit den 14-Bit-Assoziativ- Adressensignalen von den ZADO-B-Leitungen 10-23 her geladen, wenn der Adreßlisten-Suchzyklus für das Einschreiben in die Adreßliste 750-502 beendet ist.
Die Steueradreßliste 750-500 weist ferner 128 Speicherplätze auf, deren jeder eine bestimmte Anzahl von Bitpositionen zur Speicherung einer Steuerinformation umfaßt.
Eine derartige Information umfaßt die Voll/Leer- F/E)-Bits für die acht Ebenen und Umlauf-(RR)-Zählbits zusätzlich zu Paritätsprüfbits (nicht dargestellt).
Die Voll/Leer-Bits zeigen an, ob die bestimmten Adreßlisten- Adressen irgendeine Bedeutung haben (d. h. gültig sind). Damit ein Cachespeicher-Treffer auftritt, muß das F/E-Bit als binäre 1 auftreten. Eine binäre 0 zeigt das Vorhandensein eines Leerblocks oder Leerbereiches in dem betreffenden Bereich an. Die Umlaufbits führen zu einer Zählerstellung, die anzeigt, welcher Block zuletzt ersetzt wurde. Diese Zählerstellung wird normalerweise dann, wenn sie über eine der beiden Reihen von UND-Gliedern des Blockes 750-400 in das Register 750-506 ausgelesen ist, durch eine Inkrementierungs-Addiererschaltung 750-508 erhöht. Die sich ergebenden Signale NXTRR0-RR2 werden in die Adreßliste 750-500 eingeschrieben, um den nächsten zu ersetzenden Block zu bezeichnen.
Wie aus der gerade betrachteten Figur hervorgeht, wird der F/E-Bit-Inhalt der Speicherstelle über die Stellung eines in zwei Stellungen einstellbaren ZFER-Auswahlschalters 750-506 ausgelesen und als Eingangsgröße an die Adreßlisten-Treffer/Ausweich- und Treffer-Steuerschaltungen des Blockes 750-512 abgegeben. Durch den ZFER- Schalter 750-506 wird ausgewählt, welche Hälfte einer Gruppe von F/E-Bits von den Schaltungen des Blockes 750-512 für eine Treffer-Ausweich-Anzeige auszunutzen ist und welche Hälfte der Gruppe der F/E-Bits von derartigen Schaltungen für eine andere Treffer-Bestimmung heranzuziehen ist. Ein Adressenbitsignal ZDAD31 steuert die Auswahl der Schalterstellungen.
Die Schaltungen des Blockes 750-510 umfassen eine Mehrbereichs- Multiplexerschaltung, die die Ausgangssignale FEDAT0100 und FEDAT1100 als Funktion des Treffer- und Ausweichdatenmusters erzeugt. Demgemäß werden diese Signale in Abhängigkeit von den ALTHIT-Signalen des Blockes 750-512 gesetzt. Zwei Decoderschaltungen 750-520 und 750-521 arbeiten in der Weise, daß sie die Ebenen-Informationssignale ZLEV 0100-2100 decodieren, um geeignete Reihen von Schreibfreigabe- Abtastsignalen R/WFE 010-210 und R/WLV 010-710 für Die Steuerungs-Adreßliste 750-500 bzw. für die Adreßliste 750-502 zu erzeugen. Demgemäß wird der Ebenen- (ZLEV)-Schalter 750-552 derart betrieben, daß die Ebene gesteuert wird, in der die F/E-Bits gesetzt oder zurückgesetzt werden, und die Ebene in der Adreßliste 750-502, in der neue Adressen während eines Adreßlisten-Zuteilungszyklus des Betriebs eingeschrieben werden.
Wie aus der vorliegenden Figur ersichtlich ist, werden in der ausgewählten ersten Stellung des ZLEV-Schalters 750-552 die Signale OLDRR 010-210 von der Adreßliste 750-500 abgegeben. In der ausgewählten zweiten Stellung des Schalters 750-552 werden die Ausgangsanschlußsignale RLEVR0-R2 von einem Ebenen-Register 750-524 abgegeben. Das Ebenen-Register 750-524 wird dazu herangezogen, die letzte Reihe von Treffer-Ebenen- Signalen aufzubewahren, die durch die Treffer/Ausweich- Ebenennetzwerkschaltungen des Blockes 750-512 erzeugt werden. Dies ermöglicht die Verteilung des Treffer-Ebenenwertes auf andere Bereiche des Cachespeichers 750 für eine anschließende Ausnutzung (das sind die Signale RHITLEV 0-2).
In der ausgewählten dritten Stellung des Schalters 750-522 werden von dessen Ausgangsanschlüssen die Signale LEVR0-R2 abgegeben, die durch die Schaltungen des Blockes 750-512 erzeugt werden. Der Schalter 750-522 wird durch Signale von Steuerungs-Flipflops gesteuert, die in dem Block 750-526 enthalten sind (das sind die Signale FBYPCAC und DIRBUSY). Wie aus der betreffenden Figur hervorgeht, werden die Komplementwerte der den Signalen RHITLEV 010-210 entsprechenden Ebenen-Signale, die in dem Register 750-524 gespeichert sind, über eine Gruppe von UND-Gliedern an die Steuerschaltungen innerhalb des Bereiches 750-9 abgegeben.
Während des Suchbetriebszyklus ermitteln die Treffer/Ausweich- Ebenenetzwerkschaltungen, welche Ebene, wenn überhaupt, eine Adresse enthält, die mit der ZAC-Adresse übereinstimmt. Im Falle einer Übereinstimmung wird das Signal RAWHIT100 als Binärsignal 1 auftreten, und daraus wird die Reihe von Treffer-Ebenensignalen ZCD 010-210 und HITLEVC 7010-7210 über eine Codierschaltung erzeugt. Die Signale werden in Übereinstimmung mit den Zuständen der F/E-Bits-Signale ZFE 010-710 erzeugt. Dies bedeutet, daß zum Zwecke des Auftretens eines Cachespeicher-Treffers in einer bestimmten Ebene das F/E-Bit ein 1-Bit sein muß. Wie oben erwähnt, zeigt eine binäre 0 das Vorhandensein einer leeren Blockebene an. Jede Codierschaltung enthält UND-/ODER-Verknüpfungsschaltungen von herkömmlichem Aufbau die die Ebenen-Signale entsprechend folgenden Boolschen Ausdruck erzeugen
L i = e = 0 ²|E j = 0 ZHTj · ZFEj.
Darüber hinaus können die Signale ZCD 010-210 ebenfalls aus den Ebenen-Signalen ZNICLEV 000-2100 erzeugt werden, die durch den Bereich 750-9 während der Befehlsaufrufe bereitgestellt werden.
Der Block 750-512 enthält ferner ein anderes Treffer- Netzwerk, welches außerdem in der Zuteilung bzw. Zuordnung eines 8-Wort-Blockes verwendet werden kann, indem ein anderes Treffersignal ALTHIT100 erzeugt wird und indem eine Reihe von Signalen ALTHITLEV 0100-2100 zum Laden in das Register 750-504 anstelle der Umlaufzuordnungssignale C7RR 0100-2100 erzeugt wird. Zum Zwecke der vorliegenden Erfindung können derartige Anordnungen als in herkömmlicher Weise ausgeführt betrachtet werden. In diesem Zusammenhang sei jedoch auf die US-PS 38 20 078 hingewiesen.
Wie aus den Zeichnungen hervorgeht, erzeugen die Schaltungen des Blockes 750-512 andere Treffersignale HITTOTB100, HITTOC7100 und HITTOIC100. Diese Signale werden aus dem Signal RAWHIT100 entsprechend den nachstehenden Boolschen Ausdrücken abgeleitet:
  • 1. HITTOTC7100 = RAWHIT100 · BYPCAC000
  • 2. HITTOIC100 = HITTOC7100
  • 3. HITTOTB100 = RAWHIT100 · BYPCA000 + PRERD100 · BYPCAC100.
Die Schaltungen des Blockes 750-512 nehmen die Cachespeicher- Umgehungssignale BYPCAC000 und BYPCAC100 von dem Block 750-526 her auf. Wie bereits erwähnt, enthält dieser Block eine Anzahl von Steuerzustands-Flipflops, die Signale zur sequentiellen Hindurchführung des Bereiches 750-5 durch die verschiedenen geforderten Operationen umfaßt, die zur Verarbeitung der verschiedenen Befehlstypen dienen. Darüber hinaus enthält der Block 750-512 Verknüpfungsschaltungen zur Erzeugung der geforderten Steuersignale während derartiger Operationen. Zum Zwecke der vorliegenden Erfindung können diese Schaltungen in herkömmlicher Weise ausgeführt sein. Zur Vereinfachung der Beschreibung werden daher hier lediglich eine kurze Beschreibung und die Boolschen Ausdrücke bezüglich bestimmter Steuerzustands-Flipflops und Steuerverknüpfungsschaltungen gegeben, soweit dies für ein Verständnis der Arbeitsweise der vorliegenden Erfindung erforderlich ist.
Im folgenden werden die Steuerzustands-Flipflops näher betrachtet. Das FJAM1-Flipflop wird auf das Auftreten eines Treffer-Zustands am Ende eines Adreßlisten-Suchzyklus für einen Doppellesebefehl gesetzt. Das Flipflop hält die unteren Adressenbits in dem bzw. den Register(n) 750-32 fest, wodurch der Zugriff zu dem zweiten Wort aus der Cachespeichereinheit 750-300 im Falle eines Doppellesebefehls freigegeben ist. Außerdem wird das Flipflop auf das Auftreten eines Einzelschreibbefehls hin gesetzt, um die Auswahl der RRAD- Stellung des ZDAD-Schalters 750-530 zu bewirken, damit dieselbe Adresse abgegeben bzw. bereitgestellt wird, um an die Cachespeichereinheit 750-500 für ein weiteres Taktintervall oder einen weiteren Zyklus abgegeben zu werden. Bei Fehlen eines Haltezustands (Signal HOLDDMEM=1) bleibt das FJAM1-Flipflop für einen Zyklus gesetzt, und zwar in Übereinstimmung mit folgendem Boolschen Ausdruck:
SET = FJAM1 = REQCOMB · RAWHIT · · (RDDBL + WRTSNG) + · FJAM2 + HOLDDMEM · FJAM1.
Das FJAM2-Flipflop wird auf das Vorliegen eines Treffer- Zustands am Ende eines Adreßlisten-Suchzyklus nach einem Doppelschreibbefehl gesetzt. Das Setzen des FJAM2-Flipflop bewirkt das Setzen des FJAM1-Flipflops am Ende des nächsten Taktintervalls. Der Steuerzustand des FJAM2- Flipflops zusammen mit dem FJAM1-Flipflop bewirkt die Auswahl der RDAD-Stellung des ZDAD-Schalters 750-530, um die richtige Adresse zum Einschreiben von Daten in die Cachespeichereinheit 750-300 bereitzustellen.
Das FJAM2-Flipflop bleibt außerdem während eines Zyklus gesetzt, und zwar in Übereinstimmung mit folgendem Boolschen Ausdruck:
SET = FJAM2 = REQCOMB0 · RAWHIT · · WRTDBL + HOLDDMEM · FJAM2.
Ein Flipflop NRMOTC1 steuert direkt den ZDAD-Schalter 750-530; es wird in Übereinstimmung mit den Zuständen von Signalen gesetzt, die durch die anderen Steuerzustands- Flipflops erzeugt werden.
Das NRMOTC1-Flipflop bleibt normalerweise während eines Zyklus gesetzt, und zwar in Übereinstimmung mit folgendem Boolschen Ausdruck:
SET = NRMPTC1 = (WRTDBL · REQCOMB0 ·RAWHIT · ) + FJAM2 + SETFJAM1 + REQCOMB0 · (RDTYPE · BYPCAC + RDTYP · RAWHIT) · ().
Das FDIRASN-Flipflop spezifiziert einen Adreßlisten- Betriebszuteilungszyklus, in welchem ein assoziativer Adresseneintrag in die Adreßliste 750-500 im Falle von Ausweichzuständen der Cachespeicher-Umgehungsoperationen für Lesebefehle eingeschrieben wird.
Das FDIRASN-Flipflop wird für einen Zyklus in Übereinstimmung mit folgendem Boolschen Ausdruck gesetzt:
SET = FDIRASN = REQCOMB0 · RDTYP · (BYPCAC + ).
Das FICENAB-Flipflop gibt das Laden des Befehlsregisters frei; es wird für einen Zyklus auf das Auftreten eines 1/2 T-Taktimpulses hin entsprechend der nachstehenden Boolschen Gleichung gesetzt:
SET = .
Das FRCIC-Flipflop wird für einen Zyklus auf das Auftreten eines 1/2 T-Taktimpulses hin entsprechend folgendem Boolschen Ausdruck gesetzt:
SET = FJAMZNICLEV.
Im folgenden werden die Steuerverknüpfungssignale näher betrachtet.
  • 1. Das ALTHIT-Signal zeigt das Vorhandensein eines Pseudo-Trefferzustands an.
  • ALTHIT = ALTLEV0 + ALTLEV1 + . . ., ALTLEV7.
  • 2. Die Signale ALTHITLEV0, ALTHITLEV1 und ALTHITLEV2 bilden einen 3-Bit-Code, die die Ebene spezifiziert, in der ein Pseudo-Trefferzustand aufgetreten ist.
  • Die Signale sind dabei wie folgt codiert:
    • a) ALTHITLEV0 = ALTLEV4 + ALTLEV5 + ALTLEV6 + ALTLEV7.
    • b) ALTHITLEV1 = ALTLEV2 + ALTLEV3 + ALTLEV6 + ALTLEV7.
    • c) ALTHITLEV2 = ALTLEV1 + ALTLEV3 + ALTLEV5 + ALTLEV7.
  • 3. Die Signale ALTLEV0 bis ALTLEV7 zeigen an, welche der acht Ebenen, wenn überhaupt, einen Pseudo-Trefferzustand ermittelt hat.
    • a) ALTLEV0 = ZHT0 · .
        ·
        ·
        ·
    • b) ALTLEV7 = ZHT7 ·
  • 4. Das DIRADDE-Signal ist ein Freigabesignal für den Decoder 750-521, welches die Erzeugung von Schreibabtastsignalen ermöglicht, die an die Adressen- Adreßliste 750-500 abgegeben werden.DIRADDE = · FDIRASN.
  • 5. Das DIRBUSY-Signal zeigt an, wenn die Adreßlisten 750-500 belegt sind.
    DIRBUSY = FLSH + FJAM2 + FJAM1 + FDIRASN.
  • 6. Das FEDCODE-Signal ist ein Freigabesignal für den Decoder 750-520, welches die Erzeugung von Schreibabtastsignalen ermöglicht, die an die Steueradreßliste 750-500 abgegeben werden.FEDCODE = FDIRASN · .
  • 7. Das FORCEBYP-Signal gibt den Ablauf eines Cachespeicher- Umgehungsbetriebs frei.
    FORCEBYP = FSKIPRR + FBYPCAC.
  • 8. Das GSRCH-Signal zeigt an, wann ein Suchbetriebszyklus ablaufen sollGSRCH = .
  • 9. Die Signale HITLEVC70, HITLEVC71 und HITLEVC72 bilden einen 3-Bit-Code, der die Ebene spezifiziert, in der ein Trefferzustand aufgetreten ist.
    • a) HITLEVC70 = HITLEV4 + HITLEV5 + HITLEV6 + HITLEV7.
    • b) HITLEVC71 = HITLEV2 + HITLEV3 + HITLEV6 + HITLEV7.
    • c) HITLEVC72 = HITLEV1 + HITLEV3 + HITLEV5 + HITLEV7.
  • 10. Die Signale HITLEV0 bis HITLEV7 zeigen an, welche der acht Ebenen, wenn überhaupt, einen Trefferzustand ermittelt hat.
    • a) HITLEV0 = ZFE0 · ZHT0.
        ·
        ·
        ·
    • b) HITLEV7 + ZFE7 · ZHT7.
  • 11. Das RAWHIT-Signal zeigt die Ermittlung eines Trefferzustands an.
    REWHIT + HITLEV0 + . . . + HITLEV7.
  • 12. Die Signale HITTOC7 und HITTOIC zeigen jeweils die Ermittelung eines Trefferzustands bei bestimmten Schaltungen innerhalb des Bereichs 750-9 an.HITTOC7 = HITTOIC = RAWHIT · .
  • 13. Das HITTOTB-Signal zeigt die Ermittlung eines Trefferzustands oder eine Vor-Lesebefehls an, wenn im Nebenweg- bzw. Umgehungsbetrieb für die Transitblockpufferschaltungen gearbeitet wird.HITTOTB = RAWHIT · + PRERD · BYPCAC.
  • 14. Das LDRAD-Signal gibt das Laden des RDAD-Registers 750-532 frei.LDRDAD = .
  • 15. Das LDRDRIN-Signal gibt das Laden des RDRIN-Registers 750-534 frei.LDRDRIN = .
  • 16. Das Signal RDDBLZCDE wird dazu herangezogen, den ZCD-Schalter 750-306 im Falle eines Doppellesebefehls freizugeben.RDDBLZCDE = · (FDIRASN + FJAM1 + FJAM2).
  • 17. Das REQCOMB0-Signal zeigt das Vorhandensein einer Cachespeicher-Anforderung an.REQCOMB0 = · DREQAC.
  • 18. Die Signale ZCD0, ZCD1 und ZCD2 werden dazu herangezogen, den Betrieb des ZCD-Schalters 750-306 zu steuern.
    • a) ZCD0 = ZCDL4 + ZCDL5 + ZCDL6 + ZCDL7 + ZNICLEV0 · ZCDICENAB + RDDBLL0.
    • b) ZCD1 = ZCDL2 + ZDEL3 + ZCDL6 + ZCDL7 + ZNICLEV1 · ZCDICENAB + RDDBLL1.
    • c) ZCD2 = ZCDL1 + ZCDL3 + ZCDL5 + ZCDL7 + ZNICLEV2 · ZCDICENAB + RDDBLL2.
  • Dabei ist der jeweilige Ausdruck ZCDLi gegeben durch ZCDLEVi.
  • 19. Das ZFEDATWT1-Signal ist ein Daten-Schreibabtastsignal, das zum Einschreiben der F/E-Bit-Signale FEDAT0100 und FEDAT1100 in die Adreßliste 750-500 dient.
    ZFEDATW1 = FEIRASN · ZDAD31.
  • 20. Das FEDAT0100-Signal entspricht dem ersten Voll/Leer- Bit.
    FEDAT0100 = FBYPCAC000 + FALTHIT100.
  • 21. Das FEDAT1100-Signal entspricht dem zweiten Voll/Leer-Bit
    FEDAT1100 = FALTHIT100 + FBYPCAC000.
  • 22. Das SELZDADC1-Signal steuert den Betrieb des ZDAD- Schalters 750-530.
    SELZDADC1 = NRMPTC1.
  • 23. Das RWRR-Signal ist ein Umlauf-Schreibsignal, welches zum Wiedereinschreiben der RR-Bit-Signale in die Adreßliste 750-500 dient.RWRR = FDIRASN · .
Aus den Zeichnungen dürfte ersichtlich sein, daß die unterschiedlichen decodierten Befehlssignale durch eine Decoderschaltung 750-528 auf das Auftreten von Signalen erzeugt werden, die von dem Prozessor 700 an die DMEM-Leitungen 0-3 abgegeben werden. Der Decoder 750-528 wird durch ein Signal von der DREQCAC-Leitung her freigegeben. Die decodierten Befehlssignale (beispielsweise WRTDBL, WRTSNG, PRERD, RDTYPE) werden zusammen mit anderen Steuersignalen, wie den Signalen HOLDDMEM, FSAKIPROO und jenen Signalen von den Leitungen CANCELC und BYPCAC als Eingangssignale an die Schaltungen des Blocks 750-526 abgegeben.
Im folgenden wird der Befehlspufferbereich 750-7 näher erläutert. Dieser Bereich nimmt Speicherdaten und Befehle von den DFS-Leitungen her auf, die zu dem Prozessor 700 hin über den ZDI-Schalter 750-312 bzw. den ZIB-Schalter 750-314 übertragen werden. Die Speichersignale werden in ein RDFS-Register 750-702 über eine Stellung eines in zwei Stellungen einstellbaren Schalters 750-700 geladen.
Die Speicherdaten, die als Ergebnis eines fehlerhaften Zustands bzw. Ausweichzustands auf entsprechende Aufnahme hin abgeholt werden, werden an den ZDI-Schalter 750-312 über die RDFS-Stellung Nr. 0 eines 1-aus-4- Stellungs-(ZDIN)-Schalters 750-708 abgegeben. Im Falle eines Vierer-Ladebefehls werden die Speicherdaten in den Vierer-Speicherplatz-(LQBUF)-Puffer 750-706 geladen, wenn das Signal LQBUF als Verknüpfungssignal 1 auftritt. Die Schreib/Lese-Adressensignale WRTBUF 010-110/ RDBUF 010-110 von dem Bereich 750-112 her steuern das Einschreiben und Lesen von Daten in bzw. aus den Speicherplätzen des Puffers 750-706.
Die in dem LQBUf-Puffer 750-706 gespeicherten Speicherdaten werden dann über die RLQBUF-Stellung Nr. 2 des ZDIN-Schalters 750-708 an die ZDI-Einrichtung übertragen.
Im Falle des Vorliegens eines Doppellesebefehls wird das geradzahlige Wort des Wortpaares in ein REVN-Register 750-710 übertragen. Danach wird das geradzahlige Wort zu dem ZDI-Schalter 750-312 hin über die Stellung Nr. 1 des ZDIN-Schalters 750-708 übertragen, und zwar zur Ausführung einer ungeradzahligen Doppellese-Befehlsanforderung oder auf die Aufnahme eines RD-EVEN-Signals von dem Prozessor 700.
Wie aus den Zeichnungen hervorgeht, wird jedes Speicherdatenwort außerdem in das RDFSB-Register 750-712 geladen und danach in die Cachespeichereinheit 750-300 über den ZCDIN-Schalter 750-304 eingeschrieben, und zwar in der Ebene, die durch den Inhalt des RADR-Registers 750-32 spezifiziert ist.
Im Falle von Instuktions- bzw. Befehlstransfers wird jeder aus dem Speicher aufgenommene Befehl in einen der vier Speicherplätze eines spezifizierten (IBUF1/IBUF2) Befehlspuffers zweier Befehlspuffer 750-715 und 750-717 geladen. Die IBUF1- und IBUF2-Puffer 750-715 und 750-717 werden dazu herangezogen, bis zu zwei Vier- Wort-Blöcke zu puffern, die durch Zugriff aus dem Speicher erhalten werden können, und zwar auf I-Abruf-1- oder I-Abruf-2-Befehle hin, bezüglich der ein Ausweichzustand ermittelt worden ist.
Die Befehle werden in den Speicherplatz eines der IBUF1- und IBUF2-Puffer 750-715 und 750-717 eingeschrieben. Der betreffende Puffer wird durch die Signale WRTBUF 0100-1100 unter der Steuerung von Schreibabtastsignalen IBUF1/IBUF2 festgelegt. Die Lesesteuersignale RDBUF 0100-1100 geben das Auslesen derartiger Befehle für die Übertragung zu dem Prozessor 700 hin frei, wenn der Speicherplatz IBUF1 oder IBUF2, der durch die Signale ZEXT 0100-1100 bezeichnet ist, einen Befehl enthält. Der Befehl wird zu dem Prozessor 700 hin über die Stellung 1 oder 2 eines in zwei Stellungen einstellbaren Schalters 750-720 und über die ZRIB-Schalterstellung eines ZIB-Schalters 750-314 übertragen.
Die IBUF1- und IBUF2-Puffer 750-715 und 750-717 geben gültige Ausgangssignale IBUF1V100 bzw. IBUF2V100 an die IBUFREADY-Schaltungen des Blockes 750-722 ab. Diese Schaltungen überführen die IBUFREADY-Leitung in den Binärzustand 1, wodurch angezeigt wird, daß zumindest ein Befehl in dem I-Puffer adressiert wird (vorliegender Befehlsblock). Wie aus den Zeichnungen hervorgeht, nehmen die IBUFREADY-Schaltungen Eingangssignale (beispielsweise USETBRDY, IFETCHRDY) von den Steuerschaltungen innerhalb des Bereiches 750-9 auf.
Im folgenden wird der Befehlszählerbereich 750-9 näher erläutert. Dieser Bereich speichert Cachespeicher- Adressensignale (24-33) zur Anzeige des nächsten Befehls, zu dem ein Zugriff erfolgt. Diese Speicherung erfolgt in einem von zwei Befehlsadressenregistern (RICA/RICB) 750-900 und 750-902. Die Cachespeicher- Adressensignale 24-33 werden in das Befehlsregister RICA/RICB geladen, welches nicht benutzt wird, wenn ein IFETCH1-Befehl von dem Prozessor Fig.. 700 her aufgenommen wird. Die Cachespeicheradresse wird über die RIDO-Stellung des ZDAD-Schalters 750-530 und über eine ZDAD-Stellung Nr. 0 eines in vier Stellungen einstellbaren ZICIN-Schalters 750-904 übertragen.
Jeweils dann, wenn der Prozessor 700 einen Zugriff zu einem Befehl hin ausführt, wird der Inhalt des Befehlsregisters RICA/RICB, der über eine Stellung des in zwei Stellungen einstellbaren ZIC-Schalters 750-906 ausgelesen ist, mittels einer Inkrementierungsschaltung 750-908 um 1 erhöht. Der erhöhte Inhalt wird in das Befehlsregister RICA/RICB wieder zurückgeführt, und zwar über die RNIC-Stellung Nr. 1 des ZICIN-Schalters 750-904.
Wie aus den Zeichnungen hervorgeht, speichert jedes Befehlsregister zwei Ebenen-Felder, um erste und zweite Befehlsblöcke auf das Auftreten der Befehle IFETCH1 und IFETCH2 hin abzuholen. Die beiden Paare von Ebenen- Feldsignalen werden an unterschiedliche Schalterstellungen eines in vier Stellungen einstellbaren Crossbar-Schalters 750-910 abgegeben. Die ausgewählten Ebenen-Signale ZNICLEV 0100-2100, die als Eingangssignale an den Block 750-512 abgegeben werden, werden zur Steuerung des Betriebs des ZCD-Schalters 750-306 herangezogen, um zu den Befehlen zuzugreifen, die durch das Befehlsregister RICA/RICB spezifiziert sind. Die Ebenen- Feldsignale entsprechen den Signalen HITLEVC7 0100-2100, die durch die Schaltung des Blockes 750-512 erzeugt werden. Diese Signale werden in eines der Befehlsregister geladen, und zwar auf einen Adreßlisten-Zuteilungsbetriebszyklus hin.
Zusätzlich zu den Ebenen-Feldsignalen speichern die RICA- und RICB-Befehlsadressenregister weitere Signale, die für verschiedene Steuerungszwecke herangezogen werden, auf die nachstehend in dem erforderlichen Umfang eingegangen wird.
Die von dem ZDAD-Schalter 750-530 her eintreffenden Cachespeicher-Adressensignale werden mittels einer weiteren Inkrementierungsschaltung 750-912 um 1 erhöht. Die erhöhten bzw. inkrementierten Adressensignale werden über die INC-Stellung Nr. 3 des ZICIN-Schalters 750-904 in das RICA/RICB-Befehlsregister geladen. Die beiden Bits 32-33 niedrigster Wertigkeit der Cachespeicheradresse bilden die IBUF1- oder IBUF2-Adresse (das sind die Signale ZEXT 0100-1100), um aus dem Speicher Befehlsblöcke auszulesen, zu denen hin ein Zugriff erfolgt ist.
Es sei darauf hingewiesen, daß die beiden Ebenen-Feldsignale LEV1 udn LEV2 von anderen Ausgängen des Schalters 750-910 als Eingangssignale an zwei Vergleicherschaltungen 750-912 und 750-914 abgegeben werden. Die Schaltungen 750-912 und 750-914 vergleichen die Ebenen- Signale LEV1 und LEV2 des gerade vorliegenden Befehlsblocks von dem Schalter 750-910 her mit den Eingangs- Ebenensignalen C7RR 0100-2100, die der Umlaufzählerstellung für den nächsten verfügbaren Block entsprechen. Außerdem nimmt die Vergleicherschaltung 750-912 als Eingangssignale die Speicher-Ebenensignale RTBLEV 0100-2100 und die Befehls-Ebenensignale ZNICLEV 0100-2100 von dem Schalter 750-910 her auf, um zusätzlich zum Vergleich mit den Ebenen-Signalen ZIC 0100-2100 einen Vergleich mit den Signalen C7RR 0100-2100 vorzunehmen. Die Cachespeicher- Adressensignale werden durch eine Inkrementierungsschaltung 750-918 um vier erhöht und als Eingangssignale an Umlauf-Sprungsteuerschaltungen des Blockes 750-916 abgegeben. Diese Schaltungen nehmen als weiteres Eingangssignalpaar die Eingangs-Cachespeicher-Adressensignale 24-30 von dem ZDAD-Schalter 750-530 und die Cachespeicher-Adressensignale des gerade vorliegenden Befehlsblocks von dem ZIC-Schalter 750-906 her auf, um einen Vergleicher durch die vorhandenen Schaltungen vorzunehmen.
Die Ergebnisse der Signalpaar-Vergleiche der Cachespeicher- Adressensignale und des Ebenen-Signals werden in weiteren Schaltungen kombiniert bzw. verknüpft, die in den Umlauf-Sprungsteuerschaltungen des Blockes 750-916 enthalten sind. Die Schaltungen des Blockes 750-916 erzeugen auf das Auftreten der decodierten Signale von einer Decoderschaltung 750-922 her Ausgangssteuersignale, die Adressenkonflikte vermeiden. Eine weitere Erläuterung des Betriebs derartiger Schaltungen findet sich an der eingangs erwähnten anderen Stelle.
Die Ausgangssteuersignale des Blockes 750-916 werden als Eingangssignale an die Schaltungen des IC-Steuerblockes 750-920 abgegeben. Darüber hinaus nehmen die Steuerschaltungen des Blockes 750-920 die Ergebnissignale der Decodierung der Befehlssignale auf, die von der Decoderschaltung 750-922 an die DMEM-Leitungen abgegeben werden, wenn diese Schaltung durch ein Signal von DREQCAC-Leitung her freigegeben ist. Zusammen mit den anderen an den Block 750-920 abgegebenen Signalen aus den Bereichen 750-1 und 750-5 erzeugen die Steuerschaltungen des Blockes 750-920 Adressen- und Steuersignale für den Ablaufbereich 750-9 über die erforderlichen Betriebszyklen, um bestimmte Typen von Befehlen zu verarbeiten (beispielsweise die Befehle IFETCH1, IFETCH2 und LDQUAD).
Der Block 750-920 enthält eine Anzahl von Steuerzustands- Flipsflops und Verknüpfungsschaltungen zur Erzeugung der erforderlichen Steuersignale. Aus denselben Gründen, die in Verbindung mit dem Bereich 750-5 erwähnt worden sind, werden lediglich eine kurze Erläuterung und die Boolschen Ausdrücke bezüglich bestimmter Zustands-Flipflops und Steuerschaltungen gegeben.
Im folgenden werden die Steuerzustands-Flipflops näher betrachtet. das FABCURLEV1-Flipflop definiert die gerade vorliegende Ebene für das RICA/RICA-Befehlsregister. Dieses Flipflop wird auf das Auftreten eines T-Taktsignals entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt. Der Setzzustand korrigiert dabei den Rücksetzzustand. Wenn das Signal FA/FBCURLEV ein Binärsignal 1 ist, dann wird die Ebene 1 ausgewählt, und wenn das betreffende Signal ein Binärsignal 1 ist, dann wird die Ebene 2 ausgewählt.
2.SET = DECODEIF1 · · ZDAD08 · ZDAD09 · HIT ·
FACTVRIC100/000 + ZEXT0 · ZEXT1 · RDIBUF · HOLDEXECRDIBUF · FA/FBCURLEV000 ·
· FACTVRIC100/000 · +ZEXT0 · ZEXT1 · FLDQUAD · RDIBUF · · FACTVRIC100/000 · .RESET = DECODEIF1 · · FACTVRIC100/000 + DECODELDQUAD · [ · · FACTVRIC100/100 + ZEXTO · ZEXT1 · · FA/PBCMPLEV100 ·FACTVRIC000/100 · RDIBUF · .
Das FACTVRIC-Flipflop legt das gerade aktive Befehlsregister RICA/RICB fest. Wenn das Flipflop in den 1-Zustand gesetzt ist, ist das RICA-Register spezifiziert; ist das betreffende Flipflop in den Null-Zustand gesetzt, so ist das RICB-Register bezeichnet. Das betreffende Flipflop wird auf das Auftreten eines T-Taktimpulssignals hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
= FACTVRIC · TGLACTVRIC.TGLACTVRIC = DECODEIF1 · · · + FNEWIF1 · NOGO.FACTVRIC = · .TGLACTVRIC = ( + [HOLDDMEM + [CANCELC + FFPIMEIS) · ( + ).
Das FCPUWRTREQ-Flipflop legt die Zeitspanne bzw. den Zeitpunkt fest, währenddessen Prozessordaten in den Cachespeicher einzuschreiben sind. Das betreffende Flipflop wird auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = (DECODEWRTSNGL + DECODEWRTDBL) · HIT · · [RESET = FWRTDBL · .
Das FDBLMISS-Flipflop definiert einen Doppellese-Ausweichzustand; es wird dazu herangezogen, die ZDIN- Stellung des ZDI-Schalters 750-312 während des Zyklus auszuwählen, der der Datenwiederbereitstellung folgt. Das betreffende Flipflop wird auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = (DECODERDDBL + DECODERDRMT) · · · MISS.
RESET = FRDMISS.
Das FEVENODD-Flipflop bestimmt, welches Wort des Zwei-Wortpaare-Prozessors 700 wartet, wenn ein Einzellese- Ausweichzustand auftritt. Das Flipflop bestimmt außerdem die Reihenfolge, in der die Datenwörter zum Prozessor 700 im Falle eines Doppellese- Ausweichzustands zurückzuführen sind.
Darüber hinaus wird das Flipflop während eines Doppellese- Trefferzustands dazu herangezogen, zu dem zweiten Datenwort zuzugreifen. Dieses Flipflop wird auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = (DECODERDSNGL + DECODEIF1 · FFPIMEIS) · · · ZDAD09 +DECODERDDBL · · · DSZ1.
RESET = (DECODERDSNGL + DECODEIF1) · · · +DECODERDDBL · · · DSZ1 + DECODERDRMT · · .
Das FFPIMEIS-Flipflop spezifiziert, daß der letzte Prozessorzustand ein FFPIMEIS-Zustand war, was bedeutet, daß der IF1-Befehl auf den DMEM-Leitungen eine Anforderung nach zusätzlichem EIS-Deskriptoren ist. Dieses Flipflop wird auf das Auftreten eines T-Taktimpulses hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt.
SET = FPIMEIS.RESET = DECODEIFI · · .
Das FHOLDIF1-Flipflop bestimmt, wann der Prozessor 700 aufgrund des Vorliegens eines IF1-Ausweichzustands festgehalten wird, so daß bei Aufnahme des Befehls aus dem Speicher das für den vorliegenden Befehl benutzte Register RICA/RICB durch das FDATARECOV-Flipflop aktualisiert werden kann. Das Flipflop wird auf das Auftreten eines T-Taktimpulses hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = DECODEIFI · IFPIMEIS · · · MISS.
RESET = FNEWIFT · NOGO + FDATARECOV.
Das FINHRDY-Flipflop wird dazu herangezogen, die Signalisierung eines IBUFRDY-Zustands zu dem Prozessor 700 hin zu sperren, wenn ein Konflikt zwischen der Befehls-(IC)- Ebene und der Speicherdatenebene zu dem Zeitpunkt auftritt, zu dem der Prozessor 700 den Befehl übernommen hat, der aus dem Cachespeicher in das Register RIRA/RIRB geladen worden ist. Das betreffende Flipflop wird auf das Auftreten eines T-Taktimpulses hin gesetzt, und es wird auf das Auftreten des nächsten T-Taktimpulses hin unbedingt gesetzt, wenn kein Setzzustand vorliegt. Das Setzen erfolgt in Übereinstimmung mit folgendem Boolschen Ausdruck:
SET = SETIRTERM · READIBUF · · .
worin SETIRTERM = CMPDATAICLEV + MEMWRTREQ · (ZEXT0 · ZEXT1 · IF2 ·
+ DECODEIF1 · FFPIMEIS + FINHRDY).RESET = .
Das FJAMZNICLEV-Flipflop wird dazu herangezogen, die Ebenen-Signale ZNICLEV 000-2100 des nächsten Befehls an die Steuereingangsanschlüsse des ZCD-Schalters 750-306 abzugeben (das sind die Signale ZCD 010-210), und zwar auf das Auftreten eines IF1-Befehls hin, der nicht das letzte Wort in dem Block bezeichnet hat. Das Flipflop wird auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit dem nachstehend angegebenen Boolschen Ausdruck gesetzt; es wird auf das Auftreten des nächsten T-Taktimpulses hin zurückgesetzt:
SET = DECODEIF1 · · HIT · · CANCELC · · (ZDAD08 · ZDAD09).
Das FNEWIF1-Flipflop definiert den Zyklus, nachdem ein IF1-Befehl von dem Prozessor 700 her aufgenommen ist. Das betreffende Flipflop wird für einen Zyklus auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit folgendem Boolschen Ausdruck gesetzt:
SET = DECODEIF1 · FFPIMEIS · · .
Das FRDIBUF-Flipflop wird dazu herangezogen zu bestimmen, daß ein Signal auf der RDIBUF-Leitung von dem Prozessor 700 her während des letzten Betriebszyklus aufgenommen wurde. Dieses Flipflop wird in Übereinstimmung mit dem nachstehend angegebenen Boolschen Ausdruck gesetzt; es wird während des nächsten Zyklus bei Fehlen eines Setzzustands zurückgesetzt:
SET = RDIBUF · · .
Das FRDMISS-Flipflop wird dazu herangezogen, das Halten des Prozessors 700 auf die Ermittelung eines Ausweich- Zustands bezüglich irgendeines Lesebefehls zu bewirken. Dieses Flipflop wird auf das Auftreten eines T-Taktimpulses hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = (DECPDERDSMGL + (DECODEIF1 · ) + DECODERDRMT+ DECODERDCLR + DECODERDDBL) · · · MISS.
RESET = FDATARECOV + FNEWIF1 · NOGO.
Das FRDREQ-Flipflop bestimmt, wann das zweite auf einen ein RDDBL-Befehl hin bezüglich eines Trefferzustands aufgerufene Wort aus dem Cachespeicher auszulesen ist. Das betreffende Flipflop wird auf einen T-Taktimpuls hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = DECODERDDBL · HIT · · .RESET = .
Das FDATARECOV-Flipflop sperrt das Inkrementieren des Befehlsregisters RICA/RICB, wenn der IF1-Befehl für das letzte Wort in dem Block zutrifft und wenn der IF2-Befehl gelöscht ist. Das betreffende Flipflop wird auf einen T-Taktimpuls hin in Übereinstimmung mit folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = DATARECOV · FLASTINST · [HOLDDMEM · [CANCELC + DATARECOV · FLASTINST · [CANCELC · + DATARECOV · :
RESET = [HOLDDEMEM · FDATARECOV.
Das FSKIPRR-Flipflop wird dazu herangezogen zu bestimmen, wann die Umlaufbereichsschaltungen auf die Befehlsebenen zeigen und wann die Adresse des Prozessorbefehls innerhalb des vorliegenden 8-Wort-Befehlsblockes liegt. Das betreffende Flipflop wird auf einen T-Taktimpuls hin in Übereinstimmung mit der nachstehend angegebenen Boolschen Gleichung gesetzt; es wird auf einen anschließend auftretenden T-Taktimpuls hin bei Fehlen eines Setzzustands zurückgesetzt:
SET = SKIPFF · · .
Das FINITLDQD-Flipflop wird dazu herangezogen, die beiden Bits niedrigster Wertigkeit der LDQUAD-Befehlsadresse auszulösen und dann dazu heranzuziehen, diese beiden Bits als Nullen auf anschließend auftretende LDQUAD-Befehle desselben Übertragungsbefehls hin zu maskieren. Das betreffende Flipflop wird auf einen T-Taktimpuls hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt:
SET = DECODELDQUAD · · .
RESET = FE3110.
Das FLDQUAD-Flipflop bestimmt, wann das andere Befehlsregister zur Adressierung von Daten herangezogen wird. Dieses Flipflop wird auf einen T-Taktimpuls hin entsprechend folgendem Boolschen Ausdruck gesetzt bzw. zurückgesetzt:
SET = DECODELDQUAD · · .RESET = ZEXT0 · ZEXT1 · FLDQUAD · RDIBUF · + FE2110.
Im folgenden werden die Steuerverknüpfungssignale näher betrachtet.
  • 1. Das FA/FBLEV1VAL-Signal wird dazu herangezogen, den Zustand einer ersten gültigen Bitposition des RICA/RICB- Befehlsregisters zu bestimmen. Dieses Flipflop wird auf einen T-Taktimpuls hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt. Der Rücksetz-Zustand korrigiert dabei den Setzzustand.
    • a. FA/FBLEV1VALSET = DECODEIF1 · · · ·
      FACTVRIC100/000 + DECODEIF1 · FFPIMEIS · · ·
      · FACTVRIC000/100 + DECODELDQUAD ·
      FACTVRIC100/000.
    • b. FA/FBLEVIVAIRESET = DECODEIF1 · · ·
      · HIT · ZDAD08 · ZDAD09 · FACTVRIC100/000 + ZEXT0 · ZEXT1 · · · · RDIBUF ·
      · FACTVRIC000/ 100 · FA/FBCMPLEV000 · +ZEXT0 · ZEXT1 · FLDQUAD · RDIBUF · · FACTVRIC100/000 .
  • wobei RICA = =1 und RICB = FACTVRIC = 1 sind.
  • 2. Das FA/FBLEV2VAL-Signal wird dazu herangezogen, den Zustand einer zweiten gültigen Bitposition des RICA/RICB- Befehlsregisters festzulegen. Dieses Flipflop wird auf einen T-Taktimpuls hin entsprechend folgenden Boolschen Ausdrücken gesetzt bzw. zurückgesetzt.
    • a. FA/FBLEV2VALSET = DECODEIF2 · · · FACTVRIC000/100 · + DECODEIF1 · FFPIMEIS · ·
      · FACTVRIC000/100 · EISIF2.
    • b. FA/FBLLV2VALRESET = DECODEIF1 · · ·
      · FACTVRIC100/000 + DECODELDQUAD · ·
      · FACTVRIC100/000 + ZEXT0 · ZEXT1 · ·
      · · FA/FBCURLEV · FACTVRIC000/100 · RDIBUF · · .
  • wobei RICA = = 1 und RICB = FACTVRIC = 1 sind.
  • 3. Die Signale ZIB0 und ZIB1 steuern den ZIB-Schalter für Befehlstransfers von dem Cachespeicher 750 zu dem Prozessor 700 über die ZIB-Leitungen.
    • a. ZIB0 = IFETCHRDY · PNEWIF1.
    • b. ZIB1 = .
  • 4. Die Signale ZDI0, ZDI1 und ZDI2 steuern den ZDI-Schalter für Befehlstransfers und Datentransfers von dem Cachespeicher 750 zu dem Prozessor 700 hin über die ZDI-Leitungen. Dem Steuersignal ZDI0, welches dem Bit höchster Wertigkeit des 3-Bit-Codes entspricht, kann eine binäre 0 gegeben werden, sofern nicht die Positionen 4 bis 7 für Anzeigezwecke herangezogen werden.
    • a. ZDI1 = DATARECOV + FEBLMISS + RDEVEN.
    • b. ZDI2 = · (HITTOIC + FRDREQ).
  • 5. Die Signale ZICIN0 und ZICIN1 steuern den ZICIN-Schalter, um Adressensignale in die RICA bzw. RICB-Befehlsadressenregister 750-900 bzw. 750-902 zu laden.
    • a. ZICIN0 = ALTCHMD100 · FDFN2HT · .
    • b. ZICIN1 = FDFN1HT · FNEWIF1 + FDFN2HT.
  • 6. Die Signale ENABRIC1 und ENABRIC2 werden dazu herangezogen, das Laden der Register RICA und RICAB freizugeben.
    • a. ENABRIC1 = · FNEWIF1 · · ·
      + FHOLDIF1 · DATARECOV.
    • b. ENABRIC2 = FINHRDY · · DFN2HTwherein = DFN2T · [MEMWRTREQ (ZEXT0 · ZEXT1 · EXECIF2 · + + +
      ) + .
  • 7. Das Signal DATARECOV definiert den Zeitpunkt, zu dem neue Daten in die Register des Prozessors geladen worden sind (z. B. RDI oder RBIR) und zu dem der Prozessor freigegeben ist. Dieses Signal wird durch ein Flipflop des Bereichs 750-1 erzeugt, welches in den Binärzustand 1 gesetzt wird, wenn ein T-Taktimpuls auftritt und eine identische Übereinstimmung zwischen den Adressensignalen, die das Wort bezeichnen, welches für einen Zugriff durch den Prozessor 700 angefordert ist, und den Signalen vorliegt, die das Wort kennzeichnen, welches in die Cachespeichereinheit 750 übertragen wird. Der Vergleich zeigt an, daß die Signale DATA, MIFS2, MIFS3, MIFS1 und DATAODD identisch sind mit den Signalen FHT, FHOLDTB0, FHOLDTB1, RADR32 bzw. DOUBLEODD, wobei folgende Beziehungen gelten, wobei Signal FHOLDTB0 = FRDMISS · LDTBVALID · · FTBPTR0;Signal FHOLDTB1 = FRDMISS · LDTBVALID · · FTBPTR1;
    Signal DOUBLEODD = FEVENODD · FDPFS; und
    Signal DATA = FARDA + FDPFS.
  • 8. Die Signale ZDIN geben den ZDIN-Schalter 750-708 frei.
    • a. ZDIN0 = RDIBUF/ZDI · .
    • b. ZDIN1 = ENABREVN = 0 For LDQUADCMD.
Nunmehr wird der Bereich 750-1 detailliert beschrieben.
In Fig. 7a sind in weiteren Einzelheiten verschiedene Blöcke der Blöcke des Bereichs 750-1 veranschaulicht. Es sei darauf hingewiesen, daß zum Zwecke einer Erleichterung des Verständnisses der vorliegenden Erfindung dieselben Bezugszeichen soweit wie möglich für entsprechende Elemente in Fig. 4 wieder verwendet sind. In vielen Fällen umfaßt ein einzelner in Fig. 4 angedeuteter Block mehrere Gruppen von Schaltungen zur Steuerung ihres Betriebs und/oder zur Erzeugung von zugehörigen Steuersignalen. Deshalb sind einige Blöcke mit den in Frage kommenden Bezugszeichen als Teil der verschiedenen Blöcke des Bereichs 750-1 vorgesehen.
Wie aus den Zeichnungen hervorgeht, sind bestimmte Bereiche des Blockes 750-102 in weiteren Einzelheiten gezeigt. Der Transitblockpuffer 750-102 umfaßt, wie dargestellt, eine erste Gruppe von Schaltungen, die Datenwörter bereithalten, die aus dem Speicher auf das Auftreten eines Vierer-Lesebefehls hin aufgenommen worden sind. Diese Schaltungen umfassen eine Vielzahl von taktgesteuerten Paaren von Zähl-Flipflops, welche ein Vier-Bit-Register 750-10200, eine Multiplexerschaltung 750-10202, eine Vielzahl von NAND-Gliedern 750-10204 bis 750-10210 und eine Decoderschaltung 750-10212 bilden. Es sei darauf hingewiesen, daß ein Zähl-Flipfloppaar für jede Transit-Pufferstelle vorgesehen ist.
Darüber hinaus umfaßt die erste Gruppe von Schaltungen eine Vielzahl von taktgesteuerten Transitblock-Gültigkeits- Flipflops, die ein 4-Bit-Register 750-10214 bilden. Die 1-Ausgänge der Flipflops sind jeweils mit einem entsprechenden Flipflop der vier Paare von Zähl- Flipflops verbunden, wie dies dargestellt ist.
In Abhängigkeit vom Auftreten eines Viererlesebefehls hin wird ein erstes Paar von Wörtern an den Cachespeicher 750 ausgesendet. Darauf folgt eine Lücke, und dann wird ein zweites Paar von Wörtern an den Cachespeicher 750 ausgesendet. Auf das dem Transitblockpufferplatz zugehörige Paar von Zählflipflops wird dadurch Bezug genommen, daß eine Spezifizierung durch die Zustände der Signale MIFS2110 und MIFS3110 erfolgt, wobei dieses Flipflop dann in den Binärzustand 1 über ein erstes UND-Glied mit Auftreten des T-Taktsignals CLKT022 hin gesetzt wird, wenn das Signal DATAODD100 durch die Schaltungen des Blocks 750-114 als Binärsignal 1 abgegeben wird. Das RESETTBV100-Signal ist zunächst ein Binärsignal 0, und die Decoderschaltung 750-10212 gibt eines der ersten vier Ausgangssignale SETPC0100 bis SETPC3100 in Übereinstimmung mit den Zuständen der Signale MIFS2110 und MIFS3110 von dem Schalter 750-128 ab.
Das Paar-Zähl-Flipflop wird im Binärzustand 1 über das andere eingangsseitige UND-Glied gehalten, und zwar durch ein Transit-Block-Gültigkeitssignal, welches als Binärsignal 1 auftritt. Das zugehörige eine Flipflop der Transit-Block-Gültigkeitsbit-Flipflops, welches durch die Decoderschaltung 750-10601 bezeichnet ist (das sind die Signale IN0100 bis IN3100), wird über ein erstes UND-Glied dann in den Binärzustand 1 gesetzt, wenn eine Umschaltung erfolgt, um das Signal INCTBIN100 auf das Auftreten eines T-Taktsignals CLKT022 hin in ein Binärsignal 1 zu überführen.
Die Multiplexerschaltung 750-10202 wählt in Übereinstimmung mit den Zuständen der Signale DMIFS2100 und DMIFS3100 von dem Schalter 750-128 das in Frage kommende Binärsignal 1 der vier Paar-Zählflipflops aus, um es an das NAND-Glied 750-10204 abzugeben. Dadurch gibt das NAND-Glied 750-10204 das Signal LASTODD100 als Binärsignal 0 ab. Dies führt dazu, daß das NAND- Glied 750-10206 das Signal LASTDTAODD000 als Binärsignal 1 abgibt.
Wenn das nächste Paar von Datenwörtern aufgenommen wird, veranlaßt dies das NAND-Glied 750-10206, das Signal LASTDTAODD000 als Binärsignal 0 abzugeben. Dies wiederum veranlaßt das NAND-Glied 750-10210, das Rücksetzsignal RESETTBV1100 als Binärsignal 1 abzugeben. Die Decoderschaltung 750-10212 wird durch das Signal RESETTBV100 veranlaßt, an einem der vier Ausgangsanschlüsse 4 bis 7 ein Binärsignal 1 abzugeben. Dadurch wird wiederum das in Frage kommende eine Flipflop der Transitblock-Gültigkeitsbit- Flipflops über das andere UND-Glied zurückgesetzt. Sobald das TB-Gültigkeits-Flipflop zurückgesetzt ist, setzt es das ihm zugehörige Paar-Zähl-Flipflop über sein anderes UND-Glied zurück. Es dürfte einzusehen sein, daß eine derartige Umschaltung auf das Auftreten des T-Taktsignals CLKT022 hin erfolgt.
Wie aus Fig. 7a ersichtlich ist, umfaßt die erste Gruppe der Schaltungen des Blocks 750-102 ferner eine Vielzahl von NAND-Gliedern 750-10216 bis 750-10222, deren jedes so geschaltet ist, daß es ein anderes Ausgangs-Binärsignal 1 von dem Register 750-10214 her aufnimmt. Die binären 1-Ausgangssignale FTBV0100 bis FTBV3100 werden ferner den Steuereingangsanschlüssen der Transitblock- Adressenvergleicherschaltungen 750-132 bis 750-136 zugeführt.
Die NAND-Glieder 750-10216 bis 750-10222 sind ferner so geschaltet, daß sie jeweils ein anderes Signal der Signale IN0100 bis IN3100 von der Decoderschaltung 750-10601 her aufnehmen. Die Ausgangssignale dieser Verknüpfungsglieder werden einem UND-Glied 750-10244 zugeführt. Die Signale VALID000 bis VALID3000 werden dazu herangezogen, eine Anzeige dann zu liefern, wenn ein Transitblock- Registerplatz für einen Schreibvorgang verfügbar ist. Dies bedeutet, daß dann, wenn ein ausgewähltes Transitblock- Gültigkeitsbit-Flipflop sich im Rücksetzzustand befindet, das UND-Glied 750-10224 das Signal VALIDIN000 als Binärsignal 1 aufrechterhält.
Durch das VALIDIN000-Signal wird ein weiteres UND/NAND- Glied 750-10226 veranlaßt, ein Steuersignal RTB100 als Binärsignal 1 während der zweiten Hälfte eines Betriebszyklus (das ist das Signal FHT020 als Binärsignal 1) im Falle eines Lesebefehls (was bedeutet, daß das Signal DREQREAD100 als Binärsignal 1 auftritt) zu dem Zeitpunkt abzugeben, zu dem eine Adreßlistenzuteilung nicht vorgenommen wird (das heißt, daß das Signal FLDTBVALID000 als Binärsignal 1 auftritt).
Wie aus Fig. 7a hervorgeht, wird das Steuersignal RTB100 über eine Treiberschaltung 750-10228 an eine Decoderschaltung 750-10230 abgegeben. Das Steuersignal RTB110 veranlaßt die Decoderschaltung 750-10230, ein in Frage kommendes Ausgangssignal der Ausgangssignale RTB0100 bis RTB3100 abzugeben, und zwar dasjenige Ausgangssignal, welches durch die Zustände der Signale FTBPTR0100 und FTBPT1100 bezeichnet ist, die über zwei Treiberschaltungen 750-10232 und 750-10234 abgegeben werden. Das betreffende erwähnte Ausgangssignal tritt dann als Binärsignal 1 auf. Dadurch werden wiederum die Bitpositionen 24-31 eines der Transitblock-Registerplätze mit Adressensignalen geladen, die über die RADO-Leitungen 24-31 zugeführt werden. Das Komplementsignal RTB000 wird als Eingangssignal an den Block 750-107 abgegeben, um das Laden der Befehlsschlange 750-107 zu steuern.
Eine zweite Gruppe von Schaltungen des Blocks 750-102 umfaßt, wie dies im einzelnen veranschaulicht ist, den Transitblock-Pufferkennzeichen-Speicherbereich 750-10238 des Puffers 750-102. Dieser Bereich sowie der Bereich des Puffers 750-102 (nicht dargestellt) ist aus einem simultan betriebenen 4×4-Doppel-Lese/Schreib-Speicher. Der Speicher ist ein 16-Bit-Speicher, der in vier Wörter à vier Bits organisiert ist, von denen lediglich drei Bits angedeutet sind. Die Wörter können unabhängig voneinander aus irgendwelchen zwei Speicherplätzen zur gleichen Zeit gelesen werden, zu der eine Information in irgendeinen Speicherplatz eingeschrieben wird. Die Signale FTBPTR0100 und FTBPTR1100 werden an die Schreibadressenanschlüsse abgegeben, während die Leseadressen durch das VCC-Signal freigegeben werden, welches an die Anschlüsse G1 und G2 angelegt wird. Die Y-Bit-Plätze werden in Übereinstimmung mit den Zuständen der Leseadressensignale MIFS3100 und MIFS2100 von dem Schalter 750-128 her ausgewählt. Die Z-Bit-Plätze werden in Übereinstimmung mit den Zuständen der Signale DMIF3100 und DMIF2100 von dem Schalter 750-128 her ausgewählt. Da diese Plätze nicht wichtig sind, werden sie hier nicht weiter erläutert.
Der Speicher kann von herkömmlichem Aufbau sein und beispielsweise die Form der Schaltungen haben, wie sie in der US-PS 40 70 657 angegeben sind. Auf die Aufnahme von Speicherdaten hin wird der Kennzeichenbitinhalt des Transitblockplatzes, der durch die Signale MIFS2100 und MIFS3100 bezeichnet ist, an die Y-Ausgangsanschlüsse abgegeben. Diese Signale werden ihrerseits an die Blöcke 750-102, 750-115 und 750-117 abgegeben, wie dies veranschaulicht ist. Während des Adreßlisten-Zuteilungszyklus für einen Cachespeicher-Leseausweichvorgang werden die Kennzeichenbitpositionen des Transitblockplatzes, die durch die Signale FTBPTR0100 und FTBPTR1100 bezeichnet sind, mit den Signalen FORCEBYP000, FRDQUAD100 und FLDQUAD100 geladen, die durch die Schaltungen der Blöcke 750-5 und 750-114 erzeugt werden.
Aus Fig. 7a geht ferner hervor, daß der Block 750-102 außerdem eine Gruppe von Befehlsaufruf-Kennzeichenschaltungen umfaßt, die der Operation des Transitblockpuffers 750-102 zugehörig sind. Diese Schaltungen umfassen zwei Sätze von Eingangs-UND-Gliedern 750-10240 bis 750-10243 und 750-10250 bis 750-10253, zwei Multiplexer- Auswahlschaltungen 750-10255 und 750-10256, ein IF1-Register und ein IF2-Kennzeichenspeicherregister 750-10258 sowie eine Ausgangs-Multiplexerschaltung 750-10260. Diese Schaltungen sind in der dargestellten Weise angeordnet.
Die binären Ausgangssignale 1 der einzelnen IF1- und IF2-Flipflops werden entsprechenden UND-Gliedern der Reihen der UND-Glieder 750-10240 bis 750-10243 und 750-10250 bis 750-10253 zugeführt. Diese UND-Glieder erhalten außerdem Eingangssignale von den Schaltungen des Blocks 750-106 her zugeführt, die auf das Auftreten der Eingabezeigersignale FTBPTR0000 und FTBPTR1000 erzeugt werden, welche zur Adressierung der verschiedenen Registerplätze innerhalb des Puffers 750-102 herangezogen werden, wie dies oben bereits erwähnt worden ist.
Die Multiplexerschaltung 750-10255 ist so geschaltet, daß sie als Steuereingangssignal das Signal FIF1ASSIGN100 von dem FIF1ASSIGN-Flipflop 750-1418 aufnimmt. Die Multiplexerschaltung 750-10256 ist so geschaltet, daß sie als Steuereingangssignal das Signal FIF2ASSIGN100 von dem FIF2ASSIGN-Flipflop 750-1410 her aufnimmt. Dies ermöglicht das Setzen und/oder Rücksetzen der Flipflops IF1 und IF2 des Registers 750-10258 auf das Auftreten der Signale FIF1ASSIGN100 bzw. FIF2ASSIGN100 hin. Das Umschalten erfolgt auf das Auftreten des T-Taktsignals CLKT022 während des Ladens eines Transitblock-Registerplatzes, wenn das Steuersignal LDTBVALID100 über ein UND-Glied 750-11428 als Binärsignal 1 abgegeben wird.
Es sei darauf hingewiesen, daß das Register 750-10258 einen IF1-Kennzeichenbitplatz und einen IF2-Kennzeichenbitplatz für jeden Transitblock-Registerplatz aufweist. Dies bedeutet, daß das Register Flipflops FIF10, FIF20 bis FIF13, FIF23 für die Transitblock- Registerplätze 0 bis 3 umfaßt. Jedes der binären 1-Ausgangssignale der IF1- und IF2-Kennzeichen-Flipflops wird außerdem unterschiedlichen Eingangsanschlüssen der Ausgangs-Multiplexerschaltung 750-10260 zugeführt. Die Schaltung 750-11450 enthält zwei Bereiche. Dies ermöglicht, die Signale DMIFS2100 und DMIFS3100 an die Steueranschlüsse der Multiplexerschaltung 750-10260 von dem Block 750-128 her abzugeben, um als Ausgangs- bzw. Eingangssignale Signale sowohl von einem IF1-Kennzeichen- Flipflop als auch von einem IF2-Kennzeichen- Flipflop auszuwählen. Das ausgewählte Signalpaar bewirkt seinerseits, daß Kennzeichensignale ZIF1FLG100 und ZIF2FLG100 bereitgestellt werden, die an den Block 750-115 abgegeben werden. Diese Signale werden dazu herangezogen, das Einschreiben einer Speicherinformation in die IBUF1- und IBUF2-Puffer 750-715 bzw. 750-717 zu steuern. Darüber hinaus werden die Komplementärsignale der Ausgangssignale der Multiplexerschaltung 750-10260, die den Signalen ZIF1FLG000 und ZIF2FLG000 entsprechen, zwei Eingangsanschlüssen einer Multibereichs-Vergleicherschaltung 750-110/750-11435 zugeführt.
Es sei darauf hingewiesen, daß der letzte Bereich jeder der Multiplexerschaltungen 750-10255 und 750-10256 in Reihe geschaltet ist, um das Freigabe-Transitblock- Pufferbereitschaftsignal ENABTBRDY100 zu erzeugen, welches an den Block 750-114 abgegeben wird. Wie dargestellt, wird dem "0"-Eingangsanschluß des letzten Bereiches der Multiplexerschaltung 750-10255 eine Spannung VCC zugeführt (die kennzeichnend ist für eine binäre 1), während der "1"-Eingangsanschluß mit Erde bzw. Masse verbunden ist (was kennzeichnend ist für eine binäre 0). Der Ausgangsanschluß des letzten Bereiches der Multiplexerschaltung 750-10255 ist mit dem "0"-Eingangsanschluß des letzten Bereiches der Multiplexerschaltung 750-10256 verbunden, während der "1"-Eingangsanschluß mit Erde bzw. Masse verbunden ist. Die Multiplexerschaltungen 750-10255 und 750-10256 arbeiten in der Weise, daß das Signal ENABTBRDY100 als Binärsignal 1 lediglich nach Beendigung eines Befehlsaufruf-Zuteilungszyklus abgegeben wird, wenn die beiden Signale FIF1ASSIGN100 und FIF2ASSIGN100 als Binärsignale 0 auftreten. Deshalb werden die Signale an den "0"-Eingangsanschlüssen als Ausgangssignale von der Multiplexerschaltung 750-10255 und 750-10256 ausgewählt, was dazu führt, daß das Signal ENABTBRDY100 als Binärsignal 1 abgegeben wird. Dies stellt die unbeabsichtigte Erzeugung des Signals IBUFRDY100 dar, wie dies hier erläutert wird.
Wie aus Fig. 7a hervorgeht, enthalten die Schaltungen des Transitpuffers in dem Zeigerblock 750-106 ein taktgesteuertes 2-Bit-Register 750-10600 und eine Decoderschaltung 750-10601. Dem Register 750-10600 sind ein NAND/UND-Glied 750-10602 und ein zwei Eingänge aufweisendes UND/ODER-Glied 750-10604 zugehörig; diese Verknüpfungsglieder sind in einer Zähleranordnung miteinander verbunden. Dies bedeutet, daß das NAND-Glied 750-10602 auf das Auftreten eines Ladesignals FLDTBVALID111 von dem Block 750-114 her und auf das Auftreten des Signals NOGO020 ein Inkrementierungssignal INCTBIN100 als Binärsignal 1 abgibt. Dadurch wird der in dem Register 750-10600 gespeicherte Adressenwert um 1 inkrementiert bzw. erhöht. Das vergrößerte Signal INCTBIN100 wird an die Schaltungen des Blockes 750-102 abgegeben. Die Bitposition höchster Wertigkeit des Registers 750-10600 wird über das Verknüpfungsglied 750-10604 in den Binärsignal 1 gesetzt, und zwar entweder auf das Auftreten der Signale FTBPTR1000 und/oder auf das Auftreten der Signale FTBPTR1100 und FTBPTR0000 als Binärsignale 1. Die komplementären binären 1-Ausgangssignale der Register-Bitpositionen, die den Signalen FTBPTR0000 und FTBPTR1000 entsprechen, werden durch die Decoderschaltung 750-10601 decodiert. Diese Decoderschaltung 750-10601 gibt auf das Auftreten der Signale FTBPTR0000 und FRTBPTR1000 hin an einem der vier Paare von Ausgangsanschlüssen ein Binärsignal 1 ab. Der Befehlssteuerungs-Schaltungsblock 750-114 enthält ein synchron betriebenes Befehlsaufruf-2-Such-(FIF2SEARCH)- Flipflop 750-11400 vom D-Typ. Das Flipflop 750-11400 wird auf das Auftreten eines T-Taktsignals CLKT020 hin dann in den Binärsignal 1 gesetzt, wenn ein zwei Eingänge aufweisendes UND/ODER-Glied 750-11402 und ein UND- Glied 750-11400 ein Signal SETIF2SEARCH-100 als Binärsignal 1 abgeben. Dies tritt dann auf, wenn entweder ein IF1-Befehl ein sogenannter Treffer ist oder wenn ein IF2-Befehl von dem Prozessor 700 während eines IF1-Zuteilungszyklus aufgenommen ist.Im Falle des Auftretens eines IF1-Befehls ist angenommen, daß kein Haltezustand vorliegt (was bedeutet, daß das Signal HOLDDMEM000 von dem Block 750-117 als Binärsignal 1 auftritt) und daß durch einen Adreßlisten- Suchvorgang ein Treffersignal erzeugt worden ist (d. h., daß das Signal HITOTB100 als Binärsignal 1 auftritt), wodurch angezeigt wird, daß der angeforderte Befehlsblock in dem Cachespeicher 750-300 enthalten ist. Bezüglich eines IF2-Befehls ist angenommen, daß ein Adreßlisten-Zuteilungszyklus vorliegt, dem eine Adreßlistenabsuche folgt, im Zuge derer eine Ausweichung bzw. Verfehlung vorgelegen hat, und zwar auf den IF1-Befehl hin (dies bedeutet, daß das Signal FIF1ASSEGN100 als Binärsignal 1 auftritt). In jeder der erwähnten Situationen gibt das Verknüpfungsglied 750-11402 das Signal SETIF2TIME100 als Binärsignal 1 ab. Wenn der Instruktionsaufrufbefehl durch einen Transfer- oder Verzweigungsbefehl hervorgerufen worden ist, bei dem es sich nicht um einen NOGO-Befehl handelt (was bedeutet, daß das Signal NOGO303 als Binärsignal 1 auftritt), so zeigt dies an, der der IF2-Befehl verarbeitet werden sollte, der gerade an die Befehlsleitungen angelegt ist (d. h., daß eine Anzeige durch das Binärsignal 1 auftretende Signal DREQCAC112 vorliegt). Außerdem gibt das UND-Glied 750-11404 das Signal SETIF2SEARCH100 als Binärsignal 1 ab. Dadurch wird das Flipflop 750-11400 in den Binärzustand 1 umgeschaltet, wenn das Signal CANCEL012 als Binärsignal 1 auftritt.Wie aus Fig. 7a hervorgeht, wird das am Ausgang des Flipflops 750-11400 auftretende Binärsignal 0 als Eingangssignal an die Halteschaltungen des Blocks 750-117 abgegeben. Das Signal FIF2SEARCH000 wird durch eine Pufferschaltung 750-11406 verzögert und dem einen Eingang eines NAND-Gliedes 750-11408 eines Befehls-Aufruf- Zwei-Zuteilungs-(IFIF2ASSIGN)-Flipflops 750-11410 zugeführt.Das Signal FIF2SEARCH010 bewirkt zusammen mit dem Signal EISIF2000 (welches einen Nicht-EIS-Befehl anzeigt), daß das NAND-Glied 750-11408 das FIF2ASSIGN-Flipflop 750-11410 in den Binärzustand 1 auf das Auftreten eines Verknüpfungs- bzw. Tastsignals SETBVALID100 und eines T-Taktsignals CLKT020 umschaltet. Der Zustand dieses Flipflops sowie der übrigen Elemente wird als Ausgangssignal abgegeben, wenn das Signal FLDTBVALID110 ein Binärsignal 1 ist.Es sei darauf hingewiesen, daß das Signal FLTBVALID110 über ein UND-Glied 750-11412, über ein taktgesteuertes Flipflop 750-11414 und über eine Verzögerungspufferschaltung 750-11416 im Falle eines Ausweich- bzw. Verfehlungszustands als Binärsignal 1 abgegeben wird (was bedeutet, daß das Signal HITTOTB010 ein Binärsignal 1 ist). Dieser Zustand wird dabei in Abhängigkeit von einer Adreßlisten- Absuche erzeugt, die bezüglich eines Lesebefehls (z. B. IF2) vorgenommen wird. Dabei ist angenommen, daß kein Haltezustand vorliegt (was bedeutet, daß das Signal HOLDDMEM000 ein Binärsignal 1 ist). Außerdem ist angenommen, daß im Falle eines IF2-Befehls der betreffende Zustand nicht vorhanden war aufgrund eines NOGO-Transfers (was bedeutet, daß das Signal NOGO020 ein Binärsignal 1 ist), und daß keine Löschbedingung vorliegt (was bedeutet, daß das Signal CANCELC010 ein Binärsignal 1 ist), und zwar für eine Leseroperation, die durch die Schaltungen des Blockes 750-113 auf den Lesebefehl hin decodiert wird, der an die Befehlsleitungen angelegt wird (was bedeutet, daß das Signal DREQREAD100 ein Binärsignal 1 ist, wobei DREQREAD100 = READ100 · DREQCAC112 gilt).Unter ähnlichen Bedingungen wird ein Befehlsaufruf-1- Zuteilungs-(FIF1ASSIGN)-Flipflop 750-11418 über ein eingangsseitiges UND-Glied 750-11420 auf das Auftreten eines IF1-Befehls hin in den Binärzustand 1 gesetzt (d. h. dann, wenn das Signal IF1100 ein Binärsignal 1 ist), wobei eine Ausweichung bzw. ein Aussetzen ermittelt wurde (was bedeutet, daß das Signal SETTBVAID100 als Binärsignal 1 auftritt). Das Ladetransitpuffer-Gültigkeits- Flipflop 750-11414 bleibt so lange gesetzt, bis das Signal SETLDTBVALID100 als Binärsignal 0 auftritt. Es sei darauf hingewiesen, daß das binäre 0-Ausgangssignal FLDTBVALID000 an Schaltungen abgegeben wird, die als Teil des Blockes 750-102 vorgesehen sind.Das andere Paar der Flipflops 750-11422 und 750-11424 wird im Falle eines Ausweich- bzw. Aussetzerzustands auf das Auftreten des Signals SETLDTBVALID100 hin gesetzt. Das Lade-Vierer-Flipflop 750-11524 wird dann in den Binärzustand 1 gesetzt, wenn der an die DMEM- Befehlsleitungen abgegebene Befehl als LDQUAD-Befehl decodiert wird (was bedeutet, daß das Signal LDQUAD100 von dem Decoder 750-113 her ein Binärsignal 1 ist) und daß der an die ZADOB-Leitungen abgegebene ZAC-Befehl derart codiert ist, daß er eine Lese-Vierer-Operation erfordert (was bedeutet, daß die durch das Signal ZADOBO4100 spezifizierten Befehle IF1, IF2, LDQUAD, PRERD und RDSNGLE als Binärsignale 1 gesetzt auftreten).Das RDQUAD-Flipflop 750-11422 wird über ein UND-Glied 750-11426 dann in den Binärzustand 1 gesetzt, wenn ein Signal CQIN1100 von den in dem Befehlsschlangenblock 750-107 enthaltenen Schaltungen her ein Binärsignal 1 ist, wodurch ein Befehl doppelter Genauigkeit gekennzeichnet ist (was bedeutet, daß das Signal ZADOBO2100 ein Binärsignal 1 ist).Aus Fig. 7a geht hervor, daß der Block 750-114 ferner eine Vergleicherschaltung 750-11435 umfaßt. Diese Schaltung kann als in herkömmlicher Weise ausgeführt betrachtet werden; sie kann beispielsweise die Form von Schaltungen besitzen, wie sie in der US-PS 39 55 177 angegeben sind.Die Vergleicherschaltung 750-11435 wird durch Signale USETBRDY100 und DATA100 freigegeben. Das Signal USETBPDY100 zeigt an, daß der Cachespeicher auf Befehle wartet, die aus dem Speicher in die Puffer IBUF1 oder IBUF2 zu laden sind. Das Signal DATA100 wird von einem NAND-Glied 750-11436 als Binärsignal 1 abgegeben, was kennzeichnend ist für die Aufnahme einer Information aus dem Speicher. Die Vergleicherschaltung umfaßt zwei Bereiche. Der eine Bereich vergleicht die Befehlsschlangen- Eingangszeigersignale und die Ausgangszeigersignale von den Blöcken 750-108 bzw. 750-109. Dieser Bereich gibt die Signale CQCMP100 und CQBMP000 als Binärsignale 1 bzw. als Binärsignal 0 dann ab, wenn die Zeigersignale gleich sind. Der Bereich entspricht dem Block 750-110 in Fig. 4.Der andere Bereich vergleicht die Eingangssignale an den Anschlüssen A1, A2 und B1, B2 - wobei die Steuersignale ZRIB100, ZIB010 den Eingangsanschlüssen A1, A2 zugeführt werden - mit den Zuständen der I-Abruf-1- und I-Abruf-2-Kennzeichensignale ZIF1FLG000, ZIF2FLG000, die an die Anschlüsse B1, B2 angelegt werden. Wenn Gleichheit vorliegt, zeigt dies an, daß die Information aus dem Speicher zu diesem Zeitpunkt entweder auf einen I-Abruf-1- oder auf einen I-Abruf-2-Befehl hin ausgenommen wird bzw. worden ist. Es sei darauf hingewiesen, daß das Steuersignal ZRIB100 den ZRIB-Schalter 750-720 steuert.An den Eingangsanschlüssen A4, A8 werden die Signale ZEXT0100, ZEXT100 mit den Signalen MIFS1100 und DATAODD100 verglichen, die an die Anschlüsse B4, B8 angelegt werden. Dadurch wird angezeigt, ob die innerhalb des Befehlspuffers adressierte Information gleich der empfangenen Information ist. Dabei werden insbesondere die Signale ZEXT0100 und ZEXT1100 durch die Schaltungen des Blockes 750-920 von der die beiden Bits niedrigster Wertigkeit umfassenden Adresse des in dem RIRA-Register gespeicherten Befehls erzeugt. Damit wird die Wortspeicherstelle spezifiziert, die innerhalb des I-Puffers adressiert ist. Das Signal MIFS1100 ist so codiert, daß festgelegt wird, ob die erste Hälfte oder die zweite Hälfte des Blockes für die Aufnahme dient. Das Signal DATAODD100 legt fest, ob das erste Wort oder das zweite Wort der ersten 2-Wort-Paare aufgenommen wird. Das Signal DATAODD100 wird durch das UND-Glied 750-11437 erzeugt.Schließlich vergleicht die Vergleicherschaltung 750-11435 ein Signal ENABTBRDY100, welches dem Anschluß A16 von dem Block 750-102 her zugeführt wird, mit der Spannung VCC, die kennzeichnend ist für eine binäre 1 und die dem Anschluß B16 zugeführt wird. Bei Vorliegen einer tatsächlichen Übereinstimmung zwischen den beiden Reihen von sämtlichen sechs Signalen gibt die Schaltung 750-11435 ausgangsseitig ein Binärsignal 1 ab. Dies führt dazu, daß am komplementären Ausgangsanschluß das Signal IBUFCMPR000 als Binärsignal 0 auftritt. Dadurch wird der Block 750-722 veranlaßt, das IBUFRDY100-Signal als Binärsignal 1 abzugeben.Darüber hinaus umfaßt der Bereich 750-114 ein UND- Glied 750-11417. Während der ersten Hälfte eines Cachespeicher- Zyklus (das heißt bei Auftreten des Signals FHT120 von der Verzögerungsschaltung 750-11810 als Binärsignal 1) wird dann, wenn das FLDTBVALID-Flipflop 750-11414 im Binärzustand 1 ist, das UND-Glied 750-11417 das Steuersignal RTB 5-8100 als Binärsignal 1 abgeben. Dieses Signal wird als Taktabtast-Eingangssignal dem Ebenen-Speicherbereich des Transitblockpuffers 750-102 zugeführt. Dieser Bereich ist aus einem simultan betriebenen 4×4-Doppel-Lese/Schreib- 16-Bit-Speicher aufgebaut, der in vier Wörtern mit einer Länge von vier Bits ähnlich der Speichereinrichtung des Blockes 750-10238 organisiert ist und ähnlich den Speichereinrichtungen, die für den Aufbau des 36-Bit-Lesebefehls-Pufferbereichs des Blocks 750-102 sowie des Schreibbefehls/Datenpuffers 750-100 verwendet sind.Gemäß Fig. 7a ist ferner eine weitere Vergleicherschaltung 750-11437 vorgesehen. Diese Vergleicherschaltung ist so geschaltet, daß sie freigegeben ist, wenn die Signale DATA100 und VCC als Binärsignale 1 auftreten. Das Spannungssignal VCC, welches dem A1-Anschluß zugeführt wird, wird mit dem Zustand des Lade- Vierer-Kennzeichensignals RLDQUADFLG100 verglichen, welches aus dem Speicher 750-10238 ausgelesen und an den B1-Anschluß abgegeben wird. Die Leseadressensignale ZEXT0100 und ZEXT1100 von der Einrichtung 750-900 her werden den Anschlüssen A2 bzw. A3 zugeführt und mit den Signalen MIFS1100 und DATAODD100 verglichen, die an die Anschlüsse B2 bzw. B3 abgegeben werden. Wenn eine tatsächliche Übereinstimmung zwischen den beiden Reihen von Signalen vorhanden ist, gibt die Schaltung 750-11547 das Signal LQCMPR000 als Binärsignal 0 ab.In Fig. 7a ist veranschaulicht, daß der Datenaufnahme- und Steuerblock 750-115 eine Vielzahl von NAND-Gliedern 750-11500 bis 750-11510 und eine Vielzahl von UND-Gliedern 750-11511 bis 750-11514 enthält, die in der gezeigten Weise angeschlossen bzw. miteinander verbunden sind, um die Steuerabtast-Freigabesignale LQBUF100, IBUF1100 und IBUF2100 sowie das Rücksetz- Puffersignal RESETBUF100 und das Schreibsteuer-Puffersignal WRTBUF0100 zu erzeugen. Diese Signale werden dazu herangezogen, den Betrieb der Pufferschaltungen des Bereichs 750-7 zu steuern. Wie aus Fig. 7a hervorgeht, wird das andere Schreibsteuer-Puffersignal WRTBUF1100 von einer Pufferverzögerungsschaltung 750-11515 auf das Auftreten des Signals FARDA010 hin erzeugt. Das Signal WRTBUF0100 wird vom Ausgang der zwei Eingänge aufweisenden Datenwähler/Multiplexerschaltung 750-128 abgeleitet, die entweder das Signal RMIFS1100 von dem Register 750-127 oder das Signal RMIFSB1100 von dem Register 750-129 auswählt. Die Auswahl erfolgt in Übereinstimmung mit dem Zustand des FARADA000-Signals, das auf der Annahmeleitung ARDA der Datenschnittstellenschaltung 600 erzeugt wird. Die Multiplexerschaltung 750-128 erzeugt in Übereinstimmung mit dem Zustand des Signals FSARDA000 die beiden Reihen von Signalen MIFS2100, MIFS3100 und DMIFS2100, DMIFS3100, die an die Leseadresseneingänge des Puffers 750-102 angelegt werden.Es sei darauf hingewiesen, daß der Bereich bzw. Abschnitt 750-115 ferner ein Flipflop 750-11517 vom D-Typ für doppelte Genauigkeit (FDPFSX) enthält, welches auf das Auftreten eines Taktsignals CLKT020 hin über ein erstes eingangsseitiges UND-Glied in den Binärzustand 1 gesetzt wird, und zwar in Übereinstimmung mit dem Zustand des Signals PTXDPFS100, welches dem betreffenden UND-Glied über eine Verstärkerschaltung 750-11518 von der DPFS- Leitung durch die Systemschnittstelleneinheit 100 zugeführt wird. Die DPFS-Leitung zeigt im Setzzustand an, daß zwei Datenwörter von der Systemschnittstelleneinheit 100 her ausgesendet worden sind. Das Umschalten erfolgt, wenn die Systemschnittstelleneinheit 100 das Signal PTXARDA100, welches ihr über eine Verstärkerschaltung 750-11519 von der ARDA-Leitung der Schnittstelleneinheit 600 her zugeführt worden ist, als Binärsignal 1 abgibt. Die ARDA-Leitung zeigt an, daß die von dem Cachespeicher 750 angeforderten Lesedaten auf den DFS-Leitungen von der Systemschnittstelleneinheit 100 vorhanden sind. Das Ausgangssignal eines FARDA-Flipflops (nicht gezeigt), welches das Signal ARDA um eine Taktperiode verzögert, wird einem zweiten Halt- UND-Glied zusammen mit dem Signal FDPFSX100 zugeführt. Das FDPFSX-Flipflop 750-11517 bleibt für zwei Taktperioden gesetzt. Dies bedeutet, daß das Flipflop 750-11517 in Übereinstimmung mit der Anzahl der Reaktionen bzw. Antwortsignale (DPFS-Signale) der Systemschnittstelleneinheit gesetzt ist. Im Falle eines Einzellesebefehls erzeugt die Systemschnittstelleneinheit zwei Antwortsignale, deren jedes ein Paar von Wörtern einbringt. In jedem Fall ermöglicht dies das Einschreiben der beiden Wörter in den Cachespeicher, wenn das Signal RWRCACFLG100 als Binärsignal 1 auftritt.Das binäre 0-Ausgangssingal des Flipflops 750-11517 wird durch ein NAND/UND-Glied 750-11521 invertiert und durch eine Pufferverzögerungsschaltung 750-11522 verzögert, bevor es an das UND-Glied 750-11512 abgegeben wird. Dasselbe binäre 0-Ausgangssignal wird ohne Invertierung mittels einer Pufferverzögerungsschaltung 750-11523 verzögert und an Schaltungen abgegeben, welche die Zustände der Bitstellen eines Transitpuffer-Gültigkeitsbit- Registers zurücksetzen, welches einen Teil des Transitpuffers 750-102 darstellt.Es sei ferner darauf hingewiesen, daß das einer doppelten Genauigkeit dienenden Signals FDPF110 in einem UND-Glied 750-11524 mit einem Schreib-Cachespeicher- Kennzeichnungssignal RWRTCACFLG100 von dem Transitblockpuffer- Kennzeichenspeicherteil des Puffers 750-102 verknüpft wird. Das UND-Glied 750-1152 erzeugt ein Speicher-Schreibanforderungssignal MEMERTREQ100, welches an den Bereich bzw. Abschnitt 750-9 abgegeben wird, um das Einschreiben von Speicherdaten in den Cachespeicher freizugeben (d. h. die Adressenschalter-Auswahl zu steuern.).Wie aus Fig. 7a hervorgeht enthält der Auslöse-Anforderungssteuerschaltungsblock 750-116 ein aktives Ausgangsanschluß-Anforderungs-Flipflop 750-11600. Dieses Flipflop ist ein taktgesteuertes Flipflop vom D-Typ, welches zwei eingangsseitige UND/ODER-Verknüpfungsschaltungen enthält. Das Flipflop 750-11600 wird auf das Auftreten des Taktsignals CLKT020 hin dann in den Binärzustand 1 gesetzt, wenn der Block 750-114 zwei Signale ENABSETAOPR100 und SETAOPR100 als Binärsignale 1 abgibt. Wenn dieses Flipflop in den Binärzustand 1 gesetzt ist, führt dies wiederum dazu, daß die AOPR-Leitung der Schnittstelleneinrichtung 600 eingestellt wird, wodurch der Systemschnittstelleneinheit 100 eine Datentransferanforderung signalisiert wird. Das Binärsignal 0 des Flipflops 750-11600 wird mittels einer Inverterschaltung 750-11602 invertiert, mittels einer Verzögerungspufferschaltung 750-11604 verzögert und einem Halte-UND-Glied zugeführt. Das Flipflop 750-11600 bleibt so lange gesetzt, bis zum Taktzeitpunkt das Signal FARA020 in ein Binärsignal 0 umschaltet. Dadurch wird angezeigt, daß die Systemschnittstelleneinheit 100 die Cachespeicheranforderung angenommen hat.Der Haltesteuerblock 750-117 umfaßt, wie dargestellt, ein Sperr-Transitpuffer-Trenner-FINHTBHIT-Flipflop 750-11700, ein UND-Glied 750-11702 und eine Vielzahl von UND/NAND-Giedern 750-11704 bis 750-11716. Das Flipflop 750-11700 wird über ein erstes eingangsseitiges UND-Glied und ein NAND-Glied 750-11704 auf das Auftreten eines T-Taktsignals CLKT020 hin dann in den Binärzustand 1 gesetzt, wenn die Signale INHTBHIT100 und TBHIT100 als Binärsignale 1 auftreten. Das NAND- Glied 750-11701 gibt das Signal INHTBHIT100 als Binärsignal 1 im Falle einer Löschbedingung ab (was bedeutet, daß das Signal CANCELC012 als Binärsignal 0 auftritt).Von der komplementären Ausgangsseite des Flipflops 750-11700 wird das Signal FINHTBHIT000 als ein Eingangssignal an das UND-Glied 750-11702 abgegeben. Ein Adreßlisten- Belegtsignal DIRBUSY000 von dem Block 750-526 wird dem anderen Eingang des UND-Gliedes 750-11702 zugeführt. Wenn die Adreßliste keinen Suchvorgang ausführt (d. h., daß das Signal DIRBUSY000 ein Binärsignal 1 ist) und wenn das Signal INHTBHIT100 ein Binärsignal 1 ist, dann gibt das UND-Glied 750-11702 das Signal INHTBACMP000 als Binärsignal 1 ab. Dies bewirkt, daß das Verknüpfungsglied 750-11704 das Signal TBHIT100 als Binärsignal 1 abgibt, wenn das UND-Glied 750-136 ein Transitblock-Adressenvergleichssignals TBACMP100 als Binärsignal 1 abgibt. Zugleich gibt das Verknüpfungsglied 750-11704 das Signal TBHIT000 als Binärsignal 0 ab.Die UND/NAND-Glieder 750-11708 bis 750-117110 erzeugen die Signale CPSTOP000 bis CPSTOP003, die dem Prozessor 700 zugeführt werden, um das Vorliegen eines Haltezustands anzuzeigen. Die anderen UND/NAND-Glieder 750-11714 bis 750-11716 erzeugen die Signale HOLDDMEM000 bis HOLDDMEM003, um einen internen Haltezustand anzugeben, durch den die anderen Bereiche bzw. Abschnitte des Cachespeichers 750 daran gehindert werden, den Befehl auszuführen, der von dem Prozessor 700 an die Befehlsleitungen abgegeben ist. Wenn ein Haltebefehlszustand (d. h., daß das Signal HOLDCMD000 als Binärsignal 0 auftritt), ein Ausweich- oder Ausfallzustand (was bedeutet, daß das Signal FRDMISS020 als Binärsignal 0 auftritt), ein Halte- Viererzustand von dem Block 750-916 (was bedeutet, daß das Signal HOLDLDQUAD000 als Binärsignal 0 auftritt) oder ein Transitblock-Trefferzustand vorliegt (was bedeutet, daß das Signal TBHIT000 als Binärsignal 0 auftritt), dann geben die Verknüpfungsglieder 750-11708 bis 750-11710 ihre Ausgangssignale CPSTOP003 bis CPSTOP000 als Binärsignale 0 und die Signale CPSTOP103 bis CPSTOP100 als Binärsignale 1 ab. Dadurch wird der Prozessor 700 veranlaßt, den Betrieb anzuhalten.Unter entsprechenden Bedingungen wird zusätzlich zu einem Haltesuchzustand (d. h. dann, wenn das Signal HOLDSEARCH000 ein Binärsignal 0 ist), wie dies durch das UND-Glied 750-11712 angezeigt wird, das Signal EARLYHOLD000 als Binärsignal 0 abgegeben, oder in einem Halte-Cachespeicherzustand (d. h., daß das Signal HOLDCCU000 als Binärsignal 0 auftritt) geben die Verknüpfungsglieder 750-11714 bis 750-11716 ihre Ausgangssignale HOLDDMEM000 bis HOLDDMEM003 als Binärsignale 0 ab, während die Signale HOLDDMEM100 bis HOLDMEM103 als Binärsignale 1 auftreten.Aus den Zeichnungen geht hervor, daß die Zeitsteuerschaltungen des Blockes 750-118 ein synchron betriebenes Flipflop 750-11800 vom D-Typ mit zwei UND/ODER-Eingangsschaltungen umfassen. Das Flipflop 750-11800 nimmt das 1/2-T-Taktsignal CLKHT100 über das Verknüpfungsglied 750-11802 und die Inverterschaltung 750-11804 auf. Ein Begrenzungs-T-Taktsignal DEFTCLK110 wird einem der Dateneingänge über zwei Verzögerungspufferschaltungen 750-11806 und 750-11808 zugeführt. Jede Pufferschaltung bringt eine minimale Verzögerung von 5 ns mit sich.Die beiden Signale CLKHT100 und DEFTCLK110 werden durch die gemeinsame Takt- bzw. Zeitsteuersignalquelle erzeugt. Auf das Auftreten dieser Signale hin schaltet das Halt- T-Flipflop 750-11800 in den Binärzustand 1 um, und zwar auf die Rückflanke des DEFTCLK110-Signals hin. Das betreffende Flipflop schaltet in den Binärzustand 1 auf das Auftreten des nächsten CLKHT100-Signals hin um (an der Rückflanke).Die Signale FHT100 und FHT000 werden zusätzlich zu den Signalen FHT120, FHT010 und FHT020, die von den Ausgangsanschlüssen 1 und 0 des Flipflops 750-11800 abgeleitet sind, an die übrigen Schaltungen des Bereichs 750-1 sowie an die übrigen Bereiche (das sind die Bereiche 750-5, 750-9 und 750-114) verteilt. Die Signale FHT120, FHT020 und FHT010 werden über ein weiteres Paar von Verzögerungspufferschaltungen 750-11810 und 750-11812 sowie über eine Treiberschaltung 750-11814 verteilt.Die T-Taktsignale, wie die Taktsignale CLKT020 und CLKT022, die von der gemeinsamen Zeitsteuersignalquelle erzeugt werden, werden in ihrer "Ursprungs"- Form auf die verschiedenen Flipflops der Register verteilt. Wenn eine Forderung dahingehend existiert, ein 1/2-T-Taktsignal zu erzeugen, dann wird das 1/2-T-Taktsignal CLKHT020 mit dem 1/2-T-Begrenzungssignal (FHT100) zum Eingang des Flipflops oder Registers hin geleitet. Der Zustand des Signals FHT100 wird dazu herangezogen, die ersten und zweiten Hälften eines T-Zyklus festzulegen. Wenn das Signal FHT100 ein Binärsignal 1 ist, dann legt dies ein Zeitintervall entsprechend der ersten Hälfte eines T-Taktzyklus fest. Wenn demgegenüber das Signal FHT100 ein Binärsignal 0 ist, dann legt dies ein Zeitintervall entsprechend der zweiten Hälfte eines T-Taktzyklus fest.Im Rahmen der vorliegenden Erfindung können die Datenwiedergewinnungsschaltungen als in herkömmlicher Weise ausgeführt angesehen werden; sie können beispielsweise die Form der Schaltungen haben, die in den angegebenen Literaturstellen beschrieben sind. Diese Schaltungen erzeugen ein Datenwiedergewinnungssignal zur Abgabe an den Prozessor 700 durch undmäßiges Verknüpfen des 1/2-T-Taktsignals FHT000 mit einem Signal, welches kennzeichnend ist dafür, daß Daten in die Prozessor- Register getastet werde. Dadurch wird das Datenwiedergewinnungssignal lediglich während der zweiten Hälfte eines T-Taktzyklus erzeugt, wenn derartige Daten in die Prozessor-Register getastet sind. Im Falle der Abschnitte bzw. Bereiche 750-5 und 750-9 wird das Signal FHT100 dazu herangezogen, das Umschalten der anderen Zeitsteuerungs- und Steuer-Flipflops zu steuern, wie dies erläutert wird.Nunmehr sei der Bereich 750-3 näher erläutert. In Fig. 7b sind spezielle Blöcke der Blöcke des Bereichs 750-3 näher veranschaulicht. Dabei sind so weit wie möglich entsprechende Bezugszeichen verwendet worden.Aus Fig. 7b geht hervor, daß die Decoderschaltungen des Blockes 750-303 eine Decoderschaltung 750-30300 enthalten, die für den Betrieb durch das Signal ENBMEMLEV100 von den Schaltungen des Blockes 750-920 her freigegeben wird. Die Signale von den nichtinvertierenden Ausgangsanschlüssen der Decoderschaltung 750-30300 werden an die Eingangsanschlüsse einer ersten Multiplexerschaltung 750-30302 abgegeben. Die an den invertierenden Ausgangsanschlüssen auftretenden Signale werden an die Eingangsanschlüsse einer zweiten Multiplexerschaltung 750-30304 abgegeben. Die Multiplexerschaltung 750-30302 ist für den Betrieb stets freigegeben, während die Multiplexerschaltung 750-30304 lediglich dann freigegeben ist, wenn das Signal ENBADR1100 durch die Schaltungen des Blockes 750-920 als Binärsignal 1 abgegeben wird. Es sei angenommen, daß die "0"-Stellungen beider Multiplexerschaltungen stets ausgewählt werden.Bestimmte Kombinationen der beiden Reihen von Steuersignalen ZADR01100 bis ZADR71100 und der Signale ZADR00100 bis ZADR70100 werden an die Steuereingangsanschlüsse jedes der acht Crossbar-Adressenauswahlschalter 750-302 a bis 750-302 b abgegeben. Dabei ist ersichtlich, daß jeder Crossbar-Schalter eine Anzahl von Abschnitten bzw. Bereichen aufweist, deren jeder drei Teile umfaßt, die durch voll ausgezogene Linien zwischen den betreffenden Bereichen angedeutet sind. Der Einfachheit halber ist die Anzahl der Bereiche je Schalter zusammen dargestellt. Der Einfachheit halber ist außerdem der Steuerbereich jedes Abschnittes bzw. Bereiches lediglich einmal dargestellt, da er für sämtliche Abschnitte bzw. Bereiche gleich ist, die erforderlich sind, um den Schalter zu bilden.Wie aus der vorliegenden Zeichnung hervorgeht, werden in Abhängigkeit von den Zuständen der Paare der Steuersignale ZADR00100, ZADR01100 bis ZADR70100, ZADR71100 die Signale von einer der drei Quellen an jede Reihe der Anschlüsse W, X, Y und Z gleichzeitig abgegeben.Nunmehr sei der Bereich 750-5 näher erläutert. In Fig. 7c sind spezielle Blöcke der Blöcke des Bereichs 750-5 im einzelnen gezeigt. Dabei sind so weit wie möglich entsprechende Bezugszeichen verwendet.Aus Fig. 7c ist dabei ersichtlich, daß die Adreßlisten- Treffer/Fehler-Steuerschaltungen des Blockes 750-512 ein Codiernetzwerk enthalten, welches aus einer Vielzahl von NAND-Glieder 750-51200 bis 750-51220 und aus einer Vielzahl von Verstärkerschaltungen 750-51224 bis 750-21228 besteht. Die NAND-Verknüpfungsschaltungen sind so gestaltet, daß die Reihe der Signale ZFE1100 bis ZFE7100 von dem Block 750-506 her und die Reihe der Signale ZHT1100 bis ZHT7100 von den Blöcken 750-640 bis 750-552 her in den 3-Bit-Code codiert werden, der zur Steuerung des Betriebs des Schalters 750-306 dient.Das Signal GSRCH100 wird durch die Schaltungen des Blockes 750-526 erzeugt. Wie erläutert, wird dieses Signal lediglich während der zweiten Hälfte eines T-Taktzyklus als Binärsignal 1 abgegeben. Damit wird ein Ausgangssignal von einem der NAND-Glieder 750-51200 bis 750-51208 lediglich während dieses Intervalls erzeugt. Dabei bewirkt insbesondere das durch den Zustand des Voll/Leer-Bits festgelegte Treffersignal, daß eines der Signale ZCDLEV1000 bis ZCDLEV7000 als Binärsignal 0 abgegeben wird. Dadurch werden wiederum die NAND-Glieder 750-51216 bis 750-51220 in den Stand versetzt, den in Frage kommenden 3-Bit-Code zu erzeugen.Das Signal ZCDICENAB100, welches ebenfalls durch die Schaltungen des Blockes 750-526 erzeugt wird, wird als Binärsignal 1 lediglich während der ersten Hälfte eines T-Taktzyklus auftreten. Damit werden die Ausgangssignale von den NAND-Gliedern 750-51210 bis 750-51214 lediglich während dieses Intervalls erzeugt. Dies bedeutet, daß die Instruktions- bzw. Befehlsadressen-Ebenensignale ZNICLEV0100 bis ZNICLEV2100 von dem Block 750-910 her die Signale ICL0000 bis ICL2000 erzeugen, die ihrerseits die Signale ZCD0100 bis ZCD2100 erzeugen. Es sei darauf hingewiesen, daß die Signale ZCD0100 bis ZCD2100 den Signalen ZNICLEV0100 bis ZNICLEV2100 entsprechen.Die Signale RDDBLL0000 bis RDDBLL2000 werden dazu herangezogen, den zweiten Betriebszyklus für einen Lesedoppelbefehl zu definieren. Wenn irgendeines der Signale RDDBLL0000 bis RDDBLL2000 als Binärsignal 0 auftritt, dann wird dadurch ein entsprechendes Signal der Signale ZCD0100 bis ZCD2100 als Binärsignal 1 auftreten.Die Signale ZCD0100 bis ZCD2100 werden an unterschiedliche Eingänge entsprechender Verstärkertreiberschaltungen 750-51224 bis 750-51228 abgegeben. Diese Schaltungen geben die Steuersignale ZCD0100 bis ZCD2100 an die Steueranschlüsse des Schalters 750-306 ab.Ein weiterer in Fig. 7c im einzelnen dargestellter Block ist der Block 750-526. Wie bereits erwähnt, enthält der Block 750-526 eine Anzahl von Adreßlisten- Steuerungs-Flipflops. Die Steuerungs-Zustands-Flipflops enthalten, wie dargestellt, das Adreßlisten- Zuteilungs-(FDIRSAN)-Steuerzustands-Flipflop 750-52600 und eine Vielzahl von Zeitsteuerungs-Flipflops eines Registers 750-52610.Das Flipflop 750-52600 ist ein taktgesteuertes D-Flipflop, welches in dem Binärzustand 1 über ein erstes eingangsseitiges UND-Glied im Falle einer Befehlsanforderung (d. h. bei Vorliegen des Signals REQCOMB0100 als Binärsignal 1) bezüglich eines Lesebefehls (d. h. bei Vorliegen des Signals RDTYP100 als Binärsignal 1) gesetzt ist, wenn der Prozessor 700 Daten aus dem Speicher und nicht aus dem Cachespeicher anfordert (d. h., daß das Signal BYPCAC110 ein Binärsignal 1 ist). Bei Fehlen eines Haltezustands (d. h. dann, wenn das Signal HOLD000 als Binärsignal 1 an ein UND-Glied 750-52602 abgegeben wird) sowie bei Vorliegen einer weiterführenden Übertragung (d. h. bei als Binärsignal 1 auftretendem Signal NOGO021) und ohne Vorliegen eines Löschzustands (d. h., daß das Signal CANCELC010 ein Binärsignal 1 ist) und bei Signalisierung einer Anforderung durch den Prozessor 700 (was bedeutet, daß das Signal DREQCAC111 als Binärsignal 1 auftritt) gibt das UND-Glied 750-52604 das Signal REQCOMB0100 als Binärsignal 1 ab.Ein UND-Glied 750-52606 gibt das Signal SETONBYP100 als Binärsignal 1 im Falle eines Lesens ab, wenn die Decoderschaltung 750-528 das Signal RDTYP100 als Binärsignal 1 abgibt und wenn der Prozessor 700 das Umgehungs- Cachespeichersignal BYPCAC110 als Binärsignal 1 abgibt. Das Ergebnis davon ist, daß das FDIRASN-Flipflop 750-52600 in den Binärzustand 1 umschaltet, wodurch ein Adreßlisten-Zuteilungsbetriebszyklus bezeichnet ist. Das Flipflop 750-52600 wird außerdem über ein zweites eingangsseitiges UND-Glied im Falle einer Befehlsanforderung in den Binärzustand 1 gesetzt (d. h., daß dann das Signal REQCOMB0100 als Binärsignal 1 auftritt), und zwar dann, wenn ein Ausweich- bzw. Fehl-Zustand bezüglich des Blockes ermittelt worden ist, den zu lesen angefordert ist (was bedeutet, daß das Signal SETONMISS100 als Binärsignal 1 auftritt). Das Signal SETONMISS100 wird als Binärsignal 1 von dem UND-Glied 750-52608 dann abgegeben, wenn das Signal RDTYP100 als Binärsignal 1 auftritt und wenn das Signal RAWHIT000 von dem Block 750-512 als Binärsignal 1 auftritt. Das Flipflop 750-52600 wird auf das Auftreten eines Taktsignals CLOCK112 hin in den Binärzustand 0 zurückgesetzt; das betreffende Taktsignal wird von der gemeinsamen Signalquelle bei Fehlen eines Setz-Ausgangssignals von den beiden eingangsseitigen UND-Gliedern her erzeugt.Ein erstes Flipflop (FICENAB) des Registers 750-52610 wird dazu herangezogen, die Zeitspanne innerhalb eines T-Taktzyklus festzulegen, innerhalb der Instruktionen bzw. Befehle oder Operanden aus dem Cachespeicher 750 abzuholen bzw. abzurufen sind.Dieses Flipflop wird in den Binärzustand 1 über ein erstes UND-Glied auf das Auftreten eines Taktsignals CLOCK120 hin umgeschaltet, wenn das durch die Zeitsteuerschaltungen des Blockes 750-112 erzeugte Signal FHT100 als Binärsignal 1 auftritt. Das Taktsignal CLOCKD120 von der gemeinsamen Zeitsteuersignalquelle her wird über ein UND-Glied 750-52612 und eine Inverterschaltung 750-52612 sowie eine Inverterschaltung 750-52514 abgegeben. Das FICENAB-Flipflop wird auf das folgende Taktsignal hin zurückgesetzt, wenn das Signal FHT-100 als Binärsignal 0 auftritt. Das zweite, ein bistabiles Kippglied darstellende Flipflop des Registers 750-52610 wird dazu herangezogen, ein Intervall festzulegen, währenddessen Operanden (nicht Befehle) aus dem Cachespeicher 750 als Folge einer speziellen Bedingung abgerufen werden, die durch einen IF1-Befehl hervorgerufen wird, der nicht das letzte Wort in einem Befehlsblock bezeichnet hat. Das FRCIC-Flipflop wird über ein erstes eingangsseitiges UND-Glied auf das Auftreten des Taktsignals CLACKD120 hin dann in den Binärzustand 1 umgeschaltet, wenn das Signal FJAMZNICLEV000 als Binärsignal 1 auftritt. Das FRCIC-Flipflop wird auf das Auftreten des folgenden Taktimpulses hin zurückgesetzt, wenn das Signal FJAMZNICLEV00 als Binärsignal 0 auftritt.Wie dargestellt, entspricht das am Null-Ausgangsanschluß des FICENAB-Flipflops auftretende Signal dem Verknüpfungs-Halb-T-Taktsignal GATEHFTCHLK110, welches an die Schaltungen des Blockes 750-920 verteilt wird.Das Signal FICENAB000 wird mit dem Signal FRCIC000 und dem Signal RDDBLZCDE000 in einem UND-Glied 750-52616 verknüpft, um das Signal GSRCH100 zu erzeugen. Das Signal RDDBLZCDE000 kommt von der Decoderschaltung her. Dadurch wird das Signal GSRCH100 als Binärsignal 1 während der zweiten Hälfte eines T-Taktzyklus auftreten, wenn Operanden abgerufen werden (was bedeutet, daß das Signal FICENAB000 als Binärsignal q auftritt), wobei eine Ausnahme im Falle eines Lesedoppelbefehls vorhanden ist (d. h. dann, wenn das Signal RDDBLZCDE000 als Binärsignal 1 auftritt).Das am Null-Ausgang des FICENAB-Flipflops auftretende binäre Ausgangssignal wird mit dem Signal FRCIC000 in einen NAND-Glied 750-52618 verknüpft. Dieses NAND-Glied gibt das Signal ZCDINCENAB100 als Binärsignal 1 während des ersten halben T-Intervalls ab, wenn Befehle abgerufen werden (d. h. dann, wenn das Signal FICENAB000 als Binärsignal 0 auftritt) oder im Falle des oben beschriebenen IF1-Befehls (d. h. dann, wenn das Signal FRCIC000 ein Binärsignal 0 ist).Die Schaltungen des Blockes 750-526 enthalten ferner ein NAND-Glied 750-52620 und eine Vielzahl von UND- Gliedern 750-52622 bis 750-52628, die in der dargestellten Weise geschaltet sind. Die betreffenden Schaltungen erzeugen ein erstes Freigabesteuersignal DIRADDE100 zur Steuerung des Betriebs der Decoderschaltung 750-521. Darüber hinaus erzeugen die betreffenden Schaltungen ein zweites Freigabesteuersignal FEDCODE100 zur Steuerung des Betriebs einer Decoderschaltung 750-52000 des Blockes 750-520.Während eines Adreßlisten-Zuteilungszyklus (d. h. dann, wenn das Signal FDIRANS100 ein Binärsignal 1 ist) wird bei Fehlen eines einen Transfer und keine Übertragung betreffenden Zustands (d. h. dann, wenn das Signal NOGO21 als Binärsignal 1 auftritt) das UND-Glied 750-52626 das Signal DIRNOGO100 als Binärsignal 1 abgeben. Wenn ein Signal FSKIPRR000 von den Schaltungen des Blockes 750-916 als Binärsignal 1 abgegeben wird, dann veranlaßt dies das UND-Glied 750-52628, das Signal DIRADDE100 als Binärsignal 1 abzugeben, wodurch die Decoderschaltung 750-521 für den Betrieb freigegeben ist. Wenn das Signal DIRNOGO100 oder das Signal FSKIPRR000 als Binärsignal 0 auftritt, dann veranlaßt dies das UND-Glied 750-52628, die Decoderschaltung 750-521 unwirksam zu machen, indem das Signal DIRADDE100 als Binärsignal 0 auftritt. Unter denselben Bedingungen gibt das UND-Glied 750-52624 das Signal FEDCODE100 als Binärsignal 1 ab, wodurch die Decoderschaltung 750-52000 für den Betrieb freigegeben ist. Das UND-Glied 750-52630 veranlaßt eine Verstärkerschaltung 750-52632, das Signal FORCEBYP000 als Binärsignal 1 dann abzugeben, wenn beide Signale FSKIPRR000 und FBYPCAC00 als Binärsignale 1 auftreten. Das Signal FORCEBYP000 wird an den Transitblock-Kennzeichenbereich des Blockes 750-102 abgegeben. Das Signal FBYPCAC000 wird in herkömmlicher Weise erzeugt, gemäß der das Signal an die Leitung BYPCAC durch den Prozessor 700 abgegeben wird. Das Signal wird in einem Flipflop (nicht dargestellt) gespeichert, dessen am Null-Ausgang auftretendes Ausgangssignal dem Signal FBYPCAC000 entspricht.Die Schaltungen des dargestellten Blockes 750-520 umfassen die Decoderschaltung 750-52000 und zwei Multiplexerschaltungen 750-52002 und 750-52004. Dabei ist angenommen, daß normalerweise die an die "0"-Eingangsanschlüsse der Multiplexerschaltungen 750-52002 und 750-52004 abgegebenen Signale ausgewählt sind, um als Ausgangssignale abgegeben zu werden (dies bedeutet, daß das an den G-Eingang abgegebene Signal ein Binärsignal 0 ist). Demgemäß werden dann, wenn die Decoderschaltung 750-520000 freigegeben ist, die Ausgangssignale FED0100 bis FED7100 zur Erzeugung der Signale RWFE0100 bis RWFE7100 auf das Auftreten des Taktsignals CLOCK000 hin führen.In Fig. 7c ist ferner in weiteren Einzelheiten das Register 750-507 veranschaulicht, welches ein taktgesteuertes vierstufiges Register 750-50400 und eine Vielzahl von Verstärkerschaltungen 750-50402 bis 750-50602 enthält. Das Register 750-50400 enthält D-Flipflops, von denen die ersten drei Flipflops derart miteinander verbunden sind, daß sie Umlaufsignale OLDRR0100 bis OLDRR2100 speichern. Das vierte Flipflop ist so geschaltet, daß es das Vorhandensein eines anderen Trefferzustands anzeigt, der durch die Schaltungen des Blockes 750-562 (nicht dargestellt) ermittelt worden ist. Dies bedeutet, daß dieses Flipflop in den 1-Zustand dann gesetzt ist, wenn das Signal ALTHIT100 als Binärsignal 1 auftritt.Es sei darauf hingewiesen, daß die Flipflops des Registers 750-50400 lediglich auf das Auftreten eines Taktsignals CLOCK112 hin dann freigegeben sind, wenn das Signal FDIRASN000 als Binärsignal 1 auftritt, was kennzeichnend ist dafür, daß kein Adreßlisten-Zuteilungszyklus ausgeführt wird (ein Treffer-Zustand).Im Falle der Ermittelung eines Treffer-Zustands innerhalb der berücksichtigten Hälfte eines Blocks wird das Signal ALTHIT000 als Binärsignal 0 abgegeben. Dadurch werden die ersten drei Flipflops des Registers 750-50400 über eine erste Reihe von eingangsseitigen UND-Gliedern mit den Umlaufsignalen RR0100 bis RR2100 von dem Block 750-500 her geladen. Wenn ein Treffer-Zustand innerhalb der anderen Hälfte (alternative Hälfte) des Blockes ermittelt wird, auf den Bezug genommen ist, dann geben die Schaltungen des Blockes 750-512 das Signal ALTHIT100 als Binärsignal 1 ab. Dies bewirkt, daß die drei Flipflops über eine zweite Reihe von eingangsseitigen UND- Gliedern mit den anderen Ebenen-Signalen ALTHITLEV0100 bis ALTHITLEV2100 geladen werden, die durch die Schaltungen des Blockes 750-512 erzeugt werden.Die binären 1-Signale des Registers 750-50400 werden als Eingangssignale den Verstärker-Treiberschaltungen 750-50402 bis 750-50406 zur Speicherung in dem Transitblock- Puffer 750-102 zugeführt. Dieselben Signale werden den A-Operanden-Eingangsanschlüssen einer Addiererschaltung des Blockes 750-508 zugeführt. Die Addiererschaltung addiert oder inkrementiert die Signale OLDRR0100 bis OLDRR2100 zu bzw. um eins, indem eine binäre 1 an den C1-Anschluß der Addiererschaltung abgegeben wird. Die an den F-Ausgangsanschlüssen erzeugten Summensignale NXTRR0100 bis NXTRR2100 werden in den Umlaufbereich der Steueradreßliste 750-500 eingeschrieben.Schließlich werden die Signale OLDRR0100 bis OLDRR2100 als Eingangssignale an eine weitere Reihe von Verstärkertreiberschaltungen 750-50408 bis 750-50412 abgegeben, um in einem der Befehlsadressenregister 750-900 und 750-902 gemäß Fig. 7e eingespeichert zu werden.Nunmehr wird der Bereich 750-7 näher erläutert. Dieser Bereich ist in Fig. 7d im einzelnen veranschaulicht. Wie aus Fig. 7d hervorgeht, enthält der Block 750-722 eine Vielzahl von in Reihe geschalteten NAND-Gliedern 750-72230 bis 750-72234. Die NAND-Glieder 750-72230 und 750-72231 sind so geschaltet, daß sie Befehlspuffer- Gültigkeits- und Befehlssteuersignale IBUF1V100, ZRIB010 und IBUF2V100, ZRIB100 von den I-Puffern 750-715 und 750-717 sowie von dem Block 750-920 her aufnehmen. Die Signale IBUF1V100 und IBUF2V100 zeigen den Befehlspuffer an, in den eine Information geladen wird. Dies bedeutet, daß dann, wenn das Signal IBUF1V100 als Binärsignal 1 auftritt, festgelegt ist, daß der I-Puffer 750-715 geladen wird. Wenn das Signal IBUF2V100 als Binärsignal 1 auftritt, ist dadurch spezifiziert, daß der I-Puffer 750-717 mit einem Befehlswort geladen wird.Die Steuersignale ZRIB010 und ZRIB100 legen fest, welches Befehlspuffer-Gültigkeitsbit zu überprüfen ist, was dem adressierten Befehlspuffer entspricht. Dies bedeutet, daß dann, wenn das Signal ZRIB010 ein Binärsignal 1 ist, das IBUF1-Gültigkeitsbit durch die Schaltungen des Blocks 750-920 spezifiziert ist. Wenn das Signal ZRIB100 ein Binärsignal 1 ist, dann ist das IBUF2- Gültigkeitsbit spezifiziert. Wenn das Signal IBUF1RDY000 oder das Signal IBUF2RDY000 als Binärsignal 0 auftritt, dann gibt das NAND-Glied 750-72232 das Signal TBIBUFRDY100 als Binärsignal 1 ab, was kennzeichnend ist für einen Bereitschaftszustand.Die Schaltungen des Blockes 750-920 geben ein Freigabesignal USETBRDY100 als Binärsignal 1 auf das Umschalten des in Frage kommenden I-Puffer-Gültigkeitsbits hin ab. Dies bewirkt, daß das NAND-Glied 750-72233 das Signal TBRDY000 als Binärsignal 0 abgibt. Dies führt dazu, daß das NAND-Glied 750-72234 das Signal IBUFRDY100 als Binärsignal 1 abgibt, wodurch der Bereitschaftszustand signalisiert ist.Es sei ferner darauf hingewiesen, daß das NAND-Glied 750-72234 außerdem das Signal IBUFRDY100 als Binärsignal 1 dann abgibt, wenn ein Befehlsaufruf-Bereitschaftsignal IFETCHRDY000 als Binärsignal 0 von den Schaltungen des Blockes 750-920 abgegeben wird. Das Signal IFETCHRDY000 ist ein Binärsignal 0, allerdings abgesehen davon, daß die Befehle aus einem Block in dem Cachespeicher herausgenommen werden. Schließlich gibt das NAND-Glied 750-72234 das Signal IBUFRDY100 als Binärsignal 1 dann ab, wenn ein Befehlspuffer-Vergleichssignal IBUFCMPR000 als Binärsignal 1 von der Vergleicherschaltung 750-11435 abgegeben wird.Der LQ-Puffer 750-706 enthält, wie dies aus Fig. 7d hervorgeht, eine Vielzahl von simultan betriebenen 4×4-Doppel- Lese/Schreib-Speichern. Jeder Speicher ist ein 16-Bit- Speicher, der in vier Wörter mit jeweils vier Bits organisiert ist. Dabei können Wörter unabhängig voneinander aus irgendwelchen zwei Speicherplätzen zur gleichen Zeit ausgelesen werden, wie Informationen in irgendeinen Speicherplatz eingeschrieben werden.Die Signale WRTBUF0100 und WRTBUF1100 werden an die Schreibadressenanschlüsse des Speichers angelegt, während die Signale ZEXT0100 und ZEXT1100 an andere Anschlüsse der Reihen von Leseadressenanschlüssen zusammen mit dem Signal VCC angelegt werden. Die Leseadresseneingänge werden durch das an den G1-Anschluß abgegebene VCC-Signal freigegeben. Die Signale ZEXT0100 und ZEXT1000 ermöglichen das Auslesen des Inhalts aus irgendeinem Speicherplatz der 4-Bit-Speicherplätze zu den 1AY-Ausgangsanschlüssen.Die Speicher 750-70600 bis 750-70603 des Blockes 750-706 werden mit den Signalen RDFS(X0)110 bis RDFSP(X)010 und dem Signal VCC auf das Auftreten des T-Taktsignals CLKHT021 hin dann geladen, wenn das LQBUF-Abtastsignal LQBUF100 von dem Block 750-115 her als Binärsignal 1 auftritt. Außerdem wird der Inhalt sämtlicher Speicherstellen des jeweiligen Speichers gelöscht bzw. zu Null gemacht, wenn die Schaltungen des Blockes 750-115 das LQBUF-Rücksetzsignal RESLQBUF000 als Binärsignal 0 abgeben. Dies bedeutet, daß - wie dies aus Fig. 7d hervorgeht - die Paare der in Reihe geschalteten NAND-Glieder 750-70604 und 750-70605 das Rücksetzsignal RESLQBUF000 als Binärsignal 0 dann abgeben, wenn entweder ein Einleitungssignal INIT000 oder das Signal RESTLQBUF000 als Binärsignal 0 auftritt. Da drei zusätzliche Gruppen von Speichern, wie die Speicher 750-70600 bis 750-70603, in jedem Puffer enthalten sind, um die Speicherung von vier 36-Bit-Befehlswörtern zu bewirken, wird die (X)-Bezeichnung für die Eingangs- und Ausgangssignale herangezogen für die Anzeige, daß derartige Signale ähnlich sind bzw. einander entsprechen, allerdings abgesehen von den unterschiedlichen Werten von (X). So hat beispielsweise X0 die Werte 00, 17, 18 und 35, während X8 die Werte 08, 09, 26 und 27 aufweist. Jede Bytestelle enthält eine Gültigkeitsbitstelle, die als Binärsignal 1 auftritt, wenn eine Information in die betreffende Stelle geladen ist. Dadurch wird wiederum das Signal LQBUFV000 am Komplementärausgangsanschluß als Binärsignal 0 auftreten. Die am Komplementärausgang auftretenden Signale von der jeweiligen Gültigkeitsbit-Bytestelle werden jedoch gemeinsam zusammengefaßt, so daß die Anordnung derart betrachtet werden kann, daß jede Wortspeicherstelle eine Gültigkeitsbit-Stelle enthält.Die Speicher können als in herkömmlicher Weise ausgeführt betrachtet werden und beispielsweise durch Speicherschaltungen gebildet sein, wie sie in der US-PS 40 70 657 angegeben sind.Nunmehr wird der Bereich 750-9 näher erläutert. Die einzelnen Blöcke des Bereichs 750-9 sind in Fig. 7e im einzelnen dargestellt. Dabei sind soweit wie möglich entsprechende Bezugszeichen verwendet worden.Aus Fig. 7e geht hervor, daß der Block 750-920 eine erste Gruppe von Schaltungen des Blockes 750-92000 enthält, die die vier Reihen von Schreibsteuersignalen WRT00100 bis WRT70100, WRT01100 bis WRT71100, WRT02110 bis WRT72100 und WRT0300 bis WRT73100 erzeugen. Wie aus Fig. 7e ferner hervorgeht, enthalten diese Schaltungen zwei Multiplexerschaltungen 750-92002 und 750-92004, ein Register 750-92006 und vier Oktal-Decoderschaltungen 750-92008 bis 750-92014. Diese Schaltungseinrichtungen sind dabei in der dargestellten Weise miteinander verbunden.Die Multiplexerschaltung 750-92002 erhält Signale RHITLEV0100 bis RHITLEV2100 von dem Block 750-512 her zugeführt, die der Reihe von "0"-Eingangsanschlüssen zugeführt werden, während die Signale RTBLEV0100 bis RTBLEV2100 der Reihe der "1"-Eingangsanschlüsse zugeführt werden. Während der ersten Hälfte eines T-Zyklus werden dann, wenn das Signal FDFN2HT100 als Binärsignal 0 dem Steueranschluß G0/G1 zugeführt wird, die Signale RHITLEV0100 und RHITLEV2100 den Ausgangsanschlüssen zugeführt. Die betreffenden Signale werden taktgesteuert in die oberen drei Flipflops des Registers 750-92006 auf das Auftreten des T-Taktsignals CLKHT02 eingeführt. Dies ermöglicht dem Prozessor, Operanden in den Cachespeicher 750-300 während der zweiten Hälfte des T-Taktzyklus einzuschreiben. Während der zweiten Hälfte eines T-Zyklus werden dann, wenn das Signal FDFN2HT100 als Binärsignal 1 auftritt, die Signale RTBLEV0100 bis RTBLEV2100 taktgesteuert in das Register 750-92006 auf das Auftreten des T-Taktsignals CLKHT02 eingeführt. Dies ermöglicht, Speicherdaten in den Cachespeicher 750-300 während der ersten Hälfte des nächsten Zyklus einzuschreiben.Die zweite Multiplexerschaltung 750-92004 erhält Signale ZONE0100 bis ZONE3100 von dem Schalter 750-144 her zugeführt, die an die Reihe der "0"-Eingangsanschlüsse abgegeben werden, während das Signal MEMWRTREQ100 von dem Block 750-112 an die Reihe der "1"-Eingangsanschlüsse abgegeben wird. Wenn das Signal FDFN2HT100 als Binärsignal 0 auftritt, dann werden die Signale ZONE0100 bis ZONE3100 an die Ausgangsanschlüsse abgegeben. Die betreffenden Signale werden taktgesteuert in die unteren Flipflops des Registers 750-9206 auf das Auftreten des T-Taktsignals CLKHT02 hin eingeführt. Während der ersten Hälfte eines T-Taktzyklus gibt das NAND-Glied 750-92005 das Signal ENBWRT100 als Binärsignal 1 ab, wodurch ermöglicht ist, die zuvor geladenen Signale an die Ausgangsanschlüsse abzugeben. Dies ermöglicht, die Prozessor-Zonenbits dazu heranzuziehen festzulegen, welche Operandenbytes zu aktualisieren sind, wenn Prozessor-Daten in die spezifizierte Ebene des Cachespeichers geschrieben werden. Wenn das Signal FDFN2HT100 als Binärsignal 1 auftritt, dann wird das Signal MEMWRTREQ100 taktgesteuert in das Register 750-92006 eingeführt. Dies bewirkt, daß sämtliche Zonenbits als binäre Einsen auftreten, wodurch sämtliche Bytes des von dem Speicher aufgenommenen jeweiligen Datenworts in die bezeichnete Ebene des Cachespeichers während der ersten Hälfte des nächsten T-Taktzyklus eingeschrieben werden.Wie aus Fig. 7e ersichtlich ist, werden unterschiedliche Signale der Signale RWRTLEV0100 bis RWRTLEV2100 an die Freigabe-Eingangsanschlüsse der Oktal-Decoderschaltungen 750-92008 bis 750-92-14 abgegeben. Die Signale RWRTLEV0100 bis RWRTLEV2100 werden an die Eingangsanschlüsse jeder der Oktal-Decoderschaltungen 750-92008 bis 750-92014 abgegeben.Der Block 750-920 enthält eine zweite Gruppe von Schaltungen des Blockes 750-92020. Diese Schaltungen erzeugen das 1/2-T-Taktsignal, welches an die Schaltungen des Blockes 750-92000 abgegeben wird, das Freigabe-Speicherebenensignal ENABMEMLEV100 und das Freigabeadressensignal ENADR1100, das an die Schaltungen des Blockes 750-303 abgegeben wird. Außerdem erzeugen diese Schaltungen die Reihe der Steuersignale ZIC010, ZIC110 und RICA100, RICB100, die an die Schaltungen der Befehlsadressenregister 750-900 und 750-902 zusätzlich zu den Steuersignalen RIRA100 und RICB100 abgegeben werden, die den Registern 750-308 und 750-310 zugeführt werden.Die Schaltungen des Blockes 750-92020 enthalten zwei Halbbegrenzungs-Flipflops eines Registers 750-92022, eine Gruppe von drei Steuer-Flipflops des Registers 750-92024 und ein taktgesteuertes Flipflop 750-92026. Die Schaltungen enthalten ferner eine Anzahl von UND- Gliedern, NAND-Gliedern, UND/NAND-Glieder und UND/ODER- Glieder 750-92030 bis 750-92041.Die in Reihe geschalteten Verknüpfungsglieder, nämlich das UND/NAND-Glied 750-92030, das UND/ODER-Glied 750-92032 und die UND-Glieder 750-92034 und 750-92035 erzeugen auf das Auftreten eines Signals FLDQUAD100 von der Einrichtung 750-916 her, auf das Auftreten eines Signals FWFIDESC010 von dem Prozessor 700 her und auf das Auftreten der Signale FACTVRIC000 und FACTVRIC100 von dem Register 750-92024 her Steuersignale ZIC000, ZIC010 und ZIC110. Diese Signale werden dazu herangezogen, den Betrieb des ZIC-Schalters 750-906 und der verschiedenen Bereiche der Register 750-900 und 750-902 (beispielsweise die Ebenen-Gültigkeitsbit- Speicherung und die Ebenen-Bitspeicherung) zusätzlich zu den zugehörigen Registern zu steuern.Die in Reihe geschalteten Verknüpfungsglieder, nämlich das UND-Glied 750-92036, das UND/NAND-Glied 750-92037 und NAND-Glieder 750-92038 bis 750-92041 werden in der Weise betrieben, daß Registerabtastsignale RICA100 und RICB100 erzeugt werden. Diese Signale steuern das Laden der Register 750-900 und 750-902. Das UND- Glied 750-92036 bewirkt die Abgabe des Signals VALRDIBUF100 als Binärsignal 1, wenn ein Trefferzustand im Falle eines Lesebefehls ermittelt worden ist (d. h. dann, wenn das Signal FRDMISS000 als Binärsignal 1 auftritt), wenn ferner die Übertragung bzw. der Transfer durch einen Übertragungsbefehl gegeben war (d. h., daß das Signal NOGO020 als Binärsignal 1 aufgetreten ist) und wenn das Signal CMPDATA/ICLEV000 von der Vergleicherschaltung des Blockes 750-912 her ein Binärsignal 1 ist.Das Signal FRDMISS000 wird vom Null-Ausgang des Flipflops (nicht dargestellt) erhalten, welches - wie erwähnt - entsprechend folgendem Boolschen Ausdruck gesetzt wird: FRDMISS = (RDCMD · · · ).Die Signale GOODFTCHA100 und GOODFTCHB100, die von (nicht dargestellten) Schaltungen erzeugt werden, zeigen an, ob das RICA-Register 750-900 oder das RICB-Register 750-902 zu dem betreffenden Zeitpunkt benutzt worden ist; die Inhalte der betreffenden Register werden erhöht. So wird beispielsweise das Signal GOODFTCHA100 entsprechend folgendem Boolschen Ausdruck erzeugt:GOODFTCHA = · · · FDEN2HT + FDFN2HT · FLDQUAD · FACTVRIC.Das Signal GOODFTCHB wird in einer entsprechenden Weise erzeugt, allerdings abgesehen davon, daß die Zustände der Signale FACTVRIC und umgekehrt sind.Es dürfte ersichtlich sein, daß dann, wenn das Signal EXECRDIBUF100 als Binärsignal 1 auftritt, währenddessen der Prozessor 700 das Signal RDIBUF110 als Binärsignal 1 abgibt, das NAND-Glied 750-92039 das NAND-Glied 750-92041 veranlaßt, das Signal RICA100 als Binärsignal 1 dann abzugeben, wenn das Signal GOODFTCHA100 als Binärsignal 1 auftritt. Das Signal ENBSTRBA000 zeigt an, wann das RICA-Register 750-900 anfangs geladen wird. Dies bedeutet, daß dann, wenn das Signal ENBSTRBA000 als Binärsignal 0 auftritt, das NAND-Glied 750-92041 das Signal RICA100 als Binärsignal 1 abgibt. Das Signal ENBSTRBA wird speziell entsprechend folgendem Boolschen Ausdruck erzeugt:ENBSTRBA = · FACTVRIC · · FDFN1HT + FDFN1HT · · FJAMZNICLEV · + (INSTIF1 + DCDLDQUAD) · FACTVRIC · FDFN2HT ·
+ FDFN2HT · · · ENAB2HT.Dabei sind:ENAB2HT = ENABRIC1 + ENABRIC2 = · .Unter jeder Reihe von Bedingungen geben die Signale RICA100 und RICB100 die Abtastung ihrer entsprechenden Register frei, wenn diese zunächst geladen worden sind, oder im Anschluß an eine Inkrementierung, wie dann, wenn Befehle aufgehoben oder aus dem Cachespeicher herausgeführt werden.Das NAND-Glied 750-92042, das UND/NAND-Glied 750-92043 und die NAND-Glieder 750-92044 bis 750-92049 sind derart geschaltet, daß Registerabtastsignale RIRA100 und RIRB100 in ähnlicher Weise erzeugt werden wie die Registerabtastsignale RICA100 und RICB100.Das NAND-Glied 750-92046 gibt das Signal RIRA100 als Binärsignal 1 im Falle eines neuen Befehlsabrufes ab (d. h. dann, wenn das Signal NEWINST000 ein Binärsignal 0 ist) oder dann, wenn der Prozessor 700 einen Befehl aus dem RIRA-Register 750-308 entnimmt (d. h. dann, wenn das Signal TAKEINST000 ein Binärsignal 0 ist). Das NAND-Glied 750-92049 gibt das Signal RIRB100 im Falle eines neuen Operandenaufrufs ab (d. h. dann, wenn das Signal NEWDATA000 ein Binärsignal 0 ist) oder dann, wenn der Prozessor 700 ein Datenwort aus dem RIRB-Register 750-310 entnimmt (d. h. dann, wenn das Signal TAKEDATA000 ein Binärsignal 0 ist).Das UND-Glied 750-92050 und das UND/NAND-Glied 750-92051 erzeugen das Signal ENBMEMLEV100 während der zweiten Hälfte eines T-Taktzyklus (was bedeutet, daß das Signal FDFN2HT101 ein Binärsignal 1 ist), wenn die Schaltungen des Blockes 750-112 das Speicherschreib-Anforderungssignal MEMWRTREQ100 als Binärsignal 1 abgeben. Das NAND-Glied 750-92052 erzeugt das Signal ENBADR1100 während der zweiten Hälfte eines T-Taktzyklus (was bedeutet, daß das Signal FDFN1HT101 als Binärsignal 0 auftritt) oder dann, wenn der Befehlszähler benutzt wird (was bedeutet, daß das Signal USEIC000 ein Binärsignal 0 ist). Im Hinblick auf die Flipflop-Register ist ersichtlich, daß das Flipflop des Registers 750-92026 in den Binärzustand 1 über und ein erstes UND-Glied dann geschaltet wird, wenn das UND-Glied 750-92053 veranlaßt wird, das Signal INSTIF1100 als Binärsignal 1 abzugeben, und zwar in Abhängigkeit davon, daß ein IF1-Befehl durch die Decoderschaltung 750-922 decodiert wird (was bedeutet, daß das Signal DCDIF1100 ein Binärsignal 1 ist). Dieser Befehl bzw. dieser Vorgang erfordert dabei keine zusätzlichen Deskriptoren (was bedeutet, daß das Signal FFPIMEIS020 von dem Prozessor 700 her ein Binärsignal 1 ist). Außerdem gibt das UND-Glied 750-92054 das Signal CANCELCMD000 als Binärsignal 1 auf das Vorliegen keines Löschzustandes hin ab (was bedeutet, daß das Signal CANCELC010 ein Binärsignal 1 ist). Außerdem liegt kein Haltezustand vor, was bedeutet, daß das Signal HOLDDMEM001 ein Binärsignal 0 ist.Das Flipflop-Register 750-92026 wird in den Binärzustand 0 über ein zweites eingangsseitig vorgesehenes UND-Glied zurückgesetzt, welches die Signale ENABNEWINST000 und NEWIF1FDBK100 von zwei NAND-Gliedern 750-92042 und 750-92043 und dem UND-Glied 750-92055 her aufnimmt. Das am 1-Ausgang des Flipflop-Registers 750-92026 auftretende Ausgangssignal wird dem NAND-Glied 750-92056 zugeführt. Dieses NAND-Glied gibt während der ersten Hälfte eines T-Taktzyklus (was bedeutet, daß das Signal FDFN1HT100 als Binärsignal 1 auftritt) das Signal USEIC000 als Binärsignal 0 ab, wenn das Signal FNEWIF1100 als Binärsignal 1 auftritt.Das zweite Flipflop-Register 750-92022 umfaßt die beiden Zeitsteuerungs-Flipflops, die beide in den Binärsignal 1 auf das Auftreten des Signals GATEHFTCLK100 hin gesetzt werden, welches aus dem Bereich 750-5 stammt, und zwar das Auftreten des 1/2-T-Taktsignals CLKHT021 hin. Die Flipflops des Registers 750-92022 werden in den Nullzustand auf das Auftreten des nächsten 1/2-T-Taktsignals CLKHT021 hin zurückgesetzt.Die Flipflops des Registers 750-92024 liefern, wie bereits erwähnt, verschiedene Zustandssteuersignale. Das erste Flipflop (FRDIBUF) wird in den Binärzustand 1 dann umgeschaltet, wenn das NAND-Glied 750-92060 das Signal SETRDIBUF100 als Binärsignal 1 auf das Auftreten eines Lese-I-Pufferanforderungssignals von dem Prozessor 700 hin abgibt (das bedeutet, daß das Signal EXECRDIBUF000 als Binärsignal 0 auftritt) oder bei Vorliegen eines Sperr-Bereitschaftszustands (was bedeutet, daß das Signal FINHRDX010 als Binärsignal 0 auftritt), wenn das UND-Glied 750-92061 das Signal ENABSETRDIBUF100 als Binärsignal 1 abgibt. Das Signal ENABSETRDIBUF100 wird als Binärsignal 1 im Falle eines Befehles abgegeben, der nicht ein Lade-Vierer-Befehl ist (was bedeutet, daß das Signal FLDQUAD000 ein Binärsignal 1 ist) oder im Falle eines Instruktion-Aufruf-1-Befehls (was bedeutet, daß das Signal GOODIF1000 ein Binärsignal 1 ist). Das FRDIBUF-Flipflop wird eine Taktperiode später auf das Auftreten des T-Taktsignals CLKT021 über ein zweites eingangsseitiges UND-Glied zurückgesetzt.Das zweite Flipflop (FACTVRIC) des Registers 750-92024 wird in Übereinstimmung mit dem oben angegebenen Boolschen Ausdrücken über die NAND-Glieder 750-92062 und 750-92064, über das UND-Glied 750-92063 und das UND/NAND-Glied 750-92065 gesetzt bzw. zurückgesetzt. Das dritte Flipflop (FRDDATA) wird in den Binärzustand 1 über ein erstes eingangsseitiges UND-Glied auf das Auftreten des Signals SETRDIBUF100 gesetzt, wenn der Befehl ein Lade-Vierer-Befehl ist (was bedeutet, daß das Signal FLDQUAD100 ein Binärsignal 1 ist). Das FRDDATA-Flipflop wird in den Binärzustand 0 eine Taktperiode später zurückgesetzt, und zwar über ein zweites eingangsseitiges UND-Glied auf das Auftreten des T-Taktsignals CLKT021 hin.Die nächste Gruppe von Schaltungen innerhalb des Blockes 750-920 umfaßt die Schaltungen des Blockes 750-92070. Wie aus Fig. 7e hervorgeht, umfassen diese Schaltungen eine erste Vielzahl von UND-Gliedern, UND/NAND-Gliedern und NAND-Gliedern 750-92071 bis 750-92086. Diese Verknüpfungsglieder sind dabei in der dargestellten Weise geschaltet. Sie erzeugen Steuersignale SETACURLEV100, RICACNTL100 und RSTACURLEV2000, die das Setzen und Rücksetzen der vorliegenden Ebenen- und der Ebene-Gültigkeitsbit-Positionen des RICA-Registers 750-900 in Übereinstimmung mit den Zuständen der Signale SETALEV1VAL100, RSTALEV1VAL000 und SETLEV2VAL100 steuern. Diese Signale werden durch eine weitere Vielzahl von UND-Gliedern und NAND-Gliedern 750-92087 bis 750-92095 erzeugt.Eine zweite Vielzahl von UND-Gliedern, UND/NAND-Gliedern und NAND-Gliedern 750-92100 bis 750-92116 erzeugt in einer entsprechenden Weise Signale SETBCURLEV100, RSTBCURLEV200 und RICBCNTL100, durch die die vorliegenden Ebenen- bzw. Gültigkeitsbits für das RICB-Register 750-902 gesetzt bzw. zurückgesetzt werden, und zwar in Übereinstimmung mit den Signalen SETBLEV1VAL100, RSTBLEV1VAL000 und SETBLEV2VAL100. Diese Signale werden in einer weiteren Vielzahl von UND-Gliedern und NAND- Gliedern 750-92120 bis 750-92125 erzeugt.Eine Vielzahll von UND-Gliedern 750-92126 bis 750-92129 erzeugt auf das Auftreten der Signale SETALEV1VAL100, SETBLEV1VAL 100, SETALEV2VAL100 und SETBLEV1VAL100 hin Steuersignale RICALEV1100 bis RICBLEV2100, wenn das Signal CANCELCMD000 ein Binärsignal 1 ist. Diese Signale werden an die Steuereingangsanschlüsse der Ebenen-Bitspeicherbereiche der RICA- und RICB-Register 750-900 und 750-902 zur Steuerung des Ladens der Treffer-Ebenensignale aus dem Bereich 750-512 abgegeben.Eine weitere Vielzahl von UND/NAND-Gliedern, UND/ODER- Gliedern und NAND-Gliedern 750-92130 bis 750-92137 gibt auf Signale von den Ebenen-Gültigkeitsbit-Speicherungs- und Ebenen-Speicherbereichen der Register 750-900 und 750-902 das Verwendungs-Transitpuffer-Bereitschaftssignal USETBDY100 und die Steuersignale ZRIB010 und ZIB100 ab, die an die Schaltungen des Blockes 750-114 abgegeben werden.Es ist ferner ersichtlich, daß der Block 750-92070 ein vier D-Flipflops umfassendes Register 750-92140, zwei UND-Glieder 750-92141 und 750-92142, zwei UND/NAND- Glieder 750-92143 und 750-92144 sowie zwei UND/ODER- Glieder 750-92145 und 750-92146 umfaßt, die in der dargestellten Weise angeschlossen sind. Die Flipflops des Registers 750-92140 werden mit dem Inhalt der Bitpositionen 8 und 9 der RICA- und RICB-Register 750-900 und 750-902 auf das Auftreten des T-Taktsignals CLKHT020 hin unter der Steuerung der Signale RICA100 und RICB100 geladen. Dies bedeutet, daß das obere Paar der Register-Flipflops taktgesteuert wird, wenn das an den Anschluß C1 angelegte Signal RICA100 als Binärsignal 1 auftritt, während das untere Paar der Register- Flipflops dann taktgesteuert wird, wenn das an den Anschluß G2 angelegte Signal RICB100 als Binärsignal 1 auftritt. Die an die Anschlüsse G3 und G4 abgegebenen Signale ZIC000 und ZI100 steuern unabhängig voneinander die Erzeugung von Ausgangssignalen von dem oberen Paar der Flipflops bzw. von dem unteren Paar der Flipflops an den entsprechenden Reihen von Ausgangsanschlüssen. Die Paare von binären 0-Ausgangssignalen werden mittels der UND-Glieder 750-92141 und 750-92142 verknüpft, um Adressensignale ZEXT0100 und ZEXT1100 zusätzlich zu jenen Signalen zu erzeugen, die für die Erzeugung des Steuersignals NEXTLEVVA100 erforderlich sind, welches an die Steuereingangsanschlüsse der Vergleicherschaltung 750-912 abgegeben wird.Eine letzte Gruppe von Schaltungen umfaßt ein Flipflop- Register 750-92150 und eine Vielzahl von UND-Gliedern, ein UND/NAND-Glied, NAND-Glieder und UND/ODER-Glieder 750-92151 bis 750-92156. Diese Schaltungen sind so geschaltet, daß das Signal IFETCHRDY000 erzeugt wird, welches an die Schaltungen des Bereiches 750-114 abgegeben wird. Die Verknüpfungsglieder 750-92153 und 750-92154 sind so geschaltet, daß Zeitsteuersignale DFN2HT101 und DFN2HT100 auf das Auftreten eines Signals FHT010 von dem Block 750-112 her erzeugt werden. Diese Signale werden als Binärsignale 1 während der zweiten Hälfte eines T-Taktbetriebszyklus auftreten.Das Flipflop-Register 750-92150 wird über ein erstes eingangsseitiges UND-Glied dann in den Binärzustand 1 gesetzt, wenn die UND-Glieder 750-92151 und 750-92152 die Signale SETINHRDY100 und CANCELINHRDY000 als Binärsignale 1 abgeben. Das betreffende Register wird in den Binärzustand 0 über ein zweites eingangsseitiges UND-Glied dann zurückgesetzt, wenn das NAND-Glied 750-92155 das Signal RSINHRDY000 als Binärsignal 0 abgibt. Das am Null-Ausgang des Registers 750-92150 auftretende Binärsignal wird dem UND/ODER-Glied 750-92156 zugeführt. Wenn das Signal FINHRDY000 als Binärsignal 0 auftritt, veranlaßt dies das Verknüpfungsglied 750-92156, das Signal IFETCHRDY000 als Binärsignal 1 abzugeben.Darüber hinaus zeigt Fig. 7e im einzelnen den Schalter 750-910 und die Vergleicherschaltungen der Blöcke 750-912 und 750-914. Der Schalter 750-910 ist ein Crossbar- Schalter, der in der oben beschriebenen Weise arbeitet. Die W-Ausgangssignale wählen eines der beiden Reihen von Signalen aus, die an die Anschlüsse A0 und A1 abgegeben sind, und zwar in Übereinstimmung mit dem Zustand des Signals ZIC110. Die X-Ausgangssignale wählen eine der beiden Reihen von Signalen aus, die an die Anschlüsse A3 und A4 abgegeben sind, und zwar in Übereinstimmung mit dem Zustand des Signals ZIC110. Die Ausgangssignale Y und Z wählen eine der vier Reihen von Signalen aus, die an die Anschlüsse A0-A4 angelegt sind, und zwar in Übereinstimmung mit den Zuständen der Signale ZIC110, ZNICLEV100 und ZIC110, ZCURLEV100.Die Ausgangssignale ZNICLEV0100 bis ZNICLEV2100 von den Y-Ausgangsanschlüssen der Schaltung 750-910 her werden den B-Eingangsanschlüssen der Vergleicherschaltung 750-912 zum Vergleich mit den Signalen RTBLEV0100 bis RTBLEV2100 aus dem Bereich 750-102 zugeführt. Die Vergleicherschaltung 750-912 ist dann freigegeben, wenn die Decoderschaltung 750-922 einen IF1-Befehl decodiert hat (was bedeutet, daß das Signal DECODEIF1010 als Binärsignal 1 auftritt) und wenn das Signal NEXTLEVVAL100 als Binärsignal 1 auftritt. Der Vergleich führt zur Erzeugung von Signalen CMPDATA/ICLEV100 und ZMPDATA/ICLEV000.Die anderen Vergleicherschaltungen der Blöcke 750-912 und 750-914 arbeiten in einer entsprechenden Weise, um Signale CMPCORLEV100 und CMPALTLEV100 zu erzeugen. Der andere Bereich der Schaltung 750-912 vergleicht im einzelnen die Signale ZICLEV0100 bis ZICLEV2100 mit den Signalen C7RR0100 bis C7RR2100. Wenn eine Übereinstimmung vorliegt, wird das Signal CMPCURLEV100 als Binärsignal 1 abgegeben. Dieser Bereich wird über ein NAND-Glied 750-91202 dann freigegeben, wenn entweder das Signal ZLEV1VAL000 oder das Signal ZLEV2VAL000 als Binärsignal 0 auftritt. Die Vergleicherschaltung 750-914 weist zwei Abschnitte bzw. Bereiche auf, die durch Paare von Signalen ZCURLEV100, ZLEV1VAL100 und ZCURLEV000, ZLEV2VAL100 freigegeben werden. Der erste Bereich vergleicht die Ebenen-1-Signale ZLEV10100 bis ZLEV12100 mit den Umlaufsignalen C7RR0100 bis C7RR2100. Wenn eine Übereinstimmung erzielt wird, wird das am Anschluß A=B auftretende Ausgangssignal als Binärsignal 0 auftreten, wodurch das NAND-Glied 750-91402 veranlaßt wird, das Signal CMPALTLEV100 als Binärsignal 1 abzugeben.In entsprechender Weise vergleicht der zweite Bereich die Ebenen-2-Signale ZLEV20100 bis ZLEV22100 mit den Umlaufsignalen C7RR0100 bis C7RR2100. Wenn eine Übereinstimmung ermittelt wird, tritt das Ausgangssignal als Binärsignal 0 auf, wodurch das NAND-Glied 750-91402 veranlaßt wird, das Signal CMPALTLEV100 als Binärsignal 1 abzugeben.In Fig. 7e sind die Schaltungen des Blockes 750-916 im einzelnen dargestellt. Dabei ist ersichtlich, daß die Schaltungen zwei Adressenvergleicherschaltungen 750-91600 und 750-91602 umfassen. Jede Schaltung wird durch das Signal ENABADRCMP100 freigegeben, welches durch in Reihe geschaltete Verknüpfungsglieder erzeugt wird, nämlich durch das UND-Glied 750-91604 und durch das NAND-Glied 750-91606. Diese Verknüpfungsglieder geben das Signal ENABADRCMP100 als Binärsignal 1 ab, wenn ein Lesebefehl durch die Decoderschaltung 750-922 decodiert wird.Die NAND-Glieder 750-91604 bis 750-91608 geben das Signal SKIPPRR100 als Binärsignal 1 dann ab, wenn eine der Vergleicherschaltungen 750-91600 und 750-91602 einen Vergleich bzw. eine Übereinstimmung ermittelt (was bedeutet, daß das Signal CMPADR100 oder das Signal CMPNXTBLK100 als Binärsignal 1 auftritt). Das Signal SKIPPRR100 wird dazu herangezogen, das Register-Flipflop 750-21610 dann umzusteuern bzw. umzuschalten, wenn ein UND-Glied 750-91612 das Signal MISSING100 als Binärsignal 1 abgibt, und zwar auf die Ermittlung eines Ausweich- bzw. Fehl- Zustands hin (was bedeutet, daß das Signal HITTOIC010 als Binärsignal 1 auftritt).Darüber hinaus umfassen die Schaltungen des Blocks 750-916 ein Register-Flipflop 750-91620, ein UND-Glied 750-91622 und zwei NAND-Glieder 750-91624 und 750-91626. Das Flipflop 750-91620 wird über ein erstes eingangsseitiges UND-Glied dann in den Binärzustand 1 gesetzt, wenn ein Lade-Vierer-Befehl durch die Decoderschaltung 750-922 decodiert wird (was bedeutet, daß das Signal DCDLDQUAD100 als Binärsignal 1 auftritt), und zwar bei Fehlen eines Signals zum Löschen des Befehls (was bedeutet, daß das Signal CANCELCMD000 als Binärsignal 1 auftritt). Das Flipflop wird in den Binärzustand 0 über ein zweites eingangsseitig vorgesehenes UND-Glied dann zurückgesetzt, wenn das Signal FE020 als Binärsignal 0 auftritt.Aus Fig. 7e geht hervor, daß durch das Ausgangssignal am 1-Ausgang des Flipflops 750-91620 in dem Fall, daß das UND-Glied 750-91622 durch ein Binärsignal 1 angesteuert ist, das Flipflop 750-91610 in den Binärzustand 1 umschaltet, wenn das Signal DATA100 als Binärsignal 1 auftritt. Das NAND-Glied 750-91624 gibt das Signal DATA100 als Binärsignal 1 ab, wenn entweder ein Vor-Lesebefehl oder ein Lade-Vierer-Befehl durch die Decoderschaltung 750-922 decodiert wird. Das NAND-Glied 750-91626 gibt das Signal HOLDLDQUAD000 als Binärsignal 0 dann ab, wenn das Signal FLDQUAD100 sowie weitere Signale als Binärsignale 1 auftreten.Unter Bezugnahme auf Fig. 1 bis 7e wird nachstehend die Arbeitsweise der bevorzugten Ausführungsform der vorliegenden Erfindung unter Heranziehung des Flußdiagramms gemäß Fig. 8 erläutert.Der Prozessor 700 verarbeitet beispielsweise einen Übertragungsbefehl (Move), der das in Fig. 6c gezeigte Format aufweist. Der Befehl ist in einem Befehlsvorrat enthalten, dessen Befehle die Eigenschaften der Verarbeitung von Bytes, Zeichen und Bitfolgen haben, die als erweiterter Befehlsatz (EIS) bezeichnet werden. Der Befehl weist ein Mehrfachwort-Befehlsformat auf. Das erste Wort ist ein Grundbefehlswort, welches den Operationscode enthält, dem erste und zweite Deskriptorwörter folgen. Die Bits 0-17 enthalten eine zusätzliche Information bezüglich der Operation. Die Bits umfassen insbesondere ein 8-Bit-Füllzeichen, ein Abbrechfehler-Freigabebit und ein 7-Bit-Modifikationsfeld, welches derart codiert ist, daß irgendeine Adressenmodifikation spezifiziert ist, die bezüglich eines Operandendeskriptors auszuführen ist. Hier kann das Feld als Nullen enthaltend angenommen werden.Die Bits 18-27 umfassen den Operationscodewert, der derart codiert ist, daß er die Übertragungsoperation bezeichnet, während das Bit 28 ein Unterbrechungsbedienungsbit ist, welches als den Wert 1 enthaltend angenommen wird. Die Bits 29 bis 35 entsprechen einem weiteren 7-Bit-Modifikationsfeld, welches derart codiert ist, daß die bezüglich des Deskriptors 1 auszuführende Adressenmodifikation bezeichnet ist. Dabei ist hier angenommen, daß dieses Feld lediglich Nullen enthält.Das zweite Wort enthält eine 18-Bit-Adresse für den Deskriptor 1, ein 3-Bit-CN1-Feld, welches so codiert ist, daß es die urprüngliche Zeichenzahl innerhalb des Wortes bezeichnet, auf das Bezug genommen wird, sowie ein 2-Bit-TA-Feld, welches derart codiert ist, daß es angibt, welcher Typ von alphanumerischen Zeichen in den Daten enthalten ist, und ein 6-Bit-N1-Feld, welches derart codiert ist, daß es die Anzahl von Zeichen oder Bits in der Datenfolge oder einem Register angibt, welches die Anzahl von Zeichen oder Bits enthält. Die maximal zulässige Länge beträgt 63, wenn lediglich das N1-Feld benutzt wird. Wenn der Längenwert durch ein Register festgelegt wird, kann die maximal zulässige Länge 2²⁰ Zeichen betragen. Das TA-Feld ist wie folgt codiert.
Code
Datentyp
00|9 Bit
01 6 Bit
10 4 Bit
Das CN-Feld für 9-Bit-Zeichen ist wie folgt codiert:
Code
Zeichenzahl
000
0
· ·
· ·
· ·
110 3
Das dritte Wort enthält eine ähnliche Information für Deskriptoren 2.Ausgehend an der Stelle YC1, die durch das Deskriptorwort 1 bezeichnet ist, ersetzen die alphanumerischen Zeichen des Datentyps TA1 der Zeichenfolge 1 von links nach rechts die alphanumerischen Zeichen des Datentyp- TA2-Feldes der Datenfolge 2, die an der Stelle YC2 beginnt, und zwar durch das Deskriptwort 2 spezifiziert. Wenn die TA1- und TA2-Felder unähnlich sind, wird jedes Zeichen bei hoher Wertigkeit abgebrochen oder mit Nullen gefüllt sein, je nachdem, was zweckmäßig ist. Dies bedeutet, daß dann wenn die Länge L1 größer ist als die Länge L2, die Abbrechungsanzeige gesetzt ist, ansonsten aber nicht gesetzt ist. Wenn die Länge der Zeichenfolge 1 größer ist als die Länge der Zeichenfolge 2, dann werden die Zeichen (L1-L2) niedrigster Wertigkeit nicht übertragen bzw. verschoben, und die Abbrechungsanzeige ist gesetzt. Wenn die Länge L1 kürzer ist als die Länge L2, wird das FILL-Zeichen (unter der Annahme des Vorliegens des Typs TA2) in die Zeichen (L2-L1) niedrigster Wertigkeit eingesetzt. Hinsichtlich einer weiteren Information betreffend den vorliegenden Befehl sei auf die Druckschrift "Series 60 (Level 66) 6000 Macro Assembler Program (GMAP)" von der Firma Honeywell Information Systems, Inc. Copyright 1977, Bestellnr. DD08B, Rev. 0 Bezug genommen.Es sei darauf hingewiesen, daß der Prozessor 700 Befehle in einer sogenannten Pipeline-Weise abwickelt, wie dies an anderer Stelle bereits im einzelnen erläutert wird.Wie hier veranschaulicht, führt der Prozessor 700 die verschiedenen Operationen während der I-, C- und E-Betriebszyklen im Zuge der Abwicklung von Befehlen aus. Dies führt zur Abgabe von Cachespeicher-Befehlen durch den Prozessor 700 an die Cachespeichereinheit 750, wie dies erläutert worden ist. Es sei angenommen, daß der nächste Befehl, der ein Übertragungs- bzw. Move-Befehl ist, in dem Cachespeicher 750-300 enthalten ist. Ferner sei angenommen, daß die durch die Deskriptoren 1 und 2 spezifizierten Operandendaten nicht in dem Cachespeicher 750-300 gespeichert sind, sondern vielmehr in dem Hauptspeicher 800 enthalten sind.Aus Fig. 8 geht hervor, daß der erste für die Verarbeitung des Übertragungs-(ML)-Befehls wichtige Zyklus ein Endzyklus ist, der einem letzten Zyklus des vorhergehenden Befehls entspricht. Dieser Zyklus wird dadurch bereitgestellt, daß ein END-Steuersignal als Binärsignal 1 in Übereinstimmung mit folgendem Boolschen Ausdruck abgegeben wird: END = FESC100·DPIPE 1-4 + . . . Das Zustands-Flipflop FESC ist dann im Binärzustand 1, wenn der Prozessor 700 unter der Mikroprogrammsteuerung arbeitet, wie während der Ausführung eines Programmbefehls. Das Signal DPIPE 1-4 ist ein Binärsignal 1 dann, wenn die Bits 38-40 so codiert sind, daß sie den Wiederbeginn des Pipeline-Vorgangs angeben, bei dem die Register des Prozessors mit einer neuen Information geladen werden (d. h. vom Typ 1). Da die beiden Signale FESC100 und DPIPE 1-4 Binärsignale 1 sind, gelangt man in den END-Zyklus über die Schaltungen des Blockes 704-102.Während des END-Zyklus überträgt der Prozessor 700 unter der Mikroprogrammsteuerung Signale entsprechend dem ersten Wort des Übertragungsbefehls in die Register RBIR, RSIR, RBASA, RRDYA und R29 des Blockes 704-150 von dem Puffer 750-900 her über die ZIB-Leitungen 0-39.Unter der Annahme, daß der vorhergehende Befehl nicht ein Transferbefehl war, gibt der Prozessor 700 ein Signal an die RDIBUF-Leitung ab. Dadurch wird der Inhalt des RICA/RICB-Befehlsadressenregisters des Bereiches 750-9 zum Zwecke des Auslesens des nächsten Wortes des Übertragungsbefehls (Deskriptor 1) um 1 erhöht. Gleichzeitig damit werden die Signale auf den ZIB-Leitungen in die Register RBIR und RSIR geladen, und zwar auf das Auftreten der Signale SRBIR und SRSIR hin, die von dem Decoder 704-106 erzeugt werden, und zwar über die Schalter 704-172, 704-170 und 704-173. Die Bits 0-2 werden in das RBASA-Register 704-144 geladen, und die Bits 32-35 werden in das RRDXA-Register 704-158 geladen. Das Laden erfolgt dabei auf das Auftreten der Signale SRBASA und SRRDXA über die Schalter ZBASA, 704-175, 704-176 und 704-177. Das Bit 29 wird in das R29-Register auf das Auftreten des Signals SR29 über den Schalter 704-183 geladen. Unter der Annahme, daß der vorhergehende Befehl nicht ein Transferbefehl oder ein EIS-Befehl war, wird der Inhalt des Befehlszählers 704-310 durch den Addierer 704-312 über die Stellung 3 des ZIC-N-Schalters 704-314 um 1 erhöht (das ist der Wert 001).Der nächste Vorgang besteht darin, daß auf das Umschalten des FPOA-Zustand-Flipflops des Blockes 704-102 gemäß Fig. 3 hin in den Zyklus FPOA eingetreten wird. Das FPOA-Flipflop wird unter Hardware-Steuerung entsprechend folgender Boolscher Gleichung in den 1-Zustand gesetzt:SET = · (DIBFRDY · · DPIPE 1-4).Dies bedeutet, daß in den FPOA-Zyklus auf einen END-Zyklus hin eingetreten wird, wenn kein Haltezustand bezüglich des Pipeline-Vorgangs vorliegt (was bedeutet, daß das Signal HOLDI00 = 1 ist), daß der Befehlspuffer 750-900 nicht leer ist (d. h., daß DIBFEMTY00 = 1 ist), daß dieser Puffer zumindest einen Befehl bereitstellt für die Übertragung zu dem Prozessor 700 hin (d. h., daß DIBFRDY100 = 1 ist), daß der vorhergehene Befehl nicht ein Speichervergleichsbefehl war (d. h., daß STRCPR00 = 1 ist) und daß der auch als Fließbandverfahren zu bezeichnende Pipeline- Vorgang wieder in Betrieb genommen worden ist (d. h., daß das Signal DPIPE 1-4 = 1 ist).Zu diesem Zeitpunkt speichert das RBIR-Register 704-152 das Übertragungs-Befehlsoperationscodefeld sowie die Adressenmodifikationsfelder MF1 und MF2 für die Deskriptoren 1 bzw. 2. Während dieses Zyklus werden die Kennzeichen-Flipflops FID und FRL durch den Bits 30 und 31 des RBIR-Registers 704-152 entsprechende Signale gesetzt, die über den ZIDD-Schalter 704-180 auf das Signal ZIDD hin abgegeben werden, welches durch die Schaltungen des Blockes 704-124 erzeugt wird. Außerdem werden die R29- und RRDXA-Register 704-162 und 704-158 durch den Bits 29 und 32 bis 35 des RBIR-Registers 704-152 entsprechende Signale gesetzt, die über den ZIDD-Schalter 704-180 übertragen werden. In entsprechender Weise wird das RDESC1-Flipflop in den Binärzustand 0 als Folge des Setzens des FPOA-Zustand-Flipflops in den Binärzustand 1 zurückgesetzt.Unter einer Hardware-Steuerung wird der Wert "00" in das RDESC-Register 704-170 eingeführt. Dies bedeutet, daß das RDESCO-Flipflop des Registers 704-140 entsprechend folgendem Boolschen Ausdruck gesetzt bzw. zurückgesetzt wird:SET: RDEXCO = LARGECU-Feld-Verschied. Register +
kleines CU-Feld FMTD + DESC1 · (DNUM3EDIT) · FPOP
RESET: RDESCO = FPOA + großes CU-Feld + kleines CU-Feld.In diesem Falle wird das RDESCO-Flipflop in den Binärzustand 0 mit Rücksicht darauf zurückgesetzt, daß sich das FPOA-Zustand-Flipflop des Blockes 704-102 im 1-Zustand befindet.Das RDESC1-Flipflop wird entsprechend folgendem Boolschen Ausdruck gesetzt bzw. zurückgesetzt:SET: RDESC1 = großes CU-Feld + kleines CU-Feld + DESCO · FPOP ·
RESET: FPOA + (DESC1 · (DNUM3EDIT) · FPOP) + großes CU-Feld + kleines CU-Feld.Darüber hinaus wird der Inhalt des nächsten Wortes (Deskriptor 1) des an die Leitungen ZIB 0-39 abgegebenen Übertragungsbefehls in das RSIR-Register 704-154 auf das Auftreten des Steuersignals SRSIR hin geladen. Die Bits 0-2 werden in das RBASA-Register 704-156 von den ZIB-Leitungen her geladen, während die dem TA1-Feld entsprechenden Bits 21-22 in das RTYP-Register 704-160 über die ZIB-Leitungen auf das Auftreten der Signale SRBASA und SRTYP hin geladen werden, die durch die Schaltungen des Blockes 704-106 erzeugt werden.Der TA1-Feld-Wert von 00, der ein 9-Bit-Zeichen spezifiziert, wird über die Schalter 704-178 und 704-179 in das RTYP-Register 704-160 geladen. Dabei werden in das RBASA-Register 704-156 Nullen über die Schalter 704-174 und 704-175 geladen. Außerdem geben die Schaltungen der Blöcke 704-108 und 704-128 über die Leitung RDIBUF ein Binärsignal 1 ab. Dadurch wird der Inhalt des RICA/RICB-Befehlsadressenregisters um 1 erhöht, der aus dem dritten Wort des MLR-Befehls (Deskriptor 2) herausgelesen ist.Die über das RBIR-Register 704-152 an den CCS-Speicher 704-200 abgegebenen Operationscodesignale bewirken, daß der Inhalt des bezeichneten Speicherplatzes in das Ausgaberegister 704-202 auf das Auftreten eines Taktsignals hin ausgelesen wird.Aus Fig. 3 geht hervor, daß die Inhalte derart codiert sind, daß sie die folgenden Steuerinformationen enthalten:CCSO = 000
CCSR = 0011
CCSS = 111011 und
DDSI = unbeachtlich.Da das Feld CCSO Nullen enthält, bleibt das FNUM-Flipflop des Blockes 704-104 im 0-Zustand. Das CCSR-Feld ist so codiert, daß es ein 3-Wort-Feld bezeichnet; es wird dazu herangezogen, den Befehlszähler um den in Frage kommenden Betrag auf die Beendigung des MLR-Befehls hin zu inkrementieren. Außerdem wird ein für einen alphanumerischen Typ vorgesehenes Steuer-(FTA)-Flipflop in den 1-Zustand gesetzt, was kennzeichnend ist für eine Übertragung eines 9-Zeichens. Der 10-Bit-Operationscode (Bits 18-27) in dem RBIR-Register 704-152 wird durch den CCS-Speicher 704-200 in einen 6-Bit-Code transformiert, der sich eignet für die Steuerung und Auswahl der richtigen Steuerfolgen. Das CCSS-Feld wird durch die Schaltungen des Blockes 704-100 decodiert und legt danach die bestimmte Ablauffolge fest und bewirkt außerdem, daß das FPOP-Flipflop in den 1-Zustand geschaltet wird. Dies bedeutet, daß das CCSS-Feld auf seine Decodierung hin anzeigt, daß der Befehlstyp ein EIS-MLR-Befehl ist.Das FPOP-Flipflop wird entsprechend folgendem Boolschen Ausdruck gesetzt bzw. zurückgesetzt:SET: FPOP = FPOA · DEIS · · IBUFRDY · + usw.RESET: FPOP = In diesem Falle wird das FPOP-Zustand-Flipflop gesetzt, das das FPOA-Flipflop gesetzt ist (FPOA = 1), da das CCS-Feld einen EIS-Befehl festlegt (DEIS = 1),da außerdem die Befehle eines Blockes für eine Übertragung bereitstehen (IBUFRDY = 1) und da kein Deskriptor benötigt wird (d. h., daß = 1 ist).Während des ersten FPOP-Zyklus erzeugt die Adressenbildungseinheit 704-3 die durch das erste Deskriptorwort bezeichnete Adresse. Dies bedeutet, daß die Bits 0-20 (y) des RSIR-Registers 704-154 als Eingangsbits dem Addierer 704-322 zugeführt werden (das ist eine Deskriptor-Adresse), und zwar über den Schalter 704-326 und die UND-Glieder in Abhängigkeit von den Signalen des R29-Registers 704-162. Dieser Wert wird zum Inhalt des Adressenregisters hinzuaddiert, welches durch den Inhalt des RBASA-Registers ausgewählt ist, dessen Inhalt über den Schalter 704-328 abgegeben wird, wenn das Bit R29 ein 1-Bit ist. Da das Bit R29 ein 0-Bit ist, entspricht die effektive Adresse der Deskriptoradresse. Das Ausgangssignal des Schalters 704-328 ist durch Nullen gegeben, da der betreffende Schalter durch den Zustand des Bits 29 unwirksam gemacht ist. Der effektive Adressenwert wird zu einem Adressenmodifikationsfeld (X) hinzuaddiert, welches über den ZX-Schalter in Abhängigkeit vom Inhalt des RRDXA-Registers 704-158, des RTYP-Registers 704-160 und FNUM-Flipflops des Blockes 704-104 ausgewählt wird. Da diese Werte Nullen sind, ist das Adressenmodifikationsfeld Null bzw. durch Nullen gegeben.Der sich ergebende Wert wird dann in der TEAO-Stelle gespeichert, wie sie durch den Inhalt des RDESC-Registers 704-144 über den Schalter 704-334 bezeichnet ist. Der Addierer 704-320 addiert denselben resultierenden Wert zu einem Basiswert, der in einem Kurzzeit- bzw. Zwischenbasisregister gespeichert ist, was durch den Inhalt des RBASB-Registers 704-144 festgelegt ist. Es sei angenommen, daß der Basiswert Null ist. Demgemäß entspricht die resultierende Adresse der Deskriptoradresse. Der ZBASE-Wert wird außerdem über den Schalter 704-332 in dem TBASEO-Register gespeichert.Unter Hardware-Steuerung gibt der Prozessor 700 einen Cachespeicher-Lade-Vierer-Befehl an die Cachespeichereinheit 750 ab, da der Datentyp durch neun Bits gegeben ist, da außerdem RTYP = 0 ist, da die Länge ZLN ≠ 0 ist und da die Zeichenfolge nicht abgegeben worden ist (FE011 = 1). Dieser Befehl veranlaßt das Auslesen eines ersten 4-Wort-Blockes der Deskriptor-1-Daten aus dem Hauptspeicher 800.Der Lade-Vierer-Befehl wird wie folgt erzeugt. Die absolute Deskriptor-Adresse wird in das RADO-Register über den ZADOB-Schalter auf das Auftreten des Signals SRADO hin geladen, der durch die Decoderschaltungen 704-124 erzeugt wird. Darüber hinaus werden die Befehlsbits 1 und 4 und die Zonenbits 5-8 über den Schalter 704-40 anstelle der Bits 1 bis 8 von dem Schalter 704-46 abgegeben, während die Bits 0 und 9 als Nullen abgegeben werden. Die Bits 1-4 von dem RMEM-Register 704-130 werden in einen Befehlscode 0111 durch die Decoderschaltungen des Blockes 704-118 umgesetzt. Dieser Befehlscode spezifiziert eine Speicher-Lese-Viereroperation. Die Zonenbits 5-8 werden in 1-Bits über den Eingangsschalter 704-40 gesetzt und nicht für eine Lesevorgang herangezogen. Gleichzeitig damit erzeugen die Schaltungen des Blockes 704-108 den Lade-Vierer-Code "0110", der den Signalen MEM0TB bis MEM3TB entspricht. Diese Signale werden in Übereinstimmung mit folgenden Boolschen Ausdrücken erzeugt:MEM0TB = 0
MEM1TB = FPOP · DESCO · FE11N · MLR
MEM2TB
MEM3TB = 0Da das FPOP-Flipflop gesetzt ist, ist der Befehl ein MLR-Befehl, und außerdem ist die Deskriptorlänge nicht Null (DLNNZ = 1 ist durch das FIGNLEN-Steuerkennzeichen festgelegt). Diese Signale werden als Binärsignale 1 abgegeben, wenn das erste Flipflop-Deskriptorfeld (DESCO = 1), welches verarbeitet wird, nicht ausgegeben worden ist (FE11N = 0). Es dürfte ersichtlich sein, daß diese Werte alle als Binärwerte 1 zu Beginn der Befehlsausführung angenommen werden können.Diese Signale werden danach in das RMEMO-3-Register 704-130 über den Decoder 704-116 geladen. Der Inhalt des RMEMO-3-Registers 704-130 wird seinerseits an die DMEMO-3-Leitungen abgegeben. Außerdem erzeugen die Schaltungen des Blockes 704-108 Signale, die in das RSZ-Register 704-132 den Wert "00" einführen. Der Inhalt dieses Registers wird an die DSZ-Leitungen abgegeben, um ein Vollwort-Schreibsignal zu spezifizieren (welches nicht für die Erzeugung von Lade-Vierer-Befehlen herangezogen wird). Der Decoder 704-120 gibt an die DREQCAC- Leitung ein Binärsignal 1 auf die Decodierung des DMEM-Befehls hin ab, der in dem Register 704-130 gespeichert ist. Die BYPCAC-Leitung kann im Zuge der Erläuterung des Ausführungsbeispiels als ein Binärsignal 0 führende Leitung angenommen werden.Während des FPOP-Zyklus werden die dem TA1-Feld entsprechenden Signale aus dem RTYP-Register 704-160 über einen Schalter in der Einheit 720 entsprechend dem Zustand des RDESC-Registers 704-140 übertragen. Die Signale weisen einen Wert "00" auf, der angibt, daß das Deskriptor-1-Datenfeld bis aus 9-Bit-Zeichen besteht. Außerdem werden Signale entsprechend dem N1-Feld, welches kennzeichnend ist für die Länge des Operanden 1, aus dem RSIR-Register 704-154 über den ZLN-Schalter 722-82 in ein Längen-Register (RLN1) übertragen, welches in der Einheit 722 enthalten ist. Diese Signale werden für eine Grenzprüfoperation während des nächsten Zyklus herangezogen, der weiter unten noch erläutert werden wird.Ein Zeichenzeiger-RCN1-Register innerhalb der Zeicheneinheit 720 wird mit dem Wert geladen, der dem CN1-Feld des Deskriptors 1 entspricht, welches bzw. welcher über die Leitungen ASFA 34-36 und das RAD-Register 720-24 aus dem TEAO-Register der Bank 704-302 abgegeben worden ist, in welchem der Deskriptor 1 gespeichert war. Dieser Wert zeigt auf das Zeichen des ersten Datenwortes des Deskriptors 1 als Startzeichen für den Beginn einer Verarbeitung hin. Ein RPO-Register innerhalb einer Speicherbank der Einheit 722 wird mit dem Zeichenzeigerwert über die Leitungen ASFA 33-35 für die Kurzzeitspeicherung geladen.Anschließend werden dem MF2-Feld entsprechende Signale zu dem R29-Register 704-162, zu dem RRDXA-Register 704-158 und zu den FID- und FRL-Flipflops des Blockes 704-110 hin übertragen. Die Signale werden ebenfalls über den ZIDD- Schalter 704-185 von den Bitpositionen 11-17 des RBIR- Registers 704-152 abgegeben. Bezüglich dieser Werte ist angenommen, daß sie alle durch Nullen gebildet sind, wodurch angezeigt wird, daß keine Modifikation bezüglich der Deskriptor-2-Daten vorhanden ist. Das RDESC-Register 704-140 wird unter einer Hardware-Steuerung mit dem Wert "01₂" zur Bezeichnung einer Deskriptor-2-Operation geladen. Hierbei bleibt das RDESCO-Flipflop zurückgesetzt, während das RDESC1-Flipflop in den 1-Zustand gesetzt wird, da der Deskriptor 1 verarbeitet worden ist (DESCO = 1), da der Zyklus ein FPOP-Zyklus ist (FPOP = 1) und da der Befehl nicht ein Speicherbefehl ist (MEM zu MEM oder MEM zu REG - = 1).Zugleich wird der nächste Deskriptorwert für den Deskriptor 2 abgerufen, und Teile des Deskriptors werden für eine spätere Überprüfung durch den Prozessor 700 unter einer Mikroprogrammsteuerung aufbewahrt. Dies bedeutet, daß der Deskriptor-2-Inhalt, der an die ZI-Leitungen abgegeben ist, in das RSIR-Register 704-154 geladen wird, während die Bits 0-2 und 21-22 von den ZIB-Leitungen in das RBASA-Register 704-156 bzw. in das RTYP-Register 704-160 geladen werden.Zu diesem Zeitpunkt enthält das RSIR-Register 704-154 den Deskriptor 2, das R29-Register 704-156 enthält Nullen, wodurch keine Adressenregistermodifikation angezeigt ist, und das RTYP-Register 704-160 enthält Nullen, wodurch angezeigt wird, daß das Deskriptor-2-Datenfeld bis aus 9-Bit-Zeichen besteht. Wie bereits erwähnt, unterteilt die Zyklusanordnung bei der bevorzugten Ausführungsform einen T-Taktzyklus in erste und zweite Hälften. Dies bedeutet, daß dann, wenn das Signal FHT100 ein Binärsignal 1 ist, die erste Hälfte eines T-Taktzyklus festgelegt ist. Wenn das Signal FHT100 ein Binärsignal 0 ist, ist dadurch die zweite Hälfte eines T-Taktzyklus f 72731 00070 552 001000280000000200012000285917262000040 0002002949793 00004 72612estgelegt.Während der ersten Hälfte des T-Taktzyklus werden entweder Befehle aufgerufen, oder Speicherdaten werden in den Cachespeicher 750-300 eingeschrieben. In beiden Fällen ist die Ebene, zu der ein Zugriff erfolgt, bereits festgelegt. Dies bedeutet bezüglich der Befehle, daß die Ebene entweder in dem RICA- oder in dem RICB- Befehlsadressenregister zu dem Zeitpunkt gespeichert ist, zu dem ein IF1-Befehl oder ein IF2-Befehl ausgeführt wurde, der von dem Prozessor 700 aufgenommen worden ist. Bezüglich Speicherdaten wird die Ebene in einem der Registerspeicherplätze des Transitblockpuffers 750-102 als Ergebnis der Tatsache gespeichert, daß die Schaltungen des Blockes 750-520 einen Ausfallzustand ermittelt haben, durch den der Cachespeicher 750 veranlaßt worden ist, die angeforderten Daten aus dem Speicher aufzurufen. Während der zweiten Hälfte eines T-Taktzyklus erfolgt entweder ein Zugriff zu Operandendaten in dem Cachespeicher, oder Prozessordaten werden in den Cachespeicher eingeschrieben, und zwar in Übereinstimmung mit den Ergebnissen einer Adreßlistensuche.Es sei angenommen, daß vor der Erzeugung des Lade- Vierer-Befehls der Prozessor 700 Befehle aus dem Cachespeicher 750-300 aufgerufen hat, indem die Adresse und die Ebenen-Information herangezogen wird, die in dem RICB-Register 750-902 enthalten ist.Der Lade-Vierer-Befehl wird auf die Aufnahme durch die Cachespeichereinheit 750 hin mittels der Decoderschaltungen 750-922 decodiert. Gemäß der vorliegenden Erfindung bewirkt, wie dies aus Fig. 7e hervorgeht, das Signal DCDLDQUAD100, welches von den Decoderschaltungen 750-922 erzeugt wird, daß das LDQUAD- Flipflop 750-91620 in den 1-Zustand überführt wird. Darüber hinaus veranlassen die Decoderschaltungen 750-922 auf das Auftreten des LDQUAD-Befehles hin die Schaltungen des Blockes 750-920, Signale zum Laden des anderen Befehlsadressenregisters zu erzeugen. Dabei ist angenommen, daß es sich dabei um das RICA-Register handelt, welches mit Signalen entsprechend dem inkrementierten Wert der Adresse geladen wird, die in dem Lade- Vierer-Befehl enthalten ist. Dies bedeutet, daß während des ersten T-Taktzyklus die Adressensignale von dem Schalter 750-530 her um 1 erhöht werden. Dies geschieht durch die Schaltung 750-912. Sodann werden die erhöhten Adressensignale in die Adressenbitpositionen des RICA- Befehlsadressenregisters 750-900 geladen, und zwar auf das Auftreten des 1/2-T-Taktsignals CLKHT100 hin, wenn das Signal RICA100 als Binärsignal 1 auftritt. Das Signal RICA100 wird von den Schaltungen 750-920 als Binärsignal 1 abgegeben, wenn das Signal ENBSTRBA000 gemäß Fig. 7d während der ersten Hälfte des ersten T-Taktzyklus als Binärsignal 0 abgegeben wird.Die Lade-Vierer-Befehlsadresse wird außerdem als Eingangssignal an die Adreßlistenschaltungen des Blockes 750-502 über den ZDAD-Schalter 750-530 für die Ausführung eines Suchbetriebszyklus abgegeben. Da der Datenblock nicht in dem Cachespeicher enthalten ist, erzeugen die Schaltungen des Blockes 750-512 die in Frage kommenden Treffersignale RAWHIT00, HITTOTB010 und HITTOIC010, die kennzeichnend sind für einen Ausweich- bzw. Fehlzustand und die an die Bereiche 750-1, 750-5 bzw. 750-9 werden. Im Falle eines Ausweich- bzw. Fehlzustandes schalten die Schaltungen des Blockes 750-526 gemäß Fig. 7c das Adreßlistenzuteilungs-Flipflop 750-52600 in den Binärzustand 1 um, und zwar auf das Auftreten des Signals RAWHIT000, bei dem es sich um ein Binärsignal 1 handelt. Das Signal ALTHIT000, welches ein Binärsignal 1 ist, bewirkt, daß die aus der Adreßliste 750-500 ausgelesenen Umlaufsignale in das Register 750-50400 geladen werden. Die Umlaufsignale werden um 1 inkrementiert bzw. erhöht, so daß sie kennzeichnend sind für die nächste Ebene, die zu ersetzen ist. Außerdem werden die betreffenden Signale in den adressierten Speicherplatz der Adreßliste 750-500 wieder eingeschrieben.Die Umlaufsignale von dem Register 750-50400 werden außerdem als Signale TBRR 0100-2100 an den Transitblockpuffer 750-102 abgegeben, um in diesen anschließend geladen zu werden.Ferner werden die Voll/Leer-Bits und die höherwertigen Bits der LDWUAD-Befehlsadresse (das sind die Bits 10-23) in die Adreßlisten 750-500 und 750-502 an der Stelle eingeschrieben, die durch die niederwertigen Bits der Lade-Vierer-Adresse spezifiziert ist (das sind die Bits 24-33). Auf das Auftreten des nächsten T-Taktes hin wird das FDIRASN-Flipflop in den Null-Zustand zurückgesetzt, wodurch der Adreßlistenzuteilungszyklus abgeschlossen ist.Es sei darauf hingewiesen, daß aufgrund des Vorliegens eines Ausweich- bzw. Fehlzustandes die Decodierung des Lade-Vierer-Befehls bewirkt, daß das Ebene-1-Gültigkeitsbit und die Treffer/Fehl-Positionen des RICA-Befehlsadressenregisters 750-900 in den 1-Zustand bzw. 0-Zustand gesetzt werden (dies bedeutet, daß das Treffersignal HITTOC7100 ein Binärsignal 0 ist). Demgemäß werden die Ebenen-Signale, die in die Ebene-1-Bitpositionen des RICA-Befehlsadressenregisters 750-900 geladen werden, unberücksichtigt gelassen, da dem Prozessor 700 signalisiert worden ist, anschließend den Block der Datenwörter aufzunehmen, die auf das Auftreten des Lade- Vierer-Befehls hin aus dem LQBUF-Puffer 750-706 abgerufen worden sind und nicht aus dem Cachespeicher 750-300 (was bedeutet, daß eine Signalisierung über die USETBRDY- Leitung erfolgt ist).Vor dem Umschalten des FLDTBVALID-Flipflops 750-11414 gemäß Fig. 7a werden vor dem Adreßlisten-Zuteilungszyklus die Schreibadressensignale FTBPTR0100 bis 1100 von dem Eingangszeigeregister 750-106 decodiert, was zum Einschreiben der LDQUAD-Befehlsadresse in den nächsten verfügbaren Speicherplatz des Transitblockpuffers 750-102 führt. Dies bedeutet, daß auf das Auftreten des T-Taktes hin, der die Adreßlistensuche abschließt, einer der Transitblockplätze des Puffers 750-102 mit den LDQUAD- Adressensignalen als Folge eines Fehl-Zustands geladen ist. Gleichzeitig wird ein entsprechender Platz in der Befehlsschlange 750-108 mit der erforderlichen Steuerinformation geladen, die für die Übertragung des LDQUAD-Befehls zu dem Speicher hin erforderlich ist.Das Signal HOLDLDQUAD000 wird durch das NAND-Glied 750-91626 als Binärsignal 0 abgegeben, wenn der Prozessor 700 das Signal RDIBUF/ZDI100 als Binärsignal 1 abgibt. Dies bewirkt, daß die UND/NAND-Glieder 750-11714 bis 750-11716 die internen Haltesignale HOLDDMEM 000-003 als Binärsignale 0 abgeben. Dadurch werden weitere Operationen hinsichtlich der Ausführung durch die Cachespeicherbereiche 750-1, 750-5 und 750-9 festgehalten, bis bestimmt ist, daß das angeforderte Datenwort aus dem Speicher aufgerufen worden ist, wie dies erläutert worden ist.Da das Signal HOLDMEM000 ein Binärsignal 1 ist, wird auf das Auftreten des T-Taktsignals hin das FLDTBVALID- Flipflop 750-11414 in den 1-Zustand gesetzt. Dies bedeutet, daß im Falle eines Ausweich- bzw. Fehl-Zustands das Signal HITTOTB010 bewirkt, daß das FLDTBVALID-Flipflop 750-414 gemäß Fig. 7a auf das Auftreten des T-Taktsignals hin in den 1-Zustand umschaltet, wenn das FDIRASN-Flipflop gesetzt ist. Auf das Auftreten des nächsten T-Taktsignals hin bewirkt dies, daß der Inhalt der Eingabezeigeregister 750-106 und 750-108 um Eins erhöht wird, und zwar im Zuge der Vorbereitung des nächsten Befehls. Die in Frage kommenden Steuerkennzeichenbits werden gesetzt und in den Pufferkennzeichenteil des Transitblockpuffers 750-102 eingeschrieben.Wie aus Fig. 7a hervorgeht, führt das Decodieren des LDQUAD-Befehls durch die Decoderschaltungen 750-113 dazu, daß das FLDQUAD-Flipflop 750-11422 im Falle eines Fehl-Zustands in den 1-Zustand geschaltet wird (was bedeutet, daß das Signal SETLDTBVALID100 als Binärsignal 1 auftritt). Darüber hinaus schaltet des FLDQUAD-Flipflop 750-11422 auf das Auftreten des Signals LDQUAD100 von den Decoderschaltungen 750-113 her in den 1-Zustand um. Außerdem veranlassen die Signale LDQUAD100 und RLDQUADFLG100 die Schaltungen des Blockes 750-113 gemäß Fig. 7a, die Signale LQBUF100 und RESETBUF100 als Binärsignale 1 abzugeben. Wie aus Fig. 7d hervorgeht, setzen diese Signale die Speicherstellen des LDQUAD- Puffers 750-706 auf Null zurück.Die Schreib-Kennzeichen- und Lade-Vierer-Kennzeichenbitpositionen des Kennzeichenspeichers 750-10238 werden in die Binärzustände 1 überführt, und zwar infolge des Auftretens der Signale FORCEBYP000 und FLDQUAD100 als Binärsignale 1. Das Signal FORCEBYP100 wird von der UND-Schaltung 750-52630 erzeugt; es ist normalerweise ein Binärsignal 1. Das Signal FLDQUAD100 wird von dem FLDQUAD-Flipflop erzeugt, wenn das FLDTBVALID-Flipflop 750-11424 in den Binärzustand 1 umschaltet.Auf das Auftreten des T-Taktsignals des Adreßlisten- Zuteilungszyklus hin wird der LDQUAD-Befehl aus dem Transitblockpuffer 750-102 ausgelesen, und zwar auf das Auftreten der Ausgaberzeiger-Adressensignale von der Befehlsschlange 750-107 her. Der betreffende Befehl wird in das RDTS-Register 750-119 über die ZTBC-Stellung des ZDTS-Schalters 750-118 abgegeben. Die Ebenen-Signale TBRR 0100-2100 werden in den adressierten Transitpufferplatz auf das Auftreten des 1/2-T-Taktsignales hin geladen. Der LDQUAD-Befehl wird zu der Systemschnittstelleneinheit 100 hin auf den DTS-Leitungen über den Schalter 750-120 gemäß Fig. 4 übertragen. Die in Frage kommenden Speicheridentifizierungssignale werden in das RMITS-Register 750-124 geladen, und Steuersignale werden in das Steuerregister (nicht dargestellt) geladen. Diese Signale werden an die Leitungen MITS bzw. SDTS abgegeben. Bezüglich einer weiteren Information betreffend die Erzeugung und Ausnutzung der Steuersignale sei auf die US-PS 40 06 466 hingewiesen.Wenn die Paare der Datenwörter des Blockes nunmehr zu der Cachespeichereinheit 750 übertragen sind, werden das Bit 1 der RMIFS-Leitung und die Signale FARDA000 und FDPFS100 derart codiert, daß festgelegt ist, welches Paar (normalerweise gerade/ungerade, wobei 0 = gerade = Wörter 0, 1 und 1 = ungerade = Wörter 2, 3 bedeutet und welches Wort des betreffenden Paares übertragen wird. Aus Fig. 7a geht dabei hervor, daß die Vergleicherschaltung 750-11437 freigegeben ist, wenn das Signal DATA100 ein Binärsignal 1 ist.Aus Fig. 7e geht hervor, daß die Zustände der Signale ZLEV1LOC000 und ZLEV1LOC100, die von dem UND/NAND- Glied 750-92130 in Übereinstimmung mit dem Setzen der Treffer/Fehl-Bitposition des RICA-Befehlsadressenregisters 750-900 erzeugt werden, das UND/ODER- Glied 750-92137 veranlassen, das Signal USETBRDY100 als Binärsignal 1 abzugeben. Dieses von den Schaltungen des Blockes 750-920 erzeugte Signal zeigt an, daß die Cachespeichereinheit 750 auf Daten wartet, die in den LDQUAD-Puffer 750-706 eingeschrieben wurden bzw. sind.Die Signale ZEXT0100 und ZEXT1100, die von den Bitpositionen 8 und 9 des RICA-Befehlsadressenregisters 750-900 durch die Schaltungen des Blockes 750-920 erzeugt sind, werden mit den Signalen MIFS1100 und DATAODD100 verglichen, um eine Anzeige in dem Fall zu liefern, daß das angeforderte Datenwort dasjenige Datenwort ist, welches aufgenommen worden ist.Wenn die Vergleicherschaltung 750-11437 festlegt, daß das Datenwort, welches in den LDQUAD-Puffer 750-706 eingeschrieben wird, dasselbe Wort ist wie das Datenwort, welches angefordert ist, und wenn das Lese-Lade- Vierer-Signal RLDQUADFLG100, welches aus dem Speicher 750-10238 ausgelesen worden ist, ein Binärsignal 1 ist, dann gibt die Schaltung 750-11437 das Signal LQCMPR000 als Binärsignal 0 ab, und zwar etwas vor dem Auftreten des 1/2-T-Taktsignals. Dies veranlaßt das NAND-Glied 750-91626, das Signal HOLDLDQUAD000 als Binärsignal 1 abzugeben, wodurch der Prozessor 700 aus seinem Haltezustand ausgelöst wird.Aus Fig. 7d geht hervor, daß die Signale ZEXT0100 und ZEXT1100 die verschiedenen Speicherchips in den Stand versetzen, gleichzeitig die Inhalte eines bezeichneten Speicherplatzes der vier Speicherplätze auszulesen. Wenn ein Datenwort in den adressierten Speicherplatz eingeschrieben wird, dann wird das in Frage kommende Gültigkeitsbit-Signal, welches aus dem betreffenden Speicherplatz ausgelesen ist, als Binärsignal 0 abgegeben (das ist das Signal LQBUFV000).Im einzelnen sei angenommen, daß das erste aufgenommene Datenwort das geradzahlige Wort des ersten Wortpaares ist. Auf das Auftreten des an die ARDA-Leitung abgegebenen Signales hin wird das geradzahlige Wort des ersten Wortpaares in das RDFS-Register 750-702 auf das Auftreten des T-Taktsignales hin geladen. Auf das Auftreten eines ersten 1/2-T-Taktsignales hin wird der Inhalt des RDFS-Registers in den LDQUAD-Puffer 750-706 in der geradzahligen Speicherstelle für das Wortpaar eingeschrieben, welches durch die Zustände der Signale FARDA000, FDPFS100 und RMIFS1100 spezifiziert ist, wobei das Gültigkeitsbit-Signal LQBUFV000 für den betreffenden Speicherplatz auf Null gesetzt ist.Wenn der Prozessor 700 auf das geradzahlige Datenwort wartet, geben die Schaltungen des Blockes 750-114 das Signal LQCMPR000 als Binärsignal 0 ab. Auf das Auftreten des zweiten 1/2-Taktsignales hin wird der Inhalt des RDFS-Registers 750-702 in einen ungeradzahligen Speicherplatz für das betreffende Wortpaar eingeschrieben, und das Gültigkeitsbit-Signal LQBUFV100 wird als Binärsignal 0 abgegeben.Die oben beschriebenen Operationen werden für das zweite Paar der Datenwörter wiederholt. Wenn das ungeradzahlige Wort des zweiten Wortpaares in den LDQUAD-Puffer 750-706 eingeschrieben wird, und zwar in den Speicherplatz, der durch die Signale FARDA000, FDPFS100 und RMIFS1100 spezifiziert ist, dann ist die Übertragung abgeschlossen. Zu diesem Zeitpunkt wird das dem betreffenden Befehl zugehörige Transitblock-Gültigkeitskennzeichen auf Null zurückgesetzt. Da das Cachespeicher-Schreibkennzeichen für den Befehl in den Binärzustand 1 gesetzt war, werden die Datenwörter außerdem in den Cachespeicher 750-300 über das RDFSB-Register 750-712 auf das Auftreten des 1/2-T-Taktsignales hin eingeschrieben. Dadurch wird die Ausführung des ersten LDQUAD-Befehls durch die Cachespeichereinheit 750 beendet.Derselbe Typ von Operationen, die während des FPOP1-Zyklus ausgeführt werden, wird während des FPOP2-Zyklus ausgeführt, allerdings mit der Ausnahme, daß kein Lade- Vierer-Befehl für die Adresse abgegeben wird, die unter Heranziehung des Deskriptors 2 erzeugt wird.Die dem Y-Adressenwert des Deskriptors 2 (RSIR 0-20) entsprechenden Signale, die in das RSIR-Register 704-154 während des zweiten FPOP-Zyklus geladen worden sind, werden über den ZY-Schalter 704-326 übertragen, um mit dem Index (X) oder mit den Adressenregister-(AR)-Werten von dem ZX-Schalter 704-58 bzw. der Registerbank 704-304 durch den Addierer 704-322 kombiniert zu werden. Da keine Index- oder Adressenregistermodifikation vorliegt (MF2 = 0), sind die an die Leitungen ZAR 0-23 und ZAR 0-20 abgegebenen Werte Nullen. Demgemäß wird der Deskriptor-2-Adressenwert zu der TEA1-Speicherstelle der Bank 704-302 hin übertragen, die durch den Inhalt des RDESC-Registers 704-144 ausgewählt ist, und an das RADO-Register 704-46 über die ASFA-Leitungen und den Addierer 704-320 abgegeben. Es sei darauf hingewiesen, daß der in Frage kommende Basiswert zu der Deskriptor-2-Adresse in derselben Weise hinzuaddiert wird, wie dies im Zusammenhang mit dem Deskriptor 1 zuvor beschrieben worden ist.Während des zweiten FPOP-Zyklus wird außerdem das RTF2- Register 720-46 mit dem TA2-Feld entsprechenden Signalen über das RTYP-Register 704-160 geladen. Auch hier zeigt der "00"-Wert an, daß die Deskriptor-2-Daten aus 9-Bit- Datenzeichen bestehen. Das RLN2-Register innerhalb der Zeicheneinheit wird mit dem N2-Feld entsprechenden Signalen von den RSIR-Leitungen her geladen. Dieser Wert zeigt die Länge des Deskriptor-2-Datenfeldes an.Darüber hinaus wird das RCN2-Register 720-30 mit dem Zeichenzeigerwert über die ASFA-Leitungen 34-36 geladen. Dies zeigt an, welches Zeichen des ersten Datenwortes des Deskriptors 2 das erste Zeichen in dem zu verarbeitenden Feld ist. Außerdem werden die Register RP1 und RP6 in der Zeicheneinheit 722 mit dem Zeichenzeigerwert bzw. mit einem Wortzeigerwert für eine kurzzeitige Speicherung geladen. Auch hier führt die RDIBUF-Leitung ein Binärsignal 1, um das RICB-Befehlsregister derart voreinzustellen, daß es auf den nächsten Befehl zeigt. Darüber hinaus werden Adressenbits aus dem RADO-Register in Flipflops (nicht dargestellt) für Grenzprüfzwecke geladen.Während des FPOP2-Zyklus werden der Längenwert und die Zeichen-Startpositionswerte unter Mikroprogrammsteuerung in einem Addierer AL verknüpft, und das Ergebnis wird in einer Registerbank innerhalb der Zeicheneinheit 722 aufbewahrt.Dies geschieht dazu zu bestimmen, ob ein Abgabezustand während des ersten Zyklus auftritt. Wie bereits erwähnt, gibt der Wert 16 die Anzahl von Bytes an.Wie aus dem Flußdiagramm gemäß Fig. 8 hervorgeht, wird in einem FESC-Zyklus eingetreten, nachdem das FESC-Steuerzustands-Flipflop in den 1-Zustand umgeschaltet ist. Das FESC-Flipflop wird entsprechend folgenden Boolschen Gleichungen gesetzt bzw. zurückgesetzt:SET: FESC = (FPOP · RESET: FESC = In diesem Falle wird das FESC-Flipflop gesetzt, da das FPOP-Flipflop gesetzt ist (FPOP = 1), und das Flipflop wird nicht wieder gesetzt ( = 1), da angenommen ist, daß kein Betriebsbeginn vorliegt, der durch Mikroprogrammsteuerung bezeichnet ist (siehe Boolschen Ausdruck - DPIPE-Feld).Während dieses Zyklus wird die Länge der Zeichenfolge 1 mit der der Zeichenfolge 2 verglichen. Wenn die Längen der Folge 1 und der Folge 2 nicht gleich sind, wird entweder die Abbrechungsanzeige gesetzt, oder eine 0-Füllanzeige wird erzeugt. Unter der Annahme, daß die beiden Längen gleich sind, geschieht nichts. Da ein Umweg, keine Länge in dem Register, etc. vorhanden ist, zeigt dies an, daß weniger als 4095 Bytes zu übertragen sind (dies bedeutet, daß das Längenregister eine Länge von 12 Bits besitzt - 2¹²).Wie aus Fig. 8 hervorgeht, wird mit Rücksicht darauf, daß das TA1-Feld - welches über die Vektorverzweigungsschaltungen des Blockes 702-1 getestet wird - den Wert "00" gespeichert hat, der 9-Bit-Datenzeichen spezifiziert, der Prozessor 700 zu einem A5-Betriebszyklus hin verzweigen. Während dieses Zyklus wird unter Steuerung eines Mikrobefehlswortes mit einem Feld vom Typ A = 4 eine sechzehnfache Vektorverzweigung auf der Grundlage der Startzeichenpositionen (das ist die Beziehung von OP1 zu OP2) ausgeführt, um zu bestimmen, auf welche Weise die Datenzeichen zu verschieben sind, um sie richtig auszurichten. Außerdem werden die Register RDESC und RBASAB auf den Wert "01" gesetzt, und zwar zum Zwecke der Auswahl der Deskriptor-2-Zwischenregister.Unter der Annahme, daß OP1 mit Byte 1 des Wortes 0 und daß OP2 mit Byte 2 des Wortes 0 beginnt, erfolgt die Verzweigung zu dem Zyklus A12 hin. Dieser Zyklus beginnt mit einer Folge von Zyklen, durch die der Prozessor 700 die aufgerufenen Deskriptor-1-Datenzeichen zu den Speicherplätzen hin überträgt, die durch das Adressenfeld des zweiten Deskriptors spezifiziert sind. Während der Ausführung der Übertragungsoperation durch den Prozessor werden die Längenwerte N1 und N2 jeweils verkleinert, um der Anzahl der Zeichen zu folgen, die verarbeitet worden sind. Diese Operation setzt sich solange fort, bis der Aufnahme-Folgewert N1 ausgegeben ist.Da die Einzelheiten dieser Betriebsweise für ein Verständnis der vorliegenden Erfindung nicht wichtig sind, wird die Operation lediglich kurz erläutert. Die Operation ist lediglich in dem Maße von Bedeutung, als sie zur Erzeugung von weiteren LDQUAD-Befehlen führt, die zum Aufrufen von zusätzlichen Deskriptor-1-Datenzeichen erforderlich sind, wie dies erläutert wird.Wie aus Fig. 8 hervorgeht, erzeugt der der Prozessor 700 einen Schreibdoppelzonenbefehl unter einer Mikroprogrammsteuerung. Der Prozessor 700 gibt dabei den Bits 5 bis 8 insbesondere einen Wert von 1111, wodurch festgelegt ist, daß die Bytes jedes Wortes des Wortpaares unter der Deskriptor-2-Adresse auf das Auftreten des Schreibbefehles hin eingeschrieben werden. Ein in der Einheit 722 enthaltenes Ausgangs-Zonennetzwerk erzeugt auf die in dem RP6-Register und demd RLN2-Register gespeicherten Werte hin ein 8-Bit-Feld, welches angibt, welches Byte in dem Speicher zu überschreiben ist. Außerdem gibt der Prozessor 700 unter der Mikroprogrammsteuerung den Befehlsbit 1-4 einen Code 1101, wodurch angegeben ist, daß der ZAC-Befehl von Schreibdoppelzonentyp ist. Die aus dem TEA1-Register ausgelesene Deskriptor-2-Adresse wird zu dem indem TBASE1-Register gespeicherten Basiswert addiert, und die resultierende Schreibadresse wird in das RADO-Register 704-46 geladen.Der ZAC-Befehl wird dann in die Cachespeichereinheit 750 zur Verarbeitung abgegeben. Darüber hinaus gibt der Prozessor 700 unter der Steuerung des MEMADR-Feldes an die DMEM-Leitungen einen Code von 1110 ab, wodurch der Cachespeichereinheit 750 signalisiert wird, daß eine Schreibdoppeloperation auszuführen ist. Außerdem wird an die DREQCAC-Leitung ein Binärsignal 1 abgegeben, wodurch der Cachespeichereinheit 750 der Befehl signalisiert wird, der an die Leitungen ZADO/RADO abgegeben wird.Wenn die Datenwörter, die von dem von dem Cachespeicher 750 abgegebenen LDQUAD-Befehl angefordert sind, nicht in dem Cachespeicher enthalten sind, führt dies zur Erzeugung des Signals CPSTOP000 über das Signal HOLDLDQUAD000, wenn der Prozessor 700 das Signal RDIBUF/ZDI100 als Binärsignal 1 abgibt. Dies veranlaßt den Prozessor 700, weitere Operationen anzuhalten bzw. stillzusetzen, bis die angeforderten Datenwörter in der Cachespeichereinheit 750 gespeichert sind.Wie aus Fig. 7e hervorgeht, wird das Signal HOLDLDQUAD000 als Binärsignal 1 auftreten, sobald das Signal LQCMP000 als Binärsignal 0 auftritt, wodurch angezeigt wird, daß das von dem Prozessor 700 angeforderte Datenwort in dem LDQUAD-Puffer 750-106 enthalten ist. Danach wird das Gültigkeitsbit-Signal LQBUFV000 als Binärsignal 0 abgegeben, wodurch das Signal HOLDLDQUAD000 als Binärsignal 0 festgehalten wird. Gleichzeitig wird der Schreibdoppelzonenbefehl erzeugt.Das Signal RDIBUF/ZDI100 bewirkt außerdem, daß das durch die Signale ZEXT0100 und ZEXT1100 bezeichnete Datenwort über den ZDIN-Schalter und die Stellung 3 des ZDI-Schalters ausgelesen und in das RDI-Datenregister des Prozessors auf das Auftreten des T-Taktsignals hin eingetastet wird. Außerdem wird der Adresseninhalt des RICA-Registers um 1 vergrößert.Der Prozessor 700 gibt die in RP4 und RXPA gespeicherten Operand-1-Werte an ein Eingangszonennetzwerk ab. Außerdem wird die Abgabe-Anzeige in Abhängigkeit von der Länge des Operanden 1 gesetzt. Wenn ein Zeichenfolgen/Operand-1-Abgabe-Zustand vorliegt, werden Füllzeichen an den in Frage kommenden Stellen untergebracht. Wenn beispielsweise die Länge der Zeichenfolge 2 tausend Bytes und die der Zeichenfolge 1 drei Bytes beträgt, dann bedeutet dies, daß drei Daten-Bytes übertragen werden und daß die übrigen 997 Bytes Füllzeichen sind.Wie aus Fig. 8 hervorgeht, beginnt der Prozessor 700 nach Beendigung des A12-Zyklus den Zyklus A20. Das Signal RDIBUF/ZDI100 wird wieder als Binärsignal 1 abgegeben, um das nächste Datenwort aufzurufen, da ein Schreibdoppelbefehl bzw. Doppelschreibbefehl zuvor ausgegeben wurde. Das Eingangsnetzwerk wird wiederum durch die in den Registern RXPA und RP4 gespeicherten Werte gesteuert. Das erste Datenwort wird aus dem RDI-Datenregister in ein Kurzzeit- bzw. Zwischenregister TR3 in der Einheit 714 übertragen. Außerdem werden die Inhalte der Register TR3 und RD4 verschoben, wenn eine Ausrichtung erforderlich ist, und das resultierende erste Datenwort des Schreibdoppelbefehls wird in das RADO-Register geladen, um zu der Cachespeichereinheit 750 hin während des nächsten Zyklus übertragen zu werden. Außerdem wird der Längenwert bezüglich der Zeichenfolge 2 um 4 (ein Wort) verringert. Tatsächlich erfolgt keine Verschiebung, wenn die Startadressen der beiden Zeichenfolgen identisch sind.Da angenommen ist, daß kein Abgabezustand vorliegt, beginnt der Prozessor 700 mit dem Zyklus A20. Das Datenwort in dem RDI-Datenregister und der Inhalt des Registers TR3 werden in der in Frage kommenden Richtung verschoben, wenn die Ausrichtung der beiden Zeichenfolgen erforderlich ist. Das Ergebnis wird dann in das RADO-Register 704-46 geladen, um zu der Cachespeichereinheit 750 während des nächsten Zyklus übertragen zu werden. Unter der Annahme, daß die Zeichenfolge 2 nicht abgegeben ist, läuft der Prozessor 700 zu dem nächsten Mikrobefehlswort hin weiter, um mit dem Zyklus A22 zu beginnen.Es sei darauf hingewiesen, daß die in diesem Zyklus ausgeführten Operationen die gleichen Operationen sind wie jene im Zyklus A12. Dies bedeutet, daß der Prozessor 700 einen weiteren Schreibdoppelzonenbefehl erzeugt und daß das Signal RDIBUFI100 als Binärsignal 1 auftritt. Dies erfolgt solange, bis die durch den Lade- Vierer-Befehl aufgerufenen Datenwörter abgegeben bzw. ausgegeben sind.Es dürfte einzusehen sein, daß dann, wenn beide Zeichenfolgen in ausgezeichneter Weise ausgerichtet sind, der Prozessor 700 derart arbeitet, daß er zwei Schreibbefehle für einen Lade-Vierer-Befehl erzeugt. In anderen Fällen, in denen die Zeichenfolgen erheblich fehlerhaft ausgerichtet sind, werden zwei Lade- Vierer-Befehle erzeugt.Während des Zyklus A22 wird die aus dem Register TEA1 ausgelesene Deskriptor-2-Adresse um 2 (Wort) erhöht, und zwar über den Addierer 704-322. Das Ergebnis wird in das TEA1-Register wieder eingeschrieben. Der in dem TBASE1-Register gespeicherte Basiswert wird zu der vergrößerten Adresse durch den Addierer 704-320 hinzuaddiert, und die resultierende Adresse wird in das RADO-Register 704-46 geladen. Wie im Zyklus A12 werden die Werte an die Eingangs- und Ausgangszonennetzwerke abgegeben, und jegliche Abgabezustände werden eingestellt.Während des Zyklus A23 werden dieselben Operationen ausgeführt, wie sie im Zyklus A20 bezeichnet sind. Das nächste Datenwort wird aufgerufen, und das erste Datenwort des zweiten Schreibbefehls wird in das RADO-Register 704-46 geladen. Unter der Annahme, daß keine Abgabe bzw. Ausgabe vorliegt, beginnt der Prozessor 700 mit dem Zyklus A24. In entsprechender Weise wie beim Zyklus A21 wird das zweite Datenwort des zweiten Schreibbefehls erzeugt und in das RADO-Register 704-46 geladen. Außerdem werden die Register RDESC und RBASB mit dem Wert "00" geladen, um die Kurzzeit- bzw. Zwischenregister des ersten Deskriptors auszuwählen. Unter der Annahme, daß keine Abgabe bzw. Ausgabe vorliegt, beginnt der Prozessor 700 den Zyklus A25 auszuführen.Während dieses Zyklus wird die aus dem TEAO-Register ausgelesene Deskriptor-1-Adresse durch den Addierer 704-322 um 4 erhöht, und das Ergebnis wird in das TEAO-Register wieder eingeschrieben. Die vergrößerte Adresse wird zu der Basiswert-Zeichenfolge in dem TBASEO-Register hinzuaddiert, und die resultierende Adresse wird in das RADO-Register 704-46 geladen. Der Prozessor 700 erzeugt unter Mikroprogrammsteuerung einen zweiten Lade-Vierer- Befehl, indem die Befehlsbits 1-4 ein Code von 0111 gegeben wird. Dadurch ist angegeben, daß der ZAC-Befehl an die Cachespeichereinheit 750 zur Verarbeitung abgegeben ist.Darüber hinaus gibt der Prozessor 700 unter der Steuerung durch das MEMADR-Feld an die DMEM-Leitungen einen Code 0110 ab. Dadurch wird der Cachespeichereinheit 750 signalisiert, daß sie eine Lade-Vierer-Operation ausführen soll. Außerdem wird an die Leitung DREQCAC ein Binärsignal 1 abgegeben, wodurch der Cachespeichereinheit 750 der Befehl signalisiert wird. Während dieses Zyklus vermindert der Prozessor 700 den Längenwert der Zeichenfolge 1 um 16, setzt irgendeinen ermittelten Abgabezustand und führt in die Register RDESC und RBASB den Wert "01" ein. Wie aus Fig. 8 hervorgeht, wird auf die Erzeugung des zweiten Lade-Vierer-Befehls und auf die Übertragung von Datenwörtern hin, wie dies im Zyklus A22 bezeichnet ist, der Prozessor 700 zu dem Zyklus A20 zurückkehren. Diese Zyklen werden solange wiederholt, bis die Zeichenfolge 1 oder die Zeichenfolge 2 ausgegeben ist. Wenn die Zeichenfolge 1 ausgegeben ist, wird, wie bereits erwähnt, die Operation fortgesetzt, und Füllzeichen werden verwendet. Wenn die Zeichenfolge 2 ausgegeben ist, wird jedoch die EXH2-Anzeige in den Binärzustand 1 gesetzt, und außerdem wird eine Verzweigung auf den Zyklus A24 hin ausgeführt. Im übrigen beginnt der Prozessor 700 mit dem Zyklus K3A. Dieser Zyklus entspricht einer kurzen Abschlußroutine, in der die Abbrechungsanzeige gesetzt wird und in der der nächste Befehl zusammen mit dem Beginn der Pipeline-Operation aufgenommen wird (siehe END-Zyklus).Es dürfte einzusehen sein, daß die Ausführung der obigen Operationen zur Erzeugung einer nennenswerten Anzahl von Lade-Vierer-Befehlen führen kann. Dies wiederum kann zum Ersatz einer nennenswerten Anzahl von Datenwörtern in dem Cachespeicher 750-300 führen. Gemäß den Lehren der vorliegenden Erfindung wird ein derartiger Ersatz auf die Aufnahme des ersten Lade-Vierer-Befehls hin gesperrt bzw. verhindert.Unter Bezugnahme auf Fig. 7e sei darauf hingewiesen, daß der zweite von dem Prozessor 700 während des Zyklus A25 erzeugte Lade-Vierer-Befehl auf eine Decodierung hin das UND-Glied 750-91622 veranlaßt, das Signal SKIPRD100 als Binärsignal 1 abzugeben. Der Binärzustand 1 des FLDQUAD-Flipflops 750-91620 zeigt an, daß der erste Lade-Vierer-Befehl bereits verarbeitet worden ist. Dieses Signal schaltet zusammen mit dem Signal MISSIG100 des FSKIPRR-Flipflop 750-91610 in den 1-Zustand um.Das Flipflop 750-91610 verhindert, wenn es in den 1-Zustand gesetzt ist, daß jeder nachfolgende Datenblock in den Cachespeicher 750-300 eingeschrieben werden kann, und zwar in folgender Art und Weise.Das Signal FSKIPRR000 wird an die Schaltungen des Bereichs 750-5 gemäß Fig. 7c abgegeben. Während des Adreßlisten-Zuteilungszyklus nach einem Ausweich- bzw. Fehl- Zustand werden die Schaltungen daran gehindert, einen Eintrag in die Adreßlisten 750-500 und 750-502 vorzunehmen. Im einzelnen zeigt sich dabei, daß das Signal FSKIPRR000 als Binärsignal 0 das UND-Glied 750-52624 und das UND-Glied 750-52628 veranlaßt, das Signal FEDCODE100 bzw. das Signal DIREADDE100 als Binärsignal 0 abzugeben. Dadurch sind die Decoderschaltungen 750-52000 und 750-521 hinsichtlich der Erzeugung von Schreibsignalen RWFE0100-RWFE7100 und R/WV0100-R/WV7100 gesperrt. Das Ergebnis dieser Maßnahme besteht darin, daß keine Änderungen bezüglich der Voll/Leer-Bits oder der Adressensignale vorgenommen werden, die in den Speicherplätzen der Adreßlisten 750-500 und 750-502 enthalten sind, die durch die Lesebefehlsadresse adressiert werden, welche von dem Prozessor 700 über die RADO-Leitungen 24-35 abgegeben wird.Überdies sei darauf hingewiesen, daß im Falle eines Ausweich- bzw. Fehl-Zustandes (d. h. dann, wenn das Signal ALTHIT000 als Binärsignal 1 auftritt) die Umlaufsignale RR0100-RR3100 in das Register 750-50400 geladen werden. Während des Adreßlisten-Zuteilungszyklus werden diese Signale mittels der Addierschaltung 750-508 um 1 erhöht, wodurch Signale NXTRR 0100-2100 erzeugt werden, die an den Umlaufbereich der Adreßliste 750-500 abgegeben werden. Die Signale NXTRR 0100-2100 werden in den Speicherplatz bzw. Speicherbereich eingeschrieben, der durch die Lade-Vierer-Befehlsadresse spezifiziert ist, wobei das Einschreiben auf das Auftreten des Signals RWRR100 hin erfolgt. Dadurch wird im Effekt der Block übersprungen, der für den Ersatz vorgesehen war.Aus Fig. 7c geht ferner hervor, daß das Signal FSKIPRR000 als Binärsignal 0 und das UND-Glied 750-52630 veranlaßt, das Umgehungssignal FORCEBYP000 als Binärsignal 0 abzugeben. Das Ergebnis dieses Vorgangs ist, daß das Schreib-Cachespeicher-Kennzeichenbit der Transitblockstelle in den 1-Zustand gesetzt wird, in die der Lesebefehl gespeichert ist bzw. wird. Dies bedeutet, daß dann, wenn die Datenwörter aus dem Speicher aufgenommen sind, die Schaltungen des Blockes 750-115 daran gehindert sind, das Speicher- Schreibanforderungssignal MEMWRTREQ100 als Binärsignal 1 abzugeben. Damit werden die Datenwörter des angeforderten Blockes nicht in den Cachespeicher 750-300 eingeschrieben.In derselben Art und Weise wird jede Gruppe von Datenwörtern, die durch den Lade-Vierer-Befehl angefordert ist, daran gehindert, in den Cachespeicher 750-300 eingeschrieben zu werden. Dies setzt sich solange fort, bis die Zeichenfolge 2 abgegeben ist. Dadurch wird der Prozessor 700 veranlaßt, das Signal FE020 als Binärsignal 0 abzugeben, wodurch das LDQUAD-Flipflop 750-91620 in den Null-Zustand zurückgesetzt wird. Dadurch ist die Abgabe bzw. Ausgabe des MLR-Befehls beendet.Aus vorstehendem ist ersichtlich, wie die Anordnung der vorliegenden Erfindung den Austausch von großen Informationsmengen durch die Information vermeidet, die durch einen MLR-Befehl übertragen wird. Bei der angegebenen besonderen Ausführungsform wird der MLR-Befehl lediglich identifiziert, und zwar insoweit, als es sich dabei um den bestimmten Befehl handelt, der den Prozessor 700 veranlaßt, einen Lade-Vierer-Befehl zu erzeugen. Es dürfte einzusehen sein, daß andere Typen von Befehlen in entsprechender Weise mikroprogrammiert sein könnten, um solche Befehle zu erzeugen, die den Austausch von großen Datenmengen verhindern.In einigen Fällen kann es erwünscht sein, einen großen Teil der übertragenen Daten einzuschreiben. Dies könnte entweder dadurch geschehen, daß die Anzahl der Lade- Vierer-Befehle eine bestimmte Anzahl erreicht, die durch einen Zähler festgelegt ist, oder daß einfach bestimmte Blöcke übersprungen werden.Darüber hinaus dürfte einzusehen sein, daß sämtliche derartigen Befehle unter einer fest verdrahteten Steuerung erzeugt werden können. Ferner ist es möglich, über unterschiedliche Typen von Befehlen zu verfügen, die das Aufrufen von Datenwörtern spezifizieren, welche dazu herangezogen werden, einen MLR-Befehl oder ähnliche Typen von Befehlen innerhalb einer vorgegebenen Klasse zu identifizieren.Es dürfte einzusehen sein, daß der Prozessor 700 die Befehle in einer sogenannten Pipeline-Weise ausführt.Wie hier angegeben, führt der Prozessor 700 die verschiedenen Operationen während der Betriebszyklen I, C und E im Zuge der Befehlsausübung aus. Dies führt zur Abgabe von Cachespeicher-Befehlen durch den Prozessor 700 an die Cachespeichereinheit 750. Größtenteils sind die aufgerufenen Befehle normalerweise in der Cachespeichereinheit 750-300 enthalten. Es dürfte einzusehen sein, daß der Prozessor 700 an einigen Punkten während der Befehlsverarbeitung in eines der Befehlsadressenregister RICA/RICB eine Adressen- und Ebenen-Information lädt. Dies ergibt sich üblicherweise als Folge der Prozessor-Ausführung eines Transfer- oder Verzweigungsbefehls, was dazu führt, daß der Prozessor 700 einen IF1-Befehl erzeugt, der von einem IF2-Befehl gefolgt wird. Auf die Ausführung dieser Befehle durch die Cachespeichereinheit 750 hin erfolgt der Aufruf von Befehlen während der ersten Hälfte eines T-Taktzyklus, und der Aufruf/das Schreiben von Operanden erfolgt während der zweiten Hälfte des T-Taktzyklus.Nunmehr wird die Operation der Cachespeichereinheit 750 im Zuge der Ausführung der Befehle IF1 und IF2 kurz beschrieben. Der IF1-Befehl wird auf die Aufnahme durch die Cachespeichereinheit 750 hin mittels der Decoderschaltungen 750-922 decodiert. Die Decoderschaltungen 750-922 veranlassen die Schaltungen des Blockes 750-920, Signale zum Laden des anderen Befehlsadressenregisters zu erzeugen, welches als das Register RICA angenommen ist. In dieses Register werden Signale entsprechend dem inkrementierten Wert der Adresse geladen, die in dem IF1-Befehl enthalten ist. Dies bedeutet, daß während des ersten T-Taktzyklus die Adressensignale von dem Schalter 750-530 her um 1 erhöht werden. Dies geschieht durch die Schaltung 750-912. Diese erhöhten Adressensignale werden in das RICA-Befehlsadressenregister 750-900 auf das Auftreten des 1/2-T-Taktsignales CLKHT100 hin geladen, wenn das Signal RICA100 ein Binärsignal 1 ist. Das Signal RICA100 wird von den Schaltungen 750-920 als Binärsignal 1 abgegeben, wenn das Signal ENBSTRBA000 gemäß Fig. 7e als Binärsignal 1 während der ersten Hälfte des ersten T-Taktzyklus abgegeben wird. Während der ersten Hälfte des ersten T-Taktzyklus wird die IF1-Befehlsadresse in das RADR-Register 750-301 über den ZADR-Schalter 750-300 geladen, und zwar auf das Auftreten des Signals CLKHT100 hin. Während der ersten Hälfte des T-Taktzyklus ist das Signal ENBMEMLEV100 ein Binärsignal 0. Außerdem ist das Signal ENBADR1100 ein Binärsignal 0 (dies bedeutet, daß das Steuerzustands- FNEWIF1-Flipflop 750-92026 auf das Auftreten des T-Taktsignals CLKT021 hin umschaltet). Deshalb ist jedes Paar der Signale ZADR01100, ZADR00100 bis ZADR7100, ZADR70100 durch binäre Nullen gegeben. Dies führt dazu, daß die Position 0 als Adressenquelle für sämtliche acht Adressenregister ausgewählt sind.Die IF1-Befehlsadresse wird außerdem als Eingangssignal an die Adreßlistenschaltungen des Blockes 750-502 über den ZDAD-Schalter 750-530 für die Ausführung eines Suchoperationszyklus abgegeben. Da der Befehlsblock in dem Cachespeicher vorhanden ist, erzeugen die Schaltungen des Blockes 750-512 das in Frage kommende Treffersignal HITTOC7100 und die Ebene-Signale HITLEVC 70100-2100, die an den Bereich 750-9 abgegeben werden. Die Decodierung des IF1-Befehls bewirkt, daß die Treffer-Ebenen- Signale HITLEVC70100-2100 in die Bit-Positionen der Ebene 1 des RICA-Befehlsadressenregisters 750-900 geladen werden. Außerdem werden das Ebenen-1-Gültigkeitsbit und die Treffer/Fehl-Bitpositionen des RICA-Registers 750-900 binäre Einsen erhalten (was bedeutet, daß das Treffersignal HITTOC7100 die Treffer/Fehl-Bitposition in einen Binärzustand 1 umschaltet). Der gespeicherte Ebenen-Wert wird danach dazu herangezogen, die Operation des ZCD-Schalters 750-306 während der anschließenden Befehlsaufrufe zu steuern.Der erste Befehl, zu dem ein Zugriff in der Speicherstelle erfolgt ist, die durch die IF1-Adresse bezeichnet ist, wird als Operandenwort an den Prozessor 700 während der zweiten Hälfte des ersten T-Taktzyklus über die Stellung 1 des ZDI-Schalters 750-312 übertragen, wobei die Übertragung während des Endes des ersten T-Taktzyklus erfolgt. Der erste Befehl wird taktgesteuert in das RIBIR-Register 704-152 des Prozessors 700 mit dem Auftreten des T-Taktsignales auf das Vorliegen des Signals LCKT100 hin eingeführt.Das Signal FJAMZNICLEV000 gibt die Übertragung des nächsten Befehls zu dem Prozessor 700 hin während der zweiten Hälfte des zweiten T-Taktzyklus frei. Das Signal FJAMZNICLEV000 wird durch die Schaltungen des Blockes 750-900 als Binärsignal 0 abgegeben. Das Signal FJAMZNICLEV000 bewirkt, daß die Ebenen-Signale ZNICLEV 000-2100, die von dem RICA-Register 750-900 her erhalten werden, als Eingangssignale an die Steuereingangsanschlüsse des ZCD-Schalters 750-306 abgegeben werden, und zwar auf die Ausführung des IF1-Befehles hin. Dies bedeutet, daß - wie dies aus Fig. 7c ersichtlich ist - das Signal FJAMZNICLEV000 das Signal FRCIC000 in ein Binärsignal 0 umschaltet. Dies veranlaßt das NAND-Glied 750-52518, das Signal ZCDINCENAB100 als Binärsignal 1 während der zweiten Hälfte des zweiten T-Taktzyklus abzugeben. Das Signal ZCDINCENAB100 veranlaßt die NAND-Glieder 750-51210 bis 750-51214, Signale ZCD0100 bis ZCD2100 aus den Signalen ZNICLEV0100 bis ZNICLEV2100 zu erzeugen.Außerdem veranlaßt der durch die Decoderschaltung 750-922 decodierte IF1-Befehl, daß das FNEWIF1-Flipflop 750-92016 in den 1-Zustand umgeschaltet wird. Wie oben bereits erwähnt, werden dadurch die Operationen während des Zyklus (zweiter Zyklus) festgelegt, nachdem der IF1-Befehl mit dem T-Taktsignal auf das Auftreten des Signales CLKT020 hin aufgenommen worden ist. Während der ersten Hälfte des zweiten T-Taktzyklus veranlaßt insbesondere das NEWIF1-Flipflop 750-92026, daß das NAND-Glied 750-92056 das Signal USEC000 in ein Binärsignal 0 umschaltet. Durch das Signal USEIC000 wird das NAND-Glied 750-92052 veranlaßt, das Signal ENBADR1100 als Binärsignal 1 abzugeben. Da zu diesem Zeitpunkt keine Speicherdatenübertragung stattfindet, ist die Decoderschaltung 750-30300 zu diesem Zeitpunkt nicht freigegeben (dies bedeutet, daß das Signal ENBMEMLEV100 ein Binärsignal 0 ist). Demgemäß treten die Signale MEMLEV0000 bis MEMLEV7000 als Binärsignale 1 auf, während die Signale MEMLEV0100 bis MEMLEV7100 Binärsignale 0 sind.Die Multiplexerschaltung 750-30304 gibt ihrerseits das Binärsignal 1 an ihren Ausgangsanschlüssen ab. Dies führt dazu, daß die Ausgangssignale ZADR00100 bis ZADR70100 als Binärsignale 1 auftreten, während die Multiplexerschaltung 750-30302 die Signale ZADR01100 bis ZADR7100 als Binärsignale 0 abgibt. Die beiden Signale veranlassen den Schalter 750-302 a, als Adressensignalquelle das RICA-Befehlsadressenregister auszuwählen, welches mit der Schalterstellung 1 während der ersten Hälfte des zweiten T-Taktzyklus verbunden ist.Demgemäß wird das RADRO-Register 750-320 über den ZIC-Schalter 750-906 mit den Adressensignalen von dem RICA-Register 750-900 auf das Auftreten des 1/2-T-Taktsignales CLKHT100 hin während der ersten Hälfte des zweiten Zyklus geladen. Das RICA-Register 750-900 wird ausgewählt, da das Signal ZIC100 zu diesem Zeitpunkt ein Binärsignal 0 ist. Dies bedeutet, daß das Signal ENBALT100 ein Binärsignal 0 ist und daß das Signal FACTVRIC100 vom Null-Ausgang des FACTVRIC-Flipflops des Registers 750-92024 her ein Binärsignal 0 ist. Diese Signale veranlassen das UND/ODER-Glied 750-92032, das Signal ZIC100 als Binärsignal 0 abzugeben. Der an die Cachespeichereinheit 750-300 abgegebene Adresseninhalt bewirkt, daß ein zweiter Befehl aus der jeweiligen Ebene zu dem ZCD-Schalter 750-306 hin ausgelesen wird. Die Ebenen-Signale ZNICLEV 0100-2100 wählen den Befehl in der Ebene aus, die durch den Inhalt des RICA-Registers 750-900 spezifiziert ist, um an die ZIB-Leitungen abgegeben zu werden. Die betreffenden Signale werden an die ZIB-Leitungen über die Position 0 des ZIB-Schalters 750-314 abgegeben.Während der ersten Hälfte des zweiten Zyklus werden die Adressensignale aus dem RICA-Befehlsregister 750-900 durch die Schaltung 750-902 um 1 erhöht und über die Stellung 1 des ZICIN-Schalters 750-902 auf das Auftreten des 1/2-T-Taktsignals CLKHT100 hin in das RICA-Register 750-900 geladen, wenn das Signal RICA100 ein Binärsignal 1 ist. Außerdem wird das Signal RICA100 als Binärsignal 1 abgegeben, wenn das Signal ENBSTRBA00 als Binärsignal 0 auftritt, und zwar während der zweiten Hälfte des zweiten T-Taktzyklus. Zu dem T-Taktzeitpunkt befindet sich die Adresse des dritten Befehls in dem RICA-Register 750-900.Das Signal FJAMZNICLEV000 bewirkt dann, wenn es als Binärsignal 0 auftritt, daß das NAND-Glied 750-92044 das Signal NEWINST000 als Binärsignal 0 während der zweiten Hälfte des zweiten T-Taktzyklus abgibt. Dies veranlaßt das NAND-Glied 750-92046, das Signal RIRA100 als Binärsignal 1 abzugeben. Mit dem Auftreten des T-Taktsignales wird am Ende des zweiten T-Taktzyklus der von dem ZCD-Schalter 750-306 her gelesene zweite Befehl außerdem in das RIRA-Register 750-308 geladen. Dadurch wird der Prozessor 700 freigegeben, um den zweiten Befehl in sein RBIR-Register zu laden, und zwar auf das Auftreten des T-Taktsignales CLKT100 hin am Ende des zweiten T-Taktzyklus, wenn der betreffende Prozessor die Ausführung des vorhergehenden Befehls beendet hat.Dies bedeutet, daß der Prozessor 700 dann, wenn er die Ausführung des ersten Befehls beendet hat, über die RDIBUF-Leitung ein Binärsignal 1 abgibt. Das an die RDIBUF-Leitung von dem Prozessor 700 her abgegebene Signal veranlaßt die Schaltungen des Blockes 750-9202, das FRDIBUF-Flipflop des Registers 750-92024 auf das Auftreten des T-Taktsignales CLCT020 hin in den Binärzustand 1 umzuschalten. Damit entspricht das Signal FRDIBUF100 dem an die RDIBUF-Leitung angelegten, um eine Taktperiode verzögerten Signal. Dadurch ist festgelegt, daß ein Signal auf der RDIBUF-Leitung von dem Prozessor 700 während des letzten Zyklus aufgenommen worden ist. Dies zeigt an, ob das RIRA-Register 750-308 mit einem weiteren Befehl während der ersten Hälfte des dritten T-Taktzyklus neu zu füllen ist. Wenn der Prozessor 700 die Ausführung des vorhergehenden Befehls nicht beendet, wird das Signal auf der RDIBUF- Leitung nicht erzeugt. Wenn der nächste Befehl, zu dem ein Zugriff erfolgt, bereits in das RIRA-Register 750-308 geladen worden ist, wird das Register während der ersten Hälfte des nächsten T-Takt-Betriebszyklus nicht wieder aufgefüllt.Die Ausführung des IF2-Befehls durch die Cachespeichereinheit 750 erfolgt in entsprechender Weise wie die Ausführung des IF1-Befehls. Dabei wird jedoch die in dem IF2-Befehl enthaltene Adresse lediglich für eine Adreßlistensuche in dem Fall herangezogen, daß, wie dies bei diesem Ausführungsbeispiel angenommen ist, ein Treffer vorliegt. Das Ergebnis besteht darin, daß die durch die Schaltungen des Blockes 750-512 erzeugten Ebenen-Signale in die Ebene-2-Bitpositionen des RICA- Registers 750-900 geladen werden. Außerdem werden in die Gültigkeitsbit- und Treffer/Fehl-Bitpositionen binäre Einsen eingeführt (was bedeutet, daß ein Weiterlaufzustand angenommen ist).An dieser Stelle enthält das RICA-Register 750-900 eine Adresse und zwei Ebenen-Signale, die die Blöcke in der Cachespeichereinheit 750-300 bezeichnen, aus der Befehlswörter auf Anforderungen seitens des Prozessors abgeholt bzw. aufgerufen werden.Infolge der Ausführung eines Aufrufbefehls durch den Prozessor 700 werden Lese/Schreib-Befehle erzeugt und an den Cachespeicher 750 abgegeben. Im Falle eines Einzellesebefehls beispielsweise umfaßt dies die Bildung einer Adresse, die in dem Einzellesebefehl enthalten ist, der von dem Prozessorbereich 704-4 gemäß Fig. 3e an den Cachespeicher 750 abgegeben wird. Der Befehl ist so codiert, daß er eine Speicherlese-Vierer-Operation bezeichnet, durch die ein Vier-Wort-Block aus dem Speicher 800 abgerufen wird. Die in das RADO-Register 704-46 geladene erzeugte Adresse dient im einzelnen als Befehlsadresse. Darüber hinaus werden Befehlsbits 1-4 und Zonen-Bits 5-8 durch die Schaltungen 704-118 gemäß Fig. 5c und durch den Schalter 704-40 erzeugt. Die Zonen-Bits 50-8 werden auf 1 gesetzt, da sie für Lesebefehle nicht herangezogen werden. Die Befehlsbits 1-4 sind mit einem Befehlscode von 0110 durch die Decoderschaltungen des Blockes 704-118 verbunden (das ist eine Vierer-Operation). Die Schaltungen des Blockes 704-108 erzeugen die Cachespeicher-Befehlssignale, welche einen Einzellesebefehl bezeichnen, der an die DMEM-Leitungen abgegeben wird. Der Decoder 704-120 gibt an die FREQCAC- Leitung ein Binärsignal 1. Wie aus Fig. 8 hervorgeht, fordert während des nächsten T-Taktzyklus, der einem C-Zyklus entspricht, der Prozessor 700 durch Signalisierung zu dem Cachespeicher 750 diesen an, indem an die DREQCAC-Leitung ein Binärsignal 1 abgegeben wird (das ist der Signalverlauf G).Die in dem Lesebefehl enthaltene Adresse wird über den ZDAD-Schalter 750-530 an die ZADRO-7-Schalter 750-302 a bis 750-302 n abgegeben, und zwar zusätzlich zur Abgabe an die Adreßlistenschaltungen der Blöcke 750-500 und 750-502. Wie aus Fig. 7c hervorgeht, geben das UND/NAND- Glied 750-92051 sowie das NAND-Glied 750-92052 während der ersten Hälfte des fünften Zyklus die Signale ENBMEMLEV100 bzw. ENBADR1100 als Binärsignale 0 ab. Das Ergebnis besteht darin, daß die Schaltungen des Blockes 750-303 die Steuersignale ZADR00100, ZADR01100 bis ZADR70100, ZADR71100 als Binärsignale 0 abgegeben. Demgemäß wählen die ZADRO-7- Schalter 750-302 a bis 750-302 n als Adressenquelle den DAD-Schalter 750-532 aus.Die Lesebefehlsadresse wird in die RADRO-7-Register 750-301 a bis 750-301 n zur Abgabe an sämtliche Ebenen auf ein 1/2-T-Taktsignal hin geladen, und zwar auf das Auftreten des Signals CLKHT100 hin (das ist der Signalverlauf H). Wenn ein Trefferzustand durch die Schaltungen des Blockes 750-512 ermittelt wird, führt dies dazu, daß das Operandenadressenwort in der bezeichneten Ebene aus bzw. von dem ZCD-Schalter 750-306 während der zweiten Hälfte des T-Takt-Zyklus auszulesen ist.Aus Fig. 7c geht im einzelnen hervor, daß die Schaltungen des Blockes 750-526 das Signal GSRC11100 als Binärsignal 1 während der zweiten Hälfte eines T-Taktzyklus abgeben. Die Treffer-Signale ZHT1100 bis ZHT7100 von den Schaltungen 750-46 bis 750-552 her werden dazu herangezogen, den Betrieb des ZCD-Schalters 750-306 in Übereinstimmung mit den Ergebnissen der gerade ausgeführten Suchoperation zu steuern. Im Falle eines Trefferzustandes führt dies dann, wenn eines der Signale ZHT1100 bis ZHT7100 als Binärsignal 1 auftritt, dazu, daß eines der Signale ZCD0100 bis ZCD2100 als Binärsignal 1auftritt. Dies führt dazu, daß das Operandenadressenwort aus der Ebene, in der der Treffer aufgetragen ist, an die ZDI-Leitungen über die Stellung 1 des ZDI-Schalters 750-321 abgegeen wird. Der Vergleich der Bits 10-23 der Lesebefehlsadresse, der Codierung der Treffer- Ebenensignale bei Vorliegen eines Treffers und die Freigabe des ZCD-Schalters 750-526 erfordern einen vollständigen T-Taktberiebszyklus.Das an die ZDI-Leitungen abgegebene Operandenwort wird auf das Auftreten des T-Taksignales CLKT100 in in das RDI-Datenregister 704-164 gemäß Fig. 3c des Prozessors geladen.Im Falle eines Ausweich- bzw. Fehlzustandes, wenn also ein Trefferzustand nicht ermittelt wird, werden die an die ZDI-Leitungen abgegebenen Ausgangssignale dennoch in das RDI-Datenregister 704-164 geladen, wobei allerdings der Prozessor 700 an einer weiteren Verarbeitung gehindert oder über die CPSTOP-Leitung festgehalten wird. Wenn die angeforderte Information aus dem Speicher von der Cachespeichereinheit 750 erhalten wird, wird der Inhalt des RDI-Datenregisters 704-164 zu dem Zeitpunkt ersetzt, zu dem die DATARECOV-Leitung ein Binärsignal 1 führt und zu dem dem Prozessor 700 die Fortsetzung der Verarbeitung ermöglicht ist (was bedeutet, daß auf der CPSTOP-Leitung ein Binärsignal 1 auftritt).Wenn die Ergebnisse der auf die Lesebefehlsdresse hin ausgeführten Adreßlistensuchoperation das Vorliegen eines Fehl-Zustands anzeigen (was bedeutet, daß die Signale RAWHIT000, HITTOTB010 und HITTOIC010 als Binärsignale 1auftreten), dann schalten die Schaltungen des Blockes 750-526 gemäß Fig. 7c das Adreßlisten-Zuteilungs-Flipflop 750-52600 in den 1-Zustand. Dies geschieht mit Rücksicht auf das Vorliegen des Fehl-Zustands, wenn keines der Wörter des Blockes in dem Cachespeicher 750-300 enthalten ist und wenn die Voll/Leer- Bitsignale durch Binärsignale 0 gegeben sind (kein anderer Trefferzustand), zu denen durch die Lesebefehlsadresse ein Zugriff erfolgt, die über den ZDAD-Schalter 750-530 abgegeben wird. Demgemäß sind die Signale RAWHIT000 und ALHIT000 Binärsignale 1. Dabei veranlaßt das Signal RAWHIT000, daß das FDIRASN-Flipflop in den 1-Zustand umschaltet. Das Signal ALTHIT000 bewirkt, daß die aus der Adreßliste 750-500 ausgelesenen Umlauf- Bit-Signale in das Register 750-50400 geladen werden. Die Umlaufsignale werden um 1 erhöht, um die nächste Ebene für den Austausch bzw. Ersatz anzuzeigen; die betreffenden Signale werden in die Adreßliste 750-500 wieder eingeschrieben.Außerdem werden die Umlaufsignale von dem Register 750-50400 her als Signale TBRR0100 bis TBRR2100 an den Transitblockpuffer 750-102 für die Ausführung eines anschließenden Ladens dieses Puffers abgegeben. Außerdem werden die betreffenden Umlaufsignale an den Ausgang des ZLEV-Schalter 750-522 abgegeben und danach mittels der Decoderschaltungen 750-520 und 750-522 decodiert. Dies führt zu der Erzeugung der in Frage kommenden Schreibfreigabe-Abtastsignale, die zum Einschreiben der Voll/Leer-Bitsignale und der Lesebefehls-Adressenbitsignale 10-23 in die Adreßlisten 750-500 und 750-520 führen. Das durch die Schaltungen des Blockes 750-526 erzeugte Signal RWRR100 bewirkt, daß die erhöhten Umlaufsignale NXTRR0100-2100 in den Umlaufbereich der Adreßliste 750-300 eingeschrieben werden, wodurch die Adreßlisten-Zuteilungsoperation beendet ist. Zu diesem Zeitpunkt wird das FDIRASN-Flipflop in den Null-Zustand zurückgesetzt.Vor dem Setzen des FLDTBVALID-Flipflops 750-11414 werden vor dem Adreßlisten-Zuteilungszyklus die Schreibadressensignale FTBPTR0100-1100 von der Eingangszeigereinheit 750-106 her decodiert, wodurch die Lesebefehls/ Adresse in die nächste verfügbare Speicherstelle des Transitblockpuffers 750-102 eingeschrieben wird. Dies bedeutet, daß auf das Auftreten des T-Taktsignales hin, der die Adreßlistensuche abschließt, einer der Transitblockplätze des Puffers 750-102 mit den Leseadressensignalen als Ergebnis eines Fehl-Zustandes geladen wird. Zu diesem Zeitpunkt wird eine entsprechende Stelle in der Befehlsschlange 750-108 mit der erforderlichen Steuerinformation geladen, die für die Übertragung des Lesebefehls zu dem Speicher hin benötigt wird.Auf das Auftreten des T-Taktsignales hin wird das FLDTBVALID-Flipflop 750-11414 in den 1-Zustand gesetzt. Der Inhalt der Eingangszeigereinheiten 750-106 und 750-108 wird im Zuge der Bildung des nächsten Befehls um 1 erhöht. Dies bedeutet, daß im Falle eines Feld-Zustands das Signal HITTOTB010 das FLDTBVALID-Flipflop 750-11414 gemäß Fig. 7a veranlaßt, auf das Auftreten des T-Taktsignals hin in den 1-Zustand dann umzuschalten, wenn das FDIRASN-Flipflop gesetzt war. Auf das Auftreten des nächsten T-Taktsignals hin werden die in Frage kommenden Steuerkennzeichenbits gesetzt und in den Pufferkennzeichenbereich des Transitblockpuffers 750-102 eingeschrieben. In diesem Falle bewirkt dies, daß die Schreibkennzeichen- und Lese-Vierer-Kennzeichenbitpositionen Einsen erhalten,und zwar infolge der Tatsache, daß die Signale FORCEBYP000 und FRDQUAD100 als Binärsignale 1 auftreten. Das Signal FORCEBYP000 wird durch die UND-Schaltung 750-52630 erzeugt; es tritt normalerweise als Binärsignal 1 auf. Das Signal FRDQUAD100 wird von dem FRDQUAD-Flipflop erzeugt.Auf das Auftreten des T-Taksignales des Zuteilungszyklus hin wird der Lesebefehl aus dem Transitblockpuffer 750-102 ausgelesen, und zwar auf das Auftreten von Zeigeradressensignalen. Der betreffende Lesebefehl wird dabei aus der Befehlsschlange 750-107 in das RDTS-Register 750-119 über den ZTBC-Schalter 750-122 und den ZDTS-Schalter 750-118 gelesen. Die Ebenen- Signale TBRR0100-2100 werden in den adressierten Lesebefehlsplatz auf das Auftreten des 1/2-T-Taktsignales hin geladen. Der Befehl wird auf den DTS-Leitungen über den Schalter 750-102 gemäß Fig. 4 zu der Systemschnittstelleneinheit 100 hin übertragen. Die in Frage kommenden Speicheridentifizierungssignale werden in das RMITS-Register 750-124 geladen, und Steuersignale werden in das Steuerregister (nicht dargestellt) geladen. Diese Signale werden an die Leitungen MITS bzw. SDTS abgegeben. Eine weitere Information bezüglich der Erzeugung und Ausnutzung der Steuersignale findet sich in der US-PS 40 06 466.Der Lesebefehl führt dazu, daß der Hauptspeicher 800 vier Wort-Halbblöcke zu der Cachespeichereinheit 750 hin überträgt.Dies bedeutet, daß dann, wenn während des ersten Teiles des jeweiligen T-Taktzyklus Daten in die Cachespeichereinheit 750-300 einzuschreiben sind, die Schaltungen des Blockes 750-115 das Schreibanforderungssignal als Binärsignal 1 abgeben. Dies ergibt sich aus den MIFS-Steuersignalen, die von dem Hauptspeicher 800 zurückgegeben werden. Die Bits 2 und 3 werden dazu herangezogen, den Adresseninhalt eines der Transitblockpufferplätze auszuwählen, um ihn in eines der RADRO-7-Register 750-301 a bis 750-301 n. einzulesen.Aus Fig. 7d geht hervor, daß das Signal MEMWRTREQ100 von der Einheit 750-115 her bewirkt, daß das UND/NAND-Glied 750-9205 das Signal ENBMEMLEV100 als Binärsignal 1 abgibt. Dadurch wird die Decoderschaltung 750-30300 freigegeben, die die Ebenen-Signale RTBLEV0100 bis RTBLEV2100 decodiert, welche aus dem adressierten Transitblockpufferplatz ausgelesen worden sind. Die Decoderschaltung 750-30300 gibt das Signal MEMLEV0100 als Binärsignal 1 ab, während das Signal MEMLEV0000 als Binärsignal 0 auftritt. Dadurch werden zwei Steuersignale, wie die Signale ZADRO1100 und ZADRO0100, als Binärsignale 1 bzw. 0 abgegeben. Das Ergebnis dieser Maßnahme besteht darin, daß der spezifizierte eine Schalter der RADRO-7-Schalter 750-302 a bis 750-302 n die Stellung 2 (ZTBA) anstelle der Stellung 1 auswählt. Die übrigen Schalter wählen die Stellung 1 aus. Demgemäß ist der Transitblockpuffer als Adressenquelle für eines der RADRO-7-Register 750-301 a bis 750-301 n geschaltet.Auf das Auftreten des T-Taktsignales hin wird die Transitblockpufferadresse in das bezeichnete RADR-Register geladen. Auf das Auftreten des dem T-Taktsignal folgenden 1/2-T-Taktsignals hin werden die Speicherdatensignale, die in das RDFSB-Register 750-712 geladen sind, in die Cachespeichereinheit 750-300 eingeschrieben, und zwar über den ZCDIN-Schalter 750-304 und unter der Adresse, die aus dem Puffer 750-102 ausgelesen ist.Aus Fig. 7e geht hervor, daß das Signal MEMWRTREQ100 die unteren drei Flipflops des Registers 750-92006 in die 1-Zustände überführt. Dadurch werden sämtliche Decoderschaltungen 750-92008 bis 750-92014 für den Betrieb freigegeben. Demgemäß decodiert jede dieser Schaltungen die Ebenen-Signale RTBLEV0100 bis RTBLEV2100 und gibt an einem Ausgang der jeweils vorgesehenen Ausgänge ein Binärsignal 1 ab. Dadurch werden sämtliche vier Bytes des Datenwortes in den Cachespeicher 750-300 eingeschrieben. Es sei darauf hingewiesen, daß die übrigen Wörter des Datenblockes in den Cachespeicher 750-300 in derselben Art und Weise während der ersten Hälfte von aufeinanderfolgenden T-Taktbetriebszyklen eingeschrieben werden.Es sei bemerkt, daß in denjenigen Fällen, in denen die aufgenommenen Speicherdaten Befehlszugriffe verhindern, die Schaltungen des Blockes 750-920 die IBUFRYDY-Leitung daran hindern, einen Bereitschaftszustand anzuzeigen. Dies bedeutet, daß das Signal MEMWRTREQ100 das Setzen des Befehlsbereitschafts-FINHRDY-Flipflops 750-92150 in den 1-Zustand verhindert. Dadurch gibt das UND/ODER- Glied 750-92156 das Signal IFETCHRDY000 als Binärsignal 1 ab. Das Ergebnis dieses Vorgangs ist, daß das von den Schaltungen des Blockes 750-115 erzeugte Signal IBUFRDY100 als Binärsignal 0 auftritt, wodurch ein Nichtbereitschaftzustand angezeigt wird.Wenn der Prozessor 700 auf Speicherdaten wartet, definieren das Transitblockadressenbit 32 und das FEVENODD-Flipflop das zu dem RDI-Datenregister des Prozessors oder das zu dem RBIR-Befehlsregister hin zu übertragende Wort. Die Mehrfachanschluß-Identifizierungsbits, die von dem Hauptspeicher 800 zurückgeführt worden sind, geben an, welches Vierer-Lesepaar aufgenommen worden ist. Wenn demgemäß das gewünschte Wort in das RDFS-Register 750-702 geladen ist, wird es über den ZDIN-Schalter 750-708 zu dem RDI-Register des Prozessors hin über den ZDI-Schalter 750-312 übertragen. Bei Vorliegen von Befehlen wird jedes in das RDSF-Register 750-702 geladene Wort in den in Frage kommenden Befehlspuffer IBUF1 oder IBUF2 eingeschrieben. Danach wird das angefordrte Befehlswort über den ZRIB-Schalter 750-720 und den ZIB-Schalter 750-314 zu dem RBIR-Register hin übertragen.Es dürfte einzusehen sein, daß während des Aufrufes von Daten und Befehlen mögliche Konfliktsituationen entstehen, die die Anordnung der vorliegenden Erfindung ermittelt und die Ausführung eines Vorgangs verhindert, was zu einer Herabsetzung der Leistungsfähigkeit des Prozessors und/oder zu einer Herabsetzung des Verarbeitungswirkungsgrades führt. So sei beispielsweise angenommen, daß der oben erläuterte Lesebefehl eine Adresse enthält, die mit der Blockadresse übereinstimmt, welche in dem RICA-Register 750-900 gespeichert ist.Die Vergleicherschaltungen 750-91600 und 750-91602 gemäß Fig. 7e werden auf die Decodierung des Lesebefehls durch die Decoderschaltung 750-922 freigegeben, um die Lesebefehlsadressensignale ZDAD0110-0610 - die über den ZDAD-Schalter 750-530 von dem Prozessor 700 her aufgenommen worden sind - mit den Adressensignalen ZIC0100-6100, die aus dem durch den ZIC-Schalter 750-906 ausgewählten RICA/RICB-Befehlsregister herstammen, und mit den Blockadressensignalen RNXTBLK0100-6100 zu vergleichen, die von der Inkrementierungsschaltung 750-918 her geliefert worden sind und die dem nächsten Block entsprechen. Wenn eine Dresse für einen Blockvergleich vorliegt, geben die Schaltungen 750-91600 und 750-91610 eines oder beide Signale CMPADR100 und CMPNXTBLK100 als Binärsignale 1 ab. Zugleich werden die Vergleicherschaltungssignale mit den die vorliegende Ebene bzw. die andere Ebene betreffenden Signalen CMPCURLEV100 und CMPALTLEV100 von den Vergleicherschaltungen 750-912 bzw. 750-914 her undmäßig verknüpft.Wie aus Fig. 7e hervorgeht, zeigen die von den Vergleicherschaltungen 750-912 und 750-914 erzeugten Ebenen-Signale CMPCURLEV100 und CMPALTLEV100 die Ergebnisse des Vergleichs der Ebenen-Signale C7RR0100- C7RR2100 von dem Umlaufregister 750-50400 gemäß Fig. 7c - die die Ebene bezeichnen, die zuzuteilen ist - mit den vorliegenden bzw. anderen Ebenen-Signalen an, die aus dem RICA-Register 750-900 erhalten werden.Wenn ein Vergleich vorliegt, der anzeigt, daß der Prozessorlesebefehl dazu führen könnte, irgendeinen der Befehle innerhalb der vorliegenden Befehlsfolge durch die neue Information zu überschreiben, die für die Verarbeitung durch den Prozessor 700 festgelegt worden ist (d. h. über die I-Aufruf-1- und I-Aufruf-2-Befehlsfolge), dann gibt das NAND-Glied 750-91608 das Signal SKIPRR100 als Binärsignal 1 ab. Wie zuvor angenommen, zeigt die Suche einen Fehl-Zustand an. Dies hat zur Folge, daß das Signal HITTOICO10 als Binärsignal 1 auftritt, was wiederum dazu führt, daß das FSKIPRR- Flipflop 750-91610 in den 1-Zustand umgeschaltet wird. Das Ergebnis dieser Maßnahme ist, daß das Signal FSKIPRR000 als Binärsignal 0 auftritt.Das Signal FSKIPRR000 wird an die Schaltungen des Bereiches 750-5 gemäß Fig. 7c abgegeben. Während des Adreßlistenzuteilungszyklus für einen Fehl- bzw. Ausweichzustand sind diese Schaltungen daran gehindert, einen Eintrag in die Adreßlisten 750-500 und 750-502 vorzunehmen. Im einzelnen zeigt sich dabei, daß das Signal FSKIPRR000 als Binärsignal 0 das UND-Glied 750-52624 und das UND-Glied 750-52628 veranlaßt, das FEDCODE100-Signal bzw. das DIRADDE100-Signal als Binärsignal 0 abzugeben.Dadurch sind die Decoderschaltungen 750-5200 und 750-521 daran gehindert, Schreibsignale RWFE0100- RWFE7100 und R/WV0100-R/WV7100 zu erzeugen. Dadurch erfolgen keine Änderungen bezüglich der Voll/Leer-Bits oder Adressensignale, die in den Speicherplätzen der Adreßlisten 750-500 und 750-502 enthalten sind, welche durch die Lesebefehlsadresse adressiert sind, die von dem Prozessor 700 über die RADO-Leitungen 24-35 abgegeben wird.Überdies sei drauf hingewiesen, daß im Falle eines Ausweich- bzw. Fehl-Zustands (was bedeutet, daß das Signal ALTHIT000 ein Binärsignal 1 ist) die Umlaufsignale RR0100-RR3100 in das Register 750-50400 geladen werden. Während des Adreßlistenzuteilungszyklus werden diese Signale durch die Addierschaltung 750-508 um 1 erhöht, um die Signale NXTRR0100-2100 zu erzeugen, die an den Umlaufbereich der Adreßliste 750-500 abgegeben werden. Die Signale NXTRR0100-2100 werden in den durch die Lesebefehlsadresse bezeichneten Speicherplatz auf das Auftreten des Signales RWRR100 hineingeschrieben. Dadurch wird der Befehlsblock übersprungen, der für den Austausch bzw. Ersatz gewissermaßen als Kandidat vorgesehen war.Aus Fig. 7c geht ferner hervor, daß das Signal FSKIPRR000 als Binärsignal 0 das UND-Signal 750-52630 veranlaßt, das Nebenweg- bzw. Umgehungssignal FORCEBYP000 als Binärsignal 0 abzugeben. Das Ergebnis dieses Vorgangs ist, daß das Schreib-Cachespeicher- Kennzeichenbit des Transitblockspeicherplatzes, in welchem der Lesebefehl gespeichert ist, nicht in den 1-Zustand gesetzt wird. Dies bedeutet, daß dann, wenn die Datenwörter aus dem Speicher aufgenommen sind, die Schaltungen des Blockes 750-115 daran gehindert sind, das Speicherschreibanforderungssignal MEMWRTREQ100 als Binärsignal 1 abzugeben. Damit werden die Datenwörter des benötigten Blockes nicht in den Cachespeicher 750-300 eingeschrieben.Aus vorstehendem dürfte ersichtlich sein, wie die Anordnung der vorliegenden Erfindung den Ersatz bzw. Austausch von Befehlen durch eine neue Information ausschließt, die von dem Prozessor 700 über einen Lesebefel angefordert ist. Wenn die Cachespeicher-Befehlsleseblockadresse gleichgesetzt ist, dann wird ein weiterer Vergleich durchgeführt, um zu bestimmen, ob die Zuteilung bzw. Zuordnung in derselben Ebene erfolgte. Wenn es sich um eine andere Ebene handelt, dann wird die Zuteilung dennoch vorgenommen. Wenn die Befehle aus der Ebene 2 aufgerufen werden und wenn die sogenannte Kandidatenadresse für den Austausch in der Ebene 4 liegt, ddan kann die Zuteilung dennoch ohne irgendeinen Konflikt vorgenommen werden. Wenn jedoch die Kandidatenadresse für den Austausch ebenfalls in der Ebene 2 liegt, dann kann die Zuteilung nicht ohne die Schaffung eines Konfliktes vorgenommen werden. Die Anordnung der Erfindung überspringt damit die Zuteilung der Ebene.

Claims (3)

1. Cachespeicher-Steuereinrichtung in einer Datenverarbeitungsanlage, die aufweist:
  • - einen adressierbaren Hauptspeicher (800), der eine Vielzahl von Wortspeicherplätzen für die Speicherung von Daten und Befehlen umfaßt;
  • - einen Cachespeicher (750), der mit dem Hauptspeicher verbunden ist und in dessen Pufferspeicher (700-300; Fig. 4/4) vom Hauptspeicher abgerufene Daten und Befehle zum Zwecke des direkten Zugriffs selektiv einspeicherbar sind; und
  • - einen Prozessor (700) zur Verarbeitung von Befehlen, die vom Hauptspeicher (800) abrufbar sind und die einen Operationscodeteil enthalten,
    • -- wobei der Prozessor (700) Steuereinrichtungen umfaßt zur Ausgabe von Kommandos; und
    • -- wobei diese Prozessor-Steuereinrichtungen eine Befehlsklassen- Dekodierschaltung (701-118; Fig. 3c/1) umfaßt, die auf den eine vorbestimmte Befehlsklasse darstellenden Operationscodeteil anspricht zur Erzeugung solcher Speicherkommandos, die den Abruf einer Datenwortgruppe aus dem Cachespeicher (750) spezifizieren,
dadurch gekennzeichnet,
  • - daß die Cachespeicher-Steuereinrichtung Steuervorrichtungen (750-1; Fig. 4/1) für den Abruf von Daten- und Befehlsworten aus dem Hauptspeicher (800) auf bestimmte Kommandos hin umfaßt;
  • - daß mit dem Prozessor (700) verbundene Cache-Dekodier- schaltmittel (750-113/114; Fig. 4/1) und mit diesen verbundene Anzeigeschaltmittel (750-91 620; Fig. 7e/9) vorhanden sind,
    • -- daß die Cache-Dekodierschaltmittel (750-113/114) auf ein erstes der Speicherkommandos hin die Anzeigeschaltmittel (750-91 620) in eine vorbestimmte Zustandslage schalten;
    • -- daß mit den genannten Anzeigeschaltmitteln und den Cache-Dekodierschaltmitteln weitere Steuervorrichtungen (750-91 612, 91 612, 91 622; Fig. 7e/9) verbunden sind, die auf Grund der eingeschalteten vorbestimmten Zustandslage der Anzeigeschaltmittel in einen Bereitschaftzustand (exponierter Status) versetzt werden; und
    • -- daß die Cache-Dekodierschaltmittel auf die folgenden Speicherkommandos, die der Befehlsklasse des ersten Speicherkommandos angehören, hin ein Steuersignal (FSKIPRR000; Fig. 7e/9) aussenden, wenn die vom ersten Speicherkommando angeforderten Datenwörter nicht im Pufferspeicher (750-300) gespeichert sind, um zu verhindern, daß die von den folgenden Speicherkommandos vom Hauptspeicher (800) abgerufenen Datenwörter im Pufferspeicher abgespeichert werden.
2. Cachespeicher-Steuereinrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die auf den Operationscodeteil ansprechende Befehlsklassen-Dekodierschaltung (704-118; Fig. 3c/1) im Falle, daß der Operationscodeteil derart codiert ist (Bits 18-27 im Multiwort-Befehlsformat von Fig. 6c), daß er einen Übertragungsbefehl (MLR) bezeichnet, den Prozessor (700) zur Erzeugung eines Befehls veranlaßt, durch den die angeforderten Datenwortgruppen daran gehindert sind, in den Cachespeicher (750-300) eingeschrieben zu werden, nachdem eine besondere Zeichenfolge (String 2) erschöpft ist, wodurch die Anzeigeschaltmittel (Flip-Flop 750-91 620) zurückgesetzt werden und damit die Ausführung des genannten Übertragungsbefehls (MLR) beendet wird.
DE19792949793 1978-12-11 1979-12-11 Datenverarbeitungssystem Granted DE2949793A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US05/968,048 US4314331A (en) 1978-12-11 1978-12-11 Cache unit information replacement apparatus
US06/005,101 US4268907A (en) 1979-01-22 1979-01-22 Cache unit bypass apparatus

Publications (2)

Publication Number Publication Date
DE2949793A1 DE2949793A1 (de) 1980-06-12
DE2949793C2 true DE2949793C2 (de) 1989-03-09

Family

ID=26673931

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792949793 Granted DE2949793A1 (de) 1978-12-11 1979-12-11 Datenverarbeitungssystem

Country Status (3)

Country Link
DE (1) DE2949793A1 (de)
FR (1) FR2447063B1 (de)
GB (2) GB2037038B (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2822588B2 (ja) * 1990-04-30 1998-11-11 日本電気株式会社 キャッシュメモリ装置
DE4323929A1 (de) * 1992-10-13 1994-04-14 Hewlett Packard Co Software-geführtes Mehrebenen-Cache-Speichersystem
CN112463079B (zh) * 2020-12-17 2023-12-22 北京浪潮数据技术有限公司 一种数据存储控制方法、装置、设备及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4075686A (en) * 1976-12-30 1978-02-21 Honeywell Information Systems Inc. Input/output cache system including bypass capability

Also Published As

Publication number Publication date
GB2037038A (en) 1980-07-02
GB2037038B (en) 1983-05-05
FR2447063A1 (fr) 1980-08-14
DE2949793A1 (de) 1980-06-12
GB2075731A (en) 1981-11-18
GB2075731B (en) 1983-05-25
FR2447063B1 (fr) 1990-08-31

Similar Documents

Publication Publication Date Title
DE2948668A1 (de) Puffereinheit
DE3851746T2 (de) Sprungvorhersage.
DE68928519T2 (de) Verfahren und Vorrichtung zur Vorhersage der richtigen Durchführung der Übersetzungen von virtuellen in physikalische Adressen
DE60010907T2 (de) Sram-steuerungvorrichtung für parallele prozessorarchitektur mit adressen- und befehlswarteschlange und arbiter
DE68928727T2 (de) Cachespeicheranlage zum Versorgen eines Festworts eines Befehlscodes mit variabler Länge und Befehlsabrufanlage
DE68926036T2 (de) Speicherkonfiguration zur Verwendung für Schnittstellenbildung zwischen einer Systemsteuereinheit für ein Multiprozessorsystem und dem Hauptspeicher
DE3688978T2 (de) Seitenspeicherverwaltungseinheit mit der fähigkeit nach wahl mehrere adressräume zu unterstützen.
DE69433339T2 (de) Lade-/Speicherfunktionseinheiten und Datencachespeicher für Mikroprozessoren
DE112004002848B4 (de) Mikroprozessor und Verfahren zum Verifizieren einer Speicherdatei in einem derartigen Mikroprozessor
DE3751474T2 (de) Verzweigungsstrom-Koprozessor.
DE3854368T2 (de) Cachespeicher mit einer Elastizität in der Verarbeitung verschiedener Adressenfehler.
DE3716229C2 (de) Mikroprozessorchip mit einem Stapelrahmen-Cache
DE69929936T2 (de) Verfahren und Vorrichtung zum Abrufen von nicht-angrenzenden Befehlen in einem Datenverarbeitungssystem
DE3486085T2 (de) Zentrale Verarbeitungseinheit für einen Digitalrechner.
DE3587439T2 (de) Gemeinsam benutzter Mehrprozessor-Pipeline-Cachespeicher.
DE2855106C2 (de) Einrichtung zur Durchführung von bedingten Verzweigungen
DE68927172T2 (de) Multiprozessorsystem mit cache-speichern
DE3786594T2 (de) Speicherverwaltungseinheit für Digitalsignalprozessor.
DE2846495C2 (de) Zentraleinheit
DE3785897T2 (de) Steuervorrichtung zum vorabruf von befehlen.
DE69025302T2 (de) Hochleistungsrasterpuffer- und -cachespeicheranordnung
DE3587167T2 (de) Geraet zur vektorverarbeitung.
DE69031411T2 (de) Verfahren und Anordnung zum Lesen, Schreiben und Auffrischen eines Speichers mit direktem virtuellem oder physikalischem Zugriff
DE69032276T2 (de) Verfahren und Anordnung zur Verbesserung der Datenspeicherungsgeschwindigkeit eines Computersystems
DE69031183T2 (de) Verfahren und Anordnung zur Kontrolle der Umwandlung virtueller Adressen in physikalische Adressen in einem Computersystem

Legal Events

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

Ipc: G06F 12/12

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