Memory controller and decoding method
First Claim
1. A memory controller comprising a decoder configured to perform approximate maximum likelihood decoding of a linear code on a received word, the received word being read from a non-volatile memory,the decoder including:
- a generation unit configured to output a plurality of decoded word information on the basis of the received word, each of the plurality of decoded word information identifying each of a plurality of decoded word being a candidate for a decoded result of the received word; and
a selection unit configured to select a decoded word with the maximum likelihood from among the plurality of decoded words,the generation unit including;
an initial value generation unit configured to calculate first data on the basis of the received word;
a storage unit configured to store the first data and a predetermined number of second data;
an update unit configured to calculate new second data by using the predetermined number of second data stored in the storage unit and update the predetermined number of second data stored in the storage unit with the new second data; and
an arithmetic unit configured to add the first data and the latest second data stored in the storage unit and output a result of the addition as the decoded word information.
5 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment, a memory controller includes a decoder configured to perform approximate maximum likelihood decoding, the decoder including: an initial value generation unit configured to calculate first data on the basis of a received word read from a non-volatile memory; a storage unit configured to store the first data and a predetermined number of second data; an update unit configured to calculate new second data by using the predetermined number of second data stored and update the storage unit; an arithmetic unit configured to output an addition result of the first data and the latest second data as decoded word information; and a selection unit configured to select a decoded word with the maximum likelihood on the basis of a plurality of the decoded word information.
-
Citations
20 Claims
-
1. A memory controller comprising a decoder configured to perform approximate maximum likelihood decoding of a linear code on a received word, the received word being read from a non-volatile memory,
the decoder including: -
a generation unit configured to output a plurality of decoded word information on the basis of the received word, each of the plurality of decoded word information identifying each of a plurality of decoded word being a candidate for a decoded result of the received word; and a selection unit configured to select a decoded word with the maximum likelihood from among the plurality of decoded words, the generation unit including; an initial value generation unit configured to calculate first data on the basis of the received word; a storage unit configured to store the first data and a predetermined number of second data; an update unit configured to calculate new second data by using the predetermined number of second data stored in the storage unit and update the predetermined number of second data stored in the storage unit with the new second data; and an arithmetic unit configured to add the first data and the latest second data stored in the storage unit and output a result of the addition as the decoded word information. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A storage device comprising:
-
a non-volatile memory; a memory interface configured to read a received word from the non-volatile memory; and a decoder configured to perform approximate maximum likelihood decoding of a linear code on the received word, the decoder including; a generation unit configured to output a plurality of decoded word information on the basis of the received word, each of the plurality of decoded word information uniquely identifying each of a plurality of decoded word being a candidate for a decoded result of the received word; and a selection unit configured to select a decoded word with the maximum likelihood from among the decoded words on the basis of the decoded word information, the generation unit including; an initial value generation unit configured to calculate first data on the basis of the received word; a storage unit configured to store the first data and a predetermined number of second data; an update unit configured to calculate new second data by using the predetermined number of second data stored in the storage unit and update the predetermined number of second data stored in the storage unit with the new second data; and an arithmetic unit configured to add the first data and the latest second data stored in the storage unit and output a result of the addition as the decoded word information. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A decoding method which performs approximate maximum likelihood decoding of a linear code on a received word read from a non-volatile memory, the method comprising:
-
calculating first data on the basis of the received word; storing the first data and a predetermined number of second data into a storage unit; performing second data calculation processing of calculating new second data by using a predetermined number of second data stored in the storage unit; updating the predetermined number of second data stored in the storage unit with the new second data; adding the first data and the latest second data stored in the storage unit and outputting an addition result as a decoded word information;
the decoded word information uniquely identifying each of a plurality of decoded words, each of the plurality of decoded words being a candidate for a decoded result of the received word; andselecting, as a decoded result, a decoded word with the maximum likelihood from among the plurality of decoded words on the basis of a plurality of the decoded word information. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification