JP6273856B2 - メモリコントローラ及び情報処理装置 - Google Patents

メモリコントローラ及び情報処理装置 Download PDF

Info

Publication number
JP6273856B2
JP6273856B2 JP2014011071A JP2014011071A JP6273856B2 JP 6273856 B2 JP6273856 B2 JP 6273856B2 JP 2014011071 A JP2014011071 A JP 2014011071A JP 2014011071 A JP2014011071 A JP 2014011071A JP 6273856 B2 JP6273856 B2 JP 6273856B2
Authority
JP
Japan
Prior art keywords
variable delay
value
signal
phase
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.)
Active
Application number
JP2014011071A
Other languages
English (en)
Other versions
JP2015138485A (ja
Inventor
宣幸 ▲徳▼▲廣▼
宣幸 ▲徳▼▲廣▼
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014011071A priority Critical patent/JP6273856B2/ja
Priority to US14/599,110 priority patent/US9437261B2/en
Publication of JP2015138485A publication Critical patent/JP2015138485A/ja
Application granted granted Critical
Publication of JP6273856B2 publication Critical patent/JP6273856B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)

Description

本発明は,メモリコントローラ及び情報処理装置に関する。
メモリコントローラは,演算処理装置(CPUチップ)に内蔵され,演算処理部(CPUコア)からのメモリアクセス要求に応答して,メインメモリへのメモリアクセスを制御する。または,メモリコントローラは,演算処理装置(CPUチップ)とメインメモリとの間に設けられ,演算処理装置からのメモリアクセスを制御する。
メインメモリとして,DDR(Double Data Rate)型のSDRAM(SDRAM:Synchronous Dynamic Random Access Memory)が広く利用されている。DDR型のSDRAMは,メモリコントローラからクロックを受信し,そのクロックに基づいて生成したデータストローブ信号(以下DQS信号)と,DQS信号の立ち上がりエッジと立ち下がりエッジに同期したデータ信号(以下DQ信号)とをメモリコントローラに返信する。そして,メモリコントローラは,DQS信号の立ち上がりエッジと立ち下がりエッジのタイミングを利用して,DQ信号のHレベルまたはLレベルをラッチする(または取り込む)。
DDR型のSDRAMは,例えばDDR3以降の規格では,メモリコントローラ20はクロックCLKをメインメモリ30内の複数のメモリチップに対してデイジーチェーンに接続する。そのため,各メモリチップから返信されるDQS信号の位相は,ばらばらであり一致していない。
そこで,メモリコントローラ内の信号受信回路に,DQS信号とDQ信号を遅延する可変遅延回路を設け,受信したDQS信号の位相が基準の内部クロックの位相と一致するようにDQS信号可変遅延回路の遅延量を設定し,同じ設定遅延量をDQ信号可変遅延回路にも設定し,DQ信号の位相を内部クロックの位相と擬似的に同期させることが提案されている。
国際公開第2011/077573号 特開2010−122842号公報
しかしながら,DQS信号の位相を内部クロックの位相と一致するようにDQS信号の可変遅延回路の遅延量を設定して,それと同じ遅延量をDQ信号の可変遅延回路に設定したとしても,DQS信号の可変遅延回路と,DQ信号の可変遅延回路との間には,特性のばらつきがあり,また,DQS信号の回路構成とDQ信号の回路構成とが異なり,且つチップ上の異なる位置に配置されているので,DQ信号の位相も内部クロックの位相と一致しない場合がある。
その結果,位相調整済みのDQ信号を内部クロックのタイミングでラッチすると,そのラッチ回路のセットアップマージンとホールドマージンが最大値にならない場合がある。その結果,DQ信号のデータの取り込みエラーを招く場合がある。
そこで,一つの実施の形態における目的は,DQ信号のデータの取り込みエラーを低減できるメモリコントローラ及び情報処理装置を提供することにある。
実施の形態の第1の側面は,メモリから受信するデータストローブ信号を遅延する第1の可変遅延回路と,
前記メモリから受信し前記データストローブ信号に同期するデータ信号を可変遅延し,前記第1の可変遅延回路の遅延量と異なる遅延量を設定できる第2の可変遅延回路とを有するメモリコントローラである。
第1の側面によれば,DQ信号のデータの取り込みエラーを低減できる。
本実施の形態におけるメモリコントローラと,演算処理装置(CPUチップ)と,メインメモリとを有する情報処理装置の構成例を示す図である。 DQ信号受信回路の構成の一例を示す図である。 DQ信号受信回路の動作を示すタイミングチャート図である。 クロックジェネレータ34の回路を示す図である。 クロックジェネレータ34が生成する信号波形を示す図である。 位相比較部25の詳細な回路を示す図である。 位相比較部25と位相調整部24とによる動作のフローチャート図である。 位相比較部25内の位相判定部58の動作を説明する図である。 図2のDQ信号受信回路の問題点を説明する図である。 本実施の形態におけるDQ信号受信回路を示す図である。 本実施の形態におけるオフセット値の設定例を示す図である。 本実施の形態におけるCPUによるオフセット値設定工程のフローチャート図である。 オフセット上限値と下限値と最適値の例を示す図である。
図1は,本実施の形態におけるメモリコントローラと,演算処理装置(CPUチップ)と,メインメモリとを有する情報処理装置の構成例を示す図である。図1の(A)には,演算処理部(CPUコア)12とメモリコントローラ20とを有する演算処理装置(CPUチップ)10と,メインメモリ30とを有する情報処理装置(コンピュータシステム)が示されている。演算処理部(CPUコア)12は,メモリコントローラ20に対してメモリアクセス要求を発行し,メモリコントローラ20はメモリアクセス要求に応答して,メインメモリ30に対して図示しないコマンドとアドレスとクロックCLKを送信する。一方,メインメモリ30は,読み出し要求の場合に,供給されたクロックCLKに基づいて生成したデータストローブ信号DQS(以下DQS信号)と,DQS信号の立ち上がりエッジと立ち下がりエッジに同期したデータ信号DQ(以下DQ信号)とを,メモリコントローラ20に返信する。メモリコントローラ20は,DQ信号受信回路21を有し,DQ信号受信回路21は,受信したDQS信号の位相に基づいてDQ信号を取り込む(ラッチする)。そして,メモリコントローラ20は取り込んだDQ信号を演算処理部(CPUコア)12に送信する。
図1の(B)には,演算処理部(CPUコア)12を内蔵する演算処理装置(CPUチップ)10と,演算処理装置10とは異なるチップで構成されるメモリコントローラ20と,メインメモリ30とを有する情報処理装置が示されている。演算処理部(CPUコア)12と,メモリコントローラ20と,メインメモリ30とのメモリアクセスに関する動作は,図1の(A)と同様である。
DDR型のSDRAMは,DDR3以降の規格では,メモリコントローラ20はクロックCLKをメインメモリ30内の複数のメモリチップに対してデイジーチェーンに接続する。その結果,各メモリチップから返信されるDQS信号の位相は,ばらばらであり一致していない。
そこで,メモリコントローラ20内のDQ信号受信回路21は,DQ信号をDQS信号の位相に基づいて取り込む(ラッチする)とともに,DQS信号の位相とメモリコントローラ内の内部クロックとの位相との位相差が最小値になるように,取り込んだDQ信号の位相を可変調整し,位相調整されたDQ信号を内部クロックの位相に基づいて取り込む(ラッチする)。つまり,DQ信号受信回路21は,DQ信号を,DQS信号のタイミングからメモリコントローラ20や演算処理部12側のクロックのタイミングに乗り換える処理を行う。
[DQ信号受信回路の概略説明]
図2は,DQ信号受信回路の構成の一例を示す図である。図3は,DQ信号受信回路の動作を示すタイミングチャート図である。
DQ信号受信回路21は,内部クロックI_CLKからN(Nは正の整数)種類の位相,例えば4種類の位相を有する位相付きクロックCLK_0-270を生成するクロックジェネレータ34とセレクタ36を有するクロック生成部37を有する。クロック生成部37は,複数のメモリチップから受信するDQS信号の位相ばらつきが,内部クロックI_CLKの1周期を超える場合に,最適な位相付きクロックCLK_0-270を選択して,選択された位相付きクロックとDQS信号との位相を一致させるために設けられる。位相付きクロックについては後で詳述する。
更に,DQ信号受信回路21は,位相付きクロックCLK_270に応答して内部クロックI_CLKをN分周した信号I_CLK/Nをラッチするラッチ回路38とそのラッチした信号を差動クロックCKとして出力する出力バッファ40とを有するクロック出力部41とを有する。
また,DQ信号受信回路21は,メインメモリ30内のあるメモリチップから送信される差動のデータストローブ信号DQS,DQSxを入力するDQS入力バッファ42と,同じメモリチップから送信される単相のデータ信号DQを入力するDQ入力バッファ48とを有する。
メインメモリ30内の各メモリチップは,クロックCKを受信する入力バッファ31と,受信したクロックCKに基づいてDQS信号を出力するDQS信号を出力するDQS出力バッファ32と,DQS信号の立ち上がりエッジと立ち下がりエッジに同期したDQ信号を出力するDQ出力バッファ33とを有する。そして,メインメモリ30内の各メモリチップは,DQS信号DQS,DQSxとDQ信号とをペアにして,メモリコントローラ20に送信する。
このDQS信号は,メモリコントローラの内部クロックI_CLKの,1/N倍,例えば1/4倍の周波数(4倍の周期)を有する。しかし, DQ信号受信回路21が受信するDQS信号と,内部クロックI_CLKの位相とは非同期であり,メモリ30とDQ信号受信回路21との間の伝送路の遅延時間が予想できない時間であるので,それらの位相差も予め予測できない。
したがって,メモリコントローラ20内のDQ信号受信回路21は,第1に,受信したDQS信号とDQ信号の位相は同期しているので,受信したDQS信号の立ち上がりエッジと立ち下がりエッジの位相に基づいて,DQ信号のHレベルまたはLレベルをラッチするDQ信号ラッチ回路52,54を含むDQ信号取り込み回路55を有する。
第2に,DQ信号受信回路21は,DQS信号の位相と内部クロックI_CLKの位相とが非同期であるので,内部クロックI_CLKとDQS信号の位相差を検出する位相検出部25と,検出した位相差を減らす遅延,望ましくは最小値にする遅延を与えてDQ信号の位相を調整する位相調整部24と,内部クロックI_CLKと位相差が減るように,望ましくは最小値になるように位相調整されたDQ信号を内部クロックI_CLKでラッチして,DQ信号のタイミングをDQS信号の位相から内部クロックI_CLKの位相に乗り換えるクロック乗り換え回路29とを有する。
DQ信号取り込み回路55は,90°位相シフト回路44が入力バッファ42の出力の内部DQS信号dqsを90°位相シフトした90°位相シフト信号dqs90の両エッジのタイミングで,DQ入力バッファ48が入力したDQ信号をラッチするDQ信号ラッチ回路52,54を有する。ラッチ回路52は,90°位相シフト信号dqs90の立ち上がりエッジに同期してDQ信号をラッチし,ラッチ回路54は,90°位相シフト信号dqs90の立ち下がりエッジに同期してDQ信号をラッチする。
位相調整部24は,90°位相シフトしたDQS信号dqs90を遅延して遅延DQS信号ddqsを生成する第3の可変遅延回路DL3と,ラッチ回路52,54でラッチされたDQ信号dqeven,dqoddを遅延して遅延DQ信号ddqeven,ddqoddを生成する第1,第2の可変遅延回路DL1,DL2とを有する。これらの可変遅延回路DL1,DL2,DL3は,後述する位相比較部25が生成する可変遅延設定値DQPHASEに基づいて位相を進めたり遅らせたりする。
さらに,DQ信号受信回路21は,DQS信号の位相と内部クロックI_CLKの位相とを比較して,位相調整用の可変遅延設定値DQPHASEを生成する位相比較部25を有する。可変遅延設定値DQPHASEは,DQS信号と内部クロックI_CLKの位相差に対応して位相差を減らすように,望ましくは最小値になるようにする遅延量を示す値である。この可変遅延設定値DQPHASEは,上位ビットがセレクタ36に供給される。それにより,セレクタ36は,4つの位相付きクロックCLK_0-CLK_270からDQS信号の位相に最も近い内部クロックI_CLKの立ち下がりエッジの位相を選択する位相付きクロックを選択する。また,可変遅延設定値DQPHASEは,下位ビットが第1,第2,第3の可変遅延回路DL1,DL2,DL3に供給される,それにより,DQS信号dqs90と,DQ信号dqeven,dqoddは,可変遅延設定値DQPHASEの下位ビットに対応する遅延時間だけ遅延される。
[クロック生成部37]
位相比較部25の詳細を説明する前に,クロック生成部37について説明する。クロック生成部37は,クロックジェネレータ34とセレクタ36とを有する。
図4は,クロックジェネレータ34の回路を示す図である。また,図5は,クロックジェネレータ34が生成する信号波形を示す図である。クロックジェネレータ34は,内部クロックI_CLKに応答して動作するリングオシレータを有し,リングオシレータは2つのフリップフロップFF1,FF2をリング状に接続して構成される。フリップフロップFF1の非反転出力はフリップフロップFF2の入力に接続され,フリップフロップFF2の反転出力はフリップフロップFF1の入力に接続される。そして,リングオシレータは,図5に示すように,内部クロックI_CLKを4分周して4倍の周期を有する4相クロックQ0-Q3を生成する。
図5に示すように,内部クロックI_CLKの連続する立ち下がりエッジを0°,90°,180°,270°とすると,4相クロックQ0,Q1,Q2,Q3の立ち下がりエッジは,それぞれ,0°,90°,180°,270°と一致する。そして,4相クロックQ0,Q1,Q2,Q3の周波数及び位相は,DQS信号の周波数及び位相と同じである。
さらに,図4のクロックジェネレータ34は,4つのORゲートOR0,OR1,OR2,OR3を有し,各ORゲートは,1対の4相クロックQ3/Q0,Q0/Q1,Q1/Q2,Q2/Q3をそれぞれ入力し,位相付きクロックCLK_0,CLK_90,CLK_180,CLK_270を出力する。位相付きクロックCLK_0,CLK_90,CLK_180,CLK_270は,立ち下がりエッジがそれぞれ内部クロックI_CLKの0°,90°,180°,270°の立ち下がりエッジと一致し,内部クロックI_CLKの1周期に対応するLレベル期間と3周期に対応するHレベル期間とを有する。
内部クロックI_CLKが,DQS信号のN倍(Nは正の整数)の周波数を有する場合,クロックジェネレータ34は,N(=2n)分周したクロックからN個の位相付きクロックを生成する。その場合,クロックジェネレータ34は,n個のフリップフロップを接続したリングオシレータでN相のクロックを生成し,N相のクロックを組み合わせて,DQS信号に対するN個の位相を有し(360/N)×Mから(360/N)×(M+1)(Mは0から(N-1)の整数)の位相期間で一方のレベルになるN個のタイミングクロックを生成する。
[位相比較部]
図6は,位相比較部25の詳細な回路を示す図である。位相比較部25は,前述のとおり,DQS信号と内部クロックI_CLKとの位相を比較し,位相差が減るように,望ましくは最小値になるような可変遅延設定値QDPHASEを生成する。但し,DQS信号は内部クロックI_CLKの4倍の周期を有するので,DQS信号の立ち下がりエッジと最も近いタイミングの内部クロックI_CLKの立ち下がりエッジとで位相比較をするために,クロックジェネレータ34が4つの位相付きクロックCLK_0,CLK_90,CLK_180,CLK_270を生成し,セレクタ36がいずれかの位相付きクロックを選択する。その選択された位相付きクロックの立ち下がりエッジがイネーブルクロックとして位相比較部25に供給される。そして,位相比較部25は,イネーブルクロックがLレベルの期間中の内部クロックI_CLKの立ち下がりエッジと,DQS信号の立ち下がりエッジとを位相比較する。
位相比較部25は,遅延DQS信号ddqsを微少な固定幅だけ遅延する遅延回路DL4と,遅延回路DL4の入力ddqs(a)と出力ddqs(b)を,位相付きクロックCLK_0-270のLレベル期間中に,内部クロックI_CLKの立ち下がりエッジに同期してラッチするラッチ回路56とを有する。つまり,位相付きクロックCLK_0-270のLレベルにより,ラッチ回路56がイネーブル状態になる。
さらに,位相比較部25は,ラッチ回路56がラッチしたddqs(a),ddqs(b)のデータである位相情報1,2に基づいて,遅延DQS信号ddqsの立ち下がりエッジと内部クロックI_CLKの立ち下がりエッジとの間の位相差を判定する位相判定部58を有する。そして,位相比較部25は,位相判定部58の位相判定結果に基づいて,位相差を減らすように可変遅延設定値DQPHASEを生成する可変遅延制御部59を有する。
次に,位相比較部25の動作について説明する。図7は,位相比較部25と位相調整部24とによる動作のフローチャート図である。図8は,位相比較部25内の位相判定部58の動作を説明する図である。
図7のフローチャート図に示されるとおり,位相比較部25の位相判定部58は,遅延DQS信号ddqsの立ち下がりエッジと,位相付きクロックCLK_0-270のLレベル期間中の内部クロックI_CLKの立ち下がりエッジとの位相比較を行う(S1)。位相判定結果が進みの場合(S2の進み),可変遅延制御部59は可変遅延回路DL3の可変遅延設定値DQPHASEを+1して可変遅延回路DL3の遅延量を増加する(S3)。位相判定結果が遅れの場合(S2の遅れ),可変遅延制御部59は可変遅延回路DL3の可変遅延設定値DQPHASEを−1して可変遅延回路DL3の遅延量を減少する(S4)。
そして,位相判定部58は,上記の位相比較S1,位相判定S2,可変遅延設定値の調整S3,S4を,位相判定S2で位相が一致(位相差ゼロまたは最小値)になるまで繰り返す。位相判定S2で位相が一致したこと(または位相差が最小値になったこと)が検出されれば,位相比較部25と位相調整部24とによる位相調整動作は終了する。可変遅延設定値DQPHASEは,第1,第2の可変遅延回路DL1,DL2にも供給され,その出力である遅延DQ信号ddqeven,ddqoddの位相は,内部クロックI_CLKの立ち下がりエッジの位相と一致するまたは最も近づく。
図6に戻り,可変遅延回路DL3が90°位相シフトDQS信号dqs90を可変遅延設定値DQPHASEだけ遅延して遅延DQS信号ddqs(a)を出力し,更に,可変遅延回路DL4が遅延DQS信号ddqs(a)を微小な固定遅延だけ遅延してもう一つの遅延DQS信号ddqs(b)を出力する。
図8の位相比較部25の位相判定部58の動作説明図に示されるとおり,ラッチ回路56は,位相付きクロックCLK_270のLレベル期間中の内部クロックI_CLKの立ち下がりエッジに同期して,2つの遅延DQS信号ddqs(a),ddqs(b)をラッチする。図8の例では,位相付きクロックCLK_270のLレベル期間中の内部クロックI_CLKの立ち下がりエッジで,遅延DQS信号ddqs(a),ddqs(b)をラッチしている。そして,位相判定部58が,ラッチ回路56によりラッチされた位相情報2,1に基づいて,遅延DQS信号ddqs(a),ddqs(b)の立ち下がりエッジが内部クロックI_CLKの立ち下がりエッジに対して位相が進んでいるか遅れているか一致(または最も近接)しているかを検出する。
図8の位相比較真理値表に示されるように,ラッチ回路56がラッチした位相情報2,1が「00」の場合は,遅延DQS信号ddqs(a),ddqs(b)の立ち下がりエッジが内部クロックI_CLKの立ち下がりエッジに対して位相が進んでいることを示す。また,「10」の場合は一致していることを示し,「11」の場合は遅れていることを示す。ただし,「01」の場合は異常状態であり無視する。
[DQ信号受信回路の動作]
図2のDQ信号受信回路の動作について,図3のタイミングチャートを参照して説明する。図3のタイミングチャートは,既にDQS信号ddqs(a)と内部クロックI_CLKの位相が一致または最も近接するように位相調整済みの状態の動作を示している。
DQ信号受信回路21は,受信したDQ信号dqsを90°位相シフト回路44で90°位相シフトして,90°位相シフト信号dqs90を生成する。図3中に矢印(1)で示すとおりである。そして,DQ信号ラッチ回路52は,90°位相シフト信号dqs90の立ち上がりエッジに同期してDQ信号の偶数番目のデータをラッチし,DQ信号ラッチ回路54は,90°位相シフト信号dqs90の立ち下がりエッジに同期してDQ信号の奇数番目のデータをラッチする。図3中に矢印(2)で示すとおりである。
次に,位相調整部24の第3の可変遅延回路DL3が90°位相シフト信号dqs90を可変遅延設定値DQPHASEに対応した遅延量だけ遅延させて,遅延DQS信号ddqsを生成する。図3中の矢印(3)参照。
位相比較部25のラッチ回路56は,位相付きクロックCLK_270に対応するevenイネーブル信号evenenがLレベルの期間中の内部クロックI_CLKの立ち下がりエッジ(図3中8番目の立ち下がりエッジ)で,遅延DQS信号ddqs(a),ddqs(b)をラッチする。そして,位相判定部58と可変遅延制御部59が,遅延DQS信号ddqs(a)の立ち下がりエッジと内部クロックI_CLKの8番目の立ち下がりエッジとの位相が近づくまたは一致若しくは最も近接するように(位相差が減るまたはゼロ若しくは最小値になるように),位相遅延設定値DQPHASEを生成する。
位相が一致若しくは最も近接した結果,図3では,第3の可変遅延回路DL3で遅延量DL3遅延した遅延DQS信号ddqsの立ち下がりエッジが,内部クロックI_CLKの8番目の立ち下がりエッジと,位相が一致若しくは最も近接している。
第1,第2の可変遅延回路DL1,DL2は,可変遅延設定値DAPHASEに対応する遅延量DL1,DL2で,ラッチしたDQ信号dqeven,dqoddを内部クロックI_CLKの10番目,12番目の立ち下がりエッジまでそれぞれ遅延して,遅延DQ信号ddqeven,ddqoddを出力する。図3中(4)を参照。
そして,クロック乗り換え回路29内のラッチ回路66は,データd02の遅延DQ信号ddqevenを,位相付きクロックCLK_270に対応するevenイネーブル信号evenenがLレベルの期間中の内部クロックI_CLKの12番目の立ち下がりエッジでラッチして,内部同期DQ信号Idqeven(d02)を出力する。同様に,ラッチ回路68は,データd03の遅延DQ信号ddqoddを,位相付きクロックCLK_90に対応するoddイネーブル信号oddenがLレベルの期間中の内部クロックI_CLKの14番目の立ち下がりエッジでラッチして,内部同期DQ信号Idqodd(d03)を出力する。図3中の矢印(5)参照。これにより,DQ信号は,DQS信号のタイミングから内部クロックI_CLKのタイミングに乗り換えを完了する。
次に,セレクタ31は,図5の4分周クロックQ0に対応するセレクト信号SELが立ち上がるタイミング(内部クロックI_CLKの14番目の立ち下がりエッジ)で,内部同期DQ信号Idqeven(d02)を選択し,セレクト信号SELが立ち下がるタイミング(内部クロックI_CLKの16番目の立ち下がるエッジ)で,内部同期信号DQ信号Idqodd(d03)を選択する。図3中の矢印(6)参照。これで,セレクタ31の出力であるDQ出力信号dqoは,2倍の周波数に変換される。
さらに,ラッチ回路74は,内部クロックI_CLKの立ち下がりエッジで,セレクタ31が選択したDQ出力信号dqoをラッチし,DQ信号としてCPU12に出力する。このDQ出力信号dqoは,メインメモリ30から受信したDQ信号と同様にDQS信号の1/2周期毎に変化するデータ信号と同じ周期であり,内部クロックI_CLKの立ち下がりエッジに同期するデータ信号である。
ここで,クロックジェネレータ34が,位相付きクロックCLK_0,CLK_90,CLK_180,CLK_270を生成する意義について説明する。図2のDQ信号受信回路21において,位相調整回路24内の可変遅延回路DL3は,DQS信号の位相を内部クロックI_CLKの位相と一致または最も近接させるための微調整用回路である。一方,クロックジェネレータ34とセレクタ36は,DQS信号の位相を内部クロックI_CLKの位相と一致させるための粗調整用回路である。
すなわち,位相調整回路24内の可変遅延回路DL1,DL2,DL3は,可変遅延設定値DQPHASEの下位ビットに対応する遅延量であり,DQS信号の位相を90°の範囲内で位相調整するに必要な遅延量しか持っていない。それにより,可変遅延回路の回路規模を小さくすることができる。一方で,セレクタ36には,可変遅延設定値DQPHASEの上位2ビットが供給され,可変遅延設定値DQPHASEが微調整範囲を超えて変化したことに応答して,その上位2ビットが変化してセレクタ36を切り替え,位相付きクロックを+90°または−90°位相が異なるものに切り替える。その場合,可変遅延設定値DQPHASEのうち,可変遅延回路DL3に供給する下位ビットはリセットされる。
このように,4つの位相付きクロックCLK_0-270を適宜選択して内部クロックI_CLKの立ち下がりエッジを選択できるようにすることで,DQS信号の位相ずれが内部クロックI_CLKの1周期(または,DL3の遅延調整可能範囲)を超える場合でも,同じ可変遅延回路DL1,DL2,DL3を利用して,DQS信号の立ち下がりエッジが内部クロックI_CLKの立ち下がりエッジと一致または最も近接するように位相調整することができる。
[本実施の形態のDQ信号受信回路]
図9は,図2のDQ信号受信回路の問題点を説明する図である。図9には,図2と同じDQ信号受信回路21が示されている。DQ信号受信回路21は,受信したDQS信号の位相を90°位相シフトしたDQS信号dqs90を第3の可変遅延回路DL3で遅延し,その遅延DQS信号ddqsの立ち下がりエッジと,内部クロックI_CLKの立ち下がりエッジの位相が一致または最も近接するように制御する。したがって,ノードN1に生成される90°位相シフトしたDQS信号dqs90をノードN3まで伝播させ,ノードN2に生成される内部クロックI_CLKをノードN3まで伝播させ,伝播してきた遅延DQS信号ddqsと内部クロックI_CLKの位相をノードN3で一致または最も近接するように制御する。
一方,DQ信号については,ラッチ回路66,68が,ノードN4で遅延DQ信号ddqeven, ddqoddを内部クロックI_CLKの立ち下がりエッジに応答してラッチする。したがって,遅延DQ信号ddqeven, ddqoddのラッチタイミングは,DQ信号側は,ノードN1からノードN4までの信号伝播時間と,クロック側は,ノードN2からノードN4までの信号伝播時間の影響を受ける。そして,ノードN1からN3までの信号伝播時間とノードN2からN3までの信号伝播時間は,ノードN1からN4までの信号伝播時間とノードN2からN4までの信号伝播時間と,ミクロ的には同じではない。
また,第3の可変遅延回路DL3と第1,第2の可変遅延回路DL1,DL2とは,チップ上の異なる位置に,異なる向きに,そして,場合によっては比較的遠い位置に配置されるので周囲の回路からの影響力も異なり,たとえ同じ回路であっても,互いの遅延特性が異なる。
さらに,第3の可変遅延回路DL3と第1,第2の可変遅延回路DL1,DL2のそれぞれの前段回路構成と,後段回路構成とが異なることによっても,ノードN4でのタイミング関係が,ノードN3でのタイミング関係と異なることが発生する。
その結果,DQS信号と内部クロックI_CLKの位相を一致または最も近接させた遅延設定値DQPHASEでDQ信号を遅延させたとしても,ラッチ回路66,68は,必ずしも遅延DQ信号ddqeven, ddqoddのセットアップマージンとホールドマージンとが最大化するタイミングで,内部クロックI_CLKの立ち下がりエッジを受信するとは限らない。もし,内部クロックI_CLKの立ち下がりエッジの受信タイミングが,遅延DQ信号ddqeven,ddqoddの中心タイミングからずれていると,ラッチ回路66,68におけるセットアップマージンまたはホールドマージンのいずれかが小さくなり,誤ったデータをラッチするリスクが増大する。特に,DDR型のSDRAMの場合,DQS信号の周波数がより高周波化しており,誤ったデータをラッチするリスクが高まっている。
図10は,本実施の形態におけるDQ信号受信回路を示す図である。図10のDQ信号受信回路21が,図2のDQ信号受信回路と異なる構成は,DQS信号を遅延する可変遅延回路DL3の遅延量を設定する第1の可変遅延設定値DQPHASE-1にオフセットを加算して,DQ信号を遅延する可変遅延回路DL1,DL2に対する第2の可変遅延設定値DQPHASE-2を生成するオフセット加算器99を有することにある。それに伴って,DQ信号受信回路21は,DQ信号をラッチするための制御信号evenen,odden,selを,オフセットが加算された第2の可変遅延設定値DQPHASE-2の上位2ビットに基づいて選択する第2のセレクタ36−2を有する。
CPU12は,トレーニング期間において,位相比較部25により位相差をゼロまたは最小値にする第1の可変遅延設定値DQPHASE-1を検出した状態で,オフセット最適値を検出する。すなわち,CPU12は,オフセット加算器99にセットするオフセット値OFFSETを+方向と−方向に変化させながら,メインメモリ30から既知のデータを読み出し,読み出したDQ信号が期待値と一致するか否かを判定することで,オフセット下限値と上限値を求める。そして,CPU12は,求めたオフセット下限値と上限値からオフセット最適値を算出し,そのオフセット最適値をオフセット加算器99に設定する。オフセット最適値は,例えばオフセット下限値と上限値の中央値である。
その結果,DQS信号とDQ信号の位相のずれが補正され,ラッチ回路66,68におけるセットアップマージンとホールドマージンとが最大化され,データ読み込みエラーを抑制することができる。しかも,CPU12が既知のデータを読み出しながら最適なオフセット値を検出することができるので,DQ信号受信回路21内に最適オフセット値を検出する専用回路を必要としない。
図10のDQ信号受信回路21において,図2と同様に,受信したDQS信号dqsを90°位相シフトする90°位相シフト回路44と,90°位相シフト信号dqs90の立ち上がりエッジと立ち下がりエッジで受信したDQ信号をラッチするラッチ回路52と54と,第1の可変遅延設定値DQPHASE-1の下位ビットに対応する遅延量,90°位相シフト信号dqs90を遅延する第3の可変遅延回路DL3を有する位相調整部24と,遅延DQ信号ddqsの立ち下がりエッジと内部クロックI_CLKの立ち下がりエッジとの位相差を検出し,検出した位相差を減少するように第1の可変遅延設定値DQPHASE-1を生成する位相比較部25と,内部クロックI_CLKの立ち下がりエッジでラッチするラッチ回路74とを有し,それらの動作は,図2−図8と同様である。したがって,それらによる位相比較と位相調整の動作についての説明は省略する。
図10のDQ信号受信回路21では,図2と異なり,第2,第3の可変遅延回路DL2,DL3は,第2の可変遅延設定値DQPHASE-2の下位ビットに基づく遅延量,ラッチされたDQ信号dqeven,dqoddを遅延し,第2のセレクタ36−2が第2の可変遅延設定値DQPHASE-2の上位ビットに基づいて選択したイネーブル信号evenen,oddenのLレベルの期間で,内部クロックI_CLKの立ち下がりエッジに応答して遅延DQ信号ddqeven,ddqoddをラッチするラッチ回路66,68と,同じく選択した選択信号selに基づいて内部クロックI_CLKでラッチしたDQ信号Idqeven,Idqoddを選択するセレクタ31とを有する。第2の可変遅延設定値DQPHASE-2の上位ビットは,加算器99がオフセット値OFFSETを加算したことにより,第1の可変遅延設定値DQPHASE-1の上位ビットとは異なる場合がある。以下,これらについての動作の説明をする。
図11は,本実施の形態におけるオフセット値の設定例を示す図である。図11には,図3の破線部70に示した遅延DQ信号ddqs,遅延DQS信号ddqeven,ddqoddと,イネーブル信号evenen,oddenとが示されている。また,図11には,(2)オフセット値OFFSETがゼロの場合と,(1)オフセット値OFFSETがある場合(負の値)における遅延DQS信号ddqeven,ddqoddが示されている。
すなわち,図11において,内部クロックI_CLKの22番目の立ち下がりエッジと,遅延DQS信号ddqsの立ち上がりエッジとで,位相が一致または最も近接するように位相調整されている。そして,図中(2)に示されるとおり,第1の可変遅延設定値QDPHASEにオフセット値OFFSET=0を加算した第2の可変遅延設定値DQPHASE-2で可変遅延された遅延DQ信号ddqeven,ddqoddに対する,内部クロックI_CLKの22番目の立ち下がりエッジに対するセットアップ量はホールド量より狭くなっている。そのため,DQ信号の取り込み動作が誤動作するリスクが増大する。
なお,セットアップ量から規格上必要なセットアップ時間を除いた時間がセットアップマージンであり,ホールド量から規格上必要なホールド時間を除いた時間がホールドマージンである。
一方,DQS信号の立ち下がりエッジと内部クロックI_CLKの立ち下がりエッジの位相を一致または最も近接するように位相調整されて第1の可変遅延設定値DQPHASE-1が確定した状態で,図中(1)に示されるとおり,オフセット値OFFSETを負側に変更することで,第2の可変遅延設定値DQPHASE-2で可変遅延された遅延DQ信号ddqeven,ddqoddに対する,内部クロックI_CLKの22番目の立ち下がりエッジに対するセットアップ量とホールド量とが同等になり,セットアップマージンとホールドマージンとが最大化される。つまり,図11において(1)オフセット値OFFSETありの場合は,第2の可変遅延設定値DQPHASE-2で可変遅延された遅延DQ信号ddqeven,ddqoddは,それぞれ,内部クロックI_CLKの20,22番目の立ち下がりエッジから24,26番目の立ち下がりエッジまでデータd02,d03を保持し,ラッチ回路66,68がラッチするタイミングである内部クロックI_CLKの22,24番目の立ち下がりエッジは,そのデータ保持期間のほぼ中心位置になっている。
図11の(2)OFFSETなしの例のように,セットアップ量がホールド量より大きい場合は,オフセット値OFFSETを正側にすることで,同様に,セットアップ量とホール量とを等しい値にして最大化することができる。
図12は,本実施の形態におけるCPUによるオフセット値設定工程のフローチャート図である。CPU12は,メモリ30内に展開したオフセット値設定プログラムを実行して,図12のオフセット値設定工程を実行する。そして,CPUによるオフセット値設定工程は,例えば,電源起動時において実行される。または,動作環境,例えば温度などが変化したタイミングで実行してもよい。
事前処理として,CPU12は,メモリ30に対するリード要求を繰り返し,DQ信号受信回路21は,メモリ30から供給されるDQS信号と内部クロックI_CLKとの位相を一致または最も近接させるようにDQS信号の位相調整を行い,第1の可変遅延設定値DQPHASE-1を確定する。
そのように事前にDQS信号と内部クロックI_CLKの位相を一致または最も近接させる第1の可変遅延設定値DQPHASE-1を確定した状態で,CPU12は,メモリ30の所定のアドレスに予め決められたデータを書込む(S10)。そして,オフセット上限値を求める工程S11-S15と,オフセット下限値を求める工程S21-S25とを実行する。いずれの工程を先に行っても良い。
オフセット上限値を求める工程S11-S15では,CPU12は,オフセット値をOFFSET=0に設定し(S11),メモリ30から先に書込んだ既知のデータを読み出す(S12)。そして,DQ信号受信回路21では,第2,第3の可変遅延回路DL1,DL2が,読み出されたDQ信号を, OFFSET=0の場合の第2の可変遅延設定値DQPHASE-2の下位ビットの遅延量で遅延し,ラッチ回路66,68が,第2の可変遅延設定値DQPHASE-2の上位ビットで選択したイネーブル信号evenen,oddenのL期間において,遅延DQ信号ddqeven,ddqoddを内部クロックI_CLKの立ち下がりエッジでラッチし,CPU12に送信する。
CPU12は,受信データと既知のデータとを比較し(S13),一致している場合はオフセット値OFFSETを増加させる(S14)。そして,新たに設定したオフセット値による第2の可変遅延設定値DQPHASE-2で,CPU12は,再度メモリ30から既知のデータを読み出し(S12),受信データと既知のデータとを比較する(S13)。このように,CPU12は,工程S12-S14を受信データが既知のデータと不一致になるまで繰り返す。そして,受信データが既知のデータと不一致になる前のオフセット値OFFSETをオフセット上限値として記憶する(S15)。
次に,オフセット下限値を求める工程S21-S25では,CPU12は,オフセット値をOFFSET=0に設定し(S21),メモリ30から先に書込んだ既知のデータを読み出す(S22)。そして,DQ信号受信回路21では,第2,第3の可変遅延回路DL1,DL2が,読み出されたDQ信号を, OFFSET=0の場合の第2の可変遅延設定値DQPHASE-2の下位ビットの遅延量で遅延し,ラッチ回路66,68が,第2の可変遅延設定値DQPHASE-2の上位ビットで選択したイネーブル信号evenen,oddenのL期間において,遅延DQ信号を内部クロックI_CLKの立ち下がりエッジでラッチし,CPU12に送信する。
CPU12は,受信データと既知のデータとを比較し(S23),一致している場合はオフセット値OFFSETを減少させる(S24)。つまり,オフセット値OFFSETは負側に増加される。そして,新たに設定したオフセット値による第2の可変遅延設定値DQPHASE-2で,CPU12は,再度メモリ30から既知のデータを読み出し(S22),受信データと既知のデータとを比較する(S23)。このように,CPU12は,工程S22-S24を受信データが既知のデータと不一致になるまで繰り返す。そして,受信データが既知のデータと不一致になる前のオフセット値OFFSETをオフセット下限値として記憶する(S25)。
最後に,CPU12は,例えば,オフセット上限値と下限値の中間値を,オフセット最適値として演算で求めて(S26),そのオフセット最適値をオフセット加算器99内のレジスタに設定する(S27)。
図13は,オフセット上限値と下限値と最適値の例を示す図である。図13には,横軸のオフセット値に対して,読み出されたデータと既知の期待値との一致を丸(○)で示し,不一致をXで示す。例1では,オフセット下限値が−4,上限値が+6であり,最適値は(−4+6)/2=+1となる。例2では,オフセット下限値が−6,上限値が+3であり,最適値は(−6+3)/2=−1または−2となる。いずれを最適値にするかについては,予め決定しておく。
また,本実施の形態において,オフセット最適値をオフセット上限値と下限値の中間値以外の値にしてもよい。例えば,ラッチ回路66,68の特性上,セットアップタイムよりホールドタイムを長くする必要がある場合は,それに対応させて,オフセット最適値をオフセット上限値と下限値の中間値よりややずらした値にして,セットアップマージンとホールドマージンを最大化するようにしてもよい。
以上のオフセットOFFSETを最適値に設定した結果,図11の(1)のオフセット最適値のように,遅延DQ信号dqeven,dqoddをラッチするラッチ回路66,68の,内部クロックI_CLKの22,24番目の立ち下がりタイミングに対するセットアップマージンとホールドマージンとが最大値になり,DQ信号の取り込み動作の誤動作を抑制することができる。
本実施の形態によれば,DQ信号受信回路21にオフセット加算器99と,第2のセレクタ36−2を設けるだけでよく,最適なオフセット値の検出と設定を行う回路を設ける必要はない。最適なオフセット値の検出と設定は,トレーニング期間中に,CPU12がメモリ30に対して読み出し動作を繰り返して行うことができる。
12:CPU
21:メモリコントローラ内のDQ信号受信回路
24:位相調整部
25:位相比較部
30:メモリ
34:クロックジェネレータ
36:第1のセレクタ
36−2:第2のセレクタ
52,54:第2のDQ信号ラッチ回路
66,68:第1のDQ信号ラッチ回路
99:オフセット加算器
DQS:データストローブ信号
DQ:データ信号
DL3:第1の可変遅延回路
DL1,DL2:第2の可変遅延回路
DQPHASE-1:第1の可変遅延設定値
DQPHASE-2:第2の可変遅延設定値
OFFSET:オフセット値

Claims (7)

  1. メモリから受信するデータストローブ信号を遅延する第1の可変遅延回路と,
    前記メモリから受信し前記データストローブ信号に同期するデータ信号を可変遅延する第2の可変遅延回路と
    前記第2の可変遅延回路で遅延した遅延データ信号を内部クロックに応答してラッチする第1のデータ信号ラッチ回路と,
    前記データストローブ信号と前記内部クロックとの位相差を検出し,前記位相差を低減するように,前記第1の可変遅延回路の遅延量に対応する第1の可変遅延設定値を生成する位相比較部と,
    前記第1のデータ信号ラッチ回路のセットアップマージンとホールドマージンを増大するようなオフセット値を前記第1の可変遅延設定値に加算して,前記第2の可変遅延回路の遅延量に対応する第2の可変遅延設定値を生成する加算器とを有するメモリコントローラ。
  2. 請求項において,
    前記位相比較部が前記位相差が最小値になるような前記第1の可変遅延設定値を生成した状態で,前記第1のデータ信号ラッチ回路がラッチした既知データについての遅延データ信号が前記既知データと一致する,前記オフセット値の最大値と最小値の中間値が,前記オフセット値として設定されるメモリコントローラ。
  3. 請求項1または2において,
    前記内部クロックは,前記データストローブ信号のN倍(Nは正の整数)の周波数を有し,
    更に,前記内部クロックをN分周し(360/N)×Mから(360/N)×(M+1)(Mは0から(N-1)の整数)の位相期間で一方のレベルになるN個のタイミングクロックを生成するクロックジェネレータと,
    前記第1の可変遅延設定値の上位ビットに応じて前記N個のタイミングクロックから第1のタイミングクロックを選択する第1のセレクタと,
    前記第2の可変遅延設定値の上位ビットに応じて前記N個のタイミングクロックから第2のタイミングクロックを選択する第2のセレクタとを有し,
    前記第1の可変遅延回路は,前記第1の可変遅延設定値の下位ビットに応じた前記遅延量を有し,
    前記第2の可変遅延回路は,前記第2の可変遅延設定値の下位ビットに応じた前記遅延量を有し,
    前記位相比較部は,前記第1のタイミングクロックが前記一方のレベルになる期間で前記位相差を検出し,
    前記第1のデータ信号ラッチ回路は,前記第2のタイミングクロックの前記一方のレベルになる期間で前記内部クロックに応答して前記遅延データ信号をラッチするメモリコントローラ。
  4. 請求項において,
    更に,受信した前記データ信号を前記データストローブ信号の第1,第2のタイミングエッジでそれぞれラッチする第2,第3のデータ信号ラッチ回路を有し,
    前記第2の可変遅延回路は,前記第2,第3のデータ信号ラッチ回路がラッチしたデータ信号をそれぞれ遅延する1対の第2の可変遅延回路を有し,
    前記第1のデータ信号ラッチ回路は,前記1対の第2の可変遅延回路がそれぞれ遅延させた遅延データ信号をそれぞれラッチする1対の第1のデータ信号ラッチ回路を有するメモリコントローラ。
  5. 演算処理部と,
    前記演算処理部が要求するメモリアクセス要求に応答して,メモリにメモリアクセスを実行するメモリコントローラとを有し,
    前記メモリコントローラは,
    前記メモリから受信するデータストローブ信号を遅延する第1の可変遅延回路と,
    前記メモリから受信し前記データストローブ信号に同期するデータ信号を可変遅延する第2の可変遅延回路と,
    前記第2の可変遅延回路で遅延した遅延データ信号を内部クロックに応答してラッチする第1のデータ信号ラッチ回路と,
    前記データストローブ信号と前記内部クロックとの位相差を検出し,前記位相差を低減するように,前記第1の可変遅延回路の遅延量に対応する第1の可変遅延設定値を生成する位相比較部と,
    前記第1のデータ信号ラッチ回路のセットアップマージンとホールドマージンを増大するようなオフセット値を前記第1の可変遅延設定値に加算して,前記第2の可変遅延回路の遅延量に対応する第2の可変遅延設定値を生成する加算器とを有する
    情報処理装置。
  6. 請求項において,
    前記位相比較部が前記位相差が最小値になるような前記第1の可変遅延設定値を生成した状態で,前記第1のデータ信号ラッチ回路がラッチした既知データについての遅延データ信号が前記既知データと一致する,前記オフセット値の最大値と最小値の中間値を,前記演算処理部が検出し,前記オフセット値として設定する情報処理装置。
  7. メモリから受信するデータストローブ信号を遅延する第1の可変遅延回路と,
    前記メモリから受信し前記データストローブ信号に同期するデータ信号を可変遅延する第2の可変遅延回路と,
    前記第2の可変遅延回路で遅延した遅延データ信号を内部クロックに応答してラッチする第1のデータ信号ラッチ回路と,
    前記データストローブ信号と前記内部クロックとの位相差を検出し,前記位相差を低減するように,前記第1の可変遅延回路の遅延量に対応する第1の可変遅延設定値を生成する位相比較部と,
    前記第1のデータ信号ラッチ回路のセットアップマージンとホールドマージンを増大するようなオフセット値を前記第1の可変遅延設定値に加算して,前記第2の可変遅延回路の遅延量に対応する第2の可変遅延設定値を生成する加算器とを有するメモリコントローラの制御方法であって,
    前記位相比較部が前記位相差が最小値になるような前記第1の可変遅延設定値を生成した状態で,前記第1のデータ信号ラッチ回路がラッチした既知データについての遅延データ信号が前記既知データと一致する,前記オフセット値の最大値と最小値の中間値を,前記オフセット値として設定する工程を有するメモリコントローラの制御方法。
JP2014011071A 2014-01-24 2014-01-24 メモリコントローラ及び情報処理装置 Active JP6273856B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014011071A JP6273856B2 (ja) 2014-01-24 2014-01-24 メモリコントローラ及び情報処理装置
US14/599,110 US9437261B2 (en) 2014-01-24 2015-01-16 Memory controller and information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014011071A JP6273856B2 (ja) 2014-01-24 2014-01-24 メモリコントローラ及び情報処理装置

Publications (2)

Publication Number Publication Date
JP2015138485A JP2015138485A (ja) 2015-07-30
JP6273856B2 true JP6273856B2 (ja) 2018-02-07

Family

ID=53679632

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014011071A Active JP6273856B2 (ja) 2014-01-24 2014-01-24 メモリコントローラ及び情報処理装置

Country Status (2)

Country Link
US (1) US9437261B2 (ja)
JP (1) JP6273856B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6346212B2 (ja) * 2016-03-22 2018-06-20 アンリツ株式会社 誤り率測定装置及び該装置を用いた自動位相調整方法
US9911472B1 (en) * 2016-11-28 2018-03-06 Qualcomm Incorporated Write bitline driver for a dual voltage domain
US10522206B2 (en) 2017-04-06 2019-12-31 SK Hynix Inc. Semiconductor device and system
US11061431B2 (en) * 2018-06-28 2021-07-13 Micron Technology, Inc. Data strobe multiplexer
US11139008B2 (en) * 2020-02-03 2021-10-05 Micron Technology, Inc. Write leveling

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005056334A (ja) * 2003-08-07 2005-03-03 Ricoh Co Ltd 同期式メモリからのデータ取込み回路
JP4662536B2 (ja) * 2004-12-28 2011-03-30 パナソニック株式会社 タイミング調整方法及び装置
KR101228270B1 (ko) * 2006-05-01 2013-01-30 주식회사 아도반테스토 시험 장치 및 시험 방법
JP4878215B2 (ja) * 2006-05-26 2012-02-15 ルネサスエレクトロニクス株式会社 インタフェース回路及びメモリ制御装置
JP4921888B2 (ja) * 2006-08-22 2012-04-25 ルネサスエレクトロニクス株式会社 インターフェース回路
JP5369430B2 (ja) * 2007-11-20 2013-12-18 富士通株式会社 可変遅延回路,メモリ制御回路,遅延量設定装置,遅延量設定方法および遅延量設定プログラム
JP2010122842A (ja) 2008-11-19 2010-06-03 Nec Electronics Corp 遅延調整装置、半導体装置及び遅延調整方法
JP5331902B2 (ja) * 2009-12-25 2013-10-30 富士通株式会社 信号復元回路、レイテンシ調整回路、メモリコントローラ、プロセッサ、コンピュータ、信号復元方法及びレイテンシ調整方法
WO2011077573A1 (ja) 2009-12-25 2011-06-30 富士通株式会社 信号受信回路、メモリコントローラ、プロセッサ、コンピュータ及び位相制御方法
KR101188264B1 (ko) * 2010-12-01 2012-10-05 에스케이하이닉스 주식회사 반도체 시스템, 반도체 메모리 장치 및 이를 이용한 데이터 출력 방법
WO2013042233A1 (ja) * 2011-09-21 2013-03-28 富士通株式会社 半導体装置
JP6209978B2 (ja) * 2014-01-24 2017-10-11 富士通株式会社 メモリコントローラ,情報処理装置及び基準電圧調整方法

Also Published As

Publication number Publication date
US20150213875A1 (en) 2015-07-30
US9437261B2 (en) 2016-09-06
JP2015138485A (ja) 2015-07-30

Similar Documents

Publication Publication Date Title
JP5537568B2 (ja) 信号受信回路、メモリコントローラ、プロセッサ、コンピュータ及び位相制御方法
TWI459179B (zh) 用於多相時脈產生之裝置及方法
KR100902795B1 (ko) 인터페이스 회로
KR100305546B1 (ko) 반도체장치,반도체시스템및디지탈지연회로
JP6273856B2 (ja) メモリコントローラ及び情報処理装置
US7936196B2 (en) First delay locking method, delay-locked loop, and semiconductor memory device including the same
JP6451505B2 (ja) 受信回路、受信回路のタイミング調整方法、半導体装置
US9747972B2 (en) Memory controller, information processing device, and reference voltage adjustment method
KR102551508B1 (ko) 지연 제어 장치 및 방법
US7994833B2 (en) Delay locked loop for high speed semiconductor memory device
JP2009530894A (ja) ダブルデータレート・インタフェース
US8982650B2 (en) Memory interface circuit and timing adjusting method
KR101989393B1 (ko) 반도체 장치의 도메인 크로싱 회로
KR102016532B1 (ko) 반도체 장치 및 그의 구동방법
JPWO2011077574A1 (ja) 信号復元回路、レイテンシ調整回路、メモリコントローラ、プロセッサ、コンピュータ、信号復元方法及びレイテンシ調整方法
JP5005928B2 (ja) インタフェース回路及びそのインタフェース回路を備えた記憶制御装置
US7181638B2 (en) Method and apparatus for skewing data with respect to command on a DDR interface
JP2008059738A (ja) 半導体メモリ装置
KR102075497B1 (ko) 반도체 집적회로
JP5673842B2 (ja) 半導体装置
US9552310B2 (en) Signal control circuit, information processing apparatus, and signal control method
KR20130002671A (ko) 반도체 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170824

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171225

R150 Certificate of patent or registration of utility model

Ref document number: 6273856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150