-
Die
Erfindung betrifft ein Verfahren und eine Schaltungsanordnung zum
Steuern eines Schreibzugriffs auf einen Halbleiterspeicher, insbesondere
auf einen DDR-Graphikspeicher.
-
Obwohl
auf beliebige Halbleiterspeicher anwendbar, werden die vorliegende
Erfindung sowie die ihr zugrunde liegende Problematik nachfolgend mit
Bezug auf DDR-Halbleiterspeicher und hier insbesondere auf Graphikspeicher
erläutert.
-
Bei
modernen Computer- und Software-Anwendungen besteht zunehmend der
Bedarf, immer größere Datenmengen
in immer kürzerer
Zeit zu verarbeiten. Zur Speicherung der Daten werden hochintegrierte
Speicher, wie zum Beispiel DRAM-Speicher, verwendet. Solche Halbleiterspeicher,
insbesondere dynamische Schreib-Lese-Speicher wie ein DRAM-Speicher,
werden in unterschiedlichen Ausführungsformen
und Varianten hergestellt, wobei sich die einzelnen Ausführungsformen
im Wesentlichen durch ihr Betriebsverhalten voneinander unterscheiden.
-
Um
nun dem eben genannten Bedarf einer immer höheren Geschwindigkeit bei der
Verarbeitung von Daten gerecht zu werden, müssen im Falle eines solchen
Halbleiterspeichers diese Daten entsprechend schnell in den Speicher
geschrieben werden bzw. wieder aus diesem Speicher herausgelesen werden.
Dies lässt
sich zum Beispiel mit einer immer weiter steigenden Betriebsfrequenz,
mit der die Daten aus oder in einen Halbleiterspeicher gelesen bzw. geschrieben
werden können,
realisieren.
-
Eine
weitere Möglichkeit
besteht in der Verwendung speziell für hohe Datenraten ausgelegten Halbleiterspeichern.
Ein Vertreter eines solchen Halbleiterspeichers ist der so genannte DDR-DRAM-Speicher,
wobei DDR für "Double Data Rate" steht. Während bei
herkömmlichen
Halbleiterspeichern Schreib- und Leseoperationen nur bei der ansteigenden
oder bei der abfallenden Flanke eines Taktsignals vorgenommen werden,
werden bei den genannten DDR-Halbleiterspeichern Daten sowohl bei
der ansteigenden als auch bei der abfallenden Flanke des Taktsignals
aus dem Halbleiterspeicher ausgelesen bzw. wieder in den Speicher
geschrieben. Diese Halbleiterspeicher zeichnen sich also durch eine
doppelte Datenrate aus.
-
Ein
solcher DDR-Halbleiterspeicher wird zum Beispiel bei Graphikanwendungen
eingesetzt. Bei Graphikanwendungen wird aufgrund der Vielzahl der
zu verarbeitenden Daten eine besonders hohe Anforderung auf die
Leistungsfähigkeit
und somit die Fähigkeit,
die zu verarbeitenden Daten mit möglichst hoher Geschwindigkeit
aus dem Speicher auszulesen bzw. wieder in den Speicher zu schreiben,
gelegt.
-
Zukünftige Graphikspeicher
der dritten Generation, das heißt
Graphikspeicher entsprechend dem neuen, so genannten GDDR-III Standard,
weisen gegenüber
bisherigen Graphikspeichergenerationen, wie dem GDDR-II Standard,
eine Verbesserung bezüglich
der Leistungsfähigkeit
auf. Eine wesentliche Verbesserung gegenüber bisherigen Graphikspeichern
besteht hier in der neuen Definition des so genannten Daten-Strobe-Signals
oder kurz DQS-Signals. Durch diese neue Definition des DQS-Signals
wird nunmehr festgelegt, dass das DQS-Signal im inaktiven Zustand
fest auf einem definierten logischen Pegel, zum Beispiel auf einem
hohen logischen Pegel (HIGH), liegen muss (z.B. Terminierung nach
VDD = 1,8 Volt). Ferner muss das DQS-Signal zu Beginn eines Schreibzugriffs
definiert von einem hohen logischen Pegel (HIGH) auf einen niedrigen
logischen Pegel (LOW) wechseln.
-
Der
Spezifikation der Graphikspeichern der dritten Generation zufolge
ist es erlaubt, Serien von Schreibbefehlen an den Graphikspeicher
zu senden. Benachbarte Schreibbefehle (WR- Befehl) können allerdings unterschiedliche
Abstände
zueinander aufweisen. Zwischen zwei aufeinanderfolgenden Schreibbefehlen
muss, um einen ordnungsgemäßen Schreibvorgang
durchzuführen,
aber zumindest ein so genannter NOP-Befehl (NOP = No Operation)
vorgesehen sein. 1 zeigt
ein Ablaufdiagramm, bei dem für
eine Serie von zwei Schreibbefehlen WR zunächst ein erster Schreibbefehl
WR und anschließend
ein zweiter Schreibbefehl WR abgearbeitet wird. Mit WL ist hier
der im Allgemeinen programmierbare Abstand zwischen Schreibbefehlen
WR und von einer programmgesteuerten Einrichtung gesendeten Daten
DQ. WL bezeichnet damit die Schreiblatenz.
-
Im
Falle eines Graphikspeichers der dritten Generation ist die Burst-Länge auf
4 festgelegt, das heißt,
innerhalb eines Datenbursts der Dauer von zwei Takten des Taktsignals
CLK werden vier Datenpakete D00 – D03, D10 – D13 parallel verarbeitet. Nach
Ende eines jeweiligen Schreibbefehls WR steht der Zähler jeweils
auf dem Zustand "0".
-
Die
Steuerung des Schreibzugriffs wird von dem Taktsignal CLK oder einem
davon abgeleiteten Schreibsteuersignals SS vorgenommen. Bei einer ersten
fallenden Flanke des Schreibsteuersignals SS wird der Zähler gestartet.
Diese Flanke des Schreibsteuersignals SS wird auch als Präambel PR
bezeichnet. Bei jeder nachfolgenden ansteigenden oder abfallenden
Flanke des Schreibsteuersignals SS wird jeweils ein Datenpaket D00 – D03 eines
ersten Datenbursts DB1 gelatcht, das heißt in den Graphikspeicher geschrieben.
Das bedeutet, dass bei einem Zählerstand "4" das jeweils letzte Datenpaket D03 des
ersten Datenbursts DB1 gelatcht wird. Die nachfolgende, dem Zählerstand "5" entsprechende ansteigende Flanke des
Schreibsteuersignals SS wird auch als Postambel PO bezeichnet. Bei
der Postambel PO schaltet der Zähler
also von "5" auf "0". Anschließend, das heißt nach
dem Zählerstand "5" wird der Zählerstand wieder auf "0" zurückgesetzt.
Der Zählerstand
bleibt dann solange auf "0", bis über einen
zweiten Schreibbefehl WR ein weiterer Schreibzugriff signalisiert
wird, um Datenpakete D10 – D13
eines nachfolgenden zweiten Datenbursts DB2 zu latchen.
-
Ein
für den
Zähler
kritischer Fall ergibt sich im Falle eines Schreibzugriffes, bei
dem zwischen zwei aufeinanderfolgenden Schreibbefehlen WR jeweils
nur ein einziger NOP-Befehl vorhanden ist, das heißt für eine Befehlsfolge
WR, NOP, WR, NOP, etc. Eine derartige Folge von Schreibbefehlen
WR mit maximal einem dazwischen angeordneten NOP-Befehl NOP wird
nachfolgend auch als "Gapless"-Schreibbefehl bezeichnet,
da die Daten zweier aufeinanderfolgender Datenbursts mehr oder weniger
ohne Unterbrechung in den Graphikspeicher geschrieben werden sollen. 2 zeigt ein Ablaufdiagramm
zur Darstellung eines Konflikts im Falle von drei solcher Gapless-Schreibbefehlen.
-
Problematisch
ist hier vor allem, dass für
den Fall eines Gapless-Schreibbefehls sich jeweils die letzte ansteigende
Flanke, also die Postambel PO, des Schreibsteuersignals SS, welche
dem letzten Datenpaket D03 des ersten Datenbursts DB1 zugeordnet
ist, und die erste abfallende Flanke, also die Präambel PR,
des Schreibsteuersignals SS, welche dem ersten Datenpaket D10 des
nachfolgenden zweiten Datenbursts DB2 zugeordnet ist, sich überlappen.
Damit ist eine eindeutige Unterscheidung der Datenpakete D00 – D03, D10 – D13 zweier
benachbarter Datenbursts DB1, DB2 nicht mehr möglich ist.
-
Das
Problem offenbart sich vor allem bei dem Zähler bzw. dessen Zählerstand.
Entsprechend dem Zählerstand
würde der
Zähler
in diesem Falle die Flanke des Schreibsteuersignals SS des zweiten Datenbursts
als Präambel
PR interpretieren, obwohl die Präambel
PR dieses Datenbursts bereits einen Takt früher vorhanden war. Das hätte allerdings
zur Folge, dass das Zählerausgangssignal
bei dem zweiten Schreibzugriff einen ganzen Takt zu spät vorhanden
ist. Analogerweise wäre
das Zählerausgangssignal
beim dritten Gapless-Schreibbefehl, also beim dritten Datenburst
DB3, entsprechend zwei Takte zu spät.
-
Insbesondere
bei einer großen
Anzahl solcher aufeinanderfolgender Gapless-Schreibbefehle WR kommt
es dann zwangsläufig
zu einer zunehmenden Verschiebung des Zählerausgangssignals mit der
Folge, dass die einzelnen Datenpakete Dx0 – Dx3 der verschiedenen Datenbursts
DBx nicht mehr ordnungsgemäß gelatcht
werden können
und damit nicht mehr ordnungsgemäß in den
Speicher geschrieben werden können.
-
Eine
Lösung
für dieses
Problem existiert derzeit nicht, da dieses Problem erst mit dem
neuen Standard zu den Graphikspeichern der zukünftigen dritten Generation
entstanden ist, bei denen Serien von Schreibbefehlen zugelassen
sind.
-
Vor
diesem Hintergrund liegt der vorliegenden Erfindung die Aufgabe
zugrunde, eine verbesserte Steuerung bei der Behandlung von Schreibbefehlen
zu ermöglichen.
Ferner soll der oben beschriebene Konflikt im Falle von mehreren
aufeinanderfolgenden Gapless-Schreibzugriffen auf einen Speicher möglichst
vermeiden werden.
-
Erfindungsgemäß wird zumindest
eine dieser Aufgaben durch ein Verfahren mit den Merkmalen des Patentanspruchs
1 sowie durch eine Schaltungsanordnung mit den Merkmalen des Patentanspruchs 12
gelöst.
-
Demgemäß ist vorgesehen:
- – Ein
Verfahren zum Steuern eines Schreibzugriffs auf einen Halbleiterspeicher,
insbesondere einen DDR-Graphikspeicher,
bei dem pro Daten-Burst eine Vielzahl von Datenpakete in den Halbleiterspeicher
geschrieben werden, bei dem ein Schreibzugriff durch einen Schreibbefehl
eingeleitet wird und das Latchen der in den Speicher zu schreibenden
Datenpakete unter Steuerung eines Taktes eines Datenstrobe-Schreibtaktsteuersignals
erfolgt, wobei zum Latchen der Datenpakete jeweils abwechseln eine
abfal lende und eine ansteigende Flanke des Datenstrobe-Schreibtaktsteuersignals
verwendet wird und wobei das Datenstrobe-Schreibtaktsteuersignal
zu Beginn des Schreibvorgangs einen definierten Zustand aufweist.
(Patentanspruch 1)
- – Eine
Schaltungsanordnung zur Durchführung
eines Verfahrens nach einem der vorstehenden Ansprüche, die
zum Steuern eines Schreibzugriffs auf einen Halbleiterspeicher,
insbesondere auf einen DDR-Graphikspeicher, ausgelegt ist, bei dem pro
Daten-Burst eine Vielzahl von Datenpakete in den Halbleiterspeicher
geschrieben werden, mit einer Steuer-/Synchronisationseinrichtung, die eingangsseitig
mit einem Eingang für
das Datenstrobe-Schreibtaktsteuersignals und für das Schreibsignal verbunden
ist und die im Falle eines Schreibzugriffes eine Steuerung und/oder
eine Synchronisation des Schreibvorgangs vornimmt. (Patentanspruch
12)
-
Die
Erfindung nutzt aus, dass bei zukünftigen DDR-Halbleiterspeichern, wie zum Beispiel
bei dem Graphikspeicher der dritten Generation, das Daten-Strobe-Schreibsignal
oder kurz WDQS-Signals nun so definiert ist, dass keine so genannten "don't care" Zustände mehr
vorhanden sein dürfen.
Ferner muss das WDQS-Signal im Präambelbereich zu Beginn eines
Schreibzugriffs definiert von einem hohen logischen Pegel (HIGH)
auf einen niedrigen logischen Pegel (LOW) wechseln.
-
Die
Idee der Erfindung besteht hier darin, nun das WDQS-Signal als Schreibsteuersignal
zu verwenden. Damit kann eine definierte und synchronisierte Datenabarbeitung
vorgenommen werden, bei der für
alle Verarbeitungsschritte jeweils das DQS-Signal als Zeitreferenz
verwendet wird.
-
Die
der vorliegenden Erfindung zugrunde liegende Erkenntnis besteht
ferner darin, dass ein Konflikt, wie er in der Beschreibungseinleitung
der vorliegenden Erfindung beschrieben wurde, lediglich bei Vorhandensein
so genannter Gapless- Schreibbefehle
existiert, bei denen also mehrere Schreibbefehle ohne Unterbrechung
an den Speicher gesendet werden. Im Falle von Schreibbefehlen, die
einen größeren Abstand
zueinander aufweisen, ergibt sich kein Konflikt und damit auch kein
Handlungsbedarf.
-
Die
Idee der vorliegenden Erfindung besteht nun darin, zunächst einmal
einen solchen so genannten Gapless-Zustand zwischen zwei aufeinanderfolgenden
Schreibbefehlen zu detektieren. Im Falle eines erkannten Gapless-Zustands
wird ein entsprechendes Steuersignal erzeugt, welches das Vorhandensein
eines Gapless-Schreibzugriffes signalisiert.
-
In
einer Ausgestaltung wird darüber
hinaus auch der Zähler
derart modifiziert, dass im Falle eines detektierten Gapless-Schreibzugriffes
weniger Takte als dafür
vorgesehen sein müssten,
von dem modifizierten Zähler
gezählt
werden. Der Zähler
bzw. dessen Zählerstand
wird somit gewissermaßen überbrückt.
-
Das
Detektieren eines Schreibbefehls kann folgendermaßen erfolgen:
Zwischen zwei Schreibbefehlen ist entsprechend der Spezifikation
für einen solchen
Halbleiterspeicher ein so genannter NOP-Befehl vorgeschrieben. Zur
Detektion eines Schreibbefehls wird im Kommandodekoder, der dem entsprechenden
Halbleiterspeicher zugeordnet ist, eine eigens dafür vorgesehene
Schaltung implementiert, die im Falle eines Gapless-Schreibzugriffes,
das heißt
bei Erkennen der Abfolge WR, NOP, WR, NOP, etc., ein entsprechendes
Steuersignal erzeugt. Dieses Steuersignal wird erst dann wieder
zurückgesetzt,
wenn der Gapless-Schreibzustand beendet ist, das heißt, falls
nach einem letzten dekodiertem Schreibbefehl und dem sich daran
anschließenden, vorgeschriebenen
NOP-Befehl kein weiterer Schreibbefehl mehr folgt. In diesem Falle
wird das Steuersignal, welches den Gapless-Schreibzustand anzeigt, zurückgesetzt.
-
Der
Zähler
wird ferner so modifiziert, dass jeweils ein Takt weniger gezählt wird,
sofern das Steuersignal einen Gapless-Schreibzugriff anzeigt. Durch diese
Maßnahme
wird ein Konflikt im Falle von mehreren aufeinanderfolgenden Gapless-Schreibzugriffen
vermieden. Ein Latchen der Daten und damit ein korrektes Schreiben
der Daten in den Speicher ist somit problemlos möglich.
-
Der
besondere Vorteil der vorliegenden Erfindung besteht darin, dass
im Falle von mehreren Gapless-Schreibbefehlen diese auch ohne Unterbrechung
in den Speicher geschrieben werden können. Das erfindungsgemäße Verfahren
zeichnet sich daher auch durch eine sehr hohe Leistungsfähigkeit
im Falle eines Schreibzugriffes aus, da selbst bei Vorhandensein
von Gapless-Schreibzugriffen keine Verzögerung eingebaut werden muss
und damit eine hohe Schreibgeschwindigkeit zum Schreiben von Daten
in den Halbleiterspeicher gewährleistet
wird.
-
Die
Daten werden hier ohne Trennsignale oder sonstige Trennungen direkt
in den Speicher geschrieben. Hierfür ist lediglich eine geringfügige Modifizierung
des Speichers erforderlich. Diese Modifizierung wird derart ausgebildet,
dass der Speicher quasi zwei unterschiedliche Betriebsmodi unterstützt. Einen
ersten Betriebsmodus, bei dem keine Gapless-Schreibzugriffe vorhanden sind und bei
den der Zähler
in entsprechender Weise jeweils pro abfallender oder ansteigender
Flanke des WDQS-Schreibtaktsteuersignals seinen Zählerstand
hochsetzt und nach der letzten abfallenden bzw. ansteigenden Flanke
seinen Zählerstand
wieder zurücksetzt,
wodurch ein nächster
Schreibbefehl abarbeitbar ist. Und einen zweiten Betriebsmodus,
bei dem Gapless-Schreibzugriffe vorhanden sind. Bei diesen Gapless-Schreibzugriffen
wird der Zähler
geringfügig
modifiziert, um dem Problem Rechnung zu tragen, dass die letzte
abfallende Flanke eines jeweiligen Schreibzugriffes gleichsam die
erste abfallende Flanke des nachfolgenden Schreibzugriffes bezeichnet.
Diese Modifikation erfolgt auf sehr elegante Weise dadurch, dass
der Zählerstand
quasi über brückt wird.
Auf diese Weise werden die jeweiligen Flanken des WDQS-Schreibtaktsteuersignals,
die bereits bei dem vorherigen Datenpaket gezählt wurden, für das nachfolgende
Datenpaket nicht mehr neu gezählt.
Der Zählerstand
reflektiert somit auch bei solchen Gapless-Schreibzugriffen jeweils
den exakten Zählerstand,
wodurch ein korrektes Latchen der Daten erst möglich wird.
-
Vorteilhafte
Ausgestaltungen und Weiterbildungen der Erfindung ergeben sich aus
den weiteren Unteransprüchen
sowie der Beschreibung unter Bezugnahme auf die Zeichnungen.
-
In
einer vorteilhaften Ausgestaltung weist das Datenstrobe-Schreibtaktsteuersignal
im inaktiven Zustand einen fest definierten ersten logischen Pegel
auf. Ferner wechselt das Datenstrobe-Schreibtaktsteuersignal zu
Beginn eines Schreibvorgangs zu einem vorgebbaren Zeitpunkt, zum
Beispiel bei einem Wechsel des Taktsignals des Systemtakts, von einem
fest definierten zweiten logischen Pegel (zum Beispiel "1") auf den ersten logischen Pegel (zum Beispiel "0").
-
In
einer vorteilhaften Ausgestaltung wird nach einem jeweiligen Schreibbefehl
beginnend bei einem ersten Startwert mit jedem Takt des Datenstrobe-Schreibtaktsteuersignals
der Zählerstand
eines Zählers
inkrementiert oder alternativ auch dekrementiert. Das Inkrementieren
bzw. Dekrementieren erfolgt typischerweise mit der Schrittweite
Eins. Am Ende eines dem jeweiligen Schreibbefehl zugeordneten Schreibvorgangs
wird bei Erreichen eines Endwertes der Zählerstand wieder zurückgesetzt,
zum Beispiel auf Null oder einen anderen Wert.
-
In
einer weiteren vorteilhaften Ausgestaltung wird mittels des Datenstrobe-Schreibtaktsteuersignals
auch eine Synchronisation der verschiedenen Zähler vorgenommen.
-
In
einer vorteilhaften Ausgestaltung sind zumindest zwei aufeinanderfolgende,
abstandslose Schreibbefehle (Gapless- Schreibbefehle) vorgesehen. Solche Schreibbefehle
weisen einen minimalen Abstand zueinander auf, wobei der minimale
Abstand durch die Länge
eines einem jeweiligen Schreibbefehl zugeordneten Daten-Bursts bestimmt ist.
-
In
einer vorteilhaften Ausgestaltung wird in einem ersten Betriebsmodus
der Zählerstand
auf einen ersten Startwert zurückgesetzt,
sofern zwei aufeinanderfolgende Schreibbefehle einen Abstand zueinander
aufweisen, der größer ist
als der minimale Abstand. In einem zweiten Betriebsmodus wird der Zählerstand
auf einen zweiten Startwert zurückgesetzt,
der betragsmäßig größer ist
als der erste Startwert, sofern abstandslose Schreibbefehle vorgesehen
sind, die also den minimalen Abstand zueinander aufweisen.
-
In
einer vorteilhaften Ausgestaltung wird aus dem Schreibbefehl und
der Dauer zweier aufeinanderfolgender Schreibbefehle ein Steuersignal
abgeleitet; welches festlegt, ob ein einem Schreibbefehl entsprechender
Schreibvorgang im ersten Betriebsmodus oder im zweiten Betriebsmodus
vorgenommen wird. Typischerweise wird die Dauer durch Zählen der
abfallenden und/oder der ansteigenden Flanken des Datenstrobe-Schreibtaktsteuersignals
bestimmt.
-
Typischerweise,
jedoch nicht notwendigerweise wird der zweite Startwert abhängig von
der Länge
eines Daten-Bursts und/oder dem Takt des Datenstrobe-Schreibtaktsteuersignals
und/oder dem ersten Startwert eingestellt.
-
In
einer vorteilhaften Ausgestaltung beträgt die Länge eines Daten-Bursts vier,
dass heißt
innerhalb eines Daten-Bursts werden vier Datenpakete je Schreibbefehl
gelatcht, wobei der erste Startwert 0 beträgt und der zweite Startwert
2 beträgt
und der Endwert, bei dem der Zähler
zurückgesetzt
wird, 5 beträgt.
-
In
einer vorteilhaften Ausgestaltung ist eine einstellbare Verzögerung für den Zähler vorgesehen, die
den Startwert des Zählers
im Falle des zweiten Betriebsmodus auf den zweiten Startwert einstellt, wobei
die Verzögerung über ein
Verzögerungssteuersignal
eingestellt wird.
-
In
einer vorteilhaften Ausgestaltung der erfindungsgemäßen Steuer-/Synchronisationseinrichtung weist
diese einen Schreibsynchronisationszähler auf, der ausgangsseitig
abhängig
von dem Datenstrobe-Schreibtaktsteuersignal und dem Schreibsignal ein
Freigabesignal erzeugt, welches bei Vorhandensein eines Zählerfreigabesignals
ein Schreibsteuersignal zur Steuerung des Schreibvorgangs erzeugt.
-
In
einer weiteren vorteilhaften Ausgestaltung ist zum Latchen der Datenpakete
ein Schieberegister vorgesehen, welches dateneingangsseitig mit
einem Eingangsanschluss zur Einkopplung der Datenpakete eines Daten-Bursts,
datenausgangsseitig mit dem Halbleiterspeicher zum Verschieben der
gelatchen Datenpakete in den Halbleiterspeicher und steuerseitig
mit einem Steueranschluss zum Einkoppeln des Schreibsteuersignal
verbunden ist.
-
In
einer ebenfalls vorteilhaften Ausgestaltung ist eine Zähleinrichtung
vorgesehen, die aus der Dauer zweier aufeinanderfolgender Schreibbefehle ein
Steuersignal ableitet, welches festlegt, ob ein Schreibvorgang im
ersten Betriebsmodus oder im zweiten Betriebsmodus erfolgt.
-
In
einer vorteilhaften Ausgestaltung weist die Zähleinrichtung einen ersten
einstellbaren Zähler
zur Einstellung einer Verzögerung
auf, wobei die Verzögerung über ein
Verzögerungssteuersignal
einstellbar ist.
-
In
einer vorteilhaften Ausgestaltung ist ein zweiter Zähler vorgesehen,
der zur Änderung
seines Zählerstandes
eine Überbrückungseinrichtung
aufweist, welche von dem Steuersignal ansteuerbar ist, wobei der
Zähler
abhängig
von der Ansteuerung der Überbrückungseinrichtung
durch das Steuersignal im ersten Betriebsmodus oder im zweiten Betriebsmodus
betreibbar ist.
-
Typischerweise,
jedoch nicht notwendigerweise ist zumindest einer der Zähler als
Ringzähler ausgebildet.
-
Die
Erfindung wird nachfolgend anhand der in den schematischen Figuren
der Zeichnung angegebenen Ausführungsbeispiele
näher erläutert. Es zeigt
dabei:
-
1 ein
erstes Ablaufdiagramm zur Darstellung eines Schreibzugriffs mit
einer Serie von Schreibbefehlen;
-
2 ein
Ablaufdiagramm zur Darstellung eines Konfliktes eines Schreibzugriffes
im Falle einer Serie von Schreibbefehlen;
-
3 ein
detailliertes Ablaufdiagramm zur Darstellung eines Schreibzugriffs
unter erfindungsgemäßer Steuerung
des WDQS-Schreibtaktsteuersignals;
-
4 ein
Blockschaltbild für
die Realisierung eines über
das WDQS-Schreibtaktsteuersignal aus 3 gesteuerten
Schreibsynchronisationszählers;
-
5 ein
detailliertes Ablaufdiagramm zur Darstellung des erfindungsgemäßen Verfahrens,
bei dem ein Konflikt im Falle von Gapless-Schreibbefehlen vermieden
werden;
-
6 ein
Blockschaltbild einer erfindungsgemäßen Schaltungsanordnung zur
Erzeugung eines Gapless-Steuersignals
zur Vermeidung eines Konflikts im Falle von mehreren Gapless-Schreibbefehlen;
-
7 ein
Blockschaltbild eines erfindungsgemäß modifizierten Ringzählers, der
durch ein Gapless-Steuersignal
gesteuert wird.
-
In
den Figuren der Zeichnung sind gleiche bzw. funktionsgleiche Elemente,
Merkmale und Signale – sofern
nichts anderes angegeben ist – mit
den selben Bezugszeichen versehen worden.
-
3 zeigt
ein detailliertes Ablaufdiagramm zur Darstellung eines Schreibzugriffs
unter erfindungsgemäßer Steuerung
des WDQS-Schreibtaktsteuersignals.
-
In 3 ist
mit CLK das Taktsignal und mit CLK# das dazu inverse Taktsignal
bezeichnet. Die mit COM bezeichnete Zeile enthält die jeweiligen Schreibbefehle
WR, wobei von der Spezifikation vorgesehen ist, dass zwischen zwei
Schreibbefehlen WR jeweils zumindest ein Takt mit einem so genannten
No Operation Befehl oder kurz NOP-Befehl angeordnet ist. Bei dem
Schreibtaktsteuersignal WDQS handelt es sich um ein extern generiertes
Daten-Strobe-Steuersignal oder DQS-Signal. Dieses Schreibtaktsteuersignal
WDQS wird erfindungsgemäß – wie nachfolgend
noch detailliert beschrieben wird – zur Steuerung eines Schreibbefehls
WR verwendet. Ferner ist ein Zählerstandsignal
CS (CS = Counter State), ein Zählerausgangssignal
COUT (COUT = Counter Output), ein internes Schreibsignal WRINT (WRINT
= Write intern), ein Zählerfreigabesignal CEN
(CEN = Counter Enable), ein Stop-Befehl STOP und ein Datenfreigabesignal
DF vorgesehen.
-
Die
grau hinterlegten Bereiche der jeweiligen Befehlszeile COM bezeichnen
so genannte „Don't Care" Zustände, bei
denen also ein undefinierter Zustand vorhanden ist, der aber nicht
berücksichtigt werden
muss.
-
Nachfolgend
sei das Ablaufdiagramm in 3 im Falle
eines Schreibzugriffs kurz erläutert:
Zunächst wird
ein Schreibbefehl WR erkannt und das interne Schreibsignal WRINT
erzeugt. Im vorliegenden Beispiel wird das Schreibtaktsteuersignal
WDQS im nächsten
Takt, also einen Takt nach dem Auftreten des Schreibbefehls WR,
für jeweils
einen Halbtakt auf einen logischen hohen Pegel gesetzt, wodurch der
Beginn eines neuerlichen Schreibzugriffs für einen nachfolgenden Daten-Bursts
DB signalisiert wird. In diesem Fall ist WL = 1. Dieser Zustand,
bei dem das Schreibtaktsteuersignal WDQS zu Beginn eines Schreibzugriffs
definiert von einem niedrigen logischen Pegel für die Dauer eines Halbtaktes
des Taktsignals CLK auf einen hohen logischen Pegel gesetzt wird
und anschließend
wieder definiert auf einen niedrigen logischen Pegel gesetzt wird,
wird auch als Präambel
PR bezeichnet.
-
Bei
der nächsten
fallenden Flanke des Schreibtaktsteuersignals WDQS innerhalb des
Präambelbereichs
PR wird ein Zähler
aktiviert. Dabei wird das Zählerfreigabesignal
CEN auf einen hohen logischen Pegel gesetzt. Der Zähler zählt nun
fortwährend
aufwärts
(oder alternativ auch abwärts),
wobei der Zählerstand
jeweils durch eine abfallende oder ansteigende Flanke des Schreibtaktsteuersignals
WDQS um eins nach oben (bzw. alternativ nach unten) gesetzt wird.
Nach der vierten Flanke des Schreibtaktsteuersignals WDQS innerhalb
des Daten-Bursts DB, das heißt
nach der dritten fallenden Flanke des Schreibtaktsteuersignals WDQS
einschließlich
der Flanke der Präambel
PR, wird das Datenfreigabesignal DF erzeugt. Mittels dieses Datenfreigabesignals
DF werden die soeben gelatchten, das heißt eingelesenen Daten von einem
Schieberegister 15 (Latch) parallel in Richtung des Speicherfeldes 16 (Memory
Array) des Halbleiterspeichers geschoben. Die nächste ansteigende Flanke des Schreibtaktsteuersignals
WDQS erzeugt ein Stopsignal STOP, das den Zähler 14 wieder deaktiviert.
Das Zählerfreigabesignal
CEN wird wieder auf einen niedrigen logischen Pegel gesetzt und
der Zähler bzw.
dessen Zählerstand
wird über
das Zählerausgangssignal
COUT auf "0" zurückgesetzt.
-
Der
besondere Vorteil bei Graphikspeichern der dritten Generation besteht
darin, dass die Präambel
PR zu Beginn eines Schreibzugriffes definiert festgelegt ist, das
heißt
es existieren keine undefinierten Zustände des Schreibtaktsteuersignals WDQS,
wie dies bei bisherigen Graphikspeichern der Fall war. Dadurch wird
die Verwendung des WDQS-Signals als Schreibtaktsteuersignal erst
möglich.
-
Der
besondere Vorteil besteht nun darin, dass dadurch die Schreibsteuerung
zum Schreiben von Daten in das Speicherfeld 16 des Graphikspeichers
nunmehr einzig mit diesem Schreibtaktsteuersignal WDQS durchgeführt werden
kann. Hier werden die Flanken des extern bereitgestellten Schreibtaktsteuersignals
WDQS von einem eigens dafür
bereitgestellten Schreibsynchronisationszähler 14, der zum Beispiel
als Ringzähler 14 ausgebildet
sein kann, gezählt.
Der Schreibsynchronisationszähler 14 zählt also
alle erkannten Flanken des Schreibtaktsteuersignals WDQS zwischen
Präambel
PR und Postambel PO. Bei derjenigen Flanke des Schreibtaktsteuersignals,
welches dem letzten Datenpaket D3 des in den Speicher zu schreibenden
Datensignals DQ entspricht, wird das Zählerausgangssignal COUT auf
einen hohen logischen Pegel gesetzt. Ein vom Zählerstandssignal CS abgeleitetes
Freigabesignal DF wird für
die chipinterne Datenübergabe
verwendet. Das Datenfreigabesignal DF wird aber erst dann erzeugt,
wenn einerseits ein internes Schreibsignal WR erkannt wurde und
andererseits das Zählerausgangssignal
COUT auf einen hohen logischen Pegel gesetzt ist.
-
4 zeigt
ein Blockschaltbild für
die Realisierung eines solchen, über
das WDQS-Schreibtaktsteuersignal aus 3 gesteuerten
Schreibsynchronisationszählers.
-
Die
entsprechende Schaltungsanordnung ist in 4 mit Bezugszeichen 10 bezeichnet.
Dem mit Bezugszeichen 14 bezeichnete Schreibsynchronisationszähler wird
eingangsseitig ein Schreibbefehl WR und über einen Inverter 12 das
Schreibtaktsteuersignal WDQS, die in einem UND-Gatter 11 miteinander verknüpft werden,
zugeführt.
Der Schreibsynchronisationszähler 14 erzeugt
ausgangsseitig das Freigabesignal DF, welches zusammen mit dem Zählerfreigabesignal
CEN in einem UND-Gatter 13 verknüpft werden und die Funktion
des Schieberegisters 15 steuern.
-
Bei
einem Schreibzugriff auf einen DDR-Halbleiterspeicher muss an der
Eingangsstufe des DDR-Halbleiterspeichers eine seriell zu parallel Konvertierung
der eingelesenen Daten DQ durchgeführt werden. Dies ist notwendig,
da pro Taktzyklus CLK jeweils zwei Datenpakete angeliefert werden,
intern im DDR-Halbleiterspeicher aber mit einfacher Datenrate weitergearbeitet
wird. Dieser Vorgang ist in der Spezifikation eines DDR-Halbleiterspeichers als
so genannter Prefetch-Vorgang bezeichnet. Um das Ende eines Parallelisierungsvorgangs
zu erkennen, muss die Anzahl der ankommenden Datenpaketen D0, D1,
D2, D3 in geeigneter Form gezählt
werden. Der Ablauf ist in hier zum Beispiel wie folgt:
Zunächst wird
ein Datenburst DB mit den Datenpaketen D0, D1, D2, D3 in das Schieberegister 15 geladen,
welches über
das Schreibtaktsteuersignal WDQS getaktet wird. Anschließend werden
alle vier Datenpakete D0, D1, D2, D3 von dem Schieberegister 15 in
das Innere des DDR-Halbleiterspeichers, also in dessen Speicherfeld 16 geschrieben.
Für die Steuerung
und insbesondere für
die Synchronisation dieses Ablaufs ist der Schreibsynchronisationszähler 14 vorgesehen.
Im vorliegenden Ausführungsbeispiel
sei der Schreibsynchronisationszähler 14 als Ringzähler ausgebildet.
Der Schreibsynchronisationszähler 14 muss
folgende Voraussetzungen aufweisen:
Zunächst benötigt der Schreibsynchronisationszähler 14 einen
definierten Startpunkt und einen definierten Endpunkt. Darüber hinaus
muss der Schreibsynchronisationszähler 14 auch mit einem
definierten Taktsignal getaktet werden. Bei einem DDR-Halbleiterspeicher
werden die Daten DQ synchron mit dem Schreibtaktsteuersignal WDQS
als Taktsignal angeliefert. Dieses Schreibtaktsteuersignal WDQS
wird nun als Zählertakt
verwendet, da entsprechend der Spezifikation eines DDR-Halbleiterspeichers
mit jedem Datenpaket D0, D1, D2, D3 ein Flankenwechsel des WDQS-Schreibtaktsteuersignals
stattfindet. Zu Beginn der Präambel
PR des Schreibtaktsteuersignals WDQS, mit welchem ein Schreibbefehl
eingeleitet werden soll, muss dieses WDQS-Schreibtaktsteuersignals
definiert von einem hohen logischen Pegel auf einen niedrigen logischen
Pegel wechseln. Aus diesem Grunde kann die abfallende Flanke des Schreibtaktsteuersignals
WDQS innerhalb des Präambelbereichs
PR als Startsignal für
einen flankengetriggerten Schreibsynchronisationszähler 14 verwendet
werden. Dies bedeutet aber gleichsam, dass alle Signale des Schreibsynchronisationszählers 14 von
derselben Taktdomäne,
also von dem Schreibtaktsteuersignal WDQS, stammen. Sämtliche
Nachteile, die sich aus einer Generierung des Startsignals aus einem
anderen Signal oder Takt ergeben würden, entfallen hier vorteilhafterweise.
-
5 zeigt
ein detailliertes Ablaufdiagramm zur Darstellung des erfindungsgemäßen Verfahrens, bei
dem ein Konflikt im Falle von Gapless-Schreibbefehlen vermieden
werden.
-
In 5 sind
drei so genannte Gapless-Schreibbefehle WR vorhanden, dass heißt hier würde ohne
weitere Maßnahmen
ein Konflikt aufgrund der Befehlsfolge WR, NOP, WR, NOP, WR entstehen.
Erfindungsgemäß wird hier
ein so genanntes Gapless-Steuersignal
SG erzeugt, das diesen Konflikt behebt und damit einen ordnungsgemäßen Datentransfer
zu dem Speicher ermöglicht.
-
Zur
Gewinnung dieses Gapless-Steuersignals SG wird nach einem Schreibsignal
WR zunächst ein
internes Schreibsteuersignal IW erzeugt. Dieses interne Schreibsteuersignal
IW wird unmittelbar nach dem Schreibbefehl WR für die Dauer eines Halbtaktes des
Taktsignals CLK auf einen hohen logischen Pegel gesetzt und anschließend wieder
auf einen niedrigen logischen Pegel. Aufgrund dieses internen Schreibsteuersignals
IW wird ein Freigabesignal EN, welches zuvor auf einem niedrigen
logischen Pegel war, auf einen hohen logischen Pegel gesetzt. Das Freigabesignal
EN bleibt zumindest für
die Dauer eines Daten-Bursts
DB, das heißt
für die
Dauer zweier vollständiger
Takte des Taktsignals CLK oder des Schreibtaktsteuersignals WDQS,
auf einem hohen logischen Pegel. Wird nun nach zwei Takten des Schreibtaktsteuersignals
WDQS ein zweiter Schreibbefehl WR erzeugt, dann wird wiederum anschließend das
interne Schreibsteuersignal IW auf einen hohen logischen Pegel gesetzt.
Zu diesem Zeitpunkt befinden sich also das Freigabesignal EN sowie
das interne Schreibsteuersignal IW auf einem logischen hohen Pegel,
wodurch infolgedessen das Gapless-Steuersignal SG auf einen hohen logischen
Pegel gesetzt wird. Dieses Schreibsteuersignal IW bleibt nun zumindest
für die
Dauer eines Datenbursts DB auf diesem hohen logischen Pegel und
signalisiert, dass es sich bei dem zweiten Schreibbefehl WR um einen
Gapless-Schreibbefehl handelt. Infolgedessen wird nach der dritten
abfallenden Flanke des Schreibtaktsteuersignals WDQS, also bei Übergang des
Zählerstandes
von "4" auf "5" bei der nächsten ansteigenden Flanke
des Schreibtaktsteuersignals WDQS der Zählerstand nicht von "5" auf "0",
sondern vielmehr von "5" auf "2" zurückgesetzt.
Der Zähler zählt also
beim nächsten
Datenburst DB statt von "0" bis "5", wie dies bei einem Nicht-Gapless-Schreibbefehl
der Fall ist, beginnend von "2" bis zum Zählerstand "5".
-
Das
Rücksetzen
des Zählers
auf "2" statt auf "0" wird solange fortgesetzt, wie das Gapless-Steuersignal
SG auf einem hohen logischen Pegel ist und damit signalisiert wird,
dass es sich bei dem aktuellen Schreibbefehl WR um einen Gapless-Schreibbefehl handelt.
-
6 zeigt
ein Blockschaltbild einer erfindungsgemäßen Schaltungsanordnung zur
Erzeugung eines Gapless-Steuersignals zur Vermeidung eines Konflikts
im Falle von mehreren Gapless-Schreibbefehlen.
-
Die
mit Bezugszeichen 20 bezeichnete Schaltungsanordnung enthält drei
bezüglich
ihrer Ein- und Ausgänge
nacheinander angeordnete Flipflops 21, 22, 23.
Jeweils ein Flipflop 21, 22, 23 weist einen
Takteingang auf, in den Taktsignal CLK (oder alternativ auch das
inverse Taktsignal CLK#) eingekoppelt wird. Darüber hinaus weist auch jedes
Flipflop 21, 22, 23 einen Reset-Eingang
auf, über
den ein Reset-Signal einkoppelbar ist und über den somit das jeweilige
Flipflop 21, 22, 23 auf einen definierten
Wert zurückgesetzt
werden kann.
-
Ferner
weist jedes Flipflop 21, 22, 23 einen Dateneingang
auf. In den Dateneingang des ersten Flipflops 21 wird das
Schreibsignal WR eingekoppelt. Das erste Flipflop 21 erzeugt
ausgangsseitig ein erstes Signal 24, welches über einen
Inverter 25 in den Dateneingang des zweiten Flipflops 22 eingekoppelt wird.
Das zweite Flipflop 22 erzeugt ausgangsseitig ein zweites
Signal 26, welches über
einen Inverter 27 in den Dateneingang des dritten Flipflops 23 eingekoppelt
wird. Das dritte Flipflop 23 erzeugt ausgangsseitig ein
drittes Signal 28. Die Flipflops 21, 22, 23 bilden
somit ein Schieberegister.
-
Im
Falle einer Befehlsfolge WR, NOP, WR, die über den Eingang 34 der
Schaltungsanordnung 20 in das erste Flipflop 21 nacheinander
eingekoppelt wird, liegen somit an den Datenausgängen der drei Flipflops 21, 22, 23 jeweils
Signale 24, 26, 28 an, die einen logischen
hohen Pegel aufweisen. Den Datenausgängen der drei Flipflops 21, 22, 23 ist
ein UND-Gatter 29 nachgeschaltet, dem somit die drei Signale 24, 26, 28 zugeführt werden.
In diesem Falle, also im Falle einer Befehlsfolge WR, NOP, WR und damit
einem hohen logischen Pegel der Signale 24, 26, 28 erzeugt
das UND-Gatter 29 ausgangsseitig ein Signal 30,
welches ebenfalls einen hohen logischen Pegel aufweist. Dieses Signal 30 kann
bereits als Gapless-Steuersignal
SG verwendet werden.
-
Besonders
vorteilhaft ist es allerdings, wenn dieses Steuersignal 30 zunächst in
eine Verzögerungseinrichtung 31 eingekoppelt
wird. Die Verzögerungseinrichtung
dient dem Zweck, das Gapless-Steuersignal SG um die Dauer bzw. die
Länge WL
zu verschieben, damit es zu den ankommenden Daten und dem Schreibtaktsteuersignal
WDQS passt. Je nach Einstellung dieser Verzögerungsschaltung 31 kann
damit festgelegt werden, wie weit der Zähler und damit dessen Zählerstand überbrückt wird
und damit den Zählerstand,
bei dem im Falle eines Zurücksetzens
der Zähler
beginnt, neu startet. Dieser Zählerstand
bzw. diese Überbrückung lässt sich über ein
Verzögerungssteuersignal 32 einstellen.
Am Ausgang der Verzögerungseinrichtung 31 ist dann
das Gapless-Steuersignal SG abgreifbar.
-
Diese über das
Verzögerungssteuersignal 32 einstellbare
Verzögerung
ist im Wesentlichen abhängig
von der Anzahl der Datenpakete D0, D1, D2, D3 eines Daten-Bursts
DB. Im Falle eines DDR-Halbleiterspeichers der dritten Generation
umfasst ein Daten-Burst DB jeweils insgesamt vier Datenpakete D0,
D1, D2, D3. Das bedeutet, dass der Zähler im Falle eines positiven,
sich auf einem hohen logischen Pegel befindlichen Steuersignals 30 von
einem Zählerstand "5" auf einen Zählerstand "2" statt
dem Zählerstand "0" zurückgesetzt
wird.
-
7 zeigt
ein Blockschaltbild eines erfindungsgemäß modifizierten Ringzählers, der
durch ein Gapless-Steuersignal gesteuert wird.
-
In 7 ist
der erfindungsgemäße Zähler mit Bezugszeichen 40 bezeichnet.
Der erfindungsgemäße Zähler 40 ist
im vorliegenden Ausführungsbeispiel als
Ringzähler
ausgebildet. Der Zähler 40 weist
in an sich bekannter Art und Weise sechs Flipflops 41 – 46 auf.
Die Flipflops 41 – 46 weisen
jeweils einen Reset-Eingang zum Zurücksetzen der Flipflops 41 – 46 über entsprechende
Reset-Signale auf. Ferner ist ein Takteingang vorgesehen, über den
ein Taktsignal CLK in ein jeweiliges Flipflop 41 – 46 einkoppelbar
ist. Ein jeweiliges Flipflop 41 – 46 ist über seinen
Ausgang jeweils mit dem Dateneingang des nachfolgenden Flipflops
gekoppelt. Der Ausgang des letzten Flipflops 46 bildet
gleichsam den Ausgang 47 des Zählers 40. Darüber hinaus
ist das letzte Flipflop 46 ausgangsseitig auch mit dem
Dateneingang des ersten Flipflops 41 gekoppelt.
-
Erfindungsgemäß weist
der Zähler 40 nun eine Überbrückungseinrichtung 33, 48 – 51 auf.
Die Überbrückungseinrichtung 33, 48 – 51 enthält ein NAND-Gatter 48,
welches dem Dateneingang des ersten Flipflops 41 vorgeschaltet
ist. Dieses NAND-Gatter 48 ist eingangsseitig mit dem Ausgang 47 des
Zählers 40 einerseits
und über
einen Inverter 49 mit dem Steuereingang 33 verbunden. Über den Steuereingang 33 ist
das Gapless-Steuersignal
SG einkoppelbar. Die Überbrückungseinrichtung 33, 48 – 51 enthält ferner
einen Multiplexer 50, der zwischen dem zweiten und dritten
Flipflop 42, 43 angeordnet ist. Der Multiplexer
ist eingangsseitig somit mit dem zweiten Flipflop 42 und über einen
Inverter 51 mit dem Ausgang 47 des Zählers 40 verbunden.
Der Steuereingang des Multiplexers 50 ist mit dem Steuereingang 33 verbunden.
-
Nachfolgend
sei die Funktionsweise des erfindungsgemäß modifizierten Zählers 40 kurz
beschrieben.
-
Im
Falle, dass keine Gapless-Schreibbefehle anliegen, fungiert der
Zähler 40 als
herkömmlicher sechsstufiger
Zähler,
bei dem die sechs in Reihe zueinander angeordneten Flipflops 41 – 46 getriggert von
dem Taktsignal CLK je Taktsignal beginnend von "0" nach
oben (oder auch nach unten) zählen.
In diesem Falle weist das Gapless-Steuersignal SG einen niedrigen
logischen Pegel auf, sodass an beiden Eingängen des NAND-Gatters 48 jeweils
eine logische 1 anliegt.
-
Weist
das Gapless-Steuersignal SG hingegen einen hohen logischen Pegel
auf, dass heißt
bei Vorhandensein von Gapless-Schreibbefehlen,
liegt am Eingang des ersten Flipflops 41 stets eine logische
0 an. Ferner wird über
das Gapless-Steuersignal
SG der Multiplexer 50 so angesteuert, dass der Zähler 40 überbrückt wird
und damit der Dateneingang des dritten Flipflops 43 mit
dem Datenausgang 47 verbunden ist. Somit ist auf sehr einfache
Weise eine Überbrückung des
Zählers 40 möglich.
-
Der
Zähler 40 wird
erfindungsgemäß also so modifiziert,
dass mittels des Multiplexers 50 nach einem kompletten
Umlauf nicht der Übergang
des Zählerstandes
von "5" auf "0" sondern von "5" auf "2" erzeugt wird, sofern das Gapless-Steuersignal
SG einen hohen logischen Pegel aufweist und damit das Vorhandensein
eines Gapless-Schreibbefehls signalisiert. Auf diese Weise wird
vorteilhafterweise ein Konflikt, wie eingangs beschrieben, vermieden
werden.
-
Im
vorliegenden Ausführungsbeispiel
sei angenommen, dass ein Abschneiden des Zählerstandes vom Eingang des
Zählers 40 her
erfolgt, das heißt
im vorliegenden Fall werden die ersten beiden Flipflops 41, 42 überbrückt. Denkbar
wäre selbstverständlich eine Überbrückung an
einer beliebigen Stelle des Zählers 40,
wenngleich eine Überbrückung am
Eingang schaltungstechnisch einfacher zu realisieren ist, da hier
vorteilhafterweise das Ausgangssignal DF des Zählers 40 gleichsam
mit verwendet werden kann.
-
Obgleich
die vorliegende Erfindung vorstehend anhand bevorzugter Ausführungsbeispiel
näher erläutert wurde,
sei sie nicht darauf beschränkt,
sondern ist auf vielfältige
Art und Weise modifizierbar.
-
Insbesondere
wurde der erfindungsgemäß modifizierte
Zähler
wie auch die erfindungsgemäße Schaltungsanordnung
zur Erzeu gung eines Steuersignals zur Ansteuerung eines Zählers bewusst
sehr einfach gestaltet. Es versteht sich von selbst, dass diese
Schaltungsanordnungen beliebig anders ausgebildet sein können, ohne
vom grundsätzlichen Prinzip
der vorliegenden Erfindung abzuweichen. Insbesondere kann der Zähler je
nach Applikation und insbesondere je nach Befehlsstruktur eine beliebige
Anzahl von Flipflops aufweisen. Darüber hinaus kann die Überbrückungsschaltung
auch an einer beliebigen Stelle innerhalb des Zählers angeordnet sein oder
auch beliebig anders ausgebildet sein. Gleiches gilt für die erfindungsgemäße Schaltung
zur Erzeugung des Steuersignals selbst.
-
Grundsätzlich gilt,
dass die Funktionalität dieser
Schaltungen selbstverständlich
auch durch eine programmgesteuerte Einrichtung, beispielsweise durch
einen Mikroprozessor oder einen Mikrocontroller, oder auch durch
eine programmierbare Logikschaltung, zum Beispiel eine PLD- oder
FPGA-Schaltung, realisiert werden kann. Jedoch ist die anhand der 6 und 7 beschriebene
Ausgestaltung insbesondere aus schaltungstechnischen Gründen und
aus Gründen
der Leistungsfähigkeit
besonders vorteilhaft und daher zu bevorzugen.
-
Die
Erfindung wurde ferner beispielhaft anhand eines als Graphikspeicher
ausgebildeten DDR-Halbleiterspeichers beschrieben. Die Erfindung lässt sich
aber bei beliebigen Halbleiterspeichern vorteilhaft einsetzen, die
ein DQS-Schreibsteuersignal
mit definierter Präambel
und Postambel aufweisen.
-
Darüber hinaus
muss nicht notwendigerweise ein so genannter Prefetch-4 Schreibzugriff,
bei dem bei jedem Datenburst und damit mit jedem Schreibzugriff
jeweils vier Datenpakete in den Speicher geschrieben werden, vorgesehen
sein. Denkbar wären
auch andere Prefetch-Schreibzugriffe, bei denen weniger oder auch
mehr Datenpakete pro Schreibzugriff verarbeitet werden.
-
- 10
- Schaltungsanordnung
- 11
- UND-Gatter
- 12
- Inverter
- 13
- UND-Gatter
- 14
- Ringzähler
- 15
- Schieberegister
- 16
- Speicherfeld
- 20
- Schaltungsanordnung
- 21 – 23
- Flipflops
- 24
- Schreibsignal
- 25
- Inverter
- 26
- Schreibsignal
- 27
- Inverter
- 28
- Schreibsignal
- 29
- UND-Gatter
- 30
- Steuersignal
- 31
- Verzögerungseinrichtung,
Zähler
- 31
- Verzögerungssteuersignal
- 33
- Steuersignal
- 34
- Ausgang,
Steuereingang
- 40
- modifizierter, überbrückbarer Zähler
- 41 – 46
- Flipflops
- 47
- Ausgang
des Zählers
- 48
- NAND-Gatter
- 49
- Inverter
- 50
- Multiplexer
- 51
- Inverter
- CEN
- Zählerfreigabesignal
- CLK
- Taktsignal
- CLK#
- inverses
Taktsignal
- COM
- Befehlszeile
- COUT
- Zählerausgangssignal
- CS
- Zählerstandsignal
- D0 – D3
- Datenpakete
eines Daten-Bursts
- D00 – D03
- Datenpakete
des ersten Daten-Bursts
- D10 – D13
- Datenpakete
des zweiten Daten-Bursts
- DB,
DB1 – DB3
- Daten-Bursts
- DF
- Freigabesignal
- DQ
- Datensignal
- EN
- Freigabesignal
- IW
- internes
Schreibsteuersignal
- NOP
- NOP-Befehl,
No-Operation Befehl
- PO
- Prostambel(-bereich)
- PR
- Präambel(-bereich)
- Reset
- Reset-Signal
- SG
- Steuersignal
- SS
- Schreibsteuersignal
- STOP
- Stop-Signal
- WDQS
- Schreibtaktsteuersignal, Schreibdaten-Strobe-
-
- Signal
- WR
- Schreibbefehl
- WRINT
- internes
Schreibsignal