IP Library › Granted Patent US 12,332,743
Granted Patent B2
US 12,332,743 · App. 18/507,805 · Granted Jun 17, 2025

Efficient memory use to support soft information in bit flipping decoders

Inventors: Mustafa N. Kaynak (San Diego, CA); Eyal En Gad (Highland, CA); Zhengang Chen (San Jose, CA); Sivagnanam Parthasarathy (Carlsbad, CA); Phong Sy Nguyen (Livermore, CA); Dung V. Nguyen (San Jose, CA)
Assignee: MICRON TECHNOLOGY, INC.
G06F11/1068G06F11/076G06F11/1016
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 12,332,743
App. No.
18/507,805
Granted
Jun 17, 2025
Kind
B2
Abstract

A method includes performing a read operation of a first codeword including first hard data and generating an error vector using a reliability metric of the first hard data. The first hard data and error vector are stored in first and second portions of memory. A first corrected codeword is returned that combines the error vector and the hard data from the first and second portions of memory. A read operation of a second codeword is performed, including second hard data and soft information. The hard data and soft information are stored in the first and second portions of memory. A bit of second hard data is flipped responsive to comparing a reliability metric of the bit of the second hard data to a bit flipping threshold, wherein flipping the bit includes updating the second hard data. The updated second codeword is returned resulting from reading the portions of memory.

Claims (64)

1. A method comprising:

performing a read operation of a first codeword including first hard data;

generating an error vector using a reliability metric of the first hard data;

storing the first hard data and the error vector in a first portion of a memory and a second portion of the memory;

returning a first corrected codeword that results from a combination of the error vector and the hard data from the first and second portions of memory;

performing a read operation of a second codeword including second hard data and soft information;

storing the second hard data and the soft information in the first portion of the memory and the second portion of the memory;

flipping a bit of the second hard data responsive to comparing a reliability metric of the bit of the second hard data to a bit flipping threshold, wherein flipping the bit includes updating the second hard data stored in the first or second portions of memory; and

returning an updated second codeword that results from reading at least one of the first portion of the memory or the second portion of the memory.

2. The method of claim 1 , wherein:

the first hard data remains static as a first state of a memory cell read from a memory device, and

the second hard data is updated dynamically as a second state of the memory cell read from the memory device, wherein the second hard data is processed in iterations of a bit flipping decoder.

3. The method of claim 1 , wherein:

the first hard data is stored in the first portion of the memory, and the error vector is stored in the second portion of the memory, and

the second hard data is stored in the second portion of the memory, and the soft information is stored in the first portion of the memory.

4. The method of claim 1 , wherein the reliability metric of the bit of the second hard data includes soft information of the bit of the second hard data.

5. The method of claim 1 , further comprising:

selecting the bit flipping threshold using the soft information of the bit of the second hard data.

6. The method of claim 1 , further comprising:

receiving an indication to enable a soft information mode.

7. The method of claim 6 , wherein the indication is responsive to determining a read operation directed to an address mapped to an indicator of a low-reliability portion of memory.

8. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:

perform a read operation of a first codeword including first hard data;

generate an error vector using a reliability metric of the first hard data;

store the first hard data and the error vector in a first portion of a memory and a second portion of the memory;

return a first corrected codeword that results from a combination of the error vector and the hard data from the first and second portions of memory;

perform a read operation of a second codeword including second hard data and soft information;

store the second hard data and the soft information in the first portion of the memory and the second portion of the memory;

flip a bit of the second hard data responsive to comparing a reliability metric of the bit of the second hard data to a bit flipping threshold, wherein flipping the bit includes updating the second hard data stored in the first or second portions of memory; and

return an updated second codeword that results from reading at least one of the first portion of the memory or the second portion of the memory.

9. The non-transitory computer-readable storage medium of claim 8 , wherein:

the first hard data remains static as a first state of a memory cell read from a memory device, and

the second hard data is updated dynamically as a second state of the memory cell read from the memory device, wherein the second hard data is processed in iterations of a bit flipping decoder.

10. The non-transitory computer-readable storage medium of claim 8 , wherein:

the first hard data is stored in the first portion of the memory, and the error vector is stored in the second portion of the memory, and

the second hard data is stored in the second portion of the memory, and the soft information is stored in the first portion of the memory.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the reliability metric of the bit of the second hard data includes soft information of the bit of the second hard data.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the processing device is further to:

select the bit flipping threshold using the soft information of the bit of the second hard data.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the processing device is further to:

receive an indication to enable a soft information mode.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the indication is responsive to determining a read operation directed to an address mapped to an indicator of a low-reliability portion of memory.

15. A system comprising:

a memory device and

a processing device, operatively coupled with the memory device, to:

perform a read operation of a first codeword including first hard data;

generate an error vector using a reliability metric of the first hard data;

store the first hard data and the error vector in a first portion of a memory and a second portion of the memory;

return a first corrected codeword that results from a combination of the error vector and the hard data from the first and second portions of memory;

perform a read operation of a second codeword including second hard data and soft information;

store the second hard data and the soft information in the first portion of the memory and the second portion of the memory;

flip a bit of the second hard data responsive to comparing a reliability metric of the bit of the second hard data to a bit flipping threshold, wherein flipping the bit includes updating the second hard data stored in the first or second portions of memory, wherein the reliability metric of the bit of the second hard data includes soft information of the bit of the second hard data; and

return an updated second codeword that results from reading at least one of the first portion of the memory or the second portion of the memory.

16. The system of claim 15 , wherein:

the first hard data remains static as a first state of a memory cell read from a memory device, and

the second hard data is updated dynamically as a second state of the memory cell read from the memory device, wherein the second hard data is processed in iterations of a bit flipping decoder.

17. The system of claim 15 , wherein:

the first hard data is stored in the first portion of the memory, and the error vector is stored in the second portion of the memory, and

the second hard data is stored in the second portion of the memory, and the soft information is stored in the first portion of the memory.

18. The system of claim 15 , wherein the processing device is further to:

select the bit flipping threshold using the soft information of the bit of the second hard data.

19. The system of claim 15 , wherein the processing device is further to:

receive an indication to enable a soft information mode.

20. The system of claim 19 , wherein the indication is responsive to determining a read operation directed to an address mapped to an indicator of a low-reliability portion of memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2023
From: KAYNAK, MUSTAFA N.; EN GAD, EYAL; CHEN, ZHENGANG; PARTHASARATHY, SIVAGNANAM; NGUYEN, PHONG SY; NGUYEN, DUNG V.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 065544/0867 →
Continuity (2)
Provisional Application 63384583 · Nov 21, 2022
Related Publication 20240168847A1 · May 23, 2024
References Cited (11)
US RE46346E · Sommer · 2017 [cited by examiner]
US 11146290B1 · Xiong et al. · 2021 [cited by applicant]
US 20130028335A1 · Limberg · 2013 [cited by examiner]
US 20140153338A1 · Byeon · 2014 [cited by examiner]
US 20150188570A1 · Kwok et al. · 2015 [cited by applicant]
US 20170279468A1 · Kumar · 2017 [cited by examiner]
US 20180262215A1 · Sharon · 2018 [cited by examiner]
US 20200401475A1 · Lu · 2020 [cited by applicant]
US 20210263794A1 · Shin et al. · 2021 [cited by applicant]
US 20220321148A1 · Kaynak et al. · 2022 [cited by applicant]
International Search Report and Written Opinion, PCT App. No. PCT/US2023/080492, Mar. 11, 2024, 08 pages. [cited by applicant]