Fault information processing method and device for solid state disk, equipment and medium

By identifying the fault type in the solid-state drive and importing it into nonvolatile memory, the problem of information loss in the event of a fault occurs is solved, and the efficiency of fault location and data security is improved.

CN119576635AActive Publication Date: 2025-03-07INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411755083.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-03-07
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

When a solid-state drive fails, if power is lost before or after importing the fault information to ddr, it will lead to the loss of useful information, thereby reducing the efficiency of fault location.

Method used

When it is recognized that the fault type for the current read and write operation request is a preset fault type, it is determined whether there is a completion message returned to the flash conversion layer within the first preset time. If present, add the fault field information and import it into the target storage area in the double-rate synchronous dynamic random memory and write it to the nonvolatile memory through other normal channels.

Benefits of technology

By writing fault information to nonvolatile memory, preventing information from being lost due to power failure, improving data security and fault positioning efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576635A_ABST
    Figure CN119576635A_ABST
Patent Text Reader

Abstract

The invention discloses a fault information processing method and device for a solid state disk, equipment and a medium, which are applied to the technical field of computers and aim to solve the problem that fault information is easy to lose. If a completion message returned to the flash translation layer exists within a first preset duration, determining a target register and a target storage area in the double-rate synchronous dynamic random access memory according to the current read-write operation request, and adding fault field information to the completion message; triggering the target register to interrupt the current operation, and importing the fault information in the target register into the target storage area; returning the completion message added with the fault field information to the flash memory conversion layer, and writing the fault information in the target storage area into the nonvolatile memory through other normal channels based on a write request returned by the flash memory conversion layer; data loss can be effectively prevented, and the fault positioning efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a method, device, equipment and computer-readable storage medium for processing fault information of a solid state drive. Background Art

[0002] SSD, also known as solid-state drive, is a hard disk made of solid-state electronic storage chip array. During the use of SSD and the development of its firmware, when a fault occurs, it is necessary to save the fault scene. Some critical fault information is stored in the register. If the SSD is powered off due to force majeure before the problem is located, some information in the register that helps analyze the cause of the fault will be lost. In this case, the problem can only be reproduced by analyzing the usage scenario.

[0003] Take the read operation of a solid-state drive as an example. When a fault occurs during the read operation of a solid-state drive, the channel where the problem occurs is usually determined first, and the relevant information of the context in which the problem occurs is saved in the register. The relevant information in the register needs to be exported to the DDR (Double Data Rate SDRAM, double-rate synchronous dynamic random access memory), and then the DDR is read and the relevant information is analyzed to locate the cause of the fault. However, if a power failure occurs before or after the information is imported into the DDR, and before the content in the DDR is read for fault analysis, the useful information used to analyze the cause of the fault will be lost, making it impossible to reproduce the fault, which greatly reduces the efficiency of fault location.

[0004] In view of this, how to prevent the loss of relevant information used to analyze the cause of the fault and improve the efficiency of fault location is a problem that technical personnel in this field need to solve. Summary of the invention

[0005] The purpose of the embodiments of the present invention is to provide a method, device, equipment and computer-readable storage medium for processing fault information of a solid state drive, which is conducive to preventing information loss and improving data security and fault location efficiency.

[0006] In order to solve the above technical problems, an embodiment of the present invention provides a method for processing fault information of a solid state drive, comprising:

[0007] In the case where it is identified that the fault type for the current read / write operation request is a preset fault type, determining whether there is a completion message returned to the flash translation layer within a first preset time period;

[0008] If there is a completion message returned to the flash translation layer within the first preset time length, determine the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request, and add fault field information to the completion message; the fault field information is used to determine the fault channel;

[0009] Triggering the target register to interrupt the current operation, and importing the fault information in the target register into the target storage area;

[0010] The completion message after adding the fault field information is returned to the flash translation layer, and the fault information in the target storage area is written into the non-volatile memory through other normal channels based on the write request returned by the flash translation layer; the write request is a message generated by the flash translation layer based on the completion message for other channels except the fault channel. Write request

[0011] In some embodiments, the preset fault type is a write fault type or other read fault types except the type of the number of error bits higher than a threshold.

[0012] In some embodiments, it also includes:

[0013] If there is no completion message returned to the flash translation layer within the first preset time period, detecting whether the time of a first timer corresponding to the flash channel controller is reduced to 0;

[0014] When the time of the first timer is reduced to 0, determining a target register and a target storage area in the double rate synchronous dynamic random access memory according to the current read / write operation request;

[0015] Triggering the target register to interrupt the current operation;

[0016] Importing the fault information in the target register into a target storage area in the double data rate synchronous dynamic random access memory, so that when the flash translation layer determines that the time of the second timer corresponding to the flash translation layer is reduced to 0, checking whether there is new data in the storage area corresponding to each channel in the double data rate synchronous dynamic random access memory, if there is new data in the storage area, determining the target channel corresponding to the storage area with the new data, and returning a write request for other normal channels in the flash channel controller except the target channel;

[0017] Obtaining a write request returned by the flash translation layer;

[0018] According to the write request, the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory is written into the non-volatile memory through other normal channels except the target channel.

[0019] In some embodiments, it also includes:

[0020] When a context switch is detected, the first timer is reset to a second preset duration and starts counting down.

[0021] In some embodiments, determining a target register and a target storage area in a double rate synchronous dynamic random access memory according to the current read / write operation request includes:

[0022] Determine a faulty channel according to the current read / write operation request;

[0023] According to the fault channel and the pre-established mapping relationship between the channel and the register, and the mapping relationship between the channel and the storage area in the double rate synchronous dynamic random access memory, the target register and the target storage area are determined.

[0024] In some embodiments, it also includes:

[0025] After the fault information in the target storage area of ​​the double data rate synchronous dynamic random access memory is written into the non-volatile memory, the fault information in the target storage area of ​​the double data rate synchronous dynamic random access memory is cleared.

[0026] In some embodiments, the fault field information includes one or more of a fault channel, a target register, and a target storage area.

[0027] Another aspect of the present invention provides a fault information processing device for a solid state drive, comprising:

[0028] A first identification module is used to determine whether there is a completion message returned to the flash translation layer within a first preset time period when it is identified that the fault type for the current read / write operation request is a preset fault type;

[0029] An adding module is used to determine the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request if there is a completion message returned to the flash translation layer within the first preset time length, and add fault field information to the completion message; the fault field information is used to determine the fault channel;

[0030] A first import module, used for triggering the target register to interrupt the current operation and importing the fault information in the target register into the target storage area;

[0031] A write module is used to return a completion message after adding the fault field information to the flash translation layer, and write the fault information in the target storage area into the non-volatile memory through other normal channels based on the write request returned by the flash translation layer; the write request is a message generated by the flash translation layer based on the completion message for other channels except the fault channel.

[0032] Another aspect of the present invention provides a fault information processing device for a solid state drive, including:

[0033] Memory for storing computer programs;

[0034] A processor is used to execute the computer program to implement the steps of the solid state hard disk fault information processing method as described above.

[0035] Another aspect of an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method for processing fault information of a solid state drive as described above are implemented.

[0036] It can be seen from the above technical solution that the beneficial effects of the present invention are:

[0037] An embodiment of the present invention provides a method for processing fault information of a solid-state hard disk, comprising: when it is identified that the fault type for a current read / write operation request is a preset fault type, determining whether there is a completion message returned to a flash memory conversion layer within a first preset time length; if there is a completion message returned to the flash memory conversion layer within the first preset time length, determining a target register and a target storage area in a double-rate synchronous dynamic random access memory according to the current read / write operation request, and adding fault field information to the completion message; the fault field information is used to determine a fault channel; triggering the target register to interrupt the current operation, and importing the fault information in the target register into the target storage area; returning the completion message with the added fault field information to the flash memory conversion layer, and writing the fault information in the target storage area into a non-volatile memory through other normal channels based on a write request returned by the flash memory conversion layer, the write request being a message generated by the flash memory conversion layer for other channels except the fault channel based on the completion message.

[0038] It can be seen that in the embodiment of the present invention, when the flash channel controller identifies that the fault type is a preset fault type, if a completion message can be returned to the flash conversion layer within the first preset time period to indicate that the context is not stuck, the fault field information can be added to the completion message, and the corresponding register is triggered to interrupt the current operation, and the key variable value related to the context in the register (that is, the fault information) is imported into the target storage area corresponding to the fault channel in the double-speed synchronous dynamic random access memory, and the completion message is returned to the flash conversion layer. The flash conversion layer sends a write request for other normal channels except the fault channel to the flash channel controller according to the completion message. The flash channel controller can flush the fault data imported into the target storage area in the double-speed synchronous dynamic random access memory to the non-volatile memory through other normal channels according to the write request. Since the data in the non-volatile memory will not be lost due to power failure, storing the fault data through the non-volatile memory can better prevent data loss and ensure data security. When locating the fault, the fault data can be directly obtained from the non-volatile memory, which is conducive to improving the efficiency of fault locating.

[0039] In addition, the present invention also provides a corresponding implementation device and a computer-readable storage medium for the fault information processing method of the solid-state hard disk, which further makes the method more practical, and the device and the computer-readable storage medium have corresponding advantages. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] In order to more clearly illustrate the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0041] Figure 1 A flowchart of a method for processing fault information of a solid state drive provided by an embodiment of the present invention;

[0042] Figure 2 A flowchart of another method for processing fault information of a solid state drive provided by an embodiment of the present invention;

[0043] Figure 3 A structural diagram of a fault information processing device for a solid state hard disk provided by an embodiment of the present invention;

[0044] Figure 4 A structural diagram of a fault information processing device for a solid state hard disk provided by an embodiment of the present invention;

[0045] Figure 5 A structural diagram of a computer-readable storage medium provided for an embodiment of the present invention. DETAILED DESCRIPTION

[0046] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0047] The terms "including" and "having" in the specification of the present invention and the above-mentioned drawings, as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device including a series of steps or units is not limited to the listed steps or units, but may include steps or units that are not listed.

[0048] In order to enable those skilled in the art to better understand the solution of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0049] Next, a method for processing fault information of a solid state drive provided by an embodiment of the present invention is described in detail. Figure 1 A flowchart of a method for processing fault information of a solid state drive provided by an embodiment of the present invention, the method comprising:

[0050] S110: When it is identified that the fault type for the current read / write operation request is a preset fault type, determining whether there is a completion message returned to the flash translation layer within a first preset time period;

[0051] It should be noted that the method provided in the embodiment of the present invention can be applied to a flash channel controller (FCC) of a solid-state hard disk. When performing read and write operations, the flash channel controller can identify the processing status of the current read and write operation request. When a fault is identified, the fault type is identified. If the fault type is a preset fault type, it is further determined whether the flash channel controller has a context stuck. That is, it can be determined whether the context is stuck by judging whether a completion message is returned to the flash translation layer within a first preset time length. If the flash channel controller returns a completion message to the flash translation layer (FTL) within the first preset time length, it means that the context of the flash channel controller is not stuck. If the flash channel controller has not returned a completion message to the flash translation layer within the first preset time length, it can be determined that the context of the flash channel controller has been stuck.

[0052] The preset fault type in the embodiment of the present invention is a write fault type or other read fault types except the type of the number of error bits being higher than the threshold value. That is, for any write operation request, when a fault is identified, no matter which write fault type it is, it meets the situation of the preset fault type. For a read operation request, when a fault is identified, if the fault type is not the type of the number of error bits being higher than the threshold value (that is, the number of error bits is too high), it meets the situation of the preset fault type.

[0053] S120: If there is a completion message returned to the flash translation layer within the first preset time, determine the target register and the target storage area in the double data rate synchronous dynamic random access memory according to the current read and write operation request, and add fault field information to the completion message; the fault field information is used to determine the fault channel;

[0054] It can be understood that if the flash channel controller returns a completion message to the flash conversion layer within the first preset time length, the fault channel can be further located according to the current read and write operation request, that is, it can be determined which channel has a problem. After the fault channel is determined, the corresponding target register and the target storage area corresponding to the fault channel in the double-rate synchronous dynamic random access memory DDR can be further determined according to the fault channel, and the fault field information is added to the completion message, that is, the fault field information is assigned to the completion message, wherein the fault field information is used to determine the fault channel, and the fault field information may include one or more of the fault channel, target register and target storage area, and may also include the fault type. Of course, the fault field information may also include a fault import flag, which is used to indicate whether fault information has been imported into the DDR, and the fault import flag can be set after the fault information is imported into the target storage area in the DDR.

[0055] In practical applications, a mapping relationship between channels and registers can be established in advance, and a mapping relationship between channels and storage areas in DDR can be established. After locating the faulty channel according to the current read and write operation request, the target register corresponding to the faulty channel can be further determined based on the faulty channel combined with the mapping relationship between the channel and the register, and the target storage area corresponding to the faulty channel can be determined based on the faulty channel combined with the mapping relationship between the channel and the DDR storage area.

[0056] It is understandable that a mapping relationship between the channel value and the starting address in the DDR can also be established, so that after the faulty channel is determined, the starting address of the corresponding storage area in the DDR can be further determined according to the value of the faulty channel.

[0057] S130: Trigger the target register to interrupt the current operation, and import the fault information in the target register into the target storage area;

[0058] It should be noted that after the fault type field is added, the interrupt of the target register will be triggered immediately, causing the target register to interrupt the current operation. Then, the value of the context-related key variable on the target register (that is, the fault information) is imported into the target storage area on the DDR.

[0059] S140: Return the completion message after adding the fault field information to the flash translation layer, and write the fault information in the target storage area into the non-volatile memory through other normal channels except the fault channel based on the write request returned by the flash translation layer; wherein the write request is a message generated by the flash translation layer for other channels except the fault channel based on the completion message.

[0060] It should be noted that in the embodiment of the present invention, after the fault field information is added to the completion message, the completion information is returned to the upper flash conversion layer, and the fault channel can be determined based on the fault field information in the completion message, and the fault import flag is identified in the detected fault field information, and when it is determined that fault information has been imported into the DDR, a write request is generated for other normal channels except the fault channel, and then the write request is returned to the flash channel controller. After receiving the write request, the flash channel controller writes the fault information that has been imported into the target storage area of ​​the double-rate synchronous dynamic random access memory into the non-volatile memory through other normal channels except the fault channel according to the write request, thereby preventing the fault information from being lost due to power failure.

[0061] That is, in the embodiment of the present invention, the fault information can be saved in the non-volatile memory as soon as the fault occurs, thereby avoiding the loss of fault information due to abnormal power failure, which is beneficial to improving the efficiency of fault analysis and positioning.

[0062] In some embodiments, the method may further include:

[0063] If there is no completion message returned to the flash translation layer within the first preset time period, detecting whether the time of a first timer corresponding to the flash channel controller is reduced to 0;

[0064] When the time of the first timer is reduced to 0, determining the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request;

[0065] Trigger the target register to interrupt the current operation;

[0066] Importing the fault information in the target register into the target storage area in the double data rate synchronous dynamic random access memory, so that when the flash translation layer determines that the time of the second timer corresponding to the flash translation layer is reduced to 0, checking whether there is new data in the storage area corresponding to each channel in the double data rate synchronous dynamic random access memory, if there is new data in the storage area, determining the target channel corresponding to the storage area with the new data, and returning a write request for other normal channels in the flash channel controller except the target channel;

[0067] Get the write request returned by the flash translation layer;

[0068] According to a write request, the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory is written into the non-volatile memory through other normal channels except the target channel.

[0069] It should be noted that, in the embodiment of the present invention, a corresponding first timer can be pre-set for the flash channel controller, and the first timer is reset to the second preset duration each time a context switch occurs, and the countdown starts after the reset. If the flash channel controller has not returned a completion message to the flash conversion layer within the first preset duration, it can be determined that the flash channel controller has a context stuck situation, and at this time, it can be detected whether the countdown of the first timer corresponding to the flash channel controller has become 0, and if the countdown of the first timer has become 0, the target register and the target storage area of ​​the double rate synchronous dynamic random access memory can be determined according to the current read and write operation. In practical applications, a mapping relationship between the channel and the register can be established in advance, and a mapping relationship between the channel and the storage area in the DDR can be established. After locating the fault channel according to the current read and write operation request, the target register corresponding to the fault channel can be further determined according to the fault channel combined with the mapping relationship between the channel and the register, and the target storage area corresponding to the fault channel can be determined according to the fault channel combined with the mapping relationship between the channel and the DDR storage area.

[0070] After the target register is determined, the target register is immediately triggered to interrupt the current operation, and the fault information in the target register (ie, the value of the context-related key variable) is imported into the target storage area in the double rate synchronous dynamic random access memory.

[0071] A second timer is set in advance for the upper flash conversion layer, and the second timer starts counting down from a third preset time length. When it is detected that the time of the second timer is reduced to 0, the flash conversion layer actively checks whether there is new content in the storage area corresponding to each channel in the DDR. If new content is found in a certain storage area, it means that the flash channel controller of the back-end has imported the fault information in the corresponding register into the storage area. At this time, the storage area storing the new data can be determined, and the corresponding target channel (that is, the faulty channel) can be determined according to the pre-established mapping relationship between the channel and the storage area. Then, a write request for other normal channels except the target channel is generated, and the write request is sent to the flash channel controller of the back-end. After receiving the write request, the flash access register flushes the fault information in the target register to the non-volatile memory through other normal channels except the target channel according to the write request.

[0072] In one embodiment, the method may further include:

[0073] After returning the write request for other normal channels except the target channel in the flash channel controller, the second timer is reset to a third preset duration and starts counting down.

[0074] It should be noted that in order to further ensure that the upper-layer flash memory conversion layer can promptly discover the fault information that has been imported into a storage area in the double-rate synchronous dynamic random access memory, and promptly notify the flash memory channel controller to write the fault information in the storage area into the non-volatile memory through other normal channels, in an embodiment of the present invention, after the flash memory conversion layer sends the generated write request for other normal channels except the faulty channel to the flash memory channel controller, the second timer corresponding to the flash memory conversion layer can be immediately reset to the third preset duration, and the countdown of the second timer can be started.

[0075] In some embodiments, the method may further include:

[0076] After the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory is written into the nonvolatile memory, the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory is cleared.

[0077] Please refer to Figure 2 A flowchart of another method for processing fault information of a solid-state drive is shown. In practical applications, in order to further ensure data security and reduce the possibility of loss, the non-volatile memory in the embodiment of the present invention can adopt SLC (Single-Level Cell, single-layer unit flash memory) NAND (non-volatile memory).

[0078] It should be noted that in order to save storage space in the embodiment of the present invention, the fault information stored in the target storage area in the double-rate synchronous dynamic random access memory DDR can be written into the non-volatile memory through other normal channels except the fault channel, and after the writing is completed, the fault information stored in the target storage area can be cleared, thereby reducing the storage space occupied, which is beneficial to improving the performance of the solid-state hard drive.

[0079] It can be seen that in the embodiment of the present invention, when the flash channel controller identifies that the fault type is a preset fault type, if a completion message can be returned to the flash conversion layer within the first preset time period to indicate that the context is not stuck, the fault field information can be added to the completion message, and the corresponding register is triggered to interrupt the current operation, and the key variable value related to the context in the register (that is, the fault information) is imported into the target storage area corresponding to the fault channel in the double-speed synchronous dynamic random access memory, and the completion message is returned to the flash conversion layer. The flash conversion layer sends a write request for other normal channels except the fault channel to the flash channel controller according to the completion message. The flash channel controller can flush the fault data imported into the target storage area in the double-speed synchronous dynamic random access memory to the non-volatile memory through other normal channels according to the write request. Since the data in the non-volatile memory will not be lost due to power failure, storing the fault data through the non-volatile memory can better prevent data loss and ensure data security. When locating the fault, the fault data can be directly obtained from the non-volatile memory, which is conducive to improving the efficiency of fault locating.

[0080] In addition, the embodiment of the present invention can also improve the fault tolerance of on-site customer operations during use, and even if the power is abnormally off, it will not delay the fault location progress of the back-end flash channel controller related errors. After the fault occurs, the fault information in the non-volatile memory can be automatically read after the power is turned off and then powered on, and the fault information can be located, which is also helpful to avoid extending the power-on time of the solid-state hard disk.

[0081] The present invention also provides a corresponding device for the fault information processing method of the solid state drive, which further makes the method more practical. Among them, the device can be described from the perspective of functional modules and hardware. The fault information processing device of the solid state drive provided by the present invention is introduced below. The device is used to implement the fault information processing method of the solid state drive provided by the present invention. In this embodiment, the fault information processing device of the solid state drive may include or be divided into one or more program modules, and the one or more program modules are stored in a storage medium and executed by one or more processors to complete the fault information processing method of the solid state drive disclosed in the above embodiment. The program module referred to in the present invention refers to a series of computer program instruction segments that can complete specific functions, which is more suitable for describing the execution process of the fault information processing device of the solid state drive in the storage medium than the program itself. The following description will specifically introduce the functions of each program module of this embodiment. The fault information processing device of the solid state drive described below and the fault information processing method based on the solid state drive described above can be referred to each other.

[0082] From the perspective of functional modules, see Figure 3 , Figure 3 A structural schematic diagram of a fault information processing device for a solid state hard disk provided by the present invention, the device comprising:

[0083] A first identification module 11 is used to determine whether there is a completion message returned to the flash translation layer within a first preset time period when it is identified that the fault type for the current read / write operation request is a preset fault type;

[0084] An adding module 12 is used to determine the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request if there is a completion message returned to the flash translation layer within the first preset time length, and add fault field information to the completion message; the fault field information is used to determine the fault channel;

[0085] A first import module 13, used for triggering a target register to interrupt the current operation and importing the fault information in the target register into a target storage area;

[0086] The write module 14 is used to return the completion message after adding the fault field information to the flash conversion layer, and write the fault information in the target storage area into the non-volatile memory through other normal channels based on the write request returned by the flash conversion layer; the write request is a message generated by the flash conversion layer for other channels except the faulty channel based on the completion message.

[0087] In some embodiments, the preset failure type is a write failure type or other read failure types except the type of the number of error bits higher than a threshold.

[0088] In some embodiments, it also includes:

[0089] A first detection module, configured to detect whether the time of a first timer corresponding to the flash channel controller is reduced to 0 if no completion message is returned to the flash translation layer within a first preset time period;

[0090] A first determination module is used to determine a target register and a target storage area in the double rate synchronous dynamic random access memory according to a current read / write operation request when the time of the first timer is reduced to 0;

[0091] A first trigger module, used for triggering the target register to interrupt the current operation;

[0092] A second import module is used to import the fault information in the target register into the target storage area in the double data rate synchronous dynamic random access memory, so that when the flash translation layer determines that the time of the second timer corresponding to the flash translation layer is reduced to 0, it is checked whether there is new data in the storage area corresponding to each channel in the double data rate synchronous dynamic random access memory, if there is new data in the storage area, the target channel corresponding to the storage area with the new data is determined, and a write request for other normal channels in the flash channel controller except the target channel is returned;

[0093] A first acquisition module, used for acquiring a write request returned by the flash translation layer;

[0094] The flash writing module is used to write the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory into the non-volatile memory through other normal channels except the target channel according to the write request.

[0095] In some embodiments, it also includes:

[0096] The reset module is used to reset the first timer to a second preset duration and start countdown when a context switch is detected.

[0097] In some embodiments, the adding module 12 includes:

[0098] A first determining unit, configured to determine a faulty channel according to a current read / write operation request;

[0099] The second determining unit is used to determine the target register and the target storage area according to the faulty channel and the pre-established mapping relationship between the channel and the register, and the mapping relationship between the channel and the storage area in the double rate synchronous dynamic random access memory.

[0100] In some embodiments, it also includes:

[0101] The clearing module is used for clearing the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory after writing the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory into the non-volatile memory.

[0102] In some embodiments, the fault field information includes one or more of a fault channel, a target register, and a target storage area.

[0103] It should be noted that the fault information processing device for the solid-state hard disk provided in the embodiment of the present invention has the same beneficial effects as the fault information processing method for the solid-state hard disk provided in the above-mentioned embodiment, and for the specific introduction of the fault information processing method for the solid-state hard disk involved in the embodiment of the present invention, please refer to the above-mentioned embodiment, and the present invention will not be repeated here.

[0104] The fault information processing device of the solid state drive mentioned above is described from the perspective of functional modules. Furthermore, the present invention also provides a fault information processing device of the solid state drive, which is described from the perspective of hardware. Figure 4 A structural diagram of a fault information processing device for a solid state drive provided by an embodiment of the present invention is shown in FIG. Figure 4 As shown, the fault information processing device of the solid state hard disk includes:

[0105] A memory 20, for storing computer programs;

[0106] The processor 21 is used to implement the steps of the method for processing fault information of a solid state drive in the above embodiment when executing a computer program.

[0107] The device provided in this embodiment may include but is not limited to a smart phone, a tablet computer, a laptop computer or a desktop computer.

[0108] Among them, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 21 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.

[0109] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the memory 20 may be an internal storage unit of the device, such as a hard disk of a server. In other embodiments, the memory 20 may also be an external storage device of the device, such as a plug-in hard disk equipped on a server, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. Further, the memory 20 may also include both an internal storage unit of the device and an external storage device. The memory 20 may not only be used to store application software and various types of data installed on the device, such as: the code of the program in the process of executing the fault information processing method of the solid-state hard disk, etc., but also be used to temporarily store data that has been output or is to be output. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, the relevant steps of the fault information processing method of the solid-state hard disk disclosed in any of the aforementioned embodiments can be implemented. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. The operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include but is not limited to data corresponding to the result of the set fault information processing method of the solid state drive, etc.

[0110] In some embodiments, the device may further include a display screen 22, an input / output interface 23, a communication interface 24, a power supply 25, and a communication bus 26. Among them, the display screen 22 and the input / output interface 23, such as a keyboard, belong to the user interface, and the optional user interface may also include a standard wired interface, a wireless interface, and the like. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, and an OLED (Organic Light-Emitting Diode) touch device, and the like. The display may also be appropriately referred to as a display screen or a display unit, which is used to display information processed in the device and to display a visual user interface. The communication interface 24 may optionally include a wired interface and / or a wireless interface, such as a WI-FI interface, a Bluetooth interface, and the like, which are generally used to establish a communication connection between the device and other devices. The communication bus 26 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, and the like. The bus may be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, Figure 4 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0111] Those skilled in the art will understand that Figure 4 The structure shown in the figure does not constitute a limitation of the device, and may include more or fewer components than shown.

[0112] It is understandable that if the fault information processing method of the solid state drive in the above embodiment is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium to execute all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), electrically erasable programmable ROM, register, hard disk, removable disk, CD-ROM, magnetic disk or optical disk and other media that can store program codes.

[0113] Based on this, Figure 5As shown, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program 31 is stored. When the computer program 31 is executed by a processor, the steps of the fault information processing method of the solid state drive as described above are implemented.

[0114] Based on the above embodiments, an embodiment of the present invention further provides a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned method for processing fault information of a solid state drive when executed by a processor.

[0115] The above is a detailed introduction to a method, device and medium for processing fault information of a solid state drive provided by an embodiment of the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description.

[0116] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0117] The above is a detailed introduction to the fault information processing method, device and medium of a solid state drive provided by the present invention. This article uses specific examples to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.

Claims

1. A method for processing fault information of a solid state drive, characterized in that: include: In the case where it is identified that the fault type for the current read / write operation request is a preset fault type, determining whether there is a completion message returned to the flash translation layer within a first preset time period; If there is a completion message returned to the flash translation layer within the first preset time length, determine the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request, and add fault field information to the completion message; The fault field information is used to determine the fault channel; Triggering the target register to interrupt the current operation, and importing the fault information in the target register into the target storage area; Returning a completion message after adding the fault field information to the flash translation layer, and writing the fault information in the target storage area into a non-volatile memory through other normal channels based on the write request returned by the flash translation layer; The write request is a message generated by the flash translation layer based on the completion message and directed to other channels except the failed channel.

2. The method for processing fault information of a solid state drive according to claim 1, characterized in that: The preset fault type is a write fault type or other read fault types except the type in which the number of error bits is higher than a threshold.

3. The method for processing fault information of a solid state drive according to claim 1, characterized in that: Also includes: If there is no completion message returned to the flash translation layer within the first preset time period, detecting whether the time of a first timer corresponding to the flash channel controller is reduced to 0; When the time of the first timer is reduced to 0, determining a target register and a target storage area in the double rate synchronous dynamic random access memory according to the current read / write operation request; Triggering the target register to interrupt the current operation; Importing the fault information in the target register into a target storage area in the double data rate synchronous dynamic random access memory, so that when the flash translation layer determines that the time of the second timer corresponding to the flash translation layer is reduced to 0, checking whether there is new data in the storage area corresponding to each channel in the double data rate synchronous dynamic random access memory, if there is new data in the storage area, determining the target channel corresponding to the storage area with the new data, and returning a write request for other normal channels in the flash channel controller except the target channel; Obtaining a write request returned by the flash translation layer; According to the write request, the fault information in the target storage area of ​​the double rate synchronous dynamic random access memory is written into the non-volatile memory through other normal channels except the target channel.

4. The method for processing fault information of a solid state drive according to claim 3, characterized in that: Also includes: When a context switch is detected, the first timer is reset to a second preset duration and starts counting down.

5. The method for processing fault information of a solid state drive according to any one of claims 1 to 4, characterized in that: Determining a target register and a target storage area in a double rate synchronous dynamic random access memory according to the current read / write operation request includes: Determine a faulty channel according to the current read / write operation request; According to the fault channel and the pre-established mapping relationship between the channel and the register, and the mapping relationship between the channel and the storage area in the double rate synchronous dynamic random access memory, the target register and the target storage area are determined.

6. The method for processing fault information of a solid state drive according to claim 5, characterized in that: Also includes: After the fault information in the target storage area of ​​the double data rate synchronous dynamic random access memory is written into the non-volatile memory, the fault information in the target storage area of ​​the double data rate synchronous dynamic random access memory is cleared.

7. The method for processing fault information of a solid state drive according to claim 5, characterized in that: The fault field information includes one or more of a fault channel, a target register, and a target storage area.

8. A fault information processing device for a solid state hard disk, characterized in that: include: A first identification module is used to determine whether there is a completion message returned to the flash translation layer within a first preset time period when it is identified that the fault type for the current read / write operation request is a preset fault type; An adding module is used to determine the target register and the target storage area in the double rate synchronous dynamic random access memory according to the current read and write operation request if there is a completion message returned to the flash translation layer within the first preset time length, and add fault field information to the completion message; The fault field information is used to determine the fault channel; A first import module, used for triggering the target register to interrupt the current operation and importing the fault information in the target register into the target storage area; A writing module, used for returning a completion message after adding the fault field information to the flash translation layer, and writing the fault information in the target storage area into the non-volatile memory through other normal channels based on the write request returned by the flash translation layer; The write request is a message generated by the flash translation layer based on the completion message and directed to other channels except the failed channel.

9. A fault information processing device for a solid state hard disk, characterized in that: include: Memory for storing computer programs; A processor, configured to execute the computer program to implement the steps of the method for processing fault information of a solid state drive as claimed in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the fault information processing method of the solid state drive as claimed in any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • A fault location method of a solid-state hard disk and a related device

    CN109240870A

  • Nvme SSD and reset method and system thereof

    CN111103960A

  • Solid state disk and data writing method and device thereof, host and storage medium

    CN115756327A

  • Method and Apparatus for Restoring Data after Power Failure for An Open-Channel Solid State Drive

    US20190324859A1