← Back to Patent Explorer
US5893066A Expired / Lapsed US ⏱️ 0.0 years remaining

Fast requantization apparatus and method for MPEG audio decoding

Assignee: Samsung Electronics Co Ltd
•
Filing: 1996-10-15
•
Granted: 1999-04-06
•
Expires: 2016-10-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An audio decoder in a multimedia processor improves decoding efficiency and performance through the usage of multiple parallel processors including a scalar processor and a vector processor. The scalar processor most efficiently performs tasks including bit manipulation, indexing and conditional operations. The vector processor most efficiently performs operations involving multiple data calculations, operating on unconditional, sequential data. Improved performance is achieved by executing as many operations as possible on the vector processor, rather than the scalar processor, so long as the data is sequential data. The audio decoder includes a requantization program code that shifts data handling operations from the scalar processor to the vector processor through the conversion of nonsequential data to sequential data, thereby "vectorizing" the data.

Inventors

  • 👤 Kicheon Hong

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 12:54
CPC Classifications
G; G10; G10L; G10L19/00; G10L19/02; G10L19/032; G10L19/038; H; H04; H04B; H04B1/00; H04B1/66; H04B1/665; G10L19/04; G10L19/16; G10L19/167; H04N; H04N21/00; H04N21/20; H04N21/23; H04N21/233; H04N21/2335

Claims Analysis

Total Claims: 45
Claim 1
Independent Claim 118 words
An audio decoder in a multiprocessor multimedia system having a scalar processor and a vector processor comprising: a frame synchronization program code that executes on the scalar processor to synchronize an audio bitstream input signal; an information extraction program code that executes on the scalar processor to extract information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing program code that executes on the scalar processor to convert the nonsequential sample data to sequential sample data; a requantization program code that executes on the vector processor to requantize the sequential sample data; and a sub-band filtering program code that executes on the vector processor to generate a filtered audio sample output signal.
Claim 2
Dependent Claim 118 words
An audio decoder in a multiprocessor multimedia system having a scalar processor and a vector processor comprising: a frame synchronization program code that executes on the scalar processor to synchronize an audio bitstream input signal; an information extraction program code that executes on the scalar processor to extract information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing program code that executes on the scalar processor to convert the nonsequential sample data to sequential sample data; a requantization program code that executes on the vector processor to requantize the sequential sample data; and a sub-band filtering program code that executes on the vector processor to generate a filtered audio sample output signal.
Claim 3
Dependent Claim 105 words
An audio decoder according to claim 1 wherein: the information extraction program code further includes: a program code that extracts header information from the audio bitstream; a program code that extracts bit allocation bits from the audio bitstream; a program code that extracts scalefactor selection information and a scalefactor from the audio bitstream; and a program code that extracts sample data from the audio bitstream; and the vectorizing program code further includes: a scalefactor vectorizing program code that transforms data in a scalefactor array from nonsequential data that is a function of a bit index into sequential data that is a function of sub-band number.
Claim 4
Dependent Claim 65 words
An audio decoder according to claim 2 wherein the program code that extracts scalefactor selection information and a scalefactor from the audio bitstream further comprises: a program code that extracts a scalefactor index from the audio bitstream; a program code that calculates a plurality of scalefactor coefficients based on the scalefactor index; and a program code that stores the scalefactor coefficients in a scalefactor array.
Claim 5
Dependent Claim 20 words
A audio decoder in a multiprocessor multimedia system according to claim 2 wherein the audio bitstream is an MPEG audio.
Claim 6
Dependent Claim 36 words
An audio decoder according to claim 1 wherein the vectorization program code further comprises: a program code that arranges a plurality of quantization coefficients as all-sequential data corresponding to a channel index and a sub-band number.
Claim 7
Dependent Claim 24 words
An audio decoder according to claim 5 wherein the quantization coefficients include a mask function array and a plurality of requantization coefficient data arrays.
Claim 8
Dependent Claim 57 words
An audio decoder according to claim 1 wherein the vectorization program code further comprises: a program code that arranges a plurality of quantization coefficient arrays, a scalefactor array and a masking data array as all-sequential data arrays corresponding to a channel index and a sub-band number, the arrays being arranged for usage by the requantization program code.
Claim 9
Dependent Claim 20 words
A audio decoder in a multiprocessor multimedia system according to claim 1 wherein the audio bitstream is an MPEG audio.
Claim 10
Independent Claim 110 words
A method for decoding an audio bitstream operating in a multiprocessor multimedia system having a scalar processor and a vector processor comprising: receiving the audio bitstream; synchronizing the multiprocessor multimedia system to the incoming audio bitstream via a program code executing on the scalar processor; extracting information from the audio bitstream via a program code operating on the scalar processor; converting nonsequential sample data to sequential sample data via a vectorizing program code executing on the scalar processor; requantizing sample data via a program code executing on the vector processor; and sub-band filtering the sample data via a program code executing on the vector processor to generate filtered audio samples.
Claim 11
Independent Claim 110 words
A method for decoding an audio bitstream operating in a multiprocessor multimedia system having a scalar processor and a vector processor comprising: receiving the audio bitstream; synchronizing the multiprocessor multimedia system to the incoming audio bitstream via a program code executing on the scalar processor; extracting information from the audio bitstream via a program code operating on the scalar processor; converting nonsequential sample data to sequential sample data via a vectorizing program code executing on the scalar processor; requantizing sample data via a program code executing on the vector processor; and sub-band filtering the sample data via a program code executing on the vector processor to generate filtered audio samples.
Claim 12
Dependent Claim 92 words
A method according to claim 9 wherein: the operation of extracting information from the audio bitstream further comprises: extracting header information from the audio bitstream; extracting bit allocation bits from the audio bitstream; extracting scalefactor selection information and a scalefactor from the audio bitstream; and extracting sample data from the audio bitstream the operation of converting nonsequential sample data to sequential sample data further includes: transforming data in a scalefactor array from nonsequential data that is a function of a bit index into sequential data that is a function of sub-band number.
Claim 13
Dependent Claim 51 words
A method according to claim 10 wherein the step of extracting scalefactor selection information and a scalefactor from the audio bitstream further comprises: extracting a scalefactor index from the audio bitstream; calculating a plurality of scalefactor coefficients based on the scalefactor index; and storing the scalefactor coefficients in a scalefactor array.
Claim 14
Dependent Claim 19 words
A method for decoding an audio bitstream according to claim 10 wherein the audio bitstream is an MPEG audio.
Claim 15
Dependent Claim 38 words
A method according to claim 9 wherein the operation of converting nonsequential sample data to sequential sample data further comprises: arranging a plurality of quantization coefficients as all-sequential data corresponding to a channel index and a sub-band number.
Claim 16
Dependent Claim 23 words
A method according to claim 13 wherein the quantization coefficients include a mask function array and a plurality of requantization coefficient data arrays.
Claim 17
Dependent Claim 62 words
A method according to claim 9 wherein the operation of converting nonsequential sample data to sequential sample data further comprises: arranging a plurality of quantization coefficient arrays, a scalefactor array and a masking data array as all-sequential data arrays corresponding to a channel index and a sub-band number, the arrays being arranged for usage by the program code for requantizing sample data.
Claim 18
Dependent Claim 19 words
A method for decoding an audio bitstream according to claim 9 wherein the audio bitstream is an MPEG audio.
Claim 19
Dependent Claim 156 words
A multiprocessor multimedia system comprising: a scalar processor; a vector processor coupled to the scalar processor; an audio decoder program code that executes on the scalar processor and the vector processor in combination to decode an audio bitstream, the audio decoder program including: a program code that receives the audio bitstream; a frame synchronization program code that executes on the scalar processor to synchronize the audio bitstream; an information extraction program code that executes on the scalar processor, the information extraction program code for extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing program code that executes on the scalar processor to convert the nonsequential sample data to sequential sample data; a program code to requantize the sequential sample data, the program code executing on the vector processor; and a sub-band filtering program code that executes on the vector processor to generate a filtered audio sample output signal.
Claim 20
Dependent Claim 156 words
A multiprocessor multimedia system comprising: a scalar processor; a vector processor coupled to the scalar processor; an audio decoder program code that executes on the scalar processor and the vector processor in combination to decode an audio bitstream, the audio decoder program including: a program code that receives the audio bitstream; a frame synchronization program code that executes on the scalar processor to synchronize the audio bitstream; an information extraction program code that executes on the scalar processor, the information extraction program code for extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing program code that executes on the scalar processor to convert the nonsequential sample data to sequential sample data; a program code to requantize the sequential sample data, the program code executing on the vector processor; and a sub-band filtering program code that executes on the vector processor to generate a filtered audio sample output signal.
Claim 21
Dependent Claim 106 words
A multiprocessor multimedia system according to claim 17 wherein: the information extraction program code further comprises: a program code that extracts header information from the audio bitstream; a program code that extracts bit allocation bits from the audio bitstream; a program code that extracts scalefactor selection information and a scalefactor from the audio bitstream; and a program code that extracts sample data from the audio bitstream; and the vectorizing program code further includes: a scalefactor vectorizing program code that transforms data in a scalefactor array from nonsequential data that is a function of a bit index into sequential data that is a function of sub-band number.
Claim 22
Dependent Claim 66 words
A multiprocessor multimedia system according to claim 18 wherein the program code that extracts scalefactor selection information and a scalefactor from the audio bitstream further comprises: a program code that extracts a scalefactor index from the audio bitstream; a program code that calculates a plurality of scalefactor coefficients based on the scalefactor index; and a program code that stores the scalefactor coefficients in a scalefactor array.
Claim 23
Dependent Claim 16 words
A multiprocessor multimedia system according to claim 18 wherein the audio bitstream is an MPEG audio.
Claim 24
Dependent Claim 37 words
A multiprocessor multimedia system according to claim 17 wherein the vectorization program code further comprises: a program code that arranges a plurality of quantization coefficients as all-sequential data corresponding to a channel index and a sub-band number.
Claim 25
Dependent Claim 25 words
A multiprocessor multimedia system according to claim 21 wherein the quantization coefficients include a mask function array and a plurality of requantization coefficient data arrays.
Claim 26
Dependent Claim 61 words
A multiprocessor multimedia system according to claim 17 wherein the vectorization program code further comprises: a program code that arranges a plurality of quantization coefficient arrays, a scalefactor array and a masking data array as all-sequential data arrays corresponding to a channel index and a sub-band number, the arrays being arranged for usage by the program code for requantizing sample data.
Claim 27
Dependent Claim 16 words
A multiprocessor multimedia system according to claim 17 wherein the audio bitstream is an MPEG audio.
Claim 28
Dependent Claim 124 words
A computer program product that executes on a computer system including a scalar processor and a vector processor, the computer program product comprising: a computer usable medium having computable readable code embodied therein including: a frame synchronization routine executable on the scalar processor to synchronize an audio bitstream; an information extraction routine executable on the scalar processor, the information extraction program code extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing routine executable on the scalar processor to convert the nonsequential sample data to sequential sample data; a requantizing routine executable on the vector processor to requantize the sequential sample data; and a sub-band filtering routine executable on the vector processor to supply filtered audio samples.
Claim 29
Dependent Claim 124 words
A computer program product that executes on a computer system including a scalar processor and a vector processor, the computer program product comprising: a computer usable medium having computable readable code embodied therein including: a frame synchronization routine executable on the scalar processor to synchronize an audio bitstream; an information extraction routine executable on the scalar processor, the information extraction program code extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing routine executable on the scalar processor to convert the nonsequential sample data to sequential sample data; a requantizing routine executable on the vector processor to requantize the sequential sample data; and a sub-band filtering routine executable on the vector processor to supply filtered audio samples.
Claim 30
Dependent Claim 109 words
A computer program product according to claim 25 wherein: the information extraction routine further includes: a header information extracting routine that extracts header information from an audio bitstream; a bit extracting routine that extracts bit allocation bits from the audio bitstream; a scalefactor extracting routine that extracts scalefactor selection information and a scalefactor from the audio bitstream; and a sample data extracting routine that extracts sample data from the audio bitstream; and the vectorizing routine further includes: a scalefactor vectorizing routine that transforms data in a scalefactor array from nonsequential data that is a function of a bit index into sequential data that is a function of sub-band number.
Claim 31
Dependent Claim 52 words
A computer program product according to claim 25 wherein: the scalefactor extracting routine further comprises: a routine that extracts a scalefactor index from the audio bitstream; a routine that calculates a plurality of scalefactor coefficients based on the scalefactor index; and a routine that stores the scalefactor coefficients in a scalefactor array.
Claim 32
Dependent Claim 17 words
A computer program product according to claim 26 wherein the audio bitstream is an MPEG audio bitstream.
Claim 33
Dependent Claim 35 words
A computer program product according to claim 25 wherein the vectorization routine further comprises: a routine that arranges a plurality of quantization coefficients as all-sequential data corresponding to a channel index and a sub-band number.
Claim 34
Dependent Claim 25 words
A computer program product according to claim 29 wherein the quantization coefficients include a mask function array and a plurality of requantization coefficient data arrays.
Claim 35
Dependent Claim 55 words
A computer program product according to claim 29 wherein the vectorization routine further comprises: a routine that arranges a plurality of quantization coefficient arrays, a scalefactor array and a masking data array as all-sequential data arrays corresponding to a channel index and a sub-band number, the arrays being arranged for usage by the requantization routine.
Claim 36
Dependent Claim 17 words
A computer program product according to claim 25 wherein the audio bitstream is an MPEG audio bitstream.
Claim 37
Dependent Claim 144 words
A computer system comprising: a scalar processor; a vector processor coupled to the scalar processor; computer program product that executes on a computer system including a scalar processor and a vector processor, the computer program product including a computer usable medium having computable readable code embodied therein including: a frame synchronization routine that executes on the scalar processor to synchronize an audio bitstream; an information extraction routine that executes on the scalar processor, the information extraction routine extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing routine that executes on the scalar processor, the vectorizing routine converting the nonsequential sample data to sequential sample data; a requantizing routine that executes on the vector processor to requantize the sequential sample data; and a sub-band filtering routine that executes on the vector processor to supply filtered audio samples.
Claim 38
Dependent Claim 144 words
A computer system comprising: a scalar processor; a vector processor coupled to the scalar processor; computer program product that executes on a computer system including a scalar processor and a vector processor, the computer program product including a computer usable medium having computable readable code embodied therein including: a frame synchronization routine that executes on the scalar processor to synchronize an audio bitstream; an information extraction routine that executes on the scalar processor, the information extraction routine extracting information from the audio bitstream, the extracted audio bitstream information including nonsequential sample data; a vectorizing routine that executes on the scalar processor, the vectorizing routine converting the nonsequential sample data to sequential sample data; a requantizing routine that executes on the vector processor to requantize the sequential sample data; and a sub-band filtering routine that executes on the vector processor to supply filtered audio samples.
Claim 39
Dependent Claim 109 words
A computer program product according to claim 33 wherein: the information extraction routine further includes: a header information extracting routine that extracts header information from the audio bitstream; a bit extracting routine that extracts bit allocation bits from the audio bitstream; a scalefactor extracting routine that extracts scalefactor selection information and a scalefactor from the audio bitstream; and a sample data extracting routine that extracts sample data from the audio bitstream; and the vectorizing routine further includes: a scalefactor vectorizing routine that transforms data in a scalefactor array from nonsequential data that is a function of a bit index into sequential data that is a function of sub-band number.
Claim 40
Dependent Claim 17 words
A computer program product according to claim 34 wherein the audio bitstream is an MPEG audio bitstream.
Claim 41
Dependent Claim 52 words
A computer program product according to claim 33 wherein: the scalefactor extracting routine further comprises: a routine that extracts a scalefactor index from the audio bitstream; a routine that calculates a plurality of scalefactor coefficients based on the scalefactor index; and a routine that stores the scalefactor coefficients in a scalefactor array.
Claim 42
Dependent Claim 35 words
A computer program product according to claim 33 wherein the vectorization routine further comprises: a routine that arranges a plurality of quantization coefficients as all-sequential data corresponding to a channel index and a sub-band number.
Claim 43
Dependent Claim 25 words
A computer program product according to claim 37 wherein the quantization coefficients include a mask function array and a plurality of requantization coefficient data arrays.
Claim 44
Dependent Claim 58 words
A computer program product according to claim 37 wherein the vectorization routine further comprises: a routine that arranges a plurality of quantization coefficient arrays, a scalefactor array and a masking data array as all-sequential data arrays corresponding to a channel index and a sub-band number, the arrays being arranged for usage by the sequential sample data requantizating routine.
Claim 45
Dependent Claim 16 words
A computer system according to claim 33 wherein the audio bitstream is an MPEG audio bitstream.

References Cited (Backward Citations)

US5418973A Cited
US5517666A Cited
US5649053A Cited
US5576765A Cited
US5675703A Cited
US5673289A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-04-05 2002-10-05 2003-04-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-04-05 2006-10-05 2007-04-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-04-05 2010-10-05 2011-04-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag