Multiplier-based processor-in-memory architectures for image and graphics processing
First Claim
Patent Images
1. A computational random access memory comprising:
- a memory comprising N columns, N being an integer; and
an arithmetic logic unit, in communication with the N columns in the memory, the arithmetic logic unit comprising;
M multipliers, m being an integer divisible into N, each of the m multipliers being configured to multiply two N/M-bit numbers; and
an adder stage, in communication with the M multipliers to receive outputs of the M multipliers, for forming and outputting calculation results in accordance with the outputs of the M multipliers.
3 Assignments
0 Petitions
Accused Products
Abstract
A Procesor-In-Memory (PIM) includes a digital accelerator for image and graphics processing. The digital accelerator is based on an ALU having multipliers for processing combinations of bits smaller than those in the input data (e.g., 4×4 adders if the input data are 8-bit numbers). The ALU implements various arithmetic algorithms for addition, multiplication, and other operations. A secondary processing logic includes adders in series and parallel to permit vector operations as well as operations on longer scalars. A self-repairing ALU is also disclosed.
-
Citations
17 Claims
-
1. A computational random access memory comprising:
-
a memory comprising N columns, N being an integer; and
an arithmetic logic unit, in communication with the N columns in the memory, the arithmetic logic unit comprising;
M multipliers, m being an integer divisible into N, each of the m multipliers being configured to multiply two N/M-bit numbers; and
an adder stage, in communication with the M multipliers to receive outputs of the M multipliers, for forming and outputting calculation results in accordance with the outputs of the M multipliers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for performing a calculation on two N-bit numbers, the method comprising:
-
(a) providing M multipliers, M being an integer divisible into N, each of the M multipliers being configured to multiply two N/M-bit numbers;
(b) providing an adder stage, in communication with the M multipliers to receive outputs of the M multipliers;
(c) dividing each of the N-bit numbers into M combinations of N/M bits;
(d) performing multiplications involving the M combinations of N/M bits in the M multipliers to provide outputs; and
(e) forming and outputting, in the adder stage, calculation results in accordance with the outputs of the M multipliers. - View Dependent Claims (14, 15, 16, 17)
-
Specification