(57)【特許請求の範囲】
【請求項１】
データ信号とストローブ信号との位相関係を調整する情報処理装置であって、
前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定する特定部と、
前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定する決定部と、
前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する調整部と
を有することを特徴とする情報処理装置。
【請求項２】
前記決定部は、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値が複数存在する場合に、前記データ信号を有効に取得できる期間が最も長いと推定される各リファレンス値に隣接するリファレンス値における前記データ信号を有効に取得できる各期間を比較し、前記比較により前記データ信号を有効に取得できる期間がより長いリファレンス値に隣接するリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する、請求項１に記載の情報処理装置。
【請求項３】
前記データ信号は第１または第２のメモリに送信され、
前記決定部は、前記データ信号が前記第１のメモリに送信される場合の前記データ信号を有効に取得できる期間と、前記データ信号が前記第２のメモリに送信される場合の前記データ信号を有効に取得できる期間とのうちの短い期間を前記複数のリファレンス値の候補ごとに特定し、前記特定された期間が最も長いリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する
請求項１または２に記載の情報処理装置。
【請求項４】
前記調整部は、前記ストローブ信号に対して前記データ信号の位相を進ませる調整を行う場合は、前記ストローブ信号の位相を所定の位相の目標値に合わせて遅らせてから前記データ信号の位相を前記目標値を用いて遅らせ、前記データ信号の位相を遅らせる調整を行う場合は、前記ストローブ信号の位相を移動せずに前記データ信号の位相を遅らせる、請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記データ信号は、異なる伝送路で送信される複数のデータ信号を含み、
前記調整部は、前記異なる伝送路のうち第１の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、前記異なる伝送路のうち第２の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、を一致させ、前記第１の伝送路により送信されるデータ信号の位相と前記第２の伝送路により送信されるデータ信号の位相を、前記一致させた前記ストローブ信号の位相に基づいて変更する
請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
データ信号とストローブ信号との位相関係を調整する調整装置と、前記調整装置を管理する管理装置を有する情報処理システムであって、
前記調整装置は、
前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストロー
ブ信号との１以上の位相差を特定する特定部と、
前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定する決定部と、
前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する調整部と
を有することを特徴とする情報処理システム。
【請求項７】
データ信号とストローブ信号との位相関係を調整する情報処理装置の制御方法であって、
前記情報処理装置が有する特定部が、前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定し、
前記情報処理装置が有する決定部が、前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定し、
前記情報処理装置が有する調整部が、前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する
情報処理装置の制御方法。
【請求項８】
データ信号とストローブ信号との位相関係を調整する情報処理装置の制御プログラムであって、
前記情報処理装置が有する特定部に、前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定させ、
前記情報処理装置が有する決定部に、前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定させ、
前記情報処理装置が有する調整部に、前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整させる
情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本件開示の技術は、情報処理装置、情報処理システム、情報処理装置の制御プログラムおよび情報処理装置の制御方法に関する。
【背景技術】
【０００２】
従来、ＣＰＵによるメモリに対するデータの入出力において、データストローブ信号（ＤＱＳ信号）を用いて複数ビットのデータ信号（ＤＱ信号）の書き込みおよび読み出しが実行される。ＤＱ信号のメモリへの書き込みにおいては、メモリコントローラがＤＱＳ信号の位相とＤＱ信号との間の位相差を互いに９０°ずらしてメモリに信号を入力する。また、ＤＱ信号のメモリからの読み出しにおいては、メモリがＤＱＳ信号とＤＱ信号を同相で出力する。そして、メモリコントローラがＤＱＳ信号の位相とＤＱ信号との間の位相差を互いに９０°ずらしてＤＱ信号を読み取る。
【０００３】
従来の調整では、ＤＱＳ信号の位相は固定されており、ＤＱＳ信号の立ち上がりがＤＱ信号の読み書きのタイミングであるストローブポイントとして設定されている。ＤＱ信号は複数ビットが１つのグループとしてまとめられ、１つのＤＱＳ信号により、複数ビットのＤＱ信号の読み書きが実行される。各ビットのＤＱ信号はそれぞれ異なる伝送路により送信されるため、各ＤＱ信号間において位相差が生じ得る。そこで、各ＤＱ信号の位相が、ＤＱＳのストローブポイントを基準として同相となるように調整される。
【０００４】
また、いわゆるアイパターンを用いてＤＱＳ信号とＤＱ信号の位相を調整することも行われている（例えば、特許文献１）。まず、アイパターンにおけるＤＱ信号のリファレンス電圧方向と位相方向とで、リファレンス電圧幅が最大となる位相とＤＱ信号のデータが取得可能な位相幅が最大となる電圧とが決定される。そして、決定された位相と電圧とを用いてＤＱ信号とＤＱＳ信号との間のストローブポイントを最適化することも行われている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第７９９１０９８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、位相が固定されたＤＱＳ信号により決まるストローブポイントは、ＣＰＵやメモリにおけるプロセスのばらつきの影響を受けて変動することがある。そして、ストローブポイントが変動すると、ＤＱ信号に対して、ＤＱＳ信号の立ち上がりあるいは立ち下がりのエッジから時間的に前のいわゆるセットアップまたはエッジから時間的に後ろのいわゆるホールドに偏る可能性がある。
【０００７】
また、多数のメモリを使用する場合のメモリアクセスでは、メモリチャネルあたりの記憶容量を上げるため、伝送路に複数のメモリモジュールが接続される。しかし、メモリモジュールが複数接続されることで伝送路の分岐が多くなる。このため、各分岐点において伝送路とメモリモジュールとの間でインピーダンス不整合が起き、伝送される信号の多重反射が生じ得る。この結果、反射波の影響により、アイパターンのアイの輪郭に凹凸が生じ得る。そして、アイパターンのアイの輪郭に凹凸が存在する場合、すなわちデータ信号の波形に歪みが存在する場合、凹凸部分においてリファレンス電圧幅が最大となる位相と
取得可能な位相幅が最大となる電圧が決定される可能性がある。このように決定された位相あるいは電圧は、アイ全体においてリファレンス電圧幅が最大となる位相あるいは取得可能な位相幅が最大となる電圧とは異なる可能性がある。この結果、ＤＱＳ信号とＤＱ信号の位相が最適化されない可能性がある。ＤＱＳ信号とＤＱ信号の位相が最適化されない場合、ＤＱ信号の取得が成功となるためにストローブポイントに許容される位相幅あるいは電圧幅が狭くなる。そして、ＤＱ信号の取得が失敗するストローブポイントが設定される可能性がある。
【０００８】
本件開示の技術は、上記の事情に鑑み、信号間の位相のばらつきおよび信号の波形歪みが生じてもデータ信号の取得が成功する可能性を高めるストローブポイントの設定が可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本件開示の情報処理装置は、１つの側面では、データ信号とストローブ信号との位相関係を調整する情報処理装置であって、データ信号の値を判定するための複数のリファレンス値の候補ごとに、ストローブ信号に従ってデータ信号が有効に取得される、データ信号とストローブ信号との１以上の位相差を特定する特定部と、複数のリファレンス値の候補ごとに特定された１以上の位相差に基づいて、データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定する決定部と、決定されたリファレンス値に対応する期間に基づいて、データ信号とストローブ信号との位相関係を調整する調整部とを有する。
【発明の効果】
【００１０】
本件開示の技術によれば、信号間の位相のばらつきおよび信号の波形歪みが生じてもデータ信号の取得が成功する可能性を高めるストローブポイントの設定が可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、一実施形態における情報処理装置の構成を示す概略構成図である。
【図２】図２は、一実施形態における情報処理装置のレジスタの構成を示す概略構成図である。
【図３】図３は、一実施形態における情報処理装置の機能ブロック図である。
【図４】図４は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図５】図５は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図６】図６は、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図７】図７は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図８】図８は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図９】図９は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図１０Ａ】図１０Ａは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１０Ｂ】図１０Ｂは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１０Ｃ】図１０Ｃは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１０Ｄ】図１０Ｄは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１０Ｅ】図１０Ｅは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１０Ｆ】図１０Ｆは、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１１】図１１は、一実施形態におけるメモリモジュールの構成を示す概略構成図である。
【図１２】図１２は、一実施形態におけるデータ取得判定結果の一例を示す図である。
【図１３】図１３は、一実施形態において情報処理装置が実行する処理のフローチャートである。
【図１４】図１４は、一実施形態におけるサーバーシステムの構成を示す概略構成図である。
【図１５】図１５は、一実施形態における情報処理システムの構成を示す概略構成図である。
【発明を実施するための形態】
【００１２】
以下、本件開示の技術に係る実施形態について図面を参照しながら説明する。なお、以下の詳細な説明は例示的なものであり、実施形態の構成を限定するものではない。
【００１３】
（第１の実施形態）
第１の実施形態における情報処理装置１について説明する。図１の概略構成図に示すように、本実施形態に係る情報処理装置１は、ＣＰＵ（Central Processing Unit）１０、
メモリコントローラ２０、Ｉ／Ｏ（Input/Output）回路３０、伝送路４０、５０、メモリモジュール６０を備える。また、メモリコントローラ２０は、内部回路２０ａ、ＰＲＢＳ（Pseudo Random Bit Sequence）生成部２０ｂ、データ取得判定部２０ｃ、開始フラグ２０ｄ、データ取得判定レジスタ２０ｅを備える。
【００１４】
Ｉ／Ｏ回路３０は、ラッチ回路３０ａ、３０ｆ、３０ｇ、ディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉ、ドライバ３０ｄ、３０ｊ、レシーバ３０ｅ、３０ｋ、リファレンス電圧（Ｖｒｅｆ）設定部３０ｍ、分圧回路３０ｎを備える。メモリモジュール６０は、Ｒａｎｋ０のメモリ素子６０ａ、Ｒａｎｋ１のメモリ素子６０ｂ、ドライバ６０ｃ、６０ｅ、レシーバ６０ｄ、６０ｆを備える。なお、図１では、メモリモジュール６０のメモリ素子６０ａとメモリ素子６０ｂを２組示しているが、それぞれ同じメモリ素子である。
【００１５】
ＣＰＵ１０は、情報処理装置１内の各部の動作を制御して以下に説明する処理を実現する。メモリコントローラ２０は、ＤＱＳ信号の生成、ＰＲＢＳテストパターンのＤＱ信号の生成、リファレンス電圧に対するＤＱ信号の読み出しの成功および失敗の判定などを行う。なお、メモリコントローラ２０が、調整部の一例に相当する。ＤＱＳ信号がストローブ信号、ＤＱ信号がデータ信号の一例にそれぞれ相当する。リファレンス電圧が、データ信号の値を判定するためのリファレンス値の一例に相当する。
【００１６】
メモリコントローラ２０の内部回路２０ａは、ＰＲＢＳ生成部２０ｂにより生成されるＰＲＢＳテストパターンをＩ／Ｏ回路３０に出力する。ＰＲＢＳ生成部２０ｂは、ＰＲＢＳテストパターンのＤＱ信号を生成する。ここで、ＰＲＢＳテストパターンとは、「０」と「１」のビットが交互に並ぶなど規則的なビットの組み合わせからなるパターンではなく、「０」と「１」の順番が確定的な計算によって求まる擬似乱数を用いたパターンである。これにより、ＰＲＢＳテストパターンのＤＱ信号は、実際のデータ転送におけるＤＱ信号と同等の信号であるとみなせる。
【００１７】
開始フラグ２０ｄは、本実施形態における位相調整の処理を開始するトリガとなるフラグであり、例えば情報処理装置１のユーザーの操作に基づいてＣＰＵ１０がオンまたはオフに設定する。データ取得判定部２０ｃは、リファレンス電圧およびＤＱＳ信号の位相を変化させたときのＤＱ信号の取得が成功したか否かを判定する。なお、データ取得判定部２０ｃが、特定部の一例に相当する。
【００１８】
データ取得判定レジスタ２０ｅは、データ取得判定部２０ｃによる判定の結果を格納する。また、図２に示すように、データ取得判定レジスタ２０ｅは、本実施形態において以下に説明する処理を実行するためのデータを記憶するレジスタを有する。ＶｒｅｆＤＱｍ（ｍは０〜３の整数。以下同じ）設定レジスタは、ＤＱ０〜ＤＱ３の各ＤＱ信号のＨレベルおよびＬレベルを判定するために使用するリファレンス電圧の値が格納されるレジスタである。なお、ＤＱ信号のＨレベルおよびＬレベルが、データ信号の値の一例に相当する。ＤＱ０〜ＤＱ３それぞれに当該レジスタが設けられている。ＣＰＵ１０が、ＶｒｅｆＤＱｍ設定レジスタの値を設定する。
【００１９】
ＤＱｍディレイタップ設定レジスタは、ＣＰＵ１０が、ＤＱ０〜ＤＱ３の各ＤＱ信号のディレイタップを設定するために使用するレジスタである。本実施形態において、ＤＱ信号のディレイタップとは、ＤＱ信号の位相の遅延量である。ＤＱ０〜ＤＱ３それぞれに当該レジスタが設けられている。また、ＤＱＳディレイタップ設定レジスタは、ＣＰＵ１０が、ＤＱＳ信号のディレイタップを設定するために使用するレジスタである。本実施形態において、ＤＱＳ信号のディレイタップとは、ＤＱＳ信号の位相の遅延量である。本実施形態では、ディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉが、ＤＱｍディレイタップ設定レジスタとＤＱＳディレイタップ設定レジスタに格納されている値に基づいてＤＱＳ信号と各ＤＱ信号との間の位相差を調整する。
【００２０】
なお、上記のＶｒｅｆＤＱｍ設定レジスタ、ＤＱｍディレイタップ設定レジスタ、ＤＱＳディレイタップ設定レジスタには２進数の値が設定される。そして、ＶｒｅｆＤＱｍ設定レジスタ、ＤＱｍディレイタップ設定レジスタ、ＤＱＳディレイタップ設定レジスタに設定される値に従って、ＤＱｍのＤＱ信号のリファレンス電圧、ＤＱｍのＤＱ信号のディレイタップ、ＤＱＳ信号のディレイタップがそれぞれ決まる。
【００２１】
ライト／リード指示レジスタは、ＣＰＵ１０が、メモリコントローラ２０に対して、ＰＲＢＳ生成回路２０ｂにより生成されたＰＲＢＳのデータのメモリモジュール６０に対する書き込みまたは読み出しの実行を指示するために使用するレジスタである。ＣＰＵ１０が、図２に示すように、ライト／リード指示レジスタのビット０に「１」を設定すると、ＰＲＢＳのデータのメモリモジュール６０に対する書き込みがメモリコントローラ２０に指示される。また、ライト／リード指示レジスタのビット１に「１」が格納されると、ＰＲＢＳのデータのメモリモジュール６０に対する読み出しがメモリコントローラ２０に指示される。
【００２２】
リード結果表示レジスタは、メモリモジュール６０から読み出されたＤＱ０〜ＤＱ３のＰＲＢＳのデータの読み出し結果が格納されるレジスタである。リード結果表示レジスタのビット０〜３には、ＤＱ０〜ＤＱ３の各データの読み出しが成功したか否かを示す「０」または「１」の値が格納される。本実施形態では、ＰＲＢＳ生成部２０ｂによってＤＱ０〜ＤＱ３のＰＲＢＳのデータが生成される。そして、生成されたＰＲＢＳの各データがメモリモジュール６０に対して書き込まれる。さらに、書き込まれた各データの読み出しが行われる。そして、ＰＲＢＳ生成部２０によって生成された各データと読み出した各データとが一致するか否かに基づいて各ＤＱ信号の読み出しが成功したか否かが判定される。そして、読み出しの判定結果がリード結果表示レジスタに書き込まれる。
【００２３】
なお、本実施形態では、上記の各種レジスタはデータ取得判定レジスタ２０ｅに格納されている構成としているが、各種レジスタをデータ取得判定レジスタ２０ｅとは別のレジスタとして設ける構成としてもよい。
【００２４】
メモリコントローラ２０から出力されるＤＱＳ信号は、Ｉ／Ｏ回路３０のラッチ回路３０ａに入力される。ラッチ回路３０ａには内部クロックが入力されてデータがラッチされ、ラッチされたデータがディレイタップ設定部３０ｂに入力される。ディレイタップ設定部３０ｂは、ＤＱＳ信号によるストローブポイント、すなわちＤＱ信号を取得するタイミングであるＤＱＳ信号のディレイタップを決定する。また、メモリコントローラ２０から出力されるＤＱ信号は、Ｉ／Ｏ回路３０のラッチ回路３０ｇに入力される。ラッチ回路３０ｇには内部クロックが入力されてデータがラッチされ、ラッチされたデータがディレイタップ設定部３０ｈに入力される。ディレイタップ設定部３０ｈは、ＤＱ信号のディレイタップを決定する。なお、一例として、４つのビットＤＱ０、ＤＱ１、ＤＱ２、ＤＱ３が１つのグループとしてＤＱ信号が形成される。そして、各ビットのＤＱ信号は、それぞれ異なる伝送路を用いたパラレル伝送により送信される。
【００２５】
ディレイタップ設定部３０ｂは、ＤＱＳ信号の１周期分の位相幅を２Ｎ（例えばＮ＝５のときは、０〜３１の３２個）個で分割した幅を刻み幅として、ＤＱＳ信号の遅延時間を制御する。同様に、ディレイタップ設定部３０ｈも、当該単位幅を用いてＤＱ信号の遅延時間を制御する。なお、ディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉが、調整部の一例に相当する。また、メモリコントローラ２０が、ＤＱｍディレイタップ設定レジスタとＤＱＳディレイタップ設定レジスタの設定値をディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉに設定する。ディレイタップ設定部３０ｂ、３０ｈにより、ＤＱＳ信号の位相とＤＱ信号の位相との間の位相差が例えば−１８０°〜＋１８０°として決まる。なお、以下の説明においては、ＤＱＳ信号およびＤＱ信号のディレイタップは−７〜８までの範囲で刻み幅を１として決定されるものとして簡略化して説明する。
【００２６】
ディレイタップ設定部３０ｂ、３０ｈによりそれぞれディレイタップが決定され遅延時間が調整されたＤＱＳ信号およびＤＱ信号は、ドライバ３０ｄ、３０ｊを経由して伝送路４０、５０に出力される。ＤＱＳ信号は、伝送路４０、レシーバ６０ｈまたはレシーバ６０ｊを経由して、Ｒａｎｋ０のメモリ素子６０ａまたはＲａｎｋ１のメモリ素子６０ｂに入力する。また、ＤＱ信号は、伝送路５０、レシーバ６０ｄまたはレシーバ６０ｆを経由して、Ｒａｎｋ０のメモリ素子６０ａまたはＲａｎｋ１のメモリ素子６０ｂに入力する。メモリ素子６０ａまたはメモリ素子６０ｂは、メモリコントローラ２０から出力されるＷＲＩＴＥまたはＲＥＡＤのコマンドに従って、入力されるＤＱＳ信号およびＤＱ信号を用いてデータの書き込みまたは読み出しを行う。
【００２７】
メモリ素子６０ａは、メモリコントローラ２０からメモリ素子６０ａに対するＲＥＡＤのコマンドが入力される場合は、ＤＱＳ信号および読み取ったＤＱ信号をそれぞれドライバ６０ｇ、６０ｃを経由して同相で伝送路４０、５０に出力する。また、メモリ素子６０ｂは、メモリコントローラ２０からメモリ素子６０ｂに対するＲＥＡＤのコマンドが入力される場合は、ＤＱＳ信号および読み取ったＤＱ信号をそれぞれドライバ６０ｅ、６０ｉを経由して同相で伝送路４０、５０に出力する。
【００２８】
メモリ素子６０ａ、６０ｂから出力されるＤＱＳ信号およびＤＱ信号は、それぞれＩ／Ｏ回路３０のレシーバ３０ｅ、３０ｋに入力される。ＤＱＳ信号は、レシーバ３０ｅからディレイタップ設定部３０ｃに入力される。また、レシーバ３０ｋは、分圧回路３０ｎと接続されている。分圧回路３０は、リファレンス電圧設定部３０ｍの制御に従って抵抗値を設定する。そして、分圧回路３０ｎにより決まる抵抗値に従ってリファレンス電圧が調
整される。リファレンス電圧はレシーバ３０ｋに入力される。レシーバ３０ｋはコンパレータ（図示せず）を有し、リファレンス電圧に基づいて入力されるＤＱ信号のＨレベルおよびＬレベルを決定する。
【００２９】
レシーバ３０ｋから出力されたＤＱ信号はディレイタップ設定部３０ｉによりディレイタップが決定され、ＤＱ信号の遅延時間が調整される。Ｉ／Ｏ回路３０では、ディレイタップ設定部３０ｃ、３０ｉにより、メモリ素子６０ａから同相で出力されたＤＱＳ信号とＤＱ信号との間の位相差が例えば互いに９０°ずらされる。ディレイタップ設定部３０ｉから出力されたＤＱ信号は、ラッチ回路３０ｆに入力される。ラッチ回路３０ｆにはディレイタップ設定部３０ｃから出力されるＤＱＳ信号が入力され、データがラッチされる。ラッチされたデータはメモリコントローラ２０に入力される。メモリコントローラ２０では、以下に詳細に説明する位相調整が実行される。
【００３０】
図３に、本実施形態に係る情報処理装置１の機能ブロック図を示す。本実施形態では、例えば情報処理装置１のＲＯＭ（Read-Only Memory；図示せず）に格納されているアプリケーション等が、ＣＰＵ１０によって実行される。ただし、ＣＰＵ１０とは別のサービスプロセッサ等によってアプリケーション等が実行されてもよい。このようなアプリケーション等の実行により、図３に示すように、情報処理装置１は、特定部１０１、決定部１０２、調整部１０３として機能する。
【００３１】
特定部１０１は、ＤＱ信号のＨレベルおよびＬレベルを判定するための複数のリファレンス電圧の値の候補ごとに、ＤＱＳ信号によってＤＱ信号が有効に取得される、ＤＱ信号とＤＱＳ信号との１以上の位相差を特定する。また、決定部１０２は、複数のリファレンス電圧の値の候補ごとに特定された１以上の位相差に基づいて、ＤＱ信号を有効に取得できる期間が最も長いと推定されるリファレンス電圧の値を決定する。また、調整部１０３は、決定されたリファレンス電圧の値に対応する期間に基づいて、ＤＱ信号とＤＱＳ信号との位相関係を調整する。
【００３２】
次に、本実施形態における情報処理装置１においてＣＰＵ１０の制御により実行される処理について説明する。ＣＰＵ１０は、情報処理装置１の電源が投入されると、図４に示すフローチャートの処理を開始する。なお、図４に示す「１」は、図５の「１」と接続している。
【００３３】
ＯＰ１０１では、メモリコントローラ２０が、ＰＲＢＳ生成部２０ｂの開始フラグ２０ｄがオンに設定されているか否かを判定する。開始フラグ２０ｄがオンに設定されている場合は（ＯＰ１０１：Ｙｅｓ）、メモリコントローラ２０は処理をＯＰ１０２に進める。開始フラグ２０ｄがオフに設定されている場合は（ＯＰ１０１：Ｎｏ）、メモリコントローラ２０はＯＰ１０１の処理を繰り返し実行する。
【００３４】
ＯＰ１０２では、メモリコントローラ２０は、ＰＲＢＳ生成部２０ｂを制御してＰＲＢＳのランダムパターンを生成する。本実施形態では、ＰＲＢＳのランダムパターンが所定のビット数ごとに分割されてメモリ素子６０ａ、６０ｂに書き込まれる。例えば、１２８ビットのＰＲＢＳのランダムパターンが８ビットごとに分割され、分割されたランダムパターンごとにＷＲＩＴＥコマンドによる書き込みが行われる。そこで、ＯＰ１０２では、分割単位分、すなわち上の例では８ビット分のＰＲＢＳのランダムパターンが生成される。次いで、メモリコントローラ２０は処理をＯＰ１０３に進める。ＯＰ１０３では、メモリコントローラ２０は、ＰＲＢＳ生成部２０ｂによって生成されたデータ信号をメモリモジュール６０のメモリ素子６０ａ、６０ｂに書き込むＷＲＩＴＥコマンドを生成する。
【００３５】
Ｉ／Ｏ回路３０から出力されたＷＲＩＴＥコマンドは、Ｉ／Ｏ回路３０とメモリモジュ
ール６０とを接続する伝送路４０、５０を経由してＤＱＳ信号およびＤＱ信号の出力先となるメモリ素子６０ａまたは６０ｂに入力される。次いで、処理はＯＰ１０４に進められる。
【００３６】
ＯＰ１０４では、メモリコントローラ２０は、ＷＲＩＴＥコマンドがＩ／Ｏ回路３０からメモリモジュール６０にＮ回（Ｎは自然数）送信されたか否かを判定する。ここで、ＮはＰＲＢＳのランダムパターンの分割数である。例えば１２８ビットのＰＲＢＳのランダムパターンが８ビットごとに分割される場合は、Ｎ＝１２８／８＝１６である。メモリコントローラ２０は、情報処理装置１内のカウンタ（図示せず）を用いてＷＲＩＴＥコマンドがメモリモジュールに送信された回数を計上してもよい。ＷＲＩＴＥコマンドがＩ／Ｏ回路３０からメモリモジュール６０にＮ回送信された場合は（ＯＰ１０４：Ｙｅｓ）、メモリコントローラ２０は処理をＯＰ１０６に進める。ＷＲＩＴＥコマンドがＩ／Ｏ回路３０からメモリモジュール６０に送信された回数がＮ回未満である場合は（ＯＰ１０４：Ｎｏ）、メモリコントローラ２０は処理をＯＰ１０５に進める。
【００３７】
ＯＰ１０５では、メモリコントローラ２０は、ＰＲＢＳのランダムパターンの信号およびＷＲＩＴＥコマンドの送信タイミングにおいて、所定のインターバルを設ける。図４からわかるように、本実施形態では、ＰＲＢＳのランダムパターンおよびＷＲＩＴＥコマンドはＮ回メモリモジュール６０に送信される。ＯＰ１０５において、インターバルを設けて次のＰＲＢＳの信号およびＷＲＩＴＥコマンドがメモリモジュール６０に送信されることで、ＰＲＢＳのランダムパターンがより確実にメモリモジュール６０に書き込まれることが期待される。メモリコントローラ２０は、ＯＰ１０５において所定のインターバルを設けた後、処理をＯＰ１０２に戻す。ＣＰＵ１０は、ＯＰ１０２〜ＯＰ１０５の処理を繰り返すことで、分割されたＰＲＢＳのランダムパターンを順次生成してメモリ素子６０ａ、６０ｂへの書き込みを行う。
【００３８】
ＯＰ１０６では、メモリ素子６０ａ、６０ｂに対するすべてのＰＲＢＳのランダムパターンの書き込みが行われたか否かを判定する。本実施形態では、例えば、１２８ビットのＰＲＢＳのランダムパターンの書き込みを行う場合は、１２８ビットの「０」と「１」のすべての組み合わせについてＰＲＢＳのランダムパターンの書き込みが実行される。メモリ素子６０ａ、６０ｂに対するすべてのＰＲＢＳのランダムパターンの書き込みが行われた場合は（ＯＰ１０６：Ｙｅｓ）、メモリコントローラ２０は処理を図５のＯＰ１０７に進める。メモリ素子６０ａ、６０ｂに対するすべてのＰＲＢＳのランダムパターンの書き込みが行われていない場合は（ＯＰ１０６：Ｎｏ）、メモリコントローラ２０は処理をＯＰ１０２に戻す。そして、メモリコントローラ２０は、メモリ素子６０ａ、６０ｂにまだ書き込まれていないＰＲＢＳのランダムパターンの書き込みを行う。ＯＰ１０６の判定は、例えば、メモリコントローラ２０のＰＲＢＳ生成部２０ｂが判定すればよい。
【００３９】
ＯＰ１０７では、メモリコントローラ２０は、データ取得判定レジスタ２０ｅに格納されている図２に示す各種レジスタの設定値に従って、各ＤＱ信号のリファレンス電圧およびディレイタップ、ＤＱＳ信号のディレイタップを設定する。そして、メモリコントローラ２０は、メモリモジュール６０に書き込まれたＰＲＢＳのランダムパターンを読み出すＲＥＡＤコマンドを生成する。生成されたＲＥＡＤコマンドは、Ｉ／Ｏ回路３０から出力され、Ｉ／Ｏ回路３０とメモリモジュール６０とを接続する伝送路（図示せず）を経由してメモリ素子６０ａまたは６０ｂに入力される。ＲＥＡＤコマンドを受信したメモリ素子６０ａまたは６０ｂは、ＲＥＡＤコマンドに従って格納されているデータを読み出し、ＤＱ信号としてＤＱＳ信号と共に同相でＩ／Ｏ回路３０に出力する。Ｉ／Ｏ回路３０は、メモリモジュール６０から出力されたデータを受信する。次いで、メモリコントローラ２０は処理をＯＰ１０８に進める。
【００４０】
ＯＰ１０８では、メモリコントローラ２０は、データ取得判定部２０ｃにより、ＯＰ１０６においてＲＥＡＤコマンドによってメモリ素子６０ａ、６０ｂから読み出したＰＲＢＳのランダムパターンとＯＰ１０２において生成されたＰＲＢＳのランダムパターンとが一致するか否かを判定する。
【００４１】
本実施形態では、ディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉでは、ディレイタップの初期値が「０」に設定されている。そして、ディレイタップ設定部３０ｂ、３０ｃ、３０ｈ、３０ｉは、上記の刻み幅ごとに設定された０〜３１タップのいずれかの値にディレイタップを設定する。このため、本実施形態においては、ＤＱＳ信号およびＤＱ信号の各位相は、単独では、初期位置から位相が遅れる側にシフトされる。また、ＤＱＳ信号およびＤＱ信号の各位相は、単独では、初期位置から位相が進む側にシフトすることはできない。ただし、例えば、ＤＱＳ信号の位相を固定し、ＤＱ信号の位相を遅らせることで、ＤＱＳ信号の位相をＤＱ信号に対して実質的に進ませることができる。
【００４２】
図６において、「ＤＱＳディレイタップ」の「０」を境界として左半分の領域はセットアップ側、すなわちＤＱＳ信号のエッジの位相に対してＤＱ信号の位相が早い側である。本実施形態では、ＤＱＳ信号の位相自体を進ませることはできないため、ＤＱ信号の位相を遅らせることでＤＱＳ信号のディレイタップをセットアップ側に移動する。これにより、セットアップ側におけるデータ取得判定が取得される。同様に、図６において、「ＤＱＳディレイタップ」の「０」を境界として右半分の領域はホールド側、すなわちＤＱＳ信号のエッジの位相に対してＤＱ信号の位相が遅い側である。本実施形態では、ＤＱ信号の位相自体を進ませることはできないため、ＤＱＳ信号の位相を遅らせることでＤＱＳ信号のディレイタップをホールド側に移動する。これにより、ホールド側におけるデータ取得判定が取得される。本実施形態では、このようにＤＱＳ信号とＤＱ信号の位相が相対的に移動されることで、データ取得判定の結果が得られる。
【００４３】
ＯＰ１０８では、データ取得判定部２０ｃは、ＯＰ１０２〜ＯＰ１０６の処理によってメモリ素子６０ａ、６０ｂに書き込まれたすべてのＰＲＢＳのランダムパターンについて読み出したＰＲＢＳの各ランダムパターンと一致するかを判定する。そして、データ取得判定部２０ｃは、ＰＲＢＳの各ランダムパターンが一致すると判定された場合に、設定されているＤＱ信号のリファレンス電圧およびＤＱＳ信号のディレイタップにおけるデータの読み出しを成功と判定する。また、データ取得判定部２０ｃは、ＰＲＢＳのいずれかのランダムパターンが一致しないと判定された場合は、設定されているＤＱ信号のリファレンス電圧およびＤＱＳ信号のディレイタップにおけるデータの読み出しを不成功と判定する。次いで、メモリコントローラ２０は、処理をＯＰ１０９に進める。
【００４４】
ＯＰ１０９では、メモリコントローラ２０は、ＯＰ１０８における判定結果をデータ取得判定レジスタ２０ｅのリード結果表示レジスタに記憶する。本実施形態では、メモリコントローラ２０は、ＯＰ１０８における判定結果が成功である場合は○（成功；以下同じ）として記憶し、判定結果が不成功である場合は×（不成功；以下同じ）として記憶する。次いで、メモリコントローラ２０は、処理をＯＰ１１０に進める。ＯＰ１１０では、メモリコントローラ２０は、ＤＱ信号のリファレンス電圧とＤＱＳ信号のディレイタップのすべての組み合わせに対してＯＰ１０８の判定処理が実行されたか否かを判定する。ＤＱ信号のリファレンス電圧とＤＱＳ信号のディレイタップのすべての組み合わせに対してＯＰ１０８の判定処理が実行されていない場合は（ＯＰ１１０：Ｎｏ）、メモリコントローラ２０は処理をＯＰ１０７に戻す。また、ＤＱ信号のリファレンス電圧とＤＱＳ信号のディレイタップのすべての組み合わせに対してＯＰ１０８の判定処理が実行された場合は（ＯＰ１１０：Ｙｅｓ）、メモリコントローラ２０は処理をＯＰ１１１に進める。
【００４５】
図６に上記のＯＰ１０７〜ＯＰ１１０の処理が実行されてデータ取得判定レジスタ２０
ｅに格納された判定結果の一例を示す。図６には、ＤＱ０〜ＤＱ３の各ＤＱ信号について、ＤＱ信号のリファレンス電圧Ｖｒｅｆ０〜Ｖｒｅｆ７に対するＤＱＳ信号のディレイタップ−７〜８それぞれにおける上記のデータ取得判定の結果を示す。図中○で示される欄は、メモリモジュール６０から読み出したすべてのＰＲＢＳのランダムパターンがＯＰ１０２において生成されたＰＲＢＳのランダムパターンと一致したことを示す。また、図中×で示される欄は、メモリモジュール６０から読み出したＰＲＢＳのランダムパターンのうち、ＯＰ１０２において生成されたＰＲＢＳのランダムパターンと一致しない場合が存在したことを示す。
【００４６】
ＯＰ１１１では、処理の制御がＣＰＵ１０に戻る。本実施形態では、図６に示す判定結果に基づいて、ＣＰＵ１０が以下のＯＰ１１１およびＯＰ１１２の処理を実行する。すなわち、ＣＰＵ１０は、ＯＰ１１１では、各ＤＱ信号についてデータ信号を取得できる期間が最も長いと推定されるリファレンス電圧（最適Ｖｒｅｆ）を決定する。そして、ＣＰＵ１０は、ＯＰ１１２において、各ＤＱ信号に対する最適Ｖｒｅｆにおける判定結果に基づいてＤＱＳ信号およびＤＱ信号の位相を調整する。
【００４７】
図７、８にＯＰ１１１において実行される処理のフローチャートを示す。なお、図７に示す「２」は、図８の「２」と接続している。ＯＰ２０１では、ＣＰＵ１０は、ＤＱ０〜ＤＱ３のいずれかのＤＱ信号における１つのＶｒｅｆをターゲットとして、ＤＱＳ信号のディレイタップ−７〜８の間に○の判定結果が存在するか否かを判定する。ターゲットとなるＶｒｅｆに○の判定結果が存在する場合は（ＯＰ２０１：Ｙｅｓ）、ＣＰＵ１０は、処理をＯＰ２０２に進める。また、○の判定結果が存在しない場合は（ＯＰ２０１：Ｎｏ）、ＣＰＵ１０は別のＶｒｅｆにおいてＯＰ２０１の処理を繰り返す。
【００４８】
ＯＰ２０２では、ＣＰＵ１０は、ターゲットとなるＶｒｅｆにおいて、○の判定結果が不連続であるか否かを判定する。○の判定結果が不連続である場合は（ＯＰ２０２：Ｙｅｓ）、ＣＰＵ１０は、処理をＯＰ２０１に戻し、別のＶｒｅｆにおいてＯＰ２０１の処理を再度実行する。また、○の判定結果が不連続でない場合は（ＯＰ２０２：Ｎｏ）、ＣＰＵ１０は処理をＯＰ２０３に進める。
【００４９】
ここで、図６を参照すると、例えば、ＤＱ１のＤＱ信号のＶｒｅｆ２について、○の判定結果がＤＱＳ信号のディレイタップ−２〜０とディレイタップ２〜３とで分かれて並んでいる。この場合、ＯＰ２０１において、ＣＰＵ１０は、○の判定結果が存在するとして処理をＯＰ２０２に進める。さらに、ＯＰ２０２において、ＣＰＵ１０は、○の判定結果がＤＱＳ信号のディレイタップ−２〜０とディレイタップ２〜３とに分かれているため、○の判定結果が不連続であるとして、処理をＯＰ２０１に戻す。
【００５０】
ＯＰ２０３では、ＣＰＵ１０は、ターゲットとなるＶｒｅｆにおいて、ＤＱＳ信号の各ディレイタップにおけるデータ取得判定結果を調べるため、ＤＱＳ信号のディレイタップの初期値を設定する。本実施形態では、ＣＰＵ１０は、設定された初期値からディレイタップを１つずつインクリメントしていき、各ディレイタップにおけるデータ取得判定結果を確認する。図６に示す例の場合、ＣＰＵ１０は、ＤＱＳ信号のディレイタップの初期値を−７にする、すなわちＤＱ信号ディレイタップの初期値を＋７に設定する。次いで、ＣＰＵ１０は、処理をＯＰ２０４に進める。
【００５１】
ＯＰ２０４では、ＣＰＵ１０はＯＰ２０３において設定されたＤＱＳ信号のディレイタップの初期値からディレイタップを１つずつインクリメントしていき、最初に○の判定結果となるディレイタップの値を「−側タップ値」として決定する。次いで、ＣＰＵ１０は、処理をＯＰ２０５に進める。ＯＰ２０５では、ＣＰＵ１０は、さらにＤＱＳ信号のディレイタップを１つずつインクリメントしていき、×の判定結果となる手前のディレイタッ
プの値を「＋側タップ値」として決定する。次いで、ＣＰＵ１０は、処理をＯＰ２０６に進める。
【００５２】
図６に示す例では、例えば、ＤＱ０のＤＱ信号のＶｒｅｆ３について、ＯＰ２０４の処理により「−側タップ値」は「−３」、ＯＰ２０５の処理により「＋側タップ値」は「５」としてそれぞれ決定される。
【００５３】
ＯＰ２０６では、ＣＰＵ１０は、各ＤＱ信号のすべてのＶｒｅｆについてＯＰ２０１およびＯＰ２０２の判定処理が実行されたか否かを判定する。各ＤＱ信号のすべてのＶｒｅｆについてＯＰ２０１およびＯＰ２０２の判定処理が実行された場合は（ＯＰ２０６：Ｙｅｓ）、ＣＰＵ１０は処理を図８のＯＰ２０７に進める。また、各ＤＱ信号のすべてのＶｒｅｆについてＯＰ２０１およびＯＰ２０２の判定処理が実行されていない場合は（ＯＰ２０６：Ｎｏ）、ＣＰＵ１０は処理をＯＰ２０１に戻す。
【００５４】
ＯＰ２０７では、ＣＰＵ１０は、ＯＰ２０４およびＯＰ２０５の処理により決定された「−側タップ値」および「＋側タップ値」の値に基づいて、ＯＰ２０４およびＯＰ２０５の処理が実行されたＤＱ信号のＶｒｅｆにおいて○の判定結果が連続する数を算出する。本実施形態では、ＯＰ２０７において算出される○の判定結果が連続する数を、ＤＱＳ信号のディレイタップの位相マージンと称する。図６に示す例では、例えば、ＤＱ０のＤＱ信号のＶｒｅｆ３について、ＤＱＳ信号のディレイタップの位相マージンは「９」として算出される。ＯＰ２０７において、ＣＰＵ１０は、ＯＰ２０４およびＯＰ２０５の処理対象となったＤＱ信号のＶｒｅｆについて、それぞれＤＱＳ信号のディレイタップの位相マージンが算出される。次いで、ＣＰＵ１０は、処理をＯＰ２０８に進める。
【００５５】
ＯＰ２０８では、ＣＰＵ１０は、ＤＱ０〜ＤＱ３の各ＤＱ信号におけるデータ取得判定結果から、各ＤＱ信号において、ＤＱＳ信号のディレイタップの位相マージンの値が最大となるＶｒｅｆをそれぞれ決定し、決定されたＶｒｅｆのデータ取得判定結果を抽出する。図６に示す例では、ＤＱ０のＤＱ信号については、Ｖｒｅｆ２〜Ｖｒｅｆ４においてＤＱＳ信号のディレイタップの位相マージンの値がいずれも「９」であるため、３つのＶｒｅｆ２〜４におけるデータ取得判定結果が抽出される。同様に、ＤＱ１のＤＱ信号についてはＶｒｅｆ３、４、ＤＱ２のＤＱ信号についてはＶｒｅｆ３、ＤＱ３のＤＱ信号についてはＶｒｅｆ３、それぞれにおけるデータ取得判定結果が抽出される。次いで、ＣＰＵ１０は、処理をＯＰ２０９に進める。
【００５６】
ＯＰ２０９では、ＣＰＵ１０は、各ＤＱ信号について、ＯＰ２０８の処理によって複数のＶｒｅｆのデータ取得判定結果が抽出されたか否かを判定する。ＣＰＵ１０は、複数のＶｒｅｆのデータ取得判定結果が抽出されたＤＱ信号については（ＯＰ２０９：Ｙｅｓ）、処理をＯＰ２１０に進める。また、ＣＰＵ１０は、Ｖｒｅｆのデータ取得判定結果が１つだけ抽出されたＤＱ信号については（ＯＰ２０９：Ｎｏ）、処理をＯＰ２１１に進める。
【００５７】
ＯＰ２１１では、ＣＰＵ１０は、ＯＰ２０８の処理によりデータ取得判定結果の抽出対象となった１つのＶｒｅｆを最適Ｖｒｅｆとして決定する。なお、最適Ｖｒｅｆが、データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値の一例に相当する。図６に示す例では、ＤＱ２およびＤＱ３のＤＱ信号についてはＯＰ２０８の処理によりそれぞれＶｒｅｆ３のみがデータ取得判定結果の抽出対象となる。したがって、ＯＰ２０９およびＯＰ２１１の処理により、ＤＱ２およびＤＱ３のＤＱ信号については、Ｖｒｅｆ３がそれぞれ最適Ｖｒｅｆとして決定される。
【００５８】
ＯＰ２１０では、ＣＰＵ１０は、以下の式（１）によりＶｍｉｄを算出する。
Ｖｍｉｄ＝（Ｖｍｉｎ＋Ｖｍａｘ）／２・・・（１）
ここで、Ｖｍｉｎとは、ＯＰ２０８の処理によって抽出された複数のＶｒｅｆのうち最小のＶｒｅｆの値を意味する。また、Ｖｍａｘとは、ＯＰ２０８の処理によって抽出された複数のＶｒｅｆのうち最大のＶｒｅｆの値を意味する。図６に示す例では、ＤＱ０のＤＱ信号については、Ｖｒｅｆ２が最小のＶｒｅｆであるためＶｍｉｎは「２」であり、Ｖｒｅｆ４が最大のＶｒｅｆであるためＶｍａｘは「４」である。したがって、式（１）によりＶｍｉｄは「３」として算出される。同様に、ＤＱ１のＤＱ信号については、Ｖｍｉｎは「３」でありＶｍａｘは「４」であるため、Ｖｍｉｄは「３．５」として算出される。ＣＰＵ１０は、ＯＰ２１０の処理が終了すると、処理をＯＰ２１２に進める。
【００５９】
ＯＰ２１２では、ＣＰＵ１０は、ＯＰ２１０の処理によりＶｍｉｄが算出された各ＤＱ信号について、Ｖｍｉｄの値が整数であるか否かを判定する。ＣＰＵ１０は、Ｖｍｉｄが整数であるＤＱ信号については（ＯＰ２１２：Ｙｅｓ）、処理をＯＰ２１４に進める。また、ＣＰＵ１０は、Ｖｍｉｄが整数でないＤＱ信号については（ＯＰ２１２：Ｎｏ）、処理をＯＰ２１３に進める。図６に示す例では、ＤＱ０のＤＱ信号については、Ｖｍｉｄは「３」であるため、ＣＰＵ１０は処理をＯＰ２１４に進める。また、ＤＱ１のＤＱ信号については、Ｖｍｉｄは「３．５」であるため、ＣＰＵ１０は処理をＯＰ２１３に進める。
【００６０】
ＯＰ２１４では、ＣＰＵ１０は、ＯＰ２１０の処理により算出されたＶｍｉｎを最適Ｖｒｅｆとして決定する。図６に示す例では、ＣＰＵ１０は、ＤＱ０のＤＱ信号については、Ｖｍｉｄが「３」であるためＶｒｅｆ３を最適Ｖｒｅｆとして決定する。
【００６１】
ＯＰ２１３では、ＣＰＵ１０は、各ＤＱ信号のデータ取得判定結果に基づいてＭｍａｘおよびＭｍｉｎを算出する。ここで、Ｍｍａｘは、ＯＰ２１０の処理によって算出されたＶｍａｘのＶｒｅｆのさらに１つ大きいＶｒｅｆにおけるデータ取得判定結果において、○が連続する数の最大値である。また、Ｍｍｉｎは、ＯＰ２１０の処理によって算出されたＶｍｉｎのＶｒｅｆのさらに１つ小さいＶｒｅｆにおけるデータ取得判定結果において、○が連続する数の最大値である。
【００６２】
図６に示す例では、ＤＱ１のＤＱ信号については、Ｖｍａｘは「４」であるから、ＶｍａｘのＶｒｅｆ４の１つ大きいＶｒｅｆ５におけるデータ取得判定結果において○が連続する数の最大値「６」がＭｍａｘとして算出される。また、ＤＱ１のＤＱ信号については、Ｖｍｉｎ「３」であるから、ＶｍｉｎのＶｒｅｆ３の１つ小さいＶｒｅｆ２におけるデータ取得判定結果において○が連続する数の最大値「３」がＭｍｉｎとして算出される。ＣＰＵ１０は、ＯＰ２１３における処理が終了すると、処理をＯＰ２１５に進める。
【００６３】
ＯＰ２１５では、ＣＰＵ１０は、ＯＰ２１３の処理によって算出されたＭｍａｘ、Ｍｍｉｎの値の大小関係を判定する。Ｍｍｉｎ＜Ｍａｘである場合は（ＯＰ２１５：Ｙｅｓ）、ＣＰＵ１０は処理をＯＰ２１７に進める。また、Ｍｍｉｎ≧Ｍａｘである場合は（ＯＰ２１５：Ｎｏ）、ＣＰＵ１０は処理をＯＰ２１６に進める。
【００６４】
ＯＰ２１６では、ＣＰＵ１０は、ＯＰ２１０の処理によって算出されたＶｍｉｄの値を切り捨てた値が示すＶｒｅｆを最適Ｖｒｅｆとして決定する。また、ＯＰ２１７では、ＣＰＵ１０は、ＯＰ２１０の処理によって算出されたＶｍｉｄの値を切り上げた値が示すＶｒｅｆを最適Ｖｒｅｆとして決定する。図５に示す例では、ＤＱ１のＤＱ信号について、Ｍｍａｘは「６」、Ｍｍｉｎは「３」、Ｖｍｉｄは「３．５」とそれぞれ算出される。したがって、ＣＰＵ１０は、処理をＯＰ２１５からＯＰ２１７に進め、Ｖｍｉｄの値を切り上げた値は「４」であることからＶｒｅｆ４が最適Ｖｒｅｆであると決定する。
【００６５】
図６に示すように、ＤＱ１のＤＱ信号について、○の判定結果が連続する数が最大であ
るＶｒｅｆはＶｒｅｆ３、４の２つ存在する。そこで、本実施形態では、Ｖｒｅｆ３に隣接するＶｒｅｆ２における○の判定結果が連続する最大幅と、Ｖｒｅｆ４に隣接するＶｒｅｆ５における○の判定結果が連続する最大幅とが比較される。そして、比較の結果、Ｖｒｅｆ２、５のうち○の判定結果が連続する最大幅がより大きいＶｒｅｆ、図６の例の場合ではＶｒｅｆ５に隣接するＶｒｅｆ４が、Ｖｒｅｆ３よりもより最適Ｖｒｅｆにふさわしいリファレンス電圧として決定される。
【００６６】
ＣＰＵ１０は、ＯＰ２１１、ＯＰ２１４、ＯＰ２１６、ＯＰ２１７の処理によってＤＱ０〜ＤＱ３の各ＤＱ信号における最適Ｖｒｅｆを決定すると、本フローチャートの処理を終了して、処理をＯＰ１１２に進める。
【００６７】
図９に、ＯＰ１１２においてＣＰＵ１０が実行する処理のフローチャートを示す。ＯＰ３０１では、ＣＰＵ１０は、ＯＰ１１１の処理によってＤＱ０〜ＤＱ３の各ＤＱ信号に対して決定された最適Ｖｒｅｆにおけるデータ取得判定結果をデータ取得判定レジスタ２０ｅから抽出する。図１０Ａに、ＯＰ３０１においてＣＰＵ１０が抽出したデータ取得判定結果の一例を示す。図１０Ａに示すように、ＤＱ０〜ＤＱ３の各ＤＱ信号の最適Ｖｒｅｆにおける○の判定結果が連続するＤＱＳ信号のディレイタップの位相マージンの位置は互いに異なる。本実施形態では、ＣＰＵ１０は、ＯＰ３０１において抽出したデータ取得判定結果を用いて以下のＯＰ３０２〜ＯＰ３０７の処理を実行する。これにより、ＣＰＵ１０は、ＤＱ０〜ＤＱ３の各信号間におけるＤＱＳ信号のディレイタップの位置合わせを行う。
【００６８】
ＯＰ３０２では、ＣＰＵ１０は、以下の式（２）を用いてＤＱＳ信号のディレイタップの理想値を算出する。ここで、ＤＱＳ信号のディレイタップの理想値とは、ＯＰ３０１において抽出された各ＤＱ信号の最適Ｖｒｅｆにおけるデータ取得判定結果において、○の判定結果となるＤＱ信号の位相幅の中央値を意味する。すなわち、ＤＱ信号のデータを取得する好適なストローブポイントに対応するＤＱＳ信号の理想的な位相である。
（ＤＱＳ信号のディレイタップの理想値）＝｛（ＤＱ信号のディレイタップのマイナス側の位相マージン）＋（ＤＱ信号のディレイタップのプラス側の位相マージン）｝／２・・・（２）
【００６９】
なお、本実施形態では、ＤＱＳ信号のディレイタップの理想値は小数点を切り上げて算出される。また、ＤＱ信号のディレイタップのマイナス側の位相マージンとは、○の判定結果となるＤＱ信号の位相幅における、ＤＱＳ信号のディレイタップ値０を基準としたＤＱ信号のマイナス側の位相幅である。また、ＤＱ信号のディレイタップのプラス側の位相マージンとは、○の判定結果となるＤＱ信号の位相幅における、ＤＱＳ信号のディレイタップ値０を基準としたＤＱ信号のプラス側の位相幅である。
【００７０】
図１０Ａに示す例では、ＤＱ０については、ＤＱＳ信号のディレイタップ−３〜−１まで３つ連続してＤＱ信号の取得が○と判定されている。したがって、ＤＱ信号の取得が○と判定されるＤＱ信号のディレイタップのマイナス側の位相マージンは「−３」となる。また、ＤＱＳ信号のディレイタップ１〜５まで５つ連続してＤＱ信号の取得が○と判定されている。したがって、ＤＱ信号の取得が○と判定されるＤＱ信号のディレイタップのプラス側の位相マージンは「５」となる。したがって、この場合のＤＱＳ信号のディレイタップの理想値は「１」となる。
【００７１】
このようにしてＣＰＵ１０は、各ＤＱ信号に対してＤＱ信号の取得が○と判定されるＤＱ信号のディレイタップのマイナス側の位相マージンとプラス側の位相マージンを計上する。そして、図１０Ａに示す例では、ＤＱ０〜ＤＱ３の各ＤＱ信号に対するＤＱＳ信号のディレイタップの理想値は、それぞれ「１」、「２」、「−１」、「２」である。なお、
図１０Ａには、各ＤＱ信号について、ＤＱＳ信号のディレイタップの理想値に該当する○の判定結果に太枠が施されている。
【００７２】
各ＤＱ信号に対するＤＱＳ信号のディレイタップの理想値は、各ＤＱ信号の最適Ｖｒｅｆにおいて、ＤＱ信号のデータを取得する最適のストローブポイントを示す。ただし、図９Ａに示すように、ＤＱＳ信号のディレイタップの理想値は、ＤＱ信号ごとに異なっている。そこで、本実施形態では、ＣＰＵ１０は、各ＤＱ信号のＤＱＳ信号のディレイタップの理想値が「０」となるように、以下の処理を実行してＤＱＳ信号および各ＤＱ信号の位相を調整する。ＣＰＵ１０は、ＯＰ３０２の処理を終了すると、処理をＯＰ３０３に進める。
【００７３】
ＯＰ３０３では、ＣＰＵ１０は、ＯＰ３０２において算出されたＤＱＳ信号のディレイタップの理想値を以下の式（３）に代入して、ＤＱ信号のディレイタップの理想値を算出する。ここで、ＤＱ信号のディレイタップの理想値とは、各ＤＱ信号の位相の中央位置が「０」になるように各ＤＱ信号をシフトするための位相の遅延量（ディレイ）を示す。
（ＤＱ信号のディレイタップの理想値）＝−（ＤＱＳ信号のディレイタップの理想値）・・・（３）
【００７４】
図１０Ｂに例示するように、ＤＱ０〜ＤＱ３の各ＤＱ信号に対するＤＱ信号のディレイタップの理想値は、それぞれ「−１」、「−２」、「１」、「−２」である。すなわち、ＤＱＳ信号の位相が上記のＤＱＳ信号のディレイタップの理想値に従ってシフトされると、ＤＱＳ信号のディレイタップが０に設定される。そこで、ＤＱ信号の位相をＤＱ信号のディレイタップの理想値に従ってシフトすることで、○の判定結果となるＤＱ信号の位相幅の中央値がＤＱＳ信号のディレイタップ０となる。ＣＰＵ１０は、ＯＰ３０３の処理を終了すると、処理をＯＰ３０４に進める。
【００７５】
ＯＰ３０４では、ＣＰＵ１０は、ＯＰ３０３において算出したＤＱ信号のディレイタップの理想値にマイナスの値が存在するか否かを判定する。ＤＱ信号のディレイタップの理想値にマイナスの値が存在する場合は（ＯＰ３０４：Ｙｅｓ）、ＣＰＵ１０は処理をＯＰ３０５に進める。また、ＤＱ信号のディレイタップの理想値にマイナスの値が存在しない場合、すなわちＤＱ信号のディレイタップの理想値がいずれもプラスの値である場合は（ＯＰ３０４：Ｎｏ）、ＣＰＵ１０は処理をＯＰ３０６に進める。
【００７６】
ここで、ＯＰ３０４においてＤＱ信号のディレイタップの理想値にマイナスの値が存在するか否かを判定する理由について説明する。図１０Ａと図１０Ｅに、それぞれ異なるデータ取得判定の結果を例示する。上述の通り、本実施形態ではＤＱＳ信号の図１０Ｅに示す場合のように、ＤＱ信号のディレイタップの理想値が全てプラスの場合は、各ＤＱ信号の位相を遅らせることで、各信号間のＤＱＳ信号のディレイタップを揃えることができる。なお、本実施形態では、各信号間のＤＱＳ信号のディレイタップが「０」となるように、各ＤＱ信号の位相を遅らせる。
【００７７】
一方、図１０Ａに示す場合のように、ＤＱ信号のディレイタップの理想値にマイナス値があるということは、当該ＤＱ信号の位相を進ませる調整を行うことを意味する。ただし、上述の通り、本実施形態では、ＤＱ信号の位相を進ませることはできない。そこで、この場合は、ＤＱＳ信号の位相が遅れるように、ＤＱＳ信号のディレイタップが、ＤＱ信号のディレイタップの理想値に基づいて設定される。さらに、この場合は、ＤＱＳ信号の位相の遅延量を加味して、各ＤＱ信号の位相が遅れるように、各ＤＱ信号のディレイタップが設定される。
【００７８】
本実施形態では、ＤＱＳ信号およびＤＱ信号のディレイタップは、位相が初期位置から
遅れる側に設定することができ、位相が初期位置から進む側に設定することはできない。このため、ＤＱ信号のディレイタップの理想値にマイナスの値が存在するか否の判定に基づいて、ＤＱＳ信号およびＤＱ信号のディレイタップを位相が遅れる側に設定する処理によりＤＱＳ信号およびＤＱ信号の位相が調整される。
【００７９】
ＯＰ３０５では、ＣＰＵ１０は、以下の式（４）を用いてＤＱＳ信号の位相の基準値を決定する。
（ＤＱＳ信号の位相の基準値）＝−（ＤＱ信号のディレイタップの理想値の最小値）・・・（４）
【００８０】
ここで「ＤＱ信号のディレイタップの理想値の最小値」は、式（３）によりＤＱ信号ごとに算出されたＤＱ信号のディレイタップの理想値のうちの最小値を意味する。式（２）〜（４）からわかるように、各ＤＱ信号のＤＱＳ信号のストローブポイントが、式（２）により算出されるＤＱＳ信号のディレイタップの理想値の最大値に合わせて移動されることとなる。
【００８１】
ＯＰ３０５では、ＣＰＵ１０は、ＤＱ信号ごとに以下の式（５）を用いて、位相のシフト量を決定する。
（ＤＱ信号の位相のシフト量）＝（ＤＱ信号のディレイタップの理想値）＋（ＤＱＳ信号の位相の基準値）・・・（５）
ここで、「ＤＱ信号のディレイタップの理想値」は、式（３）により算出される、各ＤＱ信号のＤＱ信号のディレイタップの理想値である。また、「ＤＱＳ信号の位相の基準値」は、式（４）により算出されるＤＱＳ信号の位相の基準値である。なお、ＤＱＳ信号の位相の基準値が、所定の位相の目標値の一例に相当する。
【００８２】
ＯＰ３０５では、ＣＰＵ１０は、式（４）により算出されたＤＱＳ信号の位相の基準値に従って、ＤＱＳ信号の位相をシフトする。図１０Ａに示す例では、ＤＱ０〜ＤＱ３の各ＤＱ信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置は、それぞれ「１」、「２」、「−１」、「２」である。そしてＯＰ３０５における処理により、これらのＤＱＳ信号のディレイタップの位置は、図１０Ｃに示されるようにそれぞれ「２」に移動する。このように、本実施形態においては、ＤＱＳ信号の位相の基準値を求めることにより、ＤＱＳ信号の位相調整を実現している。
【００８３】
なお、ＤＱＳ信号の位相の基準値は、式（４）を用いる代わりに、各ＤＱ信号に対するＤＱＳ信号のディレイタップの理想値のうち多数決により同一となる値が最も多い値としてもよい。また、各ＤＱ信号のうちＤＱ信号の位相のシフト量に最も余裕があるＤＱ信号におけるＤＱＳ信号のディレイタップの理想値を、ＤＱＳ信号の位相の基準値としてもよい。
【００８４】
さらに、ＣＰＵ１０は、式（５）により算出されたＤＱ信号の位相のシフト量に従って、ＤＱ信号ごとに位相をシフトする。図１０Ｂに示す例では、ＤＱ０の信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置は「１」である。また、式（５）によりＤＱ０の信号に対して算出されるＤＱ信号の位相のシフト量は「１」である。この結果、ＤＱ０の信号に対しては、ＤＱＳ信号のディレイタップの位置が「２」となるようにＤＱ信号の位相がシフトされる。また、図１０Ｂに示す例では、ＤＱ２の信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置は「−１」である。また、式（５）によりＤＱ２の信号に対して算出されるＤＱ信号の位相のシフト量は「３」である。この結果、ＤＱ２の信号に対しても、ＤＱＳ信号のディレイタップの位置が「２」となるようにＤＱ信号の位相がシフトされる。
【００８５】
なお、図１０Ｃに示す例では、各ＤＱ信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置は「２」である。また、式（５）によりＤＱ１、ＤＱ３の信号に対して算出されるＤＱ信号の位相のシフト量は「０」である。この結果、ＤＱ１、ＤＱ３の信号に対しては、ＤＱ信号の位相はシフトされず、ＤＱＳ信号のディレイタップの位置は「０」のままとなる。
【００８６】
ＯＰ３０６では、ＣＰＵ１０は、ＤＱＳ信号の位相の基準値を０に設定する。また、ＯＰ３０６では、ＣＰＵ１０は、ＤＱ信号ごとに以下の式（６）を用いて、位相のシフト量を決定する。
（ＤＱ信号の位相のシフト量）＝（ＤＱ信号のディレイタップの理想値）・・・（６）
ここで、「ＤＱ信号のディレイタップの理想値」は、式（３）により算出される、各ＤＱ信号のＤＱ信号のディレイタップの理想値である。
【００８７】
図１０Ｅおよび図１０Ｆに、ＯＰ３０４において、ＤＱ信号のディレイタップの理想値にマイナス値が存在しない場合の例を示す。式（３）に示すように、ＤＱ信号のディレイタップの理想値にマイナス値が存在しないことは、式（２）により算出されるＤＱＳ信号のディレイタップの理想値がいずれもマイナス値であることを意味する。したがって、図１０Ｅの例に示す場合、ＣＰＵ１０は、処理をＯＰ３０４からＯＰ３０６に進める。
【００８８】
そしてＯＰ３０６では、ＣＰＵ１０は、ＤＱＳ信号の位相をシフトしない。そして、ＣＰＵ１０は、式（６）により算出されたシフト量に従って、ＤＱ信号ごとに位相をシフトする。図１０Ｅに示す例では、ＤＱ０の信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置は「−２」である。また、式（５）によりＤＱ０の信号に対して算出されるＤＱ信号の位相のシフト量は「２」である。この結果、ＤＱ０の信号に対しては、ＤＱＳ信号のディレイタップの位置が「０」となるようにＤＱ信号の位相がシフトされる。同様に、ＤＱ１〜３の信号に対する理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置はそれぞれ「−１」、「−３」、「−１」である。なお、図１０Ｅにおいて、理想的なストローブポイントであるＤＱＳ信号のディレイタップの位置における○の判定結果を太枠として示す。また、式（５）によりＤＱ１〜３の信号に対して算出されるＤＱ信号の位相のシフト量は、それぞれ「１」、「３」、「１」である。この結果、ＤＱ１〜３の信号に対しても、ＤＱＳ信号のディレイタップの位置が「０」となるようにＤＱ信号の位相がシフトされる。
【００８９】
図１０Ｆに、図１０Ｅに示すＤＱＳ信号およびＤＱ信号の位相が上記の処理によって調整された後の状態を示す。図１０Ｅに示す状態では、ＤＱ０〜ＤＱ３の各ＤＱ信号に対するＤＱＳ信号の理想的なストローブポイントの位置は、それぞれ「−２」、「−１」、「−３」、「−１」とばらついている。しかし、上記の処理により、各ＤＱ信号に対するＤＱＳ信号の理想的なストローブポイントの位置が「０」となるように、各ＤＱ信号の位相が調整される。ＯＰ３０５またはＯＰ３０６の処理が終了すると、ＣＰＵ１０は、ＯＰ１１１の本フローチャートの処理を終了し、さらに図４、５に示すフローチャートの処理を終了する。
【００９０】
したがって、本実施形態における上記の処理によれば、ＤＱ信号ごとに最適Ｖｒｅｆにおけるストローブポイントが異なる場合でも、ＤＱＳ信号およびＤＱ信号の位相が調整されて、各ＤＱ信号間で最適なストローブポイントを互いに合わせることができる。
【００９１】
（第２の実施形態）
次に、第２の実施形態について図面を参照しながら説明する。なお、第１の実施形態に対応する構成および処理に対しては同一の符号を用いて詳細な説明は省略する。図１に示すように、メモリモジュール６０は、Ｒａｎｋ０のメモリ素子６０ａとＲａｎｋ１のメモ
リ素子６０ｂとを有する。そこで、本実施形態では、メモリモジュール６０のＲａｎｋごとに上記のデータ取得判定結果が算出される。
【００９２】
本実施形態では、メモリコントローラ２０は、メモリモジュール６０のＲａｎｋ０のメモリ素子６０ａおよびＲａｎｋ１のメモリ素子６０ｂそれぞれに対して、図４、５のＯＰ１０２〜ＯＰ１１０の処理を実行する。そして、ＰＲＢＳ生成部２０ｂのデータ取得判定部２０ｃは、各メモリ素子６０ａ、６０ｂに対して、各ＤＱ信号についてデータ取得判定結果を算出する。
【００９３】
また、本実施形態では、ＣＰＵ１０は図５のＯＰ１１１の処理を実行する際に、図８に示すフローチャートの処理の代わりに図１３に示すフローチャートの処理を実行する。したがって、本実施形態では、図７に示すＯＰ２０６において、メモリ素子６０ａ、６０ｂそれぞれのデータ取得判定結果においてすべてのＶｒｅｆの判定が終了すると、ＣＰＵ１０は処理を図１３のＯＰ４０１に進める。なお、図１２に、データ取得判定部２０ｃによって算出されるメモリ素子６０ａ、６０ｂそれぞれのデータ取得判定結果の一例を示す。当該データ取得判定結果は、ＰＲＢＳ生成部２０ｂのデータ取得判定レジスタ２０ｅに記憶される。
【００９４】
ＯＰ４０１において、ＣＰＵ１０は、図７のＯＰ２０４およびＯＰ２０５の処理により決定された「−側タップ値」および「＋側タップ値」の値に基づいて、ＯＰ２０４およびＯＰ２０５の処理対象であるＤＱ信号のＶｒｅｆにおいて○の判定結果が連続する数を算出する。
【００９５】
本実施形態では、ＣＰＵ１０は、データ取得判定レジスタ２０ｅに記憶されたメモリ素子６０ａ、６０ｂそれぞれのデータ取得判定結果に基づいて各ＤＱ信号の最適Ｖｒｅｆを決定する。図１２に示す例では、「Ｒａｎｋ０の○の数」が、メモリ素子６０ａについて各ＤＱ信号の各Ｖｒｅｆにおける○の判定結果が連続する数を示す。同様に、「Ｒａｎｋ１の○の数」が、メモリ素子６０ｂについて各ＤＱ信号の各Ｖｒｅｆにおける○の判定結果が連続する数を示す。ＯＰ４０１の処理が終了すると、ＣＰＵ１０は、処理をＯＰ４０２に進める。
【００９６】
ＯＰ４０２において、ＣＰＵ１０は、メモリ素子６０ａ、６０ｂの双方のデータ取得判定結果の間で、各ＤＱ信号の各Ｖｒｅｆにおける○の判定結果が連続する数を比較し、○の判定結果が連続する数が少ない方を特定する。図１２では、ＯＰ４０２の処理によって特定される数を「Ｒａｎｋ０、１両方の○の数」として示す。次いで、ＣＰＵ１０は処理をＯＰ４０３に進める。
【００９７】
ＯＰ４０３において、ＣＰＵ１０は、各ＤＱ信号において、特定された○の判定結果が連続する数が最大のＶｒｅｆを最適Ｖｒｅｆとして決定する。図１２に示す例では、ＤＱ０〜ＤＱ３に対して、Ｖｒｅｆ３、Ｖｒｅｆ４、Ｖｒｅｆ３、Ｖｒｅｆ３がそれぞれ最適Ｖｒｅｆとして決定される。ＣＰＵ１０は、各ＤＱ信号に対する最適Ｖｒｅｆを決定すると、図１３に示すフローチャートの処理を終了して処理をＯＰ１１１に進める。
【００９８】
本実施形態では、ＣＰＵ１０は、図９のＯＰ３０１において、ＯＰ４０３の処理により特定された最適Ｖｒｅｆにおける、メモリ素子６０ａ、６０ｂのそれぞれのデータ取得判定結果を抽出する。さらに、ＣＰＵ１０は、抽出したデータ取得判定結果をＤＱ信号ごとにマージする。図１２に示す例では、ＤＱ０については、Ｖｒｅｆ３におけるメモリ素子６０ａ、６０ｂのそれぞれのデータ取得判定結果が抽出される。そして、ＣＰＵ１０は、ＤＱＳ信号のディレイタップが同じ位置において、データ取得判定結果が共に×になる場合は×、共に○になる場合は○として互いのデータ取得判定結果をマージする。さらに、
ＣＰＵ１０は、データ取得判定結果の一方が×他方が○となる場合は、△としてデータ取得判定結果をマージする。図１２には、ＣＰＵ１０によってマージされたデータ取得判定結果を示す。なお、本実施形態における以下の処理では、△の判定結果は×の判定結果とみなされる。
【００９９】
本実施形態では、ＣＰＵ１０は、ＯＰ３０１においてマージされたデータ取得判定結果を用いてＯＰ３０２以降の処理を実行することによりＤＱＳ信号および各ＤＱ信号の位相を調整する。したがって、本実施形態においても、メモリモジュールの各メモリ素子のデータ取得判定結果をそれぞれ算出することで、異なるＲａｎｋのメモリ素子の間でＤＱＳ信号およびＤＱ信号を上記と同様に調整することができる。
【０１００】
（第３の実施形態）
次に、第３の実施形態について、図面を参照しながら説明する。本実施形態では、サーバーシステム３内においてＤＱＳ信号とＤＱ信号の位相を調整する。図１４に、本実施形態に係るサーバーシステム３の概略構成を示す。
【０１０１】
サーバーシステム３は、システムボード（System Board；SB）１００およびシステム監視機構（System Control Facility；SCF）２００を有する。システムボード１００は、システムコントローラ（System Controller；SC）１００ａ、ＣＰＵ１００ｂ、ＭＡＣ（Memory Access Controller）１００ｃ、ＤＩＭＭ（Dual In-line Memory Module）＃０  １
００ｇ、ＤＩＭＭ＃１  １００ｈ、ＰＣＩｅ  ＲＣ（Riser Card）１００ｉ、Ｉ／Ｏ（Input/Output）１００ｊ、ＳＣＦ  Ｉ／Ｆ  １００ｋを有する。ＭＡＣ  １００ｃは、ＰＲＢＳ生成部１００ｄおよびデータ取得判定部１００ｆを有する。ＰＲＢＳ生成部１００ｄは、開始フラグ１００ｅを有する。なお、ＰＲＢＳ生成部１００ｄ、開始フラグ１００ｅ、データ取得判定部１００ｆは、上記の実施形態におけるＰＲＢＳ生成部２０ｂ、開始フラグ２０ｄ、データ取得判定部２０ｃに対応する。
【０１０２】
システム監視機構２００は、システムボード１００の電源のオンおよびオフの制御を行う。システム監視機構２００がシステムボード１００の電源をオンすると、システムボード１００のＣＰＵ１００ｂが動作を開始し、以下に説明する処理を実行する。システムコントローラ１００ａは、システムボード１００のＣＰＵ１００ｂ、ＭＡＣ１００ｃ、ＰＣＩｅ  ＲＣ  １００ｉ、ＳＣＦ  Ｉ／Ｆ  １００ｋとの間のアクセスなどを制御する。ＭＡＣ  １００ｃは、ＤＩＭＭ＃０  １００ｇおよびＤＩＭＭ＃１  １００ｈに対するアクセスを制御する。ＰＣＩｅ  ＲＣ  １００ｉは、ＰＣＩ  Ｅｘｐｒｅｓｓ用のライザーカードであり、Ｉ／Ｏ  １００ｊに接続されている。
【０１０３】
ＳＣＦ  Ｉ／Ｆ  １００ｋは、システムボード１００とＳＣＦ  ２００とを接続するためのインターフェイスである。ＳＣＦ  Ｉ／Ｆ  １００ｋは、不揮発性メモリ（FMEM）１００ｍおよびＳＲＡＭ（Static Random Access Memory）１００ｐを有する。不揮発性メ
モリ１００ｍには、ＰＯＳＴ（Power On Self Test）プログラム１００ｎが格納されている。ＰＯＳＴプログラム１００ｎは、システムボード１００内の各ハードウェアの初期設定および異常検出のための診断などを実行するためのプログラムである。ＳＲＡＭ  １００ｐは、データ取得判定レジスタ１００ｑを有する。データ取得判定レジスタは、上記の実施形態におけるデータ取得判定レジスタ２０ｅに対応する。
【０１０４】
本実施形態では、サーバーシステム３の電源がオンにされると、システム監視機構２００によってシステムボード１００の電源がオンにされ、ＣＰＵ１００ｂが動作を開始する。ＣＰＵ１００ｂは、ＳＣＦ  Ｉ／Ｆ１００ｋの不揮発性メモリ１００ｍに格納されているＰＯＳＴプログラム１００ｎを実行する。
【０１０５】
ＰＯＳＴプログラム１００ｎの実行開始段階では、まだＭＡＣ  １００ｃ、ＤＩＭＭ＃０  １００ｇ、ＤＩＭＭ＃１  １００ｈの初期設定は行われていない。このため、ＤＩＭＭ＃０  １００ｇ、ＤＩＭＭ＃１  １００ｈのメモリ領域は使用できない。このため、ＳＲＡＭ  １００ｐがＰＯＳＴプログラム１００ｎのワークエリアとして使用される。本実施形態では、一例として、ＰＯＳＴプログラム１００ｎにおけるＤＩＭＭ＃０  １００ｇ、ＤＩＭＭ＃１  １００ｈの初期設定の際に、ＣＰＵ１００ｂが、図３に示すフローチャートの処理を開始する。なお、以下の説明では、上記の実施形態と同様の処理については説明を省略する。また、本実施形態では、ＤＩＭＭ＃０  １００ｇに対するデータの書き込みおよび読み取りにおけるＤＱＳ信号およびＤＱ信号の位相が調整される。
【０１０６】
ＯＰ１０１において、ＭＡＣ  １００ｃは開始フラグ１００ｅがオンに設定されているか否かを判定する。ＭＡＣ  １００ｃは開始フラグ１００ｅがオンに設定されていると判定すると、ＤＱＳ信号およびＤＱ信号の位相調整の処理を開始する。そして、ＭＡＣ  １００ｃは処理をＯＰ１０２に進める。ＯＰ１０２では、ＭＡＣ  １００ｃは、ＰＲＢＳ生成部１００ｄを制御してＰＲＢＳのランダムパターンの信号を生成する。そして、ＯＰ１０３において、ＭＡＣ  １００ｃは、生成されたＰＢＢＳのランダムパターンを書き込むためのＷＲＩＴＥコマンドをＤＩＭＭ＃０  １００ｇに送信する。
【０１０７】
ＭＡＣ  １００ｃは、ＯＰ１０４およびＯＰ１０６の処理からＯＰ１０７に進むと、ＤＩＭＭ＃０  １００ｇにＲＥＡＤコマンドを送信する。これにより、ＭＡＣ  １００ｃは、ＯＰ１０３においてＤＩＭＭ＃０  １００ｇに書き込まれたＰＲＢＳの各ランダムパターンの読み取りを実行する。ＯＰ１０８では、ＭＡＣ  １００ｃは、ＤＩＭＭ＃０  １００ｇから読み取った各ランダムパターンに対して上記の実施形態と同様にデータ取得判定を実行する。そして、ＯＰ１０９において、ＭＡＣ  １００ｃは、データ取得判定結果をＳＲＡＭ１００ｐのデータ取得判定レジスタ１００ｑに格納する。
【０１０８】
ＣＰＵ１００ｂは、ＯＰ１１０の処理からＯＰ１１１に進むと、データ取得判定レジスタ１００ｑに格納されているデータ取得判定結果に基づいて図７、８に示すＯＰ２０１〜ＯＰ２１７の処理を実行する。本実施形態においても、データ取得判定レジスタ１００ｑに格納されているデータ取得判定結果は図６と同様である。上記の実施形態と同様に、本実施形態においてもＣＰＵ１００ｂは、ＤＱ０〜ＤＱ３の各ＤＱ信号に対する最適Ｖｒｅｆを決定することができる。
【０１０９】
ＯＰ１１１の処理を終了すると、ＣＰＵ１００ｂは処理をＯＰ１１２に進める。ＯＰ１１２において、ＣＰＵ１００ｂは、データ取得判定レジスタ１００ｑに格納されているデータ取得判定結果に基づいて図９に示すＯＰ３０１〜ＯＰ３０７の処理を実行する。ＯＰ３０１において、ＣＰＵ１００ｂは、データ取得判定レジスタ１００ｑに格納されているデータ取得判定結果を用いて各ＤＱ信号の最適Ｖｒｅｆにおけるデータ取得判定結果を抽出する。抽出されるデータ取得判定結果は、図１０Ａに示すデータ取得判定結果と同様である。したがって、本実施形態においても、ＣＰＵ１００ｂは、ＯＰ３０２〜ＯＰ３０７の処理を実行して、図１０Ｂ〜図１０Ｄに示すようにＤＱＳ信号およびＤＱ信号の位相を調整する。
【０１１０】
本実施形態では、サーバーシステム３におけるＰＯＳＴプログラム実行時に、ＤＱＳ信号およびＤＱ信号の位相が調整される。そして、サーバーシステム３では、ＰＯＳＴプログラム実行後にＯＳが起動され、サーバーシステム３における種々の処理が開始される。情報処理ステム３が実行する処理においては、上記の通りＤＱＳ信号およびＤＱ信号の位相が調整された状態でＤＩＭＭ＃０  １００ｇに対するデータの書き込みおよび読み出しが実行される。
【０１１１】
サーバーシステム３においては、ＣＰＵ１００ｂ、ＤＩＭＭ＃０  １００ｇ、システムボード上の伝送線路などの特性のばらつきや経時的な特性変化が生じる可能性がある。本実施形態においては、メモリに対する書き込みおよび読み取りテストの結果に基づいてＤＱＳ信号およびＤＱ信号の位相調整を行うことができる。この結果、当該特性のばらつきや経時的な特性変化が生じた場合でも最適なＤＱＳ信号のストローブポイントを決定することができる。
【０１１２】
以上が本実施形態に関する説明であるが、上記の情報処理装置１、サーバーシステム３などの構成や処理は、上記の実施形態に限定されるものではなく、本発明の技術的思想と同一性を失わない範囲内において種々の変更が可能である。例えば、上記の実施形態では、図４のＯＰ１０２〜ＯＰ１０５の処理において、メモリに対してＰＲＢＳのランダムパターンを用いた読み取りテストが実行される。ただし、メモリに対してＰＲＢＳのランダムパターンを用いた書き込みテストが実行されるようにしてもよい。具体的には、ＰＲＢＳのランダムパターンのメモリへの書き込み時に、ＯＰ１０５の処理を省略してインターバルを設けない処理とする。
【０１１３】
また、上記のサーバーシステム３では、ＤＩＭＭ＃０  １００ｇに対するデータ取得判定結果に基づいてＤＱＳ信号およびＤＱ信号の位相が調整される。ただし、ＤＩＭＭ＃１
１００ｈに対するデータ取得判定結果に基づいてＤＱＳ信号およびＤＱ信号の位相が調整されてもよい。また、ＤＩＭＭ＃０  １００ｇおよびＤＩＭＭ＃１  １００ｈの双方に対するデータ取得判定結果に基づいて、第２の実施形態と同様にＤＱＳ信号およびＤＱ信号の位相が調整される構成としてもよい。
【０１１４】
また、上記の説明では、ディレイタップ設定部は、ＤＱＳ信号およびＤＱ信号の位相が遅れる側にディレイタップを設定できることを想定している。しかし、ディレイタップ設定部にディレイタップのオフセットが事前に設定されることで、ディレイタップ設定部がＤＱＳ信号およびＤＱ信号の位相が進む側にもディレイタップを設定できる場合も想定される。この場合は、上記の処理においてＯＰ３０４、ＯＰ３０５の処理を削除してＯＰ３０３からＯＰ３０６の処理に進むようにフローチャートを変更すればよい。これによって、ＤＱＳ信号およびＤＱ信号の位相が上記と同様に調整される。
【０１１５】
また、別の実施形態として、図１５に示すように、管理サーバー３００が複数のサーバーシステム３を管理する情報処理システム４を用いることもできる。サーバーシステム３は図１４に示す第３の実施形態におけるサーバーシステム３であるため、詳細な説明は省略する。なお、サーバーシステム３が、データ信号とストローブ信号との位相関係を調整する調整装置の一例に相当する。また、管理サーバー３００が、調整装置を管理する管理装置の一例に相当する。情報処理システム４では、管理サーバー３００のＣＰＵ３００ａが、サーバーシステム３のＳＣＦ２００を制御する。ＳＣＦ２００はＣＰＵ３００ａの制御に基づいてシステムボード１００の電源をオンにし、第３の実施形態において説明した処理を実行する。これによって、情報処理システム４内の各サーバーシステム３において、ＤＱＳ信号とＤＱ信号の位相が調整される。
【０１１６】
＜コンピュータが読み取り可能な記録媒体＞
コンピュータその他の機械、装置（以下、コンピュータ等）に上記情報処理装置の設定を行うための管理ツール、ＯＳその他を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。ここで、コンピュータは、例えば、情報処理装置、サーバーシステム、管理サーバーなどである。
【０１１７】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリ等のメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクやＲＯＭ等がある。
【０１１８】
以上の実施形態に関し、さらに以下の付記を開示する。
【０１１９】
（付記１）
データ信号とストローブ信号との位相関係を調整する情報処理装置であって、
前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定する特定部と、
前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定する決定部と、
決定された前記リファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する調整部と
を有することを特徴とする情報処理装置。
【０１２０】
（付記２）
前記決定部は、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値が複数存在する場合に、前記データ信号を有効に取得できる期間が最も長いと推定される各リファレンス値に隣接するリファレンス値における前記データ信号を有効に取得できる期間を比較し、前記比較により前記データ信号を有効に取得できる期間がより長いリファレンス値に隣接するリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する、付記１に記載の情報処理装置。
【０１２１】
（付記３）
前記データ信号は第１または第２のメモリに送信され、
前記決定部は、前記データ信号が前記第１のメモリに送信される場合の前記データ信号を有効に取得できる期間と、前記データ信号が前記第２のメモリに送信される場合の前記データ信号を有効に取得できる期間とのうちの短い期間を前記複数のリファレンス値の候補ごとに特定し、前記特定された期間が最も長いリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する
付記１または２に記載の情報処理装置。
【０１２２】
（付記４）
前記調整部は、前記ストローブ信号に対して前記データ信号の位相を進ませる調整を行う場合は、前記ストローブ信号の位相を所定の位相の目標値に合わせて遅らせてから前記データ信号の位相を前記目標値を用いて遅らせ、前記データ信号の位相を遅らせる調整を行う場合は、前記ストローブ信号の位相を移動せずに前記データ信号の位相を遅らせる、付記１から３のいずれかに記載の情報処理装置。
【０１２３】
（付記５）
前記データ信号は、異なる伝送路で送信される複数のデータ信号を含み、
前記調整部は、前記異なる伝送路のうち第１の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ
信号の位相と、前記異なる伝送路のうち第２の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、を一致させ、前記第１の伝送路により送信されるデータ信号の位相と前記第２の伝送路により送信されるデータ信号の位相を、前記一致させた前記ストローブ信号の位相に基づいて変更する
付記１から４のいずれかに記載の情報処理装置。
【０１２４】
（付記６）
データ信号とストローブ信号との位相関係を調整する調整装置と、前記調整装置を管理する管理装置を有する情報処理システムであって、
前記調整装置は、
前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定する特定部と、
前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定する決定部と、
前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する調整部と
を有することを特徴とする情報処理システム。
【０１２５】
（付記７）
前記決定部は、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値が複数存在する場合に、前記データ信号を有効に取得できる期間が最も長いと推定される各リファレンス値に隣接するリファレンス値における前記データ信号を有効に取得できる各期間を比較し、前記比較により前記データ信号を有効に取得できる期間がより長いリファレンス値に隣接するリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する、付記６に記載の情報処理システム。
【０１２６】
（付記８）
前記データ信号は第１または第２のメモリに送信され、
前記決定部は、前記データ信号が前記第１のメモリに送信される場合の前記データ信号を有効に取得できる期間と、前記データ信号が前記第２のメモリに送信される場合の前記データ信号を有効に取得できる期間とのうちの短い期間を前記複数のリファレンス値の候補ごとに特定し、前記特定された期間が最も長いリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する
付記６または７に記載の情報処理システム。
【０１２７】
（付記９）
前記調整部は、前記ストローブ信号に対して前記データ信号の位相を進ませる調整を行う場合は、前記ストローブ信号の位相を所定の位相の目標値に合わせて遅らせてから前記データ信号の位相を前記目標値を用いて遅らせ、前記データ信号の位相を遅らせる調整を行う場合は、前記ストローブ信号の位相を移動せずに前記データ信号の位相を遅らせる
付記６から８のいずれかに記載の情報処理システム。
【０１２８】
（付記１０）
前記データ信号は、異なる伝送路で送信される複数のデータ信号を含み、
前記調整部は、前記異なる伝送路のうち第１の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ
信号の位相と、前記異なる伝送路のうち第２の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、を一致させ、前記第１の伝送路により送信されるデータ信号の位相と前記第２の伝送路により送信されるデータ信号の位相を、前記一致させた前記ストローブ信号の位相に基づいて変更する
付記６から９のいずれかに記載の情報処理システム。
【０１２９】
（付記１１）
データ信号とストローブ信号との位相関係を調整する情報処理装置の制御方法であって、
前記情報処理装置が有する特定部が、前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定し、
前記情報処理装置が有する決定部が、前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定し、
前記情報処理装置が有する調整部が、前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整する
情報処理装置の制御方法。
【０１３０】
（付記１２）
前記決定部は、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値が複数存在する場合に、前記データ信号を有効に取得できる期間が最も長いと推定される各リファレンス値に隣接するリファレンス値における前記データ信号を有効に取得できる各期間を比較し、前記比較により前記データ信号を有効に取得できる期間がより長いリファレンス値に隣接するリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する、付記１１に記載の情報処理装置の制御方法。
【０１３１】
（付記１３）
前記データ信号は第１または第２のメモリに送信され、
前記決定部は、前記データ信号が前記第１のメモリに送信される場合の前記データ信号を有効に取得できる期間と、前記データ信号が前記第２のメモリに送信される場合の前記データ信号を有効に取得できる期間とのうちの短い期間を前記複数のリファレンス値の候補ごとに特定し、前記特定された期間が最も長いリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定する
付記１１または１２に記載の情報処理装置の制御方法。
【０１３２】
（付記１４）
前記調整部は、前記ストローブ信号に対して前記データ信号の位相を進ませる調整を行う場合は、前記ストローブ信号の位相を所定の位相の目標値に合わせて遅らせてから前記データ信号の位相を前記目標値を用いて遅らせ、前記データ信号の位相を遅らせる調整を行う場合は、前記ストローブ信号の位相を移動せずに前記データ信号の位相を遅らせる、付記１１から１３のいずれかに記載の情報処理装置の制御方法。
【０１３３】
（付記１５）
前記データ信号は、異なる伝送路で送信される複数のデータ信号を含み、
前記調整部は、前記異なる伝送路のうち第１の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、前記異なる伝送路のうち第２の伝送路により送信されるデータ信号に対し
て前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、を一致させ、前記第１の伝送路により送信されるデータ信号の位相と前記第２の伝送路により送信されるデータ信号の位相を、前記一致させた前記ストローブ信号の位相に基づいて変更する
付記１１から１４のいずれかに記載の情報処理装置の制御方法。
【０１３４】
（付記１６）
データ信号とストローブ信号との位相関係を調整する情報処理装置の制御プログラムであって、
前記情報処理装置が有する特定部に、前記データ信号の値を判定するための複数のリファレンス値の候補ごとに、前記ストローブ信号に従って前記データ信号が有効に取得される、前記データ信号と前記ストローブ信号との１以上の位相差を特定させ、
前記情報処理装置が有する決定部に、前記複数のリファレンス値の候補ごとに特定された前記１以上の位相差に基づいて、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値を決定させ、
前記情報処理装置が有する調整部に、前記決定されたリファレンス値に対応する期間に基づいて、前記データ信号と前記ストローブ信号との前記位相関係を調整させる
情報処理装置の制御プログラム。
【０１３５】
（付記１７）
前記決定部に、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値が複数存在する場合に、前記データ信号を有効に取得できる期間が最も長いと推定される各リファレンス値に隣接するリファレンス値における前記データ信号を有効に取得できる各期間を比較させ、前記比較により前記データ信号を有効に取得できる期間がより長いリファレンス値に隣接するリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定させる、付記１６に記載の情報処理装置の制御プログラム。
【０１３６】
（付記１８）
前記データ信号は第１または第２のメモリに送信され、
前記決定部に、前記データ信号が前記第１のメモリに送信される場合の前記データ信号を有効に取得できる期間と、前記データ信号が前記第２のメモリに送信される場合の前記データ信号を有効に取得できる期間とのうちの短い期間を前記複数のリファレンス値の候補ごとに特定し、前記特定された期間が最も長いリファレンス値を、前記データ信号を有効に取得できる期間が最も長いと推定されるリファレンス値として決定させる
付記１６または１７に記載の情報処理装置の制御プログラム。
【０１３７】
（付記１９）
前記調整部に、前記ストローブ信号に対して前記データ信号の位相を進ませる調整を行う場合は、前記ストローブ信号の位相を所定の位相の目標値に合わせて遅らせてから前記データ信号の位相を前記目標値を用いて遅らせ、前記データ信号の位相を遅らせる調整を行う場合は、前記ストローブ信号の位相を移動せずに前記データ信号の位相を遅らせる、付記１６から１８のいずれかに記載の情報処理装置の制御プログラム。
【０１３８】
（付記２０）
前記データ信号は、異なる伝送路で送信される複数のデータ信号を含み、
前記調整部に、前記異なる伝送路のうち第１の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信号の位相と、前記異なる伝送路のうち第２の伝送路により送信されるデータ信号に対して前記決定されたリファレンス値に対応する期間に基づいて決定される前記ストローブ信
号の位相と、を一致させ、前記第１の伝送路により送信されるデータ信号の位相と前記第２の伝送路により送信されるデータ信号の位相を、前記一致させた前記ストローブ信号の位相に基づいて変更させる
付記１６から１９のいずれかに記載の情報処理装置の制御プログラム。
【符号の説明】
【０１３９】
１    情報処理装置
３    サーバーシステム
４    情報処理システム
１０、１００ｂ、３００ａ    ＣＰＵ
２０ｂ、１００ｄ    ＰＲＢＳ生成部
２０ｃ、１００ｆ    データ取得判定部
２０ｅ、１００ｑ    データ取得判定レジスタ
３０ｂ、３０ｃ、３０ｈ、３０ｉ    ディレイタップ設定部
４０、５０    伝送路
６０、７０、８０    メモリモジュール
１００    システムボード
１００ｇ、１００ｈ    ＤＩＭＭ
３００    管理サーバー
【図１】
0006387883.tif 000002
【図２】
0006387883.tif 000003
【図３】
0006387883.tif 000004
【図４】
0006387883.tif 000005
【図５】
0006387883.tif 000006
【図６】
0006387883.tif 000007
【図７】
0006387883.tif 000008
【図８】
0006387883.tif 000009
【図９】
0006387883.tif 000010
【図１０Ａ】
0006387883.tif 000011
【図１０Ｂ】
0006387883.tif 000012
【図１０Ｃ】
0006387883.tif 000013
【図１０Ｄ】
0006387883.tif 000014
【図１０Ｅ】
0006387883.tif 000015
【図１０Ｆ】
0006387883.tif 000016
【図１１】
0006387883.tif 000017
【図１２】
0006387883.tif 000018
【図１３】
0006387883.tif 000019
【図１４】
0006387883.tif 000020
【図１５】
0006387883.tif 000021