DE2854485A1 - Datenverarbeitungssystem mit speicherhierarchie - Google Patents
Datenverarbeitungssystem mit speicherhierarchieInfo
- Publication number
- DE2854485A1 DE2854485A1 DE19782854485 DE2854485A DE2854485A1 DE 2854485 A1 DE2854485 A1 DE 2854485A1 DE 19782854485 DE19782854485 DE 19782854485 DE 2854485 A DE2854485 A DE 2854485A DE 2854485 A1 DE2854485 A1 DE 2854485A1
- Authority
- DE
- Germany
- Prior art keywords
- signal
- memory
- busbar
- data
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0884—Parallel 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
Die vorliegende Erfindung betrifft ein DV-System nach dem
Gattungsbegriff des Anspruches 1. Sie bezieht sich insbesondere auf Minicomputersysteme mit einer Speicherhierachie,
wobei ein Hochgeschwindigkeitsspeicher geringer Kapizität über eine System-Datenschiene an eine Speichereinrichtung
mit hoher Kapizität und geringer Geschwindigkeit angeschlossen ist.
Das Konzept der Speicherhierachie basiert auf dem Phänomen, daß individuelle Speicherprogramme bei ihrer Ausführung das
Verhalten aufweisen, daß in einer vorgegebenen Zeitperiode ein begrenzter Speicherbereich eine sehr hohe Benutzungsfrequenz aufweist. Durch eine Speicherorganisation, die einen
Pufferspeicher geringer Größe an der Schnittstelle der Zentraleinheit und verschiedene Pegel wachsender Kapazität eines
langsamen Speichers vorzieht, kann eine effektive Zugriffszeit gebildet werden, die irgendwo zwischen den schnellsten
und langsamsten Elementen der Hierachie liegt, wobei ein Speichersystem mit großer Kapizität geschaffen wirdjdas für
die Software transparent ist.
Die Erfindung macht von den Vorteilen eines Wortorganisierten Speichers Gebrauch. Der Stand der Technik beschränkte sich
auf die Speicherung des angeforderten Datenworts mit seiner Adresse in Hardwareregistern. Als das Bedürfnis nach billigen
Pufferspeichern mit erweiterter Größe, auftrat, wurde im Stand■-der
Technik eine Blockorganisation benutzt. Wenn ein bestimmtes Wort durch die Zentraleinheit angefordert wurde, so wurde
der das Wort enthaltendeBlock in dem Hochgeschwindigkeits-Datenpuffer
gespeichert. Diese Arbeitsweise besitzt den Nachteil, daß in den Hochgeschwindigkeits-Pufferspeicher Worte
mit einer relativ geringen Benutzungswahrscheinlichkeit gebracht werden. Nimmt man einen Block mit vier Worten an, so
muß der gesamte Block einschließlich der Worte 1, 2 und 3 angefordert
werden, wenn tatsächlich nur das Wort 4 angefordert istl Die Worte 1, 2 und 3 können hierbei eine relativ geringe
909827/0744
Benutzungswahrscheinlichlteit aufweisen. Trotzdem werden diese
Körte in den Hochgeschwindigkeitspuffer gebracht. Um die Speicherhierachie
optimal zu nutzen, muß das Betriebssystem den Speicher in einer solchen Weise organisieren, daß die Software-Submodule
und Datenblöcke mit dem Wort 1 des Blockes beginnen. Zur Überwindung dieser Schwierigkeit wurde im Stand
der Technik eine "Block-Vorausabsuche" verwendet. Wenn sich ein Block in dem Hochgeschwindigkeitspuffer befand, so wurde
während der Verarbeitung eines Datenwortes in diesem Block eine Entscheidung getroffen, um den nächsten Block in den
Hochgeschwindigkeitspuffer zu bringen.
Einige typische Patente und Veröffentlichungen, die diese Philosophie zeigen, sind folgende:
Die US-PS»3 231 868 offenbart einen "seitwärts schauenden"
Speicher, der ein Wort in einem Register und seine Hauptspeicheradresse in einem zugeordneten Register speichert.
Zur Verbesserung der Leistung zeigt die US-PS 3 588 829 einen 8Wort-Blockabruf aus dem Hauptspeicher in den Hochgeschwindigkeitspuffer,
wenn irgendein Wort in dem 8Wort-Block von der Zentraleinheit angefordert wird. Ein Artikel von CJ.
Conti "Concepts for Buffer Storage", veröffentlicht in IEEE Computer Group News, März 1969, beschreibt die Übertragung
von 64-Byte-Blöcken, wie sie in dem IBM-System 360/85 benutzt
werden, wenn ein bestimmtes Byte dieses Blockes, der sich gerade nicht im Pufferspeicher befindet, angefordert
wird. Das IBM-System 360/85 ist ganz allgemein auf den Seiten 2-30 des "IBM-System-Journal", Band 71, Nr.1, 1968 beschrieben.
Die US-PS 3 820 078 beschreibt die Übertragung von Blöcken mit 32 Bytes bzw. die Speicherung von Blöcken
mit 16 Bytes aus dem Hauptspeicher in den Hochgeschwindigt
keitspuffer, wenn ein Wort (4 Bytes) des Blockes oder ein Halbblock
von der Zentraleinheit angefordert wird. Die US-PS 3 896 419 beschreibt die übertragung eines Blockes mit 4
Worten von dem Hauptspeicher in den Hochgeschwindigkeitspuffer, wenn ein Wort dieses Blockes von der Zentraleinheit
angefordert wird. Schließlich beschreibt die US-PS 3 898 6.24
909827/07U
den VoraBruf der nächsten Zeile (32 Bytes) aus dem Hauptspeicher
in den Hochgeschwindigkeitspuffer, wenn ein bestimmtes Byte durch die Zentraleinheit aufgrund der vorangegangenen
Zeile angefordert wird.
In Minicomputern, insbesondere in jenen Minicomputern, die in einer solchen Weise organisiert sind, daß eine Vielzahl von
Systemeinheiten gemeinsam an eine System-Datenschiene angeschlossen sind, schaffen die bekannten Systeme eine Anzahl
von Problemen, die alle den Datendurchfluß und somit die Leistung des Minicomputers betreffen. Im Stand der Technik wird vom
Hauptspeicher der gesamte Block von Worten,in dem sich das angeforderte
Wort befindet, zu dem Pufferspeicher gesendet. Hierbei sind Worte enthalten mit Adressen, die dem angeforderten
Wort vorausgehen und mit Adressen, die dem angeforderten Wort nachfolgen. In den meisten Fällen fordert die Zentraleinheit
im folgenden Zyklus das Wort unter der nächsthöheren Adresse an. Dies führt dazu, daß Worte mit hoher Benutzungswahrscheinlichkeit
ebenso wie Worte mit geringer Benutzungswahrscheinlichkeit in den Pufferspeicher übertragen werden, um dieses
Problem zu überwinden, ist es im Stand der Technik erforder-.lich,
daß die Programmierer des Betriebssystems ihre' Programme optimieren, um Folgen mit Worten unter der ersten Adresse
eines jeden Blockes zu starten. Ein anderes Problem im Stand der Technik liegt darin, daß ein Block von Worten von dem
Hauptspeicher zu dem Pufferspeicher in aufeinanderfolgenden - vr
Zyklen übertragen wird. Beispielsweise kann ein Block mit 32 Bytes in 8 Zyklen übertragen werden, wobei jeweils 4 Bytes
zu jedem Zeitpunkt übertragen werden. Das Datenschienen-System •in einem Minicomputer führt hierbei zu einer beträchtlichen
Verminderung des Durchflusses bzw. der Leistung des Systems.
Ein weiteres Problem in einem Minicomputersystem, das eine System-Datenschiene und eine E/A-Datenschiene benutzt, liegt
in dem Anwachsen des Datenverkehrs über die System-Datenechiene, wenn Zentraleinheit-Leseanforderungen unter Verwendung
der System-Datenschiene befriedigt werden müssen, wobei
909827/0744 ' -
285U85
ein solches- Anwachsen des Datenverkehrs die Leistung des
Minicomputerssysrtems weiter herabmindert.
Was daher erforderlich ist, ist ein Pufferspeichersystem, durch das nicht nur eine größtmögliche Trefferwahrscheinlichkeit
(d.h. ein Auffinden des in dem Pufferspeicher befindlichen Wortes bei einer Anforderung durch irgendeine
Einheit) geschaffen wird, sondern bei dem auch der Datenverkehr auf der System-Datenschiene nicht anwächst, wenn
die verschiedenen Lese- oder Schreibanfoarderungen in einem
System befriedigt werden, das eine Datenschiene für die Verbindung der verschiedenen Komponenten des Computersystems
benutzt.
Studien des Speicher-Zugriffverhaltens während der Programmausführung
zeigen, 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 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.
Es ist daher ganz allgemein die Aufgabe der vorliegenden Erfindung,
die Leistung eines Datenverarbeitungssystems zu verbessern. Insbesondere soll die Informationsübertragung zwischen
einer Zentraleinheit und einem Pufferspeicher und der Nachrichtenaustausch zwischen dem Hauptspeicher und anderen
Systemkomponenten verbessert werden. Die Wahrscheinlichkeit eines Staus des Datenverkehrs auf einer Datenschiene soll hierbei
auf ein Minimum reduziert werden. Die Lösung dieser Aufgabe gelingt gemäß der im Anspruch 1 gekennzeichneten
Erfindung. Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
909827/0744
' ^ 7 VN.
ErfIndungsgemäß wird In einem Datenverarbeitungssystem, das
aus mehreren SystemeinheIten, einschließlich einem Häuptspeicher,
einem Pufferspeicher und einer Zentraleinheit besteht, wobei alle diese Einheiten an eine System-Datenschiene angeschlossen
sind und der Nachrichtenaustausch miteinander über diese Datenschiene erfolgt, eine festgeschaltete 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
die System-Datenschiene ausgeführt und dementsprechend überwacht der Pufferspeicher die System-Datenschiene 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 erfolgt
und diese Information in dem Pufferspeicher nicht verfügbar 1st, so gibt der Pufferspeicher eine Anforderung an den Hauptspeicher
über die System-Datenschiene nach dieser Information aus, die sodann zu dem Pufferspeicher über die System-Datenschiene
gesendet wird.
Demgemäß kann durch eine direkte festgeschaltete Schnittstelle zwischen dem Prozessor und der Puffereinheit und die" "
Verwendung von Hochgeschwindigkeits-Logikschaltkreisen dazwischen nicht nur die Prozessor-Zugriffs-Wartezeit auf einen '
Bruchteil der Zugriffsverzögerung vermindert werden, die bei
dem Zugriff auf den Hauptspeicher durch die System-Datenschiene angetroffen wird, sondern es kann auch der Informationsverkehr
auf dieser Datenschiene vermindert werden. Da es jedoch nicht wünschenswert ist, den Nachrichtenaustausch zwischen
anderen Einheiten, die an die Datenschiene 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.
909827/07U
Im Stand der Technik gißt es zahlreiche Einrichtungen, bei denen eine direkte Verbindung zwischen der Zentraleinheit
und dem Pufferspeicher besteht. Einige typische Einrichtungen dieser Art können den US-Patentschriften 3 820 078 ,
3 735 360, 3 898 624, 3 806 888 und 3 896 419 entnommen werden. Diese Anordnungen liefern jedoch keinen direkten Zugriff
auf den Hauptspeicher durch die Zentraleinheit und keine dieser Einrichtungen ermöglicht einen Nachrichtenaustausch zwischen
Systemkomponenten, wie beispielsweise peripheren Einheiten, Steuerungen, einem Hauptspeicher und einer Zentraleinheit
über eine System-Datenschiene, an die sie angeschlossen sind.
Anhand eines in den Figuren der beiliegenden Zeichnung dargestellten
Ausführungsbeispieles sei die Erfindung im folgenden näher erläutert. Es zeigen:
Figur 1 ein allgemeines Blockdiagramm für eine Art
von Nachrichten-Sammelschiene, wie sie von dem Pufferspeicher, Hauptspeicher und der
Zentraleinheit benutzt wird.
Figuren 1a
und 1b das Format der Adress-Sammelschiene und der Daten-*Sammelschiene für das System gemäß Figur
1.
Figur 2 ein allgemeines Blockdiagramm einer anderen
Art von Sammelschiene, wie sie durch den Hauptspeicher, den Pufferspeicher und die Zentraleinheit
benutzt wird.
Figuren
2a-2d das Format verschiedener Informationen, die
über die Sammelschiene gemäß Figur 2 übertragen
werden.
909827/0744
Figur 3 ein allgemeines Blockdiagramm der vorliegenden Erfindung.
Figur 4 ein allgemeines Blockdiagramm der System-Sammelschiene-Schnittstelleneinheit.'
Figur 5 eine Darstellung des Taktdiagrammes für den Betrieb der Sammelschiene gemäß der vorliegenden
Erfindung.
Figuren 6a
I
Multiplexer-Sammelschienen-Schnittstelle.
I
Multiplexer-Sammelschienen-Schnittstelle.
und 6b Logische Blockdiagramme eines Teiles der E/AFigur 7 ein Blockdiagramm zur Veranschaulxchung der
übertragung der Geräte-Adresseninformation von der Daten-Sammelschiene zu der Adresssammelschiene.
Figuren
•8a-8d das Format verschiedener Informationen während
eines Lesezyklus.
Figur 9 ein detailliertes logisches Blockdiagramm der Sammelschienen-Schnittstelle mit einer
typischen Gerätesteuerung, die an die Sammelschiene angeschlossen ist.
Figur 10 ein detailliertes logisches Blockdiagramm der Sammelschienen-Schnittstelle mit einer
typischen Speichersteuerung.
Figur 11 ein detailliertes logisches Blockdiagramm
einer typischen System-Sammelschiene-Schnittstelle .
909827/07U
Figur 12 eine schematische Darstellung der festge-
schalteten Schnittstelle zwischen Pufferspeicher und Zentraleinheit.
Figur 13 ein detailliertes logisches Blockdiagramm der
internen Schnittstelle zwischen Pufferspeicher und Zentraleinheit.
Figur 14 ein detailliertes Blockdiagramm der Zentraleinheit-Behandlungslogik.;
Figur 15 ein Pufferspeicher-Taktdiagramm.
Die Datenverarbeitungs-Sammelschiene gemäß der vorliegenden Erfindung bildet einen Übertragungsweg zwischen zwei Einheiten
eines vorgegebenen Systems. Figur 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 3 993 981 näher dargestellt und beschrieben. Es sei darauf
verwiesen, daß in Figur 1 der erwähnten US-PS mehr Geräte an die Sammelschiene als in Figur 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 Figur 2 dargestellt, wobei
die Grundsammeischiene in zwei Sammelschienen unterteilt"ist;
eine Ein/Ausgabe-Sammelschiene unSviystem-Sammelschiene, die
durch einen Ein/Ausgabe-Multiplexer (IOM) voneinander getrennt
sind. Bei dieser Art Sanunelschienensystem bildet die E/A-Sammelschiene eine Schnittstelle für alle E/A-Steuerungen,
909827/0744
während die System-Saromelschiene eine Schnittstelle für die
Speicher und Prozessoren Bildet. Das Wörtformat des- Sammelschienensystems
gemäß Figur: 2 ist in den figuren 2A-2D dargestellt,
wobei Figur 2A den Adressteil der Sammelschiene und die Figuren 2B und 2D die Datenformate darstellen. Es sei
darauf verwiesen, daß andere Formate mit unterschiedlichen Wortlängen ebenfalls verwendet werden können. Obgleich nur
wenigevdie 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äß Figur 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 Miniline) 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äß Figur 1 und der zuvor ,erwähnten US-PS 3993 981 weist
ein typisches NML-Sammelschienensystem eine Mehrleitungs-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-4a und ein typischer Pufferspeicher 1a angeschlossen. Ferner können an die Sammelschiene
. ■ 909827/07U
beispielsweise t/^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übertragungsteuerung durch Modemgeräte hervorzurufen (siehe US-PS 3 993 981).
Gemäß Figur 2 ist die HNP-Sammelschiene 200 mit einigen typi-
s ich sehen angeschlossenen Einheiten dargestellt. Es versteht^ 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-Samme!schiene 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 CPü-12 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
IOM-11 erzeugt den Weg für die Daten und die Steuerinformation
zwischen den Komponenten, die an die HNP-Systern-Sammelschiene,
wie beispielsweise die Hauptspeichereinheiten oder die zentralen Prozessoren, und an die E/A-Sammelschiene 20t,
wie beispielsweise dieE/A-Steuerungen (manchmal als Kanäle bezeichnet), angeschlossen sind.
Der Multiplexer IOM-11 besteht aus vier Haupteinheiten:
der Ein/Ausgabe-Sammelschienenschnittstelle, der Systemschnitt
Sammelschienenstelle, einer Dateneinspeisung und einem E/AProzessor.
Da diese Einheiten jedoch für die Ausführung der vorliegenden Erfindung nicht erforderlich sind, ist nur der
in den Figuren 6a und 6b dargestellte Teil des Multiplexers
909827/0744
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 Figur 5) an, was weiter unter 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 einerRichtung, 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*, 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übertragungV 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-Vollduplexkänä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
909827/0744
285U85
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 Haupteinheit
bezeichnet wird, adressiert eine. Zieleinheit, die im vorliegenden Fall manchmal als Nebeneinheit bezeichnet wird,
durch Aufschaltung einer Zieladresse auf die Adressleitungen der Adressen-Sammelschiene. Es gibt 24 Adressleitungen, 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äß Figur 2A verwendet. Dies wird durch ein hohen Potential für das Speicherbezugssignale
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äß Figur 8C verwendet.
Wenn eine Haupteinheit eine Antwort von einer Nebeneinheit anfordert, wie beispielsweise bei einer Leseoperation, so zeigt
sie dies der Nebeneinheit 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 Adress-Sammelschiene
gegeben, wobei diese das Format gemäß Figur 2A oder Figur 8C
,·. · 909827/0744
285AA85
aufweist, was von dem Typ der Zieleinheit abhängt. Im Falle eines Speichers erfolgt die Adressierung durch das Format
gemäß Figur 2A und bei anderen Gerätentypen gemäß dem Format gemäß Figur 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 Sammelschienenzy.klen ab.
Gemäß den Figuren 2A-2D sind einige typische Adressen- und
Datenformate des HNP-Sammelschienensystems 200 dargestellt. . Die ersten 5 Bits des Adressenformates gemäß Figur 2A um- ·-
fassen die Bits P, I, S, F und RFU. Das einzige für die Ausführung der vorliegenden Erfindung erforderliche Bit stellt
das Bit F dar, das als Formatbit bezeichnet wird, Dieses Bit wird nachstehend in näheren Einzelheiten beschrieben. Die Bits
5-23 werden benutzt, um einen Speicherplatz zu adressieren. Figur 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äß
Figur 1 das Format gemäß Figur 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 2o Bits ergeben. Das Format gemäß Figur 2B weist andererseits ebenfalls 2o Bits auf und umfasst ein
Α-Bit im höchsten Rang und ein B-Bit zwischen den Bits 7 und 8. Das Format umfasst zwei Bytes mit 8 Bit, die die Bits 0-7
und die Bits 8-15 umfassen. Das Format gemäß Figur 2C wird benutzt, wenn Daten von der NML-Sammelschiene mit dem Format'
gemäß Figur 1B als Daten auf der HNP-Sammelschiene benutzt
werden. Da die HNP-Sammelschiene ein Datenformat gemäß Figur· 2B besitzt und dieses Format 20 Bits umfasst, müssen die Daten
auf der NML-Sammelschiene mit einem Format gemäß Figur 1B auf
das Format gemäß Figur 2B ausgerichtet werden. Dieses Format
... 90 982 7/0744
besitzt den Binärwert "O" in der hochrangigsten Bitposition
und einen weiteren Binärwert "0" zwischen den Bits 7 und 8. Dementsprechend besetzen die Bits 0-7 gemäß Figur 1B die Bits
0-7 gemäß Figur 2C, und die Bits 8-15 gemäß Figur 1B besetzen
d^e Bitpositionen 8-15 gemäß Figur 2C. Diese Transformation
erfolgt in einfacher Weise, wobei dies in näheren Einzelheiten in der DE-OS 27 49 884 beschrieben ist. Gemäß Figur 4 dieser
DEK)S 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 dn Übereinstimmung mit dem Format gemäß Figur 2C auf, während der Treiber/Empfänger B
Anschlüsse in Übereinstimmung mit dem Format gemäß Figur 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äß Figur 1B in Formate gemäß Figur 2C
und umgekehrt umgewandelt werden.
In Figur 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 Figuren
8A-8D benutzt, wenn eine Haupteinheit eine Nebeneinheit adressiert und eine Antwort erwartet. Hierbei veranschaulichen die
Figuren 8A und 8C die Formate der Adressen-Sammelschiene, wenn die Quelleneinheit ein Gerät vom Speichertyp bzw. ein
anderes Gerät adressiert. Figur 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 aus-
909827/0744
gibt. Gemäß Figur 8A können die Bits 0-23 zur Adressierung eines bestimmten Wortes im Speicher benutzt werden. Ein hiervon
abweichendes Format ist in Figur 2A dargestellt, wo ein kleinerer Speicher adressiert wird und die höherrangigen Bits
als Steuerinformation benutzt werden. Gemäß Figur 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äß Figur 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 umfasst. Die Formate gemäß den Figuren 8D und 2D entsprechen
sich; das Format gemäß Figur 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 Figuren 6A und 6B sind die Schaltkreise für die Erzeugung
des Auswahlscodes zur. Auswahl des geeigneten Formates
dargestellt. Die NAND-Gatter 26,27 und 16 erzeugen die Signale ISLRDO + 00, ISLRD1 + 00, und ISLRD2 + 00, wobei diese Signale
der
den Auswahlcode bildenjVin der rechten Seite des Blockes 300 in Figur 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 ISLRD1 + 00 und das Signal ISLRD2 + 00 den Wert "1" besitzen muß. Gemäß den Figuren 6A und 6B muß somit das NAND-Gatter 26 ein "O"-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 + OB den Binärwert "1" besitzen. Das Signal ISLRDO + OA ist jenes Signal, welches das Weiterreichen 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 + OB stellt
den Auswahlcode bildenjVin der rechten Seite des Blockes 300 in Figur 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 ISLRD1 + 00 und das Signal ISLRD2 + 00 den Wert "1" besitzen muß. Gemäß den Figuren 6A und 6B muß somit das NAND-Gatter 26 ein "O"-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 + OB den Binärwert "1" besitzen. Das Signal ISLRDO + OA ist jenes Signal, welches das Weiterreichen 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 + OB stellt
909827/0744
285U85
das Signal dar, das nur durch, den nicht dargestellten IOM-Pro-
zessor benutzt wird, wenn dieser lesend oder schreibend mit der
externen System-Sammelschiene zusammenarbeitet. Damit das Signal ISLRDO + OB 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 nimm; dagegen weist
dieses Signal im Fälle 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
IOM-300 Zugriff zu einer Sammelschiene besitzt, falls dieses Signal den hohen Pegel aufweist.
Zusätzlich zu dem Signal ISLRDO+OB 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+OA besitzt
den hohen Pegel, wenn beide Eingangssignale des NOR-Gatters 28 den niedrigen Pegel aufweisen. Beide Eingangssignale des NOR-Gatters
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 Eingangssignal BMREFD-IO des
UND-Gatters 29 den niedrigen Pegel aufweisen..bzw. es müssen beide
Signale den niedrigen Pegel aufweisen, damit das UND-Gatter 29 am Ausgang ein Signal mit niedrigem Pegel abgibt. In gleicher Weise
muß das Eingangssignal IOMCYC+OO oder das Eingangssignal BIACOL-IO
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 stattfindet.
Das Signal BMREFD-IO 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 statt-
909827/0744
findet. In gleicher Weise wird das Signal IOMCYOO+00 am UND-Gatter
30 den niedrigen Pegel aufweisen und das Signal BIACOl-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-rGatter 26 erzeugt. Dieses Signal reprä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 ISLRD1+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+OA oder IOMCYC-00 des NAND-Gatters
27 den niedrigen Pegel besitzt. Das Signal ISLRDI+OA besitzt den niedrigen Pegel, wenn der Prozessor des Multiplexers IOM-300
lesend mit der E/A-Sammelschiene 201 zusammenarbeitet. Das Signal IOMCYC+00 befindet sich auf niedrigem Pegel, wenn keine Obertragung
von der E/A-Sammelschiene 201 zu der System-Sammelschiene 202 stattfindet; und es besitzt andererseits den hohen Pegel, wini^f
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 RSLR19+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 ersieht- .
lieh, 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 16 am Ausgang den
909827/0744
hohen Pegel ausgeben, da in diesem speziellen Beispiel das Element
305 ausgewählt wird, dem der Auswahlcode 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 der NOR-Gatter 17 und 18 den niedrigen Pegel aufweisen. Das Ausgangssignal
ISLRD2-0A 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 des 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 IOM-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+OO 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 Ein-*
gangssignal BIACOl+OO 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+OO mit hohem Pegel erzeugt und dieses Signal bildet
das niedrigrangigste Bit innerhalb der 3 Bit des Auswahlcodes.
909827/0744
■4s.
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. In der nachstehenden Tabelle I sind die verschiedenen durch die Schaltung
gemäß den Fig. 6A und 6B verwendeten Signale und ihre Funktion dargestellt. Aufgrund dieser Angaben ist jeder Fachmann in der Lage,
eine Schaltung zu realisieren, die die Auswahlcodesignale zur Auswahl eines vorbestimmten geforderten Formats erzeugt.
Signalname
Ursprung des Signales
Bestimmung des Signales
Funktion des Signales
IOMCYC+OO
E/A-Sammelschienenschnitts
te1Ie
Interne Sammelschiene
BMREFD+OO
BIACO1+00 E/A-Sammelschiene System-Sammelschiene
Hoher Pegel, wenn eine Informationsüber tragung von der E/A-Sammelschiene
zu der System-Samme1-schiene
stattfindet.
Hoher Pegel, wenn Information von einer E/A-Sammelschiene zu einen
Spe i ehermodu1
an der System-Sammeischiene übertragen wird.
Hohes Potential, wenn ein Antwortzyklus von der System-Sammelschiene
nicht angefordert wird.
909827/0744
2854A85
Signalname
Ursprung des Signales
Bestimmung des
Signales
Signales
Funktion des Signales
IOPCYC+OO IOM-Prozessor Interne Sammelschiene Hohes Potential,
wenn ein IOM-Prozessor auf eine externe E/A oder System-Sammelschiene
zugreift.
.RSLR18+OO " " ■ " ■ J- Eine Leseoperation
hinsichtlic: des Speicherbits 18 wird nur benutzt, wenn der IOM-Prozessor au: eine Sammelschiene
Zugriff nimmt.
RSLR19+OO ■ " " ■ Eine Leseopera-
tion hinsichtlich des Speicherbits 19 wird nur benutzt, wenn der IOM-Prozessor
auf eine Sammelschiene Zugriff nimmt.
RSLR2O+OO " ■ ■ " Eine Leseopera-
tibn hinsichtlich des Speicherbits 20 wird nur benutzt, wem der IOM-Prozessoj
auf eine Sammel-— schiene Zugriff nimmt.
BMWRTD+10 E/A-Sammelschie- Interne Sammelschiene Direkte Speichernenschnittstelle
Schreiboperation
von der E/A-Sammelschiene zu der System-Sammelschiene.
909827/0744
Signalname Ursprung des Bestimmung des Funktion des Signales " Signales .' Signales
BIAI03+00 E/A-Sammel- System-Sammel- Das Formatbit
schiene schiene auf der E/A-
Sammelschiene/ welches anzeigt, daß eine Neuformatierung
stattfindet, wenn es folgenden Wert . . besitzt:
= 1 mit dem Schreibauswahlblock 305 (Fig.3)
= O mit dem Schreibauswahlblock 304 (Fig.3)
=■X mit dem Leseauswahlblock 309
(Fig. 3).
MMAI21+OO System-Sammel- E/A-Sammel- Formatbit vom
schiene schiene Speicher auf
BSSHBC, wenn:
' = 1 und SHBC-Code den Block 303 auswählt.
« 0 und SHBC-Code den Block 302 auswählt.
SYSCYC+OO System-Sammel- Interne Sammel- übertragung von
schienenschnitt- schiene der System-Sam-
stelle melschiene zu der
E/A-SammeIschiene
ISLRDO+OA E/A-Sammel- " ■ "
schienen- - . · " "
schnittstelle
schnittstelle
ISLRDO+OB IOM-Prozessor " . ■
ISLRDl+OA " ■ . " ; "
ISLRDl+OA " ■ . " ; "
909827/074A
Signalnahme Ursprung des Bestimmung des Funktion des
j · Signals Signales Signales
ISLRD1+OO Interne Sammel- " " Signal für das
schiene höchstrangige
' Bit des Auswahl
codes.
ISLRD2+OO " · " ■ " Signal für das
Bit niedrigster Ordnung des Auswahlcodes .
Aus vorstehendem ist ersichtlich, daß die Anforderung von Daten von einer anderen Einheit oder für die übertragung von Daten usw.
durch die Ausgabe vorbestimmter Signale erfolgt. Kombinationen dieser Signale erzeugen automatisch einen Code, der zur automatischen
Auswahl des geeigneten Formates für die spezielle auszuführende bzw. angeforderte Operation verwendet wird. Normalerweise
betreffen Übertragungsoperationen eine Information, die von der E/A-Daten-Sammelschiene 201 zu der System-Sammelschiene 202
zu übertragen ist. Demgemäß enthält eine übertragung von der E/A-Sammelschiene
201 zu der System-Sammelschiene 202 in ihrem Weg den Multiplexer IOM-11. Die Information kann ebenfalls von der
System-Sammelschiene 202, die zusammen mit den Steuersignalen zu dem Multiplexer IOM führt, zu der E/A-Sammelschiene 201 übertragen
werden, die aufgrund der Steuersignale Information.von dem Multiplexer IOM aufnimmt. Informationsübertragungen zwischen der
Zentraleinheit CPU und den Speichern werden jedoch über die System-Sammelschiene
100 und 202 ausgeführt.
Anhand von Figur 5 sei nunmehr in näheren Einzelheiten das Zeittaktdiagramm
des HNP-Sammelschienensystems erläutert. In jedem einzelnen Sammelschienenzyklus gibt es drei iden.tifizierbare 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 7C-7E, während welcher die Haupteinheit eine Nebeneinheit aufruft, und die Periode 7E-7G, während
welcher die Nebeneinheit antwortet. Wenn die Sammelschiene un-
909827/0744
tätigt ist, so weist das Sammelschienen-Anforderungssignal
BSREQT- den Binärwert "1" auf. Die zum Zeitpunkt 7A 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 7B 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 7C 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 und nunmehr in der Lage ist, Information
auf den Daten-, Adressy und Steuerleitungen der Sammelschiene
200 zu einer von der Haupteinheit ausgewählten Nebeneinheit zu übertragen.
Die Nebeneinheit löst die dritte Phase der Sammelschienenoperation
aus, die mit der negativ verlaufenden Flanke des Austastsignales BSDCND- beginnt. Das Austastsignal ist beispielsweise
60Nanosekunden gegenüber der negativ verlaufenden Flanke des Signales BSDCNN- über eine nicht dargestellte Verzögerungsleitung
verzögert. Beim Auftritt der negativ verlaufenden Flanke des Signales BSDCNN- zum Zeitpunkt 7D kann die Nebeneinheit nunmehr
prüfen, ob ihre Adresse vorliegt, und sie kann, für den Fall,* ·
das sie aufgerufen ist, mit dem Entscheidungsprozess beginnen, ' ·
um die angeforderte Antwort zu erzeugen. Typischerweise wird ·-- .hierbei ein Bestätigungssignal BSACKR- 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 7E durch1
die Haupteinheit schaltet das Signal BSDCNN- der Haupteinheit auf den Binärwert "1" zum Zeitpunkt 7 F um. Das Austastsignal
kehrt auf deu Binärwert "1" im Zeitpunkt 7G zurück, wobei dieser Zeitpunkt gegenüber dem Zeitpunkt 7F mittels einer nicht
dargestellten Verzögerungsleitung verzögert wird. Somit sind in
909827/0744
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 dies, daß die Sammelschiene in den untätigen 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" aufweifet, so wird nach einem weiteren negativen Flankenverlauf des
Signales BSDCNN- eine weitere asynchrone Prioritatsauswahl ausgelöst,
was durch die gestrichelten Linien zum Zeitpunkt 71 angezeigt ist. Es sei darauf verwiesen, daß diese Prioritätsauswahl
keine Triggerung durch die positiv verlaufende Flanke des Bestätigungssignales
zum Zeitpunkt 7H erfordert, sondern bereits zum Zeitpunkt 7F 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 Adressbits;
• 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 und der Sammelschienen-Schnittstelleneinheit des Pufferspeichers 301 und
einer Zentraleinheit CPü-303 gemäß Figur 3 betrachtet. Dies soll anhand der Figuren 3 und 7-11 geschehen.
909827/0744
Gemäß Figur 3 ist ein Blockdiagramm der Zentraleinheit CPU-312 und des Pufferspeichers 313 dargestellt, die jeweils über Sammelschienen-Schnittstelleneinheiten
201 und 203 an die System-Sammeschiene -302 angeschlossen sind, was nachfolgend näher beschrieb
ben wird. Eine festgeschaltete Schnittstelle 311, die ebenfalls nachstehend näher 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-312 und der Pufferspeichereinheit
313 ermöglicht wird. Die Pufferspeichereinheit besteht aus 4 logischen Haupteinheiten, der Sammelschienen-Schnittstelle
301r der festgeschalteten Schnittstelle 311, der Ersatz- und Fortschreibungs-Logikeinheit 314 und der Pufferlisten- und Datenpuffer-Einheit
315, wobei die beiden erstgenannten Schnittstellen ^reiter 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 Hochgeschwindigkeits-Zwischenspeicher
für 2.048 bis 4.096 Worte, die aus dem Hauptspeicher ausgelesen werden, um Daten oder Befehle an die Zentraleinheit CPU
zu 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 Oberwachungsfunktion
prüft und ermittelt alle Hauptspeicher-Schreibbezugnahmen Cz.B. von der CPU-312, 4a, 12 oder von dem Multiplexer IOM-11),
und sie ersetzt Daten in irgendeinem laufenden aktiven Pufferspeicherbereich
mit Daten von der System-Samme1schiene 202,
302.
Die Sammelschienen-Schnittstelleneinheit 301 verbindet die Pufferspeichereinheit
313 mit der System-Sammelschiene, und sie gestattet der Pufferspeichereinheit 313 den Zugriff auf einen Hauptspeicher
1,2 über die System-Sammelschiene 302 und das Auslesen von von
90-9827/0744
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-Sammelschiene-Schnittsteile;
b) Anforderungs- und Prioritätslogik; c) Adressenerzeugungslogik ;und d) Adressfeld-Ersatzlogik. In diesem Zusammenhang
sei auf die US-Patentschriften 4 030 075 und 3 993 981
verwiesen.
Die Zentraleinheit CPU-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-312 ist die Sammelschienen-Schnittstelleneinheit 303 (auch Steuereinheit genannt), die anhand
der Figuren 7-11 noch näher beschrieben wird.
Gemäß Figur 4 ist ein typisches System einer Sammelschienen-Schnittstelleneinheit
BIU400 dargestellt. Hauptspeicheranforderungen, Adressen und Daten werden über Puffer-Sender und Empfänger
401-403 gesendet und empfangen. (Hinsichtlich Einzelheiten sei auf die Figuren 7, 9-11 und die noch folgende Beschreibung
verwiesen).
Kurζ gesagt beginnt der Behandlungszyklus der Zentraleinheit CPU-312,
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 Figuren 12,
13 und 15 und die noch folgende Beschreibung verwiesen). Wenn alch der Pufferspeicher nicht in einem Fortschreibungs- oder Eraatzzyklus
befindet (Beispielsweise wird die Information im Haupt-
909827/07U
speicher nicht fortgeschrie&en 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 CPU-Speicher-Leseadresse
vorliegt Cz.B. ein Treffer), so werden die zugeordneten
Daten im Pufferspeicher zu der Zentraleinheit CPü-312 über
die festgeschaltete Schnittstelle 311 gesendet.
Wenn die von der Zentraleinheit CPU gesendete Speicher-Leseadresse
±n der Pufferspeicherliste nicht vorliegt (z.B. keine Treffer), so wird die CPU-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 BIU400 über die BlU-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 Fig. 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 Fig. 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äß Fig. 2 ihre Adresse, z.B. die Kanalnummer und einige Steuerbits auf der Daten-Saramelschiene 702 aus. Die Information besitzt das in Fig. 8B dargestellte Format. Die Speicher-
-909827/0744
adresse 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
Fig. 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 Sammelschienenzyklus 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äß Fig. 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 gegeben, die sich aus0 der Kanalnummer an den Bitpositionen 9-17 und
den Steuerbits an den Bitpositionen 18-23 zusammensetzt. Wie zuvor bereits erwähnt, bildet jedoch das Bit 21 das einzig interessierende
Bit im Hinblick auf die vorliegende Erfindung. Dieses Bit wird dem.
logischen Schaltkreis gemäß Fig. 6A als das Signal MMAI21+00 zugeführt.
Wenn dieses Bit den hohen Pegel aufweist, so wird eine Neuformatierung der Daten gefordert und die Art der Neuformatieruhg
hängt von den anderen Signalen, die andere Anforderungen für vorliegende Operationen darstellen, ab. Es sei ferner vermerkt, daß
der Schaltkreis gemäß Fig. 6A der Formatierung des Bits an der Bitposition
3 in dem Format gemäß Fig. 2A dient, wobei dieses Bit durch das Signal BIAIO3+00 in Fig. 6A repräsentiert wird. Ferner
■ei darauf verwiesen, daß das Format gemäß Fig. 8B dem Format des "
Blockes 308 in dem Multiplexerblock 301 des Multiplexers IOH-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
909827/0744
" 31 285U85
anhand von Beispielen beschrieben wurde.
Gemäß Fig. 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 Leitungsempfanger
auf, wobei einem solchen Empfänger das Speicherbezugssignal BSMREF- und den anderen Leitungsempfängern die Sammelschienen-Adreßsignale
BSAD08- bis BSAD14- zugeführt werden. Da d^e 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 2OO 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 Ausgangs.-leitungen
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" auf- ..:. ·
weisen. Das Gatter 73 gibt dementsprechend ah seinem Ausgang ein
Signal mit dem Binärwert "0" aus, wenn die richtige Geräteadresse
909827/0744
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 "Q" auf. Das Signal MYCHAN-wird
jeweils auf einen Eingang von drei NOR-Gattern 74, 75 und 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äß Fig. 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 BSAD15+ 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 "0H an,
909827/0744
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 Anordnungfgestattet^ine 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äß Fig. 2, wobei jede Steuerung 5-7 verschiedene
Arten peripherer Geräte steuert, oder wobei alle Steuerungen 5-7 den gleichen peripheren Gerätetyp 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 eine spezielle Adresse jedem peripheren
Gerät zugeordnet ist.
Der andere Multiplexer 88 empfängt von jedem der vier Untereinheiten
Hinweise, die beispielsweise anzeigen, daß eine solche Untereinheit bereit ist, Daten zu empfangen oder zu setzen. Die Bereitschaftssignale,
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
909827/0744
geschieht. Wenn am Ausgang des Multiplexers 88 ein Ausgangssignal MYRDYS+ mit dem Binärwert "O" 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 FIiP-FjOpS 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 84y>
■·■·-- wodurch das Gatter 76 gehindert wird, ein Bestätigungssignal (ACK)
zu erzeugen. Das Signal BDRBSY- am Ausgang t; J2_des. Flip-Flops 80 weist
jedoch den Binärwert "0" auf und wird einem Eingang des Gatters 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,
■o wird in Abhängigkeit von den anderen Bedingungen entweder ein Warte-Signal oder ein Nicht-Bestätigungssignal erzeugt.
909827/0744
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 Q des Bestätigungs-FlipHFlops 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 Staramdaten-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 Eingang eines 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-
909827/0744
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 Saitunelschienenzyklus 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 Sammelschienenzyklus 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
zweiten 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 Eingangssignale 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
909827/0744
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 übertrager- 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 zur 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
909827/0744
- 3ß -
wenige^s, 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 Zieleinheit in angemessenen Abständen
wieder zu versuchen. ;.
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 stellt 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 Funktonscode vorgegeben, so daß die verschiedenen
an die Sammelschiene angeschlossenen Einheiten bestimmte Codes und Anweisungen in der zuvor erläuterten Weise erkennen können.
mit MYFCOl+ bezeichnetes Signal von dem Gatter 86 zugeführt. Dieses Signal stellt 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 Funktonscode vorgegeben, so daß die verschiedenen
an die Sammelschiene angeschlossenen Einheiten bestimmte Codes und Anweisungen in der zuvor erläuterten Weise erkennen können.
Das Nicht-Bestätigungs-Signal BSNAKR- wird über den Treiber 92 von
dem entsprechenden Flip-Flop des Elementes 79 erzeugt, wenn das
Gatter 74 vollständig vorbereitet ist und wenn das Signal BSDCND+ das entsprechende Flip-Flop taktet. Das Gatter 74 ist vollständig vorbereitet, wenn die Kanalnummer empfangen wird, wenn die Geräte adresse einen Hinweis liefert, daß das Gerät installiert ist, wenn dieses Gerät nicht bereit ist und wenn es sich nicht um die zweite Hälfte des Sammelschienenzyklus handelt. Das Warte-Signal BSWAIT-wird von dem Treiber 91 auf der Sammelschiene erzeugt, wenn das
Gatter 75 vollständig vorbereitet ist und das zugehörige Flip-Flop in dem Element 79 betätigt wird. Das Gatter 75 ist vollständig vorbereitet, wenn die Kanalnummer empfangen wird, wenn die Geräteadresse einen Hinweis liefert, daß das Gerät tatsächlich installiert
Gatter 74 vollständig vorbereitet ist und wenn das Signal BSDCND+ das entsprechende Flip-Flop taktet. Das Gatter 74 ist vollständig vorbereitet, wenn die Kanalnummer empfangen wird, wenn die Geräte adresse einen Hinweis liefert, daß das Gerät installiert ist, wenn dieses Gerät nicht bereit ist und wenn es sich nicht um die zweite Hälfte des Sammelschienenzyklus handelt. Das Warte-Signal BSWAIT-wird von dem Treiber 91 auf der Sammelschiene erzeugt, wenn das
Gatter 75 vollständig vorbereitet ist und das zugehörige Flip-Flop in dem Element 79 betätigt wird. Das Gatter 75 ist vollständig vorbereitet, wenn die Kanalnummer empfangen wird, wenn die Geräteadresse einen Hinweis liefert, daß das Gerät tatsächlich installiert
909827/0744
ist, wenn das Gerät bereit ist, wenn ein Hinweis vorliegt, daß es sich nicht um die zweite Hälfte des Sammelschienenzyklus handelt
und wenn der Puffer belegt ist. Das Bestätigungs-Signal BSACKR-wird auf der Sammelschiene mittels des Treibers 90 ausgegeben, wenn
das Gatter 76 vollständig vorbereitet ist und dementsprechend das zugehörige Flip-Flop in dem Element 79 betätigt wird. Das Gatter
ist vollständig vorbereitet, wenn die richtige Kanalnummer empfangen wird, wenn die Geräteadresse einen Hinweis liefert, daß das entsprechende
Gerät installiert ist, wenn sich das adressierte Gerät in Bereitschaft befindet und wenn der Puffer nicht belegt ist. Sollte
jedoch eine zweite Hälfte eines Lesezyklus-Signales empfangen werden, so wird ein Bestätigungs-Signal unabhängig davon erzeugt, ob der
Puffer belegt ist oder nicht. Jedes der Flip-Flops in dem Element 79 wird durch ein Signal BSDCNB- gelöscht, das über den Inverter
89 vom Ausgang des Gatters 26 in Fig. 8 empfangen wird.
Nachdem die typische Adressierungslogik einer Steuerung, beispielsweise
einer Steuerung 5-7, beschrieben worden ist, sei nunmehr-die
typische Adressierungslogik für eine Speichersteuerung erläutert. Die Speicher-Steuerungslogik gemäß Fig. 10 entspricht in mancherlei
Hinsicht der Logik gemäß Fig. 9. Das über das Element 40 von der Sammelschiene empfangene Adreßsignal wird in Form der Sammelschienen-Adreßsignale
BSADOO+ bis BSAD07+ in dem Format gemäß Fig. 8A übertragen. Die Adreßsignale des Empfängers 40 werden ebenfalls
als Eingänge dem Paritätsprüfer 47 zugeführt. Ferner werden die Adreßsignale des Empfängers 40 ebenso wie jene Signale am Ausgang
des Inverters' 41 einem Schalter 42 in der in' Fig. 9 gezeigten Weise
zugeführt. Wenn das Speicher-Bezugssignal BSMREF+ den Binärwert "1"
aufweist und die durch den Schalter 42 verglichene Adresse am Ausgang
des Schalters 42 lauter Binärziffern mit dem Wert "1" erzeugt,
so wird das NAND-Gatter 43 vollständig vorbereitet und erzeugt ein Binärsignal mit dem Wert "O" auf 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 WAIT und das Bestätigungs-Signal ACK . su erzeugen. Der. Speicher kann nicht adressiert werden bis das Signal
BSMREF+ tatsächlich den korrekten Binärzustand aufweist.
909827/0744
285U85
Die Adreßbits werden den Eingängen des Paritätsprüfers 47 zugeführt,
welchem zusätzlich das Bit BSAPOO+ aufgeschaltet wird. Das
Bit BSAPOO+ stellt 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 MYMADP-,
welches bei einem Binärwert "O" teilweise die Gatter 44, 45 und
46 vorbereitet und hiermit anzeigt, daß die Parität korrekt ist.
Ein drittes Eingangssignal der Gatter 44, 45 und 46 wird von dem Multiplexer 48 empfangen, der dem Multiplexer 47 gemäß Fig. 9 entspricht.
Dem Multiplexer 48 werden beispielsweise vier Eingangssignale zugeführt, die mit MYMOSA- bis MYMOSD- bezeichnet sind
und die anzeigen, ob irgendeiner oder alle Speichermodule, die' an diese spezielle Steuerung angeschlossen sind, tatsächlich in dem
System vorhanden sind. Dies gestattet die Bildung eines Speichers mit einem vollständigen Speicherfeld bzw. mit einem Teil-Speicherfeld
in dem Fall, wo nur einer dieser Speichermodule an das System angeschlossen ist. Diese vier Speichermodule werden ferner adressiert
und es wird über den Multiplexer 48 geprüft, ob sie mittels der beiden Sammelschienen-Adreßsignale BSAD08+ und BSAD09+ installiert
sind.
Hinsichtlich verschieden konfigurierter Systeme kann somit ein Speichermodul an eine bestimmte Speichersteuerung angeschlossen"
sein und es können zwei solcher Module an eine andere Speichersteuerung
angeschlossen sein, wobei die an die verschiedenen Steuerungen angeschlossenen Speichermodule von unterschiedlichem Typ sein können.
Beispielsweise kann auf diese Weise ein Halbleiterspeicher an eine Steuerung angeschlossen sein während ein Magnetkernspeicher an
eine andere Steuerung angeschlossen sein kann. Ferner können Speichermodule verwendet werden, die eine unterschiedliche Größe, d.h.
eine mehr oder weniger große Speicherkapazität , aufweisen. Durch die Anordnung der Speichermodule in verschiedenen Steuerungen können
sodann ferner verschiedene Speichergeschwindigkeiten verwendet
909827/0744
werden, wodurch die Geschwindigkeit der Systemantwort erhöht wird.
Für jede vorgegebene Steuerung gibt es normalerweise nur eine vorgegebene Netzunterstützung und Zeittaktmöglichkeit und im Normalfall beeinflußt die Steuerung die Charakteristik der Speicher, die
an sie angeschlossen sind. Wenn dementsprechend zum_ Beispiel verschiedene
Speichergeschwindigkeiten oder verschiedene Zeittakte
erforderlich sind, wie dies beispielsweise zwischen Kernspeichern und Halbleiterspeichern der Fall ist, so muß eine unterschiedliche ■Steuerung für jeden Speichertyp verwendet werden. Durch die Verwendung verschiedener Steuerungen können die Speicher schneller betrieben werden, da sie im wesentlichen zeitlich parallel zueinander arbeiten. Obgleich sie an die gleiche Sammelschiene angeschlossen sind, kann jedoch nur eine übertragung zu einem Zeitpunkt auf der Sammelschiene stattfinden, wobei jedoch die Information in den Speicher ohne jegliche Zugriffszeit eingelesen werden kann, da
tatsächlich die Zugriffszeit bereits verstrichen ist.
erforderlich sind, wie dies beispielsweise zwischen Kernspeichern und Halbleiterspeichern der Fall ist, so muß eine unterschiedliche ■Steuerung für jeden Speichertyp verwendet werden. Durch die Verwendung verschiedener Steuerungen können die Speicher schneller betrieben werden, da sie im wesentlichen zeitlich parallel zueinander arbeiten. Obgleich sie an die gleiche Sammelschiene angeschlossen sind, kann jedoch nur eine übertragung zu einem Zeitpunkt auf der Sammelschiene stattfinden, wobei jedoch die Information in den Speicher ohne jegliche Zugriffszeit eingelesen werden kann, da
tatsächlich 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 ver-r
schiedene Speichersteuerungen, die einen vollständigen Satz von angeschlossenen 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* 8.000 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 aneinander- .
grenzende Speicheradressen nicht nur zum Zweck der Systemadressierung von Bedeutung sondern auch für eine erhöhte Antwortgeschwin— digkeit 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
für einen Speicher oder ein anderes peripheres Gerät vorgesehen
ist, im allgemeinen ihre eigene spezifische Adresse. Für ver-r
schiedene Speichersteuerungen, die einen vollständigen Satz von angeschlossenen 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* 8.000 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 aneinander- .
grenzende Speicheradressen nicht nur zum Zweck der Systemadressierung von Bedeutung sondern auch für eine erhöhte Antwortgeschwin— digkeit 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
909827/0744
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 Speieher
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/teer gleichen Position einer jeden solchen Steuerung angeordnet sein können. Insbesondere würde
die erste Steuerung in den Speichermodulpositionen A und B zwei 8.000 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 8.000 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 werden, 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.
909827/0744
- 'AZ -
2854A85
Unter Bezugnahme auf Fig. 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 HYBUSY- 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 n0" auftritt, wobei dieser Wert in Form des
SignalesMYBUSY+ 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-Sammel-■chienenü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.
909827/0744
285U85
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. Es 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 ge-- — winnt, ü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 geneinsame
Benutzung eines Systemmittels zwischen jenen Einheiten wirksam ist, die die geeigneten Steuerungen, z.B. das Verriegelungssteuersignal,
ausgeben, und daß ein solcher Betrieb z.B. be-*·
nutzt werden kann, um einen Teil eines Speichers, in dem eine In-
909827/0744
formationstabelle 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ßverarbeitungssysjbem 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 Betrieb 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 Systemmi-ttel
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 vor- gesehen,
welches in gesetztem Zustand anzeigt, daß ein verriegel- · ter 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äß Fig. 10 die Schnittstellenlogik für das gemeinsam benutzte Systemmittel des Sammelschienensystems
200 darstellt, wird das Signal BSLOCK+ mit dem Binärwert "1" sowohl dem UND-Gatter 52 als auch dem Flip-Flop D3 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-Flip-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är-
909827/07 A4
signal mit dem Wert "O" 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 Sammelschienenzyklus
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 Verriegelungsoperation 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 H1" von der benutzenden Einheit und durch das
Signal BSSHBC- mit dem Binärwert "0". Aufgrund dieser Signale bildet die Logik gemäß Fig. 10 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" zu
rückgestellt wird. Das gemeinsam benutzte Systemmittel kann nun- nehr eine Bestätigungs-Antwort an andere Einheiten abgeben.
909827/0744
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 Nicht-Bestätigung, Warten oder Bestätigung ge"-"'
geben 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
909027/0744
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 /ns ein Signal, das
einem Nicht-Bestätigungs-Signal entspricht. An dieser Stelle kann eine Zentraleinheit 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 SpeichersjZ.B. belegt oder
nicht belegt r zu diesem Zeitpunkt gespeichert. Hierdurch wird somit
eine Verwirrung hinsichtlich der Antwort auf den Sammeischienenzyklus
eliminiert. Ohne die Verhaltensspeieherung durch das
Flip-Flop 49 wäre es möglich, den Sammelschienenzyklus in einem Harte-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 dem 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 Vergleichs-
90 9 8 27/0744
eingänge des Vergleichers 103 wird durch die Datenprozessor-Adreßbits
gebildet, welche im vorliegenden Fall beispielsweise in Form der vier Signale BSAD14+ bis BSAD17+ 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 BSAD13+ 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 Sammelschienenzyk- lus 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 MYDOJN+ ausgegeben
hat und daß die Zentraleinheit ebenfalls das Signal MYWRIT- gesendet hat, welches beinhaltet, daß der Datenprozessor einen Antwortzyklus
von der Nebeneinheit erwartet. Bei 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 Signal MYSHRH+ am Ausgang Q erzeugt hat. Das Flip-Flop 110 wird über das NOR-
Gatter 111 zurückgestellt, wenn das Sammelschienen-Löschsignal
909827/0744
BSMCLR+ empfangen wird oder wenn die zweite Hälfte des Sammelschienenzyklus
vervollständigt worden ist, was durch das Signal 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äß Fig. 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 BSDT15+ auf. In dem System sind mehrere Unterbrechüngspegel
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 befindlichen Gerätes un-
909827/0744
terbrochen wird. Wenn die an dem Eingang A des Vergleichers 115 empfangene Pegelnummer kleiner als die Pegelnummer des durch den
Datenprozessor bearbeitenden Gerätes ist/ wobei diese Pegelnummer in dem Block 118 vorliegt, so ist das die Unterbrechung suchende
Gerät in der Lage, diese durchzuführen. Wenn das Signal am Eingang A gleich oder größer als das Signal am Eingang B ist, so wird
das Signal LVLBLS+ nicht erzeugt und es wird von dem Flip-Flop über den Treiber 108 ein Nicht-Bestätigungs-Signal ausgegeben.
Wenn daher der am Eingang A des Vergleichers 117 empfangene Unterbrechungspegel
geringer als derjenige am Eingang B empfangene Pegel ist, so weist das Signal LVLBLS+ den Binärwert "1" auf und
wird beiden Eingängen D der Flip-Flops 120 und 121 zugeführt, wobei der Eingang D des Flip-Flops 120 eine Signalumkehrung durchführt.
Wenn das Signal A gleich oder größer als das Signal B ist, so erzeugt der Vergleicher 117 ein Signal LVLBLS+ mit dem Binärwert "0", welches invertiert dem Flip-Flop 120 zugeführt wird. Hierdurch
wird ein Nicht-Bestätigungs-Signal erzeugt , wenn das Signal MYINTR+ am Takteingang des Flip-Flops 120 auftritt, wodurch das
entsprechende Flip-Flop im Element 113 gesetzt wird. Wenn der Prioritätspegel
ausreichend war, d.h., wenn der Eingang A kleiner als der Eingang B ist, so erzeugt der Vergleicher 117 das Signal LVLBLS+
mit dem Binärwert "1" und dementsprechend taktet das Signal MYINTR+
das Signal LVLBLS+ zu dem Ausgang Q des Flip-Flops 121 und somit
zu einem Eingang des NOR-Gatters 114, welches über den Treiber das Bestätigungs-Signal erzeugt. Wenn somit das Signal MYNAKR+ den
Binärwert "1" aufweist, so wird das Nicht-Bestätigungs-Signal erzeugt
und wenn das Signal MYINTF- den Binärwert "0" besitzt, so wird das Bestätigungs-Signal erzeugt. Die Flip-Flops in dem Element
113 werden getaktet und gelöscht durch den Inverter 125,-wobei
dies in gleicher Weise geschieht, wie dies zuvor in bezug auf die Flip-Flop-Elemente beschrieben wurde. Es sei darauf verwiesen, daß
ein Bestätigungs-Signal erzeugt wird unabhängig von der Anzeige des Vergleichers 117, wenn in Wirklichkeit die zweite Hälfte des
909827/07U
Sammelschienenzyklus vorliegt. In diesem Fall wird das Signal
MYSHRC- des einen Flip-Flops in dem Element 113 mit dem Binärwert "0" auf den anderen Eingang des NOR-Gatters 114 geschaltet
und erzeugt hierdurch das Bestätigungs-Signal, wobei der Hinweis des Flip-Flops 121 übergangen wird.
Wie zuvor erwähnt, stellt das Signal BSDCNB- über den Inverter 125 das Flip-Flop 121 zurück und setzt zusätzlich das Flip-Flop
120, wodurch die Flip-Flops nach einem Sammelschienenzyklus in ihre Anfangslage gebracht werden. Das Flip-Flop 120 wird ferner
durch die dem Flip-Flop 127 zugeordnete Logik zurückgestellt, wobei das Flip-Flop 127 das Signal BTIMOT- erzeugt, welches einen
Zeitablauf-Zustand anzeigt, d.h., daß ein nicht-vorhandenes Gerät adressiert wurde. In diesem Fall wird tatsächlich keine Antwort,
d.h. weder eine Nicht-Bestätigungs-, eine Bestätigungs- oder eine Warte-Antwort durch irgendeine Nebeieinheit erzeugt. Zu diesem
Zweck ist ein Monoflop 126 angeordnet, das so eingestellt werden kann, daß es eine Schaltperiode von " 5-/as besitzt. Dieses Monoflop
wird beim Empfang des Signales BSDCND+ getriggert, das einem Eingang eines vorgeschalteten Puffers 119 zugeführt wird. Infolge
der Betätigung des Monoflops 126 wird das Signal BTIMOT- am Ausgang
Q des Flip-Flops 127 beim Takten durch das Signal BSDCNN+ erzeugt, falls das Signal BSDCNN+ nicht empfangen wird, das das
Ende des Sammelschienenzyklus anzeigt. Das Signal BSDCNN+ zeigt an, daß der Sammelschienenzyklus noch wirksam ist. Das Signal
BTIMOT- betätigt das Flip-Flop 120 und erzeugt das Nicht-Bestätigungs-Signal. Wenn andererseits das Signal BSDCNB+ vor dem Ende
der durch das Monoflop 126 vorgegebenen Zeitperiode endet, so schaltet das Monoflop 126,und das Flip-Flop 127 wird daran gehindert,
das Signal BTIMOT- zu erzeugen.
Es sei vermerkt, daß die Datenprozessorlogik gemäß Fig. 11 entweder
ein Nicht-Bestätigungs-Signal oder ein Bestätigungs-Signal erzeugt, wobei jedoch kein Warte-Signal erzeugt wird. Der Grund
hierfür liegt darin, daß der Datenprozessor immer die niedrigste
909827/0744
- S3. -
Priorität aufweist, so daß im Falle der Erzeugung eines Warte-Signales
die anderen ihre Anforderungen zwecks Behandlung an den Datenprozessor richtenden Geräte möglicherweise von der Sammelschiene
abgehängt werden, wenn beispielsweise ein Gerät mit höherer Priorität die Haupteinheit bildet, der-der Zentralprozessor
mit einem Warte-Signal antwortet. Gerade weil das Gerät mit höherer Priorität auf das Gerät mit der niedrigsten Priorität, d.h.
den Zentralprozessor, wartet, können somit andere Geräte von einer Benutzung der Sammelschiene ausgesperrt werden.
Es ist ferner ersichtlich, daß die Unversehrtheit der über die Sammelschiene übertragenen Information sichergestellt werden kann,
ohne daß es erforderlich ist, ein Paritätsbit jedem Byte der über die Sammelschiene übertragenen Information hinzuzufügen. Diese Unversehrtheit
kann für alle Einheiten, die untereinander Information übertragen, vorgesehen werden. Insbesondere kann dies in jenen
Fällen verwirklicht werden, wo eine Haupteinheit bei ihrer Anforderung eine Antwort von einer Nebeneinheit erwartet. Die Unversehrtheit
solcher Datenübertragungen kann daher am besten in jenen Fällen verwirklicht werden, wo zwei Sammeischienenzyklen in einer
bilateralen Sammelschienenübertragung benutzt werden. Dies ist beispielsweise besonders vorteilhaft in einer Speicher-Leseoperation,
wobei die Haupteinheit Information vom Speicher anfordert und während eines späteren Sammeischienenzyklus solche Information empfängt.
Es hat sich herausgestellt, daß beispielsweise eine wesentliche Anzahl von Datenübertragungen zwischen dem Speicher und einem
anderen Gerät während einer Leseoperation auftreten, die zwei Sammelschienenzyklen
erfordert und daß dementsprechend das Merkmal der Datenunversehrtheit in einem solchen Fall von besonderer Bedeutung
ist.
Die Unversehrtheitseinrichtung macht mit Vorteil von der Tatsache Gebrauch, daß die Haupteinheit die Adresse der Nebeneinheit auf
die Adreßleitungen der Sammelschiene und ihre eigene Adresse und
den Funktionscode auf die Datenleitungen der Sammelschiene gibt,
909827/0744
wenn eine Haupteinheit eine andere Einheit adressiert, die beispielsweise
eine periphere Einheit in Form eines Band- oder Plattenspeichers sein kann. Wenn die Nebeneinheit antwortet und so bei
der Antwort die Haupteinheit darstellt/ so gibt sie die Adresse der anfordernden Einheit auf die Adreßleitungen und die Daten auf
die Datenleitungen. Die Adresse der anfordernden Einheit wird somit
auf den Adreßleitungen zurückempfangen, was der anfänglichen übertragung auf den Datenleitungen entgegengesetzt ist. Die anfordernde
Einheit vergleicht sodann ihre Adresse, d.h., die auf den Datenleitungen übertragenen Adressen mit den nunmehr auf den
Adressenleitungen empfangenen Adressen und für den Fall, daß sie übereinstimmen, ist sichergestellt, 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 Fig. 4 werden somit bis zu zwei Paritätbits eliminiert, wobei jedoch die Unversehrtheit der Datenübertragung
in dem System aufrechterhalten wird.
Gemäß Figur \2 ist ein Blockdiagramm der festgeschalteten Schnittstelle
zwischen der Zentraleinheit CPU-1201 und der Pufferspeichereinheit
1202 dargestellt. Es gibt 43 Signalleitungen, die erstens der Zentraleinheit CPU-1201 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 sind folgendermaßen definiert:
1. Absolute Adresse: (BAOR 05-22). Diese 18 Signale übertragen die absolute Adresse des Wortes, das von der
Zentraleinheit CPU für die Programmausführung angefordert wird.
909827/0744
~ 55 ~
2. Leaeanforderung: CCACHRQ+OO). Dieses Signal informiert
die Pufferspeichereinheit, daß die absoluten Adressignale
decodiert worden sind und daß die Pufferspeichereinheit mit dem Lesen dieses Wortes fortfahren kann.
3. Daten: CCADP- 00-19). Diese 18 Signale übertragen das
angeforderte Wort an die Zentraleinheit CPU für die von
j 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 Paritä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-OO). 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-OO). Dieses Signal zeigt der Zentraleinheit CPU an, daß die Information
der Daten- und Datenparitätssignale für die Zentraleinheit CPU bereit ist.
7. Pufferspeicher vorliegend:.(CACHON-OO). Dieses Signal zeigt an, daß die Pufferspeichereinheit funktionsbereit
ist (d.h., daß ihr Zustand QLT vorüber ist).
909827/0744
8. CPU ID: 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 vom 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-Tlip-Flop
(nicht dargestellt) verfügbar ist.
Die Hardware-Logikblöcke für die Erzeugung dieser Signale und für den CPU-Behandlungszyklus sind in den Figuren 13, 14 und 15 näher
dargestellt.
Anhand der Figuren 14 und 15 sei nachfolgend die Logik für den
CPU-Behandlungszyklus beschrieben. Die Figuren 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 Eigur 12 gezeigt worden, daß das Lese-Anforderungssignal durch den mnemonischen 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 vorliegenden 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 Pail die Leseanforderung den wahren Wert besitzt, wenn das Signal
den niedrigen Pegel aufweist. Der erste der beiden Ausdrücke nach dem Plus- bzw. Minuszeichen zeigt im Falle einer Null an,
daß dies der erste Signalauftritt bei der Funktionsausführung ist.
909827/07-44
285U85
Im Falle einer 3 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
_ Voraussetzungen sei nunmehr die Logik für den CPU-Behandlungszyklus gemäß Figur 14 und der zugehöhrige CPU-Behandlungszyklus
des Pufferspeicher-Zeittaktdiagrammes gemäß Figur 15 beschrieben.
Der CPU-Behandlungs zyklus beginnt,· wenn das Puff er speicher-Anforderungssignal
CACHRQ+OO mit den Pufferspeicher-Belegtsignalen
.über UND-Gatter 1401, 1 402 und das Flip-Elop 1403 logisch verknüpft
wird. Unter Verhinderung jeglicher Pufferspeicheraktivität wird eine CPU-Behandlungsanforderung CPUREQ-OD am Ausgang des
UND-Gatters 1401 erzeugt und zu einem Zeitverzögerungsschaltkreis
1404, 1405 mit einer Verzögerung von 100 Nanosekunden gesendet. Dieser Verzogerungsschaltkreis ist variabel und liefert eine einstellbare
Zeitverzögerung für die Phasen der Pufferspeicher- 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äß Figur 15 ist der zeitliche Auftritt verschiedener
Signale innerhalb des CPU-Behandlungszyklus dargestellt, die durch
!"j?ie Logik gemäß Figur 14 erzeugt werden. Wenn die CPU-Behandlungsanforderung
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 CL0CK0+0A 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 an, 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-Flop 1403, das durch das Pufferspeicher-
909827/0744
taktsignal CL0CK0-&10 gesteuert wird, stellt das CPU-Behandlungsanforderungssignal
CPUREQ zurück und führt die Logik der Pufferspeicher-Takt
steuerung in den Leerlaufzustand zurück. Infolge des Setzens des Blockierungsanforderungs-Flip-Flops 1403 werden
weitere CPÜ-Behandlungsanforderungen gesperrt. Das CPU-Blockiefcungsanforderungs-Flip-Flop
1403 bleibt gesetzt bis der CPU-Behandlungszyklus endet und das CPU-Behandlungsanforderungssignal
CACHRQ+OO in der Zentraleinheit CPU zurückgestellt wird. Während des CPU-Behandlungszyklus führt der Pufferspeicher die folgenden
Internen Operationen aus, die nachstehend aufgeführt sind:
1. Der Pufferspeicher liest die Pufferlisie und den Datenpuffer
315 Cd.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-312 gesendet.
3. Wenn sich kein Treffer ergibt, so wird in den Speicheranforderungszustand
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-OO 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 Flip-Flop 1409 zurückgestellt wird und der Speicheranforderungsmodus beendet wird.
Der CPU-Behandlungszyklus endet, wenn das Pufferspeicher/Erledigt-
909827/0744
signal CYCADN+OQ gesetzt ist und dem Setz-Flip-Flop 3 413 über den
Verzögerungsschaltkreis- 1414; 1415 und den Inverter 1416 zugeführt
wird. Das Pufferspeicher/Erledigtsignal CYCADN+OO wird durch eine
der folgenden Bedingungen gesetzt:
1. Die angeforderten Daten befinden sich in dem Puffer-·
speicher-Datenpuffer (z.B. ein Treffer), der zur Aufschaltung
auf die CPU-Daten-Sammelschiene freigegeben ist.
2. Die angeforderten Daten werden im Hauptspeicher wieder aufgesucht und die Aufschaltung des Pufferspeicher-FIFO-Puffersr
auf die CPU-Daten-Sammelschiene wird freigegeben. (z.B. in einem Ersatzzyklus).
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/Erledigtsignales
CYCADN+OO, um die CPU-Daten-Sammelschiene in ihr internes Daten—Eingaberegister einzutasten, ihren Takt zu starten
und das CPU-Pufferspeicher-Anforderungs-Flip-Flop zurückzustellen. Aufgrund des Verzögerungsschaltkreises 1415, 1416 wird das Puffer/ Erledigtsignal
CYCADN+OO ungefähr 60 Nanosekunden nach der Entfernung
des CPU-Pufferanforderungssignales CACHRQ+OO 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 BLockierungsanforderungs-Flip-Flop 1403 züge- ■
führt wird, um das CPU-Pufferanforderungssignal zu sperren/indem
das Blockierungsanforderungssignal mit' niedrigem Pegel (BLKREQ- 00)
an einen Eingang des NAND-Gatters 1401 geliefert wird. Somit werden weitere CPU-Behandlungsanforderungen solange gesperrt , wie
dieses,Signal an einem Eingang des NAND-Gatters 1401 auf niedrigem
909827/074A
■ - 60 -
285U85
Pegel verbleibt. Das CPU-Blockierungsanforderungs-Flip-Flop 1403
bleibt gesetzt bis der CPU-Behandlungszyklus beendet ist und das CPU-Behandlungsanforderungssignal CACHRQ+00 in der Zentraleinheit
zurückgestellt ist.
Während des CPU-Behandlungszyklus führt der Puffer die folgenden Internen Operationen aus:
1.:1 Der Puffer liest die Pufferliste und den Datenpuffer
350 (2.B. ein Treffer oder kein Treffer).
2. Wenn ein Treffer auftritt, so werden die Daten/Befehle zu der Zentraleinheit CPU gesendet.
3. Wenn kein Treffer auftritt, so wird in den Speicher-Anforderungsstatus
MEMREQ+00 eingetreten.
Der CPU-Behandlungszyklus endet, wenn das Puffer/Erledigtsignal
CYCADN+OO 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 auf die CPU-Daten-Sammelschiene gegeben werden.
2. Die angeforderten Daten werden im Hauptspeicher wieder aufgesucht und der Pufferspeicher-FIFO-Puffer (nicht
dargestellt) wird· mit seinem Inhalt auf die CPU-Daten-Sammelschiene
gegeben (z.B. ErsatζzyklusX.
3. Die Daten-Speicherplatzadresse, die von der Zentraleinheit CPU an den Pufferspeicher gesendet wird/befindet
sich, für einen Speicherplatz außerhalb des Bereichs
• des konfigurierten Hauptspeichers (z.B. CNOMEM+00).
Die Zentraleinheit benutzt die Vorderflanke des Puffer/Erledigtsignales
CYCADN+OO, um die CPU-Sammelschiene in ihr internes
909827/0744
Daten-Eingangsregister zu tasten, ihren Takt zu starten und das CPU-Pufferspeicher-Anforderungs-Flip-Flop zurückzustellen. Das
Puffer/Erledigtsignal CYCADN+OO wird ungefähr 60 Nanosekunden nach dem CPU-Pufferspeicher-Anforderungssignal CACHRQ+00 zurückgestellt.
Der CPU-Behandlungszyklus ist ebenfalls in Figur 15 inbezug auf
die dem Logikschaltkreis gemäß Figur 14 zugeführten Zeittaktsignale
dargestellt.qjemäß dem CPU-Behandlungszyklus. in Figur 15. ist
erkennbar, daß, wenn das CPU-Behandlungsanforderungssignal CPUREQ
wahr ist und das Signal FEMPTY wahr bleibt, das Ausgangssignal FEMPTY-TO den niedrigen Pegel einnimmt, wodurch das Signal
CL0CK0+0A mit hohem Pegel und das Puffer-Taktsignal CLOCKO+00
mit niedrigem Pegel erzeugt wird. Das auf den niedrigen Pegel umschaltende Puffer-Taktsignal CLOCKO+00 wird auf die Verzögerungsleitung
gegeben, sodaß das Signal CDLY40+00 dementsprechend 40 Nanosekunden später auf den niedrigen Pegel und das Puffer-Taktsignal
CLOCKO+00 auf den hohen Pegel umschaltet. Das Blockierungsanforderungs-Flip-Flop,
das durch das Puffer-Taktsignal CLOCKO+10
gesteuertwird, stellt das CPU-Behandlungsanforderungssignal CPUREQ
zurück und führt die Puffer-Steuerungslogik in den Leerlaufzustand zurück.
Gemäß Figur 13 ist die Hochgeschwindigkeitslogik für die festgeschaltete Schnittstelle zwischen dem Prozessor und dem'Pufferspeicher
dargestellt. Die Zentraleinheit CPU benutzt diese festgeschaltete Schnittstelle, um Information vom Pufferspeicher zu gehalten
oder Information zurück in den Pufferspeicher zu geben. Wenn die Information im Pufferspeicher nicht verfügbar ist, so
muß man in den Hauptspeicher gehen, um die Information zu erhalten und diese in dem Pufferspeicher abzulegen und ebenfalls der Zentraleinheit CPU zuzuführen. Wenn eine Speicher-Verriegelungs- oder
Entriegelungsoperation vorliegt, so erhält die Zentraleinheit CPU die Information direkt vom Hauptspeicher. Bei einem Treffer im
Pufferspeicher (d.h. das adressierte Wort ist im Pufferspeicher vorhanden) und der nachfolgenden Paritätsfehlerprüfung und der
Zuführung der angeforderten Daten zu der Zentraleinheit CPU, wird
909827/0744
der Pufferspeicher zurückgestellt. Wenn die Zentraleinheit CPU
eine illegale Adresse an den Pufferspeicher liefert, so führt dies zu einem illegalen Speicher-Operationsfehler.
Gemäß dem logischen Blockdiagramm in Figur 13 wird ein Pufferspeicher-Leseanforderungssignal
CACHRQ+OA erzeugt, wenn das Ausgangsaignal des UND-Gatters 3 302 den'hohen Pegel aufweist. Das Pufferspeicher-Leseanforderungs-Eingangssignal
CACHRQ+1B für das UND-Gatter 1302 wird über ein Exklusiv-ODER-Gatter 1315 und einen
Inverter 1316 erzeugt. Dieses Signal weist .den hohen Pegel auf, wenn beide Eingangssignale BRESRV+OO und MYRESV+OO des Exklusiv-ODER-Gatters
1315 entweder den hohen oder den niedrigen Pegel
aufweisen. Es sei darauf verwiesen, daß, wenn das Eingangssignal BRESRV+OO von der Zentraleinheit CPU, welches ein Sammelschienen-Reservierungssignal
ist, den hohen Pegel aufweist, und wenn das Eingangssignal FMYRESVtOO des Exklusiv-ODER-Gatters 1315 ebenfalls
den hohen Pegel besitzt, das Ausgangssignal des Gatters 1315 den niedrigen Pegel besitzt, wobei dieses Signal im Inverter 1316 invertiert
wird und zu einem Aüsgangssignal CACHRQ+1B mit hohem Pegel
führt. In gleicher Weise besitzt, wenn die beiden Eingangssignale BRESRV+OO und MYRESV+OO den niedrigen Pegel aufweisen,
das Ausgangssignal des Exklusiv-ODER-Gatters 1315 erneut den
niedrigen Pegel, der wiederum in dem Inverter 1316 invertiert wird,
wodurch ein Ausgangssignal CACHRQ+1B mit hohem Pegel erzeugt wird.
Wenn beide Eingangssignale des Exklusiv-ODER-Gatters den hohen Pegel aufweisen, so ist dies ein Hinweis, daß sich das erzeugte
Pufferanforderungssignal im Wartungsmodus befindet. Wenn andererseits beide Eingangssignale BRESRV+OO und MYRESV+OO den niedrigen
Pegel aufweisen, . so bildet dies ein Hinweis, daß sich die Zentraleinheit
CPU im nicht gesetzten Verriegelungsmodus befindet·. Wenn irgendeines der Eingangssignale des Gatters 1315 den hohen
und das andere Eingangssignal den niedrigen Pegel aufweist, so liegt ein Hinweis vor, daß sich die Zentraleinheit CPU im gesetzten
bzw. zurückgestellten Modus mit nunmehriger Verriegelung be-
909827/0744
findet.
Ein anderes Eingangssignal des UND-Gatters 1302, das den hohen
Pegel aufweisen muß, um das Pufferanforderungssignal CACHRQ+OA zu. erzeugen, ist das Pufferspeicher-Einschaltsignal CACHON+00.
Dies.es. Signal wird erzeugt, wenn der Pufferspeicher der Zentraleinheit
CPU über die festgeschaltete Schnittstelle beigestellt und eingeschaltet ist. Die Puffertest- und Überprüfungslogik 133 7
Stellt fest, daß der Pufferspeicher beigestellt ist, und sie liefert ein Eingangssignal mit niedrigem Pegel; an den Inyer-ter. J3.O3 ,
wodurch ein Eingangssignal CACHON+00 mit hohem Pegel an einem Ein*-
gangsanschluß des UND-Gatters 1302 erzeugt wird. Bei, einem Puffer-Leseanforderungssignal
CACHRQ-f-OA mit hohen Pegel muß schließlich
das dritte Eingangssignal BMSTRR+OO des UND-Gatters 1302 ebenfalls
den hohen Pegel aufweisen. Dies ist ein von der Zentraleinheit CPU geliefertes Signal, welches anzeigt, daß ein Lesen des Hauptspeichers
auszuführen ist, falls dieses Signal den hohen Pegel aufweist. Die folgenden Bedingungen müssen dementsprechend erfüllt
sein, um das Pufferspeicher-Leseanforderungssignal CACHRQ+OA zu
erzeugen, das dem Eingang D des Flip-Flops 1303 zugeführt wird:
1. Der Hauptspeicher ist nicht verriegelt bzw. entriegelt,
wobei dies durch einen hohen Pegel des Signales CACHRQ+ dB angezeigt wird;
.2. Der Pufferspeicher ist beigestellt und eingeschaltet,
was durch den hohen Pegel des Eingangssignales CACHON+ 00 angezeigt wird'; und
3. Ein Hauptspeicher-Lesezyklus wird ausgeführt, was durch durch den hohen Pegel des Signales BMSTRR+OO angezeigt
wird.
Wie zuvor festgestellt, wird das Signal CACHRQ+OA dem Eingang D
des Flip-Flops 1303 zugeführt. Wenn dieses Signal den hohen Pegel aufweist, so wird das Flip-Flop 1303 gesetzt, wenn das Taktimpuls-
aignal MYCLOCK+00 dem Takteingang CK zugeführt wird. Demgemäß nimmt
909827/0744
ein der Ausgang Q des Flip-Flops 1303 den hohen PegelVund erzeugt das Signal CACHRQ+OO, das der Puffer-Taktsteuerung 1304 zugeführt
wird. Das gleiche Signal wird ebenfalls den Eingängen D und R des. Flip-Flops 1307 zugeführt.
Das. F/lip-Flop 1307 ist das Pufferspeicher-Anforderungs-Rücks.tell-Flip-Flop,
welches durch das Flip-Flop 1303 zurückgestellt w.ird, w.enn das Pufferapeicher-Anforderungssignal CACHRQ-OR/ das dem
invertierenden Eingang R des Flip-Flops 1307 zugeführt w£rd, den niedrigen Pegel aufweist. Das Flip-Flop 1307 wird durch den Taktimpuls
CACHDN+00 zurückgestellt, der dem Eingang CK zugeführt wird und der über den Inverter 1306 und die Pufferspeichertrefferlogik
1305 erzeugt wird. Die Anstiegsflanke des Impulses CACHDN+00 am Eingang CK des Flip-Flops 1307 taktet das Signal CACHRQ+OO am
Eingang D des Flip-Flops 1307, sodaß das Signal CACHRQ+OR am Anschluß
Q des Flip-Flops 1307 den hohen Pegel einnimmt und das
Pufferspeicher-Anforderungssignal CACHRQ-OR am Anschluß Q des Jflip-Flops 1307 mit niedrigem Pegel ausgegeben wird. Dieses Signal
mit niedrigem Pegel wird dem Rückstellanschluß des Flip-Flops 1303 zugeführt und setzt dieses mit dem Anstiegsimpuls des Puffer/
Erledigtsignales CACHDN+00. Es ist somit ersichtlich,daß das Flip-Flop
1303 unmittelbar mit dem ansteigenden Impuls zurückgestellt werden kann, obgleich das Puffer/Erledigtsignal CACHDN+00 für
eine bestimmte Dauer auf dem hohen Pegel verbleibt. Das Flip-Flop 1303 kann somit nahezu sofort erneut wieder verwendet werden
und somit innerhalb einer typischen Zeitperiode von 40 Nanosekunden den nächsten Anforderungszyklus bei dieser Art von Logik
ausführen. Es sei darauf verwiesen, daß bei der Erzeugung des Puffer-Anforderungssignales CACHRQ+OO und der Zuführung desselben
zu der Puffer-Taktsteuerung 1304 dieses Signal ebenfalls einem Eingang des NAND-Gatters 1314 zugeführt wird, welches die Umschaltung
des Taktsignales CL0CK0+0B auf den niedrigen Pegel und somit das Anhalten des Prozessortäktes_ hervorrief. Diesbezüglich sei
auf die DE-OS 27 34 190 verwiesen. Der Prozessortakt bleibt angehalten bis Daten entweder vom Speicher zum Pufferspeicher oder
vom Pufferspeicher direkt zurück zu der Zentraleinheit CPU geliefert werden. Der Takt der Zentraleinheit CPU wird durch ein Signal
909827/0744
mit niedrigem Pegel angehalten und startet bei einem Signal mit
hohem Pegel.
Da das Signal CACHRQ-fOO an dem NAND-Gatter 1314 normalerweise
den hohen Pegel aufweist, wenn eine Anforderung an den Pufferspeicher ausgeführt wird, und da das Signal CACHRQ+OR normalerweise
den hohen Pegel aufweist bis es durch das Signal CACHDN+OO 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+OF an dem NAND-Gatter 1314 auf den hohen Pegel umschaltet, wodurch der Takt des Prozessors
CPU angehalten wird. Der Vorteil des Anhaltens des CPU-Taktes anstelle einer Gestattung des Weiterlaufes liegt darin, daß weniger
Zeit verschwendet wird, wenn Information verfügbar ist und von dem Pufferspeicher an die Zentraleinheit CPU in der Mitte eines
CPU-Taktzyklus geliefert werden kann, V kann diese Information
bei einem Weiterlauf des Prozessors erst am Ende dieses Zyklus geliefert werden. Bei einem Anhalten des Taktes kann dieser sofort
erneut gestartet werden, wenn Information verfügbar ist, sodaß keine Zykluszeit verschwendet wird. Wenn Information für die
Zentraleinheit CPU verfügbar ist, so wird demgemäß das Signal CACHDN+OO über die Pufferspeicher-Trefferlogik erzeugt, worauf
das Signal CACHRQ-OR am Anschluß Q 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 Pegel einnimmt, was zu einem Neustart des CPÜ-Taktes 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
geschieht durch Anlegen des Signales CYACADN-I1 an einen Eingang des NAND-Gatters 1308, welches das Sammelschienen-Ende-Lesesignal
BENDRD-OO erzeugt und Daten von dem Pufferspeicher in ein
909827/0744
nicht dargestelltes Register der Zentraleinheit CPU eintastet. Ungefähr 80 Nanosekunden später nach der Erzeugung des Puffer/
Erledigtsignales CACHDN+OO wird das UND-Gatter 1310 durch die
Eingangssignale CAPCKT-OO und BSSHBH-11 vorbereitet und ein Signal
BENDRD+OO für die Paritätsprüfung geliefert.
Unter der Annahme, daß die Zentraleinheit CPU eine Anforderung nach einem Wort aus dem Pufferspeicher ausführt, das sich nicht
in dem Pufferspeicher Befindet, und der Pufferspeicher seinerseits das Wort vom Hauptspeicher anfordert/ wobei sich das Wort
erneut nicht im Hauptspeicher befindet, so wird das Signal CYCADN-OO gesetzt und das Signal CNOMEM-OO auf der Leitung 1311
erzeugt und dem UND-Gatter 1312 zugeführt. Das UND-Gatter 1312
setzt das Signal IXSOOO-MA des Flip-Flops 1313, das bis zur Rückstellung
durch das Signal IRESET+10 gesetzt bleibt. Das Ausgangs-Signal
IIS000+1A verursacht einen Abbruch der laufenden Befehlsverarbeitung
in der Zentraleinheit CPU und die Verarbeitung des nicht vom Speicher herrührenden Fehlersignales und die Rückstellung
des Signales IISOOO-fiA über das Signal IRESET+10.
909827/0744
■ - 67 -Tabelle I - Speicher-Schnittstellensignale
Ubertragungsrichr- tung (Sammelschiene «* Speicher) |
Anzahl der Leitungen |
Bestimmungen | Merkname Cn) |
<-> | 16 | Adresse | BSAD23- bis BSAD08- |
8 | Adresse | BSAD07- bis BSADOO- |
|
1 | Adressen-Parität | BSADOO- | |
18 | Daten | BSDTOO- bis BSDT15- BSDTOA-, BSDTOB- |
|
2 | Daten-Parität | BSDPOO-, BSDPO8- | |
1 | Spelcher-Be zugnahme | BSMREF- | |
1 | Sammelschiene-Schreiben | BSWRIT- | |
1 | Byte-Modus | BSBYTE- | |
i | Verriegelung | BSLOCK- | |
1 | Zweite Hälfte Sainmelschienenzyklus |
-BSSHBC- | |
1 | Haupt-Lö s chung | BSMCLR- | |
1 | Spannungsversorgung- Ein |
BSPWON+ | |
<-> | 1 | Samme1schienen-Anfor derung |
BSREQT- |
1 | Jetzt Datenzyklus | BSDCNN- | |
1 | Bestätigung | BSACKR- | |
1 | Warten | BSWAIT- | |
1 | Keine Bestätigung | BSNAKR- | |
2 | Fehlerleitungen | BSYELO-, BSREDD- | |
9 | Üngleichheit-Schalt- " kreis |
BSAUOK+ bis BSIUOK+ |
|
1 | Ungleichheit-Schalt kreis |
BSMYOK+ | |
-> | 1 | Qualitätslogik-Test- eingabe |
BSQLTI- |
Qualitätslogik-Test- ausgabe |
BSQLTO- | ||
1 | Qualitätslogik-Test- aktivierung |
BSQLTA+ | |
1 | Wiederaufnahme Unter brechung |
BSRINT- |
909827/07U
- 68 Tabelle I - Speicher-Schnittstellensignale (Fortsetzg.
übertragungsrich tung (Sammelschiene -*-► Speicher)- · · · |
Anzahl der Leitungen |
Bestimmungen | Merkname Cn) |
"*■♦' | i 1 1 |
Externe Steuerung. Zeitgeber Doppelwort-Auszug |
BSEXTC+ BSTIMR+ BSDBPL- |
909827/07U
Tabelle II - System-Sammelschiene-Schnittstellenleituncpn
285UB5
Klasse | Impuls | Information | Funktion | Sammel- | N ame | MYREQT+ | cherseit |
LP.ufferspei | MADCNN+ | Empfän | |||||
schieneseite Treiber | MYACKR+. | BSREQT4 | |||||
SammelscEi-Anforderg. | BSREQT- | — ■ · | BSDCNN-t | ||||
Impuls | Jetzt Datenzyklus | BSDCNN- | - | BSACKR-t | |||
Information | Bestätigung ACK | BSACKR- | ZGND | BSNAKR+ | |||
Keine Bestätig. NAK | BSNAKR- | LOGIC 1 + | BSWAIT+ | ||||
Warten | BSWAIT- | ZGND | BSDTOA+ | ||||
DatenBit 0 | BSDTOA- | ZGND | BSDTOO+ | ||||
1 | BSDTOO- | ZGND | BSDTO1+ | ||||
2 | : BSDT01- | ZGND | BSDT02+ | ||||
3 | BSDT02- | ZGND | BSDT03+ | ||||
4 | BSDT03- | ZGND | BSDT04+ | ||||
5 | BSDT04- | ZGND | BSDT05+ | ||||
6 | BSDT05- | ZGND | BSDT06+ | ||||
7 | "BSDTO 6- | L0GIC1+ | BSDTO7+ | ||||
8 | BSDT07- | CPUIDR+ | BSDTOB+ | ||||
9 | BSDTOB- | ZGND | BSDTO8+ | ||||
10 | BSDT08- | ZGND | BSDT09+ | ||||
11 | BSDT09- | ZGND | BSDT10+ | ||||
12 | ;bsdtio- | ZGND | BSDT11+ | ||||
13 | BSDT11-. | ZGND | BSDT12+ | ||||
14 | BSDT12- | BLOCKF+ | BSDT13+ | ||||
15 | BSDT13- | fGND | BSDT14+ | ||||
16 | BSDT14- | ZGND | BSDT15+ | ||||
Datenbit 17 | BSDT15- | ZGND | |||||
Adressbit 0 | BSADOO- | ZGND | _ | ||||
' 3 | BSADO1- | ZGND | - | ||||
2 | BSAD02- | BAORO5+ | - | ||||
3 | BSAD03- | BAOR06+ | — | ||||
4 | BSADO4- | BAORO7+ | BSAD05+ | ||||
5 | BSAD05- | BAORO8+ | BSAD06+ | ||||
6 | BSAD06- | BAORO9+ | BSAD07+ | ||||
7 | BSAD07- | BAOR10+ | BSAD08+ | ||||
8 | BSADO8- | BA0R11+ | BSADO'9+ | ||||
9 | BSAD09- | BA0R1 2+ | BSAD10+ | ||||
10 | BSAD10- | BA0R13+ | BSADT1 + | ||||
11 | BSAD11- | BA0R14+ | BSAD12+ | ||||
' 12 | BSAD12- | BA0R1 5+ | BSAD13+ | ||||
13 | BSAD13- | BA0R1 6+ | BSAD14+ | ||||
14 | BASD1A- | BA0R17+ | BSAD15+ | ||||
15 | BSAD15- | BA0R1 8+ | BSAD16+ | ||||
16 | BSAD16- | BA0R1 9+ | BSAD17+ | ||||
17 | BSAD17- | BA0R20+ | BSAD18+ | ||||
18 | BSAD18- | BA0R21+ | BSAD19+ | ||||
- | 19 | BSAD19- | BAOR22+ | BSAD20+ | |||
20 | BSAD20- | ZGND | BSAD21+ | ||||
21 | BSAD21- | BSAD22+ | |||||
22 | BSAD22- | BSAD23+ | |||||
Adressbit 23 | BSAD23- | ||||||
909827/074A
COPY
- 70 Tabelle II - System-Sammelschiene-SchnittstellenlEitung (fortsetze
Klasse
Punktion
Name
Sammelschienensei
te Treiber Empfang
üb er tr agungsb egle±tsteuerung
übertragungsbegleit" steuerung
Speicher Bezugnahme S ammelschienen-Byte
Sammelsch.-Schreiben Zweite Hälfte Sammelzyklus
Verriegelung Doppel-Auszug BSMREF-BSBYTE-
BSWRIT-BSSHBC-
BSLOCK-BSDBPL-
LOGIC1+ ZGND ZGND BXLOCK+
ZGND CYQLTO-
BSBYTE+ BSWRIT+ BSSHBC+
BSDBPL+
Übertragungsbegleitintegrität
Übertragungsbegleitintegrität '
Rot BSREDD-
GeIb BSYELO-
Datenparität - Links BSDPOO-Datenparität - Rechts BSDP08-Adressenparität
BSAPOO-
ZGND ZGND LOGIC1+ BSDP08+ MYAPOO+00
BSREDD+
BSDPOO+ BSDP08+
Statische Integrität Statische Integrität
Verschiedene Steuerung
Logiktest Ausgabe Logiktest Eingabe BSQLTO-BSQLTI-
Haupt-Löschung BSMCLR-
Spannungsversorgung BSPWON+
Ein
Wiederaufnahme Unter-BSRINT-
brechung ZGND
BSMCLR+
Üngleichheits-Schaltkreis
Ungleichheits-Schaltkreis
BSAUOK+ BSBUOK+ BSCUOK+ BSDUOK+ BSEUOK+ BSFUOK+ BSGUOK+ BSHUOK+ BSIUOK+
BSMYOK+
909827/07U
- 71 Tabelle III
Datenzähler-Fortschaltungstabelle für rückgeführte normale und gemischte Daten (für 2 Anforderungen,
Doppel-Speicherauszug und überlappenden Modus).
ι | Siehe Bemerkung für die Erläute rung der Datenadressen |
PRA + 1 | PRA + 2 | PRA + 3 |
Rückgeführte, angeforderte, zugeord- . | PRA . | +1 | +2 | |
nete Aciressaatentoxge | ;■ | +2 | +1 | |
Normale Daten - Rückführungsfolge (PRA,. PRA .+. .2). .CPPA +. .3.,. PRA .+ .3). |
+1 | +2 | ||
Speichermodul-Prioritätsumkehr (PRA .+ .1.,. PPA). .CP.RA .+. .3.,. PRA * .2). |
+2 | +1 | ||
Speichermodul-Prioritätsumkehr (PRA,. PRA .+. .1). .(P.RA .+. .2.,. PRA .*. .3.). . . . |
+ 1 | +2 | ||
PRA + 3 Bereichsüberschreitung (PRA,. PRA .+. Z). :CP.RA .+ 1.) |
+2 | |||
PRA + 3 Bereichsüberschreitung mit Speichermodul-Prioritätsumkehr (PRA, PRA .* .1.) (PPA .+. 2) |
+1 | +1 | ||
PRA + 2, PRA + 3 Bereichsüberschrei tung (PRA, PRA +. .1) , |
+2 | |||
PRA + 2, PRA + 3 Bereichsüberschrei tung mit Speichermodul-Prioritäts umkehr (PRA + 1, PRA) |
||||
Bemerkung .
Der Datenzähler wird um +1 oder +2 erhöht (in den Tabellenrechtecken
veranschaulicht), wenn das Signal BSDBPL negativ ist und folgende zugeordnete Datenadressen vorliegen:
PRA, PRA +1, PRA + 2, und PRA + 3,
9098-27/0744
Claims (8)
- HONEYWELL INFORMATION SYSTEMS j 5. O&Z. 187*1Smith Street 5101628 GeWaltnam, Mass., USA285U85Datenverarbeitungssystem mit SpeicherhierachiePatentansprüche:DV-System, insbesondere Minicomputersystem/ mit einer Speicherhierachie, g e'..k ennzeichnet durch eine System-Datenschiene und mehrere System- ■ einheiten, einschließlich einem Hauptspeicher, einem Pufferspeicher und einer Zentraleinheit, die alle an die System-Datenschiene angeschlossen sind und miteinander im Nachrichtenaustausch stehen, und durch eine festgeschaltete Schnittstellen-Datenschiene zur Verbindung der Zentraleinheit und des Pufferspeichers und zur Schaffung eines direkten Pufferspeicher-Lesezugriffs durch die Zentraleinheit.
- 2. DV-System nach Anspruch 1, gekennzeichnet durch eine System-Datenschiene-überwachungseinrichtung und durch eine auf die überwachungseinrichtung ansprechende Fortschfeibeeinrichtung zur Fortschreibung der Information in dem Hauptspeicher über die System Datenschiene.
- 3. DV-System nach Anspruch 2, g e';k ennzeichnet durch eine an die festgeschaltete Schnittstellen-Datenschiene angeschlossene Pufferspeicher-Anforderungseinrichtung, um durch die Zentraleinheit Information von dem Pufferspeicher über die festgeschaltete Schnittstel- · len-Datenschiene anzufordern.Hz/ig 909827/0744 original inspecifed2854435
- 4. DV-System nach. Anspruch 3/ gekennzeichnet durch eine an die festgeschaltete Schnittstellen-Datenschiene angeschlossene Informations-Sendeeinrichtung, um über die festgeschaltete Schnittstellen-Datenschiene
Information von dem Pufferspeicher zu der Zentraleinheit zu senden. - 5. DV-System nach Anspruch 4, gekennzeichnet durch eine Grenzüberschreitungseinrichtung in dem Pufferspeicher, die auf die Pufferspeicher-Anforderungseinrichtung anspricht, um festzustellten, wann durch die Zentraleinheit angeforderte Information sich nicht in
dem Pufferspeicher befindet. - 6. DV-System nach Anspruch 5, gekennzeichnet durch eine Hauptspeicher-Anforderungseinrichtung
in dem Pufferspeicher zur Informationsanforderung von
dem Hauptspeicher durch den Pufferspeicher über die
System-Datenschiene. - 7. DV-System nach Anspruch 6, gekennzei c.Ji net durch eine Übertragungseinrichtung in dem Hauptspeicher, welche auf die Hauptspeicher-Anforderungseinrichtung anspricht und Information von dem Hauptspeicher über die Zentraleinheit zu dem Pufferspeicher überträgt.
- 8. DV-System nach Anspruch 7, gekennzeichnet durch eine Empfangseinrichtung in dem Pufferspeicher, welche auf die übertragungseinrichtung anspricht, um Information von dem Hauptspeicher über die System-Datenschiene durch den Pufferspeicher zu empfangen.909827/0744
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 true DE2854485A1 (de) | 1979-07-05 |
DE2854485C2 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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3114961A1 (de) * | 1980-04-15 | 1982-03-25 | Honeywell Information Systems Inc., 02154 Waltham, Mass. | Datenverarbeitungssystem |
DE3235264A1 (de) * | 1981-09-29 | 1983-04-07 | Tokyo Shibaura Denki K.K., Kawasaki, Kanagawa | Datenverarbeitungsvorrichtung und -verfahren |
Families Citing this family (52)
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 |
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 |
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 |
DE3276916D1 (en) * | 1981-09-18 | 1987-09-10 | Rovsing As Christian | Multiprocessor computer system |
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 |
US4503501A (en) * | 1981-11-27 | 1985-03-05 | Storage Technology Corporation | Adaptive domain partitioning of cache memory space |
US4476526A (en) * | 1981-11-27 | 1984-10-09 | Storage Technology Corporation | Cache buffered memory subsystem |
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 | 数値制御方式 |
US5255384A (en) * | 1985-02-22 | 1993-10-19 | Intergraph Corporation | Memory address translation system having modifiable and non-modifiable translation mechanisms |
US4899275A (en) * | 1985-02-22 | 1990-02-06 | Intergraph Corporation | Cache-MMU system |
US4933835A (en) * | 1985-02-22 | 1990-06-12 | Intergraph Corporation | Apparatus for maintaining consistency of a cache memory with a primary memory |
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 |
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 |
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 |
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 |
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 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2231146A1 (de) * | 1971-06-29 | 1973-01-18 | Ibm | Verfahren zum steuern der datenuebertragung in einer datenverarbeitungsanlage und anlage zur durchfuehrung dieses verfahrens |
US3810110A (en) * | 1973-05-01 | 1974-05-07 | Digital Equipment Corp | Computer system overlap of memory operation |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
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 |
-
1977
- 1977-12-22 US US05/863,097 patent/US4161024A/en not_active Expired - Lifetime
-
1978
- 1978-11-02 CA CA315,761A patent/CA1126871A/en not_active Expired
- 1978-12-11 FR FR7834850A patent/FR2412888B1/fr not_active Expired
- 1978-12-14 AU AU42540/78A patent/AU518637B2/en not_active Expired
- 1978-12-16 DE DE2854485A patent/DE2854485C2/de not_active Expired
- 1978-12-21 GB GB7849586A patent/GB2011678B/en not_active Expired
- 1978-12-21 YU YU3022/78A patent/YU40212B/xx unknown
- 1978-12-22 JP JP15775678A patent/JPS5492027A/ja active Granted
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2231146A1 (de) * | 1971-06-29 | 1973-01-18 | Ibm | Verfahren zum steuern der datenuebertragung in einer datenverarbeitungsanlage und anlage zur durchfuehrung dieses verfahrens |
US3810110A (en) * | 1973-05-01 | 1974-05-07 | Digital Equipment Corp | Computer system overlap of memory operation |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3114961A1 (de) * | 1980-04-15 | 1982-03-25 | Honeywell Information Systems Inc., 02154 Waltham, Mass. | Datenverarbeitungssystem |
DE3235264A1 (de) * | 1981-09-29 | 1983-04-07 | Tokyo Shibaura Denki K.K., Kawasaki, Kanagawa | Datenverarbeitungsvorrichtung und -verfahren |
Also Published As
Publication number | Publication date |
---|---|
AU4254078A (en) | 1979-06-28 |
AU518637B2 (en) | 1981-10-08 |
GB2011678A (en) | 1979-07-11 |
FR2412888B1 (fr) | 1986-09-05 |
DE2854485C2 (de) | 1986-02-06 |
YU302278A (en) | 1982-06-30 |
JPS6327738B2 (de) | 1988-06-06 |
CA1126871A (en) | 1982-06-29 |
FR2412888A1 (fr) | 1979-07-20 |
JPS5492027A (en) | 1979-07-20 |
GB2011678B (en) | 1982-03-24 |
YU40212B (en) | 1985-08-31 |
US4161024A (en) | 1979-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2854485A1 (de) | Datenverarbeitungssystem mit speicherhierarchie | |
DE3783370T2 (de) | Schaltung zur blockierungsverhinderung von hochprioritaetsanforderungen an eine systemsteuerung. | |
DE2854397A1 (de) | Pufferspeichereinheit fuer ein datenverarbeitungssystem | |
DE60211076T2 (de) | Datenübertragung zwischen virtuellen Adressen | |
DE19580707C2 (de) | PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus | |
DE69227061T2 (de) | Empfangspuffersteuerungssystem | |
DE69329904T2 (de) | Echtzeitverarbeitungssystem | |
DE69307717T2 (de) | Priorisierung von mikroprozessoren in multiprozessorrechnersystemen | |
DE69127101T2 (de) | System für verteilte mehrfachrechnerkommunikation | |
DE69323790T2 (de) | Verfahren und Vorrichtung für mehreren ausstehende Operationen in einem cachespeicherkohärenten Multiprozessorsystem | |
DE69131436T2 (de) | Netzanpassungseinrichtung mit als logische FIFOs gestalteten Speichern zur Übertragung und Empfang von Datenpaketen | |
DE69328320T2 (de) | Vorrichtung und Verfahren zur Datenübertragung zu und von einem Wirtrechnersystem | |
DE69324926T2 (de) | Doppelte pufferungspeicherung zwischen dem speicherbus und dem expansionsbus eines rechnersystems | |
DE19983026B4 (de) | Brücke zwischen zwei Bussen mit einem Puffer mit einer einstellbaren Mindestspeicherraummenge für ein Akzeptieren einer Schreibanforderung und Verfahren hierzu | |
DE69031658T2 (de) | Vorrichtung und verfahren für instandhaltung von cache/zentralspeicherkonsistenz | |
DE3689198T2 (de) | Systembus für Kommunikation zwischen Prozessoren. | |
DE68924313T2 (de) | Mehrprozessoranordnungen mit kreuzweise abgefragten Schreib-in-Cachespeichern. | |
DE2944419C2 (de) | ||
DE3850387T2 (de) | Vorrichtung und verfahren zum zugriff eines knotens auf einen bus. | |
DE2755897A1 (de) | Ein/ausgabe-system | |
DE4129614A1 (de) | System und verfahren zur datenverarbeitung in einer mehrzahl von betriebsarten entsprechend programminterner parallelverarbeitungseigenschaften unter verwendung eines cachespeichers | |
DE3320858A1 (de) | Speicher-managementanordnung fuer mikroprozessorsysteme | |
DE3885985T2 (de) | Speichersteueranordnung für ein Daten verarbeitendes System. | |
DE60316197T2 (de) | Verfahren und System zum Teilen eines Speichermoduls | |
DE3934145A1 (de) | Platteneinheit-steuerungsvorrichtung und informationsverarbeitungssystem, das dieselbe enthaelt |
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 |