Method of performing quantization within a multimedia bitstream utilizing division-free instructions
AssigneeSony Corporation and Sony Electronics Inc.
InventorsCheung Auyeung, Huipin Zhang
Life of this patent
Estimating the term…
Loading patent…
AssigneeSony Corporation and Sony Electronics Inc.
InventorsCheung Auyeung, Huipin Zhang
Estimating the term…
Methods for enhancing the performance of quantization operations by converting division operations to a combination of multiplication and shift operations, which are preferably performed on a processor supporting single-instruction multiple-data (SIMD) instructions. A table of mantissa and exponent values is created for a sufficient range of values for 1/a. During quantization, the mantissa and exponent values are found in the table 1/a for associated with a given quantization division operation given by b/a which is found according to the formula b/a=(b×A)>>n. Aspects are described for application to processors that do not support non-uniform shift operations, and for reducing the necessary bit-width of the operations to increase efficiency. The quantization method may be applied to protocols such as MPEG-2 and other similar formats.
A method of converting division operations b/a during quantization of a multimedia bit-stream to enhance execution speed, comprising:
A method of performing integer divisions b/a during quantization of a multimedia bit-stream without utilizing division instructions, comprising:
A method of performing integer divisions b/a during quantization within a multimedia stream, on processors that do not provide non-uniform shift instructions, comprising:
A method of performing quantization within a multimedia stream in which the division operations b/a are converted to multiplication operations while the necessary bit-width of the operations are narrowed from a target first width w1 to a narrower second width w2, comprising:
A method of performing divisions operations b/a during quantization of a multimedia bit-stream while narrowing the necessary bit-width of the operations from 32 bits to 16 bits, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.
Multiplying; Dividing: dividing
Concerning the type of numbers or the way they are handled: multigauge devices, i.e. capable of handling packed numbers without unpacking them
Computing and data processing
Term end not estimated
Not Applicable
Not Applicable
Not Applicable
The invention will be more fully understood by reference to the following drawings which are for illustrative purposes only:
FIG. 1 is a flowchart of converting division operations during quantization according to an embodiment of the present invention, shown for use on processors which provide non-uniform shift instructions.
FIG. 2 is a flowchart of converting division operations during quantization according to another embodiment of the present invention, shown for use on processors that do not provide non-uniform shift instructions.
Referring more specifically to the drawings, for illustrative purposes the present invention is embodied in the apparatus, systems and/or methods generally shown in FIG. 1 through FIG. 5. It will be appreciated that the apparatus and systems may vary as to configuration and as to details of the components, and that the methods may vary as to the specific steps and sequence, without departing from the basic concepts as disclosed herein.
The present invention provides for the replacement of overhead-intensive division instructions with operations that are more readily computed, especially within processors having SIMD instructions. A division operation, given by b/a, utilized during quantization relates a given integer a and any given integer b belonging to a fixed integer set S. The present invention appreciates that the division of dividend b by divisor a, may be alternatively arrived at during quantization using a combination of multiplication and shifting operations. The scalar values for the multiplication and shifting are based on a table lookup of mantissa A and exponent n values derived according to the value 1/a created over the desired range of integer values for a. In other words, mantissa A and exponent n are functions of a, and we represent them as A(a) and n(a) when we want to explicitly illustrate their dependency on a.
During quantization, a specific integer a value for the division b/a is used to look up the integer values A and n from a pair of pre-determined tables. After which, the value b/a is computed by using a multiply instruction and a right-shift instruction (>>) according to the following relation: