JP2005260639A - Signal processor and signal processing method - Google Patents

Signal processor and signal processing method Download PDF

Info

Publication number
JP2005260639A
JP2005260639A JP2004070325A JP2004070325A JP2005260639A JP 2005260639 A JP2005260639 A JP 2005260639A JP 2004070325 A JP2004070325 A JP 2004070325A JP 2004070325 A JP2004070325 A JP 2004070325A JP 2005260639 A JP2005260639 A JP 2005260639A
Authority
JP
Japan
Prior art keywords
unit
block
variable length
data
length decoding
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
JP2004070325A
Other languages
Japanese (ja)
Inventor
Tomoko Matsui
智子 松井
Ryoji Yamaguchi
良二 山口
Katsumi Hoashi
克己 帆足
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 JP2004070325A priority Critical patent/JP2005260639A/en
Publication of JP2005260639A publication Critical patent/JP2005260639A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve the problem of scaling up a circuit in the configuration which simply comprises a plurality of decoding parts when regenerating the signal which is compression coded at a high speed. <P>SOLUTION: In a variable length decoding process which requires serial processing when the signal processed for variable length coding is speeded up after arithmetic operation, the process is divided into desired process units, and a plurality of process units are simultaneously decoded at a plurality of variable length decoding parts. In an arithmetic operation process for next inverse operation, a process is performed in time series for each process unit. The arithmetic operation part assures process performance here by parallelizing a calculation circuit. Thus, the signal processor for high speed decoding process is provided while scaling up of a circuit is suppressed. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、符号化された信号を復号化する信号処理方法および信号処理装置に関する。   The present invention relates to a signal processing method and a signal processing device for decoding an encoded signal.

動画像の圧縮符号化には、MPEG圧縮符号化方式が広く用いられており、MPEGでは、離散コサイン変換を用いて、周波数空間に変換した後、可変長符号化を施している。近年、HDTVのデジタル放送化が進んでおり、テレビの商品仕様の拡張に伴い、MPEGデコーダが扱うデータ量(処理量)も増加傾向にある。このため、要求仕様に応じて、リアルタイムに入力信号を再生するために、動作周波数を上げずに、デコード処理を高速化するための方法が提案されている。   For compression encoding of moving images, the MPEG compression encoding method is widely used. In MPEG, variable length encoding is performed after conversion to a frequency space using discrete cosine transform. In recent years, digital television broadcasting of HDTV has progressed, and with the expansion of TV product specifications, the amount of data (processing amount) handled by the MPEG decoder is also increasing. For this reason, in order to reproduce the input signal in real time according to the required specifications, a method for speeding up the decoding process without increasing the operating frequency has been proposed.

図18に、高速化を実現するために提案されている従来の信号処理装置の一例を示す。   FIG. 18 shows an example of a conventional signal processing apparatus that has been proposed to realize high speed.

従来の信号処理装置は、入力信号を所定単位に分割し、複数の信号を出力するプレパーサー部901と、プレパーサー部901の出力する信号を入力とし、入力信号中の所定の位置に記録されたヘッダ情報を解析するヘッダ解析部902a,902bと、複数ある可変長符号化テーブルから一致する符号を検出し、可変長符号化テーブルに一致するシンボルを復号データとして出力する可変長復号部903a,903bと、可変長復号部903a,903bの各々より出力される復号データを算術処理して、差分データを出力する二算術演算部904a,904bと、算術演算部904a,904bの各々より出力される差分データを格納するフレームメモリ905から構成される。   A conventional signal processing apparatus divides an input signal into predetermined units, a preparser unit 901 that outputs a plurality of signals, and a signal output from the preparser unit 901 as an input, and a header recorded at a predetermined position in the input signal Header analysis units 902a and 902b that analyze information, variable length decoding units 903a and 903b that detect matching codes from a plurality of variable length coding tables, and output symbols that match the variable length coding tables as decoded data; The differential data output from each of the arithmetic operation units 904a and 904b and the arithmetic operation units 904a and 904b that perform arithmetic processing on the decoded data output from each of the variable length decoding units 903a and 903b and output difference data Is composed of a frame memory 905 for storing.

また、図19に示すように、算術演算部904a,904bの各々は、入力信号が符号化の過程で行われた周波数変換を元に戻す逆変換(逆周波数変換)を行う周波数変換部9040と、入力信号が符号化の過程で行われた動き予測を再生する(動き補償を行う)動き補償部9041から構成される。   Further, as shown in FIG. 19, each of the arithmetic operation units 904 a and 904 b includes a frequency conversion unit 9040 that performs reverse conversion (inverse frequency conversion) for restoring the frequency conversion performed in the process of encoding the input signal. The input signal includes a motion compensation unit 9041 that reproduces motion prediction (performs motion compensation) performed in the process of encoding.

以上述べたように、従来の信号処理装置は、入力信号をスライス単位に分割してスライス単位に同時にデコード処理するため、同じ機能を持つデコード処理系統を複数持つ構成である。このように、複数のデコード処理系を持つことで、高速に入力信号を復号化処理することができる。   As described above, the conventional signal processing apparatus has a configuration having a plurality of decoding processing systems having the same function in order to divide an input signal into slice units and simultaneously perform decoding processing in slice units. Thus, by having a plurality of decoding processing systems, the input signal can be decoded at high speed.

例えば、1本のMP@HL (1920×1080)を1フレーム時間に1フレームデコード処理する性能を持つデコーダで、2本のMP@HLのストリームをデコード処理させる場合を考える。このとき、デコーダに要求される処理性能は、1フレームデコード時間に、2フレームをデコード処理することである。従来技術のデコーダを用いると、スライスデコーダを2並列持てば、2倍速の性能を確保することができ、1フレームデコード時間に、2フレームをデコード処理することが可能である。
特開平10-178644公報
For example, consider a case where two MP @ HL streams are decoded by a decoder capable of decoding one MP @ HL (1920 × 1080) per frame time. At this time, the processing performance required for the decoder is to decode two frames in one frame decoding time. When a conventional decoder is used, if two slice decoders are provided in parallel, a double speed performance can be ensured, and two frames can be decoded in one frame decoding time.
JP 10-178644 A

しかしながら、このような方法で、2倍速の信号処理装置を検討すると、回路規模が2倍になる。さらに、3倍速を検討すると、回路規模が3倍になる。つまり、性能が向上すると共に、回路規模も同様に大きくなる。   However, if a double-speed signal processing apparatus is studied using such a method, the circuit scale is doubled. Further, considering the triple speed, the circuit scale is tripled. That is, the performance is improved and the circuit scale is also increased.

また、このような方法を用いずデコード処理系統を1つしか持たない場合では、2倍速,3倍速の性能を得るためには装置全体の動作周波数を上げなければならない。   Further, when such a method is not used and only one decoding processing system is provided, the operating frequency of the entire apparatus must be increased in order to obtain double speed and triple speed performance.

本発明は、このような点に鑑み、回路規模の増加を抑え、高速に入力信号の復号化処理を行う信号処理装置を提案する。   In view of the above, the present invention proposes a signal processing device that suppresses an increase in circuit scale and performs decoding processing of an input signal at high speed.

この発明の1つの局面に従うと、信号処理装置は、所定の規格によって符号化された信号を処理する。符号化信号は、複数のブロックデータと、ヘッダとを含む。ヘッダは、そのブロックデータに関するブロック情報を格納する。信号処理装置は、ヘッダ情報取得部と、プレパーサー部と、複数の可変長復号部と、算術演算部を備える。ヘッダ情報取得部は、符号化信号の中からヘッダに格納されたブロック情報を取得する。プレパーサー部は、ヘッダ情報取得部によって取得されたブロック情報を参照して、複数のブロックデータの各々に複数の可変長復号部のうちいずれか1つを対応付ける。複数の可変長復号部の各々は、プレパーサー部によって対応付けられたブロックデータに対して可変長復号化を行うことによって復号データを生成する。算術演算部は、複数の可変長復号部を1つずつ順番に選択し、選択した可変長復号部によって生成された復号データに対して逆算術演算を行うことによって再生データを生成する。   According to one aspect of the present invention, the signal processing device processes a signal encoded by a predetermined standard. The encoded signal includes a plurality of block data and a header. The header stores block information regarding the block data. The signal processing apparatus includes a header information acquisition unit, a preparser unit, a plurality of variable length decoding units, and an arithmetic operation unit. The header information acquisition unit acquires block information stored in the header from the encoded signal. The preparser unit associates one of the plurality of variable length decoding units with each of the plurality of block data with reference to the block information acquired by the header information acquisition unit. Each of the plurality of variable length decoding units generates decoded data by performing variable length decoding on the block data associated by the preparser unit. The arithmetic operation unit selects a plurality of variable length decoding units one by one in order, and generates reproduction data by performing an inverse arithmetic operation on the decoded data generated by the selected variable length decoding unit.

上記信号処理装置では、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、算術演算部の動作速度を上げると、複数の可変長復号部の各々によって生成された復号データに対する算術演算を高速に行うことができる。よって、算術演算部が1つしかなくとも、算術演算部の動作速度のみを上げれば高速の処理性能を得ることができる。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに算術演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。   In the signal processing apparatus, since the decoded signal in units of blocks is processed in parallel by the plurality of variable length decoding units, the encoded signal can be decoded at high speed. Further, when the operation speed of the arithmetic operation unit is increased, it is possible to perform an arithmetic operation on the decoded data generated by each of the plurality of variable length decoding units at high speed. Therefore, even if there is only one arithmetic operation unit, high-speed processing performance can be obtained by increasing only the operation speed of the arithmetic operation unit. In this way, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the arithmetic operation unit without increasing the operating frequency of the entire apparatus. Can do.

好ましくは、上記複数のブロックデータの各々は、当該ブロックデータの終端を示す終端符号が付加されている。上記プレパーサー部は、終端符号検出部と、ブロック制御部と、選択部とを含む。終端符号検出部は、上記ブロックデータの中から終端符号を検出する。ブロック制御部は、上記ヘッダ情報取得部によって取得されたブロック情報に基づき、上記複数のブロックの各々に上記複数の可変長復号部のうちいずれか1つを対応付ける。選択部は、終端符号検出部によって終端符号が検出されると、上記ブロック制御部による上記複数のブロックと上記複数の可変長復号部との対応付けに従って、当該終端符号が検出されたブロックデータに上記複数の可変長復号部のうちいずれか1つを対応付ける。   Preferably, each of the plurality of block data is added with a termination code indicating the termination of the block data. The pre-parser unit includes a termination code detection unit, a block control unit, and a selection unit. The termination code detector detects a termination code from the block data. The block control unit associates one of the plurality of variable length decoding units with each of the plurality of blocks based on the block information acquired by the header information acquisition unit. When the termination code is detected by the termination code detection unit, the selection unit converts the block code in which the termination code is detected according to the association between the plurality of blocks and the plurality of variable length decoding units by the block control unit. Any one of the plurality of variable length decoding units is associated.

上記信号処理装置では、終端符号が検出される毎にその終端符号が付加されたブロックデータに対して可変長符号部が対応付けられる。このように、複数の可変長復号部の各々にブロックデータを対応付けることができる。   In the signal processing device, each time a terminal code is detected, a variable-length code unit is associated with the block data to which the terminal code is added. In this way, block data can be associated with each of the plurality of variable length decoding units.

好ましくは、上記算術演算部は、周波数変換部と、動き補償部とを含む。周波数変換部は、上記複数の可変長復号部を1つずつ順番に選択し、選択した可変長復号部によって生成された復号データに対して逆直交変換を行うことによって空間データを生成する。動き補償部は、周波数変換部によって生成された空間データに対して動き補償を行うことによって再生データを生成する。   Preferably, the arithmetic operation unit includes a frequency conversion unit and a motion compensation unit. The frequency transform unit selects the plurality of variable length decoding units one by one in order, and generates spatial data by performing inverse orthogonal transform on the decoded data generated by the selected variable length decoding unit. The motion compensation unit generates reproduction data by performing motion compensation on the spatial data generated by the frequency conversion unit.

上記信号処理装置では、周波数演算部は、単純に入力されたデータに対して演算を行うだけなので、比較的動作速度を上げやすい。また、フレームメモリにアクセスできるのは1つだけなので、動き補償部が1つしか存在しなくとも、動き補償部が複数存在する場合と同様の性能を得ることができる。このように、周波数変換部および動き補償部が1つしかなくとも、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに算術演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。   In the above signal processing apparatus, the frequency calculation unit simply calculates the input data, and therefore it is relatively easy to increase the operation speed. Further, since only one frame memory can be accessed, even if there is only one motion compensation unit, the same performance as when there are a plurality of motion compensation units can be obtained. As described above, even if there is only one frequency conversion unit and motion compensation unit, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and an arithmetic operation unit without increasing the operating frequency of the entire apparatus. If only the operating frequency is increased, high-speed processing performance can be obtained.

好ましくは、上記算術演算部の動作速度は、上記可変長復号部の動作速度よりも速い。   Preferably, the operation speed of the arithmetic operation unit is faster than the operation speed of the variable length decoding unit.

好ましくは、上記所定の規格によって符号化された信号は、MPEGストリームである。   Preferably, the signal encoded according to the predetermined standard is an MPEG stream.

この発明のもう1つの局面に従うと、信号処理方法は、所定の規格によって符号化された信号を処理する。符号化信号は、複数のブロックデータと、ヘッダとを含む。ヘッダは、そのブロックデータに関するブロック情報を格納する。信号処理方法は、ヘッダ情報取得ステップと、プレパーサーステップと、複数の可変長復号ステップと、算術演算ステップを備える。ヘッダ情報取得ステップは、符号化信号の中からヘッダに格納されたブロック情報を取得する。プレパーサーステップは、ヘッダ情報取得ステップによって取得されたブロック情報を参照して、複数のブロックデータの各々に複数の可変長復号ステップのうちいずれか1つを対応付ける。複数の可変長復号ステップの各々は、プレパーサーステップによって対応付けられたブロックデータに対して可変長復号化を行うことによって復号データを生成する。算術演算ステップは、複数の可変長復号ステップを1つずつ順番に選択し、選択した可変長復号ステップによって生成された復号データに対して逆算術演算を行うことによって再生データを生成する。   According to another aspect of the present invention, a signal processing method processes a signal encoded according to a predetermined standard. The encoded signal includes a plurality of block data and a header. The header stores block information regarding the block data. The signal processing method includes a header information acquisition step, a preparser step, a plurality of variable length decoding steps, and an arithmetic operation step. The header information acquisition step acquires block information stored in the header from the encoded signal. The preparser step associates any one of the plurality of variable length decoding steps with each of the plurality of block data with reference to the block information acquired by the header information acquisition step. Each of the plurality of variable length decoding steps generates decoded data by performing variable length decoding on the block data associated by the preparser step. In the arithmetic operation step, a plurality of variable length decoding steps are selected one by one in order, and reproduction data is generated by performing an inverse arithmetic operation on the decoded data generated by the selected variable length decoding step.

上記信号処理方法では、複数の可変長復号ステップによってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、算術演算ステップの動作速度を上げると、複数の可変長復号ステップの各々によって生成された復号データに対する算術演算を高速に行うことができる。よって、算術演算ステップが1つしかなくとも、算術演算ステップの動作速度のみを上げれば高速の処理性能を得ることができる。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、方法全体の動作周波数を上げずに算術演算ステップの動作周波数のみを上げれば高速の処理性能を得ることができる。   In the above signal processing method, since the decoded signal in units of blocks is processed in parallel by a plurality of variable length decoding steps, the encoded signal can be decoded at high speed. Further, when the operation speed of the arithmetic operation step is increased, the arithmetic operation on the decoded data generated by each of the plurality of variable length decoding steps can be performed at high speed. Therefore, even if there is only one arithmetic operation step, high processing performance can be obtained by increasing only the operation speed of the arithmetic operation step. In this way, it is possible to suppress the increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the arithmetic operation step without increasing the operating frequency of the entire method. Can do.

好ましくは、上記複数のブロックデータの各々は、当該ブロックデータの終端を示す終端符号が付加されている。上記プレパーサーステップは、終端符号検出ステップと、ブロック制御ステップと、選択ステップとを含む。終端符号検出ステップは、上記ブロックデータの中から終端符号を検出する。ブロック制御ステップは、上記ヘッダ情報取得ステップによって取得されたブロック情報に基づき、上記複数のブロックの各々に上記複数の可変長復号ステップのうちいずれか1つを対応付ける。選択ステップは、終端符号検出ステップによって終端符号が検出されると、上記ブロック制御ステップによる上記複数のブロックと上記複数の可変長復号ステップとの対応付けに従って、当該終端符号が検出されたブロックデータに上記複数の可変長復号ステップのうちいずれか1つを対応付ける。   Preferably, each of the plurality of block data is added with a termination code indicating the termination of the block data. The preparser step includes a termination code detection step, a block control step, and a selection step. In the termination code detection step, a termination code is detected from the block data. The block control step associates any one of the plurality of variable length decoding steps with each of the plurality of blocks based on the block information acquired by the header information acquisition step. In the selection step, when the termination code is detected by the termination code detection step, the block data in which the termination code is detected is determined according to the association between the plurality of blocks and the plurality of variable length decoding steps in the block control step. Any one of the plurality of variable length decoding steps is associated.

上記信号処理方法では、終端符号が検出される毎にその終端符号が付加されたブロックデータに対して可変長符号ステップが対応付けられる。このように、複数の可変長復号ステップの各々にブロックデータを対応付けることができる。   In the signal processing method, each time a terminal code is detected, a variable length code step is associated with the block data to which the terminal code is added. In this way, block data can be associated with each of a plurality of variable length decoding steps.

好ましくは、上記算術演算ステップは、周波数変換ステップと、動き補償ステップとを含む。周波数変換ステップは、上記複数の可変長復号ステップを1つずつ順番に選択し、選択した可変長復号ステップによって生成された復号データに対して逆直交変換を行うことによって空間データを生成する。動き補償ステップは、周波数変換ステップによって生成された空間データに対して動き補償を行うことによって再生データを生成する。   Preferably, the arithmetic operation step includes a frequency conversion step and a motion compensation step. In the frequency transform step, the plurality of variable length decoding steps are selected one by one in order, and spatial data is generated by performing inverse orthogonal transform on the decoded data generated by the selected variable length decoding step. In the motion compensation step, reproduction data is generated by performing motion compensation on the spatial data generated in the frequency conversion step.

上記信号処理方法では、周波数演算ステップは、単純に入力されたデータに対して演算を行うだけなので、比較的動作速度を上げやすい。また、フレームメモリにアクセスできるのは1つだけなので、動き補償ステップが1つしか存在しなくとも、動き補償ステップが複数存在する場合と同様の性能を得ることができる。このように、周波数変換ステップおよび動き補償ステップが1つしかなくとも、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、方法全体の動作周波数を上げずに算術演算ステップの動作周波数のみを上げれば高速の処理性能を得ることができる。   In the signal processing method described above, the frequency calculation step simply calculates the input data, and therefore it is relatively easy to increase the operation speed. Further, since only one frame memory can be accessed, even if there is only one motion compensation step, the same performance as when there are a plurality of motion compensation steps can be obtained. Thus, even if there is only one frequency conversion step and motion compensation step, it is possible to suppress an increase in circuit scale accompanying parallelization of the decoding processing system, and to perform an arithmetic operation step without increasing the operating frequency of the entire method. If only the operating frequency is increased, high-speed processing performance can be obtained.

好ましくは、上記算術演算ステップの動作速度は、上記可変長復号ステップの動作速度よりも速い。   Preferably, the operation speed of the arithmetic operation step is faster than the operation speed of the variable length decoding step.

好ましくは、上記所定の規格によって符号化された信号は、MPEGストリームである。   Preferably, the signal encoded according to the predetermined standard is an MPEG stream.

以上のように、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、算術演算部の動作速度を上げると、複数の可変長復号部の各々によって生成された復号データに対する算術演算を高速に行うことができる。よって、算術演算部が1つしかなくとも、算術演算部の動作速度のみを上げれば高速の処理性能を得ることができる。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに算術演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。   As described above, since the decoded signal in block units is processed in parallel by the plurality of variable length decoding units, the encoded signal can be decoded at high speed. Further, when the operation speed of the arithmetic operation unit is increased, it is possible to perform an arithmetic operation on the decoded data generated by each of the plurality of variable length decoding units at high speed. Therefore, even if there is only one arithmetic operation unit, high-speed processing performance can be obtained by increasing only the operation speed of the arithmetic operation unit. In this way, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the arithmetic operation unit without increasing the operating frequency of the entire apparatus. Can do.

以下、この発明の実施の形態を図面を参照して詳しく説明する。なお、図中同一または相当部分には同一の符号を付しその説明は繰り返さない。   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の実施形態による信号処理装置の全体構成を図1に示す。この装置は、ヘッダ解析部101と、プレパーサー部102と、可変長復号部103a,103bと、算術演算部104と、フレームメモリ105とを備える。ヘッダ解析部101は、入力信号中の所定の位置に記録されたヘッダ情報を解析することによって動き補償に使用する情報SignalA,ブロックに関する情報SignalB,および逆離散コサイン変換に関する情報SignalCを取得する。プレパーサー部102は、ヘッダ情報解析部101からの情報SignalBを参照して、ヘッダ情報解析部101からの入力信号を所定の単位毎に可変長復号部103a,103bへ出力する。可変長復号部103a,103bの各々は、複数ある可変長符号化テーブルからプレパーサー部102から出力された入力信号と一致する符号を検出し、その可変長符号化テーブルに一致するシンボルをそれぞれ復号データD103A,D103Bとして出力する(可変長復号化を行う)。算術演算部104は、ヘッダ情報解析部101からの情報SignalA,SignalCを参照して、可変長復号部103aから出力された復号データD103Aおよび可変長復号部103bから出力された復号データD103Bを時分割に算術処理して差分データを生成する。フレームメモリ105は、算術演算部104によって生成された差分データを格納する。
(First embodiment)
<overall structure>
FIG. 1 shows the overall configuration of the signal processing apparatus according to the first embodiment of the present invention. This apparatus includes a header analysis unit 101, a preparser unit 102, variable length decoding units 103a and 103b, an arithmetic operation unit 104, and a frame memory 105. The header analysis unit 101 obtains information SignalA used for motion compensation, information SignalB related to blocks, and information SignalC related to inverse discrete cosine transform by analyzing header information recorded at a predetermined position in the input signal. The preparser unit 102 refers to the information SignalB from the header information analysis unit 101 and outputs the input signal from the header information analysis unit 101 to the variable length decoding units 103a and 103b for each predetermined unit. Each of the variable length decoding units 103a and 103b detects a code that matches the input signal output from the preparser unit 102 from a plurality of variable length coding tables, and decodes the symbols that match the variable length coding table respectively. D103A and D103B are output (variable length decoding is performed). The arithmetic operation unit 104 refers to the information SignalA and SignalC from the header information analysis unit 101 and time-divisions the decoded data D103A output from the variable length decoding unit 103a and the decoded data D103B output from the variable length decoding unit 103b. The difference data is generated by arithmetic processing. The frame memory 105 stores the difference data generated by the arithmetic operation unit 104.

〈入力信号〉
ここで、図3および図4を用いて、入力信号について説明する。入力信号は、MPEG2圧縮されたビットストリームであり、図3のように、シーケンス,GOP,ピクチャ,スライス,マクロブロック,およびブロックからなる階層構造になっている。ここでは、本実施形態の説明に必要なブロックおよびマクロブロックについての説明のみ行う。
<input signal>
Here, the input signal will be described with reference to FIGS. 3 and 4. The input signal is an MPEG2 compressed bit stream and has a hierarchical structure including a sequence, a GOP, a picture, a slice, a macro block, and a block as shown in FIG. Here, only the blocks and macroblocks necessary for the description of the present embodiment will be described.

《マクロブロック》
マクロブロックは、動き予測の処理単位であり、16×16画素のデータサイズを有する。マクロブロックは、このマクロブロックの輝度データを示す4つのブロック(輝度ブロックY0,Y1,Y2,Y3)と、このマクロブロックの色差データを示す2つのブロック(色差ブロックCb,Cr)と、マクロブロックヘッダとを含む。輝度ブロックY0,Y1,Y2,Y3および色差ブロックCb,Crは、ストリームにおいて、Y0,Y1,Y2,Y3,Cb,Crの順で記録されている。マクロブロックヘッダには、CBP (Coded Block Pattern),量子化ステップ値,および動きベクトルなど、マクロブロック毎に規定される情報が記録されている。CBPは、マクロブロックに含まれるブロックのうち特定のブロックに有効なデータが存在しないことを示す情報である。動きベクトルは、動き予測を行った際に取得されるマクロブロックの動き情報であり、動き補償に使用される情報である。
《Macro block》
A macroblock is a processing unit for motion prediction and has a data size of 16 × 16 pixels. The macro block includes four blocks (luminance blocks Y0, Y1, Y2, Y3) indicating luminance data of the macro block, two blocks (color difference blocks Cb, Cr) indicating color difference data of the macro block, and a macro block. Header. The luminance blocks Y0, Y1, Y2, Y3 and the color difference blocks Cb, Cr are recorded in the stream in the order of Y0, Y1, Y2, Y3, Cb, Cr. Information defined for each macroblock, such as a CBP (Coded Block Pattern), a quantization step value, and a motion vector, is recorded in the macroblock header. CBP is information indicating that there is no valid data in a specific block among blocks included in the macroblock. The motion vector is macroblock motion information acquired when motion prediction is performed, and is information used for motion compensation.

《ブロック》
最下位層のブロックには、図4のように、マクロブロック(16×16画素の区画)中の8×8画素の区画の輝度成分を示す輝度ブロックY0,Y1,Y2,Y3と、マクロブロック(16×16画素の区画)の色差成分を示す色差ブロックCb,Crとがある。これらのブロックは、DCT処理された後にランレングス符号化されたものである。また、各々のブロックの終わりは、EOB (end of block)コードが付加されている。
"block"
As shown in FIG. 4, the lowest layer block includes luminance blocks Y0, Y1, Y2, and Y3 indicating luminance components of 8 × 8 pixel sections in the macroblock (16 × 16 pixel section), and macroblocks. There are color difference blocks Cb and Cr indicating color difference components of (16 × 16 pixel section). These blocks are run-length encoded after being subjected to DCT processing. Also, an EOB (end of block) code is added to the end of each block.

〈プレパーサー部の内部構成〉
図1に示したプレサーバー部の内部構成を図5に示す。プレパーサー部102は、EOBサーチ部1020と、ブロック情報出力部1023と、ブロック制御部1022と、スイッチ1021とを含む。EOBサーチ部1020とブロック制御部1022とは、EOB信号によって通信しながら動作する。さらに、ブロック情報出力部1023とブロック制御部1022とは、GET_DATA信号によって通信しながら動作する。EOBサーチ部1020は、ヘッダ情報解析部101より出力されたマクロブロックヘッダ以降のランレングス符号化されたブロックデータを入力し、ブロックの終了を示すEOBコードを検出するとEOB信号をブロック制御部1022へ出力する。ブロック制御部1022は、EOBサーチ部によってEOB信号が入力されると、GET_DATA信号をブロック情報出力部1023に出力する。ブロック情報出力部1023は、ヘッダ解析部101で処理されるマクロブロックヘッダに含まれるCBPに基づき、可変長復号部103a,103bのうちいずれか一方を示すブロック選択情報を生成する。また、ブロック情報出力部1023は、ブロック制御部1022によってGET_DATA信号が入力されるとブロック選択情報を出力する。また、ブロック制御部1022は、ブロック情報出力部1023より出力されたブロック選択情報に基づき、EOBサーチ部から出力されるブロックデータを可変長復号部103aおよび可変長復号部103bのうちいずれに入力するために、スイッチ1021を切り替える。
<Internal configuration of pre-parser>
FIG. 5 shows an internal configuration of the preserver unit shown in FIG. The preparser unit 102 includes an EOB search unit 1020, a block information output unit 1023, a block control unit 1022, and a switch 1021. The EOB search unit 1020 and the block control unit 1022 operate while communicating using an EOB signal. Further, the block information output unit 1023 and the block control unit 1022 operate while communicating by a GET_DATA signal. The EOB search unit 1020 receives the run-length encoded block data after the macroblock header output from the header information analysis unit 101, and detects an EOB code indicating the end of the block, and sends an EOB signal to the block control unit 1022. Output. When the EOB signal is input from the EOB search unit, the block control unit 1022 outputs a GET_DATA signal to the block information output unit 1023. The block information output unit 1023 generates block selection information indicating one of the variable length decoding units 103a and 103b based on the CBP included in the macroblock header processed by the header analysis unit 101. The block information output unit 1023 outputs block selection information when a GET_DATA signal is input by the block control unit 1022. Further, the block control unit 1022 inputs the block data output from the EOB search unit to either the variable length decoding unit 103a or the variable length decoding unit 103b based on the block selection information output from the block information output unit 1023. Therefore, the switch 1021 is switched.

〈算術演算部の内部構成〉
図1に示した算術演算部104の内部構成を図2に示す。算術演算部104は、ブロックバッファ10A,11A,10B,11Bと、周波数変換部1040と、マクロブロックバッファ12MA,12MBと、動き補償部1041とを含む。ブロックバッファ10A,11Aの各々は、ブロック1つ分のデータサイズを有し、可変長復号部103aから出力された復号データD103Aを格納する。ブロックバッファ10B,11Bの各々は、ブロック1つ分のデータサイズを有し、可変長復号部103bから出力された復号データD103Bを格納する。周波数変換部1040は、ブロックバッファ10A,11A,10B,11Bの各々に格納された復号データD103AおよびD103Bに対してヘッダ情報解析部101によって取得された情報SignalCを用いて逆離散コサイン変換を行うことによって差分データを生成する。マクロブロックバッファ12MA,12MBの各々は、マクロブロック2つ分のデータサイズを有し、周波数変換部1040によって生成された差分データを格納する。動き補償部1041は、マクロブロックバッファ12MA,12MBの各々に格納された差分データに対してフレームメモリからの予測データを用いて動き予測を行い再生データを生成する。
<Internal configuration of arithmetic unit>
FIG. 2 shows an internal configuration of the arithmetic operation unit 104 shown in FIG. The arithmetic operation unit 104 includes block buffers 10A, 11A, 10B, and 11B, a frequency conversion unit 1040, macroblock buffers 12MA and 12MB, and a motion compensation unit 1041. Each of the block buffers 10A and 11A has a data size of one block, and stores the decoded data D103A output from the variable length decoding unit 103a. Each of the block buffers 10B and 11B has a data size for one block, and stores the decoded data D103B output from the variable length decoding unit 103b. The frequency conversion unit 1040 performs inverse discrete cosine transform on the decoded data D103A and D103B stored in each of the block buffers 10A, 11A, 10B, and 11B using the information SignalC acquired by the header information analysis unit 101. To generate differential data. Each of the macroblock buffers 12MA and 12MB has a data size corresponding to two macroblocks, and stores differential data generated by the frequency conversion unit 1040. The motion compensation unit 1041 performs motion prediction on the difference data stored in each of the macroblock buffers 12MA and 12MB, using prediction data from the frame memory, and generates reproduction data.

また、本実施形態において、周波数変換部1040および動き補償部1041は、可変長復号部103a,bの処理速度の倍の処理性能を持つものとする。   In the present embodiment, the frequency conversion unit 1040 and the motion compensation unit 1041 are assumed to have a processing performance that is twice the processing speed of the variable length decoding units 103a and 103b.

〈動作〉
次に、図1に示した信号処理装置による動作について図6を参照しつつ説明する。
<Operation>
Next, the operation of the signal processing apparatus shown in FIG. 1 will be described with reference to FIG.

〔ステップST101〕
ヘッダ情報解析部101は、MPEG2圧縮されたビットストリーム(マクロブロックヘッダおよびブロックデータを含む信号)を先頭から順に入力する。
[Step ST101]
The header information analysis unit 101 inputs an MPEG2 compressed bit stream (a signal including a macroblock header and block data) in order from the top.

〔ステップST102〕
次に、ヘッダ情報解析部101は、入力したデータがマクロブロックヘッダであるか否かを判断する。マクロブロックヘッダである場合にはステップST103へ進む。そうでない場合にはステップST104へ進む。
[Step ST102]
Next, the header information analysis unit 101 determines whether or not the input data is a macroblock header. If it is a macroblock header, the process proceeds to step ST103. Otherwise, the process proceeds to step ST104.

〔ステップST103〕
次に、ヘッダ情報解析部101は、入力したマクロブロックヘッダを解析し、マクロブロックヘッダに格納された動き補償に使用する情報SignalA,ブロックに関する情報SignalB,および逆離散コサイン変換に関する情報SignalCを取得する。例えば、情報SignalAは動きベクトルおよび符号化モードなどであり、情報SignalBはCBPなどであり、情報SignalCは量子化ステップ値である。また、ヘッダ情報解析部101は、情報SignalA,SignalCを算術演算部104に出力するとともに情報SignalBをプレパーサー部102に出力する。次に、ステップST101へ進む。
[Step ST103]
Next, the header information analysis unit 101 analyzes the input macroblock header, and acquires information SignalA used for motion compensation stored in the macroblock header, information SignalB regarding the block, and information SignalC regarding the inverse discrete cosine transform. . For example, the information SignalA is a motion vector and a coding mode, the information SignalB is a CBP, and the information SignalC is a quantization step value. The header information analysis unit 101 outputs information SignalA and SignalC to the arithmetic operation unit 104 and outputs information SignalB to the preparser unit 102. Next, the process proceeds to step ST101.

〔ステップST104〕
一方、ステップST102において入力したデータがマクロブロックヘッダでないと判断した場合(ブロックデータであると判断した場合)、ヘッダ情報解析部101は、入力信号(ブロックデータ)をプレパーサー部102に出力する。
[Step ST104]
On the other hand, when it is determined in step ST102 that the input data is not a macroblock header (when it is determined that the data is block data), the header information analysis unit 101 outputs an input signal (block data) to the preparser unit 102.

〔ステップST105〕
次に、プレパーサー部102は、ヘッダ情報解析部101から出力された情報SignalBを参照して可変長復号部103a,103bのうちいずれか一方を選択し、ヘッダ情報解析部101から出力されたブロックデータを選択した可変長復号部に出力する。
[Step ST105]
Next, the preparser unit 102 refers to the information SignalB output from the header information analysis unit 101, selects one of the variable length decoding units 103a and 103b, and outputs the block data output from the header information analysis unit 101 Is output to the selected variable-length decoding unit.

〔ステップST106〕
次に、可変長復号部103aは、プレパーサー部102から出力されたブロックデータを可変長復号化することによって復号データD103Aを生成する。一方、可変長復号部103bは、プレパーサー部102から出力されたブロックデータを可変長復号化することによって復号データD103Bを生成する。
[Step ST106]
Next, the variable length decoding unit 103a generates decoded data D103A by performing variable length decoding on the block data output from the preparser unit 102. On the other hand, the variable length decoding unit 103b generates decoded data D103B by variable length decoding the block data output from the preparser unit 102.

〔ステップST107〕
次に、可変長復号部103aは、生成した復号データD103Aを算術演算部104のブロックバッファ10A,11Aのうちいずれか一方に格納する。このとき、可変長復号部103aは、ブロックバッファ10A,11A……の順に格納していく。一方、可変長復号部103bは、生成した復号データD103Bを算術演算部104のブロックバッファ10B,11Bのうちいずれか一方に格納する。このとき、可変長復号部103bは、ブロックバッファ10B,11B……の順に格納していく。
[Step ST107]
Next, the variable length decoding unit 103a stores the generated decoded data D103A in one of the block buffers 10A and 11A of the arithmetic operation unit 104. At this time, the variable length decoding unit 103a stores the data in the order of the block buffers 10A, 11A. On the other hand, the variable length decoding unit 103b stores the generated decoded data D103B in one of the block buffers 10B and 11B of the arithmetic operation unit 104. At this time, the variable length decoding unit 103b stores the data in the order of the block buffers 10B, 11B.

〔ステップST108〕
次に、算術演算部104の周波数変換部1040は、ブロックバッファ10A,11A,B,11Bのうちいずれか1つを選択し、選択したブロックバッファに格納されている復号データ(復号データD103AまたはB)に対して逆離散コサイン変換を行うことによって差分データを生成する。このとき、周波数変換部1040は、ブロックバッファ10A、10B、11A、11B、10A、10B……の順でデータを処理していく。
[Step ST108]
Next, the frequency conversion unit 1040 of the arithmetic operation unit 104 selects any one of the block buffers 10A, 11A, B, and 11B and decodes data (decoded data D103A or B103) stored in the selected block buffer. The difference data is generated by performing the inverse discrete cosine transform on. At this time, the frequency conversion unit 1040 processes the data in the order of the block buffers 10A, 10B, 11A, 11B, 10A, 10B.

〔ステップST109〕
次に、周波数変換部1040は、生成した差分データをマクロブロックバッファ12MA,12MBのうちいずれか一方に格納する。このとき、周波数変換部1040は、マクロブロックバッファ12MA,12MB,12MA,12MB……の順で格納していく。
[Step ST109]
Next, the frequency conversion unit 1040 stores the generated difference data in one of the macroblock buffers 12MA and 12MB. At this time, the frequency conversion unit 1040 stores the macroblock buffers 12MA, 12MB, 12MA, 12MB.

〔ステップST110〕
次に、動き補償部1041は、マクロブロックバッファ12MA,12MBのうち少なくとも一方にマクロブロック1つ分の差分データが格納されているか否かを判断する。マクロブロック1つ分の差分データが格納されていると判断するとステップST111に進む。
[Step ST110]
Next, the motion compensation unit 1041 determines whether or not difference data for one macroblock is stored in at least one of the macroblock buffers 12MA and 12MB. If it is determined that the difference data for one macroblock is stored, the process proceeds to step ST111.

〔ステップST111〕
次に、動き補償部1041は、マクロブロックバッファ12MA,12MBのうちいずれか一方を選択し、選択したバッファに格納されている差分データに対してフレームメモリ105に格納されている画像データの中から取得した予測データを用いて動き補償を行う。このとき、動き補償部1041は、マクロブロックバッファ12MA,12MB,12MA,12MB……の順で処理していく。次に、動き補償部1041は、動き補償によって生成された再生データをフレームメモリ105に格納する。
[Step ST111]
Next, the motion compensation unit 1041 selects one of the macroblock buffers 12MA and 12MB, and selects the difference data stored in the selected buffer from the image data stored in the frame memory 105. Motion compensation is performed using the acquired prediction data. At this time, the motion compensation unit 1041 performs processing in the order of the macroblock buffers 12MA, 12MB, 12MA, 12MB. Next, the motion compensation unit 1041 stores the reproduction data generated by the motion compensation in the frame memory 105.

〔ステップST112〕
次に、処理すべきデータが残っている場合にはステップST101へ進む。そうでな場合には処理を終了する。
[Step ST112]
Next, when data to be processed remains, the process proceeds to step ST101. If not, the process ends.

<プレパーサー部の動作>
次に、プレパーサー部102による動作(ステップST104)について図7を用いて詳しく説明する。
<Operation of the pre-parser unit>
Next, the operation (step ST104) by the preparser unit 102 will be described in detail with reference to FIG.

〔ステップST201〕
まず、EOBサーチ部1020は、ヘッダ情報解析部101から出力された入力信号よりEOBコードを検出するまで、ヘッダ情報解析部101から出力される入力信号を順次格納していく。
[Step ST201]
First, the EOB search unit 1020 sequentially stores the input signals output from the header information analysis unit 101 until an EOB code is detected from the input signals output from the header information analysis unit 101.

〔ステップST202〕
一方、ブロック情報出力部1023は、ヘッダ情報解析部101から出力された情報SignalB(CBP)を参照して、可変長復号部103a,103bのうちいずれか一方を示すブロック選択情報を生成する。
[Step ST202]
On the other hand, the block information output unit 1023 refers to the information SignalB (CBP) output from the header information analysis unit 101, and generates block selection information indicating one of the variable length decoding units 103a and 103b.

〔ステップST203〕
次に、ブロック制御部1022は、EOBサーチ部によってEOBコードが検出されると、ブロック情報出力部1023からブロック選択情報を取得する。
[Step ST203]
Next, when an EOB code is detected by the EOB search unit, the block control unit 1022 acquires block selection information from the block information output unit 1023.

〔ステップST204〕
次に、ブロック制御部1022は、ブロック情報出力部1023から取得したブロック選択情報に従って、スイッチ1021に対して可変長復号部103a,103bのうちどちらを選択するのかを指示する。
[Step ST204]
Next, the block control unit 1022 instructs the switch 1021 which of the variable length decoding units 103a and 103b is selected according to the block selection information acquired from the block information output unit 1023.

〔ステップST205〕
次に、スイッチ1021は、ブロック制御部1022からの指示に従って、可変長復号部103a,103bのうちいずれか一方を選択し、EOBサーチ部1020に格納されているブロックデータを選択した可変長復号部へ出力する。
[Step ST205]
Next, the switch 1021 selects one of the variable length decoding units 103a and 103b in accordance with an instruction from the block control unit 1022, and selects the block data stored in the EOB search unit 1020. Output to.

《EOBサーチ部1020による動作》
次に、EOBサーチ部1020による動作(ステップST201)について図8を参照しつつ詳しく説明する。
<< Operation by EOB Search Unit 1020 >>
Next, the operation (step ST201) by the EOB search unit 1020 will be described in detail with reference to FIG.

〔ステップST301〕
まず、EOBサーチ部1020は、自己からブロック制御部へEOB信号を出力しているか否かを判断する。EOB信号の出力値が「0」になるとステップST302へ進む。
[Step ST301]
First, the EOB search unit 1020 determines whether an EOB signal is output from itself to the block control unit. When the output value of the EOB signal becomes “0”, the process proceeds to step ST302.

〔ステップST302〕
次に、EOBサーチ部1020は、ヘッダ情報解析部より出力された入力信号(ブロックデータ)を格納する。
[Step ST302]
Next, the EOB search unit 1020 stores the input signal (block data) output from the header information analysis unit.

〔ステップST303〕
次に、EOBサーチ部1020は、そのブロックデータに含まれるEOBコードを検出すると、ブロック制御部1022へのEOB信号の出力値を「1」にする。次に、ステップST301へ進む。
[Step ST303]
Next, when the EOB search unit 1020 detects an EOB code included in the block data, the EOB search unit 1020 sets the output value of the EOB signal to the block control unit 1022 to “1”. Next, the process proceeds to step ST301.

《ブロック情報出力部による動作》
次に、ブロック情報出力部1023による動作(ステップST202)について図9を参照しつつ詳しく説明する。
<Operation by block information output unit>
Next, the operation (step ST202) by the block information output unit 1023 will be described in detail with reference to FIG.

〔ステップST401〕
ブロック情報出力部1023は、ヘッダ情報解析部101より出力された情報SignalB(CBP)を入力する。
[Step ST401]
The block information output unit 1023 receives the information SignalB (CBP) output from the header information analysis unit 101.

〔ステップST402〕
次に、ブロック情報出力部1023は、入力した情報SignalB(CBP)を参照して、マクロブロックに含まれるブロックデータのうち有効なデータを含むブロックデータの総数Kを算出する。
[Step ST402]
Next, the block information output unit 1023 calculates the total number K of block data including valid data among the block data included in the macroblock with reference to the input information SignalB (CBP).

〔ステップST403〕
次に、ブロック情報出力部1023は、ブロック選択情報を生成するために、ブロックIDを「0」に設定する。ブロックIDは、1つのマクロブロックにおいて、先頭から何番目のブロックであるかを示す番号である。例えば、ブロックIDが「2」であるならば、そのブロックIDは先頭から2番目のブロックを示す。
[Step ST403]
Next, the block information output unit 1023 sets the block ID to “0” in order to generate block selection information. The block ID is a number indicating the number of the block from the top in one macroblock. For example, if the block ID is “2”, the block ID indicates the second block from the top.

〔ステップST404〕
次に、ブロック情報出力部1023は、入力したCBPを参照し、ブロックIDが示すブロックデータが有効なデータを含んでいるか否かを判断する。例えば、先頭から2番目のブロックには有効なデータが含まれていないとCBPに示されているとする。このとき、ブロックIDが「2」であるならば、ブロック情報出力部1023は、そのブロックIDに対応するブロックデータが有効なデータを含んでいないと判断する。ブロックIDが示すブロックデータが有効なデータを含んでいる場合にはステップST405へ進む。そうでない場合にはステップST411へ進む。
[Step ST404]
Next, the block information output unit 1023 refers to the input CBP and determines whether or not the block data indicated by the block ID includes valid data. For example, assume that the CBP indicates that the second block from the beginning does not contain valid data. At this time, if the block ID is “2”, the block information output unit 1023 determines that the block data corresponding to the block ID does not include valid data. If the block data indicated by the block ID includes valid data, the process proceeds to step ST405. Otherwise, the process proceeds to step ST411.

〔ステップST405〕
次に、ブロック情報出力部1023は、ブロックIDが偶数であるか否かを判断する。偶数である場合にはステップST406ヘ進む。奇数である場合にはステップST413へ進む。
[Step ST405]
Next, the block information output unit 1023 determines whether or not the block ID is an even number. If it is an even number, the process proceeds to step ST406. If it is an odd number, the process proceeds to step ST413.

〔ステップST406〕
次に、ブロック情報出力部1023は、可変長復号部103aを示すブロック選択情報(SW1)を生成する。
[Step ST406]
Next, the block information output unit 1023 generates block selection information (SW1) indicating the variable length decoding unit 103a.

〔ステップST407〕
次に、ブロック情報出力部1023は、ブロック制御部1022から出力されるGET_DATA信号の出力値が「1」であるか否かを判断する。GET_DATA信号の出力値が「1」になるとステップST408へ進む。
[Step ST407]
Next, the block information output unit 1023 determines whether or not the output value of the GET_DATA signal output from the block control unit 1022 is “1”. When the output value of the GET_DATA signal becomes “1”, the process proceeds to step ST408.

〔ステップST408〕
次に、ブロック情報出力部1023は、生成したブロック選択情報をブロック制御部1022に書き込む。
[Step ST408]
Next, the block information output unit 1023 writes the generated block selection information in the block control unit 1022.

〔ステップST409〕
次に、ブロック情報出力部1023は、ブロック制御部1022へのブロック選択情報の書き込みが完了したか否かを判断する。ブロック選択情報の書き込みが終了するとステップST410へ進む。そうでない場合にはステップST408へ進む。
[Step ST409]
Next, the block information output unit 1023 determines whether or not the writing of the block selection information to the block control unit 1022 has been completed. When the writing of the block selection information is completed, the process proceeds to step ST410. Otherwise, the process proceeds to step ST408.

〔ステップST410〕
次に、ブロック情報出力部1023は、ブロック制御部1022から出力されているGET_DATA信号の出力値を「0」にする。
[Step ST410]
Next, the block information output unit 1023 sets the output value of the GET_DATA signal output from the block control unit 1022 to “0”.

〔ステップST411〕
次に、ブロック情報出力部1023は、ブロックIDに1を加算する。また、ブロック情報出力部1023は、有効ブロックの総数Kより1を減算する。
[Step ST411]
Next, the block information output unit 1023 adds 1 to the block ID. The block information output unit 1023 subtracts 1 from the total number K of effective blocks.

〔ステップST412〕
次に、ブロック情報出力部1023は、有効ブロックの総数Kが「0」であるか否かを判断する。有効ブロックの総数Kが「0」であると判断するとステップ401へ進む。そうでない場合にはステップST404へ進む。
[Step ST412]
Next, the block information output unit 1023 determines whether or not the total number K of valid blocks is “0”. If it is determined that the total number K of valid blocks is “0”, the process proceeds to step 401. Otherwise, the process proceeds to step ST404.

〔ステップST413〕
一方、ステップST405においてブロックIDが奇数であると判断した場合、ブロック情報出力部1023は、可変長復号部103bを示すブロック選択情報(SW2)を生成する。次に、ステップST407へ進む。
[Step ST413]
On the other hand, when it is determined in step ST405 that the block ID is an odd number, the block information output unit 1023 generates block selection information (SW2) indicating the variable length decoding unit 103b. Next, the process proceeds to step ST407.

《ブロック制御部による動作》
次に、ブロック制御部1022による動作(ステップST203,ST204)について図10を参照しつつ詳しく説明する。
<Operation by block control unit>
Next, the operation (steps ST203 and ST204) by the block control unit 1022 will be described in detail with reference to FIG.

〔ステップ501〕
まず、ブロック制御部1022は、EOBサーチ部1020より出力されるEOB信号の出力値が「1」であるか否かを判断する。EOB信号の出力値が「1」になると、ステップST502へ進む。
[Step 501]
First, the block control unit 1022 determines whether or not the output value of the EOB signal output from the EOB search unit 1020 is “1”. When the output value of the EOB signal becomes “1”, the process proceeds to step ST502.

〔ステップST502〕
次に、ブロック制御部1022は、ブロック情報出力部1023に出力するGET_DATA信号の出力値を「1」にする。GET_DATA信号の出力値が「1」になると、ブロック情報出力部1023によって生成されたブロック選択情報がブロック制御部1022に書き込まれる。
[Step ST502]
Next, the block control unit 1022 sets the output value of the GET_DATA signal output to the block information output unit 1023 to “1”. When the output value of the GET_DATA signal becomes “1”, the block selection information generated by the block information output unit 1023 is written into the block control unit 1022.

〔ステップST503〕
次に、ブロック制御部1022は、自己がブロック情報出力部1023に出力するGET_DATA信号の出力値が「0」であるか否かを判断する。GET_DATA信号の出力値が「0」になると、ステップST504へ進む。
[Step ST503]
Next, the block control unit 1022 determines whether or not the output value of the GET_DATA signal that it outputs to the block information output unit 1023 is “0”. When the output value of the GET_DATA signal becomes “0”, the process proceeds to step ST504.

〔ステップST504〕
次に、ブロック制御部1022は、ブロック情報出力部1023によって書き込まれたブロック選択情報を読み出す。
[Step ST504]
Next, the block control unit 1022 reads the block selection information written by the block information output unit 1023.

〔ステップST505〕
次に、ブロック制御部1022は、読み出したブロック選択情報が「SW1」を示すか否かを判断する。読み出したブロック選択情報が「SW1」を示す場合にはステップST506へ進む。読み出したブロック選択情報が「SW2」を示す場合にはステップST508へ進む。
[Step ST505]
Next, the block control unit 1022 determines whether or not the read block selection information indicates “SW1”. When the read block selection information indicates “SW1”, the process proceeds to step ST506. When the read block selection information indicates “SW2”, the process proceeds to step ST508.

〔ステップST506〕
次に、ブロック制御部1022は、スイッチ1021に対して可変長復号部103aを選択するように指示する。
[Step ST506]
Next, the block control unit 1022 instructs the switch 1021 to select the variable length decoding unit 103a.

〔ステップST507〕
次に、ブロック制御部1022は、EOBサーチ部1020から出力されているEOB信号の出力値を「0」にする。次に、ステップST501へ進む。
[Step ST507]
Next, the block control unit 1022 sets the output value of the EOB signal output from the EOB search unit 1020 to “0”. Next, the process proceeds to step ST501.

〔ステップST508〕
一方、ステップST504において読み出したブロック選択情報が「奇数」を示す場合、ブロック制御部1022は、スイッチ1021に対して可変長復号部103bを選択するように指示する。次に、ステップST507へ進む。
[Step ST508]
On the other hand, when the block selection information read in step ST504 indicates “odd number”, the block control section 1022 instructs the switch 1021 to select the variable length decoding section 103b. Next, the process proceeds to step ST507.

〈データフロー〉
図11に、算術演算部104におけるデータフローを示す。
<data flow>
FIG. 11 shows a data flow in the arithmetic operation unit 104.

まず、マクロブロックデータ1つに含まれるブロックデータのうちブロックIDが偶数であるブロックデータY0,Y2,Cbが先頭から順番に可変長復号部103aから出力される。一方、マクロブロックデータ1つに含まれるブロックデータのうちブロックIDが奇数であるブロックデータY1,Y3,Crが先頭から順番に可変長復号部103bから出力される。   First, block data Y0, Y2, and Cb having an even block ID among block data included in one macroblock data are output from the variable length decoding unit 103a in order from the top. On the other hand, among the block data included in one macroblock data, block data Y1, Y3, and Cr having an odd block ID are output from the variable length decoding unit 103b in order from the top.

ここで、可変長復号部103aからブロックバッファ10Aへのブロックデータの出力が完了すると、周波数演算部1040は、ブロックバッファ10Aに格納されたブロックデータY0に対して逆離散コサイン変換を行うことによって差分データY0を生成し、生成した差分データY0をマクロブロックバッファ12MAに出力する。これと並行して、ブロックバッファ10Bは、可変長復号部103bからのブロックデータY1を格納する。   Here, when the output of the block data from the variable length decoding unit 103a to the block buffer 10A is completed, the frequency calculation unit 1040 performs a difference by performing inverse discrete cosine transform on the block data Y0 stored in the block buffer 10A. Data Y0 is generated, and the generated difference data Y0 is output to the macroblock buffer 12MA. In parallel with this, the block buffer 10B stores the block data Y1 from the variable length decoding unit 103b.

次に、ブロックデータY0に対する逆離散コサイン変換が完了すると、周波数変換部1040は、ブロックバッファ10Bに格納されたブロックデータY1に対して逆離散コサイン変換を行う。   Next, when the inverse discrete cosine transform for the block data Y0 is completed, the frequency transform unit 1040 performs inverse discrete cosine transform on the block data Y1 stored in the block buffer 10B.

このようにして、周波数変換部1040は、ブロックデータY0,Y1,Y2,Y3,Cb、Crの順番に逆離散コサイン変換を行う。   In this way, the frequency conversion unit 1040 performs inverse discrete cosine transform in the order of the block data Y0, Y1, Y2, Y3, Cb, and Cr.

マクロブロックバッファ12MAにマクロブロック1つ分の輝度データ(差分データY0,Y1,Y2,Y3)が格納されると、動き補償部1041は、マクロブロックバッファ12MAに格納されたマクロブロック1つ分の輝度データに対して動き補償を行う。また、マクロブロックバッファ12MAにマクロブロック1つ分の色差データ(差分データCb,Cr)が格納されると、動き補償部1041は、マクロブロックバッファ12MAに格納されたマクロブロック1つ分の色差データに対して動き補償を行う。   When the luminance data (difference data Y0, Y1, Y2, Y3) for one macroblock is stored in the macroblock buffer 12MA, the motion compensation unit 1041 stores one macroblock stored in the macroblock buffer 12MA. Motion compensation is performed on the luminance data. When the color difference data (difference data Cb, Cr) for one macroblock is stored in the macroblock buffer 12MA, the motion compensation unit 1041 stores the color difference data for one macroblock stored in the macroblock buffer 12MA. Motion compensation for

このようにして、動き補償部1041は、マクロブロックデータ1つ分の輝度データおよび色差データに対して動き補償を行う。   In this way, the motion compensation unit 1041 performs motion compensation on the luminance data and color difference data for one macroblock data.

図2に示すように、周波数変換部1040は、可変長復号部103a,103bとの間に、ブロックバッファ10A,11A,10B,11Bを持っているため、周波数変換部1040の処理の遅延により、可変長復号部103a,103bを遅延させることはない。   As shown in FIG. 2, since the frequency conversion unit 1040 has block buffers 10A, 11A, 10B, and 11B between the variable length decoding units 103a and 103b, due to the processing delay of the frequency conversion unit 1040, The variable length decoding units 103a and 103b are not delayed.

また、周波数変換部1040は、動き補償部1041との間に、マクロブロックバッファ12MA,12MBを持っているため、動き補償部1041の処理の遅延により、影響を受けることはない。   In addition, since the frequency conversion unit 1040 includes the macroblock buffers 12MA and 12MB between the motion compensation unit 1041 and the frequency conversion unit 1040, the frequency conversion unit 1040 is not affected by the processing delay of the motion compensation unit 1041.

〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部および動き補償部を1つずつ用いそれらの動作周波数を高くすることによって、複数の可変長復号部の各々によって生成された復号データに対する算術演算を高速に行うことができる。ここで、周波数演算部は、単純に入力されたデータに対して演算を行うだけなので、比較的動作周波数を上げやすい。また、動き補償部が複数存在してもフレームメモリにアクセスできるのは1つだけなので、動き補償部が1つしか存在しなくとも動き補償部が複数存在する場合と同様の性能を得ることができる。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに算術演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。
<effect>
As described above, the signal processing apparatus according to the present embodiment processes the decoded signal in block units in parallel by the plurality of variable length decoding units, so that the encoded signal can be decoded at high speed. In addition, by using one frequency calculation unit and one motion compensation unit and increasing their operating frequencies, it is possible to perform arithmetic operations on the decoded data generated by each of the plurality of variable length decoding units at high speed. Here, since the frequency calculation unit simply calculates the input data, it is relatively easy to raise the operating frequency. In addition, even if there are a plurality of motion compensation units, only one frame memory can be accessed, so even if there is only one motion compensation unit, the same performance as when there are a plurality of motion compensation units can be obtained. it can. In this way, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the arithmetic operation unit without increasing the operating frequency of the entire apparatus. Can do.

なお、本実施の形態の周波数変換部1040は、1つの構成で示したが、2つ持つ構成にしても良い。   In addition, although the frequency converter 1040 of the present embodiment is illustrated with one configuration, it may be configured with two.

なお、本実施形態では、入力信号をMPEG2圧縮されたビデオ信号を入力した例を示したが、これに限るものではない。算術演算を行い、可変長符号化処理されたものであれば、同様の効果が得られる。   In the present embodiment, an example in which an MPEG2 compressed video signal is input as an input signal is shown, but the present invention is not limited to this. The same effect can be obtained if the arithmetic operation is performed and the variable-length encoding process is performed.

(第2の実施形態)
〈全体構成〉
この発明の第2の実施形態による信号処理装置の全体構成を図12に示す。この装置は、図1に示したヘッダ情報解析部101に代えて、プレパーサー部201と、ヘッダ情報解析部202a,202bと、算術演算部204とを備える。その他の構成は図1と同様である。プレパーサー部201は、入力信号を所定単位に分割し、複数の信号を出力する。ヘッダ解析部202a,202bの各々は、プレパーサー部201から出力された入力信号を入力し、入力信号の中から所定の位置に記録されたヘッダ情報を解析することによって情報SignalA,SignalB,SignalCを取得する。算術演算部204は、ヘッダ情報解析部202aまたは202bからの情報SignalA,SignalB,SignalCを参照して、可変長復号部103a,103bの各々からの復号データD103A(または復号データD103B)を算術処理することによって再生データD204A,D204Bを生成する。フレームメモリ105は、算術演算部204からの再生データD204A,D204Bを格納する。
(Second Embodiment)
<overall structure>
FIG. 12 shows the overall configuration of a signal processing apparatus according to the second embodiment of the present invention. This apparatus includes a preparser unit 201, header information analysis units 202a and 202b, and an arithmetic operation unit 204 instead of the header information analysis unit 101 shown in FIG. Other configurations are the same as those in FIG. The preparser unit 201 divides an input signal into predetermined units and outputs a plurality of signals. Each of the header analysis units 202a and 202b receives the input signal output from the preparser unit 201, and obtains information SignalA, SignalB, and SignalC by analyzing the header information recorded at a predetermined position from the input signal. To do. The arithmetic operation unit 204 performs arithmetic processing on the decoded data D103A (or decoded data D103B) from each of the variable length decoding units 103a and 103b with reference to the information SignalA, SignalB, and SignalC from the header information analysis unit 202a or 202b. Thus, reproduction data D204A and D204B are generated. The frame memory 105 stores the reproduction data D204A and D204B from the arithmetic operation unit 204.

<算術演算部の内部構成>
図12に示した算術演算部204の内部構成を図13に示す。算術演算部204は、図2に示した周波数変換部1040,動き補償部1041,およびブロックバッファ10A,11A,10B,11Bに代えて、周波数変換部2040と動き補償部2041a,2041bとマクロブロックバッファ13MA,14MA,13MB,14MBを備える。その他の構成は図2と同様である。マクロブロックバッファ13MA,14MAの各々は、マクロブロック1つ分のデータサイズを有し、可変長復号部103aからの復号データD103Aを格納する,マクロブロックデータ13MB,14MBの各々は、マクロブロックデータ1つ分のデータサイズを有し、可変長復号部103bからの復号データD103Bを格納する。周波数変換部2040は、ヘッダ情報解析部202aからの情報SignalB,SignalCまたはヘッダ情報解析部202bからの情報SignalB,SignalCを参照して、マクロブロックバッファ13MA,14MA,13MB,14MBの各々に格納されている復号データD103Aまたは復号データD103Bに対して離散コサイン変換を行うことによって差分データを生成する。動き補償部2041aは、ヘッダ情報解析部202aからの情報SignalAを参照して、マクロブロックバッファ12MAに格納された差分データに対してフレームメモリ105からの予測データD105Aを用いて動き補償を行い再生データD204Aを生成する。動き補償部2041bは、ヘッダ情報解析部202bからの情報SignalAを参照して、バッファメモリ12MBに格納された差分データに対してフレームメモリ105からの予測データD105Bを用いて動き補償を行い再生データD204Bを生成する。
<Internal configuration of arithmetic unit>
FIG. 13 shows an internal configuration of the arithmetic operation unit 204 shown in FIG. The arithmetic operation unit 204 replaces the frequency conversion unit 1040, the motion compensation unit 1041, and the block buffers 10A, 11A, 10B, and 11B shown in FIG. 2 with a frequency conversion unit 2040, motion compensation units 2041a and 2041b, and a macroblock buffer. 13MA, 14MA, 13MB, 14MB are provided. Other configurations are the same as those in FIG. Each of the macroblock buffers 13MA and 14MA has a data size corresponding to one macroblock, and stores the decoded data D103A from the variable length decoding unit 103a. Each of the macroblock data 13MB and 14MB is macroblock data 1 The decoded data D103B from the variable length decoding unit 103b is stored. The frequency conversion unit 2040 refers to the information SignalB and SignalC from the header information analysis unit 202a or the information SignalB and SignalC from the header information analysis unit 202b, and is stored in each of the macroblock buffers 13MA, 14MA, 13MB, and 14MB. Difference data is generated by performing discrete cosine transform on the decoded data D103A or the decoded data D103B. The motion compensation unit 2041a refers to the information SignalA from the header information analysis unit 202a, performs motion compensation on the difference data stored in the macroblock buffer 12MA using the prediction data D105A from the frame memory 105, and reproduces the data. D204A is generated. The motion compensation unit 2041b refers to the information SignalA from the header information analysis unit 202b, performs motion compensation on the difference data stored in the buffer memory 12MB using the prediction data D105B from the frame memory 105, and reproduces the data D204B. Is generated.

また、本実施形態では、周波数変換部2040は、可変長復号部103a,103bの処理速度の倍の処理性能を持つものとする。   In the present embodiment, the frequency conversion unit 2040 has a processing performance that is twice the processing speed of the variable length decoding units 103a and 103b.

<プレパーサー部201の内部構成>
図12に示したプレパーサー部201の内部構成を図14に示す。プレパーサー部201は、バッファメモリ2011と、ヘッダ検出部2012と、メモリ2013と、スライス制御部2014とを含む。バッファメモリ2011は、入力信号を一時的に格納する。ヘッダ検出部2012は、バッファメモリ2011に格納されている入力信号の中からスライスヘッダを検出し、スライスヘッダを検出するとスライス番号とそのスライスが格納されているバッファメモリ2011中のアドレスとをメモリ2013に格納する。スライス制御部2014は、メモリ2013に格納されたスライス番号とそのスライスが格納されるアドレスを順次読み出し、バッファメモリ2011に格納された入力信号の中から処理対象のスライスデータをヘッダ情報解析部202a,202bのうちいずれか一方に出力する。
<Internal configuration of pre-parser unit 201>
FIG. 14 shows an internal configuration of the preparser unit 201 shown in FIG. The preparser unit 201 includes a buffer memory 2011, a header detection unit 2012, a memory 2013, and a slice control unit 2014. The buffer memory 2011 temporarily stores input signals. The header detection unit 2012 detects a slice header from the input signal stored in the buffer memory 2011, and when the slice header is detected, the slice number and the address in the buffer memory 2011 in which the slice is stored are stored in the memory 2013. To store. The slice control unit 2014 sequentially reads out the slice number stored in the memory 2013 and the address at which the slice is stored, and the slice data to be processed from the input signal stored in the buffer memory 2011 is converted into the header information analysis unit 202a, The data is output to either one of 202b.

〈動作〉
図12に示した信号処理装置にMPEG2圧縮されたビットストリーム(図3,4)が入力された場合の動作を、以下に説明する。
<Operation>
The operation when the MPEG2 compressed bit stream (FIGS. 3 and 4) is input to the signal processing apparatus shown in FIG. 12 will be described below.

まず、プレパーサー部201に入力された信号は、一時的にバッファメモリ2011に格納される。   First, the signal input to the preparser unit 201 is temporarily stored in the buffer memory 2011.

次に、ヘッダ検出部2012は、バッファメモリ2011に格納された入力信号を読み出し、入力信号の中からスライスヘッダを検出する。ヘッダ検出部2012は、スライスヘッダを検出すると、スライス番号とそのスライスが格納されているバッファメモリ2011中のアドレスをメモリ2013に記録する。   Next, the header detection unit 2012 reads the input signal stored in the buffer memory 2011 and detects a slice header from the input signal. When detecting the slice header, the header detection unit 2012 records the slice number and the address in the buffer memory 2011 in which the slice is stored in the memory 2013.

次に、スライス制御部2014は、メモリ2013に記録されているスライス番号とそのスライスが格納されるアドレスとを順次読み出し、それらに従ってバッファメモリ2011に格納されている入力信号を読み出し、読み出した入力信号をヘッダ情報解析部202a,202bのうちいずれか一方に入力する。例えば、図15で示す画像イメージを用いると、スライス制御部2014は、スライス0をヘッダ情報解析部202aへ、そして、次のスライス1をヘッダ情報解析部202bへ、そして、スライス2をヘッダ情報解析部202aへと入力するように、出力を制御する。   Next, the slice control unit 2014 sequentially reads the slice number recorded in the memory 2013 and the address where the slice is stored, reads the input signal stored in the buffer memory 2011 according to them, and reads the read input signal Is input to one of the header information analysis units 202a and 202b. For example, if the image shown in FIG. 15 is used, the slice control unit 2014 analyzes the slice 0 to the header information analysis unit 202a, the next slice 1 to the header information analysis unit 202b, and the slice 2 to the header information analysis. The output is controlled so as to be input to the unit 202a.

ここでは、スライス0がヘッダ情報解析部202aへ、スライス1がヘッダ情報解析部202bへ入力されたとして説明する。   Here, it is assumed that slice 0 is input to the header information analysis unit 202a and slice 1 is input to the header information analysis unit 202b.

ヘッダ情報解析部202aは、入力されたスライス0のマクロブロックヘッダまでのストリーム中のデータを解析することにより情報SignalA,SignalB,SignalCを取得する。一方、ヘッダ情報解析部202bは、入力されたスライス1は、マクロブロックヘッダまでのストリーム中のデータを解析することにより情報SignalA,SignalB,SignalCを取得する。   The header information analysis unit 202a acquires information SignalA, SignalB, and SignalC by analyzing data in the stream up to the input macro block header of slice 0. On the other hand, the header information analysis unit 202b obtains information SignalA, SignalB, and SignalC by analyzing the data in the stream up to the macroblock header in the input slice 1.

次に、ヘッダ情報解析部202aによって処理されたデータは、可変長復号部103aに入力されて復号化処理される。さらに、可変長復号部103aは、逆量子化処理して、復号データD103Aを出力する。一方、第2のヘッダ情報解析部202bによって処理されたデータは、可変長復号部103bに入力されて復号化処理される。さらに、可変長復号部103bは、逆量子化処理して、復号データD103Bを出力する。   Next, the data processed by the header information analysis unit 202a is input to the variable length decoding unit 103a and decoded. Further, the variable length decoding unit 103a performs inverse quantization processing and outputs decoded data D103A. On the other hand, the data processed by the second header information analysis unit 202b is input to the variable length decoding unit 103b and decoded. Further, the variable length decoding unit 103b performs inverse quantization processing and outputs decoded data D103B.

次に、可変長復号部103aは、マクロブロックバッファ13MA,14MAの各々に対してマクロブロックバッファ13MA,14MA……の順番で復号データD103Aを1マクロブロック分ずつ書き込む。一方、可変長復号部103bは、マクロブロックバッファ13MB,14MBの各々に対してマクロブロックバッファ13MB,14MB……の順番で復号データD103Bを1マクロブロック分ずつ書き込む。   Next, the variable length decoding unit 103a writes the decoded data D103A for one macro block in the order of the macro block buffers 13MA, 14MA... Into each of the macro block buffers 13MA, 14MA. On the other hand, the variable length decoding unit 103b writes the decoded data D103B for one macroblock in the order of the macroblock buffers 13MB, 14MB,... Into each of the macroblock buffers 13MB, 14MB.

次に、周波数変換部2040は、ヘッダ情報解析部202aからの情報SignalB,SignalCまたはヘッダ情報解析部202bからの情報SignalB,SignalCを参照して、マクロブロックバッファ13MA、13MB、14MA、14MB、13MA、13MB……の順で復号データD103Aまたは復号データD103Bに対して逆離散コサイン変換を行うことによって、差分データAまたは差分データBを生成する。   Next, the frequency conversion unit 2040 refers to the information SignalB and SignalC from the header information analysis unit 202a or the information SignalB and SignalC from the header information analysis unit 202b, and performs macroblock buffers 13MA, 13MB, 14MA, 14MB, 13MA, Difference data A or difference data B is generated by performing inverse discrete cosine transform on the decoded data D103A or decoded data D103B in the order of 13 MB.

次に、差分データAをマクロブロックバッファ12MAに書き込む際に、周波数変換部2040は、ヘッダ情報解析部202aからの情報SignalBを参照してブロック位置を確認し、生成した差分データAをマクロブロックバッファ12MAの所定位置に書き込む。また、差分データBをバッファ12MBに書き込む際に、周波数変換部2040は、ヘッダ情報解析部202bからの情報SignalBを参照してブロック位置を確認し、生成した差分データBをバッファ12MBの所定位置に書き込む。また、情報SignalB (CBP)より、ブロック内に有効なデータが存在しない場合、周波数変換2040は、バッファ12MA,12MBの該当するブロック位置に、1ブロック分のゼロデータを出力する。   Next, when writing the difference data A to the macroblock buffer 12MA, the frequency conversion unit 2040 refers to the information SignalB from the header information analysis unit 202a to confirm the block position, and the generated difference data A is used as the macroblock buffer. Write to a predetermined position of 12MA. Further, when writing the difference data B to the buffer 12MB, the frequency conversion unit 2040 refers to the information SignalB from the header information analysis unit 202b to confirm the block position, and sets the generated difference data B to a predetermined position in the buffer 12MB. Write. Further, when there is no valid data in the block from the information SignalB (CBP), the frequency conversion 2040 outputs zero data for one block to the corresponding block position in the buffers 12MA and 12MB.

次に、動き補償部2041aは、マクロブロックバッファ12MAにマクロブロック1つ分の差分データAが格納されると、動き補償を開始する。動き補償部2041は、ヘッダ情報解析部202aによって取得されたSignalA (動きベクトル情報と符号化モード)を参照して、フレームメモリ105に格納されている参照フレームから予測データD105Aを読み出す。そして、予測データD105Aとマクロブロックバッファ12MAに格納された差分データAとを加算して、再生データD204Aを出力する。再生データD204Aは、フレームメモリ105に格納される。一方、第2の動き補償部2041bは、マクロブロックバッファ12MBにマクロブロック1つ分の差分データBが格納されると、動き補償を開始する。動き補償部2041bは、ヘッダ情報解析部202bによって取得されたSignalA (動きベクトル情報と符号化モード)を参照して、フレームメモリ105に格納されている参照フレームから予測データD105Bを読み出す。そして、予測データD105Bとマクロブロックバッファ12MBに格納された差分データBとを加算して、再生データD204Bを出力する。再生データD204Bは、フレームメモリ105に格納される。   Next, when the difference data A for one macroblock is stored in the macroblock buffer 12MA, the motion compensation unit 2041a starts motion compensation. The motion compensation unit 2041 reads the prediction data D105A from the reference frame stored in the frame memory 105 with reference to SignalA (motion vector information and encoding mode) acquired by the header information analysis unit 202a. Then, the prediction data D105A and the difference data A stored in the macroblock buffer 12MA are added to output reproduction data D204A. The reproduction data D204A is stored in the frame memory 105. On the other hand, the second motion compensation unit 2041b starts motion compensation when the difference data B for one macroblock is stored in the macroblock buffer 12MB. The motion compensation unit 2041b reads the prediction data D105B from the reference frame stored in the frame memory 105 with reference to SignalA (motion vector information and encoding mode) acquired by the header information analysis unit 202b. Then, the prediction data D105B and the difference data B stored in the macroblock buffer 12MB are added to output reproduction data D204B. The reproduction data D204B is stored in the frame memory 105.

〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部を1つ用いそれの動作周波数を高くすることによって、複数の可変長復号部の各々によって生成された復号データに対する逆離散コサイン変換を高速に行うことができる。ここで、周波数演算部は、単純に入力されたデータに対して演算を行うだけなので、比較的動作周波数を上げやすい。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに周波数演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。
<effect>
As described above, the signal processing apparatus according to the present embodiment processes the decoded signal in block units in parallel by the plurality of variable length decoding units, so that the encoded signal can be decoded at high speed. Also, by using one frequency calculation unit and increasing its operating frequency, inverse discrete cosine transform can be performed at high speed on the decoded data generated by each of the plurality of variable length decoding units. Here, since the frequency calculation unit simply calculates the input data, it is relatively easy to raise the operating frequency. In this way, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the frequency calculation unit without increasing the operating frequency of the entire apparatus. Can do.

なお、本発明の第2の実施の形態では、入力信号をMPEG2圧縮されたビデオ信号を入力した例を示したが、これに限るものではない。算術演算を行い、可変長符号化処理されたものであれば、同様の効果が得られる。   In the second embodiment of the present invention, an example in which an MPEG2-compressed video signal is input as an input signal has been described. However, the present invention is not limited to this. The same effect can be obtained if the arithmetic operation is performed and the variable-length encoding process is performed.

なお、本実施形態では、2つの動き補償部(動き補償部2041a,2041b)を持つ構成で説明した。この場合、2つの動き補償部の各々において同時に動き補償が実行され、同時にフレームメモリ105へのアクセスが生じることがある。   In the present embodiment, a configuration having two motion compensation units (motion compensation units 2041a and 2041b) has been described. In this case, motion compensation is simultaneously performed in each of the two motion compensation units, and access to the frame memory 105 may occur at the same time.

図16に、これを回避するための算術演算部304の一構成例を示す。   FIG. 16 shows a configuration example of the arithmetic operation unit 304 for avoiding this.

図16に示すように、算術演算部304は、図13に示した周波数変換部2040および動き補償部2041a,2041bに代えて、周波数変換部3040と動き補償部3041とを含む。   As shown in FIG. 16, the arithmetic operation unit 304 includes a frequency conversion unit 3040 and a motion compensation unit 3041 instead of the frequency conversion unit 2040 and the motion compensation units 2041a and 2041b shown in FIG.

周波数変換部3040と可変長復号部103a,103bとのインターフェイス(IF)は、周波数変換部2040と同様である。動き補償部3041は、マクロブロックバッファ12MAから差分データを読み出す場合は、ヘッダ情報解析部202aからの情報SignalAを参照し、また、マクロブロックバッファ12MBから差分データを読み出す場合は、ヘッダ情報解析部202bからの情報SignalAを参照して、予測データD105Aまたは予測データD105Bをフレームメモリ105から読み出し、動き補償し、再生データD304Aまたは再生データD304Bをフレームメモリ105に書き込む。   The interface (IF) between the frequency conversion unit 3040 and the variable length decoding units 103a and 103b is the same as that of the frequency conversion unit 2040. The motion compensation unit 3041 refers to the information SignalA from the header information analysis unit 202a when reading the difference data from the macroblock buffer 12MA, and the header information analysis unit 202b when reading the difference data from the macroblock buffer 12MB. The prediction data D105A or the prediction data D105B is read from the frame memory 105, motion compensation is performed, and the reproduction data D304A or the reproduction data D304B is written in the frame memory 105.

なお、本構成では、周波数変換部3040および動き補償部3041は、可変長復号部103a,103bの処理速度の2倍の処理性能を持つものとする。   In this configuration, it is assumed that the frequency conversion unit 3040 and the motion compensation unit 3041 have a processing performance that is twice the processing speed of the variable length decoding units 103a and 103b.

以上のように、適切に情報SignalAを参照することができるので、算術演算部204と同様の処理を行うことができる。   As described above, since the information SignalA can be appropriately referred to, the same processing as the arithmetic operation unit 204 can be performed.

(第3の実施形態)
<全体構成>
この発明の第3の実施形態による信号処理装置の全体構成を図17に示す。この装置は、図12に示したプレパーサー部を省略した構成である。その他の構成は図12と同様である。ヘッダ解析部202aは、入力信号S1を入力とし、入力信号S1の中から所定の位置に記録されたヘッダ情報を解析することによって情報SignalA,SignalB,SignalCを取得する。可変長復号部103aは、複数ある可変長符号化テーブルの中から入力信号S1と一致する符号を検出し、可変長符号化テーブルに一致するシンボルを復号データD103Aとして出力する。ヘッダ解析部202bは、入力信号S2を入力とし、入力信号S2の中から所定の位置に記録されたヘッダ情報を解析すことによって情報SignalA,SignalB,SignalCを取得するる。可変長復号部103bは、複数ある可変長符号化テーブルの中から入力信号S2と一致する符号を検出し、可変長符号化テーブルに一致するシンボルを復号データD103Bとして出力する。
(Third embodiment)
<Overall configuration>
The overall configuration of a signal processing apparatus according to the third embodiment of the present invention is shown in FIG. This apparatus has a configuration in which the pre-parser unit shown in FIG. 12 is omitted. Other configurations are the same as those in FIG. The header analysis unit 202a receives the input signal S1, and acquires information SignalA, SignalB, and SignalC by analyzing header information recorded at a predetermined position from the input signal S1. The variable length decoding unit 103a detects a code that matches the input signal S1 from a plurality of variable length coding tables, and outputs a symbol that matches the variable length coding table as decoded data D103A. The header analysis unit 202b receives the input signal S2, and acquires information SignalA, SignalB, and SignalC by analyzing header information recorded at a predetermined position from the input signal S2. The variable length decoding unit 103b detects a code that matches the input signal S2 from a plurality of variable length coding tables, and outputs a symbol that matches the variable length coding table as decoded data D103B.

〈動作〉
図17に示した信号処理装置の動作について説明する。
<Operation>
The operation of the signal processing apparatus shown in FIG. 17 will be described.

入力信号S1は、ヘッダ情報解析部202aに入力される。一方、入力信号S2は、ヘッダ情報解析部202bに入力される。   The input signal S1 is input to the header information analysis unit 202a. On the other hand, the input signal S2 is input to the header information analysis unit 202b.

ヘッダ情報解析部202aでは、入力信号S1中のマクロブロックヘッダまでのストリーム中のデータを解析する。一方、ヘッダ情報解析部202bでは、入力信号S2中のマクロブロックヘッダまでのストリーム中のデータを解析する。   The header information analysis unit 202a analyzes the data in the stream up to the macroblock header in the input signal S1. On the other hand, the header information analysis unit 202b analyzes the data in the stream up to the macroblock header in the input signal S2.

次に、入力信号S1は、可変長復号部103aへ入力され、ランレングス復号化処理され、逆量子化処理され、出力される。一方、入力信号S2は、可変長復号部103bへ入力され、ランレングス復号化処理され、逆量子化処理され、出力される。   Next, the input signal S1 is input to the variable length decoding unit 103a, subjected to run length decoding processing, inverse quantization processing, and output. On the other hand, the input signal S2 is input to the variable length decoding unit 103b, subjected to run length decoding processing, inverse quantization processing, and output.

次に、可変長復号部103a,103bの各々が出力する復号データD103A,D103Bは、算術演算部204に入力される。周波数変換部2040は、復号データD103A,D103Bの各々に対して逆離散コサイン変換が行うことによって差分データA,Bを生成し、それぞれを動き補償部2041へ出力する。   Next, the decoded data D103A and D103B output from the variable length decoding units 103a and 103b are input to the arithmetic operation unit 204. The frequency transform unit 2040 generates difference data A and B by performing inverse discrete cosine transform on each of the decoded data D103A and D103B, and outputs each of them to the motion compensation unit 2041.

次に、動き補償部2041は、ヘッダ情報解析部202aまたは202bからの情報SignalB (CBP情報)を用いて、差分データA,Bに対して動き補償を行うことによって再生データD204A,D204Bを生成し、それぞれをフレームメモリへ格納する。   Next, the motion compensation unit 2041 generates reproduction data D204A and D204B by performing motion compensation on the difference data A and B using the information SignalB (CBP information) from the header information analysis unit 202a or 202b. Each is stored in the frame memory.

〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部を1つ用いそれの動作周波数を高くすることによって、複数の可変長復号部の各々によって生成された復号データに対する逆離散コサイン変換を高速に行うことができる。ここで、周波数演算部は、単純に入力されたデータに対して演算を行うだけなので、比較的動作周波数を上げやすい。このように、デコード処理系統の並列化に伴う回路規模の増加を抑えることができ、かつ、装置全体の動作周波数を上げずに周波数演算部の動作周波数のみを上げれば高速の処理性能を得ることができる。したがって、複数の入力信号をリアルタイムに再生することができる。
<effect>
As described above, the signal processing apparatus according to the present embodiment processes the decoded signal in block units in parallel by the plurality of variable length decoding units, so that the encoded signal can be decoded at high speed. Also, by using one frequency calculation unit and increasing its operating frequency, inverse discrete cosine transform can be performed at high speed on the decoded data generated by each of the plurality of variable length decoding units. Here, since the frequency calculation unit simply calculates the input data, it is relatively easy to raise the operating frequency. In this way, it is possible to suppress an increase in circuit scale due to parallelization of the decoding processing system, and to obtain high-speed processing performance by increasing only the operating frequency of the frequency calculation unit without increasing the operating frequency of the entire apparatus. Can do. Therefore, a plurality of input signals can be reproduced in real time.

なお、本実施形態では、入力信号を2つとしたが、これに限るものではない。   In the present embodiment, the number of input signals is two, but the present invention is not limited to this.

しかしながら、本実施形態では、動き補償部を2つ持つ構成にしたため、動き補償の処理において、メモリアクセスの競合が発生する。   However, in the present embodiment, since there are two motion compensation units, memory access contention occurs in the motion compensation process.

その場合、図16に示すブロック構成をとった場合、このメモリ競合は防ぐことができる。   In that case, when the block configuration shown in FIG. 16 is adopted, this memory contention can be prevented.

なお、入力信号をMPEG2圧縮されたビデオ信号を入力した例を示したが、これに限るものではない。算術演算を行い、可変長符号化処理されたものであれば、同様の効果が得られる。   In addition, although the example which input the video signal by which MPEG2 compression was input was shown, it does not restrict to this. The same effect can be obtained if the arithmetic operation is performed and the variable-length encoding process is performed.

以上のように、本発明は、算術演算を施した後、可変長符号化処理を施した入力信号を復号処理する信号処理装置等として有効である。   As described above, the present invention is effective as a signal processing apparatus or the like that performs a decoding process on an input signal that has been subjected to a variable-length coding process after an arithmetic operation.

この発明の第1の実施形態による信号処理装置の全体構成を示すブロック図である。1 is a block diagram illustrating an overall configuration of a signal processing device according to a first embodiment of the present invention. 図1に示した算術演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the arithmetic operation part shown in FIG. 入力信号の一例を示す図である。It is a figure which shows an example of an input signal. マクロブロックに含まれるブロックを示す図である。It is a figure which shows the block contained in a macroblock. 図1に示したプレパーサー部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the pre-parser part shown in FIG. 図1に示した信号処理装置による動作を示すフローチャートである。It is a flowchart which shows the operation | movement by the signal processing apparatus shown in FIG. 図1に示したプレパーサー部による動作を示すフローチャートである。It is a flowchart which shows the operation | movement by the preparser part shown in FIG. 図5に示したEOB検出部による動作を示すフローチャートである。6 is a flowchart showing an operation by the EOB detection unit shown in FIG. 5. 図5に示したブロック情報出力部による動作を示すフローチャートである。It is a flowchart which shows the operation | movement by the block information output part shown in FIG. 図5に示したブロック制御部による動作を示すフローチャートである。It is a flowchart which shows the operation | movement by the block control part shown in FIG. 図1に示した算術演算部による動作を示すタイミングチャートである。It is a timing chart which shows the operation | movement by the arithmetic operation part shown in FIG. この発明の第2の実施形態による信号処理装置の全体構成をを示すブロック図である。It is a block diagram which shows the whole structure of the signal processing apparatus by 2nd Embodiment of this invention. 図12に示した算術演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the arithmetic operation part shown in FIG. 図12に示したプレパーサー部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the pre-parser part shown in FIG. 画像イメージの一例を示す図である。It is a figure which shows an example of an image image. 図12に示した算術演算部の内部構造の変形例を示すブロック図である。It is a block diagram which shows the modification of the internal structure of the arithmetic operation part shown in FIG. この発明の第3の実施形態による信号処理装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the signal processing apparatus by 3rd Embodiment of this invention. 従来の信号処理装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the conventional signal processing apparatus. 図18に示した算術演算部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the arithmetic operation part shown in FIG.

符号の説明Explanation of symbols

101 ヘッダ情報解析部
102 プレパーサー部
103a,103b 可変長復号部
104 算術演算部
105 フレームメモリ
10A,11A,10B,11B ブロックバッファ
1040 周波数変換部
12MA,12MB マクロブロックバッファ
1041 動き補償部
1020 EOBサーチ部
1021 スイッチ
1022 ブロック制御部
1023 ブロック情報出力部
DESCRIPTION OF SYMBOLS 101 Header information analysis part 102 Preparser part 103a, 103b Variable length decoding part 104 Arithmetic operation part 105 Frame memory 10A, 11A, 10B, 11B Block buffer 1040 Frequency conversion part 12MA, 12MB Macroblock buffer 1041 Motion compensation part 1020 EOB search part 1021 Switch 1022 Block control unit 1023 Block information output unit

Claims (10)

所定の規格によって符号化された信号(符号化信号)を処理する装置であって、
前記符号化信号は、複数のブロックデータと、当該ブロックデータに関するブロック情報を格納するヘッダとを含み、
前記装置は、
ヘッダ情報取得部と、プレパーサー部と、複数の可変長復号部と、算術演算部を備え、
前記ヘッダ情報取得部は、
前記符号化信号のヘッダに格納されたブロック情報を取得し、
前記プレパーサー部は、
前記ヘッダ情報取得部によって取得されたブロック情報を参照して、前記複数のブロックデータの各々に前記複数の可変長復号部のうちいずれか1つを対応付け、
前記複数の可変長復号部の各々は、
前記プレパーサー部によって対応付けられたブロックデータに対して可変長復号化を行うことによって復号データを生成し、
前記算術演算部は、
前記複数の可変長復号部を1つずつ順番に選択し、選択した可変長復号部によって生成された復号データに対して逆算術演算を行うことによって再生データを生成する
ことを特徴とする信号処理装置
An apparatus for processing a signal (encoded signal) encoded according to a predetermined standard,
The encoded signal includes a plurality of block data and a header that stores block information related to the block data,
The device is
A header information acquisition unit, a preparser unit, a plurality of variable length decoding units, and an arithmetic operation unit;
The header information acquisition unit
Obtaining block information stored in the header of the encoded signal;
The pre-parser part is
Referring to the block information acquired by the header information acquisition unit, each of the plurality of block data is associated with any one of the plurality of variable length decoding units,
Each of the plurality of variable length decoding units includes:
Generate decoded data by performing variable length decoding on the block data associated by the preparser unit,
The arithmetic operation unit is
Signal processing characterized in that the plurality of variable length decoding units are selected one by one in order and reproduction data is generated by performing inverse arithmetic operation on the decoded data generated by the selected variable length decoding unit apparatus
請求項1において、
前記複数のブロックデータの各々は、
当該ブロックデータの終端を示す終端符号が付加されており、
前記プレパーサー部は、
前記ブロックデータの中から終端符号を検出する終端符号検出部と、
前記ヘッダ情報取得部によって取得されたブロック情報に基づき、前記複数のブロックの各々に前記複数の可変長復号部のうちいずれか1つを対応付けるブロック制御部と、
前記終端符号検出部によって終端符号が検出されると、前記ブロック制御部による前記複数のブロックと前記複数の可変長復号部との対応付けに従って、当該終端符号が検出されたブロックデータに前記複数の可変長復号部のうちいずれか1つを対応付ける選択部とを含む
ことを特徴とする信号処理装置。
In claim 1,
Each of the plurality of block data is
An end code indicating the end of the block data is added,
The pre-parser part is
A termination code detector for detecting a termination code from the block data;
A block control unit that associates any one of the plurality of variable length decoding units with each of the plurality of blocks based on the block information acquired by the header information acquisition unit;
When the termination code is detected by the termination code detection unit, the block control unit detects the plurality of blocks in the block data in which the termination code is detected according to the association between the plurality of blocks and the plurality of variable length decoding units by the block control unit. A signal processing apparatus comprising: a selection unit that associates any one of the variable length decoding units.
請求項1において、
前記算術演算部は、
前記複数の可変長復号部を1つずつ順番に選択し、選択した可変長復号部によって生成された復号データに対して逆直交変換を行うことによって空間データを生成する周波数変換部と、
前記周波数変換部によって生成された空間データに対して動き補償を行うことによって再生データを生成する動き補償部とを含む
ことを特徴とする信号処理装置。
In claim 1,
The arithmetic operation unit is
Selecting a plurality of variable length decoding units one by one in order, a frequency conversion unit for generating spatial data by performing inverse orthogonal transform on the decoded data generated by the selected variable length decoding unit;
A signal processing apparatus comprising: a motion compensation unit that generates reproduction data by performing motion compensation on the spatial data generated by the frequency conversion unit.
請求項1において、
前記算術演算部の動作速度は、前記可変長復号部の動作速度よりも速い
ことを特徴とする信号処理装置。
In claim 1,
An operation speed of the arithmetic operation unit is faster than an operation speed of the variable length decoding unit.
請求項1において、
前記所定の規格によって符号化された信号は、MPEGストリームである
ことを特徴とする信号処理装置。
In claim 1,
The signal processing apparatus characterized in that the signal encoded by the predetermined standard is an MPEG stream.
所定の規格によって符号化された信号(符号化信号)を処理する方法であって、
前記符号化信号は、複数のブロックデータと、当該ブロックデータに関するブロック情報を格納するヘッダとを含み、
前記方法は、
ヘッダ情報取得ステップと、プレパーサーステップと、複数の可変長復号ステップと、算術演算ステップを備え、
前記ヘッダ情報取得ステップは、
前記符号化信号のヘッダに格納されたブロック情報を取得し、
前記プレパーサーステップは、
前記ヘッダ情報取得ステップによって取得されたブロック情報を参照して、前記複数のブロックデータの各々に前記複数の可変長復号ステップのうちいずれか1つを対応付け、
前記複数の可変長復号ステップの各々は、
前記プレパーサーステップによって対応付けられたブロックデータに対して可変長復号化を行うことによって復号データを生成し、
前記算術演算ステップは、
前記複数の可変長復号ステップを1つずつ順番に選択し、選択した可変長復号ステップによって生成された復号データに対して逆算術演算を行うことによって再生データを生成する
ことを特徴とする信号処理方法
A method of processing a signal (encoded signal) encoded according to a predetermined standard,
The encoded signal includes a plurality of block data and a header that stores block information related to the block data,
The method
A header information acquisition step, a preparser step, a plurality of variable length decoding steps, and an arithmetic operation step;
The header information acquisition step includes:
Obtaining block information stored in the header of the encoded signal;
The pre-parser step includes
With reference to the block information acquired by the header information acquisition step, each of the plurality of block data is associated with any one of the plurality of variable length decoding steps,
Each of the plurality of variable length decoding steps includes:
Generating decoded data by performing variable length decoding on the block data associated by the preparser step;
The arithmetic operation step includes
Signal processing, wherein the plurality of variable length decoding steps are sequentially selected one by one, and reproduction data is generated by performing an inverse arithmetic operation on the decoded data generated by the selected variable length decoding step. Method
請求項6において、
前記複数のブロックデータの各々は、
当該ブロックデータの終端を示す終端符号が付加されており、
前記プレパーサーステップは、
前記ブロックデータの中から終端符号を検出する終端符号検出ステップと、
前記ヘッダ情報取得ステップによって取得されたブロック情報に基づき、前記複数のブロックの各々に前記複数の可変長復号ステップのうちいずれか1つを対応付けるブロック制御ステップと、
前記終端符号検出ステップによって終端符号が検出されると、前記ブロック制御ステップによる前記複数のブロックと前記複数の可変長復号ステップとの対応付けに従って、当該終端符号が検出されたブロックデータに前記複数の可変長復号ステップのうちいずれか1つを対応付ける選択ステップとを含む
ことを特徴とする信号処理方法。
In claim 6,
Each of the plurality of block data is
An end code indicating the end of the block data is added,
The pre-parser step includes
A terminal code detection step of detecting a terminal code from the block data;
A block control step of associating any one of the plurality of variable length decoding steps with each of the plurality of blocks based on the block information acquired by the header information acquisition step;
When the termination code is detected by the termination code detection step, the block data in which the termination code is detected is added to the block data in which the termination code is detected according to the association between the plurality of blocks and the plurality of variable length decoding steps by the block control step. And a selection step of associating any one of the variable length decoding steps.
請求項6において、
前記算術演算ステップは、
前記複数の可変長復号ステップを1つずつ順番に選択し、選択した可変長復号ステップによって生成された復号データに対して逆直交変換を行うことによって空間データを生成する周波数変換ステップと、
前記周波数変換ステップによって生成された空間データに対して動き補償を行うことによって再生データを生成する動き補償ステップとを含む
ことを特徴とする信号処理方法。
In claim 6,
The arithmetic operation step includes
A frequency conversion step of selecting the plurality of variable length decoding steps one by one in order and generating spatial data by performing inverse orthogonal transform on the decoded data generated by the selected variable length decoding step;
And a motion compensation step of generating reproduction data by performing motion compensation on the spatial data generated by the frequency conversion step.
請求項6において、
前記算術演算ステップの動作速度は、前記可変長復号ステップの動作速度よりも速い
ことを特徴とする信号処理方法。
In claim 6,
An operation speed of the arithmetic operation step is faster than an operation speed of the variable length decoding step.
請求項6において、
前記所定の規格によって符号化された信号は、MPEGストリームである
ことを特徴とする信号処理方法。
In claim 6,
The signal processing method characterized in that the signal encoded according to the predetermined standard is an MPEG stream.
JP2004070325A 2004-03-12 2004-03-12 Signal processor and signal processing method Pending JP2005260639A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004070325A JP2005260639A (en) 2004-03-12 2004-03-12 Signal processor and signal processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004070325A JP2005260639A (en) 2004-03-12 2004-03-12 Signal processor and signal processing method

Publications (1)

Publication Number Publication Date
JP2005260639A true JP2005260639A (en) 2005-09-22

Family

ID=35085933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004070325A Pending JP2005260639A (en) 2004-03-12 2004-03-12 Signal processor and signal processing method

Country Status (1)

Country Link
JP (1) JP2005260639A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008067026A (en) * 2006-09-07 2008-03-21 Fujitsu Ltd Mpeg decoder and mpeg encoder
WO2009150801A1 (en) * 2008-06-10 2009-12-17 パナソニック株式会社 Decoding device, decoding method, and reception device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008067026A (en) * 2006-09-07 2008-03-21 Fujitsu Ltd Mpeg decoder and mpeg encoder
WO2009150801A1 (en) * 2008-06-10 2009-12-17 パナソニック株式会社 Decoding device, decoding method, and reception device
US8422772B2 (en) 2008-06-10 2013-04-16 Panasonic Corporation Decoding device, decoding method, and receiving device
JP5230735B2 (en) * 2008-06-10 2013-07-10 パナソニック株式会社 Decoding device, decoding method, and receiving device

Similar Documents

Publication Publication Date Title
JP5390773B2 (en) Piecewise processing of overlap smoothing and in-loop deblocking
JP3966524B2 (en) System and method for motion compensation using a skewed tile storage format for improved efficiency
JP5042568B2 (en) MPEG decoder and MPEG encoder
TWI382764B (en) Scratch pad for storing intermediate loop filter data
JP4778953B2 (en) Video decoder with extensible compression and having a buffer for storing and retrieving reference frame data
US8774281B2 (en) Implementation of a DV video decoder with a VLIW processor and a variable length decoding unit
JP5969914B2 (en) Video compression / decompression device
US20060133512A1 (en) Video decoder and associated methods of operation
TWI295538B (en) Method of decoding digital video and digital video decoder system thereof
US8184700B2 (en) Image decoder
US6205181B1 (en) Interleaved strip data storage system for video processing
CN103109535A (en) Image reproduction method, image reproduction device, image reproduction program, imaging system, and reproduction system
US20030099293A1 (en) Image reproducing method, and image processing method, and image reproducing device, image processing device, and television receiver capable of using the methods
JPH07226917A (en) Picture reproducing system and device therefor
JP3676525B2 (en) Moving picture coding / decoding apparatus and method
TWI418219B (en) Data-mapping method and cache system for use in a motion compensation system
JP2898413B2 (en) Method for decoding and encoding compressed video data streams with reduced memory requirements
JP5580541B2 (en) Image decoding apparatus and image decoding method
US8179964B1 (en) Efficient transcoding between formats using macroblock buffer
JP2000175201A (en) Image processing unit, its method and providing medium
JP2005260639A (en) Signal processor and signal processing method
JP5053774B2 (en) Video encoding device
JP4109151B2 (en) Image processing device
JP2005101731A (en) Variable length code decoder and variable length code decoding method
US7012961B2 (en) Method and apparatus for decoding image having format for digital camcorder