DE2854485C2 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2854485C2
DE2854485C2 DE2854485A DE2854485A DE2854485C2 DE 2854485 C2 DE2854485 C2 DE 2854485C2 DE 2854485 A DE2854485 A DE 2854485A DE 2854485 A DE2854485 A DE 2854485A DE 2854485 C2 DE2854485 C2 DE 2854485C2
Authority
DE
Germany
Prior art keywords
signal
memory
data
busbar
unit
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
DE2854485A
Other languages
English (en)
Other versions
DE2854485A1 (de
Inventor
Thomas O. Newton Lower Falls Mass. Holtey
Thomas F. Burlington Mass. Joyce
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems 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
Application filed by Honeywell Information Systems Inc filed Critical Honeywell Information Systems Inc
Publication of DE2854485A1 publication Critical patent/DE2854485A1/de
Application granted granted Critical
Publication of DE2854485C2 publication Critical patent/DE2854485C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0884Parallel mode, e.g. in parallel with main memory or CPU

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)
  • Bus Control (AREA)
  • Memory System (AREA)
  • Debugging And Monitoring (AREA)

Description

dadurch gekennzeichnet, daß
c) eine bidirektionale Dialogschnittstelle (311) exklusiv zwischen der Zentraleinheit (312) und dem Pufferspeicher (313) vorgesehen ist, über die die Zentraleinheit jede Datenleseanforderung und zugehörige Hauptspeicheradresse unmittelbar an den Pufferspeicher überträgt, daß
d) der Pufferspeicher aufgrund der Datenleseanforderung
dl) im Positivfall die angeforderte Dateneinheit über die bidirektionale Dialogschnittstelle (311) zu der Zentraleinheit (312) überträgt, und
d2) im Negativfall die Datenleseanforderung und die zugehörige Hauptspeicheradresse über den Systembus (302) zu dem Hauptspeicher (1, 2) überträgt, um die angeforderte Dateneinheit vom Hauptspeicher (1, 2) zu erhalten, und daß
e) der Pufferspeicher (313) beim Empfang der Dateneinheit diese Dateneinheit über die bidirektionale Dialogschnittstelle (311) zu der Zentraleinheit (312) überträgt und gleichzeitig die Dateneinheit und die zugehörige Hauptspeicheradresse an zugeordneten Speicherplätzen im Pufferspeicher speichert.
2. Datenverarbeitungsanlage
dadurch gekennzeichnet, daß
nach Anspruch 1,
f) die Zentraleinheit (312) die Datenschreibanforderung, die zugehörige Hauptspeicheradresse Die vorliegende Erfindung bezieht sich auf eine Datenverarbeitungsanlage nach dem Gattungsbegriff des Patentanspruches 1.
Eine derartige Datenverarbeitungsanlage ist aus der DE-OS 22 31 146 bekannt Die bekannte Datenverarbeitungsanlage verwendet einen verteilten Systembus zur Verbindung einer Zentraleinheit, eines Hauptspeichers, eines Pufferspeichers sowie eines Assoziativspeichers und von E/A-Kanälen. Der Assoziativspeicher dient der Speicherung von echten Seitenadressen sowie von zugeordneten virtuellen Seitenadressen von erst kürzlich angesprochenen Seiten. Bei jeder Adressierung und einem Datenabruf seitens der Zentraleinheit, sei es aus dem Hauptspeicher oder aus dem Pufferspeicher, wird der verteilte Systembus benutzt, um über eine Adreßübersetzung und einen Vergleich der Inhalte des Assoziativspeichers dem virtuellen Speicherkonzept Rechnung zu tragen und einen entsprechenden Speicherplatz in dem Pufferspeicher oder Hauptspeicher zu adressieren.
Wünschenswert in diesem Zusammenhang ist ein Pufferspeichersystem, das nicht nur eine größtmögliche Trefferwahrscheinlichkeit (d. h. ein Auffinden des in dem Pufferspeicher befindlichen Wortes bei einer Anforderung durch irgendeine Einheit) aufweist, sondern bei dem auch der Datenverkehr auf dem Systembus nicht anwächst, wenn die verschiedenen Lese- oder Schreibanforderungen in einem System befriedigt werden, das einen Bus für die Verbindung der verschiedenen Komponenten des Systems benutzt.
Studien des Speicherzugriffverhaltens während der Programmausführung haben gezeigt, daß über 90% der Zugriffe zu dem Speicher Lesebefehlen und weniger als 10% der Zugriffe durch die Zentraleinheit Schreibbefehlen zuzuordnen sind. Ferner enthalten die meisten
so Programme Bearbeitungsschleifen, in welchen auf eine relativ kleine Anzahl von Befehls- und Datenspeicherplätzen im Dialog Bezug genommen wird. In Abhängigkeit von dem Programm können somit zwischen 80 und 95% des Gesamtzugriffs durch Leseanweisungen an den Pufferspeicher befriedigt werden.
Ausgehend von der bekannten Datenverarbeitungsanlage ist es daher die Aufgabe der vorliegenden Erfindung, deren Arbeitsgeschwindigkeit zu erhöhen. Die Lösung dieser Aufgabe gelingt gemäß der im An-Spruch 1 gekennzeichneten Erfindung. Eine weitere vorteilhafte Ausgestaltung der Erfindung ist dem Unteranspruch entnehmbar.
In einem Datenverarbeitungssystem, das aus mehreren Systemeinheiten, einschließlich einem Hauptspeieher, einem Pufferspeicher und einer Zentraleinheit besteht, wobei alle diese Einheiten an einen Systembus angeschlossen sind und der Nachrichtenaustausch miteinander über diesen Systembus erfolgt, wird eine fest-
geschaltete Schnittstelle zwischen der Zentraleinheit und dem Pufferspeicher vorgesehen, um einen direkten Pufferspeicher-Lesezugriff durch die Zentraleinheit zu gestatten. Das Einschreiben in den Hauptspeicher bzw. die Fortschreibung des Hauptspeichers wird jedoch über den Systembus ausgeführt und dementsprechend überwacht der Pufferspeicher den Systembus bei einem solchen Einschreiben bzw. Fortschreiben des Hauptspeichers, um seine eigene Information fortzuschreiben. Wenn jedoch eine Anforderung nach Information an den Pufferspeicher durch die Zentraleinheit über die festgeschaltete Schnittstelle erfclgt und diese Information in dem Pufferspeicher nicht verfügbar ist, so gibt der Pufferspeicher eine Anforderung an den Hauptspeicher über den Systembus nach dieser Information aus, die sodann zu dem Pufferspeicher über den Systembus gesendet wird.
Demgemäß kann durch eine direkte festgeschaltete Schnittstelle zwischen dem Prozessor und der Puffereinheit und die Verwendung von HochgrxhwindigkeJts-Logikschaltkreisen dazwischen nicht nur die Prozessor-Zugriffs-Wartezeit auf einen Bruchteil der Zugriffs verzögerung vermindert werden, die bei dem Zugriff auf den Hauptspeicher durch den Systembus angetroffen wird, sondern es kann auch der Informationsverkehr auf dem Systembus vermindert werden. Da es jedoch nicht wünschenswert ist, den Nachrichtenaustausch zwischen anderen Einheiten, die an den Systembus angeschlossen sind, und dem Hauptspeicher zu sperren bzw. herabzumindern, ist ein direkter Zugriff auf den Hauptspeicher durch diese andere Einheiten einschließlich der Zentraleinheit vorteilhaft
Anhand eines in den Figuren der Zeichnung dargestellten Ausführungsbeispieles sei die Erfindung im folgenden näher erläutert Es zeigt
F i g. 1 ein allgemeines Blockdiagramm für eine Art von Nachrichten-Sammelschiene, wie sie von dem Pufferspeicher, Hauptspeicher und der Zentraleinheit benutzt wird.
Fig. la und Ib das Format der Adreß-Sammelschiene und der Daten-Sammelschicne für das System gemäß
F i g. 2 ein allgemeines Blockdiagramm einer anderen Art von Sammelschiene, wie sie durch den Hauptspeicher, den Pufferspeicher und die Zentraleinheit benutzt wird.
Fig.2a—2d das Format verschiedener Informationen, die über die Sammelschiene gemäß F i g. 2 übertragen werden.
F i g. 3 ein allgemeines Blockdiagramm mit Merkmalen der vorliegenden Erfindung.
F i g. 4 ein allgemeines Blockdiagramm der System-Sammelschiene-Schnittstelleneinheit.
F i g. 5 eine Darstellung des Taktdiagrammet· für den Betrieb der Sammelschiene.
F i g. 6a und 6b logische Blockdiagramme eines Teiles derE/A-Multiplexer-Sammelschienen-Schnittstelle.
Fig.7 ein Blockdiagramm zur Veranschaulichung der Übertragung der Geräte-Adresseninformation von der Daten-Sammelschiene zu der Adreßsammelschiene.
Fig.8a—8d das Format verschiedener Informationen während eines Lesezyklus.
F i g. 9 ein detailliertes logisches Blockdiagramm der Sammelschienen-Schnittstelle mit einer typischen Gerätesteuerung, die an die Sammelschiene angeschlossen ist.
F i g. 10 ein detailliertes logisches Blockdiagramm der Sammelschienen-Schnittstelle mit einer typischen Spei-
chersteuerung.
Fig. 11 ein detailliertes logisches Blockdiagramm einer typischen System-Sammelschiene-Schnittstelle.
Fig. 12 eine schematische Darstellung der erfindungsgemäßen festgeschalteten Schnittstelle (Dialogschnittstelle) zwischen Pufferspeicher und Zentraleinheit
F i g. 13 ein detailliertes logisches Blockdiagramm der auf der Seite der Zentraleinheit liegenden Schnittstellenschaltung der festgeschalteten Schnittstelle.
Fig. 14 ein detailliertes Blockdiagramm der auf der Seite des Pufferspeichers liegenden Schnittstellenschaltung der festgeschalteten Schnittstelle.
F i g. 15 ein Pufferspeicher-Taktdiagramm.
Umfeld der Erfindung
Eine Datenverarbeitungs-Sammelschiene bildet einen Übertragungsweg zwischen zwei Einheiten eines vorgegebenen Systems. F i g. 1 veranschaulicht eine Art der Sammelschiene, wobei die Steuereinheiten an die gleiche Sammelschiene wie die Speicher und Prozessoren angeschlossen sind. Die Sammelschiene benutzt 24 Bits zur Adressierung und 20 Bits für die Daten. Diese 20 Bits für die Daten umfassen 18 Bits für die Daten A und B und zwei zusätzliche Bits für die Parität Diese Art von Sammelschiene ist in der US-PS 39 93 981 näher dargestellt und beschrieben. Es sei darauf verwiesen, daß in Fig. 1 der erwähnten US-PS mehr Geräte an die Sammelschiene als in F i g. 1 der vorliegenden Anmeldung angeschlossen sind. Es versteht sich hierbei von selbst daß eine beliebige Anzahl von Geräten an die Sammelschiene angeschlossen werden kann, wobei die maximale Anzahl von Geräten durch die Auslegung der Sammelschiene vorgegeben ist
Eine andere Sammelschiene ist in F i g. 2 dargestellt, wobei die Grundsammeischiene in zwei Sammelschienen unterteilt ist; eine Ein/Ausgabe-Sammelschiene und eine System-Sammelschiene, die durch einen Ein/Ausgabe-Multiplexer (IOM) voneinander getrennt sind. Bei dieser Art Sammelschienensystem bildet die E/A-Sammelschiene eine Schnittstelle für alle E/A-Steuerungen, während die Systemsammeischiene eine Schnittstelle für die Speicher und Prozessoren bildet. Das Wortformat des Sammelschienensystems gemäß F i g. 2 ist in den Fig.2A—2D dargestellt wobei Fig.2A den Adreßteil der Sammelschiene und die F i g. 2B und 2D die Datenformate darstellen. Es sei darauf verwiesen, daß andere Formate mit unterschiedlichen Wortlängen
so ebenfalls verwendet werden können. Obgleich nur wenige an die E/A-Sammelschiene angeschlossene Steuerungen dargestellt sind, können bis zu 46 Einheiten angeschlossen werden. Die Anzahl der E/A-Geräte, die an eine einzige E/A-Sammelschiene angeschlossen sind, kann jedoch größer als diese Anzahl sein, da viele Einheiten innerhalb der Anzahl von Einheiten verschiedene E/A-Geräte zur gleichen Zeit unterstützen. In gleicher Weise können, obwohl gemäß F i g. 2 nur zwei Speichereinrichtungen und ein Prozessor an die Sammelschiene angeschlossen sind, mehrere solcher Einrichtungen bis zum statthaften Maximum angeschlossen werden, wobei diese Einrichtungen Speicheruntergruppen wie beispielsweise Pufferspeicher, Seiten usw. aufweisen können.
Ein Hauptmerkmal dieser Arten von Sammelschienen besteht darin, daß die Datenübertragung direkt zwischen den Einheiten stattfinden kann, so beispielsweise zwischen dem NML-Speicher 1 (NML = New Minili-
ne) und der NML-Steuerung 3 oder zwischen der HNP-Steuerung 5 (HNP = Honeywell Network Processor) und dem HNP-Speicher 9, ohne daß hierbei eine Intervention der Zentraleinheit CPU erforderlich wäre.
Gemäß Fig. 1 und der zuvor erwähnten US-PS 39 93 981 weist ein typisches NML-Sammelschienensystem eine Mehrleistungs-Sammelschiene 100 auf, die an einen NML-Speicher 1 und einen NML-Speicher 2 angeschlossen ist. Ferner ist an die gleiche Sammelschiene eine typische NML-Steuerung 3 für die Datenübertragung, eine NML-Steuerung 3a, ein NML-Prozessor 4, eine typische Zentraleinheit CPU-Qa und ein typischer Pufferspeicher la angeschlossen. Ferner können an die Sammelschiene beispielsweise eine Gleitkommaeinheit und verschiedene Steuerungen angeschlossen sein, die ihrerseits periphere Geräte steuern., wie beispielsweise eine Aufzeichnungseinheit oder ein peripheres Bandgerät. NML-Steuerung 3 kann verwendet werden, um eine Datenübertragungssteuerung durch Modemgeräte hervorzurufen (siehe US-PS 39 93 981).
Gemäß Fig.2 ist die HNP-Sammelschiene 200 mit einigen typischen angeschlossenen Einheiten dargestellt. Es versteht sich, daß gemäß der Auslegung der Sammelschiene viele Einheiten neben den dargestellten an diese angeschlossen werden können, obgleich für die Erläuterung der vorliegenden Erfindung die dargestellten typischen Einheiten ausreichend sind. Die HNP-Sammelschiene 200 besteht aus der E/A-Sammelschiene 201 und der System-Sammelschiene 202. Wie zuvor erwähnt, sind an die E/A-Sammelschiene 201 die HNP-Steuerungen 5 und 6 und die NML-Steuerung 7 angeschlossen. An dem Systemteil 201 der Sammelschiene 200 sind die HNP-Speicher 8 und 9, der HNP-Prozessor 10, eine Zentraleinheit CPU-M und ein Pufferspeicher 13 angeschlossen. Ferner können an die System-Sammelschiene 202 beispielsweise eine Gleitkommaeinheit und verschiedene periphere Geräte, wie beispielsweise Massenspeichergeräte, Bandspeichergeräte und Aufzeichnungsgeräte angeschlossen sein, was jedoch nicht dargestellt ist Der Ein/Ausgabe-Multiplexer /OM-Il erzeugt den Weg für die Daten und die Steuerinformation zwischen den Komponenten, die an die HNP-System-Sammelschiene, wie beispielsweise die Hauptspeichereinheiten oder die zentralen Prozessoren, und an die E/A-Sammelschiene 201, wie beispielsweise die E/A-Steuerungen (manchmal als Kanäle bezeichnet), angeschlossen sind.
Der Multiplexer /OW-Il besteht aus vier Haupteinheiten: der Ein/Ausgabe-Sammelschienenschnittstelle, der System-Sammelschienenschnittstelle, einer Dateneinspeisung und einem E/A-Prozessor. Da diese Einheitön ιβ/ΐΛ^η titt* rij(* Δ iicfnKrunrr fit>r· imrlionan/ion Frfin-
\,· · J WWVfc.· V· WlW ( iU^I Ulli UlIg, \Λ\*1 *\St l'bgbllWbll *~a «···
dung nicht erforderlich sind, ist nur der in den Fig.6a und 6b dargestellte Teil des Multiplexers näher beschrieben.
Die HNP-Sammelschiene 200 gestattet irgendwelchen zwei Einheiten an dieser Sammelschiene einen Dialog miteinander. Irgendeine Einheit, die einen Dialog wünscht, fordert einen Sammelschienenzyklus (siehe F i g. 5) an, was weiter unten beschrieben ist Wenn diesem Sammelschienenzyklus stattgegeben wird, so kann diese Einheit (die Quelleneinheit) irgendeine andere Einheit (die Bestimmungseinheit) der Sammelschiene adressieren. Die Informationsübertragung während dieses spezifischen Sammelschienenzyklus erfolgt nur in einer Richtung, die von der Quelle zum Ziel verläuft Einige Arten des Dialogs über die Sammelschiene erfordern eine Antwort (z. B. das Lesen eines Speichers). In diesem Fall zeigt das anfordernde Gerät an, daß eine Antwort gefordert wird und gibt sich selbst zu erkennen. Wenn die angeforderte Information verfügbar ist, so wird die ursprüngliche Bestimmungseinheit für einen zusätzlichen Sammelschienenzyklus zur Quelleneinheit und liefert die Information an die anfordernde Einheit. Hierdurch wird der Dialog vervollständigt, der in diesem Fall zwei Sammelschienenzyklen beansprucht. Die zwischen den beiden Zyklen liegende Zeit kann für zusätzliche Systemübertragungen benutzt werden.
Eine Quelleneinheit kann irgendeine andere Einheit an der Sammelschiene als eine Bestimmungseinheit adressieren. Die Adresse jeder Einheit wird durch eine Kanalnummer identifiziert, mit Ausnahme bei Geräten vom Speichertyp, die durch ihre Speicheradressen identifiziert werden. Jedem Gerät ist eine Kanalnummer zugeordnet Vollduplexgeräte ebenso wie Halbduplexgeräte können zwei Kanalnummern benutzen; einige HNP-Vollduplexkanäle erfordern jedoch nur eine Nummer. Geräte die nur einen Ausgang oder nur einen Eingang aufweisen, verwenden jeweils eine Kanalnummer. Die Kanalnummern sind normalerweise veränderlich und es können dementsprechend ein oder mehrere hexadezimale Drehschalter benutzt werden, um die Geräteadresse anzuzeigen bzw. diese einzustellen. Wenn daher ein System aufgebaut wird, so kann die dem speziellen Gerät zugeordnete Kanalnummer in geeigneter Weise vorgegeben werden. Geräte mit Mehrfach-Ein/ Ausgabe-Anschlüssen erfordern im allgemeinen einen Block aufeinanderfolgender Kanalnummern. So kann beispielsweise ein Gerät mit vier Anschlüssen Drehschalter benutzen, um die oberen 7 Bits einer Kanalnummer zuzuordnen und die unteren 3 Bits zu verwenden, um die Anschlußnummer zwecks Unterscheidung von Eingängen und Ausgängen zu definieren. Eine Quelleneinheit, die im vorliegenden Fall manchmal als Nebeneinheit bezeichnet wird, adressiert eine Zieleinheit, die im vorliegenden Fall manchmal als Nebeneinheit bezeichnete wird, durch Aufschaltung einer Zieladresse auf die Adreßleitungen der Adressen-Sammelschiene. Es gibt 24 Adreßleitungen, die in Abhängigkeit von dem Zustand einer zugeordneten Steuerleitung, die als Speicherbezugsleitung BSMREF bezeichnet ist, zwei Interpretationen ermöglicht Wenn eine Haupteinheit eine Nebeneinheit adressiert und diese Nebeneinheit ein Speicher ist, so wird das Format gemäß F i g. 2A verwendet Dies wird durch ein hohes Potential für das Speicherbezugssignal BSMREF angezeigt Wenn jedoch die Haupteinheit eine Nebeneinheit adressiert und diese Nebeneinheit kein Speicher ist, so weist das Speicherbezugssignal BSMREF den niedrigen Pegel auf, und es wird das Format gemäß F i g. 8C verwendet
Wenn eine Haupteinheit eine Antwort von einer Nebeneinheit anfordert, wie beispielsweise bei einer Leseoperation, so zeigt sie dies der Nebeneir.heit durch ein Steuerbitsignal an, das als Antworterfordernissignal BSRSVP+ bezeichnet ist Die Haupteinheit teilt zusätzlich ihre eigene Identität der Nebeneinheit mit, indem sie ihre Kanalnummer abgibt, die im allgemeinen 10 Bits auf der Daten-Sammelschiene zusammen mit der Adresse auf der Adressen-Datenschiene umfaßt Eine zusätzliche Steuerinformation wird ferner mit den 6 Bits niedrigster Ordnung auf die Daten-Sammelschiene gegeben. Wenn daher von einer Haupteinheit eine Antwort von einer Nebeneinheit angefordert wird, so wird die Adresse auf die Adreß-Sammelschiene gegeben, wobei diese das Format gemäß F i g. 2A oder F i g. 8C aufweist was von dem Typ der Zieleinheit abhängt Im
Falle eines Speichers erfolgt die Adressierung durch das Format gemäß F i g. 2A und bei anderen Gerätetypen gemäß dem Format gemäß F i g. 8C. Wenn darüberhinaus von der adressierten Nebeneinheit eine Antwort gefordert wird, so gibt die Haupteinheit zusätzlich ihre eigene Adresse aus, z. B. die Kanalnummer auf den ersten hochrangigen 10 Bits der Daten-Sammelschiene, und sie liefert ferner die Steuerinformation auf den 6 niedrigrangigen Bits der Adressen-Sammelschiene. Diese letztgenannte Operation läuft in zwei Sammenschienenzyklen ab.
Gemäß den Fig. 2A—2D sind einige typische Adressen- und Datenformate des HNP-Sammelschienensystems 200 dargestellt. Die ersten 5 Bits des Adressenformates gemäß F i g. 2A umfassen die Bits P, I1S1F und RFU. Das Bit F, das als Formatbit bezeichnet wird, wird nachstehend in näheren Einzelheiten beschrieben. Die Bits 5—23 werden benutzt, um einen Speicherplatz zu adressieren. F i g. 2B veranschaulicht die Art und Weise, in der Daten auf der Daten-Sammelschiene des HNP-Sammelschienensystems formatiert werden. Es ist zuvor gezeigt worden, daß das Datenformat der Daten-Sammelschiene des NML-Sammelschienensystems gemäß F i g. 1 das Format gemäß F i g. 1B besitzt Dieses Format weist zwei aufeinanderfolgende Bytes auf, wobei jedes Byte aus 9 Bit besteht. Zu diesen Bytes gehören zwei Paritätsbits, sodaß sich insgesamt 20 Bits ergeben. Das Format gemäß F i g. 2B weist andererseits ebenfalls 20 Bits auf und umfaßt ein Α-Bit im höchsten Rang und ein B-Bit zwischen den Bits 7 und 8. Das Format umfaßt zwei Bytes mit 8 Bit die die Bits 0— 7 und die Bits 8—15 umfassen. Das Format gemäß Fig.2C wird benutzt, wenn Daten von der NML-Sammelschiene mit dem Format gemäß Fig. IB als Daten auf der HNP-Sammeischiene benutzt werden. Da die HNP-Sammelschiene ein Datenformat gemäß F i g. 2B besitzt und dieses Format 20 Bits umfaßt müssen die Daten auf der NML-Sammelschiene mit einem Format gemäß Fig. IB auf das Format gemäß F i g. 2B ausgerichtet werden. Dieses Format besitzt den Binärwert »0« in der hochrangigsten Bitposition und einen weiteren Binärwert »0« zwischen den Bits 7 und 8. Dementsprechend besetzen die Bits 0—7 gemäß F i g. 1B die Bits 0—7 gemäß F i g. 2C, und die Bits 8—15 gemäß Fig. IB besetzen die Bitpositionen 8—15 gemäß F i g. 2C. Diese Transformation erfolgt in einfacher Weise, wobei dies in näheren Einzelheiten in der DE-OS 27 49 884 beschrieben ist Gemäß F i g. 4 dieser DE-OS 27 49 884 sind Verbindungen für einen Treiber/Empfänger A und einen Treiber/Empfänger B dargestellt. Der Treiber/Empfänger A weist Anschlüsse für die Bits in Übereinstimmung mit dem Format gemäß Fig.2C auf, während der Treiber/Empfänger B Anschlüsse in Übereinstimmung mit dem Format gemäß F i g. 1B besitzt Es ist erkennbar, daß die Bits A und B des Treiber/Empfängers A an einen Anschluß X des Treiber/Empfängers B angeschlossen sind. Die Bezeichnung X zeigt an, daß die Position immer den Wert »0« besitzt Mit dieser einfachen Verbindung können daher Formate gemäß F i g. 1B in Formate gemäß F i g. 2C und umgekehrt umgewandelt werden.
In Fig. 2D ist noch ein weiteres Wortformat dargestellt, das von der HNP-Sammelschiene 200 benutzt wird, wenn bestimmte Arten von Information in die an die Sammelschiene angeschlossene Speichereinheit eingespeichert werden. In diesem Format besitzen die Bits A und B die beiden hochrangigen Bitpositionen, wobei zwei Bytes mit jeweils 8 Bit im Anschluß daran in den verbleibenden niedrigrangigen Bitpositionen gespeichert werden.
Wie zuvor erwähnt, werden die Formate gemäß den F i g. 8A—8D benutzt, wenn eine Haupteinheit eine Nebeneinheit adressiert und eine Antwort erwartet. Hierbei veranschaulichen die F i g. 8A und 8C die Formate der Adressen-Sammelschiene, wenn die Quelleneinheit ein Geiät -oni Speichertyp bzw. ein anderes Gerät adressiert. Fig.8B stellt das Format der Daten-Sammelschiene dar, wenn eine solche Haupteinheit eine Nebeneinheit adressiert und eine Antwort erwartet und somit ihre eigene Adresse (z. B. Kanalnummer) auf der Daten-Sammelschiene ausgibt. Gemäß F i g. 8A können die Bits 0—23 zur Adressierung eines bestimmten Wortes im Speicher benutzt werden. Ein hiervon abweichendes Format ist in Fig.2A dargestellt, wo ein kleinerer Speicher adressiert wird und die höherrangigen Bits als Steuerinformation benutzt werden. Gemäß Fig.8C können die ersten 8 Bits für verschiedene Zwecke benutzt werden. Die Bits 8—17 bilden die Kanalnummer der zu adressierenden Nebeneinheiten, während die Bits 18—23 die Steuerbits darstellen. Gemäß F i g. 8D ist ein Datenformat eines HNP-Speichers dargestellt, welches die Bits A und B in den höchstrangigen Bitpositionen sowie zwei Bytes mit 8 Bit in den unteren Bitpositionen umfaßt. Die Formate gemäß den F i g. 8D und 2D entsprechen sich; das Format gemäß F i g. 8D wurde jedoch in dieser zweiten Gruppierung noch einmal aufgeführt, da hierdurch die Erläuterung eines später noch zu diskutierenden Lesezyklus erleichtert wird.
Gemäß den F i g. 6A und 6B sind die Schaltkreise für die Erzeugung des Auswahlcodes zur Auswahl des geeigneten Formates dargestellt. Die NAND-Gatter 26, 27 und 16 erzeugen die Signale ISLRDO+ 00, ISLRDl +00, und ISLRD2 + 00, wobei diese Signale den Auswahlcode bilden, der in der rechten Seite des Blokkes 300 in F i g. 3 der zuvor erwähnten DE-OS dargestellt ist Um beispielsweise BIDI (1 —8,10—17) 305 auswählen zu können, muß der Code 011 erzeugt werden. Dies bedeutet daß das Signal ISLRDO+ 00 den Wert »0« aufweisen muß, während das Signal ISLRDI+00 und das Signal ISLRD2+00 den Wert »1« besitzen muß. Gemäß den F i g. 6A und 6B muß somit das NAND-Gatter 26 ein »0«-Signal und die NAND-Gatter 27 und 16 müssen ein »1«-Signal erzeugen. Damit das NAND-Gatter 26 den Binärwert »0« ausgibt müssen beide Eingangssignale dieses Gatters ISLRDO+OA und ISLRDO+0B den Binärwert »1« besitzen. Das Signal ISLRDO+0A ist jenes Signal, welches das Weiten-eichen der Daten der E/A-Sammelschiene zu der System-Daten-Sammelschiene (wenn es den Wert »1« besitzt) steuert; bzw. welches die Kanalnummer und das Format-Steuerbit der Daten-Sammelschiene (wenn es den Wert »0« besitzt) weiterreicht Das Signal ISLRDO+0B stellt das Signal dar, das nur durch den nicht dargestellten /OM-Prozessor benutzt wird, wenn dieser lesend oder schreibend mit der externen System-Sammelschiene zusammenarbeitet Damit das Signal ISLRDO+0B den Binärwert »1« aufweist muß wenigstens ein Eingangssignal des NAND-Gatters 31 den Binärwert »0« aufweisen, beispielsweise das Signal IOPCYC + 00 oder das Signal RSLR18+00. Das Signal IOPCYC+00 besitzt den Binärwert »1«, wenn der nicht dargestellte Prozessor des Multiplexers IOM-300 nicht auf die externe System-Sammelschiene Zugriff nimmt; dagegen weist dieses Signal im Falle des Zugriffs auf die externe System-Sammelschiene den Binärwert »1« auf. In gleicher Weise wird das Signal RSLR18+00 benutzt um anzuzeigen, daß der Prozessor des Multiplexers /OAf-300
Zugriff zu einer Sammelschiene besitzt, falls dieses Signal den hohen Pegel aufweist.
Zusätzlich zu dem Signal ISLRDO+ 0B muß das Signal ISLRDO+OA den Binärwert »1« besitzen, damit das NAND-Gatter 26 am Ausgang das Signal ISLRDO+00 mit niedrigem Pegel ausgibt. Das Signal ISLRDO+ 0A besitzt den hohen Pegel, wenn beide Eingangssignale des NOR-Gatters 28 den niedrigen Pegel aufweisen. Beide Eingangssignale des NOR-Gatters 28 besitzen den niedrigen Pegel, wenn die Ausgangssignale der UND-Gatter 29 und 30 entsprechend den niedrigen Pegel aufweisen. Die Ausgangssignale der UND-Gatter 29 und 30 weisen den niedrigen Pegel auf, wenn wenigstens eines der Eingangssignale jedes dieser UND-Gatter 29 und 30 den niedrigen Pegel besitzt. Dementsprechend muß das Eingangssignal IOMCYC+00 oder das Eingangssigna! BMREFD-10 des UND-Gatters 2S den niedrigen Pegel aufweisen bzw. es müssen beide Signale den niedrigen Pegel aufweisen, damit das UND-Gatter 29 am Ausgang ein Signal mti niedrigem Pegel abgibt. In gleicher Weise muß das Eingangssignal IOMCYC+00 oder das Eingangssignal BIACOL—10 des UND-Gatters 30 den niedrigen Pegel aufweisen bzw. es müssen beide den niedrigen Pegel aufweisen, damit das UND-Gatter 30 ein Ausgangssignal mit niedrigem Pegel abgibt. Das Signal IOMCYC + 00 besitzt den niedrigen Pegel, wenn eine Übertragung von der E/A-Sammelschiene 201 zu der System-Sammelschiene 202 nicht Svattfindet. Das Signal BMREFD—10 besitzt den niedrigen Pegel, wenn eine direkte Speicherbezugnahme von der E/A-Sammelschiene 201 zu irgendeinem Speichermodul 8 oder 9 an der System-Sammelschiene 202 nicht stattfindet. In gleicher Weise wird das Signal IOMCYOO+00 am UND-Gatter 30 den niedrigen Pegel aufweisen und das Signal BlACOl —10 wird den hohen Pegel aufweisen, wenn von der System-Sammelschiene kein Antwortzyklus gefordert wird. Bei Erfüllung dieser Bedingungen wird ein Ausgangssignal mit niedrigem Pegel von dem NAND-Gatter 26 erzeugt Dieses Signal repäsentiert das höchstrangige Bit des Auswahlcodes, welches in vorliegendem Beispiel den Binärwert »0« besitzt Das nächsthöhere Bit des Auswahlcodes wird am Ausgang des NAND-Gatters 27 in Form des Signales ISLRDl +00 erzeugt Im vorliegenden Beispiel ist es erforderlich, daß dieses Signal den hohen Pegel besitzt Dieses Signal besitzt den hohen Pegel, wenn eines oder beide Signale ISLRDI+0A oder IOMCYC-00 des NAND-Gatters 27 den niedrigen Pegel besitzt Das Signal ISLRDI +0A besitzt den niedrigen Pegel, wenn der Prozessor des Multiplexers /ΟΛ/-300 lesend mit der E/A-Sammelschiene 201 zusammenarbeitet. Das Signal IOMCYC+00 befindet sich auf niedrigem Pegel, wenn keine Übertragung von der E/A-Sammelschiene 2Oi zu der System-Sammelschiene 202 stattfindet; und es besitzt andererseits den hohen PegeL wenn eine solche Übertragung stattfindet Ein Eingangssignal des NAND-Gatters 27 besitzt den niedrigen Pegel, wenn das Ausgangssignal des NAND-Gatters 32 ebenfalls den niedrigen Pegel besitzt, wobei dies der Fall ist, wenn irgendeines der Eingangssignale oder beide Eingangssignale des NAND-Gatters 32 den hohen Pegel besitzen. Das Eingangssignal IOPCYC+00 des NAND-Gatters 32 weist den hohen Pegel auf, wenn der Prozessor des Multiplexers Zugriff zu einer externen E/A- bzw. System-Sammelschiene besitzt; umgekehrt weist dieses Signal den niedrigen Pegel auf, wenn dieser Zugriff nicht vorliegt Das Signal RSLRl 9+00 besitzt den hohen Pegel, wenn der Prozessor des Multiplexers Zugriff auf die E/A-Sammelschiene nimmt; umgekehrt besitzt dieses Signal den niedrigen Pegel, wenn der Prozessor auf die System-Sammelschiene Zugriff nimmt. Aus Vorstehendem wird ersichtlich, wie das in der Rangordnung folgende Bit des Auswahlcodes erzeugt wird. Um schließlich das Bit des Auswahlcodes mit dem niedrigsten Rang zu erzeugen, muß das NAND-Gatter 1*> am Ausgang den hohen Pegel ausgeben, da in diesem spezieilen Beispiel das Element 305 ausgewählt wird, dem der Auswählcode 011 zugeordnet ist. Das Ausgangssignal ISLRD2+00 des NAND-Gatters 16 besitzt den hohen Pegel, wenn ein oder beide Eingangssignale den niedrigen Pegel besitzen. Dementsprechend muß wenigstens eines der Ausgangssignale <* τ NOR-Gatter 17 und 18 den niedrigen Pegel aufweisen. Das Ausgangssignal ISLRD2—OA des NOR-Gatters 17 besitzt den niedrigen Pegel, wenn ein Eingangssignal oder beide Eingangssignale den hohen Pegel besitzen. Eingangssignale mit hohem Pegel werden an das NOR-Gatter 17 angelegt, wenn die UND-Gatter 19 und 20 Signale mit hohem Pegel ausgeben. Ein Ausgangssignal mit hohem Pegel ergibt sich am UND-Gatter 19, wenn beide Eingangssignale den hohen Pegel aufweisen. In gleicher Weise ergibt sich ein Ausgangssignal mit hohem Pegel am UND-Gatter 20, wenn dessen beide Eingangssignale den hohen Pegel besitzen. Das Signal IOPCYC+00 weist den hohen Pegel auf, wenn der Prozessor dei Multiplexers IOM-300 Zugriff zu einem externen E/A- oder System-Sammelschienenregister (nicht dargestellt) nimmt Das Signal RSLR20+00 besitzt den hohen Pegel, wenn der /OM-Prozessor lesend mit den externen E/A- bzw. System-Sammelschienen-Registern zusammenarbeitet. In gleicher Weise besitzt das Eingangssignal BMWRTD+10 den hohen Pegel, wenn eine direkte Speicher-Schreiboperation von der E/A-Sammelschiene 201 zu dem Speicher an der System-Sammelschiene 202 stattfindet Dieses Signal mit hohem Pegel wird am Ausgang des UND-Gatters 23 erzeugt, wenn alle Eingangssignale des UND-Gatters 23 den hohen Pegel besitzen. Das Eingangssignal IOMCYC+00 besitzt den hohen Pegel, wenn eine Übertragung von der E/A-Sammelschiene 201 zu der System-Sammelschiene 202 stattfindet Das Eingangssignal BMREFD+00 besitzt den hohen Pegel, wenn eine Informationsübertragung von der E/A-Sammelschiene 201 zu irgendeinem Speicher 8,9 an der System-Sammelschiene 202 stattfindet Das Eingangssignal BIACOl +00 besitzt den hohen Pegel, wenn ein Antwortzyklus nicht angefordert wird (z. B. Speicher-Schreiboperation durch die E/A-Sammelschiene). Wenn diese Bedingungen erfüllt sind, so wird ein Signal ISLRD2+00 mit hohem Pegel erzeugt und dieses Signal bildet das niedrigrangigste Bit innerhalb der 3 Bii des Auswahlcödes.
Ein Ausgangssignal ISLRD2+00 mit hohem Pegel am NAND-Gatter 16 kann in gleicher Weise unter Zugrundelegung der gleichen Überlegungen durch einen Schaltweg gebildet werden, der durch die UND-Gatter 25,21 und 22 und das NOR-Gatter 15 gebildet wird.
Anhand von F i g. 5 sei nunmehr in näheren Einzelheiten das Zeittaktdiagramm des HNP-Sammelschienensystems erläutert In jedem einzelnen Sammelschienenzyklus gibt es drei identifizierbare Teile; diese sind insbesondere: die Periode 7A—7C, während welcher das anfordernde Gerät mit der höchsten Priorität Zugriff auf die Sammelschiene gewinnt, die Periode TC-TE, während welcher die Haupteinheit eine Nebeneinheit aufruft und die Periode TE-TG, während welcher die Nebeneinheit antwortet Wenn die Sammelschiene un-
tätig ist, so weist das Sammelschienen-Anforderungssignal BSREQT— den Binärwert »1« auf. Die zum Zeitpunkt TA negativ verlaufende Flanke des Sammelschienen-Anforderungssignales startet einen Prioritätsausführungszyklus. Es wird eine asynchrone Verzögerung innerhalb des Systems für die Prioritätsausführung bis zum Zeitpunkt TB vorgegeben, in der ein Hauptbenutzer der Sammelschiene ausgewählt werden kann. Das nächste Signal auf der Sammelschiene ist das Signal BSDCNN—, das den Datenzyklus einleitet. Der Übergang des Signales BSDCNN— auf den Binärwert »0« zum Zeitpunkt TC zeigt an, daß einer Haupteinheit die Benutzung der Sammelschiene gestattet worden ist. Die zweite Phase der Sammelschienenoperation zeigt danach an, daß die Haupteinheit ausgewählt worden ist is und nunmehr in der Lage ist, Information auf den Daten-, Adreß- und Steuerleitungen der Sammelschiene 200 zu einer von der Haupteinheit ausgewählten Nebeneinheit zu übertragen.
Die Nebeneinheit löst die dritte Phase der Sammel-Schienenoperation aus, die mit der negativ verlaufenden Flanke des Austastsignales BSDCN D — beginnt Das Austastsignal ist beispielsweise 60 Nanosekunden gegenüber der negativ verlaufenden Flanke des Signales BE D CN N — über eine nicht dargestellte Verzögerungsleitung verzögert Beim Auftritt der negativ verlaufenden Flanke des Signales BSDCNN- zum Zeitpunkt TD kann die Nebeneinheit nunmehr prüfen, ob ihre Adresse vorliegt, und sie kann, für den Fall, daß sie aufgerufen ist, mit dem Entscheidungsprozeß beginnen, um die angeforderte Antwort zu erzeugen. Typischerweise wird hierbei ein Bestätigungssignal BSACK.R— von der Nebeneinheit erzeugt und in nicht-typischen Fällen wird ein Signal BSNAKR- bzw. BSWAIT- oder im Falle einer nicht existierenden Nebeneinheit überhaupt keine Antwort erzeugt Beim Empfang der negativ verlaufenden Flanke des Bestätigungssignales im Zeitpunkt TE durch die Haupteinheit schaltet das Signal BSDCNN— der Haupteinheit auf den Binärwert »1« zum Zeitpunkt 7Fum. Das Austastsignal kehrt auf den Binärwert »1« im Zeitpunkt TG zurück, wobei dieser Zeitpunkt gegenüber dem Zeitpunkt TF mittels einer nicht dargestellten Verzögerungsleitung verzögert wird. Somit sind in der dritten Phase der Sammelschienenoperation die Daten und die Adresse auf der Sammelschiene durch die Nebeneinheit gespeichert und der Datenschienenzyklus wird ausgeschaltet Durch das Ende des Zyklus, z. B. wenn das Signal BSDCNN— den Binärwert »1« einnimmt, wird dynamisch eine andere Prioritätsausführung beigegeben. Ein Sammelschienen-Anforderungssignal kann zu diesem Zeitpunkt erzeugt werden, und für den Fall, daß ein solches nicht empfangen wird, bedeutet cHss daß die Ssmmslscliisns in den untHti^sn Zustand zurückkehrt und demgemäß das Signal BSREQT— den Binärwert »1« einnimmt Wenn das Sammelschienen-Anforderungssignal zu diesem Zeitpunkt vorliegt und somit den Binärwert »0« aufweist, so wird nach einem weiteren negativen Flankenverlauf des Signales BSDCNN— eine weitere asynchrone Prioritätsauswahl ausgelöst, was durch die gestrichelten Linien zum Zeitpunkt 7/angezeigt ist Es sei darauf verwiesen, daß diese Prioritätsauswahl keine Triggerung durch die positiv verlaufende Flanke des Bestätigungssignales zum Zeitpunkt TH erfordert, sondern bereits zum Zeitpunkt TF nach dem Übergang der Sammelschiene in den untätigen Zustand getriggert werden kann, wenn danach eine Einheit einen Sammelschienenzyklus anfordert Diese Betriebsweise wiederholt sich asynchron. Die Information, die durch diesen Sammelschienenzyklus übertragen wird, kann 51 Signale umfassen, die wie folgt unterteilbar sind:
a) 24 Adreßbits;
b) 16 Datenbits;
c) 6 Steuerbits;
d) 5 Integritätsbits.
Nachdem bis hierhin der Aufbau und die Funktion des Sammelschienensystems beschrieben worden ist, mit welchem die verschiedenen Arten von Systemeinheiten, einschließlich der Hauptspeicher, verbunden sind, wobei diese Einheiten im Dialog miteinander stehen, sei die Schnittstelle zwischen der Systemsammeischiene 302 und der Sammelschienen-Schnittstelleneinheit 301 des Puffersneichers 313 und der Ssromclschienen-Schnittstelleneinheit 303 einer Zentraleinheit CPU-3U gemäß F i g. 3 betrachtet Dies soll anhand der F i g. 3 und 7 — 11 geschehen.
Gemäß F i g. 3 ist ein Blockdiagramm der Zentraleinheit CPV-IM und des Pufferspeichers 313 dargestellt die jeweils über Sammelschienen-Schnittstelleneinheiten 301 und 303 an die System-Sammelschiene 302 angeschlossen sind, was nachfolgend näher beschrieben wird. Eine festgeschaltete Schnittstelle (Dialogschnittstelle) 311, die später beschrieben wird, verbindet die Pufferspeichereinheit mit der Zentraleinheit wodurch Anforderungen des Hauptspeichers 8, 9 gestattet werden und ein Dialog mit Adressen und Daten zwischen der Zentraleinheit CPU-ZYl und der Pufferspeichereinheit 313 ermöglicht wird. Die Pufferspeichereinheit besteht aus 4 logischen Haupteinheiten» der Sammelschienen-Schnittstelle 301, der festgeschalteten Schnittstelle 311, der Ersatz- und Fortschreibungs-Logikeinheit 314 und der Pufferlisten- und Datenpuffer-Einheit 315, wobei die beiden erstgenannten Schnittstellen weiter unten noch näher beschrieben werden.
Die Pufferlisten- und Datenpuffer-Einheit 315 stellt fest, ob das angeforderte Datenwort in dem Pufferspeicher-RAM 313 mit wahlfreiem Zugriff vorhanden ist oder nicht. Der Pufferspeicher-RAM 313 bildet typischerweise einen Hochgeschwindiglceits-Zwischenspeicher für 2048 bis 4096 Worte, die aus dem Hauptspeicher ausgelesen werden, um Daten oder Befehle an die Zentraleinheit CPU τα liefern.
Die Ersatz- und Fortschreibungs-Logikeinheit 314 bildet die erforderliche Hardware Für den Zugriff auf den Hauptspeicher 1, 2 und für die Ausführung von Überwachungsfunktionen. Die Überwachungsfunktion prüft und ermittelt alle Hauptspeicher-Schreibbezugnahmen (z. B. von der CPU-ZYl, 4a, 12 oder von dem Multiplexer /OM-Il), und sie ersetzt Daten in irgendeinem laufenden aktiven Pufferspeicherbereich mit Daten von der System-Sammelschiene 202,302
Die Sammelschienen-Schnittstelleneinheit 301 verbindet die Pufferspeichereinheit 313 mit der System-Sammelschiene 302, und sie gestattet der Pufferspeichereinheit 313 den Zugriff auf einen Hauptspeicher 1,2 über die System-Sammelschiene 302 und das Auslesen von von der Zentraleinheit angeforderter Information, die sich nicht in dem Pufferspeicher 313 befindet Ferner verbindet die Sammelschienen-Schnittstelleneinheit 303 die Zentraleinheit 312 mit der System-Sammelschiene 302, und sie bildet die Logik für den Dialog mit anderen Systemeinheiten, die ebenfalls an die System-Sammelschiene 302 angeschlossen sind. Die Sammelschienen-Schnittstelle besteht aus folgenden Teilen: a) System-
Sammelschienen-Schnittstelle; b) Anforderungs- und Prioritätslogik; c) Adressenerzeugungslogik; und d) Adreßfeld-Ersatzlogik. In diesem Zusammenhang sei auf die US-Patentschriften 40 30 075 und 39 93 981 verwiesen.
Die Zentraleinheit CPü-312 besteht aus Subsystemen bekannter Art, wie beispielsweise der Arithmetik- und Logikeinheit 316 und der Steuerspeichereinheit 317. Der zu der vorliegenden Erfindung gehörige Teil der Zentraleinheit CPU-3X2 ist die Sammelschienen-Schnittstelleneinheit 303 (auch Steuereinheit genannt), die anhand der F i g. 7—11 noch näher beschrieben wird.
Gemäß F i g. 4 ist ein typisches System einer Sammelschienen-Schnittstelleneinheit ß/t/400 dargestellt Hauptspeicheranforderungen, Adressen und Daten werden über Puffer-Sender und Empfänger 401—403 gesendet und empfangen. (Hinsichtlich Einzelheiten sei auf die Fig.7, 9—11 und die noch folgende Beschreibung verwiesen).
Kurz gesagt beginnt der Behandlungszyklus der Zentraleinheit CPUSiZ, wenn die Zentraleinheit gleichzeitig eine Speicher-Leseadresse (z. B. absolute Hauptspeicheradresse) mit dem Lese-Anforderungssignal an den Adressengenerator 406 über die festgeschaltete Pufferspeicher/Zentralprozessor-Schnittstelle 311 an die Pufferspeichereinheit 313 sendet. (Hinsichtlich der Einzelheiten der festgeschalteten Schnittstelle 311 sei auf die Fig. 12, 13 und 15 und auf den Beschreibungsabschnitt »Die Dialogschnittsteile« verwiesen). Wenn sich der Pufferspeicher nicht in einem Fortschreibungs- oder Ersatzzyklus befindet (beispielsweise wird die Information im Hauptspeicher nicht fortgeschrieben bzw. die Information im Pufferspeicher wird nicht ersetzt und die Ersatz- und Fortschreibungslogik 408 ist nicht aktiviert), so wird die von der Zentraleinheit ausgesandte Speicher-Leseadresse in eine nicht dargestellte Pufferliste umgeschaltet, in welcher eine Such- und Auswahloperation ausgeführt wird, um einen Hinweis auf einen Adressentreffer bzw. einen fehlenden Treffer zu erzeugen. Wenn die gesuchte CPlZ-Speicher-Leseadresse vorliegt (z. B. ein Treffer), so werden die zugeordneten Daten im Pufferspeicher zu der Zentraleinheit CPU-312 über die festgeschaltete Schnittstelle 311 gesendet.
Wenn die von der Zentraleinheit CPU gesendete Speicher-Leseadresse in der Pufferspeicherliste nicht vorliegt (z. B. keine Treffer), so wird die CPiZ-Speicher-Leseadresse auf das Pufferspeicher-Adressenausgaberegister 405 umgeschaltet und ein Hauptspeicherabruf für einen fehlenden Treffer ausgelöst und die System-Sammelschiene wird aktiviert, um das gesuchte Wort aufzunehmen. Dementsprechend werden die Hauptspeicheranforderungen, Adressen und Daten durch die Sammelschienen-Schnittstelleneinheit BIUM)O über die Ä/tZ-Sender/Empfänger 401—403 und die Sammelschienen-Anforderungs- und Antwortlogik 404 gesendet und empfangen. Alle Kopien der zu dem Hauptspeicher gesendeten absoluten Adressen werden in der Pufferspeicher-Ersatzdatei 407 gespeichert.
Gemäß den F i g. 7 und 8A—8D erzeugt eine Quelleneinheit, die auf der E/A-Sammelschiene 201 das Auslesen eines Speichers anfordert, eine Speicheradresse auf der Adressen-Sammelschiene 701. Diese Speicheradresse besitzt das Format gemäß den F i g. 8A bzw. 2A, wobei das Format von der Größe des Speichers abhängt. Zu dem gleichen Zeitpunkt gibt die anfordernde Quelleneinheit auf der E/A-Sammelschiene 201 gemäß F i g. 2 ihre Adresse, z. B. die Kanalnummer und einige Steuerbits auf der Daten-Sammelschiene 702 aus. Die Information besitzt das in F i g. 8B dargestellte Format Die Speichersdresse der Adressen-Sammelschiene 701 wird im Speicher-Adreßregister 36 gespeichert, während die Kanalnummer und die Steuerbits im Kanalregister 34 und dem Steuerbitregister 35 gespeichert werden. Der durch das Speicheradreßregister 36 adressierte Speicherplatz im Speicher 38 wird ausgelesen und die Daten werden im Daten-Ausgangsregister 33 gespeichert Die Daten werden sodann auf die Daten-Sammelschiene gegeben, wenn der erforderliche Zeittakt (siehe F i g. 5) die vollständige Bestätigung anzeigt, und es wird nunmehr eine anfordernde Einheit in eine empfangende Einheit umgewandelt, wobei sie bestätigen muß, daß sie bereit ist, Daten zu empfangen. Der zweite Sammel-Schienenzyklus beginnt und die Daten des Daten-Ausgangsregisters 33 werden auf die Daten-Sammelschiene 702 gegeben und zum gleichen Zeitpunkt wird die Kanalnummer und die Steuerbits von den Registern 34 und 35 in Übereinstimmung mit dem Format gemäß F i g. 8C auf die Adressen-Sammelschiene 701 gegeben. Es sei darauf verwiesen, daß dieses Format das Adressenformat darstellt, wenn eine andere Einheit als eine Speichereinheit adressiert wird. Dementsprechend wird die Adresse auf die Adressen-Sammelschiene 701 gegeben, die sich aus der ivanalnummer an den Bitpositionen 9—17 und den Steuerbits an den Bitpositionen 18—23 zusammensetzt Das Bit 21 wird dem logischen Schaltkreis gemäß F i g. 6A als das Signal MMA121 +00 zugeführt Wenn dieses Bit den hohen Pegel aufweist so wird eine Neuformatierung der Daten gefordert und die Art der Neuformatierung hängt von den anderen Signalen, die andere Anforderungen für vorliegende Operationen darstellen, ab. Es sei ferner vermerkt, daß der Schaltkreis gemäß F i g. 6A der Formatierung des Bits an der Bitposition 3 in dem Format gemäß F i g. 2A dient, wobei dieses Bit durch das Signal BIAI03+00 in Fig.6A repräsentiert wird. Ferner sei darauf verwiesen, daß das Format gemäß F i g. 8B dem Format des Blockes 308 in dem Multiplexerblock 301 des Multiplexers lOM-300 entspricht. Wenn demgemäß ein Lesezyklus von einer Quelleneinheit im Hinblick auf eine Speichereinheit angefordert wird, so wird die Daten-Sammelschiene automatisch neu formatiert, wie dies zuvor anhand von Beispielen beschrieben wurde.
Gemäß F i g. 9 ist eine typische Steuerung-Adressenlogik dargestellt. Diese Logik ist speziell für Steuerungen jenes Typs beispielhaft, an die bis zu vier Untereinheiten bzw. periphere Geräte angeschlossen sind. Ein Element 70 weist Leitungsempfänger auf, wobei einem
so solchen Empfänger das Speicherbezugssignal BSMREF— und den anderen Leitungsempfängern die Sammelschienen-Adreßsignale BSAD08— bis BSAD14— zugeführt werden. Da die in Fig.9 dargestellte Logik keiner Speichersteuerung dient, weist das Speicherbezugssignal sowohl am Eingang des Elementes 70 als auch am Ausgang des Inverters 71 den Binärwert »1« auf.
Ein Schalter 72 ist an die Adreßleitungen angeschlossen. Ferner werden die Signale der Adreßleitungen über einen Inverter 78 dem Schalter 72 zugeführt Dieser Schalter ist in den meisten Gerätesteuerungen angeordnet und an die Sammelschiene 200 angeschlossen und er wird eingestellt, um eine spezielle Einheit zu adressieren. Die Sammelschienen-Adreßleitungen am Eingang des Elementes 70 weisen hinsichtlich jener Bits, die die geeignete Adresse der gesuchten Einheit wiedergeben, den Binärwert »0« auf. Dementsprechend werden aufgrund der Umkehrung durch das Element 70 Signale mit
dem Binärwert »1« an die nicht-invertierten Eingänge des Schalters 72 angelegt, sofern die von der Sammelschiene 200 aufgenommenen Adreßbits den Binärwert »0« aufweisen. Entsprechend weisen die Ausgangsleitungen der Inverter 78 (ein Inverter pro Leitung) den Binärwert »1« im Hinblick auf jene Adreßbits auf, die hinsichtlich der von der Sammelschiene 200 abgenommenen Adresse den Binärwert »1« aufweisen. Aufgrund der an den Eingängen des Schalters 72 anliegenden Signale können die darin enthaltenen Schalter, die einem Hexadezimalschalter zugeordnet sein können, so eingestellt werden, daß für die richtige Geräteadresse Signale am Ausgang des Schalters 72 auftreten, die in allen Bitpositionen den Wert »1« aufweisen. Das Gatter 73 gibt dementsprechend an seinem Ausgang ein Signal mit dem Binärwert »0« aus, wenn die richtige Geräteadresse und kein Speicherzyklus vorliegt Es ist erkennbar, daß der Schalter 72 eine Vergleichsfunktion ausführt und eine Gatteranordnung überflüssig macht, die eine Signalverzögerung nach sich ziehen würde. Danach stellt der Schalter eine einfache Einrichtung zur Adressenänderung einer speziellen Einheit dar, wodurch der Systemaufbau vereinfacht wird.
Das Ausgangssignal MYCHAN — des Gatters 73 weist hinsichtlich der ausgewählten Nebeneinheit den Binärwert »0« auf. Das Signal MYCHAN — wird jeweils auf einen Eingang von drei NOR-Gattern 74,75 und 76 gegeben, die die Signale Bestätigung (ACK), Warten (WAIT) bzw. keine Bestätigung (NAK) erzeugen. Die anderen Eingangssignale der Gatter 74,75 und 76 werden folgendermaßen gebildet.
Dem Multiplexer 77 werden vier Signale von bis zu vier Untereinheiten bzw. peripheren Geräten zugeführt, die an die spezielle Steuerungslogik gemäß F i g. 9 angeschlossen sind. Diese den Eingängen des Multiplexers 77 zugeführten Signale zeigen entsprechend an, ob eine spezielle Untereinheit in dem System installiert ist oder nicht. Es können somit eine oder mehrere Untereinheiten angeschlossen sein. Wenn nur eine Untereinheit angeschlossen ist, so zeigt das einzige vorliegende Signal das Vorliegen dieser Untereinheit an. Die den Anschluß von Untereinheiten anzeigenden Signale sind mit MYDEVA-, MYDEVB-, MYDEVC- und MYDEVD- bezeichnet. Der Multiplexer 77 kann ebenso wie der später noch zu erläuternde Multiplexer 88 die Form des von der Firma Texas Instruments Inc. unter der Typ-Nr. 74S151 hergestellten Gerätes aufweisen. Der Binärzustand »0« dieser Signale zeigt an, daß die entsprechende Untereinheit in dem System vorliegt. Der Multiplexer 77 wird durch die Adreßsignale BSADl5+ und BSAD16 + vorbereitet, die von der Sammelschiene 200 über nicht dargestellte invertierende Verstärker empfangen werden. Die gleichen Adreßsignale werden zur Vorbereitung des Multiplexers 88 benutzt. Diese beiden Bits zeigen an, welche der vier Untereinheiten zu adressieren ist. Das Ausgangssignal MYDEVP- des Multiplexers 77 zeigt im Falle des Binärwertes »0« an, daß das adressierte Gerät vorhanden ist. Den Gattern 74, 75 und 76 wird das Ausgangssignal des Multiplexers 77 zugeführt und dementsprechend wird die Antwort einer bestimmten Steuerung durch das Vorliegen der Steuerung-Kanalnummer und die Tatsache gesteuert, daß der Steuerung die Untereinheit tatsächlich in dem System zugeordnet ist. Diese Anordnung gestattet eine Kontinuität hinsichtlich der Adressen zwischen einer Untereinheit zu der nächsten Untereinheit in einer Weise, die unter Bezugnahme auf die Speicheradressenlogik noch näher erläutert wird. Bei mehr als einer Gerätesteuerung 5—7 in dem System gemäß F i g. 2, wobei jede Steuerung 5—7 verschiedene Arten peripherer Geräte steuert, oder wobei alle Steuerungen 5—7 den gleichen peripheren Geräietyp steuern, in dem diese peripheren Geräte der Reihe nach mit der Steuerung verbunden sind, können die Adressen für jede Untereinheit aufeinanderfolgend festgelegt werden. Ferner können solche Adressen so ausgebildet werden, daß unabhängig von der Größe des Systems ein spezielle Adresse jedem peripheren Gerät zugeordnet ist
Der andere Multiplexer 88 empfängt von jedem dsr vier Untereinheiten Hinweise, die beispielsweise anzeigen, daß eine solche Untereinheit bereit ist. Daten zu empfangen oder zu setzen. Die Bereitschaftssignaie, die der Multiplexer 88 aufnimmt, sind somit von den von dem Multiplexer 77 empfangenen Präsenssignalen verschieden. Während die Präsenssignale anzeigen, ob eine spezielle Untereinheit bzw. ein bestimmtes peripheres Gerät in dem System vorliegt und installiert ist zeigen die Bereitschaftssignale an, ob die zugeordnete Untereinheit bereit und in der Lage ist. Daten zu senden oder Daten zu empfangen. Diese Bereitschaftssignale sind mit MYRDYA-, MYRDYB-, MYRDYC- und MYRDYD- bezeichnet
Das mit MYRDYS- bezeichnete Ausgangssignal des Multiplexers 88 bereitet bei einem Binärwert »0« die Erzeugung des Warte-Signales oder des Bestätigungs-Signales vor, wobei dies in Abhängigkeit von dem Zustand der anderen an den Gattern 74,75 und 76 empfangenen Signale geschieht Wenn am Ausgang des Multiplexers 88 ein Ausgangssignal MYRDYS + mit dem Binärwert »0« erzeugt wird, so wird ein Nicht-Bestätigungssignal erzeugt und hiermit angezeigt, daß die adressierte Untereinheit nicht bereitgestellt ist
Die Gatter 75 und 76 empfangen weitere Signale, wobei dem Gatter 75 das Signal BDRBSY— und dem Gatter 76 das Signal MYACKA — vom Ausgang des Gatters 84 zugeführt wird. Diese beiden Signale werden im Zusammenhang mit der Funktion der Flip-Flops 80 und 81 erläutert. In jeder Steuerung befindet sich ein Puffer bzw. Register zur Aufnahme der Daten von dem Sammelschienensystem 200. Wenn dieser Datenpuffer belegt ist, das heißt, wenn er bereits eine gespeicherte Information aufweist, die nicht verlorengehen darf, so erfolgt eine Anzeige, daß der Puffer belegt ist, wobei dieses Signal dem Eingang D des Flip-Flops 80 zugeführt wird. Das Signal am Eingang D wird am Ausgang Q beim Empfang eines Taktsignales ausgegeben, wobei das Taktsignal als ein Signal BSDCNN+ über einen Treiber von der Sammelschiene empfangen wird. Da in dem Zeitpunkt, wo der Datenzyklus beginnt, das Signal BSDCNN- gemäß Fig. 5 auf den Binärwert »0« umschaltet, gibt der Ausgang Q des Flip-Flops 80 das Signal BDRBSY+ mit dem Binärwert »1« aus, sofern der der Steuerung zugeordnete Puffer tatsächlich belegt ist. Das nachgeschaltete NAND-Gatter 85 wandelt dieses Signal in den Binärwert »0« um. Dieser auf einen Eingang des NOR-Gatters 84 geschaltete Binärwert »0« erzeugt ein Signal mit dem Binärwert »1« an dem Ausgang des Gatters 84, wodurch das Gatter 76 gehindert wird, ein Bestätigungssignal (ACK) zu erzeugen. Das Signal BDRBSY- am Ausgang Q des Flip-Pops 80 weist jedoch den Binärwert »0« auf und wird einem Eingang des Galters 75 zugeführt, welches für den Fall, daß alle anderen Eingänge den Binärwert »0« aufweisen, ein Warte-Signal (WAIT) erzeugt. Wenn der Puffer nicht belegt ist und andere Bedingungen vorliegen, wird
somit ein Bestätigungs-Signal erzeugt Wenn der Puffer belegt ist, so wird in Abhängigkeit von den anderen Bedingungen entweder ein Warte-Signal oder ein Nicht-Bestätigungssignal erzeugt
Das Flip-Flop 81 wird benutzt, um anzuzeigen, ob eine zweite Hälfte der Lesezyklusoperation vorliegt oder nicht Wie zuvor erläutert, wird das Signal BSSHBC— von der Haupteinheit benutzt, um der Nebeneinheit anzuzeigen, daß diese Information die zuvor angeforderte Information darstellt Von dem Zeitpunkt an, wo ein an die Sammelschiene angeschlossenes Gerätepaar eine durch das Signal RSWRIT— angezeigte Leseoperation begonnen hat bis zu dem Zeitpunkt, wo der zweite Zyklus auftritt, um die Übertragung zu vervollständigen, was durch das Signal BSSHBC— angezeigt wird, sind die beiden Geräte hinsichtlich aller anderen Geräte an der Sammelschiene belegt Das Signal MYDCNN+ taktet das Flip-Flop, wobei dieses Signal dem Signal <?des Bestätigungs-Flip-Flops 22 desjenigen Gerätes entspricht, das zur Haupteinheit geworden ist Dem Eingang D des Flip-Flops 81 wird das Signal MYWRIT— zugeführt welches anzeigt daß es sich hierbei um das spezielle Gerät handelt, das den Speicherlesezyklus begonnen hat und daß dieses Gerät nun auf das Auslesen des Speichers wartet und eine zweite Hälfte des Lesezyklus erwartet die durch den Speicher bei Vervollständigung des Zyklus erzeugt wird.
Dem Stammdaten-Flip-Flop 81 für die zweite Hälfte des Lesezyklus wird an seinem Rückstelleingang ein Signal zugeführt, das über ein NOR-Gatter 82 aus den Signalen MYACKR+ und BSMCLR+ gewonnen wird. Das Signal BSMCLR+ dient der Rückstellung des Flip-Flops 81 in der zuvor hinsichtlich verschiedener anderer Flip-Flops beschriebenen Weise und das Signal MYACKR+ zeigt an, daß die zweite Hälfte des Lesezyklus vervollständigt ist Wenn das Flip-Flop 81 gesetzt ist, so wird somit der Setzzustand von dem Ausgang Q des Flip-Flops 81 auf einen Eingangeines UND-Gatters 83 gegeben, wodurch dieses teilweise vorbereitet wird. Um das UND-Gatter 83 vollständig vorzubereiten, muß das Signal BSSHBC+ durch den Speicher erzeugt werden, wodurch angezeigt wird, daß dies die Information ist, die zuvor angefordert wurde. Wenn Daten vom Speicher über die Sammelschiene kommen, so wird hiermit dieses Signal aktiviert und es wird über das NOR-Gatter 84 die negativ verlaufende Flanke des Signales MYACKA — erzeugt, welches dem speziellen Gerät die Bestätigung dieses Datenschienenzyklus gestattet. Dieses Signal dient der Vorbereitung des Gatters 76 und erzeugt über ein Element 79 und einen nachgeschalteten Treiber 90 das Bestätigungs-Signal (ACK). Zusätzlich kann ein Bestätigungs-Signal erzeugt werden, wenn es sich nicht um eine zweite Hälfte des Sammelschienenzyklus handelt und der Puffer nicht belegt ist. In diesem Fall erfolgt die Anzeige über das Gatter 85 und das Gatter 84, die das Bestätigungs-Signal erzeugen.
Wenn somit die spezielle Steuerung auf einen Sarnmeischienenzyklus wartet und ihr Stammdaten-Flip-Flop 81 für die zweite Hälfte des Lesezyklus gesetzt ist, so kann hinsichtlich dieses besonderen Gerätes nur auf den Empfang eines Sammelschienen-Zyklussignales der /weiten Hälfte BSSHBC+ geantwortet werden. Wenn dieses spezielle Gerät nicht auf die zweite Hälfte eines Sammelschienenzyklus wartet, so wird für den Fall, daß der Puffer nicht belegt ist und nicht langer irgendeine nützliche Information speichert, ein Bestätigungs-Signal erzeugt.
Das Sammelschienen-Zyklussignal für die zweite Hälfte BSSHBC+ wird zusätzlich einem Eingang des Gatters 74 sowie einem Eingang des Gatters 75 zugeführt Wenn das Stammdaten-Flip-Flop 81 gesetzt worden ist. so stellt das Bestätigungs-Signal das einzige erzielbare Ausgangssignal dar, wenn die korrekte Kanalnummer usw. vorliegt was durch die Eingangssignaie des Gatters 76 angezeigt wird. Diese Signale hängen davon ab, ob der Puffer belegt ist oder nicht was durch
ίο das Flip-Flop 80 angezeigt wird. Ein Nicht-Bestätigungs-Signal oder ein Warte-Signal wird dementsprechend durch die Gatter 74 und 75 nur erzeugt wenn keine zweite Hälfte hinsichtlich des Sammelschienen-Zyklussignales vorliegt das heißt wenn das Signal BSSHBC+ den Binärwert »0« besitzt Eine zweite Hälfte eines Sammelschienenzyklus kann vom Standpunkt der den Zyklus empfangenden Steuerung ebenfalls von einem Speicher kommen, wenn der Speicher bereit ist die Daten an die Steuerung abzugeben, wobei weder ein Nicht-Bestätigungs-Signal noch ein Warte-Signal erzeugt werden kann sondern nur ein Bestätigungssignal. Daher kann weder ein Nicht-Bestätigungs-Signal noch ein Warte-Signal erzeugt werden, wenn das Signal BSSHBC + den Binärwert»1« aufweist
Wenn Information von dem Speicher übertragen wird, so kann der Speicher niemals ein Nicht-Bestätigungs-Signal oder ein Warte-Signal empfangen. Dies beruht auf der Prioritätsanordnung der erfindungsgemäßen Einrichtung. Der Speicher bildet das Gerät mit der höchsten Priorität Wenn eine Einheit den Speicher um Informationsübersendung gebeten hat, so kann diese Einheit die Information zu einem bestimmten Zeitpunkt erwarten. Wenn die Einheit ein Warte-Signal oder ein Nicht-Bestätigungs-Signal für den Speicher erzeugt, so kann der Speicher aufgrund seiner höchsten Priorität versuchen. Zugriff zu der speziellen die Datenübertragung verlangenden Steuerung zu gewinnen und die Sammelschiene sperren, um weitere Datenübertragungen zu verhindern, bis die Daten von der speziellen Steuerung angenommen worden sind. Es kann somit nur ein Bestätigungs-Signal in Abhängigkeit einer Speicheranforderung sur Annahme von Daten gebildet werden. Eine Steuerung jedoch kann ein Nicht-Bestätigungs-Signal oder ein Warte-Signal für eine andere Steuerung oder eine Zentraleinheit erzeugen. Eine allgemeine Regel ergibt sich dahingehend, daß, wenn eine Steuerung Information von einer Steuerung mit höherer Priorität anfordert, die anfordernde Steuerung bereit sein muß, die Information zu akzeptieren und dementsprechend mit einem Bestätigungssignal zu antworten.
Im Hinblick auf den Bereitschaftsmultiplexer 88 wird in der erwähnten Weise das Nicht-Bestätigungs-Signal erzeugt, wenn das Gerät nicht bereit ist und andere Bedingungen erfüllt werden. Der Grund dafür, daß das Nicht-Bestätigungs-Signal anstelle des Warte-Signales erzeugt wird, liegt darin, daß im Falle des Belegt-Zustandes der Steuerung, beispielsweise der Steuerung 210, der Anschluß über längere Zeit belegt ist. Der Belegt-Zustand dauert nicht nur für wenige μβ, sondern über mehrere ms an. Somit würde Zykluszeit verschwendet, wenn der Haupteinheit angezeigt würde, daß sie weiterhin einen Zugriff versuchen soll. Stattdessen soll ein Hinweis dahingehend erfolgen, daß die anfordernde Einheit mit der Datenverarbeitung weiterschreiten soll anstelle unnötigerweise Sammelschienenzyklen zu benutzen und dadurch die Gesamtantwort des Systems zu verzögern. Alles was die anfordernde Einheit zu tun hat, besteht darin, den Zugriff zu der Zielein-
heit in angemessenen Abständen wieder zu versuchen.
Wie zuvor erwähnt, wird dem Tasteingang des Multiplexers 88 ein mit MYFCOl + bezeichnetes Signal von dem Gatter 86 zugeführt. Dieses Signal steHt eine Kombination des Funktionscodes der Signale am Eingang des NOR-Gatters 86 dar, wobei dieses Steuerbit bzw. dieser Funktionscode in Fig.8C dargestellt ist und durch die Bits 18 bis 22 gebildet wird, wobei das Bit 23 nicht benutzt wird. Durch diese Bits wird der Funktionsauf der Leitung MYMADD—, welches an einem Eingang eines jeden der drei NOR-Gatter 44, 45 und 46 empfangen wird. Diese Gatter werden benutzt, um das Nicht-Bestätigungs-Signal NAK, das Warte-Signal 5 WAIT und das Bestätigungs-Signal ACK zu erzeugen Der Speicher kann nicht ad-essiert werden bis das Signal BSMREF+ tatsächlich den korrekten Binärzustand aufweist
Die Adreßbits werden den Eingängen des Paritäts
code vorgegeben, so daß die verschiedenen an die Sam- ίο prüfers 47 zugeführt, welchem zusätzlich das Bit melschiene angeschlossenen Einheiten bestimmte Co- BSAPOO+ aufgeschaltet wird. Das Bit BSAPOO+ stellt des und Anweisungen in der zuvor erläuterten Weise
erkennen können.
Das Nicht-Bestätigungs-Signal BSNAKR— wird
die über die Sammelschiene erhaltene Adressenparität dar. Der Paritätsprüfer 47 führt eine 9-Bit-Paritätsprüfung durch und erzeugt an seinem Eingang Q ein Signal
über den Treiber 92 von dem entsprechenden Flip-Flop is MYMADP—, welches bei einem Binärwert »0« teilweides Elementes 79 erzeugt, wenn das Gatter 74 vollstän- se die Gatter 44, 45 und 46 vorbereitet und hiermit dig vorbereitet ist und wenn das Signal BSDCND + das anzeigt, daß die Parität korrekt ist. entsprechende Flip-Flop taktet Das Gatter 74 ist voll- Ein drittes Eingangssignal der Gatter 44, 45 und 46
ständig vorbereitet, wenn die Kanalnummer empfangen wird von dem Multiplexer 48 empfangen, der dem MuI-wird, wenn die Geräteadresse einen Hinweis liefert, daß 20 tiplexer 47 gemäß F i g. 9 entspricht Dem Multiplexer das Gerät installiert ist, wenn dieses Gerät nicht bereit 48 werden beispielsweise vier Eingangssignale zugeist und wenn es sich nicht um die zweite Hälfte des führt, die mit MYMOSA- bis MYMOSD- bezeichnet Sammelschienenzyklus handelt Das Warte-Signal sind und die anzeigen, ob irgendeiner oder alle Spei-BSWAlT- wird von dem Treiber 91 auf der Sammel- chermodule, die an diese spezielle Steuerung angeschiene erzeugt, wenn das Gatter 75 vollständig vorbe- 2s schlossen sind, tatsächlich in dem System vorhanden reitet ist und das zugehörige Flip-Flop in dem Element sind. Dies gestattet die Bildung eines Speichers mit ei-79 betätigt wird. Das Gatter 75 ist vollständig vorberei- nem vollständigen Speicherfeld bzw. mit einem Teiltet wenn die Kanalnummer empfangen wird, wenn die Speicherfeld in dem Fall, wo nur einer dieser Speicher-Geräteadresse einen Hinweis liefert daß das Gerät tat- module an das System angeschlossen ist Diese vier sächlich installiert ist wenn das Gerät bereit ist, wenn 30 Speichermodule werden ferner adressiert und es wird ein Hinweis vorliegt, daß es sich nicht um die zweite über den Multiplexer 48 geprüft ob sie mittels der beiHälfte des Sammelschienenzyklus handelt und wenn der den Sammelschienen-Adreßsignale BSAD08+ und Puffer belegt ist Das Bestätigungs-Signal BSACKR- BSAD09+ installiert sind.
wird auf der Sammelschiene mittels des Treibers 90 aus- Hinsichtlich verschieden konfigurierter Systeme kann
gegeben, wenn das Gatter 76 vollständig vorbereitet ist 35 somit ein Speichermodul an eine bestimmte Speicherund dementsprechend das zugehörige Flip-Flop in dem steuerung angeschlossen sein und es können zwei sol-Element 79 betätigt wird. Das Gatter 76 ist vollständig eher Module an eine andere Speichersteuerung angevorbereitet wenn die richtige Kanalnummer empfan- schlossen sein, wobei die an die verschiedenen Steuegen wird, wenn die Geräteadresse einen Hinweis liefert, rungen angeschlossenen Speichermodule von unterdaß das entsprechende Gerät installiert ist, wenn sich 40 schiedlichem Typ sein können. Beispielsweise kann auf das adressierte Gerät in Bereitschaft befindet und wenn diese Weise ein Halbleiterspeicher an eine Steuerung der Puffer nicht belegt ist. Sollte jedoch eine zweite angeschlossen sein während ein Magnetkernspeicher an Hälfte eines Lesezyklus-Signales empfangen werden, so eine andere Steuerung angeschlossen sein kann. Ferner wird ein Bestätigungs-Signal unabhängig davon er- können Speichermodule verwendet werden die eine unzeugt, ob der Puffer belegt ist oder nicht Jedes der 45 terschiedliche Größe, d. h. eine mehr oder weniger gro-Flip-Flops in dem Element 79 wird durch ein Signal ße Speicherkapazität aufweisen. Durch die Anordnung BSDCNB- gelöscht das über den Inverter 89 vom der Speichermodule in verschiedenen Steuerungen kön-Ausgang des Gatters 26 in F1 g. 8 empfangen wird. nen sodann ferner verschiedene Speichergeschwindig-
Nachdem die typische Adressierungslogik einer keiten verwendet werden, wodurch die Geschwindig-Steuerung, beispielsweise einer Steuerung 5-7, be- 50 keil der Systemantwort erhöht wird. Für jede vorgegeschneben worden ist sei nunmehr die typische Adres- bene Steuerung gibt es normalerweise nur eine vorgesierungslogik für eine Speichersteuerung erläutert Die gebene Netzunterstützung und Zeittaktmöglichkeit und Speicher-Steuerungslogik gemäß F i g. 10 entspricht in im Normalfall beeinflußt die Steuerung die Charakterimancherlei Hinsicht der Logik gemäß F i g. 9. Das über stik der Speicher, die an sie angeschlossen sind Wenn das Element 40 von der Sammelschiene empfangene 55 dementsprechend zum Beispiel verschiedene Speicher-Adreßsignal wird in Form der Sammeischienen-Adreß- geschwindigkeiten oder verschiedene Zeittakte erforsignale BSADOO + bis BSAD07 + m dem Format ge- derlich sind, wie dies beispielsweise zwischen Kernspeimaß F1 g. 8A übertragen. Die Adreßsignale des Emp- ehern und Halbleiterspeichern der Fall ist so muß eine fangers 40 werden ebenfalls als Eingänge dem Paritäts- unterschiedliche Steuerung für jeden Speichertyp verprüfer 47 zugeführt Ferner werden die Adreßsignale eo wendet werden. Durch die Verwendung verschiedener des Empfängers 40 ebenso wie jene Signale am Aus- Steuerungen können die Speicher schneller betrieben gang des Inverters 41 einem Schalter 42 in der in F i g. 9 werden, da sie im wesentlichen zeitlich parallel zueinangezeigten Weise zugeführt. Wenn das Speicher-Bezugs- der arbeiten. Obgleich sie an die gleiche Sammelschiene signal BSMREF+ den Binarwert »1« aufweist und die angeL-hlossen sind, kann jedoch nur eine Übertragung durch den Schalter 42 verglichene Adresse am Ausgang 65 zu einem Zeitpunkt auf der Sammelschiene stattfinden, des Schalters 42 lauter Binärziffern mit dem Wert »1« wobei jedoch die Information in den Speicher ohne jeeerzeugt, so wird das NAND-Gatter 43 vollständig vor- liehe Zugriffszeit eingelesen werden kann, da tatsächlich bereitet und erzeugt ein Binärsignal mit dem Wert »0« die Zugriffszeit bereits verstrichen ist
Wie bereits erwähnt, besitzt jede Steuerung, ganz gleich ob sie für einen Speicher oder ein anderes peripheres Gerät vorgesehen ist, im allgemeinen ihre eigene spezifische Adresse. Für verschiedene Speichersteuerungen, die einen vollständigen Satz von angeschlosse- s nen Speichermodulen aufweisen, können somit fortlaufende Speicheradressen verwendet werden. Unter der Annahme, daß insbesondere an jede Speichersteuerung vier Speichermodule angeschlossen sind und daß jeder Modul eine Speichermöglichkeit von ungefähr 8000 Worten aufweist, ist sodann eine solche Speichersteuerung in der Lage, Zugriff auf 32 000 gespeicherte Worte zu ermöglichen. Bei einer Speicherung von 32 000 Worten in dem System hinsichtlich jeder Speichersteuerung grenzen die Adressen der Speicherplätze aneinander an. Vom Gesichtspunkt des Betriebs sind aneinandergrenzende Speicheradressen nicht nur zum Zweck der Systemadressierung von Bedeutung sondern auch für eine erhöhte Antwortgeschwindigkeit des Systems. Wie zuvor erwähnt, kann die Speichersteuerung typischerweise nur mit einem Speicher bestimmter Charakteristik zusammenarbeiten, z. B. kann ein Magnetkernspeicher nicht an die Speichersteuerung für einen Halbleiterspeicher angeschlossen werden aufgrund der grundlegenden Zeittaktdifferenzen zwischen beiden Speichertypen. Das gleiche gilt für Speicher mit unterschiedlichen Geschwindigkeiten oder verschiedenen Anforderungen an die Stromversorgung. Unter der Annahme, daß jede Speichersteuerung bis zu 32 000 Worte im Speicher steuern kann, können 16 000 Worte des Speichers in einem Langsamspeicher und weitere 16 000 Worte in einem Hochgeschwindigkeitsspeicher verwendet werden, was dazu führt, daß zwei Speichersteuerungen benutzt werden müssen. Dies würde jedoch bedeuten, daß die Speicheradressen zwischen dem Speicher mit hoher Geschwindigkeit und dem Speicher mit niedriger Geschwindigkeit nicht fortlaufend ausgebildet sein dürfen, da die von der Speichersteuerung ausgegebenen Adressen um 32 000 Worte auseinanderliegen. In diesem Fall ist es möglich, fortlaufende Speicheradressen vorzugeben, indem beiden Speichersteuerungen gestattet wird, die gleichen Adressen auszugeben. Dies würde jedoch ebenfalls bedeuten, daß die entsprechenden Speichermodulpositionen der beiden Steuerungen nicht beide in der gleichen Position einer jeden solchen Steuerung angeordnet sein können. Insbesondere würde die erste Steuerung in den Speichermodulpositionen A und B zwei 8000-Wort-Speicherplätze benutzen, wie dies durch die Signale MYMOSA- und MYMOSB— angezeigt ist. Die andere Steuerung würde die beiden anderen Speichermodulpositionen benutzen, deren Vorhandensein durch die Signale MYMOSC— und MYMOSD — angezeigt wird. Diese beiden Steuerungen treten daher in dem System auf, als wären sie eine Steuerung. In einem weiteren Beispiel kann eine solche Steuerung an einen Speicher mit 8000 Worten in Form eines Moduls angeschlossen sein, während die andere Speichersteuerung mit der gleichen Adresse an bis zu drei solcher Speichermodule in den anderen drei Positionen und dementsprechend an einen Speicher mit 24 000 Worten angeschlossen sein kann. Diese Anordnung muß nicht notwendigerweise auf verschiedene Speichertypen begrenzt werdea sondern kann auch auf das Problem ausgerichtet sein, das sich beim Anschluß fehlerhafter Speichermodule an eine Steuerung ergibt Beispielsweise kann ein redundanter Speichermodul vorgesehen werden, der an eine andere Steuerung angeschlossen ist, deren Geräteadresse angewählt werden kann, wenn der Auftritt eines Fehlers in einem solchen Speichermodul festgestellt wird.
Unter Bezugnahme auf F i g. 10 und die Vorbereitung der Gatter 44,45 und 46 ist zu bemerken, daß zur Betätigung dieser Gatter und zur Weiterleitung einer Antwort von der speziellen Speichersteuerung folgende Bedingungen erfüllt sein müssen: Die Adresse der Speichersteuerung muß vorliegen, ein Hinweis, daß der entsprechende Modul in dem System installiert ist, muß vorliegen und der Paritätsprüfer 47 muß anzeigen, daß die Adreßparität korrekt ist. Die anderen Eingangssignale der NOR-Gatter 44,45 und 46 werden durch die zuvor beschriebenen den Belegtzustand und die Vorgeschichte feststellenden Logikschaltkreise gebildet.
Das Speichersteuerung-Belegtsignal wird von dem Flip-Flop 49 geliefert und zeigt an, daß irgendeiner der an diese Steuerung angeschlossenen Speichermodule belegt ist Das Flip-Flop 49 wird von dem Signal BSDCNN+ getaktet. Wenn ein Speichermodul belegt ist, so wird ein WARTE-Signal erzeugt Wenn somit das Signal MYBUSY- am Ausgang Q des Flip-Flops 49 den Binärwert »0« aufweist, so wird hierdurch — falls die anderen Bedingungen erfüllt sind — das Gatter 45 betätigt und das zugeordnete Flip-Flop in dem Element 56 gesetzt, wobei dies dann geschieht, wenn das Signal BSDCND+ am Takteingang des Elementes 56 auftritt An dieser Stelle sei erwähnt, daß dieses Flip-Flop innerhalb des Elementes 56 gelöscht wird, wenn über den Inverter 63 das Signal BSDCNB— empfangen wird. Das Bestätigungs-Signal wird erzeugt, wenn am Ausgang Q des Flip-Flops 49 der Binärwert »0« auftritt wobei dieser Wert in Form des Signales MYBUSY+ auf einen Eingang des Gatters 46 gegeben wird. Es sei erneut darauf verwiesen, daß das WARTE-Signal die Bedeutung einer sehr kurzen Verzögerung besitzt da der Speicher noch belegt ist
Die andere Bedingung, die anzeigt welches der Signale »Bestätigen«, »Nicht-Bestätigen« bzw. »Warten« zu erzeugen ist wird durch das Verriegelungssignal vorgegeben, welches eine Mehrzyklus-Sammelschienenübertragung umfaßt wobei ein Gerät auf einen spezifischen Speicherplatz Zugriff nehmen kann, ohne daß irgendein anderes verriegeltes Gerät in der Lage ist die Operation zu unterbrechen. Die Wirkung dieser verriegelten Operation besteht darin, den Belegtzustand der Speichersteuerung für bestimmte Arten von Operationen über die Beendigung eines einzelnen Zyklus hinaus zu erstrecken. Geräte, die eine Verriegelungsoperation auszulösen versuchen bevor der letzte Zyklus der Folge vervollständigt ist empfangen ein Nicht-Bestätigungs-Signal. Der Speicher wird jedoch noch auf eine Speicheranforderung antworten, wie dies erläutert wird. Ks sei darauf verwiesen, daß die Zwischenzeit zwischen diesen Zyklen durch andere Geräte benutzt werden kann, die an der Übertragung nicht beteiligt sind. Ein verriegelter Betrieb wird primär benutzt, wenn zwei oder mehr Geräte das gleiche Systemmittel, z. B. einen Speicher, gemeinsam benutzen sollen. Der verriegelte Betrieb, der irgendeine Anzahl von Sammelschienenzyklen umfassen kann, wird durch die spezielle Einheit entriegelt die die Steuerung über das gemeinsam benutzte Systemmittel innehatte. Während das gemeinsam benutzte Systemmittel verriegelt ist bleiben andere Einheiten, die Zugriff auf das gemeinsam benutzte Systemmittel wünschen, ausgesperrt, sofern diese anderen Einheiten das Verriegelungssteuersignal ausgeben. Wenn das Verriegelungssteuersignal nicht vorliegt so ist es möglich, daß eine solche andere Einheit Zugriff zu dem
gemeinsam benutzten Systemmittel gewinnt, um beispielsweise eine dringende Anforderung zu bearbeiten. Bevor irgendeine Einheit, die das Verriegelungssteuersignal anbietet, Zugriff auf ein gemeinsam benutztes Systemmittel gewinnt, überprüft sie das Systemmittel, um zu sehen, ob es einem verriegelten Betrieb unterliegt und die Einheit kann dann während des gleichen Sammelschienenzyklus Zugriff zu dem Systemmittel gewinnen, falls das Systemmittel an einem verriegelten Betrieb nicht beteiligt ist.
Es ist somit ersichtlich, daß der verriegelte Betrieb für die gemeinsame Benutzung eines Systemmittels zwischen jenen Einheiten wirksam ist, die die geeigneten Steuerungen, z. B. das Verriegelungssteuersignal, ausgeben, und daß ein solcher Betrieb z. B. benutzt werden kann, urn einen Teil eines Speichers, in dem eine informationstabelle gespeichert sein kann, gemeinsam zu benutzen. Wenn ferner eine dieser Einheiten die Information in dem gemeinsam benutzen Systemmittel zu ändern wünscht, so können andere Einheiten ausgesperrt werden, so daß sie keinen Zugriff auf eine nur teilweise geänderte Information sondern nur Zugriff auf die Information erlangen, nachdem diese vollständig geändert worden ist. In einem solchen Fall kann eine Lese-Modifikations-Schreiboperation beteiligt sein. Durch Verwendung des verriegelten Betriebs kann ein Mehrprozeßverarbeitungssystem unterstützt werden. Bei beispielsweise zwei an das gleiche Sammelschienensystem 200 angeschlossenen Zentraleinheiten können beide Zentraleinheiten die an die Sammelschiene angeschlossenen Speichereinheiten gemeinsam benutzen, ohne daß eine Überlappung stattfindet, sofern von einem verriegelten Betrieh Gebrauch gemacht wird.
Das Signal BSSHBC- für den verriegelten Betrieb wird hier in einer etwas anderen Weise benutzt als dies zuvor erläutert wurde. Während des verriegelten Betriebs wird das Signal BSSHBC— von der Einheit ausgegeben, die ein Systemmittel gemeinsam zu benutzen versucht, um sowohl Zugriff zu dem gemeinsam benutzten Systemmittel durch eine Test- und Verriegelungsprozedur zu gewinnen und um das gemeinsam benutzte Systemmittel zu entriegeln, wenn sein verriegelter Betrieb abgeschlossen ist
Gemäß Fig. 10 ist ein Verriegelungs-Stammdaten-Flip-Flop 50 vorgesehen, welches in gesetztem Zustand anzeigt, daß ein verriegelter Betrieb vorliegt, wodurch ein Nicht-Bestätigungs-Signal an eine anfordernde Einheit über den Treiber 59 ausgegeben wird. Unter der Annahme, daß die Logik gemäß F i g. 10 die Schnittstellenlogik für das gemeinsam benutzte Systemmittel des Sammelschienensystems 200 darstellt, wird das Signal BSLOCK+ mit dem Bir.ärwert »1« sowohl dem UND-Gatter 52 als auch dem Flip-Flop D 3 des Elementes 56 zugeführt Das Element 56 erzeugt hierbei das Signal MYLOCK+, das einem Eingang des UND-Gatters 51 zugeführt wird. Wenn das Verriegelungs-Stammdaten-FIip-Flop nicht gesetzt ist, so weist das Signal NAKHIS + den Binärwert »0« auf, wodurch unabhängig von dem Zustand der beiden anderen Eingangssignale des Gatters 52 ein Binärsignal mit dem Wert »0« an einem Eingang des Gatters 46 erzeugt wird. Wenn alle Eingänge des Gatters 46 den Binärwert »0« aufweisen, so wird hierdurch angezeigt, daß die laufende Adresse für diese Einheit empfangen wird und daß der Puffer nicht belegt ist, worauf ein Bestätigungs-Signal von dem Element 56 und dem Treiber 61 beim Vorliegen des Signales BSLOCK+ erzeugt wird. Das Bestätigungs-Signal betätigt das UND-Gatter 51 und setzt das Stammdaten-Flip-Flop 50 beim Vorliegen des Binärwertes »1« hinsichtlich des Signales BSSHBC— am Eingang D des Flip-Flops, wobei dieses Signal zusammen mit dem Signal BSLOCK+ beim Fortschreiten der verriegelten Operation empfangen wird. Es wird somit eine Test- und Verriegelungsoperation während des gleichen Sammeischienenzyklus ausgeführt.
Wenn das Flip-Flop 50 bereits zu dem Zeitpunkt gesetzt gewesen ist, in dem die Signale BSLOCK+ und BSSHBC— mit dem Binärwert »1« empfangen werden, so wird ein Binärsignal mit dem Wert »1« am Ausgang des UND-Gatters 52 erzeugt, welches Signal über den Inverter 58 das UND-Gatter 44 vorbereitet. Wenn alle anderen Bedingungen hinsichtlich dieses Gatters 44 erfüllt sind, so wird das Nicht-Bestätigungs-Signal erzeugt Die Test- und Verriegeiungsoperation erzeugt somit eine Nicht-Bestätigungs-Antwort, wodurch eine andere Einheit an der gemeinsamen Benutzung des Systemmittels gehindert wird.
Wenn das das gemeinsam benutzte Systemmittel benutzende Gerät einmal seine Operation durchlaufen hat, so muß es das Systemmittel entriegeln. Dies geschieht durch den Empfang des Signales BSLOCK+ mit dem Binärwert »1« von der benutzenden Einheit und durch das Signal BSSHBC— mit dem Binärwert »0«. Aufgrund dieser Signale bildet die Logik gemäß Fig. !0 eine Bestätigungs-Antwort, wodurch das Gatter 51 betätigt und hierdurch das Stammdaten-Flip-Flop 50 beim Vorliegen des Signales BSSHBC— mit dem Binärwert »0« zurückgestellt wird. Das gemeinsam benutzte Systemmittel kann nunmehr eine Bestätigungs-Antwort an andere Einheiten abgeben.
Es ist ersichtlich, daß das gemeinsam benutzte Systemmittel nur andere Einheiten aussperrt, die das Signal BSLOCK+ mit dem Binärwert »1« anbieten. Wenn eine Einheit beispielsweise Zugriff zu einem gemeinsam benutzten Systemmittel zu gewinnen wünscht wobei das Stammdaten-Flip-Flop so gesetzt ist, daß das Signal NAKHIS + den Binärwert »1« aufweist so weist, wenn das Signal BSLOCK+ den Binärwert »0« besitzt, der Ausgang des UND-Gatters 52 den Binärwert »0« auf, wodurch eine Nicht-Bestätigungs-Antwort gesperrt und in Abhängigkeit von anderen Bedingungen eine Warte- oder Bestätigungs-Antwort freigegeben wird.
Somit kann eine Einheit Zugriff auf ein gemeinsam benutztes Systemmittel gewinnen obgleich sie an einer verriegelten Operation beteiligt ist.
Es ist somit ersichtlich, daß die Erzeugung eines Warte-Signales durch irgendeine der Steuerungen einem Gerät oder einer Steuerung mit höherer Priorität die Einschaltung in die Folge der Sammelschienenzyklen und die Benutzung der Sammelschiene in der erforderlichen Weise gestattet Wenn keine Einheit mit höherer Priorität vorliegt, die eine Behandlung anfordert, so wird die spezielle Kaskadenanordnung aufrechterhalten bis die Bestätigung von der Haupteinheit empfangen wird, wodurch der Warte-Zustand beendet wird. Danach wird einem anderen Benutzer die Benutzung der Sammelschiene gestattet Das Signal BSDCNN+ gestattet somit einer Nebeneinheit die Erzeugung irgendeiner von drei Antworten, die durch die Signale NichtBestätigung, Warten oder Bestätigung gegeben sind. Am Ende irgendeiner dieser Antworten tritt ein neuer Prioritäts-Ausführungszyklus auf und das spezielle Gerät gewinnt Zugriff zu der Sammelschiene bzw. ein anderes Gerät mit höherer Priorität gewinnt diesen Zugriff. Es sei an dieser Stelle vermerkt, daß die Signalzustände auf der Sammelschiene sich umgekehrt zu dem
Binärzustand der Signale in den Geräten verhalten. Beispielsweise weist das Speicherbezugssignal zwischen den Treibern 59, 60 und 61 und den Empfängern 40 einen Zustand auf, der dem Zustand dieses Signales innerhalb der Steuerung selbst entgegengesetzt ist. Ferner kann — wie bereits angedeutet — eine vierte Antwort zwischen den an die Sammelschiene angeschlossenen Steuerungen erfolgen, die darin besteht, daß überhaupt keine Antwort gegeben wird. Wenn daher eine der Haupteinheiten eine Bedienung durch den Speicher aufruft und dieser Speicher in dem System nicht installiert ist, so erzeugt ein bekanntes Zeitablaufelement nach einer bestimmten Zeitperiode von beispielsweise 5 μβ ein Signal, das einem Nicht-Bestätigungs-Signal entspricht. An dieser Stelle kann eine Zentraleinheit is wirksam werden und beispielsweise eine Unterbrechungs- bzw. Abfangroutine durchführen.
Hinsichtlich des Speicher-Belegt-Flip-Flops 49 wird dessem Dateneingang das Signal MOSBSY+ zugeführt, welches zu der Sammelschienenoperation asynchron ist. Dieses Signal kann zu irgendeinem Zeitpunkt auftreten, unabhängig von der auf der Sammelschiene hinsichtlich irgendeiner Steuerung auftretenden Operation. Wenn das Signal BSDCNN + von der Haupteinheit am Takteingang des Flip-Flops 49 empfangen wird, so wird der Zustand des Speichers, z. B. belegt oder nicht belegt, zu diesem Zeitpunkt gespeichert Hierdurch wird somit eine Verwirrung hinsichtlich der Antwort auf den Sammelschienenzyklus eliminiert. Ohne die Verhaltensspeicherung durch das Flip-Flop 49 wäre es möglich, den Sammelschienenzyklus in einem Warte-Zustand zu starten und den gleichen Sammelschienenzyklus in einem Zustand zu beenden, der eine Bestätigung erzeugt Wenn somit beide Antworten während des gleichen Sammelschienenzyklus auftreten, so liegt ein Fehlerzustand vor. Durch Verwendung des Stammdaten-Flip-Flops 49 wird die Antwort entsprechend dem Zustand der Steuerung zum Zeitpunkt des Empfangs des Signales BSDCNN+ festgehalten, wodurch eine asynchrone Antwort unabhängig von der unterschiedlichen Speichergeschwindigkeit gestattet wird.
Gemäß Fig. 11 werden Signale von der Sammelschiene durch in einem Element 99 enthaltene Empfänger aufgenommen. Das Speicherbezugssignal BSMREF— wird von einem solchen Empfänger empfangen, durch einen Inverter 100 invertiert und einem Eingang eines Vergleichers 103 zugeführt um diesen Vergleicher freizugeben, wenn die empfangene Adresse keine Speicheradresse darstellt Einer der Vergleichseingänge des Vergleichers 103 wird durch die Daten- prozessor-Adreßbits gebildet, welche im vorliegenden FaU beispielsweise in Form der vier Signale BSAD14 + bis BSADl 7+ vorliegen. Diese Adresse an einem Eingang des Vergleichers 103 wird mit der Adresse verglichen, die beispielsweise durch den hexadezimalen Schalter 101 im Datenprozessor selbst eingestellt wird. Wenn die empfangene Adresse und die durch den Schalter 101 vorgegebene Adresse einander gleich sind, so erzeugt der Vergleicher 103 das Signal ITSMEA+, durch welches die Gatter 106 und 107 teilweise vorbereitet werden.
Weitere Adreßbits BSAD08+ bis BSADl 3+ werden den Eingängen des Vergleichers 104 zugeführt, welcher feststellt ob diese Bits alle den Wert »0« aufweisen oder nicht. Weisen alle Bits den Wert »0« auf, so wird das Signal ITSMEB+ erzeugt wodurch die Gatter 106 und 107 ebenfalls teilweise vorbereitet werden. Beim Vorliegen eines weiteren Eingangssignales hinsichtlich der Gatter 106 bzw. 107 wird ein entsprechendes Flip-Flop in dem Element 113 gesetzt.
Das weitere Eingangssignal des Gatters 106 wird durch das Signal BSSHBC+ gebildet, das über einen Inverter 116 an das Gatter 106 angeschlossen ist. Dieses die zweite Hälfte des Sammelschienenzyklus repräsentierende Signal wird ebenfalls einem Eingang des UND-Gatters 109 zugeführt. Der andere Eingang des Gatters
109 wird durch den Ausgang Q des Stammdaten-Flip-Flops 110 für die zweite Hälfte des Lesezyklus gebildet. Dieses Flip-Flop wird benutzt, um festzuhalten, daß der Datenprozessor sein Signal MYDCNN+ ausgegeben hat und daß die Zentrale·· heit ebenfalls das Signal MYWRIT— gesendet hat, welches beinhaltet, daß der Datenprozessor einen Antwortzyklus von der Nebeneinheit erwartet. Sei einem solchen Betrieb in zwei Zyklen werden die erwarteten Daten dem Zentralprozessor in dem zweiten Zyklus angeboten und das Flip-Flop
110 identifiziert diese Daten als jene, die der Zentralprozessor aufgrund der Tatsache angefordert hat, daß das Stammdaten-Flip-Flop 110 das Signa! MYSHRH+ am Ausgang Q erzeugt hat Das Flip-Flop 110 wird über das NOR-Gatter 111 zurückgestellt, wenn das Sammelschienen-Löschsignal BSMCLR 4 empfangen wird oder wenn die zweite Hälfte des Sammelschienenzyklus vervollständigt worden ist, was durch das Sigi£! MYSHRC+ angezeigt wird. Das Signal MYSHRC + wird von einem Ausgang des Elementes 113 abgenommen.
Das UND-Gatter 107 ist somit vollständig vorbereitet wenn zwei Eingänge anzeigen, daß es sich um das adressierte Gerät handelt und wenn der andere Eingang anzeigt daß ein Sammelschienenzyklus in der zweiten Hälfte vorliegt Bei Betätigung des UND-Gatters 107 wird somit das Signal MYSHRC— erzeugt und auf einen Eingang des NOR-Gatters 114 gegeben. Das NOR-Gatter 114 erzeugt ein Bestätigungs-Signal BSACKR— über den Treiber 115.
Das Gatter 106 ist vollständig vorbereitet wenn die richtige Geräteadresse empfangen wird und wenn es sich nicht um einen Sammelschienenzyklus der zweiten Hälfte handelt wobei ein Signal MYINTR+ am Ausgang des entsprechenden Flip-Flops innerhalb des Elementes 113 erzeugt wird. Das Signal MYINTR+ veranlaßt die Logik gemäß F i g. 11 festzustellen, ob ein Bestätigungs- oder ein Nicht-Bestätigungs-Signal erzeugt werden soll oder nicht. Die Art des erzeugten Signals hängt von dem gegenwärtig in dem System vorliegenden Unterbrechungspegel im Vergleich zu dem Unterbrechungspegel des Verarbeitungszeit anfordernden Gerätes ab.
Die Entscheidung darüber, ob der Unterbrechungspegel ausreichend ist oder nicht wird durch den Vergleicher 117 getroffen, der feststellt ob der Eingang A kleiner als der Eingang B ist Dem Eingang A des Vergleichers 117 werden die Signale BSDTlO+ bis BSDT15 + zugeführt Der Eingang A des Vergleichers 117 nimmt die Signale BSDTlO+ bis BSDTl 5+ auf. In dem System sind mehrere Unterbrechungspegel vorgesehen. Die Unterbrechung mit der Pegelnummer 0 weist die höchstmögliche Zugänglichkeit zu der Datenverarbeitungszeit auf und ist dementsprechend nicht-unterbrechbar. Je geringer somit die Pegelnummer der Unterbrechung, umso geringer ist die Wahrscheinlichkeit daß die Bearbeitung des auf diesem Pegel beßndlichen Gerätes unterbrochen wird. Wenn die an dem Eingang A des Vergleichers 115 empfangene Pegelnummer kleiner als die Pegelnummer des durch den Datenprozessor
g 27 28
% bearbeitenden Gerätes ist, wobei diese Pegelnummer in BSDCNN+ zeigt an, daß der Sammelschienenzyklus
[| dem Block 118 vorliegt, so ist das die Unterbrechung noch wirksam ist. Das Signal BTIMOT— betätigt das
f; suchende Gerät in der Lage, diese durchzuführen. Wenn Flip-Flop 120 und erzeugt das Nicht-Bestätigungs-Si-
';.■;. das Signal am Eingang A gleich oder größer als das gnal. Wenn andererseits das Signal BSDCNB+ vordem
j ■ Signal am Eingang B ist, so wird das Signal LVLBLS+ 5 Ende der durch das Monoflop 126 vorgegebenen Zeit-
nicht erzeugt und es wird von dem Flip-Flop 120' über periode endet, so schaltet das Monoflop 126, und das
ij: den Treiber 108 ein Nicht-Bestätigungs-Signal ausgege- Flip-Flop 127 wird daran gehindert, das Signal BTI-
·;; ben. MOT- zu erzeugen.
j Wenn daher der am Eingang A des Vergleichers 117 Es sei vermerkt, daß die Datenprozessorlogik gemäß ; empfangene Unterbrechungspegel geringer als derjeni- 10 Fig. U entweder ein Nicht-Bestätigungs-Signal oder ν ge am Eingang B empfangene Pegel ist, so weist das ein Bestätigungs-Signal erzeugt, wobei jedoch kein μ Signal LVLBLS + den Binärwert »1« auf und wird! bei- Warte-Signal erzeugt wird. Der Grund hierfür liegt dar- |jj den Eingängen D der Flip-Flops 120 und 121 zugeführt, in, daß der Datenprozessor immer die niedrigste Priori- U wobei der Eingang D des Flip-Flops 120 eine Signalum- tat aufweist, so daß im Falle der Erzeugung eines Wartej| kehrung durchführt Wenn das Signal A gleich oder grö- 15 Signales die anderen ihre Anforderungen zwecks Be- M ßer als das Signal B ist, so erzeugt der Vergleicher 117 Handlung an den Datenprozessor richtenden Geräte ?ä ein Signal LVLBLS + mit dem Binärwert »0«, welches möglicherweise von der Sammelschiene abgehängt Ά invertiert dem Flip-Flop 120 zugeführt wird. Hierdurch werden, wenn beispielsweise ein Gerät mit höherer I wird ein Nicht-Bestätigungs-Signal erzeugt, wenn das Priorität die Haupteinheit bildet, der der Zentralprozes-P Signal MYINTR+ am Takteingang des Flip-Flops 120 20 sor mit einem Warte-Signal antwortet. Gerade weil das |·; auftritt, wodurch das entsprechende Flip-Flop im EIe- Gerät mit höherer Priorität auf das Gerät mit der nied- ;!t ment 113 gesetzt wird. Wenn der Prioritätspegel ausrei- rigsten Priorität, d. h. den Zentralprozessor, wartet, köni| chend war, d. h, wenn der Eingang A kleiner ate der nen somit andere Geräte von einer Benutzung der Sami| Ei^rnng B ist, so erzeugt der Vergleicher 117 das Signal melschiene ausgesperrt werden.
I LVLBLS+ mit dem Binärwert »1« und dementspre- 25 Es ist ferner ersichtlich, daß die Unversehrtheit der p chend taktet das Signal MYINTR+ das Signal über die Sammelschiene übertragenen Information sift LVLBLS+ zu dem Ausgang Q des Flip-Flops 121 und chergestellt werden kann, ohne daß es erforderlich ist, \1 somit zu einem Eingang des NOR-Gatters 114, welches ein Paritätsbit jedem Byte der über die Sammelschiene |. über den Treiber 115 das Bestätigungs-Signal erzeugt übertragenen Information hinzuzufügen. Diese Unver-■js Wenn somit das Signal MYNAKR+ den Binärwert »1« 30 sehrtheit kann für alle Einheiten, die untereinander In-I aufweist, so wird das Nicht-Bestätigungs-Signal erzeugt formation übertragen, vorgesehen werden. Insbesonde-ίξ- und wenn das Signal MYINTF— den Binärwert »0« re kann dies in jenen Fällen verwirklicht werden, wo I besitzt, so wird das Bestätigungs-Signal erzeugt Die eine Haupteinheit bei ihrer Anforderung eine Antwort :;i Flip-Flops in dem Element 113 werden getaktet und von einer Nebeneinheit erwartet Die Unversehrtheit % gelöscht durch den Inverter 125, wobei dies in gleicher 35 solcher Datenübertragungen kann daher am besten in i; Weise geschieht, wie dies zuvor in bezug auf die Flip- jenen Fällen verwirklicht werden, wo zwei Sammel- Ii Flop-Elemente beschrieben wurde. Es sei darauf ver- Schienenzyklen in einer bilateralen Sammelschienen- !;■ wiesen, daß ein Bestätigungs-Signal erzeugt wird unab- übertragung benutzt werden. Dies ist beispielsweise be-1 hängig von der Anzeige des Vergleichers 117, wenn in sonders vorteilhaft in einer Speicher-Leseoperation, Wirklichkeit die zweite Hälfte des Sammelschienenzy- 40 wobei die Haupteinheit Information vom Speicher an- ! klus vorliegt In diesem Fall wird das Signal fordert und während eines späteren Sammelschienenzy-MYSHRC— des einen Flip-Flops in dem Element 1:13- klus solche Information empfängt Es hat sich herausgemit dem Binärwert »0« auf den anderen Eingang des stellt, daß beispielsweise eine wesentliche Anzahl von \'. NOR-Gatters 114 geschaltet und erzeugt hierdurch das Datenübertragungen zwischen dem Speicher und einem ; Bestätigungs-Signal, wobei der Hinweis des Flip-Flops 45 anderen Gerät während einer Leseoperation auftreten, .; 121 übergangen wird. die zwei Sammelschienenzyklen erfordert und daß dem-Wie zuvor erwähnt, stellt das Signal BSDCNB- über entsprechend das Merkmal der Datenunversehrtheit in i den Inverter 125 das Flip-Flop 121 zurück und setzt einem solchen Fall von besonderer Bedeutung ist
;■: zusätzlich das Flip-Flop 120, wodurch die Flip-Flops Die Unversehrtheitseinrichtung macht mit Vorteil nach einem Sammelschienenzyklus in ihre Anfangslage 50 von der Tatsache Gebrauch, daß die Haupteinheit die gebracht werdea Das Flip-Flop 120 wird ferner durch Adresse der Nebeneinheit auf die Adreßleitungen der die dem Flip-Flop 127 zugeordnete Logik ziinjckge- Sammelschiene und ihre eigene A.dresse und den Funkstellt wobei das Flip-Flop 127 das Signal BTIMOT- tionscode auf die DatenleTtungen der Sammelschiene i erzeugt welches einen Zeitablauf-Zustand anzeigt d. h, gibt wenn eine Haupteinheit eine andere Einheit adres-Li daß ein nicht-vorhandenes Gerät adressiert wurde. In 55 siert, die beispielsweise eine periphere Einheit in Form i! diesem Fall wird tatsächlich keine Antwort d. h. weder eines Band- oder Plattenspeichers sein kann. Wenn die ψ eine Nicht-Bestätigungs-, eine Bestätigungs- oder eine Nebeneinheit antwortet und so bei der Antwort die % Warte-Antwort durch irgendeine Nebeneinheit erzeugt Haupteinheit darstellt, so gibt sie die Adresse der anfor- |: Zu diesem Zweck ist ein Monoflop 126 angeordnet, das dernden Einheit auf die Adreßleitungen und die Daten % so eingestellt werden kann, daß es eine Schaltperiode ω auf die Datenleitungen. Die Adresse der anfordernden von 5 μ5 besitzt Dieses Monoflop wird beim Empfang Einheit wird somit auf den Adreßleitungen zurückempdes Signales BSDCND+ getriggert, das einem Eingang fangen, was der anfänglichen Übertragung auf den Daeines vorgeschalteten Puffers 119 zugeführt wird. Infol- tenleitungen entgegengesetzt ist Die anfordernde Einge der Betätigung des Monoflops 126 wird das Signal heit vergleicht sodann ihre Adresse, d. h, die auf den BTIMOT— am Ausgang Q des Flip-Flops 127 beim 65 Datenleitungen übertragenen Adressen mit den nun-Takten durch das Signal BSDCNN+ erzeugt, falls das mehr auf den Adressenleitungen empfangenen Adres-Signal BSDCNN+ nicht empfangen wird, das das Ende sen und für den Fall, daß sie übereinstimmen, ist sicherdes Sammelschienenzyklus anzeigt Das Signal gestellt, daß die Adresse richtig von der Nebeneinheit
empfangen wurde und daß zusätzlich, falls der Operationscode ebenfalls zurückempfangen wird, dieser Operationscode befriedigend empfangen wurde. Bei 16 Bit für die information gemäß dem Format in F i g. 4 werden somit bis zu zwei Paritätbits eliminiert, wobei jedoch die Unversehrtheit der Datenübertragung in dem System aufrechterhalten wird.
Die Dialogschnittstelle
Gemäß Fig. 12 ist ein Blockdiagramm der festgeschalteten Schnittstelle (Dialogschnittstelle) zwischen der Zentraleinheit CPU-IXi und der Pufferspeichereinheit 1202 dargestellt Es gibt 43 Signalleitungen, die erstens der Zentraleinheit CPU-\7Q\ gestatten, die Adresse des für die Bearbeitung als nächstes erforderlichen Wortes zu senden, und die zweitens der Pufferspeichereinheit 1202 ermöglichen, den Inhalt dieses an die Zentraleinheit gerichteten Wortes zusammen mit den diesem Wort bzw. dieser Adresse zugeordneten Bedingungen zurückzuholen. Die festgeschalteten Pufferspeicher/Zentraleinheit-Schnittstellensignale ssnd folgendermaßen definiert:
1. Absolute Adresse: (BAOR05—22). Diese 18 Signale übertragen die absolute Adresse des Wortes, das von der Zentraleinheit CPU für die Programmausführung angefordert wird.
2. Leseanforderung: (CACHRQ+ 00). Dieses Signal informiert die Pufferspeichereinheit daß die absoluten Adreßsignale decodiert worden sind und daß die Pufferspeichereinheit mit dem Lesen dieses Wortes fortfahren kann.
3. Daten: (CADPOO-19, CPU-Daten-Sammel-Schiene). Diese 18 Signale übertragen das angeforderte Wort an die Zentraleinheit CPU für die von der Zentraleinheit gelieferte absolute Adresse.
4. Datenparität: Diese 2 Signale übertragen die ungerade Parität für jedes Byte des angeforderten Wortes. Die von der System-Sammelschiene aufgrund einer Hauptspeicher-Leseanforderung empfangene Paniät wird in der Pufferspeichereinheit wie Daten behandelt (d. h. nicht regeneriert oder geprüft) und an die Zentraleinheit CPU weitergereicht.
5. Bereichsüberschreitung: (CNOMEM—00). Dieses Signal zeigt an, daß die angeforderte Adresse in der laufenden Systemkonfiguration nicht vorliegt Das Bereichsüberschreitungssignal wird zu der Zentraleinheit CPU zurückgeführt wenn die Pufferspeichereinheit das angeforderte Wort in dem Pufferspeicher nicht findet und von der Einheit BIU ein negatives Bestätigungssignal (NAK) aufgrund eines Hauptspeicher-Bezugs-Sammelschienenzyklus empfängt
6. Pufferspeicherdaten gültig: (CYCADN-00). Dieses Signal zeigt der Zentraleinheit CPU an, daß die Information der Daten- und Datenparitätssignale für die Zentraleinheit CPL/bereit ist
7. Pufferspeicher vorliegend: (CACHON-00). Dieses Signal zeigt an, daß die Pufferspeichereinheit funktionsbereit ist (d. h., daß ihr Zustand QLT vorüber ist).
8. CPUID: Dieses Signal informiert die Pufferspeichereinheit über die Identität der ihr zugeordneten Zentraleinheit CPU.
9. Pufferspeicher RED: Dieses Signal informiert die Zentraleinheit CPU darüber, daß das angeforderte Wort vosn Hauptspeicher einen nicht korrigierbaren Lesefehler aufweist
10. Pufferspeicher-Paritäts-Prüfzeit: Dieses Signal informiert die Zentraleinheit CPU darüber, daß das Ergebnis der Paritätsprüfung zum Eintasten in das Paritätsfehler-Flip-Flop (nicht dargestellt) verfügbarist
Die Hardware-Logikblöcke für die Erzeugung dieser
ίο Signale und für den CPtABehandlungszyklus sind in den Fig. 13,14 und 15 näher dargestellt
Anhand der F i g. 14 und 15 sei nachfolgend die Logik für den CPiZ-Behandlungszyklus beschrieben. Die Fig. 14 und 15 sind so gezeichnet daß ein Fachmann erkennt was die Blöcke darstellen, wobei er den Aufbau und die Funktion aufgrund der mnemonischen Angaben für die verschiedenen Signale erkennt Beispielsweise ist zuvor im Zusammenhang mit Fig. 12 gezeigt worden, daß das Lese-Anforderungssignal durch den mnemoni sehen Ausdruck CACHRQ beschrieben wird. Diesem mnemonischen Ausdruck kann entweder ein Pluszeichen oder ein Minuszeichen zugefügt sein, gefolgt von zwei Ausdrücken. Das Pluszeichen nach dem mnemonischen Ausdruck für ein Signal zeigt an, daß das im vor- liegenden Fall eine Leseanforderung darstellende Signal den wahren Wert besitzt wenn das Signal den hohen Pegel aufweist Andererseits zeigt ein Minuszeichen nach dem mnemonischen Ausdruck für das Signal an, daß in diesem Fall die Leseanforderung den wahren Wert besitzt wenn das Signal den niedrigen Pegel aufweist Der erste der beiden Ausdrücke nach dem Plusbzw. Minuszeichen zeigt im Falle einer Null an, daß dies der erste Signalauftritt bei der Funktionsausführung ist Im Falle einer 1 für den ersten Ausdruck zeigt dies an, daß der zweite Signalauftritt vorliegt usw. Beispielsweise kann das Signal zunächst auf ein Flip-Flop auftreffen, sodann ein UND-Gatter durchlaufen und sodann über einen Inverter geführt werden, was insgesamt drei Signalauftritten entspricht Der zweite Ausdruck wird im allgemeinen für spezielle Bedingungen benutzt Beispielsweise wird er benutzt um anzuzeigen, daß das Signal dem Rückstelleingang eines Flip-Flops zuzuführen ist wobei in diesem Fall der zweite Ausdruck durch den Buchstaben R vorgegeben ist Mit diesen Voraus-
Setzungen sei nunmehr die Logik für den CPU-Behand-
lungszyklus gemäß Fig. 14 und der zugehörige CPU-
Behandlungszyklus des Pufferspeicher-Zeittaktdia-
grammes gemäß F i g. 15 beschrieben.
Der CW-Behandlungszyklus beginnt wenn das Puf-
ferspeicher-Anforderungssignal CACHRQ + 00 mit den Pufferspeicher-Belegtsignalen über UND-Gatter 1401, 1402 und das Flip-Flop 1403 logisch verknüpft wird. Unter Verhinderung jeglicher Pufferspeicheraktivität wird eine CPiZ-BehandlungsanforderungCPUREQ-OD am Ausgang des UND-Gatters 1401 erzeugt und zu einem Zeitverzögerungsschaltkreis 1417,1405 mit einer Verzögerung von 100 Nanosekunden gesendet. Dieser Verzögerungsschaltkreis ist variabel und liefert eine einstellbare Zeitverzögerung für die Phasen der Puffer speicher- und CPU-Takte. Die Zeittakterzeugung für Computer gehört zum Stand der Technik und kann beispielsweise der DE-OS 27 34 190 entnommen werden. Gemäß Fig. 15 ist der zeitliche Auftritt verschiedener Signale innerhalb des CPU- Behandlungszyklus darge stellt, die durch die Logik gemäß Fig. 14 erzeugt werden. Wenn die CPU- Behandlungsanfordnerung CPUREQ wahr ist und das Signal FEMPTY (FIFO not empty = FIFO nicht leer) wahr bleibt, so nimmt das
Ausgangssignal FEMPTY—20 den niedrigen Pegel ein, und es wird ein Taktsignal CLOCKO+OA mit hohem Pegel und ein Pufferspeicher-Taktsignal CLOCKO+00 mit niedrigem Pegel erzeugt Der Pufferspeicher-Takt CLOCKO+00 steuert beim Abfall auf den niedrigen Pegel die Verzögerungsleitung a; ■, sodaß nach einer vorbestimmten Verzögerungszeit das Verzögerungssignal CDLY40+00 den niedrigen Pegel einnimmt und das Pufferspeicher-Taktsignal CLOCKO+00 auf den hohen Pegel umschaltet Das Blockanforderungs-Flip-Ffopr 1403, das durch das Pufferspeichertaktsignal CLOCKO+ 10 gesteuert wird, stellt das CPt/-Behandlungsanforderungssignal CPUREQ zurück und führt die Logik der Pufferspeicher-Taktsteuerung in den Leerlaufzustand zurück. Infolge des Setzens des Blockanforderungs-Flip-Flops t403 werden weitere CPU-Behandlungsanforderungen gesperrt Das CPtABlockanforderungs-Flip-Flop 1403 bleibt gesetzt bis der CPU-Behandlungszyklus endet und das CPtZ-Behandlungsanforderungssignal CACHRQ+00 in der Zentraleinheit CPU zurückgestellt wird. Während des CPt/Behandlungszyklus führt der Pufferspeicher die folgenden internen Operationen aus, die nachstehend aufgeführt sind:
1. Der Pufferspeicher liest die Pufferliste und den Datenpuffer 315 (d. h. es wird ein Treffer oder kein Treffer festgestellt).
2. Wenn ein Treffer auftritt, so werden die Daten/Befehle von der Pufferspeichereinheit 313 zu der Zentraleinheit CPU-3U gesendet
3. Wenn sich fcein Treffer ergibt, so wird in den Spefcheranforderungszustand MEMREQ+00 eingetreten, und die Daten werden vom Hauptspeicher 1,2 angefordert
Wenn sich die von der Zentraleinheit CPU angeforderte Information nicht in der Pufferliste und dem Datenpuffer befindet, so wird ein Speicher-Anforderungssignal MEMREQ erzeugt und dem Flip-Flop 1409 zugeführt Beim nächsten Taktzyklus CLOCKO+10 nimmt der eine Ausgangsanschluß dieses Flip-Flops den wahren Wert ein und der Pufferspeicher tritt in den Speicher-Anforderungszustand ein. Wenn sich die aus dem Pufferspeicher angeforderte Information im Hauptspeicher befindet so wird das Bereichsüberschreitungssignal CNOMEM—00 erzeugt und an das NAND-Gatter
1410 angelegt, das seinerseits ein Speicheranforderungs-Rückstellsignal MEMREQ-1R an den Rückstellanschluß des Flip-Flops 1409 über das NOR-Gatter
1411 anlegt, wodurch das FHp-Flop 1409 zurückgestellt wird und der Speicheranforderungsmodus beendet wird.
Der CPtZ-Behandlungs^yklus endet, wenn das Pufferspeicher/Erledigtsignal CYCADN+ 00 gesetzt ist und dem Setz-Flip-Flop 1413 über den Verzögerungsschaltkreis 1414,1415 und den Inverter 1416 zugeführt wird. Das Pufferspeicher/Erledigtsignal CYCADN+00 wird durch eine der folgenden Bedingungen gesetzt:
1. Die angeforderten Daten befinden sich in dem Pufferspeicher-Datenpuffer (z. B. ein Treffer), der zur Aufschaltung auf die CPC-Daten-Sammelschiene freigegeben ist.
2. Die angeforderten Daten werden im Hauptspeicher wieder aufgesucht und die Aufschaltung des Pufferspeicher-FIFO-Puffers auf die CPtZ-Daten-Sammelschiene wird freigegeben (z. B. in einem Er satzzyklus).
3. Die von der Zentraleinheit CPU zu der Puffereinheit gesendete Daten-Speicherplatzadresse befindet sich außerhalb des Bereiches des konfigurierten Speichers (z. B. CNOMEM+00).
Die Zentraleinheit CPU benutzt die Anstiegsflanke des Puffer/Erledigtsignaies CYCADN+00, um die CPiADaten-Sammelschiene in ihr internes Daten- Eingaberegister einzutasten, ihren Takt zu starten und das CPtÄPufferspeicher-Anforderungs-Flip-Flop zurückzustellen. Aufgrund des Verzögerungsschaltkreises 1415, 1416 wird das Puffer/Erledigtsignal CYCADN+00 ungefähr 60 Nanosekunden nach der Entfernung des CPlAPufferanforderungssignales CACHRQ+00 zurückgestellt
Das Signal FEMPTY—20 am Ausgang des Taktstart-Flip-Flops 1406 besitzt dementsprechend den wahren Wert (z. B. niedriger Pegel) und wird in dem Inverter 1408 in ein Signal mit hohen Pegel umgewandelt, das sodann dem Blockanforderungs-Flip-Flop 1403 zugeführt wird, um das CPU- Pufferanforderungssignal zu sperren, indem das Blockanforderungssignal mit niedrigem Pegel (BLKREQ—00) an einen Eingang des NAND-Gatters 1401 geliefert wird. Somit v/erden weitere CPtZ-Behandlungsanforderungen solange gesperrt, wie dieses Signal an einem Eingang des NAND-Gatters 1401 auf niedrigem Pegel verbleibt Das CPL/-Blockanforderungs-Flip-Flop 1403 bleibt gesetzt bis der CPU- Behandlungszyklus beendet ist und das CPt/-Behandlungsanforderungssignal CACHRQ+00 in der Zentraleinheit zurückgestellt ist
Während des CPlZ-Behandlungszyklus führt der Puffer die folgenden internen Operationen aus:
1. Der Puffer liest die Pufferliste und den Datenpuffer 315 (z. B. ein Treffer oder kein Treffer).
2. Wenn ein Treffer auftritt so werden die Daten/Befehle zu der Zentraleinheit CPi/gesendet.
3. Wenn kein Treffer auftritt, so wird in den Speicher-Anforderungsstatus MEMREQ+00 eingetreten.
Der CPtZ-Behandlungszyklus endet, wenn das Puffer/ Erledigtsignal CYCADN+00 in dem Flip-Flop 1413 durch irgendeine der folgenden Bedingungen gesetzt ist:
1. Die angeforderten Daten befinden sich in dem Pufferspeicher-Datenpuffer (z. B. ein Treffer), welche
so auf die CPLADaten-Sammelschiene gegeben werden.
2. Die angeforderten Daten werden im Hauptspeicher wieder aufgesucht und der Pufferspeicher-FIFO-Puffer (nicht dargestellt) wird mit seinem In- halt auf die CPtZ-Daten-Sammelschiene gegeben (z. B. Ersatzzyklus).
3. Die Daten-Speicherplatzadresse, die von der Zentraleinheit CPU an den Pufferspeicher gesendet wird, befindet sich für einen Speicherplatz außer halb des Bereichs des konfigurierten Hauptspei chers (z. B. CNOMEM + 00).
Die Zentraleinheit benutzt die Vorderflanke des Puffer/Erledigtsignales CYCADN +00, um die CPtADaten-Sammelschiene in ihr internes Daten-Eingangsregi ster zu tasten, ihren Takt zu starten und das CPU-Pufferspeicher-Anforderungs-Flip-Flop zurückzustellen. Das Puffer/Erledigtsignal CYCADN +00 wird ungefähr
33 34
60 Nanosekunden nach dem CW-Pufferspeicher-An- gangssignal CACHRQ+IB mit hohem Pegel erzeugt forderungssignal CACHRQ+00 zurückgestellt wird. Wenn beide Eingangssignale des Exklusiv-ODER-Der CPtABehandlungszyklus ist ebenfalls in Fig. 15 Gatters den hohen Pegel aufweisen, so ist dies ein Hinin bezug auf die dem Logikschaltkreis gemäß F i g. 14 weis, daß sich das erzeugte Pufferanforderungssignal im zugeführten Zeittaktsignale dargestellt Gemäß dem 5 Wartungsmodus befindet Wenn andererseits beide Ein-CPCZ-Behandlungszyklus in Fig. 15 ist erkennbar, gangssignale BRESRV+00 und MYRESV+00 den daß, wenn das CPtABehandlungsanforderungssigna! niedrigen Pegel aufweisen, so bildet dies ein Hinweis, CPUREQ wahr ist und das Signal FbMP1IY wahr bleibt daß sich die Zentraleinheit CPU im nicht gesetzten Verdas Ausgangssignal FEMPTY—TO den niedrigen Pegel riegelungsmodus befindet Wenn irgendeines der Eineinnimmt wodurch das Signal CLOCKO+0A mit ho- io gangssignale des Gatters 1318 den hohen und das andehem Pegel und das Puffer-Taktsignal CLOCKO+00 mit re Eingangssignal den niedrigen Pegel aufweist so liegt niedrigem Pegel erzeugt wird. Das auf den niedrigen ein Hinweis vor, daß sich die Zentraleinheit CPU im Pegel umschaltende Puffer-Taktsignal CLOCK0+00 gesetzten bzw. zurückgestellten Modus mit nunmehriwird auf die Verzögerungsleitung gegeben, sodaß das ger Verriegelung befindet
Signal CDLY40+00 dementsprechend 40 Nanosekun- 15 Ein anderes Eingangssignal des UND-Gatters 1302,
den später auf den niedrigen Pegel und das Puffer-Takt- das den hohen Pegel aufweisen muß, um das Pufferan-
signal CLOCKO+00 auf den hohen Pegel umschaltet forderungssignal CACHRQ+0A zu erzeugen, ist das
Das Blookanforderungs-Flip-FIop, das durch das Puffer- Pufferspeicher-Einschaltsignal CACHON+00. Dieses
Taktsignal CLOCKO+10 gesteuert wird; stellt das Signal wird erzeugt, wenn der Pufferspeicher der Zen-
CPiZ-Behandlungsanforderungssignal CPUREQ zurück 20 traleinheit CPU über die festgeschaltete Schnittstelle
und führt die Puffer-Steuerungslogik in den Lcerlaufzu- beigestellt und eingeschaltet ist Die Puffertest- und
stand zurück. Überprüfungslogik 1317 stellt fest, daß der Pufferspei-
Gemäß F i g. 13 ist die Hochgeschwindigkeitslogik für eher beigestellt ist und sie liefert ein Eingangssignal mit
die festgeschaltete Schnittstelle zwischen dem Prozes- niedrigem Pegel an den Inverter 1301, wodurch ein Ein-
sor und dem Pufferspeicher dargestellt Die Zentralein- 25 gangssignal CACHON+00 mit hohem Pegel an einem
heit CPi/benutzt diese festgeschaltete Schnittstelle, um Eingangsanschluß des UND-Gatters 1302 erzeugt
Information vom Pufferspeicher zu erhalten oder Infor- wird. Bei einem Puffer-Leseanforderungssignal
mation zurück in den Pufferspeicher zu geben. Wenn die CACHRQ+0A mit hohem Pegel muß schließlich das
Information im Pufferspeicher nicht verfügbar ist, so dritte Eingangssignal BMSTRR+00 des UND-Gatters
muß man in den Hauptspeicher gehen, um die Informa- 30 1302 ebenfalls den hohen Pegel aufweisen. Dies ist ein
tion zu erhalten und diese in dem Pufferspeicher abzule- von der Zentraleinheit CPU geliefertes Signal, welches
gen und ebenfalls der Zentraleinheit CPU zuzuführen. anzeigt, daß ein Lesen des Hauptspeichers auszuführen
Wenn eine Speicher-Verriegelungs- oder Entriege- ist, falls dieses Signal den hohen Pegel aufweist Die
lungsoperation vorliegt so erhält die Zentraleinheit folgenden Bedingungen müssen dementsprechend er-
CPU die Information direkt vom Hauptspeicher. Bei 35 füllt sein, um das Pufferspeicher-Leseanforderungssi-
einem Treffer im Pufferspeicher (d.h. das adressierte gnal CACHRQ+ 0A zu erzeugen, das dem Eingang D
Wort ist im Pufferspeicher vorhanden) und der nachfol- des Flip-Flops 1303 zugeführt wird:
genden Paritätsfehlerprüfung und der Zuführung der
angeforderten Daten zu der Zentraleinheit CPU, wird 1. Der Hauptspeicher ist nicht verriegelt bzw. entrie-
der Pufferspeicher zurückgestellt. Wenn die Zentralein- 40 gelt, wobei dies durch einen hohen Pegel des Signa-
heit CPU eine illegale Adresse an den Pufferspeicher les CACHRQ + IB angezeigt wird;
liefert, so führt dies zu einem illegalen Speicher-Opera- 2. Der Pufferspeicher ist beigestellt und eingeschaltet
tionsfehler. was durch den hohen Pegel des Eingangssignales
Gemäß dem logischen Blockdiagramm in Fig. 13 CACHON+00 angezeigt wird; und
wird ein Pufferspeicher-Leseanforderungssignal 45 3. Ein Hauptspeicher-Lesezyklus wird ausgeführt
CACHRQ+ 0A erzeugt, wenn das Ausgangssignal was durch den hohen Pegel des Signales
des UND-Gatters 1302 den hohen Pegel aufweist. BMSTRR+00 angezeigt wird.
Das Pufferspeicher-Leseanforderungs-Eingangssignal
CACHRQ+IB für das UND-Gatter 1302 wird über ein Wie zuvor festgestellt wird das Signal Exklusiv-ODER-Gatter 1318 und einen Inverter 1316 50 CACHRQ+0A dem Eingang D des Flip-Flops 1303 zuerzeugt. Dieses Signal weist den hohen Pegel auf, geführt Wenn dieses Signal den hohen Pegel aufweist wenn beide Eingangssignale BRESRV + 00 und so wird das Flip-Flop 1303 gesetzt, wenn das Taktim-MYRESV+00 des Exklusiv-ODER-Gatters 1318 ent- pulssignal MYCLOCK+00 dem Takteingang CK zuge- m weder den hohen oder den niedrigen Pegel aufweisen. führt wird. Demgemäß nimmt der Ausgang Q des FHp- U Es sei darauf verwiesen, daß, wenn das Eingangssignal 55 Flops 1303 den hohen Pegel ein und erzeugt das Signal BRESRV + 00 von der Zentraleinheit CPU, welches ein CACHRQ+00, das der Puffer-Taktsteuerung 1304 zu-Sammelschienen-Reservierungssignal ist, den hohen Pe- geführt wird. Das gleiche Signal wird ebenfalls den Eingel aufweist, und wenn das Eingangssignal FMY- gangen D und R des Flip-Flops 1307 zugeführt
RESV+ 00 des Exklusiv-ODER-Gatters 1318 ebenfalls Das Flip-Flop 1307 ist das Pufferspeicher-Anfordeden hohen Pegel besitzt, das Ausgangssignal des Gat- 60 rungs-Rückstell-Flip-Flop, welches durch das Flip-Flop ters 1318 den niedrigen Pegel besitzt wobei dieses Si- 1303 zurückgestellt wird, wenn das Pufferspeicher-Angnal im Inverter 1316 invertiert wird und zu einem Aus- forderungssignal CACHRQ—OR, das dem invertierengangssignal CACHRQ +IB mit hohem Pegel führt. In den Eingang« des Flip-Flops 1307 zugeführt wird, den gleicher Weise besitzt, wenn die beiden Eingangssignale niedrigen Pegel aufweist. Das Flip-Flop 1307 wird durch BRESRV + 00 und MYRESV + 00 den niedrigen Pegel 65 den Taktimpuls CACHDN +00 zurückgestellt, der dem aufweisen, das Ausgangssignal des Exklusiv-ODER- Eingang CK zugeführt wird und der über den Inverter Gatters 1318 erneut den niedrigen Pegel, der wiederum 1306 und die Pufferspeichertrefferlogik 1305 erzeugt in dem Inverter 1316 invertiert wird, wodurch ein Aus- wird. Die Anstiegsflanke des Impulses CACHDN+00
35
am Eingang CK des Flip-Flops 1307 taktet das Signal schieht durch Anlegen des Signaies CYCADN —11 an CACHRQ+00 am Eingang D des FJip-Flops 1307, so- einen Eingang des NAND-Gatters 1308, welches das daß das Signal CACHRQ+0R am Anschluß Q des Flip- Sammelschienen-Ende-Lesesignal BENDRD-OO er-Flops 1307 den hohen PegeJ einnimmt und das Puffer- zeugt und Daten von dem Pufferspeicher in ein nicht speicher-Anforderungssignal CACHRQ—ÖR am An- 5 dargestelltes Register der Zentraleinheit CPU eintastet Schluß Q des Flip-Flops 1307 mit niedrigem Pegel aus- Ungefähr 80 Nanosekunden später nach der Erzeugung gegeben wird. Dieses Signal mit niedrigem Pegel wird des Puffer/Erledigtsignales CACHDN+00 wird das dem Rückstellanschluß des Flip-Flops 1303 zugeführt UND-Gatter 1310 durch die Eingangssignale und setzt dieses mit dem Anstiegsimpuls des Puffer/Er- CAPCKT—00 und BSSHBH-11 vortfreitet und ein ledigtsignales CACHDN + 00. Es ist somit ersicMich, 10 Signal BENDRD+00 für die Paritätsprüfung geliefert daß das Flip-Flop 1303 unmittelbar mit dem ansteigen- Unter der Annahme, daß die Zentraleinheit CPU eine den Impuls zurückgestellt werden kann, obgleich das Anforderung nach einem Wort aus dem Pufferspeicher Puffer/Erledigtsignal CACHDN +00 für sine bestimm- ausführt, das sich nicht in dem Pufferspeicher befindet te Dauer auf dem hohen Pegel verbleibt Das FtiprPjop und der Pufferspeicher seinerseits das Wort vom 1303 kann somit nahezu sofort erneut wieder verwendet 15 Hauptspeicher anfordert, wobei sich das Wort erneut werden und somit innerhalb einer typischen Zeitperiode nicht im Hauptspeicher befindet, so wird das Signal von 40 Nanosekunden den nächsten Anfqrderungszy- CYCADN-OÖ gesetzt und das Signal CNOMEM-OO kius bei dieser Art von Logik ausführen. Es sei darauf auf der Leitung 1311 erzeugt und dem UND-Gatter verwiesen, daß bei der Erzeugung des Puffer-Anforde- 1312 zugeführt Das UND-Gatter 1312 setzt das rungssignales CACHRQ+00 und der Zufülirungdessel- 20 Signal HSOOO+IA des Flip-Flops 1313, das bis zur ben zu der Puffer-Taktsteuerung 1304 dieses Signal Rückstellung durch das Signal IRESET+10 gesetzt ebenfalls einem Eingang des NAND-Gatters 1314 züge- bleibt Das Ausgangssignal HSOOO +1A verursacht eiführt wird, welches die Umschaltung des Taktsignajes nen Abbruch der laufenden Befehlsverarbeitung in der CLOCK0+0B auf den niedrigen Pegel und soniit das Zentraleinheit CPUund die Verarbeitunp des nicht vom Anhalten des Prozessortaktes hervorrief. Diesbezüglich 25 Speicher herrührenden Fehlersignales und die Rücksei auf die DE-OS 27 34 190 verwiesen. Der prozessor- Stellung des Signales HSQOO+IA über das Signal takt bleibt angehalten bis Daten entweder vom Spei- IRESET+10.
eher zum Pufferspeicher oder vom Pufferspeicher dj-
rekt zurück zu der Zentraleinheit CPi/geliefert werdjen. Hierzu 12 Blatt Zeichnungen
Der Takt der Zentraleinheit CPUwird durch ein Signal 30 ~
mit niedrigem Pegel angehalten und starjtet bd 4s*£t)n Signal mit hohem Pegel ■··■".·..
Da das Signal CACHRQ+OjQ an dem NAND-Qatter 1314 normalerweise den hohen Pegel aufweist, wenn eine Anforderung an den Pufferspeicher ausgeführt wird, und da das Signal CACHRQ+ 0R normalerweise den hohen Pegel aufweist bis es durch das Signal CACHDN+00 an dem Flip-Flop 1307 auf den niedrigen Pegel gebracht wird, schaltet das Ausgangssignal "des NAND-Gatters 1314 auf den niedrigen Pegel, wenn der Eingangstaktimpuls CLOCKO+0F an dem NAHP-Gatter 1314 auf den hohen Pegel umschaltet, wodurch der Takt des Prozessors CPU angehalten wird. Der Vorteil des Anhaltens des CP£/-Taktes anstelle einer ,Gestattung des Weiterlaufes liegt darin, daß weniger Zeit verschwendet wird, wenn Information verfügbar 1st und von dem Pufferspeicher an die Zentraleinheit CPU in der Mitte eines CPt/-Taktzyldus geliefert werden kann, sonst kann diese Information bei einem WeHerlauf des Prozessors erst am Ende dieses Zyklus geliefert werden. Bei einem Anhalten des Taktes kann dieser sofort 'jerneut gestartet werden, wenn Information verfügbar 1st, sodaß keine Zykluszeit verschwendet wird. Wenn Information für die Zentraleinheit CPU verfügbar ist, so wird demgemäß das Signal CACHDN+ 00 über die Pufferspeicher-Trefferlogik erzeugt, worauf das Signal CACHRQ-OR am Anschluß 0 des Flip-Flops 1307 den niedrigen Pegel einnimmt Dieses Signal wird seinerseits einem Eingangsanschluß des NAND-Gatters 1314 zugeführt, wodurch dessen Ausgangssignal den hohen Pe- gel einnimmt, was zu einem Neustart des CPU-Tßktes führt (nicht dargestellt).
Wenn ein Treffer im Pufferspeicher vorliegt (d. h. das adressierte Wort befindet sich im Pufferspeicher) und zusätzlich der Prozessortakt angehalten wird, so ist es erforderlich, die Daten auf ihre Parität zu überprüfen und sie in die Datenregister des Prozessors (nicht dargestellt) einzutasten, wenn sie verfügbar werden. Dies ge-

Claims (1)

  1. Patentansprüche:
    1. Datenverarbeitungsanlage, weiche aufweist:
    a) einen Systembus;
    b) mehrere an den Systembus angeschlossene und über den Systembus einen Dialog führende Einrichtungen, wie Hauptspeicher, Pufferspeicher und Zentraleinheit; wobei
    bl) die Zentraleinheit zur Anforderung einer Dateneinheit eine Datenleseanforderung und eine Hauptspeicheradresse, unter der die Dateneinheit abgespeichert ist, ausgibt, und für den Fall, daß die verarbeitete Dateneinheit sichergestellt werden soll, eine Datenschreibanforderung und eine Hauptspeicheradresse, unter der die sichergestellte Dateneinheit gespeichert werden soll, ausgibt;
    b2) der Pufferspeicher Kopien mehrerer in dem Hauptspeicher gespeicherter Dateneinheiten speichert; und
    b3) der Pufferspeicher eine von der Zentraleinheit angeforderte Dateneinheit in dem Fall, wo die angeforderte Dateneinheit in ihm vorhanden ist (Positivfall), an die Zentraleinheit überträgt, und in dem Fall, wo die Dateneinheit nicht in ihm vorhanden ist (Negativfall), die Anforderung der Dateneinheit an den Hauptspeicher weiterleitet, und bei Empfang der angeforderten Dateneinheit diese sowohl abspeichert als auch an die Zentraleinheit weiterleitet;
    g)
    sowie die sicherzustellende Dateneinheit über den Systembus (302) zu dem Hauptspeicher (1, 2) überträgt, und daß
    der Pufferspeicher (313) dan Systembus (302) auf Datenschreibanforderungen überwacht und beim Erfassen einer eine in ihm gespeicherte Dateneinheit betreffende Datenschreibanforderung die in ihm gespeicherte Dateneinheit durch die sicherzustellende Dateneinheit auf dem Systembus (302) ersetzt.
DE2854485A 1977-12-22 1978-12-16 Datenverarbeitungsanlage Expired DE2854485C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/863,097 US4161024A (en) 1977-12-22 1977-12-22 Private cache-to-CPU interface in a bus oriented data processing system

Publications (2)

Publication Number Publication Date
DE2854485A1 DE2854485A1 (de) 1979-07-05
DE2854485C2 true DE2854485C2 (de) 1986-02-06

Family

ID=25340243

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2854485A Expired DE2854485C2 (de) 1977-12-22 1978-12-16 Datenverarbeitungsanlage

Country Status (8)

Country Link
US (1) US4161024A (de)
JP (1) JPS5492027A (de)
AU (1) AU518637B2 (de)
CA (1) CA1126871A (de)
DE (1) DE2854485C2 (de)
FR (1) FR2412888B1 (de)
GB (1) GB2011678B (de)
YU (1) YU40212B (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4589089A (en) * 1978-05-30 1986-05-13 Bally Manufacturing Corporation Computer-peripheral interface for a game apparatus
US4268907A (en) * 1979-01-22 1981-05-19 Honeywell Information Systems Inc. Cache unit bypass apparatus
JPS5680872A (en) * 1979-12-06 1981-07-02 Fujitsu Ltd Buffer memory control system
US4315312A (en) * 1979-12-19 1982-02-09 Ncr Corporation Cache memory having a variable data block size
US4616331A (en) * 1980-02-25 1986-10-07 Tsuneo Kinoshita Information processing system consisting of an arithmetic control unit formed into a one-chip typed by application of a highly-integrated semiconductor device
US4365294A (en) * 1980-04-10 1982-12-21 Nizdorf Computer Corporation Modular terminal system using a common bus
US4371928A (en) * 1980-04-15 1983-02-01 Honeywell Information Systems Inc. Interface for controlling information transfers between main data processing systems units and a central subsystem
US4349874A (en) * 1980-04-15 1982-09-14 Honeywell Information Systems Inc. Buffer system for supply procedure words to a central processor unit
US4371929A (en) * 1980-05-05 1983-02-01 Ibm Corporation Multiprocessor system with high density memory set architecture including partitionable cache store interface to shared disk drive memory
US4437155A (en) 1980-11-14 1984-03-13 Sperry Corporation Cache/disk subsystem with dual aging of cache entries
JPS57109174A (en) * 1980-12-25 1982-07-07 Panafacom Ltd Memory start system
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US4445174A (en) * 1981-03-31 1984-04-24 International Business Machines Corporation Multiprocessing system including a shared cache
US4720783A (en) * 1981-08-24 1988-01-19 General Electric Company Peripheral bus with continuous real-time control
US4516203A (en) * 1981-09-11 1985-05-07 Data General Corporation Improved apparatus for encaching data whose value does not change during execution of an instruction sequence
EP0088789B1 (de) * 1981-09-18 1987-08-05 CHRISTIAN ROVSING A/S af 1984 Multiprozessor-rechnersystem
JPS5856277A (ja) * 1981-09-29 1983-04-02 Toshiba Corp 情報処理装置ならびに方法
US4458310A (en) * 1981-10-02 1984-07-03 At&T Bell Laboratories Cache memory using a lowest priority replacement circuit
US4466059A (en) * 1981-10-15 1984-08-14 International Business Machines Corporation Method and apparatus for limiting data occupancy in a cache
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4503501A (en) * 1981-11-27 1985-03-05 Storage Technology Corporation Adaptive domain partitioning of cache memory space
US4430712A (en) 1981-11-27 1984-02-07 Storage Technology Corporation Adaptive domain partitioning of cache memory space
US4887235A (en) * 1982-12-17 1989-12-12 Symbolics, Inc. Symbolic language data processing system
DE3302929A1 (de) * 1983-01-28 1984-08-02 Siemens AG, 1000 Berlin und 8000 München Speicherprogrammierbare steuerung
US4837785A (en) * 1983-06-14 1989-06-06 Aptec Computer Systems, Inc. Data transfer system and method of operation thereof
US4858111A (en) * 1983-07-29 1989-08-15 Hewlett-Packard Company Write-back cache system using concurrent address transfers to setup requested address in main memory before dirty miss signal from cache
DE3502147A1 (de) 1984-01-23 1985-08-08 Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung
JPS60229111A (ja) * 1984-04-26 1985-11-14 Fanuc Ltd 数値制御方式
US4933835A (en) * 1985-02-22 1990-06-12 Intergraph Corporation Apparatus for maintaining consistency of a cache memory with a primary memory
US5255384A (en) * 1985-02-22 1993-10-19 Intergraph Corporation Memory address translation system having modifiable and non-modifiable translation mechanisms
US4860192A (en) * 1985-02-22 1989-08-22 Intergraph Corporation Quadword boundary cache system
US4884197A (en) * 1985-02-22 1989-11-28 Intergraph Corporation Method and apparatus for addressing a cache memory
US4899275A (en) * 1985-02-22 1990-02-06 Intergraph Corporation Cache-MMU system
US4755930A (en) * 1985-06-27 1988-07-05 Encore Computer Corporation Hierarchical cache memory system and method
US4768148A (en) * 1986-06-27 1988-08-30 Honeywell Bull Inc. Read in process memory apparatus
US4814981A (en) * 1986-09-18 1989-03-21 Digital Equipment Corporation Cache invalidate protocol for digital data processing system
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
JPS6452912U (de) * 1987-09-30 1989-03-31
US5119290A (en) * 1987-10-02 1992-06-02 Sun Microsystems, Inc. Alias address support
US5056015A (en) * 1988-03-23 1991-10-08 Du Pont Pixel Systems Limited Architectures for serial or parallel loading of writable control store
DE68924306T2 (de) * 1988-06-27 1996-05-09 Digital Equipment Corp Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern.
US4972313A (en) * 1989-08-07 1990-11-20 Bull Hn Information Systems Inc. Bus access control for a multi-host system using successively decremented arbitration delay periods to allocate bus access among the hosts
EP0440456B1 (de) * 1990-01-31 1997-01-08 Hewlett-Packard Company Stossbetrieb für Mikroprozessor mit externem Systemspeicher
US5062045A (en) * 1990-02-23 1991-10-29 International Business Machines Corporation System for maintaining a document and activity selective alterable document history log in a data processing system
US5119493A (en) * 1990-02-23 1992-06-02 International Business Machines Corporation System for recording at least one selected activity from a selected resource object within a distributed data processing system
US5289581A (en) * 1990-06-29 1994-02-22 Leo Berenguel Disk driver with lookahead cache
US5778423A (en) * 1990-06-29 1998-07-07 Digital Equipment Corporation Prefetch instruction for improving performance in reduced instruction set processor
US5249281A (en) * 1990-10-12 1993-09-28 Lsi Logic Corporation Testable ram architecture in a microprocessor having embedded cache memory
US5303362A (en) * 1991-03-20 1994-04-12 Digital Equipment Corporation Coupled memory multiprocessor computer system including cache coherency management protocols
US5524250A (en) * 1991-08-23 1996-06-04 Silicon Graphics, Inc. Central processing unit for processing a plurality of threads using dedicated general purpose registers and masque register for providing access to the registers
US5528764A (en) * 1992-12-24 1996-06-18 Ncr Corporation Bus system with cache snooping signals having a turnaround time between agents driving the bus for keeping the bus from floating for an extended period
US6226722B1 (en) * 1994-05-19 2001-05-01 International Business Machines Corporation Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing
US5963973A (en) * 1996-12-16 1999-10-05 Bull Hn Information Systems Inc. Multiprocessor computer system incorporating method and apparatus for dynamically assigning ownership of changeable data
US5809514A (en) * 1997-02-26 1998-09-15 Texas Instruments Incorporated Microprocessor burst mode data transfer ordering circuitry and method
US6360282B1 (en) * 1998-03-25 2002-03-19 Network Appliance, Inc. Protected control of devices by user applications in multiprogramming environments
US20170371783A1 (en) * 2016-06-24 2017-12-28 Qualcomm Incorporated Self-aware, peer-to-peer cache transfers between local, shared cache memories in a multi-processor system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3786427A (en) * 1971-06-29 1974-01-15 Ibm Dynamic address translation reversed
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
US4016541A (en) * 1972-10-10 1977-04-05 Digital Equipment Corporation Memory unit for connection to central processor unit and interconnecting bus
US3949375A (en) * 1973-02-14 1976-04-06 Dma Data Industries, Inc. Computer automated information system
US3810110A (en) * 1973-05-01 1974-05-07 Digital Equipment Corp Computer system overlap of memory operation
US3999163A (en) * 1974-01-10 1976-12-21 Digital Equipment Corporation Secondary storage facility for data processing systems
US3938097A (en) * 1974-04-01 1976-02-10 Xerox Corporation Memory and buffer arrangement for digital computers
US3973244A (en) * 1975-02-27 1976-08-03 Zentec Corporation Microcomputer terminal system
US3993981A (en) * 1975-06-30 1976-11-23 Honeywell Information Systems, Inc. Apparatus for processing data transfer requests in a data processing system

Also Published As

Publication number Publication date
FR2412888A1 (fr) 1979-07-20
JPS6327738B2 (de) 1988-06-06
GB2011678A (en) 1979-07-11
GB2011678B (en) 1982-03-24
CA1126871A (en) 1982-06-29
FR2412888B1 (fr) 1986-09-05
US4161024A (en) 1979-07-10
DE2854485A1 (de) 1979-07-05
YU40212B (en) 1985-08-31
AU518637B2 (en) 1981-10-08
AU4254078A (en) 1979-06-28
JPS5492027A (en) 1979-07-20
YU302278A (en) 1982-06-30

Similar Documents

Publication Publication Date Title
DE2854485C2 (de) Datenverarbeitungsanlage
DE2856483C2 (de)
DE3114961C2 (de)
DE3689226T2 (de) Multiprozessorsystem mit multihierarchischen Ebenen.
DE3280451T2 (de) Verfahren zur Initialisierung eines Datenverarbeitungssystems.
DE3689198T2 (de) Systembus für Kommunikation zwischen Prozessoren.
DE3750938T2 (de) Multiprozessorsystem.
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE3687866T2 (de) System zur verwaltung einer mehrzahl gemeinsamer unterbrechungsbehandlungsroutinen in einer datenstruktur mit verknuepften listen.
DE3751091T2 (de) Übertragungsprotokoll zwischen Prozessoren.
DE2854397A1 (de) Pufferspeichereinheit fuer ein datenverarbeitungssystem
DE2448212C2 (de) Asynchrone Sammelleitung zur Kommunikation mit selbstbestimmter Priorität zwischen Mutterrechnergeräten und Tochterrechnergeräten
DE3783370T2 (de) Schaltung zur blockierungsverhinderung von hochprioritaetsanforderungen an eine systemsteuerung.
DE3114934A1 (de) Zentrales subsystem fuer eine datenverarbeitungsanlage
DE2657848A1 (de) Steuereinheit fuer ein datenverarbeitungssystem
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE2750721A1 (de) Ein/ausgabe-system
DE19733151A1 (de) System und Verfahren für einen virtuellen Gerätezugriff in einem Computersystem
DE19900251B4 (de) Vorrichtung und Verfahren zum Steuern eines vielseitigen USB-Endpunktkanals
DE4429969A1 (de) Verfahren für einen Programmpaketeaustausch in einem Mehrrechnersystem und Rechner dafür
DE2530599C2 (de) Verfahren und Schaltungsanordnung zur Steuerung von Ein-/Ausgabe-Geräten
DE3009530C2 (de)
EP0185260A2 (de) Schnittstelle für direkten Nachrichtenaustausch
DE2749884A1 (de) Einrichtung zum automatischen neuformatieren von daten in einem dv-system
DE2629401C2 (de)

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

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

8339 Ceased/non-payment of the annual fee