DE2717702C2 - Speicher-Zugriff-Steuersystem - Google Patents
Speicher-Zugriff-SteuersystemInfo
- Publication number
- DE2717702C2 DE2717702C2 DE2717702A DE2717702A DE2717702C2 DE 2717702 C2 DE2717702 C2 DE 2717702C2 DE 2717702 A DE2717702 A DE 2717702A DE 2717702 A DE2717702 A DE 2717702A DE 2717702 C2 DE2717702 C2 DE 2717702C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- access
- shift register
- address
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
- G06F13/1631—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests through address comparison
Description
Die Erfindung betrifft ein Speicher-Zugriff-Steuersystem nach dem Oberbegriff des Anspruchs 1.
In einem Multiprozessor-System, in welchem z. B. ein Speicher hoher Leistungsfähigkeit einer Vielzahl von
Zugriffeinheiten, d. h. zentralen Prozeßeinheiten und/ oder Kanalprozessoren, zugeordnet ist, um den
Durchfluß durch Mehrfachverarbeitung der Befehle von den Zugriffeinheiten zu erhöhen, werden die Wartezeiten
der Zugriffeinheiten dadurch verkürzt, daß der Speicher hoher Leistungsfähigkeit aus einer Vielzahl
von Speichern, auf die unabhängig zugegriffen werden kann, aufgebaut ist und daß die Zahl der Speicher erhöht
wird. Bekannt ist ein Speicher-Zugriff-Steuersystem, bei dem Flipflops vorgesehen sind, die eindeutig den
Speichern zugeordnet sind und bei dem der Zustand eines jeden Speichers, bestimmt durch den Zustand
eines jeden Flipflops, geprüft wird. Dieses Speicher-Zugriff-Steuersystem
empfängt den Befehl zum Zugriff, wenn der Speicher, auf den entsprechend einem Befehl
zugegriffen werden soll, frei ist. Bei einem derartigen Speicher-Zugriff-Steuersystem ist es jedoch notwendig,
die Zahl der Flipflops mit einer Vergrößerung der Zahl der Speicher zu erhöhen. Dementsprechend wird das
gesamte Steuersystem außerordentlich aufwendig, wenn eine relativ große Zahl Speicherplätze vorgesehen
wird (JP-OS 99 654/75).
Die Aufgabe der Erfindung besteht darin, ein Speicher-Zugriff-Steuersystem zu schaffen, dessen Urals
fang klein gehalten werden kann, auch wenn eine relativ große Zahl von Speichern vorgesehen wird. Gelöst wird
diese Aufgabe durch die Merkmale des Kennzeichens des Anspruchs 1. Eine Weiterbildung der Erfindung ist
im Unteranspruch angegeben.
Die erfindungsgemäße Ausbildung führt zu einem geringeren schaltungsmäßigen Aufwand als der Stand
der Technik, wobei insbesondere die Zahl der Stufen des
Schieberegisters unverändert bleiben kann, selbst wenn die Zahl der Speicher weiter erhöht wird.
Die Erfindung wird beispielhaft anhand der Zeichnung erläutert
Fig. 1 ist ein Blockschaltbild, welches tin Beispiel für
ein Multiprozessor-System zeigt, welches ein Speicher-Zugriff-Steuersystem
besitzt;
Fig.2 ist ein Blockschaltbild, welches ein Beispiel
eines bekannten Spaicher-Zugriff-Steuersystems zeigt;
F i g. 3 ist ein Blockschaltbild, welches beispielhaft ist für das Prinzip des erfindungsgemäßen Speicher-Zugriff-Steuersystems;
Fig.4 ist ein Blockschaltbild, welches eine Ausführungsform
des erfindungsgemäßen Speicher-Zugriff-Steuersystems zeigt;
Fig.5 ist ein Schaltplan, welcher die Einzelheiten eines in F i g. 4 benutzten Komparatorkreises zeigt.
Fig. 1 zeigt in einem Blockschaltbild die Konstruktion
eines Beispiels eines Multiprozessor-Systems, um das Speicher-Zugriff-Steuersystem allgemein zu erklären.
In F i g. 1 bezeichnet das Bezugszeichen 1 einen
Hauptspeicher. 1-0,1-1 \-nbezeichnen Speicher, auf
die unabhängig zugegriffen werden kann. Ein Speicher-Zugriff-Steuersystem
ist mit 2 bezeichnet. 3-0, 3-1, 3-2 und 3-3 bezeichnen eine zentrale Steuereinheit
(CPU A), eine zentrale Prozessoreinheit (CPU B), einen Kanalprozessor (CHP A) und einen KanalDrozessor
(CHP B), die nacheinander Zugriff auf den Hauptspeicher 1 haben.
Im allgemeinen besitzt das Multiprozessor-System die Konstruktion, daß die Vielzahl Speicher 1-0,1-1,...,
1-/7 der Vielzahl von Zugriffeinheiten 3-0, 3-1, 3-2 und 3-3 zugeteilt ist. Zwischen den Speichern und der
Zugriffeinheit ist das Speicher-Zugriff-Steuersystem 2 vorgesehen, welches Befehle von den Zugriffeinheiten
3-0, 3-1, 3-2 und 3-3 für einen Zugriff auf die Speicher 1-0,1-1 1-nerhält.
In diesem Fall hat das konventionelle Speicher-Zugriff=Steuersystem
2 Flipflops, welche eindeutig den
Speichern 1-0,1-1 \-n zugeordnet sind. Der Zustand
der Speicher 1-0, 1-1, ..., \-n wird durch die Flipflops erkannt und, bestimmt durch das Ergebnis dieser
Erkennung, werden Befehle von den Zugriffeinheiten 3-0,3-1,3-2 und 3-3 empfangen.
Anhand der F i g. 2 wird nun ein Zustandsdetektor für einen Speicher in einem derartigen konventionellen
Speicher-Zugriff-Steuersystem beschrieben.
In Fig.2 bezeichnen die Bezugszeichen 9-0, 9-1,...,
9-n Zustandsdetektorkreise für Speicher; diese Detektorkreise
sind, der Reihe nach, den Speichern 1-0,1-1,—,
1-/J zugeordnet und bilden einen Teil des Speicher-Zugriff-Steuersystems
2 (Fig. 1). Die Zustandsdetektorkreise 9-0, 9-1,..., 9-n besitzen jeweils einen Speicher
10-0, 10-1,..., 10-/7 zur Speicherung der Adressen der
Speicher. Außerdem besitzen die genannten Detektorkreise KomparaUjrkreise 11-0, 11-1,..., 11-n, Fitpflops
12-0,12-1,.., 12-/J und Arbeitszähler 13-0,13-1,.., 13-n.
Außerdem haben die Zustandsdetektorkreise 9-0, 9-1, ..., 9-n die gleiche Konstruktion.
Wenn Daten der Adresse, auf die ein Zugriff erfolgen
soll, über den Anschluß 14 eingegeben werden, so werden diese Daten auf die Zustandsdetektorkreise 9-0,
9-1, ..., 9-n verteilt Im Zustandsdetektorkreis 9-0
werden beispielsweise die Daten, die dorthin von dem Anschluß 14 gelangen, und die Adresse des Speichers,
die im Speicher 10-0 gespeichert ist, miteinander im Komparatorkreis 11-0 verglichen. Wenn beide Adressen
miteinander küinziuieren und wenn die Ausgangsinformation
Q von dem Flipflop 12-0, welches als Arbeitssperre dient, »0« ist (dies zeigt an, daß der
entsprechende Speicher frei ist), erzeugt der Komparatorkreis 11-0 damit ein Koinzidenz-Signal CS. Dieses
Koinzidenz-Signal CS wird direkt über eine Steuerleitung an den Speicher 1-0 gegeben, so daß der Speicher
1-0 tätig wird und die Zugriffoperation in Gang bringt. Das obengenannte Koinzidenz-Signal CS wird auf einen
Anschluß 5 des Flipflops 12-0 gegeben, um dieses zu setzen, so daß dessen Ausgangsinformation C? die Form
einer »1« annimmt, so daß eine »Arbeit«-Anzeige erzeugt wird. Außerdem wird das Koinzidenz-Signal CS
an den Arbeitszähler 13-0 gegeben, so daß dieser in Gang gesetzt wird. Während der Zugriff auf den
Speicher 1-0 erfolgt, zählt der Arbeitszähler 13-0 die Taktgeberpulse, entsprechend der Zykluszeit des
Zugriffs, und sendet bei Beendigung der Zählung ein Signal an einen Anschluß R des Flipflops 12-0, so daß
dieses zurückgesetzt wird, wobei seine Ausgangsinformation Q zu einer »0« umgeformt wird, so daß eine
»frei«-Anzeige erfolgt.
Sind die Adresse, mit der der Anschluß 14 beaufschlagt wird, und die im Speicher 10-0 gespeicherte
Adresse nicht miteinander koinz-dent, wird kein Koinzidenz-Signal CS erzeugt, und auch wenn die
genannten Adressen miteinander koinzidierea hat, wenn der zugehörige Speicher tätig ist, die Ausgangsinformation
Q des Flipflops 12-0 den Wert »1«, wie oben beschrieben, so daß das Koinzidenz-Signal CS nicht
erzeugt wird und ein Zugriff nicht in Gang gesetzt wird.
Beim oben beschriebenen Stand der Technik ist es notwendig, die Zustandsdetektorkreise proportional zur
Zahl der benutzter, Speicher zu erhöhen, da die Zustandsdetektorkreise in Entsprechung zu den Speichern
vorgesehen sind.
Wenn beispielsweise der Hauptspeicher 1 (F i g. 1) 64
Speicher 1-0, 1-1 1-63 aufweist, sind 64 Zustandsdetektorkreise notwendig, wobei jeder Detektorkreis ein
Flipflop besitzt. Dementsprechend wird das Speicher-Zugriff-Steuersystem
2 mit der Zahl der benutzten Speicher außerordentlich umfangreich.
Fig. 3 zeigt ein Blockschaltbild, welches beispielhaft
ist für das Prinzip des erfindungsgemiißen Speicher-Zu- μ
griff-Steuersystems.
In Fig. 3 bezeichnet das Bezugszeichen 2 ein
Speicher-Zugriff-Steuersystem. Ein Prioritäts-Steuerkreis ist mit 4 bezeichnet, dieser bestimmt die
Prioritäts-Niveaus der Zugriffbefehle, die von mindestens zwei aus der Vielzahl der Zugriffeinheiten 3-0 bis
3-3 im wesentlichen zum gleichen Zeitpunkt eingegeben werden. Ein Schieberegister ist mit 5 bezeichnet, dieses
besitzt Registerstufen 5-1, 5-2, 5-3,..., 5-m, deren Zahl den Taktgeber-Signalen der Zykluszeit des Hauptspeichers
1 (Fi g. 1) entsprechen, und speichert Adresseninformationen eines oder mehrerer der Speicher 1-0,1-2,
..., 1-n, von denen einer oder mehrere tätig sind. Die
obengenannten Schieberegisterstufen sind mit 5-1, 5-2, 5-3, .., 5-m bezeichnet, der in diesen Registerstufen
gespeicherte Inhalt wird sequentiell nach rechts geschoben, synchron mit einem Taktgebersignal el. Ein
Komparatorkreis ist mit 6 bezeichnet, in diesem wird die Adresseninformation, die durch den Zugriffbefehl
bestimmt und durch den Prioritäts-Steuerkreis 4 ausgewählt wurde, mit dem Inhalt verglichen, der in
jedem der Schieberegisterstufen 5-1, 5-2, ..., 5-m gespeichert ist. Exklusive ODER-Glieder sind mit 6-1,
6-2, 6-3,..., 6-m bezeichnet. Ein Nie1;; Koinzidenz-Deiektorkreis
ist mit 7 bezeichnet, dabei h-ndeit es sich
beispielsweise um ein UND-Glied, welches ein Signal einer logischen »1« nur dann erzeugt, wenn alle
Ausgangsinformationen von den exklusiven ODER-Gliedern 6-1, 6-2 6-m eine logische »1« sind. Eine
UND-Gatterschaltung ist mit 8 bezeichnet.
Im folgenden wird die Wirkungsweise des Speicher-Zugriff-Steuersystems
2 beschrieben. Es wird der Fall betrachtet, daß die Zugriffeinheit 3-1 ei.ien Befehl zum
Zugriff auf den Speicher 1 -2 gibt.
Der Zugriffbefehl wird von der Zugriffeinheit 3-1 an den Prioritäts-Steuerkreis 4 gegeben und erhält das
durch die Beziehung zu den anderen Zugriffeinheiten 3-0, 3-2 und 3-3 bestimmte Prioritäts-Niveau. Es wird
angenommen, daß auf den durch den Zugriffbefehl bestimmten Speicher 1-2 gerade ein Zugriff ausgeführt
wird, d. h., es liegt der »Arbeit«-Fall vor, wenn der von
der Zugriffeinheit 3-1 kommende Zugriffbefehl vo.'i dem Prioritäts-Steuerkreis ausgewählt wird und von daher
eine Ausgangsinformation erzeugt. In diesem Moment ist die Adresseninformation des bestimmten Speichers
1-2 bereits in irgendeiner der Schieberegisterstufen 5-1, 5-2,..., 5-m des Schieberegisters 5 gespeichert. Damit
wird das Signal einer logischen »0«, d. h. ein Koinzidenz-Signal, von dem entsprechenden exklusiven
ODER-Glied 6-1, 6-2 6-m in Abhängigkeit von
derjenigen der Schieberegisterstufen 5-1, 5-2, ..., 5-m
gegeben, die die obengenannte Adresseninformation gespeichert hat. In diesem Fall erzeugen die anderen
exklusiven ODER-Güeder Signale einer logischen »1«, d. h. Nicht-Koinzidenz-Signale. Dementsprechend erzeugt
der Nicht-Koinzidenz-Detektorkreis ein Signal eirer l.vgischen »0«, und ein Zugriff auf den bestimmten
Speicher 1-2 wird nicht in Gang gesetzt. Andererseits wird die UND-Gattxrschaltung 8 durch das Signal einer
logischen »1« vom Nicht-Koinzidenz-Detektorkreis 7 geöffnet, und der Inhalt des obengenannten Zugriffbefehls
von dem Prioritäts-Steuerkreis 4 wird nicht in der ersten Stufe 5-1 des Schieberegisters 5 gespeichert.
Diese Information wird an den Prioritäts-Steuerkreis 4
gesendet. Danach kann der Prioritäts-Steuerk7eis 4 den
obengenannten Zugriffbefehl in den Wartezustand setzen oder veranlassen, daß die obengenannten
Operationen, bestimmt durch den Zugriffbefehl des nachfolgenden Prioritäts-Niveaus, ausgeführt werden.
Wenn die Adresseninforntation des Speichers 1-2 im
»Arbeit«-Zustand im Schieberegister 5 synchron mit
dem Taktgeber-Signal nach rechts geschoben und über die letzte Stufe 5-m des Schieberegisters 5 geschoben
wird, wird der Speicher 1-2 frei. Wenn unter diesen
Umständen der Zugriffbefehl, der den logischen Speicher wie oben bestimmt hat. ausgewählt ist. zeigen
die Ausgangsinformationen von den exklusiven ODER-Gliedern 6-1, 6-2 6-m alle eine logische »I«, und der
Nicht-Koinzidenz-Detektorkreis 7 erzeugt von daher das Signal einer logischen »I«. Wenn das Signal einer
logischen »I« in dieser Weise von dem Nicht-Koinzi-Jenz-Detektorkreis
7 erzeugt worden ist. wird clei Zugriffbefehl in die erste Stufe 5-1 des Schieberegisters
gesetzt, und zwar über eine UND-Gatterschaltung 8, welche durch das Signal einer logischen »I« vom
Detektorkreis 7 geöffnet wird. Zur gleichen Zeit, zu der das Signal einer logischen »I« vom Nicht-Koinzidenz-Detektorkreis
7 erzeugt wird, übernimmt das Speicher-Zugriff-Steuersystem 2 vorschriftsmäßig den obengenannten
Zugriffbefehl, um den Zugriff auf den bestimmten Speicher i-2 in Gang zu setzen.
Die für den Zugriff bestimmte Adresse, die somit in die erste Stufe 5-1 des Schieberegisters 5 gesetzt wurde,
wird sequentiell von der ersten Stufe 5-1 zu den
folgenden Stufen 5-2, 5-3 5-m, synchron mit dem
Taktgeber-Signal el. während des Zugriffs auf den
bestimmten Speicher 1-2 verschoben. Die obengenannte Adresse wird über die letzte Stufe 5-m de
Schieberegisters 5 im Moment der Beendigung des Zugriffs hinausgeschoben.
Das Schieberegister 5 speichert die Information zur Identifizierung der Zugriffeinheit, die zu dem bestimmten
Speicher gehört, zusätzlich zu deren Adresseninformation. Dazu wird beispielsweise in einem solchen Fall
von für den bestimmten Speicher ausgelesenen Daten, wenn die Daten aus dem bestimmten Speicher
ausgelesen werden, die Information zur Identifizierung der obengenannten Zugriffeinheit von der letzten Stufe
5-m des Schieberegisters ausgelesen, zusammen mit der Adresseninformation des bestimmten Speichers. Die
ausgelesenen Daten werden, bestimmt durch die Information zur Identifizierung der Zugriffeinheit, an
die Zugriffeinheit gesendet.
Außerdem kann der Inhalt, der in einer bestimmten
Adresse des Hauptspeichers 1 gespeichert ist. leicht und schnell teilweise neu umgeschrieben werden, und zwar
durch die Benutzung des Schieberegisters 5. Dies wird aus der folgenden Beschreibung deutlich.
Fig. 4 zeigt ein Blockschaltbild einer Ausführungsform der Erfindung, die als das Speicher-Zugriff-Steuersystem
2. dargestellt in Fig. I. benutzt wird.
In Fig. 4 zeigen die Bezugszeichen 15-0 bis 15-/
Befehlstore, die jeweils einer der Zugriffeinheiten 3-0 bis 3-/ zugeordnet sind. Mit 4 ist ein Prioritäts-Steuerkreis
bezeichnet. Mit 16, 17 und 18 sind Selektoren bezeichnet. Mit 8-1, 8-2 und 8-3 sind UND-Glieder
bezeichnet. Ein Schieberegister ist mit 5 bezeichnet. Ein Komparatorkreis ist mit 6 bezeichnet. Ein Nicht-Koinzidenz-Kreis
ist mit 7 bezeichnet. Ein Selektor ist mit 19 bezeichnet. Ein Mischerkreis ist mit 20 bezeichnet.
Wenn ein Zugriffbefehl zum Schreiben von einer Zugriffeinheit wie z. B. einer zentralen Prozessoreinheit
(CPU) oder einem Kanalprozessor (CHP). ausgesendet wird, werden Steuerdaten. Schreibdaten und die
Adresseninformationen des Speichers, auf den ein Zugriff ausgeführt werden soll, von der Zugriffeinheit,
beispielsweise 3-0. an das Befehlstor 15-0. weiches der
Zugriffeinheit zugeordnet ist. gesendet.
Der Prioritäts-Steuerkreis 4 detektiert den obigen Zugriffbefehl und bestimmt das Prioritäts-Niveau.
entsprechend den Beziehungen der Zugriffeinheit zu den anderen Zugriffeinheiten 3-1 bis "\-l. und erlaubt der
Zugriffeinheit mit dem höchsten Prioritäts-Niveau, einen Zugriff zu dem Speicher auszuführen. Wenn in
diesem Fall das Befehlstor 15-0 mit dem höchsten Prioritäts-Niveau gekennzeichnet wird, gibt der Prioritäts-Steuerkreis
4 Anweisungen an die Selektoren 16, 17
und 18, um das Befehlstor 15-0 auszuwählen, und die
in obengenannten Daten und Informationen, die in dem
Befehlstor 15-0 gespeichert worden sind, werden der Reihe nach an den Ausgängen der Selektoren 16, 17 und
18 abgeleitet.
Dies bedeutet, daß die Steuerdaten, die Schreibdaten
π und die Adresseninformation des Speichers, auf den
zugegriffen werden soll, an den Ausgangsseiten der Selektoren 16, 17 und 18. in dieser Reihenfolge,
erscheinen. Die Adresse dieses Speichers wird über den Selektor 18 an den Komparatorkreis 6 übertragen, in
dem die Speicher-Ädresseninformaiion, die in jeder Stufe eines Adressen-Speicherteils 53 des Schieberegisters
5 gespeichert ist, mit dem Adressenteil des Speichers LS verglichen wird. Dies bedeutet, es wird
geprüft, ob der Speicher LS. in dem die gewünschte
Adresse vorhanden ist, frei ist oder nicht. Das Ergebnis dieses Vergleichs wird vom Nicht-Koinzidenz-Dctektorkreis
7 detektiert, und wenn irgendeine der Registerstufen nicht mit dem obengenannten Adressenteil
koL-zident ist. d. h., wenn der gewünschte logische
jo Speicher nicht tätig ist, erzeugt der Nicht-Koinzidenz-Detektorkreis
7 an seinem Ausgang 71 ein Signal einer logischen »1«. Dadurch werden die UND-Glieder 8-1,
8-2 und 8-3 geöffnet und übertragen die obengenannten Daten an den Hauptspeicher 1 und außerdem wird eine
!=. Zugriffsoperation durch ein Steuersignal (»I«), welches
von dem Punkt A eingegeben wird, in Gang gesetzt. Die Information zur Identifizierung der Zugriffeinheit wird
durch den Prioritäts-Steuerkreis 4 erzeugt und über eine Signalleitung LB an die Eingangsseile des Gatters 8-1
jo gegeben.
Andererseits werden die Eingangsinformationen von den UND-Gliedern 8-1, 8-2 und 8-!:l nacheinander in
ersten Stufen eines Steuerdaten-Speicherteils 51, eines Schreibdaten-Speicherteils 52 und eines Adressendaten ■
4ϊ Speicherteils 53 gespeichert und jeweils sequentiell zu
der letzten Stufe geschoben, synchron mit einem Taktgeber-Puls.
Die Zahl der Stufen des Schieberegisters 5 ist so gewählt, daß sie der Zahl der Taktgeber-Pulse:
in entspricht, die in der Zykluszeit einer Zugriffsoperatiori
auf den Hauptspeicher 1 erzeugt werden. Dementsprechend werden die oben beschriebenen Daten nach
Ausführung der Zugriffsoperation über die letzte Stufe des Schieberegisters 5 hinausgeschoben. Im Falle de:;
Schreibens ist das Schreiben bereits abgeschlossen, wenn die Daten über das Schieberegister 5 hinausgeschoben
werden.
Wird ein Teil eines Wortes, welches aus einem Speicher ausgelesen wurde, umgeschrieben, beispiels-
fcf"' weise durch eine Zugriffsoperation, so bezieht sich ein
aus 8 Bytes zusammengesetztes Wort (gewünscht sind ein oder mehrere der 8 Bytes) gewöhnlich auf partielles
Schreiben. Im Falle des partiellen Schreibens werden die Daten, die in einer bestimmten Adresse gespeichert
sind, ausgelesen und über eine Ausleseleitung RD von dem Hauptspeicher 1 zu einem Mischkreis 20
übertragen. Andererseits werden die partiellen Schreibdaten über die letzte Stufe des Datenspeicherteils 52 des
Schieberegisters 5 hinausgeschoben und in ahnlicher
Weise zu dem Mischkreis 20 übertragen, in dem die obengenannten Daten in einem Muster, wie es von der
Zugriffeinheil gewünscht wird, gemischt werden, und die Ausgangsinformation von dem Mischkrcis 20 wird
wiederum auf die Eingangsseite des Selektors 17 gegeben. In einer ähnlichen Weise werden die
Adressendaten auch von der letzten Stufe des Adress.-.ispeicherteils 53 des Schieberegisters 5 an die
Eingangsseite des Selektors 18 gegeben. Zu dieser Zeit wird der Prioritäts-Steuerkreis 4 durch die Steuerdaten,
die über dem Steuerdaten-Speicherteil 5t oes Schieberegisters
5 hinausgeschoben werden, so gesteuert, daß er Befehle von den Toren 15-0 bis 15-/verhindert, und
zur gleichen Zeit werden die Selektoren 16, 17 und 18 veranlaßt, die Steuerdaten, die über das Schieberegister
5 hinausgeschoben werden, die Daten von dem Mischkreis 20 und die obengenannten Adressendaten
auszuwählen. Die Daten werden im Hauptspeicher 1 an (Jen obengenannten Adressen in der gleichen V/esse wie
im Falle des Schreibens eingeschrieben.
Im Falle des Lesens werden die Steuerdaten, einschließlich der Information zur Identifizierung der
Zugriffeinheit (beispielsweise 3-1), über den Steuerdaten-Speicherteil 51 des Schieberegisters 5 hinausgeschoben
und gelangen über eine Leitung Rl zum Selektor 19 und steuern diesen Selektor 19, wobei die
Zugriffeinheit ausgewählt wird (beispielsweise 3-0). Dementsprechend werden die aus dem Hauptspeicher 1
ausgelesenen Daten über eine Leitung RD und den Selektor 19 zur Zugriffeinheit übertragen, beispielsweise
zur Zugriffeinheit 3-0.
F i g. 5 ist ein Blockschaltbild, welches den Adressen-Speicherteil
53 des Schieberegisters 5, den Komparatorkreis 6 und den Nicht-Koinzidenz-Detektorkreis 7, wie
in der Ausführungsform nach F i g. 4 benutzt, im einzelnen zeigt.
In Fig. 5 ist mit 53-1 eine erste Stufe eines Adressen-Speicherteils 53 des Schieberegisters 5
(Fig. 4) bezeichnet. Im dargestellten Beispiel ist der Hauptspeicher 1 beispielsweise in 8 Segmente aufgeteilt,
die jeweils 16 Speicher (LS) besitzen. Den Speichern eines jeden Segments werden die gleichen
Adressen gegeben. Dementsprechend wird für die Identifizierung eines Speichers die Adresse (4-bit) des
Speichers selbst und die Adresse (3-bit) des Segments, zu dem der Speicher gehört, benötigt. Es ist notwendig,
daß die Adressen des obengenannten Segments und Speichers und die Adresse des Speicherteils des
Speichers in jeder Stufe des Schieberegisters 5 gespeichert sind. Da sich dies jedoch nicht direkt auf die
Erfindung bezieht, wird keine weitere Beschreibung dafür gegeben. Der Adressen-Speicherteil 53 des
Schieberegisters 5 besitzt m Stufen, wie durch 53-1 angezeigt ist.
Die Ausgangsinformation von jeder Stufe, die kennzeichnend für den Inhalt jeder einzelnen Zelle ist.
wird in den Komparatorkreis 6 gebracht und mit der Adresse des gewünschten Speichers verglichen, auf den
zugegriffen werden soll, was vom Selektor 18 eingeleitet wird. In Fig. 5 ist nur ein Komparatorteil 6-1 für die
erste Stufe gezeigt Das Bezugszeichen 21 zeigt eine Datenleitung zur Adressenübertragung vom Selektor 18
zum Komparatorkreis 6. Mit 22 wird eine Datenleitung bezeichnet durch die der Inhalt einer jeden Zelle der
ersten Stufe übertragen wird. Die einander entsprechenden Leitungen der beiden Datenleitungen dienen
als zwei Eingänge für jedes der exklusiven ODER-GHe-
der 22-0 bis 22-7. Dementsprechend ist die Ausgangsinformation
vom exklusiven ODER-Glied »0«, wenn die beiden Eingangsinformationcn für jedes exklusive
ODER-Glied miteinander koinzidieren (jede entweder »I« oder »0«). Koinzidieren die Eingangsinformationcn
nicht, isl die Ausgangsinformation »1«. Die Ausgangsinformationen
von den exklusiven ODER-Gliedern 22-0 bis 22-7 werden auf das ODER-Glied 23 gegeben.
Dementsprechend sind alle Ausgangsinformationcn von den exklusiven ODER-Gliedern »0«, wenn die beiden
Eingangsinformationen für jedes der exklusiven ODER-Glieder 22-0 bis 22-7 miteinander koinzidieren. Ist dies
nicht der Fall, zeigt die Ausgangsinformation vom ODER-Glied 23 den Wert »1«.
Der Komparatorteil 6-1, der mit den exklusiven ODER-Gliedern 22-0 bis 22-7 und dem ODER-Glied 23
gebildet wird, ist für jede Stufe des Adressenspeicherteils 53 des Schieberegisters vorgesehen. Diese Komparatoren
6-1 bis 6-m (nur 6-1 ist dargestellt) bilden den
Der Nicht-Koinzidenzkreis 7 wird mit einem UND-Glied 24, welches m Eingänge besitzt, gebildet,
und die Ausgangsinformationen von den Komparatorteilen 6-1 bis 6-m werden auf das UND-Glied 24
gegeben. Wenn die Paare der entsprechenden Eingangsinformationen in mindestens einem der Komparatortei-Ie
6-1 bis 6-m alle koinzidieren, und wenn die Ausgangsinformation vom Komparatorteil »0« ist. so ist
dementsprechend »0« die Ausgangsinformation vom UND-Glied 24; dies ist die Ausgangsinformation 71 vom
Nicht-Koinzidenz-Detektorkreis 7. Wenn mindestens eines tier Paare der Eingangsinformationen in all den
Komparatorteilen 6-1 bis 6-m nicht koinzidieren und wenn deren Ausgangsinformationen alle »1« sind, ist
»1« die Ausgangsinformation 71 vom Nicht-Koinzidenz-Detektorkreis 7.
Kommt von einer bestimmten Zugriffeinheit ein Befehl zum Zugriff auf einen Speicher, werden die
gewünschten Adressendaten, auf die zugegriffen werden soll, vom Selektor 18 über die Leitung 21 zum
Komparatorkreis 6 übertragen, wie anhand der F i g. 4 beschrieben wurde. Diese Adressendaten werden mit
den Adresserdaten. die in jeder Stufe des Adressen-Speicherteils 53 des Schieberegisters 5 gespeichert sind,
verglichen, wie in Verbindung mit Fig. 5 beschrieben
wurde. Falls keine Daten miteinander koinzidieren. ist der Speicher der obigen Adresse nicht tätig, und die
Ausgangsinformation vom Nicht-Koinzidenz-Detektorkreis 7 hat den Wert »1«, so daß die Zugriffsoperation
stattfindet, wie anhand der Fig.4 beschrieben worden
ist.
Wenn jedoch der Teil der den Speicher bestimmenden Adressendaten, die von der Datenleitung 21 an den
Komparatorkreis 6 eingegeben werden, mit dem Teil der den Speicher bestimmenden Adressendaten koinzidiert,
die in einer der Stufen des Adressen-Speicherteils 53 des Schieberegisters 5 gespeichert sind, ist der
obengenannte Speicher tätig, und ein neuer Zugriff soll verhindert werden. Da in diesem Fall die Ausgangsinformation
71 vom Nicht-Koinzidenz-Detektorkreis 7 den Wert »0« hat, werden die UND-Glieder8-1,8-2 und
8-3. dargestellt in Fig.4. nicht geöffnet Da außerdem
die Ausgangsinformation A ebenfalls »0« ist wird ein Zugriff auf den obengenannten Speicher verhindert. Im
Falle eines wirklichen Zugriffbefehls wird ein gültiges bit »1« den Adressendaten des Befehls zugefügt um
dessen Gültigkeit anzuzeigen.
Im erfindungsgemäßen Speicher-Zugriff-Steuersy-
stem ist ein Schieberegister vorgesehen, welches
synchron mit einem Taktgeber-Signal schiebt, und die
Zahl der Stufen des Schieberegisters wird so gewählt, daß die zur Verschiebung des gespeicherten Inhaltes
von der ersten zur letzten Stufe des Schieberegisters benötigte Zeit der Speicherzugriffszeit entsprechen
kann. Im Augenolick des Befehls zu einem Zugriff auf einen Speicher einer bestimmten Adresse wird die
Adresse in ffcr ersten Stufe des Schieberegisters
gespeichert und sequentiell, synchron mit dem Taktgeber-Signal, zu den nachfolgenden Stufen verschoben. Da
die Adresse nach einem Taktgeber-Signal in die /weite
Stufe geschoben worden ist, kann die Adresse für einen Zugriff auf einen anderen Speicher in der ersten Stufe
gespeichert werden. Dementsprechend kann mit jedem Taktgeber-Signal ein neuer Speicherzugriff ausgeführt
werden, und die Adressen für die Speicherzugriffe sind während der Ausführung alle in irgendeiner Stufe des
Schieberegisters gespeichert, so daß es möglich ist zu prüfen, ob der gewünschte Speicher tätig ist oder nicht.
Darüber hinaus ist es nachteilig, für jeden Speicher einen Steuerkreis zur Prüfung seines Zustandes für
einen Zugriff vorzusehen wie beim Stand der Technik. Wenn die Zahl der Speicher größer ist als ein
bestimmter Wert, beispielsweise 8 bis 16, so bedeutet dies, daß die benötigte Zahl der Speicherkreise
proportional zur Zahl der benutzten Speicher anwächst und daß der Umfang des Speichcr-Zugriff-Kontrollsystems
unerwünscht vergrößert wird.
Bei der vorliegenden Erfindung jedoch bleibt der Umfang des Speicher-Zugriff-Steuersystems unverändert,
auch dann, wenn die Zahl der Speicher vergrößert wird. Außerdem kann eine Steuerung der Übertragung
von ausgelesenen Daten an eine Zugriffeinheit leicht mit einer kleinen Zahl zusätzlicher Einheiten erreicht und
auch partielles Schreiben leicht ausgeführt werden.
Hierzu 5 Blatt Zeichnungen
Claims (2)
1. Speicher-Zugriff-Steuersystem, das zwischen mindestens zwei Datenverarbeitungseinheiten und
einem Hauptspeicher vorgesehen ist, der aus einer Vielzahl von Speichern aufgebaut ist, zu denen
unabhängig zugegriffen werden kann, wobei das Speicher-Zugriff-Steuersystem von jeweils einer
Datenverarbeitungseinheit eine Anforderung zum Zugriff auf einen der Speicher, der durch eine
gegebene Adresse bestimmt ist, empfängt, dadurch gekennzeichnet, daß ein Schieberegister
(5), das mehrere Registerstufen besitzt, die zahlenmäßig der Zahl der Taktsignale der Zykluszeit
des Hauptspeichers entsprechen, und ein Komparatorkreis (6) vorgesehen sind, daß der die Adresseninformation
speichernde Teil jeder Stufe des Schieberegisters mit dem Eingang des Komparatorkreises
verbunden ist, daß jede Stufe (5-1 bis 5-m) des
Schieberegisters so viele Stellen besitzt, daß zumindest die Adresseninformation eines Speichers
(1-0 bis \-n) in einer Stufe speicherbar ist, daß der Eingang des Schieberegisters mit jeweils einer der
Datenverarbeitungseinheiten über eine Gatterschaltung (8) verbunden ist und daß der Ausgang des
Komparatorkreises über einen Nicht-Koinzidenz-Detektorkreis (7) mit der Gatterschaltung (8)
verbunden ist, wobei die Adresseninformation besetzter Speicher im Schieberegister gespeichert
und synchron mit den Taktsignalen (el) verschoben wird, so da£ sie nach einer Zykluszeit des
Hauptspeichers aus dem Schieb'register herausgeschoben
wird, wobei im Komparatorkreis der Inhalt jeder Stufe des Schieberegisters nrt der Adresseninformation
des Speichers verglichen wird, der aufgrund der Zugriffsanforderung bestimmt wurde,
und wobei die Zugriffsanforderung vom Schieberegister über die Gatterschaltung (8) empfangen und
ein Steuersignal zum Zugriff zu dem gewünschten Speicher erzeugt wird, wenn der Inhalt keiner Stufe
des Schieberegisters mit der gegebenen Adresse übereinstimmt.
2. Speicher-Zugriff-Steuersystem nach Anspruch 1, dadurch gekennzeichnet, daß der Nicht-Koinzidenz-Detektorkreis
(7) die Nicht-Koinzidenz aller Ergebnisse des Vergleichs der Inhalte aller Stufen
des Schieberegisters (5) mit dem Befehl von einer Zugriffseinheit (3) erkennt und ein Steuersignal für
den Zugriff erzeugt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4703976A JPS52130246A (en) | 1976-04-24 | 1976-04-24 | Memory access control system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2717702A1 DE2717702A1 (de) | 1977-11-03 |
DE2717702C2 true DE2717702C2 (de) | 1981-12-24 |
Family
ID=12764010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2717702A Expired DE2717702C2 (de) | 1976-04-24 | 1977-04-21 | Speicher-Zugriff-Steuersystem |
Country Status (9)
Country | Link |
---|---|
US (1) | US4115851A (de) |
JP (1) | JPS52130246A (de) |
AU (1) | AU501316B2 (de) |
BR (1) | BR7702569A (de) |
CA (1) | CA1072216A (de) |
DE (1) | DE2717702C2 (de) |
ES (1) | ES457764A1 (de) |
FR (1) | FR2349192A1 (de) |
GB (1) | GB1568312A (de) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4228500A (en) * | 1978-03-27 | 1980-10-14 | Honeywell Information Systems Inc. | Command stacking apparatus for use in a memory controller |
US4253144A (en) * | 1978-12-21 | 1981-02-24 | Burroughs Corporation | Multi-processor communication network |
US4307446A (en) * | 1979-05-02 | 1981-12-22 | Burroughs Corporation | Digital communication networks employing speed independent switches |
NL7907179A (nl) * | 1979-09-27 | 1981-03-31 | Philips Nv | Signaalprocessorinrichting met voorwaardelijke- -interrupteenheid en multiprocessorsysteem met deze signaalprocessorinrichtingen. |
US4384323A (en) * | 1980-02-25 | 1983-05-17 | Bell Telephone Laboratories, Incorporated | Store group bus allocation system |
US4393459A (en) * | 1980-07-17 | 1983-07-12 | International Business Machines Corp. | Status reporting with ancillary data |
US4380798A (en) * | 1980-09-15 | 1983-04-19 | Motorola, Inc. | Semaphore register including ownership bits |
JPS5786180A (en) * | 1980-11-17 | 1982-05-29 | Hitachi Ltd | Memory device having address converting mechanism |
US4410943A (en) * | 1981-03-23 | 1983-10-18 | Honeywell Information Systems Inc. | Memory delay start apparatus for a queued memory controller |
US4495567A (en) * | 1981-10-15 | 1985-01-22 | Codex Corporation | Multiprocessor/multimemory control system |
JPS5995151U (ja) * | 1982-12-20 | 1984-06-28 | 三菱重工業株式会社 | 粉体供給装置 |
US4594657A (en) * | 1983-04-22 | 1986-06-10 | Motorola, Inc. | Semaphore for memory shared by two asynchronous microcomputers |
US4654787A (en) * | 1983-07-29 | 1987-03-31 | Hewlett-Packard Company | Apparatus for locating memory modules having different sizes within a memory space |
US4722052A (en) * | 1984-04-02 | 1988-01-26 | Sperry Corporation | Multiple unit adapter |
US4630197A (en) * | 1984-04-06 | 1986-12-16 | Gte Communication Systems Corporation | Anti-mutilation circuit for protecting dynamic memory |
US4710868A (en) * | 1984-06-29 | 1987-12-01 | International Business Machines Corporation | Interconnect scheme for shared memory local networks |
US4745545A (en) * | 1985-06-28 | 1988-05-17 | Cray Research, Inc. | Memory reference control in a multiprocessor |
US4821185A (en) * | 1986-05-19 | 1989-04-11 | American Telephone And Telegraph Company | I/O interface system using plural buffers sized smaller than non-overlapping contiguous computer memory portions dedicated to each buffer |
US4807184A (en) * | 1986-08-11 | 1989-02-21 | Ltv Aerospace | Modular multiple processor architecture using distributed cross-point switch |
US4780822A (en) * | 1986-09-17 | 1988-10-25 | Integrated Device Technology, Inc. | Semaphore circuit for shared memory cells |
US5301278A (en) * | 1988-04-29 | 1994-04-05 | International Business Machines Corporation | Flexible dynamic memory controller |
US5142638A (en) * | 1989-02-07 | 1992-08-25 | Cray Research, Inc. | Apparatus for sharing memory in a multiprocessor system |
JP2626154B2 (ja) * | 1990-04-18 | 1997-07-02 | 日本電気株式会社 | メモリアクセス制御装置 |
JP2511588B2 (ja) * | 1990-09-03 | 1996-06-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | デ―タ処理ネットワ―ク、ロックを獲得させる方法及び直列化装置 |
US5206952A (en) * | 1990-09-12 | 1993-04-27 | Cray Research, Inc. | Fault tolerant networking architecture |
EP0543560B1 (de) * | 1991-11-19 | 1999-12-22 | Sun Microsystems, Inc. | Arbitrierung des Multiprozessorzugriffs zu gemeinsamen Mitteln |
JPH086889A (ja) * | 1994-06-20 | 1996-01-12 | Fujitsu Ltd | 入出力制御装置 |
US6022094A (en) * | 1995-09-27 | 2000-02-08 | Lexmark International, Inc. | Memory expansion circuit for ink jet print head identification circuit |
US7231499B2 (en) * | 2003-12-17 | 2007-06-12 | Broadcom Corporation | Prioritization of real time / non-real time memory requests from bus compliant devices |
JP4494899B2 (ja) * | 2004-07-29 | 2010-06-30 | 富士通株式会社 | プロセッサデバッグ装置およびプロセッサデバッグ方法 |
JP4650552B2 (ja) * | 2008-10-14 | 2011-03-16 | ソニー株式会社 | 電子機器、コンテンツ推薦方法及びプログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3997875A (en) * | 1973-01-08 | 1976-12-14 | U.S. Philips Corporation | Computer configuration with claim cycles |
JPS5434500B2 (de) * | 1973-12-30 | 1979-10-27 | ||
US3967246A (en) * | 1974-06-05 | 1976-06-29 | Bell Telephone Laboratories, Incorporated | Digital computer arrangement for communicating data via data buses |
-
1976
- 1976-04-24 JP JP4703976A patent/JPS52130246A/ja active Granted
-
1977
- 1977-04-06 US US05/785,104 patent/US4115851A/en not_active Expired - Lifetime
- 1977-04-13 ES ES457764A patent/ES457764A1/es not_active Expired
- 1977-04-19 AU AU24419/77A patent/AU501316B2/en not_active Expired
- 1977-04-21 DE DE2717702A patent/DE2717702C2/de not_active Expired
- 1977-04-22 BR BR7702569A patent/BR7702569A/pt unknown
- 1977-04-22 FR FR7712198A patent/FR2349192A1/fr active Granted
- 1977-04-22 CA CA276,836A patent/CA1072216A/en not_active Expired
- 1977-04-22 GB GB16924/77A patent/GB1568312A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
US4115851A (en) | 1978-09-19 |
JPS52130246A (en) | 1977-11-01 |
ES457764A1 (es) | 1978-03-01 |
AU2441977A (en) | 1978-10-26 |
DE2717702A1 (de) | 1977-11-03 |
GB1568312A (en) | 1980-05-29 |
BR7702569A (pt) | 1978-02-21 |
CA1072216A (en) | 1980-02-19 |
JPS5756751B2 (de) | 1982-12-01 |
AU501316B2 (en) | 1979-06-14 |
FR2349192A1 (fr) | 1977-11-18 |
FR2349192B1 (de) | 1980-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2717702C2 (de) | Speicher-Zugriff-Steuersystem | |
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE2455803C2 (de) | Mehrprozessor-Datenverarbeitungsanlage | |
DE2350225C2 (de) | ||
DE4019135C2 (de) | Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung | |
DE2130299B2 (de) | Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage | |
DE2126206B2 (de) | Datenverarbeitungseulrichtung mit Speicherschutzanordnung | |
DE2847960A1 (de) | Speichersteuereinrichtung | |
DE2415900B2 (de) | Rechenautomat mit mehreren mit je einem Vorratsspeicher versehenen Rechenanlagen | |
DE3224034A1 (de) | Mehrprozessorensystem | |
DE2303596A1 (de) | Datenverarbeitungsanordnung | |
DE2635592A1 (de) | Multiprozessor-abrufsystem | |
DE2907799A1 (de) | Verfahren und anordnung zum steuern des zugriffs zu einem arbeitsspeicher | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE3126363A1 (de) | Verfahren und vorrichtung zur steuerung einer datenuebertragung mit direktem speicherzugriff | |
DE2547488A1 (de) | Mikroprogrammierte datenverarbeitungsanlage | |
DE1524788C3 (de) | Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern | |
DE1524111A1 (de) | Datenverarbeitungsanlage | |
DE2350229A1 (de) | Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen | |
DE2054941C2 (de) | Anordnung zur Auswahl von Datensätzen | |
DE2311503A1 (de) | Datenverarbeitungsanlage mit mehreren zentraleinheiten | |
DE1549486A1 (de) | Verfahren zur Datenuebertragung zwischen mindestens einer zentralen Recheneinheit und mehreren externen Speichern | |
DE3105115A1 (de) | Datenverarbeitungssystem mit bezueglich einer schluesselspeicherung ringfoermig angeschlossenen mulitprozessoren | |
DE3931389C2 (de) | Vorrichtung zur Erfassung der Koinzidenz von in einer Pufferspeichersteuerung abgespeicherten Operanden | |
DE2355814C2 (de) | Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8125 | Change of the main classification | ||
D2 | Grant after examination | ||
8328 | Change in the person/name/address of the agent |
Free format text: REINLAENDER, C., DIPL.-ING. DR.-ING., PAT.-ANW., 8000 MUENCHEN |
|
8339 | Ceased/non-payment of the annual fee |