IP Library Granted Patent US 9,513,992
Granted Patent B2
US 9,513,992 · App. 14/793,475 · Granted Dec 6, 2016

Method and apparatus to perform concurrent read and write memory operations

Inventor: Graziano Mirichigni (Vimercate, IT)
Assignee: MICRON TECHNOLOGY, INC.
G06F11/1048G06F11/1016G06F11/1044G06F11/1072G06F11/1096G11C13/004G11C13/0004G11C13/0061G11C13/0069G11C29/52H03M13/2909H03M13/6561G11C2211/5623H03M13/152H03M13/1515H03M13/19H03M13/23
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 9,513,992
App. No.
14/793,475
Granted
Dec 6, 2016
Kind
B2
Abstract

Subject matter disclosed herein relates to read and write processes of a memory device. During a write process to a particular partition in a memory array, a response to a read request of contents of the particular partition may be delayed. In some embodiments, the contents of the particular partition may be indirectly read during the write process without delaying the response to the read request. The contents of the particular partition can be indirectly read by determining the contents of the particular partition based, at least in part, on an error correction code based, at least in part, on contents of memory partitions of the memory array.

Claims (39)

1. A method comprising:

receiving a read request to read contents of a memory array;

suspending calculation of an error correction code (ECC) m response to receiving the read request;

writing to the memory array while calculation of the ECC is suspended;

while writing to the memory array, determining contents of a portion of the memory array based on stored ECC; and

subsequently resuming calculation of the ECC.

2. The method of claim 1 , wherein determining the contents of the portion is further based on contents of other portions of the memory array that correspond to the portion of the memory array.

3. The method of claim 2 , wherein the contents of the portion of the memory array are not used in determining the contents of the portion.

4. The method of claim 2 , further comprising:

reading in parallel the contents of the other portions of the memory array that correspond to the portion of the memory array while determining the contents of the portion.

5. The method of claim 2 , further comprising:

reading in series the contents of the other portions of the memory array that correspond to the portion of the memory array while determining the contents of the portion.

6. The method of claim 1 , wherein writing to the memory array is in response to an internal operation initiated by a memory comprising the memory array.

7. The method of claim 1 , wherein the portion of the memory array and an another portion of the memory array being written to share a group of sense amplifiers.

8. A memory microcontroller comprising:

an interface to connect to a memory array; and

electronic circuitry configured to:

suspend calculation of an error correction code (ECC) in response to receiving a read request to read contents of the memory array;

while writing to the memory array, determine one or more of the contents of the memory array based on stored ECC; and

subsequently resume calculating the ECC.

9. The memory microcontroller of claim 8 , wherein determining the one or more of the contents of the memory array is further based on other contents of the memory array that correspond to the one or more of the contents of the memory array.

10. The memory microcontroller of claim 9 , wherein the one or more of the contents of the memory array are not used in determining the one or more of the contents of the memory array.

11. The memory microcontroller of claim 9 , further comprising a circuit to:

read in parallel the other contents of the memory array that correspond to the one or more of the contents of the memory array while determining the one or more of the contents of the memory array.

12. The memory microcontroller of claim 8 , wherein a first portion of the memory array comprising the one or more of the contents of the memory array and a second portion of the memory array being written to are stored on a same data partition of the memory array.

13. The memory microcontroller of claim 12 , wherein another data partition of the memory array comprises the stored ECC, the other data partition different from the same data partition comprising the first and second portions of the memory array.

14. The memory microcontroller of claim 8 , wherein the contents of the memory array comprise the stored ECC.

15. The memory microcontroller of claim 8 , wherein writing to the memory array comprises at least one of wear leveling, garbage collection, bad block management, or refresh process initiated by the memory microcontroller.

16. A system comprising:

a memory device comprising a memory, the memory device further comprising a memory microcontroller configured to:

suspend calculation of an error correction code (ECC) in response to receiving a read request to read contents of the memory;

while writing to the memory, determine at least one content of the memory based on stored ECC; and

subsequently resume calculating the ECC; and

a processor to host one or more applications and to initiate the read request to the memory microcontroller to provide access to the memory.

17. The system of claim 16 , wherein determining the at least one content of the memory is further based on other contents of the memory that correspond to the at least one content of the memory.

18. The system of claim 17 , further comprising a circuit to:

read in parallel the other contents of the memory that correspond to the at least one content of the memory while determining the contents of the memory.

19. The system of claim 17 , wherein a first portion of the memory comprising the at least one content of the memory and a second portion of the memory comprising the other contents of the memory are stored on different data partitions of the memory.

20. The system of claim 16 , wherein writing to the memory comprises writing to a first portion of the memory array, wherein a second portion of the memory comprises the at least one content of the memory, and wherein the first and second portions of the memory share a sense amplifier.

Assignments (8)
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 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2015
From: MIRICHIGNI, GRAZIANO
To: MICRON TECHNOLOGY, INC.
Reel/Frame 036499/0351 →
Continuity (3)
Continuation 14074360 · Nov 7, 2013
Continuation 12947771 · Nov 16, 2010
Related Publication 20150309868A1 · Oct 29, 2015