(57)【要約】【課題】ＳＤＲＡＭのリフレッシュを効率的に行う。【解決手段】リフレッシュ制御回路１０５にて、ＳＤＲＡＭ１０７への書き込みまたは読み出し動作中にＳＤＲＡＭ１０７の特定のバンクのアイドル状態になるタイミングで、各バンクに対してアクティベートコマンドとプリチャージコマンドを発行してリフレッシュ動作を行う。リフレッシュ動作中の特定バンクがアイドル状態になるタイミングで、ＳＤＲＡＭ１０７への書き込みまたは読み出し動作を再開することにより、リフレッシュ動作によりＳＤＲＡＭ１０７へアクセスできない時間の短縮を行う。【選択図】図１
2011159341.tif 000002
【特許請求の範囲】
【請求項１】
複数のバンクを有し一回の書き込みまたは読み出しのコマンドで複数回のデータの書き込みまたは読み出しを行うシンクロナスＤＲＡＭ（以下、ＳＤＲＡＭと記す）に対する制御回路において、
マスターからのアクセス要求とＳＤＲＡＭのリフレッシュ動作中にＳＤＲＡＭへのアクセスを停止させるＳＤＲＡＭアクセス停止信号に従ってＳＤＲＡＭを構成する全バンクまたは一部の複数のバンクに対して各バンクにアクセスするタイミングをずらしながらＳＤＲＡＭへの書き込みまたは読み出し要求を行うＳＤＲＡＭアクセス制御回路と、
前記ＳＤＲＡＭアクセス制御回路により前記マスターとＳＤＲＡＭ間のデータ制御を行うデータ制御回路と、
ＳＤＲＡＭに対して一定周期でリフレッシュの動作タイミングを制御するリフレッシュスケジュール回路と、
前記ＳＤＲＡＭアクセス制御回路から出力されたＳＤＲＡＭがアイドル状態に変化したことを示すＳＤＲＡＭ状態信号と前記リフレッシュスケジュール回路から出力されるリフレッシュ要求信号からＳＤＲＡＭのリフレッシュ制御と前記ＳＤＲＡＭアクセス停止信号を出力するリフレッシュ制御回路と、
前記ＳＤＲＡＭアクセス制御回路から出力されるＳＤＲＡＭアクセス制御信号と前記リフレッシュ制御回路から出力されるリフレッシュ制御信号を入力としてＳＤＲＡＭへのコマンド発生を行うＳＤＲＡＭコマンド発生回路を備え、前記ＳＤＲＡＭコマンド発生回路からのコマンド発生に基づいて、ＳＤＲＡＭへのリフレッシュをアクティベートとプリチャージにより行うことを特徴とするメモリ制御回路。
【請求項２】
前記メモリ制御回路は、前記ＳＤＲＡＭアクセス制御回路にてＳＤＲＡＭのバンクにまたがる書き込みまたは読み出し制御は連続して行い、アクセス対象の全バンクの書き込みまたは読み出しに必要な時間はＳＤＲＡＭのロウサイクルタイム（以下ｔＲＣと記す）より大きくかつｔＲＣの２倍より小さいことを特長とする請求項１記載のメモリ制御回路。
【請求項３】
前記メモリ制御回路は、ＳＤＲＡＭへの読み出しアクセス後にのみリフレッシュ動作を行うことを特徴とする請求項１記載のメモリ制御回路。
【請求項４】
前記メモリ制御回路は、前記ＳＤＲＡＭ状態信号はアクセスする対象のＳＤＲＡＭの特定のバンクのアイドル状態に変化したことを示すことを特徴とする請求項１記載のメモリ制御回路。
【請求項５】
前記メモリ制御回路は、前記ＳＤＲＡＭ状態信号はマスターからアクセス要求に従って最初にアクセスするＳＤＲＡＭのバンクがアイドル状態に変化したことを示すことを特徴とする請求項１記載のメモリ制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＳＤＲＡＭに対する画像データ等の書き込み及び読み出しを効率的に行う方法に関するものである。
【背景技術】
【０００２】
近年、画像処理に用いるメモリとしてＳＤＲＡＭの利用が急速に広まっている。ＳＤＲＡＭの特徴として、高速な入出力インターフェースを備え、大容量のメモリを比較的安価に入手可能なことが挙げられる。また従来のＳＤＲ（シングル・データ・レート）に対して、最近になってＤＤＲ（ダブル・データ・レート）に対応したＳＤＲＡＭが多く使用されるようになってきており、入出力インターフェースの高速化が進んでいる。
【０００３】
一方、ＳＤＲＡＭを構成するメモリセルは一定時間しかデータを保持することができず、書き込みまたは読み出しを一定期間以上行わなかった場合にメモリセルのデータ化けが起こる可能性があり。データ化けを起こさないためにＳＤＲＡＭはリフレッシュを一定時間間隔で行う必要がある。
【０００４】
ＳＤＲＡＭに対するリフレッシュに関しては、オート・リフレッシュとセルフ・リフレッシュに大別される。セルフ・リフレッシュは、ＳＤＲＡＭに対する書き込みと読み出し動作は行わない状態でＳＤＲＡＭのメモリセルのデータ保持のために行うリフレッシュである。一方、オート・リフレッシュは、ＳＤＲＡＭに対する書き込みと読み出し動作を行いながらＳＤＲＡＭのメモリセルのデータ保持のために行うリフレッシュであり、リフレッシュを行うにはＳＤＲＡＭへの書き込みまたは読み出し動作を一旦止めて行う必要がある（以後、リフレッシュはオート・リフレッシュを意味するものとする）。
【０００５】
オート・リフレッシュを行う期間は、ＳＤＲＡＭへの書き込みまたは読み出しを行うことができずＳＤＲＡＭへのアクセス性能の効率を悪化させる原因となっている。また、ＳＤＲＡＭのメモリ容量が大きくなると、一回のリフレッシュに必要な時間が長くなる。また、高温環境で動作させる場合には、必要とされるリフレッシュの平均時間間隔（ｔＲＥＦＩ）が短くなり、ＳＤＲＡＭへのアクセス効率をさらに悪化させることになる。
【０００６】
特許文献１による従来の技術の第１の方法では、ＤＲＡＭを複数個用いてバンクを構成し各バンクへの書き込みまたは読み出しアクセスに続いてリフレッシュ動作を行い、バンクインターリーブを行うことによりリフレッシュ動作を隠蔽し、ＤＲＡＭへのアクセス効率の低下をさせずリフレッシュ動作を行うものである。
【０００７】
特許文献２による従来の技術の第２の方法では、デュアルポートＤＲＡＭを複数個用いてバンクを構成し各バンクへの書き込みまたは読み出しアクセスに続いてリフレッシュ動作を行い、バンクインターリーブを行うことによりリフレッシュ動作を隠蔽し、ＤＲＡＭへのアクセス効率の低下をさせずリフレッシュ動作を行うものである。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平４−１４９８９２号公報
【特許文献２】特開平８−１１５５９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、ＳＤＲＡＭではリフレッシュコマンドは、全てのバンクがアイドル状態になるまで発行することができないため、従来の技術の第１の方法と従来の技術の第２の方法によるバンク毎に書き込み又は読み出し動作に続いてリフレッシュを行うことはできない。
【００１０】
また、ＳＤＲＡＭでは、バンクを指定してリフレッシュを行うことはできないため、全バンクがアイドル状態になるまでリフレッシュを行うことができない。図２に、ＳＤＲＡＭのアクセスの一例として、低消費電力と高性能を両立したメモリとして注目されているＦＣＲＡＭ（Ｆａｓｔ  Ｃｙｃｌｅ  ＲＡＭ）に対する読み出し動作中にリフレッシュが行われる際のタイミングチャートを示す。ＦＣＲＡＭはダブルデータレートのＳＤＲＡＭでデータバス幅が６４ビットとなっており、図２に示すタイミングチャートはバースト長８で４バンクを全て用いたバンクインタリーブにより４バンクを一巡するアクセスにより２５６バイトのデータをＦＣＲＡＭから読み出し動作時のタイミンングチャートとなっている。
【００１１】
ＦＣＲＡＭの動作パラメータを示す。
【００１２】
ｔＣＫ  ：  クロック周期              ５ｎｓ
ｔＲＣ  ：  同一バンクに対してアクティベートから次のアクティベート発行までの最小時間              ５９．２ｎｓ（１２ｔＣＫ）
ＣＬ    ：  リードコマンドに対してＦＣＲＡＭからデータが出力されるまでの時間              ４ｔＣＫ
ｔＲＰ  ：  プリチーャジコマンドからプリチャージが終了するまでの時間              １８ｎｓ（４ｔＣＫ）
ｔＲＲＤ：  アクティベートから別バンクのアクティベートコマンドの発行までの最小時間              ９．２ｎｓ（２ｔＣＫ）
ｔＲＣＤ：  アクティベートからライトまたはリードコマンドの発行までの最小時間              ２０ｎｓ（４ｔＣＫ）
ｔＲＡＳ：  アクティベートからプリチーャジコマンドを発行までの最小時間              ３７ｎｓ（８ｔＣＫ）
ｔＲＦＣ：  オートリフレッシュからアクティベートを発行までの最小時間              １００ｎｓ（２０ｔＣＫ）
以下に、図２に示したタイミングチャートの説明を行う。ＦＣＲＡＭに対して、バースト長８で各バンクに対して一回のオートプリチャージ付きリードコマンドを発行して４バンクを一巡することにより２５６バイトのデータをＦＣＲＡＭから読み出す。４バンク一巡のアクセスを行うためのＦＣＲＡＭへのコマンドは、ｔ０のアクティベートコマンドからｔ４のオートプリチャージ付きリードコマンドで構成され、ｔ２からｔ５の期間にＦＣＲＡＭから２５６バイトのデータが読み出される。
各バンクに対してアクティベートコマンドとオートプリチャージ付きリードコマンドの二つのコマンドでバースト長８でＦＣＲＡＭから読み出しを行う。ローサイクルタイムｔＲＣ（１２ｔＣＫ）に比べて、４バンクを一巡するのに１６サイクルの時間が必要であり、４バンクを一巡するアクセスによりｔＲＣは隠蔽されており、結果として２５６バイト単位でＦＣＲＡＭにランダムアクセスが可能となる。リフレッシュを行う際には、ｔ４のバンク３のオートプリチャージ付きリードコマンドから８サイクル後のｔ５にバンク３がアイドル状態になり、ｔ５のタイミングでオートリフレッシュコマンドが発行可能となる。
ｔ５で発行するリフレッシュコマンドからｔＲＦＣ（２０ｔＣＫ）後のｔ６で再びバンク０のアクティベートコマンドで読み出し動作が再開され、ｔ７のタイミングでＦＣＲＡＭから読み出しデータが出力される。以上の動作から、４バンクを一巡する読み出し動作の間にオートリフレシュを行うと２７サイクルの期間ＦＣＲＡＭにアクセスできなくなる。
【００１３】
ＦＣＲＡＭでは、ＦＣＲＡＭ内のメモリチップのジャンクション温度が９０度以下の場合、リフレッシュを平均７．８μｓ周期で発行すればよいが、ＦＣＲＡＭ内のメモリチップのジャンクション温度が９０度を越す場合は、リフレッシュを平均１μｓ周期（２００サイクル）で行う必要がある。また、一回のリフレッシュ動作で２７サイクルの期間ＦＣＲＡＭへアクセスできなくなる。つまり、リフレッシュ動作のため１３．５％のデータ転送帯域が使用され、ＦＣＲＡＭへのアクセス効率は８６．５％まで低下し、マスターが使用可能なデータ転送帯域が減少しＦＣＲＡＭの効率的な使い方ができなくなる。
【００１４】
本発明は上記に鑑み、複数のバンクを有し一回の書き込みまたは読み出しのコマンドで複数回のデータの書き込みまたは読み出しを行うシンクロナスＤＲＡＭ（以下、ＳＤＲＡＭと記す）に対する制御回路において、マスターからのアクセス要求とＳＤＲＡＭのリフレッシュ動作中にＳＤＲＡＭへのアクセスを停止させるＳＤＲＡＭアクセス停止信号に従ってＳＤＲＡＭを構成する全バンクまたは一部の複数のバンクに対して各バンクにアクセスするタイミングをずらしながらＳＤＲＡＭへの書き込みまたは読み出し要求を行うＳＤＲＡＭアクセス制御回路と、ＳＤＲＡＭアクセス制御回路によりマスターとＳＤＲＡＭ間のデータ制御を行うデータ制御回路と、ＳＤＲＡＭに対して一定周期でリフレッシュの動作タイミングを制御するリフレッシュスケジュール回路と、ＳＤＲＡＭアクセス制御回路から出力されたＳＤＲＡＭがアイドル状態に変化したことを示すＳＤＲＡＭ状態信号とリフレッシュスケジュール回路から出力されるリフレッシュ要求信号からＳＤＲＡＭのリフレッシュ制御とＳＤＲＡＭアクセス停止信号を出力するリフレッシュ制御回路と、ＳＤＲＡＭアクセス制御回路から出力されるＳＤＲＡＭアクセス制御信号とリフレッシュ制御回路から出力されるリフレッシュ制御信号を入力としてＳＤＲＡＭへのコマンド発生を行うＳＤＲＡＭコマンド発生回路を備え、ＳＤＲＡＭコマンド発生回路からのコマンド発生に基づいて、ＳＤＲＡＭへのリフレッシュをアクティベートとプリチャージにより行うことを特徴とするメモリ制御回路を提供する。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明は次の構成を採用した。すなわち、第１の発明は、複数のバンクを有し一回の書き込みまたは読み出しのコマンドで複数回のデータの書き込みまたは読み出しを行うシンクロナスＤＲＡＭ（以下、ＳＤＲＡＭと記す）に対する制御回路において、マスターからのアクセス要求とＳＤＲＡＭのリフレッシュ動作中にＳＤＲＡＭへのアクセスを停止させるＳＤＲＡＭアクセス停止信号に従ってＳＤＲＡＭを構成する全バンクまたは一部の複数のバンクに対して各バンクにアクセスするタイミングをずらしながらＳＤＲＡＭへの書き込みまたは読み出し要求を行うＳＤＲＡＭアクセス制御回路と、ＳＤＲＡＭアクセス制御回路によりマスターとＳＤＲＡＭ間のデータ制御を行うデータ制御回路と、ＳＤＲＡＭに対して一定周期でリフレッシュの動作タイミングを制御するリフレッシュスケジュール回路と、ＳＤＲＡＭアクセス制御回路から出力されたＳＤＲＡＭがアイドル状態に変化したことを示すＳＤＲＡＭ状態信号とリフレッシュスケジュール回路から出力されるリフレッシュ要求信号からＳＤＲＡＭのリフレッシュ制御とＳＤＲＡＭアクセス停止信号を出力するリフレッシュ制御回路と、ＳＤＲＡＭアクセス制御回路から出力されるＳＤＲＡＭアクセス制御信号とリフレッシュ制御回路から出力されるリフレッシュ制御信号を入力としてＳＤＲＡＭへのコマンド発生を行うＳＤＲＡＭコマンド発生回路を備え、ＳＤＲＡＭコマンド発生回路からのコマンド発生に基づいて、ＳＤＲＡＭへのリフレッシュをアクティベートとプリチャージにより行うことを特徴とするメモリ制御回路を備える。
【００１６】
また、第２の発明は、請求項１記載の発明に加え、前記ＳＤＲＡＭアクセス制御回路にてＳＤＲＡＭのバンクにまたがる書き込みまたは読み出し制御は連続して行い、アクセス対象の全バンクの書き込みまたは読み出しに必要な時間はＳＤＲＡＭのｔＲＣより大きくかつｔＲＣの２倍より小さい。
【００１７】
また、第３の発明は、請求項１記載の発明に加え、ＳＤＲＡＭへの読み出しアクセス後にのみリフレッシュ動作を行う。
【００１８】
また、第４の発明は、請求項１記載の発明に加え、前記ＳＤＲＡＭ状態信号はアクセスする対象のＳＤＲＡＭの特定のバンクのアイドル状態に変化したことを示す。
【００１９】
請求項５記載の発明は、前記ＳＤＲＡＭ状態信号はマスターからアクセス要求に従って最初にアクセスするＳＤＲＡＭのバンクがアイドル状態に変化したことを示す。
【発明の効果】
【００２０】
以上述べたように、本発明のメモリ制御回路においては、オートリフレッシュコマンドの替わりに、バンク毎のアクティベートコマンドとプリチャージコマンドを使用することにより、オートリフレッシュコマンドを使用した場合に比べて、リフレッシュ動作によるＳＤＲＡＭへアクセスできない時間を短くすることができ、ＳＤＲＡＭの利用効率を向上可能である。また、通常のＳＤＲＡＭに対して、本来制御可能なコマンドの組み合わせで実現することができ、コスト増なしにＳＤＲＡＭの利用効率を向上できる。
【図面の簡単な説明】
【００２１】
【図１】本実施の形態におけるメモリ制御回路を示す図
【図２】従来の技術におけるＳＤＲＡＭアクセスのタイミングチャート
【図３】本実施の形態におけるＳＤＲＡＭの連続読み出し時のタイミングチャート
【図４】本実施の形態におけるＳＤＲＡＭアクセス制御回路１０３の動作のタイミングチャート
【図５】本実施の形態におけるリフレッシュ制御回路１０５の動作のタイミングチャート（１）
【図６】本実施の形態におけるリフレッシュ制御回路１０５の動作のタイミングチャート（２）
【図７】本実施の形態における読み出し制御とリフレッシュ制御のタイミングチャート
【発明を実施するための形態】
【００２２】
（実施の形態１）
以下、本発明に関わるメモリ制御回路の一実施の形態について説明する。図１は、本実施の形態におけるメモリ制御回路を示すブロック図である。メモリ制御回路は、マスター１０１、データ制御回路１０２、ＳＤＲＡＭアクセス制御回路１０３、リフレッシュスケジュール回路１０４、リフレッシュ制御回路１０５、ＳＤＲＡＭコマンド発生回路１０６、ＳＤＲＡＭ１０７を備えている。
【００２３】
マスター１０１はＳＤＲＡＭへの書き込みまたは読み出しを行うためＳＤＲＡＭアクセス制御回路１０３に対してアクセス要求ｒｑを発生する。ＳＤＲＡＭアクセス制御回路１０３はマスター１０１からのアクセス要求ｒｑとリフッレッシュ制御回路１０５からのＳＤＲＡＭアクセス停止信号に従ってＳＤＲＡＭ１０７に対するデータの書き込みまたは読み出しを行うためのＳＤＲＡＭのコマンド列であるＳＤＲＡＭアクセス制御信号を生成する。
また、ＳＤＲＡＭアクセス制御回路１０３は、ＳＤＲＡＭアクセス制御信号に従ってＳＤＲＡＭのアクセス後にＳＤＲＡＭがアイドル状態に変化するタイミングをＳＤＲＡＭ状態信号として出力する。データ制御回路１０２は、ＳＤＲＡＭアクセス制御回路１０３の制御に従って、ＳＤＲＡＭ１０７に対して書き込みを行う際には、マスター１０１から出力されるデータをＳＤＲＡＭ１０７へ入力し、ＳＤＲＡＭ１０７に対して読み出しを行う際には、ＳＤＲＡＭ１０７から読み出したデータをマスター１０１に入力する。リフレッシュスケジュール回路１０４は、ＳＤＲＡＭ１０７に対して必要とされるリフレッシュの平均時間間隔（ｔＲＥＦＩ）でリフレッシュ要求信号を発生する。
リフレッシュ制御回路１０５は、ＳＤＲＡＭ状態信号とリフレッシュ要求信号を入力として、ｔＲＥＦＩの時間間隔でＳＤＲＡＭ１０７がアイドル状態になるタイミングでＳＤＲＡＭ１０７のリフレッシュを行うためのリフレッシュ制御信号を生成する。さらに、リフレッシュ制御回路１０５は、ＳＤＲＡＭ１０７のリフレッシュ制御時にＳＤＲＡＭアクセス制御回路１０３に対してＳＤＲＡＭアクセス停止信号を出力し、ＳＤＲＡＭ１０７がリフレッシュ動作時にＳＤＲＡＭアクセス制御回路１０３からＳＤＲＡＭ１０７へアクセスするコマンド列の生成を停止させる。ＳＤＲＡＭアクセス制御回路１０３は、マスター１０１からのＳＤＲＡＭへのアクセス要求ｒｑによりＳＤＲＡＭに対する書き込みまたは読み出しのコマンド列であるＳＲＡＭアクセス制御信号を出力する際に、ＳＤＲＡＭの各バンクにアクセスするタイミングをずらしながらアクセスする。
【００２４】
図３に、ＦＣＲＡＭの各バンクにアクセスするタイミングをずらしながらアクセスするバンクインターリーブのタイミングチャートの一例を示す。バート長は８での動作例を示す。ＦＣＲＡＭの各バンクに対してアクティベートコマンドとオートプリチャージ付きリードコマンドを発行してバースト長８の読み出し動作を実現している。バンク０に対してｔ０でアクティベートコマンドを発行し、ｔ１にてバンク０に対してオートプリチャージ付きリードコマンドを発行する。バンク１に関しては、バンク０から４サイクル遅れたｔ２のタイミングからバンク０の場合と同様にアクティベートコマンドとオートプリチャージ付きリードコマンドを発行する。バンク２およびバンク３に関しても同様にコマンドを発行することにより、ＦＣＲＡＭから連続してデータを読み出すことができる。各バンクへアクセスする際のＦＣＲＡＭのアドレスは、ｔ０からｔ４までにアクセスする４バンク全てに対して同じロウアドレスＡｒと同じコラムアドレスＡｃに対してアクセスする。ｔ８から始まるバンク０のアクティベートで始まるアクセスでは、それまでのＦＣＲＡＭのアドレスとは別のロウアドレスＢｒと同じコラムアドレスＢｃに対するアクセスとなる。
結果として、４バンクを一巡するアクセスでは、バースト長８でのアクセスでは１６サイクルの時間が必要となる。なお、本実施の形態では、各バンクに対して、アクティベートコマンド後の３サイクル後にオートプリチャージ付きリードコマンドを発行しているが、連続してアクセスするバンクに対するオートプリチャージ付きリードコマンドが４サイクル間隔で発行可能ならば、アクティベートコマンドとオートプリチャージ付きリードコマンドの間隔は３サイクル以上開けても構わない。
【００２５】
このようにアクセス対象となるバンクの書き込みまたは読み出しに必要な時間がＳＤＲＡＭのロウサイクルタイム（ＲＣＲＡＭの場合、ｔＲＣ＝１２ｔＣＫ）より長くなるようにコマンド列を生成することにより、ＳＤＲＡＭからの連続読み出しを行うことができる。つまり、アクセス対象となる４個のバンクのアクセスを一単位としてランダムアクセスを連続して行うことが可能となる。
【００２６】
また、アクセス対象となるバンクの書き込みまたは読み出しに必要な時間がＳＤＲＡＭのロウサイクルタイム（ｔＲＣ）の２倍より小さくすることで、ランダムアクセスの単位を最小にすることができる。一例として、６４ビットデータバスのＦＣＲＡＭにおいて、バンク毎にバースト長８で１バースト毎のアクセスを行うと、ＦＣＲＡＭから４バンクで２５６バイトのデータのアクセスが可能となり、映像処理に適した小さな転送単位でＦＣＲＡＭへのランダムアクセスを行うことができる。
なお、本実施の形態の一例としては、バースト長８での動作説明を行った名が、バースト長を４としても、各バンクに対して一回のアクティベートと１回のリードコマンドと１回のオートプリチャージ付きリードコマンドを発行することにより、ＳＤＲＡＭに対して同様のアクセスを実現できる。
また、ＦＣＲＡＭの書き込み動作に関しても、オートプリチャージ付きリードコマンドの代わりにオートプリチャージ付きライトコマンドを使用することにより、読み出し動作と同様なアクセスが可能である。なお、本実施の形態では４個のバンクを一巡するアクセスにおいて、アクセス対象のＦＣＲＡＭのアドレスは各バンクで共通な場合の動作の１例を説明したが、バンク間でアクセスするバンクは異なっても４個のバンクを一巡する単位でＦＣＲＡＭへのランダムアクセスを行うことは可能である。
【００２７】
次に、ＳＤＲＡＭアクセス制御回路１０３の動作に関して図４を用いて詳しく説明する。図４に示しているタイミングチャートは、ＦＣＲＡＭに対してマスター１０１から読み出し要求が発行された場合のＳＤＲＡＭアクセス制御回路１０３の動作のタイミングチャートを示す。ＳＤＲＡＭアクセス制御回路１０３は、リフレッシュ制御回路１０５から入力されるＳＤＲＡＭアクセス停止信号により、ＳＤＲＡＭ１０７へのアクセスを停止する必要があるが、この動作に関しては後ほど説明する。
【００２８】
マスター１０１から発行させるアクセス要求信号ｒｑは、読み出しリクエスト信号ｒｒｅｑとアドレスｒａｄに分けられる。ｒｒｅｑは同時に設定される読み出しアドレスｒａｄともにＳＤＲＡＭアクセス制御回路１０３に入力される。なお、本実施の形態では読み出しアドレスは、ロウアドレスとコラムアドレスを直接指定しているが、ロウアドレスとコラムアドレスから作成された論理アドレスを用いても良いが、ロウアドレスとコラムアドレスの組み合わせから論理アドレスは一意的に決まる必要がある。
【００２９】
マスター１０１が出力するＦＣＡＲＭに対するデータ読み出しのためのアクセス要求ｒｑに対して、ＳＤＲＡＭアクセス制御回路１０３は応答可能なタイミングｔ０にて応答信号ａｃｋをマスター１０１に出力する。マスター１０１は応答信号ａｃｋを受け取ると、次の読み出し要求がある場合にＦＣＲＡＭの読み出しのためのアクセス要求読み出し要求ｒｑを出力可能なタイミングｔ２で出力する。
【００３０】
ＳＤＲＡＭアクセス制御回路１０３は、ｔ０のタイミングで応答信号ａｃｋをマスター１０１に出力すると同時に、ＦＣＲＡＭの読み出しアドレスであるロウアドレスＡｒとコラムアドレスＡｃを取り込み、次のサイクルｔ１からＦＣＲＡＭに対して４個のバンクからロウアドレスＡｒとコラムアドレスＡｃを読み出すためのコマンド列をＳＤＲＡＭアクセス信号を出力する。ｔ１のタイミングでバンク０のアクティベートコマンドを生成し、ｔ３のタイミングでバンク０のオートプリチャージ付きリードコマンドを生成する。同じ動作をバンク１、バンク２、バンク３と繰り返し、４バンクの一巡するコマンドを生成する。
【００３１】
ＳＤＲＡＭアクセス制御回路１０３は、バンク３のオートプリチャージ付きリードコマンドを生成するタイミングｔ４で４バンクを一巡する読み出し用のコマンドの生成が完了する。マスター１０１は、既にｔ２のタイミングでＦＣＲＡＭの読み出しのための２回目のアクセス要求ｒｑを出力しており、ＳＤＲＡＭアクセス制御回路１０３は、アクセス要求ｒｑに対してｔ４のタイミングで再び応答信号ａｃｋをマスター１０１へ出力する。この動作を繰り返すことにより、ＦＣＲＡＭの連続した読み出し用のコマンド列を生成する。
【００３２】
ＳＤＲＡＭアクセス制御回路１０３は、ＦＣＲＡＭへのコマンド列であるＳＤＲＡＭアクセス制御信号を出力すると同時に、ＳＤＲＡＭがアイドル状態に変化したタイミングを示すＳＤＲＡＭ状態信号を出力する。図４に、ＳＤＲＡＭ状態信号のタイミングチャートを示す。４バンクを一巡するＦＣＲＡＭへのコマンド列は図３で示すものと同じである。また、ＳＤＲＡＭ状態信号は０でＳＤＲＡＭがビジー状態であることを示し、１でアイドル状態であることを示す。
【００３３】
ＳＤＲＡＭアクセス制御回路１０３は、ＳＤＲＡＭアクセス制御信号に従ってバンク０のアクティベートコマンドを生成するタイミングｔ１で、ＳＤＲＡＭ状態信号を０に設定しバンク０がビジー状態に変化したことを示す。続いてバンク０のオートプリチャージ付きリードコマンド生成のタイミングｔ３から８サイクル後のｔ７のタイミングでにＳＤＲＡＭ状態信号を１に設定しバンク０がアイドル状態に変化したことを示す。オートプリチャージ付きリードコマンドから８サイクル後にバンクがアイドル状態になるのはＦＣＲＡＭの制約であり、使用するＳＤＲＡＭに依存した制約である。
マスター１０１からのアクセス要求に従って、ＳＤＲＡＭアクセス制御回路１０３は、ｔ８のタイミングで再びバンク０に対するアクティベートコマンドを生成すると同時に、ＳＤＲＡＭ状態信号を０に設定しバンク０がビジー状態に変化したことを示す。続いてバンク０のオートプリチャージ付きリードコマンド生成のタイミングｔ９から８サイクル後のｔ１０のタイミングでＳＤＲＡＭ状態信号を１に設定しバンク０がアイドル状態に変化したことを示す。
【００３４】
本実施の形態では、ＳＤＲＡＭアクセス制御回路１０３は、マスター１０１からのアクセス要求に従ってＦＣＲＡＭの４個のバンクを一巡するアクセスを行うため、４個のバンクの一巡のアクセス後にＦＣＲＡＭがアイドル状態になるタイミングは４個のバンクの最後にアクセスするバンクであるバンク３のオートプリチャージ付きリードコマンドから８サイクル後のタイミングとなる。しかし、ＳＤＲＡＭ状態信号をＳＤＲＡＭのリフレッシュ動作を開始するタイミングを制御のために使用するため、ＦＣＲＡＭの４個のバンクを一巡するアクセスにおいて最初のバンクがアイドル状態になるタイミングが必要となる。そのため、バンク０を特定のバンクとして、バンク０の状態をＦＣＲＡＭの状態としている。リフレッシュの方法は後に詳しく説明する。
【００３５】
なお、本実施の形態の一例では、マスター１０１からのアクセス要求に従って、ＳＤＲＡＭアクセス制御回路１０３は４個のバンクのアクセスをバンク０からバンク１、バンク２、バンク３とアクセスしているが、４個のバンクを一巡することができればバンク０からアクセスする必要はない。一例として、バンク１、バンク２、バンク３、バンク０というアクセスで４個のバンクを一巡するアクセスを実現する場合には、バンク１の状態をＦＣＲＡＭの状態としてＳＤＲＡＭ状態信号に反映すればよい。
【００３６】
次に、リフレッシュ制御回路１０５の動作に関して説明する。リフレッシュスケジュール回路１０４は、使用するＳＤＲＡＭの必要とされるリフレッシュの平均時間間隔（ｔＲＥＦＩ）でリフレッシュを行うように、リフレッシュ制御回路１０５に対してリフレッシュ要求信号を出力する。一例としてｔＲＥＦＩが１μｓで、ＳＤＲＡＭの動作クロックが２００ＭＨｚの場合、２００サイクル単位でリフレッシュスケジュール回路１０４からリフレッシュ要求が出力される。
リフレッシュ制御回路１０５は、ＳＤＲＡＭ状態信号とリフレッシュ要求信号に従ってＳＤＲＡＭへのリフレッシュ動作用のコマンド列であるリフレッシュ制御信号を出力する。リフレッシュ制御信号に関しては、後に詳しく述べる。リフレッシュ制御回路１０５は、リフレッシュ制御信号を出力すると同時に、ＳＤＲＡＭ１０７へのリフレッシュ動作時にＳＤＲＡＭアクセス制御回路１０３に対してＳＤＲＡＭアクセス制御信号の出力を停止するように、ＳＤＲＡＭアクセス停止信号を出力する。
【００３７】
図５に、リフレッシュ制御回路１０５の動作を説明するためのタイミングチャートを示す。図５では、リフレッシュ要求信号が１になった状態でリフレッシュスケジュール回路１０４からリフレッシュの要求が発生する。ｔ０のタイミングでリフレッシュ要求信号が１になり、ＳＤＲＡＭ１０７に対するリフレッシュ要求が発生する。ｔ０のタイミングでは、ＳＤＲＡＭ状態信号は０（ＳＤＲＡＭがビジー状態であることを示す）であるため、ＳＤＲＡＭ状態信号が１に変化する（ＳＤＲＡＭがビジー状態であることを示す）タイミングｔ１でリフレッシュ制御信号にＳＤＲＡＭ１０７のリフレッシュ動作用のコマンド列を出力する。リフレッシュ制御信号にＳＤＲＡＭのリフレッシュ用のコマンド列を出力するタイミングｔ１でＳＤＲＡＭアクセス停止信号を１に設定し、ＳＤＲＡＭアクセス制御回路１０３に対してＳＤＲＡＭ１０７へのアクセスを停止させる。
また、ｔ２のタイミングでは、リフレッシュスケジュール回路１０４からリフレッシュの要求が発生したタイミングでＳＤＲＡＭ状態信号は１であるため、ｔ２のタイミングでリフレッシュ制御信号にＳＤＲＡＭ１０７のリフレッシュ動作用のコマンド列を出力すと同時にＳＤＲＡＭアクセス停止信号を１に設定する。リフレッシュ制御信号は所定のリフレッシュ動作用のコマンド列を出力後にＮＯＰ（コマンドが無い状態）となる。また、ＳＤＲＡＭアクセス停止信号はリフレッシュ制御信号にリフレッシュ用のコマンド列が出力するタイミングで１となるが、所定のリフレッシュ用のコマンド列の出力が完了するまでに０となり、ＳＤＲＡＭアクセス制御回路１０３のＳＤＲＡＭ１０７へのアクセスを再開させる。
【００３８】
図６にタイミングチャート用いて、リフレッシュ制御回路１０５の動作を詳しく説明する。図６は、ＦＣＲＡＭに対してリフレッシュ制御回路１０５がリフレッシュ動作用のコマンド列を生成するタイミングチャートを示す。リフレッシュスケジュール回路１０４から出力されるリフレッシュ要求信号がｔ０のタイミングで１となりリフレッシュスケジュール回路１０４からリフレッシュの要求が発生する。ＳＤＲＡＭアクセス制御回路１０３から出力されるＳＤＲＡＭ状態信号が１に変化するタイミングでＦＣＲＡＭのバンク０がアイドル状態となるため、リフレッシュ制御回路１０５はＦＣＲＡＭのリフレッシュを行うためのコマンド列の発生を開始すると同時に、ＳＤＲＡＭアクセス停止信号を１にして、ＳＤＲＡＭアクセス制御回路１０３に対してＦＣＲＡＭへのアクセスを停止させる。
ｔ２のタイミングでは、ＦＣＲＡＭのバンクは、バンク０以外はアイドル状態ではないため、ＦＣＲＡＭに対してオートリフレッシュコマンドは発行することはできない。そのため、バンクを指定してアクティベートコマンドとプリチャージコマンドによりリフレッシュを行う。つまり、ｔ２のタイミングでバンク０のロウアドレスＢｒに対してアクティベートコマンドを生成し、ｔＲＡＳ（８サイクル）後にバンク０のプリチャージコマンドを生成することにより、バンク０のロウアドレスＢｒのリフレッシュを行う。
バンク１に関しては、図４で示したようにバースト長８で連続した読み出し動作を行っている場合、バンク０がアイドル状態になるタイミングから４サイクル毎にバンク１、バンク２、バンク３とアイドル状態に変化する。そのため、バンク０に対してｔ２のタイミングでアクティベーとコマンドを発生後に４サイクルごとに、バンク１に対してｔ３のタイミングで、バンク２に対してｔ４のタイミングで、バンク３に対してｔ５のタイミングでのアクティベートコマンドを発生できる。
バンク０の場合と同様に、他のバンクにおいても、アクティベートコマンドからｔＲＡＳ（８サイクル後）にプリチャージコマンドを生成して各バンクを閉じアイドル状態にすることができる。ＦＣＲＡＭの４個のバンクのリフレッシュ動作をタイミングｔ２のバンク０のアクティベートコマンドから、タイミングｔ７のバンク３のプリチャージコマンドで行うことになる。
このようにＳＤＲＡＭのリフレッシュを、通常のオートリフレッシュコマンドの変わりに、バンクを指定してアクティベートコマンドとプリチャージコマンドを生成することによりリフレッシ動作を実現している。ｔ５でバンク０のプリチャージコマンドが生成され、ｔＲＰ（４サイクル）後のｔ８にてバンク０がアイドル状態になるため、リフレッシュ制御回路１０５はＳＤＲＡＭアクセス停止信号を０に変化させ、ＳＤＲＡＭアクセス制御回路１０３が再びＳＤＲＡＭにアクセス可能とする。
【００３９】
このように、リフレッシュ動作をアクティベートコマンドとプリチャージコマンドによりバンクを指定して行うため、リフレッシュ制御回路１０５は、オートリフレッシュコマンドでは必要のなかったリフレッシュを行うロウアドレスの管理を行う必要があり、すべてのバンクのすべてのロウをＳＤＲＡＭのリフレッシュ期間内に全てリフレッシュする必要がある。
【００４０】
ＳＤＲＡＭコマンド発生回路１０６は、ＳＤＲＡＭアクセス信号１０３から出力されるＳＤＲＡＭアクセス制御信号とリフレッシュ制御回路１０５から出力されるリフレッシュ制御信号を混合して出力することによりＳＤＲＡＭ１０７に対する制御コマンドｃｍを出力する。
図７にＦＣＲＡＭに対して、読み出し動作からリフレッシュ動作に移り、再び読み出し動作に移る場合のタイミングチャートを示す。リフレッシュ動作前のＦＣＲＡＭの読み出し用のコマンド発生は、ｔ０からｔ２までの期間となるが、バンク０はｔ２のタイミングより前のタイミングでアイドル状態となり、リフレッシュ用のコマンドをｔ１のタイミングから発行可能となる。
リフレッシュ動作用のコマンド発行は、ｔ１からｔ４までの期間となるが、読み出し動作と同じく、ｔ４のタイミングより前にバンク０はアイドル状態になるため、リフレッシュ動作に続いてｔ３のタイミングで読み出し動作を再開することができる。つまり、ＳＤＲＡＭに対して読み出し動作用のコマンド発行期間とリフレッシュ動作用のコマンド発行期間の一部を重ねることにより、コマンド発行に必要な時間を短くすることが可能となる。結果として、リフレッシュ動作によるＳＤＲＡＭへアクセスできない時間を１３サイクルに短縮可能となる。
なお、本実施の形態ではＳＤＲＡＭへの読み出し動作の間にリフレッシュ動作を行う場合の動作を説明したが、同様な制御方法で書き込み動作の間にＳＤＲＡＭへのリフレッシュ動作を行うこともできる。書き込み動作と書き込み動作に間にリフレッシュを行なう場合でも、アートリフレッシュコマンドを用いた場合と比較して、リフレッシュ動作によるＳＤＲＡＭへアクセスできない時間を短縮することは可能である。
【００４１】
一般にＳＤＲＡＭは、ライトリカバリータイムのため、バンクに対する書き込み動作後にバンクがアイドル状態になるまでに要する時間は、同じデータ量の読み出し動作後にバンクがアイドル状態になるまでに要する時間より長くなる。従って、リフレッシュスケジュール回路１０４からリフレッシュ要求がある状態であっても、リフレッシュ制御回路１０５においてＳＤＲＡＭ１０７への読み出し動作後に続いてのみリフレッシュを行うことにより、リフレッシュ動作によるＳＤＲＡＭへアクセスできない時間を最短にすることができる。
【００４２】
なお、本実施の形態では、ＳＤＲＡＭの一例としてＦＣＲＡＭを用いているが、ＪＥＤＥＣにて規格化されている通常のＳＤＲＡＭを用いても実現することは可能である。また、ＳＤＲＡＭに対する書き込みまたは読み出しの単位を２５６バイトとしているが、２５６バイト以外の単位でも構わない。
【産業上の利用可能性】
【００４３】
本発明は、複数のバンクを有するメモリに対する画像データ等の書き込み及び読み出し等を行うメモリ制御回路において、メモリ制御を効率的に行うメモリ制御回路として有用である。
【符号の説明】
【００４４】
１０１  マスター
１０２  データ制御回路
１０３  ＳＤＲＡＭアクセス制御回路
１０４  リフレッシュスケジュール回路
１０５  リフッレッシュ制御回路
１０６  ＳＤＲＡＭコマンド発生回路
１０７  ＳＤＲＡＭ
【図１】
2011159341.tif 000003
【図２】
2011159341.tif 000004
【図３】
2011159341.tif 000005
【図４】
2011159341.tif 000006
【図５】
2011159341.tif 000007
【図６】
2011159341.tif 000008
【図７】
2011159341.tif 000009