図1は本発明の第1の実施形態であるデータ処理システムの構成図である。
データ処理部MS0は、中央処理装置CPUと1次キャッシュメモリL1Cとを有する。データ処理部MS0は浮動小数点演算ユニット等、図示した以外の要素を有していてもよいが、本発明では直接関係ないため図示及び説明を省略する。中央処理装置CPUは、特に制限するわけではないが、32ビットのアドレス信号によりアドレス空間を管理することが可能であり、アドレス空間の一部に後述するメモリモジュールが割り当てられている。
主記憶としての役目を果たすメモリモジュールMEMは、複数のメモリ装置(ME0〜ME7)により構成される。メモリ装置には、中央処理装置CPUで実行されるプログラムやプログラムの実行中に必要となるデータ(以下、本明細書においてはプログラムとデータとの区別を行わず一律データとして記載する)が記憶されている。本実施形態のメモリ装置のそれぞれは4つのメモリバンクから構成されており、各メモリバンクにはセンスアンプが設けられている。メモリ装置のバンクについては、2バンク構成であっても、8バンク構成であっても問題なく、特に4バンクを制限しているわけではない。更に、バンク構成を持たないメモリ装置であってもよい。
データ処理部MS0とメモリモジュールMEMとの間には、メモリモジュールMEMを制御するメモリ制御ユニットMCUが設けられる。また、メモリ制御ユニットにはPCIブリッジ回路BRGが接続される。PCIブリッジ回路は、データ処理システム外からメモリモジュールに対してデータを転送する場合に使用される。
メモリ制御ユニットMCUは、メモリモジュール内のメモリ装置のリフレッシュを制御するリフレッシュ制御回路RFCを有する。また、メモリ制御ユニットは、中央処理装置CPUからのメモリアクセスと、リフレッシュ制御回路からのメモリモジュールのリフレッシュのためのメモリアクセスと、PCIブリッジ回路BRGからのメモリアクセスとを調停する調停回路ARBを有する。調停回路は、中央処理装置、リフレッシュ制御回路及びPCIブリッジ回路からのアクセス要求を監視しており、それぞれのアクセス要求の内の1つを優先順位に従い許可する。本実施形態における優先順位は、特に制限されないが、リフレッシュ制御回路のアクセス要求を第1とし、中央処理装置からのアクセス要求を第2とし、PCIブリッジ回路からのアクセス要求を第3の優先順位とする。メモリ制御ユニットは、更に、調停回路で許可されたアクセスを受け、メモリモジュールを制御するメモリ制御回路MCを有している。メモリモジュールを構成するメモリ装置がDRAM等の場合、リフレッシュ動作が必要となるため上述のリフレッシュ制御回路が有効となる。
尚、本実施形態においては、データ処理部とメモリ制御ユニットとを併せてデータ処理装置と称することとする。但し、データ処理部において本実施形態のメモリ制御ユニットの中にメモリ制御ユニットを組み入れることも可能である。本実施形態のデータ処理部は、図示しないクロックCLKに同期して動作する。以上で述べたことは、第1の実施形態にのみに限定して適用される訳でなく、本明細書の全ての実施形態に適用される。
以下、上述のデータ処理システムの動作を説明する。中央処理装置CPUは、メモリモジュールMEMに対してデータの読み出し或いは書き込み等のアクセス要求として、CO0を介して読み出し命令を、AD0を介してメモリのアドレスを、調停回路ARBへ出力する。上述の調停手続きに従い、調停回路が中央処理装置からの読み出し命令のアクセスを許可すると、ICOを介してリード命令を、IADを介してアドレスを、メモリ制御回路MCに出力する。メモリ制御回路は、調停回路からのリード命令とアドレス信号とを受けて、メモリモジュールMEM内のメモリ装置(ME0〜ME7)を制御する。
図2は図1のメモリモジュールMEMの詳細な構成である。本実施形態のメモリモジュールは、8つのメモリ装置(ME0〜ME7)で構成される。メモリモジュール内の一つのメモリ装置ME0は4つのメモリバンク(B0〜B3)とメインアンプMAと入出力バッファIOBUFとを有する。他のメモリ装置(ME1〜ME7)についても、ME0と同様の構成のため、図示と説明とを省略する。ME0が有する4つのメモリバンク(B0〜B3)の内の一つであるメモリバンクB0は、メモリアレイ、ロウデコーダX−DEC、カラムデコーダY−DEC、センスアンプアレイSA−ARY、カラムスイッチCSW及びグローバルビット線GBLを有する。他のメモリバンク(B1〜B3)についても、メモリバンクB0と同様の構成のため、図示と説明とを省略する。メモリ制御ユニットMCUとメモリモジュールMEMとは64ビット幅のバスMDQを介してデータの入出力を行う。メモリ制御ユニットMCUに接続されている64ビットバスは、メモリモジュール内において8つのメモリ装置(ME0〜ME7)に分割されるため、1つのメモリ装置には8ビットのバスが接続されている。各メモリ装置はメモリ制御回路MCからの命令で同時に動作し、メモリモジュールMEMは同時に64ビットデータの読み出し及び書き込みを行う。本実施形態のメモリ装置(ME0〜ME7)は、4つのメモリバンク毎に、独立に制御可能である。
図3と図4ではメモリバンクの詳細な構成とメモリモジュールMEMの動作とを示す。尚、本実施形態の以下の説明において、メモリ装置はシンクロナスDRAMとして説明を進める。以下、図1の示した信号線での信号の状況を図4にて説明する。中央処理装置CPUが出力する読み出し命令とアクセスアドレスとは、調停回路ARBを経由しICOとIADとを介してメモリ制御回路MCに入力される。メモリ制御回路は、メモリモジュールに対し、MCOを介してバンクアクテイブ命令ACを、MADを介してバンクアドレスBK0( MAD[13:12]の2ビット)とロウアドレスR0( MAD[11:0]の12ビット)とを出力する。次にMCOを介してリード命令RDを、 MADを介してバンクアドレスBK0( MADD[13:12])とカラムアドレスR0( MADD[8:0]の9ビット)とを出力する。メモリ制御回路が出力した命令やアドレスは、メモリモジュールMEM内の8つのメモリ装置に並行に入力され、同じ読み出し動作を行なう。本実施形態では、メモリモジュールやメモリ制御ユニットよりなるデータ処理システムはクロック信号と同期動作しているため、それぞれの命令とアドレス、及びデータはクロックに同期して入出力される。
図2に示すメモリモジュールMEM内の8つのシンクロナスDRAM(ME0〜ME7)には、命令とアドレスとが共通に入力されるため、以下においては、それらSDRAM1つの動作を説明する。バンクアクテイブ命令ACとバンクアドレスBK0とロウアドレスR0とがSDRAM0に入力されると、バンクアドレスBK0によって選ばれた4つの内の1つのバンクB0のロウデコーダX−DECによって、バンク内の4096本のワード線の中の1つのワード線WLが選択される。図2に示すバンクの詳細を図3で示す。1本のワード線が選択されることで、4096ビットからなる1ページ分のメモリセルのデータが、4096のビット線対(BL0―0とBLB0−0からBL7−511とBLB7−511)を通り4096個のセンスアンプアレイSA−ARYに転送され、それぞれのセンスアンプにより増幅、保持される。次に、センスアンプに保持されたデータを読み出すために、MCOを介してリード命令RD、MADを介してワード線選択時のバンクアドレスBK0と同一のバンクアドレスBK0とカラムアドレスC0とが入力される。ワード線の選択時と同様に、バンクアドレスBK0により4つのバンクのうちの1つのバンクが選択され、選択されたバンクのカラムデコーダーY−DECは、カラムアドレスC0によって、4096個のカラムスイッチ群CSWの中の8個のカラムスイッチを選択する。カラムデコーダY−DECにより選択された8つのカラムスイッチでは、センスアンプに保持されたデータがグローバルビット線(GBL0〜GBLB7)に出力される。グローバルビット線に出力された8ビットのデータは、図2に示すメインアンプMAと入出力バッファIOCUFとを介してMDQに出力される。MDQに出力する際は、上述の動作を行う他の7つのSDRAMからもデータが出力されるため、64ビットのデータが出力されることとなる。以上の如くデータを出力した後、メモリ制御回路MCは、プリチャージ命令PREつまりプリチャージ制御のためのプリチャージコマンドとバンクアドレスBK0とを出力する。これにより、選択されたバンクの選択されたワード線の選択を解除し、ビット線のプリチャージを行う。このプリチャージについては、カラムアドレスの出力後どのタイミングで行うかについては、規格により定められている場合もある。本明細書の同期型メモリ装置においては、その期間は4クロック後となっているが、特に制限しているわけではない。本明細書の同期型でないメモリ装置についても同様である。つまり、RAS信号をHighにしてプリチャージを行い、ページを閉じる。以上の動作では、メモリ制御回路MCがメモリモジュールMEMに対して、バンクアクティブ命令ACを出力し、メモリモジュールからデータが出力されるまでのレイテンシは7サイクル、つまりアクセスのレイテンシは7サイクルとなる。
図5は図1のメモリ制御回路MCの詳細な構成である。メモリ制御回路は、ページアクセス判定回路PHと、モード切り替えブロックMODEと、メモリモジュールに対して制御命令とアクセスアドレスとを発行するアドレス発生回路ACGと、メモリモジュールに対する入出力データの制御を行う入出力データ制御回路DQBとを有する。ページアクセス判定回路PHは、以前のアクセスアドレスのロウアドレスと調停回路ARBから供給される現在のアクセスアドレスのロウアドレスとが一致したか否かの判定を行う。モード切り替えブロックMODEは、メモリモジュールMEMへのアクセスの後にメモリ装置のページを閉じるページ・オフ・モードにするか、ページを開いた状態を維持するページ・オン・モードにするかの切り替えを動的に行なうブロックである。ページアクセス判定回路とモード切り替えブロックとについては以下に示す。
図6と図7とに基づき、ページアクセス判定回路PHとモード切り替えブロックの動作を説明する。図6はページアクセス判定回路が保持しているメモリモジュールMEMの各バンクに対応したロウアドレス選択信号PSと比較ロウアドレスTRADとのテーブルを示す。比較ロウアドレスTRADには、それぞれのバンクに対する直前のアクセスにおけるロウアドレスが記憶されれいる。ロウアドレス選択信号PSがLowの時は、対応するバンクのロウアドレスTRADが選択されていないことを示し、Highの時は、そのバンクのロウアドレスTRADが選択されていることを示す。つまり、対応するバンクの前回のアクセスが終了した時点で、ページが閉じられていればLow、ページが開いたままであればHighとなる。
図7(a)はページアクセス判定回路PHの動作タイミングを示す。メモリ制御回路MCには、調停回路ARBからリード命令RとアクセスアドレスAD0とが入力される。アクセスアドレスAD0は、バンクを指定するバンクアドレスIAD(BANK)とワード線を指定するロウアドレスIAD(ROW)とを有する。アクセスアドレスAD0のうち、バンクを指定するバンクアドレスIAD(BANK)の値が”1”、ワード線つまりページを指定するロウアドレスIAD(ROW)が”38”の場合を例示する。ページアクセス判定回路は、バンクアドレスの”1”に基づき図6に示すテーブルより取得された第1バンクの比較ロウアドレスの値”5”と、入力されたロウアドレスIAD(ROW)の”38”とを比較する。この場合は、入力されたロウアドレスと比較ロウアドレスとは一致しない。つまり、バンク1に関しては、直前のバンク1に対するアクセスと今回のバンク1に対するアクセスとではロウアドレスが異なる、つまり異なるページアクセスと判定される。この場合、図5に示す、ロウアドレスの一致を示す信号HTはLowとなる。また、バンク1に関するロウアドレスの不一致信号MSIG[1]はHighとなり、モード切り替えブロックMODEへ出力される。PSOは、第1バンクのPSの値であるHighの出力である。更に、第1バンクの比較ロウアドレスとロウアドレスとが一致しなかったので、第1バンクの比較ロウアドレスの値は5から38へと更新される。
次に、図7(b)の動作を説明する。メモリ制御回路MCに入力されるバンクアドレスIAD(BANK)が”3”、ロウアドレスIAD(ROW)が”41”の場合を示す。ページアクセス判定回路PHは、図6に示す第3バンクの比較ロウアドレスの値”41”と入力されたロウアドレスIAD(ROW)の”41”とを比較する。この場合は、入力されたロウアドレスと比較ロウアドレスとは一致する。つまり、バンク3に関しては、直前のバンク3に対するアクセスと今回のバンク3に対するアクセスとではロウアドレスが一致、つまりページアクセスと判定される。その結果、ロウアドレスの一致を示す信号HTはHigh、バンク3に関するロウアドレスの不一致信号MSIG[3]はLowとなる。PSOは、第3バンクのPSの値であるHighの出力である。第3バンクの比較ロウアドレスと入力されたロウアドレスとは一致したため第3バンクの比較ロウアドレスの値”41”はそのまま保持される。ここで、MSIG[*](*はバンク番号)は第*バンクに対するロウアドレス不一致信号であり、第*バンクへのアクセスがページアクセスの場合はLowとなり、異なるページアクセスの場合はHighとなる。
モード切り替えブロックMODEは、各バンクに割り当てられた制御モードを切り替える複数のモード切り替え回路(PRJ0〜PRJ3)を有する。そのうちの一つである第3バンクに対応するモード切り替え回路PRJ3は、異なるページアクセスの連続回数のアクセス回数カウンターRCと、このアクセス回数カウンターRCの値に基づきLPR[3]をHighレベルまたはLowレベルに切り替えるスイッチ回路SWとから構成される。LPR[3]がHighの時はページ・オフ・モードを示し、Lowの時はページ・オン・モードを示す。他のモード切り替え回路(PRJ0〜PRJ2)の構成は、モード切り替え回路PRJ3と等しく、それぞれメモリモジュールの第0のバンクから第2のバンクに対応するモード切り替え回路である。上述したページ・オン・モードとは、メモリモジュールからデータを読み出したりメモリモジュールにデータ書き込むためにメモリモジュールにアクセスした際、次のアクセスが起きるまでページを閉じないようにメモリ装置を制御するモードであり、ページ・オフ・モードとは、メモリモジュールにアクセスした際、アクセス毎にページを閉じるようにメモリ装置を制御するモードである。RASダウンモード、或いは、単にページモードは、ページ・オン・モードに対応する表現である。
モード切り替え回路(PRJ0〜PRJ3)が備えているアクセス回数カウンターRCには、中央処理装置CPUによって、異なるページアクセスの連続回数を設定することが可能である。中央処理装置CPUは、アクセス回数カウンターに設定するための命令RSETと、異なるページアクセスの連続回数の値とを出力する。命令RSETと連続回数の値は、図1のCO0とAD0とを経由してメモリ制御ユニットMCUに入力され、調停回路ARBを介してモード切り替え回路(PRJ0〜PRJ3)に入力され、中央処理装置からの命令により、アクセス回数カウンターRCに異なるページアクセスの連続回数の値が設定される。(本実施形態では、中央処理装置が異なるページアクセスの連続回数の値を設定するが、特に制限している訳ではなく、データ処理システム外から設定することも可能であり、メモリ制御ユニットの製造段階で固定値を設定しておくことも可能である。
図8はモード切り替え回路(PRJ0〜PRJ3)の動作を示す。モード切り替え回路(PRJ0〜PRJ3)は、第0バンク〜第3バンクに対応し、それぞれのバンクを独立に制御する。しかしそれらの動作は同一の思想に基づき動作するため、ここでは第3バンクを制御するモード切り替え回路PRJ3の動作を代表して説明する。尚、モード切り替え回路PRJ3のアクセス回数カウンターRCには、異なるページアクセスの連続回数値Nが既に設定されているものとする。以下、モード切り替え回路の動作を2つの動作フローに大別して説明する。
まず、第1動作フローを説明する。この状態において、既にページ・オン・モードが設定されているものとする。中央処理装置CPUからのメモリモジュールMEMに対するアクセスが調停回路ARBを介してメモリ制御回路MCに入力される。ページアクセス判定回路PHは、入力されたアクセスアドレスがページアクセスか否かを判定する。判定結果は、ロウアドレス不一致信号MSIG[3]としてモード切り替え回路PRJ3に入力される。モード切り替え回路PRJ3では、HighがN回連続したか否か、つまりページアクセスでないアクセスがアクセス回数カウンターRCの値の回数だけ連続したか否かをチェックする。MSIG[3]のHighがN回連続しなかった場合は、モード切り替え回路PRJ3の出力であるLPR[3]をLowにし、ページ・オン・モードを維持する。 MSIG[3]のHighがN回連続した場合は、LPR[3]をHighへと変更してページ・オフ・モードに切り替え、第2動作フローに移行する。
第2動作フローでは、ページアクセスが生じるまで、つまりロウアドレス不一致信号MSIG[3]がLowになるまで、 LPR[3]をHighとし、ページ・オフ・モードを維持する。MSIG[3]がLow、つまりページアクセスとなればLPR[3]をLowとし、ページ・オン・モードに切り替え、第1動作フローへ移行する。
第3バンクを制御するモード切り替え回路PRJ3は上記一連の制御を繰り返し行い、モード切り替え回路(PRJ2〜PRJ0)は第2バンクから第0バンクに対するアクセスについて同様の一連の制御を行う。
図9と図10とを用い、図5内のアドレス発生回路ACGの動作と、それぞれのモードにおけるメモリモジュールへのアクセスの動作波形を示す。図5に示すように、アドレス発生回路ACGには、調停回路ARBからのリード命令とアクセスアドレスとが、ページアクセス判定回路PHからのページアクセス判定信号HTとロウアドレス選択信号PSOが、モード切り替えブロックMODEからLPRが入力される。ページ・オン・モードの場合はLPRはLowとなり、ページ・オフ・モードの場合はLPRはHighとなる。ページ・オン・モードの場合は、メモリモジュールへのアクセスの最後に、プリチャージ命令PREの発行は行わず、ページを開いた状態を保持する。以下、図9の(A)〜(H)について具体的に説明する。
(A):ロウアドレス選択信号PSOがHigh、ロウアドレスの一致を示す信号HTがHigh、且つLPRがLowのときは、すでにページが選択されており、そのページと同一のページにアクセスが生じたことを表し、リード命令RDとカラムアドレスのみをメモリモジュールMEMに出力する。この時のデータ転送のリードアクセスのレイテンシは5となる。図10では最も下のタイミング図が該当する。
(B):ロウアドレス選択信号PSOがLow、HTがHigh、且つLPRがLowのときは、ページは選択されていないため、バンクアクテイブ命令ACとロウアドレス、リード命令RDとカラムアドレスの順にメモリモジュールへ出力する。この時のデータ転送のリードレイテンシは7となる。図10では、下から2段目のタイミング図が該当する。この(B)は、ページ・オフ・モードからページ・オン・モードへと切り替わるアクセスである。
(C):ロウアドレス選択信号PSOがHigh、HTがLow、且つLPRがLowのときは、すでにページが選択されており、そのページと異なるページにアクセスが生じた事を表し、プリチャージ命令PRE、バンクアクテイブ命令ACとロウアドレス、リード命令RDとカラムアドレスの順にメモリモジュールへ出力する。この時のデータ転送リードレイテンシは9となる。図10では最も上に示したタイミング図が該当する。ページ・オン・モードにおいて、異なるページへのアクセスが発生している状況である。
(D):ロウアドレス選択信号PSOがLow、HTがLow、且つLPRがLowのときは、ページは選択されていないため、バンクアクテイブ命令AC、リード命令RDの順にメモリモジュールへ出力する。この時のデータ転送のリードレイテンシは7となる。
以上(A)〜(D)はページ・オン・モードに関する説明である。以下に示す(E)〜(H)はページ・オフ・モードについての説明である。ページ・オフ・モードでは、アクセスの最後に、プリチャージ命令PREを発行し、メモリモジュールMEMのページを閉じた状態、つまりワード線を非選択状態とする。
(E):ロウアドレス選択信号PSOがHigh、HTがHigh、且つLPRがHighのときは、すでにページが選択されており、そのページと同一のページにアクセスが生じたことを表し、リード命令RDとカラムアドレス、プリチャージ命令PREをメモリモジュールに出力し、データ出力後にページを閉じる。この時のデータ転送リードレイテンシは5となる。
(F):ロウアドレス選択信号PSOがLow、HTがHigh、且つLPRがHighのときは、ページは選択されていないため、バンクアクテイブ命令ACとロウアドレス、リード命令RDとカラムアドレス、プリチャージ命令PREの順にメモリモジュールへ出力する。この時のデータ転送のリードレイテンシは7となる。
(G):ロウアドレス選択信号PSがHigh、HTがLow、且つLPRがHighのときは、すでにページが選択されており、そのページと異なるページにアクセスが生じた事を表し、プリチャージ命令PRE、バンクアクテイブ命令ACとロウアドレス、リード命令RDとカラムアドレス、プリチャージ命令PREの順にメモリモジュールへ出力する。この時のデータ転送リードレイテンシは9となる。図10では上から2段目に示したタイミング図が該当する。ページ・オン・モードにからページ・オフ・モードへと移行している状況である。
(H):ロウアドレス選択信号PSがLow、HTがLow、且つLPRがHighのときは、ページは選択されていないため、バンクアクテイブ命令ACとロウアドレス、リード命令RDとカラムアドレス、プリチャージ命令PREの順にメモリモジュールへ出力する。この時のデータ転送のリードレイテンシは7となる。図10では上から3段目に示したタイミング図が該当する。ページ・オフ・モードが継続している状況である。
図9の表の最下段に示しているライトレイテンシは、ライト命令WTが入力した際の、アドレス発生回路ACGの動作の一例を示す。メモリモジュールにデータを書き込む場合は、コマンドシーケンスのリード命令RDがライト命令WTに置き換わる。
ページ・オン・モードで、異なるページアクセスが生じると、現在開いているページを閉じる必要がある。つまり現在選択状態であるワード線を非選択としてデータ線をプリチャージするためのプリチャージ命令PREを発行する必要がある。この場合は、ページを閉じた後再度ページを開く必要があるため、リードレイテンシは9サイクルとなる。上記のように異なるページアクセスが連続すると、ページ・オン・モードからページ・オフ・モードに切り替わる。ページ・オフ・モードでは、異なるページのアクセスでは、以前のアクセスで、すでにページが閉じられているため、最初にプリチャージ命令PREを発行する必要がなく、レイテンシは7サイクルとなる。尚、ページ・オン・モードからページ・オフ・モードに切り替わる際、異なるページアクセスが連続する必要性は無く、ページ・オン・モードにおいて、一度だけ異なるページへのアクセスが生じた時点で、ページ・オン・モードに切り替えることも可能である。これはアクセス回数カウンタRCの設定を”1”とすればよい。更に、異なるページアクセスが連続するのでなく、同一ページへのアクセスと異なるページへのアクセスの割合によってページ・オン・モードからページ・オフ・モードに切り替わるようにすることも可能である。更に、図9の(E)の如く、強制的にページ・オン・モードからページ・オフ・モードに切り替わるような構成を設けることも可能である。一方ページ・オフ・モードで、同一ページのアクセスが生じると、ページ・オン・モードに切り替わる。ページ・オン・モードでの同一ページアクセスでは、現在開いているページと同一のページに対するアクセスであるため、新規にページを開く必要はなく、レイテンシは5となる。この場合も、図9の(D)の如く、強制的にページ・オフ・モードからページ・オン・モードに切り替わるような構成を設けることも可能である。また、ページ・オフ・モードにおいて何度かページアクセスが生じた後にページ・オン・モードに切り替わる構成であってもよい。この場合は、図9の(E)の状況が継続した後にページ・オン・モードに切り替わることとなる。何度ページアクセスが起きればページ・オン・モードに切り替わるかを設定するために、アクセス回数カウンタRCの如きレジスタを持つことも可能である。
本発明は、上述のように、アクセスに応じて、ページ・オン・モードとページ・オフ・モードとが動的に切り替ええられることを特徴とし、中央処理装置とメモリモジュールとの間のデータのやり取りを高速で行うことを可能としている。
図11は、メモリ制御回路MCにリフレッシュ命令が入力した際の動作を示し
た波形である。リフレッシュ命令が入力したら、プリチャージオール命令PAL
でメモリモジュールの全メモリバンクをプリチャージし、その後リフレッシュ命
令REFを発行する。プリチャージオール命令PALで全メモリバンクをプリチ
ャージした際には、ページアクセス判定回路PH内のロウアドレス選択信号PS
をすべてLowにする。
図12(a)は、中央処理装置CPUからメモリモジュールMEMへ生じるアクセスの代表例を示す。中央処理装置からメモリモジュールへは、同一ページの連続アクセスと、異なるページの連続アクセスとが交互に生じる特性がある。T1、T3は同一ページへの連続アクセスが続いている期間を示し、T2、T4は異なるページへの連続アクセスがつづいている期間を示す。図12(b)は、同一ページの連続アクセスが続いている期間T1及びT3において、ページ・オン・モードに固定した制御、ページ・オフ・モードに固定した制御、本発明のモード切り替え制御を行なった場合のレイテンシ比較を示す。図12(c)は、異なるページの連続アクセスが続いている期間T2及びT4において、ページ・オン・モードに固定した制御、ページ・オフ・モードに固定した制御、本発明のモード切り替え制御を行なった場合のレイテンシ比較を示す。図12(b)、(c)で示すように、本発明によれば、同一ページの連続アクセスが続いている期間T1及びT3ではページ・オン・モードで動作し、異なるページの連続アクセスが続いている期間T2及びT4ではページ・オフ・モードに切り替ええて動作する。このモード切り替えによって、常に、レイテンシを最小にし、メモリモジュールへのアクセスを高速にすることが可能となる。更に、メモリ装置のセンスアンプの動作回数を抑制するため、メモリ装置の消費電力を低減する可能となる。
以上、第1の実施形態についての説明を行ったが、第1の実施形態ではメモリモジュールは複数のバンクを有する構成とした。しかし上述の説明より明かなように、本発明の思想は、メモリバンクを有さないメモリモジュールにより構成されるデータ処理システムに適用することも可能であり、メモリバンクを有さないメモリモジュールにより構成されるデータ処理システムのメモリ装置へのアクセスの高速化を実現することも可能である。
図13は、本発明の第2の実施形態のメモリ制御回路MC1構成である。データ処理システムの他の構成要素については第1の実施形態と同様であるため説明及び図示を省略し、名称や記号は第1の実施形態におけるものと同様とする。
メモリ制御回路MC1は、調停回路ARBからのアクセスアドレスに基づき、次のアドレス(所定のオフセットを加算したアドレス)を先行発行する先行発行回路PFSを有する。また、メモリ制御回路は、現在のアクセスアドレスが以前のアクセスアドレスに対して異なるページか或いは同一のページかを判定し、メモリモジュールのページを閉じるページ・オフ・モードにするか或いはページを開くページ・オン・モードにするかの切り替えを動的に行なうモード切り替えブロックMODE0を有する。更に、バンク毎に、以前のアクセスアドレスのロウアドレスと、現在のアクセスのロウアドレスが一致した否かのページアクセスを判定するページアクセス判定回路PH0を有する。また、先行発行回路PFSで以前に先行発行されたロウアドレスと調停回路ARBからのロウアドレスとが一致したどうかを判定する先行発行アクセス判定回路PH1と、先行発行アクセス判定回路PH1の結果を受けて先行発行回路PFSでの先行発行を有効にするか或いは無効にするかの切り替えを動的に行なう先行発行モード切り替えブロックMODE1とを有する。更に、メモリモジュールに対して、制御命令とアドレスを発生するアドレス発生回路ACGと入出力データを制御する入出力データ制御回路DQBとを有する。モード切り替えブロックMODE0と先行発行モード切り替えブロックMODE1との動作は図2のモード切り替えブロックMODEと同様である。
以下、先行発行回路PFSと先行発行アクセス判定回路PH1との動作を説明する。
図14は、先行発行アクセス判定回路PH1が有する、メモリモジュールの各バンク毎に対応したロウアドレスのテーブルを示す。このロウアドレスは、現在のメモリアクセスの以前に先行発行回路PFSが先行発行した比較ロウアドレスPRADを示す。
図15は、先行発行回路PFSが保持しているテーブルである。それらは、先行発行アドレスをページアクセス判定回路PH0の入力として有効とするか或いは無効とするかをメモリバンク毎に対応させたバリッド信号PFである。バリッド信号PFがHighのときは有効、Lowの時は無効を示す。
図16(a)及び(b)は、先行発行回路PFSと先行発行アクセス判定回路PH1の動作の一例を示す。図16(a)では、メモリ制御回路MC1へICOを通じてリード命令RとバンクアドレスIAD(BANK)の値”2”、ロウアドレスIAD(ROW)の値”105”が入力される。先行発行回路PFSは、このアクセスアドレスに対し、SADを介して、バンクアドレスSAD(BANK)の値”2”、ロウアドレスSAD(ROW)の値”105”を先行発行アクセス判定回路PH1へ出力する。先行発行アクセス判定回路PH1は、図14に示す第2バンクの比較ロウアドレスPRADの値”105”と入力されたロウアドレス値”105”とを比較する。この場合、一致したので、ページアクセスと判定され、HSIG[2]はHighとなり、第2バンクのPRADの値は”105”のまま保持される。先行発行回路PFSは、次に、先行発行アドレスをSADを介してバンクアドレスSAD(BANK)の値”3”、ロウアドレスSAD(ROW)の値”105”を先行発行アクセス判定回路PH1へ出力する。併せて、アクセス判定回路PH0へはPFEをLowとして出力する。発行アクセス判定回路PH1では図14に示す第3バンクの比較ロウアドレスPRADの値”15”を、入力された先行発行ロウアドレスSAD(ROW)の値105に更新する。先行発行回路PFSがSADを介して先行発行したバンクアドレスSAD(BANK)の値は”3”であるため、図15に示すバリッド信号PFのうち第3バンクに対応しているバリッド信号を検索する。このバリッド信号PFの値はHighであるため、先行発行アドレスは、有効と判断され、PFEをLowとする。先行発行モード切り替えブロックMODE1から先行発行回路PFSへ出力される信号LPF[0:3]は、各バンクに対応しており、前記バリッド信号PFの値をHighあるいはLowに設定するために必要な切り替え信号である。LPFがHighであることは、先行発行アドレスを有効に切り替えることを示し、LPFがLowであることは、先行発行アドレスを無効に切り替ええることを示す。 LPF[2]がHighのとき、バリッド信号PFの第2バンクに対応する箇所がHighに設定される。LPF[2]がHighに設定される。
図16(b)では、メモリ制御回路MC1へICOを通じてリード命令RとバンクアドレスIAD(BANK)の値”0”、ロウアドレスIAD(ROW)の値”18”が入力される。先行発行回路PFSは、このアクセスに対し、SADを介し、バンクアドレスSAD(BANK)の値”0”、ロウアドレスSAD(ROW)の値を”18”を先行発行アクセス判定回路PH1へ出力する。先行発行アクセス判定回路PH1は、図14に示す第0バンクの比較ロウアドレスPRADの値”8”と入力されたロウアドレス値”18”とを比較する。この場合、一致しないので、HSIG[0]はLowとなる。第0バンクの比較ロウアドレスPRADの値は8のまま保持される。先行発行回路PFSは、次に、先行発行アドレスとして、バンクアドレスSAD(BANK)の値”1”、ロウアドレスSAD(ROW)の値”18”を先行発行アクセス判定回路PH1へ出力する。更に、先行発行回路PFSは、PF1をLowとし先行発行アクセス判定回路PH1へ出力する。先行発行アクセス判定回路PH1は、図14に示す第1バンクの比較ロウアドレスPRADの値”6”を先行発行ロウアドレスSAD(ROW)の値”18”に更新する。先行発行回路PFSがSADを介して先行発行したバンクアドレスSDA(BANK)の値が”1”であるため、前記バリッド信号PFのうち第1バンクに対応しているバリッド信号PF1を検索する。このバリッド信号PFの値がLowであるため、先行発行アドレスは、無効と判断され、PFEをHighとする。LPF[1]がLowになると、前記バリッド信号PFのうち第1バンクに対応しているバリッド信号PF1をLowに設定する。
図17には、先行発行モード切り替えブロックMODE1の動作を示す。先行発行モード切り替えブロックMODE1は、図2に示すモード切り替えブロックMODEと同じ構成で、同様の動作を行う。以下、一連の動作を2つの動作フローに分けて説明する。
第1動作フローでは、調停回路ARBからのアクセスアドレスが先行発行モード切り替えブロックMODE1に入力するたびに、HSIGのHighがM回連続したかどうかをチェックする。HSIGのHighがM回連続しなかった場合は、LPFをLowにし、先行発行アドレス無効モードを維持する。 HSIGのHighがM回連続した場合は、LPFをHighにし、先行発行アドレス有効モードに切り替ええ、第2動作フローへ移行する。
第2動作フローでは、HSIGがLowになるまで、先行発行アドレス有効モードを維持し続け、 LPFをHighにする。HSIGがLowになったらLPFをLowにし、先行発行アドレス無効モードに切り替ええ、第1動作フローへ移行する。このように、一連の制御を繰り返し行う。
図18(a)及び(b)には、ページアクセス判定回路PH0及びアドレス発生回路ACGの動作を示す。図18(a)において、メモリ制御回路MC1へICOを介してリード命令R、IADを介してアドレスA0が入力される。先行発行回路PFSは、このアクセスに対し、SADを介してアドレスA0と先行発行アドレスA1とをページアクセス判定回路PH0へ出力する。ページアクセス判定回路PH0は、アドレスA0は同一ページアクセスと判定しHTをHigh、MSIGをLow、PSOをHighと出力する。先行発行アドレスA1は、PFEがLowで有効と判断され、ページアクセス判定回路PH0でのページアクセスの判定の対象となる。その結果、異なるページアクセスと判定されHTをLow、その時の、PSOはHighとなる。アドレス発生回路ACGは、アドレスA0に対するリード命令をページアクセス判定回路PH0と、先行発行回路PFSよりのHT、PSO及びPFEの各信号をうけ、アドレスA0に対して、リード命令RD、バンクアドレスB0、カラムアドレスC0をメモリモジュールへ出力する。先行発行アドレスA1に対しては、プリチャージ命令PRE、バンクアクテイブ命令AC、バンクアドレスB1及びロウアドレスR1をメモリモジュールへ出力する。
図18(b)では、メモリ制御回路MC1へICOを介してリード命令R、IADを介してアドレスA0が入力されると、先行発行回路PFSは、このアクセスに対し、SADよりアドレスA0と先行発行アドレスA1とをページアクセス判定回路PH0へ出力する。ページアクセス判定回路PH0は、アドレスA0は異なるページアクセスと判定しHTをLow、MSIGをHigh、PSOをLowと出力する。先行発行アドレスA1は、PFEがHighで無効と判断され、ページアクセス判定回路PH0でのページアクセスの判定の対象とはならず、何も行わない。アドレス発生回路ACGは、アドレスA0に対するリード命令をページアクセス判定回路PH0と、先行発行回路PFSより、HT、PSO及びPFEの各信号をうけ、アドレスA0に対して、バンクアクティブ命令AC、リード命令RD、バンクアドレスB0、ロウアドレスR0及びカラムアドレスC0をメモリモジュールへ出力する。先行発行アドレスA1に対しては、何も行わない。
図19は、メモリ制御回路MC1の全体動作例を説明する。ICOを介してリード命令R0とIADを介してアドレスA0とが先行発行回路PFSへ入力される。先行発行回路PFSはSADを介して、先ずA0を発行し、次に先行発行アドレスA1を発行する。このとき、先行発行アドレスA1はアドレスA0とは異なるバンクへのアドレスである。アドレスA0は、ページアクセス判定回路PH0に入力される。ページアクセス判定回路PH0は、第1の実施形態と同様に、入力されたロウアドレスが比較ロウアドレスと同一、つまり同一ページと判断すると、HTはHighとなる。この場合、アドレス発生回路ACGはリード命令RD、バンクアドレスB0及びカラムアドレスC0とをメモリモジュールに対して出力する。先行発行アドレスA1はアドレスA0の次にページアクセス判定回路PH0に入力される。ページアクセス判定回路PH0内の比較ロウアドレスと入力されたロウアドレスとは異なると判定される、つまり、異なるページと判断すると、HTはLowとなり、アドレス発生回路ACGは、先行発行アドレスに対するデータを、DRAMのセンスアンプに保持するために、プリチャージ命令PREを出力し、バンクアクテイブ命令ACとバンクアドレスB1とロウアドレスR1を出力する。次に、ICOを介してリード命令R1とIADを介してアドレスA1が先行発行回路PFSへ入力されると、SADを介して先ずA1を発行し、次に先行発行アドレスA2を発行する。アドレスA1に対するロウアドレスは、以前のアドレスA0によって選択されているため、HTはHighとなり、所望のデータは最小レイテンシ2でメモリモジュールより出力される。このように、次アドレスを先行発行し制御することで、同一ページへのアクセスの頻度を、向上することができ、メモリモジュールへのアクセスを高速にすることが可能となる。
図20は、本発明は第3の実施形態を示すメモリ制御回路MC2の構成図である。この実施形態では、第1の実施形態で示したメモリ制御回路MCに、自動アドレス調整回路ATを付加したことを特徴とする。
図21は、メモリ制御回路MC2を適用したデータ処理システム構成図である。このデータ処理システムは、メモリモジュールMEMと、メモリモジュールをアクセスする中央処理装置CPUと1次キャッシュLICとを有するデータ処理部MS2と、PCIブリッジ回路BRGと、メモリモジュールMEMを制御するメモリ制御ユニットMCU2とで構成される。メモリモジュールMEMは、図1に示すメモリモジュールMEMに、メモリモジュールの構成を示すバンクアドレス、ロウアドレス及びカラムアドレスのモジュール・ステイタス情報を保持しているモジュール・ステイタス・レジスタMREGを付加している。データ処理部MS2は、図1に示すデータ処理部MS0に、1次キャッシュの構成を示すタグ、インデックス、ラインサイズのキャッシュ・ステイタス情報を保持しているキ
ャッシュ・ステイタス・レジスタLREGを付加している。
図20及び図21を用い、キャッシュ・ステイタス・レジスタLREGに保持されているキャッシュ・ステイタス情報とモジュール・ステイタス・レジスタMREGに保持されているモジュール・ステイタス情報とを自動アドレス調整回路ATへ転送する動作を説明する。まず、キャッシュ・ステイタス・レジスタLREGに保持されているキャッシュ・ステイタス情報を自動アドレス調整回路ATに転送する動作を説明する。中央処理装置CPUは、キャッシュ・ステイタス・レジスタLREGに保持しているキャッシュ・ステイタス情報をメモリ制御回路に転送する転送命令WCをCO0とICOとを介して出力し、キャッシュ・ステイタス情報をDQ0とIDQとを介してメモリ制御回路内の自動アドレス調整回路ATに出力する。IDQ[4:0]よりラインサイズのビット数、IDQ[9
:5]よりインデックスのビット数、IDQ[14:10]よりタグのビット数がアドレス調整回路ATに送られる。転送命令WCによりキャッシュ・ステイタス情報は自動アドレス調整回路AT内のレジスタCREGに転送される。
次に、中央処理装置CPUより、モジュール・ステイタス・レジスタMREGに保持されているモジュール・ステイタス情報を、メモリ制御回路に転送する転送命令RMをCO0とICOとを介してメモリ制御回路に出力する。メモリ制御回路内のアドレス発生回路ACGは、モジュール・ステイタス・レジスタMREG内のモジュール・ステイタス情報を読み出すための読み出し命令RMをメモリモジュールに対して出力する。それにより、メモリモジュールより、MDQとIDQとを介して自動アドレス調整回路内のレジスタに転送される。
図22は、1次キャッシュL1Cの構成として、ラインサイズが5ビット、インデックスが8ビット及びタグが19ビットの場合と、メモリモジュールMEMの構成としてカラムアドレスが9ビット、バンクアドレスが2ビット及びロウアドレスが12ビットの場合において、自動アドレス調整回路ATがアドレス調整を行った例である。IAD[31:0]は自動アドレス調整回路ATに入力されるアドレスで、SAD[22:0]は自動アドレス調整回路ATで調整を行われて出力するアドレスである。LIN0〜LIN4の5ビットはラインサイズのビット、IND0〜IND7の8ビットはインデックスのビット、TAG0〜TAG18の19ビットはタグのビットを示す。C0〜C8の9ビットはカラムアドレスのビット、B0〜B1の2ビットはバンクアドレスのビット、R0〜R11の12ビットはロウアドレスを示す。まず、IAD[31:0]の下位ビットから順に、ラインサイズの5ビット、インデックスの8ビット、タグの19ビットを割り当て、SAD[22:0]の下位ビットから順に、カラムアドレスの9ビット、バンクアドレスの2ビット、ロウアドレスの12ビットを割り当てる。次に、タグの下位ビットから順に、バンクアドレスに割り当てる。
図23は、1次キャッシュL1Cの構成として、ラインサイズが5ビット、インデックスが9ビット、タグが18ビットの場合と、メモリモジュールMEMの構成としてカラムアドレスが9ビット、バンクアドレスが2ビット、ロウアドレスが12ビットの場合に、自動アドレス調整回路ATがアドレス調整を行った例である。IAD[31:0]は自動アドレス調整回路ATに入力するアドレスで、SAD[22:0]は自動アドレス調整回路ATで調整が行われて出力するアドレスである。LIN0〜LIN4の5ビットはラインサイズのビット、IND0〜IND8の9ビットはインデックスのビット、TAG0〜TAG17の18ビットはタグのビットを示す。C0〜C8の9ビットはカラムアドレスのビット、B0〜B1の2ビットはバンクアドレスのビット、R0〜R11の12ビットはロウアドレスのビットを示す。まず、IAD[31:0]の下位ビットから順に、ラインサイズの5ビット、インデックスの9ビット、タグの18ビットを割り当て、SAD[22:0]の下位ビットから順に、カラムアドレスの9ビット、バンクアドレスの2ビット、ロウアドレスの12ビットを割り当てる。次に、タグの下位ビットから順に、バンクアドレスに割り当てる。
このように、TAGビットにバンクアドレスを自動的に割り付けることで、1次キャッシュのキャッシュミスに起因したキャッシュエントリのリプレースを行うためのリード動作とライトバックのためのライト動作とを、異なるバンクに分散させ、同一バンクの異なるページ動作の頻度を減らし、DRAM及びシンクロナスDRAMを高速に動作させることが可能となる。
図24は、本発明の第4の実施形態である。この実施形態では、図1のメモリモジュールをDDRシンクロナスDRAMで構成する。DDR(Double Data Rate)SDRAMも、SDRAMと同様に複数のメモリバンクと、このメモリバンクに対応したセンスアンプをもっている。DDRSDRAMはクロックの立ち上がりと立ち下がりでデータを転送できる特徴がある。本実施形態の構成については、第1の実施形態とほぼ同一の構成となるため、図示と説明とは省略する。本実施形態により、DDRSDRAMを高速に動作させることが可能となる。図24では、リード命令Rがメモリ制御回路MCへ入力したとき、メモリ制御回路MCが行なうモード切り替え制御よって、メモリ制御回路がメモリモジュールMEMへ出力する命令、アドレス及びメモリモジュールから読み出されたデータの動作波形のリードレイテンシを示す。ページ・オン・モードで、異なるページアクセスが生じると、現在開いているページを閉じるため、プリチャージ命令PREを発行し、再度ページを開く必要があるためリードレイテンシは8サイクルとなる。異なるページアクセスが連続すると、ページ・オン・モードからページ・オフ・モードに切り替わる。ページ・オフ・モードでの異なるページのアクセスでは、以前のアクセスで、すでにページが閉じられているため、最初にプリチャージ命令PREを発行する必要がなく、レイテンシは6サイクルとなる。ページ・オフ・モードで、同一ページのアクセスが生じると、ページ・オン・モードに切り替えわる。ページ・オン・モードでの同一ページアクセスでは、開いているページと同一のページに対するアクセスであるため、新規にページを開く必要がなく、レイテンシは4となる。上述の如く、DDRSDRAMで構成されたメモリモジュールに対してモードを切り替ええて制御を行うことで、メモリモジュールとのアクセスを高速で行うことが可能となる。
図25は、第4の実施形態のモード切り替え回路の動作を示す。本実施形態のモード切り替え回路は、第1の実施形態の図5のモード切り替え回路(PRJ0〜PRJ3)と同様の構成であり、図25で示す記号は、第1の実施形態のものと同じ意味を有するものとする。ここにおいても、第1の実施形態での説明と同様に、4つのバンクより構成されるDDR−SDRAMの第3バンクを制御するモード切り替え回路PRJ3の動作を代表して説明する。モード切り替え回路PRJ3のアクセス回数カウンターRCには、異なるページアクセスの連続回数値Nが既に設定されているものとする。以下、モード切り替え回路の動作を3つの動作フローに大別して説明する。
まず、第1動作フローを説明する。この状態において、既にページ・オン・モードが設定されているものとする。中央処理装置CPUからのメモリモジュールMEMに対するアクセスが調停回路ARBを介してメモリ制御回路MCに入力される。ページアクセス判定回路PHは、入力されたアクセスアドレスがページアクセスか否かを判定する。判定結果は、ロウアドレス不一致信号MSIG[3]としてモード切り替え回路PRJ3に入力される。モード切り替え回路PRJ3では、HighがN回連続したか否か、つまりページアクセスでないアクセスがアクセス回数カウンターRCの値の回数だけ連続したか否かをチェックする。MSIG[3]のHighがN回連続しなかった場合は、モード切り替え回路PRJ3の出力であるLPR[3]をLowにし、ページ・オン・モードを維持する。MSIG[3]のHighがN回連続した場合は、LPR[3]をHighへと変更してページ・オフ・モードに切り替え、第2動作フローに移行する。
第2動作フローでは、モード切り替え回路PRJ3が、ページ・オフ・モードの状態において、MSIG[3]がHighであるか否かのチェックを行う。ロウアドレス不一致信号MSIG[3]がLowのとき、つまりページアクセスのときは、アクセス回数カウンターRCの値NをN+1とし、LPR[3]をLowにし、ページ・オン・モードに切り替え、第1動作フローへ移行する。MSIG[3]がHighであれば、ページアクセスでないため、アクセス回数カウンタRCの値NをN−1とし、 LPR[3]をHighの状態で維持し、ページ・オフ・モードを維持する。
第3動作フローでは、第2の動作フローでページ・オフ・モードが維持された後に、ページアクセスが生じるまで、つまりロウアドレス不一致信号MSIG[3]がLowになるまで、 LPR[3]をHighとし、ページ・オフ・モードを維持する。MSIG[3]がLow、つまりページアクセスとなればLPR[3]をLowとし、ページ・オン・モードに切り替え、第1動作フローへ移行する。上述した第2の動作モードにより、きめ細やかなモード切り替えが可能となりより高速なデータ処理システムの構築が可能となる。尚、第2の実施形態の思想については、本実施形態以外の実施形態へも応用することが可能であり、更に、第2の実施形態の図17への応用も可能である。
図26は、本発明の第5の実施形態である。この実施形態では、図1のメモリモジュールをEDODRAMで構成している。EDO(Extended Data Out)DRAMも、メモリバンクに対応したセンスアンプをもっている。EDODRAMは、非同期でデータを転送することが特徴である。本発明をEDODRAMで構成したメモリモジュールMEMに適用することで、高速に動作可能なデータ処理システムが実現可能となる。図26では、リード命令Rがメモリ制御回路MCへ入力したとき、メモリ制御回路MCが行なうモード切り替え制御よって、メモリ制御回路がメモリモジュールMEMへ出力する命令、アドレス及びメモリモジュールから読み出されたデータの動作波形のリードレイテンシを示す。EDODRAMでは、CASがHighでRASがHighになったとき、ページが閉じる。CASがHighでRASがLowになったときに、ロウアドレスで指定したページが開く。RASがLowでCASがLowになったときにカラムアドレスで指定したデータが出力される。CAS及びRASとはLowレベルがアクティブを示す信号である。故に、RAS及びCASに/等の記号や上線を付加する場合もあるが、本明細書ではそれら記号は省略している。ページ・オン・モードで、異なるページアクセスが生じると、現在開いているページを閉じるため、RAS信号をいったんHighにしてプリチャージを行う、その後、RASをLowにし、ロウアドレスR0で指定したページを開く。その後、CASを4回Lowにし、カラムアドレスC0、C1、C2、C3で指定されたデータを出力する。この時、リードレイテンシは8サイクルとなる。異なるページアクセスが連続すると、ページ・オン・モードからページ・オフ・モードに切り替えわる。ぺージ・オフ・モードにおいては、異なるページのアクセスでは、以前のアクセスで、すでにページが閉じられているため、最初にRASをHighにしページを閉じる必要がなく、レイテンシは6サイクルとなる。ページ・オフ・モードで、同一ページのアクセスが生じると、ページ・オン・モードに切り替えわる。ページ・オン・モードでの同一ページアクセスでは、現在開いているページと同一のページに対するアクセスであるため、新規にページを開く必要はなく、レイテンシは4となる。このように、EDODRAMで構成されたメモリモジュールに対して、モードを切り替ええて制御を行うことで、高速なデータ処理システムを実現することが可能となる。尚、図25において、EDODRAM以外の要素、つまり、中央処理装置CPU或いはメモリ制御ユニットMCU等は、クロックCLKに同期して動作し、命令やアクセスアドレスを発行する構成が一般的であるため、クロックCLKを図示している。
以上述べてきた第1から第5の実施形態では、アクセスとの文言を使用しているが、アクセスとはメモリ装置にアドレスを供給してメモリ装置からアドレスを読み出す動作のことである。また、本実施形態では、モードと言う文言を使用しているが、モードとは、一連の規格に従って所定の動作を選択して行うものである。特に制限しているわけではないが、モードはレジスタに所定の値を入力することで、所定の動作が設定される。本実施形態の場合は、中央処理装置或いはメモリ制御装置の中に設けられたレジスタによってモードが設定される。更に、本実施形態では、ページ・オン・モードとページ・オフ・モードを切り替えて動作するモードと切り替えて行わないモードとを設定するためのレジスタを設けることも可能である。ページ・オン・モードとページ・オフ・モードともモードであり、前記の切り替えを行うか否かについてもモードである。データ処理部とメモリ制御ユニットつまりメモリ制御装置とを別の半導体チップ上に形成してもよいが、両者を単一の半導体チップ上に形成してもよい。その場合、単一の半導体チップ上に形成されたデータ処理装置は、データバスDQ0を別々の半導体チップで形成するよりも幅の広いバスとすることが可能となる上に、両者の距離が短縮されるために、両者間での高速データ転送が可能となる。更に、メモリ制御装置のみを他者に設計させ、或いは既に設計されている設計資産としてデータ処理部と同一の半導体チップ上に形成してワンチップのデータ処理装置とすることも可能である。この場合、メモリ制御装置の回路等の構成を記録媒体に記録し、データ処理部の設計者或いはデータ処理装置の設計者に提供することの可能である。また、自らが半導体装置の製造を行う場合、他者が提供するデータ処理部に、本発明のメモリ制御装置或いはメモリ制御装置とメモリ装置とを組み合わせ、半導体装置を提供して他者に供給することも可能である。他方、メモリ制御ユニットをメモリモジュール内に設けることも可能である。メモリ制御装置をデータ処理部或いはメモリモジュール内に形成することで、データ処理システムの製造者の負荷を低減するとが可能となり、データ処理システムの小型化も可能となる。また、半導体装置の製造プロセスの進歩にあわせ、メモリモジュールの一部或いは全部をデータ処理装置と同一の半導体チップ上に形成することも可能である。つまりワンチップのデータ処理システムの実現であり、システムの一層の小型化が可能となる。また、中央処理装置にメモリ制御回路の動作をソフト的に実行させることも可能である。勿論、メモリモジュールとデータ処理部とを同一の半導体チップ上に形成しない場合であっても、中央処理装置にメモリ制御装置の動作をソフト的に実行させることも可能である。但し、ソフト的に実施する場合、余分な構成の付加は不要であるが、中央処理装置にアドレス比較等を行わせるための負荷が大きくなり、中央処理装置が行う他の処理が低速となってしまう可能性は残る。本発明を別構成とすることで、中央処理装置に対して余計な付加を与えずに本発明の効果を得ることが可能となる。また、図27に示すように、単一チップのデータ処理装置IC−DPDとそれぞれが単一チップのメモリ装置(IC−ME1〜IC−ME4)とで形成されたモジュールとを1つのパッケージで封止した半導体装置であってもよい。この構成は、マルチチップモジュール或いはマルチチップパッケージなどとして知られている。
以上、高速動作可能なデータ処理システムの実施形態を説明してきたが、本発明は上記実施形態に限定されるわけでは無く、本願発明の思想を逸脱しない範囲で、他にも様々な実施形態を採用することが可能である。
例えば、第2の実施形態で示したアドレスを先行発行する先行発行回路と先行発行アクセス判定回路、第3の実施形態で示した自動アドレス調整回路、及び、第4の実施形態で示したアクセス回数カウンタの値の増減を他の実施形態に組み合わせることも可能である。アドレスを先行発行する先行発行回路と先行発行アクセス判定回路を他の実施形態と組み合わせることで、同一ページへのアクセス頻度を向上させることが可能となり、より一層高速化可能なデータ処理装置を実現することが可能となる。また、自動アドレス調整回路を他の実施形態と組み合わせることで、異なるページ動作の頻度を削減することが可能となり、一層高速化可能なデータ処理装置を実現することが可能となる。また、アクセス回数カウンタの値の増減を他の実施形態と組み合わせることで、よりきめ細やかなモード切り替えが可能となり、更なるデータ処理装置の高速化が可能となる。勿論、前記それぞれを組み合わせて他の実施形態に応用することで、相乗的な効果を導き出すことが可能である。
また、第1、第3、第4、及び、第5の実施形態ではメモリモジュールは複数のバンクを有する構成としたが、メモリバンクを有さないメモリモジュールにより構成されるデータ処理システムに適用することも可能である。メモリバンクを有さないメモリモジュールにより構成されるデータ処理システムのメモリ装置へのアクセスの高速化を実現することも可能である。