PatentDe  


Dokumentenidentifikation DE10149192B4 14.07.2005
Titel Vorrichtung zum Erzeugen von Speicher-internen Befehlssignalen aus einem Speicheroperationsbefehl
Anmelder Infineon Technologies AG, 81669 München, DE
Erfinder Kho, Rex, 82031 Grünwald, DE;
Täuber, Andreas, Dipl.-Ing., 85716 Unterschleißheim, DE;
Schmoelz, Paul, Dr., 81677 München, DE
Vertreter Schoppe, Zimmermann, Stöckeler & Zinkler, 82049 Pullach
DE-Anmeldedatum 05.10.2001
DE-Aktenzeichen 10149192
Offenlegungstag 24.04.2003
Veröffentlichungstag der Patenterteilung 14.07.2005
Veröffentlichungstag im Patentblatt 14.07.2005
IPC-Hauptklasse G11C 7/22

Beschreibung[de]

Die vorliegende Erfindung bezieht sich auf das Gebiet von Speichersystemen und spezieller auf das Gebiet von Einrichtungen zum Erzeugen von Speicher-internen Befehlssignalen für Speichersysteme.

Bei Speichersystemen, wie beispielsweise einem DRAM-Speicher (DRAM = dynamic random access memory = dynamischer Speicher mit wahlfreiem Zugriff), müssen typischerweise zur Durchführung einer Speicheroperation, wie beispielsweise einer Leseoperation, einer Schreiboperation oder einer Auffrischungsoperation, mehrere Teilvorgänge bei dem Speichersystem durchgeführt werden. Solche Teilvorgänge umfassen beispielsweise ein Aktivieren einer Speicherbank, ein Aktivieren von Zeilen-Adreß-Leitungen, ein Aktivieren eines Lesevorgangs oder eines Schreibvorgangs oder ein Vorladen, um das Speichersystem für die nächste Speicheroperation in einen verfügbaren Zustand zu bringen.

Diese Vorgänge müssen mit aufeinander abgestimmten zeitlichen Versätzen durchgeführt werden, um Konflikte, die sich durch ein zu frühes oder zu spätes Auslösen der Vorgänge ergeben, zu vermeiden.

Typischerweise wird zum Steuern dieser zeitlich abgestimmten Speichervorgänge ein Befehlsdecodierer (command decoder) verwendet, der eingangsseitig mit einer Befehlsleitung, wie beispielsweise einer Befehl-Bus-Leitung, zum Empfangen von Speicher-Operations-Befehlen verbunden ist und ausgangsseitig mit internen Befehlssignalleitungen des Speichersystems zum Ausgeben von Befehlen, die den jeweiligen Teilvorgängen zugeordnet sind, verbunden ist.

Der Befehl zum Durchführen einer Speicheroperation wird dabei über die Befehlleitung an den Eingang des Befehlsdecodierers angelegt, wobei der Befehlsdecodierer daraufhin ein oder mehrere Speicher-interne Befehlssignale erzeugt, die an interne Befehlssignalleitungen des Speichersystems angelegt werden.

1 zeigt einen bekannten Befehlsdecodierer, bei dem ein Befehl-Eingang 110 mit mehreren Versatzeinheiten 112a, 112b, 112c verbunden ist. Jede der Versatzeinheiten 112a, 112b und 112c ist über Signalleitungen 114a, 114b bzw. 114c jeweils mit einem ersten Eingang eines UND-Logikelements 116a, 116b bzw. 116c verbunden.

Zweite Eingänge der UND-Logikelemente 116a116c sind ferner über eine Signalleitung 118 mit einem Taktsignaleingang 120 verbunden. Ferner sind Ausgänge der UND-Logikelemente 116a116c mit Speicher-internen Befehlssignalleitungen 122a, 122b bzw. 122c verbunden. Bei dem bekannten Befehlsdecodierer gemäß 1 wird über die Befehlssignalleitung 122a ein Speicherinternes AKTIVIEREN-Befehlssignal, über die Befehlssignalleitung 122b ein Speicher-internes SCHREIBEN-Befehlssignal und über die Befehlssignalleitung 122c ein Speicher-internes VORLADEN-Befehlssignal übertragen.

An den Befehl-Eingang 110 wird über eine Befehl-Leitung ein Befehl eingegeben, der bewirkt, daß die Versatzeinheiten 112a112c aktiviert werden. Die Versatzeinheiten 112a112c sind dabei derart ausgebildet, daß eine jeweilige Versatzeinheit nach einer ihr zugeordneten Zeitdauer T1, T2 bzw. Tn bezüglich des Zeitpunkts des Anlegens des Befehls an den Befehl-Eingang 110 an den Ausgängen 114a114c ein Ausgangssignal erzeugen. Dies erfolgt dadurch, daß eine Versatzeinheit, beispielsweise die Versatzeinheit 112a, die ihr zugeordnete Ausgangs-Leitung, d.h. bei dem obigen Beispiel die Leitung 114a, von einem logisch niedrigen Zustand auf einen logisch hohen Zustand zieht bzw. einstellt.

Die Ausgangssignale werden über die Signalleitungen 114a114c an die ersten Eingänge der UND-Logikelemente 116a116c angelegt. Daraufhin werden in den UND-Logikelementen 116a116c UND-Verknüpfungen mit einem externen Taktsignal, d.h. genauer gesagt mit einem Zustand der Leitung 118, der durch das externe Taktsignal bestimmt wird, durchgeführt. Das Taksignal wird dabei über den Taktsignaleingang 120 an die Leitung 118 angelegt, die mit den jeweiligen zweiten Eingängen der Logikelemente 116a116c verbunden ist.

Die UND-Verknüpfung des externen Taktsignals und der zeitlich verzögerten Ausgangssignale der Versatzeinheiten 112a112c bewirkt, daß an den Ausgängen der UND-Logikelemente 116a116c zeitlich verzögerte Speicher-interne Befehlssignale erzeugt werden, die auf eine der Signalflanken des externen Taktsignals, d.h. entweder auf die ansteigende Flanke des externen Taktsignals oder die abfallende Flanke desselben, zeitlich abgestimmt sind.

Die Versatzwerte T1, T2 bzw. Tn der Zeitverzögerungseinheiten 112a112c sind jeweils entsprechend zu den Befehlssignalen, die durch dieselben erzeugt werden, festgelegt. Beispielsweise wird durch die Versatzeinheit 112a eine Zeitverzögerung für ein Aktivieren-Befehlssignal festgelegt, wobei der Zeitversatz T1 in Abhängigkeit von dem Zeitpunkt gewählt ist, zu dem das Speicher-interne AKTIVIEREN-Befehlssignal über die Befehlssignalleitung 122a des Speichersystems angelegt werden soll. Ebenso ist der Versatzwert T2 der Versatzeinheit 112b derart bestimmt, daß zwischen dem an der Befehlssignalleitung 122b ausgegebenen Speicher-internen SCHREIBEN-Befehlssignal und dem an der Befehlssignalleitung 122a ausgegebenen AKTIVIEREN-Befehlssignal ein solcher zeitlicher Versatz entsteht, der auf eine sichere Weise ermöglicht, daß das Speichersystem in der Lage ist, nach dem Aktivieren einer oder mehrerer Speicherzellen des Speichersystems ein Schreiben auf dieselben durchzuführen.

Folglich müssen die Versatzzeitwerte T1, T2, Tn unter Berücksichtigung der Art und Funktionsweise des Speichersystems, mit dem der bekannte Befehlsdecodierer verbunden ist, so voreingestellt sein, daß die durch die Befehlssignale ausgelösten Vorgänge an dem Speichersystem ohne Konflikte durchgeführt werden.

Die Wahl des Versatzwerts T1, T2 bzw. Tn muß dabei sicherstellen, daß zu dem Zeitpunkt, zu dem das Befehlssignal über die Befehlssignalleitungen 122a122c an das Speichersystem angelegt wird, das Speichersystem bereit ist, den durch das Befehlssignal bewirkten Vorgang an dem Speichersystem ordnungsgemäß durchzuführen.

Nachteilig wirkt sich dabei aus, daß das Verhalten der Speichersysteme von Speicherchip zu Speicherchip leicht unterschiedlich sein können. Diese Schwankungen des Verhaltens werden durch Schwankungen von Parametern in dem Herstellungsprozess hervorgerufen und umfassen beispielsweise Schwankungen der Breite von metallischen Leiterbahnen, unterschiedliche Dotierkonzentrationen usw. Dadurch ergeben sich für jeweilige Speichersysteme unterschiedliche optimalen Zeitpunkte zum Erzeugen eines jeweiligen Speicher-internen Befehlssignal.

Daher ist es wünschenswert, für ein bestimmtes Speichersystem die Befehlssignale zeitlich nahe an dem optimalen Zeitpunkt für das jeweilige Speichersystem zu erzeugen, um übermäßige Versätze zwischen aufeinanderfolgenden Befehlssignalen, die zu einem schlechten Verhalten und übermäßigen Operationszeiten für die Durchführung der Speicheroperationen führen, zu vermeiden.

Der bekannte Befehlsdecodierer gemäß 1 weist dabei den Nachteil auf, daß in den Versatzeinheiten 112a112c die jeweiligen Versätze asynchron zu dem externen Taktsignal erzeugt werden. Dies bedeutet, daß der Zeitpunkt, zu dem eine jeweilige Leitung 114a114c durch die ihr zugeordnete Versatzeinheit 112a112c auf einen logischen hohen Zustand eingestellt wird, nicht mit dem Zeitpunkt zeitlich abgestimmt ist, zu dem die Taktsignal-Leitung 118 durch das externe Taktsignal auf einen logisch hohen Zustand eingestellt wird. Wird beispielsweise die Leitung 114a zu einem Zeitpunkt kurz nachdem die Taktsignal-Leitung 118 auf einen logisch niedrigen Zustand gezogen wurde auf einen logisch hohen Zustand gezogen, so wird das Speicher-interne Befehlssignal erst mit dem nächsten Übergang der Taktsignal-Leitung 118 auf einen logisch hohen Zustand erzeugt, d.h. etwa eine Taktperiode später. Folglich ist es bei dem bekannten Befehlsdecodierer nicht möglich, eine hohe zeitliche Genauigkeit des Erzeugens der Speicher-internen Befehlssignale zu erreichen.

Ferner ist es bei dem bekannten Befehlsdecodierer nicht möglich, die Zeitpunkte des Erzeugens der Speicher-internen Befehlssignale einzustellen bzw. zu programmieren. Ein einstellbarer Versatz ist wünschenswert da sich, wie obig erwähnt wurde, das Verhalten des Speichersystems von Chip zu Chip ändern kann.

Darüber hinaus ist es mit dem bekannten Befehlsdecodierer schwierig, eine Charakterisierung durchzuführen, d.h. festzustellen, welche Versätze für den vorliegenden Speicherchip optimal sind. Um eine solche Charakterisierung von Speicherzeitgebungs-Parametern, wie beispielsweise einem Rückschreiben (writeback), bei dem bekannten Befehlsdecodierer durchzuführen, müssen Testverfahren verwendet werden, bei denen die Speicher-internen Befehlssignale mit mehr oder weniger Versätzen verschoben werden. Diese Testverfahren sind aufwendig und ferner nicht sehr genau.

Es ist folglich wünschenswert, einen Befehlsdecodierer für ein Speichersystem zu besitzen, bei dem Speicher-interne Befehlssignale nahe an dem Zeitpunkt, der für das Speichersystem optimal ist, erzeugt werden und ferner eine einfache Charakterisierung von entscheidenden Speicherzeitgebungs-Parametern möglich ist.

Die US 6,026,050 A beschreibt ein System zum Anpassen einer Phase eines internen Taktsignals bezüglich eines externen Taktsignals in einem DRAM-Bauelement. Ein Taktgenerator erzeugt ein internes Taktsignal, das eine Phase relativ zu einem externen Taktsignal aufweist, und durch ein Phase-Befehl-Signal bestimmt wird. Das interne Taktsignal triggert eine Latch-Schaltung, die beispielsweise ein Schieberegister sein kann. Die Latch-Schaltung ist mit einem der Eingangsanschlüsse des DRAM-Bauelements verbunden, so dass die Latch-Schaltung ein Eingangssignal zwischenspeichern kann. Eine Mehrzahl von Phase-Befehl-Signalen, die jeweils internen unterschiedlichen Phasen des internen Taktsignals entsprechen, wird an die Latch-Schaltung angelegt, wobei für jedes der Mehrzahl von zwischengespeicherten Signalen bestimmt wird, ob dieses ordnungsgemäß durch die Latch-Schaltung erfasst wurde. Die Ergebnisse des Bestimmens werden in einem Register gespeichert, woraufhin ein Phase-Befehls-Signal ansprechend eine Untersuchung der gespeicherten Ergebnisse erzeugt und kontinuierlich angelegt wird.

Die US 5,754,838 A beschreibt einen synchronen DRAM-Speicher, bei dem interne Taktsignale synchron mit Taktsignalen, die von einer externen Einheit geliefert werden, erzeugt werden. Die externen Taktsignale werden in eine Phasen-Vergleichs-Schaltung eingegeben und mit den internen Taktsignalen verglichen. Die Phase der internen Taktsignale wird gemäß den externen Taktsignalen gesteuert, wobei die internen Taktsignale synchron mit den externen Taktsignalen erzeugt werden.

Die Aufgabe der vorliegenden Erfindung besteht darin, ein Konzept zu schaffen, das eine verbesserte und flexiblere Erzeugung von Speicher-internen Befehlssignalen ermöglicht.

Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 gelöst.

Die Erfindung schafft eine Vorrichtung zum Erzeugen von Speicher-internen Befehlssignalen aus einem Speicheroperationsbefehl mit folgenden Merkmalen:

einem Befehl-Eingang zum Empfangen eines Speicheroperationsbefehls zum Durchführen einer Speicheroperation an einem Speichersystem;

einem Taktsignaleingang zum Empfangen eines externen Taktsignals;

einem Ausgang zum Anlegen eines Speicher-internen Befehlssignals an eine Befehlssignalleitung des Speichersystems; und

einer Befehlssignalerzeugungseinrichtung, die ausgebildet ist, um unter Verwendung des Speicheroperationsbefehls das Befehlssignal zu einem Zeitpunkt zu erzeugen, der von dem Befehlssignal abhängt und wahlweise synchron mit der ansteigenden oder synchron mit der abfallenden Flanke des externen Taktsignals einstellbar ist.

Die Erfindung basiert auf der Erkenntnis, daß eine verbesserte und flexiblere Erzeugung von Speicher-internen Befehlssignalen bei einem Befehlsdecodierer dadurch erreicht werden kann, daß Speicher-interne Befehlssignale, die unter Verwendung eines angelegten Speicheroperationsbefehls erzeugt werden, wahlweise synchron mit der ansteigenden oder synchron mit der abfallenden Flanke eines externen Taktsignals erzeugt werden.

Ein Vorteil der vorliegenden Erfindung besteht darin, daß eine einfache und zeitgenaue Charakterisierung von Speicherzeitgebungs-Parametern durchgeführt werden kann.

Bei einem bevorzugten Ausführungsbeispiel wird eine Grobeinstellung des Zeitpunkts der Erzeugung des Speicher-internen Befehlssignals durch ein Schieberegister, das mit einem Multiplexer verbunden ist, durchgeführt. An den Eingang des Schieberegisters wird von einer Befehl-Leitung ein Befehl eingegeben, der bewirkt, daß die erste Speichereinheit bzw. das erste Flip-Flop des Schieberegisters auf einen hohen logischen Zustand eingestellt wird. Das Schieberegister empfängt ferner ein externes Taktsignal, das eine Verschiebung des Schieberegisters steuert. Die Eingänge des Multiplexers sind mit vorbestimmten Datenausgängen der Speichereinheiten verbunden, wobei durch ein Anlegen eines Auswahlwerts an den Multiplexer bestimmt wird, welche der Speichereinheiten aktiv geschaltet ist. Folglich wird nach einem vorbestimmten Zeitversatz, d.h. zu dem Zeitpunkt, bei dem der eingegebene Speicherwert auf einem logisch hohen Zustand die aktiv geschaltete Speicherzelle erreicht, an einem Ausgang des Multiplexers ein erstes Signal ausgegeben.

Bei dem bevorzugten Ausführungsbeispiel wird ferner über eine Taktsignalauswähleinrichtung die Versatzzeit feineingestellt, indem ansprechend auf ein Feineinstellungs-Auswahlsignal das Speicher-interne Befehlssignal aus dem ersten Signal des Multiplexers wahlweise mit einer ansteigenden Flanke oder einer abfallenden Flanke des externen Taktsignals erzeugt wird.

Ein Vorteil des bevorzugten Ausführungsbeispiels besteht darin, daß der Zeitpunkt des Erzeugens einstellbar bzw. programmierbar ist.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:

1 einen bekannten Befehlsdecodierer für ein Speichersystem;

2 ein Blockschaltbild eines Ausführungsbeispiels der vorliegenden Erfindung;

3 ein Blockschaltbild eines bevorzugten Ausführungsbeispiels der vorliegenden Erfindung; und

4 ein Blockschaltbild eines bevorzugten Ausführungsbeispiels zum Erzeugen von drei Speicher-internen Befehlssignalen.

Im folgenden wird ein erstes Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 2 erläutert. Ein Befehlsdecodierer 210 weist einen Befehl-Eingang 212 auf, der mit einer externen Befehl-Leitung 214 verbunden ist. Ferner weist der Befehlsdecodierer 210 einen Taktsignaleingang 216 auf, der mit einer Systemtaktleitung 218 verbunden ist. Der Befehlsdecodierer 210 weist ferner eine Versatzeinheit 220 auf, die einen Taktsignaleingang 222 und einen Befehl-Eingang 224 aufweist. Der Taktsignaleingang 222 der Versatzeinheit 220 ist mit dem Taktsignaleingang 216 verbunden. Ferner ist der Befehl-Eingang 224 mit dem Eingang 212 verbunden. Die Versatzeinheit 220 weist ferner einen Ausgang 226 auf, der mit einem Interner-Befehl-Ausgang 228 verbunden ist. Der Interner-Befehl-Ausgang 228 ist jeweils über eine Befehlssignalleitung 230 mit einem Speichersystem 232 verbunden. Das Speichersystem kann beispielsweise ein DRAM-Speicher, ein SRAM-Speicher (SRAM = static random access memory = statischer Speicher mit wahlfreiem Zugriff) oder ein SDRAM-Speicher (SDRAM = synchronous dynamic random access memory = synchroner dynamischer Speicher mit wahlfreiem Zugriff) sein, wobei dieselben mehrere Speicherblöcke aufweisen können.

Im Betrieb wird über die Befehl-Leitung 214 ein Speicheroperationsbefehl SP-OP-BEFEHL an den Befehl-Eingang 212 angelegt. Der Speicheroperationsbefehl SP-OP-BEFEHL wird in den Befehleingang der Versatzeinheit 220 eingegeben. Unter Verwendung des eingegebenen Befehls SP-OP-BEFEHL und eines externen Taktsignals CLK, das beispielsweise ein Systemtaktsignal ist, wird in der Versatzeinheit 220 ein Befehlssignal INT-BEFEHL erzeugt.

Die Versatzeinheit 220 ist derart ausgebildet, daß das Speicher-interne Befehlssignal zu einem Zeitpunkt T1 erzeugt wird, wobei das Erzeugen der Befehlssignale erfindungsgemäß wahlweise synchron mit einer ansteigenden oder synchron mit einer abfallenden Flanke des externen Taktsignals erfolgt, das an dem Taktsignaleingang 222 anliegt.

Das Erzeugen des Speicher-internen Befehlssignals wahlweise mit der ansteigenden oder abfallenden Flanke ermöglicht, daß das Speicher-interne Befehlssignal INT-BEFEHL, das beispielsweise ein AKTIVIEREN-Befehlsignal (ACTIVATE-Befehlsignal), ein SCHREIBEN-Befehlsignal (WRITE-Befehlsignal), ein LESEN-Befehlsignal (READ-Befehlsignal), ein VORLADEN-Befehlsignal (PRECHARGE-Befehlsignal) oder ein ERFASSEN-Befehlsignal (SENSE-Befehlsignal) ist, nahe an dem optimalen Zeitpunkt eingestellt werden kann. Bei einem bevorzugten Ausführungsbeispiel, das unter Bezugnahme auf 3 erklärt wird, erfolgt das Einstellen des Zeitpunkts der Erzeugung des Speicher-internen Befehlssignal INT-BEFEHL auf eine programmierbare Weise unter Verwendung von Einstellinformationen, die in die Versatzeinheit eingegeben werden.

Folglich kann mit dem erfindungsgemäßen Befehlsdecodierer eine hohe zeitliche Genauigkeit und Flexibilität der Speicher-internen Befehlssignale erreicht werden, wodurch eine Speicheroperation auf eine zeiteffektive Weise, d.h. mit einer geringen Durchführungsdauer, durchgeführt werden kann.

Unter Bezugnahme auf 3 wird nun ein bevorzugtes Ausführungsbeispiel der vorliegenden Erfindung erklärt.

Gemäß 3 weist ein Befehlsdecodierer ein Schieberegister 312 auf, das einen Taktsignaleingang 314 und einen Befehl-Eingang 316 aufweist. Das Schieberegister 312 weist eine Mehrzahl m von Speichereinheiten bzw. Flip-Flops auf, wobei vier aufeinanderfolgende Speichereinheiten S2, S3, S4 und S5 jeweils mit vier Eingängen 318a318d eines Multiplexers bzw. TAP-Multiplexers 320 (TAP = Anschluß) verbunden ist. Der Multiplexer 320 weist ferner einen Auswahleingang 322 auf, der ausgebildet ist, um ein Informationssignal, das einen Auswahlwert darstellt, aufzunehmen. Ein Ausgang 324 des Multiplexers ist mit einem Eingang 326 eines Taktflankenauswählers 328 verbunden. Der Taktflankenauswähler 328 weist einen ersten Eingang 330 zum Empfangen des externen Taktsignals CLK, einen zweiten Eingang 332 zum Empfangen des invertierten bzw. komplementären Taktsignals bCLK und einen dritten Eingang 334 zum Empfangen eines Taktflankenkomponentensignals COMP auf. Ein Ausgang 336 des Taktflankenauswählers 328 ist ferner mit einem Befehlssignalausgang 338 des Befehlsdecodierers 310 verbunden. Der Befehlsausgang 338 ist ferner mit einer internen Befehlsleitung eines Speichersystems bzw. Speicherbereichs 340 verbunden. Der Multiplexer 320 und der Taktflankenauswähler 328 bilden zusammen einen Befehl-Auswahl-Block 342, dessen Funktionsweise nachfolgend erklärt wird.

Bei einem Betrieb des Befehlsdecodierers 310 wird an den Befehl-Eingang 316 des Schieberegisters 312 ein Speicheroperationsbefehl SP-OP-BEFEHL angelegt. Der Speicheroperationsbefehl, der beispielsweise ein Befehl SRAM-SCHREIBEN, ein Befehl SRAM-LESEN oder ein Befehl AUFFRISCHEN sein kann, bewirkt, daß in die erste Speichereinheit So des Schieberegisters 312 ein Wert mit einem logisch hohen Zustand geschrieben wird, wobei das Schieberegister 312 vor dem Schreiben einen Anfangszustand aufweist, bei dem sämtliche Speichereinheiten einen logisch niedrigen Zustand aufweisen.

Nachdem die Speichereinheit So auf einen logisch hohen Zustand eingestellt wurde, wird mit dem nächsten Auftreten des externen Taktsignals CLK, d.h. bei diesem Ausführungsbeispiel mit einer ansteigenden Flanke des externen Taktsignals CLK, das Schieberegister um eine Einheit weitergeschoben, so daß der in der Speichereinheit So gespeicherte Wert mit einem logisch hohen Zustand in die nächste Speichereinheit S1 geschoben wird. Daraufhin wird mit der nächsten ansteigenden Taktflanke das Schieberegister wieder um eine Einheit verschoben, so daß der in der Speichereinheit S1 gespeicherte Wert mit einem logisch hohen Zustand in die Speichereinheit S2 geschoben wird usw. Bei einem alternativen Ausführungsbeispiel kann das Schieberegister ferner ausgebildet, um die Verschiebung ansprechend auf eine abfallende Flanke des externen Taktsignals CLK durchzuführen.

Um nun eine Grobeinstellung des Versatzzeitwerts bzw. des Befehlserzeugungszeitpunkts mit einem Zeitraster bzw. "Zeitpixel" von einer Periode des externen Taktsignals zu erhalten, wird über den Auswahleingang 322 ein Auswahlwert bzw. Auswahlsignal SELECT angelegt, der einen der Eingänge 318a318d des Multiplexers 320 in einen aktiven Zustand versetzt, so daß der Wert der Speicherzelle, die mit dem aktivgeschalteten Eingang verbunden ist, in den Multiplexer eingegeben und an den Ausgang des Multiplexers angelegt wird. Folglich wird zu dem Zeitpunkt, bei dem der durch den Speicheroperationsbefehl erzeugte Wert mit einem hohen logischen Zustand diejenige Speichereinheit des Schieberegisters erreicht, die mit dem aktiv eingestellten Ausgang des Multiplexers 320 verbunden ist, an dem Ausgang 324 des Multiplexers 320 zu einem Zeitpunkt T1 ein Signal C erzeugt.

Wird beispielsweise in den Auswahleingang 322 ein Auswahlwert SELECT eingegeben, der den Eingang 318c, der mit der Speichereinheit S9 verbunden ist, aktiviert, so wird das Signal C an dem Ausgang 324 des Multiplexers 320 zu dem Zeitpunkt erzeugt, bei dem der logisch hohe Zustand in der Speichereinheit S9 nach einem viermaligen Verschieben erzeugt wird.

Indem jeder der Ausgänge 318a318d durch einen geeigneten an den Auswahleingang 322 eingegebenen Wert SELECT ausgewählt werden kann, wird ermöglicht, daß das Erzeugen des Signals C auf eine programmierbare Weise innerhalb eines vorgegebenen Bereichs zu unterschiedlichen Zeitpunkten erfolgen kann. Folglich kann gemäß dem obig beschriebenen Vorgang der Zeitpunkt des Erzeugens des Signals C mit einem Zeitraster eingestellt werden, das einer Periodendauer des externen Taktsignals entspricht.

Wird beispielsweise der Speicheroperationsbefehl zu einem Zeitpunkt t'0 an das Schieberegister 312 angelegt, und tritt bei einem Zeitpunkt t0 nach dem Zeitpunkt t'0 zum ersten Mal eine ansteigende Flanke des externen Taktsignals CLK auf, so kann das Signal C je nach eingegebenem Auswahlwert zu einem Zeitpunkt ta, einem Zeitpunkt tb, einem Zeitpunkt tc oder einem Zeitpunkt td erzeugt werden, wobei ta = t0 + 2&Dgr;T, tb = t0 + 3&Dgr;T usw. und &Dgr;T die Periodendauer des externen Taktsignals CLK ist. Folglich unterscheiden sich die möglichen einstellbaren Zeitpunkte jeweils durch eine volle Periodendauer &Dgr;T des externen Taktsignals CLK.

Das Signal C, das mit einer Körnigkeit bzw. einem Zeitraster von einer Periodendauer des externen Taktsignals CLK erzeugt werden kann, wird von dem Ausgang 324 des Multiplexers 320 an den Eingang 326 des Taktflankenauswählers 328 angelegt, um eine zeitliche Feineinstellung wahlweise auf eine ansteigende oder eine abfallende Taktflanke des externen Taktsignals CLK durchzuführen. Dazu wird in den Eingang 330 das externe Taktsignal CLK, in den Eingang 332 das inverse externe Taktsignal bCLK und in den Eingang 334 ein Taktflankenkomponentensignal COMP zum Festlegen der Taktflanke eingegeben.

Die drei Signale CLK, bCLK und COMP werden daraufhin einer logischen Operation unterworfen, die bewirkt, daß in Abhängigkeit von dem angelegten Taktflankenkomponentensignal COMP entweder eine aufsteigende Flanke des Taktsignals CLK oder eine abfallende Flanke des externen Taktsignals CLK verwendet wird, um an dem Ausgang 336 des Taktflankenauswählers das Speicher-interne Befehlssignal INT-BEFEHL zu erzeugen.

Im einzelnen werden dazu durch UND-Verknüpfungen des externen Taktsignals CLK, des Signals C und des inversen bzw. komplementären Taktflankenkomponentensignals !COMP ein erster Wert der logischen Operation A1 = CLK & C & !COMP erzeugt. Gemäß der Verknüpfung wird der Wert A1 lediglich auf einem hohen Wert erzeugt, wenn sich alle Signale CLK, C und !COMP auf einem logisch hohen Zustand befinden.

Ferner wird durch UND-Verknüpfungen des inversen externen Taktsignals bCLK mit dem Signal C und dem Taktflankenkomponentensignal COMP ein zweiter Wert der logischen Operation A2 = bCLK & C & COMP erzeugt. Der Wert A2 wird folglich lediglich auf einen hohen Wert eingestellt, wenn sich alle Signale bCLK, C, COMP auf einem logisch hohen Zustand befinden.

Durch eine ODER-Verknüpfung der Werte A1 und A2 wird das Speicher-interne Befehlssignal INT-BEFEHL erzeugt, das über den Ausgang 338 an eine interne Befehlsleitung des Speicherbereichs 340 angelegt wird.

Zur Veranschaulichung der obig beschriebenen logischen Verknüpfungen sei beispielsweise angenommen, daß das Taktflankenkomponentensignal COMP gerade mit einer ansteigenden Flanke auf einen logisch hohen Zustand an dem Eingang 334 übergegangen ist. Ferner sei angenommen, daß das Signal C gerade mit der ansteigenden Flanke auf einem logisch hohen Zustand erzeugt wird, so daß an dem Eingang 326 ein logisch hoher Zustand anliegt. Da beide Signale C und CLK auf einem hohen Zustand liegen, hängt es von der Einstellung des Taktflankenkomponentensignals COMP ab, ob durch die UND-Verknüpfung A1 das Speicher-interne Befehlssignal INT-BEFEHL erzeugt wird.

Ist das Taktflankenkomponentensignal COMP auf einen logisch niedrigen Wert eingestellt, d.h. das inverse Taktflankenkomponentensignal !COMP ist auf einem logisch hohen Zustand, so wird der Wert A1 auf einen hohen Wert eingestellt und das Speicher-interne Befehlssignal INT-BEFEHL erzeugt.

Folglich wird in dem Fall, bei dem der Wert des Taktflankenkomponentensignal COMP auf einen logisch niedrigen Wert eingestellt ist, das Speicher-interne Befehlssignal INT-BEFEHL synchron mit der ansteigenden Taktflanke erzeugt.

Ebenso wird in dem Fall, bei dem das Taktflankenkomponentensignal COMP auf einen logisch hohen Wert eingestellt ist, das Speicher-interne Befehlssignal INT-BEFEHL durch das Erzeugen des Werts A2 auf einem logisch hohen Pegel erzeugt, was erfolgt, wenn C und bCLK auf einem logisch hohen Zustand liegen.

Folglich wird in diesem Fall, bei dem das Signal COMP auf einen logisch hohen Zustand eingestellt ist, das Speicher-interne Befehlssignal INT-BEFEHL synchron mit einer ansteigenden Flanke des inversen Taktsignals bCLK, d.h. synchron mit einer abfallenden Flanke des Taktsignals CLK, erzeugt, wenn das Signal C auf einem logisch hohen Zustand vorliegt.

Es ist daher möglich, mit dem Einstellen des Taktflankenkomponentensignals COMP auszuwählen, ob das Speicher-interne Befehlssignal nach dem Erzeugen des Signals C synchron mit einer ansteigenden Flanke des Taktsignals CLK oder des inversen Taktsignals bCLK erzeugt wird. Da das Signal C durch die Steuerung des Schieberegisters 312 synchron mit einer ansteigenden Flanke des externen Taktsignals CLK erfolgt, bedeutet dies, daß das durch den Taktflankenauswähler 328 erzeugte Speicher-interne Befehlssignal INT-BEFEHL bezüglich des Signals C je nach eingestelltem Taktflankenkomponentensignal COMP um eine Zeitdauer verschoben werden kann, die der halben Taktperiodendauer des externen Taktsignals CLK entspricht.

Das heißt, daß bei diesem Ausführungsbeispiel der Zeitpunkt des Erzeugens des Speicher-internen Befehlssignals INT-BEFEHL durch das Eingeben eines ersten Werts SELECT an den Eingang 322 des Multiplexers eine Grobeinstellung mit einem Zeitraster von einer Periodendauer des externen Taktsignals CLK vorgenommen wird, während durch das Einstellen des zweiten Taktflankenkomponentensignal COMP an dem Eingang 334 des Taktflankenauswählers 328 eine Feineinstellung auf eine halbe Periodendauer des externen Taktsignals CLK durchgeführt wird.

Der Befehlsdecodierer 310 ist folglich in einem zeitlichen Bereich, der durch die Verdrahtung des Multiplexers 322 mit dem Schieberegister und die Taktperiode des externen Taktsignals CLK definiert wird, durch das Anlegen des Auswahlwerts SELECT an den Auswahleingang 322 und das Anlegen des Taktflankenkomponentensignal COMP an den Eingang 334 mit einem Zeitraster einer halben Periodendauer des externen Taktsignals CLK bezüglich des Zeitpunkts des Erzeugens des Speicher-internen Befehlssignals INT-BEFEHL voll programmierbar.

Dies ermöglicht eine einfache Einstellung der Zeitpunkte des Erzeugens des Speicher-internen Befehlssignals INT-BEFEHL, was beispielsweise ein Testen von optimalen Befehlserzeugungszeitpunkten für einen jeweiligen Speicherchip erleichtert. Ferner wird durch die Möglichkeit eines Einstellens des Speicher-internen Befehlssignals auf eine ansteigende Flanke oder eine abfallende Flanke des externen Taktsignals CLK ein Einstellen nahe an dem optimalen Zeitpunkt erreicht.

Obwohl der Befehlsdecodierer 310 lediglich einen Befehlsauswahlblock 342 aufweist, wobei der Befehlsauswahlblock 342 den Multiplexer 322 und den Taktflankenauswähler 328 umfaßt, sind bei weiteren bevorzugten Ausführungsbeispielen mehrere Befehlsauswahlblöcke vorgesehen, um mehrere Speicher-interne Befehlssignale zu erzeugen.

Beispielsweise ist in 4 ein Ausführungsbeispiel gezeigt, bei dem ein Befehlsdecodierer 410 drei Befehlsauswahlblöcke 420, 422 und 424 zum Erzeugen von drei Speicher-internen Befehlssignalen aufweist. Der Aufbau der einzelnen Befehlsauswahlblöcke 420, 422 bzw. 424 entspricht demjenigen des Befehlsauswahlblocks 342 gemäß 3, weshalb an dieser Stelle auf den Aufbau und die Funktionsweise der Befehlsauswahlblöcke 420, 422 bzw. 424 nicht weiter eingegangen wird.

Gemäß 4 ist der erste Befehlsauswahlblock 420 über vier Eingänge 426a426d mit vier Register-Speichereinheiten bzw. Flip-Flops des Schieberegisters 412, d.h. genauer mit den Register-Speichereinheiten S1, S2, S3 und S4, verbunden. Ferner sind vier Eingänge des zweiten Befehlsauswahlblocks 422 mit vier Register-Speichereinheiten des Schieberegisters 412, d. h. mit den Register-Speichereinheiten Sx, Sx+1, Sx+2 und Sx+3 verbunden. Ferner ist der dritte Auswahlblock 424 über fünf Eingänge 430a, 430b, 430c, 430d und 430e mit den Register-Speichereinheiten Sx+2 Sx+3, Sx+4, Sx+5 und Sx+6 verbunden. Jeder der Befehlsauswahlblöcke 420, 422 und 424 weist einen Ausgang 432, 434 bzw. 436 auf, wobei dieselben mit jeweiligen internen Befehlsleitungen eines Speicherbereichs 438 verbunden sind.

Entsprechend zu dem unter Bezugnahme auf 3 erklärten Befehlsauswahlblock werden die Zeitpunkte zum Erzeugen Speicher-interner Befehle durch das Eingeben von Signalen bzw. Informationen SELECT1, SELECT2 und SELECT3 bzw. COMP1, COMP2 und COMP3 gesteuert. Die durch die Befehlsauswahlblöcke 420, 422 bzw. 424 erzeugten Speicher-internen Befehlssignale INT-BEFEHL1, INT-BEFEHL2 und INT-BEFEHL3, die beispielsweise Befehlssignale sind, die aus der Gruppe ausgewählt sind, die einen Aktivieren-Befehl, Lesen-Befehl, Schreiben-Befehl, Erfassen-Befehl oder Vorladen-Befehl umfaßt, werden über Ausgänge 440, 442, 444 an Speicher-interne Leitungen, die den jeweiligen Speicher-internen Befehlssignalen zugeordnet sind, angelegt.

Bei dem Ausführungsbeispiel gemäß 4 ist die Speichereinheit Sx+3 sowohl mit dem Eingang 428d des zweiten Befehlsauswahlblocks 422 als auch dem Eingang 430b des dritten Befehlsauswahlblocks 424 verbunden. Ferner ist die Speichereinheit Sx+2 sowohl mit dem Eingang 428c als auch dem Eingang 430a verbunden. Indem die Speichereinheiten Sx+2 und Sx+2 sowohl mit dem zweiten Befehlsauswahlblock 422 als auch dem dritten Befehlsauswahlblock 424 verbunden sind, überlappen sich auch die möglichen Zeitbereiche zum Einstellen des zweiten Speicher-internen Befehlssignals INT-BEFEHL2 und des dritten Befehlssignals INT-BEFEHL3. Folglich ist es durch das gleichzeitige Aktivieren der Ausgänge 428c und 430a oder der Ausgänge 428d und 430b durch die Befehle SELECT2 und SELECT3 und gleich eingestellter Signale COMP2 und COMP3 möglich, die Speicher-internen Befehlssignale INT-BEFEHL2 und INT-BEFEHL3 zu einem gleichen Zeitpunkt zu erzeugen. Ebenso ist es durch das gleichzeitige Aktivieren der Eingänge 428d und 430a möglich, das Speicher-interne Befehlssignal INT-BEFEHL3 zeitlich vor dem Speicher-internen Befehlssignals INT-BEFEHL2 zu erzeugen.

Folglich wird durch den erfindungsgemäßen Befehlsdecodierer durch die programmierbare Einstellung des Versatzes eine größere Flexibilität bezüglich des Erzeugens der Speicher-internen Befehlssignale als bei bekannten Befehlsdecodierern erreicht.

Ebenso kann ein großer Zeitbereich für einen Erzeugungszeitpunkt eines Speicher-internen Befehlssignals erreicht werden, indem eine große Anzahl von Register-Speicherelementen des Schieberegisters mit einem Befehlsauswahlblock verbunden werden.

Beispielsweise ist der Befehlsauswahlblock 424 mit fünf Register-Speicherelementen verbunden, wohingegen die Befehlsauswahlblöcke 420 und 422 lediglich mit vier Register-Speicherelementen verbunden sind, wodurch der einstellbare Zeitbereich des dritten Befehlsauswahlblocks 424 gegenüber dem zweiten Befehlsauswahlblock 422 vergrößert ist.

Ferner ist es für einen Fachmann verständlich, daß anstelle der drei gezeigten Auswahlblöcke zum Erzeugen der Speicher-internen Befehle INT-BEFEHL1, INT-BEFEHL2, INT-BEFEHL3 eine größere oder kleiner Anzahl von Auswahlblöcken verwendet kann. Beispielsweise kann ein Befehlsdecodierer fünf Auswahlblöcke umfassen, um ein AKTIVIEREN-Befehlsignal (ACTIVATE-Befehlsignal), ein SCHREIBEN-Befehlsignal (WRITE-Befehlsignal), ein LESEN-Befehlsignal (READ-Befehlsignal), ein VORLADEN-Befehlsignal (PRECHARGE-Befehlsignal) und ein ERFASSEN-Befehlsignal (SENSE-Befehlsignal) zu erzeugen.

Ein Vorteil des erfindungsgemäßen Konzepts besteht ferner dahingehend, daß eine Erweiterung, die beispielsweise notwendig wird, wenn ein zusätzliches Speicher-internes Befehlssignal zum Durchführen der Speicheroperationen benötigt wird, ohne weiteres durchgeführt werden kann, indem für das zusätzliche Speicher-interne Befehlssignal ein zusätzlicher Befehlsauswahlblock hinzugefügt wird und mit entsprechenden Register-Speicherelementen des Schieberegisters verbunden wird. Dieses offene Architekturkonzept erleichtert ein Entwerfen von Befehlsdecodierern für zukünftige Speichersysteme.

110Befehlseingang 112a –112cVerzögerungseinheit 114a – 114cSignalleitung 116a – 116cUND-Logikelement 118Signalleitung 120Taktsignaleingang 122a – 122cBefehlssignalleitung 210Befehlsdecodierer 212Befehlseingang 214Befehl-Leitung 216Taktsignaleingang 218Taktsignalleitung 220 –Verzögerungseinheit 222Taktsignaleingang 224Befehlseingang 226Ausgang 228Interner-Befehl-Ausgang 230Befehlssignalleitung 232Speicherbereich 310Befehlsdecodierer 312Schieberegister 314Taktsignaleingang 316Befehlseingang 318a – 318dEingang 320Multiplexer 322Auswahleingang 324Ausgang 326Eingang 328Taktflankenauswähler 330Eingang 332Eingang 334Eingang 336Ausgang 338Interner-Befehl-Ausgang 340Speicherbereich 342Befehlsauswahlblock 410Befehlsdecodierer 412Speicherregister 420Befehlsauswahlblock 422Befehlsauswahlblock 424Befehlsauswahlblock 426a – 426dEingang 428a – 428dEingang 430a – 430dEingang 432Interner-Befehl-Ausgang 434Interner-Befehl-Ausgang 436Interner-Befehl-Ausgang 438Speicherbereich 440Ausgang 442Ausgang 444Ausgang

Anspruch[de]
  1. Vorrichtung zum Erzeugen von Speicher-internen Befehlssignalen (INT-BEFEHL) aus einem Speicheroperationsbefehl (SP-OP-BEFEHL) mit folgenden Merkmalen:

    einem Befehl-Eingang (212; 316) zum Empfangen eines Speicheroperationsbefehls (SP-OP-BEFEHL) zum Durchführen einer Speicheroperation an einem Speichersystem (232; 340; 438);

    einem Taktsignaleingang (216; 314) zum Empfangen eines externen Taktsignals (CLK);

    einem Ausgang (228, 338) zum Anlegen eines Speicher-internen Befehlssignals (INT-BEFEHL) an eine Befehlssignalleitung des Speichersystems (232; 340; 438); und

    einer Befehlssignalerzeugungseinrichtung (220; 312, 322, 328; 412, 420, 422, 422), die ausgebildet ist, um unter Verwendung des Speicheroperationsbefehls (SP-OP-BEFEHL) das Speicher-interne Befehlssignal (INT-BEFEHL) zu einem Zeitpunkt zu erzeugen, der von dem Befehlssignal (INT-BEFEHL) abhängt und wahlweise synchron mit einer ansteigenden oder synchron mit einer abfallenden Flanke des externen Taktsignals (CLK) einstellbar ist.
  2. Vorrichtung gemäß Anspruch 1, die ferner zusätzlich zu dem einen Ausgang (440) zum Anlegen eines Speicher-internen Befehlssignals (INT-BEFEHL1) an eine Befehlssignalleitung des Speichersystems (438) zumindest einen weiteren Ausgang (442, 444) zum Anlegen zumindest eines weiteren Speicher-internen Befehlssignals (INT-BEFEHL2, INT-BEFEHL3) an eine oder mehrere Befehlssignalleitungen des Speichersystems (438) aufweist, und bei der die Befehlssignalerzeugungseinrichtung (412, 420, 422, 424) ausgebildet ist, um zusätzlich zu dem einen Speicher-internen Befehlssignal (INT-BEFEHL1) unter Verwendung des Speicheroperationsbefehls (SP-OP-BEFEHL) das zumindest eine weitere Speicher-interne Befehlssignal (INT-BEFEHL2, INT-BEFEHL3) zu einem Zeitpunkt zu erzeugen, der von dem zumindest einen weiteren Speicher-internen Befehlssignal (INT-BEFEHL2, INT-BEFEHL3) abhängt und wahlweise synchron mit einer ansteigenden oder synchron mit einer abfallenden Flanke des externen Taktsignals (CLK) einstellbar ist.
  3. Vorrichtung gemäß Anspruch 1 oder 2, bei der die Befehlssignalerzeugungseinrichtung eine erste Einrichtung (312, 320) aufweist, die ausgebildet ist, um unter Verwendung des externen Taktsignals (CLK) und des Speicheroperationsbefehls (SP-OP-BEFEHL) zu einem ersten Zeitpunkt synchron mit einer ansteigenden Flanke des externen Taktsignals (CLK) oder synchron mit einer abfallenden Flanke des externen Taktsignals (CLK) ein erstes Signal (C) zu erzeugen, und ferner eine zweite Einrichtung (328) aufweist, die ausgebildet ist, um unter Verwendung des ersten Signals (C) das Befehlssignal wahlweise synchron mit einer ansteigenden Flanke oder synchron mit einer abfallenden Flanke des externen Taktsignals (CLK) zu erzeugen.
  4. Vorrichtung gemäß Anspruch 3, bei der die erste Einrichtung (312, 320) einen Eingang (322) zum Empfangen eines ersten Informationssignals (SELECT) aufweist, wobei die erste Einrichtung (312, 320) ausgebildet ist, um den ersten Zeitpunkt in Abhängigkeit von dem ersten Informationssignal (SELECT) auszuwählen, und die zweite Einrichtung (328) einen Eingang (334) zum Empfangen eines zweiten Informationssignals (COMP) aufweist, wobei die zweite Einrichtung (328) ausgebildet ist, um den Zeitpunkt zum Erzeugen des Befehlssignals unter Verwendung des zweiten Informationssignals (COMP) zu erzeugen.
  5. Vorrichtung gemäß Anspruch 4, bei der die erste Einrichtung folgende Merkmale umfaßt:

    ein Schieberegister (312), das mehrere Registerspeichereinheiten (S0 – Sm) mit zugeordneten Register-Speichereinheit-Ausgängen, einen ersten Eingang (316), der mit dem Befehl-Eingang verbunden ist, und einen zweiten Eingang (314) aufweist, der mit dem Taktsignaleingang verbunden ist; und

    einen Multiplexer (320), der einen Eingang (322) zum Empfangen des ersten Informationssignals (SELECT) aufweist und ferner zumindest einen ersten Eingang (318a318c) aufweist, der mit einem der Ausgänge der Register-Speichereinheiten (S0 – Sm) des Schieberegisters (312) verbunden ist.
  6. Vorrichtung gemäß Anspruch 4 oder 5, bei der die zweite Einrichtung eine Logikschaltung (328) aufweist, die ausgebildet ist, um das Speicher-interne Befehlssignal (INT-BEFEHL) unter Verwendung des externen Taktsignals (CLK), eines durch Inversion aus dem externen Taktsignal erzeugten invertierten externen Taktsignals (bCLK), des von der ersten Einrichtung erzeugten ersten Signals (C) und des zweiten Informationssignals (COMP) zu erzeugen.
  7. Vorrichtung gemäß einem der Ansprüche 1 bis 6, bei der das Speichersystem (232; 340; 438) ein Speichersystem ist, das aus der Gruppe ausgewählt ist, die einen DRAM-Speicher, einen SRAM-Speicher und einen SDRAM-Speicher umfaßt.
  8. Vorrichtung gemäß einem der Ansprüche 1 bis 7, bei der das von der Befehlssignalerzeugungseinrichtung erzeugte Speicher-interne Befehlssignal (INT-BEFEHL) ein Befehlssignal ist, das aus der Gruppe ausgewählt ist, die einen Aktivieren-Befehl, einen Lesen-Befehl, einen Schreiben-Befehl, einen Erfassen-Befehl und einen Vorladen-Befehl umfaßt.
Es folgen 4 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com