The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Mar. 25, 2008
Filed:
Jul. 29, 2003
Vadim Pisarevsky, Nizhny Novgorod, RU;
Sergey Zheltov, Nizhny Novgorod, RU;
Alexander Irhin, Nizhny Novgorod, RU;
Stanislav Bratanov, Nizhny Novgorod, RU;
Vadim Pisarevsky, Nizhny Novgorod, RU;
Sergey Zheltov, Nizhny Novgorod, RU;
Alexander Irhin, Nizhny Novgorod, RU;
Stanislav Bratanov, Nizhny Novgorod, RU;
Intel Corporation, Santa Clara, CA (US);
Abstract
Embodiments of the present invention perform efficient decoding of variable length codes statically defined by a coding standard for a wide range of source data. According to the disclosed method, special data structures (decoding tables) are created. A bit set size is associated with each decoding table. Each decoding table contains a decoded value, actual code length, reference to another table (from the set of created tables), and validity indicator for each bit combination that can be formed from the number of bits equal to the bit set size. An active decoding table is selected. Then the number of bits equal to the bit set size associated with the active decoding table is read from a bit stream. The active decoding table is indexed with the actual value of bits read to obtain the decoded value, actual code length, reference to another table, and validity indicator. The validity indicator is then checked to determine whether the decoded value obtained is valid. If the decoded value is indicated to be invalid, the decoding table that is referenced by the currently active table is selected to become active, and the decoding process continues. Otherwise, the bit steam is adjusted in accordance with the actual code length obtained and the hit set size associated with the decoding tables that were active during the decoding. The decoded value is then returned.