Patent ID: 7158684

Claim:
A method of variable length coding received symbols comprising the steps of: classifying each received symbol into one of a plurality of classifications; providing for each classification a corresponding variable length code table selected based upon a probability distribution of received symbols within said classification; generating a variable length codeword output corresponding to each received symbol from the variable length code table corresponding to the classification of the received symbol, each variable length codeword includes a prefix having at least one bit beginning with zero or more 0's and ending in a single 1, and a suffix having a number of bits determined by the prefix according to a configuration of said corresponding variable length code table and a value corresponding to said received symbol; detecting the prefix of each variable length codeword; parsing the suffix of each variable length codeword from the corresponding prefix; and recovering the symbol from each suffix of each variable length codeword based upon the suffix data and the corresponding variable length code table.