Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
First Claim
1. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising:
- decoding the header of at least one macrblock using a first processing element; and
decoding the block layer data of said at least one macroblock using a second processing element; and
wherein the at least one macroblock comprises a first row of macroblocks of a frame.
6 Assignments
0 Petitions
Accused Products
Abstract
A video and graphics system processes video data including both analog video, e.g., NTSC/PAL/SECAM/S-video, and digital video, e.g., MPEG-2 video in SDTV or HDTV format. The video and graphics system includes a video decoder, which is capable of concurrently decoding multiple SLICEs of MPEG-2 video data. The video decoder includes multiple row decoding engines for decoding the MPEG-2 video data. Each row decoding engine concurrently decodes two or more rows of the MPEG-2 video data. The row decoding engines have a pipelined architecture for concurrently decoding multiple rows of MPEG-2 video data. The video decoder may be integrated on an integrated circuit chip with other video and graphics system components such as transport processors for receiving one or more compressed data streams and for extracting video data, and a video compositor for blending processed video data with graphics.
196 Citations
62 Claims
-
1. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising:
-
decoding the header of at least one macrblock using a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; and wherein the at least one macroblock comprises a first row of macroblocks of a frame. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 45)
-
-
9. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising:
-
decoding the header of at least one macrblock using a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; wherein the at least one block comprises block layer data from the first row of macroblocks; and wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising:
-
a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using; and wherein the at least one macroblock comprises a first row of macroblocks of a frame. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 46)
-
-
24. A circuit of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising:
-
a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; and wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
-
31. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising:
-
a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; wherein the at least one block comprises block layer data from the first row of macroblocks; and wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. - View Dependent Claims (32, 33, 34, 35, 36, 37)
-
-
38. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising:
-
decoding the header of at least one macrblock with a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; and wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. - View Dependent Claims (39, 40, 41, 42, 43, 44)
-
-
47. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising:
-
decoding the header of at least one macrblock using a first processing element; decoding the block layer data of said at least one macroblock using a second processing element; and decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54)
-
-
55. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising:
-
a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using; and wherein decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62)
-
Specification