DE2853276A1 - Datenpufferspeicher vom typ first-in, first-out mit einem variablen eingang und einem variablen ausgang - Google Patents
Datenpufferspeicher vom typ first-in, first-out mit einem variablen eingang und einem variablen ausgangInfo
- Publication number
- DE2853276A1 DE2853276A1 DE19782853276 DE2853276A DE2853276A1 DE 2853276 A1 DE2853276 A1 DE 2853276A1 DE 19782853276 DE19782853276 DE 19782853276 DE 2853276 A DE2853276 A DE 2853276A DE 2853276 A1 DE2853276 A1 DE 2853276A1
- Authority
- DE
- Germany
- Prior art keywords
- buffer memory
- register
- signal
- data
- condition
- 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.)
- Granted
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
- G06F5/12—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
- G06F5/14—Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations for overflow or underflow handling, e.g. full or empty flags
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Time-Division Multiplex Systems (AREA)
- Information Transfer Systems (AREA)
- Input From Keyboards Or The Like (AREA)
Description
Ii. V. I hi.-ι-»·
3Ο.9.1978 / . PHN 8983
"Dateiipufferspeicher vom Typ '"first-in, first-out" mit einem
variablen Eingang und einem variablen Ausgang"
Die Erfindung betrifft einen Datenpufferspeicher vom
Typ "first-in, first—out" mit logischen Schaltungen, die
einzuschreibende Daten abhängig von der Füllung des Pufferspeichers möglichst nahe bei einem Ausgang für zu lesende
Daten einschreiben, so dass die Daten einen geschlossenen
Inhalt des Pufferspeichers bilden, weiter mit einer Eingangssammelleitung,
über die Daten zu einem Eingang eines ausgewählten Registers gelangen, und mit einer Ausgangssammelleitung,
über -die Daten aus einem-ausgewählten Register·
dieses Speichers ausgelesen werden.
Datenpufferspeicher vom erwähnten Typ "first-in, firstout"
sind in vielen Ausführungsformen bekannt und dienen
u.a. als Pufferspeicheranordnung in digitalen Dat.enverarbeitungs-
und Kommunikationssyslernen an solchen Stellen,
an denen Unterschiede zwischen der Datenzufulir und der
Datenabnahme auftreten.
Der Pufferspeicher gemäss vorliegender Erfindung ist
vom Typ mit sogenanntem variablem Eingang— und variablem Ausgang auf Grund der Tatsache, dass eine Eingangssammel-
'" leitung und eine Ausgangssammelleituii-g benutzt werden.
Derartige Pufferspeicher mit variablem Eingang und variablem
Ausgang sind an sich bekannt, beispielsv/eise aus den
niederländischen Patentanmeldungen 7VIO/Ö6 und 7509269.
Hierbei wird mit Zählanordnungen und damit gekoppelten
809824/0881
BAD ORiQINAL
30.9.78. / PHN 8983
Delcodierungsauswahlnetzwerken eine variable Ausgangs stelle
des Pufferspeichers ansteuerbar. Ein Vorteil dieser Anordnung
mit variablem Eingang und variablem Ausgang besteht darin,
dass die Daten zum Erreichen des Ausgangs nicht übertragen zu werden brauchen. Insbesondere wenn der'Pufferspeicher
leer oder nahezu leer ist, werden dadurch Verzögerungen verhindert. Jedoch ist ein wesentlicher Nachteil bei letztgenannten
Pufferanordnungen, dass zumal für Pufferspeicher mit
einer Vielzahl von Abschnitten die Steuerkomplexität stark ansteigt. Zähler mit grosser Zählkapazität und ^lmf angreichen
Dekodierungsauswahlnetzwerken für die anzuweisenden Ein- und Ausgänge oder andere zusätzliche Massnahmen sind erforderlich.
Ausserdem ist eine Aneinanderreihung einer Anzahl kleiner Pufferspeicher zu einem grösseren Pufferspeicher nicht ohne
zusätzliche Komplikationen möglich.
Der Erfindung liegt die Aufgabe zugrunde, einen Pufferspeicher der eingangs erwähnten Art zu schaffen, der einen
einfachen Aufbau hat und aus.serdem eine kurze Durchgangszeit
für die Daten besitzt. Diese Aufgabe wird erfindungsgemäss dadurch gelöst, dass die logischen Schaltungen im wesentlichen
je Pufferspeicherabschnitt angeordnet sind und bei
η Registern (θ, 1, ... n-1) folgende Signale erzeugen:
a) cop(i) = creq . s (i) . s(i-r1 ) , dass die Auswahl eines
Registers (i) im Pufferspeicher, in das auf eine Anfrage
(creq) von ausserhalb des Pufferspeichers Daten aus der
Eingangssammelleitung übernommen werden, unter der Bedingung bestimmt, dass das Register (i) leer ist (Zustand
s(i) und das nächste Register (i+i) voll (Zustand s(i+i)) ist;
b) Selout(l), das auf der Basis des am längsten gefüllten Zustandes eines Registers (i) erzeugt wird und ein Signal für die Auswahl dieses Registers (i) darstellt, aus dem Daten von der Ausgangssammelleitung übernommen werden, wobei das Signal selout(i) weiterhin zum Erzeugen eines Signals dient, mit dem der Ztistand des Registers (i) bei einem von ausserhalb des Pufferspeichers zugeführten Rückmeldesignal (ers) aktualisiert wird ( s(i): = 0, als Angabe, dass das Register (i) entleert wird);
b) Selout(l), das auf der Basis des am längsten gefüllten Zustandes eines Registers (i) erzeugt wird und ein Signal für die Auswahl dieses Registers (i) darstellt, aus dem Daten von der Ausgangssammelleitung übernommen werden, wobei das Signal selout(i) weiterhin zum Erzeugen eines Signals dient, mit dem der Ztistand des Registers (i) bei einem von ausserhalb des Pufferspeichers zugeführten Rückmeldesignal (ers) aktualisiert wird ( s(i): = 0, als Angabe, dass das Register (i) entleert wird);
90982 A/088 1
30.9.78. # PHN 8983
c) e = *^~_7?" s(i) j das ein Signal ist, das ingibt, dass alle
Registers leer sind(d.h. kein Signal cop(i) ist erzeugbar), wobei jedoch in einem ausgewählten Pufferspeicherabschnitt
j unter der Bedingung cop(j) = creq.s(j). s(j + 1.) +-e) das
Signal für die Auswahl des Registers (j) erzeugt wird, wenn die Bedingung e auftritt (insbesondere j = θ).
Mit den erwähnten logischen Schaltungen je Pufferspeicherabschnitt
ist ein vollständig untereinander einheitlicher Aufbau für die Abschnitte erreicht. Aneinanderreihung mehrerer
Pufferspeicher ist ohne Komplikationen möglich. Ausserdem
sind die logischen Schaltungen stufenweise einfach aufgebaut. Mit einer verbaltnismässig geringen Anzahl logischer Elemente
pro Abschnitt ist die Steuerung möglich. Mit dieser Steuerung ist erreicht worden, dass die Stelle, aus der Daten aus dem
Pufferspeicher ausgelesen werden, möglichst nahe der Stelle
liegt, in der Daten in den Pufferspeicher geschrieben werden.
Damit ist stets eine möglichst kurze Durchgangszeit für die Daten durch den Pufferspeicher gewährleistet.
Im allgemeinen werden die erwähnten Signale in den logischen Schaltungen in bistabile Speicherelemente geschrieben.
Weil dabei Situationen auftreten, dass ein bistabil es Speicherelement sich selbst liest, müssen, um das
Auftreten unsicherer Situationen zu vermeiden, diese Speicherelemente vom Typ sein, bei dem durch das Lesen des Inhalts
2^ vom Speicherelement selbst keine Probleme entstehen können.
Bistabile Speicherelemente, die sich dazu eignen, sind die sogenannten flankengesteuerten Flipflops. Dabei entsteht
nach einer bestimmten Zeit (set-up time = Einrichtzeit) am Ausgang Sicherheit über was scm Eingang geschah. Bistabile
Speicherelemente, die auch die erwähnte Bedingung erfüllen, sind die sogenannten Meister-Sklave-Flipflops. Dabei muss
man jedoch bedenken, dass mit mindestens zwei Taktzyklen gearbeitet werden muss. Ein Datenpufferspeicher, in dem
derartige Flipflops benutzt werden, ist nach einer Ausgestaltung
der Erfindung dadurch gekennzeichnet, dass die logische Schaltung je Pufferspcicherabschnitt zwei bistabile
Speicherelemente enthält, die in einer ersten und einer zweiten Taktimpulsphase betätigbar sind, wobei die ersten
909824/0881
30.9.78. "■ . JC PHN 8983-
bistabilen Elemente zum Aktualisieren des Hilfszustarides h(i)
eines Registers (i) und die zweiten bistabilen Elemente zum Aktualisieren des Zustandes s(i) eines Registers (i) dienen
und mit denen das Signal selout(i) = h(i) . s(i) bestimmbar
ist, das eindeutig das Register (i) auswählt, das seinen
Inhalt der Ausgangssammelleitung zuführt, und wobei mit den bistabilen Elementen unabhängig vom möglicherweise vollständig
gefüllten Zustand des Pufferspeichers beim Auftreten des
Signals selout(i) in einer ersten Taktimpulsphase der Zustand unter der Voraussetzung, dass die Bedingung s(i).s(i+1) erfüllt
ist, h(i): = 0 wird und in einer zweiten Taktimpulsphase nur unter der Bedingung h(i).ers der Zustand s(i):=0
wird. Die zwei bistabilen Speicherelemente können also praktisch ein früher erwähnter Meister-Sklave-Flipflop sein.
Der Vorteil der Verwend^ing dieser zwei Speicherelemente je
logischer Schaltung pro Pufferspeicherabschnitt besteht darin, dass es auch bei ganz gefülltem Pufferspeicher kein Problem
ist festzustellen, wo sich die Ausgangs- und die Eingangsstelle des Pufferspeichers befinden. In diesem Fall hat eines
der bistabilen Speicherelemente der logischen Schaltung des Abschnitts, in dem die Bedingung zum Erzeugen des "selout"-Signals
erfüllt ist, einen eindeutigen logischen 1-Wert
(s(i)—i)j wahrend das andere Speicherelement einen eindeutigen
logischen O-¥ert (h(i)=o) hat.
Zur Vermeidung des Nachteils, bei vollständig gefülltem
Pufferspeicher festzustellen, an welcher Stelle die Ausgangsstelle
bzw. die Eingangsstelle des Pufferspeichers liegt,
ist es auch möglich, zu vermeiden, dass der Pufferspeicher vollständig gefüllt werden kann. Um dies zu erreichen, ist
eine bevorzugte Ausführungsform der Erfindung dadurch gekennzeichnet,
dass:
a) die logischen Schaltungen und die weiteren logischen Schaltungen pro Abschnitt das Signal cop(i) = creq.s(i).s(i+i)
nur dann erzeugen, wenn ebenfalls die Bedingung s(i-1) er-
Sj füllt ist, wodurch vermieden worden ist, dass der Pufferspeicher
vollständig gefüllt werden kann (es gibt wenigstens ein leeres
Register·) ;
b) selout(i) unter der Bedingung s(i).s(i+i) entsteht,
909824/0881
30.9.78. £ PHN 8983
das auf der Basis des Vorhandenseins mindestens eines leeren Registers eine eindeutige Auswahl für das Register (i) zum
Auslesen nach der Ausgangssammelleitung ist, und das Signal
■ selout(i) . ers entsteht, das das Signal ist, mit dein der
Zustand des Registers (i) auf den Wert s(i):=0 aktualisierbar ist (Register (i) wird leer);
c) wenn alle Register leer sind, da ein Pufferspeiclierabschriitt
(j) mittels eines Signals cop( J )-( creq . ( s ( j- 1 ) ·
• s(j). s(j+i)) + e, entsprechend der unter a) erwähnten
zusätzlichen Bedingung ausgewählt wird (insbesondere j=0).
Insbesondere bei Datenverarbeitungsanordnungen kann es wichtig sein, dass ein Pufferspeicher ein Meldesignal erzeugt,
wenn Daten in den Pufferspeicher aufgenommen sind.
Eine weitere Ausführungsform des Pufferspeichers ist dadurch,
gekennzeichnet, dass ein Signal "cack" unter der Bedingung ,——\ cop(i) = 1, das entsteht, wenn in einer der logischen
Schaltungen das Signal, cop(i) auftritt, erzeugbar ist, und
nach ausserhalb des Pufferspeichers als Bestätigung gefüllt
ist, dass in eines der Register (i) Daten übernommen worden sind.
Kine weitere Ausführungsform des Pufferspeichers ist
noch dadurch gekennzeichnet, dass ein Zustandssignal SFI - v. ■_>«-^ s (i) an einem Ausgang des Pufferspeichers angibt,
dass mindestens in einem der Register des Pufferspeichers
Daten vorhanden sind.
. Durch die Verwendung der erwähnten Zustände pro Abschnitt
die vorzugsweise in bistabilen Speicherelementen als Teil der logischen Schaltung gespeichert werden, ist eine einfache
und für Integrationszwecke geeignete Anordnung erhalten.
Durch die Modul aritat im Aufbau ist es möglich, wenigstens
pro Abschnitt des Datenpufferspeichers das betreffende Regrister und die zugeordneten logischen Schaltungen als
eine in einem Halbleiter integrierte Schaltung auszuführen. Weiter ist es möglich, dass der Pufferspeicher mindestens
3S aus einer Gruppe von Registern und aus mindestens einer
Gruppe logischer Schaltungen pro Abschnitt des Pufferspeichers
besteht und die Gruppen in einem Halbleiter integrierte
909824/0881
30.9.78.
Schaltungen sind. Die erwähnte Modularität bedeutet ebenfalls,
dass mehrere Pufferspeicher problemlos hintereinander geschaltet
werden können, um gewünschte Pufferspeichorlängen zu erhalten
.
. Ausführungsbeispiele der Erfindung werden nachstehend an Hand der Zeichnung näher erläutert. Dabei geben die Figuren
Ausführungsbeispiele, auf die sich die Erfindung jedoch nicht beschränkt. Es zeigen
Fig. 1 ein Prinzipschaltbild eines "first-in, first-out"
Pufferspeichers mit variablem Eingang und variablem Ausgang,
Fig. 2 eine Blockschaltung des Pufferspeichers nach
der Erfindung,
Fig. 3 und 4 Beispiele von Untergllederungsmöglichkeiten
für den Pufferspeicher im Hinblick auf die Ausführung
als in einem Halbleiter integrierte Schaltungen.
Fig. 5 ein Ausführungsbeispiel der logischen Schaltungen
des Pufferspeichers,
Fig. 6 ein Zustandssignalenbeispiel zum Beispiel nach Fig. 5,
Fig. 7 ein weiteres Beispiel der logischen Schaltung
eines Abschnitts (i) des Pufferspeichers,
Fig. 8 ein Beispiel der logischen Schaltung eines ersten Abschnitts (jrrO) des Pufferspeichers wie in Fig. 7·
In Fig. 1 ist ein vereinfachtes Schaltbild eines flrst-in, first-out" Pufferspeichers mit variablem Eingang
und variablem Ausgang dargestellt. Der Pufferspeicher ist mit FIFO bezeichnet. IB bildet die Eingangssammelleitung,
über die Daten zum Pufferspeicher und insbesondere zu Eingängen
eines zur Aufnahme ausgewählten Register's eines Abschnitts τ(θ)...T(n-1) gelangen. Sie bildet den variablen
Eingang. OB bildet die Ausgangssammelleitung über die Daten aus dem Pufferspeicher und insbesondere an Ausgängen eines
zur Abgabe ausgewählten Registers eines Abschnitts T(o)...Τ(η-1) abgenommen werden.
In Fig. 2 ist das Blockschaltbild eines Beispiels
eines erfindungsgemässen Pufferspeichers dargestellt.
Er besteht aus einem Registerteil mit Registern REG-(o)...
REG-(i-i), REG(i) . . .REG(n-i) . Diese Register dienen zur
909824/0881
30.9.78. tf PHN 8983
■ λΟ-
Speicherung züge führt ei· Dateji. Jedes Register REG(i) kann
aus einer oder mehrex^en Stufen 1, 2' ... k bestellen. Hiermit
ist die Möglichkeit gegeben, dass die Datenwegbreite nach
Bedarf wählbar ist: 1 Bit Datenweg erfordert je REG(i) eine Stufe (i) usw. Die Eiiigangssammelleitung IB ist in dieser
Fig. 2 über den Registern dargestellt. Jedes Register REG(x) ist mit seinen Eingängen (jeder Stufe 1, 2 ... k) mit der
Sammelleitung IB verbunden. Dazu sind UND-Gatter benutzt: 1+1, 102 ... IO.K für die entsprechenden Registerstufen 1,
... k von REG(o)... 111, Ii2 ... lik für die entsprechenden
Registerstufen 1, 2 ... k von REG(i) usw. Die Fahl, welches
der Register REG(i) mit der Eingangssammelleitung IB verbunden wird, wird dtirch die logische Schaltung LM(o) ...
LM(i-i) ... LM(n-i) bestimmt, die je Pufferspeicherabschnitt
vorhanden ist. Ein Signal cop(o), ... cop(i) ... cop(n-i) wird in der logischen Schaltung erzeugt und gelangt, an die
UND-Gatter 101, 102 ... 10k ... oder 1x1 ... lik .. oder
l(n-1,i)... l(n-1,k). Damit erfolgt die Auswahl des Registers
REG(x) (i=O-(n-i)), dem von der Eingangssammelleitung IB
die Daten für den Pufferspeicher zugeführt werden.
Weiterhin ist jedes Register REG(i) mit seinen Ausgängen (jeder Stufe 1, 2 ... k) mit der AusgangsSammelleitung
OB verbunden. Dafür sind UND-Gatter benutzt: UOI, U02 ... UOk
für die entsprechenden Stufen 1, 2 ... k von REG(o); ... UiI,
Ui2 ... Ulk für die entsprechenden Stufen 1, 2 ... k von
REG(i) usw. Die Wahl, welches der Register REG(x) mit der Ausgangssammelleitung OB verbunden wird, wird ebenfalls
durch die logische Schaltung LM(o)... ML(i) ... LM(n-i)
getroffen, die wie erwähnt pro Pufferspeicherabschnitt vorbanden ist. Ein Signal selout(o) ... selout(i) ... selout(n-i)
wird in dieser logischen Schaltung erzeugt und den erwähnten UND-Gattern U01, ... UOk ... oder UiI ... Uik ... oder
U(n-1,i) ... U(n-1,k) zugeführt. Damit erfolgt die Auswahl des einen Registers REG(i) (i-0~(n-i)), aus dem Daten der
Ausgangssammelleitung OB des Pufferspeichers zugeführt
werden.
Ausserdem besteht der Pufferspeicher aus einem Steuer—
teil mit der bereits erwähnten"1ogischen Schaltung LM(x) pro
909824/0881
30.9.78. ft ■ PHN 8983
.ff.
Pufferspeicherabsclinitt. Die Signale, die in dieser logischen
Schaltung erzeugt werden, sind ausser den oben bereits erwähnten cop(i) und selout(i)-Signalen die Zustandssignale s(i)
und ihre Inversen S(TJ. Diese Zustände weisen auf den vollen
(s(i)=i) bzw. leeren (s(i)=0) Zustand eines Registers (i) hin.
Der Begriff "leer"bedeutet dabei, dass das Register keine
,gültigen Daten enthält. Durch den variablen Eingang und Ausgang des Pufferspeichers lässt sich keine bestimmte feste
Eingangsstelle bzw. Ausgangsstelle im Pufferspeicher an-
'" weisen. Der Pufferspeicher ist hinsichtlich des Steuersteils
ringgeschaltet, d.h. die letzte logische Schaltung LM(n--i)
ist mit der ersten logischen Schaltung LM(o) verbunden, und so bilden die logischen Schaltungen einen Modulo-(n)-geschalteten
Steuerteil.
Die in Fig. 2 angegebenen, von ausserhalb des Pufferspeichers
herrührenden Signale "creq" und "ers" bzw. die vom Pufferspeicher nach aussen abgegebenen Signale "cack"
und"SFI" haben folgende Bedeutung:"creq" ist ein Anfrage-Signal, um dem Pufferspeicher anzugeben, dass von ausser-
?-° halb des Pufferspeichers kommende Daten zugeführt werden.
"ers" ist ein Rückmeldesignal, das angibt, dass Daten aus
dein Pufferspeicher empfangen worden sind (durch die Verarbeitungsanordnung,
die dahinter angeordnet ist). "cack" ist ein Bestätigungssignal, das nach, dem Aufnehmen von
Daten im Pufferspeicher auftritt. "SFI" ist ein Signal,
das angibt, dass Daten an die Ausgangssammelleitung OB gelangen. Weitere Einzelheiten über die logische Schaltung
und die dazugehörigen Signale werden an Hand der Fig. 5» 6,
7 und 8 erläutert.
In Fig. 3 und Fig. '(· sind einige Möglichkeiten zum
Untergliedern des Pufferspeichers hinsiehtlieh der Ausführung
von in einem Halbleitei' integrierten Schaltungen
dargestellt. Die Modular!tat des Pufferspeichers nach Fig.
ermöglicht viele Lösungen: in Fig. 3 ist mit VIO, VH .... angegeben j dass mindestens je Puf f erspe J.clierabschnitt
Integration möglich ist: ein REG(o) igt zusammen mit der logischen Schaltung LM(o) in einer IC zusammengefasst.
Die Verbindung zwischen den Abschnitten und der Eingangs-
909824/0881
30.9.78. β PHN 898T
. Λ.
und Ausgangssamnielleitung ist wiederum mit JB und OB bezeichnet.
Di.e Verbindungen zwischen den logischen Schaltungen
und den weiteren Signa.lanscnlüssen sind in Fig. 3 mit CB
bezeichnet. Auf entsprechende Weise ist in Fig. ^i angegeben,
dass Integration in integrierten Schaltungen je Gruppe HIR oder Gruppen HIR1...HIRp der Register REG(o)...REG(n-1)
,möglich ist bzw. pro Gruppe HILM oder Gruppen HILM1...HILMm
logischer Schaltungen LM(o)...LM(n-1) möglich ist. Selbstverständlich
ist die Ausführung vollständiger Pufferspeicher
als eine einzige in einem Halbleiter* integrierte Schaltung auch möglich. Das Zusammenschalten jeder ausgewählten Ausführung
ergibt keine Probleme, wie nachstehend noch an Hand im einzelnen ausgearbeiteter Beispiele der logischen Schaltungen
pro Pufferspeicherabschnitt erläutert wird. Mit der
gestrichelten Linie REG1 ist noch angegeben, dass mit zusätzlichen
Registerblöcken ein Pufferspeicher für gewünschte Datenwegbreite zusammensetzbar istt
In Fig. 5 ist ein Ausführungsbeispiel der logischen
Schaltung LM(i) eines Pufferspeicherabschnitts (i) für die
Steuerung eines Registers REG(i) dieses Abschnitts dargestellt. Die logische Schaltung enthält in diesem Beispiel
zwei bistabile Speicherelemente FHi und FSi (Meister-Sklave-Anordnung), die mit einem ersten Taktimpuls 01 und einem
zweiten Taktimpuls 02 betrieben werden. Eeide Flipflops haben einen Setzeingang (s) und einen Rückstelleingang (r).
Die Ausgänge Q und Q führen Signale, die den Zustand angeben: h(i) bzw.. h(i) sind sogenannte Hilf szustandssignale,
während s(i) bzw. s(i) die Zustandssignale in der betreffenden
logischen Schaltung LM(i) sind. Weiterhin sind in der logischen Schaltung UND-Gatter Ei, E2, E3, Ek und Treiberschaltungen
DiI und Di2 vorhanden. Weiter ist in Fig. 5 noch ein UND-Gatter E5 , eine Inverterschaltung INV und
ausserdem noch ein (nicht zur LM(i) gehörender) Flipflop FF dargestellt.
Die Wirkung der Anordnung nach Fig. 5 ist wie folgt:
das Signal cop(i) wird im UND-Gatter E1 erzeugt, wenn die Bedingung cop(i) = creq . s(i j . s(i-f I ) erfüllt ist. Damit ist
REG(i) ausgewählt, um Daten von dom Eingangsanschluss über
909824/0881
30.9.78 \/ PHN 8983
. /f3.
die Gatter Iik> ... zu übernehmen, Dies geschieht also auf
der Anfrage '"creq" und wenn das Register REG(i) leer
(also s(i)=1) und das folgende Register REG(i+i) voll
(also s(i+i)=i) ist. Diese Auswahl wird auch mittels des von
S (i) zu erreichenden Zustand gespeichert: in der Taktphase
wird FHi gesetzt und h(i): = 1. In der Taktphase 02 übernimmt
FSi diesen Zustand und wird also s(i):=1. Damit liegt fest, dass REG(i) gefüllt worden ist.
In Fig. 6 sind zwei Situationen (Fig. 6a, Fig. 6b) dargestellt, mit denen an Hand eines praktischen Falls gezeigt
wird, was mit dem Inhalt eines Pufferspeichers, d.h. mit dem Inhalt des Registers REG, dem Inhalt h der bistabilen
Elemente FH und dem Inhalt s der bistabilen Elemente FS geschieht. Ein Kreuz bedeutet, dass ein Register REG(.i)
gefüllt ist, und eine Null, dass es keine gültigen Daten enthält. h=1 gibt den Hilf'szustand "vol3." und s = 1 gibt den
Zustand "voll" an. Aus Fig. 6 ist auf Basis der Bedingung s(ij.s(i+1) ersichtlich, an welcher Stelle im Pufferspeicher
bei einem Signal "creq" das Auswahlsignal "cop" entsteht, Dies ist sowohl in Fig. 6a wie auch in 6b oben dargestellt.
Fig. 6a ist der Fall eines nur teilweise gefüllten Pufferspeichers, in dem Eingangsdaten links zugeführt und Ausgangsdaten
rechts abgeführt werden. Fig.· 6b ist der Fall eines bis auf eine Stelle vollständig gefüllten Pufferspeichers.
Eingangsauswahl ist hier rechts, Ausgangsauswahl links.
(Dies ist eine Situation die automatisch durch den ringgeschlossenen
Aufbau des Pufferspeichers entsteht, siehe auch oben bei der Beschreibung nach Fig. 2).
Die Ausgangsauswahl zum Auslesen zur Ausgangssammelleitung
erfolgt im UND-Gatter E3. Hierin wird die Bedingting
selout (i)= h(i).s(i) überwacht. Das Auftreten eines solchen Falls ist hinsichtlich der ausgewählten Beispiele in Fig. 6
durch die Bezeichnung des Signals "selout'ersichtlich. Wie aus Fig. 5 ersichtlich, dient das Auswahlsignal selout(i)
zum Offnen der UND-Gatter ... Uik, mit denen der Inhalt von REG(i) die Ausgangssammelleitung OB erreicht (siehe weiter
Fig. 2). Der Vorgang mit den Zuständen in den Taktphasen 01
und 02 ist in ^'ig, 6a und Fig.'6b klar ersichtlich. Beim
909824/0881
28*3276
30.9.78. y1 PHH 89S3
"cop"~Signal, bei dem eine Füllung einer Stelle im Pufferspeicher
erfolgt, wird bei 01 h: =: 1 (s=0 bleibt); bei 02 wird
auch s:=1. Siehe dafür die zweite Lind dritte Gruppe von
Signalzeichen in Fig. öa bzw. Fig. 6b. Beim Auswahlsignal
selout wird, wenn der Inhalt des betreffenden Registers von aussen aufgenommen worden ist, das Signal "ers" am Puffei
speicher erscheinen. Hiermit wird unter der Bedingung, dass h(i) . ers = 1 , die mit dem UND-Gatter E4 festgestellt, wird,
in dei" Taktphase 02 das bistabile Element FS(i) über seinen
Rückstelleingang R zurückgesetzt (s(i):=o). Siehe weiter
Fig. 6a und Fig. 6b, in denen dies an den entsprechenden
Stellen angegeben ist; in der zweiten Gruppe von Signalzeichen ist "ers" als von ausserhalb des Pufferspeichers
kommend abgegeben. In der dritten Gruppe von Signalzeichen
^5 (02) ist dabei ersichtlich, was die Folgen sind. Diese
Zustandswechsel haben zur Folge, dass im UND-Gatter E2 nach
Fig. 5 die Bedingung s(i).s(i+i) erfüllt werden kann. Dies
gilt also für jene Stellen in Fig. 6a und 6b, an denen für s die Situation "-10" auftritt, siehe insbesondere in der
dritten Gruppe der Signalzeichen. In der Taktphase 0Λ wird
mit dieser Bedingung der Hilfszustand h zurückgesetzt:
FIg. 3 Eingang R von FH(i). Hierdurch entsteht wieder eine neue Stelle, an der selout=h.s-1 gilt .
In Fig. 6b ist ersichtlich, dass das vollständige Füllen des Pufferspeichers 'kein Problem gibt: die zweite
Gruppe von Signalzeichen in Fig. 6b zeigt einen vollständig gefüllten Pufferspeicher. Denn in dieser Situation bleibt
es möglich, eine Ausgangsstelle eindeutig anzugeben. Die Zustände h und s haben durch ihre verschiedenen Werte die
Möglichkeit, sowohl "selout" als auch "cop" eindeutig entstehen zu lassen.
In Fig. 5 ist über die Treiberschaltung DiI (zum Entkoppeln
der Signalwege zur Verhinderung gegenseitiger Beeinflussung) der Zustand s(i) mit der Signalleitung SFI
verbunden. Wenn wenigstens S'ür einen Zustand s(i) = 1 gilt,
so bedeutet", das, dass der Pufferspeicher mindestens (noch)
an einer Stelle gültige Informationen hat, die der Ausgangssamme3.leitung
zugeführt werden. Dieses Signal SFI, das also
909824/0881
/ 2883276
30.9-78. Λ PKN 8983
. 45-
eine ODER-Funktion ^'■ _'X s(i) aller Zustände s(i) darstellt,
kann ausserhalb des Pufferspeichers benutzt werden, um im Zusammenhang mit dem Vorhandensein von Informationen im
Pufferspei eher eine Aktion zu unternehmen oder in Betrieb
zu halten. Ebenso wird das Signal cop(i) der Fig. 5 über eine Treiberschaltung Di2 einer Signalleitung ck zugeführt.
Diese Signalleitung, über die das Signal cop(i) in einer ODER-Funktion (wired-or) *"■-.-''* c op (i) einem Flipflop FF
zugeführt wird, sorgt in dei" Taktphase 01 dafür, dass im FF
das Signal "cack" entsteht, das das Bestätigungssignal ist, dass in einem Register REG-(i) Daten übernommen worden sind.
Dieses Entstehen von "cack" in der Taktphase 01 bietet die Möglichkeit, beim Hinterelnanderschalten mehrer Pufferspeicher
das "cäck"-Signal in einem vorangehenden Pufferspeicher als "ers"-Eingangssignal zu verwenden. In 02 ist
es dabei verfügbar, um dafür zu sorgen, dass im vorangehenden Pufferspeicher der Zustand s(n-i):=0 wird, nachdem
die Daten an den angekoppelten Pufferspeicher weitergeleitet
sind. Wenn der Pufferspeicher vollständig leer ist, muss
eine beliebige Eingangsstelle gewählt werden, denn an keiner Stelle ist die Bedingung s(i).s(i+i)=1 erfüllt. Um in diesem
Fall dennoch eindeutig eine Eingangsstelle zu erhalten, wird das Signal SFI benutzt. Wenn SFI=O ist, also der Pufferspeicher
ist ganz leer, erscheint am Ausgang der Umkehrstufe IN\r ein Signal SFI=I (siehe Fig. 5). Dieses Signal
wird zusammen mit dem Signal"öreq" einem UND-Gatter E5
zugeführt. -Hiei-in entsteht bei "creq" ein Signal e=1 , das
in dieser Situation cop(i)=1 liefert..Auf diese Weise ist in diesem Beispiel in der logischen Schaltung LM(i) die
Massnahme getroffen worden, bei einem "ganz leeren Pufferspeicher"
dennoch eindeutig eine Eingangsstelle anzuweisen. Im allegemeinen wird di.e erwähnte Massnahrne insbesondere
im ersten Abschnitt des Pufferspeichers (und also in LM(o)) getroffen.
In Fig. 7 und 8 ist je ein weiteres Beispiel der logischen
Schaltung LM(i) bzw. LM(o) eines Abschnitts des Pufferspeichers dargestellt. Hierbei sind die bereits
erwähnten flankengesteuerten Flipflops benutzt (beispiels-
909824/0881
30.9.7Ö. γ>
PHiM 8S'S3
.M-
weise fklS^G (Signetics)). Alle benutzten Signale sind,
sofern sie auch im Beispiel der Fig. 2 und 5 vorkommen,
auf gleiche Weise bezeichnet.
Fig. 7 enthält einen Flipf] op FFi, UND-Gatter El5 EP-, E3
und Treiberschaltungen Di und Bi. Der Flipflop FFi hat einen
Setzeingang SI und einen Ruckstel!eingang Rl. J.m UND-Gatter
E1 wird die Bedingung req. s(i- 1 ) . "s(i) . s(i + i) überwacht.
Ist diese Bedingung erfüllt, so ist cop(i)=l und also REG(i) zum Aufnehmen von Daten ausgewählt. Ausserdem wird
s(i):=l über den Eingang SI von FFi. Im Vergleich zum Beispiel nach Fig. 5 ist in diesem Beispiel die zusätzliche
Bedingung s (T-TJ zum Erzeugen von cop(i) berücksichtigt.
Dies ist deshalb gemacht, um zu vermeiden, dass der Puffer vollständig gefüllt werden würde. Es ist also eine Erweiterung
(eine weitere logische Schaltung genannt) von E1 vorgenommen,
um solches überwachen zu können. Hiermit kann niemals ein Problem darüber entstehen, an v/elcher Stelle
eine Eingangs- und eine Ausgangsstelle anzuweisen sind, falls der Pufferspeicher vollständig gefüllt werden würde.
Im Beispiel nach Fig. 5 wax- das kein Problem, weil die
mit zwei Taktimpulsphasen gesteuerten bistabilen Elemente
FSi und FHi stets einen Unterschied zux· Bestimmung der Eingangs·- und Ausgangsstellen zulassen. Im UND-Gatter E2
nach Fig. 7 entsteht das Signal selout(i)=s(i+i). Beim
Signal "ers" wird dabei im UND-Gatter E3 die Bedingung
selout(i) ers erfüllt. Hiermit wird der Fljpflop FFi über den Eingang RI zurückgesetzt: s(i)=0.
Die Leitung mit dem Signal s(i) ist über die Treiberschal tung Di mit der Signalleitung· SFI verbunden. Ebenso
ist die Leitung mit dem Signal cop(i) über die Treiberschal tung Bi mit der Leitung "cack" verbunden. Diese
Leitungen liefern mittels einer ODER-Funktion (wired-or)
die Signale "SFI" bzw. "cack", die bereits erwähnt worden sind.
Der Vollständigkeit halber ist in Fig. 8 noch die
logische Schaltung LM(o) Tür einen ersten Abschnitt des
Pufferspeichers dargestellt, falls sogenannte flankengesteuerte
Flipflops benutzt werden. Diese Fig. 8 ist der
90982A/08Ö1
Fig. 7 identisch, nur dass jetzt der Index i=ü 1st. Ben
einzigen Unterschied bilden ein In ν ei· t er INV und ein UND-Gatter
Eh. Mit diesen Mitteln wird die Situation,- bei der
alle Register des Pufferspeichers leer sind (SFI=O), gesteuert.
In diesem Fall liefert nämlich beim Signal "creq" dcis Gatter E4 ein Signal e=1, das dabei als cop(o) dient
und mit dem die Auswahl der .Eingangsstelle für die nächsten Daten erfolgt. Diese Daten werden in diesem Fall also in
den ersten Abschnitt des Pufferspeichers aufgenommen. E=
wird auch hier klar sein, dass jeder beliebige andere Abschnitt dafür ausgewählt sein konnte, jedoch der erste erscheint
dazu praktisch am besten geeignet.
Weil für alle Abschnitte die logischen Schaltungen weiter identisch sind, wird es klar sein, dass eine Erweiterung
des Pufferspeichers kein einziges Problem gibt. Insbesondere
bei der Reihenschaltung einer Anzahl dieser in integrierter Technik ausgeführten Pufferspeicher ist dabei
das Vei'binden eines "creq"-Signaleingangis eines nächsten
Pufferspeichers mit einem SFI-Slgnalausgang eines voran-
~° gehenden Pufferspeichers und weiterhin das Verbinden eines
Signaleingangs "ers" eines vorangehenden Pufferspeichers
mit einem "cack"—Signalausgang eines folgenden Pufferspeichers
ausreichend. Die Ausgangssammelleitung OB wird mit der Eingangssammelleitung IB eines nächsten Pufferspeichers
verbunden. Zwar sei bier angenommen, dass in diesem Fall
die Verzögerung grosser wird: je angekoppelten zusätzlichen
Pufferspeicher nimmt die Verzögerung um eine Einheit zu,
(die Mindestverzögerung eines Pufferspeichers giJ t dabei
als eine Einheit). Bei der Erweiterung des Pufferspeichers
mit mehreren Pufferspeichern zu einer beliebig gewünschten
Länge können auch alle Signalleitungen miteinander verbunden werden, um immerhin eine Mindes (.verzögerung aufrechtzuerhalten.
Hierbei muss jedoch die im lüng geschlossene Signalleitung geöffnet und über die Gesamtheit al1 er Pufferspeicher
wieder geschlossen werden.
Schliesslich sei hi ο ar bemerkt , dass in dieser Anordnung
dafür gesorgt werden muss· dass insgesamt nur einmal ein UND-Gatter E'l- ansprechen kann, vtin anzugeben, ειη welcher Stelle
die Eingang·« s t η 12 e beim Zustand eines vollständig .leeren
Pufferspeichers .1 lejß 9 8 2 4/0801
BAD ORIGINAL
Claims (1)
- PATENTANSPRÜCHEDaienpuff erspej eher vom Typ "first-in, first-oui1' mit logischen Schaltungen, die einzuschreibende Daten abhängig von der Puf ferspeicherfüllung möglichst nahe bei einem Ausgang für die auszulesenden Daten einschreiben, so dass die Daten einen geschlossenen .Inhalt dos Pufferspeichers bilden, weiterhin mit einer Eingangssammelleitung über die Daten einem Eingang eines ausgewählten Registers zugeführt werden, und mit einer AusgangsSammelleitung, über die Paten aus einem ausgewählten Register dieses Speichers gelesen werden, dculurch gekennzeichnet, dass die logischen Schaltungen im wesentlichen je Pufferspeicherabschnitt zugeordnet sind und π Register (θ,1 ..... n-1 ) folgende .Signale erzeugen: a) cop(i)-creq.s(ij.s(i +1), das die Auswahl eines Registers (.1) im Pufferspeicher, in das auf eine Anfrage (creq) von ausserhalb des Pufferspeichers Daten aus der Eingangssamme.l leitung übernommen werden, unter der Bedingung bestimmt, dass dieses Register (l) leer ist (Zustand s{±)) und dass dcis nächste Register (i-i-1) voll (Zustand s(i+i) is t;b) se.lout(i) = (h(i) . S(i ) ; = s(i).S(iH); E^ bzw. Ey, das auf der Basis der am längsten andauernden Füllung eines Registers (i) erzeugt wird und ein Signa.) für die Auswahl dieses Registers (i) darstellt, aus dem Daten von der Ausgangssamme3.J.eitung übernoniincn werden, wobei das Signal909 8 2Α/Ό881BAD ORIGINAL30.9-78.■ 2 PHN 893ΊsoJout(i) weiter zum l'rKcii.igen cinea Signa.l s dient; ni.it Jem dor ZiIHt.and ue& liegistcrt (i) bo:i einem von itiisf.erhii.l.li des Puffei'Kpoichcry zugefuhr ten Riicknie.l dungssignal ( era ) ak tu al :lsi ort wird (s(i):-0 als Angabe, dass das Register (i) entJ.eoi't v;ird;c) e - f*.—"\ j; (i j , das ein Signal ist, das angibt, dass alle i~URegister leer sind d.h. kein Signal cop(i) ist erzeugbar, wobei jedoch in einen) ausgewählten Pufferspeicherabsclinitt j unter* der Bedingung cop(j)=creq. ( s ( j ) . s ( j + 1 ) -i-e) das Signal für die Auswahl des Registers (j) erzeugt \v'ird, wenn die Bedingung e auftritt (insbesondere j-0).2. Datenpuff ei-speicher nach Anspruch 1, dadurch gekennzeichnet, dass die logische Schaltung pro Pufferspeicherabschnitt zwei bistabile Speicherelemente enthält, die in^ einer ersten und einer zweiten Taktiiupulsphase betätigbar sind, wobei die ersten bistabilen EJ. onion te zum Aktualisieren eines Hilfsüustajids h(i) eines Registers (i) land die zweiten bistabilen Elemente zum Aktualisieren des Zustande? s(i) eines Registers (i) dienen und mit denen das Signal selout(i) = Ii (i) . s (i) bestimmbar ist. das eindeutig das Register (i) ausxv'ählt, das seinen Inhalt der Ausgangssammelleitung zuführt und wobei mit den bistabilen Elementen unabhängig von der vollständigen oder"nicht vollständigen Füllung des Pufferspeichers beim Auftreten des Signals sclout(i) in einer ersten Taktimpulsphase der Zustand unter· der Bedingung dass die Bedingung s(i). s(i+i) erfüllt ist, h(l):=0 wird und in einer zweiten Taktinipulsphase nur unter der Bedingung Ji(L;. er s der Zustand s(i):-0 wird.3. 'Datenpufferspeicher nach Anspruch 1, dadurch gekennzeichnet, dass :a) die logischen Schaltungen und eine weitere logische Schaltung (Erweiterung von E1) pro Abschnitt das Signal cop(i) = creq.s(i).s(i+i) nur dann erzeugen, wenn eben— J'aLls die Bedingung s(i~1) erfüllt ist, wodurch ver-" mieden Vv'orden ist, dtiss der Pul'ferspeiclier vollständig gefüllt werden ka>m (es gibi mLndet? tens ein leeres Register).b) soJciUt(i) vinl er uo.r Uedüiigiing s( i ) , s( i-!-1 ) entsteht, das909824/0 861BAD ORIGINAL30.9^78, ' 3 PHN 80832853278auf der Easj ρ dos Vorhandenseins minde.stcn.s eines ] eorcüj Registers eine eindeutige! Auswahl Tür das Register- (i) für das Auslesen zur Aus gangs stimm el] ei Lun^ ist, und das Signa] seiout(i).ers entstellt, das das Signal ist, mit S dem der Zustand des Registers (i) auf den Wert s(i):-0 aktualisiert ist (Register (i) wird leer);c) im Falle alle Register leer sind, doch ein Pufferspeicherabschnitt (j) mittels eines Signals cop(j) = crecj (s( j~1 ) s(j).s(j+1)+e) entsprechend der unter-a) erwähnten zusätzlichen Bedingung ausgewählt wird (insbesondere j^o). k. Datenpufferspeicher nach Anspruch 1, 2 oder 3> dadurch gekennzeichnet, dass ein Signal "caclv" unter der Bedingung S-^nO])(J) = I1 das entsteht, wenn in einer der logischen Schaltungen das Signal cop(i) auftritt, erzeugbar ist, und nach aus serhalb des Pufferspeichers als Bestätigung geführt, ist, dass in-eines der Register (i) Daten übernommen worden sind.5· Da.tenpu iTerspelcher nach Anspruch 1, 2 oder 3? dadurch, gekennzeichnet, dass ein Zu stands signal SFl = *:--'"''s(i) an einem Ausgang des Pufferspeichers angibt, dass mindestens in einem dei" Register des Pufferspeichers Daten vorhanden sind. 6. Datenpufferspeicher nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass er als in einem Halbleite]'' integrierte Schaltung ausgeführt ist.2S 7· Da tonpuff er speicher1 nach Anspruch 6, dadurch gekennzeichnet, dass mindestens pro Pufferspeicherabschnitt das betreffende Register und die zugeordnete logische·Schaltung eine in einem Halbleiter ausgeführte integrierte Schaltung ist.8. Datenpufforspeicher nach Anspruch 6, dadurch gekennzeichnet, dass der Pufferspeicher aus mindestens einer Registergruppe und aus mindestens einer Gruppe logischer Schaltungen pro Pufferspeicherabschnitt besteht und die Gruppen in einem Halbleiter integrierte Schal Ixingun sind.BAD ORIGINAL9 0 9 ^ 2kI Q ^S 1
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7713706A NL7713706A (nl) | 1977-12-12 | 1977-12-12 | Informatiebuffergeheugen van het "eerst-in, eerst-uit" type met een variabele ingang en een variabele uitgang. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2853276A1 true DE2853276A1 (de) | 1979-06-13 |
DE2853276C2 DE2853276C2 (de) | 1989-02-02 |
Family
ID=19829731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782853276 Granted DE2853276A1 (de) | 1977-12-12 | 1978-12-09 | Datenpufferspeicher vom typ first-in, first-out mit einem variablen eingang und einem variablen ausgang |
Country Status (6)
Country | Link |
---|---|
US (1) | US4222102A (de) |
JP (1) | JPS5921054B2 (de) |
DE (1) | DE2853276A1 (de) |
FR (1) | FR2411466A1 (de) |
GB (1) | GB2009983B (de) |
NL (1) | NL7713706A (de) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4486854A (en) * | 1981-10-15 | 1984-12-04 | Codex Corporation | First-in, first-out memory system |
JPS58188395A (ja) * | 1982-04-26 | 1983-11-02 | Nec Corp | 記憶装置 |
US4507760A (en) * | 1982-08-13 | 1985-03-26 | At&T Bell Laboratories | First-in, first-out (FIFO) memory configuration for queue storage |
US4592019A (en) * | 1983-08-31 | 1986-05-27 | At&T Bell Laboratories | Bus oriented LIFO/FIFO memory |
US5038277A (en) * | 1983-11-07 | 1991-08-06 | Digital Equipment Corporation | Adjustable buffer for data communications in a data processing system |
JPS61160898A (ja) * | 1985-01-05 | 1986-07-21 | Fujitsu Ltd | 半導体記憶装置 |
EP0206743A3 (de) * | 1985-06-20 | 1990-04-25 | Texas Instruments Incorporated | Asynchroner FIFO-Puffer mit Null-Durchfallzeit und eindeutiger Leer/Voll-Angabe |
US5097442A (en) * | 1985-06-20 | 1992-03-17 | Texas Instruments Incorporated | Programmable depth first-in, first-out memory |
JPS6210729A (ja) * | 1985-07-09 | 1987-01-19 | Mitsubishi Electric Corp | デ−タ伝送装置 |
JPS6211930A (ja) * | 1985-07-09 | 1987-01-20 | Mitsubishi Electric Corp | デ−タ伝送装置 |
US4751675A (en) * | 1985-08-19 | 1988-06-14 | American Telephone And Telegraph Company, At&T Bell Laboratories | Memory access circuit with pointer shifting network |
US4879680A (en) * | 1985-10-18 | 1989-11-07 | Texas Instruments Incorporated | Multi-slave master-slave flip-flop |
US4792926A (en) * | 1985-12-09 | 1988-12-20 | Kabushiki Kaisha Toshiba | High speed memory system for use with a control bus bearing contiguous segmentially intermixed data read and data write request signals |
US4933901A (en) * | 1988-01-11 | 1990-06-12 | Texas Instruments Incorporated | Method for assigning priority to read and write requests received closely in time |
JP2764908B2 (ja) * | 1988-02-04 | 1998-06-11 | 日本電気株式会社 | カスケード・バッファ回路 |
DE68926043T2 (de) * | 1989-07-20 | 1996-08-22 | Toshiba Kawasaki Kk | Mehrprozessor-Computersystem |
US5036489A (en) * | 1990-04-27 | 1991-07-30 | Codex Corp. | Compact expandable folded first-in-first-out queue |
US5095462A (en) * | 1990-05-25 | 1992-03-10 | Advanced Micro Devices, Inc. | Fifo information storage apparatus including status and logic modules for each cell |
US5283662A (en) * | 1991-04-10 | 1994-02-01 | Minolta Camera Kabushiki Kaisha | Image reading apparatus controllable by external apparatus |
US5388074A (en) * | 1992-12-17 | 1995-02-07 | Vlsi Technology, Inc. | FIFO memory using single output register |
US6067408A (en) * | 1993-05-27 | 2000-05-23 | Advanced Micro Devices, Inc. | Full duplex buffer management and apparatus |
US5513224A (en) * | 1993-09-16 | 1996-04-30 | Codex, Corp. | Fill level indicator for self-timed fifo |
KR100594953B1 (ko) | 1997-08-20 | 2006-07-03 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 다중레벨의 하우스키핑을 위해 적합한 소프트웨어 관리 기능을 갖는 임시 데이터스트림 신호처리 버퍼 메모리 구조 |
EP1316955A1 (de) * | 2001-11-30 | 2003-06-04 | Infineon Technologies AG | Zwischenspeichereinrichtung |
US7739580B1 (en) * | 2005-02-17 | 2010-06-15 | Kencast, Inc. | System, method and apparatus for reducing blockage losses on information distribution networks |
US8707139B2 (en) | 2006-10-18 | 2014-04-22 | Kencast, Inc. | Systems, methods, apparatus, and computer program products for providing forward error correction with low latency |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL7410786A (nl) * | 1973-09-26 | 1975-04-01 | Siemens Ag | Aansluiting van klokpulsgebonden datatransmissie- chtingen op een dataeindapparaat, dat voor itzenden van data volgens het start-stop- cipe is ontworpen. |
DE2441584A1 (de) * | 1974-08-30 | 1976-03-11 | Siemens Ag | Pufferspeicher |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1243631A (en) * | 1967-07-18 | 1971-08-25 | Nat Res Dev | Improvements in or relating to elastic encoder storage systems |
BE755666A (fr) * | 1969-09-18 | 1971-02-15 | Burroughs Corp | Memoire tampon pour entree d'ordinateur |
-
1977
- 1977-12-12 NL NL7713706A patent/NL7713706A/xx not_active Application Discontinuation
-
1978
- 1978-11-24 US US05/963,547 patent/US4222102A/en not_active Expired - Lifetime
- 1978-12-08 GB GB7847706A patent/GB2009983B/en not_active Expired
- 1978-12-09 DE DE19782853276 patent/DE2853276A1/de active Granted
- 1978-12-11 FR FR7834811A patent/FR2411466A1/fr active Granted
- 1978-12-12 JP JP53153606A patent/JPS5921054B2/ja not_active Expired
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL7410786A (nl) * | 1973-09-26 | 1975-04-01 | Siemens Ag | Aansluiting van klokpulsgebonden datatransmissie- chtingen op een dataeindapparaat, dat voor itzenden van data volgens het start-stop- cipe is ontworpen. |
DE2441584A1 (de) * | 1974-08-30 | 1976-03-11 | Siemens Ag | Pufferspeicher |
Also Published As
Publication number | Publication date |
---|---|
GB2009983A (en) | 1979-06-20 |
FR2411466B1 (de) | 1985-01-18 |
NL7713706A (nl) | 1979-06-14 |
JPS5921054B2 (ja) | 1984-05-17 |
JPS5489440A (en) | 1979-07-16 |
DE2853276C2 (de) | 1989-02-02 |
US4222102A (en) | 1980-09-09 |
FR2411466A1 (fr) | 1979-07-06 |
GB2009983B (en) | 1982-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2853276A1 (de) | Datenpufferspeicher vom typ first-in, first-out mit einem variablen eingang und einem variablen ausgang | |
DE2853239C2 (de) | ||
DE3650063T2 (de) | FIFO-Speicher mit verminderter Durchfallzeit. | |
DE60216938T2 (de) | Gleichzeitiges durchsuchen verschiedener tabellen in einem inhaltsadressierbaren speicher | |
DE2515696C2 (de) | Datenverarbeitungssystem | |
EP1222739B1 (de) | Rekonfigurierbares gate-array | |
DE2656546C2 (de) | Datenblock-Austauschanordnung | |
DE2501853A1 (de) | Prozessor fuer ein datenverarbeitungssystem | |
DE2547488C2 (de) | Mikroprogrammierte Datenverarbeitungsanlage | |
DE4206286C2 (de) | Speicherzugriffssystem und Verfahren zum Ausgeben eines digitalen Datenstromes | |
DE2550339A1 (de) | Pufferspeicher mit sehr kurzer zykluszeit zwischen mehreren daten anfordernden einheiten und einem hauptspeicher mit ziemlich langer zykluszeit | |
DE112011105670B4 (de) | Verschiebbarer Speicher, der Ringregister verwendet | |
DE4132833A1 (de) | Hierarchischer schaltungsintegrierter cache-speicher | |
DE102005051478A1 (de) | Flashdatenspeichervorrichtung | |
DE69314732T2 (de) | Programmierbare logische Vorrichtung | |
DE2429067A1 (de) | 8speicherschaltung | |
DE102007004713B4 (de) | Datenübergabeeinheit zum Übertragen von Daten zwischen unterschiedlichen Taktbereichen | |
DE2853240C2 (de) | ||
DE69032776T2 (de) | Steuerungsschaltung zum Zugriff auf partiellen Speicher | |
DE2458525B2 (de) | Speicheranordnung mit Haupt- und Pufferspeicher | |
DE2136210A1 (de) | Zentraleinheit fur eine EDV-Anlage | |
DE69524837T2 (de) | Asynchrone Speicheranordnung mit seriellem Zugriff und entsprechendes Speicher- und Leseverfahren | |
DE2610428C3 (de) | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher | |
DE2459476C3 (de) | ||
DE1524117B1 (de) | Datenverarbeitungsanlage mit Umlaufregistern |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |