IP Library Granted Patent US 11,061,768
Granted Patent B1
US 11,061,768 · App. 16/791,560 · Granted Jul 13, 2021

Storage device with increased endurance

Inventors: Idan Alrod (Herzliya, IL); Judah Gamliel Hahn (Ofra, IL); Ariel Navon (Revava, IL); Eran Sharon (Rishon Lezion, IL); Dudy Avraham (Even Yehuda, IL)
Assignee: Western Digital Technologies, Inc.
G06F11/1068G06F11/1044G06F11/3037G11C16/10G11C16/349
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,061,768
App. No.
16/791,560
Granted
Jul 13, 2021
Kind
B1
Abstract

A black box device for a vehicle includes a data storage system for recording event data fed to the black box from various vehicle sensors. The data storage system includes a memory having memory cells and a controller in communication with the memory. The controller is configured to receive data and determine one or more memory cells as a destination for the data to be written. The controller is configured to determine a wear level of the memory cells and select a subset of program states of the memory cells based on the wear level; and program the memory cells using respective subsets of program states for each respective memory cell.

Claims (64)

1. A data storage system, comprising:

a non-volatile memory (NVM) including a plurality of memory cells, wherein the NVM has a ratio of defined export capacity to physical capacity that is greater than 0.02 and less than 0.50; and

a controller coupled with the NVM, wherein the controller receives data from a host and writes the data in the NVM, wherein the controller is configured to:

calculate an error correcting code (ECC) for the received data and save the ECC with the received data, wherein an ECC code rate is less than 0.60;

determine a first memory cell of the plurality of memory cells as a destination for the data to be written, wherein the first memory cell is configured to be programmed using at least three program states;

determine a wear level of the first memory cell;

select a subset of the at least three program states, including a first program state and a second program state, for the first memory cell based on the wear level of the first memory cell to render at least one program state not included in the subset as unavailable for programming; and

program the memory cell using one of the first and second program states.

2. The data storage system of claim 1 , wherein the NVM comprises a plurality of blocks and an allowed number of grown physical bad blocks is greater than 5% and less than 95% of the plurality of blocks.

3. The data storage system of claim 1 , wherein the system is a black box recording device in a vehicle and the data from the host comprises event data generated by a plurality of vehicle sensors.

4. The data storage system of claim 1 , wherein selecting the first program state and the second program state comprises:

determining which of the at least three program states are available for programming; and

selecting, as the first program state and the second program state, two available states associated with the lowest program voltage.

5. The data storage system of claim 4 , wherein determining which of the at least three program states are available for programming comprises:

determining a distribution width or an error rate of the at least three program states; and

classifying a particular program state of the at least three program states as available for programming based on the distribution width or the error rate of the particular program state.

6. The data storage system of claim 1 , wherein selecting the first program state and the second program state comprises:

determining the wear level of the first memory cell with respect to one or more program states based on program state distribution width of the one or more program states;

shifting one of a previously selected first program state or a previously selected second program state to a new program state based on the determined wear level of the first memory cell with respect to the one or more program states.

7. The data storage system of claim 6 , wherein shifting one of the previously selected first program state or the previously selected second program state to the new program state comprises selecting, as the new program state, a program state corresponding to a higher program voltage than a program voltage of the one of the previously selected first or second program state.

8. The data storage system of claim 1 , wherein determining a wear level of the first memory cell comprises:

counting program-erase cycles (PEC) of the first memory cell; and

determining the wear level based on whether a number of PEC of the first memory cell is above a threshold.

9. The data storage system of claim 1 , wherein determining a wear level of the first memory cell comprises:

performing a diagnostic read operation on the first memory cell; and

determining a quantity of errors or a program state distribution width based on the diagnostic read operation; and

determining the wear level based on the whether the quantity of errors or the program state distribution width is above a respective threshold.

10. A method of storing data in a black box recorder system for a vehicle, the block box recorder system comprising the data storage system of claim 1 comprising a memory including a plurality of memory cells, and a controller in communication with the memory, the method comprising:

determining a first memory cell of the plurality of memory cells as a destination for the data to be written, wherein the first memory cell is configured to be programmed using at least three program states;

determining a wear level of the first memory cell;

selecting a subset of the at least three program states, including a first program state and a second program state, for first memory cell based on the wear level of the first memory cell to render at least one program state not included in the subset as unavailable for programming; and

programming the first memory cell using one of the first and second program states.

11. The method of claim 10 , wherein selecting the first program state and the second program state comprises:

determining which of the at least three program states are available for programming; and

selecting, as the first program state and the second program state, two available states associated with the lowest program voltage.

12. The method of claim 11 , wherein determining which of the at least three program states are available for programming comprises:

determining a distribution width or an error rate of the at least three program states; and

classifying a particular program state of the at least three program states as available for programming based on the distribution width or the error rate of the particular program state.

13. The method of claim 10 , wherein selecting the first program state and the second program state comprises:

determining the wear level of the first memory cell with respect to one or more program states based on program state distribution width of the one or more program states;

shifting one of a previously selected first program state or a previously selected second program state to a new program state based on the determined wear level of the first memory cell with respect to the one or more program states.

14. A data storage system, comprising a memory comprising a plurality of memory cells; and a controller in communication with the memory, the controller configured to:

receive data to be written;

determine a first memory cell of the plurality of memory cells as a destination for the data to be written, wherein the first memory cell is configured to be programmed using at least three program states;

determine a wear level of the first memory cell;

select a subset of the at least three program states, including a first program state and a second program state, for the first memory cell based on the wear level of the first memory cell to render at least one program state not included in the subset as unavailable for programming; and

program the first memory cell using one of the first and second program states.

15. The data storage system of claim 14 , wherein selecting the first program state and the second program state comprises:

determining which of the at least three program states are available for programming; and

selecting, as the first program state and the second program state, two available states associated with the lowest program voltage.

16. The data storage system of claim 15 , wherein determining which of the at least three program states are available for programming comprises:

determining a distribution width or an error rate of the at least three program states; and

classifying a particular program state of the at least three program states as available for programming based on the distribution width or the error rate of the particular program state.

17. The data storage system of claim 14 , wherein selecting the first program state and the second program state comprises:

determining the wear level of the first memory cell with respect to one or more program states based on program state distribution width of the one or more program states;

shifting one of a previously selected first program state or a previously selected second program state to a new program state based on the determined wear level of the first memory cell with respect to the one or more program states.

18. The data storage system of claim 17 , wherein shifting one of the previously selected first program state or the previously selected second program state to the new program state comprises selecting, as the new program state, a program state corresponding to a higher program voltage than a program voltage of the one of the previously selected first or second program state.

19. A black box recorder system for a vehicle, the black box recorder system comprising:

a data storage system comprising a plurality of memory cells; and

a controller in communication with the plurality of memory cells, the controller comprising:

means for determining a first memory cell of the plurality of memory cells as a destination for the data to be written, wherein the first memory cell is configured to be programmed using at least three program states;

means for determining a wear level of the first memory cell;

means for selecting a subset of the at least three program states, including a first program state and a second program state, for the first memory cell based on the wear level of the first memory cell to render at least one program state not included in the subset as unavailable for programming; and

means for programming the first memory cell using one of the first and second program states.

Assignments (10)
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 →
RELEASE OF SECURITY INTEREST AT REEL 053482 FRAME 0453 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0279 →
SECURITY INTEREST Recorded May 14, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053482/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2020
From: ALROD, IDAN; HAHN, JUDAH GAMLIEL; NAVON, ARIEL; SHARON, ERAN; AVRAHAM, DUDY
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052008/0408 →
Cited By (3)
US 12,326,782 US 12,423,227 US 12,619,532