DE2204883C3 - Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher - Google Patents

Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher

Info

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
Application number
DE19722204883
Other languages
English (en)
Other versions
DE2204883A1 (de
DE2204883B2 (de
Inventor
Alice Maria Chatenetmalabry Recoque (Frankreich)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
Original Assignee
INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie filed Critical INTERNATIONALE POUR L' INFORMATIQUE LOUVECIENNES (FRANKREICH) Cie
Publication of DE2204883A1 publication Critical patent/DE2204883A1/de
Publication of DE2204883B2 publication Critical patent/DE2204883B2/de
Application granted granted Critical
Publication of DE2204883C3 publication Critical patent/DE2204883C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/52Indexing scheme relating to G06F9/52
    • G06F2209/521Atomic

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
S und dessen Ausgang bei der Decodierung der
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)

  1. 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 »5
    a) 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. 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. 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. 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. 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.
DE19722204883 1971-02-02 1972-02-02 Anordnung zur Durchführung des Informationsaustauschs zwischen Datenverarbeitungseinheiten und einem Datenspeicher Expired DE2204883C3 (de)

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)

Also Published As

Publication number Publication date
DE2204883A1 (de) 1972-08-17
NL7200868A (de) 1972-08-04
JPS5237745B1 (de) 1977-09-24
NL152677B (nl) 1977-03-15
GB1373720A (en) 1974-11-13
FR2123833A5 (de) 1972-09-15
IT948984B (it) 1973-06-11
DE2204883B2 (de) 1974-10-17
BE778295A (fr) 1972-05-16

Similar Documents

Publication Publication Date Title
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
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
DE2519195C2 (de) Assoziativspeicher
DE1296429B (de) Datenbearbeitungsanlage
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