JPH07240844A - Image data processing unit and image data processing method - Google Patents

Image data processing unit and image data processing method

Info

Publication number
JPH07240844A
JPH07240844A JP2093794A JP2093794A JPH07240844A JP H07240844 A JPH07240844 A JP H07240844A JP 2093794 A JP2093794 A JP 2093794A JP 2093794 A JP2093794 A JP 2093794A JP H07240844 A JPH07240844 A JP H07240844A
Authority
JP
Japan
Prior art keywords
data
pixel
processing
bus
image
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
JP2093794A
Other languages
Japanese (ja)
Inventor
Tetsuya Matsumura
哲哉 松村
Shinichi Nakagawa
伸一 中川
Hiroshi Segawa
浩 瀬川
Kazuya Ishihara
和哉 石原
Satoru Kumaki
哲 熊木
Mitsuo Hanami
充雄 花見
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2093794A priority Critical patent/JPH07240844A/en
Priority to DE4447554A priority patent/DE4447554C2/en
Priority to DE4447552A priority patent/DE4447552C2/en
Priority to DE19944408522 priority patent/DE4408522C2/en
Priority to DE4447553A priority patent/DE4447553C2/en
Priority to FR9403206A priority patent/FR2702862B1/en
Priority to FR9408221A priority patent/FR2707779B1/en
Priority to FR9408222A priority patent/FR2707780B1/en
Publication of JPH07240844A publication Critical patent/JPH07240844A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Memory System (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Dram (AREA)

Abstract

PURPOSE:To attain high speed compression processing for image data by providing a variable length coding processor and a pipeline control processor applying pipeline control to the processing the processing unit. CONSTITUTION:The processing unit is provided with a control unit 2 having two processors, a pixel processing unit 3 for DCT and quantization, a moving prediction (or detection) unit 41 and a frame buffer memory 51 or the like storing processed image data. Then the picture element processor executes discrete cosine transformation processing and quantization processing to picture element data sent via a picture element data bus and the variable length coding processor executes the picture element coding processing. Furthermore, the pipeline control processor controls the processing in each processor and pipeline processing in the data transfer via a bus. Thus, the compression processing of picture data is implemented at a high speed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、一般に画像データ処
理装置および画像処理方法に関し、特に、画像データの
圧縮および/または伸張を高速で効率的に実行できる画
像データ処理装置および画像データ処理方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention generally relates to an image data processing apparatus and an image processing method, and more particularly to an image data processing apparatus and an image data processing method capable of efficiently performing compression and / or expansion of image data at high speed. .

【0002】[0002]

【背景の技術】従来より、画像データを圧縮および伸張
するための国際標準規格の作成が、国際標準化機構(In
ternational Organization for Standardization;以下
「ISO」という),国際電信電話諮問委員会(Intern
ational Telegraph and Telephone Consultative Commi
ttee;以下「CCITT」という、ただし、現在はIT
u−Tと改称),国際電気標準会議(International El
ectrical Committee;以下「IEC」という)により進
められている。
BACKGROUND ART Conventionally, the creation of an international standard for compressing and decompressing image data has been performed by the International Organization for Standardization (In
ternational Organization for Standardization; hereinafter referred to as "ISO", International Telegraph and Telephone Advisory Committee (Intern)
ational Telegraph and Telephone Consultative Commi
ttee; hereinafter referred to as “CCITT”, but currently IT
UT, renamed International Electrotechnical Commission (International El
Electrical Committee; hereinafter referred to as "IEC").

【0003】国際標準規格の中で、JPEG規格は、I
SOおよびCCITTによるJoint Photog
raphic Expert Groupにより作成さ
れ、カラー静止画のための圧縮および伸張アルゴリズム
を規定している。一方、MPEG規格は、ISOおよび
IECのMoving Picture Expert
Groupにより作成中であり、カラー動画のための
圧縮および伸張アルゴリズムを規定している。さらに、
H.261規格は、CCITTにより作成中の規格であ
り、テレビ会議およびテレビ電話に適した圧縮および伸
張アルゴリズムを規定している。
Among the international standards, the JPEG standard is I
Joint Photog by SO and CCITT
Created by the Ragic Expert Group, it defines a compression and decompression algorithm for color still images. On the other hand, the MPEG standard is based on the Moving Picture Expert of ISO and IEC.
It is being created by Group and defines compression and decompression algorithms for color video. further,
H. The H.261 standard is a standard being created by CCITT and defines compression and expansion algorithms suitable for video conferences and video telephones.

【0004】図69は、国際標準規格において勧告され
ている画像圧縮アルゴリズムにおける主な処理を示すブ
ロック図である。図69を参照して、画像圧縮処理は、
基本的に、予測符号化処理,直交変換処理および可変長
符号化処理を含む。図69からわかるように、JPE
G,MPEGおよびH.261の各規格は、画像圧縮処
理において、離散コサイン変換(以下「DCT」とい
う),量子化処理およびハフマン符号化処理を含んでい
る。
FIG. 69 is a block diagram showing the main processing in the image compression algorithm recommended by the international standard. Referring to FIG. 69, the image compression processing is
Basically, it includes a predictive coding process, an orthogonal transform process, and a variable length coding process. As can be seen from FIG. 69, JPE
G, MPEG and H.264. The H.261 standards include discrete cosine transform (hereinafter referred to as “DCT”), quantization processing, and Huffman coding processing in image compression processing.

【0005】たとえば、カラー静止画処理のためのJP
EG規格は、基本システムとして、適応DCT処理,量
子化処理ならびにDPCM処理およびハフマン符号化処
理を含む。JPEG規格は、拡張システムとして、適応
DCT処理および階層符号化処理ならびに算術符号化処
理および適応ハフマン符号化処理を含む。
For example, JP for color still image processing
The EG standard includes adaptive DCT processing, quantization processing, DPCM processing and Huffman coding processing as a basic system. The JPEG standard includes adaptive DCT processing, hierarchical coding processing, arithmetic coding processing, and adaptive Huffman coding processing as an extended system.

【0006】動画像蓄積処理のためのMPEG規格は、
動き補償/フレーム間予測処理,DCT処理,量子化処
理およびハフマン符号化処理を含む。テレビ電話および
テレビ会議のためのH.261規格は、動き補償処理/
フレーム間予測処理,DCT処理,量子化処理およびハ
フマン符号化処理を含む。
The MPEG standard for moving image storage processing is
It includes motion compensation / interframe prediction processing, DCT processing, quantization processing, and Huffman coding processing. H.264 for videophone and videoconferencing. 261 standard is motion compensation processing /
It includes inter-frame prediction processing, DCT processing, quantization processing, and Huffman coding processing.

【0007】上記の国際標準規格に従う画像圧縮用LS
Iの開発が進められており、その概要は、たとえば、
「画像圧縮用LSI」と題された論文(テレビジョン学
会誌Vol.46,No.3,pp.253−260,
1992)において記載されている。この発明は、一般
に上記の国際標準規格に従う画像圧縮および/または伸
張処理のための画像データ圧縮装置,画像データ伸張装
置および画像データプロセッサに適用され得ることが指
摘される。
Image compression LS according to the above international standard
The development of I is in progress, and its outline is, for example,
A paper entitled "Image Compression LSI" (Journal of the Television Society, Vol. 46, No. 3, pp. 253-260,
1992). It is pointed out that the present invention can be generally applied to an image data compression device, an image data expansion device and an image data processor for image compression and / or expansion processing according to the above international standard.

【0008】図70は、従来の画像圧縮/伸張処理装置
のブロック図である。図70を参照して、この画像圧縮
/伸張処理装置は、画像データ処理のためのディジタル
シグナルプロセッサ(以下「DSP」という)900
と、画像データメモリ907と、コードデータメモリ9
08と、表示用メモリ909と、ワークメモリ910と
を含む。DSP900は、内部バス940を介してメモ
リ907ないし910に接続される。
FIG. 70 is a block diagram of a conventional image compression / expansion processing apparatus. Referring to FIG. 70, the image compression / expansion processing apparatus includes a digital signal processor (hereinafter referred to as “DSP”) 900 for image data processing.
Image data memory 907 and code data memory 9
08, a display memory 909, and a work memory 910. The DSP 900 is connected to the memories 907 to 910 via the internal bus 940.

【0009】図71は、図70に示したDSP900の
ブロック図である。図71を参照して、このDSP90
0は、命令メモリ901と、プログラム制御器902
と、データメモリ903と、データ演算器904と、外
部インターフェイス905とを含む。システムバス94
1は、プログラム制御器902,データメモリ903,
データ演算器904および外部インターフェイス905
間を接続する。
FIG. 71 is a block diagram of the DSP 900 shown in FIG. 71, with reference to FIG.
0 is an instruction memory 901 and a program controller 902.
A data memory 903, a data calculator 904, and an external interface 905. System bus 94
1 is a program controller 902, a data memory 903,
Data calculator 904 and external interface 905
Connect between.

【0010】動作において、命令メモリ901内にスト
アされた(またはプログラムされた)命令コードが読出
され、プログラム制御器902に与えられる。プログラ
ム制御器902は、与えられた命令コードをデコード
し、様々な制御信号を発生する。データ演算器904
は、プログラム制御器902から与えられた制御信号に
応答して、データメモリ903および外部インターフェ
イス905を介して外部からデータを受け、演算を実行
する。演算結果は、データメモリ903内にストアされ
るか、または外部インターフェイス905を介して出力
される。このように、DSP900において、命令メモ
リ901にストアされた命令コードに従って処理が実行
される。
In operation, the instruction code stored (or programmed) in instruction memory 901 is read and provided to program controller 902. The program controller 902 decodes a given instruction code and generates various control signals. Data calculator 904
Responds to the control signal given from the program controller 902, receives data from the outside through the data memory 903 and the external interface 905, and executes the operation. The calculation result is stored in the data memory 903 or output via the external interface 905. In this way, the DSP 900 executes the processing according to the instruction code stored in the instruction memory 901.

【0011】次に、図70および図71を参照して、画
像データの圧縮処理における動作について説明する。こ
こで、圧縮されるべき画像データは、画像データメモリ
907内にストアされているものと仮定する。まず、画
像データメモリ907内にストアされた画像データが、
DSP900内のデータメモリ903に転送される。デ
ータメモリ903内にストアされた画像データに対し
て、データ演算器904によるフォーマット変換処理が
行なわれる。フォーマット変換処理において、たとえ
ば、色差信号のサブサンプルデータまたはRGBフォー
マットデータが、YUVフォーマットデータに変換され
る。変換されたデータは、一時的にデータメモリ903
内にストアされる。DSP900は、データメモリ90
3内の変換されたデータを画像データメモリ907に転
送する。
Next, with reference to FIGS. 70 and 71, the operation in the image data compression process will be described. Here, it is assumed that the image data to be compressed is stored in the image data memory 907. First, the image data stored in the image data memory 907 is
It is transferred to the data memory 903 in the DSP 900. The image data stored in the data memory 903 is subjected to format conversion processing by the data calculator 904. In the format conversion process, for example, the subsample data of the color difference signal or the RGB format data is converted into YUV format data. The converted data is temporarily stored in the data memory 903.
Stored in. The DSP 900 is a data memory 90.
The converted data in 3 is transferred to the image data memory 907.

【0012】次に、DSP900は、画像データメモリ
907にストアされたデータを用いて、画像圧縮モード
の判定処理を行なう。画像圧縮モードとして、フレーム
間の圧縮モードおよびフレーム内の圧縮モードなどが知
られている。フレーム間の圧縮モードでは、動き予測
(または検出)などの処理が場合により必要となる。圧
縮モード判定のための評価データおよび動き検出のため
の評価データは、画像データに対する差分絶対値和演算
などの実行により得られる。これらの演算が実行される
とき、DSP900はフォーマット変換処理と同様に、
画像データメモリ907にストアされたデータをデータ
メモリ903に転送し、データメモリ903内にストア
されたデータに対してデータ演算器904が演算処理を
実行する。
Next, the DSP 900 uses the data stored in the image data memory 907 to perform an image compression mode determination process. Known image compression modes include an inter-frame compression mode and an intra-frame compression mode. In the inter-frame compression mode, processing such as motion prediction (or detection) is sometimes necessary. The evaluation data for determining the compression mode and the evaluation data for detecting the motion are obtained by executing a difference absolute value sum operation on the image data. When these operations are performed, the DSP 900, like the format conversion process,
The data stored in the image data memory 907 is transferred to the data memory 903, and the data arithmetic unit 904 executes arithmetic processing on the data stored in the data memory 903.

【0013】DSP900は、上記の演算により得られ
た評価データに基づいて、ワークメモリ910内にスト
アされたモード判定用テーブルデータを参照し、および
/または評価データについての比較演算処理を実行する
ことにより圧縮モードを決定する。
The DSP 900 refers to the mode determination table data stored in the work memory 910 based on the evaluation data obtained by the above operation and / or executes the comparison operation process for the evaluation data. Determines the compression mode.

【0014】圧縮モードが決定された後、DSP900
は、画像データメモリ907にストアされている画像デ
ータについて変換符号化処理を実行する。変換符号化処
理は、たとえばDCTなどによって代表される処理であ
り、DSP900は、画像データメモリ907内にスト
アされたデータを内部メモリ903に転送した後、デー
タ演算器904がDCT処理を実行する。処理されたデ
ータは、データメモリ903内に保持される。
After the compression mode is determined, the DSP 900
Performs a transform coding process on the image data stored in the image data memory 907. The transform coding process is a process represented by, for example, DCT, and the DSP 900 transfers the data stored in the image data memory 907 to the internal memory 903, and then the data calculator 904 executes the DCT process. The processed data is held in the data memory 903.

【0015】さらに、DSP900は、可変長符号化
(またはエントロピー符号化)処理を実行する。可変長
符号化処理は、たとえばハフマン符号などを用いたコー
ド変換処理として知られる。DSP900は、データメ
モリ903内にストアされたデータについて、ワークメ
モリ910内にストアされたコード変換テーブルを参照
することにより可変長符号化処理を実行する。コード変
換の後、処理されたデータはデータメモリ903からコ
ードデータメモリ908に転送され、ストアされる。
Further, the DSP 900 executes variable length coding (or entropy coding) processing. The variable length coding process is known as a code conversion process using, for example, a Huffman code. The DSP 900 executes the variable length coding process on the data stored in the data memory 903 by referring to the code conversion table stored in the work memory 910. After the code conversion, the processed data is transferred from the data memory 903 to the code data memory 908 and stored.

【0016】画像圧縮のための画像データ処理は上記の
ように行なわれるのであるが、一方、画像伸張のための
画像データ処理も、画像圧縮の場合と類似した態様で行
なわれる。すなわち、画像伸張されるべきデータが一旦
DSP900内のデータメモリ903に与えられ、スト
アされたデータに対してデータ演算器904が画像伸張
のための処理を実行する。
The image data processing for image compression is performed as described above. On the other hand, the image data processing for image decompression is performed in a manner similar to the case of image compression. That is, the data to be image-expanded is once provided to the data memory 903 in the DSP 900, and the data calculator 904 executes the process for image expansion on the stored data.

【0017】[0017]

【発明が解決しようとする課題】このように、従来の画
像圧縮/伸張処理装置は、単一のデータ演算器904を
備えたDSP900により、画像データの圧縮および伸
張処理を実行しているので、処理に多くの時間を要して
いた。これに加えて、DSP900は、データのための
1つの入出力ポート(すなわち外部インターフェイス9
05)のみしか備えていないので、多量の画像データを
扱う画像圧縮/伸張処理装置においてデータ転送が効率
よく行なわれ得なかった。
As described above, in the conventional image compression / expansion processing device, the DSP 900 having the single data calculator 904 executes the compression and expansion of the image data. It took a lot of time to process. In addition to this, the DSP 900 has one I / O port for data (ie, external interface 9
Since only 05) is provided, data transfer cannot be performed efficiently in an image compression / expansion processing device that handles a large amount of image data.

【0018】この発明は上記のような課題を解決するた
めになされたもので、その1つの目的は、高速処理に適
した画像データ処理装置および画像処理方法を提供する
ことである。
The present invention has been made to solve the above problems, and an object thereof is to provide an image data processing apparatus and an image processing method suitable for high speed processing.

【0019】[0019]

【課題を解決するための手段】請求項1の発明に係る画
像データ処理装置は、圧縮されるべき画素データを記憶
する画素データ記憶手段と、画素データ記憶手段に記憶
された画素データを伝送する画素データバスと、画素デ
ータバスを介して伝送された画素データについて、離散
コサイン変換処理および量子化処理を実行し、画素符号
を出力する画素プロセッサと、画素プロセッサから出力
された画素符号を伝送する画素符号バスと、画素符号バ
スを介して伝送された画素符号について、可変長符号化
処理を実行し、可変長符号を出力する可変長符号化プロ
セッサと、画素データバス,画素プロセッサ,画素符号
バスおよび可変長符号化プロセッサについてのパイプラ
イン処理を制御するパイプライン制御プロセッサとを含
む。
An image data processing apparatus according to the invention of claim 1 transmits pixel data storage means for storing pixel data to be compressed, and pixel data stored in the pixel data storage means. A pixel data bus and a pixel processor that performs a discrete cosine transform process and a quantization process on pixel data transmitted via the pixel data bus and outputs a pixel code, and a pixel code output from the pixel processor is transmitted. Pixel code bus, variable length coding processor for performing variable length coding processing on pixel code transmitted via the pixel code bus, and outputting variable length code, pixel data bus, pixel processor, pixel code bus And a pipeline control processor for controlling pipeline processing for the variable length coding processor.

【0020】請求項2の発明に係る画像データ処理装置
は、圧縮された可変長符号を記憶する可変長符号記憶手
段と、可変長符号記憶手段に記憶された可変長符号を伝
送する可変長符号バスと、可変長符号バスを介して伝送
された可変長符号について、可変長復号化処理を実行
し、画素符号を出力する可変長復号化プロセッサと、可
変長復号化プロセッサから出力された画素符号を伝送す
る画素符号バスと、画素符号バスを介して伝送された画
素符号について、逆量子化処理および逆離散コサイン変
換処理を実行し、伸張された画素データを出力する画素
プロセッサと、可変長符号バス,可変長復号化プロセッ
サ,画素符号バスおよび画素プロセッサについてのパイ
プライン処理を制御するパイプライン制御プロセッサと
を含む。
According to a second aspect of the present invention, there is provided an image data processing device, wherein variable length code storage means for storing the compressed variable length code and variable length code for transmitting the variable length code stored in the variable length code storage means. A variable-length decoding processor that performs variable-length decoding processing on a bus and a variable-length code transmitted via the variable-length code bus and outputs a pixel code, and a pixel code output from the variable-length decoding processor A pixel code bus for transmitting a pixel code bus, a pixel processor for performing inverse quantization processing and inverse discrete cosine transform processing on the pixel code transmitted via the pixel code bus, and outputting expanded pixel data; A bus, a variable length decoding processor, a pixel code bus and a pipeline control processor for controlling pipeline processing for the pixel processor.

【0021】請求項3の発明に係る画像データ処理装置
は、データ圧縮モードにおいて画素データについて離散
コサイン変換処理および量子化処理を実行し、かつデー
タ伸張モードにおいて画素符号について逆量子化処理お
よび逆離散コサイン変換処理を実行する画素プロセッサ
と、データ圧縮モードにおいて画素符号について可変長
符号化処理を実行し、かつデータ伸張モードにおいて可
変長符号について可変長復号化処理を実行する可変長プ
ロセッサと、画素プロセッサと可変長プロセッサとの間
で画素データおよび可変長符号を伝送する第1のデータ
バスと、画素プロセッサと可変長プロセッサとの間で画
素符号を伝送する第2のデータバスと、画素プロセッ
サ,可変長プロセッサ,第1および第2のデータバスに
ついてのパイプライン処理を制御するパイプライン制御
プロセッサとを含む。
The image data processing apparatus according to the invention of claim 3 executes the discrete cosine transform processing and the quantization processing on the pixel data in the data compression mode, and the inverse quantization processing and the inverse discrete processing on the pixel code in the data expansion mode. Pixel processor for executing cosine transform processing, variable length coding processing for pixel code in data compression mode, and variable length decoding processing for variable length code in data expansion mode, and pixel processor A first data bus for transmitting pixel data and a variable length code between the pixel processor and the variable length processor; a second data bus for transmitting a pixel code between the pixel processor and the variable length processor; Long processor, pipeline for first and second data buses And a pipeline control processor for controlling the process.

【0022】請求項4の発明に係る画像データ処理装置
は、変換のためのテーブルデータを記憶する第1の記憶
手段,画像処理されるべき画像データを記憶する第2の
記憶手段,表示のための画像データを記憶する第3の記
憶手段,および変換された画像データを記憶する第4の
記憶手段に対しアクセスすることができる。この画像デ
ータ処理装置は、第1ないし第4の記憶手段にそれぞれ
アクセスする第1ないし第4のアクセス手段と、第1な
いし第4のアクセス手段に対しアクセス動作の開始を個
々に制御するアクセス制御手段とを含む。
An image data processing apparatus according to a fourth aspect of the present invention includes first storage means for storing table data for conversion, second storage means for storing image data to be image processed, and display. It is possible to access the third storage means for storing the image data and the fourth storage means for storing the converted image data. This image data processing apparatus has first to fourth access means for accessing the first to fourth storage means, respectively, and access control for individually controlling the start of an access operation for the first to fourth access means. And means.

【0023】請求項5の発明に係る画像データ処理装置
は、画像データ圧縮および/または画像データ伸張のた
めの複数の予め定められた処理についてのパイプライン
処理を制御する制御プロセッサと、制御プロセッサから
与えられる制御信号に応答して、複数の予め定められた
処理のうち予め定められた1つを実行する画像処理プロ
セッサとを含む。
According to a fifth aspect of the present invention, there is provided an image data processing device comprising: a control processor for controlling pipeline processing for a plurality of predetermined processes for image data compression and / or image data expansion; And an image processing processor that executes a predetermined one of a plurality of predetermined processes in response to a control signal provided thereto.

【0024】請求項6の発明に係る画像データ処理装置
は、画像データ圧縮および/または画像データ伸張のた
めの離散コサイン変換処理,量子化処理および可変長デ
ータ処理についてのパイプライン処理を制御するパイプ
ライン制御プロセッサと、パイプライン処理制御プロセ
ッサから与えられる制御信号に応答して、可変長データ
処理を実行する可変長プロセッサとを含む。
An image data processing apparatus according to a sixth aspect of the present invention is a pipe for controlling pipeline processing for discrete cosine transform processing for image data compression and / or image data expansion, quantization processing and variable length data processing. A line control processor and a variable length processor that performs variable length data processing in response to a control signal provided from the pipeline processing control processor are included.

【0025】請求項7の発明に係る画像データ処理装置
は、画像データ圧縮および/または画像データ伸張のた
めの予め定められた処理および画像データ転送について
の並列動作を制御する制御プロセッサと、各々が制御プ
ロセッサから与えられる制御信号に応答して、予め定め
られた処理および画像データ転送の実行を個々に命令す
る複数の実行命令手段とを含む。
According to a seventh aspect of the present invention, there is provided an image data processing device which comprises a control processor for controlling a predetermined process for image data compression and / or image data decompression and a parallel operation for image data transfer. A plurality of execution instruction means for individually instructing execution of predetermined processing and image data transfer in response to a control signal provided from the control processor.

【0026】請求項8の発明に係る画像データ処理装置
は、ランデータおよびレベルデータの組合せに対応する
可変長符号,その符号長データおよび等長符号処理フラ
グを記憶する記憶手段と、与えられたランデータおよび
与えられたレベルデータに応答して、記憶手段から対応
する可変長符号,その符号長データおよび等長符号処理
フラグを読出す読出手段と、与えられたランデータおよ
び与えられたレベルデータについて、予め定められた規
則に従う符号化処理を実行し、対応する等長符号を出力
する等長符号化手段と、読出手段から出力される等長符
号処理フラグに応答して、可変長符号および等長符号の
一方を選択する選択手段と、選択手段から出力される出
力符号を順次に結合する符号結合手段とを含む。
The image data processing apparatus according to the present invention is provided with a storage means for storing a variable length code corresponding to a combination of run data and level data, the code length data and an equal length code processing flag. Responsive to the run data and the given level data, the reading means for reading the corresponding variable length code, the code length data and the equal length code processing flag from the storage means, the given run data and the given level data With respect to the variable length code, in response to the equal length coding means for performing the coding processing according to a predetermined rule and outputting the corresponding equal length coding, and the equal length coding processing flag output from the reading means. It includes a selecting means for selecting one of the equal-length codes and a code combining means for sequentially combining the output codes output from the selecting means.

【0027】請求項9の発明に係る画像データ処理装置
は、可変長符号に対応するランデータ,レベルデータお
よび等長処理フラグを記憶する記憶手段と、結合された
可変長符号を含む与えられた可変長符号列から可変長符
号を抽出する抽出手段と、抽出手段によって抽出された
可変長符号に応答して、記憶手段から対応するランデー
タ,レベルデータおよび等長処理フラグを読出す読出手
段と、抽出手段によって抽出された可変長符号につい
て、予め定められた規則に従う等長復号化処理を実行
し、対応する復号データを出力する等長復号化手段と、
読出手段から出力される等長処理フラグ応答して、ラン
データおよびレベルデータならびに復号データの一方を
選択する選択手段とを含む。
The image data processing device according to the invention of claim 9 is provided with a storage means for storing run data, level data and an equal length processing flag corresponding to a variable length code, and a combined variable length code. Extracting means for extracting the variable length code from the variable length code string, and reading means for reading the corresponding run data, level data and equal length processing flag from the storing means in response to the variable length code extracted by the extracting means. An equal-length decoding unit that performs an equal-length decoding process according to a predetermined rule on the variable-length code extracted by the extracting unit and outputs corresponding decoded data,
Selecting means for selecting one of the run data, the level data and the decoded data in response to the equal length processing flag output from the reading means.

【0028】請求項10の発明に係る画像データ処理装
置は、画面内の画素を規定するための画素データを記憶
するためのn個(n≧2)のメモリセルアレイを含む。
n個のメモリセルアレイは、1つの行アドレス信号およ
び1つの列アドレス信号の供与に応答して、各々がn個
のメモリセルアレイの対応する1つ内にストアされたn
個の画素データを出力する。n個の画素データは、画面
において垂直方向に置かれた複数の画素を規定する。こ
の画像データ処理装置は、さらに、シリアルクロック信
号に応答して、画面において水平方向に置かれた画素に
ついての画素データを指定するための列アドレス信号を
シリアルに出力するアドレス信号発生手段を含む。
An image data processing device according to a tenth aspect of the invention includes n (n ≧ 2) memory cell arrays for storing pixel data for defining pixels in a screen.
The n memory cell arrays are each stored in a corresponding one of the n memory cell arrays in response to the application of one row address signal and one column address signal.
Output pixel data. The n pieces of pixel data define a plurality of pixels vertically arranged on the screen. The image data processing device further includes an address signal generating unit that serially outputs a column address signal for designating pixel data of pixels horizontally arranged on the screen in response to the serial clock signal.

【0029】請求項11の発明に係る画像データ処理装
置は、画面内の画素を規定するための画素データを記憶
するためのn個(n≧2)のメモリセルアレイを含む。
n個のメモリセルアレイは、1つの行アドレス信号およ
び1つの列アドレス信号の供与に応答して、各々がn個
のメモリセルアレイの対応する1つ内にストアされたn
個の画素データを出力する。n個の画素データは、画面
において水平方向に置かれた複数の画素を規定する。こ
の画像データ処理装置は、さらに、シリアルクロック信
号に応答して、画面において垂直方向に置かれた画素に
ついての画素データを指定するための列アドレス信号を
シリアルに出力するアドレス信号発生手段を含む。
An image data processing device according to the invention of claim 11 includes n (n ≧ 2) memory cell arrays for storing pixel data for defining pixels in a screen.
The n memory cell arrays are each stored in a corresponding one of the n memory cell arrays in response to the application of one row address signal and one column address signal.
Output pixel data. The n pieces of pixel data define a plurality of pixels placed in the horizontal direction on the screen. The image data processing device further includes address signal generating means for serially outputting a column address signal for designating pixel data of pixels vertically arranged on the screen in response to the serial clock signal.

【0030】請求項12の発明に係る画像データ処理方
法は、画面を形成する画素を規定する複数のマクロブロ
ックデータをパイプライン処理の下で符号化する。この
画像データ処理方法は、マクロブロックデータについて
離散コサイン変換処理および量子化処理を実行し、画素
符号を生成するステップと、生成された画素符号につい
て可変長符号化処理を実行し、可変長符号を生成するス
テップと、生成された可変長符号を結合し、可変長符号
列を生成するステップとを含む。
In the image data processing method according to the twelfth aspect of the present invention, a plurality of macroblock data defining pixels forming a screen are encoded under pipeline processing. This image data processing method executes a discrete cosine transform process and a quantization process on macroblock data to generate a pixel code, and a variable length coding process on the generated pixel code to generate a variable length code. And a step of combining the generated variable-length codes to generate a variable-length code string.

【0031】請求項13の発明に係る画像データ処理方
法は、画面を形成する画素を規定する複数の可変長符号
を含む可変長符号列をパイプライン処理の下で復号化す
る。この画像データ処理方法は、可変長符号列から前記
可変長符号を抽出するステップと、抽出された可変長符
号について可変長復号化処理を実行し、画素符号を生成
するステップと、画素符号について逆量子化処理および
逆離散コサイン変換処理を実行し、画面を形成する画素
を規定するマクロブロックデータを生成するステップと
を含む。
In the image data processing method according to the thirteenth aspect of the present invention, a variable length code string including a plurality of variable length codes defining pixels forming a screen is decoded under pipeline processing. This image data processing method includes a step of extracting the variable-length code from a variable-length code string, a step of executing a variable-length decoding process on the extracted variable-length code to generate a pixel code, and an inverse of the pixel code. Performing a quantization process and an inverse discrete cosine transform process to generate macroblock data defining pixels forming a screen.

【0032】請求項14の発明に係る画像データ処理方
法は、画面内の画素を規定する複数の第1画素データを
記憶する記憶手段に第1画素データをマッピングさせ
る。この画像データ処理方法は、第1画素データの中か
ら2次元的に隣接しかつ正方形に近い矩形領域に含まれ
る複数の第2画素データを決定する第1ステップと、第
2画素データを1つのデータとして記憶手段の1つのア
ドレスを第2画素データに与える第2ステップと、第2
画素データのアドレスを用いて第2画素データを記憶手
段からまたは記憶手段へ転送する第3ステップとを含
む。
In the image data processing method according to the fourteenth aspect of the present invention, the first pixel data is mapped in the storage means for storing the plurality of first pixel data defining the pixels in the screen. According to this image data processing method, a first step of determining a plurality of second pixel data included in a rectangular area that is two-dimensionally adjacent and close to a square from the first pixel data, and the second pixel data are combined into one. A second step of giving one address of the storage means as data to the second pixel data;
A third step of transferring the second pixel data from or to the storage means using the address of the pixel data.

【0033】請求項15の発明に係る画素データ処理方
法は、画面内の画素を規定するための互いに関連する第
1および第2色差画素データを記憶する記憶手段に第1
および第2色差画素データをマッピングさせる。この画
素データ処理方法は、第1および第2色差画素データを
転送単位で交互に記憶手段にマッピングする第1ステッ
プと、第1または第2色差データを転送単位で記憶手段
からまたは記憶手段へ転送する第2ステップとを含む。
According to a fifteenth aspect of the present invention, there is provided a pixel data processing method, wherein the first storage means stores the first and second color difference pixel data associated with each other for defining the pixels in the screen.
And the second color difference pixel data is mapped. In this pixel data processing method, a first step of alternately mapping the first and second color difference pixel data in a transfer unit to a storage unit, and transferring the first or second color difference data in or from a storage unit to the storage unit. A second step of

【0034】請求項16の発明に係る画像データ処理方
法は、画面内の画素を規定するための互いに連関する第
1および第2色差画素データを記憶する記憶手段に第1
および第2色差画素データをマッピングさせる。この画
像データ処理方法は、第1および第2画素データを同数
ずつ合わせた第3色差画素データを1つのデータとして
記憶手段にマッピングさせる第1ステップと、第3色差
画素データを1つのデータとして前記記憶手段からまた
は記憶手段へ転送する第2ステップとを含む。
According to a sixteenth aspect of the present invention, in the image data processing method, the storage means for storing the first and second color difference pixel data associated with each other for defining the pixels in the screen has a first structure.
And the second color difference pixel data is mapped. In this image data processing method, the first step of mapping the third color difference pixel data obtained by combining the first and second pixel data by the same number into the storage means as one data, and the third color difference pixel data as one data, A second step of transferring from or to the storage means.

【0035】請求項17の発明に係る画像データ処理装
置は、圧縮されるべき画素データを記憶する第1の画素
データ記憶手段と、第1の画素データ記憶手段に記憶さ
れた画素データを伝送する第2の画素データバスと、第
1の画素データバスを介して伝送された画素データを受
け、伝送された画素データを用いて動き予測用参照デー
タを抽出し、かつ、動き予測用参照データを出力する第
1および第2のデータポートを有する画素プロセッサ
と、画素プロセッサの第2のデータポートから出力され
た動き予測用参照データを伝送する第2の画素データバ
スと、第2の画素データバスを介して伝送された動き予
測用参照データを記憶する第2の画素データ記憶手段
と、第2の画素データ記憶手段に記憶され、第2の画素
データバスを介して伝送された動き予測用参照データを
用いて動き予測処理を実行し、動きベクトルを生成する
動き予測ユニットと、第1および第2画素データバス、
画素プロセッサ、および動き予測ユニットについてのパ
イプライン処理を制御するパイプライン制御プロセッサ
とを含む。
The image data processing apparatus according to the seventeenth aspect of the present invention transmits first pixel data storage means for storing pixel data to be compressed, and pixel data stored in the first pixel data storage means. The pixel data transmitted via the second pixel data bus and the first pixel data bus are received, the motion prediction reference data is extracted using the transmitted pixel data, and the motion prediction reference data is extracted. Pixel processor having first and second data ports for outputting, second pixel data bus for transmitting motion prediction reference data outputted from the second data port of the pixel processor, and second pixel data bus Second pixel data storage means for storing the motion prediction reference data transmitted via the second pixel data storage means, and the second pixel data storage means for storing the motion prediction reference data stored in the second pixel data storage means. By executing the motion prediction processing using the reference data for motion estimation, a motion prediction unit for generating a motion vector, the first and second pixel data bus,
A pixel processor and a pipeline control processor that controls pipeline processing for the motion estimation unit.

【0036】請求項18の発明に係る画像データ処理装
置は、請求項17の構成に加え、パイプライン制御プロ
セッサは、画素プロセッサの第1および第2のデータポ
ートの出力制御信号を出力するシステム制御器をさらに
含む。
In the image data processing device according to the eighteenth aspect of the present invention, in addition to the configuration of the seventeenth aspect, the pipeline control processor is a system control for outputting output control signals of the first and second data ports of the pixel processor. Further includes a vessel.

【0037】請求項19の発明に係る画像データ処理装
置は、圧縮されるべき画素データを記憶する第1の画素
データ記憶手段と、第1の画素データ記憶手段に記憶さ
れた画素データを伝送する第1の画素データバスと、第
1の画素データバスを介して伝送された画素データを受
け、伝送された画素データを用いて動き予測用参照デー
タを抽出し、かつ、抽出した動き予測用参照データを出
力する第1のデータポートと、抽出した動き予測用参照
データをそれぞれ分割して出力する複数の第2のデータ
ポートとを有する画素プロセッサと、第2のデータポー
トごとに対応して設けられ、第2のデータポートから出
力された動き予測用参照データを伝送する複数の第2の
画素データバスと、第2のデータポートごとに対応して
設けられ、第2の画素データバスを介して伝送された動
き予測用参照データを記憶する複数の第2の画素データ
記憶手段と、第2のデータポートごとに対応して設けら
れ、第2の画素データ記憶手段から第2のデータバスを
介して伝送された動き予測用参照データを用いて動き予
測処理を実行し、動きベクトルを生成する動き予測ユニ
ットと、第1の画素データバス、画素プロセッサ、複数
の第2の画素データバス、および複数の動き予測ユニッ
トについてのパイプライン処理を制御するパイプライン
制御プロセッサとを含む。
An image data processing device according to a nineteenth aspect of the present invention transmits first pixel data storage means for storing pixel data to be compressed and pixel data stored in the first pixel data storage means. A first pixel data bus and pixel data transmitted via the first pixel data bus are received, motion prediction reference data is extracted using the transmitted pixel data, and the extracted motion prediction reference A pixel processor having a first data port for outputting data and a plurality of second data ports for dividing and outputting the extracted reference data for motion prediction, and a pixel processor provided corresponding to each second data port A plurality of second pixel data buses for transmitting the motion prediction reference data output from the second data port, and the second pixel data bus provided for each second data port. A plurality of second pixel data storage means for storing the motion prediction reference data transmitted via the elementary data bus, and a plurality of second pixel data storage means provided corresponding to each second data port. A motion prediction unit that performs motion prediction processing using the motion prediction reference data transmitted via the second data bus, and generates a motion vector; a first pixel data bus, a pixel processor, and a plurality of second A pixel data bus and a pipeline control processor that controls pipeline processing for the plurality of motion prediction units.

【0038】請求項20の発明に係る画像データ処理装
置は、圧縮されるべき画素データを記憶する第1の画素
データ記憶手段と、第1の画素データ記憶手段に記憶さ
れた画素データを伝送する第1の画素データバスと、第
1の画素データバスを介して伝送された画素データを受
け、伝送された画素データを用いて動き予測用参照デー
タを抽出し、かつ、動き予測用参照データを出力する第
1のデータポートと、動き予測用参照データの種類に応
じて動き予測用参照データを分割して出力する複数の第
2データポートとを有する画素プロセッサと、第2のデ
ータポートごとに対応して設けられ、第2のデータポー
トから出力された動き予測用参照データを伝送する複数
の第2の画素データバスと、第2のデータポートごとに
対応して設けられ、第2の画素データバスを介して伝送
された動き予測用参照データを記憶する複数の第2の画
素データ記憶手段と、複数の第2の画素データ記憶手段
と接続されるアドレスバスと、第2のデータポートごと
に対応して設けられ、第2の画素データ記憶手段に記憶
され、第2の画素データバスを介して伝送された動き予
測用参照データを用いて動き予測処理を実行し、動き予
測用参照データの種類に応じた動きベクトルを生成する
複数の動き予測ユニットと、第1の画素データバス、画
素プロセッサ、複数の第2の画素データバス、アドレス
バス、および複数の動き予測ユニットについてのパイプ
ライン処理を制御するパイプライン制御プロセッサとを
含む。
The image data processing apparatus according to the twentieth aspect of the present invention transmits first pixel data storage means for storing pixel data to be compressed and pixel data stored in the first pixel data storage means. The first pixel data bus and the pixel data transmitted via the first pixel data bus are received, the motion prediction reference data is extracted using the transmitted pixel data, and the motion prediction reference data is extracted. A pixel processor having a first data port for outputting and a plurality of second data ports for dividing and outputting the reference data for motion prediction according to the type of reference data for motion prediction, and for each second data port A plurality of second pixel data buses that are provided corresponding to each other and transmit the motion prediction reference data output from the second data port, and are provided corresponding to each second data port. A plurality of second pixel data storage means for storing the reference data for motion prediction transmitted via the second pixel data bus, an address bus connected to the plurality of second pixel data storage means, and a second Corresponding to each data port, the motion prediction processing is executed by using the motion prediction reference data stored in the second pixel data storage means and transmitted via the second pixel data bus, Regarding a plurality of motion prediction units that generate a motion vector according to the type of prediction reference data, a first pixel data bus, a pixel processor, a plurality of second pixel data buses, an address bus, and a plurality of motion prediction units And a pipeline control processor for controlling the pipeline processing of the.

【0039】請求項21の発明に係る画像データ処理装
置は、圧縮されるべき画素データを記憶する第1の画素
データ記憶手段と、第1の画素データ記憶手段に記憶さ
れた画素データを伝送する第1の画素データバスと、第
1の画素データバスを介して伝送された画素データを受
け、伝送された画素データを用いて種類の異なる動き予
測用参照データを抽出し、かつ、動き予測用参照データ
を出力する第1のデータポートと、動き予測用参照デー
タの種類に応じて動き予測用参照データを出力する第2
のデータポートとを有する複数の画素プロセッサと、画
素プロセッサごとに対応して設けられ、第2のデータポ
ートから出力された動き予測用参照データを伝送する複
数の第2の画素データバスと、画素プロセッサごとに対
応して設けられ、第2の画素データバスを介して伝送さ
れた動き予測用参照データを記憶する第2の画素データ
記憶手段と、画素プロセッサごとに対応して設けられ、
第2の画素データ記憶手段に記憶され、第2の画素デー
タバスを介して伝送された動き予測用参照データを用い
て動き予測処理を実行し、動きベクトルを生成する複数
の動き予測ユニットと、第1の画素データバス、複数の
画素プロセッサ、複数の第2の画素データバス、および
複数の動き予測ユニットについてのパイプライン処理を
制御するパイプライン制御プロセッサとを含む。
An image data processing device according to a twenty-first aspect of the present invention transmits first pixel data storage means for storing pixel data to be compressed and pixel data stored in the first pixel data storage means. The first pixel data bus and the pixel data transmitted via the first pixel data bus are received, the different types of motion prediction reference data are extracted using the transmitted pixel data, and the motion prediction reference data is extracted. A first data port for outputting reference data and a second data port for outputting reference data for motion prediction according to the type of reference data for motion prediction
A plurality of pixel processors each having a data port, and a plurality of second pixel data buses provided corresponding to each pixel processor and transmitting the motion prediction reference data output from the second data port; Second pixel data storage means provided corresponding to each processor and storing the motion prediction reference data transmitted via the second pixel data bus, and provided corresponding to each pixel processor,
A plurality of motion prediction units that perform motion prediction processing using the motion prediction reference data stored in the second pixel data storage means and transmitted via the second pixel data bus; A first pixel data bus, a plurality of pixel processors, a plurality of second pixel data buses, and a pipeline control processor that controls pipeline processing for the plurality of motion prediction units.

【0040】請求項22の発明に係る画像データ処理装
置は、請求項19ないし請求項21の構成に加え、複数
の第2の画素データ記憶手段に記憶される動き予測用参
照データは、輝度成分と色差成分との種類の違いによっ
て、それぞれ異なる第2の画素データ記憶手段に記憶さ
れる。
In the image data processing apparatus according to the twenty-second aspect of the present invention, in addition to the configurations of the nineteenth to twenty-first aspects, the motion prediction reference data stored in the plurality of second pixel data storage means is a luminance component. Are stored in different second pixel data storage means depending on the types of the color difference component and the color difference component.

【0041】請求項23の発明に係る画像データ処理装
置は、画像データ圧縮および/または画像データ伸長の
ための予め定められた処理および画像データ転送につい
ての並列動作を制御する制御プロセッサと、各々が制御
プロセッサから与えられる制御信号に応答して、予め定
められた処理および画像データ転送の実行を個々に命令
する複数の実行命令手段と、制御プロセッサと複数の記
憶命令手段との間でデータを転送する第1データバス
と、複数の実行命令手段との間でデータを転送する第2
データバスとを含む。
The image data processing device according to the twenty-third aspect of the present invention comprises a control processor for controlling a predetermined process for image data compression and / or image data decompression and a parallel operation for image data transfer; Data is transferred between the control processor and the plurality of storage command means for individually instructing execution of predetermined processing and image data transfer in response to a control signal given from the control processor. A second data bus for transferring data between the first data bus and the plurality of execution instruction means
Including data bus.

【0042】請求項24の発明に係る画像データ処理装
置は、画像データ圧縮および/または画像データ伸長の
ための離散コサイン変換処理および/または逆離散コサ
イン変換処理、および、量子化処理および/または逆量
子化処理を実行する画像処理手段と、画像データ専用に
設けられた少なくとも2つのインタフェース手段と、画
像処理手段により処理された画像データ圧縮および/ま
たは画像データ伸長のためのデータを記憶する記憶手段
と、インタフェース手段と記憶手段との間でデータを転
送する1つのデータバスとを含む。
The image data processing device according to the twenty-fourth aspect of the present invention is a discrete cosine transform process and / or an inverse discrete cosine transform process for image data compression and / or image data decompression, and a quantization process and / or an inverse process. Image processing means for executing quantization processing, at least two interface means provided exclusively for image data, and storage means for storing data for image data compression and / or image data expansion processed by the image processing means. And a data bus for transferring data between the interface means and the storage means.

【0043】請求項25の発明に係る画像データ処理装
置は、画像データ圧縮および/または画像データ伸長の
ための離散コサイン変換処理および/または逆離散コサ
イン変換処理、および、量子化処理および/または逆量
子化処理を実行する画像処理手段と、画像データ専用に
設けられた少なくとも2つのインタフェース手段と、画
像処理手段より処理された画像データ圧縮および/また
は画像データ伸長のためのデータを記憶する記憶手段
と、インタフェース手段ごとに設けられ、インタフェー
ス手段の各々と記憶手段との間でデータを転送する複数
のデータバスとを含む。
The image data processing device according to the twenty-fifth aspect of the present invention is a discrete cosine transform process and / or an inverse discrete cosine transform process for image data compression and / or image data decompression, and a quantization process and / or an inverse process. Image processing means for executing quantization processing, at least two interface means provided exclusively for image data, and storage means for storing data for image data compression and / or image data expansion processed by the image processing means. And a plurality of data buses provided for each interface means and transferring data between each of the interface means and the storage means.

【0044】[0044]

【作用】請求項1の発明における画像データ処理装置で
は、画素プロセッサが画素データバスを介して伝送され
た画素データに対して離散コサイン変換処理および量子
化処理を実行し、一方、可変長符号化プロセッサが画素
符号バスを介して伝送された画素符号に対して可変長符
号化処理を実行する。パイプライン制御プロセッサは、
これらのプロセッサによる処理およびバスを介してのデ
ータ転送におけるパイプライン処理を制御するので、画
像データの圧縮処理が高速に行なわれ得る。
In the image data processing apparatus according to the present invention, the pixel processor executes the discrete cosine transform processing and the quantization processing on the pixel data transmitted via the pixel data bus, while the variable length coding is performed. A processor performs a variable length coding process on the pixel code transmitted via the pixel code bus. The pipeline control processor is
Since the processing by these processors and the pipeline processing in the data transfer via the bus are controlled, the compression processing of the image data can be performed at high speed.

【0045】請求項2の発明における画像データ処理装
置では、可変長復号化プロセッサが可変長符号バスを介
して伝送された可変長符号に対し可変長復号化処理を実
行し、一方、画素プロセッサが画素符号バスを介して伝
送された画素符号に対し逆量子化処理および逆離散コサ
イン変換処理を実行する。パイプライン制御プロセッサ
は、これらのプロセッサによる処理およびバスを介して
のデータ転送におけるパイプライン処理を制御するの
で、画像データの伸張処理が高速に行なわれ得る。
In the image data processing device according to the second aspect of the present invention, the variable length decoding processor executes the variable length decoding process on the variable length code transmitted via the variable length code bus, while the pixel processor Inverse quantization processing and inverse discrete cosine transform processing are performed on the pixel code transmitted via the pixel code bus. Since the pipeline control processor controls the processing by these processors and the pipeline processing in the data transfer via the bus, the decompression processing of the image data can be performed at high speed.

【0046】請求項3の発明における画像データ処理装
置では、パイプライン制御プロセッサが、画素プロセッ
サ,可変長プロセッサ,第1および第2のデータバスに
ついてのパイプライン処理を制御するので、画像データ
の圧縮および/または伸張処理が高速に行なわれ得る。
In the image data processing device according to the third aspect of the present invention, the pipeline control processor controls the pipeline processing for the pixel processor, the variable length processor, and the first and second data buses. And / or the decompression process can be performed at high speed.

【0047】請求項4の発明における画像データ処理装
置では、アクセス制御手段が第1ないし第4のアクセス
手段に対しアクセス動作の開始を個々に制御する。した
がって、第1ないし第4の記憶手段に対するアクセスが
個々に行なわれ得るので、画像データ処理において使用
されるデータが高速に転送され、画像データ処理が高速
に行なわれ得る。
In the image data processing device according to the fourth aspect of the invention, the access control means individually controls the start of the access operation for the first to fourth access means. Therefore, since the first to fourth storage means can be individually accessed, the data used in the image data processing can be transferred at high speed, and the image data processing can be executed at high speed.

【0048】請求項5の発明における画像データ処理装
置では、制御プロセッサが画像データ圧縮および/また
は画像データ伸張のための複数の予め定められた処理に
ついてのパイプライン処理を制御するので、画像データ
処理が高速に行なわれ得る。
In the image data processing device according to the fifth aspect of the present invention, the control processor controls the pipeline processing for a plurality of predetermined processings for image data compression and / or image data expansion. Can be done at high speed.

【0049】請求項6の発明における画像データ処理装
置では、パイプライン処理制御プロセッサが画像データ
圧縮および/または画像データ伸張のための離散コサイ
ン変換処理,量子化処理および可変長データ処理につい
てのパイプライン処理を制御するので、画像データ処理
が高速に行なわれ得る。
In the image data processing apparatus according to the invention of claim 6, the pipeline processing control processor has a pipeline for discrete cosine transform processing, quantization processing and variable length data processing for image data compression and / or image data expansion. Since the processing is controlled, the image data processing can be performed at high speed.

【0050】請求項7の発明における画像データ処理装
置では、制御プロセッサが画像データ圧縮および/また
は画像データ伸張のための複数の予め定められた処理お
よび画像データ転送についての並列動作を制御する。複
数の実行命令手段が、制御プロセッサから与えられる制
御信号に応答して、これらの動作の実行を個々に命令す
るので、画像データ処理が高速に行なわれ得る。
In the image data processing device according to the seventh aspect of the present invention, the control processor controls a plurality of predetermined processes for image data compression and / or image data expansion and parallel operations for image data transfer. Since the plurality of execution instruction means individually instruct execution of these operations in response to the control signal given from the control processor, the image data processing can be performed at high speed.

【0051】請求項8の発明における画像データ処理装
置では、選択手段が、読出手段から出力される等長処理
符号フラグに応答して、可変長符号および等長符号の一
方を選択するので、プログラムによる判断処理が極めて
簡単化され、画像データ処理が高速に行なわれ得る。
In the image data processing device according to the present invention, the selecting means selects one of the variable length code and the equal length code in response to the equal length processing code flag output from the reading means. The determination process by means of is extremely simplified, and image data processing can be performed at high speed.

【0052】請求項9の発明における画像データ処理装
置では、選択手段が、読出手段から出力される等長処理
フラグに応答して、ランデータおよびレベルデータなら
びに復号データの一方を選択するので、プログラムによ
る判断処理が極めて簡単化され、画像データ処理が高速
に行なわれ得る。
In the image data processing device according to the invention of claim 9, the selecting means selects one of the run data, the level data and the decoded data in response to the equal length processing flag outputted from the reading means. The determination process by means of is extremely simplified, and image data processing can be performed at high speed.

【0053】請求項10の発明における画像データ処理
装置では、1つの行アドレス信号および1つの列アドレ
ス信号に応答してn個のメモリセルアレイから読出され
るn個の画素データが、画面において垂直方向に置かれ
た複数の画素を規定している。アドレス信号発生手段
が、シリアルクロック信号に応答して、列アドレス信号
をシリアルに出力するので、画面内の所望の領域につい
ての画素データを短時間でアクセスできる。したがっ
て、画像データ処理が高速に行なわれ得る。
In the image data processing device according to the tenth aspect of the present invention, n pixel data read from the n memory cell arrays in response to one row address signal and one column address signal are read in the vertical direction on the screen. It defines a plurality of pixels placed in. Since the address signal generating means serially outputs the column address signal in response to the serial clock signal, it is possible to access the pixel data for a desired area in the screen in a short time. Therefore, image data processing can be performed at high speed.

【0054】請求項11の発明における画像データ処理
装置では、1つの行アドレス信号および1つの列アドレ
ス信号に応答してn個のメモリセルアレイから読出され
るn個の画素データが、画面において水平方向に置かれ
た複数の画素を規定している。アドレス信号発生手段
が、シリアルクロック信号に応答して、列アドレス信号
をシリアルに出力するので、画面内の所望の領域につい
ての画素データを短時間でアクセスできる。したがっ
て、画像データ処理が高速に行なわれ得る。
According to the eleventh aspect of the present invention, in the image data processing device, n pixel data read out from the n memory cell arrays in response to one row address signal and one column address signal are horizontally arranged on the screen. It defines a plurality of pixels placed in. Since the address signal generating means serially outputs the column address signal in response to the serial clock signal, it is possible to access the pixel data for a desired area in the screen in a short time. Therefore, image data processing can be performed at high speed.

【0055】請求項12の発明における画像データ処理
方法では、複数のマクロブロックデータについてのすべ
ての処理が、パイプライン処理の下で行なわれるので、
画像データの圧縮処理が高速に行なわれ得る。
In the image data processing method according to the twelfth aspect of the invention, all the processing for a plurality of macroblock data is performed under pipeline processing.
The compression processing of image data can be performed at high speed.

【0056】請求項13の発明における画像データ処理
方法では、複数の可変長符号を含む可変長符号列につい
ての復号化処理がパイプライン処理の下で行なわれるの
で、画像データの伸張処理が高速に行なわれ得る。
In the image data processing method according to the thirteenth aspect of the present invention, since the decoding process for the variable length code string including a plurality of variable length codes is performed under the pipeline process, the image data decompression process is performed at high speed. Can be done.

【0057】請求項14の発明における画像データ処理
方法では、2次元的に隣接し、かつ正方形に近い矩形領
域に含まれる複数の第2画素データを1つのデータとし
て、1つのアドレスを与えて転送しているので、正方形
に近い矩形領域内の第1画素データを転送する際の転送
回数が削減される。
In the image data processing method according to the fourteenth aspect of the present invention, a plurality of second pixel data which are two-dimensionally adjacent to each other and which are included in a rectangular area close to a square are used as one data and are transferred by giving one address. Therefore, the number of times of transfer when transferring the first pixel data in the rectangular area close to the square is reduced.

【0058】請求項15の発明における画像データ処理
方法では、互いに関連する第1および第2色差画素デー
タを転送単位で交互にマッピングさせ、この転送単位で
第1または第2の色差データを転送しているので、1回
のアドレス生成で所定範囲の第1および第2色差画素デ
ータを転送することができる。
In the image data processing method of the fifteenth aspect of the present invention, the first and second color difference pixel data associated with each other are alternately mapped in the transfer unit, and the first or second color difference data is transferred in the transfer unit. Therefore, it is possible to transfer the first and second color difference pixel data within a predetermined range with one address generation.

【0059】請求項16の発明における画像データ処理
方法では、互いに連関を有する第1および第2色差画素
データを同数ずつ合わせた第3色差画素データを1つの
データとして記憶手段にマッピングさせ、この第3色差
画素データを1つのデータとして転送しているので、1
回のアドレス生成で所定範囲の第1および第2色差画素
データを転送することができる。
In the image data processing method according to the sixteenth aspect of the present invention, the third color difference pixel data obtained by combining the same number of first and second color difference pixel data associated with each other is mapped as one data in the storage means, and Since three color difference pixel data are transferred as one data,
It is possible to transfer the first and second color difference pixel data within a predetermined range by generating the address once.

【0060】請求項17ないし請求項18の発明におけ
る画像データ処理装置では、画素プロセッサが動き予測
用参照データを第1のデータポートと、第2のデータポ
ートとにより出力し、第1の画素データ記憶手段と第2
の画素データ記憶手段にそれぞれ記憶させ、第2の画素
記憶手段に記憶された動き予測用参照データは、第2の
画素データバスを介して動き予測ユニットに伝送され、
動き予測ユニットで動き予測処理を実行し、動きベクト
ルを生成する。
In the image data processing device according to the seventeenth to eighteenth aspects, the pixel processor outputs the motion prediction reference data through the first data port and the second data port, and the first pixel data is output. Storage means and second
The motion prediction reference data stored in the second pixel data storage means and stored in the second pixel storage means are transmitted to the motion prediction unit via the second pixel data bus,
A motion prediction process is executed in the motion prediction unit to generate a motion vector.

【0061】請求項19ないし請求項20の発明におけ
る画像データ処理装置では、画素プロセッサが、複数の
第2のデータポートを有し、複数の第2のデータポート
ごとに対応して設けられた複数の第2の画素データバス
が、動き予測用参照データを分割して転送し、それぞれ
の第2画素データバスに接続される第2の画素データ記
憶手段に分割された動き予測用参照データが記憶され、
それぞれの第2の画素データバスに接続される動き予測
ユニットで動き予測処理が実行され、動きベクトルが生
成される。
In the image data processing device according to the nineteenth to twentieth aspects of the present invention, the pixel processor has a plurality of second data ports, and the plurality of second data ports are provided corresponding to the plurality of second data ports. Second pixel data bus divides and transfers the motion prediction reference data, and the divided motion prediction reference data is stored in the second pixel data storage means connected to each second pixel data bus. Is
A motion prediction process is executed in the motion prediction unit connected to each second pixel data bus to generate a motion vector.

【0062】請求項21の発明における画像データ処理
装置では、複数の画素プロセッサが、それぞれ第2のデ
ータポートを有し、それぞれの第2のデータポートに対
応して設けられた第2の画素データバスが、動き予測用
参照データを分割して転送し、それぞれの第2画素デー
タバスに接続される第2の画素データ記憶手段に分割さ
れた動き予測用参照データが記憶され、それぞれの第2
の画素データバスに接続される動き予測ユニットで動き
予測処理を実行し、動きベクトルを生成する。
In the image data processing device according to the twenty-first aspect of the present invention, the plurality of pixel processors each have a second data port, and the second pixel data provided corresponding to each second data port. The bus divides and transfers the motion prediction reference data, and the divided motion prediction reference data is stored in the second pixel data storage means connected to each second pixel data bus.
The motion prediction unit connected to the pixel data bus of 1 performs motion prediction processing to generate a motion vector.

【0063】請求項22の発明における画像データ処理
装置では、複数の第2の画素データ記憶手段に輝度成分
と色差成分との種類の違いに応じた種類の異なる動き予
測用参照データが記憶される。
In the image data processing device according to the twenty-second aspect of the invention, the plurality of second pixel data storage means store different types of motion prediction reference data according to the difference in the types of the luminance component and the color difference component. .

【0064】請求項23の発明における画像データ処理
装置では、画素プロセッサが画像データ圧縮および/ま
たは画像データ伸長のための複数の予め定められた処理
および画像データ転送についての制御をする。複数の実
行命令手段は、制御プロセッサから与えられる制御信号
に応答して、これらの動作の実行を個々に命令するとと
もに、第1および第2データバスにより制御プロセッサ
と複数の実行命令手段との間および複数の実行命令手段
との間でデータ転送を並列に実行することができるの
で、画像データ処理が高速に行なわれ得る。
In the image data processing device of the twenty-third aspect of the invention, the pixel processor controls a plurality of predetermined processes for image data compression and / or image data expansion and image data transfer. The plurality of execution instruction means individually instruct execution of these operations in response to a control signal given from the control processor, and the first and second data buses are provided between the control processor and the plurality of execution instruction means. Since the data transfer can be executed in parallel with the plurality of execution instruction means, the image data processing can be performed at high speed.

【0065】請求項24ないし請求項25の発明におけ
る画像データ処理装置では、少なくとも2つのインタフ
ェース手段によりデータを並列に外部装置へ転送するこ
とができるので、画像データ処理が高速に行なわれ得
る。
In the image data processing device according to the twenty-fourth to twenty-fifth aspects of the present invention, since the data can be transferred in parallel to the external device by at least two interface means, the image data processing can be performed at high speed.

【0066】[0066]

【実施例】以下では、この発明の第1ないし第15実施
例を示す画像圧縮/伸張処理装置(または画像圧縮/伸
張処理システム)が記載される。最初にこれらの実施例
におけるシステム構成が説明され、その後システムを構
成する内部構成が説明される。
The image compression / expansion processing apparatus (or image compression / expansion processing system) showing the first to fifteenth embodiments of the present invention will be described below. First, the system configuration of these embodiments will be described, and then the internal configuration of the system will be described.

【0067】1.システム構成 (1) 第1実施例 図1は、この発明の第1実施例を示す画像圧縮/伸張処
理装置101のブロック図である。図1を参照して、画
像圧縮/伸張処理装置101は、ホストコンピュータ9
3との入出力のためのホストインターフェイス(I/
F)回路1と、2つのプロセッサ(図示せず)を備えた
コントロールユニット2と、DCTおよび量子化のため
のピクセルプロセシングユニット3と、動き予測(また
は検出)ユニット41と、処理されるべき画像データを
記憶するフレームバッファメモリ51と、コードデータ
を記憶するバッファメモリ6と、様々な変換処理におい
て必要なテーブルデータを記憶するワークメモリ7と、
テレビカメラ91からの画像データを記憶しおよび/ま
たは記憶された画像データを表示装置(CRT)92に
与えるための入出力メモリ81とを含む。
1. System Configuration (1) First Embodiment FIG. 1 is a block diagram of an image compression / expansion processing device 101 showing a first embodiment of the present invention. Referring to FIG. 1, the image compression / expansion processing device 101 includes a host computer 9
Host interface (I /
F) Circuit 1, control unit 2 with two processors (not shown), pixel processing unit 3 for DCT and quantization, motion prediction (or detection) unit 41, image to be processed A frame buffer memory 51 for storing data, a buffer memory 6 for storing code data, a work memory 7 for storing table data necessary for various conversion processes,
And an input / output memory 81 for storing image data from the television camera 91 and / or supplying the stored image data to a display device (CRT) 92.

【0068】ホストバスHBは、24ビット(図中「2
4b」により示す)のバス幅を有しており、ホストイン
ターフェイス回路1,コントロールユニット2,ピクセ
ルプロセシングユニット3,バッファメモリ6およびワ
ークメモリ7の間のデータ転送のために設けられる。ピ
クセルデータバスPBは、32ビット(32b)のバス
幅を有し、コントロールユニット2,ピクセルプロセシ
ングユニット3,動き予測ユニット41およびフレーム
バッファメモリ51の間のデータ転送のために設けられ
る。コードデータバスCBは、16ビット(16b)の
バス幅を有し、コントロールユニット2,ピクセルプロ
セシングユニット3およびバッファメモリ6の間のコー
ドデータ転送のために設けられる。入出力バスIOB
は、24ビット(24b)のバス幅を有し、コントロー
ルユニット2と入出力メモリ81との間のデータ転送の
ために設けられる。
The host bus HB has 24 bits ("2" in the figure).
4b ”) and is provided for data transfer between the host interface circuit 1, the control unit 2, the pixel processing unit 3, the buffer memory 6 and the work memory 7. The pixel data bus PB has a bus width of 32 bits (32b) and is provided for data transfer between the control unit 2, the pixel processing unit 3, the motion prediction unit 41 and the frame buffer memory 51. The code data bus CB has a bus width of 16 bits (16b) and is provided for code data transfer between the control unit 2, the pixel processing unit 3 and the buffer memory 6. I / O bus IOB
Has a bus width of 24 bits (24b) and is provided for data transfer between the control unit 2 and the input / output memory 81.

【0069】ホストインターフェイス回路1は、汎用ロ
ジックLSI(ディスクリート)またはPLDまたはF
PGAなどのようなプログラマブルロジックデバイスに
より構成された論理回路を備えている。フレームバッフ
ァメモリ5は、主として、圧縮されるべき画像データお
よび参照されるべき画像データを一時的に記憶するため
に設けられる。フレームバッファメモリ51として、ス
タティックランダムアクセスメモリ(SRAM),ダイ
ナミックランダムアクセスメモリ(DRAM),シンク
ロナスDRAMおよびキャッシュDRAMなどのような
大容量メモリが用いられる。
The host interface circuit 1 is a general-purpose logic LSI (discrete), PLD or F.
It has a logic circuit configured by a programmable logic device such as PGA. The frame buffer memory 5 is mainly provided for temporarily storing image data to be compressed and image data to be referred to. As the frame buffer memory 51, a large capacity memory such as a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous DRAM or a cache DRAM is used.

【0070】バッファメモリ6は、画像の符号化により
得られたビットストリームデータおよびラン/レベルデ
ータを一時的に記憶するために設けられる。バッファメ
モリ6は、ファーストインファーストアウト(FIF
O)メモリにより構成されるが、場合により、DRAM
またはSRAMが用いられる。
The buffer memory 6 is provided for temporarily storing bit stream data and run / level data obtained by encoding the image. The buffer memory 6 is a first-in first-out (FIF
O) is composed of memory, but in some cases DRAM
Alternatively, SRAM is used.

【0071】ワークメモリ7は、DCT/逆DCTテー
ブルデータ,量子化/逆量子化テーブルデータ,可変長
処理のためのハフマンテーブルデータ,コントロールユ
ニット2およびピクセルプロセシングユニット3におけ
る処理のためのプログラム(マイクロコード),初期設
定用データなどを記憶するために設けられる。ワークメ
モリ7は、SRAMにより構成される。
The work memory 7 includes DCT / inverse DCT table data, quantization / inverse quantization table data, Huffman table data for variable length processing, programs for processing in the control unit 2 and the pixel processing unit 3 (micro Code), initial setting data, and the like. The work memory 7 is composed of SRAM.

【0072】入出力メモリ81は、テレビカメラ91お
よび/または表示装置92のための画像データを記憶す
るために設けられる。入出力メモリ81は、ビデオRA
Mにより構成される。
The input / output memory 81 is provided to store image data for the television camera 91 and / or the display device 92. The input / output memory 81 is a video RA
It is composed of M.

【0073】コントロールユニット2は、全体制御のた
めのマイクロプロセッサ(図示せず)と、可変長処理の
ためのプロセッサ(図示せず)とを備えている。全体制
御のためのプロセッサは、画像圧縮におけるDCT,量
子化,可変長符号化についてのパイプライン処理ならび
に画像伸張における可変長復号化,逆量子化および逆D
CTのためのパイプライン処理を制御する。
The control unit 2 includes a microprocessor (not shown) for overall control and a processor (not shown) for variable length processing. The processor for overall control includes DCT in image compression, quantization, pipeline processing for variable length coding, and variable length decoding in image expansion, inverse quantization and inverse D.
Controls pipeline processing for CT.

【0074】ピクセルプロセシングユニット3は、画像
圧縮におけるDCTおよび量子化処理等の画素演算を実
行し、一方、画像伸張において逆量子化処理および逆D
CT処理等を実行する。
The pixel processing unit 3 executes pixel operations such as DCT and quantization in image compression, while inverse quantization and inverse D in image expansion.
Execute CT processing and the like.

【0075】動き予測ユニット41は、片方向および両
方向についてのフレーム間予測などのような動き検出処
理を実行する。
The motion prediction unit 41 executes motion detection processing such as interframe prediction in one direction and both directions.

【0076】図2は、図1に示した画像圧縮/伸張処理
装置101における画像圧縮処理を示す処理ダイヤグラ
ムである。図2では、一例として、MPEG規格におい
て規定された符号化方式が示されている。
FIG. 2 is a processing diagram showing the image compression processing in the image compression / expansion processing apparatus 101 shown in FIG. FIG. 2 shows, as an example, an encoding method defined in the MPEG standard.

【0077】図2を参照して、圧縮されるべき画像デー
タIDは、減算器921および切換器922を介してD
CT処理器923に与えられる。DCT処理の後、量子
化器924により量子化処理が行なわれる。量子化され
たデータは可変長符号化処理器925に与えられ、可変
長符号処理がなされた後、符号化されたデータがバッフ
ァ926を介して圧縮された画像データVDとして出力
される。
With reference to FIG. 2, the image data ID to be compressed is D through the subtractor 921 and the switch 922.
It is given to the CT processor 923. After the DCT processing, the quantizer 924 performs the quantization processing. The quantized data is supplied to the variable length coding processor 925, subjected to the variable length coding process, and then the coded data is output via the buffer 926 as the compressed image data VD.

【0078】一方、量子化されたデータは逆量子化器お
よび逆DCT処理器にも与えられ、動き予測のための逆
量子化処理および逆DCT処理が行なわれる。逆DCT
処理器の出力データは加算器929に与えられる。
On the other hand, the quantized data is also given to the inverse quantizer and the inverse DCT processor, and the inverse quantization processing and the inverse DCT processing for motion prediction are performed. Inverse DCT
The output data of the processor is given to the adder 929.

【0079】画像データIDは動き予測器930にも与
えられ、予測処理されたデータは加算器929に与えら
れる。加算器929の出力データは切換器931を介し
て減算器921および動き予測器930に与えられる。
切換器922および931による切換動作により、動き
予測を考慮に入れた画像圧縮処理が行なわれる。
The image data ID is also given to the motion predictor 930, and the data subjected to the prediction processing is given to the adder 929. The output data of the adder 929 is given to the subtractor 921 and the motion predictor 930 via the switch 931.
By the switching operation by the switching devices 922 and 931, the image compression processing in which the motion prediction is taken into consideration is performed.

【0080】図3は、図1に示した画像圧縮/伸張処理
装置101における画像伸張処理を示す処理ダイヤグラ
ムである。図3を参照して、可変長符号データVDは、
バッファ911を介して可変長復号化処理器912に与
えられる。可変長復号化処理の後、コードデータが逆量
子化器913に与えられ、逆量子化処理が行なわれる。
逆量子化処理の後、逆DCT処理器914により逆DC
T処理が行なわれ、処理されたデータが加算器915に
与えられる。加算器915は、その出力データについて
動き予測処理されたデータについても加算処理を行な
い、伸張された画像データIDを出力する。
FIG. 3 is a processing diagram showing the image expansion processing in the image compression / expansion processing device 101 shown in FIG. Referring to FIG. 3, the variable length code data VD is
It is given to the variable length decoding processor 912 via the buffer 911. After the variable length decoding process, the code data is given to the inverse quantizer 913, and the inverse quantization process is performed.
After the inverse quantization process, the inverse DCT processor 914 performs inverse DC
T processing is performed, and the processed data is given to the adder 915. The adder 915 also performs addition processing on the data subjected to motion prediction processing on the output data, and outputs the expanded image data ID.

【0081】図2および図3に示した処理は、基本的に
MPEG規格において規定されているものであるが、こ
れらの画像圧縮および画像伸張処理が図1に示した画像
圧縮/伸張処理装置101において、後で説明するパイ
プライン処理の制御の下で効率的に行なわれ得る。
The processing shown in FIGS. 2 and 3 is basically defined by the MPEG standard. The image compression / expansion processing is performed by the image compression / expansion processing device 101 shown in FIG. In, it can be efficiently performed under the control of the pipeline processing described later.

【0082】(2) 第2実施例 図4は、この発明の第2実施例を示す画像圧縮/伸張処
理装置102のブロック図である。図1に示した画像圧
縮/伸張処理装置101と比較すると、図4に示した画
像圧縮/伸張処理装置102は、動き予測ユニット41
が除かれている。すなわち、図4に示した実施例では、
動画の復号処理および静止画の符号化処理および復号化
処理が行なわれ得る。動画の復号処理は、符号化処理の
逆処理であるが、動き予測処理が含まれておらず、動き
ベクトルを受けて予測画像を生成する動き復号処理が追
加される。
(2) Second Embodiment FIG. 4 is a block diagram of an image compression / expansion processing apparatus 102 showing a second embodiment of the present invention. Compared with the image compression / expansion processing apparatus 101 shown in FIG. 1, the image compression / expansion processing apparatus 102 shown in FIG.
Are excluded. That is, in the embodiment shown in FIG.
A moving image decoding process and a still image encoding process and a decoding process may be performed. The moving image decoding process is the reverse process of the encoding process, but does not include the motion prediction process, and a motion decoding process of receiving a motion vector and generating a predicted image is added.

【0083】(3) 第3実施例 図5は、この発明の第3実施例を示す画像圧縮/伸張処
理装置103のブロック図である。図5を参照して、図
1に示した画像圧縮/伸張処理装置101と比較する
と、この画像圧縮/伸張処理装置103は、ピクセルデ
ータバスPBに接続された入出力メモリ82を備えてい
る。すなわち、入出力メモリ82は、ピクセルデータバ
スPBを介してコントロールユニット2に接続される。
これにより、コントロールユニット2において、入出力
メモリ82およびフレームバッファメモリ6が共通のア
ドレス空間上にマッピングされることとなり、コントロ
ールユニット2における入出力用インターフェイス回路
(入出力ポート)の数を減少させることができる。
(3) Third Embodiment FIG. 5 is a block diagram of an image compression / expansion processor 103 showing a third embodiment of the present invention. As compared with the image compression / expansion processing apparatus 101 shown in FIG. 1 with reference to FIG. 5, this image compression / expansion processing apparatus 103 includes an input / output memory 82 connected to the pixel data bus PB. That is, the input / output memory 82 is connected to the control unit 2 via the pixel data bus PB.
As a result, in the control unit 2, the input / output memory 82 and the frame buffer memory 6 are mapped on a common address space, and the number of input / output interface circuits (input / output ports) in the control unit 2 is reduced. You can

【0084】(4) 第4実施例 図6は、この発明の第4実施例を示す画像圧縮/伸張処
理装置104のブロック図である。図6を参照して、図
1に示した画像圧縮/伸張処理装置101と比較する
と、画像圧縮/伸張処理装置104は、前方向および後
ろ方向についての動き予測を並列に(または同時に)実
行することができる両方向動き予測ユニット42を備え
ている。すなわち、両方向動き予測ユニット42は、前
方向についての動き予測処理のための動き予測ユニット
43と、後ろ方向についての動き予測処理のための動き
予測ユニット44とを備える。動き予測ユニット43お
よび44は、ピクセルデータバスPBに接続される。
(4) Fourth Embodiment FIG. 6 is a block diagram of an image compression / expansion processor 104 showing a fourth embodiment of the present invention. Referring to FIG. 6, compared with the image compression / expansion processing apparatus 101 shown in FIG. 1, the image compression / expansion processing apparatus 104 executes motion prediction in the forward direction and the backward direction in parallel (or simultaneously). A bi-directional motion estimation unit 42 is provided. That is, the bidirectional motion prediction unit 42 includes a motion prediction unit 43 for motion prediction processing in the forward direction and a motion prediction unit 44 for motion prediction processing in the backward direction. The motion estimation units 43 and 44 are connected to the pixel data bus PB.

【0085】2つの動き予測ユニット43および44を
用いて前方向および後ろ方向の動き予測処理が並列に、
すなわち同時に実行され得るので、両方向動き予測処理
が短時間で効率よく行なわれ得る。
The forward and backward motion prediction processes are performed in parallel using the two motion prediction units 43 and 44.
That is, since they can be executed simultaneously, the bidirectional motion prediction processing can be efficiently performed in a short time.

【0086】(5) 第5実施例 図7は、この発明の第5実施例を示す画像圧縮/伸張処
理装置105のブロック図である。図1に示した画像圧
縮/伸張処理装置101と比較すると、この画像圧縮/
伸張処理装置105は、両方向についての動き予測処理
を同時に行なうことができる動き予測ユニット45と、
各々がピクセルデータバスPBに接続された2つのフレ
ームバッファメモリ52および53とを備えている。動
き予測ユニット45は、両方向の予測処理を同時に実行
することができるので、前および後ろの一方の予測処理
に要する時間で両方向予測処理が行なわれ得る。動き予
測ユニット45は、2つの入出力ポートを有しており、
一方の入出力ポートはピクセルデータバスPBに接続さ
れ、他方の入出力ポートはローカルバスLB1を介して
フレームバッファメモリ53に接続される。
(5) Fifth Embodiment FIG. 7 is a block diagram of an image compression / expansion processor 105 showing a fifth embodiment of the present invention. Compared with the image compression / expansion processing device 101 shown in FIG.
The decompression processing device 105 includes a motion prediction unit 45 capable of simultaneously performing motion prediction processing in both directions,
There are two frame buffer memories 52 and 53 each connected to the pixel data bus PB. Since the motion prediction unit 45 can execute the bidirectional prediction process at the same time, the bidirectional prediction process can be performed in the time required for one of the previous and the subsequent prediction processes. The motion prediction unit 45 has two input / output ports,
One input / output port is connected to the pixel data bus PB, and the other input / output port is connected to the frame buffer memory 53 via the local bus LB1.

【0087】2つのフレームバッファメモリ52および
53の一方は、前方向の動き予測処理用のフレームメモ
リとして使用され、他方のフレームバッファメモリは後
ろ方向の動き予測処理用のフレームメモリとして使用さ
れる。リファレンス画像データは、ピクセルデータバス
PBおよびローカルバスLB1を介して転送される。テ
ンプレート画像データおよび動きベクトルデータは、第
2のローカルバスLB2を介して動き予測ユニット45
からコントロールユニット2に転送される。
One of the two frame buffer memories 52 and 53 is used as a frame memory for forward motion prediction processing, and the other frame buffer memory is used as a frame memory for backward motion prediction processing. The reference image data is transferred via the pixel data bus PB and the local bus LB1. The template image data and the motion vector data are transferred to the motion prediction unit 45 via the second local bus LB2.
Is transferred to the control unit 2.

【0088】(6) 第6実施例 図8は、この発明の第6実施例を示す画像圧縮/伸張処
理装置106のブロック図である。図1に示した画像圧
縮/伸張処理装置101と比較すると、この画像圧縮/
伸張処理装置106は、2つの入出力ポートを有する動
き予測ユニット46を備える。動き予測ユニット46
は、第1の入出力ポートがピクセルデータバスPBに接
続され、一方、第2の入出力ポートはローカルバスLB
3を介してコントロールユニット2に接続される。動き
予測ユニット46は、動き予測処理により得られる動き
ベクトルデータをローカルバスLB3を介してコントロ
ールユニット2に直接に与える。動きベクトルデータは
8ビットの信号により構成されるので、ローカルバスL
B3は8ビットのバス幅を有している。ローカルバスL
B3を介して動きベクトルデータが直接にコントロール
ユニット2に与えられ得るので、画像圧縮/伸張処理装
置106における並列処理がより向上され、その結果、
画像圧縮/伸張処理がより高速で効率的に行なわれ得
る。
(6) Sixth Embodiment FIG. 8 is a block diagram of an image compression / expansion processor 106 showing a sixth embodiment of the present invention. Compared with the image compression / expansion processing device 101 shown in FIG.
The decompression processing device 106 includes a motion prediction unit 46 having two input / output ports. Motion estimation unit 46
Has a first input / output port connected to the pixel data bus PB, while a second input / output port has a local bus LB.
It is connected to the control unit 2 via 3. The motion prediction unit 46 directly gives the motion vector data obtained by the motion prediction processing to the control unit 2 via the local bus LB3. Since the motion vector data is composed of 8-bit signals, the local bus L
B3 has a bus width of 8 bits. Local bus L
Since the motion vector data can be directly given to the control unit 2 via B3, the parallel processing in the image compression / expansion processing device 106 is further improved, and as a result,
The image compression / decompression process can be performed faster and more efficiently.

【0089】図4ないし図8に示した画像圧縮/伸張処
理装置102ないし106は、いずれも基本的に図1に
示した画像圧縮/伸張処理装置101と同様の動作を行
なう。すなわち、第2ないし第6のいずれの実施例にお
いても、図2および図3に示した画像圧縮/伸張処理
が、パイプライン処理のための制御の下で実行される。
これにより、画像圧縮/伸張処理が高速で効率的に行な
われ得ることが指摘される。なお、パイプライン処理に
ついての詳細は、後で図11および図12を参照して説
明される。
The image compression / expansion processing devices 102 to 106 shown in FIGS. 4 to 8 basically perform the same operations as the image compression / expansion processing device 101 shown in FIG. That is, in any of the second to sixth embodiments, the image compression / expansion processing shown in FIGS. 2 and 3 is executed under the control for the pipeline processing.
It is pointed out that this allows the image compression / decompression process to be performed quickly and efficiently. The details of the pipeline processing will be described later with reference to FIGS. 11 and 12.

【0090】次に、上記の第6実施例の画像圧縮/伸長
処理装置106の画像データ転送処理におけるピクセル
データバスPBを介してデータ転送を行なう部分の画像
符号化処理における画像データ転送、および1つのマク
ロブロックの画像データを処理する際の画像データ転送
量について具体的に説明する。
Next, the image data transfer in the image encoding process of the portion which transfers the data via the pixel data bus PB in the image data transfer process of the image compression / expansion processor 106 of the sixth embodiment, and 1 The image data transfer amount when processing the image data of one macroblock will be specifically described.

【0091】ここで、符号化対象画像データは、既にフ
レームバッファメモリ51に保持されているものと仮定
する。また、データ転送量を求める前提として、画像フ
ォーマットは4:2:0、動き検出範囲は±16画素、
ストラクチャーはフレームとする。
Here, it is assumed that the image data to be encoded is already held in the frame buffer memory 51. As a premise for obtaining the data transfer amount, the image format is 4: 2: 0, the motion detection range is ± 16 pixels,
The structure is a frame.

【0092】なお、各ユニットはコントロールユニット
2の制御によって、ピクセルデータバスPBへの画像デ
ータの出力およびピクセルデータバスPBからの画像デ
ータの入力を実行する。各ユニットの動作タイミングも
コントロールユニット2によって管理される。
Under the control of the control unit 2, each unit outputs image data to the pixel data bus PB and inputs image data from the pixel data bus PB. The operation timing of each unit is also managed by the control unit 2.

【0093】まず、原画像データをコントロールユニッ
ト2からピクセルデータバスPBを介してフレームバッ
ファメモリ51へ転送する。このとき、転送される画像
データ量は、384画素である。
First, the original image data is transferred from the control unit 2 to the frame buffer memory 51 via the pixel data bus PB. At this time, the amount of image data transferred is 384 pixels.

【0094】次に、動き予測を行なうために動き検索範
囲の参照画像(再生画像)の輝度成分をフレームバッフ
ァメモリ51からピクセルデータバスPBを介して動き
予測ユニット46へ転送する。このとき、転送する画像
データ量は、1面の参照画像につき768画素である。
よって、両方向予測時には、2面分の1536画素を転
送する必要がある。
Next, the luminance component of the reference image (reproduced image) in the motion search range is transferred from the frame buffer memory 51 to the motion prediction unit 46 via the pixel data bus PB for motion prediction. At this time, the amount of image data to be transferred is 768 pixels for one reference image.
Therefore, in bidirectional prediction, it is necessary to transfer 1536 pixels for two planes.

【0095】次に、動き予測を行なうために符号化対象
画像の輝度成分をフレームバッファメモリ51からピク
セルデータバスPBを介してコントロールユニット2に
転送する。次に、上記輝度成分をコントロールユニット
2からローカルバスLB3を介して動き予測ユニット4
6へ転送する。このとき、転送する画像データ量は、2
56画素である。
Next, the luminance component of the image to be coded is transferred from the frame buffer memory 51 to the control unit 2 via the pixel data bus PB for motion estimation. Next, the above-mentioned luminance component is sent from the control unit 2 via the local bus LB3 to the motion prediction unit 4
Transfer to 6. At this time, the amount of image data to be transferred is 2
It has 56 pixels.

【0096】動き予測処理が終了し、その結果を用いた
符号化判定によってフレーム間予測を行なう場合、符号
化処理のために予測画像(再生画像)データをフレーム
バッファメモリ51からピクセルデータバスPBを介し
てピクセルプロセシングユニット3へ転送する。このと
き、転送する画像データ量は、1面の予測画像につき4
51画素である。よって、両方向予測時には、2面分の
902画素を転送する必要がある。
When the motion prediction process is completed and the inter-frame prediction is performed by the coding judgment using the result, the predicted image (reproduced image) data is transferred from the frame buffer memory 51 to the pixel data bus PB for the coding process. To the pixel processing unit 3 via. At this time, the amount of image data to be transferred is 4 per predicted image.
It has 51 pixels. Therefore, in bidirectional prediction, it is necessary to transfer 902 pixels for two planes.

【0097】次に、符号化対象画像データをフレームバ
ッファメモリ51からピクセルデータバスPBを介して
ピクセルプロセシングユニット3へ転送する。このと
き、転送する画像データ量は、384画素である。
Next, the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 3 via the pixel data bus PB. At this time, the amount of image data to be transferred is 384 pixels.

【0098】符号化終了後、フレーム内符号化画像およ
び片方向予測画像に関して再生画像データをピクセルプ
ロセシングユニット3からピクセルデータバスPBを介
してフレームバッファメモリ51へ転送する。このと
き、転送する画像データ量は384画素である。
After the encoding is completed, the reproduced image data regarding the intra-frame encoded image and the one-way predicted image is transferred from the pixel processing unit 3 to the frame buffer memory 51 via the pixel data bus PB. At this time, the amount of image data to be transferred is 384 pixels.

【0099】上記のデータ転送量は、再生画像データの
転送を除いたすべての転送を行なう両方向予測時に最大
となり、3462画素となる。
The above-mentioned data transfer amount becomes maximum at the time of bidirectional prediction in which all transfer except transfer of reproduced image data is performed, and becomes 3462 pixels.

【0100】ここで、画質を向上させるために動き検索
範囲を広げた場合、動き検索範囲の参照画像の輝度成分
の画像データ転送量が増大する。たとえば、動き検索範
囲を±32画素に拡大した場合、片方向予測時に128
0画素、両方向予測時に2560画素の画像データを転
送する必要がある。
Here, when the motion search range is widened to improve the image quality, the amount of image data transfer of the luminance component of the reference image in the motion search range increases. For example, if the motion search range is expanded to ± 32 pixels, it is 128 when unidirectionally predicted.
It is necessary to transfer image data of 0 pixels and 2560 pixels at the time of bidirectional prediction.

【0101】また、ディジタル画像データの場合には、
画像データの色差成分のデータ量によって異なるデータ
のフォーマットが存在する。すなわち、元の画像データ
量を維持した4:4:4フォーマット、色差成分を半分
に減少させた4:2:2フォーマット、および色差成分
を4分の1に減少させた4:2:0フォーマットがあ
る。したがって、取り扱う画像フォーマットを変更した
場合、動き予測に関する画像データ転送量以外の画像デ
ータ転送量が増大する。たとえば、フォーマット4:
4:4にした場合、原画像データの転送、符号化対象画
像データのピクセルプロセシングユニットへの転送、お
よび再生画像データの転送については、2倍の768画
素となり、予測画像データの転送については予測参照画
像1面につき2倍弱の867画素となる。
In the case of digital image data,
There are different data formats depending on the data amount of the color difference component of the image data. That is, the 4: 4: 4 format in which the original image data amount is maintained, the 4: 2: 2 format in which the color difference component is reduced to half, and the 4: 2: 0 format in which the color difference component is reduced to 1/4. There is. Therefore, when the image format to be handled is changed, the image data transfer amount other than the image data transfer amount related to motion prediction increases. For example, format 4:
In the case of 4: 4, the transfer of the original image data, the transfer of the image data to be encoded to the pixel processing unit, and the transfer of the reproduced image data are doubled to 768 pixels, and the transfer of the predicted image data is predicted. It becomes 867 pixels, which is slightly less than twice as much as one surface of the reference image.

【0102】上記のように、高精細画像等のように処理
する画像の画素数が増加した場合、1マクロブロックの
処理にかかる時間が増大する。システムクロックを一定
とした場合、たとえば、1マクロブロックの処理をする
際のデータ転送量の増加により、システムクロックの1
サイクルで処理できるデータ転送量はハードウェアの性
能により制限される。したがって、上記のデータを転送
処理するためにはシステムクロックのサイクル数が増加
する。
As described above, when the number of pixels of an image to be processed such as a high definition image increases, the time required for processing one macroblock increases. When the system clock is fixed, for example, due to an increase in the data transfer amount when processing one macroblock,
The amount of data transfer that can be processed in a cycle is limited by the performance of the hardware. Therefore, the number of cycles of the system clock increases in order to transfer the data.

【0103】以上のように、データ転送量が非常に多
く、さらに、画素数の拡大および高画質化を要求するに
従ってデータ転送量が増加する場合には、1マクロブロ
ックの符号化処理を単位にパイプラインを組むと、符号
化演算処理に要するサイクル数と比べて、符号化演算処
理を実行するために必要なデータ転送処理に要するサイ
クル数が多いため、データ転送処理が全体の処理速度を
制限する。以下、データ転送処理を効率化し、データ転
送速度により全体の処理速度が制限を受けない画像圧縮
/伸長処理装置について説明する。
As described above, when the amount of data transfer is very large and the amount of data transfer increases as the number of pixels is increased and the image quality is increased, the encoding process of one macroblock is used as a unit. When a pipeline is built, the number of cycles required for the data transfer processing required to execute the encoding operation processing is greater than the number of cycles required for the encoding operation processing, so the data transfer processing limits the overall processing speed. To do. Hereinafter, an image compression / decompression processing device that streamlines the data transfer process and does not limit the overall processing speed by the data transfer speed will be described.

【0104】(7) 第7実施例 図83は、この発明の第7実施例を示す画像圧縮/伸長
処理装置107のブロック図である。図83において、
図8に示す第6実施例と同様の部分については同一番号
を付し以下その説明を省略する。
(7) Seventh Embodiment FIG. 83 is a block diagram of an image compression / expansion processing device 107 showing a seventh embodiment of the present invention. In FIG. 83,
The same parts as those in the sixth embodiment shown in FIG. 8 are designated by the same reference numerals and the description thereof will be omitted.

【0105】図83を参照して、ピクセルデータバスP
Bは、32ビットのデータ幅を有し、コントロールユニ
ット23、ピクセルプロセシングユニット33およびフ
レームバッファメモリ51の間のデータ転送のために設
けられる。
Referring to FIG. 83, pixel data bus P
B has a data width of 32 bits and is provided for data transfer between the control unit 23, the pixel processing unit 33 and the frame buffer memory 51.

【0106】ローカルデータバスLDBは、32ビット
のデータ幅を有し、ピクセルプロセシングユニット3
3、動き予測ユニット47およびローカルメモリ56の
間のデータ転送のために設けられる。
The local data bus LDB has a data width of 32 bits, and the pixel processing unit 3
3, provided for data transfer between the motion estimation unit 47 and the local memory 56.

【0107】ローカルメモリ56は、ピクセルプロセシ
ングユニット33から転送される動き予測に用いる再生
した画像データの輝度成分を一時的に記憶するために設
けられる。ローカルメモリ56としては、SRAM、D
RAM、シンクロナスDRAMおよびキャッシュDRA
M等の大容量メモリが用いられる。
The local memory 56 is provided for temporarily storing the luminance component of the reproduced image data used for motion estimation transferred from the pixel processing unit 33. As the local memory 56, SRAM, D
RAM, synchronous DRAM and cache DRA
A large capacity memory such as M is used.

【0108】コントロールユニット23に含まれる全体
制御のためのマイクロプロセッサ(図示省略)は、コン
トロールユニット23、フレームバッファメモリ51、
ピクセルプロセシングユニット33の間の画像データ転
送を制御し、さらに、ピクセルプロセシングユニット3
3、動き予測ユニット47およびローカルメモリ56の
間の画像データ転送を制御する。
The microprocessor (not shown) for overall control included in the control unit 23 includes a control unit 23, a frame buffer memory 51,
It controls the transfer of image data between the pixel processing units 33, and further controls the pixel processing units 3
3. Control image data transfer between motion estimation unit 47 and local memory 56.

【0109】ピクセルプロセシングユニット33は、ピ
クセルデータバスPBに接続されるデータ入出力ポート
P1とは別に、新たに画像データ用のデータ出力ポート
P2を具備する。データ出力ポートP2にはローカルデ
ータバスLDBを介して動き予測ユニット47および新
たに設けたローカルメモリ56が接続される。ピクセル
プロセシングユニット33のデータ出力ポートP2、動
き予測ユニット47およびローカルメモリ56は、コン
トロールユニット23により制御され、ローカルデータ
バス61を介して画像データの転送を実行する。また、
各転送タイミングもコントロールユニット23が管理す
る。
The pixel processing unit 33 newly has a data output port P2 for image data in addition to the data input / output port P1 connected to the pixel data bus PB. The motion prediction unit 47 and the newly provided local memory 56 are connected to the data output port P2 via the local data bus LDB. The data output port P2 of the pixel processing unit 33, the motion prediction unit 47, and the local memory 56 are controlled by the control unit 23, and transfer image data via the local data bus 61. Also,
The control unit 23 also manages each transfer timing.

【0110】なお、ローカルデータバスLDBで扱う画
像データは、ピクセルプロセシングユニット33によっ
てフレームバッファメモリ51からピクセルデータバス
PBを介して転送された画像データから抽出された動き
予測用参照データ(少なくとも画像データのうち輝度を
示す情報を持つデータ、以降輝度成分と称す)である。
この参照データは、データ入出力ポートP1からピクセ
ルデータバスPBを介してフレームバッファメモリ51
へ転送され記憶される。
The image data handled by the local data bus LDB is the motion prediction reference data (at least the image data) extracted from the image data transferred from the frame buffer memory 51 via the pixel data bus PB by the pixel processing unit 33. Of these, data having information indicating luminance, hereinafter referred to as luminance component).
This reference data is transmitted from the data input / output port P1 via the pixel data bus PB to the frame buffer memory 51.
Is transferred to and stored.

【0111】また、動き予測ユニット47とコントロー
ルユニット23との間には8ビットの専用のローカルバ
スLB4が設けられている。動き検出対象画像データ
は、コントロールユニット23から動き予測ユニット4
7へ転送される。動き検出結果を示す動きベクトルデー
タは、動き予測ユニット47からコントロールユニット
23へ転送される。ピクセルデータバスPBに接続され
るコントロールユニット23、フレームバッファメモリ
51、およびピクセルプロセシングユニット23は、上
記の動きベクトルデータにより予測画像の生成とその予
測画像の符号化を行なう。ピクセルプロセシングユニッ
ト33は、符号化された画像データをコードバスCBへ
出力する。
An 8-bit dedicated local bus LB4 is provided between the motion prediction unit 47 and the control unit 23. The motion detection target image data is transmitted from the control unit 23 to the motion prediction unit 4
7 is transferred. The motion vector data indicating the motion detection result is transferred from the motion prediction unit 47 to the control unit 23. The control unit 23, the frame buffer memory 51, and the pixel processing unit 23, which are connected to the pixel data bus PB, generate a predicted image and encode the predicted image based on the above motion vector data. The pixel processing unit 33 outputs the encoded image data to the code bus CB.

【0112】次に、図83を参照して、画像符号化処理
における画像データ転送および1マクロブロックの画像
データを処理する際の画像データ転送量について説明す
る。ここで、符号化対象画像データは、既にフレームバ
ッファメモリ51に保持されており、動き検出に必要な
参照(再生)画像の輝度成分も既にローカルメモリ56
に保持されているものと仮定する。また、転送量を求め
る前提としては、画像フォーマットは4:2:0、動き
検出範囲は±16画素、ストラクチャーはフレームとす
る。
Next, with reference to FIG. 83, the image data transfer amount in the image encoding process and the image data transfer amount in processing the image data of one macroblock will be described. Here, the encoding target image data is already held in the frame buffer memory 51, and the luminance component of the reference (reproduction) image necessary for motion detection is already in the local memory 56.
Suppose it is held at. As a premise for obtaining the transfer amount, it is assumed that the image format is 4: 2: 0, the motion detection range is ± 16 pixels, and the structure is a frame.

【0113】まず、原画像データは、コントロールユニ
ット23からフレームバッファメモリ51へピクセルデ
ータバスPBを介して転送される。このとき、転送され
る画像データ量は384画素である。
First, the original image data is transferred from the control unit 23 to the frame buffer memory 51 via the pixel data bus PB. At this time, the amount of image data transferred is 384 pixels.

【0114】次に、動き予測を行なうために、動き予測
対象画像の輝度成分が、フレームバッファメモリ51か
らコントロールユニット23へピクセルデータバスPB
を介して転送される。また、輝度成分は、ローカルバス
LB4を介して動き検出ユニット47へ転送される。こ
のとき、転送される画像データ量は256画素である。
Next, in order to perform the motion prediction, the luminance component of the motion prediction target image is transferred from the frame buffer memory 51 to the control unit 23 in the pixel data bus PB.
Be transferred through. Further, the luminance component is transferred to the motion detection unit 47 via the local bus LB4. At this time, the amount of image data transferred is 256 pixels.

【0115】動き予測処理が終了し、その結果を用いた
符号化判定によってフレーム間予測を行なう場合、符号
化処理を行なうために、予測(再生)画像をフレームバ
ッファメモリ51からピクセルプロセシング33へピク
セルデータバスPBを介して転送する。このとき、転送
される画像データ量は予測画像1面につき451画素で
ある。したがって、両方向予測時には、902画素を転
送する必要がある。
When the motion prediction process is completed and the interframe prediction is performed by the coding determination using the result, the predicted (reproduced) image is transferred from the frame buffer memory 51 to the pixel processing unit 33 in order to perform the coding process. Transfer via the data bus PB. At this time, the amount of image data transferred is 451 pixels for each predicted image. Therefore, at the time of bidirectional prediction, it is necessary to transfer 902 pixels.

【0116】次に、符号化対象画像データがフレームバ
ッファメモリ51からピクセルプロセシングユニット3
3へピクセルデータバスPBを介して転送される。この
とき、転送される画像データ量は384画素である。
Next, the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 3
3 through the pixel data bus PB. At this time, the amount of image data transferred is 384 pixels.

【0117】上記4つの画像データ転送と並列に、動き
予測を行なうための動き検索範囲の画像の輝度成分がロ
ーカルメモリ56から動き検出ユニット47へローカル
データバスLDBを介して転送される。このとき、転送
する画像データ量は参照画像1面につき768画素であ
る。したがって、両方向予測時には、2面分の1536
画素を転送する必要がある。
In parallel with the above four image data transfer, the luminance component of the image in the motion search range for motion estimation is transferred from the local memory 56 to the motion detection unit 47 via the local data bus LDB. At this time, the amount of image data to be transferred is 768 pixels for each reference image surface. Therefore, in bidirectional prediction, 1536
Pixels need to be transferred.

【0118】符号化終了後、フレーム内符号化画像およ
び片方向予測画像に関しては、再生画像データがピクセ
ルプロセシングユニット33からピクセルデータバスP
Bを介してフレームバッファメモリ51へ転送される。
このとき同時に、再生画像の輝度成分が、ローカルデー
タバスLDBを介してローカルメモリ56へ転送され
る。
After the coding is completed, for the intra-frame coded image and the one-way predicted image, the reproduced image data is transferred from the pixel processing unit 33 to the pixel data bus P.
It is transferred to the frame buffer memory 51 via B.
At this time, simultaneously, the luminance component of the reproduced image is transferred to the local memory 56 via the local data bus LDB.

【0119】このとき、コントロールユニット23は、
ピクセルプロセシングユニット33が再生画像データを
内部の再生画像出力メモリ(たとえば、後述する図19
に示す画像メモリ335)から出力するタイミングに同
期して、ピクセルデータバスPBと接続されるポートP
1を制御する出力制御信号を出力する。同時に、再生画
像出力メモリから輝度データが出力されている間、コン
トロールユニット23は、ローカルデータバスLDBに
接続されるポートP2を制御する出力制御信号を出力す
る。
At this time, the control unit 23
The pixel processing unit 33 stores the reproduced image data in an internal reproduced image output memory (for example, FIG.
The port P connected to the pixel data bus PB is synchronized with the output timing from the image memory 335) shown in FIG.
An output control signal for controlling 1 is output. At the same time, the control unit 23 outputs an output control signal for controlling the port P2 connected to the local data bus LDB while the luminance data is being output from the reproduced image output memory.

【0120】また、ピクセルプロセシング33では、コ
ントロールユニット23からの命令もしくは内部メモリ
(たとえば、後述する図19に示す制御器319内の内
部メモリ)に蓄えられたシーケンスプログラムに従い、
再生画像出力メモリから画像データが出力される。この
とき、ピクセルデータバスPBにつながるポートP1
は、コントロールユニット23から出力される出力制御
信号に応答して、1マクロブロック分の画像データを出
力する。また同時に、ローカルデータバスLDBに接続
されるポートP2は、コントロールユニット23から出
力される出力制御信号に応答して、1マクロブロック分
の画像データの輝度成分のみを出力する。
Further, in the pixel processing 33, according to the instruction from the control unit 23 or the sequence program stored in the internal memory (for example, the internal memory in the controller 319 shown in FIG. 19 described later),
Image data is output from the reproduced image output memory. At this time, the port P1 connected to the pixel data bus PB
Outputs the image data for one macroblock in response to the output control signal output from the control unit 23. At the same time, the port P2 connected to the local data bus LDB outputs only the luminance component of the image data for one macroblock in response to the output control signal output from the control unit 23.

【0121】上記の再生画像の転送処理では、転送され
る画像データ量は、ピクセルデータバスPBでは384
画素であり、ローカルデータバスLDBでは256画素
である。
In the above-mentioned reproduction image transfer processing, the transferred image data amount is 384 in the pixel data bus PB.
The number of pixels is 256, and the number of pixels is 256 in the local data bus LDB.

【0122】上記のように、2つのデータバスへのデー
タ出力機能を再生画像を生成するピクセルプロセシング
ユニット33に持たせ、ピクセルデータバスPBへの再
生画像出力時に同期して、ローカルデータバスLDBへ
の再生画像出力が行なわれている。したがって、ピクセ
ルプロセシングユニット33内部の再生画像出力メモリ
(図示省略)の制御が共有され、内部メモリ出力につな
がる各ポートに対してそれぞれ1ビットの出力制御信号
のみでデータ転送を行なうことができる。この結果、コ
ントロールユニット23から見たデータ転送制御が容易
となり、かつ、再生画像の転送時以外はコントロールユ
ニット23によりバスの分解が行なわれ、データ転送の
並列処理が可能となる。
As described above, the pixel processing unit 33 for generating a reproduced image is provided with a data output function to the two data buses, and the local data bus LDB is synchronized with the reproduced image output to the pixel data bus PB. The reproduced image of is being output. Therefore, the control of the reproduced image output memory (not shown) inside the pixel processing unit 33 is shared, and data can be transferred to each port connected to the output of the internal memory only by the 1-bit output control signal. As a result, the data transfer control viewed from the control unit 23 becomes easy, and the bus is disassembled by the control unit 23 except when the reproduced image is transferred, and the parallel processing of the data transfer becomes possible.

【0123】このときのデータ転送量は、両方向予測時
に最大となり、ピクセルデータバスPBでは1926画
素、ローカルデータバスLDBでは1536画素とな
る。したがって、分割した2つのデータバスを用いるこ
とにより、第6実施例に比べて1つのバスで転送するデ
ータ量が削減され、実質的にデータ転送速度が向上し、
画像圧縮/伸長処理装置の処理速度を向上することが可
能となる。
The amount of data transfer at this time becomes the maximum in bidirectional prediction, and is 1926 pixels in the pixel data bus PB and 1536 pixels in the local data bus LDB. Therefore, by using the two divided data buses, the amount of data transferred by one bus is reduced as compared with the sixth embodiment, and the data transfer speed is substantially improved.
It is possible to improve the processing speed of the image compression / decompression processing device.

【0124】(8) 第8実施例 図84は、この発明の第8実施例を示す画像圧縮/伸長
処理装置108のブロック図である。図84において、
図83に示す画像圧縮/伸長処理装置と同一部分につい
ては同一番号を付し以下その説明を省略する。
(8) Eighth Embodiment FIG. 84 is a block diagram of the image compression / expansion processing device 108 showing the eighth embodiment of the present invention. In FIG. 84,
The same parts as those of the image compression / expansion processing apparatus shown in FIG.

【0125】ピクセルプロセシングユニット34は、新
たに2つの画像データの出力ポートP4、P5を具備す
る。また、画像データバスとしては、ピクセルデータバ
スPB、2つのローカルデータバスLDB1、LDB2
の3つのデータバスが具備される。各ポートP3〜P5
の出力制御動作は、コントロールユニット24内のパイ
プライン制御プロセッサ(たとえば、後述する図9に示
す全体制御プロセッサ11)に含まれるシステム制御器
(たとえば、後述する図13に示すシステム制御器11
4)により出力される出力制御信号により行なわれる。
The pixel processing unit 34 newly has two image data output ports P4 and P5. The image data bus includes a pixel data bus PB, two local data buses LDB1 and LDB2.
3 data buses are provided. Each port P3 to P5
Output control operation of the system controller (eg, system controller 11 shown in FIG. 13 described later) included in the pipeline control processor (eg, overall control processor 11 shown in FIG. 9 described later) in the control unit 24.
This is performed by the output control signal output by 4).

【0126】装置の機能を拡張して、動き検出範囲を±
64画素に拡大した場合、片方向予測時でさえも230
4画素の画像データ量を転送する必要がある。以下、動
き検出範囲を±64画素に拡大し、片方向予測を行なう
場合を仮定して説明する。図8に示す第6実施例の場合
では、動き検出範囲の拡大に伴って画像データ転送量は
4230画素となる。一方、第8実施例の場合は以下の
ようになる。第8実施例の場合、動き予測を行なうため
に動き検索範囲の画像の輝度成分を2分割して2つのデ
ータバスを用いて転送する。つまり、ローカルメモリ5
6aから予測ユニット47aへローカルデータバスLD
B1を用いて1280画素が転送されると同時に、ロー
カルメモリ56bから動き予測ユニット47bへローカ
ルデータバスLDB2を用いて1280画素が転送され
る。このとき、データの区切りの部分のデータは各デー
タバスLDB1、LDB2へ転送する必要があるため、
1つのデータバスで転送する場合のデータ量である23
04画素に対して2つのデータバスで転送するデータ量
は、合計2560画素となる。つまり、1マクロブロッ
ク分の画素データ(256画素)だけ増加している。こ
れは、参照データを分割する際、その分割されたそれぞ
れの参照データのつながりが認識できるようにするため
である。
By expanding the function of the apparatus,
When enlarged to 64 pixels, it is 230 even in one-way prediction.
It is necessary to transfer the image data amount of 4 pixels. Hereinafter, description will be made assuming that the motion detection range is expanded to ± 64 pixels and unidirectional prediction is performed. In the case of the sixth embodiment shown in FIG. 8, the image data transfer amount becomes 4230 pixels with the expansion of the motion detection range. On the other hand, the case of the eighth embodiment is as follows. In the case of the eighth embodiment, in order to perform motion estimation, the luminance component of the image in the motion search range is divided into two and transferred using two data buses. That is, the local memory 5
6a to prediction unit 47a local data bus LD
At the same time as 1280 pixels are transferred using B1, 1280 pixels are transferred from the local memory 56b to the motion prediction unit 47b using the local data bus LDB2. At this time, since the data at the data delimiter needs to be transferred to each of the data buses LDB1 and LDB2,
23, which is the amount of data when transferred by one data bus
The total amount of data transferred with two data buses for 04 pixels is 2560 pixels. That is, the pixel data for one macro block (256 pixels) is increased. This is to enable the connection of the respective divided reference data to be recognized when the reference data is divided.

【0127】この場合、再生画像転送時には、再生画像
データをピクセルプロセシングユニット34からピクセ
ルデータバスPBを用いてフレームバッファメモリ51
へ転送し、同時に、ローカルデータバスLDB1および
LDB2を用いてローカルメモリ56aおよび56bへ
再生画像を転送する。
In this case, when the reproduced image is transferred, the reproduced image data is transferred from the pixel processing unit 34 to the frame buffer memory 51 using the pixel data bus PB.
And simultaneously transfer the reproduced image to the local memories 56a and 56b using the local data buses LDB1 and LDB2.

【0128】このときのデータ転送量は、ピクセルデー
タバスPBでは1926画素、ローカルデータバスLD
B1およびLDB2では各1280画素である。つま
り、画像データバスを3分割することによって1つのバ
スで転送するデータ量が削減され、第6実施例に比べて
実質的なデータ転送速度が2倍強に上がり、画像圧縮/
伸長処理装置の処理速度を向上することが可能となる。
The data transfer amount at this time is 1926 pixels in the pixel data bus PB, and the local data bus LD.
Each of B1 and LDB2 has 1280 pixels. That is, by dividing the image data bus into three, the amount of data to be transferred by one bus is reduced, and the substantial data transfer rate is slightly more than doubled compared with the sixth embodiment, and the image compression / compression is performed.
It is possible to improve the processing speed of the decompression processing device.

【0129】(9) 第9実施例 図85は、この発明の第9実施例を示す画像圧縮/伸長
処理装置109のブロック図である。図85において、
図84に示す画像圧縮/伸長処理装置と同一部分につい
ては同一番号を付し以下その説明を省略する。
(9) Ninth Embodiment FIG. 85 is a block diagram of an image compression / expansion processing apparatus 109 showing a ninth embodiment of the present invention. In FIG. 85,
The same parts as those of the image compression / expansion processing apparatus shown in FIG. 84 are designated by the same reference numerals, and the description thereof will be omitted below.

【0130】図85を参照して、第9実施例は、ローカ
ルメモリ56cおよび56dに対して共通のアドレスバ
スABを用いた実施例である。アドレスバスABは、コ
ントロールユニット25と接続され、コントロールユニ
ット25からアドレス信号が出力される。
Referring to FIG. 85, the ninth embodiment is an embodiment using a common address bus AB for local memories 56c and 56d. The address bus AB is connected to the control unit 25, and an address signal is output from the control unit 25.

【0131】画像圧縮/伸長処理装置の拡張機能として
両方向動き予測で動き検索範囲を±32画素とした場
合、予測画像1面につき1280画素を転送する必要が
ある。以下、±32画素の範囲を動き検索し、両方向予
測を行なうことを仮定し、画像データ転送について説明
する。
When the motion search range is set to ± 32 pixels in bidirectional motion prediction as an extended function of the image compression / decompression processing device, it is necessary to transfer 1280 pixels for each predicted image plane. Image data transfer will be described below on the assumption that motion search is performed in a range of ± 32 pixels and bidirectional prediction is performed.

【0132】まず、フレーム内符号化画像の場合のデー
タ転送について説明する。たとえば、ローカルメモリ5
6cに蓄えられた再生画像データと比べて、ローカルメ
モリ56dに蓄えられた再生画像データの方が新しい
(時間的に後)場合、または最初の画像データを符号化
する(両方のローカルメモリ56cおよび56dにデー
タが蓄えられていない)場合、コントロールユニット2
5、フレームバッファメモリ51、ピクセルプロセシン
グユニット34、動き予測ユニット47a、ローカルメ
モリ56c、ピクセルデータバスPBおよびローカルデ
ータバスLDB1を用いて、第7実施例と同様にデータ
転送を行なう。再生画像の輝度信号は、動き予測参照画
像データとして用いるためローカルメモリ56cに蓄え
られる。このとき、コントロールユニット25は、チッ
プセレクト信号によりローカルメモリ56cを選択して
データ書込制御を行ない、ピクセルプロセシングユニッ
ト34のローカルデータバスLDB1側の出力ポートP
4に出力制御信号を与える。
First, the data transfer in the case of an intra-frame coded image will be described. For example, local memory 5
If the reproduced image data stored in the local memory 56d is newer (temporally later) than the reproduced image data stored in 6c, or the first image data is encoded (both local memory 56c and If the data is not stored in 56d), the control unit 2
5, data transfer is performed using the frame buffer memory 51, the pixel processing unit 34, the motion prediction unit 47a, the local memory 56c, the pixel data bus PB, and the local data bus LDB1 as in the seventh embodiment. The luminance signal of the reproduced image is stored in the local memory 56c for use as the motion prediction reference image data. At this time, the control unit 25 selects the local memory 56c by the chip select signal to perform the data write control, and the output port P of the pixel processing unit 34 on the side of the local data bus LDB1.
4 to the output control signal.

【0133】次に、片方向予測画像の場合のデータ転送
について説明する。たとえば、ローカルメモリ56dに
蓄えられた再生画像データと比べてローカルメモリ56
cに蓄えられた再生画像データの方が新しい(時間的に
後)場合、ローカルメモリ56cに蓄えられた再生画像
データを前方向予測参照画像データとして、動き予測ユ
ニット47a、ローカルメモリ56cおよびローカルデ
ータバスLDB1を用いて動き予測探索範囲の画像デー
タを転送する。このとき、動き予測探索範囲の再生画像
の輝度信号を転送するときのみ、コントロールユニット
25は、チップセレクト信号によりローカルメモリ56
cを選択してデータ出力制御を行ない、動き予測ユニッ
ト47aのローカルデータバスLDB1側の入力ポート
の入力制御信号を与える。
Next, data transfer in the case of a one-way predicted image will be described. For example, compared with the reproduced image data stored in the local memory 56d, the local memory 56d
If the reproduced image data stored in c is newer (temporally later), the reproduced image data stored in the local memory 56c is used as forward prediction reference image data, and the motion prediction unit 47a, the local memory 56c, and the local data are stored. The image data in the motion prediction search range is transferred using the bus LDB1. At this time, only when transferring the luminance signal of the reproduced image in the motion prediction search range, the control unit 25 uses the chip select signal to generate the local memory 56.
Data output control is performed by selecting c, and the input control signal of the input port on the side of the local data bus LDB1 of the motion prediction unit 47a is given.

【0134】上記以外の画像転送(たとえば、原画像転
送、動き予測用の符号化対象画像転送、前方向予測画像
転送、符号化対象画像転送および再生画像転送)につい
ては、コントロールユニット25、フレームバッファメ
モリ51、ピクセルプロセシングユニット34、ローカ
ルメモリ56d、ピクセルデータバスPBおよびローカ
ルデータバスLDB2を用いて、第7実施例と同様に転
送する。このとき、データ転送量は、ピクセルデータバ
スPBでは両方向予測時に最大で1926画素であり、
ローカルデータバスLDB1およびLDB2では最大で
各1280画素である。ここで、再生画像の輝度信号
は、動き予測参照画像データとしてローカルメモリ56
dに蓄えられる。このとき、コントロールユニット25
は、再生画像の輝度信号を転送するときにのみ、チップ
セレクト信号によりローカルメモリ56dを選択してデ
ータ書込制御を行ない、ピクセルプロセシングユニット
34のローカルデータバスLDB2側の出力ポートP5
に出力信号を与える。ここで、ローカルメモリ56dの
アドレシングは、ローカルメモリ56cのアドレシング
と同様に行なう。
For image transfer other than the above (for example, original image transfer, coding target image transfer for motion prediction, forward prediction image transfer, coding target image transfer and reproduced image transfer), the control unit 25 and the frame buffer are used. The memory 51, the pixel processing unit 34, the local memory 56d, the pixel data bus PB, and the local data bus LDB2 are used to perform the transfer as in the seventh embodiment. At this time, the maximum data transfer amount is 1926 pixels in the bidirectional prediction on the pixel data bus PB,
The local data buses LDB1 and LDB2 have a maximum of 1280 pixels each. Here, the luminance signal of the reproduced image is used as the motion prediction reference image data in the local memory 56.
It is stored in d. At this time, the control unit 25
Selects the local memory 56d by the chip select signal to control data writing only when the luminance signal of the reproduced image is transferred, and the output port P5 of the pixel processing unit 34 on the local data bus LDB2 side is selected.
Give an output signal to. Here, the addressing of the local memory 56d is performed in the same manner as the addressing of the local memory 56c.

【0135】次に、両方向予測画像の場合のデータ転送
について説明する。たとえば、ローカルメモリ56cに
蓄えられた再生画像データと比べてローカルメモリ56
dに蓄えられた再生画像データの方が新しい(時間的に
後)場合、ローカルメモリ56cに蓄えられた再生画像
データを前方向予測参照画像データとして、動き予測ユ
ニット47a、ローカルメモリ56cおよびローカルデ
ータバスLDB1を用いて動き予測検索範囲の画像転送
を行なう。このとき同時に、ローカルメモリ56dに蓄
えられた再生画像を後方向予測参照画像として、動き予
測ユニット47b、ローカルメモリ56dおよびローカ
ルデータバスLDB2を用いて動き予測検索範囲の画像
転送を行なう。この場合、動き予測検索範囲の再生画像
の輝度信号を転送するときにのみ、コントロールユニッ
ト25は、チップセレクト信号によりローカルメモリ5
6cおよび56dを選択するため、共通のアドレスバス
ABを用いて同じアドレス信号を与えて共通のデータ出
力制御を行なう。また、コントロールユニット25は、
動き予測ユニット47aおよび47bのローカルデータ
バスLDB1およびLDB2側の入力ポートの入力制御
信号をそれぞれ与える。
Next, data transfer in the case of a bidirectionally predicted image will be described. For example, compared with the reproduced image data stored in the local memory 56c, the local memory 56c
If the reproduced image data stored in d is newer (temporally later), the reproduced image data stored in the local memory 56c is used as the forward prediction reference image data, and the motion prediction unit 47a, the local memory 56c, and the local data are stored. Image transfer within the motion prediction search range is performed using the bus LDB1. At this time, at the same time, the reproduced image stored in the local memory 56d is used as a backward prediction reference image to transfer an image in the motion prediction search range using the motion prediction unit 47b, the local memory 56d and the local data bus LDB2. In this case, the control unit 25 uses the chip select signal only when transferring the luminance signal of the reproduced image in the motion prediction search range.
In order to select 6c and 56d, common address bus AB is used to apply the same address signal to perform common data output control. In addition, the control unit 25,
Input control signals of the input ports on the side of local data buses LDB1 and LDB2 of motion estimation units 47a and 47b are applied, respectively.

【0136】上記以外の画像転送(たとえば、原画像転
送、動き予測用の符号化対象画像転送、前方向予測画像
転送、後方向予測画像転送および符号化対象画像転送)
については、コントロールユニット25、フレームバッ
ファメモリ51、ピクセルプロセシングユニット34お
よびピクセルデータバスPBを用いて第7実施例と同様
に画像データの転送を行なう。
Image transfer other than the above (for example, original image transfer, motion prediction encoding target image transfer, forward prediction image transfer, backward prediction image transfer, and encoding target image transfer).
With respect to, the control unit 25, the frame buffer memory 51, the pixel processing unit 34, and the pixel data bus PB are used to transfer the image data as in the seventh embodiment.

【0137】また、動き予測対象のマクロブロックに対
して前方向の動き検索範囲と後ろ方向の動き検索範囲と
は、実際の画面上で同じ範囲である。したがって、ロー
カルメモリ56cおよび56dに対して共通のアドレシ
ングを行なうことにより、両方向の予測検索範囲を転送
する際に共通のアドレスを用いて転送することが可能と
なる。つまり、ローカルメモリ56cおよび56dのチ
ップセレクト信号を除いて、ローカルメモリ56cおよ
び56dに対するメモリ制御およびアドレス生成に関す
るハードウェアを共有化できるので、各メモリに対して
アドレス生成器を持つ場合に比べて、データ転送量を増
加させることなく、ハードウェア量を削減することが可
能となる。
Further, the forward motion search range and the backward motion search range for the macro block subject to motion prediction are the same range on the actual screen. Therefore, by performing common addressing on the local memories 56c and 56d, it is possible to transfer the prediction search ranges in both directions using a common address. In other words, except for the chip select signals of the local memories 56c and 56d, the hardware related to the memory control and address generation for the local memories 56c and 56d can be shared, and therefore, compared to the case where an address generator is provided for each memory, The amount of hardware can be reduced without increasing the amount of data transfer.

【0138】(10) 第10実施例 図86は、この発明の第10実施例を示す画像圧縮/伸
長処理装置110のブロック図である。図86におい
て、図85に示す画像圧縮/伸長処理装置と同一部分に
ついては同一番号を付し以下その説明を省略する。
(10) Tenth Embodiment FIG. 86 is a block diagram of an image compression / expansion processing apparatus 110 showing a tenth embodiment of the present invention. 86, the same parts as those of the image compression / expansion processing apparatus shown in FIG. 85 are designated by the same reference numerals, and the description thereof will be omitted.

【0139】図86を参照して、第10の実施例では、
図85に示したピクセルプロセシングユニット34を2
つのピクセルプロセシングユニット34aおよび34b
に分割した構成となっている。
Referring to FIG. 86, in the tenth embodiment,
The pixel processing unit 34 shown in FIG.
Pixel processing units 34a and 34b
It is divided into two parts.

【0140】画像圧縮/伸長処理装置の機能拡張とし
て、両方向動き予測で±32画素の範囲を動き検索する
場合、予測画像1面につき1280画素を転送する必要
がある。以下、±32画素の範囲を動き検索し、両方向
予測を行なうことを仮定し、画像データ転送について説
明する。
As a function expansion of the image compression / expansion processing device, when performing a motion search in a range of ± 32 pixels in bidirectional motion prediction, it is necessary to transfer 1280 pixels per predicted image plane. Image data transfer will be described below on the assumption that motion search is performed in a range of ± 32 pixels and bidirectional prediction is performed.

【0141】まず、フレーム内符号化画像の場合のデー
タ転送について説明する。たとえば、ローカルメモリ5
6cに蓄えられた再生画像データと比べてローカルメモ
リ56dに蓄えられた再生画像データの方が新しい(時
間的に後)場合、または最初の画像データを符号化する
(両方のローカルメモリ56cおよび56dにデータが
蓄えられていない)場合、コントロールユニット26、
フレームバッファメモリ51、ピクセルプロセシングユ
ニット34、動き予測ユニット47a、ローカルメモリ
56c、ピクセルデータバスPBおよびローカルデータ
バスLDB1を用いて、第7実施例と同様にデータ転送
を行なう。再生画像の輝度信号は、動き予測参照画像デ
ータとして用いるためにローカルメモリ56cに蓄えら
れる。このとき、コントロールユニット26は、再生画
像の輝度信号を転送するときにのみチップセレクト信号
によりローカルメモリ56cを選択してデータ書込制御
を行なう。また、コントロールユニット26は、ピクセ
ルプロセシングユニット34aのローカルデータバスL
DB1側の出力ポートP2aに出力信号を与える。
First, the data transfer in the case of an intra-frame coded image will be described. For example, local memory 5
If the reproduced image data stored in the local memory 56d is newer (temporally later) than the reproduced image data stored in 6c, or the first image data is encoded (both the local memories 56c and 56d). If no data is stored in the control unit 26,
Using the frame buffer memory 51, the pixel processing unit 34, the motion prediction unit 47a, the local memory 56c, the pixel data bus PB, and the local data bus LDB1, data transfer is performed as in the seventh embodiment. The luminance signal of the reproduced image is stored in the local memory 56c for use as motion prediction reference image data. At this time, the control unit 26 controls the data write by selecting the local memory 56c by the chip select signal only when transferring the luminance signal of the reproduced image. The control unit 26 also includes a local data bus L of the pixel processing unit 34a.
An output signal is given to the output port P2a on the DB1 side.

【0142】次に、片方向予測画像の場合のデータ転送
について説明する。たとえば、ローカルメモリ56dに
蓄えられた再生画像データと比べてローカルメモリ56
cに蓄えられた再生画像データの方が新しい(時間的に
後)場合、ローカルメモリ56cに蓄えられた再生画像
データを前方向予測参照画像データとして動き予測ユニ
ット47a、ローカルメモリ56cおよびローカルデー
タバスLDB1を用いて動き予測検索範囲の画像転送を
行なう。このとき、コントロールユニット26は、動き
予測検索範囲の再生画像の輝度信号を転送するときにの
み、チップセレクト信号によりローカルメモリ56cを
選択してデータ出力制御を行なう。また、コントロール
ユニット26は、動き予測ユニット47aのローカルデ
ータバスLDB1側の入力ポートの入力制御信号を与え
る。
Next, the data transfer in the case of a one-way predicted image will be described. For example, compared with the reproduced image data stored in the local memory 56d, the local memory 56d
If the reproduced image data stored in c is newer (temporally later), the reproduced image data stored in the local memory 56c is used as forward prediction reference image data as the motion prediction unit 47a, the local memory 56c and the local data bus. Image transfer within the motion prediction search range is performed using LDB1. At this time, the control unit 26 controls the data output by selecting the local memory 56c by the chip select signal only when transferring the luminance signal of the reproduced image in the motion prediction search range. Further, the control unit 26 gives an input control signal of the input port of the motion prediction unit 47a on the side of the local data bus LDB1.

【0143】上記以外の画像転送(原画像転送、動き予
測用の符号化対象画像転送、前方向予測画像転送、符号
化対象画像転送および再生画像転送)については、コン
トロールユニット26、フレームバッファメモリ51、
ピクセルプロセシングユニット34b、ローカルメモリ
56d、ピクセルデータバスPBおよびローカルデータ
バスLDB2を用いて第7実施例と同様に転送する。再
生画像の輝度信号は、動き予測参照画像として用いるた
め、ローカルメモリ56dに蓄えられる。このとき、コ
ントロールユニット26は、再生画像の輝度信号を転送
するときにのみ、チップセレクト信号によりローカルメ
モリ56cを選択してデータ書込制御を行なう。また、
コントロールユニット26は、ピクセルプロセシングユ
ニット34bのローカルデータバスLDB2側の出力ポ
ートP2bに出力信号を与える。ここで、ローカルメモ
リ56dのアドレシングは、ローカルメモリ56cのア
ドレシングと同様に行なう。
Regarding image transfer other than the above (original image transfer, transfer target image transfer for motion prediction, forward predictive image transfer, transfer target image transfer and replay image transfer), the control unit 26 and the frame buffer memory 51. ,
The pixel processing unit 34b, the local memory 56d, the pixel data bus PB and the local data bus LDB2 are used to perform the transfer in the same manner as in the seventh embodiment. The luminance signal of the reproduced image is used as the motion prediction reference image, and thus is stored in the local memory 56d. At this time, the control unit 26 controls the data writing by selecting the local memory 56c by the chip select signal only when transferring the luminance signal of the reproduced image. Also,
The control unit 26 gives an output signal to the output port P2b on the side of the local data bus LDB2 of the pixel processing unit 34b. Here, the addressing of the local memory 56d is performed in the same manner as the addressing of the local memory 56c.

【0144】次に、両方向予測画像の場合のデータ転送
について説明する。ローカルメモリ56cに蓄えられた
再生画像データと比べてローカルメモリ56dに蓄えら
れた再生画像データの方が新しい(時間的に後)場合、
ローカルメモリ56cに蓄えられた再生画像データを前
方向予測参照画像データとして、動き予測ユニット47
a、ローカルメモリ56cおよびローカルデータバスL
DB1を用いて動き予測検索範囲の画像転送を行なう。
このとき同時に、ローカルメモリ56dに蓄えられた再
生画像データを後ろ方向予測参照画像データとして、動
き予測ユニット47b、ローカルメモリ56dおよびロ
ーカルデータバスLDB2を用いて、動き予測検索範囲
の画像転送を行なう。このとき、コントロールユニット
26は、動き予測検索範囲の再生画像の輝度信号を転送
するときにのみ、チップセレクト信号によりローカルメ
モリ56cおよび56dを選択するため、共通のアドレ
スバスABを用いて同じアドレスを与えて共通のデータ
出力制御を行なう。また、コントロールユニット26
は、動き予測ユニット47a、47bのローカルデータ
バスLDB1およびLDB2側の入力ポートの入力制御
信号を与える。
Next, the data transfer in the case of a bidirectionally predicted image will be described. When the reproduced image data stored in the local memory 56d is newer (temporally later) than the reproduced image data stored in the local memory 56c,
The reproduced image data stored in the local memory 56c is used as forward prediction reference image data, and the motion prediction unit 47
a, local memory 56c and local data bus L
Image transfer within the motion prediction search range is performed using DB1.
At this time, at the same time, the reproduced image data stored in the local memory 56d is used as backward prediction reference image data to transfer an image in the motion prediction search range using the motion prediction unit 47b, the local memory 56d and the local data bus LDB2. At this time, since the control unit 26 selects the local memories 56c and 56d by the chip select signal only when transferring the luminance signal of the reproduced image in the motion prediction search range, the same address is used by using the common address bus AB. Apply common data output control. In addition, the control unit 26
Provides input control signals of the input ports on the side of the local data buses LDB1 and LDB2 of the motion prediction units 47a and 47b.

【0145】上記以外の画像転送(原画像転送、動き予
測用の符号化対象画像転送、前方向予測画像転送、後方
向予測画像転送および符号化対象画像転送)について
は、コントロールユニット26、フレームバッファメモ
リ51、ピクセルプロセシングユニット34aまたは3
4b、およびピクセルデータバスPBを用いて、第7実
施例に示したように画像データの転送を行なう。このと
き、画像データの転送は、1マクロブロック単位で2つ
のピクセルプロセシングユニット34aおよび34bに
交互に行ない、各プロセシングユニット34aまたは3
4bにおいて、2マクロブロック処理時間を用いて1マ
クロブロックに対する符号化演算処理を実行する。
For image transfer other than the above (original image transfer, transfer target image transfer for motion prediction, forward predictive image transfer, backward predictive image transfer and transfer target image transfer), the control unit 26 and the frame buffer are used. Memory 51, pixel processing unit 34a or 3
4b and the pixel data bus PB are used to transfer image data as shown in the seventh embodiment. At this time, the image data is transferred to the two pixel processing units 34a and 34b alternately in units of one macro block, and the processing units 34a or 3 are processed.
In 4b, the encoding operation processing for one macroblock is executed using two macroblock processing times.

【0146】一般にフレーム間予測符号化を行なう場
合、両方向予測時の演算量が多くなる。本実施例では、
両方向予測時に、画像データを1マクロブロック単位で
2つのピクセルプロセシングユニット34aおよび34
bに交互に転送し、実質的にマクロブロック分の演算時
間を1つのピクセルプロセシングユニット34aまたは
34bに与えることによって、第9実施例に比べて両方
向予測時のピクセルプロセシングユニット34aおよび
34bの演算時間の拡大効果が得られる。
Generally, when interframe predictive coding is performed, the amount of calculation in bidirectional prediction is large. In this embodiment,
At the time of bidirectional prediction, image data is divided into two pixel processing units 34a and 34 in units of one macroblock.
b, and the calculation time of the macroblock is substantially given to one pixel processing unit 34a or 34b, so that the calculation time of the pixel processing units 34a and 34b at the time of bidirectional prediction is increased as compared with the ninth embodiment. The expansion effect of is obtained.

【0147】(11) 第11実施例 図87は、この発明の第11実施例を示す画像圧縮/伸
長処理装置111のブロック図である。図87に示す画
像圧縮/伸長処理装置では、図84に示す第8実施例の
構成からローカルデータバスLDB2に接続されている
動き予測ユニット47bを除いた構成を有する。
(11) Eleventh Embodiment FIG. 87 is a block diagram of an image compression / decompression processing device 111 showing an eleventh embodiment of the present invention. The image compression / decompression processing device shown in FIG. 87 has a configuration in which the motion prediction unit 47b connected to the local data bus LDB2 is removed from the configuration of the eighth embodiment shown in FIG.

【0148】この場合、原画像データをコントロールユ
ニット27からフレームバッファメモリ51へ転送する
データ転送処理以外のデータ転送処理は、原画像データ
を輝度成分および色差成分に分割して以下のように行な
われる。
In this case, the data transfer processing other than the data transfer processing for transferring the original image data from the control unit 27 to the frame buffer memory 51 is performed as follows by dividing the original image data into the luminance component and the color difference component. .

【0149】輝度成分の場合、フレーム内符号化画像に
対して、符号化対象画像をフレームバッファメモリ51
からピクセルプロセシングユニット35へ転送する。再
生画像は、フレームバッファメモリ51およびローカル
メモリ56aへ転送される。
In the case of the luminance component, the encoding target image is set to the frame buffer memory 51 for the intra-frame encoded image.
To the pixel processing unit 35. The reproduced image is transferred to the frame buffer memory 51 and the local memory 56a.

【0150】また、片方向予測符号化画像に関しては、
動き予測側では、動き検索範囲の画像データをローカル
メモリ56aから動き予測ユニット47へ転送し、符号
化対象画像データをフレームバッファメモリ51からコ
ントロールユニット27へ転送する。また、符号化側で
は、予測画像データをフレームバッファメモリ51から
ピクセルプロセシングユニット35へ転送し、符号化対
象画像データをフレームバッファメモリ51からピクセ
ルプロセシングユニット35へ転送する。再生画像デー
タはフレームバッファメモリ51およびローカルメモリ
56aへ転送される。
As for the unidirectional predictive coded image,
On the motion prediction side, the image data in the motion search range is transferred from the local memory 56a to the motion prediction unit 47, and the image data to be encoded is transferred from the frame buffer memory 51 to the control unit 27. On the encoding side, the predicted image data is transferred from the frame buffer memory 51 to the pixel processing unit 35, and the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 35. The reproduced image data is transferred to the frame buffer memory 51 and the local memory 56a.

【0151】両方向予測符号化画像に関しては、動き予
測側では、2面分の動き検索範囲の画像データをローカ
ルメモリ56aから動き予測ユニット47へ転送し、符
号化対象画像データをフレームバッファメモリ51から
コントロールユニット27を介して動き予測ユニット4
7へ転送する。また、符号化側では、2面の予測画像デ
ータをフレームバッファメモリ51からピクセルプロセ
シングユニット35へ転送し、符号化対象画像をフレー
ムバッファメモリ51からピクセルプロセシングユニッ
ト35へ転送する。
Regarding the bidirectional predictive coded image, on the motion predicting side, the image data of the motion search ranges for two planes are transferred from the local memory 56a to the motion predicting unit 47, and the image data to be coded is transferred from the frame buffer memory 51. Motion estimation unit 4 via control unit 27
Transfer to 7. Also, on the encoding side, the two predicted image data are transferred from the frame buffer memory 51 to the pixel processing unit 35, and the image to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 35.

【0152】色差成分の場合、フレーム内符号化画像に
関しては、符号化対象画像データをフレームバッファメ
モリ51からピクセルプロセシングユニット35へ転送
する。再生画像データはローカルメモリ56eへ転送さ
れる。
In the case of the color difference component, for the intra-frame encoded image, the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 35. The reproduced image data is transferred to the local memory 56e.

【0153】片方向予測符号化画像に対しては、符号化
対象画像データをフレームバッファメモリ51からピク
セルプロセシングユニット35へ転送し、予測画像デー
タはローカルメモリ56eからピクセルプロセシングユ
ニット35へ転送される。再生画像データはローカルメ
モリ56eへ転送される。
For a unidirectional predictive encoded image, the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 35, and the predictive image data is transferred from the local memory 56e to the pixel processing unit 35. The reproduced image data is transferred to the local memory 56e.

【0154】両方向予測符号化画像に関しては、符号化
対象画像の色差信号をフレームバッファメモリ51から
ピクセルプロセシングユニット35へ転送し、2面の予
測画像データはローカルメモリ56eからピクセルプロ
セシングユニット35へ転送される。色差成分の多い
4:4:4フォーマットの画像に対しては、データ転送
量の最大となる両方向予測時の各データバスにおける画
像転送量を見積もると以下のようになる。
Regarding the bidirectional predictive coded image, the color difference signals of the image to be coded are transferred from the frame buffer memory 51 to the pixel processing unit 35, and the predicted image data of the two planes are transferred from the local memory 56e to the pixel processing unit 35. It For a 4: 4: 4 format image with many color difference components, the image transfer amount in each data bus at the time of bidirectional prediction that maximizes the data transfer amount is estimated as follows.

【0155】まず、図8に示す第6実施例の画像圧縮/
伸長処理装置では、上記のフォーマットにおけるピクセ
ルデータバスPBを介して転送されるデータ転送量は合
計4806画素である。
First, the image compression / compression of the sixth embodiment shown in FIG.
In the decompression processing device, the total data transfer amount transferred through the pixel data bus PB in the above format is 4806 pixels.

【0156】しかしながら、図87に示す第11実施例
の画像圧縮/伸長処理装置では、上記の4:4:4フォ
ーマットにおいて、ピクセルデータバスPBでは、原画
像データ768画素、2面分の予測画像データの輝度成
分578画素および符号化画像データ768画素が転送
され、合計のデータ転送量は2114画素で済むことに
なる。
However, in the image compression / decompression processing apparatus of the eleventh embodiment shown in FIG. 87, in the above-mentioned 4: 4: 4 format, the pixel data bus PB has 768 pixels of the original image data, and two planes of predicted images. The data luminance component of 578 pixels and the encoded image data of 768 pixels are transferred, and the total data transfer amount is 2114 pixels.

【0157】また、ローカルデータバスLDB1では、
動き検索範囲が±16画素のとき、予測画像データ1面
に対して768画素となり、2枚分の予測画像データで
は1536画素のデータ転送量となる。
In the local data bus LDB1,
When the motion search range is ± 16 pixels, the data transfer amount is 768 pixels for one plane of the predicted image data, and 1536 pixels for the two predicted image data.

【0158】さらに、ローカルバスLB5では、色差成
分CbおよびCrに対して、それぞれ2面分の予測画像
データの輝度成分を578画素だけ転送するので、合計
1156画素のデータ転送量となる。
Further, since the local bus LB5 transfers the luminance components of the predicted image data for two planes to the color difference components Cb and Cr by 578 pixels, the total data transfer amount is 1156 pixels.

【0159】上記のように画素データの成分別に符号化
し、付加した色差成分用のバスLB5を設けることによ
り、ピクセルデータバスPBのデータ転送量が削減され
る。また、各データバスでのデータ転送量の平均化を行
なうことにより、1つのデータバスで転送するデータ量
が削減され、図8に示す第6実施例に比べて、データ転
送速度が実質的に2.2倍に上がり、画像圧縮/伸長処
理装置の処理速度を向上することが可能となる。
By encoding each pixel data component as described above and providing the added color difference component bus LB5, the data transfer amount of the pixel data bus PB is reduced. Further, by averaging the data transfer amount in each data bus, the data amount transferred in one data bus is reduced, and the data transfer speed is substantially higher than that in the sixth embodiment shown in FIG. This is 2.2 times higher, and the processing speed of the image compression / decompression processing device can be improved.

【0160】(12) 第12実施例 図88は、この発明の第12実施例を示す画像圧縮/伸
長処理装置112のブロック図である。図88に示す第
12実施例は、図87に示す第11実施例のピクセルプ
ロセシングユニット35を2つのピクセルプロセシング
ユニット35aおよび35bに分割し、それぞれに輝度
成分の処理と色差成分の処理を割り当てたものである。
(12) Twelfth Embodiment FIG. 88 is a block diagram of an image compression / expansion processor 112 showing a twelfth embodiment of the present invention. In the twelfth embodiment shown in FIG. 88, the pixel processing unit 35 of the eleventh embodiment shown in FIG. 87 is divided into two pixel processing units 35a and 35b, and a luminance component process and a color difference component process are assigned to each. It is a thing.

【0161】したがって、第12実施例では、ピクセル
プロセシングユニット35aおよび35bにより各成分
ごとに演算処理が行なわれ、1つのピクセルプロセシン
グユニットでの演算量が削減され、画像圧縮/伸長処理
装置の処理速度を向上することが可能となる。
Therefore, in the twelfth embodiment, the pixel processing units 35a and 35b perform the calculation processing for each component, the calculation amount in one pixel processing unit is reduced, and the processing speed of the image compression / expansion processing apparatus is reduced. It becomes possible to improve.

【0162】(13) 第13実施例 図89は、この発明の第13実施例を示す画像圧縮/伸
長処理装置113のブロック図である。第13実施例
は、第11および第12実施例の構成に加えて、動き検
索範囲を拡大したときに対応可能な構成を有している。
具体的には、動き予測用参照データとして、フレームバ
ッファメモリ51から転送された画像データの中から最
低必要な輝度成分を複数のピクセルプロセシングユニッ
ト36aおよび36bにより分割して抽出する。抽出し
たデータは、それぞれローカルデータバスLDB1およ
びLDB2を介してローカルメモリ56aおよび56b
に記憶される。一方、ピクセルプロセシングユニット3
5bは、フレームバッファメモリ51から転送される画
像データの中から動き予測に使用しない色差成分を抽出
する。抽出された色差成分は、ローカルバスLB5を介
してローカルメモリ56eに記憶される。
(13) Thirteenth Embodiment FIG. 89 is a block diagram of an image compression / expansion processing device 113 showing a thirteenth embodiment of the present invention. The thirteenth embodiment has, in addition to the configurations of the eleventh and twelfth embodiments, a configuration capable of coping with the expansion of the motion search range.
Specifically, as the motion prediction reference data, the minimum required luminance component is divided and extracted by the plurality of pixel processing units 36a and 36b from the image data transferred from the frame buffer memory 51. The extracted data is stored in the local memories 56a and 56b via the local data buses LDB1 and LDB2, respectively.
Memorized in. Meanwhile, the pixel processing unit 3
5b extracts from the image data transferred from the frame buffer memory 51 a color difference component not used for motion estimation. The extracted color difference component is stored in the local memory 56e via the local bus LB5.

【0163】上記の構成により、ピクセルデータバスP
Bのデータ転送量は、原画像データ768画素、2面分
の予測画像データの輝度成分578画素、および符号化
画像データ768画素となり、合計2114画素とな
る。
With the above configuration, the pixel data bus P
The data transfer amount of B is 768 pixels of the original image data, 578 pixels of the luminance component of the predicted image data for two planes, and 768 pixels of the encoded image data, which is 2114 pixels in total.

【0164】また、ローカルデータバスLDB1および
LDB2では、動き検索範囲が±32画素の場合、それ
ぞれ1280画素のデータが転送されることになる。
Further, in the local data buses LDB1 and LDB2, when the motion search range is ± 32 pixels, data of 1280 pixels is transferred respectively.

【0165】さらに、ローカルバスLB5では、色差成
分CbおよびCrに対してそれぞれ2面分の予測画像デ
ータの輝度成分578画素を転送するので、合計115
6画素のデータが転送されることになる。
Further, since the local bus LB5 transfers the luminance component 578 pixels of the prediction image data for two planes to each of the color difference components Cb and Cr, a total of 115 pixels are transferred.
Data of 6 pixels will be transferred.

【0166】上記の構成により、動き検索範囲を拡大
し、取り扱う画像フォーマットを4:4:4としたとき
に、ピクセルデータバスPBでのデータ転送量が削減さ
れ、かつ、各バスにおけるデータ転送量を効率よく分割
することができる。
With the above configuration, when the motion search range is expanded and the image format to be handled is set to 4: 4: 4, the data transfer amount on the pixel data bus PB is reduced and the data transfer amount on each bus is reduced. Can be efficiently divided.

【0167】(14) 第14実施例 図90は、この発明の第14実施例を示す画像圧縮/伸
長処理装置114のブロック図である。第14実施例で
は、ピクセルデータバスPBとローカルデータバスLD
Bとを接続する32ビットの双方向トライステートバッ
ファ80が付加される。ピクセルプロセシングユニット
37は、図90に示すようにローカルデータバスLDB
に接続される第2のデータ出力ポートを備えていないも
のを使用してもよい。コントロールユニット29は、双
方向トライステートバッファ80、動き予測ユニット4
7およびローカルメモリ56の動作も制御する。動き予
測用参照画像データは、ローカルデータバスLDBを介
して転送される。このときの転送タイミングもコントロ
ールユニット29により管理される。双方向トライステ
ートバッファ80は、コントロールユニット29から出
力されるクロック信号に同期してデータの取込みおよび
保持していたデータの出力を同時に実行することができ
る。
(14) Fourteenth Embodiment FIG. 90 is a block diagram of an image compression / decompression processing device 114 showing a fourteenth embodiment of the present invention. In the fourteenth embodiment, the pixel data bus PB and the local data bus LD
A 32-bit bidirectional tri-state buffer 80 connecting B is added. As shown in FIG. 90, the pixel processing unit 37 includes a local data bus LDB.
It is also possible to use the one that does not have the second data output port connected to. The control unit 29 includes a bidirectional tristate buffer 80, a motion prediction unit 4
7 and local memory 56 operations are also controlled. The reference image data for motion prediction is transferred via the local data bus LDB. The transfer timing at this time is also managed by the control unit 29. The bidirectional tri-state buffer 80 can simultaneously execute the data acquisition and the held data output in synchronization with the clock signal output from the control unit 29.

【0168】図90を参照して、画像符号化処理におけ
る画像データ転送、および1マクロブロックの画像デー
タを処理する際の画像データ転送量について説明する。
ここで、符号化対象画像データは既にフレームバッファ
メモリ51に記憶されており、動き検出に必要な参照
(再生)画像の輝度成分も既にローカルメモリ56に記
憶されているものと仮定する。また、転送量を求める前
提として、画像フォーマットは4:2:0、動き検出範
囲は±16画素、ストラクチャーはフレームとする。
With reference to FIG. 90, the image data transfer amount in the image encoding process and the image data transfer amount in processing the image data of one macroblock will be described.
Here, it is assumed that the image data to be encoded is already stored in the frame buffer memory 51, and the luminance component of the reference (reproduction) image necessary for motion detection is already stored in the local memory 56. As a premise for obtaining the transfer amount, the image format is 4: 2: 0, the motion detection range is ± 16 pixels, and the structure is a frame.

【0169】まず、原画像データをコントロールユニッ
ト29からフレームバッファメモリ51へピクセルデー
タバスPBを用いて転送する。このとき、転送する画像
データ量は384画素である。
First, the original image data is transferred from the control unit 29 to the frame buffer memory 51 using the pixel data bus PB. At this time, the amount of image data to be transferred is 384 pixels.

【0170】次に、動き予測を行なうために動き予測対
象画像の輝度成分が、フレームバッファメモリ51から
コントロールユニット29へピクセルデータバスPBを
用いて転送され、さらに、専用のローカルバスLB4を
用いて動き予測ユニット47へ転送される。このとき、
転送する画像データ量は256画素である。
Next, the luminance component of the motion prediction target image for motion prediction is transferred from the frame buffer memory 51 to the control unit 29 using the pixel data bus PB, and further using the dedicated local bus LB4. Transferred to the motion estimation unit 47. At this time,
The amount of image data to be transferred is 256 pixels.

【0171】動き予測処理が終了し、その結果を用いた
符号化判定においてフレーム間予測を用いる場合、符号
化処理を行なうため、予測(再生)画像を、フレームバ
ッファメモリ51からピクセルプロセシングユニット3
7へピクセルデータバスPBを用いて転送する。このと
き、転送する画像データ量は、予測画像1面につき、4
51画素である。したがって、両方向予測時には、90
2画素のデータが転送される必要がある。
When the motion prediction process is completed and the interframe prediction is used in the coding determination using the result, the predicted (reproduced) image is transferred from the frame buffer memory 51 to the pixel processing unit 3 in order to perform the coding process.
7 through the pixel data bus PB. At this time, the amount of image data to be transferred is 4 per predicted image.
It has 51 pixels. Therefore, in bidirectional prediction, 90
Two pixels of data need to be transferred.

【0172】次に、符号化対象画像が、フレームバッフ
ァメモリ51からピクセルプロセシングユニット37へ
ピクセルデータバスPBを用いて転送される。このと
き、転送する画像データ量は384画素である。
Next, the image to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 37 using the pixel data bus PB. At this time, the amount of image data to be transferred is 384 pixels.

【0173】上記の4つの画像データ転送処理と並行し
て、動き予測を行なうため、動き検索範囲の画像の輝度
成分をローカルメモリ56から動き予測ユニット47へ
ローカルデータバスLDBを用いて転送する。このと
き、転送する画像データ量は、参照画像1面につき76
8画素である。したがって、両方向予測時には、2面分
の1536画素のデータを転送する必要がある。
In parallel with the above-mentioned four image data transfer processes, in order to perform motion estimation, the luminance component of the image in the motion search range is transferred from the local memory 56 to the motion prediction unit 47 using the local data bus LDB. At this time, the amount of image data to be transferred is 76 per reference image.
It has 8 pixels. Therefore, in bidirectional prediction, it is necessary to transfer data of 1536 pixels for two planes.

【0174】符号化終了後、フレーム内符号化画像およ
び片方向予測画像に関して、再生画像データがピクセル
プロセシングユニット37からピクセルデータバスPB
を用いてフレームバッファメモリ51へ転送される。こ
のとき同時に、再生画像データは双方向トライステート
バッファ80へ転送される。さらに、再生画像は、1シ
ステムサイクルを遅れて、双方向トライステートバッフ
ァ80からローカルデータバスLDBを介してローカル
メモリ56へ転送される。コントロールユニット29
は、再生画像の輝度成分を転送しているときにのみ、双
方向トライステートバッファ80を介したローカルメモ
リ56へのデータ転送を制御する。このとき、転送する
画像データ量は、ピクセルデータバスPBで384画
素、およびローカルデータバスLDBで256画素であ
る。
After the coding is completed, the reproduced image data is transferred from the pixel processing unit 37 to the pixel data bus PB for the intra-frame coded image and the one-way predicted image.
Is transferred to the frame buffer memory 51 by using. At the same time, the reproduced image data is transferred to the bidirectional tristate buffer 80. Further, the reproduced image is transferred from the bidirectional tristate buffer 80 to the local memory 56 via the local data bus LDB with a delay of one system cycle. Control unit 29
Controls the data transfer to the local memory 56 via the bidirectional tristate buffer 80 only when the luminance component of the reproduced image is being transferred. At this time, the amount of image data to be transferred is 384 pixels in the pixel data bus PB and 256 pixels in the local data bus LDB.

【0175】上記のように、コントロールユニット29
が、再生画像の輝度成分を転送しているときにのみ、双
方向トライステートバッファ80を介したローカルメモ
リ56へのデータ転送を制御するシステム制御器(図示
省略)を具備することにより、ピクセルプロセシングユ
ニット37はローカルデータバスLDBに直接接続され
る第2のデータ出力ポートを具備する必要がなく、図8
3に示す第7実施例と同様にバスを分割することがで
き、データ転送の並列処理が可能となる。
As described above, the control unit 29
However, by providing a system controller (not shown) that controls data transfer to the local memory 56 via the bidirectional tri-state buffer 80 only when transferring the luminance component of the reproduced image, the pixel processing is performed. The unit 37 does not have to have a second data output port directly connected to the local data bus LDB,
As in the seventh embodiment shown in FIG. 3, the bus can be divided, and parallel processing of data transfer becomes possible.

【0176】このとき、データ転送量は、図83に示す
第7実施例と同等であり、双方向予測時に最大となる。
具体的には、ピクセルデータバスPBでは1926画素
のデータが転送され、ローカルデータバスLDBでは1
536画素のデータが転送される。したがって、バスを
分割することにより、1つのバスで転送するデータ量が
削減され、実質的にデータ転送速度が向上し、画像圧縮
/伸長処理装置の処理速度を向上することが可能とな
る。
At this time, the data transfer amount is the same as that of the seventh embodiment shown in FIG. 83, and becomes the maximum in bidirectional prediction.
Specifically, 1926 pixel data is transferred to the pixel data bus PB, and 1 is transferred to the local data bus LDB.
Data of 536 pixels is transferred. Therefore, by dividing the bus, the amount of data transferred by one bus is reduced, the data transfer speed is substantially improved, and the processing speed of the image compression / expansion processing device can be improved.

【0177】(15) 第15実施例 図91は、この発明の第15実施例を示す画像圧縮/伸
長処理装置115のブロック図である。第15実施例で
は、バッファメモリ6および装置外部の通信装置94を
経由してビットストリームデータが入出力される構成を
有している。バッファメモリ6には、コントロールユニ
ット23に含まれる可変長プロセッサ(図示省略)によ
り画素データを符号化して得られたビットストリームデ
ータおよびラン/レベルデータが一時的に記憶される。
したがって、ホストコンピュータ93を介さずに、ビッ
トストリームデータのみのデータ転送を行なうことが可
能となり、転送速度を向上することができる。
(15) Fifteenth Embodiment FIG. 91 is a block diagram of an image compression / expansion processing apparatus 115 showing a fifteenth embodiment of the present invention. The fifteenth embodiment has a configuration in which bit stream data is input and output via the buffer memory 6 and the communication device 94 outside the device. The buffer memory 6 temporarily stores bit stream data and run / level data obtained by encoding pixel data by a variable length processor (not shown) included in the control unit 23.
Therefore, only the bit stream data can be transferred without going through the host computer 93, and the transfer speed can be improved.

【0178】つまり、ホストコンピュータ93では、デ
ータ転送処理以外に命令制御等の複雑な処理が多く発生
し、ホストコンピュータ93に対する負荷が重くなる。
したがって、画像圧縮/伸長処理装置115の外部に通
信装置94を備え、バッファメモリ6からホストコンピ
ュータ93を介さず通信装置94へデータを転送するこ
とができ、ホストコンピュータ93の負荷に依存せず、
データを高速に転送することが可能となる。
That is, in the host computer 93, many complicated processes such as instruction control occur in addition to the data transfer process, and the load on the host computer 93 becomes heavy.
Therefore, the communication device 94 is provided outside the image compression / expansion processing device 115, data can be transferred from the buffer memory 6 to the communication device 94 without passing through the host computer 93, and the load on the host computer 93 does not depend,
Data can be transferred at high speed.

【0179】2.コントロールユニット (1) コントロールユニット21(第1の例) 図9は、コントロールユニットの一例を示すブロック図
である。図9に示したコントロールユニット21は、図
1,図5,図6,図7および図8に示したコントロール
ユニット2に適用され得る。
2. Control Unit (1) Control Unit 21 (First Example) FIG. 9 is a block diagram showing an example of the control unit. The control unit 21 shown in FIG. 9 can be applied to the control unit 2 shown in FIGS. 1, 5, 6, 7 and 8.

【0180】図9を参照して、コントロールユニット2
1は、パイプライン処理制御を含む全体制御のためのプ
ロセッサ11と、可変長符号化および復号化処理のため
のプロセッサ12と、動き予測ユニット(たとえば図1
に示した動き予測ユニット41)のための制御ユニット
13と、画像フォーマット変換のための画像フォーマッ
ト変換ユニット14と、画像データ転送制御ユニット1
5と、ピクセルプロセシングユニット(たとえば図1に
示したユニット3)のための命令転送ユニット16と、
ホストバス(図1に示したバスHB)に接続されるメイ
ンポート17と、ピクセルバス(図1に示したバスP
B)に接続される画像データポート18と、入出力バス
(図1に示したバスIOB)に接続されるVRAMポー
ト19と、コードデータバス(図1に示したコードバス
CB)に接続されるコードデータポート20とを含む。
Referring to FIG. 9, control unit 2
1 includes a processor 11 for overall control including pipeline processing control, a processor 12 for variable length coding and decoding processing, and a motion prediction unit (see FIG. 1).
Control unit 13 for the motion prediction unit 41), the image format conversion unit 14 for image format conversion, and the image data transfer control unit 1 shown in FIG.
5 and an instruction transfer unit 16 for the pixel processing unit (eg unit 3 shown in FIG. 1),
The main port 17 connected to the host bus (bus HB shown in FIG. 1) and the pixel bus (bus P shown in FIG. 1)
B) connected to an image data port 18, a VRAM port 19 connected to an input / output bus (bus IOB shown in FIG. 1), and a code data bus (code bus CB shown in FIG. 1). And a code data port 20.

【0181】なお、図9において、一般に、「DT」は
データ信号を示し、「ADR」はアドレス信号を示し、
「Sc」は制御信号を示す。
In FIG. 9, generally, "DT" indicates a data signal, "ADR" indicates an address signal,
“Sc” indicates a control signal.

【0182】各ユニット12ないし16は、バスを介し
て全体制御プロセッサ11に接続され、全体制御プロセ
ッサ11から与えられる命令を受ける。各ユニット12
ないし16は、与えられた命令に従って、独立に処理を
行なう。
Each of the units 12 to 16 is connected to the overall control processor 11 via the bus and receives an instruction given from the overall control processor 11. Each unit 12
Nos. 16 to 16 independently perform processing in accordance with the given instruction.

【0183】制御ユニット13,フォーマット変換ユニ
ット14および画像データ転送制御ユニット15は、画
素データのためのバスを介して接続され、画像データ転
送制御ユニット15の制御の下で画素データの転送が行
なわれる。
The control unit 13, the format conversion unit 14 and the image data transfer control unit 15 are connected via a bus for pixel data, and the pixel data is transferred under the control of the image data transfer control unit 15. .

【0184】メインポート17は、全体制御プロセッサ
11および可変長プロセッサ12に接続される。全体制
御プロセッサ11および可変長プロセッサ12と図1に
示したバッファメモリ6およびワークメモリ7との間で
データ転送が行なわれるとき、メインポート17を介し
てデータが転送される。
The main port 17 is connected to the overall control processor 11 and the variable length processor 12. When data is transferred between the overall control processor 11 and the variable length processor 12 and the buffer memory 6 and the work memory 7 shown in FIG. 1, the data is transferred through the main port 17.

【0185】画像データポート18は、画像データ転送
制御ユニット15に接続される。画像データ転送制御ユ
ニット15と図1に示したフレームバッファメモリ51
との間のデータ転送は、画像データポート18を介して
行なわれる。フレームバッファメモリ5の転送先が動き
予測ユニット41またはピクセルプロセシングユニット
3である場合には、画像データポート18がデータの有
効/無効を示す制御信号を出力する。
The image data port 18 is connected to the image data transfer control unit 15. The image data transfer control unit 15 and the frame buffer memory 51 shown in FIG.
Data transfer between and is performed via the image data port 18. When the transfer destination of the frame buffer memory 5 is the motion prediction unit 41 or the pixel processing unit 3, the image data port 18 outputs a control signal indicating data validity / invalidity.

【0186】VRAMポート19は、画像フォーマット
変換ユニット14に接続される。VRAMポート19を
介して、画像フォーマット変換ユニット14と図1に示
した入出力メモリ81との間のデータ転送が行なわれ
る。
The VRAM port 19 is connected to the image format conversion unit 14. Data transfer between the image format conversion unit 14 and the input / output memory 81 shown in FIG. 1 is performed via the VRAM port 19.

【0187】次に、図1および図9を参照して、画像圧
縮処理について説明する。圧縮されるべき画像データ
は、図1に示したフレームバッファメモリ51において
ストアされているものと仮定する。全体制御プロセッサ
11は、まず、画像データ転送命令を画像データ転送制
御ユニット15に与えることにより、画像データをフレ
ームバッファメモリ51から画像フォーマット変換ユニ
ット14に転送する。データ転送の終了は、画像データ
転送制御ユニット15から全体制御プロセッサ11に通
知される。
Next, the image compression process will be described with reference to FIGS. It is assumed that the image data to be compressed is stored in the frame buffer memory 51 shown in FIG. The overall control processor 11 first transfers image data from the frame buffer memory 51 to the image format conversion unit 14 by giving an image data transfer command to the image data transfer control unit 15. The end of data transfer is notified from the image data transfer control unit 15 to the overall control processor 11.

【0188】次に、全体制御プロセッサ11は、画像フ
ォーマット変換命令を画像フォーマット変換ユニット1
4に与える。画像フォーマット変換ユニット14は、画
像フォーマット変換のための演算処理を行なう。すなわ
ち、画像フォーマット変換ユニット14において、色差
信号のサブサンプルおよびRGBフォーマットからYU
Vフォーマットへの変換処理が行なわれる。フォーマッ
ト変換処理の終了は、画像フォーマット変換ユニット1
4から全体制御プロセッサ11に通知される。
Next, the overall control processor 11 sends the image format conversion instruction to the image format conversion unit 1.
Give to 4. The image format conversion unit 14 performs arithmetic processing for image format conversion. That is, in the image format conversion unit 14, the color difference signal sub-sample and the RGB format are converted into YU.
Conversion processing to the V format is performed. The image format conversion unit 1 finishes the format conversion process.
4 to notify the overall control processor 11.

【0189】さらに、全体制御プロセッサ11は、画像
データ転送命令を画像データ転送制御ユニット15に与
えることにより、変換された画像データを画像フォーマ
ット変換ユニット14からフレームバッファメモリ51
に転送する。データ転送の終了は、画像データ転送制御
ユニット15から全体制御プロセッサ11に通知され
る。
Further, the overall control processor 11 gives an image data transfer command to the image data transfer control unit 15 to transfer the converted image data from the image format conversion unit 14 to the frame buffer memory 51.
Transfer to. The end of data transfer is notified from the image data transfer control unit 15 to the overall control processor 11.

【0190】動き予測および符号化モード判定のための
処理を実行するため、全体制御プロセッサ11は、フレ
ームバッファメモリ51から動き予測処理のための画像
データを動き予測制御ユニット13に転送する。このデ
ータ転送は、全体制御プロセッサ11から画像データ転
送制御ユニット15に画像データ転送命令を与えること
により行なわれる。データ転送の終了は、画像データ転
送制御ユニット15から全体制御プロセッサ11に通知
される。
In order to execute the processing for motion prediction and coding mode determination, the overall control processor 11 transfers image data for motion prediction processing from the frame buffer memory 51 to the motion prediction control unit 13. This data transfer is performed by giving an image data transfer command from the overall control processor 11 to the image data transfer control unit 15. The end of data transfer is notified from the image data transfer control unit 15 to the overall control processor 11.

【0191】必要に応じ、全体制御プロセッサ11は、
動き予測制御ユニット13にデータサブサンプル命令を
与え、これにより、動き予測制御ユニット13は動き予
測対象の画像データのサブサンプルを行なう。データの
サブサンプルの終了は、制御ユニット13から全体制御
プロセッサ11に通知される。
If necessary, the overall control processor 11
A data sub-sampling instruction is given to the motion prediction control unit 13, whereby the motion prediction control unit 13 performs sub-sampling of the image data to be motion predicted. The end of the data sub-sampling is notified from the control unit 13 to the overall control processor 11.

【0192】次に、全体制御プロセッサ11は、フレー
ム内符号化のためのモード評価値演算命令を動き予測用
制御ユニット13に与える。制御ユニット13は、動き
予測対象データ(必要に応じサブサンプルされたデー
タ)に対して、フレーム内符号化モードにおける評価値
のための演算を行なう。この演算の終了は、制御ユニッ
ト13から全体制御プロセッサ11に通知される。
Next, the overall control processor 11 gives a motion estimation control unit 13 a mode evaluation value calculation instruction for intraframe coding. The control unit 13 performs a calculation for the evaluation value in the intra-frame coding mode on the motion prediction target data (data subsampled as necessary). The control unit 13 notifies the overall control processor 11 of the end of this calculation.

【0193】さらに、全体制御プロセッサ11は、画像
データ転送制御ユニット15にデータ転送命令を与え、
画像データ転送制御ユニット15は、動き検索領域の画
像データをフレームバッファメモリ51から動き予測ユ
ニット41に転送する。データ転送の終了は、画像デー
タ転送制御ユニット15から全体制御プロセッサ11に
通知される。
Further, the overall control processor 11 gives a data transfer instruction to the image data transfer control unit 15,
The image data transfer control unit 15 transfers the image data of the motion search area from the frame buffer memory 51 to the motion prediction unit 41. The end of data transfer is notified from the image data transfer control unit 15 to the overall control processor 11.

【0194】次に、全体制御プロセッサ11は、動き予
測ユニット用制御ユニット13に動き予測対象データ転
送命令を与え、制御ユニット13は、検出対象データ
(必要に応じサブサンプルされたデータ)を動き予測ユ
ニット41に転送する。データ転送の終了は、画像デー
タ転送制御ユニット15から全体制御プロセッサ11に
通知される。
Next, the overall control processor 11 gives a motion prediction target data transfer command to the motion prediction unit control unit 13, and the control unit 13 performs motion prediction on the detection target data (data subsampled as necessary). Transfer to unit 41. The end of data transfer is notified from the image data transfer control unit 15 to the overall control processor 11.

【0195】検索対象画像データおよび動き予測対象画
像データが転送された後、動き予測ユニット41が動き
予測処理を開始し、しばらくの後、動き予測結果、すな
わち動きベクトルデータおよび動きベクトルに関するフ
レーム間符号化モード評価値データを生成する。
After the search target image data and the motion prediction target image data are transferred, the motion prediction unit 41 starts the motion prediction processing, and after a while, the motion prediction result, that is, the motion vector data and the inter-frame code relating to the motion vector. Generated evaluation mode evaluation value data.

【0196】或る時間が経過した後、全体制御プロセッ
サ11は、動き予測制御ユニット13に動き予測結果を
受信するための命令を与え、制御ユニット13は動き予
測ユニット41から動き予測結果を示すデータを受け
る。データ受信の終了は、制御ユニット13から全体制
御プロセッサ11に通知される。
After a certain time has passed, the overall control processor 11 gives the motion prediction control unit 13 a command for receiving the motion prediction result, and the control unit 13 sends data indicating the motion prediction result from the motion prediction unit 41. Receive. The control unit 13 notifies the overall control processor 11 of the end of data reception.

【0197】次に、全体制御プロセッサ11は、動き予
測制御ユニット13における演算により得られたフレー
ム内符号化モード評価値データおよび動き予測ユニット
41における演算により得られたフレーム間符号化モー
ド評価値データに基づいて、符号化モードを決定する。
符号化モードの決定は、図1に示したバッファメモリ6
内にストアされている符号化モード判定テーブルデータ
の参照、または評価データに対する比較演算の実行によ
り行なわれる。
Next, the overall control processor 11 causes the intra-frame coding mode evaluation value data obtained by the calculation in the motion prediction control unit 13 and the inter-frame coding mode evaluation value data obtained by the calculation in the motion prediction unit 41. The encoding mode is determined based on
The encoding mode is determined by the buffer memory 6 shown in FIG.
This is performed by referring to the encoding mode determination table data stored in or executing a comparison operation on the evaluation data.

【0198】符号化モードが決定された後、ソース符号
化処理、すなわちDCT処理および量子化処理が行なわ
れる。まず、全体制御プロセッサ11は、画像データ転
送制御ユニット15に画像データ転送命令を与え、画像
データ転送制御ユニット15は符号化されるべきデータ
をフレームバッファメモリ51からピクセルプロセシン
グユニット3に転送する。データ転送の終了は、画像デ
ータ転送制御ユニット15から全体制御プロセッサ11
に通知される。
After the coding mode is determined, source coding processing, that is, DCT processing and quantization processing is performed. First, the overall control processor 11 gives an image data transfer command to the image data transfer control unit 15, and the image data transfer control unit 15 transfers the data to be encoded from the frame buffer memory 51 to the pixel processing unit 3. The data transfer is completed by the image data transfer control unit 15 to the overall control processor 11
Will be notified.

【0199】次に、全体制御プロセッサ11は、ピクセ
ルプロセシングユニット用命令転送ユニット16を介し
て、ピクセルプロセシングユニット3にソース符号化命
令を与える。ピクセルプロセシングユニット3は、ソー
ス符号化命令に応答して、ソース符号化演算、すなわち
DCT演算および量子化演算を実行する。演算の終了
は、命令転送ユニット16を介して、ピクセルプロセシ
ングユニット3から全体制御プロセッサ11に通知され
る。
Next, the overall control processor 11 gives a source encoding instruction to the pixel processing unit 3 via the pixel processing unit instruction transfer unit 16. The pixel processing unit 3 performs a source coding operation, that is, a DCT operation and a quantization operation, in response to the source coding instruction. Completion of the operation is notified from the pixel processing unit 3 to the overall control processor 11 via the instruction transfer unit 16.

【0200】ソース符号化演算、すなわちDCT処理お
よび量子化処理が行なわれた後、可変長符号化処理が行
なわれる。すなわち、全体制御プロセッサ11は、命令
転送ユニット16を介して、処理されたデータの転送を
要求する命令をピクセルプロセシングユニット3に与え
る。ピクセルプロセシングユニット3は、この命令に応
答して、可変長処理プロセッサ12に処理されたデータ
を転送する。データ転送の終了は、命令転送ユニット1
6を介して、ピクセルプロセシングユニット3から全体
制御プロセッサ11に通知される。
After the source coding operation, that is, the DCT process and the quantization process, the variable length coding process is performed. That is, the overall control processor 11 gives an instruction to the pixel processing unit 3 via the instruction transfer unit 16 to request the transfer of processed data. The pixel processing unit 3 transfers the processed data to the variable length processor 12 in response to this instruction. Instruction transfer unit 1 ends the data transfer.
The pixel processing unit 3 notifies the overall control processor 11 via 6.

【0201】可変長符号化処理、すなわちエントロピー
符号化処理を行なうため、全体制御プロセッサ11は、
可変長プロセッサ12にエントロピー符号化命令を与え
る。可変長プロセッサ12は、エントロピー符号化処理
を実行する。エントロピー符号化処理において、ハフマ
ン符号などを用いたコード変換処理が行なわれる。すな
わち、可変長プロセッサ12は、ソース符号化処理によ
り得られたデータについて、ワークメモリ7内にストア
されたコード変換テーブルデータを参照することによ
り、コード変換を実行する。エントロピー符号化処理の
終了は、可変長処理プロセッサ12から全体制御プロセ
ッサ11に通知される。
Since the variable length coding process, that is, the entropy coding process is performed, the overall control processor 11
Provide entropy coding instructions to variable length processor 12. The variable length processor 12 executes an entropy coding process. In the entropy coding process, code conversion process using Huffman code or the like is performed. That is, the variable-length processor 12 executes the code conversion by referring to the code conversion table data stored in the work memory 7 for the data obtained by the source encoding process. The end of the entropy coding process is notified from the variable length processor 12 to the overall control processor 11.

【0202】エントロピー符号化処理が行なわれた後、
全体制御プロセッサ11は、処理されたデータの転送を
要求する命令を可変長プロセッサ12に与える。可変長
処理プロセッサ12は、処理されたデータをバッファメ
モリ6に転送する。データ転送の終了は、可変長プロセ
ッサ12から全体制御プロセッサ11に通知される。
After the entropy coding process is performed,
The overall control processor 11 provides the variable length processor 12 with an instruction requesting the transfer of processed data. The variable length processor 12 transfers the processed data to the buffer memory 6. The end of data transfer is notified from the variable length processor 12 to the overall control processor 11.

【0203】上記の記載からわかるように、画像データ
圧縮処理は、全体制御プロセッサ11による全体制御の
下で、コントロールユニット21における各処理ユニッ
ト13,14,15および16ならびに可変長プロセッ
サ12において独立に行なわれ得る。すなわち、画像フ
ォーマット変換ユニット14による画像フォーマット変
換処理,動き予測ユニット41および動き予測ユニット
制御ユニット13による動き予測および符号化モード評
価値のための演算処理,画像データ転送制御ユニット1
5による画像データ転送,ピクセルプロセシングユニッ
ト3によるソース符号化演算,および可変長プロセッサ
12によるエントロピー符号化演算がすべて独立にかつ
並列に実行できる。したがって、全体制御プロセッサ1
1は、画像の各マクロブロックデータについての上記の
処理をパイプライン処理制御の下で実行する。上記の処
理のパイプライン処理については、後で図11および図
12を参照して詳細に説明されるのであるが、パイプラ
イン処理により、非常に効率のよい画像圧縮処理が実現
され得る。
As can be seen from the above description, the image data compression processing is performed independently in each processing unit 13, 14, 15 and 16 in the control unit 21 and in the variable length processor 12 under the overall control by the overall control processor 11. Can be done. That is, the image format conversion processing by the image format conversion unit 14, the motion prediction by the motion prediction unit 41 and the motion prediction unit control unit 13, the arithmetic processing for the coding mode evaluation value, and the image data transfer control unit 1
5, the image data transfer by 5, the source coding operation by the pixel processing unit 3, and the entropy coding operation by the variable length processor 12 can all be executed independently and in parallel. Therefore, the overall control processor 1
1 executes the above processing for each macroblock data of the image under pipeline processing control. The pipeline process of the above process will be described later in detail with reference to FIGS. 11 and 12, but the pipeline process can realize a very efficient image compression process.

【0204】画像伸張処理も、上記の画像圧縮処理と同
様に、全体制御プロセッサ11による全体制御の下で、
コントロールユニット21における各処理が独立して行
なわれる。画像伸張処理では、バッファメモリ6内にス
トアされたコードデータが逆変換され、最終的には、画
像フォーマット変換ユニット14を介して伸張された画
像データが図1に示した入出力メモリ81に転送され
る。
Similarly to the image compression processing described above, the image expansion processing is also performed under the overall control of the overall control processor 11.
Each processing in the control unit 21 is performed independently. In the image expansion processing, the code data stored in the buffer memory 6 is inversely converted, and finally the expanded image data is transferred to the input / output memory 81 shown in FIG. 1 via the image format conversion unit 14. To be done.

【0205】(2) コントロールユニット22(第2
の例) 図10は、コントロールユニットの別の例を示すブロッ
ク図である。図10に示したコントロールユニット22
は、図4に示したコントロールユニット22として適用
される。図9に示したコントロールユニット21と比較
すると、コントロールユニット22は、動き予測ユニッ
ト制御ユニット13が除かれている。すなわち、図4に
示した画像圧縮/伸張処理装置102は動き予測処理を
必要としていないので、この点に応じて、コントロール
ユニット22から動き予測ユニット用制御ユニットが除
かれている。
(2) Control unit 22 (second
Example) FIG. 10 is a block diagram showing another example of the control unit. Control unit 22 shown in FIG.
Is applied as the control unit 22 shown in FIG. Compared to the control unit 21 shown in FIG. 9, the control unit 22 does not include the motion prediction unit control unit 13. That is, since the image compression / expansion processing device 102 shown in FIG. 4 does not require the motion prediction process, the motion prediction unit control unit is excluded from the control unit 22 according to this point.

【0206】動き予測処理を除き、図10に示したコン
トロールユニット22は、図9に示したコントロールユ
ニット21と同様に動作することが指摘される。したが
って、図9に示したコントロールユニット21と同様の
利点、すなわち、コントロールユニット22における各
内部ユニットが独立にかつ並列に動作可能であり、パイ
プライン処理制御の下で、効率的な画像データ圧縮処理
が行なわれ得る。
It is pointed out that the control unit 22 shown in FIG. 10 operates similarly to the control unit 21 shown in FIG. 9, except for the motion prediction process. Therefore, the same advantage as the control unit 21 shown in FIG. 9, that is, each internal unit in the control unit 22 can operate independently and in parallel, and efficient image data compression processing can be performed under pipeline processing control. Can be done.

【0207】(3) パイプライン処理 図9および図10に示した全体制御プロセッサ11は、
画像圧縮/伸張処理装置においてパイプライン処理を次
のように実行する。
(3) Pipeline Processing The overall control processor 11 shown in FIG. 9 and FIG.
Pipeline processing is executed in the image compression / expansion processing apparatus as follows.

【0208】図11は、図9に示した全体制御プロセッ
サ11の制御の下で行なわれるパイプライン処理を示す
タイムチャートである。図11を参照して、横軸は時間
の経過を示し、縦軸は画像圧縮のための処理ステップを
示す。画像圧縮処理では、処理されるべき1つのフレー
ムデータが多数のマクロブロックMBに分けられ、マク
ロブロックデータごとに画像圧縮のための処理が行なわ
れる。図11に示した例では、10個のマクロブロック
データMB1ないしMB10を扱う例が示されている。
FIG. 11 is a time chart showing a pipeline process performed under the control of the overall control processor 11 shown in FIG. Referring to FIG. 11, the horizontal axis represents the passage of time and the vertical axis represents the processing steps for image compression. In the image compression processing, one frame data to be processed is divided into a large number of macroblocks MB, and the processing for image compression is performed for each macroblock data. In the example shown in FIG. 11, an example in which 10 pieces of macroblock data MB1 to MB10 are handled is shown.

【0209】図11を参照して、一例として、1つのマ
クロブロックデータMB1が処理される場合について説
明する。まず、期間T1において、マクロブロックデー
タMB1についてのRGBデータが図1に示した入出力
メモリ81からコントロールユニット2に転送される
(ステップS1)。期間T2において、図9に示した画
像フォーマット変換ユニット14により、RGBデータ
がYUVデータに変換される(ステップS2)。
As an example, a case where one macroblock data MB1 is processed will be described with reference to FIG. First, in the period T1, the RGB data of the macroblock data MB1 is transferred from the input / output memory 81 shown in FIG. 1 to the control unit 2 (step S1). In the period T2, the image format conversion unit 14 shown in FIG. 9 converts the RGB data into YUV data (step S2).

【0210】期間T3において、YUVデータはフレー
ムバッファメモリ51に転送され、検索対象の画像デー
タがコントロールユニット2に転送される。同時に、動
き予測ユニット41にも、検索対象画像データがピクセ
ルデータバスPBを介して転送される(ステップS
3)。
In the period T3, the YUV data is transferred to the frame buffer memory 51 and the image data to be searched is transferred to the control unit 2. At the same time, the search target image data is also transferred to the motion prediction unit 41 via the pixel data bus PB (step S).
3).

【0211】期間T4において、動き予測ユニット41
による動き予測処理が行なわれる(ステップS4)。期
間T5において、コントロールユニット2により符号化
モードの判定処理が行なわれる(ステップS5)。
In the period T4, the motion prediction unit 41
The motion prediction process is performed (step S4). In the period T5, the control unit 2 performs a coding mode determination process (step S5).

【0212】期間T6において、符号化対象の画像デー
タがフレームバッファメモリ51からピクセルプロセシ
ングユニット3に転送され、一方、参照画像データがピ
クセルデータバスPBを介してピクセルプロセシングユ
ニット3に転送される(ステップS6)。
In the period T6, the image data to be encoded is transferred from the frame buffer memory 51 to the pixel processing unit 3, while the reference image data is transferred to the pixel processing unit 3 via the pixel data bus PB (step S6). S6).

【0213】期間T7において、ピクセルプロセシング
ユニット3により符号化のための画像演算処理、すなわ
ちDCT処理および量子化処理が行なわれる(ステップ
S7)。期間T8において、処理されたデータ、すなわ
ちラン−レベルデータがコードバスCBを介してバッフ
ァメモリ6に転送される(ステップS8)。
In the period T7, the pixel processing unit 3 performs image calculation processing for encoding, that is, DCT processing and quantization processing (step S7). In the period T8, the processed data, that is, the run-level data is transferred to the buffer memory 6 via the code bus CB (step S8).

【0214】期間T9において、図9に示した可変長プ
ロセッサ12による可変長符号化処理が行なわれる(ス
テップS9)。期間T10において、処理されたデー
タ、すなわち可変長コードデータがコードバスCBを介
してバッファメモリ6に転送される(ステップS1
0)。
In the period T9, the variable length coding process is performed by the variable length processor 12 shown in FIG. 9 (step S9). In the period T10, the processed data, that is, the variable length code data is transferred to the buffer memory 6 via the code bus CB (step S1).
0).

【0215】前述のように、画像圧縮/伸張処理装置1
01では全体制御プロセッサ11の制御の下でパイプラ
イン処理が行なわれる。したがって、図11に示される
ように、他のマクロブロックデータMB2ないしMB1
0についても、マクロブロックデータMB1と同様に期
間T2ないしT10において対応する処理が順次に行な
われる。
As described above, the image compression / expansion processing device 1
In 01, pipeline processing is performed under the control of the overall control processor 11. Therefore, as shown in FIG. 11, the other macroblock data MB2 to MB1.
Also for 0, corresponding processing is sequentially performed in the periods T2 to T10 similarly to the macroblock data MB1.

【0216】図12は、図11に示した1つの期間T1
0における並列動作を示す並列動作図である。すなわ
ち、図11は、図1および図9に示した画像圧縮/伸張
処理装置101およびコントロールユニット21におけ
る各内部ユニットの期間T10における動作状態を示し
ている。図12を参照して、入出力バスIOBは、期間
T10において、第10番目のマクロブロックMB10
についてRGBデータを転送している(図11に示した
ステップS1)。ピクセルデータバスPBは、第8番目
のマクロブロックMB8および第5番目のマクロブロッ
クMB5についてのデータ転送を実行している(ステッ
プS3およびS6)。コードバスCBは、第3番目のマ
クロブロックMB3および第1番目のマクロブロックM
B1についてのデータ転送を実行している(ステップS
8およびS10)。
FIG. 12 shows one period T1 shown in FIG.
It is a parallel operation figure which shows the parallel operation in 0. That is, FIG. 11 shows an operating state of each internal unit in the image compression / expansion processing device 101 and the control unit 21 shown in FIGS. 1 and 9 in the period T10. Referring to FIG. 12, the input / output bus IOB has a tenth macroblock MB10 in the period T10.
RGB data has been transferred (step S1 shown in FIG. 11). The pixel data bus PB executes data transfer for the eighth macroblock MB8 and the fifth macroblock MB5 (steps S3 and S6). The code bus CB includes a third macro block MB3 and a first macro block M.
Data transfer for B1 is being executed (step S
8 and S10).

【0217】全体制御プロセッサ11は、第10番目の
マクロブロックMB10についてのRGBデータの転送
制御を行ない(ステップS3)、これと並列して、第6
番目のマクロブロックMB6についての符号化モード判
定処理を行なう(ステップS5)。これに加えて、全体
制御プロセッサ11は、マクロブロックMB1ないしM
B10についてのシーケンス制御、すなわちパイプライ
ン処理のための制御を行なう。
The overall control processor 11 controls the transfer of RGB data for the tenth macroblock MB10 (step S3), and in parallel with this, the sixth control is performed.
Encoding mode determination processing is performed for the th macroblock MB6 (step S5). In addition to this, the overall control processor 11 controls the macro blocks MB1 to M
Sequence control for B10, that is, control for pipeline processing is performed.

【0218】可変長処理プロセッサ12は、第2番目の
マクロブロックMB2についての可変長符号化処理を行
なう(ステップS9)。命令転送ユニット16は、第4
番目のマクロブロックMB4についての画像演算処理制
御を行なう(ステップS7)。
The variable length processor 12 performs the variable length coding process for the second macroblock MB2 (step S9). The instruction transfer unit 16 has a fourth
The image calculation processing control for the th macroblock MB4 is performed (step S7).

【0219】動き予測ユニット用制御ユニット13は、
第7番目のマクロブロックMB7についての動き予測処
理制御を行なう(ステップS4)。画像データ転送制御
ユニット15は、第8番目のマクロブロックMB8およ
び第5番目のマクロブロックMB5についてのデータ転
送制御を行なう(ステップS8)。
The motion prediction unit control unit 13 is
Motion prediction processing control is performed for the seventh macroblock MB7 (step S4). The image data transfer control unit 15 controls data transfer for the eighth macroblock MB8 and the fifth macroblock MB5 (step S8).

【0220】画像フォーマット変換ユニット14は、第
9番目のマクロブロックMB9についてのフォーマット
変換処理(RGBからYUV)を行なう(ステップS
2)。ピクセルプロセシングユニット3は、第4番目の
マクロブロックMB4についての画像演算処理を行なう
(ステップS7)。動き予測ユニット4は、第7番目の
マクロブロックMB7についての動き予測処理を行なう
(ステップS4)。
The image format conversion unit 14 performs the format conversion process (RGB to YUV) for the ninth macro block MB9 (step S).
2). The pixel processing unit 3 performs image calculation processing on the fourth macroblock MB4 (step S7). The motion prediction unit 4 performs a motion prediction process on the seventh macroblock MB7 (step S4).

【0221】(4) 各内部ユニットの構成 (i) 全体制御プロセッサ11(図13) 図13は、図9に示した全体制御プロセッサ11のブロ
ック図である。図13を参照して、全体制御プロセッサ
11は、命令メモリ111と、プログラム制御器112
と、シーケンス制御器/アドレス演算器113と、シス
テム制御器114と、演算レジスタファイル115と、
データ演算器116とを含む。この図において、「D
T」はデータを示し、「ADR」はアドレス信号を示
し、「ID」は命令データを示し、「Ssc」は状態制
御信号を示し、「Sc」は制御信号を示す。
(4) Configuration of Internal Units (i) Overall Control Processor 11 (FIG. 13) FIG. 13 is a block diagram of the overall control processor 11 shown in FIG. Referring to FIG. 13, the overall control processor 11 includes an instruction memory 111 and a program controller 112.
A sequence controller / address calculator 113, a system controller 114, a calculation register file 115,
And a data calculator 116. In this figure, "D
"T" indicates data, "ADR" indicates an address signal, "ID" indicates instruction data, "Ssc" indicates a state control signal, and "Sc" indicates a control signal.

【0222】(ii) 動き予測制御ユニット13(図
14) 図14は、図9に示した動き予測制御ユニット13のブ
ロック図である。図14を参照して、動き予測制御ユニ
ット13は、動き予測ユニットについてのモード/タイ
ミング制御器131と、全体制御器132と、ベクトル
データ処理器133と、動き検出対象画像データ処理器
134と、フレーム内符号化モード評価値演算器135
とを含む。
(Ii) Motion Prediction Control Unit 13 (FIG. 14) FIG. 14 is a block diagram of the motion prediction control unit 13 shown in FIG. 14, the motion prediction control unit 13 includes a mode / timing controller 131 for the motion prediction unit, an overall controller 132, a vector data processor 133, a motion detection target image data processor 134, Intra-frame coding mode evaluation value calculator 135
Including and

【0223】モード/タイミング制御器131は、動き
予測ユニット41のための制御信号Smcを出力する。
ベクトルデータ処理器133も、動き予測ユニット41
のための制御信号Smcを出力する。ベクトルデータ処
理器133は、動き予測ユニット41から動き検出結果
を示すデータDmrを受ける。動き検出対象画像データ
処理器134は、動き検出対象画像データDmiおよび
動き予測ユニット41のための制御信号Smcを出力す
る。動き検出対象画像データ処理器134は、画素デー
タPDをフレーム内符号化モード評価値演算器135に
与える。
The mode / timing controller 131 outputs the control signal Smc for the motion prediction unit 41.
The vector data processor 133 also includes the motion prediction unit 41.
For outputting the control signal Smc. The vector data processor 133 receives the data Dmr indicating the motion detection result from the motion prediction unit 41. The motion detection target image data processor 134 outputs the motion detection target image data Dmi and the control signal Smc for the motion prediction unit 41. The motion detection target image data processor 134 supplies the pixel data PD to the intra-frame coding mode evaluation value calculator 135.

【0224】(iii) 画像フォーマット変換ユニッ
ト14(図15) 図15は、図9に示した画像フォーマット変換ユニット
14のブロック図である。図15を参照して、画像フォ
ーマット変換ユニット14は、全体制御器141と、V
RAM制御器142と、色変換器143と、UVフィル
タ144と、画像メモリ145とを含む。
(Iii) Image Format Conversion Unit 14 (FIG. 15) FIG. 15 is a block diagram of the image format conversion unit 14 shown in FIG. Referring to FIG. 15, the image format conversion unit 14 includes an overall controller 141 and a V controller.
It includes a RAM controller 142, a color converter 143, a UV filter 144, and an image memory 145.

【0225】全体制御器141は、メインデータバスM
Bを介してデータDTおよびアドレス信号ADRを受け
る。VRAM制御器142は、VRAMポート19に接
続される。画像メモリ145は、内部ピクセルデータバ
スIPBを介して画素データPDを受けかつストアされ
たデータを供給する。
The general controller 141 uses the main data bus M
Data DT and address signal ADR are received via B. The VRAM controller 142 is connected to the VRAM port 19. The image memory 145 receives the pixel data PD via the internal pixel data bus IPB and supplies the stored data.

【0226】(iv) 画像データ転送制御ユニット1
5(図16) 図16は、図9に示した画像データ転送制御ユニット1
5のブロック図である。図16を参照して、画像データ
転送制御ユニット15は、全体制御器151と、画像デ
ータメモリ制御器152と、画像データ転送制御器15
3と、ピクセルデータバス転送制御器154とを含む。
(Iv) Image data transfer control unit 1
5 (FIG. 16) FIG. 16 shows the image data transfer control unit 1 shown in FIG.
5 is a block diagram of FIG. Referring to FIG. 16, the image data transfer control unit 15 includes an overall controller 151, an image data memory controller 152, and an image data transfer controller 15.
3 and a pixel data bus transfer controller 154.

【0227】図16において、「Simc」は画像デー
タメモリ制御信号を示し、「Sptc」はピクセルプロ
セシングユニット3のための画像データ転送制御信号を
示し、「Smtc」は動き予測ユニット41のための画
像データ転送制御信号を示す。
In FIG. 16, “Simc” indicates an image data memory control signal, “Sptc” indicates an image data transfer control signal for the pixel processing unit 3, and “Smtc” indicates an image for the motion prediction unit 41. 3 shows a data transfer control signal.

【0228】(v) 命令転送ユニット16(図17) 図17は、図9に示した命令転送ユニット16のブロッ
ク図である。図17を参照して、ピクセルプロセシング
ユニット3のための命令転送ユニット16は、全体制御
器161と、命令転送制御器162と、状態モニタ16
3とを含む。命令転送制御器162は、ピクセルプロセ
シングユニット3のための制御信号Spcを出力する。
状態モニタ163は、ピクセルプロセシングユニット3
から状態信号Spsを受ける。全体制御器161は、メ
インデータバスMBを介してデータDTおよびアドレス
信号ADRを受ける。
(V) Instruction Transfer Unit 16 (FIG. 17) FIG. 17 is a block diagram of the instruction transfer unit 16 shown in FIG. Referring to FIG. 17, the instruction transfer unit 16 for the pixel processing unit 3 includes an overall controller 161, an instruction transfer controller 162, and a status monitor 16.
Including 3 and. The instruction transfer controller 162 outputs the control signal Spc for the pixel processing unit 3.
The state monitor 163 is the pixel processing unit 3
From the status signal Sps. Overall controller 161 receives data DT and address signal ADR via main data bus MB.

【0229】このように、図14ないし図17に示した
各内部ユニット13,14,15および16は、図13
に示した全体制御プロセッサ11からそれぞれの処理の
開始を要求する信号を受け、それぞれの処理が終わった
後、処理の終了を示す制御信号を全体制御プロセッサ1
1に戻す。すなわち、各内部ユニット13,14,15
および16は、全体制御プロセッサ11からの処理開始
信号に応答して、個々に処理を実行できることが指摘さ
れる。したがって、全体制御プロセッサ11の制御の下
で、画像圧縮および画像伸張のためのデータ処理がパイ
プライン処理により効率的に行なわれ得る。
As described above, the internal units 13, 14, 15 and 16 shown in FIGS.
After receiving a signal requesting the start of each processing from the overall control processor 11 shown in FIG.
Return to 1. That is, each internal unit 13, 14, 15
It is pointed out that and 16 can individually execute processing in response to the processing start signal from the overall control processor 11. Therefore, under the control of the overall control processor 11, data processing for image compression and image expansion can be efficiently performed by pipeline processing.

【0230】(5) コントロールユニット200(第
3の例) 図92は、コントロールユニットのさらに別の例を示す
ブロック図である。図92に示したコントロールユニッ
ト200は、図1、図5〜図8、図84〜図91に示し
たコントロールユニットとして適用される。
(5) Control Unit 200 (Third Example) FIG. 92 is a block diagram showing still another example of the control unit. The control unit 200 shown in FIG. 92 is applied as the control unit shown in FIGS. 1, 5 to 8, and 84 to 91.

【0231】図92を参照して、コントロールユニット
200は、ホストバスHBに接続されるホストインタフ
ェース部201、パイプライン制御を含む各種制御を行
なう全体制御部202、入出力バスIOBに接続される
ビデオ入出力部203、マクロコードで書かれたプログ
ラムを実行するメインプロセッサ204、フレームメモ
リ制御部205、動き予測用フレームメモリの制御動作
も行なう動き予測ユニット制御部206、ピクセルプロ
セシングユニットとの間でコードデータを扱うコードデ
ータ制御部207、パラメータ演算部208、可変長符
復号化のための可変長プロセッサ209を含む。
Referring to FIG. 92, control unit 200 includes host interface unit 201 connected to host bus HB, overall control unit 202 for performing various controls including pipeline control, and video connected to input / output bus IOB. Codes between the input / output unit 203, the main processor 204 that executes a program written in macro code, the frame memory control unit 205, the motion prediction unit control unit 206 that also controls the motion prediction frame memory, and the pixel processing unit. A code data control unit 207 for handling data, a parameter calculation unit 208, and a variable length processor 209 for variable length code decoding are included.

【0232】さらに、コントロールユニット200は、
内部バスとして、ビデオ入出力部203とフレームメモ
リ制御部205との間に接続される第1内部バス21
0、フレームメモリ制御部205、動き予測ユニット制
御部206、パラメータ演算部208との間に接続され
る第2内部バス211、動き予測ユニット制御部212
とフレームメモリ制御部205との間に接続される第3
内部バス212、コードデータ制御部207と可変長プ
ロセッサ209との間に接続される第4内部バス21
3、すべてのブロックに対して接続されるメインバス2
14を含む。
Further, the control unit 200 is
As the internal bus, the first internal bus 21 connected between the video input / output unit 203 and the frame memory control unit 205.
0, the frame memory control unit 205, the motion prediction unit control unit 206, the second internal bus 211 connected to the parameter calculation unit 208, and the motion prediction unit control unit 212.
Between the frame memory control unit 205 and the third
Internal bus 212, fourth internal bus 21 connected between code data control unit 207 and variable length processor 209
3, main bus 2 connected to all blocks
Including 14.

【0233】次に、各ブロックの構成および動作につい
て説明する。ホストインタフェース部201は、外部の
ホストコンピュータとコントロールユニット200との
データ転送の制御を行なう制御部である。ホストインタ
フェース部201を介して入力または出力されるデータ
は、コントロールユニット200の内部の各ブロックに
接続されるメインバス214を介して転送される。
Next, the configuration and operation of each block will be described. The host interface unit 201 is a control unit that controls data transfer between an external host computer and the control unit 200. Data input or output via the host interface unit 201 is transferred via the main bus 214 connected to each block inside the control unit 200.

【0234】全体制御部202は、主として、コントロ
ールユニット200内の各動作タイミングおよびパイプ
ライン処理を管理するブロックである。全体制御部20
2は、画像符号化の際、基本クロックおよび同期信号を
基に、ピクチャー単位またはマクロブロック単位の内部
同期パルスを生成するとともに、符号化における主要パ
ラメータの管理、転送等を行なう。
The overall control unit 202 is a block which mainly manages each operation timing and pipeline processing in the control unit 200. Overall control unit 20
In image coding, 2 generates an internal sync pulse in picture units or macroblock units based on a basic clock and a sync signal, and manages and transfers main parameters in coding.

【0235】ビデオ入出力部203は、たとえば、図8
3に示す入出力メモリ81とのインタフェースを有し、
コントロールユニット200の内部ではフレームメモリ
制御部205と第1内部バス210を介して接続されて
いる。
The video input / output unit 203 is shown in FIG.
3 has an interface with the input / output memory 81 shown in FIG.
Inside the control unit 200, the frame memory control unit 205 is connected via a first internal bus 210.

【0236】メインプロセッサ104は、主として符号
化における適応処理を担当するブロックであり、詳細に
ついては後述する。ホストインタフェース部201と競
合した場合、メインプロセッサ104は、メインバス2
14のマスタとなり、各ブロック内のレジスタ/メモリ
のデータ転送を行なう。
The main processor 104 is a block mainly responsible for adaptive processing in encoding, and details thereof will be described later. When competing with the host interface unit 201, the main processor 104 determines that the main bus 2
It becomes the master of 14 and transfers the data of the register / memory in each block.

【0237】フレームメモリ制御部205は、外部のイ
ンタフェースとして、フレームバッファメモリ(たとえ
ば、図83に示すフレームバッファメモリ51)および
ピクセルプロセシングユニット(たとえば図83に示す
ピクセルプロセシングユニット33)との間の32ビッ
トのピクセルデータバス(たとえば、図83に示すピク
セルデータバスPB)のマスタとなる32ビットのイン
タフェースを有する。フレームメモリ制御部205は、
フレームバッファメモリに対するアドレスを含む制御信
号およびピクセルプロセシングユニットに対する制御信
号を出力する。フレームメモリ制御部205は、コント
ロールユニット200内で、ビデオ入出力部203と第
1内部バス210を介して接続され、パラメータ制御部
208および動き予測ユニット制御部206と第2内部
バス211を介して接続され、さらに、動き予測ユニッ
ト制御部206の別のインタフェースと第3内部バス2
12を介して接続されている。
The frame memory control unit 205 serves as an external interface between the frame buffer memory (for example, the frame buffer memory 51 shown in FIG. 83) and the pixel processing unit (for example, the pixel processing unit 33 shown in FIG. 83). It has a 32-bit interface that serves as a master of the bit pixel data bus (for example, pixel data bus PB shown in FIG. 83). The frame memory control unit 205
A control signal including an address for the frame buffer memory and a control signal for the pixel processing unit are output. The frame memory control unit 205 is connected to the video input / output unit 203 via the first internal bus 210 in the control unit 200, and via the parameter control unit 208, the motion prediction unit control unit 206, and the second internal bus 211. The third internal bus 2 is connected to another interface of the motion prediction unit controller 206.
It is connected via 12.

【0238】動き予測ユニット制御部206は、外部の
インタフェースとして、動き予測ユニット(たとえば、
図83に示す動き予測ユニット47)に対して制御信号
を出力するインタフェースと、ローカルメモリ(たとえ
ば、図83に示すローカルメモリ56)に対してアドレ
スを含む制御信号を出力するインタフェースとを有す
る。また、動き予測ユニット制御部206は、動き予測
ユニットとの間で、テンプレートデータ(画像データ)
や動きベクトル等のパラメータを転送するためのローカ
ルバス(たとえば、図83に示すローカルバスLB4)
に対するインタフェースを有する。さらに、動き予測ユ
ニット制御部206は、コントロールユニット200内
で、フレームメモリ制御部205およびパラメータ制御
部208と第2内部バス211を介して接続され、フレ
ームメモリ制御部205と第3内部バス212を介して
接続されている。
The motion prediction unit control section 206 uses the motion prediction unit (for example,
It has an interface for outputting a control signal to the motion prediction unit 47) shown in FIG. 83 and an interface for outputting a control signal including an address to a local memory (for example, the local memory 56 shown in FIG. 83). In addition, the motion prediction unit control unit 206 receives template data (image data) between itself and the motion prediction unit.
Bus for transferring parameters such as motion vector and motion vector (for example, local bus LB4 shown in FIG. 83)
Has an interface to. Furthermore, the motion prediction unit control unit 206 is connected to the frame memory control unit 205 and the parameter control unit 208 via the second internal bus 211 in the control unit 200, and connects the frame memory control unit 205 and the third internal bus 212. Connected through.

【0239】コードデータ制御部207は、ピクセルプ
ロセシングユニット(たとえば、図83に示すピクセル
プロセシングユニット33)およびバッファメモリ(た
とえば、図83に示すバッファメモリ6)と接続される
ためのコードバス(たとえば、図83に示すコードバス
CB)に接続されるインタフェースを有する。コードデ
ータ制御部207は、コントロールユニット200内部
で、可変長プロセッサ209と第4内部バス213を介
して接続されている。
The code data control unit 207 is connected to a pixel processing unit (eg, pixel processing unit 33 shown in FIG. 83) and a buffer memory (eg, buffer memory 6 shown in FIG. 83) and a code bus (eg, code bus). It has an interface connected to the code bus CB shown in FIG. The code data control unit 207 is connected to the variable length processor 209 via the fourth internal bus 213 inside the control unit 200.

【0240】パラメータ演算部208は、フレームメモ
リ制御部205および動き予測ユニット制御部206と
第2内部バス211を介して接続される。第2内部バス
211を介して、フレームメモリ制御部205からパラ
メータ演算部208へテンプレートデータが入力され、
パラメータ演算部208は、テンプレートに関するパラ
メータを抽出する。パラメータ演算部208は、内部に
演算結果を格納するレジスタを有している。レジスタに
格納された演算結果は、メインバス214を介して転送
(読出)可能である(スレーブ動作)。
The parameter calculation section 208 is connected to the frame memory control section 205 and the motion prediction unit control section 206 via the second internal bus 211. Template data is input from the frame memory control unit 205 to the parameter calculation unit 208 via the second internal bus 211,
The parameter calculation unit 208 extracts parameters related to the template. The parameter calculation unit 208 has a register for storing the calculation result therein. The calculation result stored in the register can be transferred (read) via the main bus 214 (slave operation).

【0241】可変長プロセッサ209は、コードデータ
制御部207と第4内部バス213を介して接続され
る。コードデータ制御部207から転送される量子化イ
ンデックスまたはラン/レベルタイプのデータの可変長
符号化処理が可変長プロセッサ209において行なわれ
る。可変長プロセッサ209において生成されたビット
ストリームデータは、フレームバッファメモリ(たとえ
ば、図83に示すフレームバッファメモリ51)に転送
される。
The variable length processor 209 is connected to the code data control unit 207 via the fourth internal bus 213. The variable-length processor 209 performs variable-length coding processing on the quantization index or run / level type data transferred from the code data control unit 207. The bitstream data generated by the variable length processor 209 is transferred to the frame buffer memory (for example, the frame buffer memory 51 shown in FIG. 83).

【0242】次に、図83および図92を参照して、画
像符号化(エンコード)処理におけるコントロールユニ
ット200内の各ブロックの処理内容について詳細に説
明する。
Next, the processing contents of each block in the control unit 200 in the image encoding processing will be described in detail with reference to FIGS. 83 and 92.

【0243】コントロールユニット23は、ピクセルプ
ロセシングユニット33および動き予測ユニット47を
制御し、符号化処理を行なう機能を有する。したがっ
て、主として以下の4種類のデータ制御が行なわれる。
The control unit 23 has a function of controlling the pixel processing unit 33 and the motion prediction unit 47 and performing an encoding process. Therefore, the following four types of data control are mainly performed.

【0244】(1) 原画データの取込みとフレームバ
ッファメモリ51へのストア (2) 動き予測のためのテンプレートデータの取込み
と動き予測ユニット47の起動 (3) 動き予測結果の取込みおよび判定とピクセルプ
ロセシングユニット33の起動 (4) コードデータ(量子化インデックス/ランレベ
ル)の取込みと可変長処理およびバッファメモリ6への
書込み 以下、上記の4種類のデータ制御について各ブロックの
動作も含めて説明する。
(1) Acquisition of original image data and storage in frame buffer memory 51 (2) Acquisition of template data for motion estimation and activation of motion estimation unit 47 (3) Acquisition and determination of motion estimation results and pixel processing Activation of Unit 33 (4) Acquisition of Code Data (Quantization Index / Run Level), Variable Length Processing, and Writing to Buffer Memory 6 The above four types of data control will be described below, including the operation of each block.

【0245】(i) 原画データの取込みからフレーム
バッファメモリ51への書込み(マッピング) 外部の入出力メモリに格納されている原画データ(符号
化対象となるオリジナル画像データ)は、いわゆるマク
ロブロック単位で切出され、ビデオ入出力部203へ転
送される。
(I) Acquisition of original image data to writing to frame buffer memory 51 (mapping) Original image data (original image data to be encoded) stored in an external input / output memory is in so-called macroblock units. It is cut out and transferred to the video input / output unit 203.

【0246】ビデオ入出力部203は、内部にRGBフ
ォーマットからYUVフォーマットへの変換回路および
フィルタ回路を有しており、フォーマット変換(たとえ
ば、RGB→YUV、4:2:2→4:2:0等)が行
なわれる。処理されたデータは、第1内部バス210を
介してフレームメモリ制御部205へ転送される。フレ
ームメモリ制御部205は、フレームメモリ制御部20
5が管理するフレームバッファメモリ51上に後の符号
化処理に適した形式で転送されたデータをマッピング
(書込み)する。ここでのマッピング方法は後に詳細に
説明されている。
The video input / output unit 203 internally has a conversion circuit from RGB format to YUV format and a filter circuit, and performs format conversion (for example, RGB → YUV, 4: 2: 2 → 4: 2: 0). Etc.) is performed. The processed data is transferred to the frame memory control unit 205 via the first internal bus 210. The frame memory control unit 205 is the frame memory control unit 20.
Data transferred in a format suitable for the subsequent encoding process is mapped (written) on the frame buffer memory 51 managed by 5. The mapping method here will be described in detail later.

【0247】フレームバッファメモリ51に対するアド
レスの生成は、フレームメモリ制御部105が担当す
る。また、フレームバッファメモリ51に対する制御お
よびビデオ入出力部203からのデータ転送のタイミン
グについては全体制御部202が管理する。
The frame memory control unit 105 takes charge of generating an address for the frame buffer memory 51. The overall control unit 202 manages the control of the frame buffer memory 51 and the timing of data transfer from the video input / output unit 203.

【0248】(ii) 動き予測のためのテンプレート
データの取込みと動き予測ユニットの制御 フレームメモリ制御部205は、符号化対象となるマク
ロブロックに対する動き予測を行なうため、そのマクロ
ブロックに対応する画像データをフレームバッファメモ
リ51から読出す。このデータをテンプレートデータと
言う。フレームメモリ制御部205は、テンプレートデ
ータを動き予測ユニット制御部206およびパラメータ
演算部208へ転送する。
(Ii) Acquisition of template data for motion prediction and control of motion prediction unit The frame memory control unit 205 performs motion prediction for a macroblock to be coded, and therefore image data corresponding to that macroblock Is read from the frame buffer memory 51. This data is called template data. The frame memory control unit 205 transfers the template data to the motion prediction unit control unit 206 and the parameter calculation unit 208.

【0249】動き予測ユニット制御部206は、テンプ
レートデータをローカルバスLB4を介して動き予測ユ
ニット47へ転送すると同時に、テンプレートデータに
対応するサーチウィンドウデータをローカルメモリ56
へローカルデータバスLDBを介して転送する。さら
に、動き予測ユニット制御部206は、動き予測ユニッ
ト47に対して起動制御等の制御信号を入力することに
よって、上記テンプレートデータに対する動き予測動作
を起動させる。
The motion prediction unit control section 206 transfers the template data to the motion prediction unit 47 via the local bus LB4 and, at the same time, searches the search window data corresponding to the template data in the local memory 56.
To the local data bus LDB. Further, the motion prediction unit control unit 206 inputs a control signal such as start control to the motion prediction unit 47 to start the motion prediction operation for the template data.

【0250】さらに、フレームメモリ制御部205は、
テンプレートデータを動き予測ユニット制御部206へ
第2内部バス111を介して転送すると同時に、パラメ
ータ演算部208へも転送する。パラメータ演算部20
8では、テンプレートデータの保有する特徴を所定の演
算により抽出し、後に符号化時の判定等に用いる。ここ
で求めるパラメータは、アクティビティ算出用のテンプ
レート中の各ブロック(フィールド/フレーム両ブロッ
キングにおける)の分散(輝度信号のみ)、テンプレー
トマクロブロックの輝度信号の平均値および分散値等で
あり、画素演算を必要とするものを対象としている。
Further, the frame memory control unit 205 is
The template data is transferred to the motion prediction unit control unit 206 via the second internal bus 111, and at the same time, transferred to the parameter calculation unit 208. Parameter calculator 20
In 8, the characteristic held by the template data is extracted by a predetermined calculation, and is used later for determination at the time of encoding. The parameters obtained here are the variance (only the luminance signal) of each block (in both field / frame blocking) in the template for activity calculation, the average value and the variance value of the luminance signal of the template macroblock, etc. Intended for what you need.

【0251】(iii) 動き予測結果の取込みおよび
判定とピクセルプロセシングユニットの起動 上記の動き予測ユニットの起動後、数マクロブロックサ
イクル後に動き予測結果、つまり各動き予測モードと真
裏における水平、垂直方向の動きベクトルおよびその評
価関数が、ローカルバスLB4を介して動き予測ユニッ
ト制御部206へ取込まれる。
(Iii) Acquisition and determination of motion estimation result and activation of pixel processing unit After activation of the above motion estimation unit, a few macroblock cycles later, the result of motion estimation, that is, horizontal and vertical directions in each motion estimation mode and directly behind. The motion vector and its evaluation function are taken into the motion prediction unit control unit 206 via the local bus LB4.

【0252】動き予測ユニット制御部206は、上記評
価関数を用いて予測モードおよび動きベクトルを決定す
る。決定された動きベクトルは、第3内部バス212を
介してフレームメモリ制御部205へ転送される。フレ
ームメモリ制御部205は、入力した動きベクトルを基
に予測画像のアドレスを算出する。フレームメモリ制御
部205は、算出したアドレスを基に、フレームバッフ
ァメモリ51およびピクセルプロセシングユニット33
を制御し、上記動きベクトルに対応する予測画像データ
をピクセルプロセシングユニット33へ転送する。
The motion prediction unit control section 206 determines the prediction mode and motion vector using the above evaluation function. The determined motion vector is transferred to the frame memory control unit 205 via the third internal bus 212. The frame memory control unit 205 calculates the address of the predicted image based on the input motion vector. The frame memory control unit 205 determines the frame buffer memory 51 and the pixel processing unit 33 based on the calculated address.
To transfer the predicted image data corresponding to the motion vector to the pixel processing unit 33.

【0253】さらに、フレームメモリ制御部205は、
さらにテンプレートデータ(前述のテンプレートデータ
とはパイプラインが異なるので、新たに転送する必要が
ある)を上記と同様にピクセルプロセシングユニット3
3へ転送し、ピクセルプロセシングユニット33を起動
することにより、DCT以降の処理をピクセルプロセシ
ングユニット33に行なせる。ここで、起動のためのコ
マンドおよびピクセルプロセシングユニット33におい
て符号化に必要なパラメータ(たとえば、ハーフペルフ
ィルタ指示)は、同じパイプライン間で、コードデータ
制御部207またはホストインタフェース部201を介
してピクセルプロセシングユニット33内の所定のレジ
スタにセットされる。ピクセルプロセシングユニット3
3では上記の両方のポートからセット可能な構成となっ
ている。
Further, the frame memory control unit 205 is
Further, the template data (which needs to be newly transferred because the pipeline is different from the template data described above) is processed in the same manner as above.
3 and activates the pixel processing unit 33, so that the processing after DCT can be performed by the pixel processing unit 33. Here, a command for activation and a parameter (for example, a half-pel filter instruction) necessary for encoding in the pixel processing unit 33 are stored in the pixel via the code data control unit 207 or the host interface unit 201 in the same pipeline. It is set in a predetermined register in the processing unit 33. Pixel processing unit 3
In No. 3, it can be set from both of the above ports.

【0254】(iv) コードデータの取込みと可変長
処理およびバッファメモリへの書込み ピクセルプロセシングユニット33で処理(フィルタリ
ング、DCT、量子化等)されたデータは、全体制御部
202の制御により、コードバスCBを介して一旦バッ
ファメモリ6に書込まれるか、または、直接コントロー
ルユニット23のコードデータ制御部207へ転送され
る。この場合のデータ形式は、量子化インデックス(量
子化後のデータ)か、またはランレベルデータ(前記量
子化インデックスをランレベルに変換したもの)の形式
である。
(Iv) Acquisition of code data and variable length processing and writing to buffer memory The data processed (filtering, DCT, quantization, etc.) by the pixel processing unit 33 is controlled by the overall control unit 202 by the code bus. It is once written in the buffer memory 6 via the CB or is directly transferred to the code data control unit 207 of the control unit 23. In this case, the data format is a quantization index (quantized data) or run level data (the quantization index is converted to a run level).

【0255】コードデータ制御部207は、上記データ
を任意のタイミングで受取り、第4内部バス213を介
して可変長プロセッサ209へ転送する。可変長プロセ
ッサ209は、マイクロプログラムに応じて、このデー
タをいわゆるハフマン符号化処理し、外部のバッファメ
モリ6へ書込む。また、ハフマン符号化等のコード変換
処理の際に、ワークメモリ7に格納されるテーブルデー
タをアクセスすることも可能である。
The code data control unit 207 receives the above data at an arbitrary timing and transfers it to the variable length processor 209 via the fourth internal bus 213. The variable length processor 209 performs so-called Huffman coding processing on this data according to the microprogram and writes the data in the external buffer memory 6. Further, it is also possible to access the table data stored in the work memory 7 at the time of code conversion processing such as Huffman coding.

【0256】次に、メインプロセッサ204が、上記の
処理の中で符号化にどのように関わるかについて説明す
る。
Next, how the main processor 204 is involved in encoding in the above processing will be described.

【0257】動き予測ユニット制御部206内で行なう
判定処理以外に、別の判定処理を行ないたい場合、たと
えば、ユーザが独自の判定方法を使用したい場合は、以
下のように行なわれる。メインプロセッサ204は、動
き予測ユニット制御部206内の各予測モードにおける
ベクトルおよび評価値を格納するレジスタをメインバス
214を介してアクセスする。ベクトルおよび評価値
は、マクロコードにおいて独自の処理が施され、一定時
間内に元のレジスタに戻される。この結果、判定等の適
用処理が可能となる。
When it is desired to perform another determination process other than the determination process performed in the motion prediction unit control unit 206, for example, when the user wants to use his or her own determination method, the following process is performed. The main processor 204 accesses, via the main bus 214, a register that stores a vector and an evaluation value in each prediction mode in the motion prediction unit control unit 206. The vector and the evaluation value are uniquely processed in the macro code and returned to the original register within a fixed time. As a result, application processing such as determination can be performed.

【0258】また、メインプロセッサ204は、主とし
て、マクロブロックレイヤー(MPEG1/2の規格に
おいて)より上位階層の処理を行なう。つまり、メイン
プロセッサ204は、GOP/ピクチャー/スライス単
位で行なわれる処理を担当する。たとえば、メインプロ
セッサ204は、前のピクチャーを符号化した際の符号
量を基に、次のピクチャーの符号化パラメータを設定す
る。レートコントロール、同期リフレッシュ、および強
制イントラ制御等の例外モードの処理についてもメイン
プロセッサ204が対応する。マクロブロックレイヤー
の処理のうち主なものとしては、算出されたアクティビ
ティを基に行なわれる適応量子化処理がある。
Further, the main processor 204 mainly performs processing in a higher hierarchy than the macro block layer (in the MPEG1 / 2 standard). That is, the main processor 204 is in charge of processing performed in GOP / picture / slice units. For example, the main processor 204 sets the coding parameter of the next picture based on the code amount when the previous picture is coded. The main processor 204 also handles exceptional mode processing such as rate control, synchronous refresh, and forced intra control. The main processing of the macroblock layer is adaptive quantization processing performed based on the calculated activity.

【0259】上記のように、メインプロセッサ204
は、コントロールユニット23内の各ユニットのレジス
タまたはメモリをアクセスすることができるため、許容
される処理ステップ内であれば、これらのレジスタまた
はメモリを参照し、演算等の処理を行ない、レジスタま
たはメモリの内容を書換えることができる。したがっ
て、符号化処理における自由度を向上することが可能と
なる。
As described above, the main processor 204
Can access the register or the memory of each unit in the control unit 23, so that if it is within an allowable processing step, the register or the memory is referred to and the processing such as the operation is performed. The contents of can be rewritten. Therefore, it is possible to improve the degree of freedom in the encoding process.

【0260】また、上記の符号化動作処理の記述からわ
かるように、符号化処理は、コントロールユニット23
内の全体制御部202によるパイプライン制御の下で、
各処理ユニットにおいて独立に行なわれる。すなわち、
上記4つのデータ制御がすべて独立にかつ並行に実行さ
れる。また、画像の復号化処理も上記の符号化処理と同
様に、全体制御部202のパイプライン処理の下で、コ
ントロールユニット23内の各ブロックが並列に動作す
ることにより実行することができる。
As can be seen from the above description of the encoding operation process, the encoding process is performed by the control unit 23.
Under pipeline control by the overall control unit 202 in
It is performed independently in each processing unit. That is,
All of the above four data controls are executed independently and in parallel. Similarly to the above-described encoding process, the image decoding process can also be executed by the blocks in the control unit 23 operating in parallel under the pipeline process of the overall control unit 202.

【0261】3.ピクセルプロセシングユニット (1) ピクセルプロセシングユニット31(図18,
図19) 図18は、ピクセルプロセシングユニットの一例を示す
ブロック図である。図18に示したピクセルプロセシン
グユニット31は、たとえば図1に示したピクセルプロ
セシングユニット3として用いられる。
3. Pixel Processing Unit (1) Pixel Processing Unit 31 (Fig. 18,
FIG. 19) FIG. 18 is a block diagram showing an example of a pixel processing unit. The pixel processing unit 31 shown in FIG. 18 is used as the pixel processing unit 3 shown in FIG. 1, for example.

【0262】図18を参照して、ピクセルプロセシング
ユニット31は、ホストインターフェイス(I/F)回
路311と、ローカルメモリ群312と、DCT/ID
CT演算器313と、量子化器314と、フィルタ31
5と、セレクタバス316と、コードデータバスインタ
ーフェイス回路317と、ピクセルバスインターフェイ
ス回路318と、制御器319とを含む。
Referring to FIG. 18, the pixel processing unit 31 includes a host interface (I / F) circuit 311, a local memory group 312, a DCT / ID.
CT calculator 313, quantizer 314, and filter 31
5, a selector bus 316, a code data bus interface circuit 317, a pixel bus interface circuit 318, and a controller 319.

【0263】ホストインターフェイス回路311は、ホ
ストプロセッサ、すなわちコントロールユニット2とピ
クセルプロセシングユニット31との間のデータ入出力
のために設けられる。ピクセルバスインターフェイス回
路318は、画像データの入出力のために設けられる。
コードデータバスインターフェイス回路317は、コー
ドデータの入出力のために設けられる。
The host interface circuit 311 is provided for data input / output between the host processor, that is, the control unit 2 and the pixel processing unit 31. The pixel bus interface circuit 318 is provided for inputting / outputting image data.
The code data bus interface circuit 317 is provided for inputting / outputting code data.

【0264】DCT/IDCT演算器313は、DCT
演算処理および逆DCT演算処理を行なう。量子化器3
14は、量子化演算を行なうために設けられる。フィル
タ315は、動き予測処理における参照画像データを生
成するために設けられる。セレクタバス316は、ピク
セルプロセシングユニット31における内部データを転
送するために設けられる。制御器319は、ピクセルプ
ロセシングユニット31における全体制御のために設け
られる。
The DCT / IDCT calculator 313 is
The arithmetic processing and the inverse DCT arithmetic processing are performed. Quantizer 3
14 is provided for performing a quantization operation. The filter 315 is provided to generate reference image data in the motion prediction process. The selector bus 316 is provided for transferring internal data in the pixel processing unit 31. The controller 319 is provided for overall control in the pixel processing unit 31.

【0265】図19は、図18に示したピクセルプロセ
シングユニット31のより詳細なブロック図である。図
18に示したローカルメモリ群312は、図19に示し
た画像メモリ331ないし335と、データメモリ34
1,342と、コードデータメモリ343と、パラメー
タメモリ344とを含む。図18に示したセレクタバス
316は、図19に示したセレクタバスSB1ないしS
B5を含む。
FIG. 19 is a more detailed block diagram of the pixel processing unit 31 shown in FIG. The local memory group 312 shown in FIG. 18 includes the image memories 331 to 335 and the data memory 34 shown in FIG.
1, 342, a code data memory 343, and a parameter memory 344. The selector bus 316 shown in FIG. 18 is the selector buses SB1 to SB shown in FIG.
Including B5.

【0266】画像メモリ331は、圧縮対象の画像デー
タをストアするために設けられる。画像メモリ332お
よび333は、前フレームおよび後ろフレームの参照画
像データをストアする。画像メモリ334は、フィルタ
処理の後の処理された参照画像データをストアする。画
像メモリ335は、復号化されるべき画像データをスト
アする。コードデータメモリ343は、量子化処理後の
コードデータをストアする。パラメータメモリ344
は、量子化マトリックスなどの演算用テーブルデータを
ストアする。
The image memory 331 is provided to store image data to be compressed. The image memories 332 and 333 store the reference image data of the preceding frame and the following frame. The image memory 334 stores the processed reference image data after the filtering process. The image memory 335 stores the image data to be decoded. The code data memory 343 stores the code data after the quantization processing. Parameter memory 344
Stores calculation table data such as a quantization matrix.

【0267】セレクタバスSB1は、12ビットのバス
幅を有しており、フィルタ処理後の参照画像データを転
送する。セレクタバスSB2は、12ビットのバス幅を
有しており、差分演算処理の後および逆DCT演算の後
の差分データを転送する。セレクタバスSB3は、12
ビットのバス幅を有しており、DCT演算の後および逆
量子化の後のDCT係数を転送するために設けられる。
セレクタバスSB4は、12ビットのバス幅を有してお
り、逆量子化処理の後およびゼロアンパックの後のコー
ドデータを転送するために設けられる。セレクタバスS
B5は、16ビットのバス幅を有しており、パラメータ
データを転送するために設けられる。
The selector bus SB1 has a bus width of 12 bits and transfers the reference image data after filtering. The selector bus SB2 has a bus width of 12 bits and transfers the difference data after the difference calculation process and after the inverse DCT calculation. Selector bus SB3 has 12
It has a bus width of bits and is provided to transfer the DCT coefficients after the DCT operation and after the inverse quantization.
The selector bus SB4 has a bus width of 12 bits and is provided for transferring code data after the inverse quantization process and after zero unpacking. Selector bus S
B5 has a bus width of 16 bits and is provided to transfer parameter data.

【0268】(2) ピクセルプロセシングユニット3
2(図20,図21) 図20は、ピクセルプロセシングユニットの別の例を示
すブロック図である。図20に示したピクセルプロセシ
ングユニット32も、たとえば図1に示したピクセルプ
ロセシングユニット3として用いられ得る。
(2) Pixel processing unit 3
2 (FIGS. 20 and 21) FIG. 20 is a block diagram showing another example of the pixel processing unit. The pixel processing unit 32 shown in FIG. 20 can also be used as the pixel processing unit 3 shown in FIG. 1, for example.

【0269】図20を参照して、図19に示したピクセ
ルプロセシングユニット31と比較すると、ピクセルプ
ロセシングユニット32は、さらにプログラマブルプロ
セシングユニット320を備えている。プログラマブル
プロセシングユニット320は、セレクタバス326に
接続されており、ユニット320内にストアされたプロ
グラムに従って他の様々な演算を実行することができ
る。
Referring to FIG. 20, compared with the pixel processing unit 31 shown in FIG. 19, the pixel processing unit 32 further includes a programmable processing unit 320. Programmable processing unit 320 is connected to selector bus 326 and is capable of performing various other operations in accordance with programs stored in unit 320.

【0270】たとえば、プログラマブルプロセシングユ
ニット320は、ストアされたプログラムに従って、頻
繁に使用される演算、すなわち加減算,差分絶対値和演
算,差分絶対値累算,差分二乗和演算,差分二乗和の累
算,乗算などを行なう。
For example, the programmable processing unit 320 uses the stored program to perform frequently used operations, that is, addition / subtraction, difference absolute value sum operation, difference absolute value accumulation, difference square sum operation, difference square sum accumulation. , Multiply etc.

【0271】図21は、図20に示したピクセルプロセ
シングユニット32のより詳細なブロック図である。図
21に示されるように、追加されたプログラマブルプロ
セシングユニット320は、セレクタバスSB1ないし
SB5に接続される。これに加えて、プログラマブルプ
ロセシングユニット320は、パラメータメモリ344
に接続される。
FIG. 21 is a more detailed block diagram of the pixel processing unit 32 shown in FIG. As shown in FIG. 21, the added programmable processing unit 320 is connected to the selector buses SB1 to SB5. In addition to this, the programmable processing unit 320 includes a parameter memory 344.
Connected to.

【0272】(3) ピクセルプロセシングユニット3
1,32の動作 図19を参照して、ピクセルプロセシングユニット31
の動作について説明する。動作の一例として、MPEG
規格における蓄積系動画像符号化処理について説明す
る。
(3) Pixel processing unit 3
Operation of 1, 32 Referring to FIG. 19, the pixel processing unit 31
The operation of will be described. As an example of the operation, MPEG
The storage system moving image coding process in the standard will be described.

【0273】ピクセルバスインターフェイス回路318
は、図1に示したフレームバッファメモリ51から符号
化対象の画像データを受け、内部ピクセルバスIPB2
を介してそれを画像メモリ331に与える。動き予測処
理が必要である場合では、前方向予測処理において、参
照画像データが画像メモリ332に与えられる。一方、
両方向予測処理においては、前フレームおよび後ろフレ
ームの参照画像データが画像メモリ332および333
に転送される。
Pixel bus interface circuit 318
Receives the image data to be encoded from the frame buffer memory 51 shown in FIG.
It is given to the image memory 331 via. When the motion prediction process is necessary, the reference image data is given to the image memory 332 in the forward prediction process. on the other hand,
In the bidirectional prediction process, the reference image data of the previous frame and the reference image of the subsequent frame are stored in the image memories 332 and 333.
Transferred to.

【0274】前方向の予測処理の場合では、画像メモリ
332内にストアされたデータがフィルタ315に与え
られる。フィルタ315においてフィルタ処理が行なわ
れ、処理された参照画像データが画像メモリ334に書
込まれる。
In the case of forward prediction processing, the data stored in the image memory 332 is given to the filter 315. Filter processing is performed in the filter 315, and the processed reference image data is written in the image memory 334.

【0275】両方向の予測処理の場合では、画像メモリ
332にストアされた前方向の参照画像データがフィル
タ315に与えられ、一方、画像メモリ333内にスト
アされた後ろ方向の参照画像データもフィルタ315に
与えられる。フィルタ315において、与えられた参照
画像データについてフィルタ処理および補間処理が行な
われ、生成された参照画像データは画像メモリ334に
書込まれる。
In the case of the bidirectional prediction processing, the forward reference image data stored in the image memory 332 is given to the filter 315, while the backward reference image data stored in the image memory 333 is also filtered by the filter 315. Given to. In the filter 315, the given reference image data is subjected to filter processing and interpolation processing, and the generated reference image data is written in the image memory 334.

【0276】差分生成器310は、画像メモリ331に
ストアされた符号化対象の画像データをセレクタバスS
B2に転送する。場合により、差分生成器310は、こ
の符号化対象の画像データと画像メモリ334内にスト
アされた参照画像データとの差分データをセレクタバス
SB2に与える。
The difference generator 310 outputs the image data to be encoded stored in the image memory 331 to the selector bus S.
Transfer to B2. In some cases, the difference generator 310 supplies the difference data between the image data to be encoded and the reference image data stored in the image memory 334 to the selector bus SB2.

【0277】DCT/IDCT演算器313は、符号化
処理において、セレクタバスSB2を介して与えられた
画素データまたは差分データについてのDCT演算を行
ない、生成されたDCT係数をセレクタバスSB3を介
して転送する。符号化のためのループバック演算処理お
よび復号化処理が行なわれるとき、DCT/IDCT演
算器313は、セレクタバスSB3を介して与えられる
DCT係数について逆DCT演算を行ない、画素データ
または差分データを生成する。生成されたデータは、セ
レクタバスSB2を介して転送される。
The DCT / IDCT calculator 313 performs a DCT operation on the pixel data or difference data given via the selector bus SB2 in the encoding process, and transfers the generated DCT coefficient via the selector bus SB3. To do. When the loopback calculation process and the decoding process for encoding are performed, the DCT / IDCT calculator 313 performs an inverse DCT calculation on the DCT coefficient given via the selector bus SB3 to generate pixel data or difference data. To do. The generated data is transferred via the selector bus SB2.

【0278】量子化器314は、符号化処理において、
セレクタバスSB3を介して与えられるDCT係数につ
いて、パラメータメモリ344を参照することにより、
量子化演算を行なう。量子化演算の結果得られたコード
データは、セレクタバスSB4を介してコードデータメ
モリ343に転送される。符号化のためのループバック
演算処理および復号化処理において、量子化器314
は、セレクタバスSB4を介して与えられたコードデー
タについての逆量子化演算を行なう。逆量子化演算の結
果得られたDCT係数は、セレクタバスSB3を介して
転送される。
The quantizer 314, in the encoding process,
By referring to the parameter memory 344 for the DCT coefficient given via the selector bus SB3,
Performs a quantization operation. The code data obtained as a result of the quantization operation is transferred to the code data memory 343 via the selector bus SB4. In the loopback calculation process and the decoding process for encoding, the quantizer 314
Performs an inverse quantization operation on the code data given via the selector bus SB4. The DCT coefficient obtained as a result of the inverse quantization operation is transferred via the selector bus SB3.

【0279】コードデータバスインターフェイス回路3
17は、符号化処理において、コードデータメモリ34
3内にストアされたコードデータをセレクタバスSB5
を介して受ける。コードデータバスインターフェイス回
路317は、受取ったコードデータをそのまま外部のコ
ードデータバス、すなわち図1に示したコードバスCB
に出力する。場合により、コードデータバスインターフ
ェイス回路317によりラン−レベルコードに変換され
た後コードバスCBに出力される。復号化処理におい
て、コードデータバスインターフェイス回路317は、
セレクタバスSB4を介して与えられたコードデータに
ついて逆量子化演算を行なう。逆量子化演算の結果得ら
れたDCT係数は、セレクタバスSB3を介して転送さ
れる。
Code data bus interface circuit 3
Reference numeral 17 denotes a code data memory 34 in the encoding process.
The code data stored in 3 is used for the selector bus SB5.
Receive through. The code data bus interface circuit 317 receives the received code data as it is from the external code data bus, that is, the code bus CB shown in FIG.
Output to. In some cases, it is converted into a run-level code by the code data bus interface circuit 317 and then output to the code bus CB. In the decoding process, the code data bus interface circuit 317
The inverse quantization operation is performed on the code data provided via selector bus SB4. The DCT coefficient obtained as a result of the inverse quantization operation is transferred via the selector bus SB3.

【0280】画像復号器310は、符号化のための参照
画像復号処理および復号化処理において、動き予測処理
が必要である場合では、セレクタバスSB1を介して与
えられた参照画像データおよび復号化された差分データ
の加算演算結果データを出力し、これらのデータは画像
メモリ335にストアされる。一方、動き予測が必要と
されない場合では、復号化された画像データがそのまま
出力され、画像メモリ335内にストアされる。
The image decoder 310, in the reference image decoding process and the decoding process for encoding, when the motion prediction process is necessary, the reference image data supplied via the selector bus SB1 and the decoded reference image data. The addition operation result data of the difference data is output, and these data are stored in the image memory 335. On the other hand, when the motion estimation is not required, the decoded image data is output as it is and stored in the image memory 335.

【0281】ホストインターフェイス回路331は、図
1に示したホストバスHBを介してピクセルプロセシン
グユニット31のための動作コマンドおよび量子化マト
リックスなどのパラメータを受ける。一方、ホストイン
ターフェイス回路311は、内部メモリ331ないし3
35および341ないし344内にストアされたデータ
および内部レジスタ内に保持されたデータを外部に出力
する。
The host interface circuit 331 receives parameters such as an operation command and a quantization matrix for the pixel processing unit 31 via the host bus HB shown in FIG. On the other hand, the host interface circuit 311 uses the internal memories 331 to 3
The data stored in 35 and 341 to 344 and the data held in the internal register are output to the outside.

【0282】(4) ピクセルプロセシングユニットに
おける処理フロー(図22ないし図25) (i) MPEG規格に従う符号化フレーム内予測画像
の場合 図22は、図19に示したピクセルプロセシングユニッ
ト31における符号化のための動作フロー図である。図
22を参照して、画像メモリ331内にストアされた画
像データは差分生成器310に与えられる。与えられた
データは、この場合では何ら処理されることなく、セレ
クタバスSB2を介してDCT/IDCT演算器313
に与えられる。演算器313においてDCT演算が行な
われた後、演算結果を示すデータがセレクタバスSB3
を介して量子化器314に与えられる。
(4) Processing Flow in Pixel Processing Unit (FIGS. 22 to 25) (i) In the case of a coded intra-frame predicted image according to the MPEG standard FIG. 22 shows the coding in the pixel processing unit 31 shown in FIG. FIG. 6 is an operation flow chart for With reference to FIG. 22, the image data stored in the image memory 331 is given to the difference generator 310. The given data is not processed at all in this case, and the DCT / IDCT calculator 313 is processed via the selector bus SB2.
Given to. After the DCT operation is performed in the operation unit 313, the data indicating the operation result is transferred to the selector bus SB3.
To the quantizer 314 via

【0283】量子化器314は、セレクタバスSB5を
介してパラメータメモリ344を参照することにより、
量子化演算を実行する。量子化結果を示すデータ、すな
わちコードデータがコードデータメモリ343に与えら
れ、そこでストアされる。コードデータメモリ343内
にストアされたデータは、セレクタバスSB4およびコ
ードデータバスインターフェイス回路317を介して外
部のコードバスCB(図1)に出力される。
The quantizer 314 refers to the parameter memory 344 via the selector bus SB5,
Performs a quantization operation. Data indicating the quantization result, that is, code data is given to the code data memory 343 and stored therein. The data stored in the code data memory 343 is output to the external code bus CB (FIG. 1) via the selector bus SB4 and the code data bus interface circuit 317.

【0284】図23は、図19に示したピクセルプロセ
シングユニット31における復号化のための動作フロー
図である。図23を参照して、コードデータメモリ34
3内にストアされている復号化されるべきデータは、セ
レクタバスSB4を介して量子化器314に与えられ
る。量子化器314は、セレクタバスSB5を介してパ
ラメータメモリ344を参照することにより、逆量子化
演算を実行する。逆量子化演算結果を示すデータは、セ
レクタバスSB3を介してDCT/IDCT演算器31
3に与えられる。
FIG. 23 is an operation flow chart for decoding in the pixel processing unit 31 shown in FIG. Referring to FIG. 23, code data memory 34
The data to be decoded, which is stored in 3, is supplied to the quantizer 314 via the selector bus SB4. The quantizer 314 executes the inverse quantization operation by referring to the parameter memory 344 via the selector bus SB5. The data indicating the inverse quantization calculation result is sent to the DCT / IDCT calculator 31 via the selector bus SB3.
Given to 3.

【0285】演算器313は、与えられたデータについ
て逆DCT演算を実行する。演算結果を示すデータは、
セレクタバスSB2を介して復号器310に与えられ
る。復号器310は、与えられたデータについてリミッ
ト処理を行ない、処理されたデータは画像メモリ335
に与えられ、そこでストアされる。
The calculator 313 executes an inverse DCT calculation on the supplied data. The data showing the calculation result is
It is applied to the decoder 310 via the selector bus SB2. The decoder 310 performs limit processing on the given data, and the processed data is processed by the image memory 335.
Given to and stored there.

【0286】(ii) MPEG規格に従う符号化両方
向予測の場合 図24を参照して、符号化処理において、画像メモリ3
32内にストアされた前方向の画像データおよび画像メ
モリ333内にストアされた後ろ方向の画像データがフ
ィルタ315に与えられる。フィルタ315は、与えら
れたデータについて1/2精度画像生成処理および画素
補間処理を実行する。処理されたデータは画像メモリ3
34に与えられ、そこでストアされる。
(Ii) Case of Encoding Bidirectional Prediction According to MPEG Standard Referring to FIG. 24, the image memory 3 is used in the encoding process.
The forward image data stored in 32 and the backward image data stored in the image memory 333 are provided to the filter 315. The filter 315 executes 1/2 precision image generation processing and pixel interpolation processing for the given data. The processed data is the image memory 3
34 and is stored there.

【0287】画像メモリ334内にストアされたデータ
はセレクタバスSB1を介して差分生成器310に与え
られる。一方、画像メモリ331内にストアされている
符号化対象の画像データも差分生成器310に与えられ
る。差分生成器310は、与えられたデータについて画
素差分演算を実行する。
The data stored in the image memory 334 is applied to the difference generator 310 via the selector bus SB1. On the other hand, the image data to be encoded stored in the image memory 331 is also given to the difference generator 310. The difference generator 310 performs pixel difference calculation on the given data.

【0288】DCT/IDCT演算器313は、セレク
タバスSB2を介して、差分生成器310から差分デー
タを受ける。演算器313は、受信したデータについて
DCT演算を行ない、演算結果を示すデータはセレクタ
バスSB3を介して量子化器314に与えられる。量子
化器314は、セレクタバスSB5を介してパラメータ
メモリ344を参照することにより、与えられたデータ
についての量子化演算を行なう。量子化演算結果を示す
データは、セレクタバスSB4を介してコードデータメ
モリ343に与えられ、そこでストアされる。
DCT / IDCT calculator 313 receives difference data from difference generator 310 via selector bus SB2. The calculator 313 performs a DCT calculation on the received data, and the data indicating the calculation result is given to the quantizer 314 via the selector bus SB3. The quantizer 314 refers to the parameter memory 344 via the selector bus SB5 to perform the quantization operation on the given data. The data indicating the quantization operation result is given to the code data memory 343 via the selector bus SB4 and stored there.

【0289】図25を参照して、復号化処理において、
コードデータメモリ343内にストアされたデータ、す
なわち復号化されるべきデータはセレクタバスSB4を
介して量子化器314に与えられる。量子化器314
は、セレクタバスSB5を介してパラメータメモリ34
4を参照することにより、与えられたデータについて量
子化処理を行なう。量子化処理結果を示すデータはセレ
クタバスSB3を介してDCT/IDCT演算器313
に与えられる。
Referring to FIG. 25, in the decoding process,
The data stored in the code data memory 343, that is, the data to be decoded is given to the quantizer 314 via the selector bus SB4. Quantizer 314
Is the parameter memory 34 via the selector bus SB5.
By referring to 4, the quantization process is performed on the given data. The data indicating the quantization processing result is sent to the DCT / IDCT calculator 313 via the selector bus SB3.
Given to.

【0290】演算器313は、与えられたデータについ
て逆DCT処理を実行する。処理結果を示すデータはセ
レクタバスSB2を介して復号器310に与えられる。
復号器310は、画像メモリ334内にストアされてい
るデータをセレクタバスSB1を介して受ける。復号器
310は、与えられたデータに基づいて画素の復号処理
(加算処理)およびリミット処理を実行する。処理され
たデータは画像メモリ335に与えられ、そこでストア
される。
The computing unit 313 executes inverse DCT processing on the given data. The data indicating the processing result is given to the decoder 310 via the selector bus SB2.
The decoder 310 receives the data stored in the image memory 334 via the selector bus SB1. The decoder 310 executes pixel decoding processing (addition processing) and limit processing based on the supplied data. The processed data is provided to the image memory 335 and stored there.

【0291】(5) パイプライン処理(図26ないし
図29) 図26は、図19に示したピクセルプロセシングユニッ
ト31における符号化のためのパイプライン処理を示す
タイムチャートである。図26を参照して、動作期間A
において、画像メモリ331のための書込データが内部
ピクセルバスIPB2を介して転送される。動作期間B
において、画像メモリ332のための書込データが内部
ピクセルバスIPB2を介して転送される。動作期間C
において、画像メモリ333のための書込データが内部
ピクセルバスIPB2を介して転送される。
(5) Pipeline Processing (FIGS. 26 to 29) FIG. 26 is a time chart showing the pipeline processing for encoding in the pixel processing unit 31 shown in FIG. Referring to FIG. 26, operating period A
At, the write data for the image memory 331 is transferred via the internal pixel bus IPB2. Operating period B
At, the write data for the image memory 332 is transferred via the internal pixel bus IPB2. Operating period C
At, the write data for the image memory 333 is transferred via the internal pixel bus IPB2.

【0292】動作期間Dにおいて、フィルタ315が動
作する。動作期間Eにおいて、DCT/IDCT演算器
313および量子化器314によるDCT演算および量
子化演算が行なわれる。動作期間Fにおいて、演算器3
13,量子化器314および画像復号器310により逆
量子化演算,逆DCT演算および復号処理が行なわれ
る。動作期間Gにおいて、画像メモリ335についての
読出動作が行なわれる。動作期間Hにおいて、コードデ
ータバスインターフェイス回路317により、ラン−レ
ベルパッキング処理および出力処理が行なわれる。
In the operation period D, the filter 315 operates. In the operation period E, the DCT / IDCT calculator 313 and the quantizer 314 perform the DCT calculation and the quantization calculation. In the operation period F, the arithmetic unit 3
Inverse quantization operation, inverse DCT operation, and decoding processing are performed by 13, the quantizer 314, and the image decoder 310. In the operation period G, the read operation for the image memory 335 is performed. In the operation period H, the code data bus interface circuit 317 performs run-level packing processing and output processing.

【0293】図26の処理は、各マクロブロックごとに
順次に行なわれる。すなわち、図26では1つのマクロ
ブロックについての画像データの処理だけが示されてい
るが、多数のマクロブロックについてパイプライン処理
が行なわれる。複数のマクロブロックについてのパイプ
ライン処理を以下に説明する。
The processing of FIG. 26 is sequentially performed for each macroblock. That is, although FIG. 26 shows only the processing of the image data for one macroblock, the pipeline processing is performed for many macroblocks. The pipeline processing for a plurality of macroblocks will be described below.

【0294】図27は、フレーム内予測におけるパイプ
ライン処理を示すタイムチャートである。図27を参照
して、添字0は0番目のマクロブロックについてのデー
タ処理を示し、添字1は1番目のマクロブロックについ
ての処理を示すものとする。
FIG. 27 is a time chart showing pipeline processing in intra-frame prediction. With reference to FIG. 27, subscript 0 indicates data processing for the 0th macroblock, and subscript 1 indicates processing for the 1st macroblock.

【0295】図28は、片方向予測におけるパイプライ
ン処理を示すタイムチャートである。また、図29は、
両方向予測におけるパイプライン処理を示すタイムチャ
ートである。
FIG. 28 is a time chart showing pipeline processing in unidirectional prediction. In addition, FIG.
It is a time chart which shows the pipeline processing in bidirectional prediction.

【0296】図27ないし図29からわかるように、ピ
クセルプロセシングユニット3においても複数のマクロ
ブロックについてのデータ処理がパイプライン処理制御
の下で行なわれるので、ピクセルプロセシングユニット
3における処理のみについてもデータ処理を効率よく行
なうことができる。言い換えると、DCT演算および量
子化演算を高速で効率よく実行できるピクセルプロセシ
ングユニットが提供され得る。
As can be seen from FIGS. 27 to 29, since data processing for a plurality of macroblocks is also performed in the pixel processing unit 3 under pipeline processing control, data processing is also performed only for the processing in the pixel processing unit 3. Can be performed efficiently. In other words, it is possible to provide a pixel processing unit capable of performing DCT operation and quantization operation at high speed and efficiently.

【0297】(6) ピクセルプロセシングユニット3
3 図93は、ピクセルプロセシングユニットのさらに他の
一例を示すブロック図である。図93に示すピクセルプ
ロセシングユニット33は、たとえば、図83〜図8
9、図91に示したピクセルプロセシングユニットとし
て用いられる。
(6) Pixel processing unit 3
3 FIG. 93 is a block diagram showing still another example of the pixel processing unit. The pixel processing unit 33 shown in FIG. 93 is, for example, shown in FIGS.
9, used as the pixel processing unit shown in FIG. 91.

【0298】図93において、図18に示すピクセルプ
ロセシングユニット31と異なる点は、2組のピクセル
バスインタフェース回路318aおよび318bを備え
た点である。その他の点は、図18に示すピクセルプロ
セシングユニット31と同様であるので、同一部分には
同一番号を付し、以下その説明を省略する。
In FIG. 93, a point different from the pixel processing unit 31 shown in FIG. 18 is that two sets of pixel bus interface circuits 318a and 318b are provided. Since the other points are the same as those of the pixel processing unit 31 shown in FIG. 18, the same portions are denoted by the same reference numerals and the description thereof will be omitted below.

【0299】図94は、図93に示したピクセルプロセ
シングユニット33のより詳細なブロック図である。図
94を参照して、ピクセルバスIPB2aおよびIPB
2bは、それぞれ32ビットのバス幅を有しており、そ
れぞれが専用のピクセルバスインタフェース回路318
aおよび318bと画像メモリ331〜333、335
に接続されている。その他の点は、図19に示すピクセ
ルプロセシングユニット31と同様であるので、同一部
分には同一番号を付し、以下その説明を省略する。
FIG. 94 is a more detailed block diagram of the pixel processing unit 33 shown in FIG. Referring to FIG. 94, pixel buses IPB2a and IPB
2b each have a bus width of 32 bits, and each has a dedicated pixel bus interface circuit 318.
a and 318b and image memories 331 to 333 and 335
It is connected to the. Since the other points are similar to those of the pixel processing unit 31 shown in FIG. 19, the same portions are denoted by the same reference numerals, and the description thereof will be omitted below.

【0300】次に、ピクセルプロセシングユニット33
の動作について説明する。図94を参照して、動作の一
例として、MPEG規格における動画像符号化処理につ
いて説明する。
Next, the pixel processing unit 33
The operation of will be described. With reference to FIG. 94, a moving image coding process in the MPEG standard will be described as an example of the operation.

【0301】MPEG規格では、前方向予測、後ろ方向
予測、両方向予測の3種類の予測が使用され、各予測の
種類に応じて、外部から予測データを転送する必要があ
る。予測データの転送は、ピクセルバスインタフェース
回路318a、318bのどちらか一方を介して行なわ
れる。また、符号化対象の画像データもピクセルバスイ
ンタフェース回路318a、318bの一方を介して行
なわれる。画像圧縮処理は、フィルタ325、DCT/
IDCT演算器313、量子化器314、差分生成器お
よび画像復号器310において行なわれ、コードデータ
バスインタフェース回路317を介してデータが出力さ
れる。一方、ピクセルプロセシングユニット33内部で
局部復号された画像は、ピクセルバスインタフェース回
路318aおよび318bの両方を介してそれぞれ別々
な外部装置に転送される。転送された局部復号データの
うち一方は、たとえば、図87に示す動き予測ユニット
47の入力データとなる。転送された局部復号データの
他方は、次のフレーム処理における予測画像データとな
る。
According to the MPEG standard, three types of prediction, that is, forward prediction, backward prediction, and bidirectional prediction are used, and it is necessary to transfer prediction data from the outside according to the type of each prediction. The transfer of the prediction data is performed via one of the pixel bus interface circuits 318a and 318b. Image data to be encoded is also processed through one of the pixel bus interface circuits 318a and 318b. The image compression processing is performed by the filter 325, DCT /
This is performed in the IDCT calculator 313, the quantizer 314, the difference generator and the image decoder 310, and the data is output via the code data bus interface circuit 317. On the other hand, the image locally decoded in the pixel processing unit 33 is transferred to different external devices via both the pixel bus interface circuits 318a and 318b. One of the transferred locally decoded data becomes, for example, the input data of the motion prediction unit 47 shown in FIG. The other of the transferred locally decoded data becomes predicted image data in the next frame processing.

【0302】上記のように、図94に示すピクセルプロ
セシングユニット33は、局部復号画像データを同時に
複数の外部装置へ転送することができ、さらに、参照画
像データを動き予測ユニットからローカルメモリへ転送
しているときに、他のポートから予測画像データを転送
することができる。また、予測画像用の転送ポートも1
つに固定されず、どちらのポートからも転送することが
でき、システムの構成およびデータの転送方法を容易に
変えることが可能となる。
As described above, the pixel processing unit 33 shown in FIG. 94 can simultaneously transfer the locally decoded image data to a plurality of external devices, and further transfer the reference image data from the motion prediction unit to the local memory. , The predicted image data can be transferred from another port. There is also one transfer port for predicted images
It is not fixed to one, and data can be transferred from either port, and the system configuration and data transfer method can be easily changed.

【0303】図95は、図93に示すピクセルプロセシ
ングユニット33の他の例を示すブロック図である。図
95に示したピクセルプロセシングユニット33aも、
たとえば、図83〜図89、図91に示したピクセルプ
ロセシングユニットとして用いられる。
FIG. 95 is a block diagram showing another example of the pixel processing unit 33 shown in FIG. The pixel processing unit 33a shown in FIG.
For example, it is used as the pixel processing unit shown in FIGS. 83 to 89 and 91.

【0304】図95を参照して、図94に示したピクセ
ルプロセシングユニット33と比較すると、ピクセルプ
ロセシングユニット33aは、ピクセルバスIPB2が
2つのピクセルバスインタフェース回路318aおよび
318bに接続されており、内部バスがピクセルデータ
の転送に共通に使用される。その他の点は、図94に示
すピクセルプロセシングユニット33と同様であるので
以下その説明を省略する。
Referring to FIG. 95, in comparison with the pixel processing unit 33 shown in FIG. 94, in the pixel processing unit 33a, the pixel bus IPB2 is connected to two pixel bus interface circuits 318a and 318b, and the internal bus Are commonly used to transfer pixel data. Since the other points are the same as those of the pixel processing unit 33 shown in FIG. 94, description thereof will be omitted below.

【0305】次に、ピクセルプロセシングユニット33
aの動作について説明する。図95を参照して、内部ピ
クセルバスIPB2が共通して使用される。したがっ
て、局部復号データを同時に2つのピクセルバスインタ
フェース回路318aおよび318bを介して転送する
場合であれば、図94に示すピクセルプロセシングユニ
ット33と同様な動作が行なわれる。
Next, the pixel processing unit 33
The operation of a will be described. Referring to FIG. 95, internal pixel bus IPB2 is commonly used. Therefore, when the locally decoded data is simultaneously transferred through the two pixel bus interface circuits 318a and 318b, the same operation as that of the pixel processing unit 33 shown in FIG. 94 is performed.

【0306】上記の構成により、ピクセルプロセシング
ユニット33aは、局部復号データを同時に複数の外部
装置へ転送することができ、さらに、ローカルメモリか
ら動き予測ユニットへ参照画像データを転送していると
きに他のポートからピクセルプロセシングユニット35
へデータを転送することができる。また、ピクセルバス
IPB2を共通化して使用するため、回路面積を削減す
ることができ、高集積化に適する。
With the above configuration, the pixel processing unit 33a can transfer the locally decoded data to a plurality of external devices at the same time, and further, while transferring the reference image data from the local memory to the motion prediction unit, Port of the pixel processing unit 35
Data can be transferred to. Further, since the pixel bus IPB2 is commonly used, the circuit area can be reduced, which is suitable for high integration.

【0307】4.可変長プロセッサ 以下の記載では、2つのシステム構成が提案され、それ
ぞれのシステム構成を実現するためのプロセッサについ
て説明がなされる。
[0307] 4. Variable Length Processor In the following description, two system configurations are proposed and processors for realizing the respective system configurations are described.

【0308】(1) 第1のシステム構成(図30ない
し図35) 図30は、可変長処理のための第1のシステム構成を示
すブロック図である。図30に示したシステム構成を有
する可変長プロセッサを、たとえば図9に示した可変長
プロセッサ12に適用することができる。
(1) First System Configuration (FIGS. 30 to 35) FIG. 30 is a block diagram showing a first system configuration for variable length processing. The variable length processor having the system configuration shown in FIG. 30 can be applied to the variable length processor 12 shown in FIG. 9, for example.

【0309】図30を参照して、第1のシステム構成
は、可変長符号化用テーブルメモリ401と、可変長復
号化用テーブルメモリ402と、可変長符号列入力メモ
リ403と、可変長符号列出力メモリ404と、被符号
化データ入力メモリ405と、被符号化データ出力メモ
リ406とを含む。可変長プロセッサ121は、バスラ
インBUを介して各メモリ401ないし406に接続さ
れる。
Referring to FIG. 30, the first system configuration has a variable length coding table memory 401, a variable length decoding table memory 402, a variable length code string input memory 403, and a variable length code string. It includes an output memory 404, an encoded data input memory 405, and an encoded data output memory 406. The variable length processor 121 is connected to each of the memories 401 to 406 via a bus line BU.

【0310】図31は、第1のシステム構成における可
変長符号化処理のフロー図である。図31を参照して、
以下に可変長符号化のための処理について説明する。ま
ず、ステップ431において、被符号化データ入力メモ
リ405から変換対象の被符号化データが可変長プロセ
ッサ121内の内部メモリに与えられる。ここで、被符
号化データは、“RUN”および“LEVEL”の組合
せにより規定される。以下の記載では、被符号化データ
を(RN,LV)により表わすものとする。与えられた
被符号化データは、可変長プロセッサ121内のアドレ
ス生成器(図示せず)に与えられ、可変長符号化用テー
ブルメモリ401の参照により可変長符号およびその符
号長が得られる。可変長符号および符号長は可変長プロ
セッサ121内の内部メモリにストアされる。
FIG. 31 is a flow chart of the variable length coding process in the first system configuration. Referring to FIG. 31,
The processing for variable length coding will be described below. First, in step 431, the encoded data to be converted is supplied from the encoded data input memory 405 to the internal memory in the variable length processor 121. Here, the encoded data is defined by a combination of "RUN" and "LEVEL". In the following description, encoded data is represented by (RN, LV). The supplied encoded data is supplied to an address generator (not shown) in the variable length processor 121, and the variable length code and its code length are obtained by referring to the variable length encoding table memory 401. The variable length code and the code length are stored in the internal memory in the variable length processor 121.

【0311】ステップ433において、得られた可変長
符号がエスケープコード(ESCAPE)であるか否か
が判定される。エスケープコードが得られたとき、ステ
ップ434において、エスケープコードおよびデータ
(RN,LV)を結合することにより、等長コードが生
成される。等長コードの生成の後、処理はステップ43
5に進む。一方、ステップ433において、エスケープ
コード、すなわちコード“000001”が得られなか
ったとき、処理はステップ435に進む。
At step 433, it is judged whether or not the obtained variable length code is an escape code (ESCAPE). When the escape code is obtained, in step 434, the isometric code is generated by combining the escape code and the data (RN, LV). After the generation of the isometric code, the process proceeds to step 43.
Go to 5. On the other hand, when the escape code, that is, the code “000001” is not obtained in step 433, the process proceeds to step 435.

【0312】ステップ435において、可変長符号のデ
ータ結合により、可変長符号列が生成される。可変長符
号列の生成の後、ステップ436において、可変長符号
列が出力される。
At step 435, a variable length code string is generated by data combination of the variable length codes. After the generation of the variable length code sequence, in step 436, the variable length code sequence is output.

【0313】図32は、第1のシステム構成における可
変長復号化処理のフロー図である。図32を参照して、
以下に可変長復号化のための処理について説明する。
FIG. 32 is a flow chart of the variable length decoding process in the first system configuration. Referring to FIG. 32,
The processing for variable length decoding will be described below.

【0314】まず、ステップ441において、図30に
示した可変長符号列入力メモリ403から可変長符号列
がバスラインBUを介して可変長プロセッサ121に与
えられる。可変長プロセッサ121は、ステップ442
において、先頭の可変長符号を抜き出す。すなわち、直
前の可変長符号の符号長から次の可変長符号が先頭が認
識され、次の可変長符号の先頭から、可変長符号の最大
符号長である14ビットのデータが抜き出される。
First, in step 441, the variable length code string input memory 403 shown in FIG. 30 supplies the variable length code string to the variable length processor 121 via the bus line BU. The variable length processor 121, step 442.
At, the leading variable length code is extracted. That is, the head of the next variable length code is recognized from the code length of the immediately preceding variable length code, and 14-bit data, which is the maximum code length of the variable length code, is extracted from the head of the next variable length code.

【0315】次に、ステップ443において、復号化用
テーブルメモリ402を参照することにより、可変長符
号および符号長、すなわちデータ(RN,LV)を得
る。すなわち、得られた可変長符号の先頭から、可変長
符号の最大符号長である14ビットのデータが図示され
ていないアドレス生成器に与えられ、アドレス生成器に
より復号化用テーブルメモリ402を参照するためのア
ドレス信号が生成される。このアドレス信号を用いて復
号化用テーブルメモリ402が参照され、可変長符号お
よびその符号長が得られる。
Next, at step 443, by referring to the decoding table memory 402, the variable length code and the code length, that is, the data (RN, LV) are obtained. That is, from the beginning of the obtained variable length code, 14-bit data, which is the maximum code length of the variable length code, is given to an address generator (not shown), and the address generator refers to the decoding table memory 402. An address signal for generating is generated. The decoding table memory 402 is referred to using this address signal, and the variable length code and its code length are obtained.

【0316】ステップ444において、エスケープコー
ド“000001”が得られたか否かが判定される。エ
スケープコードが得られたとき、ステップ445におい
て、可変長符号列から、エスケープコード“00000
1”の後の16ビットのデータが復号データ(RN,L
V)として抜き出される。ステップ445の処理の後、
処理はステップ446に進む。ステップ444におい
て、エスケープコードが得られなかったとき、処理はス
テップ446に進む。
At step 444, it is judged if the escape code "000001" is obtained. When the escape code is obtained, in step 445, the escape code "00000" is selected from the variable length code string.
The 16-bit data after "1" is the decoded data (RN, L
V) is extracted. After the processing of step 445,
The process proceeds to step 446. If no escape code is obtained in step 444, the process proceeds to step 446.

【0317】ステップ446において、復号化されたデ
ータ(RN,LV)が出力される。次に、図30に示し
た可変長符号化用テーブルメモリ401および可変長復
号化用テーブルメモリ402においてストアされるデー
タのデータ記憶構造について説明する。図33は、可変
長符号化用テーブルメモリ401のデータ記憶構造図で
ある。図33に示すように、可変長符号化用テーブルメ
モリ401は、データ(RN,LV)により参照するこ
とにより、ストアされている可変長符号VCおよび符号
長CLを出力する。ランデータRNは、6ビットのビッ
ト長を有する。レベルデータLVは、10ビットのビッ
ト長を有する。可変長符号VCは、14ビットのビット
長を有する。符号長データCLは4ビットの符号長を有
する。
At step 446, the decoded data (RN, LV) is output. Next, a data storage structure of data stored in the variable length coding table memory 401 and the variable length decoding table memory 402 shown in FIG. 30 will be described. FIG. 33 is a data storage structure diagram of the variable length coding table memory 401. As shown in FIG. 33, the variable length coding table memory 401 outputs the stored variable length code VC and code length CL by referring to the data (RN, LV). The run data RN has a bit length of 6 bits. The level data LV has a bit length of 10 bits. The variable length code VC has a bit length of 14 bits. The code length data CL has a code length of 4 bits.

【0318】図34は、可変長復号化用テーブルメモリ
402のデータ記憶構造図である。図34に示されるよ
うに、可変長復号化用テーブルメモリ402は、可変長
符号VCにより参照することにより、レベルデータL
V,ランデータRNおよび符号長データCLを出力す
る。符号長データCLは、4ビットのビット長さを有し
ている。
FIG. 34 is a data storage structure diagram of the variable length decoding table memory 402. As shown in FIG. 34, the variable length decoding table memory 402 refers to the variable length code VC to obtain the level data L.
V, run data RN and code length data CL are output. The code length data CL has a bit length of 4 bits.

【0319】可変長復号化用テーブルメモリ402を参
照するのに用いられる入力データVCは、可変長符号の
最大符号長と同じビット長さを有している。したがっ
て、入力データVCの上位ビットに最大符号長よりも短
い符号が存在する場合には、下位ビットにいかなるビッ
トパターンがあっても、上位のビットの復号結果が優先
的に出力され得る。たとえば、図34に示した2つの入
力データ415および417のいずれを用いてテーブル
メモリ402を参照しても、同じデータ416および4
18が出力される。
The input data VC used to refer to the variable length decoding table memory 402 has the same bit length as the maximum code length of the variable length code. Therefore, when a code shorter than the maximum code length exists in the upper bits of the input data VC, the decoding result of the upper bits can be preferentially output regardless of any bit pattern in the lower bits. For example, even if the table memory 402 is referred to by using any of the two input data 415 and 417 shown in FIG. 34, the same data 416 and 4 are obtained.
18 is output.

【0320】次に、可変長符号列の生成処理について説
明する。図35は、可変長符号列の生成処理を説明する
ための処理フロー図である。1つの可変長符号列を生成
するため、6つのレジスタ421ないし426が準備さ
れているものと仮定する。また、可変長処理プロセッサ
がnビットのデータ処理帯域を有しているものと仮定
し、したがって、各レジスタ421ないし426がnビ
ットのビット幅を有しているものと仮定する。
Next, the variable length code string generation processing will be described. FIG. 35 is a processing flow diagram for explaining the variable length code string generation processing. It is assumed that six registers 421 to 426 are prepared in order to generate one variable length code string. It is also assumed that the variable length processor has a data processing band of n bits, and thus each register 421 to 426 has a bit width of n bits.

【0321】図35を参照して、レジスタ421が可変
長符号VC1を保持し、レジスタ422が可変長符号V
C1の符号長kを保持しているものとする。レジスタ4
23が可変長符号VC2を保持し、レジスタ424が可
変長符号VC2の符号長jを保持しているものとする。
レジスタ425が可変長符号VC3を保持しているもの
とし、レジスタ426が可変長符号VC3の符号長mを
保持しているものとする。
Referring to FIG. 35, register 421 holds variable length code VC1 and register 422 holds variable length code V1.
It is assumed that the code length k of C1 is held. Register 4
It is assumed that 23 holds the variable length code VC2 and the register 424 holds the code length j of the variable length code VC2.
It is assumed that the register 425 holds the variable length code VC3 and the register 426 holds the code length m of the variable length code VC3.

【0322】まず、レジスタ421内に保持された可変
長符号VC1がレジスタ426に与えられる。レジスタ
426は、可変長符号VC1のそれぞれのビットをMS
Bから順にストアする。したがって、レジスタ426
は、MSBからkビットの可変長符号VC1を保持する
ことになる。
First, the variable length code VC1 held in the register 421 is given to the register 426. The register 426 MSs each bit of the variable-length code VC1.
Store in order from B. Therefore, register 426
Holds the k-bit variable length code VC1 from the MSB.

【0323】次に、ステップ427において、可変長符
号VC2の符号長jが(n−k)と比較される。j<
(n−k)の場合では、レジスタ423内に保持された
可変長符号VC2がレジスタ426に与えられる。レジ
スタ426は、可変長符号VC1の後に可変長符号VC
2を保持する。レジスタ426における動作は、可変長
符号VC2をkビットだけLSB側にシフトした後、可
変長符号VC1およびVC2の対応するビット間で累算
または論理和処理を行なうことによりなされる。その結
果、レジスタ426は、(k+j)ビットの結合された
データ、すなわち可変長符号列(VC1+VC2)を保
持することになる。
Next, at step 427, the code length j of the variable length code VC2 is compared with (nk). j <
In the case of (n−k), the variable length code VC2 held in the register 423 is given to the register 426. The register 426 has a variable length code VC1 followed by a variable length code VC.
Hold 2 The operation in the register 426 is performed by shifting the variable length code VC2 to the LSB side by k bits and then performing accumulation or logical OR processing between the corresponding bits of the variable length codes VC1 and VC2. As a result, the register 426 holds the combined data of (k + j) bits, that is, the variable length code string (VC1 + VC2).

【0324】この段階において、レジスタ426は(n
−k−j)ビットの領域を残しているので、レジスタ4
26はさらに可変長符号VC3を保持するのに使われ
る。
At this stage, the register 426 has (n
-K-j) bit area remains, so register 4
26 is further used to hold the variable length code VC3.

【0325】ステップ427においてj>(n−k)の
場合では、レジスタ423内の可変長符号VC2のう
ち、(n−k)ビットのデータがレジスタ426におい
て保持される。すなわち、可変長符号VC2をkビット
だけシフトさせた後、可変長符号VC1およびVC2の
間で累算または論理和処理が行なわれる。その結果、レ
ジスタ426は、kビットの可変長符号VC1および
(n−k)ビットの可変長符号VC2の一部により満た
されることになる。
If j> (n−k) in step 427, (n−k) bit data of the variable length code VC2 in the register 423 is held in the register 426. That is, after shifting the variable length code VC2 by k bits, the accumulation or logical sum processing is performed between the variable length codes VC1 and VC2. As a result, the register 426 will be filled with a portion of the k-bit variable length code VC1 and the (n−k) -bit variable length code VC2.

【0326】ステップ428においてレジスタ426内
に満たされたデータが出力される。データ出力の後、レ
ジスタ423内に残された(j+k−n)ビットの可変
長符号VC2がレジスタ426に与えられる。レジスタ
426は、与えられたデータ、すなわち可変長符号VC
2の残されたビットをMSBの側から順に保持する。
In step 428, the data filled in the register 426 is output. After data output, the variable length code VC2 of (j + k−n) bits left in the register 423 is given to the register 426. The register 426 receives the given data, that is, the variable length code VC.
The remaining 2 bits are held in order from the MSB side.

【0327】このようにして、レジスタ426が順次に
与えられる可変長符号により満たされ、満たされたnビ
ットのデータが可変長符号列として順次に出力される。
In this way, the register 426 is filled with the variable length codes sequentially provided, and the filled n-bit data is sequentially output as a variable length code string.

【0328】可変長符号列の切出し処理では、上記の可
変長符号列生成処理と同様に、データシフト,論理演
算,可変長符号の符号長のカウントおよび判断処理を繰
返し実行することにより行なわれる。
The variable length code string cutout process is performed by repeatedly executing the data shift, the logical operation, the code length count of the variable length code, and the determination process, similarly to the variable length code string generation process described above.

【0329】(2) 可変長プロセッサ(専用回路:図
36) 図36は、可変長プロセッサの第1の例を示すブロック
図である。図36を参照して、可変長プロセッサ122
は、アドレスレジスタ451と、ROM452と、出力
処理回路453とを含む。これらの内部回路451,4
52および453は専用回路により構成される。
(2) Variable Length Processor (Dedicated Circuit: FIG. 36) FIG. 36 is a block diagram showing a first example of the variable length processor. Referring to FIG. 36, variable length processor 122
Includes an address register 451, a ROM 452, and an output processing circuit 453. These internal circuits 451 and 4
52 and 453 are composed of dedicated circuits.

【0330】(3) 可変長プロセッサ(ディジタルシ
グナルプロセッサ:図37) 図37は、可変長プロセッサの第2の例を示すブロック
図である。この可変長プロセッサ123は、ディジタル
シグナルプロセッサにより構成される。図37を参照し
て、可変長プロセッサ123は、外部インターフェイス
回路461と、ALU462と、シフタ回路463と、
メモリ464と、命令メモリ465と、制御回路466
とを含む。
(3) Variable Length Processor (Digital Signal Processor: FIG. 37) FIG. 37 is a block diagram showing a second example of the variable length processor. The variable length processor 123 is composed of a digital signal processor. Referring to FIG. 37, the variable length processor 123 includes an external interface circuit 461, an ALU 462, a shifter circuit 463, and
A memory 464, an instruction memory 465, and a control circuit 466.
Including and

【0331】(4) 可変長プロセッサ(汎用マイクロ
プロセッサ:図38) 図38は、可変長プロセッサの第3の例を示すブロック
図である。この可変長プロセッサ124は、汎用のマイ
クロプロセッサにより構成される。図38を参照して、
可変長プロセッサ124は、レジスタファイル473を
含む実行ユニット(EU)471と、リロケーションレ
ジスタファイル474を含むバスインターフェイスユニ
ット472と、ALU475と、フラグレジスタ476
と、バスインターフェイスユニット477と、命令キュ
ー478と、制御/タイミング回路479とを含む。
(4) Variable Length Processor (General Purpose Microprocessor: FIG. 38) FIG. 38 is a block diagram showing a third example of the variable length processor. The variable length processor 124 is composed of a general-purpose microprocessor. Referring to FIG. 38,
The variable length processor 124 includes an execution unit (EU) 471 including a register file 473, a bus interface unit 472 including a relocation register file 474, an ALU 475, and a flag register 476.
A bus interface unit 477, an instruction queue 478, and a control / timing circuit 479.

【0332】図36,図37および図38に示した可変
長プロセッサ122,123および124は、いずれも
図30に示した第1のシステム構成を形成しており、し
たがって第1のシステム構成における上記の処理が行な
われる。
The variable length processors 122, 123, and 124 shown in FIGS. 36, 37, and 38 all form the first system configuration shown in FIG. 30, and therefore the above-mentioned first system configuration is used. Is processed.

【0333】(5) 第2のシステム構成(図39) 図39は、可変長処理のための第2のシステム構成を示
すブロック図である。図39に示したシステム構成は、
たとえば図1に示した画像圧縮/伸張処理装置101に
おいて形成される。
(5) Second System Configuration (FIG. 39) FIG. 39 is a block diagram showing the second system configuration for variable length processing. The system configuration shown in FIG. 39 is
For example, it is formed in the image compression / expansion processing device 101 shown in FIG.

【0334】図39を参照して、ワークメモリ7は、可
変長符号化用テーブルメモリ481と、可変長復号化用
テーブルメモリ482とを含む。これらのテーブルメモ
リ481および482は、バス491および492を介
して可変長プロセッサ125に接続される。
Referring to FIG. 39, work memory 7 includes a variable length coding table memory 481 and a variable length decoding table memory 482. These table memories 481 and 482 are connected to the variable length processor 125 via buses 491 and 492.

【0335】バッファメモリ6は、可変長符号列入力メ
モリ483と、可変長符号列出力メモリ484と、被符
号化データ入力メモリ485と、被符号化データ出力メ
モリ486とを含む。これらの符号列入力メモリ483
および出力メモリ484は、バス493および495を
介して可変長プロセッサ125に接続される。また、符
号列入力メモリおよび符号列出力メモリは、バス494
を介して可変長プロセッサ125およびホストインター
フェイス回路1に接続される。
The buffer memory 6 includes a variable length code string input memory 483, a variable length code string output memory 484, a coded data input memory 485, and a coded data output memory 486. These code string input memories 483
And output memory 484 is connected to variable length processor 125 via buses 493 and 495. Further, the code string input memory and the code string output memory are the bus 494.
Is connected to the variable length processor 125 and the host interface circuit 1 via.

【0336】被符号化データ入力メモリ485および被
符号化データ出力メモリ486は、バス496および4
98を介して可変長プロセッサ125に接続される。ま
た、入力メモリ485および出力メモリ486は、バス
497を介して可変長プロセッサ125およびピクセル
プロセシングユニット3に接続される。
Encoded data input memory 485 and encoded data output memory 486 include buses 496 and 4
It is connected to the variable length processor 125 via 98. Further, the input memory 485 and the output memory 486 are connected to the variable length processor 125 and the pixel processing unit 3 via the bus 497.

【0337】(6) 可変長プロセッサ(図40) 図40は、図39に示した可変長プロセッサ125のブ
ロック図である。したがって、図40に示した可変長プ
ロセッサ125は、たとえば図9に示した可変長プロセ
ッサ12に適用され得る。
(6) Variable Length Processor (FIG. 40) FIG. 40 is a block diagram of the variable length processor 125 shown in FIG. Therefore, the variable length processor 125 shown in FIG. 40 can be applied to the variable length processor 12 shown in FIG. 9, for example.

【0338】図40を参照して、可変長プロセッサ12
5は、制御器501と、アドレス生成器502と、外部
インターフェイス回路503と、データ演算器504
と、可変長符号列生成/分解回路505と、外部インタ
ーフェイス回路506と、外部インターフェイス回路5
07と、データメモリ508とを含む。これらの内部回
路501ないし508は、第1の内部バス509を介し
て接続される。一方、外部インターフェイス回路503
および可変長符号列生成/分解回路505は、第2の内
部バス510を介して接続される。
Referring to FIG. 40, variable length processor 12
5 is a controller 501, an address generator 502, an external interface circuit 503, and a data calculator 504.
A variable length code string generation / decomposition circuit 505, an external interface circuit 506, and an external interface circuit 5
07 and a data memory 508. These internal circuits 501 to 508 are connected via a first internal bus 509. On the other hand, the external interface circuit 503
The variable length code string generation / decomposition circuit 505 is connected via the second internal bus 510.

【0339】外部インターフェイス回路503は、バス
491および492を介して図9に示したメインポート
17に接続される。外部インターフェイス回路506
は、バス493,494および495を介して図9に示
したコードデータポート20に接続される。
External interface circuit 503 is connected to main port 17 shown in FIG. 9 via buses 491 and 492. External interface circuit 506
Are connected to the code data port 20 shown in FIG. 9 via buses 493, 494 and 495.

【0340】(i) アドレス生成器(図41) 図41は、図40に示したアドレス生成器502のブロ
ック図である。図41を参照して、アドレス生成器50
2は、正リミット値レジスタ520と、負リミット値レ
ジスタ521と、PEモードレジスタ522と、ページ
レジスタ523と、アドレスレジスタ524および52
5と、エスケープデコーダ526と、エスケープエンコ
ーダ527と、エスケープレジスタ528と、データレ
ジスタ529と、セレクタ回路530と、リミッタ回路
531と、プライオリティエンコーダ532と、シフタ
回路533と、外部アドレスレジスタ534と、パイプ
ラインレジスタ561,562,563と、OR回路
(論理和処理回路)564とを含む。
(I) Address Generator (FIG. 41) FIG. 41 is a block diagram of the address generator 502 shown in FIG. Referring to FIG. 41, the address generator 50
2 is a positive limit value register 520, a negative limit value register 521, a PE mode register 522, a page register 523, and address registers 524 and 52.
5, an escape decoder 526, an escape encoder 527, an escape register 528, a data register 529, a selector circuit 530, a limiter circuit 531, a priority encoder 532, a shifter circuit 533, an external address register 534, and a pipe. It includes line registers 561, 562, 563 and an OR circuit (logical sum processing circuit) 564.

【0341】レジスタ520ないし525は、第1の内
部バス509に接続される。セレクタ回路530は、第
1および第2の内部バス509および510に接続され
る。データレジスタ529および外部アドレスレジスタ
534は、図40に示した外部インターフェイス回路5
03に接続される。
Registers 520 to 525 are connected to first internal bus 509. Selector circuit 530 is connected to first and second internal buses 509 and 510. The data register 529 and the external address register 534 are equivalent to the external interface circuit 5 shown in FIG.
03 is connected.

【0342】図42は、図41に示したアドレス生成器
502における可変長符号化処理のフロー図である。ア
ドレス生成器502の詳細な処理は後で説明されるが、
まず、基本的な動作について説明する。
FIG. 42 is a flow chart of the variable length coding process in the address generator 502 shown in FIG. Although the detailed processing of the address generator 502 will be described later,
First, the basic operation will be described.

【0343】図42を参照して、ステップ601におい
て、図41に示したレジスタ520ないし523に所定
のデータが設定される。ステップ602において、アド
レスレジスタ525に被符号化データ(RN,LV)が
入力される。被符号化データ(RN,LV)は、合計1
6ビットを有しており、上位の10ビットによりレベル
データLVが規定され、下位の6ビットによりランデー
タRNが規定される。ステップ602の後、ステップ6
03ないし605およびステップ606ないし607の
処理が並列に行なわれる。
Referring to FIG. 42, in step 601, predetermined data is set in registers 520 to 523 shown in FIG. In step 602, the encoded data (RN, LV) is input to the address register 525. Encoded data (RN, LV) is 1 in total
It has 6 bits, the upper 10 bits define the level data LV, and the lower 6 bits define the run data RN. After step 602, step 6
The processes of 03 to 605 and steps 606 to 607 are performed in parallel.

【0344】ステップ603において、アドレスレジス
タ525において保持されたデータがリミッタ回路53
1に与えられる。リミッタ回路531は、与えられたデ
ータのうち上位の10ビット、すなわちレベルデータL
Vについて、正リミット値レジスタ520および負リミ
ット値レジスタ521によって規定された範囲内に制限
する。リミット処理の結果、6ビットのレベルデータL
Vおよび6ビットのランデータRNを有する合計12ビ
ットの被符号化データが得られる。
At step 603, the data held in the address register 525 is stored in the limiter circuit 53.
Given to 1. The limiter circuit 531 is provided with the upper 10 bits of the supplied data, that is, the level data L.
V is limited to the range defined by the positive limit value register 520 and the negative limit value register 521. 6-bit level data L as a result of limit processing
A total of 12 bits of encoded data with V and 6 bits of run data RN are obtained.

【0345】12ビットの被符号化データはOR回路5
64に与えられ、与えられたデータとページレジスタ5
23から与えられるデータとの間で論理和処理が行なわ
れ、結合された20ビットのデータが生成される(ステ
ップ604)。生成されたデータは、外部アドレスレジ
スタ534に格納される(ステップ605)。
The 12-bit coded data is OR circuit 5
64 and the given data and page register 5
An OR operation is performed with the data supplied from 23 to generate combined 20-bit data (step 604). The generated data is stored in the external address register 534 (step 605).

【0346】一方、ステップ606において、レジスタ
525内の被符号化データがエスケープエンコーダ52
7に与えられ、エスケープエンコーダ527による等長
コードの生成が行なわれる。すなわち、被符号化データ
が等長コードとして符号化される場合の等長コード生成
処理が行なわれる。ステップ607において、生成され
た等長コードがエスケープレジスタ528に格納され
る。
On the other hand, in step 606, the encoded data in the register 525 is the escape encoder 52.
7, the equal length code is generated by the escape encoder 527. That is, the equal length code generation process is performed when the encoded data is encoded as the equal length code. In step 607, the generated equal-length code is stored in the escape register 528.

【0347】図43は、図41に示したアドレス生成器
502における可変長復号化処理のフロー図である。可
変長復号化のための基本的な処理について説明する。
FIG. 43 is a flow chart of the variable length decoding process in the address generator 502 shown in FIG. A basic process for variable length decoding will be described.

【0348】図43を参照して、まずステップ611に
おいて、レジスタ520ないし523に所定のデータが
設定される。ステップ612において、復号化されるべ
き可変長符号列がアドレスレジスタ524に入力され
る。レジスタ524は、与えられた可変長符号列の最初
のビットから22ビット分をMSB側から順に保持す
る。ステップ612の後、ステップ613ないし616
の処理およびステップ617ないし618の処理が並列
に行なわれる。
Referring to FIG. 43, first, in step 611, predetermined data is set in registers 520 to 523. In step 612, the variable length code string to be decoded is input to the address register 524. The register 524 holds 22 bits from the first bit of the given variable-length code sequence in order from the MSB side. After step 612, steps 613 to 616
And the processing of steps 617 to 618 are performed in parallel.

【0349】ステップ613において、アドレスレジス
タ524内に保持されたデータ、すなわち可変長符号列
がプライオリティエンコーダ532に与えられる。プラ
イオリティエンコーダ532は、与えられたデータにつ
いてそのMSBから連続する“0”の数SNを演算によ
り求める。
At step 613, the data held in the address register 524, that is, the variable length code string is given to the priority encoder 532. The priority encoder 532 obtains the number SN of consecutive “0” from the MSB of the given data by calculation.

【0350】ステップ614において、アドレスレジス
タ524内のデータがシフタ回路533に与えられる。
シフタ回路533は、ステップ613において求められ
た連続数SNに応答して、与えられたデータのうちMS
Bから(SN+1)番目より下位の6ビットのデータを
抜き出す。抜き出されたデータはOR回路564に与え
られる。
At step 614, the data in the address register 524 is supplied to the shifter circuit 533.
The shifter circuit 533 responds to the consecutive number SN obtained in step 613, in response to the MS of the given data.
Data of 6 bits lower than the (SN + 1) th position is extracted from B. The extracted data is given to the OR circuit 564.

【0351】ステップ615において、OR回路564
による論理和処理が行なわれ、20ビットのデータが生
成される。生成されたデータは外部アドレスレジスタ5
34に格納される(ステップ616)。
In step 615, the OR circuit 564
20-bit data is generated. The generated data is the external address register 5
It is stored in 34 (step 616).

【0352】一方、ステップ617において、アドレス
レジスタ524において保持されたデータがエスケープ
デコーダ526に与えられる。エスケープデコーダ52
6は、与えられたデータがエスケープコードを用いた等
長コードであるとみなすことにより復号処理を行なう。
復号されたデータはエスケープレジスタ528に格納さ
れる(ステップ618)。
On the other hand, in step 617, the data held in the address register 524 is given to the escape decoder 526. Escape decoder 52
6 performs a decoding process by considering that the given data is an equal length code using an escape code.
The decoded data is stored in the escape register 528 (step 618).

【0353】(ii) 可変長符号列生成/分解回路
(図44) 図44は、図40に示した可変長符号列生成/分解回路
505のブロック図である。図44を参照して、可変長
符号列生成/分解回路505は、バスレジスタ536
と、バレルシフタ(BSFT)537と、加算器538
と、コード長レジスタ539と、コード出力レジスタ5
40と、コード入力レジスタ541と、FIFO回路5
42および543と、制御器544とを含む。バスレジ
スタ536は、第1の内部バス509に接続される。加
算器538は、第2の内部バス510に接続される。F
IFO回路542および543は、信号線42aないし
43cを介して図47に示した外部インターフェイス回
路506(後で説明される)に接続される。
(Ii) Variable Length Code Sequence Generation / Decomposition Circuit (FIG. 44) FIG. 44 is a block diagram of the variable length code sequence generation / decomposition circuit 505 shown in FIG. Referring to FIG. 44, the variable-length code string generation / decomposition circuit 505 includes a bus register 536
Barrel shifter (BSFT) 537 and adder 538
, Code length register 539, and code output register 5
40, code input register 541, and FIFO circuit 5
42 and 543 and controller 544. The bus register 536 is connected to the first internal bus 509. The adder 538 is connected to the second internal bus 510. F
The IFO circuits 542 and 543 are connected to the external interface circuit 506 (described later) shown in FIG. 47 via the signal lines 42a to 43c.

【0354】図45は、図44に示した可変長符号列生
成分解回路505における可変長符号化処理のフロー図
である。図45を参照して、まず、可変長符号化処理に
おける基本的な動作について説明する。
FIG. 45 is a flow chart of a variable length coding process in the variable length code string generation / decomposition circuit 505 shown in FIG. First, with reference to FIG. 45, a basic operation in the variable length coding process will be described.

【0355】ステップ621において、可変長符号VC
が内部バス509を介してバスレジスタ536に与えら
れる。可変長符号VCのコード長データCLが第2の内
部バス510を介して加算器538に与えられる。
In step 621, the variable length code VC
Are provided to bus register 536 via internal bus 509. The code length data CL of the variable length code VC is given to the adder 538 via the second internal bus 510.

【0356】ステップ622において、バレルシフタ5
37が、既に入力されている古い可変長符号VC′に現
在与えられた新しい可変長符号VCを結合し、可変長符
号列VCTを生成する。ステップ623において、加算
器538が、新しい可変長符号の符号長CLを累積的に
加算されている符号長和CLSに加算する。
At step 622, the barrel shifter 5
37 combines the old variable length code VC 'that has already been input with the new variable length code VC currently given to generate a variable length code string VCT. In step 623, the adder 538 adds the code length CL of the new variable length code to the cumulatively added code length CLS.

【0357】ステップ624において、符号長和CLS
が8ビットを超えるか否かが判定される。CLS≧8で
あるとき、処理はステップ625に進む。
At step 624, the code length sum CLS
Is greater than 8 bits. When CLS ≧ 8, the process proceeds to step 625.

【0358】ステップ625において、可変長符号列V
CTの最初のビットから8ビットのデータがFIFO回
路542に与えられ、そこで格納される。ステップ62
6において、減算、すなわちCLS=CLS−8を実行
することにより、新しい符号長和が求められる。ステッ
プ626の後、処理はステップ624に戻る。
At step 625, the variable length code string V
8-bit data from the first bit of CT is given to the FIFO circuit 542 and stored therein. Step 62
At 6, a new code length sum is determined by performing a subtraction, ie CLS = CLS-8. After step 626, processing returns to step 624.

【0359】ステップ624において、もしCLS<8
であるとき、この符号化動作が終了する。
In step 624, if CLS <8
, The encoding operation ends.

【0360】図46は、図44に示した可変長符号列生
成/分解回路505における可変長復号化処理のフロー
図である。図46を参照して、まず、ステップ631に
おいて、第1の内部バス509上に可変長符号列VCT
が与えられる。ステップ632において、第2の内部バ
ス510を介して、可変長符号列VCTに含まれる最初
の可変長符号VCの符号長CLが加算器538に与えら
れる。加算器538は、ステップ633において、新し
い符号長CLを古い符号長の和CLSに加算する。
FIG. 46 is a flow chart of a variable length decoding process in the variable length code string generation / decomposition circuit 505 shown in FIG. Referring to FIG. 46, first, in step 631, the variable length code string VCT is placed on the first internal bus 509.
Is given. In step 632, the code length CL of the first variable-length code VC included in the variable-length code string VCT is given to the adder 538 via the second internal bus 510. In step 633, the adder 538 adds the new code length CL to the sum CLS of the old code lengths.

【0361】ステップ634において、符号長和CLS
が8ビット以上であるかどうかが判定される。CLS≧
8であるとき、処理はステップ635に進む。
In step 634, the code length sum CLS
Is greater than or equal to 8 bits. CLS ≧
If so, the process proceeds to step 635.

【0362】ステップ635において、可変長符号列入
力メモリ483から1ワードのデータが与えられ、現在
の可変長符号列に結合される。ステップ636におい
て、結合された可変長符号列から最初の8ビットのデー
タが捨てられる。ステップ637において、CLS=C
LS−8を実行することにより、新しい符号長和CLS
が得られる。ステップ637の後、処理はステップ63
4に戻る。
At step 635, one word of data is provided from the variable length code string input memory 483 and combined with the current variable length code string. In step 636, the first 8-bit data from the combined variable length code string is discarded. In step 637, CLS = C
The new code length sum CLS is obtained by executing LS-8.
Is obtained. After the step 637, the process is the step 63.
Return to 4.

【0363】ステップ634において、CLS<8のと
き、この復号化処理が終了する。 (iii) 外部インターフェイス回路506(図4
7) 図47は、図40に示した外部インターフェイス回路5
06のブロック図である。図47を参照して、外部イン
ターフェイス回路506は、DMA機能を有する制御器
545と、リードアクセスカウンタ546および549
と、ライトアクセスカウンタ547および548と、減
算器565および566と、比較器550および558
と、フラグ生成レジスタ551ないし554と、ライト
データレジスタ556と、リードデータレジスタ557
と、セレクタ555とを含む。
In step 634, when CLS <8, this decoding process ends. (Iii) External interface circuit 506 (see FIG.
7) FIG. 47 shows the external interface circuit 5 shown in FIG.
It is a block diagram of 06. 47, external interface circuit 506 includes controller 545 having a DMA function and read access counters 546 and 549.
, Write access counters 547 and 548, subtractors 565 and 566, and comparators 550 and 558.
, Flag generation registers 551 to 554, write data register 556, and read data register 557.
And a selector 555.

【0364】制御器545は、信号線42b,42c,
43bおよび43cを介して図44に示したFIFO回
路542および543に接続される。レジスタ556
は、信号線42aを介して図44に示したFIFO回路
542に接続される。レジスタ557は、信号線43a
を介して図44に示したFIFO回路543に接続され
る。カウンタ546および547は、信号線493を介
して図39に示した可変長符号列入力メモリ438およ
び可変長符号列出力メモリ484に接続される。カウン
タ548および549は、信号線494を介して図39
に示した可変長符号列入力メモリ483および可変長符
号列出力メモリ484ならびにホストインターフェイス
回路1に接続される。セレクタ555は、信号線495
を介して図39に示した可変長符号列入力メモリ483
および可変長符号列出力メモリ484に接続される。
The controller 545 controls the signal lines 42b, 42c,
It is connected to the FIFO circuits 542 and 543 shown in FIG. 44 through 43b and 43c. Register 556
Is connected to the FIFO circuit 542 shown in FIG. 44 through the signal line 42a. The register 557 has a signal line 43a.
Is connected to the FIFO circuit 543 shown in FIG. The counters 546 and 547 are connected to the variable length code string input memory 438 and the variable length code string output memory 484 shown in FIG. 39 via the signal line 493. Counters 548 and 549 are shown in FIG.
It is connected to the variable-length code string input memory 483 and the variable-length code string output memory 484 shown in FIG. The selector 555 uses the signal line 495.
Via the variable length code string input memory 483 shown in FIG.
And a variable length code string output memory 484.

【0365】カウンタ546は、図39に示した可変長
符号列入力メモリ483へのリードアクセス回数をカウ
ントする。カウンタ547は、図39に示した可変長符
号列出力メモリ484へのライトアクセス回数をカウン
トする。カウンタ548は、他の回路から可変長符号列
入力メモリ483へのライトアクセス回数をカウントす
る。カウンタ549は、他の回路から可変長符号列出力
メモリ484へのリードアクセス回数をカウントする。
The counter 546 counts the number of read accesses to the variable length code string input memory 483 shown in FIG. The counter 547 counts the number of write accesses to the variable length code string output memory 484 shown in FIG. The counter 548 counts the number of write accesses to the variable length code string input memory 483 from other circuits. The counter 549 counts the number of read accesses to the variable length code string output memory 484 from other circuits.

【0366】フラグレジスタ551は、可変長符号列入
力メモリ483のフル状態を示すフルフラグを生成し、
かつそれを保持する。レジスタ552は、可変長符号列
入力メモリ483のエンプティ状態を示すエンプティフ
ラグを生成し、それを保持する。フラグレジスタ553
は、可変長符号列出力メモリ484のフル状態を示すフ
ルフラグを生成し、かつそれを保持する。カウンタ55
4は、可変長符号列出力メモリ484のエンプティ状態
を示すエンプティフラグを生成し、かつそれを保持す
る。
The flag register 551 generates a full flag indicating the full state of the variable length code string input memory 483,
And hold it. The register 552 generates an empty flag indicating the empty state of the variable length code string input memory 483, and holds it. Flag register 553
Generates a full flag indicating the full state of the variable length code string output memory 484 and holds it. Counter 55
4 generates an empty flag indicating the empty state of the variable length code string output memory 484, and holds it.

【0367】比較器550は、可変長符号列入力メモリ
483のフル状態を示すフルフラグFF1またはエンプ
ティ状態を示すエンプティフラグEF1を出力する。比
較器558は、可変長符号列出力メモリ484のフル状
態を示すフルフラグFF2またはエンプティフラグEF
2を出力する。
The comparator 550 outputs the full flag FF1 indicating the full state of the variable length code string input memory 483 or the empty flag EF1 indicating the empty state. The comparator 558 is a full flag FF2 or an empty flag EF indicating the full state of the variable length code string output memory 484.
2 is output.

【0368】図48は、図47に示した外部インターフ
ェイス回路506における可変長符号化処理のフロー図
である。図48を参照して、可変長符号化処理のための
基本的な動作について説明する。
FIG. 48 is a flow chart of a variable length coding process in the external interface circuit 506 shown in FIG. A basic operation for the variable length coding process will be described with reference to FIG.

【0369】ステップ641において、可変長符号列出
力メモリ484がエンプティ状態にあるか否かが検出さ
れる。すなわち、比較器558からエンプティフラグE
F2が出力されるか否かが判定される。エンプティフラ
グEF2が検出されないとき、処理はステップ642に
進む。もし、エンプティフラグEF2が検出されたと
き、処理は終了する。
In step 641, it is detected whether or not the variable length code string output memory 484 is in the empty state. That is, the empty flag E from the comparator 558.
It is determined whether or not F2 is output. If the empty flag EF2 is not detected, the process proceeds to step 642. If the empty flag EF2 is detected, the process ends.

【0370】ステップ642において、可変長符号列出
力メモリ484がフル状態にあるか否かが検出される。
すなわち、比較器558からフルフラグFF2が出力さ
れるか否かが判定される。フルフラグFF2が検出され
ないとき、処理はステップ643に進む。フルフラグF
F2が検出されたとき、処理は終了する。
In step 642, it is detected whether the variable length code string output memory 484 is in the full state.
That is, it is determined whether or not the full flag FF2 is output from the comparator 558. If the full flag FF2 is not detected, the process proceeds to step 643. Full flag F
When F2 is detected, the process ends.

【0371】ステップ643において、可変長符号列出
力メモリ484にストアされた1ワードのデータが読出
され、外部可変長符号列出力メモリに格納される。ステ
ップ644において、ライトアクセスカウンタ547が
カウントアップされる。ステップ644の後、処理はス
テップ641に戻る。
At step 643, the 1-word data stored in the variable length code string output memory 484 is read out and stored in the external variable length code string output memory. In step 644, the write access counter 547 is counted up. After step 644, the process returns to step 641.

【0372】図49は、図47に示した外部インターフ
ェイス回路506における可変長復号化処理のフロー図
である。図49を参照して、まず、ステップ651にお
いて、可変長符号列入力メモリ483がフル状態にある
か否かが検出される。すなわち、比較器550からフル
フラグFF1が出力されるか否かが検出される。フルフ
ラグFF1が検出されないとき、処理はステップ652
に進む。フルフラグFF1が検出されたとき、処理は終
了する。
FIG. 49 is a flow chart of a variable length decoding process in the external interface circuit 506 shown in FIG. Referring to FIG. 49, first, in step 651, it is detected whether or not the variable length code string input memory 483 is in the full state. That is, it is detected whether the full flag FF1 is output from the comparator 550. If the full flag FF1 is not detected, the process is step 652.
Proceed to. When the full flag FF1 is detected, the processing ends.

【0373】ステップ652において、可変長符号列入
力メモリ483がエンプティ状態にあるか否かが検出さ
れる。すなわち、比較器550からエンプティフラグE
F1が出力されるか否かが検出される。エンプティフラ
グEF1が検出されないとき、処理はステップ653に
進む。エンプティフラグEF1が検出されたとき、処理
は終了する。
At step 652, it is detected whether or not the variable length code string input memory 483 is in the empty state. That is, the empty flag E from the comparator 550
It is detected whether or not F1 is output. If the empty flag EF1 is not detected, the process proceeds to step 653. When the empty flag EF1 is detected, the processing ends.

【0374】ステップ653において、外部可変長符号
列入力メモリにストアされている1ワードのデータが読
出され、可変長符号列入力メモリ483に格納される。
ステップ654において、外部可変長符号列入力メモリ
のためのリードアクセスカウンタ446がカウントアッ
プされる。ステップ654の後、処理はステップ651
に戻る。
At step 653, the one-word data stored in the external variable length code string input memory is read and stored in the variable length code string input memory 483.
In step 654, the read access counter 446 for the external variable length code string input memory is counted up. After step 654, the process is step 651.
Return to.

【0375】(iv) より詳細な可変長符号化/復号
化処理の説明 以下の記載では、図39に示した可変長プロセッサ12
5における可変長符号化/復号化処理についてより詳細
に説明する。
(Iv) More Detailed Description of Variable Length Encoding / Decoding Processing In the following description, the variable length processor 12 shown in FIG.
The variable length encoding / decoding processing in 5 will be described in more detail.

【0376】図50は、図39に示した可変長プロセッ
サ125における処理において使用される可変長符号テ
ーブルである。図50を参照して、この可変長符号テー
ブルの左側の4つの欄は、CCITTによるH.261
勧告における可変長符号テーブルに相当する。すなわ
ち、H.261に規定されたランデータ(ゼロラン長)
RN,レベルデータ(係数)LV,符号長CLおよび可
変長符号VCが左側の4つの欄に記載されている。一
方、右側の3つの欄は、グループ化された可変長符号テ
ーブルを示している。すなわち、可変長符号VCの最初
のビットから連続する“0”の個数に従って、可変長符
号VCおよび符号長CLが合計9つのグループGR0な
いしGR8に分けられている。
FIG. 50 is a variable length code table used in the processing in the variable length processor 125 shown in FIG. Referring to FIG. 50, the four columns on the left side of the variable length code table are H.264 based on CCITT. 261
It corresponds to the variable length code table in the recommendation. That is, H.264. Run data defined in H.261 (zero run length)
RN, level data (coefficient) LV, code length CL and variable length code VC are described in the four columns on the left side. On the other hand, the three columns on the right side show grouped variable length code tables. That is, the variable length code VC and the code length CL are divided into nine groups GR0 to GR8 in total according to the number of "0" s consecutive from the first bit of the variable length code VC.

【0377】たとえば、グループGR0は、可変長符号
VCの最初のビットが“0”でない可変長符号VCを含
む。グループGR1は、可変長符号VCの最初の1つの
ビットだけが“0”である可変長符号VCを含む。グル
ープGR2は、可変長符号VCの最初のビットおよび次
のビットが“0”である可変長コードVCを含む。同様
に、グループGR8は、可変長符号VCの最初のビット
から8つの“0”を含む可変長コードVCを含む。この
ようにグループ化された可変長コードVCおよび符号長
CLは、後で説明するように、可変長プロセッサ125
における処理において使用される。
For example, the group GR0 includes the variable length code VC whose first bit of the variable length code VC is not "0". The group GR1 includes the variable length code VC in which only the first bit of the variable length code VC is "0". The group GR2 includes the variable length code VC in which the first bit and the next bit of the variable length code VC are "0". Similarly, the group GR8 includes a variable length code VC including eight “0” s from the first bit of the variable length code VC. The variable length code VC and the code length CL grouped in this way are added to the variable length processor 125 as described later.
Used in processing.

【0378】まず、可変長符号化処理について説明す
る。可変長符号化処理は、基本的に、既に説明した図3
1に示したフロー図に従って実行される。まず、図39
に示した被符号化データ入力メモリ485から図40に
示した可変長プロセッサ125内のデータメモリ508
に被符号化データ、すなわちデータ(RN,LV)が入
力される。入力されたデータは、アドレス生成器502
に与えられ、アドレス生成器502は可変長符号化変換
のためのテーブルメモリアドレスを生成する。テーブル
アドレスの生成と並行して、図41に示したエスケープ
デコーダ526が、エスケープコードを用いた等長コー
ドを生成する。生成された等長コードはエスケープレジ
スタ528に与えられそこで保持される。アドレス生成
器502の詳細な動作については後述される。
First, the variable length coding process will be described. The variable-length coding process is basically the same as that of FIG.
It is executed according to the flow chart shown in FIG. First, FIG.
40 to the data memory 508 in the variable-length processor 125 shown in FIG.
The encoded data, that is, the data (RN, LV) is input to. The input data is the address generator 502.
Address generator 502 generates a table memory address for the variable length coding conversion. In parallel with the generation of the table address, the escape decoder 526 shown in FIG. 41 generates the equal length code using the escape code. The generated equal-length code is given to the escape register 528 and held there. The detailed operation of the address generator 502 will be described later.

【0379】アドレス生成器502により生成されたテ
ーブルアドレスを用いて、可変長符号化用テーブルメモ
リ481が参照され、ストアされていた可変長コードV
C,符号長CLおよびエスケープフラグESFが読出さ
れる。可変長符号VCおよび符号長CLは図41に示し
たデータレジスタ529に与えられ、そこで保持され
る。
Using the table address generated by the address generator 502, the variable length coding table memory 481 is referred to and the stored variable length code V is stored.
C, code length CL and escape flag ESF are read. The variable length code VC and the code length CL are given to the data register 529 shown in FIG. 41 and held there.

【0380】可変長符号化用テーブルメモリ481への
アクセスが完了した後、エスケープレジスタ528およ
びデータレジスタ529のいずれか一方のデータが可変
長符号生成/分解回路505に出力される。この選択
は、セレクタ回路530により行なわれる。すなわち、
2つのレジスタ528および529内に保持されたデー
タのうち、最上位ビット(MSB)に応答して、セレク
タ530がいずれかのデータを選択的に出力する。
After the access to the variable length coding table memory 481 is completed, the data of either the escape register 528 or the data register 529 is output to the variable length code generation / decomposition circuit 505. This selection is performed by the selector circuit 530. That is,
Of the data held in the two registers 528 and 529, the selector 530 selectively outputs one of the data in response to the most significant bit (MSB).

【0381】すなわち、可変長符号化用テーブルメモリ
481は、図51に示すように、最上位ビットにおいて
被符号化データがエスケープコードの適用範囲内である
か否かを示すエスケープフラグESFを記憶している。
したがって、データレジスタ529に与えられたデータ
の最上位ビット、すなわちフラグESFがエスケープコ
ードの適用を示しているとき、セレクタ530はデータ
レジスタ529により保持されているデータを選択的に
出力する。これにより、可変長符号化用テーブルメモリ
481を参照するだけで、被符号化データにエスケープ
コードを適用させる必要があるか否かの判断ができ、こ
の判断のためにプログラムによる判断処理が必要となら
ない。
That is, as shown in FIG. 51, the variable length coding table memory 481 stores an escape flag ESF indicating whether or not the coded data in the most significant bit is within the applicable range of the escape code. ing.
Therefore, when the most significant bit of the data given to the data register 529, that is, the flag ESF indicates the application of the escape code, the selector 530 selectively outputs the data held by the data register 529. As a result, it is possible to determine whether or not the escape code needs to be applied to the encoded data only by referring to the variable length encoding table memory 481, and a determination process by the program is required for this determination. I won't.

【0382】これに加えて、図41に示したアドレス生
成器502では、可変長符号化用テーブルメモリ481
へのアクセスとエスケープコードを用いた等長コードの
生成処理が並列に、すなわち同時に実行され得るので、
可変長符号化用テーブルメモリ481へのアクセスによ
る処理時間の増加が防がれる。
In addition to this, in the address generator 502 shown in FIG. 41, the variable length coding table memory 481 is used.
Access and access code generation using escape code can be executed in parallel, that is, at the same time,
An increase in processing time due to access to the variable length encoding table memory 481 can be prevented.

【0383】可変長符号化用テーブルメモリ481の参
照により得られた可変長符号VCは、図41に示した第
1の内部バス509を介して可変長符号生成/分解回路
505に転送される。一方、その符号長CLは、第2の
内部バス510を介して可変長符号生成/分解回路50
5に転送される。
The variable length code VC obtained by referring to the variable length coding table memory 481 is transferred to the variable length code generation / decomposition circuit 505 via the first internal bus 509 shown in FIG. On the other hand, the code length CL is the variable length code generation / decomposition circuit 50 via the second internal bus 510.
5 is transferred.

【0384】可変長符号生成/分解回路505は、与え
られた可変長符号VCとその符号長CLから可変長符号
列VCTを生成する。可変長符号列の生成動作は後で説
明される。生成された可変長符号列VCTは、外部イン
ターフェイス回路506を介して図39に示した可変長
符号列出力メモリ484に出力される。このようにし
て、可変長符号化処理が完了される。
The variable length code generation / decomposition circuit 505 generates a variable length code string VCT from the supplied variable length code VC and its code length CL. The operation of generating the variable length code string will be described later. The generated variable length code string VCT is output to the variable length code string output memory 484 shown in FIG. 39 via the external interface circuit 506. In this way, the variable length coding process is completed.

【0385】次に、可変長復号化処理について説明す
る。まず、図39に示した可変長符号列入力メモリ48
3から外部インターフェイス回路506を介して可変長
符号列が可変長符号列生成/分解回路505に入力され
る。可変長符号列生成/分解回路505は、与えられた
可変長符号列から復号対象となる可変長符号を切出し、
可変長符号のビットをMSB側にシフトさせる。シフト
された可変長符号は、第1の内部バス509を介してア
ドレス生成器502に転送される。可変長符号列生成/
分解回路505における詳細な処理は後で説明される。
Next, the variable length decoding process will be described. First, the variable length code string input memory 48 shown in FIG.
The variable-length code sequence is input to the variable-length code sequence generation / decomposition circuit 505 from the external interface circuit 506. The variable-length code string generation / decomposition circuit 505 cuts out a variable-length code to be decoded from the given variable-length code string,
The bits of the variable length code are shifted to the MSB side. The shifted variable length code is transferred to the address generator 502 via the first internal bus 509. Variable length code sequence generation /
Detailed processing in the decomposition circuit 505 will be described later.

【0386】アドレス生成器502は、与えられた可変
長符号に応答して、図39に示した可変長復号化用テー
ブルメモリ482を参照するためにテーブルアドレスを
生成する。生成されたテーブルアドレスは、外部インタ
ーフェイス回路503を介して可変長復号化用テーブル
メモリ482に与えられる。その結果、復号された可変
長符号,符号長データおよびエスケープフラグESFが
図41に示したデータレジスタ529に保持される。こ
のとき、この処理と並列して、可変長符号がエスケープ
コードエンコーダ527に与えられ、エスケープコード
を用いた等長コードの復号処理が行なわれる。結果を示
すデータは、エスケープレジスタ528に与えられ、そ
こで保持される。
The address generator 502 generates a table address for referring to the variable length decoding table memory 482 shown in FIG. 39 in response to the given variable length code. The generated table address is given to the variable length decoding table memory 482 via the external interface circuit 503. As a result, the decoded variable length code, code length data and escape flag ESF are held in the data register 529 shown in FIG. At this time, in parallel with this process, the variable length code is given to the escape code encoder 527, and the equal length code is decoded using the escape code. The data indicating the result is given to the escape register 528 and held there.

【0387】可変長符号化処理の場合と同様に、可変長
復号化用テーブルメモリ482は、エスケープフラグE
SFを記憶している。したがって、テーブルメモリ48
2へのアクセスが終了した時点で、データレジスタ52
9の最上位ビット(MSB)にエスケープフラグESF
が保持される。エスケープフラグESFに応答して、エ
スケープレジスタ528およびデータレジスタ529に
おいて保持されたデータのうちの1つがセレクタ530
を介して選択的に出力される。出力されたデータは、図
40に示したデータメモリ508に与えられる。
As in the case of the variable length coding processing, the variable length decoding table memory 482 is provided with the escape flag E.
I remember the SF. Therefore, the table memory 48
2 is completed, the data register 52
Escape flag ESF in the 9 most significant bits (MSB)
Is retained. In response to the escape flag ESF, one of the data held in the escape register 528 and the data register 529 has the selector 530.
Is selectively output via. The output data is given to the data memory 508 shown in FIG.

【0388】一方、符号長データは第2の内部バス51
0を介して可変長符号列生成/分解回路505に転送さ
れる。可変長符号列生成/分解回路505は、与えられ
た符号長データを用いて、次の可変長符号の切出し処理
を行なう。データメモリ508に与えられた復号結果を
示すデータは、外部インターフェイス回路507を介し
て被符号化データ出力メモリ486に出力される。これ
により、可変長復号化処理が終了される。
On the other hand, the code length data is stored in the second internal bus 51.
It is transferred to the variable length code string generation / decomposition circuit 505 via 0. The variable-length code string generation / decomposition circuit 505 uses the supplied code-length data to perform the cutting process of the next variable-length code. The data indicating the decoding result provided to the data memory 508 is output to the encoded data output memory 486 via the external interface circuit 507. This ends the variable length decoding process.

【0389】以下の記載では、図41に示したアドレス
生成回路502のより詳細な動作が説明される。
In the following description, more detailed operation of address generation circuit 502 shown in FIG. 41 will be described.

【0390】図52は、可変長符号化処理における被符
号化データのデータフォーマット図である。図52を参
照して、被符号化データは、10ビットを有するレベル
データLVと、6ビットを有するランデータRNとを含
む。したがって、被符号化データは合計16ビットのビ
ット長を有する。
FIG. 52 is a data format diagram of encoded data in the variable length encoding process. With reference to FIG. 52, the encoded data includes level data LV having 10 bits and run data RN having 6 bits. Therefore, the encoded data has a total bit length of 16 bits.

【0391】一方、図50に示した可変長符号テーブル
の左側の4つの欄を参照すると、レベルデータLV(こ
のデータはH.261勧告において絶対値データとして
規定されている)は、−15ないし+15の範囲の値を
有する。この範囲を超えるデータは、H.261勧告に
おいてエスケープコード(ESCAPE)により表現さ
れることになっている。このことは、レベルデータLV
を表現するために必要なビット数が5ビットであること
を意味しており、ランデータRNと合わせて合計11ビ
ットによりランデータおよびレベルデータの組合せを表
現できる。
On the other hand, referring to the four columns on the left side of the variable length code table shown in FIG. 50, the level data LV (this data is defined as absolute value data in the H.261 recommendation) is -15 or It has a value in the range of +15. Data that exceeds this range is H.264. It is supposed to be expressed by an escape code (ESCAPE) in the H.261 recommendation. This means that the level data LV
It means that the number of bits required to express is 5 bits, and a combination of run data and level data can be expressed by a total of 11 bits including run data RN.

【0392】+15以上および−15以下のレベルデー
タLVについては、それぞれ+16および−16にリミ
ット処理されるので、レベルデータ+16および−16
を含むアドレスがエスケープコードを示すことになる。
この処理を行なうことにより、可変長符号化用テーブル
メモリのアクセスのためのアドレスは合計11ビット幅
で足りることになり、2kワードのアドレス空間の範囲
内で可変長符号化用テーブルメモリを構成することがで
きる。
Level data LV of +15 or more and -15 or less are subjected to limit processing to +16 and -16, respectively, and therefore level data +16 and -16.
The address containing "" indicates the escape code.
By performing this processing, the address for accessing the variable-length coding table memory is sufficient for a total of 11 bits, and the variable-length coding table memory is configured within the address space of 2k words. be able to.

【0393】このように、アドレス生成器502は、ア
ドレス生成を1つのパスで実行できる。したがって、図
41に示したリミッタ531は、アドレスレジスタ52
5内に保持されたデータのうち、レベルデータLVの1
0ビットに対して+16ないし−16の範囲に制限する
ためのリミット処理を行なう。したがって、図41に示
した正リミット値レジスタ520には正の値+16が設
定されており、一方、負リミット値レジスタ521には
負の値−16が設定されている。リミッタ531は、こ
れらのレジスタ520および521に保持されたデータ
を参照することにより上記のリミット処理を行なう。
As described above, the address generator 502 can execute address generation in one pass. Therefore, the limiter 531 shown in FIG.
Of the data held in 5, the level data LV 1
Limit processing for limiting the range of +16 to -16 to 0 bit is performed. Therefore, the positive limit value register 520 shown in FIG. 41 is set to the positive value +16, while the negative limit value register 521 is set to the negative value -16. The limiter 531 performs the above limit processing by referring to the data held in these registers 520 and 521.

【0394】レベルデータに対するリミット処理の結
果、合計11ビットの組合せデータが得られ、このデー
タを用いて可変長符号化用テーブルメモリ481を参照
するためのアドレスが生成される。
As a result of the limit process on the level data, a total of 11-bit combination data is obtained, and an address for referring to the variable length coding table memory 481 is generated using this data.

【0395】次に、図41に示したアドレス生成回路5
02における復号化動作について説明する。
Next, the address generation circuit 5 shown in FIG.
The decoding operation in 02 will be described.

【0396】図50の可変長符号テーブルに示されるよ
うに、可変長符号VCは合計9つのグループGR0ない
しGR8に分けられている。各グループにおいて、それ
ぞれの可変長符号を規定するためには6ビットが必要と
なる。したがって、可変長符号のための復号テーブルを
構成するために、合計9つのグループを指定するための
4ビットと、各グループ内の符号を指定するための6ビ
ットとが必要となる。すなわち、可変長符号の復号のた
めのテーブルのアドレスとして、合計10ビットが必要
となる。図41に示したアドレス生成回路502は、1
0ビットのテーブルアドレスを1つのパスで生成するこ
とができる。
As shown in the variable length code table of FIG. 50, the variable length codes VC are divided into nine groups GR0 to GR8 in total. In each group, 6 bits are required to define each variable length code. Therefore, in order to configure the decoding table for the variable length code, 4 bits for designating a total of 9 groups and 6 bits for designating the code in each group are required. That is, a total of 10 bits are required as the address of the table for decoding the variable length code. The address generation circuit 502 shown in FIG.
A 0-bit table address can be generated in one pass.

【0397】すなわち、復号対象の可変長符号がアドレ
スレジスタ524に与えられそこで保持される。アドレ
スレジスタ524により保持されたデータはプライオリ
ティエンコーダ532に与えられ、与えられたデータの
最初のビットから連続する“0”の数がカウントされ
る。これにより、図50に示したグループGR0ないし
GR8のいずれにデータが含まれているかが判定され、
グループ番号が4ビットのデータにより表現される。ま
た一方、連続する“0”の後のデータの6ビットの切出
し処理が行なわれる。4ビットのグループ番号データお
よび6ビットの切出されたデータは、合計10ビットの
テーブルアドレスを構成し、このテーブルアドレスが外
部アドレスレジスタ534に与えられそこで保持され
る。
That is, the variable length code to be decoded is given to the address register 524 and held there. The data held by the address register 524 is given to the priority encoder 532, and the number of consecutive “0” from the first bit of the given data is counted. As a result, it is determined which of the groups GR0 to GR8 shown in FIG. 50 contains the data,
The group number is represented by 4-bit data. On the other hand, a 6-bit clipping process of the data after the continuous "0" is performed. The 4-bit group number data and the 6-bit cut-out data form a table address of 10 bits in total, and this table address is given to the external address register 534 and held there.

【0398】このように、図41に示したアドレス生成
器502を用いることにより、可変長符号化用テーブル
メモリ481,可変長復号化用テーブルメモリ482の
それぞれのアドレス空間を短縮することができ、しかも
これらの処理は一連の処理でなされ得る。
As described above, by using the address generator 502 shown in FIG. 41, the address space of each of the variable length coding table memory 481 and the variable length decoding table memory 482 can be shortened, Moreover, these processes can be performed by a series of processes.

【0399】次に、図44に示した可変長符号列生成/
分解回路505における符号化動作について説明する。
コード出力レジスタ540は、各々が8ビットを有する
パラレルシフトレジスタ40aないし40eを含む。初
期状態では、コード出力レジスタ540,コード長レジ
スタ539およびFIFO回路542がいずれもデータ
“0”の保持している。40ビット(40b)を有する
バレルシフタ537は、コード長レジスタ539におい
て保持されたコード長に従って、入力データを右側にシ
フトさせる。
Next, the variable length code string generation /
The encoding operation in the decomposition circuit 505 will be described.
Code output register 540 includes parallel shift registers 40a-40e each having 8 bits. In the initial state, the code output register 540, the code length register 539, and the FIFO circuit 542 all hold data “0”. The barrel shifter 537 having 40 bits (40b) shifts the input data to the right according to the code length held in the code length register 539.

【0400】たとえば、符号化された最初の可変長符号
として“001010”がバスレジスタ536に与えら
れ、一方、符号長“6”が5ビットの加算器538に与
えられる。この段階においてコード長レジスタ539の
値が“0”であるのでバスレジスタ536のデータはバ
レルシフタ537をそのまま通過し、コード長レジスタ
539に与えられる。加算器538において、入力デー
タ“6”とコード長レジスタ539のデータ“0”の加
算が行なわれ、その結果データ“6”がコード長レジス
タ539に書込まれる。
For example, "001010" is given to the bus register 536 as the first encoded variable length code, while the code length "6" is given to the 5-bit adder 538. At this stage, since the value of the code length register 539 is "0", the data of the bus register 536 passes through the barrel shifter 537 as it is and is given to the code length register 539. In the adder 538, the input data “6” and the data “0” of the code length register 539 are added, and the result data “6” is written in the code length register 539.

【0401】次に、符号化された次の可変長符号とし
て、たとえばデータ“00001000”がバスレジス
タ536に与えられ、一方、符号長“8”が加算器53
8に与えられる。コード長レジスタ539のデータは
“6”であるので、バスレジスタ536のデータは、バ
レルシフタ537により6ビットだけ右側にシフトさ
れ、シフトされたデータがコード長レジスタ539に与
えられる。したがって、コード長レジスタ539内に保
持されたデータは、最初の6ビットにおいて最初の可変
長符号を含み、7ビット目以降に次の可変長符号を含む
ことになる。加算器538は、入力データ“8”をコー
ド長レジスタ539内のデータ“6”と加算し、加算結
果“14”をコード長レジスタ539に与える。
Next, as the coded next variable length code, for example, data "00001000" is applied to the bus register 536, while code length "8" is added by the adder 53.
Given to 8. Since the data of the code length register 539 is "6", the data of the bus register 536 is shifted to the right by 6 bits by the barrel shifter 537, and the shifted data is given to the code length register 539. Therefore, the data held in the code length register 539 includes the first variable length code in the first 6 bits and the next variable length code in the 7th bit and thereafter. The adder 538 adds the input data “8” with the data “6” in the code length register 539, and gives the addition result “14” to the code length register 539.

【0402】この段階で、コード出力レジスタ540内
のレジスタ40aが可変長符号“00101000”で
満たされているので、レジスタ40a内のデータがFI
FO回路542に与えられる。その後、レジスタ40b
内のデータがレジスタ40aに転送される。さらに、レ
ジスタ40c内のデータがレジスタ40bに転送され
る。同様の処理を繰返し、最後のレジスタ40eのデー
タがレジスタ40dに転送される。これらの転送処理の
後、コード長レジスタ539のデータから、FIFO回
路542に与えられたデータの符号長である“8”を減
算する。すなわち、この例では、レジスタ539がデー
タ“14”を保持しているので、減算結果は“6”(=
14−8)となる。
At this stage, since the register 40a in the code output register 540 is filled with the variable length code "00101000", the data in the register 40a is FI.
It is given to the FO circuit 542. Then register 40b
The data inside is transferred to the register 40a. Further, the data in the register 40c is transferred to the register 40b. The same process is repeated, and the last data in the register 40e is transferred to the register 40d. After these transfer processes, "8" which is the code length of the data given to the FIFO circuit 542 is subtracted from the data of the code length register 539. That is, in this example, since the register 539 holds the data “14”, the subtraction result is “6” (=
14-8).

【0403】その結果、コード長レジスタ539内のデ
ータは、レジスタ40aに格納されている可変長符号
“001000”のビット数を示していることとなり、
次の可変長符号が入力されたとき、入力された可変長符
号がレジスタ40a内に格納されている可変長符号のビ
ット数だけ右側にシフトされる。したがって、既に格納
されている可変長符号に続き次の可変長符号がコード出
力レジスタ40に格納されることになる。このようにし
て、可変長符号およびその符号長を用いて、可変長符号
列をソフトウェアによる判断処理を必要とすることなく
生成することができる。
As a result, the data in the code length register 539 indicates the number of bits of the variable length code "001000" stored in the register 40a.
When the next variable length code is input, the input variable length code is shifted to the right by the number of bits of the variable length code stored in the register 40a. Therefore, the next variable length code is stored in the code output register 40 following the variable length code already stored. In this way, the variable-length code and the code length thereof can be used to generate a variable-length code string without requiring a determination process by software.

【0404】次に、可変長符号列生成/分解回路におけ
る復号化動作について説明する。コード出力レジスタ5
40と同様に、コード入力レジスタ541は、各々が8
ビットを有するパラレルシフトレジスタ41aないし4
1eを含む。初期状態において、コード入力レジスタ5
41およびコード長レジスタ539はいずれもデータ
“0”を保持している。40ビットを有するバレルシフ
タ537は、コード長レジスタ539において保持され
た値だけ入力データを左側にシフトさせる。
Next, the decoding operation in the variable length code string generation / decomposition circuit will be described. Code output register 5
Similar to 40, each of the code input registers 541 has eight
Parallel shift registers 41a-4 having bits
Including 1e. In the initial state, the code input register 5
41 and the code length register 539 both hold data “0”. The barrel shifter 537 having 40 bits shifts the input data to the left by the value held in the code length register 539.

【0405】まず、最初の可変長符号列がFIFO回路
543を介して、レジスタ41aないし41eに順に入
力される。
First, the first variable length code string is sequentially input to the registers 41a to 41e via the FIFO circuit 543.

【0406】可変長符号が切出されるとき、コード入力
レジスタ541内のデータがバレルシフタ537を介し
てバスレジスタ536に与えられる。この段階で、コー
ド長レジスタ539内のデータは“0”であるので、コ
ード入力レジスタ541内のデータがそのままバレルシ
フタ537を通過し、バスレジスタ536に与えられ
る。バスレジスタ536内のデータを復号することによ
り、その符号長としてデータ“6”が得られ、この符号
長データは加算器538に与えられる。加算器538
は、入力データ“6”をコード長レジスタ539内のデ
ータ“0”に加算し、その結果を示すデータ“6”がコ
ード長レジスタ539に与えられそこで保持される。
When the variable length code is cut out, the data in the code input register 541 is supplied to the bus register 536 via the barrel shifter 537. At this stage, since the data in the code length register 539 is "0", the data in the code input register 541 directly passes through the barrel shifter 537 and is given to the bus register 536. By decoding the data in the bus register 536, data "6" is obtained as its code length, and this code length data is given to the adder 538. Adder 538
Adds the input data "6" to the data "0" in the code length register 539, and the data "6" indicating the result is given to the code length register 539 and held there.

【0407】次の可変長符号が切出されるとき、コード
入力レジスタ541内のデータがバレルシフタ537を
介してバスレジスタ536に与えられる。コード長レジ
スタ539内のデータは、“6”であるので、コード入
力レジスタ541内のデータがバレルシフタ537によ
り6ビットだけ左側にシフトされ、シフトされたデータ
がバスレジスタ536に与えられる。すなわち、既に復
号された可変長符号に続く次の可変長符号が、左側にシ
フトされた状態で得られる。バスレジスタ536内のデ
ータの復号の結果、その符号長としてデータ“8”が得
られ、この符号長データが加算器538に入力される。
When the next variable length code is cut out, the data in the code input register 541 is supplied to the bus register 536 via the barrel shifter 537. Since the data in the code length register 539 is "6", the data in the code input register 541 is shifted to the left by 6 bits by the barrel shifter 537, and the shifted data is given to the bus register 536. That is, the next variable-length code following the already-decoded variable-length code is obtained in the state of being shifted to the left. As a result of decoding the data in the bus register 536, data “8” is obtained as its code length, and this code length data is input to the adder 538.

【0408】加算器538は、入力データ“8”をコー
ド長レジスタ539内のデータ“6”と加算し、その結
果を示すデータ“14”をコード長レジスタ539に与
える。この段階で、レジスタ41aの内容がすべて復号
されたこととなるので、レジスタ40b内のデータがレ
ジスタ40aに転送される。次に、レジスタ40c内の
データがレジスタ40bに転送される。同様の処理を繰
返し、最後に、レジスタ40e内のデータがレジスタ4
0dに転送される。空のレジスタ40eに対して、FI
FO回路543から次の可変長符号列が与えられる。
The adder 538 adds the input data "8" with the data "6" in the code length register 539, and supplies the data "14" indicating the result to the code length register 539. At this stage, all the contents of the register 41a have been decoded, so the data in the register 40b is transferred to the register 40a. Next, the data in the register 40c is transferred to the register 40b. The same processing is repeated, and finally, the data in the register 40e is stored in the register 4
0d. FI to empty register 40e
The FO circuit 543 provides the next variable length code string.

【0409】コード長レジスタ539内のデータは、8
ビットの復号処理が完了しているので、“6”を保持し
ている。したがって、次の可変長符号の切出し処理が行
なわれると、既に復号された可変長符号に続く次の可変
長符号が左側にシフトされた状態で得られる。
The data in the code length register 539 is 8
Since the bit decoding process has been completed, "6" is held. Therefore, when the cutting process of the next variable length code is performed, the next variable length code following the already decoded variable length code is obtained in a state of being shifted to the left.

【0410】このように、復号された可変長符号の符号
長を用いることにより、可変長符号列から次の復号対象
となる可変長符号を左側にシフトされた状態で切出す処
理が、ソフトウェアによる判断処理を必要とすることな
しに行なわれ得る。
As described above, by using the code length of the decoded variable-length code, the processing for cutting out the variable-length code to be decoded next from the variable-length code string in the state shifted to the left side is performed by software. It can be done without requiring a decision process.

【0411】次に、図47に示した外部インターフェイ
ス回路506における可変長符号化動作について説明す
る。
Next, the variable length coding operation in external interface circuit 506 shown in FIG. 47 will be described.

【0412】図47を参照して、DMA機能を有する制
御器545は、外部インターフェイス回路506におけ
る内部回路を制御する。カウンタ548および549
は、信号線494を介して、ホストインターフェイス回
路1から可変長符号列入力メモリ483および可変長符
号列出力メモリ484へのアクセス(リードおよびライ
ト)のストローブ信号を受ける。したがって、カウンタ
548は、ホストコンピュータによる可変長符号列入力
メモリ483へのライトアクセス回数をカウントする。
一方、カウンタ549は、ホストコンピュータによる可
変長符号列出力メモリ484へのリードアクセス回数を
カウントする。同様に、カウンタ546は、外部インタ
ーフェイス回路506から可変長符号列入力メモリ48
3へのリードアクセス回数をカウントする。カウンタ5
47は、外部インターフェイス回路506から可変長符
号列出力メモリ484へのライトアクセス回数をカウン
トする。
Referring to FIG. 47, controller 545 having a DMA function controls an internal circuit in external interface circuit 506. Counters 548 and 549
Receives a strobe signal for access (read and write) from the host interface circuit 1 to the variable length code string input memory 483 and the variable length code string output memory 484 via the signal line 494. Therefore, the counter 548 counts the number of write accesses to the variable length code string input memory 483 by the host computer.
On the other hand, the counter 549 counts the number of read accesses to the variable length code string output memory 484 by the host computer. Similarly, the counter 546 controls the variable length code string input memory 48 from the external interface circuit 506.
The number of read accesses to 3 is counted. Counter 5
47 counts the number of write accesses from the external interface circuit 506 to the variable length code string output memory 484.

【0413】カウンタ546および548の出力データ
は、減算器565に与えられ、減算処理が行なわれる。
減算結果を示すデータは、可変長符号列入力メモリ48
3にストアされているデータのワード数を示すことにな
る。減算器565の出力データは比較器550に与えら
れる。
The output data of counters 546 and 548 is applied to subtractor 565 and subjected to the subtraction processing.
The data indicating the subtraction result is the variable length code string input memory 48.
3 indicates the number of words of data stored. The output data of the subtractor 565 is given to the comparator 550.

【0414】比較器550は、レジスタ551から、可
変長符号列入力メモリ483のフル状態におけるワード
数データを受ける。一方、比較器550は、レジスタ5
52から、可変長符号列入力メモリ483のエンプティ
状態を示すワード数データを受ける。比較器550は、
減算器565からの出力データをこれらのレジスタ55
1および552からのデータと比較し、フラグFF1お
よびEF1を出力する。
The comparator 550 receives the word number data in the full state of the variable length code string input memory 483 from the register 551. On the other hand, the comparator 550 is the register 5
From 52, the word number data indicating the empty state of the variable length code string input memory 483 is received. The comparator 550 is
The output data from the subtractor 565 is stored in these registers 55.
1 and 552, and outputs flags FF1 and EF1.

【0415】減算器565の出力データ、すなわち差分
データが、レジスタ551内に保持されているフル状態
を示すワード数と等しいとき、比較器550はフルフラ
グFF1を出力する。一方、減算器565の出力データ
がレジスタ552内に保持されているエンプティ状態を
示すワード数と等しいとき、比較器550はエンプティ
フラグEF1を出力する。
When the output data of the subtracter 565, that is, the difference data is equal to the number of words indicating the full state held in the register 551, the comparator 550 outputs the full flag FF1. On the other hand, when the output data of the subtractor 565 is equal to the number of words indicating the empty state held in the register 552, the comparator 550 outputs the empty flag EF1.

【0416】同様に、図39に示した可変長符号列出力
メモリ484についても、入力メモリ483と同様の処
理が行なわれ、フルフラグFF2またはエンプティフラ
グEF2が比較器558から出力される。
Similarly, the variable-length code string output memory 484 shown in FIG. 39 is also subjected to the same processing as the input memory 483, and the full flag FF2 or empty flag EF2 is output from the comparator 558.

【0417】制御器545は、図44に示したFIFO
回路542からのフラグ出力信号42bおよびFIFO
回路543からのフラグ出力信号43bと比較器550
および558からのフラグFF1,EF1,FF2およ
びEF2を用いて、FIFO回路542および543,
可変長符号列出力メモリ484および可変長符号列入力
メモリ483の間のデータ転送制御を行なう。このデー
タ転送制御は次のように行なわれる。
The controller 545 is the FIFO shown in FIG.
Flag output signal 42b from circuit 542 and FIFO
Flag output signal 43b from circuit 543 and comparator 550
And flags FF1, EF1, FF2, and EF2 from 558, and FIFO circuits 542 and 543, respectively.
Data transfer control between the variable length code string output memory 484 and the variable length code string input memory 483 is performed. This data transfer control is performed as follows.

【0418】可変長符号化処理が行なわれるとき、FI
FO回路542と可変長符号列出力メモリ484との間
でデータ転送が行なわれる。このとき、可変長符号列生
成/分解回路505において、FIFO回路542がア
ンダフロー状態にならないように、すなわちデータの記
憶なしにリード動作が引き起こされないように、データ
転送制御が行なわれる。これに加えて、可変長符号列出
力メモリ484がオーバフローしないように、すなわち
有効なデータが記憶されているのにさらに可変長符号列
出力メモリ484にライト動作が引き起こされないよう
にデータ転送制御が行なわれる。
When variable length coding processing is performed, FI
Data transfer is performed between the FO circuit 542 and the variable length code string output memory 484. At this time, in the variable length code string generation / decomposition circuit 505, data transfer control is performed so that the FIFO circuit 542 does not enter the underflow state, that is, the read operation is not caused without storing data. In addition to this, the data transfer control is performed so that the variable length code stream output memory 484 does not overflow, that is, the write operation is not triggered in the variable length code stream output memory 484 even though valid data is stored. Done.

【0419】可変長復号化処理においては、FIFO回
路543と可変長符号列入力メモリ483との間でのデ
ータ転送が行なわれる。このときは、FIFO回路54
3がオーバフローしないように、かつ可変長符号列出力
メモリ484がアンダフローしないようにデータ転送制
御が行なわれる。
In the variable length decoding process, data transfer is performed between the FIFO circuit 543 and the variable length code string input memory 483. At this time, the FIFO circuit 54
Data transfer control is performed so that 3 does not overflow and the variable length code string output memory 484 does not underflow.

【0420】5.フレームバッファメモリ (1) システム構成(図53,図54) 図53は、フレームバッファメモリにおけるメモリセル
アレイの基本構成図である。たとえば図1に示したフレ
ームバッファメモリ51は、図53に示した構成を備え
ている。
5. Frame Buffer Memory (1) System Configuration (FIGS. 53 and 54) FIG. 53 is a basic configuration diagram of a memory cell array in the frame buffer memory. For example, the frame buffer memory 51 shown in FIG. 1 has the configuration shown in FIG.

【0421】図53を参照して、フレームバッファメモ
リ54(または55)は、合計32プレーンのメモリセ
ルアレイ701ないし732(または801ないし83
2)を備えている。1つの行アドレスRAおよび1つの
列アドレスCAが与えられたとき、各メモリセルアレイ
701ないし732から1ビットのデータが読出される
(または書込まれる)。たとえば、行アドレスRA1お
よび列アドレスCA1が与えられたとき、メモリセルア
レイ701ないし732から合計32ビットのデータが
読出される。
Referring to FIG. 53, the frame buffer memory 54 (or 55) is a memory cell array 701 to 732 (or 801 to 83) of 32 planes in total.
2) is provided. When one row address RA and one column address CA are applied, 1-bit data is read (or written) from each of memory cell arrays 701 to 732. For example, when row address RA1 and column address CA1 are applied, a total of 32 bits of data are read from memory cell arrays 701 to 732.

【0422】一般に、1つの画素を示すのに8ビットの
データが必要とされる。したがって、合計32ビットの
データにより、4つの画素PC1ないしPC4を示すこ
とができる(図53参照)。言い換えると、1つの行ア
ドレスRAおよび1つの列アドレスCAを与えることに
より、4つの画素PC1ないしPC4のためのデータを
扱うことができる。
Generally, 8-bit data is required to represent one pixel. Therefore, four pixels PC1 to PC4 can be indicated by a total of 32 bits of data (see FIG. 53). In other words, by supplying one row address RA and one column address CA, the data for the four pixels PC1 to PC4 can be handled.

【0423】図54は、フレームバッファメモリのブロ
ック図である。図54を参照して、フレームバッファメ
モリ54(または55)は、制御回路741と、メモリ
セルアレイ701ないし732(または801ないし8
32)を含む。各メモリセルアレイ701ないし732
は、SDRAMの場合には2つのバンクBK1およびB
K2に分けられている。各メモリセルアレイ701ない
し732に対応して、センスアンプ742および入出力
バッファ743が設けられる。したがって、メモリセル
アレイ701ないし732に対して32ビットのデータ
PD1ないしPD32が読出または書込される。
FIG. 54 is a block diagram of the frame buffer memory. 54, the frame buffer memory 54 (or 55) includes a control circuit 741 and memory cell arrays 701 to 732 (or 801 to 8).
32) is included. Each memory cell array 701 to 732
Are two banks BK1 and B in the case of SDRAM.
It is divided into K2. A sense amplifier 742 and an input / output buffer 743 are provided corresponding to each of the memory cell arrays 701 to 732. Therefore, 32-bit data PD1 to PD32 are read or written in the memory cell arrays 701 to 732.

【0424】制御回路741は、アドレス信号ADRお
よび制御信号Scを受け、メモリセルアレイ701ない
し732をアクセスするための制御信号を発生する。
Control circuit 741 receives address signal ADR and control signal Sc and generates a control signal for accessing memory cell arrays 701 to 732.

【0425】(2) DRAMを用いた例(第1の例:
図55) 図55は、DRAMを用いたフレームバッファメモリ5
4のシステム構成図である。図55を参照して、フレー
ムバッファメモリ54は、合計32のプレーンからなる
DRAMメモリセルアレイ701ないし732を備え
る。フレームバッファメモリ54は、アドレスバスAB
を介して、DRAMコントローラ740からアドレス信
号ADRを受ける。フレームバッファメモリ54は、ピ
クセルデータバスPBに接続され、ピクセルデータバス
PBを介してデータの入出力が行なわれる。
(2) Example using DRAM (first example:
55) FIG. 55 shows a frame buffer memory 5 using a DRAM.
4 is a system configuration diagram of FIG. Referring to FIG. 55, the frame buffer memory 54 includes DRAM memory cell arrays 701 to 732 composed of a total of 32 planes. The frame buffer memory 54 uses the address bus AB
The address signal ADR is received from the DRAM controller 740 via. The frame buffer memory 54 is connected to the pixel data bus PB, and data is input / output through the pixel data bus PB.

【0426】DRAMコントローラ740は、たとえば
図1に示した画像圧縮/伸張処理装置におけるコントロ
ールユニット2内に設けられる。すなわち、DRAMコ
ントローラ740は、図9に示した全体制御プロセッサ
11内に設けられる。
The DRAM controller 740 is provided in the control unit 2 in the image compression / expansion processing apparatus shown in FIG. 1, for example. That is, the DRAM controller 740 is provided in the overall control processor 11 shown in FIG.

【0427】図56は、図55に示したフレームバッフ
ァメモリ54内にストアされたデータと画面内の画素と
の間の関係を示す画素レイアウト図である。前述のよう
に、1つの行アドレスRAおよび列アドレスCAをフレ
ームバッファメモリ54に与えることにより、4つの画
素を表わすための32ビットのデータをアクセスするこ
とができる。図55に示したシステム構成では、図56
に示すように、1つの行アドレスおよび1つの列アドレ
スにより画面SCN上の水平方向に4つの画素(たとえ
ばPC0−PC3)を表わすことができる。
FIG. 56 is a pixel layout diagram showing the relationship between the data stored in the frame buffer memory 54 shown in FIG. 55 and the pixels in the screen. As described above, by applying one row address RA and one column address CA to frame buffer memory 54, 32-bit data for representing four pixels can be accessed. In the system configuration shown in FIG. 55, FIG.
As shown in, one row address and one column address can represent four pixels (for example, PC0 to PC3) in the horizontal direction on the screen SCN.

【0428】図58は、図55に示したDRAMコント
ローラ740によるアドレッシング信号を説明するため
の画素レイアウト図である。図58を参照して、フレー
ムバッファメモリ54の列アドレスにより、画面SCN
の水平方向の画素が指定される。一方、行アドレス信号
により、画面SCN上の垂直方向の画素が指定される。
図58において、○は1つの画素を示している。
FIG. 58 is a pixel layout diagram for explaining an addressing signal by DRAM controller 740 shown in FIG. Referring to FIG. 58, the screen SCN is determined by the column address of frame buffer memory 54.
Pixels in the horizontal direction are designated. On the other hand, the pixel in the vertical direction on the screen SCN is designated by the row address signal.
In FIG. 58, ◯ indicates one pixel.

【0429】図55に示した全体制御プロセッサ11
は、ストアされたマイクロプログラムに従って、行アド
レス信号RAおよび列アドレス信号CAを生成する。行
および列アドレス信号RAおよびCAは、アドレス信号
ADRとしてアドレスバスABに与えられる。アドレス
信号ADRは、アドレスバスABを介してフレームバッ
ファメモリ54に与えられる。これと同時に、DRAM
コントローラ740は、フレームバッファメモリ54を
制御するための制御信号を出力する。全体制御プロセッ
サ11は、データ書込においてストアされるべきデータ
をピクセルデータバスPBを介してフレームバッファメ
モリ54に与える。全体制御プロセッサ11は、データ
読出動作においてフレームバッファメモリ54内にスト
アされていたデータをピクセルデータバスPBを介して
受ける。
Overall control processor 11 shown in FIG.
Generates a row address signal RA and a column address signal CA according to the stored microprogram. Row and column address signals RA and CA are applied to address bus AB as address signal ADR. The address signal ADR is given to the frame buffer memory 54 via the address bus AB. At the same time, DRAM
The controller 740 outputs a control signal for controlling the frame buffer memory 54. The overall control processor 11 supplies the data to be stored in the data writing to the frame buffer memory 54 via the pixel data bus PB. The overall control processor 11 receives the data stored in the frame buffer memory 54 in the data read operation via the pixel data bus PB.

【0430】図59は、図55に示したDRAMコント
ローラ740の制御の下でのフレームバッファメモリ5
4の読出動作を示すタイムチャートである。図59を参
照して、行アドレス信号RA1が与えられた後、ロウア
ドレスストローブ信号/RASが立下がる。最初の列ア
ドレス信号CA1が与えられた後、カラムアドレススト
ローブ信号/CASが立下がる。読出動作においては、
高レベルの書込イネーブル信号/WEが与えられる。し
たがって、アドレス信号RA1およびCA1によって指
定されたメモリセル(図示せず)から、ストアされてい
たデータPD1が読出される。データPD1が読出され
た後、信号/CASが立上がる。
FIG. 59 shows the frame buffer memory 5 under the control of the DRAM controller 740 shown in FIG.
4 is a time chart showing the read operation of No. 4 in FIG. Referring to FIG. 59, row address strobe signal / RAS falls after row address signal RA1 is applied. After the first column address signal CA1 is applied, the column address strobe signal / CAS falls. In the read operation,
A high level write enable signal / WE is applied. Therefore, stored data PD1 is read from the memory cell (not shown) designated by address signals RA1 and CA1. After data PD1 is read, signal / CAS rises.

【0431】次の列アドレス信号CA2が与えられた
後、信号/CASが再び立下がる。これにより、アドレ
ス信号RA1およびCA2によって指定されたメモリセ
ルから、データPD2が読出される。同様の動作を繰返
すことにより、行アドレス信号RA1によって指定され
た1つの行から、列アドレス信号CA1,CA2,…に
よって指定されたデータPD1,PD2,…が順次出力
される。
After the next column address signal CA2 is applied, the signal / CAS falls again. As a result, data PD2 is read from the memory cell designated by address signals RA1 and CA2. By repeating the same operation, data PD1, PD2, ... Specified by column address signals CA1, CA2, ... Are sequentially output from one row designated by row address signal RA1.

【0432】図58に示すように、マクロブロック75
0は、画面SCNにおいて、水平方向に8個および垂直
方向に8個の合計64個(=8×8)の画素により構成
される。したがって、マクロブロック750内の画素デ
ータは、行アドレス信号RA1ないしRA8および列ア
ドレス信号CA4,CA5により指定され得る。
As shown in FIG. 58, the macro block 75
In the screen SCN, 0 is composed of a total of 64 (= 8 × 8) pixels, eight in the horizontal direction and eight in the vertical direction. Therefore, the pixel data in the macro block 750 can be designated by the row address signals RA1 to RA8 and the column address signals CA4, CA5.

【0433】したがって、図55に示した全体制御プロ
セッサ11は、ストアされたプログラムに従って、行ア
ドレス信号および列アドレス信号を次のように発生す
る。
Therefore, overall control processor 11 shown in FIG. 55 generates a row address signal and a column address signal according to the stored program as follows.

【0434】まず、行アドレス信号RA1を出力した
後、列アドレス信号CA4およびCA5を出力する。こ
れにより、マクロブロック750内の最初の1行分の画
素データがアクセス(たとえば読出)され得る。次に、
行アドレス信号RA2が与えられた後、列アドレス信号
CA4およびCA5が順次与えられる。これにより、マ
クロブロック750内の第2番目の行についてデータが
アクセスされる。同様の動作が、マクロブロック750
内の第8番目の行まで行なわれる。
First, row address signal RA1 is output, and then column address signals CA4 and CA5 are output. Thereby, the pixel data for the first row in the macroblock 750 can be accessed (for example, read). next,
After row address signal RA2 is applied, column address signals CA4 and CA5 are applied sequentially. This causes the data to be accessed for the second row in macroblock 750. Similar operations are performed in macroblock 750.
Up to the 8th row in.

【0435】したがって、マクロブロック750内のす
べての画素についてフレームバッファメモリ54に対し
てアクセスするためには、合計8回の行アドレスRA1
ないしRA8の供与と合計16回の列アドレスCAの供
与とが必要となる。
Therefore, in order to access the frame buffer memory 54 with respect to all the pixels in the macro block 750, the row address RA1 is necessary 8 times in total.
Through RA8 and a total of 16 column addresses CA must be provided.

【0436】たとえば、ある場合において、行アドレス
RAの供与に90nsが必要とされ、列アドレスCAの
2回の供与およびデータ転送に120nsが必要とされ
る。この場合では、1つのマクロブロックを指定するの
に1680ns(=(90+120)×8)が必要とな
る。
For example, in some cases, 90 ns are required to supply the row address RA, and 120 ns are required to supply the column address CA twice and transfer the data. In this case, 1680 ns (= (90 + 120) × 8) is required to specify one macroblock.

【0437】一方、動き予測ユニットにおいて動きベク
トルが検出されるとき、図58に示されるようなマクロ
ブロック751が必要となる。すなわち、マクロブロッ
ク751に含まれる画素データは、行アドレスRA11
ないしRA18および列アドレスCA1ないしCA3に
より指定される。領域752および753内に含まれる
画素データは必要でないが、マクロブロック751内の
画素についてのデータをアクセスするのにアクセスされ
た後捨てられる。
On the other hand, when the motion vector is detected in the motion prediction unit, the macro block 751 as shown in FIG. 58 is required. That is, the pixel data included in the macro block 751 is the row address RA11.
To RA18 and column addresses CA1 to CA3. The pixel data contained in regions 752 and 753 is not needed but is accessed and then discarded to access the data for the pixels in macroblock 751.

【0438】したがって、マクロブロック751内の画
素データをアクセスするのに、合計8回の行アドレスR
Aの供与および合計24回の列アドレスCAの供与が必
要となる。その結果、たとえば合計2160nsの時間
がアクセスのために必要となる。
Therefore, in order to access the pixel data in the macro block 751, a total of eight row addresses R
It is necessary to provide A and the column address CA a total of 24 times. As a result, for example, a total of 2160 ns is required for access.

【0439】(3) SDRAMを用いた例(第2,第
3および第4の例) 以下の記載では、フレームバッファメモリとしてシンク
ロナスDRAM(以下「SDRAM」という)を用いた
3つの例(第2,第3および第4の例)について説明す
る。
(3) Examples Using SDRAM (Second, Third, and Fourth Examples) In the following description, three examples using the synchronous DRAM (hereinafter referred to as "SDRAM") as the frame buffer memory (first Second, third and fourth examples) will be described.

【0440】図60は、SDRAMを用いたフレームバ
ッファメモリ55のシステム構成図である。図60を参
照して、フレームバッファメモリ55は、合計32のプ
レーンに分かれたメモリセルアレイ801ないし832
を備えたSDRAMにより構成される。全体制御プロセ
ッサ11は、フレームバッファメモリ55をアクセスす
るためのアドレス信号ADRを生成するアドレス生成器
840を備える。アドレス生成器840は、アドレス信
号ADRとして行アドレス信号RAおよび列アドレス信
号CAをアドレスバスABを介してフレームバッファメ
モリ55に与える。アクセスされるべきデータは、ピク
セルデータバスPBを介してフレームバッファメモリ5
5に与えられる。全体制御プロセッサ11は、アドレス
信号ADRを発生するためのシステムクロック信号φs
cをアドレス生成器840に与える。
FIG. 60 is a system configuration diagram of the frame buffer memory 55 using SDRAM. Referring to FIG. 60, the frame buffer memory 55 includes memory cell arrays 801 to 832 divided into 32 planes in total.
It is composed of an SDRAM having The overall control processor 11 includes an address generator 840 that generates an address signal ADR for accessing the frame buffer memory 55. The address generator 840 supplies the row address signal RA and the column address signal CA as the address signal ADR to the frame buffer memory 55 via the address bus AB. The data to be accessed is the frame buffer memory 5 via the pixel data bus PB.
Given to 5. The overall control processor 11 uses the system clock signal φs for generating the address signal ADR.
c is provided to the address generator 840.

【0441】動作において、全体制御プロセッサ11
は、ストアされたプログラムに従って、アドレス生成器
840を起動する。アドレス生成器840は、システム
クロック信号φscに応答して、フレームバッファメモ
リ55内のSDRAMをアクセスするためのアドレス信
号ADRを出力する。アドレス生成器840は、以下に
記載する3つの態様(第2,第3および第4の例)で行
アドレス信号RAおよび列アドレス信号CAを生成す
る。
In operation, the overall control processor 11
Activates the address generator 840 according to the stored program. The address generator 840 outputs an address signal ADR for accessing the SDRAM in the frame buffer memory 55 in response to the system clock signal φsc. The address generator 840 generates the row address signal RA and the column address signal CA in the three modes (second, third and fourth examples) described below.

【0442】図61は、SDRAMの基本的な動作(こ
の例では読出動作)を説明するためのタイムチャートで
ある。図61を参照して、SDRAMは、全体制御プロ
セッサ11から与えられるシステムクロック信号φsc
に応答して動作される。信号/RASの立下がりに応答
して行アドレス信号RA1が取込まれた後、信号/CA
Sの立下がりに応答して列アドレス信号CA1が取込ま
れる。アドレス生成器840は、システムクロック信号
φscに応答して、列アドレス信号CA1からスタート
する列アドレス信号CA1ないしCA8を順次出力す
る。これらのアドレス信号は、アドレスバスABを介し
てフレームバッファメモリ55に与えられる。
FIG. 61 is a time chart for explaining the basic operation (read operation in this example) of the SDRAM. Referring to FIG. 61, SDRAM has a system clock signal φsc provided from overall control processor 11.
Be operated in response to. After the row address signal RA1 is fetched in response to the fall of the signal / RAS, the signal / CA
Column address signal CA1 is taken in response to the fall of S. Address generator 840 sequentially outputs column address signals CA1 to CA8 starting from column address signal CA1 in response to system clock signal φsc. These address signals are given to the frame buffer memory 55 via the address bus AB.

【0443】したがって、データ読出動作において、S
DRAM内のメモリセルアレイから、ストアされていた
データPD1ないしPD8が読出される。すなわち、図
61に示した例では、列アドレス信号CA1からスター
トされる8つの列アドレス信号が発生されるので、行ア
ドレス信号RA1によって指定された行から、8つのデ
ータPD1ないしPD8が読出される。
Therefore, in the data read operation, S
The stored data PD1 to PD8 are read from the memory cell array in the DRAM. That is, in the example shown in FIG. 61, eight column address signals starting from the column address signal CA1 are generated, so that eight data PD1 to PD8 are read from the row designated by the row address signal RA1. .

【0444】(i) 第2の例(図62,図63) 図62は、図60に示したアドレス生成器840による
アドレッシング(第2の例)を説明するための画素レイ
アウト図である。図62に示されるように、画面SCN
内の水平方向の画素は列アドレス信号CAにより指定さ
れ、一方、垂直方向の画素は行アドレス信号RAにより
指定される。
(I) Second Example (FIGS. 62 and 63) FIG. 62 is a pixel layout diagram for explaining addressing (second example) by the address generator 840 shown in FIG. As shown in FIG. 62, the screen SCN
The pixels in the horizontal direction are designated by the column address signal CA, while the pixels in the vertical direction are designated by the row address signal RA.

【0445】この例においても、1つの行アドレス信号
RAおよび1つの列アドレス信号CAにより、図60に
示したフレームバッファメモリ55から合計32ビット
のデータが読出される。したがって、32ビットのデー
タにより4つの画素を表現することができる。これに加
えて、図62に示した第2の例では、図57に示すよう
に、32ビットのデータにより垂直方向の4つの画素
(たとえばPC0−PC3)を表現することができる。
Also in this example, one row address signal RA and one column address signal CA read a total of 32 bits of data from frame buffer memory 55 shown in FIG. Therefore, four pixels can be expressed by 32-bit data. In addition to this, in the second example shown in FIG. 62, as shown in FIG. 57, four pixels (for example, PC0 to PC3) in the vertical direction can be expressed by 32-bit data.

【0446】たとえば、マクロブロック860は、水平
方向に8個かつ垂直方向に8個、合計64個の画素を含
んでいる。一例として、読出動作におけるマクロブロッ
ク860内の画素データのアドレッシングは次のように
行なわれる。
For example, macroblock 860 includes a total of 64 pixels, eight in the horizontal direction and eight in the vertical direction. As an example, addressing of pixel data in the macro block 860 in the read operation is performed as follows.

【0447】まず、行アドレスRA4が与えられた後、
列アドレスCA1が与えられる。図60に示したアドレ
ス生成器840は、システムクロック信号φscに応答
して、列アドレスCA1からスタートする列アドレスC
A1ないしCA8を順次に生成する。したがって、行ア
ドレスRA4によって指定される1つの行から、列アド
レスCA1ないしCA8によって指定された前半のデー
タが順次読出される。
First, after the row address RA4 is given,
Column address CA1 is applied. The address generator 840 shown in FIG. 60 responds to the system clock signal φsc to the column address C that starts from the column address CA1.
A1 to CA8 are sequentially generated. Therefore, the first half data designated by column addresses CA1 to CA8 are sequentially read from one row designated by row address RA4.

【0448】次に、行アドレスRA5が与えられた後、
列アドレスCA1が与えられる。アドレス生成器840
は、システムクロック信号φscに応答して、列アドレ
スCA1ないしCA8を順次に出力する。したがって、
マクロブロック860内の後半のすべての画素が読出さ
れ得る。
Next, after the row address RA5 is given,
Column address CA1 is applied. Address generator 840
Sequentially outputs column addresses CA1 to CA8 in response to system clock signal φsc. Therefore,
All pixels in the latter half of macroblock 860 can be read.

【0449】図63は、図60に示したアドレス生成器
840の動作を説明するためのタイムチャートである。
図62に示した態様でのアドレッシングを実現するた
め、図60に示したアドレス生成器840は図63に示
されるように動作する。
FIG. 63 is a time chart for explaining the operation of address generator 840 shown in FIG.
To realize the addressing in the mode shown in FIG. 62, the address generator 840 shown in FIG. 60 operates as shown in FIG. 63.

【0450】図63を参照して、信号/RASの立下が
りに応答して行アドレス信号RA4が取込まれた後、信
号/CASの立下がりに応答して列アドレス信号CA1
が取込まれる。アドレス生成器840(図示せず)は、
取込まれた列アドレス信号CA1からスタートする列ア
ドレス信号CA1ないしCA8(図示せず)を順次に出
力する。これらのアドレス信号RA4およびCA1ない
しCA8は、図60に示したアドレスバスABを介して
フレームバッファメモリ55に与えられる。その結果、
読出動作において、フレームバッファメモリ55から、
ストアされていたデータPD1,PD2,…が順次に出
力される。
Referring to FIG. 63, row address signal RA4 is taken in response to the fall of signal / RAS, and column address signal CA1 is received in response to the fall of signal / CAS.
Is taken in. The address generator 840 (not shown)
Column address signals CA1 to CA8 (not shown) starting from the fetched column address signal CA1 are sequentially output. These address signals RA4 and CA1 to CA8 are applied to frame buffer memory 55 via address bus AB shown in FIG. as a result,
In the read operation, from the frame buffer memory 55,
The stored data PD1, PD2, ... Are sequentially output.

【0451】前述のように、フレームバッファメモリ5
5は合計32のプレーンを備えているので、各メモリセ
ルアレイ801ないし832から1ビットのデータが読
出される。したがって、図63に示した1つのデータP
D1は32ビットのデータに相当する。したがって、1
つのデータPD1により、図62に示した画面SCNに
おける垂直方向に4個の画素が表現され得ることが指摘
される。
As described above, the frame buffer memory 5
Since 5 has a total of 32 planes, 1-bit data is read from each of the memory cell arrays 801 to 832. Therefore, one data P shown in FIG.
D1 corresponds to 32-bit data. Therefore, 1
It is pointed out that one data PD1 can represent four pixels in the vertical direction in the screen SCN shown in FIG.

【0452】次に、信号/RASの立下がりに応答して
行アドレス信号RA5が取込まれ、信号/CASの立下
がりに応答して列アドレス信号CA1が取込まれる。ア
ドレス生成器840は、列アドレス信号CA1からスタ
ートするアドレス信号CA1ないしCA8(図示せず)
を順次に出力する。したがって、マクロブロック860
内の後半の画素を表現するためのデータPD11ないし
PD18が順次に読出される。
Then, row address signal RA5 is taken in response to the fall of signal / RAS, and column address signal CA1 is taken in response to the fall of signal / CAS. The address generator 840 has address signals CA1 to CA8 (not shown) starting from the column address signal CA1.
Are sequentially output. Therefore, macroblock 860
Data PD11 to PD18 for expressing the latter half of the pixels are sequentially read out.

【0453】このように、1つのマクロブロック860
内の画素について、行アドレス信号を2回(すなわちR
A4およびRA5)、列アドレス信号も2回(CA1を
2回)で足りるので、アドレッシングに要する時間が図
58に示した例と比較して、短縮され得る。
In this way, one macroblock 860
Row address signal twice (that is, R
A4 and RA5), and the column address signal only needs to be performed twice (CA1 twice), the time required for addressing can be shortened as compared with the example shown in FIG.

【0454】たとえば、1回の行アドレスの供与に25
nsが必要とされ、1回の列アドレスCAの供与および
データ転送に200nsが必要となる場合では、合計4
50nsの時間でアドレスがなされ得ることになる。
For example, 25 is provided for one row address.
In the case where ns is required and 200 ns is required to supply the column address CA and transfer data once, a total of 4 is required.
Addresses can be made in 50 ns.

【0455】図62に示した別の画素領域862は、動
き予測ユニットにおいて扱われる画素領域を示してい
る。領域862内の画素についてのデータを読出すため
に、行アドレス信号RA1が与えられた後、列アドレス
信号CA11が与えられる。したがって、行アドレスR
A1によって指定された行から、画素領域862内の最
初の3分の1の画素についてのデータが順次読出され
る。画素領域862内の他の画素領域についても、行ア
ドレス信号RA2およびRA3を順次に与えることによ
り、短時間で読出動作が行なわれ得る。
Another pixel area 862 shown in FIG. 62 shows a pixel area handled in the motion prediction unit. In order to read data for pixels in region 862, column address signal CA11 is applied after row address signal RA1 is applied. Therefore, the row address R
Data for the first one-third pixel in the pixel region 862 is sequentially read from the row designated by A1. For the other pixel regions in pixel region 862 as well, the read operation can be performed in a short time by sequentially applying row address signals RA2 and RA3.

【0456】(ii) 第3の例(図64) 図64は、図60に示したアドレス生成器840の動作
の別の例を示すタイムチャートである。図64を参照し
て、この例では、行アドレス信号RA1および列アドレ
ス信号CA1が取込まれた後、システムクロック信号φ
scに応答して列アドレス信号CA2(図示せず)がア
ドレス生成器840により発生される。したがって、2
つの列アドレス信号CA1およびCA2がフレームバッ
ファメモリ55に与えられることになる。その結果、行
アドレスRA1によって指定された行から、列アドレス
CA1によって指定された32ビットのデータPD1
と、列アドレスCA2によって指定された32ビットの
データPD2とが読出される。
(Ii) Third Example (FIG. 64) FIG. 64 is a time chart showing another example of the operation of the address generator 840 shown in FIG. Referring to FIG. 64, in this example, system clock signal φ is obtained after row address signal RA1 and column address signal CA1 are taken in.
A column address signal CA2 (not shown) is generated by the address generator 840 in response to sc. Therefore, 2
One column address signal CA1 and CA2 is applied to the frame buffer memory 55. As a result, the 32-bit data PD1 designated by the column address CA1 from the row designated by the row address RA1.
And the 32-bit data PD2 designated by the column address CA2 are read.

【0457】各データPD1およびPD2は、32ビッ
トのデータを含んでいるので、画面SCNにおいて、水
平方向の8つの画素が表現され得る。
Since each of the data PD1 and PD2 includes 32-bit data, eight pixels in the horizontal direction can be represented on the screen SCN.

【0458】(iii) 第4の例(図65) 図65は、図60に示したアドレス生成器840による
アドレッシングの別の例を説明するための画素レイアウ
ト図である。図65を参照して、画面SCN内の水平方
向の画素についてのデータが行アドレス信号により指定
され、一方、垂直方向の画素についてのデータが列アド
レス信号により指定される。
(Iii) Fourth Example (FIG. 65) FIG. 65 is a pixel layout diagram for explaining another example of addressing by the address generator 840 shown in FIG. Referring to FIG. 65, data on pixels in the horizontal direction in the screen SCN is designated by a row address signal, while data on pixels in the vertical direction is designated by a column address signal.

【0459】たとえば、マクロブロック863について
の画素データを指定するのに、行アドレス信号RA4が
与えられた後、列アドレス信号CA1が与えられる。ア
ドレス生成器840は、列アドレス信号CA1からスタ
ートする列アドレスCA1ないしCA8を生成する。そ
の結果、マクロブロック863内の左側半分の画素につ
いてのデータが読出される。
For example, to specify pixel data for macroblock 863, column address signal CA1 is applied after row address signal RA4 is applied. The address generator 840 generates column addresses CA1 to CA8 starting from the column address signal CA1. As a result, the data for the left half pixel in the macroblock 863 is read.

【0460】次に、行アドレス信号RA5が与えられた
後、列アドレス信号CA1が与えられる。アドレス生成
器840は、列アドレス信号CA1ないしCA8を発生
する。したがって、マクロブロック863内の右側の半
分の画素についてのデータが読出される。
Next, after the row address signal RA5 is applied, the column address signal CA1 is applied. The address generator 840 generates column address signals CA1 to CA8. Therefore, the data for the right half pixel in the macroblock 863 is read.

【0461】動き予測ユニットにおける処理において
も、画素領域865内の画素について類似のアドレッシ
ングがなされる。
In the processing in the motion prediction unit, similar addressing is performed on the pixels in the pixel area 865.

【0462】このように、上記の第2,第3および第4
の例に示すように、SDRAMを用いたフレームバッフ
ァメモリ55を適用することにより、アドレッシングに
要する時間が短縮されることになる。
As described above, the above-mentioned second, third and fourth
By applying the frame buffer memory 55 using the SDRAM, as shown in the above example, the time required for addressing can be shortened.

【0463】(4) アドレス生成器(図66) 図66は、図60に示したアドレス生成器840のブロ
ック図である。図66を参照して、アドレス生成器84
0は、垂直初期アドレスレジスタ841と、フレームサ
イズレジスタ842と、ページサイズレジスタ843
と、水平初期アドレスレジスタ844と、水平サイズレ
ジスタ845と、レジスタ846および847と、水平
カウンタ848と、インクリメンタ849と、右端検出
回路850と、出力制御回路851と、セレクタ852
および853と、加算器854と、セレクタ855とを
含む。
(4) Address Generator (FIG. 66) FIG. 66 is a block diagram of the address generator 840 shown in FIG. Referring to FIG. 66, address generator 84
0 is a vertical initial address register 841, a frame size register 842, and a page size register 843.
A horizontal initial address register 844, a horizontal size register 845, registers 846 and 847, a horizontal counter 848, an incrementer 849, a right end detection circuit 850, an output control circuit 851, and a selector 852.
And 853, an adder 854, and a selector 855.

【0464】レジスタ841ないし845は、それぞれ
の初期データを保持しているものとする。レジスタ84
1内に保持された初期アドレスは、セレクタ852,加
算器854およびセレクタ855を介して行アドレスと
して出力される。一方、この初期アドレスは、セレクタ
852および加算器854を介してレジスタ846およ
び847に与えられそこで保持される。
Registers 841 to 845 are assumed to hold respective initial data. Register 84
The initial address held in 1 is output as a row address via the selector 852, the adder 854, and the selector 855. On the other hand, this initial address is given to registers 846 and 847 via selector 852 and adder 854 and held there.

【0465】レジスタ844内に保持された水平初期ア
ドレスは、インクリメンタ849を介してビット幅制御
のための出力制御回路851に与えられる。出力制御回
路851は、列アドレスを出力し、列アドレスはセレク
タ855を介して出力される。
The horizontal initial address held in the register 844 is given to the output control circuit 851 for controlling the bit width via the incrementer 849. The output control circuit 851 outputs the column address, and the column address is output via the selector 855.

【0466】インクリメンタ859は、システムクロッ
ク信号φscの8サイクルごとに、水平初期アドレスレ
ジスタ844から与えられる水平アドレスをインクリメ
ントする。水平アドレスがページサイズが越えたとき、
インクリメンタ849は行アドレスをインクリメントす
る。
The incrementer 859 increments the horizontal address given from the horizontal initial address register 844 every eight cycles of the system clock signal φsc. When the horizontal address exceeds the page size,
The incrementer 849 increments the row address.

【0467】レジスタ847のデータおよびデータ
“1”が加算器854に与えられ、加算結果が行アドレ
スとして出力される一方、加算結果はレジスタ847に
も与えられる。
The data of register 847 and the data "1" are applied to adder 854, and the addition result is output as a row address, while the addition result is also applied to register 847.

【0468】右端検出回路850により転送データの右
端が検出されたとき、レジスタ846内に保持されたデ
ータおよびフレームサイズデータが、セレクタ852お
よび853を介して加算器854に与えられる。加算結
果を示すデータは、セレクタ855を介して行アドレス
として出力される一方、レジスタ846および847に
も与えられる。
When the right end of the transfer data is detected by the right end detection circuit 850, the data and frame size data held in the register 846 are supplied to the adder 854 via the selectors 852 and 853. The data indicating the addition result is output as a row address via the selector 855 and is also applied to the registers 846 and 847.

【0469】図67は、図66に示したアドレス生成器
840から出力される行および列アドレスとページとの
間の関係を示すアドレス−ページ対応図である。一方、
図68は、図67に示したページと画面内の画素との間
の関係を示すページ−画素対応図である。図60に示し
たフレームバッファメモリ55は図67に示した態様で
データを記憶する。アドレス生成器840は、フレーム
バッファメモリ55内にストアされたデータを図68に
示した態様で画面に当てはめる。図66に示したアドレ
ス生成器840は、図67および図68に示した態様で
のアドレッシングが行なわれるように、行アドレス信号
RAおよび列アドレス信号CAを発生する。
FIG. 67 is an address-page correspondence diagram showing the relationship between the row and column addresses output from the address generator 840 shown in FIG. 66 and the page. on the other hand,
FIG. 68 is a page-pixel correspondence diagram showing the relationship between the page shown in FIG. 67 and the pixels in the screen. The frame buffer memory 55 shown in FIG. 60 stores data in the form shown in FIG. The address generator 840 applies the data stored in the frame buffer memory 55 to the screen in the manner shown in FIG. Address generator 840 shown in FIG. 66 generates row address signal RA and column address signal CA such that the addressing in the manner shown in FIGS. 67 and 68 is performed.

【0470】(5) マッピング方法 次に、フレームバッファメモリに画面内の各画素データ
をマッピングさせる方法について説明する。以下の各方
法は、たとえば、図1に示すフレームバッファメモリ5
1に適用することができる。
(5) Mapping Method Next, a method of mapping each pixel data in the screen in the frame buffer memory will be described. Each of the following methods is performed by, for example, the frame buffer memory 5 shown in FIG.
1 can be applied.

【0471】まず、データ転送回数を削減することがで
きるマッピング方法について説明する。図72は、フレ
ームバッファメモリに画面内の画素データをマッピング
させる方法を説明する第1の図である。図72では、縦
横ともに2画素のデータ領域861を1単位としてフレ
ームバッファメモリの1アドレスが与えられる。つま
り、行アドレス信号RAおよび列アドレス信号CAによ
り特定される1つのアドレスに対応して、データ領域8
61に含まれる4画素分のデータがフレームバッファメ
モリに格納され、または、そのアドレスを指定すること
によりフレームバッファメモリから読出され、ピクセル
データバスを通じて各ブロックとのデータ転送が行なわ
れる。図72に示すように、たとえば、動きベクトルの
検出処理に使用する水平方向9画素および垂直方向9画
素から構成されるデータ領域862をデータ領域861
を転送単位として転送した場合、5(水平)×5(垂
直)=25回の転送処理によりデータ領域862のすべ
ての画素データを転送することができる。これは、たと
えば、図58に示すように、水平方向4画素から構成さ
れるデータ領域を転送単位とした場合と比較して、転送
回数が2回削減されるとともに、転送する必要がないデ
ータ領域863も削減される。したがって、上記のマッ
ピング方法を用いることにより、転送回数が削減され、
画像データの転送処理を高速に行なうことができる。
First, a mapping method capable of reducing the number of data transfers will be described. FIG. 72 is a first diagram illustrating a method of mapping pixel data in a screen in the frame buffer memory. In FIG. 72, one address of the frame buffer memory is given with the data area 861 of 2 pixels in the vertical and horizontal directions as one unit. That is, the data area 8 corresponds to one address specified by the row address signal RA and the column address signal CA.
Data for four pixels included in 61 is stored in the frame buffer memory or is read from the frame buffer memory by designating its address, and data is transferred to each block through the pixel data bus. As shown in FIG. 72, for example, a data area 862 composed of 9 pixels in the horizontal direction and 9 pixels in the vertical direction, which is used for motion vector detection processing, is replaced with a data area 861.
When 5 is used as a transfer unit, all pixel data in the data area 862 can be transferred by 5 (horizontal) × 5 (vertical) = 25 times of transfer processing. This is because, for example, as shown in FIG. 58, the number of times of transfer is reduced by two and the data area that does not need to be transferred is compared to the case where a data area composed of four horizontal pixels is used as a transfer unit. 863 will also be reduced. Therefore, by using the above mapping method, the number of transfers is reduced,
Image data transfer processing can be performed at high speed.

【0472】次に、上記のマッピング方法を用いて、水
平方向8画素および垂直方向8画素から構成されるデー
タ領域の転送について説明する。図73ないし図76
は、水平方向8画素および垂直方向8画素のデータ領域
の転送処理を説明する第1ないし第4の図である。水平
方向8画素および垂直方向8画素のデータ領域864を
転送する場合、データ領域864の位置により、図73
ないし図76に示す4通りの場合が考えられる。
Next, transfer of a data area composed of 8 pixels in the horizontal direction and 8 pixels in the vertical direction will be described using the above mapping method. 73 to 76
FIGS. 4A to 4C are first to fourth diagrams illustrating a transfer process of a data area of 8 pixels in the horizontal direction and 8 pixels in the vertical direction. FIGS. When transferring a data area 864 of 8 pixels in the horizontal direction and 8 pixels in the vertical direction, depending on the position of the data area 864, FIG.
There are four possible cases shown in FIGS.

【0473】図73に示す場合では、転送単位である水
平および垂直方向ともに2画素のデータ領域を転送単位
としてデータ領域864の各画素データを転送する場
合、4(水平)×4(垂直)=16回の転送回数で転送
することができる。また、図74および図75の場合に
は、20回の転送回数で転送でき、図76の場合には、
25回の転送回数で転送することができる。したがっ
て、データ領域864を転送するために必要な平均転送
回数は、20.25回となる。これは、図58に示す水
平方向4画素の単位で転送を行なった場合と比較して、
約2回の転送回数の削減となる。
In the case shown in FIG. 73, when each pixel data in the data area 864 is transferred with a data area of 2 pixels in both the horizontal and vertical directions as a transfer unit, 4 (horizontal) × 4 (vertical) = The transfer can be performed 16 times. In the case of FIGS. 74 and 75, the transfer can be performed 20 times, and in the case of FIG. 76,
The transfer can be performed 25 times. Therefore, the average number of transfers required to transfer the data area 864 is 20.25. This is compared with the case where transfer is performed in units of 4 pixels in the horizontal direction shown in FIG.
This reduces the number of transfers about 2 times.

【0474】次に、水平方向4画素および垂直方向2画
素から構成されるデータ領域を1つのデータとして1ア
ドレスを与えるマッピング方法について説明する。図7
7は、フレームバッファメモリに画面内の画素データを
マッピングさせる方法を説明する第2の図である。図7
7に示すように、水平方向4画素および垂直方向2画素
から構成されるデータ領域865を1つのデータとして
フレームバッファメモリの1アドレスを与える。このと
き、水平方向9画素および垂直方向9画素から構成され
るデータ領域866をデータ領域865を転送単位とし
て転送する場合、必要な転送回数は、3(水平)×5
(垂直)=15回となる。これは、図58に示すように
水平方向8画素からなるデータ領域を転送単位として転
送する場合に比べて3回転送回数が削減されるととも
に、データ転送を行なう必要がない領域867も削減さ
れる。
Next, a mapping method will be described in which a data area composed of 4 pixels in the horizontal direction and 2 pixels in the vertical direction is given as one data and one address is given. Figure 7
FIG. 7 is a second diagram illustrating a method of mapping pixel data in the screen in the frame buffer memory. Figure 7
As shown in FIG. 7, one address of the frame buffer memory is given with the data area 865 composed of 4 pixels in the horizontal direction and 2 pixels in the vertical direction as one data. At this time, when the data area 866 composed of 9 pixels in the horizontal direction and 9 pixels in the vertical direction is transferred using the data area 865 as a transfer unit, the required transfer count is 3 (horizontal) × 5.
(Vertical) = 15 times. This reduces the number of times of transfer three times as compared with the case of transferring a data area consisting of 8 pixels in the horizontal direction as a transfer unit as shown in FIG. 58, and also reduces the area 867 in which data transfer is not required. .

【0475】次に、フレームバッファメモリに第1およ
び第2色差画像データをマッピングさせる第1の方法に
ついて説明する。図78は、フレームバッファメモリに
第1および第2色差画素データをマッピングさせる第1
の方法を説明する図である。ここで、第1色差画素デー
タとは、たとえば、RGBフォーマットからYUVフォ
ーマットへ変換された色差画素データCbであり、第2
色差画素データとは、たとえば、同様に変換された色差
画素データCrである。図78では、水平方向4画素か
ら構成されるデータ領域868を1つのデータとしてフ
レームバッファメモリの1アドレスを与える。また、第
1色差画素データ873と第2色差画素データ869は
水平方向に4画素ずつ交互にマッピングされている。第
1色差画素データ873と第2色差画素データ869と
は相互に相関を有し、たとえば、動きベクトルの検出処
理等において、第1および第2色差画素データ873、
869を同時に処理する必要があり、データ転送も同時
に行なわれる。したがって、転送領域として、第1色差
画素データ領域872と第2色差画素データ領域870
とを転送する場合、データ領域871の各データを転送
すればよい。この場合第1色差画素データ領域872と
第2色差画素データ領域870とは交互にマッピングさ
れているため、1回アドレス生成を行なうことにより、
データ領域871の各色差画素データを転送することが
でき、アドレス生成の演算に要する時間が削減され、画
像データ処理を高速に行なうことが可能となる。
Next, the first method for mapping the first and second color difference image data in the frame buffer memory will be described. FIG. 78 is a first diagram for mapping the first and second color difference pixel data in the frame buffer memory.
FIG. 6 is a diagram for explaining the method. Here, the first color difference pixel data is, for example, the color difference pixel data Cb converted from the RGB format to the YUV format, and the second color difference pixel data is the second color difference pixel data Cb.
The color difference pixel data is, for example, similarly converted color difference pixel data Cr. In FIG. 78, one address of the frame buffer memory is given with the data area 868 composed of four pixels in the horizontal direction as one data. Further, the first color difference pixel data 873 and the second color difference pixel data 869 are alternately mapped in the horizontal direction by four pixels each. The first color difference pixel data 873 and the second color difference pixel data 869 have a correlation with each other. For example, in the motion vector detection process, the first and second color difference pixel data 873,
It is necessary to process 869 at the same time, and data transfer is performed at the same time. Therefore, the first color difference pixel data area 872 and the second color difference pixel data area 870 are used as the transfer areas.
When transferring and, the respective data in the data area 871 may be transferred. In this case, since the first color difference pixel data area 872 and the second color difference pixel data area 870 are alternately mapped, by performing address generation once,
Each color difference pixel data in the data area 871 can be transferred, the time required for the address generation calculation can be reduced, and the image data processing can be performed at high speed.

【0476】次に、フレームバッファメモリに第1およ
び第2色差画素データをマッピングさせる第2の方法に
ついて説明する。図79は、フレームバッファメモリに
第1および第2色差画素データをマッピングさせる第2
の方法を説明する図である。図79では、水平方向2画
素および垂直方向2画素から構成されるデータ領域87
4を1つのデータとしてマッピングさせている。また、
第1色差画素データ875と第2色差画素データ879
とは水平方向に2画素ずつ交互にマッピングされてい
る。この場合、第1色差画素データ領域878および第
2色差画素データ領域876を転送する場合、データ領
域877の各データをデータ領域874を転送単位とし
て転送する。したがって、1回のアドレス生成で、か
つ、少ないデータ転送回数でデータ転送を行なうことが
できる。
Next, a second method for mapping the first and second color difference pixel data in the frame buffer memory will be described. FIG. 79 shows a second method for mapping the first and second color difference pixel data in the frame buffer memory.
FIG. 6 is a diagram for explaining the method. In FIG. 79, a data area 87 including two horizontal pixels and two vertical pixels.
4 is mapped as one data. Also,
First color difference pixel data 875 and second color difference pixel data 879
And are alternately mapped every two pixels in the horizontal direction. In this case, when the first color difference pixel data area 878 and the second color difference pixel data area 876 are transferred, each data in the data area 877 is transferred using the data area 874 as a transfer unit. Therefore, data can be transferred with one address generation and a small number of data transfers.

【0477】次に、フレームバッファメモリに第1およ
び第2色差画素データをマッピングさせる第3の方法に
ついて説明する。図80は、フレームバッファメモリに
第1および第2色差画素データをマッピングさせる第3
の方法を説明する図である。図80の例では、水平方向
4画素から構成されるデータ領域を1つのデータとして
1つのアドレスが与えられる。また、第1色差画素デー
タと第2色差画素データとは水平方向に2画素ずつ交互
に配置されている。したがって、1アドレスを与えられ
ている水平方向の4画素のデータ領域には、2画素の第
1色差画素データ880と2画素の第2色差画素データ
881とが含まれている。第1色差画素データ領域88
4と第2色差画素データ領域882とを転送する場合、
1回のアドレス生成によりデータ領域883の各データ
を転送すればよい。また、このときの転送回数は、5
(水平)×9(垂直)=45回となる。たとえば、第1
色差画素データと第2色差画素データとを別々にフレー
ムバッファメモリにマッピングし、上記と同様に水平方
向4画素のデータ領域を転送単位として転送した場合、
図80と同様の第1色差画素データおよび第2色差画素
データとを転送するために必要となる回数は54回とな
り、この第3のマッピング方法を用いることにより9回
分転送回数が削減されている。
Next, a third method for mapping the first and second color difference pixel data in the frame buffer memory will be described. FIG. 80 shows a third example of mapping the first and second color difference pixel data in the frame buffer memory.
FIG. 6 is a diagram for explaining the method. In the example of FIG. 80, one address is given with one data area consisting of four pixels in the horizontal direction. In addition, the first color difference pixel data and the second color difference pixel data are alternately arranged every two pixels in the horizontal direction. Therefore, the data area of four pixels in the horizontal direction to which one address is given includes the first color difference pixel data 880 of two pixels and the second color difference pixel data 881 of two pixels. First color difference pixel data area 88
4 and the second color difference pixel data area 882 are transferred,
Each data in the data area 883 may be transferred by generating the address once. The number of transfers at this time is 5
(Horizontal) × 9 (vertical) = 45 times. For example, the first
When the color-difference pixel data and the second color-difference pixel data are separately mapped in the frame buffer memory and the data area of 4 pixels in the horizontal direction is transferred as the transfer unit as described above,
The number of times required to transfer the first color difference pixel data and the second color difference pixel data similar to that in FIG. 80 is 54 times, and the number of times of transfer is reduced by 9 times by using the third mapping method. .

【0478】次に、フレームバッファメモリに第1およ
び第2色差画素データをマッピングさせる第4の方法に
ついて説明する。図81は、フレームバッファメモリに
第1および第2色差画素データをマッピングさせる第4
の方法を説明する図である。図81に示すように、水平
方向4画素および垂直方向2画素から構成されるデータ
領域を1つのデータとして1アドレスを与えてフレーム
バッファメモリにマッピングさせる。また、第1色差画
素データと第2色差画素データとは水平方向に2画素ず
つ交互にマッピングされる。したがって、1つのデータ
としてマッピングされたデータ領域の中には、水平方向
2画素および垂直方向2画素の第1色差画素データ88
5と水平方向2画素および垂直方向2画素の第2色差画
素データ886とが含まる。第1色差画素データ889
と第2色差画素データ887とを転送する場合、データ
領域888の各データを水平方向4画素および垂直方向
2画素のデータ領域を転送単位で転送すればよい。この
とき、第1色差画素データと第2色差画素データとは交
互に配置されているので1回のアドレス生成でデータ転
送を行なうことができ、また、矩形のデータ領域を転送
単位としてデータ転送を行なっているので転送回数が削
減される。
Next, a fourth method for mapping the first and second color difference pixel data in the frame buffer memory will be described. FIG. 81 shows a fourth example of mapping the first and second color difference pixel data in the frame buffer memory.
FIG. 6 is a diagram for explaining the method. As shown in FIG. 81, a data area composed of 4 pixels in the horizontal direction and 2 pixels in the vertical direction is given as one data, and one address is given to be mapped in the frame buffer memory. Further, the first color difference pixel data and the second color difference pixel data are alternately mapped every two pixels in the horizontal direction. Therefore, the first color difference pixel data 88 of 2 pixels in the horizontal direction and 2 pixels in the vertical direction are included in the data area mapped as one data.
5 and second color difference pixel data 886 of 2 pixels in the horizontal direction and 2 pixels in the vertical direction. First color difference pixel data 889
And the second color difference pixel data 887, each data in the data area 888 may be transferred in a transfer unit of a data area of 4 pixels in the horizontal direction and 2 pixels in the vertical direction. At this time, since the first color difference pixel data and the second color difference pixel data are alternately arranged, the data transfer can be performed by one address generation, and the data transfer can be performed using the rectangular data area as a transfer unit. Since this is done, the number of transfers is reduced.

【0479】次に、上記のフレームバッファメモリに第
1および第2色差画素データをマッピングさせる第1な
いし第4の方法を用いた場合の効果について説明する。
一例として、たとえば、両方向予測符号化処理における
図9に示す全体制御プロセッサ11での演算処理を用い
て説明する。図82は、両方向予測符号化時の全体制御
プロセッサの演算処理を示す図である。
Next, the effect of using the first to fourth methods of mapping the first and second color difference pixel data in the frame buffer memory will be described.
As an example, description will be made using, for example, the arithmetic processing in the overall control processor 11 shown in FIG. 9 in the bidirectional predictive coding processing. FIG. 82 is a diagram showing the arithmetic processing of the overall control processor at the time of bidirectional predictive coding.

【0480】図82を参照して、ステップ891におい
て、入力画像ライト処理で第1アドレス生成が行なわれ
る。このアドレス生成は、輝度画素データY、第1色差
画素データCb、第2色差画素データCrについて行な
われる。ここでのデータは、図1に示す画像データ処理
装置では、コントロールユニット2からフレームバッフ
ァメモリ51へ転送される。
Referring to FIG. 82, in step 891, the first address is generated by the input image write process. This address generation is performed for the luminance pixel data Y, the first color difference pixel data Cb, and the second color difference pixel data Cr. The data here is transferred from the control unit 2 to the frame buffer memory 51 in the image data processing device shown in FIG.

【0481】次に、ステップ892において、動き予測
用リード処理において第2アドレス生成が実行される。
この処理は、輝度画素データYについて実行され、フレ
ームバッファメモリ51からコントロールユニット2へ
データが転送される。
Next, at step 892, the second address generation is executed in the motion prediction read processing.
This process is executed for the luminance pixel data Y, and the data is transferred from the frame buffer memory 51 to the control unit 2.

【0482】次に、ステップ893において、動き検索
範囲リード処理において第3アドレス生成が実行され
る。ここでは、輝度画素データYについて処理が実行さ
れ、フレームバッファメモリ51から動き予測ユニット
41へデータが転送される。
Next, at step 893, third address generation is executed in the motion search range read processing. Here, the process is executed on the luminance pixel data Y, and the data is transferred from the frame buffer memory 51 to the motion prediction unit 41.

【0483】次に、ステップ894において、符号化モ
ードの決定処理が行なわれる。次に、ステップ895に
おいて、前方向予測画像リード処理において第4アドレ
ス生成が実行される。ここでは、3種類の画素データ
Y、Cb、Crについて処理が実行され、フレームバッ
ファメモリ51からピクセルプロセシングユニット3へ
データが転送される。
Next, at step 894, a coding mode determination process is performed. Next, in step 895, fourth address generation is executed in the forward prediction image read processing. Here, processing is performed on three types of pixel data Y, Cb, and Cr, and the data is transferred from the frame buffer memory 51 to the pixel processing unit 3.

【0484】次に、ステップ896において、後方向予
測画像リード処理において第5アドレス生成が実行され
る。ここでは、3種類の画素データY、Cb、Crにつ
いて処理が実行され、フレームバッファメモリ51から
ピクセルプロセシングユニット3へデータが転送され
る。
Next, at step 896, fifth address generation is executed in the backward predicted image read processing. Here, processing is performed on three types of pixel data Y, Cb, and Cr, and the data is transferred from the frame buffer memory 51 to the pixel processing unit 3.

【0485】次に、ステップ897において、符号化対
象画像リード処理において第6アドレス生成が実行され
る。ここでは、3種類の画素データY、Cb、Crにつ
いて処理が実行され、フレームバッファメモリ51から
ピクセルプロセシングユニット3へデータが転送され
る。
Next, in step 897, sixth address generation is executed in the encoding target image read processing. Here, processing is performed on three types of pixel data Y, Cb, and Cr, and the data is transferred from the frame buffer memory 51 to the pixel processing unit 3.

【0486】上記の全体制御プロセッサにおける演算回
数について、図78ないし図81に示す第1ないし第4
のマッピング方法を用いた実施例と比較例とを比較した
結果を下表に示す。ここで、比較例とは、3種類の画素
データY、Cb、Crをフレームバッファメモリ51に
別々にマッピングし、各画素データごとにアドレス生成
を実行した場合を示している。また、下表のCは第1色
差画素データCbと第2色差画素データCrをまとめて
示したものである。
Regarding the number of calculations in the above-mentioned overall control processor, the first to fourth values shown in FIGS.
The following table shows the results of comparison between the examples and the comparative examples using the above mapping method. Here, the comparative example shows a case where three types of pixel data Y, Cb, and Cr are separately mapped in the frame buffer memory 51, and an address is generated for each pixel data. Further, C in the table below collectively shows the first color difference pixel data Cb and the second color difference pixel data Cr.

【0487】[0487]

【表1】 [Table 1]

【0488】上表から、実施例では、アドレス生成の回
数が4回削減されていることがわかる。つまり、比較例
のアドレス生成処理では、3種類の画素データY、C
b、Crそれぞれについて演算を行ない、図9に示す画
像データ転送制御ユニット15をレジストに各データを
セットする必要があった。一方、上記の実施例では、第
1色差画素データCbと第2色差画素データCrとをま
とめてアドレス生成しているので、計4回の演算および
レジスタセットの処理時間を削減することができる。ま
た、全体制御プロセッサでは、符号量制御、符号化に伴
なう各種判定、その他ユーザ独自の演算処理等の各処理
を行なう必要があるため、このような演算を行ない、演
算回数が増加した場合には、実時間内での符号化処理を
実行する上で上記のアドレス演算の削減が特に有効とな
る。
From the above table, it can be seen that the number of address generations is reduced by 4 in the embodiment. That is, in the address generation process of the comparative example, three types of pixel data Y and C are used.
It was necessary to perform calculations for each of b and Cr and set each data in the image data transfer control unit 15 shown in FIG. 9 as a resist. On the other hand, in the above-described embodiment, since the addresses of the first color difference pixel data Cb and the second color difference pixel data Cr are collectively generated, it is possible to reduce the calculation time of four times in total and the processing time of the register set. In addition, since the overall control processor needs to perform various processes such as code amount control, various determinations associated with encoding, and other user-specific arithmetic processing, if such arithmetic operations are performed and the number of operations increases. In particular, the reduction of the above address calculation is particularly effective in executing the encoding process in real time.

【0489】[0489]

【発明の効果】以上のように、請求項1の発明によれ
ば、離散コサイン変換処理および量子化処理を実行する
画素プロセッサおよび可変長符号化処理を実行する可変
長符号化プロセッサを設け、これらの処理をパイプライ
ン制御するためのパイプライン制御プロセッサを設けた
ので、画像データの圧縮処理を高速に行なうことのでき
る画像データ処理装置が得られた。
As described above, according to the first aspect of the present invention, the pixel processor for executing the discrete cosine transform processing and the quantization processing and the variable length coding processor for executing the variable length coding processing are provided. Since the pipeline control processor for pipeline controlling the processing of (1) is provided, the image data processing device capable of performing the compression processing of the image data at high speed is obtained.

【0490】また、請求項2の発明によれば、可変長復
号化処理を実行する可変長復号化プロセッサおよび逆量
子化処理および逆離散コサイン変換処理を実行する画素
プロセッサを設け、これらの処理をパイプライン制御す
るパイプライン制御プロセッサを設けたので、画像デー
タの伸張処理を高速に行なうことのできる画像データ処
理装置が得られた。
Further, according to the invention of claim 2, a variable length decoding processor for executing the variable length decoding process and a pixel processor for executing the inverse quantization process and the inverse discrete cosine transform process are provided, and these processes are performed. Since the pipeline control processor for controlling the pipeline is provided, the image data processing device capable of performing the expansion processing of the image data at high speed is obtained.

【0491】さらに、請求項3の発明によれば、画素プ
ロセッサ,可変長プロセッサ,第1および第2のデータ
バスについてのパイプライン処理を制御するパイプライ
ン制御プロセッサを設けたので、画像データの圧縮およ
び伸張処理を高速に行なうことのできる画像データ処理
装置が得られた。
Furthermore, according to the third aspect of the present invention, the pixel processor, the variable length processor, and the pipeline control processor for controlling the pipeline processing for the first and second data buses are provided. And an image data processing device capable of performing decompression processing at high speed is obtained.

【0492】さらに、請求項4の発明によれば、第1な
いし第4の記憶手段にそれぞれアクセスする第1ないし
第4のアクセス手段を設け、第1ないし第4のアクセス
手段に対しアクセス動作の開始を個々に制御するアクセ
ス制御手段を設けたので、画像データの変換処理を高速
に行なうことのできる画像データ処理装置が得られた。
Further, according to the invention of claim 4, there are provided first to fourth access means for respectively accessing the first to fourth storage means, and the access operation to the first to fourth access means is performed. Since the access control means for individually controlling the start is provided, the image data processing device capable of performing the conversion processing of the image data at high speed is obtained.

【0493】さらに、請求項5の発明によれば、画像デ
ータ圧縮および/または画像データ伸張のための複数の
予め定められた処理についてのパイプライン処理を制御
する制御プロセッサを設けたので、画像データ処理を高
速に行なうことのできる画像データ処理装置が得られ
た。
Further, according to the invention of claim 5, since the control processor for controlling the pipeline processing for a plurality of predetermined processes for image data compression and / or image data expansion is provided, the image data An image data processing device capable of high-speed processing has been obtained.

【0494】さらに、請求項6の発明によれば、画像デ
ータ圧縮および/または画像データ伸張のための離散コ
サイン変換処理,量子化処理および可変長データ処理に
ついてのパイプライン処理を制御するパイプライン処理
制御プロセッサを設けたので、画像データ処理を高速に
行なうことのできる画像データ処理装置が得られた。
Furthermore, according to the invention of claim 6, pipeline processing for controlling pipeline processing for discrete cosine transform processing for image data compression and / or image data expansion, quantization processing and variable length data processing. Since the control processor is provided, the image data processing device capable of performing the image data processing at high speed is obtained.

【0495】さらに、請求項7の発明によれば、画像デ
ータ圧縮および/または画像データ伸張のための予め定
められた処理および画像データ転送についての並列動作
を制御する制御プロセッサを設け、また、予め定められ
た処理および画像データ転送の実行を個々に命令する複
数の実行命令手段を設けたので、画像データ処理を高速
に行なうことのできる画像データ処理装置が得られた。
Further, according to the invention of claim 7, there is provided a control processor for controlling a predetermined process for image data compression and / or image data decompression and a parallel operation for image data transfer. Since the plurality of execution instruction means for individually instructing the execution of the predetermined processing and the image data transfer are provided, the image data processing device capable of performing the image data processing at high speed is obtained.

【0496】さらに、請求項8の発明によれば、読出手
段から出力される等長符号処理フラグに応答して、可変
長符号および等長符号の一方を選択する選択手段を設け
たので、判断処理が簡単化され、画像データの圧縮処理
を高速に行なうことのできる画像データ処理装置が得ら
れた。
Further, according to the invention of claim 8, the selecting means for selecting one of the variable length code and the equal length code in response to the equal length code processing flag outputted from the reading means is provided. An image data processing device is obtained which can simplify the processing and can perform the compression processing of the image data at high speed.

【0497】さらに、請求項9の発明によれば、読出手
段から出力される等長処理フラグに応答して、ランデー
タおよびレベルデータならびに復号データの一方を選択
する選択手段を設けたので、判断処理が簡単化され、画
像データの圧縮処理を高速に行なうことのできる画像デ
ータ処理装置が得られた。
Further, according to the invention of claim 9, since the selecting means for selecting one of the run data, the level data and the decoded data is provided in response to the equal length processing flag outputted from the reading means, the judgment is made. An image data processing device is obtained which can simplify the processing and can perform the compression processing of the image data at high speed.

【0498】さらに、請求項10の発明によれば、画面
において垂直方向に置かれた複数の画素を規定するため
のn個の画素データを指定するための列アドレス信号を
シリアルに出力するアドレス信号発生手段を設けたの
で、画面内の所望の領域についての画素データが短時間
でアクセスされ、したがって画像データ処理を高速に行
なうことのできる画像データ処理装置が得られた。
Further, according to the invention of claim 10, an address signal for serially outputting a column address signal for designating n pixel data for defining a plurality of pixels vertically arranged on the screen. Since the generating means is provided, the pixel data for a desired area in the screen can be accessed in a short time, and thus an image data processing device capable of performing image data processing at high speed can be obtained.

【0499】さらに、請求項11の発明によれば、画面
において水平方向に置かれた複数の画素を規定するため
のn個の画素データを指定するための列アドレス信号を
シリアルに出力するアドレス信号発生手段を設けたの
で、画面内の所望の領域についての画素データが短時間
でアクセスされ、画像データ処理を高速に行なうことの
できる画像データ処理装置が得られた。
Further, according to the invention of claim 11, an address signal for serially outputting a column address signal for designating n pixel data for defining a plurality of pixels placed in the horizontal direction on the screen. Since the generating means is provided, the pixel data of a desired area within the screen can be accessed in a short time, and an image data processing device capable of performing image data processing at high speed can be obtained.

【0500】さらに、請求項12の発明によれば、画面
を形成する画素を規定する複数のマクロブロックデータ
がパイプライン処理の下で符号化されるので、画像デー
タの伸張処理を高速に行なうことのできる画像データ処
理方法が得られた。
Further, according to the twelfth aspect of the invention, since a plurality of macroblock data defining pixels forming a screen are encoded under the pipeline processing, the image data decompression processing can be performed at high speed. An image data processing method capable of performing is obtained.

【0501】さらに、請求項13の発明によれば、画面
を形成する画素を規定する複数の可変長符号を含む可変
長符号列がパイプライン処理の下で復号化されるので、
画像データの伸張処理が高速に行なうことのできる画像
データ処理方法が得られた。
Further, according to the thirteenth aspect of the invention, since the variable length code string including the plurality of variable length codes defining the pixels forming the screen is decoded under the pipeline processing,
An image data processing method capable of performing the expansion processing of image data at high speed has been obtained.

【0502】さらに、請求項14の発明によれば、画素
データの転送回数を削減することができるので、画像デ
ータ処理を高速に行なうことのできる画像データ処理装
置が得られた。
Furthermore, according to the fourteenth aspect of the present invention, since the number of times of transfer of pixel data can be reduced, an image data processing device capable of performing image data processing at high speed can be obtained.

【0503】さらに、請求項15の発明によれば、1回
のアドレス生成により所定範囲の第1および第2色差画
素データを転送することができるので、画像データ処理
を高速に行なうことのできる画像データ処理装置が得ら
れた。
Further, according to the fifteenth aspect of the present invention, since the first and second color difference pixel data within a predetermined range can be transferred by one-time address generation, the image data processing can be performed at high speed. A data processor is obtained.

【0504】さらに、請求項16の発明によれば、1回
のアドレス生成により所定範囲の第1および第2色差画
素データを転送することができるので、画像データ処理
を高速に行なうことのできる画像データ処理装置が得ら
れた。
Further, according to the sixteenth aspect of the present invention, the first and second color difference pixel data in the predetermined range can be transferred by one time of address generation, so that the image data processing can be performed at high speed. A data processor is obtained.

【0505】さらに、請求項17ないし請求項22の発
明によれば、データ転送量を効率よく分割し、効率よく
転送することが可能となり、1つのバスで転送するデー
タ量が削減され、実質的にデータ転送速度が向上し、画
像データ処理を高速に行なうことができる画像データ処
理装置が得られた。
Furthermore, according to the seventeenth to twenty-second aspects of the present invention, the data transfer amount can be efficiently divided and efficiently transferred, and the data amount transferred by one bus can be reduced. Further, the data transfer speed is improved, and the image data processing device capable of performing the image data processing at high speed is obtained.

【0506】さらに、請求項23の発明によれば、画像
データ圧縮および/または画像データ伸長のための予め
定められた処理および画像データ転送についての並列動
作を制御する制御プロセッサを設け、予め定められた処
理および画像データ転送の実行を個々に命令する複数の
実行命令手段を設け、さらに、制御プロセッサと複数の
実行命令手段との間の第1データバスおよび複数の実行
命令手段との間の第2データバスを設けたので、画像デ
ータ処理が並列に行なわれ、画像データ処理を高速に行
なうことのできる画像データ処理装置が得られた。
Furthermore, according to the twenty-third aspect of the present invention, a control processor for controlling a predetermined process for image data compression and / or image data decompression and a parallel operation for image data transfer is provided and predetermined. A plurality of execution instruction means for individually instructing execution of the processing and image data transfer, and further, a first data bus between the control processor and the plurality of execution instruction means and a first data bus between the plurality of execution instruction means. Since the two data buses are provided, the image data processing is performed in parallel, and the image data processing device capable of performing the image data processing at high speed is obtained.

【0507】さらに、請求項24ないし請求項25の発
明によれば、画素データ専用に設けられた少なくとも2
つのインタフェース手段により、データを同時に複数の
外部装置へ転送することができるので、並列にデータ転
送を行なうことができ、画像データ処理を高速に行なう
ことのできる画像データ処理装置が得られた。
Further, according to the inventions of claims 24 to 25, at least 2 pixels dedicated to pixel data are provided.
Since the data can be transferred to a plurality of external devices at the same time by one interface means, the image data processing device capable of performing the data transfer in parallel and performing the image data processing at high speed was obtained.

【図面の簡単な説明】[Brief description of drawings]

【図1】この発明の第1実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 1 is a block diagram of an image compression / expansion processing device according to a first embodiment of the present invention.

【図2】図1に示した画像圧縮/伸張処理装置における
画像圧縮処理を示す処理ダイヤグラムである。
FIG. 2 is a processing diagram showing image compression processing in the image compression / expansion processing apparatus shown in FIG.

【図3】図1に示した画像圧縮/伸張処理装置における
画像伸張処理を示す処理ダイヤグラムである。
FIG. 3 is a processing diagram showing image expansion processing in the image compression / expansion processing apparatus shown in FIG.

【図4】この発明の第2実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 4 is a block diagram of an image compression / expansion processing apparatus showing a second embodiment of the present invention.

【図5】この発明の第3実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 5 is a block diagram of an image compression / expansion processing apparatus showing a third embodiment of the present invention.

【図6】この発明の第4実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 6 is a block diagram of an image compression / expansion processing apparatus showing a fourth embodiment of the present invention.

【図7】この発明の第5実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 7 is a block diagram of an image compression / expansion processing apparatus showing a fifth embodiment of the present invention.

【図8】この発明の第6実施例を示す画像圧縮/伸張処
理装置のブロック図である。
FIG. 8 is a block diagram of an image compression / expansion processing apparatus showing a sixth embodiment of the present invention.

【図9】コントロールユニットの一例を示すブロック図
である。
FIG. 9 is a block diagram showing an example of a control unit.

【図10】コントロールユニットの別の例を示すブロッ
ク図である。
FIG. 10 is a block diagram showing another example of the control unit.

【図11】図9に示した全体制御プロセッサの制御の下
で行なわれるパイプライン処理を示すタイムチャートで
ある。
FIG. 11 is a time chart showing pipeline processing performed under the control of the overall control processor shown in FIG. 9.

【図12】図11に示した1つの期間T10における並
列動作を示す並列動作図である。
FIG. 12 is a parallel operation diagram showing parallel operation in one period T10 shown in FIG.

【図13】図9に示した全体制御プロセッサのブロック
図である。
13 is a block diagram of the overall control processor shown in FIG.

【図14】図9に示した動き予測制御ユニットのブロッ
ク図である。
14 is a block diagram of the motion prediction control unit shown in FIG. 9.

【図15】図9に示した画像フォーマット変換ユニット
のブロック図である。
15 is a block diagram of the image format conversion unit shown in FIG.

【図16】図9に示した画像データ転送制御ユニットの
ブロック図である。
16 is a block diagram of the image data transfer control unit shown in FIG.

【図17】図9に示した命令転送ユニットのブロック図
である。
17 is a block diagram of the instruction transfer unit shown in FIG. 9. FIG.

【図18】ピクセルプロセシングユニットの一例を示す
ブロック図である。
FIG. 18 is a block diagram showing an example of a pixel processing unit.

【図19】図18に示したピクセルプロセシングユニッ
トのより詳細なブロック図である。
19 is a more detailed block diagram of the pixel processing unit shown in FIG.

【図20】ピクセルプロセシングユニットの別の例を示
すブロック図である。
FIG. 20 is a block diagram showing another example of a pixel processing unit.

【図21】図20に示したピクセルプロセシングユニッ
トのより詳細なブロック図である。
21 is a more detailed block diagram of the pixel processing unit shown in FIG. 20. FIG.

【図22】図19に示したピクセルプロセシングユニッ
トにおける符号化(フレーム内予測)のための動作フロ
ー図である。
22 is an operational flowchart for encoding (intra-frame prediction) in the pixel processing unit shown in FIG.

【図23】図19に示したピクセルプロセシングユニッ
トにおける復号化(フレーム内予測)のための動作フロ
ー図である。
23 is an operation flowchart for decoding (intra-frame prediction) in the pixel processing unit shown in FIG.

【図24】図19に示したピクセルプロセシングユニッ
トにおける符号化(両方向予測)のための動作フロー図
である。
24 is an operation flowchart for encoding (bidirectional prediction) in the pixel processing unit shown in FIG.

【図25】図19に示したピクセルプロセシングユニッ
トにおける復号化(両方向予測)のための動作フロー図
である。
FIG. 25 is an operational flowchart for decoding (bidirectional prediction) in the pixel processing unit shown in FIG.

【図26】図19に示したピクセルプロセシングユニッ
トにおける符号化のためのパイプライン処理を示すタイ
ムチャートである。
FIG. 26 is a time chart showing pipeline processing for encoding in the pixel processing unit shown in FIG.

【図27】図19に示したピクセルプロセシングユニッ
トにおけるフレーム内予測におけるパイプライン処理を
示すタイムチャートである。
27 is a time chart showing pipeline processing in intra-frame prediction in the pixel processing unit shown in FIG.

【図28】図19に示したピクセルプロセシングユニッ
トにおける片方向処理におけるパイプライン処理を示す
タイムチャートである。
28 is a time chart showing pipeline processing in one-way processing in the pixel processing unit shown in FIG.

【図29】図19に示したピクセルプロセシングユニッ
トにおける両方向予測におけるパイプライン処理を示す
タイムチャートである。
29 is a time chart showing pipeline processing in bidirectional prediction in the pixel processing unit shown in FIG.

【図30】可変長処理のための第1のシステム構成を示
すブロック図である。
FIG. 30 is a block diagram showing a first system configuration for variable length processing.

【図31】図30に示した第1のシステム構成における
可変長符号化処理のフロー図である。
31 is a flowchart of the variable length coding process in the first system configuration shown in FIG.

【図32】図30に示した第1のシステム構成における
可変長復号化処理のフロー図である。
32 is a flowchart of the variable length decoding process in the first system configuration shown in FIG.

【図33】図30に示した可変長符号化用テーブルメモ
リのデータ記憶構造図である。
33 is a data storage structure diagram of the variable length coding table memory shown in FIG. 30. FIG.

【図34】図30に示した可変長復号化用テーブルメモ
リのデータ記憶構造図である。
34 is a data storage structure diagram of the variable length decoding table memory shown in FIG. 30. FIG.

【図35】可変長符号列の生成処理を説明するための処
理フロー図である。
[Fig. 35] Fig. 35 is a process flowchart for explaining a process of generating a variable-length code string.

【図36】可変長プロセッサの第1の例を示すブロック
図である。
FIG. 36 is a block diagram showing a first example of a variable length processor.

【図37】可変長プロセッサの第2の例を示すブロック
図である。
FIG. 37 is a block diagram showing a second example of a variable length processor.

【図38】可変長プロセッサの第3の例を示すブロック
図である。
FIG. 38 is a block diagram showing a third example of a variable length processor.

【図39】可変長処理のための第2のシステム構成を示
すブロック図である。
FIG. 39 is a block diagram showing a second system configuration for variable length processing.

【図40】図39に示した可変長プロセッサのブロック
図である。
40 is a block diagram of the variable length processor shown in FIG. 39. FIG.

【図41】図40に示したアドレス生成器のブロック図
である。
41 is a block diagram of the address generator shown in FIG. 40. FIG.

【図42】図41に示したアドレス生成器における可変
長符号化処理のフロー図である。
42 is a flow chart of variable-length coding processing in the address generator shown in FIG. 41.

【図43】図41に示したアドレス生成器における可変
長復号化処理のフロー図である。
43 is a flowchart of the variable length decoding process in the address generator shown in FIG. 41.

【図44】図40に示した可変長符号列生成/分解回路
のブロック図である。
FIG. 44 is a block diagram of the variable-length code string generation / decomposition circuit shown in FIG. 40.

【図45】図44に示した可変長符号列生成/分解回路
における可変長符号化処理のフロー図である。
45 is a flowchart of the variable length coding process in the variable length code string generation / decomposition circuit shown in FIG. 44.

【図46】図44に示した可変長符号列生成/分解回路
における可変長復号化処理のフロー図である。
FIG. 46 is a flowchart of a variable length decoding process in the variable length code string generation / decomposition circuit shown in FIG. 44.

【図47】図40に示した外部インターフェイス回路の
ブロック図である。
FIG. 47 is a block diagram of the external interface circuit shown in FIG. 40.

【図48】図47に示した外部インターフェイス回路に
おける可変長符号化処理のフロー図である。
48 is a flowchart of the variable length coding process in the external interface circuit shown in FIG. 47.

【図49】図47に示した外部インターフェイス回路に
おける可変長復号化処理のフロー図である。
49 is a flowchart of a variable length decoding process in the external interface circuit shown in FIG. 47.

【図50】図39に示した可変長プロセッサにおいて使
用されるグループ化された可変長符号テーブルである。
50 is a grouped variable length code table used in the variable length processor shown in FIG. 39. FIG.

【図51】図39に示した可変長符号化用テーブルメモ
リにストアされるデータのデータフォーマット図であ
る。
51 is a data format diagram of data stored in the variable length coding table memory shown in FIG. 39. FIG.

【図52】可変長符号化処理における被符号化データの
データフォーマット図である。
FIG. 52 is a data format diagram of encoded data in variable length encoding processing.

【図53】フレームバッファメモリにおけるメモリセル
アレイの基本構成図である。
FIG. 53 is a basic configuration diagram of a memory cell array in the frame buffer memory.

【図54】フレームバッファメモリのブロック図であ
る。
FIG. 54 is a block diagram of a frame buffer memory.

【図55】DRAMを用いたフレームバッファメモリの
システム構成図である。
FIG. 55 is a system configuration diagram of a frame buffer memory using a DRAM.

【図56】図55に示したフレームバッファメモリ内に
ストアされるデータと画面内の画素との間の関係を示す
画素レイアウト図である。
FIG. 56 is a pixel layout diagram showing the relationship between the data stored in the frame buffer memory shown in FIG. 55 and the pixels in the screen.

【図57】図60に示したフレームバッファメモリ内に
ストアされたデータと画面内の画素との間の関係を示す
画素レイアウト図である。
57 is a pixel layout diagram showing a relationship between data stored in the frame buffer memory shown in FIG. 60 and pixels in a screen. FIG.

【図58】図55に示したDRAMコントローラによる
アドレッシングを説明するための画素レイアウト図であ
る。
FIG. 58 is a pixel layout diagram for explaining addressing by the DRAM controller shown in FIG. 55.

【図59】図55に示したDRAMコントローラの制御
の下でのフレームバッファメモリの読出動作を示すタイ
ムチャートである。
59 is a time chart showing a read operation of the frame buffer memory under the control of the DRAM controller shown in FIG. 55.

【図60】SDRAMを用いたフレームバッファメモリ
のシステム構成図である。
FIG. 60 is a system configuration diagram of a frame buffer memory using SDRAM.

【図61】SDRAMの読出動作を説明するためのタイ
ムチャートである。
FIG. 61 is a time chart for explaining the read operation of the SDRAM.

【図62】図60に示したアドレス生成器によるアドレ
ッシングを説明するための画素レイアウト図である。
FIG. 62 is a pixel layout diagram for explaining addressing by the address generator shown in FIG. 60.

【図63】図60に示したアドレス生成器の動作の一例
を説明するためのタイムチャートである。
63 is a time chart for explaining an example of the operation of the address generator shown in FIG. 60. FIG.

【図64】図60に示したアドレス生成器の動作の別の
例を示すタイムチャートである。
64 is a time chart showing another example of the operation of the address generator shown in FIG. 60.

【図65】図60に示したアドレス生成器の動作のさら
に別の例を示すタイムチャートである。
65 is a time chart showing still another example of the operation of the address generator shown in FIG. 60. FIG.

【図66】図60に示したアドレス生成器のブロック図
である。
66 is a block diagram of the address generator shown in FIG. 60. FIG.

【図67】図66に示したアドレス生成器から出力され
る行および列アドレスとページとの間の関係を示すアド
レス−ページ対応図である。
67 is an address-page correspondence diagram showing the relationship between the row and column addresses output from the address generator shown in FIG. 66 and the page.

【図68】図67に示したページと画面内の画素との間
の関係を示すページ−画素対応図である。
68 is a page-pixel correspondence diagram showing the relationship between the page shown in FIG. 67 and the pixels in the screen.

【図69】国際標準規格において勧告されている画像圧
縮アルゴリズムにおける主な処理を示すブロック図であ
る。
[Fig. 69] Fig. 69 is a block diagram illustrating main processing in an image compression algorithm recommended by an international standard.

【図70】従来の画像圧縮/伸張処理装置のブロック図
である。
FIG. 70 is a block diagram of a conventional image compression / expansion processing device.

【図71】図70に示したDSPのブロック図である。71 is a block diagram of the DSP shown in FIG. 70. FIG.

【図72】フレームバッファメモリに画面内の画素デー
タをマッピングさせる第1の方法を説明する図である。
FIG. 72 is a diagram illustrating a first method of mapping pixel data in a screen in a frame buffer memory.

【図73】水平方向8画素および垂直方向8画素のデー
タ領域の転送処理を説明する第1の図である。
FIG. 73 is a first diagram illustrating a transfer process of a data area of 8 pixels in the horizontal direction and 8 pixels in the vertical direction.

【図74】水平方向8画素および垂直方向8画素のデー
タ領域の転送処理を説明する第2の図である。
FIG. 74 is a second diagram illustrating a transfer process of a data area of 8 pixels in the horizontal direction and 8 pixels in the vertical direction.

【図75】水平方向8画素および垂直方向8画素のデー
タ領域の転送処理を説明する第3の図である。
[Fig. 75] Fig. 75 is a third diagram illustrating a transfer process of a data area of 8 pixels in the horizontal direction and 8 pixels in the vertical direction.

【図76】水平方向8画素および垂直方向8画素のデー
タ領域の転送処理を説明する第4の図である。
FIG. 76 is a fourth diagram illustrating a transfer process of a data area of 8 pixels in the horizontal direction and 8 pixels in the vertical direction.

【図77】フレームバッファメモリに画面内の画素デー
タをマッピングさせる第2の方法を説明する図である。
[Fig. 77] Fig. 77 is a diagram illustrating a second method for mapping pixel data in a screen in a frame buffer memory.

【図78】フレームバッファメモリに第1および第2色
差画素データをマッピングさせる第1の方法を説明する
図である。
FIG. 78 is a diagram illustrating a first method of mapping first and second color difference pixel data in a frame buffer memory.

【図79】フレームバッファメモリに第1および第2色
差画素データをマッピングさせる第2の方法を説明する
図である。
FIG. 79 is a diagram illustrating a second method for mapping the first and second color difference pixel data in the frame buffer memory.

【図80】フレームバッファメモリに第1および第2色
差画素データをマッピングさせる第3の方法を説明する
図である。
FIG. 80 is a diagram illustrating a third method for mapping the first and second color difference pixel data in the frame buffer memory.

【図81】フレームバッファメモリに第1および第2色
差画素データをマッピングさせる第4の方法を説明する
図である。
FIG. 81 is a diagram illustrating a fourth method of mapping the first and second color difference pixel data in the frame buffer memory.

【図82】両方向予測符号化時の全体制御プロセッサの
演算処理を説明する図である。
[Fig. 82] Fig. 82 is a diagram illustrating arithmetic processing of the overall control processor at the time of bidirectional predictive coding.

【図83】この発明の第7実施例を示す画像圧縮/伸長
処理装置のブロック図である。
FIG. 83 is a block diagram of an image compression / expansion processing device showing a seventh embodiment of the present invention.

【図84】この発明の第8実施例を示す画像圧縮/伸長
処理装置のブロック図である。
FIG. 84 is a block diagram of an image compression / decompression processing device showing an eighth embodiment of the present invention.

【図85】この発明の第9実施例を示す画像圧縮/伸長
処理装置のブロック図である。
FIG. 85 is a block diagram of an image compression / decompression processing device showing a ninth embodiment of the present invention.

【図86】この発明の第10実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 86 is a block diagram of an image compression / decompression processing device showing a tenth embodiment of the present invention.

【図87】この発明の第11実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 87 is a block diagram of an image compression / decompression processing device showing an eleventh embodiment of the present invention.

【図88】この発明の第12実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 88 is a block diagram of an image compression / decompression processing device showing a twelfth embodiment of the present invention.

【図89】この発明の第13実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 89 is a block diagram of an image compression / decompression processing device showing a thirteenth embodiment of the present invention.

【図90】この発明の第14実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 90 is a block diagram of an image compression / decompression processing device showing a fourteenth embodiment of the present invention.

【図91】この発明の第15実施例を示す画像圧縮/伸
長処理装置のブロック図である。
FIG. 91 is a block diagram of an image compression / decompression processing device showing a fifteenth embodiment of the present invention.

【図92】コントロールユニットのさらに別の例を示す
ブロック図である。
FIG. 92 is a block diagram showing still another example of the control unit.

【図93】ピクセルプロセシングユニットのさらに別の
例を示すブロック図である。
FIG. 93 is a block diagram showing still another example of a pixel processing unit.

【図94】図93に示したピクセルプロセシングユニッ
トのより詳細な第1のブロック図である。
94 is a more detailed first block diagram of the pixel processing unit shown in FIG. 93. FIG.

【図95】図18に示したピクセルプロセシングユニッ
トのより詳細な第2のブロック図である。
95 is a more detailed second block diagram of the pixel processing unit shown in FIG. 18. FIG.

【符号の説明】[Explanation of symbols]

1 ホストインターフェイス回路 2,21,22 コントロールユニット 3,31,32 ピクセルプロセシングユニット 41−46 動き予測ユニット 51−55 フレームバッファメモリ 81,82 入出力メモリ 11 全体制御プロセッサ 12,121−125 可変長プロセッサ 13 動き予測制御ユニット 14 画像フォーマット変換ユニット 15 画像データ転送制御ユニット 16 ピクセルプロセシングユニット用命令転送ユニッ
ト 17 メインポート 18 画像データポート 19 VRAMポート 20 コードデータポート
1 Host Interface Circuit 2, 21, 22 Control Unit 3, 31, 32 Pixel Processing Unit 41-46 Motion Prediction Unit 51-55 Frame Buffer Memory 81, 82 Input / Output Memory 11 Overall Control Processor 12, 121-125 Variable Length Processor 13 Motion prediction control unit 14 Image format conversion unit 15 Image data transfer control unit 16 Pixel processing unit instruction transfer unit 17 Main port 18 Image data port 19 VRAM port 20 Code data port

───────────────────────────────────────────────────── フロントページの続き (72)発明者 瀬川 浩 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社システムエル・エス・アイ開発研 究所内 (72)発明者 石原 和哉 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社システムエル・エス・アイ開発研 究所内 (72)発明者 熊木 哲 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社システムエル・エス・アイ開発研 究所内 (72)発明者 花見 充雄 兵庫県伊丹市瑞原4丁目1番地 三菱電機 株式会社システムエル・エス・アイ開発研 究所内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Hiroshi Segawa 4-chome, Mizuhara, Itami City, Hyogo Prefecture Mitsubishi Electric Corporation System LSI Development Laboratory (72) Inventor, Kazuya Ishihara 4 Mizuhara, Itami City, Hyogo Prefecture 1-chome, Mitsubishi Electric Corporation System LSI Development Laboratory (72) Inventor Satoshi Kumaki 4-1-1, Mizuhara, Itami City, Hyogo Prefecture Mitsubishi Electric Corporation System-LS Development Laboratory (72) Inventor Mitsuo Hanami 4-1-1 Mizuhara, Itami City, Hyogo Prefecture Mitsubishi Electric Corporation System LSI Development Laboratory

Claims (25)

【特許請求の範囲】[Claims] 【請求項1】 圧縮されるべき画素データを記憶する画
素データ記憶手段と、 前記画素データ記憶手段に記憶された画素データを伝送
する画素データバスと、 前記画素データバスを介して伝送された画素データにつ
いて、離散コサイン変換処理および量子化処理を実行
し、画素符号を出力する画素プロセッサと、 前記画素プロセッサから出力された画素符号を伝送する
画素符号バスと、 前記画素符号バスを介して伝送された画素符号につい
て、可変長符号化処理を実行し、可変長符号を出力する
可変長符号化プロセッサと、 前記画素データバス,前記画素プロセッサ,前記画素符
号バスおよび前記可変長符号化プロセッサについてのパ
イプライン処理を制御するパイプライン制御プロセッサ
とを含む、画像データ処理装置。
1. A pixel data storage means for storing pixel data to be compressed, a pixel data bus for transmitting pixel data stored in the pixel data storage means, and a pixel transmitted via the pixel data bus. A pixel processor that performs a discrete cosine transform process and a quantization process on the data and outputs a pixel code, a pixel code bus that transmits the pixel code output from the pixel processor, and a pixel code bus that transmits the pixel code. A variable-length coding processor that executes a variable-length coding process on the pixel code and outputs the variable-length code; and pipes for the pixel data bus, the pixel processor, the pixel code bus, and the variable-length coding processor. An image data processing device including a pipeline control processor for controlling line processing.
【請求項2】 圧縮された可変長符号を記憶する可変長
符号記憶手段と、 前記可変長符号記憶手段に記憶された可変長符号を伝送
する可変長符号バスと、 前記可変長符号バスを介して伝送された可変長符号につ
いて、可変長復号化処理を実行し、画素符号を出力する
可変長復号化プロセッサと、 前記可変長復号化プロセッサから出力された画素符号を
伝送する画素符号バスと、 前記画素符号バスを介して伝送された画素符号につい
て、逆量子化処理および逆離散コサイン変換処理を実行
し、伸張された画素データを出力する画素プロセッサ
と、 前記可変長符号バス,前記可変長復号化プロセッサ,前
記画素符号バスおよび前記画素プロセッサについてのパ
イプライン処理を制御するパイプライン制御プロセッサ
とを含む、画像データ処理装置。
2. A variable length code storage means for storing a compressed variable length code, a variable length code bus for transmitting the variable length code stored in the variable length code storage means, and a variable length code bus. The variable-length code transmitted by the variable-length decoding processor for performing a variable-length decoding process and outputting a pixel code, and a pixel code bus for transmitting the pixel code output from the variable-length decoding processor, A pixel processor that performs inverse quantization processing and inverse discrete cosine transform processing on a pixel code transmitted via the pixel code bus and outputs expanded pixel data, the variable length code bus, and the variable length decoding Image data processing device including a pixelization processor, the pixel code bus, and a pipeline control processor that controls pipeline processing for the pixel processor. .
【請求項3】 データ圧縮モードにおいて画素データに
ついて離散コサイン変換処理および量子化処理を実行
し、かつデータ伸張モードにおいて画素符号について逆
量子化処理および逆離散コサイン変換処理を実行する画
素プロセッサと、 データ圧縮モードにおいて画素符号について可変長符号
化処理を実行し、かつデータ伸張モードにおいて可変長
符号について可変長復号化処理を実行する可変長プロセ
ッサと、 前記画素プロセッサと前記可変長プロセッサとの間で画
素データおよび可変長符号を伝送する第1のデータバス
と、 前記画素プロセッサと前記可変長プロセッサとの間で画
素符号を伝送する第2のデータバスと、 前記画素プロセッサ,前記可変長プロセッサ,第1およ
び第2のデータバスについてのパイプライン処理を制御
するパイプライン制御プロセッサとを含む、画像データ
処理装置。
3. A pixel processor that performs discrete cosine transform processing and quantization processing on pixel data in a data compression mode, and inverse quantization processing and inverse discrete cosine transform processing on a pixel code in data expansion mode, and data. A variable-length processor that performs a variable-length coding process on a pixel code in a compression mode and a variable-length decoding process on a variable-length code in a data decompression mode; and a pixel between the pixel processor and the variable-length processor. A first data bus for transmitting data and a variable length code; a second data bus for transmitting a pixel code between the pixel processor and the variable length processor; the pixel processor; the variable length processor; And control pipeline processing for the second data bus. And a pipeline control processor, the image data processing apparatus.
【請求項4】 変換のためのテーブルデータを記憶する
第1の記憶手段,画像処理されるべき画像データを記憶
する第2の記憶手段,表示のための画像データを記憶す
る第3の記憶手段,および変換された画像データを記憶
する第4の記憶手段に対しアクセス可能な画像データ処
理装置であって、 前記第1の記憶手段にアクセスする第1のアクセス手段
と、 前記第2の記憶手段にアクセスする第2のアクセス手段
と、 前記第3の記憶手段にアクセスする第3のアクセス手段
と、 前記第4の記憶手段にアクセスする第4のアクセス手段
と、 前記第1および第4のアクセス手段に対しアクセス動作
の開始を個々に制御するアクセス制御手段とを含む、画
像データ処理装置。
4. A first storage means for storing table data for conversion, a second storage means for storing image data to be image-processed, and a third storage means for storing image data for display. , And an image data processing device capable of accessing a fourth storage means for storing the converted image data, the first storage means accessing the first storage means, and the second storage means. Access means for accessing the third storage means, third access means for accessing the third storage means, fourth access means for accessing the fourth storage means, and first and fourth access means Image data processing device, which includes access control means for individually controlling the start of an access operation to the means.
【請求項5】 画像データ圧縮および/または画像デー
タ伸張のための複数の予め定められた処理についてのパ
イプライン処理を制御する制御プロセッサと、 前記制御プロセッサから与えられる制御信号に応答して
前記複数の予め定められた処理のうち予め定められた1
つを実行する画像処理プロセッサとを含む、画像データ
処理装置。
5. A control processor for controlling pipeline processing for a plurality of predetermined processes for image data compression and / or image data decompression, and the plurality of units in response to a control signal provided from the control processor. 1 of the predetermined processing of
An image data processing device including an image processing processor for executing the image data processing device.
【請求項6】 画像データ圧縮および/または画像デー
タ伸張のための離散コサイン変換処理,量子化処理およ
び可変長データ処理についてのパイプライン処理を制御
するパイプライン処理制御プロセッサと、 前記パイプライン処理制御プロセッサから与えられる制
御信号に応答して、前記可変長データ処理を実行する可
変長プロセッサとを含む、画像データ処理装置。
6. A pipeline processing control processor for controlling pipeline processing for discrete cosine transform processing, quantization processing and variable length data processing for image data compression and / or image data expansion, and the pipeline processing control. An image data processing device, comprising: a variable length processor that executes the variable length data processing in response to a control signal given from the processor.
【請求項7】 画像データ圧縮および/または画像デー
タ伸張のための予め定められた処理および画像データ転
送についての並列動作を制御する制御プロセッサと、 各々が前記制御プロセッサから与えられる制御信号に応
答して、前記予め定められた処理および前記画像データ
転送の実行を個々に命令する複数の実行命令手段とを含
む、画像データ処理装置。
7. Control processors for controlling parallel operations for predetermined processing and image data transfer for image data compression and / or image data decompression, each responsive to a control signal provided by said control processor. And a plurality of execution instruction means for individually instructing execution of the predetermined processing and the image data transfer.
【請求項8】 ランデータおよびレベルデータの組合せ
に対応する可変長符号,その符号長データおよび等長符
号処理フラグを記憶する記憶手段と、 与えられたランデータおよび与えられたレベルデータに
応答して、前記記憶手段から対応する可変長符号,その
符号長データおよび等長符号処理フラグを読出す読出手
段と、 前記与えられたランデータおよび前記与えられたレベル
データについて、予め定められた規則に従う符号化処理
を実行し、対応する等長符号を出力する等長符号化手段
と、 前記読出手段から出力される等長符号処理フラグに応答
して、前記可変長符号および前記等長符号の一方を選択
する選択手段と、 前記選択手段から出力される出力符号を順次に結合する
符号結合手段とを含む、画像データ処理装置。
8. A storage means for storing a variable length code corresponding to a combination of run data and level data, the code length data and an equal length code processing flag, and responding to given run data and given level data. Read means for reading the corresponding variable length code, its code length data and equal length code processing flag from the storage means, and the given run data and the given level data, according to a predetermined rule. One of the variable-length code and the equal-length code in response to the equal-length coding processing flag output from the reading means, which executes coding processing and outputs a corresponding equal-length code. An image data processing device, comprising: a selection unit that selects the output code and a code combination unit that sequentially combines the output codes output from the selection unit.
【請求項9】 可変長符号に対応するランデータ,レベ
ルデータおよび等長処理フラグを記憶する記憶手段と、 結合された可変長符号を含む与えられた可変長符号列か
ら可変長符号を抽出する抽出手段と、 前記抽出手段によって抽出された可変長符号に応答し
て、前記記憶手段から対応するランデータ,レベルデー
タおよび等長処理フラグを読出す読出手段と、 前記抽出手段によって抽出された可変長符号について、
予め定められた規則に従う復号化処理を実行し、対応す
る復号データを出力する等長復号化手段と、 前記読出手段から出力される等長処理フラグに応答し
て、前記ランデータおよびレベルデータならびに前記復
号データの一方を選択する選択手段とを含む、画像デー
タ処理装置。
9. A storage means for storing run data, level data and an equal length processing flag corresponding to the variable length code, and extracting the variable length code from a given variable length code string including the combined variable length code. Extracting means, reading means for reading the corresponding run data, level data and equal length processing flag from the storing means in response to the variable length code extracted by the extracting means; and the variable extracted by the extracting means. For long code,
Isometric decoding means for executing a decoding process according to a predetermined rule and outputting the corresponding decoded data; and, in response to an isometric processing flag output from the reading means, the run data and the level data, An image data processing device, comprising: a selection unit that selects one of the decoded data.
【請求項10】 画面内の画素を規定するための画素デ
ータを記憶するためのn個(n≧2)のメモリセルアレ
イを含み、 前記n個のメモリセルアレイは、1つの行アドレス信号
および1つの列アドレス信号の供与に応答して、各々が
前記n個のメモリセルアレイの対応する1つ内にストア
されたn個の画素データを出力し、 前記n個の画素データは、画面において垂直方向に置か
れた複数の画素を規定し、 シリアルクロック信号に応答して、画面において水平方
向に置かれた画素についての画素データを規定するため
の列アドレス信号をシリアルに出力するアドレス信号発
生手段を含む、画像データ処理装置。
10. An n (n ≧ 2) memory cell array for storing pixel data for defining pixels in a screen, wherein the n memory cell arrays include one row address signal and one Responsive to providing a column address signal, each of which outputs n pixel data stored in a corresponding one of the n memory cell arrays, the n pixel data being vertically aligned on a screen. Includes address signal generation means for defining a plurality of placed pixels and serially outputting a column address signal for defining pixel data for pixels placed horizontally in the screen in response to a serial clock signal. , Image data processing device.
【請求項11】 画面内の画素を規定するための画素デ
ータを記憶するためのn個(n≧2)のメモリセルアレ
イを含み、 前記n個のメモリセルアレイは、1つの行アドレス信号
および1つの列アドレス信号の供与に応答して、各々が
前記n個のメモリセルアレイの対応する1つ内にストア
されたn個の画素データを出力し、 前記n個の画素データは、画面において水平方向に置か
れた複数の画素を規定し、 シリアルクロック信号に応答して、画面において垂直方
向に置かれた画素についての画素データを規定するため
の列アドレス信号をシリアルに出力するアドレス信号発
生手段を含む、画像データ処理装置。
11. An n (n ≧ 2) memory cell array for storing pixel data for defining pixels in a screen, wherein the n memory cell arrays include one row address signal and one Responsive to the application of a column address signal, each of which outputs n pixel data stored in a corresponding one of the n memory cell arrays, the n pixel data being horizontally aligned on a screen. Includes address signal generation means for defining a plurality of placed pixels and serially outputting, in response to a serial clock signal, a column address signal for defining pixel data for pixels placed in a vertical direction on the screen. , Image data processing device.
【請求項12】 画面を形成する画素を規定する複数の
マクロブロックデータをパイプライン処理の下で符号化
する画像データ処理方法であって、 マクロブロックデータについて離散コサイン変換処理お
よび量子化処理を実行し、画素符号を生成するステップ
と、 前記ステップにおいて生成された画素符号について可変
長符号化処理を実行し、可変長符号を生成するステップ
と、 前記ステップにおいて生成された可変長符号を結合し、
可変長符号列を生成するステップとを含む、画像データ
処理方法。
12. An image data processing method for encoding a plurality of macroblock data defining pixels forming a screen under pipeline processing, wherein discrete cosine transform processing and quantization processing are performed on macroblock data. Then, a step of generating a pixel code, a step of performing a variable length coding process on the pixel code generated in the step, a step of generating a variable length code, and combining the variable length code generated in the step,
And a step of generating a variable-length code string.
【請求項13】 画面を形成する画素を規定する複数の
可変長符号を含む可変長符号列をパイプライン処理の下
で復号化する画像データ処理方法であって、 前記可変長符号列から前記可変長符号を抽出するステッ
プと、 前記ステップにおいて抽出された可変長符号について可
変長復号化処理を実行し、画素符号を生成するステップ
と、 前記ステップにおいて生成された画素符号について逆量
子化処理および逆離散コサイン変換処理を実行し、画面
を形成する画素を規定するマクロブロックデータを生成
するステップとを含む、画像データ処理方法。
13. An image data processing method for decoding, under pipeline processing, a variable-length code string including a plurality of variable-length codes that define pixels forming a screen, wherein the variable-length code string is converted to the variable-length code string. A step of extracting a long code; a step of performing a variable length decoding process on the variable length code extracted in the step to generate a pixel code; a step of dequantizing the pixel code generated in the step; Performing discrete cosine transform processing to generate macroblock data defining pixels forming a screen.
【請求項14】 画面内の画素を規定する複数の第1画
素データを記憶する記憶手段に前記第1画素データをマ
ッピングさせる画像データ処理方法であって、 前記第1画素データの中から2次元的に隣接し矩形領域
に含まれる複数の第2画素データを決定する第1ステッ
プと、 前記第2画素データを1つのデータとして前記記憶手段
の1つのアドレスを前記第2画素データに与える第2ス
テップと、 前記第2画素データのアドレスを用いて前記第2画素デ
ータを前記記憶手段からまたは前記記憶手段へ転送する
第3ステップとを含む、画像データ処理方法。
14. An image data processing method for mapping the first pixel data to a storage means for storing a plurality of first pixel data defining pixels in a screen, the method being two-dimensional from the first pixel data. A second step of determining a plurality of second pixel data that are adjacent to each other and are included in a rectangular area; and a second step of giving one address of the storage means to the second pixel data by using the second pixel data as one data. An image data processing method comprising: a step; and a third step of transferring the second pixel data from or to the storage means using an address of the second pixel data.
【請求項15】 画面内の画素を規定するための互いに
関連する第1および第2色差画素データを記憶する記憶
手段に前記第1および第2色差画素データをマッピング
させる画素データ処理方法であって、 前記第1および第2色差画素データを転送単位で交互に
前記記憶手段にマッピングする第1ステップと、 前記第1または第2色差画素データを前記転送単位で前
記記憶手段からまたは前記記憶手段へ転送する第2ステ
ップとを含む、画像データ処理方法。
15. A pixel data processing method for mapping the first and second color difference pixel data to a storage means for storing first and second color difference pixel data associated with each other for defining pixels in a screen. A first step of alternately mapping the first and second color difference pixel data in the transfer unit in the transfer unit, and the first or second color difference pixel data in the transfer unit from the storage unit or to the storage unit A second step of transferring, an image data processing method.
【請求項16】 画面内の画素を規定するための互いに
連関する第1および第2色差画素データを記憶する記憶
手段に前記第1および第2色差画素データをマッピング
させる画像データ処理方法であって、 前記第1および第2色差画素データを同数ずつ合わせた
第3色差画素データを1つのデータとして前記記憶手段
にマッピングさせる第1ステップと、 前記第3色差画素データを1つのデータとして前記記憶
手段からまたは前記記憶手段へ転送する第2ステップと
を含む、画像データ処理方法。
16. An image data processing method for mapping the first and second color difference pixel data to a storage means for storing mutually associated first and second color difference pixel data for defining pixels in a screen. A first step of mapping third color difference pixel data, which is the same number of the first and second color difference pixel data, into the storage means as one data; and the storage means as the third color difference pixel data as one data. A second step of transferring from or to the storage means.
【請求項17】 圧縮されるべき画素データを記憶する
第1の画素データ記憶手段と、 前記第1の画素データ記憶手段に記憶された画素データ
を伝送する第1の画素データバスと、 前記第1の画素データバスを介して伝送された画素デー
タを受け、伝送された画素データを用いて動き予測用参
照データを抽出し、かつ、前記動き予測用参照データを
出力する第1および第2のデータポートを有する画素プ
ロセッサと、 前記画素プロセッサの第2のデータポートから出力され
た動き予測用参照データを伝送する第2の画素データバ
スと、 前記第2の画素データバスを介して伝送された動き予測
用参照データを記憶する第2の画素データ記憶手段と、 前記第2の画素データ記憶手段に記憶され、前記第2の
画素データバスを介して伝送された動き予測用参照デー
タを用いて動き予測処理を実行し、動きベクトルを生成
する動き予測ユニットと、 前記第1および第2の画素データバス、前記画素プロセ
ッサ、前記動き予測ユニットについてのパイプライン処
理を制御するパイプライン制御プロセッサとを含む、画
像データ処理装置。
17. A first pixel data storage means for storing pixel data to be compressed, a first pixel data bus for transmitting the pixel data stored in the first pixel data storage means, and the first pixel data bus. 1st and 2nd which receives the pixel data transmitted via 1 pixel data bus, extracts the motion prediction reference data using the transmitted pixel data, and outputs the said motion prediction reference data. A pixel processor having a data port, a second pixel data bus for transmitting the motion prediction reference data output from the second data port of the pixel processor, and a second pixel data bus for transmitting the motion prediction reference data. Second pixel data storage means for storing reference data for motion prediction; and motions stored in the second pixel data storage means and transmitted via the second pixel data bus. A motion prediction unit that executes a motion prediction process using prediction reference data to generate a motion vector, and a pipeline process for the first and second pixel data buses, the pixel processor, and the motion prediction unit. And an image data processing device including a pipeline control processor.
【請求項18】 前記パイプライン制御プロセッサは、 前記画素プロセッサの第1および第2のデータポートの
出力制御信号を出力するシステム制御器をさらに含む、
請求項17記載の画像データ処理装置。
18. The pipeline control processor further includes a system controller outputting output control signals of first and second data ports of the pixel processor.
The image data processing device according to claim 17.
【請求項19】 圧縮されるべき画素データを記憶する
第1の画素データ記憶手段と、 前記第1の画素データ記憶手段に記憶された画素データ
を伝送する第1の画素データバスと、 前記第1の画素データバスを介して伝送された画素デー
タを受け、伝送された画素データを用いて動き予測用参
照データを抽出し、かつ、前記動き予測用参照データを
出力する第1のデータポートと、前記動き予測用参照デ
ータを分割して出力する複数の第2のデータポートとを
有する画素プロセッサと、 前記第2のデータポートごとに対応して設けられ、前記
第2のデータポートから出力された動き予測用参照デー
タを伝送する複数の第2の画素データバスと、 前記第2のデータポートごとに対応して設けられ、前記
第2の画素データバスを介して伝送された動き予測用参
照データを記憶する複数の第2の画素データ記憶手段
と、 前記第2のデータポートごとに対応して設けられ、前記
第2の画素データ記憶手段に記憶され、前記第2の画素
データバスを介して伝送された動き予測用参照データを
用いて動き予測処理を実行し、動きベクトルを生成する
複数の動き予測ユニットと、 前記第1の画素データバス、前記画素プロセッサ、前記
複数の第2の画素データバス、および前記複数の動き予
測ユニットについてのパイプライン処理を制御するパイ
プライン制御プロセッサとを含む、画像データ処理装
置。
19. A first pixel data storage means for storing pixel data to be compressed, a first pixel data bus for transmitting the pixel data stored in the first pixel data storage means, and the first pixel data bus. A first data port for receiving pixel data transmitted via one pixel data bus, extracting motion prediction reference data using the transmitted pixel data, and outputting the motion prediction reference data; A pixel processor having a plurality of second data ports for dividing and outputting the reference data for motion prediction; and a pixel processor provided corresponding to each of the second data ports and output from the second data port. A plurality of second pixel data buses for transmitting reference data for motion prediction, and a plurality of second pixel data buses provided corresponding to each of the second data ports, and transmitted via the second pixel data buses. A plurality of second pixel data storage units for storing reference data for motion prediction; and a second pixel data storage unit provided corresponding to each of the second data ports, stored in the second pixel data storage unit, and the second pixel A plurality of motion prediction units that perform a motion prediction process using the motion prediction reference data transmitted via a data bus to generate motion vectors; the first pixel data bus, the pixel processor, and the plurality of motion estimation units; An image data processing device comprising a second pixel data bus and a pipeline control processor controlling pipeline processing for the plurality of motion prediction units.
【請求項20】 圧縮されるべき画素データを記憶する
第1の画素データ記憶手段と、 前記第1の画素データ記憶手段に記憶された画素データ
を伝送する第1の画素データバスと、 前記第1の画素データバスを介して伝送された画素デー
タを受け、伝送された画素データを用いて動き予測用参
照データを抽出し、かつ、前記動き予測用参照データを
出力する第1のデータポートと、前記動き予測用参照デ
ータの種類に応じて前記動き予測用参照データを分割し
て出力する複数の第2のデータポートとを有する画素プ
ロセッサと、 前記第2のデータポートごとに対応して設けられ、前記
第2のデータポートから出力された動き予測用参照デー
タを伝送する複数の第2の画素データバスと、 前記第2のデータポートごとに対応して設けられ、前記
第2の画素データバスを介して伝送された動き予測用参
照データを記憶する複数の第2の画素データ記憶手段
と、 前記複数の第2の画素データ記憶手段と接続されるアド
レスバスと、 前記第2のデータポートごとに対応して設けられ、前記
第2の画素データ記憶手段に記憶され、前記第2の画素
データバスを介して伝送された動き予測用参照データを
用いて動き予測処理を実行し、前記動き予測用参照デー
タの種類に応じた動きベクトルを生成する複数の動き予
測ユニットと、 前記第1の画素データバス、前記画素プロセッサ、前記
複数の第2の画素データバス、前記アドレスバス、およ
び前記複数の動き予測ユニットについてのパイプライン
処理を制御するパイプライン制御プロセッサとを含む、
画像データ処理装置。
20. First pixel data storage means for storing pixel data to be compressed; first pixel data bus for transmitting the pixel data stored in the first pixel data storage means; A first data port for receiving pixel data transmitted via one pixel data bus, extracting motion prediction reference data using the transmitted pixel data, and outputting the motion prediction reference data; A pixel processor having a plurality of second data ports for dividing and outputting the motion prediction reference data according to the type of the motion prediction reference data; and a pixel processor provided corresponding to each of the second data ports. A plurality of second pixel data buses for transmitting the motion prediction reference data output from the second data port, and a plurality of second pixel data buses provided corresponding to each of the second data ports. A plurality of second pixel data storage means for storing motion prediction reference data transmitted via a second pixel data bus, an address bus connected to the plurality of second pixel data storage means, A motion prediction process is performed using the motion prediction reference data that is provided corresponding to each second data port, is stored in the second pixel data storage means, and is transmitted via the second pixel data bus. A plurality of motion prediction units that execute and generate a motion vector according to the type of the motion prediction reference data; the first pixel data bus, the pixel processor, the plurality of second pixel data buses, and the address A bus, and a pipeline control processor that controls pipeline processing for the plurality of motion prediction units,
Image data processing device.
【請求項21】 圧縮されるべき画素データを記憶する
第1の画素データ記憶手段と、 前記第1の画素データ記憶手段に記憶された画素データ
を伝送する第1の画素データバスと、 前記第1の画素データバスを介して伝送された画素デー
タを受け、伝送された画素データを用いて異なる種類の
動き予測用参照データを抽出し、かつ、前記動き予測用
参照データを出力する第1のデータポートと、前記動き
予測用参照データの種類に応じて前記動き予測用参照デ
ータを出力する第2のデータポートとを有する複数の画
素プロセッサと、 前記画素プロセッサごとに対応して設けられ、前記第2
のデータポートから出力された動き予測用参照データを
伝送する複数の第2の画素データバスと、 前記画素プロセッサごとに対応して設けられ、前記第2
の画素データバスを介して伝送された動き予測用参照デ
ータを記憶する複数の第2の画素データ記憶手段と、 前記画素プロセッサごとに対応して設けられ、前記第2
の画素データ記憶手段に記憶され、前記第2の画素デー
タバスを介して伝送された動き予測用参照データを用い
て動き予測処理を実行し、動きベクトルを生成する複数
の動き予測ユニットと、 前記第1の画素データバス、前記複数の画素プロセッ
サ、前記複数の第2の画素データバス、および前記複数
の動き予測ユニットについてのパイプライン処理を制御
するパイプライン制御プロセッサとを含む、画像データ
処理装置。
21. First pixel data storage means for storing pixel data to be compressed; first pixel data bus for transmitting the pixel data stored in the first pixel data storage means; A first pixel for receiving pixel data transmitted via one pixel data bus, extracting different types of motion prediction reference data using the transmitted pixel data, and outputting the motion prediction reference data; A plurality of pixel processors each having a data port and a second data port for outputting the reference data for motion prediction according to the type of the reference data for motion prediction; Second
A plurality of second pixel data buses for transmitting the motion prediction reference data output from the data port of the
A plurality of second pixel data storage means for storing the motion prediction reference data transmitted via the pixel data bus, and the second pixel data storage means provided corresponding to each of the pixel processors.
A plurality of motion prediction units that perform motion prediction processing using the motion prediction reference data stored in the pixel data storage unit and transmitted via the second pixel data bus; Image data processing apparatus including a first pixel data bus, the plurality of pixel processors, the plurality of second pixel data buses, and a pipeline control processor that controls pipeline processing for the plurality of motion prediction units. .
【請求項22】 前記複数の第2の画素データ記憶手段
に記憶される動き予測用参照データは、輝度成分と色差
成分との種類の違いによってそれぞれ異なる第2の画素
データ記憶手段に記憶される請求項19ないし請求項2
1記載の画像データ処理装置。
22. The motion prediction reference data stored in the plurality of second pixel data storage units are stored in different second pixel data storage units, which differ depending on the type of the luminance component and the color difference component. Claims 19 to 2
1. The image data processing device according to 1.
【請求項23】 画像データ圧縮および/または画像デ
ータ伸長のための予め定められた処理および画像データ
転送についての並列動作を制御する制御プロセッサと、 各々が前記制御プロセッサから与えられる制御信号に応
答して、前記予め定められた処理および前記画像データ
転送の実行を個々に命令する複数の実行命令手段と、 前記制御プロセッサと前記複数の実行命令手段との間で
データを転送する第1データバスと、 前記複数の実行命令手段との間でデータを転送する第2
データバスとを含む、画像データ処理装置。
23. Control processors for controlling predetermined operations for image data compression and / or image data decompression and parallel operations for image data transfer, each responsive to a control signal provided by said control processor. A plurality of execution instruction means for individually instructing execution of the predetermined processing and the image data transfer; and a first data bus for transferring data between the control processor and the plurality of execution instruction means. A second transfer data between the plurality of execution command means
An image data processing device including a data bus.
【請求項24】 画像データ圧縮および/または画像デ
ータ伸長のための離散コサイン変換処理および/または
逆離散コサイン変換処理、および、量子化処理および/
または逆量子化処理を実行する画像処理手段と、 画像データ専用に設けられた少なくとも2つのインタフ
ェース手段と、 前記画像処理手段により処理された画像データ圧縮およ
び/または画像データ伸長のためのデータを記憶する記
憶手段と、 前記インタフェース手段と前記記憶手段との間でデータ
を転送する1つのデータバスとを含む、画像データ処理
装置。
24. Discrete cosine transform processing and / or inverse discrete cosine transform processing for image data compression and / or image data decompression, and quantization processing and / or
Alternatively, image processing means for performing inverse quantization processing, at least two interface means dedicated to image data, and data for image data compression and / or image data expansion processed by the image processing means are stored. An image data processing device, comprising: a storage unit for storing data; and a data bus for transferring data between the interface unit and the storage unit.
【請求項25】 画像データ圧縮および/または画像デ
ータ伸長のための離散コサイン変換処理および/または
逆離散コサイン変換処理、および、量子化処理および/
または逆量子化処理を実行する画像処理手段と、 画像データ専用に設けられた少なくとも2つのインタフ
ェース手段と、 前記画像処理手段により処理された画像データ圧縮およ
び/または画像データ伸長のためのデータを記憶する記
憶手段と、 前記インタフェース手段ごとに設けられ、前記インタフ
ェース手段の各々と前記記憶手段との間でデータを転送
する複数のデータバスとを含む、画像データ処理装置。
25. Discrete cosine transform processing and / or inverse discrete cosine transform processing for image data compression and / or image data decompression, and quantization processing and / or
Alternatively, image processing means for performing inverse quantization processing, at least two interface means dedicated to image data, and data for image data compression and / or image data expansion processed by the image processing means are stored. And a plurality of data buses provided for each of the interface means for transferring data between each of the interface means and the storage means.
JP2093794A 1993-03-19 1994-02-18 Image data processing unit and image data processing method Pending JPH07240844A (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP2093794A JPH07240844A (en) 1993-03-19 1994-02-18 Image data processing unit and image data processing method
DE4447554A DE4447554C2 (en) 1993-03-19 1994-03-14 Device for image data processing
DE4447552A DE4447552C2 (en) 1993-03-19 1994-03-14 Image processing system performing image compression and expansion
DE19944408522 DE4408522C2 (en) 1993-03-19 1994-03-14 Device for processing image data and method for processing image data
DE4447553A DE4447553C2 (en) 1993-03-19 1994-03-14 Device for image data processing
FR9403206A FR2702862B1 (en) 1993-03-19 1994-03-18 Image data processing apparatus and method capable of processing image data at high speed.
FR9408221A FR2707779B1 (en) 1993-03-19 1994-07-04 Image data processing apparatus and method capable of processing image data at high speed.
FR9408222A FR2707780B1 (en) 1993-03-19 1994-07-04 Image data processing apparatus and method capable of processing image data at high speed.

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP6033593 1993-03-19
JP30171693 1993-12-01
JP5-60335 1993-12-01
JP5-301716 1993-12-01
JP2093794A JPH07240844A (en) 1993-03-19 1994-02-18 Image data processing unit and image data processing method

Publications (1)

Publication Number Publication Date
JPH07240844A true JPH07240844A (en) 1995-09-12

Family

ID=27283230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2093794A Pending JPH07240844A (en) 1993-03-19 1994-02-18 Image data processing unit and image data processing method

Country Status (3)

Country Link
JP (1) JPH07240844A (en)
DE (1) DE4408522C2 (en)
FR (2) FR2702862B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006042331A (en) * 2004-07-26 2006-02-09 Samsung Electronics Co Ltd Coefficient variable length coding method of four steps pipe line system and coefficient variable length coding machine
WO2006013690A1 (en) * 2004-08-04 2006-02-09 Matsushita Electric Industrial Co., Ltd. Image decoding device
JP2006186546A (en) * 2004-12-27 2006-07-13 Renesas Technology Corp Semiconductor device and method of designing the same
JP2008141276A (en) * 2006-11-30 2008-06-19 Sanyo Electric Co Ltd Tv signal processing circuit
JP2011039660A (en) * 2009-08-07 2011-02-24 Fujitsu Ltd Memory controller, image processing system and control method for memory access

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3220598B2 (en) * 1994-08-31 2001-10-22 三菱電機株式会社 Variable length code table and variable length coding device
US6330644B1 (en) * 1994-10-27 2001-12-11 Canon Kabushiki Kaisha Signal processor with a plurality of kinds of processors and a shared memory accessed through a versatile control means
DE4441295A1 (en) * 1994-11-21 1996-05-23 Sican Gmbh Method and circuit arrangement for addressing components of digital image data organized in blocks in a memory with page addressing
DE19524688C1 (en) * 1995-07-06 1997-01-23 Siemens Ag Method for decoding and encoding a compressed video data stream with reduced memory requirements
DE19524808A1 (en) * 1995-07-07 1997-01-09 Thomson Brandt Gmbh Process, encoder and decoder for resynchronization to a faulty data stream
KR0185646B1 (en) * 1996-01-06 1999-05-01 김광호 Image compression data quantity control circuit and method of image compression apparatus
DE69614500T2 (en) * 1996-02-27 2001-11-22 Stmicroelectronics S.R.L., Agrate Brianza Memory reduction for the basic profile and the main level of an MPEG-2 decoder
US6028635A (en) 1996-12-03 2000-02-22 Stmicroelectronics, Inc. Reducing the memory required for decompression by storing compressed information using DCT based techniques
JP4054503B2 (en) * 2000-01-06 2008-02-27 キヤノン株式会社 Image processing device
US20050030971A1 (en) * 2003-08-08 2005-02-10 Visionflow, Inc. Adaptive bandwidth allocation over a heterogeneous system interconnect delivering true bandwidth-on-demand

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3545106A1 (en) * 1985-12-19 1987-06-25 Ruge I Circuit for image data reduction, pattern recognition and so forth
US4800441A (en) * 1986-02-28 1989-01-24 Kabushiki Kaisha Toshiba Binary data compression and expansion processing apparatus
EP0422299B1 (en) * 1989-10-12 1994-09-07 International Business Machines Corporation Memory with page mode
CA2062200A1 (en) * 1991-03-15 1992-09-16 Stephen C. Purcell Decompression processor for video applications

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006042331A (en) * 2004-07-26 2006-02-09 Samsung Electronics Co Ltd Coefficient variable length coding method of four steps pipe line system and coefficient variable length coding machine
US7995655B2 (en) 2004-07-26 2011-08-09 Samsung Electronics Co., Ltd. Pipelined coefficient variable length coding
WO2006013690A1 (en) * 2004-08-04 2006-02-09 Matsushita Electric Industrial Co., Ltd. Image decoding device
JPWO2006013690A1 (en) * 2004-08-04 2008-05-01 松下電器産業株式会社 Image decoding device
JP4668914B2 (en) * 2004-08-04 2011-04-13 パナソニック株式会社 Image decoding device
US8428126B2 (en) 2004-08-04 2013-04-23 Panasonic Corporation Image decoding device with parallel processors
JP2006186546A (en) * 2004-12-27 2006-07-13 Renesas Technology Corp Semiconductor device and method of designing the same
JP4678717B2 (en) * 2004-12-27 2011-04-27 ルネサスエレクトロニクス株式会社 Semiconductor device and method for designing semiconductor device
JP2008141276A (en) * 2006-11-30 2008-06-19 Sanyo Electric Co Ltd Tv signal processing circuit
US8311123B2 (en) 2006-11-30 2012-11-13 Semiconductor Components Industries, Llc TV signal processing circuit
JP2011039660A (en) * 2009-08-07 2011-02-24 Fujitsu Ltd Memory controller, image processing system and control method for memory access

Also Published As

Publication number Publication date
DE4408522C2 (en) 1996-12-05
DE4408522A1 (en) 1994-09-22
FR2707779A1 (en) 1995-01-20
FR2707779B1 (en) 1997-04-30
FR2702862A1 (en) 1994-09-23
FR2702862B1 (en) 1996-06-28

Similar Documents

Publication Publication Date Title
US5774206A (en) Process for controlling an MPEG decoder
US5576765A (en) Video decoder
US5812791A (en) Multiple sequence MPEG decoder
CN1934866B (en) A video decoding device
US5675331A (en) Decoding device for decoding a variety of code signals
JPH06326996A (en) Method and equipment for decoding compressed video data
US6157740A (en) Compression/decompression engine for enhanced memory storage in MPEG decoder
JPH0799659A (en) Nonexhaustive movement estimation method
JPH08280007A (en) Processor and transfer method
US20050152451A1 (en) Video coding system
JPH06326615A (en) Method and equipment for decoding code stream comprising variable-length codes
JPH07240844A (en) Image data processing unit and image data processing method
JPH08275160A (en) Discrete cosine conversion method
Toyokura et al. A video DSP with a macroblock-level-pipeline and a SIMD type vector-pipeline architecture for MPEG2 CODEC
JP3615241B2 (en) Video data decoder architecture
US5844609A (en) Decoder and method for decoding of coded picture-, video- and film information
CN1235483A (en) Prediction filter
JPH08275149A (en) Data coding method
US7076105B2 (en) Circuit and method for performing a two-dimensional transform during the processing of an image
US7330595B2 (en) System and method for video data compression
JP2947389B2 (en) Image processing memory integrated circuit
WO2002087248A2 (en) Apparatus and method for processing video data
WO1995001053A1 (en) Image processor
US5805483A (en) Method of converting data outputting sequence in inverse DCT and circuit thereof
JP2005184829A (en) Low power, high performance transform coprocessor for video compression

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011023