KR20140094186A - Request processing method of host - Google Patents
Request processing method of host Download PDFInfo
- Publication number
- KR20140094186A KR20140094186A KR1020130006608A KR20130006608A KR20140094186A KR 20140094186 A KR20140094186 A KR 20140094186A KR 1020130006608 A KR1020130006608 A KR 1020130006608A KR 20130006608 A KR20130006608 A KR 20130006608A KR 20140094186 A KR20140094186 A KR 20140094186A
- Authority
- KR
- South Korea
- Prior art keywords
- request
- ways
- planes
- host
- data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- 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/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
A method of processing a request for a host according to an embodiment of the present invention is a method for processing a request for a host to transfer a request to a storage device having a multi-way structure in which a plurality of ways each include a plurality of planes, The method comprising the steps of: fetching initial requests to a pending queue, dividing the initial requests to generate sub-requests, recombining the sub-requests to generate at least one composite request, Device, wherein the sub-request is defined to write data to or read data from one of the plurality of planes, and the composite request is defined to read data from one of the plurality of planes, To write or is defined so as to read data from the plurality of ways.
Description
BACKGROUND OF THE
Semiconductor memory devices are classified into volatile semiconductor memory devices and non-volatile semiconductor memory devices. The volatile semiconductor memory device has a drawback that the read and write speed is fast but the stored contents are lost when the external power supply is cut off. On the other hand, the nonvolatile semiconductor memory device preserves its contents even if the external power supply is interrupted. Therefore, a nonvolatile semiconductor memory device is used to store contents to be stored regardless of whether power is supplied or not.
Among the nonvolatile memories, the flash memory is widely used for computers, memory cards and the like because it has a function of electrically erasing cell data collectively. This is due to features such as fast processing speed, nonvolatility, low power and durability of flash memory.
Accordingly, a storage device composed of a plurality of NAND flash chips and a control device has been attracting attention as a next generation storage device, and a storage having a multi-way structure including a plurality of flash memory chips is being developed. Therefore, performance improvement of a storage having a multi-way structure becomes an issue.
An object of the present invention is to provide a method of processing a request for a host to improve the performance of a storage having a multi-way structure.
A method of processing a request for a host according to an embodiment of the present invention is a method for processing a request for a host to transfer a request to a storage device having a multi-way structure in which a plurality of ways each include a plurality of planes, The method comprising the steps of: fetching initial requests to a pending queue, dividing the initial requests to generate sub-requests, recombining the sub-requests to generate at least one composite request, Device, wherein the sub-request is defined to write data to or read data from one of the plurality of planes, and the composite request is defined to read data from one of the plurality of planes, To write or is defined so as to read data from the plurality of ways.
In one embodiment, the sub-requests may be defined to read or write data on a page unit constituting the plane.
In one embodiment, the composite request may be defined to operate the plurality of ways in parallel.
In one embodiment, the composite request can be defined to write data to the planes included in different ways among the plurality of ways or to read data from the planes included in different ways.
In one embodiment, the composite request may be defined to operate the plurality of planes in parallel.
In one embodiment, the composite request may be defined to write data to the planes included in the same way among the plurality of ways, or to read data from the planes included in the same way.
In one embodiment, the composite request may be defined to write to or read from the storage device a positive amount of data defined as a product of a page size, a number of ways, and a number of planes that make up the plane .
In one embodiment, step (d) may concurrently deliver the composite request to the plurality of ways.
In one embodiment, the storage device may be an eMMC.
In one embodiment, the storage device may be a solid state drive (SSD).
The host's request processing method according to embodiments of the present invention can improve the performance of a storage having a multi-way structure.
1 is a block diagram illustrating a storage system in accordance with an embodiment of the present invention.
2 is a flowchart illustrating a method of processing a request of a host of a storage system according to an embodiment of the present invention.
3 is a schematic diagram for explaining the step S110 of FIG.
4 is a schematic view for explaining steps S120 and S130 of FIG.
FIG. 5 is a block diagram illustrating the storage system of FIG. 1 in more detail.
6 is a block diagram illustrating a computing system in accordance with an embodiment of the present invention.
It is to be understood that the specific structural or functional descriptions of embodiments of the present invention disclosed herein are only for the purpose of illustrating embodiments of the inventive concept, But may be embodied in many different forms and is not limited to the embodiments set forth herein.
Embodiments in accordance with the concepts of the present invention are capable of various modifications and may take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. It should be understood, however, that it is not intended to limit the embodiments according to the concepts of the present invention to the particular forms disclosed, but includes all modifications, equivalents, or alternatives falling within the spirit and scope of the invention.
BACKGROUND OF THE
1 is a block diagram illustrating a storage system in accordance with an embodiment of the present invention.
Referring to FIG. 1, a
The
The
According to one embodiment of the present invention, the
2 is a flowchart illustrating a method of processing a request of a host of a storage system according to an embodiment of the present invention. 3 is a schematic diagram for explaining the step S110 of FIG. 4 is a schematic view for explaining steps S120 and S130 of FIG.
Referring to FIG. 2, a method of processing a request of a
In the following, step S110 will be described in detail with reference to Fig.
Referring to FIG. 3, in step S110, the
The initial request can mean a small size request. In addition, the initial request may have a random address pattern. For example, a small size request may refer to a request having a size smaller than a request that can be processed at one time using a multi-plane operation or a way interleaving. The multiple plane operation and the way interleaving are well known in the art, so a detailed description will be omitted.
For example, Write (2, 3) may mean a data write request for
The
Hereinafter, steps S120 to S140 will be described in detail with reference to Fig.
4, the
The unit list C can generate sub-requests by dividing initial requests (Write (0, 1), Write (2, 3)).
A sub-request can be understood as a request which is defined to write data to one of a plurality of planes or to read data from one of the planes. In one aspect, a sub-request can be defined as a request in which data is read / written on a page-by-page basis.
For example, the
The unit list C may recombine sub-requests to generate at least one composite request. Specifically, the sub-requests generated from the
The composite request can be understood as a request defined to write data to the plurality of
In addition, for example, a multiple request can be defined to simultaneously write data to planes included in different ways among a plurality of ways, or simultaneously read data from planes included in different ways. In another aspect, a composite request may be defined to write data to the planes included in the same way among the plurality of ways, or to read data from the planes included in the same way.
On the other hand, the composite request generated in
In step S140, the
Each of the
As described above, in the request processing method of a host according to an embodiment of the present invention, sub-requests can be recombined to generate at least one combined request. Therefore, in the request processing method of the host according to the embodiment of the present invention, the plurality of
FIG. 5 is a block diagram illustrating the storage system of FIG. 1 in more detail.
5, a
The initial request of the
The
The
A non-volatile memory device, in particular a flash memory device, can maintain stored data even when power is turned off. With the increasing use of mobile devices such as cellular phones, PDA digital cameras, portable game consoles, and MP3Ps, flash memory devices are widely used as code storage as well as data storage. Flash memory devices can also be used in home applications such as HDTV, DVD, routers, and GPS.
6 is a block diagram illustrating a computing system in accordance with an embodiment of the present invention.
6, a
If the
The flash memory device and / or memory controller according to the present invention may be implemented using various types of packages. For example, the flash memory device and / or the memory controller according to the present invention can be implemented as a package on package (PoP), ball grid arrays (BGAs), chip scale packages (CSPs), plastic leaded chip carriers (PLCC) Linear Package (PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board (COB), Ceramic Dual In-Line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flatpack (SOIC), Shrink Small Outline Package (SSOP), Thin Small Outline (TSOP), Thin Quad Flatpack (TQFP), System In Package (SIP), Multi Chip Package (MCP), Wafer-level Fabricated Package Wafer-Level Processed Stack Package (WSP), and the like.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention. Therefore, the scope of the present invention should not be limited to the above-described embodiments, but should be determined by the equivalents of the claims of the present invention as well as the claims of the following.
100, 1000: storage system 2000: computer system
110, 1100: host 2100: memory system
120: storage device 2200: CPU
121, 122: Way 2300: RAM
121a, 121b, 122a, 122b: plane 2400: user interface
1200: Memory Controller 2500: Modem
1210: SRAM
1220: CPU
1230: Host interface
1240: ECC
1250: Memory interface
1300: Nonvolatile memory device
Claims (10)
Fetching initial requests generated from applications into a pending queue;
Dividing the initial requests into sub-requests;
Reassembling the sub-requests to generate at least one composite request; And
And forwarding the at least one composite request to the storage device,
Wherein the sub-request is defined to write data to one of the plurality of planes or to read data from the one of the plurality of planes,
Wherein the composite request is defined to write data to the plurality of ways or to read data from the plurality of ways.
Wherein the sub-requests are defined to read or write data in units of pages constituting the plane.
Wherein the combined request is defined to operate the plurality of ways in parallel.
Wherein the composite request is defined to write data to planes included in different ways among the plurality of ways or to read data from planes included in different ways.
Wherein the combined request is defined to operate the plurality of planes in parallel.
Wherein the composite request is defined to write data to the planes included in the same way among the plurality of ways or to read data from the planes included in the same way.
Wherein the composite request is defined to write to or read from the storage device positive data defined by a product of a page size, a number of ways, and a number of planes constituting the plane.
Wherein the step of transferring the at least one composite request to the storage device simultaneously delivers the composite request to the plurality of ways.
Wherein the storage device is an eMMC.
Wherein the storage device is a solid state drive (SSD).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130006608A KR20140094186A (en) | 2013-01-21 | 2013-01-21 | Request processing method of host |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130006608A KR20140094186A (en) | 2013-01-21 | 2013-01-21 | Request processing method of host |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20140094186A true KR20140094186A (en) | 2014-07-30 |
Family
ID=51740009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130006608A KR20140094186A (en) | 2013-01-21 | 2013-01-21 | Request processing method of host |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20140094186A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11029893B2 (en) | 2017-09-08 | 2021-06-08 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
US11842076B2 (en) | 2021-03-29 | 2023-12-12 | Samsung Electronics Co., Ltd. | Storage system and operating method for same |
-
2013
- 2013-01-21 KR KR1020130006608A patent/KR20140094186A/en not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11029893B2 (en) | 2017-09-08 | 2021-06-08 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
US11693605B2 (en) | 2017-09-08 | 2023-07-04 | Samsung Electronics Co., Ltd. | Storage device including nonvolatile memory device and controller, controller and operating method of nonvolatile memory device |
US11842076B2 (en) | 2021-03-29 | 2023-12-12 | Samsung Electronics Co., Ltd. | Storage system and operating method for same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6284351B2 (en) | Memory controller and memory system including the same | |
US10114586B1 (en) | System and method for using host command data buffers as extended memory device volatile memory | |
US8688895B2 (en) | Memory system and data management method of flash translation layer thereof | |
US20150349805A1 (en) | Method of Handling Error Correcting Code in Non-volatile Memory and Non-volatile Storage Device Using the Same | |
US10114743B2 (en) | Memory erase management | |
US20100088463A1 (en) | Nonvolatile memory system and data processing method | |
US11676679B2 (en) | Two-layer code with low parity cost for memory sub-systems | |
US10133627B2 (en) | Memory device controller with mirrored command and operating method thereof | |
KR20180021327A (en) | Data processing system and operating method thereof | |
KR20110015269A (en) | Memory system and programming method thereof | |
US11016881B2 (en) | Memory system and operating method thereof | |
US10289327B2 (en) | Scheduling scheme(s) for a multi-die storage device | |
KR20150055884A (en) | Data storage device including a nonvolatile memory device and an operating method thereof | |
US20180113736A1 (en) | Computing Systems and Methods of Operating Computing Systems | |
KR20210079611A (en) | Apparatus and method for improving input/output throughput of memory system | |
US9619323B2 (en) | Data storage device and operating method thereof | |
US10268399B2 (en) | Memory system using message monitoring and first and second namespaces | |
KR20140094186A (en) | Request processing method of host | |
US20150121168A1 (en) | Memory system including randomizer and de-randomizer | |
KR20230160620A (en) | Apparatus and method for recovering data in a memory system | |
CN112711377A (en) | Storage node of distributed storage system and operation method thereof | |
JP2011070470A (en) | Semiconductor memory device | |
KR20210083888A (en) | Apparatus and method for improving input/output throughput of memory system | |
EP4386556A1 (en) | Operation method of memory controller configured to control memory device | |
US20240193041A1 (en) | Operation method of memory controller configured to control memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |