JP2005260639A - Signal processor and signal processing method - Google Patents
Signal processor and signal processing method Download PDFInfo
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
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
また、図19に示すように、算術演算部904a,904bの各々は、入力信号が符号化の過程で行われた周波数変換を元に戻す逆変換(逆周波数変換)を行う周波数変換部9040と、入力信号が符号化の過程で行われた動き予測を再生する(動き補償を行う)動き補償部9041から構成される。
Further, as shown in FIG. 19, each of the
以上述べたように、従来の信号処理装置は、入力信号をスライス単位に分割してスライス単位に同時にデコード処理するため、同じ機能を持つデコード処理系統を複数持つ構成である。このように、複数のデコード処理系を持つことで、高速に入力信号を復号化処理することができる。 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フレームをデコード処理することが可能である。
しかしながら、このような方法で、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
〈入力信号〉
ここで、図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
〈算術演算部の内部構成〉
図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
また、本実施形態において、周波数変換部1040および動き補償部1041は、可変長復号部103a,bの処理速度の倍の処理性能を持つものとする。
In the present embodiment, the
〈動作〉
次に、図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
〔ステップST102〕
次に、ヘッダ情報解析部101は、入力したデータがマクロブロックヘッダであるか否かを判断する。マクロブロックヘッダである場合にはステップST103へ進む。そうでない場合にはステップST104へ進む。
[Step ST102]
Next, the header
〔ステップST103〕
次に、ヘッダ情報解析部101は、入力したマクロブロックヘッダを解析し、マクロブロックヘッダに格納された動き補償に使用する情報SignalA,ブロックに関する情報SignalB,および逆離散コサイン変換に関する情報SignalCを取得する。例えば、情報SignalAは動きベクトルおよび符号化モードなどであり、情報SignalBはCBPなどであり、情報SignalCは量子化ステップ値である。また、ヘッダ情報解析部101は、情報SignalA,SignalCを算術演算部104に出力するとともに情報SignalBをプレパーサー部102に出力する。次に、ステップST101へ進む。
[Step ST103]
Next, the header
〔ステップ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
〔ステップST105〕
次に、プレパーサー部102は、ヘッダ情報解析部101から出力された情報SignalBを参照して可変長復号部103a,103bのうちいずれか一方を選択し、ヘッダ情報解析部101から出力されたブロックデータを選択した可変長復号部に出力する。
[Step ST105]
Next, the
〔ステップ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
〔ステップ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
〔ステップST108〕
次に、算術演算部104の周波数変換部1040は、ブロックバッファ10A,11A,B,11Bのうちいずれか1つを選択し、選択したブロックバッファに格納されている復号データ(復号データD103AまたはB)に対して逆離散コサイン変換を行うことによって差分データを生成する。このとき、周波数変換部1040は、ブロックバッファ10A、10B、11A、11B、10A、10B……の順でデータを処理していく。
[Step ST108]
Next, the
〔ステップST109〕
次に、周波数変換部1040は、生成した差分データをマクロブロックバッファ12MA,12MBのうちいずれか一方に格納する。このとき、周波数変換部1040は、マクロブロックバッファ12MA,12MB,12MA,12MB……の順で格納していく。
[Step ST109]
Next, the
〔ステップ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
〔ステップ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
〔ステップST201〕
まず、EOBサーチ部1020は、ヘッダ情報解析部101から出力された入力信号よりEOBコードを検出するまで、ヘッダ情報解析部101から出力される入力信号を順次格納していく。
[Step ST201]
First, the EOB search unit 1020 sequentially stores the input signals output from the header
〔ステップST202〕
一方、ブロック情報出力部1023は、ヘッダ情報解析部101から出力された情報SignalB(CBP)を参照して、可変長復号部103a,103bのうちいずれか一方を示すブロック選択情報を生成する。
[Step ST202]
On the other hand, the block
〔ステップST203〕
次に、ブロック制御部1022は、EOBサーチ部によってEOBコードが検出されると、ブロック情報出力部1023からブロック選択情報を取得する。
[Step ST203]
Next, when an EOB code is detected by the EOB search unit, the
〔ステップST204〕
次に、ブロック制御部1022は、ブロック情報出力部1023から取得したブロック選択情報に従って、スイッチ1021に対して可変長復号部103a,103bのうちどちらを選択するのかを指示する。
[Step ST204]
Next, the
〔ステップST205〕
次に、スイッチ1021は、ブロック制御部1022からの指示に従って、可変長復号部103a,103bのうちいずれか一方を選択し、EOBサーチ部1020に格納されているブロックデータを選択した可変長復号部へ出力する。
[Step ST205]
Next, the
《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
《ブロック情報出力部による動作》
次に、ブロック情報出力部1023による動作(ステップST202)について図9を参照しつつ詳しく説明する。
<Operation by block information output unit>
Next, the operation (step ST202) by the block
〔ステップST401〕
ブロック情報出力部1023は、ヘッダ情報解析部101より出力された情報SignalB(CBP)を入力する。
[Step ST401]
The block
〔ステップST402〕
次に、ブロック情報出力部1023は、入力した情報SignalB(CBP)を参照して、マクロブロックに含まれるブロックデータのうち有効なデータを含むブロックデータの総数Kを算出する。
[Step ST402]
Next, the block
〔ステップST403〕
次に、ブロック情報出力部1023は、ブロック選択情報を生成するために、ブロックIDを「0」に設定する。ブロックIDは、1つのマクロブロックにおいて、先頭から何番目のブロックであるかを示す番号である。例えば、ブロックIDが「2」であるならば、そのブロックIDは先頭から2番目のブロックを示す。
[Step ST403]
Next, the block
〔ステップST404〕
次に、ブロック情報出力部1023は、入力したCBPを参照し、ブロックIDが示すブロックデータが有効なデータを含んでいるか否かを判断する。例えば、先頭から2番目のブロックには有効なデータが含まれていないとCBPに示されているとする。このとき、ブロックIDが「2」であるならば、ブロック情報出力部1023は、そのブロックIDに対応するブロックデータが有効なデータを含んでいないと判断する。ブロックIDが示すブロックデータが有効なデータを含んでいる場合にはステップST405へ進む。そうでない場合にはステップST411へ進む。
[Step ST404]
Next, the block
〔ステップST405〕
次に、ブロック情報出力部1023は、ブロックIDが偶数であるか否かを判断する。偶数である場合にはステップST406ヘ進む。奇数である場合にはステップST413へ進む。
[Step ST405]
Next, the block
〔ステップST406〕
次に、ブロック情報出力部1023は、可変長復号部103aを示すブロック選択情報(SW1)を生成する。
[Step ST406]
Next, the block
〔ステップST407〕
次に、ブロック情報出力部1023は、ブロック制御部1022から出力されるGET_DATA信号の出力値が「1」であるか否かを判断する。GET_DATA信号の出力値が「1」になるとステップST408へ進む。
[Step ST407]
Next, the block
〔ステップST408〕
次に、ブロック情報出力部1023は、生成したブロック選択情報をブロック制御部1022に書き込む。
[Step ST408]
Next, the block
〔ステップST409〕
次に、ブロック情報出力部1023は、ブロック制御部1022へのブロック選択情報の書き込みが完了したか否かを判断する。ブロック選択情報の書き込みが終了するとステップST410へ進む。そうでない場合にはステップST408へ進む。
[Step ST409]
Next, the block
〔ステップST410〕
次に、ブロック情報出力部1023は、ブロック制御部1022から出力されているGET_DATA信号の出力値を「0」にする。
[Step ST410]
Next, the block
〔ステップST411〕
次に、ブロック情報出力部1023は、ブロックIDに1を加算する。また、ブロック情報出力部1023は、有効ブロックの総数Kより1を減算する。
[Step ST411]
Next, the block
〔ステップST412〕
次に、ブロック情報出力部1023は、有効ブロックの総数Kが「0」であるか否かを判断する。有効ブロックの総数Kが「0」であると判断するとステップ401へ進む。そうでない場合にはステップST404へ進む。
[Step ST412]
Next, the block
〔ステップ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
《ブロック制御部による動作》
次に、ブロック制御部1022による動作(ステップST203,ST204)について図10を参照しつつ詳しく説明する。
<Operation by block control unit>
Next, the operation (steps ST203 and ST204) by the
〔ステップ501〕
まず、ブロック制御部1022は、EOBサーチ部1020より出力されるEOB信号の出力値が「1」であるか否かを判断する。EOB信号の出力値が「1」になると、ステップST502へ進む。
[Step 501]
First, the
〔ステップST502〕
次に、ブロック制御部1022は、ブロック情報出力部1023に出力するGET_DATA信号の出力値を「1」にする。GET_DATA信号の出力値が「1」になると、ブロック情報出力部1023によって生成されたブロック選択情報がブロック制御部1022に書き込まれる。
[Step ST502]
Next, the
〔ステップST503〕
次に、ブロック制御部1022は、自己がブロック情報出力部1023に出力するGET_DATA信号の出力値が「0」であるか否かを判断する。GET_DATA信号の出力値が「0」になると、ステップST504へ進む。
[Step ST503]
Next, the
〔ステップST504〕
次に、ブロック制御部1022は、ブロック情報出力部1023によって書き込まれたブロック選択情報を読み出す。
[Step ST504]
Next, the
〔ステップST505〕
次に、ブロック制御部1022は、読み出したブロック選択情報が「SW1」を示すか否かを判断する。読み出したブロック選択情報が「SW1」を示す場合にはステップST506へ進む。読み出したブロック選択情報が「SW2」を示す場合にはステップST508へ進む。
[Step ST505]
Next, the
〔ステップST506〕
次に、ブロック制御部1022は、スイッチ1021に対して可変長復号部103aを選択するように指示する。
[Step ST506]
Next, the
〔ステップST507〕
次に、ブロック制御部1022は、EOBサーチ部1020から出力されているEOB信号の出力値を「0」にする。次に、ステップST501へ進む。
[Step ST507]
Next, the
〔ステップ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
〈データフロー〉
図11に、算術演算部104におけるデータフローを示す。
<data flow>
FIG. 11 shows a data flow in the
まず、マクロブロックデータ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
ここで、可変長復号部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
次に、ブロックデータY0に対する逆離散コサイン変換が完了すると、周波数変換部1040は、ブロックバッファ10Bに格納されたブロックデータY1に対して逆離散コサイン変換を行う。
Next, when the inverse discrete cosine transform for the block data Y0 is completed, the
このようにして、周波数変換部1040は、ブロックデータY0,Y1,Y2,Y3,Cb、Crの順番に逆離散コサイン変換を行う。
In this way, the
マクロブロックバッファ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
また、周波数変換部1040は、動き補償部1041との間に、マクロブロックバッファ12MA,12MBを持っているため、動き補償部1041の処理の遅延により、影響を受けることはない。
In addition, since the
〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部および動き補償部を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
なお、本実施形態では、入力信号を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
<算術演算部の内部構成>
図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
また、本実施形態では、周波数変換部2040は、可変長復号部103a,103bの処理速度の倍の処理性能を持つものとする。
In the present embodiment, the
<プレパーサー部201の内部構成>
図12に示したプレパーサー部201の内部構成を図14に示す。プレパーサー部201は、バッファメモリ2011と、ヘッダ検出部2012と、メモリ2013と、スライス制御部2014とを含む。バッファメモリ2011は、入力信号を一時的に格納する。ヘッダ検出部2012は、バッファメモリ2011に格納されている入力信号の中からスライスヘッダを検出し、スライスヘッダを検出するとスライス番号とそのスライスが格納されているバッファメモリ2011中のアドレスとをメモリ2013に格納する。スライス制御部2014は、メモリ2013に格納されたスライス番号とそのスライスが格納されるアドレスを順次読み出し、バッファメモリ2011に格納された入力信号の中から処理対象のスライスデータをヘッダ情報解析部202a,202bのうちいずれか一方に出力する。
<Internal configuration of
FIG. 14 shows an internal configuration of the
〈動作〉
図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
次に、ヘッダ検出部2012は、バッファメモリ2011に格納された入力信号を読み出し、入力信号の中からスライスヘッダを検出する。ヘッダ検出部2012は、スライスヘッダを検出すると、スライス番号とそのスライスが格納されているバッファメモリ2011中のアドレスをメモリ2013に記録する。
Next, the
次に、スライス制御部2014は、メモリ2013に記録されているスライス番号とそのスライスが格納されるアドレスとを順次読み出し、それらに従ってバッファメモリ2011に格納されている入力信号を読み出し、読み出した入力信号をヘッダ情報解析部202a,202bのうちいずれか一方に入力する。例えば、図15で示す画像イメージを用いると、スライス制御部2014は、スライス0をヘッダ情報解析部202aへ、そして、次のスライス1をヘッダ情報解析部202bへ、そして、スライス2をヘッダ情報解析部202aへと入力するように、出力を制御する。
Next, the
ここでは、スライス0がヘッダ情報解析部202aへ、スライス1がヘッダ情報解析部202bへ入力されたとして説明する。
Here, it is assumed that slice 0 is input to the header
ヘッダ情報解析部202aは、入力されたスライス0のマクロブロックヘッダまでのストリーム中のデータを解析することにより情報SignalA,SignalB,SignalCを取得する。一方、ヘッダ情報解析部202bは、入力されたスライス1は、マクロブロックヘッダまでのストリーム中のデータを解析することにより情報SignalA,SignalB,SignalCを取得する。
The header
次に、ヘッダ情報解析部202aによって処理されたデータは、可変長復号部103aに入力されて復号化処理される。さらに、可変長復号部103aは、逆量子化処理して、復号データD103Aを出力する。一方、第2のヘッダ情報解析部202bによって処理されたデータは、可変長復号部103bに入力されて復号化処理される。さらに、可変長復号部103bは、逆量子化処理して、復号データD103Bを出力する。
Next, the data processed by the header
次に、可変長復号部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
次に、周波数変換部2040は、ヘッダ情報解析部202aからの情報SignalB,SignalCまたはヘッダ情報解析部202bからの情報SignalB,SignalCを参照して、マクロブロックバッファ13MA、13MB、14MA、14MB、13MA、13MB……の順で復号データD103Aまたは復号データD103Bに対して逆離散コサイン変換を行うことによって、差分データAまたは差分データBを生成する。
Next, the
次に、差分データ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
次に、動き補償部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
〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部を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 (
図16に、これを回避するための算術演算部304の一構成例を示す。
FIG. 16 shows a configuration example of the
図16に示すように、算術演算部304は、図13に示した周波数変換部2040および動き補償部2041a,2041bに代えて、周波数変換部3040と動き補償部3041とを含む。
As shown in FIG. 16, the
周波数変換部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
なお、本構成では、周波数変換部3040および動き補償部3041は、可変長復号部103a,103bの処理速度の2倍の処理性能を持つものとする。
In this configuration, it is assumed that the frequency conversion unit 3040 and the
以上のように、適切に情報SignalAを参照することができるので、算術演算部204と同様の処理を行うことができる。
As described above, since the information SignalA can be appropriately referred to, the same processing as the
(第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
〈動作〉
図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
ヘッダ情報解析部202aでは、入力信号S1中のマクロブロックヘッダまでのストリーム中のデータを解析する。一方、ヘッダ情報解析部202bでは、入力信号S2中のマクロブロックヘッダまでのストリーム中のデータを解析する。
The header
次に、入力信号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
次に、可変長復号部103a,103bの各々が出力する復号データD103A,D103Bは、算術演算部204に入力される。周波数変換部2040は、復号データD103A,D103Bの各々に対して逆離散コサイン変換が行うことによって差分データA,Bを生成し、それぞれを動き補償部2041へ出力する。
Next, the decoded data D103A and D103B output from the variable
次に、動き補償部2041は、ヘッダ情報解析部202aまたは202bからの情報SignalB (CBP情報)を用いて、差分データA,Bに対して動き補償を行うことによって再生データD204A,D204Bを生成し、それぞれをフレームメモリへ格納する。
Next, the
〈効果〉
以上のように、本実施形態による信号処理装置は、複数の可変長復号部によってブロック単位の復号化信号を並列に処理するので、符号化信号の復号化を高速に行うことができる。また、周波数演算部を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.
101 ヘッダ情報解析部
102 プレパーサー部
103a,103b 可変長復号部
104 算術演算部
105 フレームメモリ
10A,11A,10B,11B ブロックバッファ
1040 周波数変換部
12MA,12MB マクロブロックバッファ
1041 動き補償部
1020 EOBサーチ部
1021 スイッチ
1022 ブロック制御部
1023 ブロック情報出力部
DESCRIPTION OF
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つを対応付ける選択部とを含む
ことを特徴とする信号処理装置。 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つずつ順番に選択し、選択した可変長復号部によって生成された復号データに対して逆直交変換を行うことによって空間データを生成する周波数変換部と、
前記周波数変換部によって生成された空間データに対して動き補償を行うことによって再生データを生成する動き補償部とを含む
ことを特徴とする信号処理装置。 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.
前記算術演算部の動作速度は、前記可変長復号部の動作速度よりも速い
ことを特徴とする信号処理装置。 In claim 1,
An operation speed of the arithmetic operation unit is faster than an operation speed of the variable length decoding unit.
前記所定の規格によって符号化された信号は、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
前記複数のブロックデータの各々は、
当該ブロックデータの終端を示す終端符号が付加されており、
前記プレパーサーステップは、
前記ブロックデータの中から終端符号を検出する終端符号検出ステップと、
前記ヘッダ情報取得ステップによって取得されたブロック情報に基づき、前記複数のブロックの各々に前記複数の可変長復号ステップのうちいずれか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.
前記算術演算ステップは、
前記複数の可変長復号ステップを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.
前記算術演算ステップの動作速度は、前記可変長復号ステップの動作速度よりも速い
ことを特徴とする信号処理方法。 In claim 6,
An operation speed of the arithmetic operation step is faster than an operation speed of the variable length decoding step.
前記所定の規格によって符号化された信号は、MPEGストリームである
ことを特徴とする信号処理方法。 In claim 6,
The signal processing method characterized in that the signal encoded according to the predetermined standard is an MPEG stream.
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)
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 |
-
2004
- 2004-03-12 JP JP2004070325A patent/JP2005260639A/en active Pending
Cited By (4)
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 |