IP Library Granted Patent US 11,502,702
Granted Patent B2
US 11,502,702 · App. 16/889,501 · Granted Nov 15, 2022

Read threshold calibration using multiple decoders

Inventors: Ran Zamir (Ramat Gan, IL); Eran Sharon (Rishon Lezion, IL); Alexander Bazarsky (Holon, IL)
Assignee: Western Digital Technologies, Inc.
H03M13/015G11C29/42G11C29/44H03M13/1105H03M13/1575G06F3/0619G06F3/0679G06F11/076G11C16/26G11C29/52G11C2029/1202H03M13/6561
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,502,702
App. No.
16/889,501
Granted
Nov 15, 2022
Kind
B2
Abstract

A memory controller includes, in one embodiment, a memory interface, a plurality of decoders, and a controller circuit. The memory interface is configured to interface with a memory having a plurality of wordlines. Each decoder of the plurality of decoders is configured to determine a bit error rate (BER). The controller circuit configured to generate a plurality of bit-error-rate estimation scan (BES) hypotheses for one wordline of the plurality of wordlines, divide the plurality of BES hypotheses among the plurality of decoders, receive BER results from the plurality of decoders based on the plurality of BES hypotheses, and adjust one or more read locations of the one wordline based on the BER results from the plurality of decoders.

Claims (57)

1. A memory controller, comprising:

a memory interface configured to interface with a memory having a plurality of wordlines;

a plurality of decoders, each decoder of the plurality of decoders is configured to determine a bit error rate (BER), such that the plurality of decoders determine a plurality of BERs; and

a controller circuit configured to:

generate a plurality of bit-error-rate estimation scan (BES) hypotheses for one wordline of the plurality of wordlines,

divide the plurality of BES hypotheses among the plurality of decoders,

receive the plurality of BERs from the plurality of decoders based on the plurality of BES hypotheses, and

adjust one or more read locations of the one wordline based on the plurality of BERs from the plurality of decoders.

2. The memory controller of claim 1 , wherein the controller circuit is further configured to

perform a read operation on the one wordline of the plurality of wordlines at a second one or more read locations, and

detect an ECC failure while performing the read operation on the one wordline of the plurality of wordlines at the second one or more read locations, and

generate the plurality of BES hypotheses for the one wordline of the plurality of wordlines in response to detecting the ECC failure,

wherein the second one or more read locations are different than the one or more read locations.

3. The memory controller of claim 1 , wherein the controller circuit is further configured to perform a read operation on the one wordline at the one or more read locations that are adjusted.

4. The memory controller of claim 1 , wherein, to divide the plurality of BES hypotheses among the plurality of decoders, the controller circuit is further configured to divide the plurality of BES hypotheses to keep the plurality of decoders in respective active states over a common timeframe.

5. The memory controller of claim 4 , wherein, to divide the plurality of BES hypotheses among the plurality of decoders, the controller circuit is further configured to divide the plurality of BES hypotheses to control the plurality of decoders to output respective BER results at a similar point in time.

6. The memory controller of claim 1 , wherein the one wordline includes a plurality of frame memory units (FMUs), and wherein, to generate the plurality of BES hypotheses for the one wordline of the plurality of wordlines, the controller circuit is further configured to generate the plurality of BES hypotheses for each FMU of the plurality of frame memory units (FMUs).

7. The memory controller of claim 1 , wherein, to determine the BER, the each decoder of the plurality of decoders is configured to determine the BER by performing at least one of:

calculating the BER exactly by decoding data that is read from the one wordline and counting bit flips, or

calculating a syndrome weight (SW) of the one wordline that approximates the BER,

wherein the plurality of BERs include at least one of an exact BER or the SW.

8. The memory controller of claim 1 , wherein the controller circuit is further configured to generate an aggregated result by aggregating the plurality of BERs from the plurality of decoders, and wherein, to adjust the one or more read locations based on the plurality of BERs from the plurality of decoders, the controller circuit is further configured adjust the one or more read locations based on the aggregated result.

9. A method, comprising:

generating, with a controller circuit, a plurality of bit-error-rate estimation scan (BES) hypotheses for one wordline of a plurality of wordlines;

dividing, with the controller circuit, the plurality of BES hypotheses among a plurality of decoders;

receiving, with the controller circuit, a plurality of bit error rates (BERs) from the plurality of decoders based on the plurality of BES hypotheses; and

adjusting, with the controller circuit, one or more read locations of the one wordline based on the plurality of BERs from the plurality of decoders.

10. The method of claim 9 , further comprising:

performing, with the controller circuit, a read operation on the one wordline of the plurality of wordlines with at a second one or more read locations;

detecting, with the controller circuit, an ECC failure while performing the read operation on the one wordline of the plurality of wordlines at the second one or more read locations; and

generating, with the controller circuit, the plurality of bit-error-rate estimation scan (BES) hypotheses for the one wordline of the plurality of wordlines in response to detecting the ECC failure,

wherein the second one or more read locations are different than the one or more read locations.

11. The method of claim 9 , further comprising:

performing, with the controller circuit, a second read operation on the one wordline at the one or more read locations that are adjusted.

12. The method of claim 9 , wherein dividing the plurality of BES hypotheses among the plurality of decoders further includes dividing the plurality of BES hypotheses to keep the plurality of decoders in respective active states over a common timeframe.

13. The method of claim 12 , wherein dividing the plurality of BES hypotheses among the plurality of decoders further includes dividing the plurality of BES hypotheses to control the plurality of decoders to output respective ones of the plurality of BERs at a similar point in time.

14. The method of claim 9 , wherein the one wordline includes a plurality of frame memory units (FMUs), and wherein generating the plurality of BES hypotheses for the one wordline of the plurality of wordlines further includes generating the plurality of BES hypotheses for each FMU of the plurality of frame memory units (FMUs).

15. The method of claim 9 , further comprising:

determining, with each decoder of the plurality of decoders, a bit error rate (BER) by performing at least one of:

calculating the BER exactly by decoding data that is read from the one wordline and counting bit flips, or

calculating a syndrome weight (SW) of the one wordline that approximates the BER,

wherein the plurality of BERs include at least one of an exact BER or the SW.

16. The method of claim 9 , further comprising:

generating, with the controller circuit, an aggregated result by aggregating the plurality of BERs from the plurality of decoders, and

wherein adjusting the one or more read locations based on the plurality of BERs from the plurality of decoders further includes adjusting the one or more read locations based on the aggregated result.

17. An apparatus, comprising:

means for generating a plurality of bit-error-rate estimation scan (BES) hypotheses for one wordline of a plurality of wordlines;

means for dividing the plurality of BES hypotheses among a plurality of decoders;

means for receiving a plurality of bit error rates (BERs) from the plurality of decoders based on the plurality of BES hypotheses; and

means for adjusting one or more read locations based on the plurality of BERs from the plurality of decoders.

18. The apparatus of claim 17 , further comprising:

means for performing a read operation on the one wordline of the plurality of wordlines with the one or more read locations; and

means for detecting an ECC failure while performing the read operation on the one wordline of the plurality of wordlines with the one or more read locations,

wherein generating the plurality of bit-error-rate estimation scan (BES) hypotheses for the one wordline of the plurality of wordlines is in response to detecting the ECC failure.

19. The apparatus of claim 17 , further comprising:

means for performing a second read operation on the one wordline at the one or more read locations that are adjusted.

20. The apparatus of claim 17 , wherein the one wordline includes a plurality of frame memory units (FMUs), and wherein the means for generating the plurality of BES hypotheses for the one wordline of the plurality of wordlines further includes means for generating the plurality of BES hypotheses for each FMU of the plurality of frame memory units (FMUs).

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 053926 FRAME 0446 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0321 →
SECURITY INTEREST Recorded Sep 29, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053926/0446 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2020
From: ZAMIR, RAN; SHARON, ERAN; BAZARSKY, ALEXANDER
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052804/0009 →