説明

メモリ制御装置、メモリ制御方法

【課題】DRAMを主記憶に使用しLSI内蔵メモリを一時記憶として使用するメモリシステムにおいて、DRAMへの書き戻し時間を短くする。
【解決手段】内蔵メモリからDRAMへの書き戻し時に同一のDRAMページのアクセスは連続して発行されるようにアクセス順序を生成し、別のDRAMページへのアクセスは直前に書き戻しを行ったDRAMバンクと異なるバンクとなるようにアクセス順序を生成する。さらに、内蔵メモリをキャッシュとして使用し、キャッシュ内に保持されたデータの無効化を行う際に同一のDRAMページに対応するエントリは連続して無効化し、別のDRAMページに対応するエントリは直前に無効化したDRAMバンクとは異なるバンクとなるように無効化する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は半導体メモリを制御するメモリ制御装置、メモリ制御方法に関わるものである。
【背景技術】
【0002】
組み込み系システムでは、CPUの他、特定の機能を実現する機能ブロック・処理モジュールを複数搭載しシステムに求められる機能を実現している。特に要求される性能の高い機能ブロックに関してはハードワイヤードロジックで回路を実装することで、ソフトウエア処理では達成することが困難な高性能・高速処理を実現している。多くの機能ブロックではデータの授受は外部主記憶デバイスを介して行う。また複雑な処理や多くのデータを参照する処理では、主記憶を一時記憶・ワークメモリとして使用することで機能を実現している。多くの組み込み系システムでは外部主記憶にDRAM(Dynamic Random Access Memory)デバイスを採用している。
【0003】
近年デジタル機器において、高機能/高性能化が継続的に進展している。例えばデジタルカメラ等の映像入力機器やプリンタ等の画像出力機器において高解像度化が進展しており、取り扱うデータ量も増加しているので、単位時間内に多くのデータ量を取り扱うためにメモリアクセスの高速化が必要である。また、リアルタイム処理を必要とする動画像においてもHD(high definition)化が進展しており、更なるメモリアクセスの高速化が必要である。
【0004】
外部主記憶に使用されるDRAMデバイスにおいても、半導体プロセスの進化に伴い高速化、広帯域化が進んでいる。しかしながら、半導体プロセスの進化によるLSI内部の集積度、演算処理性能の向上速度が著しいため、LSI内に実装されるシステムに要求されるメモリアクセス性能と外部主記憶の性能に乖離が生じている。
【0005】
本課題を解決する手法として、主記憶を一時記憶・ワークメモリとして使用を想定しているケースにおいて、より小容量のLSI内蔵メモリの使用が挙げられる。これは外部主記憶より小容量の一時記憶としてLSI内部に高速な内蔵メモリを実装し高速メモリアクセスが必要な場合は内蔵メモリを使用する。外部主記憶の保持するデータと整合性を取るために、メモリアクセス終了後に内蔵メモリに保持されたデータを外部主記憶に書き戻しを行うという手法がある。その代表がCPU等に実装されるキャッシュメモリである。
【0006】
また、近年のデジタル機器において省電力化が一つの大きな課題となっている。半導体のプロセス技術の進化による回路の微細化に伴い、コア電圧の低下により動的な消費電力の低減を図ることが出来る反面、リーク電流により静的な消費電力が増加する傾向にある。更にデジタル機器のシステムにおいて、外部主記憶が消費する消費電力は無視できない一つの要因となっている。DRAMデバイスは省電力モードを有しており、その機能を使用して消費電力の削減が図られている。ここで、特許文献1、2のように、外部主記憶を省電力モードで動作させている期間、主記憶へのメモリアクセスをLSI内蔵メモリに保持する方法がある。この方法ではLSI内蔵メモリに保持されたデータは、DRAMが省電力モードより復帰したタイミングにSDRAMに書き戻している。
【0007】
DRAMデバイス内部は複数のバンクで構成され、各バンクはページと呼ばれる複数の領域に分割されている。図4にDRAMへのアクセス時の制御フローを示す。DRAMに対するメモリアクセスは、バンクと行アドレスを指定とページを活性化させるコマンド(アクティブコマンド)を発行する。アクティブコマンドにてページの選択を行った後(以後ページオープンと記す)に、列アドレスの指定とリード・ライトといったメモリアクセスコマンドを発行することで実現される。継続して同一のページ内のアドレスに対してメモリアクセスを発行する場合には再度ページオープン処理を行う必要は無い。列アドレスの指定とメモリアクセスコマンドを発行することによりアクセス可能である。
【0008】
しかしながら、同一バンク内で活性化されているページ以外の別のページへメモリアクセスを発行する場合には、一旦バンク内の活性化されているページを非活性化するコマンド(プリチャージコマンド)を発行が必要である。その後アクセス対象のページオープン処理を行った後に、メモリアクセスコマンドを発行する必要がある。この様に、活性化されているページ以外の別のページへメモリアクセスを発行することはページミスと呼ばれる。さらに、それに要するプリチャージコマンドとページオープン処理に要する期間をページミスペナルティと呼ばれる。
【0009】
このページミスペナルティを低減する方法として、一般的にバンクインターリーブが用いられる。これはDRAMのアクセスプロトコルで行アドレスコマンドと列アドレスコマンドのパイプライン処理を利用したものである。行アドレスコマンドを発行する場合には、同一バンクに対する前コマンドが完了していないと発行が出来ない。すなわちページミスとなるメモリアクセスはプリチャージが完了するまで発行が待たされることとなる。しかし、異バンクに対するメモリアクセスであれば、別バンクのメモリアクセス完了前に行アドレスコマンドを発行することが可能である。従って、ページミスが発生した場合において、異バンクへのメモリアクセスを発行することでページミスのオーバーヘッドを隠蔽することが可能である。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2000−207277号公報
【特許文献2】特開2003−59266号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
また、DRAMを省電力モードに投入した際にLSI内蔵メモリを使用してバッファリングする構成にした場合、省電力モード復帰時に内蔵メモリに蓄積されたデータを書き戻した後、再度省電力モードに投入する方法が考えられる。この方法では、書き戻しの際に、FIFOバッファ的にアクセスされた順にメモリコマンドを発行する。
【0012】
しかしながら、書き戻しの際にページ遷移が多いとDRAMのページミスペナルティによりアクセス期間が長くなってしまう。書き戻しに要する期間が長くなると通常モードで動作する期間が長くなり(省電力モードで動作する期間が短くなり)、省電力効果が限定されてしまう。
【0013】
従って、本発明ではDRAMを主記憶に使用しLSI内蔵メモリを一時記憶として使用するメモリシステムの書き戻し期間を短くすることを目的とする
【課題を解決するための手段】
【0014】
上記課題を解決するため本発明に係るメモリ制御装置は、DRAMデバイスへの複数のメモリアクセスを保持する内部メモリと、DRAMデバイスの構成に基づきメモリアクセス期間が短くなるように内部メモリに保持されたメモリアクセスデータをDRAMデバイスへ書き戻す制御手段と有することを特徴とする。
【発明の効果】
【0015】
本発明によると、LSI内蔵メモリに保持された主記憶へのメモリアクセスの発行順序をDRAMのアクセス形態を考慮し順序制御することにより、書き戻しのメモリアクセス期間を短くすることが可能となる。
【0016】
従って、外部主記憶のメモリアクセス帯域を補完するためにLSI内蔵メモリを使用するシステムにおいては、メモリアクセス帯域への影響を小さくすることが可能となり、システム全体のメモリアクセス帯域確保に寄与する。一方で、DRAM省電力モード時にLSI内蔵メモリを使用するシステムにおいては、書き戻し完了後再度省電力モードへ投入するまでの期間を短くし、省電力効果を向上させることが可能となる。
【図面の簡単な説明】
【0017】
【図1】メモリ書き戻し順序を作成する処理を示すフローチャートである。
【図2】メモリシステムの概略構成を示す図である。
【図3】内蔵メモリ制御処理を示すフローチャートである。
【図4】内蔵SRAMに保持されるSRAMデータ構成例である。
【図5】メモリアクセス受信時のメモリアクセス制御部の処理を示すフローチャートである。
【図6】パワーダウン制御時のメモリアクセス制御部の処理を示すフローチャートである。
【発明を実施するための形態】
【0018】
<実施形態1>
図2本発明の一実施形態であり、外部主記憶にDRAM201(DRAMデバイス)を有したLSI200の概略構成を示す。LSI200の内部構成としては複数のバスマスタ203〜205がシステムバス202を介しスレーブデバイスであるメモリアクセス制御部206に接続されているものとする。バスマスタ203〜205は、外部主記憶であるDRAM201のメモリ空間を一時記憶領域として使用し、任意の処理を実行するモジュールである。
【0019】
次に、メモリアクセス制御部206の構成を説明する。バスインターフェース208はバスマスタ203〜205からのメモリアクセスコマンド(以下、メモリアクセスと称す)を受信する。メモリアクセスは、READ、WRITE等のメモリへのアクセス種別を示す情報や、アクセスする領域を示すアドレスを含んでいる。バスインターフェース208は受信したメモリアクセスをコマンドキュー211へ伝達する。コマンドキュー211は受信したメモリアクセスを保持し、メモリアクセスを発行可能なタイミングでメモリデバイス制御部213にアクセスを伝達する機能を有する。メモリデバイス制御部213は、コマンドキュー211からメモリアクセスを受信する。そして、受信したメモリアクセスをDRAM201のアクセスプロトコルに変換し、指定されたアドレス空間へのメモリアクセス発行制御を司る。パワーダウン制御部212は、DRAM201のパワーダウンコマンド(省電力に関する指示)を発行する制御をする。なお、本実施形態の説明ではDRAM201の1つをメモリデバイス(又はデバイス)と称する。ここで、DRAM201の1つはDRAMチップの事を示す。例えば、DIMM(Dual Inline Memory Module)規格を採用した基盤の場合には複数のDRAMチップを基盤上に有することになる。
【0020】
本実施形態では下記の条件を満たした際に、パワーダウン制御部212が着目デバイスに対するパワーダウン投入コマンドをDRAM201に対して発行するものとする。
・コマンドキュー211内に着目デバイスに対するメモリアクセスが存在しない場合。
・メモリデバイス制御部213が着目デバイスにメモリアクセスを発行制御していない場合。
【0021】
以下、アクセス振り分け部209と内部メモリ制御部210の制御を図3のフローチャートを用いて説明する。
バスインターフェース208内のアクセス振り分け部209は、バスマスタ203〜205より受信したメモリアクセスをLSIに内蔵されたSRAM(Static Random Access Memory)207へのアクセスあるいはDRAM201へのアクセスに振り分ける。アクセス振り分け部209はパワーダウン制御部212からDRAM201が省電力状態にあることを示すパワーダウン状態情報を受信する。アクセス振り分け部209は、受信したメモリアクセスのアクセス対象がパワーダウン中のデバイスである場合(S301、Yes)はSRAM207へのアクセスに振り分け、そうでなければDRAM201へのアクセスに振り分ける(S302、No)。アクセス振り分け部209によって振り分けられたライトアクセスは、ライトアクセスに対応するフラグと、書き込む先の領域を示すアドレスと、書き込むデータと、を1組としてバスインターフェース208によってコマンドキュー211あるいは内蔵メモリ制御部210に伝達される(S302)。リードアクセスの場合はリードアクセスに対応するフラグと読み出し元のアドレスが1組として伝達される(S302)。
【0022】
内蔵メモリ制御部210では、受信したメモリアクセスがライトアクセスである場合(S303、Yes)、アドレスとデータとを1組としてSRAM207への書き込み制御を行う。リードアクセスである場合(S303、No)は、まず該当アドレスのデータがSRAM207に存在するかどうかを走査する(S305)。SRAM207内にリードアクセスの対象のデータが存在する場合(S305、Yes)は、該当データをSRAM207より読み出し、メモリアクセスを完了する。SRAM207内にデータが存在しない場合(S305、No)は、内部メモリ制御部210がSRAM207にデータが存在しなかったリードアクセスをコマンドキュー211に伝達する。
【0023】
上記で示した通り、コマンドキュー211にパワーダウン中のデバイスに対するメモリアクセスが送信されたため、パワーダウン制御部212はメモリアクセス対象として該当するデバイス(以下、単に該当デバイスと称す)に対してパワーダウン解除コマンドを発行する。また、パワーダウン制御部212はパワーダウン状態情報を内部メモリ制御部210とバスインターフェース208へ伝達する。内蔵メモリ制御部210はパワーダウン制御部212から伝達されるパワーダウン状態情報の変化に基づいて、パワーダウンから解除されたデバイスを検知すると書き戻し制御を行う。書き戻し制御は、内部メモリ制御部210がSRAMに保持した該当デバイスへのデータをSRAM207より読み出し、コマンドキュー211に伝達することにより実現される。
【0024】
以下、内蔵メモリ制御部210とSRAM207構成の詳細を示す。図4に示すように、SRAM207はアドレス情報を保持するインデックスSRAM400とデータを保持するデータSRAM410の組を有する。また、図4に示すようにインデックスSRAM400は以下の情報を保持している。
・ 保持されたデータエントリが有効であるか否かを示すフラグ401。
・ アクセス対象のデバイスを示すデバイスアドレス402
・ バンクアドレス403
・ 行アドレス404
・ 列アドレス405
フラグ401は1ビットであるが、デバイスアドレス402、バンクアドレス403、行アドレス404、列アドレス405等は接続されるデバイスによりビット幅が決定される。そして各情報のビット幅の総和がインデックスSRAM400のデータ幅となる。DRAM201のデバイス数が4デバイス(2ビット)、バンクアドレスが3ビット、行アドレスが13ビット、列アドレスが10ビットであると、1+2+3+13+10=29ビットのデータ幅がインデックスSRAM400を必要とする。
【0025】
一つのDRAMの構成を例にとって説明したが、複数種類のDRAM構成の接続が可能な場合は、総和が最大となる種類のDRAMに応じてインデックスSRAM400のデータ幅を決定すればよい。また、データSRAM410には、DRAM201へのアクセス単位のデータ幅でデータが保持される。接続されるDRAMのデータ幅を8ビットとして取り扱い、バースト長が4ビートで処理が行われる場合8x4=32ビットのデータ幅が必要となる。各SRAMの同一番地には、ライトアクセスとして受信したアドレスとデータの対として保持される。
【0026】
図4のSRAMの0x3番地に保持している情報は、DRAMのデバイスアドレスが0、バンクアドレスが1番地、行アドレスが0x002番地、列アドレスが0x004番地でデータが0x1234_5678であることを示している。
【0027】
内蔵メモリ制御部210は、受信したメモリアクセスをSRAM207へリード/ライトする処理を行う第1制御部とDRAM201へ書き戻し処理を行う第2制御部を有する。第1制御部はSRAM400、410への書き込み、読み出し処理の制御を行う。DRAM201への書き戻し処理を行う第2制御部はデータSRAM410に対しては読み出し処理のみを行い、インデックスSRAM400に対しては書き込み、読み出し処理の双方を行う。上記2つの制御部とおのおののSRAM(400、410)との接続形態は任意である。すなわち、2つの制御部からSRAMへのアクセスの調停部を介して接続する形態にしてもよいし、2つの制御部がそれぞれ独立してSRAMへのアクセスパスを有する形態にしてもよい。前者は、共通のバスを介して其々の制御部に接続されている単一ポートのSRAMで構成することができ、後者は複数ポートを有するSRAMで構成することができる。アクセス性能を確保する場合は、データSRAM410は2つのリードポートと1つのライトポートを有したSRAMにて構成することが望ましい。また、インデックスSRAM400は2つのリードポートと2つのライトポートを有したSRAMで構成することが望ましい。
【0028】
受信したメモリアクセスの処理を行うメモリアクセス制御部206の処理の詳細を図5のフローチャートに基づいて説明する。メモリアクセス制御部206はアドレス振り分け部209よりメモリアクセスを受信すると、受信したアクセスアドレスに相当するアドレスがインデックスSRAM400内に存在するかの検索を実行する(S500)。そして、インデックスSRAM400内に存在した場合、受信したメモリアクセスがリードアクセスかライトアクセスかにより処理を切り換える(S501)。リードアクセスであった場合、データSRAM410に対して検索結果ヒットしたアドレスより読み出し処理を行う(S504)。ライトアクセスであった場合は、データSRAM410の検索結果ヒットしたアドレスに対して、受信したデータの書き込み処理を行う(S503)。
【0029】
一方、ステップS500でアクセスアドレスに相当するアドレスがインデックスSRAM400に存在しなかった場合、受信したメモリアクセスがリードアクセスかライトアクセスかによって処理を切り換える(S502)。リードアクセスであった場合、受信したメモリアクセスをコマンドキュー211に対して伝達する(S505)。
【0030】
ライトアクセスであった場合(S506)、新規メモリアクセスとしてインデックスSRAM400のフラグ401が立っていないエントリのSRAMアドレスに対して、インデックスSRAM400とデータSRAM410の双方に書き込み処理を行う。インデックスSRAM400に対しては、フラグを立て、受信アドレスをDRAM201のデバイスアドレス、バンクアドレス、行アドレス、列アドレスに分割して書き込む。データSRAM410に対しては、受信したメモリアクセスデータの書き込みを行う。
【0031】
インデックスSRAM400のフラグ401が立っていないエントリの探索方法として、本実施形態ではSRAMアドレスカウンタを配置し、SRAMへの新規エントリの書き込みの度に加算する。この場合、カウンタがSRAMのアドレス上限に達した場合は、SRAMに書き込まれたデータを後述のフローに則りDRAM(201)へ書き戻し処理を行ってもよい。
【0032】
一方エントリを探索する際に、受信したアクセスアドレスに相当するアドレスがインデックスSRAM400内に存在するかの検索実行時に合わせてフラグ401の立っていないエントリを探索しても構わない。この場合、フラグ401の立っていないエントリが存在しない時には同様にDRAM201へ書き戻し処理を行ってもよい。
【0033】
次に、書き戻し処理を行うメモリアクセス制御部の処理を図6、図7のフローチャートに基づいて説明する。書き戻し処理は内蔵メモリ制御部210に対するイベントに応じて開始される。第2制御部は、パワーダウン制御部212からの通知されるパワーダウン状態情報の変化に基づいて書き戻し処理を開始する。具体的には、通知されるパワーダウン状態情報から、パワーダウン状態から復帰したデバイスの存在を検知したことをトリガー条件とする。
【0034】
メモリアクセス制御部はパワーダウン状態からの復帰イベントを検知すると、インデックスSRAM400内のデバイスアドレス402を検索し、パワーダウンから復帰したデバイスに該当するデータの存在を検索する(S600)。検索した結果、パワーダウンから復帰したデバイスに該当するデータが存在した場合は該当するSRAMアドレスからインデックスSRAM400からはDRAM201へのアクセスアドレス、データSRAM410からは書き戻しデータを読み出す。読み出したアドレス、データはコマンドキュー211に伝達する(S601)。
【0035】
次に、内部メモリ制御部210が複数のエントリに対して書き戻す際の書き戻し順序作成フロー(S601の詳細フロー)を示す。
【0036】
第2制御部は書き戻し処理が開始されると、書き戻し対象として該当するデバイスに対する第一エントリについて、インデックスSRAM400、データSRAM410よりアドレス、データを読み出し、コマンドキューに転送する(S700)。本実施形態では、第1エントリは該当デバイスの検索において最初にヒットしたエントリを第1エントリとして選択するが、他の方法であってもよい。また読み出しと同時にインデックスSRAM400のフラグ401のクリアを行う。
【0037】
第一エントリに対する書き戻し処理終了後、該当デバイスに対して保持された他のエントリがないかを検索する(S706)。エントリがない場合は書き戻し処理が終了し、エントリが存在した場合は、次のステップ(S701)へと移行する。次のステップでは、前に転送したメモリアクセスに対して同一ページのアクセスの存在を検索する。つまり、インデックスSRAM400内のデバイスアドレス402、バンクアドレス403、行アドレス404を参照し、コマンドキュー211に直前に転送したメモリアクセスと同一のものが存在するかを検索する(S701)。同一のものが存在した場合、該当エントリに対して、インデックスSRAM400、データSRAM410よりアドレス、データを読み出し、コマンドキューに転送する(S702)。読み出しと同時にインデックスSRAM400のフラグ401のクリアを行う。
【0038】
一方、検索した結果(S701)、同一ページのメモリアクセスが存在しなかった場合、前転送先のDRAMバンクと異なるDRAMバンクへのメモリアクセスを検索する。すなわち、インデックスSRAM400内のデバイスアドレス402及びバンクアドレス403が、コマンドキュー211に直前に転送したメモリアクセスのデバイスアドレス402及びバンクアドレス403と同一のものを検索する(S703)。デバイスアドレス及びバンクアドレスが同一のメモリアクセスが存在した場合は、該当エントリに対して、インデックスSRAM400、データSRAM410よりアドレス、データを読み出し、コマンドキューに転送する(S704)。また、読み出しと同時にインデックスSRAM400のフラグ401のクリアを行う。
【0039】
一方デバイスアドレス及びバンクアドレスが同一のメモリアクセスが存在しなかった場合、インデックスSRAM内で書き戻し該当デバイスの任意のエントリに対してインデックスSRAM400、データSRAM410よりアドレス、データを読み出し、コマンドキューに転送する(S705)。また、読み出しと同時にインデックスSRAM400のフラグ401のクリアを行う。
【0040】
それぞれのフロー終了後、該当デバイスへの転送終了か否かを判定し(S706)、書き戻し対象エントリ全ての書き戻しが終了するまで繰り返し実行する。
【0041】
本実施例においては、SRAM207に保持されたデータの一部を書き戻す場合について説明を行った。しかし、SRAM207内の全てのデータを書き戻す場合についても図1のフロー図において異なるDRAMバンクの選択ステップ(S703)において、デバイスアドレスあるいはバンクアドレスが異なるエントリを検索することにより同様に実現できる。
【0042】
また、内蔵メモリ制御部210がメモリアクセス制御部206内に存在する構成について開示したが、内臓メモリ制御部210はバスマスタとしてシステムバス202に直接接続する構成にしてもよい。
【0043】
更に、キャッシュメモリのコントローラ内やCPUに内蔵メモリ制御部210の機能を実装し、キャッシュ内のデータエントリを参照し一括でのキャッシュデータのライトバック処理を行うようにしてもよい。この場合、キャッシュ内のデータエントリの無効化を実施する際に、同一DRAMページに対応するエントリが連続して発行されるよう制御することにより、同一の効果を得ることが出来る。
【0044】
以上実施例で示した構成によると、LSI内蔵メモリに主記憶に保持されるデータの一時記憶を有し所定のタイミングにて書き戻しを行う際、同一DRAMページに対するアクセスは連続して転送を発行することが可能となる。またページ遷移が必要な場合は異なるDRAMバンクのメモリアクセスを選択するようアクセス順序を生成することによりバンクインターリーブにて書き戻しアクセスを発行することが可能である。従って、まとまったデータ量の書き戻し処理において、メモリアクセス期間を短くし、効率を向上させることが可能となる。
【0045】
また、上述の実施形態においてDRAM201としてSDRAM(Synchronous DRAM)やDDRSDRAM1〜3(double data rate SDRAM)を用いることもできる。
【0046】
また上述の実施形態ではメモリデバイス(デバイス)をDRAMチップ1つとして説明したが、LSIがメモリモジュール単位で省電力モードに移行させるように構成されている場合はメモリモジュールの1つをメモリデバイス(デバイス)としてもよい。また、LSI構成が2つのDRAMチップ毎に省電力モードに移行させることができるように構成されていれば、2つのDRAMチップをメモリデバイスとしてもよい。すなわち、省電力モードに移行させる回路の単位をメモリデバイスと対応させることが好ましい。なお、メモリモジュールとは複数のDRAMチップを有し、DIMM規格やSIMM(Single Inline Memory Module)規格などに対応するメモリ基盤のことを示す。
【符号の説明】
【0047】
200 LSI
201 DRAM
202 システムバス
203、204、205 バスマスタ
206 メモリアクセス制御部
207 SRAM
208 バスインターフェース
209 アクセス振り分け部
210 内蔵メモリ制御部
211 コマンドキュー
212 パワーダウン制御部
213 メモリデバイス制御部
400 インデックスSRAM
401 有効フラグ
402 デバイスアドレスフィールド
403 バンクアドレスフィールド
404 行アドレスフィールド
405 列アドレスフィールド
410 データSRAM

【特許請求の範囲】
【請求項1】
DRAMデバイスへの複数のメモリアクセスを保持する内部メモリと、
DRAMデバイスの構成に基づきメモリアクセス期間が短くなるように内部メモリに保持されたメモリアクセスデータをDRAMデバイスへ書き戻す制御手段と
を有することを特徴とするメモリ制御装置。
【請求項2】
前記メモリ制御手段は、前記内部メモリに保持されたメモリアクセスで同一のDRAMページのアクセスは連続して発行されるようアクセス順序を生成し、別のDRAMページへのアクセスは直前に書き戻しを行ったDRAMバンクと異なるバンクとなるようにアクセス順序を生成することを特徴とする請求項1に記載のメモリ制御装置。
【請求項3】
前記内部メモリは、外部主記憶に対するメモリアクセスの一時記憶として用いられることを特徴とする請求項1又は2に記載のメモリ制御装置。
【請求項4】
前記内部メモリはキャッシュメモリとして用いられることを特徴とする請求項1乃至3のいずれか1項に記載のメモリ制御装置。
【請求項5】
前記内部メモリをキャッシュメモリとして用いるCPUを更に有し、前記CPUはキャッシュ内に保持された複数のデータエントリの無効化を行う際に、同一のDRAMページに対応するエントリに関しては連続して無効化を行い、別のDRAMページに対応するエントリに関しては可能な限り直前に無効化したDRAMバンクとは異なるバンクに相当するエントリの無効化を行うことを特徴とする請求項4に記載のメモリ制御装置。
【請求項6】
前記内部メモリはSRAM(Static Random Access Memory)であることを特徴とする請求項1乃至5のいずれか1項に記載のメモリ制御装置。
【請求項7】
DRAMデバイスへの複数のメモリアクセスを保持する内部メモリと当該内部メモリを制御するメモリ制御手段とを有するメモリ制御装置によるメモリ制御方法であって、
前記メモリ制御手段が、前記DRAMデバイスの構成に基づきメモリアクセス期間が短くなるように内部メモリに保持されたメモリアクセスデータをDRAMデバイスへ書き戻す内部メモリ制御工程を有することを特徴とするメモリ制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate