Optimization of decoder memory usage for VLC tables
AssigneeNVIDIA Corporation
InventorsRohit Puri, Partha Sriram
Life of this patent
Estimating the term…
Abstract
Systems and methods for optimizing system performance in variable length decoding systems are described. Embodiments are described in which decode tables are analyzed and elements of the tables sorted by probability of occurrence. Storage of elements can be determined by probability of occurrence and embodiments of the present invention can optimize system efficiency by storing most likely entries into fast-memory and least likely entries in slowest memory. In certain embodiments, a single large table is provided that cannot fit into decoder fast-memory. In some embodiments, individual elements can be optimized for storage in fast-memory by selecting more frequently occurring entries or groups of entries into decoder memory.
Claims20
A method for optimizing system performance in a variable length decoding system, comprising:
- accessing a plurality of variable length coding (VLC) tables associated with the variable length decoding system;
- computing probabilities of occurrences for individual elements in the plurality of VLC tables, wherein each element is used for decoding a variable length code;
- and
- allocating the elements to a plurality of memories of the variable length decoding system based on the probabilities of occurrences for the elements and costs associated with accessing the plurality of memories, wherein the variable length decoding system is operable for decoding a variable length encoded bit stream.
A variable length decoding system, comprising:
- a set of memories for storing a plurality of elements in a number of decode tables based on probabilities of occurrences for the plurality of elements and costs associated with accessing the set of memories, wherein each element is accessed for decoding a variable length code;
- and
- a processor for decoding a received bit stream by accessing respective elements from the number of decode tables.
A computer readable medium for optimizing system performance in a variable length decoding system having instructions that, when executed by a computer, cause the computer to perform a method of processing data comprising:
- accessing a plurality of variable length coding (VLC) tables associated with the variable length decoding system;
- computing probabilities of occurrences for individual elements in the plurality of VLC tables, wherein each element is used for decoding a variable length code;
- and
- allocating the elements to a plurality of memories of the variable length decoding system based on the probabilities of occurrences for the elements and costs associated with accessing the plurality of memories, wherein the variable length decoding system is operable for decoding a variable length encoded bit stream.
Dependencies are inferred from the claim text.