JP2010250859A - 同期メモリの読出しデータ収集 - Google Patents

同期メモリの読出しデータ収集 Download PDF

Info

Publication number
JP2010250859A
JP2010250859A JP2010168125A JP2010168125A JP2010250859A JP 2010250859 A JP2010250859 A JP 2010250859A JP 2010168125 A JP2010168125 A JP 2010168125A JP 2010168125 A JP2010168125 A JP 2010168125A JP 2010250859 A JP2010250859 A JP 2010250859A
Authority
JP
Japan
Prior art keywords
data strobe
dqs
clock
input
read
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
JP2010168125A
Other languages
English (en)
Other versions
JP5241780B2 (ja
Inventor
Peter Gillingham
ピーター・ギリンガム
Robert Mckenzie
ロバート・マッケンジー
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.)
Mosaid Technologies Inc
Original Assignee
Mosaid Technologies Inc
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 Mosaid Technologies Inc filed Critical Mosaid Technologies Inc
Publication of JP2010250859A publication Critical patent/JP2010250859A/ja
Application granted granted Critical
Publication of JP5241780B2 publication Critical patent/JP5241780B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • 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
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • 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
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】単一の読出し動作でDQSイネーブル信号の最適なタイミングを決定するスナップショットデータトレーニングの方法を提供する。
【解決手段】先ずグレイコードカウントのシーケンスをメモリに書き込み、次いで単一のバーストでそれを読み出すことで実現する。コントローラは、コマンドが発行された時点から一定間隔で読出しバーストをサンプリングし、周回遅延を決定する。簡単な真理値表の検索により、通常読出しに対する最適のDQSイネーブルのタイミングを決定する。通常の読出し動作中、イネーブルされたDQS信号の第1のポジティブエッジを使用して、コマンドが発行されるたびにイネーブルされたカウンタをサンプリングすることが好ましい。カウンタサンプルが変化した場合、これはタイミングの変動が生じたことを示すが、DQSイネーブル信号を調整して変動を補正し、DQSプリアンブルの中央に合わせた位置に保つことができる。
【選択図】図1

Description

本願は、2007年5月7日に出願された国際出願番号PCT/CA2007/000787の国際出願についての特許出願(特願2009−516832)を原出願とする分割出願であるとともに、2006年6月30日に出願された米国特許出願(No. 11/477,659)に基づく優先権の利益を主張する。
本発明は、一般に、同期メモリおよび関連するメモリコントローラに関するものである。より詳細には、本発明は、双方向データバスおよび双方向データストローブ信号を使用する、メモリコントローラと同期メモリとの間の読出しおよび書込みデータの制御および転送に関するものである。
同期信号源において、データストローブクロックは、伝送装置によってデータと共に駆動される。送信機から受信機まで、クロックおよびデータパスが整合させられる。受信装置では、データストローブクロックを使用して着信データをラッチする。ダブルデータレート(DDR)SDRAMメモリシステムでは、外部データバスは双方向である。書込みデータはメモリコントローラからメモリに送られ、読出しデータはメモリからコントローラに送られる。データが送られていない場合、バスはバス伝送ラインの終端電圧によって定義されるトライステートレベルに戻る。
双方向データストローブクロックの制御もまた、どのデバイスがデータバス上にデータを駆動しているかに応じて変化する。コントローラおよびメモリデバイスへのデータストローブクロック入力は、トライステートクロック入力レベルで生成されるスプリアスクロックエッジにより、内部データ収集が引き起こされることを防止するために、イネーブル信号によってゲート制御されなければならない。メモリコントローラおよびメモリのいずれもデータストローブを駆動していない場合、データストローブ線は終端抵抗によってバス終端電圧の方へ引っ張られる。DDRおよびDDR2メモリに対しては、終端電圧VtermはVddq/2であり、これは入力バッファ基準電圧Vrefと同じである。その結果、データストローブ入力バッファは不確定な値を発生し、この値は、ノイズに応じて“0”と“1”の間を変化する可能性がある。メモリチップ上で、このことが容易に実行されるのは、書込みデータ命令および書込みデータ自体がコントローラから同期して信号源に到達し、2つの信号セット間の歪みが1ビット周期未満であるからである。データストローブクロックDQSの最初のアクティブエッジ以前に、DQSが低駆動される2ビットのプリアンブル時間がある。この時間中、メモリチップはイネーブル信号をアサートすることができる。
読出し動作中、双方向バス上の読出しコマンドと読出しデータとの整合は、かなり不確実である。コマンドおよびアドレスの出力ドライバを通じての遅延、パッケージおよびプリント回路基板の接続部からメモリデバイスを通じての遅延、読出しデータ出力バッファ、パッケージ、およびプリント配線ボードの戻りを通じての遅延、ならびに最終的にメモリコントローラの入力バッファを通じての遅延は、システム構成および動作条件に依存して多数のビット周期だけ変動する。
読出しコマンドおよび読出しデータのこの整合に関連する第1の問題は、システムの初期化に際し、読出しデータDQSイネーブル信号が2ビットのプリアンブル内に収まるように、それをどの時間に配置するかを決定することである。第2の問題は、温度または電源電圧の変動に起因する動作中のタイミングの変動をいかに調整するかである。第3の問題は、DQSクロックとマスターシステムクロックCLKとの位相差が全く任意であり得る場合、DQSでクロックインされたデータをシステムクロックドメインへいかに転送するかである。
シングルデータレートSDRAMには、DQSクロックが無く、読出しデータが、コントローラから発生するマスターシステムクロックCLKに対して設定を満足し必要条件を保持しなければならなかったので、これらの問題は存在しなかった。
クワッドデータレート(QDR)SRAMには、それ自体専用のクロックを備えた個別の読出しデータバスおよび書込みデータバスが存在するので、この問題はない。このクロックはトライステートである必要がないので、決して不確定な状態は存在しない。
双方向データストローブ信号のDDR SDRAMへのある応用が、2005年5月3日付け、A.M. Schoenfeld他に付与された米国特許第6,889,336号に開示されている。初期DDR動作速度DDR267およびDDR333では、2ビットのプリアンブル時間は、まだ比較的長く、それぞれ7.5nsおよび6.66nsであった。固定的タイミングを有するシステム設計および動作条件のある範囲を、内部DQSイネーブルに調整することはそれでも可能であった。DDR2-400からDDR2-800にわたるDDR400デバイスおよびDDR2デバイスでは、DQSイネーブル時間のダイナミックな調整が必要である。チップ間コントローラからDDR SDRAMへの典型的な周回(loop-around)の読出しタイミング遅延の組合わせの例は以下の通りである。
Figure 2010250859
米国特許第6889336号
LSI Logic 0.11 um DDR2 PHY document cw000733_1_0、2005年2月
読出しデータのタイミングは、DDR400用データレート以上ではDQSプリアンブル間隔の幅よりも長く変動する。固定的タイミングは、万全な解決法ではない。
一例として、DQSゲート制御のいくつかの実施形態が、LSI Logic 0.11 um DDR2 PHY document cw000733_1_0、2005年2月に記載されている。PHYは、GATEONと呼ばれる信号を使用して、DQS読出しストローブをイネーブルするための3つの異なる手法を実際にサポートする。
第1の手法“プログラム可能なGATEON”では、プログラム可能な遅延レジスタおよび読出しコマンドが発行された時間に基づいて、ユーザが、GATEONのタイミングをプログラミングすることができる。読出しデータトレーニングが、この方式では必要である。読出しデータトレーニングでは、種々の遅延レジスタ設定によって多数の読出し動作を試みて、期待されるデータが適切に受け取られる設定を見出し、次いで、パスの範囲の中央辺りに遅延レジスタを設定する必要がある。この手法の短所は、最適の設定を決定するためにコントローラのどこかに高水準の知能を必要とするとともに、システムを初期化するためにかなりの時間を必要とすることである。また、これは、動作中のタイミング変動を調整することができない。
第2の手法は、“フィードバックGATEON”と呼ばれる。コマンドが生成されるものと同じ方法で、信号が生成されてピンに送られる。この信号を、コマンド信号と同じ長さおよび同じ負荷でPCBトレースに沿ってメモリへ送り、コントローラに戻すことができる。コントローラでは、遅延した信号を使用してDQSのイネーブルを引き起こす。この手法の短所は、さらに2本のピン、PCBトレースを必要とするとともに、電力を消費することである。この手法では、実際のコマンドが読出しデータの周回遅延に完全には一致しない。
最後の手法は”外部GATEON”と呼ばれ、ユーザが、何らかの形でGATEON信号を生成する。この方法もまた、少なくともさらに1本のピンを必要とする。これもまた、実際のデータバスの動作を模倣する何らかの相互接続を必要とする。
概略的な一態様によると、本発明はメモリを制御する方法を提供し、前記方法は、メモリとメモリコントローラとの間の読出し遅延を測定するステップと、メモリの所定位置に初期化シーケンスを書き込むステップと、読出しコマンドをメモリに送って所定位置を読み出し、リターンデータ信号を受け取るステップと、読出しコマンドを送った後の所定時間に、メモリとメモリコントローラとの間の読出し遅延を決定するために用いる初期化サンプルを作成するために、リターンデータ信号をサンプリングするステップとを有する。
たとえば、前記メモリは、DDR SDRAMメモリまたは双方向同期ストローブ源を備えた双方向バス上のスレーブデバイスを有する。
別の概略的な態様によると、本発明はメモリを制御するためのメモリコントローラを提供し、前記コントローラは、読出し遅延決定回路およびDQSイネーブル回路を含み、初期化中に、前記読出し遅延決定回路は、読出しコマンドをメモリに送ってリターンデータ信号を受け取るまでの間の読出し遅延を決定し、読出し遅延決定回路は初期化サンプルを作成するために所定時間にデータをサンプリングする回路と、初期化サンプルの各順列に対してそれぞれの読出し遅延を保存するルックアップテーブルとを備え、そのDQS回路は、読出し遅延に応じて受け取ったDQSクロック信号をゲート制御するように構成されている。
たとえば、前記メモリはDDR SDRAMメモリを有する。
本発明の一実施形態では、同期クロック源および双方向データストローブを備えた双方向読出し/書込みバスを有する、メモリを制御するメモリコントローラにおける方法を提供し、前記方法は、メモリコントローラがメモリの所定位置にグレイコード初期化シーケンスを書き込むステップと、メモリコントローラが所定位置を読み出すために読出しコマンドをメモリに送り、リターンデータ信号を受け取るステップと、読出しコマンドを送った後の所定時間に、メモリコントローラが初期化サンプルを作成するためにリターンデータ信号をサンプリングするステップと、メモリとメモリコントローラとの間の読出し遅延を決定するためにこの初期化サンプルを使用するステップとによって、メモリとメモリコントローラとの間の読出し遅延を測定するステップを有する。
本発明の別の実施形態では、同期クロック源および双方向データストローブを備えた双方向読出し/書込みバスを有する、メモリを制御するメモリコントローラを提供し、前記コントローラは、読出し遅延判定回路およびデータストローブイネーブル回路を含み、初期化中に、この読出し遅延決定回路は、読出しコマンドをDDR SDRAMに送ってリターンデータ信号を受け取るまでの間の読出し遅延を決定し、読出し遅延決定回路は、初期化サンプルを作成するために所定時間にデータをサンプリングする回路と、初期化サンプルの各順列に対してそれぞれの読出し遅延を保存するテーブルのルックアップ機能とを備え、前記データストローブイネーブル回路は、受け取ったDQSを読出し遅延に応じてゲート制御するように構成されている。
本発明の別の実施形態では、同期クロック源および双方向データストローブを備えた双方向読出し/書込みバスを有するメモリと共に使用するデータストローブイネーブル回路を提供し、前記回路は、データストローブ信号を受け取るための入力と、ゲート制御されたデータストローブ信号を生成させるための出力と、データストローブイネーブルおよびデータストローブディスエーブルと、選択入力に応じてデータストローブ信号をゲート制御するマルチプレクサと、選択入力を設定して、データストローブイネーブルが起動した際にデータストローブ信号を選択し、かつ選択入力を設定して、データストローブディスエーブルの起動およびそれに続くデータストローブ信号の次の立ち上がりエッジの際にデータストローブ信号を非選択にする選択入力生成回路とを備える。
本発明の別の実施形態では、入力クロック信号に同期してマスタークロックの第1の位相の第1の値をラッチするための第1の回路と、入力クロック信号に同期してマスタークロックの第2の位相の第2の値をラッチするための第2の回路とを備え、第1の値または第2の値の変化が、入力クロック信号がマスタークロック源と比較して少なくとも所定量だけ変動したことを示す変動検知回路を提供する。
本発明の一実施形態では、単一の読出し動作でDQSイネーブル信号の最適なタイミングを決定するスナップショットデータトレーニングの方法が提供される。これは、先ずグレイコードカウントのシーケンスをメモリ内に書き込み、次いで単一のバーストでそれを読み出すことで実現される。コントローラは、コマンドが発行された時点から一定の間隔で読出しバーストをサンプリングし、周回遅延を決定する。簡単な真理値表の検索により、通常読出しに対する最適のDQSイネーブルのタイミングを決定する。
通常の読出し動作中、イネーブルされたDQS信号の第1のポジティブエッジを使用して、コマンドが発行されるたびにイネーブルされたカウンタをサンプリングすることが好ましい。カウンタサンプルが変化した場合、これはタイミングの変動が発生したことを示すが、DQSイネーブル信号を調整して変動を補正し、DQSプリアンブルの中央に合わせた位置に保つことができる。この技法はまた、パワーアップの際にDQSイネーブルタイミングを決定するために反復的手法を用いるシステムに適用することもできる。
本発明の別の実施形態は、DQSがラッチされたカウンタのサンプルに基づく、簡素な短待ち時間のクロックドメインクロッシング回路である。
本発明の他の態様および特徴は、添付の図面と共に、本発明の具体的な実施形態についての以下の説明を検討すれば当業者にとって明白となる。
本発明の一実施形態として示された、読出し遅延決定を備えたSDRAMデバイスのブロック図である。 読出し遅延決定用のタイミングチャートの実施例である。 読出し遅延決定用のタイミングチャートの実施例である。 読出し遅延決定用のタイミングチャートの実施例である。 図2A、2Bおよび2Cの実施例に対応する初期化サンプルに応じて読出し遅延を決定するためのルックアップテーブルである。 メモリコントローラ内に読出しデータを受け取り、図2A、2Bおよび2Cの実施例に対応する初期化サンプルを生成するための回路図である。 読出し遅延決定方法のための他のタイミングチャートである。 図5の実施例に対応するルックアップテーブルである。 読出しデータを受け取り、図5の実施例に対応する初期化サンプルを生成するための回路の回路図である。 読出し遅延が決定された後にDQSをイネーブルするための回路例の回路図である。 図8Aに対応するタイミングチャートの実施例である。 データストローブ変動を検知するための回路の回路図である。 図9Aの回路に対応するタイミングチャートの実施例である。
次に本発明の実施形態について、一例として、添付の図面を参照して説明する。
本発明の一例実施形態の以下の詳細な説明では、本願の一部を形成する添付図面を参照する。この添付図面では、本発明を実施できる具体的な一例実施形態を例示的に示す。これらの実施形態について、当業者が本発明を実施できるように十分詳細に説明するが、本発明の範囲から逸脱することなく、他の実施形態を採用し、論理的、機械的、電気的な変更およびその他の変更ができることを理解されたい。したがって、以下の詳細な説明は、限定的な意味に解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって定義される。
次に図1を参照すると、DDR-SDRAM22に接続されたメモリコントローラ20が示されている。この接続には、メモリコントローラ20からDDR SDRAM 22にアドレスとコマンドとクロックとを送るために使用される単方向バス24と、バス26上の信号が“DQ”と示されていて、DDR SDRAM 22にデータを書き込んでメモリからデータを読み出すための双方向バス26と、データストローブクロック(DQS)を搬送するための双方向接続28とが含まれる。書込み動作では、前記DQSが、メモリコントローラ20による書込みデータに同期して生成される。読出し動作では、DDR SDRAM 22およびDQSからの読出しデータが、メモリによって同期して生成される。メモリコントローラ20は、メモリコントローラ20とDDR SDRAM 22との間の読出し遅延を決定する読出し遅延決定回路30を有する。メモリコントローラ20は、読出し遅延決定回路30の出力に応じて着信DQS信号28に基づいてゲート制御されたDQS信号34を生成するDQSイネーブル回路32を有する。
この例では、メモリコントローラはメインクロックで動作するASIC同期回路である。コントローラ内部のマスターDLL(図示せず)は、メインクロックに位相固定された0度の位相差クロック、さらに90度、180度および270度の位相(図示せず)を導出する。コントローラ内部のスレーブDLL(図示せず)はまた、90度の定常位相シフトを生成する。
次に、読出し遅延決定回路30の機能を、図1と図2A、2Bおよび2Cのタイミングチャートとを参照してさらに詳細に例示的に説明する。パワーアップの際に、先ずメモリコントローラ20は、DLLがロックして、0度、90度、180度および270度の位相、さらに90度遅延した形のDQSが確実に生成するのを待つ。これにより、コントローラのデータ入力ラッチが読出しデータを確実に収集することが可能になる。次いで、コントローラ20は、適切なパワーアップコマンドをDDR SDRAM 22に送る。これに続いて、初期化シーケンス、たとえばメモリ内の連続するバイト位置に2ビットのグレイコードシーケンスをメモリに一気に書き込む。グレイコードは一意的ではなく、いかなるグレイコードでも使用できることに留意されたい。以下のように、ビット0〜3は2ビットのグレイコードのLSBを有し、一方、ビット4〜7は2ビットのグレイコードのMSBを有する。
Figure 2010250859
グレイコードのパターンは、どの時点においても1ビットのみが変化することを確実にし、2ビット間の遅延におけるいかなる僅かな差によっても誤カウントは生じない。各グレイコードビットを複数の位置(上記の例では4箇所)に書き込むことにより、以下に詳述するように、複数のサンプルを同時に抽出することが可能になる。
図2Aは最大読出し遅延の場合のタイミングチャートを示し、図2Bは公称読出し遅延の場合のタイミングチャートを示し、図2Cは最小読出し遅延の場合のタイミングチャートを示す。これらのタイミングチャートの各々は、0度クロック40、5ビットのグレイコードカウンタ42、44、46、48、50、コマンドシーケンス52、DQS 54、DQ 56、DQS90 58、DQ0 60、DQ1 62およびcount_en 64を示す。
それぞれの場合において、グレイコードカウンタは、0度クロック40と同じ周期で交番する第1のビットc0 42と、0度クロックの2倍の周期で発振する第2のビットc1 44と、0度クロックの4倍の周期で発振する第3のビットのc2 46と、0度クロックの8倍の周期で発振する第4のビットc3 48と、0度クロックの16倍の周期で発振する第5のビットc4 50とを有する。5つのビット42、44、46、48、50のタイミングは、5ビットのグレイコードが、0度クロックの4分の1サイクルごとに変化する符号語と共に生成されるようにする。
上述したようにメモリにグレイコードを書き込んだ後、読出し遅延決定のプロセスは、0度クロック40の立ち上がりエッジ上のコマンドシーケンス52の一部としてのREADコマンド66で継続する。グレイコードカウンタ42、44、46、48、50は、READコマンドを受けて最小の読出し待ち時間(RL)の原因となるcount_en 64の立ち下がりエッジによってイネーブルされる。図示した例では、最小読出し待ち時間は、3クロック周期であると仮定している。システム内に他に遅延がない場合、データは、この待ち時間の最後にメモリコントローラに到達し始める。
しかし、他に多少の遅延がシステム内にあると仮定すると、DQS54はその後のある時点で起動し、DOS54の最初の立ち上がりエッジは、2ビットのプリアンブル68によって先行されていることが示される。DQSは、起動していない間は、論理高と論理低のほぼ中間の高インピーダンス状態にあることに留意されたい。DQS54は、特定のブロック長にわたる読出しを完了するだけ十分長く起動状態にある。これに続いてDQS54はポストアンブル69となり、その後、高インピーダンス状態に戻る。
データ信号DQ56は、DQS54と同期してメモリから受け取られる。これはダブルデータレートシステムであるので、DQS 54の立ち上がりエッジおよび立ち下がりエッジのそれぞれに対して、DQ 56は1ビットを受け取る。スナップショットデータトレーニングを実行するために、READコマンド66が、上述したようにグレイコードシーケンスが書き込まれたメモリ内のアドレスと関連して発行される。DQS90 58は、サンプリングエッジが受け取ったデータパルスの中央に集中できるように生成された、DQ 56の位相が90度シフトしたものである。これは、たとえば、スレーブDLLで生成することができる。DQ0 60は、DQS90 58の立ち上がりエッジでラッチされたデータを示し、一方、DQ1 62は、DQS90 58の立ち下がりエッジでラッチされたデータを示す。
図2A、2Bおよび2Cにおいて、DQ、DQ0およびDQ1は、保存されたグレイコードの全8ビットから読み出されたビットをまとめるための簡略表記法を使用する。DQ、DQ0およびDQ1は、保存された2ビットのグレイコードからある時点に読み出された内容をすべて示している。DQ、DQ0、DQ1 =“00”が意味することは、その時間中、第1のビットが書き込まれたどのメモリ位置から読み出されたグレイコードの第1のビットも“0”であり、第2のビットが書き込まれたどのメモリ位置から読み出されたグレイコードの第2のビットも“0”である。個々のビットDQ1,...,DQ8の全詳細を図2Bにのみ示す。
図2A、2B、2Cを比較すると、読出し遅延に応じて、読出しデータDQ 56は、種々の時間にメモリから到着し始め、この種々の時間は、グレイコードカウンタ42、44、46、48、50の種々の状態と関係し得ることが理解できる。
図2Bで全体的に70と示した第1の例示的な実施形態において、8つの各入力ビットがそれぞれ余分の入力ラッチを有し、この入力ラッチが、コントローラクロックの単一の位相で入力ラッチ読出しデータDQ0をサンプリングする。図2Bにおいて、8つのビットのデータは、DQ0からDQ7について120、122、124、126、128、130、132、134で示される。DQ0からDQ3のビットは、2ビットのグレイコードのLSBを収集し、一方DQ4からDQ7のビットは、2ビットのグレイコードのMSBを収集することが理解できる。図示の例では、DQ0およびDQ4は0度位相でラッチされると仮定する。DQ1およびDQ5は、90度の位相でラッチされ、DQ2およびDQ6は、180度の位相でラッチされ、DQ3およびDQ7は、270度の位相でラッチされる。定義された時点で、これらの8つのラッチの内容をサンプリングすることによって、初期化サンプルは生成される。図示の例では、0度のサンプルが、READコマンドを発行した後に、全7クロック周期で取られ、これに続いて、90度、180度、270度のサンプルが取られる。0度のサンプルをb0、b4、90度サンプルをb1、b5、180度サンプルをb2、b6、そして270度サンプルをb3、b7で表示する。
図3において一例として示すように、初期化サンプルの様々な順列は真理値表に整理される。この表は、論理回路、たとえばレジスタまたはメモリコントローラ内のROM(Read Only Memory)として実施することができる。この場合、初期化サンプルは、ビットがサンプリング位相によって整理された表で示される。各初期化サンプルは8ビットを有し、表中の最初の2ビットは0度の位相でサンプリングされた2ビット(図2Bの例のb0およびb4)であり、次の2ビットは、90度の位相でサンプリングされた2ビット(図2Bの例のb1およびb5)であり、その次の2ビットは、180度の位相でサンプリングされた2ビット(図2Bの例のビットb2およびb6)であり、その次の2ビットは、270度の位相でサンプリングされた2ビット(図2Bの例のビットb3およびb7)である。この手法では、上に示したように、2ビットのグレイコードのシーケンスの第1のビットが、各バイトの0ビット乃至3ビットに書き込まれ、2ビットのグレイコードのシーケンスの第2のビットが、各バイトの4ビット乃至7ビットに書き込まれた状態でグレイコードシーケンスがメモリに書き込まれている必要がある。
この代わりに、同じ初期化サンプルを、2ビットのグレイコードシーケンスが書き込まれた2ビットだけを使用して生成することができる。これを、全体的に72で示した図2Bの第2の例に示すが、ここでは第1のビットがDQ0に、第2のビットがDQ4に読み出されると仮定する。この場合、DQ0およびDQ4のそれぞれを4つ全てのクロック位相でサンプリングする必要がある。こうして、8つのサンプルを使用して上述したのと同じ初期化サンプルを生成することができる。
図2Aは、最大遅延の場合を示す。この場合では、0度、90度、180度、270度のサンプルは“00 00 00 00”である。タイミングチャートから、DQS90の最初の立ち上がりエッジの通常動作は、グレイカウント15の近傍で起きることが理解できる。DQS 54は、2ビットのプリアンブルを有しているので、グレイカウント13でDQSをイネーブルすることにより最初の立ち上がりエッジに対して、それがイネーブルされることを確実にする。バースト長が4であると、DQSは、グレイカウント20近辺でディスエーブルされるのに対して、バースト長が8であると、DQSは、グレイカウント28近辺でディスエーブルされる。図3の真理値表を参照すると、この情報が、初期化サンプル“00 00 00 00”と関連して表に記入されていることが理解できる。
図2Bは、公称遅延の場合を示す。0度、90度、180度および270度のサンプルは“01 11 11 11”であり、これらは、図3の表の第6行に対応する。最後に、図2Cは最小遅延の場合を示し、0度、90度、180度、270度のサンプルは“10 10 10 10”で、これらは、図3の真理値表の第1行に対応する。表にはまた、その右側2列に、DQ0およびDQ1をサンプリングするために遅延に応じてどのクロック位相を使用すべきかの指示も含まれている。これは、いかにしてデータをコントローラのクロックドメインに移動させるか、すなわち、データをラッチするために0度のメインクロックの立ち上がりエッジまたは立ち下がりエッジのいずれかを使用して、コントローラのマスタークロックに基づいて、いかにしてメモリからコントローラに読み出されるデータを同期させるかを指定する。
読出し遅延を決定した後、図1のDQSイネーブル回路32は、着信DQSおよび/またはDQS90をイネーブル/ディスエーブルする。より詳細には、通常の読出し動作中、コントローラは、(この例では)ブロック長BL=8および読出し待ち時間RL=3のREADコマンドを発行する。count_en信号がアサートされ、読出しコマンドが発行された後の3番目のクロックエッジに続いてグレイコードカウンタが0から開始される。データが、これより少しでも早く到着することはあり得ない。このカウンタは、どの時点でも1ビットのみが変化するグレイコードカウンタであることに留意されたい。このカウント値は、通常の2進数符合化方式には対応しない。カウンタは、1/4クロック周期ごとに増加する。一旦カウンタが、(以前に測定された遅延に対して)イネーブルまたはディスエーブルにするための表に保存された値に達すると、それに応じてDQSは、イネーブルまたはディスエーブルされる。
その上、カウンタ値は、データバーストのデータの第1ビットに対応する、立ち上がりエッジ上のイネーブルされたDQSクロックによってラッチされる。この値は、真理値表のある行に対応する。この値が、以前の読出しサイクルすなわち前節で説明された初期化シーケンスでの値と同じである場合は、周回遅延は一定に保たれている。この値が異なる場合は、タイミングは変動してしまっており、DQSイネーブルのタイミングは、コントローラによって更新されなければならない。
次に図4を参照して、本発明の一実施形態による、図1の双方向バス26を通じて単一ビットを受け取るためのメモリコントローラ内の関数回路を説明する。図示したのはDQS_EN 80と表示されたDQSイネーブルであり、これは図1のDQSイネーブル回路32により生成されたDQSイネーブル入力である。DQSイネーブル80は、DQS90入力58および反転されたDQS90入力82をゲート制御する。DQS90は、DDR SDRAM 22からメモリコントローラ20へ送られるDQSの位相が90度シフトされたものであることを思い起こされたい。DQS TB0は、DQS90の立ち上がりエッジに対応する立ち上がりエッジを有し、一方、DQS TB1 83は、DQS90.の立ち下がりエッジに対応する立ち上がりエッジを有する。データ信号はDQn 56上で受け取られ、DQn 56は、DQS90の立ち上がりエッジでラッチするフリップフロップ84と、DQS90の立ち下がりエッジでラッチするDフリップフロップ86とのD諸入力に接続される。フリップフロップ84はDQ0 88を出力し、これは、DQS90の立ち上がりエッジでラッチされるデータである。フリップフロップ86は、DQ1 90を出力し、これは、DQS90の立ち下がりエッジでラッチされるデータである。
DQ0 88およびDQ1 90をサンプリングして、0度クロックと同期するように再調整された出力89および90を生成する回路85が提供される。これは、フリップフロップ92および94で、DQ0を0度および180度のクロック位相でサンプリングし、マルチプレクサ選択入力mux_sel 101に応じて、マルチプレクサ100で0度サンプルと180度サンプルのいずれかを選択することによって達成される。使用されるmux_sel値は、読出し遅延の関数であり、上述したようにルックアップテーブルに保存される。次いでこの出力は、Dフリップフロップ104により0度クロック位相でサンプリングされ出力89を生成する。DQ1 90は、Dフリップフロップ96により180度でサンプリングされ、一方、0度サンプルは、Dフリップフリップ86の出力に対応する。DQ1は、DQ0後の1/2クロック周期の間有効である。これにより、DQ0およびDQ1のデータを同一間隔内に有効となるように効果的に再調整する。180度サンプルまたは0度サンプルのいずれかが、今度もマルチプレクサ選択入力mux_sel 101に応じて、マルチプレクサ102により選択される。選択された出力は、Dフリップフロップ106を使用して0度クロック位相でサンプリングされ出力90を生成する。
図示した例には、RTL(Register Transfer Language)クロック入力120への出力89、90を再調整するためのもう1対のフリップフロップ108、110が含まれる。クロックされた出力全体が、109、111で示され、これらはそれぞれ入力56の偶数ビットと奇数ビットに対応する。コントローラ-メモリ間インターフェースのビット0および1に関してこれまで述べた回路全体が、インターフェースの各ビットに対して繰り返される。最新設計のパーソナルコンピュータの典型的インターフェース幅は64ビットであるが、他の用途では幅は異なる。
回路122が、初期化サンプルを生成するために提供される。これは、DQ0 88をサンプリングするDフリップフロップ112から構成されている。Dフリップフロップ112は、フリップフロップ114を使用して0度クロックに再調整される。フリップフロップ114は、任意選択で、フリップフロップ116によりRTLクロックに再調整される。
図2Bの第1の例70に対応する機能を実現するため、回路122がインターフェースのどのビットで実施されるかに応じて、DQ0は、異なるクロック位相でサンプリングされる。図示の例では、DQ0およびDQ4に対しては、サンプリングは、0度クロック位相で行われる。DQ1およびDQ5に対しては、サンプリングは、90度クロック位相で行われる。DQ2およびDQ6に対しては、サンプリングは、180度クロック位相で行われる。最後に、DQ3およびDQ7に対しては、サンプリングは、270度クロック位相で行われる。その結果の全体は、読出し遅延がどれだけか決定するために図3のルックアップテーブルと共に使用できる8ビットの初期化サンプルである。これを使用して、通常動作のためにDQS_enable 80をいつイネーブルするかを決定する。別の方法として、2ビットがそれぞれ4回サンプリングされる場合の図2Bの第2の例72に対応する実施形態では、回路122は、インターフェースの2ビットに対して実施される必要があるだけだが、各ビットが、0度、90度、180度、270度クロック位相の各々でサンプリングできるように4回実施される必要がある。
代替回路の実施において、回路122はインターフェースの全てビットに対して再現できるので、論理は全てのビットに対して同一であることに留意されたい。
初期化サンプル出力は、入力に応じて、連続的に変化している。初期READコマンドの所定時間後、初期化サンプルは“有効”である。
別の実施形態では、より長い範囲の待ち時間が可能である。16ビット周期の遅延範囲をカバーするために初期化パターンをメモリに書き込むには、3ビットのグレイコードが必要である。1ビットにつき1つのサンプリングラッチを備えた1バイト幅のインターフェースに3ビットのサンプリング位相を4つ全て収集することは、もはや不可能である。12ビット幅のインターフェースが必要となるか、あるいは別個の読出し動作で個々のグレイコードビットを順次サンプリングすることができる。
次に図5を参照して、本発明のこの実施形態を説明するために使用するタイミングチャートを示す。この実施形態では、上述の2ビットのグレイコードではなく3ビットのグレイコードが採用される。たとえば、メモリ内の16の連続する12ビット位置の連続バイト位置に書き込まれるグレイコードは以下のものでよい。
Figure 2010250859
16個のメモリ位置全体を読み出すために、2つのBL8(バースト長は8)READコマンドを実行する。これは、コマンドシーケンス200内に示されており、そこにBL8 READ201および第2のBL8 READ 203がある。図3の場合のように専用ハードウェアを用いて実施したグレイカウンタを使用するのではなく、RTL(図示せず)でグレイコードカウンタを実施する。この場合、グレイコードカウンタCK 202は、第1のREADコマンド201により0からカウントを開始する。受け取ったDQSを204で示す。
全体的に220で示した最小遅延の場合(RL=3)では、DQSは、クロックカウント=12で第1の立ち上がりエッジを有する。受け取ったDQビットの簡略表記を206に示す。90度DQSクロックは208にあり、DQS90のDQ0(立ち上がりエッジで取られたサンプル)およびDQ1(立ち下がりエッジで取られたサンプル)は、それぞれ210、212に示される。図示の例では、初期化サンプルは、クロックカウント=40、41、42、43の間に生成され、その直後に215で示したように有効な初期化サンプルが存在する結果になったと仮定する。次いで有効な初期化サンプルをルックアップテーブルと共に使用して読出し遅延がどれだけか決定し、次にDQS_enableをいつイネーブルするかを決定する。
最大遅延の場合を全体的に222で示す。この場合、調整できる最大読出し遅延後のクロックカウント=40の直後までDQS90の立ち上がりエッジは発生しない。
図6は、この例用のルックアップテーブルを示す。この場合、タイミングは、グレイコードカウンタ202を基準とする。
図7は、図5の実施形態のための入力DQ回路の例を示す回路図である。この回路は、基本的に図4の回路と同じである。この場合、12ビット用のサンプリング回路は、DQ0、DQ4、DQ8に対しては0度サンプル、DQ1、DQ5、DQ9に対しては90度サンプル、DQ2、DQ6、DQ10に対しては180度サンプル、そしてDQ3、DQ7、D11に対しては270度サンプルを生成する。その結果は、図6のルックアップテーブルの適切な行を検索するために使用できる12ビットの初期化サンプルである。
より一般に、Nビットのグレイコードを使用することができる。Nビットのグレイコードには、2n個の符号語がある。この場合、2n個の符号語の各々を2n+1個の連続するアドレス内の1対のアドレスに書き込むことにより、メモリコントローラはメモリの所定位置にグレイコード初期化シーケンスを書き込む。これには、2n+1個のアドレスの各々にNビットを書き込む必要があり得、その場合グレイコードの各ビットが、4つのクロック位相でサンプリングされる。別の方法では、これにはg1,g1,g1,g1,..., gN,gN,gN,gNを1対のアドレスに書き込むことで、それぞれのグレイコード符号語g1, g2, ...,gNのビットを4Nビットとして2n+1個のアドレスの各々に書き込む必要があり得る。この場合、グレイコードの各ビットを4つのクロック位相でサンプリングするには、4N個のデータ信号を受け取り、第1のクロック位相でN個のデータ信号をサンプリングし、第2のクロック位相で別のN個のデータ信号をサンプリングし、第3のクロック位相で別のN個のデータ信号をサンプリングし、第4のクロック位相で別のN個のデータ信号をサンプリングする必要が伴う。
上記の詳細な説明では、読出し遅延を測定するための機構に重点を置いた。遅延がどれだけかを決定した後、こうして決定された遅延に従って、図1のDQSイネーブル回路32がDQS信号についてのゲート制御を開始する。次にDQSイネーブル回路32の具体的な回路例について図8Aを参照して説明する。ここで、DQS 158およびDQS# 160と表示されたDQSの反転信号の両方が、メモリからインターフェースを通じて受け取られると仮定する。そこにある回路180は、DQSおよびDQS#の両信号とも有するDDR2メモリとは対照的に、本明細書においてDDR1と呼ぶ、DQS信号のみがあってDQS#信号の無いDDRメモリ設計に対して図8AのDQSイネーブル回路を上位互換にさせるためのものである。したがって、DDR1の実施では、そのような場合、DQS#はメモリコントローラにより生成される必要がある。回路180は、DDR1モードとDDR2モードのいずれかを選択する。残りの回路182は、ゲート制御されたDQS#信号172(dqsb_iと表示)およびゲート制御されたDQS信号173(dqs_iと表示)を生成する役割を果たす。上位互換性が要求されない場合、回路180は必要ない。
回路182は、コントローラから入力141を受け取るための第1のDフリップフロップ144を有し、これが、初期化サンプルによって決定される読取り経路遅延に対応した時点でアサートされ、DQSをいつイネーブルするかを示す。回路182はまた、CLK(N)と呼ぶクロック入力を140で受け取り、このことは、コントローラがこの入力に対してクロック位相を選択できることを示す。フリップフロップ144は、出力dqs_enable_ff 148を生成する。同様に、第2のDフリップフロップ146は、コントローラからDQSをいつディスエーブルするかを示す入力143を受け取る。この入力143は、第1のフリップフロップ144をクロックするために使用されるクロック140と180度位相がずれたクロック入力142によってクロックされる。このDフリップフロップ146は、dqs_disable_ff出力150を生成する。dqs_enable_ff 148とdqs_disable_ff 150の反転信号とは、ANDゲート152に結合され、その出力は、SRフリップフロップ154のS(set)入力に接続される。dqs_disable_ff 150の反転信号は、SRフリップフロップ154のD入力にも接続される。フリップフロップ154のQ出力は、dqs_enable_i 156であり、これは、第1のマルチプレクサ170および第2のマルチプレクサ171のマルチプレクサ選択入力に接続される。マルチプレクサ170への2つの入力には、DQS#入力168およびVDD 169がある。マルチプレクサ170の出力はdqsb_iであり、これは、SRフリップフロップ154のクロック入力への入力でもある。マルチプレクサ171への2つの入力には、DQS入力166およびVSS 177がある。マルチプレクサ171の出力はdqs_iである。
次に、図8Aの回路の動作を、図8Bのタイミングチャートを参照して説明する。図8Bは、DQS 166、DQS# 168、dqs_enable_ff 148、dqs_disable_ff 150、dqs_enable_i 156およびdqsb_i 172それぞれのプロットを示す。dqs_i 173が、dqsb_i 172と同期してイネーブルされることに留意されたい。読出しコマンドを送った後のある時点であって、以前に測定された読出し遅延によって決定された時点で、Dフリップフロップ144の入力141は、メモリコントローラの制御下で高くなる。入力141は、クロック入力140の立ち上がりエッジでクロックインされる。図8Bの例では、dqs_enable_ff 148が、270度クロック位相で高くなることが理解できる。dqs_enable_ff 148が高くなるとき、ANDゲート152の出力は高くなり、SRフリップフロップ154へのセット入力は、dqs_enable_iを高に遷移させる。図8Bにおいて、dqs_enable_i 156が、270度クロック位相の僅か後に高位に遷移することが理解できる。一旦dqs_enable_i 156が高になると、マルチプレクサ170へのDQS#入力168が選択され、したがってDQS#がdqsb_i 172に現れる。dqs_enable_ff 148が、その後のある時点で低くなるとき、SRフリップフロップ154へのセット入力は低くなるが、D入力はdqs_disable_ff 150の反転信号であるので高い。このように、dqs_enable_i 156は、今のところ高いままである。dqs_enable_ff 148の立ち上がりエッジとDQS 166の第1の立ち上がりエッジとの時間間隔は、1/4クロックサイクルより長い。これは、DQSのタイミングとメインコントローラを用いてのタイミングとの間の変動の許容限度を表す。90度より大きい変動が発生してdqs_enableのタイミングが再調整できるのはいつかを検知するための回路を以下に説明する。
DQS#をディスエーブルするため、その後のある時点で、Dフリップフロップ146へのディスエーブル入力143がメモリコントローラの制御下で高くなる。入力143は、Dフリップフロップ144へのイネーブル入力をクロックインするために使用するクロックより180度遅れたクロックでクロックインされる。Dフリップフロップ146はdqs_disable_ff出力150を生成し、該Dフリップフロップ146の出力が、SRフリップフロップ154の反転入力であるD入力に接続されている。このため、SRフリップフロップ154へのクロック入力の次の立ち上がりエッジ(すなわち、DQS#の次の立ち上がりエッジ)で、dqs_enable_iは低くなる。これにより、マルチプレクサ170へのDQS#入力168は非選択となり、dqsb_i 172はVDDに遷移する。こうして、dqs_disable_ffが高くなった後、dqs_enable_iが低くなるのは、dqsb_iの次の立ち上がりエッジ以降であることがタイミングチャートにおいて理解できる。
図8Aにおいて全体的に197として示された回路であって、マルチプレクサ選択入力156を生成するための具体的な回路を説明してきた。より一般に、データストローブイネーブルの起動の際に、データストローブ信号を選択するための選択入力を設定し、データストローブディスネーブルの起動およびそれに続くデータストローブ信号の次の立ち上がりエッジの際に、データストローブ信号を非選択にするための選択入力を設定する選択入力生成回路を使用することができる。
回路180は、DDR1の実施用の単一DQS入力158からDQS# 168およびDQS166を生成するための機構を単に提供する。DQS#入力160は、DDR1の実施には存在しない。回路180は、第1および第2のマルチプレクサ162、164から構成されている。これらは、それぞれDQS入力158およびDQS#入力160を受け取るために接続される。マルチプレクサ162は、常にDQS158を選択する。DDR2が低い場合は、マルチプレクサ164は、DQS出力168をDQS#入力160とするように選択する。そうでない場合は、DQS出力168は、DQS158の反転信号から生成される。常にDQS158を選択するマルチプレクサ162を含めることにより、DQSおよびDQS#に等しい負荷がかかることを確実にする。
DQSおよびDQS#は、メモリコントローラから受け取るクロックに応じてメモリ内に生成される。しかし、DQSがメモリコントローラに戻って受け取られる時点までに、このクロックは、メモリの回路を通ってDQS出力を通して戻り、メモリコントローラからメモリまで伝送される。その結果として、メモリコントローラで受け取られるDQSおよびDQS#の出力と、図8BのDQSイネーブルのタイミング、およびそれに対応してdqs_enable_ff、dqs_disable_ff、dqs_enable_iおよびdqsb_iのタイミングとの間の変動がいくらか存在する。しかし、いかなるDDR SDRAMの実施でも、より一般には、DQS信号は、メインクロックに対していくぶん変動することが予想できる。本発明の他の実施形態では、この変動を検知するものであって、より詳しくは、いつ変動が90度より大きくなるかを検知するための機構を提供する。一旦変動が、90度に達すると、この変動は、DQSイネーブルおよびディスネーブルの信号のタイミングを更新することによって補正されることができる。
次に図9Aを参照して、本発明の一実施形態によって提供されるデータストローブ変動検知器の回路図を示す。2つのDフリップフロップ191、192のクロック入力を駆動するDQS入力190が示されている。フリップフロップ191のD入力は、マスターDLL 200から0度クロックを受け取り、一方、フリップフロップ192のD入力は、マスターDLL 200の90度位相を受け取る。第1のフリップフロップ191の出力196を変動<1>と呼び、一方、第2のフリップフロップ192の出力198を変動<0>と呼び、あわせて“変動出力”と呼ぶ。
次に図9Aの回路の動作を、図9Bのタイミングチャートを参照して説明する。0度クロック200、90度クロック202、DQS 190および変動<1:0>196、198が示されている。DQS 190が、0から1へ遷移する(立ち上がりエッジ)とき、0度および90度のクロック200、202の状態がラッチされて出力196、198を変動させる。ラッチすることができる内容の4つの例を図9Bに示す。204での最初の例において、変動出力196、198は“10”である。その後のサンプリング時206(DQ 190の次の立ち上がりエッジ)では、変動サンプルは、まだ“10”である。その後のサンプリング時208では、変動出力196、198は、今や“11”である。この状態は、その後のサンプリング時210でもやはり同じである。変動出力が、サンプリング時208で“10”から“11”に変化したという事実は、90度より大きな変動が発生したという事を示す。次いで、この情報は、メモリコントローラにより使用されてDQSイネーブルおよびディスネーブルの時間が更新される。
図8AのDQSイネーブル回路は、読出し遅延を決定するためのいかなる機構とも一緒に使用できることに留意されたい。さらに、図9Aのデータストローブ変動検知器は、メインクロックと比べて変動するDQS信号を受け取るいかなる回路内にも使用することができる。その特定の用途は、読出し遅延の決定方法を用いる回路および上述の回路においておよび/または上述のDOSイネーブル方式においてである。
非常に具体的な変動検出回路を説明してきた。より一般には、入力クロック信号と同期して、マスタークロックの第1の位相の第1の値をラッチする第1の回路が提供される。上記の例で、第1の回路はDフリップフロップであるが、他の実施も可能である。入力クロック信号と同期して、マスタークロックの第2の位相の第2の値をラッチする第2の回路がある。上記の例で、第2の回路はDフリップフロップであるが、他の実施も可能である。第1の値または第2の値のいずれかの変化は、入力クロック信号が、マスタークロック源と比べて少なくとも所定量だけ変動したことを示す。説明した詳細な例では、第1のクロック位相は、マスタークロックに基づいて0度クロックであり、第2のクロック位相は、マスタークロックに基づいて90度クロックであり、所定量は1/4クロックサイクルであるが、2つのクロックの位相を適切に選択することによって他のシフトを検知することができる。
上の具体的な例では、DDR1およびDDR2について言及する。より一般に、本発明の実施形態は、DDR、DDR2、DDR3およびGDDRの様々な変種を含む双方向データストローブを使用する、全ての工業規格のDDR DRAMに適用することができる。さらにより一般に、本発明の実施形態は、同期クロック源および双方向データストローブを備えた、双方向読出し/書込みバスを有するメモリに適用することができる。上述のDQSは、このような双方向データストローブの具体的な例である。より一般的な状況で、データストローブをイネーブルするためのデータストローブイネーブル回路が提供され、DQSイネーブル回路はこの具体的な例である。
また本発明は、データクロックをゲート制御することにより内部クロック電力を節約するためにQDRおよびQDR2 SRAMに好適なものとなることができるともに、クロックドメインクロッシングを実施することに好適なものとなることができる。
さらに、本明細書で説明された方法および回路は、DQSをイネーブルする以外の目的で読出し遅延を決定するために使用することができる。具体的な例は、クロック境界上で変動を決定することであって、クロック境界上でデータをクロッシングすることである。
また本発明は、高速シリアルインターフェースにおいて好適なものとなることができる。上述の実施形態では、簡単にするため、図に示すようにデバイス構成要素および回路は互いに接続される。本発明の実際の応用では、半導体ICおよびDRAMデバイス、構成要素、回路等は、直接互いに接続されていてもよい。なお、構成要素、回路等は、半導体ICおよびDRAMデバイスの動作に必要な他の構成要素、回路等を介して、間接的に互いに接続されていてもよい。したがって、半導体ICおよびDRAMデバイスの実際の構成において、回路構成要素およびデバイスは、(直接または間接的に接続され)互いに結合される。
本発明の上述の実施形態は、例示だけを目的とする。変更形態、改変形態および変形形態は、本発明の範囲から逸脱することなく、当業者によって特定の実施形態として実施されることができ、本発明は、本願に添付された特許請求の範囲によってのみ定義される。
20 メモリコントローラ
22 DDR-SDRAM
24 単方向バス
26 双方向バス
28 双方向接続
30 読出し遅延決定回路
32 DQSイネーブル回路
34 DQS信号
40 0度クロック
42、44、46、48、50 グレイコードカウンタ
52 コマンドシーケンス
54 DQS
56 データ信号DQ
58 DQS90
60 DQ0
62 DQ1
64 count_en
66 READコマンド
69 ポストアンブル
70 第1の例
72 第2の例
80 DQSイネーブル
82 反転されたDQS90入力
83 DQS TB1
84、86、92、94、96、104、106、108、110、112、114、116、144、146 フリップフロップ
154 SRフリップフロップ
101 マルチプレクサ選択入力mux_sel
100、102、170、171 マルチプレクサ
120 RTLクロック入力
140 CLK(N)クロック入力
148 dqs_enable_ff出力
150 dqs_disable_ff出力
152 ANDゲート
156 dqs_enable_i
158 DQS入力
172 dqsb_i
173 dqs_i
160 DQS#入力
196 変動出力
198 変動出力
200 コマンドシーケンス
201、203 READコマンド
202 グレイコードカウンタCK

Claims (10)

  1. 同期メモリコントローラにおいてデータストローブ入力をイネーブルにするための方法であって、
    データストローブイネーブル値およびデータストローブエッジ値を決定するステップと、
    読出しコマンドの発行があればカウンタを開始するステップと、
    前記カウンタの出力が前記データストローブイネーブル値に達したとき、前記データストローブ入力をイネーブルにするステップと、
    データストローブエッジサンプルを提供するために、前記データストローブ入力のエッジを使用して前記カウンタの出力をラッチするステップと、
    前記データストローブエッジサンプルが前記データストローブエッジ値と異なっている場合、
    前記データストローブエッジサンプルと前記データストローブエッジ値との間の差を前記データストローブイネーブル値に加えるステップと、
    前記データストローブエッジ値を前記データストローブエッジサンプルに置き換えるステップと
    を有する方法。
  2. 前記カウンタの出力をラッチする前記ステップは、前記データストローブ入力のイネーブルに続いて、前記データストローブ入力の第1エッジで前記カウンタの出力をラッチするステップを有する請求項1に記載の方法。
  3. 前記カウンタの出力をラッチする前記ステップは、前記データストローブ入力の立ち上がりエッジで前記カウンタの出力をラッチするステップを有する請求項1に記載の方法。
  4. 前記データストローブ入力の4倍の周波数で前記カウンタをクロックするステップをさらに有する請求項1に記載の方法。
  5. 同期メモリコントローラにおいてデータストローブ入力をイネーブルにするための方法であって、
    データストローブイネーブルチと第1データストローブエッジ値と第2データストローブエッジ値とを決定するステップと、
    前記データストローブイネーブル値によって決定された時間での読出しコマンドの発行に続いて前記データストローブ入力をイネーブルにするステップと、
    第1データストローブエッジサンプルを提供するために、前記データストローブ入力のエッジを使用してクロックをラッチするステップと、
    第2データストローブエッジサンプルを提供するために、前記データストローブ入力のエッジを使用して前記クロックの位相シフトバージョンをラッチするステップと、
    前記第1データストローブエッジサンプルが前記第1データストローブエッジ値と異なっている場合、または、前記第2データストローブエッジサンプルが前記第2データストローブエッジ値と異なっている場合、
    変動を補正するために前記データストローブイネーブル値を調整するステップと、
    前記第1データストローブエッジ値を前記第1データストローブエッジサンプルに置き換えるとともに、前記第2データストローブエッジ値を前記第2データストローブエッジサンプルに置き換えるステップと
    を有する方法。
  6. 前記クロックおよび前記クロックの前記位相シフトバージョンは、前記データストローブ入力のイネーブルに続いて、前記データストローブ入力の第1エッジでラッチされる請求項5に記載の方法。
  7. 前記クロックおよび前記クロックの前記位相シフトバージョンは、前記データストローブ入力の立ち上がりエッジでラッチされる請求項5に記載の方法。
  8. 前記クロックの前記位相シフトバージョンの周波数は、前記クロックの周波数と実質的に等しい請求項5に記載の方法。
  9. 前記クロックの前記位相シフトバージョンは、前記クロックに対して90度位相シフトされている請求項8に記載の方法。
  10. 前記クロックの前記位相シフトバージョンの周波数と前記クロックの周波数とは、前記データストローブ入力の周波数と実質的に等しい請求項8に記載の方法。
JP2010168125A 2006-06-30 2010-07-27 同期メモリの読出しデータ収集 Expired - Fee Related JP5241780B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/477,659 US7685393B2 (en) 2006-06-30 2006-06-30 Synchronous memory read data capture
US11/477,659 2006-06-30

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009516832A Division JP5657888B2 (ja) 2006-06-30 2007-05-07 同期メモリの読出しデータ収集

Publications (2)

Publication Number Publication Date
JP2010250859A true JP2010250859A (ja) 2010-11-04
JP5241780B2 JP5241780B2 (ja) 2013-07-17

Family

ID=38845061

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009516832A Expired - Fee Related JP5657888B2 (ja) 2006-06-30 2007-05-07 同期メモリの読出しデータ収集
JP2010168125A Expired - Fee Related JP5241780B2 (ja) 2006-06-30 2010-07-27 同期メモリの読出しデータ収集

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2009516832A Expired - Fee Related JP5657888B2 (ja) 2006-06-30 2007-05-07 同期メモリの読出しデータ収集

Country Status (8)

Country Link
US (3) US7685393B2 (ja)
EP (1) EP2036090B1 (ja)
JP (2) JP5657888B2 (ja)
KR (1) KR101374417B1 (ja)
CN (1) CN101479802B (ja)
AT (1) ATE532182T1 (ja)
TW (1) TWI453754B (ja)
WO (1) WO2008000059A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140043390A (ko) * 2011-06-14 2014-04-09 마벨 월드 트레이드 리미티드 Dqs 게이팅을 위한 시스템 및 방법
US8982650B2 (en) 2011-09-15 2015-03-17 Fujitsu Semiconductor Limited Memory interface circuit and timing adjusting method

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7362700B2 (en) * 2002-06-27 2008-04-22 Extreme Networks, Inc. Methods and systems for hitless restart of layer 3 packet forwarding
US7685393B2 (en) * 2006-06-30 2010-03-23 Mosaid Technologies Incorporated Synchronous memory read data capture
US7554855B2 (en) * 2006-12-20 2009-06-30 Mosaid Technologies Incorporated Hybrid solid-state memory system having volatile and non-volatile memory
US8504788B2 (en) * 2006-12-20 2013-08-06 Rambus Inc. Memory controller, system and method for read signal timing calibration
JP4837586B2 (ja) * 2007-01-30 2011-12-14 ルネサスエレクトロニクス株式会社 半導体装置
US20080320192A1 (en) * 2007-06-19 2008-12-25 Sundaram Chinthamani Front side bus performance using an early defer-reply mechanism
US20090243681A1 (en) * 2008-03-26 2009-10-01 Rambus Inc. Embedded Source-Synchronous Clock Signals
US7920431B2 (en) 2008-06-02 2011-04-05 Micron Technology, Inc. Asynchronous/synchronous interface
US9431091B2 (en) 2008-06-06 2016-08-30 Uniquify, Inc. Multiple gating modes and half-frequency dynamic calibration for DDR memory controllers
US7975164B2 (en) * 2008-06-06 2011-07-05 Uniquify, Incorporated DDR memory controller
US8661285B2 (en) 2008-06-06 2014-02-25 Uniquify, Incorporated Dynamically calibrated DDR memory controller
TWI401695B (zh) * 2009-01-23 2013-07-11 Nanya Technology Corp 訊號調整系統與訊號調整方法
TWI410982B (zh) * 2009-03-18 2013-10-01 Mstar Semiconductor Inc 記憶體控制器中資料觸發信號的校正電路及其校正方法
CN101645301B (zh) * 2009-05-27 2013-06-12 无锡中星微电子有限公司 一种用于读数据采样的温度自适应调整方法及装置
CN101692346B (zh) * 2009-06-19 2013-06-26 无锡中星微电子有限公司 一种存储器数据采样装置及一种采样控制器
US8489912B2 (en) * 2009-09-09 2013-07-16 Ati Technologies Ulc Command protocol for adjustment of write timing delay
EP2333673B1 (en) * 2009-12-07 2014-04-16 STMicroelectronics (Research & Development) Limited Signal sampling and transfer
EP2339795B1 (en) 2009-12-07 2013-08-14 STMicroelectronics (Research & Development) Limited Inter-chip communication interface for a multi-chip package
EP2339475A1 (en) 2009-12-07 2011-06-29 STMicroelectronics (Research & Development) Limited Inter-chip communication interface for a multi-chip package
EP2333830B1 (en) 2009-12-07 2014-09-03 STMicroelectronics (Research & Development) Limited a package comprising a first and a second die coupled by a multiplexed bus
EP2339476B1 (en) 2009-12-07 2012-08-15 STMicroelectronics (Research & Development) Limited Interface connecting dies in an IC package
EP2330514B1 (en) 2009-12-07 2018-12-05 STMicroelectronics (Research & Development) Limited An integrated circuit package
US8284621B2 (en) * 2010-02-15 2012-10-09 International Business Machines Corporation Strobe offset in bidirectional memory strobe configurations
JP5577776B2 (ja) * 2010-03-17 2014-08-27 株式会社リコー メモリ制御装置及びマスクタイミング制御方法
CN101923524B (zh) * 2010-08-04 2012-08-22 苏州国芯科技有限公司 一种基于clb总线的存储器接口方法
WO2012027080A1 (en) * 2010-08-25 2012-03-01 Rambus Inc. Memory controller with fast reacquisition of read timing to support rank switching
US8645743B2 (en) 2010-11-22 2014-02-04 Apple Inc. Mechanism for an efficient DLL training protocol during a frequency change
US8521937B2 (en) 2011-02-16 2013-08-27 Stmicroelectronics (Grenoble 2) Sas Method and apparatus for interfacing multiple dies with mapping to modify source identity
US8897084B2 (en) 2011-09-08 2014-11-25 Apple Inc. Dynamic data strobe detection
CN104272283B (zh) * 2012-05-01 2017-08-04 马维尔国际贸易有限公司 用于dqs选通的***和方法
KR101964261B1 (ko) 2012-05-17 2019-04-01 삼성전자주식회사 자기 메모리 장치
US9166596B2 (en) * 2012-11-27 2015-10-20 Altera Corporation Memory interface circuitry with improved timing margins
US20140281662A1 (en) 2013-03-12 2014-09-18 Uniquify, Inc. Dynamically adaptive bit-leveling for data interfaces
US8947140B2 (en) 2013-03-12 2015-02-03 Uniquify, Inc. Continuous adaptive training for data interface timing calibration
TWI521508B (zh) 2013-08-13 2016-02-11 瑞昱半導體股份有限公司 記憶體控制電路與控制記憶體模組之資料讀取程序之方法
CN104424984B (zh) * 2013-08-20 2017-05-24 瑞昱半导体股份有限公司 存储器控制电路与控制存储器模块的数据读取程序的方法
JP6190697B2 (ja) * 2013-11-07 2017-08-30 ルネサスエレクトロニクス株式会社 半導体装置
KR102215597B1 (ko) 2013-12-23 2021-02-15 삼성전자주식회사 전자기기
US9368172B2 (en) * 2014-02-03 2016-06-14 Rambus Inc. Read strobe gating mechanism
KR102143654B1 (ko) 2014-02-18 2020-08-11 에스케이하이닉스 주식회사 반도체장치
KR102193468B1 (ko) * 2014-04-04 2020-12-21 삼성전자주식회사 타이밍 마진을 적응적으로 보정하는 메모리 장치 및 이를 포함하는 집적 회로
KR102284103B1 (ko) 2014-10-28 2021-08-02 삼성전자주식회사 차동 신호들 간 정전류 흐름 방지용 래치 컨트롤러를 구비한 반도체 장치
US9324409B1 (en) * 2014-11-06 2016-04-26 Xilinx, Inc. Method and apparatus for gating a strobe signal from a memory and subsequent tracking of the strobe signal over time
KR102298815B1 (ko) 2015-01-05 2021-09-06 삼성전자주식회사 반도체 장치 및 반도체 시스템
CN107409107B (zh) * 2015-04-06 2021-01-26 索尼公司 总线***和通信装置
US10320591B2 (en) * 2015-07-28 2019-06-11 Rambus Inc. Burst-tolerant decision feedback equalization
US9577854B1 (en) * 2015-08-20 2017-02-21 Micron Technology, Inc. Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding
KR20170111572A (ko) * 2016-03-29 2017-10-12 삼성전자주식회사 반도체 메모리 장치 및 이의 동작 방법
KR102628532B1 (ko) * 2016-08-02 2024-01-25 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US10692555B2 (en) 2016-06-29 2020-06-23 Samsung Electronics Co., Ltd. Semiconductor memory devices enabling read strobe mode and related methods of operating semiconductor memory devices
US10186309B2 (en) 2016-06-29 2019-01-22 Samsung Electronics Co., Ltd. Methods of operating semiconductor memory devices and semiconductor memory devices
KR102623542B1 (ko) 2016-10-07 2024-01-10 삼성전자주식회사 멀티플 클럭 도메인 메모리 장치의 클럭 동기화 방법
US10164758B2 (en) * 2016-11-30 2018-12-25 Taiwan Semicondcutor Manufacturing Co., Ltd. Read-write data translation technique of asynchronous clock domains
TWI632554B (zh) * 2017-02-16 2018-08-11 瑞昱半導體股份有限公司 記憶體測試方法
US10217497B2 (en) 2017-06-07 2019-02-26 Winbond Electronics Corporation Delay locked loop circuit and method of controlling same
US10545866B1 (en) * 2017-06-30 2020-01-28 Cadence Design Systems, Inc. Method and system for efficient re-determination of a data valid window
KR102392055B1 (ko) * 2017-08-09 2022-04-28 삼성전자주식회사 리트레이닝 동작의 수행 여부를 효율적으로 결정하기 위한 메모리 장치 및 이를 포함하는 메모리 시스템
KR102370156B1 (ko) * 2017-08-23 2022-03-07 삼성전자주식회사 메모리 시스템, 및 이를 위한 메모리 모듈과 반도체 메모리 장치
JP2019056964A (ja) * 2017-09-19 2019-04-11 株式会社東芝 半導体集積回路
US10581417B2 (en) * 2017-09-29 2020-03-03 International Business Machines Corporation Skew sensor with enhanced reliability
CN108090001B (zh) * 2017-12-11 2020-10-27 中标软件有限公司 一种内核dma稳态调度方法及装置
KR102478044B1 (ko) * 2018-05-18 2022-12-16 에스케이하이닉스 주식회사 반도체 시스템
US10418090B1 (en) * 2018-06-21 2019-09-17 Micron Technology, Inc. Write signal launch circuitry for memory drive
CN109213707B (zh) * 2018-08-09 2022-07-05 晶晨半导体(深圳)有限公司 获取数据接口采样位置的方法、***、设备及介质
US10643685B1 (en) * 2018-11-01 2020-05-05 Realtek Semiconductor Corporation Control circuit, sampling circuit for synchronous dynamic random-access memory, method of reading procedure and calibration thereof
US10740264B1 (en) * 2019-04-29 2020-08-11 Hewlett Packard Enterprise Development Lp Differential serial memory interconnect
US10915485B2 (en) * 2019-05-17 2021-02-09 Nxp Usa, Inc. Circuit for asynchronous data transfer
US10761999B1 (en) * 2019-05-30 2020-09-01 Western Digital Technologies, Inc. Storage device with predictor engine of host turnaround time
KR102671786B1 (ko) * 2019-07-02 2024-06-04 에스케이하이닉스 주식회사 메모리 장치 및 이의 동작 방법
TWI713042B (zh) * 2019-07-22 2020-12-11 群聯電子股份有限公司 記憶體介面電路、記憶體儲存裝置及設定狀態檢測方法
CN112765073A (zh) * 2019-11-04 2021-05-07 中车株洲电力机车研究所有限公司 一种数据采样方法、***、存储介质以及计算机设备
TWI721660B (zh) * 2019-11-22 2021-03-11 財團法人工業技術研究院 控制資料讀寫裝置與方法
CN111028873B (zh) * 2019-12-19 2022-03-01 西安紫光国芯半导体有限公司 一种用于dram物理接口的自适应读通路延迟计算方法及电路
CN111338426B (zh) * 2020-02-18 2021-06-25 芯创智(北京)微电子有限公司 一种基于ddr读数据的分数时钟周期同步***及方法
US11493949B2 (en) * 2020-03-27 2022-11-08 Qualcomm Incorporated Clocking scheme to receive data
US11495281B2 (en) * 2020-03-30 2022-11-08 Micron Technology, Inc. Write interamble counter
US10998061B1 (en) * 2020-05-15 2021-05-04 Realtek Semiconductor Corporation Memory system and memory access interface device thereof
WO2021247083A1 (en) * 2020-06-01 2021-12-09 Intel Corporation Chip-to-chip interface of a multi-chip module (mcm)
CN112631966B (zh) * 2020-12-17 2024-01-26 海光信息技术股份有限公司 一种数据处理方法、内存控制器、处理器及电子设备
KR20220111487A (ko) 2021-02-02 2022-08-09 에스케이하이닉스 주식회사 메모리 시스템
CN113626352B (zh) * 2021-07-01 2024-04-30 珠海全志科技股份有限公司 内存控制器的读取校准方法、计算机装置和可读存储介质
US11816352B2 (en) * 2021-10-22 2023-11-14 Realtek Semiconductor Corporation Electronic device, data strobe gate signal generator circuit and data strobe gate signal generating method
CN115113686A (zh) * 2022-04-25 2022-09-27 腾讯科技(深圳)有限公司 时序调整方法和装置、存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046686A (ja) * 2002-07-15 2004-02-12 Renesas Technology Corp クロック発生回路
JP2005276396A (ja) * 2004-03-26 2005-10-06 Nec Corp メモリインターフェイス制御回路
WO2006023387A1 (en) * 2004-08-20 2006-03-02 Rambus Inc. Individual data line strobe-offset control in memory systems
US20060136769A1 (en) * 2004-12-21 2006-06-22 Kizer Jade M Interface circuit for strobe-based systems

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW345636B (en) * 1996-04-23 1998-11-21 Toshiba Co Ltd Time information synchronous delay control circuit
WO1999005835A1 (fr) * 1997-07-24 1999-02-04 Kabushiki Kaisha Kenwood Circuit de detection de phase d'un signal recu
KR100358121B1 (ko) * 1999-05-13 2002-10-25 주식회사 하이닉스반도체 반도체장치의 신호 입력회로
US6606686B1 (en) 1999-07-15 2003-08-12 Texas Instruments Incorporated Unified memory system architecture including cache and directly addressable static random access memory
US6466491B2 (en) * 2000-05-19 2002-10-15 Fujitsu Limited Memory system and memory controller with reliable data latch operation
US6691214B1 (en) * 2000-08-29 2004-02-10 Micron Technology, Inc. DDR II write data capture calibration
US6889336B2 (en) * 2001-01-05 2005-05-03 Micron Technology, Inc. Apparatus for improving output skew for synchronous integrate circuits has delay circuit for generating unique clock signal by applying programmable delay to delayed clock signal
KR100382736B1 (ko) * 2001-03-09 2003-05-09 삼성전자주식회사 독출동작과 기입동작시 서로 다른 데이터율을 갖는 반도체메모리장치 및 이를 채용하는 시스템
JP2003099321A (ja) * 2001-09-21 2003-04-04 Ricoh Co Ltd メモリ制御装置
US7050507B2 (en) * 2002-04-22 2006-05-23 Intel Corporation Adaptive throughput pulse width modulation communication scheme
US6600681B1 (en) * 2002-06-10 2003-07-29 Lsi Logic Corporation Method and apparatus for calibrating DQS qualification in a memory controller
US7583115B2 (en) * 2004-08-26 2009-09-01 Micron Technology, Inc. Delay line off-state control with power reduction
US7688672B2 (en) * 2005-03-14 2010-03-30 Rambus Inc. Self-timed interface for strobe-based systems
US8121237B2 (en) * 2006-03-16 2012-02-21 Rambus Inc. Signaling system with adaptive timing calibration
US7685393B2 (en) * 2006-06-30 2010-03-23 Mosaid Technologies Incorporated Synchronous memory read data capture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046686A (ja) * 2002-07-15 2004-02-12 Renesas Technology Corp クロック発生回路
JP2005276396A (ja) * 2004-03-26 2005-10-06 Nec Corp メモリインターフェイス制御回路
WO2006023387A1 (en) * 2004-08-20 2006-03-02 Rambus Inc. Individual data line strobe-offset control in memory systems
US20060136769A1 (en) * 2004-12-21 2006-06-22 Kizer Jade M Interface circuit for strobe-based systems

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140043390A (ko) * 2011-06-14 2014-04-09 마벨 월드 트레이드 리미티드 Dqs 게이팅을 위한 시스템 및 방법
KR101903718B1 (ko) 2011-06-14 2018-10-04 마벨 월드 트레이드 리미티드 Dqs 게이팅을 위한 시스템 및 방법
US8982650B2 (en) 2011-09-15 2015-03-17 Fujitsu Semiconductor Limited Memory interface circuit and timing adjusting method

Also Published As

Publication number Publication date
JP5657888B2 (ja) 2015-01-21
ATE532182T1 (de) 2011-11-15
US8086813B2 (en) 2011-12-27
US20110016282A1 (en) 2011-01-20
JP2009541868A (ja) 2009-11-26
KR20090035508A (ko) 2009-04-09
JP5241780B2 (ja) 2013-07-17
US20080005518A1 (en) 2008-01-03
EP2036090B1 (en) 2011-11-02
CN101479802A (zh) 2009-07-08
TWI453754B (zh) 2014-09-21
EP2036090A4 (en) 2009-08-12
CN101479802B (zh) 2011-12-28
TW200805392A (en) 2008-01-16
EP2036090A1 (en) 2009-03-18
US7685393B2 (en) 2010-03-23
WO2008000059A1 (en) 2008-01-03
KR101374417B1 (ko) 2014-03-17
USRE46819E1 (en) 2018-05-01

Similar Documents

Publication Publication Date Title
JP5241780B2 (ja) 同期メモリの読出しデータ収集
US7342412B2 (en) Device for controlling on die termination
US7801696B2 (en) Semiconductor memory device with ability to adjust impedance of data output driver
US8234422B2 (en) Interfaces, circuits, and methods for communicating with a double data rate memory device
US6707756B2 (en) System and method for translation of SDRAM and DDR signals
TWI308341B (en) Semiconductor device for domain crossing
US7816941B2 (en) Circuit and method for controlling termination impedance
US20050248997A1 (en) Semiconductor memory device for controlling output timing of data depending on frequency variation
US10482946B2 (en) Management of strobe/clock phase tolerances during extended write preambles
JP2009211797A (ja) 半導体素子
CN112908378B (zh) 多相位时钟分割
JP2009211800A (ja) 半導体メモリ装置、信号伝達装置、及び、半導体メモリ装置の動作方法
CN111316359A (zh) 数据选通门控
US4825416A (en) Integrated electronic memory circuit with internal timing and operable in both latch-based and register-based systems
US20150146477A1 (en) Semiconductor device
US7181638B2 (en) Method and apparatus for skewing data with respect to command on a DDR interface
JP2013069359A (ja) 半導体装置及びデータ処理システム
Palanisamy et al. High-Performance DDR2 SDRAM Interface in Virtex-5 Devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120927

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: 20130305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130402

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

Free format text: PAYMENT UNTIL: 20160412

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees