(57)【要約】【課題】ＤＬＬ回路を安定動作させつつＤＲＡＭの初期化処理を実行すること。【解決手段】本発明の一つの実施形態によれば、ＤＲＡＭコントローラは、通常動作時には、第一クロックをＤＲＡＭに供給し、初期化処理時には、前記第一クロックよりも低速な第二クロックを生成して、前記生成した第二クロックを前記ＤＲＡＭに供給するクロック生成・切り替え部と、前記ＤＲＡＭからの出力データの取り込みタイミングを前記第一クロックに基づいて調整するＤＬＬ回路を備え、初期化処理時には、前記ＤＲＡＭから前記第二クロックに基づくタイミングで出力された初期化処理にかかる出力データを、通常処理時には、前記ＤＲＡＭから前記第一クロックに基づくタイミングで出力された転送データを、夫々前記ＤＬＬ回路により調整された取り込みタイミングで取り込むＤＲＡＭアクセス回路と、を備える。【選択図】図４
2012068873.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリと、
前記不揮発性メモリとホスト装置との間の転送データを一時記憶するＤＲＡＭと、
前記ＤＲＡＭの初期化処理を実行し、前記初期化処理の後の通常動作時に、前記ＤＲＡＭに対する前記転送データの入出力を実行するＤＲＡＭコントローラと、
を備え、
前記ＤＲＡＭコントローラは、
通常動作時には、第一クロックを前記ＤＲＡＭに供給し、初期化処理時には、前記第一クロックよりも低速な第二クロックを生成して、前記生成した第二クロックを前記ＤＲＡＭに供給するクロック生成・切り替え部と、
前記ＤＲＡＭからの出力データの取り込みタイミングを前記第一クロックに基づいて調整するＤＬＬ回路を備え、初期化処理時には、前記ＤＲＡＭから前記第二クロックに基づくタイミングで出力された初期化処理にかかる出力データを、通常処理時には、前記ＤＲＡＭから前記第一クロックに基づくタイミングで出力された前記転送データを、夫々前記ＤＬＬ回路により調整された取り込みタイミングで取り込むＤＲＡＭアクセス回路と、
を備える、
ことを特徴とするメモリシステム。
【請求項２】
前記ＤＲＡＭは、ＬＰＤＤＲ２（Low  Power  Double-Data-Rate  ２）規格に準拠し、
前記第二クロックの周波数は、ＬＰＤＤＲ２規格に定められた周波数である、
ことを特徴とする請求項１に記載のメモリシステム。
【請求項３】
前記初期化処理にかかる出力データは、モードレジスタリードコマンドに対する応答である、
ことを特徴とする請求項２に記載のメモリシステム。
【請求項４】
前記ＤＲＡＭは、前記初期化処理にかかる出力データを前記第二クロックに基づいて生成したデータストローブ信号とともに出力し、
前記ＤＬＬ回路は、前記データストローブ信号を前記第一クロックを用いて求めた遅延量だけ遅延させ、前記取り込みタイミングとする、
ことを特徴とする請求項１に記載のメモリシステム。
【請求項５】
前記ＤＲＡＭコントローラは、
初期化処理にかかるシーケンス制御を実行するステートマシンである初期化処理制御部と、
初期化処理時に前記第二クロックと等しい周期のパルス信号を生成するパルス信号生成部と、
をさらに備え、
前記初期化処理制御部は、前記パルス信号を用いて状態遷移する、
ことを特徴とする請求項１に記載のメモリシステム。
【請求項６】
前記ＤＲＡＭコントローラは、
前記第二クロックの速度情報を発行する速度情報発行回路をさらに備え、
前記クロック生成・切り替え部は、前記速度情報発行回路が発行した速度情報に対応した周波数の前記第二クロックを生成する、
ことを特徴とする請求項１に記載のメモリシステム。
【請求項７】
ＤＲＡＭの初期化処理を実行し、前記初期化処理の後の通常動作時に、前記ＤＲＡＭに対するデータの入出力を実行するＤＲＡＭコントローラであって、
通常動作時には、第一クロックを前記ＤＲＡＭに供給し、初期化処理時には、前記第一クロックよりも低速な第二クロックを生成して、前記生成した第二クロックを前記ＤＲＡＭに供給するクロック生成・切り替え部と、
前記ＤＲＡＭからの出力データの取り込みタイミングを前記第一クロックに基づいて調整するＤＬＬ回路を備え、初期化処理時には、前記ＤＲＡＭから前記第二クロックに基づくタイミングで出力された初期化処理にかかる出力データを、通常処理時には、前記ＤＲＡＭから前記第一クロックに基づくタイミングで出力されたリードデータを、夫々前記ＤＬＬ回路により調整された取り込みタイミングで取り込むＤＲＡＭアクセス回路と、
を備える、
ことを特徴とするＤＲＡＭコントローラ。
【請求項８】
前記ＤＲＡＭは、ＬＰＤＤＲ２（Low  Power  Double-Data-Rate  ２）規格に準拠し、
前記第二クロックの周波数は、ＬＰＤＤＲ２規格に定められた周波数である、
ことを特徴とする請求項７に記載のＤＲＡＭコントローラ。
【請求項９】
前記初期化処理にかかる出力データは、モードレジスタリードコマンドに対する応答である、
ことを特徴とする請求項８に記載のＤＲＡＭコントローラ。
【請求項１０】
前記ＤＲＡＭは、前記初期化処理にかかる出力データを前記第二クロックに基づいて生成したデータストローブ信号とともに出力し、
前記ＤＬＬ回路は、前記データストローブ信号を前記第一クロックを用いて求めた遅延量だけ遅延させ、前記取り込みタイミングとする、
ことを特徴とする請求項７に記載のＤＲＡＭコントローラ。
【請求項１１】
初期化処理にかかるシーケンス制御を実行するステートマシンである初期化処理制御部と、
初期化処理時に前記第二クロックと等しい周期のパルス信号を生成するパルス信号生成部と、
をさらに備え、
前記初期化処理制御部は、前記パルス信号を用いて状態遷移する、
ことを特徴とする請求項７に記載のＤＲＡＭコントローラ。
【請求項１２】
前記第二クロックの速度情報を発行する速度情報発行回路をさらに備え、
前記クロック生成・切り替え部は、前記速度情報発行回路が発行した速度情報に対応した周波数の前記第二クロックを生成する、
ことを特徴とする請求項７に記載のＤＲＡＭコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、メモリシステムおよびＤＲＡＭコントローラに関する。
【背景技術】
【０００２】
コンピュータシステムに用いられる外部記憶装置として、不揮発性メモリであるフラッシュメモリ（フラッシュＥＥＰＲＯＭ）を搭載したＳＳＤ（Solid  State  Drive）が注目されている。フラッシュメモリは、磁気ディスク装置に比べ、高速、軽量などの利点を有している。ＳＳＤ内には、複数のフラッシュメモリチップ、ホスト装置からの要求に応じて不揮発性メモリのリード／ライト制御を行うコントローラ、不揮発性メモリとホスト装置との間でデータ転送を行うための揮発性のバッファメモリなどを備えている。
【０００３】
近年、ＤＲＡＭ（Dynamic  Random  Access  Memory）に関し、ＬＰＤＤＲ２（Low  Power  Double-Data-Rate  ２）と呼ばれる新しい規格が開発されている。このＬＰＤＤＲ２規格に準拠したＤＲＡＭをＳＳＤのバッファメモリに適用すると、ＳＳＤのさらなる低消費電力化を図ることができる。ＬＰＤＤＲ２規格によれば、１０ＭＨｚ〜５５ＭＨｚのクロックでＤＲＡＭの初期化処理を行うことが規定されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−３０５３４９号公報
【非特許文献】
【０００５】
【非特許文献１】“JEDEC  STANDARD  Low  Power  Double  Data  Rate  2  (LPDDR2)  JESD209-2B  (Revision  of  JESD209-2A、  October  2009)”、［online］、２０１０年２月、JEDEC  SOLID  STATE  TECHNOLOGY  ASSOCIATION、［２０１０年９月２２日検索］、インターネット<http://www.jedec.org/standards-documents/docs/jesd209-2b>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の一つの実施形態は、ＤＬＬ回路を安定動作させつつＤＲＡＭの初期化処理を実行することが可能なメモリシステムおよびＤＲＡＭコントローラを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一つの実施形態によれば、不揮発性メモリと、前記不揮発性メモリとホスト装置との間の転送データを一時記憶するＤＲＡＭと、前記ＤＲＡＭの初期化処理を実行し、前記初期化処理の後の通常動作時に、前記ＤＲＡＭに対する前記転送データの入出力を実行するＤＲＡＭコントローラと、を備える。前記ＤＲＡＭコントローラは、通常動作時には、第一クロックを前記ＤＲＡＭに供給し、初期化処理時には、前記第一クロックよりも低速な第二クロックを生成して、前記生成した第二クロックを前記ＤＲＡＭに供給するクロック生成・切り替え部と、前記ＤＲＡＭからの出力データの取り込みタイミングを前記第一クロックに基づいて調整するＤＬＬ回路を備え、初期化処理時には、前記ＤＲＡＭから前記第二クロックに基づくタイミングで出力された初期化処理にかかる出力データを、通常処理時には、前記ＤＲＡＭから前記第一クロックに基づくタイミングで出力された前記転送データを、夫々前記ＤＬＬ回路により調整された取り込みタイミングで取り込むＤＲＡＭアクセス回路と、を備える。
【図面の簡単な説明】
【０００８】
【図１】図１は、ＤＬＬ回路の役割を説明する図である。
【図２】図２は、ＬＰＤＤＲ２規格にかかる初期化処理を説明する図である。
【図３】図３は、本発明の実施形態のメモリシステムとしてのＳＳＤの構成例を示すブロック図である。
【図４】図４は、ＤＲＡＭコントローラの構成を説明する図である。
【図５】図５は、速度制御回路の機能構成を説明する図である。
【図６】図６は、クロック選択回路の回路図である。
【図７】図７は、初期化処理時の各種信号のタイミングを説明するタイミングチャートである。
【図８】図８は、初期化処理時のＤＲＡＭコントローラの動作を説明する図である。
【発明を実施するための形態】
【０００９】
ＬＰＤＤＲ２規格を含むＤＤＲ方式によれば、クロックに基づいて生成されるデータストローブ信号（ＤＱＳ信号）の立ち上がりおよび立ち下がりの両エッジでデータ取り込みを行うことで、ＤＱＳ信号の立ち上がりエッジのみでデータを取り込む場合に比べて２倍の転送速度（ダブルデータレート）を実現する。ＤＲＡＭを制御するＤＲＡＭコントローラは、ＤＱＳ信号の立ち上がりエッジおよび立ち下りエッジに対してデータの取り込みタイミングを高精度に制御するＤＬＬ（Delay  Locked  Loop）回路を備える。
【００１０】
図１は、ＤＬＬ回路の役割を説明する図である。図示するように、読み出しデータは、ＤＲＡＭからＤＲＡＭコントローラにＤＱＳ信号の両エッジに同期したダブルデータレートの信号として送られてくる。ＤＱＳ信号は、ＤＲＡＭが自ＤＲＡＭの駆動クロックを用いて生成する。ＤＲＡＭコントローラでは、ＤＬＬ回路が当該ＤＱＳ信号を所定時間（本図におけるΔｔ）だけ遅延させて、読み出しタイミング信号を生成する。ＤＱＳ信号の遅延量Δｔは、ずれ量を用いて調整される。ＤＲＡＭコントローラは、当該タイミング信号の立ち上がりエッジおよび立ち下がりエッジの夫々のタイミングでデータを取り込んで、読み出しデータをダブルデータレートの信号から２系統のシングルデータレートの信号に変換する。シングルデータレートに変換された信号は夫々読み出し元に転送される。
【００１１】
図２は、ＬＰＤＤＲ２規格にかかる初期化処理を説明する図である。図示するように、初期化処理は、ＲＥＳＥＴコマンドをＤＲＡＭに送ってＤＲＡＭのリセットを実行するリセット処理と、モードレジスタリード（ＭＲＲ）コマンドを発行してＲＥＳＥＴコマンドに対する応答（初期化処理にかかる出力データ）をモードレジスタ（ＭＲ）に含まれるＤＡＩ（Device  Auto  Initialization）−ｂｉｔからリードするモードレジスタリード（ＭＲＲ）処理と、ＺＱＣ（ZQ  Calibration）コマンドを発行してＤＲＡＭが備える出力ドライバを調整するキャリブレーション処理と、を含んで構成されている。ＭＲＲ処理においては、ＤＡＩ−ｂｉｔの内容はＤＱＳ信号とともにＤＲＡＭコントローラに送られ、ＤＲＡＭコントローラは、送られてきた内容をＤＬＬ回路が生成したタイミングで取り込む。なお、ＤＲＡＭコントローラは、図示するように、ＣＫ＿ｔとＣＫ＿ｃとからなる２相の差動クロックにより駆動される。また、図中に示すｔＩＮＴ１〜４およびｔＺＱＩＮＴは各種処理間の待機時間であって、ＬＰＤＤＲ２規格により夫々具体的な値が規定されている。
【００１２】
本発明の実施形態にかかる技術に比較される技術として、初期化処理時においてＤＲＡＭコントローラとＤＲＡＭとをＬＰＤＤＲ２規格に規定された低速なクロックで動作させる技術（以下、比較例にかかる技術）が考えられる。しかしながら、通常、ＤＬＬ回路は、高速なデータ転送を実行できるように、例えば数百ＭＨｚのような高速なクロックで動作するものが採用される。そのような高速クロックで動作するＤＬＬ回路は、ＬＰＤＤＲ２規格に規定される初期化処理時の周波数のような低速なクロックでは意図した値の遅延量Δｔを求めることが出来ない場合がある。すなわち、比較例にかかる技術を適用してＤＬＬ回路をＬＰＤＤＲ２規格に規定されている低速クロックで動作させると、ＤＬＬ回路は意図した遅延量Δｔを求めることができず、結果としてモードレジスタの内容を正しく取り込むことが出来ない。
【００１３】
そこで、本発明の実施形態では、ＤＲＡＭコントローラは、通常動作時の高速なクロック（基準クロック）に基づいてＬＰＤＤＲ２に規定されている低速クロックを生成して、初期化処理時には、当該低速クロックをＤＲＡＭに供給する一方、ＤＬＬ回路を低速クロックではなく基準クロックで駆動するようにした。
【００１４】
以下に添付図面を参照して、本発明の実施形態にかかるメモリシステムおよびＤＲＡＭコントローラを詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【００１５】
（実施形態）
図３は、本発明の実施形態のメモリシステムとしてのＳＳＤの構成例を示すブロック図である。図示するように、ＳＳＤ１００は、パーソナルコンピュータなどのホスト装置２００とＡＴＡ（Advanced  Technology  Attachment）規格などの通信インタフェースで接続され、ホスト装置２００の外部記憶装置として機能する。
【００１６】
ＳＳＤ１００は、ＮＡＮＤメモリ１と、ドライブ制御回路２と、ＤＲＡＭ３と、電源回路４とを備えている。
【００１７】
ＮＡＮＤメモリ１は、ＮＡＮＤ型のフラッシュメモリのメモリセルアレイを備えて構成されており、ホスト装置２００から書き込み要求されたデータを記憶する。
【００１８】
ＤＲＡＭ３は、ホスト装置２００とＮＡＮＤメモリ１との間のデータ転送のためのバッファメモリである。ホスト装置２００から送信されてきたデータは、ドライブ制御回路２の制御の下、いったんＤＲＡＭ３に格納され、その後、ＤＲＡＭ３から読み出されてＮＡＮＤメモリ１に書き込まれる。ＤＲＡＭ３は、ＬＰＤＤＲ２規格に準拠したものが採用されており、初期化処理においてリード／ライトされるモードレジスタ（ＭＲ）３１を備えている。なお、図示を省略しているが、ＤＲＡＭ３は、カラムデコーダ、ロウデコーダ、センスアンプなどの周辺回路を含んで構成されている。また、ＤＲＡＭ３は、転送データの一時的な記憶領域としてのみならず、各種管理データの記憶領域、後述するＭＰＵ２４の作業領域など、他の用途でも使用されることができる。
【００１９】
電源回路４は、ドライブ制御回路２およびＮＡＮＤメモリ１を駆動するための内部電源を生成し、生成した内部電源をＮＡＮＤメモリ１、ドライブ制御回路２およびＤＲＡＭ３の夫々に供給する。
【００２０】
ドライブ制御回路２は、ホスト装置２００との間の通信インタフェースの制御およびホスト装置２００とＤＲＡＭ３との間のデータ転送の制御を実行するホストインタフェースコントローラ（ホストＩ／Ｆコントローラ）２１と、ＤＲＡＭ３に対するデータのリード／ライトを制御するＤＲＡＭコントローラ２２と、ＮＡＮＤメモリ１とＤＲＡＭ３との間のデータ転送の制御を実行するＮＡＮＤコントローラ２３と、ファームウェアに基づいてドライブ制御回路２全体の制御を実行するＭＰＵ２４と、クロックコントローラ２５と、をさらに備えている。
【００２１】
クロックコントローラ２５は、例えばＰＬＬ（Phase  locked  loop）により構成される。クロックコントローラ２５が生成したクロック（以下、単に基準クロック）は、ホストＩ／Ｆコントローラ２１、ＤＲＡＭコントローラ２２、ＮＡＮＤコントローラ２３、ＭＰＵ２４、およびＮＡＮＤメモリ１へ供給される。また、基準クロックは、ＤＲＡＭコントローラ２２を介してＤＲＡＭ３に入力される。
【００２２】
ＤＲＡＭコントローラ２２は、ＤＲＡＭ３に対するデータのリード／ライトの制御のほか、ＳＳＤ１００の電源オン時にＤＲＡＭ３の初期化処理を実行する。前述のように、ＬＰＤＤＲ２規格によれば、１０ＭＨｚ〜５５ＭＨｚのクロックで初期化処理を行うことが規定されている。本発明の実施形態によれば、ＤＲＡＭコントローラ２２は、初期化処理を実行する際、基準クロックに基づいて、ＬＰＤＤＲ２規格に規定されている範囲の周波数のクロックを生成する。
【００２３】
図４は、ＤＲＡＭコントローラ２２のさらに詳細な構成を説明する図である。図示するように、ＤＲＡＭコントローラ２２は、主制御回路２２１と、初期化用状態遷移回路２２２と、速度制御回路２２３と、速度情報発行回路２２４と、クロック選択回路２２５と、ＤＲＡＭアクセス回路２２６とを備えている。本図では、クロック選択回路２２５およびＤＲＡＭアクセス回路２２６にのみクロックコントローラ２５からの基準クロックが入力されているが、基準クロックは主制御回路２２１、初期化用状態遷移回路２２２、速度制御回路２２３、および速度情報発行回路２２４の夫々にも供給される。
【００２４】
ＤＲＡＭアクセス回路２２６は、書き込み元から送られてきた書き込みデータをラッチして取り込み、取り込んだ書き込みデータをＤＲＡＭ３に送る。また、ＤＲＡＭアクセス回路２２６は、ＤＲＡＭ３から送られてきた読み出しデータをラッチして取り込んで、記取り込んだ読み出しデータを読み出し元に送る。
【００２５】
ＤＲＡＭアクセス回路２２６は、ＤＲＡＭ３からの読み出しデータを取り込むためのタイミングを制御するＤＬＬ回路２２７を備えている。ＤＬＬ回路２２７は、低速クロックではなく基準クロックに基づいて遅延量を求め、ＤＲＡＭ３からのＤＱＳ信号を当該遅延量だけ遅延させることによって、読み出しデータの取り込みタイミングを調整する。そして、ＤＲＡＭアクセス回路２２６は、ＤＬＬ回路２２７が調整したタイミングで読み出しデータを取り込む。
【００２６】
主制御回路２２１は、ドライブ制御回路２のバスを介して受信する制御信号に基づいてＤＲＡＭアクセス回路２２６を制御して、通常動作時におけるＤＲＡＭ３に対するアクセスを実行する。また、主制御回路２２１は、ＳＳＤの起動時には、初期化処理指示信号を速度制御回路２２３に発行する。
【００２７】
初期化用状態遷移回路２２２は、ＤＲＡＭ３の初期化処理にかかるシーケンス制御を行うステートマシンである。初期化用状態遷移回路２２２は、初期化処理指示信号を受信すると、速度制御回路２２３およびクロック選択回路２２５に低速動作指示信号を発行する。そして、初期化用状態遷移回路２２２は、速度制御回路２２３が生成するステート更新信号に基づいて内部のステート遷移を行う。初期化用状態遷移回路２２２が遷移するステートは、所定時間（ｔＩＮＴ１〜４、ｔＺＱＩＮＴなど）だけ待機するステート、ＲＥＳＥＴを発行するステート、ＭＲＲを実行するステート、ＺＱＣを発行するステートを含んで構成されている。なお、初期化用状態遷移回路２２２は、ＤＲＡＭアクセス回路２２６を介してＲＥＳＥＴコマンド、ＭＲＲコマンド、ＺＱＣコマンドの発行と、ＭＲ３１の読み出しを実行する。
【００２８】
速度情報発行回路２２４は、初期化処理時の分周比（分周値）を指定する分周値指定信号（速度情報）を発行する。速度情報発行回路２２４は、例えばフリップフロップやＲＯＭ（Read  Only  Memory）などで構成され、製造時などに分周比が設定される。速度情報発行回路２２４が発行した分周値指定信号は速度制御回路２２３に送られる。なお、速度情報は、基準クロックを基準として相対的に低速クロックの周波数を特定することができる値であればよく、分周比のほかに例えば分周率を用いることも可能である。また、分周比は、基準クロックの周波数を当該分周比で分周した周波数がＬＰＤＤＲ２規格に規定されている初期化処理時の周波数の範囲に入るように設定される。
【００２９】
速度制御回路２２３およびクロック選択回路２２５は、低速動作指示信号を受信すると、クロックコントローラ２５が生成した基準クロックを分周値指定信号に指定された分周比で分周した低速クロックを生成し、ＤＲＡＭアクセス回路２２６およびＤＲＡＭ３に供給するクロックを基準クロックから低速クロックに切り替える。また、速度制御回路２２３は、生成した低速クロックと等しい周期のパルス信号であるステート更新信号を生成し、生成したステート更新信号を初期化用状態遷移回路２２２に供給する。
【００３０】
図５は速度制御回路２２３の機能構成を説明する図であり、図６はクロック選択回路２２５の回路図である。
【００３１】
速度制御回路２２３は、図５に示すように、クロック反転指示信号生成部２２８と、ステート更新信号生成部２２９とを備えている。クロック反転指示信号生成部２２８は、分周値指定信号に指定される分周比が２ｎ（ｎは１以上の整数）であるとき、基準クロックをダウンカウントして基準クロックの２ｎ−１倍の周期のパルスで構成されるクロック反転指示信号を生成する。ステート更新信号生成部２２９は、基準クロックをダウンカウントして基準クロックの２ｎ倍の周期のパルスで構成されるステート更新信号を生成する。なお、ここでは、クロック反転指示信号およびステート更新信号の各パルスは、基準クロックの１サイクル分のパルス幅を備えるものとする。
【００３２】
また、クロック選択回路２２５は、図６に示すように、選択器４１、Ｄフリップフロップ（Ｄ−ＦＦ）４２および選択器４３を備えている。選択器４１の入力端には、Ｄ−ＦＦ４２のＱ出力と／Ｑ（“Ｑ”の前に付した“／”は反転の意）出力とが入力され、クロック反転指示信号を選択信号として用いて前記２つの入力のうちの１つを選択して出力する。Ｄ−ＦＦ４２のＤ入力端には選択器４１の出力が入力され、Ｄ−ＦＦ４２のクロック入力端には基準クロックが入力される。このように接続されていることにより、クロック反転指示信号が入力されているとき、Ｄ−ＦＦ４２のＱ出力端は、基準クロックの周波数を１／２ｎ分周した周波数に等しい周波数の低速クロックを出力する。選択器４３の入力端には、基準クロックとＤ−ＦＦ４２のＱ出力端から出力された低速クロックとが入力され、低速動作指示信号を選択信号として前記入力された２つの信号のうちの１つを選択して出力する。クロック選択回路２２５が出力した基準クロックまたは低速クロックはＤＲＡＭ３に供給される。
【００３３】
図７は、初期化処理時の各種信号のタイミングを説明するタイミングチャートである。本図では、最上段から、基準クロック（ここではＣＫ＿ｔのみ図示する）、分周値指定信号、低速動作指示信号、ステート更新信号、ステート、クロック反転指示信号、生成された低速クロックの遷移を夫々示している。図示するように、クロック反転指示信号の“Ｈ”状態とＣＫ＿ｔの立ち上がりエッジとが重なるタイミングで状態が反転することにより低速クロックが生成されている。また、低速クロックと同等の周期でステート更新信号が生成され、当該ステート更新信号をトリガとしてステートが遷移している。なお、本図では、簡略のため、一連のシーケンス制御にかかるステートの数を２として示している。
【００３４】
図８は、初期化処理時のＤＲＡＭコントローラ２２の動作を説明する図である。まず、ＳＳＤ１００の電源がオンされると、主制御回路２２１は、初期化処理指示信号を発行する（ステップＳ１）。すると、初期化用状態遷移回路２２２は、速度制御回路２２３およびクロック選択回路２２５に低速動作指示信号を発行する（ステップＳ２）。ここでは、低速動作指示信号を発行するとは、低速動作指示信号を“Ｌ”から“Ｈ”にアサートすることであるとしている。低速動作指示信号がアサートされると、速度制御回路２２３は、速度情報発行回路２４に設定されている分周比のステート更新信号を生成するとともに、低速クロックを生成するためのクロック反転指示信号を生成する（ステップＳ３）。クロック選択回路２２５は、低速動作指示信号がアサートされると、クロック反転指示信号と基準クロックとに基づいて低速クロックを生成し、出力するクロックを基準クロックから該低速クロックに切り替える（ステップＳ４）。以降のステップでは、初期化用状態遷移回路２２２は、ステート更新信号によりステート遷移を行う。また、ＤＲＡＭ３には低速クロックが供給される。
【００３５】
初期化用状態遷移回路２２２は、電源オン時からｔＩＮＴ１とｔＩＮＴ２とを合わせた時間が経過するまで待機し（ステップＳ５）、ＣＫＥを“Ｌ”から“Ｈ”にアサートする（ステップＳ６）。すると、ＤＲＡＭ３に低速クロックの供給が開始される。そして、初期化用状態遷移回路２２２は、ＣＫＥをアサートした時点からｔＩＮＴ３が経過するまで待機し（ステップＳ７）、ＲＥＳＥＴコマンドを発行する（ステップＳ８）。
【００３６】
初期化用状態遷移回路２２２は、ＲＥＳＥＴコマンドを発行した時点からｔＩＮＴ４が経過するまで待機し（ステップＳ９）、ＭＲ３１に含まれるＤＡＩ−ｂｉｔをリードするＭＲＲコマンドを発行する（ステップＳ１０）。ＤＲＡＭ３は、ＲＥＳＥＴコマンドを受けて初期化を開始し、初期化を完了するとＤＡＴ−ｂｉｔに“０”を書き込む。初期化用状態遷移回路２２２は、ＭＲ３１から読み出され、送られてきたＤＡＩ−ｂｉｔの値が“０”であったか否かを判定する（ステップＳ１１）。ＤＡＩ−ｂｉｔの値が“０”ではなかった場合（ステップＳ１１、Ｎｏ）、ステップＳ１０に移行する。
【００３７】
ＤＡＩ−ｂｉｔの値が“０”であった場合（ステップＳ１１、Ｙｅｓ）、初期化用状態遷移回路２２２は、ＺＱＣコマンドを発行する。その後、初期化用状態遷移回路２２２は、ＺＱＣコマンドを発行してから（ステップＳ１２）、ｔＺＱＩＮＴの経過を待ち（ステップＳ１３）、低速動作指示信号を“Ｈ”から“Ｌ”にデアサートする（ステップＳ１４）。
【００３８】
低速動作指示信号がデアサートされると、速度制御回路２２３は、ステート更新信号およびクロック反転指示信号の生成を停止する（ステップＳ１５）。クロック選択回路２２５は、低速動作指示信号がデアサートされると、出力するクロックを低速クロックから基準クロックに切り替える（ステップＳ１６）。ステップＳ１６の処理の後、ＤＲＡＭコントローラ２２は初期化処理を終了する。以降、ＤＲＡＭ３には基準クロックが供給され、ＤＲＡＭコントローラ２２およびＤＲＡＭ３の通常動作が開始される。
【００３９】
以上述べたように、本発明の実施形態によれば、ＤＲＡＭコントローラ２２は、通常動作時には、基準クロックをＤＲＡＭ３に供給し、初期化処理時には、低速クロックを生成して、生成した低速クロックをＤＲＡＭ３に供給する速度制御回路２２３およびクロック選択回路２２５（クロック生成・切り替え部）と、ＤＲＡＭ３からの出力データの取り込みタイミングを基準クロックに基づいて調整するＤＬＬ回路２２７を備え、初期化処理時には、ＤＲＡＭ３から低速クロックに基づくタイミングで出力されたＭＲ３１の内容を、通常処理時には、ＤＲＡＭ３から基準クロックに基づくタイミングで出力されたＤＲＡＭ３とＮＡＮＤメモリ１との間の転送データを、夫々ＤＬＬ回路２２７により調整された取り込みタイミングで取り込むＤＲＡＭアクセス回路２２６と、を備えるように構成したので、初期化処理中にあってはＤＲＡＭ３を低速クロックで動作させつつＤＬＬ回路２２７を基準クロックで動作させることができるので、ＤＬＬ回路２２７を安定動作させつつＬＰＤＤＲ２規格に準拠したＤＲＡＭ３の初期化処理を実行することが可能となる。
【００４０】
また、ＤＲＡＭコントローラ２２は、初期化処理にかかるシーケンス制御を実行するステートマシンである初期化用状態遷移回路２２２と、初期化処理時に低速クロックと等しい周期のパルス信号であるステート更新信号を生成するステート更新信号生成部２２９と、をさらに備え、初期化用状態遷移回路２２２は、ステート更新信号を用いて状態遷移するように構成したので、ＤＲＡＭコントローラ２２は、初期化処理時において低速クロックに同期して初期化シーケンスを実行することができる。
【００４１】
また、ＤＲＡＭコントローラ２２は、低速クロックの速度情報を発行する速度情報発行回路２２４をさらに備え、速度制御回路２２３およびクロック選択回路２２５（クロック生成・切り替え部）は、速度情報発行回路２２４が発行した速度情報に対応した周波数の低速クロックを生成するように構成したので、速度情報発行回路２２４を操作することによって低速クロックの周波数設定を変更することができるようになる。
【００４２】
なお、以上の説明においては、速度情報発行回路２２４に設定される分周比の一例として２のｎ乗として説明したが、分周比はこれに限定しない。
【００４３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００４４】
１  ＮＡＮＤメモリ、２  ドライブ制御回路、３  ＤＲＡＭ、４  電源回路、２１  ホストＩ／Ｆコントローラ、２２  ＤＲＡＭコントローラ、２３  ＮＡＮＤコントローラ、２４  ＭＰＵ、２５  クロックコントローラ、３１  ＭＲ、４１  選択器、４２  Ｄ−ＦＦ、４３  選択器、１００  ＳＳＤ、２００  ホスト装置、２２１  主制御回路、２２２  初期化用状態遷移回路、２２３  速度制御回路、２２４  速度情報発行回路、２２５  クロック選択回路、２２６  ＤＲＡＭアクセス回路、２２７  ＤＬＬ回路、２２８  クロック反転指示信号生成部、２２９  ステート更新信号生成部。
【図１】
2012068873.tif 000003
【図２】
2012068873.tif 000004
【図３】
2012068873.tif 000005
【図４】
2012068873.tif 000006
【図５】
2012068873.tif 000007
【図６】
2012068873.tif 000008
【図７】
2012068873.tif 000009
【図８】
2012068873.tif 000010