IP Library › Granted Patent US 10,002,649
Granted Patent B1
US 10,002,649 · App. 15/440,975 · Granted Jun 19, 2018

Preliminary ready indication for memory operations on non-volatile memory

Inventors: Ronen Golan (Petah-Tikva, IL); Roie Shpaizman (Sede Hemed, IL); Alex Bazarsky (Holon, IL); Eli Elmoalem (Nili, IL); Grishma Shah (Milpitas, CA); Idan Alrod (Herzeliya, IL)
Assignee: SANDISK TECHNOLOGIES LLC
G11C7/1063G11C7/22G11C16/32
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,002,649
App. No.
15/440,975
Granted
Jun 19, 2018
Kind
B1
Abstract

Apparatuses, systems, methods, and computer program products are disclosed for providing a preliminary ready indication for non-volatile memory. A non-volatile memory element initiates a write operation for one or more storage cells of the non-volatile memory element. The non-volatile memory element determines whether a progress threshold is satisfied for the write operation. The non-volatile memory element provides a preliminary ready indication, indicating that the progress threshold is satisfied.

Claims (34)

1. An apparatus comprising:

a non-volatile memory element configured to

initiate a write operation for one or more storage cells of the non-volatile memory element;

determine whether a progress threshold is satisfied for the write operation, the progress threshold indicating that less than a number of cells selected for the write operation satisfy a verify threshold; and

provide a preliminary ready indication, indicating that the progress threshold is satisfied.

2. The apparatus of claim 1 , wherein the non-volatile memory element is further configured to update the progress threshold for a subsequent write operation, based on an elapsed time between providing the preliminary ready indication and completing the write operation.

3. The apparatus of claim 1 , wherein the write operation comprises an erase operation.

4. The apparatus of claim 1 , wherein the progress threshold is based on one or more of:

a number of storage cells of the non-volatile memory element that satisfy one or more verify thresholds for the write operation including the verify threshold, and

a count of write pulses for the write operation.

5. The apparatus of claim 1 , wherein the non-volatile memory element is further configured to set the progress threshold based on a request received by the non-volatile memory element from a controller, and a second non-volatile memory element is configured to set a second progress threshold based on a second request from the controller.

6. The apparatus of claim 1 , wherein the non-volatile memory element is further configured to wait for a predefined number of write pulses to elapse for the write operation, prior to determining whether a progress threshold is satisfied for the write operation.

7. The apparatus of claim 1 , wherein the non-volatile memory element is configured to re-determine whether the progress threshold is satisfied, in response to a predefined number of write pulses elapsing after determining that the progress threshold is not satisfied.

8. The apparatus of claim 1 , wherein the progress threshold is based on a health characteristic associated with the non-volatile memory element.

9. The apparatus of claim 1 , wherein the non-volatile memory element is configured to provide the preliminary ready indication in response to being polled by a controller.

10. The apparatus of claim 1 , wherein the non-volatile memory element is configured to provide the preliminary ready indication using an existing ready/busy pin for the non-volatile memory element.

11. An apparatus comprising:

a non-volatile storage element configured to

begin programming one or more storage cells of the non-volatile storage element,

determine whether a progress threshold is satisfied for programming the one or more storage cells, the progress threshold indicating that less than a number of cells selected for programming satisfy a verify threshold, and

indicate, prior to completing programming of the one or more storage cells, that the progress threshold is satisfied; and

a controller configured to schedule further programming of the non-volatile storage element based on the non-volatile storage element indicating that the progress threshold is satisfied.

12. The apparatus of claim 11 , wherein the non-volatile storage element is further configured to set the progress threshold based on a request sent by the controller, wherein setting the progress threshold comprises one or more of setting an initial progress threshold and updating the progress threshold.

13. The apparatus of claim 12 , wherein the request is based on a speed of the controller scheduling the further programming of the non-volatile storage element.

14. The apparatus of claim 12 , wherein the request comprises one or more of an in-band request sent by the controller in conjunction with a storage operation request and an out-of-band request sent by the controller independently of storage operation requests sent by the controller.

15. The apparatus of claim 11 , wherein the controller comprises a hardware controller for a storage device, the storage device comprising the non-volatile storage element.

16. The apparatus of claim 11 , wherein the controller comprises a device driver for a storage device, the storage device comprising the non-volatile storage element, the device driver comprising one or more of logic hardware and executable code, the executable code stored on one or more computer readable storage media.

17. A method comprising:

starting a process for writing data to one or more storage cells of a non-volatile memory element;

determining whether a progress threshold is satisfied for writing the data, the progress threshold based on a number of storage cells of the non-volatile memory element that satisfy one or more verify thresholds being less than a number of cells selected for writing the data; and

sending a preparatory ready signal from the non-volatile memory element to a controller, the preparatory ready signal indicating that the progress threshold is satisfied.

18. The method of claim 17 , further comprising scheduling a storage operation for the non-volatile memory element based on the controller receiving the preparatory ready indication.

19. The method of claim 17 , further comprising updating the progress threshold for writing further data, based on an elapsed time between sending the preparatory ready signal and finishing writing the data.

20. The method of claim 17 , wherein the process for writing data comprises an erase operation and the one or more verify thresholds comprise an erase verify threshold.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2017
From: GOLAN, RONEN; SHPAIZMAN, ROIE; BAZARSKY, ALEX; ELMOALEM, ELI; SHAH, GRISHMA; ALROD, IDAN
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 041393/0904 →
Cited By (1)
US 12,748,694