SPEED UP BIG-NUMBER MULTIPLICATION USING SINGLE INSTRUCTION MULTIPLE DATA (SIMD) ARCHITECTURES
First Claim
Patent Images
1. A processor comprising:
- logic to generate a first set of vectors based on a first integer A and a second set of vectors based on a second integer B;
logic to calculate sub products by multiplying the first set of vectors to the second set of vectors;
logic to split each sub product into a first half and a second half; and
logic to generate a final result of A times B by adding together all first and second halves at respective digit positions.
1 Assignment
0 Petitions
Accused Products
Abstract
A processing apparatus may be configured to include logic to generate a first set of vectors based on a first integer and a second set of vectors based on a second integer, logic to calculate sub products by multiplying the first set of vectors to the second set of vectors, logic to split each sub product into a first half and a second half and logic to generate a final result by adding together all first and second halves at respective digit positions.
391 Citations
24 Claims
-
1. A processor comprising:
-
logic to generate a first set of vectors based on a first integer A and a second set of vectors based on a second integer B; logic to calculate sub products by multiplying the first set of vectors to the second set of vectors; logic to split each sub product into a first half and a second half; and logic to generate a final result of A times B by adding together all first and second halves at respective digit positions. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
generate a first set of vectors based on a first integer and a second set of vectors based on a second integer; calculate sub products by multiplying the first set of vectors to the second set of vectors; split each sub product into a first half and a second half; and generate a final result by adding together all first and second halves at respective digit positions. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system comprising:
-
a random access memory to store an application program; and a processor comprising; at least one processor core configured to execute the application program to; generate a first set of vectors based on a first integer and a second set of vectors based on a second integer; calculate sub products by multiplying the first set of vectors to the second set of vectors; split each sub product into a first half and a second half; and generate a final result by adding together all first and second halves at respective digit positions. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A non-transitory machine-readable medium having stored thereon instructions for causing a processor to execute a method, the method comprising:
-
generate a first set of vectors based on a first integer and a second set of vectors based on a second integer; calculate sub products by multiplying the first set of vectors to the second set of vectors; split each sub product into a first half and a second half; and generate a final result by adding together all first and second halves at respective digit positions. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification