US20080235433A1 - Hybrid density memory storage device and control method thereof - Google Patents

Hybrid density memory storage device and control method thereof Download PDF

Info

Publication number
US20080235433A1
US20080235433A1 US12050614 US5061408A US2008235433A1 US 20080235433 A1 US20080235433 A1 US 20080235433A1 US 12050614 US12050614 US 12050614 US 5061408 A US5061408 A US 5061408A US 2008235433 A1 US2008235433 A1 US 2008235433A1
Authority
US
Grant status
Application
Patent type
Prior art keywords
command
memory storage
list
density memory
logical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12050614
Inventor
Ming-Dar Chen
Chuan-Sheng Lin
Hui-Neng Chang
Hsiang-An Hsieh
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ADATA Technology Co Ltd
Original Assignee
ADATA Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life time enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Abstract

The present invention discloses a control method for a hybrid density memory storage device. The method arranges physical locations for a file system stored in the storage device. The storage device includes a high density storage space, a low density storage space and a hot list capable of recording a plurality of logical locations. The method includes the following steps: receiving a command; verifying whether the logical location of the command belongs to the logical locations recorded in the hot list; and according to the verification, assigning a physical location of the high density storage space or a physical location of the low density storage space as the physical location corresponding to the logical location of the command.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to a storage device; in particular, to a hybrid density memory storage device and control method thereof.
  • 2. Description of Related Art
  • Non-volatile memory (also known as Electrically Independent memory) is used to store data, commonly applied to storage devices such as memory card, thumb drive with USB interface, solid state drive etc. Flash memory provides advantages of high storage density, low power consumption, effective access efficiency and reasonable price, thus becoming the main stream of the current non-volatile memory nowadays.
  • The memory records the stored bit values by voltage values conserved in memory units. In traditional memory storage technology, a bit data as one (1) or zero (0) is record by means of high level or zero level of the voltage value conserved in one memory unit. The current technologies may further divide the level values conserved within a memory unit, so that more different voltage values can be stored in one memory unit, thus for storing more bit values. For example, if a memory unit can retain four different level values, it is possible to store two-bit data. The industry refers the traditional memory manufacture technology for storing one single bit data as the Single-Level-Cell (SLC) process, and memory fabricated thereby as low density memory; memory manufacture technology for storing multi-bit data as the Multi-Level-Cell (MLC) process;, and memory fabricated thereby as high density memory.
  • Compared with low density memory, the data storage capacity provided within a unit area of high density memory multiplicatively increases, offering desirable advantages in terms of significant increase in storage capacity and lowered cost, but it requires longer time for read/write, edit and erase actions. Besides, MLC process also results in significant reduction in endurance count, conjunctively affecting storage features like data access rate and lifespan in high density memory storage.
  • The features of high density memory lie in high storage capacity and low cost, but with slower data access rate and less endurance count; contrarily, the advantages of low density memory exist in high erase endurance and faster access rate, whereas with high cost and low storage capacity. Since each type of memory respectively demonstrates features thereof, the industry therefore has developed the application of hybrid density memory. The so-called hybrid density memory comprises both high density memory and low density memory as the same time. As for exploiting advantages provided by both types of memory to enhance storage performance, it has now become one major research subject aggressively devoted by relevant industry.
  • Furthermore, since the address method of earlier hard drives needs to combine the relative locations of various structures such as track, head and section to decide the physical location for actual data storage, as a result, computer system has to perform setting operations during the boot of Basic Input/Output System (BIOS) to allow accurate data access in computer operation processes. The main stream storage media of current hard drives has now gradually evolved to flash memory, and therefore, based on the concept of logical block address (LBA), the computer system prescribes the correspondence between logical block addresses and flash memory storage blocks, and builds a transition table within the firmware of hard drives according to such a correspondence. During data access process, a host computer transits first the logical address of a file to the logical block address, and issues a command only to the hard drive in data access process, which marks the logical locations of logical address to be accessed and logical block address etc. in the assignment field of the command. After decoding the command by the hard drive controller, the Flash Transition Layer (FTL) transits the logical location of the file into the physical location in the memory according to the transition table previously built in the firmware.
  • The optimization method of storage performance used in prior art is shown in FIG. 1, which illustrates a system architecture diagram of a computer system. The system depicted therein is used to optimize action parameters of hard drive. As shown in FIG. 1, the computer system 8 consists of a motherboard 81, a hard drive 83 and a data retrieving device 87, in which the motherboard 81 is coupled to the hard drive 83 through a bus 85, and the motherboard 81 is installed with components such as central processing unit and memory, for supporting the various operations of the computer system 8. Such a technology provides the computer system 8 with a benchmark software to control the data retrieving device 87 in order to record I/O command sequence information between the motherboard 81 and hard drive 83, and through user-aided settings and operations, analyze the recorded information with the benchmark software so as to further optimize the action parameters for the hard drive 83 according to the analysis result.
  • However, several defects do exist in the above-mentioned technology: first of all, it is required to install extra benchmark software in the computer system to retrieve the I/O command sequence; next, human participation is needed during the processes of data retrieval, analysis and parameter optimization etc.; also, such a technology is directed to application scope of earlier hard drives, not suitable for storage devices whose storage media is the type of non-volatile memory.
  • In view that the existing technologies are not suitable for the hard drive adopting flash memory as principal storage media thereof, the inventors hence propose the present invention with an expectation to improve the defects of existing solutions.
  • SUMMARY OF THE INVENTION
  • The object of the present invention is to provide a hybrid density memory storage device and control method thereof, which categorizes the frequently used file data or user-appointed file data as hot data, and uses a hot list to record the logical locations of the hot data, thus when the host computer issues a command, the storage device verifies whether the logical location of the command belongs to one of the logical locations recorded in the hot list, so as to assign the physical location corresponding to the logical location, which enhances the data storage performance of the hybrid density memory device and prevents storage resources from being wasted.
  • The present invention discloses a control method for a hybrid density memory storage device, suitable for assigning a physical location of the hybrid density memory storage device corresponding to a file system. Such a storage device is used to store file data, and provided with a high density memory storage space, a low density memory storage space and a hot list, in which the hot list is used to record a plurality of logical locations of the file system. Said method includes the following steps: receiving a command, and identifying the logical location of the command; subsequently, verifying whether the logical location of the command belongs to one of the logical locations recorded in the hot list; finally, according to the verification, assigning a physical location of the high density storage space or the low density storage space as the physical location corresponding to the logical location of the command.
  • Said logical location is a logical address (LA) and/or a logical block address (LBA).
  • The present invention also discloses another control method for hybrid density memory storage device, suitable for assigning the physical location of a hybrid density memory storage device according to a file system. The storage device has a high density memory storage space and a low density memory storage space. Said control method includes the following steps: first, receiving a command; next, executing a process of hot data verification to verify whether the logical location of the command belongs to a hot data; finally, according to the verification, assigning a physical location of the high density storage space or the low density storage space as the physical location corresponding to the logical location of the command.
  • The present invention further discloses a hybrid density memory storage device, suitable for receiving a command provided by a host computer to access a file data. Said hybrid density memory storage device comprises a non-volatile memory unit and a control unit. The non-volatile memory unit includes a high density memory storage space and a low density memory storage space. The control unit has a hot list for recording a plurality of logical locations belonging to hot data, such that the control unit can assign, through the hot list, a physical location of the high density storage space or the low density storage space as the physical location for accessing the file data.
  • The above-mentioned summary as well as subsequent descriptions and appended drawings are all for further illustrating the measures, means and effects taken by the present invention to achieve the prescribed objectives. Other goals and advantages of the present invention will be explained in details in the following descriptions and drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a system architecture diagram of a computer system in the prior art;
  • FIG. 2 is a system architecture diagram of an embodiment of the hybrid density memory storage device according to the present invention;
  • FIG. 3 is a system architecture diagram of an embodiment of the hot data verifying unit according to the present invention;
  • FIGS. 4A and 4B are diagrams of an embodiment of hot data identification according to the present invention;
  • FIG. 5 is a step-wise flowchart of the control method for the hybrid density memory storage device according to the present invention;
  • FIG. 6 is a step-wise flowchart of an embodiment of the control method for the hybrid density memory storage device according to the present invention;
  • FIG. 7 is a step-wise flowchart of an embodiment of the control method for the hybrid density memory storage device according to the present invention; and
  • FIG. 8 is a step-wise flowchart of the data update transition process according to the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The hybrid density memory storage device and control method thereof of the present invention is to categorize the frequently used files or user-appointed files of the file system as hot data, uses a hot list to record the logical locations of the hot data, and then assigns the physical locations to which the logical locations of the hot data correspond to the low density memory storage space, thus meeting the requirement of the hot data for faster access rate and higher endurance count, in order to achieve the effect enhancement for storage performance.
  • Initially, referring now to FIG. 2, a system architecture diagram of an embodiment of the hybrid density memory storage device according to the present invention is shown. As illustrated in FIG. 2, a hybrid density memory storage device 10 (hereunder referred as a storage device) is applied in a digital system 1 to cooperate with data storage jobs and participate in data read/write operations. In the digital system 1, the storage device 10 is coupled to a host computer 17 to receive the command provided from the host computer 17. In practice, the host computer 17 may be a computer system, and the storage device 10 executes the hard drive feature of the computer system.
  • The storage device 10 consists of a non-volatile memory unit 11, a control unit 13 and a power source management unit 15. The non-volatile memory unit 11 is formed by flash memory, comprising a low density memory storage space 110 and a high density memory storage space 112. The low density memory storage space 110 is formed by low density memory, and the high density memory storage space 112 is formed by high density memory. The aspects of low density memory are low storage capacity per unit, high endurance count and fast data access rate, whereas the aspects of high density memory lie in high storage capacity, less endurance count and low data access rate.
  • The power source management unit 15, coupled to a power source 19, receives the output power thereof and transforms the received power into the power source required by the control unit 13 and the non-volatile memory unit 11 inside the storage device 10.
  • The storage device 10 stores a file system, and the host computer 17 manages the file data in the file system based on a system architecture regulated under FAT12, FAT16, FAT32 or NTFS files systems. Based on a prescribed transition table located in the firmware, the storage device 10, by using the Flash Transition Layer (FTL), maps the logical location of the file to the physical location of the non-volatile memory unit 11.
  • The control unit 13 is coupled between the host computer 17 and the non-volatile memory unit 11, which has a hot list for recording a plurality of logical locations. The present invention categorizes the frequently used files or user-appointed files of the file system as hot data, and since the hot data is frequently accessed and updated, the physical locations of the hot data are assigned to the low density memory storage space 110. Said hot list is used to record the logical locations of the hot data, so as to define the frequently used logical area in the file system. Hereunder the logical locations recorded in the hot list are referred as specific logical locations to be differentiated from general logical locations. Said logical locations are logical addresses (LA) and/or logical block addresses (LBA).
  • The control unit 13 can assign, through the hot list, the physical location of the low density memory storage space 110 or the physical location of the high density memory storage space 112 as the physical location of the file data. In practice, the control unit 13 receives a command provided from the host computer 17, in which the command may be a write command or a read command. The write command is to write a data of a logical location into the non-volatile memory unit 11, and the read command is to read a data of a logical location from the non-volatile memory unit 11, and the logical locations of logical address, length of address space and logical block address are marked in the assignment field of the command by the host computer 17. The control unit 13 decodes the received command, identifies the logical location of the command, verifies whether the logical location of the command belongs to one of the specific logical locations recorded in the hot list, and further, based on the verification, assigns the physical location of the high density memory storage space 112 or the physical location of the low density memory storage space 110 as the physical location corresponding to the identified logical location, then therein stores the data. That is, if the logical location of the command belongs to one of the specific logical locations recorded in the hot list, then the control unit 13 assigns the physical location of the low density memory storage space 110 as the physical location corresponding to the logical location, such that the physical location of the data has the features of higher data access rate and endurance count; otherwise, in case that the logical location of the command does not belong to any of the specific logical locations recorded in the hot list, then the control unit 13 assigns the physical location of the high density memory storage space 112 as the physical location corresponding to the logical location.
  • In one embodiment, said hot list comprises a start hot list, a read hot list and a write hot list, respectively recording the logical locations frequently accessed by the digital system 1 during the three operation modes of start, read and write.
  • The start hot list records the logical locations frequently read or written by the host computer 17 in a start cycle (i.e. a specific period of time when the system executes boot process; for example, 30 seconds). When the system starts, it generally repeats the same access mode, e.g. processes like loading operating system etc., therefore, the start speed may be accelerated if the physical location of the file frequently access during the start cycle is assigned to the low density memory storage space 110. The read hot list records the logical locations frequently read, and the write hot list records the logical locations frequently written by the host computer 17. The control unit 13 verifies the logical location of the command by using different hot lists, based on the differences among operation modes.
  • In FIG. 2, the control unit 13 comprises a system interface 131, a microprocessor 132, a hot data verifying unit 133, a data transfer butter 134 and a memory interface 135. The system interface 131 is coupled to the host computer 17, receiving the command from the host computer 17 and transferring the data corresponding to the command. The microprocessor is coupled to the system interface 131 for receiving, processing and responding to the command, so as to control the operations of the storage device 10 and the control unit 13. The hot list is registered in the hot data verifying unit 133, in which the hot data verifying unit 133 is coupled to the system interface 131, identifying the logical location of the command, verifying whether the logical location of the command belongs to one of the specific logical locations recorded in the hot list, and further outputting a verification to the microprocessor 132. The data transfer butter 134 is coupled to the system interface 131 for registering the data transferred to the storage device 10 by the host computer 17, or registering the data to be read from the storage device 10 by the host computer 17. The memory interface 135 is coupled between the data transfer butter 134 and the non-volatile memory unit 11 as a data transfer interface between the control unit 13 and the non-volatile memory unit 11.
  • Subsequently, referring now to FIG. 3, a system architecture diagram of an embodiment of the hot data verifying unit according to the present invention is shown. As illustrated in FIG. 3, the hot data verifying unit 133 comprises a list registry 200, an input/output monitoring unit 202, a hot list verifying unit 204, a hot list updating unit 206, a hot list backup unit 208 and an interface control unit 210.
  • The hot list is stored in the non-volatile memory unit 11. When the digital system 1 is started, the hot list is duplicated into the list registry 200 for temporary storage. The interface control unit 210 acts as a connection interface for coupling between the hot data verifying unit 133 and the external system interface 131, microprocessor 132 and non-volatile memory unit 11. The input/output monitoring unit 202, hot list verifying unit 204, hot list updating unit 206 and hot list backup unit 208 are coupled between the list registry 200 and the interface control unit 210, able to access the hot list registered in the list registry 200, and coupled to the external system interface 131, microprocessor 132 and non-volatile memory unit 11 via the interface control unit 210.
  • The input/output monitoring unit 202 is coupled to the system interface 131 through the interface control unit 210, for identifying the logical location of the command provided by the host computer 17. The hot list verifying unit 204 is coupled to the input/output monitoring unit 202, which receives the identified logical location, and, according to the hot list, verifies whether the logical location of the command belongs to one of the specific logical locations recorded in the hot list, then outputs a verification result. The microprocessor 132 receives the verification, and assigns the low density memory storage space 110 or the high density memory storage space 112 as the physical location corresponding to the command. The hot list updating unit 206 is controlled by the microprocessor 132, and updates the hot list registered in the list registry 200 based on the verification of the hot list verifying unit 204. The hot list backup unit 208 is controlled by the microprocessor 132, forwarding the hot list registered in the list registry 200 to the non-volatile memory unit 11 for backup storage, so as to load and forward the hot list from the non-volatile memory unit 11 to the list registry 200 for registering in the next start.
  • In an embodiment, the storage device 10 further comprises a candidate list. In case that the logical location of the command provided by the host computer 17 does not belong to any of the specific logical locations recorded in the hot list, the identified logical location will be recorded in this candidate list. Referring now to FIGS. 4A and 4B, these diagrams illustrate an embodiment of hot data identification according to the present invention, in which a concise example of the hot list data identification is shown.
  • In FIG. 4A, the parameters recorded in the candidate list 302 and the hot list 304 consist of logical address LA, length of address space L and cycle AGE. Herein the logical address LA represents the start address of the data; length L means the length of the address space, i.e. the amount of hot data; cycle AGE indicates the period that a recorded data is not hit (repeatedly accessed) by the command, wherein the cycle AGE may be an actual time or numbered in terms of command input/output counts, or else implemented by other computational approaches, acting as a foundation for data replacement in the hot list, in order to discard logical locations having not been hit by the access command for a long time.
  • In FIG. 4A, the candidate list 302 and the hot list 304 each has a space for recording 5 data entries, the command 300 uses the logical address LA as its logical location, and the cycle AGE assigns the number of command no-hits. Assume, after start of the system, the candidate list 302 and the hot list 304 are both empty, and six logical addresses that the command accesses are sequentially 0x0000, 0x0010, 0x0123, 0x0200, 0x0210 and 0x0123. The first five data entries are sequentially filled in the candidate list 302, while the logical address of the sixth command is 0x0123, which repeats the third record retained in the candidate list 302, whose cycle update is 1, and other records continue to accumulate. The repeated third record in the candidate list 302 will then be transited to the hot list 304.
  • In practice, since the length of address space usually varies, in another embodiment, the length of address space may be discarded from the parameter set of the candidate list and hot list may set, but logical block address and cycle AGE may be alternatively used. Refer now to FIG. 4B, this Figure depicts the same access operation as the one in FIG. 4A. Since it is based on the logical block address LB, the probability of hit may be expanded. In FIG. 4B, the logical block addresses LB of the hot list 314 are two records, i.e. 0x000 and 0x0002, which repeat respectively at the second access and fifth access in the candidate list, enlisted thus in the hot list. The logical location of the sixth command 310 is also enlisted as the newest record in the hot list 314.
  • According to the aforementioned examples, it can be appreciated that the logical location recorded in the candidate list and the hot list of the present invention may be a logical address or a logical block address. In practice, it is necessary to take hardware resources of flash memory controller, logical/physical transition algorithm and file system into integral consideration to decide the adequate approach.
  • Next, referring to FIG. 5, a step-wise flowchart of the control method for the hybrid density memory storage device according to the present invention is shown. The relevant system architecture thereof may be conjunctively referred to FIG. 2. As illustrated in FIG. 5, said control method comprises the following steps:
  • First, receiving a command, and decoding the command to identify its logical location (step S102);
  • Subsequently, verifying whether the logical location of the command belongs to one of the specific logical locations recorded in the hot list (step S104); and
  • Finally, based on the verification, assigning a physical location of the high density storage space 112 or a physical location of the low density storage space 110 as the physical location corresponding to the logical location of the command (step S106).
  • Referring now to FIG. 6, a step-wise flowchart of an embodiment of the control method for the hybrid density memory storage device according to the present invention is shown, which illustrates the operational steps of, under write mode, the host computer 17 writing a data into the non-volatile memory unit 11. As set out in FIG. 6, the write mode of the control method comprises the following steps:
  • First, the control unit 13 receives a write command provided by the host computer 17, and identifies the logical location of the write command (step S202);
  • Next, the hot data verifying unit 133 verifies whether the logical location of the write command belongs to one of the specific logical locations recorded in the hot list, so as to determine whether the data to be written by the host computer 17 is a hot data (step S204);
  • If the logical location of the write command belongs to one of the specific logical locations, then assign a physical location of the low density storage space 110 as the physical location corresponding to the logical location of the command (step S206);
  • If the logical location of the write command does not belong to one of the specific logical locations, then assign a physical location of the high density storage space 112 as the physical location corresponding to the logical location of the command (step S208); and
  • Finally, transfer the data to the assigned memory storage space (110 or 112) for storage (step S210).
  • Referring now to FIG. 7, a step-wise flowchart of an embodiment of the control method for the hybrid density memory storage device according to the present invention is shown, which embodiment comprises three operation modes for the digital system 1, i.e. start, read and write. The relevant system architecture thereof may be conjunctively referred to FIGS. 2 and 3.
  • After the initiation of the digital system 1 (step S300), it enters into start mode, determining whether a hot list is stored in the non-volatile memory unit 11 (step S302). If the determination in step S302 is negative, then it waits for the host computer 17 to input a command (step S304); however, if the determination in step S302 is yes, then it loads the found hot list in the list registry 200 of the hot data verifying unit 133 (step S306), and then executes the step S304. After the step S304, it determines whether the command provided from the host computer 17 is received (step S308). If the determination in step S308 is not received, then it returns to step S304; if the determination in step S308 is yes, then it further determines whether the start cycle has been reached (step S310). If the determination in step S310 is no, then it determines whether the logical location of the command is not enlisted in the start hot list (step S312); in case the determination in step S312 is no, then it returns to step S304; otherwise, if the determination in step S312 is yes, then it updates the start hot list (step S314). After this, it returns to step S304.
  • In case the determination in step S310 is yes, which means the start cycle is full, then at this moment it enters into read mode and write mode from start mode, and, in the present embodiment, it first determines whether the command provided by the host computer 17 is a read command (step S316). If the determination in step S316 is yes, it enters into read mode, identifying and verifying whether the logical location of the read command belongs to one of the specific logical locations in the hot list, in order to decide whether the data corresponding to the command is a hot data (step S318). If the determination in step S318 is no, then it returns to step S304; if the determination in step S318 is yes, then it determines whether the logical location of the command is not enlisted in the read hot list (step S320). If the determination in step S320 is no, then it returns to step S304; if the determination in step S320 is yes, then it updates the read hot list (step S322). Afterwards, it determines whether the hot list backup is needed (step S332); if the determination in the step S332 is yes, then hot list registered in the hot data verifying unit 133 will be backed up to the non-volatile memory unit 11 (step S334); if the determination in the step S332 is no, then it returns to step S304.
  • In case the determination in the step S316 is no, then it determines whether the command provided by the host computer 17 is a write command (step S324); if the determination in the step S324 is no, then it returns to step S304; if the determination in the step S324 is yes, then it identifies whether the logical location of the command belongs to one of the specific logical locations recorded in the hot list, so as to decide whether the data corresponding to the command is a hot data (step S326). In case the determination in step S326 is no, then it returns to step S304; if the determination in step S326 is yes, then it determines whether the logical location of the command is not enlisted in the write hot list (step S328). If the determination in step S328 is no, then it returns to step S304; if the determination in step S328 is yes, then it updates the write hot list (step S330). Afterwards, it enters in step S332 to determine whether the hot list backup and subsequent steps are needed to perform.
  • In an embodiment, the storage device 10 further consists of a candidate list, and in steps S318 and S326, if the logical location of the command does not belong to any of the specific logical locations, then the identified logical location will be recorded in the candidate list. In steps S318 and S326 it further determines whether the logical location of the command belongs to one of the logical locations recorded in the candidate list; if the determination is yes, then the identified logical location will be transited from the candidate list to the hot list, so as to update the hot list.
  • Furthermore, after the update of the hot list, the storage device 10 needs to execute a data update transition process, such that the correspondence between the logical location and physical location in the file system is consistent with the contents of the hot list. Referring now to FIG. 8, a step-wise flowchart of the data update transition process according to the present invention is shown, wherein the relevant system architecture thereof may be referred to FIG. 2.
  • As illustrated in FIG. 8, after the start of the data update transition process (step S400), it first determines whether there exists any newly added logical location data in the hot list (step S402); if the determination in step S402 is no, then the data update transition process ends (S408); if the determination in step S402 is yes, then it reads the high density memory storage space 112 to acquire the data for the newly added logical location (S404). After this, it transits the data acquired from the high density memory storage space 112 to the low density memory storage space 110 for storage (step S406). Finally, it enters into step S408, where the data update transition process ends.
  • The above-mentioned embodiments all determine whether the logical location of a command belongs to a hot data by means of verification. Whereas in another embodiment, said control method, after reception of the command from the host computer 17 and the identification of the logical location of the received command, executes a hot data determination process to determine whether the logical location of the command belongs to one of the logical locations stored in the hot data by means of applying operational methods such as hash function, hash table and decay period on the logical location of the command. Afterwards, based on the determination, it assigns a physical location of the low density memory storage space 110 or a physical location of the high density memory storage space 112 as the physical location corresponding to the logical location of the command. That is, if the logical location of the command belongs to the hot data, then it assigns a physical location of the low density memory storage space 110 as the physical location corresponding to this logical location; in case, however, this logical location does not belong to the hot data, then it assigns a physical location of the high density memory storage space 112 as the physical location corresponding to this logical location.
  • The aforementioned hot data determination process is an existing technology, which is illustrated in the dissertation of Mr. Hsieh Ren-Wei, research graduate in the College of Information Science of National Taiwan University, titled “The Reliability and Performance Enhancement of Flash Memory Management” published in June 2006, and herein further detailed description thereof is omitted.
  • Through the examples set out supra, it can be appreciated that the hybrid density memory storage device and control method thereof according to the present invention is to categorize the frequently used files or user-appointed files as hot data, and through verifying whether the logical location of the command provided by the host computer belongs to logical locations stored in the hot data, it assigns the physical location corresponding to the logical location to either the high density memory storage space or to the low density memory storage space. In this way, it is possible to not only improve the defects of assigning file header area and data area of the same file to different memories in the prior art, causing early failure problem in the storage devices and inefficient usage of storage resources, but cooperate with the operation modes in the storage devices to further enhance the data access performance of the hybrid density memory storage devices.
  • The above-mentioned illustrations present simply the detailed descriptions and drawings of the embodiments of the present invention, without any intention to restrict the scope of the present invention thereto. The entire scope of the present invention should be based on the subsequent claims; all changes, substitutions or modifications that persons skilled in the art can easily consider and fabricate are encompassed in the scope of the present invention delineated by the following claims.

Claims (20)

  1. 1. A control method for a hybrid density memory storage device, suitable for assigning a physical location of the hybrid density memory storage device corresponding to a file system, wherein the hybrid density memory storage device is used to store file data provided by a host computer, and has a high density memory storage space, a low density memory storage space and a hot list, in which the hot list is used to record a plurality of logical locations of the file system, said method including the following steps:
    receiving a command;
    verifying whether the logical location of the command belongs to one of the logical locations recorded in the hot list; and
    assigning, according to the verification, a physical location of the high density storage space or the low density storage space as the physical location corresponding to the logical location of the command.
  2. 2. The control method according to claim 1, further comprising the step of identifying the logical location of the command after the step of receiving a command.
  3. 3. The control method according to claim 1, wherein it assigns a physical location of the low density memory storage space to the logical location of the command, if the logical location of the command belongs to one of the logical locations recorded in the hot list.
  4. 4. The control method according to claim 1, wherein the hybrid density memory storage device further comprises a candidate list, and if the logical location of the command does not belong to one of the logical locations recorded in the hot list, it records the logical location of the command in the candidate list.
  5. 5. The control method according to claim 4, wherein the step of verifying whether the logical location of the command belongs to one of the logical locations recorded in the hot list further comprises the step of verifying whether the logical location of the command is recorded in the candidate list.
  6. 6. The control method according to claim 5, wherein, if the logical location of the command is recorded in the candidate list, then it transits the logical location of the command from the candidate list to the hot list in order to update the hot list.
  7. 7. The control method according to claim 5, wherein, after the update of the hot list, the control method further comprises executing a data update transition process, the data update transition process comprising the following steps:
    reading the high density memory storage space to acquire the data for the newly added logical location in the hot list; and
    transiting the data acquired from the high density memory storage space to the low density memory storage space for storage.
  8. 8. The control method according to claim 1, wherein, under a start mode of the hybrid density memory storage device, if the logical location of the command does not belong to one of the logical locations recorded in the hot list, then the control method further comprises updating the hot list according to the logical location of the command.
  9. 9. The control method according to claim 8, wherein, after the update of the hot list, the control method further comprises executing a data update transition process, in which the data update transition process comprises the following steps:
    reading the high density memory storage space to acquire the data for the newly added logical location in the hot list; and
    transiting the data acquired from the high density memory storage space to the low density memory storage space for storage.
  10. 10. The control method according to claim 1, wherein the hot list comprises a read hot list, a write hot list and a start hot list.
  11. 11. A control method for hybrid density memory storage device, suitable for assigning the physical location of a hybrid density memory storage device corresponding to a file system, the hybrid density memory storage device having a high density memory storage space and a low density memory storage space, said control method including the following steps:
    receiving a command;
    executing a process of hot data verification to verify whether the logical location of the command belongs to hot data; and
    assigning, according to the verification, a physical location of the high density storage space or the low density storage space as the physical location corresponding to the logical location of the command.
  12. 12. The control method according to claim 11, further comprising the step of identifying the logical location of the command after the step of receiving a command.
  13. 13. The control method according to claim 11, wherein, it assigns a physical location of the low density memory storage space to the logical location of the command, if the logical location of the command belongs to the hot data.
  14. 14. The control method according to claim 11, wherein the hot data verification process is to apply a hash operation to the logical location of the command.
  15. 15. A hybrid density memory storage device, suitable for receiving a command provided by a host computer to access a file data, said hybrid density memory storage device comprising:
    a non-volatile memory unit, which comprises a high density memory storage space and a low density memory storage space; and
    a control unit, which has a hot list for recording a plurality of logical locations belonging to hot data, such that the control unit can assign, through the hot list, a physical location of the high density storage space or the low density storage space as the physical location for accessing the file data.
  16. 16. The hybrid density memory storage device according to claim 15, wherein the hot list comprises a read hot list, a write hot list and a start hot list.
  17. 17. The hybrid density memory storage device according to claim 15, wherein the control unit further comprises:
    a system interface, which receives the command provided by the host computer and transfers the data corresponding to the command;
    a microprocessor, which is coupled to the system interface for receiving, processing and responding to the command, so as to control the operations of the hybrid density memory storage device and the control unit; and
    a hot data verifying unit, which is coupled to the system interface, so as to identify the logical location of the command, verifying whether the logical location of the command belongs to one of the logical locations recorded in the hot list, and further outputting a verification to the microprocessor;
    in which the microprocessor assigns a physical location in the high density memory storage space or a physical location in the low density memory storage space to the logical location of the command, according to the verification.
  18. 18. The hybrid density memory storage device according to claim 17, wherein the hot data verification unit further comprises:
    a list registry, which registers the hot list;
    an input/output monitoring unit, which is coupled to the system interface, identifying the logical location of the command; and
    a hot list verifying unit, which is coupled to the list registry and the input/output monitoring unit, receiving the logical location of the command identified by the input/output monitoring unit, and verifying whether the logical location belongs to one of the logical locations recorded in the hot list to output the verification.
  19. 19. The hybrid density memory storage device according to claim 18, wherein the hot list verifying unit further comprises a hot list updating unit, which is coupled to the list registry and the hot list verifying unit, and updates the hot list registered in the list registry according to the verification.
  20. 20. The hybrid density memory storage device according to claim 18, wherein the hot list verifying unit further comprises a list backup unit, which is coupled to the list registry, is controlled by the microprocessor and transits the hot list registered in the list registry to the non-volatile memory unit for storage.
US12050614 2007-03-19 2008-03-18 Hybrid density memory storage device and control method thereof Abandoned US20080235433A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US90708807 true 2007-03-19 2007-03-19
US12050614 US20080235433A1 (en) 2007-03-19 2008-03-18 Hybrid density memory storage device and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12050614 US20080235433A1 (en) 2007-03-19 2008-03-18 Hybrid density memory storage device and control method thereof

Publications (1)

Publication Number Publication Date
US20080235433A1 true true US20080235433A1 (en) 2008-09-25

Family

ID=39775861

Family Applications (4)

Application Number Title Priority Date Filing Date
US12050593 Active 2030-11-18 US8307163B2 (en) 2007-03-19 2008-03-18 Hybrid density memory storage device
US12050614 Abandoned US20080235433A1 (en) 2007-03-19 2008-03-18 Hybrid density memory storage device and control method thereof
US12050567 Active 2030-04-12 US8015346B2 (en) 2007-03-19 2008-03-18 Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof
US13159784 Active US8291156B2 (en) 2007-03-19 2011-06-14 Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US12050593 Active 2030-11-18 US8307163B2 (en) 2007-03-19 2008-03-18 Hybrid density memory storage device

Family Applications After (2)

Application Number Title Priority Date Filing Date
US12050567 Active 2030-04-12 US8015346B2 (en) 2007-03-19 2008-03-18 Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof
US13159784 Active US8291156B2 (en) 2007-03-19 2011-06-14 Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof

Country Status (2)

Country Link
US (4) US8307163B2 (en)
CN (3) CN101271730B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120137107A1 (en) * 2010-11-26 2012-05-31 Hung-Ming Lee Method of decaying hot data
US20160062682A1 (en) * 2012-02-24 2016-03-03 Simplivity Corporation Method and apparatus utilizing non-uniform hash functions for placing records in non-uniform access memory
US9390004B2 (en) 2008-05-28 2016-07-12 Round Rock Research, Llc Hybrid memory management
US10083095B1 (en) * 2014-09-25 2018-09-25 EMC IP Holding Company LLC Analytics-based backup system for determining optimum backup methods and predicting backup windows

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9153337B2 (en) * 2006-12-11 2015-10-06 Marvell World Trade Ltd. Fatigue management system and method for hybrid nonvolatile solid state memory system
US8375190B2 (en) * 2007-12-11 2013-02-12 Microsoft Corporation Dynamtic storage hierarachy management
US8200904B2 (en) * 2007-12-12 2012-06-12 Sandisk Il Ltd. System and method for clearing data from a cache
US8892860B2 (en) * 2008-10-03 2014-11-18 Hewlett-Packard Development Company, L.P. Clearing secure system resources in a computing device
US20100169540A1 (en) * 2008-12-30 2010-07-01 Sinclair Alan W Method and apparatus for relocating selected data between flash partitions in a memory device
US8261009B2 (en) * 2008-12-30 2012-09-04 Sandisk Il Ltd. Method and apparatus for retroactive adaptation of data location
WO2010087858A1 (en) * 2009-01-31 2010-08-05 Hewlett-Packard Development Company, L.P. File-name extension characters for file distribution
CN101794253B (en) 2009-02-04 2012-08-22 威刚科技股份有限公司 Memory storage device, control method thereof and hot data control module
US8051241B2 (en) 2009-05-07 2011-11-01 Seagate Technology Llc Wear leveling technique for storage devices
US8380942B1 (en) * 2009-05-29 2013-02-19 Amazon Technologies, Inc. Managing data storage
US7948798B1 (en) * 2009-07-22 2011-05-24 Marvell International Ltd. Mixed multi-level cell and single level cell storage device
US8914568B2 (en) * 2009-12-23 2014-12-16 Intel Corporation Hybrid memory architectures
CN101794199A (en) * 2010-03-26 2010-08-04 山东高效能服务器和存储研究院 Method for accelerating performance of computer disk based on disk cache
US9104546B2 (en) * 2010-05-24 2015-08-11 Silicon Motion Inc. Method for performing block management using dynamic threshold, and associated memory device and controller thereof
US8966184B2 (en) 2011-01-31 2015-02-24 Intelligent Intellectual Property Holdings 2, LLC. Apparatus, system, and method for managing eviction of data
US9141528B2 (en) 2011-05-17 2015-09-22 Sandisk Technologies Inc. Tracking and handling of super-hot data in non-volatile memory systems
US9176864B2 (en) 2011-05-17 2015-11-03 SanDisk Technologies, Inc. Non-volatile memory and method having block management with hot/cold data sorting
US9792218B2 (en) * 2011-05-20 2017-10-17 Arris Enterprises Llc Data storage methods and apparatuses for reducing the number of writes to flash-based storage
US9524957B2 (en) * 2011-08-17 2016-12-20 Intersil Americas LLC Back-to-back stacked dies
US8713257B2 (en) * 2011-08-26 2014-04-29 Lsi Corporation Method and system for shared high speed cache in SAS switches
US9417803B2 (en) * 2011-09-20 2016-08-16 Apple Inc. Adaptive mapping of logical addresses to memory devices in solid state drives
CN102495806B (en) * 2011-11-25 2014-09-03 清华大学 Periodic wear balancing method and memory management method of phase change memory
US9240240B2 (en) * 2011-11-29 2016-01-19 Micron Technology, Inc. Apparatus having indications of memory cell density and methods of their determination and use
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
KR20130116705A (en) 2012-04-16 2013-10-24 삼성전자주식회사 Mram : magnetic random access memory device and method for addressing threrof
US9846641B2 (en) 2012-06-18 2017-12-19 International Business Machines Corporation Variability aware wear leveling
US8953398B2 (en) 2012-06-19 2015-02-10 Sandisk Technologies Inc. Block level grading for reliability and yield improvement
US9430322B2 (en) 2012-08-02 2016-08-30 Sandisk Technologies Llc Device based wear leveling using intrinsic endurance
CN103631737A (en) * 2012-08-27 2014-03-12 鸿富锦精密工业(深圳)有限公司 Memory data processing system and method
JP2014052785A (en) * 2012-09-06 2014-03-20 Toshiba Corp Memory system
CN103885901A (en) * 2012-12-21 2014-06-25 联想(北京)有限公司 File reading method, memory device and electronic device
CN102981972A (en) * 2012-12-25 2013-03-20 重庆大学 Wear-leveling method for phase change memory
CN103902226B (en) * 2012-12-27 2017-08-04 宏碁股份有限公司 Data writing method and system
US20140281129A1 (en) * 2013-03-15 2014-09-18 Tal Heller Data tag sharing from host to storage systems
WO2014209234A1 (en) * 2013-06-26 2014-12-31 Agency For Science, Technology And Research Method and apparatus for hot data region optimized dynamic management
KR20150018921A (en) 2013-08-09 2015-02-25 삼성전자주식회사 Method for estimating degradation state of memory device and wear leveling method in memory system using the same
US9519577B2 (en) 2013-09-03 2016-12-13 Sandisk Technologies Llc Method and system for migrating data between flash memory devices
US9442670B2 (en) 2013-09-03 2016-09-13 Sandisk Technologies Llc Method and system for rebalancing data stored in flash memory devices
US10019352B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for adaptive reserve storage
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US9645749B2 (en) * 2014-05-30 2017-05-09 Sandisk Technologies Llc Method and system for recharacterizing the storage density of a memory device or a portion thereof
US9697247B2 (en) * 2014-07-16 2017-07-04 Facebook, Inc. Tiered data storage architecture
WO2016032486A1 (en) * 2014-08-28 2016-03-03 Hewlett-Packard Development Company, L.P. Moving data chunks
US9519427B2 (en) 2014-09-02 2016-12-13 Sandisk Technologies Llc Triggering, at a host system, a process to reduce declared capacity of a storage device
US9582220B2 (en) 2014-09-02 2017-02-28 Sandisk Technologies Llc Notification of trigger condition to reduce declared capacity of a storage device in a multi-storage-device storage system
US9563370B2 (en) 2014-09-02 2017-02-07 Sandisk Technologies Llc Triggering a process to reduce declared capacity of a storage device
US9582193B2 (en) 2014-09-02 2017-02-28 Sandisk Technologies Llc Triggering a process to reduce declared capacity of a storage device in a multi-storage-device storage system
US9552166B2 (en) 2014-09-02 2017-01-24 Sandisk Technologies Llc. Process and apparatus to reduce declared capacity of a storage device by deleting data
US9665311B2 (en) 2014-09-02 2017-05-30 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by making specific logical addresses unavailable
US9652153B2 (en) 2014-09-02 2017-05-16 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by reducing a count of logical addresses
US9524112B2 (en) 2014-09-02 2016-12-20 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by trimming
US9158681B1 (en) 2014-09-02 2015-10-13 Sandisk Technologies Inc. Process and apparatus to reduce declared capacity of a storage device by conditionally trimming
US9582212B2 (en) 2014-09-02 2017-02-28 Sandisk Technologies Llc Notification of trigger condition to reduce declared capacity of a storage device
US9582202B2 (en) 2014-09-02 2017-02-28 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by moving data
US9563362B2 (en) 2014-09-02 2017-02-07 Sandisk Technologies Llc Host system and process to reduce declared capacity of a storage device by trimming
US9524105B2 (en) 2014-09-02 2016-12-20 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by altering an encoding format
US9582203B2 (en) 2014-09-02 2017-02-28 Sandisk Technologies Llc Process and apparatus to reduce declared capacity of a storage device by reducing a range of logical addresses
KR20160060956A (en) 2014-11-21 2016-05-31 삼성전자주식회사 Address-remapped memory chip, memory module and memory system including the same
KR20160112529A (en) 2015-03-19 2016-09-28 삼성전자주식회사 Method of operating a memory controller, a data storage device including same, and data processing system including same
US9639282B2 (en) 2015-05-20 2017-05-02 Sandisk Technologies Llc Variable bit encoding per NAND flash cell to improve device endurance and extend life of flash-based storage devices
US9606737B2 (en) 2015-05-20 2017-03-28 Sandisk Technologies Llc Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning
US10078448B2 (en) * 2015-07-08 2018-09-18 Samsung Electronics Co., Ltd. Electronic devices and memory management methods thereof
CN105183379B (en) * 2015-09-01 2018-10-23 上海新储集成电路有限公司 A data backup system and method for mixing memory
CN105302479A (en) * 2015-09-29 2016-02-03 联想(北京)有限公司 Data management method and storage device
CN105159843B (en) * 2015-10-19 2018-07-31 深圳芯邦科技股份有限公司 Species based multi-channel management method and system superblock
US9946483B2 (en) 2015-12-03 2018-04-17 Sandisk Technologies Llc Efficiently managing unmapped blocks to extend life of solid state drive with low over-provisioning
US9946473B2 (en) 2015-12-03 2018-04-17 Sandisk Technologies Llc Efficiently managing unmapped blocks to extend life of solid state drive
US9959058B1 (en) * 2016-03-31 2018-05-01 EMC IP Holding Company LLC Utilizing flash optimized layouts which minimize wear of internal flash memory of solid state drives

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777589A (en) * 1985-06-28 1988-10-11 Hewlett-Packard Company Direct input/output in a virtual memory system
US5787494A (en) * 1992-10-06 1998-07-28 Hewlett-Packard Company Software assisted hardware TLB miss handler
US6009498A (en) * 1995-02-16 1999-12-28 Fujitsu Limited Disk control unit for holding track data in cache memory
US6556567B1 (en) * 1998-11-26 2003-04-29 Hitachi, Ltd. Method and system for multiplexing packets
US6615318B2 (en) * 2002-01-22 2003-09-02 International Business Machines Corporation Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries
US6807106B2 (en) * 2001-12-14 2004-10-19 Sandisk Corporation Hybrid density memory card
US20050033934A1 (en) * 2003-08-07 2005-02-10 Gianluca Paladini Advanced memory management architecture for large data volumes
US7779426B2 (en) * 2006-03-30 2010-08-17 Microsoft Corporation Describing and querying discrete regions of flash storage

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230233B1 (en) 1991-09-13 2001-05-08 Sandisk Corporation Wear leveling techniques for flash EEPROM systems
JPH05151097A (en) 1991-11-28 1993-06-18 Fujitsu Ltd Data control system for rewriting frequency limited type memory
EP0788113B1 (en) 1996-01-31 2005-08-24 SGS-THOMSON MICROELECTRONICS S.r.l. Multilevel memory circuits and corresponding reading and writing methods
US6003115A (en) * 1997-07-29 1999-12-14 Quarterdeck Corporation Method and apparatus for predictive loading of a cache
US6732221B2 (en) * 2001-06-01 2004-05-04 M-Systems Flash Disk Pioneers Ltd Wear leveling of static areas in flash memory
US6985992B1 (en) 2002-10-28 2006-01-10 Sandisk Corporation Wear-leveling in non-volatile storage systems
US6831865B2 (en) 2002-10-28 2004-12-14 Sandisk Corporation Maintaining erase counts in non-volatile storage systems
JP4270994B2 (en) * 2003-09-29 2009-06-03 サンディスク コーポレイションSanDisk Corporation Nonvolatile semiconductor memory device
JP4357304B2 (en) 2004-01-09 2009-11-04 株式会社バッファロー An external storage device
US20050251617A1 (en) * 2004-05-07 2005-11-10 Sinclair Alan W Hybrid non-volatile memory system
JP4215746B2 (en) * 2005-05-20 2009-01-28 Necインフロンティア株式会社 Information processing apparatus and life monitoring methods
KR101257848B1 (en) * 2005-07-13 2013-04-24 삼성전자주식회사 Data storing apparatus comprising complex memory and method of operating the same
US7752382B2 (en) 2005-09-09 2010-07-06 Sandisk Il Ltd Flash memory storage system and method
US7646636B2 (en) * 2007-02-16 2010-01-12 Mosaid Technologies Incorporated Non-volatile memory with dynamic multi-mode operation
US7948798B1 (en) * 2009-07-22 2011-05-24 Marvell International Ltd. Mixed multi-level cell and single level cell storage device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777589A (en) * 1985-06-28 1988-10-11 Hewlett-Packard Company Direct input/output in a virtual memory system
US5787494A (en) * 1992-10-06 1998-07-28 Hewlett-Packard Company Software assisted hardware TLB miss handler
US6009498A (en) * 1995-02-16 1999-12-28 Fujitsu Limited Disk control unit for holding track data in cache memory
US6556567B1 (en) * 1998-11-26 2003-04-29 Hitachi, Ltd. Method and system for multiplexing packets
US6807106B2 (en) * 2001-12-14 2004-10-19 Sandisk Corporation Hybrid density memory card
US6615318B2 (en) * 2002-01-22 2003-09-02 International Business Machines Corporation Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries
US20050033934A1 (en) * 2003-08-07 2005-02-10 Gianluca Paladini Advanced memory management architecture for large data volumes
US7779426B2 (en) * 2006-03-30 2010-08-17 Microsoft Corporation Describing and querying discrete regions of flash storage

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9390004B2 (en) 2008-05-28 2016-07-12 Round Rock Research, Llc Hybrid memory management
US20120137107A1 (en) * 2010-11-26 2012-05-31 Hung-Ming Lee Method of decaying hot data
US20160062682A1 (en) * 2012-02-24 2016-03-03 Simplivity Corporation Method and apparatus utilizing non-uniform hash functions for placing records in non-uniform access memory
US9684462B2 (en) * 2012-02-24 2017-06-20 Simplivity Corporation Method and apparatus utilizing non-uniform hash functions for placing records in non-uniform access memory
US10083095B1 (en) * 2014-09-25 2018-09-25 EMC IP Holding Company LLC Analytics-based backup system for determining optimum backup methods and predicting backup windows

Also Published As

Publication number Publication date Type
CN101271379A (en) 2008-09-24 application
US8015346B2 (en) 2011-09-06 grant
US20110246709A1 (en) 2011-10-06 application
CN101271379B (en) 2011-12-07 grant
US8291156B2 (en) 2012-10-16 grant
CN101271730A (en) 2008-09-24 application
CN101271730B (en) 2013-08-21 grant
US20080235468A1 (en) 2008-09-25 application
US20080235432A1 (en) 2008-09-25 application
CN101271380B (en) 2011-07-27 grant
US8307163B2 (en) 2012-11-06 grant
CN101271380A (en) 2008-09-24 application

Similar Documents

Publication Publication Date Title
US7188228B1 (en) Hybrid mapping implementation within a non-volatile memory system
US7035967B2 (en) Maintaining an average erase count in a non-volatile storage system
US6831865B2 (en) Maintaining erase counts in non-volatile storage systems
US20090271562A1 (en) Method and system for storage address re-mapping for a multi-bank memory device
US20100070735A1 (en) Embedded mapping information for memory devices
US8244960B2 (en) Non-volatile memory and method with write cache partition management methods
US20100023675A1 (en) Wear leveling method, and storage system and controller using the same
US7395384B2 (en) Method and apparatus for maintaining data on non-volatile memory systems
US20050015557A1 (en) Nonvolatile memory unit with specific cache
US20100042773A1 (en) Flash memory storage system and data writing method thereof
US20090172255A1 (en) Wear leveling method and controller using the same
US20130145085A1 (en) Virtual Memory Device (VMD) Application/Driver with Dual-Level Interception for Data-Type Splitting, Meta-Page Grouping, and Diversion of Temp Files to Ramdisks for Enhanced Flash Endurance
US20070028035A1 (en) Storage device, computer system, and storage system
US20110072199A1 (en) Startup reconstruction of logical-to-physical address translation data for solid state disks
US20080177937A1 (en) Storage apparatus, computer system, and method for managing storage apparatus
US20110055458A1 (en) Page based management of flash storage
US20090119353A1 (en) Solid state memory (ssm), computer system including an ssm, and method of operating an ssm
US20040083333A1 (en) Hybrid implementation for error correction codes within a non-volatile memory system
US20140310574A1 (en) Green eMMC Device (GeD) Controller with DRAM Data Persistence, Data-Type Splitting, Meta-Page Grouping, and Diversion of Temp Files for Enhanced Flash Endurance
US8040744B2 (en) Spare block management of non-volatile memories
US8094500B2 (en) Non-volatile memory and method with write cache partitioning
US20090193182A1 (en) Information storage device and control method thereof
US20060020745A1 (en) Fat analysis for optimized sequential cluster management
US20100174846A1 (en) Nonvolatile Memory With Write Cache Having Flush/Eviction Methods
US7254668B1 (en) Method and apparatus for grouping pages within a block

Legal Events

Date Code Title Description
AS Assignment

Owner name: A-DATA TECHNOLOGY CO., LTD., TAIWAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHEN, MING-DAR;LIN, CHUAN-SHENG;CHANG, HUI-NENG;AND OTHERS;REEL/FRAME:020672/0459

Effective date: 20080318