JP5044805B2 - 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置 - Google Patents

実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置 Download PDF

Info

Publication number
JP5044805B2
JP5044805B2 JP2009025395A JP2009025395A JP5044805B2 JP 5044805 B2 JP5044805 B2 JP 5044805B2 JP 2009025395 A JP2009025395 A JP 2009025395A JP 2009025395 A JP2009025395 A JP 2009025395A JP 5044805 B2 JP5044805 B2 JP 5044805B2
Authority
JP
Japan
Prior art keywords
data
counter
memory device
capture
numerical value
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
JP2009025395A
Other languages
English (en)
Other versions
JP2009104651A (ja
Inventor
ジョンソン ブライアン
キース ブレント
エー マニング トロイ
Original Assignee
ラウンド ロック リサーチ リミテッド ライアビリティー カンパニー
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 ラウンド ロック リサーチ リミテッド ライアビリティー カンパニー filed Critical ラウンド ロック リサーチ リミテッド ライアビリティー カンパニー
Publication of JP2009104651A publication Critical patent/JP2009104651A/ja
Application granted granted Critical
Publication of JP5044805B2 publication Critical patent/JP5044805B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • 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
    • 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/1694Configuration of memory controller to different memory types
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Description

本発明は一般に、高速同期メモリシステム(high speed synchronous memory system)に関し、より詳細には、メモリ装置の実ライトレイテンシー(actual write latency)を測定し、データキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置に関する。
一般的なコンピュータシステムにおいて、プロセッサとメモリ装置とのインタフェースは、その機能が、バスを介して、典型的にはメモリコントローラによってパフォームされる。コントローラがメモリ装置に対してREAD要求を行うと、このメモリ装置からの応答は、READ「レイテンシー」という遅延時間の後に、このバスからリードすることができる。仮にコントローラがメモリ装置に対してWRITE要求を行った場合には、メモリシステム内のメモリ装置は、データをこのバスから受信することができ、しかも、格納するためのデータのキャプチャを、あるWRITE「レイテンシー」の後に開始することができる。
レイテンシーの長さは、装置のタイプによって変化する。レイテンシーの長さは、要求のタイプによっても変化する。例えば、メモリ装置は、リード要求に応答するのに、10〜15ナノ秒を必要とし、WRITE要求に応答するのに、わずか5〜10ナノ秒しか必要としないかもしれない。
メモリコントローラは、典型的には、メモリ要求を発行するのに先立って、指定されたレイテンシーであって、要求タイプと装置タイプとのレイテンシーの値を格納する。そこで、当該コントローラは、要求を発行するとき、データを供給するか、データを受け取るまで、待機しなければならない時間の長さを測定することができる。
図1は例示的なコンピュータシステムを示す。このコンピュータシステムには、プロセッサ50と、メモリサブシステム10と、拡張バスコントローラ52とが含まれている。メモリサブシステム10と拡張バスコントローラ52は、ローカルバス54を介してプロセッサ50に結合されている。拡張バスコントローラ52は、少なくとも1つの拡張バス56にも結合され、拡張バス56には、種々の周辺装置57〜59、例えば、大容量ストレージ装置と、キーボードと、マウスと、グラフィックアダプタと、マルチメディアアダプタを接続することができる。
メモリサブシステム10には、メモリコントローラ40が含まれ、メモリコントローラ40は、複数の信号線41a〜41d、42、43、44、45a〜45d、46a〜46dを介して、複数のメモリモジュール30、32に結合されている。複数のデータ信号線41a〜41dは、メモリコントローラ40とメモリモジュール30、32とによりデータDATAを交換するため使用される。アドレス(ADDR)は、複数のADDR信号線43を介してシグナルされ、コマンド(CMD)は、複数のCMD信号線42を介してシグナルされる。メモリモジュール30、32には、それぞれ、メモリ装置11〜14、15〜18と、レジスタ21、22とが含まれる。各メモリ装置11〜18はハイスピード同期メモリ装置である。図1には、2つのメモリモジュール30、32と、これらに関連する信号線41a〜41d、42、43、44、45a〜45d、46a〜46dとのみを、示したが、任意の数のメモリモジュールを使用できる、ことに留意されたい。加えて、各メモリモジュールに対して、わずか4つのメモリ装置を図示してあるが、各メモリモジュールに設けることができるメモリ装置の数は増減することができる。
メモリモジュール30、32をメモリコントローラ40に結合する複数の信号線41a〜41d、42、43、44、45a〜45d、46a〜46dは、メモリバス15として周知のものである。メモリバス15は、当技術分野で周知の信号線、例えば、チップ選択線(図を簡単にするため図示せず)を含むことができる。メモリバス15全体において、メモリ装置の各列11〜14、15〜18は、メモリのランク(rank of memory)として知られている。シングルサイドメモリモジュール(single side memory module)、例えば図1に示すようなSIMM(Single Sided In-Line Memory Module)は、典型的には、メモリランクを1つ含む。しかし、ダブルサイドメモリモジュール(double sided memory module)、例えばメモリランクを2つ含むDIMM(Dual In-Line Memory Module)を採用することもできる。
複数の信号線41a〜41dにより、メモリ装置11〜18がメモリコントローラ40に結合されている。リードデータは、RCLK(read clock)信号にシリアル同期した出力であり、RCLK信号は、複数のRCLK信号線45a〜45dのすべてに送出される。RCLK信号は、リードクロックジェネレータ41によって生成され、メモリモジュール30、32のメモリ装置11〜18とメモリコントローラ40に適用される。
説明上、リードクロックジェネレータ41は、メモリモジュール30、32から分離して図示してあるが、メモリ装置11〜18内に設けることができ、RCLK信号は、メモリ装置に供給される他のクロック信号から取り出すことができる。
ライトデータは、WCLK信号にシリアル同期した入力であり、メモリコントローラ40によって、WCLK信号が複数のWCLK信号線46a〜46dに送出される。CMDおよびADDRは、メモリコントローラ40によってメモリモジュール30、32のレジスタ21、22とターミネータ48に送出されるCCLK(command clock)信号を用いてクロックされる。CMD、ADDR、およびCCLK信号線42〜44は、メモリモジュール30、32のレジスタ21、22に直接結合されている。レジスタ21、22は、これらの信号をメモリモジュール30、32のメモリ装置11〜18に分配する前に、これらの信号をバッファリングする。そこで、メモリサブシステム10は、3つのクロックドメイン(clock domain)、すなわち、RCLK信号が支配するRCLKドメインと、WCLK信号が支配するWCLKドメインと、CCLK信号が支配するCCLKドメインとの下で、オペレートする。2クロックドメイン方式においては、第3のクロックドメインであるCCLKドメインが存在しないから、WCLK信号が、ライトデータキャプチャおよびコマンド/アドレスキャプチャの2つの目的をサーブする。
メモリ装置11〜18がリードコマンドを受け取ると、当該リードコマンドに関連付けされたデータは、CCLKによって決定されたある時間が経過して初めて、メモリバス15に出力される。この時間は、装置リードレイテンシー(device read latency)CLとして知られている。メモリ装置11〜18は、しばしば、(装置によって異なる)最小装置リードレイテンシーから最大装置リードレイテンシーまでの間の複数の装置リードレイテンシーのどれか1つでオペレートするようにプログラムすることができる。
そこで、各装置のリードレイテンシーCLは、上述した3クロックドメイン方式の場合には、CCLKを基準にして測定され、上述した2クロックドメイン方式の場合には、2クロックドメイン方式にあってはWCLKがライトデータキャプチャおよびコマンド/アドレスキャプチャの2つの目的をサーブするので、WCLKを基準にして測定される。2クロックドメイン方式の現在の仕様においては、CL−1、すなわち、リードレイテンシーより1クロックサイクルだけ短いライトレイテンシーと、CL−2、すなわち、リードレイテンシーより2クロックサイクルだけ短いライトレイテンシーとが必要になる。しかし、RCLK信号RCLKは、典型的には、システムの出力モデルを有する遅延ロックループ回路(delay locked-loop circuit)によって補償されるので、WCLKを基準にして測定した真のリードレイテンシーは分らない。そこで、リードレイテンシーとの関係でライトレイテンシーを指定することによっては、WCLKを基準にして測定したデータの装置への到着を正確に予測することはできない。
加えて、各装置のライトレイテンシーは、メモリコントローラ40から見えるライトレイテンシーの一部にすぎない。システムレイテンシー(system latency)として知られる、メモリコントローラから見えるこの全レイテンシーは、装置ライトレイテンシーと、メモリ装置11〜18とメモリコントローラ40との間の信号伝播時間の結果生じるレイテンシーとの総和である。メモリ装置11〜18とメモリコントローラ40との間の信号伝播が同一であれば、信号伝播時間によって生じるレイテンシーは、一定であって、各メモリ装置11〜18に等しい影響を及ぼす。しかし、図1に示すように、CMDと、ADDRと、CCLKとは、メモリ装置11〜18に分配する前に、最初にレジスタ21、22に転送される。メモリモジュール30、32上の各メモリ装置11〜14、15〜18は、レジスタ21、22から異なる距離に配置されている。そこで、各メモリ装置11〜14は、メモリコントローラ40によって発行されたコマンドおよび/またはデータを、異なる時間に受信することになる。加えて、メモリコントローラ40と2つのメモリモジュール30、32のレジスタ21、22との間の距離も異なる。(メモリモジュール30上の)レジスタ21は、メモリコントローラ40により近いので、(メモリモジュール32上の)レジスタ22よりも時間的に先に、CMDと、ADDRと、CCLKを受信することになる。そこで、CMDと、ADDRと、CCLK信号とのメモリコントローラまでの信号パスの長さが異なるから、メモリサブシステム10の各メモリ装置11〜18は、このメモリコントローラによって発行されたCMDおよび/またはデータを、種々のタイミングで受信することになる。
各メモリ装置11〜18の最小装置レイテンシーが異なり、CMDと、ADDRと、CCLK信号との伝播が異なるから、各メモリ装置11〜18のシステムレイテンシーが異なることがある。このため、WCLKを基準としていつデータが特定のメモリ装置11〜18に到着するかを、離散的なクロックサイクルの精度で正確に予測することが妨げられる。
そこで、実ライトレイテンシー、すなわち、データがメモリ装置に到着するタイミングを、WCLKを基準にして正確に測定し、データキャプチャの開始を、WRITEコマンドに関連付けされているデータの到着に、アライメントする方法および装置に対するニーズがある。
本発明は、データがメモリ装置に到着するタイミングを正確に測定し、データキャプチャの開始を、ライトコマンドに関連付けされているデータの到着に、アライメントする方法および装置を供給する。
本発明によれば、メモリ装置の入力への正確なデータ到着タイムが、キャリブレーション期間中に、バックツーバックライトコマンド(back-to-back write command)を予め定めたデータパターンと共にメモリ装置に送出することによって決定される。データパターンはレジスタに格納され、データの予測到着タイムとデータの実到着タイムとの差が、ロジック回路によって決定される。次に、カウンタを利用してメモリ装置へのデータキャプチャの開始をライトコマンドの受信よりも遅らせることによって、決定された差を補償し、これによって、データキャプチャの開始とメモリ装置へのデータ到着とを正確にアライメントする。
本発明の上記およびその他の利点および特徴は、添付の図面と共に提供される、以下の詳細な説明からより容易に明らかとなるであろう。
慣用のコンピュータシステムを示すブロック図である。 本発明に係る回路であって、実ライトレイテンシーを測定し、WRITEコマンドとデータのメモリ装置への到着とをアライメントする回路を示すブロック図である。 本発明に係る回路であって図2の回路のデータレジスタを示す図である。 本発明に係る回路であって図2の回路のデータレジスタを示す図である。 本発明に係る回路であって図2の回路のデータレジスタを示す図である。 本発明に係る回路であって図2の回路のデータレジスタを示す図である。 本発明に係る回路であって図2の回路の選択信号のタイミング図である。 本発明に係る回路であって図2の回路の別の選択信号のタイミング図である。
以下、本発明の実施形態であって図2〜図5に示す例示的な実施形態を説明する。他の実施形態も利用することができ、本発明の主旨および範囲から逸脱しない限り、構造の変更又は論理の変更を行うことができる。同様の要素には同様の参照番号を付してある。
本発明によれば、メモリ装置の入力端子に到着するデータの実到着タイムを測定し、当該メモリ装置からデータをキャプチャする開始タイムを遅延させることによって、予測到着タイムと実到着タイムとの測定された差を補償し、それによって、データのキャプチャ開始とデータのメモリへの到着とを正確にアライメントすることができる。
図2は、本発明によって、実データ到着タイムを測定し、データキャプチャの開始をメモリ装置へのデータ到着にアライメントする回路100を示す。回路100は、図1の各メモリ装置11〜18内に設けられることになる。
図2には、ただ1つの回路100しか図示していないが、マルチビットデータバスである複数のデータパスを使用するデータキャプチャを支援するため、各メモリ装置11〜18において、複数の回路100を使用することができる、ことは当然のことである。あるいはまた、集積回路チップの面積を節約するため、回路100のある部分を各メモリ装置11〜18で重複させ、回路100の別のある部分を複数のデータパスで共用することもできる。
回路100には、メモリコントローラ40から到着するデータの実到着タイムを測定するのに使用されるレジスタ102が含まれる。レジスタ102は、図2に示すが、16ビットレジスタである。メモリコントローラ40は、CMD信号を、CMD線42を介して、DRAM11〜18のうちの1つまたは複数のDRAMに送出し、DRAM11〜18に、キャリブレーション(トレーニング)モードに入るように指示する。ついで、コントローラ40は、キャリブレーションモードのDRAM11〜18に、バックツーバックWRITEコマンドを送出する。ついで、コントローラ40は、バックツーバックWRITEコマンドに関連付けをしたデータを、要求タイプおよび装置タイプ、例えば、上述したようなCL−1やCL−2ごとに指定されるWRITE遅延時間が経過した後に送出し、DRAM11〜18は、WRITEコマンドによる要求に従って、入力端子パッド120およびデータキャプチャラッチ122から、データのキャプチャを開始する。
しかし、先に指摘したように、DRAM11〜18に到着するデータの実到着タイムを正確に予測することはできないから、DRAM11〜18によるデータキャプチャを、データ到着と同時に開始することができない。DRAM11〜18によるデータキャプチャの開始タイムと、WRITEコマンドに関連付けをしたデータの受信との差を、本発明に従って測定するため、バックツーバックWRITEコマンドに関連付けをしたデータを、予め定めたトレーニングデータパターンとする。好ましくは、トレーニングデータは8ビットワードのペア、すなわち、16ビットからなり、これら16ビットの第1ビットが「0」であるが、後続するビットはすべて「1」である。DRAM11〜18に対して指定されるライトレイテンシーの最大値は、典型的には、8クロックサイクルが上限であり、そこで、以下で詳しく説明するが、2バイトのトレーニングデータパターンが必要となるため、DRAM11〜18に実際にデータが到着した時間を測定するためのビットをより多く供給するより、データワードのペアを使用するほうが好ましい、ことに留意されたい。
コントローラ40からのトレーニングデータは、入力端子パッド120に到着し、データキャプチャラッチ122にラッチされる。このトレーニングデータは、デシリアライザ124と、×8レジスタ126、128とを通過し、レジスタ102に格納される。DRAM11〜18(例えば、データキャプチャラッチ122と、デシリアライザ124)でのデータキャプチャの開始とトレーニングデータの到着とが正確にアライメントした場合、トレーニングデータの第1ビット、すなわち、値が「0」であるビットが、図3Aに示すように、レジスタ102の第1ロケーション、すなわち、ロケーション0aに格納される。したがって、データキャプチャの開始とデータの到着とは正確にアライメントし、よって、データキャプチャの開始を調整する必要はない。
しかし、仮に、データキャプチャの開始とトレーニングデータの到着とが正確にアライメントしていない場合には、第1データビット、すなわち、値が「0」であるビットは、レジスタ102の第1ロケーションには格納されず、後続するロケーションに格納される。データは、クロック信号WCLKの立ち上がりと、立ち下りとにそれぞれ同期して送出され、データキャプチャはクロック信号の立ち上がりでのみ開始される、ことは当然のことである。そこで、トレーニングデータの第1データビットは、クロック信号の立ち上がりに対応するロケーションにのみ格納される。すなわち、データの第1ビットは、レジスタ102の偶数番のロケーション、すなわち、ロケーション0a、2a、4a、6a、0b、2b、4b、6bにのみ格納される。
例えば、仮にデータが、指定されたライトレイテンシーより1クロックサイクル遅れて到着した場合には、第1データビットは、図3Bに示すように、レジスタ102のロケーション2aに格納される。仮にデータが、指定されたライトレイテンシーより2クロックサイクル遅れて到着した場合には、第1データビットは、図3Cに示すように、レジスタ102のロケーション4aに格納される。仮にデータが、指定されたライトレイテンシーより4クロックサイクル遅れて到着した場合には、第1データビットは、図3Dに示すように、レジスタ102のロケーション0bに格納される。例えば、図3B〜図3Dに図示したように、データが予測よりも遅れて到着する例においては、トレーニングデータを実際に受信する前のレジスタロケーション、すなわち、図3Bにおけるロケーション0a、1a、図3Cにおけるロケーション0a、1a、2a、3a、図3Dにおけるロケーション0a、1a、2a、3a、4a、5a、6a、7aに格納されるデータは、値「1」である、ことは当然のことである。これは、データドライバがプルダウンオンリ(pull-down only)、すなわち、仮にコントローラが、データドライバをアクティベートさせて、「0」という値にプルダウンしなれば、「1」という値が存在するからである。そこで、仮にデータが存在しない場合には、レジスタ102に格納される値はデフォルト値の「1」である。あるいはまた、このコントローラは、トレーニングデータの開始まで値「1」のデータを送出し、トレーニングデータの第1ビットが受信される前にレジスタに格納されたデータが、値「1」となるようにすることもできる。
ひとたびトレーニングデータがレジスタ102に入力されると、クロックの各立ち上がりに関連付けされたデータ、すなわち、レジスタ102の偶数番のロケーション(ロケーション0a、2a、4a、6a、0b、2b、4b、6b)に格納されたデータが、エンコーダ104に入力される。トレーニングデータの第1ビットは、常にクロック信号の立ち上がりで発生し、レジスタ102の偶数番のロケーションに配置されるので、レジスタ102の偶数番のロケーションのデータのみが必要となる。エンコーダ104は、8ビット入力、すなわち、レジスタ102の偶数番のロケーションを、トレーニングデータの第1ビット(値「0」)が格納されたレジスタ102のロケーションに基づいて3桁の2進数に符号化する。このロケーションは、データキャプチャをデータ到着に正確に同期させるのに何クロックサイクル遅延させればよいかを表す。
例えば、仮に、図3Aに示すように、データキャプチャの開始とデータ到着とが正確にアライメントされている場合には、レジスタ102からエンコーダ104への入力は、01111111であり、トレーニングデータの第1ビットがレジスタ102のロケーション0aに格納されていることを示す。エンコーダ104は2進数000を出力し、これはレジスタ102のロケーション0aを表し、データキャプチャの開始とデータ到着とが同じクロックサイクルで発生したこと示す。仮に、図3Bに示すように、データキャプチャの開始が1クロックサイクル早い場合には、エンコーダ104への入力は10111111である。エンコーダ104は2進数001を出力し、これはレジスタ102のロケーション2aを表し、データキャプチャの開始が1クロックサイクル早く発生したことを示す。仮に、図3Cに示すように、データキャプチャの開始が2クロックサイクル早い場合には、エンコーダ104への入力は11011111である。エンコーダ104は2進数010を出力し、これはレジスタ102のロケーション4aを表し、データキャプチャの開始が2クロックサイクル早く発生したことを示す。仮に、図3Dに示すように、データキャプチャの開始が4クロックサイクル早い場合には、エンコーダ104への入力は11110111である。エンコーダ104は2進数100を出力し、これはレジスタ102のロケーション0bを表し、データキャプチャの開始が4クロックサイクル早く発生したことを示す。
トレーニングデータがレジスタ102に到着し、エンコーダ104で符号化された後の適正な時点で、初期化ロジック回路150がラッチ信号をラッチ106に出力する。ラッチ106は、エンコーダ104が出力した3桁の2進数の形式で、エンコーダ104の出力をラッチする。先に指摘したように、エンコーダ104からの出力は、データキャプチャが実際のデータ到着より何クロックサイクル早く開始されるかを示す。ラッチ106は、ラッチ信号を受信したとき、カウンタ108a、108bで使用するエンコーダ104からの格納値をラッチする。各カウンタ108a、108bは減算カウンタであり、ラッチ106の値を開始値として0までカウントダウンし、次に非0値(例えば、2進数「111」、すなわち、10進数「7」)にリセットされる。
図2に示すように、2つのカウンタ108a、108bは、バックツーバックWRITEコマンドを受信し、正しいレイテンシーに適正にアライメントされるようにするために使用することができる。先に指摘したように、2つのカウンタ108a、108bが必要となる場合があるが、これは、DRAM11〜18について指定されるレイテンシーの最大値は典型的には8クロックサイクルが上限であり、WRITEバースト長が8ビット(4クロックサイクル)の場合、バックツーバックWRITEを適正なタイミングでオペレートするためには、カウントダウンのオーバラップが必要となり、したがって、独立したカウンタが2つ必要となる場合があるからである。
あるいはまた、トグル回路114は、コントローラ40からコマンドデコーダ/シーケンサ140を介して、WRITE CAPTURE信号を受信するたび、第1カウンタ、すなわち、カウンタ108aと、第2カウンタすなわちカウンタ108bとを、交互に選択する。第1および第2カウンタ108a、108bは、スタート/ロードロジック回路116の第1および第2の出力端子に接続され、スタート/ロードロジック回路116は、トグル回路114の出力を使用して、カウンタ108a、108bのどちらが次のSTART/LOAD信号を受信してカウントダウンを開始するかを選択する。カウンタ108a、108bは、START/LOAD信号を受信すると、WCLKと同期して、ラッチ106によって供給された値を開始値として、0に向かってカウントダウンを開始する。各カウンタ108a、108bは、0に達した後、非0値(例えば、2進数「111」、すなわち、10進数「7」)にリセットされる。各カウンタ108a、108bは、10進数の値7(2進数の111)に達した時点、または別のSTART/LOAD信号を受信した時点で、カウントを中止する。
各カウンタ108a、108bの出力は、それぞれ、ゼロ検出器110a、110bの入力になる。ゼロ検出器110a、110bの出力は、少なくとも1つのORゲート112に結合され、ORゲート112は、カウンタ108a、108bの一方の値が0に達したとき、START CAPTURE信号を出力する。START CAPTURE信号は、デシリアライザ124によって受信され、デシリアライザ124は、その時点から、データキャプチャラッチ122から受信するデータのキャプチャを開始する。
図2には、2つのカウンタ108a、108bが示してあるが、カウンタは必ずしも2つ必要でなく、本発明に従って、任意の数のカウンタ、例えばカウンタを1つ使用することができる、ことは当然のことである。
キャリブレーションは、典型的には、1つの2バイトトレーニングパターンをDRAM11〜18で受信した後に完了する。さらに、キャリブレーションを行うと、不正な値がラッチ106に格納されることがある。しかし、ラッチ106に格納された値が各キャリブレーションの前に0にリセットされる限り、必要であれば、冗長なキャリブレーションを行うことができる。
ひとたびトレーニングモードが完了すると、すなわち、カウンタ108a、108b用の開始値がラッチ106に格納されると、回路100は、データキャプチャの開始と入力データのメモリ装置への到着とを正確にアライメントすることができるようになる。そこで、例えば、仮に、図3Bに示すように、データキャプチャの開始が1クロックサイクル早い場合には、ラッチ106からカウンタ108a、108bに入力される値が、001となる。カウンタ108a、108bは、この値を開始値として0までカウントダウンする。図3Bに示す例では、カウンタ108a、108bが動作を開始してから1クロックサイクル後に、カウンタは0に達し、ゼロ検出器110a、110bが、それぞれ、ゼロ検出信号をORゲート112に出力し、ORゲート112はSTART CAPTURE信号を発行する。そこで、データキャプチャの開始は、1WCLKクロックサイクルだけ遅延し、これによって、入力データの実際の到着に正確にアライメントするようになる。仮に、図3Aに示すように、データキャプチャの開始と入力データの到着とが正確にアライメントされている場合には、ラッチ106からカウンタ108a、108bに入力される値は、000であって、入力データの実際の到着が既に正しくアライメントされており、これにより、データキャプチャの開始に遅延はない。
メモリ装置11〜18へのデータ入力は、トレーニングモードが完了した後においては、次のようになる。例えば、データがDRAM12に入力され、DRAM12は、トレーニングモード中に、データキャプチャの開始が、図3Bに示すように、1サイクル早く発生すると決定するものと仮定する。そこで、DRAM12に対する値であって、ラッチ106に格納された値は、001である。コントローラ40は、WRITEコマンドを発行し、DRAM12のために指定されたライトレイテンシーの後、関連付けをした入力データを送出する。コマンドデコーダ/シーケンサ140は、トグル回路114と、スタート/ロードロジック回路116と、初期化ロジック回路150とに、WRITE CAPTURE信号を送出する。初期化ロジック回路150は、ラッチ106およびトグル回路114に送出されるLATCH信号を制御するため、使用される。初期化ロジック回路150は、WRITE CAPTURE信号のアサートを基準にして、いつ16ビットデータを受信するか決定し、ラッチ106およびトグル回路114にLATCH信号を送出する。初期化ロジック回路150による決定は、例えば、クロックサイクルをカウントする3ビットカウンタを用いて行うことができる。ラッチ106は、カウンタ108a、108bに格納する値を出力し、カウンタ108a、108bは、スタート/ロードロジック回路116によって交互にアサートされるSTART/LOAD信号に応答して、ラッチ106から受信した値からカウントダウンを開始する。
各カウンタ108a、108bは、スタート/ロードロジック回路116からSTART/LOAD信号を受信するスタート/ロード入力を備える。各カウンタ108a、108bのSTART/LOAD入力端子への信号入力は、トグル回路114の出力に基づいて決定され、トグル回路114は、コマンドデコーダ/シーケンサ140によって受信されたバックツーバックWRITEコマンドの正確なタイミングのアライメントを可能にするため、カウンタ108a、108bのうちの一方を選択する。仮にバックツーバックWRITEコマンドがデータ入力中に受信された場合には、第1のカウンタ、すなわち、カウンタ108aは、第1のWRITEコマンドに同期してカウントダウンし、第2のカウンタ、すなわち、カウンタ108bは、第2のWRITEコマンドに同期してカウントダウンする。そこで、コントローラ40は、直前のWRITEコマンドから1バースト長分の間隔を空けて、WRITEコマンドを発行することができ、ゼロ検出器110a、110bを、データバースト長の最小時間間隔(例えば、8ティックまたは4クロックサイクル)でファイヤー(fire)させることができる。ゼロ検出回路110a、110bは、ゼロ検出回路110a、110bのうちの一方がH(high)であるとき、これを検出するORゲート112によって結合される。カウンタ108a、108bの出力は、先に指摘したように、リセットされるか、値7(2進数の111)でカウントを中止するので、ゼロ検出回路110a、110bは、それぞれ、ファイヤー後1クロックサイクルの間だけ、Hの状態に留まる。
WRITEコマンドに関連付けをした入力データは、DRAM12の端子パッド120に送出され、端子パッド120は、入力データをデータキャプチャラッチ122に送出する。上記の例で指摘したように、入力データの受信は、データキャプチャの開始を1クロックサイクルだけ遅らせることができる。データキャプチャラッチ122は、入力データDATA QPをデシリアライザ124に送出し、デシリアライザ124は、ORゲート112からSTART CAPTURE信号を受信した時点で動作可能となる。そこで、本例においては、デシリアライザ124は、データが到着すると想定される時間から1クロックサイクル経過するまで動作可能とはならず、したがって、入力データの実際の到着にアライメントさせて正確に調整される。デシリアライザ124は、入力データDATA QPを8ビットワードにデシリアライズし、8ビットワードを第1の×8レジスタ126に供給する。第1の×8レジスタ126は、第2の×8レジスタ128に入力データを供給する。DRAM12が2つの8ビットワードをバックツーバック(back-to-back)でキャプチャできるようにするため、第2の×8レジスタ128が提供される。ついで、入力データは、先に指摘したように、トレーニングモードのときに、DRAM12のアレイおよび/またはレジスタ102に送出される。
図4および図5は、データキャプチャの開始が3クロックサイクル早いと決定された例における例示的なタイミング図を示す。図4を説明する。ラッチ106の出力(LATCHX3)は値3(2進数の011)であると事前に決定され、選択されたカウンタ(COUNTER0)は、START/LOAD信号(START/LOAD0)がHになった時、WCLK(WCLK)に同期して、3から0に向けてカウントダウンを開始する。選択されたカウンタのためのSTART/LOAD信号(START/LOAD0)は、WRITE CAPTURE信号(WRITE CAPTURE)がHになった時、Hになり、これにより、TOGGLE信号が、切り換え状態になる。図4に示すように、このTOGGLE信号は、WRITE CAPTURE信号の立ち下りで、HからL(low)か、またはLからHに切り換わる。
選択されたカウンタ(COUNTER0)の出力が0に達すると、これにより、ORゲート112(OR GATE)の出力信号が1クロックサイクルの間、Hになる。図4に破線で示すように、ORゲート112(OR GATE)の出力がHになっている間に、デシリアライザ124が、データキャプチャラッチ122から入力データのキャプチャを開始する。ORゲート112(OR GATE)の出力は、WRITE CAPTURE信号を受信してから数クロック(例えば、3クロック)サイクル遅延しているので、デシリアライザ124におけるデータキャプチャの開始は、メモリ装置(例えば、DRAM12)への正しい入力データの到着にアライメントするようにできる。
図5を説明する。入力データ(INPUT DATA)は、WCLKの立ち上がりでデータキャプチャラッチ122にキャプチャされるが、WCLKの立ち下りでデータキャプチャラッチ122の出力(DATA QP)に送出される。第1データビットは、WCLKの次の立ち上がりとORゲート112(図4のOR GATE)の出力信号の立ち上がりのうちの後に発生した立ち上がりの時点で、デシリアライザ124にキャプチャされる。このようにして、デシリアライザ124は、WCLKとORゲート112の出力信号とが共にHのときに、入力データのキャプチャを開始する。
そこで、本発明によれば、指定されたライトレイテンシーとメモリ装置の入力へ到着する入力データの実到着タイムとの差が測定される。次に、測定された差が、カウンタを利用してメモリ装置へのデータキャプチャの開始を遅延させて補償され、これにより、データキャプチャの開始とメモリへのデータの到着とが正確にアライメントされる。
以上、本発明の好ましい実施形態を説明したが、それらは本発明の例であって、本発明を限定するものではない、ことは当然のことである。本発明の主旨または範囲から逸脱しない限り、追加、削除、置換、およびその他の修正を施すことができる。したがって、本発明は、上述した説明によって限定されず、特許請求の範囲によってのみ限定される。

Claims (11)

  1. テストデータパターンの実受信タイムとテストデータパターンの予測受信タイムとの差を決定するためのエンコーダと、
    入力データを受信するための入力端子パッドと、
    前記入力端子パッドに結合した第1の入力端子を有するデシリアライザと、
    前記デシリアライザの第2の入力端子に結合した出力端子を有し、前記デシリアライザに出力信号を供給する遅延回路と
    を含み、
    前記デシリアライザは、前記出力信号に応答して前記入力データのキャプチャを開始し、
    前記遅延回路は、決定されたタイム差によって前記入力データの前記キャプチャの前記開始タイムを遅延させて、前記開始タイムを前記メモリへの前記入力データの到着にアライメントさせる
    ことを特徴とするメモリ装置。
  2. 請求項1において、前記遅延回路は、
    予め定めた数値を受信するように結合した入力端子を有し、前記数値をカウント開始点として使用する少なくとも1つのカウンタと、
    前記少なくとも1つのカウンタに結合した検出回路であって、前記少なくとも1つのカウンタが、前記カウント中に、予め定めた数値に何時達したかを判断し、前記予め定めた数値に達した時に前記入力データの前記キャプチャを開始させる前記出力信号を供給する検出回路と
    をさらに備えたことを特徴とするメモリ装置。
  3. 請求項2において、前記少なくとも1つのカウンタは、ラッチに結合した第1および第2のカウンタを含み、前記第1のカウンタは、前記数値を受信し、前記第2のカウンタとは独立にカウントを行うことを特徴とするメモリ装置。
  4. 請求項2において、前記少なくとも1つのカウンタは、減算カウンタであり、前記予め定めた数値は、0であることを特徴とするメモリ装置。
  5. プロセッサユニットと、前記プロセッサユニットに接続したメモリ装置とを含むプロセッサシステムであって、前記メモリ装置は、
    テストデータパターンの実受信タイムとテストデータパターンの予測受信タイムとの差を決定するためのエンコーダと、
    入力データを受信するための入力端子パッドと、
    前記入力端子パッドに結合された第1の入力端子を有するデシリアライザと、
    前記デシリアライザの第2の入力端子に結合した出力端子を有し、前記デシリアライザに出力信号を供給する遅延回路と
    を含み、
    前記デシリアライザは、前記出力信号に応答して前記入力データのキャプチャを開始し、
    前記遅延回路は、決定されたタイム差によって前記入力データの前記キャプチャの前記開始タイムを遅延させて、前記開始タイムを前記メモリへの前記入力データの到着にアライメントさせる
    ことを特徴とするプロセッサシステム。
  6. 請求項5において、前記遅延回路は、
    予め定めた数値を受信するように結合した入力端子を有し、前記数値をカウント開始点として使用する少なくとも1つのカウンタと、
    前記少なくとも1つのカウンタに結合した検出回路であって、前記少なくとも1つのカウンタが前記カウント中に予め定めた数値に何時達したかを判断し、前記予め定めた数値に達した時に前記入力データの前記キャプチャを開始させる出力信号を供給する検出回路と
    をさらに備えたことを特徴とするプロセッサシステム。
  7. 請求項6において、前記少なくとも1つのカウンタは、ラッチに結合した第1および第2のカウンタを含み、
    前記第1のカウンタは、前記数値を受信し、前記第2のカウンタとは独立にカウントを行う
    ことを特徴とするプロセッサシステム。
  8. 請求項6において、前記少なくとも1つのカウンタは、減算カウンタであり、前記予め定めた数値は、0であることを特徴とするプロセッサシステム。
  9. 請求項5において、前記プロセッサユニットと前記メモリ装置とは、同一集積回路チップ上にあることを特徴とするプロセッサシステム。
  10. データをメモリ装置にライトする方法であって、
    テストデータパターンの実受信タイムとテストデータパターンの予測受信タイムとの差を決定するステップと、
    前記メモリ装置にライトコマンドを送出するステップと、
    前記メモリ装置の指定されたライトレイテンシー時間に基づいて指定された時間だけ待機した後で、前記データを前記メモリ装置に送出するステップと、
    決定されたタイム差によって前記データのキャプチャ開始を遅延させて、前記データの前記キャプチャ開始を前記メモリ装置による前記データの受信にアライメントさせるステップと
    含むことを特徴とする方法。
  11. 請求項10において、前記遅延ステップは、前記決定されたタイム差に対応する予め定めたクロックサイクル数だけ前記キャプチャ開始を遅延させるステップをさらに含むことを特徴とする方法。
JP2009025395A 2001-06-06 2009-02-05 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置 Expired - Fee Related JP5044805B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/874,289 US6697926B2 (en) 2001-06-06 2001-06-06 Method and apparatus for determining actual write latency and accurately aligning the start of data capture with the arrival of data at a memory device
US09/874,289 2001-06-06

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003502706A Division JP4672978B2 (ja) 2001-06-06 2002-06-06 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置

Publications (2)

Publication Number Publication Date
JP2009104651A JP2009104651A (ja) 2009-05-14
JP5044805B2 true JP5044805B2 (ja) 2012-10-10

Family

ID=25363418

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2003502706A Expired - Fee Related JP4672978B2 (ja) 2001-06-06 2002-06-06 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置
JP2009025395A Expired - Fee Related JP5044805B2 (ja) 2001-06-06 2009-02-05 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2003502706A Expired - Fee Related JP4672978B2 (ja) 2001-06-06 2002-06-06 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置

Country Status (7)

Country Link
US (1) US6697926B2 (ja)
EP (1) EP1407455A2 (ja)
JP (2) JP4672978B2 (ja)
KR (1) KR100596177B1 (ja)
CN (1) CN100565481C (ja)
AU (1) AU2002312350A1 (ja)
WO (1) WO2002099661A2 (ja)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6791555B1 (en) * 2000-06-23 2004-09-14 Micron Technology, Inc. Apparatus and method for distributed memory control in a graphics processing system
US6941433B1 (en) * 2002-05-22 2005-09-06 Juniper Networks, Inc. Systems and methods for memory read response latency detection
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7200024B2 (en) * 2002-08-02 2007-04-03 Micron Technology, Inc. System and method for optically interconnecting memory devices
US7117316B2 (en) * 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7254331B2 (en) * 2002-08-09 2007-08-07 Micron Technology, Inc. System and method for multiple bit optical data transmission in memory systems
US7149874B2 (en) * 2002-08-16 2006-12-12 Micron Technology, Inc. Memory hub bypass circuit and method
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7836252B2 (en) * 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US7102907B2 (en) * 2002-09-09 2006-09-05 Micron Technology, Inc. Wavelength division multiplexed memory module, memory system and method
US6934199B2 (en) * 2002-12-11 2005-08-23 Micron Technology, Inc. Memory device and method having low-power, high write latency mode and high-power, low write latency mode and/or independently selectable write latency
US7738496B1 (en) 2002-12-31 2010-06-15 Cypress Semiconductor Corporation Device that provides the functionality of dual-ported memory using single-ported memory for multiple clock domains
US7245145B2 (en) * 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7428644B2 (en) * 2003-06-20 2008-09-23 Micron Technology, Inc. System and method for selective memory module power management
US7107415B2 (en) * 2003-06-20 2006-09-12 Micron Technology, Inc. Posted write buffers and methods of posting write requests in memory modules
US7260685B2 (en) * 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
KR100583951B1 (ko) * 2003-07-11 2006-05-26 삼성전자주식회사 메모리 시스템 및 이 시스템의 타이밍 조절 방법
US7389364B2 (en) * 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7210059B2 (en) * 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7133991B2 (en) * 2003-08-20 2006-11-07 Micron Technology, Inc. Method and system for capturing and bypassing memory transactions in a hub-based memory system
US20050050237A1 (en) * 2003-08-28 2005-03-03 Jeddeloh Joseph M. Memory module and method having on-board data search capabilities and processor-based system using such memory modules
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7310752B2 (en) * 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) * 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7934057B1 (en) * 2003-12-24 2011-04-26 Cypress Semiconductor Corporation Logic for implementing a dual clock domain read access with predictable timing for bi-directional inputs/outputs
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7246252B1 (en) * 2003-12-31 2007-07-17 Xilinx, Inc. Delay compensation
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7412574B2 (en) * 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
US7181584B2 (en) * 2004-02-05 2007-02-20 Micron Technology, Inc. Dynamic command and/or address mirroring system and method for memory modules
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) * 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) * 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US7447240B2 (en) * 2004-03-29 2008-11-04 Micron Technology, Inc. Method and system for synchronizing communications links in a hub-based memory system
US7213082B2 (en) * 2004-03-29 2007-05-01 Micron Technology, Inc. Memory hub and method for providing memory sequencing hints
US6980042B2 (en) * 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) * 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7099221B2 (en) * 2004-05-06 2006-08-29 Micron Technology, Inc. Memory controller method and system compensating for memory cell data losses
US7162567B2 (en) * 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7222213B2 (en) * 2004-05-17 2007-05-22 Micron Technology, Inc. System and method for communicating the synchronization status of memory modules during initialization of the memory modules
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7310748B2 (en) * 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) * 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US20060010339A1 (en) * 2004-06-24 2006-01-12 Klein Dean A Memory system and method having selective ECC during low power refresh
US7340668B2 (en) * 2004-06-25 2008-03-04 Micron Technology, Inc. Low power cost-effective ECC memory system and method
US7116602B2 (en) * 2004-07-15 2006-10-03 Micron Technology, Inc. Method and system for controlling refresh to avoid memory cell data losses
US7346817B2 (en) 2004-08-23 2008-03-18 Micron Technology, Inc. Method and apparatus for generating and detecting initialization patterns for high speed DRAM systems
US7392331B2 (en) * 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US6965537B1 (en) * 2004-08-31 2005-11-15 Micron Technology, Inc. Memory system and method using ECC to achieve low power refresh
US20060168407A1 (en) * 2005-01-26 2006-07-27 Micron Technology, Inc. Memory hub system and method having large virtual page size
US8447902B2 (en) * 2005-08-05 2013-05-21 Integrated Device Technology, Inc. Method and apparatus for predictive switching
US7526704B2 (en) * 2005-08-23 2009-04-28 Micron Technology, Inc. Testing system and method allowing adjustment of signal transmit timing
JP5023539B2 (ja) * 2006-04-11 2012-09-12 富士通セミコンダクター株式会社 半導体装置及び信号処理方法
US7894289B2 (en) 2006-10-11 2011-02-22 Micron Technology, Inc. Memory system and method using partial ECC to achieve low power refresh and fast access to data
US7900120B2 (en) * 2006-10-18 2011-03-01 Micron Technology, Inc. Memory system and method using ECC with flag bit to identify modified data
JP5188134B2 (ja) 2007-10-03 2013-04-24 キヤノン株式会社 メモリアクセス制御装置及びメモリアクセス制御方法
US7913104B1 (en) * 2007-10-12 2011-03-22 Xilinx, Inc. Method and apparatus for receive channel data alignment with minimized latency variation
KR20110001397A (ko) * 2009-06-30 2011-01-06 삼성전자주식회사 전력 소모를 줄일 수 있는 반도체 메모리 장치
US8400845B2 (en) * 2011-01-06 2013-03-19 International Business Machines Corporation Column address strobe write latency (CWL) calibration in a memory system
JP6459820B2 (ja) * 2015-07-23 2019-01-30 富士通株式会社 記憶制御装置、情報処理装置、および制御方法
KR102536657B1 (ko) * 2016-07-12 2023-05-30 에스케이하이닉스 주식회사 반도체 장치 및 반도체 시스템
CN106547517B (zh) * 2016-11-03 2018-11-20 浪潮金融信息技术有限公司 一种控制等待时间的方法及装置
JP6862951B2 (ja) * 2017-03-15 2021-04-21 富士通株式会社 メモリ制御装置、情報処理装置およびメモリ制御方法
CN109947868A (zh) * 2019-03-22 2019-06-28 晶晨半导体(上海)股份有限公司 一种存储系统的信号显示方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430676A (en) * 1993-06-02 1995-07-04 Rambus, Inc. Dynamic random access memory system
US5953278A (en) * 1996-07-11 1999-09-14 Texas Instruments Incorporated Data sequencing and registering in a four bit pre-fetch SDRAM
JP4090088B2 (ja) * 1996-09-17 2008-05-28 富士通株式会社 半導体装置システム及び半導体装置
US5917760A (en) * 1996-09-20 1999-06-29 Sldram, Inc. De-skewing data signals in a memory system
US5966343A (en) * 1997-01-02 1999-10-12 Texas Instruments Incorporated Variable latency memory circuit
DE69731066T2 (de) 1997-01-23 2005-10-06 Hewlett-Packard Development Co., L.P., Houston Speichersteuerungsvorrichtung mit programmierbarer Impulsverzögerung
KR100268429B1 (ko) 1997-03-18 2000-11-01 윤종용 동기형반도체메모리장치의데이터의입력회로및데이터입력방법
US6067606A (en) 1997-12-15 2000-05-23 Intel Corporation Computer processor with dynamic setting of latency values for memory access
US6003118A (en) 1997-12-16 1999-12-14 Acer Laboratories Inc. Method and apparatus for synchronizing clock distribution of a data processing system
US6128748A (en) 1998-03-25 2000-10-03 Intel Corporation Independent timing compensation of write data path and read data path on a common data bus
JP3727778B2 (ja) * 1998-05-07 2005-12-14 株式会社東芝 データ高速転送同期システム及びデータ高速転送同期方法
US6041419A (en) 1998-05-27 2000-03-21 S3 Incorporated Programmable delay timing calibrator for high speed data interface
US6029250A (en) 1998-09-09 2000-02-22 Micron Technology, Inc. Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same
US6108795A (en) * 1998-10-30 2000-08-22 Micron Technology, Inc. Method for aligning clock and data signals received from a RAM
US6101612A (en) * 1998-10-30 2000-08-08 Micron Technology, Inc. Apparatus for aligning clock and data signals received from a RAM
JP2000148656A (ja) * 1998-11-09 2000-05-30 Mitsubishi Electric Corp メモリシステム
US6430696B1 (en) * 1998-11-30 2002-08-06 Micron Technology, Inc. Method and apparatus for high speed data capture utilizing bit-to-bit timing correction, and memory device using same
US6272070B1 (en) * 2000-02-09 2001-08-07 Micron Technology, Inc. Method and apparatus for setting write latency
US6445624B1 (en) * 2001-02-23 2002-09-03 Micron Technology, Inc. Method of synchronizing read timing in a high speed memory system
US6658523B2 (en) * 2001-03-13 2003-12-02 Micron Technology, Inc. System latency levelization for read data

Also Published As

Publication number Publication date
US20020188816A1 (en) 2002-12-12
JP2004529453A (ja) 2004-09-24
KR20040016881A (ko) 2004-02-25
JP2009104651A (ja) 2009-05-14
CN100565481C (zh) 2009-12-02
US6697926B2 (en) 2004-02-24
AU2002312350A1 (en) 2002-12-16
WO2002099661A2 (en) 2002-12-12
KR100596177B1 (ko) 2006-07-03
CN1636196A (zh) 2005-07-06
JP4672978B2 (ja) 2011-04-20
WO2002099661A3 (en) 2003-11-13
EP1407455A2 (en) 2004-04-14

Similar Documents

Publication Publication Date Title
JP5044805B2 (ja) 実ライトレイテンシーを測定しデータキャプチャの開始をデータのメモリ装置への到着に正確にアライメントする方法および装置
US6724666B2 (en) Method of synchronizing read timing in a high speed memory system
US6851016B2 (en) System latency levelization for read data
US5909701A (en) Interface for high speed memory
JP3445476B2 (ja) 半導体メモリシステム
US7962669B2 (en) Memory controller and memory control method
US7219205B2 (en) Memory controller device
KR100801177B1 (ko) 고속 메모리 버스 상의 동기 라이트 데이터를 위한 메모리 장치, 메모리모듈, 프로세서 시스템 및 메모리장치를 동작시키는 방법
KR20030029452A (ko) 반도체 기억 장치
JP3832947B2 (ja) データ転送メモリ装置
TW201824001A (zh) 半導體記憶體裝置之資料對齊電路以及其資料對齊之方法
US6295620B1 (en) Memory test facilitation circuit using stored test data repeatedly
JPH0542701B2 (ja)

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120525

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120625

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120627

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees