JP2005229423A - Apparatus for inverse orthogonal transformation - Google Patents

Apparatus for inverse orthogonal transformation Download PDF

Info

Publication number
JP2005229423A
JP2005229423A JP2004037146A JP2004037146A JP2005229423A JP 2005229423 A JP2005229423 A JP 2005229423A JP 2004037146 A JP2004037146 A JP 2004037146A JP 2004037146 A JP2004037146 A JP 2004037146A JP 2005229423 A JP2005229423 A JP 2005229423A
Authority
JP
Japan
Prior art keywords
unit
data
inverse orthogonal
units
orthogonal transform
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
Application number
JP2004037146A
Other languages
Japanese (ja)
Inventor
Masahiro Takeuchi
昌弘 武内
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 Holdings Corp
Original Assignee
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2004037146A priority Critical patent/JP2005229423A/en
Publication of JP2005229423A publication Critical patent/JP2005229423A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an apparatus for inverse orthogonal transformation, where operating efficiency in an entire circuit is increased. <P>SOLUTION: A determination circuit acquires information (DCT data row information) on the length of a data row in DCT data outputted to DCT data receivers 101a, 101b by decoding processors 13a, 13b from the respective decoders 13a, 13b, and acquires information (processing state information) on the state of processing performed between respective movement compensation sections 15a, 15b and respective external memories from the respective movement compensation sections 15a, 15b. A determination circuit 106 refers to the acquired DCT data row information, and assigns each of output buffers that should output space data to IDCT circuits 103a, 103b. And the determination circuit 106 refers to the acquired processing state information, and assigns each of output buffers that should output the space data to the IDCT circuits 103a, 103b. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、逆直交変換を行う装置に関し、詳しくはMPEG伸張処理等において逆直交変換を行う装置に関する。   The present invention relates to an apparatus that performs inverse orthogonal transform, and more particularly to an apparatus that performs inverse orthogonal transform in MPEG decompression processing or the like.

近年、MPEGなど動画像圧縮・伸長の分野において、画像サイズのターゲットがSD(Standard Definition)からHD(High Definition)へとより精細になりつつある。さらに、2つの映像を1つの画面で再生する2画面再生や1つの映像を再生しつつ他の映像を別の記録メディアに保存する裏番組録画など、MPEGで圧縮されたデータ列(ストリーム)を複数同時に処理可能な半導体集積回路が求められてきている。   In recent years, in the field of moving image compression / decompression such as MPEG, the target of image size is becoming finer from SD (Standard Definition) to HD (High Definition). In addition, data streams (streams) compressed in MPEG, such as two-screen playback that plays two videos on one screen, and back program recording that plays one video and saves other videos on another recording medium, etc. There has been a demand for semiconductor integrated circuits that can process a plurality of semiconductor devices simultaneously.

ここで、MPEGの動画像に対して伸張処理を行う従来のMPEGストリーム処理装置の構成を図6に示す。ストリーム処理部(STREAM)は、外部から入力された符号化動画像データと符号化音声データを含むMPEGストリームを受け取る。分離部(SETUP)は、ストリーム処理部(STREAM)が受け取ったMPEGストリームを読み出して符号化動画像データと符号化音声データに分離し、符号化動画像データを映像復号処理部(VLDIQ)へ転送し符号化音声データを音声復号処理部(AUDIO)へと転送する。映像復号処理部(VLDIQ)は、符号化動画像データに対して可変長復号および逆量子化を行い、その結果をDCTデータとしてIDCT演算部(IDCT)へと転送する。IDCT演算部(IDCT)は、映像復号処理部(VLDIQ)より転送されたDCTデータに対して逆DCT変換を行い、その結果を空間データとして動き補償部(MC)に転送する。動き補償部(MC)は、IDCT演算部(IDCT)より転送された空間データが含まれるフレームの前後に存在するフレームの画像データを用いて、IDCT演算部(IDCT)より転送された空間データに対して動き補償を行うことによって画像を再構成し、その結果を外部メモリなど(図示せず)へ転送する。   Here, FIG. 6 shows a configuration of a conventional MPEG stream processing apparatus that performs an expansion process on an MPEG moving image. The stream processing unit (STREAM) receives an MPEG stream including encoded moving image data and encoded audio data input from the outside. The separation unit (SETUP) reads the MPEG stream received by the stream processing unit (STREAM), separates it into encoded moving image data and encoded audio data, and transfers the encoded moving image data to the video decoding processing unit (VLDIQ). The encoded audio data is transferred to the audio decoding processing unit (AUDIO). The video decoding processing unit (VLDIQ) performs variable length decoding and inverse quantization on the encoded moving image data, and transfers the result as DCT data to the IDCT operation unit (IDCT). The IDCT calculation unit (IDCT) performs inverse DCT transformation on the DCT data transferred from the video decoding processing unit (VLDIQ), and transfers the result as spatial data to the motion compensation unit (MC). The motion compensation unit (MC) uses the image data of the frames existing before and after the frame including the spatial data transferred from the IDCT calculation unit (IDCT) to the spatial data transferred from the IDCT calculation unit (IDCT). The image is reconstructed by performing motion compensation on the image, and the result is transferred to an external memory or the like (not shown).

複数ストリームを同時に処理する方法としては、図7のように図6に示したMPEGストリーム処理装置を同時処理したいストリームの数だけ並列に用意する方法(方法1)と、より高速に動作可能な回路を用いて図6に示したMPEGストリーム処理装置を構成し時分割で処理を行う方法(方法2)とが考えられる。   As a method for simultaneously processing a plurality of streams, as shown in FIG. 7, the MPEG stream processing apparatus shown in FIG. 6 is prepared in parallel for the number of streams to be simultaneously processed (method 1), and a circuit capable of operating at higher speed. A method (method 2) in which the MPEG stream processing apparatus shown in FIG.

時分割処理を行う場合(方法2の場合)、同時に処理を行いたいストリーム数をNとすると、単一ストリームの処理に必要な性能のN倍の処理性能が必要となる。これを実現する方法としては、図8のようにMPEGストリーム処理装置に含まれる各々の回路の演算性能をN倍にすることで演算に要する時間を1/Nにして処理を行う方法(方法2−A)と、MPEG伸長処理内においてMPEGストリーム処理装置のうち並列に処理可能な部分に対して複数の回路を持つことで並列処理を実現する方法(方法2−B)とがある。   When performing time-sharing processing (in the case of method 2), if the number of streams to be processed simultaneously is N, processing performance that is N times that required for processing a single stream is required. As a method for realizing this, as shown in FIG. 8, the calculation performance of each circuit included in the MPEG stream processing apparatus is increased by N times to reduce the time required for calculation to 1 / N (method 2). -A) and a method (method 2-B) for realizing parallel processing by having a plurality of circuits for a portion that can be processed in parallel in the MPEG stream processing apparatus in the MPEG decompression processing.

(方法2−B)の場合、のMPEG処理回路の構成を図9に示す。(2−B)の方法をとって処理の高速化を行っている例として、特許文献1が挙げられる。特許文献1の手法では、MPEGのマクロブロック内に含まれるY0〜Y3、Cb、Crの各々のブロック(8×8の画素単位)レベルで処理を行い、映像復号処理部(VLDIQ)の一部の処理以降の処理を並列化している。特許文献1では、より低速に動作する演算回路を備えるMPEGストリーム処理装置によってデコードを実現することを意図しており、ストリームの同時処理数と並列度は関係がない。しかし、1つの回路での処理性能が十分であるなら回路の並列度に等しい数のストリームが同時に処理可能なことが期待できる。   In the case of (Method 2-B), the configuration of the MPEG processing circuit is shown in FIG. As an example in which the method (2-B) is used to increase the processing speed, Patent Document 1 is cited. In the method of Patent Document 1, processing is performed at the level of each block (8 × 8 pixels) of Y0 to Y3, Cb, and Cr included in an MPEG macroblock, and part of the video decoding processing unit (VLDIQ) Processes after the above are parallelized. In Patent Document 1, it is intended to realize decoding by an MPEG stream processing apparatus including an arithmetic circuit that operates at a lower speed, and there is no relationship between the number of parallel processes of streams and the degree of parallelism. However, if the processing performance of one circuit is sufficient, it can be expected that a number of streams equal to the parallelism of the circuit can be processed simultaneously.

画像サイズがHDへと精細になることで、動画像伸張処理に必要な演算量が増大していることから、(方法2−A)のように単一ストリームの処理に必要な性能のN倍の演算性能を実現するためには回路規模の大幅な上昇や半導体集積回路の物理設計の難易度の上昇が伴うので、現実的ではない。   As the image size becomes finer, the amount of computation required for moving image expansion processing has increased, so N times the performance required for single stream processing as in (Method 2-A). In order to realize this computing performance, the circuit scale is greatly increased and the difficulty of physical design of the semiconductor integrated circuit is increased, which is not realistic.

一方、(方法1)および(方法2−B)の場合、回路規模はほぼ同等である。そこで、一般には(方法1)もしくは(方法2−B)の方法がとられる。これらの方法は共に、同時処理したいストリームの数だけ回路を並列に用意することになる。   On the other hand, in the case of (Method 1) and (Method 2-B), the circuit scale is almost the same. Therefore, the method (method 1) or (method 2-B) is generally used. Both of these methods prepare circuits in parallel for the number of streams to be processed simultaneously.

ここで、映像復号処理部(VLDIQ)からIDCT演算部(IDCT)への転送処理について説明する。映像復号処理部(VLDIQ)からIDCT演算部(IDCT)への転送処理は、周波数領域に変換されたブロックのデータ内を特定の走査順序に基づいて走査し、1要素ごとに順々に転送されることにより行われる。ここで、走査中残りの全要素が0であった場合は、ブロック終了信号を伝送してその後の伝送は行われない。従って、映像復号処理部(VLDIQ)からIDCT演算部(IDCT)へのデータの伝送に要する時間は、各ブロックのデータ内容によってまちまちであり、全要素0の場合は1クロックサイクルで伝送が完了し、0要素がない場合は最大64サイクルで伝送が完了する。   Here, transfer processing from the video decoding processing unit (VLDIQ) to the IDCT calculation unit (IDCT) will be described. In the transfer process from the video decoding processing unit (VLDIQ) to the IDCT operation unit (IDCT), the block data converted into the frequency domain is scanned based on a specific scanning order, and is transferred sequentially for each element. Is done. If all the remaining elements are 0 during scanning, a block end signal is transmitted and no subsequent transmission is performed. Therefore, the time required for data transmission from the video decoding processing unit (VLDIQ) to the IDCT operation unit (IDCT) varies depending on the data contents of each block. When all elements are 0, transmission is completed in one clock cycle. When there is no 0 element, transmission is completed in a maximum of 64 cycles.

次に、IDCT演算部(IDCT)によって行われる逆DCT変換処理について説明する。逆DCT変換処理は一般にブロックと呼ばれる8×8の画素単位で行われる。逆DCT変換の処理内容は、周波数領域に変換されたデータ(周波数データ)を逆DCT変換することにより空間領域のデータ(空間データ)に戻す処理である。一般に周波数データには0要素が含まれる場合が多い。   Next, the inverse DCT conversion process performed by the IDCT calculation unit (IDCT) will be described. Inverse DCT conversion processing is generally performed in units of 8 × 8 pixels called blocks. The processing content of the inverse DCT transform is a process of returning data (spatial data) in the spatial domain by performing inverse DCT transform on the data transformed into the frequency domain (frequency data). In general, frequency data often includes zero elements.

次に、動き補償部(MC)によるMC処理(動き補償処理)について説明する。動き補償部(MC)によるMC処理においては、既に述べたように前後フレームの画像データを用いる。これらのデータ量は膨大であるため、一般に半導体集積回路内部のメモリではなく外部のメモリにデータが配置され必要に応じて外部メモリから転送する処理を行う。この場合、外部メモリの動作状況によっては転送処理を起動してから実際に転送されるまでに大きな時間がかかる場合がある。そのため、MC処理に要する時間は、外部メモリの状況によって大きく変化する。
特開平10−56641号公報(8頁、第1図)
Next, MC processing (motion compensation processing) by the motion compensation unit (MC) will be described. In the MC processing by the motion compensation unit (MC), the image data of the previous and subsequent frames is used as described above. Since these data amounts are enormous, generally, data is arranged in an external memory instead of a memory inside the semiconductor integrated circuit, and a process of transferring from the external memory is performed as necessary. In this case, depending on the operation status of the external memory, it may take a long time from the start of the transfer process to the actual transfer. Therefore, the time required for MC processing varies greatly depending on the status of the external memory.
Japanese Patent Laid-Open No. 10-56441 (page 8, FIG. 1)

このように、IDCT演算部(IDCT)にデータを転送するのに要する時間および動き補償部による処理時間は、動作状況によって大きく異なる。つまり、IDCT演算部(IDCT)はデータ転送が完了しない限り逆DCT演算処理を行うことができず、さらにIDCT演算部(IDCT)は動き補償部によるMC処理が完了しない限り生成した空間データを転送することができない。映像復号処理部(VLDIQ)からのデータ転送にかかる期間はデータ列の内容に依存する。動き補償部(MC)によるMC処理は外部メモリの動作状況などに依存する。従って、MPEGストリーム処理装置の中に同様のIDCT演算部(IDCT)が複数備えられてそれらが並列に動作する場合、各々のIDCT演算部(IDCT)の動作状況が大きく異なる場合がある。その場合、装置全体としてみると動作効率は低い状態にあるといえる。   As described above, the time required to transfer data to the IDCT calculation unit (IDCT) and the processing time by the motion compensation unit vary greatly depending on the operation situation. That is, the IDCT calculation unit (IDCT) cannot perform the inverse DCT calculation process unless the data transfer is completed, and the IDCT calculation unit (IDCT) transfers the generated spatial data unless the MC process by the motion compensation unit is completed. Can not do it. The period required for data transfer from the video decoding processing unit (VLDIQ) depends on the contents of the data string. The MC processing by the motion compensation unit (MC) depends on the operation status of the external memory. Accordingly, when a plurality of similar IDCT operation units (IDCT) are provided in the MPEG stream processing apparatus and operate in parallel, the operation status of each IDCT operation unit (IDCT) may be greatly different. In that case, it can be said that the operation efficiency is low in the entire apparatus.

特許文献1に記載されているように、ストリーム内で並列に処理可能な部分を複数の回路を持つことで並列処理する方法や図7のように同時処理したいストリームの数だけMPEGストリーム処理装置を並列に用意する方法では、このように各々の回路によって動作状況が異なり、動作効率が低下するという課題がある。   As described in Patent Document 1, a method of performing parallel processing by having a plurality of circuits in a portion that can be processed in parallel in a stream, or MPEG stream processing devices as many as the number of streams to be simultaneously processed as shown in FIG. In the method prepared in parallel, there is a problem that the operation state is different depending on each circuit and the operation efficiency is lowered.

本発明の目的は、複数の回路によって処理を行う際に装置全体として動作効率を向上させることが可能な装置を提供することである。   An object of the present invention is to provide an apparatus capable of improving the operation efficiency of the entire apparatus when processing is performed by a plurality of circuits.

この発明の1つの局面に従うと、逆直交変換装置は、周波数データに対して逆直交変換を行うことにより空間データを生成する。逆直交変換装置は、判定部と、2以上の受信部と、2以上の逆直交変換部と、2以上の出力バッファとを備える。判定部は、受信部の各々に対して逆直交変換部のうちいずれか1つを対応づけ、かつ上記出力バッファの各々に対して上記逆直交変換部のうちいずれか1つを対応づける。受信部の各々は、周波数データを格納する。逆直交変換部の各々は、判定部によってその逆直交変換部に対応づけられた受信部が格納する周波数データに対して逆直交変換を行うことによって空間データを生成する。出力バッファの各々は、判定部によってその出力バッファに対応づけられた逆直交変換部が生成した空間データを格納する。判定部は、受信部の各々においてその受信部が上記周波数データを格納するために要する時間と出力バッファの各々におけるその出力バッファによる空間データの格納の有無とを参照して、上記対応づけを行う。   According to one aspect of the present invention, the inverse orthogonal transform device generates spatial data by performing inverse orthogonal transform on frequency data. The inverse orthogonal transform device includes a determination unit, two or more reception units, two or more inverse orthogonal transform units, and two or more output buffers. The determination unit associates any one of the inverse orthogonal transform units with each of the reception units, and associates any one of the inverse orthogonal transform units with each of the output buffers. Each of the reception units stores frequency data. Each of the inverse orthogonal transform units generates spatial data by performing inverse orthogonal transform on the frequency data stored in the reception unit associated with the inverse orthogonal transform unit by the determination unit. Each of the output buffers stores the spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit. The determination unit performs the association in each reception unit with reference to the time required for the reception unit to store the frequency data and whether or not the output buffer stores spatial data in each output buffer. .

上記逆直交変換装置では、判定部は、受信部の各々においてその受信部が周波数データを格納するために要する時間(伝送期間)を参照することにより、伝送期間の短い受信部に対して逆直交変換に余裕のある逆直交変換部を対応づけることができる。また、判定部は、出力バッファの各々におけるその出力バッファによる空間データの格納の有無とを参照することにより、逆直交変換処理が完了する逆直交変換部に対して空間データを格納していない出力バッファを優先的に対応づけることができる。このように、伝送データの状況に併せて処理に余裕がある演算部を優先的に対応づけることにより、装置全体としての動作効率を向上させることが可能である。   In the inverse orthogonal transform apparatus, the determination unit performs inverse orthogonal to the reception unit having a short transmission period by referring to the time (transmission period) required for the reception unit to store frequency data in each reception unit. It is possible to associate an inverse orthogonal transform section having a margin for conversion. In addition, the determination unit refers to the presence or absence of storage of the spatial data in each output buffer in each output buffer, so that the output that does not store the spatial data to the inverse orthogonal transform unit that completes the inverse orthogonal transform processing Buffers can be associated with priority. As described above, it is possible to improve the operation efficiency of the entire apparatus by preferentially associating the arithmetic units having processing margins with the state of transmission data.

好ましくは、上記逆直交変換装置は、符号化された動画像データに対して復号化を行い周波数データを生成する復号処理部と空間データに対して動き補償を行う動き補償部との間に接続される。上記受信部の各々は、上記復号処理部によって生成された周波数データを格納し、上記出力バッファの各々は、上記判定部によってその出力バッファに対応づけられた逆直交変換部が生成した空間データを格納し、格納した空間データを上記動き補償部に出力する。上記判定部は、上記受信部の各々においてその受信部が対応する復号処理部から上記周波数データを格納するために要する時間と出力バッファの各々に対応する動き補償部の動作状況とを参照して、上記対応づけを行う。   Preferably, the inverse orthogonal transform device is connected between a decoding processing unit that performs decoding on encoded moving image data and generates frequency data, and a motion compensation unit that performs motion compensation on spatial data. Is done. Each of the reception units stores the frequency data generated by the decoding processing unit, and each of the output buffers receives the spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit. The stored spatial data is output to the motion compensation unit. The determining unit refers to the time required for storing the frequency data from the decoding processing unit corresponding to the receiving unit in each receiving unit and the operation state of the motion compensating unit corresponding to each output buffer. The above association is performed.

上記逆直交変換装置では、判定部は、受信部の各々においてその受信部が上記周波数データを格納するために要する時間(伝送期間)を参照することにより、伝送期間の短い受信部に対して逆直交変換に余裕のある逆直交変換部を対応づけることができる。また、判定部は、出力バッファの各々におけるその出力バッファによる空間データの格納の有無とを参照することにより、逆直交変換処理が完了する逆直交変換部に対して空間データを格納していない出力バッファを優先的に対応づけることができる。このように、伝送データの状況に併せて処理に余裕がある演算部を優先的に対応づけることにより、装置全体としての動作効率を向上させることが可能である。   In the inverse orthogonal transform device, the determination unit reverses the reception unit having a short transmission period by referring to the time (transmission period) required for the reception unit to store the frequency data in each reception unit. An inverse orthogonal transform unit having a margin for orthogonal transform can be associated. In addition, the determination unit refers to the presence or absence of storage of the spatial data in each output buffer in each output buffer, so that the output that does not store the spatial data to the inverse orthogonal transform unit that completes the inverse orthogonal transform processing Buffers can be associated with priority. As described above, it is possible to improve the operation efficiency of the entire apparatus by preferentially associating the arithmetic units having processing margins with the state of transmission data.

好ましくは、上記逆直交変換装置は、符号化された動画像データに対して復号化を行い周波数データを生成する2以上の復号処理部と空間データに対して動き補償を行う2以上の動き補償部との間に接続される。上記受信部の各々は、復号処理部のうちいずれか1つに1対1で対応しており、その受信部に対応する復号処理部によって生成された周波数データを格納する。上記出力バッファの各々は、動き補償部のうちいずれか1つに1対1で対応しており、上記判定部によってその出力バッファに対応づけられた逆直交変換部が生成した空間データを格納し、格納した空間データをその出力バッファに対応する動き補償部に出力する。上記判定部は、上記受信部の各々においてその受信部が対応する復号処理部から上記周波数データを格納するために要する時間と出力バッファの各々に対応する動き補償部の動作状況とを参照して、上記対応づけを行う。   Preferably, the inverse orthogonal transform device decodes the encoded moving image data to generate frequency data and two or more motion compensations that perform motion compensation on the spatial data. Connected between the parts. Each of the receiving units corresponds to any one of the decoding processing units on a one-to-one basis, and stores the frequency data generated by the decoding processing unit corresponding to the receiving unit. Each of the output buffers corresponds to any one of the motion compensation units on a one-to-one basis, and stores the spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit. The stored spatial data is output to the motion compensation unit corresponding to the output buffer. The determining unit refers to the time required for storing the frequency data from the decoding processing unit corresponding to the receiving unit in each receiving unit and the operation state of the motion compensating unit corresponding to each output buffer. The above association is performed.

上記逆直交変換装置では、判定部は、受信部の各々においてその受信部が上記周波数データを格納するために要する時間(伝送期間)を参照することにより、伝送期間の短い受信部に対して逆直交変換に余裕のある逆直交変換部を対応づけることができる。また、判定部は、出力バッファの各々におけるその出力バッファによる空間データの格納の有無とを参照することにより、逆直交変換処理が完了する逆直交変換部に対して空間データを格納していない出力バッファを優先的に対応づけることができる。このように、伝送データの状況に併せて処理に余裕がある演算部を優先的に対応づけることにより、装置全体としての動作効率を向上させることが可能である。   In the inverse orthogonal transform device, the determination unit reverses the reception unit having a short transmission period by referring to the time (transmission period) required for the reception unit to store the frequency data in each reception unit. An inverse orthogonal transform unit having a margin for orthogonal transform can be associated. In addition, the determination unit refers to the presence or absence of storage of the spatial data in each output buffer in each output buffer, so that the output that does not store the spatial data to the inverse orthogonal transform unit that completes the inverse orthogonal transform processing Buffers can be associated with priority. As described above, it is possible to improve the operation efficiency of the entire apparatus by preferentially associating the arithmetic units having processing margins with the state of transmission data.

好ましくは、上記受信部は、格納部と、出力部とを含む。格納部は、上記周波数データを格納する。出力部は、格納部に格納された周波数データを出力する。上記逆直交変換部は、演算バッファと、演算部とを含む。演算バッファは、上記出力部からの周波数データを格納する。演算部は、演算バッファに格納された周波数データに対して逆直交変換を行うことにより空間データを生成する。   Preferably, the receiving unit includes a storage unit and an output unit. The storage unit stores the frequency data. The output unit outputs the frequency data stored in the storage unit. The inverse orthogonal transform unit includes a calculation buffer and a calculation unit. The arithmetic buffer stores the frequency data from the output unit. The calculation unit generates spatial data by performing inverse orthogonal transform on the frequency data stored in the calculation buffer.

上記逆直交変換装置では、出力部は、受信部に含まれる格納部が格納した周波数データを逆直交変換部に含まれる演算バッファに出力する。これにより、出力部の動作速度を上げれば、受信部から逆直交変換部に周波数データを出力するために要する時間を短縮することができ、装置全体としての動作効率を向上させることが可能である。   In the inverse orthogonal transform device, the output unit outputs the frequency data stored in the storage unit included in the reception unit to the arithmetic buffer included in the inverse orthogonal transform unit. As a result, if the operating speed of the output unit is increased, the time required to output frequency data from the receiving unit to the inverse orthogonal transform unit can be shortened, and the operating efficiency of the entire apparatus can be improved. .

好ましくは、上記判定部は、さらに、上記受信部の各々においてその受信部が上記周波数データを格納するために要する時間と出力バッファの各々におけるその出力バッファによる空間データの格納の有無とを参照して、上記逆直交変換部のうち動作を行う必要がない逆直交変換部を停止する。   Preferably, the determination unit further refers to the time required for the receiving unit to store the frequency data in each of the receiving units and whether or not spatial data is stored by the output buffer in each of the output buffers. Then, the inverse orthogonal transform unit that does not need to perform an operation among the inverse orthogonal transform units is stopped.

上記逆直交変換装置では、動作していない逆直交変換部を停止することにより消費電力を削減することが可能である。これにより、より低消費電力を求められるような機器に用いる装置において特に効果が期待できる。   In the inverse orthogonal transform apparatus, it is possible to reduce power consumption by stopping the inverse orthogonal transform unit that is not operating. Thereby, an effect can be expected particularly in an apparatus used for a device that requires lower power consumption.

好ましくは、上記2以上の逆直交変換部には、簡素化演算部が少なくとも1つ含まれる。簡素化演算部は、他の逆直交変換部によって行われる演算よりも簡素化した演算を行う。上記判定部は、さらに、前記受信部の各々に格納された周波数データの内容に応じて、当該周波数データを格納する受信部に前記簡素化演算部を対応づける。   Preferably, the two or more inverse orthogonal transform units include at least one simplification operation unit. The simplified calculation unit performs a calculation that is simpler than the calculation performed by another inverse orthogonal transform unit. The determination unit further associates the simplification calculation unit with the reception unit that stores the frequency data according to the content of the frequency data stored in each of the reception units.

上記逆直交変換装置では、例えば、簡素化した演算を行っても画質の低下が少ない周波数データを格納している受信部に対して簡素化演算部を対応づける。簡素化した演算を行っても画質の低下が少ない周波数データに対して演算を行う速度は、他の逆直交変換部による演算よりも簡素化演算部による演算のほうが速い。これにより逆直交変換による処理速度を上げることができ、装置全体としての動作効率を向上させることが可能である。また、より簡素な演算部で同程度の処理が実現できかつデータの質の低下を最小限に抑えることが可能となる。   In the inverse orthogonal transform apparatus, for example, the simplified calculation unit is associated with the reception unit that stores the frequency data that causes little deterioration in image quality even when the simplified calculation is performed. Even if the simplified calculation is performed, the calculation speed of the frequency data that causes little deterioration in image quality is higher in the calculation performed by the simplified calculation unit than in the calculation performed by other inverse orthogonal transform units. As a result, the processing speed by inverse orthogonal transformation can be increased, and the operation efficiency of the entire apparatus can be improved. Further, the same level of processing can be realized with a simpler calculation unit, and the deterioration in data quality can be minimized.

好ましくは、上記逆直交変換は、逆DCT変換である。   Preferably, the inverse orthogonal transform is an inverse DCT transform.

好ましくは、上記判定部は、上記2以上の受信部のうち上記周波数データを格納するために要する時間が最も短い受信部を上記2以上の出力バッファのうち上記空間データが格納されていない出力バッファに対応づける。   Preferably, the determination unit selects a receiving unit having the shortest time required to store the frequency data among the two or more receiving units as an output buffer in which the spatial data is not stored among the two or more output buffers. Associate with.

好ましくは、上記判定部は、上記出力バッファの各々が前記周波数データを格納している時間が所定の時間よりも長いと判断すると、前記直交変換部のうちいずれかを停止する。   Preferably, the determination unit stops any of the orthogonal transform units when determining that each of the output buffers stores the frequency data longer than a predetermined time.

以上のように、伝送データの状況に併せて処理に余裕がある演算部を優先的に対応づけることにより、装置全体としての動作効率を向上させることが可能である。   As described above, it is possible to improve the operation efficiency of the entire apparatus by preferentially associating the arithmetic units with processing margins in accordance with the state of transmission data.

以下、この発明の実施の形態を図面を参照して詳しく説明する。なお、図中同一または相当部分には同一の符号を付しその説明は繰り返さない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and description thereof will not be repeated.

(第1の実施形態)
<全体構成>
この発明の第1の実施形態によるMPEGストリーム処理装置の全体構成を図1に示す。この装置は、ストリーム処理部11と、分離部12と、復号処理部13a,13bと、IDCT演算部14と、動き補償部15a,15bとを備える。ストリーム処理部11は、符号化された動画像データ(符号化動画像データ)および符号化された音声データ(符号化音声データ)を含むMPEGストリームを外部から受け取る。分離部12は、ストリーム処理部11によって受け取られたMPEGストリームを読み出し、そのMPEGストリームに含まれる符号化動画像データと符号化音声データと分離し、符号化動画像データを復号処理部13aおよび13bへと転送する。復号処理部13a,13bの各々は、分離部12によって転送された符号化動画像データに対して可変長復号化および逆量子化を行い、その結果をDCTデータとして出力する。IDCT演算部14は、復号処理部13a,14bの各々によって出力されたDCTデータに対して逆DCT変換を行い、その結果を空間データとして出力する。動き補償部15a,15bの各々は、IDCT演算部14によって出力された空間データが含まれるフレームの前後に存在するフレームの画像データを外部メモリなど(図示せず)から取得し、取得した画像データを用いてIDCT演算部14によって出力された空間データに対して動き補償を行うことによって画像を再構成し、その結果を外部メモリなど(図示せず)へ転送する。
(First embodiment)
<Overall configuration>
FIG. 1 shows the overall configuration of an MPEG stream processing apparatus according to the first embodiment of the present invention. This apparatus includes a stream processing unit 11, a separation unit 12, decoding processing units 13a and 13b, an IDCT calculation unit 14, and motion compensation units 15a and 15b. The stream processing unit 11 receives an MPEG stream including encoded moving image data (encoded moving image data) and encoded audio data (encoded audio data) from the outside. The separation unit 12 reads the MPEG stream received by the stream processing unit 11, separates the encoded moving image data and the encoded audio data included in the MPEG stream, and decodes the encoded moving image data to the decoding processing units 13a and 13b. Forward to. Each of the decoding processing units 13a and 13b performs variable length decoding and inverse quantization on the encoded moving image data transferred by the separation unit 12, and outputs the result as DCT data. The IDCT calculation unit 14 performs inverse DCT transformation on the DCT data output by each of the decoding processing units 13a and 14b, and outputs the result as spatial data. Each of the motion compensation units 15a and 15b acquires image data of a frame existing before and after the frame including the spatial data output by the IDCT calculation unit 14 from an external memory or the like (not shown), and acquires the acquired image data. Is used to reconstruct an image by performing motion compensation on the spatial data output by the IDCT computing unit 14 and transfer the result to an external memory or the like (not shown).

なお、符号化音声データを復号化する回路についての説明は省略している。   Note that a description of a circuit that decodes encoded audio data is omitted.

<IDCT演算部の内部構成>
図1に示したIDCT演算部14の内部構成を図2に示す。IDCT演算部14は、DCTデータ受信部101a,101bと、セレクタ102,104と、IDCT回路103a,103bと、出力バッファ105a,105bと、判定回路106とを含む。DCTデータ受信部101a,101bは、それぞれ復号処理部13a,13bと1対1で対応しており、自己に対応する復号処理部13a,13bより出力されたDCTデータを受け取る。IDCT回路103a,103bの各々は、DCTデータ受信部101a,101bより出力されたDCTデータに対して逆DCT変換を行い、その結果を空間データとして出力する。出力バッファ105a,105bの各々は、IDCT回路103a,103bより出力された空間データを格納する。動き補償部15a,15bは、それぞれ出力バッファ105a,105bと1対1で対応しており、自己に対応する出力バッファ105a,105bに対して転送指示を出し、出力バッファ105a,105bに格納された空間データを受け取り、受け取った空間データに対して動き補償を行う。判定回路106は、復号処理部13a,13bがDCTデータ受信部101a,101bに伝送するDCTデータの内容に関する情報(DCTデータ内容情報)を復号処理部13a,13bの各々から取得し、かつ、動き補償部15a,15bの処理状況に関する情報(処理状況情報)を動き補償部15a,15bの各々から取得する。判定回路106は、復号処理部13a,13bの各々から取得したDCTデータ内容情報に基づきDCTデータ受信部101a,101bに対してIDCT回路103a,103bを割り当て、かつ、動き補償部15a,15bの各々から取得した処理状況情報に基づきIDCT回路103a,103bに対して出力バッファ105a,105bを割り当てる。セレクタ1は、判定回路106による割り当てに従い、DCTデータ受信部101a,101bとIDCT回路103a,103bとを接続する。セレクタ2は、判定回路106による割り当てに従い、IDCT回路103a,103bと出力バッファ105a,105bとを接続する。
<Internal configuration of IDCT calculation unit>
FIG. 2 shows an internal configuration of the IDCT calculation unit 14 shown in FIG. The IDCT operation unit 14 includes DCT data receiving units 101a and 101b, selectors 102 and 104, IDCT circuits 103a and 103b, output buffers 105a and 105b, and a determination circuit 106. The DCT data receiving units 101a and 101b have a one-to-one correspondence with the decoding processing units 13a and 13b, respectively, and receive the DCT data output from the decoding processing units 13a and 13b corresponding to themselves. Each of the IDCT circuits 103a and 103b performs inverse DCT conversion on the DCT data output from the DCT data receiving units 101a and 101b, and outputs the result as spatial data. Each of the output buffers 105a and 105b stores the spatial data output from the IDCT circuits 103a and 103b. The motion compensation units 15a and 15b have a one-to-one correspondence with the output buffers 105a and 105b, respectively, issue a transfer instruction to the output buffers 105a and 105b corresponding to the motion compensation units 15a and 15b, and are stored in the output buffers 105a and 105b. Spatial data is received, and motion compensation is performed on the received spatial data. The determination circuit 106 acquires information (DCT data content information) on the content of DCT data transmitted from the decoding processing units 13a and 13b to the DCT data receiving units 101a and 101b from each of the decoding processing units 13a and 13b. Information about the processing status of the compensation units 15a and 15b (processing status information) is acquired from each of the motion compensation units 15a and 15b. The determination circuit 106 assigns IDCT circuits 103a and 103b to the DCT data receiving units 101a and 101b based on the DCT data content information acquired from the decoding processing units 13a and 13b, and each of the motion compensation units 15a and 15b. The output buffers 105a and 105b are allocated to the IDCT circuits 103a and 103b based on the processing status information acquired from the above. The selector 1 connects the DCT data receiving units 101a and 101b and the IDCT circuits 103a and 103b according to the assignment by the determination circuit 106. The selector 2 connects the IDCT circuits 103 a and 103 b and the output buffers 105 a and 105 b according to the assignment by the determination circuit 106.

<動作>
次に、図1に示したMPEGストリーム処理装置による動作について説明する。ここでは、分離部12に入力されるMPEGストリームには2種類の符号化動画像データ(符号化動画像データAおよびB)が含まれているものとする。なお、ここでは、分離部12は、MPEGストリームから符号化動画像データを分離し、その符号化動画像データを1ブロック分ごとに復号処理部13a,13bに出力するものとする。
<Operation>
Next, the operation of the MPEG stream processing apparatus shown in FIG. 1 will be described. Here, it is assumed that the MPEG stream input to the separation unit 12 includes two types of encoded moving image data (encoded moving image data A and B). Here, it is assumed that the separating unit 12 separates the encoded moving image data from the MPEG stream and outputs the encoded moving image data to the decoding processing units 13a and 13b for each block.

まず、ストリーム処理部11は、外部からMPEGストリームを受け取る。   First, the stream processing unit 11 receives an MPEG stream from the outside.

次に、分離部12は、ストリーム処理部11によって受け取られたMPEGストリームから符号化動画像データA,Bを分離する。ここで、分離部12は、分離した符号化動画像データのうち符号化映像データAを復号処理部13aへ出力し、符号化動画像データBを復号処理部13bへ出力するものとする。   Next, the separation unit 12 separates the encoded moving image data A and B from the MPEG stream received by the stream processing unit 11. Here, it is assumed that the separating unit 12 outputs the encoded video data A among the separated encoded moving image data to the decoding processing unit 13a and outputs the encoded moving image data B to the decoding processing unit 13b.

次に、復号処理部13aは、分離部12より出力された1ブロック分の符号化動画像データAに対して可変長復号化および逆量子化を行い、その結果を1ブロック分のDCTデータとして自己に対応するDCTデータ受信部101aに出力する。復号処理部13bは、復号処理部13aと同様に、分離部12より出力された1ブロック分の符号化動画像データBに対して可変長復号化および逆量子化を行い、その結果を1ブロック分のDCTデータとして自己に対応するDCTデータ受信部101bに出力する。ここで、判定回路106は、復号処理部13a,13bが自己に対応するDCTデータ受信部101a,101bに出力するDCTデータのデータ列の長さに関する情報(DCTデータ列情報)を復号処理部13a,13bの各々から取得する。   Next, the decoding processing unit 13a performs variable length decoding and inverse quantization on the encoded moving image data A for one block output from the separating unit 12, and the result is used as DCT data for one block. The data is output to the DCT data receiving unit 101a corresponding to itself. Similar to the decoding processing unit 13a, the decoding processing unit 13b performs variable-length decoding and inverse quantization on the encoded moving image data B for one block output from the separation unit 12, and outputs the result as one block. Output to the DCT data receiving unit 101b corresponding to itself as the DCT data of the minute. Here, the determination circuit 106 receives information (DCT data sequence information) on the length of the DCT data sequence output to the DCT data receiving units 101a and 101b corresponding to the decoding processing units 13a and 13b. , 13b.

一方、動き補償部15aは、自己に対応する出力バッファ105aより受け取った1ブロック分の空間データに対して動き補償を行い、その結果を動画像データとして出力する。動き補償部15bは、動き補償部15aと同様に、自己に対応する出力バッファ105bより受け取った1ブロック分の空間データに対して動き補償を行い、その結果を動画像データとして出力する。ここで、判定回路106は、動き補償部15a,15bの各々と外部メモリとの間で行われる処理の状況に関する情報(処理状況情報)を動き補償部15a,15bの各々から取得する。例えば、処理状況情報は、動き補償部15a,15bの各々が動き補償を開始する際に自己に対応する出力バッファ15a,15bに対して出力する転送指示が現在出力されているか否かを示す情報(転送指示の有無に関する情報)である。   On the other hand, the motion compensation unit 15a performs motion compensation on one block of spatial data received from the output buffer 105a corresponding to itself, and outputs the result as moving image data. Similar to the motion compensation unit 15a, the motion compensation unit 15b performs motion compensation on the spatial data for one block received from the output buffer 105b corresponding to itself, and outputs the result as moving image data. Here, the determination circuit 106 acquires information (processing status information) regarding the status of processing performed between each of the motion compensation units 15a and 15b and the external memory from each of the motion compensation units 15a and 15b. For example, the processing status information is information indicating whether or not a transfer instruction to be output to the output buffers 15a and 15b corresponding to itself when each of the motion compensation units 15a and 15b starts motion compensation is currently output. (Information on presence / absence of transfer instruction).

次に、判定回路106は、復号処理部13a,13bの各々から取得したDCTデータ列情報を用いて、復号処理部13a,13bが自己に対応するDCTデータ受信部101a,101bに1ブロック分のDCTデータを出力するために要する時間(伝送期間)を算出する。伝送期間は、1ブロック分のDCTデータのデータ列の内容に依存する。例えば、伝送されるDCTデータに含まれる全てのDCT係数が「0」である場合には1クロックサイクルの期間を要し、「0」でない場合には64クロックサイクルの期間を要する。判定回路106は、算出した各々の伝送期間を参照して、DCTデータ受信部101a,101bの各々に対してDCTデータを出力すべきIDCT回路を割り当てる。   Next, the determination circuit 106 uses the DCT data string information acquired from each of the decoding processing units 13a and 13b to allow the decoding processing units 13a and 13b to send one block worth of data to the corresponding DCT data receiving units 101a and 101b. The time (transmission period) required for outputting DCT data is calculated. The transmission period depends on the content of the data string of DCT data for one block. For example, when all the DCT coefficients included in the transmitted DCT data are “0”, a period of one clock cycle is required, and when it is not “0”, a period of 64 clock cycles is required. The determination circuit 106 refers to each calculated transmission period and assigns an IDCT circuit that should output DCT data to each of the DCT data receiving units 101a and 101b.

また、判定回路106は、動き補償部15a,15bの各々から取得した処理状況情報を用いて、出力バッファ105a,105bの各々に対して空間データを格納しているか否か(出力バッファ15a,15bの空き状況)を判断する。例えば、処理状況情報が動き補償部15a,15bの各々における転送指示の有無に関する情報であるなら、出力バッファの空き状況は転送指示の有無に依存し、転送指示が出された出力バッファは自己に格納している空間データを出力し、転送指示が出されていない出力バッファは自己に格納している空間データを保持する。判定回路106は、出力バッファ105a,105bの各々に対する判断の結果(出力バッファ15a,15bの空き状況)を参照して、IDCT回路103a,103bに対して各々が空間データを出力すべき出力バッファを割り当てる。   Further, the determination circuit 106 uses the processing status information acquired from each of the motion compensation units 15a and 15b to determine whether or not spatial data is stored in each of the output buffers 105a and 105b (output buffers 15a and 15b). Availability). For example, if the processing status information is information regarding the presence / absence of a transfer instruction in each of the motion compensation units 15a and 15b, the availability of the output buffer depends on the presence / absence of the transfer instruction, and the output buffer for which the transfer instruction has been issued The stored spatial data is output, and the output buffer to which no transfer instruction is issued holds the spatial data stored in itself. The determination circuit 106 refers to the result of determination for each of the output buffers 105a and 105b (the availability of the output buffers 15a and 15b), and determines which output buffer should each output spatial data to the IDCT circuits 103a and 103b. assign.

次に、セレクタ102は、DCTデータ受信部101a,101bの各々と判定回路106によってDCTデータ受信部101a,101bに割り当てられたIDCT回路103a,103bとを接続する。一方、セレクタは、IDCT回路103a,103bの各々と判定回路106によってIDCT回路103a,103bに割り当てられた出力バッファ105a,105bとを接続する。   Next, the selector 102 connects each of the DCT data receiving units 101a and 101b to the IDCT circuits 103a and 103b assigned to the DCT data receiving units 101a and 101b by the determination circuit 106. On the other hand, the selector connects each of the IDCT circuits 103a and 103b to the output buffers 105a and 105b assigned to the IDCT circuits 103a and 103b by the determination circuit 106.

次に、DCTデータ受信部101a,101bの各々は、自己に対応する復号処理部13a,13bから1ブロック分のDCTデータを受信し終えると、受信したDCTデータをIDCT回路103a,103bのうちセレクタ102によって接続されたIDCT回路に出力し始める。   Next, when each of the DCT data receiving units 101a and 101b has received one block of DCT data from the decoding processing units 13a and 13b corresponding to the DCT data receiving units 101a and 101b, the DCT data receiving units 101a and 101b select the received DCT data from the IDCT circuits 103a and 103b. The output starts to the IDCT circuit connected by 102.

次に、IDCT回路103a,103bの各々は、DCTデータ受信部101a,101bのうちセレクタ102によって接続されたDCTデータ受信部より1ブロック分のDCTデータを受信し終えると、受信した1ブロック分のDCTデータに対して逆DCT変換を行う。   Next, when each of the IDCT circuits 103a and 103b has received one block of DCT data from the DCT data receiving unit connected by the selector 102 of the DCT data receiving units 101a and 101b, the IDCT circuits 103a and 103b receive the one block received. Inverse DCT transform is performed on the DCT data.

次に、IDCT回路103a,103bの各々は、逆DCT変換を完了すると、出力バッファ105a,105bのうちセレクタ104によって接続された出力バッファに、逆DCT変換の結果を空間データとして出力し始める。   Next, when the IDCT circuits 103a and 103b complete the inverse DCT conversion, the IDCT circuits 103a and 103b start outputting the result of the inverse DCT conversion as spatial data to the output buffer connected by the selector 104 among the output buffers 105a and 105b.

次に、出力バッファ105a,105bの各々は、IDCT回路103a,103bのうちセレクタ104によって接続されたIDCT回路から1ブロック分の空間データを格納し終えると、自己に対応する動き補償部15a,15bの各々からの転送指示を受けて、格納した1ブロック分の空間データを動き補償部15a、15bに出力する。   Next, when each of the output buffers 105a and 105b finishes storing one block of spatial data from the IDCT circuit connected by the selector 104 of the IDCT circuits 103a and 103b, the motion compensation units 15a and 15b corresponding to the output buffers 105a and 105b. In response to the transfer instruction from each of the data, the stored spatial data for one block is output to the motion compensation units 15a and 15b.

次に、動き補償部15a、15bの各々は、自己に対応する出力バッファ105a、105bから1ブロック分の空間データを受信し終えると、自己に対応する出力バッファ105a,105bに対する転送指示を停止し、受信した1ブロック分の空間データに対して動き補償を行うために必要な画像データを外部メモリより取得した後、その画像データを用いて1ブロック分の空間データに対して動き補償を行う。   Next, when each of the motion compensation units 15a and 15b has received one block of spatial data from the output buffers 105a and 105b corresponding to the motion compensation units 15a and 15b, it stops the transfer instruction to the output buffers 105a and 105b corresponding to itself. After obtaining image data necessary for performing motion compensation on the received spatial data for one block from the external memory, motion compensation is performed on the spatial data for one block using the image data.

<判定回路106によるIDCT回路および出力バッファの割り当て方法>
次に、判定回路106において、DCTデータ受信部101a,101bの各々にIDCT回路103a,103bを割り当てる方法とIDCT回路103a,103bの各々に出力バッファ105a,105bを割り当てる方法とについて説明する。なお、符号化動画像データA(または符号化動画像データB)に対して復号化および逆量子化を行うとDCTデータA(またはDCTデータB)が生成され、DCTデータA(またはDCTデータB)に対して逆DCT変換を行うと空間データA(または空間データB)が生成されるものとする。
<IDCT circuit and output buffer allocation method by determination circuit 106>
Next, a method for assigning IDCT circuits 103a and 103b to DCT data receiving sections 101a and 101b and a method for assigning output buffers 105a and 105b to IDCT circuits 103a and 103b in determination circuit 106 will be described. When decoding and inverse quantization are performed on the encoded moving image data A (or encoded moving image data B), DCT data A (or DCT data B) is generated, and DCT data A (or DCT data B) is generated. When the inverse DCT transform is performed on the spatial data A, spatial data A (or spatial data B) is generated.

《DCTデータ受信部に対するIDCT回路の割り当て》
DCTデータ受信部101aは、符号化動画像データAをより復号化されたDCTデータAを復号処理部13aより受信する。一方、DCTデータ受信部101bは、符号化動画像データBをより復号化されたDCTデータBを復号処理部13Bより受信する。
<< Assignment of IDCT circuit to DCT data receiver >>
The DCT data receiving unit 101a receives from the decoding processing unit 13a the DCT data A obtained by further decoding the encoded moving image data A. On the other hand, the DCT data receiving unit 101b receives the DCT data B obtained by further decoding the encoded moving image data B from the decoding processing unit 13B.

例えば、DCTデータ受信部101aとIDCT回路103aとが接続され、DCTデータ受信部101bとIDCT回路103bとが接続されているとすると、IDCT回路103aはDCTデータ受信部から1ブロック分のDCTデータAを受信し、IDCT回路103bはDCTデータ受信部から1ブロック分のDCTデータBを受信することになる。   For example, if the DCT data receiving unit 101a and the IDCT circuit 103a are connected and the DCT data receiving unit 101b and the IDCT circuit 103b are connected, the IDCT circuit 103a is connected to the DCT data receiving unit by one block of DCT data A. The IDCT circuit 103b receives DCT data B for one block from the DCT data receiving unit.

ここで、DCTデータ受信部101aからIDCT回路103aへのDCTデータの出力が完了し、復号処理部13aはDCTデータ受信部101aに対してDCTデータの出力を開始したとする。一方、DCTデータ受信部101bからIDCT回路103bへのDCTデータの出力は完了していないとする。   Here, it is assumed that the output of DCT data from the DCT data receiving unit 101a to the IDCT circuit 103a is completed, and the decoding processing unit 13a starts outputting DCT data to the DCT data receiving unit 101a. On the other hand, it is assumed that the output of DCT data from the DCT data receiving unit 101b to the IDCT circuit 103b is not completed.

このとき、判定回路106は、復号処理部13a,13bの各々から取得したDCTデータ列情報よりDCTデータ受信部101aの伝送期間aとDCTデータ受信部101bの伝送期間bとを算出し、これらを比較する。   At this time, the determination circuit 106 calculates the transmission period a of the DCT data receiving unit 101a and the transmission period b of the DCT data receiving unit 101b from the DCT data string information acquired from each of the decoding processing units 13a and 13b, and calculates these. Compare.

比較の結果、DCTデータ受信部101aの伝送期間aのほうがDCTデータ受信部101bの伝送期間bよりも短いと判断した場合、判定回路106は、DCTデータ受信部101aに対してIDCT回路101bを割り当てる。   As a result of the comparison, when it is determined that the transmission period a of the DCT data receiving unit 101a is shorter than the transmission period b of the DCT data receiving unit 101b, the determination circuit 106 assigns the IDCT circuit 101b to the DCT data receiving unit 101a. .

このように、判定回路106は、復号処理部13a,13bの各々から取得した伝送期間a,bを参照して、IDCT回路による処理に余裕があると判断した場合、DCTデータ受信部101a,101bに対するIDCT回路103a,103bの割り当てを変更する。   As described above, when the determination circuit 106 refers to the transmission periods a and b acquired from the decoding processing units 13a and 13b and determines that there is room for processing by the IDCT circuit, the DCT data reception units 101a and 101b. The assignment of IDCT circuits 103a and 103b to is changed.

《IDCT回路に対する出力バッファの割り当て》
動き補償部15aは出力バッファ105aに格納された空間データを受け取り、受け取った空間データに対して動き補償を行い、動き補償部15bは出力バッファ105bに格納された空間データを受け取り、受け取った空間データに対して動き補償を行う。
<< Assignment of output buffer to IDCT circuit >>
The motion compensation unit 15a receives the spatial data stored in the output buffer 105a and performs motion compensation on the received spatial data, and the motion compensation unit 15b receives the spatial data stored in the output buffer 105b and receives the received spatial data. Motion compensation for

例えば、IDCT回路103aと出力バッファ105aとが接続され、IDCT回路と出力バッファ105bとが接続されているとすると、出力バッファ105aはIDCT回路103aによって生成された空間データAを格納し、出力バッファ105bはIDCT回路103bによって生成された空間データBを格納する。   For example, if the IDCT circuit 103a and the output buffer 105a are connected, and the IDCT circuit and the output buffer 105b are connected, the output buffer 105a stores the spatial data A generated by the IDCT circuit 103a, and the output buffer 105b. Stores the spatial data B generated by the IDCT circuit 103b.

ここで、動き補償部15aが動き補償を行うために出力バッファ105aに転送指示を出したとすると、出力バッファ105aは自己に格納している空間データAを動き補償部15aに出力し始める。一方、出力バッファ105bに動き補償部15bからの転送指示が出されていないとすると、出力バッファ105bは自己に格納している空間データBを保持する。   If the motion compensation unit 15a issues a transfer instruction to the output buffer 105a to perform motion compensation, the output buffer 105a starts to output the spatial data A stored therein to the motion compensation unit 15a. On the other hand, if the transfer instruction from the motion compensation unit 15b is not issued to the output buffer 105b, the output buffer 105b holds the spatial data B stored therein.

また、IDCT回路103aよりもIDCT回路103bのほうが逆DCT変換処理を完了するのが速いとする。   Further, it is assumed that the IDCT circuit 103b completes the inverse DCT conversion process faster than the IDCT circuit 103a.

このとき、判定回路106は、動き補償部15a,15bの各々から取得した処理状況情報を参照して、出力バッファ15aは格納している空間データを動き補償部15aに出力しており、出力バッファ15bは格納されている空間データを保持していると判断する。よって、判定回路106は、出力バッファ105bよりも出力バッファ105aのほうが早く「空き」になると判断し、逆DCT変換処理が完了するIDCT回路103bに対して出力バッファ105aを割り当てる。   At this time, the determination circuit 106 refers to the processing status information acquired from each of the motion compensation units 15a and 15b, and the output buffer 15a outputs the stored spatial data to the motion compensation unit 15a. It is judged that 15b holds the stored spatial data. Therefore, the determination circuit 106 determines that the output buffer 105a becomes “empty” earlier than the output buffer 105b, and allocates the output buffer 105a to the IDCT circuit 103b that completes the inverse DCT conversion processing.

このように、判定回路106は、動き補償部15a,15bより取得した処理状況情報を参照して、動き補償部による処理に余裕があると判断した場合、IDCT回路103a,103bに対する出力バッファ105a,105bの割り当てを変更する。   As described above, when the determination circuit 106 refers to the processing status information acquired from the motion compensation units 15a and 15b and determines that there is room in the processing by the motion compensation unit, the output buffers 105a and 103b for the IDCT circuits 103a and 103b. The allocation of 105b is changed.

判断回路106の処理の流れの例として以下のようなものが考えられる。判断回路106は、後段の動き補償部15a,15bにおける外部メモリの画像データの取得状況などの処理の状況から、動き補償部15a,15bのうちどちらの動き補償部が早期に処理を完了するかなどの情報を得る。さらに、前段の復号処理部13a,13bのうちどちらのデータ列が転送時間を多く必要とするかなどの情報を得る。これらの情報から、動き補償部15a,15bのうち動き補償が早期に処理を完了する方にはより転送時間が少なくてすむデータ列を転送し、動き補償部の処理の停止期間が起こらないようにする。逆に、動き補償部15a,15bのうち動き補償の完了が遅れる方には転送時間が長く必要なデータ列を転送し、IDCT回路103a,103bが動き補償部の完了待ちをすることで停止することを防ぐ。   The following can be considered as an example of the processing flow of the determination circuit 106. The determination circuit 106 determines which of the motion compensation units 15a and 15b completes the processing earlier based on the processing status such as the acquisition status of image data in the external memory in the subsequent motion compensation units 15a and 15b. Get information. Further, information such as which data string of the preceding decoding processing units 13a and 13b requires a longer transfer time is obtained. From these pieces of information, a data sequence that requires less transfer time is transferred to the motion compensation unit 15a, 15b that completes processing earlier, so that the motion compensation unit does not stop processing. To. On the contrary, the motion compensation units 15a and 15b that are delayed in completion of motion compensation transfer a data string that requires a long transfer time, and the IDCT circuits 103a and 103b stop when the motion compensation unit waits for completion. To prevent that.

<効果>
以上のように、演算処理に余裕のあるIDCT回路に対して伝送期間の短いDCTデータ受信部を優先的に割り当てることにより、演算処理に余裕のあるIDCT回路がDCTデータ受信部からDCTデータを受信するのを待つ時間を減縮することができる。また、空間データを格納することができる出力バッファに対して演算処理の完了が早いIDCT回路を優先的に割り当てることにより、IDCT回路が出力バッファに空間データを出力するために待つ時間を減縮することができる。これにより、装置全体としての動作効率を向上させることが可能である。
<Effect>
As described above, a DCT data receiving unit with a short transmission period is preferentially assigned to an IDCT circuit having a margin for arithmetic processing, whereby the IDCT circuit having a margin for arithmetic processing receives DCT data from the DCT data receiving unit. Can reduce the time to wait. In addition, by preferentially assigning an IDCT circuit that completes arithmetic processing to an output buffer that can store spatial data, the time that the IDCT circuit waits to output spatial data to the output buffer is reduced. Can do. Thereby, it is possible to improve the operation efficiency of the entire apparatus.

なお、IDCT演算部においては、一般には、1ブロック分のバッファを演算回路内に持つことが多い。このバッファは、復号処理部から伝送されてくるデータを受け取るための入力バッファと処理の途中結果を保持するための演算バッファとして兼用されることが多い。演算回路内にバッファを一面しか持たない場合は、復号処理部からのデータ転送中のときにはバッファを演算バッファとして使用できず演算処理を進めることができない。一方、本実施形態によるIDCT演算部は、バッファを二面持っているので、処理性能を確保することができる。   In general, the IDCT calculation unit often has a buffer for one block in the calculation circuit. This buffer is often used both as an input buffer for receiving data transmitted from the decoding processing unit and as an operation buffer for holding intermediate results of processing. If the arithmetic circuit has only one buffer, the buffer cannot be used as an arithmetic buffer during data transfer from the decoding processing unit, and the arithmetic processing cannot proceed. On the other hand, since the IDCT operation unit according to the present embodiment has two buffers, the processing performance can be ensured.

(第2の実施形態)
<全体構成>
この発明の第2の実施形態によるMPEGストリーム処理装置は、図1および図2に示したIDCT演算部に代えて、図3に示すIDCT演算部20を備える。その他の構成は、図1と同様である。
(Second Embodiment)
<Overall configuration>
The MPEG stream processing apparatus according to the second embodiment of the present invention includes an IDCT operation unit 20 shown in FIG. 3 instead of the IDCT operation unit shown in FIGS. Other configurations are the same as those in FIG.

<IDCT演算部の内部構成>
図3に示したIDCT演算部20は、図2に示したDCTデータ受信部101a,1010bとIDCT回路103a,103bに代えて、DCTデータ受信部201a,201bと、高速伝送回路202a,202bと、IDCT回路203a,203bとを含む。DCTデータ受信部201a,201bは、1ブロック分のデータを格納することができる入力バッファ211a,211bを含む。IDCT回路203a,203bは、1ブロック分のデータを格納することができる演算バッファ213a,213bと、演算処理部214a,214bとを含む。その他の構成は、図2と同様である。DCTデータ受信部201a,201bの各々は、DCTデータ受信部101a,101bと同様に、復号処理部13a,13bと1対1で対応しており、自己に対応する復号処理部13a,13bによって出力されたDCTデータを自己の入力バッファ211a,211bに格納する。高速伝送回路202a,202bの各々は、DCTデータ受信部201a,201bよりも高速で動作し、DCTデータ受信部201a,201bに含まれる入力バッファ211a,211bに格納された1ブロック分のDCTデータを出力する。IDCT回路203a,203bの各々は、DCTデータ受信部201a,201bの各々に対応する高速伝送回路202a,202bとセレクタ102によって接続され、接続された高速伝送回路202a、202bが出力する1ブロック分のDCTデータを自己の演算バッファ213a,213bに格納する。演算処理部214a,214bの各々は、自己の演算バッファ213a,213bに格納された1ブロック分のDCTデータに対して逆DCT変換を行い、セレクタ104によって自己に接続された出力バッファ105a,105bに逆DCT変換の結果を空間データとして出力する。
<Internal configuration of IDCT calculation unit>
3 replaces the DCT data receivers 101a and 1010b and the IDCT circuits 103a and 103b shown in FIG. 2 with DCT data receivers 201a and 201b, high-speed transmission circuits 202a and 202b, IDCT circuits 203a and 203b. The DCT data receiving units 201a and 201b include input buffers 211a and 211b that can store data for one block. The IDCT circuits 203a and 203b include operation buffers 213a and 213b that can store data for one block, and operation processing units 214a and 214b. Other configurations are the same as those in FIG. Each of the DCT data receiving units 201a and 201b, like the DCT data receiving units 101a and 101b, has a one-to-one correspondence with the decoding processing units 13a and 13b, and is output by the decoding processing units 13a and 13b corresponding to itself. The DCT data thus stored is stored in its own input buffers 211a and 211b. Each of the high-speed transmission circuits 202a and 202b operates at a higher speed than the DCT data receiving units 201a and 201b, and receives DCT data for one block stored in the input buffers 211a and 211b included in the DCT data receiving units 201a and 201b. Output. Each of the IDCT circuits 203a and 203b is connected to the high-speed transmission circuits 202a and 202b corresponding to each of the DCT data reception units 201a and 201b by the selector 102, and one block worth output from the connected high-speed transmission circuits 202a and 202b. DCT data is stored in its own operation buffers 213a and 213b. Each of the arithmetic processing units 214 a and 214 b performs inverse DCT conversion on one block of DCT data stored in its own arithmetic buffers 213 a and 213 b, and outputs to the output buffers 105 a and 105 b connected to itself by the selector 104. The result of the inverse DCT transform is output as spatial data.

<動作>
第2の実施形態によるMPEGストリーム処理装置の動作について説明する。この装置による動作は、第1の実施形態による動作と比較すると、DCTデータ受信部201a,201bによる動作とIDCT回路203a,203bによる動作とが異なる。
<Operation>
The operation of the MPEG stream processing apparatus according to the second embodiment will be described. Compared with the operation according to the first embodiment, the operation by this apparatus is different from the operation by the DCT data receiving units 201a and 201b and the operation by the IDCT circuits 203a and 203b.

《DCTデータ受信部とIDCT回路とにおける動作》
まず、第1の実施形態と同様に、復号処理部13a,13bは、1ブロック分のDCTデータをDCTデータ受信部201a,201bに出力し始める。次に、DCTデータ受信部201a,201bは、自己に対応する復号処理部13a,13bより出力されたDCTデータを自己のバッファ211a,211bに格納する。このとき、判定回路106は、第1の実施形態と同様に、復号処理部13a,13bの各々から取得したDCTデータ列情報よりDCTデータ受信部201a,201bの各々の伝送期間を求め、各々の伝送期間を参照して、DCTデータ受信部201a,201bに対応する高速伝送回路202a,202bの各々に対してIDCT回路203a,203bを割り当てる。
<< Operation in DCT Data Receiving Unit and IDCT Circuit >>
First, as in the first embodiment, the decoding processing units 13a and 13b start outputting DCT data for one block to the DCT data receiving units 201a and 201b. Next, the DCT data receiving units 201a and 201b store the DCT data output from the corresponding decoding processing units 13a and 13b in their own buffers 211a and 211b. At this time, as in the first embodiment, the determination circuit 106 obtains the respective transmission periods of the DCT data receiving units 201a and 201b from the DCT data sequence information acquired from the decoding processing units 13a and 13b. With reference to the transmission period, IDCT circuits 203a and 203b are assigned to the high-speed transmission circuits 202a and 202b corresponding to the DCT data receiving units 201a and 201b, respectively.

セレクタ102は、判定回路106による割り当てに従い、高速伝送回路202a,202bとIDCT回路203a,203bとを接続する。   The selector 102 connects the high-speed transmission circuits 202a and 202b and the IDCT circuits 203a and 203b according to the assignment by the determination circuit 106.

DCTデータ受信部201a,201bの入力バッファ211a,211bに1ブロック分のDCTデータが格納されると、高速伝送回路202a,202bは、そのバッファ211a,211bに格納された1ブロック分のDCTデータをIDCT回路203a,203bのうちセレクタ102によって自己と接続されたIDCT回路に高速で出力し始める。例えば、高速伝送回路202a,202bは、DCTデータ受信部201a,201bよりも速いクロックで動作している。   When one block of DCT data is stored in the input buffers 211a and 211b of the DCT data receiving units 201a and 201b, the high-speed transmission circuits 202a and 202b receive the DCT data for one block stored in the buffers 211a and 211b. Of the IDCT circuits 203a and 203b, the selector 102 starts outputting at high speed to the IDCT circuit connected to itself. For example, the high-speed transmission circuits 202a and 202b operate with a clock faster than the DCT data receiving units 201a and 201b.

IDCT回路203a,203bの演算処理部214a,214bの各々は、自己に含む演算バッファ213a,213bに1ブロック分のDCTデータが格納されると、演算バッファ213a,214bに格納された1ブロック分のDCTデータに対して逆DCT変換を行い、その結果を空間データをして出力し始める。   When the arithmetic processing units 214a and 214b of the IDCT circuits 203a and 203b store DCT data for one block in the arithmetic buffers 213a and 213b included in the IDCT circuits 203a and 203b, the arithmetic processing units 214a and 214b respectively store one block of data stored in the arithmetic buffers 213a and 214b. The inverse DCT transform is performed on the DCT data, and the result is output as spatial data.

次に、第1の実施形態と同様に、出力バッファ105a,105bの各々は、セレクタ104によって自己と接続されたIDCT回路203a,203bが出力した空間データを格納する。   Next, as in the first embodiment, each of the output buffers 105 a and 105 b stores the spatial data output from the IDCT circuits 203 a and 203 b connected to itself by the selector 104.

<効果>
以上のように、復号処理部からデータ受信部へのデータ転送が完了すると高速伝送回路によってIDCT回路への転送が短期間で行われ、その後は復号処理部からデータ受信部へのデータ転送が可能になる。これにより、IDCT回路がDCTデータ受信部よりDCTデータを受け取るために要する時間を短縮することができ、回路全体としての動作効率を向上させることが可能である。
<Effect>
As described above, when data transfer from the decoding processing unit to the data receiving unit is completed, transfer to the IDCT circuit is performed in a short period by the high-speed transmission circuit, and thereafter, data transfer from the decoding processing unit to the data receiving unit is possible. become. As a result, the time required for the IDCT circuit to receive DCT data from the DCT data receiving unit can be shortened, and the operation efficiency of the entire circuit can be improved.

なお、高速伝送回路による転送方法としては、両方のバッファの各要素を1対1で接続する方法などがあるが、特に限定されない。   The transfer method using the high-speed transmission circuit includes a method of connecting the elements of both buffers in a one-to-one relationship, but is not particularly limited.

(第3の実施形態)
<全体構成>
この発明の第3の実施形態によるMPEGストリーム処理装置は、図1および図2に示したIDCT演算部14に代えて、図4に示すIDCT演算部30を備える。その他の構成は、図1と同様である。
(Third embodiment)
<Overall configuration>
An MPEG stream processing apparatus according to the third embodiment of the present invention includes an IDCT operation unit 30 shown in FIG. 4 in place of the IDCT operation unit 14 shown in FIGS. Other configurations are the same as those in FIG.

<IDCT演算部の内部構成>
図4に示したIDCT演算部30は、図2に示したIDCT回路103a,103bと判定回路106とに代えて、IDCT回路301a,301bと判定回路302とを含む。その他の構成は、図2と同様である。判定回路302は、判定回路106の動作に加えて、復号処理部13a,13bの各々から取得したDCTデータ列情報および動き補償部15a,15bの各々から取得した処理状況情報を参照してIDCT回路301a,301bを制御する。IDCT回路301a,301bの各々は、IDCT回路103a,103bの動作に加えて、判定回路302による制御を受けて、起動しまたは停止する。
<Internal configuration of IDCT calculation unit>
4 includes IDCT circuits 301a and 301b and a determination circuit 302 instead of the IDCT circuits 103a and 103b and the determination circuit 106 illustrated in FIG. Other configurations are the same as those in FIG. In addition to the operation of the determination circuit 106, the determination circuit 302 refers to the DCT data sequence information acquired from each of the decoding processing units 13a and 13b and the processing status information acquired from each of the motion compensation units 15a and 15b, and the IDCT circuit 301a and 301b are controlled. Each of the IDCT circuits 301a and 301b is activated or stopped under the control of the determination circuit 302 in addition to the operation of the IDCT circuits 103a and 103b.

<動作>
この発明の第3の実施形態によるMPEGストリーム処理装置の動作は、第1の実施形態による動作と比較すると、図4に示したIDCT演算部30による動作が異なる。図4に示したIDCT演算部30による動作では、図2に示したIDCT演算部14による動作に加えて、IDCT回路301a,301bを状況に応じて停止する処理(起動制御処理)が行われる。
<Operation>
The operation of the MPEG stream processing apparatus according to the third embodiment of the present invention differs from the operation according to the first embodiment in the operation of the IDCT operation unit 30 shown in FIG. In the operation by the IDCT calculation unit 30 shown in FIG. 4, in addition to the operation by the IDCT calculation unit 14 shown in FIG. 2, a process (startup control process) for stopping the IDCT circuits 301a and 301b depending on the situation is performed.

《起動制御処理》
まず、第1の実施形態と同様の処理が行われ、判定回路302は、復号処理部13a,13bの各々からDCTデータ列情報を取得し、動き補償部15a,15bの各々から処理状況情報を取得する。
《Startup control processing》
First, processing similar to that of the first embodiment is performed, and the determination circuit 302 acquires DCT data sequence information from each of the decoding processing units 13a and 13b, and processing status information from each of the motion compensation units 15a and 15b. get.

次に、判定回路302は、取得した各々のDCTデータ列情報および各々の処理状況情報を参照して、IDCT回路301a,301bの各々に対して各々が逆DCT変換を行う必要があるか否かを判断する。   Next, the determination circuit 302 refers to each acquired DCT data string information and each processing status information to determine whether or not each of the IDCT circuits 301a and 301b needs to perform inverse DCT conversion. Judging.

IDCT回路301a,302bのうちいずれか一方が逆DCT変換を行う必要がないと判断した場合、判定回路302は、IDCT回路301a,301bのうち逆DCT変換を行う必要がないと判断したIDCT回路の動作を停止させる。例えば、判定回路302は、IDCT回路301a,301bのうち逆DCT変換を行う必要がないと判断したIDCT回路に入力されているクロック信号を停止する。   When it is determined that either one of the IDCT circuits 301a and 302b does not need to perform inverse DCT conversion, the determination circuit 302 determines whether the IDCT circuit 301a or 301b does not need to perform inverse DCT conversion. Stop operation. For example, the determination circuit 302 stops the clock signal input to the IDCT circuit that is determined not to perform the inverse DCT conversion among the IDCT circuits 301a and 301b.

次に、判定回路302は、第1の実施形態と同様に、算出した伝送期間を参照して、DCTデータ受信部101a,101bに対してIDCT回路301a,301bを割り当てる。このとき、判定回路302は、DCTデータ受信部101a,101bに対してIDCT回路301a,301bのうち動作を停止させたほうを割り当てない。また、判定回路302は、第1の実施形態と同様に、出力バッファ105a,105bの各々に対する判断の結果を参照して、IDCT回路301a,301bに対して出力バッファ105a,105bを割り当てる。このときも、判定回路302は、IDCT回路301a,301bのうち動作を停止させたほうに対して出力バッファ105a,105bを割り当てない。   Next, as in the first embodiment, the determination circuit 302 refers to the calculated transmission period and assigns the IDCT circuits 301a and 301b to the DCT data reception units 101a and 101b. At this time, the determination circuit 302 does not assign one of the IDCT circuits 301a and 301b whose operation is stopped to the DCT data receiving units 101a and 101b. Similarly to the first embodiment, the determination circuit 302 refers to the determination results for the output buffers 105a and 105b, and assigns the output buffers 105a and 105b to the IDCT circuits 301a and 301b. Also at this time, the determination circuit 302 does not assign the output buffers 105a and 105b to the IDCT circuit 301a or 301b whose operation is stopped.

一方、IDCT回路301a,301bのうち両方が逆DCT変換を行う必要があると判断した場合、判定回路302は、第1の実施形態と同様に、算出した伝送期間を参照してDCTデータ受信部101a,101bに対してIDCT回路301a,301bを割り当て、出力バッファ105a,105bの各々に対する判断の結果を参照して、IDCT回路301a,301bに対して出力バッファ105a,105bを割り当てる。   On the other hand, when it is determined that both of the IDCT circuits 301a and 301b need to perform inverse DCT conversion, the determination circuit 302 refers to the calculated transmission period, as in the first embodiment, and receives the DCT data reception unit. The IDCT circuits 301a and 301b are assigned to the terminals 101a and 101b, and the output buffers 105a and 105b are assigned to the IDCT circuits 301a and 301b with reference to the determination results for the output buffers 105a and 105b.

IDCT回路301a,301bのうち片方のIDCT回路を停止する処理として以下のようなものが考えられる。後段の動き補償部15a,15bで動き補償に必要な外部メモリの画像データの取得に極端に時間がかかる場合など、IDCT回路301a,301bの並列処理を行っても常に動き補償部の完了待ちが発生する場合がある。その場合、動き補償部15a,15bの処理にかかっている時間などの情報を判断回路302が受け取って、ある閾値を超えた場合などに片方のIDCT回路を停止する。   The following processing can be considered as a process for stopping one of the IDCT circuits 301a and 301b. Even when the parallel processing of the IDCT circuits 301a and 301b is performed, such as when the subsequent motion compensation units 15a and 15b take extremely long time to acquire the image data of the external memory necessary for motion compensation, the motion compensation unit always waits for completion. May occur. In this case, when the determination circuit 302 receives information such as the time taken for the processing of the motion compensation units 15a and 15b and exceeds a certain threshold value, one IDCT circuit is stopped.

<効果>
以上のように、IDCT回路は判定回路302の制御により動的に働き、必要に応じて回路の停止・起動を繰り返す。これにより、IDCT回路における消費電力を削減することが可能である。
<Effect>
As described above, the IDCT circuit works dynamically under the control of the determination circuit 302, and repeatedly stops and starts the circuit as necessary. Thereby, power consumption in the IDCT circuit can be reduced.

なお、本実施形態では、IDCT回路を停止する方法としてクロック信号の停止を例として挙げたが、これに限らない。   In the present embodiment, the method of stopping the IDCT circuit is exemplified by stopping the clock signal. However, the present invention is not limited to this.

(第4の実施形態)
逆DCT変換処理においては、演算処理を簡素化する方法が用いられる場合がある。例えば、水平もしくは垂直方向のデータを間引いてIDCT処理を行うダウンデコード処理や、全要素が0の場合には逆DCT変換処理を行わずに全て0のデータを出力するゼロデータ出力処理などが例として挙げられる。前者(ダウンデコード処理)の場合には若干の画質低下が発生するが、入力データ列によっては実使用上ほとんど問題のない処理結果が得られる。後者(ゼロデータ出力処理)の場合には、画質への影響は存在しない。
(Fourth embodiment)
In the inverse DCT conversion process, a method for simplifying the calculation process may be used. Examples include down-decode processing that performs IDCT processing by thinning out horizontal or vertical data, and zero data output processing that outputs all zero data without performing inverse DCT conversion processing when all elements are zero. As mentioned. In the former case (down decode processing), a slight deterioration in image quality occurs, but depending on the input data string, a processing result having almost no problem in actual use can be obtained. In the latter case (zero data output processing), there is no influence on the image quality.

<全体構成>
この発明の第4の実施形態によるMPEGストリーム処理装置は、図1および図2に示したIDCT演算部14に代えて、図5に示すIDCT演算部40を備える。その他の構成は、図1と同様である。
<Overall configuration>
An MPEG stream processing apparatus according to the fourth embodiment of the present invention includes an IDCT operation unit 40 shown in FIG. 5 instead of the IDCT operation unit 14 shown in FIGS. Other configurations are the same as those in FIG.

<IDCT演算部の内部構成>
図5に示したIDCT演算部40は、図2に示したIDCT回路103bおよび判定回路106に代えて、簡素化演算回路401および判定回路401を備える。簡素化演算回路401は、IDCT回路103aによる演算処理よりも簡素化した演算処理を行う。例えば、簡素化演算回路401は、上述したダウンデコード処理やゼロデータ出力処理等を行う。判定回路402は、DCTデータ列情報を復号処理部13a,13bの各々から取得すると共に、復号処理部13a,13bがDCTデータ受信部101a,101bに出力するDCTデータの内容を示す情報(データ内容情報)を復号処理部13a,13bの各々から取得する。例えば、データ内容情報は、DCTデータが属するフレームの種類やDCTデータに含まれるDCT係数の値に関する情報等である。
<Internal configuration of IDCT calculation unit>
The IDCT operation unit 40 illustrated in FIG. 5 includes a simplified operation circuit 401 and a determination circuit 401 instead of the IDCT circuit 103b and the determination circuit 106 illustrated in FIG. The simplified arithmetic circuit 401 performs arithmetic processing that is simpler than the arithmetic processing by the IDCT circuit 103a. For example, the simplified arithmetic circuit 401 performs the above-described down-decoding process, zero data output process, and the like. The determination circuit 402 acquires DCT data sequence information from each of the decoding processing units 13a and 13b, and information (data content) indicating the contents of DCT data output from the decoding processing units 13a and 13b to the DCT data receiving units 101a and 101b. Information) is acquired from each of the decoding processing units 13a and 13b. For example, the data content information is information regarding the type of frame to which the DCT data belongs, the value of the DCT coefficient included in the DCT data, and the like.

<動作>
図5に示したIDCT演算部40による動作について説明する。図5に示したIDCT演算部40は、MPEGストリームの内容によって演算処理を変更する処理(演算方法変更処理)を行う。
<Operation>
The operation of the IDCT calculation unit 40 shown in FIG. 5 will be described. The IDCT calculation unit 40 shown in FIG. 5 performs a process (calculation method change process) for changing the calculation process according to the content of the MPEG stream.

《演算方法変更処理》
まず、第1の実施形態と同様の処理が行われ、復号処理部13a,13bは、1ブロック分のDCTデータを自己に対応するDCTデータ受信部101a,101bに出力し始める。このとき、判定回路402は、DCTデータ列情報を復号処理部13a,13bの各々から取得すると共に、DCTデータ受信部に出力するデータの内容を示す情報(データ内容情報)を復号処理部13a,13bの各々から取得する。
<Calculation method change processing>
First, the same processing as in the first embodiment is performed, and the decoding processing units 13a and 13b start outputting DCT data for one block to the corresponding DCT data receiving units 101a and 101b. At this time, the determination circuit 402 acquires the DCT data string information from each of the decoding processing units 13a and 13b, and information (data content information) indicating the content of data to be output to the DCT data receiving unit. From each of 13b.

次に、判定回路402は、復号処理部13a,13bの各々から取得したデータ内容情報を参照して、DCTデータ受信部101a,101bの各々に格納されるDCTデータに対して簡略化した演算処理によって逆DCT変換を行うと画質が低下する可能性があるか否かを判断する。   Next, the determination circuit 402 refers to the data content information acquired from each of the decoding processing units 13a and 13b, and simplified arithmetic processing for the DCT data stored in each of the DCT data receiving units 101a and 101b. Thus, it is determined whether or not there is a possibility that the image quality is degraded when the inverse DCT transform is performed.

画質の低下する可能性が低いと判断した場合、判定回路402は、DCTデータ受信部101a,101bのうちデータ内容情報を取得した復号処理部に対応するDCTデータ受信部に対して簡素化演算回路401を割り当てる。また、判定回路402は、第1の実施形態と同様に、算出した伝送期間を参照して、DCTデータ受信部101a,101bのうち簡素化演算回路401に割り当てられていないDCTデータ受信部に対してIDCT回路103aを割り当てる。   If it is determined that there is a low possibility that the image quality is lowered, the determination circuit 402 simplifies the DCT data receiving unit corresponding to the decoding processing unit that acquired the data content information among the DCT data receiving units 101a and 101b. 401 is assigned. Similarly to the first embodiment, the determination circuit 402 refers to the calculated transmission period, and determines the DCT data receivers that are not assigned to the simplified arithmetic circuit 401 among the DCT data receivers 101a and 101b. IDCT circuit 103a is assigned.

一方、画質の低下する可能性が高いと判断した場合、判定回路402は、第1の実施形態と同様に、算出した伝送期間を参照して、DCTデータ受信部101a,101bの各々にIDCT回路を割り当てる。このとき、判定回路402は、DCTデータ受信部101a,101bのうちどちらのDCTデータ受信部に対しても簡素化演算回路を割り当てない。   On the other hand, if it is determined that there is a high possibility that the image quality will be reduced, the determination circuit 402 refers to the calculated transmission period, as in the first embodiment, to each of the DCT data reception units 101a and 101b. Assign. At this time, the determination circuit 402 does not assign a simplified arithmetic circuit to any of the DCT data receiving units 101a and 101b.

上記の動作においてデータ内容情報がDCTデータに含まれるDCT係数の値に関する情報である場合、判定回路402は、データ内容情報を参照して、DCTデータに含まれるDCT係数の値が全て「0」であるか否かを判断する。DCTデータに含まれるDCT係数の値が全て「0」であると判断した場合、判断回路402は、データ内容情報を取得した復号処理部に対応するDCTデータ受信部に対して簡素化演算回路401を割り当てる。簡素化演算回路401は、ゼロデータ出力処理を行い、いずれの入力に対しても「0」データを空間データとして出力する。   In the above operation, when the data content information is information on the value of the DCT coefficient included in the DCT data, the determination circuit 402 refers to the data content information and all the values of the DCT coefficient included in the DCT data are “0”. It is determined whether or not. When it is determined that the values of the DCT coefficients included in the DCT data are all “0”, the determination circuit 402 simplifies the operation circuit 401 for the DCT data reception unit corresponding to the decoding processing unit that acquired the data content information. Assign. The simplified arithmetic circuit 401 performs zero data output processing and outputs “0” data as spatial data for any input.

また、上記の動作においてデータ内容情報がDCTデータが含まれるピクチャの種類に関する情報である場合、判定回路402は、データ内容情報を参照して、DCTデータが含まれるピクチャの種類が「Bピクチャ」であるか否かを判断する。DCTデータが含まれるピクチャの種類が「Bピクチャ」であると判断した場合、判定回路402は、データ内容情報を取得した復号処理部に対応するDCTデータ受信部に対して、簡素化演算回路401を割り当てる。簡素化演算回路は、入力したDCTデータに対してダウンデコード処理を行い、その結果を空間データとして出力する。   In the above operation, when the data content information is information on the type of picture including DCT data, the determination circuit 402 refers to the data content information and the type of picture including DCT data is “B picture”. It is determined whether or not. When it is determined that the type of picture including the DCT data is “B picture”, the determination circuit 402 sends the simplified arithmetic circuit 401 to the DCT data reception unit corresponding to the decoding processing unit that acquired the data content information. Assign. The simplification arithmetic circuit performs down-decoding processing on the input DCT data and outputs the result as spatial data.

<効果>
以上のように、簡素化した演算を行っても画質の低下が少ない周波数データを格納している受信部に対して簡素化演算回路を対応づける。簡素化した演算を行っても画質の低下が少ない周波数データに対して演算を行う速度は、他の逆直交変換回路による演算よりも簡素化演算回路による演算のほうが速い。これにより、逆直交変換による処理速度を上げることができ、装置全体としての動作効率を向上させることが可能である。また、第1の実施形態のIDCT回路よりも簡素な回路を用いても第1の実施形態と同程度の処理が実現でき、かつ画質の低下を最小限に抑えることが可能となる。
<Effect>
As described above, the simplified arithmetic circuit is associated with the receiving unit that stores the frequency data in which the deterioration in image quality is small even when the simplified calculation is performed. The speed at which the calculation is performed on the frequency data with little degradation in image quality even if the simplified calculation is performed is faster in the calculation by the simplified calculation circuit than in the calculation by other inverse orthogonal transform circuits. As a result, the processing speed by inverse orthogonal transform can be increased, and the operation efficiency of the entire apparatus can be improved. Further, even if a simpler circuit than the IDCT circuit of the first embodiment is used, the same level of processing as that of the first embodiment can be realized, and deterioration in image quality can be minimized.

以上のように、本発明は、MPEGストリームより画像データを復号化する装置の逆DCT変換を行う回路等について有用である。   As described above, the present invention is useful for a circuit that performs inverse DCT conversion of an apparatus that decodes image data from an MPEG stream.

この発明の第1の実施形態によるMPEGストリーム処理装置の全体構成を示すブロック図である。1 is a block diagram showing an overall configuration of an MPEG stream processing apparatus according to a first embodiment of the present invention. 図1に示したIDCT演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the IDCT calculating part shown in FIG. この発明の第2の実施形態によるIDCT演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the IDCT calculating part by 2nd Embodiment of this invention. この発明の第3の実施形態によるIDCT演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the IDCT calculating part by 3rd Embodiment of this invention. この発明の第4の実施形態によるIDCT演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the IDCT calculating part by 4th Embodiment of this invention. 従来のMPEGストリーム処理装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the conventional MPEG stream processing apparatus. 同時処理したいストリームの数だけ図6に示したMPEGストリーム処理装置を並列に備えた従来のMPEGストリーム処理装置を示すブロック図である。FIG. 7 is a block diagram showing a conventional MPEG stream processing apparatus including the MPEG stream processing apparatuses shown in FIG. 6 in parallel for the number of streams to be simultaneously processed. 複数ストリームを同時に処理する場合に、図6に示したMPEGストリーム処理装置に含まれる各々の回路演算性能を向上させて時分割で処理する従来のMPEGストリーム処理装置を示すブロック図である。FIG. 7 is a block diagram showing a conventional MPEG stream processing apparatus that processes each circuit included in the MPEG stream processing apparatus shown in FIG. 6 in a time division manner when processing a plurality of streams simultaneously. 複数ストリームを同時に処理する場合に、図6に示したMPEGストリーム処理装置のうちMPEG伸長処理内で並列に処理可能な部分を複数の回路を持つことで並列処理する従来のMPEGストリーム処理装置を示すブロック図である。6 shows a conventional MPEG stream processing apparatus that performs parallel processing by having a plurality of circuits in a portion that can be processed in parallel within the MPEG decompression processing of the MPEG stream processing apparatus shown in FIG. 6 when processing a plurality of streams simultaneously. It is a block diagram.

符号の説明Explanation of symbols

11 ストリーム処理部
12 分離部
13a,13b 復号処理部
14,20,30,40 IDCT演算部
15a,15b 動き補償部
101a,101b,201a,201b, DCTデータ受信部
102,104 セレクタ
103a,103b,203a,203b,301a,301b IDCT回路
105a,105b 出力バッファ
106,203,402 判定回路
211a,211b 入力バッファ
202a,202b 高速伝送回路
213a,213b 演算バッファ
214a,214b 演算処理部
401 簡素化演算回路
11 Stream processing unit 12 Separation unit 13a, 13b Decoding processing unit 14, 20, 30, 40 IDCT operation unit 15a, 15b Motion compensation unit 101a, 101b, 201a, 201b, DCT data receiving unit 102, 104 Selector 103a, 103b, 203a , 203b, 301a, 301b IDCT circuits 105a, 105b Output buffers 106, 203, 402 Judgment circuits 211a, 211b Input buffers 202a, 202b High-speed transmission circuits 213a, 213b Arithmetic buffers 214a, 214b Arithmetic processing unit 401 Simplified arithmetic circuit

Claims (7)

周波数データに対して逆直交変換を行うことにより空間データを生成する装置であって、
判定部と、2以上の受信部と、2以上の逆直交変換部と、2以上の出力バッファとを備え、
前記判定部は、
前記受信部の各々に対して前記逆直交変換部のうちいずれか1つを対応づけ、かつ前記出力バッファの各々に対して前記逆直交変換部のうちいずれか1つを対応づけ、
前記受信部の各々は、
前記周波数データを格納し、
前記逆直交変換部の各々は、
前記判定部によって当該逆直交変換部に対応づけられた受信部が格納する周波数データに対して逆直交変換を行うことによって前記空間データを生成し、
前記出力バッファの各々は、
前記判定部によって当該出力バッファに対応づけられた逆直交変換部が生成した空間データを格納し、
前記判定部は、さらに
前記受信部の各々において当該受信部が前記周波数データを格納するために要する時間と出力バッファの各々における当該出力バッファによる空間データの格納の有無とを参照して、前記対応づけを行う
ことを特徴とする逆直交変換装置。
An apparatus that generates spatial data by performing inverse orthogonal transform on frequency data,
A determination unit, two or more reception units, two or more inverse orthogonal transform units, and two or more output buffers,
The determination unit
Associating any one of the inverse orthogonal transform units with each of the receiving units, and associating any one of the inverse orthogonal transform units with each of the output buffers,
Each of the receivers is
Storing the frequency data;
Each of the inverse orthogonal transform units includes:
The spatial data is generated by performing inverse orthogonal transform on the frequency data stored in the reception unit associated with the inverse orthogonal transform unit by the determination unit,
Each of the output buffers
The spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit is stored,
The determination unit further refers to the time required for the reception unit to store the frequency data in each of the reception units and whether or not spatial data is stored by the output buffer in each of the output buffers. An inverse orthogonal transforming device characterized by performing attaching.
請求項1において、
前記逆直交変換装置は、
符号化された動画像データに対して復号化を行い周波数データを生成する復号処理部と前記空間データに対して動き補償を行う動き補償部との間に接続され、
前記受信部の各々は、
前記復号処理部によって生成された周波数データを格納し、
前記出力バッファの各々は、
前記判定部によって当該出力バッファに対応づけられた逆直交変換部が生成した空間データを格納し、格納した空間データを前記動き補償部に出力し、
前記判定部は、
前記受信部の各々において当該受信部が対応する前記復号処理部から前記周波数データを格納するために要する時間と出力バッファの各々に対応する前記動き補償部の動作状況とを参照して、前記対応づけを行う
ことを特徴とする逆直交変換装置。
In claim 1,
The inverse orthogonal transform device includes:
Connected between a decoding processing unit that decodes the encoded moving image data to generate frequency data and a motion compensation unit that performs motion compensation on the spatial data,
Each of the receivers is
Storing the frequency data generated by the decoding processing unit;
Each of the output buffers
Storing the spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit, and outputting the stored spatial data to the motion compensation unit;
The determination unit
Refer to the time required for storing the frequency data from the decoding processing unit corresponding to the receiving unit in each of the receiving units and the operation state of the motion compensation unit corresponding to each of the output buffers. An inverse orthogonal transforming device characterized by performing attaching.
請求項1において、
前記逆直交変換装置は、
符号化された動画像データに対して復号化を行い周波数データを生成する2以上の復号処理部と前記空間データに対して動き補償を行う2以上の動き補償部との間に接続され、
前記受信部の各々は、
前記復号処理部のうちいずれか1つに1対1で対応しており、
当該受信部に対応する前記復号処理部によって生成された周波数データを格納し、
前記出力バッファの各々は、
前記動き補償部のうちいずれか1つに1対1で対応しており、
前記判定部によって当該出力バッファに対応づけられた逆直交変換部が生成した空間データを格納し、格納した空間データを当該出力バッファに対応する前記動き補償部に出力し、
前記判定部は、
前記受信部の各々において当該受信部が対応する前記復号処理部から前記周波数データを格納するために要する時間と出力バッファの各々に対応する前記動き補償部の動作状況とを参照して、前記対応づけを行う
ことを特徴とする逆直交変換装置。
In claim 1,
The inverse orthogonal transform device includes:
Connected between two or more decoding processing units that decode the encoded moving image data and generate frequency data, and two or more motion compensation units that perform motion compensation on the spatial data,
Each of the receivers is
One-to-one correspondence with any one of the decryption processing units,
Storing the frequency data generated by the decoding processing unit corresponding to the receiving unit;
Each of the output buffers
One-to-one correspondence with any one of the motion compensation units,
Storing the spatial data generated by the inverse orthogonal transform unit associated with the output buffer by the determination unit, and outputting the stored spatial data to the motion compensation unit corresponding to the output buffer;
The determination unit
Refer to the time required for storing the frequency data from the decoding processing unit corresponding to the receiving unit in each of the receiving units and the operation state of the motion compensation unit corresponding to each of the output buffers. An inverse orthogonal transforming device characterized by performing attaching.
請求項1において、
前記受信部は、
前記周波数データを格納する格納部と、
前記格納部に格納された周波数データを出力する出力部とを含み、
前記逆直交変換部は、
前記出力部からの周波数データを格納する演算バッファと、
前記演算バッファに格納された周波数データに対して逆直交変換を行うことにより空間データを生成する演算部とを含む
ことを特徴とする逆直交変換装置。
In claim 1,
The receiver is
A storage unit for storing the frequency data;
An output unit for outputting the frequency data stored in the storage unit,
The inverse orthogonal transform unit includes:
An operation buffer for storing frequency data from the output unit;
An inverse orthogonal transform apparatus comprising: an arithmetic unit that generates spatial data by performing inverse orthogonal transform on the frequency data stored in the arithmetic buffer.
請求項1において、
前記判定部は、さらに
前記受信部の各々において当該受信部が前記周波数データを格納するために要する時間と出力バッファの各々における当該出力バッファによる空間データの格納の有無とを参照して、前記逆直交変換部のうち動作を行う必要がない逆直交変換部を停止する
ことを特徴とする逆直交変換装置。
In claim 1,
The determination unit further refers to the time required for the receiving unit to store the frequency data in each of the receiving units and whether or not the output buffer stores spatial data in each of the output buffers. An inverse orthogonal transform apparatus characterized by stopping an inverse orthogonal transform unit that does not need to perform an operation among orthogonal transform units.
請求項1において、
前記2以上の逆直交変換部には、他の逆直交変換部によって行われる演算よりも簡素化した演算を行う簡素化演算部が少なくとも1つ含まれ、
前記判定部は、さらに
前記受信部の各々に格納された周波数データの内容に応じて、当該周波数データを格納する受信部に前記簡素化演算部を対応づける
ことを特徴とする逆直交変換装置。
In claim 1,
The two or more inverse orthogonal transform units include at least one simplified computation unit that performs a computation that is simplified as compared to computations performed by other inverse orthogonal transform units,
The determination unit further associates the simplification calculation unit with the reception unit that stores the frequency data according to the content of the frequency data stored in each of the reception units.
請求項1において、
前記逆直交変換は、逆DCT変換である
ことを特徴とする逆直交変換装置
In claim 1,
The inverse orthogonal transform device is characterized in that the inverse orthogonal transform is an inverse DCT transform.
JP2004037146A 2004-02-13 2004-02-13 Apparatus for inverse orthogonal transformation Pending JP2005229423A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004037146A JP2005229423A (en) 2004-02-13 2004-02-13 Apparatus for inverse orthogonal transformation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004037146A JP2005229423A (en) 2004-02-13 2004-02-13 Apparatus for inverse orthogonal transformation

Publications (1)

Publication Number Publication Date
JP2005229423A true JP2005229423A (en) 2005-08-25

Family

ID=35003788

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004037146A Pending JP2005229423A (en) 2004-02-13 2004-02-13 Apparatus for inverse orthogonal transformation

Country Status (1)

Country Link
JP (1) JP2005229423A (en)

Similar Documents

Publication Publication Date Title
US5990958A (en) Apparatus and method for MPEG video decompression
US6263023B1 (en) High definition television decoder
US7773676B2 (en) Video decoding system with external memory rearranging on a field or frames basis
Zhou et al. A 530 Mpixels/s 4096x2160@ 60fps H. 264/AVC high profile video decoder chip
CN1805517B (en) System and method of decoding dual video signals
US10026146B2 (en) Image processing device including a progress notifier which outputs a progress signal
US9621908B2 (en) Dynamic load balancing for video decoding using multiple processors
WO2009133671A1 (en) Video encoding and decoding device
CN1937773B (en) External memory device, method of storing image data for the same, and image processor using the method
KR102606584B1 (en) Frame reordering method and system for video coding
WO2007136093A1 (en) Image decoding device
JPH05268590A (en) Moving picture coding decoding circuit
WO2009142003A1 (en) Image coding device and image coding method
US20100061464A1 (en) Moving picture decoding apparatus and encoding apparatus
JP2009267837A (en) Decoding device
KR100298397B1 (en) Video decoding system
US11968380B2 (en) Encoding and decoding video
US20180131936A1 (en) Conversion buffer to decouple normative and implementation data path interleaving of video coefficients
US8085853B2 (en) Video decoding and transcoding method and system
JP2007259323A (en) Image decoding apparatus
JP2005229423A (en) Apparatus for inverse orthogonal transformation
US20030123555A1 (en) Video decoding system and memory interface apparatus
JP5265984B2 (en) Image encoding apparatus and decoding apparatus
WO2009085788A1 (en) System, method and device for processing macroblock video data
CN114339249B (en) Video decoding method, readable medium and electronic device thereof