Simd sign operation
AssigneeIntel Corporation
InventorWilliam W. Macy, JR.
Life of this patent
Estimating the term…
Abstract
Method, apparatus, and program means for nonlinear filtering and deblocking applications utilizing SIMD sign and absolute value operations. The method of one embodiment comprises receiving first data for a first block and second data for a second block. The first data and said second data are comprised of a plurality of rows and columns of pixel data. A block boundary between the first block and the second block is characterized. A correction factor for a deblocking algorithm is calculated with a first instruction for a sign operation that multiplies and with a second instruction for an absolute value operation. Data for pixels located along said block boundary between the first and second block are corrected.
Claims2
A processor comprising:
- a storage location;
- and
- execution resources to execute a first instruction to perform a variation of a signum operation to determine an operand sign of a second input operand in parallel with multiplying a first input operand by said operand sign of said second input operand, and, in response to said first instruction, to store in said storage location a result having a value of:
- said first operand if said second operand is a positive value;
- zero if the second operand is a zero value;
- and
- a negated version of said first operand if the second operand is a negative value.
A method implemented in computer hardware comprising:
- fetching an instruction that, when executed by an execution resource, is to perform a variation of a signum operation that determines an operand sign of a second input operand in parallel with multiplying a first input operand having a first operand magnitude and a first operand sign by said operand sign of said second input operand, said second input operand having a second operand magnitude and said second operand sign, wherein said variation of said signum operation includes binning said second input operand into one of three categories including a positive category, a zero category, and a negative category, and performing the following:
- determining if said second input operand is positive, then storing said first operand as a result in response to said instruction;
- determining if said second operand is negative, then storing a value equal to negative one times said first operand as a result of said instruction;
- and
- determining if said second operand is zero, then storing zero as a result of said instruction.
Dependencies are inferred from the claim text.