説明

メモリアクセス制御装置

【課題】メモリアクセス制御装置の回路規模を削減する。
【解決手段】メモリアクセス制御装置であって、リード動作ライト動作時のアドレスとデータを格納するバッファと、バッファへのアドレスとデータの入出力を制御するバッファ制御回路と、外部メモリへのアドレスとデータの入出力を制御するメモリ制御回路とを備え、バッファ制御回路は、リード動作を実行する場合、外部メモリへのリード動作で使用するアドレスをバッファに設定し、バッファに設定された外部メモリのアドレスに基づいて外部メモリに対してリード動作を行ってデータを取得し、取得したデータをバッファに格納し、ライト動作を実行する場合、外部メモリへのライト動作で使用するアドレス及びデータをバッファに設定し、バッファに設定された外部メモリのアドレスと外部メモリにライトするデータとに基づいて外部メモリに対してライト動作を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリに対してリード動作及びライト動作を実行するメモリアクセス制御装置に関する。
【背景技術】
【0002】
画像データ等を格納する外部メモリに対して、リード(読み取り)動作及びライト(書込み)動作を実行するメモリアクセス制御装置は、通常、リード動作及びライト動作それぞれのための、アドレス用バッファとデータ用バッファとを備えて、メモリとのアクセス制御を行う。
【0003】
図7は、従来の画像データ転送システム2’の一つの構成例を示すブロック図である。図7に示す画像データ転送システム2’に含まれるメモリアクセス制御装置4’において、リード動作を行う場合には、まず、プロセッサ8’から、リードアドレス用バッファ14a’に対して、メモリ6’へのリード動作で使用する、取得したいデータに対応するアドレス(A0,A1,A2,…A254,A255)が設定される。
【0004】
次に、プロセッサ8’からメモリアクセス制御装置4’に対して、リード動作の要求が発行される。メモリアクセス制御装置4’が、プロセッサ8’からのリード動作の要求を受け付けると、リードバッファ制御回路10a’が、リードアドレス用バッファ14a’に格納されているアドレスを取り出して、アドレスとリード動作の要求とを調停回路11’に対して出力する。調停回路11’は、リード動作の要求を実施してよいか否かを判断して、アドレスとリード動作の要求とをメモリ制御回路12’に対して出力する。メモリ制御回路12’は、調停回路11’より、アドレスとリード動作の要求とを受け付けると、メモリ6’に対して、アドレスとリード動作のために必要な制御信号とを出力する。
【0005】
そして、メモリ制御回路12’は、メモリ6’より取得したデータ(D0,D1,D2,…D254,D255)を、調停回路11’を経由して、リードバッファ制御回路10a’に対して出力する。リードバッファ制御回路10a’は、メモリ6’より取得したデータをメモリ制御回路12’より受け付けると、リードデータ用バッファ15a’にメモリ6’より取得したデータを格納する。
【0006】
図7に示すメモリアクセス制御装置4’において、ライト動作を行う場合には、プロセッサ8’から、ライトアドレス用バッファ14b’に対して、メモリ6’へのライト動作で使用するアドレス(A0,A1,A2,…A254,A255)が設定される。これと同時に、ライトデータ用バッファに15b’対して、メモリ6’へのライト動作で使用するデータ(D0,D1,D2,…D254,D255)が設定される。
【0007】
次に、プロセッサ8’からメモリアクセス制御装置4’に対して、ライト動作の要求が発行される。メモリアクセス制御装置4’は、プロセッサ8’からのライト動作の要求を受け付けると、ライトバッファ制御回路10b’が、ライトアドレス用バッファ14b’に格納されているアドレスと、ライトデータ用バッファ15b’に格納されているデータとを取り出して、アドレスとデータとライト動作の要求とを調停回路11’に対して出力する。調停回路11’は、ライト動作の要求を実施してよいか否かを判断して、アドレスとデータとライト動作の要求とをメモリ制御回路12’に対して出力する。メモリ制御回路12’は、調停回路11’より、アドレスとデータとライト動作の要求とを受け付けると、メモリ6’に対して、アドレスとデータとライト動作のために必要な制御信号とを出力する。そして、メモリ6’にそのデータが、ライトされる。
【0008】
このように、図7に示す従来の画像データ転送システム2’では、メモリ6’に対してリード動作及びライト動作を実行するメモリアクセス制御装置は、リード動作及びライト動作それぞれのための、アドレス用バッファとデータ用バッファを備えた上で、メモリ6’とのアクセス制御を行う。例えば、特許文献1から4に開示されるメモリアクセス制御装置も、アドレス用バッファとデータ用バッファを備えて、メモリとのアクセス制御を行っている。
【0009】
続いて、図8は、従来の画像データ転送システム2”の別の構成例を示すブロック図である。図8に示す画像データ転送システム2”に含まれるメモリアクセス制御装置は、図7に示すメモリアクセス制御装置と略同じものである。但し、図8に示すメモリアクセス制御装置は、リード用のバッファを一つしか備えない。従って、その分回路規模が削減されている。
【0010】
図8に示すメモリアクセス制御装置4’において、リード動作を行う場合には、まず、リード用バッファ14a’に対して、メモリへ6’のリード動作で使用する、取得したいデータに対応するアドレス(A0,A1,A2,…A254,A255)が設定される。
【0011】
次に、プロセッサ8’からメモリアクセス制御装置4’に対して、リード動作の要求が発行される。メモリアクセス制御装置4’は、プロセッサ8’からのリード動作の要求を受け付けると、リードバッファ制御回路10a’が、リード用バッファ14a’に格納されているアドレスを取り出して、アドレスとリード動作の要求とを調停回路11’に対して出力する。調停回路11’は、リード動作の要求を実施してよいか否かを判断して、アドレスとリード動作の要求とをメモリ制御回路12’に対して出力する。メモリ制御回路12’は、調停回路11’より、アドレスとリード動作の要求とを受け付けると、メモリ6’に対して、アドレスとリード動作のために必要な制御信号とを出力する。
【0012】
そして、メモリ制御回路12’は、メモリ6’より取得したデータ(D0,D1,D2,…D254,D255)を、調停回路11’を経由して、リードバッファ制御回路10a’に対して出力する。リードバッファ制御回路10a’は、メモリ6’より取得したデータをメモリ制御回路12’より受け付けると、元々アドレスが格納されていた元のリード用バッファ14a’にメモリ6’より取得したデータを格納する。
【0013】
なお、 図8に示すメモリアクセス制御装置4’が行うライト動作は、図7に示すメモリアクセス制御装置が行うライト動作と同じである。
【発明の概要】
【発明が解決しようとする課題】
【0014】
上述のように、従来のメモリアクセス制御装置は、特にライト動作のためにアドレス用バッファとデータ用バッファを備えており、そのような構成では、メモリアクセス制御装置の回路規模が大きくなってしまう、という課題がある。
【0015】
本発明は、回路規模を削減したメモリアクセス制御装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明は、上記の目的を達成するために為されたものである。本発明に係る第1のメモリアクセス制御装置は、
外部メモリに対してリード動作とライト動作を実行するメモリアクセス制御装置であって、
リード動作とライト動作時のアドレスとデータを格納するバッファと、
前記バッファへのアドレスとデータの入出力を制御するバッファ制御回路と、
外部メモリへのアドレスとデータの入出力を制御するメモリ制御回路とを備え、
前記バッファ制御回路は、
リード動作を実行する場合には、外部メモリへのリード動作で使用するアドレスをバッファに設定し、前記バッファに設定された外部メモリのアドレスに基づいて、前記メモリ制御回路を介して外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
ライト動作を実行する場合には、外部メモリへのライト動作で使用するアドレス及びデータを前記バッファに設定し、前記バッファに設定された外部メモリのアドレスと外部メモリにライトするデータとに基づいて、前記メモリ制御回路を介して外部メモリに対してライト動作を行う。
【0017】
メモリアクセス制御装置において、
バッファは、
複数のプロセッサエレメントにより構成されるプロセッサエレメント部と、プロセッサエレメントに制御信号を供給するグローバルプロセッサとを有する、SIMDプロセッサにおける、外部アクセス用レジスタであってもよい。
【0018】
メモリアクセス制御装置において、
バッファ制御回路は、
バーストリード動作を実行する場合には、前記バッファに設定された外部メモリのアドレスとそれを順次インクリメントしたアドレスとに基づいて、前記メモリ制御回路を介して外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
バーストライト動作を実行する場合には、前記バッファに格納された、外部メモリのアドレスとそれを順次インクリメントしたアドレスに対応する外部メモリにライトする複数データとに基づいて、前記メモリ制御回路を介して外部メモリに対して連続してライト動作を行う、というものであってもよい。
【0019】
本発明に係る第1のバッファ制御方法は、
外部メモリに対してリード動作とライト動作を実行するメモリアクセス制御装置におけるバッファ制御方法であって、
リード動作を実行する場合には、外部メモリへのリード動作で使用するアドレスをバッファに設定し、前記バッファに設定された外部メモリのアドレスに基づいて、外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
ライト動作を実行する場合には、外部メモリへのライト動作で使用するアドレス及びデータを前記バッファに設定し、前記バッファに設定された外部メモリのアドレスと外部メモリにライトするデータとに基づいて、外部メモリに対してライト動作を行う。
【0020】
バッファ制御方法は、
バーストリード動作を実行する場合には、外部メモリのアドレスとそれを順次インクリメントしたアドレスとに基づいて、外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
バーストライト動作を実行する場合には、外部メモリのアドレスとそれを順次インクリメントしたアドレスに対応する外部メモリにライトする複数データとに基づいて、外部メモリに対して連続してライト動作を行う、というものであってもよい。
【発明の効果】
【0021】
本発明を利用することにより、外部メモリのためのメモリアクセス制御装置は、回路規模を縮小することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の第1の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、リード動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図2】本発明の第1の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、ライト動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図3】本発明の第2の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、リード動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図4】本発明の第2の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、ライト動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図5】本発明の第3の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、リード動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図6】本発明の第3の実施形態に係る画像データ転送システム、及び、その画像データ転送システムに含まれるメモリアクセス制御装置の構成を示すブロック図であり、特に、ライト動作を行うときの、画像データ転送システム及びメモリアクセス制御装置の動作の様子を含むブロック図である。
【図7】従来の画像データ転送システムの一つの構成例を示すブロック図である。
【図8】従来の画像データ転送システムの別の構成例を示すブロック図である。
【発明を実施するための形態】
【0023】
以下、図面を参照して本発明に係る好適な実施形態を説明する。
【0024】
[1.第1の実施形態]
1.1.構成
図1及び図2は、本発明の第1の実施形態に係る画像データ転送システム2、及び、その画像データ転送システム2に含まれるメモリアクセス制御装置4の構成を示すブロック図である。特に、図1は、リード動作を行うときの、画像データ転送システム2及びメモリアクセス制御装置4の動作の様子を説明するためのブロック図であり、図2は、ライト動作を行うときの、画像データ転送システム2及びメモリアクセス制御装置4の動作の様子を説明するためのブロック図である。
【0025】
図1及び図2に示す第1の実施形態に係る画像データ転送システム2は、メモリアクセス制御装置4、メモリ6、及びプロセッサ8を含む。更に、メモリアクセス制御装置4は、メモリ制御回路12、バッファ制御回路10、及びバッファ14で構成される。
【0026】
1.2.動作
1.2.1.リード動作
まず、図1を用いて第1の実施形態に係るメモリアクセス制御装置4のリード動作について説明する。メモリアクセス制御装置4がリード動作を行う場合には、プロセッサ8は、バッファ制御回路10に対して、メモリ6へのリード動作で使用する、取得したいデータに対応するアドレス(A0,A1,A2,…A254,A255)のバッファ14への設定を指示する。バッファ制御回路10は、バッファ14に対して、指示されたアドレス(A0,A1,A2,…A254,A255)を設定する。
【0027】
次に、プロセッサ8からメモリアクセス制御装置4に対して、リード動作の要求が発行される。メモリアクセス制御装置4が、プロセッサ8からのリード動作の要求を受け付けると、バッファ制御回路10が、バッファ14に格納されているアドレスを取り出して、アドレスとリード動作の要求とをメモリ制御回路12に対して出力する。メモリ制御回路12は、バッファ制御回路10より、アドレスとリード動作の要求とを受け付けると、メモリ6に対して、アドレスとリード動作のために必要な制御信号とを出力する。
【0028】
そして、メモリ制御回路12は、メモリ6より取得したデータ(D0,D1,D2,…D254,D255)を、バッファ制御回路10に対して出力する。バッファ制御回路10は、メモリ6より取得したデータをメモリ制御回路12より受け付けると、元々アドレスが格納されていたバッファ14に取得したデータを格納する。
【0029】
1.2.2.ライト動作
続いて、図2を用いて第1の実施形態に係るメモリアクセス制御装置4のライト動作について説明する。メモリアクセス制御装置4がライト動作を行う場合には、プロセッサ8は、バッファ制御回路10に対して、メモリ6へのライト動作で使用する、アドレス(A0,A1,A2,…A126,A127)と、データ(D0,D1,D2,…D126,D127)の、バッファ14への設定を指示する。バッファ制御回路10は、バッファ14に対して、指示されたアドレス(A0,A1,A2,…A126,A127)とデータ(D0,D1,D2,…D126,D127)を設定する。図2に示すメモリアクセス制御装置4では、バッファ制御回路10は、個々のアドレスとデータとを対にして組にした形で、バッファ14に設定している。
【0030】
図1に示すように、リード動作を行うとき、アドレスのみをバッファ4に設定していたが、図2に示すように、ライト動作を行うときは、アドレスとデータとを共に設定する。このため、メモリ6に対して一度にアクセスできる回数は半分となる。
【0031】
次に、プロセッサ8からメモリアクセス制御装置4に対して、ライト動作の要求が発行される。メモリアクセス制御装置4が、プロセッサ8からのライト動作の要求を受け付けると、バッファ制御回路10が、バッファ14に格納されているアドレスとデータとを取り出して、アドレスとデータとライト動作の要求とをメモリ制御回路12に対して出力する。メモリ制御回路12は、バッファ制御回路10より、アドレスとデータとライト動作の要求とを受け付けると、メモリ6に対して、アドレスとデータとライト動作のために必要な制御信号とを出力する。それにより、メモリ6にそのデータが、ライトされる。
【0032】
このように、第1の実施形態に係るメモリアクセス制御装置4は、リード動作及びライト動作を一つのバッファ14のみにより実行できる。
【0033】
1.3.まとめ
以上のように、第1の実施形態に係るメモリアクセス制御装置4は、一つのバッファでリード動作及びライト動作を実行できる。このため、第1の実施形態に係るメモリアクセス制御装置4は、例えば、図8に示す従来のメモリアクセス制御装置のようなライトアドレス用バッファとライトデータ用バッファを備える必要が無い。従って、第1の実施形態に係るメモリアクセス制御装置4は回路規模を削減できる。
【0034】
[2.第2の実施形態]
2.1.構成
図3及び図4は、本発明の第2の実施形態に係る画像データ転送システム102、及び、その画像データ転送システム102に含まれるメモリアクセス制御装置104の構成を示すブロック図である。特に、図3は、リード動作を行うときの、画像データ転送システム102及びメモリアクセス制御装置104の動作の様子を説明するためのブロック図であり、図4は、ライト動作を行うときの、画像データ転送システム102及びメモリアクセス制御装置104の動作の様子を説明するためのブロック図である。
【0035】
図3及び図4に示す第2の実施形態に係る画像データ転送システム102は、メモリアクセス制御装置104、メモリ106、及びSIMDプロセッサ108を含む。メモリアクセス制御装置104は、メモリ制御回路112、バッファ制御回路110、及びバッファで構成される。特に本実施形態では、バッファとして、SIMDプロセッサ108の外部アクセス用レジスタ114を利用している。
【0036】
ここで、SIMD(Single Instruction−stream Multiple Data−stream)プロセッサは、1命令で複数のデータを同時処理するプロセッサである。SIMDプロセッサは、算術論理演算器(ALU)と演算レジスタを備えたプロセッサエレメントと呼ばれるブロックを複数備える。図3及び図4に示すSIMDプロセッサ108は、256個のプロセッサエレメントPE0、PE1、・・・PE255を備えている。複数のプロセッサエレメントPE0、PE1、・・・PE255はプロセッサエレメント部を構成する。また、個々のプロセッサエレメントは、算術論理演算器に利用されるデータを格納する外部アクセス用レジスタを備える。図3及び図4に示すSIMDプロセッサ108のプロセッサエレメントPE0、PE1、・・・PE255は、夫々、外部アクセス用レジスタ114を備えている。更に、SIMDプロセッサ108は、プログラムを解読してプロセッサエレメントPE0、PE1、・・・PE255に制御信号を供給し、プロセッサエレメント全体の動作を制御するグローバルプロセッサ116を備える。
【0037】
2.2.動作
2.2.1.リード動作
図3を用いて第2の実施形態に係るメモリアクセス制御装置104のリード動作について説明する。リード動作が行われる場合は、SIMDプロセッサ108のグローバルプロセッサ116が、バッファ制御回路110に対して、メモリ106へのリード動作で使用する、取得したいデータに対応するアドレス(A0,A1,A2,…A254,A255)の外部アクセス用レジスタ114への設定を指示する。バッファ制御回路110は、外部アクセス用レジスタ114に対して、指示されたアドレス(A0,A1,A2,…A254,A255)を設定する。
【0038】
次に、SIMDプロセッサ108からメモリアクセス制御装置104に対して、リード動作の要求が発行される。メモリアクセス制御装置104が、SIMDプロセッサ108からのリード動作の要求を受け付けると、バッファ制御回路110が、外部アクセス用レジスタ114に格納されているアドレスを取り出して、アドレスとリード動作の要求とをメモリ制御回路112に対して出力する。メモリ制御回路112は、バッファ制御回路110より、アドレスとリード動作の要求とを受け付けると、メモリ106に対して、アドレスとリード動作のために必要な制御信号とを出力する。
【0039】
そして、メモリ制御回路112は、メモリ106より取得したデータ(D0,D1,D2,…D254,D255)を、バッファ制御回路110に対して出力する。バッファ制御回路110は、メモリ106より取得したデータをメモリ制御回路112より受け付けると、元々アドレスが格納されていた元のバッファに取得したデータを格納する。
【0040】
2.2.2.ライト動作
図4を用いて第2の実施形態に係るメモリアクセス制御装置104のライト動作について説明する。ライト動作が行われる場合は、SIMDプロセッサ108のグローバルプロセッサ116が、バッファ制御回路110に対して、メモリ106へのライト動作で使用する、アドレス(A0,A1,A2,…A126,A127)と、データ(D0,D1,D2,…D126,D127)の、外部アクセス用レジスタ114への設定を指示する。バッファ制御回路110は、外部アクセス用レジスタ114に対して、指示されたアドレス(A0,A1,A2,…A126,A127)とデータ(D0,D1,D2,…D126,D127)を設定する。図4に示すメモリアクセス制御装置104では、バッファ制御回路110は、個々のアドレスとデータとを対にして組にした形で、隣接するプロセッサエレメントの外部アクセス用レジスタ114に設定している。
【0041】
図3に示すように、リード動作を行うとき、アドレスのみをバッファである外部アクセス用レジスタ114に設定していたが、図4に示すように、ライト動作を行うときは、アドレスとデータとを共に設定する。このため、メモリ106に対して一度にアクセスできる回数は半分となる。
【0042】
次に、SIMDプロセッサ108からメモリアクセス制御装置104に対して、ライト動作の要求が発行される。メモリアクセス制御装置104が、SIMDプロセッサ108からのライト動作の要求を受け付けると、バッファ制御回路110が、バッファである外部アクセス用レジスタ114に格納されているアドレスとデータとを取り出して、アドレスとデータとライト要求とをメモリ制御回路112に対して出力する。メモリ制御回路112は、バッファ制御回路110より、アドレスとデータとライト動作の要求とを受け付けると、メモリ106に対して、アドレスとデータとライト動作のために必要な制御信号とを出力する。それにより、メモリ106にそのデータが、ライトされる。
【0043】
このように、第2の実施形態のようにバッファとしてSIMDプロセッサの外部アクセス用レジスタ114を用いた場合であっても、リード動作及びライト動作を一つのバッファのみにより実行できる。
【0044】
2.3.まとめ
以上のように、第2の実施形態に係るメモリアクセス制御装置104も、一つのバッファでリード動作及びライト動作を実行できる。このため、第2の実施形態に係るメモリアクセス制御装置104は、例えば、図8に示す従来のメモリアクセス制御装置のようなライトアドレス用バッファとライトデータ用バッファを備える必要が無い。従って、第2の実施形態に係るメモリアクセス制御装置104は、SIMDプロセッサ108の外部アクセス用レジスタ114を利用するが、回路規模を削減できる。
【0045】
[3.第3の実施形態]
3.1.構成
図5及び図6は、本発明の第3の実施形態に係る画像データ転送システム202、及び、その画像データ転送システム202に含まれるメモリアクセス制御装置204の構成を示すブロック図である。特に、図5は、リード動作を行うときの、画像データ転送システム202及びメモリアクセス制御装置204の動作の様子を説明するためのブロック図であり、図6は、ライト動作を行うときの、画像データ転送システム202及びメモリアクセス制御装置204の動作の様子を説明するためのブロック図である。
【0046】
図5及び図6に示す第3の実施形態に係る画像データ転送システム202は、メモリアクセス制御装置204、メモリ206、及びプロセッサ208を含む。更に、メモリアクセス制御装置204は、メモリ制御回路212、バッファ制御回路210、及びバッファ214で構成される。
【0047】
特に、第3の実施形態に係るメモリアクセス制御装置204は、バーストリード動作とバーストライト動作を行うように設定されている装置である。具体的には、メモリアクセス制御装置204は、バッファ214に格納された一つの先頭アドレスに対して、4回連続してリード動作を実行して、4個のデータをメモリ206より取得するバーストリード動作を行うように設定されている。例えば、先頭アドレスA0が一つバッファ214に設定されれば、先頭アドレスA0に対応するデータD0と、アドレスA0の後続アドレスに対応するデータD1,D2,D3を、メモリ206より取得するように設定されている。
【0048】
更に、メモリアクセス制御装置204は、バッファ214に格納された一つの先頭アドレスと4個のライトするデータに対して、4回連続してライト動作を実行して、メモリにデータをライトするバーストライト動作を行うように設定されている。例えば、先頭アドレスA0と、先頭アドレスA0に対するデータD0と、アドレスA0の後続アドレスに対応するデータD1,D2,D3とが、連続してバッファ214に設定されれば、メモリ206のアドレスA0にデータD0を、アドレスA0から順次後続するアドレスに順次データD1、D2、D3を、書き込むように設定されている。
【0049】
3.2.動作
3.2.1.バーストリード動作
図5を用いて第3の実施形態に係るメモリアクセス制御装置204のバーストリード動作について説明する。メモリアクセス制御装置204がリード動作を行う場合には、プロセッサ208は、バッファ制御回路210に対して、メモリ206へのリード動作で使用する、取得したいデータに対応する先頭アドレス(A0,A4,A8,…)のバッファ14への設定を指示する。バッファ制御回路210は、バッファ214に対して、指示された先頭アドレス(A0,A4,A8,…)を設定する。図5に示すように、先頭アドレスは、3つおきの領域に設定される。
【0050】
次に、プロセッサ208からメモリアクセス制御装置204に対して、バーストリード動作の要求が発行される。メモリアクセス制御装置204は、プロセッサ208からのバーストリード動作の要求を受け付ける。
【0051】
そうすると、バッファ制御回路210は、バッファ214に格納されている先頭アドレス(例えば、アドレスA0)を取り出して、先頭アドレスとバーストリード動作の要求とをメモリ制御回路212に対して出力する。メモリ制御回路212は、バッファ制御回路210より、先頭アドレスとバーストリード動作の要求とを受け付けると、メモリ206に対して、先頭アドレスとリード動作のために必要な制御信号とを出力する。そして、メモリ制御回路212は、メモリより取得したデータ(例えば、先頭アドレスA0に対応したデータD0)を、バッファ制御回路210に対して出力する。バッファ制御回路210は、メモリ206より取得したデータをメモリ制御回路212より受け付けると、元々アドレスが格納されていたバッファに、取得したデータを格納する。
【0052】
この後、バッファ制御回路210は、先頭アドレスを順次インクリメントしたアドレスとバーストリード動作の要求とをメモリ制御回路212に対して出力する。メモリ制御回路212は、バッファ制御回路210より、順次インクリメントされたアドレスとバーストリード動作の要求とを受け付けると、メモリ206に対して、順次インクリメントされたアドレスとリード動作のために必要な制御信号とを出力する。そして、メモリ制御回路212は、メモリより取得したデータ(例えば、D0に続くD1,D2,D3)を、バッファ制御回路に対して出力する。バッファ制御回路210は、メモリ206より取得したデータをメモリ制御回路212より受け付けると、元々アドレスが格納されていたバッファの後続する領域に、順次データを格納する。一度のバーストリード動作で、バッファ制御回路210により、このようなメモリ206へのデータ取得処理が4回実行される。
【0053】
3.2.2.バーストライト動作
図6を用いて第3の実施形態に係るメモリアクセス制御装置204のバーストライト動作について説明する。メモリアクセス制御装置204がライト動作を行う場合には、プロセッサ208は、バッファ制御回路210に対して、メモリ206へのライト動作で使用する、先頭アドレス(A0,A4,A8,…)と、データ(D0,D1,D2,D3,D4,D5,D6,D7…)の、バッファ214への設定を指示する。バッファ制御回路210は、バッファ214に対して、指示された先頭アドレス(A0,A4,A8,…)とデータ(D0,D1,D2,D3,D4,D5,D6,D7…)を設定する。図6に示すように、先頭アドレスは、4つおきの領域に設定され、ライト動作で使用するデータは、先頭アドレスが設定される領域に挟まれる4つの領域に順次設定される。
【0054】
次に、プロセッサ208からメモリアクセス制御装置204に対して、バーストライト動作の要求が発行される。メモリアクセス制御装置204は、プロセッサ208からのバーストライト動作の要求を受け付ける。
【0055】
そうすると、バッファ制御回路210は、バッファ214に格納されている先頭アドレス(例えば、アドレスA0)と、4個のデータ(例えば、先頭アドレスA0に対するデータD0と、アドレスA0の後続アドレスに対応するデータD1,D2,D3)のうち先頭アドレスに対応するデータ(例えば、データD0)とを取り出して、先頭アドレスとデータとバーストライト要求とをメモリ制御回路212に対して出力する。メモリ制御回路212は、バッファ制御回路210より、先頭アドレスとデータとバーストライト動作の要求とを受け付けると、メモリ206に対して、先頭アドレスとデータとライト動作のために必要な制御信号とを出力する。それにより、メモリ206にそのデータが、ライトされる。
【0056】
この後、バッファ制御回路210は、4個のデータ(例えば、D0,D1,D2,D3)のうち先頭アドレス(A0)を順次インクリメントしたアドレスに対応するデータ(例えば、D1,D2,D3のいずれか)を取り出して、順次インクリメントされたアドレスとデータとバーストライト要求とをメモリ制御回路212に対して出力する。メモリ制御回路212は、バッファ制御回路210より、順次インクリメントされたアドレスとデータとバーストライト動作の要求とを受け付けると、メモリ206に対して、順次インクリメントされたアドレスとデータとライト動作のために必要な制御信号とを出力する。それにより、メモリ206にそのデータが、ライトされる。一度のバーストライト動作で、バッファ制御回路210により、このようなメモリ206へのデータ出力処理が4回実行される。
【0057】
このように、バーストリード動作とバーストライト動作を行うように設定されている第3の実施形態に係るメモリアクセス制御装置204も、リード動作及びライト動作を一つのバッファ214のみにより実行できる。
【0058】
3.3.まとめ
以上のように、第3の実施形態に係るメモリアクセス制御装置204も、一つのバッファでリード動作及びライト動作を実行できる。このため、第3の実施形態に係るメモリアクセス制御装置204は、例えば、図8に示す従来のメモリアクセス制御装置のようなライトアドレス用バッファとライトデータ用バッファを備える必要が無い。従って、第3の実施形態に係るメモリアクセス制御装置204は回路規模を削減できる。
【0059】
なお、第3の実施形態に係るメモリアクセス制御装置204において、バッファとして、SIMDプロセッサの外部アクセス用レジスタが利用され、プロセッサとしてSIMDプロセッサのグローバルプロセッサが利用される、という構成であってもよい(図2、図3参照)。
【産業上の利用可能性】
【0060】
本発明は、デジタル複写機、デジタルテレビジョン受像機、及びファクシミリなどの画像処理を行う装置において利用することができる。
【符号の説明】
【0061】
2、102、202・・・画像データ転送システム、4、104、204・・・メモリアクセス制御システム、6、106、206・・・メモリ、8・・・プロセッサ、10、110、210・・・バッファ制御回路、12、112、212・・・メモリ制御回路、14・・・バッファ、108・・・SIMDプロセッサ、114・・・外部アクセス用レジスタ、116・・・グローバルプロセッサ。
【先行技術文献】
【特許文献】
【0062】
【特許文献1】特開平08−328941号公報
【特許文献2】特開2007−304832号公報
【特許文献3】特開平10−326342号公報
【特許文献4】特許第3039391号公報

【特許請求の範囲】
【請求項1】
外部メモリに対してリード動作とライト動作を実行するメモリアクセス制御装置であって、
リード動作とライト動作時のアドレスとデータを格納するバッファと、
前記バッファへのアドレスとデータの入出力を制御するバッファ制御回路と、
外部メモリへのアドレスとデータの入出力を制御するメモリ制御回路とを備え、
前記バッファ制御回路は、
リード動作を実行する場合には、外部メモリへのリード動作で使用するアドレスをバッファに設定し、前記バッファに設定された外部メモリのアドレスに基づいて、前記メモリ制御回路を介して外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
ライト動作を実行する場合には、外部メモリへのライト動作で使用するアドレス及びデータを前記バッファに設定し、前記バッファに設定された外部メモリのアドレスと外部メモリにライトするデータとに基づいて、前記メモリ制御回路を介して外部メモリに対してライト動作を行うことを特徴とするメモリアクセス制御装置。
【請求項2】
前記バッファが、
複数のプロセッサエレメントにより構成されるプロセッサエレメント部と、プロセッサエレメントに制御信号を供給するグローバルプロセッサとを有する、SIMDプロセッサにおける、外部アクセス用レジスタであることを特徴とする請求項1に記載のメモリアクセス制御装置。
【請求項3】
前記バッファ制御回路は、
バーストリード動作を実行する場合には、前記バッファに設定された外部メモリのアドレスとそれを順次インクリメントしたアドレスとに基づいて、前記メモリ制御回路を介して外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
バーストライト動作を実行する場合には、前記バッファに格納された、外部メモリのアドレスとそれを順次インクリメントしたアドレスに対応する外部メモリにライトする複数データとに基づいて、前記メモリ制御回路を介して外部メモリに対して連続してライト動作を行うことを特徴とする請求項1又は2に記載のメモリアクセス制御装置。
【請求項4】
外部メモリに対してリード動作とライト動作を実行するメモリアクセス制御装置におけるバッファ制御方法であって、
リード動作を実行する場合には、外部メモリへのリード動作で使用するアドレスをバッファに設定し、前記バッファに設定された外部メモリのアドレスに基づいて、外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
ライト動作を実行する場合には、外部メモリへのライト動作で使用するアドレス及びデータを前記バッファに設定し、前記バッファに設定された外部メモリのアドレスと外部メモリにライトするデータとに基づいて、外部メモリに対してライト動作を行う
ことを特徴とするバッファ制御方法。
【請求項5】
バーストリード動作を実行する場合には、外部メモリのアドレスとそれを順次インクリメントしたアドレスとに基づいて、外部メモリに対してリード動作を行ってデータを取得し、取得したデータを前記バッファに格納し、
バーストライト動作を実行する場合には、外部メモリのアドレスとそれを順次インクリメントしたアドレスに対応する外部メモリにライトする複数データとに基づいて、外部メモリに対して連続してライト動作を行う
ことを特徴とする請求項4に記載のバッファ制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−190232(P2012−190232A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−52857(P2011−52857)
【出願日】平成23年3月10日(2011.3.10)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】