DE4019135A1 - Serieller speicher auf ram-basis mit parallelem voraus-lesen - Google Patents

Serieller speicher auf ram-basis mit parallelem voraus-lesen

Info

Publication number
DE4019135A1
DE4019135A1 DE4019135A DE4019135A DE4019135A1 DE 4019135 A1 DE4019135 A1 DE 4019135A1 DE 4019135 A DE4019135 A DE 4019135A DE 4019135 A DE4019135 A DE 4019135A DE 4019135 A1 DE4019135 A1 DE 4019135A1
Authority
DE
Germany
Prior art keywords
memory
read
output
data element
data
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
DE4019135A
Other languages
English (en)
Other versions
DE4019135C2 (de
Inventor
Jozef Froniewski
David E Jefferson
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.)
Samsung Semiconductor Inc
Original Assignee
Samsung Semiconductor Inc
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 Samsung Semiconductor Inc filed Critical Samsung Semiconductor Inc
Publication of DE4019135A1 publication Critical patent/DE4019135A1/de
Application granted granted Critical
Publication of DE4019135C2 publication Critical patent/DE4019135C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/78Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
    • G06F7/785Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using a RAM
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0215Addressing or allocation; Relocation with look ahead addressing means
    • 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/16Multiplexed systems, i.e. using two or more similar devices which are alternately accessed for enqueue and dequeue operations, e.g. ping-pong buffers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)

Description

Die Erfindung betrifft einen seriellen Speicher gemäß Oberbegriff des Patentanspruchs 1 sowie ein Verfahren gemäß Oberbegriff des Patentanspruchs 10.
Derartige Speicher finden häufig als Puffer-Speicher Verwendung, die zur Anpassung von Komponenten mit unterschiedlicher Datenrate dienen, indem sie Datenelemente mit einer bestimmten Rate aufnehmen und die Datenelemente in derselben Reihenfolge, in der sie abgespeichert wurden, mit einer anderen Rate wieder ausgeben. Allgemein lassen sich zwei Typen von Puffer-Speichern unter­ scheiden. Der eine Typ beruht auf dem Verschieben von Datenele­ menten durch eine Kette von Speicherzellen, d.h. auf dem Prinzip des Ringschieberegisters. Der andere Typ basiert auf Speichern mit wahlfreiem Zugriff, d.h. RAM-Speichern, die kein Verschieben von Datenelementen erfordern. Die vorliegende Erfindung betrifft den letzteren Typ der RAM-basierten seriellen Speicher. Bei herkömmlichen Puffer-Speichern dieser Art ist der Zeitbedarf eines Lesevorgangs hoch, da eine bestimmte Speicherzelle, die das angeforderte Datenelement enthält, ausgewählt werden muß (Aktivieren der Speicherzelle und Ausgabe auf die Bitleitung) und das von der Speicherzelle abgegebene Signal mit einem Verstärker zur Ausgabe aufbereitet werden muß. Somit haben die im Stand der Technik bekannten Systeme eine hohe Zugriffszeit.
Aufgabe der Erfindung ist die Schaffung eines seriellen Speichers und eines Verfahrens mit reduzierter Zugriffszeit zur Ausgabe von Datenelementen.
Zur Lösung dieser Aufgabe dient ein Speicher der eingangs genannten Art mit den kennzeichnenden Merkmalen des Patent­ anspruchs 1 bzw. 10.
Erfindungsgemäß wird während des Speicher-Lesezyklus, der einem aktuellen Lesebefehl für ein Datenelement in dem seriellen Speicher zugeordnet ist, die Lese-Operation für die Speicherzelle mit dem auf den nächsten Lesebefehl auszugebenden Datenelement eingeleitet und so parallel zum aktuellen Lesezyklus bereits die Speicherzelle des vom nächsten Lesebefehl angeforderten Datenele­ ments ausgewählt. In einer spezielleren Ausführungsform wird die Speicherzelle mit dem im nächsten Zyklus anzufordernden Datenele­ ment ausgelesen und schon im aktuellen Lesezyklus bereitgestellt. Daher kann in der bevorzugten Ausführungsform das aktuell angeforderte Datenelement ausgegeben werden, ohne daß die Speicherzelle mit diesem Datenelement ausgewählt oder ausgelesen werden müßte. Ferner ist der serielle Puffer-Speicher in der bevorzugten Ausführungsform als FIFO-Speicher (FIFO = First-In­ -First-Out) ausgelegt. Durch Parallelisierung realisiert die Erfindung ein vorteilhaftes Voraus-Lesen einer Speicherzelle noch bevor der Lese-Befehl für das in dieser Speicherzelle enthaltene Datenelement eintrifft.
Die Erfindung wird im folgenden anhand der Figuren näher erläutert. Es zeigen:
Fig. 1 eine Übersicht des Gesamtsystems entsprechend der bevorzugten Ausführungsform der Erfindung;
Fig. 2A, 2B, 2C Schaltungen zur Realisierung des Schreib- oder Lese-Zellenselektors aus Fig. 1;
Fig. 3A, 3B jeweils eine Speicherzelle mit zwei Anschlüssen zur Verwendung in einer Speichermatrix in Fig. 1;
Fig. 4 eine direkte Verbindung über die Speichermatrix für ein abzuspeicherndes Datenelement zu einem Anfangsdaten­ register;
Fig. 5A, 5B jeweils Schaltungen zur Erzeugung eines Statussig­ nals, das Informationen über den Zustand des Puffer- Speichers anzeigt;
Fig. 6 eine Steuerschaltung, die Steuersignale für die Torschaltungen und Register in Fig. 1 erzeugt;
Fig. 7 Aufbau der Steuerschaltung aus Fig. 6;
Fig. 8 eine Schaltung zum Zurücksetzen des Lese-Zellenselektors auf ein Zurücksetzsignal hin;
Fig. 9 eine Schaltung zum Zurücksetzen des Lese-Zellenselektors auf ein Zurücksetzsignal hin;
Fig. 10A bis 10F Wahrheitstabellen für die Einheiten RTR, SEL, INDW, INIT 1, RTW und INDR aus Fig. 7.
In Fig. 1 ist ein Puffer-Speicher 2 in einer bevorzugten Ausführungsform gemäß der Erfindung gezeigt. Dabei handelt es sich um einen FIFO-Puffer-Speicher und daher werden die Daten­ elemente in derselben Reihenfolge ausgegeben, in der sie vorher in den Puffer-Speicher geschrieben wurden. Es gibt eine linke Speichermatrix 4 und eine rechte Speichermatrix 6, die gleich aufgebaut sind und gleiche Anzahlen von Zeilen und Spalten haben. Beispielsweise möge jede Matrix vier Spalten mit einer Tiefe von je 128 Speicherzellen bilden, wobei jede Speicherzelle ein Datenelement von 9 Bit aufzunehmen vermag.
Im folgenden wird die Schreib-Operation im Puffer-Speicher erläutert. In jedem Schreibzyklus wird alternierend eine der beiden Speichermatrizen zum Abspeichern eines entsprechenden Datenelements aktiviert und innerhalb der jeweiligen Speicher­ matrix in einer durch eine vorgegebene Reihenfolge festgelegte Speicherzelle abgespeichert. Beispielsweise wird in einer Reihe aufeinanderfolgender Datenelemente das erste in Zelle 1 der linken Speichermatrix gespeichert, das nächste in Zelle 1 der rechten Matrix, das nächste in Zelle 2 der linken Matrix, das nächste in Zelle 2 der rechten Matrix, das nächste in Zelle 3 der linken Matrix, das nächste in Zelle 3 der rechten Matrix usw. Die Auswahl einer Speichermatrix zum Abspeichern wird von einem Schreib-Matrixselektor 8 durchgeführt. Durch ein Schreib­ signal auf der Schreibtaktleitung WRT CLK wird ein Schreibzyklus für ein bestimmtes Datenelement definiert, das über die WRT DATA-Leitung in den Puffer-Speicher geschrieben wird; der Schreib-Matrixselektor 8 wird durch das Schreibsignal aktiviert und wählt auf jedes Schreibsignal hin alternierend eine der beiden Speichermatrizen aus. Der Schreib-Matrixselektor kann auf verschiedene Weise aufgebaut werden, z.B. unter Benutzung von Dividier- oder Zählerschaltungen, Schieberegistern oder bi­ stabilen Kippstufen (Flip-Flops, wie im Fall der hier be­ schriebenen Ausführungsform) etc.; jede beliebige Schaltung, die in aufeinanderfolgenden Schreibzyklen abwechselnd die rechte und linke Matrix auswählt, kann als Schreib-Matrixselektor dienen. Die Auswahl einer Zelle zum Schreiben wird von den Schreib- Zellenselektoren 10 durchgeführt, von denen je einer den beiden Speichermatrizen zugeordnet ist. Der Aufbau des Schreib-Zellen­ selektors wird weiter unten beschrieben; seine Funktion besteht darin, in der zugehörigen Matrix eine Zelle nach einer vorge­ gebenen Reihenfolge auszuwählen, wenn die zugehörige Matrix durch den Schreib-Matrixselektor ausgewählt ist. Jede Matrix ist mit einem zugehörigen Anfangsdatenregister 12 über eine Schreib­ datenleitung WRT DATA verbunden, die durch die Matrix hin­ durchläuft; die WRT DATA-Leitungen übertragen die Datenelemente zur Abspeicherung in den Speichermatrizen. Die Anfangsdaten­ register 12 werden jeweils durch die Signale IDWL und IDWR aus einer Steuerschaltung 14 angesprochen und zur Aufnahme und Abspeicherung des ersten Elements einer Folge von Datenelementen veranlaßt, die in den Puffer-Speicher in die durch den Schreib- Matrixselektor 8 ausgewählte Speichermatrix geschrieben wird. Dieses erste Datenelement wird in das jeweilige Anfangsdaten­ register mit der WRT DATA-Leitung übertragen, die direkt durch die jeweilige Speichermatrix läuft. Wenn beispielsweise der Matrixselektor 8 mit der linken Matrix beginnt, so wird das in Zelle 1 der linken Matrix abzuspeichernde Datenelement über die WRT DATA-Leitung auch in das mit der linken Matrix verbundene Anfangsdatenregister übertragen und dort gespeichert. Wenn der Matrixselektor 8 mit der rechten Matrix beginnt, so wird ent­ sprechend das in Zelle 1 der rechten Matrix abzuspeichernde Datenelement über die WRT DATA-Leitung auch in das mit der rechten Matrix verbundene Anfangsdatenregister übertragen und dort gespeichert.
In einer abgewandelten Ausführungsform wird das Datenelement nur in das Anfangsdatenregister 12 geschrieben und nicht auch in eine Speicherzelle. In einer weiteren Ausführungsform wird das erste Datenelement über eine gesonderte Leitung in das Anfangs­ datenregister übertragen, die nicht durch die Speichermatrix verläuft. Es sei aber angemerkt, daß die durch die Speicher­ matrix durchlaufende Verbindung die Anforderung an den Datenbus und unerwünschte Aufladungseffekte vermindert. In einer weiteren Ausführungsform wird nur ein Anfangsdatenregister verwendet, das mit beiden Speichermatrizen verbunden ist.
Ein Übertragungsregister 16 wird mit der von dem Matrixselektor 8 als erstes auszuwählenden Speichermatrix verbunden. In Fig. 1 ist das Übertragungsregister beispielsweise mit der linken Speichermatrix 4 verbunden dargestellt. Das Übertragungsregister wird durch ein Signal RTW aus der Steuerschaltung 14 zur Auf­ nahme und Abspeicherung eines Datenelements veranlaßt, das in der linken Matrix gespeichert werden soll. In dieser Aus­ führungsform wird das abzuspeichernde Datenelement vom Über­ tragungsregister von derselben Leitung aufgenommen, die das Datenelement zum Anfangsdatenregister derselben Matrix über­ trägt. In einer abgewandelten Ausführungsform wird auf das Übertragungsregister und seine Funktion gänzlich verzichtet.
Es werden nun die Lese-Operationen des Puffer-Speichers anhand der in Fig. 1 dargestellten Ausführungsform erläutert. Da es sich bei dem Puffer-Speicher 2 um einen FIFO-Speicher handelt, werden die Datenelemente in derselben Reihenfolge aus dem Speicher ausgegeben, mit der sie in den Speicher hinein­ geschrieben wurden.
In jedem Lesezyklus wird eine Speicherzelle aus abwechselnd einer der Speichermatrizen ausgewählt und das darin enthaltene Datenelement ausgelesen. Das aus der Speicherzelle ausgelesene Datenelement ist jedoch nicht das in dem aktuellen Lesezyklus auszugebende, sondern das in dem nächstfolgenden Lesezyklus auszugebende Datenelement. Da das Lesen einer Speicherzelle die Auswahl der Zelle (Aktivieren der Speicherzelle zur Ausgabe des gespeicherten Signals auf die Datenbitleitungen) und das Aus­ lesen des Signals mit einem Leseverstärker erfordert, wird zum Lesen einer Speicherzelle mehr Zeit verbraucht als zur einfachen Ausgabe eines Datenelements aus einem Register oder einer Ausgabeleitung. Der Puffer-Speicher 2 arbeitet dadurch parallel, daß im voraus die als nächste angeforderte Speicherzelle aus­ gelesen wird und dadurch das Datenelement bereits auf einer Ausgabeleitung zur Verfügung steht, bevor der zugehörige Lese­ zyklus durch einen Lesebefehl für dieses Datenelement einge­ leitet wird. Die Auswahl und Auslese einer Speicherzelle, die ein aktuell angefordertes Datenelement enthält, sind bereits während des vorigen Lesezyklus durchgeführt, der dem durch den aktuellen Lesebefehl eingeleiteten unmittelbar vorausgeht. Auf diese Weise wird der gesamte Lesevorgang für ein Datenelement im voraus durchgeführt und es steht auf einer Ausgabeleitung zur Verfügung, wenn der Lesebefehl für dieses Datenelement ein­ trifft.
In abgewandelten Ausführungsformen kann das aus einer Speicher­ zelle ausgelesene Datenelement in einem Register oder einem Flip-Flop gespeichert werden, anstatt es auf einer Ausgabe­ leitung zu halten. In einer weiteren abgewandelten Ausführungs­ form kann die parallele Voraus-Operation auf das Auswählen der Speicherzelle, die das nächste Datenelement enthält, beschränkt sein, während das Auslesen der Speicherzelle erst nach Eintref­ fen des Lesebefehls für dieses Datenelement ausgeführt wird.
In der bevorzugten Ausführungsform kann das erste Datenelement, da es bereits in dem Anfangsdatenregister 12 gespeichert ist, ausgegeben werden, ohne daß ein vorhergehender Lesezyklus erforderlich wäre. Dann wird jedes nachfolgende Datenelement in dem Lesezyklus ausgelesen, der dem von seinem Lesebefehl einge­ leiteten unmittelbar vorausgeht. Jede Speichermatrix ist mit einem Leseverstärker 18 verbunden, der sich aus einer Reihe einzelner Verstärker für jedes Bit des Datenelements zusammen­ setzt. Die Auswahl einer Speichermatrix zur Auslese einer Speicherzelle daraus wird von einem Lese-Matrixselektor 20 durchgeführt. Der Lese-Matrixselektor kann genauso wie der Schreib-Matrixselektor auf viele verschiedenen Weisen aufgebaut werden. In der hier beschriebenen Ausführungsform, wird die Funktion durch ein Flip-Flop realisiert. Der Lese-Matrixselektor wird durch Lesesignale auf der Lesetaktleitung READ CLK ange­ sprochen und zur alternierenden Auswahl der linken und rechten Speichermatrix in aufeinanderfolgenden Lesezyklen veranlaßt. Die Auswahl einer Matrixzelle zum Auslesen wird von den Lese-Zellen­ selektoren 22 durchgeführt, von denen je einer den beiden Speichermatrizen zugeordnet ist. Der Aufbau des Lese-Zellen­ selektors wird weiter unten beschrieben; seine Funktion besteht darin, in der zugehörigen Matrix eine Zelle nach der Reihen­ folge, mit der die Datenelemente in den Speicher eingeschrieben wurden, auszuwählen, wenn die zugehörige Matrix durch den Lese- Matrixselektor für einen Lesevorgang ausgewählt ist. Jeder Leseverstärker 18 wird durch ein Signal aus dem Lese-Matrix­ selektor zur Auslese einer Zelle aktiviert, die durch den zugehörigen Lese-Zellenselektor 22 ausgewählt ist. Der Ausgabe­ wert einer Speicherzelle wird durch die Leseverstärker auf zugehörige Ausgabeleitungen 24 übertragen. Die Ausgabeleitungen der Anfangsdatenregister 12, der Übertragungsregister 16 und die Ausgabeleitungen 24 der Leseverstärker 18 sind gesondert mit einer Anordnung von Torschaltungen 26 verbunden. Die Torschal­ tungen 26 werden durch die Steuerschaltung 14 (gezeigt in Fig. 6 und detaillierter in Fig. 7) gesteuert, um in jedem Lese­ zyklus nur eine ausgewählte Ausgabeleitung mit einem Ausgangs­ treiber 28 zu verbinden - entweder eines der Anfangsdaten­ register, das Übertragungsdatenregister oder eine Ausgabe­ leitung.
Im ersten Lesezyklus wird das erste Datenelement aus dem An­ fangsdatenregister ausgegeben, in das es zuvor beim Abspeichern in den Puffer-Speicher geschrieben wurde. Ebenfalls wird im ersten Lesezyklus das als nächstes (d.h. im zweiten Lesezyklus) auszugebende Datenelement aus einer Speicherzelle in der anderen Speichermatrix, die der Matrix mit dem angeschlossenen Anfangs­ datenregister mit dem ersten Datenelement gegenüberliegt, gelesen. Die erste Zelle dieser gegenüberliegenden Matrix wird während des ersten Lesezyklus ausgewählt und ausgelesen und das verstärkte Datensignal auf die Ausgabeleitung 24 gelegt. In jedem folgenden Lesezyklus wird dann das zuvor gelesene Daten­ element über eine Ausgabeleitung 24 abgegeben, während das im folgenden Lesezyklus auszugebende Datenelement aus der nächsten Zelle der anderen Matrix gelesen wird, die der Matrix, aus der das in diesem Lesezyklus auszugebende Datenelement gelesen wurde, gegenüberliegt. So wird jeweils das nächste auszugebende Datenelement gelesen (Auswählen der Speicherzelle, Auslesen und Übertragen des verstärkten Signals auf einer Ausgabeleitung), während das im akutellen Lesezyklus auszugebende über eine Ausgabeleitung abgegeben wird. Auf diese Weise ist ein parallel arbeitender FIFO-Puffer-Speicher mit Voraus-Lesen realisiert.
Fig. 2A zeigt einen seriellen Selektor, der zum Aufbau des Schreib-Zellenselektors 10 oder des Lese-Zellenselektors 22 in Fig. 1 verwendet werden kann. Der serielle Selektor umfaßt ein Ringschieberegister mit einem Schieberegister 30, das über eine Rückkopplungsleitung 32 geschlossen wird. Die Anzahl der Stufen des Schieberegisters entspricht der Anzahl der Zeilen in der Speichermatrix; jede Stufe des Schieberegisters ist einer bestimmten Zeile der Speichermatrix zugeordnet. Zu Beginn wird ein Bit in eine vorgegebene Position innerhalb des Schieberegi­ sters 30 eingegeben und zeigt so auf eine bestimmte Zeile. Bei jedem Taktimpuls wird das Zeiger-Bit um eine Stufe innerhalb des Schieberegisters verschoben und zeigt so auf die nächste Zeile von Speicherzellen. In dem hier gewählten Beispiel umfaßt das Schieberegister 128 Stufen von 0 bis 127, die genau den Zeilen 0 bis 127 der Speichermatrix entsprechen. Außerdem ist die Rückkopplungsleitung mit einer Zähler/Dekodier-Kombination 32 verbunden. Für eine Speichermatrix mit 4 Spalten wird ein Zwei- Bit-Zähler benutzt, so daß der Dekodierer eine von vielen Spalten entsprechend des Zählerzustands auswählen kann. Jedesmal wenn das Zeiger-Bit über die Rückkopplungsleitung 32 zurückge­ führt wird, wird der Zwei-Bit-Zähler um eins heraufgezählt. So wählt das Ringschieberegister 30 zusammen mit der Zähler/De­ kodier-Kombination 33 seriell alle Zellen der zugehörigen Speichermatrix aus, die 128 Zeilen und 4 Spalten von Speicher­ zellen aufweist.
Die Länge des Schieberegisters 30 wird durch die Anzahl der Zeilen der Speichermatrix festgelegt und die Dimensionierung der Zähler/Dekodier-Kombination bestimmt sich aus der Anzahl der Spalten der Speichermatrix.
In einer abgewandelten Ausführungsform kann die Anzahl der Stufen des Schieberegisters auch die Hälfte der Anzahl der Zellen der Speichermatrix betragen. In diesem Fall bezeichnet jede Stufe einen Satz von zwei Zeilen und ein weiterer Zeilen­ selektor wählt in aufeinanderfolgenden Zyklen jeweils eine der Zeilen aus. Ferner kann die Stufenanzahl des Schieberegisters zur Speichermatrixdimensionierung in weitere unterschiedliche Verhältnisse gesetzt werden, wenn ein zusätzlicher Zeilenselek­ tor aus dem von der Schieberegisterstufe bezeichneten Satz von Zeilen eine auswählt. Dieses abgewandelte Schema kann immer bei Benutzung eines Schieberegisters mit einem Zeiger-Bit Anwendung finden.
Fig. 2B zeigt einen alternativen seriellen Selektor, der zum Aufbau des Schreib-Zellenselektors 10 oder des Lese-Zellenselek­ tors 22 in Fig. 1 verwendet werden kann. Der serielle Selektor enthält einen Mehr-Bit-Zähler 35, einen Zeilendekodierer 36 und einen Spaltendekodierer 38. Der Zähler 34 wird jedes Mal in­ krementiert, wenn der serielle Selektor zur Auswahl einer Speicherzelle aktiviert wird. Die stellen-niedrigsten Bits werden zur Auswahl einer bestimmten Zeile in der Speichermatrix dekodiert, während die stellen-höheren Bits zur Auswahl einer bestimmten Spalte in der Speichermatrix dekodiert werden. Für eine Speichermatrix mit 128 Zeilen und 4 Spalten wird ein Neun- Bit-Zähler benötigt, wie in Fig. 2B gezeigt. Die 7 stellen­ niedrigsten Bits werden zur Zeilenauswahl und die zwei stellen­ höchsten Bits zur Spaltenauswahl benutzt.
Fig. 2C zeigt einen weiteren seriellen Selektor, der zum Aufbau des Schreib-Zellenselektors 10 oder des Lese-Zellenselektors 22 in Fig. 1 verwendet werden kann. Ein erstes Schieberegister 15 wird durch eine Rückkopplungsleitung 17 geschlossen und zeigt mit seinen 128 Stufen jeweils auf eine der 128 Zeilen der Speichermatrix; ein zweites Ringschieberegister 18 mit 4 Stufen zeigt auf jeweils eine der vier Spalten der Matrix. Die Rückkop­ plungsleitung 17 des ersten Schieberegisters 15 ist so mit dem zweiten Schieberegister 18 verbunden, daß dieses aktiviert wird, jedes Mal wenn das Zeiger-Bit im Schieberegister 15 über die Rückkopplungsleitung 17 zurückgeführt wird. Mit dieser Anordnung wird im ersten Schieberegister 15 ein Zeiger-Bit für eine bestimmte Zeile und in dem zweiten Schieberegister 19 ein Zeiger-Bit für eine bestimmte Spalte der Speichermatrix zur Verfügung gestellt.
Bei allen oben beschriebenen seriellen Selektoren kann der Zustand des Selektors bei Aktivierung als Auswahl einer bestimm­ ten Speicherzelle dienen. Als Alternative kann der Selektor, der bei Aktivierung in einen neuen Zustand übergeht, den neuen Zustand als bestimmte Auswahl darstellen.
Die vorliegende Erfindung benutzt Speicherzellen mit zwei Anschlüssen, um gleichzeitiges Schreiben und Lesen in dem FIFO- Puffer-Speicher zu ermöglichen. Der eine Anschluß wird benutzt, um Daten in die Speicherzelle zu schreiben, und ist darum mit der WRT DATA-Leitung verbunden. Der andere Anschluß wird zum Auslesen der Speicherzelle verwendet und ist darum mit einem Leseverstärker verbunden. Die Fig. 3A und 3B zeigen zwei von vielen Typen von Speicherzellen mit zwei Anschlüssen, die in der Erfindung benutzt werden können. Der Anschluß A ist mit der WRT DATA-Leitung verbunden dargestellt und der Anschluß B ist über eine Leseleitung READ DATA mit einem Leseverstärker (nicht gezeigt) verbunden. WL bezeichnet eine Signalleitung von dem Schreib-Zellenselektor 10 und RL eine Signalleitung von dem Lese-Zellenselektor 22 zur Aktivierung von Schreib- bzw. Lese­ funktion.
In der bevorzugten Ausführungsform läuft die WRT DATA-Leitung durch die Speichermatrix hindurch, um weiter die Verbindung mit dem zugehörigen Anfangsdatenregister 12 herzustellen. Diese Verbindung ist in Fig. 4 dargestellt. Die Speicherzellen 40 haben Anschluß an die WRT DATA-Leitung, die sich aus einer Leitung für das Datensignal und einer Leitung für das Kom­ plement-Datensignal zusammensetzt, die durch die Speichermatrix hindurchlaufen und mit dem Anfangsdatenregister 12 verbunden sind.
Fig. 5A zeigt einen Statussignal-Generator 34, der Signale zur Anzeige bestimmter Zustände des Puffer-Speichers erzeugt. Zu den Bedingungen, die vom Statussignal-Generator überwacht werden, gehört der Leer-Zustand, d.h. keine Daten wurden in den Puffer- Speicher geschrieben wurden oder alle Daten bereits wieder ausgelesen; der Voll-Zustand wird angezeigt, wenn alle Zellen im Puffer-Speicher beschrieben und keine ausgelesen wurde; der Halbvoll-Zustand wird angezeigt, wenn mehr als die Hälfte der Zellen beschrieben und nicht ausgelesen wurden. Ein Schreibzäh­ ler 42 wird in jedem Schreibzyklus durch das Schreibsignal inkrementiert und ein Lesezähler 44 wird entsprechend durch das Lesesignal eines Lesezyklus inkrementiert. Ein Komparator 46 vergleicht die Zählstände der Zähler 42 und 44. Ist die Dif­ ferenz Null, so wird der Leer-Zustand durch Erzeugung eines Signals EMPTY angezeigt; ist die Differenz gleich der gesamten Aufnahmefähigkeit des Puffer-Speichers, so wird der Voll-Zustand durch Erzeugung eines Signals FULL angezeigt; ist die Differenz größer als die Hälfte der Aufnahmefähigkeit des Puffer-Spei­ chers, so wird der Halbvoll-Zustand durch Erzeugung eines Signals HFULL angezeigt. In einer weiteren Ausführungsform werden die Zählerstände der beiden Zähler durch einen Komparator auf Gleichheit überprüft und der Komparator registriert, wie oft die Gleichheit der beiden Zählerstände aufgetreten ist. Abhängig von dieser Zahl ist der Speicherzustand entweder weniger oder mehr als halbvoll. Alternativ können die EMPTY-, FULL- und HFULL-Statussignale durch einen Aufwärts-Abwärts-Zähler erzeugt werden, wie in Fig. 5B gezeigt. Der Aufwärts-Abwärts-Zähler 48 zählt auf ein Schreibsignal hin in eine Richtung und auf eine Lesesignal in die andere Richtung. So entspricht der Zählerstand der Anzahl der in den Puffer-Speicher geschriebenen Datenele­ mente, die noch nicht gelesen sind. Der Zähler ist mit einem Komparator 50 verbunden, der den Zählerstand mit verschiedenen vorgegebenen Werten vergleicht, um die verschiedenen Zustands­ signale zu erzeugen. Die Statussignale können an die Steuer­ schaltung 14 in Fig. 1 weitergegeben werden, um bestimmte Funktionen auszulösen, wenn einer der im Puffer-Speicher über­ wachten Zustände erreicht wird. Die Statussignale können auch von dem Puffer-Speicher nach außen abgegeben werden.
In Fig. 6 ist die Steuerschaltung 14 mit ihren Eingangssignalen und den von ihr erzeugten Ausgabesignalen gezeigt. Es gibt fünf verschiedene Quellen von Eingangssignalen: Die Leitung RETRANS- MIT zur Eingabe eines externen Übertragungssignals, der Schreib- Matrixselektor 8 (tasächlich gibt es zwei Eingangsleitungen, eine zum Anwählen der linken und eine zum Anwählen der rechten Speichermatrix, von denen nur eine gezeigt ist), der Lese- Matrixselektor 20 (wiederum gibt es zwei Leitungen, jeweils für die linke und die rechte Speichermatrix, von denen nur eine gezeigt ist), der Schreib-Zellenselektor 10 in Verbindung mit der linken Speichermatrix (es sei angenommen, daß die linke Speichermatrix zum Schreiben des ersten Datenelements bestimmt ist) und eine EMPTY-Signalleitung aus dem Steuersignal-Generator 34, der vorher in Zusammenhang mit den Fig. 5A und 5B be­ schrieben wurde. Den fünf Eingabesignalen stehen acht Ausgabe­ signale gegenüber; davon werden fünf zu den Torschaltungen 26 gesandt, um durch geeignetes Öffnen und Schließen der Torschal­ tungen eine bestimmte Ausgabe zu wählen: SEL (Auswahl links - die Torschaltungen sind so zu steuern, daß die Ausgabeleitung des Leseverstärkers von der linken Speichermatrix auf den Ausgabe-Pin geschaltet wird), SELR (wie SEL, nur wird jetzt anstelle der linken die rechte Speichermatrix angefordert), INDR (erstes Datenlesen - das Datenelement aus dem Anfangsdaten­ register der linken Speichermatrix ist auf den Ausgabe-Pin zu legen), INDRR (wie INDR, nur ist anstelle der linken die rechte Speichermatrix angefordert), RTR (das Datenelement aus dem Übertragungsregister ist auf den Ausgabe-Pin zu schalten). Die anderen drei Ausgabesignale der Steuerschaltung 14 sind: INDW (macht das Anfangsdatenregister der linken Speichermatrix zur Aufnahme eines Datenelements bereit, das in dem Puffer-Speicher geschrieben wird), INDWR (wie INDW, nur wird das Anfangsdaten­ register der rechten anstatt der linken Speichermatrix ange­ steuert), RTW (macht das Übertragungsregister zur Aufnahme eines Datenelements schreibbereit, das in den Puffer-Speicher ge­ schrieben wird).
In einer abgewandelten Ausführungsform kann das Signal für den Leer-Zustand auch durch ein extern eingegebenes Startsignal ersetzt werden, auf das die Steuerschaltung 14 in der gleichen Weise wie auf das Leer-Signal reagieren würde. In einer weiteren Ausführungsform kann ein solches externes Startsignal auch zusätzlich zu dem Leer-Signal als weiteres Eingabesignal vor­ gesehen sein. In diesem Fall ist die Steuerschaltung so anzupas­ sen, daß sie auf das zusätzliche Signal in der gleichen Weise wie auf das Leer-Signal reagiert.
Fig. 7 zeigt eine detailliertere Darstellung der Steuerschal­ tung 14 aus Fig. 6 zusammen mit ihren Eingabeverbindungen und Ausgabeleitungen. Von dem Schreib-Matrixselektor 8 erhält die Steuerschaltung zwei Eingabesignale, eines zum Auswählen der linken und eines zum Auswählen der rechten Speichermatrix; ebenso zwei Eingabesignale vom Lese-Matrixselektor 20 zum Auswählen der linken und rechten Speichermatrix. Ist der Puffer- Speicher leer (d.h. kein Datenelement ist eingeschrieben oder alle eingeschriebenen Datenelemente sind bereits wieder ausge­ lesen), so zeigt der Statussignal-Generator 34 diesen Zustand durch das EMPTY-Signal der Steuerschaltung 14 an. Bei Vorliegen dieses Zustands veranlaßt die Steuerschaltung, daß das nächste in den Puffer-Speicher geschriebene Datenelement von dem An­ fangsdatenregister an der von dem Schreib-Matrixselektor 8 ausgewählten Speichermatrix aufgenommen wird, was durch die Signale INDW für das Anfangsdatenregister der linken Matrix und durch das Signal INDWR (für das Anfangsdatenregister der rechten Matrix) gesteuert wird. Ebenfalls veranlaßt die Steuerschaltung bei diesem Zustand, daß das nächste aus dem Puffer-Speicher auszugebende Datenelement aus dem Anfangsdatenregister entnommen wird, das das nach Vorliegen des Leer-Zustands erste in den Puffer-Speicher geschriebene Datenelement enthält; diese Steu­ erung wird durch das Signal INDR zum Lesen des mit der linken Speichermatrix 6 verbundenen Anfangsdatenregisters und durch das Signal INDRR zum Lesen des zur rechten Matrix gehörenden An­ fangsdatenregisters vorgenommen.
Die Steuerschaltung 14 reagiert auf ein Signal des Schreib- Zellenselektors 10 der linken Matrix - angenommen, daß die erste Zellenposition in der linken Speichermatrix liege - in der Weise, daß jedes Mal, wenn diese erste Position zum Schreiben ausgewählt ist, die Steuerschaltung durch Ausgabe des Signals RTW das Übertragungsregister zur Aufnahme dieses in die erste Zellposition geschriebenen Datenelements bereitmacht; so wird der Inhalt des Übertragungsregisters ständig aktualisiert und enthält immer das neueste in der ersten Zellposition des Puffer- Speichers abgespeicherte Datenelement. Liegt ein extern einge­ gebenes Signal RETRANSMIT an der Steuerlogik 14 an, so gibt die Steuerschaltung das Signal RTR aus, was die Torschaltungen zum Durchschalten des Übertragungsregisters auf den Ausgangstreiber 28 veranlaßt, wie in Fig. 1 gezeigt.
Liegt kein EMPTY- oder RETRANSMIT-Signal vor, so wird die Steuerschaltung durch Signale des Lese-Matrixselektors 20 aktiviert, um die jeweiligen Leseverstärkerausgaben in alter­ nierender Weise auf den Ausgangstreiber durchzuschalten: Erst von der einen Matrix, dann von der anderen, wieder von der einen Matrix usw., was durch die Ausgabesignale SEL und SELR gesteuert wird (SEL zum Durchschalten der Leseverstärkerausgabe der linken Matrix, SELR zum Durchschalten der Leseverstärkerausgabe der rechten Matrix). Das von dem jeweiligen Leseverstärker auf den Ausgangstreiber geschaltete Datenelement wurde bereits im vorhergehenden Lesezyklus auf der Ausgabeleitung des Lesever­ stärkers bereitgestellt. Soll der Inhalt eines Anfangsdaten­ registers oder des Übertragungsregisters ausgegeben werden, so unterdrückt die Steuerschaltung die Erzeugung von sonst zur Ausgabe notwendigen SEL- oder SELR-Signalen. Diese Unterdrückung geschieht durch eine INIT 1-Schaltung für das SEL-Signal und durch eine weitere INIT 1-Schaltung für das SELR-Signal. So verhindern die INIT 1-Schaltungen ein Durchschalten der Ausgabe­ leitung des jeweiligen Leseverstärkers, wenn der Inhalt entweder eines Anfangsdatenregisters oder des Übertragungsdatenregisters ausgegeben werden soll. Jedoch wird auch während einer solchen Unterdrückung das nächste Datenelement aus einer Speicherzelle ausgelesen und auf die Ausgabeleitung des jeweiligen Lesever­ stärkers gelegt, was durch die anderen Schaltungen in Fig. 1 erreicht wird.
Die bevorzugte Ausführungsform der Steuerschaltung 14 ist mit den Komponenten INIT 1, RTR, SEL, INDW, INDR, SELR, INDWR, INDRR und RTW gezeigt, die alle als Schaltungen von monostabilen Kippstufen und/oder D-Flip-Flops aufgebaut sind. Natürlich kann die Steuerschaltung durch verschiedenartige Schaltkreise auf­ gebaut werden, wenn diese die acht Ausgabesignale in der vor­ gegebenen Weise aus den fünf Eingangssignalen erzeugen. Für die hier beschriebene Ausführungsform sind die Eingabe/Ausgabe- Spezifikationen als Funktionstabellen der einzelnen Schaltungs­ einheiten in den Fig. 10A bis 10F dargestellt. Beispielhaft seien hier die Funktionstabellen der Komponenten RTR und SEL erläutert. Wie Fig. 10A zu entnehmen ist, gibt die RTR-Einheit gesteuert durch die Anstiegsflanke eines RETRANSMIT-Signals einen RTR-Signalpuls aus. Die Funktionstabelle in Fig. 10B zeigt, daß die SEL-Einheit auf die Anstiegsflanke eines Signals aus dem Lese-Matrixselektor einen Puls ausgibt, falls in Koin­ zidenz ein Signal aus der INIT 1-Einheit anliegt. Fig. 10C ist die Funktionstabelle der INDW-Einheit, Fig. 10D die der INIT 1- Einheit, Fig. 10E die der RTW-Einheit und Fig. 10F die der INDR-Einheit.
Durch ein RETRANSMIT-Signal wird der Puffer-Speicher zum Wieder­ auslesen der gespeicherten Daten vorbereitet. Folglich muß auf ein extern eingegebenes RETRANSMIT-Signal die vorgegebene Auslesefolge des Puffer-Speichers in den Ausgangszustand zurück­ versetzt werden; dies bedeutet, daß der Lese-Matrixselektor und die Lese-Zellenselektoren auf die erste Zelle des Puffer-Spei­ chers zeigen müssen. In der bevorzugten Ausführungsform wird dies durch eine einfache Schaltung erreicht, die den Lese- Matrixselektor 20 und die Lese-Zellenselektoren 22 aus Fig. 1 in ihrer Ausgangsstellung zurücksetzt. In Fig. 8 ist eine Lesezeiger-Rücksetzschaltung 54 verbunden mit den als einzelne Blöcke dargestellten Lese-Matrixselektor 20 und einem Lese- Zellenselektor 22 gezeigt. In dem auf das Rücksetzsignal fol­ gende Lesezyklus verursacht die Steuerschaltung 14 die Ausgabe des Datenelements aus dem Übertragungsregister. Anschließend wird der Inhalt des Puffer-Speichers in den nachfolgenden Lesezyklen in der schon erläuterten Weise des parallen Voraus- Lesens ausgegeben.
Die Steuerschaltung betreibt den Puffer-Speicher unter folgenden Bedingungen in einem Durchfluß-Modus: Wenn ein Leersignal vorliegt, kein READ CLK-Lesepuls den Lese-Matrixselektor akti­ viert und ein Schreibzyklus durch Aktivieren des Schreib-Matrix­ selektors eintritt, so wird das in diesem Zyklus eingeschriebene Datenelement nach Abschluß des Schreibzyklus aus einem Anfangs­ datenregister auf den Ausgangstreiber gegeben.
In einer Ausführungsform, in der die Möglichkeit zur Eingabe eines externen Rücksetzsignals vorgesehen ist, wird der Puffer- Speicher durch das externe Rücksetzsignal in den Ausgangszustand versetzt, was durch Rücksetzen von Schreib-Matrixselektor 8, Schreib-Zellenselektor 10, Lese-Matrixselektor 20, Lese-Zellen­ selektor 22 und von Schreib- und Lesezähler 42, 44 im Status­ signalgenerator 34 geschieht. Das Rücksetzen von Schreib-Matrix­ selektor, Schreib-Zellenselektoren, Lese-Matrixselektor und Lese-Zellenselektoren durch ein Rücksetzsignal kann genauso ausgeführt werden wie beim Rücksetzen von Lese-Matrixselektor und Lese-Zellenselektoren aufgrund eines RETRANSMIT-Signals. Zum Rücksetzen der Schreib- und Lesezähler im Statussignal-Generator 34 dienen einfache Schaltkreise, die die Zähler mit Null initia­ lisieren. Fig. 9 zeigt eine Rücksetzschaltung 56, die ein externes Rücksetzsignal empfängt, in Verknüpfung mit dem Status­ signal-Generator 34, dem Schreib-Matrixselektor 8, dem Schreib- Zellenselektor 10, dem Lese-Matrixselektor 20 und mit dem Lese- Zellenselektor 22.
Die vorliegende Erfindung ist nicht auf serielle Speicher beschränkt, die eine FIFO-Reihenfolge zum Schreiben und Lesen der Daten verwenden. Das erfindungsgemäße parallele Voraus-Lesen kann in allen seriellen Speichern Anwendung finden, in denen die Reihenfolge der Eingabedaten die Ausgabereihenfolge definiert, wie z.B. in LIFO-Speichern (last-in-first-out). Für den Fachmann sind Variationsmöglichkeiten der hier beschriebenen Schaltungen zur Realisierung ihrer Funktionen offensichtlich. Die speziellen Ausführungsformen sollen erläuternden Charakter haben und den Bereich der folgenden Ansprüche nicht einschränken.

Claims (17)

1. Serieller Speicher zum Einschreiben einer Folge von Daten­ elementen mit einer zugeordneten Folge von Schreibsignalen, von denen jedes einen Schreibzyklus auslöst, in dem das dem Schreibzyklus zugeordnete Datenelement in den Speicher geschrieben wird, und durch eine Folge von Lesesignalen ansteuerbar, von denen jedes einen Lesezyklus auslöst, zum Lesen und Ausgeben gespeicherter Datenelemente aus dem seriellen Speicher in einer Reihenfolge, die durch die Reihenfolge festgelegt wird, mit der die Datenelemente in den seriellen Speicher eingeschrieben wurden, gekennzeichnet durch:
  • - eine Mehrzahl von Speichermatrizen mit jeweils einer Mehrzahl von Speicherzellen;
  • - eine Mehrzahl von Schreib-Zellenselektionseinrichtungen, die jeweils mit einer zugehörigen Speichermatrix verbunden sind und zur Auswahl einer Zelle, entsprechend einer ersten vorgegebenen Reihenfolge, zum Abspeichern eines Daten­ elements in der Matrix dienen;
  • - eine Schreib-Matrixselektionseinrichtung, die von jedem der aufeinanderfolgenden Schreibsignale angesteuert wird, um eine der Speichermatrizen durch Aktivierung der zugehörigen Schreib-Zellenselektionseinrichtung auszuwählen, ent­ sprechend einer zweiten vorgegebenen Reihenfolge;
  • - eine Mehrzahl von Lese-Zellenselektionseinrichtungen, die jeweils mit einer Speichermatrix verbunden sind und zur Auswahl einer Zelle, entsprechend einer dritten vorgegebenen Reihenfolge, in der Matrix dienen;
  • - eine Lese-Matrixselektionseinrichtung, die von jedem der aufeinanderfolgenden Lesesignale angesteuert wird, um eine der Speichermatrizen durch Aktivierung der zugehörigen Lese- Zellenselektionsrichtungen auszuwählen, entsprechend einer vierten vorgegebenen Reihenfolge;
  • - eine Mehrzahl von Ausleseeinrichtungen, von denen jede mit einer Speichermatrix verbunden ist und zum Auslesen einer Speicherzelle darin dient, die durch die zugehörige Lese- Zellenselektionseinrichtung ausgewählt ist;
  • - ein Anfangsdatenregister zum Speichern eines ausgezeich­ neten Elements aus der Folge der Datenelemente;
  • - eine Ausgabeeinrichtung, die durch ein einziges Lesesignal aus der Folge der Lesesignale zur Ausgabe des im An­ fangsdatenregister gespeicherten Datenelements und durch jedes nachfolgende Lesesignal in der Folge der Lesesignale zur Ausgabe eines Datenelements veranlaßt wird, das in einem früheren Lesezyklus entsprechend einem vorangehenden Lese­ signal ausgelesen wurde;
  • - wodurch das Lesen des seriellen Speichers parallel ausge­ führt wird, indem ein Datenelement in einem Lesezyklus ausgegeben wird und in demselben Lesezyklus das als nächstes auszugebende Datenelement ausgelesen wird.
2. Speicher nach Anspruch 1, dadurch gekennzeichnet, daß jeder aus der Mehrzahl der Speichermatrizen ein eigenes Anfangs­ datenregister zugeordnet ist, der weiterhin aufweist:
  • - Mittel zur Auszeichnung eines Datenelements aus der Folge als das ausgezeichnete Datenelement;
  • - eine Einrichtung zur Auswahl des Anfangsdatenregisters, die durch die Auszeichnungsmittel gesteuert eines der Anfangsdatenregister zum Speichern des ausgezeichneten Datenelements auswählt.
3. Speicher nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß
  • - die Ausgabereihenfolge mit der Eingabereihenfolge in einer FIFO-Beziehung steht, so daß die Datenelemente in der gleichen Reihenfolge ausgegeben werden, in der sie in den Speicher geschrieben wurden.
4. Speicher nach A spruch 3, dadurch gekennzeichnet, daß
  • - eine Statussignaleinrichtung zur Erzeugung eines Leer- Signals zur Anzeige dafür vorhanden ist, daß entweder alle Datenelemente, die in die durch besagte Schreib-Selektions­ einrichtungen ausgewählten Speicherzellen eingeschrieben wurden, ausgelesen sind oder daß aus der Folge der Datenele­ mente keines in dem Puffer-Speicher geschrieben wurde;
  • - die Auszeichnungsmittel in dem erzeugten Leer-Signal bestehen, wodurch das nach dem Leer-Signal als nächstes in den Speicher zu schreibende Datenelement als das ausge­ zeichnete bestimmt wird.
5. Speicher nach Anspruch 4, dadurch gekennzeichnet, daß
  • - die Folge von Schreibsignalen ein Schreibsignal enthält, das dem ausgezeichneten Datenelement zugeordnet ist;
  • - wodurch das ausgezeichnete-Datenelement sowohl in eine Speicherzelle geschrieben als auch in einem Anfangsdaten­ register gespeichert wird.
6. Speicher nach Anspruch 3, dadurch gekennzeichnet, daß
  • - jede Schreibleitung, die Daten in die Speicherzellen überträgt, durch die Speichermatrix hindurch zum Anschluß an einen Anfangsdatenregister weiterführt.
7. Speicher nach Anspruch 3, ferner gekennzeichnet durch:
  • - ein Übertragungsregister;
  • - Mittel zum Speichern des ausgezeichneten Datenelements in dem Übertragungsregister;
  • - Übertragungsmittel, die durch ein extern eingegebenes Übertragungssignal gesteuert werden, um die dritte und vierte der vorgegebenen Folgen zurückzusetzen und um die Ausgabeeinrichtung in dem auf das Übertragungssignal folgen­ den Lesezyklus zu unterbrechen und zur Ausgabe des Inhalts des Übertragungsregisters in diesem Lesezyklus zu veranlas­ sen.
8. Speicher nach Anspruch 3, dadurch gekennzeichnet, daß
  • - die Mehrzahl von Speichermatrizen lediglich eine erste und eine zweite Speichermatrix umfaßt;
  • - die zweite und vierte der vorgegebenen Folgen alternierend zwischen der ersten und zweiten Speichermatrix wechseln, jedes Mal wenn die Folge der Datenelemente um eines weiter­ läuft.
9. Speicher nach einem der Ansprüche 1 bis 8, dadurch gekenn­ zeichnet, daß die Ausgabeeinrichtung zur Ausgabe eines Datenelements veranlaßt wird, das aus einer Speicherzelle ausgelesen wird, die in einem früheren Lesezyklus ent­ sprechend einem vorangehenden Lesesignal ausgewählt wurde, wodurch das Lesen des Speichers parallel ausgeführt wird, indem ein Datenelement in einem Lesezyklus ausgegeben wird und in demselben Lesezyklus die Speicherzelle des als nächstem auszugebenden Datenelements ausgewählt wird.
10. Verfahren zur parallelen Durchführung der Lese-Operationen eines seriellen Speichers, in dem die Ausgabereihenfolge der Datenelemente durch die Reihenfolge definiert wird, mit der sie in dem seriellen Speicher geschrieben wurden, durch Voraus-Lesen einer Speicherzelle in einem durch einen aktuellen Lesebefehl zugeordneten Lesezyklus, die das im nächsten Lesezyklus durch den nächstfolgenden Lesebefehl angeforderte und auszugebende Datenelement enthält, während das durch den aktuellen Lesebefehl angeforderte Datenelement ausgegeben wird, ohne daß die Speicherzelle mit dem aktuel­ len angeforderten Datenelement in diesem Lesezyklus aus­ gelesen wird, gekennzeichnet durch die Schritte:
  • - Abspeichern eines ausgezeichneten Elements aus der Folge der Datenelemente in einem Anfangsdatenregister;
  • - abwechselndes Schreiben der nachfolgenden Datenelemente in eine Mehrzahl von Speichermatrizen, die jeweils eine Mehr­ zahl von Speicherzellen haben, entsprechend einer ersten vorgegebenen Reihenfolge der Matrixauswahl und entsprechend einer zweiten vorgegebenen Reihenfolge der Zellenauswahl innerhalb jeder Matrix;
  • - in einem einzigen Lesezyklus Ausgabe des ausgezeichneten Datenelements aus dem Anfangsdatenregister und Auslesen der Speicherzelle mit dem als nächstem von dem seriellen Spei­ cher auszugebenden Datenelement;
  • - in jedem auf den einzigen Lesezyklus folgenden Lesezyklus Ausgabe eines Datenelements, das bereits in einem früheren Lesezyklus aus einer Speicherzelle ausgelesen wurde, und Auslesen der Speicherzelle mit dem als nächsten von dem seriellen Speicher auszugebenden Datenelement.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß
  • - die Ausgabereihenfolge mit der Eingabereihenfolge in einer FIFO-Beziehung steht, so daß die Datenelement in der glei­ chen Reihenfolge ausgegeben werden, in der sie in den Speicher geschrieben wurden.
12. Verfahren nach Anspruch 11, gekennzeichnet durch den weite­ ren Schritt:
  • - Bereithalten jedes ausgelesenen Datenelements auf einer Ausgabeleitung, bis das Datenelement von der Ausgabeleitung in besagtem Ausgabeschritt ausgegeben wird.
13. Verfahren nach Anspruch 11, dadurch gekennzeichnet, daß in einem weiteren Schritt das Zurücksetzen des seriellen Speichers ausgelöst durch ein externes Rücksetzsignal beinhaltet, wobei das Zurücksetzen die Schritte enthält:
  • - Zurücksetzen der ersten und zweiten vorgegebenen Folgen an ihren Ausgangspunkt;
  • - Bezeichnen des nächsten eingeschriebenen Datenelements als das in der Folge der Datenelemente ausgezeichnete;
  • - Festlegen des nächsten Lesezyklus als besagten einzigen Lesezyklus.
14. Verfahren nach Anspruch 11, gekennzeichnet durch die weite­ ren Schritte:
  • - Erzeugung eines Leer-Signals, wenn alle in dem Schreib­ schritt in Speicherzellen geschriebenen Datenelemente ausgelesen wurden oder in dem Schreibschritt kein Datenele­ ment in eine Speicherzelle geschrieben wurde; und
  • - veranlaßt durch das Leer-Signal Zurücksetzen der ersten und zweiten vorgegebenen Folge an ihren Ausgangspunkt,
  • - Bezeichnen des nächsten eingeschriebenen Datenelements als das ausgezeichnete Datenelement in der Folge der Datenele­ mente, und
  • - Festlegen des nächsten Lesezyklus als besagten einzigen Lesezyklus.
15. Verfahren nach Anspruch 11, gekennzeichnet durch die wei­ teren Schritte:
  • - Abspeichern des ausgezeichneten Datenelements in einem Ubertragungsregister; und
  • - Übertragen des Puffer-Speichers auf ein extern ein­ gegebenes Übertragungssignal hin, wobei der Übertragungs­ schritt beinhaltet:
  • - Festlegen des nächsten Lesezyklus als besagten einzelnen Lesezyklus;
  • - Einsetzen des Übertragungsregisters anstelle des Anfangs­ datenregisters im Ausgabeschritt des besagten einzigen Lesezyklus.
16. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß in jedem auf den einzigen Lesezyklus folgenden Lesezyklus ein Datenelement ausgegeben wird, das aus einer bereits in einem früheren Lesezyklus ausgewählten Speicherzelle ausgelesen wird, und Auswählen der Speicherzelle mit dem als nächstes von dem seriellen Speicher auszugebenden Datenelement.
17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß
  • - die Ausgabereihenfolge mit der Eingabereihenfolge in einer FIFO-Beziehung steht, so daß die Datenelement in der glei­ chen Reihenfolge ausgegeben werden, in der sie in den Speicher geschrieben wurden.
DE4019135A 1989-06-16 1990-06-13 Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung Expired - Lifetime DE4019135C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US36736289A 1989-06-16 1989-06-16

Publications (2)

Publication Number Publication Date
DE4019135A1 true DE4019135A1 (de) 1990-12-20
DE4019135C2 DE4019135C2 (de) 2001-04-26

Family

ID=23446858

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4019135A Expired - Lifetime DE4019135C2 (de) 1989-06-16 1990-06-13 Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung

Country Status (5)

Country Link
US (1) US5293623A (de)
JP (1) JPH03130983A (de)
KR (1) KR950012022B1 (de)
DE (1) DE4019135C2 (de)
GB (1) GB2232797B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004107183A2 (en) * 2003-05-29 2004-12-09 Elantec Semiconductor, Inc. Double buffering of serial transfers

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5249154A (en) * 1989-11-28 1993-09-28 Texas Instruments Incorporated Data access controller and method
US5255242A (en) * 1990-12-17 1993-10-19 Texas Instruments Incorporated Sequential memory
KR100275182B1 (ko) * 1990-12-17 2000-12-15 윌리엄 비. 켐플러 순차 메모리
TW276312B (de) * 1992-10-20 1996-05-21 Cirrlis Logic Inc
US5544338A (en) * 1992-12-31 1996-08-06 International Business Machines Corporation Apparatus and method for raster generation from sparse area array output
JP2790007B2 (ja) * 1993-07-29 1998-08-27 日本電気株式会社 画像メモリアクセス制御方式
US5524220A (en) * 1994-08-31 1996-06-04 Vlsi Technology, Inc. Memory subsystems having look-ahead instruction prefetch buffers and intelligent posted write buffers for increasing the throughput of digital computer systems
US5621695A (en) * 1995-07-17 1997-04-15 Galvantech, Inc. SRAM with simplified architecture for use with pipelined data
US5657292A (en) * 1996-01-19 1997-08-12 Sgs-Thomson Microelectronics, Inc. Write pass through circuit
US5619456A (en) * 1996-01-19 1997-04-08 Sgs-Thomson Microelectronics, Inc. Synchronous output circuit
US5801563A (en) * 1996-01-19 1998-09-01 Sgs-Thomson Microelectronics, Inc. Output driver circuitry having a single slew rate resistor
US5767709A (en) * 1996-01-19 1998-06-16 Sgs-Thomson Microelectronics, Inc. Synchronous test mode initalization
US5712584A (en) * 1996-01-19 1998-01-27 Sgs-Thomson Microelectronics, Inc. Synchronous stress test control
US5701275A (en) * 1996-01-19 1997-12-23 Sgs-Thomson Microelectronics, Inc. Pipelined chip enable control circuitry and methodology
US5987578A (en) * 1996-07-01 1999-11-16 Sun Microsystems, Inc. Pipelining to improve the interface of memory devices
US5798718A (en) * 1997-05-12 1998-08-25 Lexmark International, Inc. Sliding window data compression method and apparatus
JPH11305990A (ja) * 1998-04-24 1999-11-05 Oki Micro Design:Kk Fifo回路
US6407961B1 (en) * 1998-06-11 2002-06-18 Dsp Group, Ltd. Dual access memory array
IL124863A (en) * 1998-06-11 2004-05-12 Dsp Group Ltd Dual access memory array
US6360307B1 (en) 1998-06-18 2002-03-19 Cypress Semiconductor Corporation Circuit architecture and method of writing data to a memory
JP4827399B2 (ja) * 2004-05-26 2011-11-30 ルネサスエレクトロニクス株式会社 半導体記憶装置
US7802259B2 (en) * 2005-08-08 2010-09-21 Freescale Semiconductor, Inc. System and method for wireless broadband context switching
US20070033349A1 (en) * 2005-08-08 2007-02-08 Freescale Semiconductor, Inc. Multi-mode wireless processor interface
US20070030801A1 (en) * 2005-08-08 2007-02-08 Freescale Semiconductor, Inc. Dynamically controlling rate connections to sample buffers in a mult-mode wireless processing system
US7653675B2 (en) * 2005-08-08 2010-01-26 Freescale Semiconductor, Inc. Convolution operation in a multi-mode wireless processing system
US7734674B2 (en) 2005-08-08 2010-06-08 Freescale Semiconductor, Inc. Fast fourier transform (FFT) architecture in a multi-mode wireless processing system
US8140110B2 (en) * 2005-08-08 2012-03-20 Freescale Semiconductor, Inc. Controlling input and output in a multi-mode wireless processing system
US7962698B1 (en) 2005-10-03 2011-06-14 Cypress Semiconductor Corporation Deterministic collision detection
CN113689899B (zh) * 2021-08-27 2023-09-01 西安微电子技术研究所 一种存储阵列电路结构及大型存储阵列电路结构

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3771145A (en) * 1971-02-01 1973-11-06 P Wiener Addressing an integrated circuit read-only memory
US4823321A (en) * 1986-12-19 1989-04-18 Fujitsu Limited Dual port type semiconductor memory device realizing a high speed read operation

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE755666A (fr) * 1969-09-18 1971-02-15 Burroughs Corp Memoire tampon pour entree d'ordinateur
US4056851A (en) * 1976-09-20 1977-11-01 Rca Corporation Elastic buffer for serial data
NL7713708A (nl) * 1977-12-12 1979-06-14 Philips Nv Informatiebuffergeheugen van het "eerst-in, eerst-uit" type met vaste ingang en variabele uitgang.
JPS6024985B2 (ja) * 1978-08-31 1985-06-15 富士通株式会社 デ−タ処理方式
JPS6057090B2 (ja) * 1980-09-19 1985-12-13 株式会社日立製作所 データ記憶装置およびそれを用いた処理装置
US4597061B1 (en) * 1983-01-03 1998-06-09 Texas Instruments Inc Memory system using pipleline circuitry for improved system
US4862419A (en) * 1983-11-10 1989-08-29 Advanced Micro Devices, Inc. High speed pointer based first-in-first-out memory
US4642797A (en) * 1983-11-10 1987-02-10 Monolithic Memories, Inc. High speed first-in-first-out memory
DE3543911A1 (de) * 1984-12-14 1986-06-26 Mitsubishi Denki K.K., Tokio/Tokyo Digitale verzoegerungseinheit
US4685088A (en) * 1985-04-15 1987-08-04 International Business Machines Corporation High performance memory system utilizing pipelining techniques
US4740923A (en) * 1985-11-19 1988-04-26 Hitachi, Ltd Memory circuit and method of controlling the same
US4817054A (en) * 1985-12-04 1989-03-28 Advanced Micro Devices, Inc. High speed RAM based data serializers
JP2501204B2 (ja) * 1986-10-22 1996-05-29 日本電気株式会社 半導体メモリ
US4933901A (en) * 1988-01-11 1990-06-12 Texas Instruments Incorporated Method for assigning priority to read and write requests received closely in time
US4888791A (en) * 1988-01-25 1989-12-19 Barndt Sr Robert A Clock decoder and data bit transition detector for fiber optic work station
US4891788A (en) * 1988-05-09 1990-01-02 Kreifels Gerard A FIFO with almost full/almost empty flag

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3771145A (en) * 1971-02-01 1973-11-06 P Wiener Addressing an integrated circuit read-only memory
US3771145B1 (en) * 1971-02-01 1994-11-01 Wiener Patricia P. Integrated circuit read-only memory
US4823321A (en) * 1986-12-19 1989-04-18 Fujitsu Limited Dual port type semiconductor memory device realizing a high speed read operation

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004107183A2 (en) * 2003-05-29 2004-12-09 Elantec Semiconductor, Inc. Double buffering of serial transfers
WO2004107183A3 (en) * 2003-05-29 2005-03-10 Elantec Semiconductor Inc Double buffering of serial transfers
US7246199B2 (en) 2003-05-29 2007-07-17 Elantec Semiconductor, Inc. Double buffering of serial transfers
US7353333B2 (en) 2003-05-29 2008-04-01 Elantec Semiconductor, Inc. Laser drivers that provide double buffering of serial transfers
US7562187B2 (en) 2003-05-29 2009-07-14 Elantec Semiconductor, Inc. Laser drivers that provide double buffering of serial transfers

Also Published As

Publication number Publication date
GB2232797B (en) 1993-12-08
JPH03130983A (ja) 1991-06-04
US5293623A (en) 1994-03-08
GB2232797A (en) 1990-12-19
KR950012022B1 (ko) 1995-10-13
KR910001766A (ko) 1991-01-31
GB9012218D0 (en) 1990-07-18
DE4019135C2 (de) 2001-04-26

Similar Documents

Publication Publication Date Title
DE4019135C2 (de) Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung
DE2725395C3 (de) Einrichtung zur Echtzeittransformation von m in Zeilen angeordneten Wörtern der Bitlänge n in n in Spalten angeordneten Wörter der Bitlänge n
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2331589A1 (de) Datenverarbeitungsanordnung
DE2551239C3 (de) Datenverarbeitungsanlage
DE2703578A1 (de) Videospeicher
DE2310631C3 (de) Speicherhierarchie für ein Datenverarbeitungssystem
DE2521436B2 (de) Informationswiedergewinnungsanordnung
DE2717702A1 (de) Speicher-zugriffs-steuersystem
DE2432608C3 (de) Speicheranordnung fur eine Datenverarbeitungseinrichtung
DE1499182B2 (de) Datenspeichersystem
DE2637054A1 (de) Steuervorrichtung fuer einen pufferspeicher
DE3148099C2 (de) Anordnung zum Erkennen einer Digitalfolge
DE1499206B2 (de) Rechenanlage
DE2221442A1 (de) Assoziativspeicher
DE3214230C2 (de) Speicheranordnung mit Mehrfach-Zugriffsleitungen
DE1774607C3 (de) Speicheranordnung mit einem informationszerstörend lesbaren Speicher
DE1285218B (de) Datenverarbeitungsanlage
DE2610428C3 (de) Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher
DE1549399A1 (de) Verfahren und System zur grafischen Aufzeichnung von Kurvenzuegen
DE19501227A1 (de) DRAM-Auffrisch-Steuerungsschaltung
DE1449581B2 (de) Vorrichtung zum auslesen eines rechenmaschinen grosspeichers
DE3016738A1 (de) Verfahren zur uebertragung eines bitmusterfeldes in einen speicher und schaltungsanordnung zur ausuebung des verfahrens
DE1524179A1 (de) Einrichtung zur wahlfreien Zusammenstellung und Verteilung von Datenbytes
DE2117582C3 (de) Pufferspeicher für Datenverarbeitungssysteme

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: STOLBERG-WERNIGERODE, GRAF ZU, U., DIPL.-CHEM. DR.

8110 Request for examination paragraph 44
8128 New person/name/address of the agent

Representative=s name: EISENFUEHR, SPEISER & PARTNER, 28195 BREMEN KONLE,

D2 Grant after examination
8364 No opposition during term of opposition