IP Library Granted Patent US 11,403,240
Granted Patent B2
US 11,403,240 · App. 15/288,077 · Granted Aug 2, 2022

Memory having internal processors and data communication methods in memory

Inventors: Robert M. Walker (Raleigh, NC); Dan Skinner (Boise, ID); Todd A. Merritt (Boise, ID); J. Thomas Pawlowski (Boise, ID)
Assignee: Micron Technology, Inc.
G06F13/1673G06F3/0613G06F3/0625G06F3/0659G06F3/0683G06F9/3001G06F9/30043G06F12/0813G06F13/4068G06F15/7821G06F3/067
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,403,240
App. No.
15/288,077
Granted
Aug 2, 2022
Kind
B2
Abstract

Memory having internal processors, and methods of data communication within such a memory are provided. In one embodiment, an internal processor may concurrently access one or more banks on a memory array on a memory device via one or more buffers. The internal processor may be coupled to a buffer capable of accessing more than one bank, or coupled to more than one buffer that may each access a bank, such that data may be retrieved from and stored in different banks concurrently. Further, the memory device may be configured for communication between one or more internal processors through couplings between memory components, such as buffers coupled to each of the internal processors. Therefore, a multi-operation instruction may be performed by different internal processors, and data (such as intermediate results) from one internal processor may be transferred to another internal processor of the memory, enabling parallel execution of an instruction(s).

Claims (35)

1. A memory comprising:

a memory array;

a first internal processor, a second internal processor, and a third internal processor of the memory embedded on the memory array, wherein the first internal processor is configured to execute at least part of an instruction on data stored in the memory array to produce results, wherein the data is transferrable from the memory array and transferrable from the second internal processor of the memory, and wherein the results are transferrable to a third internal processor of the memory and stored in the memory array; and

a sequencer configured to sequence instructions sent by an external processor to the memory array.

2. The memory, as set forth in claim 1 , wherein the data is transferrable from a first bank in the memory array, and wherein the results are transferrable to a second bank in the memory array.

3. The memory, as set forth in claim 1 , wherein the data is transferrable from a first buffer via a bus to a first bank in the memory array, and wherein the results are transferrable to a second buffer via a bus to a second bank in the memory array.

4. The memory, as set forth in claim 1 , wherein the second internal processor is configured to execute at least part of an instruction to produce the data for the first internal processor, and wherein the data is transferrable from the second internal processor to the first internal processor via a bus between a first buffer coupled to the first internal processor and a second buffer coupled to the second internal processor.

5. The memory, as set forth in claim 1 , wherein the results are transferrable to the third internal processor via a bus between a first buffer coupled to the first internal processor and a third buffer coupled to the third internal processor.

6. The memory, as set forth in claim 1 , comprising a first buffer and a second buffer, wherein both the first and second buffers are coupled to the first internal processor, and wherein data and results are transferable via a bus between the first buffer and the second buffer.

7. The memory, as set forth in claim 1 , comprising the second internal processor and the third internal processor.

8. The memory, as set forth in claim 1 , wherein the memory is a processor-in memory device.

9. The memory, as set forth in claim 1 , comprising a first buffer and a second buffer coupled to the memory array and to the first internal processor.

10. The method of claim 1 , wherein the memory comprises a fetch unit configured to receive address and command information from the sequencer for accessing the memory array.

11. A method of communication in a memory, wherein the method comprises:

designating a first internal processor of a plurality of internal processors embedded on the memory to perform an operation;

performing the operation at the first internal processor of the plurality to produce a first result;

transferring the first result from the first internal processor to a second internal processor of the plurality via a coupling between a first memory component coupled to the first internal processor and a second memory component coupled to the second internal processor; and

performing an operation on the first result at the second internal processor to produce a second result.

12. The method, as set forth in claim 11 , comprising:

transferring data from a first memory bank of a memory array to the first internal processor, and wherein performing the operation at the first internal processor comprises performing the operation on the data; and

transferring the second result from the second internal processor to a second memory bank of the memory array.

13. The method, as set forth in claim 12 , wherein transferring the data from the first memory bank and transferring the second result to the second memory bank occur substantially simultaneously.

14. The method, as set forth in claim 12 , wherein transferring the data from the first memory bank comprises transferring the data from the first memory bank via a memory component coupled to the first internal processor.

15. The method, as set forth in claim 12 , wherein transferring the data from the second internal processor to the second memory bank comprises transferring the data from the second internal processor via a memory component coupled to the second internal processor.

16. A method of executing instructions within a memory device, wherein the method comprises:

performing an operation using a first internal processor of a plurality of internal processors embedded on the memory device to produce a first result;

storing the first result in a first buffer of the memory device, wherein the first buffer is communicatively coupled to the first internal processor via an internal memory bus;

transferring the first result from the first buffer to a second internal processor of the plurality, wherein the second internal processor is communicatively coupled to the first buffer; and

performing an operation using the second internal processor, wherein the first result is used by the second internal processor to produce a second result.

17. The method, as set forth in claim 16 , comprising:

transferring data from a first memory bank of the memory device to the first internal processor, and wherein performing the operation at the first internal processor comprises performing the operation on the data; and

transferring the second result from the second internal processor to a second memory bank of the memory device, wherein each transfer is conducted internal to the memory device.

18. The method, as set forth in claim 17 , wherein transferring the data from the first memory bank and transferring the second result to the second memory bank occur substantially simultaneously.

19. The method, as set forth in claim 17 , wherein transferring the data from the first memory bank comprises transferring the data from the first memory bank via the first buffer.

20. The method, as set forth in claim 17 , wherein transferring the data from the second internal processor to the second memory bank comprises transferring the data from the second internal processor via a second buffer coupled to the second internal processor.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2023
From: MICRON TECHNOLOGY, INC.
To: LODESTAR LICENSING GROUP, LLC
Reel/Frame 064981/0393 →
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050680/0268 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
SUPPLEMENT NO. 2 TO PATENT SECURITY AGREEMENT Recorded Feb 10, 2017
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041671/0902 →
Continuity (2)
Division 12603376 · Oct 21, 2009
Related Publication 20170024337A1 · Jan 26, 2017