(57)【要約】【課題】  データ転送速度を向上させることが可能なメモリ制御装置を提供する。【解決手段】  ２通りのリフレッシュ周期を設定可能なリフレッシュタイマ１と、前記２通りリフレッシュ周期にそれぞれ対応したリフレッシュ要求信号（ＲＥＱ＿Ｒｅｆ＿Ｌ信号およびＲＥＱ＿Ｒｅｆ＿Ｈ信号）を発生するリフレッシュリクエスト生成部２と、アプリケーションによるメモリアクセス要求信号（ＲＥＱ＿ＡＰＬＩ（０）およびＲＥＱ＿ＡＰＬＩ（１））や前記リフレッシュ要求信号の中から予め設定した優先順位に基づき最も優先順位が高い要求信号を選択するアービタ部３とを設け、前記アービタ部３においては、前記２つのリフレッシュ要求信号の内の一方を前記メモリアクセス要求信号よりも高い優先順位に設定し、他方を前記メモリアクセス要求信号よりも低い優先順位に設定しておく。【選択図】  図１
2005107648.tif 000002
【特許請求の範囲】
【請求項１】
予め設定した複数のリフレッシュ周期に対応して、メモリに対して複数のリフレッシュ要求信号を発生する手段と、
前記複数のリフレッシュ要求信号やアプリケーションによるメモリアクセス要求信号を含む各種要求信号の中から、実際に前記メモリに実行させる動作を、予め設定した優先順位に基づき選択する手段とを有し、
前記選択する手段において優先順位を予め設定する際には、前記複数のリフレッシュ要求信号の内、少なくとも一つのリフレッシュ要求信号が前記メモリアクセス要求信号より低い優先順位に設定され、他の少なくとも一つのリフレッシュ要求信号が前記メモリアクセス要求信号より高い優先順位に設定されることを特徴とするメモリ制御装置。
【請求項２】
請求項１記載のメモリ制御装置において、
前記リフレッシュ要求信号を発生する手段は、
第１のリフレッシュ周期とそれよりも長い周期の第２のリフレッシュ周期を設定してカウントを行い、前記カウントの値が前記第１のリフレッシュ周期に達した場合には第１のタイマ信号を発生し、前記カウントの値が前記第２のリフレッシュ周期に達した場合には第２のタイマ信号を発生する手段と、
前記第１のタイマ信号に対応して第１のリフレッシュ要求信号を発生する手段と、
前記第２のタイマ信号に対応して第２のリフレッシュ要求信号を発生する手段とを有し、
前記選択する手段において優先順位を予め設定する際には、前記第１のリフレッシュ要求信号が前記メモリアクセス要求信号より低い優先順位に設定され、前記第２のリフレッシュ要求信号が前記メモリアクセス要求信号より高い優先順位に設定されることを特徴とするメモリ制御装置。
【請求項３】
請求項２記載のメモリ制御装置において、
前記第１のリフレッシュ要求信号を発生する手段は、
前記第１のタイマ信号が発生した場合に前記第１のリフレッシュ要求信号を発生する機能を有し、
前記第２のリフレッシュ要求信号を発生する手段は、
前記第１のリフレッシュ要求信号が前記選択する手段において保留された状態で前記第２のタイマ信号が発生した場合に、前記第２のリフレッシュ要求信号を発生する機能と、
前記第１のリフレッシュ要求信号が前記選択する手段において保留されていない状態で前記第２のタイマ信号が発生した場合に、前記第２のリフレッシュ要求信号を発生しない機能とを有することを特徴とするメモリ制御装置。
【請求項４】
請求項２または３記載のメモリ制御装置において、
前記タイマ信号を発生する手段は、
前記第１のリフレッシュ周期を設定してカウントを行う第１のカウンタ回路と、
前記第２のリフレッシュ周期を設定してカウントを行う第２のカウンタ回路と、
前記第２のカウンタ回路が前記第２のリフレッシュ周期に達した場合に、前記第１のカウンタ回路と前記第２のカウンタ回路をリセットし、それぞれを再カウントする機能とを有することを特徴とするメモリ制御装置。
【請求項５】
請求項２〜４のいずれか１項記載のメモリ制御装置において、
さらに、前記第１のリフレッシュ要求信号が前記選択する手段において保留された状態で前記第１のタイマ信号が発生した場合をカウントする手段と、
前記選択する手段において、前記第１のリフレッシュ要求信号または前記第２のリフレッシュ要求信号が選択された場合に、前記カウントする手段でカウントした回数に基づいて複数回のリフレッシュ動作を行う手段とを有することを特徴とするメモリ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ制御装置に関し、特に、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の制御を行うメモリ制御装置に適用して有効な技術に関するものである。
【背景技術】
【０００２】
本発明者が検討したところによれば、メモリ制御装置に関しては、以下のような技術が考えられる。
【０００３】
例えば、ＤＲＡＭ（ＳＤＲＡＭ、ＤＤＲ−ＳＤＲＡＭ等を含む。）などを制御するメモリ制御装置では、各種アプリケーションからのメモリアクセス要求や一定時間毎に発生するリフレッシュ要求などを調停し、その調停によって選択された要求をメモリに実行させている。そして、このメモリに対する各種要求を調停する際、通常、リフレッシュ要求は最も優先順位が高い要求とされる。これによって、リフレッシュ要求が発生した際は、現在行っているメモリ動作に割り込んでリフレッシュ動作が行われる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、前記のようなメモリ制御装置の技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
【０００５】
近年、メモリのデータ転送速度の向上に伴い、メモリ自体の性能のみならず、そのメモリを効率よく動作させることも重要となってくる。このような中、ＤＲＡＭなどを制御するメモリ制御装置は、背景技術で述べたように、リフレッシュ要求を最優先で実行している。このため、リフレッシュ要求によってアプリケーションなどによるメモリアクセスが中断され、データ転送速度の低下を招く場合が有り得た。
【０００６】
ところで、アプリケーションなどによるメモリアクセスは、通常、常に絶え間無く行われている訳ではなく、所々にメモリアクセスが行われていない期間（所謂ＩＤＬＥ期間）が存在している。このＩＤＬＥ期間を利用してリフレッシュ動作を行うことができれば、メモリを効率よく動作させることができる。
【０００７】
そこで、本発明の目的は、データ転送速度を向上させることが可能なメモリ制御装置を提供することにある。
【０００８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１０】
本発明によるメモリ制御装置は、予め設定した複数のリフレッシュ周期に対応して、メモリに対して複数のリフレッシュ要求信号を発生する手段と、前記複数のリフレッシュ要求信号やアプリケーションによるメモリアクセス要求信号を含む各種要求信号の中から、実際に前記メモリに実行させる動作を、予め設定した優先順位に基づき選択する手段とを有し、前記選択する手段において優先順位を予め設定する際には、前記複数のリフレッシュ要求信号の内、少なくとも一つのリフレッシュ要求信号が前記メモリアクセス要求信号より低い優先順位に設定され、他の少なくとも一つのリフレッシュ要求信号が前記メモリアクセス要求信号より高い優先順位に設定されるものである。
【００１１】
これによって、前記メモリアクセス要求信号を可能な限り優先して選択するように、前記リフレッシュ要求信号の優先順位を動的に変更することが可能になる。
【００１２】
そして、前記リフレッシュ要求信号を発生する手段は、例えば、第１のリフレッシュ周期とそれよりも長い周期の第２のリフレッシュ周期を設定してカウントを行い、前記カウントの値が前記第１のリフレッシュ周期に達した場合には第１のタイマ信号を発生し、前記カウントの値が前記第２のリフレッシュ周期に達した場合には第２のタイマ信号を発生する手段と、前記第１のタイマ信号に対応して第１のリフレッシュ要求信号を発生する手段と、前記第２のタイマ信号に対応して第２のリフレッシュ要求信号を発生する手段とを有し、前記選択する手段において優先順位を予め設定する際には、前記第１のリフレッシュ要求信号が前記メモリアクセス要求信号より低い優先順位に設定され、前記第２のリフレッシュ要求信号が前記メモリアクセス要求信号より高い優先順位に設定されるものである。
【００１３】
これによって、前記第１のリフレッシュ要求信号の発生から前記第２のリフレッシュ要求信号の発生までの期間において、前記メモリアクセス要求信号によるメモリアクセスが発生しない箇所でリフレッシュ動作を行うことが可能になる。
【００１４】
また、前記第１のリフレッシュ要求信号を発生する手段は、例えば、前記第１のタイマ信号が発生した場合に前記第１のリフレッシュ要求信号を発生する機能を有するものである。そして、前記第２のリフレッシュ要求信号を発生する手段は、前記第１のリフレッシュ要求信号が前記選択する手段において保留された状態で前記第２のタイマ信号が発生した場合に、前記第２のリフレッシュ要求信号を発生する機能と、前記第１のリフレッシュ要求信号が前記選択する手段において保留されていない状態で前記第２のタイマ信号が発生した場合に、前記第２のリフレッシュ要求信号を発生しない機能とを有するものである。
【００１５】
これによって、前記第１のリフレッシュ要求信号によってリフレッシュ動作が行われなかった場合に限って、前記第２のリフレッシュ要求信号によりリフレッシュ動作を行うことが可能になる。
【００１６】
そして、前記タイマ信号を発生する手段は、前記第１のリフレッシュ周期を設定してカウントを行う第１のカウンタ回路と、前記第２のリフレッシュ周期を設定してカウントを行う第２のカウンタ回路と、前記第２のカウンタ回路が前記第２のリフレッシュ周期に達した場合に、前記第１のカウンタ回路と前記第２のカウンタ回路をリセットし、それぞれを再カウントする機能とを有するものである。
【００１７】
これによって、前記メモリに対するリフレッシュ周期の設定を、前記第２のリフレッシュ周期としながら、その個々のリフレッシュ動作を、できる限り前記アプリケーションによるメモリアクセスがない箇所で行うことが可能になる。
【００１８】
また、これまでに説明したようなメモリ制御装置は、さらに、前記第１のリフレッシュ要求信号が前記選択する手段において保留された状態で前記第１のタイマ信号が発生した場合をカウントする手段と、前記選択する手段において、前記第１のリフレッシュ要求信号または前記第２のリフレッシュ要求信号が選択された場合に、前記カウントする手段でカウントした回数に基づいて複数回のリフレッシュ動作を行う手段とを有するものである。
【００１９】
これによって、一定期間で一定回数のリフレッシュ動作を行わせることができる。また、前記第２のリフレッシュ周期内で前記第１のリフレッシュ周期が複数回循環できるような設定においても、リフレッシュ動作の回数を保証することができる。
【発明の効果】
【００２０】
複数のリフレッシュ要求信号を備え、その中の少なくとも一つのリフレッシュ要求信号の優先順位をアプリケーションなどによるメモリアクセス要求信号より低く設定することで、データ転送速度を向上させることが可能になる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２２】
図１は、本発明の一実施の形態のメモリ制御装置において、その構成の一例を示すブロック図である。図１に示すメモリ制御装置は、例えば、リフレッシュタイマ１と、リフレッシュレクエスト生成部２と、アービタ部３などから構成される。なお、図１には明示していないが、実際にはメモリに入出力動作などを行わせるメモリコントローラ部なども含んでいる。
【００２３】
リフレッシュタイマ１は、例えば、２つのカウンタ回路（第１のカウンタ回路、第２のカウンタ回路）を有し、これによって２通りのリフレッシュ周期を設定することができる。そして、前記それぞれのカウンタ回路の値が、設定した一方のリフレッシュ周期（第１のリフレッシュ周期）に達した場合にＴＩＭＥＲ（１０）信号（第１のタイマ信号）を発生し、設定した他方のリフレッシュ周期（第２のリフレッシュ周期）に達した場合にＴＩＭＥＲ（１１）（第２のタイマ信号）を発生する。なお、これら２つのカウンタ回路は、例えば、ＴＩＭＥＲ（１１）信号に設定したリフレッシュ周期（第２のリフレッシュ周期）の方が長いものとして、ＴＩＭＥＲ（１１）信号が発生した際に同時にリセットされ、再カウントが行われるものとする。
【００２４】
リフレッシュレクエスト生成部２は、前記ＴＩＭＥＲ（１０）信号およびＴＩＭＥＲ（１１）信号の発生を受けて、それぞれに対応したリフレッシュ要求信号であるＲＥＱ＿Ｒｅｆ＿Ｌ信号（第１のリフレッシュ要求信号）およびＲＥＱ＿Ｒｅｆ＿Ｈ信号（第２のリフレッシュ要求信号）を発生し、アービタ部３に対して出力する。また、アービタ部３において、前記ＲＥＱ＿Ｒｅｆ＿Ｌ信号およびＲＥＱ＿Ｒｅｆ＿Ｈ信号にそれぞれ対応したリフレッシュ受付信号であるＧＮＴ＿Ｒｅｆ＿Ｌ信号およびＧＮＴ＿Ｒｅｆ＿Ｈ信号が発生した場合、これらの信号が入力される。
【００２５】
なお、図１には明示していないが、リフレッシュレクエスト生成部２は、前記ＧＮＴ＿Ｒｅｆ＿Ｌ信号またはＧＮＴ＿Ｒｅｆ＿Ｈ信号の発生を受けて、前記メモリコントローラ部に対してリフレッシュ命令を発生する。これにより、前記メモリコントローラ部はメモリに対して波形を入力し、リフレッシュ動作が行なわれる。
【００２６】
アービタ部３は、例えば、メモリに対して発生した各種要求信号を、予め設定した優先順位に基づいて調停する機能などを有する。図１において、このアービタ部３には、前記ＲＥＱ＿Ｒｅｆ＿Ｌ信号およびＲＥＱ＿Ｒｅｆ＿Ｈ信号に加えて、例えば、２種類のアプリケーションからのメモリアクセス要求信号であるＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号が入力される。そして、これらの信号の中から、予め設定した優先順位に基づいて最も優先順位が高い信号を選択し、その信号に対応した受付信号を発生する。
【００２７】
すなわち、前記ＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号にそれぞれ対応したメモリアクセス受付信号であるＧＮＴ＿ＡＰＬＩ（０）信号およびＧＮＴ＿ＡＰＬＩ（１）信号と、前記ＧＮＴ＿Ｒｅｆ＿Ｌ信号およびＧＮＴ＿Ｒｅｆ＿Ｈ信号の中からいずれか１つの受付信号を発生する。なお、前記ＧＮＴ＿ＡＰＬＩ（０）信号およびＧＮＴ＿ＡＰＬＩ（１）信号は、前記メモリコントローラ部に入力され、これによってＲｅａｄ／Ｗｒｉｔｅなどといった実際のメモリアクセスが行われる。
【００２８】
このようなメモリ制御装置の構成において、本発明の前提となる従来のメモリ制御装置は、例えば前記図１におけるリフレッシュタイマ１が１通りのリフレッシュ周期しか設定できないようなものであった。したがって、これに伴うリフレッシュ要求信号やリフレッシュ受付信号もそれぞれ１つずつとなる。この場合において、アービタ部３でリフレッシュ要求信号の発生を受けた際、この信号が最も優先順位が高く設定されているため、前記ＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号などが発生していても、これらに先立ってリフレッシュ要求が受け付けられる。
【００２９】
すなわち、図２に示すような動作波形となる。図２は、本発明の前提となる従来のメモリ制御装置において、その動作の一例を示す波形図である。図２においては、例えば、前記図１の構成を例として、アプリケーションによるメモリアクセス要求信号であるＲＥＱ＿ＡＰＬＩ（０）、（１）信号が発生している最中に、リフレッシュタイマ１がＴＩＭＥＲ信号を発生し、これに伴いリフレッシュリクエスト生成部２がリフレッシュ要求信号であるＲＥＱ＿Ｒｅｆ信号が発生した場合でのアービタ部３の調停動作を示している。
【００３０】
ここで、アービタ部３における優先順位の設定は、例えば図３のように行われている。図３では、ＲＥＱ＿Ｒｅｆ信号が最も優先順位が高く、その下位にＲＥＱ＿ＡＰＬＩ（０）信号とＲＥＱ＿ＡＰＬＩ（１）信号が同一の優先順位に割り当てられている。このＲＥＱ＿ＡＰＬＩ（０）信号とＲＥＱ＿ＡＰＬＩ（１）信号間の優先順位は、ラウンドロビンで動的に変更されるものとする。なお、リフレッシュ周期は、例えばメモリのスペック値である１６μｓｅｃに設定したものとする。
【００３１】
このような設定において、図２では、信号が発生した際を‘Ｈ’レベルとして、ＲＥＱ＿Ｒｅｆ信号が発生したタイミングでＲＥＱ＿ＡＰＬＩ（０）信号やＲＥＱ＿ＡＰＬＩ（１）信号も発生しているが、最初にＲＥＱ＿Ｒｅｆ信号が選択され、ＧＮＴ＿Ｒｅｆ信号が発生している。ところが、その直後には、ＲＥＱ＿ＡＰＬＩ（０）信号やＲＥＱ＿ＡＰＬＩ（１）信号によるメモリアクセスが発生していない期間であるＩＤＬＥ期間が存在している。つまり、この期間を利用してリフレッシュ動作を行えばデータ転送が効率化され、データ転送速度が向上する。
【００３２】
一方、前記図１に示した本発明の一実施の形態のメモリ制御装置では、前述したように、ＴＩＭＥＲ（１０）信号およびＴＩＭＥＲ（１１）信号に対応する２通りのリフレッシュ周期を設定することができる。そして、これに伴いアービタ部３に対して、２通りのリフレッシュ要求信号（ＲＥＱ＿Ｒｅｆ＿Ｌ信号、ＲＥＱ＿Ｒｅｆ＿Ｈ信号）を入力することができる。
【００３３】
そこで、アービタ部３での優先順位の設定を、例えば図４のように行う。図４は、本発明の一実施の形態のメモリ制御装置において、アービタ部での優先順位設定方法の一例を示す説明図である。図４においては、最も高い優先順位にＲＥＱ＿Ｒｅｆ＿Ｈ信号（第２のリフレッシュ要求信号）を設定し、次いで２番目の優先順位にＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号、３番目の優先順位にＲＥＱ＿Ｒｅｆ＿Ｌ信号（第１のリフレッシュ要求信号）を設定している。
【００３４】
ここで、ＲＥＱ＿Ｒｅｆ＿Ｈ信号は、ＴＩＭＥＲ（１１）信号に対応するが、このＴＩＭＥＲ（１１）信号のリフレッシュ周期（第２のリフレッシュ周期）の設定は、例えば、メモリのリフレッシュ周期のスペック値である１６μｓｅｃなどとする。そして、ＲＥＱ＿Ｒｅｆ＿Ｌ信号は、ＴＩＭＥＲ（１０）信号に対応するが、このＴＩＭＥＲ（１０）信号のリフレッシュ周期（第１のリフレッシュ周期）の設定は、前記ＴＩＭＥＲ（１１）信号のリフレッシュ周期より短い周期として、仮に１２μｓｅｃなどとする。
【００３５】
このような設定によって、図１のメモリ制御装置を動作させた場合、図５および図６に示すような動作となる。図５は、本発明の一実施の形態のメモリ制御装置において、その動作の一例を示す波形図である。図６は、本発明の一実施の形態のメモリ制御装置において、図５とは異なる動作の一例を示す波形図である。
【００３６】
まずは図５において、例えばｔ＝１２μｓｅｃで図１のリフレッシュタイマ１によってＴＩＭＥＲ（１０）信号が発生する。これによって、リフレッシュレクエスト生成部２が、ＲＥＱ＿Ｒｅｆ＿Ｌ信号を発生する。ところが、このＲＥＱ＿Ｒｅｆ＿Ｌ信号が発生したタイミングでは、ＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号も発生している。
【００３７】
アービタ部３では、このＲＥＱ＿Ｒｅｆ＿Ｌ信号の優先順位が低く設定されているので、ＲＥＱ＿Ｒｅｆ＿Ｌ信号は、保留されたまま継続して発生している。このＲＥＱ＿Ｒｅｆ＿Ｌ信号が保留されている期間（期間１０）は、ＲＥＱ＿ＡＰＬＩ（０）信号またはＲＥＱ＿ＡＰＬＩ（１）信号が受け付けられ、ＧＮＴ＿ＡＰＬＩ（０）信号またはＧＮＴ＿ＡＰＬＩ（１）信号が発生している。そして、後にアプリケーションによるメモリアクセスが無いＩＤＬＥ期間が存在しているため、ここで保留されていたＲＥＱ＿Ｒｅｆ＿Ｌ信号が受け付けられる。これによって、ＧＮＴ＿Ｒｅｆ＿Ｌ信号が発生し、ＲＥＱ＿Ｒｅｆ＿Ｌ信号が‘Ｌ’に立ち下がる。そして、このＧＮＴ＿Ｒｅｆ＿Ｌ信号によって、メモリ内ではリフレッシュ動作が実行される。
【００３８】
なお、このＧＮＴ＿Ｒｅｆ＿Ｌ信号によりリフレッシュ動作を行うことができるので、その後に発生しているＴＩＭＥＲ（１１）信号からはＲＥＱ＿Ｒｅｆ＿Ｈ信号を発生させていない。これは、例えば、リフレッシュリクエスト生成部２において、ＲＥＱ＿Ｒｅｆ＿Ｌ信号（第１のリフレッシュ要求信号）が発生していない間（アービタ部３で保留されていない状態中）にＴＩＭＥＲ（１１）信号（第２のタイマ信号）が発生した場合は、ＲＥＱ＿Ｒｅｆ＿Ｈ信号（第２のリフレッシュ要求信号）を発生せず、逆にＲＥＱ＿Ｒｅｆ＿Ｌ信号が発生している間にＴＩＭＥＲ（１１）信号が発生した場合は、ＲＥＱ＿Ｒｅｆ＿Ｈ信号を発生し、ＲＥＱ＿Ｒｅｆ＿Ｌ信号を‘Ｌ’に立ち下げるなどの機能を備えればよい。
【００３９】
つぎに図６においては、前記図５と同様に、例えばｔ＝１２μｓｅｃでＴＩＭＥＲ（１０）信号が発生し、これによってＲＥＱ＿Ｒｅｆ＿Ｌ信号が発生している。ところが、このＲＥＱ＿Ｒｅｆ＿Ｌ信号が発生したタイミングでは、ＲＥＱ＿ＡＰＬＩ（０）信号およびＲＥＱ＿ＡＰＬＩ（１）信号も発生しているため、このＲＥＱ＿Ｒｅｆ＿Ｌ信号は保留されたまま継続して発生している。
【００４０】
そして、ここでは、前記図５と異なりＲＥＱ＿ＡＰＬＩ（０）信号またはＲＥＱ＿ＡＰＬＩ（１）信号によるメモリアクセスが一定期間（期間１１）継続して発生しており、これによってＲＥＱ＿Ｒｅｆ＿Ｌ信号が保留されている間に、例えばｔ＝１６μｓｅｃでＴＩＭＥＲ（１１）信号が発生している。そして、このＲＥＱ＿Ｒｅｆ＿Ｌ信号が発生している間でのＴＩＭＥＲ（１１）信号の発生によって、リフレッシュリクエスト生成部２は、ＲＥＱ＿Ｒｅｆ＿Ｈ信号を発生し、ＲＥＱ＿Ｒｅｆ＿Ｌ信号を‘Ｌ’に立ち下げる。
【００４１】
ここで、このＲＥＱ＿Ｒｅｆ＿Ｈ信号は、最も優先順位が高く設定されているため、アービタ部３では、この信号が再優先で選択される。これによって、ＧＮＴ＿Ｒｅｆ＿Ｈ信号が発生し、メモリ内でリフレッシュ動作が実行される。
【００４２】
以上のように図１に示したメモリ制御装置を用い、リフレッシュの優先順位を動的に変更することで、ＴＩＭＥＲ（１０）信号の発生時点（例えばｔ＝１２μｓｅｃ）から、ＴＩＭＥＲ（１１）信号の発生時点（例えばｔ＝１６μｓｅｃ）までの期間で、ＴＩＭＥＲ（１０）信号の発生時点を始点にメモリアクセスがないＩＤＬＥ期間を探し、ＩＤＬＥ期間が存在した場合には、そこでリフレッシュ動作を行うことが可能になる。また、ＴＩＭＥＲ（１１）信号のリフレッシュ周期を例えばメモリのスペック値などにすることで、ＩＤＬＥ期間の有無に関わらず、１回／１６μｓｅｃのリフレッシュ動作を行うことができる。
【００４３】
したがって、メモリのリフレッシュ規格を保ちながら、従来技術で問題となったリフレッシュ要求によってアプリケーションなどのデータ転送が中断される頻度を少なくすることができ、これによってデータ転送速度を向上させることができる。
【００４４】
なお、前述した図１の構成においては、ＴＩＭＥＲ（１１）に設定した値でメモリのリフレッシュ規格を保証しながら、ＩＤＬＥ期間を探してリフレッシュ動作を行う例を示したが、例えば、前記１６μｓｅｃより長いある一定の期間で一定回数のリフレッシュ動作を行うことによって、リフレッシュ規格を保証することもできる。この場合の構成の一例を図７に示す。
【００４５】
図７は、本発明の一実施の形態のメモリ制御装置において、図１を変形した構成の一例を示すブロック図である。図７に示すメモリ制御装置は、例えば、前記図１に示した構成に加えて、リフレッシュレクエスト生成部２にリフレッシュ保留カウンタ４が追加された構成となっている。
【００４６】
前記リフレッシュ保留カウンタ４は、例えば、前記ＴＩＭＥＲ（１０）信号によるＲＥＱ＿Ｒｅｆ＿Ｌ信号（第１のリフレッシュ要求信号）がアービタ部３で保留されている間に再びＴＩＭＥＲ（１０）信号（第１のタイマ信号）が発生した場合に、これを検知し、その都度カウントアップを行う機能などを備えている。すなわち、保留されたリフレッシュの回数をカウントすることができる。
【００４７】
そして、ここでは、ＴＩＭＥＲ（１０）信号のリフレッシュ周期を、例えば１４μｓｅｃとし、ＴＩＭＥＲ（１１）信号のリフレッシュ周期を、例えば４８μｓｅｃとする。また、ＴＩＭＥＲ（１０）信号よるＲＥＱ＿Ｒｅｆ＿Ｌ信号は、前記図１の場合と同様、アプリケーションなどによるメモリアクセス要求信号よりも優先順位が低く設定され、ＴＩＭＥＲ（１１）信号よるＲＥＱ＿Ｒｅｆ＿Ｈ信号は、前記メモリアクセス要求信号よりも優先順位が高く設定されるものとする。
【００４８】
このような設定において、リフレッシュレクエスト生成部２では、アービタ部３でリフレッシュ要求信号（ＲＥＱ＿Ｒｅｆ＿Ｌ信号またはＲＥＱ＿Ｒｅｆ＿Ｈ信号）が選択された場合に、前記リフレッシュ保留カウンタ４に蓄えられた値に基づいて複数回のリフレッシュ命令を発生する。
【００４９】
すなわち、例えばＴＩＭＥＲ（１０）によってｔ＝１４μｓｅｃで発生したＲＥＱ＿Ｒｅｆ＿Ｌ信号が前記メモリアクセス要求信号によって保留され、そのままｔ＝２８μｓｅｃに達した場合を想定する。このｔ＝２８μｓｅｃでは、再びＴＩＭＥＲ（１０）信号が発生するため、前記リフレッシュ保留カウンタ４をカウントアップする。
【００５０】
その後、ｔ＝４２μｓｅｃに達するまでの間に、ＲＥＱ＿Ｒｅｆ＿Ｌ信号がアービタ部３によって受け付けられた際には、それによるリフレッシュ動作に加えて前記リフレッシュ保留カウンタ４に蓄えられた１回を加算して計２回のリフレッシュ命令を連続して発生し、これによってリフレッシュ動作が行なわれる。そして、リフレッシュ保留カウンタ４をリセットする。
【００５１】
一方、ｔ＝４２μｓｅｃに達するまでの間に、ＲＥＱ＿Ｒｅｆ＿Ｌ信号がアービタ部３によって受け付けられなかった際には、ｔ＝４２μｓｅｃで再びＴＩＭＥＲ（１０）信号が発生するため、前記リフレッシュ保留カウンタ４を再びカウントアップする。
【００５２】
さらに、その後、ｔ＝４８μｓｅｃに達するまでの間に、ＲＥＱ＿Ｒｅｆ＿Ｌ信号がアービタ部３によって受け付けられた際には、それによるリフレッシュ動作に加えて前記リフレッシュ保留カウンタ４に蓄えられた２回を加算し、計３回のリフレッシュ動作が連続して行なわれる。そして、リフレッシュ保留カウンタ４をリセットする。
【００５３】
一方、ｔ＝４８μｓｅｃに達するまでの間に、ＲＥＱ＿Ｒｅｆ＿Ｌ信号がアービタ部３によって受け付けられなかった際には、ｔ＝４８μｓｅｃでＴＩＭＥＲ（１１）信号が発生する。そうすると、ＲＥＱ＿Ｒｅｆ＿Ｈ信号が出力され、それによるリフレッシュ動作と前記リフレッシュ保留カウンタ４に蓄えられた値による計３回のリフレッシュ動作が最優先で行なわれる。
【００５４】
したがって、３回／４８μｓｅｃ（＝１回／１６μｓｅｃ）といったリフレッシュ規格を保証しつつ、ＩＤＬＥ期間を探しながらリフレッシュ動作を行うことが可能になる。
【００５５】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００５６】
例えば、図１などでの２つのカウンタ回路を有するリフレッシュタイマ１の動作は、その用途に応じて様々な動作方法が考えられる。その一例として、リフレッシュ動作が発生する度に２つのカウンタ回路を同時にリセットし、再カウントさせるような動作なども挙げられる。つまり、リフレッシュタイマ１に対して、例えばＧＮＴ＿Ｒｅｆ＿Ｌ信号とＧＮＴ＿Ｒｅｆ＿Ｈ信号のＯＲ出力などを入力し、これによって２つのカウンタ回路のリセットと再カウントを行うような構成にする。
【００５７】
この構成によれば、例えば、リフレッシュ周期にある程度のマージンを持たせたいような場合などで、そのリフレッシュ周期をＴＩＭＥＲ（１０）に、リフレッシュ周期のスペック値をＴＩＭＥＲ（１１）に割り当てる。そうすると、通常はＴＩＭＥＲ（１０）に近いリフレッシュ周期でＩＤＬＥ期間を探しながらリフレッシュ動作を行い、ＩＤＬＥ期間がなかった場合でもスペック内でリフレッシュ動作を行うようなことが可能になる。
【００５８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００５９】
（１）アプリケーションなどによるメモリアクセス要求信号より高い優先順位を持つリフレッシュ要求信号と、前記メモリアクセス要求信号より低い優先順位を持つリフレッシュ要求信号とを備えることで、アプリケーションなどによるメモリアクセスを可能な限り優先して行うように、リフレッシュ要求の優先順位を動的に変更することが可能になる。
【００６０】
（２）前記（１）において、前記メモリアクセス要求信号より高い優先順位を持つリフレッシュ要求信号をメモリのリフレッシュ周期のスペック値で発生させ、前記メモリアクセス要求信号より低い優先順位を持つリフレッシュ要求信号を前記スペック値より短い周期で発生させることで、メモリのリフレッシュ規格を保証しながら、前記アプリケーションなどによるメモリアクセスがない箇所でリフレッシュ動作を行うことができる。
【００６１】
（３）リフレッシュ保留カウンタを設けることで、一定期間で一定回数のリフレッシュ動作をアプリケーションなどによるメモリアクセスがない箇所で行わせることができる。そして、これによってもリフレッシュ規格を保証することができる。
【００６２】
（４）前記（１）〜（３）によって、アプリケーションなどによるメモリアクセスがリフレッシュ動作によって中断される頻度を低減でき、データ転送速度を向上させることが可能になる。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施の形態のメモリ制御装置において、その構成の一例を示すブロック図である。
【図２】本発明の前提となる従来のメモリ制御装置において、その動作の一例を示す波形図である。
【図３】本発明の前提となる従来のメモリ制御装置において、アービタ部での優先順位設定方法の一例を示す説明図である。
【図４】本発明の一実施の形態のメモリ制御装置において、アービタ部での優先順位設定方法の一例を示す説明図である。
【図５】本発明の一実施の形態のメモリ制御装置において、その動作の一例を示す波形図である。
【図６】本発明の一実施の形態のメモリ制御装置において、図５とは異なる動作の一例を示す波形図である。
【図７】本発明の一実施の形態のメモリ制御装置において、図１を変形した構成の一例を示すブロック図である。
【符号の説明】
【００６４】
１  リフレッシュタイマ
２  リフレッシュリクエスト生成部
３  アービタ部
４  リフレッシュ保留カウンタ
【図１】
2005107648.tif 000003
【図２】
2005107648.tif 000004
【図３】
2005107648.tif 000005
【図４】
2005107648.tif 000006
【図５】
2005107648.tif 000007
【図６】
2005107648.tif 000008
【図７】
2005107648.tif 000009