(57)【要約】【課題】省電力化とアクセス効率の維持とが同時に実現することを目的とする。【解決手段】省電力モードを有する複数メモリデバイスを省電力モードへ投入/省電力モードを解除するメモリ制御回路において、メモリアクセスを最大Ｍ個まで一時的に保持するコマンドキューと、前記コマンドキューのＮ（Ｎは１以上、Ｍ以下）段目までに保持されているメモリアクセスのアクセス対象デバイスの省電力モードを解除する手段とを有することを特徴とするメモリ制御回路等を提供する。【選択図】図１
2010262537.tif 000002
【特許請求の範囲】
【請求項１】
省電力モードを有する複数のメモリデバイスのモードの変更を行うメモリ制御回路において、
メモリアクセスを最大Ｍ個まで保持するコマンドキューと、
前記コマンドキューに保持されているメモリアクセスのアクセス対象デバイスの省電力モードを解除する手段とを有することを特徴とするメモリ制御回路。
【請求項２】
前記コマンドキューのＮ段目のアクセスまでのアクセスに要する時間が省電力モードを解除したメモリデバイスに対して次のアクセスを発行可能となるまでの時間を超えないことを特徴とする請求項１に記載のメモリ制御回路。
【請求項３】
前記コマンドキューのＮ段目の数値を外部から設定可能であることを特徴とする請求項１に記載のメモリ制御回路。
【請求項４】
前記メモリデバイスに対し省電力モードを解除してからアクセス発行が可能となるまでの時間を設定する手段と、
前記設定された時間と、コマンドキューに保持されたアクセスの発行に要する時間とを算出する手段とを有し、
前記コマンドキューのＮ段目の数値を決定し省電力モードの解除を行うことを特徴とする請求項１に記載のメモリ制御回路。
【請求項５】
前記メモリデバイスがＤＲＡＭデバイスであることを特徴とする請求項１に記載のメモリ制御回路。
【請求項６】
前記省電力モードとはＤＲＡＭデバイスのセルフリフレッシュモードであることを特徴とする請求項１に記載のメモリ制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のＤＲＡＭデバイスを制御可能なメモリ制御回路におけるＤＲＡＭデバイスの省電力制御に関するものである。
【背景技術】
【０００２】
近年のシステムＬＳＩ（ＳＯＣ）化はチップ上にＣＰＵ以外にも多数のＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ）を搭載し高機能化が進んでいる。また、個々のＩＰが同時にデータ処理を行おうとするためＳＯＣと同時にシステム基板上に搭載されるメモリデバイスも高速、大容量のものが多数必要となってきている。この要求を満たすため、昨今ではＳＤＲＡＭデバイスがメモリデバイスとして用いられているが、さらに高速アクセスのためにはＤＤＲ−ＳＤＲＡＭあるいはＤＤＲ２−ＳＤＲＡＭといった高速なメモリデバイスが複数個用いられている。
【０００３】
このようなシステム、特にバッテリー駆動を前提とするシステムにおいては、システム全体での消費電力が無視できなくなってきており、特にＤＲＡＭを多数使用することからＤＲＡＭの消費電力削減は重要な課題となってきている。
【０００４】
この解決方法として、特許文献１に開示される技術が知られている。特許文献１に開示される技術では、ＤＲＡＭをセルフリフレッシュモードにして、消費電力を抑えることが行われていた。
【０００５】
図４に従来のメモリ制御回路の構成図を示す。図４において、２００は従来のメモリ制御回路である。２０１は図示しないＤＲＡＭをセルフリフレッシュに投入することを指示するためのレジスタである。２０２は図示しないＤＭＡＣ等の外部モジュールによるメモリアクセスを受信する回路である。２０３はレジスタ２０１、アクセス受信回路２０２からの要求により、ＤＲＡＭにコマンドを発行するコマンド発行回路である。
【０００６】
図５は図４に示すメモリ制御回路の動作を示すタイミングチャートであり、この図５を参照しつつ、ＤＲＡＭを通常モードから省電力モードに設定し、さらに、省電力モードを解除してＤＲＡＭにアクセスを実行させる場合の動作を説明する。
【０００７】
通常モード時、アクセス受信回路２０２がＤＭＡＣからのメモリアクセスを受信し、コマンド発行回路２０３にアクセス要求信号accessをアサートする（ｔ２）。コマンド発行回路２０３は前記access信号のアサートに応じてＤＲＡＭに対して読み出しや書き込みのコマンドを発行する（ｔ３）。通常モードから省電力モードにモード変更するために、ＣＰＵはレジスタ２０１に”１”を書き込み、レジスタ２０１は省電力モードへの移行要求信号lowpをアサートする（ｔ５）。コマンド発行回路２０３は前記lowp信号のアサートに応じてＤＲＡＭに対して省電力モード移行のコマンドを発行する（ｔ６）。アクセス受信回路２０２がＤＭＡＣからのメモリアクセスを受信し、コマンド発行回路２０３にアクセス要求信号accessをアサートする（ｔ９）。レジスタ２０１は前記access信号のアサートに応じてlowp信号をディアサートする（ｔ１０）。コマンド発行回路２０３は前記lowp信号のディアサートに応じてＤＲＡＭに対してセルフリフレッシュ解除のコマンドを発行する（ｔ１０）。コマンド発行回路２０３はｔ９でアサートされたaccess信号のアサートを保持し、セルフリフレッシュ解除からコマンド発行可能となるまでの時間を待ってからＤＲＡＭに対して読み出しや書き込みのコマンドを発行する（ｔ１３）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−３０２４６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、従来のメモリ制御回路では大容量メモリのための複数のチップ選択信号を有し、複数のデバイスが独立にアクセスされるよう用いられたシステムでのＤＲＡＭデバイスの省電力制御としては不十分であった。
【００１０】
また、外部のＤＭＡＣ等によるアクセスに応じて省電力モードの解除が行われていた。これは、メモリ制御回路が複数アクセスを一時的に保持するコマンドキューを有する場合、省電力モードであるメモリデバイスに対するアクセスがコマンドキューに登録されるとアクセス対象となるデバイスの省電力モードを解除する。そのため、省電力モードの解除から前記アクセスが発行可能となるまでの間は前記メモリデバイスを省電力モードにしておくことができるにも関わらず、電力を消費しており、省電力モードを解除するタイミングが最適化されない。
【００１１】
そこで、本発明の目的は、複数メモリデバイスに接続されるメモリ制御回路にて、省電力モード解除から次のコマンドが発行となるまでの時間に応じて省電力モード解除タイミングを変更可能とすることで省電力化とアクセス効率の維持とを同時に実現することにある。
【課題を解決するための手段】
【００１２】
本発明のメモリ制御回路は、省電力モードを有する複数のメモリデバイスのモードの変更を行うメモリ制御回路において、メモリアクセスを最大Ｍ個まで保持するコマンドキューと、前記コマンドキューに保持されているメモリアクセスのアクセス対象デバイスの省電力モードを解除する手段とを有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、複数メモリデバイスに接続されるメモリ制御回路にて、省電力モード解除から次のコマンドが発行となるまでの時間に応じて省電力モード解除タイミングを変更可能とすることで省電力化とアクセス効率の維持とが同時に実現される。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係るメモリ制御回路の概略構成を示すブロック図である。
【図２】メモリ制御回路の動作状況を示すタイミングチャートである。
【図３】本発明の第２の実施形態に係るメモリ制御回路の概略構成を示すブロック図である。
【図４】従来のメモリ制御回路の概略構成を示すブロック図である。
【図５】従来のメモリ制御回路の動作状況を示すタイミングチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１６】
＜第１の実施形態＞
先ず、図１、図２に基づき、本発明の第１の実施形態に係るメモリ制御回路を説明する。図１は、本発明の第１の実施形態に係るメモリ制御回路の概略構成を示すブロック図である。図１にて、１００はメモリ制御回路である。１０１は各メモリデバイスを省電力モードに投入することを指示するためのレジスタである。１０２は後述するコマンドキューの何段目までに対してアドレスチェックを行うかを設定可能なレジスタである。１０３は図示しないＤＭＡＣ等の外部モジュールによるメモリアクセスを受信する回路である。１０４はアクセス受信回路１０３で受信したアクセスを最大Ｍ個まで保持するコマンドキューである。１０５はコマンドキュー１０４のキュー段数レジスタ１０２で設定された段数（Ｎ）までに保持されているアクセスのアクセス対象デバイスが省電力モードであるかを判断し、省電力モードである場合は該当メモリデバイスの省電力モード解除を要求する回路である。
【００１７】
なお、本実施形態では前記段数Ｎの数値は外部から設定可能である。１０６は各メモリデバイスの動作モードの状態を保持する回路である。１０７はコマンドキュー１０４にアクセスが登録されている場合は、コマンドキュー１０４の先頭に登録されているアクセスをメモリデバイスに対して発行するコマンド発行回路である。コマンド発行回路１０７は省電力モード解除要求回路１０５から指定されたメモリデバイスの省電力モード解除要求を受けて該当メモリデバイスの省電力モードの解除を行う。また、省電力モードレジスタ１０１からメモリデバイスの省電力モード移行要求を受けて該当メモリデバイスを省電力モードに移行させる。９００はメモリ制御回路１００によりアクセスされるメモリであり、メモリデバイス９０１、９０２の２つのメモリデバイスから構成されるものとする。
図２は図１に示すメモリ制御回路の動作を示すタイミングチャートである。
【００１８】
この図２を参照しつつ、メモリデバイス９０２のみを通常モードから省電力モードに設定し、さらに、メモリデバイス９０２の省電力モードを解除してアクセスを実行する場合の動作を説明する。
【００１９】
アクセス受信回路がＤＭＡＣからメモリデバイス９０１への書き込みアクセスを受信し、コマンドキュー１０４に対してpush信号をアサートする（ｔ２、ｔ３、ｔ４、ｔ５、ｔ８）。コマンドキュー１０４は前記push信号のアサートに応じて前記アクセスを最大Ｍ個までキューイングする（ｔ２、ｔ３、ｔ４、ｔ５、ｔ８）。コマンドキュー１０４に登録されるアクセスＡ、Ｂ、Ｃ、Ｄはメモリデバイス９０１に対するもので、Ｅはメモリデバイス９０２に対するものとする。コマンド発行回路１０７はpop信号をアサートすることで前記コマンドキュー１０４の先頭に登録されたアクセスを取り込み、該当メモリデバイスへ書き込みや読み出しのコマンドを発行する（ｔ４、ｔ８、ｔ１２、ｔ１６、ｔ２０）。どのメモリデバイスに対するアクセスであるかを示すcs信号をcommand信号と同時にアサートする。cs信号は“０”であればメモリデバイス９０１に、“１”であればメモリデバイス１に対するコマンドであることを示す。
【００２０】
図示しないＣＰＵ等の外部モジュールから省電力モードレジスタ１０１にどのメモリデバイスを省電力モードに移行させるか設定される（ｔ５）。ここでは前記省電力モードレジスタ１０１はメモリデバイスの数に合わせて２ビットのレジスタであるものとする。また下位ビットがメモリデバイス９０１、上位ビットがメモリデバイス９０２に対する省電力モード移行要求となり、“１”に設定されたビットに対応するメモリデバイスが省電力モードに移行するものとする。図２では前記省電力モードレジスタ１０１が“１０”に設定されるのでメモリデバイス９０２が省電力モードに移行される。省電力モードレジスタ１０１は設定された値はlowp信号として出力される。コマンド発行回路１０７は前記lowp信号の値に応じてどのメモリデバイスを省電力モードに移行させるか判断し、該当するメモリデバイスを省電力モードに変更させる。ここではメモリデバイス９０２を省電力モードへ移行させる（ｔ６）。このとき、コマンド発行回路１０７はメモリデバイス９０２を省電力モードに移行させたことをデバイスステータス保持回路１０６に通知する。デバイスステータス保持回路１０６は各メモリデバイスが通常モードであるか省電力モードであるかを保持する。また、コマンド発行回路１０７はメモリデバイス９０２を省電力モードに移行させたことを省電力モードレジスタ１０１にも通知し、省電力モードレジスタ１０１は省電力モード移行要求をクリアする（ｔ７）。メモリデバイス９０２が省電力モードであってもその他のメモリデバイス９０１へのアクセスは行われる（ｔ８、ｔ１２）。
【００２１】
キュー段数レジスタ１０２にはＣＰＵ等の外部モジュールから“２”が設定される。前記設定値がqnum信号として出力される。省電力モード解除要求回路１０５は前記qnum信号の値に応じて、コマンドキュー１０４の１段目から２段目までに保持されたアクセスが省電力モードのメモリデバイスに対するアクセスであるか否かを判断する。省電力モードである場合は解除要求信号exitをアサートする（ｔ１３）。ここでは、メモリデバイス９０２に対するアクセスである場合にexit信号を“１０”とする。exit信号はlowp信号同様に各ビットが各デバイスに対応しているものとする。コマンド発行回路１０７は前記exit信号のアサートに応じてメモリデバイス９０２の省電力モードを解除するためのコマンドを発行する（ｔ１４）。
【００２２】
ここで、キュー段数レジスタに設定する値は、最短アクセス発行間隔×Ｎ＞省電力モード解除からのウェイトサイクル数、で算出される。例えば、コマンドキュー１０４に登録されるアクセスは最短で４サイクルに1回の割合でメモリデバイスに発行されるものとする。また、メモリデバイスの仕様として省電力モード解除から次のコマンド発行可能となるまでのウェイトサイクル数が６サイクルであるものとする。これらの値を上記条件に当てはめるとＮ≧２となる。アクセスがコマンドキューのＮ段目以上にある間に省電力モードを解除しておくことで、メモリアクセス性能を落とすことなくアクセスの発行が可能となる（ｔ２０）。また、Ｎを最小値に設定することでメモリデバイスを可能な限り省電力モードにしておくことが可能となる（ｔ１０、ｔ１１、ｔ１２、ｔ１３）。
【００２３】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。図１ではキュー段数レジスタ１０１にコマンドキューの段数Ｎを設定していたが、図３のように、省電力モード解除からのウェイトサイクルだけをウェイトサイクルレジスタ５０２に設定し、キュー段数決定回路５０８でキュー段数Ｎを決定する構成でもよい。キュー段数決定回路５０８はコマンドキュー１０４から各アクセスに要する時間と前記ウェイトサイクル数に応じてキュー段数Ｎを、Ｎ段目までのアクセス時間合計＞省電力モード解除からのウェイトサイクル数、で算出する。
【００２４】
ＤＲＡＭデバイスではメモリデバイスへアクセスする際のバースト長が決まっており、コマンドキュー１０４にキューイングされるアクセスが1回のメモリアクセス単位であれば各アクセスに要する時間は一意に決定することができる。
【００２５】
例えば、１回のメモリアクセスが４サイクルであると各アクセスに要する時間は４サイクルとなる。省電力モード解除からのウェイトサイクル数が６であれば、４×Ｎ＞６となり、Ｎ≧２で上記条件が成り立つ。
【００２６】
コマンドキュー１０４にキューイングされるアクセスが複数回のメモリアクセスに分割される可能性がある場合は、各アクセスに要する時間は分割される回数によって決定することができる。
【００２７】
コマンドキュー１０４に各アクセスの分割回数に関わる情報も同時にキューイングしておき、１段目のアクセス所用時間からＮ段目のアクセス所用時間までの合計が省電力モード解除からのウェイトサイクル数を超えるＮの値を算出する。
【００２８】
例えば、１段目のアクセスはメモリアクセス１回分、２段目は２回分、３段目は１回分、４段目は２回分であるとする。１回のメモリアクセスが４サイクルであり省電力モード解除からのウェイトサイクル数が１４であれば、４×１＋４×２＋４×１＞１４となり、Ｎ≧３で上記条件が成り立つ。
【００２９】
キュー段数Ｎを決定する部分以外は、第１の実施形態と同様の動作をするため説明を省略する。
【００３０】
上述した本発明の実施形態を構成する各手段及び各ステップは、コンピュータのＲＡＭやＲＯＭ等に記憶されたプログラムが実行されることによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【符号の説明】
【００３１】
１００：メモリ制御回路、１０１：省電力モードレジスタ、１０２：キュー段数レジスタ、１０３：アクセス受信回路、１０４：コマンドキュー、１０５：省電力モード解除要求回路、１０６：デバイスステータス保持回路、１０７：コマンド発行回路、２００：メモリ制御回路
【図１】
2010262537.tif 000003
【図２】
2010262537.tif 000004
【図３】
2010262537.tif 000005
【図４】
2010262537.tif 000006
【図５】
2010262537.tif 000007