メモリチップを有する複数の半導体装置と、前記複数の半導体装置のうち、いずれかの半導体装置に、予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュム-データを取得するメモリコントローラと、前記メモリコントローラにより取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する演算部と、を備え、前記メモリコントローラは、前記演算部が算出した前記最適ポイントを示す情報に基づき前記調整される信号のタイミング及び前記参照電圧を前記複数の半導体装置のそれぞれに対して調整すること特徴とするシステム。前記メモリコントローラは、前記システムが起動され、BIOSBasicInput/OutputSystemによる第1の組み合わせ数のアクセスパターンとデータパターン及び前記参照電圧のレベルの組み合わせを用いて前記被調整信号のタイミングの調整後、前記第1の組み合わせ数より多い第2の組み合わせ数のアクセスパターンとデータパターン及び前記参照電圧のレベルの組み合わせを段階的に変更させてシュム-データを取得することを特徴とする請求項1に記載のシステム。前記メモリコントローラは、前記システムが起動され、BIOSBasicInput/OutputSystemによる第1の組み合わせ数のアクセスパターンとデータパターン及び前記参照電圧のレベルの組み合わせを用いて前記被調整信号のタイミングの調整後、前記被調整信号が制御される実動作と並行して、前記調整を行うことを特徴とする請求項1または請求項2に記載のシステム。前記メモリコントローラは、記憶部を備え、前記取得したシュム-データを前記記憶部に記憶させ、前記記憶部に記憶させたシュム-データを前記演算部に出力することを特徴とする請求項1から請求項3のいずれか1項に記載のシステム。前記被調整信号のタイミングは、同期クロックに対する各入出力信号のタイミング、前記同期クロックに対するデータストローブ信号のタイミング、または、前記同期クロックに対するコマンド信号とアドレス信号のタイミングであることを特徴とする請求項1から請求項4のいずれか1項に記載のシステム。前記参照電圧は、前記入出力信号の参照電圧と、前記コマンド信号と前記アドレス信号との参照電圧であることを特徴とする請求項5に記載のシステム。前記複数の半導体装置は、少なくとも1つがシュム-データ取得専用であり、前記メモリコントローラは、前記シュム-データ取得専用の半導体装置に、前記被調整信号のタイミングと前記参照電圧を段階的に変更させてシュム-データを取得し、前記取得したシュム-データを前記演算部に出力することを特徴とする請求項1から請求項6のいずれか1項に記載のシステム。前記複数の半導体装置は、各々、第1半導体装置と第2半導体装置とでミラー構成され、前記メモリコントローラは、前記複数の半導体装置の各第1半導体装置に、前記被調整信号のタイミングと前記参照電圧を段階的に変更させてシュム-データを取得し、前記取得したシュム-データを前記演算部に出力することを特徴とする請求項1から請求項7のいずれか1項に記載のシステム。メモリチップを有する複数の半導体装置のうち、いずれかの半導体装置に、予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュム-データを取得するメモリコントローラと、前記メモリコントローラにより取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する演算部と、を備え、前記メモリコントローラは、前記演算部が算出した前記最適ポイントを示す情報に基づき前記調整される信号のタイミング及び前記参照電圧を前記複数の半導体装置のそれぞれに対して調整すること特徴とするシステムにおける調整装置。メモリチップを有する複数の半導体装置と、前記複数の半導体装置を制御するメモリコントローラと、前記メモリコントローラを制御する演算部と、を有するシステムの制御方法であって、前記メモリコントローラが、前記複数の半導体装置のうち、いずれかの半導体装置を選択する選択工程と、前記選択工程で選択された半導体装置に予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュムーデータを取得する変更工程と、前記演算部が、前記変更工程より取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する算出工程と、前記メモリコントローラが、前記算出工程で算出された前記被調整信号タイミングと前記参照電圧との関係の最適ポイントを示す情報に基づき前記複数の半導体装置に対する前記被調整信号のタイミング及び前記参照電圧を調整する工程と、を含むことを特徴としているシステムの制御方法。しかしながら、特許文献1に記載の発明では、起動時における短い時間内でタイミング調整を行う必要があるため、限られた種類のタイミング調整用のデータパターンを用いたタイミング調整を行う必要がある。このため、例えば、データのやりとりを行う実動作のアクセスタイミングと、限られたタイミング調整用のデータパターンにおけるアクセスタイミングとが異なっている場合、同期クロックに対するDQ信号とDQS信号のタイミング調整が最適化されないことがある。また、タイミング調整のデータパターンが、ワーストパターンになっていなかった場合、同期クロックに対するDQ信号とDQS信号のタイミング調整が最適化されないことがある。上記目的を達成するため、本発明のシステムは、メモリチップを有する複数の半導体装置と、前記複数の半導体装置のうち、いずれかの半導体装置に、予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュム-データを取得するメモリコントローラと、前記メモリコントローラにより取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する演算部と、を備え、前記メモリコントローラは、前記演算部が算出した前記最適ポイントを示す情報に基づき前記調整される信号のタイミング及び前記参照電圧を前記複数の半導体装置のそれぞれに対して調整すること特徴としている。上記目的を達成するため、本発明のシステムにおける調整装置は、メモリチップを有する複数の半導体装置のうち、いずれかの半導体装置に、予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュム-データを取得するメモリコントローラと、前記メモリコントローラにより取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する演算部と、を備え、前記メモリコントローラは、前記演算部が算出した前記最適ポイントを示す情報に基づき前記調整される信号のタイミング及び前記参照電圧を前記複数の半導体装置のそれぞれに対して調整すること特徴としている。上記目的を達成するため、本発明は、メモリチップを有する複数の半導体装置と、前記複数の半導体装置を制御するメモリコントローラと、前記メモリコントローラを制御する演算部と、を有するシステムの制御方法であって、前記メモリコントローラが、前記複数の半導体装置のうち、いずれかの半導体装置を選択する選択工程と、前記選択工程で選択された半導体装置に予め調整対象とされている被調整信号のタイミングと、前記被調整信号のハイレベルとローレベルとを判別するための参照電圧と、を段階的に変更させてシュムーデータを取得する変更工程と、前記演算部が、前記変更工程より取得されたシュム-データに基づき前記被調整信号のタイミングと前記参照電圧との関係の最適ポイントを算出する算出工程と、前記メモリコントローラが、前記算出工程で算出された前記被調整信号タイミングと前記参照電圧との関係の最適ポイントを示す情報に基づき前記複数の半導体装置に対する前記被調整信号のタイミング及び前記参照電圧を調整する工程と、を含むことを特徴としている。本発明によれば、複数の半導体装置の中のいずれかの半導体装置に対して、データのやりとりを行う実動作中にメモリコントローラが、調整する調整信号各入出力信号、アドレスコントロール信号のタイミングと、調整信号のハイレベルとローレベルとを判別するための参照電圧とを起動時のBIOSに予め設定されているタイミング調整より多くの個数で段階的に変更して、各種のタイミング再調整テストを行ってシュムーデータを取得する。そして、演算部は、取得されたシュムーデータを用いて、被調整信号のタイミングと参照電圧の最適ポイントを算出する。そして、メモリコントローラは、演算部が算出した最適ポイントに基づき、実動作中に複数の半導体装置に対してBIOSの設定でタイミング調整された設定値の再調整を行う。この結果、実動作の被調整信号のタイミングに合わせ、半導体装置に対する被調整信号のタイミングと参照電圧とを再調整することができる。本発明の課題を解決する技術思想の代表的な一例は、以下に示される。但し、本発明の請求内容はこの技術思想に限られず、本発明の請求項に記載の内容であることは言うまでもない。図1は、この発明の技術思想を示す原理図である。図1に示すように、システム1は、調整装置40、複数の半導体装置30から構成されている。また、調整装置40は、演算部12、メモリコントローラ20から構成されている。システム1は、例えば、PCパーソナルコンピュータである。半導体装置30は、例えば、半導体装置32、34、36、及び38である。そして、半導体装置32、32、34、及び36は、例えば、DIMMDualInlineMemoryModuleであり、各々メモリチップ31を備えている。演算部12は、例えば、システム1がPCの場合、CPUCentralProcessingUnit;中央演算装置である。メモリコントローラ20は、半導体装置30に対して、システム1の起動時、予め定められている第1の個数のテストパターンでタイミング調整を行う。そして、メモリコントローラ20は、起動時のタイミング調整後、半導体装置30に対して、データのやりとりを行う実動作中に、起動時のタイミング調整で用いた第1の個数より多くのテストパターンを用いてタイミング再調整テストを行ってシュムーデータを取得する。なお、タイミング再調整テストとは、起動時に用いた第1の個数より多くのテストパターン用いて、同期クロックに対する調整する調整信号のタイミングを変更し、調整信号に対する参照電圧のレベルを変更して行うテストである。なお、テストパターンとは、データの組み合わせパターン例えば、0100、0010などであるデータパターン、及び、同期クロックに対する調整される信号の立ち上がり又は立ち下がりのタイミングのパターンであるアクセスパターンである。また、調整信号とは、各入出力信号、及びアドレスコントロール信号である。また、参照電圧とは、各入出力信号及びアドレスコントロール信号のハイレベルとローレベルを判別する電圧である。また、メモリコントローラ20は、取得したシュムーデータを記憶部に記憶している。演算部12は、タイミング再調整テストによりメモリコントローラ20が取得したシュムーデータに基づき、統計的手法を用いて、参照電圧と各入出力信号との最適ポイント、または、参照電圧とアドレスコントロール信号との最適ポイントを算出し、算出した最適ポイントをメモリコントローラ20に出力する。そして、メモリコントローラ20は、起動後の実動作時において、演算部12により算出された最適ポイントに基づき、半導体装置30に対して、タイミング再調整を行う。なお、タイミング再調整とは、同期クロックに対する調整信号のタイミングと参照電圧との最適ポイントと、同期クロックに対するアドレスコントロール信号のタイミングと参照電圧の最適ポイントとを調整することである。以上のように、半導体装置30のタイミング調整を最適に行うことを技術思想とする。[第1実施形態]以下、添付図面を参照しながら、本発明の好ましい実施の形態について詳細に説明する。図2は、本実施形態に係るシステム1の構成の一例を説明する図である。図2に示すように、システム1は、CPUCentralProcessingUnit;中央演算装置100、BIOSBasicInput/OutputSystem120、OSOperatingSystem140、HDDHardDiskDrive160、メモリコントローラ200、DIMMDualInlineMemoryModule301、DIMM302、DIMM303、DIMM304、及びテスト用DIMM305を備えている。BIOS120は、システム1に関する基本的な処理手順等を記憶する一種のファームウェアであり、フラッシュメモリなどの不揮発性メモリによって構成される。BIOS120は、CPU100の動作を制御するプログラムとして、例えば、不揮発性メモリ記憶されている。CPU100は、BIOS120またはOS140に基づき、メモリコントローラ200の動作を制御する。また、CPU100は、BIOS120に基づき、起動時にOS140がHDD160から読み込む前に、DIMM301~304、及びテスト用DIMM305の同期クロックに対する各信号のタイミングをメモリコントローラ200に設定させる。また、CPU100は、OS120が読み込まれる前に、DIMM301~304、及びテスト用DIMM305に対して、BIOS120に記憶されている第1の個数のテストパターンを用いて、予め定められた時間内でメモリトレーニングやレベリングによるメモリタイミング調整をメモリコントローラ200に行わせる。また、CPU100は、OS140がメインメモリに読み込まれた後、OS140に基づいて、後述するタイミング再調整テストを行う指示をメモリコントローラ200に出力する。また、CPU100は、メモリコントローラ200の後述するテスト結果記憶部に記憶されているシュムーデータshmoodataを取得し、取得したシュムーデータを統計処理する。またCPU100は、統計処理した結果に基づき、同期クロックに対する各調整信号のタイミングと参照電圧Vrefの最適ポイントを算出し、算出した最適ポイントをメモリコントローラ200に出力する。なお、シュムープロットとは、取得したシュムーデータを電気的特性に相関のある2つのパラメータをX軸とY軸にプロットしたものである。シュムーデータとは、シュムープロットに基づいて、X軸とY軸とのデータにおけるPassとFailに対応して記憶されているデータテーブルである。また、調整信号とは、各入出力信号、及びアドレスコントロール信号である。また、参照電圧とは、調整信号のハイレベルとローレベルを判別する電圧である。OS140は、オペレーティングシステム、システム1の動作制御、タイミング再調整処理などのアプリケーション、タイミング再調整のためのアクセスパターンとデータパターン等を含むものであり、システム1の起動前はHDD160に記憶されている。HDDHardDiskDrive160は、OS140のデータが予め記憶されている。OS140は、システム1の起動時にCPU100により読み出され、メインメモリであるDIMM301~304に書き込まれる。なお、HDD160は、ハードディスクに限られず、SSDSolidStateDriveやROMReadOnlyMemoryであってもよい。メモリコントローラ200は、OS140に基づき、CPU100が入出力するデータを、DIMM301~304に対して書き込み及び読み出しの制御を行う。また、メモリコントローラ200は、BIOS120に基づき、DIMM301~304、及びテスト用DIMM305に対して起動時に予め定められた時間内で第1の個数のテストパターンでタイミング調整を行う。起動時に行われるタイミング調整とは、メモリトレーニングやレベリングによるDIMM301~304、及びテスト用DIMM305のDQデータ信号、DQSデータストローブ;DataStrobe信号のタイミング調整である。また、メモリコントローラ200は、OS140に記憶されているタイミング再調整のアプリケーションに基づき、テスト用DIMM305に対して、実動作時に第2の個数のテストパターンでタイミング再調整テストを行ってシュムーデータを取得する。なお、タイミング再調整テストとは、起動時にBIOS120に設定されている第1の個数より多数の第2の個数のテストパターン用いて、同期クロックに対する調整する調整信号のタイミングを変更し、調整信号の参照電圧のレベルを変更して行うテストである。なお、テストパターンとは、データの組み合わせパターン例えば、0100、0010などであるデータパターン、及び、同期クロックに対する調整される信号の立ち上がり又は立ち下がりのタイミングのパターンであるアクセスパターンである。また、調整信号とは、各入出力信号、及びアドレスコントロール信号である。また、参照電圧とは、各入出力信号及びアドレスコントロール信号のハイレベルとローレベルを判別する電圧である。なお、タイミング再調整テストとは、例えば、同期クロックに対する所定のデータパターン例えば0100の調整信号の立ち上がりのタイミングと、参照電圧のレベルを変化させて、取得したデータと、予め設定されているテストパターンに対するデータの期待値とを比較する。そして比較結果が一致すればテスト結果をPassパスと判定し、一致しなければ、テスト結果をFailと判定する。また、メモリコントローラ200は、CPU100が算出した最適ポイントに基づき、実動作時にDIMM301~304に対して同期クロックに対する調整信号のタイミングと参照電圧のレベルを再調整する。DIMMDualInlineMemoryModule301~304は、複数のSDRAMSynchronousDynamicRandomAccessMemoryまたはDRAMDynamicRandomAccessMemoryのチップが、プリント基板上に搭載されているメモリモジュールである。テスト用DIMM305は、DIMM301~304と同様に、複数のSDRAMまたはDRAMのチップが、プリント基板上に搭載されているメモリモジュールである。また、テスト用DIMM305は、後述するように、メモリコントローラ200が行うタイミング再調整テストに用いられる。なお、本実施形態では、DIMM301~304と、テスト用DIMM305とは、同期クロックに対する各信号のタイミング、参照電圧などが同様のスペックを有している。例えば、各DIMMに使用されているSDRAMが同一製造メーカ製且つ同一ロットのものである。以下に、本実施形態を行う理由の概要を説明する。図3は、DQS信号、DQ信号、参照電圧VrefDQ、及びDQ-DQSスキューを説明する図である。図3において、符号g1は、DQS信号であり、符号g2は、/DQS信号である。また、符号g11とg12は、DQS信号g1と/DQS信号g2とのクロスポイントである。また、符号g21は、DQ信号g3と参照電圧VrefDQとのクロスポイントである。なお、/DQS信号は、DQS信号の反転信号である。以下、本実施形態では、反転信号を記号/で表す。また、図3において、横軸は時間を表し、縦軸は信号のレベルを表す。DIMM301~305が、例えばDDR2SDRAMDouble-DataーRate2SynchronousDynamicRandomAccessMemory規格のメモリモジュールの場合、図3に示すようにDDR2SRAMのメモリチップは、DQS信号と/DQS信号とのクロスポイントを、入出力データの同期クロックとして使用している。メモリコントローラ200は、この同期クロックに同期してDQ信号からデータを読み取っている。DQS信号と/DQS信号のドライブ能力が異なる場合、DQS信号と/DQS信号とのクロスポイントは、それぞれの中間レベルからずれる場合がある。この場合、図3に示すようにDQS信号と/DQS信号とのクロスポイントと、DQ信号と参照電圧VrefDQのクロスポイントとの間に、遅延時間DQ-DQSスキューΔt1=t2-t1、Δt2=t4-t3が生じる。このように、DQ-DQSスキューが生じている場合、データ入出力時のデータの有効データ時間が減少してしまう。なお、/DQS信号は、DQS信号の反転信号を表している。また、参照電圧VrefDQとは、DQ信号がハイレベルかローレベルかを判定する電圧である。このため、後述するように、メモリコントローラ200は、タイミング再調整処理を行い、CPU100がタイミング再調整処理で得られたシュムーデータを統計処理してDQ-DQSスキューが少なくなる最適ポイントを算出する。そして、メモリコントローラ200は、算出された最適ポイントを用いて、各信号のタイミングを再調整することで、起動時のBIOS120に設定されているタイミング調整を行った場合よりもタイミングを最適に調整できるため、DIMM301~304を精度良く高速に動作させることができる。図4は、本実施形態に係るCPU100とメモリコントローラ200の構成の一例を説明する図である。図4に示すように、CPU100は、テスト結果統計処理部104を備えている。また、CPU100は、HDD160からOS140を読み込み後、読み込んだOS140に含まれているOS上のアプリケーションソフト101からタイミング再調整テストのアプリケーション、及びタイミング再調整のアプリケーションを読み出す。また、CPU100は、読み込んだOSに含まれているアクセスパターンライブラリ102からアクセスパターンを読み出す。また、CPU100は、読み込んだOSに含まれているデータパターンライブラリ103からデータパターンを読み出す。CPU100は、読み出したタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン及びデータパターンをメモリコントローラ200に出力する。また、CPU100のテスト結果統計処理部104は、メモリコントローラ200に記憶されているテスト結果に基づき、タイミング再調整テストで取得されたシュムーデータの最適ポイントを算出し、算出した最適ポイントをメモリコントローラ200に出力する。メモリコントローラ200は、テストプログラム制御部202、テスト条件設定部204、プログラム実行部206、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224、CLK調整部231及び232、コマンド調整部241及び242、アドレス調整部251及び252、DQS調整部261及び262、DQ調整部271及び272、CLK出力部236、CLK入力部237、コマンド出力部246、コマンド入力部247、アドレス出力部256、アドレス入力部257、DQS出力部266、DQS入力部267、DQ出力部276、DQ入力部277、テスト結果記憶部280、及びテスト開始トリガ部290を備えている。なお、メモリコントローラ200は、例えばPCなどに用いられているシステムのメモリコントローラと同様に、非図示のクロックCLK分周部、アドレス生成部、初期化部等を備えている。テストプログラム制御部202には、CPU100が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン、データパターンが入力される。また、テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションに基づき、タイミング再調整テストのアプリケーション、アクセスパターン、データパターンをプログラム実行部206に出力する。テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションに基づき、メモリ入力制御部214が出力するシュムーデータを取得し、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テストプログラム制御部202は、テスト開始トリガ部290が出力するトリガ信号に応じて、テスト用DIMM305に対して、順次、タイミング再調整テストを行う指示をプログラム実行部206に出力する。また、テストプログラム制御部202は、タイミング再調整テストが終了した場合、タイミング再調整が終了したことを示す情報をCPU100に出力する。また、テストプログラム制御部202は、入力されたタイミング再調整のアプリケーションに基づき、CPU100から入力された最適ポイントを示す情報、タイミング再調整のアプリケーションをプログラム実行部206に出力する。テスト条件設定部204は、各信号のタイミングをそのように可変するか、参照電圧VrefDQ、VrefCAレベルをどのように可変するか等のタイミング再調整テストの各種条件が予め設定されて記憶されている。テスト条件設定部204は、タイミング再調整テストの各種条件を、プログラム実行部206に出力する。プログラム実行部206には、テスト条件設定部204が出力するタイミング再調整テストの各種条件と、テストプログラム制御部202が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、データパターン及びアクセスパターンが入力される。プログラム実行部206は、入力されたタイミング再調整のアプリケーションに基づき、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224をデータパターン及びアクセスパターンを用いて制御し、テスト用DIMM305に対してタイミング再調整テストを行う。また、プログラム実行部206は、テストプログラム制御部202が出力するタイミング再調整のアプリケーションに基づき、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224を制御し、順次、選択されたDIMM301~304のいずれかのDIMMに対して、タイミング再調整を行う。メモリ出力制御部212には、同期クロックCLKが入力されている。メモリ出力制御部212は、プログラム実行部206が出力する出力指示に応じて、入力された信号コマンド、アドレス、DQS、DQ及びタイミング調整指示を、CLK調整部231、コマンド調整部241、アドレス調整部251、DQS調整部261、及びDQ調整部271に出力する。また、メモリ出力制御部212は、プログラム実行部206が出力する出力指示に応じて、タイミング再調整テストの場合、テスト用DIMM305のみにテスト用データを出力するように制御する。また、メモリ出力制御部212は、プログラム実行部206が出力する出力指示に応じて、タイミング再調整の場合、DIMM301~304の中から選択されたDIMMのみにタイミング再調整のアクセスするように制御し、選択されたDIMMに実動作のデータをアクセスさせないように制御する。また、メモリ出力制御部212は、プログラム実行部206が出力する出力指示に応じて、選択されていないDIMMに対して実動作のデータをアクセスさせるように制御する。メモリ入力制御部214には、同期クロックCLKが入力されている。メモリ入力制御部214には、プログラム実行部206が出力する入力指示に応じて、CLK調整部231、コマンド調整部241、アドレス調整部251、DQS調整部261、及びDQ調整部271からの信号CLKクロック、コマンド、アドレス、DQS、DQを、テストプログラム制御部202に出力する。また、メモリ入力制御部214は、プログラム実行部206が出力する入力指示に応じて、タイミング再調整テストの場合、テスト用DIMM305のみからテスト用データが入力されるように制御する。また、メモリ入力制御部214は、プログラム実行部206が出力する入力指示に応じて、タイミング再調整の場合、DIMM301~304の中から選択されたDIMMのみにタイミング再調整のアクセスするように制御し、選択されたDIMMに実動作のデータをアクセスさせないように制御する。また、メモリ入力制御部214は、プログラム実行部206が出力する入力指示に応じて、選択されていないDIMMに対して実動作のデータをアクセスさせるように制御する。VrefDQ可変部222は、プログラム実行部206が出力するVrefDQ可変指示に応じて、参照電圧VrefDQレベルを可変して、可変した参照電圧VrefDQをDIMM301~305に供給する。VrefCA可変部224は、プログラム実行部206が出力するVrefCA可変指示に応じて、参照電圧VrefCAレベルを可変して、可変した参照電圧VrefCAをDIMM301~305に供給する。なお、参照電圧VrefCAとは、アドレス信号とコマンド信号がハイレベルかローレベルかを判定する電圧である。CLK調整部231は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、同期クロック、DQ―CLK、及びDQS-CLKの出力タイミングを調整可変また変更ともいうして、出力タイミングを調整した同期クロック、DQ―CLK、及びDQS-CLKをテスト用DIMM305に出力する。CLK調整部231は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整の場合、同期クロック、DQ―CLK、及びDQS-CLKの出力タイミングを調整して、調整した同期クロック、DQ―CLK、及びDQS-CLKをDIMM301~304に出力する。CLK調整部232は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、同期クロック、DQ―CLK、及びDQS-CLKの入力タイミングを調整して、テスト用DIMM305から同期クロック、DQ―CLK、及びDQS-CLKを受け取る。CLK調整部232は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整の場合、同期クロック、DQ―CLK、及びDQS-CLKの入力タイミングを調整して、DIMM301~304から同期クロック、DQ―CLK、及びDQS-CLKを受け取る。コマンド調整部241は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、コマンドCOM信号の出力タイミングを調整して、出力タイミングを調整したコマンド信号をテスト用DIMM305に出力する。コマンド調整部241は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整の場合、コマンド信号の出力タイミングを調整して、出力タイミングを調整したコマンド信号をDIMM301~304に出力する。コマンド調整部242は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、コマンド信号の入力タイミングを調整して、テスト用DIMM305からコマンド信号を受け取る。コマンド調整部242は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整の場合、コマンド信号の入力タイミングを調整して、DIMM301~304からコマンド信号を受け取る。アドレス調整部251は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、アドレスADD信号の出力タイミングを調整して、出力タイミングを調整したアドレス信号をテスト用DIMM305に出力する。アドレス調整部251は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整の場合、アドレス信号の出力タイミングを調整して、出力タイミングを調整したアドレス信号をDIMM301~304に出力する。アドレス調整部252は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、アドレス信号の入力タイミングを調整して、テスト用DIMM305からアドレス信号を受け取る。アドレス調整部252は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整の場合、アドレス信号の入力タイミングを調整して、DIMM301~304からアドレス信号を受け取る。DQS調整部261は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、DQS信号の出力タイミングを調整して、出力タイミングを調整したDQS信号をテスト用DIMM305に出力する。DQS調整部261は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整の場合、DQS信号の出力タイミングを調整して、出力タイミングを調整したDQS信号をDIMM301~304に出力する。DQS調整部262は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、DQS信号の入力タイミングを調整して、テスト用DIMM305からDQS信号を受け取る。DQS調整部262は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整の場合、DQS信号の入力タイミングを調整して、DIMM301~304からDQS信号を受け取る。DQ調整部271は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、DQ信号の出力タイミングを調整して、出力タイミングを調整したDQ信号をテスト用DIMM305に出力する。DQ調整部271は、メモリ出力制御部212が出力するタイミング調整指示に応じて、タイミング再調整の場合、DQ信号の出力タイミングを調整して、出力タイミングを調整したDQ信号をDIMM301~304に出力する。DQ調整部272は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整テストの場合、DQ信号の入力タイミングを調整して、テスト用DIMM305からDQ信号を受け取る。DQ調整部272は、メモリ入力制御部214が出力するタイミング調整指示に応じて、タイミング再調整の場合、DQ信号の入力タイミングを調整して、DIMM301~304からDQ信号を受け取る。CLK出力部236は、タイミング再調整テストの場合、CLK調整部231が出力する各クロック信号同期クロック、DQS-CLK、DQ-CLKをテスト用DIMM305に出力する。CLK出力部236は、タイミング再調整の場合、CLK調整部231が出力する各クロック信号同期クロック、DQS-CLK、DQ-CLKを選択されたDIMM301~304のいずれかに出力する。CLK入力部237は、タイミング再調整テストの場合、テスト用DIMM305が出力する各クロック信号同期クロック、DQS-CLK、DQ-CLKを、CLK調整部232に出力する。CLK入力部237は、タイミング再調整の場合、選択されたDIMM301~304のいずれかのDIMMが出力する各クロック信号同期クロック、DQS-CLK、DQ-CLKを、CLK調整部232に出力する。コマンド出力部246は、タイミング再調整テストの場合、コマンド調整部241が出力するコマンド信号を、テスト用DIMM305に出力する。コマンド出力部246は、タイミング再調整の場合、コマンド調整部241が出力するコマンド信号を、選択されたDIMM301~304のいずれかに出力する。コマンド入力部247は、タイミング再調整テストの場合、テスト用DIMM305が出力するコマンド信号をコマンド調整部242に出力する。コマンド入力部247は、タイミング再調整の場合、選択されたDIMM301~304のいずれかのDIMMが出力するコマンド信号をコマンド調整部242に出力する。アドレス出力部256は、タイミング再調整テストの場合、アドレス調整部251が出力するアドレス信号を、テスト用DIMM305に出力する。アドレス出力部256は、タイミング再調整の場合、アドレス調整部251が出力するアドレス信号を、選択されたDIMM301~304のいずれかに出力する。アドレス入力部257は、タイミング再調整テストの場合、テスト用DIMM305が出力するアドレス信号をアドレス調整部252に出力する。アドレス入力部257は、タイミング再調整の場合、選択されたDIMM301~304のいずれかのDIMMが出力するアドレス信号をアドレス調整部252に出力する。DQS出力部266は、タイミング再調整テストの場合、DQS調整部261が出力するDQS信号を、テスト用DIMM305に出力する。DQS出力部266は、タイミング再調整の場合、DQS調整部261が出力するDQS信号を、選択されたDIMM301~304のいずれかに出力する。DQS入力部267は、タイミング再調整テストの場合、テスト用DIMM305が出力するDQS信号をDQS調整部262に出力する。DQS入力部267は、タイミング再調整の場合、選択されたDIMM301~304のいずれかのDIMMが出力するDQS信号をDQS調整部262に出力する。DQ出力部276は、タイミング再調整テストの場合、DQ調整部271が出力するDQ信号を、テスト用DIMM305に出力する。DQ出力部276は、タイミング再調整の場合、DQ調整部271が出力するDQ信号を、選択されたDIMM301~304のいずれかに出力する。DQ入力部277は、タイミング再調整テストの場合、テスト用DIMM305が出力するDQ信号をDQ調整部272に出力する。DQ入力部277は、タイミング再調整の場合、選択されたDIMM301~304のいずれかのDIMMが出力するDQ信号をDQ調整部272に出力する。テスト結果記憶部280は、例えばレジスタである。テスト結果記憶部280には、動作時、テストプログラム制御部202が取得したシュムーデータが記憶されている。また、テスト結果記憶部280は、シュムーデータが書き込まれた場合、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に基づき、トリガ信号を生成し、生成したトリガ信号をテストプログラム制御部202に出力する。次に、本実施形態に係るタイミング調整処理について、図5を用いて説明する。図5は、本実施形態に係るタイミング再調整処理手順の一例のフローチャートである。なお、図5において、ステップS7~S21が、本実施形態のタイミング再調整テスト処理である。ステップS1まず、システム1の使用者は、システム1の電源を入れる。ステップS1終了後、ステップS2に進む。ステップS2次に、CPU100は、HDD160からOS140を読み込む前に、BIOS120に設定されているメモリタイミング設定値を読み出し、読み出したメモリタイミング設定値をメモリコントローラ200に出力する。メモリコントローラ200は、CPU100が出力するメモリタイミング設定値をレジスタに設定する。なお、レジスタは、テスト結果記憶部280が兼ねてもよい。ステップS2終了後、ステップS3に進む。ステップS2で行うメモリタイミング設定の一例について、図6~図11を用いて説明する。図6は、BIOSによるメモリタイミング設定における信号の流れの概略を説明する図である。図7は、書き込み時のBIOSによるメモリタイミング設定における同期クロックに対するアドレス信号とコマンド信号のタイミング設定の一例のタイミングチャートである。図8は、書き込み時のBIOSによるメモリタイミング設定における同期クロックに対するDQS信号のタイミング設定の一例のタイミングチャートである。図9は、書き込み時のBIOSによるメモリタイミング設定におけるDQS信号に対するDQ信号のタイミング設定の一例のタイミングチャートである。図10は、読み込み時のBIOSによるメモリタイミング設定における同期クロックに対するDQS信号のタイミング設定の一例のタイミングチャートである。図11は、読み込み時のBIOSによるメモリタイミング設定におけるDQS信号に対するDQ信号のタイミング設定の一例のタイミングチャートである。図6に示すように、メモリコントローラ200は、レジスタに設定されたタイミング値を用いて、DIMM301~304、及びテスト用DIMM305との信号のやりとりを行う。設定されるタイミング値は、例えば、図7~図11に示す各タイミング値である。図7に示すように、メモリコントローラ200に設定されるDIMM301~305に書き込み時の同期クロックCK、/CKに対するコマンド信号とアドレス信号の各タイミング値は、tlSL、tlHL、tlSH、tlHH、及びローレベルのピーク電圧VlL、ハイレベルのピーク電圧VlHである。タイミングtlSLは、コマンド信号のレベルがVref-0.175[V]の時刻t11から、同期クロックCKと/CKとのクロスポイントg101の時刻t12までの時間である。タイミングtlHLは、同期クロックCKと/CKとのクロスポイントg101の時刻t12から、コマンド信号のレベルがVref-0.100[V]の時刻t13までの時間である。タイミングtlSHは、コマンド信号のレベルが、Vref0.175[V]の時刻t14から、同期クロックCKと/CKとのクロスポイントg102の時刻t15までの時間である。タイミングtlHHは、コマンド信号のレベルが、同期クロックCKと/CKとのクロスポイントg102の時刻t15から、Vref0.100[V]の時刻t16までの時間である。図8に示すように、メモリコントローラ200に設定されるDIMM301~305に書き込み時の同期クロックCKに対するDQS信号の各タイミング値は、tDQSS、tDSS、tDQSL、tDSH、tDQSHである。タイミングtDQSSは、DQS信号がVrefの時刻t21g211から、同期クロックCKとVrefのクロスポイントg201の時刻t22までの時間である。タイミングtDQSLは、DQS信号がVrefの時刻t23g212から、DQS信号がVrefの時刻t24g213までの時間である。タイミングtDSSは、DQS信号がVrefの時刻t23g212から、同期クロックCKとVrefのクロスポイントg202の時刻t25までの時間である。タイミングtDQSHは、DQS信号がVrefの時刻t24g213から、DQS信号がVrefの時刻t26g214までの時間である。タイミングtDSHは、同期クロックCKとVrefのクロスポイントg202の時刻t25から、DQS信号がVrefの時刻t26g214までの時間である。図9に示すように、メモリコントローラ200に設定されるDIMM301~305に書き込み時のDQSに対するDQ信号の各タイミング値は、tDS、tDH、及びローレベルのピーク電圧VlLDQ、ハイレベルのピーク電圧VlHDQである。タイミングtDSは、DQ信号がACレベルの時刻t31g311、g312から、DQS信号がVrefの時刻t32g301までの時間である。タイミングtDHは、DQS信号がVrefの時刻t32g301から、DQ信号がDCレベルの時刻t33g313、g314までの時間である。図10に示すように、メモリコントローラ200に設定されるDIMM301~305から読み込み時の同期クロックCKに対するDQSに対する各タイミング値は、tQSL、tDQSLCK、tQSH、及びローレベル電圧VOL、ハイレベル電圧VOH、DQS信号と/DQS信号とのクロスポイントの許容ハイレベルVOXmax、DQS信号と/DQS信号とのクロスポイントの許容ローレベルVOXminである。タイミングtQSLは、DQSと/DQSのクロスポイントの時刻t41g411から、DQS信号がVrefの時刻t43g412までの時間である。タイミングtDQSCKは、同期クロックCKがVrefの時刻t42g401から、DQS信号がVrefの時刻t43g412までの時間である。タイミングtQSHは、DQS信号がVrefの時刻t43g412から、DQS信号がVrefの時刻t44g413までの時間である。図11に示すように、メモリコントローラ200に設定されるDIMM301~305に読み込み時のDQSに対するDQ信号の各タイミング値は、tDQSQ、tQH、及びローレベル電圧VOL、ハイレベル電圧VOHである。タイミングtDQSQは、DQS信号がVrefの時刻t51g501から、DQ信号がVrefの時刻t52g511までの時間である。タイミングtQHは、DQS信号がVrefの時刻t51g501から、DQ信号がVrefの時刻t54g512までの時間である。ステップS3図5に戻って、CPU100は、BIOS120に基づき、HDD160からOS140を読み込む前に、DIMM301~304、及びテスト用DIMM305に対してメモリタイミング調整を行う指示をメモリコントローラ200に出力する。メモリコントローラ200は、CPU100が出力するメモリタイミング調整を行う指示に基づき、DIMM301~304、及びテスト用DIMM305に対してタイミング調整を行う。なお、メモリタイミング調整とは、メモリトレーニング、及びレベリングなどである。例えば、PCパーソナルコンピュータの起動時に、BIOSに設定されている設定値により行われている処理と同様に行われる。ステップS3終了後、ステップS4に進む。ステップS3で行うメモリタイミング調整の一例としてリードタイミング調整について、図12と図13を用いて説明する。図12は、メモリタイミング調整におけるDIMM301~305へのデータ遅延を説明する図である。図13は、メモリタイミング調整におけるDIMM301~305からのメモリコントローラ200の信号取り込みタイミングを説明する図である。図12に示すように、DIMM301~305のメモリモジュールは、例えば、31-1~31~8の8個のメモリチップメモリデバイスともいうで構成されている。DIMM301~305が、DDR3の場合、これらのメモリチップ31-1~31~8は、メモリモジュール内の基板上で、コマンド信号、アドレス信号、同期クロックが各ピン1つのラインでデイジーチェーン接続されている。このような構成を、フライバイ構成という。フライバイ構成の場合、同期クロックが、メモリチップ31-1~31-8に伝搬する時間に差が生じるので、信号出力タイミングが、メモリチップ31-1~31-8毎に異なっている。このため、メモリコントローラ200は、メモリコントローラ200内にメモリチップ31-1~31-8毎の信号を受け取るタイミング差を補正する遅延回路D1~D8を備えている。すなわち、図12に示すように、メモリコントローラ200は、クロック信号、コマンド信号、アドレス信号の到達遅延時間で発生するデータ出力のタイミングのずれを見積もっておく。リードレベリングReadLevelingは、この各遅延時間を検出する処理である。図13に示すように、タイミング調整時、メモリコントローラ200は、DIMM301~305のDQ0の端子にタイミング調整用のデータを書き込み、DQ0以外の端子に同一データか0を書き込む。データパターンは、例えば、01010等である。そして、メモリコントローラ200は、書き込んだデータDQを読み出し、メモリチップ31-1~31-8の各遅延時間を検出する。この場合、メモリコントローラ200は、DQS端子と/DQS端子からは、通常のリードコマンド入力時と同様のデータストローブ信号をDIMM301~305に出力する。メモリコントローラ200は、DIMM301~305からのデータDQの読み込み時、図13のS601~S605のように、取り込みラッチ信号のタイミングをスキャンして、DQ信号を取り込めるタイミングをDIMM301~305上のメモリチップ31-1~31-8毎に検出する。そして、メモリコントローラ200は、各メモリチップ31-1~31-8の取り込みタイミングを決定し、メモリコントローラ200内の各遅延回路D1~D8に設定する。すなわち、図13に示すように、メモリコントローラ200は、取り込みラッチ信号のタイミングをスキャンして、DQ信号が取り込めるタイミングをメモリモジュール上のDRAM毎に見つけ、DRAM毎のメモリコントローラ200への取り込みラッチタイミングを決める。ステップS4図5に戻って、CPU100は、HDD160からOS140を読み出し、読み出したOS140から必要な情報、アプリケーション等をメインメモリであるDIMM301~304に書き込む。ステップS4終了後、ステップS5に進む。ステップS5次に、CPU100は、OS140に基づき、実動作を開始する。なお、実動作とは、例えば、システム1がPCに適用されている場合、使用者からの指示やHDD160にインストールされているアプリケーションからの指示、及びそれらの指示に基づくOS140からの指示による動作である。ステップS5終了後、ステップS6とステップS7を並行して進める。ステップS6CPU100は、ステップS7~S21のタイミング再調整処理タイミング再調整テストとタイミング再調整と並行して、OS140に基づき、DIMM301~304に対して実動作処理を行う。ステップS7ステップS5終了後、CPU100は、OS140から、タイミング再調整テストのアプリケーション、テストパターン及びアクセスパターンを読み出して、タイミング再調整処理を開始する。ステップS7終了後、ステップS8に進む。ステップS8次に、CPU100は、OS140から読み出したタイミング再調整テストのアプリケーションとタイミング再調整のアプリケーション、テストパターン及びアクセスパターンをメモリコントローラ200に出力する。次に、メモリコントローラ200のプログラム実行部206は、CPU100が出力したタイミング再調整テストのアプリケーションの中から、第1可変テストのアプリケーションを読み出す。第1可変テストでは、起動時のBIOS120に設定されている第1の組み合わせより多い第2の組み合わせのテストパターンを用いる。すなわち、第1可変テストでは、同期クロックに対するコマンドアドレス信号の出力タイミングを可変変更し、コマンドアドレス信号用の参照電圧VrefCAレベルを可変変更する組み合わせの複数のパターンを用いて、複数のシュム-データを取得するテストである。次に、プログラム実行部206は、読み出した第1可変テストのアプリケーションに基づき、テスト用DIMM305に対してタイミング再調整テストを行い、テスト結果であるシュムーデータを取得する。ステップS8終了後、ステップS9に進む。図14Aは、本実施形態に係る第1可変テスト~第3可変テストの一例を説明する図である。図14Bは、本実施形態に係る第1可変テスト~第3可変テストによるシュムープロットの一例を説明する図である。プログラム実行部206は、コマンド調整部241及び242を制御して、同期クロックCK、/CKに対するコマンド信号の立ち下がりSetuptimeのタイミング及び立ち上がりHoldtimeのタイミングを可変し、タイミングを可変したコマンド信号をテスト用DIMM305に出力する。同様に、メモリコントローラ200のアドレス調整部251及び252は、同期クロックCK、/CKに対するアドレス信号の立ち下がりのタイミング及び立ち上がりのタイミングを可変し、タイミングを可変したアドレス信号をテスト用DIMM305に出力する。また、メモリコントローラ200のプログラム実行部206は、VrefCA可変部224を制御して、レベルを可変した参照電圧VrefCAをテスト用DIMM305に出力する。図14Aに示すように、プログラム実行部206は、VrefCA可変部224を制御して、VrefCA=0.75[V]に設定する。プログラム実行部206は、コマンド調整部241及び242を制御して、同期クロックCK、/CKに対するコマンド信号の立ち下がりSetuptimeS701のタイミング及び立ち上がりHoldtimeS702のタイミングを可変し、タイミングを可変したコマンド信号をテスト用DIMM305に出力する。すなわち、図14Aに示すように、テストプログラム制御部202は、メモリコントローラ200は、信号の立ち下がりセットアップ、信号の立ち上がりホールドをスキャンする毎に、データパターンでアクセスしてテストを行い、PassであるかFailであるかを確認する。そして、図14Bに示すように、テストプログラム制御部202は、コマンド入力部247を介して、テスト用DIMM305から読み込んだコマンド信号を取得し、取得したタイミングでデータが取り込めるかPass、取り込めないかFailを判定する。図14Bにおいて、横軸はタイミング、縦軸はVrefレベルである。そして符号S711~S723それぞれが、各タイミングの判定結果である。メモリコントローラ200は、データパターン及びアクセスパターンに基づき、コマンド信号、アドレス信号のタイミング、参照電圧VrefCAレベルを可変して、シュムーデータを取得する。ステップS9次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS9終了後、ステップS10に進む。ステップS10次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストのアプリケーションの中から、第2可変テストのアプリケーションを読み出す。第2可変テストでは、起動時のBIOS120に設定されている第1の組み合わせ数より多い第2の組み合わせ数のテストパターンを用いる。すなわち、第2可変テストでは、データクロックDQ-CLKに対するDQ信号の出力タイミングを可変し、データ信号用の参照電圧VrefDQレベルを可変する複数のパターンを用いて、複数のシュム-データを取得するテストである。また、第2可変テストでは、データクロックDQS-CLKに対するDQS信号の出力タイミングと、データ信号用の参照電圧VrefDQとの組み合わせの複数のパターンを用いて、複数のシュム-データを取得するテストである。なお、データクロックDQ-CLKは、リード動作又はライト動作においてデータ信号DQが有効となる時間を示す信号である。また、データクロックDQS-CLKは、リード動作又はライト動作においてデータストローブ信号DQSが有効となる時間を示す信号である。次に、プログラム実行部206は、読み出した第2可変テストのアプリケーションに基づき、テスト用DIMM305に対してタイミング再調整テストを行い、テスト結果であるシュムーデータを取得する。ステップS10終了後、ステップS11に進む。ステップS11次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS11終了後、ステップS12に進む。ステップS12次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストのアプリケーションの中から、第3可変テストのアプリケーションを読み出す。第3可変テストでは、起動時のBIOS120に設定されている第1の組み合わせ数より多い第2の組み合わせ数のテストパターンを用いる。すなわち、第3可変テストでは、データクロックDQ-CLKに対するDQ信号の入力タイミングを可変し、データ信号用の参照電圧VrefDQレベルを可変する複数のパターンを用いて、複数のシュム-データを取得するテストである。また、第3可変テストでは、データクロックDQS-CLKに対するDQS信号の入力タイミングと、データ信号用の参照電圧VrefDQとの組み合わせの複数のパターンを用いて、複数のシュム-データを取得するテストである。次に、プログラム実行部206は、読み出した第3可変テストのアプリケーションに基づき、テスト用DIMM305に対してタイミング再調整テストを行い、テスト結果であるシュムーデータを取得する。ステップS12終了後、ステップS13に進む。ステップS13次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS13終了後、ステップS14に進む。ステップS14次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストが終了したことを示す情報をCPU100に出力する。ステップS14終了後、ステップS15に進む。ステップS15次に、CPU100のテスト結果統計処理部104は、メモリコントローラ200が出力するタイミング再調整テストが終了したことを示す情報に基づき、メモリコントローラ200に記憶されているテスト結果であるシュムーデータを読み出す。そして、テスト結果統計処理部104は、タイミング再調整のアプリケーションに基づき、読み出したシュムーデータを用いて、各信号の各タイミングと各参照電圧との対応の最適ポイントを、テストパターン毎に統計処理により算出する。図15は、本実施形態に係るテストパターンAの場合のDQ/DQS対VrefDQのシュムーデータの一例を示す図である。図16は、本実施形態に係るテストパターンBの場合のDQ/DQS対VrefDQのシュムーデータの一例を示す図である。図15と図16において、横軸は信号のタイミング、縦軸はVrefDQレベルを表している。図15及び図16において、符号Pは、テストにパスPassしたことを表し、符号Failはテストにパスしなかったことを表している。テストにパスするとは、例えば、プログラム実行部206は、同期クロックに対してDQ信号のタイミングと参照電圧VrefDQレベルを可変したパターンAを用いて、例えば、第1可変テストを行う。この場合、このパターンAを用いて可変テストを行った場合の期待値が、テストパターンと共にテストプログラム制御部202に記憶されている。テストプログラム制御部202は、可変テストにより取得されたシュムーデータと、テスト結果記憶部280に記憶されている期待値とを比較し、取得したシュムーデータが、期待値に対して所定のしきい値以内の場合、可変テストをパスしたと判定する。また、テストプログラム制御部202は、可変テストにより取得されたシュムーデータと、このテスト結果記憶部280に記憶されている期待値とを比較し、取得したシュムーデータが、期待値に対して所定のしきい値より大きい場合、可変テストをパスしなかったと判定する。CPU100は、図15及び図16に示すように、まず、DQ/DQS対VrefDQのパスしたデータの例えば重心を最適調整ポイントS901またはS902として算出する。そして、CPU100は、例えば、このように算出されたテストパターン毎の最適調整ポイントの値を平均化して、調整信号毎に最適調整ポイントを算出する。ステップS15終了後、ステップS16に進む。ステップS16次に、CPU100は、算出した調整信号の最適調整ポイントをメモリコントローラ200に出力する。ステップS16終了後、ステップS17に進む。ステップS17次に、CPU100は、タイミング再調整のアプリケーションに基づき、タイミング再調整を行うDIMMを1つ選択する。この場合、例えば、タイミング再調整のアプリケーションには、DIMMを選択する順番として、最初にDIMM301、次にDIMM302、その後DIMM303、最後にDIMM304が記憶されている。このため、CPU100は、まず、DIMM301をタイミング再調整することを示す情報をメモリコントローラ200に出力する。ステップS17終了後、ステップS18に進む。ステップS18次に、CPU100は、タイミング再調整のアプリケーションに基づき、タイミング再調整を行うDIMMに実動作のアクセスと行わない命令をメモリコントローラ200に出力する。例えば、DIMM301に対してタイミング再調整を行う場合、CPU100は、メモリコントローラ200にDIMM301に実動作のアクセスを行わないように制御させ、残りのDIMM302~304のみに実動作のアクセスを行わせる。ステップS18終了後、ステップS19に進む。ステップS19次に、プログラム実行部206は、CPU100が出力する実動作のアクセスと行わない命令に従って、メモリ出力制御部212及びメモリ入力制御部214を制御して、タイミング再調整を行うために選択された1つのDIMMに実動作のアクセスをしない制御を行う。例えば、プログラム実行部206は、DIMM301に対してタイミング再調整を行い、DIMM301に対して実動作のアクセスと行わない制御を行う。そして、プログラム実行部206は、は、残りのDIMM302~304のみに実動作を行う制御をする。次に、プログラム実行部206は、は、CPU100が出力するタイミング再調整を行う命令に従って、選択された他のDIMMのタイミング再調整を行う。ステップS19終了後、ステップS21に進む。ステップS20プログラム実行部206は、選択されたDIMMのタイミング再調整が完了したことを示す情報をCPU100に出力する。ステップS20終了後。ステップS21に進む。ステップS21CPU100は、プログラム実行部206が出力する、選択されたDIMMのタイミング再調整が完了したことを示す情報に基づき、全てのDIMMのタイミング再調整が完了したか否かを判別する。全てのDIMMのタイミング再調整が完了したと判別される場合ステップS21;Yes、タイミング再調整処理を終了する。全てのDIMMのタイミング再調整が完了していないと判別された場合ステップS21;No、CPU100は、ステップS17~S21を、全てのDIMMのタイミング再調整が完了するまで繰り返し行う。以上のように、本実施形態では、テスト用DIMM305を備え、このテスト用DIMM305に対して、実動作中にメモリコントローラ200がBIOS120に設定されているタイミング調整より多くのテストパターンを用いて、各種のテストを行う。そして、メモリコントローラ200は、各種のテストで取得したシュムーデータを取得する。そして、CPU100は、取得されたシュムーデータを用いて、調整信号と参照電圧の最適ポイントを算出する。そして、メモリコントローラ200は、算出された最適ポイントを、実動作中にDIMM301~304に対してタイミング再調整する。このように、メモリコントローラ200は、実動作時に、テスト用DIMM305に起動時のタイミング調整より多数のテストパターンを用いてテストを行い、その結果である最適ポイントを実動作中に、順次、DIMM301~304にタイミング再調整する。この結果、実動作のアクセスタイミングに合わせた多数のデータパターンを用いて、タイミング再調整を行うことができる。なお、本実施形態で説明したタイミング調整は、例えば、システム1のシャットダウン時に行い、算出された最適ポイントをメモリコントローラ200のテスト結果記憶部280に記憶させておき、次回、システム1が起動されたときに読み出して用いるようにしてもよい。また、ステップS7~S21のタイミング調整処理は、実動作中に1度行ってもよく、または、実動作中に繰り返し行ってもよい。繰り返しタイミング調整処理を行う場合、予め定められた時間間隔で行うようにしてもよく、あるいは、ランダムに行ってもよく、または、CPU100やメモリコントローラ200の処理負荷が少ないときに行ってもよい。また、本実施形態では、再調整を選択された1つのDIMMに対して順次行う例を説明したが、CPU100やメモリコントローラ200の処理負荷が少ない場合、同時に複数のDIMMに対して行うようにしてもよい。[第2実施形態図17は、本実施形態に係るシステム1aの構成の一例を説明する図である。図17に示すように、システム1aは、BIOS120、CPU100、OS140、HDD160、メモリコントローラ200a、DIMM301~304を備えている。メモリコントローラ200a以外の機能は、第1実施形態と同様である。メモリコントローラ200aのテストプログラム制御部202には、CPU100が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン、データパターンが入力される。また、テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションに基づき、アクセスパターン、データパターンを用いて、タイミング再調整テストのアプリケーション、アクセスパターン及びデータパターンをプログラム実行部206に出力する。テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションソフト101に基づき、メモリ入力制御部214が出力するシュムーデータを取得し、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テストプログラム制御部202は、テスト開始トリガ部290が出力するトリガ信号に応じて、DIMM301~304に対して、順次、タイミング再調整テストを行う指示をプログラム実行部206に出力する。また、テストプログラム制御部202は、タイミング再調整テストが終了した場合、タイミング再調整テストが終了したことを示す情報をCPU100に出力する。また、テストプログラム制御部202は、入力されたタイミング再調整のアプリケーションソフト101に基づき、CPU100から入力された最適ポイントを示す情報及びタイミング再調整のアプリケーションをプログラム実行部206に出力する。プログラム実行部206には、テスト条件設定部204が出力するタイミング再調整テストの各種条件、テストプログラム制御部202が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン及びデータパターンが入力される。プログラム実行部206は、入力されたタイミング再調整のアプリケーション、データパターン等を用いて、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224を制御し、順次、選択されたDIMM301~304のいずれかのDIMMに対して、タイミング再調整テストを行う。また、プログラム実行部206は、テストプログラム制御部202が出力するタイミング再調整のアプリケーションに基づき、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224を制御し、順次、選択されたDIMM301~304のいずれかのDIMMに対して、タイミング再調整を行う。次に、本実施形態に係るタイミング調整処理について、図18を用いて説明する。図18は、本実施形態に係るタイミング再調整処理手順の一例のフローチャートである。なお、図18において、ステップS107~S121が、本実施形態のタイミング再調整処理である。ステップS101~S105ステップS101~S105は、第1実施形態のステップS1~S5と同様に行う。ステップS105終了後、ステップS106とステップS107を並行して進める。ステップS106CPU100は、ステップS107~S121のタイミング再調整処理と並行して、OS140に基づき、実動作処理を行う。ステップS107次に、CPU100は、タイミング再調整テストのアプリケーションに基づき、タイミング再調整テストを行うDIMMを選択する。この場合、例えば、タイミング再調整テストのアプリケーションには、DIMMを選択する順番として、最初にDIMM301、次にDIMM302、その後DIMM303、最後にDIMM304が記憶されている。このため、CPU100は、まず、DIMM301のタイミング再調整テストを行うことを示す情報をメモリコントローラ200aに出力する。ステップS107終了後、ステップS108に進む。ステップS108次に、CPU100は、タイミング再調整テストのアプリケーションに基づき、タイミング再調整テストを行うDIMMに実動作のアクセスと行わない命令をメモリコントローラ200aに出力する。次に、プログラム実行部206は、CPU100が出力するタイミング再調整テストを行うDIMMに実動作のアクセスと行わない命令に従って、メモリ出力制御部212及びメモリ入力制御部214を制御して、タイミング再調整テストを行うために選択されたDIMMに実動作のアクセスをしない制御を行う。例えば、プログラム実行部206は、DIMM301に対して、実動作のアクセスと行わない制御を行い、残りのDIMM302~304のみに実動作を行う制御をする。ステップS108終了後、ステップS109に進む。ステップS109次に、CPU100は、OS140から、タイミング再調整のアプリケーション及びタイミング再調整のアプリケーション、テストパターン及びアクセスパターンを読み出して、タイミング再調整処理を開始する。ステップS110次に、CPU100は、OS140から読み出したタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、テストパターン及びアクセスパターンを、メモリコントローラ200aに出力する。次に、プログラム実行部206は、CPU100が出力したタイミング再調整テストのアプリケーションの中から、第1可変テストのアプリケーションを読み出す。プログラム実行部206は、読み出した第1可変テストのアプリケーションに基づき、選択された1つのDIMMに対して第1可変テストを行い、シュムーデータを取得する。なお、第1可変テストは、第1実施形態のステップS8で行う第1可変テストと同様である。ステップS110終了後、ステップS111に進む。ステップS111次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS111終了後、ステップS112に進む。ステップS112次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストのアプリケーションの中から、第2可変テストのアプリケーションを読み出す。なお、第2可変テストは、第1実施形態のステップS10で行う第2可変テストと同様である。次に、プログラム実行部206は、読み出した第2可変テストのアプリケーションに基づき、選択された1つのDIMMに対してテストを行い、テスト結果であるシュムーデータを取得する。ステップS112終了後、ステップS113に進む。ステップS113次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS113終了後、ステップS114に進む。ステップS114次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストのアプリケーションの中から、第3可変テストのアプリケーションを読み出す。なお、第3可変テストは、第1実施形態のステップS12で行う第3可変テストと同様である。次に、プログラム実行部206は、読み出した第3可変テストのアプリケーションに基づき、選択された1つのDIMMに対してテストを行い、テスト結果であるシュムーデータを取得する。ステップS114終了後、ステップS115に進む。ステップS115次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS115終了後、ステップS116に進む。ステップS116次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストが終了したことを示す情報をCPU100に出力する。ステップS116終了後、ステップS117に進む。ステップS117次に、CPU100のテスト結果統計処理部104は、メモリコントローラ200aが出力するタイミング再調整テストが終了したことを示す情報に基づき、メモリコントローラ200aに記憶されているテスト結果であるシュムーデータを読み出す。そして、テスト結果統計処理部104は、タイミング再調整のアプリケーションに基づき、読み出したシュムーデータを用いて、各信号の各タイミングと各参照電圧との対応の最適ポイントを、テストパターン毎に統計処理により算出する。テスト結果統計処理部104は、まず、DQ/DQS対VrefDQのパスしたデータの例えば重心を最適調整ポイントとして算出する。そして、テスト結果統計処理部104は、例えば、このように算出された各テストパターンの最適調整ポイントを更に平均化して、信号毎に最適調整ポイントを算出する。ステップS117終了後、ステップS118に進む。ステップS118次に、CPU100は、算出した信号毎の最適調整ポイントをメモリコントローラ200aに出力する。ステップS118終了後、ステップS119に進む。ステップS119次に、CPU100は、タイミング再調整のアプリケーションに基づき、タイミング再調整を行うDIMMを選択する。この場合、例えば、タイミング再調整のアプリケーションには、DIMMを選択する順番として、最初にDIMM301、次にDIMM302、その後DIMM303、最後にDIMM304が記憶されている。このため、CPU100は、まず、DIMM301をタイミング再調整することを示す情報をメモリコントローラ200aに出力する。次に、プログラム実行部206は、CPU100が出力するタイミングの再調整を行う命令に従って、選択されたDIMMの再調整を行う。ステップS119終了後、ステップS120に進む。ステップS120プログラム実行部206は、選択されたDIMMのタイミング再調整が完了したことを示す情報をCPU100に出力する。ステップS120終了後。ステップS121に進む。ステップS121CPU100は、メモリコントローラ200aが出力する、選択されたDIMMのタイミング再調整が完了したことを示す情報に基づき、全てのDIMMの再調整が完了したか否かを判別する。全てのDIMMのタイミング再調整が完了したと判別される場合ステップS121;Yes、タイミング調整処理を終了する。全てのDIMMのタイミング再調整が完了していないと判別された場合ステップS121;No、ステップS107~S121を、全てのDIMMのタイミング再調整が完了するまで繰り返し行う。以上のように、本実施形態では、メインメモリであるDIMM301~304から選択された1つのDIMMに対して、実動作中にメモリコントローラ200aがBIOS120に設定されているタイミング調整より多くのパターンを用いて、各種のテストを行う。そして、メモリコントローラ200aは、各種のテストで取得したシュムーデータを記憶する。そして、CPU100は、取得されたシュムーデータを用いて、各信号と参照電圧の最適ポイントを算出する。そして、メモリコントローラ200aは、算出した最適ポイントを、実動作中にDIMM301~304の中から選択された1つのDIMMに対して、順次、タイミング再調整する。この結果、実動作のアクセスタイミングに合わせた多数のデータパターンを用いて、タイミング再調整を行うことができる。なお、ステップS107~S121のタイミング調整処理は、実動作中に1度行ってもよく、または、実動作中に繰り返し行ってもよい。繰り返しタイミング調整処理を行う場合、予め定められた時間間隔で行うようにしてもよく、あるいは、ランダムに行ってもよく、または、CPU100やメモリコントローラ200aの処理負荷が少ないときに行ってもよい。また、本実施形態では、タイミング調整を選択された1つのDIMMに対して順次行う例を説明したが、CPU100やメモリコントローラ200aの処理負荷が少ない場合、同時に複数のDIMMに対して行うようにしてもよい。[第3実施形態図19は、本実施形態に係るシステム1bの構成の一例を説明する図である。図19に示すように、システム1bは、CPU100、BIOS120、OS140、HDD160、メモリコントローラ200b、DIMM301a、DIMM301b、DIMM302a、DIMM302b、DIMM303a、DIMM303b、DIMM304a及びDIMM304bを備えている。第3実施形態におけるDIMMは、2枚ずつのミラー構成であり、DIMM300aとDIMM301bとがミラー構成されている。同様に、DIMM302aとDIMM302bとがミラー構成され、DIMM303aとDIMM303bとがミラー構成され、DIMM304aとDIMM304bとがミラー構成されている。以下、DIMM301a、DIMM302a、DIMM303a、及びDIMM304aを第1DIMMと称する。また、DIMM301b、DIMM302b、DIMM303b、及びDIMM304bを第2DIMMと称する。メモリコントローラ200bのテストプログラム制御部202には、CPU100が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン、データパターンが入力される。また、テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションに基づき、タイミング再調整テストのアプリケーション、アクセスパターン及びデータパターンをプログラム実行部206に出力する。テストプログラム制御部202は、入力されたタイミング再調整テストのアプリケーションソフト101に基づき、メモリ入力制御部214が出力するシュムーデータを取得し、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テストプログラム制御部202は、テスト開始トリガ部290が出力するトリガ信号に応じて、第1DIMMと第2DIMMに対して、順次、タイミング再調整テストを行う指示をプログラム実行部206に出力する。また、テストプログラム制御部202は、タイミング再調整テストが終了した場合、タイミング再調整テストが終了したことを示す情報をCPU100に出力する。また、テストプログラム制御部202は、入力されたタイミング再調整のアプリケーションソフト101に基づき、CPU100から入力された最適ポイントを示す情報及びタイミング再調整のアプリケーションをプログラム実行部206に出力する。プログラム実行部206には、テスト条件設定部204が出力するタイミング再調整テストの各種条件、テストプログラム制御部202が出力するタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、アクセスパターン及びデータパターンが入力される。プログラム実行部206は、入力されたタイミング再調整のアプリケーション、データパターン等を用いて、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224を制御し、順次、選択された第1DIMMか第2DIMMのいずれか4つのDIMMに対して、タイミング再調整テストを行う。また、プログラム実行部206は、テストプログラム制御部202が出力するタイミング再調整のアプリケーションに基づき、メモリ出力制御部212、メモリ入力制御部214、VrefDQ可変部222、VrefCA可変部224を制御し、順次、選択された第1DIMMか第2DIMMのいずれかの4つのDIMMに対して、タイミング再調整を行う。次に、本実施形態に係るタイミング調整処理について、図20を用いて説明する。図20は、本実施形態に係るタイミング調整処理手順の一例のフローチャートである。なお、図20において、ステップS207~S222が、本実施形態のタイミング再調整処理である。ステップS201~S205ステップS201~S205は、第1実施形態のステップS1~S5と同様に行う。ステップS205終了後、ステップS206とステップS207を並行して進める。ステップS206CPU100は、ステップS207~S221のタイミング再調整処理と並行して、OS140に基づき、ステップS207で選択されていない第1DIMMまたは第2DIMMを用いて実動作処理を行う。ステップS207次に、CPU100は、タイミング再調整テストのアプリケーションに基づき、まず、タイミング再調整テストを行うDIMMとして第1DIMMを選択する。ステップS207終了後、ステップS208に進む。ステップS208次に、CPU100は、タイミング再調整テストのアプリケーションに基づき、タイミング再調整テストを行うDIMMに実動作のアクセスと行わない命令をメモリコントローラ200bに出力する。次に、メモリコントローラ200bのプログラム実行部206は、CPU100が出力するタイミング再調整テストを行うDIMMに実動作のアクセスと行わない命令に従って、タイミング再調整テストを行うために選択された第1DIMMまたは第2DIMMに実動作のアクセスをしない制御を行う。例えば、プログラム実行部206は、最初の処理では第1DIMMに対して、実動作のアクセスと行わない制御を行い、次の処理では第2DIMMに対して実動作を行わない制御をする。ステップS208終了後、ステップS209に進む。ステップS209次に、CPU100は、OS140から、タイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、テストパターン及びアクセスパターンを読み出し、タイミング再調整処理を開始する。ステップS210次に、CPU100は、OS140から読み出したタイミング再調整テストのアプリケーション及びタイミング再調整のアプリケーション、テストパターン及びアクセスパターンを、メモリコントローラ200bに出力する。次に、プログラム実行部206は、タイミング再調整テストのアプリケーションの中から、第1可変テストのアプリケーションを読み出す。プログラム実行部206は、読み出した第1可変テストのアプリケーションに基づき、選択された第1DIMMまたは第2DIMMに対して第1可変テストを行い、シュムーデータを取得する。なお、第1可変テストは、第1実施形態のステップS8で行う第1可変テストと同様である。この場合、例えば、プログラム実行部206は、第1DIMMであるDIMM301a、DIMM302a、DIMM303a、及びDIMM304aに対して同時に第1可変テストを行う。ステップS210終了後、ステップS211に進む。ステップS211次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS211終了後、ステップS212に進む。ステップS212次に、プログラム実行部206は、タイミング再調整テストのアプリケーションの中から、第2可変テストのアプリケーションを読み出す。なお、第2可変テストは、第1実施形態のステップS10で行う第2可変テストと同様である。この場合、例えば、プログラム実行部206は、第1DIMMであるDIMM301a、DIMM302a、DIMM303a、及びDIMM304aに対して同時に第2可変テストを行う。次に、プログラム実行部206は、読み出した第2可変テストのアプリケーションに基づき、選択された第1DIMMまたは第2DIMMに対してテストを行い、テスト結果であるシュムーデータを取得する。ステップS212終了後、ステップS213に進む。ステップS213次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS213終了後、ステップS214に進む。ステップS214次に、プログラム実行部206は、タイミング再調整テストのアプリケーションの中から、第3可変テストのアプリケーションを読み出す。なお、第3可変テストは、第1実施形態のステップS12で行う第3可変テストと同様である。この場合、プログラム実行部206は、例えば、第1DIMMであるDIMM301a、DIMM302a、DIMM303a、及びDIMM304aに対して同時に第3可変テストを行う。次に、プログラム実行部206は、読み出した第3可変テストのアプリケーションに基づき、選択された第1DIMMまたは第2DIMMに対してテストを行い、テスト結果であるシュムーデータを取得する。ステップS214終了後、ステップS215に進む。ステップS215次に、プログラム実行部206は、取得したシュムーデータをテスト結果記憶部280に記憶させる。また、テスト結果記憶部280は、シュムーデータが書き込まれたことに応じて、シュムーデータが書き込まれたことを示す情報をテスト開始トリガ部290に出力する。テスト開始トリガ部290は、テスト結果記憶部280が出力するシュムーデータが書き込まれたことを示す情報に応じて、次のテストを開始するトリガをテストプログラム制御部202に出力する。ステップS215終了後、ステップS216に進む。ステップS216次に、プログラム実行部206は、テスト開始トリガ部290が出力するトリガに応じて、タイミング再調整テストが終了したことを示す情報をCPU100に出力する。ステップS216終了後、ステップS217に進む。ステップS217次に、CPU100のテスト結果統計処理部104は、メモリコントローラ200bが出力するタイミング再調整テストが終了したことを示す情報に基づき、メモリコントローラ200bに記憶されているテスト結果であるシュムーデータを読み出す。そして、テスト結果統計処理部104は、タイミング再調整のアプリケーションに基づき、読み出したシュムーデータを用いて、各信号の各タイミングと各参照電圧との対応の最適ポイントを、テストパターン毎に統計処理により算出する。テスト結果統計処理部104は、まず、DQ/DQS対VrefDQのパスしたデータの例えば重心を最適調整ポイントとして算出する。そして、テスト結果統計処理部104は、例えば、このように算出された各テストパターンの最適調整ポイントを更に平均化して、信号毎に最適調整ポイントを算出する。ステップS217終了後、ステップS218に進む。ステップS218次に、CPU100は、算出した信号毎の最適調整ポイントをメモリコントローラ200bに出力する。ステップS218終了後、ステップS219に進む。ステップS219次に、CPU100は、タイミング再調整のアプリケーションに基づき、タイミング再調整を行うDIMMを選択する。この場合、例えば、タイミング再調整のアプリケーションには、DIMMを選択する順番として、最初に第1DIMM、次に第2DIMMが記憶されている。このため、CPU100は、まず、第1DIMMをタイミング再調整することを示す情報をメモリコントローラ200bに出力する。次に、プログラム実行部206は、CPU100が出力するタイミング再調整のアプリケーションに基づき、選択された第1DIMMまたは第2DIMMのタイミング再調整を行う。すなわち、プログラム実行部206は、第1DIMMであるDIMM301a、DIMM302a、DIMM303a、及びDIMM304aに対して同時にタイミング再調整を行う。ステップS219終了後、ステップS220に進む。ステップS220プログラム実行部206は、選択されたDIMMのタイミング再調整が完了したことを示す情報をCPU100に出力する。ステップS120終了後。ステップS121に進む。ステップS221CPU100は、メモリコントローラ200bが出力する、選択された第1DIMMまたは第2DIMMのタイミング再調整が完了したことを示す情報に基づき、全てのDIMMのタイミング再調整が完了したか否かを判別する。全てのDIMMのタイミング再調整が完了したと判別される場合ステップS221;Yes、タイミング再調整処理を終了する。全てのDIMMのタイミング再調整が完了していないと判別された場合ステップS221;No、ステップS207~S221を、全てのDIMMのタイミング再調整が完了するまで繰り返し行う。ステップS222全てのDIMMのタイミング再調整が完了していないと判別された場合ステップS221;No、CPU100は、タイミング再調整のアプリケーションに基づき、タイミング再調整を行うDIMMとして第2DIMMを選択する。この場合、CPU100は、第2DIMMを選択する。ステップS222終了後、ステップS208~S221を繰り返す。以上のように、本実施形態では、メインメモリであるDIMMを第1DIMM301a、302a、303a、304aと第2DIMM301b、302b、303b、304bによるミラー構成にする。そして、実動作中に、メモリコントローラ200bがBIOS120に設定されているタイミング調整より多くのパターンを用いて、各種のタイミング再調整テストを第1DIMMまたは第2DIMMの4つのDIMMに対して同時にテストを行う。そして、メモリコントローラ200bは、各種のテストで取得したシュムーデータを記憶する。そして、CPU100は、取得されたシュムーデータを用いて、各信号と参照電圧の最適ポイントを算出する。そして、メモリコントローラ200bは、算出した最適ポイントを、実動作中に第1DIMMまたは第2DIMMに対してタイミング再調整する。この結果、実動作のアクセスタイミングに合わせた多数のデータパターンを用いて、4つのDIMMに対して同時にタイミング再調整を行うことができる。なお、ステップS207~S222のタイミング再調整処理は、実動作中に1度行ってもよく、または、実動作中に繰り返し行ってもよい。繰り返しタイミング再調整処理を行う場合、予め定められた時間間隔で行うようにしてもよく、あるいは、ランダムに行ってもよく、または、CPU100やメモリコントローラ200bの処理負荷が少ないときに行ってもよい。なお、第1実施形態~第3実施形態において、DIMMが4つの例を説明したが、DIMMの数はこれに限られず、4つ以下でも、4より多くてもよい。また、本実施形態では、CPU100と、メモリコントローラ200または200a、200bが別の構成の例を説明したが、例えば、CPU100が、メモリコントローラ200または200a、200bを備える図1のような調整装置40であってもよい。また、タイミング再調整テストのアプリケーション、タイミング再調整のアプリケーション、データパターン、アクセスパターン等がOS140に含まれている例を説明したが、例えば、イミング再調整テストのアプリケーション、タイミング再調整のアプリケーション、データパターン、アクセスパターン等をメモリコントローラ200または200a、200bの記憶部に予め記憶させておいてもよい。または、イミング再調整テストのアプリケーション、タイミング再調整のアプリケーション、データパターン、アクセスパターン等は、メモリコントローラ200または200a、200bに接続されている非図示の記憶部例えばROMに予め記憶させておくようにしてもよい。また、本実施形態のシステムを、例えばPC装置、携帯電話器、携帯情報端末、ゲーム機、携帯ゲーム機、デジタル家電などの演算装置、メモリコントローラ、メモリを備える装置に用いてもよい。また、メモリコントローラ120は、CPU100の中に備えられるようにしてもよい。また、メモリコントローラ120は、例えば、PLDプログラマブルロジックデバイスやASICApplicationSpecificIntegratedCircuitや回路でハードウェアにより実現することも可能である。本願の技術思想は、発揮性メモリ及び発揮性メモリ並びにそれらの混在するメモリに関するシステムに適用できる。更に、図面で開示した各ブロック内の回路形式、各ステップの制御方法の詳細は、実施例が開示する回路形式及び詳細な制御方式には限られない。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得る、であろう各種変形、修正を含むことは勿論である。