IP Library Granted Patent US 7,548,176
Granted Patent B2
US 7,548,176 · App. 11/777,144 · Granted Jun 16, 2009

Data coding buffer for electrical computers and digital data processing systems

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,548,176
App. No.
11/777,144
Granted
Jun 16, 2009
Kind
B2
Abstract

A method of buffering includes determining, based at least in part on a radix of a data symbol, a number of discrete values resulting from coding the data symbol into a buffer. The number of discrete values is compared with a buffer capacity of the buffer. The buffer is scaled based at least in part on the radix of the data symbol if the number of discrete values does not exceed the buffer capacity of the buffer. The data symbol is coded into the scaled buffer if the number of discrete values does not exceed the buffer capacity of the buffer.

Claims (50)

1. A method of buffering comprising:

determining a number of discrete values resulting from coding a data symbol into a buffer based at least in part on a radix of the data symbol;

comparing the number of discrete values with a buffer capacity of the buffer;

scaling the buffer based at least in part on the radix of the data symbol if the number of discrete values does not exceed the buffer capacity of the buffer; and

coding the data symbol into the scaled buffer if the number of discrete values does not exceed the buffer capacity of the buffer.

2. The method of claim 1 , further comprising:

sending the coded data symbol from the buffer to a decoder;

initializing the buffer to zero; and

coding a second data symbol into the initialized buffer, wherein the data symbol and the second data symbol are part of a sequence of data symbols.

3. The method of claim 1 , wherein the number of discrete values is determined based at least in part on a comparison of the radix of the data symbol with an accumulated radix of previously coded data symbols.

4. The method of claim 3 , wherein the data symbol is part of a sequence of data symbols, and further wherein the sequence of data symbols comprises mixed radix data symbols.

5. The method of claim 1 , further comprising altering the buffer capacity of the buffer in response to the comparing.

6. The method of claim 5 , wherein the altering comprises increasing the buffer capacity of the buffer to accommodate at least a portion of the coded data symbol.

7. The method of claim 1 , further comprising providing the buffer to a decoder if the number of discrete values exceeds the buffer capacity of the buffer.

8. The method of claim 7 , wherein a length of the buffer is known by the decoder prior to receipt of the buffer by the decoder.

9. The method of claim 1 , wherein the data symbol is part of a sequence of data symbols, wherein the sequence of data symbols comprises a second part of a code resulting from combinatorial coding.

10. The method of claim 1 , wherein the data symbol is part of a sequence of data symbols, and further wherein the sequence of data symbols represents at least a portion of an audio stream or a video stream.

11. A computer-readable medium having stored thereon computer-readable instructions that, if executed, cause a computing device to:

determine a number of discrete values resulting from coding a data symbol into a buffer based at least in part on a radix of the data symbol;

compare the number of discrete values with a buffer capacity of the buffer;

scale the buffer based at least in part on the radix of the data symbol if the number of discrete values does not exceed the buffer capacity of the buffer; and

code the data symbol into the scaled buffer if the number of discrete values does not exceed the buffer capacity of the buffer.

12. The computer-readable medium of claim 11 , wherein the computer-readable instructions, when executed, further cause the computing device to:

send the coded data symbol from the buffer to a decoder;

initialize the buffer to zero; and

code a second data symbol into the initialized buffer, wherein the data symbol and the second data symbol are part of a sequence of data symbols.

13. The computer-readable medium of claim 11 , wherein the number of discrete values is determined based at least in part on a comparison of the radix of the data symbol with an accumulated radix of previously coded data symbols.

14. The computer-readable medium of claim 13 , wherein the data symbol is part of a sequence of data symbols, and further wherein the sequence of data symbols comprises mixed radix data symbols.

15. The computer-readable medium of claim 11 , wherein the computer-readable instructions, when executed, further cause the computing device to alter the buffer capacity of the buffer in response to the comparison.

16. The computer-readable medium of claim 15 , wherein the altering comprises increasing the buffer capacity of the buffer to accommodate at least a portion of the coded data symbol.

17. The computer-readable medium of claim 11 , wherein the computer-readable instructions, when executed, further cause the computing device to provide contents of the buffer to a decoder if the number of discrete values exceeds the buffer capacity of the buffer.

18. The computer-readable medium of claim 17 , wherein a length of the buffer is known by the decoder.

19. The computer-readable medium of claim 11 , wherein the data symbol is part of a sequence of data symbols, and further wherein the sequence of data symbols comprises a second part of a code resulting from combinatorial coding.

20. The computer-readable medium of claim 11 , wherein the data symbol comprises a portion of an audio stream or a video stream.

21. An apparatus, comprising:

means for determining a number of discrete values resulting from coding a data symbol into a buffer based at least in part on a radix of the data symbol;

means for comparing the number of discrete values with a buffer capacity of the buffer;

means for scaling the buffer based at least in part on the radix of the data symbol if the number of discrete values does not exceed the buffer capacity of the buffer; and

means for coding the data symbol into the scaled buffer if the number of discrete values does not exceed the buffer capacity of the buffer.

22. The apparatus of claim 21 , further comprising:

means for sending the coded data symbol from the buffer to a decoder;

means for initializing the buffer to zero; and

means for coding a second data symbol into the initialized buffer, wherein the data symbol and the second data symbol are part of a sequence of data symbols.

23. The apparatus of claim 21 , wherein the number of discrete values is determined based at least in part on a comparison of the radix of the data symbol with an accumulated radix of previously coded data symbols.

24. The apparatus of claim 23 , wherein the data symbol is part of a sequence of data symbols, and further wherein the sequence of data symbols comprises mixed radix data symbols.

25. The apparatus of claim 21 , further comprising:

means for altering the buffer capacity of the buffer in response to said comparing.

26. The apparatus of claim 25 , wherein said means for altering comprises means for increasing the buffer capacity of the buffer to accommodate at least a portion of the coded data symbol.

27. The apparatus of claim 21 , further comprising means for providing contents of the buffer to a decoder if the number of discrete values exceeds the buffer capacity of the buffer.

28. The apparatus of claim 27 , wherein a length of the buffer is known by the decoder.

Assignments (2)
MERGER Recorded Sep 9, 2015
From: INTELLECTUAL VENTURES FUND 44 LLC
To: XYLON LLC
Reel/Frame 036574/0461 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2008
From: MONRO, DONALD M.
To: INTELLECTUAL VENTURES FUND 44 LLC
Reel/Frame 020495/0452 →
Continuity (1)
Related Publication 20090015442A1 · Jan 15, 2009