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 Pufferspeicher

Info

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
Application number
DE19762610428
Other languages
English (en)
Other versions
DE2610428A1 (de
DE2610428B2 (de
Inventor
Friedrich Dipl.-Phys. Dr. 8021 Taufkirchen Klan
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19762610428 priority Critical patent/DE2610428C3/de
Priority to CH204777A priority patent/CH613790A5/xx
Priority to FR7705233A priority patent/FR2344073A1/fr
Priority to AT149177A priority patent/AT377107B/de
Priority to NL7702551A priority patent/NL168969C/xx
Priority to GB1009377A priority patent/GB1575074A/en
Priority to BE175691A priority patent/BE852339A/xx
Priority to IT2110377A priority patent/IT1077686B/it
Publication of DE2610428A1 publication Critical patent/DE2610428A1/de
Publication of DE2610428B2 publication Critical patent/DE2610428B2/de
Application granted granted Critical
Publication of DE2610428C3 publication Critical patent/DE2610428C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods 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/10Methods 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)

Patentansprüche:
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
DE19762610428 1976-03-12 1976-03-12 Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher Expired DE2610428C3 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (3)

* Cited by examiner, † Cited by third party
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