DE2610428C3 - Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher - Google Patents
Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem PufferspeicherInfo
- Publication number
- DE2610428C3 DE2610428C3 DE19762610428 DE2610428A DE2610428C3 DE 2610428 C3 DE2610428 C3 DE 2610428C3 DE 19762610428 DE19762610428 DE 19762610428 DE 2610428 A DE2610428 A DE 2610428A DE 2610428 C3 DE2610428 C3 DE 2610428C3
- Authority
- DE
- Germany
- Prior art keywords
- buffer memory
- control circuit
- information
- flop
- control
- 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
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/10—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Description
Die Erfindung bezieht sich auf eine Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei
Funktionseinheiten zu übertragenden Informationseinheiten in einem Pufferspeicher, bei der durch eine erste
Steuerschaltung der Informationsverkehr zwischen dem Pufferspeicher und der ersten Funktionseinheit und!
durch eine zweite Steuerschaltung der Informationsverkehr zwischen der zweiten Funktionseinheit und dem
Pufferspeicher so gesteuert wird, daß gleichzeitig Informationseinheiten von einer Funktionseinheit zum,
Pufferspeicher und vom Pufferspeicher zu der anderen Funktionseinheit übertragen werden können und bei
der durch eine Vergleichsschaltung die Adressen der Speicherstellen des Pufferspeichers, in die Informationseinheiten
geschrieben werden, mit den Adressen der Speicherstellen des Pufferspeichers, aus denen Informationseinheiten
gelesen werden, miteinander verglichen werden, um zu verhindern, daß der Schreibvorgang von
dem Lesevorgang überholt wird und umgekehrt.
In Datenverarbeitungssystemen werden Pufferspeicher an den verschiedensten Stellen benötigt. Diese
Pufferspeicher haben z. B. die Aufgabe, Funktionseinheiten mit unterschiedlich breiten Informationswegen.
unterschiedlichen Übertragungsgeschwindigkeiten oder unterschiedlichen Realzeitverhalten aneinander anzupassen.
Ein Beispiel für die Anwendung eines Pufferspeichers innerhalb eines Datenverarbeitungssystems ist die
so Datenübertragung zwischen peripheren Einheiten und einem Arbeitsspeicher. Dann ist die eine Funktionseinheit
der Arbeitsspeicher, die andere Funktionseinheit eine periphere Einheit. Diese Datenübertragung zwischen
den peripheren Einheiten und dem Arbeitsspeieher erfolgt über ein Ein/Ausgabewerk, in dem
Steuerschaltungen, Schalter und Register enthalten sind. Die Steuerschaltungen, Register und Schalter sind dafür
verantwortlich, daß die Datenübertragung zwischen der peripheren Einheit und dem Arbeitsspeicher in richtiger
Weise erfolgt. Ein solches Ein/Ausgabewerk enthält dann auch einen Pufferspeicher, in dem die zwischen der
peripheren Einheit und dem Arbeitsspeicher zu übertragenden Daten zwischengespeichert werden.
Eine Zwischenspeicherung ist deswegen notwendig, weil die Rate, mit der die periphere Einheit Informationen
liefert oder abholt, verschieden ist von der Rate mit der der Arbeitsspeicher Informationen ausgibt oder
entgegennimmt Weiterhin kann auch die Wegebreite
der Verbindung zwischen der peripheren Einheit zum Ein/Ausgabewerk von der der Verbindung des Ein/Ausgabewerkes
mit dem Arbeitsspeicher verschieden sein. Ein solcher Pufferspeicher muß so aufgebaut sein, daß er
geeignet ist, Informationen zwischenzuspeichern, die
sowohl von der peripheren Einheit zum Arbeisspeicher
bzw. vom Arbeitsspeicher zu der peripheren Einheit übertragen werden. Zudem muß gewährleistet sein, daß
der Auslesevorgang aus dem Pufferspeicher nicht den Schreibvorsang in den Pufferspeicher überholt und
umgekehrt
Aus der deutschen Auslegeschrift 12 47 050 ist ein Pufferspeicher bekannt, bei dem vermieden wird, daß
mehr Daten aus dem Pufferspeicher ausgelesen werden als in ihm eingeschrieben worden sind. Dies geschieht
mit Hilfe von zwei Adressenregistern, die als Zähler aufgebaut sind. Das eine Adressenregister gibt die
Adresse der Speicherstelle im Pufferspeicher an, in die eine Information eingeschrieben werden soll, während
das andere Adressenregister, das ebenfalls als Zähler aufgebaut ist, die Adresse der Speicherstelle des
Pufferspeichers angibt, aus der die nächste Information ausgelesen werden soll. In einer Vergleichsschaltung
werden die Inhalte der beiden Adressenregister miteinander verglichen und ergibt der Vergleich
Identität dann bedeutet dies, daß der Auslesevorgang aus dem Pufferspeicher gestoppt werden muß.
Außerdem ist ein durch die Schreibimpulse vorwärts und durch die Leseimpulse rückwärts schaltbarer Füllstandzähler
vorgesehen, der ein Oberholen des Lesens durch das Schreiben verhindert.
Bei dieser bekannten Anordnung erfolgt der Datentransfer nur in einer Richtung. Außerdem wird
jeweils nur eine Informationseinheit vom oder zum Pufferspeicher übertragen. Eine Änderung der Übertragungsbreite,
also z. B. die Übertragung von jeweils nur einer Informationseinheit über die eine Schnittstelle
und jeweils zwei Informationseinheiten parallel über die andere Schnittstelle, oder der Zahl der in einem
Ablauf über eine der Schnittstellen zu übertragenden Informationseinheiten ist nicht möglich.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Schaltungsanordnung der eingangs genannten Art zu
schaffen, die einen fehlerfreien Datentransfer über den Pufferspeicher in beiden Richtungen in einfacher Weise
ermöglicht und zugleich die Voraussetzung für eine Änderung der Übertragungsbreite und/oder der Anzahl
der in einem ,Ablauf über eine der Schnittstellen übertragbaren Informationseinheiten schafft.
Diese Aufgabe wird gemäß der Erfindung dadurch gelöst, daß ein Steuer-Flip-Flop (FF) vorgesehen ist,
dessen Steuereingang mit der ersten Steuerschaltung (STB)und dessen Ausgang mit der zweiten Steuerschaltung
(STA) verbunden ist, daß das Steuer-Flip-Flop (FF) von der ersten Steuerschaltung (STB) richtungsabhängig
immer dann gesetzt wird, wenn eine Informationsübertragung entweder vorn Pufferspeicher zur zweiten
Funktionseinheit oder in umgekehrte· Richtung möglich ist, daß jeweils bei Übertragung der ersten
Information zwischen der zwe^r" Funktionseinheit und
dem Pufferspeicher in der einen oder anderen Richtung das Steuer-Flip-Flop zurückgesetzt wird, und daß der
Ausgang des Steuer-Flip-Flops weiterhin mit einem logischen Glied (NG2) verbunden ist, an das auch der
Ausgang der Vergleichsschaltung (VG) angeschlossen ist, und das ein Sperrsignal an die erste Steuerschaltung
(STB) liefert, wenn sowohl das Steuer-Flip-Flop gesetzt ist als auch der Vergleich der Adressen in der
Vergleichsschaltung (VG) Gleichheit erbracht hat
Das mit beiden Steuerschaltungen verbundene Flip-Flop gibt die Steuerschaltung für die eine Schnittstelle
immer frei, wenn es gesetzt ist gleichgültig, ob zum Lesen oder Schreiben. Weiterhin wird in Verbindung
mit der Vergleichsschaltung das Anlaufen der zweiten
Steuerschaltung sichergestellt, wenn normalerweise der Vergleicher sperren würde, so daß unabhängig von der
Richtung des Transfers zwischen beiden Funktionseinheiten der Schreibvorgang niemals den Lesevorgang
überholen kann und umgekehrt Mit dieser einfachen Grundschaltung ist es nun möglich, auch Änderungen
bezüglich der Informationsbreite und/oder der Informationslänge an einer der Schnittstellen gegenüber der
anderen Schnittstelle vorzunehmen, da die Setzbedingung
des Flip-Flops nur diesen geänderten Verhältnissen anzupassen ist
Die Ableitung entsprechender Setzsignale — Pufferspeicher leer, ausreichend gefüllt oder voll — ist an sich
bekannt, z. B. durch die US-PS 33 02 185. Die hierdurch
bekannte Anordnung arbeitet jedoch in anderer Weise.
Die Übertragung von Daten erfolgt nur in einer Richtung. Die verwendeten Flip-Flops werden nicht
direkt durch die Speicherzustandssignale gesetzt, sondern nur in Verbindung mit einer Anforderung des
abrufenden Computers, wobei mehrere Flip-Flops verwendet
werden. Auch wird z. B. das beim blockweisen Abrufen gesetzte Flip-Flop nach der Übertragung des
ersten Informaticnswortes nicht unmittelbar wieder zurückgesetzt, sondern erst, wenn der gesamte Block
abgerufen ist.
Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen.
Anhand eines Ausführungsbeispiels, das in den Figuren dargestellt ist, wird die Erfindung weiter
erläutert. Es zeigt
F i g. 1 ein Beispiel der Anordnung eines Pufferspeichers innerhalb eines Datenverarbeitungssystems,
F i g. 2 die erfindungsgemäße Anordnung zur Steuerung der Zwischenspeicherung von Daten in einem
Pufferspeicher.
Aus F i g. 1 ergibt sich die prinzipielle Anordnung eines Pufferspeicher PS innerhalb eines Datenverarbeitungssystems,
das einen Arbeitsspeicher ASP, ein Ein/Ausgabewerk IOC und periphere Einheiten PE
enthält. Dabei ist zwischen dem Arbeitsspeicher ASP und dem Ein/Ausgabewerk /OCeine Schnittstelle a und
zwischen dem Ein/Ausgabewerk IOC und den peripheren Einheiten PE eine Schnittstelle b angeordnet.
Zwischen dem Pufferspeicher PS und den peripheren Einheiten PE, der ersten Funktionseinheit, werden über
die Schnittstelle b Informationen ausgetauscht. Ebenso werden zwischen dem Pufferspeicher PS und dem
Arbeitsspeicher, der zweiten Funktionseinheit, über die Schnittstelle a Informationen ausgetauscht. Die dazu
erforderliche Steuerung des Pufferspeichers PSund den Schnittstellen a und b wird mit Hilfe der ersten und der
zweiten Steuerschaltung durchgeführt. Dabei steuert die erste Steuerschaltung 5TB den Informationsverkehr
zwischen Pufferspeicher PS und peripherer Einheit PE über die Schnittstelle b und die zweite Steuerschaltung
STA den Informationsverkehr zwischen dem Pufferspeicher und dem Arbeitsspeicher ASP über die
Schnittstelle a. Die Steuerschaltungen STB und STA sorgen weiterhin dafür, daß die zu übertragenden
Informationen in der richtigen Speicherstelle des Pufferspeichers PS abgespeichert werden bzw. entnommen
werden. In F i g. 1 ist nur ganz prinzipiell gezeigt, an
welcher Stelle eines Datenverarbeitungssystems ein Pufferspeicher angeordnet sein kann, auf die weitere
Ausführung der Funktionseinheiten eines solchen Datenverarbeitungssystemes wird nicht weiter eingegangen.
Aus F i g. 2 ergibt sich nun die Anordnung, durch die in Verbindung mit der ersten Steuerschaltung STB und
der zweiten Steuerschaltung STA die Zwischenspeicherung von Informationen in dem Pufferspeicher PS
ermöglicht wird. Dabei wird davon ausgegangen daß ι ο zwischen der ersten Funktionseinheit, den peripheren
Einheiten, und dem Pufferspeicher PS Informationen über Wege von 2 Byte Breite ausgetauscht werden
sollen, während die Wege-Breite bei der Übertragung von Informationen zwischen dem Arbeitsspeicher ASP \s
und dem Pufferspeicher PS4 Byte betragen soll. In dem
Pufferspeicher PS erfolgt dann eine Anpassung des unterschiedlichen Formats der Informationseinheiten,
das bei der Übertragung von und zu den peripheren Einheiten 2 Byte, bei der Übertragung von und zum
Arbeitsspeicher ASP 4 Byte beträgt Weiterhin wird davon ausgegangen, daß die Anzahl der in einem
Arbeitszyklus zwischen den peripheren Einheiten und dem Pufferspeicher PS über die Schnittstelle b zu
übertragenden Informationseinheiten eine Einheit zu 2 Byte sein soll, während die Anzahl der zwischen dem
Pufferspeicher PS und dem Arbeitsspeicher ASP über die Schnittstelle a zu übertragenden Informationseinheiten
4 Einheiten zu je 4 Byte sein soll. Dabei können 2 Byte als ein Halbwort und entsprechend 4 Byte als ein
Wort bezeichnet werden. Dann besteht ein Informationsblock aus 4 Wörtern oder 16 Byte.
F i g. 2 zeigt einen Pufferspeicher PS, der aus 4 Registersätzen PSi, PS2, PS3 und PS4 aufgebaut ist
Jeder Registersatz PSi bis PS4 kann Informationseinheiten
von einer Breite von 2 Byte aufnehmen, außerdem können jeweils 4 Informationseinheiten in
einem Registersatz PSi bis PS 4 gespeichert werden.
Somit kann in den Registersätzen PSi und PS 2
zusammen jeweils 4 Worte abgespeichert werden. Entsprechendes gilt für die Registersätze PS3 und PS 4.
Die Schnittstellen a und b sind jeweils über logische Glieder LG 1 und LG 2 mit den Registersätzen PS 1 bis
PS 4 verbunden. Dabei ist die Schnittstelle a 4 Byte
breit, also kann ein Wort übertragen werden, während die Schnittstelle b 2 Byte breit ist, also kann ein
Halbwort übertragen werden. Über die logischen Glieder LGl und LG 2 werden Informationen dem
Pufferspeicher PS zugeführt Ob die Schnittstelle b oder
die Schnittstelle a zu dem Pufferspeicher PS durchgeschaltet wird, wird durch ein Signal von der ersten
Steuerschaltung STB festgelegt, das einem logischen Glied LG 3 zugeführt wird und das z. B. binär 1 ist wenn
die Operationsrichtung von der Schnittstelle a zur Schnittstelle b geht Die Ausgangsleitungen des
Pufferspeichers PS und der Schnittstelle b sind ebenfalls dargestellt, wobei vor die Schnittstelle b ein weiteres
Iogisches Glied LG 4 geschaltet ist, durch das festgelegt
wird, welches Halbwort aus dem Pufferspeicher PSüber die Schnittstelle b zur ersten Funktionseinheit übertragen
werden soll. Ein solches Iogisches Glied ist bei der Schnittstelle a nicht erforderlich.
Die Adressen der Speicherstellen des Pufferspeichers PS, in die Information eingeschrieben bzw. ausgelesen
werden soll, wird mit Hilfe wn Adressenregistern festgelegt, die im Ausführungsbeispiel als Zähler
ausgeführt sind. Das der ersten Funktionseinheit, die mit der Schnittstelle b verbunden ist, zugeordnete Adressenregister
ist mit KZ bezeichnet, das der anderen Funktionseinheit, die an die Schnittstelle a angeschlossen
ist, zugeordnete Adressenregister ist mit MZ benannt. Die Zähltakte, durch die die Adressenregister
KZ bzw. MZ verändert werden, werden von der Steuerschaltung STB bzw. der Steuerschaltung STA
erzeugt. Die Ausgänge der Adressenregister MZ und KZ sind jeweils mit Decodierschaltungen SA und LA
verbunden. Diese Decodierschaltungen steuern dann die entsprechenden Speicherstellen im Pufferspeicher
PS an. Die Decodierschaltung SA steuert dabei die Speicherstellen des Pufferspeichers PS an, in die
Information eingeschrieben werden soll, während die Decodierschaltung LA die Speicherstellen des Pufferspeichers
PS ansteuert, aus der !nforir.ation ausgelesen
werden soll. Entsprechend führen Ansteuerleitungen von den Decodierschaltungen SA und LA zu den
einzelnen Registersätzen PSt bis PS 4 des Pufferspeichers PS.
Die Auswahl der Registersätze PS 1 bis PS 4, die beim Informationstransfer benutzt werden sollen, wird durch
die Schaltungen Sf und LE festgelegt Dabei legt die Schaltung SE die Registersätze fest, in die eingeschrieben
werden soll, während die Schaltung LE die Registersätze festlegt, aus denen Information ausgelesen
werden soll. Der Zeitpunkt der Auswahl der Registersätze PS 1 bis PS 4 erfolgt dabei mit Hilfe eines
Schreibimpulses WB bzw. WA von der ersten Steuerschaltung STB bzw. der zweiten Steuerschaltung
STA. Außerdem ist die Schaltung SE mit der Decodierschaltung SA und die Schaltung LE mit der
Decodierschaltung LA verbunden. Durch das Zusammenwirken der Decodierschaltung SA und der Schaltung
SE bzw. der Decodierschaltung LA und der Schaltung LE kann jede beliebige Speicherstelle eines
Registersatzes PS 1 bis PS 4 adressiert werden.
Das Adressregister KZ wird, wie bereits dargelegt, von der ersten Steuerschaltung STB über ein NAND-Glied
NG 1 angesteuert Durch das NAND-Glied NG i werden die Zähltakte der Steuerschaltung STB ausgewählt,
durch die das Adressregister KZ verändert werden soll. Der Ausgang des Adressregisters KZ ist
nun mit der Vergleicherschaltung VG verbunden. Da im Ausführungsbeispiel die Datenübertragung über die
Schnittstelle b halbwortweise, also 2 Byte weise, erfolgt, genügt es, wenn die drei höherwertigen Stellen des
Adressenregisters KZ der Vergleicherschaltung VG zugeführt werden.
Das Adressregister MZ wird von der zweiten Steuerschaltung STA hochgezählt Seine Ausgänge sind
jedoch nicht direkt mit der Vergleicherschaltung VG verbunden. Vielmehr ist zwischen das Adressregister
MZ und die Vergleicherschaltung VG ein weiteres Register MZR geschaltet, dessen Aufgabe darin besteht,
das von der zweiten Steuerschaltung STA angesteuerte Adressregister MZ in das Taktraster der ersten
Steuerschaltung STB einzuphasen. Dies ist erforderlich, da die beiden Steuerschaltungen STB und STA
asynchron zueinander arbeiten. Ein Vergleich der Inhalte der Adressregister MZ und KZ ist aber nur bei
synchronem Arbeiten sinnvoll. Mit Hilfe einer Schaltung EP wird aus den von der zweiten Steuerschaltung STA
abgegebenen Impulsen ein Umpuls abgeleitet, der in das Taktraster der ersten Steuerschaltung STB paßt Dieser
Umpuls wird dem Register MZR zugeführt das dann den Inhalt des Adressregisters MZ übernimmt und der
Vergleichsschaltung VG anbietet Die Vergleichsschaltung VG vergleicht den Inhalt des Adressregisters MZ
mit dem Inhalt der drei höherwertigen Stellen des Adressenregisters KZ und erzeugt bei Gleichheit ein
Sperrsignal, das dem NAND-Glied NG2 zugeführt
wird. Das NAND-Glied NC2 ist weiterhin mit dem
Ausgang des Steuer-Flip-Flops FFverbunden.
Mit den Ausgangsleitungen des Adressenregisters KZ ist ein Schaltkreis SK verbunden, durch den festgestellt
wird, wann über die Schnittstelle b ein Block von Informationen übertragen worden ist. Ist dies der Fall,
dann gibt der Schaltkreis SK ein Signal ab, das der ι ο ersten Steuerschaltung STB zugeführt wird. Die erste
Steuerschaltung STB veranlaßt daraufhin ein Setzen des Steuer-Flip-Flops FF. Dies ist jedoch nur möglich, wenn
das Steuer-Flip-Flop FFnicht bereits gesetzt ist Ist das
οΐεϋεΓ-ΓΊΐρ-ΓΊΟρ γΊ* ucicitS gcSctZt, däiifi VcfZögcri die '5
erste Steuerschaltung STB den Setzvorgang solange, bis
das Steuer-Flip-Flop FF wieder zurückgesetzt worden ist. Das Zurücksetzen erfolgt von der zweiten
Steuerschaltung STA her, und zwar immer dann, wenn das erste Informationswort eines Blockes über die
Schnittstelle a übertragen worden ist. Dies erfolgt bei jeder Adressenänderung und somit ist es möglich, die
niederwertigste Stelle des Adressenregisters MZ als Anzeichen dafür heranzuziehen. Entsprechend ist der
Rücksetzeingang des Steuer-FIip-FIops FF über ein
NAND-Glied NG 3 mit dem niederwertigsten Ausgang des Registers MZR verbunden. Der zweite Eingang des
NAND-Gliedes NG 3 liegt an der Schaltung EP zum
Einphasen in das Taktraster der Steuerschaltung STB.
Das Steuer-Flip-Flop ist selbstverständlich auch mit der zweiten Steuerschaltung STA verbunden, denn das
Steuer-Flip-Flop FF gibt ja an, wann ein Block von Informationen über die Schnittstelle b in den Pufferspeicher
PS übertragen bzw. wann das erste Daten wort aus ihm entnommen worden ist Das Ausgangssignal des
Steuer-Flip-Flops FFist also für die zweite Steuerschaltung STA das Signal dafür, daß diese tätig werden kann
und einen Informationsblock über die Schnittstelle a übertragen kann.
Zunächst soll der Fall beschrieben werden, bei dem die Operationsrichtung von der Schnittstelle b zur
Schnittstelle a führt. Zum Beispiel werden hier Informationen von einer peripheren Einheit über die
Schnittstelle b in den Pufferspeicher PS und von dort über die Schnittstelle a zu einem Arbeitsspeicher ASP
übertragen. Zu Beginn ist der Pufferspeicher PS leer und die Adressregister MZ und KZ stehen auf Null. Das
Steuer-Flip-Flop FFist zurückgesetzt
Sollen nun Informationen über die Schnittstelle b in den Pufferspeicher übertragen werden und zwar jeweils
2 Byte: dann wird die erste Steuerschaltung STB tätig
und erzeugt einen Schreibimpuls WB. Die Adresse der Speicherstelle im Pufferspeicher PS, in die die erste
Information eingeschrieben werden soll, ergibt sich aus dem Adressregister KZ, dessen Inhalt in der Decodierschaltung
SA decodiert wird. Wie oben beschrieben, wird dann z. B. im Registersatz PS 1 des Pufferspeichers
PS die erste Speicherstelle ausgewählt Darauf wird durch die erste Steuerschaltung STB der Inhalt des
Adressregisters KZ um 1 erhöht Die nachte Information
wird unter der neuen im Adressregister KZ gebildeten Adresse im Pufferspeicher PS abgespeichert,
z. B. in der ersten Speicherstelle des Registersatzes PS2.
Dieser Vorgang wiederholt sich ständig bis die Registersätze PSl und PS2 gefüllt sind. Dann nämlich
sind 16 Byte in den Pufferspeicher PS übernommen
worden. Der Schaltkreis SK erkennt dies aus der Adresse des Adressregisters KZ Er erzeugt ein
Ausgangssignal, das der ersten Steuerschaltung STB zugeführt wird, die daraufhin das Steuer-Flip-Flop FF
setzt. Dadurch wird der zweiten Steuerschaltung STA mitgeteilt, daß sie einen Informationsblock aus dem
Pufferspeicher PS abholen kann.
1st die zweite Steuerschaltung STA noch nicht bereit, einen Informationsblock aus dem Pufferspeicher abzuholen,
so kann die erste Steuerschaltung STB trotzdem weiterarbeiten und auch die Registersätze PS3 und
PS4 vollständig füllen. Dann ist ein zweiter Informationsblock über die Schnittstelle b in den Pufferspeicher
PS übertragen worden und entsprechend gibt der Schaltkreis SK ein Signal an die erste Steuerschaltung
STB ab. Da aber das Steuer-Flip-Flop FF noch gesetzt ist, kann die Steuerschaltung STB das Steuer-Flip-Flop
nicht noch einmal setzen, vielmehr verzögert sie den Setzvorgang für das Steuer-Flip-Flop FF solange, bis
das Steuer-Flip-Flop FF von der zweiten Steuerschaltung STA zurückgesetzt worden ist
Ist der Pufferspeicher PS vollständig gefüllt, dann ist
die Adresse im Adressregister KZ wieder Null. Da die Adresse im Adressregister MZebenfalls Null ist, gibt die
Vergleichsschaltung VG ein Signal ab, das dem NAND-Glied NG 2 zugeführt wird. An diesem liegt
außerdem ein Signal von dem Steuer-Flip-Flop FF. Das NAND-Glied NG 2 erzeugt damit ein Sperrsignal, das
der ersten Steuerschaltung STB anzeigt, daß diese nicht weiterarbeiten darf. Entsprechend werden auch die
Zähltakte von der ersten Steuerschaltung STB an das Adressregister KZunterbrochen.
Wenn die zweite Steuerschaltung STA nun mit der Übertragung des Informationsblockes auf dem Pufferspeicher
PS über die Schnittstelle a beginnt, wird nach dem Abholen des ersten Wortes der Inhalt des
Adressenregisters MZ geändert und damit ein Rücksetzimpuls für das Steuer-Flip-Flop FF erzeugt und
diese zurückgesetzt. Die Steuerschaltung STA arbeitet nun unabhängig von der Steuerschaltung STB solange
weiter, bis sie einen Informationsblock aus dem Pufferspeicher entnommen hat Stellt die zweite
Steuerschaltung STA nach Übernahme eines Iniormationsblocks
aus dem Pufferspeicher PS über die Schnittstelle a fest, daß das Steuer-Flip-Flop FFwieder
gesetzt ist, dann beginnt sie mit der Übernahme des zweiten Informationsblocks aus dem Pufferspeicher.
Mit Hilfe der Vergleichsschaltung VG wird also erreicht, daß der Auslesevorgang den Schreibvorgang
nicht überholen kann und mit Hilfe des Steuer-Flip-Flops FFwird erreicht, daß die zweite Steuerschaltung
STA nur dann tätig wird, wenn ein Informationsblock über die Schnittstelle b in den Pufferspeicher PS
übertragen worden ist Die Vergleichsschaltung VG und das Steuer-Flip-Flop FF steuert also die erste
Steuerschaltung STB so, daß ein fehlerhaftes Einspeichern in den Pufferspeicher bzw. Auslesen aus dem
Pufferspeicher nicht auftritt
Ist die Operationsrichtung der Datenübertragung von der Schnittstelle a zur Schnittstelle b, dann läuft der
Übertragungsvorgang folgendermaßen ab: Zu Anfang sei wiederum der Pufferspeicher PS geleert und die
Adressregister MZ und KZ auf NuIL Zu Beginn des
Übertragungsvorganges muß nun die Steuerschaltung STB das Steuer-Flip-Flop FF setzen. Damit wird der
zweiten Steuerschaltung STA mitgeteilt, daß sie mit der Datenübertragung über die Schnittstelle a in den
Pufferspeicher PS beginnen kann. Nach der Übertragung des ersten Wortes in den Pufferspeicher PS wird
auf die bereits dargelegte Weise des Steuer-Flip-Flop
FF zurückgesetzt Anschließend setzt die erste Steuerschaltung
STB das Steuer-Flip-Flop FFerneut. Dies ist deswegen erforderlich, um der zweiten Steuerschaltung
STA zu ermöglichen, den ganzen Pufferspeicher PS mit
Informationen zu füllen. Die zweite Steuerschaltung STA kann ja nur dann einen Informationsblock in den
Pufferspeicher PS übertragen, wenn vorher das Steuer-Flip-Flop FF gesetzt worden ist. 1st der
Pufferspeicher PS voll, so ist das Steuer-Flip-Flop nicht
mehr gesetzt und nach der Übertragung des zweiten Informationsblocks wird die Steuerschaltung STA in
ihrer Tätigkeit gestoppt.
Beginnt die erste Steuerschaltung STB mit dem Auslesevorgang, dann werden zunächst die Informationswörter
des ersten Blockes haibwortweise aus dem. Pufferspeicher ausgelesen und über die Schnittstelle b
übertragen. Ist ein Informationsblock aus dem Pufferspeicher PS über die Schnittstelle b übertragen worden,
dann gibt der Schaltkreis SK wiederum ein Signal ab,
das die Steuerschaltung STB veranlaßt, das Steuer-Flip-Flop
FF zu setzen. Jetzt kann die zweite Steuerschaltung STA wiederum mit der Informationsübertragung
in den Pufferspeicher PS beginnen. Der Einschreibvorgang kann aber den Lesevorgang niemals einholen, da
diese Möglichkeit nur auftreten könnte, wenn das Steuer-Flip-Flop gesetzt wäre.
Der Vorteil der erfindungsgemäßen Anordnung besteht darin, daß in dem Pufferspeicher PS gleichzeitig
Informationen eingeschrieben werden können und Informationen ausgelesen werden können. Die Anordnung
sorgt dafür, daß der Schreibvorgang von dem Lesevorgang nicht eingeholt wird und daß der
Schreibvorgang den Lesevorgang nicht überholt. Schließlich kann der Pufferspeicher zunächst von den
über die eine Schnittstelle gelieferten Informationen vollständig gefüllt werden, bevor Informationen über
die andere Schnittstelle übertragen werden.
Hierzu 2 Blatt Zeichnungen
Claims (5)
1. Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu
übertragenden Informationseinheiten in einem Pufferspeicher, bei der durch eine erste Steuerschaltung
der Informationsverkehr zwischen dem Pufferspeicher und der ersten Funktionseinheit und durch eine
zweite Steuerschaltung der Informationsverkehr zwischen der zweiten Funktionseinheit und dem
Pufferspeicher so gesteuert wird, daß gleichzeitig Informationseinheiten von einer Funktionseinheit
zum Pufferspeicher und vom Pufferspeicher zur anderen Funktionseinheit übertragen werden können
und bei der durch eine Vergleichsschaltung die Adressen der Speicherstellen des Pufferspeichers, in
die Informationseinheiten geschrieben werden, mit den Adressen der Speicherstellen des Pufferspeichers,
aus denen Informationseinheiten gelesen werden, miteinander verglichen werden, um zu
verhindern, daß der Schreibvorgang von dem Lesevorgang überholt wird und umgekehrt, dadurch
gekennzeichnet, daß ein Steuer-Flip-Flop (FF) vorgesehen ist, dessen Steuereingang mit
der ersten Steuerschaltung (STB) und dessen Ausgang mit der zweiten Steuerschaltung (STA)
verbunden ist, daß das Steuer-Flip-Flop (FF) von der
ersten Steuerschaltung (STB) richtungsabhängig immer dann gesetzt wird, wenn eine Informationsübertragung
entweder vom Pufferspeicher (PS) zur zweiten Funktionseinheit oder in umgekehrter Richtung
möglich ist, daß jeweils bei der Übertragung der ersten Informationseinheit zwischen der zweiten
Funktionseinheit und dem Pufferspeicher in der einen oder anderen Richtung das Steuer-Flip-Flop zurückgesetzt
wird, und daß der Ausgang des Steuer-Flip-Flops weiterhin mit einem logischen Glied (NC 2) verbunden ist, an das auch
der Ausgang der Vergleichsschaltung (VG) angeschlossen ist, und das ein Sperrsignal an die erste
Steuerschaltung (STB) liefert, wenn sowohl das Steuer-Flip-Flop gesetzt ist als auch der Vergleich
der Adressen in der Vergleichsschaltung (VG) Gleichheit erbracht hat.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß das Steuer-Flip-Flop (FF) von der
ersten Steuerschaltung (STB) dann gesetzt wird, wenn zwischen der zweiten Funktionseinheit und
dem Pufferspeicher (PS)eine festgelegte Anzahl von
Informationseinheiten oder Informationswörtern (Informationsblock) austauschbar ist.
3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß die erste Steuerschaltung (STB) bei
gesetztem Steuer-Flip-Flop (FF) den erneuten Setzvorgang solange verzögert, bis das Steuer-Flip-Flop
zurückgesetzt worden ist.
4. Anordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß zur Erzeugung
der Adressen der der ersten Funktionseinheit zuzuordnenden Speicherstellen des Pufferspeichers
(PS) ein erster Zähler (KZ), zur Erzeugung der Adressen der der zweiten Funktionseinheit zuzuordnenden
Speicherstellen des Pufferspeichers ein zweiter Zähler (MZ) vorgesehen ist, daß dem ersten
Zähler (MZ) Zähltakte von der ersten Steuerschaltung (STB), dem zweiten Zähler (MZ) Zähltakte von
der zweiten Steuerschaltung (STA) zugeführt werden, daß die Inhalte der Zähler (KZ, MZR) der
Vergleichsschaltung (VG) zugeführt werden, und daß ein Schaltkreis (SK) vorgesehen ist, der mit dem
ersten Zähler (KZ) verbunden ist und der an die erste Steuerschaltung (STB) ein Signal abgibt, wenn
der Pufferspeicher (PS) verfügbar ist, und damit das Setzen des Steuer-Flip-Flops (FF) veranlaßt
5. Anordnung nach Anspruch 4, dadurch gekennzeichnet, daß die Informationseinheiten wortweise
zwischen der zweiten Funktionseinheit und dem Pufferspeicher und halbwortweise zwischen der
ersten Funktionseinheit und dem Pufferspeicher übertragen werden, und daß deshalb bei insgesamt η
Adressenbits nur die (n-\) höhenwertigen Ausgänge des ersten Zählers (KZ) mit der Vergleichsschaltung
(VG) verbunden sind, während eine von der Blocklänge abhängige Anzahl von niederwertigen Ausgängen
mit dem Schaltkreis (SK) verbunden ist
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762610428 DE2610428C3 (de) | 1976-03-12 | 1976-03-12 | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher |
CH204777A CH613790A5 (en) | 1976-03-12 | 1977-02-18 | Arrangement for controlling the temporary storage of data, to be transmitted between two functional units of a data processing system, in a buffer memory |
FR7705233A FR2344073A1 (fr) | 1976-03-12 | 1977-02-23 | Dispositif pour commander la memorisation intermediaire de donnees, devant etre transmises entre deux unites fonctionnelles, dans une memoire tampon |
AT149177A AT377107B (de) | 1976-03-12 | 1977-03-07 | Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden informationen in einem pufferspeicher |
NL7702551A NL168969C (nl) | 1976-03-12 | 1977-03-09 | Inrichting voor het besturen van het tussentijds opbergen van tussen twee functie-eenheden over te dragen informaties in een buffergeheugen. |
GB1009377A GB1575074A (en) | 1976-03-12 | 1977-03-10 | Buffer store control arrangements |
BE175691A BE852339A (fr) | 1976-03-12 | 1977-03-10 | Dispositif pour commander la memorisation intermediaire de donnees, devant etre transmises entre deux unites fonctionnelles dans une memoire tampon |
IT2110377A IT1077686B (it) | 1976-03-12 | 1977-03-10 | Dispositivo per comandare la memorizzazione temporanea in una memoria tampone,di dati da trasmettere fra due unita' funzionali |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762610428 DE2610428C3 (de) | 1976-03-12 | 1976-03-12 | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2610428A1 DE2610428A1 (de) | 1977-09-15 |
DE2610428B2 DE2610428B2 (de) | 1979-09-13 |
DE2610428C3 true DE2610428C3 (de) | 1980-06-19 |
Family
ID=5972294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762610428 Expired DE2610428C3 (de) | 1976-03-12 | 1976-03-12 | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher |
Country Status (8)
Country | Link |
---|---|
AT (1) | AT377107B (de) |
BE (1) | BE852339A (de) |
CH (1) | CH613790A5 (de) |
DE (1) | DE2610428C3 (de) |
FR (1) | FR2344073A1 (de) |
GB (1) | GB1575074A (de) |
IT (1) | IT1077686B (de) |
NL (1) | NL168969C (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3021306A1 (de) * | 1980-06-06 | 1981-12-24 | Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt | Anordnung mit einem wenigstens zwei teilnehmern gemeinsamen datenspeicher |
DE3149678A1 (de) * | 1981-12-15 | 1983-06-23 | Siemens AG, 1000 Berlin und 8000 München | Anordnung zur zwischenspeicherung von zwischen zwei funktionseinheiten in beiden richtungen zu uebertragenden informationen in einem pufferspeicher |
DE3239997C1 (de) * | 1982-10-28 | 1984-04-12 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und Anordnung zur Durchfuehrung von kontinuierlichen Datentransfers bei der Ausfuehrung von Ein-/Ausgabeoperationen ueber Selektor- oder Blockmultiplexkanaele des Ein-/Ausgabewerkes einer Datenverarbeitungsanlage |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE399773B (sv) * | 1977-03-01 | 1978-02-27 | Ellemtel Utvecklings Ab | Adress- och avbrottsignalgenerator |
US4218758A (en) * | 1978-06-30 | 1980-08-19 | International Business Machines Corporation | Parallel-to-serial binary data converter with multiphase and multisubphase control |
US4298954A (en) * | 1979-04-30 | 1981-11-03 | International Business Machines Corporation | Alternating data buffers when one buffer is empty and another buffer is variably full of data |
CA1143856A (en) * | 1979-09-26 | 1983-03-29 | Anthony K. Fung | Circular-queue structure |
DE3727434C2 (de) * | 1987-08-17 | 1997-04-30 | Siemens Ag | Anordnung zum Übertragen von in mehrere Teilwörter unterteilten Datenwörtern |
-
1976
- 1976-03-12 DE DE19762610428 patent/DE2610428C3/de not_active Expired
-
1977
- 1977-02-18 CH CH204777A patent/CH613790A5/xx not_active IP Right Cessation
- 1977-02-23 FR FR7705233A patent/FR2344073A1/fr active Granted
- 1977-03-07 AT AT149177A patent/AT377107B/de not_active IP Right Cessation
- 1977-03-09 NL NL7702551A patent/NL168969C/xx not_active IP Right Cessation
- 1977-03-10 BE BE175691A patent/BE852339A/xx not_active IP Right Cessation
- 1977-03-10 IT IT2110377A patent/IT1077686B/it active
- 1977-03-10 GB GB1009377A patent/GB1575074A/en not_active Expired
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3021306A1 (de) * | 1980-06-06 | 1981-12-24 | Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt | Anordnung mit einem wenigstens zwei teilnehmern gemeinsamen datenspeicher |
DE3149678A1 (de) * | 1981-12-15 | 1983-06-23 | Siemens AG, 1000 Berlin und 8000 München | Anordnung zur zwischenspeicherung von zwischen zwei funktionseinheiten in beiden richtungen zu uebertragenden informationen in einem pufferspeicher |
DE3239997C1 (de) * | 1982-10-28 | 1984-04-12 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und Anordnung zur Durchfuehrung von kontinuierlichen Datentransfers bei der Ausfuehrung von Ein-/Ausgabeoperationen ueber Selektor- oder Blockmultiplexkanaele des Ein-/Ausgabewerkes einer Datenverarbeitungsanlage |
Also Published As
Publication number | Publication date |
---|---|
NL168969C (nl) | 1982-05-17 |
IT1077686B (it) | 1985-05-04 |
BE852339A (fr) | 1977-09-12 |
DE2610428A1 (de) | 1977-09-15 |
NL7702551A (nl) | 1977-09-14 |
ATA149177A (de) | 1984-06-15 |
FR2344073A1 (fr) | 1977-10-07 |
NL168969B (nl) | 1981-12-16 |
FR2344073B1 (de) | 1982-03-05 |
AT377107B (de) | 1985-02-11 |
DE2610428B2 (de) | 1979-09-13 |
GB1575074A (en) | 1980-09-17 |
CH613790A5 (en) | 1979-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2854485C2 (de) | Datenverarbeitungsanlage | |
EP0013737B1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2656546C2 (de) | Datenblock-Austauschanordnung | |
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE69031658T2 (de) | Vorrichtung und verfahren für instandhaltung von cache/zentralspeicherkonsistenz | |
DE3004827C2 (de) | Datenverarbeitungsanlage | |
DE2853239C2 (de) | ||
DE4019135C2 (de) | Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE2501853A1 (de) | Prozessor fuer ein datenverarbeitungssystem | |
DE1299145B (de) | Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen | |
DE2241257B2 (de) | Datenverarbeitende Anlage | |
DE2432608C3 (de) | Speicheranordnung fur eine Datenverarbeitungseinrichtung | |
DE1286789B (de) | Einrichtung an einem elektronischen Ziffernrechner zum schnellen Datenaustausch zwischen der Verarbeitungseinheit und dem zentralen Speicher | |
DE1774052B1 (de) | Rechner | |
DE2363846A1 (de) | Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage | |
DE3850514T2 (de) | Cachespeicher mit Treffervorhersagelogik. | |
DE2610428C3 (de) | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher | |
DE2829972A1 (de) | Schnittstelle einer datenverarbeitungsanlage | |
DE2609698C2 (de) | Elektronischer Rechner | |
DE3850212T2 (de) | Vielfach-CPU-System mit gemeinschaftlichem Speicher. | |
DE2404887C2 (de) | Schaltungsanordnung für den Informationsaustausch mit einem Rechner | |
CH656470A5 (de) | Datenverarbeitungsanlage mit hauptspeicher und depot(cache)-speicher. | |
DE69023677T2 (de) | DMA-Übertragung für Rechnersystem. | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |