DE102012205613A1 - Arbeitszyklus-Verzerrungsberichtigung - Google Patents

Arbeitszyklus-Verzerrungsberichtigung Download PDF

Info

Publication number
DE102012205613A1
DE102012205613A1 DE102012205613A DE102012205613A DE102012205613A1 DE 102012205613 A1 DE102012205613 A1 DE 102012205613A1 DE 102012205613 A DE102012205613 A DE 102012205613A DE 102012205613 A DE102012205613 A DE 102012205613A DE 102012205613 A1 DE102012205613 A1 DE 102012205613A1
Authority
DE
Germany
Prior art keywords
duty cycle
burst
signals
dqs
data
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.)
Granted
Application number
DE102012205613A
Other languages
English (en)
Other versions
DE102012205613B4 (de
Inventor
Kyu-hyoun Kim
Paul Rudrud
Jacob D. Sloat
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102012205613A1 publication Critical patent/DE102012205613A1/de
Application granted granted Critical
Publication of DE102012205613B4 publication Critical patent/DE102012205613B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/156Arrangements in which a continuous pulse train is transformed into a train having a desired pattern
    • H03K5/1565Arrangements in which a continuous pulse train is transformed into a train having a desired pattern the output pulses having a constant duty cycle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

Korrektur der Arbeitszyklusverzerrung von DQ- und DQS-Signalen zwischen einem Speicher-Controller und einem Speicher wird ausgeführt durch das Bestimmen eines Arbeitszyklus-Berichtigungsfaktors. Die Arbeitszyklusverzerrung wird berichtigt, indem der Arbeitszyklus-Berichtigungsfaktor auf die Mehrzahl differenzieller DQS-Signale angewendet wird. Die Arbeitszyklusverzerrung wird über eine Mehrzahl von differenziellen DQS-Signalen hinweg berichtigt, die zwischen dem Speicher-Controller und dem Burst-Speicher ausgetauscht werden.

Description

  • HINTERGRUND
  • Vorliegende Erfindung bezieht sich allgemein auf Computer-Speicher, und vor allem auf die Berichtigung von Arbeitszyklusverzerrungen in DDR-Speichersystemen (DDR, Double Data Rate).
  • In einem DDR-Speichersystem werden Daten in Wellenform über einen DQ-Kanal als Datenabfrage (Data Query, DQ) übermittelt, wobei die HIGH-Hälfte der Welle ein binäres 1 und die LOW-Hälfte der Welle ein binäres 0 darstellt. Ein DDR-Speicher arbeitet als Burst-Speichersystem. Burst-Speichersysteme arbeiten nicht im Stabiltaktbetrieb mit gleichbleibender Frequenz. Stattdessen wird ein Datenabfrageimpuls (Data Query Strobe, DQS) als Welle ausgegeben, um anzuzeigen, dass Daten über den DQ-Kanal übermittelt werden. Die Wellenform der Welle wird als Arbeitszyklus bezeichnet. Der Arbeitszyklus des DQS muss mit den Informationen in der DQ aufeinander abgestimmt werden. Die Abstimmung der DQ mit dem DQS schafft ein Datenauge, das markiert, wann die Daten von den Signalspeichern des Speichersystems zu erfassen sind. Schwankungen bezüglich der DQ und dem DQS können den Arbeitszyklus beeinträchtigen, wodurch die Wellen falsch ausgerichtet werden und zu einer Verengung des Datenauges führen. Mit der Verengung des Datenauges nimmt die Wahrscheinlichkeit des Falschlesens der DQ zu. Eine der Schwankungen in der DQ und dem DQS wird als Arbeitszyklusverzerrung bezeichnet.
  • Arbeitszyklusverzerrung kommt bei modernen DDR-Speichern in den Lese- und Schreibpfaden sowohl der DQ als auch des DQS vor. Arbeitszyklusverzerrung in den Lese- und Schreibpfaden wird in einem DDR-Speichersystem durch den Treiber des Speicher-Controller, den Kanal, Empfänger und/oder digitale Signalspeicher erzeugt. Einer der üblichen Verfahren zum Ausrichten eines Bus oder Bytes der DQ-Bits besteht in dem Ändern der Empfänger-Referenzspannung (Receivers Reference Voltage, VREF) und in dem Beobachten, welcher Wert die größte Augenöffnung erbringt, wenn die interne Verzögerung im Verhältnis DQ zu DQS verändert wird. Dieses Verfahren findet nicht nur die größte Öffnung im Datenauge, sondern gleicht auch die Datenpfad-Arbeitszyklusverzerrung der DQ aus. Eine DQ-Arbeitszyklusverzerrung nach dem DQ-Empfänger und ganz bis hin zum ersten Signalspeicher wird durch Justieren der VREF ausgeglichen. Die DQ-Arbeitszyklusverzerrung, die vom Taktgeber herrührt, wird jedoch durch dieses Verfahren nicht ausgeglichen (oder durch Ausrichten beseitigt).
  • Während die Arbeitszyklusverzerrung in der DQ normalerweise durch Ausrichten beseitigt werden kann (vgl. hierzu obige Ausführungen), kann der DQS eine Arbeitszyklusverzerrung haben, die den Empfangsspielraum vermindert.
  • Daher ist es eine Zielsetzung der vorliegenden Erfindung, eine Taktung der Signale für ein Burst-Speichersystem zu verbessern.
  • Diese Zielsetzung wird erreicht durch ein Arbeitszyklus-Berichtigungssystem, ein Burst-Speichersystem, ein Verfahren zum Berichtigen von Arbeitszyklusverzerrungen in einem Burst-Speichersystem sowie durch ein Computerprogrammprodukt zum Berichtigen von Arbeitszyklusverzerrungen in einem Burst-Speichersystem.
  • KURZDARSTELLUNG
  • Eine Ausführungsform ist ein Arbeitszyklus-Berichtigungssystem, das unter anderem ein Arbeitszyklus-Berichtigungsmodul umfasst, welches sich im Datenaustausch mit einem Speicher-Controller und einem Burst-Speicher befindet. Das Arbeitszyklus-Berichtigungsmodul ist so eingestellt, dass es einen Arbeitszyklus-Berichtigungsfaktor ermittelt. Das Arbeitszyklus-Berichtigungsmodul ist weiterhin so eingestellt, dass es die Arbeitszyklusverzerrung bei einer Mehrzahl von differenziellen DQS-Signalen berichtigt, die zwischen Speicher-Controller und Burst-Speicher ausgetauscht werden. Das Arbeitszyklus-Berichtigungsmodul berichtigt die Arbeitszyklusverzerrung, indem es den Arbeitszyklus-Berichtigungsfaktor auf die Mehrzahl differenzieller DQS-Signale anwendet.
  • Eine andere Ausführungsform ist ein Burst-Speichersystem, das unter anderem ein Arbeitszyklus-Berichtigungsmodul umfasst, welches sich im Datenaustausch mit einem Speicher-Controller und einem Burst-Speicher befindet, wobei das Arbeitszyklus-Berichtigungsmodul so eingestellt ist, dass es eine Arbeitszyklusverzerrung bei einer Mehrzahl von Signalen ermittelt, die zwischen dem Speicher-Controller und dem Burst-Speicher ausgetauscht werden. Die Mehrzahl der Signale umfasst ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen. Das Burst-Speichersystem berichtigt ebenfalls die Arbeitszyklusverzerrung in der Mehrzahl von Signalen zwischen dem Speicher-Controller und dem Burst-Speicher. Das Burst-Speichersystem berichtigt die Arbeitszyklusverzerrung durch Abgleichen des Datensignals und der Mehrzahl von Burst-Datenimpulssignalen.
  • Eine weitere Ausführungsform ist ein Verfahren zum Berichtigen einer Arbeitszyklusverzerrung in einem Burst-Speichersystem. Das Verfahren beinhaltet ein Bestimmen einer Arbeitszyklusverzerrung in einer Mehrzahl von Signalen zwischen einem Speicher-Controller und einem Burst-Speicher. Die Mehrzahl der Signale umfasst ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen. Darüber hinaus beinhaltet das Verfahren ein Berichtigen der Arbeitszyklusverzerrung in der Mehrzahl von Signalen zwischen Speicher-Controller und Burst-Speicher. Das Verfahren berichtigt die Arbeitszyklusverzerrung durch Abgleichen des Datensignals und der Mehrzahl von Burst-Datenimpulssignalen.
  • Eine weitere Ausführungsform ist ein Computerprogrammprodukt zum Berichtigen von Arbeitszyklusverzerrungen in einem Burst-Speichersystem, wobei das Computerprogrammprodukt ein von einem Verarbeitungsschaltkreis auslesbares, physisches Speichermedium umfasst, das Speicheranweisungen für das Ausführen eines Verfahrens speichert. Das Verfahren beinhaltet das Bestimmen einer Arbeitszyklusverzerrung in einer Mehrzahl von Signalen zwischen einem Speicher-Controller und einem Burst-Speicher. Die Mehrzahl der Signale umfasst ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen. Darüber hinaus beinhaltet das Verfahren das Berichtigen der Arbeitszyklusverzerrung in der Mehrzahl von Signalen zwischen dem Speicher-Controller und dem Burst-Speicher. Das Verfahren berichtigt die Arbeitszyklusverzerrung durch Abgleichen des Datensignals und der Mehrzahl von Burst-Datenimpulssignalen.
  • Sonstige Ausführungsformen und Aspekte – darunter solche gemäß den zugehörigen Ansprüchen – werden im vorliegenden Dokument beschrieben und sind als Bestandteil der beanspruchten ”Erfindung anzusehen. Zum besseren Verständnis der Erfindung mit ihren Vorteilen und Eigenschaften werden Sie auf die Beschreibung und auf die Zeichnungen verwiesen.
  • KURZBESCHREIBUNG DER VERSCHIEDENEN ABBILDUNGEN DER ZEICHNUNGEN
  • Der als die Erfindung anzusehende Gegenstand wird in den Ansprüchen, die sich am Schluss der Beschreibung finden, im Besonderen dargestellt und im Einzelnen beansprucht.. Die vorstehend beschriebenen und sonstigen Eigenschaften sowie Vorteile der Erfindung werden ersichtlich aus der folgenden ausführlichen Beschreibung, wobei Letztere in Verbindung mit den beigefügten Zeichnungen zu betrachten ist, in denen:
  • 1 ein Blockschaltbild einer in einer Ausführungsform vorzufindenden Schreibvorgang-Datenübermittlung darstellt;
  • 2 ein Blockschaltbild eines in einer Ausführungsform vorzufindenden Schreibvorgang-Burst-Speichersystems mit einer Arbeitszyklus-Verzerrungsberichtigung darstellt;
  • 3 ein Blockschaltbild einer in einer Ausführungsform vorzufindenden Lesevorgang-Datenübermittlung darstellt;
  • 4 ein Blockschaltbild eines in einer Ausführungsform vorzufindenden Lesevorgang-Burst-Speichersystems mit einer Arbeitszyklus-Verzerrungsberichtigung darstellt;
  • 5 ein Blockschaltbild eines in einer weiteren Ausführungsform vorzufindenden Lesevorgang-Burst-Speichersystems mit Arbeitszyklus-Verzerrungsberichtigung darstellt;
  • 6 ein Blockschaltbild eines in einer weiteren Ausführungsform vorzufindenden Lesevorgang-Burst-Speichersystems mit Arbeitszyklus-Verzerrungsberichtigung darstellt;
  • 7 einen in einer Ausführungsform vorzufindenden verfahrensmäßigen Ablauf für die Berechnung des zum Berichtigen der Arbeitszyklusverzerrung erforderlichen Offset darstellt;
  • 8 einen in einer weiteren Ausführungsform für einen Lesevorgang vorzufindenden verfahrensmäßigen Ablauf für die Berechnung des zum Berichtigen der Arbeitszyklusverzerrung erforderlichen Offset darstellt; und
  • 9 einen in einer weiteren Ausführungsform für einen Schreibvorgang vorzufindenden verfahrensmäßigen Ablauf für die Berechnung des zum Berichtigen der Arbeitszyklusverzerrung erforderlichen Offset darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Erfindung zielen auf neue Verfahren zum Vermindern oder Beseitigen der Arbeitszyklusverzerrung von Abfrageimpulsen (DQS). In einer Ausführungsform wird die Arbeitszyklusberichtigung sowohl für Lese- als auch für Schreibpfade des DQS in einem DDR-Speicher-Controller (DDR, Double Data Rate) umgesetzt. Die Arbeitszyklusberichtigung wird verwendet, um eine etwaige DQS-Arbeitszyklusverzerrung auszugleichen, die in Gestalt eines differenziellen DQS-Signals zwischen einem Empfänger und einem ersten Signalspeicher des DDR-Speichers und zwischen dem Empfänger und dem ersten Signalspeicher des Speicher-Controller vorhanden ist. Durch Einbringen eines Arbeitszyklus-Berichtigungsmoduls in den Pfad des DQS wird der Arbeitszyklus des differenziellen Signals ausgeblendet und kann so ausgebildet werden, dass für den DQS-Datenauge-Empfangsspielraum eine größere Abfrage (DQ) erzielt wird. Nach Ausrichten sämtlicher DQS-Lese- und Schreibpfade sind die Einrichtungs- und Haltezeiten sowohl der ansteigenden als auch der abfallenden DQS-Flankenränder gleich (oder annähernd gleich), was zu einem größeren Datenauge führt. Wie dem Fachmann bekannt ist, erhöht das Vorhandensein eines größeren Datenauges die Geschwindigkeit, mit der ein bestimmtes Signal, ein bestimmter Bus, oder eine bestimmte Schnittstelle arbeitet.
  • 1 stellt ein Blockschaltbild einer Schreibvorgang-Datenübermittlung über ein dem aktuellen Stand der Technik entsprechendes Burst-Speichersystem dar. Ein Taktgeber 102 stellt der Übertragungslogik 104 für den Datenschreibvorgang ein Zeittaktsignal bereit. Die Übertragungslogik 104 übermittelt eine DQ und einen DQS über den DQ-Kanal 109 und über einen DQS-Kanal 106 an einen DQ-Empfänger 108 und an einen DQS-Empfänger 110. Der DQ-Empfänger 108 übermittelt Daten (DQ) an Signalspeicher 114 und 116. Ein DQS-Empfänger 110 übermittelt ein Taktsignal (DQS) an Signalspeicher 114 und 116. Eine Arbeitszyklusverzerrung 118 verengt die DQ- und DQS-Augenöffnungen am DQS-Empfänger 110 und am DQ-Empfänger 108 und wird an Signalspeicher 114 und 116 übermittelt. Durch die Übertragungslogik 104 kann eine Arbeitszyklusverzerrung 118 in die Übertragungs- und Empfangspfade Eingang finden, aber auch durch ein Schrägzueinanderstehen der ansteigenden und/oder abfallenden Flankenränder des Signals, das zwischen den Übertragungs- und Empfangspfaden des Speichersystems übertragen wird, die Arbeitszyklusverzerrung 118 im DQS-Empfänger 110 und im DQ-Empfänger 108, der Übermittlungspfad zwischen dem DQS-Empfänger 110 und dem DQ-Empfänger 108 zu Signalspeichern 114 und 116, asymmetrisches Verhalten in den Signalspeichern 114 und 116, atmosphärische Bedingungen wie Temperatur und externe Spannung, die Einfluss auf physische Bestandteile des Speichersystems haben, sowie andere in der Fachdisziplin bekannte Ursachen.
  • Daten (DQ) werden für den Datenschreibvorgang zwischen dem Speicher-Controller 150 und dem Speicher 151 über den DQ-Kanal 109 übermittelt. Die DQ stellt durch ein Verändern der an dem DQ-Kanal 109 anliegenden Spannung ein binäres Datensignal bereit, wodurch eine DQ-Wellenform 170 erzeugt wird, wie am DQ-Empfänger 108 zu sehen ist. Der Speicher 151 klinkt das richtige DQ-Signal mit den unterschiedlichen DQS- und DQS#-Signalen ein. DQS und DQS# arbeiten in Übertragungsbündeln, wobei jedes Übertragungsbündel einen bestimmten Arbeitszyklus aufrechterhält. Um das Datenauge zu maximieren, mittelt eine DQS-Wellenform 171 ihre ansteigenden und abfallenden Flankenränder mit der DQ-Wellenform 170 aus. Da diese Wellenformen ansteigen und abfallen, bildet sich ein Zeitraum einer Übergangszeit zwischen den HIGH und LOW-Signalen heraus. Dieser Zeitraum wird als DQS-Auge bezeichnet. Ein breites DQS-Auge, wie beispielsweise das DQS-Auge 180 der 1, ermöglicht es dem Speicher 151, die Daten genauer zu ermitteln und demzufolge zu erfassen. Ist der Arbeitszyklus des DQS und DQS# nicht ideal, verengt sich das DQS-Auge, und es können Fehler in die Übermittlung und in den Empfang der DQ Eingang finden.
  • Vielfältige Erscheinungen, wie zuvor beschrieben, beeinträchtigen den Arbeitszyklus des DQS für Datenschreibvorgänge. 1 zeigt ein typisches verzerrtes DQS-Signal 172 mit einem verengten DQS-Auge 181. Das verzerrte DQS-Signal 172 verbreitet sich durch den DQS-Empfänger 110 und ergibt so ein verzerrtes digitales Signal 173. Wird das verzerrte Digitalsignal 173 verwendet, um die DQ in Signalspeichern 114 und 116 zu takten, ist ein geringerer Empfangsspielraum zu beobachten, und das Ergebnis ist ein engeres Datenfenster und eine größere Fehlermöglichkeit.
  • 2 zeigt ein Blockschaltbild eines Burst-Speichersystems mit Arbeitszyklus-Verzerrungsberichtigung, das einer Ausführungsform entspricht. Das Burst-Speichersystem der 2 umfasst ein Arbeitszyklus-Berichtigungsmodul 202 zwischen der Übertragungslogik 104 und dem DQS-Treiber 206. In einer Ausführungsform wird das Arbeitszyklus-Berichtigungsmodul 202 eingestellt, indem dem Register 205 vorgegeben wird, die DQS-Arbeitszyklusverzerrung zu verringern, die an den Signalspeichern 114 und 116 empfangen wird. Die Anwendung der korrekten Registereinstellungen auf das Arbeitszyklus-Berichtigungsmodul 202 führt zu einem größeren DQS-Auge bei der Übermittlung von DQ (Daten) und DQS (Taktgeber). Es kommt daher zu weniger Fehlern wegen des größeren Empfangsspielraumes.
  • Wie zuvor beschrieben kommt es ohne Arbeitszyklusberichtigung zu einem verzerrten DQS-Signal 172. Das Signal 210 stellt einen DQS und DQS# dar, wie er zu beobachten ist, wenn die passende Anzahl von Registereinstellungen auf das Arbeitszyklus-Berichtigungsmodul 202 angewendet wird. Das Signal 211 ist das DQS-Signal, wie es von den Signalspeichern 114 und 116 erkannt wird.
  • 3 zeigt ein Blockschaltbild einer Lesevorgang-Datenübermittlung, die über ein Burst-Speichersystem erfolgt. Ein Taktgeber 302 übermittelt ein Zeittaktsignal für den Datenlesevorgang an die Übertragungslogik 304. Die Übertragungslogik 304 übermittelt die DQ und den DQS über den DQ-Kanal 309 und den DQS-Kanal 308 an einen DQ-Empfänger 312 und an einen DQS-Empfänger 310, um die Daten in der in der Fachdisziplin bekannten Weise einzulesen. Der DQ-Empfänger 312 übermittelt Daten (DQ) an Signalspeicher 314 und 316. Ein DQS-Empfänger 310 übermittelt einen Taktgeber (DQS) durch eine einzelne 90-Grad (1/2 eines DQ-Bit) Verzögerungseinheit 311. an Signalspeicher 314 und 316. Eine Arbeitszyklusverzerrung 318 verengt die DQ- und DQS-Augenöffnungen am DQS-Empfänger 310 und am DQ-Empfänger 312, und die DQS- und DQS#-Signale werden an Signalspeicher 314 und 316 übermittelt. Eine Arbeitszyklusverzerrung 318 kann durch die Übertragungslogik 304 in die Übertragungs- und Empfangspfade Eingang finden, aber auch durch ein Schrägzueinanderstehen der ansteigenden und/oder abfallenden Flankenränder des Signals, das Übertragen zwischen den Übertragungs- und Empfangspfaden des Speichersystems übertragen wird, eine Arbeitszyklusverzerrung im DQS-Empfänger 310 und im DQ-Empfänger 312, dem Übermittlungspfad zwischen dem DQS-Empfänger 310 und dem DQ-Empfänger 312 zu Signalspeichern 314 und 316, asymmetrischem Verhalten in den Signalspeichern 314 und 316, atmosphärischen Bedingungen wie Temperatur und externe Spannung, die Einfluss auf die physischen Bestandteile des Speichersystems haben, und anderen in der Fachdisziplin bekannte Ursachen.
  • Daten (DQ) werden für den Datenlesevorgang über den DQ-Kanal 309 zwischen dem Speicher 351 und dem Speicher-Controller 350 übermittelt. Die DQ stellt durch Verändern der an dem DQ-Kanal 309 anliegenden Spannung ein binäres Datensignal bereit, wodurch eine DQ-Wellenform 370 erzeugt wird, wie sie am DQ-Empfänger 312 zu erkennen und in der Fachdisziplin bekannt ist. Der Speicher-Controller 350 klinkt das richtige DQ-Signal mit den unterschiedlichen DQS- und DQS#-Signalen ein. Die DQS und DQS# arbeiten in Übertragungsbündeln, wobei jedes Übertragungsbündel einen bestimmten Arbeitszyklus aufrechterhält, wie in der Fachdisziplin bekannt ist. Eine ideale DQS-Wellenform 371 gleicht ihre ansteigenden und abfallenden Flankenränder mit der DQ-Wellenform 370 ab. Da die DQS-Wellenformen ansteigen und abfallen, bildet sich ein Zeitraum einer Übergangszeit zwischen den HIGH- und LOW-Signalen heraus. Dieser Zeitraum wird als das DQS-Auge 380 bezeichnet. Ein breites DQS-Auge, wie beispielsweise das DQS-Auge der 3, ermöglicht es dem Speicher-Controller 350, die Daten genauer zu ermitteln und demzufolge zu erfassen. Ist der Arbeitszyklus des DQS und DQS# nicht ideal, verengt sich das DQS-Auge, wodurch Fehler in die Übermittlung und in den Empfang der DQ Eingang finden können.
  • Vielfältige Erscheinungen, wie zuvor beschrieben, beeinträchtigen den Arbeitszyklus des DQS für Datenschreibvorgänge. 3 zeigt ein verzerrtes DQS-Signal 372 mit einem verengten DQS-Auge 381. Das verzerrte DQS-Signal 372 verbreitet sich durch den DQS-Empfänger 310 und die Verzögerungseinheit 311 und ergibt so ein verzerrtes digitales Signal 373. Wird das verzerrte Digitalsignal 373 verwendet, um die DQ in Signalspeichern 314 und 316 zu takten, ist ein geringerer Empfangsspielraum zu beobachten, und das Ergebnis ist ein engeres Datenfenster und eine größere Fehlermöglichkeit.
  • 4 zeigt ein Blockschaltbild eines Burst-Speichersystems mit Arbeitszyklus-Verzerrungsberichtigung, die einer Ausführungsform entspricht. Das Burst-Speichersystem der 4 umfasst ein Arbeitszyklus-Berichtigungsmodul 412 zwischen dem DQS-Empfänger 310 und der Verzögerungseinheit 311. In einer Ausführungsform wird das Arbeitszyklus-Berichtigungsmodul 412 eingestellt, indem dem Register 450 vorgegeben wird, die DQS-Arbeitszyklusverzerrung zu verringern, welche an Signalspeichern 314 und 316 empfangen werden. Die Anwendung der richtigen Registereinstellungen auf das Arbeitszyklus-Berichtigungsmodul 412 führt zu einem größeren DQS-Auge bei der Übermittlung von DQ (Daten) und DQS (Taktgeber). Es kommt daher zu weniger Fehlern wegen des größeren Empfangsspielraums.
  • Wie zuvor beschrieben kommt es ohne Arbeitszyklusberichtigung zu einem verzerrten DQS-, DQS#-Signal 472. Das Signal 473 stellt einen DQS und DQS# dar, wie er erkannt wird, wenn die passende Anzahl von Registereinstellungen auf das Arbeitszyklus-Berichtigungsmodul 412 vor der Verzögerungseinheit 311 angewendet werden. Das Signal 474 ist das DQS-Signal, wie es von den Signalspeichern 314 und 316 erkannt wird.
  • 5 zeigt ein Blockschaltbild eines Burst-Speichersystems mit Arbeitszyklus-Verzerrungsberichtigung, die einer Ausführungsform entspricht. In einer Ausführungsform umfasst das Burst-Speichersystem der 5 einen Arbeitszyklus-Berichtigungsempfänger 512 zwischen dem DQS-Kanal 308 und der Verzögerungseinheit 311. Der Arbeitszyklus-Berichtigungsempfänger 512 wird eingestellt, indem dem Register 550 vorgegeben wird, die DQS-Arbeitszyklusverzerrung zu verringern, welche an Signalspeichern 314 und 316 empfangen wird. In einer Ausführungsform verringert der Arbeitszyklus-Berichtigungsempfänger 512 basierend auf den Einstellungen im Register 550 die DQS-Arbeitszyklusverzerrung durch Beaufschlagung einer Versatzspannung oder Offset-Spannung auf die DQS- und DQS#-Signale. Die Anwendung der richtigen Registereinstellungen auf den Arbeitszyklus-Berichtigungsempfänger 512 führt zu einem größeren DQS-Auge bei der Übermittlung von DQ (Daten) und DQS (Taktgeber). Es kommt daher zu weniger Fehlern wegen des größeren Empfangsspielraums.
  • Wie zuvor beschrieben ist ohne Arbeitszyklusberichtigung ein verzerrtes DQS-, DQS#-Signal 572 vorhanden. Das Signal 573 zeigt den DQS und DQS# am Eingang des Arbeitszyklus-Berichtigungsempfängers 512, wie er erkannt wird, wenn die passende Anzahl von Registereinstellungen angewendet wird. Das Signal 574 ist das DQS-Signal, wie es am Arbeitszyklus-Berichtigungsempfängerausgang 512 vor der Verzögerungseinheit 311 erkannt wird. Das Signal 575 ist das DQS-Signal, beaufschlagt auf die Signalspeicher 314 und 316.
  • In einer Ausführungsform arbeitet der Arbeitszyklus-Berichtigungsempfänger 512 mit Beaufschlagung eines unterschiedlichen Offset auf beide Beine der DQS- und DQS#-Eingänge. Die Tatsache, dass die DQS-, DQS#-Signale eine endliche Anstiegs- und Abfallzeit haben, ermöglicht es dem beaufschlagten Offset, den Punkt zu ändern, an dem jedes einzelne der unterschiedlichen Signale gleich ist, und demzufolge Arbeitszyklusverzerrungen zu berichtigen.
  • 6 zeigt ein Blockschaltbild eines Burst-Speichersystems mit Arbeitszyklus Verzerrungsberichtigung, das einer Ausführungsform entspricht. In einer Ausführungsform umfasst das Burst-Speichersystem der 6 zwei der Arbeitszyklus-Berichtigung dienende Verzögerungseinheiten 601 und 602 zwischen dem DQS-Empfänger 310 und den Signalspeichern 314 und 316. In einer Ausführungsform sind die beiden Arbeitszyklus-Verzögerungseinheiten einstellbare Phasenschieber. Die beiden der Arbeitszyklusberichtigung dienenden Verzögerungseinheiten 601 und 602 werden eingestellt, indem einem Verzögerungssteuerungsregister 650 vorgegeben wird, die an den Signalspeichern 314 und 316 empfangene DQS-Arbeitszyklusverzerrung zu verringern. Die Anwendung der richtigen Registereinstellungen auf die beiden der Arbeitszyklusberichtigung dienenden Verzögerungseinheiten 601 und 602 führt zu einem größeren DQS-Auge bei der Übermittlung von DQ (Daten) und DQS (Taktgeber). Es kommt daher zu weniger Fehlern wegen des größeren Empfangsspielraums.
  • Wie zuvor beschrieben kommt es ohne Arbeitszyklusberichtigung zu einem verzerrten DQS-, DQS#-Signal 672. Das Signal 673 stellt ein DQS_R-Signal von der der Arbeitszyklusberichtigung dienenden Verzögerungseinheit 602 an den Signalspeicher 314 dar. Signalspeicher 314 erfasst das DQ-Signal nur an den ansteigenden Flankenrändern. Signal 673 stellt ein DQS_F-Signal von der der Arbeitszyklusberichtigung dienenden Verzögerungseinheit 601 an den Signalspeicher 316 dar. Signalspeicher 316 erfasst das DQ-Signal nur an den abfallenden Flankenrändern. Die Tatsache, dass Signalspeicher 314 die DQ nur an dem ansteigenden DQS-Flankenrand und Signalspeicher 316 die DQ nur an dem abfallenden DQS-Flankenrand erfasst, gestattet es, die der Arbeitszyklusberichtigung dienende Verzögerungseinheiten 601 und 602 unabhängig voneinander einzustellen. Die der Arbeitszyklusberichtigung dienende Verzögerungseinheit 602 kann durch das Verzögerungssteuerungsregister 650 so eingestellt werden, dass sein ansteigender Flankenrand in der Mitte des DQ-Auges liegt, und die der Arbeitszyklusberichtigung dienende Verzögerungseinheit 601 kann durch den Arbeitszyklus-Berichtigungsfaktor, der im Verzögerungssteuerungsregister 650 eingestellt wird, so eingestellt werden, dass sein abfallender Flankenrand in der Mitte des angrenzenden DQ-Auges liegt. Dies berichtigt die Arbeitszyklusverzerrung.
  • 7 stellt in einer Ausführungsform einen verfahrensmäßigen Ablauf zum Berechnen des dem Berichtigen der Arbeitszyklusverzerrung dienenden Versatzes (Offset) dar. Der verfahrensmäßige Ablauf der 7 wird durch einen Speicher-Controller, beispielsweise einen Speicher-Controller 350, ausgeführt. In einer weiteren Ausführungsform wird der verfahrensmäßige Ablauf der 7 durch ein Modul außerhalb des Speicher-Controller 350 ausgeführt, und die Ergebnisse der verschiedenen Offset-Bestimmungen werden im Register 550 der 5 gespeichert.
  • Am Block 702 wird das Datenauge für den ansteigenden Flankenrand des DQS gemessen. Der Mittelpunkt des Datenauges für den höchsten Abschnitt eines ansteigenden DQS-Flankenrandes (TR) wird berechnet. Am Block 704 wird das Datenauge für den abfallenden Flankenrand (TF) des DQS gemessen. Der Mittelpunkt des Datenauges für den tiefsten Abschnitt eines abfallenden DQS-Flankenrandes (TF) wird berechnet. Am Block 706 wird die Arbeitszyklusverzerrung des DQS als TR – TF berechnet. Am Block 708 werden die Registereinstellungen, die zum Berichtigen des DQS-Arbeitszyklus verwendet werden, auf der Grundlage der Berechnung der DQS-Arbeitszyklusverzerrung errechnet. Die Berechnung des geeigneten Arbeitszyklus-Berichtigungsfaktors, der in den Registereinstellungen eingestellt ist, würde von der besonderen Ausführungsform abhängen. 8 stellt in einer Ausführungsform einen verfahrensmäßigen Ablauf zum Berechnen der Einstellungen zum Berichtigen der Arbeitszyklusverzerrung für einen Lesevorgang dar. Am Block 802 wird die Berechnung der Lesevorgang-DQS-Berichtigung ausgelöst, und am Block 804 wird eine DQS-Minimaleinstellung zwecks Erstlesevorgang-Arbeitszyklusberichtigung (DCC) angewendet. In einer Ausführungsform wird dann am Block 806 ein Datenmuster in den Speicher 351 geschrieben, und die Verarbeitung wird am Block 808 weitergeführt, wo das Datenmuster aus dem Speicher 351 gelesen wird. Am Block 810 wird die Lesedaten-Augengröße gemessen und gespeichert. Am Block 812 wird, wenn die maximale Einstellung für die Lesevorgang-DQS-DCC nicht erreicht worden ist, die Einstellung der DQS-Lesevorgang-DCC in Block 814 erhöht, und der Speicher 351 wird erneut am Block 808 ausgelesen. Dieser Vorgang wird fortgesetzt, bis die maximale Einstellung der Lesevorgang-DCC am Block 812 erreicht worden ist, woraufhin die Verarbeitung hin zu Block 816 fortgesetzt wird. Am Block 816 werden die an Block 810 gespeicherten Lesevorgang-Datenaugenmessungen verglichen, und es wird die Lesevorgang-DCC-Einstellung angewendet, die zu der größten gemessenen Datenaugenöffnung oder zu der größten Lesevorgang-Augenöffnung gehört.
  • In einer Ausführungsform wird der Verfahrensablauf der 8 einmal ausgeführt, wenn das System initialisiert wird. In einer anderen Ausführungsform wird der Verfahrensablauf der 8 wiederkehrend ausgeführt, wenn der Speicher-Controller 350 beispielsweise feststellt, dass die Einstellungen nicht mehr gelten, und/oder wenn allgemein eine wiederkehrende Ausführung vorgesehen ist. In noch einer anderen Ausführungsform wird der Verfahrensablauf der 8 sowohl beim Systemstart als auch dann erneut ausgeführt, wenn der Speicher-Controller 350 feststellt, dass die Einstellungen nicht mehr gelten.
  • 9 stellt in einer Ausführungsform einen verfahrensmäßigen Ablauf zum Berechnen der Einstellungen zum Berichtigen der Arbeitszyklusverzerrung für einen Schreibvorgang dar. Am Block 902 wird die Berechnung der DQS-Schreibvorgang-Berichtigung ausgelöst, und am Block 904 wird eine DQS-Minimaleinstellung zwecks Erstschreibvorgang-Arbeitszyklusberichtigung (DCC) angewendet. Dann wird am Block 906 ein Datenmuster in den Speicher 351 geschrieben. Am Block 908 wird die Schreibvorgang-Datenaugengröße gemessen und gespeichert. Am Block 910 wird, wenn die maximale Einstellung für die Schreibvorgang-DQS-DCC nicht erreicht worden ist, die Einstellung für die DQS-Schreibvorgang-DCC in Block 912 erhöht, und am Block 906 wird der Speicher 351 erneut geschrieben. Dieser Vorgang wird fortgesetzt, bis am Block 910 die maximale Einstellung für die Schreibvorgang-DCC erreicht worden ist, woraufhin die Verarbeitung hin zu Block 914 fortgesetzt wird. Am Block 914 werden die in Block 908 gespeicherten Schreibvorgang-Datenaugenmessungen verglichen, und es wird die Schreibvorgang-DCC-Einstellung angewendet, die zu der größten gemessenen Datenaugenöffnung oder zu der größten Schreibvorgang-Augenöffnung gehört.
  • In einer Ausführungsform wird der Verfahrensablauf der 9 einmal ausgeführt, wenn das System initialisiert wird. In einer anderen Ausführungsform wird der Verfahrensablauf der 9 wiederkehrend ausgeführt, wenn der Speicher-Controller 350 beispielsweise feststellt, dass die Einstellungen nicht mehr gelten und/oder wenn allgemein eine wiederkehrende Ausführung vorgesehen ist. In noch einer anderen Ausführungsform wird der Verfahrensablauf der 9 sowohl beim Systemstart als auch dann erneut ausgeführt, wenn der Speicher-Controller 350 feststellt, dass die Einstellungen nicht mehr gelten.
  • Wenngleich die verschiedenen Figuren den Speicher-Controller und den Speicher als getrennte Module darstellen, enthält der Speicher 351 in einer Ausführungsform einen oder mehrere Speicher-Controller. In einer anderen Ausführungsform befindet sich der Speicher-Controller in oder auf einem Computer-Prozessor (nicht dargestellt). In weiteren Ausführungsformen ist der Speicher-Controller zu Datenaustauschzwecken mit einer Mehrzahl von Speichern, beispielsweise einem Speicher 351 verbunden. In weiteren Ausführungsformen enthält der Speicher 351 ein Speichermodul oder mehrere Speichermodule, wobei jedes einzelne der Speichermodule Speichereinheiten enthält. In weiteren Ausführungsformen enthält der Speicher 351 einen Hub für das Koordinieren des Eingangs und Ausgangs von Daten von und zu einem Speichermodul oder mehreren Speichermodulen und/oder einer/mehreren Speichereinheit(en).
  • Technische Auswirkungen und Vorteile umfassen eine verbesserte Zuverlässigkeit der Datenübertragung in Burst-Speichersystemen. Ein weiterer Vorteil liegt in dem Vermögen, beim Systemstart eine Kalibrierung hinsichtlich der Arbeitszyklusverzerrung vornehmen zu können, ohne dass eine zusätzliche Kalibrierung während des Systembetriebs erforderlich ist. Noch ein zusätzlicher Vorteil liegt in dem Vermögen, Anpassungen hinsichtlich der Arbeitszyklusverzerrung vornehmen zu können, ohne einen langfristig laufenden Taktgeber zu benötigen. Ein weiterer Vorteil liegt in dem Vermögen, in Burst-Speichersystemen Anpassungen hinsichtlich der Arbeitszyklusverzerrung auf der Grundlage von Umweltfaktoren vornehmen zu können.
  • Die hier verwendete Terminologie dient nur dem Zweck, besondere Ausführungsformen zu beschreiben, wobei es nicht beabsichtigt ist, hierdurch die Erfindung in ihrem Gegenstand einzuschränken. Die hier verwendeten Einzahlformen „ein”, „eine” und „der”, „die”, „das” verstehen sich jeweils auch als die Mehrzahlformen umfassend, es sei denn, der Zusammenhang verweist deutlich auf das Gegenteil. Es versteht sich weiterhin, dass die Begriffe „umfasst” und/oder „umfassend”, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein der angegebenen Eigenschaften, Ganzzahlen, Schritte, Vorgänge, Bestandteile und/oder Gruppen derselben bedeuten, dabei jedoch nicht das Vorhandensein oder Hinzukommen einer oder mehrerer sonstiger Eigenschaften, Ganzzahlen, Schritte, Vorgänge, Bestandteile und/oder Gruppen derselben ausschließen.
  • Die entsprechenden Strukturen, Materialien, Handlungen und Äquivalente sämtlicher Mittel oder Schritte einschließlich Funktionselemente in den folgenden Ansprüchen verstehen sich dahingehend, dass sie jedwede zum Ausführen der Funktion erforderlichen Strukturen, Materialien oder Handlungen in Verbindung mit sonstigen konkret beanspruchten Bestandteilen beinhalten. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Darstellung, hat jedoch keinen abschließenden Charakter und versteht sich nicht im Sinne einer Beschränkung auf die hier dargestellte Form der Erfindung. Für die Fachleute sind viele Änderungen und Variationen offensichtlich, ohne dass diese den gegenständlichen Umfang der Erfindung überschreiten oder von ihrem Wesensgehalt abweichen. Die Ausführungsform wurde ausgewählt und beschrieben, um das Prinzip der Erfindung und die praktische Anwendung bestmöglich darzulegen und um dritte Fachleute in die Lage zu versetzen, die Erfindung in Bezug auf vielfältige Ausführungsformen einschließlich verschiedener Abänderungen zu verstehen, die für die in Betracht gezogene konkrete Anwendung geeignet sind.
  • Wie für einen Fachmann einsichtig ist, können Aspekte der vorliegenden Erfindung die Ausführungsform eines Systems, Verfahrens oder eines Computerprogrammprodukts annehmen. Dementsprechend können Aspekte der vorliegenden Erfindung die Form einer sämtlich aus Hardware bestehenden Ausführungsform, einer sämtlich aus Software bestehenden Ausführungsform (unter anderem Firmware, speicherresidente Software, Mikrocode, etc.) oder eine Ausführungsform annehmen, die Software- und Hardware-Aspekte miteinander verbindet, die hier sämtlich ganz allgemein als ein „Schaltkreis”, „Modul” oder „System” bezeichnet werden können. Darüber hinaus können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, die in einem oder mehreren Computer-lesbaren Medien verkörpert sind, auf dem oder denen Computerlesbarer Programmcode ausgeführt wird.
  • Es kann eine beliebige Kombination von einem oder mehreren Computerlesbaren Medien genutzt werden. Das Computer-lesbare Medium kann ein Computer-lesbares Signalmedium oder ein Computer-lesbares Speichermedium sein. Ein Computer-lesbares Speichermedium kann im Sinne einer nicht abschließenden Aufzählung ein elektronische/s, magnetische/s, optische/s, elektromagnetische/s, Infrarot- oder Halbleitersystem, eine Vorrichtung oder eine Einheit sein, oder eine geeignete Kombination der vorgenannten Gegenstände. Konkretere Beispiele (im Sinne einer nicht abschließenden Aufzählung) der Computer-lesbaren Speichermedien würden Folgendes umfassen: Eine elektrische Verbindung bestehend aus einem oder mehreren Drähten, eine tragbare Computer-Diskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disc Nur-Lese Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder eine geeignete Kombination der vorgenannten Gegenstände. Im Rahmen dieses Dokuments kann ein Computer-lesbares Speichermedium jegliches physisches Medium sein, das ein Programm enthalten oder speichern kann, welches zur Verwendung durch oder in Verbindung mit einem/einer Befehle ausführenden System, Vorrichtung oder Einheit bestimmt ist.
  • Ein Computer-lesbares Signalmedium kann ein zum Beispiel im Basisband oder als Teil einer Trägerwelle übermitteltes Datensignal mit einem darin verkörperten Computer-lesbaren Programmcode umfassen. Ein solches übermitteltes Datensignal kann in einer Mehrzahl von Formen vorliegen, darunter im Sinne einer nicht abschließenden Aufzählung insbesondere in elektromagnetischer oder optischer Form oder in jeglicher geeigneten Kombination dieser Formen. Ein Computer-lesbares Signalmedium kann ein beliebiges Computer-lesbares Medium sein, das kein Computer-lesbares Speichermedium ist und ein Programm zur Verwendung durch oder in Verbindung mit einem/einer Befehle ausführenden System, Vorrichtung oder Einheit übertragen, verbreiten oder transportieren kann.
  • Auf einem Computer-lesbaren Medium verkörperter Programmcode kann unter Verwendung eines beliebigen geeigneten Mediums übermittelt werden, darunter im Sinne einer nicht abschließenden Aufzählung insbesondere über Funk, über eine Drahtverbindung, ein Lichtwellenleiterkabel, RF, etc. oder einer beliebigen geeigneten Kombination der vorgenannten Gegenstände.
  • Computer-Programmcodes für das Ausführen von Funktionen von Aspekten der vorliegenden Erfindung können in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben werden, darunter zum Beispiel in einer Objekt-orientierten Programmiersprache wie Java, Smalltalk, C++ oder dergleichen oder in herkömmlichen verfahrensorientierte Programmiersprachen wie beispielsweise die Programmiersprache „C” oder ähnliche Programmiersprachen. Der Programmcode kann vollständig oder teilweise auf dem Anwender-Computer ausgeführt werden, oder als Standalone-Softwarepaket, oder teils auf dem Anwender-Computer und teils auf einem fernen Computer oder aber vollständig auf dem fernen Computer oder Server. Bei der letzteren Gestaltung kann der ferne Computer mit dem Anwender-Computer über eine beliebige Art von Netzwerk verbunden sein, darunter zum Beispiel ein örtliches Datennetz (LAN), Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Diensteanbieters).
  • Aspekte der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf Ablaufplan-Abbildungen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Ablaufplan-Abbildungen und/oder der Blockschaltbilder und Blockkombinationen in den Ablaufplan-Abbildungen und/oder Blockschaltbildern durch Computer-Programmbefehle ausgeführt werden können. Diese Computer-Programmbefehle können einem Prozessor eines Mehrzweckcomputers, eines Computers für besondere Zwecke oder anderen programmierbaren Datenverarbeitungsvorrichtungen bereitgestellt werden, um eine Maschine in der Weise zu erstellen, dass die Befehle, die über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Hilfsmittel zur Entstehung gelangen lassen, mit denen die im Ablaufplan und/oder in einem Blockschaltbilder-Block oder in Blockschaltbilder-Blöcken angegebenen Funktionen/Aktionen ausgeführt werden können.
  • Diese Computer-Programmbefehle können auch auf einem Computer-lesbaren Medium gespeichert werden, das einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen, Verarbeitungsschaltungen oder andere Einheiten dazu veranlassen kann, in einer bestimmten Weise zu funktionieren, nämlich so, dass die auf dem Computer-lesbaren Medium gespeicherten Befehle ein Verarbeitungsprodukt (article of manufacture) erstellen, darunter zum Beispiel Befehle, die die in dem Ablaufplan und/oder in einem Blockschaltbilder-Block oder in Blockschaltbilder-Blöcken angegebenen Funktionen/Aktionen ausführen.
  • Diese Computer-Programmbefehle können auch in einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten geladen werden, um zu veranlassen, dass auf dem Computer, anderen programmierbaren Datenverarbeitungsvorrichtungen oder sonstigen Einheiten eine Reihe von Arbeitsschritten derart ausgeführt werden, dass ein Computergesteuerter Vorgang hervorgebracht wird, auf Grund dessen die auf dem Computer oder einer sonstigen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Befehle Prozesse bereitstellen, mit deren Hilfe die indem Ablaufplan und/oder in dem Blockschaltbilder-Block oder in den Blockschaftbilder-Blöcken angegebenen Funktionen/Aktionen ausgeführt werden können.
  • Die in diesem Dokument dargestellten Ablaufpläne sind lediglich ein Beispiel. Es kann viele Veränderungen an diesem Diagramm oder an den darin beschriebenen Schritten (oder Funktionen) geben, ohne dass diese vom Wesensgehalt der Erfindung abweichen. Beispielsweise können die Schritte in abweichender Reihenfolge ausgeführt werden, oder Schritte können hinzugefügt, gelöscht oder verändert werden. Alle diese Änderungen sind als Teil der beanspruchten Erfindung anzusehen.
  • Wenngleich die bevorzugte Ausführungsform der Erfindung beschrieben worden ist, versteht es sich, dass Fachleute gegebenenfalls sowohl gegenwärtig als auch in der Zukunft vielfältige Verbesserungen und Weiterentwicklungen vornehmen, die in den Geltungsbereich der nachfolgenden Ansprüche fallen. Diese Ansprüche sind dahingehend auszulegen, dass sie einen angemessenen rechtlichen Schutz der oben zunächst beschriebenen Erfindung sicherstellen.

Claims (15)

  1. Arbeitszyklus-Berichtigungssystem, aufweisend: ein Arbeitszyklus-Berichtigungsmodul, das zu Datenaustauschzwecken mit einem Speicher-Controller und einem Burst-Speicher verbunden ist, wobei das Arbeitszyklus-Berichtigungsmodul dahingehend eingestellt ist, Folgendes auszuführen: Bestimmen eines Arbeitszyklus-Berichtigungsfaktors; Berichtigen einer Arbeitszyklusverzerrung in einer Mehrzahl von differentiellen DQS-Signalen zwischen dem Speicher-Controller und dem Burst-Speicher, indem der Arbeitszyklus-Berichtigungsfaktor auf die Mehrzahl der differentiellen DQS-Signale angewendet wird.
  2. Arbeitszyklus-Berichtigungssystem gemäß Anspruch 1, wobei das Arbeitszyklus-Berichtigungsmodul den Arbeitszyklus-Berichtigungsfaktor in einem Register festlegt und das Register zu Datenaustauschzwecken mit dem Speicher-Controller verbunden ist.
  3. Arbeitszyklus-Berichtigungssystem gemäß Anspruch 1 oder 2, wobei das Arbeitszyklus-Berichtigungsmodul sich in einem DQS-Kanal befindet und der Arbeitszyklus-Berichtigungsfaktor angewendet wird nach einer Übertragungslogik und bevor ein DQS-Signal an einen Speicher-Controller-Treiber gesendet wird, und/oder wobei der Arbeitszyklus-Berichtigungsfaktor angewendet wird vor einer Empfangslogik und nachdem des DQS-Signals im Burst-Speicher empfangen wird.
  4. Arbeitszyklus-Berichtigungssystem gemäß einem beliebigen der vorgenannten Ansprüche, wobei die Mehrzahl differentieller DQS-Signale einen Lesevorgang aufweist, und wobei das Berichtigen darüber hinaus ein Beaufschlagen einer Offset-Spannung auf eines oder mehrere der Mehrzahl differenzieller DQS Signale umfasst, wobei das eine oder die mehreren der Mehrzahl differentieller DQS-Signale ein differentielles DQS-Signal an einem Empfänger aufweist und die Offset-Spannung auf den im Register vorhandenen Arbeitszyklus-Berichtigungsfaktor eingestellt wird, und/oder wobei das Berichtigen darüber hinaus ein Anwenden von zwei einstellbaren Phasenschiebern umfasst, und zwar einer für jeweils eines der beiden DQS-Signale, wobei die beiden DQS-Signale differentielle DQS-Signale aufweisen und die beiden einstellbaren Phasenschieber auf den im Register vorhandenen Arbeitszyklus-Berichtigungsfaktor eingestellt sind.
  5. Arbeitszyklus-Berichtigungssystem gemäß einem beliebigen der vorgenannten Ansprüche, wobei das Bestimmen einer Arbeitszyklusverzerrung durch Messen eines Datenauges für jede einzelne einer Mehrzahl von Einstellungen umfasst, wobei die Mehrzahl der Einstellungen zwischen einer minimalen und einer maximalen Einstellung liegt.
  6. Arbeitszyklus-Berichtigungssystem gemäß Anspruch 5, wobei die Mehrzahl der Einstellungen eine Mehrzahl verschiedener Offset-Spannungen umfasst und/oder wobei die Mehrzahl der Einstellungen Anpassungen an jedem von zwei einstellbaren Phasenschieber umfasst.
  7. Burst-Speichersystem, aufweisend: ein Arbeitszyklus-Berichtigungsmodul, das mit einem Speicher-Controller und einem Burst-Speicher Daten austauscht, wobei das Arbeitszyklus-Berichtigungsmodul dahingehend eingestellt ist, Folgendes auszuführen: Bestimmen einer Arbeitszyklusverzerrung in einer Mehrzahl von Signalen zwischen dem Speicher-Controller und dem Burst-Speicher, wobei die Mehrzahl der Signale ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen umfasst; und Berichtigen der Arbeitszyklusverzerrung in der Mehrzahl der Signale zwischen dem Speicher-Controller und dem Burst-Speicher, wobei das Berichtigen ein Abgleichen des Datensignals und der Mehrzahl von Burst-Datenimpulssignalen umfasst.
  8. Verfahren zum Berichtigen einer Arbeitszyklusverzerrung in einem Burst-Speichersystem, wobei das Verfahren Folgendes umfasst: Bestimmen einer Arbeitszyklusverzerrung in einer Mehrzahl von Signalen zwischen einem Speicher-Controller und einem Burst-Speicher, wobei die Mehrzahl der Signale ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen umfasst; und Berichtigen der Arbeitszyklusverzerrung in der Mehrzahl der Signale zwischen dem Speicher-Controller und dem Burst-Speicher, wobei das Berichtigen ein Abgleichen des Datensignals und der Mehrzahl von Burst-Datenimpulssignalen umfasst.
  9. Burst-Speichersystem gemäß Anspruch 7 oder das Verfahren zum Berichtigen einer Arbeitszyklusverzerrung gemäß Anspruch 8, wobei das Berichtigen weiterhin ein Hinzufügen eines Offset zu einem oder mehreren der Mehrzahl von Burst-Datenimpulssignalen umfasst.
  10. Burst-Speichersystem gemäß Anspruch 7 oder 9, oder das Verfahren zum Berichtigen einer Arbeitszyklusverzerrung gemäß Anspruch 8 oder 9, wobei der Offset durch Folgendes bestimmt wird: Lesen eines Datenmusters aus dem Burst-Speicher durch Verwenden einer Mehrzahl von verschiedenen Offsets; Messen eines Datenauges, das jedem einzelnen der Mehrzahl der verschiedenen Offsets entspricht; und Auswählen des Offset in Reaktion auf das Messen, wobei der Offset dem größten gemessenen Datenauge entspricht.
  11. Burst-Speichersystem gemäß Anspruch 7, 9 oder 10 oder das Verfahren zum Berichtigen einer Arbeitszyklusverzerrung gemäß den Ansprüchen 8 bis 10, wobei das Berichtigen weiterhin ein Hinzufügen einer Verzögerung zu jeder einzelnen ansteigenden Flanke und abfallenden Flanke der Mehrzahl von Burst-Datenimpulssignalen umfasst.
  12. Burst-Speichersystem gemäß Anspruch 7 oder 9 bis 11 oder das Verfahren zum Berichtigen einer Arbeitszyklusverzerrung gemäß den Ansprüchen 8 bis 11, wobei die Verzögerung durch Folgendes bestimmt wird: Messen eines Datenauges bezüglich der ansteigenden Flanke eines jeden einzelnen der Mehrzahl von Burst-Datenimpulssignalen; Messen eines Datenauges bezüglich der abfallenden Flanke eines jeden einzelnen der Mehrzahl von Burst-Datenimpulssignalen; Bestimmen der Arbeitszyklusverzerrung der Mehrzahl der Burst-Datenimpulssignale in Reaktion auf das Messen und Berechnen der Verzögerung in Reaktion auf das Bestimmen.
  13. Burst-Speichersystem gemäß den Ansprüchen 7 oder 9 bis 12 oder das Verfahren zum Bestimmen einer Arbeitszyklusverzerrung gemäß den Ansprüchen 8 bis 12, wobei die Verzögerung Folgendem entspricht: Addieren einer Zeit zwischen einem niedrigstem Abschnitt des ansteigenden Flankenrandes und einem höchsten Abschnitt eines ansteigenden Flankenrandes (TR); Addieren einer Zeit zwischen einem niedrigstem Abschnitt des abfallenden Flankenrandes und einem höchsten Abschnitt eines abfallenden Flankenrandes (TF); und Einstellen der Verzögerung auf (TR/2) – (TF/2).
  14. Computerprogrammprodukt zum Berichtigen einer Arbeitszyklusverzerrung in einem Burst-Speichersystem, wobei das Computerprogrammprodukt Folgendes umfasst: ein physisches Speichermedium, das von einer Verarbeitungsschaltung ausgelesen werden kann und Befehle zum Ausführen eines Verfahrens speichert, das Folgendes beinhaltet: Bestimmen einer Arbeitszyklusverzerrung in einer Mehrzahl von Signalen zwischen einem Speicher-Controller und einem Burst-Speicher, wobei die Mehrzahl der Signale ein Datensignal und eine Mehrzahl von Burst-Datenimpulssignalen umfasst; und Berichtigen der Arbeitszyklusverzerrung in der Mehrzahl der Signale zwischen dem Speicher-Controller und dem Burst-Speicher, wobei das Berichtigen ein Abgleichen des Datensignals und der Mehrzahl der Burst-Datenimpulssignale umfasst.
  15. Computerprogrammprodukt gemäß Anspruch 14, wobei das Berichtigen weiterhin ein Hinzufügen eines Offset zu einem oder mehreren der Mehrzahl von Burst-Datenimpulssignalen umfasst, und/oder wobei der Offset durch Folgendes bestimmt wird: Lesen eines Datenmusters aus dem Burst-Speicher durch Verwenden einer Mehrzahl von verschiedenen Offsets; Messen eines Datenauges, das jedem einzelnen der Mehrzahl der verschiedenen Offsets entspricht; und Auswählen des Offset in Reaktion auf das Messen, wobei der Offset dem größten gemessenen Datenauge entspricht; und/oder wobei das Berichtigen weiterhin ein Hinzufügen einer Verzögerung zu jeder einzelnen einer ansteigenden Flanke und einer abfallenden Flanke der Mehrzahl von Burst-Datenimpulssignalen umfasst, wobei die Verzögerung durch Folgendes bestimmt wird: Messen eines Datenauges bezüglich der ansteigenden Flanke eines jeden einzelnen der Mehrzahl von Burst-Datenimpulssignalen; Messen eines Datenauges bezüglich der abfallenden Flanke eines jeden einzelnen der Mehrzahl von Burst-Datenimpulssignalen; Bestimmen der Arbeitszyklusverzerrung der Mehrzahl der Burst-Datenimpulssignale in Reaktion auf das Messen und Berechnen der Verzögerung in Reaktion auf das Bestimmen.
DE102012205613.0A 2011-04-05 2012-04-04 Arbeitszyklus-Verzerrungsberichtigung Active DE102012205613B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/080,106 2011-04-05
US13/080,106 US8644085B2 (en) 2011-04-05 2011-04-05 Duty cycle distortion correction

Publications (2)

Publication Number Publication Date
DE102012205613A1 true DE102012205613A1 (de) 2012-10-25
DE102012205613B4 DE102012205613B4 (de) 2018-09-06

Family

ID=46052234

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012205613.0A Active DE102012205613B4 (de) 2011-04-05 2012-04-04 Arbeitszyklus-Verzerrungsberichtigung

Country Status (4)

Country Link
US (1) US8644085B2 (de)
CN (1) CN102739199B (de)
DE (1) DE102012205613B4 (de)
GB (1) GB2511274A (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102197943B1 (ko) * 2014-04-04 2021-01-05 삼성전자주식회사 메모리 컨트롤러와 이를 포함하는 시스템
KR102284103B1 (ko) * 2014-10-28 2021-08-02 삼성전자주식회사 차동 신호들 간 정전류 흐름 방지용 래치 컨트롤러를 구비한 반도체 장치
CN104836548B (zh) * 2015-05-25 2017-11-10 灿芯半导体(上海)有限公司 能够对输入信号的占空比失真进行补偿的输入电路
US9369263B1 (en) 2015-06-30 2016-06-14 International Business Machines Corporation Calibration of sampling phase and aperature errors in multi-phase sampling systems
US9673798B1 (en) * 2016-07-20 2017-06-06 Sandisk Technologies Llc Digital pulse width detection based duty cycle correction
US9984740B1 (en) * 2017-03-21 2018-05-29 Micron Technology, Inc. Timing control for input receiver
US10482935B2 (en) 2017-06-01 2019-11-19 Samsung Electronics Co., Ltd. Nonvolatile memory including duty correction circuit and storage device including the nonvolatile memory
KR102315274B1 (ko) 2017-06-01 2021-10-20 삼성전자 주식회사 듀티 정정 회로를 포함하는 비휘발성 메모리 및 상기 비휘발성 메모리를 포함하는 스토리지 장치
US10637692B2 (en) * 2017-09-26 2020-04-28 Micron Technology, Inc. Memory decision feedback equalizer
US11115177B2 (en) 2018-01-11 2021-09-07 Intel Corporation Methods and apparatus for performing clock and data duty cycle correction in a high-speed link
US10923175B2 (en) 2018-01-31 2021-02-16 Samsung Electronics Co., Ltd. Memory device adjusting duty cycle and memory system having the same
KR20190096753A (ko) 2018-02-09 2019-08-20 삼성전자주식회사 클럭 트레이닝을 수행하는 시스템 온 칩 및 이를 포함하는 컴퓨팅 시스템
JP2019169208A (ja) 2018-03-22 2019-10-03 東芝メモリ株式会社 半導体装置
US10833656B2 (en) * 2018-04-30 2020-11-10 Micron Technology, Inc. Autonomous duty cycle calibration
JP7066556B2 (ja) 2018-07-11 2022-05-13 キオクシア株式会社 メモリシステム
KR20200008842A (ko) * 2018-07-17 2020-01-29 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법
KR102679157B1 (ko) * 2018-10-30 2024-06-27 삼성전자주식회사 모드 레지스터 쓰기 명령을 이용하여 쓰기 클럭의 듀티 사이클의 트레이닝을 수행하는 시스템 온 칩, 시스템 온 칩의 동작 방법, 및 시스템 온 칩을 포함하는 전자 장치
KR102679215B1 (ko) * 2018-10-30 2024-06-28 삼성전자주식회사 복수의 트레이닝들을 동시에 수행하는 시스템 온 칩, 시스템 온 칩의 동작 방법, 및 시스템 온 칩을 포함하는 전자 장치
US10734983B1 (en) * 2019-02-15 2020-08-04 Apple Inc. Duty cycle correction with read and write calibration
CN110557576B (zh) * 2019-09-27 2021-06-29 高新兴科技集团股份有限公司 一种基于视频的频闪灯同步控制方法
DE102020124101A1 (de) * 2020-02-04 2021-08-05 Samsung Electronics Co., Ltd. Elektronische vorrichtung mit einer speichervorrichtung und trainingsverfahren
CN111243637B (zh) * 2020-03-03 2022-03-01 深圳市紫光同创电子有限公司 Ddr内存控制器的dq与dqs信号占空比的训练方法和系统
KR20220165535A (ko) 2021-06-08 2022-12-15 삼성전자주식회사 데이터 트레이닝을 수행하는 메모리 컨트롤러, 이를 포함하는 시스템 온 칩 및 메모리 컨트롤러의 동작방법
CN113626352B (zh) * 2021-07-01 2024-04-30 珠海全志科技股份有限公司 内存控制器的读取校准方法、计算机装置和可读存储介质
US12021959B2 (en) * 2022-04-28 2024-06-25 Mellanox Technologies, Ltd. Signal distortion correction with time-to-digital converter (TDC)

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6570944B2 (en) * 2001-06-25 2003-05-27 Rambus Inc. Apparatus for data recovery in a synchronous chip-to-chip system
JP2003188694A (ja) * 2001-12-19 2003-07-04 Mitsubishi Electric Corp 半導体装置
US7356720B1 (en) 2003-01-30 2008-04-08 Juniper Networks, Inc. Dynamic programmable delay selection circuit and method
US6933759B1 (en) * 2004-02-05 2005-08-23 Texas Instruments Incorporated Systems and methods of performing duty cycle control
US7443741B2 (en) 2005-07-07 2008-10-28 Lsi Corporation DQS strobe centering (data eye training) method
US7279946B2 (en) * 2005-08-30 2007-10-09 Infineon Technologies Ag Clock controller with integrated DLL and DCC
US20070159224A1 (en) * 2005-12-21 2007-07-12 Amar Dwarka Duty-cycle correction circuit for differential clocking
US7698589B2 (en) 2006-03-21 2010-04-13 Mediatek Inc. Memory controller and device with data strobe calibration
US7755402B1 (en) 2006-04-28 2010-07-13 Nvidia Calibration of separate delay effects for multiple data strobe signals
US7948812B2 (en) 2006-11-20 2011-05-24 Rambus Inc. Memory systems and methods for dynamically phase adjusting a write strobe and data to account for receive-clock drift
KR100884590B1 (ko) * 2007-11-02 2009-02-19 주식회사 하이닉스반도체 지연고정회로, 반도체 장치, 반도체 메모리 장치 및 그의 동작방법
US7733143B2 (en) * 2007-12-21 2010-06-08 Agere Systems Inc. Duty cycle correction circuit for high-speed clock signals
US20090168563A1 (en) 2007-12-31 2009-07-02 Yueming Jiang Apparatus, system, and method for bitwise deskewing
US7872494B2 (en) * 2009-06-12 2011-01-18 Freescale Semiconductor, Inc. Memory controller calibration
US8037375B2 (en) 2009-06-30 2011-10-11 Intel Corporation Fast data eye retraining for a memory
US7859299B1 (en) 2009-07-10 2010-12-28 Freescale Semiconductor, Inc. Circuit for controlling data communication with synchronous storage circuitry and method of operation
US8578086B2 (en) 2009-09-25 2013-11-05 Intel Corporation Memory link initialization
US8665665B2 (en) * 2011-03-30 2014-03-04 Mediatek Inc. Apparatus and method to adjust clock duty cycle of memory

Also Published As

Publication number Publication date
US8644085B2 (en) 2014-02-04
GB2511274A (en) 2014-09-03
CN102739199B (zh) 2014-12-24
DE102012205613B4 (de) 2018-09-06
GB201204881D0 (en) 2012-05-02
CN102739199A (zh) 2012-10-17
US20120257466A1 (en) 2012-10-11

Similar Documents

Publication Publication Date Title
DE102012205613B4 (de) Arbeitszyklus-Verzerrungsberichtigung
DE102005019041B4 (de) Halbleiterspeicher und Verfahren zur Anpassung der Phasenbeziehung zwischen einem Taktsignal und Strobe-Signal bei der Übernahme von zu übertragenden Schreibdaten
DE102010040116B4 (de) Speichersteuerung mit einstellbarer Senderimpedanz
DE112012001972B4 (de) Vorrichtung, System und Verfahren zur Spannungshub- und Tastgradjustierung
DE102008015544B4 (de) Verfahren und Vorrichtung zur Kalibrierung des Schreib-Timings in einem Speicher-System
DE10102887B4 (de) Verzögerungsvorrichtung, die eine Verzögerungssperrschleife aufweist und Verfahren zum Kalibrieren derselben
DE112011100118B4 (de) Abtastsignalverschiebung in Konfigurationen mit bidirektionalen Speicherabtastsignalen
DE102004017863B4 (de) Schaltung und Verfahren zum Ermitteln eines Referenzpegels für eine solche Schaltung
DE102006049909A1 (de) ZQ-Eichergebnis rückkoppelnde DLL-Schaltung und dieselbe enthaltende Halbleitervorrichtung
DE102006020857A1 (de) Integrierter Halbleiterspeicher zur Synchronisierung eines Signals mit einem Taktsignal
DE112011104682B4 (de) Kalibrieren der Strobesignal-Schreiblatenzzeit (CWL) an Spaltenadressen in einem Speichersystem
DE10320794B3 (de) Vorrichtung und Verfahren zur Korrektur des Tastverhältnisses eines Taktsignals
DE102005027452A1 (de) Digitaler Tastverhältniskorrektor
EP2988181A1 (de) Regeleinrichtung mit lernfähiger Fehlerkompensation
DE10208715B4 (de) Latenz-Zeitschalter für ein S-DRAM
DE10320792B3 (de) Vorrichtung zur Synchronisation von Taktsignalen
DE102012105159B4 (de) Fehlertolerante Speicher
DE10034852A1 (de) Verfahren und Vorrichtung zum Einlesen und zur Überprüfung der zeitlichen Lage von aus einem zu testenden Speicherbaustein ausgelesenen Datenantwortsignalen
DE602005005002T2 (de) Vorrichtung zur Datenkommunikation
EP1176607A2 (de) Verfahrenund Vorrichtung zum Testen von Setup-Zeit und Hold-Zeit von Signalen einer Schaltung mit getakteter Datenübertragung
DE10344818B4 (de) Vorrichtung zum Kalibrieren der relativen Phase zweier Empfangssignale eines Speicherbausteins
DE102007036648B4 (de) Verfahren und Vorrichtung zum Überprüfen der Position eines Empfangsfensters
DE10121309B4 (de) Testschaltung zum Testen einer zu testenden Schaltung
DE112019000156T5 (de) Verfahren und gerät zur direkten messverzögerungskalibrierung
DE102006004229A1 (de) Integrierte Schaltung zum Empfang von Daten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

R016 Response to examination communication
R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final