JP2008041142A - メモリアクセス方法 - Google Patents
メモリアクセス方法 Download PDFInfo
- Publication number
- JP2008041142A JP2008041142A JP2006211667A JP2006211667A JP2008041142A JP 2008041142 A JP2008041142 A JP 2008041142A JP 2006211667 A JP2006211667 A JP 2006211667A JP 2006211667 A JP2006211667 A JP 2006211667A JP 2008041142 A JP2008041142 A JP 2008041142A
- Authority
- JP
- Japan
- Prior art keywords
- bank
- data
- clock
- read
- access method
- 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.)
- Pending
Links
Images
Landscapes
- Dram (AREA)
Abstract
【課題】高価な高速メモリを使用することなくランダムアクセス性能を向上させることができるメモリアクセス方法を提供する。
【解決手段】シンクロナスDRAMのメモリアクセス方法において、同一のデータをシンクロナスDRAMの複数のバンクにそれぞれ書き込み、複数のバンクに対して所定の順序で順次アクティブコマンドを発行し、次に複数のバンクに対して所定の順序で順次リードコマンドを発行する。
【選択図】図3
【解決手段】シンクロナスDRAMのメモリアクセス方法において、同一のデータをシンクロナスDRAMの複数のバンクにそれぞれ書き込み、複数のバンクに対して所定の順序で順次アクティブコマンドを発行し、次に複数のバンクに対して所定の順序で順次リードコマンドを発行する。
【選択図】図3
Description
この発明はメモリアクセス方法に関する。
画像データのリアルタイム処理を行う画像処理装置には、フレームメモリに対して高いリードランダムアクセス性能が要求される。特に、フレームメモリの内容をテーブル参照(例えば魚眼レンズを用いて撮影した画像データをCPU等で射影変換するときの像のゆがみを修正するためのテーブルを参照)するようなアルゴリズムを用いる場合には高いリードランダムアクセス性能が求められる。この要求を満たすためには、高価ではあるが効率のよいいわゆる高速メモリ(スタティックメモリ(SRAM(Static Random Access Memory))等)を使用する必要があった。また、並列接続した複数個の高速メモリに同時にアクセスし、その並列データを直列データに変換する等の処理により、見かけ上のサイクル時間をより短くする必要があった。
一方、高速メモリより安価なSDRAM(Synchronous DRAM)をフレームメモリとして使用することもできる。
「SDRAMの使い方 ユーザーズマニュアル」Documennt No.J0123N60(Ver.6.0) 発行年月:2005年2月
「SDRAMの使い方 ユーザーズマニュアル」Documennt No.J0123N60(Ver.6.0) 発行年月:2005年2月
しかし、SDRAMのリードランダムアクセス性能は高速メモリに比較して著しく劣る。例えば、1回のリードアクセスに5〜6クロック必要であるとともに、連続的なランダムアクセスに8〜9クロック必要であり、高速の動画画像処理には向かない。
この発明はこのような事情に鑑みてなされたもので、その課題は高価な高速メモリを使用することなくランダムアクセス性能を向上させることができるメモリアクセス方法を提供することである。
上記課題を解決するため請求項1記載の発明は、シンクロナスDRAMのメモリアクセス方法において、同一のデータを前記シンクロナスDRAMの複数のバンクにそれぞれ書き込み、前記複数のバンクに対して所定の順序で順次アクティブコマンドを発行し、次に前記複数のバンクに対して所定の順序で順次リードコマンドを発行することを特徴とする。
この発明によれば、高価な高速メモリを使用することなくランダムアクセス性能を向上させることができる。
以下、この発明の実施の形態を図面に基づいて説明する。
図1はこの発明の一実施形態に係るメモリアクセス方法の使用が用いられた画像処理装置を説明するためのブロック図である。
画像処理装置10はメモリコントローラ11とフレームメモリとしてのSDRAM(シンクロナスDRAM)12とを備えている。
メモリコントローラ11はバス13を介してSDRAM12との間でデータ・コマンドの転送を行う。また、メモリコントローラ11はSDRAM12へクロック信号を転送する。
メモリコントローラ11はクロックの立ち上がりのタイミングに同期してコマンドを発行し、データを読み出す。
画像処理装置10ではカメラ20で取得された画像データがデジタル化し、デジタル化された画像データがメモリコントローラ11によってSDRAM12に記憶されるとともに、マイコン等(図示せず)で各種の画像処理が行われる。その後、デジタル化された画像データは画像表示又は画像処理回路(図示せず)等に出力される。
図2はこの発明の一実施形態のメモリアクセス方法の比較例に係るメモリアクセス方法のリードサイクルを説明するタイミング・チャート、図3はこの発明の一実施形態に係るメモリアクセス方法のリードサイクルを説明するタイミング・チャートである。
図2はSDRAMに対する2回分のリードランダムアクセスについて説明するための図である。
コマンド発行のタイミングは次のとおりである(図2参照)。
まず、クロック1の立ち上がりに同期してバンク1に対する1回目のアクティブコマンド(使用するバンク番号(バンク1)と行(Row)アドレスとを指定する情報)を発行し、バンク1を活性化する。なお、各バンクには1フレーム分の画像データが記憶されている。
次に、クロック2分はSDRAM12の仕様上決められたtRCD時間(Row to Col Delay、行(Row)アドレス指定から列(Col)アドレス指定までの待ち時間)を満足するだけウエイト状態とする。SDRAM仕様上アクティブコマンドに連続してリードコマンドを発行できないからである。
その後、クロック3の立ち上がりに同期してバンク1に対するリードコマンドを発行(使用するバンク番号(バンク1)と列(Col)アドレスとを指定する情報)する。
次に、クロック4分はSDRAM12の仕様上決められたCL時間(CASレーテンシ、列(Col)アドレスを指定してから有効データが出力されるまでの時間)を満足するだけウエイト状態とする。
その後、クロック5の立ち上がりに同期してデータ1(1ワード)をリードする。
次に、クロック6分はSDRAM仕様のtRC時間(Row Cycle、アクティブコマンドから次のアクティブコマンドまでの時間)を満足するだけウエイト状態とする。
その後、クロック7の立ち上がりに同期してバンク1に対する2回目のアクティブコマンドを発行し、バンク1を活性化する。
以下クロック信号にしたがってクロック2〜クロック6と同様の動作を繰り返す。
上述のようにメモリコントローラ11からSDRAM12に一連のコマンドを発行した後、1ワードのデータを読み出す(6クロックで1ワードを読み出す。)ので、この比較例のメモリアクセス方法ではランダムアクセスの効率が悪い。
ところで、SDRAM12は通常マルチバンク(通常4バンク)構成であり、バンク毎にコマンドを発行することができる。
そこで、この実施形態では読み出したいデータが毎回異なるバンクのデータであれば空き時間(同じバンクへのリードコマンドの発行から2回目のバンク1に対するアクティブコマンドの発行までの時間)を利用してコマンド発行の順番を以下のようにスケジューリングした。
あらかじめ複数のバンクに同一フレームの画像データ(例えば1フレーム分の画像データ)を書き込んでおき、毎回バンクを切り換えて異なるバンクからデータを読み出すことができるようにした。
コマンド発行のタイミングは次のとおりである(図3参照)。
まず、クロック1の立ち上がりに同期してバンク1に対するアクティブコマンド(使用するバンク番号(バンク1)と行アドレスとを指定する情報)を発行し、バンク1を活性化する。
次に、クロック2の立ち上がりに同期してバンク2に対するアクティブコマンド(使用するバンク番号(バンク2)と行アドレスとを指定する情報)を発行し、バンク2を活性化する。
その後、クロック3の立ち上がりに同期してバンク3に対するアクティブコマンド(使用するバンク番号(バンク3)と行アドレスとを指定する情報)を発行し、バンク3を活性化する。
次に、クロック4の立ち上がりに同期してバンク4に対するアクティブコマンド(使用するバンク番号(バンク4)と行アドレスとを指定する情報)を発行し、バンク4を活性化する。
その後、クロック5の立ち上がりに同期してバンク1に対するリードコマンド(使用するバンク番号(バンク1)と列アドレスとを指定する情報)を発行する。
次に、クロック6の立ち上がりに同期してバンク2に対するリードコマンド(使用するバンク番号(バンク2)と列アドレスとを指定する情報)を発行する。
その後、クロック7の立ち上がりに同期してバンク3に対するリードコマンド(使用するバンク番号(バンク3)と列アドレスとを指定する情報)を発行する。また、クロック7の立ち上がりに同期してデータ1をリードする。
次に、クロック8の立ち上がりに同期してバンク4に対するリードコマンド(使用するバンク番号(バンク4)と列アドレスとを指定する情報)を発行する。また、クロック8の立ち上がりに同期してデータ2をリードする。
その後、クロック9の立ち上がりに同期してバンク1に対するアクティブコマンド(使用するバンク番号(バンク1)と行アドレスとを指定)を発行する。また、クロック9の立ち上がりに同期してデータ3をリードする。
以下クロック信号にしたがってクロック2〜クロック8と同様の動作を繰り返す。
その結果、クロック1からクロック10までの期間にデータ1〜データ4のリードランダムアクセスを行うことができる。また、その期間のうちの2つのクロック期間(クロック9,10)は次のサイクルとオーバラップしているので、クロック1〜8の期間で実質的に4つのデータをリードすることになる。クロック1〜11の期間で見た場合、比較例では2つのデータしかリードできないのに対して、この実施形態では同じクロック期間で6つのデータをリードすることができ、3倍の性能向上を見込むことができる。
なお、この方法ではあらかじめ複数のバンクに同一画像データの1フレーム分のデータを書き込む処理が必要であるため、データの書き込みに比較例より多くの時間が必要になる。しかし、書き込みデータは通常連続するアドレスのデータであり、効率よくSDRAM12にバースト転送(連続したデータを転送する際、アドレスの指定等の手順を一部省略する転送方法であり、転送速度を上げることができる。)することができる。バースト転送によれば、オーバヘッド(データを書き込む処理を行うためにかかるシステムの負荷)は小さい。
この実施形態によれば、比較例と比較して3倍の性能向上を見込めるので、高価な高速メモリを使用することなくランダムアクセス性能を向上させることができる。その結果、動画画像処理等を安価に行うことができる。
また、上記実施形態ではクロック信号の立ち上がりに同期してコマンドを発行したが、クロック信号の立ち下がりに同期してコマンドを発行するようにしてもよい。
更に、上記実施形態ではシングルデータレートのSDRAMを用いて説明したが、ダブルデータレートのSDRAM(DDR SDRAM)等を用いてもよい。DDR SDRAMによれば転送レートをシングルデータレートのSDRAM12の2倍とすることができる。
12:SDRAM(シンクロナスDRAM)
Claims (1)
- シンクロナスDRAMのメモリアクセス方法において、
同一のデータを前記シンクロナスDRAMの複数のバンクにそれぞれ書き込み、前記複数のバンクに対して所定の順序で順次アクティブコマンドを発行し、次に前記複数のバンクに対して所定の順序で順次リードコマンドを発行することを特徴とするメモリアクセス方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006211667A JP2008041142A (ja) | 2006-08-03 | 2006-08-03 | メモリアクセス方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006211667A JP2008041142A (ja) | 2006-08-03 | 2006-08-03 | メモリアクセス方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008041142A true JP2008041142A (ja) | 2008-02-21 |
Family
ID=39175991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006211667A Pending JP2008041142A (ja) | 2006-08-03 | 2006-08-03 | メモリアクセス方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008041142A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015178242A1 (ja) * | 2014-05-21 | 2015-11-26 | ソニー株式会社 | センサモジュール、その制御方法、および電子機器 |
WO2016185878A1 (ja) * | 2015-05-20 | 2016-11-24 | ソニー株式会社 | メモリ制御回路およびメモリ制御方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07105081A (ja) * | 1993-10-05 | 1995-04-21 | Ricoh Co Ltd | シンクロナスdramのアクセス制御方法およびその装置 |
JP2000330864A (ja) * | 1999-05-18 | 2000-11-30 | Fujitsu Ltd | 同期式dramの制御方法 |
JP2002229850A (ja) * | 2001-01-31 | 2002-08-16 | Canon Inc | 信号処理装置 |
JP2003151268A (ja) * | 2001-08-31 | 2003-05-23 | Fujitsu Ltd | 半導体記憶装置 |
-
2006
- 2006-08-03 JP JP2006211667A patent/JP2008041142A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07105081A (ja) * | 1993-10-05 | 1995-04-21 | Ricoh Co Ltd | シンクロナスdramのアクセス制御方法およびその装置 |
JP2000330864A (ja) * | 1999-05-18 | 2000-11-30 | Fujitsu Ltd | 同期式dramの制御方法 |
JP2002229850A (ja) * | 2001-01-31 | 2002-08-16 | Canon Inc | 信号処理装置 |
JP2003151268A (ja) * | 2001-08-31 | 2003-05-23 | Fujitsu Ltd | 半導体記憶装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015178242A1 (ja) * | 2014-05-21 | 2015-11-26 | ソニー株式会社 | センサモジュール、その制御方法、および電子機器 |
CN106462499A (zh) * | 2014-05-21 | 2017-02-22 | 索尼公司 | 传感器模块、其控制方法和电子设备 |
JPWO2015178242A1 (ja) * | 2014-05-21 | 2017-04-20 | ソニー株式会社 | センサモジュール、その制御方法、および電子機器 |
US10319067B2 (en) | 2014-05-21 | 2019-06-11 | Sony Semiconductor Solutions Corporation | Sensor module, method of controlling the same, and electronic apparatus |
CN106462499B (zh) * | 2014-05-21 | 2019-06-28 | 索尼半导体解决方案公司 | 传感器模块、其控制方法和电子设备 |
WO2016185878A1 (ja) * | 2015-05-20 | 2016-11-24 | ソニー株式会社 | メモリ制御回路およびメモリ制御方法 |
US10496328B2 (en) | 2015-05-20 | 2019-12-03 | Sony Corporation | Memory control circuit and memory controlling method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6938142B2 (en) | Multi-bank memory accesses using posted writes | |
US8281101B2 (en) | Dynamic random access memory with shadow writes | |
JP2008532140A5 (ja) | ||
JP2008532140A (ja) | 複数内部データバス及びメモリバンクインターリービングを有するメモリデバイス及び方法 | |
JP2002007200A (ja) | メモリ制御装置及び動作切替方法並びにインターフェース装置、半導体集積チップ、記録媒体 | |
JP2007183959A (ja) | 改善されたアディティブレイテンシを有したメモリシステム及び制御方法 | |
JP5391833B2 (ja) | メモリコントローラ、システムおよび半導体メモリのアクセス制御方法 | |
US8069303B2 (en) | Method and apparatus for controlling memory precharge operation | |
JP2004039141A (ja) | 半導体メモリ | |
JP2014154119A (ja) | メモリ制御装置及び半導体記憶装置 | |
US20080126691A1 (en) | Apparatus and method of partially accessing dynamic random access memory | |
TW200729150A (en) | Methods for transferring frame data, and for transferring image data and timing control modules | |
US9424902B2 (en) | Memory controller and associated method for generating memory address | |
EP1600980B1 (en) | Semiconductor memory device without decreasing performance thereof even if refresh operation or word line changing operation occur during burst operation | |
JP2005215762A (ja) | 情報処理装置およびメモリアクセス方法 | |
JP2008041142A (ja) | メモリアクセス方法 | |
US8463956B2 (en) | Data transfer control apparatus | |
JP2012226491A (ja) | メモリ制御装置、集積回路、情報処理装置およびメモリ制御方法 | |
WO2016185878A1 (ja) | メモリ制御回路およびメモリ制御方法 | |
WO2009093548A1 (ja) | 半導体記憶装置 | |
JP2006099199A (ja) | メモリアクセス要求の調停 | |
JP2009217310A (ja) | メモリアクセス方法及びメモリアクセス装置 | |
JP2004206850A (ja) | 半導体記憶装置 | |
JP2010061498A (ja) | メモリ制御装置、半導体試験装置およびメモリ制御方法 | |
JP2009237980A (ja) | マルチポートメモリおよび情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090708 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100205 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110802 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111130 |