(57)【特許請求の範囲】
【請求項１】
外部から入力されたリフレッシュクロック信号によりカウントアップされ、１回のリフレッシュ動作が完了した事を示す信号によってデクリメントされるリフレッシュ実行残数カウンタと、リフレッシュ要求を出力するリフレッシュ要求生成回路と、前記リフレッシュ要求と他の複数のアクセス要求との調停動作を行い、予め決められた優先順位に従ってアクセスすべきアクセス系統を決定する調停回路と、前記調停回路の調停結果に従いアクセス信号を生成するアクセス制御信号生成回路とを有し、他の複数のアクセス要求に、優先順位が前記リフレッシュ要求よりも高い第１のアクセス要求と、優先順位が前記第１のアクセス要求より高い第２のアクセス要求が含まれており、前記リフレッシュ実行残数カウンタの値が第１の閾値と等しい若しくは前記第１の閾値より大きい場合に、前記リフレッシュ実行残数カウンタの値が前記第１の閾値より低い第２の閾値と等しくなるまで若しくは前記第２の閾値より小さくなるまで前記リフレッシュ要求を受け入れ、前記リフレッシュ要求受け入れ中に、前記第２のアクセス要求が発生した場合には、前記リフレッシュ実行残数カウンタの値のいかんに関わらず、前記第２のアクセス要求を受け入れるとともに、前記リフレッシュ実行残数カウンタの値が前記第２の閾値と等しくなるか若しくは前記第２の閾値を下回るまでは、前記第１のアクセス要求が発生しても、前記第１のアクセス要求を受け入れないように動作させることを特徴とするアクセス制御回路。
【請求項２】
外部から入力されたリフレッシュクロック信号によりカウントアップされ、１回のリフレッシュ動作が完了した事を示す信号によってデクリメントされるリフレッシュ実行残数カウンタと、リフレッシュ要求を出力するリフレッシュ要求生成回路と、前記リフレッシュ要求と他の複数のアクセス要求との調停動作を行い、予め決められた優先順位に従ってアクセスすべきアクセス系統を決定する調停回路と、前記調停回路の調停結果に従いアクセス信号を生成するアクセス制御信号生成回路とを有し、他の複数のアクセス要求に、優先順位が前記リフレッシュ要求よりも高い第１のアクセス要求と、優先順位が前記第１のアクセス要求より高い第２のアクセス要求が含まれており、前記リフレッシュ実行残数カウンタの値が第１の閾値と等しい若しくは前記第１の閾値より大きい場合に、前記リフレッシュ実行残数カウンタの値が前記第１の閾値より低い第２の閾値と等しくなるまで若しくは前記第２の閾値より小さくなるまで前記リフレッシュ要求の優先順位を最も高くし、前記リフレッシュ要求受け入れ中に、前記第２のアクセス要求が発生した場合には、前記リフレッシュ実行残数カウンタの値のいかんに関わらず、前記第２のアクセス要求の優先順位を最も高くするとともに、前記リフレッシュ実行残数カウンタの値が前記第２の閾値と等しくなるか若しくは前記第２の閾値を下回るまでは、前記第１のアクセス要求が発生した場合でも、前記第１のアクセス要求の優先順位は前記リフレッシュ要求よりも優先順位は低くするよう動作させることを特徴とするアクセス制御回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のアクセス要求を調停するアクセス制御方法に関する。
【０００２】
【従来の技術】
アクセスにはさまざまなものがあるが、以下アクセス対象としてＤＲＡＭ（メモリ）を例に取り説明を行なう。
【０００３】
図５は従来のアクセス制御回路を示す図である。リフレッシュ実行残数カウンタ１は、リフレッシュクロックでカウントアップされ、リフレッシュ実行でカウントダウンされることでリフレッシュ実行の残数を計数する。リフレッシュ要求生成回路２は、リフレッシュ実行残数カウンタ１の値が０以外の時リフレッシュ要求を出力し、さらにリフレッシュ実行残数カウンタ１の値が閾値以上となると、調停回路３の優先順位をリフレッシュ要求が最優先となるように切り替える最優先切替信号を出力する。調停回路３は、リフレッシュ要求、シンドローム演算アクセス要求、および入力データ書込要求を調停し、メモリ制御信号生成回路４は調停回路３の調停結果によってメモリ５へのメモリ制御信号を生成する。
【０００４】
ＤＲＡＭであるメモリ５は、８．２ｍｓｅｃ内に５１２回のリフレッシュが必要であるため、約７０kHzのクロックでリフレッシュ実行残数カウンタ１をカウントアップし、リフレッシュ実行でカウントダウンすることでリフレッシュ実行の残数を計数しておく。このリフレッシュ実行残数カウンタ１のカウント値が閾値以上となるとリフレッシュが間に合わなくなるため、最優先切り替え信号によりリフレッシュの優先順位が最優先となるように調停回路３の優先順位を変更し、連続してリフレッシュを行うことで８．２ｍｓｅｃ内に５１２回のリフレッシュを実現している。
【０００５】
図６は図５の調停回路３の調停方法を示す図であり、（Ａ）はリフレッシュ要求、（Ｂ）はシンドローム演算アクセス要求である。
【０００６】
このシンドローム演算アクセス要求はアクセス要求頻度が高く、かつページモードを利用するため連続してアクセスする事でアクセス効率が向上する。（Ｃ）は入力データ書込要求である。
【０００７】
アクセスの優先順位は通常、
入力データ書込要求＞シンドローム演算アクセス要求＞リフレッシュ要求
の順である。
【０００８】
（Ｄ）はリフレッシュ実行残数カウンタ１のカウント値、（Ｅ）は調停回路３の調停結果を表している。
【０００９】
図６に示すように、従来のアクセス制御方法は、リフレッシュ回数を満足させるために、（Ｄ）のリフレッシュ実行残数カウンタ１の値が閾値以上となるとリフレッシュ実行残数カウンタ１の値が０となるまで最優先で連続してリフレッシュを行っていた。
【００１０】
【発明が解決しようとする課題】
しかしながら、従来のアクセス制御方法では、シンドローム演算アクセス要求はアクセス要求頻度が高く、しかもリフレッシュよりも優先順位が高いため、リフレッシュを行う機会が少ない。そして、リフレッシュ残数が閾値以上となった時点で最優先で連続してリフレッシュが行なわれるため、図６（Ｃ）の３回目の入力データ書込要求の様に、リフレッシュ中は入力データ書込要求が待たされ、一定のレートでデータが入力されているのに対し入力データ書込が遅れることとなり、入力データが欠落し、システムが破綻してしまうという問題があった。
【００１１】
そこで、本発明のアクセス制御方法は、リフレッシュ実行を最優先して連続で行なうのではなく、リフレッシュ実行を分散させてかつリフレッシュ中には入力データ書込要求のように優先順位の高いアクセスを許可することで、入力データの欠落等によるシステムの破綻を防ぐことを目的とする。
【００１２】
【課題を解決するための手段】
この問題を解決するために本発明のアクセス制御方法は、複数のアクセス要求を調停するアクセス制御方法であって、いかなるときも、リフレッシュ要求の優先順位を入力データ書込要求の優先順位より低くなるようにすることを特徴とする。
【００１３】
さらに、複数のアクセス要求を調停するアクセス制御方法であって、一旦リフレッシュ動作が開始された場合、リフレッシュ実行残数カウンタが閾値を下回るまでは、リフレッシュ要求の優先順位が入力データ書込み要求以外の要求より高くなるようにすることを特徴とする。
【００１４】
また、アクセス対象がＤＲＡＭである場合、定期的なリフレッシュ要求受け入れのタイミングを、ページモードから通常モードへの切り替えタイミングと同期させることを特徴とする。
【００１５】
次に、本発明のアクセス制御回路は、外部から入力されたリフレッシュクロック信号によりカウントアップされ、１回のリフレッシュ動作が完了した事を示す信号によってデクリメントされるリフレッシュ実行残数カウンタと、リフレッシュ要求を出力するリフレッシュ要求生成回路と、前記リフレッシュ要求と他の複数のアクセス要求との調停動作を行い、予め決められた優先順位に従ってアクセスすべきアクセス系統を決定する調停回路と、前記調停回路の調停結果に従いアクセス信号を生成するアクセス制御信号生成回路とを有し、他の複数のアクセス要求に、優先順位が前記リフレッシュ要求よりも高い第１のアクセス要求と、優先順位が前記第１のアクセス要求より高い第２のアクセス要求が含まれており、前記リフレッシュ実行残数カウンタの値が第１の閾値と等しい若しくは前記第１の閾値より大きい場合に、前記リフレッシュ実行残数カウンタの値が前記第１の閾値より低い第２の閾値と等しくなるまで若しくは前記第２の閾値より小さくなるまで前記リフレッシュ要求を受け入れ、前記リフレッシュ要求受け入れ中に、前記第２のアクセス要求が発生した場合には、前記リフレッシュ実行残数カウンタの値のいかんに関わらず、前記第２のアクセス要求を受け入れることを特徴とする。
【００１６】
また、前記リフレッシュ実行残数カウンタの値が前記第２の閾値と等しくなるか若しくは前記第２の閾値を下回るまでは、前記第１のアクセス要求が発生しても、前記第１のアクセス要求を受け入れないことを特徴とする。
【００１７】
【発明の実施の形態】
以下、本発明の第１の実施形態について、図１と図２を参照して説明する。アクセスにはさまざまなものがあるが、以下アクセス対象としてＤＲＡＭ（メモリ）を例に取り説明する。
【００１８】
図１は本発明の第１の実施形態によるアクセス制御回路を示し、図２は本発明の第１の実施形態によるアクセス制御方法を示している。
【００１９】
ただし、第一のアクセス要求としてリフレッシュ要求、第二のアクセス要求としてシンドローム演算アクセス要求を用いて説明する。
【００２０】
図１において、６はリフレッシュ実行残数カウンタ１の値が０以外の時リフレッシュ要求を出力するリフレッシュ要求生成回路、７はシンドローム演算アクセス要求が終了してから、リフレッシュ実行残数カウンタ１の値が０となりリフレッシュ要求が終了するまでリフレッシュ要求の優先順位をシンドローム演算アクセス要求の優先順位よりも高くする機能を有し、リフレッシュ要求、シンドローム演算アクセス要求、入力データ書込要求を調停する調停回路である。
【００２１】
なお、１はリフレッシュ実行残数カウンタ、４はメモリ制御信号生成回路、５はメモリであり従来例の構成と同じである。以下その動作を説明する。
【００２２】
ＤＲＡＭは８．２ｍｓｅｃ内に５１２回のリフレッシュが必要であるため、約７０ＫＨｚのクロックでリフレッシュ実行残数カウンタ１をカウントアップし、リフレッシュ実行でカウントダウンすることでリフレッシュ実行の残数を計数し、この計数値が０以外の時にはリフレッシュ要求生成回路６から調停回路７へリフレッシュを要求する。
【００２３】
ここで、図２は図１の調停回路７の調停方法を示したものであり、（Ａ）はリフレッシュ要求、（Ｂ）はシンドローム演算アクセス要求である。
【００２４】
このシンドローム演算アクセス要求はページモードを利用して連続してアクセスする事でアクセス効率を上げている。（Ｃ）は入力データ書込要求であり、この要求の実行があまりに遅れるとデータ入力に対してデータ書込みが間に合わず、入力データの欠落でシステムの破綻が起こる。
【００２５】
アクセスの優先順位は通常、
入力データ書込要求＞シンドローム演算アクセス要求＞リフレッシュ要求
の順である。
【００２６】
また、（Ｄ）はリフレッシュ実行残数カウンタ１のカウント値、（Ｅ）は調停回路７の調停結果を表している。
【００２７】
リフレッシュ要求は、シンドローム演算アクセス要求よりも優先順位が低い。しかもシンドローム演算アクセス要求はアクセス頻度が高くかつページモードを利用して連続でアクセスするため、なかなかリフレッシュが実行されない。
【００２８】
そこで、図２（Ｂ）に示すように、シンドローム演算の処理は処理の方式上又はＤＲＡＭの構成上ページモードから通常アクセスへ戻るタイミングが定期的にあるため、このタイミングで、シンドローム演算アクセス要求を一旦取り下げる。こうして出来たシンドローム演算アクセス要求の終了時からリフレッシュ実行残数カウンタ１の値が０となるまで、調停回路７においてリフレッシュ要求の優先順位をシンドローム演算アクセス要求よりも高くする。
【００２９】
このようにすることで、ページモードが不要に途切れることなく定期的にリフレッシュを実行することができ、しかもリフレッシュの優先順位は優先順位の高い入力データ書込要求よりも低いため、図２（Ｃ）における１回目の要求のようにリフレッシュ中でも入力データ書込が許可され、入力データ欠落によるシステム破綻を防ぐことができる。
【００３０】
以上のように本実施形態によれば、リフレッシュ実行による不要なページモードの中断を起こさず、定期的なリフレッシュを行なうことができ、しかも、リフレッシュの優先順位は優先順位の高い入力データ書込要求よりも低いため、リフレッシュ中でも入力データ書込が許可され、入力データ欠落によるシステム破綻を防ぐことができる。
【００３１】
このようにして得られた調停結果によりメモリ制御信号生成回路４でメモリアクセス信号を生成し、メモリ５へアクセスを行なうものである。
【００３２】
以下、本発明の第２の実施形態について図３と図４を用いて説明する。アクセスにはさまざまなものがあるが、以下アクセス対象としてＤＲＡＭ（メモリ）を例に取り説明を行なう。
【００３３】
図３は本発明の第２の実施形態によるアクセス制御回路を示し、図４は本発明の第２の実施形態によるアクセス制御方法を示している。
【００３４】
図３において、８はリフレッシュ実行残数カウンタ１の値の増加に応じてリフレッシュ要求の優先順位を次々に上げる機能を有し、入力データ書込要求、第三のアクセス要求、シンドローム演算アクセス要求、リフレッシュ要求とを調停する調停回路である。
【００３５】
優先順位は通常、
入力データ書込要求＞第三のアクセス要求＞シンドローム演算アクセス要求＞リフレッシュ要求
である。
【００３６】
なお、１はリフレッシュ実行残数カウンタ、４はメモリ制御信号生成回路、５はメモリであり従来例の構成と同じであり、６はリフレッシュ要求生成回路であり第１の実施形態の構成と同様である。以下、動作を説明する。
【００３７】
ＤＲＡＭは８．２ｍｓｅｃ内に５１２回のリフレッシュが必要であるため、約７０ｋＨｚのクロックでリフレッシュ実行残数カウンタ１をカウントアップし、リフレッシュ実行でカウントダウンすることでリフレッシュ実行の残数を計数し、この計数値が０以外の時にはリフレッシュ要求生成回路６により調停回路８へリフレッシュを要求する。
【００３８】
ここで、図４（ａ）のように、リフレッシュ要求がなかなか受け付けられず、リフレッシュ実行残数カウンタ１の値が第２の閾値以上となった場合には、リフレッシュ要求の優先順位を１つ上げて（Ａ）リフレッシュ要求＞（Ｂ）シンドローム演算アクセス要求とし、リフレッシュ実行を促す。その後、リフレッシュ実行により、第２の閾値より小さい第３の閾値を下回った場合には、リフレッシュ要求の優先順位を下げる。
【００３９】
しかし、リフレッシュ要求の優先順位が１つ上がってもリフレッシュ残数カウンタ１の値が上昇しつづけ、第４の閾値以上となった場合には、図４（ｂ）のようにリフレッシュの優先順位をさらにもう１つ上げ、（Ａ）リフレッシュ要求＞（Ｆ）第３のアクセス要求とする。同様にリフレッシュカウンタ１の値が増加する限りは段階的に決めた閾値を超えるたびにリフレッシュ要求の優先順位を上げていく。
【００４０】
そして、図４（ｃ）のように、リフレッシュ実行残数カウンタ１の値が減少し始めて、第２の閾値や第４の閾値よりも小さな値に設定した第３の閾値以下となったところで優先順位をもとに戻す。
【００４１】
以上のように本実施の形態では、リフレッシュの優先順位をリフレッシュ残数カウンタの増加に応じて段階的に上昇させるため、リフレッシュ要求の緊急度合いに応じてリフレッシュ実行が可能となり、また、リフレッシュ残数カウンタの値がある程度小さくなって始めてリフレッシュ要求の優先順位を元に戻すため、リフレッシュ残数を確実に減らすことができる。
【００４２】
このようにすることで、入力データ書込要求の様な、優先順位の高いアクセスを妨げることなくリフレッシュを実行でき、書込データ欠落によるシステムの破綻を防ぐことができる。
【００４３】
なお、第１の実施形態において、リフレッシュ実行残数カウンタ１の値が０となりリフレッシュ要求が終了するまでリフレッシュ要求の優先順位をシンドローム演算アクセス要求の優先順位よりも高くするとしたが、閾値を設けて閾値となるまでリフレッシュ要求の優先順位をシンドローム演算アクセス要求の優先順位よりも高くするでも良い。
【００４４】
また、第１の実施形態において、シンドローム演算アクセス要求の終了時からリフレッシュ実行残数カウンタ１の値が０となるまで、調停回路７においてリフレッシュ要求の優先順位をシンドローム演算アクセス要求よりも高くするのではなく、シンドローム演算アクセス要求をあらかじめ決められたインターバルで終了させるのみでも良い。
【００４５】
また、第１の実施形態において、シンドローム演算アクセス要求が終了してから、リフレッシュ実行残数カウンタ１の値が０となりリフレッシュ要求が終了するまでリフレッシュ要求の優先順位をシンドローム演算アクセス要求の優先順位よりも高くするのではなくシンドローム演算アクセス要求が終了してから、リフレッシュ実行残数カウンタ１の値が予め決められた閾値となるまでシンドローム演算アクセス要求を再会しない方法でも良い。
【００４６】
以上、アクセス対象としてＤＲＡＭ（メモリ）を用いて説明を行なったが、ＤＲＡＭ以外に対するアクセス制御でも良いことは言うまでもない。
【００４７】
【発明の効果】
本発明は、入力データ書込要求のように優先順位の高いアクセス要求を妨げることなくリフレッシュを行ない、入力データの欠落によるシステムの破綻を防ぐことができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態によるアクセス制御回路の構成図
【図２】本発明の第１の実施形態によるアクセス制御方法を示す図
【図３】本発明の第２の実施形態によるアクセス制御回路の構成図
【図４】本発明の第２の実施形態によるアクセス制御方法を示す図
【図５】従来のアクセス制御回路の構成図
【図６】従来のアクセス制御方法を示す図
【符号の説明】
１  リフレッシュ実行残数カウンタ
２  リフレッシュ要求生成回路
３  従来例の調停回路
４  メモリ制御信号生成回路
５  メモリ
６  本発明の第１の実施形態におけるリフレッシュ要求生成回路
７  本発明の第１の実施形態における調停回路
８  本発明の第２の実施形態における調停回路
【図１】
0003675349.tif 000002
【図２】
0003675349.tif 000003
【図３】
0003675349.tif 000004
【図４】
0003675349.tif 000005
【図５】
0003675349.tif 000006
【図６】
0003675349.tif 000007