DE102006028683B4 - Parallele Datenpfadarchitektur - Google Patents

Parallele Datenpfadarchitektur Download PDF

Info

Publication number
DE102006028683B4
DE102006028683B4 DE102006028683.9A DE102006028683A DE102006028683B4 DE 102006028683 B4 DE102006028683 B4 DE 102006028683B4 DE 102006028683 A DE102006028683 A DE 102006028683A DE 102006028683 B4 DE102006028683 B4 DE 102006028683B4
Authority
DE
Germany
Prior art keywords
data
data path
synchronous
synchronous data
memory device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE102006028683.9A
Other languages
English (en)
Other versions
DE102006028683A1 (de
Inventor
Margaret Freebern
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.)
Polaris Innovations Ltd
Original Assignee
Qimonda AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qimonda AG filed Critical Qimonda AG
Publication of DE102006028683A1 publication Critical patent/DE102006028683A1/de
Application granted granted Critical
Publication of DE102006028683B4 publication Critical patent/DE102006028683B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • 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
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40615Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
    • 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
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • 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
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4093Input/output [I/O] data interface arrangements, e.g. data buffers
    • 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
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • G11C7/1012Data reordering during input/output, e.g. crossbars, layers of multiplexers, shifting or rotating
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/106Data output latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)

Abstract

Speicherbaustein, umfassend: – ein Speicherarray mit mehreren Speicherzellen, das dafür konfiguriert ist, Daten zu speichern; – mehrere Datenanschlussstellen, die dafür konfiguriert sind, als eine Ausgabe des Speicherbausteins bei einer Leseoperation aus dem Speicherarray abgerufene Daten bereitstellen; – mehrere parallele Lesedatenpfade, die jeweils zwischen das Speicherarray und die Datenanschlussstellen geschaltet sind, wobei die parallelen Lesedatenpfade umfassen: mehrere synchrone Datenpfade, die in verschiedenen Betriebsarten betreibbar sind, und einen asynchronen Datenpfad; und – eine Betriebsartauswahleinrichtung, die dafür konfiguriert ist, einen der parallelen Lesedatenpfade auszuwählen, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, – wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines Werts eines Spaltenzugriff-Abtast-Latenzbefehls einen der synchronen Datenpfade auswählt.

Description

  • Hintergrund der Erfindung
  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine parallele Datenpfadarchitektur, die sich für Pseudo-SRAM eignet, und insbesondere eine Architektur, die das Lesen von Daten aus einem Speicherarray in einer Anzahl verschiedener Betriebsarten und Taktfrequenzen ermöglicht.
  • Allgemeiner Stand der Technik
  • Statische Direktzugriffsspeicher(SRAM)-Chips wurden gewöhnlich in mobilen und drahtlosen Einrichtungen wie drahtlosen Telefonen verwendet. Im Gegensatz zu dynamischen Direktzugriffsspeicher(DRAM)-Bausteinen behalten SRAMs Informationen in einem Speicherarray, während die Stromversorgung angelegt bleibt, ohne dass periodische Auffrischoperationen notwendig sind. Obwohl sie in Bezug auf Geschwindigkeit, Kosten und einfachen Betrieb Vorteile aufweisen, sind SRAMs wesentlich größer als DRAMs einer vergleichbaren Speicherkapazität, da jedes Speicherelement (Speicherzelle) eines SRAM-Speicherarrays mehr Transistoren als ein DRAM-Speicherelement benötigt. Lese- und Schreiboperationen in SRAMs in mobilen Anwendungen wurden in der Regel asynchron durchgeführt (d. h. ohne Verwendung eines Taktsignals), wobei ein Signaldatenraten(SDR)-Modus verwendet wird (d. h. mit jedem Spaltenzugriffsimpuls wird auf ein Bit zugegriffen). Im Gegensatz dazu werden DRAMs im Allgemeinen synchron betrieben, wobei ein extern zugeführter Takt verwendet wird, um Lese- und Schreiboperationen mit einer SDR-Schnittstelle oder einer Doppeldatenraten(engl.: double data rate, DDR)-Schnittstelle auszuführen, wobei mit jedem Taktimpuls auf zwei Bit zugegriffen wird, auf eins an der ansteigenden Flanke und auf eins an der fallenden Flanke.
  • Mit zunehmender Integration von Merkmalen und Funktionen in drahtlose Telefone, wie zum Beispiel Digitalkameras, Sprachverarbeitung, Spiele, Klingeltöne usw., sind herkömmliche SRAMs durch zunehmende Speicheranforderungen aufgrund von Größenbetrachtungen weniger wünschenswert geworden. Folglich werden nun in mobilen Anwendungen wie etwa drahtlosen Telefonen Pseudo-SRAMs verwendet. Wie in der Technik bekannt ist, handelt es sich bei Pseudo-SRAMs tatsächlich um DRAM-Bausteine, die im Wesentlichen die Funktionsweise von SRAM-Bausteinen imitieren. Wie andere DRAM-Bausteine erfordern Pseudo-SRAMs eine periodische Auffrischoperation, um Daten in dem Speicherzellenarray zu behalten, obwohl die Auffrischoperation vor dem Controller verborgen wird. Auf einem DRAM ist der Datenpfad der Teil des Chips, der den Datenfluss und die Zeitsteuerung während Lese- und Schreiboperationen steuert. Während der Schreiboperation transferiert der Datenpfad Daten von den Chipanschlussstellen zu dem Speicherarray, wo die Daten gespeichert werden. Während einer Leseoperation bringt der Datenpfad die Daten aus dem Speicherarray heraus und auf die Anschlussstellen, so dass die Daten über einen Bus oder dergleichen aus dem Chip heraus zu einem anderen Baustein gesteuert werden können.
  • Architektur und Entwurf des Datenpfades werden durch die DRAM-Schnittstelle, ihre Betriebsart und die Taktfrequenz, mit der der Chip arbeitet, beeinflusst. Da Pseudo-SRAM-Chips weiter verbreitet sind, wäre es für Kompatibilität mit vielfältigen Systemen und Einrichtungen wünschenswert, wenn Pseudo-SRAM-Chips eine asynchrone Schnittstelle früherer SRAM-Chips und die synchrone Schnittstelle derzeitig gebräuchlicher DRAMs enthielten. Im Fall des synchronen Betriebes sollten solche Pseudo-SRAMs zu einem Betrieb über vielfältige Taktfrequenzen und Datenlatenzen fähig sein.
  • US 5,835,443 A zeigt einen Speicherbaustein mit mehreren synchronen Datenpfaden, die von einem Speicherarray zu Datenanschlussstellen führen. Die synchronen Datenpfade unterscheiden sich voneinander durch den Zeitversatz, mit dem die aus dem Speicherarray ausgelesen Daten jeweils weitergeleitet werden. Die synchronen Datenpfade setzen jeweils das Vorhandensein eines Taktsignals voraus. US 6,327,175 B1 zeigt einen Speicherbaustein, der je nachdem, ob ein Taktsignal anliegt oder nicht, Daten aus einem Speicherarray synchron oder asynchron ausliest. Ein weiterer Speicherbaustein, und zwar ein Pseudo-SRAM, ist in US 2005/0068843 A1 beschrieben.
  • Es ist die Aufgabe der vorliegenden Erfindung, einen Speicherbaustein bereitzustellen, der noch vielseitiger einsetzbar ist und aus dem die gespeicherten Daten noch flexibler auslesbar sind, wobei das Auslesen sowohl das asynchrone als auch das synchrone Auslesen umfassen soll. Ferner soll ein Verfahren zum Auslesen eines derartigen Speicherbausteins bereitgestellt werden, bei dem unter Berücksichtigung externer Signale mehrere Auslesearten, darunter synchrone und asynchrone Auslesevorgänge, durchführbar sind.
  • Kurzfassung der Erfindung
  • Diese Aufgabe wird durch den Gegenstand der unabhängigen Ansprüche 1, 6, 10, 13, 15 und 19 gelöst.
  • Gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung enthält ein Speicherbaustein, wie zum Beispiel ein Pseudo-SRAM, eine parallele Datenpfadarchitektur, bei der mehrere Lesedatenpfade das Speicherarray an die Ausgangsdatenanschlussstellen des Speicherbausteins ankoppeln. Die Lesedatenpfade entsprechen verschiedenen Betriebsarten, und eine Betriebsartauswahleinrichtung wählt aus, welcher der Lesedatenpfade zum Übermitteln von aus dem Speicherarray abgerufenen Daten zu den Ausgangsdatenanschlussstellen verwendet wird.
  • Einer der Lesedatenpfade enthält einen asynchronen Datenpfad, der zum Übermitteln von abgerufenen Daten zu den Anschlussstellen bei Abwesenheit eines dem Speicherbaustein zugeführten externen Taktsignals ausgewählt wird. Weitere Lesedatenpfade enthalten synchrone Datenpfade, die in verschiedenen Betriebsarten arbeiten. Zum Beispiel kann einer der synchronen Datenpfade in einer zwischengespeicherten Betriebart (engl.: latched mode) arbeiten, der für niedrigere Taktfrequenzen geeignet ist, während ein anderer synchroner Datenpfad in einer FIFO(zuerst herein-zuerst hinaus, engl.: first-in-first-out)-Betriebsart arbeiten kann, die für höhere Taktfrequenzen geeignet ist. Die Betriebsartauswahleinrichtung kann unter Verwendung eines Taktfrequenzindikators auswählen, welcher dieser synchronen Datenpfade verwendet wird. Zum Beispiel gibt in bestimmten Speicherbausteinen der Wert eines extern zugeführten CAS(Spaltenzugriff-Abtast-, engl.: column access strobe)-Latenzsignals die Taktfrequenz an und kann als der Taktfrequenzindikator dienen.
  • Gemäß einem weiteren Aspekt der Erfindung umfasst ein Verfahren zum Durchführen einer Leseoperation in einem Speicherbaustein: Abrufen von Daten aus einem Speicherarray als Reaktion auf einen Empfang eines Lesebefehls; Auswählen eines asynchronen Datenpfades zum Zuführen der abgerufenen Daten zu Anschlussstellen des Speicherbausteins als Reaktion auf die Abwesenheit eines externen Taktsignals; und Auswählen eines von mehreren synchronen Datenpfaden zum Zuführen der abgerufenen Daten zu den Anschlussstellen des Speicherbausteins als Reaktion auf eine Detektion eines externen Taktsignals, wobei der synchrone Datenpfad als Funktion eines durch den Speicherbaustein empfangenen externen Signals ausgewählt wird.
  • Ferner umfasst ein Verfahren zur Herstellung eines Speicherbausteins gemäß einem weiteren Aspekt der vorliegenden Erfindung: Bereitstellen mehrerer paralleler Lesedatenpfade, die jeweils zwischen ein Speicherarray und Datenanschlussstelle des Speicherbausteins geschaltet sind, wobei die parallelen Lesedatenpfade mehrere synchrone Datenpfade, die in verschiedenen Betriebsarten betreibbar sind, und einen asynchronen Datenpfad umfassen; und Bereitstellen einer Betriebsartauswahleinrichtung zum Auswahlen eines der parallelen Lesedatenpfade, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, wobei eine solche Betriebsartauswahleinrichtung bereitgestellt wird, die als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines empfangenen externen Signals, insbesondere des Werts eines Spaltenzugriff-Abtast-Latenzbefehls, einen der synchronen Datenpfade auswählt.
  • Die obigen und weitere Merkmale und Vorteile der vorliegenden Erfindung werden bei Durchsicht der folgenden Definitionen, Beschreibungen und Beschreibungsfiguren spezifischer Ausführungsformen deutlich, wobei in den verschiedenen Figuren zur Kennzeichnung gleicher Komponenten gleiche Bezugszahlen verwendet werden. Obwohl diese Beschreibungen spezifische Einzelheiten der Erfindung behandeln, versteht sich, dass Varianten möglicherweise existieren und Fachleuten auf der Basis der vorliegenden Beschreibungen ersichtlich sein würden.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockschaltbild, das konzeptuell eine Lesedatenpfad-Parallelarchitektur gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt.
  • 2 ist ein Impulsdiagramm, das Signalformen für eine Lesezugriffsoperation in der asynchronen, zwischengespeicherten synchronen und FIFO-synchronen Betriebsart zeigt.
  • 3 ist ein Blockschaltbild, das eine Implementierung einer parallelen Lesepfadarchitektur gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt.
  • 4 ist ein Blockschaltbild, das eine Implementierung einer parallelen Lesepfadarchitektur gemäß einer weiteren beispielhaften Ausführungsform der vorliegenden Erfindung darstellt.
  • 5 ist ein Funktionsflussdiagramm der Betriebsartauswahllogik zum Auswählen eines der parallelen Lesedatenpfade während einer Lesezugriffsoperation gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung.
  • Ausführliche Beschreibung
  • 1 zeigt konzeptuell eine Lesedatenpfad-Parallelarchitektur für einen Speicherbaustein 10 gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung. Die in 1 abgebildete Architektur ist ein Konzeptdiagramm, das Hauptfunktionseinheiten veranschaulicht, und zeigt nicht unbedingt physikalische Beziehungen. Der Speicherbaustein 10 enthält ein Speicherarray 12, das über drei unabhängige parallele Lesedatenpfade, einen asynchronen Datenpfad 16, einen zwischengespeicherten (engl.: ”latched”) synchronen Datenpfad 18 und einen FIFO-synchronen Datenpfad 20, an die Ausgangsanschlussstellen 14 des Chips angekoppelt ist. Der Begriff ”parallel” wird hier im Sinne der elektrischen Schaltungen gebraucht (zwei oder mehr Pfade, die jeweils zwischen dieselben zwei Punkte in einer Schaltung geschaltet sind), und fordert nicht, dass die Pfade geometrisch parallel sind. Als nicht einschränkendes Beispiel kann der Speicherbaustein 10 ein Pseudo-SRAM sein, wie zum Beispiel ein Pseudo-SRAM, der für die Verwendung in mobilen, drahtlosen oder batteriebetriebenen Einrichtungen ausgelegt ist. Die Erfindung ist jedoch nicht auf Pseudo-SRAM-Bausteine beschränkt und umfasst beliebige Speicherbausteine, in denen mehrere wählbare Datenpfadbetriebsarten zum Lesen von Daten gewünscht sein können.
  • Bei bestimmten Anwendungen kann es wünschenswert sein, über eine Anzahl verschiedener Arten der Ausführung von Leseoperationen in einem Speicherbaustein zu verfügen. Zum Beispiel arbeiten SRAM-Chips häufig als asynchrone Bausteine mit Einzeldatenrate (engl.: single data rate, SDR) (Lese- und Schreiboperationen werden ohne externes Taktsignal ausgeführt), während DRAM-Chips in der Regel synchrone Bausteine sind, die mit einer SDR-Schnittstelle oder einer Doppeldatenraten(engl.: double data rate, DDR)-Schnittstelle betrieben werden. Viele drahtlose Telefone haben herkömmlicherweise SRAM-Chips benutzt. Da Pseudo-SRAM-Chips (die DRAM-Bausteine sind) SRAM-Chips in solchen Anwendungen aufgrund von Größen- und Speicheranforderungen ersetzen, kann es wünschenswert sein, dieselbe asynchrone Kundenschnittstelle zu behalten, so dass die neueren Pseudo-SRAM-Chips mit den älteren SRAM-Chips austauschbar sind. Eine synchrone Schnittstelle, bei der Lese- und Schreiboperationen gemäß einem Taktsignal durchgeführt werden, gestattet zusätzlich eine Verwendung der Pseudo-SRAM-Chips wie DRAM-Bausteine.
  • Es kommt häufig vor, dass DRAMs mit einem Bereich von Taktfrequenzen arbeiten können. Da das Taktsignal ein extern dem Speicherbaustein zugeführtes Signal ist, wird die Taktgeschwindigkeit durch die Anforderungen und den Entwurf des Systems vorgeschrieben, in dem der Speicherbaustein verwendet wird. Bei synchronem Betrieb können verschiedene Lesebetriebsarten besser für eine Verwendung bei verschiedenen Taktfrequenzen geeignet sein. Zum Beispiel kann eine ”zwischengespeicherte” Betriebsart (engl.: ”latched” mode) für SDR-Leseoperationen oder einen Betrieb mit niederfrequenteren Taktsignalen geeignet sein. Andererseits kann eine ”FIFO”-Betriebsart besser für DDR-Leseoperationen oder einen Betrieb mit höherfrequenten Taktsignalen sein. Wie in der Technik bekannt ist, werden bei einem zwischengespeicherten Modus des Lesens von Daten im Prinzip Daten in ein Flipflop hinein- und diesem herausgeschoben. Daten auf dem Lesedatenpfad werden in dem Flipflop zwischengespeichert und werden für die Ausgangsschaltkreise des Chips an derselben ansteigenden Flanke des Takts verfügbar (d. h. es gibt einen einzigen Zwischenspeicher in dem Datenpfad zu den Ausgangsanschlussstellen). Im Gegensatz dazu verwendet eine FIFO-Betriebsart ein zuerst hereinzuerst hinaus (engl.: first-in-first-out) (FIFO)-Schieberegister oder ein Pufferschema, bei dem mindestens zwei Bit gepuffert werden (z. B. ein Zwei-Bit-FIFO).
  • Bei der in 1 gezeigten beispielhaften Architektur kann der Speicherbaustein, indem man einen asynchronen Datenpfad, einen synchronen zwischengespeicherten Datenpfad und einen synchronen FIFO-Datenpfad hat, in vielfältigen Lesebetriebsarten betrieben werden, wodurch die Austauschbarkeit des Speicherbausteins zur Verwendung in einer Anzahl verschiedener Systemkonfigurationen, Schnittstellen und Anwendungen verbessert wird.
  • Obwohl die beispielhafte Ausführungsform diese drei parallelen Lesedatenpfade und entsprechende Lesebetriebsarten umfasst, versteht sich, dass die Erfindung nicht auf diese drei bestimmten Lesepfade/Betriebsarten beschränkt ist und andere Kombinationen von Lesepfaden/Betriebsarten implementiert werden könnten (d. h. man könnte zusätzliche oder andere Betriebsarten oder Pfade verwenden).
  • Wieder mit Bezug auf 1 werden nach dem Empfang eines externen Lesebefehls Daten aus dem Speicherarray 12 abgerufen und treten in jeden der drei parallelen Datenpfade 16, 18 und 20 ein. Ein Betriebsartauswahllogikmodul 22 (oder einfach eine ”Betriebsartauswahleinrichtung”) wählt einen der parallelen Datenpfade zum Leiten der Daten auf die Ausgangsanschlussstellen 14 auf der Basis der Betriebsart des Speicherbausteins aus. Die Betriebsartauswahleinrichtung gibt nur einen der drei Datenpfade auf einmal über ein Freigabesignal frei und der freigegebene Datenpfad steuert Daten zum Ablegen auf den Ausgangsdatenanschlussstellen an die außerhalb des Chips angeordneten Treiber. Dieser Ansatz führt zu drei unabhängigen Lesepfadbetriebsarten jeweils mit eigener Zeitsteuerung und Steuerung. Wie hier ausführlicher beschrieben werden wird, bestimmt die Betriebsartauswahleinrichtung die Betriebsart auf der Basis einer Anzahl von Signalen, die die Betriebsart des Speicherbausteins anzeigen (z. B. Detektion eines Lesebefehls, ein Signal, das die Anwesenheit oder Abwesenheit eines externen Taktsignals anzeigt, ein Taktfrequenzindikator und Testmodussignale).
  • Eine ausführlichere Erläuterung der Funktionsweise jedes Datenpfadmodus wird in Verbindung mit dem Impulsdiagramm von 2 beschrieben, das die Vorteile dreier verschiedener unabhängiger Betriebsarten weiter veranschaulicht. Das in der ersten Zeile von 2 gezeigte Taktsignal (CLK) ist nur für die synchronen Betriebsarten anwendbar, da in der asynchronen Betriebsart kein externes Taktsignal vorliegt. In der asynchronen Betriebsart wird beim Empfang eines Lesesignals eine Reihe von Spaltenzugriffssignalen erzeugt, um Daten sequenziell aus Spalten von Speicherzellen in dem Speicherarray gemäß einer (nicht gezeigten) Leseadresse abzurufen. Wie in der nächsten Zeile von 2 gezeigt, besteht eine Verzögerung von dem Zeitpunkt des Spaltenzugriffsimpulses bis zu dem Zeitpunkt, wenn die Lesedaten aus der Spalte auf dem Lesedatenpfad gültig werden. Diese Verzögerung, die für alle Leseoperationen im Wesentlichen konstant bleibt, ist eine Funktion des Entwurfs des Speicherbausteins (z. B. der Hardwareansprechzeiten, Ausbreitungsverzögerungen usw.) und ist unabhängig davon, welche Betriebsart zum Lesen von Daten ausgewählt wird. In der asynchronen Betriebsart werden die Daten an den Ausgangsanschlussstellen eine kurze Zeit nach dem Gültigwerden der gelesenen Daten aus der Spalte verfügbar, was durch den Pfeil von dem auf der Zeile ”Lesen von Daten aus Spalte” gezeigten Datenbit zu der in 2 gezeigten ”async”-Datenzeile nahegelegt wird.
  • Im Fall der synchronen Lesedatenpfadbetriebsarten ist während Leseoperationen ein Taktsignal vorhanden und das Spaltenzugriffs-Abtast-Signal ist mit dem Taktsignal synchronisiert. Mit Bezug auf den in 2 gezeigten ersten Spaltenzugriffsimpuls beachte man, dass das entsprechende ”Lesen von Daten aus Spalte” vor der ansteigenden Flanke des ersten Taktsignals, das nach dem Spaltenzugriff auftritt, gültig ist. Folglich kann in diesem Fall eine zwischengespeicherte Betriebsart verwendet werden. Genauer gesagt kann die ansteigende Flanke des ersten Taktimpulses nach dem Spaltenzugriffsimpuls dazu verwendet werden, die gelesenen Daten aus der Spalte in einem Flipflop zwischenzuspeichern, dabei die Daten sofort zu dem Ausgang zu schieben, so dass die Daten kurz nach der ansteigenden Flanke des Taktimpulses an dem Ausgang verfügbar werden, wie in 2 durch den Pfeil von der ansteigenden Flanke des ersten Taktimpulses zu der Datenzeile ”Latch” gezeigt.
  • Die Taktfrequenz und Signalzeitsteuerung von 2 eignet sich zur Implementierung der zwischengespeicherten Betriebsart, da die aus dem Speicherarray abgerufenen Daten vor der nächsten ansteigenden Flanke des Taktsignals auf dem Datenpfad gültig sind. Diese Konfiguration ist im Allgemeinen mit relativ niedrigen Taktfrequenzen bei einer SDR-Leseoperation möglich. Wie zuvor erläutert, bleibt der für das Gültigwerden der gelesenen Daten nach dem Spaltenzugriffsimpuls erforderliche Zeitraum jedoch in dem Speicherbaustein im Wesentlichen konstant; mit zunehmender Taktfrequenz kann folglich die ansteigende Flanke des nächsten Taktimpulses auftreten, bevor die gelesenen Daten auf dem Datenpfad gültig werden, so dass der nächste Taktimpuls nicht zum Zwischenspeichern der gelesenen Daten verwendet werden kann. Anders ausgedrückt, tritt mit zunehmender Taktfrequenz die nächste ansteigende Flanke des Taktsignals schneller auf und somit besteht immer weniger Reserve zwischen der Zeit, wenn die Daten gültig sind und der nächsten ansteigenden Flanke des Takts (die verwendet wird, um die Daten zwischenzuspeichern), wenn die Taktfrequenz zunimmt. Letztendlich wird bei genügend großer Taktfrequenz die nächste ansteigende Flanke des Taktimpulses ankommen, bevor die Daten gültig sind, so dass die Daten nicht mit der nächsten ansteigenden Flanke des Taktsignals zwischengespeichert werden können. Obwohl es in 2 nicht explizit gezeigt ist, kann man diesen Effekt bei höheren Taktfrequenzen visualisieren, indem man sich den Abstand zwischen den Spaltenzugriffsimpulsen und den entsprechenden gültigen Daten auf der Zeile ”Lesen von Daten aus Spalte” als festbleibend vorstellt, während der Abstand zwischen sukzessiven Spaltenzugriffsimpulsen (und auch zwischen sukzessiven Taktimpulsen) reduziert wird.
  • Bei höheren Taktfrequenzen, wenn die zwischengespeicherte Betriebsart nicht verwendet werden kann, kann die FIFO-Betriebsart nützlich werden. Als nichteinschränkendes Beispiel könnte eine Taktfrequenz von ungefähr 133 MHz die Abgrenzung zwischen niedrigeren Taktfrequenzen, für die die zwischengespeicherte Betriebsart verwendet wird, und höheren Taktfrequenzen, für die die FIFO-Betriebsart benutzt wird, sein. Im Allgemeinen ist die maximale Taktfrequenz, bei der die zwischengespeicherte Betriebsart verwendet werden kann, eine Funktion des konkreten Entwurfs und des Betriebes des Speicherbausteins, und die Erfindung ist nicht auf irgendeine bestimmte maximale Taktfrequenz für die zwischengespeicherte synchrone Betriebsart beschränkt.
  • Gemäß der in 2 gezeigten beispielhaften Ausführungsform kann das Taktsignal in der FIFO-Betriebsart eine vorbestimmte Zeit nach dem Spaltenzugriffssignal unter Verwendung eines Timers zur Bestimmung, wann der notwendige Zeitraum abgelaufen ist (anstatt der direkten Verwendung des Taktsignals zum Zwischenspeichern der Daten) in einem FIFO-Register oder – Puffer zwischengespeichert werden. Der Timer dupliziert oder imitiert im Wesentlichen die durch die Schaltkreise des Spaltenpfades verursachte Verzögerung plus eine bestimmte kleine zusätzliche Verzögerung, um einen Puffer oder eine Reserve bereitzustellen, um sicherzustellen, dass die Daten gültig sind. Der Timer wird mit der Zeitsteuerung der Spaltenzugriffsimpulse gestartet und wenn der Timer endet, wird ein Impuls ausgegeben, der anzeigt, dass die gelesenen Daten aus der Spalte gültig sind. In der synchronen FIFO-Betriebsart wird somit eine vorbestimmte Verzögerung im Wesentlichen eingebaut, um sicherzustellen, dass die gelesenen Daten aus der Spalte auf dem Datenpfad vor dem Zwischenspeichern der Daten in dem FIFO gültig sind.
  • Der beim Ablaufen des Timers ausgegebene Impuls kann zum Zwischenspeichern der Daten in dem FIFO benutzt werden. Nach der Zwischenspeicherung in dem FIFO werden die Daten an der nächsten steigenden Flanke des Takts herausgeschoben und werden an den Ausgangsanschlussstellen verfügbar. In 2 wird angenommen, dass die Daten einige Zeit vor dem Auftreten der ansteigenden Flanke des zweiten Taktimpulses in dem FIFO zwischengespeichert werden, so dass die Daten durch die ansteigende Flanke des zweiten Taktimpulses zu dem Ausgang geschoben werden, wie durch den sich von dem zweiten Taktimpuls zu der FIFO-Daten-Linie erstreckenden Pfeil nahegelegt. Im Fall eines Zwei-Bit-FIFO mit zwei Sätzen von Registern oder Flipflops können zwei sukzessive Spaltenzugriffe in dem FIFO ankommen und gespeichert werden, bevor der erste Spaltenzugriff zu dem Ausgang geschoben wird.
  • 3 zeigt eine konkrete Implementierung einer parallelen Datenpfadarchitektur gemäß einer Ausführungsform der vorliegenden Erfindung. Der Einfachheit halber sind das Speicherarray und Ausgangsanschlussstellen nicht gezeigt. Die aus dem Speicherarray abgerufenen Daten werden als ”Eingangsdaten” angegeben, während sie an den parallelen Lesedatenpfaden ankommen, und als ”Ausgangsdaten” während sie aus einem der Lesedatenpfade den Ausgangsanschlussstellen zugeführt werden. Die Eingangsdaten werden den drei Lesedatenpfaden zugeführt: einem asynchronen Pfad 30, einem zwischengespeicherten synchronen Pfad 32 und einem FIFO-synchronen Pfad 34. Bei dieser Ausführungsform umfasst die Betriebsartauswahleinrichtung drei Betriebsartauswahllogikeinheiten: die Asynchron-Auswahllogikeinheit 36, die Zwischengespeichert-Synchron-Auswahllogikeinheit 38 und die FIFO-Synchron-Auswahllogik 40. Diese drei Betriebsartauswahllogikeinheiten führen jeweils drei Ausgangstreibern 42, 44 bzw. 46, die jeweils an die Ausgänge des asynchronen Pfades 30, des zwischengespeicherten synchronen Pfades 32 und des FIFO-synchronen Pfades 34 angekoppelt sind, Freigabesignale zu. Es wird nur ein Pfad auf einmal freigegeben, indem einem der Ausgangstreiber 42, 44 und 46 ein Freigabesignal zugeführt wird. Die zwei mit den beiden nichtgewählten Pfaden assoziierten Ausgangstreiber bleiben in einem Zustand hoher Impedanz, während der gewählte Ausgangstreiber die Daten dem Ausgang zuführt. Bei der in 3 gezeigten Ausführungsform wird für jede der drei Betriebsarten separate Auswahllogik verwendet. Eine andere Möglichkeit ist es, eine Betriebsartauswahllogik zu haben, die allen Betriebsarten gemeinsam ist und die selektiv ein Freigabesignal zu nur einem der Ausgangstreiber sendet.
  • 4 zeigt eine weitere Ausführungsform der vorliegenden Erfindung, bei der die parallele Datenpfadarchitektur auf eine andere Weise implementiert ist. Bei dieser Konfiguration werden die aus dem Speicherarray abgerufenen Daten drei parallelen Lesedatenpfaden zugeführt (dem asynchronen Pfad 50, dem zwischengespeicherten synchronen Pfad 52, dem FIFO-synchronen Pfad 54), und ein Multiplexer 56 wird verwendet, um die Daten selektiv auf einem der drei Pfade zu einem gemeinsamen Ausgangstreiber 60 zu leiten. Der Multiplexer 56 wird durch die Betriebsartauswahllogikeinheit 58 gesteuert, die den entsprechenden Lesedatenpfad auf der Basis von Signalen auswählt, die die Betriebsart des Speicherbausteins anzeigen. Obwohl in 4 als Multiplexer gezeigt, kann eine beliebige Art von Auswahlbaustein oder Auswahlschaltkreisen verwendet werden. Diese Implementierung vermeidet die Notwendigkeit eines separaten Ausgangstreibers für jeden Lesedatenpfad.
  • Eine weitere Möglichkeit ist ein den parallelen Lesedatenpfaden vorgeschalteter Multiplexer oder anderer Auswahlbaustein. In diesem Fall führt der Multiplexer die abgerufenen Daten nur einem der drei Lesedatenpfade zu, der dann die Daten einem Ausgangstreiber zuführt.
  • Wie bereits erläutert, wählt die Betriebsartauswahleinrichtung einen der parallelen Lesedatenpfade gemäß der aktuellen Betriebsart des Speicherbausteins. Eine beispielhafte Ausführungsform der zum Auswählen des Lesedatenpfads verwendeten Betriebsartauswahllogik ist in dem Funktionsflußdiagramm von 5 dargestellt. In dem in 5 abgebildeten Schema werden im Wesentlichen drei Informationselemente zur Auswahl eines Ausgangslesedatenpfades verwendet: die Anwesenheit eines Lesebefehls; die Anwesenheit oder Abwesenheit eines externen Taktsignals; und ein Taktfrequenzindikator. Es versteht sich, dass die Erfindung nicht auf die konkrete in 5 gezeigte Logik oder die Verwendung dieser konkreten Signale zur Auswahl eines Lesedatenpfades beschränkt ist und andere oder zusätzliche Signale oder Logik verwendet werden können. Zum Beispiel kann man Testmodussignale verwenden, um die Auswahl eines bestimmten Lesedatenpfades zu bewirken.
  • Eine Vorbedingung für die Auswahl eines der parallelen Lesedatenpfade besteht darin, dass der Speicherbaustein einen Lesebefehl empfangen hat. Folglich beginnt in 5 die Betriebsartauswahllogik in der Operation 100 mit der Detektion eines Lesebefehls, wovon eine Anzeige der Betriebsartauswahleinrichtung zugeführt werden muss. Der Speicherbaustein detektiert, ob ein externes Taktsignal vorliegt oder nicht, und führt der Betriebsartauswahleinrichtung ein Signal zu, das die Anwesenheit oder Abwesenheit eines externen Taktsignals anzeigt. In der Operation 110 wertet die Betriebsartauswahllogik auf der Basis des Taktsignalindikators aus, ob das Taktsignal vorliegt. Wenn kein Taktsignal vorliegt, wählt die Betriebsartauswahllogik den asynchronen Lesedatenpfad (Operation 120). Wenn dagegen das Taktsignal vorliegt, schreitet die Betriebartauswahllogik zum Entscheidungsblock 150 voran, um zu bestimmen, welche der beiden synchronen Betriebsarten gewählt werden soll.
  • Der Taktfrequenzindikator ermöglicht es der Betriebsartauswahleinrichtung im Wesentlichen, zwischen der zwischengespeicherten synchronen Betriebsart, die sich für niedrigere Taktfrequenzen eignet, und der FIFO-synchronen Betriebsart, die sich für höhere Taktfrequenzen eignet, auszuwählen. Abhängig von dem Entwurf eines bestimmten Speicherbausteins können mehrere mögliche Optionen zum Zuführen eines Taktfrequenzindikators zur Auswahl zwischen dem zwischengespeicherten synchronen Datenpfad und dem FIFO-synchronen Datenpfad verfügbar sein. Eine Möglichkeit, die bei bestimmten Speicherbausteinen verfügbar sein kann, ist die Verwendung des CAS-Latenzsignals als Taktfrequenzindikator. Aufgrund interner Verzögerungs- und Verarbeitungszeiten der Ausgangsschaltung, die hauptsächlich durch eine Datenpfadverzögerungszeit und eine Verzögerungszeit des außerhalb des Chip angeordneten Treibers der Ausgangsschaltung beeinflusst werden, erscheint ein Ausgangsdatenposten DQ nicht gleichzeitig mit dem Moment an dem der externe Lesebefehls RD an den Chip angelegt wird. Um zu vermeiden, dass Datenposten am Ausgangsdatenanschluss zu willkürlichen Zeitpunkten nach dem Anlegen des externen Lesebefehls RD an den Steueranschluss erzeugt werden, wird die Latenz zwischen dem Anlegen des externen Lesebefehls RD und dem Moment des Erscheinens des entsprechenden Datenpostens an dem Ausgangsdatenanschluss abhängig von einem dem Chip zugeführten Konfigurationssignal auf einen vorbestimmten Wert gesetzt. Diese Latenz wird gewöhnlich durch die CAS-Latenz spezifiziert. Die CAS-Latenz ist ein Wert, der die Anzahl der Taktzyklen zwischen dem Zeitpunkt des Anlegens des externen Lesebefehlssignals RD an den Steueranschluss zum Starten eines Lesezugriffs auf eine Speicherzelle und dem Zeitpunkt des Erscheinens des Datenpostens DQ dieser Speicherzelle an dem Ausgangsdatenanschluss anzeigt.
  • Dem Speicherbaustein muss ein bestimmter CAS-Latenzwert zugeführt werden (z. B. 2, 3, 4 usw.). Dieser Wert wird in dem Betriebsartregister des Speicherbausteins gespeichert und instruiert den Baustein, mit einer bestimmten Anzahl von Taktzyklen zwischen dem Empfang des Lesebefehls und der Verfügbarkeit entsprechender Daten an dem Ausgang zu arbeiten. Die CAS-Latenz ist im Kontext der vorliegenden Erfindung nützlich, weil die CAS-Latenz häufig der Taktfrequenz entspricht. Zum Beispiel entspricht eine CAS-Latenz von 2 oder 3 im Allgemeinen niedrigeren Taktfrequenzen, während eine CAS-Latenz von 4 oder mehr einer höheren Taktfrequenz entsprechen würde. Der Grund dafür besteht darin, dass Ausbreitungsverzögerungen in dem Speicherbaustein größtenteils fest sind; bei höheren Taktfrequenzen tritt somit eine größere Anzahl von Taktzyklen zwischen dem Empfang des Lesebefehls und der Ankunft der Daten am Ausgang auf.
  • In der Regel enthält ein synchroner Speicherbaustein Spezifikationen, die von dem Benutzer erfordern, bestimmte CAS-Latenzwerte beim Zuführen eines Taktsignals in einem bestimmten Frequenzbereich auszuwählen. Zum Beispiel kann gemäß Betriebsanforderungen eine CAS-Latenz von 4 anzeigen, dass die gelieferte Taktfrequenz größer als 133 MHz ist, während eine CAS-Latenz von 2 oder 3 anzeigen kann, dass eine Taktfrequenz von weniger als 133 MHz zugeführt wird. Da die CAS-Latenz der Taktfrequenz entspricht, kann man mit der CAS-Latenz zwischen der zwischengespeicherten synchronen Betriebsart und der FIFO-synchronen Betriebsart auswählen. Wenn – unter Fortsetzung des Beispiels – die zwischengespeicherte Betriebsart für Taktfrequenzen unterhalb von 133 MHz geeignet ist, würde eine CAS-Latenz von 2 oder 3 bewirken, dass die Betriebsartauswahllogik die zwischengespeicherte synchrone Betriebsart auswählt, während eine CAS-Latenz von 4 oder mehr bewirken würde, dass die Betriebsartauswahllogik die FIFO-synchrone Betriebsart auswählt.
  • Wieder mit Bezug auf 5 wird allgemeiner ausgedrückt in der Operation 150, wenn die CAS-Latenz einen hohen Wert aufweist, der einer für FIFO-Betriebsart geeigneten Taktfrequenz entspricht, der synchrone FIFO-Pfad ausgewählt (Operation 170). Wenn die CAS-Latenz dagegen keinen hohen Wert aufweist, (wodurch eine für die zwischengespeicherte Betriebsart geeignete Taktfrequenz angezeigt wird) wird in der Operation 160 der zwischengespeicherte synchrone Pfad ausgewählt.
  • In dem obigen Beispiel wird die CAS-Latenz verwendet, um zwischen der zwischengespeicherten synchronen Betriebsart und der FIFO-synchronen Betriebsart auszuwählen, da die CAS-Latenz in diesem Beispiel die Taktfrequenz anzeigt. Dieser Ansatz vermeidet die Notwendigkeit von Schaltkreisen auf dem Speicherbaustein, die erkennen können, wie schnell der externe Takt läuft. Eine andere Möglichkeit besteht darin, solche Schaltkreise auf dem Speicherbaustein vorzusehen, um die Taktfrequenz zu erkennen und dann auf der Basis der erkannten Taktfrequenz zwischen der zwischengespeicherten und dem FIFO-Betriebsart auszuwählen. Dieser Ansatz würde jedoch zusätzliche Schaltkreise erfordern, wenn der Speicherbaustein nicht bereits die Fähigkeit zur Bestimmung der Frequenz des externen Taktsignals enthält. Auf jeden Fall ist die Erfindung nicht auf irgendeine konkrete Implementierung zur Bereitstellung eines Taktfrequenzindikators beschränkt, und es kann jedes Signal oder eine Kombination von Signalen, wodurch die Taktfrequenz angezeigt wird, als Taktfrequenzindikator verwendet werden.
  • Abhängig von dem Entwurf des Speicherbausteins ist ein potenziell verkomplizierender Faktor in der Betriebsartauswahllogik der Umstand, dass es möglicherweise nicht möglich ist, die Anwesenheit eines externen Taktsignals rechtzeitig zu detektieren, um einen der synchronen Lesedatenpfade für den ersten Spaltenzugriff in einer Leseoperation auszuwählen. Ungeachtet der Betriebsart wird in diesem Fall der erste Spaltenzugriff über den asynchronen Datenpfad gesteuert. Wenn der Speicherbaustein synchron arbeitet, wird der externe Takt durch den zweiten Spaltenzugriff erkannt worden sein und der zweite und nachfolgende Spaltenzugriff(e) werden über einen der synchronen Datenpfade gesteuert. Diese Eventualität ist in 5 dargestellt. Wenn der asynchrone Lesedatenpfad ausgewählt wurde (Operation 120) wird genauer gesagt die Leseoperation mit dem asynchronen Pfad fortgesetzt, wenn nach dem ersten Spaltenzugriff kein Taktsignal erkannt wird. Wenn dagegen ein Taktsignal erkannt wird, nachdem der erste Spaltenzugriff über den asynchronen Datenpfad gesteuert wurde, werden die nachfolgenden Spaltenzugriffe über einen der synchronen Datenpfade gesteuert. In 5 wird diese Entscheidungslogik durch die Operation 130 repräsentiert. Wenn genauer gesagt der asynchrone Lesedatenpfad für den ersten Spaltenzugriff ausgewählt wurde, wird die Anwesenheit des Taktsignals geprüft; andernfalls wird die Leseoperation in dem asynchronen Datenpfad fortgesetzt. Es versteht sich, dass bei einer tatsächlichen Implementierung die Anwesenheit eines Taktsignals während des Anfangsteils der Leseoperation kontinuierlich überwacht werden kann.
  • Obwohl an dem obigen Beispiel ein Speicherbaustein beteiligt war, der mit einer Einzeldatenrate (SDR) arbeitet, ist die Erfindung auch auf DDR-Speicherbausteine oder Speicherbausteine, bei denen sowohl SDR- als auch DDR-Leseoperationen zulässig sind, anwendbar.

Claims (21)

  1. Speicherbaustein, umfassend: – ein Speicherarray mit mehreren Speicherzellen, das dafür konfiguriert ist, Daten zu speichern; – mehrere Datenanschlussstellen, die dafür konfiguriert sind, als eine Ausgabe des Speicherbausteins bei einer Leseoperation aus dem Speicherarray abgerufene Daten bereitstellen; – mehrere parallele Lesedatenpfade, die jeweils zwischen das Speicherarray und die Datenanschlussstellen geschaltet sind, wobei die parallelen Lesedatenpfade umfassen: mehrere synchrone Datenpfade, die in verschiedenen Betriebsarten betreibbar sind, und einen asynchronen Datenpfad; und – eine Betriebsartauswahleinrichtung, die dafür konfiguriert ist, einen der parallelen Lesedatenpfade auszuwählen, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, – wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines Werts eines Spaltenzugriff-Abtast-Latenzbefehls einen der synchronen Datenpfade auswählt.
  2. Speicherbaustein nach Anspruch 1, wobei der Speicherbaustein ein pseudostatischer Direktzugriffsspeicher (Pseudo-SRAM) ist.
  3. Speicherbaustein nach Anspruch 1 oder 2, wobei die mehreren synchronen Datenpfade einen über einen ersten Bereich von Taktfrequenzen betreibbaren ersten synchronen Datenpfad und einen über einen zweiten Bereich von Taktfrequenzen, der höher als der erste Bereich von Taktfrequenzen ist, betreibbaren zweiten synchronen Datenpfad umfassen.
  4. Speicherbaustein nach Anspruch 1 oder 2, wobei die mehreren synchronen Datenpfade einen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen in einer zuerst herein-zuerst hinaus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad umfassen.
  5. Speicherbaustein nach einem der Ansprüche 1 bis 4, wobei die mehreren synchronen Datenpfade einen ersten und einen zweiten synchronen Datenpfad umfassen und wobei bei Anwesenheit eines externen Taktsignals die Betriebsartauswahleinrichtung den ersten synchronen Datenpfad als Reaktion auf einen Spaltenzugriff-Abtast(CAS)-Latenzbefehl, der einen ersten Wert aufweist auswählt und den zweiten synchronen Datenpfad als Reaktion auf einen Spaltenzugriff-Abtast-Latenzbefehl, der einen zweiten Wert aufweist, auswählt.
  6. Speicherbaustein, umfassend: – ein Speicherarray mit mehreren Speicherzellen, das dafür konfiguriert ist, Daten zu speichern; – mehrere Datenanschlussstellen, die dafür konfiguriert sind, als eine Ausgabe des Speicherbausteins bei einer Leseoperation aus dem Speicherarray abgerufene Daten bereitzustellen; – mehrere parallele Lesedatenpfade, die jeweils zwischen das Speicherarray und die Datenanschlussstellen geschaltet sind, wobei die parallelen Lesedatenpfade umfassen: einen asynchronen Datenpfad, einen über einen ersten Bereich von Taktfrequenzen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen über einen zweiten Bereich von Taktfrequenzen, der höher als der erste Bereich von Taktfrequenzen ist, in einer zuerst herein-zuerst heraus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad; und – eine Betriebsartauswahleinrichtung, die dafür konfiguriert ist, einen der parallelen Lesedatenpfade auszuwählen, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, – wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines Werts eines Spaltenzugriff-Abtast-Latenzbefehls (CAS) einen der synchronen Datenpfade auswählt.
  7. Speicherbaustein nach Anspruch 6, wobei der Speicherbaustein ein pseudostatischer Direktzugriffsspeicher (Pseudo-SRAM) ist.
  8. Speicherbaustein nach Anspruch 6 oder 7, wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt.
  9. Speicherbaustein nach einem der Ansprüche 6 bis 8, wobei bei Anwesenheit eines externen Taktsignals die Betriebsartauswahleinrichtung den ersten synchronen Datenpfad als Reaktion auf einen Spaltenzugriff-Abtast(CAS)-Latenzbefehl, der einen ersten Wert aufweist, auswählt und den zweiten synchronen Datenpfad als Reaktion auf einen Spaltenzugriff-Abtast-Latenzbefehl, der einen zweiten Wert aufweist, auswählt.
  10. Speicherbaustein, umfassend: – ein Speicherarray mit mehreren Speicherzellen, das dafür konfiguriert ist, Daten zu speichern; – mehrere Datenanschlussstellen, die dafür konfiguriert sind, als eine Ausgabe des Speicherbausteins bei einer Leseoperation aus dem Speicherarray abgerufene Daten bereitzustellen; – mehrere parallele Lesedatenpfade, die jeweils zwischen das Speicherarray und die Datenanschlussstellen geschaltet sind, wobei die parallelen Lesedatenpfade einen asynchronen Datenpfad und mehrere synchrone Datenpfade umfassen; und – eine Betriebsartauswahleinrichtung, die dafür konfiguriert ist, einen der Lesedatenpfade auszuwählen, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines Werts eines Spaltenzugriff-Abtast-(CAS)-Latenzbefehls einen der synchronen Datenpfade auswählt.
  11. Speicherbaustein nach Anspruch 10, wobei der Speicherbaustein ein pseudostatischer Direktzugriffsspeicher (Pseudo-SRAM) ist.
  12. Speicherbaustein nach Anspruch 10 oder 11, wobei die mehreren synchronen Datenpfade einen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen in einer zuerst herein-zuerst hinaus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad umfassen.
  13. Pseudostatischer Direktzugriffsspeicher (Pseudo-SRAM), umfassend: – ein Speicherarray mit mehreren Speicherzellen, das dafür konfiguriert ist, Daten zu speichern; – mehrere Datenanschlussstellen, die dafür konfiguriert sind, als eine Ausgabe des Speicherbausteins bei einer Leseoperation aus dem Speicherarray abgerufene Daten bereitzustellen; – mehrere parallele Lesedatenpfade, die jeweils zwischen das Speicherarray und die Datenanschlussstellen geschaltet sind, wobei die parallelen Lesedatenpfade umfassen: einen asynchronen Datenpfad, einen über einen ersten Bereich von Taktfrequenzen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen über einen zweiten Bereich von Taktfrequenzen, der höher als der erste Bereich von Taktfrequenzen ist, in einer zuerst herein-zuerst hinaus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad; und – eine Betriebsartauswahleinrichtung, die dafür konfiguriert ist, einen der parallelen Lesedatenpfade auszuwählen, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, wobei die Betriebsartauswahleinrichtung als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines Werts eines Spaltenzugriff-Abtast(CAS)-Latenzbefehls den ersten oder den zweiten synchronen Datenpfad auswählt.
  14. Direktzugriffsspeicher nach Anspruch 13, wobei bei Anwesenheit eines externen Taktsignals die Betriebsartauswahleinrichtung den ersten synchronen Datenpfad auswählt, wenn ein Spaltenzugriff-Abtast(CAS)-Latenzbefehl einen ersten Wert aufweist und den zweiten synchronen Datenpfad auswählt, wenn der Spaltenzugriff-Abtast-Latenzbefehl einen zweiten Wert aufweist.
  15. Verfahren zum Durchführen einer Leseoperation in einem Speicherbaustein, umfassend: – (a) Abrufen von Daten aus einem Speicherarray als Reaktion auf einen Empfang eines Lesebefehls; – (b) Auswählen eines asynchronen Datenpfades zum Zuführen der abgerufenen Daten zu Anschlussstellen des Speicherbausteins als Reaktion auf die Abwesenheit eines externen Taktsignals; und – (c) Auswählen eines von mehreren synchronen Datenpfaden, um die abgerufenen Daten den Anschlussstellen des Speicherbausteins zuzuführen, als Reaktion auf eine Detektion eines externen Taktsignals, wobei der eine der mehreren synchronen Datenpfade als Funktion eines durch den Speicherbaustein empfangenen externen Signals ausgewählt wird.
  16. Verfahren nach Anspruch 15, wobei das externe Signal ein Spaltenzugriff-Abtast(CAS)-Latenzsignal ist.
  17. Verfahren nach Anspruch 15 oder 16, wobei die mehreren synchronen Datenpfade einen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen in einer zuerst herein-zuerst hinaus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad umfassen und wobei (c) umfasst den ersten synchronen Datenpfad als Reaktion auf das Spaltenzugriff-Abtast-Latenzsignal, das einen ersten Wert aufweist, auszuwählen und den zweiten synchronen Datenpfad als Reaktion auf das Spaltenzugriff-Abtast-Latenzsignal auszuwählen, das einen zweiten Wert aufweist.
  18. Verfahren nach einem der Ansprüche 15 bis 17, wobei der erste synchrone Datenpfad über einen ersten Bereich von Taktfrequenzen und der zweite synchrone Datenpfad über einen zweiten Bereich von Taktfrequenzen, der höher als der erste Bereich von Taktfrequenzen ist, betreibbar ist.
  19. Verfahren zum Herstellen eines Speicherbausteins, umfassend: – (a) Bereitstellen mehrerer paralleler Lesedatenpfade, die jeweils zwischen ein Speicherarray und mehrere Datenanschlussstellen des Speicherbausteins geschaltet sind, wobei die parallelen Lesedatenpfade mehrere synchrone Datenpfade, die in verschiedenen Betriebsarten betreibbar sind, und einen asynchronen Datenpfad umfassen; und – (b) Bereitstellen einer Betriebsartauswahleinrichtung zum Auswählen eines der parallelen Lesedatenpfade, um aus dem Speicherarray abgerufene Daten den Datenanschlussstellen zuzuführen, wobei eine solche Betriebsartauswahleinrichtung bereitgestellt wird, die als Reaktion auf die Abwesenheit eines externen Taktsignals den asynchronen Datenpfad auswählt und bei Anwesenheit eines externen Taktsignals als Funktion eines empfangenen externen Signals, insbesondere des Werts eines Spaltenzugriff-Abtast-Latenzbefehls (CAS), einen der synchronen Datenpfade auswählt.
  20. Verfahren nach Anspruch 19, wobei (a) umfasst, einen in einer zwischengespeicherten Betriebsart betreibbaren ersten synchronen Datenpfad und einen in einer zuerst herein-zuerst hinaus (FIFO)-Betriebsart betreibbaren zweiten synchronen Datenpfad bereitzustellen.
  21. Verfahren nach Anspruch 19 oder 20, wobei (a) umfasst, einen ersten und einen zweiten synchronen Datenpfad bereitzustellen, und wobei bei Anwesenheit eines externen Taktsignals die Betriebsartauswahleinrichtung den ersten synchronen Datenpfad als Reaktion auf ein Spaltenzugriff-Abtast(CAS)-Latenzsignal, das einen ersten Wert aufweist, auswählt und den zweiten synchronen Datenpfad als Reaktion auf ein Spaltenzugriff-Abtast-Latenzsignal, das einen zweiten Wert aufweist, auswählt.
DE102006028683.9A 2005-06-22 2006-06-22 Parallele Datenpfadarchitektur Expired - Fee Related DE102006028683B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/157,868 2005-06-22
US11/157,868 US7245552B2 (en) 2005-06-22 2005-06-22 Parallel data path architecture

Publications (2)

Publication Number Publication Date
DE102006028683A1 DE102006028683A1 (de) 2007-02-22
DE102006028683B4 true DE102006028683B4 (de) 2014-02-13

Family

ID=37567174

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006028683.9A Expired - Fee Related DE102006028683B4 (de) 2005-06-22 2006-06-22 Parallele Datenpfadarchitektur

Country Status (5)

Country Link
US (1) US7245552B2 (de)
JP (1) JP2007004967A (de)
KR (1) KR100827402B1 (de)
CN (1) CN100547681C (de)
DE (1) DE102006028683B4 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070057695A1 (en) * 2005-09-15 2007-03-15 Hermann Ruckerbauer Semiconductor memory chip with re-drive unit for electrical signals
US7492793B2 (en) * 2005-10-20 2009-02-17 International Business Machines Corporation Method for controlling asynchronous clock domains to perform synchronous operations
JP4524662B2 (ja) * 2005-10-21 2010-08-18 エルピーダメモリ株式会社 半導体メモリチップ
KR100738965B1 (ko) * 2006-03-07 2007-07-12 주식회사 하이닉스반도체 반도체 메모리 장치의 동기 모드 감지 회로 및 방법
KR100695289B1 (ko) * 2006-03-09 2007-03-16 주식회사 하이닉스반도체 반도체 메모리 장치의 어드레스 버퍼 및 어드레스 버퍼링방법
EP2153328B1 (de) * 2007-05-25 2011-08-10 Freescale Semiconductor, Inc. Datenverarbeitungssystem, datenverarbeitungsverfahren und vorrichtung
JP4561783B2 (ja) 2007-06-21 2010-10-13 ソニー株式会社 半導体メモリ装置、半導体メモリ装置の動作方法
JP4561782B2 (ja) * 2007-06-21 2010-10-13 ソニー株式会社 半導体メモリ装置、半導体メモリ装置の動作方法
JP2009044489A (ja) * 2007-08-09 2009-02-26 Panasonic Corp 転送性能最適化機能付非同期吸収回路
US7983099B2 (en) * 2007-12-20 2011-07-19 Mosaid Technologies Incorporated Dual function compatible non-volatile memory device
JP4762261B2 (ja) 2008-03-12 2011-08-31 株式会社東芝 メモリシステム
JP5687412B2 (ja) 2009-01-16 2015-03-18 ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. 半導体記憶装置及びそのリード待ち時間調整方法、メモリシステム、並びに半導体装置
US9021178B2 (en) * 2011-05-02 2015-04-28 Western Digital Technologies, Inc. High performance path for command processing
KR101278269B1 (ko) * 2011-08-26 2013-06-24 에스케이하이닉스 주식회사 반도체 장치 및 이의 데이터 전송 방법
US9929972B2 (en) * 2011-12-16 2018-03-27 Qualcomm Incorporated System and method of sending data via a plurality of data lines on a bus
US8527802B1 (en) * 2012-08-24 2013-09-03 Cypress Semiconductor Corporation Memory device data latency circuits and methods
US8873264B1 (en) 2012-08-24 2014-10-28 Cypress Semiconductor Corporation Data forwarding circuits and methods for memory devices with write latency
US10171106B2 (en) * 2017-05-26 2019-01-01 Micron Technology, Inc. Systems and methods for multi-stage data serialization in a memory system
KR102476201B1 (ko) * 2018-07-24 2022-12-12 에스케이하이닉스 주식회사 메모리 장치 및 그의 테스트 회로
CN109901049B (zh) * 2019-01-29 2021-05-04 厦门码灵半导体技术有限公司 检测集成电路用时序路径中异步路径的方法、装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835443A (en) * 1995-09-20 1998-11-10 Nec Corporation High speed semiconductor memory with burst mode
US6327175B1 (en) * 1999-09-13 2001-12-04 Cypress Semiconductor Corporation Method and apparatus for controlling a memory array with a programmable register
US20050068843A1 (en) * 2003-09-29 2005-03-31 Yoshiaki Takeuchi Asynchronous pseudo sram

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5384745A (en) * 1992-04-27 1995-01-24 Mitsubishi Denki Kabushiki Kaisha Synchronous semiconductor memory device
US5402389A (en) 1994-03-08 1995-03-28 Motorola, Inc. Synchronous memory having parallel output data paths
KR100217747B1 (ko) * 1996-06-21 1999-09-01 윤종용 메모리의 전송데이타 인터페이스 장치 및 방법
JP4060442B2 (ja) 1998-05-28 2008-03-12 富士通株式会社 メモリデバイス
JP2002109881A (ja) 2000-09-28 2002-04-12 Toshiba Corp 半導体集積回路
US6754132B2 (en) * 2001-10-19 2004-06-22 Samsung Electronics Co., Ltd. Devices and methods for controlling active termination resistors in a memory system
JP3959341B2 (ja) * 2002-02-18 2007-08-15 株式会社東芝 半導体集積回路装置
JP2004071103A (ja) 2002-08-08 2004-03-04 Sharp Corp 自己同期型fifoメモリ装置
JP2005222581A (ja) * 2004-02-03 2005-08-18 Renesas Technology Corp 半導体記憶装置
KR100521048B1 (ko) 2004-04-20 2005-10-11 주식회사 하이닉스반도체 슈도 스태틱램의 동작모드 제어방법 및 제어회로, 이를구비한 슈도 스태틱램 및 그의 동작모드 수행방법
KR100585179B1 (ko) 2005-02-07 2006-06-02 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 데이터 기입및 독출 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835443A (en) * 1995-09-20 1998-11-10 Nec Corporation High speed semiconductor memory with burst mode
US6327175B1 (en) * 1999-09-13 2001-12-04 Cypress Semiconductor Corporation Method and apparatus for controlling a memory array with a programmable register
US20050068843A1 (en) * 2003-09-29 2005-03-31 Yoshiaki Takeuchi Asynchronous pseudo sram

Also Published As

Publication number Publication date
CN100547681C (zh) 2009-10-07
JP2007004967A (ja) 2007-01-11
US20060291323A1 (en) 2006-12-28
KR100827402B1 (ko) 2008-05-06
DE102006028683A1 (de) 2007-02-22
US7245552B2 (en) 2007-07-17
CN1885430A (zh) 2006-12-27
KR20060134861A (ko) 2006-12-28

Similar Documents

Publication Publication Date Title
DE102006028683B4 (de) Parallele Datenpfadarchitektur
DE4432217C2 (de) Halbleiterspeichereinrichtung
DE19807298C2 (de) Synchrone Halbleiterspeichereinrichtung
DE10010440B4 (de) Synchrones dynamisches Speicherbauelement mit wahlfreiem Zugriff und Verfahren zur CAS-Latenzsteuerung
DE102005050595B4 (de) Speichersystem, Speichervorrichtung und Verfahren dafür
DE602004007674T3 (de) Integrierte Schaltung mit bimodalem Daten-Strobe
DE4222273C2 (de) Zweikanalspeicher und Verfahren zur Datenübertragung in einem solchen
DE10209398A1 (de) Speichersteuerung mit einer Unterstützung für Speichermodule aus RAM-Bauelementen mit inhomogener Datenbreite
DE60214992T2 (de) Mehrbit-prefetch-ausgangsdatenweg
DE102006020857A1 (de) Integrierter Halbleiterspeicher zur Synchronisierung eines Signals mit einem Taktsignal
DE102006030373A1 (de) Halbleiterspeichervorrichtung
DE69930586T2 (de) Integrierte Halbleiterspeicherschaltung
DE102005051308A1 (de) Zentrale Vorrichtung zum Testen von Speicher und Verfahren
DE19526411A1 (de) Programmierbarer dynamischer Direktzugriffsspeicher (DRAM)
DE4210857A1 (de) Halbleiterspeichereinrichtung und verfahren zum uebertragen von daten
DE19507562A1 (de) Synchrone Halbleiterspeichervorrichtung mit einer Schreiblatenzsteuerfunktion
DE10212642A1 (de) Speichersteuerung mit 1X/MX-Lesefähigkeit
DE102014107661A1 (de) Kontinuierliches Einstellen einer Präambel-Freigabe-Zeitsteuerung in einer Schnittstelle einer Speichereinrichtung mit doppelter Datenrate
DE19639972B4 (de) Hochgeschwindigkeitstestschaltkreis für eine Halbleiterspeichervorrichtung
DE102004036893A1 (de) Getakteter Halbleiterspeicherbaustein und zugehöriges Speichermodul
DE112004001660T5 (de) Echotakt auf Speichersystem mit Warteinformationen
DE10235740A1 (de) Register, das zum Korrespondieren mit einem Breitfrequenzband geeignet ist, und Signalerzeugungsverfahren, das dasselbe verwendet
DE102006048972A1 (de) Gezieltes automatisches Auffrischen für einen dynamischen Direktzugriffsspeicher
DE102007004713B4 (de) Datenübergabeeinheit zum Übertragen von Daten zwischen unterschiedlichen Taktbereichen
DE19738893A1 (de) Schaltsignalgenerator und diesen verwendendes, synchrones SRAM

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R020 Patent grant now final

Effective date: 20141114

R081 Change of applicant/patentee

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

R082 Change of representative
R081 Change of applicant/patentee

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee