JP2006127110A - Dramメモリアクセス制御手法、および手段 - Google Patents

Dramメモリアクセス制御手法、および手段 Download PDF

Info

Publication number
JP2006127110A
JP2006127110A JP2004313880A JP2004313880A JP2006127110A JP 2006127110 A JP2006127110 A JP 2006127110A JP 2004313880 A JP2004313880 A JP 2004313880A JP 2004313880 A JP2004313880 A JP 2004313880A JP 2006127110 A JP2006127110 A JP 2006127110A
Authority
JP
Japan
Prior art keywords
access
page
master
memory
image
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
Application number
JP2004313880A
Other languages
English (en)
Inventor
Kohei Murayama
公平 村山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2004313880A priority Critical patent/JP2006127110A/ja
Publication of JP2006127110A publication Critical patent/JP2006127110A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Memory System (AREA)
  • Image Input (AREA)

Abstract

【課題】 複数データ形式を扱うシステムにおいて、データ形式によらずDRAMメモリアクセス時のページミスによるペナルティーを少なくし、システム全体のメモリアクセス速度を向上させる。
【解決手段】 複数のマスタデバイスからのメモリアクセスが可能なシステムで、メモリコントローラと、任意のアクセス単位ごとに規則的に離散的なメモリアクセスを行うマスタデバイスを有するシステムにおいて、マスタデバイスを識別し、規則的かつ離散的なアクセスを判定する手段を有し、アクセスに応じてページミスを予測しあらかじめページオープンを行う手段を有する。
【選択図】 図1

Description

本発明は画像処理装置におけるメモリアクセス手法、手段に関する。
近年半導体技術の向上に伴い、LSI内部回路の動作周波数が飛躍的に高速化しており、LSI内部の処理を高速に行うことができるようになった。
複合機器の制御装置といった複数の処理を並行に行う制御装置においても、半導体技術の向上に伴って、内部処理の高速化を実現することが可能となっている。
しかし、CPUや処理回路の高速化が進むにつれてメモリアクセスの速度が相対的に遅くなりメモリアクセスがシステムのボトルネックとなることが顕在化してきた。
現在、様々な機器の主メモリとしてDRAMが使用されている。
近年のDRAMにはページモードと呼ばれる高速アクセスモードが備えられている。
DRAMのデバイスは、複数のバンクで構成され、各バンクは複数のページに分割されている。
DRAMはバンク選択信号とROWアドレスにより、アクセスするページを選択しオープンし、後続のCOLUMNアドレスの指定によりアクセス先アドレスを指定する。
ページモードとはDRAMデバイスのバンク内同一ページにアクセスしている期間(ページヒットの期間)はプリチャージを必要とせずに連続してアクセスすることが可能となる。
しかし、同一バンク内で別のページにアクセスが移った場合には(ページミス)、それまでアクセスを行っていたページをプリチャージでクローズし、新しいROWアドレスを指定して、ページをオープンしアクセスする必要がある。
図2に示されるように、ACTでページをオープンしCMDでページを指定しアクセスし、PREでページをクローズする。
図2(a)は2番目のアクセスが同一ページである、つまりページヒットの場合の例であり、ページをクローズして、別のページをオープンする必要なく2番目のコマンドを発行することができる。
図2(b)は2番目のアクセスが同一バンクの別のページへのアクセスのつまりページミスの場合であり、1番目のアクセス終了後にページをクローズし、2番目のアクセスページをオープンする必要があるため、ACT、PREの分のページミスペナルティーが生じる。
したがってメモリアクセス速度を向上は、ページミスを減らすことによりページミス時のペナルティーを少なく抑えることにより実現させる。
画像を扱う複合機器の制御装置の場合、一般的にメモリを処理の中間バッファとして使用しているため、メモリアクセスの速度が処理全体の性能に大きく影響を与える。
メモリアクセス速度を向上させるために、画像を取り扱う場合は処理方法に応じて画像の取り扱い方式を変更し、ページミス頻度を少なくする試みがなされている。
画像の取り扱い方法として、ひとつの画像を一連の画素の連続としてとらえる方法(ラスター画像として取り扱う方法)や、画像を複数のブロックに分割して捉え、それぞれのブロックごとに画像を取り扱う方法(ブロック画像、あるいはタイル画像として取り扱う方法)などがある。
ブロックあるいはタイル画像として画像を取り扱う場合、ひとつの画像をある単位でタイル画像として区切り、そのタイル画像の集合として1ページの画像を取り扱う。
タイル画像は、画像サイズを小さく抑えることができ、画像処理を加える場合タイルごとの処理が行われるため、複合機器の制御装置といった複数処理を同時に行うような機器の場合は、単位処理時間を少なく抑えることができ、より多くの並列動作を行うことができる。
図1で示すのは、画像の画素の配置と、ラスター状あるいはタイル状にメモリに保持された場合のメモリイメージを表す。
図1の(a)は画像の画素の配置を表しており、小さな枠が画素であり、縦横2画素でタイルを構成しているイメージを表している。
ラスター画像として処理を行う場合、図1の(b)に示されるように連続したメモリ領域に画素順にメモリに保持され、ラスター画像のアクセス時に連続アクセスを発行することによってページミスのオーバーヘッドを最小限に抑えることができる。
タイル画像として処理を行う場合に、図1の(c)に示されるように、タイル画像をひとつの単位としてメモリ内に保持することにより、タイル画像がDRAMの同一ページに存在するためページミスのオーバーヘッドがなく高速アクセスが可能となる。
つまり画像の取り扱いを処理に応じて変更することにより、ページミスによるペナルティーを低減することができる。
したがって画像を連続画素として捉える処理を行うブロックの場合、ラスター画像としてメモリに保持することにより、ページミスを抑えてメモリへとアクセスが行うことができ、またブロック画像、タイル画像を単位として処理を行うブロックの場合、図1(c)に示される、その画像単位でメモリ上に保持することによりタイル毎にメモリアクセスを発行することでページミスを抑えることができる。
以上のように、画像の処理方法によりメモリに保持される形式を変更にすることによりページミス時のペナルティーを低減し、メモリアクセスの性能向上が得られる(例えば、特許文献1、2参照)。
特開平7−64864 特開平7−153262
スキャナやプリンタ等の制御を行う画像を扱う複合機器の制御装置の場合、CPUや様々な処理を行う機能ブロックのDMAがメモリを中間バッファとして使用し処理を行うが、その画像の取り扱い方法は様々である。
複合機器の制御装置の場合は同時動作を行う必要があるため、画像をひとつのページとして扱うラスターとして取り扱うよりも、画像を複数の処理ブロックに分割するタイルとして取り扱うほうが有利ある。
しかし一般に、入力出力部等では画像をひとつのページとして取り扱う必要がある。スキャナ制御部やプリンタの出力部などは最終的に画像をページとして取り扱うためラスターとして取り扱われる。
したがって複合機器の制御装置においては、画像ページとして取り扱う必要のあるブロックではラスターとして画像を取り扱い、それ以外の処理を行う場合に置いてはタイルとして画像を取り扱うことにより、効率的なメモリアクセスを行うシステムを実現できる。
画像をタイルとして取り扱うブロックでは、画像アクセス単位がタイルでメモリに保持されたデータであり、通常一連のアクセスはページヒットするため、高速アクセスが可能である。
また、ラスターとして画像を取り扱う場合、ラスター画像としてメモリに保持されたデータに連続的にアクセスするため、ほとんどのアクセスはページヒットとして高速にアクセスすることができる。
しかしながら、それぞれの処理に対してラスター画像、タイル画像をメモリに用意する必要があるため、ラスター画像をタイル画像に変換するブロックやタイル画像をラスター画像に変換して取り扱うブロックが、あるいはラスターとタイルの変換をしながら処理を行うブロックが存在する。
タイル画像とラスター画像の変換を取り扱うブロックにおいても、一般にメモリを中間バッファとして使用し、処理を行う。
たとえばラスター画像をタイル画像に変換する場合、ラスターとしてメモリに保持されたイメージをタイルにする、構成画素順にメモリから読み出し、タイル画像を生成する。
逆にタイルとしてメモリに保持されたイメージをラスター画像に変換する場合は、タイル画像を読み込みブロック内部でラスターの画素列ごとに分割してメモリにラスター画像の配列となるように書き戻す処理が必要となる。
ラスター状のものをタイル構成画素順に読み出す処理の場合、読み出し動作が画素列ごとに読み出すことなる。
スキャナやプリンタといった処理を行う複数機器の制御装置の場合において扱う画像サイズは小さくないため、画素列ごとの読み出す場合、画素列が移るたびにDRAMの別のページに遷移するためページミスが発生する。
タイルとして保持された画像をラスター画像に変換する場合の書き込み動作も、タイル画像単位の画素列ごとにメモリへと書き込むため、画素列の遷移ごとにDRAMのページミスが発生する。
一例として、A4、600dpiで、1ピクセルあたり32ビットのラスター状の画像を32ピクセル×32ピクセルのタイルへと変換する処理を考える。
するとA4の1ページ画像は水平方向156タイル、垂直方向220タイル、合計34320タイルで構成される。
タイルに変換する処理を行うブロックは、タイルの画素列分である32ピクセル、128バイトのデータを読み込み、次の画素列の先頭ピクセルへと飛ぶという規則的なアクセスを繰り返し行う。
次の画素列の先頭ピクセルは水平方向で156タイル分先のアドレス、19968バイト(19.5キロバイト)先に存在する。
図5に示したのは、ラスター画像とタイル画像のメモリ上アドレスの関連を示したものであり、図内部の矢印は1画素列でアドレスが進む方向を示しており、ある画素列のある画素と次の画素列の同一位置の画素とのアドレス関連を示している。
DRAMのページは、デバイスにより差異があるものの、おおよそ1キロバイトから2キロバイトのものが多く、すなわち19.5キロバイト先のアドレスに飛ぶ場合は必ずページミスとなる。
したがって、ひとつのタイル変換処理を行うにあたり32回のページミスが発生し、A4、1ページ全体では1098240回のページミスが発生する。
このように、一般にタイル画像の単位は画像ページに対してかなり小さく設定されるため、数多くの画素列の遷移が行われるため、ページミスによるペナルティーの発生が頻発する。
複合機器の制御装置では、メモリを様々なブロックのバッファとして使用するため、本アクセスのページミスペナルティーは、ブロック処理速度の低下のみならず、システム全体の性能に対して大きな影響を与える。
たとえば、あるラスター画像をメモリに書き出し、そのラスターをタイルに変換して処理を行う場合、ラスター画像をある単位(バンド)に分割して処理を行い、バンド分のラスター画像を書き込んだ後にタイルに変換するマスタがラスター画像からタイルに変換し、その間にラスター画像を別の領域へと書き込むといった、バッファリングの処理を行う時、タイルへと変換するブロックのアクセス中にページミスが発生し、その間ページヒットとなるラスター画像を書き込む処理がページミスペナルティー分待たされるといった、他の処理に対しても性能を低下させる。
本発明は、画像を取り扱う複合機器の制御装置において、ラスター画像とタイル形式画像の変換時におけるページミスによるペナルティーの影響を低減し、メモリアクセスのバンド幅、画像処理性能の向上を目的とする。
DRAMメモリアクセスを制御するメモリコントローラで、該メモリコントローラはメモリ高速アクセス(ページモードアクセス)制御手段、アクセスマスタ識別手段を有し、識別されたアクセスマスタデバイスのアクセスに対して、該アクセスマスタデバイスのアクセス単位を識別しアクセス単位の終了を検知する手段と、該マスタのアクセス単位終了検知に基づき、現行のDRAMアクセスページをクローズし、該アクセスマスタの後続アクセスのDRAMページを判定し、ページをオープンする手段を有する。
図6に示されるように、アクセスを受けるより前で他のバンクへのアクセスが行われている期間中にアクセスのページを予測しページオープンすることにより(a)で見られるページミスのペナルティーを他のバンクのアクセス中に隠蔽し、実際のアクセス時にページヒットと同様にアクセスを行うことができる。
本発明を適用することにより、複数マスタが混在するシステム等で、規則的なアクセスや規則的かつ離散的なアクセスを行うマスタが存在する場合において、規則的かつ離散的なアクセスを行うマスタを識別し、該マスタに対してページミスの発生を予測し、あらかじめ次のページをオープンする手段を有することにより、他のマスタのメモリアクセス性能低下をもたらすことなしに、離散的メモリアクセス速度を向上させることができる。
画像を扱う複合機器の制御装置等においては、画像は複数の形式で処理される必要があり、本発明を適用することにより複数の画像処理ブロックが処理を行う期間においても、アクセスマスタによらずページミスのペナルティーを最小限に抑えることにより高速並列処理が実現できる。
本発明のメモリアクセス制御手法は、複数のマスタデバイスがDRAMメモリに対してアクセス発行することが可能なシステムで、マスタデバイスのうち規則的かつ離散的なアクセスを行うマスタが存在するシステムに適用可能である。
本発明の実施の形態として、複数マスタデバイスからのメモリアクセスが可能であり、あるマスタデバイスが規則的かつ離散的なアクセスをDRAMメモリに対して発行するシステムを使用する。
該システムにおいて、メモリコントローラはアクセスマスタを識別する手段を有しており、規則的かつ離散的なアクセスマスタのアクセスを識別する。
また、メモリコントローラは当マスタの規則的かつ離散的なアクセス認識する手段を有しており、マスタからの規則的なアクセス単位とその終了を認識する手段を有する。
アクセス単位の終了を認識すると、次のアクセスは離散的であると判定し現在のアクセスページをクローズし、後続アクセスのページを予測しオープンすることにより、本発明のメモリアクセス制御手法が実現される。
本発明を実現する一例として、以下の実施例を用いて詳細に説明する。
本発明の実施例として、図3に示されるよな複数のマスタ303、304からアクセスされるDRAMメモリ301とそのメモリを制御するメモリコントローラ302を含むシステムをもちいる。図4は、本発明実施例のブロック概念図である。
本実施例にあげる構成のブロック図を図9に示す。
本実施例にあげる構成は、本発明を実現する一例であり、マスタ識別手段、アクセス終了検知手段、後続アクセスページ判定手段は本実施例に限定されるものではない。
本実施例においてはスキャナの取り込んだ画像といったラスター画像を書き出すマスタデバイス401(以下ラスター出力マスタ)と、そのラスター画像を図5に示されるような32ピクセル×32ピクセル単位のタイルに変換し書き出すマスタデバイス402(以下、タイル変換マスタ)を含むものとする。
ラスター出力マスタ401は、メモリ上に水平方向の画素順に画像を出力し、水平方向1ライン出力すると、次の画素列を水平方向に画像を出力するものとする。
タイル変換マスタ402は、ラスター出力マスタ401が出力したラスター画像からタイルを生成し処理を行う。
本タイル変換マスタ402は、ラスターでメモリ上に展開された画像を32ピクセル×32ピクセルのタイル単位でデータを読み出す。
最初の水平方向の32ピクセルを読み取ると、タイルの次のラインへと遷移し、次のラインの先頭ピクセルから画像を読み出す処理を32回繰り返し、読み出したデータを並べてタイル画像に変化し処理を行う。
本処理を行う際、タイル変換マスタ402の動作は、32ピクセルの連続の読み出しを行い、次ラインのピクセル先頭までアドレスが飛んで、32ピクセル連続の読み出し処理を繰り返し行う。
たとえばA4、600dpiの画像を扱う場合、水平方向に156タイル、垂直方向に220タイルで構成される。
また1ピクセルあたり32ビットで構成されるとすると、タイル変換マスタの処理は、128バイトの読み出しを行い、19968バイト先のピクセルへと飛ぶという処理を単位として繰り返し行われる。
128バイトの連続読み出しを規則的アクセスとし、128バイト単位のアクセスの終了を検知し、19968バイト先へのアクセスを行われると予測をし19968バイト先のページをオープンするシステムにより本発明は実現される。
メモリコントローラ302は、内部バスインターフェース部403と、DRAM制御部404から構成され、内部バス305を介してDRAM301へのアクセスを受け付ける。
内部バス305にはアクセス発行マスタの識別情報であるマスタ識別子701を含んでおり、各マスタ304、401、402に対して固有のマスタ識別子が割り当てられている。
内部バスインターフェース403は、アクセス判定やアドレスのデコードを行い、アクセス制御信号としてDRAM制御部404へアクセス情報709を伝達する。
また、内部バスインターフェース403では、内部バス305のマスタ識別子701を参照することによりアクセスのマスタの識別が可能となる。
内部アクセスインターフェース部403の構成を示したのが図7である。
内部アクセスインターフェース部403では、アクセスマスタの識別を行うマスタ識別部702があり、タイル変換マスタ402からの読み取りアクセスを識別する。
マスタ識別部702には、アクセスバイトカウンタ706が含まれる。
マスタ識別部702では、アクセス開始が開始されると比較器704にてタイル変換マスタ402に割り当てられたマスタ識別子とアクセスされたマスタ識別子701の比較を行い、アクセスマスタ識別子がタイル変換マスタ402に割り当てられたマスタ識別子であった場合には、アクセスされたバイト数に応じてアクセスバイトカウンタ706を加算する。
タイル変換マスタ402に割り当てられたマスタ識別子の指定はレジスタ703設定にてあらかじめ行われ、比較器704ではレジスタ703への設定値とアクセスされたマスタ識別子701との比較が行われる。
本実施例における内部バス305では一回のアクセスが32バイト転送できるものとする。
タイル変換マスタ402がアクセスするタイルのピクセル列のアクセスバイト数は128バイトであり、4回のアクセスがタイル変換マスタ402の連続ピクセルアクセスする単位である。
アクセスバイトカウンタ706は任意のビットのカウンタであり、タイル変換マスタ402からの読み込みアクセスであると判定すると加算される。
内部バスインターフェース部403では、タイル変換マスタ402の読み込みアクセスごとにアクセスカウンタ706を参照し、アクセス単位判定レジスタ707に設定された値との比較を行う。
アクセス単位判定レジスタ707は、タイル変換マスタ402の連続アクセスする単位を設定し、本実施例の場合128バイトを示す値が設定される必要がある。
アクセスカウンタ706の値がアクセス単位判定レジスタ707の設定値、128バイトとなった場合に、カウンタをクリアして、タイル変換マスタ402のアクセス単位終了と判定しページクローズ信号708とともにDRAM制御部404へとアクセスを伝達する。
アクセスマスタ識別子701がタイル変換マスタ402でないアクセスや、タイル変換マスタ402のアクセスでカウンタ値がアクセス単位判定レジスタ707の設定値となっていない場合は、ページクローズ信号708を発行せずにDRAM制御部404へとアクセス709を伝達する。
以上の構成によりアクセス終了判定手段901を有した内部バスインターフェース部302を構成する。
図8は本発明実施例におけるメモリコントローラ内DRAM制御部のブロック図である。
DRAM制御部404は、アクセス情報709の伝達に基づき、DRAM301へのアクセスコマンドの発行を行う。
DRAM制御部は後続アクセスページ判定手段902を有し、後続アクセスページの判定を行いページクローズ、ページオープンを行う手段を有し、タイル変換マスタ402の後続アクセスページをあらかじめオープンする。
DRAM制御部404で制御するアクセスコマンドは、ページオープン(ページの活性化)、ページクローズ(プリチャージ)、リフレッシュ、リード、ライト、モードセット等である。
DRAM制御部404はROWコマンドを制御するシーケンサ804と、COLコマンドを制御するシーケンサ805、ページアドレス制御部801、タイミングカウンタ806等で構成される。
ROWアクセス制御シーケンサ804、COLアクセス制御シーケンサ805はアクセス情報709に基づいてDRAM301に対してコマンドを発行する。
ページアドレス制御部801はページヒット、ミスの判定および判定に基づくページオープン、ページクローズ発行指示をシーケンサ804、805に対して発行し、コマンド発行アドレス807の生成を行う。
また、ページクローズ信号708を伴ったアクセスにより、該当アクセス終了後にページクローズの指示と、次のページオープン要求をシーケンサに対して発行する。
ページアドレス制御部801内にはバンクごとのページ情報802を保持しており、ページがオープン、クローズされるごとに更新する。
ページアドレス制御部801はアクセス情報709が伝達されるとアクセスアドレスからアクセスページを割り出し、ページ情報802を参照する。
ページ情報802でアクセスページがオープンであった場合、そのままCOLアクセス制御シーケンサ805に対してコマンドを発行する。
ページ情報802でアクセスするバンクにオープンなページがない場合は、ROWアクセス制御シーケンサ804にページをオープンにする指示を発行し、アクセスするページがオープンされた後にCOLアクセス制御シーケンサ805に対してコマンドを発行する。
ページ情報802でアクセスするバンクにオープンな別ページがあった場合はページミスであり、ROWアクセス制御シーケンサ804にページをクローズする指示とページをオープンにする指示を発行して、アクセスするページがオープンされた後にCOLアクセス制御シーケンサ805に対してコマンドを発行する。
オープン、クローズするページアドレスはページアドレス制御部801から発行され、ページクローズの場合はページ情報802内に保持されているページアドレスを発行し、ページオープンの場合はアドレスをデコードしたページアドレスが発行される。
以上のページアドレス制御部801の構成は一般的な高速アクセスモード(オープンページモード)のメモリコントローラの構成であり、本実施例では、ページアドレス制御部801に以下の構成を加える。
ページアドレス制御部801がページクローズ信号708とともにアクセスを受けた場合は、該当アクセスを発行した後に、アクセスされたページのクローズとバンク内の指定されたページアドレスのオープンを指示する。
本ページクローズ、オープンの指示は通常アクセスにおける指示とは別信号線803として用意され、低優先度として取り扱われる。
ROWアクセス制御シーケンサ804は、メモリアクセス受信ステータスを参照し、ページクローズ信号708の指定によるページクローズ、オープンの指示を受けると、シーケンサ804、805がコマンドを発行できるタイミングを待って発行する。
ページクローズ信号708の指定によるページクローズ、オープンの指示はROWアクセス制御シーケンサ804では低優先順位として取り扱われ、他のアクセスが発行されない空白のタイミングにて発行されるように制御される。
図6に示されるのは、二つのバンクa、bに対して1回の読み込みコマンドと2回の書き込みコマンドを発行するときのコマンド発行シーケンスである。
(a)は本発明を実施しない場合の例であり、(b)は本発明を適用した際のアクセス例となっている。
図6(b)に示す最初のRDコマンドが一連のアクセス終了であるとすると、そのアクセス情報709はページクローズ信号708とともに伝達され、バンクaのページクローズとページオープンが指示される。
他のバンクへのアクセスを受け取っている場合は、本アクセスを発行し、その期間中DRAMへのアクセスバスが空白のタイミングにページクローズ、ページオープンを発行するよう制御される。
図6(b)の例では、次のバンクbに対するWRコマンドを発行しているアクセス中はバンクaは空白の期間となっており、bのWRアクセス中のアドレスバスが空いている期間中にページクローズとページオープンを行い、WRコマンド後のRDコマンドがページヒットとしてアクセスすることが可能となる。
具体的には、本実施例のラスター出力マスタ401がラスターを書き込み、タイル変換マスタ402が読み込む処理を行う場合、多くにおいて図6の例のようにラスター出力の書き込みとタイル変換の読み込みは同時に行われ、それぞれはDRAM301の別バンクで行われるように制御される。
この場合、タイル変換マスタ402のアクセスでページクローズ信号708が発行された期間中もラスター出力マスタ403もアクセスを行っており、したがってメモリ301に対して書き込みのコマンドが発行される。
ページクローズ信号708によるページクローズとページオープンの指示を受けると、ROWアクセス制御シーケンサ804は、ラスター出力マスタ401の書き込みアクセス中にコマンドを発行できるタイミングにページクローズとページオープンを発行する。
クローズページアドレスの指定はページ情報802内のページアドレスにより指定される。
オープンページアドレスの指定はアクセスされたページアドレスにアドレスピッチ設定レジスタ808に設定された値を加えたアドレスより示されるページが設定される。
アドレスピッチ設定レジスタ808は、タイル変換マスタ402のアクセスでピクセル列ごとに飛ぶアドレス幅が設定され、本実施例の場合は19968バイトが設定される。
以上より構成されるメモリコントローラの動作は以下のとおりである。
タイル変換マスタ402からの読み込みアクセスを識別し、アクセスされたバイト数が128バイトとなった場合に規則的アクセスの終了と判定し、該当アクセス終了後にラスター出力マスタ401等のアクセス間でコマンド発行可能なタイミングに、ページクローズを行い19.5キロバイト先のページをオープンする。
この場合、ページクローズとページオープンに要する期間は、ラスター出力マスタ401等のアクセス間に消費される。
タイル変換マスタ402から、次の画素列のアクセスが実際に発行される場合、前アクセスがタイル画素列の最後のアクセスでなかった場合は、すでにアクセスページがオープンされているため、ページヒットとして取り扱われ、ページミスが発生しない。
本実施例において、アクセス単位設定レジスタ707、アドレスピッチ設定レジスタ808、マスタ識別子指定レジスタ703の設定を変更することにより、任意の大きさ、画像サイズ、アクセスマスタにおいて上記機能を実現することが可能である。
本発明は以上説明した発明実施の形態および実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。
(a)は画像の画素配列を擬似的に示し、タイル画像、ブロック画像の取り扱いを示した概念図であり、(b)は(a)に示した画像をラスター画像として保持した場合のメモリ内画素配置を示した概念図であり、(c)は(a)に示した画像をタイル画像として保持した場合のメモリ内画素配置を示した概念図である。 (a)はDRAMへのページヒットアクセスにおけるコマンド発行手順を示した概念図であり、(b)はDRAMへのページミスアクセスにおけるコマンド発行手順を示した概念図である。 (a)は複数マスタからアクセス可能なDRAMを有するシステムでメモリコントローラがバスに接続されるシステムのブロック概念図であり、(b)は複数マスタからアクセス可能なDRAMを有するシステムでメモリコントローラがスイッチで接続されるシステムのブロック概念図である。 本発明実施例のブロック概念図である。 ラスター画像をタイル画像に変換する際のメモリアドレス関連を示す概念図である。 1回の読み込みと2回の書き込みが繰り返されるメモリアクセス手順で読み込み書き込みが別バンクで行われ、書き込みアクセスはページヒットとなり2順目のメモリ読み込みアクセスがページミスとなる場合において(a)は本発明を適用しない場合のメモリアクセス手順を示した一例の概念図であり、(b)は本発明を適用した場合のメモリアクセス手順を示した一例の概念図である。 本発明実施例におけるメモリコントローラ内内部バスインターフェース部のブロック図である。 本発明実施例におけるメモリコントローラ内DRAM制御部のブロック図である。 本発明実施例の構成ブロック図である。
符号の説明
301 DRAM
302 メモリコントローラ
303 マスタデバイス
304 マスタデバイス
305 内部バス
401 ラスター出力マスタ
402 タイル変換マスタ
403 内部バスインターフェース部
404 DRAM制御部
701 マスタ識別子
702 マスタ識別部
703 マスタ識別レジスタ
704 比較器
705 アクセスデコード部
706 アクセスバイトカウンタ
707 アクセス単位判定レジスタ
708 ページクローズ信号
709 アクセス情報
801 ページアドレス制御部
802 ページ情報
803 ページクローズ情報
804 ROWアクセスシーケンサ
805 COLアクセスシーケンサ
806 タイミングカウンタ
807 アドレス信号
808 アドレスピッチ設定レジスタ
901 アクセス単位終了判定手段
902 後続アクセスページ判定手段

Claims (2)

  1. DRAMメモリアクセスを制御するメモリコントローラで、該メモリコントローラはメモリ高速アクセス(ページモードアクセス)制御手段、アクセスマスタ識別手段を有し、識別されたアクセスマスタデバイスのアクセスに対して、該アクセスマスタデバイスのアクセス単位を識別しアクセス単位の終了を検知する手段と、該マスタのアクセス単位終了検知に基づき、現行のDRAMアクセスページをクローズし、該アクセスマスタの後続アクセスのDRAMページを判定し該当ページをオープンする手段を有することを特徴とするメモリアクセス制御手法、およびその手段。
  2. メモリアクセス単位の識別と、後続アクセスページの判定をレジスタにより設定値に従いページのクローズ、オープンを行うことを特徴とする請求項1で記されるメモリアクセス制御手法、およびその手段。
JP2004313880A 2004-10-28 2004-10-28 Dramメモリアクセス制御手法、および手段 Withdrawn JP2006127110A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004313880A JP2006127110A (ja) 2004-10-28 2004-10-28 Dramメモリアクセス制御手法、および手段

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004313880A JP2006127110A (ja) 2004-10-28 2004-10-28 Dramメモリアクセス制御手法、および手段

Publications (1)

Publication Number Publication Date
JP2006127110A true JP2006127110A (ja) 2006-05-18

Family

ID=36721822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004313880A Withdrawn JP2006127110A (ja) 2004-10-28 2004-10-28 Dramメモリアクセス制御手法、および手段

Country Status (1)

Country Link
JP (1) JP2006127110A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010072792A (ja) * 2008-09-17 2010-04-02 Seiko Epson Corp メモリ制御回路、電子機器制御装置、および、複合機
US8078011B2 (en) 2008-02-25 2011-12-13 Seiko Epson Corporation Image processing circuit and multi-function apparatus
JP2015022437A (ja) * 2013-07-17 2015-02-02 キヤノン株式会社 制御装置、コンピュータシステム、制御方法、及びプログラム
JP2017045457A (ja) * 2015-08-27 2017-03-02 三星電子株式会社Samsung Electronics Co.,Ltd. トランザクション基盤のハイブリッドメモリモジュール、及びそれを動作させる方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8078011B2 (en) 2008-02-25 2011-12-13 Seiko Epson Corporation Image processing circuit and multi-function apparatus
JP2010072792A (ja) * 2008-09-17 2010-04-02 Seiko Epson Corp メモリ制御回路、電子機器制御装置、および、複合機
JP2015022437A (ja) * 2013-07-17 2015-02-02 キヤノン株式会社 制御装置、コンピュータシステム、制御方法、及びプログラム
US9760508B2 (en) 2013-07-17 2017-09-12 Canon Kabushiki Kaisha Control apparatus, computer system, control method and storage medium
JP2017045457A (ja) * 2015-08-27 2017-03-02 三星電子株式会社Samsung Electronics Co.,Ltd. トランザクション基盤のハイブリッドメモリモジュール、及びそれを動作させる方法

Similar Documents

Publication Publication Date Title
JP5351145B2 (ja) メモリ制御装置、メモリシステム、半導体集積回路およびメモリ制御方法
US20090006669A1 (en) Dma transfer control device and method of dma transfer
US20080126691A1 (en) Apparatus and method of partially accessing dynamic random access memory
US5898623A (en) Input port switching protocol for a random access memory
US6008823A (en) Method and apparatus for enhancing access to a shared memory
JP6180398B2 (ja) メモリーアクセス装置
JP2006127110A (ja) Dramメモリアクセス制御手法、および手段
US6697882B1 (en) Memory controller and method control method, and rendering device and printing device using the same
JP2002328837A (ja) メモリ・コントローラ
JP2006251923A (ja) 先読み制御方法
US20020018238A1 (en) Printer, print control apparatus and method
JP6233287B2 (ja) メモリーアクセス装置、画像処理装置
JP6170363B2 (ja) 制御装置、コンピュータシステム、制御方法、及びプログラム
JP2004127305A (ja) メモリ制御装置
KR20090092722A (ko) 채널 장치, 정보 처리 시스템 및 데이터 전송 방법
JP2000242544A (ja) メモリ制御装置及びダイレクトメモリアクセス制御装置
JPH11345326A (ja) 画像処理装置
JP2001005773A (ja) 記憶制御装置および方法
JP2005119060A (ja) 印字制御装置
KR100716947B1 (ko) 커맨드 실행 조정방법 및 그 장치
JPH05313995A (ja) メモリ制御方式
JPH08101793A (ja) メモリシステム
JP2006072473A (ja) データ転送方法および装置
JP2006195810A (ja) メモリコントローラおよび高速データ転送方法
JP2007072910A (ja) 画像入力装置

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: 20080108