JP4594214B2 - Image decoding device - Google Patents

Image decoding device Download PDF

Info

Publication number
JP4594214B2
JP4594214B2 JP2005322410A JP2005322410A JP4594214B2 JP 4594214 B2 JP4594214 B2 JP 4594214B2 JP 2005322410 A JP2005322410 A JP 2005322410A JP 2005322410 A JP2005322410 A JP 2005322410A JP 4594214 B2 JP4594214 B2 JP 4594214B2
Authority
JP
Japan
Prior art keywords
unit
decoding
slice
data
distributed
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.)
Active
Application number
JP2005322410A
Other languages
Japanese (ja)
Other versions
JP2007129648A (en
Inventor
丈志 谷戸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2005322410A priority Critical patent/JP4594214B2/en
Publication of JP2007129648A publication Critical patent/JP2007129648A/en
Application granted granted Critical
Publication of JP4594214B2 publication Critical patent/JP4594214B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、例えば、符号化された画像データの復号処理を高速に行う画像復号装置に関する。   The present invention relates to an image decoding apparatus that performs high-speed decoding processing of encoded image data, for example.

従来、MPEG(moving picture experts group)等の圧縮符号化形式により動画像を符号化して得られた符号化ストリームデータを復号する復号装置として、符号化ストリームデータを所定単位ごとに複数の復号部に振り分け、復号処理を並行して行うものが知られている。具体的には、例えば、特許文献1の図11に示される復号装置では、デコーダ制御部103が複数のデコーダ110にストリームデータを順次入力し、各デコーダ110がそれぞれ入力されたデータの復号処理を行うようになっている。また、特許文献2の図4に示される復号装置では、ロウデコーダ制御回路16が、ストリームバッファ14aに蓄積されたデータを複数のロウデコーダ17〜19に分配して入力し、入力されたデータに対して各ロウデコーダ17〜19が並列的に復号処理を行うようになっている。   Conventionally, as a decoding device that decodes encoded stream data obtained by encoding a moving image using a compression encoding format such as MPEG (moving picture experts group), the encoded stream data is divided into a plurality of decoding units for each predetermined unit. One that performs sorting and decoding in parallel is known. Specifically, for example, in the decoding device shown in FIG. 11 of Patent Document 1, the decoder control unit 103 sequentially inputs stream data to a plurality of decoders 110, and each decoder 110 performs a decoding process on the input data. To do. In the decoding device shown in FIG. 4 of Patent Document 2, the row decoder control circuit 16 distributes and inputs the data accumulated in the stream buffer 14a to the plurality of row decoders 17 to 19, and converts the data into the input data. On the other hand, each of the row decoders 17 to 19 performs a decoding process in parallel.

この種の画像復号装置においては、各復号部が、振り分けられた各所定単位の符号化ストリームデータの復号処理を完了した場合には完了信号を出力し、その完了信号を受信した制御部が、完了信号を出力した復号部に対してデータが配置された順番に所定単位の符号化ストリームデータを入力するようになっている。例えば特許文献2の図7に示されるように、各ロウデコーダ17〜19が、1行分のデータについて復号処理を完了した場合には、完了信号をロウデコーダ制御回路16に送出し、完了信号を受信したロウデコーダ制御回路16が、完了信号を送出したロウデコーダ17〜19に対して、一行分のデータをデータが配置された順番に入力するようになっている。また、特許文献1の復号装置は、1スライスを所定単位として同様の処理を行うようになっている。
特開2002−325255号公報(段落0003〜0007、図11) 特開2003−32679号公報(段落0035〜0037、図4、段落0077、図7、段落0002)
In this type of image decoding device, each decoding unit outputs a completion signal when the decoding process of each assigned unit of encoded stream data is completed, and the control unit that receives the completion signal, A predetermined unit of encoded stream data is input to the decoding unit that has output the completion signal in the order in which the data is arranged. For example, as shown in FIG. 7 of Patent Document 2, when each of the row decoders 17 to 19 completes the decoding process for one row of data, a completion signal is sent to the row decoder control circuit 16, and the completion signal The row decoder control circuit 16 that has received the data inputs data for one row in the order in which the data are arranged to the row decoders 17 to 19 that have transmitted the completion signal. Also, the decoding device of Patent Document 1 performs the same processing with one slice as a predetermined unit.
JP 2002-325255 A (paragraphs 0003 to 0007, FIG. 11) JP 2003-32679 A (paragraphs 0035 to 0037, FIG. 4, paragraph 0077, FIG. 7, paragraph 0002)

しかしながら、上記のように完了信号を出力した復号部に、データが配置された順番に入力されると、他の復号部が休止状態となる時間が長くなる場合がある。例えば、フレーム内の最後のデータがいずれかの復号部に入力された直後に、他の復号部の復号処理が完了し、フレーム内の最後のデータの復号処理に長い時間がかかった場合である。つまり、復号部の休止状態となる時間が長くなることにより、各フレーム全体のデータを復号するのにかかる時間が長くなっていた。   However, if data is input in the order in which the data is arranged to the decoding unit that has output the completion signal as described above, the time during which the other decoding units are in a pause state may become longer. For example, immediately after the last data in the frame is input to one of the decoding units, the decoding process of the other decoding unit is completed, and it takes a long time to decode the last data in the frame. . That is, the time taken for the decoding unit to be in a dormant state becomes longer, so that the time taken to decode the data of each frame becomes longer.

本発明は、上記の点に鑑み、複数の復号部によって復号処理を並行して行う復号装置において、符号化されたデータの復号処理にかかる時間をより短縮することを目的とする。   In view of the above points, an object of the present invention is to further reduce the time required for decoding processing of encoded data in a decoding device that performs decoding processing in parallel by a plurality of decoding units.

上記の課題を解決するため、請求項1の発明は、
入力される符号化画像データを複数の復号部によって並行して復号する画像復号装置であって、
上記入力される符号化画像データを構成する各スライスを、各復号部に復号されるスライスに含まれる小単位データの数の合計が平均化されるように、復号部に分配して復号させる分配処理部を備えていることを特徴とする。
In order to solve the above problems, the invention of claim 1
An image decoding device that decodes input encoded image data in parallel by a plurality of decoding units,
Distribution in which each slice constituting the input encoded image data is distributed to the decoding unit and decoded so that the total number of small unit data included in the slice decoded by each decoding unit is averaged A processing unit is provided.

また、請求項2の発明は、
請求項1の画像復号装置であって、
上記分配処理部は、分配すべき各スライスを、各復号部について既に分配されることが決定されたスライスに含まれる小単位データの数の合計を算出し、上記合計が最も少ない復号部に分配するように構成されていることを特徴とする。
The invention of claim 2
The image decoding device according to claim 1,
The distribution processing unit calculates the total number of small unit data included in the slices that have already been determined to be distributed for each decoding unit, and distributes the slices to be distributed to the decoding unit having the smallest total It is comprised so that it may do.

また、請求項3の発明は、
請求項1の画像復号装置であって、
上記分配処理部は、分配すべき各スライスを、含まれる小単位データの数が多いものから、既に分配されることが決定されたスライスに含まれる小単位データの数の合計が最も少ない復号部に分配するように構成されていることを特徴とする。
The invention of claim 3
The image decoding device according to claim 1,
The distribution processing unit is a decoding unit having the smallest total number of small unit data included in slices that have already been determined to be distributed since each slice to be distributed has a large number of small unit data included. It is comprised so that it may distribute to.

また、請求項4の発明は、
請求項1の画像復号装置であって、
分配されるべきスライスに含まれる小単位データの数の合計を復号部の数で割った平均値を算出する平均値算出部を備え、
上記分配処理部は、それぞれの復号部に対して、各スライスを、既に当該復号部に分配されることが決定されたスライスに含まれる小単位データの数が上記平均値を超えるまで順次分配することを特徴とする。
The invention of claim 4
The image decoding device according to claim 1,
An average value calculation unit that calculates an average value obtained by dividing the total number of small unit data included in the slice to be distributed by the number of decoding units;
The distribution processing unit sequentially distributes each slice to each decoding unit until the number of small unit data included in the slices already determined to be distributed to the decoding unit exceeds the average value. It is characterized by that.

また、請求項5の発明は、
請求項1の画像復号装置であって、
上記小単位データは1ビットのデータであることを特徴とする。
The invention of claim 5
The image decoding device according to claim 1,
The small unit data is 1-bit data.

また、請求項6の発明は、
請求項1の画像復号装置であって、
上記符号化画像データは、MPEG規格による圧縮符号化が行われたものであり
記小単位データは、各マクロブロックの符号化データであることを特徴とする。
The invention of claim 6
The image decoding device according to claim 1,
The encoded image data has been subjected to compression encoding according to the MPEG standard .
Upper Symbol small unit data is characterized by a coded data of each macro block.

これらにより、各復号部が復号するスライスに含まれる小単位データの数の合計が平均化されることによって、各復号部の復号処理時間も平均化される。したがって、各復号部が休止状態となる時間が短くなり、符号化画像データの復号処理にかかる時間が短くなる As a result, the decoding processing time of each decoding unit is averaged by averaging the total number of small unit data included in the slices decoded by each decoding unit. Therefore, the time for each decoding unit to be in a pause state is shortened, and the time required for the decoding process of the encoded image data is shortened .

た、請求項の発明は、
入力される符号化画像データを複数の復号部によって並行して復号する画像復号装置であって、
上記入力される符号化画像データを構成する現在画面の各スライスについて、前画面のスライスのうち、その現在画面のスライスに対応するスライスに含まれる小単位データの数を特定し、上記現在画面の各スライスを、各復号部に復号される上記現在画面のスライスについて特定した小単位データの数の合計が平均化されるように、復号部に分配して復号させる分配処理部を備えていることを特徴とする。
Also, the invention of claim 7,
An image decoding device that decodes input encoded image data in parallel by a plurality of decoding units,
For each slice of the current screen constituting the input encoded image data, the number of small unit data included in the slice corresponding to the slice of the current screen among the slices of the previous screen is specified, and the current screen A distribution processing unit that distributes and decodes each slice to the decoding unit so that the total number of small unit data specified for the slice of the current screen decoded by each decoding unit is averaged It is characterized by.

これにより、各復号部が復号するスライスに対応する前画面のスライスに含まれる小単位データの数が平均化されることによって、各復号部の復号処理時間も平均化される。したがって、各復号部が休止状態となる時間が短くなり、符号化画像データの復号処理にかかる時間が短くなる。 Thereby, the number of small unit data included in the slice of the previous screen corresponding to the slice decoded by each decoding unit is averaged, so that the decoding processing time of each decoding unit is also averaged. Therefore, the time for each decoding unit to be in a pause state is shortened, and the time required for the decoding process of the encoded image data is shortened.

本発明によれば、複数の復号部によって復号処理を並行して行う復号装置において、符号化されたデータの復号処理にかかる時間をより短縮することができる。   ADVANTAGE OF THE INVENTION According to this invention, in the decoding apparatus which performs a decoding process in parallel by a some decoding part, the time concerning the decoding process of the encoded data can be shortened more.

以下、本発明に係る復号装置の実施形態について、図面を参照して説明する。なお、以下の各実施形態において、他の実施形態と同様の機能を有する構成要素については同一の符号を付して説明を省略する。   Hereinafter, embodiments of a decoding device according to the present invention will be described with reference to the drawings. In each of the following embodiments, components having functions similar to those of the other embodiments are denoted by the same reference numerals and description thereof is omitted.

《MPEG2ビットストリームのデータ構造》
最初に、本実施の形態に係る復号装置の復号対象であるMPEG2ビットストリームのデータ構造について図1〜図3を用いて説明する。
<< Data structure of MPEG2 bit stream >>
First, the data structure of an MPEG2 bit stream that is a decoding target of the decoding apparatus according to the present embodiment will be described with reference to FIGS.

なお、本実施の形態では、MPEG2方式により圧縮符号化されたMPEG2ビットストリームという符号化画像データを復号する復号装置に適用した場合を説明するが、MPEG1やMPEG4等のあらゆる画像符号化方式により符号化された符号化画像データを復号する場合にも同様に適用することができる。   In the present embodiment, a case where the present invention is applied to a decoding apparatus that decodes encoded image data called an MPEG2 bit stream compressed and encoded by the MPEG2 method will be described. However, encoding is possible by any image encoding method such as MPEG1 or MPEG4. The present invention can be similarly applied to the case where the encoded image data is decoded.

MPEG2ビットストリームのデータは、復号装置側で正しく受け取ることができるように、そのデータ構造が細かく決められており、具体的には、図1に示すように、シーケンス、GOP(Group of Picture)、ピクチャ、スライス、マクロブロック、およびブロックという階層構造を有する。   The data structure of the MPEG2 bit stream is determined in detail so that the decoding apparatus can correctly receive the data. Specifically, as shown in FIG. 1, a sequence, GOP (Group of Picture), It has a hierarchical structure of pictures, slices, macroblocks, and blocks.

シーケンスは、1つ以上のGOPを含み、一般に1つのビデオプログラム全体の符号化信号データである。このシーケンスは、シーケンスヘッダで始まり、シーケンスエンドで終了する。シーケンスヘッダには、画像の大きさを表す情報、1秒間に符号化するフレームの数、通信速度など、シーケンス全体に関連する情報が含まれる。また、シーケンスヘッダに続いて、MPEG2の符号化信号であることを表す機能拡張情報が挿入され、入力画像信号形式などが指定される。   A sequence includes one or more GOPs and is generally encoded signal data of one entire video program. This sequence begins with a sequence header and ends at the end of the sequence. The sequence header includes information related to the entire sequence, such as information indicating the size of the image, the number of frames to be encoded per second, and the communication speed. Further, following the sequence header, function expansion information indicating that it is an MPEG2 encoded signal is inserted, and an input image signal format or the like is designated.

GOPは、フレーム内符号化が可能なIピクチャ、過去のフレームのみを用いて前方向の動き補償を行うPピクチャ、および過去と未来の両方のフレームを用いて双方向の動き補償を行うBピクチャのうち、1つ以上のピクチャを含んで構成される。なお、各GOPの最初のピクチャとしては、必ずIピクチャが挿入される。GOPヘッダには、画像復元時に音声などとの時間合わせを可能とするためのタイムスタンプ情報などが含まれる。   GOP is an I picture that can be encoded within a frame, a P picture that performs forward motion compensation using only past frames, and a B picture that performs bidirectional motion compensation using both past and future frames. Of these, one or more pictures are included. Note that an I picture is always inserted as the first picture of each GOP. The GOP header includes time stamp information for enabling time adjustment with audio or the like at the time of image restoration.

ピクチャは、1つ以上のスライスを含み、図2に示すように、動画像信号を構成する1枚の画面(m画素×nライン)分のデータである。このピクチャのピクチャヘッダには、I、P、Bピクチャを識別するための情報や、各ピクチャの表示順序を指定する情報などが含まれる。また、ピクチャヘッダに続く機能拡張情報には、フレーム構造/フィールド構造の設定など、MPEG2で導入されている機能を指定する情報が含まれる。   A picture includes one or more slices and is data for one screen (m pixels × n lines) constituting a moving image signal, as shown in FIG. The picture header of this picture includes information for identifying I, P, and B pictures, information for specifying the display order of each picture, and the like. Further, the function extension information following the picture header includes information specifying a function introduced in MPEG2, such as setting of a frame structure / field structure.

スライスは、画面上で左右方向に1列に並ぶ1つ以上のマクロブロックから構成され、スライス情報には、量子化特性を表す情報など、このスライス内で使用される符号化情報が含まれる。なお、マクロブロックの並びは、通信回線でのエラーの影響が画面上で縦方向に及ばないように、左右方向に1列となり、2列以上となることはない。   A slice is composed of one or more macroblocks arranged in a line in the left-right direction on the screen, and the slice information includes coding information used in the slice such as information representing quantization characteristics. Note that the arrangement of macroblocks is one column in the left-right direction so that the influence of errors on the communication line does not reach the vertical direction on the screen, and there is no more than two columns.

マクロブロックは、図2に示すように、4:2:0のフォーマット時には、8×8のY信号ブロック4個と、8×8のCr信号ブロック1個と、8×8のCb信号ブロック1個とから構成される。なお、マクロブロック情報には、マクロブロック単位で符号化制御を行うための、マクロブロックアドレスインクリメント(MBAI:画像の左端からマクロブロックの数+1を示す)、水平および垂直方向のモーションベクトルに関する情報、コーデッドブロックパターン(CBP:6つのブロックが有意ブロックかどうかで符号化される)等の情報が含まれる。   As shown in FIG. 2, the macro block is composed of four 8 × 8 Y signal blocks, one 8 × 8 Cr signal block, and one 8 × 8 Cb signal block 1 in the 4: 2: 0 format. It is composed of pieces. Note that the macroblock information includes macroblock address increment (MBAI: indicates the number of macroblocks + 1 from the left end of the image + 1), horizontal and vertical motion vectors for performing encoding control in units of macroblocks, Information such as a coded block pattern (CBP: encoded based on whether or not six blocks are significant blocks) is included.

ブロックは、図2に示すように、4:2:0のフォーマット時には、8×8のY信号、Cr信号、Cb信号いずれかのDCT係数データから構成される。なお、このDCT係数データは、連続する可変長の符号化データである。各ブロックの最後には、EOB(End of Block)コードが付される。   As shown in FIG. 2, the block is composed of DCT coefficient data of any of 8 × 8 Y signal, Cr signal, and Cb signal in the 4: 2: 0 format. The DCT coefficient data is continuous variable-length encoded data. At the end of each block, an EOB (End of Block) code is added.

以上のように、MPEG2ビットストリームのデータは、6層からなる階層構造を有する。シーケンス、GOP、ピクチャ、スライスの各層には、バイト単位で配置(各層の先頭から8の倍数のビット位置に配置)された、図3に示すような32ビットのスタートコードがそれぞれ挿入されている。   As described above, the MPEG2 bitstream data has a hierarchical structure including six layers. In each layer of the sequence, GOP, picture, and slice, a 32-bit start code as shown in FIG. 3 is inserted, which is arranged in byte units (arranged at bit positions that are multiples of 8 from the top of each layer). .

このスタートコードのビットパターンは、MPEG2ビットストリーム内では、スタートコード位置以外の位置では決して発生しないものである。このため、MPEG2ビットストリームを受け取った復号装置は、かかるスタートコードを検出することにより、例えば、スライス単位ごとに複数の処理系にて並行して復号処理を行うことができる。   This bit pattern of the start code never occurs at a position other than the start code position in the MPEG2 bit stream. For this reason, the decoding device that has received the MPEG2 bitstream can perform decoding processing in parallel in a plurality of processing systems for each slice unit, for example, by detecting the start code.

なお、図2には、4:2:0のフォーマット時のデータ構成を示したが、本発明はこれに限定されるものではなく、4:2:2のフォーマット時においても同様に適用することができる。   Although FIG. 2 shows the data structure at the time of 4: 2: 0 formatting, the present invention is not limited to this, and the same applies to the format at 4: 2: 2. Can do.

《発明の実施形態1》
(復号装置の構成)
本発明の実施形態1に係る復号装置は、図4に示すように、スタートコード検出部11、外部バッファ制御部12、外部バッファ13、符号化データ分配処理部14(分配処理部)、デコーダ制御部15、複数の復号部(デコーダ)16、および出力メモリ17を備えている。外部バッファ13は、ストリームバッファ13a、および分配処理情報バッファ(スタートコードバッファ)13bにより構成される。なお、外部バッファ13には、DRAM(Dynamic Random Access Memory)などのメモリが用いられる。
Embodiment 1 of the Invention
(Configuration of decoding device)
As shown in FIG. 4, the decoding apparatus according to Embodiment 1 of the present invention includes a start code detection unit 11, an external buffer control unit 12, an external buffer 13, an encoded data distribution processing unit 14 (distribution processing unit), and decoder control. A unit 15, a plurality of decoding units (decoders) 16, and an output memory 17 are provided. The external buffer 13 includes a stream buffer 13a and a distribution processing information buffer (start code buffer) 13b. The external buffer 13 is a memory such as a DRAM (Dynamic Random Access Memory).

また、デコーダ16は、可変長復号化部16a、逆量子化部16b、逆DCT部16c、および動き補償部16dを備えている。   The decoder 16 includes a variable length decoding unit 16a, an inverse quantization unit 16b, an inverse DCT unit 16c, and a motion compensation unit 16d.

また、図5に示すように、符号化データ分配処理部14は、マクロブロック数(MB数)カウント部14a、および分配順決定部14bを備えている。   As shown in FIG. 5, the encoded data distribution processing unit 14 includes a macroblock number (MB number) counting unit 14a and a distribution order determining unit 14b.

(復号装置の動作の概要)
まず、復号装置外部から入力されたMPEG2ビットストリーム(以下、符号化ストリームデータ)は、ストリームバッファ13aに蓄積される。次に、符号化データ分配処理部14が、この蓄積された符号化ストリームデータを復号するデコーダ16を、スライス単位毎に決定する。より詳しくは、まずスタートコードバッファ13bに蓄積された各スタートコードのストリームバッファ13aにおける書き込み位置を示すスタートコード情報が読み出され、スタートコード情報から書き込み位置が特定される各スタートコード以降の1スライス分の符号化ストリームデータ(各スライス)が解析される。そして、各スライスに含まれるマクロブロック数が算出され、各スライスについて、既に分配されることが決定されたスライスのマクロブロック数の合計が最も少ないデコーダ16が、復号するデコーダ16として決定される。そして、デコーダ制御部15の制御により符号化ストリームデータに対してスライス単位毎にデコーダ16内で復号処理が実行され、復号された画像データは出力メモリ17に蓄積される。
(Outline of the operation of the decoding device)
First, an MPEG2 bit stream (hereinafter referred to as encoded stream data) input from the outside of the decoding apparatus is stored in the stream buffer 13a. Next, the encoded data distribution processing unit 14 determines a decoder 16 for decoding the accumulated encoded stream data for each slice. More specifically, first, start code information indicating a write position of each start code stored in the start code buffer 13b in the stream buffer 13a is read, and one slice after each start code in which the write position is specified from the start code information. Minute encoded stream data (each slice) is analyzed. Then, the number of macroblocks included in each slice is calculated, and for each slice, the decoder 16 having the smallest total number of macroblocks of slices that have already been determined to be distributed is determined as the decoder 16 to be decoded. Then, decoding processing is executed in the decoder 16 for each slice unit on the encoded stream data under the control of the decoder control unit 15, and the decoded image data is stored in the output memory 17.

(復号装置の各部の主な動作)
スタートコード検出部11は、外部から入力された符号化ストリームデータと以下に説明するスタートコード情報を外部バッファ制御部12に供給する。より詳しくは、図3に示した符号化ストリームデータの各スライスのスタートコードを検出し、その検出されたスタートコードより、そのスタートコードがストリームバッファ13aに書き込まれる位置を示す情報を含んだスタートコード情報を生成し、符号化ストリームデータおよびスタートコード情報を外部バッファ制御部12に出力する。
(Main operations of each part of the decoding device)
The start code detection unit 11 supplies encoded stream data input from the outside and start code information described below to the external buffer control unit 12. More specifically, the start code of each slice of the encoded stream data shown in FIG. 3 is detected, and the start code including information indicating the position where the start code is written in the stream buffer 13a from the detected start code. Information is generated, and the encoded stream data and start code information are output to the external buffer control unit 12.

外部バッファ制御部12は、スタートコード検出部11から入力された符号化ストリームデータとスタートコード情報とを、外部バッファ13のストリームバッファ13aとスタートコードバッファ13bとにそれぞれ書き込む。   The external buffer control unit 12 writes the encoded stream data and start code information input from the start code detection unit 11 in the stream buffer 13a and the start code buffer 13b of the external buffer 13, respectively.

外部バッファ13(ストリームバッファ13aおよびスタートコードバッファ13b)は、外部バッファ制御部12から入力された符号化ストリームデータやスタートコード情報を保持する。   The external buffer 13 (stream buffer 13a and start code buffer 13b) holds encoded stream data and start code information input from the external buffer control unit 12.

符号化データ分配処理部14のMB数カウント部14aは、符号化ストリームデータの各スライスに含まれるマクロブロック数をカウントし、分配順決定部14bに出力する。スタートコードバッファ13bより各スライスのスタートコード情報を読み出し、各スタートコード情報から書き込み位置が特定されるスタートコード以降の1スライス分の符号化ストリームデータ(各スライス)を読み出して解析し、各スライスに含まれるマクロブロック数をカウントし、分配順決定部14bへ各スライスのマクロブロック数を出力する。   The MB number counting unit 14a of the encoded data distribution processing unit 14 counts the number of macroblocks included in each slice of the encoded stream data and outputs it to the distribution order determining unit 14b. The start code information of each slice is read from the start code buffer 13b, and the encoded stream data (each slice) for one slice after the start code whose write position is specified is read and analyzed from each start code information, and is analyzed for each slice. The number of included macroblocks is counted, and the number of macroblocks in each slice is output to the distribution order determining unit 14b.

符号化データ分配処理部14の分配順決定部14bは、MB数カウント部14aより入力された各スライスのマクロブロック数により、各スライスを複数あるデコーダ16のうちどのデコーダ16で復号するかを決定し、デコーダ制御部15へその決定結果を出力する。具体的な決定動作については、後に詳述する。   The distribution order determination unit 14b of the encoded data distribution processing unit 14 determines which decoder 16 of the plurality of decoders 16 decodes each slice based on the number of macroblocks of each slice input from the MB number counting unit 14a. The determination result is output to the decoder control unit 15. A specific determination operation will be described in detail later.

デコーダ制御部15は、前記決定結果に基づいて、ストリームバッファ13aの符号化ストリームデータを、デコーダ16にスライス単位毎に分配する。また、分配するスライスのスタートコード情報をスタートコードバッファ13bから読み出し、そのスライスのピクチャ層のパラメータとストリームバッファ13aにおける書込み位置とを示す情報とを、分配順決定部14bで決定されたデコーダ16に出力する。ピクチャ層のパラメータは、1枚の画像で共通なパラメータであり、ピクチャの種類(I/P/Bピクチャ)やピクチャ構造(フレーム/フィールド)を特定するものであり、デコーダの動作に使用される。   The decoder control unit 15 distributes the encoded stream data of the stream buffer 13a to the decoder 16 for each slice unit based on the determination result. Further, the start code information of the slice to be distributed is read from the start code buffer 13b, and information indicating the parameter of the picture layer of the slice and the write position in the stream buffer 13a is sent to the decoder 16 determined by the distribution order determination unit 14b. Output. The parameters of the picture layer are parameters common to one image, specify the type of picture (I / P / B picture) and picture structure (frame / field), and are used for the operation of the decoder. .

デコーダ16は、デコーダ制御部15から入力される符号化ストリームデータの書込み位置をスライス毎に示す情報に基づいて、符号化ストリームデータをスライス毎に外部バッファ制御部12を介してストリームバッファ13aから読み出す。そして、デコーダ制御部15から入力されたピクチャ層のパラメータに従って、読み出したスライス単位の符号化ストリームデータを復号して出力メモリ17に出力する。また、復号処理が完了すると、デコーダ制御部15へ完了通知を行う。この復号処理は、可変長復号化部16a、逆量子化部16b、逆DCT部16cおよび動き補償部16dによって行われる。以下に、デコーダ16における各処理部の処理を説明する。   The decoder 16 reads the encoded stream data from the stream buffer 13a via the external buffer control unit 12 for each slice based on the information indicating the writing position of the encoded stream data input from the decoder control unit 15 for each slice. . Then, according to the picture layer parameters input from the decoder control unit 15, the read encoded stream data in units of slices is decoded and output to the output memory 17. When the decoding process is completed, a completion notification is sent to the decoder control unit 15. This decoding process is performed by the variable length decoding unit 16a, the inverse quantization unit 16b, the inverse DCT unit 16c, and the motion compensation unit 16d. Hereinafter, processing of each processing unit in the decoder 16 will be described.

可変長復号化部16aは、符号化データに含まれる可変長符号化データを復号して量子化DCT係数を復元する。より詳しくは、まず、デコーダ制御部15から入力される符号化ストリームデータの書込み位置をスライス毎に示す情報に基づいて、各スライスを外部バッファ制御部12を介してストリームバッファ13aから読み出す。そして、読み出したスライスからマクロブロックを分離する。さらに、各マクロブロックの量子化DCT係数を復号し、復号した量子化DCT係数を逆量子化部16bに出力する。この可変長符号化データの復号に際しては、所定の復号テーブルが参照される。なお、可変長復号化部16aは、予測モードや予測ベクトルなどのパラメータの復号も行い、復号した予測モードおよび予測ベクトルを動き補償部16dに出力する。   The variable length decoding unit 16a decodes the variable length encoded data included in the encoded data to restore the quantized DCT coefficient. More specifically, first, each slice is read from the stream buffer 13a via the external buffer control unit 12 based on information indicating the writing position of the encoded stream data input from the decoder control unit 15 for each slice. Then, the macroblock is separated from the read slice. Further, the quantized DCT coefficient of each macroblock is decoded, and the decoded quantized DCT coefficient is output to the inverse quantization unit 16b. When decoding the variable-length encoded data, a predetermined decoding table is referred to. Note that the variable length decoding unit 16a also decodes parameters such as the prediction mode and the prediction vector, and outputs the decoded prediction mode and prediction vector to the motion compensation unit 16d.

逆量子化部16bは、可変長復号化部16aから入力される量子化DCT係数を逆量子化してDCT係数に復号し、復号したDCT係数を逆DCT部16cに出力する。なお、この逆量子化に際しても、上記の可変長符号化データの復号の際と同様に、所定の逆量子化テーブルが参照される。   The inverse quantization unit 16b inversely quantizes the quantized DCT coefficient input from the variable length decoding unit 16a, decodes it to a DCT coefficient, and outputs the decoded DCT coefficient to the inverse DCT unit 16c. In this inverse quantization, a predetermined inverse quantization table is referred to as in the decoding of the variable length encoded data.

逆DCT部16cは、逆量子化部16bから入力されるDCT係数を逆DCT変換して符号化前の画素データを復号し、復号した画素データを動き補償部16dに出力する
動き補償部16dは、逆DCT部16cから入力される画素データと、可変長復号化部16aから入力される予測モードおよび予測ベクトルとに基づいて、動き補償を行い、動き補償を行った画素データを出力メモリ17に書き込む。
The inverse DCT unit 16c performs inverse DCT transform on the DCT coefficient input from the inverse quantization unit 16b, decodes the pixel data before encoding, and outputs the decoded pixel data to the motion compensation unit 16d. Based on the pixel data input from the inverse DCT unit 16c and the prediction mode and prediction vector input from the variable length decoding unit 16a, motion compensation is performed, and the pixel data subjected to motion compensation is output to the output memory 17. Write.

この出力メモリ17に書き込まれた画素データは、表示出力に利用されるとともに、他の画像の参照データとして利用される。すなわち、逆DCT部16cから入力されるマクロブロックが動き補償を使用している場合には、動き補償部16dは、可変長復号化部16aから入力される予測ベクトルにしたがって、その画素データが輝度データであれば、出力メモリ17の輝度バッファから参照画素を読み込み、その画素データが色差データであれば、出力メモリ17の色差バッファから参照画素データを読み込む。そして、読み込んだ参照画素データを、逆DCT部16cから入力された画素データに加算することにより動き補償を行い、かかる動き補償を行った画素データを出力メモリ17に書き込む。   The pixel data written in the output memory 17 is used for display output and as reference data for other images. That is, when the macroblock input from the inverse DCT unit 16c uses motion compensation, the motion compensation unit 16d determines that the pixel data has luminance according to the prediction vector input from the variable length decoding unit 16a. If it is data, the reference pixel is read from the luminance buffer of the output memory 17, and if the pixel data is color difference data, the reference pixel data is read from the color difference buffer of the output memory 17. Then, motion compensation is performed by adding the read reference pixel data to the pixel data input from the inverse DCT unit 16 c, and the pixel data subjected to the motion compensation is written in the output memory 17.

(符号化ストリームデータの分配処理)
次に、本実施形態に係る復号装置における符号化データ分配処理部14による1フレーム分の符号化ストリームデータの分配処理の動作について、図6に基づいて説明する。なお、分配される復号部が決定されながら、並行してその決定結果に応じた復号処理が行われてもよいし、1フレーム分のデータの分配がすべて決定されてから、そのフレームについての復号処理が開始されてもよい。
(Distributed processing of encoded stream data)
Next, the operation of distributing the encoded stream data for one frame by the encoded data distribution processing unit 14 in the decoding apparatus according to the present embodiment will be described with reference to FIG. In addition, while the decoding unit to be distributed is determined, a decoding process according to the determination result may be performed in parallel, or after all the distribution of data for one frame is determined, the decoding for the frame is performed. Processing may be initiated.

(S101)符号化データ分配処理部14において、各レジスタの初期化が行われる。ここで、Lはどのデコーダ16に分配されるかが決定されるスライスのマクロブロック数を示すレジスタの値である。また、M1〜M〜Mは、N個の各デコーダ16に分配されたマクロブロック数の累積を示すレジスタの値である。 (S101) In the encoded data distribution processing unit 14, each register is initialized. Here, L is a value of a register indicating the number of macroblocks of a slice in which it is determined which decoder 16 is distributed. M1 to Mn to MN are register values indicating the accumulation of the number of macroblocks distributed to each of the N decoders 16.

(S102)各スライスのスタートコードが、符号化ストリームデータの先頭より順次、MB数(マクロブロック数)カウント部14aに入力され、MB数(マクロブロック数)カウント部14aにおける解析により、各スライスに含まれるマクロブロック数が算出される。   (S102) The start code of each slice is sequentially input from the head of the encoded stream data to the MB number (number of macroblocks) counting unit 14a, and analyzed by the MB number (macroblock number) counting unit 14a. The number of included macroblocks is calculated.

(S103)Lに、(S105)で分配されるスライスのマクロブロック数が入力される。   (S103) The number of macroblocks of the slice distributed in (S105) is input to L.

(S104)分配順決定部14bにおいて、既に処理することが決定されたマクロブロック数の累積が最も少ないデコーダ、つまり、Mの値が最も小さいデコーダ16が検出される。Mの値が最も小さいデコーダ16が複数ある場合は、例えば、nの値が小さいデコーダ16が検出されるようにする。ここでは、Mが最も小さく、n=kのデコーダ16が検出されたとする。 (S104) The distribution order determination unit 14b detects the decoder with the smallest cumulative number of macroblocks that have already been determined to be processed, that is, the decoder 16 with the smallest value of Mn . When there are a plurality of decoders 16 having the smallest value of M n , for example, the decoder 16 having the smallest value of n is detected. Here, it is assumed that the decoder 16 with the smallest Mk and n = k is detected.

(S105)S104で検出されたデコーダ16にスライスを分配することが決定され、そのデコーダ16の復号処理を実施するマクロブロック数の累積を示すレジスタの値にスライスに含まれるマクロブロック数が加算される。つまり、MにLが加算される。 (S105) It is determined that the slice is distributed to the decoder 16 detected in S104, and the number of macroblocks included in the slice is added to the value of the register indicating the accumulation of the number of macroblocks to be decoded by the decoder 16. The That is, L is added to Mk .

(S106)フレーム内の分配するスライスの有無が判定される。スライスが残っていれば、さらに残りのスライスについてS103〜S105の処理が行われ、残っていなければ、処理が終了される。   (S106) Whether or not there is a slice to be distributed in the frame is determined. If slices remain, the processes of S103 to S105 are performed for the remaining slices, and if not, the process ends.

上記動作により、分配決定結果の例として図7に示すように、復号処理をするデコーダが決定される。   With the above operation, as an example of the distribution determination result, a decoder that performs decoding processing is determined as shown in FIG.

上記分配処理動作が行われながら、または分配処理終了後に、分配決定結果に応じて符号化ストリームデータがスライス毎にデコーダに出力され、各デコーダにより復号動作が行われる。   While the distribution processing operation is being performed or after the distribution processing is completed, the encoded stream data is output to the decoder for each slice according to the distribution determination result, and the decoding operation is performed by each decoder.

なお、S104で、Mの値が最も小さいデコーダ16が複数ある場合は、そのうち、nの値が小さいデコーダ16が選択されるようにしたが、どれが選択されるようにしてもよい。 When there are a plurality of decoders 16 having the smallest value of Mn in S104, the decoder 16 having the smallest value of n is selected, but any of them may be selected.

(効果)
上述のように、実施形態1に係る復号装置によれば、スタートコードの解析により算出される各スライスのマクロブロック数を利用し、符号化データ分配処理部14においてデコーダ16でのスライスの復号順を、各デコーダが処理するデータのマクロブロック数が平均化されるように決定することによって、各デコーダ16の処理時間を平均化することができ、これにより復号処理の高速化を図ることができる。つまり、複数のデコーダの処理時間を平均化することにより、一部のデコーダは処理を行っているが一部のデコーダは休止している状態の時間(図8に例としてt0を示す。)が短縮され、全体として復号処理に要する時間が短くなる。
(effect)
As described above, according to the decoding apparatus according to the first embodiment, the number of macroblocks of each slice calculated by start code analysis is used, and the encoded data distribution processing unit 14 performs the decoding order of slices in the decoder 16. Is determined so that the number of macroblocks of data processed by each decoder is averaged, the processing time of each decoder 16 can be averaged, thereby speeding up the decoding process. . That is, by averaging the processing times of a plurality of decoders, the time during which some of the decoders are processing but some of the decoders are idle (t0 is shown as an example in FIG. 8). As a whole, the time required for the decoding process is shortened.

《発明の実施形態2》
(復号装置の概要)
本発明の実施形態2に係る復号装置は、各スライスが、含まれるビット数が多いものから、前のスライスに対する処理が完了したことを示す完了通知を行ったデコーダ16に分配されることを特徴としている。またその構成は、実施形態1に係る復号装置における符号化データ分配処理部14の構成を、図9に示す符号化データ分配処理部24の構成に変更したものである。符号化データ分配処理部24は、符号化データ分配処理部14のMB数カウント部14aに代えて、各スライスに含まれるビット数をカウントするビット数カウント部24aを備えている。
<< Embodiment 2 of the Invention >>
(Outline of decoding device)
The decoding apparatus according to the second embodiment of the present invention is characterized in that each slice is distributed to the decoder 16 that has issued a completion notification indicating that the processing for the previous slice is completed, since the number of bits included is large. It is said. The configuration is obtained by changing the configuration of the encoded data distribution processing unit 14 in the decoding apparatus according to the first embodiment to the configuration of the encoded data distribution processing unit 24 shown in FIG. The encoded data distribution processing unit 24 includes a bit number counting unit 24a that counts the number of bits included in each slice, instead of the MB number counting unit 14a of the encoded data distribution processing unit 14.

(符号化データ分配処理部24の主な動作)
符号化データ分配処理部24のビット数カウント部24aは、スタートコードバッファ13bより各スライスのスタートコードがストリームバッファ13aに書き込まれる位置を示す情報を読み出して、各スタートコード以降の1スライス分の符号化ストリームデータ(各スライス)を解析し、各スライスのビット数をカウントし、分配順決定部24bに各スライスのビット数を出力する。
(Main operations of the encoded data distribution processing unit 24)
The bit number counting unit 24a of the encoded data distribution processing unit 24 reads information indicating the position where the start code of each slice is written to the stream buffer 13a from the start code buffer 13b, and codes for one slice after each start code. Stream data (each slice) is analyzed, the number of bits of each slice is counted, and the number of bits of each slice is output to the distribution order determination unit 24b.

符号化データ分配処理部24の分配順決定部24bは、1フレーム分のデータ毎に、
ビット数カウント部24aより入力されるビット数により、各スライスを複数あるデコーダ16のうちどのデコーダでどういう順序で復号するかを決定し、デコーダ制御部15にその決定結果を出力する。
The distribution order determination unit 24b of the encoded data distribution processing unit 24 performs the following operation for each frame of data.
Based on the number of bits input from the bit number counting unit 24 a, it is determined in which order the decoder 16 is to decode each slice, and the determination result is output to the decoder control unit 15.

(符号化ストリームデータの分配処理)
次に、本実施形態に係る復号装置における符号化データ分配処理部24による1フレーム分の符号化ストリームデータの分配処理の動作について、図10に基づいて説明する。ここでは、スライスを複数あるデコーダ16のうちいずれで復号するかを示すレジスタの値D、所定のスライスのビット数が設定されるレジスタの値M,L、および復号装置に備えられた全デコーダの個数を示す値Nを用いて説明する。
(Distributed processing of encoded stream data)
Next, the operation of distributing the encoded stream data for one frame by the encoded data distribution processing unit 24 in the decoding apparatus according to the present embodiment will be described with reference to FIG. Here, a register value D indicating which of the plurality of decoders 16 is to decode the slice, a register value M or L in which the number of bits of a predetermined slice is set, and all decoders provided in the decoding device This will be described using a value N indicating the number.

(S201)符号化データ分配処理部24において、レジスタの初期化が行われる。ここでは、デコーダ1からスライスが割り当てられていくようにするのでD=1と設定される。   (S201) In the encoded data distribution processing unit 24, the registers are initialized. Here, since slices are allocated from the decoder 1, D = 1 is set.

(S202)スタートコードが、符号化ストリームデータの先頭より順次、ビット数カウント部24aに入力され、ビット数カウント部24aにおける解析により、各スライスに含まれるビット数が算出される。   (S202) The start code is sequentially input from the head of the encoded stream data to the bit number counting unit 24a, and the number of bits included in each slice is calculated by analysis in the bit number counting unit 24a.

(S203)分配順決定部24bにおいて、(S202)で算出されたビット数の大きさ順にスライスが並べ替えられる。   (S203) The distribution order determination unit 24b rearranges the slices in the order of the number of bits calculated in (S202).

(S204)どのデコーダで復号されるのかが決定されていない(分配が決定していない)スライスが残っているかどうかが判定される。残っていれば(S205)に進み、残っていなければ処理の終了となる。   (S204) It is determined whether or not there remains a slice that has not been determined by which decoder to be decoded (distribution has not been determined). If it remains, the process proceeds to (S205), and if not, the process ends.

(S205)分配が決定していないスライスのうち、最大のビット数を有するスライスをデコーダDに分配する。   (S205) Of the slices for which distribution is not determined, the slice having the maximum number of bits is distributed to the decoder D.

(S206)DがNと等しければ(S208)に進み、そうでなければ(S207)に進む。   (S206) If D is equal to N, proceed to (S208), otherwise proceed to (S207).

(S207)Dに1が加算され、(S204)に戻る。   (S207) 1 is added to D, and the process returns to (S204).

(S208)いずれかのデコーダ16からの完了通知を待つ。いずれかのデコーダ16から完了通知が有れば(S209)に進む。   (S208) Wait for a completion notification from one of the decoders 16. If there is a completion notification from any of the decoders 16 (S209), the process proceeds.

(S209)Dの値を完了通知を行ったデコーダ16を示す番号とする。   (S209) The value of D is a number indicating the decoder 16 that has notified completion.

(S210)分配が決定していないスライスがフレームに残っているかどうかが判定される。残っていれば(S211)に進み、残っていなければ処理の終了となる。   (S210) It is determined whether a slice whose distribution has not been determined remains in the frame. If it remains, the process proceeds to (S211), and if not, the process ends.

(S211)分配が決定していないスライスのうち、最大のビット数を有するスライスをデコーダDに分配し、(S208)に戻る。   (S211) Of the slices for which distribution is not determined, the slice having the maximum number of bits is distributed to the decoder D, and the process returns to (S208).

上記動作により、決定結果の例として図11に示すように、復号処理を実施するデコーダを決定することができる。   By the above operation, as shown in FIG. 11 as an example of the determination result, the decoder that performs the decoding process can be determined.

なお、本実施形態においては、デコーダ1からスライスが割り当てられていくように、D=1と初期化されていたが、他のデコーダから割り当てられていくように設定してもよい。   In this embodiment, D = 1 is initialized so that slices are allocated from the decoder 1, but it may be set so that slices are allocated from other decoders.

また、(S201)における初期化は、(S202)や(S203)の後に行われるようにしてもよい。   The initialization in (S201) may be performed after (S202) or (S203).

また、(S203)における並べ替えは、例えば、スタートコード情報の先頭に読み出し順を示すビットが付与され、その後、その順でスライスが読み出されるようにする方法で行われてもよい。このような方法においては、スライスが並べ替え後の順で再度別のメモリへ記録される必要がない。   In addition, the rearrangement in (S203) may be performed by a method in which, for example, a bit indicating the reading order is added to the head of the start code information, and then slices are read in that order. In such a method, the slices do not need to be recorded again in another memory in the order after rearrangement.

(効果)
上述のように、実施形態2に係る復号装置によれば、スタートコードの解析により算出される各スライスのビット数を利用し、符号化データ分配処理部14においてデコーダ16でのストリーム内のスライスの復号順を、各デコーダが処理するデータのビット数が平均化されるように決定することによって、各デコーダ16の処理時間を平均化することができ、これにより復号処理の高速化を図ることができる。つまり、複数のデコーダの処理時間を平均化することにより、一部のデコーダは処理を行っているが一部のデコーダは休止している状態の時間(図8に例としてt0を示す。)が短縮され、全体として復号処理に要する時間が短くなる。
(effect)
As described above, according to the decoding device according to the second embodiment, the encoded data distribution processing unit 14 uses the number of bits of each slice calculated by the analysis of the start code to determine the slices in the stream in the decoder 16. By determining the decoding order so that the number of bits of data processed by each decoder is averaged, the processing time of each decoder 16 can be averaged, thereby speeding up the decoding process. it can. That is, by averaging the processing times of a plurality of decoders, the time during which some of the decoders are processing but some of the decoders are idle (t0 is shown as an example in FIG. 8). As a whole, the time required for the decoding process is shortened.

《発明の実施形態3》
(復号装置の構成)
本発明の実施形態3に係る復号装置は、図12に示すように、復号処理を実施済みのフレームの情報を記憶する前フレーム復号情報検出記憶部38を備えている点で、実施形態1および実施形態2に係る復号装置と異なっている。また、符号化データ分配処理部34は、スタートコードを解析するMB数(マクロブロック数)カウント部14aやビット数カウント部24aを備えておらず、分配順決定部34bが、復号しようとするフレーム(現在画面)の各スライスをどのデコーダによってどういう順序で復号するかを、前フレーム復号情報検出記憶部38に保持された前フレームの当該スライスに対応するスライスの復号に実際に要した時間に基づいて決定し、デコーダ制御部15にその決定結果を出力するようになっている。
<< Embodiment 3 of the Invention >>
(Configuration of decoding device)
As shown in FIG. 12, the decoding apparatus according to Embodiment 3 of the present invention includes a previous frame decoding information detection storage unit 38 that stores information of a frame that has been subjected to decoding processing. This is different from the decoding apparatus according to the second embodiment. The encoded data distribution processing unit 34 does not include the MB number (macroblock number) counting unit 14a or the bit number counting unit 24a for analyzing the start code, and the distribution order determining unit 34b is a frame to be decoded. Based on which decoder each slice of (current screen) is decoded in which order, the time actually required to decode the slice corresponding to the slice of the previous frame held in the previous frame decoding information detection storage unit 38 And the determination result is output to the decoder control unit 15.

前フレーム復号情報検出記憶部38は、各スライスの復号時間を検出して1フレーム分記憶することを特徴とし、図13に示すように、デコーダ制御部15からデコーダ16への符号化データの供給が開始されてから、デコーダ16によってデコーダ制御部15に完了通知が行われるまでの時間をカウントするタイマー部38aと、各スライスのスライス番号およびカウント時間を記憶する記憶バッファ38bとを備えている。ここで、スライス番号は、スライスを識別する番号であり、例えばスライスのスタートコードが検出される際にスタートコード情報の先頭等に順次付与されるようにしてもよい。   The previous frame decoding information detection storage unit 38 detects the decoding time of each slice and stores it for one frame, and supplies encoded data from the decoder control unit 15 to the decoder 16 as shown in FIG. The timer unit 38a that counts the time from the start of the process until the decoder 16 notifies the decoder control unit 15 of the completion, and the storage buffer 38b that stores the slice number and the count time of each slice. Here, the slice number is a number for identifying a slice. For example, when the start code of the slice is detected, the slice number may be sequentially given to the head of the start code information.

(前フレーム復号情報検出記憶部38の動作)
次に、本実施形態に係る復号装置における前フレーム復号情報検出記憶部38の動作について、図14に基づいて説明する。ここでは、前フレームにおける複数のスライスを識別する番号n、およびnで示されるスライスに対する復号が開始されてからのデコーダの累積復号時間を示すレジスタの値Tを用いて説明する。この動作は、フレーム毎に行われる。また、前フレーム復号情報検出記憶部38はデコーダ毎に備えられる。
(Operation of Previous Frame Decoding Information Detection Storage Unit 38)
Next, the operation of the previous frame decoding information detection storage unit 38 in the decoding device according to the present embodiment will be described with reference to FIG. Here, a description will be given using a number n for identifying a plurality of slices in the previous frame, and a register value T n indicating the cumulative decoding time of the decoder after decoding for the slice indicated by n is started. This operation is performed for each frame. The previous frame decoding information detection storage unit 38 is provided for each decoder.

(S301)レジスタの初期化が行われる。具体的にはT=0と設定される。 (S301) The register is initialized. Specifically, T n = 0 is set.

(S302)デコーダ制御部15によってデコーダ16への符号化ストリームデータの転送が開始されたか否かが判定される。   (S302) The decoder control unit 15 determines whether or not the transfer of the encoded stream data to the decoder 16 has been started.

(S303)転送が開始されていれば、タイマー部38aにより復号処理時間がカウントされる。具体的にはTに1が加算される。 (S303) If the transfer is started, the decoding process time is counted by the timer unit 38a. Specifically 1 to T n are added.

(S304)タイマー部38aにより、デコーダ16からデコーダ制御部15への完了通知の有無が判定される。完了通知があるまで、(S303)の処理と(S304)の判定とが繰り返される。   (S304) The timer unit 38a determines whether or not there is a completion notification from the decoder 16 to the decoder control unit 15. Until there is a completion notification, the process of (S303) and the determination of (S304) are repeated.

(S305)完了通知があれば、復号処理時間のカウントが終了し、カウント結果(T)、例えばスライス番号および処理時間を示す値が記憶バッファ38bに書き込まれ、処理が終了する。 (S305) If there is a completion notification, the count of the decoding processing time ends, the count result (T n ), for example, a value indicating the slice number and the processing time is written in the storage buffer 38b, and the processing ends.

(符号化ストリームデータの分配処理)
次に、本実施形態に係る復号装置における符号化データ分配処理部34による1フレーム分の符号化ストリームデータの分配処理の動作について、図15に基づいて説明する。ここでは、前フレームにおける復号処理時間の合計を示す値SUM、所定のデコーダに既に分配された前フレームにおける復号処理時間M、各デコーダの前フレームにおける復号処理時間の平均を示すDIV、複数のデコーダ16を識別する値D、およびスライスを識別する値Kを用いて説明する。また、全スライス数をS、全デコーダ数をNとする。また、符号化データ分配処理部34に保持された前フレームにおける各スライスの復号処理時間をTKとする。
(Distributed processing of encoded stream data)
Next, the operation of distributing the encoded stream data for one frame by the encoded data distribution processing unit 34 in the decoding apparatus according to the present embodiment will be described with reference to FIG. Here, a value SUM indicating the total decoding processing time in the previous frame, a decoding processing time M in the previous frame already distributed to a predetermined decoder, a DIV indicating the average decoding processing time in the previous frame of each decoder, a plurality of decoders Description will be made using a value D for identifying 16 and a value K for identifying a slice. The total number of slices is S, and the total number of decoders is N. Further, the decoding time of each slice in the previous frame held in the coded data distribution processing unit 34 and T K.

(S401)SUM,M,D,K,DIVの初期化が行われる。   (S401) SUM, M, D, K, and DIV are initialized.

(S402)前フレームについて、タイマー部38aでカウントしたスライスの復号処理時間の総和(SUM)が算出される。   (S402) For the previous frame, the sum (SUM) of decoding processing times of the slices counted by the timer unit 38a is calculated.

(S403)(S402)で求めた総和をデコーダ数Nで割ることにより、各デコーダ16における理想平均処理時間(DIV)が算出される。   (S403) The ideal average processing time (DIV) in each decoder 16 is calculated by dividing the sum obtained in (S402) by the number of decoders N.

(S404)前フレームにおけるKで識別されるスライスの復号処理時間TKが、Mに加算される。 (S404) The decoding processing time T K of the slice identified by K in the previous frame is added to M.

(S405)デコーダDの累積復号処理時間を示すMが、理想平均処理時間(DIV)を越えたかどうかが判定される。超えたと判定されれば(S406)に進み、越えていないと判定されれば(S408)に進む。   (S405) It is determined whether M indicating the cumulative decoding processing time of the decoder D has exceeded the ideal average processing time (DIV). If it is determined that it has been exceeded, the process proceeds to (S406), and if it is determined that it has not been exceeded, the process proceeds to (S408).

(S406)D=Nかどうかが判定される。D=Nであれば(S408)に進み、D≠Nであれば(S407)に進む。   (S406) It is determined whether D = N. If D = N, the process proceeds to (S408), and if D ≠ N, the process proceeds to (S407).

(S407)スライスに復号処理を行うデコーダを別のデコーダにするため、Dに1が加算される。また、累積復号処理時間を示すMが0に戻される。   (S407) 1 is added to D so that the decoder that performs the decoding process on the slice is changed to another decoder. Further, M indicating the cumulative decoding processing time is returned to 0.

(S408)デコーダDにK番目のスライスが分配されることが決定される。   (S408) It is determined that the Kth slice is distributed to the decoder D.

(S409)Kに1を加算する。   (S409) 1 is added to K.

(S410)Kの値が全スライス数Sの値より大きければ、処理が終了する。大きくなければ、(S404)に戻り、さらに分配処理が続けられる。   (S410) If the value of K is larger than the value of the total number of slices S, the process ends. If not, the process returns to (S404) and the distribution process is continued.

上記動作により、分配処理結果の例として図16に示すように、復号処理を実施するデコーダが決定される。   With the above operation, as shown in FIG. 16 as an example of the distribution processing result, the decoder that performs the decoding processing is determined.

なお、(S410)において、分配処理すべきスライスの有無がレジスタKの値により判定されているが、スライスに含まれる情報等により判定されるようにしてもよい。   In (S410), the presence / absence of a slice to be distributed is determined based on the value in the register K, but may be determined based on information included in the slice.

また、記憶バッファ38bを復号装置の内部に含む例について説明したが、外部のバッファ等を用いるように構成してもよい。   Further, the example in which the storage buffer 38b is included in the decoding device has been described, but an external buffer or the like may be used.

(効果)
上述のように、実施形態3に係る復号装置によれば、前フレームにおける各スライスの復号時間を記憶し、その復号時間に基づいて、符号化データ分配処理部14においてデコーダ16でのストリーム内のスライスの復号順を変更することによって、各デコーダ16の処理時間を平均化することができ、これにより復号処理の高速化を図ることができる。つまり、複数のデコーダの処理時間を平均化することにより、一部のデコーダは処理を行っているが一部のデコーダは休止している状態の時間(図8に例としてt0を示す。)が短縮され、全体として復号処理に要する時間が短くなる。
(effect)
As described above, according to the decoding apparatus according to the third embodiment, the decoding time of each slice in the previous frame is stored, and the encoded data distribution processing unit 14 in the stream in the decoder 16 stores the decoding time based on the decoding time. By changing the decoding order of the slices, the processing time of each decoder 16 can be averaged, thereby speeding up the decoding process. That is, by averaging the processing times of a plurality of decoders, the time during which some of the decoders are processing but some of the decoders are idle (t0 is shown as an example in FIG. 8). As a whole, the time required for the decoding process is shortened.

《その他》
なお、実施形態1の復号装置は、各スライスが、既に分配されることが決定されたスライスのマクロブロック数の合計が最も少ないデコーダ16に分配されるようになっていたが、マクロブロック数の代わりにスライスに対応する前フレームのスライスの復号処理に実際にかかった時間やビット数を用いてもよい。例えば、各スライスが、既に分配されることが決定されたスライスのビット数の合計が最も少ないデコーダ16に分配されるようにしてもよい。
<Others>
In the decoding apparatus according to the first embodiment, each slice is distributed to the decoder 16 having the smallest total number of macroblocks of slices that have already been determined to be distributed. Instead, the time and the number of bits actually taken for decoding the slice of the previous frame corresponding to the slice may be used. For example, each slice may be distributed to the decoder 16 having the smallest total number of bits of slices that have already been determined to be distributed.

なお、実施形態2の復号装置は、各スライスが、含まれるビット数が多いものから、完了通知を行ったデコーダに対して分配されるようになっていたが、各デコーダに既に分配されることが決定されたスライスのビット数の合計が算出され、各スライスが、含まれるビット数が多いものから、上記合計が最も少ないデコーダに分配されるようにしてもよい。また、この場合、分配される復号部が決定されながら、並行してその決定結果に応じた復号処理が行われてもよいし、1フレーム分のデータの分配がすべて決定されてから、そのフレームについての復号処理が開始されてもよい。また、ビット数の代わりに、マクロブロック数やスライスに対応する前フレームのスライスの復号処理に実際にかかった時間を用いてもよい。例えば、各スライスが、含まれるマクロブロック数が多いものから、完了通知を行ったデコーダに対して分配されるようにしてもよい。   In the decoding apparatus according to the second embodiment, each slice is distributed to the decoder that has notified the completion because the number of bits included is large, but is already distributed to each decoder. It is also possible to calculate the total number of bits of the determined slices and distribute each slice to the decoder having the smallest total number from the one having the largest number of bits. In this case, while the decoding unit to be distributed is determined, the decoding process according to the determination result may be performed in parallel, or after all the distribution of the data for one frame is determined, The decryption process may be started. Also, instead of the number of bits, the time actually taken for decoding the slice of the previous frame corresponding to the number of macroblocks and slices may be used. For example, each slice may be distributed to the decoder that has notified the completion from the one having a large number of macroblocks.

また、実施形態3の復号装置では前フレームの復号処理時間が平均されているが、実施形態1のMB数カウント部14aで算出されるマクロブロック数や、実施形態2のビット数カウント部24aで算出されるビット数が平均されるように構成してもよい。また、前フレームのマクロブロック数やビット数が平均されるように構成してもよい。   Further, in the decoding device of the third embodiment, the decoding processing time of the previous frame is averaged, but the number of macroblocks calculated by the MB number counting unit 14a of the first embodiment and the bit number counting unit 24a of the second embodiment. You may comprise so that the calculated bit number may be averaged. Further, the number of macroblocks and the number of bits in the previous frame may be averaged.

また、実施形態1,2,3において、1フレーム分の符号化ストリームデータのデコーダへの分配処理について説明したが、同様の処理をフレーム単位ではなくフィールド単位で行ってもよい。また、実施形態3の復号装置では前フレームの復号処理時間が平均されているが、前フィールドの復号処理時間が平均されるようにしてもよい。   In the first, second, and third embodiments, the distribution process of the encoded stream data for one frame to the decoder has been described. However, the same process may be performed in units of fields instead of in units of frames. Further, in the decoding device of the third embodiment, the decoding processing time of the previous frame is averaged, but the decoding processing time of the previous field may be averaged.

また、実施形態1,2,3において、それぞれ異なった分配手順について説明したが、実施形態1,2,3に係る復号装置において、どの分配手順を用いてもよいし、複数の手順を組み合わせて用いてもよい。   Further, although different distribution procedures have been described in the first, second, and third embodiments, any distribution procedure may be used in the decoding device according to the first, second, and third embodiments, and a plurality of procedures may be combined. It may be used.

本発明に係る画像復号装置は、複数の復号部によって復号処理を並行して行う復号装置において、符号化されたデータの復号処理にかかる時間を短縮するという効果を有し、例えば、符号化されたデータの復号処理を高速に行う画像復号装置等として有用である。   The image decoding apparatus according to the present invention has an effect of shortening the time required for decoding the encoded data in a decoding apparatus that performs decoding processing in parallel by a plurality of decoding units. The present invention is useful as an image decoding device that performs high-speed data decoding processing.

MPEG2ビットストリームのデータ構造を示す説明図である。It is explanatory drawing which shows the data structure of an MPEG2 bit stream. MPEG2ビットストリームと画面との対応関係を示す説明図である。It is explanatory drawing which shows the correspondence of an MPEG2 bit stream and a screen. MPEG2ビットストリームのスタートコードを示す説明図である。It is explanatory drawing which shows the start code of an MPEG2 bit stream. 実施形態1に係る復号装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a decoding device according to Embodiment 1. FIG. 同、符号化データ分配処理部14の構成を示すブロック図である。3 is a block diagram showing a configuration of an encoded data distribution processing unit 14 in the same manner. FIG. 同、符号化データ分配処理部14による符号化ストリームデータの分配処理の動作を示すフローチャートである。4 is a flowchart showing an operation of distribution processing of encoded stream data by the encoded data distribution processing unit 14; 同、符号化データ分配処理部14による分配処理結果の例を示す説明図である。FIG. 6 is an explanatory diagram illustrating an example of a distribution processing result by the encoded data distribution processing unit 14; 一部のデコーダは処理を行っているが一部のデコーダは休止している状態の時間t0を示す説明図である。It is explanatory drawing which shows time t0 of a state in which some decoders are processing, but some decoders are dormant. 実施形態2に係る復号装置の符号化データ分配処理部24の構成を示すブロック図である。6 is a block diagram illustrating a configuration of an encoded data distribution processing unit 24 of a decoding device according to Embodiment 2. FIG. 同、符号化データ分配処理部24による符号化ストリームデータの分配処理の動作を示すフローチャートである。4 is a flowchart showing an operation of encoded stream data distribution processing by the encoded data distribution processing unit 24. FIG. 同、符号化データ分配処理部24による分配処理結果の例を示す説明図である。FIG. 6 is an explanatory diagram illustrating an example of a distribution processing result by the encoded data distribution processing unit 24; 実施形態3に係る復号装置の構成を示すブロック図である。It is a block diagram which shows the structure of the decoding apparatus which concerns on Embodiment 3. 同、前フレーム復号情報検出記憶部38の構成を示すブロック図である。3 is a block diagram showing a configuration of a previous frame decoded information detection storage unit 38. FIG. 同、前フレーム復号情報検出記憶部38の動作を示すフローチャートである。4 is a flowchart showing the operation of the previous frame decoded information detection storage unit 38. FIG. 同、符号化データ分配処理部34による符号化ストリームデータの分配処理の動作を示すフローチャートである。4 is a flowchart showing an operation of a distribution process of encoded stream data by the encoded data distribution processing unit. 同、符号化データ分配処理部34による分配処理結果の例を示す説明図である。4 is an explanatory diagram showing an example of a distribution processing result by the encoded data distribution processing unit 34. FIG.

11 スタートコード検出部
12 外部バッファ制御部
13 外部バッファ
13a ストリームバッファ
13b スタートコードバッファ(分配処理情報バッファ)
14 符号化データ分配処理部
14a MB数(マクロブロック数)カウント部
14b 分配順決定部
15 デコーダ制御部
16 デコーダ
16a 可変長復号化部
16b 逆量子化部
16c 逆DCT部
16d 動き補償部
17 出力メモリ
24 符号化データ分配処理部
24a ビット数カウント部
24b 分配順決定部
34 符号化データ分配処理部
34b 分配順決定部
38 前フレーム復号情報検出記憶部
38a タイマー部
38b 記憶バッファ
11 Start Code Detection Unit 12 External Buffer Control Unit 13 External Buffer 13a Stream Buffer 13b Start Code Buffer (Distribution Processing Information Buffer)
14 Coded data distribution processing unit 14a MB number (number of macroblocks) counting unit 14b Distribution order determining unit 15 Decoder control unit 16 Decoder 16a Variable length decoding unit
16b Inverse quantization unit
16c Reverse DCT section
16d motion compensation unit
17 Output Memory 24 Encoded Data Distribution Processing Unit 24a Bit Number Counting Unit 24b Distribution Order Determination Unit 34 Encoded Data Distribution Processing Unit 34b Distribution Order Determination Unit 38 Previous Frame Decoding Information Detection Storage Unit 38a Timer Unit 38b Storage Buffer

Claims (7)

入力される符号化画像データを複数の復号部によって並行して復号する画像復号装置であって、
上記入力される符号化画像データを構成する各スライスを、各復号部に復号されるスライスに含まれる小単位データの数の合計が平均化されるように、復号部に分配して復号させる分配処理部を備えていることを特徴とする画像復号装置。
An image decoding device that decodes input encoded image data in parallel by a plurality of decoding units,
Distribution in which each slice constituting the input encoded image data is distributed to the decoding unit and decoded so that the total number of small unit data included in the slice decoded by each decoding unit is averaged An image decoding apparatus comprising a processing unit.
請求項1の画像復号装置であって、
上記分配処理部は、分配すべき各スライスを、各復号部について既に分配されることが決定されたスライスに含まれる小単位データの数の合計を算出し、上記合計が最も少ない復号部に分配するように構成されていることを特徴とする画像復号装置。
The image decoding device according to claim 1,
The distribution processing unit calculates the total number of small unit data included in the slices that have already been determined to be distributed for each decoding unit, and distributes the slices to be distributed to the decoding unit having the smallest total An image decoding apparatus configured to
請求項1の画像復号装置であって、
上記分配処理部は、分配すべき各スライスを、含まれる小単位データの数が多いものから、既に分配されることが決定されたスライスに含まれる小単位データの数の合計が最も少ない復号部に分配するように構成されていることを特徴とする画像復号装置。
The image decoding device according to claim 1,
The distribution processing unit is a decoding unit having the smallest total number of small unit data included in slices that have already been determined to be distributed since each slice to be distributed has a large number of small unit data included. An image decoding apparatus configured to be distributed to
請求項1の画像復号装置であって、
分配されるべきスライスに含まれる小単位データの数の合計を復号部の数で割った平均値を算出する平均値算出部を備え、
上記分配処理部は、それぞれの復号部に対して、各スライスを、既に当該復号部に分配されることが決定されたスライスに含まれる小単位データの数が上記平均値を超えるまで順次分配することを特徴とする画像復号装置。
The image decoding device according to claim 1,
An average value calculation unit that calculates an average value obtained by dividing the total number of small unit data included in the slice to be distributed by the number of decoding units;
The distribution processing unit sequentially distributes each slice to each decoding unit until the number of small unit data included in the slices already determined to be distributed to the decoding unit exceeds the average value. An image decoding apparatus characterized by that.
請求項1の画像復号装置であって、
上記小単位データは1ビットのデータであることを特徴とする画像復号装置。
The image decoding device according to claim 1,
The image decoding apparatus according to claim 1, wherein the small unit data is 1-bit data.
請求項1の画像復号装置であって、
上記符号化画像データは、MPEG規格による圧縮符号化が行われたものであり
記小単位データは、各マクロブロックの符号化データであることを特徴とする画像復号装置。
The image decoding device according to claim 1,
The encoded image data has been subjected to compression encoding according to the MPEG standard .
Upper Symbol small unit data, the image decoding apparatus which is a coded data of each macro block.
入力される符号化画像データを複数の復号部によって並行して復号する画像復号装置であって、
上記入力される符号化画像データを構成する現在画面の各スライスについて、前画面のスライスのうち、その現在画面のスライスに対応するスライスに含まれる小単位データの数を特定し、上記現在画面の各スライスを、各復号部に復号される上記現在画面のスライスについて特定した小単位データの数の合計が平均化されるように、復号部に分配して復号させる分配処理部を備えていることを特徴とする画像復号装置。
An image decoding device that decodes input encoded image data in parallel by a plurality of decoding units,
For each slice of the current screen constituting the input encoded image data, the number of small unit data included in the slice corresponding to the slice of the current screen among the slices of the previous screen is specified, and the current screen A distribution processing unit that distributes and decodes each slice to the decoding unit so that the total number of small unit data specified for the slice of the current screen decoded by each decoding unit is averaged An image decoding apparatus characterized by the above.
JP2005322410A 2005-11-07 2005-11-07 Image decoding device Active JP4594214B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005322410A JP4594214B2 (en) 2005-11-07 2005-11-07 Image decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005322410A JP4594214B2 (en) 2005-11-07 2005-11-07 Image decoding device

Publications (2)

Publication Number Publication Date
JP2007129648A JP2007129648A (en) 2007-05-24
JP4594214B2 true JP4594214B2 (en) 2010-12-08

Family

ID=38151912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005322410A Active JP4594214B2 (en) 2005-11-07 2005-11-07 Image decoding device

Country Status (1)

Country Link
JP (1) JP4594214B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009048469A (en) * 2007-08-21 2009-03-05 Fujitsu Ltd Information processing apparatus and information processing method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1013694A (en) * 1996-06-19 1998-01-16 Nec Off Syst Ltd Data expanding processor
JP2001218201A (en) * 2000-02-01 2001-08-10 Nippon Telegr & Teleph Corp <Ntt> Parallel image decoder, parallel image decoding method and program recording medium for parallel image decoding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1013694A (en) * 1996-06-19 1998-01-16 Nec Off Syst Ltd Data expanding processor
JP2001218201A (en) * 2000-02-01 2001-08-10 Nippon Telegr & Teleph Corp <Ntt> Parallel image decoder, parallel image decoding method and program recording medium for parallel image decoding

Also Published As

Publication number Publication date
JP2007129648A (en) 2007-05-24

Similar Documents

Publication Publication Date Title
JP3732867B2 (en) Image expansion device
US9020047B2 (en) Image decoding device
US10045037B2 (en) Method for encoding digital video data
US20020009287A1 (en) Method and apparatus for decoding and recording medium
JP2010041354A (en) Moving image coding method, coding device and coding program
JP5128389B2 (en) Moving picture coding apparatus and moving picture coding method
US20060146939A1 (en) Offset buffer for intra-prediction of digital video
US6819715B2 (en) Image decoding method, image decoding apparatus, and data storage medium
JP3940672B2 (en) Image processing apparatus and image processing method
US20080095461A1 (en) Apparatus and method for determining filter condition area in deblocking filter
EP2346254A1 (en) Video decoder and method for motion compensation for out-of-boundary pixels
JP5346584B2 (en) Decoding device, decoding method, decoding program, and integrated circuit
US6940909B2 (en) Video decoding during I-frame decode at resolution change
CN105933706B (en) Multimedia codec, application processor, and electronic device
JP4594214B2 (en) Image decoding device
US8406306B2 (en) Image decoding apparatus and image decoding method
JP3778208B2 (en) Image coding apparatus and image coding method
WO2011108146A1 (en) Image coding device, image coding/decoding system, image coding method, and image display method
JP2007166323A (en) Image decoding apparatus and image decoding method
KR101602871B1 (en) Method and apparatus for data encoding, method and apparatus for data decoding
TWI439137B (en) A method and apparatus for restructuring a group of pictures to provide for random access into the group of pictures
TW202339505A (en) Image coding device, image decoding device, image coding method, and image decoding method
JPH0795536A (en) Device and method for reversely reproducing moving image
JP4621629B2 (en) Image decoding device
JP2009272948A (en) Moving image decoding apparatus and moving image decoding method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100805

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100824

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100916

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130924

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4594214

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250