DE112005002333B4 - Reaktionszeitnormierung durch ausgleichen voreilender und nacheilender Takte - Google Patents

Reaktionszeitnormierung durch ausgleichen voreilender und nacheilender Takte Download PDF

Info

Publication number
DE112005002333B4
DE112005002333B4 DE112005002333.8T DE112005002333T DE112005002333B4 DE 112005002333 B4 DE112005002333 B4 DE 112005002333B4 DE 112005002333 T DE112005002333 T DE 112005002333T DE 112005002333 B4 DE112005002333 B4 DE 112005002333B4
Authority
DE
Germany
Prior art keywords
clock signal
memory
clock
leading
memory device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE112005002333.8T
Other languages
English (en)
Other versions
DE112005002333T5 (de
Inventor
Hing To
Joe Salmon
Mamun Rashid
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112005002333T5 publication Critical patent/DE112005002333T5/de
Application granted granted Critical
Publication of DE112005002333B4 publication Critical patent/DE112005002333B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Dram (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

Vorrichtung, umfassend: eine von einem Memory Controller Hub (MCH) (200) ausgehende Taktsignalleiterbahn (202); und eine Speichervorrichtung (214, 218, 222), welche sich auf einem Speichermodul (204) befindet, wobei das Speichermodul (204) von dem MCH (200) getrennt ist, wobei die Speichervorrichtung (214, 218, 222) betriebsfähig ist, um: ein voreilendes Taktsignal (212) von der Taktsignalleiterbahn (202) und ein nacheilendes Taktsignal (228) von der Taktsignalleiterbahn zu empfangen; eine Taktsequenz des voreilenden Signals zu bestimmen, eine Taktsequenz des nacheilenden Signals zu bestimmen, und ein gemitteltes Taktsignal zu erzeugen, das eine Taktsequenz aufweist, die in der Mitte zwischen der Taktsequenz des voreilenden Signals und der Taktsequenz des nacheilenden Signals liegt; und einen auf dem Speichermodul (204) befindlichen Terminierungswiderstand (236) an dem Ende der Taktsignalleiterbahn (202), um das Taktsignal zu terminieren, nachdem die Speichervorrichtung (214, 218, 222) sowohl das voreilende als auch das nacheilende Taktsignal (212, 228) empfangen hat.

Description

  • GEBIET DER ERFINDUNG
  • Die Erfindung betrifft Systemspeicher. Insbesondere betrifft die Erfindung das Normieren der Latenzzeit von Speichervorrichtungen, die an einem Inline-Speichermodul angeordnet sind.
  • ALLGEMEINER STAND DER TECHNIK
  • Bei modernen Computern ist die Taktung des Taktsignals für den Systemspeicher entscheidend dafür, daß ein robuster Betrieb des Speicherkanals gewährleistet werden kann. Viele Speichersubsysteme sind in einer Verkettungs-(daisy chain)-Konfigurierung aufgebaut. Bei einem Speichersubsystem mit einer Verkettungskonfigurierung sendet eine synchrone Quelloperation, die von dem MCH (Memory Controller Hub) ausgeht, Kommando-, Adreß- und Steuerungsinformation mit einem Speicherkanaltakt an die dynamischen RAM-(Dynamic Random Access Memory – DRAM)-Vorrichtungen, die in Serie verbunden sind. In diesem Szenario empfängt die erste DRAM-Vorrichtung in der Kette die Kommando-/Adreß-/Steuerungsinformation vor den anderen DRAM-Vorrichtungen, empfängt die zweite DRAM-Vorrichtung die Kommando-/Adreß-/Steuerungsinformation nach der ersten DRAM-Vorrichtung, aber vor den anderen DRAM-Vorrichtungen, und so weiter, bis schließlich die letzte DRAM-Vorrichtung die Kommando-/Adreß-/Steuerungsinformation nach allen anderen DRAM-Vorrichtung empfängt.
  • Auf diese Weise wird jede DRAM-Vorrichtung zu einem eindeutigen Zeitpunkt aktiviert, der auf der Übertragungszeit basiert, welche die Kommando-/Adreß-/Steuerungsinformation benötigt, um sich von dem MCH (Memory Controller Hub) zu jeder entsprechenden DRAM-Vorrichtung zu bewegen. Diese eindeutigen Aktivierungszeiten für jede DRAM-Vorrichtung bedeuten, daß jede DRAM-Vorrichtung zu einem unterschiedlichen und eindeutigen Zeitpunkt Daten an den MCH zurücksendet, sodaß für alle Vorrichtungen ungleiche Latenzzeiten erzeugt werden. Bei heutigen Computersystemen muß der MCH die DRAM-Latenzzeiten normieren, um eine Speicherkanaldatenkorrumpierung, die ungleiche DRAM-Latenzzeiten zur Folge hat, zu verhindern. Um eine DRAM-Latenzzeitnormierung durchzuführen, kann der MCH zusätzliche Schaltungen enthalten, um die eintreffenden Daten zu Puffern. Allerdings ist dieses Verfahren aufgrund der zusätzlichen Schaltungen, die im MCH hinzugefügt werden, nicht wünschenswert. Der MCH kann die Normierung auch durchführen, indem er zu seinem Speicherkanal zusätzliche Taktverzögerungen hinzufügt, um die Möglichkeit einer Speicherkorrumpierung aufgrund der Diskrepanz der DRAM-Latenzzeiten zu beseitigen. Diese Lösung ist ebenfalls nicht wünschenswert, da zusätzliche Verzögerungen der MCH-Taktung die Systemleistung senken.
  • Aus der US 5,361,277 A ist ein Verfahren zum Synchronisieren der Phasen mehrerer räumlich verteilter Anwendungsmodule bekannt. Jedes Anwendungsmodul ist dabei an einer vorbestimmten Stelle mit einem Ausgangspfad und an einer entsprechenden Stelle mit einem Rückkehrpfad eines Pulsreferenzpfads verbunden.
  • KURZER ABRISS DER ERFINDUNG
  • Es ist die Aufgabe der Erfindung, eine Normierung der Latenzzeiten von Speichervorrichtungen mit geringem schaltungstechnischem Aufwand und ohne zusätzliche Verzögerungen zu ermöglichen. Diese Aufgabe wird durch die Vorrichtung gemäß Anspruch 1 und das Verfahren gemäß Anspruch 11 gelöst. Bevorzugte Ausführungsformen sind Gegenstande der Unteransprüche.
  • KURZE BESCHREIBUNG DER FIGUREN
  • Die vorliegende Erfindung ist beispielhaft angegeben und wird nicht durch die Figuren der begleitenden Zeichnungen beschränkt, in welchen gleiche Bezugszeichen auf gleiche Elemente verweisen, und wobei:
  • 1 ein Computersystem zeigt, bei dem die Systemspeicherlatenzzeit normiert werden kann, in einer Ausführungsform der Erfindung.
  • 2 eine Taktsignalleiterbahn zeigt, die zwischen dem MCH und einem Inline-Speichermodul verläuft, in einer Ausführungsform der Erfindung.
  • 3 das Taktdiagramm der voreilenden, nacheilenden und gemittelten Taktsignale für drei Speichervorrichtungen zeigt, in einer Ausführungsform der Erfindung.
  • 4 ein Verfahren zum Erzeugen eines gemittelten Taktsignals in einer Ausführungsform der Erfindung zeigt.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Offenbart sind Ausführungsformen eines wirksamen Verfahrens zum Normieren der Latenzzeit eines Systemspeichers durch Ausgleichen voreilender und nacheilender Takte. In der nachfolgenden Beschreibung werden zahlreiche spezifische Details aufgeführt. Allerdings versteht es sich, daß die Ausführungsformen auch ohne diese spezifischen Details praktizierbar sind. In anderen Fällen wurden allgemein bekannte Elemente, Spezifikationen und Protokolle nicht im Detail erörtert, um die vorliegende Erfindung nicht zu verundeutlichen.
  • 1 zeigt ein Computersystem, bei dem die Systemspeicherlatenzzeit normiert werden kann, in einer Ausführungsform der Erfindung. Ein Prozessor 100 ist über einen Bus (gelegentlich als ein Host-Bus bezeichnet) mit einem MCH (Memory Controller Hub) 102 verbunden. Der MCH 102 erlaubt einen Zugriff auf einen Systemspeicher 104, der aus einer Anzahl von DRAM-Vorrichtungen zusammengesetzt sein kann, die an Inline-Speichermodulen (im Detail in 2 erläutert) angeordnet sind. Der MCH 102 erlaubt es dem Prozessor, auf ein Graphikmodul 106 zuzugreifen, z. B. eine AGP-(Accelerated Graphics Port)-Vorrichtung, die mit einer Kathodenstrahlröhre (KSR), einer Flüssigkristallanzeige (LCD) oder einem anderen Typ von Anzeigevorrichtung verbunden ist. Der MCH 102 erlaubt es dem Prozessor auch, auf einen I/O-Controller-Hub (ICH) 108 zuzugreifen. Eine Anzahl üblicher Agenten kann mit dem ICH 108 verbunden sein, z. B. ein I/O-Bus 110 (PCI, USB usw.), ein Festplattenlaufwerk 112, eine Tastatursteuerung 114 und eine Maussteuerung 116, neben vielen anderen möglichen Vorrichtungen. In einer Ausführungsform sind Komponenten des Computersystems aus 1 auf einer Leiterplatte (z. B. einer Hauptplatine) über Busse miteinander verbunden. Die einzelnen Busleiter sind in der Form von Leiterbahnen in die Leiterplatte geätzt. Eine solche Leiterbahn ist die Taktsignalleiterbahn, die zwischen dem MCH 102 und dem Systemspeicher 104 verläuft.
  • 2 zeigt die Taktsignalleiterbahn, die zwischen dem MCH 200 und einem Inline-Speichermodul 204 verläuft, in einer Ausführungsform der Erfindung. Das Inline-Speichermodul 204 umfaßt entweder den gesamten Systemspeicher des Computersystems oder einen Teil desselben. Der MCH sendet eine spezifische Flanke eines Taktsignals, im folgenden als die „Taktsignalflanke” bezeichnet, über eine Taktbusleiterbahn 202 an das Inline-Speichermodul 204. In einer Ausführungsform kann die spezifische Flanke des Taktsignals eine ansteigende Flanke sein. In einer anderen Ausführungsform kann die spezifische Flanke eine abfallende Flanke sein. Die Taktbusleiterbahn 202 ist über einen Taktpin 206 mit dem Inline-Speichermodul 204 verbunden. In einer Ausführungsform ist der Taktpin 206 einer von vielen Pins, die das Inline-Speichermodul 204 mit dem MCH 200 verbinden. Außerdem werden Daten in Antwort auf Datenlese- oder -schreibkommandos bzw. -befehle über den Datenbus 208 zwischen den Speichervorrichtungen und dem MCH übertragen. In anderen Ausführungsformen kann die Hauptplatine 210 jeder Typ von Leiterplatte sein, über die Busleiterbahnen geführt werden können, wie z. B. eine Einschub-Tochterkarte. In einer Ausführungsform ist der Taktpin 206 über eine DIMM-(Dual Inline Memory Module)-Sockelverbindung mit der Taktbusleiterbahn 202 verbunden. In einer Ausführungsform folgen die Kommando-/Adreß-/Steuerungsbusleiterbahnen einem Pfad, der ähnlich ist wie die Taktbusleiterbahn 202.
  • Das Inline-Speichermodul 204 ist mit einem oder mehreren DRAM-Speichervorrichtungen bestückt. In unterschiedlichen Ausführungsformen können neben dem Standard-DRAM alternative Formen von RAM-Speicher auf dem Inline-Speichermodul 204 konfiguriert sein. 2 zeigt eine Ausführungsform mit drei Speichervorrichtungen (214, 218 und 222), obwohl in unterschiedlichen Ausführungsformen jede beliebige Anzahl von Speichervorrichtungen vorliegen kann. Bei einer Standardkonfigurierung sind auf dem Inline-Speichermodul 204 acht oder neun Speichervorrichtungen angeordnet, obwohl jedes beliebige Inline-Speichermodul 204 mit zwei oder mehr Speichervorrichtungen anwendbar ist. Sobald das Taktsignal den Taktpin 206 durchläuft, wird es zunächst durch das Inline-Speichermodul 204 über den Leiterbahnweg 212 für das voreilende Taktsignal durch einen Voreilungstaktsignal-Eingangspin 216 an eine Speichervorrichtung 214 geleitet. Das „voreilende” Taktsignal ist als ein erstes Taktsignal definiert, das von einer jeweiligen Speichervorrichtung empfangen wird. Die Taktsignalflanke verfolgt den Leiterbahnweg 212 für das voreilende Taktsignal zu den Speichervorrichtungen 218 und 222 durch den jeweiligen Voreilungstaktsignalpin 220 bzw. 224.
  • Die Taktsignalflanke benötigt eine endliche Zeitspanne, um jeden dieser aufeinander folgenden Pins zu erreichen. Auf diese Weise empfängt die Speichervorrichtung 214 die Taktsignalflanke durch den Voreilungstaktsignalpin 216 vor den anderen zwei Speichervorrichtungen, da der Leiterbahnweg 212 für das voreilende Taktsignal von dem Taktpin 206 des Inline-Speichermoduls 204 zu dem Voreilungstaktsignalpin 216 der Speichervorrichtung 214 am kürzesten ist. Dagegen empfängt die Speichervorrichtung 222 die Taktsignalflanke durch den Voreilungstaktsignalpin 224 nach den anderen zwei Speichervorrichtungen, da der Leiterbahnweg 212 für das voreilende Taktsignal von dem Taktpin 206 des Inline-Speichermoduls 204 zu dem Voreilungstaktsignalpin 224 der Speichervorrichtung 222 am längsten ist. Die Taktsignalflanke, die jede Speichervorrichtung durch ihren Voreilungstaktsignalpin empfängt, gilt als das „voreilende” Taktsignal.
  • Sobald die Taktsignalflanke alle Speichervorrichtungen erreicht hat (d. h. sobald die Taktsignalflanke das Durchlaufen des Leiterbahnweg 212 für das voreilende Taktsignal beendet hat), durchläuft die Taktsignalflanke als nächstes einen Leiterbahnverschleifungsweg 226. Wenn die Taktsignalflanke die Verschleifung über den Leiterbahnverschleifungsweg 226 vollführt hat, durchläuft sie den Leiterbahnweg 228 für das nacheilende Taktsignal ein zweites mal, zurück zu allen Speichervorrichtungen. Das „nacheilende” Taktsignal ist als ein zweites Taktsignal definiert, das von jeder Speichervorrichtung empfangen wird. Bei diesem Durchlauf erreicht die Taktsignalflanke zuerst den Nacheilungstaktsignalpin 230 von Speichervorrichtung 222. Die Taktsignalflanke erreicht anschließend die Speichervorrichtungen 218 und 214 über den jeweiligen Nacheilungstaktsignalpin 232 bzw. 234. Die Taktsignalflanke, die von jeder Speichervorrichtung durch ihren Nacheilungstaktsignalpin empfangen wird, gilt als das „nacheilende” Taktsignal. Wenn die Taktsignalflanke für den Nacheilungstaktsignaldurchlauf an jeder jeweiligen Speichervorrichtung eintrifft, trifft sie in der umgekehrten Reihenfolge ein, in der sie während des Voreilungstaktsignaldurchlaufs eingetroffen war. Auf diese Weise weist die Speichervorrichtung 222 das am stärksten verzögerte „voreilende” Taktsignal auf, aber auch das am wenigsten verzögerte „nacheilende” Taktsignal. Ebenso weist die Speichervorrichtung 214 das am wenigsten verzögerte „voreilende” Taktsignal auf, aber auch das am stärksten verzögerte „nacheilende” Taktsignal.
  • Sobald die Taktsignalflanke ihren „voreilenden” und „nacheilenden” Durchlauf abgeschlossen hat, endet die Taktsignalflanke schließlich an dem Inline-Speichermodul 204, indem sie an Terminierungswiderstand 236 eintrifft. In einer Ausführungsform ermöglicht das Layout der Leiterbahn 212 für das voreilende Taktsignal, der Schleifenleiterbahn 226 und der Leiterbahn 228 für das nacheilende Taktsignal eine symmetrische Taktungsfunktion an allen Speichervorrichtungen, so daß der Mittelwert jedes gekoppelten „voreilenden” und „nacheilenden” Taktsignals ein „gemitteltes” Taktsignal ergibt, das für alle Speichervorrichtungen auf dem Inline-Speichermodul 204 gleich ist.
  • In einer Ausführungsform ist in jeder Speichervorrichtung ein FIFO-(First-In-First-Out)-Puffer angeordnet, der an den Kommando-/Steuerungsbus gekoppelt ist. Der FIFO verriegelt die eintreffende Steuerung/Kommando/Adresse mit dem voreilenden Taktsignal jeder Speichervorrichtung auf den Kommando-/Steuerungsbus. Dann gibt der FIFO die Steuerung/Kommando/Adresse mit dem gemittelten Taktsignal an den Kern jeder Speichervorrichtung frei. Anschließend erfolgen alle Kommando-/Steuerungsoperationen in jeder Speichervorrichtung synchron zu dem gemittelten Takt.
  • 3 beschreibt das Taktdiagramm des voreilenden, nacheilenden und gemittelten Taktsignals für drei Speichervorrichtungen in einer Ausführungsform der Erfindung. In diesem Diagramm entspricht der Zeitpunkt Null einer Position 342 auf der Zeitachse. Zum Zeitpunkt Null initiiert der MCH in einem Computersystem einen Datenlese- oder -schreibzyklus an der Flanke des MCH-Taktsignals 300. Der Datenlese- oder -schreibzyklus wird durch ein Kommando 302 angezeigt, das an die Speichervorrichtungen ausgegeben wird. In einer Ausführungsform wird das Kommando 302 auch von einer Adresse begleitet. Die spezifische Taktsignalflanke wird im folgenden als die „ansteigende Taktsignalflanke” bezeichnet, obwohl die spezifische Taktsignalflanke in einer anderen Ausführungsform eine abfallende Flanke sein kann. Die Gültigkeit des Kommandos 302 kann während einer notwendigen Setup-Zeit vor der ansteigenden Taktsignalflanke und einer notwendigen Haltezeit nach der ansteigenden Taktsignalflanke gewährleistet werden. Auf diese Weise kann das Kommando 302 um die ansteigende Taktsignalflanke herum zentriert sein (wie in 3 gezeigt). Die ansteigende Taktsignalflanke weist zwischen ihrem Ursprung am MCH und ihrem Eintreffen am Inline-Speichermodul über einen Taktpin eine Übergangszeit auf. Diese Übergangszeit ist durch eine Zeitverzögerung 306 (d. h. Latenzzeit 306) dargestellt. Die ansteigende Signalflanke erreicht also nach einer Zeitverzögerung 306 den Taktpin am Inline-Speichermodul, gezeigt durch Taktsignal 304. Wieder ist das Kommando 308 für einen gesamten Zyklus von einer ansteigenden Flanke des Taktsignals bis zur nächsten ansteigenden Flanke gültig (dargestellt durch Taktsignal 304). Bei dem Kommando, das mit 302 und 308 bezeichnet ist, handelt es sich um dasselbe Kommando, das lediglich aufgrund der Übergangszeit von dem MCH zu dem Taktpin am Inline-Speichermodul mit der Zeitverzögerung 306 verzögert wurde.
  • Als nächstes bewegt sich die ansteigende Taktsignalflanke von dem Taktpin am Inline-Speichermodul zu der ersten Speichervorrichtung. Die Übergangszeit der ansteigenden Taktsignalflanke zwischen dem Taktpin am Inline-Speichermodul und der ersten Speichervorrichtung ist durch eine Zeitverzögerung 312 dargestellt. Nach der Zeitverzögerung 312 erreicht die ansteigende Taktsignalflanke also die erste Speichervorrichtung. Gezeigt bei dem Taktsignal 310 repräsentiert dies das voreilende Taktsignal der ersten Speichervorrichtung steht. Das Kommando 314 ist für einen gesamten Zyklus des Taktsignals gültig (d. h. zwischen den zwei ansteigenden Flanken, die an dem Taktsignal 310 der ersten Speichervorrichtung gezeigt sind). Wieder handelt es sich bei dem mit Kommando 314 bezeichneten Kommando um dasselbe Kommando wie 302 und 308, das lediglich basierend auf der Übergangszeit der ansteigenden Taktsignalflanke vom Zeitpunkt null 342 des MCH bis zum Eintreffen der ansteigenden Taktsignalflanke an der ersten Speichervorrichtung verzögert wurde (d. h. Zeitverzögerung 306 + Zeitverzögerung 312).
  • Die ansteigende Taktsignalflanke bewegt sich von der ersten Speichervorrichtung zu der zweiten Speichervorrichtung. Die Übergangszeit der ansteigenden Taktsignalflanke zwischen der ersten Speichervorrichtung und der zweiten Speichervorrichtung ist durch eine Zeitverzögerung 318 dargestellt. Nach der Zeitverzögerung 318 erreicht die ansteigende Taktsignalflanke also die zweite Speichervorrichtung. Gezeigt bei Taktsignal 316, repräsentiert dies das voreilende Taktsignal der zweiten Speichervorrichtung. Das Kommando 320 ist für einen gesamten Taktsignalzyklus gültig (d. h. zwischen den zwei ansteigenden Flanken, die an dem Taktsignal 316 der zweiten Speichervorrichtung gezeigt sind). Bei dem Kommando, das mit 320 bezeichnet ist, handelt es sich um dasselbe Kommando wie 302, 308 und 314, das lediglich basierend auf Übergangszeit der ansteigenden Taktsignalflanke vom Zeitpunkt null 342 des MCH bis zum Eintreffen der ansteigenden Taktsignalflanke an der zweiten Speichervorrichtung verzögert wurde (d. h. Zeitverzögerung 306 + Zeitverzögerung 312 + Zeitverzögerung 318).
  • Als nächstes bewegt sich die ansteigende Taktsignalflanke von der zweiten Speichervorrichtung zur dritten Speichervorrichtung. Die Übergangszeit der ansteigenden Taktsignalflanke zwischen der zweiten Speichervorrichtung und der dritten Speichervorrichtung ist durch eine Zeitverzögerung 324 dargestellt. Nach der Zeitverzögerung 324 erreicht die ansteigende Taktsignalflanke also die dritte Speichervorrichtung. Gezeigt bei Taktsignal 322, repräsentiert dies das voreilende Taktsignal der dritten Speichervorrichtung. Das Kommando 326 ist für einen gesamten Taktsignalzyklus gültig (d. h. zwischen den zwei ansteigenden Flanken, die an dem Taktsignal 322 der dritten Speichervorrichtung gezeigt sind). Bei dem Kommando, das mit 326 bezeichnet ist, handelt es sich um dasselbe Kommando wie 302, 308, 314 und 320, das lediglich basierend auf der Übergangszeit der ansteigenden Taktsignalflanke vom Zeitpunkt null 342 des MCH bis zum Eintreffen der ansteigenden Taktsignalflanke an der dritten Speichervorrichtung verzögert wurde (d. h. Zeitverzögerung 306 + Zeitverzögerung 312 + Zeitverzögerung 318 + Zeitverzögerung 324).
  • Sobald die ansteigende Taktsignalflanke alle Speichervorrichtungen des Inline-Speichermoduls erreicht hat, durchläuft sie eine Schleifenleiterbahn am Inline-Speichermodul. Dann erreicht die ansteigende Taktsignalflanke ein zweites Mal die dritte Speichervorrichtung als nacheilendes Taktsignal der dritten Speichervorrichtung, dargestellt durch Taktsignal 328. An diesem Punkt erzeugt die dritte Speichervorrichtung ein internes gemitteltes Taktsignal für sich selbst. Das gemittelte Taktsignal (dargestellt durch Taktsignal 330) wird erzeugt, indem ein Taktsignal mit einer ansteigenden Flanke erzeugt wird, das auf halbem Weg zwischen der ansteigenden Flanke des voreilenden Taktsignals 322 und der ansteigenden Flanke des nacheilenden Taktsignals 328 angeordnet ist. Auf diese Weise ist das gemittelte Taktsignal 330 mit Zeitverzögerung 332 gegenüber der ansteigenden Flanke des voreilenden Taktsignals 322 verzögert.
  • Als nächstes trifft die ansteigende Taktsignalflanke ein zweites Mal an der zweiten Speichervorrichtung als nacheilendes Taktsignal der zweiten Speichervorrichtung ein, dargestellt durch Taktsignal 334. An diesem Punkt erzeugt die zweite Speichervorrichtung ein internes gemitteltes Taktsignal für sich selbst. Das gemittelte Taktsignal (dargestellt durch Taktsignal 336) wird erzeugt, indem ein Taktsignal mit einer ansteigenden Flanke erzeugt wird, das auf halbem Weg zwischen der ansteigenden Flanke des voreilenden Taktsignals 316 und der ansteigenden Flanke des nacheilenden Taktsignals 334 angeordnet ist. Auf diese Weise ist das gemittelte Taktsignal 336 der zweiten Speichervorrichtung gegenüber der ansteigenden Flanke des voreilenden Taktsignals 316 um eine Zeitverzögerung verzögert, die Zeitverzögerung 332 + Zeitverzögerung 324 entspricht.
  • Schließlich trifft die ansteigende Taktsignalflanke ein zweites Mal an der ersten Speichervorrichtung als nacheilendes Taktsignal der ersten Speichervorrichtung ein, dargestellt durch Taktsignal 338. An diesem Punkt erzeugt die erste Speichervorrichtung ein internes gemitteltes Taktsignal für sich selbst. Das gemittelte Taktsignal (dargestellt durch Taktsignal 340) wird erzeugt, indem ein Taktsignal mit einer ansteigenden Flanke erzeugt wird, das auf halbem Weg zwischen der ansteigenden Flanke des voreilenden Taktsignals 310 und der ansteigenden Flanke des nacheilenden Taktsignals 338 angeordnet ist. Auf diese Weise ist das gemittelte Taktsignal 340 der dritten Speichervorrichtung gegenüber der ansteigenden Flanke des voreilenden Taktsignals 310 um eine Zeitverzögerung verzögert, die Zeitverzögerung 332 + Zeitverzögerung 324 + Zeitverzögerung 318 entspricht.
  • Auf diese Weise wird unabhängig für alle drei Speichervorrichtungen ein gemitteltes Taktsignal erzeugt. Insbesondere erzeugt jede Speichervorrichtung ihren eigenen gemittelten Takt intern. Eine spezifische ansteigende Flanke des gemittelten Taktsignals ist bei allen drei Speichervorrichtungen identisch, wobei keine Zeitverzögerungen zwischen den Vorrichtungen vorliegen (d. h. die gemittelten Taktsignale 330, 336 und 340 sind hinsichtlich Verzögerung und Phase in Bezug auf den MCH äquivalent). Deshalb existiert nun ein einziger Taktbereich für alle Speichervorrichtungen. Jede Speichervorrichtung kann den gemittelten Takt benutzen, um I/O-Übertragungen an die Speichervorrichtung auszurichten, und um Speichervorrichtungsübertragungen an den I/O auszurichten. Wenn also der gemittelte Takt benutzt wird, um Daten von den Speichervorrichtungen an den MCH zu senden, treffen diese zum selben Zeitpunkt ein, wobei der MCH keine Zeitverzögerung zwischen den Empfängen der Daten von einer der Speichervorrichtungen wahrnimmt. In unterschiedlichen Ausführungsformen kann dieses Verfahren zum Erzeugen eines äquivalenten Taktsignals auf eine beliebige Anzahl von Speichervorrichtungen (z. B. 2, 3, 4, 8, 16 usw.) erweitert werden.
  • 4 zeigt ein Verfahren zum Erzeugen eines gemittelten Taktsignals in einer Ausführungsform der Erfindung. Am Startpunkt 400 des Verfahrens wird ein voreilendes Taktsignal von einer Speichervorrichtung empfangen 402. In einer Ausführungsform kann dieses voreilende Taktsignal von einem MCH erzeugt werden. In anderen Ausführungsformen kann das Taktsignal von jedem beliebigen integrierten Schaltkreis oder jeder Taktungskomponente eines Computersystems erzeugt werden. In einer Ausführungsform wird das Taktsignal über eine Leiterbahn empfangen. Die Leiterbahn kann über eine Hauptplatine, ein Inline-Speichermodul und/oder jede andere Form von Medium geführt werden, auf dem Leiterbahnen geführt sind. Als nächstes empfängt die Speichervorrichtung 404 ein nacheilendes Taktsignal. In einer Ausführungsform ist dieses nacheilende Taktsignal dasselbe Taktsignal wie das voreilende Taktsignal, jedoch verzögert um eine zusätzliche Übergangszeit, da es über eine längere Leiterbahn geleitet wurde. Zuletzt wird durch die Speichervorrichtung unter Verwendung des empfangenen voreilenden Taktsignals und des nacheilenden Taktsignals ein gemitteltes Taktsignal erzeugt und das Verfahren endet 408. In einer Ausführungsform wird das gemittelte Taktsignal erzeugt, indem der Zeitpunkt der ansteigenden Flanke des voreilenden Taktsignals bestimmt wird, der Zeitpunkt der ansteigenden Flanke des nacheilenden Taktsignals bestimmt wird, und ein gemitteltes Taktsignal erzeugt wird, das eine ansteigende Flanke auf halbem Zeitweg zwischen dem Zeitpunkt der ansteigenden Flanke des voreilenden Taktsignals und dem Zeitpunkt der ansteigenden Flanke des nacheilenden Taktsignals aufweist.
  • Somit wurden Ausführungsformen eines wirksamen Verfahrens zum Normieren der Latenzzeit eines Systemspeichers durch Ausgleichen voreilender und nacheilender Takte offenbart. Diese Ausführungsformen wurden unter Bezugnahme auf spezifische Ausführungsbeispiele davon beschrieben. Personen, die aus dieser Offenbarung Nutzen ziehen, werden jedoch erkennen, daß verschiedene Modifikationen und Veränderungen an diesen Ausführungsformen vorgenommen werden können, ohne von der Idee und dem Umfang der hier beschriebenen Ausführungsformen im weiteren Sinne abzuweichen. Die Beschreibung und die Figuren sind deshalb als veranschaulichend und nicht als beschränkend zu verstehen.

Claims (17)

  1. Vorrichtung, umfassend: eine von einem Memory Controller Hub (MCH) (200) ausgehende Taktsignalleiterbahn (202); und eine Speichervorrichtung (214, 218, 222), welche sich auf einem Speichermodul (204) befindet, wobei das Speichermodul (204) von dem MCH (200) getrennt ist, wobei die Speichervorrichtung (214, 218, 222) betriebsfähig ist, um: ein voreilendes Taktsignal (212) von der Taktsignalleiterbahn (202) und ein nacheilendes Taktsignal (228) von der Taktsignalleiterbahn zu empfangen; eine Taktsequenz des voreilenden Signals zu bestimmen, eine Taktsequenz des nacheilenden Signals zu bestimmen, und ein gemitteltes Taktsignal zu erzeugen, das eine Taktsequenz aufweist, die in der Mitte zwischen der Taktsequenz des voreilenden Signals und der Taktsequenz des nacheilenden Signals liegt; und einen auf dem Speichermodul (204) befindlichen Terminierungswiderstand (236) an dem Ende der Taktsignalleiterbahn (202), um das Taktsignal zu terminieren, nachdem die Speichervorrichtung (214, 218, 222) sowohl das voreilende als auch das nacheilende Taktsignal (212, 228) empfangen hat.
  2. Vorrichtung nach Anspruch 1, wobei die Taktsignalleiterbahn (202) durch eine eine Schleife aufweisende Leiterbahn (226) zwischen einem Voreilungstaktsignaleingang (216, 220, 224) an der Speichervorrichtung (214, 218, 222) und einem Nacheilungstaktsignaleingang (230, 232, 234) an der Speichervorrichtung (214, 218, 222) verläuft.
  3. Vorrichtung nach Anspruch 2, wobei das Speichermodul (204) ein Inline-Speichermodul ist, und wobei das Inline-Speichermodul betriebsfähig ist, um: die Speichervorrichtung (214, 218, 222) an eine Leiterplatte (210) zu koppeln; und die Taktsignalleiterbahn (202) zu umfassen, die von der Leiterplatte (210) zu der Speichervorrichtung (214, 218, 222) verläuft.
  4. Vorrichtung nach Anspruch 3, wobei die Taktsignalleiterbahn (202) ferner betriebsfähig ist, um: das Taktsignal von der Leiterplatte (210) zu dem Voreilungstaktsignaleingang (216, 220, 224) an der Speichervorrichtung (214, 218, 222) zu leiten; das Taktsignal von dem Voreilungstaktsignaleingang (216, 220, 224) an der Speichervorrichtung (214, 218, 222) durch die eine Schleife aufweisende Leiterbahn (226) zu dem Nacheilungstaktsignaleingang (230, 232, 234) an der Speichervorrichtung (214, 218, 222) zu leiten; und das Taktsignal von dem Nacheilungstaktsignaleingang (230, 232, 234) an der Speichervorrichtung (214, 218, 222) zu dem Terminierungswiderstand (236) zu leiten.
  5. Vorrichtung nach Anspruch 3, wobei das Inline-Speichermodul ferner betriebsfähig ist, um zwei oder mehr Speichervorrichtungen (214, 218, 222) mit der Leiterplatte (210) zu verbinden.
  6. Vorrichtung nach Anspruch 5, wobei die zwei oder mehr Speichervorrichtungen (213, 218, 222) ferner betriebsfähig sind, um jeweils ein gemitteltes Taktsignal zu erzeugen, das synchron zu wenigstens einem anderen Signal ist.
  7. Vorrichtung nach Anspruch 2, wobei die Taktsignalleiterbahn (202) ferner betriebsfähig ist, um: das Taktsignal von einer Leiterplatte (210) zu dem Voreilungstaktsignaleingang (216, 220, 224) an der Speichervorrichtung (214, 218, 222) zu leiten; das Taktsignal von dem Voreilungstaktsignaleingang (216, 220, 224) an der Speichervorrichtung (214, 218, 222) durch die eine Schleife aufweisende Leiterbahn (226) zu dem Nacheilungstaktsignaleingang (230, 232, 234) an der Speichervorrichtung (214, 218, 222) zu leiten; und das Taktsignal von dem Nacheilungstaktsignaleingang (230, 232, 234) an der Speichervorrichtung (214, 218, 222) zu dem Terminierungswiderstand (236) zu leiten.
  8. Vorrichtung nach Anspruch 7, wobei die Vorrichtung ferner betriebsfähig ist, um zwei oder mehr Speichervorrichtungen (214, 218, 222) mit der Leiterplatte (210) zu verbinden.
  9. Vorrichtung nach Anspruch 8, wobei die zwei oder mehr Speichervorrichtungen (214, 218, 222) ferner betriebsfähig sind, um jeweils ein gemitteltes Taktsignal zu erzeugen, wobei alle erzeugten gemittelten Taktsignale synchron sind.
  10. Vorrichtung nach Anspruch 1, welche weiter Folgendes umfasst: den MCH (200), der an die Taktsignalleiterbahn (202) gekoppelt ist; und wobei die Speichervorrichtung (214, 218, 222) an die Taktsignalleiterbahn (202) gekoppelt ist.
  11. Verfahren, umfassend: Empfangen eines Taktsignals von einem Memory Controller Hub (MCH) (200) ein erstes Mal als ein voreilendes Taktsignal und des Taktsignals ein zweites Mal als ein nacheilendes Taktsignal durch eine Speichervorrichtung (214, 218, 222), wobei sich die Speichervorrichtung auf einem Speichermodul (204) befindet, wobei das Speichermodul (204) von dem MCH getrennt ist; und Erzeugen eines gemittelten Taktsignals durch die Speichervorrichtung (214, 218, 222), durch ein Bestimmen einer Taktsequenz des voreilenden Taktsignals; Bestimmen einer Taktsequenz des nacheilenden Taktsignals; und Erzeugen eines gemittelten Taktsignals, das eine Taktsequenz aufweist, die in der Mitte zwischen der Taktsequenz des voreilenden Taktsignals und der Taktsequenz des nacheilenden Taktsignals liegt, Terminieren des Taktsignals mit einem Terminierungswiderstand (236), nachdem die Speichervorrichtung (214, 218, 222) sowohl das voreilende als auch das nacheilende Taktsignal empfangen hat, wobei sich der Terminierungswiderstand (236) auf dem Speichermodul (204) befindet.
  12. Verfahren nach Anspruch 11, wobei das voreilende Taktsignal und das nacheilende Taktsignal aus einem einzelnen Taktsignal hergeleitet werden, das an unterschiedlichen Punkten entlang einer einzigen Taktsignalleiterbahn (202) abgegriffen wird.
  13. Verfahren nach Anspruch 12, wobei das Speichermodul (204) ein Inline-Speichermodul ist, und wobei das Verfahren ferner ein Eingeben des Taktsignals in eine oder mehrere Speichervorrichtungen (214, 218, 222), die an dem Inline-Speichermodul angeordnet sind, umfasst.
  14. Verfahren nach Anspruch 13, ferner umfassend: Empfangen (402) des Taktsignals als das voreilende Taktsignal durch die Speichervorrichtung oder Speichervorrichtungen (214, 218, 222); Empfangen (404) des Taktsignals als das nacheilende Taktsignal durch die Speichervorrichtung oder Speichervorrichtungen (214, 218, 222).
  15. Verfahren nach Anspruch 14, ferner umfassend: Erzeugen (406) eines gemittelten Taktsignals für jede Speichervorrichtung (214, 218, 222) durch Mitteln des voreilenden Taktsignals und des nacheilenden Taktsignals, das jeder Speichervorrichtung (214, 218, 222) zugeordnet ist.
  16. Verfahren nach Anspruch 11, wobei die Speichereinrichtung (214, 218, 222) eine erste Speichervorrichtung ist, wobei das Speichermodul (204) die erste Speichervorrichtung und eine zweite Speichervorrichtung aufweist, wobei das Verfahren weiter ein Empfangen des Taktsignals ein erstes Mal als das voreilende Signal und des Taktsignals ein zweites Mal als das nacheilende Taktsignal bei der zweiten Speichervorrichtung umfasst, wobei das gemittelte Taktsignal der ersten Speichervorrichtung und das gemittelte Taktsignal der zweiten Speichervorrichtung synchron sind, und wobei das Terminieren des Taktsignals ein Terminieren des Taktsignals mit dem Terminierungswiderstand (236) umfasst, nachdem die erste und die zweite Speichervorrichtung sowohl das voreilende als auch das nacheilende Taktsignal empfangen haben.
  17. Verfahren nach Anspruch 16, wobei das gemittelte Taktsignal der ersten Speichervorrichtung und das gemittelte Taktsignal der zweiten Speichervorrichtung ferner ein Paar von Taktsignalen mit derselben relativen Phase umfassen.
DE112005002333.8T 2004-09-24 2005-09-13 Reaktionszeitnormierung durch ausgleichen voreilender und nacheilender Takte Expired - Fee Related DE112005002333B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/949,053 US7324403B2 (en) 2004-09-24 2004-09-24 Latency normalization by balancing early and late clocks
US10/949,053 2004-09-24
PCT/US2005/032927 WO2006036569A2 (en) 2004-09-24 2005-09-13 Latency normalization by balancing early and late clocks

Publications (2)

Publication Number Publication Date
DE112005002333T5 DE112005002333T5 (de) 2007-08-16
DE112005002333B4 true DE112005002333B4 (de) 2015-04-09

Family

ID=35453666

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112005002333.8T Expired - Fee Related DE112005002333B4 (de) 2004-09-24 2005-09-13 Reaktionszeitnormierung durch ausgleichen voreilender und nacheilender Takte

Country Status (7)

Country Link
US (1) US7324403B2 (de)
KR (1) KR100918666B1 (de)
CN (1) CN101027624A (de)
DE (1) DE112005002333B4 (de)
GB (1) GB2432692B (de)
TW (1) TWI310893B (de)
WO (1) WO2006036569A2 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7751274B2 (en) * 2006-09-05 2010-07-06 Intel Corporation Extended synchronized clock
US9628095B1 (en) * 2012-09-05 2017-04-18 Altera Corporation Parameterizable method for simulating PLL behavior
US9225344B2 (en) * 2013-01-16 2015-12-29 Altera Corporation Methods and apparatus for aligning clock signals on an integrated circuit
US10211939B2 (en) 2013-06-27 2019-02-19 Napatech A/S Apparatus and a method for determining a point in time
US10929290B2 (en) * 2016-12-31 2021-02-23 Intel Corporation Mechanism for providing reconfigurable data tiers in a rack scale environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5361277A (en) * 1988-04-27 1994-11-01 Alberta Telecommunications Research Centre Method and apparatus for clock distribution and for distributed clock synchronization

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998262A (en) * 1989-10-10 1991-03-05 Hewlett-Packard Company Generation of topology independent reference signals
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
JPH0512223A (ja) 1991-07-05 1993-01-22 Fujitsu Ltd 並列計算機のクロツク系
DE4345604B3 (de) * 1992-03-06 2012-07-12 Rambus Inc. Vorrichtung zur Kommunikation mit einem DRAM
GB9411602D0 (en) * 1994-06-09 1994-08-03 Inmos Ltd Pulse generation
FI101833B (fi) * 1994-07-13 1998-08-31 Nokia Telecommunications Oy Menetelmä ja järjestelmä kaapelointiviiveen automaattiseksi kompensoim iseksi kellosignaalin jakelujärjestelmässä
US5896055A (en) * 1995-11-30 1999-04-20 Matsushita Electronic Industrial Co., Ltd. Clock distribution circuit with clock branch circuits connected to outgoing and return lines and outputting synchronized clock signals by summing time integrals of clock signals on the outgoing and return lines
US6150866A (en) * 1997-04-01 2000-11-21 Fujitsu Limited Clock supplying circuit and integrated circuit device using it
US6330627B1 (en) * 1998-01-20 2001-12-11 Kabushiki Kaisha Toshiba System for fast data transfer between memory modules and controller using two clock lines each having a go line portion and a return line portion
JP3727778B2 (ja) * 1998-05-07 2005-12-14 株式会社東芝 データ高速転送同期システム及びデータ高速転送同期方法
US6647506B1 (en) * 1999-11-30 2003-11-11 Integrated Memory Logic, Inc. Universal synchronization clock signal derived using single forward and reverse direction clock signals even when phase delay between both signals is greater than one cycle
JP3498069B2 (ja) * 2000-04-27 2004-02-16 Necエレクトロニクス株式会社 クロック制御回路および方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5361277A (en) * 1988-04-27 1994-11-01 Alberta Telecommunications Research Centre Method and apparatus for clock distribution and for distributed clock synchronization

Also Published As

Publication number Publication date
KR20070045341A (ko) 2007-05-02
DE112005002333T5 (de) 2007-08-16
US7324403B2 (en) 2008-01-29
TW200625057A (en) 2006-07-16
WO2006036569A2 (en) 2006-04-06
TWI310893B (en) 2009-06-11
KR100918666B1 (ko) 2009-09-22
GB0700387D0 (en) 2007-02-14
WO2006036569A3 (en) 2006-06-08
US20060067155A1 (en) 2006-03-30
CN101027624A (zh) 2007-08-29
GB2432692B (en) 2008-07-02
GB2432692A (en) 2007-05-30

Similar Documents

Publication Publication Date Title
DE10036934B4 (de) Hauptplatine
DE19580707C2 (de) PCI-ZU-ISA-Interrupt-Protokoll-Konverter und -Auswahlmechanismus
DE19860650B4 (de) Synchrone Halbleiter-Speichervorrichtung mit einer Chip-Satz-Speichersteuervorrichtung mit Datenausblend-Maskenfunktion
DE60308183T2 (de) Pufferanordnung für speicher
DE112005002261B4 (de) Gepufferter kontinuierlicher Mehrpunkt-Taktring
DE19915398B4 (de) Verfahren zum Einstellen von Verzögerungszeiten einer Mehrzahl von Anschlusskarten in einem IC-Testgerät
DE4017902C2 (de)
DE19882853B3 (de) Verfahren und Steuereinrichtung zum automatischen Korrigieren von in einem Speichersubsystem erfassten Fehlern und Computersystem, das eine solche Steuereinrichtung aufweist
DE10302128B3 (de) Pufferverstärkeranordnung
DE102006035612B4 (de) Speicherpuffer, FB-DIMM und Verfahren zum Betrieb eines Speicherpuffers
DE10212642A1 (de) Speichersteuerung mit 1X/MX-Lesefähigkeit
DE69726302T2 (de) Busschnittstellensteuerungsschaltung
DE102010013668A1 (de) Aktives Training von Speicherbefehl-Timing
DE10153657A1 (de) Anordnung zur Datenübertragung in einem Halbleiterspeichersystem und Datenübertragungsverfahren dafür
DE112005002333B4 (de) Reaktionszeitnormierung durch ausgleichen voreilender und nacheilender Takte
DE10210904A1 (de) Speichermodul, zugehöriges Speichersystem und Taktsignalerzeugungsverfahren
DE10125724B4 (de) Speichersystem, Speicherbauelement und Speicherdatenzugriffsverfahren
DE102008052466A1 (de) Speichersystem mit erweiterter Speicherdichtefähigkeit
EP0114268B1 (de) Schaltkreis-Baustein
DE102016206170B4 (de) Serielle draht-debug-brücke
DE19581689B4 (de) Einrichtung und Verfahren zum Erhöhen der Burst-Rate von EDO-DRAMs in einem Computersystem
DE102005009806A1 (de) Pufferbaustein für ein Speichermodul, Speichermodul und Speichersystem
DE60015939T2 (de) Verfahren und schaltung um an zwei enden getakten daten zu empfangen
DE102004022347B4 (de) Speichersystem mit Motherboard und zugehöriges Montageverfahren
DE102006012659A1 (de) System und Verfahren zum Reduzieren der Speicherlatenz bei mit einem Bus verbundenen Mikroprozessorsystemen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G11C 7/22 AFI20050913BHDE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee