Patent US5859997A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5859997A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for performing multiply-substrate operations on packed data

Assignee: Intel Corp
•
Filing: 1996-08-20
•
Granted: 1999-01-12
•
Expires: 2016-08-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for including in a processor instructions for performing multiply-subtract operations on packed data. In one embodiment, a processor is coupled to a memory. The memory has stored therein a first packed data and a second packed data. The processor performs operations on data elements in said first packed data and said second packed data to generate a third packed data in response to receiving an instruction. At least one of the data elements in this third packed data storing the result of performing a multiply-subtract operation on data elements in the first and second packed data.

Inventors

  • 👤 Alexander Peleg
  • 👤 Millind Mittal
  • 👤 Larry M. Mennemeier
  • 👤 Benny Eitan
  • 👤 Wolf Witt
  • 👤 Carole Dulong
  • 👤 Eiichi Kowashi

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 16:29
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/544; G06F7/5443; G06F9/00; G06F9/06; G06F9/30; G06F9/30003; G06F9/30007; G06F9/30036; G06F2207/00; G06F2207/38; G06F2207/3804; G06F2207/3808; G06F2207/3828

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 143 words
A computer-implemented method responsive to the execution of a single instruction comprising the steps of: performing the following steps in response to executing said single instruction, multiplying together a first value and a second value to generate a first intermediate result, multiplying together a third value and a fourth value to generate a second intermediate result, multiplying together a fifth value and a sixth value to generate a third intermediate result, multiplying together a seventh value and an eighth value to generate a fourth intermediate result, subtracting together said first intermediate result and said second intermediate result to generate a first data element in a first packed data, performing an arithmetic operation on said third intermediate result and said fourth intermediate result to generate a second data element in said first packed data; storing said first packed data in a first storage area.
Claim 2
Dependent Claim 143 words
A computer-implemented method responsive to the execution of a single instruction comprising the steps of: performing the following steps in response to executing said single instruction, multiplying together a first value and a second value to generate a first intermediate result, multiplying together a third value and a fourth value to generate a second intermediate result, multiplying together a fifth value and a sixth value to generate a third intermediate result, multiplying together a seventh value and an eighth value to generate a fourth intermediate result, subtracting together said first intermediate result and said second intermediate result to generate a first data element in a first packed data, performing an arithmetic operation on said third intermediate result and said fourth intermediate result to generate a second data element in said first packed data; storing said first packed data in a first storage area.
Claim 3
Dependent Claim 15 words
The method of claim 1, wherein said arithmetic operation is one of addition and subtraction.
Claim 4
Dependent Claim 27 words
The method of claim 1, wherein execution of said single instruction is completed without arithmetically combining said first and second data elements of said first packed data.
Claim 5
Dependent Claim 31 words
The method of claim 1, wherein said step of storing said first packed data includes the step of storing said first packed data as an operand for use by another instruction.
Claim 6
Dependent Claim 32 words
The method of claim 1, wherein said first and second data elements of said first packed data each contain more bits than each of said first, second, third, fourth, and fifth values.
Claim 7
Dependent Claim 34 words
The method of claim 1, wherein said first and second data elements of said first packed data each contain twice as many bits as each of said first, second, third, fourth, and fifth values.
Claim 8
Independent Claim 128 words
A method for manipulating a first packed data and a second packed data, said first packed data including A 1 , A 2 , A 3 , and A 4 as data elements, said second packed data including B 1 , B 2 , B 3 , and B 4 as data elements, said method comprising the computer-implemented steps of: performing the following steps in response to executing a single multiply-subtract instruction, performing the operation (A 1 ×B 1 )-(A 2 ×B 2 ) to generate a first data element in a third packed data; performing the operation (A 3 ×B 3 )-(A 4 ×B 4 ) to generate a second data element in said third packed data; storing said third packed data in a first storage area.
Claim 9
Independent Claim 128 words
A method for manipulating a first packed data and a second packed data, said first packed data including A 1 , A 2 , A 3 , and A 4 as data elements, said second packed data including B 1 , B 2 , B 3 , and B 4 as data elements, said method comprising the computer-implemented steps of: performing the following steps in response to executing a single multiply-subtract instruction, performing the operation (A 1 ×B 1 )-(A 2 ×B 2 ) to generate a first data element in a third packed data; performing the operation (A 3 ×B 3 )-(A 4 ×B 4 ) to generate a second data element in said third packed data; storing said third packed data in a first storage area.
Claim 10
Dependent Claim 28 words
The method of claim 7, wherein execution of said single multiply-subtract instruction is completed without arithmetically combining said first and second data elements of said third packed data.
Claim 11
Dependent Claim 31 words
The method of claim 7, wherein said step of storing said third packed data includes the step of storing said third packed data as an operand for use by another instruction.
Claim 12
Dependent Claim 31 words
The method of claim 7, wherein the data elements of said third packed data each contain more bits than each of the data elements of said first and second packed data.
Claim 13
Dependent Claim 31 words
The method of claim 7, wherein the data elements of said third packed data each contain twice as many bits as the data elements of said first and second packed data.
Claim 14
Dependent Claim 28 words
The method of claim 7, wherein said step of storing said third packed data includes the step of storing said third packed data over said first packed data.
Claim 15
Dependent Claim 153 words
In a computer system having stored therein a first packed data and a second packed data each containing initial data elements, each of said initial data elements in said first packed data having a corresponding initial data element in said second packed data, a method for performing multiply subtract operations, said method comprising the steps of: performing the following steps in response to executing a single instruction, multiplying together said corresponding initial data elements in said first packed data and said second packed data to generate corresponding intermediate data elements, said intermediate data elements being divided into a number of sets; subtracting the intermediate result data elements in at least a first of said number of sets; storing the result of subtracting the first of said number of sets as a first of a plurality of result data elements; and storing said result data elements as a third packed data in a memory.
Claim 16
Dependent Claim 153 words
In a computer system having stored therein a first packed data and a second packed data each containing initial data elements, each of said initial data elements in said first packed data having a corresponding initial data element in said second packed data, a method for performing multiply subtract operations, said method comprising the steps of: performing the following steps in response to executing a single instruction, multiplying together said corresponding initial data elements in said first packed data and said second packed data to generate corresponding intermediate data elements, said intermediate data elements being divided into a number of sets; subtracting the intermediate result data elements in at least a first of said number of sets; storing the result of subtracting the first of said number of sets as a first of a plurality of result data elements; and storing said result data elements as a third packed data in a memory.
Claim 17
Dependent Claim 36 words
The method of claim 13, wherein a second of said plurality of result data elements represents either the subtraction or the sum of said intermediate result data elements in a second of said number of sets.
Claim 18
Dependent Claim 25 words
The method of claim 13, wherein execution of said single instruction is completed without arithmetically combining the result data elements of said third packed data.
Claim 19
Dependent Claim 36 words
The method of claim 13, wherein said step of storing said result data elements as said third packed data includes the step of storing said third packed data as an operand for use by another instruction.
Claim 20
Dependent Claim 31 words
The method of claim 13, wherein the data elements of said third packed data each contain more bits than each of the data elements of said first and second packed data.
Claim 21
Dependent Claim 31 words
The method of claim 13, wherein the data elements of said third packed data each contain twice as many bits as the data elements of said first and second packed data.
Claim 22
Dependent Claim 33 words
The method of claim 13, wherein said step of storing said result data elements as said third packed data includes the step of storing said third packed data over said first packed data.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-01-11 2002-07-13 2003-01-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-01-11 2006-07-13 2007-01-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-01-11 2010-07-13 2011-01-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag