IP Library Granted Patent US 7,770,091
Granted Patent B2
US 7,770,091 · App. 11/425,137 · Granted Aug 3, 2010

Data compression for use in communication 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,770,091
App. No.
11/425,137
Granted
Aug 3, 2010
Kind
B2
Abstract

Techniques for data compression are provided. A data compression technique may include selecting a symbol string, being one or more characters, that occurs within a data set, generating a symbol string code corresponding to respective positions of the symbol string within the data set, successively repeating the above procedure for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes, and generating a compressed data code through combining the respective symbol string codes.

Claims (55)

1. A method of compressing a data set, comprising:

selecting a symbol string, being one or more characters, that occurs within the data set;

generating a symbol string code corresponding to respective positions of the symbol string within the data set;

repeating the selecting a symbol string and the generating a symbol string code for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes; and

generating a compressed data code through combining the respective symbol string codes.

2. The method of claim 1 , further comprising for at least one of the respective symbol string codes, coding respective positions of the symbol string using run length coding.

3. The method of claim 2 , wherein the coding comprises Golomb coding.

4. The method of claim 2 , wherein the coding comprises binary arithmetic coding.

5. The method of claim 1 , further comprising terminating the symbol string code with an End of Group (EOG) symbol.

6. The method of claim 1 , wherein the generating a symbol string code comprises determining distances between occurrences of the symbol string within the data set and generating the symbol string code based on the distances.

7. The method of claim 6 , wherein the generating a symbol string code comprises determining the distances between occurrences of the symbol string within the data set when positions of previously coded symbol strings are omitted.

8. The method of claim 1 , wherein the selecting a symbol string includes selecting a symbol string from a data set having a known length.

9. The method of claim 8 , wherein the generating a symbol string code does not include generating a symbol string code for a last symbol string.

10. The method of claim 1 , wherein the selecting a symbol string includes selecting a symbol string from a data set having a standard length.

11. The method of claim 1 , further comprising prefixing a length of the data set to the compressed data code.

12. The method of claim 1 , further comprising receiving an indication of a length of the data set before coding.

13. The method of claim 1 , further comprising employing a predetermined order of the symbol strings.

14. The method of claim 13 , further comprising ordering the symbol strings relative to their frequency of occurrence.

15. The method of claim 1 , wherein the selecting a symbol string includes selecting a symbol string that has a fixed predefined form.

16. The method of claim 1 , wherein the selecting a symbol string includes selecting a symbol string that has flexibility in form.

17. The method of claim 1 , further comprising prefixing the symbol string code with the symbol string.

18. The method of claim 1 , further comprising postfixing the symbol string code with the symbol string.

19. The method of claim 1 , further comprising:

generating the symbol string codes in a predetermined order during a first mode; and

embedding the symbol strings in the compressed data code in a second mode.

20. The method of claim 1 , further comprising interpreting a No More Groups signal as the end of the data set.

21. The method of claim 1 , further comprising combining additional information about the symbol string with the symbol string to form a new symbol string.

22. The method of claim 1 , further comprising storing the compressed data code or transmitting the compressed data code across a communications channel.

23. A system, comprising:

an analyzer configured to:

select a symbol string, being one or more characters, that occurs within a data set,

generate a symbol string code corresponding to respective positions of the symbol string within the data set,

repeat the select a symbol string and the generate a symbol string code for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes, and

generate a compressed data code through combining the respective symbol string codes.

24. A tangible computer-readable medium having stored thereon, computer-executable instructions that, in response to execution by a computing device, cause the computing device to perform a method comprising:

selecting a symbol string, being one or more characters, that occurs within a data set;

generating a symbol string code corresponding to respective positions of the symbol string within the data set;

repeating the selecting a symbol string and the generating a symbol string code for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes; and

generating a compressed data code through combining the respective symbol string codes.

25. A tangible computer-readable medium having instructions stored thereon, the instructions comprising:

instructions to select a symbol string, being one or more characters, that occurs within a data set;

instructions to generate a symbol string code corresponding to respective positions of the symbol string within the data set;

instructions to repeat the selecting a symbol string and the generating a symbol string code for additional symbol strings that occur within the data set to produce any additional respective symbol string codes; and

instructions to generate a compressed data code through combining the respective symbol string codes.

26. A system comprising:

means for selecting a symbol string, being one or more characters, that occurs within a data set;

means for generating a symbol string code corresponding to respective positions of the symbol string within the data set;

means for repeating the selecting a symbol string and the generating a symbol string code for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes; and

means for generating a compressed data code through combining the respective symbol string codes.

27. A method comprising:

selecting a symbol string, being one or more characters, that occurs within a data set;

generating a symbol string code corresponding to respective positions of the symbol string within the data set through determining distances between occurrences of the symbol string within the data set;

repeating the selecting a symbol string and the generating a symbol string code for any additional symbol strings that occur within the data set to produce any additional respective symbol string codes; and

generating a compressed data code through combining the respective symbol string codes.

28. The method of claim 27 , wherein the generating a symbol string code further comprises determining the distances between occurrences of the symbol string within the data set in response to determining that positions of previously coded symbol strings are omitted.

Assignments (3)
MERGER Recorded Sep 15, 2015
From: ESSEX PA, L.L.C
To: MINERAL LASSEN LLC
Reel/Frame 036571/0261 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2007
From: MONRO, DON MARTIN
To: ESSEX PA, L.L.C.
Reel/Frame 018970/0926 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2007
From: MONRO, DONALD MARTIN
To: ESSEX PA, L.L.C.
Reel/Frame 018782/0293 →