Patentable/Patents/US-6507293
US-6507293

Processing circuit and method for variable-length coding and decoding

PublishedJanuary 14, 2003
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A variable-length encode/decode processor includes a central processing unit and an instruction buffer and a getbits processing engine coupled to the central processing unit. Such a processor can be used to encode data as variable-length symbols or to decode variable-length symbols such as those found in an MPEG bitstream.

Patent Claims
19 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A variable-length encode/decode processor, comprising: a central processing unit; an instruction buffer coupled to the central processing unit; and a getbits processing engine coupled to the central processing unit and operable to reverse the order of a group of consecutive data bits.

2

2. The processor of claim 1 wherein the group includes a predetermined number of consecutive data bits.

3

3. The processor of claim 1 , further comprising: an input buffer coupled to the getbits processing engine; and wherein the getbits processing engine is operable to receive the group of consecutive data bits from the input buffer before reversing the order of the data bits.

4

4. The processor of claim 1 , further comprising: an output buffer coupled to the getbits processing engine; and wherein the getbits processing engine is operable to provide the group of consecutive data bits to the output buffer after reversing the order of the data bits.

5

5. The processor of claim 1 wherein the group includes sixteen consecutive data bits.

6

6. The processor of claim 1 , further comprising: an input buffer coupled to the getbits processing engine and including a virtual symbol register; and wherein the getbits processing engine is operable to receive the group of consecutive data bits from the input buffer before reversing the order of the data bits and load the group of consecutive data bits into the virtual symbol register after reversing the order of the data bits.

7

7. A function processing block, comprising, an instruction buffer; a memory; a getbits processing engine operable to reverse the order of a group of consecutive data bits; and a central processing unit coupled to the instruction buffer, the memory, and the getbits processing engine.

8

8. The function processing block of claim 7 wherein the memory is coupled to the instruction buffer.

9

9. The function processing block of claim 7 wherein the memory is coupled to the getbits processing engine.

10

10. The function processing block of claim 7 , further comprising a register file coupled to the memory, the getbits processing engine, and the central processing unit.

11

11. The function processing block of claim 7 , further comprising: an input/output bus operable to receive the group of data bits before the getbits processing engine reverses the order of the data bits; an input buffer coupled to the getbits processing engine and to the input/output bus and operable to receive the data bits from the input/output bus; and wherein the getbits processing engine is operable to receive the data bits from the input buffer, reverse the order of the data bits, and load the reversed data bits into the input buffer.

12

12. A processor, comprising: a core; a controller coupled to the core; and a function processing block coupled to the controller, the function processing block including, a memory, an input/output bus, and a variable-length encode/decode processor coupled to the memory and to the input/output bus, the variable-length encode/decode processor including, a getbits processing engine coupled to the input/output bus and operable to receive a group of consecutive data bits from the input/output bus and to reverse the order of the data bits, and a central processing unit coupled to the getbits processing engine.

13

13. A method, comprising: reversing the order of a group of consecutive data bits with a getbits engine of a variable-length encode/decode processor; and controlling the getbits engine with a central processing unit of the variable-length encode/decode processor.

14

14. The method of claim 13 , further comprising executing instructions stored in an instruction buffer with the central processing unit.

15

15. The method of claim 13 , further comprising: receiving the group of consecutive data bits from an input/output bus with the getbits engine; and providing data to the input/output bus with the getbits engine.

16

16. The method of claim 13 , further comprising controlling the variable-length encode/decode processor with a core processor.

17

17. The method of claim 13 , further comprising: analyzing a variable-length symbol with the getbits engine; and accessing a look-up table based on the value of the variable-length symbol.

18

18. The method of claim 13 , further comprising: analyzing a variable-length symbol with the getbits engine; and accessing a look-up table based on the number of leading zeroes in the variable-length symbol.

19

19. The method of claim 13 , further comprising: analyzing a variable-length symbol with the getbits engine; and accessing a look-up table based on the number of leading ones in the variable-length symbol.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

December 21, 2000

Publication Date

January 14, 2003

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Processing circuit and method for variable-length coding and decoding” (US-6507293). https://patentable.app/patents/US-6507293

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.