MEMORY CONTROLLER
First Claim
1. A memory controller that controls a non-volatile memory, the memory controller comprising:
- an encoder configured to sequentially receive data, and to sequentially calculate parity based on the data,a buffer configured to store the parity calculated by the encoder, the parity stored in the buffer including at least one of completed parity calculated based on the data having predetermined size and intermediate parity calculated based on the data having size less than the predetermined size;
a write processing unit configured to write the data and the completed parity to a non-volatile memory;
a decoder configured to perform a decoding process based on the data and the parity; and
a controller configured to control the decoder to perform decoding based on the data read from the non-volatile memory and the intermediate parity stored in the buffer when receiving a read request directing to the data for which the intermediate parity in the buffer being generated.
5 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment, a memory controller according to the embodiments includes an encoder that sequentially calculates parity based on data; a parity buffer that stores completed parity and intermediate parity based on data less than a predetermined size; a write processing unit that writes data and completed parity on a non-volatile memory; a decoder; and a controller that performs a decoding process based on the data read from the non-volatile memory and the intermediate parity in the parity buffer, when receiving a read request to inputted data in a stage in which the a number of inputted data to the encoder is less than the predetermined size.
31 Citations
13 Claims
-
1. A memory controller that controls a non-volatile memory, the memory controller comprising:
-
an encoder configured to sequentially receive data, and to sequentially calculate parity based on the data, a buffer configured to store the parity calculated by the encoder, the parity stored in the buffer including at least one of completed parity calculated based on the data having predetermined size and intermediate parity calculated based on the data having size less than the predetermined size; a write processing unit configured to write the data and the completed parity to a non-volatile memory; a decoder configured to perform a decoding process based on the data and the parity; and a controller configured to control the decoder to perform decoding based on the data read from the non-volatile memory and the intermediate parity stored in the buffer when receiving a read request directing to the data for which the intermediate parity in the buffer being generated. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A memory controller that controls a non-volatile memory, the memory controller comprising:
-
an encoder configured to sequentially receive data, and to sequentially calculate parity based on the data sequentially inputted, a parity buffer configured to store the parity calculated by the encoder, the parity stored in the parity buffer including at least either one of completed parity calculated based on predetermined size of the data, and intermediate parity calculated based on the data having size less than the predetermined size; and a write processing unit configured to write the data and the completed parity to a non-volatile memory, wherein the write processing unit writes the intermediate parity on the non-volatile memory, when receiving a predetermined command in a stage in which the size of the data inputted to the encoder is less than the predetermined size. - View Dependent Claims (9, 10, 11)
-
-
12. A memory controller that controls a non-volatile memory, the memory controller comprising:
-
an encoder configured to sequentially receive data, and to sequentially calculate parity based on the data sequentially inputted; and a write processing unit configured to write the data and the parity to a non-volatile memory, wherein when writing is not performed on a part of a region, which is specified as an unwritten region, in the non-volatile memory into which the data having predetermined size is to be written, the encoder calculates the parity using zero as input data instead of the data corresponding to the unwritten region. - View Dependent Claims (13)
-
Specification