JP2006099895A - メモリ処理装置 - Google Patents
メモリ処理装置 Download PDFInfo
- Publication number
- JP2006099895A JP2006099895A JP2004286858A JP2004286858A JP2006099895A JP 2006099895 A JP2006099895 A JP 2006099895A JP 2004286858 A JP2004286858 A JP 2004286858A JP 2004286858 A JP2004286858 A JP 2004286858A JP 2006099895 A JP2006099895 A JP 2006099895A
- Authority
- JP
- Japan
- Prior art keywords
- data transfer
- request
- memory
- refresh
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Dram (AREA)
Abstract
【課題】 リフレッシュ操作の必要なメモリ処理装置において、データ転送レートを低下させることなく効率的にリフレッシュ操作を行う。
【解決手段】 CPU1、データ取り込みコントローラ2、データ表示コントローラ3、信号処理プロセッサ4はメモリコントローラ5に対してアクセスすべきメモリのアドレス情報を転送すべきデータに先立って送信する。メモリコントローラ4は、アドレス情報とリフレッシュ要求をともにアクセスキューにキューイングする。アービターはアドレス情報とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的にキューイングさせ、アドレス情報のみが発生した場合、すでにキューイングされているリフレッシュ要求を追い越すようにアドレス情報をキューイングする。
【選択図】 図1
【解決手段】 CPU1、データ取り込みコントローラ2、データ表示コントローラ3、信号処理プロセッサ4はメモリコントローラ5に対してアクセスすべきメモリのアドレス情報を転送すべきデータに先立って送信する。メモリコントローラ4は、アドレス情報とリフレッシュ要求をともにアクセスキューにキューイングする。アービターはアドレス情報とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的にキューイングさせ、アドレス情報のみが発生した場合、すでにキューイングされているリフレッシュ要求を追い越すようにアドレス情報をキューイングする。
【選択図】 図1
Description
本発明はリフレッシュ操作を必要とするDRAMなどのメモリを制御するメモリ処理装置に関する。
近年、処理データの増大や処理アルゴリズムの複雑化に伴って、安価な装置でありながら、メモリ・インテンシブなデータ処理を必要とするデータ処理装置が増えてきている。例えば、ディジタルスチルカメラでは、CCDから取り込んだ画像データに対し、リアルタイムの信号処理を施しつつ、表示やデータ圧縮を行う必要がある。この場合、CCDから取り込んだローデータ(信号処理前生データ)は一旦メモリに格納され、これをメモリから順次読み出しながら信号処理を施し、信号処理を施したデータはまたメモリに格納される。一方表示部は、信号処理後の画像データをメモリから読み出しながら表示を行う。データ圧縮部においても、信号処理後のデータをメモリから読み出し、これを圧縮、エンコードした後のデータを再びメモリに書き戻す。特に、表示部はメモリからのデータの読み出しが滞ると画像が乱れるなどの問題が発生するため、リアルタイム性が要求される。また、CCDから取り込んだローデータのメモリへの書き込みに関しても、特に連写時には滞りないメモリアクセスが必要とされる。
このようにメモリに対して大量のデータ転送が発生するが低価格で提供する必要のあるデータ処理装置においては、従来、高速ページモードあるいはEDOモード付のDRAMや、シンクロナスDRAMメモリデバイスがよく用いられている。理由としては、高速アクセスの可能なSRAMはビット単価が高いため、画像のようなデータ量の多いデータを扱う場合はシステム全体の価格が増大してしまう点、および、多くの画像処理は、メモリアクセスのアドレス変化がシーケンシャルであるため、連続的なアドレスに対するデータ転送は上記のようなDRAMを用いても比較的パフォーマンスをあげやすいという点が挙げられる。しかしながら、上記のDRAMデバイスは周期的なリフレッシュ操作が要求され、単位時間当たりのリフレッシュ操作の回数はDRAMの仕様として決定されている。
そのため従来技術(例えば〔特許文献1〕参照)においては、周期的なリフレッシュ要求を最優先のメモリアクセス要求として処理する方式が取られてきた。
特開平10-11964号公報
しかしながら、従来技術によれば、リアルタイムデータ処理を行うためのメモリに対するデータ転送要求が非常に高い頻度で発生している最中に、リフレッシュ要求が発生するとデータ転送よりも優先的にリフレッシュ要求を処理するため、リアルタイムデータ処理が滞る場合が生じるという問題点があった。
そこで、特開平10−11964に示されるような、リフレッシュ要求を蓄積し、蓄積された要求の個数により優先度を決定し、優先度に応じてメモリアクセスの動作モードの切り替わり時にリフレッシュ操作を行う構成が考案された。しかしながら、このような構成を用いると、データ転送要求の蓄積手段と別の蓄積手段を設ける必要があり、回路規模が増大する。また、メモリアクセスの動作モードの検出機構や、リフレッシュ要求の蓄積個数に応じた優先度の設定機構はさらに回路規模を増大させる。そのため、安価な装置に適用するのは困難であるという問題点があった。
本発明は上記従来例に鑑みてなされたもので、メモリアクセスにおけるデータ転送効率を損なうことなくリフレッシュ操作を行うことができ、かつ回路規模の小さい安価なメモリ処理装置を提供することを目的とする。
以上の目的を達成するために、本発明によるメモリ処理装置においては、データ転送要求とリフレッシュ要求とを蓄積するメモリアクセス情報蓄積手段と、データ転送要求とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的に前記メモリアクセス情報蓄積手段の最後尾に格納し、データ転送要求のみが発生した場合、すでに格納されているリフレッシュ要求を追い越すように前記メモリアクセス情報蓄積手段に格納し、リフレッシュ要求のみが発生した場合、前記メモリアクセス情報蓄積手段の最後尾に格納するように制御する調停手段とを備える。
以上に述べたように本発明のメモリ制御装置によれば、データ転送に必要なメモリアクセスを妨げることなく、必須のリフレッシュ操作を行うことが、非常に簡易で安価な回路を使用して実現することができる。
(実施形態1)
次に、本発明に係る一実施例を図面を用いて詳細に説明する。図1は本発明の1例であるメモリ制御装置を用いたデジタルカメラの電気的な構成を示すブロック図である。
次に、本発明に係る一実施例を図面を用いて詳細に説明する。図1は本発明の1例であるメモリ制御装置を用いたデジタルカメラの電気的な構成を示すブロック図である。
メモリアクセスを行う主要なブロックは、全体制御に関わるCPU1、画像取り込みに関わる画像取り込みコントローラ2、画像表示に関わる表示コントローラ3、画像処理に関わる信号処理プロセッサ4の4ブロックであり、これらのブロックはシステムバス上でバスマスターとなり、画像メモリ制御のメモリコントローラ5にアクセスすることによりSDRAM6との間でデータ転送を行う。
システムバス上のバストランザクションはデータ転送を行うための転送開始アドレス送出(アドレス・フェーズ)と転送すべきデータ送出(データ・フェーズ)の2つのフェーズからなる。各バスマスターは、データフェーズを終了するよりも前に複数のアドレスフェーズを発行することが可能である。
メモリコントローラ5は、バスインターフェース回路5aにおいてバストランザクションを受信し、アドレス・フェーズにおいてアドレス情報をメモリアクセスキュー5cに書き込む。SDRAMインターフェース回路5dはメモリアクセスキュー5cの先頭に格納されたアドレス情報に対応するSDRAMへのアドレス信号、制御信号を出力する。
リフレッシュカウンタ5eは、周期的にリフレッシュ要求を生成するためのタイマーカウンターであり、使用するSDRAMの要求仕様に応じて、リフレッシュ要求の生成頻度をプログラムすることが可能である。例えば、64msに4096回のリフレッシュ操作を必要とするSDRAMを使用する場合、約15.6usに一度の周期でリフレッシュ要求を生成する。リフレッシュ要求は、データ転送要求のアドレス情報と同様にメモリアクセスキュー5cに書き込まれる。
調停回路5bは、バスインターフェース回路5aからのデータ転送要求(アドレス情報)とリフレッシュカウンタ5eからのリフレッシュ要求を調停して、メモリアクセスキュー5cへの格納順序と格納位置を制御する。
次に図2のタイミング図を用いて調停回路5bの調停方式およびメモリアクセスキュー5cへの格納順序・格納位置の制御方式を説明する。
タイミング図には5本の信号を示している。全てハイアクティブの信号であり、上から順にリフレッシュ要求信号、データ転送要求信号、リフレッシュ終了信号、データ転送終了信号、キューFULL信号である。信号線の下にメモリアクセスキュー5cの状態を示す。本実施例ではキューの深さは4段である。
まずデータ転送要求D0が受け付けられ、キューの最前列に格納される。次にデータ転送要求D1が受け付けられ、キューの2段目に格納される。続いてデータ転送要求D3が受け付けられると同時にD0に対応するデータ転送が終了するので、D1が最前列にシフトされD2は2段目に格納される。
次にリフレッシュ要求R0とデータ転送要求D3が同時にアサートされる。調停回路5bは常にリフレッシュ要求を優先するため、まずキューの3段目にR0を格納する。続いて、データ転送要求D3を格納するが、新たに格納するデータ転送要求はすでに格納されているリフレッシュ要求がある場合、必ずリフレッシュ要求を追い越すように格納される。従ってすでに格納されているリフレッシュ要求R0は4段目(最後尾)に逆シフトされ、3段目にデータ転送要求D3が格納される。図2においては、追い越しを起こしたデータ転送要求をハッチングで示している。この時点でキューが一杯になったためキューFULL信号がアサートされる。
しばらくしてデータ転送要求D4がアサートされるが、キューFULL信号がアサートされているため受付をペンディングされている。さらにリフレッシュ要求R1がアサートされるが、これもキューFULLのためペンディングされる。キューの最前列のデータ転送D1が終了するとキューFULL信号がデアサートされ、キューに空きが発生する。このときデータ転送要求D4よりも優先度の高いリフレッシュ要求R1が受け付けられ、キューの最後尾に格納され、直ちにキューFULL信号がアサートされる。続いてデータ転送D2が終了し、キューに空きができるとデータ転送要求D4が受け付けられ、すでに格納されているリフレッシュ要求R0,R1を追い越してキューの第2段目に格納される。
図2の下段に続きの動作を示す。しばらくデータ転送要求はなく、すでに格納されているD3のデータ転送が終了し、引き続きD4のデータ転送が終了する。このとき同時にリフレッシュ要求R2が受け付けられ、キューの第3列までがリフレッシュ要求で埋まっている。
新たなデータ転送要求がないためまずリフレッシュR0が終了し、続いてR1が終了する。すなわち、データ転送要求の密度が疎になると、自動的に集中リフレッシュの操作が実行されることになる。
リフレッシュ要求R2が終了する前に、新たなデータ転送要求D5が受け付けられたため、すでに格納されているリフレッシュ要求R2を追い越して、キューの最前列に格納され、直ちにデータ転送が行われる。すなわち、ペンディングのリフレッシュ要求が合った場合でも、データ転送要求が発生した場合、直ちにデータ転送が行われ、データ転送要求が途切れたところでリフレッシュ操作が実行される。
データ転送要求が非常に密な状態が長い時間継続した場合には、周期的に発生するリフレッシュ要求の方がデータ転送要求よりも高い優先度でキューに格納されるため、いずれ4段のキューがすべてリフレッシュ要求により占有される。この状態では、新たなデータ転送要求は受け付けられないため最低1回のリフレッシュ操作が行われる。データ転送要求が密なので、直ちに1つのデータ転送要求が受け付けられ、最前列に格納され、直ちにデータ転送が行われる。したがって、ある程度の長い単位時間当たりで考えると、データ転送要求の密度に関わらずリフレッシュ操作の行われる頻度はほぼ一定に保たれ、メモリの仕様を満たす。
調停回路5bの調停方式およびメモリアクセスキュー5cへの格納順序・格納位置の制御方式をまとめると以下の2点である。
データ転送要求とリフレッシュ要求が同時に発生した場合、キューに空きがあればリフレッシュ要求を格納する。
データ転送要求とリフレッシュ要求が同時に発生した場合、キューに空きがあればリフレッシュ要求を格納する。
データ転送要求のみが発生し、キューに空きがある場合、すでに格納されたリフレッシュ要求を追い越してキューに格納する。(すでに格納されているデータ転送要求は追い越さない)。
このような制御方式を実現する回路は非常に簡易な回路構成であり、かつリフレッシュ要求がデータ転送を妨げることなく必要なリフレッシュレートを確保できる。
1 CPU
2 画像取り込みコントローラ
3 表示コントローラ
4 信号処理プロセッサ
5 メモリコントローラ
5a バスインターフェース回路
5b 調停回路
5c アクセスキュー
5d SDRAMインターフェース回路
5e リフレッシュカウンター
6 SDRAM
2 画像取り込みコントローラ
3 表示コントローラ
4 信号処理プロセッサ
5 メモリコントローラ
5a バスインターフェース回路
5b 調停回路
5c アクセスキュー
5d SDRAMインターフェース回路
5e リフレッシュカウンター
6 SDRAM
Claims (1)
- リフレッシュ操作を必要とするメモリを制御するメモリ制御装置において、
データ転送要求とリフレッシュ要求とを蓄積するメモリアクセス情報蓄積手段と、
データ転送要求とリフレッシュ要求が同時に発生した場合、リフレッシュ要求を優先的に前記メモリアクセス情報蓄積手段の最後尾に格納し、
データ転送要求のみが発生した場合、すでに格納されているリフレッシュ要求を追い越すように前記メモリアクセス情報蓄積手段に格納し、
リフレッシュ要求のみが発生した場合、前記メモリアクセス情報蓄積手段の最後尾に格納するように制御する調停手段とを備えることを特徴とするメモリ制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004286858A JP2006099895A (ja) | 2004-09-30 | 2004-09-30 | メモリ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004286858A JP2006099895A (ja) | 2004-09-30 | 2004-09-30 | メモリ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006099895A true JP2006099895A (ja) | 2006-04-13 |
Family
ID=36239525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004286858A Withdrawn JP2006099895A (ja) | 2004-09-30 | 2004-09-30 | メモリ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006099895A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008010397A1 (fr) * | 2006-07-21 | 2008-01-24 | Canon Kabushiki Kaisha | Contrôleur de mémoire |
-
2004
- 2004-09-30 JP JP2004286858A patent/JP2006099895A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008010397A1 (fr) * | 2006-07-21 | 2008-01-24 | Canon Kabushiki Kaisha | Contrôleur de mémoire |
JP2008027247A (ja) * | 2006-07-21 | 2008-02-07 | Canon Inc | メモリコントローラ |
US8019951B2 (en) | 2006-07-21 | 2011-09-13 | Canon Kabushiki Kaisha | Memory controller including multiple system bus interfaces |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7281110B1 (en) | Random access memory controller with out of order execution | |
JP4742116B2 (ja) | アウトオブオーダdramシーケンサ | |
JP2006318178A (ja) | データ転送調停装置およびデータ転送調停方法 | |
US10338816B2 (en) | Reducing negative effects of insufficient data throughput for real-time processing | |
US12111778B2 (en) | Image processing accelerator | |
CN112948293A (zh) | 一种多用户接口的ddr仲裁器及ddr控制器芯片 | |
JP3444154B2 (ja) | メモリアクセス制御回路 | |
JP5721970B2 (ja) | リアルタイムストリーミングを行う装置及びバス制御方法 | |
US9620215B2 (en) | Efficiently accessing shared memory by scheduling multiple access requests transferable in bank interleave mode and continuous mode | |
JP2010146084A (ja) | キャッシュメモリ制御部を備えるデータ処理装置 | |
US6738840B1 (en) | Arrangement with a plurality of processors having an interface for a collective memory | |
JP2005267148A (ja) | メモリ制御装置 | |
JP2006099895A (ja) | メモリ処理装置 | |
JP5360594B2 (ja) | Dma転送装置及び方法 | |
JP5623150B2 (ja) | 電子機器及びその制御方法 | |
US7899957B1 (en) | Memory controller having a buffer for providing beginning and end data | |
US7159084B1 (en) | Memory controller | |
US20140009478A1 (en) | Image processing apparatus and control method | |
JP6180397B2 (ja) | メモリーアクセス装置、メモリーアクセス制御方法 | |
JP4640434B2 (ja) | デジタルカメラ | |
JP2008041142A (ja) | メモリアクセス方法 | |
JP6205980B2 (ja) | 画像転送装置及び画像転送方法 | |
JP2009003632A (ja) | 画像処理システム | |
JP6124615B2 (ja) | メモリ制御装置、メモリ制御方法およびメモリ制御装置を有する撮像装置 | |
CN118784893A (zh) | 一种基于fpga的多图层视频数据融合方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071204 |