US5694332AExpiredUtility

MPEG audio decoding system with subframe input buffering

73
Assignee: LSI LOGIC CORPPriority: Dec 13, 1994Filed: Dec 13, 1994Granted: Dec 2, 1997
Est. expiryDec 13, 2014(expired)· nominal 20-yr term from priority
Inventors:Greg Maturi
G10L 19/0208
73
PatentIndex Score
62
Cited by
7
References
29
Claims

Abstract

A Motion Picture Experts Group (MPEG) video/audio data bitstream comprises frames of encoded audio data, each of which includes a plurality of integrally encoded subframes, which are decoded by an audio decoder for presentation. An input buffer arrangement includes first and second buffer memories which each have a capacity to store one subframe. The first and second buffer memories are used alternatingly, with one storing a subframe of input data while another subframe is being read out of the other. A third buffer memory, which has a capacity to store at least one subframe, is provided upstream of the first and second buffer memories to prevent the first and second buffer memories from overflowing or underflowing.

Claims

exact text as granted — not AI-modified
I claim: 
     
       1. A decoding system for decoding a data bitstream including frames of data, each frame including a plurality of subframes of integrally encoded data, comprising: a first buffer memory having a capacity for storing at least one subframe;   a second buffer memory having a capacity for storing at least one subframe;   controller means for alternatingly storing subframes in the first buffer memory and the second buffer memory; and   decoding means for reading out and decoding a subframe from the first buffer memory while the controller means stores a subframe in the second buffer memory, and reading and decoding a subframe from the second buffer while a subframe is being stored in the first buffer memory.   
     
     
       2. A system as in claim 1, further comprising a third buffer memory disposed upstream of the first and second buffer memories. 
     
     
       3. A system as in claim 2, in which the third buffer memory has a capacity for storing at least one subframe. 
     
     
       4. A system as in claim 1, in which the controller means comprises: computing means for computing a number of bits in one subframe;   counting means for counting bits of said bitstream; and   toggling means for toggling the first buffer memory between a read mode and a write mode and toggling the second buffer memory between said write mode and said read mode respectively in response to the counter means counting said number of bits.   
     
     
       5. A system as in claim 4, in which: the counting means loads said number of bits from the computing means in response to a reset condition, and is decremented by counting said bits; and   the toggling means toggles the first and second buffer memories in response to the counting means being decremented to zero.   
     
     
       6. A system as in claim 5, in which each of the first and second buffer memories generates said reset condition in response to a subframe being read out thereof by the decoding means. 
     
     
       7. A system as in claim 5, in which the decoding means generates said reset condition in response to completion of decoding a subframe. 
     
     
       8. A system as in claim 4, in which: each frame of data further includes information indicating said number of bits; and   the computing means computes said number of bits from said information.   
     
     
       9. A system as in claim 4, in which: said bitstream is an MPEG bitstream, comprising a header for each frame including audio subband allocation data; and   the computing means computes said number of bits from said subband allocation data.   
     
     
       10. A system as in claim 9, in which the computing means comprises: header decoding means for decoding said header to obtain said subband allocation data; and   summing means for summing said subband allocation data to obtain said number of bits.   
     
     
       11. A system as in claim 1, in which the first and second buffer memories each have a capacity for storing no more than one subframe. 
     
     
       12. A method of decoding an MPEG bitstream including frames of data, each frame including a plurality of subframes of integrally encoded audio subband sample data, comprising the steps of: (a) providing a first buffer memory having a capacity for storing at least one subframe;   (b) providing a second buffer memory having a capacity for storing at least one subframe;   (c) alternatingly storing substantially one subframe at a time in the first buffer memory and the second buffer memory; and   (d) reading out and decoding a subframe from the first buffer memory while a subframe is being stored in the second buffer memory, and reading and decoding a subframe from the second buffer while a subframe is being stored in the first buffer memory.   
     
     
       13. A method as in claim 12, further comprising the step, performed prior to step (c), of: (e) providing a third buffer memory upstream of the first and second buffer memories; and   (f) using the third buffer memory to accumulate said data.   
     
     
       14. A method as in claim 13, in which step (e) comprises providing the third buffer memory as having a capacity for storing at least one subframe. 
     
     
       15. A method as in claim 12, in which step (c) comprises the substeps of: (e) computing a number of bits in one subframe;   (f) counting bits of said bitstream; and   (g) toggling the first buffer memory between a read mode and a write mode and toggling the second buffer memory between said write mode and said read mode respectively after said number of bits has been counted in step (f).   
     
     
       16. A method as in claim 15, in which: each frame of data further includes information indicating said number of bits; and   step (e) comprises computing said number of bits from said information.   
     
     
       17. A method as in claim 15, in which: each frame comprises a header including subband allocation data; and   step (e) comprises computing said number of bits from said subband allocation data.   
     
     
       18. A method as in claim 17, in which step (e) comprises the substeps of: (h) decoding said header to obtain said subband allocation data; and   (i) summing said subband allocation data to obtain said number of bits.   
     
     
       19. A method as in claim 12, in which: step (a) comprises providing a first buffer memory having a capacity for storing no more than one subframe; and   step (b) comprises providing a second buffer memory having a capacity for storing substantially one subframe.   
     
     
       20. A decoding system for decoding an MPEG input data bitstream including frames of data, each frame including a plurality of subframes of integrally encoded audio subband sample data, comprising: a first buffer memory having a capacity for storing at least one subframe;   a second buffer memory having a capacity for storing at least one subframe;   a third buffer memory disposed upstream of the first and second buffer memories;   controller means for alternatingly storing subframes in the first buffer memory and the second buffer memory; and   decoding means for reading out and decoding a subframe from the first buffer memory while the controller means stores another subframe in the second buffer memory.   
     
     
       21. A system as in claim 20, in which the third buffer memory has a capacity for storing at least one subframe. 
     
     
       22. A system as in claim 20, in which the controller means comprises: computing means for computing a number of bits in one subframe;   counting means for counting bits of said bitstream; and   toggling means for toggling the first buffer memory between a read mode and a write mode and toggling the second buffer memory between said write mode and said read mode respectively in response to the counter means counting said number of bits.   
     
     
       23. A system as in claim 22, in which: the counting means loads said number of bits from the computing means in response to a reset condition, and is decremented by counting said bits; and   the toggling means toggles the first and second buffer memories in response to the counting means being decremented to zero.   
     
     
       24. A system as in claim 23, in which each of the first and second buffer memories generates said reset condition in response to a subframe being read out thereof by the decoding means. 
     
     
       25. A system as in claim 24, in which: said bitstream comprises a header for each frame including subband allocation data; and   the computing means computes said number of bits from said subband allocation data.   
     
     
       26. A system as in claim 25, in which the computing means comprises: header decoding means for decoding said header to obtain said subband allocation data; and   summing means for summing said subband allocation data to obtain said number of bits.   
     
     
       27. A system as in claim 23, in which the decoding means generates said reset condition in response to completion of decoding a subframe. 
     
     
       28. A system as in claim 22, in which: each frame of data further includes information indicating said number of bits; and   the computing means computes said number of bits from said information.   
     
     
       29. A system as in claim 20, in which the first and second buffer memories each have a capacity for storing no more than one subframe.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.