Data storage device and data storing method thereof
AssigneeSamsung Electronics Co., Ltd.
InventorsMyung Hyun Jo, Sungchul Kim, Jeonguk Kang
Life of this patent
Estimating the term…
Abstract
A data storage device and a data storing method thereof, including first main memories coupled to a plurality of channels, second main memories coupled to the plurality of channels in common, a buffer memory temporarily storing data to be programmed to the first and the second main memories; and a controller configured to program data of victim cache lines from the buffer memory to the second main memories while data of a first victim cache line from the buffer memory is being programmed to the first main memories. The storing method includes that a victim cache line is selected based on cost-based page replacement.
Claims17
A data storage device comprising:
- a plurality of first main memories coupled to a plurality of channels;
- a plurality of second main memories coupled to the plurality of channels;
- a buffer memory configured to store data to be programmed to the first and the second main memories, wherein the data to be programmed comprises victim cache lines data including at least one of first victim cache line data, second victim cache line data, third victim cache line data, and fourth victim cache line data;
- and
- a controller configured to:
- set a threshold value in consideration of at least two factors including;
- a size of the buffer memory, a number of the plurality of channels, a Direct Memory Access (DMA) time, a program type for the first main memory, a program type for the second main memory, a program time for the first main memory, a program time for the second main memory, a number of banks in the first main memory, and a number of banks in the second main memory,
- determine whether buffer memory usage exceeds the threshold value, and upon determining that buffer memory usage exceeds the threshold value, determine a maximum cost for each one of the victim cache lines data,
- select the first victim cache line data from the victim cache lines data based on the maximum cost, and
- program the victim cache lines data to the second main memories while programming the first victim cache line data to the first main memories.
A method of programming data in data storage device including first main memories and second main memories coupled to a buffer memory via a plurality of channels, the method comprising:
- temporarily storing data in the buffer memory according to a number of victim cache lines to define victim cache lines data including at least one of first victim cache line data, second victim cache line data, third victim cache line data, and fourth victim cache line data;
- setting a threshold value in consideration of at least two factors including;
- a size of the buffer memory, a number of the plurality of channels, a Direct Memory Access (DMA) time, a program type for the first main memory, a program type for the second main memory, a program time for the first main memory, a program time for the second main memory, a number of banks in the first main memory, and a number of banks in the second main memory;
- determining whether buffer memory usage exceeds the threshold value;
- upon determining that buffer memory usage exceeds the threshold value, determining a maximum cost for each one of the victim cache lines data;
- selecting the first victim cache line data from the victim cache lines data based on the maximum cost, and
- programming at least a portion of the victim cache lines data in the second main memories while also programming at least a portion of the first victim cache line data to the first main memories.
Dependencies are inferred from the claim text.