MPEG video decoder having a high bandwidth memory for use in decoding interlaced and progressive signals
First Claim
1. Apparatus of decoding a variable length encoded data stream including a plurality of variable length encoded data values representing a plurality of image frames the variable length encoded data values being arranged in sequence records, each sequence record including variable length encoded data values representing a plurality of images, wherein each sequence record of the variable length encoded data stream includes a header and each sequence record represents either an interlaced signal which is to be displayed in interlaced format or a progressive signal which is to be displayed in progressive format, the apparatus comprising:
- a memory having a configuration which partitions the memory into sections;
means for receiving the variable length encoded data stream and for storing the variable length encoded data stream into a first one of the sections of the memory;
decoding means including;
means for fetching the variable length encoded data stream from the first section of the memory;
means for processing the fetched variable length encoded data stream to produce first decoded values;
means for processing the sequence headers from the fetched variable length encoded data stream to produce a control signal which indicates whether the first decoded values are to be displayed in progressive format or in interlaced format;
means for fetching reference image data from a second one of the sections of the memory;
means for combining the fetched reference image data with the first decoded values to produce second decoded values which represent the current image; and
means for storing the second decoded values in a third one of the sections of the memory;
means for fetching image data from one of the second and third sections of the memory, for display; and
memory configuration means, responsive to the control signal, for changing the configuration of the memory between a configuration appropriate for decoding and displaying the interlaced signal and a configuration appropriate for decoding and displaying the progressive signal by changing relative amounts of memory allocated to said first section of the memory and to one of the said second and third sections of the memory, respectively.
1 Assignment
0 Petitions
Accused Products
Abstract
A decoder for a video signal encoded according to the MPEG-2 standard processes either interlace scan signals or progressive scan signals by dynamically reconfiguring a single high-bandwidth memory. The memory is used to hold 1) the input bit-stream, 2) first and second reference frames used for motion compensated processing, and 3) image data representing a field that is currently being decoded. The decoder includes circuitry which stores and fetches the bit-stream data, fetches the reference frame data, stores the image data for the field that is currently being decoded in block format and fetches this image data for conversion to raster-scan format. This circuitry also detects whether the signal is in interlace or progressive format from the input data stream. When an interlace format signal is being decoded, the memory is partitioned in one configuration and when a progressive format signal is being decoded, the memory is partitioned in another configuration.
207 Citations
12 Claims
-
1. Apparatus of decoding a variable length encoded data stream including a plurality of variable length encoded data values representing a plurality of image frames the variable length encoded data values being arranged in sequence records, each sequence record including variable length encoded data values representing a plurality of images, wherein each sequence record of the variable length encoded data stream includes a header and each sequence record represents either an interlaced signal which is to be displayed in interlaced format or a progressive signal which is to be displayed in progressive format, the apparatus comprising:
-
a memory having a configuration which partitions the memory into sections; means for receiving the variable length encoded data stream and for storing the variable length encoded data stream into a first one of the sections of the memory; decoding means including; means for fetching the variable length encoded data stream from the first section of the memory; means for processing the fetched variable length encoded data stream to produce first decoded values; means for processing the sequence headers from the fetched variable length encoded data stream to produce a control signal which indicates whether the first decoded values are to be displayed in progressive format or in interlaced format; means for fetching reference image data from a second one of the sections of the memory; means for combining the fetched reference image data with the first decoded values to produce second decoded values which represent the current image; and means for storing the second decoded values in a third one of the sections of the memory; means for fetching image data from one of the second and third sections of the memory, for display; and memory configuration means, responsive to the control signal, for changing the configuration of the memory between a configuration appropriate for decoding and displaying the interlaced signal and a configuration appropriate for decoding and displaying the progressive signal by changing relative amounts of memory allocated to said first section of the memory and to one of the said second and third sections of the memory, respectively. - View Dependent Claims (2, 3, 4, 12)
-
-
5. Apparatus for decoding a data stream including a plurality of variable length encoded data values representing a plurality of image frames of a video signal, the data stream including a plurality of sequence records, each sequence record having a header and each sequence record containing variable length encoded data values representing either an interlaced signal which is to be displayed in interlaced format or a progressive signal which is to be displayed in progressive format, the apparatus comprising:
-
a memory, having a configuration which defines a partitioning of the memory into distinct memory areas; an input circuit which receives the data stream and stores the data stream into a first one of the memory areas; a decoder which processes the received data stream to produce data representing a decoded image in block format, which processes the sequence headers of the received data stream to generate a scan-type control signal, the scan-type control signal indicating whether the data stream is to be decoded to produce progressive format image data or interlaced format image data, and which stores the decoded image that represents the current image into a second one of the memory areas in block format; a block to raster converter, which retrieves the decoded image from the memory in block format and which converts the decoded images from block format to raster format; and circuitry which configures the memory to allocate data areas suitable for decoding signals in either the progressive format or the interlaced format, responsive to the scan-type control signal by changing relative amounts of memory allocated to said first and second memory areas, respectively. - View Dependent Claims (7, 8)
-
-
6. Apparatus for decoding a data stream including a plurality of variable length encoded data values representing a plurality of image frames, wherein the data stream includes a plurality of sequence records, each sequence record having a header and each sequence record containing variable length encoded data values representing one of an interlaced scan image sequence and a progressive scan image sequence which is to be displayed in interlaced format, the apparatus comprising:
-
a memory, having a configuration which defines a partitioning of the memory into distinct memory areas; an input circuit which receives the data stream and stores the data stream into a first one of the memory areas; a decoder which processes the received data stream to produce data representing a decoded current image in block format, which processes the sequence headers of the received data stream to generate a scan-type control signal, the scan-type control signal indicating whether the data stream represents the interlaced scan image sequence or the progressive scan image sequence, and which stores blocks of the decoded image data, that represent respective portions of the current image, into a second one of the memory areas, as the blocks of decoded image data are produced; a block to raster converter, which fetches blocks of decoded image data from the second memory area and converts the decoded images from block format to raster format; and circuitry which configures the memory to allocate data areas suitable for decoding signals in either the progressive format or the interlaced format, responsive to the scan-type control signal by changing relative amounts of memory allocated to the first and second memory areas, respectively. - View Dependent Claims (9, 10)
-
-
11. Apparatus for decoding a data stream including a plurality of variable length encoded data values representing a plurality of image frames of a video signal, the data stream including a plurality of sequence records, each sequence record having a header and each sequence record containing variable length encoded data values representing one of an interlaced scan image and a progressive scan image which is to be displayed in interlaced format, the apparatus comprising:
-
memory, having a configuration which defines a partitioning of the memory into distinct memory areas; an input circuit which receives the data stream and stores the data stream into a first one of the memory areas; a decoder which processes the received data stream to produce data representing a decoded image in block format, which processes the sequence headers of the received data stream to generate a scan-type control signal the scan-type control signal indicating whether the data stream represents the interlaced scan image or the progressive scan image, and which stores the decoded image data, representing the current image, as the decoded image data is produced, in a second one of the memory areas; circuitry which configures the memory to allocate data areas suitable for decoding signals in either the progressive format or the interlaced format, responsive to the scan-type control signal by changing relative amounts of memory allocated to the first and second memory areas, respectively; and a block to raster converter, which converts the decoded images from block format to raster format, wherein when the scan-type control signal indicates that the data stream represents a progressive scan image, the block to raster converter fetches blocks of contiguous lines for each frame to be displayed and processes for display, only alternate ones of the lines from each fetched block.
-
Specification