JPH1032785A - Memory multiplexing system for highly precise video decoder - Google Patents

Memory multiplexing system for highly precise video decoder

Info

Publication number
JPH1032785A
JPH1032785A JP11178496A JP11178496A JPH1032785A JP H1032785 A JPH1032785 A JP H1032785A JP 11178496 A JP11178496 A JP 11178496A JP 11178496 A JP11178496 A JP 11178496A JP H1032785 A JPH1032785 A JP H1032785A
Authority
JP
Japan
Prior art keywords
bit
memory
data
latch
value
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
JP11178496A
Other languages
Japanese (ja)
Inventor
Philips Lally
フィリップス ラリー
Dave Guhanshuyamu
デイブ グハンシュヤム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP11178496A priority Critical patent/JPH1032785A/en
Publication of JPH1032785A publication Critical patent/JPH1032785A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To reduce an area on an integrated circuit used for transferring data by permitting a latch multiplexer to convert a high pass band data stream into plural low pass data streams. SOLUTION: Memories 204 and 206 integrate buffering memories used by various processing units in a decoder, in a single position. Data from the RAC input memory 204 are given to a latch multiplexers 210, 214 and 216. Data are given to the RAC output memory 206 through a RAC output memory interface 224. The latch multiplexers 210, 214 and 216 sequentially operate so that data are more frequently loaded on the latch multiplexer operating as a high pass band data channel than on the latch multiplexer operating as a low band data channel. Thus, the constitution of a whole circuit becomes economic.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の分野】本発明は、ビデオ復号器における高帯域
メモリの管理に関し、特に、復号化プロセッサと高帯域
メモリとの間でデータを転送するのに用いられる集積回
路上の領域を大幅に減少させるメモリデータマルチプレ
クシングシステムに関する。
FIELD OF THE INVENTION The present invention relates to the management of high bandwidth memory in video decoders, and in particular, significantly reduces the area on an integrated circuit used to transfer data between a decoding processor and the high bandwidth memory. And a memory data multiplexing system.

【0002】[0002]

【発明の背景】米国では、ディジタル的に符号化された
高精細度テレビジョン(HDTV)信号用についてある
規格が提案されている。この規格は、国際標準化機構
(ISO)のムービング・ピクチャ・エキスパート・グ
ループ(MPEG)により提案されているMPEG−2
規格と本質的には同じである。この規格は、「情報技術
−動画およびそれに付随する音声の生成符号化、勧告
H.626」(ISO/IEC13818−2、IS、
94年11月)と題された国際規格(IS)公報中に記
載されている。この公報はISOから入手可能であり、
本願明細書も、そのMPEG−2ディジタルビデオ符号
化規格に関する教示については参考として援用してい
る。
BACKGROUND OF THE INVENTION In the United States, certain standards have been proposed for digitally encoded high definition television (HDTV) signals. This standard is the MPEG-2 standard proposed by the Moving Picture Experts Group (MPEG) of the International Standards Organization (ISO).
It is essentially the same as the standard. This standard is described in "Information Technology-Generating and Coding of Moving Pictures and Associated Audio, Recommendation H.626" (ISO / IEC 13818-2, IS,
(November 1994). This publication is available from ISO,
This specification is also incorporated by reference for its teachings regarding the MPEG-2 Digital Video Coding Standard.

【0003】提案されているHDTV規格に従って符号
化されたテレビジョン信号は、従来のテレビジョンチャ
ネルの6MHzの帯域幅の中に適合するRF信号を用い
て伝送される。しかしながら、この規格に従って符号化
されたビデオ画像は、1秒間に9400万個もの画素を
伝える非常に高いデータレートをもつことがある。伝送
チャネルの帯域幅が比較的狭く、再生される画像のデー
タレートが比較的高いことから、伝送された信号は大幅
な圧縮を受けることになる。したがって、受信された信
号は、圧縮された伝送データから高いデータレートをも
つビデオ信号を復元するために膨大な処理を受けること
になる。圧縮データおよび非圧縮データ用のフォーマッ
ト、ならびにデータの圧縮解除に用いられる各処理ステ
ップは、いずれも前述のMPEG規格により規定されて
いる。
[0003] Television signals encoded according to the proposed HDTV standard are transmitted using RF signals that fit within the 6 MHz bandwidth of conventional television channels. However, video images encoded according to this standard can have very high data rates, carrying as many as 94 million pixels per second. Due to the relatively narrow bandwidth of the transmission channel and the relatively high data rate of the reproduced image, the transmitted signal will undergo significant compression. Therefore, the received signal undergoes enormous processing in order to recover a video signal having a high data rate from the compressed transmission data. The format for compressed data and uncompressed data, and each processing step used for decompressing data, are all defined by the above-mentioned MPEG standard.

【0004】「高帯域メモリを有するMPEGビデオ復
号器」と題された以前の特許出願(第08/330,5
79号)に記載されているように、入力ビットストリー
ムと、動き補償処理に用いられる参照画像と、その入力
ビットストリームを復号化する処理回路とは別のメモリ
に表示されることになる画像と、を格納することが望ま
しい。しかしながら、復号化された画像をリアルタイム
で十分に生成できるほどすばやく復号器の各部分から与
えられたすべてのリクエストを処理するためには、メモ
リが比較的高い帯域幅をもつことが望ましい。
An earlier patent application entitled "MPEG Video Decoder with High Bandwidth Memory" (08 / 330,5)
No. 79), an input bit stream, a reference image used for motion compensation processing, and an image to be displayed in a separate memory from a processing circuit for decoding the input bit stream. , It is desirable to store. However, it is desirable for the memory to have a relatively high bandwidth in order to process all requests from each part of the decoder quickly enough to be able to generate decoded images in real time.

【0005】高帯域メモリを用いるシステムは、上に引
用した米国特許出願に開示されている。このタイプのシ
ステムを図1に示す。このシステムは、3つの主要構成
要素を備えている。すなわち、MPEGで符号化された
ビデオ信号を復号化するのに必要なすべての回路を含ん
でいるプロセッサ110と、集積回路110の初期化、
および復号器の動作モード設定に用いられる制御マイク
ロプロセッサ114と、受け取ったままのMPEGビッ
トストリーム、動き補償復号化に用いられる参照画像、
および表示される画像を保持する中央メモリ112と、
の3つのである。図1に示すシステムで用いられ、また
本発明の実施例でも用いられるメモリ112は、NEC
および東芝から入手可能なRAMBUSメモリシステム
である。このメモリシステムは、「RDRAM基準マニ
ュアル」と題された仕様書に記載されており、本願明細
書も参考としてこれを援用している。一例として挙げた
このシステムは、それぞれ32メガビットのアレイを3
つ配置した96メガビットのメモリを用いており、各ア
レイは64ビットのデータワードを供給する。
A system using high bandwidth memory is disclosed in the above-cited US patent application. This type of system is shown in FIG. This system has three main components. That is, a processor 110 including all the circuits necessary for decoding a video signal encoded by MPEG, initialization of the integrated circuit 110,
A control microprocessor 114 used for setting the operation mode of the decoder and the MPEG bit stream as received, a reference image used for motion compensated decoding,
And a central memory 112 for holding images to be displayed;
The three. The memory 112 used in the system shown in FIG. 1 and also used in the embodiment of the present invention is an NEC 112
And a RAMBUS memory system available from Toshiba. This memory system is described in a specification entitled "RDRAM Reference Manual", which is incorporated herein by reference. The system, taken as an example, has three 32-megabit arrays each
Each array supplies 64 bits of data words using a 96 megabit memory arrangement.

【0006】簡単に説明すれば、図1に示すシステムは
以下のように動作する。MPEG−2で符号化されたビ
ットストリームはルータ122に与えられ、ルータ12
2は、このビットストリームを2つの部分に分割する。
これらの部分は、可変長復号器128および132によ
りそれぞれ処理される。このビットストリームは、受信
されたままの状態でバッファメモリ124に格納され
る。こうして、十分な数のビットが格納されると、この
ビットストリームは、RAMBUS ASICセル(R
AC)インタフェース118およびRAC116を介し
てメモリ112に転送される。図1に示すように、RA
Cインタフェース回路118への入力は、192ビット
のビット幅をもつバスである。
[0006] Briefly, the system shown in FIG. 1 operates as follows. The bit stream encoded by MPEG-2 is provided to the router 122,
2 divides this bitstream into two parts.
These parts are processed by variable length decoders 128 and 132, respectively. This bit stream is stored in the buffer memory 124 as received. Thus, when a sufficient number of bits have been stored, this bit stream is stored in a RAMBUS ASIC cell (R
AC) is transferred to the memory 112 via the interface 118 and the RAC 116. As shown in FIG.
The input to the C interface circuit 118 is a bus having a bit width of 192 bits.

【0007】また、データは、RAC116およびRA
Cインタフェース118を介してメモリ112から取り
出され、VLDプロセッサ128および132、半画素
補間回路144、ならびに表示メモリ148にそれぞれ
与えられる。図1に示すシステム例では、メモリ112
から取り出されたデータは、192ビットのバスを用い
て回路110中で転送される。
Further, data is stored in RAC 116 and RA
The data is retrieved from the memory 112 via the C interface 118 and supplied to the VLD processors 128 and 132, the half-pixel interpolation circuit 144, and the display memory 148, respectively. In the system example shown in FIG.
Are transferred in the circuit 110 using a 192-bit bus.

【0008】各種プロセッサは、192ビットのバスに
より与えられたデータをそれが受け取られた時のレート
のままで処理することはできないので、それぞれのサブ
プロセッサはバッファメモリを含んでいる。例えば、V
LDプロセッサ132および128にそれぞれ接続され
たメモリ130および126が一例として挙げられる。
これらのメモリはそれぞれ、専用のアドレス復号化ロジ
ックを有している。また、これらのメモリは、192ビ
ットのバスからデータを受け取り、かつ必要な場合には
そのデータを各サブプロセッサに与えることができるよ
うに接続されている。
Each of the sub-processors includes a buffer memory because various processors cannot process data provided by the 192 bit bus at the rate at which it was received. For example, V
One example is memories 130 and 126 connected to LD processors 132 and 128, respectively.
Each of these memories has dedicated address decoding logic. These memories are also connected so that they can receive data from the 192-bit bus and supply the data to each sub-processor when necessary.

【0009】図1に示すシステム例では、メモリ112
からのビットストリームデータは、メモリ126および
130に転送される。転送されたデータは、各VLDプ
ロセッサ128および132によりこれらのメモリから
抽出される。各VLDプロセッサは、可変長符号化され
たデータを固定長符号化されたデータへと変換する。変
換されたデータは、逆量子化および逆離散コサイン変換
処理回路134に与えられる。データは、先入れ先出し
メモリ(FIFO)129および133をそれぞれ介し
てVLD128および132からプロセッサ134へと
転送される。
In the example of the system shown in FIG.
Are transferred to the memories 126 and 130. The transferred data is extracted from these memories by each VLD processor 128 and 132. Each VLD processor converts variable-length coded data into fixed-length coded data. The converted data is supplied to the inverse quantization and inverse discrete cosine transform processing circuit 134. Data is transferred from VLDs 128 and 132 to processor 134 via first-in-first-out memories (FIFOs) 129 and 133, respectively.

【0010】プロセッサ134により与えられたデータ
は、画素データまたは差分画素データからなるマクロブ
ロックのかたちである。このデータは、プロセッサ13
4によりFIFOメモリ133および135に与えら
れ、半画素補間回路144の制御のもとに加算器136
および138によりそれぞれ処理される。
The data provided by the processor 134 is in the form of a macroblock consisting of pixel data or difference pixel data. This data is stored in the processor 13
4 to the FIFO memories 133 and 135, and the adder 136 is controlled under the control of the half-pixel interpolation circuit 144.
And 138 respectively.

【0011】回路144は、2つの経路を通ってプロセ
ッサ134から受け取られたデータの処理を制御する。
この回路は、画素値を表すデータが変更されずに通過す
ることを可能にし、また、差分画素値を表すデータを、
参照メモリデータから得られた画素データと組み合わせ
る。この参照メモリデータは、複数のメモリ146を介
して回路144へ与えられる。図1に示すように、これ
ら複数のメモリ146はそれぞれ、RACインタフェー
ス回路118を介してメモリ112からデータを受け取
る。次に、このデータは8ビットのバスを介してメモリ
146から半画素補間回路144へと与えられる。
Circuit 144 controls the processing of data received from processor 134 via two paths.
This circuit allows the data representing the pixel value to pass through unaltered, and the data representing the difference pixel value to:
Combine with pixel data obtained from reference memory data. This reference memory data is provided to the circuit 144 via the plurality of memories 146. As shown in FIG. 1, each of the plurality of memories 146 receives data from the memory 112 via the RAC interface circuit 118. Next, this data is supplied from the memory 146 to the half-pixel interpolation circuit 144 via the 8-bit bus.

【0012】回路144は、メモリ146により与えら
れたデータから、複数の画素からなる参照ブロックを発
生し、かつこれらの参照ブロックを、FIFO133お
よび135を介して回路134により与えられた各ブロ
ックと組み合わせる。加算およびクリップ回路136お
よび138では、プロセッサ134により与えられたデ
ータに対して1度に1画素ずつ参照データが加えられ
る。これらの回路136および138により与えられた
出力画素値は、メモリ140および142にそれぞれ与
えられる。これらのメモリはそれぞれ、1度に8ビット
ずつ画素値を受け取り、かつ、これらの値を統合するこ
とによって、1度に192ビットのデータを出力し、R
ACインタフェース118を介してメモリ112に格納
されるようにする。
The circuit 144 generates reference blocks consisting of a plurality of pixels from the data provided by the memory 146, and combines these reference blocks with each block provided by the circuit 134 via FIFOs 133 and 135. . In addition and clipping circuits 136 and 138, reference data is added one pixel at a time to the data provided by processor 134. The output pixel values provided by these circuits 136 and 138 are provided to memories 140 and 142, respectively. Each of these memories receives pixel values 8 bits at a time and outputs 192 bits of data at a time by integrating these values.
The data is stored in the memory 112 via the AC interface 118.

【0013】メモリ140および142により与えられ
たデータは、復号化された画像データを表す。このデー
タはメモリ112に格納されて、半画素補間回路144
用の参照画像データとして用いられるか、または表示用
にメモリ148に与えられる。
The data provided by memories 140 and 142 represent the decoded image data. This data is stored in the memory 112 and the half-pixel interpolation circuit 144
Used as reference image data for display or provided to the memory 148 for display.

【0014】上述した回路では、高帯域メモリ112か
らのデータは、広い(すなわち192ビットの)バスを
用いてプロセッサ110の各構成要素に転送され、ま
た、このバスによって、RACインタフェース回路11
8と、この回路の周辺に構成された複数のメモリのそれ
ぞれとの間に接続がなされる。このような構成には、回
路中に192ビットのバスを経路として設けると、チッ
プ上の比較的大きな領域が必要になるという問題があっ
た。
In the circuit described above, data from the high bandwidth memory 112 is transferred to each component of the processor 110 using a wide (ie, 192 bit) bus, which also provides access to the RAC interface circuit 11.
8 and each of a plurality of memories formed around the circuit. Such a configuration has a problem that if a 192-bit bus is provided as a path in a circuit, a relatively large area on a chip is required.

【0015】[0015]

【発明の要旨】本発明は、高帯域メモリが複数のラッチ
マルチプレクサに接続されているビデオ復号器であっ
て、それらのラッチマルチプレクサがそれぞれ高帯域デ
ータストリームを複数の低帯域データストリームに変換
する、ビデオ復号器のかたちで実現される。これらのラ
ッチマルチプレクサはそれぞれ、高帯域メモリから比較
的多くの量のデータを受け取るラッチと、そのラッチに
よって保持されたデータを順番づけることによって、比
較的低帯域の複数のデータパスを介して復号器の各種副
処理ユニットへとそのデータを供給するマルチプレクサ
と、を備えている。このマルチプレクシング動作は、高
帯域メモリがそれ以外の複数のラッチマルチプレクサ回
路にデータを与えている間におこなわれる。これらのラ
ッチマルチプレクサは、高帯域データチャネルとして作
用するラッチマルチプレクサには、低帯域データチャネ
ルとして作用するラッチマルチプレクサよりも頻繁にロ
ードがなされるように、シーケンシャルに動作する。
SUMMARY OF THE INVENTION The present invention is a video decoder in which a high bandwidth memory is connected to a plurality of latch multiplexers, each of which converts a high bandwidth data stream into a plurality of low bandwidth data streams. It is realized in the form of a video decoder. Each of these latch multiplexers receives a relatively large amount of data from a high-bandwidth memory and orders the data held by the latch to provide a decoder through a plurality of relatively low-bandwidth data paths. And a multiplexer for supplying the data to various sub-processing units. This multiplexing operation is performed while the high-bandwidth memory supplies data to the other plurality of latch multiplexer circuits. These latch multiplexers operate sequentially so that the latch multiplexer acting as a high bandwidth data channel is loaded more frequently than the latch multiplexer acting as a low bandwidth data channel.

【0016】[0016]

【詳細な説明】図2に示される回路は、以下のように動
作する。中央メモリ112に保持されたデータは、RA
MBUS ASICセル(RAC)116およびRAC
インタフェース118を介してRAC入力メモリ204
に与えられ、RAC出力メモリ206からメモリ112
へ、やはりRACインタフェース118およびRAC1
16を介して与えられる。RACインタフェース11
8、RAC116および中央メモリ112の構成および
機能は、前述の特許出願第08/330,579号に記
載されている。以下の記述においては、RACインタフ
ェース118とメモリ112との間のデータ転送は、上
記参照された特許出願に記載されているように動作する
とし、よって詳細には記載しない。
DETAILED DESCRIPTION The circuit shown in FIG. 2 operates as follows. The data held in the central memory 112 is RA
MBUS ASIC Cell (RAC) 116 and RAC
RAC input memory 204 via interface 118
From the RAC output memory 206 to the memory 112
To the RAC interface 118 and RAC1
16. RAC interface 11
8, the configuration and function of the RAC 116 and the central memory 112 are described in the aforementioned patent application Ser. No. 08 / 330,579. In the following description, data transfer between the RAC interface 118 and the memory 112 operates as described in the above-referenced patent application and will not be described in detail.

【0017】メモリ204および206は、復号器にお
けるさまざまな処理ユニットによって用いられるバッフ
ァリングメモリを単一の位置に統合する。このメモリに
よって、集積回路の周囲で、従来ほど分散されてはいな
いメモリを使用することが可能になるので、回路全体の
構成がより経済的になる。また、192ビットバスをラ
ッチマルチプレクサの入力ポートに統合することによっ
て、バスによって使用される集積回路の部分が減少す
る。
[0017] Memories 204 and 206 consolidate the buffering memory used by the various processing units in the decoder into a single location. This memory makes it possible to use a less distributed memory around the integrated circuit, thus making the overall circuit configuration more economical. Also, by integrating the 192-bit bus into the input port of the latch multiplexer, the portion of the integrated circuit used by the bus is reduced.

【0018】RAC入力メモリ204からのデータは、
ラッチマルチプレクサ210、214および216に与
えられる。データは、RAC出力メモリ206に、RA
C出力メモリインタフェース224を介して与えられ
る。データは、DRAM制御回路120’の制御のもと
で、RAMBUSメモリ112とRACインタフェース
118との間で転送される。ラッチマルチプレクサ21
0、214および216のそれぞれは、192ビットパ
ラレルデータストリームをより小さいデータストリーム
に変換する。例えば、ラッチマルチプレクサ210a、
210bおよび210cは、それぞれ、192ビットデ
ータストリームをVLDプロセッサ134、132およ
び130のうちの1つについてそれぞれ32ビットデー
タストリームに変換する。RAC入力メモリ204とラ
ッチマルチプレクサ210、214および216との
間、ならびにRAC出力メモリインタフェース224と
RAC出力メモリ206との間のデータ転送は、ラッチ
マルチプレクサ制御回路212によって制御される。わ
かりやすくするために、回路212、ラッチマルチプレ
クサ210、214および216、ならびにRAC出力
メモリインタフェース224の間の接続は、図2には示
されていない。
The data from the RAC input memory 204 is
Latch multiplexers 210, 214 and 216. The data is stored in the RAC output memory 206 as RA
It is provided via a C output memory interface 224. Data is transferred between the RAMBUS memory 112 and the RAC interface 118 under the control of the DRAM control circuit 120 '. Latch multiplexer 21
Each of 0, 214 and 216 converts a 192-bit parallel data stream into a smaller data stream. For example, the latch multiplexer 210a,
210b and 210c each convert a 192-bit data stream into a 32-bit data stream for one of VLD processors 134, 132 and 130, respectively. Data transfer between the RAC input memory 204 and the latch multiplexers 210, 214 and 216 and between the RAC output memory interface 224 and the RAC output memory 206 is controlled by a latch multiplexer control circuit 212. For clarity, the connections between circuit 212, latch multiplexers 210, 214 and 216, and RAC output memory interface 224 are not shown in FIG.

【0019】図2に示すシステムにおいては、MPEG
−2で符号化されたビットストリームは、プログラムエ
レメンタリストリーム(PES)パケットとしてPES
分解器(parser)220に与えられる。分解器220
は、ビットストリームデータをPESパケットから抽出
し、それをRAC出力メモリインタフェース224に与
える。RAC出力メモリインタフェース224について
は、図5を参照して以下に述べる。また、PES分解器
220は、タイミング情報をPESパケットから抽出
し、この情報をクロック復元およびタイミング回路22
2に与える。この回路は、例えば、図2に示す回路によ
って用いられる内部クロック信号のすべてを発生するデ
ィジタルフェーズロックループ(不図示)を含んでいて
もよい。
In the system shown in FIG.
-2 encoded bit stream is a PES (Program Elementary Stream) packet.
It is provided to a parser 220. Decomposer 220
Extracts the bit stream data from the PES packet and provides it to the RAC output memory interface 224. The RAC output memory interface 224 is described below with reference to FIG. The PES decomposer 220 also extracts timing information from the PES packet, and extracts this information from the clock recovery and timing circuit 22.
Give to 2. This circuit may include, for example, a digital phase locked loop (not shown) that generates all of the internal clock signals used by the circuit shown in FIG.

【0020】ビットストリームデータは、RAC出力メ
モリインタフェース224によってRAC出力メモリ2
06に書き込まれる。図2に示す回路は、3つのVLD
プロセッサを用いるので、ビットストリームは、3つの
パーティション(partitions)に分けられる。これらの
パーティションのうちの1つは、シーケンスヘッダ、グ
ループオブピクチャのヘッダ、およびピクチャヘッダの
ような高レベル構造だけを含んでいる。他の2つのパー
ティションは、スライスレコードを含む。MPEG−2
で符号化されたビットストリームの交互に位置するスラ
イスレコードは、他の2つのパーティションのそれぞれ
に交互に置かれる。
The bit stream data is supplied to the RAC output memory 2 by the RAC output memory interface 224.
06 is written. The circuit shown in FIG.
Using a processor, the bitstream is divided into three partitions. One of these partitions contains only high-level structures such as sequence headers, group of picture headers, and picture headers. The other two partitions contain slice records. MPEG-2
The alternating slice records of the bitstream coded in are alternately placed in each of the other two partitions.

【0021】ビットストリームデータがこれら3つのパ
ーティションから読まれるとき、ビットストリームデー
タは、それぞれのラッチマルチプレクサ210a、21
0bおよび210cに与えられる。ラッチマルチプレク
サ210aが、データを第1のパーティションから高レ
ベル処理VLDプロセッサ134に与えるいっぽう、ラ
ッチマルチプレクサ210bおよび210cは、データ
を第2および第3のパーティションからそれぞれのスラ
イスおよび低レベルVLD復号器132および130に
それぞれ与える。VLDプロセッサ130、132およ
び134は、可変長符号化されたビットストリームを固
定長符号に変換し、この固定長符号は、それから逆量子
化およびIDCTプロセッサ134’に与えられる。プ
ロセッサ134’は、図1を参照して上述したプロセッ
サ134と同じ機能を備えている。
When the bit stream data is read from these three partitions, the bit stream data is read from the respective latch multiplexers 210a, 21a.
0b and 210c. Latch multiplexer 210a provides data from the first partition to high-level processing VLD processor 134, while latch multiplexers 210b and 210c provide data from the second and third partitions to respective slice and low-level VLD decoders 132 and 130 respectively. VLD processors 130, 132 and 134 convert the variable length coded bit stream to a fixed length code, which is then provided to an inverse quantization and IDCT processor 134 '. Processor 134 'has the same functions as processor 134 described above with reference to FIG.

【0022】プロセッサ134’によって与えられたデ
ータは、画素データまたは差分画素データからなるブロ
ックのかたちをとる。差分画素データは、加算回路13
6および138に与えられ、ここでそれらのデータは、
半画素補間回路144によって与えられる参照画像から
の対応する画素データと組み合わされる。この回路は、
図1を参照して上述した回路144と同じでもよい。
The data provided by the processor 134 'takes the form of blocks of pixel data or differential pixel data. The difference pixel data is added to the addition circuit 13
6 and 138, where the data is
It is combined with the corresponding pixel data from the reference image provided by the half-pixel interpolation circuit 144. This circuit is
It may be the same as the circuit 144 described above with reference to FIG.

【0023】回路144は、参照画像画素データをRA
C入力メモリ204およびラッチマルチプレクサ214
から受け取る。ラッチマルチプレクサ214a、214
b、214cおよび214dのそれぞれは、参照画像デ
ータを1度に192ビット受け取り、このデータを1度
に8ビットだけ回路144に与える。
The circuit 144 converts the reference image pixel data into RA
C input memory 204 and latch multiplexer 214
Receive from Latch multiplexers 214a, 214
Each of b, 214c and 214d receives 192 bits of reference image data at a time and supplies this data to the circuit 144 only 8 bits at a time.

【0024】加算回路136および138は、復号化さ
れた画素データをRAC出力メモリインタフェース22
4に与え、こんどはこのインタフェース224は、復号
化された画像データをRAC出力メモリ206に格納す
る。この復号化された画像データは、動き補償符号化さ
れた差分画素値を復号化するための参照画像として、ま
た表示されるべき出力画像のための参照画像として用い
られる。
The adder circuits 136 and 138 output the decoded pixel data to the RAC output memory interface 22.
4, the interface 224 stores the decoded image data in the RAC output memory 206. The decoded image data is used as a reference image for decoding the motion compensated difference pixel value and a reference image for an output image to be displayed.

【0025】表示画像のためのデータは、RAC入力メ
モリからラッチマルチプレクサ216に与えられる。ラ
ッチマルチプレクサ216Y、216Uおよび216V
は、それぞれ1度にデータを192ビット受け取り、画
像の互いに異なる成分の信号(すなわちY、Uおよび
V)をディスプレイプロセッサ218に8ビットのデー
タストリームとして与える。プロセッサ218は、Y、
UおよびV信号を表示デバイス(不図示)に与えて、復
号化された画像を再生する。
Data for the display image is provided to the latch multiplexer 216 from the RAC input memory. Latch multiplexers 216Y, 216U and 216V
Receives 192 bits of data at a time, and provides signals of different components of the image (ie, Y, U and V) to the display processor 218 as an 8-bit data stream. The processor 218 has Y,
The U and V signals are provided to a display device (not shown) to reproduce the decoded image.

【0026】図3は、図2の復号器の部分をより詳細に
示すブロック図である。図2においては、ラッチマルチ
プレクサ210、214および216は、システムの周
囲に分散しているように示されているが、これらのデバ
イスは、本発明の実施例においては、図3に示すように
隣接している。このように実現することは、192ビッ
トバスの長さを減らし、その結果、集積回路上でバスが
占有する領域を減らすので、有利である。
FIG. 3 is a block diagram showing the decoder part of FIG. 2 in more detail. Although the latch multiplexers 210, 214 and 216 are shown in FIG. 2 as being distributed around the perimeter of the system, these devices are adjacent in an embodiment of the present invention as shown in FIG. doing. This implementation is advantageous because it reduces the length of the 192-bit bus and consequently the area occupied by the bus on the integrated circuit.

【0027】図3に示すように、RAC入力メモリ20
4は、32ビット、320ワードメモリ6個からできて
いる。RAC入力アドレスおよび制御ロジック121
は、制御データの20ビットをメモリ204に与える。
この制御データは、6個のメモリのすべてにパラレルに
与えられる9つのライトアドレスビットおよび9つのリ
ードアドレスビットと、クロック信号と、ライトイネー
ブル信号とを含む。メモリ204は、RACインタフェ
ース118からデータを受け取るために192ビットの
システムバスに接続されている。アドレスおよび制御ロ
ジック121は、また、RACインタフェース118と
通信をおこなうために29ビットの双方向バスを用い
る。このバスは、回路121がメモリリード動作をRA
Cインタフェース118と対等におこなうことを可能に
するために双方向である。RACインタフェース118
は、与えられるデータの種類を示すために、データを回
路121およびメモリ204に送る。回路121は、メ
モリ204のステータスについてのデータをRACイン
タフェース118に送る。回路121は、また、メモリ
204の中のどのメモリロケーションがデータを保持す
るのに使用可能であるか、およびどのメモリロケーショ
ンがラッチマルチプレクサ回路に与えられる予定のデー
タをもっているかの情報を把握する。
As shown in FIG. 3, the RAC input memory 20
4 is made up of six 32-bit, 320-word memories. RAC input address and control logic 121
Supplies 20 bits of control data to the memory 204.
The control data includes nine write address bits and nine read address bits applied to all six memories in parallel, a clock signal, and a write enable signal. The memory 204 is connected to a 192-bit system bus for receiving data from the RAC interface 118. The address and control logic 121 also uses a 29-bit bi-directional bus to communicate with the RAC interface 118. This bus allows the circuit 121 to perform a memory read operation
It is bi-directional to allow it to be performed equally with the C interface 118. RAC interface 118
Sends data to circuit 121 and memory 204 to indicate the type of data provided. Circuit 121 sends data about the status of memory 204 to RAC interface 118. Circuit 121 also keeps track of which memory locations in memory 204 are available to hold data and which memory locations have data to be provided to the latch multiplexer circuit.

【0028】RAC入力メモリ204によって与えられ
るデータは、ラッチバンク1の中の7つの192ビット
ラッチ309a〜309gのうちの1つにルーティング
される。ラッチ309a〜309gは、メモリ204に
よって与えられるデータを共通の192ビットバスを介
して受け取るように接続されている。それぞれのラッチ
は、VLD、参照および表示マルチプレクサ制御および
ラッチゲートロジック回路314によって与えられるそ
れぞれのイネーブル信号に応答して、バス上に現れるデ
ータを格納するためにイネーブルされる。ロジック回路
314は、7つのイネーブル信号を供給し、それらの1
つ1つは、ラッチ309a〜309gのうちのそれぞれ
に対応している。
Data provided by RAC input memory 204 is routed to one of seven 192-bit latches 309a-309g in latch bank 1. Latches 309a-309g are connected to receive data provided by memory 204 via a common 192-bit bus. Each latch is enabled to store data appearing on the bus in response to a respective enable signal provided by the VLD, reference and display multiplexer control and latch gate logic circuit 314. Logic circuit 314 provides seven enable signals, one of them.
Each one corresponds to one of the latches 309a-309g.

【0029】これらのイネーブル信号のうちの1つに応
答して、ラッチ309a〜309gのうちの対応する1
つは、その時点でバスBIを介して転送されている19
2ビットのデータを格納する。後述するように、データ
は、メモリ204からラッチマルチプレクサ210、2
14および216に、データが復号器によってどのよう
に用いられるかに依存して変わるレートで転送される。
In response to one of these enable signals, a corresponding one of latches 309a-309g is
One is being transferred over the bus BI at that time.
Stores 2-bit data. As will be described later, the data is transferred from the memory 204 to the latch multiplexers 210 and 2.
14 and 216 are transferred at a rate that varies depending on how the data is used by the decoder.

【0030】ラッチバンク1の中のラッチ309a、3
09b、309c、309e、309fおよび309g
にあるデータは、ラッチバンク2の対応するラッチ31
0a、310b、310c、310h、310iおよび
310jに与えられる。しかしラッチ309dにあるデ
ータは、ラッチバンク2の4つのラッチ310d、31
0e、310fおよび310gのうちの選択された1つ
に与えられる。ラッチバンク1によって用いられる回路
量を減らすために、バンク1のラッチ309dは、バン
ク2の4つのラッチのために機能するように構成されて
いる。これは、部分的には、参照画像データが与えられ
るレートは、ビットストリームデータがVLDプロセッ
サに与えられるレートに比べて低いために、可能であ
る。
The latches 309a, 3a in the latch bank 1
09b, 309c, 309e, 309f and 309g
Is stored in the corresponding latch 31 of the latch bank 2.
0a, 310b, 310c, 310h, 310i and 310j. However, the data in the latch 309d is stored in the four latches 310d and 31 in the latch bank 2.
0e, 310f and 310g. To reduce the amount of circuitry used by Latch Bank 1, Latch 309d in Bank 1 is configured to function for the four latches in Bank 2. This is possible in part because the rate at which the reference image data is provided is lower than the rate at which the bitstream data is provided to the VLD processor.

【0031】ラッチ310a〜310jは、192ビッ
トのデータをそれぞれラッチマルチプレクサ312a〜
312jに与える。マルチプレクサは、ラッチによって
与えられるデータの部分が、図2に示すMPEG−2デ
コーダ回路の中のそれぞれの処理回路に与えられるよう
に選択する。例えば、マルチプレクサ312aは、ラッ
チ310aによって保持された192ビットのデータ
を、各32ビットの複数のセグメントに分割する。そし
て、これらのセグメントは、図2に示すVLDレベル処
理回路134に与えられる。マルチプレクサ312a、
312bおよび312cは、それぞれ、ラッチ310
a、310bおよび310cの対応する1つによって保
持された192ビットのデータにアクセスし、32ビッ
トのデータをVLDプロセッサ134、132および1
30のうちの対応する1つに与える。
Latches 310a to 310j store 192 bits of data in latch multiplexers 312a to 312a, respectively.
312j. The multiplexer selects such that the portion of data provided by the latch is provided to a respective processing circuit in the MPEG-2 decoder circuit shown in FIG. For example, the multiplexer 312a divides the 192-bit data held by the latch 310a into a plurality of 32-bit segments. These segments are provided to the VLD level processing circuit 134 shown in FIG. Multiplexer 312a,
312b and 312c, respectively, are latches 310
a, 310b and 310c to access the 192 bits of data held by the corresponding one of them and convert the 32 bits of data to VLD processors 134, 132 and 1
Give to the corresponding one of the 30.

【0032】マルチプレクサ312d〜312jは、そ
れぞれ、ラッチ310d〜310jのうちの対応する1
つによって保持された192ビットのデータにアクセス
し、そのデータを各8ビットの複数のセグメントに分
け、1度に8ビットずつのデータを図2に示す復号器の
各要素に与える。マルチプレクサ312d〜312g
は、参照画像データを半画素補間回路144に与え、い
っぽうマルチプレクサ312h〜312jは、データを
ディスプレイプロセッサ218に与える。ロジック回路
314は、44ビットの制御データをマルチプレクサ3
12a〜312jに与えて、それらの動作を制御する。
この制御データは、マルチプレクサ312a〜312c
のそれぞれのための3つの選択ビットと、マルチプレク
サ312d〜312jのそれぞれのための5つの選択ビ
ットとを含む。ロジック回路314は、RAC入力アド
レスおよび制御ロジック121と制御信号をやりとりす
るために、37ビット制御バスに接続されている。
Each of the multiplexers 312d to 312j corresponds to one of the latches 310d to 310j.
192 bits of data held by the decoder are accessed, the data is divided into a plurality of 8-bit segments, and 8-bit data is provided to each element of the decoder shown in FIG. 2 at a time. Multiplexers 312d to 312g
Supplies the reference image data to the half-pixel interpolation circuit 144, and the multiplexers 312h to 312j supply the data to the display processor 218. The logic circuit 314 converts the control data of 44 bits into the multiplexer 3
12a to 312j to control their operation.
This control data is supplied to the multiplexers 312a to 312c.
, And five select bits for each of the multiplexers 312d-312j. The logic circuit 314 is connected to a 37-bit control bus for exchanging control signals with the RAC input address and control logic 121.

【0033】バンク1およびバンク2のラッチの数は異
なるが、ラッチの2つのバンクは、ダブルバッファリン
グスキームを用いる。この方法を用いれば、特定の種類
のデータがバンク2のラッチから適当な処理回路へとマ
ルチプレクサ312のうちの1つによって転送されてい
る途中であっても、メモリ204からのその特定の種類
のデータを受け取るために、バンク1の適当なラッチを
確実に使用可能にすることができる。
Although the number of latches in Bank 1 and Bank 2 are different, the two banks of latches use a double buffering scheme. Using this method, a particular type of data from memory 204 may be in transit from one of multiplexers 312 while a particular type of data is being transferred from a latch in bank 2 to an appropriate processing circuit. The appropriate latch in bank 1 can be made available to receive the data.

【0034】図4の(a)および(b)は、図3に示す回路で
用いられる2種類のマルチプレクサの構造を示す。図4
の(a)は、マルチプレクサ312a〜312cのうちの
1つとして用いるのに適した192ビットから32ビッ
トへのマルチプレクサの例を示す。図4の(b)は、マル
チプレクサ312d〜312jのうちの1つとして用い
るのに適した192ビットから8ビットへのマルチプレ
クサの例を示す。
FIGS. 4A and 4B show the structures of two types of multiplexers used in the circuit shown in FIG. FIG.
(A) shows an example of a 192-bit to 32-bit multiplexer suitable for use as one of the multiplexers 312a to 312c. FIG. 4B shows an example of a 192-bit to 8-bit multiplexer suitable for use as one of the multiplexers 312d to 312j.

【0035】図4の(a)に示すマルチプレクサ312a
は、6から1へのマルチプレクサ410を含んでおり、
このマルチプレクサ410は、3ビットの制御信号をロ
ジック回路314(図3に示す)から受け取り、その制
御信号の値に基づいて、レジスタ310a〜310cの
対応する1つの中に保持された192ビットワードの6
つの32ビットセグメントのうちの1つを与える。
The multiplexer 312a shown in FIG.
Includes a 6 to 1 multiplexer 410;
The multiplexer 410 receives a 3-bit control signal from the logic circuit 314 (shown in FIG. 3) and, based on the value of the control signal, converts the 192-bit word held in a corresponding one of the registers 310a-310c. 6
Gives one of the 32 bit segments.

【0036】図4の(b)に示すマルチプレクサ312d
も実質的に同じように動作するが、マルチプレクサ42
0が24から1へのマルチプレクサであり、これが19
2ビットの入力値を、ロジック回路314からの5ビッ
トの制御信号に応答して24個の8ビットの値のうちの
1つとして出力する点が異なる。
The multiplexer 312d shown in FIG.
Operate in substantially the same manner, but with multiplexer 42
0 is a multiplexer from 24 to 1, which is 19
The difference is that a 2-bit input value is output as one of 24 8-bit values in response to a 5-bit control signal from the logic circuit 314.

【0037】上述のように、マルチプレクサ312aに
よって出力された32ビットの値は、高レベル処理VL
Dプロセッサ134に与えられる、MPEG−2で符号
化されたビットストリームデータである。マルチプレク
サ312dによって出力された8ビットの値は、半画素
補間回路144に与えられる参照画素データ値である。
As described above, the 32-bit value output by the multiplexer 312a is output to the high-level processing VL.
This is bit stream data encoded by MPEG-2 and provided to the D processor 134. The 8-bit value output by the multiplexer 312d is a reference pixel data value provided to the half-pixel interpolation circuit 144.

【0038】図5は、図2に示すRAC出力メモリイン
タフェース224として用いるのに適した回路のブロッ
ク図である。この回路は、MPEG−2トランスポート
ストリームの連続するバイトを表す8ビットの値をトラ
ンスポートデコーダ(不図示)から受け取る。これらの
値は、PESパケット分解器220によって復号化され
る、連続するプログラムエレメンタリストリーム(PE
S)パケットを構成する。分解器220によって与えら
れる出力信号は、ビットシリアルのMPEG−2で符号
化されたビットストリームである。このビットストリー
ムは、ビットストリームプロセッサ510に与えられ、
このビットストリームプロセッサ510は、各32ビッ
トの複数のセグメントのビットストリームを集めて、そ
れらのセグメントを2から1へのマルチプレクサ514
に渡し、それからレジスタ515に渡す。こんどはレジ
スタが32ビットの値をRAC出力メモリ206に与え
るように接続されている。マルチプレクサ514、レジ
スタ515およびメモリ206は、RAC出力アドレス
および制御ロジック122によって制御されている。
FIG. 5 is a block diagram of a circuit suitable for use as the RAC output memory interface 224 shown in FIG. This circuit receives from a transport decoder (not shown) an 8-bit value representing successive bytes of the MPEG-2 transport stream. These values are decoded by the PES packet decomposer 220 into a continuous program elementary stream (PE
S) Construct a packet. The output signal provided by the decomposer 220 is a bit-serial MPEG-2 encoded bit stream. This bit stream is provided to a bit stream processor 510,
The bitstream processor 510 collects a bitstream of a plurality of segments of 32 bits each and multiplexes the segments from a 2 to 1 multiplexer 514.
And then to register 515. Here, the registers are connected to provide a 32-bit value to the RAC output memory 206. Multiplexer 514, register 515, and memory 206 are controlled by RAC output address and control logic 122.

【0039】マルチプレクサ514は、また、マクロブ
ロックプロセッサ512からの入力データを受け取る。
プロセッサ512は、図2に示す加算回路136および
138によって与えられる2つの8ビットの値を受け取
り、それぞれの加算回路からの連続する画素値を組み合
わせて32ビットのワードにし、この32ビットのワー
ドをマルチプレクサ514に与え、それからレジスタ5
15に与える。
Multiplexer 514 also receives input data from macroblock processor 512.
Processor 512 receives the two 8-bit values provided by adders 136 and 138 shown in FIG. 2 and combines successive pixel values from each adder into a 32-bit word, which is converted to a 32-bit word. And then to register 5
Give to 15.

【0040】マルチプレクサ514、レジスタ515、
メモリ206および制御ロジック122の組み合わせれ
ば、プロセッサ510および512によって与えられる
32ビットのデータ値を組み合わせて、メモリ206の
中に保持されるそれぞれ192ビットのワードにするデ
ータフォーマッタになる。
A multiplexer 514, a register 515,
The combination of memory 206 and control logic 122 results in a data formatter that combines the 32-bit data values provided by processors 510 and 512 into 192-bit words each held in memory 206.

【0041】本発明の実施例において、プロセッサ51
0および512は、マルチプレクサ514およびレジス
タ512によって連続して与えられるいくつかの32ビ
ットワードをバッファして、メモリ206の個別の19
2ビットワードの中の、連続した32ビットメモリロケ
ーションに配置する内部レジスタ(不図示)を含む。よ
ってメモリ206のある192ビットワードは、すべて
のビットストリームデータを含むいっぽうで、別の19
2ビットワードは、すべての復号化された画素データを
含む。
In the embodiment of the present invention, the processor 51
0 and 512 buffer several 32-bit words provided sequentially by multiplexer 514 and register 512, and
Includes internal registers (not shown) located in contiguous 32-bit memory locations within a 2-bit word. Thus, one 192 bit word in memory 206 contains all the bit stream data, while another 19 bit word contains another 19 bit word.
The two-bit word contains all the decoded pixel data.

【0042】あるいは、メモリ206は、後述するよう
にレジスタ515の中に保持された32ビットデータ値
を、選択的にメモリ206の32ビットサブワードに与
えるように制御されてもよい。このスキームを用いれ
ば、データをバッファするのに用いられるプロセッサ5
10および512の中のメモリを省略することができ
る。プロセッサ510および512のそれぞれは、32
ビット値がつくられるあいだにこれをマルチプレクサ5
14に与え、制御ロジック122は、32ビット値をメ
モリ206の適切なサブワードに割り振ることによって
192ビットワードを整合性のとれたかたちでフォーマ
ットしていく。
Alternatively, memory 206 may be controlled to selectively provide the 32-bit data value held in register 515 to a 32-bit subword of memory 206, as described below. Using this scheme, the processor 5 used to buffer the data
The memory in 10 and 512 can be omitted. Each of processors 510 and 512 has 32
While the bit value is created, this is
At 14, control logic 122 consistently formats the 192-bit word by allocating the 32-bit value to the appropriate subword of memory 206.

【0043】レジスタ515は、入力ビットストリーム
から、またはマクロブロックプロセッサ512からの3
2ビットワードを格納する。この値は、ビットストリー
ムデータの32ビット、または画素データの32ビット
を表す。レジスタ515は、32ビット値をRAC出力
メモリ206に与える。メモリ206は、6つの32ビ
ット、36ワードメモリを含み、これらのメモリは、図
2に示すRACインタフェース118に与えられるまで
のあいだ、レジスタ515によって与えられるデータを
バッファするのに用いられる。6つのメモリのすべて
は、同じアドレス値を受け取るが、それぞれのメモリ
は、別々のライトイネーブル(WE)信号を受け取る。
よって、レジスタ515によって与えられる32ビット
値は、所望のアドレス値をメモリのすべてに与え、それ
から選択されたメモリに対してだけWE信号をアクティ
ベートすることによって、複数のメモリ206のうちの
どれのどのセグメント(サブワード)にも書き込むこと
ができる。
The register 515 stores 3 bits from the input bit stream or from the macroblock processor 512.
Stores a 2-bit word. This value represents 32 bits of bit stream data or 32 bits of pixel data. Register 515 provides a 32-bit value to RAC output memory 206. Memory 206 includes six 32-bit, 36-word memories that are used to buffer the data provided by registers 515 until provided to RAC interface 118 shown in FIG. All six memories receive the same address value, but each memory receives a separate write enable (WE) signal.
Thus, the 32-bit value provided by register 515 provides which of the plurality of memories 206 by providing the desired address value to all of the memories and then activating the WE signal only to the selected memory. Segments (subwords) can also be written.

【0044】RAC出力メモリインタフェース回路22
4は、5ビットの制御情報をRACインタフェース11
8から受け取る。この制御情報は、どの種類のデータ
が、つまり、ビットストリームまたはマクロブロックの
どちらが、レジスタ515に格納されることになるかを
特定し、かつ、192ビット値がメモリ206からRA
Cインタフェース118にいつ転送されるかを特定す
る。この制御信号は、図4の(b)に示す他の回路のため
の適当な制御信号を発生するRAC出力制御およびロジ
ック回路122に与えられる。これらの信号は、メモリ
206のための19ビットの制御信号(6つのリードア
ドレスビット、6つのライトアドレスビット、1ビット
のクロック信号および6つのWE信号)を含む。ロジッ
ク回路122は、また、マルチプレクサ514のための
1ビットと、レジスタ515のための1ビットとの2つ
の制御ビットも発生する。これらの制御信号は、復号化
された画素データまたはビットストリームデータのいず
れかが適切なメモリ206のうちの適切なアドレスに書
き込まれることを可能にする。さらに回路122は、4
ビットの制御値をビットストリームプロセッサ510に
与え、4ビットの制御信号をマクロブロックプロセッサ
512に与える。回路122は、また、ビットストリー
ムプロセッサおよび復号化されたマクロブロックプロセ
ッサからそれぞれ1つ、合計2つのハンドシェーク信号
を受け取る。これらの信号は、それぞれのプロセッサが
マルチプレクサ514を通してレジスタ515に転送す
るデータをもっていることを示す。
RAC output memory interface circuit 22
4 is a system in which 5-bit control information is transmitted to the RAC interface 11
Receive from 8. This control information specifies what type of data, ie, a bit stream or a macroblock, will be stored in register 515, and the 192 bit value is stored in memory 206 from RA.
Identify when to transfer to C interface 118. This control signal is provided to the RAC output control and logic circuit 122 which generates appropriate control signals for the other circuits shown in FIG. These signals include a 19-bit control signal for the memory 206 (6 read address bits, 6 write address bits, 1 bit clock signal and 6 WE signals). Logic circuit 122 also generates two control bits, one bit for multiplexer 514 and one bit for register 515. These control signals allow either the decoded pixel data or the bitstream data to be written to the appropriate addresses in the appropriate memory 206. Further, the circuit 122 includes 4
A bit control value is provided to the bit stream processor 510 and a 4-bit control signal is provided to the macroblock processor 512. The circuit 122 also receives two handshake signals, one each from the bitstream processor and the decoded macroblock processor. These signals indicate that each processor has data to transfer to register 515 through multiplexer 514.

【0045】プロセッサ510に与えられる4ビット信
号は、プロセッサが入力ビットストリームの4つの8ビ
ットセグメントを集めて、単一の32ビット値にするこ
とを可能にする。プロセッサ510は、PES分解器2
20によって与えられる入力ビットストリームの連続す
る8ビットのセグメントを保持する内部シフトレジスタ
(不図示)を含む。マクロブロックプロセッサ512の
ための4ビットの制御信号は、内部シフトレジスタのど
の部分がデータをマルチプレクサ525およびレジスタ
515に与えることになるのかを特定する3つのビット
と、復号化されたマクロブロックを選択する1つのビッ
トとを含む。
The 4-bit signal provided to processor 510 allows the processor to collect four 8-bit segments of the input bitstream into a single 32-bit value. The processor 510 includes the PES decomposer 2
20 includes an internal shift register (not shown) that holds successive 8-bit segments of the input bit stream provided by 20. The 4-bit control signal for macroblock processor 512 selects three bits that specify which part of the internal shift register will provide data to multiplexer 525 and register 515, and the decoded macroblock. One bit to be included.

【0046】上述のシステムは、192ビット値をRA
C入力メモリ204からさまざまなラッチマルチプレク
サ回路210、214および216に転送し、RAC出
力メモリ206において、RAC出力メモリインタフェ
ース224からのデータを受け取る。ラッチマルチプレ
クサによって与えられるデータは、より小さいデータワ
ード(すなわち8ビットまたは32ビット値)として、
さまざまな処理要素に与えられ、RAC出力メモリイン
タフェースから受け取られたデータは、入力ビットスト
リームまたは処理された画像を表す8ビット値として発
生される。これらの8ビット値はまとめられて、それぞ
れ32ビット値としてRAC出力メモリ206に与えら
れる。データがさまざまな処理に与えられる最大レート
が予測でき、かつそれを実現できるので、この構成は、
MPEG−2デコーダに用いると有効な構成である。
The above system converts a 192 bit value to RA
The data is transferred from the C input memory 204 to the various latch multiplexer circuits 210, 214 and 216 and received at the RAC output memory 206 from the RAC output memory interface 224. The data provided by the latch multiplexer is a smaller data word (ie, an 8-bit or 32-bit value)
The data provided to the various processing elements and received from the RAC output memory interface is generated as an 8-bit value representing an input bitstream or a processed image. These 8-bit values are put together and provided to the RAC output memory 206 as 32-bit values. This configuration allows for predicting and achieving the maximum rate at which data can be given to various processes,
This is an effective configuration when used for an MPEG-2 decoder.

【0047】以下の表は、図2に示す復号器がメインプ
ロファイル・ハイレベルフォーマットのMPEG−2画
像を復号化するのを可能にする、メモリ204からデー
タを読み出すためのワーストケースのスケジュールの一
例を示す。表1および3のそれぞれの数は、メモリ20
4からラッチ309a〜309cおよび309e〜30
9gのうちの1つに192ビットのデータが転送される
単一のシステムクロックサイクルを表しており、表の第
1列によって示される。表2の数は、さらにラッチバン
ク2のラッチに転送されるために第1列にある種類のデ
ータがラッチ309dに転送されるべきクロックパルス
を表しており、どこに転送されるかは、4つの列の見出
しによって示される。
The following table is an example of a worst-case schedule for reading data from memory 204 that enables the decoder shown in FIG. 2 to decode MPEG-2 images in the main profile high-level format. Is shown. Each number in Tables 1 and 3 is
4 to latches 309a to 309c and 309e to 30
It represents a single system clock cycle in which 192 bits of data are transferred to one of the 9g, indicated by the first column of the table. The numbers in Table 2 further represent the clock pulses at which the type of data in the first column is to be transferred to the latch 309d for transfer to the latches in Latch Bank 2, where four pulses are transferred. Indicated by column headings.

【0048】[0048]

【表1】 [Table 1]

【0049】[0049]

【表2】 [Table 2]

【0050】[0050]

【表3】 [Table 3]

【0051】これらの表は、固定したスケジュールを示
すように見えるが、メモリ204からどの特定の種類の
データにアクセスするにも固定された時刻というものは
ない。制御ロジック314およびRAC入力制御ロジッ
ク121は、その代わりに、ラッチバンク1のラッチの
ステータスを監視してこれらのラッチがフルの状態に維
持されるようにする。よって、これらのラッチの1つが
その内容をラッチバンク2に転送するとすぐに制御ロジ
ック121および314は、その空になったラッチをメ
モリ204からのデータで埋めようとする。メモリ20
4からラッチ309a〜309gへデータを転送すると
きには、ディスプレイデータは、最高の優先度をもって
おり、以下、参照データ、VLDデータの順である。
Although these tables appear to show a fixed schedule, there is no fixed time for accessing any particular type of data from memory 204. Control logic 314 and RAC input control logic 121 instead monitor the status of the latches in latch bank 1 to ensure that these latches remain full. Thus, as soon as one of these latches transfers its contents to latch bank 2, control logic 121 and 314 will attempt to fill the emptied latches with data from memory 204. Memory 20
When the data is transferred from No. 4 to the latches 309a to 309g, the display data has the highest priority, and thereafter, the reference data and the VLD data are in this order.

【0052】表に示した順番は、図2に示すデコーダ
が、メインプロファイル・ハイレベルフォーマットにし
たがって符号化されたMPEG−2画像を復号化するの
にかかる、ワーストケースのタイミングを表す。典型的
には、データをVLDプロセッサに送るメモリリード動
作の大部分は、そのデータをスライスおよび低レベルプ
ロセッサ130および132に送る。表に挙げられたV
LD動作は、必要に応じてデータを3つのプロセッサ1
30、132および134のうちの1つに送る。
The order shown in the table represents the worst case timing when the decoder shown in FIG. 2 decodes the MPEG-2 image encoded according to the main profile high level format. Typically, most of the memory read operations that send data to the VLD processor send the data to the slice and low-level processors 130 and 132. V listed in the table
In the LD operation, data is transferred to three processors 1 as needed.
To one of 30, 132 and 134.

【0053】メモリ206はメモリ204とは別であ
り、独立しているので、データがどのように、またいつ
RAC入力メモリ204から読み出されるかに関わら
ず、データは、RAC出力メモリ206に書き込まれ
る。メモリ204および206と、システムメモリ11
2との間のデータ転送は、RACインタフェース118
によって制御される。このインタフェースは、上で参照
した米国特許出願に記載されている。
Since memory 206 is separate and independent of memory 204, data is written to RAC output memory 206 regardless of how and when data is read from RAC input memory 204. . The memories 204 and 206 and the system memory 11
2 is transferred to the RAC interface 118.
Is controlled by This interface is described in the above referenced US patent application.

【0054】特定のビットストリームが復号化されると
き、すべてのリードおよびライト動作が示されたタイミ
ングで実行されるわけではない。プロセッサがデータを
必要としないために、もしリード動作が必要でなけれ
ば、またデータが書き込みに使用可能でないために、も
しライト動作が必要でなければ、それは単にスキップさ
れる。よって、表に示したタイミングは、ワーストケー
スのタイミング状態における特定の動作について利用可
能なタイムスロットを表すものである。
When a particular bitstream is decoded, not all read and write operations are performed at the indicated timing. If a read operation is not needed because the processor does not need the data, and if a write operation is not needed because the data is not available for writing, it is simply skipped. Thus, the timing shown in the table represents a time slot available for a particular operation in the worst case timing state.

【0055】本発明は、実施例に基づいて記載されてい
るが、特許請求の範囲の精神および範囲の中で上述のよ
うに実施できることが理解されよう。
Although the invention has been described by way of example, it will be understood that it can be practiced as described above within the spirit and scope of the appended claims.

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

【図1】(従来の技術)高帯域メモリを用いる高精細度
ビデオ復号器の一例を示すブロック図である。
FIG. 1 (Prior Art) is a block diagram illustrating an example of a high definition video decoder using a high bandwidth memory.

【図2】本発明の実施例を含む高帯域ビデオ復号器のブ
ロック図である。
FIG. 2 is a block diagram of a high bandwidth video decoder including an embodiment of the present invention.

【図3】図2に示す回路のRAC入力メモリおよびラッ
チマルチプレクサのブロック図である。
FIG. 3 is a block diagram of a RAC input memory and a latch multiplexer of the circuit shown in FIG. 2;

【図4】(a)および(b)は、図3に示す複数のマルチプレ
クサのうちのあるマルチプレクサの構造を図示するブロ
ック図である。
FIGS. 4A and 4B are block diagrams illustrating a structure of a multiplexer among the plurality of multiplexers illustrated in FIG. 3;

【図5】図2に示すRAC出力メモリインタフェースの
構造を図示するブロック図である。
FIG. 5 is a block diagram illustrating a structure of a RAC output memory interface shown in FIG. 2;

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 データをMビット(ここでMは整数であ
る)のデータ値で保持するメモリと、 複数のラッチマルチプレクサと、を備えている高帯域メ
モリシステムにおいて、該複数のラッチマルチプレクサ
がそれぞれ、 中央メモリにより与えられた該Mビットのデータ値を受
け取るラッチと、 該ラッチにより保持された該Mビットのデータ値を順番
づけることによって、少なくともNビット(ここで、N
はMよりも小さい整数である)のデータを1度に出力ポ
ートに与えるマルチプレクサと、を備えおり、 該複数のラッチマルチプレクサが、比較的低帯域のチャ
ネルとして作用する複数の第1ラッチマルチプレクサ
と、比較的高帯域のチャネルとして作用する複数の第2
ラッチマルチプレクサと、を備えており、該複数の第2
ラッチマルチプレクサには、該複数の第1ラッチマルチ
プレクサよりも頻繁に該メモリからのデータがロードさ
れるように構成されている、高帯域メモリシステム。
1. A high-bandwidth memory system comprising: a memory for holding data as a data value of M bits (where M is an integer); and a plurality of latch multiplexers. A latch for receiving the M-bit data value provided by the central memory; and ordering the M-bit data value held by the latch so that at least N bits (where N
And a multiplexer that provides data at a time to an output port, the plurality of latch multiplexers comprising a plurality of first latch multiplexers acting as relatively low bandwidth channels; A plurality of secondary channels acting as relatively high-bandwidth channels
And a latch multiplexer.
A high bandwidth memory system, wherein the latch multiplexer is configured to be loaded with data from the memory more frequently than the plurality of first latch multiplexers.
【請求項2】 MはNで割り切ることができ、かつ前記
複数の第2ラッチマルチプレクサが、それぞれのラッチ
により保持された前記Mビットのデータ値を順番づける
ことによって、少なくともPビット(ここで、PはMよ
りも小さくNよりも大きい整数である)のデータを1度
にそれぞれの出力ポートに与える、高帯域メモリシステ
ムであって、 前記メモリならびに前記複数の第1ラッチマルチプレク
サおよび該複数の第2ラッチマルチプレクサに接続され
ており、それによって前記中央メモリが、該複数の第1
および第2ラッチマルチプレクサのそれぞれにそれぞれ
所定のレートでシーケンシャルにデータを与えるように
する順番づけ手段であって、該複数の第2ラッチマルチ
プレクサの1つに与えられるデータのレートが、該複数
の第1ラッチマルチプレクサのいずれに与えられるデー
タのレートよりも高しする、順番づけ手段をさらに備え
ている、請求項1に記載の高帯域メモリシステム。
2. M can be divisible by N, and the plurality of second latch multiplexers order at least P bits (where: M) by reordering the M bits of data values held by respective latches. P is an integer less than M and greater than N) at one time to each output port, wherein the memory and the plurality of first latch multiplexers and the plurality of A two-latch multiplexer, whereby the central memory stores the plurality of first latches.
And a second latch multiplexer for sequentially providing data at a predetermined rate, respectively, wherein the rate of data supplied to one of the plurality of second latch multiplexers is equal to the plurality of second latch multiplexers. 2. The high bandwidth memory system according to claim 1, further comprising an ordering means for increasing a rate of data provided to any one of the one-latch multiplexers.
【請求項3】 Rビット(ここで、RはMよりも小さい
整数であって、MはRで割り切ることができる)のデー
タ値を受け取る端末と、 該受け取られたRビット値のシーケンスを組み合わせて
Mビット値にするフォーマット手段と、 該フォーマット手段により生成された該Mビット値を格
納し、かつ該格納されたMビット値を別のメモリに与え
る別のラッチと、 該別のラッチにより保持された該Mビット値を該別のメ
モリに格納する手段と、 を備えている高帯域メモリシステムであって、 前記順番づけ手段が、該組み合わせる手段により与えら
れた時に該別のラッチにより与えられたデータを、該別
のメモリに格納させる手段を備えている、請求項2に記
載の高帯域メモリシステム。
3. Combining a terminal receiving a data value of R bits (where R is an integer less than M and M is divisible by R) with a sequence of the received R bit values Formatting means for converting the M-bit value generated by the formatting means into an M-bit value, and another latch for providing the stored M-bit value to another memory; and holding by the other latch Means for storing the M-bit value in the separate memory, wherein the ordering means is provided by the separate latch when provided by the combining means. 3. The high-bandwidth memory system according to claim 2, further comprising means for storing said data in said another memory.
【請求項4】 前記メモリが、前記中央メモリに接続さ
れた第1バッファメモリであり、それによって該中央メ
モリにより与えられた連続的なMビット値を保持し、か
つ該保持されたMビット値を前記複数の第1および第2
ラッチマルチプレクサに与える、高帯域メモリシステム
であって、 前記順番づけ手段が該第1バッファメモリに接続されて
おり、それによって、前記低帯域チャネルおよび前記高
帯域チャネルのそれぞれによって該Mビット値が消費さ
れる際のそれぞれのレートに応じて、該Mビット値が該
複数の第1および第2ラッチマルチプレクサに与えられ
る際のそれぞれのレートをダイナミックに変えることが
できる、請求項3に記載の高帯域メモリシステム。
4. The memory is a first buffer memory connected to the central memory, thereby holding a continuous M-bit value provided by the central memory, and the retained M-bit value. The plurality of first and second
A high bandwidth memory system for providing to a latch multiplexer, wherein said ordering means is connected to said first buffer memory, whereby said M bit value is consumed by each of said low bandwidth channel and said high bandwidth channel. 4. The high bandwidth of claim 3, wherein the respective rates at which the M-bit values are provided to the plurality of first and second latch multiplexers can be dynamically varied depending on the respective rates at which they are performed. Memory system.
【請求項5】 それぞれがデータをMビット(ここでM
は整数である)のデータ値として保持する第1および第
2のメモリと、 該Mビットのデータ値を該第1のメモリから受け取って
該Mビットのデータ値を格納するように接続されている
出力ラッチと、 該Mビットのデータ値中の所定のデータをNビット(こ
こでNはMよりも小さい整数である)のデータ値のシー
ケンスとして与えるように該出力ラッチに接続されてい
る第1の出力マルチプレクシング手段と、 該Mビットのデータ値中の所定のデータをPビット(こ
こでPはMよりも小さい整数である)のデータ値のシー
ケンスとして与えるように該出力ラッチに接続されてい
る第2の出力マルチプレクシング手段と、 Qビットのデータ値とRビット(ここで、QおよびRは
Mよりも小さい整数である)のデータ値とをそれぞれ受
け取るように接続されている入力フォーマット手段であ
って、制御信号に応じて、該Qビットのデータ値のいく
つかを選択的に組み合わせて該Mビットのデータ値を発
生するか、または該Rビットのデータ値のいくつかを選
択的に組み合わせて該Mビットのデータ値を発生する入
力フォーマット手段と、 該第1のメモリに接続されているメモリ制御手段であっ
て、該Mビットのデータ値を該第1のメモリから読み出
し、かつ該入力フォーマット手段により発生された該M
ビットのデータ値を該第2のメモリに格納するメモリ制
御手段と、 該メモリ制御手段と、該第1および第2の出力マルチプ
レクシング手段と、該入力フォーマット手段とに接続さ
れている制御手段であって、制御信号を発生することに
よって、中央メモリにMビット値をフェッチまたは格納
させ、該第1のメモリに該フェッチされたデータ値を受
け取らせ、かつ第2のメモリに、格納されている該デー
タ値を与えさせる、制御手段と、を備えているメモリシ
ステム。
5. Each of the data is M bits (where M
Is an integer), and is connected to receive the M-bit data value from the first memory and store the M-bit data value. An output latch connected to the output latch to provide predetermined data in the M-bit data value as a sequence of N-bit (where N is an integer less than M) data values; And output multiplexing means connected to the output latch to provide predetermined data in the M-bit data value as a sequence of P-bit (where P is an integer less than M) data values. A second output multiplexing means for receiving a data value of Q bits and a data value of R bits (where Q and R are integers less than M), respectively. Input format means connected to the control signal to selectively combine some of the Q-bit data values to generate the M-bit data value or to generate the R-bit data value. Input format means for selectively combining some of the values to generate the M-bit data value; and memory control means connected to the first memory, wherein the M-bit data value is the M-bit data value. 1 and the M generated by the input format means.
A memory control unit for storing a bit data value in the second memory; a memory control unit; a first and a second output multiplexing unit; and a control unit connected to the input format unit. Generating a control signal to cause the central memory to fetch or store the M-bit value, cause the first memory to receive the fetched data value, and store the M-bit value in the second memory. Control means for giving the data value.
【請求項6】 前記第1のメモリが、前記中央メモリに
接続されたバッファメモリであり、それによって該中央
メモリにより与えられた連続的なMビット値を受け取
り、かつ保持された該Mビット値を前記出力ラッチに与
える、メモリシステムであって、 前記メモリ制御手段が、該第1のメモリおよび前記第2
のメモリに接続されており、かつ、前記第1および第2
の出力マルチプレクシング手段がそれぞれNビットのデ
ータ値およびPビットのデータ値を与える際のそれぞれ
のレートに応じて、該Mビット値が該第1のメモリによ
り前記複数の第1および第2ラッチマルチプレクシング
手段に与えられる際のそれぞれのレートをダイナミック
に変えることができる制御信号を前記制御手段が発生す
る、請求項5に記載のメモリシステム。
6. The first memory is a buffer memory connected to the central memory, thereby receiving a continuous M-bit value provided by the central memory and holding the retained M-bit value. To the output latch, wherein the memory control means comprises a first memory and a second memory.
And the first and second memories
The M-bit value is stored in the first memory by the first memory in accordance with the respective rates at which the output multiplexing means provides the N-bit data value and the P-bit data value, respectively. 6. The memory system according to claim 5, wherein said control means generates a control signal capable of dynamically changing respective rates when applied to the cusing means.
【請求項7】 符号化されたビデオ画像を受け取るよう
に接続されており、かつ可変長復号器と表示装置とを含
んでいるディジタルビデオ復号器に用いるのに適したメ
モリシステムであって、 Pビット(ここで、Pは整数である)のデータ値を受け
取るように接続されており、該受け取られたPビットの
データ値のうち連続するいくつかの値を組み合わせるこ
とによってMビットのデータ値をつくる(ここで、Mは
Pよりも大きい整数である)フォーマッタであって、 PビットのセグメントにおいてアドレスされているMビ
ットのデータ値を有するメモリ手段、および該メモリ手
段に接続されており、制御信号に応じて、該受け取られ
たPビット値を、該Pビットのセグメントの中から選択
された1つのセグメントに選択的に格納する制御手段、
を含んでいるフォーマッタと、 該符号化されたビデオ画像を表すRビット(ここで、R
はPよりも小さい整数である)のデータ値を受け取り、
該Rビットのデータ値を組み合わせることによって該フ
ォーマッタに与えられる該Pビットのデータ値にし、か
つ、該Pビットのデータ値を該フォーマッタに与える第
1の出力手段と、 復号化されたビデオ画像を表すQビット(ここで、Qは
整数である)のデータ値を受け取り、該Qビットのデー
タ値のうちのいくつかを組み合わせることによって別の
Pビットのデータ値を生成し、かつ該別のPビットのデ
ータ値を該フォーマッタに与える第2の出力手段と、 該第1および第2の出力手段ならびに該フォーマッタ手
段に接続されている制御信号発生手段であって、該制御
手段に対して制御信号を発生することによって、該第1
の出力手段により与えられた該Pビットのデータ値の中
の連続するいくつかの値を、該Mビットのデータ値の中
のあるデータ値に対応する連続するPビットのセグメン
トのそれぞれの中に該制御手段が格納するようにし、か
つ、該第2の出力手段により与えられた該Pビットのデ
ータ値の中の連続するいくつかの値を、該Mビットのデ
ータ値の中の互いに異なるいくつかの値に対応する連続
するPビットのセグメントのそれぞれの中に該制御手段
が格納するようにする、制御信号発生手段と、 を備えているメモリシステム。
7. A memory system connected to receive an encoded video image and suitable for use in a digital video decoder including a variable length decoder and a display device, comprising: Bit, where P is an integer, and is connected to receive the M-bit data value by combining several consecutive ones of the received P-bit data values. A formatter (where M is an integer greater than P) comprising: a memory means having M-bit data values addressed in a P-bit segment; A control means for selectively storing, in response to the signal, the received P-bit value in a segment selected from the P-bit segments. ,
And an R bit representing the encoded video image (where R
Is an integer less than P).
First output means for combining the R-bit data value into the P-bit data value provided to the formatter and providing the P-bit data value to the formatter; Receiving a data value of Q bits (where Q is an integer) that represents a different P-bit data value by combining some of the Q-bit data values and generating another P-bit data value; Second output means for providing a bit data value to the formatter; control signal generating means connected to the first and second output means and the formatter means; By generating the first
Of the P-bit data values provided by the output means of the M-bit data value into each of the consecutive P-bit segments corresponding to a data value in the M-bit data value. The control means is adapted to store, and the consecutive number of the P-bit data values provided by the second output means are stored in different ones of the M-bit data values. A control signal generating means for causing said control means to store in each of the successive P-bit segments corresponding to said value.
JP11178496A 1996-05-02 1996-05-02 Memory multiplexing system for highly precise video decoder Pending JPH1032785A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11178496A JPH1032785A (en) 1996-05-02 1996-05-02 Memory multiplexing system for highly precise video decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11178496A JPH1032785A (en) 1996-05-02 1996-05-02 Memory multiplexing system for highly precise video decoder

Publications (1)

Publication Number Publication Date
JPH1032785A true JPH1032785A (en) 1998-02-03

Family

ID=14570082

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11178496A Pending JPH1032785A (en) 1996-05-02 1996-05-02 Memory multiplexing system for highly precise video decoder

Country Status (1)

Country Link
JP (1) JPH1032785A (en)

Similar Documents

Publication Publication Date Title
US5581310A (en) Architecture for a high definition video frame memory and an accompanying data organization for use therewith and efficient access therefrom
US8687706B2 (en) Memory word array organization and prediction combination for memory access
US6104416A (en) Tiling in picture memory mapping to minimize memory bandwidth in compression and decompression of data sequences
US5598483A (en) MPEG video decompression processor
US5379356A (en) Decompression processor for video applications
US6917652B2 (en) Device and method for decoding video signal
US5838380A (en) Memory controller for decoding a compressed/encoded video data frame
US5982936A (en) Performance of video decompression by using block oriented data structures
US6088391A (en) Method and apparatus for segmenting memory to reduce the memory required for bidirectionally predictive-coded frames
KR100606812B1 (en) Video decoding system
US20060044165A1 (en) Variable length decoding device
US5736944A (en) Image decoding apparatus
US8369635B2 (en) Information processing device and method
KR100304511B1 (en) Video restoration and decoding system
US5809174A (en) Decompression processor for video applications
US20050025250A1 (en) Video decoding during I-frame decode at resolution change
US6374033B2 (en) Signal processing apparatus and method
JP3285220B2 (en) Television system for transmitting image signals in digital form
US20080285869A1 (en) Information processing device and method
JP3238571B2 (en) Variable length decoding device
US6233280B1 (en) Video decoder for high picture quality
US6249617B1 (en) Video encounter having an integrated scaling mechanism
US6091768A (en) Device for decoding signals of the MPEG2 type
JPH1032785A (en) Memory multiplexing system for highly precise video decoder
EP0805597B1 (en) Memory multiplexing system for a high definition video decoder

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040812

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050617