Method and apparatus for using smart memories in computing
First Claim
1. A smart memory computing system to process data in parallel, said smart memory system comprising:
- a central processing unit;
a main memory unit that provides data storage for said central processing unit;
a smart memory unit to not only store data for said central processing unit but also to process data therein;
a massive data storage that provides storage for a superset of data stored in said main memory system and in said smart memory system; and
a trigger mechanism for said central processing unit to initiate processing of a processing batch by said smart memory unit.
3 Assignments
0 Petitions
Accused Products
Abstract
A smart memory computing system that uses smart memory for massive data storage as well as for massive parallel execution is disclosed. The data stored in the smart memory can be accessed just like the conventional main memory, but the smart memory also has many execution units to process data in situ. The smart memory computing system offers improved performance and reduced costs for those programs having massive data-level parallelism. This smart memory computing system is able to take advantage of data-level parallelism to improve execution speed by, for example, use of inventive aspects such as algorithm mapping, compiler techniques, architecture features, and specialized instruction sets.
471 Citations
22 Claims
-
1. A smart memory computing system to process data in parallel, said smart memory system comprising:
-
a central processing unit;
a main memory unit that provides data storage for said central processing unit;
a smart memory unit to not only store data for said central processing unit but also to process data therein;
a massive data storage that provides storage for a superset of data stored in said main memory system and in said smart memory system; and
a trigger mechanism for said central processing unit to initiate processing of a processing batch by said smart memory unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
a chip set to facilitate said central processing unit in accessing said main memory unit and said smart memory unit therethrough.
-
-
4. A smart memory computing system as recited in claim 1, wherein said central processing unit can comprises at least one of an Arithmetic and Logic Unit (ALU), a floating-point processor, a single-instruction-multiple-data execution unit, and a special function processor.
-
5. A smart memory computing system as recited in claim 1, wherein said smart memory computing system further comprises:
A set of mechanisms for said central processing unit to interact with said smart memory unit.
-
6. A smart memory computing system as recited in claim 1, wherein said smart memory computing system further comprising:
a notification mechanism for said smart memory unit to notify said central processing unit of completion of the processing batch.
-
7. A smart memory computing system as recited in claim 1, wherein said smart memory computing system further comprising:
an interrupt controller within or coupled to said smart memory unit, said interrupt controller for interrupting the processing batch by said smart memory unit.
-
8. A smart memory computing system as recited in claim 7, wherein said smart memory computing system further comprising:
a notification mechanism for said smart memory unit to notify said central processing unit of completion of a processing batch.
-
9. A smart memory computing system as recited in claim 7, wherein said smart memory computing system further comprising:
a bus operatively connecting said smart memory unit to at least one of said main memory unit and said central processing unit.
-
10. A smart memory computing system as recited in claim 9, wherein said smart memory unit comprises a first port coupled to said bus and a second port for coupled to an external device.
-
11. A smart memory computing system as recited in claim 9, wherein said bus is one of a memory bus, an I/O bus or a graphics bus.
-
12. A smart memory computing system as recited in claim 1, wherein said smart memory unit comprises a first smart memory integrated circuit and a second smart memory integrated circuit.
-
13. A smart memory computing system as recited in claim 1, wherein said smart memory unit comprises at least one smart memory integrated circuit.
-
14. A smart memory computing system as recited in claim 13, wherein said smart memory integrated circuit comprises:
-
an instruction memory;
a plurality of data memory blocks that store data for general storage or buffering as well as for processing;
an input cross-bar switch coupled to said data memory blocks;
a plurality of execution units coupled to said input cross-bar switch and thus to said data memory blocks, said execution units execute instructions stored in said instruction memory;
an output cross-bar switch coupled to said execution units;
a plurality of control and status registers;
control logic;
a plurality of configuration registers; and
bus interface logic.
-
-
15. A smart memory computing system as recited in claim 14, wherein said bus interface logic is responsible for requesting bus ownership, accepting triggering or interrupt signals, synchronizing within smart memory system, or producing interrupt signal.
-
16. A smart memory computing system to process data in parallel, said smart memory system comprising:
-
a central processing unit;
a main memory unit that provides data storage for said central processing unit;
a smart memory unit to not only store data for said central processing unit but also to process data therein;
a massive data storage that provides storage for a superset of data stored in said main memory system and in said smart memory system; and
a stall mechanism for stalling execution by at least part of said smart memory unit. - View Dependent Claims (17)
-
-
18. A smart memory computing system to process data in parallel, said smart memory system comprising:
-
a central processing unit;
a main memory unit that provides data storage for said central processing unit;
a smart memory unit to not only store data for said central processing unit but also to process data therein, wherein said smart memory unit comprises a first smart memory integrated circuit and a second smart memory integrated circuit;
a massive data storage that provide storage for a superset of data stored in said main memory system and in said smart memory system; and
a bus operatively connecting said first and second smart memory integrated circuits to at least one of said main memory unit and said central processing unit. - View Dependent Claims (19, 20, 21)
an interrupt controller within or coupled to said smart memory unit, said interrupt controller for interrupting a processing batch by said smart memory unit.
-
-
20. A smart memory computing system as recited in claim 18, wherein said first and second smart memory integrated circuits are able to request usage of said bus for data transfer.
-
21. A smart memory computing system as recited in claim 20, wherein data can be passed between said first and second smart memory integrated circuits over said bus.
-
22. A smart memory computing system to process data in parallel, said smart memory system comprising:
-
a central processing unit;
a main memory unit that provides data storage for said central processing unit;
a smart memory unit to not only store data for said central processing unit but also to process data therein;
a massive data storage that provides storage for a superset of data stored in said main memory system and in said smart memory system;
means for said central processing unit to interact with said smart memory system; and
a trigger mechanism for said central processing unit to initiate processing of a processing batch by said smart memory unit.
-
Specification