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:
- receiving a plurality of rows of the MPEG data, each row comprising the plurality of macroblocks;
decoding the header of at least one macroblock using a first processing element; and
decoding the block layer data of said at least one macroblock using a second processing element, the second processing element being different from the first processing element;
wherein decoding the header comprises decoding the header of a first macroblock on a first one of the plurality of rows while concurrently decoding the block layer data of a second macroblock on a second one of the plurality of rows.
5 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.
-
Citations
14 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:
-
receiving a plurality of rows of the MPEG data, each row comprising the plurality of macroblocks; decoding the header of at least one macroblock using a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element, the second processing element being different from the first processing element; wherein decoding the header comprises decoding the header of a first macroblock on a first one of the plurality of rows while concurrently decoding the block layer data of a second macroblock on a second one of the plurality of rows. - View Dependent Claims (2, 3, 4, 5)
-
-
6. 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 macroblock using a first processing element; decoding the block layer data of said at least one macroblock using a second processing element; decoding the header of at least one other macroblock using a third processing element concurrently with decoding of the header of said at least one macroblock using the first processing element; and decoding the block layer data of said at least one other macroblock using a fourth processing element concurrently with decoding of the block layer data of said at least one macroblock using the second processing element.
-
-
7. An MPEG decoding system for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said system comprising:
-
a processor for decoding the header of at least one macroblock; and a variable length decoder for decoding the block layer data of said at least one macroblock, the variable length decoder being separate from the processor; and wherein the MPEG data is organized into a plurality of rows, each row comprising the plurality of macroblocks, and wherein the processor decodes the header of a first macroblock on a first one of the plurality of rows, while the variable length decoder concurrently decodes the block layer data of a second macroblock on a second one of the plurality of rows. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. An MPEG decoding system for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said system comprising:
-
a first processing element for decoding the header of at least one macroblock; a second processing element for decoding the block layer data of said at least one macroblock; a third processing element for decoding the header of at least one other macroblock concurrently with decoding the header of said at least one macroblock using the first processing element; and a fourth processing element for decoding the block layer data of said at least one other macroblock concurrently with decoding the block layer data of said at least one macroblock using the second processing element.
-
Specification