(57)【特許請求の範囲】
【請求項１】
複数のメモリデバイスと接続され、アクセス要求に基づいて該複数のメモリデバイスの動作を制御する制御装置であって、
前記複数のメモリデバイスのうち、アクセス要求に応じてチップ選択信号により選択されたメモリデバイスに対して、該アクセス要求に応じた動作を指示するコマンドを発行する発行手段と、
前記複数のメモリデバイスに対してメモリデバイスごとに個別にクロックイネーブル信号を供給する供給手段と、
前記複数のメモリデバイスのうち、前記発行手段がコマンドを発行しようとしているメモリデバイスを判断する判断手段と、
前記判断手段により判断されたメモリデバイスについての前記クロックイネーブル信号を、該メモリデバイスに前記コマンドを発行しようとしているタイミングに対して、該メモリデバイス固有の時間だけ前のタイミングで有効にし、前記コマンドにより該メモリデバイスにおける動作が完了した後に無効にすることで、他のメモリデバイスに前記コマンドを発行しようとしているタイミングで該メモリデバイスの消費電力モードを移行するよう制御する制御手段と
を備えることを特徴とする制御装置。
【請求項２】
前記発行手段により発行されるコマンドには、前記メモリデバイスへのデータの書き込みを指示する書き込みコマンドと、前記メモリデバイスからのデータの読み出しを指示する読み出しコマンドとが含まれることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記発行手段により発行されるコマンドには、アクティベートコマンドが含まれることを特徴とする請求項２に記載の制御装置。
【請求項４】
前記制御手段は、前記発行手段により発行されるコマンドが読み出しコマンドであった場合には、該読み出しコマンドに基づく前記メモリデバイスにおける読み出し動作が完了したタイミングで、前記クロックイネーブル信号を無効にするよう制御することを特徴とする請求項２に記載の制御装置。
【請求項５】
前記制御手段は、前記発行手段により発行されるコマンドが書き込みコマンドであった場合には、該書き込みコマンドに基づく前記メモリデバイスにおける書き込み動作が完了した後、該メモリデバイス固有の時間が経過したタイミングで、前記クロックイネーブル信号を無効にするよう制御することを特徴とする請求項２に記載の制御装置。
【請求項６】
前記複数のメモリデバイスは、前記クロックイネーブル信号が有効になった後の最初のクロック信号の立ち上がりのタイミングで、ＰｏｗｅｒＤｏｗｎを終了し、前記クロックイネーブル信号が無効になった後の最初のクロック信号の立ち上がりのタイミングで、ＰｏｗｅｒＤｏｗｎを開始することを特徴とする請求項１乃至５のいずれか１項に記載の制御装置。
【請求項７】
複数のメモリデバイスと接続され、アクセス要求に基づいて該複数のメモリデバイスの動作を制御する制御装置における制御方法であって、
前記制御装置は、
前記複数のメモリデバイスのうち、アクセス要求に基づいてチップ選択信号により選択されたメモリデバイスに対して、該アクセス要求に応じた動作を指示するコマンドを発行する発行手段と、
前記複数のメモリデバイスに対してメモリデバイスごとに個別にクロックイネーブル信号を供給する供給手段と、
を備え、
前記制御方法は、
判断手段が、前記複数のメモリデバイスのうち、前記発行手段がコマンドを発行しようとしているメモリデバイスを判断する判断工程と、
制御手段が、前記判断工程において判断されたメモリデバイスについての前記クロックイネーブル信号を、該メモリデバイスに前記コマンドを発行しようとしているタイミングに対して、該メモリデバイス固有の時間だけ前のタイミングで有効にし、前記コマンドにより該メモリデバイスにおける動作が完了した後に無効にすることで、他のメモリデバイスに前記コマンドを発行しようとしているタイミングで該メモリデバイスの消費電力モードを移行するよう制御する制御工程と
を備えることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のメモリデバイスを制御するための制御技術に関するものである。
【背景技術】
【０００２】
近年、ＬＳＩの分野では、必要な機能（システム）を１つの半導体チップ上に集積するＳＯＣ（Ｓｙｓｔｅｍ  ｏｎ  ａ  ｃｈｉｐ）と呼ばれる設計手法が一般的となっている。
【０００３】
ＳＯＣによる半導体チップの場合、半導体チップ上に集積される各機能ブロック（Ｉｎｔｅｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）が同時に処理を実行できるようにするために、高速かつ大容量のメモリデバイスが多数搭載されることとなる。具体的には、ＳＤＲＡＭやＤＤＲ  ＳＤＲＡＭ、あるいはＤＤＲ２  ＳＤＲＡＭといったメモリデバイスが多数搭載されることとなる。
【０００４】
一方で、このようにメモリデバイスが多数搭載された半導体チップでは、消費電力の削減が重要な課題となっており、従来より、種々の提案がなされている。
【０００５】
例えば、下記特許文献１（特開平９−１８０４３８号公報）では、メモリデバイスをセルフリフレッシュモードあるいはパワーダウンモードといった低消費電力状態にすることにより、消費電力の削減を実現する制御方法が提案されている。
【０００６】
しかしながら、下記特許文献１の場合、半導体チップ上に搭載された複数のメモリデバイスを一括して制御する構成となっている。このため、上述のメモリデバイスのように、チップ選択（ＣＳ）信号を用いることで、それぞれ独立にアクセスすることが可能なメモリデバイスの場合、消費電力の削減において充分な効果が得られるとは限らない。
【０００７】
このため、多数のメモリデバイスが搭載されている場合には、通常、Ｎｏｐ（Ｎｏ  ｏｐｅｒａｔｉｏｎ）コマンドを用いることにより、個別に低消費電力モードと通常モードとの切り替えを行うこととしている。具体的には、Ｎｏｐコマンドの発行に伴って、ＣＫＥ（クロックイネーブル）のＬｏｗ／Ｈｉｇｈを制御することで、各メモリデバイスごとに低消費電力モードと通常モードとの切り替えを行うこととしている。
【０００８】
図９は、Ｎｏｐコマンドを用いて、メモリデバイスの低消費電力モード／通常モードの切り替えを行う場合のタイミングチャートを簡略化して示したものである。以下、図９を参照しながら、低消費電力モード／通常モードの切り替えについて簡単に説明する。
【０００９】
図９において、９０１はクロック（ＣＬＫ）信号を、９０２はコマンドを示している。また、９０３はチップ選択（ＣＳ）信号を、９０４はクロックイネーブル（ＣＫＥ）信号をそれぞれ示している。
【００１０】
図９の例では、はじめにＣＳ信号９０３をＬｏｗにすることでメモリデバイスをアクティブの状態にし、書き込みコマンドを発行することで、対応する書き込みデータのメモリデバイスへの書き込み処理を行っている。そして、書き込みコマンドを送信した後に、Ｎｏｐコマンドを発行することで、メモリデバイスのＰｏｗｅｒＤｏｗｎを開始させ、低消費電力モードへの移行を実現している。
【００１１】
具体的には、Ｎｏｐコマンドの発行に伴って、ＣＫＥ信号９０４がＬｏｗとなるため、その後の最初のＣＬＫ信号９０１の立ち上がりのタイミング（ｔ１）で、メモリデバイスはＰｏｗｅｒＤｏｗｎを開始し、低消費電力モードへと移行する。
【００１２】
なお、Ｎｏｐコマンド（９１１）が発行された後は、ＣＳ信号９０３をＨｉｇｈにすることで、メモリデバイスは非アクティブの状態となる。非アクティブの状態は、次のコマンドが発行されるまで継続される。
【００１３】
ここで、次の書き込みコマンドを発行するにあたっては、予めメモリデバイスのＰｏｗｅｒＤｏｗｎを終了させ、通常モードへと移行させておく必要がある。つまり、書き込みコマンドを発行するタイミングに対して、所定クロック数分だけ前に、ＣＫＥ信号９０４をＨｉｇｈにしておく必要がある。
【００１４】
このため、ｔ３のタイミングでＣＳ信号９０３を再びＬｏｗにし、メモリデバイスをアクティブの状態にした後、Ｎｏｐコマンドを発行することで、ＣＫＥ信号９０４をＨｉｇｈにする。メモリデバイスでは、ＣＫＥ信号９０４がＨｉｇｈになった後の最初のＣＬＫ信号９０１の立ち上がりのタイミング（ｔ４）でＰｏｗｅｒＤｏｗｎを終了し、通常モードへと移行する。
【００１５】
その後、書き込みコマンドを発行することで、対応する書き込みデータのメモリデバイスへの書き込み処理が行われることとなる。
【００１６】
このように、Ｎｏｐコマンドを用いて低消費電力モードと通常モードとの切り替えが制御されるメモリデバイスでは、ＣＳ信号によりメモリデバイスをアクティブの状態にした後に、Ｎｏｐコマンドを発行することで、切り替えを行っている。
【００１７】
したがって、複数のメモリデバイスが搭載されていた場合にあっては、低消費電力モードと通常モードとの切り替えを行うメモリデバイスそれぞれに対して、Ｎｏｐコマンドを発行することとなる。
【００１８】
図１０は、４つのメモリデバイス（第１乃至第４のメモリデバイス）が搭載された半導体チップにおいて、各メモリデバイスに対して低消費電力モード／通常モードの切り替えを行う場合のタイミングチャートである。
【００１９】
図１０において、ＣＳ０、ＣＫＥ０は、それぞれ第１のメモリデバイスのＣＳ信号及びＣＫＥ信号を示している。同様に、ＣＳ１〜ＣＳ３、ＣＫＥ１〜ＣＫＥ３は、それぞれ第２乃至第３のメモリデバイスのＣＳ信号及びＣＫＥ信号を示している。
【００２０】
図１０の例では、第１乃至第４のメモリデバイスに対して、順次、ＣＳ信号をＬｏｗにしたうえで書き込みコマンドを発行している。このとき、書き込みコマンドの発行の前後において、Ｎｏｐコマンドを発行することで、低消費電力モード／通常モードの切り替えを実現している。
【００２１】
具体的には、第１のメモリデバイスは、ｔ２からｔ６のタイミングで書き込みデータの書き込み処理を行い、その後、ｔ１０のタイミングでＰｏｗｅｒｄｏｗｎを開始する。そして、ｔ２１のタイミングでＰｏｗｅｒＤｏｗｎを終了するまでの間、低消費電力モードとなる。
【００２２】
同様に、第２乃至第４のメモリデバイスにおいても、書き込みデータの書き込み処理と低消費電力モード／通常モードの切り替えが、それぞれメモリデバイス毎に別々のタイミングで実行される。
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】特開平９−１８０４３８号公報
【発明の概要】
【発明が解決しようとする課題】
【００２４】
しかしながら、図１０のタイミングチャートに示すように、Ｎｏｐコマンドを用いて各メモリデバイスごとに低消費電力モードと通常モードとの切り替えを行う構成の場合、メモリデバイスへのアクセス効率の低下が不可避であるという問題がある。
【００２５】
これは、搭載された複数のメモリデバイスそれぞれに対して、個別にＰｏｗｅｒＤｏｗｎの開始／終了を指示するＮｏｐコマンドを発行する必要があるため、その分、書き込みコマンド等の有効コマンドの発行のタイミングが遅れることに起因している。
【００２６】
このように、Ｎｏｐコマンドを用いてメモリデバイスごとに個別に低消費電力モードと通常モードとの切り替えを行う構成とした場合、切り替えの頻度が高くなるにつれ（消費電力の削減量が大きくなるにつれ）、アクセス効率が低下することとなる。
【００２７】
本発明は上記課題に鑑みてなされたものであり、複数のメモリデバイスが搭載された半導体チップにおいて、各メモリデバイスの消費電力を削減しつつ、各メモリデバイスへのアクセス効率を向上させることを目的とする。
【課題を解決するための手段】
【００２８】
上記の目的を達成するために本発明に係る制御装置は以下のような構成を備える。即ち、
複数のメモリデバイスと接続され、アクセス要求に基づいて該複数のメモリデバイスの動作を制御する制御装置であって、
前記複数のメモリデバイスのうち、アクセス要求に基づいてチップ選択信号により選択されたメモリデバイスに対して、該アクセス要求に応じた動作を指示するコマンドを発行する発行手段と、
前記複数のメモリデバイスに対してメモリデバイスごとに個別にクロックイネーブル信号を供給する供給手段と、
前記複数のメモリデバイスのうち、前記発行手段がコマンドを発行しようとしているメモリデバイスを判断する判断手段と、
前記判断手段により判断されたメモリデバイスについての前記クロックイネーブル信号を、該メモリデバイスに前記コマンドを発行しようとしているタイミングに対して、該メモリデバイス固有の時間だけ前のタイミングで有効にし、前記コマンドにより該メモリデバイスにおける動作が完了した後に無効にすることで、他のメモリデバイスに前記コマンドを発行しようとしているタイミングで該メモリデバイスの消費電力モードを変更するよう制御する制御手段とを備える。
【発明の効果】
【００２９】
本発明によれば、複数のメモリデバイスが搭載された半導体チップにおいて、各メモリデバイスの消費電力を削減しつつ、各メモリデバイスへのアクセス効率を向上させることが可能となる。
【図面の簡単な説明】
【００３０】
【図１】本発明の第１の実施形態に係るメモリ制御回路の構成を示す図である。
【図２】該当するチップセレクトに接続されたメモリデバイスに対するアクセスの有無の判断するアクセス管理部１０６における処理の一例を示す図である。
【図３】アクセス管理部１０６におけるＣＫＥ信号の出力制御処理の流れを示すフローチャートである。
【図４】ＣＫＥ駆動部１０９の具体的回路例を示す図である。
【図５】メモリ制御回路１００とメモリデバイスとの接続例を示す図である。
【図６】メモリ制御回路１００を含むチップ５０１において、メモリデバイス５０２−１〜５０２−４を識別するためのメモリマップの一例を示す図である。
【図７】メモリ制御回路１００の動作例を示すタイミングチャートである。
【図８】メモリ制御回路１００の動作例を示すタイミングチャートである。
【図９】Ｎｏｐコマンドを用いて、メモリデバイスの低消費電力モード／通常モードの切り替えを行う場合のタイミングチャートである。
【図１０】４つのメモリデバイスが搭載されている半導体チップにおいて、各メモリデバイスの低消費電力モード／通常モードの切り替えを行う場合のタイミングチャートである。
【発明を実施するための形態】
【００３１】
以下、図面を参照しながら、本発明の好適な実施の形態について説明する。
【００３２】
［第１の実施形態］
＜１．メモリ制御回路の構成＞
図１は、本発明の第１の実施形態に係るメモリ制御回路（制御装置）の構成を示す図である。メモリ制御回路１００は、半導体チップに搭載された複数のメモリデバイスに接続され、アクセス要求に基づいて各メモリデバイスの動作を制御するための回路である。
【００３３】
図１において、１０１は、半導体チップに搭載されメモリデバイスに対してアクセスコマンドを要求するマスタモジュールとバスを介して接続されるバスインタフェース部である。図１の例では、３つの同一あるいは異なる種類のバスを介して接続できるよう、３つのバスインタフェース部が配されている。
【００３４】
１０２はバスインタフェース部１０１が受け取ったメモリデバイスへのアクセスコマンドを調停し、順序化するアービター部である。また、１０３はアービター部１０２で順序化されたメモリデバイスへのアクセスコマンドを一時的に保存するキューバッファ部である。
【００３５】
１０４はデータ制御部である。データ制御部１０４では、アービター部１０２により選択されたメモリデバイスに対するアクセスコマンドが、データ書き込みを要求する書き込みコマンドであった場合に、バスインタフェース部１０１からの書き込みデータの取り込みを行う。また、取り込んだ書き込みデータを、書き込みタイミングになるまで保持する。更に、アクセスコマンドが、メモリデバイスからのデータの読み出しを要求する読み出しコマンドであった場合には、メモリデバイスから読み出されたデータを、当該読み出しコマンドを発行したバスインタフェース部１０１に出力する。
【００３６】
１０５はキューバッファ部１０３に保存されたメモリデバイスへのアクセスコマンドを順に取り出すコマンド選択部である。
【００３７】
１０６はアクセス管理部である。アクセス管理部１０６では、各メモリデバイスに入力されたチップ選択信号のＬｏｗ（有効）／Ｈｉｇｈ（無効）の状態を管理する。また、各メモリデバイスの各バンクの状態を記憶、管理する。更に、クロックイネーブル信号のＬｏｗ（無効）／Ｈｉｇｈ（有効）の制御を行う。
【００３８】
１０７はコマンド生成部であり、コマンド選択部１０５により選択されたメモリデバイスに対するアクセスコマンドを、実際のメモリデバイスにコマンドとして発行する。また、コマンドの発行に際して、対応するチップ選択（ＣＳ）信号のＬｏｗ／Ｈｉｇｈを制御する。
【００３９】
１０８はコマンド生成部１０７が発行したコマンドに応じてメモリデバイスに対して書き込みデータを出力したり、読み出しデータを読み出したりするデータインタフェース部である。
【００４０】
１０９は各メモリデバイスのクロックイネーブル（ＣＫＥ）信号を、アクセス管理部１０６の指示に基づき出力するＣＫＥ駆動部である。
【００４１】
＜２．メモリ制御回路の動作＞
次に、メモリ制御回路１００の動作について図１を参照しながら説明する。
【００４２】
図１において不図示のマスタモジュールより、バスインタフェース部１０１を介してメモリデバイスへのアクセスコマンドを受け取ると、バスインタフェース部１０１では、アクセスコマンドが入力されたことをアービター部１０２に伝達する。
【００４３】
アクセスコマンドが入力されたことを伝達されたアービター部１０２では、複数のバスインタフェース部１０１からのアクセスコマンドを調停し、１つずつ順に受け付けるとともに、当該受け付けたアクセスコマンドの内容をキューバッファ部１０３に出力する。
【００４４】
また、当該受け付けたアクセスコマンドが書き込みを指示するアクセスコマンドであった場合にあっては、同時にデータ制御部１０４に対して書き込みを指示するアクセスコマンドであったことを出力する。これに基づいて、データ制御部１０４では、対応するバスインタフェース部１０１から必要な書き込みデータを取り込み、保持する。
【００４５】
一方、キューバッファ部１０３に保持されたアクセスコマンドは、コマンド選択部１０５により取り出され、コマンド生成部１０７に出力される。コマンド生成部１０７では、アクセス管理部１０６が管理している各メモリデバイスのバンク状態に関する情報を参照し、必要なコマンドをメモリデバイスに発行する。
【００４６】
このとき発行するコマンドが書き込みコマンドである場合には、所定のデータ出力タイミングで書き込みデータが出力ができるように、データインタフェース部１０８に対して指示を行う。一方、発行するコマンドが読み出しコマンドである場合には、読み出しデータの読み出しタイミングをデータインタフェース部１０８に対して指示するとともに、読み出された読み出しデータを戻すべきマスタモジュールを判別するためのデータを出力する。
【００４７】
アクセス管理部１０６では、コマンド生成部１０７が参照する各メモリデバイスのバンク状態に関する情報を、コマンド生成部１０７が発行するコマンドの内容に基づいて更新する。
【００４８】
また、コマンド選択部１０５が選択したアクセスコマンド、コマンド生成部１０７がコマンドを発行しようとしているメモリデバイスとその状態、及びデータインタフェース部１０８がデータの書き込み／読み出し処理を行っているメモリデバイスを把握する。そして、これらの情報に基づいて、それぞれのメモリデバイスについてのアクセスの有無を判断し、判断結果に基づく信号を生成する。なお、各メモリデバイスについてのアクセスの有無についての判断手法の詳細は後述するものとする。
【００４９】
アクセス管理部１０６では、更に、当該判断結果に基づいて、ＣＫＥ駆動部１０９を制御し、各メモリデバイスにＣＫＥ信号を出力する。なお、ＣＫＥ信号の出力制御の詳細については後述する。
【００５０】
＜３．アクセス管理部における各メモリデバイスについてのアクセスの有無の判断手法＞
次に、アクセス管理部１０６における、メモリデバイスについてのアクセスの有無の判断手法について説明する。図２は、各メモリデバイスについてのアクセスの有無を判断するアクセス管理部１０６における処理の一例を示す図である。
【００５１】
図２において、２０１は判断対象のメモリデバイスがアクセスなしの状態（初期の状態）であることを示している。また、２０２は判断対象のメモリデバイスがコマンドの発行待ちの状態であることを示している。更に、２０３は判断対象のメモリデバイスがアクセス有りの状態であることを示している。
【００５２】
コマンド選択部１０５において選択されたコマンドに対応するメモリデバイスが判断対象のメモリデバイスであった場合、アクセス管理部１０６では、コマンド生成部１０７が現在コマンドを発行しようとしているメモリデバイスのバンクの状態を参照する。
【００５３】
このとき、コマンドを発行しようとしているメモリデバイスのバンクの状態がヒットである場合には、状態２０３に移行する。あるいは、判断対象のメモリデバイスの動作モードがＣｌｏｓｅＰａｇｅモードである場合には、状態２０３に移行する。
【００５４】
一方、コマンドを発行しようとしているメモリデバイスの動作モードがＯｐｅｎＰａｇｅモードであり、かつ当該メモリデバイスのバンクの状態がミスヒットである場合には、状態２０２に移行する。
【００５５】
なお、状態２０２に移行した場合には、コマンド生成部１０７が前回発行したコマンドに対応するメモリデバイスに対して、プリチャージコマンドを発行することで、判断対象のメモリデバイスが状態２０３に移行する。
【００５６】
状態２０３は判断対象のメモリデバイスがアクセス有りの状態である。状態２０３から状態２０１への移行条件は、以下の通りである。
・データインタフェース部１０８による書き込みデータの書き込み処理または読み出しデータの読み出し処理が完了している、かつ
・コマンド選択部１０５が次に選択するアクセスコマンドに対応するメモリデバイスが、判断対象のメモリデバイスと異なる。
【００５７】
以上のような条件に基づいて、アクセス管理部１０６では、判断対象のメモリデバイスに対するアクセスの有無を判断する。
【００５８】
＜４．アクセス管理部１０６におけるＣＫＥ信号の出力制御処理の流れ＞
上記条件に基づいて、各メモリデバイスについてのアクセスの有無を判断したアクセス管理部１０６では、当該判断結果に基づいて、ＣＫＥ信号の出力を制御する。
【００５９】
図３は、アクセス管理部１０６におけるＣＫＥ信号の出力制御処理の流れを示すフローチャートである。
【００６０】
ステップＳ３０１では、図２に示す条件に基づいて、ＣＫＥ信号の出力制御の対象のメモリデバイスに対するアクセスの有無を判断する。ステップＳ３０１においてアクセスがないと判断された場合には、そのままの状態で待機となる。一方、ステップＳ３０１においてアクセスがあると判断された場合には、ステップＳ３０２に進み、ＣＫＥ信号をＨｉｇｈにする。
【００６１】
ステップＳ３０２においてＣＫＥ信号をＨｉｇｈにした後、ステップＳ３０３では、デバイス初期化時に設定したモードにおいてメモリデバイス毎に決められた最小クロック数（ｔＣＫＥ）だけ待つ。更に、ステップＳ３０４では、コマンド生成部１０７が対応するメモリデバイスのＣＳ信号をＬｏｗにする。なお、コマンド生成部１０７では、更に対応するメモリデバイスにコマンドを発行する。
【００６２】
ステップＳ３０５では、ステップＳ３０４におけるコマンド発行に基づく、書き込みデータの書き込み処理または読み出しデータの読み出し処理が完了したか否かを判断する。ステップＳ３０５において書き込み処理または読み出し処理が完了していないと判断された場合には、完了するまで待機する。一方、完了したと判断された場合には、ステップＳ３０６に進む。
【００６３】
ステップＳ３０６では、コマンド生成部１０７より発行されたコマンドが書き込みコマンドであるか読み出しコマンドであるかを確認する。ステップＳ３０６において、書き込みコマンドであると判断された場合には、ステップＳ３０７に進み、メモリデバイス固有の待ち時間（ｔＷＴＲもしくはｔＷＲ）に相当するクロック数だけ待ったうえで、ステップＳ３０８に進む。
【００６４】
一方、ステップＳ３０６において、読み出しコマンドであると判断された場合には、ただちにステップＳ３０８に進む。
【００６５】
ステップＳ３０８では、新たなコマンドがあるかどうかを確認する。ステップＳ３０８において、新たなコマンドがあると判断された場合には、ＣＫＥ信号をＨｉｇｈにしたままでステップＳ３０５に戻り、当該新たなコマンドに基づく書き込み処理または読み出し処理が完了するまで待機する。
【００６６】
一方、ステップＳ３０８において、新たなコマンドがないと判断された場合にはステップＳ３０９に進み、ＣＳ信号をＨｉｇｈにする。また、ステップＳ３１０では、ＣＫＥ信号をＬｏｗにする。更に、ＣＫＥ信号をＬｏｗにした後は、ステップＳ３１１において、メモリデバイス毎に予め決められたｔＣＫＥの最小クロック数だけ待った後、ステップＳ３０１に戻り、次のアクセスの有無を判断する。
【００６７】
＜５．ＣＫＥ駆動部の回路構成＞
次に、アクセス管理部１０６により制御されるＣＫＥ駆動部１０９の回路構成について説明する。図４は、図３に示されるフローチャートに基づいてＣＫＥ信号を生成し、実際にメモリデバイスに供給するＣＫＥ駆動部１０９の具体的回路例を示す図である。
【００６８】
図４には、実際にメモリデバイスに供給されるクロック（ＣＫおよびその論理反転信号ＣＫ＃とＣＫＥ）との位相関係がわかるように、ＣＫおよびＣＫ＃信号の出力バッファも合わせて図示してある。
【００６９】
図４にて４０１はＤＦＦ、４０２はインバータ回路、４０３はＣＫＥ駆動部１０９外部に信号を出力するＩＯバッファである。
【００７０】
＜６．メモリ制御回路の接続例＞
次に、半導体チップ上におけるメモリ制御回路１００とメモリデバイスとの接続例について説明する。
【００７１】
図５は、メモリ制御回路１００とメモリデバイスとの接続例を示す図である。図５において、５０１はメモリ制御回路１００を含むチップであり、５０２−１〜５０２−４はメモリデバイスもしくはメモリデバイスユニットである。図５の接続例では、メモリデバイスが４つ接続されている場合について示している。図５に示すように、メモリ制御回路１００は、複数のメモリデバイス（あるいはメモリデバイスユニット）にそれぞれ独立したチップ選択（ＣＳ０−ＣＳ３）信号およびクロックイネーブル（ＣＫＥ０−ＣＫＥ３）信号を入力するように構成されている。
【００７２】
＜７．メモリデバイスの構成＞
次に、メモリデバイス５０２−１〜５０２−４の構成について説明する。図６は、メモリ制御回路１００を含むチップ５０１において、メモリデバイス５０２−１〜５０２−４を識別するためのメモリマップの一例を示す図である。
【００７３】
図６に示すように、メモリデバイス５０２−１〜５０２−４はＤＲＡＭにより構成され、対応するＣＳ０〜ＣＳ３信号がそれぞれＬｏｗになった場合にアクティブとなる。
【００７４】
メモリデバイス５０２−１〜５０２−４には、それぞれアドレス０ｘ８０００＿００００〜０ｘＦＦＦＦ＿ＦＦＦＦが割り当てられている。データインタフェース部１０８では、当該アドレスに基づいて書き込みデータの所定の位置への書き込み処理を行ったり、読み出しデータの所定の位置から読み出し処理を行ったりする。
【００７５】
＜８．メモリ制御回路１００の動作例＞
次に、図５に示す接続例のもとで各メモリデバイスに対するアクセスコマンドが要求された場合のメモリ制御回路１００における動作例について説明する。図７は、図５に示す接続例のもとで、各メモリデバイスに対するアクセスコマンドが要求された場合のメモリ制御回路１００の動作例を示すタイミングチャートである。
【００７６】
図７において、７０１はクロック（ＣＬＫ）信号であり、７０２はコマンドである。また、７０３、７０５、７０７、７０９はそれぞれメモリデバイス５０２−１〜５０２−４のチップ選択（ＣＳ）信号であり、７０４、７０６、７０８、７１０はそれぞれメモリデバイス５０２−１〜５０２−４のクロックイネーブル（ＣＫＥ）信号である。
【００７７】
なお、図７の例は、メモリデバイス５０２−１〜５０２−４に対して書き込みを指示するアクセスコマンドが順次要求された場合を示している。
【００７８】
メモリ制御回路１００では、はじめにメモリデバイス５０２−１に対する書き込みデータの書き込み処理を行うべく、ｔ０及びｔ２のタイミングでＣＳ０信号７０３をＬｏｗにすることで、メモリデバイス５０２−１をアクティブにする。そして、コマンド生成部１０７による書き込みコマンドの発行に従って、データ制御部１０４が対応する書き込みデータをメモリデバイス５０２−１に書き込む（ｔ２〜ｔ６）。
【００７９】
なお、書き込みコマンドは８ビートから構成され、メモリ制御回路１００では、当該書き込みコマンドを４ビートの書き込みコマンドに分割して、連続して出力するように構成されているものとする。
【００８０】
ｔ６のタイミングでメモリデバイス５０２−１への書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＴＲにより定義されたクロック数）が経過した後、ＣＫＥ０信号をＬｏｗにする。これにより、メモリデバイス５０２−１では、ＣＫＥ０信号がＬｏｗになった後の最初のクロック信号の立ち上がりのタイミングでＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【００８１】
続いて、メモリデバイス５０２−２への書き込みデータの書き込みを行うべく、コマンド生成部１０７では、メモリデバイス５０２−１への書き込みデータの書き込み処理と並行して、ｔ５のタイミングでＣＳ１信号７０５をＬｏｗにする。なお、ＣＳ１信号７０５をＬｏｗにするに際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ１信号をＨｉｇｈにしておく。
【００８２】
ＣＳ１信号７０５をＬｏｗにすることで、メモリデバイス５０２−２がアクティブになるため、コマンド生成部１０７による書き込みコマンドの発行に従って、対応する書き込みデータがメモリデバイス５０２−２に書き込まれることとなる（ｔ７〜ｔ１１）。
【００８３】
なお、メモリデバイス５０２−２に対する書き込みコマンドも８ビートから構成され、メモリ制御回路１００では、当該書き込みコマンドを４ビートの書き込みコマンドに分割して、連続して出力するように構成されているものとする。
【００８４】
ｔ１１のタイミングでメモリデバイス５０２−２への書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＴＲにより定義されたクロック数）が経過した後、ＣＫＥ１信号をＬｏｗにする。これにより、メモリデバイス５０２−２では、ＣＫＥ１信号がＬｏｗになった後の最初のクロック信号の立ち上がりのタイミングでＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【００８５】
続いて、メモリデバイス５０２−３への書き込みデータの書き込みを行うべく、メモリデバイス５０２−２への書き込みデータの書き込み処理と並行して、コマンド生成部１０７では、ｔ１０のタイミングでＣＳ２信号７０５をＬｏｗにする。なお、ＣＳ２信号７０５をＬｏｗにするに際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ２信号をＨｉｇｈにしておく。
【００８６】
ＣＳ２信号７０５をＬｏｗにすることで、メモリデバイス５０２−３がアクティブになるため、コマンド生成部１０７による書き込みコマンドの発行に従って、対応する書き込みデータがメモリデバイス５０２−３に書き込まれることとなる（ｔ１２〜ｔ１６）。
【００８７】
なお、メモリデバイス５０２−３に対する書き込みコマンドも８ビートから構成され、メモリ制御回路１００では、当該書き込みコマンドを４ビートの書き込みコマンドに分割して、連続して出力するように構成されているものとする。
【００８８】
ｔ１２のタイミングでメモリデバイス５０２−３への書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＴＲにより定義されたクロック数）が経過した後、ＣＫＥ２信号をＬｏｗにする。これにより、メモリデバイス５０２−３では、ＣＫＥ２信号がＬｏｗになった後の最初のクロック信号の立ち上がりのタイミングでＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【００８９】
続いてメモリデバイス５０２−４への書き込みデータの書き込みを行うべく、メモリデバイス５０２−３への書き込みデータの書き込み処理と並行して、コマンド生成部１０７では、ｔ１５のタイミングでＣＳ３信号７０５をＬｏｗにする。なお、ＣＳ３信号７０５をＬｏｗにするに際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ３信号をＨｉｇｈにしておく。
【００９０】
ＣＳ３信号７０５をＬｏｗにすることで、メモリデバイス５０２−４がアクティブになるため、書き込みコマンドを発行することで、対応する書き込みデータがメモリデバイス５０２−４に書き込まれることとなる（ｔ１７〜ｔ２１）。
【００９１】
なお、メモリデバイス５０２−４に対する書き込みコマンドも８ビートから構成され、メモリ制御回路１００では、当該書き込みコマンドを４ビートの書き込みコマンドに分割して、連続して出力するように構成されているものとする。
【００９２】
ｔ２１のタイミングでメモリデバイス５０２−４への書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＴＲにより定義されたクロック数）が経過した後、ＣＫＥ３信号をＬｏｗにする。これにより、メモリデバイス５０２−４では、ＣＫＥ３信号がＬｏｗになった後の最初のクロック信号の立ち上がりのタイミングでＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【００９３】
続いてメモリデバイス５０２−１への書き込みデータの書き込みを行うべく、メモリデバイス５０２−４への書き込みデータの書き込み処理と並行して、コマンド生成部１０７では、ｔ２０のタイミングでＣＳ０信号７０１をＬｏｗにする。なお、ＣＳ０信号７０１をＬｏｗにするに際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ０信号をＨｉｇｈにしておく。
【００９４】
以下、ｔ０のタイミングでメモリデバイス５０２−１に対して行った書き込みデータの書き込み処理と同様の処理により、書き込みデータの書き込み処理を行う。
【００９５】
このように、所定のメモリデバイスへの書き込みコマンドの発行が完了し、次のメモリデバイスへの書き込みコマンドの発行を行うにあたっては、予めｔＣＫＥにより定義されたクロック数分だけ前に当該次のメモリデバイスのＣＫＥ信号をＨｉｇｈにしておく。
【００９６】
これにより、当該次のメモリデバイスへの書き込みコマンドの発行を行う際には、当該次のメモリデバイスは、ＰｏｗｅｒＤｏｗｎが終了し低消費電力モードから通常モードに復帰した状態となっている。
【００９７】
この結果、所定のメモリデバイスへの書き込みデータの書き込み処理と並行して、次のメモリデバイスへの書き込みコマンドの発行を行うことが可能となる。
【００９８】
また、所定のメモリデバイスへの書き込みデータの書き込み処理が完了した後は、ｔＷＴＲにより定義されたクロック数が経過した後に、当該所定のメモリデバイスのＣＫＥ信号をＬｏｗにする。
【００９９】
これにより、当該所定のメモリデバイスはＰｏｗｅｒＤｏｗｎが開始し通常モードから低消費電力モードに移行することとなる。
【０１００】
この結果、所定のメモリデバイスの低消費電力モードへの移行と並行して、次のメモリデバイスへの書き込みコマンドの発行を行うことが可能となる。
【０１０１】
つまり、従来のように、Ｎｏｐコマンドを用いて低消費電力モードと通常モードとの切り替えを行っていた場合と比べてコマンドの発行回数が減るため、メモリデバイスへのアクセス効率を向上させることが可能となる。
【０１０２】
以上の説明から明らかなように、本実施形態によれば、複数のメモリデバイスが搭載された半導体チップにおいて、各メモリデバイスの消費電力を削減しつつ、各メモリデバイスへのアクセス効率を向上させることが可能となる。
【０１０３】
［第２の実施形態］
上記第１の実施形態では、いわゆるメモリデバイスのオープンページモードを用い、デバイスアクセスは全てヒットしているという前提での動作例について説明した。しかしながら、本発明は、いわゆるメモリデバイスのクローズページモードを用いた場合においても同様に適用可能である。以下、図８を参照しながら、メモリデバイスのクローズページモードを用いた場合のメモリ制御回路１００の動作例について説明する。
【０１０４】
なお、図８はクローズページモードでメモリデバイスを用いた場合のメモリ制御回路１００の動作例を示すタイミングチャートであり、図７に示すタイミングチャートと、基本的な前提条件は同じである。ただし、ｔＷＲ＝３であること、及び書き込みコマンドが８ビートのアクセスコマンドをそのまま出力する点については、図７の前提条件と異なっている。
【０１０５】
図８に示すように、コマンド生成部１０７では、ｔ３のタイミングでメモリデバイス５０２−１に対して書き込みコマンドを発行すべく、所定のクロック数（ＣＬにより定義されたクロック数）分だけ前にアクティベートコマンド（ＡＣＴ）を発行する。すなわち、ｔ０のタイミングでＡＣＴを発行する。
【０１０６】
なお、このとき発行される書き込みコマンドは、書き込みデータの書き込み処理が完了した後に、自動的にページをクローズさせることができるＷｒｉｔｅ  ｗｉｔｈ  Ａｕｔｏ  Ｐｒｅｃｈａｒｇｅコマンド（ＷｒＡ）が用いられるものとする。
【０１０７】
ｔ９のタイミングでメモリデバイス５０２−１に対する書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＲにより定義されたクロック数）が経過した後、ＣＫＥ０信号をＬｏｗにする。これにより、メモリデバイス５０２−１のＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【０１０８】
メモリデバイス５０２−１への書き込みデータの書き込み処理と並行してメモリデバイス５０２−２に対する書き込みコマンドを発行すべく、コマンド生成部１０７では、所定のクロック数（ＣＬにより定義されたクロック数）分だけ前にＡＣＴを発行する。すなわち、ｔ５のタイミングでＡＣＴを発行する。
【０１０９】
なお、アクティベートコマンド（ＡＣＴ）の発行に際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ１信号をＨｉｇｈにしておくものとする。これにより、メモリデバイス５０２−２のＰｏｗｅｒＤｏｗｎが終了し、メモリデバイス５０２−２は低消費電力モードから通常モードへと復帰することとなる。
【０１１０】
ｔ８のタイミングでメモリデバイス５０２−２に対する書き込みコマンドが発行されると、メモリデバイス５０２−２への書き込みデータの書き込み処理が実行される（ｔ１０〜ｔ１３）。
【０１１１】
ｔ１３のタイミングでメモリデバイス５０２−２に対する書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＲにより定義されたクロック数）が経過した後、ＣＫＥ１信号をＬｏｗにする。これにより、メモリデバイス５０２−２のＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【０１１２】
メモリデバイス５０２−１への書き込みデータの書き込み処理と並行してメモリデバイス５０２−３に対する書き込みコマンドを発行すべく、コマンド生成部１０７では、所定のクロック数（ＣＬにより定義されたクロック数）分だけ前にＡＣＴを発行する。すなわち、ｔ１０のタイミングでＡＣＴを発行する。
【０１１３】
なお、アクティベートコマンド（ＡＣＴ）の発行に際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ２信号をＨｉｇｈにしておく。これにより、メモリデバイス５０２−３のＰｏｗｅｒＤｏｗｎが終了し、メモリデバイス５０２−３は低消費電力モードから通常モードへと復帰することとなる。
【０１１４】
ｔ１３のタイミングでメモリデバイス５０２−３に対する書き込みコマンドが発行されると、メモリデバイス５０２−３への書き込みデータの書き込み処理が実行される（ｔ１５〜ｔ１９）。
【０１１５】
ｔ１９のタイミングでメモリデバイス５０２−３に対する書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＲにより定義されたクロック数）が経過した後、ＣＫＥ２信号をＬｏｗにする。これにより、メモリデバイス５０２−３のＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【０１１６】
メモリデバイス５０２−３への書き込みデータの書き込み処理と並行してメモリデバイス５０２−４に対する書き込みコマンドを発行すべく、コマンド生成部１０７では、所定のクロック数（ＣＬにより定義されたクロック数）分だけ前にＡＣＴを発行する。すなわち、ｔ１５のタイミングでＡＣＴを発行する。
【０１１７】
なお、アクティベートコマンド（ＡＣＴ）の発行に際しては、所定のクロック数（ｔＣＫＥにより定義されたクロック数）分だけ前に、ＣＫＥ３信号をＨｉｇｈにしておく。これにより、メモリデバイス５０２−４のＰｏｗｅｒＤｏｗｎが終了し、メモリデバイス５０２−４は低消費電力モードから通常モードへと復帰することとなる。
【０１１８】
ｔ１８のタイミングでメモリデバイス５０２−４に対する書き込みコマンドが発行されると、メモリデバイス５０２−４への書き込みデータの書き込み処理が実行される（ｔ２０〜ｔ２４）。
【０１１９】
ｔ２４のタイミングでメモリデバイス５０２−４に対する書き込みデータの書き込み処理が完了すると、所定のクロック数（ｔＷＲにより定義されたクロック数）が経過した後、ＣＫＥ３信号をＬｏｗにする。これにより、メモリデバイス５０２−４のＰｏｗｅｒＤｏｗｎが開始され、低消費電力モードに移行する。
【０１２０】
このように、所定のメモリデバイスへの書き込みコマンドの発行が完了し、次のメモリデバイスへの書き込みコマンドの発行を行うにあたっては、予めＣＬにより定義されたクロック数分だけ前に、ＡＣＴコマンドを発行する。更に、ＡＣＴコマンドの発行に際しては、予めｔＣＫＥにより定義されたクロック数分だけ前に、当該次のメモリデバイスのＣＫＥ信号をＨｉｇｈにしておく。
【０１２１】
これにより、当該次のメモリデバイスへの書き込みコマンドの発行を行う際には、当該次のメモリデバイスは、ＰｏｗｅｒＤｏｗｎを終了し低消費電力モードから通常モードに復帰した状態となっている。
【０１２２】
このような処理を行うことにより、所定のメモリデバイスへの書き込みデータの書き込み処理と並行して、次のメモリデバイスへのＡＣＴコマンド及び書き込みコマンドの発行を行うことが可能となる。
【０１２３】
また、所定のメモリデバイスへの書き込みデータの書き込み処理が完了した後は、ｔＷＲにより定義されたクロック数が経過した後、当該所定のメモリデバイスのＣＫＥ信号をＬｏｗにしておく。
【０１２４】
これにより、当該所定のメモリデバイスのＰｏｗｅｒＤｏｗｎが開始され、通常モードから低消費電力モードに移行することとなる。
【０１２５】
このような処理を行うことにより、所定のメモリデバイスの低消費電力モードへの移行と並行して、次のメモリデバイスへの書き込みコマンドの発行を行うことが可能となる。
【０１２６】
この結果、従来のように、Ｎｏｐコマンドを用いて低消費電力モードと通常モードとの切り替えを行っていた場合と比べてコマンドの発行回数が減るため、メモリデバイスへのアクセス効率を向上させることが可能となる。
【０１２７】
以上の説明から明らかなように、本実施形態によれば、複数のメモリデバイスが搭載された半導体チップにおいて、各メモリデバイスの消費電力を削減しつつ、各メモリデバイスへのアクセス効率を向上させることが可能となる。
【０１２８】
［他の実施形態］
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、該システム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
0005448595.tif 000002
【図２】
0005448595.tif 000003
【図３】
0005448595.tif 000004
【図４】
0005448595.tif 000005
【図５】
0005448595.tif 000006
【図６】
0005448595.tif 000007
【図７】
0005448595.tif 000008
【図８】
0005448595.tif 000009
【図９】
0005448595.tif 000010
【図１０】
0005448595.tif 000011