IP Library › Granted Patent US 9,753,652
Granted Patent B2
US 9,753,652 · App. 14/429,049 · Granted Sep 5, 2017

Memory controller, data storage device, and memory control method

Inventors: Chao Sun (Tokyo, JP); Kosuke Miyaji (Tokyo, JP); Ken Takeuchi (Tokyo, JP)
Assignee: CHUO UNIVERSITY
G06F3/0611G06F3/0616G06F3/0659G06F3/0679G06F12/0238G06F12/0246G06F2212/1016G06F2212/1036G06F2212/7202G06F2212/7203Y02B60/1225
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 9,753,652
App. No.
14/429,049
Granted
Sep 5, 2017
Kind
B2
Abstract

To reduce deterioration of non-volatile memory and write data at higher speed, writing data is stored in a ReRAM when a page utilization rate R is lower than a threshold Rth 1 and/or the writing data is frequently-rewritten data. With an empty space Semp 2 in the ReRAM being less than a threshold Sth (step S 110 ), when the data in the ReRAM is infrequently-rewritten data and the page utilization rate R obtained if target data is stored in a flash memory 22 is equal to or higher than a threshold value Rth 3 (steps S 120 and S 130 ), data of logical sectors contained in N logical page addresses stored in a transfer list is read from the ReRAM to be written to the flash memory (steps S 140 to S 160 ). These steps reduce deterioration of the flash memory and allow higher data writing.

Claims (28)

1. A memory controller for controlling a first memory and a second memory, the first memory being configured as a non-volatile memory to which data is written by writing operation in which data is read on a page basis consisting of a plurality of sectors, a sector corresponding to writing data among the data being read is overwritten by the writing data, and then data is written on the page basis, and the second memory being configured as a non-volatile random access memory that allows faster data writing than the first memory, the memory controller comprising:

a writing controller configured to control the first and second memories, upon input of the writing data and a writing request signal requesting writing of the writing data, such that the writing data being input is written to the first memory by the writing operation when a data utilization rate obtained if the writing data is written to the first memory is equal to or higher than a first rate, wherein the data utilization rate indicates a rate of a sector size used for storing the writing data based on a storage area having a predetermined size; and such that the writing data being input is stored in the second memory when the data utilization rate is lower than the first rate; and

a data transfer controller configured to execute data transfer control that controls the first and second memories, with an empty space in the second memory being less than a predetermined amount, such that, at least on a necessary condition that data stored in the second memory is infrequently-rewritten data with a low rewritten frequency, the infrequently-rewritten data is read from the second memory to be written to the first memory by the writing operation,

wherein the data transfer controller is configured to execute the data transfer control, with the empty space in the second memory being less than the predetermined amount, at least on necessary conditions that the data stored in the second memory is the infrequently-rewritten data and the data utilization rate obtained if the infrequently-rewritten data is written to the first memory is equal to or higher than a second rate, the second rate being lower the first rate.

2. The memory controller of claim 1 , further comprising:

an address managing section configured to manage the first and second memories by using a logical address consisting of a page address indicating a page containing data and a sector address indicating a sector used for storage of the data contained in the page; and

a high utilization rate address information memory configured to store the logical address of writing data that renders the data utilization rate to be equal to or higher than the first rate,

wherein the data transfer controller is configured to determine that the writing data being input is the infrequently-rewritten data when the number of logical addresses of the writing data being input stored in the high utilization rate address information memory is less than a predetermined number.

3. The memory controller of claim 2 , wherein

in storing the writing data being input in the second memory, the controller is configured, when data corresponding to the logical address of the writing data being input is already stored in a storage area of the first memory, to read the data stored in the first memory on the page basis, to rewrite a sector to which the writing data is to be written among sectors of the data being read, and then to store the writing data being input in the second memory on the page basis.

4. The memory controller of claim 1 , further comprising:

a page address memory configured to store, with the empty space in the second memory being less than the predetermined amount, a page address of a page containing the infrequently-rewritten data when the data stored in the second memory is the infrequently-rewritten data and the data utilization rate obtained if the infrequently-rewritten data is written to the first memory is equal to or higher than the second rate,

wherein the data transfer controller is configured to execute, with the empty space in the second memory being less than the predetermined amount, the data transfer control for data in the second memory corresponding to the page addresses stored in the page address memory, at least on necessary conditions that the data stored in the second memory is the infrequently-rewritten data, the data utilization rate obtained if the infrequently-rewritten data is written to the first memory is equal to or higher than the second rate, and the number of page addresses stored in the page address memory is equal to or greater than a predetermined number.

5. The memory controller of claim 4 , wherein

the data transfer controller is configured, with the empty space in the second memory being less than the predetermined amount, after determining, for a plurality of pages greater in number than the predetermined number, whether the data stored in the second memory is the infrequently-rewritten data and whether the page utilization rate obtained if the infrequently-rewritten data is written to the first memory is equal to or higher than the second rate, to decrease the second rate when the number of page addresses stored in the page address memory is less than the predetermined number, maintain a value of the second rate, without making any change to the value, when the number of page addresses stored in the page address memory is the predetermined number, and increase the second rate when the number of page addresses stored in the page address memory is greater than the predetermined number.

6. The memory controller of claim 1 , wherein

the writing controller and the data transfer controller are configured to calculate the data utilization rate by referring to utilization sector information, which indicates whether each sector stores data, and a sector used for storing the writing data being input.

7. The memory controller of claim 1 , wherein

the storage area having the predetermined size is an area in which pages containing sectors used by the writing data is stored.

8. The memory controller of claim 1 , wherein

the first memory is a NAND flash memory.

9. The memory controller of claim 1 , wherein

the second memory is a resistance random access memory.

10. A data storage device, comprising: the memory controller, the first memory, and the second memory of claim 1 .

11. A memory control method for controlling a first memory and a second memory, wherein the first memory is configured as a non-volatile memory to which data is written by writing operation in which data is read on a page basis consisting of a plurality of sectors, a sector corresponding to writing data among the data being read is overwritten by the writing data, and then data is written on the page basis, and the second memory is configured as a non-volatile random access memory that allows faster data writing than the first memory, the method comprising the steps of:

controlling the first and second memories, upon input of the writing data and a writing request signal requesting writing of the writing data, such that the writing data being input is written to the first memory by the writing operation when a data utilization rate obtained if the writing data is written to the first memory is equal to or higher than a first rate, wherein the data utilization rate indicates a rate of a sector size used for storing the writing data based on a storage area having a predetermined size, and such that the writing data being input is stored in the second memory when the data utilization rate is lower than the first rate; and

executing data transfer control for controlling the first and second memories, with an empty space in the second memory being less than a predetermined amount, such that, at least on a necessary condition that data stored in the second memory is infrequently-rewritten data with a low rewritten frequency, the infrequently-rewritten data is read from the second memory to be written to the first memory by the writing operation,

wherein the data transfer control is executed, with the empty space in the second memory being less than the predetermined amount, at least on necessary conditions that the data stored in the second memory is the infrequently-rewritten data and the data utilization rate obtained if the data having the predetermined size that contains sectors used for storing the infrequently-rewritten data is written to the first memory is equal to or higher than a second rate, the second rate being lower than the first rate.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2015
From: SUN, CHAO; MIYAJI, KOSUKE; TAKEUCHI, KEN
To: CHUO UNIVERSITY
Reel/Frame 035190/0163 →
Priority Claims (1)
JP 2012-205664 · Sep 19, 2012 · national
Continuity (1)
Related Publication 20150220273A1 · Aug 6, 2015