IP Library Granted Patent US 10,224,107
Granted Patent B1
US 10,224,107 · App. 15/720,984 · Granted Mar 5, 2019

Method and apparatus for dynamically determining start program voltages for a memory device

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 10,224,107
App. No.
15/720,984
Granted
Mar 5, 2019
Kind
B1
Abstract

In one embodiment, an apparatus comprises a memory comprising a first group of memory cells, a second group of memory cells, and a controller to program one or more lower pages of data to the first group of memory cells; store dynamic start voltage information, the dynamic start voltage information indicative of a rate of programming of at least a portion of the first group of memory cells; determine a start program voltage based on the dynamic start voltage information; and apply the start program voltage to the second group of memory cells during a first program pass of a program operation, the program operation to program one or more lower pages of data to the second group of memory cells.

Claims (49)

1. An apparatus comprising:

a memory comprising a first group of memory cells and a second group of memory cells; and

a controller comprising circuitry, the controller to:

program one or more lower pages of data to the first group of memory cells;

determine that dynamic start voltage information is not available for the first group of memory cells;

determine and store dynamic start voltage information for the first group of memory cells based on the determination that dynamic start voltage information is not available for the first group of memory cells, the dynamic start voltage information indicative of a rate of programming of at least a portion of the first group of memory cells;

determine a start program voltage based on the dynamic start voltage information; and

apply the start program voltage to the second group of memory cells during a first program pass of a program operation, the program operation to program one or more lower pages of data to the second group of memory cells.

2. The apparatus of claim 1 , the controller to:

determine a second start program voltage based on the dynamic start voltage information; and

apply the second start program voltage to the second group of memory cells during a first program pass of a second program operation, the second program operation to program one or more upper pages of data to the second group of memory cells.

3. The apparatus of claim 1 , wherein the start program voltage is based at least in part on a program loop count of the dynamic start voltage information and a program voltage step.

4. The apparatus of claim 2 , wherein the second start program voltage is based at least in part on a program loop count of the dynamic start voltage information and a program voltage step.

5. The apparatus of claim 1 , the controller to write the dynamic start voltage information into a plurality of memory cells coupled to a wordline that is also coupled to the first group of memory cells.

6. The apparatus of claim 1 , the controller to:

write the dynamic start voltage information into a volatile memory; and

write the dynamic start voltage information into a plurality of memory cells coupled to a wordline that is also coupled to the second group of memory cells, the plurality of memory cells located in the same memory subblock as the second group of memory cells.

7. The apparatus of claim 6 , the controller to program the dynamic start voltage information into the plurality of memory cells in parallel with the program operation to program one or more lower pages of data to the second group of memory cells.

8. The apparatus of claim 1 , the controller to:

determine that dynamic start voltage information is not available for the first group of memory cells; and

determine and store dynamic start voltage information for the first group of memory cells based on the determination that dynamic start voltage information is not available for the first group of memory cells.

9. The apparatus of claim 1 , wherein the controller is to use the start program voltage for each physical page of a wordline coupled to the first group of memory cells and the second group of memory cells.

10. The apparatus of claim 1 , wherein the first group of memory cells and the second group of memory cells are coupled to the same wordline.

11. The apparatus of claim 1 , wherein the memory comprises a page buffer to receive at least a portion of an upper page into a cache in parallel with at least a portion of the first program pass of the program operation.

12. The apparatus of claim 1 , further comprising a battery communicatively coupled to a processor, a display communicatively coupled to the processor, or a network interface communicatively coupled to the processor.

13. A method comprising:

programming one or more lower pages of data to a first group of memory cells;

determining that dynamic start voltage information is not available for the first group of memory cells;

determining and storing dynamic start voltage information for the first group of memory cells based on the determination that dynamic start voltage information is not available for the first group of memory cells, the dynamic start voltage information indicative of a rate of programming of at least a portion of the first group of memory cells;

determining a start program voltage based on the dynamic start voltage information; and

applying the start program voltage to a second group of memory cells during a first program pass of a program operation, the program operation to program one or more lower pages of data to the second group of memory cells.

14. The method of claim 13 , further comprising:

determining a second start program voltage based on the dynamic start voltage information; and

applying the second start program voltage to the second group of memory cells during a first program pass of a second program operation, the second program operation to program one or more upper pages of data to the second group of memory cells.

15. The method of claim 13 , wherein the start program voltage is based at least in part on a program loop count of the dynamic start voltage information and a program voltage step.

16. The method of claim 13 , further comprising writing the dynamic start voltage information into a plurality of memory cells coupled to a wordline that is also coupled to the first group of memory cells.

17. The method of claim 13 , further comprising:

writing the dynamic start voltage information into a volatile memory; and

writing the dynamic start voltage information into a plurality of memory cells coupled to a wordline that is also coupled to the second group of memory cells, the plurality of memory cells located in the same memory subblock as the second group of memory cells.

18. At least one machine readable storage medium having instructions stored thereon, the instructions when executed by a machine to cause the machine to:

program one or more lower pages of data to a first group of memory cells;

determine that dynamic start voltage information is not available for the first group of memory cells;

determine and store dynamic start voltage information for the first group of memory cells based on the determination that dynamic start voltage information is not available for the first group of memory cells, the dynamic start voltage information indicative of a rate of programming of at least a portion of the first group of memory cells;

determine a start program voltage based on the dynamic start voltage information; and

apply the start program voltage to a second group of memory cells during a first program pass of a program operation, the program operation to program one or more lower pages of data to the second group of memory cells.

19. The at least one medium of claim 18 , the instructions when executed to cause the machine to:

determine a second start program voltage based on the dynamic start voltage information; and

apply the second start program voltage to the second group of memory cells during a first program pass of a second program operation, the second program operation to program one or more upper pages of data to the second group of memory cells.

20. The at least one medium of claim 18 , wherein the start program voltage is based at least in part on a program loop count of the dynamic start voltage information and a program voltage step.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2023
From: INTEL CORPORATION
To: INTEL NDTM US LLC
Reel/Frame 064928/0832 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2017
From: SULE, PURVAL SHYAM; MADRASWALA, ALIASGAR S.; RAJWADE, SHANTANU R.; BEMALKHEDKAR, TRUPTI RAMKRISHNA; TURCIOS, LEONARD AARON; GAEWSKY, KRISTOPHER H.
To: INTEL CORPORATION
Reel/Frame 043994/0478 →
Cited By (1)
US 12,658,227