Memory system, memory controller and memory control method
First Claim
1. A memory system comprising:
- a non-volatile memory;
a control unit that reads a received word as a soft decision value from the non-volatile memory; and
a decoder that performs soft-decision decode to the read received word, whereinthe decoder includesa test pattern generating unit that generates a plurality of test patterns indicating an assumed error position,a hard decision decoder that performs hard-decision decode by using the plurality of test patterns and the read received word and outputs a plurality of decoded words, each of the plurality of decoded words corresponding to each of the plurality of test patterns,a distance calculating unit that calculates Euclidean distance between the decoded word and the received word and selects a decoded word to be a decoding result from among the plurality of decoded words output from the hard decision decoder based on the Euclidean distance, the Euclidean distance being calculated based on the plurality of decoded words which are output from the hard decision decoder and of which the number of output decoded words is less than that of all the combinations of the test patterns in a case that the number of flips is one to a predetermined value, the number of flips being the number of errors which are assumed in the test pattern, anda processing control unit that outputs the selected decoded word.
5 Assignments
0 Petitions
Accused Products
Abstract
According to the embodiments, a memory system includes a non-volatile memory, a control unit that reads a received word from the non-volatile memory, and a decoder that performs soft-decision decode to the received word. The decoder includes a test pattern generating unit that generates test patterns, a hard decision decoder that performs hard-decision decode by using the test pattern and the received word and outputs a decoded word, and a distance calculating unit that calculates Euclidean distance between the decoded word and the received word based on the decoded words of which the number is less than that of the test patterns of all the combinations in a case where the number of flips is of one to a predetermined value and selects a decoded word which is the decoding result from among the decoded words output from the hard decision decoder based on the Euclidean distance.
7 Citations
17 Claims
-
1. A memory system comprising:
-
a non-volatile memory; a control unit that reads a received word as a soft decision value from the non-volatile memory; and a decoder that performs soft-decision decode to the read received word, wherein the decoder includes a test pattern generating unit that generates a plurality of test patterns indicating an assumed error position, a hard decision decoder that performs hard-decision decode by using the plurality of test patterns and the read received word and outputs a plurality of decoded words, each of the plurality of decoded words corresponding to each of the plurality of test patterns, a distance calculating unit that calculates Euclidean distance between the decoded word and the received word and selects a decoded word to be a decoding result from among the plurality of decoded words output from the hard decision decoder based on the Euclidean distance, the Euclidean distance being calculated based on the plurality of decoded words which are output from the hard decision decoder and of which the number of output decoded words is less than that of all the combinations of the test patterns in a case that the number of flips is one to a predetermined value, the number of flips being the number of errors which are assumed in the test pattern, and a processing control unit that outputs the selected decoded word. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A memory controller that controls a non-volatile memory, comprising:
-
a control unit that reads a received word as a soft decision value from the non-volatile memory; and a decoder that performs soft-decision decode to the read received word, wherein the decoder includes a test pattern generating unit that generates a plurality of test patterns indicating an assumed error position, a hard decision decoder that performs hard-decision decode by using the plurality of test patterns and the read received word and outputs a plurality of decoded words, each of the plurality of decoded words corresponding to each of the plurality of test patterns, a distance calculating unit that calculates Euclidean distance between the decoded word and the received word and selects a decoded word to be a decoding result from among the plurality of decoded words output from the hard decision decoder based on the Euclidean distance, the Euclidean distance being calculated based on the plurality of decoded words which are output from the hard decision decoder and of which the number of output decoded words is less than that of all the combinations of the test patterns in a case that the number of flips is one to a predetermined value, the number of flips being the number of errors which are assumed in the test pattern, and a processing control unit that outputs the selected decoded word.
-
-
10. A method for controlling a non-volatile memory, the method being performed by a memory controller, the method comprising:
-
reading a received word as a soft decision value from the non-volatile memory; and performing soft-decision decode to the read received word, wherein the soft-decision decode includes generating a plurality of test patterns indicating an assumed error position, performing hard-decision decode by using the plurality of test patterns and the read received word and outputting a plurality of decoded words, each of the plurality of decoded words corresponding to each of the plurality of test patterns, calculating Euclidean distance between the decoded word and the received word based on the plurality of decoded words of which the number of output decoded words is less than that of all the combinations of the test patterns in a case that the number of flips is one to a predetermined value, the number of flips being the number of errors which are assumed in the test pattern, selecting the decoded word which is a decoding result from among the plurality of decoded words based on the Euclidean distance, and outputting the selected decoded word. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification