throbber
United States Patent [19J
`Artieri
`
`[54) PICTURE PROCESSING SYSTEM
`
`(75]
`
`Inventor: Alain Arlieri, Meylan, France
`
`[73] Assignee: SGS-Thornson Microelectronics S.A.,
`Saint Genis Pouilly, France
`
`[21) Appl. No.: 247,996
`
`[22)
`
`Filed:
`
`May 24, 1994
`
`[30)
`
`Foreign Application Priority Data
`
`[FR)
`[FR]
`
`France ................................... 93 06612
`France ................................... 93 13293
`
`May 27, 1993
`Oct. 29, 1993
`Int. Cl.6
`................................ H04N 7/30; H04N 7132
`[51]
`l52] U.S. Ct . .............................................................. 3481416
`[58] Field of Search ..................................... 348/416, 699;
`382/56, 43; 375/245, 246, 253; H04N 7/30,
`7/32
`
`[56]
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`111989 Fumilaka Sato ..................... 3581261.1
`4,800,441
`5,253,078 1011993 Balkanski eta! ....................... 3481416
`1/1995 Purcell et al. ............................ 382156
`5,379,356
`
`FOREIGN PATENT DOCUMENTS
`
`3545106
`
`6/1987 Gennany ........................ G06F 15/68
`
`OTHER PUBLICATIONS
`
`Digital Image Processing Applications, Los Angeles, CA,
`Jan. 17-20, 1989, 140-147, Yushcng. T. Tsai, "Real-time
`architecture for error-tolerant color picture compression-
`
`11111111111111111 11111 111111111111111 11111 11111 1111111111111111 111111111111
`US005579052A
`[It] Patent Number:
`[45) Date of Patent:
`
`5,579,052
`Nov. 26, 1996
`
`."IEEE Colloquim on Parallel Architectures for Image Pro(cid:173)
`cessing Applications, Digest No. 086, London, UK, Apr. 22,
`1991, M. N. Chong, et al., "Pipeline Functional Algorithms,
`Data Partitioning for Adaptive Transform Coding AJgo(cid:173)
`rithms.""A One Chip VLSI for Real Time Two-Dimensional
`Discrete Losine", Circuits & Systems, 1988 IEEE Internal
`Sypos, Artieri et al, pp. 701-704.
`"A Realtime Image Processing Chip Set", Solid State Cir(cid:173)
`cuits, 1989 36th Conference, IEEE.
`"Designing a High- Throughput VLC Decoder Pans 1- TI(cid:173)
`- Parallel Decoding Methods", Lin ct al, IEEE Trans. in
`Circuits & Systems for Video technology, vol. 2, No. 2, Jun.
`1992, pp. 187-206.
`
`Primary Examiner-Tommy P. Chin
`Assistant Examiner-Vu Le
`Auomey, Agent, or Fimt-David M. Driscoll; James H.
`Morris; Brett N. Domy
`
`[57]
`
`ABSTRACT
`
`A system that processes compressed data ani ving in packets
`corresponding to picture blocks, the packets being separated
`by headers containing decoding parameters of the packets. A
`memory bus is controlled by a memory controller to
`exchange data between the processing clements and a pic(cid:173)
`ture memory. A pipeline circuit contains a plurality of
`processing clements. A parameter bus provides packets to be
`processed to the pipeline circuit, as well as the decoding
`parameters to elements of the system. The parameter bus is
`controlled by a variable length decoder that receives the
`compressed data from the memory bus and that extracts the
`packets and the decoding parameters therefrom.
`
`13 Claims, 7 Drawing Sheets
`
`(ImP!)
`
`IRoMI
`
`MCU
`
`24
`
`;
`[I
`
`Cl
`
`(Vect)
`~
`
`i8 Q
`
`I
`
`...,
`:;;
`0
`
`...,
`...,
`
`0
`
`...,
`:;;
`0
`
`')
`
`HS3
`IJ..
`
`I'
`V LO
`
`...,
`:;;
`0
`
`;J)
`
`0 ~
`IT! m
`
`\
`
`..
`u
`
`1/2 PIXEL
`FILT
`
`~t
`
`I
`
`t
`~ ...,
`...,
`0
`
`.~~201 if
`
`,
`
`'\
`
`~
`
`66
`
`RQ/ACK
`
`MBUS
`
`VLOBUS
`
`~~~ ~ l)
`
`0
`n
`-1
`
`0
`!.
`
`::0
`r
`0
`....
`12
`
`(5
`I: I I
`CO:~IMI IIM2IIM3
`I
`I 1
`I: MEM
`I
`'
`
`r---+vloo ut
`NC
`HSY
`NC
`VSY
`
`~ . VIDEO
`CTRL
`'
`(IS
`
`0
`___::,.
`
`II
`
`22
`
`H/VSYNC
`
`PBUS
`
`HSI
`
`+
`
`H 2
`
`16
`
`0
`C}
`E
`
`~ '1' + 1
`I)
`~21 ~~~j 114
`z
`,cv
`·-
`I
`ISY NCI
`l SEO
`.I
`+
`
`28
`
`"
`
`IRQ
`
`60
`
`.I
`'I
`
`JJP
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:20) (cid:82)(cid:73) (cid:21)(cid:19)
`
`ZTE (cid:40)(cid:91)(cid:75)(cid:76)(cid:69)(cid:76)(cid:87) (cid:20)(cid:19)(cid:22)(cid:25)
`
`

`
`U.S. Patent
`
`Nov. 26, 1996
`
`Sheet 1 of 7
`
`5,579,052
`
`10
`
`II
`
`12
`
`/
`I
`
`COin
`
`VLD
`
`RLD
`
`- - ) o·l
`
`('15
`\
`
`/ 14
`\
`
`MEM
`
`- - ) FILT
`
`I
`)13
`\
`
`DCT-1
`
`/8
`MPEG
`Decoder
`
`I
`I
`I
`
`I
`I
`
`:
`
`I
`
`I
`
`L--~--J
`'Yl
`16
`
`I
`L ______ ___ __ .J
`
`VIDout
`
`Fig. I
`
`IMO
`
`p
`
`---1
`I MBp
`I
`I
`I
`L ___ _J
`
`Fig. 2A
`
`r----------,
`~~~
`
`tB I
`
`Fig. 28
`
`Y2
`I Y3 Y4
`I
`L-- --- -
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:21) (cid:82)(cid:73) (cid:21)(cid:19)
`
`V
`
`I
`- ~f!J
`
`-
`
`-
`
`

`
`U.S. Patent
`
`Nov. 26, 1996
`
`Sheet 2 of7
`
`5,579,052
`
`f()
`
`N
`~ ::E
`f- -~ -W
`-
`::E
`tO_../
`
`~ -~ ---- -
`~ -1----- - -
`
`0
`()
`
`~
`
`"'
`
`r'
`
`~
`
`uu
`zz
`>->-
`(f)(/)
`I>
`
`:::J
`0
`
`0 -
`
`>
`
`., ltv CD
`0
`.J-
`w Ct:
`0 -
`1-
`> u
`t
`
`N
`N
`/1-----'
`--
`
`N v-
`
`1..-
`I'
`
`r
`..... FI FO
`~ RLD
`~ ~ Q _,
`1/ DC T _,
`f()
`
`~
`(.)
`4
`........
`0
`0::
`
`(/)
`::>
`CD
`:E
`
`(/)
`::>
`CD
`0
`_J
`>
`
`1..-
`"-
`
`/
`
`u
`z
`>-
`>
`........
`:r:
`
`(/)
`
`<..0 -
`
`_J
`w
`X I-
`
`'
`
`'---
`
`-
`........
`
`II"'
`~
`
`~t-
`...
`
`CD
`N
`
`l.r
`
`1----
`
`0
`w
`(/)
`
`MBS ...
`.,
`.
`EOP,
`EN
`
`I..-
`
`1"(\J
`:r: ,
`-.,
`FIFO ~+-+
`• ~ _j
`+--
`~
`-
`~/
`-
`ACK E
`-~ FIFO! Ci. ::!
`-...
`(/)
`I
`~'RQ ~
`(\JIJ.. v-v
`-L..
`-:4
`I-
`o__/
`-
`--,
`
`a
`_J
`>
`...
`F IF O
`
`,.
`
`- /
`
`
`
`r-
`
`-a.
`1/) -frl
`
`E
`.......
`
`~
`
`jREGSj
`
`L...-.-
`
`1---- -
`u
`z
`~
`>-
`!Q
`
`~
`
`1..-
`i"
`
`v
`
`N ---
`
`1-
`
`:::>
`
`~
`
`[iJ ()
`
`ACK
`r-RQ
`
`-
`
`~
`
`I
`FIFO
`
`0
`C\J
`
`c:
`0
`(.)
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:22) (cid:82)(cid:73) (cid:21)(cid:19)
`
`

`
` _
`
`
`
` S §\‘.|mama?
`
`U.S.Patent
`
`%|%l@-fifiuglgglg-E-E.mam:3mmm3m
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:23) (cid:82)(cid:73) (cid:21)(cid:19)
`Page 4 of 20
`
`‘E
`
`o_>am
`
`ouom
`
`'1‘!
`n_>xuq
`nuxoq
`
`I "
`
`Nov.25,1996
`
`5,579,052
`
`-T
`
`E:
`
`I.IJ
`
`.n.3.._
`
`*
`
`Sheet3of?
`
`:»4_uom
`
`Eu_uxoq
`
`35...:
`
`rampoo
`
`zuzam
`
`zamom
`
`zamxod
`
`mm:
`
`E
`
`I!
`
`1':
`1
`
`o4>cm
`
`o4>xuq
`
`

`
`5,579,052
`
`(/)+:-
`:::>a..
`m E o-
`.J
`>-u
`> -
`
`Q)
`
`l{) .
`Ol
`lL.
`
`N
`I
`0
`I()
`
`In J/
`
`(!) ... ., .
`(/)
`w
`0::
`
`u
`
`u
`0:~ <r.;i.
`<!
`u
`~ ~
`~
`
`~
`
`I
`1
`0
`I() ~l \
`'-
`... •
`f+
`
`U.S. Patent
`
`Nov. 26, 1996
`
`Sheet 4 of 7
`u
`Z(f)
`>-en
`(/) ~
`
`I
`0
`I()
`
`...
`
`m
`I{)
`~r-~
`
`G+ ~ ~"' ..Ill
`
`<!
`
`u
`<!.
`
`I . - - -
`
`[Q
`
`'Ill
`
`H
`
`..... ~
`(/) 0
`z
`a::
`I\-
`
`' r-
`I[) ·-
`
`I z
`
`' It
`-+
`~
`-( w
`
`\
`
`I{)
`
`~ .,
`
`{
`v
`N
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:24) (cid:82)(cid:73) (cid:21)(cid:19)
`
`z
`
`v t-t
`
`..
`,.
`-~ Xu
`LL.w
`o...o
`~~
`I{)
`
`z
`w ._
`X
`w z
`
`' It
`
`>-U
`..-w
`a..o
`
`,
`"'
`
`~
`
`W ' ~
`
`s
`z
`r 1-J ---
`.. ~ ~ ~
`,.
`
`0
`
`0
`N
`
`0
`f'()
`
`'~ {\1
`I{)
`
`---
`----
`
`0
`c:
`
`~ fE-
`
`f'()
`
`(\J
`~ 0... B.
`,.._
`
`--- -
`
`-
`c
`a..
`____ .....__
`
`

`
`d •
`rJJ
`•
`~
`~
`f"'+(cid:173)
`
`~ = f"'+-
`
`~
`
`z 0
`N S'' ,_.
`
`'D
`'D
`~
`
`\5
`I
`I
`: :
`10 1
`I
`I
`CDI~: IMIIIM21 1 M 3
`I
`I
`I
`!
`! l MEM
`
`....
`
`...
`
`~
`
`.,
`..,
`
`~ V IDEO
`CTRL
`0
`1__::.,
`.........
`
`I I
`
`(22
`
`Ito
`
`( 18
`
`VI Do
`ut
`
`
`HSY NC
`VSY
`NC
`
`Cll =-g ....
`
`VI
`0
`'"'I
`....;J
`
`VI
`'41 Ul
`-....1
`\0
`Q
`01
`N
`
`'41
`
`RQ/ACK
`
`MBUS
`
`VLDBUS
`
`13, ~ ~
`
`I
`
`0
`(")
`-f
`.!..
`
`0
`.!..
`
`::0
`r
`0
`
`.....
`
`0
`c}
`£:
`
`16
`
`H/VSYNC
`
`J
`
`PBUS
`
`J
`
`Fig. 6
`
`:;;
`o
`I' l 12
`~HSI ~~ ~
`.. +
`
`II\
`
`::0 I' )>
`n
`0
`A
`m m
`
`24
`
`\
`
`[I
`
`IRo~l
`MCU
`
`1\-
`
`...
`
`~
`
`I
`
`~
`
`( Vect)
`
`I
`
`{ImPt)
`
`I
`
`'
`
`i I' )>
`S2
`
`I
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:25) (cid:82)(cid:73) (cid:21)(cid:19)
`
`L-."11
`
`iJ
`
`'-
`
`~
`
`0
`
`0
`
`0
`
`'-
`
`0
`
`62, 20)
`
`COin
`
`~ 21
`
`z
`
`ISYNC
`
`\.
`
`\.
`
`,~,.-
`
`66
`
`,
`
`u
`
`1/2 PIXEL
`FILT
`
`I)
`
`I) '( HS3 \
`,J_,
`.... I 'll 2~._
`,
`,
`I"
`.,
`..,
`,
`.,
`..,
`..,
`-
`- ~ VLD
`~~ lf~ ~I
`64
`rn ~ ~j tl 4
`i5
`"'OCD
`li
`~~
`SEQ
`...
`'
`
`;
`
`' l /28
`
`IRQ
`
`6 0
`tf---'
`
`..
`
`- - · -
`
`)JP
`
`

`
`U.S. Patent
`
`Nov. 26, 1996
`
`Sheet 6 of7
`
`5,579,052
`
`SLI
`~------------------ - ------
`
`SL2
`------------------ - -----
`/L]MBpl
`
`MEMI
`
`Sl3 _ _6MBI
`- - - - - - - - - - - - - - - - - - - MEM3
`1 - - - -
`/flMB2
`
`r-;MBp2
`Sl4
`1------L~----------------
`
`MEM2
`
`MEM4
`
`F i g. 7
`
`MEMI
`
`MEM2
`
`~
`
`MEM4
`..
`
`MEM3
`
`~
`
`'
`
`....
`
`MPEG
`OEC2
`
`I f
`~ C\J
`
`uu
`zz
`>->-
`(/)(/)
`I>
`
`MPEG
`OEC3
`
`I f\•1\
`l 1'0
`
`uu
`zz
`>->-
`(f)(/)
`I>
`Fig. 8
`
`MPEG
`OEC4
`
`It
`l <;t
`
`uu
`zz
`>->-
`(/)(/)
`I>
`
`COin
`
`MPEG
`DEC I
`
`11
`J -
`
`uu
`zz
`>->-
`(/)(/)
`I>
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:26) (cid:82)(cid:73) (cid:21)(cid:19)
`
`

`
`U.S. Patent
`
`Nov. 26, 1996
`
`Sheet 7 of 7
`
`5,579,052
`
`....
`,
`
`r1')
`u
`w
`a
`
`.. ~
`FIFO
`......
`'
`L
`r<>
`<.0
`m
`(f)
`Nj_
`::::>
`(])
`:E
`.... ~ FIFO\
`...
`,. ......
`
`0
`m/
`~ \
`....
`FIFO
`
`....
`
`~
`
`lf2 SL4
`
`-----
`
`r1')
`_J
`r1')(/)
`~----
`~1;2SL2
`
`''\
`l_
`\a:::
`~
`
`a::: --
`
`CD ~YNC
`..
`
`......
`
`+
`
`-
`
`<.0
`r<>
`(f)
`::::>
`(])
`X
`
`VSYNC
`a::: ~
`a::: ~
`~
`......QL
`
`v
`en
`l
`
`.
`Ol
`LL.
`
`(\J
`u
`w
`a
`
`~
`FIFO
`"''Il"
`
`<.0
`en .._
`\
`t-o::
`~
`CD
`
`~
`
`~
`
`7sYNc
`,
`
`a::: --
`
`~<.0
`~
`...._~ FIFO \
`......
`
`C\1
`(f)
`::::>
`(])
`:E
`
`..
`
`1;2SL3
`f- - - - -
`
`(\J
`_l
`(\JCJ)
`~- ---
`~ Y2SL1
`
`...-
`
`......
`
`+
`
`<.0
`
`-
`
`C\1
`(f)
`::::>
`(])
`X
`
`v
`en
`
`0
`(en
`~NC
`'
`" a:::
`FIFO +- 0:: ~
`~
`CD
`
`...._~
`"''Il"
`
`..._?
`....
`
`FIFO
`
`I
`
`<.0
`en
`~
`10::
`0:: ~ u;
`~
`::::>
`CD k:-
`VSYNC~
`
`..,_
`"
`
`((\J
`
`<.0
`en ( N
`..
`
`I
`FIFO
`
`.. _B
`......
`
`. ......
`
`+
`
`(.£)
`
`-
`
`-
`u
`w
`0
`
`-
`(f)
`::::>
`(])
`
`:E ..
`
`I/2SL2
`-----
`-
`
`_l
`-
`C/)
`~ ----
`w
`~
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:27) (cid:82)(cid:73) (cid:21)(cid:19)
`
`

`
`5,579,052
`
`1
`PICTURE PROCESSING SYSTEM
`
`BACKGROUND OF THE INVENTiON
`
`25
`
`35
`
`l. Field of the Invention
`The present invention relates to picture processing sys(cid:173)
`tems and more particularly to a system for decoding pictures
`encoded in accordance with an MPEG standard.
`2. Discussion of the Related Art
`FIG. 1 represents the main clements of an MPEG decoder
`8. All MPEG decoders, especially for the MPEG-2 standard,
`generally include a variable length decoder (VLD) 10, a
`run-level decoder (RLD) 11, an inverse quantizer circuit
`) 12, an inverse discrete cosine transform circuit (DCJ 15
`(Q- 1
`t) 13, a half-pixel filler 14, and a memory 15. The encoded
`data are provided to the decoder via a bus COin and the
`decoded data are output via a bus VIDout. Between the input
`and the output, the data pass through processing circuits
`10-13 in the order indicated above, which is illustrated by 20
`arrows in dashed lines. The decoder output is provided by an
`adder 16 that sums the outputs of filter 14 and of the cosine
`transform circuit 13. The filter 14 needs a portion of a
`previously decoded picture stored in memory 15.
`FIG. 2A illustrates a decoding step of a portion of a
`currently reconstructed picture IMl. Picture decoding is
`carried out one macro-block at a time. A macro-block
`generally corresponds to one 16x l6-pixel picture block.
`FIG. 2B illustrates an exemplary format, noted 4:2:0, of 30
`a macro-block MB. The macro-block MB includes a lumi(cid:173)
`nance block formed by four 8x8-pixel blocksY1- Y4 and by
`one chrominancc block formed by two 8x8-pixel blocks U
`and V. An alternative format is the 4:2:2 format where the
`chrominance block includes two 8xl6-pixel blocks.
`In the current picture h\111 of AG. 2A, a current macro(cid:173)
`block MBc is being decoded, the macro-blocks that were
`previously decoded being represented by hatched lines.
`Generally, macro-block MBc is reconstructed by using a
`predictor macro-block MBp fetched in a previously decoded 40
`picture IMO. To find the predictor macro-block MBp, the
`data that serve to decode macro-block MBc provide a
`movement compensation vector V that defines the position
`of the predictor macro-block MBp with respect to the
`position P of macro-block MBc in the picture.
`The predictor macro-block MBp is fetched in the memory
`15 that stores the previously decoded picture IMO, and is
`provided to filter 14 while the cosine transform circuit 13
`processes data corresponding to the macro-block MBc.
`The decoding described above is a so-called "predicted"
`decoding. The decoded macro-block is also referred to as
`being of predicted type. ln accordance with MPEG stan(cid:173)
`dards, there arc three main types of decoding, referred to as
`"intra", "predicted", and "bidirectional".
`An intra macro-block directly corresponds to a picture
`block, that is, the intra macro-block is not combined with a
`predictor macro-block when it is output from the cosine
`transform circuit 13.
`A predictor macro-block, as described above, is combined
`with one macro-block of a previously decoded picture, and
`that comes, in the display order, before the currently recon(cid:173)
`structed picture.
`A bidirectional macro-block is combined with two pre(cid:173)
`dictor macro-blocks of two previously decoded pictures,
`respectively. These two pictures are respectively former
`(forward) and subsequent (backward) pictures, in the display
`
`2
`order, with respect to the currently reconstructed picture.
`Thus, encoded pictures arrive in an order different from the
`display order.
`In addition, each predicted or bidirectional macroblock is
`s of a progressive or an interlaced type. When the macro(cid:173)
`block is progressive, the DC11 circuit provides the lines of
`the macro-block in successive order. When the macro-block
`is interlaced, the DC11 circuit first provides the even lines
`of the macro-block, then the odd lines. In addition, the
`10 predictor macro-block that serves to decode a predicted or
`bidirectional macro-block is also of the progressive or
`interlaced-type. When the predictor macro-block is of the
`interlaced-type, it is partitioned into two half-macro-blocks;
`one half macro-block corresponds to even lines, and the
`other half macro-block corresponds to odd lines, each half
`macro-block being fetched at diiTcrcnt positions in a same
`previously decoded picture.
`A picture is also of the intra, predicted or bidirectional
`type. An intra picture contains only intra macro-blocks; a
`predicted picture contains intra or predicted macro-blocks;
`and a bidirectional picture contains intra, predicted or bidi(cid:173)
`rectional macro-blocks.
`To provide the various decoding parameters to the various
`circuits of the decoder, especially vectors V and the macro(cid:173)
`block types, the flow of encoded data includes headers.
`There are several types of headers:
`a picture sequence header that includes in particular two
`quantizer tables to provide to the inverse quantizer
`circuit 12 , one serving for the intra macro-blocks of the
`sequence, and the second serving for the predicted or
`bidirectional macro-blocks;
`a group of picture header, that does not include useful data
`for decoding;
`a picture header that includes the type (predicted, intra,
`bidirectional) of the picture and information on the use
`of the movement compensation vectors;
`a picture slice header including error correction informa(cid:173)
`tion; and
`a macro-block header including the macro-block's type, a
`quantizer scale to be provided to the inverse quantizer
`circuit 12, and the components of the movement com(cid:173)
`pensation vectors. Up to four vectors are provided
`when processing an interlaced bidirectional macro-
`block.

`In addition, the high hierarchy headers (picture, group,
`sequence) can include private data serving, for example, for
`on-screen display. Some private data can also be used by
`components external to the decoder.
`The various processing circuits of an MPEG decoder are
`so frequently arranged in a pipeline architecture which can
`process high data flow rates but which is very complex and
`inflexible, that is, which is difficult to adapt to modifications
`of the standards and which is inadequate to exploit on-screen
`display and private data.
`The simplest and most inexpensive solution is to couple
`the various processing circuits to the memory through a
`common bus that is controlled by a multi-task processor.
`Patent application EP-A-0,503,956 (C-Cubc) describes
`such a system including a processor that conrrols transfers of
`60 data on the bus and three coprocessors that execute the
`processing steps corresponding to circuits 10-14. Each type
`of transfer to be achieved via the bus corresponds to a task
`carried out by the processor. All tasks are concurrent and are
`executed at processor interrupts generated by the coproces-
`65 sors. The coprocessors exchange the data to be processed
`and receive the instructions provided by the processor via
`the bus.
`
`45
`
`ss
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:28) (cid:82)(cid:73) (cid:21)(cid:19)
`
`

`
`5,579,052
`
`s
`
`tO
`
`15
`
`25
`
`An object of the present invention is to provide a par(cid:173)
`ticularly fast picture decompression system with a relatively
`simple structure.
`Another object of the invention is to provide such a
`decompression system that can be easily connected in par(cid:173)
`allel with identical decompression systems in order to pro(cid:173)
`cess very high data flow rates.
`To achieve these objects, the invention provides a decoder
`of composite architecture, that is, some of the processing
`elements are connected together and to a picture memory
`through a first bus, and some other clements are connected
`in a pipeline architecture. These other elements are referred
`to hereinafter as a ''pipeline circuit". A second bus is
`provided to supply data to be processed to the first clement
`of the pipeline circuit as well as the required decoding
`parameters to the clements of the system.
`With this structure, the pipeline circuit processes data
`serially without it being necessary to exchange them with
`the memory through the first bus. In addition, the first bus is
`relieved of the transmission of decoding parameters, these
`parameters being transmitted by the second bus. Thus, the
`number of exchanges on the first bus corresponding to a
`given decoding step
`is substantially reduced, which
`increases the system's performance. The system has a high
`flexibility resulting from the usc of a bus system. Tllis
`flexibility is increased by an optimal choice of the elements
`to be included in the pipeline circuit.
`The present invention more particularly addresses a sys(cid:173)
`tem for processing compressed data arriving in packets
`corresponding to picture blocks, these packets being sepa(cid:173)
`rated by headers containing decoding parameters of the
`packets. The system includes a plurality of processing
`elements using said decoding parameters, and a memory bus
`controlled by a memory controller to exchange data between
`the processing elements at rates adapted to the processing
`rates of these elements, and to store in a picture memory data
`to be processed or re-used. The system includes a pipeline
`circuit containing a plurality of processing elements con(cid:173)
`nected to process packets serially, and a parameter bus to 45
`provide packets to be processed to the pipeline circuit, as
`well as the decoding parameters to elements of the system.
`The parameter bus is controlled by a master processing
`element that receives the compressed data from the memory
`bus and that extracts the packets and the decoding param- 50
`eters therefrom.
`According to an embodiment of the invention, each
`packet of compressed data is preceded by a block header,
`and the packets come in successive groups, each group of
`packets being preceded by a group header containing group 55
`decoding parameters as well as, possibly, private and on(cid:173)
`screen display information. The system further includes a
`processor bus controlled by a microprocessor to supply the
`group decoding parameters and the private and on-screen
`display information to the system elements requiring them; 60
`a buffer memory accessible by the processor bus, receiving
`the compressed data through tbe memory bus; and a group
`header detector cooperating with this buffer memory to
`generate interrupts of the microprocessor.
`According to an embodiment of the invention, a transfer 65
`of data between two elements connected to the memory bus
`corresponds to a specific task that is initiated or continued
`
`3
`This system is simple, but it is incapable of handling the
`high data flow rates needed.
`
`SUMMARY OF THE INVENTION
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:20)(cid:19) (cid:82)(cid:73) (cid:21)(cid:19)
`
`4
`when one of the two elements issues a ·request to provide or
`to receive data, all the possible tasks being concurrent tasks
`that are carried out by the memory conitroller according to a
`task priority management.
`According to an embodiment of the invention, the ele(cid:173)
`ments which exchange data with the picture memory are
`connected to the memory bus through respective write- or
`read-only buffer memories. A write-only buffer memory is
`emptied by the associated element and issues a request to
`receive data through the memory bus when its content
`reaches a lower limit. A read-only buffer memory is filled by
`the associated element and issues a request to provide data
`on the memory bus when its content reaches an upper limit.
`According to an embodiment of the invention, the system
`includes a variable length decoder (VLD) forming the
`master processing clement; a run-level decoder (RLD) form(cid:173)
`ing a first element of the pipeline circuit and receiving
`through the parameter bus the packets processed by the
`VLD; an inverse quantizer circuit forming a second element
`20 of the pipeline circuit and receiving quantizer scale coeffi(cid:173)
`cients through the parameter bus; an i overse cosine trans(cid:173)
`form circuit forming a third element of the pipeline circuit;
`the memory controller receiving movement compensation
`vectors through the parameter bus; a filter receiving block
`types through the parameter bus, this filter issuing distinct
`requests, according to the block types, to receive corre(cid:173)
`sponding data provided on the memory bus as a function of
`the vectors received by the memory controller; and an adder
`to provide on the memory bus the sum of the outputs of the
`30 filter and of the cosine transform circuit.
`According to an embodiment of the invention, the group
`header detector generates interruptions of the microproces(cid:173)
`sor when the associated buffer memory contains a picture
`sequence header or a picture header, the microprocessor
`being programmed to respond to these interruptions by
`reading, in the buffer memory associated with the group
`header detector, quantizcr tables that the microprocessor
`provides to the inverse quantizer circuit, information on the
`picture type and on the amplitude of the movement com(cid:173)
`pensation vectors tbat the microprocessor provides to the
`VLD, and information on the display configuration that the
`microprocessor provides to a display controller which
`receives the decoded data through the memory bus.
`According to an embodiment of the invention, the
`memory controller includes an instruction memory (inde(cid:173)
`pendent of the memory bus), in which are stored the
`program instructions corresponding respectively to transfer
`tasks on the memory bus; an instruction processing unit that
`is connected to the instruction memory in order to rccci vc
`therefrom successive instructions to be executed, and that is
`connected to act on the memory bus in response to these
`instructions; a plurality of instruction pointers associated
`respectively to possible tasks and each including the current
`instruction address to be executed of the associated task, one
`only of these pointers is enabled at a time to provide its
`content as an instruction address to the instruction memory;
`a priority decoder assigning a predetermined priority level to
`each request and enabling the instruction pointer associated
`with the active request having the highest priority level; and
`means for incrementing the content of the enabled instruc(cid:173)
`tion pointer and for reinitializing it at the address of the
`associated program start when its content reaches the end
`address of the associated program.
`According to an embodiment of the invention, each
`instruction includes a command field that is provided to the
`processing unit and a feature field provided to a prefix
`
`35
`
`40
`
`

`
`5,579,052
`
`25
`
`30
`
`5
`decoder that includes means for authorizing the enabling of
`a new instruction pointer by the priority decoder if the
`feature field of the current instruction is at a first predeter(cid:173)
`mined value, and means for initializing the content of the
`enabled instruction pointer to the start address of the current s
`program if the feature field of the current instruction is at a
`second predetermined value.
`According to an embodiment of the invention, the prefix
`decoder includes means for inhibiting the incremcntation of
`the enabled instruction pointer if the feature field is at a third 10
`predetermined value, so that the current instruction is
`executed consecutively several times, the number of execu(cid:173)
`tions being determined by this third value.
`According to an embodiment of the invention, each
`instruction includes a command field that is provided to the 15
`instruction processing unit and an acknowledge field that is
`provided to means for, when the instruction is being
`executed, enabling at least one buffer memory connected to
`the memory bus.
`According to an embodiment of the invention, the pro- 20
`cessing unit includes a plurality of hard wired functions for
`the calculation of addresses, each function being selected by
`a field of a read or write instruction that is being executed.
`According to an embodiment of the invention, ~ith each
`hard wired function is associated an address reg1ster con-
`ncctcd to the memory bus; the hard wired function suitably
`modifies the content of its address register each Lime an
`instruction is executed in the processing unit.
`The present invention also addresses a system for pro(cid:173)
`cessing compressed data corresponding to pictures, includ-
`ing decoding means that provide decoded picture data to a
`picture memory, these means requiring, for decoding a
`current block of a picture being reconstructed, a predictor
`block of a previously decoded picture. In fact, the processing
`system includes a plurality of decoders associated with
`respective picture memories, each storing a specific slice of 3S
`corresponding blocks of a plurality of pictures, as well as at
`least one margin in which is liable to be a predictor block
`used for reconstructing a bloclc of the specific slice.
`According to an embodiment of the invention, each
`considered decoder includes means for storing in its picture 40
`memory, as a margin, a boundary area of at least one
`additional specific slice and for providing to at least one
`second decoder, as a margin, a boundary area of the specific
`slice associated with the considered decoder.
`According to an embodiment of the invention, each 45
`considered decoder includes a first buffer memory receiving
`picture blocks from the specific slice; at least one second
`buffer memory receiving picture blocks from an adjacent
`area of another specific slice; a terminal processing circuit
`providing the blocks of the specific slice to the first buffer 50
`memory of the considered decoder and to lhe second buffer
`memory or another decoder; and a memory controller to
`read the blocks in the first butTer memory and to write them
`in the picture memory at addresses corresponding to the
`specific slice, and to read the blocks in the second buffer
`memory and to write them at addresses corresponding to a
`margin.
`According to an embodiment of the invention, each
`second buffer memory is preceded by a barrier circuit in
`order to store in the second buffer memory only the data
`corresponding to the desired margin.
`According to an embodiment of the invention, the pic(cid:173)
`tures to be processed arc high definition television pictures
`that arc partitioned in horizontal slices of equal height.
`The foregoing and other objects, features, aspects and
`advantages of the invention will become apparent from the
`
`6
`following detailed description of the present invention
`which should be read in conjunction with the accompanying
`drawings.
`
`BRIEF DESCRIPTION OF ORA WINGS
`
`FIG. 1, above described, shows the main elements of an
`MPEG decompression system;
`FIG. 2A illustrates a decoding step of a macro-block;
`FIG. 28 represents an exemplary macro-block structure;
`FIG. 3 represents an embodiment of a decompression
`system architecture, or MPEG decoder, according to the
`invention;
`FIG. 4 is a timing diagram illustrating tlhe operation of the
`decompression system of FIG. 3;
`FIG. 5 represents an advantageous embodiment of a
`memory controller according to the invention;
`FIG. 6 represents another embodiment of a decompres(cid:173)
`sion system architecture according to the invention;
`FIG. 7 illustrates a high definition television picture that
`is to be processed by slices by a plurality of parallel
`decompression systems;
`FIG. 8 represents a plurality of decompression systems
`connected in parallel to process a high definition picture; and
`PIG. 9 partially represents an embodiment of an internal
`structure of a decoder according to the invention that allows
`an easy parallel connection.
`
`GENERAL ARCHITECfURE OF THE MPEG
`DECODER
`
`In FIG. 3, the clements already shown in FIG. 1 are
`designated with the same reference numerals.
`A bus, hereinafter memory bus MBUS, couples the pic-
`ture memory 15 to the compressed data input bus COin, to
`the input of the variable length decoder (VLD) 10, to the
`input of the half-pixel filter 14, and to the input of a display
`controller 18. Bus COin, decoder 10 and display controller
`18 arc connected to the memory bus MBUS through respec(cid:173)
`tive buffer memories (FIFOs) 20, 21, and 22. The half-pixel
`filter 14 includes two internal PIFOs that are connected to
`the memory bus MBUS. Exchanges on the memory bus
`MBUS are controlled by a memory controller (MCU) 24
`that serves to carry out, upon request of the FIFOs, transfer
`operations between these FIFOs and t.he picture memory. To
`achieve this purpose, the memory controller 24 receives a
`plurality of requests RQ and provides corresponding
`acknowledgements ACK. The memory controller 24 can be
`such as the one described in the above patent application
`EP-A-0,503,956. A more advantageous embodiment of this
`memory controller will be described hereinafter.
`According to the invention, the run-level decoder (RLD)
`11, the inverse quanlizer circuit (<T1) 12, and the inverse
`discrete cosine transform circuit (Ocr') 13 are connected
`according to a pipeline architecture, that is, these circuits
`11- 13 successively process data to decode, without these
`60 data temporarily transitling through a memory 15. The set of
`circuits 11- 13 is referred to as a pipeline circuit hereinafter.
`The output of the half-pixel filter 14 is summed to the output
`of the ocr' circuit 13 by an adder 16 that is coupled to the
`bus MB US through a FIFO 26 controlled by the memory
`65 controller 24. Hand-shake lines HSl and HS2 connect the
`adder 16 to the VLD circuit and to the ocr• circuit,
`respectively.
`
`55
`
`(cid:51)(cid:68)(cid:74)(cid:72) (cid:20)(cid:20) (cid:82)(cid:73) (cid:21)(cid:19)
`
`

`
`5,579,052
`
`8
`not be used to calculate another picture. Thus, the recon(cid:173)
`struction of picture Pl requires picture 10, the reconstruction
`of pictures B2 and 83 requires pictures 10 and Pl. the
`reconstruction of picture P4 requires picture Pl. and the
`reconstruction of pictures B5 and B6 requires pictures P4
`and Pl.
`These pictures are displayed in the following order:
`
`10. 82, 83, PI, 85, P4, 86
`
`15
`
`since a predicted picture P is reconstructed from a former
`picture in the display order, and since a bidirectional picture
`B is reconstructed from two pictures, one former and the
`other subsequem in the display order.
`To determine the memory area IMl-L\13 which the
`memory controller 24 must access, four picture pointers RP,
`FP, BP, and DP are used, respectively indicating the loca(cid:173)
`tions of the currently reconstructed picture, of the former
`(forward) picture, of the subsequent (backward) picture, and
`20 of the currently displayed picture. The following table sums
`up the values of the picture pointers during the decoding of
`the above succession.
`
`10
`
`IMJ
`
`Decode
`Display
`
`RP
`FP
`BP
`DP
`
`PI
`10
`
`1M2
`IMI
`
`!Ml
`
`82
`B2
`
`1M3
`!Ml
`1M2
`1M3
`
`B3
`B3
`
`1M3
`IM I
`1M2
`1M3
`
`P4
`PI
`
`IM I
`1M2
`
`1M2
`
`85
`85
`
`1M3
`1M2
`!Ml
`1M3
`
`25
`
`30
`
`7
`According to an aspect of the invention, the VLD circuit
`10 controls a bus VLDBUS intended to provide to the RLD
`circuitll data to be processed by the pipeline circuit 11- 13,
`as well as parameters to the half-pixel filler 14, to the inverse
`quantizer circuit 12, to the display controller 18, and to the 5
`memory

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket