IP Library Granted Patent US 10,971,215
Granted Patent B1
US 10,971,215 · App. 16/798,590 · Granted Apr 6, 2021

Dynamically adjust data transfer speed for non-volatile memory die interfaces

Inventors: Nian Yang (Mountain View, CA); Sahil Sharma (San Jose, CA); Piyush Dhotre (San Jose, CA)
Assignee: Western Digital Technologies, Inc.
G11C11/4096G11C7/222G11C11/4076G11C11/5628G11C11/5642G11C29/42G11C29/44G11C29/46G11C2211/5641
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,971,215
App. No.
16/798,590
Granted
Apr 6, 2021
Kind
B1
Abstract

A circuit configured to dynamically adjust data transfer speeds for a non-volatile memory die interface. The circuit includes an initialization circuit, a control circuit, a switch circuit, and a read-write circuit. The initialization circuit is configured to load multi-level cell settings that configure a memory interface for transfer of data for storage cells configured to store more than one bit per storage cell. The control circuit is configured to receive a read command that references single-level storage cells of a memory die. The switch circuit is configured to switch settings for the memory interface from the multi-level cell settings to single level cell settings, in response to receiving the read command. The read-write circuit is configured to read data for the read command from the memory die using the single level cell settings.

Claims (55)

1. A circuit, comprising:

an initialization circuit configured to load multi-level cell settings to configure a memory interface for transfer of data for storage cells configured to store more than one bit per storage cell;

a control circuit configured to receive a first read command that references storage cells of a memory die, the storage cells storing a single bit per storage cell;

a switch circuit configured to switch settings for the memory interface from the multi-level cell settings to single level cell settings, in response to receiving the first read command; and

a read-write circuit configured to read data for the first read command from the memory die using the single level cell settings.

2. The circuit of claim 1 , wherein the switch circuit is configured to switch settings for the memory interface from the single level cell settings to the multi-level cell settings, in response to the read-write circuit reading data for the first read command.

3. The circuit of claim 1 , wherein the control circuit is further configured to receive a second read command that references storage cells storing more than one bit per storage cell; and

wherein the switch circuit is configured to switch settings for the memory interface from the single level cell settings to the multi-level cell settings in response to receiving the second read command.

4. The circuit of claim 3 , wherein the control circuit receives the second read command subsequent to the first read command.

5. The circuit of claim 1 , further comprising an error correction circuit configured to correct one or more errors in data read by the read-write circuit for the first read command.

6. The circuit of claim 5 , wherein the single level cell settings are configured to reduce a signal integrity for the data read by the read-write circuit for the first read command and increase a data transfer speed and the error correction circuit is configured to perform error correction configured to compensate for the reduced signal integrity.

7. The circuit of claim 1 , further comprising a tuner configured to tune a memory interface for transfer of data for storage cells configured to store more than one bit per storage cell and configured to generate the multi-level cell settings.

8. The circuit of claim 7 , wherein the tuner is configured to tune the memory interface for transfer of data for storage cells configured to store a single bit per storage cell and configured to generate the single level cell settings.

9. The circuit of claim 1 , wherein the single level cell settings are configured to increase a data transfer speed of the memory interface above the data transfer speed associated with the multi-level cell settings.

10. The circuit of claim 1 , wherein the memory interface is configured to transfer the data using a double data rate protocol with the single level cell settings and with the multi-level cell settings.

11. A method, comprising:

receiving a first read command that references a set of single-level storage cells of a memory die;

setting a data transfer speed of a memory interface of the memory die to a first data transfer speed such that the first data transfer speed leverages the memory interface for transfer of data from the set of single-level storage cells; and

transferring data from the set of single-level storage cells over the memory interface using the first data transfer speed.

12. The method of claim 11 , further comprising:

receiving a second read command that references a set of multi-level storage cell of a memory die;

setting the data transfer speed of the memory interface to a second data transfer speed such that the second data transfer speed leverages the memory interface for transfer of data from the set of multi-level storage cells; and

transferring data from the set of multi-level storage cells over the memory interface using the second data transfer speed.

13. The method of claim 12 , wherein the second data transfer speed leverages the memory interface by increasing a signal integrity of signals of a data bus of the memory interface and by decreasing an interface clock speed used for the data bus.

14. The method of claim 11 , wherein the first data transfer speed leverages the memory interface by reducing a signal integrity of signals of a data bus of the memory interface and by increasing an interface clock speed used for the data bus.

15. The method of claim 11 , further comprising:

determining a current temperature of the memory die configured to communicate with a storage controller over the memory interface using a first interface clock speed;

cooling the memory die to a target temperature, in response to the current temperature exceeding a threshold, the target temperature configured to reduce a bit error rate for storage cells of the memory die relative to the current temperature;

wherein the first data transfer speed is configured to increase the first interface clock speed of the memory interface.

16. The method of claim 11 , wherein setting the data transfer speed of the memory interface comprises loading control registers with interface settings configured to increase an interface clock speed of the memory interface.

17. The method of claim 11 , wherein the memory interface comprises a data bus and a control bus.

18. The method of claim 11 , wherein the memory interface is configured to transfer the data using a double data rate protocol.

19. A system, comprising:

a storage controller comprising:

a driver coupled to a data bus and a strobe line of a memory interface, the driver operable to adjust a data transfer speed of the data bus and the strobe line, the driver characterized by a plurality of data transfer speeds wherein each of the plurality of data transfer speeds presents a different signal integrity;

a clocking circuit operable to reduce the data transfer speed by delaying transmission of a strobe signal communicated by the strobe line, the clocking circuit characterized by a set of interface clock speeds; and

a signal integrity circuit configured to determine a signal integrity for the memory interface for a particular data transfer speed; and

a die controller of a memory die, the die controller coupled to the storage controller via the data bus and the strobe line;

wherein the storage controller is configured to:

write test data via the data bus, to a set of multi-level storage cells in the memory die at a data transfer speed;

read the test data via the data bus from the multi-level storage cells at the data transfer speed;

instruct the driver to change the data transfer speed to one of the plurality of data transfer speeds;

at each data transfer speed, write and read the test data via the data bus from the multi-level storage cells at the data transfer speed;

for each of the plurality of data transfer speeds, determine the signal integrity for writing and reading the test data; and

determine a multi-level storage cell data transfer speed for storage operations involving the multi-level storage cells such that the signal integrity satisfies a multi-level error correction threshold;

wherein the storage controller is further configured to:

write test data via the data bus, to a set of single-level storage cells in the memory die at a data transfer speed;

read the test data via the data bus from the single-level storage cells at the data transfer speed;

instruct the driver to change the data transfer speed to one of the plurality of data transfer speeds;

at each data transfer speed, write and read the test data via the data bus from the single-level storage cells at the data transfer speed;

for each of the plurality of data transfer speeds, determine the signal integrity for writing and reading the test data; and

determine a single-level storage cell data transfer speed for the storage operations involving the single-level storage cells such that the signal integrity satisfies a single-level error correction threshold; and

wherein the storage controller comprises a read-write circuit configured to:

service the storage operations involving the single-level storage cells using the single-level storage cell data transfer speed and to service the storage operations involving the multi-level storage cells using the multi-level storage cell data transfer speed.

20. The system of claim 19 , wherein the single-level storage cell data transfer speed corresponds to a set of single level cell settings loaded into control registers of the storage controller and the multi-level storage cell data transfer speed corresponds to a set of multi-level cell settings loaded into the control registers.

Assignments (10)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 →
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 24, 2020
From: YANG, NIAN; SHARMA, SAHIL; DHOTRE, PIYUSH
To: WESTERN DIGITAL TECHNOLOGIES INC.
Reel/Frame 052206/0918 →
Cited By (3)
US 12,277,344 US 12,625,613 US 12,625,640