DE2362117C3 - - Google Patents
Info
- Publication number
- DE2362117C3 DE2362117C3 DE19732362117 DE2362117A DE2362117C3 DE 2362117 C3 DE2362117 C3 DE 2362117C3 DE 19732362117 DE19732362117 DE 19732362117 DE 2362117 A DE2362117 A DE 2362117A DE 2362117 C3 DE2362117 C3 DE 2362117C3
- Authority
- DE
- Germany
- Prior art keywords
- read
- active
- memory
- command
- arrangement
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Storage Device Security (AREA)
- Static Random-Access Memory (AREA)
Description
65
Die Erfindung betrifft eine Datenverarbeitungsanlage nach dem Oberbegriff des Anspruchs 1.
Derartige Datenverarbeitungsanlagen sind bekannt.
Die Bits im Speicher sind in Speicherwörtern zusammengefaßt, die ausgelesen, modifiziert und rückgeschrieben
werden können, und zwar in dieser Reihenfolge. Die Lese- und Schreibvorgänge erfolgen immer in
der gleichen Phase eines Zweiphasenspeicherzyklus, so daß beim Modifizieren dann zumindest zwei Speichsrzyklen
benötigt werden. Der Inhalt der Speicheranordnung kann für diese Zeit vor weiteren Lese- und
Schreibbefehlen geschützt werden. Bei aktiven Anordnungen mit sehr häufigem Speicherzugriff wie Zentraleinheiten
kann die Wartezeit für die anderen aktiven Anordnungen sehr lang werden.
Bei der Reihenfolge der Vorgänge bei einem Speicherzugriff kann einer der drei Vorgänge durch
einen blinden Befehl ausgelassen werden. Dadurch ergibt sich ein einphasiger Zyklus, in dem Lesen,
Schreiben oder Modifizieren erfolgt. Dabei beansprucht das Modifizieren immer eine längere Zeit
Die Zustands-Bits geben den Aktivitätszustand eines Teils der Datenverarbeitungsanlage an, z.B. eines
Speichersegmentes oder eines Peripheriegerätes. Abhängig von dem Aktivitätszustand der Teile müssen
unterschiedliche Maßnahmen ausgelöst werden. Es ist notwendig, bestimmte Daten mehreren aktiven Anordnungen
mitzuteilen, obwohl diese Daten nur einmal gespeichert sind. Dies gilt z. B. für den Aktivitätszustand
eines Peripheriegerätes.
Wenn dür Schutz des Speichers vor weiteren Lese-
und Schreibbefehlen während der beiden Phasen eines Zweiphasenspeicherzyklus fortgelassen wird, vergrößert
sich zwar die Verarbeilungsgeschwindigkeit der gesamten Anlage, jedoch wird die Zuverlässigkeit
verringert, weil während des Modifizierens eines Wortes durch eine erste aktive Anordnung eine zweite
aktive Anordnung dasselbe Wort auslesen und modifizieren kann. Dadurch ist die Information dieses Wortes
nicht mehr eindeutig bestimmt, und es entstehen daraus beim Rückschreiben Fehler. Dieser Nachteil kann
dadurch vermieden werden, daß die erste aktive Anordnung in einem »Aufforderungszyklus« arbeitet
und damit den Speicher bzw. einen Teil des Speichers belegt. Für die zweite aktive Anordnung kann die
Wartezeit dann wieder zu lang sein.
Aufgabe der Erfindung ist es, ausgehend von einer Datenverarbeitungsanlage der eingangs genannten Art,
die Wartezeiten für Speicherzugriffe aktiver Anordnungen zu verringern. Diese Aufgabe wird erfindungsgemäß
durch die im Kennzeichen des Hauptanspruchs angegebenen Merkmale gelöst.
Mit den im Anspruch angegebenen Maßnahmen wird der Inhalt des Speichers wirksam geschützt und er bleibt
trotzdem sehr flexibel, denn es kann während der Modifikation nach einem ersten Lesebefehl, während
der der Speicher nicht benötigt wird, irgendeine andere aktive Anordnung mit einem zweiten Lesebefehl und
gegebenenfalls zweiten Schreibbefehl auf den Speicher zugreifen, wobei bei diesen zweiten Lese- und
Schreibbefehlen keine Modifikation eines Zustands-Bits erfolgt. Eine Aufforderungseinheit kann auch mehreren
Zustands-Bits zugeordnet sein. Wenn ein Zustands-Bit zur möglichen Modifizierung (dies kann auch die
»0«-Modifikation sein) behandelt wird, darf für dieses Zustands-Bit oder diese Gruppe von Zustands-Bits kein
Aufforderungsbefehl zugelassen werden, weil dann die Information des Zustands-Bits unsicher ist. Durch
Teilung des Aufforderungszyklus in zwei Teile können in dem Zeitbereich zwischen erstem Lesebefehl und
erstem Schreibbefehl zweite Lese- und Schreibbefehle
10
15
20
25
durchgeführt werden. Die Erfindung ist insbesondere für sogenannte allgemeine Speicher geeignet, die also
für mehrere aktive Anordnungen zugänglich sind.
Weitere Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet
Ausführungsbeispiele der Erfindung werden nachstehend anhand der Zeichnung näher erläutert Es zeigt
F i g. 1 einen Speicher mit Zustands-Bits,
Fig.2 ein einfaches Blockschaltbild einer Datenverarbeitungsanlage
nach der Erfindung,
F i g. 3 einen achtfachen Taktimpulszyklus,
F i g. 4 eine aktive Anordnung,
F i g. 5 eine Durchverbindungseinheit
Die zu beschreibende Datenverarbeitungsanlage enthält aktive Anordnungen, eine Durchverbindungseinheit
und eine Speicheranordnung. Die aktiven Anordnungen können Datenverarbeitungsanlagen
(Zentraleinheiten), Peripheriegeräte oder datenverarbeitende Anpassungs- und Steuergeräte für Peripheriegeräte
(I/0-Einheiten) sein. Peripheriegeräte können z. B. Magnetplattenspeicher, Fernschreibkabel, Tastenfelder
oder Leser sein. Die Speicheranordnung kann einen oder mehrere Speicher enthalten. Die Durchverbindungseinheit
verbindet die Teile der Datenverarbeitungsanlage miteinander.
Die F i g. 1 zeigt als Ausführungsbeispiel einen Matrixspeicher. Er enthält 24 Wörter 01 ... 24 mit je
acht Bits, die für das erste Wort von 011 ... 018, für das
zweite Wort von 021... 028, für das letzte Wort von 241 ... 248 numeriert sind. Die Bits 011, 02t, 031, 041, 051,
061,071,081,091 ... 098 und 101 sind durch einen Kreis
als Zustandsbit bezeichnet Die Information kann auf zwei Weisen verwendet werden. Bei einem »normalen«
Zyklus wird das Wort ausgelesen und unverändert rückgeschrieben. Die Information steht damit zur
Verfügung. Information, die für nur eine aktive Anordnung von Interesse ist, darf in einem normalen
Zyklus modifiziert werden.
Die Wörter 01,02... 08 enthalten je eine Information
eines Peripheriegeräts, z. B. eines Fernschreibekabels. Wenn dessen Zustandsbit »1« ist, ist das Kabel aktiv,
z. B. durch eine Zentraleinheit für Datenübertragung belegt Das zweite Bit kann a^ge^en, ob gesendet oder
empfangen wird. Der Rest gibt eine oder mehrere Adressen an, an die oder von denen Daten übertragen
werden. Wenn das Kabel inaktiv wird, muß da1·
Zustandsbit auf »0« gestellt werden. Bei vielen Kabeln beteiligen sich z. B. nur die aktiven in einem
Zeitmultiplex, um die Wartezeit zu verringern. Einer Nachricht geht z. B. ein Startsignal voran, das in einem
der Wörter 01 ... 18 das Zustandsbit auf »1« stellt; der Rest der Nachrichtendaten wird in der vom Rest des
betreffenden Wortes spezifizierten Adresse im Speicher aufgenommen. Die Nachricht wird durch ein Stopsignal
beendet, das das betreffende ZustandsbL auf »0« rückstellt und die Adresse modifiziert, so daß eine neue
Adresse für eine folgende Nachricht gebildet wird. Beim Absenden werden von einem Rechenwerk Start- und
Stopsignale erzeugt Die Adresse gibt an, an welcher Stelle ausgelesen wird.
Auf gleiche Weise kann eine zentrale Verarbeitungseinheit die Zusendung neuer Daten anfordern, z. B.
wenn das Peripheriegerät ein Leser ist, der nach der Erkennung durch die zentrale Verarbeitungseinheit
Information eines neuen Zeichens anfordert.
Das Wort »09« enthält Unterbrechungsinformationen und besteht völlig aus Zustandsbits. Das Bit 091 gibt
z. B. an, ob die Netzspannung genügt, das Bit 092, ob die
35
45
50
55
60
65 Betriebstemperatur innerhalb gewisser Grenzen bleibt das Bit 093, ob die Ventilatoren in Betrieb sind, das Bit
094, ob sich die Magnetplatten mit der richtigen Geschwindigkeit drehen. Wenn alle Bits »1« sind, kann
ohne Einschränkung gearbeitet werden, und wenn ein oder mehrere Bits »0« sind, sind Maßnahmen zu treffen:
Es muß z. B. gestoppt oder auf ein Notstromaggregat umgeschaltet werden. Die Information kann auch zum
Signalisieren eines defekten Peripheritgerätes benutzt werden. Wenn ein Unterbrechungssignal ankommt,
wird ein Zustandsbit »0« erzeugt Wenn zwei Unterbrechungssignale ankommen, werden sie der Reihe nach
behandelt Somit kann eine zweite aktive Anordnung das Wort erst nach der Schreibphase des Aufforderungszyklus
lesen.
Die Wörter 10... 16 bilden ein Segment in dem z. B.
ein Programm zum Berechnen des Sinus eines Winkels gespeichert ist Die Programmbefehle sind in den
Wörtern 10... 13 gespeichert Die Wörter 14... 16 sind
für Zwischendaten belegt, die beim Programm gewonnen werden und einige Zeit aufbewahrt werden müssen.
Wenn sich das Zustandsbit (101) in der »1«-Stellung befindet, wird eine Sinusberechnung ausgeführt. Die
Wörter 17... 24 sind frei. Wenn nun zwei Rechenanordnungen beide einen Sinus (verschiedener Winkel)
berechnen wollen, kann dies mit Hilfe der Programmbefehle aus den Wörtern 10... 13 erfolgen. Die Wörter 14
... 16 sind für Zwischendaten verfügbar. Die erste Rechenanordnung kann jetzt die Wörter 10 ... 16
verwenden. Die zweite kann zwar die feste Information der Wörter 10 ... 13 benutzen, muß aber die
Zwischendaten an anderer Stelle speichern, z. B. in den Wörtern 17 ... 19. Die Anordnung arbeitet jetzt wie
folgt Wenn eine Rechenanordnung einen Sinus berechnen will, stellt sie das Zustandsbit (Bit 101) auf
»1«. Eine zweite Rechenanordnung ist dazu nicht mehr in der Lage und muß infolgedessen statt der Wörter 14
... 16 andere Wörter zum Speichern von Zwischendaten benutzen. Zwar kann sie den Inhalt der Wörter 10... 13,
gegebenenfalls den Inhalt der Wörter 14 ... 16 gebrauchen, aber die Information kann dadurch nicht
modifiziert werden. Wenn also im Programm der Auftrag vorkommt: »Speichere das Zwischenergebnis
in der Wortstelle 14«, so übersetzt die zweite Rechenanordnung dies, als wäre geschrieben »...
Wortstelle 17«. Am Ende der Berechnung stellt die erste
Rechenanordnung das Bit 101 auf »0«.
Die F i g. 2 zeigt ein Blockschaltbild einer erfindungsgemäßen Datenverarbeitungsanlage. Die Datenverarbeitungsanlage
enthält zwei Speicher BANKO und BANK 1, eine Durchverbindungseinheit SWITCH, die
den Zugang zu den Speichern und die Aufforderung regelt, und zwei aktive Anordnungen PROCA und B.
Jeder Speicher enthält zwei Zustandsbits SßOl, 02, 11, 12. Die Durchverbindungseinheit SWITCH enthält zwei
Aufforderungseinheiten CFFO und CFFl.
Die aktiven Anordnungen PROCA und B können
Daten bearbeiten und/oder zu bzw. aus angeschlossenen, aber nicht gezeichneten Peripheriegeräten übertragen.
Gegebenenfalls könnten sie auch selbst ein schnelles Peripheriegerät sein. Weiter ist ein Taktgenerator
CL vorgesehen, der den in der F i g. 3 auf den Linien A bis H angegebenen achtfachen Taktimpuls
liefert. Die gegebenenfalls mehrfachen Verbindungen zwischen der Durchverbindungseinheit SWITCH und
den anderen Teilen der Datenverarbeitungsanlage bilden spezifische Schnittstellen. Die Benennungen der
Signale werden nachher behandelt. Weitere nicht
gezeichnete Anordnungen können das Auslesen eines Wortes sperren, wenn sich darin ein Zustandsbit
befindet und der Lesebefehl nicht von einem Aufforderungsbefehl begleitet wird. Die betreffende Kennung
kann dadurch erfolgen, daß in der Durchverbindungseinheit SWITCH ein kleiner Speicher mit den Adressen
von Wörtern, die Zustandsbits enthalten, vorgesehen ist. Eine Speicheranfrage für diese Wörter muß dann einer
von zwei Anforderungen entsprechen:
a) es betrifft einen zweiten Lese-/Schreibzyklus, in dem nicht modifiziert werden darf;
b) es betrifft einen Aufforderungszyklus.
Durch Vergleich der angeforderten mit don gespeicherten
Adressen kann weiter geprüft werden, ob obengenannte Anforderungen erfüllt sind, und es kann
gegebenenfalls ein Genehmigungssignal erzeugt werden.
Im Beispiel können in jeder aktiven Anordnung PROCA und B simultan vier Prozesse stattfinden, z. B.
nach einem internen Zeitmultiplexsystem. In jeder aktiven Anordnung ist eine Schaltung nach F i g. 4 und
ein nicht dargestellter erster Zähler vorgesehen. In der Durchverbindungseinheit SWITCH ist eine Schaltung
nach F i g. 5 und ein nicht dargestellter zweiter Zähler vorgesehen. Zunächst wird ein normaler Zyklus
beschrieben. Angenommen wird, daß in der aktiven Anordnung PROCA der Prozeß (2) Zugriff zu dem
Speicher BANKQ sucht. Dann wird das zugehörige bistabile Element PROF{2) in die »1 «-Stellung gebracht,
wodurch dieser Prozeß gestoppt w>rd. Im Falle eines Lesezugriff kippt zugleich das bistabile Element
R (2) in die »1 «-Stellung um oder bleibt in dieser Stellung, und Adresseninformation gelangt zum Adressenregister
ADREG (2). Bei einem Schreibzugriff kippt das bistabile Element R (2) in die »O«-Stellung um oder
wird in dieser Stellung festgehalten und gelangt Dateninformation zum Datenregister DATAREG(2).
Schließlich bewirkt ein Signal das Umkippen des bistabilen Elementes MRQHF(2) in die »!«-Stellung.
Das erste Bit im Register ADREG (2) gibt an, ob die Adresse sich in BANK 0 oder in BANK ί befindet.
Weiter versorgen der Taktgenerator CL und der erste Zähler die Steuerung. Zum Weiterzählen können
entsprechende Signale zusammen mit dem zugehörigen Taktimpuls in einem nicht gezeichneten UND-Glied
ankommen. Ein Taktimpuls, z. B. der /Takt Q=O ... 7), ist nur dann wirksam, wenn der Zähler die (j— 1)-Stel-Iung
einnahm. Dies ist also füry=0die 7-Stellung. Unter
der Steuerung eines Taktimpulses wird der Zähler um eine Stellung weitergeschaltet und werden Bearbeitungen
durchgeführt.
Wenn nach einem 7-Taktiumpuls ein oder mehrere der bistabilen Elemente MRQHF(i) sich in der
»1 «-Stellung befinden, die durch MRQHF(ϊ)φθ angegeben
wird, wird der folgende O-Taktimpuls durchgelassen,
unter dessen Steuerung, gegebenenfalls unter der Mitwirkung der Prioritätsanordnung PR 1, die im Falle
mehrerer eingestellter bistabiler Elemente MRQHF (i) einen Vorrang bestimmt, die Nummer des Prozesses
dem Dekoder DECi zugeführt und anschließend in den
zwei bistabilen Elementen MSPFA in binärem Kode gespeichert wird. Diese Elemente können zur Verteilung
der Daten auf eine Anzahl mit BUS-Leitungen verbundener Datenteilnehmer gegebenenfalls noch
diese BUS-Leitungen steuern. Wenn also in MSPFA gespeichert ist, daß /den Wert 2 hat, sind die Inhalte der
Register ADREG{2), R (2) und gegebenenfalls DA- TREG(T) als die Signale ADDRESSA, READA und
DATA OUTA für die Durch Verbindungseinheit SWITCH verfügbar. Im Falle eines Lesezugriffs können
Informationsdaten als Signale DATA INA empfangen
werden.
Unter der Steuerung des folgenden 1-Taktimpulses kippt das bistabile Element MRQFA über das
ODER-Glied OR 1 in die »1 «-Stellung um, wodurch ein Signal MEMREQ A »1« wird und die Durchverbindungseinheit
die Speicheranfrage annimmt. Die folgenden 2- und 3-Taktimpuise schalten den ersten Zähler in
die »3«-SteIlung.
Wenn am Endedes vorgenannten 1-Taktimpulses das bistabile Element MRQFA und/oder ein entsprechendes
Element in der aktiven Anordnung PRCCB in der
J5 »!«-Stellung steht, aktiviert der folgende 2-Taktimpuls
den zweiten Zähler. In den zwei UND-Gliedern AND 1 und 2 nach F i g. 5 kommt das Signal MEMREQ A als
eine logische »1« an. Die Signale ADDRESS Au und
ADDRESS'AO enthalten die Information des ersten Bits des Registers ADREG(2), und zwar normal und
invertiert. Wenn es also eine »0« war (die Adresse liegt in BANKO), wird über das UND-Glied AND\ das
Signal REQBANKA 0 logischerweise »1«; für BANK 1 muß das erwähnte erste Bit eine »1« sein. Die
Verzweigungswege für das Signal ADDRESS A sind einfachheitshalber weggelassen. Wenn es mindestens
eine Anfrage für den Speicher BANK 0 gibt, entsteht über das ODER-Glied OR4 ein »!«-Signal. Beim
folgenden 2-Taktimpuls wird im bistabilen Element SPRO über die Prioritätsanordnung PR 4 (für den Fall,
daß beide aktiven Anordnungen PROCA und B Zugang zu BANK 0 haben wollen) die Information gespeichert,
welche aktive Anordnung den Zugang erhält. Unter der Steuerung des 3-TaktimpuIses kippt das bistabile
Element BRQFO in die »1 «-Stellung um, so daß das Signal REQO zur Signalisierung der Anfrage logischerweise
»!« wird. Der Rest der von der aktiven Anordnung PROCA erzeugten Adresse kommt über
den Verteiler SOO als das Signal ADDRESSO beim
Speicher BANK 0 an. Weiter wird das bistabile Element RDFO in die Stellung gebracht, die dem Signa! READ A
entspricht So bildet sich das Signal READO. Die letzten zwei Bearbeitungen werden durch die Stellung des
bistabilen Elementes 5PF0 gesteuert. Der Verteiler 520 führt bei einem Schreibbefehl die Dateninformation
aus der aktiven Anordnung PROCA dem Speicher zu. Am Ende des 3-Taktimpulses ist somit im Speicher
BANK 0 bekannt, ob und an welcher Stelle Information
gelesen oder geschrieben werden muß; dieser Vorgang kann damit anfangen. Die folgenden 4- und 5-Taktimpulse
bewirken das Weiterzählen des zweiten Zählers (der erste steht still). Beim folgenden 6-Taktimpuls kippt
das bistabile Element MOKFA in die »1«-Stellung um (es wird angenommen, daß die Anfrage von PROCA
angenommen wird) und deswegen ist das Signal MEMOK A logischerweise »1«. Zwischen dem Speicher
BANK 0 und der aktiven Anordnung PROCA wirkt das bistabile Element MOKFA also als Durchflußelement,
und auf diese Weise ist die Quittung erkennbar gemacht
μ Die folgenden 7- und 0-Taktimpulse schalten den
zweiten Zähler in die »0«-Stellung. Beim Beginn des folgenden 4-Taktimpulses ist das Signal MEMOKA
vorhanden und kippt das in den bistabilen Elementen MSPFA spezifizierte bistabile Element MRQHF{2) in
die »O«SteIlung um. Der 5-Taktimpuls bringt das
bistabile Element MRQFA in die »Οκ-Stellung. Beim
6-Taktimpuls werden, wenn das bistabile Element R (2) sich in der »!«-Stellung befindet die Informationssigna-
le DATA OUTO über den Verteiler B 10 als die Signale
DATA INA in das Register DATAREC (2) eingelesen. Der folgende 7-Taktimpuls bringt das bistabile Element
PROF(2) in die »(»«-Stellung, und der Vorgang kann wie
oben wieder aufgenommen werden. Wenn am Ende des »O«-Taktimpulses das bistabile Element MRQFA in der
O-Stellung steht, kehren noch die bistabilen Elemente
BRQFQ und MOKFA in die O-Stellung zurück.
Entsprechende Einzelteile sind in der aktiven Anordnung PROCB und, wie in der Fig.5 ebenfalls
dargestellt, für den Speicher BANK 1 vorgesehen. Der ganze Lese- oder Schreibzyklus dauert somit zwei
Taktimpulszyklen. Zwischen dem 5-Takt des ersten Taktimpulszyklus und dem 6-Takt de;- /weiten Taktimpulszyklus
erfolgt das eigentliche Einschreiben/Lesen des Speichers. Das Lesen und Schreiben zusammen
erfordert vier Impulszyklen. Es können zwei Speicheroperationen gleichzeitig im Ablauf sein, z. B.
PROC A-BANKO und PROC B - BANK 1.
Zum Durchführen eines Aufforderungszyklus sind in den Γ i g. 4 und 5 zusätzliche Teile angegeben. Weiter ist
pro aktiver Anordnung für jeden Speicher immer ein dritter Zähler vorhanden. Ein Aufforderungszyklus
umfaßt Lesen, Modifizieren und Schreiben. Beim Modifizieren ist der Kontakt zwischen Prozeß und
Speicher unterbrochen, und andere Prozesse können im gleichen Speicher normale Zyklen durchführen.
Es wird wiederum vorausgesetzt, daß der Prozeß (2) in der aktiven Anordnung PROCA einen Aufforderungszyklus
in bezug auf den Speicher BANKO ausführen will. Dabei geschieht dasselbe wie bei einem
normalen Zyklus, und außerdem kippt das bistabile Element CF{2) in der F i g. 4 in die ! -Stellung um. Wenn
es in bezug auf den Speicher BANKO eine andere Aufforderungsanfrage gibt, wird diese Aufforderungsanfrage in eine normale Anfrage umgewandelt Diese
andere Aufforderungsanfrage kann sowohl in PROCA als auch in PROC B entstanden sein. Fürs erste wird die
Aufforderungsanfrage ignoriert, weil sich das bistabile Element MRQHF(I) noch in der O-Stellung befindet:
eben dadurch unterscheidet sich eine Auffordeningsanfrage
von einer normalen Anfrage.
In der Fig.4 empfängt jetzt das UND-Glied AND9
zwei logische »1 «-Signale, nämlich eines vom bistabilen Element CF(2) und den invertierten Wert des ersten
Bits (eine »0«) aus dem Register ADREG (2). Der nächste O-Takt aktiviert den dritten Zähler in der
aktiven Anordnung PROCA in bezug auf den Speicher BANK 0, und die Nummer (2) des Prozesses, der eine
Aufforderungsanfrage durchführen will, wird durch die Vermittlung der Prioritätsanordnung PR 2 und des
Dekoders DEC 2 in binärem Kode in den (2) bistabilen ElementenCLSPFA 0 gespeichert Der folgende 1-Takt
bringt über das ODER-Glied OR 2 das bistabile Element CLRQFAO in die 1-Stellung, wodurch das Signa!
CLAIMREQ AO als logische »1« in der Durchverbindungseinheit SWITCH ankommt Wenn am Ende eines
1-Taktimpulses dieses Signal oder das entsprechende Signal CLAIMREQ BO an einem Eingang des ODER-Gliedes
OR 6 vorhanden ist, wird der dem Speicher BANKO zugefügte vierte Zähler (Fig.9) unter der
Steuerung des 2-Taktimpulses weitergeschaltet und kippt außerdem das bistabile Element CLFO in die
i-Stellung um. Weiter wird, gegebenenfalls durch die
Vermittlung der Prioritätsanordnung PR 6 die Information im bistabilen Element CLSPFO gespeichert, welche
aktive Anordnung in einem Aufforderungszyklus Zugang zum Speicher BANK 0 erhält: dadurch ist dieser
Speicher jetzt aufgefordert. Der folgende 3-Takt kippt
ίο unter der Steuerung des bistabilen Elementes CLFO und
der Stellung des bistabilen Elements CLSPFO (jetzt also »0«) das bistabile Element CLOKFAO in die »1 «-Stellung
um. Wenn im CLSPFO eine »1« gespeichert ist, kappt dagegen das bistabile Element CLOKFBO um, so
daß d^s Genehmigungssignal vorliegt. Beim folgenden
2-Takt (also um fast einen Taktimpulszyklus später) ist für die aktive Anordnung PROCA das Signal
CLAlMOKAO vorhanden. Das bistabile Element MRQHF(2) kippt in die 1-Stellung um, und die Anfrage
wird weiter wie in einem normalen Zyklus mit Hilfe der bereit«! besprochenen Zähler, Verknüpfungsglieder und
Prioritätsanoruiidiigen behandelt. Der einzige Unterschied
dabei ist, daß jetzt zum Modifizieren auch Anzeigebits gelesen werden dürfen.
Dem Lesen folgt das Modifizieren, bei dem der Kontakt zwischen der aktiven Anordnung und dem
Speicher unterbrochen ist, aber das bistabile Element CLOKFA 0 in der 1-Stellung bleibt Schließlich folgt das
Rückschreiben, wie zuvor behandelt. Nach Ablauf des Schreibvorganges wird vom Prozeß (i)(i= 2) selbständig
das bistabile Element CF(2) in die 0-Steliung gebracht. Wenn dies am Ende eines 3-Taktimpulses der Fall ist,
bringt der folgende 4-TaktimpuIs das bistabile Element CLRQFQ in die O-Stellung. Beim nächsten 0-Takt kippt
in der Durchverbindungseinheit SWITCH das bistabile Element CLOKFA 0 in die O-Stellung um. Wenn eine
»1« gespeichert war, gilt dies wieder in bezug auf das bistabile Element CLOKFBO. Nach dem nächsten
1-Taktimpuls hält der erwähnte vierte Zähler an. Erst
beim nächsten 6-Taktimpuls zählt der dritte Zähler weiter, nach dem 7-Takt stoppt er wiederum und ist der
Aufforderungszyklus beendet.
Vorstehend sind die Schaltelemente immer völlig indiziert (0, 1 bzw. A, B). In der F i g. 4 sind die sich auf
einen einzigen Prozeß beziehenden Elemente immer durch ihre Nummern indiziert
Obiges ist nur ein Ausführungsbeispiel der Erfindung. In diesem Beispiel können zwei Speicheroperationen
gleichzeitig im Ablauf sein, wobei immer nur eine aktive Anordnung mit nur einem Speicher und umgekehrt
Kontakt hat Für jeden Speicher kann es eine einzige Aufforderungsanfrage geben, die in den bistabilen
Elementen CLSPFQ, 1 spezifiziert ist Diese bistabilen Elemente können gegebenenfalls aus der gleichen
., Anordnung herrühren, denn es gibt zwei Sätze von bistabilen Elementen CLSPFA (0,1). Die zugehörigen
Lese- und Schreiboperationen müssen dann aufeinander warten. Durch Zusstzmaßnahmen können gegebenenfalls
noch Aufforderungszyklen eine höhere Priorität
bo vor normalen Zyklen bekommen.
Hierzu 4 Blatt Zeichnungen
Claims (4)
- Patentansprüche:!. Datenverarbeitungsanlage mit mindestens zwei aktiven Anordnungen und mit einem Speicher, der mindestens ein Zustands-Bit enthält, dessen Wert einen Zustand von Teilen der Datenverarbeitungsanlage angibt und das durch einen ersten Lesebefehl von einer aktiven Anordnung ausgelesen und gegebenenfalls anschließend verändert und schließ- ip lieh durch einen ersten Schreibbefehl von dieser aktiven Anordnung zurückgeschrieben wird, und der weitere Bits enthält, die durch aweite Lesebefehle von einer aktiven Anordnung ausgelesen und durch zweite Schreibbefehle von jeweils derselben aktiven Anordnung zurückgeschrieben werden, und mit mindestens einem bistabilen Steuerelement, das durch ein Anfangssignal einfis Lesebefehls zur Sperrung weiterer Lese- und Schreibbefehle in die »Besetzt«-Stellung gebracht und durch ein Endesignal eines Schreibbefehls in die »Nichtbesetzt«-Stellung gebracht wird, dadurch gekennzeichnet, daß mindestens eine Aufforderungseinheit (CLOKF) vorgesehen ist, die durch einen Aufforderungsbefehl vor dem ersten Lesebefehl aus dieser aktiven Anordnung in die Stellung »Aufgefordert« und die durch einen Freigabebefehl nach dem ersten Schreibbefehl aus dieser aktiven Anordnung in die Stellung »Frei« gesetzt wird, daß das Signal am Ausgang der in der Stellung »Aufgefordert« befindlichen Aufforderungseinheit (CLOKE) ein Sperrsignal erzeugt, das weitere erste Lesebefehle und Schreibbefehle von anderen aktiven Anordnungen blockiert, jedoch für zweite Lesebefehle und zweite Schreibbefehle von aktiven Anordnungen unwirksam ist, und daß das bistabile Steuerelement (MOKF) außerdem durch ein Endesignal eines Lesebefehls in die »Nichtbesetzt«-Stellung und durch ein Anfangssignal eines Schreibbefehls in die »Besetztw-Stellung gebracht wird, wodurch zwi- ίο sehen dem ersten Lesebefehl und dem ersten Schreibbefehl zweite Lese- und Schreibbefehle wirksam sind, jedoch weitere erste Lese- und Schreibbefehle blockiert sind.
- 2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß erste und zweite Lesebzw. Schreibbefehle gleichberechtigt einer Prioritätsanordnung (PR 1, 2, 3) zugeführt werden, wenn sich die Aufforderungseinheit (CLOKF) in der Stellung »Frei« befindet.
- 3. Datenverarbeitungsanlage nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß bei Aufteilung des Speichers in eine Anzahl Speicherfelder für jede aktive Anordnung je Speicherfeld eine eigene Aufforderungseinheit (CLOKF) vorgesehen ist.
- 4. Datenverarbeitungsanlage nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, daß die Aufforderungseinheiten und die bistabilen Steuerelemente in einer die aktiven Anordnungen und den Speicher verbindenden Verbindungsanordnung angeordnet so sind.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA216,355A CA1052516A (en) | 1973-12-14 | 1974-12-18 | Process and device for the manufacture of sheeting |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7300218A NL7300218A (de) | 1973-01-08 | 1973-01-08 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2362117A1 DE2362117A1 (de) | 1974-07-18 |
DE2362117B2 DE2362117B2 (de) | 1978-06-15 |
DE2362117C3 true DE2362117C3 (de) | 1979-02-15 |
Family
ID=19817958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19732362117 Granted DE2362117B2 (de) | 1973-01-08 | 1973-12-14 | Datenverarbeitungsanlage |
Country Status (4)
Country | Link |
---|---|
DE (1) | DE2362117B2 (de) |
FR (1) | FR2213537B1 (de) |
GB (1) | GB1459450A (de) |
NL (1) | NL7300218A (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4099243A (en) * | 1977-01-18 | 1978-07-04 | Honeywell Information Systems Inc. | Memory block protection apparatus |
DE3009530A1 (de) * | 1979-03-12 | 1980-09-25 | Digital Equipment Corp | Datenverarbeitungssystem |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3413613A (en) * | 1966-06-17 | 1968-11-26 | Gen Electric | Reconfigurable data processing system |
-
1973
- 1973-01-08 NL NL7300218A patent/NL7300218A/xx unknown
- 1973-12-14 DE DE19732362117 patent/DE2362117B2/de active Granted
- 1973-12-31 GB GB6030973A patent/GB1459450A/en not_active Expired
-
1974
- 1974-01-08 FR FR7400555A patent/FR2213537B1/fr not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2362117A1 (de) | 1974-07-18 |
FR2213537A1 (de) | 1974-08-02 |
FR2213537B1 (de) | 1977-06-10 |
GB1459450A (en) | 1976-12-22 |
DE2362117B2 (de) | 1978-06-15 |
NL7300218A (de) | 1974-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1774296C2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
DE1524209B2 (de) | Programmgesteuerte datenverarbeitungsanlage | |
DE2855673C2 (de) | ||
DE2322674B2 (de) | Mikroprogramm-Steuereinrichtung | |
DE68929080T2 (de) | Anordnung zum Speichern von Informationen für einen Datenanbieterprozessor | |
DE2054830C3 (de) | Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge | |
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE2019444A1 (de) | Datenverarbeitungsanlage | |
DE2758023B2 (de) | Anschlußschaltung für eine Eingabe-/ Ausgabeschnittstelle einer Datenverarbeitungsanlage | |
DE2363846A1 (de) | Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage | |
DE3123382C2 (de) | Verfahren und Einrichtung zum Übertragen von Daten in einem Mehrprozessorsystem | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE1499206B2 (de) | Rechenanlage | |
DE1909477A1 (de) | Speichersteueranlage fuer ein Multiprogramm-Datenverarbeitungssystem | |
DE2905676A1 (de) | Integrierte schaltung mit einem einzigen chip | |
DE1180171B (de) | Zahlenrechner | |
DE102005059593A1 (de) | Verfahren und Vorrichtung zur Umschaltung bei einem Speicher für ein Steuergerät | |
DE2362117C3 (de) | ||
DE2842288A1 (de) | Datentransferschalter mit assoziativer adressauswahl in einem virtuellen speicher | |
DE2610428A1 (de) | Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher | |
DE2230727B2 (de) | Schaltungsanordnung zur dynamischen zuteilung von speicherzyklen mit vorrangssteuerung | |
EP1085387B1 (de) | Speichersteuerung zum Durchführen von Schaltbefehlen für den Zugriff auf Speicherzellen | |
DE2000608A1 (de) | Schaltungsanordnung fuer eine Nachrichtenverarbeitungs-,insbesondere fuer eine Nachrichtenvermittlungsanlage | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher | |
EP0003546B1 (de) | Mikroprogrammierbares Steuerwerk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |