(57)【要約】【課題】１つの実施形態は、動作マージンを大きく確保できる半導体装置を提供することを目的とする。【解決手段】１つの実施形態によれば、制御部を有する半導体装置が提供される。制御部は、メモリを制御する。メモリでは、クロック信号のエッジに同期してコマンドに関する動作が行われる。制御部は、デューティー制御器と位相制御器とを有する。デューティー制御器は、クロック信号のデューティーを調整する。位相制御器は、コマンドの位相を調整する。【選択図】図１
2013178603.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号のダブルエッジに同期してコマンドに関する動作が行われるメモリを制御する制御回路と、
前記クロック信号を生成するクロック発生回路と、
を備え、
前記制御回路は、
前記コマンドの位相を調整する位相制御信号を生成する位相調整部と、前記コマンドにより前記メモリから読み出された値が正しい値か否かを判断する判断部と、前記判断部の判断結果に応じて、前記クロック信号のデューティー比を調整するデューティー制御信号を生成するデューティー調整部とを有する調整回路と、
前記位相制御信号により前記コマンドの位相を調整する位相制御器と、
前記デューティー制御信号により前記クロック信号のデューティー比を調整するデューティー制御器と、
を有する
ことを特徴とする半導体装置。
【請求項２】
クロック信号のエッジに同期してコマンドに関する動作が行われるメモリを制御する制御部を備え、
前記制御部は、
前記クロック信号のデューティーを調整するデューティー制御器と、
前記コマンドの位相を調整する位相制御器と、
を有することを特徴とする半導体装置。
【請求項３】
前記位相調整部は、前記デューティー調整部により前記クロック信号のデューティー比が調整された状態で、前記コマンドの位相を適正位相範囲の中央の位相にする
ことを特徴とする請求項１に記載の半導体装置。
【請求項４】
クロック信号のダブルエッジに同期してコマンドに関する動作が行われるメモリを制御するための半導体装置の制御方法であって、
前記コマンドの位相を調整して前記メモリに供給することと、
前記コマンドにより前記メモリから読み出された値が正しい値か否かを判断することと、
前記位相の調整と前記読み出された値の判断とを繰り返し行い、前記クロック信号の現在のデューティー比に対する前記コマンドの適正位相範囲を特定することと、
前記クロック信号のデューティー比を変更して前記メモリに供給することと、
前記適正位相範囲の特定と前記デューティー比の変更とを繰り返し行い、前記クロック信号の適正なデューティー比を特定することと、
前記クロック信号のデューティー比を前記適正なデューティー比に調整して前記メモリに供給することと、
を備えたことを特徴とする半導体装置の制御方法。
【請求項５】
前記クロック信号のデューティー比が前記適正なデューティー比に調整された状態で、前記コマンドの位相を前記適正なデューティー比に対応した前記適正位相範囲の中央の位相にして前記メモリに供給することをさらに備えた
ことを特徴とする請求項４に記載の半導体装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体装置、及び半導体装置の制御方法に関する。
【背景技術】
【０００２】
近年、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）に関し、ＬＰＤＤＲ２（Ｌｏｗ  Ｐｏｗｅｒ  Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ  ２）と呼ばれる新しい規格が開発されている。ＤＤＲ２やＤＤＲ３やＬＰＤＤＲと異なり、ＬＰＤＤＲ２仕様では、コマンド（コマンドアドレス信号）の送信タイミングがＳｉｎｇｌｅ  Ｄａｔａ  Ｒａｔｅ（ＳＤＲ）からＤｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ（ＤＤＲ）となっている。そのため、動作マージンを大きく確保することが望まれる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−４０１５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
１つの実施形態は、動作マージンを大きく確保できる半導体装置、及び半導体装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
１つの実施形態によれば、制御部を有する半導体装置が提供される。制御部は、メモリを制御する。メモリでは、クロック信号のエッジに同期してコマンドに関する動作が行われる。制御部は、デューティー制御器と位相制御器とを有する。デューティー制御器は、クロック信号のデューティーを調整する。位相制御器は、コマンドの位相を調整する。
【図面の簡単な説明】
【０００６】
【図１】第１の実施形態にかかる半導体装置の構成を示す図。
【図２】第１の実施形態における制御回路の構成を示す図。
【図３】第１の実施形態における制御回路の動作を示すフローチャート。
【図４】第１の実施形態における制御回路の動作を示すフローチャート。
【図５】第１の実施形態における制御回路の動作を示す波形図。
【図６】第１の実施形態における制御回路の動作を示す波形図。
【図７】第１の実施形態における制御回路の動作を示す波形図。
【図８】第１の実施形態における制御回路の動作を示す波形図。
【図９】第１の実施形態における制御回路の動作を示す波形図。
【図１０】第１の実施形態における制御情報のデータ構造を示す図。
【図１１】第１の実施形態の変形例にかかる半導体装置の構成を示す図。
【図１２】第２の実施形態における制御回路の動作を示すフローチャート。
【図１３】第２の実施形態における制御回路の動作を示すフローチャート。
【図１４】第２の実施形態における制御回路の動作を示す波形図。
【図１５】第２の実施形態における制御回路の動作を示す波形図。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、実施形態にかかる半導体装置を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【０００８】
（第１の実施形態）
第１の実施形態にかかる半導体装置１の概略について図１を用いて説明する。図１は、半導体装置１の構成を示す図である。
【０００９】
半導体装置１は、図１に示すように、メモリ３及び制御回路１００を備える。メモリ３は、クロック信号のダブルエッジに同期してコマンドに関する動作が行われるようなメモリであり、例えば、ＬＰＤＤＲ２（Ｌｏｗ  Ｐｏｗｅｒ  Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ  ２）規格に従ったＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。制御回路１００は、クロック信号をメモリ３に供給するとともに、メモリ３を制御する。
【００１０】
ＬＰＤＤＲ２規格のベースとなっているＬＰＤＤＲ規格では、メモリやその制御回路が携帯機器に搭載されることを想定して、主に消費電力を下げることを目指している。このＬＰＤＤＲ規格を含むＤＤＲ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ）方式によれば、クロック信号に基づいて生成されるデータストローブ信号（ＤＱＳ信号）の立ち上がりおよび立ち下がりのダブルエッジでデータの取り込みを行うことで、ＤＱＳ信号の立ち上がりエッジのみでデータを取り込む場合に比べて２倍の転送速度（ダブルデータレート）を実現する。しかし、ＬＰＤＤＲ規格では、動作周波数を例えば２００ＭＨｚからさらに高めることは難しいので、さらなる高速化が要求されている。また、携帯機器に搭載されることを想定した場合、実装面積を低減するためにピン数をさらに低減することも要求されている。
【００１１】
これらの要求に応じて、ＬＰＤＤＲ２規格を含むＤＤＲ方式では、ＬＰＤＤＲ規格と異なり、データの取り込みだけでなく、コマンドに関する動作についても２倍の転送速度（ダブルデータレート）を実現する。
【００１２】
図１に示す半導体装置１においても、制御回路１００が、コマンド（例えば、コマンドアドレス信号ＣＡ）を、クロック信号（ＣＫ＿ＰとＣＫ＿Ｎの差動信号）の立ち上がり及び立ち下がりのダブルエッジに同期してメモリ３に送信し（図５参照）、メモリ３では、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の立ち上がり及び立ち下がりのダブルエッジに同期してコマンドに関する動作が行われる。制御回路１００は、クロック信号ＣＫ＿Ｐと、クロック信号ＣＫ＿Ｐを論理反転させたクロック信号ＣＫ＿Ｎを含む一対の差動クロック信号をメモリ３に供給し、メモリ３は、一対の差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）に同期して動作する（図５参照）。このため、メモリ３の動作マージンを多く確保する上で、一対の差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を精密かつ適切に（例えば、最適に）制御することが必要になる。
【００１３】
さらに、制御回路１００は、図１に示すように、例えば、システムオンチップ（ＳｏＣ）の基板２上に実装される。基板２上では、他に、クロック発生回路（例えば、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ））２ａ、Ｒｅｓｅｔ回路２ｂ、ＣＰＵ２ｃ、ＧＰＵ２ｄ、ＤＭＡ回路２ｅが、システムバス２ｐを介して制御回路１００に接続されるように実装される。また、バスブリッジ２ｆを介してシステムバス２ｐに接続されるシステムバス２ｑに接続されるように、ＧＰＩＯ回路２ｇ、ＲＴＣ回路２ｈ、タイマ２ｉ、ＨＤＤコントローラ２ｊ、ＰＣＩｅデバイスコントローラ２ｋ、ＵＳＢデバイスコントローラ２ｍが基板２上に実装される。さらに、ＨＤＤコントローラ２ｊ、ＰＣＩｅデバイスコントローラ２ｋ、ＵＳＢデバイスコントローラ２ｍは、それぞれ基板２外に配されたＨＤＤ４、ＰＣＩｅデバイス５、ＵＳＢデバイス６に接続される。そして、制御回路１００も、基板２外に配されたメモリ３に接続される。メモリ３は、このように実装されるので、その実装状態等に応じて温度バラつきや電圧ばらつきなどの影響や、その製造過程におけるばらつき（ＳｏＣのプロセスバラつき、外囲器（パッケージ）の製造ばらつき、プリントサーキットボード（ＰＣＢ）の製造ばらつき）の影響など、様々な影響を受け得る。このため、メモリ３の誤動作を低減するために、メモリ３の動作マージンを多く確保する必要性が高く、この観点からも、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を精密かつ適切に（例えば、最適に）制御することが必要になる。
【００１４】
ここで、単に、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の送信側（制御回路１００内）で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を観測して適切なデューティー比（例えば、最適なデューティー比５０％）に補正してメモリ３に供給すると、上記の様々な影響によりメモリ３内で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比が適切なデューティー比（例えば、最適なデューティー比５０％）からずれる傾向にある。この場合、メモリ３の動作マージンが狭く制限されて、メモリ３の誤動作が増加する可能性がある。
【００１５】
そこで、本実施形態では、制御回路１００において、制御回路１００からメモリ３へクロック信号及びコマンドアドレス信号を送りながらそのレスポンスを見ることを繰り返し行い、メモリ３の動作マージンを多く確保するように、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値に調整する。
【００１６】
そのような動作を実現するために、制御回路１００は、例えば、図２に示すように、クロック信号供給端子ＴＭ４の前段にデューティー制御器１２３を持ち、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を調整可能であり、コマンドアドレス信号供給端子ＴＭ１の前段に位相制御器１２１を持ち、コマンドアドレス信号ＣＡの位相調整が可能である。
【００１７】
具体的には、制御回路１００は、調整回路１１０及びメモリインターフェース１２０を有する。調整回路１１０は、メモリインターフェース１２０を介してメモリ３を制御する。
【００１８】
メモリインターフェース１２０は、位相制御器１２１、リードデータバッファ１２２、デューティー制御器１２３、ドライバ１２４、１２７、レシーバ１２５、１２６、コマンドアドレス信号供給端子ＴＭ１、データ受信端子ＴＭ２、データストローブ信号受信端子ＴＭ３、及びクロック信号供給端子ＴＭ４を有する。
【００１９】
位相制御器１２１は、調整回路１１０とドライバ１２４との間に電気的に接続されている。位相制御器１２１は、コマンドアドレス信号ＣＡ及び位相制御信号を調整回路１１０から受ける。コマンドアドレス信号ＣＡは、ＬＰＤＤＲ２規格で規定されるコマンドに対応した動作を行うための信号である。
【００２０】
コマンドアドレス信号ＣＡに対応したコマンドは、例えば、モードレジスタリード（ＭＲＲ）コマンドを含む（図５参照）。モードレジスタリード（ＭＲＲ）コマンドは、モードレジスタ３ａ及びデータ記憶領域３ｂを有するメモリ３における（例えば読み出し専用の）モードレジスタ３ａに予め設定された値を読み出すためのコマンドである。モードレジスタ３ａには、例えば、製造者番号やフラグビット、レビジョンＩＤなどの値が予め設定され格納されている。
【００２１】
位相制御器１２１は、位相制御信号に従ってコマンドアドレス信号ＣＡの位相を設定又は調整する。位相制御器１２１による位相制御の方法は、公知の方法を用いることができる。例えば、位相制御器１２１は、図示しないＤＬＬ（Ｄｅｌａｙ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）を含み、ＤＬＬを用いて、位相制御信号に応じてコマンドアドレス信号ＣＡの遅延量を調整することで、コマンドアドレス信号ＣＡの位相を設定又は調整する。位相制御器１２１は、位相が設定又は調整されたコマンドアドレス信号ＣＡをドライバ１２４へ供給する。
【００２２】
ドライバ１２４は、位相制御器１２１とコマンドアドレス信号供給端子ＴＭ１との間に電気的に接続されている。ドライバ１２４は、コマンドアドレス信号ＣＡを位相制御器１２１から受ける。ドライバ１２４は、コマンドアドレス信号ＣＡをコマンドアドレス信号供給端子ＴＭ１へ供給する。
【００２３】
コマンドアドレス信号供給端子ＴＭ１は、メモリ３のコマンドアドレス信号受信端子ＴＭ１１に電気的に接続されている。コマンドアドレス信号供給端子ＴＭ１は、コマンドアドレス信号ＣＡをドライバ１２４から受ける。コマンドアドレス信号供給端子ＴＭ１は、コマンドアドレス信号ＣＡをメモリ３へ供給する。これに応じて、メモリ３では、コマンドアドレス信号ＣＡに対応したコマンドに関する動作が行われる。
【００２４】
例えば、コマンドアドレス信号ＣＡに対応したコマンドがモードレジスタリード（ＭＲＲ）コマンドである場合、メモリ３では、モードレジスタ３ａに予め設定された値が読み出されて、読み出された値ＤＱ及びデータストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎがそれぞれデータ出力端子ＴＭ１２及びデータストローブ信号出力端子ＴＭ１３に現れる。
【００２５】
データ受信端子ＴＭ２は、メモリ３のデータ出力端子ＴＭ１２に電気的に接続されている。データ受信端子ＴＭ２は、読み出された値ＤＱをデータ出力端子ＴＭ１２経由で受ける。データ受信端子ＴＭ２は、読み出された値ＤＱをレシーバ１２５へ供給する。
【００２６】
レシーバ１２５は、データ受信端子ＴＭ２とリードデータバッファ１２２との間に電気的に接続されている。レシーバ１２５は、読み出された値ＤＱをデータ受信端子ＴＭ２から受ける。レシーバ１２５は、読み出された値ＤＱをリードデータバッファ１２２へ供給する。
【００２７】
データストローブ信号受信端子ＴＭ３は、メモリ３のデータストローブ信号出力端子ＴＭ１３に電気的に接続されている。データストローブ信号受信端子ＴＭ３は、データストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎをデータストローブ信号出力端子ＴＭ１３経由で受ける。データストローブ信号受信端子ＴＭ３は、データストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎをレシーバ１２６へ供給する。
【００２８】
レシーバ１２６は、データストローブ信号受信端子ＴＭ３とリードデータバッファ１２２との間に電気的に接続されている。レシーバ１２６は、データストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎをデータストローブ信号受信端子ＴＭ３から受ける。レシーバ１２６は、データストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎをリードデータバッファ１２２へ供給する。
【００２９】
リードデータバッファ１２２は、レシーバ１２５と調整回路１１０との間に電気的に接続されている。リードデータバッファ１２２は、レシーバ１２６と調整回路１１０との間に電気的に接続されている。リードデータバッファ１２２は、読み出された値ＤＱをレシーバ１２５から受け、データストローブ信号ＤＱＳ＿Ｐ、ＤＱＳ＿Ｎをレシーバ１２６から受ける。リードデータバッファ１２２は、読み出された値ＤＱを保持しているとともに、保持している値ＤＱを調整回路１１０に転送する。
【００３０】
デューティー制御器１２３は、制御回路１００のクロック信号受信端子ＴＭ０とドライバ１２７との間に電気的に接続されている。デューティー制御器１２３は、調整回路１１０とドライバ１２７との間に電気的に接続されている。デューティー制御器１２３は、クロック信号ｃｌｏｃｋをクロック信号受信端子ＴＭ０経由で外部（例えば、クロック発生回路（例えば、ＰＬＬ）２ａ）から受け、デューティー制御信号を調整回路１１０から受ける。
【００３１】
デューティー制御器１２３は、デューティー制御信号に従ってクロック信号ｃｌｏｃｋのデューティー比を設定又は調整する。デューティー制御器１２３によるデューティー制御の方法は、公知の方法を用いることができる。例えば、デューティー制御器１２３は、デューティー制御信号に応じてクロック信号ｃｌｏｃｋを駆動するＣＭＯＳトランジスタのＰチャネルトランジスタとＮチャネルトランジスタのバランスを調整することで、クロック信号ｃｌｏｃｋのデューティー比を設定又は調整する。デューティー制御器１２３は、デューティー比が設定又は調整されたクロック信号ｃｌｏｃｋをドライバ１２７へ供給する。
【００３２】
ドライバ１２７は、デューティー制御器１２３とクロック信号供給端子ＴＭ４との間に電気的に接続されている。ドライバ１２７は、クロック信号ｃｌｏｃｋをデューティー制御器１２３から受ける。ドライバ１２７は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）をクロック信号供給端子ＴＭ４へ供給する。
【００３３】
クロック信号供給端子ＴＭ４は、メモリ３のクロック信号受信端子ＴＭ１４に電気的に接続されている。クロック信号供給端子ＴＭ４は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）をドライバ１２７から受ける。クロック信号供給端子ＴＭ４は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）をメモリ３へ供給する。これに応じて、メモリ３では、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）に同期した動作が行われる。
【００３４】
調整回路１１０は、例えば、位相調整部１１１、判断部１１２、位相範囲特定部１１３、記憶部１１４、デューティー調整部１１５、及びデューティー比特定部１１６を有する。調整回路１１０はコマンドアドレス信号の位相制御信号、および、クロック信号ｃｌｏｃｋのデューティー制御信号を生成する回路である。以下、調整回路１１０の構成、制御は一例である。
【００３５】
位相調整部１１１は、位相範囲特定部１１３による制御に従って、位相制御器１２１を制御して、コマンドアドレス信号の位相を調整してメモリ３に供給する。すなわち、位相調整部１１１は、位相範囲特定部１１３による制御に従って、調整すべきコマンドアドレス信号の位相を決定し、決定された位相に調整されるように位相制御信号を生成して位相制御器１２１に供給する。
【００３６】
判断部１１２は、コマンドアドレス信号ＣＡに対応したコマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける。判断部１１２は、読み出された値ＤＱが正しい値か否かを判断する。判断部１１２は、判断結果を位相範囲特定部１１３へ供給する。
【００３７】
位相範囲特定部１１３は、デューティー比特定部１１６による制御に従って、位相調整部１１１による位相の調整と判断部１１２による判断とが繰り返し行われるように、位相調整部１１１及び判断部１１２を制御する。そして、位相範囲特定部１１３は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の現在のデューティー比に対するコマンドアドレス信号ＣＡの適正位相範囲を特定する。位相範囲特定部１１３は、その特定結果を記憶部１１４に追加更新して記憶する。
【００３８】
記憶部１１４は、位相範囲特定部１１３による特定結果に対応した制御情報を記憶する。例えば、記憶部１１４は、デューティー比を示す値とコマンドアドレス信号ＣＡの適正位相範囲とが複数の異なるデューティー比について対応付けられた制御情報１１６１（図１０参照）を記憶する。
【００３９】
例えば、制御情報１１６１は、デューティー制御値欄１１６１ａ及び適正位相範囲欄１１６１ｂを有する。デューティー制御値欄１１６１ａには、デューティー比を示す値として例えばデューティー制御信号の値ＤＴ１、ＤＴ２、・・・が記録されている。適正位相範囲欄１１６１ｂには、位相範囲特定部１１３により特定されたコマンドアドレス信号ＣＡの適正位相範囲ＰＨ１１〜ＰＨ１２、ＰＨ２１〜ＰＨ２２、・・・が記録されている。制御情報１１６１を参照することにより、例えば、デューティー制御信号の値ＤＴ１に対応する適正位相範囲がＰＨ１１〜ＰＨ１２であることを把握でき、デューティー制御信号の値ＤＴ２に対応する適正位相範囲がＰＨ２１〜ＰＨ２２であることを把握できる。また、制御情報１１６１を参照することにより、例えば、デューティー制御信号の値ＤＴ１に対応する適正位相範囲の幅がＰＨ１２〜ＰＨ１１であることが把握でき、デューティー制御信号の値ＤＴ２に対応する適正位相範囲の幅がＰＨ２２〜ＰＨ２１であることが把握できる。
【００４０】
例えば、記憶部１１４は、位相範囲特定部１１３によりコマンドアドレス信号ＣＡの適正位相範囲が適正位相範囲欄１１６１ｂに追加書き込みされた際に、デューティー比特定部１１６から、例えば現在デューティー制御器１２３に供給しているデューティー制御信号の値を現在のデューティー比を示す値として取得する。そして、記憶部１１４は、追加書き込みされたデューティー制御信号の値に対応するデューティー制御値欄１１６１ａの行に追加する。これにより、制御情報１１６１を更新できる。
【００４１】
また、記憶部１１４は、メモリ３のモードレジスタ３ａに予め設定された値と同じ値を予め記憶している。記憶部１１４は、例えば、メモリ３に対する製造者番号やフラグビット、レビジョンＩＤなどの値を予め記憶している。
【００４２】
デューティー調整部１１５は、デューティー比特定部１１６による制御に従って、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を調整してメモリ３に供給する。すなわち、デューティー調整部１１５は、デューティー比特定部１１６による制御に従って、調整すべき差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を決定し、決定されたデューティー比に調整されるようにデューティー制御信号を生成してデューティー制御器１２３に供給する。
【００４３】
デューティー比特定部１１６は、位相範囲特定部１１３による適正位相範囲の特定とデューティー調整部１１５によるデューティー比の調整とが繰り返し行われるように、位相範囲特定部１１３及びデューティー調整部１１５を制御する。そして、デューティー比特定部１１６は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の適正なデューティー比を特定する。例えば、デューティー比特定部１１６は、記憶部１１４に記憶された制御情報１１６１を参照して、適正位相範囲の幅が所定の閾値以上のデューティー比（例えば、適正位相範囲の幅が最大のデューティー比）を特定し、特定されたデューティー比を適正なデューティー比とする。デューティー比特定部１１６は、適正なデューティー比に調整されるように、デューティー調整部１１５を制御する。
【００４４】
デューティー調整部１１５は、この制御に従って、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適正なデューティー比に調整する。すなわち、デューティー調整部１１５は、適正なデューティー比に調整されるようにデューティー制御信号を生成してデューティー制御器１２３に供給する。言い換えると、デューティー調整部１１５は、判断部１１２による判断結果と位相範囲特定部１１３による特定結果とデューティー比特定部１１６による特定結果とに応じて、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値に調整してメモリ３に供給する。
【００４５】
また、デューティー比特定部１１６は、適正なデューティー比に対応する適正位相範囲の中央値の位相を求める。デューティー比特定部１１６は、中央値の位相に調整されるように、位相範囲特定部１１３を制御する。位相範囲特定部１１３は、この制御に従って、中央値の位相に調整されるように、位相調整部１１１を制御する。
【００４６】
位相調整部１１１は、この制御に従って、位相制御器１２１を制御して、コマンドアドレス信号の位相を中央値の位相に調整する。すなわち、位相調整部１１１は、適正なデューティー比に対応する適正位相範囲の中央値の位相に調整されるように位相制御信号を生成して位相制御器１２１に供給する。言い換えると、位相調整部１１１は、判断部１１２による判断結果と位相範囲特定部１１３による特定結果とデューティー比特定部１１６による特定結果とに応じて、コマンドアドレス信号の位相を適切な値に調整してメモリ３に供給する。
【００４７】
次に、コマンドアドレス信号ＣＡの位相、クロック信号のデューティー比を適切な値に調整する方法の概略について図５〜図９の波形図を用いて説明する。図５〜図９は、制御回路１００の動作を示す波形図である。
【００４８】
例えば、メモリ３（例えば、ＬＰＤＤＲ２規格に従ったＳＤＲＡＭ）に対してモードレジスタリード（ＭＲＲ）コマンドを実行する場合、図５に示すように差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の立ち上がりおよび立下りのエッジにモードレジスタリード（ＭＲＲ）コマンドの中心があるような状態でメモリ３に対してモードレジスタリード（ＭＲＲ）コマンドを発行する。その場合、モードレジスタリード（ＭＲＲ）コマンドはメモリ３に正しく認識され、図２に示すデータストローブ信号ＤＱＳ及びデータＤＱを使用してモードレジスタ３ａの値を正しく読み込むことが可能となる。
【００４９】
それに対して、図６に示すように差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）の立ち上がりおよび立下りのエッジにモードレジスタリード（ＭＲＲ）コマンドの変化点があるような状態でメモリ３に対してモードレジスタリード（ＭＲＲ）コマンドを発行した場合、モードレジスタリード（ＭＲＲ）コマンドはメモリ３に正しく認識されず、モードレジスタの値を正しく読み込むことはできない。
本実施の形態では、この特性を利用してクロック信号のデューティー比を適切な値に調整する。
【００５０】
例えば、図７は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比ＤＴａが５０％の場合を示しており、正しくモードレジスタリード（ＭＲＲ）コマンドが実行できる位相範囲は、遅延量が最小のコマンドアドレス信号ＣＡ（ｍｉｎ）と遅延量が最大のコマンドアドレス信号ＣＡ（ｍａｘ）との間となる。このときの適正位相範囲の幅はΔＰＨａになる。
【００５１】
図８は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比ＤＴｂが５０％より小さい場合を示しており、正しくモードレジスタリード（ＭＲＲ）コマンドが実行できる位相範囲は、遅延量が最小のコマンドアドレス信号ＣＡ（ｍｉｎ）と遅延量が最大のコマンドアドレス信号ＣＡ（ｍａｘ）の間となる。このときの適正位相範囲の幅ΔＰＨｂは、図７に示す適正位相範囲の幅ΔＰＨａと比較して小さくなる。
【００５２】
図９は、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比ＤＴｃが５０％より大きい場合を示しており、正しくモードレジスタリード（ＭＲＲ）コマンドが実行できる位相範囲は、遅延量が最小のコマンドアドレス信号ＣＡ（ｍｉｎ）と遅延量が最大のコマンドアドレス信号ＣＡ（ｍａｘ）の間となる。このときの適正位相範囲の幅ΔＰＨｃは、図７に示す適正位相範囲の幅ΔＰＨａと比較して小さくなる。
【００５３】
図７〜図９に示されるように、クロック信号のデューティー比ＤＴａ〜ＤＴｃ毎に正しくＭＲＲがモードレジスタリード（ＭＲＲ）コマンドが実行できる位相範囲の幅ΔＰＨａ〜ΔＰＨｃを比較することで、動作マージン（余裕度）が所定値以上であるようなクロック信号の適切なデューティー比（例えば、最も動作マージン（余裕度）が大きなクロック信号のデューティー比）を決定することが可能となる。例えば、図７〜図９に示す場合、位相範囲の幅ΔＰＨａ〜ΔＰＨｃのうち位相範囲の幅ΔＰＨａが最も大きいので、デューティー比ＤＴａ〜ＤＴｃのうちデューティー比ＤＴａが最も適切なデューティー比として決定できる。すなわち、本実施形態では、メモリ３内で例えば図７に示すようなデューティー比になるような、メモリ３に供給する前のクロック信号のデューティー比を適切なデューティー比として決定することを目指す。
【００５４】
次に、クロック信号のデューティー比を適切な値に調整する方法の詳細について図３を用いて説明する。図３は、制御回路１００の動作、すなわちクロック信号のデューティー比を適切な値に調整するための動作を示すフローチャートである。
【００５５】
ステップＳ１では、デューティー比特定部１１６が、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比が所定の値（例えば、初期値又はデフォルト値）になるように、デューティー調整部１１５を制御する。デューティー調整部１１５は、この制御に従って、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を所定の値に設定する。
【００５６】
ステップＳ２では、判断部１１２が、記憶部１１４にアクセスして、後の比較動作で使用すべき正解値を取得する。判断部１１２は、例えば、メモリ３に対する製造者番号やフラグビット、レビジョンＩＤなどの値を正解値として取得する。
【００５７】
ステップＳ３では、主として位相範囲特定部１１３が、正しくモードレジスタリード（ＭＲＲ）コマンドを実行できるようなコマンドアドレス信号ＣＡの適正位相範囲を特定する。ステップＳ３における処理の詳細は後述する。
【００５８】
ステップＳ４では、位相範囲特定部１１３が、ステップＳ３で特定されたコマンドアドレス信号ＣＡの適正位相範囲を記憶部１１４に追加更新して記憶する。記憶部１１４は、例えば、位相範囲特定部１１３によりコマンドアドレス信号ＣＡの適正位相範囲が適正位相範囲欄１１６１ｂ（図１０参照）に追加書き込みされた際に、デューティー比特定部１１６から、例えば現在デューティー制御器１２３に供給しているデューティー制御信号の値を現在のデューティー比を示す値として取得する。そして、記憶部１１４は、追加書き込みされたデューティー制御信号の値に対応するデューティー制御値欄１１６１ａの行に追加する。
【００５９】
ステップＳ５では、デューティー比特定部１１６が、検討すべき全てのデューティー比について適正位相範囲の特定を行ったか否かを判断する。デューティー比特定部１１６は、全てのデューティー比について特定を行っていない場合（ステップＳ５でＮｏの場合）、処理をステップＳ６へ進め、全てのデューティー比について特定を行った場合（ステップＳ５でＹｅｓの場合）、処理をステップＳ７へ進める。
【００６０】
ステップＳ６では、デューティー比特定部１１６が、検討すべき全てのデューティー比のうち未検討のデューティー比を選択し、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比がその選択されたデューティー比になるように、デューティー調整部１１５を制御する。デューティー調整部１１５は、この制御に従って、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を、選択されたデューティー比に調整する。
【００６１】
ステップＳ７では、デューティー比特定部１１６は、記憶部１１４に記憶された制御情報１１６１を参照して、適正位相範囲の幅が所定の閾値以上のデューティー比（例えば、適正位相範囲の幅が最大のデューティー比）を特定し、特定されたデューティー比を適正なデューティー比とする。デューティー比特定部１１６は、適正なデューティー比に調整されるように、デューティー調整部１１５を制御する。デューティー調整部１１５は、この制御に従って、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適正なデューティー比に調整してメモリ３に供給する。
【００６２】
ステップＳ８では、デューティー比特定部１１６が、適正なデューティー比に対応する適正位相範囲の中央値の位相を求める。デューティー比特定部１１６は、中央値の位相に調整されるように、位相範囲特定部１１３を制御する。位相範囲特定部１１３は、この制御に従って、中央値の位相に調整されるように、位相調整部１１１を制御する。位相調整部１１１は、この制御に従って、位相制御器１２１を制御して、コマンドアドレス信号の位相を中央値の位相、すなわち適切な値に調整してメモリ３に供給する。
【００６３】
次に、ステップＳ３における処理の詳細について図４を用いて説明する。図４は、ステップＳ３における処理の詳細を示すフローチャートである。
【００６４】
ステップＳ１１では、位相範囲特定部１１３が、コマンドアドレス信号の位相が所定の値（例えば、初期値又はデフォルト値）になるように、位相調整部１１１を制御する。位相調整部１１１は、この制御に従って、位相制御器１２１を制御して、コマンドアドレス信号の位相を所定の値に設定する。
【００６５】
ステップＳ１２では、位相範囲特定部１１３が、モードレジスタリード（ＭＲＲ）コマンドが実行されるようにコマンドアドレス信号を設定して位相制御器１２１へ供給する。そして、位相制御器１２１がモードレジスタリード（ＭＲＲ）コマンドに対応したコマンドアドレス信号をメモリ３へ供給し、メモリ３がモードレジスタリード（ＭＲＲ）コマンドを実行する。
【００６６】
ステップＳ１３では、判断部１１２が、コマンドアドレス信号ＣＡに対応したモードレジスタリード（ＭＲＲ）コマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける。判断部１１２は、位相範囲特定部１１３による制御に従い、読み出された値ＤＱと、ステップＳ２で取得された正解値とを比較し、読み出された値ＤＱが正しい値か否かを判断する。判断部１１２は、読み出された値ＤＱが正しい値である場合（ステップＳ１３でＹｅｓの場合）、処理をステップＳ１４へ進め、読み出された値ＤＱが正しい値でない場合（ステップＳ１３でＮｏの場合）、処理をステップＳ１５へ進める。
【００６７】
ステップＳ１４では、判断部１１２が、読み出された値ＤＱが正しい値であるとの判断結果を位相範囲特定部１１３へ供給する。位相範囲特定部１１３は、その判断結果を受けて、現在のコマンドアドレス信号の位相を適正な位相として例えば記憶部１１４に一時的に登録する。
【００６８】
ステップＳ１５では、判断部１１２が、読み出された値ＤＱが正しい値でないとの判断結果を位相範囲特定部１１３へ供給する。位相範囲特定部１１３は、その判断結果を受けて、現在のコマンドアドレス信号の位相を不適正な位相として例えば記憶部１１４に一時的に登録する。
【００６９】
ステップＳ１６では、位相範囲特定部１１３が、検討すべき全ての位相について読み出された値ＤＱの判断を行ったか否かを判断する。位相範囲特定部１１３は、全ての位相について判断を行っていない場合（ステップＳ１６でＮｏの場合）、処理をステップＳ１７へ進め、全ての位相について判断を行った場合（ステップＳ１６でＹｅｓの場合）、処理をステップＳ１８へ進める。
【００７０】
ステップＳ１７では、位相範囲特定部１１３が、検討すべき全ての位相のうち未検討の位相を選択し、コマンドアドレス信号の位相がその選択された位相になるように、位相調整部１１１を制御する。位相調整部１１１は、この制御に従って、位相制御器１２１を制御して、コマンドアドレス信号の位相を、選択された位相に調整する。
【００７１】
ステップＳ１８では、位相範囲特定部１１３が、記憶部１１４に一時的に登録された複数の適正な位相及び複数の不適正な位相を参照して、適正位相範囲を特定する。
【００７２】
例えば、複数の適正な位相のうち最も小さい適正な位相と、その適正な位相に隣接する不適正な位相との中間の値を適正位相範囲の下限の位相とする。同様に、複数の適正な位相のうち最も大きい適正な位相と、その適正な位相に隣接する不適正な位相との中間の値を適正位相範囲の上限の位相とする。
【００７３】
あるいは、例えば、複数の適正な位相のうち最も小さい適正な位相を適正位相範囲の下限の位相とする。同様に、複数の適正な位相のうち最も大きい適正な位相を適正位相範囲の上限の位相とする。
【００７４】
以上のように、第１の実施形態では、制御回路１００において、位相調整部１１１が、位相制御器１２１を制御して、コマンドアドレス信号の位相を調整してメモリ３に供給する。判断部１１２は、コマンドアドレス信号に対応したコマンドによりメモリから読み出された値が正しい値か否かを判断する。デューティー調整部１１５は、判断部１１２の判断結果に応じて、デューティー制御器１２３を制御して、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適正なデューティー比に調整してメモリ３に供給する。これにより、制御回路１００で観測される差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比とメモリ３内での差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比とが様々な要因によりずれる場合に、メモリ３内で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比が適切なデューティー比（例えば、最適なデューティー比５０％）になるように、制御回路１００側で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を調整できる。すなわち、メモリ３の動作マージンを多く（例えば、最大に）確保するように、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値（例えば、最適な値）に調整できる。
【００７５】
例えば、制御回路１００で観測される差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比に対して、メモリ３内での差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比が１０％大きな値にずれる場合に、メモリ３内で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比が最適なデューティー比５０％になるように、制御回路１００側で差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を最適な値４０％に調整できる。
【００７６】
また、第１の実施形態では、コマンドアドレス信号に対応したコマンドが、例えば、モードレジスタリード（ＭＲＲ）コマンドを含む。これにより、モードレジスタ３ａに予め設定された値と同じ値を正解値として制御回路１００側に保持させることができるので、コマンドアドレス信号に対応したコマンドによりメモリから読み出された値が正しい値か否かを容易に判断することができる。また、モードレジスタ３ａに予め設定された値と同じ値を正解値として制御回路１００側に保持させることができるので、コマンドが正しく実行できないような状態になり得る場合でも、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値に調整できる。
【００７７】
また、第１の実施形態では、制御回路１００において、位相調整部１１１が、デューティー調整部１１５によりクロック信号のデューティー比が調整された状態で、コマンドアドレス信号の位相を適正位相範囲の中央の位相にする。これにより、メモリ３の動作マージンを多く（例えば、最大に）確保するように、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値（例えば、最適な値）に調整できることに加えて、コマンドアドレス信号の位相も調整できる。
【００７８】
また、第１の実施形態では、制御回路１００が、コマンドアドレス信号の位相を調整してメモリ３に供給することと、コマンドアドレス信号に対応したコマンドによりメモリ３から読み出された値が正しい値か否かを判断することとを繰り返し行う。これにより、制御回路１００は、クロック信号の現在のデューティー比に対するコマンドアドレス信号の適正位相範囲を特定する。そして、制御回路１００は、コマンドアドレス信号の適正位相範囲を特定することと、クロック信号のデューティー比を調整してメモリ３に供給することとを繰り返し行う。これにより、制御回路１００は、クロック信号の適正なデューティー比を特定し、クロック信号のデューティー比を適正なデューティー比に調整してメモリ３に供給する。したがって、制御回路１００は、メモリ３の動作マージンを多く（例えば、最大に）確保するように、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値（例えば、最適な値）に調整できる。
【００７９】
また、第１の実施形態では、制御回路１００が、クロック信号のデューティー比が適正なデューティー比に調整された状態で、コマンドアドレス信号の位相を適正なデューティー比に対応した適正位相範囲の中央の位相にしてメモリ３に供給する。したがって、制御回路１００は、メモリ３の動作マージンを多く（例えば、最大に）確保するように、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適切な値（例えば、最適な値）に調整できることに加えて、コマンドアドレス信号の位相も調整できる。
【００８０】
なお、第１の実施形態では、半導体装置１が、システムオンチップ（ＳｏＣ）の基板２上に実装される各構成要素２ａ〜２ｑやＨＤＤ４、ＰＣＩｅデバイス５、ＵＳＢデバイス６を備える場合について例示的に説明しているが、半導体装置１は、これらの構成要素の少なくとも一部を含まないものであってもよい。例えば、半導体装置１は、メモリ３及び制御回路１００を備え、それ以外の構成要素を含まないものであってもよい。あるいは、例えば、半導体装置１は、メモリ３及び制御回路１００を備え、クロック発生回路２ａをさらに備えるものであってもよい。
【００８１】
また、第１の実施形態では、クロック信号のダブルエッジに同期してコマンドに関する動作が行われるようなメモリ３として、ＬＰＤＤＲ２規格に従ったＳＤＲＡＭを例示しているが、メモリ３は、例えば、ＬＰＤＤＲ２規格に従った不揮発性メモリであってもよい。不揮発性メモリは、例えば、ＮＡＮＤ型フラッシュメモリ、ＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＭＲＡＭ（Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲｅＲＡＭ（Ｒｅｓｉｓｔａｎｃｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＰＲＡＭ（Ｐｈａｓｅ  ｃｈａｎｇｅ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの不揮発性ランダムアクセスメモリを使用することも可能である。
【００８２】
あるいは、例えば、図１１に示すように、半導体装置１ｉは、第２の制御回路１００ｉ及び不揮発性メモリ３ｉをさらに備えてもよい。制御回路１００ｉは、制御回路１００と対応した構成を有している。例えば、制御回路１００ｉは、図２に示す調整回路１１０に対応した調整回路１１０ｉと、図２に示すメモリインターフェース１２０に対応したメモリインターフェース１２０ｉとを有する。また、不揮発性メモリ３ｉは、メモリ３に対応した構成を有している。例えば、不揮発性メモリ３ｉは、図２に示すモードレジスタ３ａに対応したＲＯＭ領域３ｉａと、図２に示すデータ記憶領域３ｂに対応したデータ記憶領域３ｉｂとを有している。ＲＯＭ領域３ｉａには、所定の初期値が予め設定されており、ユーザによる書き換えができないようになっている。
【００８３】
（第２の実施形態）
次に、第２の実施形態にかかる半導体装置１について説明する。以下では、第１の実施形態と異なる部分を中心に説明する。
【００８４】
第１の実施形態では、予め正解値が決まっているようなコマンドを実行させて読み出された値が正しいか否かの判断を行っているが、第２の実施形態では、予め正解値が決まっていないようなコマンドを実行させて読み出された値が正しいか否かの判断を行う。
具体的には、第２の実施形態にかかる半導体装置１では、制御回路１００が、図１２に示すように、以下の点で異なる動作を行う。
【００８５】
ステップＳ２１では、位相範囲特定部１１３が、ライト（Ｗｒｉｔｅ）コマンドが実行されるようにコマンドアドレス信号を設定して位相制御器１２１へ供給する。そして、位相制御器１２１がライト（Ｗｒｉｔｅ）コマンドに対応したコマンドアドレス信号をメモリ３へ供給し、メモリ３がライト（Ｗｒｉｔｅ）コマンドを実行してデータ記憶領域３ｂの所定アドレスに所定の値を書き込む（図１４参照）。
【００８６】
このとき、例えば、位相範囲特定部１１３は、ライト（Ｗｒｉｔｅ）コマンドで書き込ませた所定の値と同じ値を記憶部１１４に記憶させてもよい。
【００８７】
ステップＳ２２では、判断部１１２が、記憶部１１４にアクセスして、後の比較動作で使用すべき正解値を取得する。
【００８８】
例えば、ライト（Ｗｒｉｔｅ）コマンドで書き込ませた所定の値と同じ値をステップＳ２１で記憶部１１４に記憶させる場合、判断部１１２は、その所定の値と同じ値を正解値として取得する。
【００８９】
例えば、ライト（Ｗｒｉｔｅ）コマンドで書き込ませた所定の値と同じ値をステップＳ２１で記憶部１１４に記憶させない場合、位相範囲特定部１１３が、リード（Ｒｅａｄ）コマンドが実行されるようにコマンドアドレス信号を設定して位相制御器１２１へ供給する。そして、位相制御器１２１がリード（Ｒｅａｄ）コマンドに対応したコマンドアドレス信号をメモリ３へ供給し、メモリ３がリード（Ｒｅａｄ）コマンドを実行してデータ記憶領域３ｂの所定アドレスに書き込まれた所定の値を読み出す。そして、判断部１１２は、コマンドアドレス信号ＣＡに対応したリード（Ｒｅａｄ）コマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける。すなわち、判断部１１２は、その読み出された値ＤＱを正解値として取得する（図１５参照）。
【００９０】
ステップＳ２３では、主として位相範囲特定部１１３が、正しくリード（Ｒｅａｄ）コマンドを実行できるようなコマンドアドレス信号ＣＡの適正位相範囲を特定する。具体的には、図１３に示すように、以下の点で第１の実施形態のステップＳ３における処理と異なる処理が行われる。
【００９１】
ステップＳ３２では、位相範囲特定部１１３が、リード（Ｒｅａｄ）コマンドが実行されるようにコマンドアドレス信号を設定して位相制御器１２１へ供給する。そして、位相制御器１２１がリード（Ｒｅａｄ）コマンドに対応したコマンドアドレス信号をメモリ３へ供給し、メモリ３がリード（Ｒｅａｄ）コマンドを実行してデータ記憶領域３ｂの所定アドレスに書き込まれた所定の値を読み出す。そして、判断部１１２は、コマンドアドレス信号ＣＡに対応したリード（Ｒｅａｄ）コマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける（図１５参照）。
【００９２】
ステップＳ３３では、判断部１１２が、コマンドアドレス信号ＣＡに対応したリード（Ｒｅａｄ）コマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける。判断部１１２は、位相範囲特定部１１３による制御に従い、読み出された値ＤＱと、ステップＳ２２で取得された正解値とを比較し、読み出された値ＤＱが正しい値か否かを判断する。判断部１１２は、読み出された値ＤＱが正しい値である場合（ステップＳ３３でＹｅｓの場合）、処理をステップＳ１４へ進め、読み出された値ＤＱが正しい値でない場合（ステップＳ３３でＮｏの場合）、処理をステップＳ１５へ進める。
【００９３】
以上のように、第２の実施形態では、コマンドアドレス信号に対応したコマンドが、例えば、データ記憶領域３ｂに所定の値を書き込むライト（Ｗｒｉｔｅ）コマンドと、ライトコマンドにより書き込まれた所定の値をデータ記憶領域３ｂから読み出すリード（Ｒｅａｄ）コマンドとを含む。これにより、判断部１１２が比較動作で使用すべき正解値を任意の値に設定できる。
【００９４】
例えば、判断部１１２による判断動作が短時間で行われることに適した正解値を設定すれば、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適正なデューティー比に調整するためのトータルの処理時間を短縮できる。
【００９５】
なお、図１２に示す制御回路１００の動作において、ステップＳ２１が省略されてもよい。この場合、ステップＳ２２では、位相範囲特定部１１３が、リード（Ｒｅａｄ）コマンドが実行されるようにコマンドアドレス信号を設定して位相制御器１２１へ供給する。そして、位相制御器１２１がリード（Ｒｅａｄ）コマンドに対応したコマンドアドレス信号をメモリ３へ供給し、メモリ３がリード（Ｒｅａｄ）コマンドを実行してデータ記憶領域３ｂの所定アドレスに書き込まれた所定の値を読み出す。そして、判断部１１２は、コマンドアドレス信号ＣＡに対応したリード（Ｒｅａｄ）コマンドによりメモリ３から読み出された値ＤＱをリードデータバッファ１２２から受ける。すなわち、判断部１１２は、その読み出された値ＤＱを正解値として取得する（図１５参照）。そして、図１３に示すステップＳ３２では、データ記憶領域３ｂにおけるステップＳ２２で読み出したのと同じ所定アドレスに書き込まれた所定の値を読み出すようなリード（Ｒｅａｄ）コマンドを実行させる。これにより、ライト（Ｗｒｉｔｅ）コマンドが正しく実行できない場合でも、差動クロック信号（ＣＫ＿Ｐ、ＣＫ＿Ｎ）のデューティー比を適正なデューティー比に調整できる。
【００９６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００９７】
なお、上述した実施形態においてはメモリインターフェースと調整回路を異なるブロックとして説明を行ってきたが、これに限定されず、メモリインターフェース内に調整回路があってもよい。
また、本発明はＤＤＲに限らずＳＤＲで動作するメモリのインターフェースにも応用可能である。
【符号の説明】
【００９８】
１、１ｉ  半導体装置、２  基板、３  メモリ、３ａ  モードレジスタ、３ｂ  データ記憶領域、３ｉ  不揮発性メモリ、３ｉａ  ＲＯＭ領域、３ｉｂ  データ記憶領域、１００、１００ｉ  制御回路、１１０、１１０ｉ  調整回路、１１１  位相調整部、１１２  判断部、１１３  位相範囲特定部、１１４  記憶部、１１５  デューティー調整部、１１６  デューティー比特定部、１２０、１２０ｉ  メモリインターフェース、１２１  位相制御器、１２２  リードデータバッファ、１２３  デューティー制御器、１２４、１２７  ドライバ、  １２５、１２６  レシーバ。
【図１】
2013178603.tif 000003
【図２】
2013178603.tif 000004
【図３】
2013178603.tif 000005
【図４】
2013178603.tif 000006
【図５】
2013178603.tif 000007
【図６】
2013178603.tif 000008
【図７】
2013178603.tif 000009
【図８】
2013178603.tif 000010
【図９】
2013178603.tif 000011
【図１０】
2013178603.tif 000012
【図１１】
2013178603.tif 000013
【図１２】
2013178603.tif 000014
【図１３】
2013178603.tif 000015
【図１４】
2013178603.tif 000016
【図１５】
2013178603.tif 000017