IP Library › Granted Patent US 8,918,580
Granted Patent B2
US 8,918,580 · App. 13/404,311 · Granted Dec 23, 2014

Storage device with buffer memory including non-volatile RAM and volatile RAM

Inventor: Wonmoon Cheon (Hwaseongi-si, KR)
Assignee: Samsung Electronics Co., Ltd.
G06F12/0638G06F12/0871G06F12/0866G06F12/0868G06F12/0873G06F13/1673G06F13/1668
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 8,918,580
App. No.
13/404,311
Granted
Dec 23, 2014
Kind
B2
Abstract

A storage device includes a flash memory, a buffer memory and a memory controller. The buffer memory is configured to temporarily store write data to be written in the flash memory, the buffer memory including volatile RAM and non-volatile RAM. The memory controller is configured to select one of the volatile RAM and the non-volatile RAM to temporally store the write data based on a write pattern of the write data, and to transmit a host command complete signal to a host when the write data is stored in the non-volatile RAM.

Claims (34)

1. A storage device comprising:

a flash memory;

a buffer memory configured to temporarily store write data to be written in the flash memory, the buffer memory comprising volatile RAM and non-volatile RAM; and

a memory controller configured to select one of the volatile RAM and the non-volatile RAM to temporally store the write data based on a write pattern of the write data, and to transmit a host command complete signal to a host when the write data is stored in the non-volatile RAM,

wherein the memory controller is configured to store a random pattern write data in the non-volatile RAM temporarily and to store a sequential pattern write data in the volatile RAM temporarily.

2. The storage device of claim 1 , wherein the memory controller is further configured to store the write data in the volatile RAM regardless of the write pattern of the write data when the write data corresponds to meta data.

3. The storage device of claim 1 , wherein the memory controller is further configured to determine that the write pattern of the write data is the random pattern when the number of continuous sectors of the write data is less than a reference value, and to determine that the write pattern of the write data is the sequential pattern when the number of continuous sectors of the write data is greater than or equal to the reference value.

4. The storage device of claim 1 , wherein the memory controller is further configured to transmit the random pattern write data from the non-volatile RAM to the volatile RAM before storing the random pattern write data in the flash memory.

5. The storage device of claim 1 , wherein the memory controller is further configured to program the sequential pattern write data in the flash memory after storing the sequential pattern write data in the volatile RAM temporarily.

6. The storage device of claim 5 , wherein the memory controller is further configured to transmit the host command complete signal to the host after storing the sequential pattern write data in the flash memory.

7. The storage device of claim 1 , wherein the memory controller is further configured to flush data stored in the non-volatile RAM into the flash memory when data stored in the non-volatile RAM exceeds a reference capacity.

8. The storage device of claim 1 , wherein the memory controller is further configured to generate the host command complete signal after storing the random pattern write data in the non-volatile RAM is completed, and before the random pattern write data is stored in the flash memory.

9. The storage device of claim 1 , wherein the storage device does not include an auxiliary power source.

10. A method of storing write requested data in a storage device including a flash memory as storage medium, the method comprising:

determining a write pattern of the write requested data;

selecting one of a volatile RAM and non-volatile RAM based on the determined write pattern;

when the non-volatile RAM is selected, storing the write requested data in the non-volatile RAM, and transmitting a host command complete signal to a host after storing the write data in the non-volatile RAM and before transmitting the write data to the flash memory; and

when the volatile RAM is selected, storing the write requested data in the volatile RAM, and transmitting the host command complete signal to the host after transmitting the write data to the flash memory,

wherein the non-volatile RAM is selected when the write pattern of the write requested data determined to be a random pattern, and the volatile RAM is selected when the write pattern of the write requested data is determined to be a sequential pattern.

11. The method of claim 10 , wherein determining the write pattern of the write requested data comprises:

determining the write requested data to be the random pattern write data when the number of continuous sectors in the write requested data is less than a reference value, and

determining the write requested data to be the sequential pattern write data when the number of continuous sectors in the write requested data is greater than the reference value.

12. The method of claim 10 , further comprising:

transmitting the write requested data stored in the non-volatile RAM to the volatile RAM before transmitting the write requested data to the flash memory.

13. The method of claim 12 , further comprising:

flushing data in the non-volatile RAM into the flash memory when excessive data is stored in the non-volatile RAM compared with a reference capacity.

14. A storage device comprising:

a buffer memory configured to temporarily store write data from a host to be written in a flash memory, the buffer memory comprising volatile RAM and non-volatile RAM; and

a processor configured to determine a write pattern of the write data, and to temporarily store the write data in the volatile RAM when the write pattern is determined to be a sequential pattern and to temporarily store the write data in the non-volatile RAM when the write pattern is determined to be a random pattern,

wherein the buffer memory transmits a host command complete signal to the host when the write data is stored in the non-volatile RAM before transmitting the write data to the flash memory.

15. The storage device of claim 14 , wherein the volatile RAM comprises dynamic random access memory (DRAM).

16. The storage device of claim 14 , further comprising:

a host interface configured to interface with the host; and

a flash memory controller configured to program the write data to the flash memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2012
From: CHEON, WONMOON
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 027758/0088 →
Priority Claims (1)
KR 10-2011-0026054 · Mar 23, 2011 · national
Continuity (1)
Related Publication 20120246392A1 · Sep 27, 2012