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 ausgang

Info

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
Application number
DE19782853276
Other languages
English (en)
Other versions
DE2853276C2 (de
Inventor
Pierre Gerardus Jansen
Jozef Laurentius Wilhe Kessels
Benny Louisa Angelina Waumans
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.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
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 Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of DE2853276A1 publication Critical patent/DE2853276A1/de
Application granted granted Critical
Publication of DE2853276C2 publication Critical patent/DE2853276C2/de
Granted 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
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • G06F5/14Means 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);
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 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)

  1. PATENTANSPRÜCHE
    Daienpuff 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 Signal
    909 8 2Α/Ό881
    BAD ORIGINAL
    30.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~U
    Register 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, das
    909824/0 861
    BAD ORIGINAL
    30.9^78, ' 3 PHN 8083
    2853278
    auf 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 ORIGINAL
    9 0 9 ^ 2kI Q ^S 1
DE19782853276 1977-12-12 1978-12-09 Datenpufferspeicher vom typ first-in, first-out mit einem variablen eingang und einem variablen ausgang Granted DE2853276A1 (de)

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)

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

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

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

Patent Citations (2)

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