Data processing system, storage device, and operation method therefor
The storage device dynamically adjusts RAID reliability based on data importance and storage medium state to optimize parity information allocation, improving data integrity and storage efficiency.
Patent Information
- Application Number
- JP2024139828
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-22
- Filing Date
- 2024-08-21
- Publication Date
- 2025-08-01
AI Technical Summary
Existing storage devices lack the ability to dynamically adjust RAID reliability based on the importance of the data being stored, leading to inefficient utilization of storage space for parity information.
A storage device that determines RAID reliability levels based on the external reliability level and the state of the storage medium, grouping data into arbitrary-sized units, and generating parity information accordingly to optimize storage space utilization.
Dynamic RAID reliability ensures efficient use of storage space by adjusting parity information allocation based on data importance, enhancing data integrity and storage efficiency.
Smart Images

Figure 2025113131000001_ABST
Abstract
Description
Technical Field
[0001] The present technology relates to semiconductor integrated devices, and more particularly to data processing systems, storage devices, and methods of operating the same.
Background Art
[0002] A storage device can be configured to read and write data to a storage medium in response to requests from an external device.
[0003] In order to guarantee the reliability of data stored in a storage medium, a RAID ([Redundant Array of Independent / Inexpensive] Disks) technique is used in a storage device. By using the RAID technique, an uncorrectable error can be recovered by an error correction circuit.
[0004] Some RAID techniques generate parity information (RAID parity), so a part of the storage medium needs to be allocated to store the RAID parity.
Summary of the Invention
Problems to be Solved by the Invention
[0005] Embodiments of the present technology can provide a data processing system, a storage device, and a method of operating the same that can dynamically determine RAID reliability according to the importance of data to be stored.
[0006] A storage device according to an embodiment of the present technology can include a storage medium for storing data of an external device and a storage controller for controlling the operation of the storage medium. The storage controller receives a storage request for the data and an external reliability level of the data from the external device, and determines, based on the external reliability level and considering the state of the storage medium, an internal reliability level of the data as any one of a plurality of internal reliability levels. The data is grouped into unit data having an arbitrary size corresponding to the determined internal reliability level, parity information corresponding to the determined internal reliability level is generated based on the grouped data, and the grouped data and the corresponding parity information are stored in the storage medium. The operation of storing the grouped data and the corresponding parity information in the storage medium can be configured to be controlled.
[0007] A data processing system according to an embodiment of the present technology can include a data processing device, a storage medium, and a storage controller that interfaces communication between the data processing device and the storage medium. The storage controller receives a storage request for the processed data and an external reliability level of the processed data from the data processing device, and determines, based on the external reliability level and considering the state of the storage medium, an internal reliability level of the processed data as any one of a plurality of internal reliability levels. The processed data is grouped into unit data having an arbitrary size corresponding to the determined internal reliability level, parity information corresponding to the determined internal reliability level is generated based on the grouped processed data, and the grouped processed data and the corresponding parity information are stored in the storage medium. The operation of storing the grouped processed data and the corresponding parity information in the storage medium can be configured to be controlled.
[0008] A storage device according to an embodiment of the present technology can include a storage medium including a plurality of memory blocks each including a plurality of pages, any number of planes each including a plurality of memory blocks, and any number of dies each including any number of planes, and a storage controller that controls write and read operations with respect to the storage medium. The storage controller includes a reliability level setting circuit that transfers state information of the storage medium to the external device and requests determination of an external reliability level for write data in response to a write request from the external device, a reliability level adjustment circuit configured to determine an internal reliability level based on acceptance or non-acceptance of the external reliability level provided from the external device, and a processor configured to group a memory area in which the write data is recorded into a grouping level corresponding to the internal reliability level and generate parity information.
[0009] An operation method of a storage device according to an embodiment of the present technology is an operation method of a storage controller that controls an operation of a storage medium for storing data of an external device, the method including receiving a storage request for the data and an external reliability level of the data from the external device, determining, based on the external reliability level in consideration of the state of the storage medium, an internal reliability level of the data as any one of a plurality of internal reliability levels, grouping the data into unit data having an arbitrary size corresponding to the determined internal reliability level, generating parity information corresponding to the determined internal reliability level based on the grouped data, and controlling an operation of storing the grouped data and the corresponding parity information in the storage medium.
Advantages of the Invention
[0010] According to the present technology, dynamic RAID reliability can be provided for data for which storage is requested, so that the storage space for RAID parity can be efficiently utilized.
Brief Description of the Drawings
[0011]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
DETAILED DESCRIPTION OF THE INVENTION
[0012] Hereinafter, embodiments of the present technology will be described more specifically with reference to the accompanying drawings.
[0013] FIG. 1 is a configuration diagram of a data storage device according to an embodiment.
[0014] Referring to FIG. 1, the data processing system 10 can include an external device 100 and a storage device 200.
[0015] The external device 100 can include at least one processor. The external device 100 can be the processor itself, or an electronic device or system including the processor.
[0016] The storage device 200 can include a Storage Controller 210, a Buffer memory device 220, and a storage medium 260. The storage medium 260 can include at least a plurality of non-volatile memory devices 230, 240, 250.
[0017] The external device 100 can transfer a write request (WT) including a write command word, an address, and write data to the storage device 200 in order to record data. In response, the storage device 200 can control the storage medium 260 to program the write data.
[0018] The external device 100 can transfer a read request (RD) including a read command and an address to the storage device 200 in order to read data. The storage device 200 can read the requested data (DATA) from the storage medium 260 and transmit it to the external device 100. The storage device 200 can read data from the storage medium 260 not only in response to the read request (RD) of the external device 100 but also to perform internal operations. The internal operations can include housekeeping operations such as garbage collection and wear leveling.
[0019] The Buffer memory device 220 can temporarily store data transmitted and received between the external device 100 and the storage device 200 during write or read operations.
[0020] The storage controller 210 provides an interface between the external device 100 and the storage device 200. The storage controller 210 can include a RAID engine 212 and an ECC engine 214.
[0021] The RAID engine 212 can store the data for which a write is requested in the storage medium 260 in a manner according to the set RAID level.
[0022] The ECC engine 214 can perform encoding for error detection and correction on the data for which writing is requested, and can perform error detection and correction on the data included in the data for which reading is requested.
[0023] When an irreparable error occurs in the read data, the RAID engine 212 can recover the data.
[0024] FIG. 2 is a diagram for explaining the management concept of a storage medium including a non-volatile memory device according to an embodiment.
[0025] The non-volatile memory device 260 can include any number of dies (DIE0, DIE1), and each die (DIE0, DIE1) can include any number of planes (PLANE00 / PLANE01, PLANE10 / PLANE11). Each plane (PLANE00 / PLANE01, PLANE10 / PLANE11) can include a plurality of memory blocks (BLOCK000 to BLOCK00N, BLOCK010 to BLOCK01N, BLOCK100 to BLOCK10N, BLOCK110 to BLOCK11N). The plurality of memory blocks (BLOCK000 to BLOCK00N, BLOCK010 to BLOCK01N, BLOCK100 to BLOCK10N, BLOCK110 to BLOCK11N) can each be composed of a plurality of pages (PAGE0 to PAGEM).
[0026] The non-volatile memory device 260 can perform input / output of data via channels (CHa, CHb). Each channel (CHa, CHb) can perform input / output of data in an interleaving manner. Each channel (CHa, CHb) branches into a plurality of paths (WAY0, WAY1, WAY2, WAY3) that share the channel (CHa, CHb), and can be connected to, for example, each plane (PLANE00 / PLANE01, PLANE10 / PLANE11).
[0027] In FIG. 2, an example is shown in which each die (DIE0, DIE1) is connected to an independent channel (CHa, CHb), and is connected to each plane (PLANE00 / PLANE01, PLANE10 / PLANE11) via paths (WAY0, WAY1, WAY2, WAY3) branched from each channel (CHa, CHb). However, the configuration of the non-volatile memory device 260 is not limited to this.
[0028] The storage controller 210 can group blocks that can be simultaneously selected among a plurality of memory blocks to form a super block.
[0029] The super block can be composed of a combination of blocks that can be simultaneously selected, such as by grouping (A1, A2) memory blocks included in different planes within the same die, or by grouping (B) memory blocks included in different planes in a plurality of dies.
[0030] FIG. 3 is a logical configuration diagram of a storage medium including a non-volatile memory device according to an embodiment.
[0031] Referring to FIG. 3, the storage medium 260 can be divided into a main data area (MAIN DATA AREA) and a system data area (SYSTEM DATA AREA) according to the type of data to be stored.
[0032] In the main data area (MAIN DATA AREA), data requested to be written by the external device 100 and the like can be stored. The main data area (MAIN DATA AREA) can be divided into a used space (USED) 260-1 that is a space where data has already been stored and an unused space (UNUSED) 260-2 that is a space where data has not been stored.
[0033] The system data area can be divided into a system area 260-3 where system information is stored and an over-provisioning (OP) area 260-4 necessary to maintain the operating performance of the storage device.
[0034] The system information stored in the system area 260-3 can include map data regarding the mapping information of logical addresses and physical addresses, information necessary for the booting operation of the storage device 200, and setting information used for the firmware drive and execution of the storage controller 210.
[0035] The OP area 260-4 can be a reserve area allocated so that various functions necessary to drive the storage device 200, such as wear leveling, garbage collection, and bad block management, can operate smoothly. Therefore, the size of the OP area 260-4 can affect the performance maintenance and life extension of the storage device 200.
[0036] RAID is a technology for maintaining the integrity of data stored in the storage medium 260 and identifying and correcting errors. Various levels of RAID schemes are known, and parity information generated when storing data by the RAID scheme can be stored in the OP area 260-4.
[0037] Figure 4 is a configuration diagram of a RAID engine according to an embodiment.
[0038] Referring to Figure 4, a RAID engine 212 according to an embodiment can include a reliability level setting circuit 301, a reliability level adjustment circuit 303, a RAID processor 305, a recovery circuit 307, and a RAID map table 309.
[0039] The reliability level setting circuit 301 can provide the RAID information regarding a plurality of internal reliability levels, which are example values of the reliability level, together with the device information of the storage medium 260 to the external device 100 in response to a write request from the external device 100. The RAID information can include size information of parity information corresponding to the plurality of internal reliability levels. Thereby, the external device 100 can determine one of the example values of the reliability level based on the device information according to the importance of the data to be written, and can respond to the storage device 200 as the external reliability level.
[0040] In one embodiment, the device information can include the status information of the storage medium 260. The status information of the storage medium 260 can include the allowable program / erase (PE) count defined in the standard of the storage medium 260, the allowable cumulative error count (GBB (Grown Bad Block) count), and the capacity of the storage medium 260 (the total number of memory blocks). The device information can further include real-time status information reflecting the usage status of the storage medium 260, for example, the current PE count, the current cumulative error count, and the remaining memory capacity (the number of remaining memory blocks).
[0041] The plurality of internal reliability levels can be generated based on a grouping level, which is a unit of a memory area having an arbitrary size for grouping to generate parity information when programming data by a RAID method.
[0042] The grouping level of the memory area can be a die, a plane, a super block, a page, etc. The smaller the grouping level is, the larger the size of the parity information is, while the reliability for the stored data is enhanced.
[0043] The reliability level setting circuit 301 can request the external device 100 to determine the external reliability level according to the importance of the write data by providing the RAID information including the plurality of internal reliability levels corresponding to the grouping level and the size information of the parity information corresponding thereto to the external device 100 as an example value of the reliability level.
[0044] When the external trust level determined by the external device 100 is transferred, the trust level setting circuit 301 can update the RAID map table 309.
[0045] FIG. 5 is a configuration diagram of a RAID map table according to an embodiment.
[0046] Referring to FIG. 5, the RAID map table 309 can include the logical address (LBA) of the data for which writing is requested, the size (SIZE) of the data for which writing is requested, the grouping level (GROUPING LEVEL) corresponding to the determined internal trust level, and the size of the parity information (PARITY SIZE) corresponding to the determined internal trust level.
[0047] In one embodiment, the grouping level (GROUPING LEVEL) can be a unit for generating parity information when the write data is programmed into the memory area, such as a plane, a die, a super block, an arbitrary number of pages (X-PAGE), etc.
[0048] According to the RAID method used in the storage device 200, the size of the parity information (PARITY SIZE) can be determined for each grouping level and stored in the RAID map table 309.
[0049] Referring to FIG. 4 again, the trust level adjustment circuit 303 can be configured to determine whether to accept the external trust level based on the size of the parity information generated according to the external trust level determined by the external device 100 and the size of the system data area assigned to the storage medium 260.
[0050] Referring to FIG. 3 again for explanation, the trust level adjustment circuit 303 can determine whether to accept the external trust level based on the remaining size of the OP area 260-4 in the system data area (SYSTEM DATA AREA) where the parity information is stored.
[0051] For example, when the ratio of the generated parity information is smaller than a set first threshold value, the reliability level adjustment circuit 303 can accept the external reliability level. The ratio of the generated parity information can be the ratio of the size of the parity information generated according to the reliability level determined by the external device 100 to the remaining size of the OP area 260-4.
[0052] In one embodiment, when the ratio of the generated parity information is smaller than a set second threshold value (< the first threshold value), the reliability level adjustment circuit 303 does not accept the external reliability level and can adjust the reliability level upward to determine the internal reliability level. At this time, the ratio of the parity information generated according to the internally adjusted reliability level can be adjusted so as to be smaller than the first threshold value.
[0053] When the ratio of the generated parity information is equal to or greater than the set first threshold value, the reliability level adjustment circuit 303 can notify the external device 100 that the external reliability level cannot be accepted.
[0054] When the ratio of the generated parity information is equal to or greater than the set first threshold value, the reliability level adjustment circuit 303 can adjust the internal reliability level so that the ratio of the generated parity information is smaller than the first threshold value. The result of adjusting the reliability level is reflected in the RAID map table and can be notified to the external device 100.
[0055] In one embodiment, when the external reliability level cannot be accepted, the reliability level adjustment circuit 303 can notify the external device 100 of this and request that the external reliability level be re-determined. Thereby, when the external device 100 changes the external reliability level, it can determine whether it can be accepted and process a series of operations according to the result of the determination.
[0056] In one embodiment, when the external device 100 does not change the external reliability level, the external device 100 maintains the external reliability level initially determined, and can notify the external device 100 that the risk due to the program operation, for example, the shortage of the OP area 260-4, is predicted.
[0057] In one embodiment, when the external device 100 does not change the external trust level, it is possible to notify the external device 100 that the program process has failed.
[0058] In one embodiment, when the external trust level cannot be accepted, the trust level adjustment circuit 303 maintains the external trust level and can notify the external device 100 that the risk due to the program operation, for example, the shortage of the OP area 260-4, is predicted.
[0059] In one embodiment, when the external trust level cannot be accepted, the trust level adjustment circuit 303 notifies that the external trust level cannot be accepted, and at the same time, can notify the external device 100 that the program process has failed.
[0060] The RAID processor 305 generates parity information regarding the write data at the grouping level corresponding to the internal trust level determined by the trust level adjustment circuit 303, and can store the write data in the storage medium 260 by the RAID method.
[0061] When a non-correctable error occurs in the read data in response to a read request from the external device 100, the recovery circuit 307 can recover the read data based on the parity information. The recovery circuit 307 can apply the parity information according to the grouping level stored in the RAID map table 309 to recover the data.
[0062] FIGS. 6 to 9 are flowcharts for explaining an operation method of a storage device according to an embodiment.
[0063] Referring to FIG. 6, by receiving a write request from the external device 100 (S101), the storage device 200 can request the external device 100 to determine the external trust level together with the device information of the storage medium 260 (S103). Thereby, the external device 100 can determine the external trust level based on the importance of the write data and the device information and respond to the storage device 200.
[0064] When the storage device 200 requests a determination of the external trust level, it can transfer RAID information together with the device information. The RAID information can include a plurality of internal trust levels and the size of the parity information corresponding thereto.
[0065] In one embodiment, the device information can include the status information of the storage medium 260, and can further include real-time status information reflecting the usage status of the storage medium 260. In one embodiment, the external device 100 can select any one of the plurality of internal trust levels as the external trust level based on the RAID information. The plurality of internal trust levels can be generated corresponding to the grouping level, which is a unit of the memory area grouped to generate parity information when programming data from the storage device 200 by the RAID method.
[0066] The grouping level of the memory area can be a die, a plane, a superblock, a page, or the like.
[0067] When the determined external trust level is transferred from the external device 100 to the storage device 200 (S105), the RAID map table 309 can be updated (S107).
[0068] The storage device 200 can determine whether it is necessary to adjust the external trust level based on the size of the parity information generated according to the external trust level and the size of the system data area allocated to the storage medium 260 (S109).
[0069] In one embodiment, it can be determined whether it is necessary to adjust the external trust level by comparing the ratio of the parity information generated according to the external trust level and a first threshold value.
[0070] The ratio of the generated parity information can be the ratio of the size of the parity information generated according to the external trust level to the remaining size of the OP area 260-4.
[0071] In one embodiment, when the ratio of the generated parity information is less than the first threshold and the external reliability level is acceptable (S109: N), the storage device 200 generates parity information for the write data according to the grouping level corresponding to the external reliability level, and can store the write data in the storage medium 260 by means of the RAID method (S111).
[0072] In one embodiment, when adjustment of the external reliability level is necessary (S109: Y), the storage device 200 can process the processes shown in FIGS. 7 to 9.
[0073] Referring to FIG. 7, when the ratio of the generated parity information is less than the set second threshold (<the first threshold) or is equal to or greater than the set first threshold, the storage device 200 can adjust the external reliability level to determine the internal reliability level (S301).
[0074] For example, when the ratio of the generated parity information is less than the set second threshold (<the first threshold), the RAID engine 212 can adjust the external reliability level upward to determine the internal reliability level. At this time, the ratio of the parity information generated according to the internally determined reliability level adjusted upward can be adjusted to be less than the first threshold.
[0075] When the ratio of the generated parity information is equal to or greater than the set first threshold, the RAID engine 212 can adjust the external reliability level so that the ratio of the generated parity information is less than the first threshold.
[0076] The result of adjusting the reliability level is reflected in the RAID map table (S303), while it can be notified to the external device 100 (S305).
[0077] Thereafter, the storage device 200 can process step S111 shown in FIG. 6.
[0078] Referring to FIG. 8, when the proportion of parity information generated according to the external trust level is equal to or greater than the first threshold value, and thus adjustment of the external trust level is necessary (S109: Y), the storage device 200 can notify the external device 100 of this (S401) and request the external device 100 to re-determine the external trust level (S403). Thereby, the external device 100 checks whether to change the external trust level (S405). When the external trust level is changed (S405: Y), the storage device 200 proceeds to the step (S107) of determining whether to accept the external trust level, and can process subsequent operations.
[0079] In one embodiment, when the storage device 200 cannot accept the external trust level and thus notifies the external device 100 of this (S401), or when the external device 100 does not change the external trust level (S405: N), the storage device 200 processes the program operation according to the external trust level initially determined by the external device 100 (S407), and can notify the external device 100 that a risk due to the program operation, for example, shortage of the OP area 260-4, is predicted (S409).
[0080] In another embodiment, when adjustment of the external trust level determined by the external device 100 is necessary (S109: Y), the storage device 200 notifies the external device 100 of this (S401), and can process the program operation according to the external trust level initially determined by the external device 100 (S407). Then, the external device 100 can be notified that a risk due to the program operation, for example, shortage of the OP area 260-4, is predicted (S409).
[0081] Referring to FIG. 9, when the storage device 200 cannot accept the external trust level and thus notifies the external device 100 of this (S401), or when the external device 100 does not change the external trust level (S405: N), the storage device 200 can notify the external device 100 that the program processing has failed (S501).
[0082] The storage device 200 can generate parity information for the write data at the grouping level corresponding to the internally determined reliability level in this way, and can store the write data in the storage medium 260 by the RAID method.
[0083] Thereafter, when an irreparable error occurs in the data read in response to a read request from the external device 100, the storage device 200 can obtain the grouping level of the read data based on the RAID map table 309. Then, by applying parity information according to the obtained grouping level, the data with the irreparable error can be recovered.
[0084] As described above, those skilled in the art to which the present invention pertains can understand that the present invention can be implemented in other specific forms without changing its technical idea and essential features. Therefore, it must be understood that the above-described embodiments are exemplary in all aspects and not restrictive. The scope of the present invention is indicated by the claims described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention.
Claims
1. A storage medium for storing data of an external device, and a storage controller for controlling the operation of the storage medium, comprising: The storage controller: receives a storage request for the data and an external reliability level of the data from the external device, considers the state of the storage medium, and determines an internal reliability level of the data as any one of a plurality of internal reliability levels based on the external reliability level, groups the data into unit data having an arbitrary size corresponding to the determined internal reliability level, generates parity information corresponding to the determined internal reliability level based on the grouped data, and is configured to control an operation of storing the grouped data and the corresponding parity information in the storage medium. A storage device.
2. The storage device according to claim 1, wherein the storage controller is configured to request the external device for the external reliability level.
3. The storage device according to claim 1, wherein the storage controller is configured to generate parity information having different sizes for each of the plurality of internal reliability levels.
4. The storage device according to claim 1, wherein the storage controller is configured to generate RAID information including size information of the parity information corresponding to the plurality of internal reliability levels.
5. The storage device according to claim 4, wherein the storage controller is configured to transmit the RAID information to the external device.
6. The storage device according to claim 1, wherein the storage controller is configured to determine the plurality of internal reliability levels according to the size of the unit data to be grouped when programming the data for which storage is requested into the storage medium.
7. The storage device according to claim 1, wherein the storage controller is configured to transmit state information including an allowable program / erase count (PE count), an allowable cumulative error count, and a capacity of the storage medium to the external device.
8. The storage device according to claim 7, wherein the storage controller is configured to transmit real-time state information including a current program / erase count (PE count), a current cumulative error count, and a remaining capacity of the storage medium to the external device as the state information.
9. The storage medium includes a system data area in which the parity information is stored, The storage device according to claim 1, wherein the storage controller is configured to determine whether to accept the external reliability level based on a ratio of the size of the parity information to the remaining size of the system data area, and to determine the internal reliability level.
10. The storage device according to claim 9, wherein the storage controller is configured to request the external device to adjust the external reliability level when the external reliability level is unacceptable.
11. The storage device according to claim 9, wherein the storage controller is configured to notify the external device of a risk based on the remaining size of the system data area when the external reliability level is unacceptable.
12. The storage device according to claim 9, wherein the storage controller is configured to notify the external device that an operation of storing data has failed when the external reliability level is unacceptable.
13. A data processing device, A storage medium, and a storage controller that interfaces communication between the data processing device and the storage medium, The storage controller, Receives a storage request for processing data and an external reliability level of the processing data from the data processing device, Considering the state of the storage medium, determines the internal reliability level of the processing data as any one of a plurality of internal reliability levels based on the external reliability level, Groups the processing data into unit data having an arbitrary size corresponding to the determined internal reliability level, Generates parity information corresponding to the determined internal reliability level based on the grouped processing data, A data processing system configured to control an operation of storing the grouped processing data and the corresponding parity information in the storage medium.
14. The data processing system according to claim 13, wherein the storage controller is configured to request the data processing device for the external reliability level.
15. The data processing system according to claim 13, wherein the storage controller is configured to generate parity information having different sizes for each of the plurality of internal reliability levels.
16. The storage controller is configured to generate RAID information including size information of the parity information corresponding to the plurality of internal reliability levels, the data processing system according to claim 13.
17. The data storage device is configured to transmit the RAID information to the data processing device, the data processing system according to claim 16.
18. The data processing device is configured to determine the external reliability level for the processing data based on the RAID information, the data processing system according to claim 17.
19. When programming the processing data into the storage medium, the storage controller is configured to determine the plurality of internal reliability levels according to the size of the unit data to be grouped, the data processing system according to claim 13.
20. The storage controller is configured to transmit state information including the allowable program / erase count (PE count), the allowable cumulative error count, and the capacity of the storage medium to the data processing device, the data processing system according to claim 13.
21. The data processing device determines the external reliability level based on the state information, the data processing system according to claim 20.
22. The storage controller is configured to transmit real-time state information including the current program / erase count (PE count), the current cumulative error count, and the remaining capacity of the storage medium to the data processing device as the state information, the data processing system according to claim 20.
23. The storage medium includes a system data area where the parity information is stored, Based on the ratio of the size of the parity information to the remaining size of the system data area, the storage controller is configured to determine whether to accept the external reliability level and determine the internal reliability level, the data processing system according to claim 13.
24. When the external reliability level cannot be accepted, the storage controller is configured to request the data processing device to adjust the external reliability level, the data processing system according to claim 23.
25. The data processing system according to claim 23, wherein the storage controller is configured to notify the data processing device of the risk according to the remaining size of the system data area when the external trust level is unacceptable.
26. The data processing system according to claim 23, wherein the storage controller is configured to notify the data processing device that the operation of saving has failed when the external trust level is unacceptable.
27. A storage medium including a plurality of memory blocks including a plurality of pages, any number of planes including a plurality of memory blocks, and any number of dies including any number of planes; A storage controller for controlling operations of writing to and reading from the storage medium; The storage controller includes a trust level setting circuit that transfers status information of the storage medium to the external device in response to a write request from the external device and requests determination of an external trust level for write data; a trust level adjustment circuit configured to determine an internal trust level based on acceptance or non-acceptance of the external trust level provided from the external device; and a processor configured to group a memory area in which the write data is recorded into a grouping level corresponding to the internal trust level and generate parity information, the storage device being configured to include the processor.
28. When programming the write data to the storage medium by a RAID method, the trust level setting circuit sets a plurality of internal trust levels based on a grouping level that is a unit of a memory area to be grouped to generate the parity information. The storage device according to claim 27, wherein the trust level adjustment circuit is configured to determine the internal trust level as one of the plurality of internal trust levels based on acceptance or non-acceptance of the external trust level provided from the external device.
29. The storage device according to claim 27, wherein the trust level setting circuit is configured to group the memory area in units of the any number of dies, planes, memory blocks, or pages.
30. The storage medium includes a system data area in which the parity information is stored. The reliability level adjustment circuit according to claim 27, wherein the reliability level adjustment circuit is configured to determine whether to accept the external reliability level provided from the external device based on a ratio of the size of the parity information to a remaining size of the system data area.
31. The storage device according to claim 27, wherein the reliability level adjustment circuit is configured to autonomously adjust the internal reliability level when the external reliability level provided from the external device cannot be accepted.
32. The storage device according to claim 27, wherein the storage controller further includes a RAID map table that manages an address related to the write request, a size of the write data, a grouping level, and a size of the parity information.
33. The storage device according to claim 27, wherein the state information includes an allowable program / erase count (PE count), an allowable cumulative error count, and a capacity of the storage medium.
34. An operation method of a storage controller that controls an operation of a storage medium for storing data of an external device, receiving a storage request for the data and an external reliability level of the data from the external device; determining an internal reliability level of the data as any one of a plurality of internal reliability levels based on the external reliability level in consideration of a state of the storage medium; grouping the data into unit data having an arbitrary size corresponding to the determined internal reliability level; generating parity information corresponding to the determined internal reliability level based on the grouped data; and controlling an operation of storing the grouped data and the corresponding parity information in the storage medium, the operation method of the storage device being configured to include the steps.
35. The operation method of the storage device according to claim 34, further including a step of requesting the external device for the external reliability level.
36. The operation method of the storage device according to claim 34, wherein the step of generating the parity information includes a step of generating parity information having different sizes for each of the plurality of internal reliability levels.
37. The method for operating a storage device according to claim 34, further comprising the step of generating RAID information including size information of the parity information corresponding to the plurality of internal reliability levels.
38. The method for operating a storage device according to claim 37, further comprising the step of transmitting the RAID information to the external device.
39. The step of determining the internal reliability level is configured to determine any one of the plurality of internal reliability levels determined according to the size of unit data to be grouped when programming the data into the storage medium, according to the method for operating a storage device according to claim 34.
40. The method for operating a storage device according to claim 34, further comprising the step of transmitting state information including the allowable program / erase count (PE count), allowable cumulative error count, and capacity of the storage medium to the external device.
41. The step of transmitting the state information to the external device further comprises the step of transmitting real-time state information including the current program / erase count (PE count), current cumulative error count, and remaining capacity of the storage medium to the external device as the state information, according to the method for operating a storage device according to claim 40.
42. The storage medium includes a system data area where the parity information is stored. The step of determining the internal reliability level includes the step of judging whether the external reliability level can be accepted based on the ratio of the size of the parity information to the remaining size of the system data area, and determining the internal reliability level, according to the method for operating a storage device according to claim 34.
43. The step of determining the internal reliability level further comprises the step of requesting the external device to adjust the external reliability level when the external reliability level cannot be accepted, according to the method for operating a storage device according to claim 42.
44. The step of determining the internal reliability level further comprises the step of notifying the external device of the risk due to the remaining size of the system data area when the external reliability level cannot be accepted, according to the method for operating a storage device according to claim 42.
45. The method for operating a storage device according to claim 42, wherein the step of determining the internal trust level is further configured to include a step of notifying that the operation of storing in the external device has failed when the external trust level is unacceptable.