(57)【要約】【課題】  リフレッシュ操作の必要なメモリ処理装置において、データ転送レートを低下させることなく効率的にリフレッシュ操作を行う。【解決手段】  ＣＰＵ１、データ取り込みコントローラ２、データ表示コントローラ３、信号処理プロセッサ４はメモリコントローラ５に対してアクセスすべきメモリのアドレス情報を転送すべきデータに先立って送信する。メモリコントローラ４は、アドレス情報とリフレッシュ要求をともにアクセスキューにキューイングする。アービターはアドレス情報とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的にキューイングさせ、アドレス情報のみが発生した場合、すでにキューイングされているリフレッシュ要求を追い越すようにアドレス情報をキューイングする。【選択図】  図１
2006099895.tif 000002
【特許請求の範囲】
【請求項１】
リフレッシュ操作を必要とするメモリを制御するメモリ制御装置において、
データ転送要求とリフレッシュ要求とを蓄積するメモリアクセス情報蓄積手段と、
データ転送要求とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的に前記メモリアクセス情報蓄積手段の最後尾に格納し、
データ転送要求のみが発生した場合、すでに格納されているリフレッシュ要求を追い越すように前記メモリアクセス情報蓄積手段に格納し、
リフレッシュ要求のみが発生した場合、前記メモリアクセス情報蓄積手段の最後尾に格納するように制御する調停手段とを備えることを特徴とするメモリ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はリフレッシュ操作を必要とするDRAMなどのメモリを制御するメモリ処理装置に関する。
【背景技術】
【０００２】
近年、処理データの増大や処理アルゴリズムの複雑化に伴って、安価な装置でありながら、メモリ・インテンシブなデータ処理を必要とするデータ処理装置が増えてきている。例えば、ディジタルスチルカメラでは、CCDから取り込んだ画像データに対し、リアルタイムの信号処理を施しつつ、表示やデータ圧縮を行う必要がある。この場合、CCDから取り込んだローデータ（信号処理前生データ）は一旦メモリに格納され、これをメモリから順次読み出しながら信号処理を施し、信号処理を施したデータはまたメモリに格納される。一方表示部は、信号処理後の画像データをメモリから読み出しながら表示を行う。データ圧縮部においても、信号処理後のデータをメモリから読み出し、これを圧縮、エンコードした後のデータを再びメモリに書き戻す。特に、表示部はメモリからのデータの読み出しが滞ると画像が乱れるなどの問題が発生するため、リアルタイム性が要求される。また、CCDから取り込んだローデータのメモリへの書き込みに関しても、特に連写時には滞りないメモリアクセスが必要とされる。
【０００３】
このようにメモリに対して大量のデータ転送が発生するが低価格で提供する必要のあるデータ処理装置においては、従来、高速ページモードあるいはEDOモード付のDRAMや、シンクロナスDRAMメモリデバイスがよく用いられている。理由としては、高速アクセスの可能なSRAMはビット単価が高いため、画像のようなデータ量の多いデータを扱う場合はシステム全体の価格が増大してしまう点、および、多くの画像処理は、メモリアクセスのアドレス変化がシーケンシャルであるため、連続的なアドレスに対するデータ転送は上記のようなDRAMを用いても比較的パフォーマンスをあげやすいという点が挙げられる。しかしながら、上記のDRAMデバイスは周期的なリフレッシュ操作が要求され、単位時間当たりのリフレッシュ操作の回数はDRAMの仕様として決定されている。
【０００４】
そのため従来技術（例えば〔特許文献１〕参照）においては、周期的なリフレッシュ要求を最優先のメモリアクセス要求として処理する方式が取られてきた。
【特許文献１】特開平１０-１１９６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術によれば、リアルタイムデータ処理を行うためのメモリに対するデータ転送要求が非常に高い頻度で発生している最中に、リフレッシュ要求が発生するとデータ転送よりも優先的にリフレッシュ要求を処理するため、リアルタイムデータ処理が滞る場合が生じるという問題点があった。
【０００６】
そこで、特開平10−11964に示されるような、リフレッシュ要求を蓄積し、蓄積された要求の個数により優先度を決定し、優先度に応じてメモリアクセスの動作モードの切り替わり時にリフレッシュ操作を行う構成が考案された。しかしながら、このような構成を用いると、データ転送要求の蓄積手段と別の蓄積手段を設ける必要があり、回路規模が増大する。また、メモリアクセスの動作モードの検出機構や、リフレッシュ要求の蓄積個数に応じた優先度の設定機構はさらに回路規模を増大させる。そのため、安価な装置に適用するのは困難であるという問題点があった。
【０００７】
本発明は上記従来例に鑑みてなされたもので、メモリアクセスにおけるデータ転送効率を損なうことなくリフレッシュ操作を行うことができ、かつ回路規模の小さい安価なメモリ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
以上の目的を達成するために、本発明によるメモリ処理装置においては、データ転送要求とリフレッシュ要求とを蓄積するメモリアクセス情報蓄積手段と、データ転送要求とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的に前記メモリアクセス情報蓄積手段の最後尾に格納し、データ転送要求のみが発生した場合、すでに格納されているリフレッシュ要求を追い越すように前記メモリアクセス情報蓄積手段に格納し、リフレッシュ要求のみが発生した場合、前記メモリアクセス情報蓄積手段の最後尾に格納するように制御する調停手段とを備える。
【発明の効果】
【０００９】
以上に述べたように本発明のメモリ制御装置によれば、データ転送に必要なメモリアクセスを妨げることなく、必須のリフレッシュ操作を行うことが、非常に簡易で安価な回路を使用して実現することができる。
【発明を実施するための最良の形態】
【００１０】
（実施形態１）
次に、本発明に係る一実施例を図面を用いて詳細に説明する。図１は本発明の1例であるメモリ制御装置を用いたデジタルカメラの電気的な構成を示すブロック図である。
【００１１】
メモリアクセスを行う主要なブロックは、全体制御に関わるCPU１、画像取り込みに関わる画像取り込みコントローラ２、画像表示に関わる表示コントローラ３、画像処理に関わる信号処理プロセッサ４の4ブロックであり、これらのブロックはシステムバス上でバスマスターとなり、画像メモリ制御のメモリコントローラ５にアクセスすることによりSDRAM６との間でデータ転送を行う。
【００１２】
システムバス上のバストランザクションはデータ転送を行うための転送開始アドレス送出(アドレス・フェーズ)と転送すべきデータ送出(データ・フェーズ)の２つのフェーズからなる。各バスマスターは、データフェーズを終了するよりも前に複数のアドレスフェーズを発行することが可能である。
【００１３】
メモリコントローラ5は、バスインターフェース回路5aにおいてバストランザクションを受信し、アドレス・フェーズにおいてアドレス情報をメモリアクセスキュー5cに書き込む。SDRAMインターフェース回路5dはメモリアクセスキュー5cの先頭に格納されたアドレス情報に対応するSDRAMへのアドレス信号、制御信号を出力する。
【００１４】
リフレッシュカウンタ5eは、周期的にリフレッシュ要求を生成するためのタイマーカウンターであり、使用するSDRAMの要求仕様に応じて、リフレッシュ要求の生成頻度をプログラムすることが可能である。例えば、６４ｍｓに4096回のリフレッシュ操作を必要とするSDRAMを使用する場合、約15.6usに一度の周期でリフレッシュ要求を生成する。リフレッシュ要求は、データ転送要求のアドレス情報と同様にメモリアクセスキュー5cに書き込まれる。
【００１５】
調停回路5bは、バスインターフェース回路5aからのデータ転送要求（アドレス情報）とリフレッシュカウンタ5eからのリフレッシュ要求を調停して、メモリアクセスキュー5cへの格納順序と格納位置を制御する。
【００１６】
次に図２のタイミング図を用いて調停回路5bの調停方式およびメモリアクセスキュー５ｃへの格納順序・格納位置の制御方式を説明する。
【００１７】
タイミング図には5本の信号を示している。全てハイアクティブの信号であり、上から順にリフレッシュ要求信号、データ転送要求信号、リフレッシュ終了信号、データ転送終了信号、キューFULL信号である。信号線の下にメモリアクセスキュー５ｃの状態を示す。本実施例ではキューの深さは4段である。
【００１８】
まずデータ転送要求D0が受け付けられ、キューの最前列に格納される。次にデータ転送要求D1が受け付けられ、キューの2段目に格納される。続いてデータ転送要求D3が受け付けられると同時にD0に対応するデータ転送が終了するので、D1が最前列にシフトされD2は2段目に格納される。
【００１９】
次にリフレッシュ要求R0とデータ転送要求D3が同時にアサートされる。調停回路５ｂは常にリフレッシュ要求を優先するため、まずキューの3段目にR0を格納する。続いて、データ転送要求D3を格納するが、新たに格納するデータ転送要求はすでに格納されているリフレッシュ要求がある場合、必ずリフレッシュ要求を追い越すように格納される。従ってすでに格納されているリフレッシュ要求R0は4段目（最後尾）に逆シフトされ、3段目にデータ転送要求D3が格納される。図2においては、追い越しを起こしたデータ転送要求をハッチングで示している。この時点でキューが一杯になったためキューFULL信号がアサートされる。
【００２０】
しばらくしてデータ転送要求D4がアサートされるが、キューFULL信号がアサートされているため受付をペンディングされている。さらにリフレッシュ要求R1がアサートされるが、これもキューFULLのためペンディングされる。キューの最前列のデータ転送D1が終了するとキューFULL信号がデアサートされ、キューに空きが発生する。このときデータ転送要求D4よりも優先度の高いリフレッシュ要求R1が受け付けられ、キューの最後尾に格納され、直ちにキューFULL信号がアサートされる。続いてデータ転送D2が終了し、キューに空きができるとデータ転送要求D4が受け付けられ、すでに格納されているリフレッシュ要求R0,R1を追い越してキューの第2段目に格納される。
【００２１】
図２の下段に続きの動作を示す。しばらくデータ転送要求はなく、すでに格納されているD3のデータ転送が終了し、引き続きD4のデータ転送が終了する。このとき同時にリフレッシュ要求R2が受け付けられ、キューの第3列までがリフレッシュ要求で埋まっている。
【００２２】
新たなデータ転送要求がないためまずリフレッシュR0が終了し、続いてR1が終了する。すなわち、データ転送要求の密度が疎になると、自動的に集中リフレッシュの操作が実行されることになる。
【００２３】
リフレッシュ要求R2が終了する前に、新たなデータ転送要求D5が受け付けられたため、すでに格納されているリフレッシュ要求R2を追い越して、キューの最前列に格納され、直ちにデータ転送が行われる。すなわち、ペンディングのリフレッシュ要求が合った場合でも、データ転送要求が発生した場合、直ちにデータ転送が行われ、データ転送要求が途切れたところでリフレッシュ操作が実行される。
【００２４】
データ転送要求が非常に密な状態が長い時間継続した場合には、周期的に発生するリフレッシュ要求の方がデータ転送要求よりも高い優先度でキューに格納されるため、いずれ4段のキューがすべてリフレッシュ要求により占有される。この状態では、新たなデータ転送要求は受け付けられないため最低1回のリフレッシュ操作が行われる。データ転送要求が密なので、直ちに1つのデータ転送要求が受け付けられ、最前列に格納され、直ちにデータ転送が行われる。したがって、ある程度の長い単位時間当たりで考えると、データ転送要求の密度に関わらずリフレッシュ操作の行われる頻度はほぼ一定に保たれ、メモリの仕様を満たす。
【００２５】
調停回路５ｂの調停方式およびメモリアクセスキュー５ｃへの格納順序・格納位置の制御方式をまとめると以下の2点である。
データ転送要求とリフレッシュ要求が同時に発生した場合、キューに空きがあればリフレッシュ要求を格納する。
【００２６】
データ転送要求のみが発生し、キューに空きがある場合、すでに格納されたリフレッシュ要求を追い越してキューに格納する。（すでに格納されているデータ転送要求は追い越さない）。
【００２７】
このような制御方式を実現する回路は非常に簡易な回路構成であり、かつリフレッシュ要求がデータ転送を妨げることなく必要なリフレッシュレートを確保できる。
【図面の簡単な説明】
【００２８】
【図１】本発明の一実施例のデジタルカメラの電気的な構成を示すブロック図。
【図２】調停回路5bの調停方式を示すタイミング図。
【符号の説明】
【００２９】
１  ＣＰＵ
２  画像取り込みコントローラ
３  表示コントローラ
４  信号処理プロセッサ
５  メモリコントローラ
５ａ  バスインターフェース回路
５ｂ  調停回路
５ｃ  アクセスキュー
５ｄ  ＳＤＲＡＭインターフェース回路
５ｅ  リフレッシュカウンター
６  ＳＤＲＡＭ
【図１】
2006099895.tif 000003
【図２】
2006099895.tif 000004