DE2204883C3 - Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher - Google Patents
Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem DatenspeicherInfo
- Publication number
- DE2204883C3 DE2204883C3 DE19722204883 DE2204883A DE2204883C3 DE 2204883 C3 DE2204883 C3 DE 2204883C3 DE 19722204883 DE19722204883 DE 19722204883 DE 2204883 A DE2204883 A DE 2204883A DE 2204883 C3 DE2204883 C3 DE 2204883C3
- Authority
- DE
- Germany
- Prior art keywords
- register
- memory
- zone
- half cycle
- code group
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/52—Indexing scheme relating to G06F9/52
- G06F2209/521—Atomic
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Exchange Systems With Centralized Control (AREA)
- Multi Processors (AREA)
Description
Die Erfindung bezieht sich auf eine Anordnung zur Durchführung des Informationsaustauschs über eine
Schnittstelle zwischen Datenverarbeitungseinheiten und einem Datenspeicher mn zerstörendem Ablesen,
der in Zonen organisiert ist, denen Adressen zugeteilt sind, die jeweils in einem zugeordneten Zonenadressenregister
gespeichert sind, wobei die Zonenadressenregister eine Zonenadressenregistergruppe bilden,
der ein Aufrufregister und ein Lese/Schreib-Register für jede aus einem Zonenadressenregister entnommene
oder in ein solches Register eingegebene Codegruppe zugeordnet ist, wobei jede Austauschoperation
einen ersten Halbzyklus für das Lesen des Inhalts einer Datenstelle in dem Speicher und einen zweiten
Halbzyklus für das Wiedereinschreiben der gelesenen Information in den Speicher, gegebenenfalls nach einer
Änderung dieser Information, umfaßt, und wobei eine Unterscheidung zwischen einer Zonenadressencodegruppe
und einer besonderen, den Besetztzu stand einer Zone anzeigenden Besetztcodegruppe erfolgt.
Bei den Anordnungen der zuvor angegebenen Art ist es erwünscht, um die Wartezeit der Datenverarbeitungseinheiten
bei ihren Aufrufen für einen Speicherzugang möglichst zu verringern, die Möglichkeit von
überlappten Aufrufen durch den folgenden Zeitablauf dieser Aufrufe vorzusehen: Auf einen ersten Halbzyklus
(Lese-Kalbzyklus) eines von einer Datenverarueitungseinhut
kommenden Aufrufs folgt ein erster Halbzyklus j ines Aufrufs, der von einer anderen Dan-nverarbcMtungseiriheit
stammt, und dann folgen die zweiten HaIbA klen (Schrcib-Halbzyklen) dieser
Aufrufe. Diese Organisation weist jedoch einen Nachteil auf: Wenn zwei uberLppie Aufrufe die
gleiche Speicherzone betreffen, kann der zweite Aufruf die angeforderte Speicherzone leer vorfinden, da
sie durch den ersten Halbzyklus des ersten Aufrufs
geloscht worden ist, wodurch dann die Durchführung
der laufenden Arbeit in der zweiten rufenden Datenverarbeitungseinheit verfälscht wird. Man kann daher
bei einer solchen Organisation von überlappten Aufrufen nicht zulassen, daß zwei Datenverarbeitungseinheilen
ohne weiteres Zugang zu der gleichen Speicherzone mit Überlappung der Aufrufe und des
Austauschs anfordern und erhalten können.
Bei einer aus der USA.-Patentschrift 3 398 405 bekannten Anordnung der eingangs angegebenen Art
ist die Möglichkeit vorgesehen, den Zugang zu bestimmten Daten des Speichers nur für bestimmte Datenverarbeitungseinheiten
(oder Programme) zuzu-
lassen und für alle übrigen zu sperren. Zu diesem Zweck ist eine »Statustabelle« vorgesehen, die vor jedem Speicherzugriff befragt werden muß, ob die beireffende Speicherzone für das anfragende Programm
zugänglich ist. Wenn das der Speicherzone zugeordnete Wort in der Statustabelle einen Freizustand anzeigt, hat jedes Programm Zugang zu dieser Speicherzone; wenn dagegen ein Sperrzustanj angezeigt wird,
hat nur das Programm Zugang, das den Sperrzustand hergestellt hat. Ferner sind Maßnahmen getroffen, um
zu verhindern, daß zwei Programme gleichzeitig die Sperroperation an einem Wort der Statustabelle
durchführen, weil sonst beide Programme mit der gesperrten Speicherzone arbeiten könnten. Zu diesem
Zweck wird jedes aus der Statustabelle zur Durchführung der Sperroperation abgelesene Wort gleichzeitig
in der Statustabelle mit einer Markierung versehen; diese Markierung zeigt an, daß das Wort durch ein
Programm entnommen worden ist, und verhindert jede Veränderung des Wortes durch ein anderes Programm. Diese Markierung erfolgt beim Wiedereinschreiben des Wortes in dem betreffenden Speicherzyklus; es dürfen also keine sich überlappenden
Speicherzyklen durch verschiedene Datenverarbeitungseinheiten ausgelöst werden.
Ein ähnliches, noch etwas komplizierteres System ist aus der USA.-Patentschrift 3317898 bekannt.
Bei einer anderen, aus der USA.-Patentschrift 3 469 239 bekannten Anordnung enthält jede Datenverarbeitungseinheit ein eigenes Sperregister, in das
die Codenummer der benötigten Daten eingebracht wird, wenn die betreffende Datenverarbeitungseinheit einen Zugang zum Speicher wünscht. Die Datenverarbeitungseinheit vergleicht den Inhalt ihres Sperrregisters dann mit den Inhalten der Sperregister aller
übrigen Datenverarbeitungseinheiten, und sie verarbeitet die betreffenden Daten nur dann, wenn in keinem anderen Sperregister die gleiche Codenummer
steht. Dieses Verfahren ist sehr umständlich und kann schon wegen seiner Langsamkeit nicht in Verbindung
mit sich überlappenden Speicherzyklen angewendet werden.
Schließlich ist aus der USA.-Patentschrift 3 405 394
eine Anordnung bekannt, bei welcher der Inhalt eines Registers oder eines Speicherplatzes nach dem Ablesen in einen bekannten Zustand gebracht wird, der
eine festgelegte Bedeutung hat. Beispielsweise kann dadurch, daß in allen Stellen des Registers oder Speicherplatzes die Binärziffer 1 oder die Binärziffer 0 erzwungen wird, der Besetztzustand des betreffenden
Registers oder Speicherplatzes angezeigt werden. Diese Erzwingung erfoigt bei der Wiedercingabe im
Verlauf des zweiten Halbzyklus des Spe«cherzykUis
entweder durch Sperrung von Torschaltungen, durch welche die wiedereinzuschreibende Information geht,
oder durch Sperrung der Wiedereinschreibschaltungen, oder durch ein Lesen ohne Regeneration. Auch
in diesem Fall ist es nicht möglich, mit einer gegenseitigen Überlappung der Halbzyklen von Austauschoperationen zu arbeiten.
Aufgabe der Erfindung ist die Schaffung einer Anordnung der eingangs angegebenen Art, die bei gegenseitiger Überlappung der Halbzyklen der von verschiedenen Datenverarbeitungseinheiten angeforderten Austauschoperationen eine vollkommene Sicherheit dafür ergibt, daß die beiden Datenverarbeitungseinheiten nicht Zugang zu der gleichen Speicherzone
erlangen.
Zur Lösung dieser Aufgabe enthält die Anordnung nach der Erfindung:
a) einen verdrahteten Decodierer, der an Ausgänge
des Lese/Schreib-Registers angeschlossen ist
Besetztcodegruppe im Lese/Schreib-Register einen bestimmten Signalwert annimmt;
b) ein bistabiles Glied, das wenigstens einen Ausgang hat, der an eine Klemme der Schnittstelle
ein Potential zur Markierung «fieser Klemme je
nach dem Zustand des bistabilen Gliedes anlegt;
c) eine Torschaltungsanordnung, die im ersten Halbzyklus jeder Austauscboperation die Verbindung zwischen dem Ausgang des Decodieren
1S und einem Einstelleingang des bistabilen Glieds
freigibt;
d) eine Schaltunganordnung, die auf den Zustand des bistabilen Glieds anspricht und dann, wenn
die Besetztcodegruppe in einem ersten Halbzy-
ao klus nicht in dem Lese/Schreib-Register steht,
noch im gleichen ersten Halbzyklus die Eingabe der Besetztcodegruppe in das Zonenadressenregister erzwingt, dessen Inhalt in das Lese/
Schreib-Register gerufen worden ist. »5 Die nach der Erfindung ausgebildete Anordnung
ergibt die Wirkung, daß im ersten Halbzyklus jeder von einer Datenverarbeitungseinheit angeforderten
Austauschoperation festgestellt wird, ob die angeforderte Speicherzone frei oder besetzt ist, daß noch in
demselben Halbzyklus deren Besetzung erfolgt, wenn die Speicherzone frei ist, und daß in allen Fällen die
rufende Datenverarbeitungseinheit davon informiert wird, ob ihr Aufruf angekommen ist oder nicht; im
zweiten Halbzyklus jeder Austauscboperation kann auch die Freigabe einer zuvor besetzten Speicherzone
erfolgen.
Dadurch ist sichergestellt, daß auch dann, wenn die gleiche Speicherzone noch in demselben ersten
Halbzyklus von einer zweiten Datenverarbeitungseinheit aufgerufen wird, diese bereits einen Besetzt
zustand der Speicherzone feststellt und somit keinen Zugang zu dieser Speicherzone erhält.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt, deren einzige Figur das Blockschaltbild einer erfindungsgemäßen Anordnung zeigt.
Die Zeichnung zeigt einen Speicher M, der in Zonen So, Sl ... Sk ... Sm organisiert ist. Jeder Zone
ist ein Zonenadressenregister so, si... sk,.. sm zugeordnet, das eine für die Zone spezifische Codegruppe enthält, beispielsweise die Adresse des ersten
Wortes dieser Speicherzone. Die Darstellung entspricht natürlich nicht der wirklichen räumlichen Anordnung dieser Speicherzonen und ihrer Zonenadressenregister. Jedoch sind an sich bekannte verdrahtete
Schaltungen so ausgebildet, daß dann, wenn eine Adressencodegruppe, die einem dieser Zonenadressenregister zugeordnet ist, in ein Aufrufregister RA
von einem Datenverarbeitungsgeral eingegeben wird, das die Ausführung eines dann in den Befehlsspeicher
MO eingegebenen oder darin aktivierten Austauschbefehls aufruft, der Inhalt des bezeichneten Zonenadressenregisters in das Lese/Schreib-Register R
übertragen oder in diesem Register nachgebildet wird. Diese verdrahteten Schaltungen sind auch für den
umgekehrten Betrieb ausgebildet, d.h. für das Einschreiben des Inhalts des Lese/Schreib-Registers R in
das durch den Inhalt des Aufrufrcgjstens RA bezeichnete Zonenadressenregister der Zoneuadressenregi-
itergruppe jo ... sm.
Eine Anzahl von Datenverarbeitungseinheilen Ul, Ul... Uk... Vn teilen sich in die Benutzung des
Speichers M über eine Verbindungsschnittstelle IL. Jede Datenverarbeitungseinheit kann den Zugang
zum Speicher M, genauer zu einer Zone dieses Speichers, dadurch anfordern, daß es der Eingangsschaltung
Go des Aufrufregisters RA die Adressencodegruppe eines Zonenadressenregisters der Zonenadressenregistcrgmppe
so...sm zuführt, und den Befehlsspeicher MO entweder dadurch in Tätigkeit
setzt, daß es ihn mit der Codegruppe eines geeigneten Befehls füllt, oder dadurch, daß es die Ausführung
eines Befehls auslöst, wenn die Befehlscodegruppe dauernd im Befehlsspeicher MO enthalten ist. Jede
Ausführung eine* im Befehlsspeicher MO enthaltenen Befehls setzt einen Taktgeber BT in Gang, der
Taktsignale «„, r und t2 mit geeigneten Phasenlagen
liefert, die den in gleicher Weise bezeichneten Phasen jedes Halbzyklus entsprechen. Der Übergang in die
Phase /„ steuert in allen Fällen die Eingangsschaltung Go, so daß in das Aufrufregister RA die Codegruppe
eingegeben wird, die von der Datenverarbeitungseinheit für die Auswahl der Speicherzone abgegeben
worden ist, die von dem angeforderten Austausch betroffen ist.
Jeder Austausch umfaßt zwei »Halbzyklen«, von denen der erste Halbzyklus ein Lesezyklus und der
zweite Halbzyklus ein'Schreibzyklus ist, zumindest hinsichtlich der Zonenadressenregister 50... sm. Hinsichtlich
der Speicherzonen So ... Sm brauchen die Art und die Organisation des Austausche nicht näher
angegeben zu werden, da sie außerhalb der eigentlichen Erfindung liegen. In jedem »ersten Halbzyklus«
weist der im Befehlsspeicher MO enthaltene Befehl einen ersten Funktionsbuchstaben FO auf, der dann
den in gleicher Weise bezeichneten Ausgang des dem Befehlsspeicher AfO zugeordneten Funktionsdecodierers
DFerregt, und in jedem »zweiten« Halbzyklus enthält der Befehl einen zweiten Funktionsbuchstaben
FL, der dann den entsprechend bezeichneten Ausgang des Funktionsdecodierers erregt.
Für die einfachere Erläuterung der Anordnung und wegen der Tatsache, daß das System überlappte Aufrufe
zuläßt, die von verschiedenen Datenverarbeitungseinheiten kommen, wird vorzugsweise angenommen,
daß die beiden Halbzyklen des Betriebs unabhängig voneinander von den Datenverarbeitungseinheiten
gesteuert werden, zumindest auf der Höhe der Verbiiidungsschnittstelle IL. Beim überlappten
Betrieb muß nämlich der Inhalt des Aufrufregisters RA von dem von einer ersten Datenverarbeitungseinheit
gesteuerten »ersten« Halbzyklus zu dem von einer zweiten Datenverarbeitungseinheit gesteuerten
»ersten« Halbzyklus wechseln; für die »zweiten« Halbzyklen ist es dann noch notwendig, daß der
Inhalt des Lese/Schreib-Registers R in zwei Wiederholungen auf seine Werte von »ersten« Halbzyklen
(oder auf verschiedene geänderte Werte) zurückgebracht wird. Das gleiche gilt für den Teil F des Befehlsspeichers
AfO, bei dem, falls erforderlich, für zwei aufeinanderfolgende Halbzyklen der Ausgang
FO und dann für die nächsten Ijeiden aufeinanderfolgenden
Halbzyklcn der Ausgaing FL erregt bleiben muß. Für die Beschreibung ist es daher einfacher, davon
auszugehen, daß ein von einer Datenverarbeitungseinheil stammender Aufruf zwei getrennte
h umfaßt, von denen die eine einen Lcsc-
Halbzyklus und die andere einen Schreib-Halhzyklus steuert, wobei im Auf ruf register RA die gleiche
Codegruppe des betroffenen Zonenadressenregisters .vo ...sm wiederholt wird, jedoch mit einer Änderung
des Befehlsbuchstabens von einer Phase zur anderen. Falls der Inhalt des Befehlsspeichers MO bereits voi eingegeben
ist, kann der Übergang von FO auf FL dadurch erfolgen, daß in einer Anordnung DO und
DL zuvor eine Decodierung der Funktionscodegruppe erfolgt, die von der rufenden Datenverarbeitungseinheit
in der einen und dann in der anderen Aufrufphase abgegeben wird, wodurch entsprechend
der Funktiofiiscodegruppe entweder ein »erster« »der
ein »zweiter« Austausch-Halbzyklus ausgelöst wird.
»5 In der Praxis wird es in den meisten Fällen vorzuziehen
sein, die Schaltungen RA/MO zu verdoppeln und eine
automatische Umschalteinrichtung vorzusehen, welche den zuvor beschriebenen Ablauf gewährleisten.
wenn zwei Datenverarbeitungseinheiten mit zeitlicher
»o Überlappung Zugang zum Speicher M anfordern
Die Ausgangssignale des Lese'Schreib-Registcrs
R, die außerdem nach irgendeinem klassischen Verfahren, das hier nicht näher beschrieben und dargestellt
zu werden braucht, für die Auswahl der durch seinen Inhalt bezeichneten Speicherzone verwendet
werden, werden für den hier beabsichtigten Zweck den Eingängen einer digitalen Schaltung Gl zugeführt,
von der ein weiterer Eingang mit dem Ausgang FO des Befehlsspeichers MO verbunden ist, damit
die digitale Schaltung Gl bei der Erregung dieses Ausgangs FO geöffnet wird. Die digitale Schaltung
Gl kann also bei erregtem Ausgang FO für eine besondere, im Lese/Schreib-Register R enthaltene
Codegruppe ein Ausgangssignal abgeben. Die digitale
Schaltung Gl kann einfach ein Und-Gatter sein, das an seinen Eingängen die entsprechend gewählten direkten
oder komplementären Ausgangssignalc der Stufen des Lese/Schreib-Registers R für die Definition
dieser Codegruppe empfängt. Diese besondere
Codegruppe zeigt an, daß die betreffende Speicherzone bereits für eine andere Austauschoperation »besetzt«
ist, und sie wird deshalb nachfolgend »Besetztcodegnippe« genannt.
Das Ausgangssignal der digitalen Schaltung Gl
wird einem Eingang eines Gatters G2 zugeführt, dessen
anderer Eingang an den Ausgang eines von zwei Gattern G4 angeschlossen ist, die im Zustand FO aktiviert
sind und die den Phasen r, und r2 zugeordneten Taktsignale vom Taktgeber BT empfangen. Das dem
Gatter Gl zugeführte Taktsignal ist das Signal der Phase I2. Der Ausgang des Gatters Gl ist mit dem
Eingang eines bistabilen Organs, beispielsweise einer Kippschaltung B verbunden. Der andere Eingang der
Kippschaltung B ist an den Ausgang eines Gatters Gl
angeschlossen, das das Taktsignal T0 vom Taktgebet
empfängt und bei erregtem Ausgang FO geöffnet ist.
Die Ausgänge der Kippschaltung B sind mit (1) und (O) bezeichnet. Die Kippschaltung befindet sich inRuhezustand, wenn ihr Ausgang (O) den Wert »wahr«
und ihr Ausgang (1) den Wert »falsch« führen, wäh rend sich diese Bedingungen umkehren, wenn sich di<
Kippschaltung im Arbeitszustand befindet. Die Aus gänge (1) und (O) sind mit Klemmen NEL und EL
der Verbindungschnittstelle IL über Gatter GS ver
bundcn, die durch das Taktsignal I2 im ersten Halb
zyklus (Fo) mit einer geringfügigen/Verzögerung gc gcnüber dem Anlegen des gleichen Taktsignals an da
Gatter G2 geöffnet werden. Vorzugsweise ist dav<v
auszugehen, daß die Klemmen NEL und EL in der Verbindungsschnittstelle eine Kippschaltung für die
Speicherung der Zustände der Klemmen NEL und EL ansteuern, wobei diese Zustande natürlich stets
zueinander komplementär sind. Bei jedem Speicheraufruf durch eine Datenverarbeitungseinheit in der
Funktion FO prüfen die Aufsufschaltungen dieser Datenverarbeitungseinheit den Zustand dieser Kippschaltung
nach der Phase f„ um festzustellen, ob der
Aufruf angekommen ist oder nicht, ob also die angeforderte Speicherzone als frei oder als besetzt erkannt
worden ist.
Es sei ein Aufruf durch eine" Datenverarbeitungseinheit in der Funktion FO betrachtet. In der Phase
fu des Taktgebers BT wird die die angeforderte Speicherzone
bezeichnende Codegruppe durch öffnen der Eingangsschaltung Go in das Aufrufregister RA eingegeben,
und das Lese/Schreib-Register R wird auf Null zurückgestellt. Gleichzeitig wird auch die Kippschaltung
B über das Gatter G3 auf Null (in den Ruhezustand) zurückgestellt. In der Phase i, erfolgt über
das vom Ausgang FO geöffnete Gatter G4 das Lesen des Inhalts desjenigen Zonenadressenregisters der
Zonenadressenregistergruppe so... sm, das durch die im Aufrufregister RA enthaltene Codegruppe bezeichnet
ist, wodurch diese Codegruppe in das Lese/ Schreib-Register R eingegeben wird. In der Phase t2
wird die erforderliche Prüfung durchgeführt: In der Phase r, wird der Inhalt des Lese/Schreib-Registers R
von der digitalen Schaltung »decodiert«. Wenn der Inhalt des Lese/Schreib-Registers R der Besetztcodegruppe
entspricht (weil diese sich in dem durch den Aufruf gewählten Zonenadressenregister
so... sm befand), so nimmt der Ausgang der digitalen
Schaltung Gl in der Phase r, den Wert »wahr« an. was die Tatsache anzeigt, daß die aufgerufene Speicherzone
besetzt worden ist. Wenn dagegen der Inhalt des Lese/Schreib-Registers R von der Besetztcodegruppe
verschieden ist, nimmt der Ausgang der digitalen Schaltung Gl den Zustand »falsch« an, was den
Freizustand der aufgerufenen Speicherzone anzeigt. Im ersten Fall verursacht, sobald die Phase t2 beginnt,
das »Lesen« des Ausgangssignals der digitalen Schaltung Gl durch das Gatter Gl die Einstellung der
Kippschaltung B in den Aibeitszustand, so daß deren Ausgang (0) auf den Wert »falsch« geht, der dann
an die Klemme EL angelegt wird, wodurch dieser frühere Besetztzustand an der Verbindungsschnittstelle
IL markiert wird und dei rufenden Datenverarbeitungseinheit
mitgeteilt wird, daß ihr Aufruf nicht angekommen ist. Im zweiten Fall bleibt bei diesem «Lesen«
die Kippschaltung B in ihrem Ruhezustand, so daß der Ausgang (0) auf dem Wert »wahr« bleibt,
der dann beim Öffnen des entsprechenden Gatters G5 an die Klemme EL angelegt wird, wodurch der rufenden
Datenverarbeitungseinheit mitgeteilt wird, daß ihr Aufruf angekommen ist und der angeforderte
Austausch stattfinden wird.
Jeder Aufruf, der angekommen ist, muß noch im gleichen Halbzyklus unmittelbar die Besetzung der
gerufenen Speicherzone gewährleisten; dies bedeutet mit anderen Worten, daß die Besetztcodegruppe in
das betreffende Zonenadressenregister so... sm (d. h. das durch die dann im Aufrufregister RA vorhandene
Codegruppe bezeichnete Zonenadressenregister) gebracht werden muß. Es müssen also Schaltungen vorhanden
sein, welche die Besetztcodegruppc in diesem Zoncnadressenngistcr «erzwingen«, beispielsweise
durch das Ablesen eines die Besetztcodcgruppe enthaltenden Speichers Co, das durch die Änderung des
Ausgangswertes eines der Gatter GS in dem Augenblick ausgelöst wird, in dem dieses Gatter durch die
Vorderflanke des verzögerten Taktsignals I1 geöffnet
wird, wenn sich der Ausgang (0) der Kippschaltung B
auf dem Wert »wahr« befindet. Gemäß einer besonderen Ausführungsform kann jedoch die Besetztcodegruppe
vorzugsweise so gewählt werden, daß sie
ίο dem Vorhandensein von »lauter Nullen« in dem durch
die Adresse im Aufrufregistcr RA bezeichneten Zonenadressenregister
entspricht. Mit dieser Besetztcodcgruppe vereinfacht siich die »Erzwingung« auf
eine einfache Rückstellung auf Null (Löschen des In-
IS halts) des Zonenadressenregisters. Falls die Zonenadressenregister
so... sm so beschaffen sind, daß ihr Inhalt beim Ablesen gelöscht wird, ist die Erzwingung
überflüssig, weil die Besetztcodegruppe mit »lauter Nullen« in der Phase f, bei der Funktion FO, also
in jedem »ersten« Halbzyklus eines Austausche, automatisch erhalten wird. Die Gatter GS können dann,
falls erwünscht, sogar entfallen. Unabhängig von der für die Besetzung einer Speicherzone bei der beschriebenen
Anordnung gewählten Ausführungsform
as empfängt jede Datenverarbeitungseinheit, die den
Zugang zu einer Speicherzone anfordert, die vorher von einer anderen Datenverarbeitungseinheit besetzt
worden war, eine positive Information darüber, daß ihr Aufruf nicht angekommen ist, so daß sie dementsprechend
den Ablauf ihres Arbeitsprogramms ändern kann. Es ist auch klar, daß jeder Speicherzugangsaufruf
durch eine Datenverarbeitungseinheit, der vor der Freigabe einer in der beschriebenen Weise
besetzten Speicherzone erfolgte und keine besetzte Speicherzone beträfe, normal ankommen würde, was
der rufenden Datenverarbeitungseinheit angezeigt würde und die Besetzung der gerufenen Speicherzone
zur Folge hätte. Diese Bedingungen ermöglichen also ohne weiteres die Überlappung von zwei oder, falls
erwünscht, sogar von mehr Aufrufen, die von verschiedenen Datenverarbeitungseinheiten stammen.
Zur Freigabe einer Speicherzone nach dem Austausch schickt die Datenverarbeitungseinheit die
Codegruppe, die das Zonenadressenregister so... sm
bezeichnet, das der freizugebenden Speicherzone entspricht,
und es aktiviert den Befehlsspeicher MO mit dem Funktionsbuchstaben FL, wodurch die beiden
Gatter G6 an Stelle der beiden Gatter G4 für die Ausführung dieses Befehls entsperrt werden. In der
Phase /„ des Taktgebers BT" wird das Lese/Schreib-Register
R auf Null zurückgestellt. In der Phase r, muß das Lese/Schreib-Register R mit der Codegruppe
gefüllt werden, die in das betroffene Zonenadressenregister so...sm einzugeben ist,das zuvor in
den Zustand »Besetzt« gebracht worden war. In der Phase /2 erfolgt dann das Einschreiben des Inhalts des
Lcsc/Schreib-Registcrs R in dieses Zonenadressenregister so... sm. Die in das Lese/Schreib-Register R
während der Phase r, des Funktionsbuchstabens FL eingegebene Codegruppe könnte von einem »Datenabschnitt«
des Befehlsspeichers MO und insbesondere von einem Abschnitt des Aufrufregisters RA
stammen, denn dieses Aufrufregister bildet theoretisch einen Teil des Befehlsspeichers AfO (wobei der
Unterschied darin besteht, daß das Aufrufregister RA /wangläufig mit Daten gefüllt wird, die von der rufenden
Datcnvcrarbeitungscinhcit stammen, während der Befehlsspcichcr MO. wie bereits erwähnt wurde
509 622/210
zuvor mit einem Befehl beschickt werden kann und dann durch den Aufruf der Datenvcrarbeitungseinheit
nur aktiviert wird). Aus diesem Grund ist in dem Schema angedeutet, daß das Taktsignal /, bei der
Funktion FL wenigstens einen Teil des Inhalts des Aufrufregisters RA abliest, der zu diesem Zweck einer
Gattergruppe Gl zugeführt wird.
In der Praxis ist es oft vorteilhaft, die Zonenadres-
10
senregistergruppe so.. .im in Form eines sogenanr
ten »Assoziativspeichers« (inhaltadressiertcn Spei chers) auszubilden. In diesem Fall ist natürlich de
in das Aufrufregister RA für einen Aufruf durch ein Datenverarbeitungseinheit eingebrachte Inhalt m
dem Inhalt des die gewünschte Speicherzone kenr zeichnenden Zonenadressenregisters so.. .sm ider
tisch.
Hierzu 1 Blatt Zeichnungen
Claims (5)
- Patentansprüche:L Anordnung zur Durchführung des Informationsaustausches über eine Schnittstelle zwischen Datenverarbeitungseinheiten und einem Datenspeicher mit zerstörendem Ablesen, der in Zonen organisiert ist, denen Adressen zugeteilt sind, die jweils in einem zugeordneten Zonenadressenregister gespeichert sind, wobei die Zonenadressenregister eine Zonenadressenregistergrappe bilden, der ein Aufrufregister und ein Lese/Schreib-Register für jede aus einem Zonenadressenregister entnommene oder in ein solches Register eingegebene Codegruppe zugeordnet ist, wobei jede Austauschoperation einen ersten Halbzyklus für das Lesen des Inhalts einer Datenstelle in dem Speichei· und einen zweiten Halbzyklus für das Wiedereinschreiben der gelesenen Information in den Speicher, gegebenenfalls nach einer Änderung *° dieser Information, umfaßt, und wobei eine Unterscheidung zwischen einer Zonenadressencodegruppe und einer besonderen, den Besetztzustand einer Zone anzeigenden Besetztcodegruppe erfolgt, gekennzeichnet durch »5a) einen verdrahteten Decodierer (Gl), der an Ausgänge des Lese/Schreib-Registers (R) angeschlossen ist und dessen Ausgang bei der Decodierung de·. Besetztcodegruppe im Lese/Schreib-Register (R) einen bestimmten Signalwert annimmt;b) ein bistabiles Glied (B), das wenigstens einen Ausgang hat, der an eine Klemme (NEU EL) der Schnittstelle (IL) ein Potential zur Markierung dieser Klemme je nach dem Zustand des bistabilen Gliedes anlegt,c) eine Torschaltungsanordnung (FO, G4, G2), die im ersten Halbzyklus jeder Austauschoperation die Verbindung zwischen dem Ausgang des Decodierers (GIj und einem Einstelleingang des bistabilen Gliedes (B) freigibt;d) eine Schaltungsanordnung, die auf den Zustand des bistabilen Gliedes (B) anspric'tt und dann, wenn die Besetztcodegruppe in einctn ersten Halbzyklu> nicht in dem Lese/ Schieib-Rjfiislei (R) sieht noch im gleichen ersten Hilbzyklus die Ei'igabe der Besei^icodegnippe in das ZoneüudrcssenregiM :\ (ft, .sm) erzwingt, dessen Inhalt 111 d.is 5a Lese Schreib Register [R) gerufen wurden ist.
- 2. Anordnung nach Anspruch 1, gekenir/uchnet durch eine Einrichtung (GJ), die das bistabile Glied (B) am Beginn des ersten Halbzyklus jeder Auhtauschoperation in einen vorbestimmten Zustand einstellt.
- 3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß bei Verwendung einer Besetzlcodegruppe, die aus lauter Ziffern Null besteht, zur Erzwingung der Eingabe der Besetztcodegruppe an allen Stellen des betreffenden Zonenadressenregisters (so.. .sm) Nullen eingeschrieben werden.
- 4. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß bei Verwendung einer Bcsetztcodegruppe, die aus lauter Ziffern Null besteht, jedes der Zonenadressenregister (so... sm) so ausgebildet ist, daß sein Inhalt beim Lesen gelöscht wird. uu^
- 5 Anordnung nach einem der vorhergehenden Ansprüche, gekennzeichnet durch Schaltungen (MO DF) die ein Funkiionssignal (FO) erzeugen das für den ersten Halbzyklus jeder Austauschoperation kennzeichnend ist und die Feststellung des Besetztzustandes bzw. Freizustandes der betroffenen Speicherzone auslöst, und die ein Funktionssignal (FL) erzeugen, das für den zweiten Halbzyklus jeder Austauschoperation kennzeichnend ist, und die Freigabe der Speicherzone auslöst, mit welcher der Austausch stattgefunden hat.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR7103446A FR2123833A5 (de) | 1971-02-02 | 1971-02-02 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2204883A1 DE2204883A1 (de) | 1972-08-17 |
DE2204883B2 DE2204883B2 (de) | 1974-10-17 |
DE2204883C3 true DE2204883C3 (de) | 1975-05-28 |
Family
ID=9071263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19722204883 Expired DE2204883C3 (de) | 1971-02-02 | 1972-02-02 | Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher |
Country Status (7)
Country | Link |
---|---|
JP (1) | JPS5237745B1 (de) |
BE (1) | BE778295A (de) |
DE (1) | DE2204883C3 (de) |
FR (1) | FR2123833A5 (de) |
GB (1) | GB1373720A (de) |
IT (1) | IT948984B (de) |
NL (1) | NL152677B (de) |
-
1971
- 1971-02-02 FR FR7103446A patent/FR2123833A5/fr not_active Expired
-
1972
- 1972-01-20 BE BE778295A patent/BE778295A/xx not_active IP Right Cessation
- 1972-01-21 NL NL7200868A patent/NL152677B/xx not_active IP Right Cessation
- 1972-02-01 IT IT6729172A patent/IT948984B/it active
- 1972-02-01 GB GB472272A patent/GB1373720A/en not_active Expired
- 1972-02-02 JP JP1148172A patent/JPS5237745B1/ja active Pending
- 1972-02-02 DE DE19722204883 patent/DE2204883C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
NL7200868A (de) | 1972-08-04 |
BE778295A (fr) | 1972-05-16 |
DE2204883B2 (de) | 1974-10-17 |
DE2204883A1 (de) | 1972-08-17 |
GB1373720A (en) | 1974-11-13 |
IT948984B (it) | 1973-06-11 |
FR2123833A5 (de) | 1972-09-15 |
JPS5237745B1 (de) | 1977-09-24 |
NL152677B (nl) | 1977-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69217761T2 (de) | Lese- und Schreibschaltung für einen Speicher | |
DE1499182C3 (de) | Datenspeichersystem | |
DE1302494B (de) | ||
DE2230103A1 (de) | Adressiereinrichtung fuer einen speicher | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE1424762B2 (de) | Datenverarbeitungsanlage | |
DE1499203B1 (de) | Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb | |
DE2212873A1 (de) | Aus Schieberegistern aufgebaute Speichereinrichtung | |
DE1901343B2 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2457612B2 (de) | Mikroprogrammier-Steuereinrichtung | |
DE1286789B (de) | Einrichtung an einem elektronischen Ziffernrechner zum schnellen Datenaustausch zwischen der Verarbeitungseinheit und dem zentralen Speicher | |
DE2036729A1 (de) | Digital Datenverarbeiter | |
DE1774052B1 (de) | Rechner | |
DE1774870C3 (de) | Einrichtung zur Adressierung einer Speicherzelle eines Speichers in einer Datenverarbeitungsanlage | |
DE2019444A1 (de) | Datenverarbeitungsanlage | |
DE1574499A1 (de) | Speicheranordnung fuer binaere Daten unter Verwendung einer geschlossenen Datenumlaufschleife | |
DE1524788A1 (de) | Schaltungsanordnung zur Erkennung und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern | |
DE2417578A1 (de) | Verfahren und vorrichtung zum beruecksichtigen der dynamischen aenderungen eines programms | |
DE2064383B2 (de) | Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen | |
DE2625113A1 (de) | Speicherschutzeinrichtung | |
DE2418921A1 (de) | Vorrichtung und verfahren zum speichern und ausfuehren von mikroprogrammen in einem datenverarbeitungssystem | |
DE2204883C3 (de) | Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher | |
DE2110458C3 (de) | Speicheranordnung in einem datenverarbeitenden System | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE3016269C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |