JP2005236946A - Accessing method to dram - Google Patents
Accessing method to dram Download PDFInfo
- Publication number
- JP2005236946A JP2005236946A JP2004226872A JP2004226872A JP2005236946A JP 2005236946 A JP2005236946 A JP 2005236946A JP 2004226872 A JP2004226872 A JP 2004226872A JP 2004226872 A JP2004226872 A JP 2004226872A JP 2005236946 A JP2005236946 A JP 2005236946A
- Authority
- JP
- Japan
- Prior art keywords
- bank
- image data
- stored
- data
- dram
- 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
- Color Television Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、MPEG処理におけるDRAMアクセス方法に関する。 The present invention relates to a DRAM access method in MPEG processing.
MPEG(Moving Picture Expert Group)による圧縮技術においては、2次元画像の中の、縦16ピクセル×横16ピクセルからなるマクロブロック単位に処理が行われる。したがって、メモリに格納された画像データに対しては、このマクロブロック単位の画像データに対して高速に処理できることが望ましい。 In a compression technique based on MPEG (Moving Picture Expert Group), processing is performed in units of macroblocks of 16 pixels in the vertical direction and 16 pixels in the horizontal direction in the two-dimensional image. Therefore, it is desirable that the image data stored in the memory can be processed at high speed with respect to the image data in units of macroblocks.
しかし、CCD等の画像入力装置からラスタ順で転送された画像データは、一般には、2次元画像イメージでメモリに格納される。つまり、マクロブロック単位の画像は、そのまま2次元画像イメージとして、メモリ内の複数行の記憶領域に格納されることになる。このため、マクロブロック単位の画像データを読み出すためには、複数行の記憶領域にアクセスする必要がある。 However, image data transferred in raster order from an image input device such as a CCD is generally stored in a memory as a two-dimensional image. That is, an image in units of macroblocks is stored as it is as a two-dimensional image image in a plurality of rows of storage areas in the memory. For this reason, in order to read image data in units of macroblocks, it is necessary to access a plurality of rows of storage areas.
ここで、メモリとしてSRAM(Static Random Access Memory)を使用した場合には、複数行の記憶領域に対しても高速にアクセス可能であるが、SRAMはコストが高いという問題がある。そこで、コストの面から、DRAM(Dynamic Random Access Memory)が採用されることとなるが、行アドレスを切り替えて、DRAMの複数行の記憶領域にアクセスする処理は、処理速度が遅いという問題がある。 Here, when an SRAM (Static Random Access Memory) is used as a memory, it is possible to access a plurality of rows of storage areas at a high speed, but there is a problem that the SRAM is expensive. Therefore, DRAM (Dynamic Random Access Memory) will be adopted from the viewpoint of cost, but the processing of switching the row address and accessing the storage area of a plurality of rows of the DRAM has a problem that the processing speed is slow. .
そこで、マクロブロック単位の画像データに対して高速にアクセスするための技術が下記特許文献1において開示されている。
Therefore, a technique for accessing macroblock unit image data at high speed is disclosed in
上記特許文献1では、ラスタ順で入力される画像データをメモリに格納する際に、あらかじめ画像データを並べ替え、マクロブロック単位の画像データが、メモリの同一行に格納されるようにしたものである。
In
しかしながら、上記特許文献1に開示された方法では、メモリに対する書き込み制御が複雑になるという問題がある。また、上記特許文献2では、メモリの2つのバンクに交互にアクセスし、DRAMへのプリチャージによるオーバヘッドを隠蔽する技術が開示されているが、マクロブロック単位の画像データに対するアクセスを考慮したものではなく、マクロブロック単位での画像アクセスを高速化させることはできない。
However, the method disclosed in
そこで、本発明は前記問題点に鑑み、DRAMに格納されたマクロブロックの画像データに対して高速にアクセスする効率的な方法を提供することを目的とする。 In view of the above problems, an object of the present invention is to provide an efficient method for accessing macroblock image data stored in a DRAM at high speed.
上記課題を解決するため、請求項1記載の発明は、第1バンクおよび第2バンクを備えるDRAMにアクセスする方法であって、MPEGの処理対象である2次元画像をラスタ順で入力する第1工程と、前記2次元画像の行方向のデータについては8ピクセルごとに前記第1バンクおよび前記第2バンクを交互に切り替えながら前記DRAMに格納し、前記2次元画像の列方向のデータについては前記DRAMの同一バンクに格納する第2工程と、を備えることを特徴とする。
In order to solve the above-mentioned problem, the invention described in
請求項2記載の発明は、請求項1に記載のDRAMアクセス方法であって、さらに、前記第2工程によって格納された画像データに対して前記第1バンクと前記第2バンクを交互に切り替えながら8ピクセル単位でアクセスすることにより、縦16ピクセル×横16ピクセルのMPEG処理用のマクロブロックにアクセスする第3工程、を備えることを特徴とする。 A second aspect of the present invention is the DRAM access method according to the first aspect, wherein the first bank and the second bank are alternately switched with respect to the image data stored in the second step. A third step of accessing a macroblock for MPEG processing of 16 pixels vertically by 16 pixels horizontally by accessing in units of 8 pixels is provided.
請求項3記載の発明は、請求項2に記載のDRAMアクセス方法であって、前記第3工程は、前記第1バンクに格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の8ピクセルの画像データにアクセスした後、前記第2バンクに格納されたラスタ順で次の8ピクセルの画像データにアクセスし、次に、前記第1バンクに格納されたマクロブロックにおける第m+1行目の8ピクセルの画像データにアクセスした後、前記第2バンクに格納されたラスタ順で次の8ピクセルの画像データにアクセスする工程、を含むことを特徴とする。 According to a third aspect of the present invention, in the DRAM access method according to the second aspect, in the third step, the mth row (m is 0 to 14) in the macroblock stored in the first bank. Integer) 8-pixel image data, then access the next 8-pixel image data in raster order stored in the second bank, and then access the second macroblock stored in the first bank. and accessing the next 8-pixel image data in the raster order stored in the second bank after accessing the 8-pixel image data in the (m + 1) th row.
請求項4記載の発明は、請求項1に記載のDRAMアクセス方法であって、前記第2工程は、前記2次元画像の第n行目(nは0以上の整数)の画像データを、前記第1バンクおよび前記第2バンクの第n行目の記憶領域に格納し、第n+1行目の画像データを、前記第1バンクおよび前記第2バンクの第n+1行目の記憶領域に格納する工程、を含むことを特徴とする。 According to a fourth aspect of the present invention, in the DRAM access method according to the first aspect, in the second step, the image data of the nth row (n is an integer of 0 or more) of the two-dimensional image is Storing in the storage area of the nth row of the first bank and the second bank, and storing the image data of the (n + 1) th row in the storage area of the (n + 1) th row of the first bank and the second bank. , Including.
請求項5記載の発明は、請求項4に記載のDRAMアクセス方法であって、前記第3工程は、前記第1バンクの第n行目に格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の8ピクセルの画像データにアクセスした後、前記第2バンクの第n行目に格納されたラスタ順で次の8ピクセルの画像データにアクセスし、次に、前記第1バンクの第n+1行目に格納されたマクロブロックにおける第m+1行目の8ピクセルの画像データにアクセスした後、前記第2バンクの第n+1行目に格納されたラスタ順で次の8ピクセルの画像データにアクセスする工程、を含むことを特徴とする。 According to a fifth aspect of the present invention, in the DRAM access method according to the fourth aspect, in the third step, in the macroblock stored in the nth row of the first bank, the mth row (m is (E.g., an integer from 0 to 14), the next 8-pixel image data is accessed in the raster order stored in the nth row of the second bank, and then the second After accessing the image data of the 8th pixel of the (m + 1) th row in the macro block stored in the (n + 1) th row of the 1 bank, the next 8 pixels in the raster order stored in the (n + 1) th row of the 2nd bank are accessed. Accessing image data.
請求項6記載の発明は、請求項1ないし請求項5のいずれかに記載のDRAMアクセス方法であって、前記DRAMは1アドレスに16ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する4つのアドレスに対して8ピクセルの画像データが格納されることを特徴とする。 A sixth aspect of the present invention is the DRAM access method according to any one of the first to fifth aspects, wherein the DRAM is capable of storing 16-bit data at one address, and each of the two-dimensional images is stored. Each pixel includes 8-bit information, so that image data of 8 pixels is stored for each of four consecutive addresses in the same row for the first and second banks of the DRAM. And
請求項7記載の発明は、請求項6に記載のDRAMアクセス方法であって、前記DRAMに対してラスタ順で連続する8ピクセルの画像データが、バースト転送されることを特徴とする。 A seventh aspect of the present invention is the DRAM access method according to the sixth aspect, wherein image data of 8 pixels continuous in a raster order is burst-transferred to the DRAM.
請求項8記載の発明は、請求項6または請求項7に記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して2ピクセル分のYデータが格納されることを特徴とする。
The invention according to
請求項9記載の発明は、請求項6ないし請求項8のいずれかに記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対して1組のUデータとVデータが格納されることを特徴とする。
The invention according to claim 9 is the DRAM access method according to any one of
請求項10記載の発明は、第1バンクおよび第2バンクを備えるDRAMにアクセスする方法であって、MPEGの処理対象である2次元画像をラスタ順で入力する第1工程と、前記2次元画像の行方向のデータについては16ピクセルごとに前記第1バンクおよび前記第2バンクを交互に切り替えながら前記DRAMに格納し、前記2次元画像の列方向のデータについては1行ごとに前記第1バンクおよび前記第2バンクが交互となるように前記DRAMに格納する第2工程と、を備えることを特徴とする。
The invention according to
請求項11記載の発明は、請求項10に記載のDRAMアクセス方法であって、さらに、前記第2工程によって格納された画像データに対して前記第1バンクと前記第2バンクを交互に切り替えながら16ピクセル単位でアクセスすることにより、縦16ピクセル×横16ピクセルのMPEG処理用のマクロブロックにアクセスする第3工程、を備えることを特徴とする。
The invention according to
請求項12記載の発明は、請求項11に記載のDRAMアクセス方法であって、前記第3工程は、前記第1バンクに格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の16ピクセルの画像データにアクセスした後、次に、前記第2バンクに格納されたマクロブロックにおける第m+1行目の16ピクセルの画像データにアクセスする工程、を含むことを特徴とする。 A twelfth aspect of the present invention is the DRAM access method according to the eleventh aspect, wherein the third step includes the m-th row (m is 0 or more and 14 or less) in the macroblock stored in the first bank. After accessing the 16-pixel image data of (integer), the step of accessing the 16-pixel image data of the (m + 1) th row in the macroblock stored in the second bank is then included.
請求項13記載の発明は、請求項11または請求項12に記載のDRAMアクセス方法であって、前記第3工程は、2次元画像上において隣り合うマクロブロックに対して連続してアクセスする際には、隣り合うマクロブロックについて、列方向のアクセス順序を逆方向とすることを特徴とする。 A thirteenth aspect of the present invention is the DRAM access method according to the eleventh or twelfth aspect, wherein the third step is performed when successive macroblocks adjacent to each other on a two-dimensional image are accessed. Is characterized in that the access order in the column direction is reversed for adjacent macroblocks.
請求項14記載の発明は、請求項12に記載のDRAMアクセス方法であって、前記第3工程は、請求項2に記載の工程によりマクロブロックに対してアクセスした後、そのマクロブロックに隣り合うマクロブロックに対して連続してアクセスする際には、前記第1バンクに格納されたマクロブロックにおける第k行目(kは1以上15以下の整数)の16ピクセルの画像データにアクセスした後、次に、前記第2バンクに格納されたマクロブロックにおける第k−1行目の16ピクセルの画像データにアクセスする工程、を含むことを特徴とする。 A fourteenth aspect of the present invention is the DRAM access method according to the twelfth aspect, wherein the third step is adjacent to the macroblock after the macroblock is accessed by the step according to the second aspect. When accessing the macroblock continuously, after accessing the 16th pixel image data of the kth row (k is an integer of 1 to 15) in the macroblock stored in the first bank, Next, the method includes a step of accessing image data of 16 pixels in the (k−1) th row in the macro block stored in the second bank.
請求項15記載の発明は、請求項10ないし請求項14のいずれかに記載のDRAMアクセス方法であって、前記DRAMは1アドレスに32ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する4つのアドレスに対して16ピクセルの画像データが格納されることを特徴とする。 A fifteenth aspect of the present invention is the DRAM access method according to any one of the tenth to fourteenth aspects, wherein the DRAM can store 32-bit data at one address, and each of the two-dimensional images Each pixel includes 8-bit information, so that the first and second banks of the DRAM store image data of 16 pixels at four consecutive addresses in the same row. And
請求項16記載の発明は、請求項10ないし請求項14のいずれかに記載のDRAMアクセス方法であって、前記DRAMは1アドレスに16ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する8つのアドレスに対して16ピクセルの画像データが格納されることを特徴とする。 A sixteenth aspect of the present invention is the DRAM access method according to any one of the tenth to fourteenth aspects, wherein the DRAM is capable of storing 16-bit data at one address, and each of the two-dimensional images is stored. Each pixel includes 8-bit information, so that the first and second banks of the DRAM store 16-pixel image data for eight consecutive addresses in the same row. And
請求項17記載の発明は、請求項15または請求項16に記載のDRAMアクセス方法であって、前記DRAMに対してラスタ順で連続する16ピクセルの画像データが、バースト転送されることを特徴とする。
The invention according to claim 17 is the DRAM access method according to
請求項18記載の発明は、請求項15に記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して4ピクセル分のYデータが格納されることを特徴とする。
The invention according to
請求項19記載の発明は、請求項15または請求項18に記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対してUデータとVデータの組が2組格納されることを特徴とする。
The invention described in claim 19 is the DRAM access method according to
請求項20記載の発明は、請求項16に記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して2ピクセル分のYデータが格納されることを特徴とする。
The invention according to
請求項21記載の発明は、請求項16または請求項20に記載のDRAMアクセス方法であって、前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対して1組のUデータとVデータとが格納されることを特徴とする。
The invention according to claim 21 is the DRAM access method according to
本発明によれば、ラスタ順の2次元画像データを、第1バンクと第2バンクを切り替えながらDRAMに格納するので、格納されている画像データについて異なる行の画像データに連続的にアクセスが必要となる場合でも、一方のバンクにアクセスしている間に他方のバンクの行アドレスを変更することが可能となり、アクセス効率が向上する。 According to the present invention, since the two-dimensional image data in the raster order is stored in the DRAM while switching between the first bank and the second bank, it is necessary to continuously access the image data in different rows for the stored image data. Even in this case, it becomes possible to change the row address of the other bank while accessing one bank, and the access efficiency is improved.
また、MPEG処理におけるマクロブロック単位で画像データにアクセスする場合には、第1バンクと第2バンクを切り替えつつ効率的にDRAMにアクセスすることができるので、MPEG処理の高速化を図ることが可能である。 Further, when accessing image data in units of macroblocks in MPEG processing, the DRAM can be accessed efficiently while switching between the first bank and the second bank, so that the speed of MPEG processing can be increased. It is.
{第1の実施の形態}
以下、図面を参照しつつ本発明の第1の実施の形態について説明する。図1は、画像処理装置の全体概略図である。画像処理装置は、例えば、CCD等のイメージセンサからなる入力部1、入力部1が出力した画像データを格納するSDRAM(Synchronous DRAM)4、SDRAM4に格納された画像データに対してMPEG規格に基づく圧縮処理を行うMPEG処理部2、入力部1が出力した画像データをSDRAM4に格納する際、およびMPEG処理部2がSDRAM4に格納されている画像データにアクセスする際に、SDRAM4に対するアクセス制御を行うメモリ制御部3とを備えている。
{First embodiment}
The first embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is an overall schematic diagram of an image processing apparatus. The image processing apparatus is based on, for example, an
ここで、入力部1が出力する画像データは、ラスタ順で出力される。この明細書において、ラスタ順とは、2次元画像が1次元の画像データとして連続的に出力される手順であり、詳しくは、2次元画像の左上左端のピクセルを先頭に最上位行の画像データが順次転送され、右端のピクセルまで転送した後は、次の行の画像データを左端から右端まで順次転送し、次々に、各行の画像データを1次元の画像データとして転送する手順を示す。また、ラスタ順には、プログレッシブ転送のみならず、インタレース転送も含まれる。インタフレース転送の場合には、奇数行の画像データに対する1フィールド分の画像データの転送と、偶数行の画像データに対する1フィールド分の画像データの転送とが交互に行われることになる。
Here, the image data output by the
また、第1の実施の形態におけるSDRAM4は、1アドレスのメモリ領域に対して2バイト(16ビット)のデータを格納可能としている。つまり、第1の実施の形態におけるSDRAM4は、16ビットSDRAMである。また、SDRAM4は、連続する4つのアドレスに対して連続的にデータアクセスを行うバースト転送処理を可能としている。つまり、SDRAM4は、64ビット(4アドレス×16ビット)のデータをバースト転送可能としている。 Further, the SDRAM 4 in the first embodiment can store 2 bytes (16 bits) of data in a memory area of one address. That is, the SDRAM 4 in the first embodiment is a 16-bit SDRAM. The SDRAM 4 is capable of burst transfer processing that continuously accesses data to four consecutive addresses. That is, the SDRAM 4 is capable of burst transfer of 64 bits (4 addresses × 16 bits) of data.
図2は、2次元画像データのピクセル構成を示す図である。ここでは、2次元画像は、横320ピクセル、つまり、1行(水平1ライン)の画像データが320ピクセルである場合を例に説明する。また、この明細書においては、図に示すように、2次元画像の水平方向を行方向と、2次元画像の垂直方向を列方向と対応させて適宜説明する。 FIG. 2 is a diagram illustrating a pixel configuration of two-dimensional image data. Here, a two-dimensional image will be described as an example in which the horizontal 320 pixels, that is, the image data of one row (horizontal one line) is 320 pixels. Further, in this specification, as shown in the figure, the horizontal direction of the two-dimensional image will be described as appropriate in correspondence with the row direction, and the vertical direction of the two-dimensional image will correspond with the column direction.
図2においては、2次元の画像データをブロックに区分して表示している。ここで、列方向の1区分は画像の1行(水平1ライン)に対応している。また、行方向の1区分は、8ピクセル分の画像データに対応している。つまり、1ブロックは8ピクセル分の画像データの集合である。そして、各ブロック内に表示されている0〜7pix、8〜15pix等の表示は、最上位行の左端のピクセルを0番目の画像として、全ピクセルに対してラスタ順に付与されたピクセル番号である。したがって、画像データが横320ピクセル×縦100ピクセルであれば、ラスタ順に0から31999までの番号が各ピクセルに付与されることになる。 In FIG. 2, two-dimensional image data is displayed divided into blocks. Here, one section in the column direction corresponds to one row (one horizontal line) of the image. One section in the row direction corresponds to image data for 8 pixels. That is, one block is a set of image data for 8 pixels. The display of 0 to 7 pix, 8 to 15 pix, etc. displayed in each block is a pixel number assigned to all pixels in raster order with the leftmost pixel in the top row as the 0th image. . Therefore, if the image data is 320 pixels wide × 100 pixels high, numbers from 0 to 31999 are assigned to the pixels in raster order.
最上位行(0行目)の左端のブロックは、2次元画像の0行目の0番目から7番目までのピクセルに対応し、その右横のブロックは、2次元画像の0行目の8番目から15番目までのピクセルに対応している。そして、最上位行(0行目)の右端のブロックは、0行目の312番目から319番目までのピクセルに対応し、次の行(1行目)の左端のブロックは、320番目から327番目までのピクセル(これは、2次元画像における1行目の0番目から7番目までのピクセルに対応している。)に対応している。 The leftmost block in the top row (0th row) corresponds to the 0th to 7th pixels in the 0th row of the 2D image, and the right block is the 8th row in the 0th row of the 2D image. It corresponds to the pixels from the 15th to the 15th. The rightmost block of the uppermost row (0th row) corresponds to the 312th to 319th pixels of the 0th row, and the leftmost block of the next row (1st row) corresponds to the 320th to 327th pixels. To the first pixel (this corresponds to the 0th to 7th pixels in the first row in the two-dimensional image).
このようにして、2次元画像をラスタ順に8ピクセルごとにブロック化している。さらに、図に示すように、列方向のブロックがグループ化され、これらグループは、SDRAM4のバンク0とバンク1に交互に格納されるのである。具体的には、図において網掛けされていないブロックのグループはSDRAM4のバンク0に格納され、網掛けされているブロックのグループはSDRAM4のバンク1に格納されるのである。図中、A0,0、B0,0等の表示については、後で説明するが、この2次元画像データがSDRAM4に格納される際に、格納されるメモリ領域(バンク0およびバンク1におけるメモリ領域)のブロック名を示している。
In this way, the two-dimensional image is blocked every 8 pixels in raster order. Further, as shown in the figure, the blocks in the column direction are grouped, and these groups are alternately stored in the
図3は、メモリ制御部3によって、入力部1より出力されたラスタ順の画像データが、SDRAM4に書き込まれる際のタイミング図である。また、図4は、SDRAM4のバンク0に対する書き込み順序を示す図であり、図5は、SDRAM4のバンク1に対する書き込み順序を示す図である。また、図6は、バンク0の各メモリ領域に格納される画像データのピクセル番号(この番号は、前述したように、2次元画像の最上位行(0行目)の左端(0列目)のピクセルを0番目の画像として、全ピクセルに対してラスタ順で付与された番号である。)を示す図であり、図7は、バンク1の各メモリ領域に格納される画像データのピクセル番号を示す図である。
FIG. 3 is a timing chart when the raster control image data output from the
ここで、図4および図5において、メモリ領域a0,0、b0,0等の添え字は、1番目の添え字がメモリ領域の行番号を示し、2番目の添え字がメモリ領域の列番号を示している。したがって、メモリ領域a1,4は、バンク0の1行4列目のメモリ領域を示している。また、図4および図5におけるブロック領域A0,0、B0,0等は、4つのメモリ領域からなるブロックを示している。ブロック領域の添え字は、そのブロック領域に含まれている先頭(左端)のメモリ領域の行番号および列番号に対応している。
4 and 5, the subscripts such as the memory areas a 0,0 and b 0,0 are the first subscript indicating the row number of the memory area, and the second subscript is the memory area. Indicates the column number. Therefore, the memory areas a 1 and 4 indicate the memory area of the first row and the fourth column of the
図3において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から7番目までの8ピクセル分の画像データが、バースト転送される。つまり、1ピクセルの画像データが8ビットであるので、8ピクセル分の画像データ(8ピクセル×8ビット)をバースト転送するのである。この8ピクセル分の画像データは、図4に示すバンク0のブロック領域A0,0に格納される。ブロック領域A0,0は、メモリ領域a0,0、a0,1、a0,2、a0,3からなる領域である。なお、図3において、Bank ADDRESSがバンクアドレス信号を示し、ADDRESSが行および列アドレス信号を示している。また、Bank0およびBank1は、それぞれバンク0およびバンク1に対するデータのアクセスタイミングと、転送されるデータの内容を示している。データの内容(0,1等の数字)は、前述したピクセル番号を示している。
In FIG. 3, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 8 pixels from the 0th to the 7th is burst transferred. . That is, since the image data of 1 pixel is 8 bits, image data for 8 pixels (8 pixels × 8 bits) is burst transferred. The image data for 8 pixels is stored in the block area A 0,0 of
一方、図3に示すように、0番目から7番目までの8ピクセル分の画像データが、ブロック領域A0,0に書き込まれているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域A0,0への書き込み終了後、8番目から15番目までの8ピクセル分の画像データがバースト転送される。この8ピクセル分の画像データは、図5に示す、バンク1のブロック領域B0,0に格納される。ブロック領域B0,0は、メモリ領域b0,0、b0,1、b0,2、b0,3からなる領域である。
On the other hand, as shown in FIG. 3, the bank address is set to “1” at the timing when the image data for 8 pixels from 0th to 7th is written in the block area A 0,0 . Then, after writing to the block area A 0,0 , image data for 8 pixels from the 8th to the 15th is burst transferred. The image data for 8 pixels is stored in the block area B 0,0 of
さらに、8番目から15番目までの8ピクセル分の画像データがブロック領域B0,0に書き込まれているタイミングで、バンクアドレスが「0」に設定される。そして、ブロック領域B0,0への書き込み終了後、16番目から23番目までの8ピクセル分の画像データがバースト転送される。この8ピクセル分の画像データは、列アドレスに「4」が設定されることにより、図4に示すバンク0のブロック領域A0,4に格納される。ブロック領域A0,4は、メモリ領域a0,4、a0,5、a0,6、a0,7からなる領域である。
Further, the bank address is set to “0” at the timing when the image data for 8 pixels from the 8th to the 15th is written in the block area B 0,0 . Then, after writing to the block area B 0,0 , image data for 8 pixels from the 16th to the 23rd is burst transferred. The image data for 8 pixels is stored in the block area A 0,4 of the
そして、ブロック領域A0,4に書き込みが行われているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域A0,4への書き込み終了後、24番目から31番目までの8ピクセル分の画像データがバースト転送される。この8ピクセル分の画像データは、列アドレスに「4」が設定されることにより、図5に示すバンク1のブロック領域B0,4に格納される。ブロック領域B0,4は、メモリ領域b0,4、b0,5、b0,6、b0,7からなる領域である。
The bank address is set to “1” at the timing when writing is performed in the block areas A 0,4 . Then, after writing to the block areas A 0,4 , image data for 8 pixels from the 24th to the 31st is burst transferred. The image data for 8 pixels is stored in the block area B 0,4 of the
以上の処理により、図6および図7に示すように、バンク0のブロック領域A0,0、A0,4およびバンク1のブロック領域B0,0、B0,4に0番目から31番目までの32ピクセル分の画像データが格納される。この後は、同様に、バンク0とバンク1を切り替えながら、8ピクセル単位で画像データをバースト転送し、順次SDRAM4に画像データを格納するのである。図4および図5における矢印は、それぞれバンク0およびバンク1への格納順序を示している。上述した手順により、2次元画像の0行目の画像データが矢印の方向に格納された後、1行目の画像データが同様に矢印の方向に格納され、順次、各行の画像データが格納される。SDRAM4に対する書き込み手順を、ブロック領域を用いて表現すると、ブロック領域A0,0→B0,0→A0,4→B0,4→A0,8→B0,8→A0,12→・・・の順で、2次元画像データを順次格納することになる。
With the above processing, as shown in FIGS. 6 and 7, the block areas A 0,0 and A 0,4 of the bank 0 and the block areas B 0,0 and B 0,4 of the
このように、MPEG処理の対象となる2次元画像データをバンク0とバンク1とを切り替えながら、2次元画像イメージでSDRAM4に格納する。そして、図2にも示したように、2次元画像における列方向については、画像データが全て同じバンクに格納されるようにするのである。このため、2次元画像のマクロブロックに注目した場合、マクロブロック内の画像データは、SDRAM4の複数の行にまたがって格納されることとなるが、アクセスする行を切り替える場合にも、空き時間は発生しない。このアクセス手順については、後で具体的に説明するが、バンク1のデータにアクセスしているタイミングで、バンク0についてアクセスする行を切り替え、バンク0のデータにアクセスしているタイミングで、バンク1についてアクセスする行を切り替えることが可能となるからである。
In this way, 2D image data to be subjected to MPEG processing is stored in the SDRAM 4 as a 2D image image while switching between
なお、この実施の形態では、図6および図7で示したように、2次元画像データの水平1ライン分の画像データは、SDRAM4のバンク0の同一行およびバンク1の同一行のメモリ領域に格納し、2次元画像データの水平ラインが次の水平ラインに移動すると、格納先のバンク0とバンク1のメモリ領域も行を変更するようにしている。このような格納方法は、メモリ領域の有効利用という点ではデメリットがあるが、回路構成をシンプルにすることができるという点でメリットがある。したがって、メモリ領域に余裕がある場合には有効な方法である。
In this embodiment, as shown in FIGS. 6 and 7, the image data for one horizontal line of the two-dimensional image data is stored in the memory areas of the same row of
ただし、上記格納方法は一例であり、これに限定されることはない。つまり、ラスタ順で入力する2次元画像の1行目の画像データを、SDRAM4の1行目(バンク0あるいはバンク1)に格納した後、2ライン目の画像データを続けて、SDRAM4の1行目に格納するような方法をとってもよい。同様に、SDRAM4の各行において、画像データの水平ラインに対応して格納する行を変更させることはなく、順次、画像データを詰めて格納するのである。そして、この場合にも、一度に転送される8ピクセル分の画像データ(つまり、1バースト転送分の画像データ)はSDRAM4のいずれかのバンクの同一行に格納されるようにしておけばよい。これにより、バンク0およびバンク1の一方のデータにアクセスしているタイミングで、他方のバンクの行アドレスを変更するようにすれば、処理速度を高速にすることが可能である。あるいは逆に、2次元画像の水平1ラインのデータサイズがSDRAM4の1行に格納可能なサイズ(バンク0とバンク1の1行に格納可能なサイズの和)より大きくてもよい。この場合にも、8ピクセル単位で画像データをいずれかのバンクの同一行に格納するようにし、2次元画像の水平1ラインの途中で各バンクの行アドレスを変更するようにしても問題はない。つまり、本発明は、本質的には、マクロブロックを構成する1行の画像データのうち、その半分の8ピクセル分の画像データが全て一方のバンクの同一行に格納され、これに続く残り半分の8ピクセル分の画像データが全て他方のバンクの同一行に格納され、さらに、列方向のデータは全て同じバンクに格納されることである。このような格納方法をとれば、後述するように、マクロブロック単位での画像データに対するアクセスにおいて、いずれかのバンクの行アドレスを変更する必要が生じた場合でも、その直前に必ず他方のバンクに対するアクセス処理が介入するので、その間に行アドレスを変更することで、空き時間の発生を無くすことができるのである。
However, the above storage method is an example, and the present invention is not limited to this. That is, after the image data of the first line of the two-dimensional image input in raster order is stored in the first line (
次に、MPEG処理部2がMPEG圧縮処理を行うために、SDRAM4に格納された画像データにマクロブロック単位でアクセスする処理について説明する。なお、このアクセス処理には、MPEG処理部2がMPEG圧縮処理を行う対象であるマクロブロック単位の画像データを読み出す処理と、マクロブロック単位の画像データを書き込む処理がある。
Next, processing for accessing the image data stored in the SDRAM 4 in units of macro blocks in order for the
図8は、メモリ制御部3によって、SDRAM4に格納された画像データにアクセスする処理のタイミング図である。また、図9は、SDRAM4のバンク0に対するアクセス順序を示す図であり、図10は、SDRAM4のバンク1に対するアクセス順序を示す図である。なお、図8ないし図10は、マクロブロック単位での画像データの読み出し処理と書き込み処理に共通の特徴を示す図である。また、図9および図10における各メモリ領域a0,0、b0,0等は、図4および図5における各メモリ領域a0,0、b0,0等に対応しており、上述した書き込み処理により、図6および図7で示したような配列で2次元画像データが格納されているものとする。
FIG. 8 is a timing chart of a process for accessing the image data stored in the SDRAM 4 by the
まず、マクロブロック単位での画像データの読み出し処理について説明する。図8において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から7番目までの8ピクセル分の画像データが、バースト転送される。具体的には、図9で示すバンク0のブロック領域A0,0に格納されている8ピクセル分の画像データが読み出される。なお、図8におけるBank ADDRESSがバンクアドレス信号を示し、ADDRESSが行および列アドレス信号を示している。また、Bank0およびBank1は、それぞれバンク0およびバンク1に対するデータのアクセスタイミングと、転送されるデータの内容を示している。データの内容(0,1等の数字)は、前述したピクセル番号を示している。
First, image data read processing in units of macroblocks will be described. In FIG. 8, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 8 pixels from the 0th to the 7th is burst transferred. . Specifically, the image data for 8 pixels stored in the block area A 0,0 of
一方、図8に示すように、ブロック領域A0,0の画像データに対する読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定され、ブロック領域A0,0からの読み込み処理終了後、8番目から15番目までの8ピクセル分の画像データがバースト転送される。具体的には、図10で示すバンク1のブロック領域B0,0に格納されている8ピクセル分の画像データが読み出される。
On the other hand, as shown in FIG. 8, at the timing when the readout process for the image data of the block area A 0,0 is being performed, the bank address is set to "1", termination process of reading from the block area A 0,0 Thereafter, image data for 8 pixels from the 8th to the 15th is burst transferred. Specifically, the image data for 8 pixels stored in the block area B 0,0 of
さらに、図8に示すように、ブロック領域B0,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「0」に設定されるとともに行アドレスに「1」が設定され、ブロック領域B0,0からの読み込み処理終了後、320番目から327番目までの8ピクセル分の画像データがバースト転送される。具体的には、図9で示すバンク0のブロック領域A1,0に格納されている8ピクセル分の画像データが読み出される。ブロック領域A1,0は、メモリ領域a1,0、a1,1、a1,2、a1,3からなる領域である。ここで、バンク0については、ブロック領域A0,0に対するアクセス処理の後、ブロック領域A1,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク1のブロック領域B0,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Further, as shown in FIG. 8, at the timing when the image data read processing of the block area B 0,0 is performed, the bank address is set to “0” and the row address is set to “1”. After the reading process from the block area B 0,0 is completed, the image data for 8 pixels from the 320th to the 327th is burst transferred. Specifically, the image data for 8 pixels stored in the block area A1,0 of the
そして、ブロック領域A1,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定されるとともに行アドレスに「1」が設定され、ブロック領域A1,0からの読み込み処理終了後、328番目から335番目までの8ピクセル分の画像データがバースト転送される。具体的には、図10で示すバンク1のブロック領域B1,0に格納されている8ピクセル分の画像データが読み出される。ブロック領域B1,0は、メモリ領域b1,0、b1,1、b1,2、b1,3からなる領域である。同様に、バンク1については、ブロック領域B0,0に対するアクセス処理の後、ブロック領域B1,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク0のブロック領域A1,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Then, at the timing when the readout processing of the image data of the block area A 1, 0 is being performed, "1" is set to a row address together with the bank address is set to "1", the block area A 1, 0 After the reading process ends, image data for 8 pixels from the 328th to the 335th is burst transferred. Specifically, the image data for 8 pixels stored in the block area B1,0 of the
以上の処理により、図6および図7に示したバンク0のブロック領域A0,0、A1,0およびバンク1のブロック領域B0,0、B1,0に格納されている0番目から15番目までの16ピクセル分の画像データおよび320番目から335番目までの16ピクセル分の画像データが読み出される。この画像データは、図2の画像イメージに対応させると、行方向が16ピクセルであって、列方向については同じ列の2行分の画像データである。つまり、この後、同様に、バンク0とバンク1を切り替えながら、8ピクセル単位で画像データをバースト転送し、順次、行方向が16ピクセルで、同じ列の画像データを読み出すことにより、2次元的なブロックの画像データを連続的に読み出すことが可能となるのである。そして、このような処理を16行分実行することにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを連続的に読み出すことが可能となるのである。
Through the above processing, from the 0th stored in block areas A 0,0 and A 1,0 of bank 0 and block areas B 0,0 and B 1,0 of
図11は、マクロブロックの読み出す順序を示す図である。図8〜図10を用いた説明では、ブロック領域A0,0→B0,0→A1,0→B1,0の画像データを読み出すところまでを説明した。この後、バンク0とバンク1を交互に切り替えつつ、同列のブロック領域の画像データを順次読み出し、16行目となるブロック領域A15,0、B15,0を読み出した時点で、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを読み出すことが可能となるのである。
FIG. 11 is a diagram illustrating the reading order of macroblocks. In the description using FIG. 8 to FIG. 10, the description has been given to the point where the image data of the block area A 0,0 → B 0,0 → A 1,0 → B 1,0 is read. Thereafter, the image data of the block area in the same row is sequentially read out while alternately switching between the
また、上述したように、図2に示すようなバンク0とバンク1に対する格納ルールが満たされていれば、2次元画像の異なる水平ラインの画像データが、SDRAM4の同一の行に格納されていてもよい。たとえば、2次元画像データの1ライン目と2ライン目の画像データが、ともにSDRAM4の1行目のメモリ領域に格納されてもよいことを説明した。この場合にも、マクロブロック単位でのデータの読み出し処理は、高速に行うことが可能である。つまり、8ピクセル単位で、バンクを切り替えながら、画像データが格納されていることにより、一方のバンクから画像データを読み出している間に、他方のバンクの行を切り替えることが可能となるからである。これにより、SDRAM4に対するアクセス行を変更する際にも、空き時間を発生させることなく、読み出し処理を行うことが可能である。また、図2に示すようなバンク0とバンク1に対する格納ルールが満たされていれば、2次元画像データの水平1ラインがSDRAM4の複数の行にまたがって格納されていてもよい。あるいは、2次元画像の各水平ラインの列方向の順序と、SDRAM4に格納される列方向の順序が異なっていてもよいし、とびとびの行に格納されるようになっていてもよい。
As described above, if the storage rules for
このように、マクロブロック単位で画像データを高速に読み出すことが可能であるが、MPEG処理部2により、マクロブロック単位で画像データを書き込む処理も同様である。この書き込み処理も、図8で示したタイミング図、図9、図10、図11で示したアクセス順序で行えばよい。つまり、ブロック領域A0,0→B0,0→A1,0→B1,0→A2,0・・・の順で画像データを書き込むようにすればよい。これにより、マクロブロック単位での画像データの読み込みおよび書き込み両方の処理を高速に行うことが可能である。
As described above, the image data can be read at a high speed in units of macroblocks, but the process of writing the image data in units of macroblocks by the
以上説明したように、本実施の形態によれば、MPEG処理に必要なマクロブロック単位の画像データに連続的にアクセスする場合にも、バンク0とバンク1を切り替えることにより、アクセス空き時間を発生させることなく、効率的にSDRAM4にアクセスすることが可能である。つまり、一方のバンクにおいて画像データにアクセスしている間に、他方のバンクの行アドレスを変更することができるので、行アドレス変更に伴う空き時間を発生させることがない。しかも、入力部1から入力した画像データのSDRAM4に対する書き込み処理においては、ラスタ順で入力する画像データを、そのままの順序で格納するので、書き込み処理時における制御が複雑になることはない。
As described above, according to the present embodiment, even when image data in units of macro blocks necessary for MPEG processing is continuously accessed, an access free time is generated by switching between
次に、図12を参照して、データの種別に応じた各メモリ領域への画像データの格納方法について説明する。MPEG処理においては、輝度データ(Yデータ)と色差データ(U,Vデータ)からなるYUV色空間の画像データを扱う。ここで、図13に示すように、Yデータは、2次元画像データの全ての画素が保持している情報である。これに対して、U,Vデータは、Yデータよりも数が少ない。YUV4:2:0フォーマットにおいては、図に示すように、UデータおよびVデータの数は、行方向に1/2間引かれるとともに、列方向にも1/2間引かれている。 Next, a method of storing image data in each memory area according to the type of data will be described with reference to FIG. In MPEG processing, image data in a YUV color space consisting of luminance data (Y data) and color difference data (U, V data) is handled. Here, as shown in FIG. 13, the Y data is information held by all the pixels of the two-dimensional image data. On the other hand, U and V data have fewer numbers than Y data. In the YUV 4: 2: 0 format, as shown in the figure, the numbers of U data and V data are decimated 1/2 in the row direction and ½ in the column direction.
上述したSDRAM4に対するアクセス処理では、画像データの種類が輝度データであるか、あるいは色差データであるかということは特に考慮せず説明した。ここでは、輝度データと色差データの場合、それぞれについてメモリ領域への格納方法を説明する。なお、画像データは、YUV4:2:0フォーマットの場合を説明する。 In the above-described access processing to the SDRAM 4, it has been described without particularly considering whether the type of image data is luminance data or color difference data. Here, in the case of luminance data and color difference data, a method of storing them in the memory area will be described. The image data will be described for the YUV 4: 2: 0 format.
図12で示したタイミング図の中で、前半の2つのバースト転送処理は、輝度データに対する処理である。後半の2つのバースト転送処理は、色差データに対する処理である。まず、輝度データの場合には、2つのYデータを1つのメモリ領域に格納する。つまり、1画素のYデータは8ビットであり、この実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は16ビットのデータを格納可能としているので、2ピクセル分のYデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする16ビットのデータ線のうち、上位8ビットを一方のYデータ転送用に使用し、下位8ビットを他方のYデータ転送用の使用する。このようにして、バンク0には、4つのアドレスに対応した4つのメモリ領域に8ピクセル分のYデータが格納される。続いて、バンク1において、4つのアドレスに対応した4つのメモリ領域に8ピクセル分のYデータが格納されるのである。
In the timing chart shown in FIG. 12, the first two burst transfer processes are processes for luminance data. The latter two burst transfer processes are processes for color difference data. First, in the case of luminance data, two Y data are stored in one memory area. That is, the Y data of one pixel is 8 bits, and the memory area corresponding to one address of the SDRAM 4 in this embodiment can store 16 bits of data. It is stored in the area. At this time, among the 16-bit data lines accessing the SDRAM 4, the upper 8 bits are used for one Y data transfer and the lower 8 bits are used for the other Y data transfer. In this way,
次に、色差データの格納方法について説明する。図13において、太線枠で示した2ピクセル×2ピクセルの領域の中には、4つのYデータに対して、UデータとVデータが1つづつ存在する。そこで、この2つのUデータとVデータをパッキングして1つのメモリ領域に格納する。 Next, a method for storing color difference data will be described. In FIG. 13, one U data and one V data are present for each of four Y data in an area of 2 pixels × 2 pixels indicated by a bold frame. Therefore, the two U data and V data are packed and stored in one memory area.
図12に示すように、2つのUデータとVデータをパッキングして1つのメモリ領域に格納することとすれば、このようなUデータとVデータの組が4つ分、つまり、8ピクセル分バースト転送行うことが可能である。つまり、UデータおよびVデータは、いずれも1画素8ビットのデータであり、この実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は16ビットのデータを格納可能としているので、UデータとVデータからなる2ピクセル分のデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする16ビットのデータ線のうち、上位8ビットを例えばUデータ転送用に使用し、下位8ビットをVデータ転送用の使用する。このようにして、バンク0には、4つのアドレスに対応した4つのメモリ領域に8ピクセル分の色差データが格納される。続いて、バンク1において、4つのアドレスに対応した4つのメモリ領域に8ピクセル分の色差データが格納されるのである。
As shown in FIG. 12, if two U data and V data are packed and stored in one memory area, four such sets of U data and V data, that is, 8 pixels are included. Burst transfer can be performed. That is, the U data and V data are both 8-bit data per pixel, and the memory area corresponding to one address of the SDRAM 4 in this embodiment can store 16-bit data. Data for two pixels consisting of data is stored in a memory area of one address. At this time, among the 16-bit data lines accessing the SDRAM 4, the upper 8 bits are used for U data transfer, for example, and the lower 8 bits are used for V data transfer. In this way,
このように、UデータとVデータをパッキングして、1つのメモリ領域に格納することにより、輝度データについてSDRAM4にアクセスする場合と、色差データについてSDRAM4にアクセスする場合とで、同じ転送手順を実行することが可能となるのである。 In this way, by packing U data and V data and storing them in one memory area, the same transfer procedure is executed when accessing SDRAM 4 for luminance data and when accessing SDRAM 4 for color difference data. It becomes possible to do.
具体的には、まず、輝度データについてマクロブロック単位のデータアクセスを行い、次に、同じマクロブロック領域内の色差データについてマクロブロック単位のデータアクセスを行うことになるが(図12は、輝度データについてのデータアクセス処理と色差データに対するデータアクセス処理がちょうど入れ替わるタイミングを示している。)、輝度データに対するデータアクセスと色差データに対するデータアクセスを同じ手順とすることができるのである。 Specifically, first, data access in units of macroblocks is performed on luminance data, and then data access in units of macroblocks is performed on color difference data in the same macroblock region (FIG. 12 shows luminance data). The timing at which the data access process and the data access process for the color difference data are just switched is shown.), The data access for the luminance data and the data access for the color difference data can be made the same procedure.
ただし、YUV4:2:0フォーマットの場合には、UデータとVデータの数が行方向(縦方向)にも1/2に間引かれているので、1つのマクロブロックに対する処理は、輝度データに対する処理の半分の処理でよい。図11を用いて説明すれば、輝度データに対する処理は、16行分の処理が必要であったが、色差データの場合には、8行分の処理でよい。 However, in the case of the YUV 4: 2: 0 format, the number of U data and V data is halved in the row direction (vertical direction), so the processing for one macroblock is performed with luminance data. Half of the processing is sufficient. If described with reference to FIG. 11, processing for luminance data requires processing for 16 rows, but in the case of color difference data, processing for 8 rows may be sufficient.
以上、第1の実施の形態においては、SDRAMが1アドレスに16ビットのデータを格納可能である場合を例に説明した。しかし、本発明は、1アドレスに8ビットのデータを格納可能なDRAMにも適用させることが可能である。この場合には、8ビットのデータを格納可能なDRAMを2個利用して、上述した実施の形態と同様の処理を行うようにすればよい。つまり、8ピクセル分の画像データを2個のDRAMのそれぞれ4つのアドレスに格納する処理を1単位の処理とすればよい。そして、それぞれのDRAMに対してバンク0とバンク1とを交互に切り替えながら上記と同様の処理を行うようにすればよい。
As described above, in the first embodiment, the case where the SDRAM can store 16-bit data in one address has been described as an example. However, the present invention can also be applied to a DRAM capable of storing 8-bit data at one address. In this case, two DRAMs that can store 8-bit data are used to perform the same processing as in the above-described embodiment. That is, the process of storing the image data for 8 pixels at each of the four addresses of the two DRAMs may be a unit process. Then, the same processing as described above may be performed for each DRAM while alternately switching between
{第2の実施の形態}
次に、本発明の第2の実施の形態について説明する。第2の実施の形態における画像処理装置も、図1で説明した画像処理装置と同様である。ただし、第2の実施の形態におけるSDRAM4は、1アドレスのメモリ領域に対して4バイト(32ビット)のデータを格納可能としている。つまり、第2の実施の形態におけるSDRAM4は、32ビットSDRAMである。また、SDRAM4は、連続する4つのアドレスに対して連続的にデータアクセスを行うバースト転送処理を可能としている。つまり、SDRAM4は、128ビット(4アドレス×32ビット)のデータをバースト転送可能としている。
{Second Embodiment}
Next, a second embodiment of the present invention will be described. The image processing apparatus in the second embodiment is the same as the image processing apparatus described in FIG. However, the SDRAM 4 in the second embodiment can store 4 bytes (32 bits) of data in a memory area of one address. That is, the SDRAM 4 in the second embodiment is a 32-bit SDRAM. The SDRAM 4 is capable of burst transfer processing that continuously accesses data to four consecutive addresses. That is, the SDRAM 4 is capable of burst transfer of 128 bits (4 addresses × 32 bits) of data.
図14は、2次元画像データのピクセル構成を示す図である。ここでも、2次元画像は、横320ピクセル、つまり、1行(水平1ライン)の画像データが320ピクセルである場合を例に説明する。 FIG. 14 is a diagram illustrating a pixel configuration of two-dimensional image data. Here, the two-dimensional image will be described as an example in which the horizontal 320 pixels, that is, the image data of one row (horizontal one line) is 320 pixels.
図14においては、2次元の画像データをブロックに区分して表示している。この図の表記ルールは、図2で説明したものと同様である。ただし、図2と比較すると1ブロックのピクセル数が異なる。最上位行(0行目)の左端のブロックは、2次元画像の0行目の0番目から15番目までのピクセルに対応し、その右横のブロックは、2次元画像の0行目の16番目から31番目までのピクセルに対応している。そして、最上位行(0行目)の右端のブロックは、0行目の304番目から319番目までのピクセルに対応し、次の行(1行目)の左端のブロックは、320番目から335番目までのピクセル(これは、2次元画像における1行目の0番目から15番目までのピクセルに対応している。)に対応している。 In FIG. 14, two-dimensional image data is displayed divided into blocks. The notation rules in this figure are the same as those described in FIG. However, the number of pixels in one block is different from that in FIG. The leftmost block of the uppermost row (0th row) corresponds to the 0th to 15th pixels of the 0th row of the 2D image, and the right block is the 16th row of the 0th row of the 2D image. It corresponds to the pixels from the th to the 31st. The rightmost block of the uppermost row (0th row) corresponds to the 304th to 319th pixels of the 0th row, and the leftmost block of the next row (first row) corresponds to the 320th to 335th pixels. To the first pixel (this corresponds to the 0th to 15th pixels in the first row in the two-dimensional image).
このようにして、2次元画像をラスタ順に16ピクセルごとにブロック化している。さらに、この実施の形態においては、図に示すように、これら各ブロックが千鳥状にバンク0とバンク1に割り当てられてSDRAM4に格納される。言い換えると、2次元画像の行方向においても列方向においてもバンク0とバンク1が交互になるように割り当てられる。具体的には、図において網掛けされていないブロックはSDRAM4のバンク0に格納され、網掛けされているブロックはSDRAM4のバンク1に格納されるのである。図中、C0,0、D0,0等の表示については、第1の実施の形態で説明したものと同様である。つまり、この2次元画像データがSDRAM4に格納される際に、格納されるメモリ領域(バンク0およびバンク1におけるメモリ領域)のブロック名を示している。
In this way, the two-dimensional image is blocked every 16 pixels in raster order. Furthermore, in this embodiment, as shown in the figure, each of these blocks is assigned to
図15は、メモリ制御部3によって、入力部1より出力されたラスタ順の画像データが、SDRAM4に書き込まれる際のタイミング図である。また、図16は、SDRAM4のバンク0に対する書き込み順序を示す図であり、図17は、SDRAM4のバンク1に対する書き込み順序を示す図である。また、図18は、バンク0の各メモリ領域に格納される画像データのピクセル番号(この番号は、前述したように、2次元画像の最上位行(0行目)の左端(0列目)のピクセルを0番目の画像として、全ピクセルに対してラスタ順で付与された番号である。)を示す図であり、図19は、バンク1の各メモリ領域に格納される画像データのピクセル番号を示す図である。
FIG. 15 is a timing chart when the raster control image data output from the
ここで、図16および図17において、メモリ領域c0,0、d0,0等の添え字は、1番目の添え字がメモリ領域の行番号を示し、2番目の添え字がメモリ領域の列番号を示している。これらの表記ルールも第1の実施の形態と同様である。また、図16および図17におけるブロック領域C0,0、D0,0等は、4つのメモリ領域からなるブロックを示している。ブロック領域の添え字は、そのブロック領域に含まれている先頭(左端)のメモリ領域の行番号および列番号に対応している。 In FIGS. 16 and 17, subscripts such as the memory areas c 0,0 and d 0,0 are the first subscript indicating the row number of the memory area, and the second subscript is the memory area. Indicates the column number. These notation rules are the same as those in the first embodiment. In addition, block areas C 0,0 , D 0,0, etc. in FIG. 16 and FIG. 17 indicate blocks composed of four memory areas. The subscript of the block area corresponds to the row number and column number of the first (leftmost) memory area included in the block area.
図15において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から15番目までの16ピクセル分の画像データが、バースト転送される。つまり、1ピクセルの画像データが8ビットであるので、16ピクセル分の画像データ(16ピクセル×8ビット)をバースト転送するのである。この16ピクセル分の画像データは、図16に示すバンク0のブロック領域C0,0に格納される。ブロック領域C0,0は、メモリ領域c0,0、c0,1、c0,2、c0,3からなる領域である。なお、図15の表記ルールも図3等と同様である。
In FIG. 15, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 16 pixels from the 0th to the 15th is burst transferred. . That is, since image data of 1 pixel is 8 bits, image data for 16 pixels (16 pixels × 8 bits) is burst transferred. The image data for 16 pixels is stored in the block area C 0,0 of
一方、図15に示すように、0番目から15番目までの16ピクセル分の画像データが、ブロック領域C0,0に書き込まれているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域C0,0への書き込み終了後、16番目から31番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、図17に示すバンク1のブロック領域D0,0に格納される。ブロック領域D0,0は、メモリ領域d0,0、d0,1、d0,2、d0,3からなる領域である。
On the other hand, as shown in FIG. 15, the bank address is set to “1” at the timing when image data for 16 pixels from the 0th to the 15th is written in the block area C 0,0 . Then, after writing to the block area C 0,0 , image data for 16 pixels from the 16th to the 31st is burst transferred. The image data for 16 pixels is stored in the block area D 0,0 of
さらに、16番目から31番目までの16ピクセル分の画像データがブロック領域D0,0に書き込まれているタイミングで、バンクアドレスが「0」に設定される。そして、ブロック領域D0,0への書き込み終了後、32番目から47番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、列アドレスに「4」が設定されることにより、図16に示すバンク0のブロック領域C0,4に格納される。ブロック領域C0,4は、メモリ領域c0,4、c0,5、c0,6、c0,7からなる領域である。
Further, the bank address is set to “0” at the timing when the image data for 16 pixels from the 16th to the 31st is written in the block area D 0,0 . Then, after writing to the block area D 0,0 , image data for 16 pixels from the 32nd to the 47th is burst transferred. The image data for 16 pixels is stored in the block area C 0,4 of the
そして、ブロック領域C0,4に書き込みが行われているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域C0,4への書き込み終了後、48番目から63番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、列アドレスに「4」が設定されることにより、図17に示すバンク1のブロック領域D0,4に格納される。ブロック領域D0,4は、メモリ領域d0,4、d0,5、d0,6、d0,7からなる領域である。
Then, the bank address is set to “1” at the timing when writing is performed in the block areas C 0,4 . Then, after the writing to the block area C 0,4 is completed, the image data for 16 pixels from the 48th to the 63rd is burst transferred. The image data for 16 pixels is stored in the block area D 0,4 of the
以上の処理により、図18および図19に示すように、バンク0のブロック領域C0,0、C0,4およびバンク1のブロック領域D0,0、D0,4に0番目から63番目までの64ピクセル分の画像データが格納される。この後は、同様に、バンク0とバンク1を切り替えながら、16ピクセル単位で画像データをバースト転送し、順次SDRAM4に画像データを格納するのである。図16および図17における矢印は、それぞれバンク0およびバンク1への格納順序を示している。上述した手順により、2次元画像の0行目の画像データが矢印の方向に格納された後、1行目の画像データが同様に矢印の方向に格納され、順次、各行の画像データが格納される。また、SDRAM4に対する書き込み手順をブロック領域を用いて表現すると、ブロック領域C0,0→D0,0→C0,4→D0,4→C0,8→D0,8→C0,12→・・・の順で、2次元画像データを順次格納することになる。
As a result of the above processing, as shown in FIGS. 18 and 19, the block areas C 0,0 and C 0,4 of the bank 0 and the block areas D 0,0 and D 0,4 of the
このように、2次元画像の行方向については、16ピクセルごとにバンク0とバンク1が交互になるようSDRAM4に対してデータが格納される。そして、図14でも示したように、列方向については、1行ごとにバンク0とバンク1が交互になるようにSDRAM4に格納するのである。
Thus, in the row direction of the two-dimensional image, data is stored in the SDRAM 4 so that the
この実施の形態の例では、2次元画像の行方向のピクセル数は320である。したがって、16ピクセルごとにバンク0とバンク1を切り替えて0行目のデータを格納した後、1行目のデータを格納する場合には、1行目の先頭のブロックは再びバンク0に格納される順番となる。このため、1行目の先頭のブロック、つまり320番目から335番目までの画像データは、一旦バッファに格納し、次のブロック、つまり336番目から351番目までの画像データを先にバンク0に格納するようにする。次に、バッファされていた320番目から335番目までの画像データをバンク1に格納するのである。これにより、列方向については1行ごとにバンク0とバンク1が交互に切り替えられて画像データが格納されることになる。バッファされていた320番目から335番目までの画像データをバンク1に格納した後は、352番目から367番目までの画像データをバンク1に格納するようにしても、行アドレスの切り替えが発生しないのでアクセス速度が遅くなることはない。その後は、行方向に再び16ピクセルごとにバンク0とバンク1を切り替えながら画像データを格納すれば、列方向についても1行ごとにバンク0とバンク1が交互に切り替えられて画像データが格納されることになる。
In the example of this embodiment, the number of pixels in the row direction of the two-dimensional image is 320. Therefore, when the data of the first row is stored after switching the
一方、行方向のピクセル数が16ピクセルの奇数倍である場合には、ラスタ順でバンク0とバンク1を切り替えていくことにより、列方向についても1行ごとにバンク0とバンク1に対して交互に格納されるので、上記のようにバッファを利用する必要はない。
On the other hand, when the number of pixels in the row direction is an odd multiple of 16 pixels,
このように、MPEG処理の対象となる2次元画像データをバンク0とバンク1とを切り替えながら、2次元画像イメージでSDRAM4に格納する。そして、画像の列方向については1行ごとにバンク0とバンク1が交互になるようにSDRAM4に格納する。このため、マクロブロックに注目した場合、SDRAM4の複数の行に画像データがまたがって格納されることとなるが、アクセスする行を切り替える場合にも、空き時間が発生することはない。このアクセス手順については、後で具体的に説明するが、バンク1のデータにアクセスしているタイミングで、バンク0についてアクセスする行を切り替え、バンク0のデータにアクセスしているタイミングで、バンク1についてアクセスする行を切り替えることが可能となるからである。
In this way, 2D image data to be subjected to MPEG processing is stored in the SDRAM 4 as a 2D image image while switching between
なお、図18および図19で示したように、2次元画像データの水平1ライン分の画像データは、SDRAM4のバンク0の同一行およびバンク1の同一行のメモリ領域に格納し、2次元画像データのラインが次のラインに移動すると、格納先のバンク0とバンク1のメモリ領域も行を変更するようにしている。このような格納方法は、メモリ領域の有効利用という点ではデメリットがあるが、回路構成をシンプルにすることができるという点でメリットがある。したがって、メモリ領域に余裕がある場合には有効な方法である。
As shown in FIGS. 18 and 19, the image data for one horizontal line of the two-dimensional image data is stored in the memory area of the same row of
ただし、上記格納方法は一例であり、これに限定されることはない。つまり、ラスタ順で入力する2次元画像データの1ライン目の画像データを、SDRAM4の1行目(バンク0あるいはバンク1)に格納した後、2ライン目の画像データを続けて、SDRAM4の1行目に格納するような方法をとってもよい。同様に、SDRAM4の各行において、画像データの水平ラインに対応して格納する行を変更させることはなく、順次、画像データを詰めて格納するのである。そして、この場合にも、一度に転送される16ピクセル分の画像データ(つまり、1バースト転送分の画像データ)はSDRAM4の同一行に格納されるようにしておけばよい。これにより、バンク0およびバンク1の一方のデータにアクセスしているタイミングで、他方のバンクの行アドレスを変更するようにすれば、処理速度を高速にすることが可能である。あるいは逆に、2次元画像の水平1ラインのデータサイズがSDRAM4の1行に格納可能なサイズ(バンク0とバンク1の1行に格納可能なサイズの和)より大きくてもよい。この場合にも、16ピクセル単位で画像データをいずれかのバンクの同一行に格納するようにし、2次元画像の水平1ラインの途中で各バンクの行アドレスを変更するようにしても問題はない。つまり、本発明は、本質的には、マクロブロックを構成する1行の16ピクセル分の画像データが全て一方のバンクの同一行に格納され、マクロブロックを構成する次の行の16ピクセル分の画像データが全て他方のバンクの同一行に格納されることである。このような格納方法をとれば、マクロブロック単位での画像データに対するアクセスにおいて、いずれかのバンクの行アドレスを変更する必要が生じた場合でも、その直前に必ず他方のバンクに対するアクセス処理が介入するので、その間に行アドレスを変更することで、空き時間の発生を無くすことができるのである。
However, the above storage method is an example, and the present invention is not limited to this. That is, the first line of image data of the two-dimensional image data input in raster order is stored in the first row (
次に、MPEG処理部2がMPEG圧縮処理を行うために、SDRAM4に格納された画像データにマクロブロック単位でアクセスする処理について説明する。なお、このアクセス処理には、MPEG処理部2がMPEG圧縮処理を行う対象であるマクロブロック単位の画像データを読み出す処理と、マクロブロック単位の画像データを書き込む処理がある。
Next, processing for accessing the image data stored in the SDRAM 4 in units of macro blocks in order for the
図20は、メモリ制御部3によって、SDRAM4に格納された画像データにアクセスする処理のタイミング図である。また、図21は、SDRAM4のバンク0に対するアクセス順序を示す図であり、図22は、SDRAM4のバンク1に対するアクセス順序を示す図である。さらに、図21および図22で示した方法によりマクロブロックにアクセスした後、続けて隣り合うマクロブロックをアクセスする方法を示したのが図23および図24である。図23は、SDRAM4のバンク0に対するアクセス順序を示す図であり、図24は、SDRAM4のバンク1に対するアクセス順序を示す図である。なお、図20ないし図24は、マクロブロック単位での画像データの読み出し処理と書き込み処理に共通の特徴を示す図である。また、図21ないし図24における各ブロック領域C0,0、D0,0等は、図16および図17における各ブロック領域C0,0、D0,0等に対応しており、上述した書き込み処理により、図18および図19で示したような配列で2次元画像データが格納されているものとする。
FIG. 20 is a timing chart of a process for accessing the image data stored in the SDRAM 4 by the
まず、マクロブロック単位での画像データの読み出し処理について説明する。図20において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から15番目までの16ピクセル分の画像データが、バースト転送される。具体的には、図21で示すバンク0のブロック領域C0,0に格納されている16ピクセル分の画像データが読み出される。なお、図20における表記ルールは、図3等と同様である。
First, image data read processing in units of macroblocks will be described. In FIG. 20, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 16 pixels from the 0th to the 15th is burst transferred. . Specifically, the image data for 16 pixels stored in the block area C 0,0 of
一方、図20に示すように、ブロック領域C0,0の画像データに対する読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定されるとともに行アドレスが「1」に設定され、ブロック領域C0,0からの読み込み処理終了後、320番目から335番目までの16ピクセル分の画像データがバースト転送される。具体的には、図22で示すバンク1のブロック領域D1,0に格納されている16ピクセル分の画像データが読み出される。
On the other hand, as shown in FIG. 20, the bank address is set to “1” and the row address is set to “1” at the timing when the image data in the block area C 0,0 is read. After the reading process from the block area C 0,0 is completed, image data for 16 pixels from the 320th to the 335th is burst transferred. Specifically, the image data for 16 pixels stored in the block area D1,0 of the
さらに、図20に示すように、ブロック領域D1,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「0」に設定されるとともに行アドレスが「2」に設定され、ブロック領域D1,0からの読み込み処理終了後、640番目から655番目までの16ピクセル分の画像データがバースト転送される。具体的には、図21で示すバンク0のブロック領域C2,0に格納されている16ピクセル分の画像データが読み出される。ブロック領域C2,0は、メモリ領域c2,0、c2,1、c2,2、c2,3からなる領域である。ここで、バンク0については、ブロック領域C0,0に対するアクセス処理の後、ブロック領域C2,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク1のブロック領域D1,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Further, as shown in FIG. 20, the bank address is set to “0” and the row address is set to “2” at the timing when the image data of the block area D 1,0 is read. After the reading process from the block area D 1,0 is completed, the image data for 16 pixels from the 640th to the 655th is burst transferred. Specifically, the image data for 16 pixels stored in the block area C 2,0 of
そして、ブロック領域C2,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定されるとともに行アドレスが「3」に設定され、ブロック領域C2,0からの読み込み処理終了後、960番目から975番目までの16ピクセル分の画像データがバースト転送される。具体的には、図22で示すバンク1のブロック領域D3,0に格納されている16ピクセル分の画像データが読み出される。ブロック領域D3,0は、メモリ領域d3,0、d3,1、d3,2、d3,3からなる領域である。同様に、バンク1については、ブロック領域D1,0に対するアクセス処理の後、ブロック領域D3,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク0のブロック領域C2,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Then, at the timing when the readout processing of the image data of the block area C 2, 0 is being performed, the row address along with the bank address is set to "1" is set to "3", the block area C 2, 0 After the reading process ends, image data for 16 pixels from the 960th to the 975th is burst transferred. Specifically, the image data for 16 pixels stored in the block area D 3,0 of
以上の処理により、図18および図19に示したバンク0のブロック領域C0,0、C2,0およびバンク1のブロック領域D1,0、D3,0に格納されている0番目から15番目までの16ピクセル分の画像データおよび320番目から335番目までの16ピクセル分の画像データおよび640番目から655番目までの16ピクセル分の画像データおよび960番目から975番目までの16ピクセル分の画像データが読み出される。この画像データは、図14の画像イメージに対応させると、行方向が16ピクセルであって、列方向が同じ列の4行分の画像データである。つまり、この後、同様に、バンク0とバンク1を切り替えながら、16ピクセル単位で画像データをバースト転送し、順次、行方向が16ピクセルで、同じ列の画像データを読み出すことにより、2次元的なブロックの画像データを連続的に読み出すことが可能となるのである。そして、このような処理を16行分実行することにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを連続的に読み出すことが可能となるのである。
Through the above processing, from the 0th stored in the block areas C 0,0 and C 2,0 of the bank 0 and the block areas D 1,0 and D 3,0 of the
図20〜図22を用いた説明では、ブロック領域C0,0→D1,0→C2,0→D3,0の画像データを読み出すところまでを説明した。この後、バンク0とバンク1を交互に切り替えつつ、同様に同列のブロック領域の画像データを順次読み出する。つまり、C0,0→D1,0→C2,0→D3,0→C4,0→D5,0→C6,0→D7,0→C8,0→D9,0→C10,0→D11,0→C12,0→D13,0→C14,0→D15,0の順でブロック領域を読み出すことにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを読み出すことが可能となるのである。
In the description using FIGS. 20 to 22, the description has been made up to the point where the image data of the block area C 0,0 → D 1,0 → C 2,0 → D 3,0 is read. Thereafter, the image data in the block area in the same row are sequentially read out while alternately switching between the
また、上述したように、図14に示すようなバンク0とバンク1に対する格納ルールが満たされていれば、2次元画像の異なる水平ラインの画像データが、SDRAM4の同一の行に格納されていてもよい。たとえば、2次元画像データの1ライン目と2ライン目の画像データが、ともにSDRAM4の1行目のメモリ領域に格納されてもよいことを説明した。この場合にも、マクロブロック単位でのデータの読み出し処理は、高速に行うことが可能である。つまり、16ピクセル単位で、バンクを切り替えながら、画像データが格納されていることにより、一方のバンクから画像データを読み出している間に、他方のバンクの行を切り替えることが可能となるからである。これにより、SDRAM4に対するアクセス行を変更する際にも、空き時間を発生させることなく、読み出し処理を行うことが可能である。また、図14に示すようなバンク0とバンク1に対する格納ルールが満たされていれば、2次元画像データの水平1ラインがSDRAM4の複数の行にまたがって格納されていてもよい。あるいは、2次元画像の各水平ラインの列方向の順序と、SDRAM4に格納される列方向の順序が異なっていてもよいし、とびとびの行に格納されるようになっていてもよい。
Further, as described above, if the storage rules for
このように、マクロブロック単位で画像データを高速に読み出すことが可能であるが、MPEG処理部2により、マクロブロック単位で画像データを書き込む処理も同様である。この書き込み処理も、図20で示したタイミング図、図21、図22で示したアクセス順序で行えばよい。つまり、ブロック領域C0,0→D1,0→C2,0→D3,0→C4,0・・・の順で画像データを書き込むようにすればよい。これにより、マクロブロック単位での画像データの読み込みおよび書き込み両方の処理を高速に行うことが可能である。
As described above, the image data can be read at a high speed in units of macroblocks, but the process of writing the image data in units of macroblocks by the
以上説明した方法により、縦16ピクセル×横16ピクセルのマクロブロックに対するアクセスを行った後、さらに、隣り合うマクロブロックにアクセスする方法を説明する。図14の画像イメージを用いて説明すると、0番目から15番目までのピクセルデータを含むマクロブロックにアクセスした後に、続けて16番目から31番目までのピクセルデータを含むマクロブロックにアクセスするような処理である。 A method of accessing an adjacent macroblock after accessing a macroblock of 16 pixels by 16 pixels by the above-described method will be described. Referring to the image in FIG. 14, after accessing a macroblock including the 0th to 15th pixel data, a process of subsequently accessing the macroblock including the 16th to 31st pixel data. It is.
ここで、上述したように、0番目から15番目までのピクセルデータを含むマクロブロックに対するアクセスにおいて、最後にアクセスするブロック領域はバンク1のブロック領域D15,0であった。このため、続けて16番目から31番目までのピクセルデータを含むマクロブロックにアクセスする場合、最初の16番目から31番目のピクセルデータもバンク1に格納されているため、バンク1に連続してアクセスする必要がある。そして、ブロック領域D15,0とブロック領域D0,0とがSDRAM4の異なる行である場合(この実施の形態では、異なる行に格納されている。)には、行アドレスを切り替える処理が発生し、処理速度が低下する。
Here, as described above, in the access to the macro block including the 0th to 15th pixel data, the block area to be accessed last is the block area D 15,0 of the
そこで、本実施の形態においては、続けて隣り合うマクロブロックにアクセスする場合には、そのアクセス方向を列方向について逆にするようにする。つまり、図23および図24に示すように、このマクロブロックに対しては、図21および図22で示した方法に比べて列方向のアクセス順序を逆転させるのである。 Therefore, in the present embodiment, when the adjacent macroblock is continuously accessed, the access direction is reversed with respect to the column direction. That is, as shown in FIGS. 23 and 24, the access order in the column direction is reversed for this macroblock as compared with the method shown in FIGS.
具体的には、まず、ブロック領域C15,0に対するアクセスを行い、次に、ブロック領域D14,0にアクセスする。そして、バンク0とバンク1を切り替えながら同様のアクセスを行う。つまり、C15,0→D14,0→C13,0→D12,0→C11,0→D10,0→C9,0→D8,0→C7,0→D6,0→C5,0→D4,0→C3,0→D2,0→C1,0→D0,0の順でブロック領域を読み出すことにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを読み出すことが可能となるのである。これにより、隣り合うマクロブロックについて連続してアクセスする場合でも、処理の全般にわたって常にバンク0とバンク1に対するアクセスが交互になるので、一方のバンクに対するアクセスを行っている間に、他方のバンクの行アドレスを切り替える処理を行うことが可能である。
Specifically, first, performs access to the block area C 15,0, then accesses the block area D 14,0. Then, the same access is performed while switching between
次に、図25を参照して、データの種別に応じた各メモリ領域への画像データの格納方法について説明する。ここでも、図13で示したように、画像データは、YUV4:2:0フォーマットの場合を説明する。 Next, a method of storing image data in each memory area according to the type of data will be described with reference to FIG. Here, as shown in FIG. 13, the case where the image data is in the YUV 4: 2: 0 format will be described.
図25で示したタイミング図の中で、前半の2つのバースト転送処理は、輝度データに対する処理である。後半の2つのバースト転送処理は、色差データに対する処理である。まず、輝度データの場合には、4つのYデータを1つのメモリ領域に格納する。つまり、1画素のYデータは8ビットであり、本実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は32ビットのデータを格納可能としているので、4ピクセル分のYデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする32ビットのデータ線を4等分して、それぞれ4ピクセル分のYデータ転送用に使用する。このようにして、バンク0には、4つのアドレスに対応した4つのメモリ領域に16ピクセル分のYデータが格納される。続いて、バンク1において、4つのアドレスに対応した4つのメモリ領域に16ピクセル分のYデータが格納されるのである。
In the timing chart shown in FIG. 25, the first two burst transfer processes are processes for luminance data. The latter two burst transfer processes are processes for color difference data. First, in the case of luminance data, four Y data are stored in one memory area. That is, the Y data of one pixel is 8 bits, and the memory area corresponding to one address of the SDRAM 4 in this embodiment can store 32 bits of data. Therefore, Y data for four pixels is stored in one address memory. It is stored in the area. At this time, the 32-bit data line for accessing the SDRAM 4 is divided into four equal parts and used for transferring Y data of four pixels. In this way,
次に、色差データの格納方法について説明する。この実施の形態では、UデータとVデータの組を2組パッキングして1つのメモリ領域に格納する。つまり、UデータおよびVデータは、いずれも1画素8ビットのデータであり、本実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は32ビットのデータを格納可能としているので、UデータとVデータからなる4ピクセル分のデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする32ビットのデータ線を4等分して、それぞれ4ピクセル分のUデータとVデータに割り当てる。このようにして、バンク0には、4つのアドレスに対応した4つのメモリ領域に16ピクセル分の色差データが格納される。続いて、バンク1において、4つのアドレスに対応した4つのメモリ領域に16ピクセル分の色差データが格納されるのである。
Next, a method for storing color difference data will be described. In this embodiment, two sets of U data and V data are packed and stored in one memory area. That is, U data and V data are both 8-bit data per pixel, and the memory area corresponding to one address of SDRAM 4 in this embodiment can store 32-bit data. Data of 4 pixels consisting of data is stored in a memory area of one address. At this time, the 32-bit data line for accessing the SDRAM 4 is divided into four equal parts and assigned to U data and V data for 4 pixels, respectively. In this way,
このように、UデータとVデータをパッキングして、1つのメモリ領域に格納することにより、輝度データについてSDRAM4にアクセスする場合と、色差データについてSDRAM4にアクセスする場合とで、同じ転送手順を実行することが可能となるのである。 In this way, by packing U data and V data and storing them in one memory area, the same transfer procedure is executed when accessing SDRAM 4 for luminance data and when accessing SDRAM 4 for color difference data. It becomes possible to do.
具体的には、まず、輝度データについてマクロブロック単位のデータアクセスを行い、次に、同じマクロブロック領域内の色差データについてマクロブロック単位のデータアクセスを行うことになるが(図25は、輝度データについてのデータアクセス処理と色差データに対するデータアクセス処理がちょうど入れ替わるタイミングを示している。)、輝度データに対するデータアクセスと色差データに対するデータアクセスを同じ手順とすることができるのである。ただし、YUV4:2:0フォーマットの場合には、UデータとVデータの数が行方向(縦方向)にも1/2に間引かれているので、1つのマクロブロックに対する処理は、輝度データに対する処理の半分の処理でよい。 Specifically, first, data access in units of macroblocks is performed on luminance data, and then data access in units of macroblocks is performed on color difference data in the same macroblock region (FIG. 25 shows luminance data). The timing at which the data access process and the data access process for the color difference data are just switched is shown.), The data access for the luminance data and the data access for the color difference data can be made the same procedure. However, in the case of the YUV 4: 2: 0 format, the number of U data and V data is halved in the row direction (vertical direction), so the processing for one macroblock is performed with luminance data. Half of the processing is sufficient.
{第3の実施の形態}
次に、本発明の第3の実施の形態について説明する。第3の実施の形態における画像処理装置も、図1で説明した画像処理装置と同様である。第3の実施の形態におけるSDRAM4は、1アドレスのメモリ領域に対して2バイト(16ビット)のデータを格納可能としているが、第1の実施の形態とは異なり、SDRAM4は、連続する8つのアドレスに対して連続的にデータアクセスを行うバースト転送処理を可能としている。つまり、SDRAM4は、128ビット(8アドレス×16ビット)のデータをバースト転送可能とした、16ビットDDR(double data rate)SDRAMである。
{Third embodiment}
Next, a third embodiment of the present invention will be described. The image processing apparatus in the third embodiment is the same as the image processing apparatus described in FIG. The SDRAM 4 in the third embodiment is capable of storing 2 bytes (16 bits) of data in a memory area of one address. Unlike the first embodiment, the SDRAM 4 has eight consecutive Burst transfer processing that continuously accesses data to addresses is enabled. That is, the SDRAM 4 is a 16-bit DDR (double data rate) SDRAM that enables burst transfer of 128-bit (8 addresses × 16 bits) data.
この実施の形態においても、2次元画像をラスタ順に16ピクセルごとにブロック化し、図14で示したように、これら各ブロックが千鳥状にバンク0とバンク1に割り当てられて、SDRAM4に格納されることになる。
Also in this embodiment, a two-dimensional image is divided into blocks every 16 pixels in raster order, and as shown in FIG. 14, these blocks are assigned to
図26は、メモリ制御部3によって、入力部1より出力されたラスタ順の画像データが、SDRAM4に書き込まれる際のタイミング図である。また、図27は、SDRAM4のバンク0に対する書き込み順序を示す図であり、図28は、SDRAM4のバンク1に対する書き込み順序を示す図である。また、図29は、バンク0の各メモリ領域に格納される画像データのピクセル番号を示す図であり、図30は、バンク1の各メモリ領域に格納される画像データのピクセル番号を示す図である。
FIG. 26 is a timing chart when the raster control image data output from the
ここで、図27および図28において、メモリ領域e0,0、f0,0等の添え字は、1番目の添え字がメモリ領域の行番号を示し、2番目の添え字がメモリ領域の列番号を示している。これらの表記ルールも第1の実施の形態と同様である。また、図27および図28におけるブロック領域E0,0、F0,0等は、8つのメモリ領域からなるブロックを示している。ブロック領域の添え字は、そのブロック領域に含まれている先頭(左端)のメモリ領域の行番号および列番号に対応している。 27 and 28, the subscripts such as the memory areas e 0,0 and f 0,0 are the first subscript indicating the row number of the memory area, and the second subscript is the memory area. Indicates the column number. These notation rules are the same as those in the first embodiment. In addition, block areas E 0,0 , F 0,0, etc. in FIGS. 27 and 28 indicate blocks composed of eight memory areas. The subscript of the block area corresponds to the row number and column number of the first (leftmost) memory area included in the block area.
図26において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から15番目までの16ピクセル分の画像データが、バースト転送される。つまり、1ピクセルの画像データが8ビットであるので、16ピクセル分の画像データ(16ピクセル×8ビット)をバースト転送するのである。この16ピクセル分の画像データは、図27に示すバンク0のブロック領域E0,0に格納される。ブロック領域E0,0は、メモリ領域e0,0、e0,1、e0,2、e0,3、e0,4、e0,5、e0,6、e0,7からなる領域である。なお、図26の表記ルールも図3等と同様である。
In FIG. 26, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 16 pixels from the 0th to the 15th is burst transferred. . That is, since image data of 1 pixel is 8 bits, image data for 16 pixels (16 pixels × 8 bits) is burst transferred. The image data for 16 pixels is stored in the block area E 0,0 of
一方、図26に示すように、0番目から15番目までの16ピクセル分の画像データが、ブロック領域E0,0に書き込まれているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域E0,0への書き込み終了後、16番目から31番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、図28に示す、バンク1のブロック領域F0,0に格納される。ブロック領域F0,0は、メモリ領域f0,0、f0,1、f0,2、f0,3、f0,4、f0,5、f0,6、f0,7からなる領域である。
On the other hand, as shown in FIG. 26, the bank address is set to “1” at the timing when image data for 16 pixels from the 0th to the 15th is written in the block area E 0,0 . Then, after writing to the block area E 0,0 , image data for 16 pixels from the 16th to the 31st is burst transferred. The image data for 16 pixels is stored in the block area F 0,0 of
さらに、16番目から31番目までの16ピクセル分の画像データがブロック領域F0,0に書き込まれているタイミングで、バンクアドレスが「0」に設定される。そして、ブロック領域F0,0への書き込み終了後、32番目から47番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、列アドレスに「8」が設定されることにより、図27に示すバンク0のブロック領域E0,8に格納される。ブロック領域E0,8は、メモリ領域e0,8、e0,9、e0,10、e0,11、e0,12、e0,13、e0,14、e0,15からなる領域である。
Furthermore, the bank address is set to “0” at the timing when the image data for 16 pixels from the 16th to the 31st is written in the block area F 0,0 . Then, after writing to the block area F 0,0 , image data for 16 pixels from the 32nd to the 47th is burst transferred. The image data for 16 pixels is stored in the block area E 0,8 of the
そして、ブロック領域E0,8に書き込みが行われているタイミングで、バンクアドレスが「1」に設定される。そして、ブロック領域E0,8への書き込み終了後、48番目から63番目までの16ピクセル分の画像データがバースト転送される。この16ピクセル分の画像データは、列アドレスに「8」が設定されることにより、図28に示すバンク1のブロック領域F0,8に格納される。ブロック領域F0,8は、メモリ領域f0,8、f0,9、f0,10、f0,11、f0,12、f0,13、f0,14、f0,15からなる領域である。
The bank address is set to “1” at the timing when writing is performed in the block areas E 0,8 . Then, after writing to the block areas E 0,8 , image data for 16 pixels from the 48th to the 63rd is burst transferred. The image data for 16 pixels is stored in the block area F 0,8 of the
以上の処理により、図29および図30に示すように、バンク0のブロック領域E0,0、E0,8およびバンク1のブロック領域F0,0、F0,8に0番目から63番目までの64ピクセル分の画像データが格納される。この後は、同様に、バンク0とバンク1を切り替えながら、16ピクセル単位で画像データをバースト転送し、順次SDRAM4に画像データを格納するのである。図27および図28における矢印は、それぞれバンク0およびバンク1への格納順序を示している。上述した手順により、2次元画像の0行目の画像データが矢印の方向に格納された後、1行目の画像データが同様に矢印の方向に格納され、順次、各行の画像データが格納される。また、SDRAM4に対する書き込み手順を、ブロック領域を用いて表現すると、ブロック領域E0,0→F0,0→E0,8→F0,8→E0,16→F0,16→C0,24→・・・の順で、2次元画像データを順次格納することになる。
Through the above processing, as shown in FIGS. 29 and 30, the 0th to 63rd blocks are added to the block areas E 0,0 and E 0,8 of the bank 0 and the block areas F 0,0 and F 0,8 of the
このように、2次元画像の行方向については、16ピクセルごとにバンク0とバンク1が交互になるようSDRAM4に対してデータが格納される。そして、図14でも示したように、列方向については、1行ごとにバンク0とバンク1が交互になるようにSDRAM4に格納するのである。
Thus, in the row direction of the two-dimensional image, data is stored in the SDRAM 4 so that the
そして、第2の実施の形態で説明したように、行方向のピクセル数が16ピクセルの偶数倍である場合には、バッファを利用することにより、列方向については2次元画像が1行ごとにバンク0とバンク1に対して交互に格納されるようにする。また、行方向のピクセル数が16ピクセルの奇数倍である場合には、バッファを利用する必要はない。
As described in the second embodiment, when the number of pixels in the row direction is an even multiple of 16 pixels, a two-dimensional image is displayed for each row in the column direction by using a buffer. The
このように、MPEG処理の対象となる2次元画像データをバンク0とバンク1とを切り替えながら、2次元画像イメージでSDRAM4に格納する。そして、画像の列方向についてはバンク0とバンク1が交互になるようにSDRAM4に格納する。このため、マクロブロックに注目した場合、SDRAM4の複数の行に画像データがまたがって格納されることとなるが、アクセスする行を切り替える場合にも、空き時間が発生することはない。このアクセス処理については、後で具体的に説明するが、バンク1のデータにアクセスしているタイミングで、バンク0についてアクセスする行を切り替え、バンク0のデータにアクセスしているタイミングで、バンク1についてアクセスする行を切り替えることが可能となるからである。
In this way, 2D image data to be subjected to MPEG processing is stored in the SDRAM 4 as a 2D image image while switching between
また、第1あるいは第2の実施の形態で説明したように、ラスタ順で入力する2次元画像データの1ライン目の画像データを、SDRAM4の1行目(バンク0あるいはバンク1)に格納した後、2ライン目の画像データを続けて、SDRAM4の1行目に格納するような方法をとってもよい。同様に、SDRAM4の各行において、画像データのラインに対応して格納する行を変更させることはなく、順次、画像データを詰めて格納するようにしてもよい。あるいは逆に、2次元画像の水平1ラインのデータサイズがSDRAM4の1行に格納可能なサイズ(バンク0とバンク1の1行に格納可能なサイズの和)より大きくてもよい。この場合にも、16ピクセル単位で画像データをいずれかのバンクの同一行に格納するようにし、2次元画像の水平1ラインの途中で各バンクの行アドレスを変更するようにしても問題はない。つまり、本発明は、本質的には、マクロブロックを構成する1行の16ピクセル分の画像データが全て一方のバンクの同一行に格納され、マクロブロックを構成する次の行の16ピクセル分の画像データが全て他方のバンクの同一行に格納されることである。
Further, as described in the first or second embodiment, the image data of the first line of the two-dimensional image data input in the raster order is stored in the first row (
次に、MPEG処理部2がMPEG圧縮処理を行うために、SDRAM4に格納された画像データにマクロブロック単位でアクセスする処理について説明する。なお、このアクセス処理には、MPEG処理部2がMPEG圧縮処理を行う対象であるマクロブロック単位の画像データを読み出す処理と、マクロブロック単位の画像データを書き込む処理がある。
Next, processing for accessing the image data stored in the SDRAM 4 in units of macro blocks in order for the
図31は、メモリ制御部3によって、SDRAM4に格納された画像データにアクセスする処理のタイミング図である。また、図32は、SDRAM4のバンク0に対するアクセス順序を示す図であり、図33は、SDRAM4のバンク1に対するアクセス順序を示す図である。さらに、図32および図33で示した方法によりマクロブロックにアクセスした後、続けて隣り合うマクロブロックをアクセスする方法を示したのが図34および図35である。図34は、SDRAM4のバンク0に対するアクセス順序を示す図であり、図35は、SDRAM4のバンク1に対するアクセス順序を示す図である。なお、図31ないし図35は、マクロブロック単位での画像データの読み出し処理と書き込み処理に共通の特徴を示す図である。また、図32ないし図35における各ブロック領域E0,0、F0,0等は、図27および図28における各ブロック領域E0,0、F0,0等に対応しており、上述した書き込み処理により、図29および図30で示したような配列で2次元画像データが格納されているものとする。
FIG. 31 is a timing chart of processing for accessing the image data stored in the SDRAM 4 by the
まず、マクロブロック単位での画像データの読み出し処理について説明する。図31において、まず、バンクアドレスに「0」が設定され、行アドレスおよび列アドレスにいずれも「0」が設定され、0番目から15番目までの16ピクセル分の画像データが、バースト転送される。具体的には、図32で示すバンク0のブロック領域E0,0に格納されている16ピクセル分の画像データが読み出される。なお、図31における表記ルールは、図3等と同様である。
First, image data read processing in units of macroblocks will be described. In FIG. 31, first, “0” is set to the bank address, “0” is set to both the row address and the column address, and image data for 16 pixels from the 0th to the 15th is burst transferred. . Specifically, the image data for 16 pixels stored in the block area E 0,0 of
一方、図31に示すように、ブロック領域E0,0の画像データに対する読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定されるとともに行アドレスに「1」が設定され、ブロック領域E0,0からの読み込み処理終了後、320番目から335番目までの16ピクセル分の画像データがバースト転送される。具体的には、図33で示すバンク1のブロック領域F1,0に格納されている16ピクセル分の画像データが読み出される。
On the other hand, as shown in FIG. 31, the bank address is set to “1” and the row address is set to “1” at the timing when the image data in the block area E 0,0 is read. After the reading process from the block area E 0,0 is completed, the image data for 16 pixels from the 320th to the 335th is burst transferred. Specifically, the image data for 16 pixels stored in the block area F1,0 of
さらに、図31に示すように、ブロック領域F1,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「0」に設定されるとともに行アドレスに「2」が設定され、ブロック領域F1,0からの読み込み処理終了後、640番目から655番目までの16ピクセル分の画像データがバースト転送される。具体的には、図33で示すバンク0のブロック領域E2,0に格納されている16ピクセル分の画像データが読み出される。ブロック領域E2,0は、メモリ領域e2,0、e2,1、e2,2、e2,3、e2,4、e2,5、e2,6、e2,7からなる領域である。ここで、バンク0については、ブロック領域E0,0に対するアクセス処理の後、ブロック領域E2,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク1のブロック領域F1,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Further, as shown in FIG. 31, at the timing when the image data read processing of the block area F 1,0 is performed, the bank address is set to “0” and the row address is set to “2”. After the reading process from the block area F1,0 is completed, image data for 16 pixels from the 640th to the 655th is burst transferred. Specifically, the image data for 16 pixels stored in the block area E 2,0 of
そして、ブロック領域E2,0の画像データの読み出し処理が行われているタイミングで、バンクアドレスが「1」に設定されるとともに行アドレスに「3」が設定され、ブロック領域E2,0からの読み込み処理終了後、960番目から975番目までの16ピクセル分の画像データがバースト転送される。具体的には、図33で示すバンク1のブロック領域F3,0に格納されている16ピクセル分の画像データが読み出される。ブロック領域F3,0は、メモリ領域f3,0、f3,1、f3,2、f3,3、f3,4、f3,5、f3,6、f3,7からなる領域である。同様に、バンク1については、ブロック領域F1,0に対するアクセス処理の後、ブロック領域F3,0に対するアクセス処理が行われるため、アクセスする行アドレスを切り替える必要があるが、バンク0のブロック領域E2,0に対するデータ転送が行われているタイミングで、この行アドレスの切り替えが行われるので、空き時間が発生することなく、効率的にデータの読み出し処理が実行されるのである。
Then, at the timing when the readout processing of the image data of the block area E 2, 0 is being performed, is set to "3" to the row address along with the bank address is set to "1", the block area E 2, 0 After the reading process ends, image data for 16 pixels from the 960th to the 975th is burst transferred. Specifically, the image data for 16 pixels stored in the block area F 3,0 of
以上の処理により、図29および図30に示したバンク0のブロック領域E0,0、E2,0およびバンク1のブロック領域F1,0、F3,0に格納されている0番目から15番目までの16ピクセル分の画像データおよび320番目から335番目までの16ピクセル分の画像データおよび640番目から655番目までの16ピクセル分の画像データおよび960番目から975番目までの16ピクセル分の画像データが読み出される。この画像データは、図14の画像イメージに対応させると、行方向が16ピクセルであって、列方向が同じ列の4行分の画像データである。つまり、この後、同様に、バンク0とバンク1を切り替えながら、16ピクセル単位で画像データをバースト転送し、順次、行方向が16ピクセルで、同じ列の画像データを読み出すことにより、2次元的なブロックの画像データを連続的に読み出すことが可能となるのである。そして、このような処理を16行分実行することにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを連続的に読み出すことが可能となるのである。
Through the above processing, from the 0th stored in the block areas E 0,0 and E 2,0 of the bank 0 and the block areas F 1,0 and F 3,0 of the
図31〜図33を用いた説明では、ブロック領域E0,0→F1,0→E2,0→F3,0の画像データを読み出すところまでを説明した。この後、バンク0とバンク1を交互に切り替えつつ、同様に同列のブロック領域の画像データを順次読み出する。つまり、E0,0→F1,0→E2,0→F3,0→E4,0→F5,0→E6,0→F7,0→E8,0→F9,0→E10,0→F11,0→E12,0→F13,0→E14,0→F15,0の順でブロック領域を読み出すことにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを読み出すことが可能となるのである。
In the description with reference to FIGS. 31 to 33, the description has been given to the point of reading the image data of the block area E 0,0 → F 1,0 → E 2,0 → F 3,0 . Thereafter, the image data in the block area in the same row are sequentially read out while alternately switching between the
また、上述したように、図14に示すようなバンク0とバンク1に対する格納ルールが満たされていれば、2次元画像の複数の水平ラインのデータが、SDRAM4の同一の行に格納されていてもよいし、2次元画像データの水平1ラインがSDRAM4の複数の行にまたがって格納されていてもよい。あるいは、2次元画像の各水平ラインの列方向の順序と、SDRAM4に格納される列方向の順序が異なっていてもよいし、とびとびの行に格納されるようになっていてもよい。
As described above, if the storage rules for
このように、マクロブロック単位で画像データを高速に読み出すことが可能であるが、MPEG処理部2により、マクロブロック単位で画像データを書き込む処理も同様である。この書き込み処理も、図31で示したタイミング図、図32、図33で示したアクセス順序で行えばよい。つまり、ブロック領域E0,0→F1,0→E2,0→F3,0→E4,0・・・の順で画像データを書き込むようにすればよい。これにより、マクロブロック単位での画像データの読み込みおよび書き込み両方の処理を高速に行うことが可能である。
As described above, the image data can be read at a high speed in units of macroblocks, but the process of writing the image data in units of macroblocks by the
以上説明した方法により、縦16ピクセル×横16ピクセルのマクロブロックに対するアクセスを行った後、さらに、隣り合うマクロブロックにアクセスする方法は、第2の実施の形態と同様である。続けて隣り合うマクロブロックにアクセスする場合には、そのアクセス方向を列方向について逆にするようにする。つまり、図34および図35に示すように、このマクロブロックに対しては、図32および図33で示した方法に比べて列方向のアクセスを逆転させるのである。 The method for accessing the adjacent macroblocks after accessing the macroblocks of 16 pixels by 16 pixels by the method described above is the same as in the second embodiment. When the adjacent macroblock is subsequently accessed, the access direction is reversed with respect to the column direction. That is, as shown in FIGS. 34 and 35, the access in the column direction is reversed for this macroblock as compared with the method shown in FIGS.
まず、ブロック領域E15,0に対するアクセスを行い、次に、ブロック領域F14,0にアクセスする。そして、バンク0とバンク1を切り替えながら同様のアクセスを行う。つまり、E15,0→F14,0→E13,0→F12,0→E11,0→F10,0→E9,0→F8,0→E7,0→F6,0→E5,0→F4,0→E3,0→F2,0→E1,0→F0,0の順でブロック領域を読み出すことにより、縦16ピクセル×横16ピクセルのマクロブロックに対応する画像データを読み出すことが可能となるのである。これにより隣り合うマクロブロックに対して連続的にアクセスする場合でも、処理の全般にわたって常にバンク0とバンク1に対するアクセスが交互になるので、一方のバンクに対するアクセスを行っている間に、他方のバンクの行を切り替える処理を行うことが可能である。
First, access to the block area E 15,0, then accesses the block area F 14,0. Then, the same access is performed while switching between
次に、図36を参照して、データの種別に応じた各メモリ領域への画像データの格納方法について説明する。ここでも、図13で示したように、画像データは、YUV4:2:0フォーマットの場合を説明する。 Next, a method for storing image data in each memory area corresponding to the type of data will be described with reference to FIG. Here, as shown in FIG. 13, the case where the image data is in the YUV 4: 2: 0 format will be described.
図36で示したタイミング図の中で、前半の2つのバースト転送処理は、輝度データに対する処理である。後半の2つのバースト転送処理は、色差データに対する処理である。まず、輝度データの場合には、2つのYデータを1つのメモリ領域に格納する。つまり、1画素のYデータは8ビットであり、本実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は16ビットのデータを格納可能としているので、2ピクセル分のYデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする16ビットのデータ線のうち上位8ビットと下位8ビットを、それぞれ2ピクセル分のYデータ転送用に使用する。このようにして、バンク0には、8つのアドレスに対応した8つのメモリ領域に16ピクセル分のYデータが格納される。続いて、バンク1において、8つのアドレスに対応した8つのメモリ領域に16ピクセル分のYデータが格納されるのである。
In the timing diagram shown in FIG. 36, the first two burst transfer processes are processes for luminance data. The latter two burst transfer processes are processes for color difference data. First, in the case of luminance data, two Y data are stored in one memory area. That is, the Y data of one pixel is 8 bits, and the memory area corresponding to one address of the SDRAM 4 in the present embodiment can store 16 bits of data. It is stored in the area. At this time, the upper 8 bits and the lower 8 bits of the 16-bit data line for accessing the SDRAM 4 are respectively used for Y data transfer for 2 pixels. In this way,
次に、色差データの格納方法について説明する。この実施の形態では、1組のUデータとVデータをパッキングして1つのメモリ領域に格納する。つまり、UデータおよびVデータは、いずれも1画素8ビットのデータであり、本実施の形態におけるSDRAM4の1アドレスに対応するメモリ領域は16ビットのデータを格納可能としているので、UデータとVデータからなる2ピクセル分のデータを1アドレスのメモリ領域に格納するのである。このとき、SDRAM4にアクセスする16ビットのデータ線のうち、たとえば上位8ビットをUデータ転送用に割り当て、下位8ビットをVデータ転送用に割り当てる。このようにして、バンク0には、8つのアドレスに対応した8つのメモリ領域に16ピクセル分の色差データが格納される。続いて、バンク1において、8つのアドレスに対応した8つのメモリ領域に16ピクセル分の色差データが格納されるのである。
Next, a method for storing color difference data will be described. In this embodiment, a set of U data and V data is packed and stored in one memory area. That is, U data and V data are both 8-bit data per pixel, and the memory area corresponding to one address of SDRAM 4 in this embodiment can store 16-bit data. Data for two pixels consisting of data is stored in a memory area of one address. At this time, among the 16-bit data lines accessing the SDRAM 4, for example, the upper 8 bits are assigned for U data transfer and the lower 8 bits are assigned for V data transfer. In this way, the
このように、UデータとVデータをパッキングして、1つのメモリ領域に格納することにより、輝度データについてSDRAM4にアクセスする場合と、色差データについてSDRAM4にアクセスする場合とで、同じ転送手順を実行することが可能となるのである。 In this way, by packing U data and V data and storing them in one memory area, the same transfer procedure is executed when accessing SDRAM 4 for luminance data and when accessing SDRAM 4 for color difference data. It becomes possible to do.
具体的には、まず、輝度データについてマクロブロック単位のデータアクセスを行い、次に、同じマクロブロック領域内の色差データについてマクロブロック単位のデータアクセスを行うことになるが(図36は、輝度データについてのデータアクセス処理と色差データに対するデータアクセス処理がちょうど入れ替わるタイミングを示している。)、輝度データに対するデータアクセスと色差データに対するデータアクセスを同じ手順とすることができるのである。ただし、YUV4:2:0フォーマットの場合には、UデータとVデータの数が行方向(縦方向)にも1/2に間引かれているので、1つのマクロブロックに対する処理は、輝度データに対する処理の半分の処理でよい。 Specifically, first, data access in units of macroblocks is performed on luminance data, and then data access in units of macroblocks is performed on color difference data in the same macroblock region (FIG. 36 shows luminance data). The timing at which the data access process and the data access process for the color difference data are just switched is shown.), The data access for the luminance data and the data access for the color difference data can be made the same procedure. However, in the case of the YUV 4: 2: 0 format, the number of U data and V data is halved in the row direction (vertical direction), so the processing for one macroblock is performed with luminance data. Half of the processing is sufficient.
以上の本発明の3つの実施の形態について説明した。そして、上記各実施の形態においては、メモリとしてSDRAMを例に説明したが、本発明は、SDRAMのみならず、一般的にDRAMに対して適用可能である。 The three embodiments of the present invention have been described. In each of the above embodiments, the SDRAM is described as an example of the memory. However, the present invention can be applied not only to the SDRAM but also to the DRAM in general.
3 メモリ制御部
4 SDRAM
3 Memory control unit 4 SDRAM
Claims (21)
MPEGの処理対象である2次元画像をラスタ順で入力する第1工程と、
前記2次元画像の行方向のデータについては8ピクセルごとに前記第1バンクおよび前記第2バンクを交互に切り替えながら前記DRAMに格納し、前記2次元画像の列方向のデータについては前記DRAMの同一バンクに格納する第2工程と、
を備えることを特徴とするDRAMアクセス方法。 A method for accessing a DRAM comprising a first bank and a second bank, comprising:
A first step of inputting a two-dimensional image to be processed in MPEG in raster order;
The row direction data of the two-dimensional image is stored in the DRAM every eight pixels while alternately switching the first bank and the second bank, and the column direction data of the two-dimensional image is the same as that of the DRAM. A second step of storing in the bank;
A DRAM access method comprising:
前記第2工程によって格納された画像データに対して前記第1バンクと前記第2バンクを交互に切り替えながら8ピクセル単位でアクセスすることにより、縦16ピクセル×横16ピクセルのMPEG処理用のマクロブロックにアクセスする第3工程、
を備えることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 1, further comprising:
By accessing the image data stored in the second step in units of 8 pixels while alternately switching the first bank and the second bank, a macroblock for MPEG processing of 16 pixels vertically × 16 pixels horizontally The third step of accessing
A DRAM access method comprising:
前記第3工程は、
前記第1バンクに格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の8ピクセルの画像データにアクセスした後、前記第2バンクに格納されたラスタ順で次の8ピクセルの画像データにアクセスし、次に、前記第1バンクに格納されたマクロブロックにおける第m+1行目の8ピクセルの画像データにアクセスした後、前記第2バンクに格納されたラスタ順で次の8ピクセルの画像データにアクセスする工程、
を含むことを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 2, comprising:
The third step includes
After accessing 8-pixel image data in the m-th row (m is an integer not smaller than 0 and not larger than 14) in the macroblock stored in the first bank, the next 8 in the raster order stored in the second bank. After accessing the image data of the pixels, and then accessing the image data of 8 pixels in the (m + 1) th row in the macroblock stored in the first bank, the next in the raster order stored in the second bank Accessing 8-pixel image data;
A DRAM access method comprising:
前記第2工程は、
前記2次元画像の第n行目(nは0以上の整数)の画像データを、前記第1バンクおよび前記第2バンクの第n行目の記憶領域に格納し、第n+1行目の画像データを、前記第1バンクおよび前記第2バンクの第n+1行目の記憶領域に格納する工程、
を含むことを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 1, comprising:
The second step includes
Image data of the nth row (n is an integer of 0 or more) of the two-dimensional image is stored in the storage area of the nth row of the first bank and the second bank, and the image data of the (n + 1) th row is stored. In the storage area of the (n + 1) th row of the first bank and the second bank,
A DRAM access method comprising:
前記第3工程は、
前記第1バンクの第n行目に格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の8ピクセルの画像データにアクセスした後、前記第2バンクの第n行目に格納されたラスタ順で次の8ピクセルの画像データにアクセスし、次に、前記第1バンクの第n+1行目に格納されたマクロブロックにおける第m+1行目の8ピクセルの画像データにアクセスした後、前記第2バンクの第n+1行目に格納されたラスタ順で次の8ピクセルの画像データにアクセスする工程、
を含むことを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 4, comprising:
The third step includes
After accessing 8-pixel image data of the m-th row (m is an integer of 0 to 14) in the macroblock stored in the n-th row of the first bank, the n-th row of the second bank Next, the image data of the next 8 pixels is accessed in the raster order stored, and then the image data of 8 pixels of the (m + 1) th row in the macro block stored in the (n + 1) th row of the first bank is accessed. And accessing the next 8-pixel image data in the raster order stored in the (n + 1) th row of the second bank.
A DRAM access method comprising:
前記DRAMは1アドレスに16ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する4つのアドレスに対して8ピクセルの画像データが格納されることを特徴とするDRAMアクセス方法。 A DRAM access method according to any one of claims 1 to 5,
The DRAM can store 16-bit data at one address, and each pixel of the two-dimensional image has 8-bit information, so that the first and second banks of the DRAM are the same. A DRAM access method characterized in that image data of 8 pixels is stored for four consecutive addresses in a row.
前記DRAMに対してラスタ順で連続する8ピクセルの画像データが、バースト転送されることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 6, comprising:
8. A DRAM access method, wherein 8-pixel image data continuous in a raster order is burst transferred to the DRAM.
前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して2ピクセル分のYデータが格納されることを特徴とするDRAMアクセス方法。 A DRAM access method according to claim 6 or 7,
When the image data stored in the DRAM is Y (luminance) data, Y data for two pixels is stored for one address of the DRAM.
前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対して1組のUデータとVデータが格納されることを特徴とするDRAMアクセス方法。 A DRAM access method according to any one of claims 6 to 8, comprising:
When the image data stored in the DRAM is U, Y (color difference) data, a set of U data and V data is stored for one address of the DRAM. Method.
MPEGの処理対象である2次元画像をラスタ順で入力する第1工程と、
前記2次元画像の行方向のデータについては16ピクセルごとに前記第1バンクおよび前記第2バンクを交互に切り替えながら前記DRAMに格納し、前記2次元画像の列方向のデータについては1行ごとに前記第1バンクおよび前記第2バンクが交互となるように前記DRAMに格納する第2工程と、
を備えることを特徴とするDRAMアクセス方法。 A method for accessing a DRAM comprising a first bank and a second bank, comprising:
A first step of inputting a two-dimensional image to be processed in MPEG in raster order;
The row direction data of the 2D image is stored in the DRAM while alternately switching the first bank and the second bank every 16 pixels, and the column direction data of the 2D image is stored for each row. A second step of storing in the DRAM such that the first bank and the second bank alternate;
A DRAM access method comprising:
前記第2工程によって格納された画像データに対して前記第1バンクと前記第2バンクを交互に切り替えながら16ピクセル単位でアクセスすることにより、縦16ピクセル×横16ピクセルのMPEG処理用のマクロブロックにアクセスする第3工程、
を備えることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 10, further comprising:
By accessing the image data stored in the second step in units of 16 pixels while alternately switching the first bank and the second bank, a macroblock for MPEG processing of 16 pixels vertically × 16 pixels horizontally The third step of accessing
A DRAM access method comprising:
前記第3工程は、
前記第1バンクに格納されたマクロブロックにおける第m行目(mは0以上14以下の整数)の16ピクセルの画像データにアクセスした後、次に、前記第2バンクに格納されたマクロブロックにおける第m+1行目の16ピクセルの画像データにアクセスする工程、
を含むことを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 11, comprising:
The third step includes
After accessing the image data of 16 pixels in the m-th row (m is an integer not smaller than 0 and not larger than 14) in the macro block stored in the first bank, next, in the macro block stored in the second bank Accessing the image data of 16 pixels in the (m + 1) th row;
A DRAM access method comprising:
前記第3工程は、2次元画像上において隣り合うマクロブロックに対して連続してアクセスする際には、隣り合うマクロブロックについて、列方向のアクセス順序を逆方向とすることを特徴とするDRAMアクセス方法。 A DRAM access method according to claim 11 or claim 12,
The third step is characterized in that when accessing adjacent macroblocks on a two-dimensional image continuously, the access order in the column direction is reversed for the adjacent macroblocks. Method.
前記第3工程は、
請求項2に記載の工程によりマクロブロックに対してアクセスした後、そのマクロブロックに隣り合うマクロブロックに対して連続してアクセスする際には、前記第1バンクに格納されたマクロブロックにおける第k行目(kは1以上15以下の整数)の16ピクセルの画像データにアクセスした後、次に、前記第2バンクに格納されたマクロブロックにおける第k−1行目の16ピクセルの画像データにアクセスする工程、
を含むことを特徴とするDRAMアクセス方法。 A DRAM access method according to claim 12, comprising:
The third step includes
3. After accessing a macroblock according to the process of claim 2, when continuously accessing a macroblock adjacent to the macroblock, the kth in the macroblock stored in the first bank. After accessing the 16-pixel image data in the row (k is an integer from 1 to 15), next, the 16-pixel image data in the (k−1) -th row in the macroblock stored in the second bank. The process of accessing,
A DRAM access method comprising:
前記DRAMは1アドレスに32ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する4つのアドレスに対して16ピクセルの画像データが格納されることを特徴とするDRAMアクセス方法。 The DRAM access method according to any one of claims 10 to 14,
The DRAM can store 32-bit data at one address, and each pixel of the two-dimensional image has 8-bit information, so that the first and second banks of the DRAM are the same. A DRAM access method, wherein 16-pixel image data is stored at four consecutive addresses in a row.
前記DRAMは1アドレスに16ビットのデータを格納可能としており、前記2次元画像の各ピクセルは8ビットの情報を備えることにより、前記DRAMの前記第1および第2バンクに対しては、それぞれ同一行の連続する8つのアドレスに対して16ピクセルの画像データが格納されることを特徴とするDRAMアクセス方法。 The DRAM access method according to any one of claims 10 to 14,
The DRAM can store 16-bit data at one address, and each pixel of the two-dimensional image has 8-bit information, so that the first and second banks of the DRAM are the same. A DRAM access method characterized in that image data of 16 pixels is stored at eight consecutive addresses in a row.
前記DRAMに対してラスタ順で連続する16ピクセルの画像データが、バースト転送されることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 15 or 16, comprising:
A DRAM access method characterized in that image data of 16 pixels continuous in raster order is burst transferred to the DRAM.
前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して4ピクセル分のYデータが格納されることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 15, comprising:
A DRAM access method, wherein when the image data stored in the DRAM is Y (luminance) data, Y data for four pixels is stored for one address of the DRAM.
前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対してUデータとVデータの組が2組格納されることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 15 or 18,
If the image data stored in the DRAM is U, Y (color difference) data, two sets of U data and V data are stored for one address of the DRAM. how to access.
前記DRAMに格納される画像データが、Y(輝度)データの場合には、前記DRAMの1つのアドレスに対して2ピクセル分のYデータが格納されることを特徴とするDRAMアクセス方法。 The DRAM access method according to claim 16, comprising:
When the image data stored in the DRAM is Y (luminance) data, Y data for two pixels is stored for one address of the DRAM.
前記DRAMに格納される画像データが、U,Y(色差)データの場合には、前記DRAMの1つのアドレスに対して1組のUデータとVデータとが格納されることを特徴とするDRAMアクセス方法。
The DRAM access method according to claim 16 or 20,
When the image data stored in the DRAM is U, Y (color difference) data, a set of U data and V data is stored for one address of the DRAM. how to access.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004226872A JP2005236946A (en) | 2004-01-20 | 2004-08-03 | Accessing method to dram |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004011750 | 2004-01-20 | ||
JP2004226872A JP2005236946A (en) | 2004-01-20 | 2004-08-03 | Accessing method to dram |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010276844A Division JP4997418B2 (en) | 2004-01-20 | 2010-12-13 | DRAM access method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005236946A true JP2005236946A (en) | 2005-09-02 |
Family
ID=35019402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004226872A Pending JP2005236946A (en) | 2004-01-20 | 2004-08-03 | Accessing method to dram |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005236946A (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08186826A (en) * | 1994-12-28 | 1996-07-16 | Graphics Commun Lab:Kk | Image decoding processing method and storage device used for it and image decoder |
JPH08307875A (en) * | 1995-05-02 | 1996-11-22 | Matsushita Electric Ind Co Ltd | Image memory device and motion vector detection circuit |
JPH10162131A (en) * | 1996-11-28 | 1998-06-19 | Matsushita Electric Ind Co Ltd | Image processor |
JPH10191236A (en) * | 1996-12-25 | 1998-07-21 | Nec Corp | Image processor and image data memory arranging method |
JPH10304354A (en) * | 1997-04-28 | 1998-11-13 | Toshiba Corp | Moving image decoding method and moving image decoder |
JPH11317962A (en) * | 1998-05-07 | 1999-11-16 | Hitachi Ltd | Data storage method and data transfer circuit |
JP2000172560A (en) * | 1998-12-03 | 2000-06-23 | Matsushita Electric Ind Co Ltd | Memory controller |
JP2003186740A (en) * | 2001-12-19 | 2003-07-04 | Matsushita Electric Ind Co Ltd | Memory control device and memory control method |
-
2004
- 2004-08-03 JP JP2004226872A patent/JP2005236946A/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08186826A (en) * | 1994-12-28 | 1996-07-16 | Graphics Commun Lab:Kk | Image decoding processing method and storage device used for it and image decoder |
JPH08307875A (en) * | 1995-05-02 | 1996-11-22 | Matsushita Electric Ind Co Ltd | Image memory device and motion vector detection circuit |
JPH10162131A (en) * | 1996-11-28 | 1998-06-19 | Matsushita Electric Ind Co Ltd | Image processor |
JPH10191236A (en) * | 1996-12-25 | 1998-07-21 | Nec Corp | Image processor and image data memory arranging method |
JPH10304354A (en) * | 1997-04-28 | 1998-11-13 | Toshiba Corp | Moving image decoding method and moving image decoder |
JPH11317962A (en) * | 1998-05-07 | 1999-11-16 | Hitachi Ltd | Data storage method and data transfer circuit |
JP2000172560A (en) * | 1998-12-03 | 2000-06-23 | Matsushita Electric Ind Co Ltd | Memory controller |
JP2003186740A (en) * | 2001-12-19 | 2003-07-04 | Matsushita Electric Ind Co Ltd | Memory control device and memory control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6496192B1 (en) | Modular architecture for image transposition memory using synchronous DRAM | |
KR100817057B1 (en) | Mapping method and video system for mapping pixel data included same pixel data group to same bank address of memory | |
JPH10191236A (en) | Image processor and image data memory arranging method | |
US20020109699A1 (en) | Pixel pages optimized for GLV | |
JPH08278779A (en) | Frame memory controller for graphics | |
US8345167B2 (en) | Methods of storing and accessing pictures | |
JPWO2008146406A1 (en) | Image processing apparatus and method for pixel data conversion | |
US8269786B2 (en) | Method for reading and writing image data in memory | |
JP2011053671A (en) | Semiconductor integrated circuit | |
US7061496B2 (en) | Image data processing system and image data reading and writing method | |
US20080044107A1 (en) | Storage device for storing image data and method of storing image data | |
US20050088539A1 (en) | Image processing apparatus and image processing method | |
KR19980081641A (en) | Moving picture decoding method and moving picture decoding device | |
US20090189919A1 (en) | Image scaling method | |
JP4997418B2 (en) | DRAM access method | |
JP2007189687A (en) | Apparatus and method of video decoding to alternatively store lines of screen in pixels, and method of storing reference screen | |
JP2005236946A (en) | Accessing method to dram | |
WO2013099518A1 (en) | Image processing device and memory access control method | |
JP3288327B2 (en) | Video memory circuit | |
JPH11306343A (en) | Rotational processing device for two-dimensional data | |
US20120218279A1 (en) | Image processing apparatus and memory access method thereof | |
JP2008146235A (en) | Image processor | |
US20050021902A1 (en) | System, method, and apparatus for efficiently storing macroblocks | |
JP4821410B2 (en) | MEMORY CONTROL METHOD, MEMORY CONTROL DEVICE, IMAGE PROCESSING DEVICE, AND PROGRAM | |
JP3405079B2 (en) | Memory allocation method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070726 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20070726 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090911 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101026 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101102 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110308 |