Memory device, flash memory controller and associated control method

TW202640623APending Publication Date: 2026-10-01SILICON MOTION INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
TW114136545
Authority / Receiving Office
TW · TW
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-03-28
Filing Date
2025-09-23
Publication Date
2026-10-01
Estimated Expiration
2045-09-22

Smart Images

  • Figure TWG2TA001078309_001
    Figure TWG2TA001078309_001
  • Figure TWG2TA001078309_002
    Figure TWG2TA001078309_002
  • Figure TWG2TA001078309_003
    Figure TWG2TA001078309_003
Patent Text Reader

Abstract

The present invention provides a decoding method, which includes steps of: receiving data from a flash memory module; generating syndromes corresponding to the data according to the data and a parity check matrix; storing decoding information corresponding to only a portion of the data into a memory; iteratively updating the syndromes and the decoding information stored in the memory until the updated syndromes meet a specific condition; and generating decoded data according to the updated syndromes and the updated decoded information.
Need to check novelty before this filing date? Find Prior Art

Claims

1. A decoding method comprising: receiving data from a flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data into a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the step of storing the decoding information corresponding only to the portion of the data into the memory comprises: storing the decoding information corresponding to a field without a low field weight into the memory; and not storing the decoding information corresponding to a field with the low field weight into the memory.

2. The decoding method as described in claim 1, wherein a field weight refers to the number of "1"s in a field of a check matrix, and the low field weight indicates that the field weight is below a threshold value.

3. The decoding method as described in claim 2, wherein the low field weight indicates that the field weight is equal to one.

4. The decoding method as described in claim 1, wherein the decoding information corresponding to the field with the low field weight is never updated during the decoding of the data.

5. A decoding method comprising: receiving data from a flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data in a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the decoding information corresponding only to the portion of the data includes a log-likelihood ratio (LLR) value corresponding only to the portion of the data.

6. A flash memory controller for accessing a flash memory module, the flash memory controller comprising: a read-only memory for storing code; a microprocessor for executing the code to control access to the flash memory module; an encoder; and a decoder; wherein the decoder is configured to perform the following steps: receiving data from the flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data into a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the step of storing the decoding information corresponding only to the portion of the data into the memory comprises: The decoded information corresponding to a field that does not have a low field weight is stored in the memory; and the decoded information corresponding to a field that has the low field weight is not stored in the memory.

7. The flash memory controller as described in claim 6, wherein a field weight refers to the number of "1"s in a field of a check matrix, and the low field weight indicates that the field weight is below a threshold value.

8. The flash memory controller as described in claim 7, wherein the low field weight means that the field weight is equal to one.

9. The flash memory controller as described in claim 6, wherein the decoding information corresponding to the field having the low field weight is never updated during the data decoding process.

10. A flash memory controller for accessing a flash memory module, the flash memory controller comprising: a read-only memory for storing code; a microprocessor for executing the code to control access to the flash memory module; an encoder; and a decoder; wherein the decoder is configured to perform the following steps: receiving data from the flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data in a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the decoding information corresponding only to the portion of the data includes a log-likelihood ratio (LLR) value corresponding only to the portion of the data.

11. A memory device comprising: a flash memory module; and a flash memory controller for accessing the flash memory module; wherein the flash memory controller is configured to perform the following operations: receiving data from the flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data in a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the step of storing the decoding information corresponding only to the portion of the data in the memory comprises: storing the decoding information corresponding to a field without a low field weight in the memory; and not storing the decoding information corresponding to a field with the low field weight in the memory.

12. The memory device as described in claim 11, wherein a field weight refers to the number of "1"s in a field of a check matrix, and the low field weight indicates that the field weight is below a threshold value.

13. The memory device as described in claim 12, wherein the low field weight means that the field weight is equal to one.

14. The memory device as described in claim 11, wherein the decoding information corresponding to the field having the low field weight is never updated during the decoding of the data.

15. A memory device comprising: a flash memory module; and a flash memory controller for accessing the flash memory module; wherein the flash memory controller is configured to perform the following operations: receiving data from the flash memory module; checking a matrix based on the data and a checksum to generate a plurality of symptom values ​​corresponding to the data; storing decoding information corresponding only to a portion of the data in a memory; iteratively updating the plurality of symptom values ​​and the decoding information stored in the memory until the plurality of updated symptom values ​​meet a specific condition; and generating decoded data based on the plurality of updated symptom values ​​and the updated decoding information; wherein the decoding information corresponding only to the portion of the data includes a log-likelihood ratio (LLR) value corresponding only to the portion of the data.