(57)【要約】【課題】ＤＤＲ　ＳＤＲＡＭの読書きを制御するメモリ制御装置において、省エネルギーモードから復帰する際のＤＭＡ転送を迅速に行う。【解決手段】複数のメモリセルからなるメモリユニット１０のデータ読書きを制御するメモリ制御装置１に、読出しデータをＤＭＡ転送する第１、第２の読出しＤＭＡコントローラ４，５と、書込みデータをＤＭＡ転送する第１、第２の書込みＤＭＡコントローラ６，７と、セルフリフレッシュの設定及び解除を行うための要求信号を出力するセルフリフレッシュ制御部８と、各要求に対するアービトレーションを行うメモリアービタ３を設け、そのメモリアービタ３に、第１、第２の読出しＤＭＡコントローラ４，５から次回アドレスを入力する。【選択図】　　　図１
2004102808.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルからなる記憶装置のデータ読書きを制御するメモリ制御装置であって、
読出しデータをＤＭＡ転送する１又は２以上の読出しＤＭＡコントローラと、
書込みデータをＤＭＡ転送する１又は２以上の書込みＤＭＡコントローラと、
セルフリフレッシュの設定及び解除を行うための要求信号を出力するセルフリフレッシュ制御部と、
前記読出しＤＭＡコントローラ、書込みＤＭＡコントローラ及びセルフリフレッシュ制御部からの要求に対するアービトレーションを行うメモリアービタとを有し、
前記読出しＤＭＡコントローラから次回アクセス予定の次回アドレスを出力して前記メモリアービタに入力することを特徴とするメモリ制御装置。
【請求項２】
複数のメモリセルからなる記憶装置のデータ読書きを制御するメモリ制御装置であって、
読出しデータをＤＭＡ転送する１又は２以上の読出しＤＭＡコントローラと、
書込みデータをＤＭＡ転送する１又は２以上の書込みＤＭＡコントローラと、
セルフリフレッシュの設定及び解除を行うための要求信号を出力するセルフリフレッシュ制御部と、
前記読出しＤＭＡコントローラ、書込みＤＭＡコントローラ及びセルフリフレッシュ制御部からの要求に対するアービトレーションを行うメモリアービタとを有し、
前記読出しＤＭＡコントローラからスタートアドレスを出力して前記メモリアービタに入力し、該メモリアービタにより次回アクセス予定の次回アドレスを算出することを特徴とするメモリ制御装置。
【請求項３】
請求項１又は２記載のメモリ制御装置において、
前記メモリアービタが、前記次回アドレスに応じて、セルフリフレッシュの実行対象となる前記メモリセルを切替えることを特徴とするメモリ制御装置。
【請求項４】
請求項１乃至３のいずれか一項記載のメモリ制御装置において、
前記メモリアービタが、前記次回アドレスにより表される前記１又は２以上のメモリセルに対してセルフリフレッシュを実行せず、該メモリセル以外のメモリセルに対してセルフリフレッシュを実行するセルフリフレッシュ実行要求信号を出力することを特徴とするメモリ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、省エネルギーモードから復帰する際のＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）転送を迅速に行えるＤＤＲ　ＳＤＲＡＭのメモリ制御装置に関する。
【０００２】
【従来の技術】
従来から、ＤＲＡＭ（Ｄｙｎａｍｉｃ　ＲＡＭ（Ｒａｎｄｏｍ　ＡｃｃｅｓｓＭｅｍｏｒｙ））は、ＳＲＡＭ（Ｓｔａｔｉｃ　ＲＡＭ）に比べて記憶容量当たりのコストが安く、内部の回路が簡単なのでＳＲＡＭよりも広く利用され、パーソナルコンピュータのメインメモリとして利用されている。ＤＲＡＭの中で、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ　ＤＲＡＭ）は、ＤＲＡＭに直接クロック信号を入力し、外部バスインターフェースがクロック信号に同期してデータの読み書きを行い、高速データ転送が可能になっているため、ＤＲＡＭの主流になっている。
ＤＲＡＭは、データを記憶保持するのにコンデンサを使用している。コンデンサの電荷は、時間の経過にともない減少していくので、ＤＲＡＭは、データを正しく記憶しておくため、定期的にリフレッシュとよばれる再充電を行わねばならない。ＤＲＡＭは、その内部に内蔵した回路によりリフレッシュを行っており、これをセルフリフレッシュという。このセルフリフレッシュになると、ＤＲＡＭへの電力供給のみでデータが保持されるので、省エネルギーになる。
一方、ＳＤＲＡＭの制御装置に関して、従来、セルフリフレッシュモードに設定する手段と、その設定後セルフリフレッシュモードを解除する手段とを設け、セルフリフレッシュモードの設定及び解除の際にＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：中央処理装置）を介することなくデータのＤＭＡ転送を迅速に行えるものがあった（例えば、特許文献１参照。）。
【０００３】
【特許文献１】
特開２００１−２０２７７７号公報（第１−３頁）
【０００４】
【発明が解決しようとする課題】
しかしながら、ＤＤＲ（Ｄｏｕｂｌｅ　Ｄａｔａ　Ｒａｔｅ）ＳＤＲＡＭは、セルフリフレッシュの解除後、２００クロック間はリードアクセスが不可であるため、セルフリフレッシュの解除後、リード要求もライト要求も即応答することができない。そのため、省エネルギーモードから復帰する際のＤＭＡ転送の速度が低下するおそれがあった。
【０００５】
この発明は、上記の問題点を解決するためになされたもので、ＤＤＲ　ＳＤＲＡＭの読書きを制御するメモリ制御装置において、省エネルギーモードから復帰する際のＤＭＡ転送を迅速に行うことを目的とする。
【０００６】
【課題を解決するための手段】
この発明は、上記の目的を達成するため、複数のメモリセルからなる記憶装置のデータ読書きを制御するメモリ制御装置であって、読出しデータをＤＭＡ転送する１又は２以上の読出しＤＭＡコントローラと、書込みデータをＤＭＡ転送する１又は２以上の書込みＤＭＡコントローラと、セルフリフレッシュの設定及び解除を行うための要求信号を出力するセルフリフレッシュ制御部と、上記読出しＤＭＡコントローラ、書込みＤＭＡコントローラ及びセルフリフレッシュ制御部からの要求に対するアービトレーションを行うメモリアービタとを有し、上記読出しＤＭＡコントローラから次回アクセス予定の次回アドレスを出力して上記メモリアービタに入力することを特徴とする。
また、この発明は、複数のメモリセルからなる記憶装置のデータ読書きを制御するメモリ制御装置であって、読出しデータをＤＭＡ転送する１又は２以上の読出しＤＭＡコントローラと、書込みデータをＤＭＡ転送する１又は２以上の書込みＤＭＡコントローラと、セルフリフレッシュの設定及び解除を行うための要求信号を出力するセルフリフレッシュ制御部と、上記読出しＤＭＡコントローラ、書込みＤＭＡコントローラ及びセルフリフレッシュ制御部からの要求に対するアービトレーションを行うメモリアービタとを有し、上記読出しＤＭＡコントローラからスタートアドレスを出力して上記メモリアービタに入力し、そのメモリアービタにより次回アクセス予定の次回アドレスを算出するメモリ制御装置を提供する。
上記いずれのメモリ制御装置でも、メモリアービタが、上記次回アドレスに応じて、セルフリフレッシュの実行対象となる上記メモリセルを切替えるとよい。
また、メモリアービタが、上記次回アドレスにより表される上記１又は２以上のメモリセルに対してセルフリフレッシュを実行せず、そのメモリセル以外のメモリセルに対してセルフリフレッシュを実行するセルフリフレッシュ実行要求信号を出力するとよい。
【０００７】
【発明の実施の形態】
以下、この発明の実施の形態を図面に基づいて詳細に説明する。
図１はこの発明によるメモリ制御装置１と、メモリユニット１０の内部構成を示すブロック図である。
メモリ制御装置１は、メモリ制御部２と、メモリアービタ３と、第１、第２の読出しＤＭＡコントローラ（Ｒｅａｄ　ＤＭＡＣ）４，５と、第１、第２の書込みＤＭＡコントローラ（Ｗｒｉｔｅ　ＤＭＡＣ）６，７と、セルフリフレッシュ制御部８とを有する半導体集積回路からなっている。
メモリ制御部２は、メモリアービタ３から要求を受けて、読書きするデータをメモリユニット１０との間でやりとりし、後述するセルフリフレッシュ実行要求にしたがいセルフリフレッシュを実行する回路である。メモリアービタ３は、第１、第２の読出しＤＭＡコントローラ４，５と、第１、第２の書込みＤＭＡコントローラ６，７と、セルフリフレッシュ制御部８のそれぞれから要求信号ＲＥＱを入力して、それぞれの要求に対するアービトレーションを行い、要求を受け入れる場合には、対応する要求信号を出力した回路に応答信号（ＡＣＫ）を出力する回路である。ここで、アービトレーションとは、要求信号ＲＥＱが複数ある場合に、それらを調停してそれぞれの要求を満たしていくことを意味している。また、メモリアービタ３は、後述する次回アドレスに応じて、セルフリフレッシュ実行対象となるメモリセルを切替える。
【０００８】
第１、第２の読出しＤＭＡコントローラ４，５は、図示しない回路からのデータ読出し要求を受けて起動して、メモリアービタ３に読出しの要求信号ＲＥＱを出力し、読出されたデータを受けて図示しない回路にＤＭＡ転送する回路である。また、第１、第２の読出しＤＭＡコントローラ４，５は、起動中に次回読出しアクセスを行う予定のアドレス（以下このアドレスを「次回アドレス（ＮｅｘｔＡＤＤＲ）という」をそれぞれメモリアービタ３に入力する。第１、第２の書込みＤＭＡコントローラ６，７は、図示しない回路からのデータ書込み要求を受けてメモリアービタ３に書込みの要求信号ＲＥＱを出力し、書込みするデータを受けて図示しない回路にＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）転送する回路である。
セルフリフレッシュ制御部８は、セルフリフレッシュの設定及び解除を行う要求信号ＲＥＱをメモリアービタ３に出力し、応答信号（ＡＣＫ）を受けてセルフリフレッシュの設定及び解除を行うためのステータス信号を入力する。
【０００９】
メモリユニット１０は、ＤＤＲ　ＳＤＲＡＭにより構成され、メモリセル（ＣＳ０，ＣＳ１，ＣＳ２，ＣＳ３，ＣＳ４）が複数配置してなっている。このメモリユニット１０は、メモリアービタ３の制御にしたがい、各メモリセル単位にセルフリフレッシュが行われる。
次に、以上のように構成されたメモリ制御装置１と、メモリユニット１０の動作内容について、図３のフローチャートを参照して説明する。なお、図３及び後述する図４ではステップをＳと略記している。
メモリ制御装置１は、図示しない回路からの指示を受けて作動し、ステップ１に進んで、セルフリフレッシュ制御部８から、セルフリフレッシュの設定又は解除を行うための要求信号ＲＥＱをメモリアービタ３に入力する。メモリアービタ３は、この要求に対してアービトレーションを行い、要求を受け入れる場合は、セルフリフレッシュ制御部８に応答信号（ＡＣＫ）を出力する。そして、この応答信号（ＡＣＫ）を受けて、セルフリフレッシュ制御部８がセルフリフレッシュの設定又は解除を行うためのステータス信号をメモリアービタ３に入力する。また、このセルフリフレッシュ制御部８の動作と並行して、第１又は第２の読出しＤＭＡコントローラ４，５が起動中に次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）をそれぞれメモリアービタ３に入力している。
【００１０】
そして、ステップ２に進むと、メモリアービタ３が入力されている起動中の第１、第２の読出しＤＭＡコントローラ４，５の次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）を読込む。続くステップ３では、メモリアービタ３がステップ２で読込まれた次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）によって表される読出し対象のメモリセル（対象メモリセル）と、それ以外のメモリセル（対象外メモリセル）とを判別する。例えば、対象メモリセルがＣＳ０であれば、ＣＳ１〜ＣＳ４は対象外メモリセルと判別される。続くステップ４では、ステップ３で判別した対象外メモリセル（上述の場合はＣＳ１〜ＣＳ４）に対してのみ、セルフリフレッシュが実行されるように、メモリアービタ３がセルフリフレッシュ実行要求信号をメモリ制御部２へ出力する。すると、続くステップ５では、メモリユニット１０のうち、ステップ４でセルフリフレッシュ実行要求を受けた対象外メモリセル（ＣＳ１〜ＣＳ４）に対してのみ、メモリ制御部２がセルフリフレッシュを実行する。
【００１１】
ＤＤＲ　ＳＤＲＡＭにより構成されるメモリユニット１０は、セルフリフレッシュ解除後２００クロック間リードアクセス不可であるが、メモリ制御装置１では、省エネルギーモードに設定するため、メモリアービタ３にセルフリフレッシュ実行要求があった場合、メモリアービタ３が保持しておいた第１、第２の読出しＤＭＡコントローラ４，５の次回アドレスにより表される対象メモリセル（例えば、ＣＳ０）に対してはセルフリフレッシュが実行されず、それ以外の対象外メモリセル（例えば、ＣＳ１〜ＣＳ４）に対してのみセルフリフレッシュが実行される。こうすると、セルフリフレッシュは、次回のアクセス予定外の対象外メモリセルだけを対象として行われるため、セルフリフレッシュの解除後も読出し要求、書込み要求のいずれも即応答可能なメモリセルを設けることができ、省エネルギーモードから復帰する際のＤＭＡ転送を迅速に行うことが可能となる。
【００１２】
図２は、この発明によるメモリ制御装置１１と、メモリユニット１０の内部構成を示すブロック図である。このメモリ制御装置１１は、メモリ制御装置１と比較して、メモリアービタ３と、第１、第２の読出しＤＭＡコントローラ４，５がそれぞれ、メモリアービタ１３、第１、第２の読出しＤＭＡコントローラ１４，１５となっている点で異なり、その他は同じ構成を有している。
メモリアービタ１３は、受信カウンタ１３ａと次回アドレス算出回路１３ｂとを第１、第２の読出しＤＭＡコントローラ１４，１５に対応して内部に搭載し、第１、第２の読出しＤＭＡコントローラ１４，１５の次回アドレスを把握するようになっている。受信カウンタ１３ａは、次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）を算出するためのカウント値を計測する。次回アドレス算出回路１３ｂは、受信カウンタ１３ａにより計測されたカウント値と、第１、第２の読出しＤＭＡコントローラ１４，１５から入力するスタートアドレスに基づき、次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）を算出する。
第１、第２の読出しＤＭＡコントローラ１４，１５は、次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）の代わりにスタートアドレス（Ｓｔａｒｔ　ＡＤＤＲ）をメモリアービタ１３に入力する点で異なり、その他は同じ構成を有している。
【００１３】
次に、以上のように構成されたメモリ制御装置１１と、メモリユニット１０の動作内容について、図４のフローチャートを参照して説明する。
メモリ制御装置１１は、動作開始後ステップ１１に進み、セルフリフレッシュ制御部８から、セルフリフレッシュの設定又は解除を行うための要求信号ＲＥＱをメモリアービタ１３に入力し、メモリアービタ１３がこの要求を受け入れる場合には、セルフリフレッシュ制御部８に応答信号（ＡＣＫ）を出力する。この応答信号（ＡＣＫ）を受けて、セルフリフレッシュ制御部８がセルフリフレッシュの設定又は解除を行うためのステータス信号をメモリアービタ１３に入力する。また、このセルフリフレッシュ制御部８の動作と並行して、第１又は第２の読出しＤＭＡコントローラ１４，１５が起動中にスタートアドレス（Ｓｔａｒｔ　ＡＤＤＲ）をそれぞれメモリアービタ１３に入力している。
【００１４】
そして、ステップ１２に進むと、メモリアービタ１３が入力されている起動中の第１、第２の読出しＤＭＡコントローラ１４，１５のスタートアドレス（Ｓｔａｒｔ　ＡＤＤＲ）を読込む。続くステップ１３では、次回アドレス算出回路１３ｂが、受信カウンタ１３ａの計測したカウント値と読込まれたスタートアドレス（Ｓｔａｒｔ　ＡＤＤＲ）とから、次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）を算出する。そして、ステップ１４に進み、メモリアービタ１３が、ステップ１３で算出された次回アドレス（Ｎｅｘｔ　ＡＤＤＲ）によって表される読出し対象のメモリセル（対象メモリセル）と、それ以外のメモリセル（対象外メモリ）とを判別する。例えば、対象メモリセルがＣＳ１，ＣＳ２であれば、ＣＳ０，ＣＳ３，ＣＳ４は対象外メモリセルと判別される。続くステップ１５では、ステップ１４で判別した対象外メモリセル（上述の場合はＣＳ０，ＣＳ３，ＣＳ４）に対してのみ、セルフリフレッシュが実行されるように、メモリアービタ１３がセルフリフレッシュ実行要求信号をメモリ制御部２へ出力する。すると、続くステップ１６では、メモリユニット１０のうち、ステップ１５でセルフリフレッシュ実行要求を受けた対象外メモリセル（ＣＳ０，ＣＳ３，ＣＳ４）に対してのみ、メモリ制御部２がセルフリフレッシュを実行する。
【００１５】
このように、メモリ制御装置１１は、メモリ制御装置１と同様に、メモリアービタ１３にセルフリフレッシュ実行要求があった場合、メモリアービタ１３が算出した次回アドレスにより表される対象メモリセル（ＣＳ１，ＣＳ２）に対してはセルフリフレッシュが実行されず、それ以外の対象外メモリセル（ＣＳ０，ＣＳ３，ＣＳ４）に対してのみセルフリフレッシュが実行される。こうすると、セルフリフレッシュは、次回のアクセス予定外の対象外メモリセルだけを対象として行われるため、セルフリフレッシュの解除後も、読出し要求、書込み要求のいずれも即応答可能なメモリセルを設けることができ、省エネルギーモードから復帰する際のＤＭＡ転送を迅速に行うことが可能となる。
【００１６】
【発明の効果】
以上説明してきたように、この発明によれば、ＤＤＲ　ＳＤＲＡＭのメモリ制御装置において、省エネルギーモードから復帰する際のＤＭＡ転送を迅速に行うことが可能となる。
【図面の簡単な説明】
【図１】この発明によるメモリ制御装置と、メモリユニットの内部構成を示すブロック図である。
【図２】この発明による別のメモリ制御装置と、メモリユニットの内部構成を示すブロック図である。
【図３】図１に示すメモリ制御装置によるセルフリフレッシュの制御手順を示すフローチャート図である。
【図４】図２に示すメモリ制御装置によるセルフリフレッシュの制御手順を示すフローチャート図である。
【符号の説明】
１，１１：メモリ制御装置
２：メモリ制御部　　　　　３，１３：メモリアービタ
４，５：第１、第２の読出しＤＭＡコントローラ
６，７：第１、第２の書込みＤＭＡコントローラ
８：セルフリフレッシュ制御部
１０：メモリユニット
１４，１５：第１、第２の読出しＤＭＡコントローラ
【図１】
2004102808.tif 000003
【図２】
2004102808.tif 000004
【図３】
2004102808.tif 000005
【図４】
2004102808.tif 000006