Memory system, method of controlling memory system, and information processing apparatus
AssigneeKabushiki Kaisha Toshiba
InventorsHirokuni Yano, Ryoichi Kato, Toshikatsu Hida
Life of this patent
Estimating the term…
Abstract
A WC resource usage is compared with an auto flush (AU) threshold Caf that is smaller than an upper limit Clmt, and when the WC resource usage exceeds the AF threshold Caf, the organizing state of a NAND memory 10 is checked. When the organizing of the NAND memory 10 has proceeded sufficiently, data is flushed from a write cache (WC) 21 to the NAND memory 10 early, so that the response to the subsequent write command is improved.
Claims33
A memory system comprising:
- a cache memory;
- a nonvolatile semiconductor memory in which data is written via the cache memory;
- an organizing unit that, when a resource usage of the nonvolatile semiconductor memory exceeds a specific value, increases a resource of the nonvolatile semiconductor memory by organizing the data in the nonvolatile semiconductor memory;
- a first flush control unit that performs first flush processing for flushing data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than a first threshold when the resource usage of the cache memory exceeds the first threshold and is smaller than a second threshold that is larger than the first threshold and an organizing by the organizing unit is finished;
- and
- a second flush control unit that performs second flush processing for flushing the data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than the second threshold when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is finished, and flushing the data in the cache memory to the nonvolatile semiconductor memory after the organizing by the organizing unit is finished when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is not finished.
A memory system comprising:
- a cache memory;
- a nonvolatile semiconductor memory in which data is written via the cache memory;
- an organizing unit that, when a resource usage of the nonvolatile semiconductor memory exceeds a specific value, increases a resource of the nonvolatile semiconductor memory by organizing the data in the nonvolatile semiconductor memory;
- a first flush control unit that flushes data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than a first threshold when the resource usage of the cache memory exceeds the first threshold and is smaller than a second threshold that is larger than the first threshold and an organizing by the organizing unit is finished;
- and
- a second flush control unit that performs:
- first processing for flushing the data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than the second threshold when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is finished;
- second processing for performing data writing in the cache memory without flushing the data in the cache memory to the nonvolatile semiconductor memory when the resource usage of the cache memory exceeds the second threshold, the organizing by the organizing unit is not finished, and the write request is capable of being processed in a range without the resource usage of the cache memory reaching a maximum value as a tolerance that is larger than the second threshold;
- and
- third processing for performing data writing in the cache memory after the organizing by the organizing unit is finished and the data in the cache memory is flushed to the nonvolatile semiconductor memory when the resource usage of the cache memory exceeds the second threshold, the organizing by the organizing unit is not finished, and the write request is not capable of being processed in a range without the resource usage of the cache memory reaching the maximum value.
A method of controlling a memory system that includes a cache memory and a nonvolatile semiconductor memory in which data is written via the cache memory, the method comprising:
- performing organizing processing for increasing a resource of the nonvolatile semiconductor memory by organizing the data in the nonvolatile semiconductor memory when a resource usage of the nonvolatile semiconductor memory exceeds a specific value;
- performing first flush processing for flushing data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than a first threshold when the resource usage of the cache memory exceeds the first threshold and is smaller than a second threshold that is larger than the first threshold and the organizing by an organizing unit is finished;
- and
- performing second flush processing for flushing the data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than the second threshold when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is finished, and flushing the data in the cache memory to the nonvolatile semiconductor memory after the organizing by the organizing unit is finished when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is not finished.
A method of controlling a memory system that includes a cache memory and a nonvolatile semiconductor memory in which data is written via the cache memory, the method comprising:
- performing organizing processing for increasing a resource of the nonvolatile semiconductor memory by organizing the data in the nonvolatile semiconductor memory when a resource usage of the nonvolatile semiconductor memory exceeds a specific value;
- performing first flush processing for flushing data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than a first threshold when the resource usage of the cache memory exceeds the first threshold and is smaller than a second threshold that is larger than the first threshold and the organizing by an organizing unit is finished;
- and
- performing second flush processing for performing:
- first processing for flushing the data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than the second threshold when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is finished;
- second processing for performing data writing in the cache memory without flushing the data in the cache memory to the nonvolatile semiconductor memory when the resource usage of the cache memory exceeds the second threshold, the organizing by the organizing unit is not finished, and the write request is capable of being processed in a range without the resource usage of the cache memory reaching a maximum value as a tolerance that is larger than the second threshold;
- and
- third processing for performing data writing in the cache memory after the organizing by the organizing unit is finished and the data in the cache memory is flushed to the nonvolatile semiconductor memory when the resource usage of the cache memory exceeds the second threshold, the organizing by the organizing unit is not finished, and the write request is not capable of being processed in a range without the resource usage of the cache memory reaching the maximum value.
An information processing apparatus comprising:
- a CPU;
- a main storage memory;
- and
- an external storage device, wherein
- the external storage device includes:
- a cache memory;
- a nonvolatile semiconductor memory in which data is written via the cache memory;
- an organizing unit that, when a resource usage of the nonvolatile semiconductor memory exceeds a specific value, increases a resource of the nonvolatile semiconductor memory by organizing the data in the nonvolatile semiconductor memory;
- a first flush control unit that performs first flush processing for flushing data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than a first threshold when the resource usage of the cache memory exceeds the first threshold and is smaller than a second threshold that is larger than the first threshold and an organizing by the organizing unit is finished;
- and
- a second flush control unit that performs second flush processing for flushing the data in the cache memory to the nonvolatile semiconductor memory until the resource usage of the cache memory becomes equal to or less than the second threshold when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is finished, and flushing the data in the cache memory to the nonvolatile semiconductor memory after the organizing by the organizing unit is finished when the resource usage of the cache memory exceeds the second threshold and the organizing by the organizing unit is not finished.
Dependencies are inferred from the claim text.