IP Library Granted Patent US 12,051,473
Granted Patent B2
US 12,051,473 · App. 17/852,129 · Granted Jul 30, 2024

Non-volatile memory with precise programming

Inventors: Ming Wang (Shanghai, CN); Liang Li (Shanghai, CN)
Assignee: Western Digital Technolologies, Inc.
G11C16/3459G11C16/08G11C16/102G11C16/24G11C16/26G11C16/3404
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 12,051,473
App. No.
17/852,129
Granted
Jul 30, 2024
Kind
B2
Abstract

Memory cells are programmed to threshold voltage distributions that correspond to data states by applying a series of voltage pulses to a selected word line connected to a set of non-volatile memory cells selected for programming. Tighter threshold voltage distributions will result in fewer errors when reading the data at a later time. To create tighter threshold voltage distributions during programming, the system slows down the programming of memory cells as the memory cells approach their target threshold voltage by reducing the effective pulse width of the voltage pulses. The voltage pulses are divided into portions, with each portion corresponding to a subset of the pulse width or a subset of the time period that the voltage pulse is applied. Memory cells that are approaching their target threshold voltage will be slowed down by inhibiting those memory cells from programming during later-in-time portions of the voltage pulses.

Claims (68)

1. A method of programming non-volatile memory, the method comprising:

applying a voltage pulse to a set of non-volatile memory cells selected for programming, the voltage pulse includes a first portion, a second portion subsequent to the first portion and a third portion subsequent to the second portion;

allowing programming during the first portion of the voltage pulse, during the second portion of the voltage pulse and during the third portion of the voltage pulse for memory cells having threshold voltages below a first magnitude prior to the voltage pulse;

allowing programming during the first portion of the voltage pulse, allowing programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the first magnitude and below a second magnitude prior to the voltage pulse;

allowing programming during the first portion of the voltage pulse, inhibiting programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the second magnitude and below a third magnitude prior to the voltage pulse; and

inhibiting programming during the first portion of the voltage pulse, inhibiting programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the third magnitude prior to the voltage pulse.

2. The method of claim 1 , wherein:

the set of non-volatile memory cells selected for programming are connected to a common word line and different bit lines;

the applying the voltage pulse to the set of non-volatile memory cells selected for programming comprises applying the voltage pulse to the common word line; and

the allowing programming during the first portion of the voltage pulse, allowing programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the first magnitude and below the second magnitude prior to the voltage pulse comprises applying a programming enable voltage during the first portion of the voltage pulse, applying the programming enable voltage during the second portion of the voltage pulse, and applying a programming inhibit voltage during the third portion of the voltage pulse to bit lines connected to memory cells having threshold voltages above the first magnitude and below the second magnitude prior to the voltage pulse.

3. The method of claim 2 , wherein:

the allowing programming during the first portion of the voltage pulse, inhibiting programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the second magnitude and below the third magnitude prior to the voltage pulse comprises applying the programming enable voltage during the first portion of the voltage pulse, applying the programming inhibit voltage during the second portion of the voltage pulse, and applying the programming inhibit voltage during the third portion of the voltage pulse to bit lines connected to memory cells having threshold voltages above the second magnitude and below the third magnitude prior to the voltage pulse.

4. The method of claim 1 , wherein:

the allowing programming during the first portion of the voltage pulse, inhibiting programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the second magnitude and below the third magnitude prior to the voltage pulse comprises applying a programming enable voltage during the first portion of the voltage pulse, applying a programming inhibit voltage during the second portion of the voltage pulse, and applying the programming inhibit voltage during the third portion of the voltage pulse to bit lines connected to memory cells having threshold voltages above the second magnitude and below the third magnitude prior to the voltage pulse.

5. The method of claim 1 , further comprising:

applying a clock signal that divides the voltage pulse into the first portion, the second portion and the third portion.

6. The method of claim 1 , wherein:

the first portion, the second portion and the third portion are equal in time duration.

7. The method of claim 1 , wherein:

the third magnitude is a lowest voltage of a threshold voltage distribution that corresponds to a data state;

the second magnitude is lower in voltage magnitude than the third magnitude and the threshold voltage distribution; and

the first magnitude is lower in voltage magnitude than the second magnitude.

8. The method of claim 1 , wherein:

the applying a voltage pulse, allowing programming and inhibiting programming are performed by a control die that is bonded to a memory die.

9. The method of claim 1 , wherein:

the allowing programming during the first portion of the voltage pulse, allowing programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the first magnitude and below a second magnitude prior to the voltage pulse comprises slowing down programming by reducing an effective pulse width of the voltage pulse by a first amount; and

the allowing programming during the first portion of the voltage pulse, inhibiting programming during the second portion of the voltage pulse, and inhibiting programming during the third portion of the voltage pulse for memory cells having threshold voltages above the second magnitude and below the third magnitude prior to the voltage pulse comprises slowing down programming by reducing the effective pulse width of the voltage pulse by a second amount, the second amount is greater than the first amount.

10. A non-volatile storage apparatus, comprising:

non-volatile memory cells;

bit lines connected to the non-volatile memory cells;

word lines connected to the non-volatile memory cells; and

a control circuit connected to the non-volatile memory cells via the bit lines and the word lines, in order to program non-volatile memory cells the control circuit is configured to apply a series of voltage pulses to a selected word line connected to a set of non-volatile memory cells selected for programming such that each of the voltage pulses include a first portion, a second portion subsequent to the first portion and a third portion subsequent to the second portion;

for a particular voltage pulse of the series of voltage pulses, the control circuit is configured to

apply a first programming inhibit voltage during the first portion of the particular voltage pulse, apply the first programming inhibit voltage during the second portion of the particular voltage pulse, and apply the first programming inhibit voltage during the third portion of the particular voltage pulse to bit lines connected to memory cells having threshold voltages above a target magnitude prior to the particular voltage pulse;

apply a first programming enable voltage during the first portion of the particular voltage pulse, during the second portion of the particular voltage pulse and during the third portion of the particular voltage pulse to bit lines connected to memory cells having threshold voltages below a first magnitude prior to the particular voltage pulse;

apply a second programming enable voltage during the first portion of the particular voltage pulse, apply the second programming enable voltage during the second portion of the particular voltage pulse, and apply a second programming inhibit voltage during the third portion of the particular voltage pulse to bit lines connected to memory cells having threshold voltages above the first magnitude and below a second magnitude prior to the particular voltage pulse; and

apply a third programming enable voltage during the first portion of the particular voltage pulse, apply a third programming inhibit voltage during the second portion of the particular voltage pulse, and apply the third programming inhibit voltage during the third portion of the particular voltage pulse to bit lines connected to memory cells having threshold voltages above the second magnitude and below the target magnitude prior to the particular voltage pulse.

11. The non-volatile storage apparatus of claim 10 , wherein:

the control circuit is configured to change voltage levels of a first set of the bit lines at a first time during the particular voltage pulse and change voltage levels of a second set of the bit lines at a second time during the particular voltage pulse.

12. The non-volatile storage apparatus of claim 10 , wherein:

the control circuit is configured to apply a clock signal that divides the particular voltage pulse into the first portion, the second portion and the third portion.

13. The non-volatile storage apparatus of claim 10 , wherein:

the target magnitude is a lowest voltage of a threshold voltage distribution that corresponds to a data state;

the second magnitude is lower in voltage magnitude than the target magnitude and the threshold voltage distribution; and

the first magnitude is lower in voltage magnitude than the second magnitude.

14. The non-volatile storage apparatus of claim 10 , wherein:

the control circuit is configured to adjust bit line voltages at multiple times during multiple voltage pulse of the series of voltage pulses.

15. The non-volatile storage apparatus of claim 10 , wherein:

the first portion, the second portion and the third portion are equal in time duration.

16. The non-volatile storage apparatus of claim 10 , wherein:

the first programming inhibit voltage is equal to the second programming inhibit voltage and the third programming inhibit voltage; and

the first programming enable voltage is equal to the second programming enable voltage and the third programming enable voltage.

17. The non-volatile storage apparatus of claim 10 , wherein:

the non-volatile memory cells, bit lines and word lines are positioned on a memory die; and

the control circuit is positioned on a control die that is separate from and bonded to the memory die.

18. The non-volatile storage apparatus of claim 10 , wherein:

the non-volatile memory cells comprise a three dimensional non-volatile memory array.

19. A non-volatile storage apparatus, comprising:

a memory structure comprising non-volatile memory cells; and

a control circuit connected to the memory structure, the control circuit is configured to:

apply a voltage pulse to a set of non-volatile memory cells selected for programming, the voltage pulse including a first portion and a second portion subsequent to the first portion;

allow programming during the first portion of the voltage pulse and during the second portion of the voltage pulse for memory cells having threshold voltages below a first magnitude prior to the voltage pulse;

allow programming during the first portion of the voltage pulse and inhibiting programming during the second portion of the voltage pulse for memory cells having threshold voltages above the first magnitude and below a second magnitude prior to the voltage pulse; and

inhibiting programming during the first portion of the voltage pulse and during the second portion of the voltage pulse for memory cells having threshold voltages above the second magnitude prior to the voltage pulse.

20. The non-volatile storage apparatus of claim 19 , further comprising:

bit lines connected to the non-volatile memory cells; and

word lines connected to the non-volatile memory cells, the control circuit is connected to the non-volatile memory cells via the bit lines and the word lines, the set of non-volatile memory cells selected for programming are connected to a common word line and different bit lines;

the control circuit is configured to allow programming during the first portion of the voltage pulse and inhibiting programming during the second portion of the voltage pulse for memory cells by applying a programming enable voltage during the first portion of the voltage pulse and applying a programming inhibit voltage during the second portion of the voltage pulse to bit lines connected to memory cells having threshold voltages above the first magnitude and below the second magnitude prior to the voltage pulse.

Assignments (8)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2022
From: WANG, MING; LI, LIANG
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 060495/0713 →