(57)【特許請求の範囲】
【請求項１】
動作を設定するための構成設定レジスタを含む複数のメモリーチップを実装するメモリーモジュールに対するコマンドをキューイングするキューイング部と、
メモリーチップでのアドレスミラーの有無を示すアドレスミラー情報を保持するアドレスミラー設定部と、
前記キューイング部からのコマンド発行要求とコマンドの対象となるメモリーチップを示す対象情報に応じてメモリーチップに対するコマンド生成要求を発行するコマンド発行部と、
前記コマンド発行部が発行したコマンド生成要求に基づき、メモリーチップ向けのコマンドを生成しメモリーチップにコマンドを与えるとともに、アドレスミラーにより配線の入れ替えの対象となる信号線を用いて前記設定構成レジスタを設定する設定コマンドをメモリーチップに対して与えるコマンド生成部と、を含み、
前記コマンド生成部は、アドレスミラーの無いメモリーチップとアドレスミラーの有るメモリーチップに対し同様の前記設定コマンドを与えるとき、前記アドレスミラー情報と前記対象情報に基づき、アドレスミラーの無いメモリーチップに向けて生成した前記設定コマンドを与える処理を行い、アドレスミラーの有るメモリーチップに対しては、アドレスミラーにより入れ替えられた信号線に応じ、前記設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の前記設定コマンドを生成するアドレス変換部を含むことを特徴とするメモリー制御装置。
【請求項２】
前記アドレスミラー設定部は前記メモリーモジュールでのランクのアドレスミラーの有無を示すアドレスミラーランク情報を保持し、
アドレスミラーの有るメモリーチップからなるランクとアドレスミラーの無いメモリーチップからなるランクを含むメモリーモジュールの各ランクに対して同様の前記設定コマンドを生成するとき、
前記キューイング部は、前記対象情報として前記設定コマンドの発行要求にあわせてアドレスミラーの無いランクを示す第１ランク情報とアドレスミラーの有るランクを示す第２ランク情報を前記コマンド発行部に送信し、
前記コマンド発行部は、前記設定コマンドの生成要求とともに、前記第１ランク情報と前記第２ランク情報を前記コマンド生成部に向けて送信し、
前記アドレス変換部は、前記アドレスミラー設定部が保持する情報と前記第１ランク情報と前記第２ランク情報に基づき、入れ替えられた信号線に応じ、アドレスミラーの無いランク用の前記設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の前記設定コマンドを生成することを特徴とする請求項１記載のメモリー制御装置。
【請求項３】
前記キューイング部は、前記設定コマンドの発行要求とともに、前記第１ランク情報と前記第２ランク情報を連続的に前記コマンド発行部に向けて送信し、
前記コマンド発行部は、前記設定コマンドの生成要求を前記コマンド生成部に発行するとともに、前記設定コマンドの生成要求にあわせて前記第１ランク情報に続けて前記第２ランク情報を前記コマンド生成部に送信することを特徴とする請求項２に記載のメモリー制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＤＤＲ３−ＳＤＲＡＭなどのＤＲＡＭを制御するメモリー制御装置に関する。
【背景技術】
【０００２】
従来、画像形成装置などには、プログラムや制御用のデータや画像データを一時的に記憶させるメモリーモジュール（ＲＡＭ）が搭載される。例えば、メモリーモジュールに、データストローブ信号の立ち上がりおよび立ち下がりタイミングの両方で、データの読み書きが行えるＤＤＲ−ＳＤＲＡＭ（ｄｏｕｂｌｅ ｄａｔａ ｒａｔｅ ｓｙｎｃｈｒｏｎｏｕｓｄｙｎａｍｉｃ ｒａｎｄｏｍ ａｃｃｅｓｓｍｅｍｏｒｙ）のようなメモリーチップが搭載される。尚、ＤＤＲ−ＳＤＲＡＭには、ＤＤＲ、ＤＤＲ２、ＤＤＲ３といった複数の規格がある。そして、画像形成装置などのメモリーモジュール（メモリーチップ）を搭載する装置には、読み書きを制御するため、メモリー制御装置が搭載される。
【０００３】
例えば、メモリー制御装置の一例が特許文献１に記載されている。具体的に、特許文献１には、ＤＤＲ−ＳＤＲＡＭにデータの読み書きを行なうメモリーシステムに対し、データストローブ信号を遅延させてディレイ調整を行なうディレイ調整手段を備え、ある特定の値を特定のアドレスに書き込み、ディレイ調整手段のディレイ値を変更しながら、アドレスと同じアドレスへ読み込み、両者の値を比較して認識し、当該認識した読み込み可能範囲の中間値を前記ディレイ調整手段に設定するメモリー制御手段を備えたメモリー制御装置が記載されている。この構成により、ディレイ調整手段の値を変えながら読み込みを行なうことにより、正しい値が読めたか否かによりディレイ調整手段に設定する最適遅延時間を認識し、有効領域内で読み込みデータをラッチしようとする（特許文献１：請求項１、段落［０００８］等参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−０９９３２１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のように、画像形成装置などのメモリーモジュールを搭載する各種装置には、メモリーモジュールやメモリーモジュールに含まれるメモリーチップの動作を制御するメモリー制御装置が設けられることがある。
【０００６】
ここで、例えば、ＤＤＲ３−ＳＤＲＡＭのＤＩＭＭ(Dual Inline Memory Module)では、アドレスミラーの有無がオプションとして選択可能である。アドレスミラーは、ＤＤＲ３の規格において定められている（例えば、ＪＥＤＥＣの規格書JEDEC Standard No. 21C Page 4.20.19-1のPage14等参照。この規格書は、www.jedec.org/sites/default/files/docs/4_20_19R20.pdfなどで閲覧可能）。
【０００７】
メモリーモジュールに搭載された各ＳＤＲＡＭのようなメモリーチップのトレース長（線路長）の整合を取り、メモリーモジュール上での信号の品質を高めるため、アドレスミラーでは、メモリーの信号線を入れ替えて接続することが認められている。言い換えると、メモリーソケットのピンに対し接続すると予め定められたメモリーチップのピンとは異なるピンに信号線を接続するオプションがある（信号線の入れ替え）。例えば、通常（アドレスミラーが無いとき）、メモリーモジュールのコネクター側のＡ３のピンは、ＳＤＲＡＭのＡ３のピンに接続されるが、アドレスミラー有りの場合では、メモリーモジュールのコネクター側のＡ３のピンはＳＤＲＡＭのＡ４ピンに接続する。
【０００８】
通常のメモリーのアクセスでは、メモリーモジュール内部でアドレスミラーによってアドレス線（信号線）の接続に入れ違いがあっても、ｒｅａｄとｗｒｉｔｅでアドレスは１対１で対応している。そのため、ｒｅａｄとｗｒｉｔｅの各処理で、アドレスの入れ違いがあっても、アドレス変換などを行う必要は別段なく、意識する必要はない。一方、メモリーチップの初期化や動作（振る舞い）の設定するための設定コマンド（例えば、ＭＲＳコマンド、ＪＥＤＥＣの規格書JEDEC Standard JESD79-3DのPage24等参照。この規格書は、www.jedec.org/standards-documents/docs/jesd-79-3dなどで閲覧可能）が用意されることがある。そして、アドレスミラーで入れ替えて接続される信号線を用いて各メモリーチップに設定コマンドが与えられることがある。
【０００９】
このようなアドレスそのものに特別な意味を持たせる（アドレスミラーで入れ替えの対象となる信号線を用いる）コマンドでは、メモリー制御装置は、アドレスミラーによるアドレスの入れ違いを意識してコマンドを生成する必要がある。しかし、従来のメモリー制御装置では、アドレスミラーの有るメモリーチップと無いメモリーチップが混在するメモリーモジュールに対し、アドレスそのものに特別な意味を持たせるコマンドを生成するとき、アドレスの入れ違いに対してソフトウェアで対応している。具体的に、ソフトウェアにて、アドレスミラーの有無を確認する処理を行い、アドレスミラーの無いメモリーチップに一旦コマンドを生成し、更に、設定コマンドのアドレスを変更する等の処理を行い、別途、アドレスミラーの有るメモリーチップに対してコマンドを生成している。
【００１０】
このように、アドレスそのものに意味を持たせるコマンドでは、従来、アドレスミラーの有無をソフトウェアで判断し、アドレスミラーの有無に応じて別々にコマンドを生成する（コマンド発行を繰り返す）ので、メモリーチップの初期化や動作設定が複雑になり、コマンド発行完了までに不必要な時間が生ずるという問題がある。
【００１１】
尚、特許文献１に記載された発明では、アドレスミラーやアドレスそのものに特別な意味を持たせるコマンドについての記載はなく、上記の問題を解決できない。
【００１２】
本発明は、上記の課題に鑑み、アドレスミラーの有無が混在するとき、ソフトウェアによる特別な制御による複雑なコマンド発行（コマンド生成）を無くし、アドレスそのものに特別な意味を持たせるコマンドをスムーズに発行、生成して、初期化やメモリーチップの動作設定の単純化を図ることを課題とする。
【課題を解決するための手段】
【００１３】
上記課題を解消するために、請求項１記載のメモリー制御装置は、動作を設定するための構成設定レジスタを含む複数のメモリーチップを実装するメモリーモジュールに対するコマンドをキューイングするキューイング部と、メモリーチップでのアドレスミラーの有無を示すアドレスミラー情報を保持するアドレスミラー設定部と、前記キューイング部からのコマンド発行要求とコマンドの対象となるメモリーチップを示す対象情報に応じてメモリーチップに対するコマンド生成要求を発行するコマンド発行部と、前記コマンド発行部が発行したコマンド生成要求に基づき、メモリーチップ向けのコマンドを生成しメモリーチップにコマンドを与えるとともに、アドレスミラーにより配線の入れ替えの対象となる信号線を用いて前記設定構成レジスタを設定する設定コマンドをメモリーチップに対して与えるコマンド生成部と、を含み、前記コマンド生成部は、アドレスミラーの無いメモリーチップとアドレスミラーの有るメモリーチップに対し同様の前記設定コマンドを与えるとき、前記アドレスミラー情報と前記対象情報に基づき、アドレスミラーの無いメモリーチップに向けて生成した前記設定コマンドを与える処理を行い、アドレスミラーの有るメモリーチップに対しては、アドレスミラーにより入れ替えられた信号線に応じ、前記設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の前記設定コマンドを生成するアドレス変換部を含むこととした。
【００１４】
この構成によれば、コマンド生成部は、アドレスミラーの無いメモリーチップとアドレスミラーの有るメモリーチップに対し同様の設定コマンドを与えるとき、アドレスミラー情報と対象情報に基づき、アドレスミラーの無いメモリーチップに向けて生成した設定コマンドを与える処理を行い、アドレスミラーの有るメモリーチップに対しては、アドレスミラーにより入れ替えられた信号線に応じ、設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の設定コマンドを生成するアドレス変換部を含む。これにより、ハードウェアとしてのアドレス変換部がアドレスミラーの有るメモリーチップに対する設定コマンドのアドレスを自動的に変換する。言い換えると、コマンド発行部は設定コマンドの対象となるメモリーチップを示す対象情報と設定コマンドの生成要求を発行すれば、コマンド生成部は、アドレスミラーの有無に応じた設定コマンドを自動的に生成し、メモリーチップに与える。
【００１５】
このように、コマンド発行部やキューイング部がソフトウェアでアドレスミラーの有無を判断し、別々に（複数回に分けて）アドレスミラーの有無に応じて設定コマンドに関する要求を発したり、設定コマンドのアドレス変換などしたりせずに済み、アドレスミラーの有るメモリーチップとアドレスミラーの無いメモリーチップに関して連続的に設定コマンドを与えることができる。言い換えると、アドレス変換等のソフトウェア処理が不要となるので、アドレスミラーの有るメモリーチップとアドレスミラーの無いメモリーチップに対する設定コマンド発行を自動的に分割して処理することができる。従って、メモリーチップの初期化や動作設定の処理の簡素化を図ることができる。又、メモリーモジュールでアドレスミラーの有るメモリーチップとアドレスミラーが無いメモリーチップが混在していても初期化等の制御フローを共通化することができる。
【００１６】
又、請求項２記載の発明は請求項１の発明において、前記アドレスミラー設定部は前記メモリーモジュールでのランクのアドレスミラーの有無を示すアドレスミラーランク情報を保持し、アドレスミラーの有るメモリーチップからなるランクとアドレスミラーの無いメモリーチップからなるランクを含むメモリーモジュールの各ランクに対して同様の前記設定コマンドを生成するとき、前記キューイング部は、前記対象情報として前記設定コマンドの発行要求にあわせてアドレスミラーの無いランクを示す第１ランク情報とアドレスミラーの有るランクを示す第２ランク情報を前記コマンド発行部に送信し、前記コマンド発行部は、前記設定コマンドの生成要求とともに、前記第１ランク情報と前記第２ランク情報を前記コマンド生成部に向けて送信し、前記アドレス変換部は、前記アドレスミラー設定部が保持する情報と前記第１ランク情報と前記第２ランク情報に基づき、入れ替えられた信号線に応じ、アドレスミラーの無いランク用の前記設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の前記設定コマンドを生成することとした。
【００１７】
この構成によれば、アドレス変換部は、アドレスミラー設定部が保持する情報と第１ランク情報と第２ランク情報に基づき、入れ替えられた信号線に応じ、アドレスミラーの無いランク用の設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ用の設定コマンドを生成する。これにより、アドレスミラーの有無に応じて、各ランクに対するコマンド発行（生成）が自動的に分割処理される。従って、メモリーモジュール内でアドレスミラーの有るランクとアドレスミラーの無いランクが混在していても、ソフトウェアでアドレスミラーの有無を判断して別々に（複数回に分けて）、アドレスミラーの有無に応じて設定コマンドを発行しなくて済み、同一ランクでのメモリーチップの初期化や動作設定の簡素化を図ることができる。
【００１８】
又、請求項３記載の発明は、請求項２の発明において、前記キューイング部は、前記設定コマンドの発行要求とともに、前記第１ランク情報と前記第２ランク情報を連続的に前記コマンド発行部に向けて送信し、前記コマンド発行部は、前記設定コマンドの生成要求を前記コマンド生成部に発行するとともに前記設定コマンドの生成要求にあわせて前記第１ランク情報に続けて前記第２ランク情報を前記コマンド生成部に送信することとした。
【００１９】
この構成によれば、キューイング部は、設定コマンドの発行要求とともに、第１ランク情報と第２ランク情報を連続的にコマンド生成部に向けて送信し、コマンド発行部は、設定コマンドをコマンド生成部に発するとともに、第１ランク情報に続けて第２ランク情報をコマンド生成部に発する。これにより、複数のランクに対して設定コマンドを発行するとき、アドレスミラーの無いランクとアドレスミラーの有るランクのそれぞれのランクに対して、連続的に設定コマンドが発行される。その結果、アドレスミラーの有るランクと無いランクが混在していても、速やかに設定コマンドを発行し、コマンドを生成することができる。
【発明の効果】
【００２０】
本発明の構成によれば、アドレスミラーの有無に起因するソフトウェアによる特別な制御による複雑なコマンド発行を無くすことができる。従って、アドレスそのものに特別な意味を持たせるコマンドをスムーズに発行することができ、初期化やメモリーチップの動作設定の単純化を図ることができる。
【図面の簡単な説明】
【００２１】
【図１】複合機の一例を示すブロック図である。
【図２】メモリー制御装置を含むメモリーシステムの一例を示すブロック図である。
【図３】メモリー制御装置の内部構成の一例を示すブロック図である。
【図４】アドレスミラーを説明するための説明図である。
【図５】各メモリーチップの動作設定コマンドの一例を示す説明図である。
【図６】アドレスミラーの有無が混在していないときのコマンド発行の一例を示すタイミングチャートである。
【図７】アドレスミラーの有無が混在しているときの従来のコマンド発行の一例を示すタイミングチャートである。
【図８】アドレスミラーの有無が混在しているときの本実施形態のメモリー制御装置でのコマンド発行の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００２２】
以下、図１〜図８に基づき、本発明の実施形態を説明する。但し、本実施形態に記載されている構成等の各要素は、発明の範囲を限定せず、単なる説明例にすぎない。
【００２３】
（メモリー制御装置１を搭載した装置の一例）
まず、図１に基づき、実施形態に係るメモリー制御装置１が搭載された装置の一例を説明する。メモリー制御装置１を搭載した装置として複合機１００を例に挙げる。図１は、複合機１００の一例を示すブロック図である。
【００２４】
複合機１００には、スキャンを行う部分として画像読取部１０１が設けられる。例えば、画像読取部１０１は、上面にコンタクトガラスを備え、コンタクトガラスに載置された原稿を読み取る。そして、画像読取部１０１内には、例えば、露光ランプ、ミラー、レンズ、イメージセンサ（例えば、ＣＣＤ）等（いずれも不図示）が配され、原稿への反射光をイメージセンサに導き、イメージセンサの出力をＡ／Ｄ変換し原稿の画像データを得る。
【００２５】
又、複合機１００には、印刷を行う部分（印刷エンジン部分）として給紙部１０２、搬送路１０３、画像形成部１０４、定着部１０５等が設けられる。給紙部１０２は、内部にコピー用紙等、各種、各サイズの用紙を収容する。そして、給紙部１０２は、印刷時、１枚ずつ用紙を搬送路１０３に送り出す。搬送路１０３は、給紙部１０２から供給された用紙を搬送する通路である。搬送路１０３には、例えば、用紙案内用のガイド板や、モータ等からなる駆動機構（不図示）に接続され回転駆動して用紙を搬送する搬送ローラー対などが設けられる。
【００２６】
画像形成部１０４は、画像データに基づき、トナー像を形成し搬送される用紙に転写する。画像形成部１０４は、例えば、感光体ドラム、帯電部、現像部、清掃部等を含む（不図示）。そして、画像形成部１０４は、画像読取部１０１で取得した画像データや、コンピューター２００等から受信した画像データ等に基づき、トナー像を形成する。具体的に、トナー像形成では、帯電部は、感光体ドラムの表面を所定電位に帯電させる。露光部は、画像データにあわせて半導体レーザ装置（不図示）の点消灯を行い、帯電後の感光体ドラムの走査・露光を行う。現像部は、トナーを収容し、トナーを所定の電位に帯電させる。又、現像部は、トナーを飛翔させて静電潜像にトナーを供給する。これにより、静電潜像がトナー像として現像される。清掃部は、感光体ドラムと接し、残トナー等を回収、除去する。
【００２７】
定着部１０５は、例えば、発熱体を内蔵する加熱ローラーと、これに圧接する加圧ローラーとを有する。そして、定着部１０５は、両ローラーの間をトナー像が転写された用紙を通過させ、トナー像を用紙に定着させる。定着の完了により１枚の用紙の印刷が完了し、印刷済用紙は機外に排出される。
【００２８】
又、複合機１００には、外部のコンピューター２００と通信を行う通信部１０６が設けられる。通信部１０６は、コンピューター２００から印刷を行う画像データや印刷での設定データを受信する。
【００２９】
そして、複合機１００には、複合機１００の画像読取部１０１、給紙部１０２、搬送路１０３、画像形成部１０４、定着部１０５、通信部１０６等の動作制御のため、機内に制御部１０が設けられる。
【００３０】
そして、例えば、制御部１０には、ＣＰＵ１０ａや、記憶装置としてのＲＯＭ１０ｂが設けられる。又、複合機１００では、制御部１０に対し、ＨＤＤ１０ｃが通信可能に接続される。ＣＰＵ１０ａは、複合機１００の中央演算処理装置であり、ＲＯＭ１０ｂやＨＤＤ１０ｃから読み出した制御用プログラムやデータに基づき、各種演算等を行い、複合機１００の各部を制御する。ＲＯＭ１０ｂやＨＤＤ１０ｃは、複合機１００の制御プログラム、制御データ、画像データ等の各種データを記憶する。
【００３１】
又、制御部１０にはＲＡＭとしてのメモリーモジュール２が設けられる。メモリーモジュール２は、ＲＯＭ１０ｂやＨＤＤ１０ｃから読み出された制御用プログラムや各種データや、コンピューター２００から通信部１０６が受信したデータや、画像読取部１０１が読み取りにより生成した画像データを記憶することができる。又、制御部１０には、メモリーモジュール２でのデータの読み書きなどを制御するメモリー制御装置１が設けられる。ＣＰＵ１０ａは、メモリーモジュール２に展開されたデータやプログラムに基づき各種処理を行う。
【００３２】
そして、制御部１０は、複合機１００の画像読取部１０１、給紙部１０２、搬送路１０３、画像形成部１０４、定着部１０５、通信部１０６等の各部と接続され、適切に印刷がなされるように、各部の動作を制御する。
【００３３】
（メモリー制御装置１の概要）
次に、図２を用いて、本実施形態に係るメモリー制御装置１の概要を説明する。図２はメモリー制御装置１を含むメモリーシステム３００の一例を示すブロック図である。
【００３４】
メモリーシステム３００は、例えば、メモリー制御装置１やＳＤＲＡＭＩ／Ｆ３やメモリーモジュール２などを含む。
【００３５】
そして、メモリー制御装置１は、バスを介して、ＣＰＵ１０ａやＲＯＭ１０ｂやＨＤＤ１０ｃと接続される。例えば、メモリー制御装置１は、メモリーモジュール２とＣＰＵ１０ａ間のデータのやり取りを制御する。又、メモリー制御装置１はメモリーモジュール２とＲＯＭ１０ｂやＨＤＤ１０ｃとのデータやプログラムの読出や書込を制御する。
【００３６】
図２に示すように、メモリー制御装置１には、ＳＤＲＡＭＩ／Ｆ３が接続される。例えば、ＳＤＲＡＭＩ／Ｆ３は、データバッファやメモリーモジュール２用のソケットを含む。ＳＤＲＡＭＩ／Ｆ３には、メモリーモジュール２が接続される。図２では、メモリーモジュール２が１つ設けられる例を示すが、メモリーモジュール２は２つ以上でもよい。
【００３７】
ＳＤＲＡＭＩ／Ｆ３は、メモリー制御装置１とメモリーモジュール２間のインターフェイスである。ＳＤＲＡＭＩ／Ｆ３は、メモリー制御装置１の制御の下、書き込み対象となるデータをバッファリングする。そして、ＳＤＲＡＭＩ／Ｆ３はメモリーモジュール２にデータ等を書き込む。又、ＳＤＲＡＭＩ／Ｆ３は、メモリーモジュール２から読み出し対象となるデータを読み出してバッファリングし、メモリー制御装置１に出力する。
【００３８】
メモリーモジュール２は、複数のメモリーチップ４を含む。メモリーモジュール２は、制御部１０が設けられる基板上のメモリーモジュール２用ソケット（不図示）に取り付けられる。メモリーモジュール２内のメモリーチップ４は、例えば、ＤＤＲ３のＳＤＲＡＭである。そして、例えば、メモリーモジュール２は、複数のＤＤＲ３のＳＤＲＡＭのメモリーチップ４が配線されつつ装着された基板である。
【００３９】
メモリーモジュール２では、複数のメモリーチップ４を１つの単位として複数のランク５が設けられる。ランク５は、メモリー制御装置１がデータを入出力する単位である。例えば、ランク５の数は、２や４などである。例えば、メモリーモジュール２の表側に配された全メモリーチップ４を一方のランク５とし、メモリーモジュール２の裏側に配された全メモリーチップ４を他方のランク５とすることができる。
【００４０】
又、メモリーモジュール２内の各メモリーチップ４は、構成設定レジスタ６を含む。メモリー制御装置１は、各メモリーチップ４の動作の設定を行うためのコマンドを発する（詳細は後述）。構成設定レジスタ６は、メモリー制御装置１が発した各メモリーチップ４の動作の設定を行うためのコマンドを記憶する。各メモリーチップ４は、構成設定レジスタ６に記憶された設定に基づき動作する。これにより、メモリーチップ４を様々な関数、機能、モードにあわせてプログラミングすることが可能となり、各メモリーチップ４をアプリケーションなどにあわせて動作させることができる。
【００４１】
（メモリー制御装置１の構成）
次に、図３を用いて、実施形態に係るメモリー制御装置１の内部構成を説明する。図３は、メモリー制御装置１の内部構成の一例を示すブロック図である。
【００４２】
メモリー制御装置１は、デバイスマネージャー１１、アービタ（調停部）１２、リフレッシュ部１３、ホストＩ／Ｆ１４、ＯＰＢＩ／Ｆ１５、キューイング部１６（キューバッファ）、コマンド発行部１７（コマンドディスパッチャー）、コマンド生成部１８、ストローブ生成部１９、及びクロック生成部１９１を備える。
【００４３】
デバイスマネージャー１１は、メモリーモジュール２や各メモリーチップ４の管理に関する処理を行う。デバイスマネージャー１１は、例えば、メモリーモジュール２のうち、いずれかのメモリーモジュール２を省電力モードに設定するパワーダウン要求コマンドをアービタ１２に出力する。また、デバイスマネージャー１１は、コマンド発行部１７から状態遷移指令を受ける。又、デバイスマネージャー１１は、各メモリーバンクの状態を遷移させるための種々の要求をコマンド発行部１７に出力する。
【００４４】
アービタ１２は、リフレッシュ部１３からのリフレッシュ要求、ホストＩ／Ｆ１４からのメモリーアクセス要求、ＯＰＢＩ／Ｆ１５からのダイレクトコマンド要求を受け付ける。リフレッシュ部１３は、リフレッシュ要求をアービタ１２に送信する。ホストＩ／Ｆ１４は、ＣＰＵ１０ａからのメモリーアクセス要求を受け付けて、アービタ１２に送信する。また、ホストＩ／Ｆ１４は、ストローブ生成部１９によりメモリーモジュール２から読み出されたデータをＣＰＵ１０ａやＨＤＤ１０ｃ等に出力する。また、ホストＩ／Ｆ１４は、メモリーモジュール２に書き込み対象となるデータをＣＰＵ１０ａやＲＯＭ１０ｂやＨＤＤ１０ｃ等から受け付けて、ストローブ生成部１９に送信する。
【００４５】
ＯＰＢＩ／Ｆ１５（On-chip Peripheral Bus I/F）は、ＣＰＵ１０ａ等からのダイレクトコマンド要求を受け付けアービタ１２に送信する。又、ＯＰＢＩ／Ｆ１５には、各メモリーチップ４でのアドレスミラーの有無を示す情報（アドレスミラー情報）を記憶、保持するアドレスミラー設定部１５１が設けられる（アドレスミラーの詳細は後述）。
【００４６】
アドレスミラー設定部１５１は、例えば、ＣＰＵ１０ａやＲＯＭ１０ｂなどから、各ランク５や各メモリーチップ４のアドレスミラーの有無を示す情報を受け、メモリー制御装置１内の各部が参照できるように保持する。そして、例えば、キューイング部１６やコマンド発行部１７やコマンド生成部１８はアドレスミラー設定部１５１に保持された各メモリーチップ４でのアドレスミラーの有無を示す情報を参照する。
【００４７】
そして、アービタ１２は、これらの要求をトランザクションとして、キューイング部１６に登録する。キューイング部１６は、アービタ１２からのトランザクションを記憶する。
【００４８】
コマンド発行部１７は、デバイスマネージャー１１から出力される種々の要求を受け付けて、これらの要求をディスパッチする。そして、コマンド発行部１７は、ディスパッチした要求に応じたコマンド生成要求をコマンド生成部１８に送信し（発行し）、コマンド生成部１８に各ランク５や各メモリーチップ４に対するコマンドを生成させる。また、コマンド発行部１７は、キューイング部１６から出力されるＲＯＷコマンド要求、ＲＯＷアドレス指定要求、ＣＯＬコマンド要求、及びＣＯＬアドレス指定要求などを読み出す。コマンド発行部１７は、これらの要求をコマンド生成部１８に送信する。
【００４９】
コマンド生成部１８は、コマンド発行部１７から送信されるコマンド生成要求、ＲＯＷコマンド要求、ＲＯＷアドレス指定要求、ＣＯＬコマンド要求、ＣＯＬアドレス指定要求等を受け付ける。そして、コマンド生成部１８は、メモリーモジュール２を制御する制御コマンド等を生成する。
【００５０】
コマンド生成部１８は、生成したコマンドをＳＤＲＡＭＩ／Ｆ３に出力する。例えば、コマンド生成部１８は、ＭＣＳ（Memory Chip Select）＿ｂ、ＲＡＳ（Row Address Strobe）＿ｂ、ＣＡＳ（Column Address Strobe）＿ｂ、ＭＷＥ（Memory Write Enable）＿ｂ、ＢＡ（Bank Address）、ＭＡ（Memory Address）、ＣＫＥ（Clock Enable）の各々の信号をコマンドとしてＳＤＲＡＭＩ／Ｆ３に送信する。又、コマンド生成部１８は、生成したコマンドをストローブ生成部１９に出力する。又、コマンド生成部１８は、制御コマンドをＳＤＲＡＭＩ／Ｆ３に出力すると同時にデータ転送トリガをストローブ生成部１９に出力する。
【００５１】
ストローブ生成部１９は、コマンド生成部１８からのデータ転送トリガに従って、データの書き込み対象となるメモリーモジュール２（メモリーチップ４）にデータを書き込む。又、ストローブ生成部１９は、データの読み込み対象となるメモリーモジュール２（メモリーチップ４）からデータを読み出す。また、ストローブ生成部１９は、ＤＱＯＵＴ（データ信号出力）、ＤＱＩＮ（データ信号入力）、ＤＱＳＯＵＴ（出力用データストローブ信号）、ＤＱＳＩＮ（入力用データストローブ信号）、ＤＭ（Data Mask）等の信号をＳＤＲＡＭＩ／Ｆ３との間で送受信する。
【００５２】
（アドレスミラー）
次に、図４に基づき、本実施形態に係る各メモリーチップ４でのアドレスミラーの有無を説明する。図４は、アドレスミラーを説明するための説明図である。
【００５３】
ＤＤＲ３−ＳＤＲＡＭでは、チップのトレース長（線路長）の整合を取り、メモリーモジュール２上での信号の品質を高めるため、メモリーの信号線（アドレス）を入れ替えて接続することができる。ＤＤＲ３の規格では、入れ替えの対象となる信号線は、図４に示すようにピン名がＡ３〜Ａ８とＢＡ０とＢＡ１の信号線である。
【００５４】
具体的に、図４でのランク０は、配線の入れ替えがなくアドレスミラーがない時のメモリーチップ４に対するピンの接続の関係を示す。言い換えると、図４でのランク０は、通常の配線である。一方、図４でのランク１は、配線を入れ替え、アドレスミラーが有る時のメモリーチップ４に対するピンの接続の関係を示す。例えば、Ａ３の信号線はメモリーチップ４でのＡ４の信号線に接続され、Ａ４の信号線は、メモリーチップ４でのＡ３の信号線に接続される。このように、例えば、ＤＤＲ３のメモリーチップ４では、信号線の入れ替えるアドレスミラーを行うことができる。
【００５５】
（メモリーチップ４の動作設定コマンド）
次に、図５を用いて、本実施形態の各メモリーチップ４の動作設定コマンドの一例を説明する。図５は、各メモリーチップ４の動作設定コマンドの一例を示す説明図である。
【００５６】
ＤＤＲ３−ＳＤＲＡＭでは、データのｒｅａｄやｗｒｉｔｅの他、メモリーチップ４のモードやパラメータ設定のためのコマンドが用意される。このコマンドによりメモリーチップ４（ＳＤＲＡＭチップ）の振る舞いを定義することができる。このコマンドは、ＭＲＳコマンド（設定コマンドに相当）と呼ばれる。
【００５７】
ＤＤＲ３−ＳＤＲＡＭでは、モードレジスタセットがＭＲ０〜ＭＲ３の４種類用意される。例えば、主電源投入時の各メモリーチップ４の初期化をするときや、メモリーチップ４の動作の設定を変更するとき、ＭＲＳコマンドが生成され、ＭＲＳコマンドの対象となるメモリーチップ４に与えられる。例えば、ＭＲＳコマンドは、メモリーモジュール２でのランク５単位で与えられる。そして、ＭＲＳコマンドは、各メモリーチップ４内の構成設定レジスタ６に記憶され、各メモリーチップ４は、ＭＲＳコマンドの指示（内容）に従い動作する。
【００５８】
ＣＰＵ１０ａの指示を受ける等により、キューイング部１６は、ＭＲＳコマンドの対象となるランク５やメモリーチップ４やＭＲＳコマンドのトランザクションを登録する。メモリー制御装置１内のコマンド発行部１７は、キューイング部１６からＭＲＳコマンドの対象となるランク５やメモリーチップ４を示す情報（対象情報）を受けるとともに、設定コマンド発行要求を受ける。そして、コマンド発行部１７は、設定コマンドの対象となるランク５に対し、ＭＲＳコマンドの生成要求を発行する。このＭＲＳコマンド発行の指示を受けたコマンド生成部１８は、設定コマンドの対象となるランク５に対するＭＲＳコマンドを生成する。そして、コマンド生成部１８は、ＭＲＳコマンドの対象とされたランク５（メモリーチップ４）にＭＲＳコマンドを送信する。
【００５９】
そこで、図５を用いて、４種類用意されるモードレジスタセットのうち、ＭＲ０のＭＲＳコマンドを例に挙げて、各ランク５（メモリーチップ４）の動作設定の一例を説明する。
【００６０】
図５に示すように、ＭＲＳコマンドでは、コマンド生成部１８に接続されるＡ０〜Ａ１５と、ＢＡ０〜ＢＡ２の信号線が用いられる。ＭＲ０のＭＲＳコマンドでは、図５に示すＡ０、Ａ１の信号線を用いてバースト長（ＢＬ）を設定することができる（バースト長を８や４などに設定できる）。又、Ａ３の信号線を用いてバーストタイプ（ＢＴ）を設定することができる。又、Ａ２、Ａ４〜Ａ６の信号線を用いてＣＡＳレイテンシ（リードコマンドが有効になってから実際にデータが出力されるまでの遅延サイクル数、ＣＬ）を設定することができる。又、Ａ７の信号線を用いてテストモード（生産者用のテスト用のモード、ＴＭ）を設定することができる。又、Ａ８の信号線を用いてＤＬＬリセット（メモリーチップ４内部のＤＬＬ回路のリセット、ＤＬＬ）を設定することができる。又、Ａ９〜Ａ１１の信号線を用いてライトリカバリ（ＷＲ）を設定することができる。又、Ａ１２の信号線を用いてプリチャージパワーダウン（ＰＰＤ）を設定することができる。尚、ＢＡ０〜ＢＡ２の信号線は、どのモードレジスタセットのＭＲＳコマンドであるかを示すために用いられる。
【００６１】
その他、ＭＲ１〜ＭＲ３のＭＲＳコマンドでは、メモリーチップ４の出力インピーダンスやライトレイテンシや終端抵抗値など、各種の設定を行える（より詳しくは、上述のＪＥＤＥＣの規格書JEDEC Standard JESD79-3D等参照）。
【００６２】
ここで、各ランク５に含まれるメモリーチップ４の動作（振る舞い）を設定するために用いられる信号線（アドレス）のＡ０〜Ａ１５と、ＢＡ０〜ＢＡ２のうち、Ａ３〜Ａ８とＢＡ０とＢＡ１の信号線は、アドレスミラーによって配線の入れ替えがなされることがある。通常のｒｅａｄとｗｒｉｔｅでは、配線の入れ替え（入れ違い）があっても、アドレスは１対１で対応しているので、配線の入れ替えを意識する必要はない。
【００６３】
しかし、ＭＲＳコマンドのようなコマンドは、アドレスそのものに特別な意味を持たせるコマンドである。例えば、アドレスミラーの有るメモリーチップ４とアドレスミラーの無いメモリーチップ４の動作を同様に設定するとき（同じＭＲＳコマンドを与えるとき）、アドレスミラーの無いメモリーチップ４へのＭＲＳコマンドをそのままアドレスミラーの有るメモリーチップ４に与えれば、配線の入れ替えによって、アドレスミラーの無いメモリーチップ４とアドレスミラーの有るメモリーチップ４では、全く設定内容が異なってしまう。
【００６４】
そのため、アドレスミラーの有るメモリーチップ４に対してＭＲＳコマンドを与えるとき配線の入れ替えを考慮してＭＲＳコマンドを生成しなくてはならない。
【００６５】
（自動的なコマンドの分割発行）
次に、図３、図６〜図８を用いて、本実施形態のメモリー制御装置１での自動的なコマンドの分割発行の一例を説明する。図６は、アドレスミラーの有無が混在していないときのコマンド発行の一例を示すタイミングチャートである。図７は、アドレスミラーの有無が混在しているときの従来のコマンド発行の一例を示すタイミングチャートである。図８は、アドレスミラーの有無が混在しているときの本実施形態のメモリー制御装置１でのコマンド発行の一例を示すタイミングチャートである。
【００６６】
まず、図６〜図８において、「ｔｆＲＣｏｍａｎｄ」は、キューイング部１６がコマンド発行部１７に送信するコマンド発行要求を示す。本例では、このコマンド発行要求はＭＲＳコマンドに相当し、このコマンド発行要求に基づき、ＭＲＳコマンドが生成される。図６〜図８での「８００」がＭＲＳコマンド（の内容）を意味する。「ｔｆＲＤｅｖｉｃｅ」は、コマンド発行の対象となるランク５（メモリーチップ４）のリストを示す。尚、本説明では、「ｔｆＲＤｅｖｉｃｅ」の各ビットがメモリーモジュール２でのランク５に対応する。
【００６７】
ここで、ランク５とは、メモリーモジュール２のＳＤＲＡＭからデータを入出力する単位である。図２を用いて説明したように、本実施形態のメモリーモジュール２は、複数のランク５を有する。メモリーモジュール２が物理的には１つのメモリスロットしか占有しないとしても、複数のランク５を有する場合、メモリー制御装置１は、ランク５数分のメモリーモジュール２を搭載した状態と扱う。又、「ｔｆＲＢａｎｋ」は、キューイング部１６がコマンド発行部１７に出力するデコード信号であり、最終的に再エンコードされてメモリーモジュール２に供給される。
【００６８】
又、図６〜図８において、「ｃｄＣｏｍａｎｄ」は、コマンド発行部１７がコマンド生成部１８に送信するコマンド生成要求を示す。本例では、このコマンド生成要求がＭＲＳコマンドに相当し、このコマンド生成要求に基づき、ＭＲＳコマンドが生成される。具体的に図６〜図８での「８００」がＭＲＳコマンド（の内容）を意味する。「ｃｄＤｅｖｉｃｅ」は、コマンド発行部１７がコマンド生成部１８に与える信号であって、コマンドの対象となるランク５（メモリーチップ４）のリストを示す。尚、本説明では、「ｃｄＤｅｖｉｃｅ」も「ｔｆＲＤｅｖｉｃｅ」と同様に、各ビットがメモリーモジュール２でのランク５に対応する。又、「ｃｄＢａｎｋ」は、コマンド発行部１７がコマンド生成部１８に与える信号であって、「ｔｆＲＢａｎｋ」と同様に、コマンド発行部１７がコマンド生成部１８に与えるデコード信号であり、最終的に再エンコードされてメモリーモジュール２に供給される。
【００６９】
［各ランク５でアドレスミラーの有無が混在していないとき］
まず、図６を用いて、ランク５に含まれる各メモリーチップ４で、アドレスミラーの有無が混在していないときのＭＲＳコマンドの発行を説明する。尚、以下の説明では、ランク５に含まれる各メモリーチップ４に同様のＭＲＳコマンドを発行する例を説明する。又、例えば、各ランク５でアドレスミラーの有無が混在していないとき、各ランク５は全てアドレスミラーの無いランク５（メモリーチップ４）のみとなる。
【００７０】
例えば、ＣＰＵ１０ａ等の指示に基づき、キューイング部１６がＭＲＳコマンドをキューイングする。そして、キューイング部１６は、コマンド発行部１７に向けてＭＲＳコマンドのコマンド発行要求を行う（例えば、図６でのｔｆＲＣｏｍａｎｄの「８００」。図６でのＴ１の時点）。又、キューイング部１６は、ＭＲＳコマンドのコマンド発行要求にあわせて、ＭＲＳコマンドの対象とするランク５を示す情報としてｔｆＲＤｅｖｉｃｅ（図６での「ｆ」、対象情報）や、ｔｆＲＢａｎｋ（図６での「４」）を送信する（図６でのＴ１の時点）。
【００７１】
ランク５に含まれる各メモリーチップ４でアドレスミラーの有無が混在していなければ、配線の入れ替えを考慮しなくて良い。そのため、キューイング部１６からのコマンド発行要求を受け、コマンド発行部１７は、コマンド生成部１８に向けてＭＲＳコマンドのコマンド生成要求を発行する（例えば、図６でのｃｄＣｏｍａｎｄの「８００」。図６でのＴ２からＴ３の区間）。又、コマンド発行部１７は、ＭＲＳコマンドのコマンド生成要求にあわせて、ＭＲＳコマンドの対象とするランク５を示す情報としてｃｄＤｅｖｉｃｅ（図６での「ｆ」、対象情報）やｃｄＢａｎｋ（図６での「４」をコマンド生成部１８に送信する（図６でのＴ２からＴ３の区間）。このように、アドレスミラーの有無が混在していなければ、キューイング部１６やコマンド発行部１７は、ＭＲＳコマンドに関する要求を、全てのランク５（全てのメモリーチップ４）について１回発行すれば済む。
【００７２】
そして、コマンド発行部１７から発せられたＭＲＳコマンドに応じ、コマンド生成部１８は、メモリーモジュール２に与えるためコマンド（信号）を生成する。そして、コマンド生成部１８は、生成したコマンド（信号）をＳＤＲＡＭＩ／Ｆ３（メモリーモジュール２）に向けて送信する（与える）。その結果、メモリーモジュール２は、図６の時点Ｔ０以降、順次、ＭＲＳコマンドを受信する。
【００７３】
［各ランク５でアドレスミラーの有無が混在しているとき（従来の参考例）］
次に、図７を用いて、ランク５に含まれる各メモリーチップ４で、アドレスミラーの有無が混在しているときの従来のＭＲＳコマンドの発行を説明する。尚、以下の説明では、ランク５に含まれる各メモリーチップ４に同様のＭＲＳコマンドを発行する例を説明する。
【００７４】
まず、ＣＰＵ１０ａ等の指示に基づき、キューイング部１６がＭＲＳコマンドをキューイングする。そして、キューイング部１６は、コマンド発行部１７に向けてＭＲＳコマンドのコマンド発行要求を行う（例えば、図７でのｔｆＲＣｏｍａｎｄの「８００」。図７でのＴ３の時点）。又、キューイング部１６は、ＭＲＳコマンドの発行要求にあわせて、ＭＲＳコマンドの対象とするランク５を示す情報としてｔｆＲＤｅｖｉｃｅ（図７での「ｆ」）や、ｔｆＲＢａｎｋ（図７での「４」）を送信する（図７でのＴ４の時点）。
【００７５】
ランク５に含まれる各メモリーチップ４でアドレスミラーの有無が混在していれば、メモリーチップ４の動作の設定を確実に行うには、配線の入れ替えを考慮しなくてはならない。そこで、従来では、ＭＲＳコマンドに関し要求を発するとき、コマンド発行部１７やキューイング部１６は、アドレスミラー設定部１５１の内容（アドレスミラー情報）を確認し、ＭＲＳコマンドが対象とするランク５でアドレスミラーの有無が混在するか否かを確認する処理を行う。混在するとき、コマンド発行部１７やキューイング部１６は、アドレスミラーの無いランク５（メモリーチップ４）とアドレスミラーの有るランク５（メモリーチップ４）を区別する処理を行う。
【００７６】
そして、例えば、コマンド発行部１７は、キューイング部１６からのコマンド発行要求の対象となる複数のランク５（メモリーチップ４）のうち、アドレスミラーの無いランク５（メモリーチップ４）に対してのみ、あるいは、アドレスミラーの有るランク５（メモリーチップ４）に対してのみに、ＭＲＳコマンドのコマンド生成要求をコマンド生成部１８に向けて発行する。
【００７７】
例えば、コマンド発行部１７は、コマンド生成部１８に向けてＭＲＳコマンドのコマンド生成要求を発行する（例えば、図７でのｃｄＣｏｍａｎｄの「８００」。図７でのＴ５からＴ６の区間）。又、コマンド発行部１７は、ＭＲＳコマンドのコマンド生成要求にあわせて、ＭＲＳコマンドの対象とするランク５を示す情報としてｃｄＤｅｖｉｃｅ（図７での「ｄ」、アドレスミラーの無い又は有るランクの何れか一方を示す）やｃｄＢａｎｋ（図７での「４」を）をコマンド発行部１７に送信する（図７でのＴ５からＴ６の区間）。
【００７８】
そして、例えば、コマンド発行部１７は、キューイング部１６にＭＲＳコマンドのコマンド発行要求の対象としたランク５のうち、ＭＲＳコマンドの未発行のランク５向けのＭＲＳコマンド発行要求を用意させる。言い換えると、コマンド発行部１７は、ＭＲＳコマンドの未発行のランク５向けのＭＲＳコマンドのトランザクションをキューイング部１６に新たに登録させる。例えば、コマンド発行部１７が、ＭＲＳコマンドの対象とするランク５のうち、先のコマンド生成要求でアドレスミラーの有るランク５を外したのであれば（ＭＲＳコマンドの未発行のランク５がアドレスミラーの有るランク５であれば）、キューイング部１６は、アドレスミラーによる配線入れ替えを考慮し、先に発したＭＲＳコマンド（アドレスミラーの無いランク５向けのＭＲＳコマンド）のコマンド発行要求のアドレスを入れ替えたＭＲＳコマンドのトランザクションを新たに用意する処理を行う。
【００７９】
これらの処理が完了した後、キューイング部１６は、コマンド発行部１７に向けて、ＭＲＳコマンドの未発行のランク５に対するコマンド発行要求を行う。具体的に、キューイング部１６は、コマンド発行部１７に向けてＭＲＳコマンドのアドレスの入れ替えを考慮した新たなＭＲＳコマンドのコマンド発行要求を行う（例えば、図７でのｔｆＲＣｏｍａｎｄの「８００’」。「８００’」は、コマンドミラーによる信号線の入れ替えを考慮した（アドレス変換後）のＭＲＳコマンド。図７でのＴ７の時点）。又、キューイング部１６は、ＭＲＳコマンドの発行要求にあわせ、ＭＲＳコマンドの対象とする未発行のランク５を示す情報としてｔｆＲＤｅｖｉｃｅ（図７での「２」）やｔｆＲＢａｎｋ（図７での「４」）を送信する（図７でのＴ７の時点）。
【００８０】
そして、このコマンド発行要求を受け、例えば、コマンド発行部１７は、ＭＲＳコマンドのコマンド生成要求をコマンド生成部１８に発行する（図７でのｃｄＣｏｍａｎｄの「８００’」。図７でのＴ８からＴ９の区間）。又、コマンド発行部１７は、ＭＲＳコマンドにあわせて、未発行のランク５を示す情報としてｃｄＤｅｖｉｃｅ（図７での「２」）やｃｄＢａｎｋ（図７での「４」をコマンド生成部１８に送信する（図７でのＴ８からＴ９の区間）。
【００８１】
このように、メモリーモジュール２に含まれるランク５のうち、アドレスミラーの無いランク５とアドレスミラーの有るランク５が混在しているとき、キューイング部１６やコマンド発行部１７は、アドレスミラーの有無の確認や、アドレスを入れ替えた新たなＭＲＳコマンドの要求の生成など、ソフトウェア的に特別な処理を行い、アドレスミラーの無いランク５に対するＭＲＳコマンドの要求の発行と、アドレスミラーの有るランク５に対するＭＲＳコマンドの要求の発行を行っていた。言い換えると、キューイング部１６やコマンド発行部１７の動作は、アドレスミラーの無いときのＭＲＳコマンド波形を２回繰り返すような動作となる。
【００８２】
キューイング部１６やコマンド発行部１７がソフトウェア的に処理を行うため、アドレスミラーの無いランク５に対するコマンド発行を開始する時点（Ｔ５）とアドレスミラーの有るランク５に対するコマンド発行を開始する時点（Ｔ８）の間にどうしても一定の間隔を要する。従って、アドレスミラーの無いランク５とアドレスミラーの有るランク５に対し、従来、連続的にＭＲＳコマンドに関する要求を発することができなかった。従って、コマンド生成部１８でのＭＲＳコマンドの生成も時間的に隔てられたものとなっていた。
【００８３】
［各ランク５でアドレスミラーの有無が混在しているとき（本実施形態）］
次に、図８を用いて、本発明でのメモリーモジュール２に含まれる複数のランク５でアドレスミラーの有無が混在しているときのＭＲＳコマンドの発行を説明する。尚、以下の説明では、メモリーモジュール２内の各ランク５に同様のＭＲＳコマンドを発行する例を説明する。
【００８４】
まず、本発明では、コマンド生成部１８はアドレスミラーの無いランク５に対するＭＲＳコマンドのアドレスをアドレスミラーの有るランク５に対するＭＲＳコマンドのアドレスに変換するアドレス変換部１８１を含む。尚、アドレス変換部１８１は、あるいは、アドレスミラーの有るランク５に対するＭＲＳコマンドのアドレスをアドレスミラーの無いランク５に対するＭＲＳコマンドのアドレスに変換できてもよい。
【００８５】
このアドレス変換部１８１によるＭＲＳコマンドのアドレスの自動的な変換処理により、メモリーモジュール２に含まれる複数のランク５でアドレスミラーの有無が混在していても、アドレスミラーでの配線の入れ違いを考慮して、キューイング部１６やコマンド生成部１８がＭＲＳコマンドのアドレスミラーの有るランク５のためにアドレスを変換するソフトウェア処理を行ったり、アドレスミラーの有るランク５のために別途コマンドトランザクションを作成する処理を行わなくて済む。
【００８６】
そのため、本発明では、まず、ＣＰＵ１０ａ等の指示に基づき、キューイング部１６がＭＲＳコマンドをキューイングする。そして、例えば、キューイング部１６は、ＭＲＳコマンドのコマンド発行要求をコマンド発行部１７に行う（例えば、図８でのｔｆＲＣｏｍａｎｄの「８００」。図８でのＴ１０の時点）。又、キューイング部１６は、アドレスミラー設定部１５１内のアドレスミラー情報を確認し、ＭＲＳコマンドの発行要求にあわせて、ＭＲＳコマンドの対象とするランク５を示す情報として本発明では２種類のｔｆＲＤｅｖｉｃｅ信号を連続的にコマンド発行部１７に送信する。この２種類のＭＲＳコマンドの対象とするランク５を示す情報は、第１ランク情報と第２ランク情報に相当し、図８での「ｆ」をＴ１０の時点で発し、「２」をＴ１１の時点で発する（尚、従来では２種類のｔｆＲＤｅｖｉｃｅ信号を時間的に隔てて送信）。
【００８７】
アドレス変換などのソフトウェア的な処理が不要なので、キューイング部１６は、アドレスミラーの無いランク５とアドレスミラーの有るランク５のＭＲＳコマンドの発行要求を自動的に分割し、この２種類のｔｆＲＤｅｖｉｃｅ信号（第１ランク情報と第２ランク情報）を連続的に発することができる。又、キューイング部１６は、ｔｆＲＢａｎｋ（図８での「４」）を送信する（図８でのＴ１０の時点）。
【００８８】
そして、キューイング部１６からのコマンド発行要求を受け、コマンド発行部１７は、アドレスミラー設定部１５１を確認し、アドレスミラーの無いランク５に対するＭＲＳコマンドのコマンド生成要求をコマンド生成部１８に発行する（例えば、図８でのｃｄＣｏｍａｎｄの「８００」。Ｔ１２〜Ｔ１３の区間）。又、コマンド発行部１７は、ＭＲＳコマンドのコマンド生成要求にあわせて、ＭＲＳコマンドの対象とするアドレスミラーの無いランク５を示す情報としてｃｄＤｅｖｉｃｅ（図８での「ｄ」）やｃｄＢａｎｋ（図８での「４」）をコマンド生成部１８に送信する（Ｔ１２〜Ｔ１３の区間）。
【００８９】
そして、コマンド発行部１７は、続けて、アドレスミラーの有るランク５に対するＭＲＳコマンドのコマンド生成要求をコマンド生成部１８に向けて発行する（図８でのｃｄＣｏｍａｎｄの「８００」。Ｔ１４〜Ｔ１５の区間）又、コマンド発行部１７は、ＭＲＳコマンドの生成要求にあわせて、ＭＲＳコマンドの対象とするアドレスミラーの有るランク５を示す情報としてｃｄＤｅｖｉｃｅ（図８での「２」）やｃｄＢａｎｋ（図８での「４」）をコマンド生成部１８に送信する（Ｔ１４〜Ｔ１５の区間）。
【００９０】
尚、Ｔ１３〜Ｔ１４の信号が発せられていない区間は、Ｔ１１の時点でｔｆＲＤｅｖｉｃｅ信号が切り替わりに応じて、ｃｄＣｏｍａｎｄ、ｃｄＤｅｖｉｃｅ、ｃｄＢａｎｋを発するまでの最小の待ち時間である。そのため、コマンド発行部１７は、可能な限り最短の時間で、続けて、アドレスミラーの無いランク５とアドレスミラーの有るランク５に対してＭＲＳコマンドのコマンド生成要求を発行している。
【００９１】
ここで、キューイング部１６やコマンド発生部が発生するＭＲＳコマンドの要求での値は、アドレス変換部１８がアドレス変換の処理を行うので、アドレスミラーの無いランク５とアドレスミラーの有るランク５のいずれの場合でも同様でよい。
【００９２】
そして、コマンド発行部１７から発せられたＭＲＳコマンドの生成要求に応じ、コマンド生成部１８は、メモリーモジュール２に与えるためのＭＲＳコマンド（信号）を生成する。そして、コマンド生成部１８は、生成したコマンド（信号）をＳＤＲＡＭＩ／Ｆ３（メモリーモジュール２）に向けて送信する。その結果、メモリーモジュール２は、図８の時点Ｔ０１以降、順次、ＭＲＳコマンドを受信する。
【００９３】
具体的に、コマンド生成部１８は、アドレスミラー設定部１５１のアドレスミラー情報を確認し、アドレスミラーの無いランク５とアドレスミラーの有るランク５を確認する。そして、コマンド生成部１８は、アドレスミラーの無いランク５に対するコマンド生成要求に応じて、アドレスミラーの無いランク５に対してはアドレスの変換を行わないＭＲＳコマンド（通常通りのコマンド）を生成する。又、コマンド生成部１８は、アドレスミラーの無いランク５（メモリーチップ４）に向けて生成したＭＲＳコマンドをＳＤＲＡＭＩ／Ｆ３に送信する。
【００９４】
一方、アドレス変換部１８１は、アドレスミラー設定部１５１のアドレスミラー情報を確認する。そして、ＭＲＳコマンドの生成要求が対象とするランク５がアドレスミラーの有るランク５であれば、アドレス変換部１８１は、アドレスミラーの無いランク５用のＭＲＳコマンドをアドレス変換し、アドレスミラーの有るランク５向けのＭＲＳコマンドを生成する。そして、コマンド生成部１８は、アドレス変換部１８１が生成したアドレスミラーの有るランク５（メモリーチップ４）に向けて生成したＭＲＳコマンドをＳＤＲＡＭＩ／Ｆ３に送信する。これにより、意図する通りのＭＲＳコマンドがアドレスミラーの有無を問わずスムーズに各ランク５（各メモリーチップ４）に対して与えられ、各ランク５の各メモリーチップ４の動作が設定される。
【００９５】
このようにして、本実施形態に係るメモリー制御装置１は、動作を設定するための構成設定レジスタ６を含む複数のメモリーチップ４を実装するメモリーモジュール２に対するコマンドをキューイングするキューイング部１６と、メモリーチップ４でのアドレスミラーの有無を示すアドレスミラー情報を保持するアドレスミラー設定部１５１と、キューイング部１６からのコマンド発行要求とコマンドの対象となるメモリーチップ４を示す対象情報に応じてメモリーチップ４に対するコマンドを発行するコマンド発行部１７と、コマンド発行部１７が発行したコマンドに基づき、メモリーチップ４向けのコマンドを生成しメモリーチップ４にコマンドを与えるとともに、アドレスミラーにより配線の入れ替えの対象となる信号線を用いて設定構成レジスタを設定する設定コマンドをメモリーチップ４に対して与えるコマンド生成部１８と、を含み、コマンド生成部１８は、アドレスミラーの無いメモリーチップ４とアドレスミラーの有るメモリーチップ４に対し同様の設定コマンドを与えるとき、アドレスミラー情報と対象情報に基づき、アドレスミラーの無いメモリーチップ４に向けて生成した設定コマンドを与える処理を行い、アドレスミラーの有るメモリーチップ４に対しては、アドレスミラーにより入れ替えられた信号線に応じ、設定コマンド（例えば、アドレスミラーの無いメモリーチップ４用の設定コマンド）のアドレスを変換してアドレスミラーの有るメモリーチップ４用の設定コマンドを生成するアドレス変換部１８１を含む。
【００９６】
これにより、ハードウェアとしてのアドレス変換部１８１がアドレスミラーの有るメモリーチップ４に対する設定コマンドのアドレスを自動的に変換する。言い換えると、コマンド発行部１７は設定コマンドの対象となるメモリーチップ４を示す対象情報と設定コマンドの生成要求を発行すれば、コマンド生成部１８は、アドレスミラーの有無に応じた設定コマンドを自動的に生成し、メモリーチップ４に与える。
【００９７】
このように、コマンド発行部１７やキューイング部がソフトウェアでアドレスミラーの有無を判断し、別々に（複数回に分けて）アドレスミラーの有無に応じて設定コマンドに関する要求を発したり、設定コマンドのアドレス変換などしたりせずに済み、アドレスミラーの有るメモリーチップ４とアドレスミラーの無いメモリーチップ４に関して連続的に設定コマンドを与えることができる。言い換えると、アドレス変換等のソフトウェア処理が不要となるので、アドレスミラーの有るメモリーチップ４とアドレスミラーの無いメモリーチップ４に対する設定コマンド発行を自動的に分割して処理することができる。従って、メモリーチップ４の初期化や動作設定の処理の簡素化を図ることができる。又、メモリーモジュール２でアドレスミラーの有るメモリーチップ４とアドレスミラーが無いメモリーチップ４が混在していても初期化等の制御フローを共通化することができる。
【００９８】
又、アドレスミラー設定部１５１はメモリーモジュール２でのランク５のアドレスミラーの有無を示すアドレスミラーランク情報を保持し、アドレスミラーの有るメモリーチップ４からなるランク５とアドレスミラーの無いメモリーチップ４からなるランク５を含むメモリーモジュール２の各ランク５に対して同様の設定コマンドを生成するとき、キューイング部１６は、対象情報として設定コマンドの発行要求にあわせてアドレスミラーの無いランク５を示す第１ランク情報とアドレスミラーの有るランク５を示す第２ランク情報をコマンド発行部１７に送信し、コマンド発行部１７は、設定コマンドとともに、第１ランク情報と第２ランク情報をコマンド生成部１８に向けて送信し、アドレス変換部１８１は、アドレスミラー設定部１５１が保持する情報と第１ランク情報と第２ランク情報に基づき、入れ替えられた信号線に応じ、アドレスミラーの無いランク５用の設定コマンドのアドレスを変換してアドレスミラーの有るメモリーチップ４用の設定コマンドを生成する。
【００９９】
これにより、アドレスミラーの有無に応じて、各ランク５に対するコマンド発行が自動的に分割処理される。従って、メモリーモジュール２内でアドレスミラーの有るランク５とアドレスミラーの無いランク５が混在していても、ソフトウェアでアドレスミラーの有無を判断して別々に（複数回に分けて）、アドレスミラーの有無に応じて設定コマンドを発行しなくて済み、同一ランク５でのメモリーチップ４の初期化や動作設定の簡素化を図ることができる。
【０１００】
又、キューイング部１６は、設定コマンドの発行要求とともに、第１ランク情報と第２ランク情報を連続的にコマンド生成部１８に向けて送信し、コマンド発行部１７は、設定コマンドをコマンド生成部１８に発するとともに、第１ランク情報に続けて第２ランク情報をコマンド生成部１８に発する。
【０１０１】
これにより、複数のランク５に対して設定コマンドを発行するとき、アドレスミラーの無いランク５とアドレスミラーの有るランク５のそれぞれのランク５に対して、連続的に設定コマンドが発行される。その結果、アドレスミラーの有るランク５と無いランク５が混在していても、速やかに設定コマンドを発行し、コマンドを生成することができる。
【０１０２】
以上、本発明の実施形態について説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実施することができる。
【産業上の利用可能性】
【０１０３】
本発明は、メモリー制御装置に適用可能である。
【符号の説明】
【０１０４】
１      メモリー制御装置                １５１  アドレスミラー設定部
１６    キューイング部                  １７    コマンド発行部
１８    コマンド生成部                  １８１  アドレス変換部
２      メモリーモジュール              ４      メモリーチップ
５      ランク                          ６      構成設定レジスタ
【図１】
0005453345.tif 000002
【図２】
0005453345.tif 000003
【図３】
0005453345.tif 000004
【図４】
0005453345.tif 000005
【図５】
0005453345.tif 000006
【図６】
0005453345.tif 000007
【図７】
0005453345.tif 000008
【図８】
0005453345.tif 000009