IP Library Granted Patent US 11,528,038
Granted Patent B2
US 11,528,038 · App. 17/211,605 · Granted Dec 13, 2022

Content aware decoding using shared data statistics

Inventors: Dudy David Avraham (Even Yehuda, IL); Ran Zamir (Ramat Gan, IL); Omer Fainzilber (Herzeliya, IL)
Assignee: Western Digital Technologies, Inc.
H03M13/353G06F11/1068
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,528,038
App. No.
17/211,605
Granted
Dec 13, 2022
Kind
B2
Abstract

A method and apparatus for content aware decoding utilizes a pool of decoders shared data statistics. Each decoder generates statistical data of content it decodes and provides these statistics to a joint statistics pool. As codewords arrive at the decoder pool, the joint statistics are utilized to estimate or predict any corrupted or missing bit values. Codewords may be assigned to a specific decoder, such as a tier 1 decoder, a tier 2 decoder, or a tier 3 decoder, based on a syndrome weight or a bit error rate. The assigned decoder updates the joint statistics pool after processing the codeword. In some embodiments, each decoder may additionally maintain local statistics regarding codewords, and use the local statistics when there is a statistically significant mismatch between the local statistics and the joint statistics pool.

Claims (39)

1. A data storage device, comprising:

a non-volatile memory (NVM); and

a controller coupled to the NVM, wherein the controller comprises:

a plurality of decoders, comprising:

a first decoder configured to receive a first codeword, the first decoder configured to generate first data statistics for the first codeword; and

a second decoder configured to receive a second codeword, the second decoder configured to generate second data statistics for the second codeword; and

a joint data statistics module configured to receive the first and second data statistics, wherein the first and second data statistics join a joint data statistics pool, wherein the joint data statistics module comprises the joint data statistics pool that provides statistics to the plurality of decoders.

2. The data storage device of claim 1 , wherein the joint data statistics module is further configured to create an data histogram based on the first and second data statistics.

3. The data storage device of claim 1 , wherein the controller is configured to receive a third codeword, the first codeword, the second codeword, and the third codeword each being assigned to one of the plurality of decoders based on a syndrome weight or a bit error rate .

4. The data storage device of claim 1 , wherein the first codeword and second codeword are substantially similar, and wherein the first data statistics are updated by the second data statistics in the joint data statistics module.

5. The data storage device of claim 4 , wherein the first decoder stores the first data statistics, and wherein the controller is configured to receive a third codeword, the third codeword being assigned to the first decoder based on the joint data statistics, and the first decoder providing the third codeword to one of the plurality of decoders based on the first data statistics.

6. The data storage device of claim 1 , wherein each decoder of the plurality of decoders are comprised of one of a tier 1 decoder, a tier 2 decoder, and a tier 3 decoder.

7. The data storage device of claim 6 , wherein the controller is configured to receive a third codeword, the third codeword being assigned to one of the tier 1 decoder, the tier 2 decoder, and the tier 3 decoder based on a syndrome weight or a bit error rate.

8. A controller for a data storage device, comprising:

an I/O to one or more non-volatile memories (NVMs); and

a processor configured to perform a method for content aware decoding, the method comprising:

receiving a codeword from the one or more NVMs at a first decoder;

generating data statistics for the codeword; and

operating a joint statistics module, the joint statistics module coupled to a plurality of decoders that include the first decoder and providing an output based on shared data statistics from the plurality of decoders.

9. The controller of claim 8 , wherein each decoder of the plurality of decoders comprises one of a tier 1 decoder, a tier 2 decoder, and a tier 3 decoder.

10. The controller of claim 9 , wherein the method performable by the processor further comprises receiving a second codeword from the one or more NVMs, and assigning the second codeword to one of the plurality of decoders based on a syndrome weight or a bit error rate.

11. The controller of claim 10 , wherein the method performable by the processor further comprises wherein each one of the plurality of decoders locally maintains data statistics, and provides data statistics to the joint statistics module.

12. The controller of claim 11 , wherein the method performable by the processor further comprises assigning the second codeword to one of the plurality of decoders based on locally maintained data statistics.

13. The controller of claim 12 , wherein the method performable by the processor further comprises wherein a statistical mismatch is detected between locally maintained data statistics and the joint statistics module.

14. The controller of claim 13 , wherein the method performable by the processor further comprises wherein one of the joint statistics module and locally maintained data statistics each comprise a histogram.

15. The controller of claim 14 , wherein the method performable by the processor further comprises wherein newer ones of the data statistics are weighted as more relevant than older ones of the data statistics.

16. A system for storing data, comprising:

a non-volatile memory (NVM) means; and

a controller configured to execute a method for content aware decoding, the method comprising:

receiving from the NVM means at a first decoder of a plurality of decoders, a first codeword;

decoding the first codeword at the first decoder;

generating a first data statistic based on decoding the first codeword;

operating a joint data statistics module coupled to each of the plurality of decoders and configured to generate an output based upon shared data statistics provided by the plurality of decoders, and providing the first data statistic to the joint data statistics module;

receiving a second codeword from the NVM; and

assigning the second codeword to a second decoder moans of the plurality of decoders, based on a syndrome weight or a bit error rate.

17. The system of claim 16 , wherein the method further comprises generating a second data statistic at the second decoder, and updating the joint data statistics module based on the second data statistics.

18. The system of claim 17 , wherein the second data statistic is weighted as more relevant than the shared data statistics.

19. The system of claim 16 , wherein each one of the plurality of decoders is configured to providcretain local data statistics.

20. The system of claim 19 , wherein assignment of subsequent codewords from the NVM means to one of the plurality of decoders is based on the syndrome weight or the bit error rate.

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 - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
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 →
RELEASE OF SECURITY INTEREST AT REEL 056285 FRAME 0292 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 056285/0292 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2021
From: AVRAHAM, DUDY DAVID; ZAMIR, RAN; FAINZILBER, OMER
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 055712/0364 →