KR20110089975A - Memory apparatus and method for initialization - Google Patents
Memory apparatus and method for initialization Download PDFInfo
- Publication number
- KR20110089975A KR20110089975A KR1020100009508A KR20100009508A KR20110089975A KR 20110089975 A KR20110089975 A KR 20110089975A KR 1020100009508 A KR1020100009508 A KR 1020100009508A KR 20100009508 A KR20100009508 A KR 20100009508A KR 20110089975 A KR20110089975 A KR 20110089975A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- substrips
- trim command
- memory device
- substrip
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/40—Specific encoding of data in memory or cache
- G06F2212/403—Error protection encoding, e.g. using parity or ECC codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Embodiments of the present invention relate to a memory device and a method for initializing the data thereof, and more particularly, to a memory device for initializing a storage space by invalidating a substrip using a trim command and a method of initializing the same.
In general, a RAID (Redundant Arrays of Inexpensive Disks) memory device is a technology that treats multiple disk drivers as a single device, but operates independently for each other. Such a RAID memory device can replace one large and expensive driver by connecting a plurality of small and inexpensive disk drivers, and have an advantage of preserving data in case of failure. In order to use the storage function of the RAID memory device, an initialization operation for the entire storage area is required.
A conventional HDD (Hard Disk Drive) based RAID memory device performs an initialization operation by using a zeroing method of overwriting an entire storage area with "0". In addition, when writing new data to the storage area, reading the substrip of the data storage area and the substrip of the parity storage area, the exclusive OR operation operation, and writing the new data to the data strip and corresponding to the new data. Parity must be generated and written to the parity strip.
However, since the SSD (Solid State Drive) based RAID memory device composed of flash memory is difficult to overwrite, the performance is degraded when initializing using a zeroing method such as a HDD (Hard Disk Drive) based RAID memory device. there was. In addition, in order to record new data, since a number of steps must be taken, there is a problem that the overhead is increased and the life of the SDD is reduced.
A memory device according to an embodiment of the present invention includes an interface unit for receiving a trim command from a host device, a plurality of disks including a plurality of substrips, and divided and recorded data in the plurality of substrips. And a controller configured to determine whether to support the trim command and to invalidate the plurality of substrips.
In the meantime, in the initialization method of a memory device including a plurality of disks composed of a plurality of substrips, the method includes receiving a trim command from a host device and determining whether the trim command function is supported. And invalidating the plurality of substrips if the trim command is supported.
According to an embodiment of the present invention, the storage space may be initialized by invalidating the substrips constituting each disk by using the trim command. Accordingly, the number of times of reading and writing a plurality of substrips is reduced compared to the conventional zeroing method, so that the initialization operation can be performed quickly, and the writing performance and lifespan of the memory device can be improved.
1 is a diagram illustrating a disk structure of a memory device according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a memory device according to an embodiment of the present invention.
3 is a block diagram illustrating a method of initializing a memory device according to an embodiment of the present invention.
4 is a diagram illustrating a data initialization form according to an embodiment of the present invention.
5 is a diagram illustrating a response form of a read request according to an exemplary embodiment of the present invention.
Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In describing the present invention, when it is determined that detailed descriptions of related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Terminology used herein is a term used to properly express a preferred embodiment of the present invention, which may vary depending on a user, an operator's intention, or a custom in the field to which the present invention belongs. Therefore, the definitions of the terms should be made based on the contents throughout the specification. Like reference numerals in the drawings denote like elements.
1 is a diagram illustrating a structure of a memory device according to an embodiment of the present invention. The
In addition, the
Each of the first to
Meanwhile, the
On the other hand, if the
Meanwhile, in the
On the other hand, in the
In FIG. 1, only the first to
2 is a block diagram illustrating a configuration of a memory device according to an embodiment of the present invention. The
The
Meanwhile, when there is a deletion request for data that is no longer used by the file system of the
The
In addition, the
The meta data is information including invalidation information for a plurality of substrips. In this case, the meta data has a recognition position corresponding to each of the plurality of sub strips, and if the recognition position is marked, the corresponding sub strip is invalidated. In addition, mapping information and metadata may be managed by a flash translation layer (FTL), which is a kind of firmware.
The
If the trim command is supported, the
In order to use the storage function of the
The invalidation of the substrip can be accomplished by invalidating the mapping information between the logical address for the valid data and the physical address corresponding to the storage space in which the valid data is recorded. Specifically, the logical address for valid data corresponding to the trim command and the physical address mapped to the logical address are invalidated. In addition, when the mapping between the logical address and the physical address is invalidated, the
When the substrip is invalidated in the above-described manner, the
If the trim command is not supported, the
Meanwhile, when a data read command is received through the
In addition, when the substrip in which the corresponding data is stored is recorded as "0", the
Meanwhile, when a data recording command is received through the
In the
3 is a block diagram illustrating a method of initializing a memory device according to an embodiment of the present invention. Referring to FIG. 3, when a trim command is received from the host device 10 (step 310), the
If the trim command is supported (step 315: YES), the
On the other hand, if the trim command is not supported (step 315: NO), the
On the other hand, when a data write command is received from the host device 10 (step 360), the
Although not shown in the drawing, when a data read command is received from the
4 is a diagram illustrating an initialization form of a substrip according to an exemplary embodiment of the present invention. The
When the trim command for data is received from the
As shown in FIG. 4, when a trim command for a given data is received, a logical page number (LPN), LPN1, and LPN2, which are logical addresses for the data, and a PPN, which is a physical address mapped to each of LPN0, LPN1, and LPN2, is shown. (Physical Page Number) 3, PPN0 and PPN5 are invalidated. In this case, mapping information of LPN0, LPN1 and LPN2 and PPN3, PPN0 and PPN5 is deleted. Further, as PPN3, PPN0 and PPN5 are invalidated, the data recorded in PPN3, PPN0 and PPN5 also change from valid data to invalid data.
As shown in the right side of Figure 4, LPN0, LPN1 and LPN2 and PPN3, PPN0 and PPN5 is shown in the invalidation state after the mapping is terminated, it can be seen that the data recorded in PPN3, PPN0 and PPN5 has been changed to invalid data .
5 is a diagram illustrating a response form of a read request according to an exemplary embodiment of the present invention. In a state in which the storage space is initialized in the same manner as in FIG. 4, when a read command is received from the
If the logical addresses corresponding to the data are LPN0, LPN1 and LPN2, and it is determined that the PPN3, PPN0 and PPN5 mapped to the LPN0, LPN1 and LPN2 and LPN0, LPN1 and LPN2 are invalidated, the
As described above, although the present invention has been described with reference to the limited embodiments and the drawings, the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.
100: memory device 110: interface unit
120: control unit 130: first storage unit
140: second storage unit
Claims (8)
A first storage unit including a plurality of disks formed of a plurality of substrips and dividing and recording data in the plurality of substrips; And
A control unit which determines whether to support the trim command and invalidates a substrip on which data corresponding to the trim command is recorded;
Memory device comprising a.
A second storage unit which stores mapping information between a logical address and a physical address corresponding to the data,
The control unit,
And invalidating the mapping information in response to the trim command.
A second storage unit which stores metadata in which invalidation information of the plurality of sub strips is marked,
The control unit,
The memory device reflects the recognition position corresponding to the plurality of substrips in the metadata based on the invalidated mapping information.
The control unit,
If the trim command is not supported, the plurality of substrips are read to initialize an uninitialized substrip among the plurality of substrips, and an XOR operation of the initialized substrips generates parity, And write the parity in a parity storage area.
The control unit,
And when receiving a data read command from the host device, determining whether the plurality of substrips on which the data is written are in an invalid state.
The control unit,
And transmitting the specific data to the host device in response to the read command when the plurality of substrips are invalidated.
The control unit,
And writing data into the plurality of invalidated substrips when a data write command is received from the host device.
Receiving a trim command from a host device;
Determining whether the trim command function is supported; And
If the trim command is supported, invalidating a substrip on which data corresponding to the trim command is recorded;
Initialization method of a memory device comprising a.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100009508A KR20110089975A (en) | 2010-02-02 | 2010-02-02 | Memory apparatus and method for initialization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100009508A KR20110089975A (en) | 2010-02-02 | 2010-02-02 | Memory apparatus and method for initialization |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110089975A true KR20110089975A (en) | 2011-08-10 |
Family
ID=44927843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100009508A KR20110089975A (en) | 2010-02-02 | 2010-02-02 | Memory apparatus and method for initialization |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110089975A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12007884B2 (en) | 2021-11-08 | 2024-06-11 | Samsung Electronics Co., Ltd. | Method of allocating and protecting memory in computational storage device, computational storage device performing the same and method of operating storage system using the same |
-
2010
- 2010-02-02 KR KR1020100009508A patent/KR20110089975A/en not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12007884B2 (en) | 2021-11-08 | 2024-06-11 | Samsung Electronics Co., Ltd. | Method of allocating and protecting memory in computational storage device, computational storage device performing the same and method of operating storage system using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9104334B2 (en) | Performance improvements in input/output operations between a host system and an adapter-coupled cache | |
US7930499B2 (en) | Method to accelerate block level snapshots in archiving storage systems | |
KR101528714B1 (en) | A method for operating a memory unit, and a memory controller | |
JP5841056B2 (en) | Stripe-based memory operation | |
US9785575B2 (en) | Optimizing thin provisioning in a data storage system through selective use of multiple grain sizes | |
US10776153B2 (en) | Information processing device and system capable of preventing loss of user data | |
US9684591B2 (en) | Storage system and storage apparatus | |
US8006027B1 (en) | Method of staging small writes on a large sector disk drive | |
US8762622B2 (en) | Enhanced MLC solid state device | |
US9304685B2 (en) | Storage array system and non-transitory recording medium storing control program | |
US9514055B2 (en) | Distributed media cache for data storage systems | |
US9923562B1 (en) | Data storage device state detection on power loss | |
US9798623B2 (en) | Using cache to manage errors in primary storage | |
TWI531963B (en) | Data storage systems and their specific instruction enforcement methods | |
TW201024994A (en) | Storage ststem snapshot assisted by SSD technology | |
US20140143476A1 (en) | Usage of cache and write transaction information in a storage device | |
JP2019074897A (en) | Storage control device, and program | |
US9158478B2 (en) | Storage system and storage control method | |
US10031689B2 (en) | Stream management for storage devices | |
US20130179634A1 (en) | Systems and methods for idle time backup of storage system volumes | |
CN108304139B (en) | Method and device for realizing space release in solid-state disk array | |
US10162573B2 (en) | Storage management system, storage management method, storage medium and information processing system | |
KR20110089975A (en) | Memory apparatus and method for initialization | |
US9639417B2 (en) | Storage control apparatus and control method | |
US10452306B1 (en) | Method and apparatus for asymmetric raid |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |