-
GEBIET DER ERFINDUNG
-
Die Erfindung betrifft eine Vorrichtung und ein Verfahren zum Zwischenspeichern von Daten zwischen einem Speichercontroller und einem DRAM.
-
HINTERGRUND
-
Registerbuffer, wie sie beispielsweise bei DDR3-Speichersystemen verwendet werden, sind so ausgelegt, dass sie eingehende Daten (Steuerdaten und Adressinformationen) zwischenspeichern und die empfangenen Daten mit einer aufgefrischten Signalform ausgeben. Die Registerbuffer weisen ferner einen Phasenregelkreis (PLL) und einen Phaseninterpolator für die Phasenausrichtung des Ausgangstakts bezüglich der aufgefrischten Daten auf. In 1 ist ein Blockschaltbild eines DDR3-Speichersystems gezeigt. Ein Speichercontroller liefert Adressinformationen und Taktsignale an mehrere doppelreihige Speichermodule (DIMM, engl. Dual Inline Memory Module). Eines dieser Speichermodule DIMM1 ist genauer gezeigt. Das Speichermodul DIMM1 weist einen Registerbuffer R auf, der am Dateneingang Dn Adressinformationen und am Takteingang CLK Taktsignale empfängt. Der Registerbuffer R frischt die Daten auf, führt eine Phasenausrichtung der Daten aus und leitet sie über den Datenausgang Qn unter Verwendung eines Taktsignals QCLK zu mehreren DRAMs (SDRAM1, SDRAM2, usw.). Die Daten von und zu den DRAM-Modulen SDRAM1, SDRAM2 werden über einen Datenbus übertragen, der zwischen den Pins Data1, Data2 usw. und den entsprechenden Strobe-Signalen Strobe 1, Strobe 2 usw. und den Speichern SDRAM1, SDRAM2 usw. gekoppelt ist. Der Registerbuffer R verwendet eine Rückkopplungsschleife zwischen den Pins FBOUT und FBIN für seine interne PLL, um sich beispielsweise an verschiedene Ladungsbedingungen und Umgebungsbedingungen wie etwa Temperatur usw. anzupassen. Die Datensignale Dn (und Qn) umfassen die Speichersystemadresse und Befehls- und Steuersignale von dem Speichercontroller. Der Registerbuffer R dient im Allgemeinen dazu, die Datensignalverläufe und die Phasenausrichtung von Daten- und Taktsignalen zu verbessern und den Taktjitter zu verringern. Der Registerbuffer R sollte für eine gute Datenaugenöffnung und eine geringe Laufzeitverzögerung der Daten von den Vorrichtungseingängen zu den Vorrichtungsausgängen sorgen. Eine ausreichende Datenaugenöffnung an den Datenausgangspins ist erforderlich, um eine sichere und erfolgreiche Datenübertragung zu den empfangenden DRAM-Vorrichtungen zu gewährleisten. Eine geringe Laufzeitverzögerung fördert eine niedrige Gesamtsystemlatenz, d. h. eine kurze Dauer zum Schreiben von Daten in die und zum Lesen von Daten aus den SDRAM-Vorrichtungen.
-
2 zeigt ein vereinfachtes Blockschaltbild eines üblichen Registerbuffer R mit einem PLL-Takttreiber. Der in 2 gezeigte Registerbuffer R besteht grundsätzlich aus Eingangsstufen (Eingangsbuffer B1 bis B3) für Eingangsdatensignale Dn, das Eingangstaktsignal CK und das Rückkopplungs-Eingangstaktsignal FBIN und aus Ausgangsstufen (Ausgangsbuffer B4 bis B7) für Ausgangsdatensignale Qn, Ausgangstaktsignale Yn und das Rückkopplungs-Ausgangstaktsignal FBOUT. Ferner sind ein Datenregister, der aus mehreren Flip-Flops FF1 besteht, ein Datenreferenzpfad mit einer Dummy-Ausgangsstufe B5, ein Phasenregelkreis PLL, eine Phasenausrichtungs-Zustandsmaschine PASM, ein Phaseninterpolator PINT und ein Phasenkomparator PCOMP vorhanden. Obwohl in 2 nur ein einziger Datenpfad PQn gezeigt ist, gibt es für mehrere Datensignale Dn (IDn) eines Bus gewöhnlich zahlreiche ähnliche Datenpfade. Die PLL empfängt den Eingangstakt CK als Referenztakt ICK und den Rückkopplungseingangstakt FBIN als PLL-Rückkopplungstakt IFBIN. Die PLL erzeugt das Rückkopplungsausgangssignal PFBOUT, das dann von der elektronischen Vorrichtung als FBOUT ausgegeben wird, nachdem es im Ausgangsbuffer B7 zwischengespeichert wurde. Die PLL ist an den Phaseninterpolator PINT gekoppelt und speist eine Gruppe von phasenverschobenen Ausgangstaktsignalen CK1 bis CKn in den Phaseninterpolator PINT ein. Der Phaseninterpolator PINT erzeugt das Ausgangstaktsignal PYn, das in der Ausgangsstufe B6 zwischengespeichert und als Ausgangstakt Yn ausgegeben wird. Die Taktfrequenz FCK von allen PLL-Ausgangstaktsignalen CK1 bis CKn und des Rückkopplungsausgangstakts FBOUT entspricht der Taktfrequenz des Eingangstaktsignals CLK. Eine Taktperiode TCK bezieht sich auf eine Taktfrequenz FCK.
-
Der Zweck der PLL besteht darin, Ausgangstaktsignale Yn mit verringertem Eingangstaktjitter bereitzustellen, die bezüglich des Eingangstaktsignals CLK phasenausgerichtet (d. h. phasenverschoben) sind. Die Datenübertragung von den Dateneingängen Dn zu den Datenausgängen Qn wird von dem Eingangsreferenztakt CK ausgelöst. Somit besteht die Laufzeitverzögerung TPD (CK zu Qn) von dem Takteingangspin CK zu dem Datenausgang Qn aus der Laufzeitverzögerung durch die Takteingangsstufe B2, den Daten-Flip-Flop FF1 und die Datenausgangsstufe B4. Die Laufzeitverzögerung TPD (CK zu Qn) hängt von den elektrischen Eigenschaften der Transistor-Vorrichtungen der Matrizen oder Wafers (schwaches, nominales oder festes Verarbeitungsmaterial) ab. Die Phasenbeziehung des Ausgangstakts Yn wird für jede Buffervorrichtung mit Register während des Startvorgangs einzeln trainiert. Während dieser Trainingsprozedur ist die Phase des Ausgangstakts Yn so verschoben, dass eine maximale Ausgangsdaten-Augenöffnung erreicht wird. Eine maximale Ausgangsdaten-Augenöffnung bedeutet, dass die ansteigende Flanke des Ausgangstakts Yn in der Mitte eines hohen Ausgangsdatenimpulses bzw. niedrigen Ausgangsdatenimpulses liegt, unter der Annahme, dass das Datensignal Dn/Qn eine Signalfrequenz hat, die der halben Eingangstaktfrequenz FCK entspricht.
-
3 zeigt die Laufzeitverzögerung für die Takte CK (und CKN), die Datensignale Dn, Qn und die Ausgangstaktsignale Yn, YnN. Der Großbuchstabe „N” gibt das invertierte Signal an. Es werden differentielle Daten- und Taktsignale verwendet. Die Laufzeitverzögerung von der Taktflanke des Taktsignals CK zu den sich ändernden Daten Qn ist als TPD (CK -> Qn) angegeben. Die Phase des Taktsignals PYn im Ausgangstaktpfad wird mit der Phase des Datenreferenzsignals PRQn im Datenreferenzpfad verglichen. Das Datensignal PRQn wird von einem Flip-Flop FF2 des Datenreferenzpfads erzeugt, der mit der Eingangstaktfrequenz FCK hin- und herschaltet. Die Frequenz des Referenzdatensignals PRQn entspricht der halben Frequenz FCK des Eingangstaktsignals CK. Das Taktsignal PYn wird auch durch zwei dividiert, um die gleiche Taktfrequenz wie PRQn zu erhalten. Um die Zeitverzögerung dieser Teilung durch zwei (d. h. die Verzögerung der entsprechenden Schaltungsanordnung) zu kompensieren, ist es erforderlich, ein äquivalentes Zeitverzögerungselement DLY in den Referenzpfad für PRQn einzufügen. Das verzögerte Signal PRQn und das geteilte Signal PYn werden in den Phasenkomparator PCOMP eingespeist. Der Ausgang des Phasenkomparators PCOM ist an die Phasenausrichtungs-Zustandsmaschine PASM gekoppelt, die bestimmt, ob die Phase von PYn im Vergleich zu dem PRQn-Signal um einen bestimmten Betrag nach vorne oder hinten verschoben werden muss. Um die Phase anzupassen, wird in der Phasenausrichtung-Zustandsmaschine PASM ein Phasenausrichtungs-Steuerwort PACW erzeugt und zum Phaseninterpolator PINT geleitet. Der Phasencontroller PACW wählt die gewünschte PLL-Phase für das Taktsignal PYn aus. PYn wird im Buffer B6 zwischengespeichert und als Ausgangstaktsignal Yn ausgegeben. Die Phasenausrichtung-Zustandsmaschine PASM überwacht nicht nur die Phasenbeziehung zwischen den Referenzdatensignalen PRQn und dem Taktsignal PYn, sondern untersucht auch die Phasenbeziehung zwischen dem Taktsignal ICK und dem Taktsignal IFBIN, d. h. die Phasenbeziehung zwischen dem Taktreferenz- und dem Taktrückkopplungseingang. Anhand dieser Vergleichsergebnisse entscheidet die Phasenausrichtungs-Zustandsmaschine PASM, wann die PLL und der Phasenausrichter PA eingerastet werden und wann das Phasenausrichtungstraining angehalten werden kann. Wenn die PLL und der Phasenausrichter eingerastet sind und das Phasenausrichtungstraining abgeschlossen ist, wird das Phasenausrichtungs-Steuerwort PACW festgehalten. Die Phase des Ausgangstakts Yn ist dann fest. Nach dem Abschluss des Startens der PLL und des Phasenausrichtungs-Trainingsvorgangs kehrt der Registerbuffer in den normalen Betriebsmodus für eine bestimmte Anwendung zurück. Während des normalen Betriebs darf die Phase des Ausgangstakts Yn nicht verändert werden, da der Speichercontroller mit der festen Phase von Yn trainiert ist. Das Phasenausrichtungstraining wird nur einmal während eines anfänglichen Startvorgangs durchgeführt. Es kann auch in Reaktion auf ein externes Trainingsauslösesignal TPAT durchgeführt werden.
-
Ein wichtiger Vorrichtungsparameter ist TQsk. TQsk ist die Beziehung zwischen dem Ausgangstakt Yn und den Ausgangsdaten Qn und kann als Indikator für die Qualität des Datenausgangsauges dienen. 4 zeigt Signalverläufe, die die Bedeutung von TQsk veranschaulichen. TQsk beschreibt die Zeitdifferenz (oder Phasendifferenz) der ansteigenden oder abfallenden Flanke des Ausgangssignals Qn bezogen auf die abfallende Flanke des Ausgangstaktsignals Yn. Wenn die Signalflanken von Qn sehr nahe bei der abfallenden Flanke von Yn liegen, ist die entsprechende ansteigende Flanke von Yn nahezu ideal auf die Mitte des Ausgangsdatensignals Qn (z. B. hoher oder niedriger Impuls) zentriert. Wenn die Signalflanke von Qn außerhalb der spezifizierten Grenzen TQskmin oder TQskmax liegt, liegt die ansteigende Flanke von Yn außerhalb der gewünschten idealen mittigen Position im Ausgangsdatenimpuls, und Qn kann möglicherweise in einem DRAM, der Qn empfängt, nicht korrekt decodiert werden.
-
Ein großes Problem bei den Vorrichtungen aus dem Stand der Technik liegt darin, dass die Anfangstrainingsprozedur für die Taktphasenausrichtung bei willkürlichen Bedingungen ausgeführt wird. Wenn diese Bedingungen (wie etwa Temperatur, Versorgungsspannungspegel usw.) für eine bestimmte Taktfrequenz variieren, können die spezifizierten minimalen oder maximalen Werte TQskmin, TQskmax für TQsk überschritten werden. Dies würde ein erneutes Training der elektronischen Vorrichtung (des Registerbuffer R) erfordern, was nicht erlaubt ist, da sich der Speichercontroller im normalen Betrieb auf die feststehende Phase des Ausgangstakts Yn bezieht. Ferner kann es schwierig sein, zu bestimmen, ob ein erneutes Training erforderlich ist oder nicht. Übertragungsfehler oder ein Totalausfall des Systems können die Folge sein.
-
Es wird auf die Druckschriften
US 2008/0 080 647 A1 und
US 2008/0 256 282 A1 verwiesen.
-
KURZZUSAMMENFASSUNG
-
Eine Aufgabe der Erfindung besteht darin, eine elektronische Vorrichtung und ein Verfahren zum Zwischenspeichern von Daten zwischen einem Speichercontroller und einem DRAM bereitzustellen, die die Phasenausrichtungsanforderungen für zwischengespeicherte Takt- und Datensignale für variierende Umgebungsbedingungen und Parameter erfüllen.
-
Dementsprechend wird eine elektronische Vorrichtung zum Zwischenspeichern eines Datensignals zwischen einem Speichercontroller und einem DRAM bereitgestellt. Die elektronische Halbleitervorrichtung weist einen Phasenregelkreis (PLL), einen Phaseninterpolator zum Ausrichten einer Phase eines Ausgangstaktsignals in Reaktion auf ein Phasenausrichtungs-Steuerwort und eine nichtflüchtige Speicherstelle auf, die das Phasenausrichtungs-Steuerwort permanent speichert. Das Phasenausrichtungs-Steuerwort wird durch eine Anfangstrainingsprozedur der Halbleitervorrichtung bei vorbestimmten Trainingsbedingungen wenigstens eines Versorgungsspannungspegels und einer Temperatur bestimmt. Die vorbestimmten Trainingsbedingungen sind so eingestellt, dass die Phasenausrichtung einer Flanke des Ausgangstaktsignals bezüglich des zwischengespeicherten Datensignals optimiert ist. Die Trainingsprozedur wird vorteilhaft in einer automatischen Prüfeinrichtung (ATE, engl. Automatic Test Equipment) während einer letzten Stufe des Herstellungsverfahrens durchgeführt. Das Training kann vorteilhafterweise für jede elektronische Vorrichtung individuell durchgeführt werden. Das Phasenausrichtungs-Steuerwort wird in einer Anfangstrainingsprozedur unter vorbestimmten Bedingungen bestimmt. Die Trainingsbedingungen werden bezogen auf einen Bereich von zulässigen Abweichungen von dem optimalen Wert für die Phasenbeziehung zwischen Taktflanken und Datenflanken eingestellt.
-
Die Hauptvorteile der Erfindung bestehen darin, dass die Datenaugenöffnung verbessert wird, ohne die Laufzeitverzögerung der Daten in der elektronischen Vorrichtung oder die Systemlatenz zu beeinträchtigen, und dass die Datenaugenöffnung auf flexible Weise um eine Taktflanke verschoben werden kann. Ferner kann der Timing-Parameter individuell in jeder elektronischen Vorrichtung gespeichert werden und ist an die Anforderungen und Eigenschaften der spezifischen elektronischen Vorrichtung (d. h. auf ihren Typ und ihre Parameter in einem Fertigungslos) und der Anwendungen angepasst.
-
Die Trainingsbedingungen während des Anfangstrainings können zwischen mindestens zwei Cornern eingestellt sein. Corner sind Kombinationen aus maximalen und minimalen Werten für Parameter und/oder Umgebungsbedingungen, wie etwa Temperatur, Versorgungsspannungspegel, Frequenz und verschiedene Ausführungs- und Verfahrensparameter. Bei Ausführungsformen der Erfindung können die Temperatur und der Versorgungsspannungspegel wichtige Betriebs- und Trainingsbedingungen sein.
-
Die Trainingsbedingungen können in der Mitte von mindestens zwei Cornern der Bedingungen eingestellt sein. Im Vergleich zu den willkürlichen Trainingsbedingungen einer Anfangsprozedur, die zu Beginn des normalen Betriebs während eines Startvorgangs durchgeführt wird, wird dadurch die maximal mögliche Abweichung von einer optimalen zeitlichen Abstimmung eingeschränkt.
-
Bei einer weiteren Ausführungsform können die Trainingsbedingungen während des Anfangstrainings (z. B. in der automatischen Prüfeinrichtung) vorteilhafterweise nicht in der Mitte von zwei Cornern eingestellt sein. Die Trainingsbedingungen können dann so eingestellt sein, dass sie näher an einem Corner liegen als an einem anderen. Dadurch ist es möglich, bezogen auf die Trainingsbedingungen, einem asymmetrischen Verhalten der Phase der elektronischen Vorrichtung Rechnung zu tragen. Wenn beispielsweise eine Änderung einer Phase (oder eine Änderung der zeitlichen Abstimmung) über den gesamten zulässigen Temperaturbereich variiert, kann es nützlich sein, die Anfangstrainingsprozedur nicht in der Mitte zwischen der minimalen und der maximalen Temperatur auszuführen, sondern näher an der minimalen oder maximalen Temperatur. Ferner kann es nützlich sein, die Anfangstrainingsprozedur nicht in der Mitte zwischen dem minimalen und maximalen Versorgungsspannungspegel durchzuführen, sondern näher am minimal oder maximal zulässigen Versorgungsspannungspegel (für eine bestimmte Versorgungsspannung). Die Trainingsbedingungen können dann bezogen auf die Corner asymmetrisch eingestellt werden, und ein entsprechendes Phasenausrichtungs-Steuerwort kann gespeichert werden. Dadurch werden die Anwendungsmöglichkeiten der Vorrichtung erhöht, ohne gegen die vorgegebenen minimalen und maximalen Werte für die Phasen- oder Verzögerungsparameter zu verstoßen.
-
Die Corner können beispielsweise eine Kombination aus der maximalen Versorgungsspannung und der minimalen Temperatur oder aus der minimalen Versorgungsspannung und der maximalen Temperatur sein.
-
Der nichtflüchtige Speicher in der elektronischen Vorrichtung kann mehrere nichtflüchtige Speicherstellen zum Speichern von mehreren Phasenausrichtungs-Steuerwörtern aufweisen. Nach dem Anfangstraining in einer ATE kann der nichtflüchtige Speicher mehrere Phasenausrichtungs-Steuerwörter für verschiedene Betriebstaktfrequenzen (Geschwindigkeitsknoten) und/oder Versorgungsspannungspegel der elektronischen Vorrichtung enthalten. Dadurch ist es möglich, die elektronische Vorrichtung im Voraus für verschiedene Betriebstaktfrequenzen und Versorgungsspannungspegel zu trainieren. Es ist möglich, für jede Betriebstaktfrequenz und/oder für jeden Versorgungsspannungspegel ein Phasenausrichtungs-Steuerwort an einer bestimmten Speicherstelle des nichtflüchtigen Speichers zu speichern. Diese Phasenausrichtungs-Steuerwörter können während des normalen Betriebs aus dem nichtflüchtigen Speicher abgerufen werden, um den Anforderungen vieler verschiedener Anwendungen zu genügen.
-
Die Erfindung stellt auch ein Verfahren zum Zwischenspeichern von Daten zwischen einem Speichercontroller und einem DRAM einer elektronischen Halbleitervorrichtung und zum Ausrichten einer Phase eines Ausgangstaktsignals der elektronischen Halbleitervorrichtung in Bezug auf die Daten bereit. Während einer Anfangstrainingsprozedur, beispielsweise in einer automatischen Prüfeinrichtung (ATE), werden vorbestimmte Trainingsbedingungen wenigstens einer Versorgungsspannung und einer Temperatur für die Halbleitervorrichtung eingestellt. Eine Trainingsprozedur wird mit der Halbleitervorrichtung durchgeführt. Es wird ein Phasenausrichtungs-Steuerwort, das die optimierte Phasenausrichtung des Ausgangstaktsignals unter vorbestimmten Bedingungen angibt, bestimmt. Dieses Phasenausrichtungs-Steuerwort wird permanent in einem nichtflüchtigen Speicher in der elektronischen Halbleitervorrichtung gespeichert. Die elektronische Halbleitervorrichtung wird später im normalen Betrieb mit einer Phasenbeziehung betrieben, die unter Verwendung des gespeicherten Phasenausrichtungs-Steuerworts erzeugt wird.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Weitere Aspekte der Erfindung ergeben sich aus der nachfolgenden Beschreibung bevorzugter Ausführungsformen der Erfindung anhand der beigefügten Zeichnungen. Darin zeigen:
-
1 ein vereinfachtes Blockschaltbild einer DDR3-Speichersystemausgestaltung aus dem Stand der Technik;
-
2 ein vereinfachtes Blockschaltbild eines Registerbuffer des Speichersystems von 1 aus dem Stand der Technik;
-
3 Signalverläufe, die die Laufzeitverzögerung im Registerbuffer veranschaulichen;
-
4 Signalverläufe, die einen wichtigen Timing-Parameter veranschaulichen, der mit der Erfindung zu optimieren ist;
-
5 Änderungen des Timing-Parameters bezogen auf Corner der Trainings- und Betriebsbedingungen;
-
6 Änderungen des Timing-Parameters bezogen auf Corner der Trainings- und Betriebsbedingungen gemäß einem Aspekt der Erfindung;
-
7 Änderungen des Timing-Parameters bezogen auf Corner der Betriebsbedingungen gemäß einem Aspekt der Erfindung;
-
8 ein vereinfachtes Blockschaltbild eines Registerbuffer gemäß einer Ausführungsform der Erfindung;
-
9 ein Zustandsdiagramm, das Aspekte des Verfahrens gemäß einer Ausführungsform der Erfindung zeigt;
-
10 ein vereinfachtes Blockschaltbild eines Teils eines Registerbuffer gemäß einer Ausführungsform der Erfindung; und
-
11 ein vereinfachtes Blockschaltbild eines Teils eines Registerbuffer gemäß einer Ausführungsform der Erfindung.
-
AUSFÜHRLICHE BESCHREIBUNG EINER BEISPIELHAFTEN AUSFÜHRUNGSFORM
-
5 zeigt Timing-Parameteränderungen und Timing-Parameterbereiche des Timing-Parameters TQsk bezogen auf Trainings- und Betriebsbedingungscorner der Versorgungsspannung Vdd und der Betriebstemperatur eines Registerbuffer R. 5 zeigt Szenarien, bei denen die elektronische Vorrichtung (z. B. der Registerbuffer R, der in den 1 und 2 gezeigt ist) unter Trainingsbedingungen mit maximaler oder minimaler Versorgungsspannung (max. Vdd, min Vdd) bzw. minimaler oder maximaler Temperatur (min. temp., max. temp.) trainiert und an entgegengesetzten Cornern verwendet wird. Alle vier Szenarien beruhen auf der gleichen einzigen und feststehenden Taktfrequenz FCK des Eingangstakts CK. Die beiden waagerechten Linien geben die Spezifikationsgrenzen für den Parameter TQsk an. Die obere Grenze liegt bei +200 ps, und die untere Grenze liegt bei –100 ps. Von links nach rechts sind vier Szenarien gezeigt.
-
Bei dem ersten Szenario wird das Phasenausrichtungstraining der elektronischen Vorrichtungen bei dem maximal zulässigen Versorgungsspannungspegel Vdd (max. Vdd) und der minimal zulässigen Temperatur (min. Temp.) durchgeführt. Der linke senkrechte Balken DeltaTQskA erstreckt sich über alle gemessenen TQsk-Werte einer großen Anzahl von elektronischen Vorrichtungen (Registerbuffer R) und alle relevanten Ausgangspins. Der Balken DeltaTQskA ist um 0 ps zentriert.
-
Der zweite senkrechte Balken von links nach rechts bezieht sich auf ein zweites Szenario, bei dem die elektronischen Halbleitervorrichtungen (Registerbuffer R) unter den gleichen Betriebsbedingungen für die Versorgungsspannung und die Temperatur wie bei dem ersten Szenario trainiert werden. Nachdem der Ausgangstakt Yn unter diesen Trainingsbedingungen trainiert und phasenausgerichtet wurde, wird jedoch die Versorgungsspannung auf den minimalen Wert eingestellt und die Temperatur auf den maximalen Wert verändert (die Betriebsbedingungen werden zu einem anderen Corner der minimal zulässigen Versorgungsspannung Vdd und der maximal zulässigen Umgebungstemperatur geändert). Aufgrund der Änderung der Versorgungsspannung und der Temperatur wird der TQsk-Balken auf höhere (positivere) Zeitwerte (zwischen etwa 120 ps und 240 ps) verschoben. Der Betrag der TQsk-Verschiebung ist als DeltaTQskB angegeben. Bei diesem Beispiel liegt TQskB bei etwa 180 ps. Die PLL in dem Registerbuffer R stellt sicher, dass die Flanken des Ausgangstaktsignals Yn nahezu fest bleiben. Die Flanken des Ausgangsdatensignals Qn sind jedoch bezogen auf den Bufferausgang aufgrund der Laufzeitverzögerung TPD (CK -> Qn) verzögert, welche aufgrund der Änderung zu Worst-Case-Bedingungen der Versorgungsspannung Vdd und Temperatur angestiegen ist.
-
Das dritte Szenario und das vierte Szenario, auf welche sich, gezählt von links nach rechts, der dritte und vierte senkrechte Balken beziehen, zeigen eine im Vergleich zu den ersten beiden Szenarien umgekehrte Situation. In beiden Szenarien ist der Registerbuffer bei minimal zulässiger Versorgungsspannung Vdd und maximal zulässiger Umgebungstemperatur trainiert. Bei dem dritten Szenario wird die Messung von TQsk unter gleichen Trainings- und Betriebsbedingungen durchgeführt. Bei dem vierten Szenario hingegen sind die Trainings- und Betriebsbedingungen entgegengesetzte Corner. Während des Betriebs werden die Versorgungsspannung Vdd und die Temperatur im Vergleich zum zweiten Szenario in umgekehrter Richtung verändert. Die Datensignale Qn haben nun eine geringere Verzögerung, und der TQsk-Balken ist zu niedrigeren (negativeren) Zeitwerten verschoben. Da die Werte von TQsk von den Versorgungsspannungs- und Temperaturbedingungen während des normalen Betriebs und während des Phasenausrichtungstrainings abhängig sind, wird ein weites Performancefenster von TQsk erhalten. Das gesamte Performancefenster von TQsk besteht aus einmal DeltaTQskA und zweimal DeltaTQskB. DeltaTQskA stellt den TQsk-Beitrag aus der Pin-zu-Pin-Abweichung von Qn, der Übereinstimmung zwischen dem Datenreferenzpfad und den Datenreferenzpfaden, der Phasenkomparatorgenauigkeit und der Schwankung von einem Vorrichtungsteil zu einem anderen dar. DeltaTQskB stellt den TQsk-Beitrag hauptsächlich durch TPD-(CK -> Qn-)Änderungen aufgrund von Änderungen der Versorgungsspannung Vdd und der Temperatur dar. Ein kleiner Teil der DeltaTQskB-Verschiebung entsteht durch den Drift der Flanken des Ausgangstaktsignals Yn über der Versorgungsspannung und der Temperatur. Diese Ausgangstaktdrift ist jedoch aufgrund der PLL sehr gering. TQsk-Fenster = DeltaTQskA + 2 × DeltaTQskB (1)
-
Ein Hauptnachteil dieses TQsk-Fensters liegt darin, dass es sehr groß ist und ihre Mitte bei 0 ps liegt. Bei einer bevorzugten Ausführungsform der Erfindung wird das Phasenausrichtungstraining für jede individuelle Anwendungsfrequenz nur einmal in der automatischen Prüfeinrichtung (ATE) unter bestimmten Bedingungen (Versorgungsspannung, Temperatur usw.) durchgeführt. Ferner wird das resultierende Phasenausrichtungs-Steuerwort (PACW) für jede individuelle Eingangstaktfrequenz permanent in einem nichtflüchtigen Speicher gespeichert. Gemäß diesem Aspekt der Erfindung wird das Phasenausrichtungstraining nur einmal auf der ATE bei Versorgungsspannungs- und Temperaturbedingungen ausgeführt, die zwischen den Cornern der Versorgungsspannung und der Temperatur liegen. Wenn zum Beispiel die Versorgungsspannung und die Temperatur genau zwischen den beiden Worst-Case-Cornern (d. h. in der Mitte) gewählt sind, kann das Performancefenster von TQsk um einmal DeltaTQskB reduziert werden. Das resultierende TQsk-Performancefenster kann dann aus einmal DeltaTQskA und einmal DeltaTQskB bestehen: TQskFenster = DeltaTQskA + DeltaTQskB (2)
-
6 zeigt Änderungen und Bereiche des TQsk-Timing-Parameters für diese Ausführungsform der Erfindung. Das Phasenausrichtungstraining wird nur einmal in der Mitte des maximal zulässigen Versorgungsspannungsbereichs und in der Mitte des Temperaturbereichs (mid. Vdd und mid. Temp.) durchgeführt. Die Verschiebung von TQsk zu den beiden Worst-Case-Cornern (max Vdd und min Temp und min Vdd und max Temp) beträgt lediglich TQskB/2.
-
7 betrifft eine weitere Ausführungsform der vorliegenden Erfindung. Das Phasenausrichtungstraining in der automatischen Prüfeinrichtung wird unter Bedingungen durchgeführt, die so ausgewählt sind, dass das resultierende TQsk-Fenster gemäß einem asymmetrischen Spezifikationsbegrenzungsfenster von TQsk verschoben wird. Die Versorgungsspannungs- und Temperaturbedingungen werden von der Mitte (mid. Vdd und mid. Temp) zu einer der zulässigen Worst-Case-Bedingungen der Versorgungsspannung Vdd oder der Temperatur verschoben. Durch die Auswahl einer optimalen Versorgungsspannung Vdd und Temperatur für das Phasenausrichtungstraining während des letzten Herstellungsschritts kann das resultierende Performancefenster von TQsk in das gewünschte Spezifikationsbegrenzungsfenster von TQsk eingepasst werden. Die optimalen Trainingsbedingungen hängen von den maximalen und minimalen Grenzwerten für den Timing-Parameter TQsk ab und müssen von Fall zu Fall bestimmt werden. Die Größe des TQsk-Fensters ist der Größe des Fensters des in 6 gezeigten Szenarios ähnlich und in Gleichung (2) angegeben. Der Unterschied liegt darin, dass das TQsk-Fenster der elektronischen Vorrichtung gemäß diesem Aspekt der Erfindung nicht symmetrisch um 0 ps zentriert ist. Der Betrag der Fensterverschiebung wird dadurch bestimmt, wie im Vergleich zu den beiden zulässigen Worst-Case-Cornern der Versorgungsspannung und Temperatur die Versorgungsspannungs- und Temperaturbedingung gewählt sind.
-
Die normale Größe des TQsk-Fensters reicht von –240 ps bis zu +240 ps, was zu einer Gesamtgröße des Fensters von 480 ps führt. Ein neuer Registerbuffer R hat ein TQsk-Performancefenster von –100 ps bis zu +200 ps, was einer Gesamtgröße des Fensters von 300 ps entspricht. Diese Reduzierung und Verschiebung der TQsk-Fenstergröße sorgt für eine verbesserte Ausgangsdaten-Augenöffnung und Zentrierung für eine große Reihe von Anwendungen mit einer großen Anzahl unterschiedlicher Betriebsfrequenzen.
-
8 zeigt ein vereinfachtes Blockschaltbild einer elektronischen Vorrichtung (d. h. die PLL/PA-Stufe) gemäß einer Ausführungsform der Erfindung. Der Registerbuffer gemäß dieser Ausführungsform der Erfindung ist in weiten Teilen ähnlich zu dem in 2 gezeigten Buffer, wobei gleiche Teile und Stufen die gleichen Bezeichnungen haben. Ein wichtiger Unterschied liegt darin, dass ein ausgewähltes Phasenausrichtungs-Steuerwort SPACW über den Multiplexer MUX1 in den Phaseninterpolator PINT eingespeist werden kann. Der Multiplexer MUX1 wird von einem Multiplexer-Steuersignal PAMC gesteuert. Das Training der elektronischen Vorrichtung R wird in einer letzten Herstellungsstufe in einer automatischen Prüfeinrichtung (ATE) durchgeführt. Das trainierte PA-Steuerwort TRAINPACW wird nicht nur zu dem Phaseninterpolator PINT, sondern auch nach außen zu einer zusätzlichen Steuerstufe geleitet, die in 9 ausführlicher gezeigt ist. Die gespeicherten PA-Steuerwörter (PACW1 bis PACWN in 9) können dann im normalen Betrieb aus einem nichtflüchtigen Speicher (NVMEM in 9) abgerufen werden.
-
Die Öffnung des Augendiagramms der elektronischen Vorrichtung ist verbessert, ohne die Laufzeitverzögerung der Daten in der elektronischen Vorrichtung oder die Systemlatenz zu beeinträchtigen, und die Datenaugenöffnung kann auf flexible Weise um eine Taktflanke verschoben werden. Darüber hinaus kann der Timing-Parameter für jede elektronische Vorrichtung individuell gespeichert werden und erfüllt die Anforderungen der spezifischen elektronischen Vorrichtung (Typ und innerhalb eines Fertigungsloses) und der Anwendung. Jede elektronische Vorrichtung kann dann in der ATE individuell trainiert und vorkonfiguriert werden.
-
9 zeigt ein vereinfachtes Blockschaltbild einer elektronischen Vorrichtung R gemäß einer Ausführungsform der Erfindung. Der Vorrichtungskernteil PLL/PA ist wie in 8 implementiert. Der Logikteil des Registerbuffers R weist einen nichtflüchtigen Speicher NVMEM, eine Phasenausrichtungs-(PA-)Auswahllogik PASL, zahlreiche verschiedene Steuerwörter und Steuersignale auf. Die serielle Schnittstelle SI ist in einem herkömmlichen Registerbuffer auch vorhanden, ist jedoch für diese Ausführungsform der Erfindung geringfügig modifiziert. Die serielle Schnittstelle SI dient dazu, verschiedene Modi der Vorrichtung auszuwählen, wie etwa Logikfunktionen, Ausgangstreiberstärken usw. Bei dieser Ausführungsform der Erfindung wird die serielle Schnittstelle SI auch dazu verwendet, die Phasenausrichtungs-Trainingprozedur, das Speichern der trainierten Phasenausrichtungs-Steuerwörter PACW1 bis PACWN und die Auswahl der gewünschten Phasenausrichtungs-Steuerwörter aus dem nichtflüchtigen Speicher NVMEM zu steuern. Das Phasenausrichtungs-(PA-)Training wird individuell für jede elektronische Vorrichtung R und unter genauen vorgegebenen Versorgungsspannungs- und Temperaturbedingungen (Trainingsbedingungen) einmal in der automatischen Prüfeinrichtung (ATE) durchgeführt. Da die Vorrichtung verschiedene Eingangstaktfrequenzen FCK unterstützen muss, muss das Phasenausrichtungstraining individuell für jede Eingangstaktfrequenz FCK durchgeführt werden. Dies ist darauf zurückzuführen, dass das Phasenausrichtungs-Steuerwort eine Phasenverschiebung bezüglich der Taktperiode des Eingangstakts CK definiert. Da die Phasenverschiebung stets mit der Taktfrequenz FCK im Zusammenhang steht, ist es vorteilhaft, ein individuelles Phasenausrichtungs-Steuerwort (PACW1 bis PACWN) für jede Betriebstaktfrequenz zu speichern. Die Registerbuffervorrichtung R gemäß dieser Ausführungsform der Erfindung kann in einem genau definierten DDR3-Speichersystem verwendet werden. Die Vorrichtung kann für einen Vdd-Versorgungsspannungsbereich von 1,5 V sechs Geschwindigkeitsknoten (Systemtaktfrequenzen) und für einen Vdd-Versorgungsspannungsbereich von 1,35 V fünf Geschwindigkeitsknoten (Systemtaktfrequenzen) unterstützen. Der an den Registerbuffer R gekoppelte Speichercontroller gibt einen besonderen Geschwindigkeitsknoten und Versorgungsspannungsbereich Vdd an, indem er Geschwindigkeitsbits und Vdd-Bereichsauswahlbits (über den Steuereingang von SI) in die serielle Schnittstelle SI des Registerbuffer R schreibt. Diese Steuerbits werden zum Auswählen der gewünschten Phasenausrichtungs-Steuerwörter PACW aus dem nichtflüchtigen Speicher NVMEM verwendet.
-
Ein Phasenausrichtungstraining kann mit dem Signal TPAT ausgelöst werden. Der Status des PA-Trainings wird über das Signal STATPAT übertragen. Der in 8 gezeigte Multiplexer MUX1 wird über MUX-Steuersignale PAMUXCNTL gesteuert. Ein Multiplexer MUX2 ist so gekoppelt, dass er ausgewählte PA-Steuerwörter SELPACW (PACW1 bis PACWN von dem Speicher NVMEM) aus dem nichtflüchtigen Speicher NVMEM erhält. MUX2 wird über ein Auslese-MUX-Steuersignal READMUXCNTL gesteuert. Das ausgewählte PA-Steuerwort SELPACW wird über MUX2 als Signal READPACW ausgelesen und zur seriellen Schnittstelle SI geleitet. Es kann dann extern verarbeitet werden. Eine Speicheradresse MADR und ein Speichersteuersignal MSCNTL werden dazu verwendet, trainierte Steuerwörter TRAINPACW (von der Stufe PLL/PA) in den Speicher NVMEM zu schreiben und Steuerwörter PACW1 bis PACWN aus dem Speicher NVMEM zu lesen. Das PA-Auswahlsteuersignal PASELCNTL wird zur Steuerung der PA-Auswahllogik PASL verwendet, die PA-Steuerwörter PACW1 bis PACWN aus dem Speicher NVMEM abruft und die ausgewählten Steuerwörter zur Stufe PLL/PA leitet.
-
10 zeigt ein vereinfachtes Blockschaltbild einer weiteren Ausführungsform der Erfindung. Im Vergleich zu der in 9 gezeigten Ausführungsform gibt es einen zusätzlichen Multiplexer MUX3, entsprechende Multiplexer-Steuersignale SELMUXCNTL und einen Pfad für externe PA-Steuerwörter EXTPACW, der an den MUX3 und an Datenumwandler DONV1 und DCONV2 gekoppelt ist. Der Multiplexer MUX wird mit dem Auswahl-MUX-Steuersignal SELMUXCNTL gesteuert und wählt entweder das Phasenausrichtungs-Steuerwort SELPACW1 (von der PA-Auswahllogik PASL aus dem nichtflüchtigen Speicher NVMEM ausgewählt) oder ein externes Phasenausrichtungs-Steuerwort EXTPACW aus. Gemäß diesem Aspekt der Erfindung ist es möglich, in der Stufe PLL/PA ein externes PA-Steuerwort EXTPACW über die serielle Schnittstelle SI an den Phaseninterpolator PINT anzulegen. Mit einem externen PA-Steuerwort ist es möglich, die elektronische Vorrichtung zu prüfen oder zu testen. Es gibt ferner zwei Datenumwandler DCONV1 und DCONV2, die in den Pfad des trainierten PA-Steuerworts und in den Pfad des ausgewählten PA-Steuerworts gekoppelt sind. Diese Datenumwandler DCONV1 und DCONV2 codieren und decodieren das Phasenausrichtungs-Steuerwort PACW zwischen dem Thermometercode und dem binären Code. Diese Steuercodierung und -decodierung verringert die Menge der erforderlichen Speicherbits, indem die Anzahl der Bits der Phasenausrichtungs-Steuerwörter PACW1 bis PACWN verringert wird. In der PLL/PA-Stufe wird das trainierte PA-Steuerwort TRAINPACW in einen Thermometercode codiert, was verglichen mit dem gleichen Phasenausrichtungs-Steuerwort, das in einem binären Code codiert ist, eine große Bitmenge erfordert. Für die Zustandsmaschine PASM und den Phaseninterpolator PINT ist jedoch der Thermometercode effizienter und einfacher zu implementieren. Somit wandelt DCONV1 von dem Thermometercode in den binären Code um, und DCONV2 wandelt SELPACW1 von dem binären Code in den Thermometercode um.
-
11 zeigt ein Zustandsdiagramm eines Phasenausrichtungs-Trainingsvorgangs gemäß Aspekten der Erfindung. Dieser Trainingsvorgang wird vorteilhaft während eines letzten Schritts der Herstellung der elektronischen Vorrichtung in einer ATE durchgeführt. Der Trainingsvorgang besteht aus den folgenden Schritten: In Schritt S1 werden die gewünschten Trainingsbedingungen hinsichtlich der Versorgungsspannung Vdd und der Temperatur auf der ATE an die Vorrichtung angelegt. Ferner wird die elektronische Vorrichtung (der Registerbuffer R) mit der gewünschten Eingangstaktfrequenz gestartet. Das Phasenausrichtungs-Multiplexersteuerbit PAMC wird so eingestellt, dass das Phasenausrichtungs-Steuerwort PACW von der Phasenausrichtungs-Zustandsmaschine PASM in den Phaseninterpolator PINT eingespeist wird. Die Phasenausrichtungs-Trainingsprozedur wird durch das Einstellen des Steuerbits „Auslösen eines PA-Trainings„ (TPAT) in der seriellen Schnittstelle SI ausgelöst. Das Bit „PA-Mux-Steuerung„ PAMUXCNTL wird auch für die Phasenausrichtungs-Trainingsprozedur eingestellt. Nach der Zeitperiode der PLL- und Phasenausrichtungsstabilisierung und des PLL- und Phasenausrichtungstrainings wird das Steuerbit „Status PA-Training” STATPAT über die serielle Schnittstelle SI ausgelesen, um zu prüfen, ob das Phasenausrichtungstraining abgeschlossen ist oder nicht. Wenn das Phasenausrichtungstraining abgeschlossen ist, geht die Trainingslogik von Schritt S2 zu Schritt S3 über. Das resultierende Phasenausrichtungs-Steuerwort PACW (TRAINPACW) wird über die serielle Schnittstelle SI ausgelesen. Dies wird durch Einstellen des Bits „Auslese-Mux-Steuerung” READMUXCNTL ausgeführt. Die gewünschte Speicheradresse MADR wird in den nichtflüchtigen Speicher NVMEM eingespeist, und das Bit „Speicher-Speichersteuerung” MSCNTL löst das Schreiben des Phasenausrichtungs-Steuerworts PACW (TRAINPACW) in den nichtflüchtigen Speicher NVMEM aus. Die erfolgreiche Speicherung des Phasenausrichtungs-Steuerworts PACW (TRAINPACW) wird überprüft, indem der Speicherinhalt über die Phasenausrichtungs-Auswahllogik PASL ausgelesen und dieses Phasenausrichtungs-Steuerwort SELPACW (oder SELPACW1 in 10) mit dem ausgelesenen Phasenausrichtungs-Steuerwort READPACW verglichen wird, das vor dem Speichern ausgelesen wurde. Um das gespeicherte Phasenausrichtungs-Steuerwort PACW1 bis PACWN auszulesen, müssen das Bit „PA-Auswahlsteuerung„ PASELCNTL und das Bit „Auslese-Mux-Steuerung„ READMUXCNTL gesetzt werden. Dies alles wird in Schritt S4 durchgefürt. Wenn das Speichern und die Steuerung des Phasenausrichtungs-Steuerworts PACW (TRAINPACW) erfolgreich sind, wird die gesamte Prozedur für die nächste Eingangstaktfrequenz (Geschwindigkeitsknoten) einer Anwendung wiederholt. Während der nächsten Iteration muss nicht nur die Eingangstaktfrequenz (Geschwindigkeitsknoten), sondern auch die Speicheradresse MADR und das Bit „PA-Auswahlsteuerung„ PASELCNTL geändert werden. Wenn alle Geschwindigkeitsknoten während der Trainingsprozedur berücksichtigen worden sind, entscheidet die elektronische Vorrichtung in Schritt S5, das Programm zu beenden. Nach dem Abschließen der gesamten Phasenausrichtungs-Trainingsprozedur für die elektronische Halbleitervorrichtung R in der automatischen Prüfeinrichtung für alle Geschwindigkeitsknoten und Versorgungsspannungsanwendungsbereiche, werden alle erforderlichen Phasenausrichtungs-Steuerwörter PACW1 bis PACWN für die verschiedenen Anwendungsszenarien permanent in dem nichtflüchtigen Speicher NVMEM der elektronischen Vorrichtung gespeichert.
-
Mit einer elektronischen Halbleitervorrichtung R mit einem nichtflüchtigen Speicher, der die PA-Steuerwörter enthält, ist kein weiteres Training von Phasenausrichtungs-Steuerwörtern während der Initialisierung (des Startens) erforderlich, wenn sie in einer Anwendung verwendet wird. Der Speichercontroller, der an den Registerbuffer R gekoppelt ist, kennzeichnet die gewünschte Anwendungsfrequenz (Geschwindigkeitsknoten) über die serielle Schnittstelle SI und an der Phasenausrichtungs-Auswahllogik PASL. Das korrekte Phasenausrichtungs-Steuerwort PACW1 bis PACWN wird aus dem nichtflüchtigen Speicher NVMEM abgerufen und an den Phaseninterpolator PINT der Stufe PLL/PA, wie in 6 gezeigt, angelegt.
-
Eine weitere Betriebs- und/oder Trainingsbedingung, die ähnlich wie die Versorgungsspannungspegel- und Temperaturbedingungen und ihre Corner, wie sie anhand der Ausführungsformen der Erfindung beschrieben sind, optimiert werden kann, kann die Ladung an den Pins der elektronischen Vorrichtung sein. Diese Ladungen können für jeden Pin unterschiedlich sein oder können von Anwendung zu Anwendung variieren oder können für verschiedene Anwendungen und Konfigurationen optimiert werden.