IP Library Granted Patent US 10,275,165
Granted Patent B2
US 10,275,165 · App. 15/448,967 · Granted Apr 30, 2019

Memory controller

Inventors: Kazuki Inoue (Kawasaki Kanagawa, JP); Sho Kodama (Kawasaki Kanagawa, JP); Keiri Nakanishi (Kawasaki Kanagawa, JP)
Assignee: Toshiba Memory Corporation
G06F3/0619G06F3/064G06F3/0656G06F3/0679G06F11/1068G11C29/52H03M13/356H03M13/6318G11C11/5628G11C11/5642G11C16/0483G11C16/10G11C16/26G11C2029/0411G11C2029/4402
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 10,275,165
App. No.
15/448,967
Granted
Apr 30, 2019
Kind
B2
Abstract

According to one embodiment, a control unit determines a first physical sector in which first data is to be written among a plurality of physical sectors based on first information that is based on a result of the first data translation and the device characteristics of the plurality of physical sectors. A write unit writes data for which a first data translation is performed into the first physical sector of a nonvolatile memory.

Claims (53)

1. A memory controller that controls a nonvolatile memory including a plurality of physical sectors, each of the plurality of physical sectors including memory cells, the memory controller comprising:

a compression unit that compresses first data;

a data translating unit that performs a first data translation for the compressed first data, and calculates first information based on second data, the second data being a result of the first data translation;

a control unit that determines a first physical sector in which the second data is to be written among the plurality of physical sectors based on the first information and device characteristics of the plurality of the physical sectors; and

a write unit that writes the second data into the first physical sector of the nonvolatile memory, wherein,

in a case where the first information includes capability information of a first rank, the control unit allocates a physical sector having a device characteristic of a second rank to the first physical sector, and

in a case where the first information includes the capability information of a third rank, the control unit allocates a physical sector having a device characteristic of a fourth rank to the first physical sector, the capability information having the first rank and the third rank, the device characteristic having the second rank and the fourth rank, the first rank being higher rank than the third rank, the second rank being lower rank than the fourth rank.

2. The memory controller according to claim 1 , wherein the device characteristic includes information representing degrees of wear of the physical sectors or information representing retention characteristics of the physical sectors.

3. The memory controller according to claim 1 ,

wherein the first data translation is a padding process that includes adding, to the compressed first data, a number of pieces of padding data corresponding to a compression rate of the compressed first data, and

wherein the data translating unit inputs, to the control unit, the first information determined based on the compression rate of the compressed first data and the second data.

4. The memory controller according to claim 1 ,

wherein the first data translation is a logical operation process that includes performing a certain logical operation for the compressed first data and adding identification information representing an execution content of the logical operation to the compressed first data, and

wherein the data translating unit inputs, to the control unit, the first information determined based on the second data.

5. The memory controller according to claim 4 , wherein the logical operation is performed in first management units, the identification information is added in correspondence with data of the first management unit, and the first management unit is controlled to have a different size according to a compression rate of the compressed first data, the first management unit having a certain length acquired by dividing the physical sector into a plurality of parts, and wherein

the data translating unit inputs, to the control unit, the first information determined based on the compression rate of the compressed first data and the second data.

6. The memory controller according to claim 1 , further comprising a garbage collection processing unit that performs a garbage collection including reading data from a first block of the nonvolatile memory and writing the read data into a second block of the nonvolatile memory,

wherein the garbage collection processing unit selects the first block based on the device characteristics of the physical sectors.

7. The memory controller according to claim 1 , further comprising

a device characteristic managing unit that manages device characteristics of the physical sectors, and

a compression/decompression unit that compresses the device characteristics managed by the device characteristic managing unit and stores the compressed device characteristics in a volatile first memory and decompresses a part of the device characteristics stored in the volatile first memory and loads the decompressed device characteristic into the device characteristic managing unit.

8. The memory controller according to claim 1 , further comprising a device characteristic managing unit that manages device characteristics of the physical sectors, wherein the device characteristic managing unit manages the device characteristics of the physical sectors by using a second memory, and the device characteristic managing unit calculates the device characteristics of the physical sectors based on data read from the nonvolatile memory and updates the device characteristics managed by the second memory with the calculated device characteristics of the physical sectors.

9. A memory controller that controls a nonvolatile memory including a plurality of physical sectors, each of the plurality of physical sectors including memory cells, the memory controller comprising:

a compression unit that compresses first data;

a data translating unit that performs a first data translation for the compressed first data, the first data translation being a variable-length error correction code process, the variable-length error correction code process including adding, to the compressed first data, parity having a different parity length according to a compression rate of the compressed first data;

a control unit that determines a first physical sector in which second data is to be written among the plurality of physical sectors based on first information and device characteristics of the plurality of the physical sectors, the second data being a result of the first data translation, the first information being acquired based on the compression rate of the compressed first data; and

a write unit that writes the second data into the first physical sector of the nonvolatile memory, wherein,

in a case where the first information includes capability information of a first rank, the control unit allocates a physical sector having a device characteristic of a second rank to the first physical sector, and

in a case where the first information includes the capability information of a third rank, the control unit allocates a physical sector having a device characteristic of a fourth rank to the first physical sector, the capability information having the first rank and the third rank, the device characteristic having the second rank and the fourth rank, the first rank being higher rank than the third rank, the second rank being lower rank than the fourth rank.

10. The memory controller according to claim 9 , wherein the device characteristic includes information representing degrees of wear of the physical sectors or information representing retention characteristics of the physical sectors.

11. A memory controller that controls a nonvolatile memory including a plurality of physical sectors, each of the plurality of physical sectors including memory cells, the memory controller comprising:

an error predicting unit that predicts a number of bit errors occurring when first data is stored in the plurality of the physical sectors based on the first data to be written into the nonvolatile memory and defective cell information of the plurality of the physical sectors, the defective cell information at least including position information of a defective cell;

a control unit that determines a first physical sector in which the first data is to be written among the plurality of the physical sectors based on the predicted number of bit errors; and

a write unit that writes the first data into the first physical sector of the nonvolatile memory.

12. The memory controller according to claim 11 , wherein the control unit determines a physical sector of which the predicted number of bit errors is minimal as the first physical sector.

13. The memory controller according to claim 11 , further comprising:

a compression unit that compresses the first data; and

a code unit that adds parity of a different parity length in accordance with a compression rate of the compressed first data to the compressed first data,

wherein the error predicting unit predicts a numbers of bit errors occurring when coded first data is stored in the plurality of the physical sectors based on the first data coded by the code unit and the defective cell information of the plurality of the physical sectors, and

wherein the control unit determines a first physical sector in which the first data is to be written among the plurality of the physical sectors based on the predicted numbers of bit errors.

14. The memory controller according to claim 11 , further comprising a retention managing unit that manages retention characteristics of the physical sectors,

wherein the error predicting unit predicts a numbers of bit errors occurring when third data is stored in the plurality of the physical sectors based on the third data to be written into the nonvolatile memory and the retention characteristics of the plurality of the physical sectors, and

wherein the control unit determines a second physical sector in which the third data is to be written among the plurality of the physical sectors based on the predicted numbers of bit errors,

wherein the write unit writes the third data into the second physical sector of the nonvolatile memory.

15. The memory controller according to claim 14 , further comprising a refresh control unit that measures an elapsed time from when the third data is written into the second physical sector and determines timing for moving the third data written into the second physical sector to another physical sector based on a comparison between the measured elapsed time and the retention characteristic of the second physical sector.

16. The memory controller according to claim 11 , further comprising a buffer that stores a plurality of pieces of the first data,

wherein the error predicting unit predicts a numbers of bit errors occurring when the plurality of pieces of the first data are to be stored in the plurality of the physical sectors based on the plurality of pieces of the first data stored in the buffer and the defective cell information of the plurality of the physical sectors, and

wherein the control unit determines a plurality of first physical sectors in which the plurality of pieces of the first data are to be written among the plurality of the physical sectors based on the predicted numbers of bit errors.

17. The memory controller according to claim 11 , further comprising a garbage collection processing unit that performs a garbage collection including reading data from a first block of the nonvolatile memory and writing the read data into a second block of the nonvolatile memory,

wherein the garbage collection processing unit selects the first block based on the defective cell information of the physical sectors.

18. The memory controller according to claim 11 , further comprising

a defective cell managing unit that manages the defective cell information of the physical sectors,

a compression/decompression unit that compresses the defective cell information managed by the defective cell managing unit and stores the compressed defective cell information of the physical sectors in a nonvolatile first memory and decompresses a part of the defective cell information stored in the first memory and loads the decompressed defective cell information into the defective cell managing unit.

Assignments (5)
MERGER Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: K.K. PANGEA
Reel/Frame 055659/0471 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 055669/0001 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: K.K. PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 055669/0401 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043066/0329 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2017
From: INOUE, KAZUKI; KODAMA, SHO; NAKANISHI, KEIRI
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 042136/0384 →
Continuity (2)
Provisional Application 62393194 · Sep 12, 2016
Related Publication 20180074730A1 · Mar 15, 2018
Cited By (1)
US 12,189,977