CN109947598B - SSD microcode backup method, system, device and computer storage medium - Google Patents

SSD microcode backup method, system, device and computer storage medium Download PDF

Info

Publication number
CN109947598B
CN109947598B CN201910213428.7A CN201910213428A CN109947598B CN 109947598 B CN109947598 B CN 109947598B CN 201910213428 A CN201910213428 A CN 201910213428A CN 109947598 B CN109947598 B CN 109947598B
Authority
CN
China
Prior art keywords
microcode
backed
data check
check value
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910213428.7A
Other languages
Chinese (zh)
Other versions
CN109947598A (en
Inventor
黄福帅
尹宏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Power Commercial Systems Co Ltd
Original Assignee
Inspur Power Commercial Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Power Commercial Systems Co Ltd filed Critical Inspur Power Commercial Systems Co Ltd
Priority to CN201910213428.7A priority Critical patent/CN109947598B/en
Publication of CN109947598A publication Critical patent/CN109947598A/en
Application granted granted Critical
Publication of CN109947598B publication Critical patent/CN109947598B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The application discloses a method, a system, equipment and a computer medium for SSD microcode backup, which are used for acquiring microcode to be backed up in an SSD; acquiring a data check value of a microcode to be backed up; and storing the microcode to be backed up and the data check value into different NAND. In the SSD microcode backup method provided by the application, after the microcode to be backed up in the SSD is obtained, the data check value of the microcode to be backed up is obtained, and the length of the data check value is shorter than that of the microcode to be backed up, so that after the data check value is stored in the NAND, the occupied resources are less than that of the microcode to be backed up. The SSD microcode backup system, the SSD microcode backup equipment and the computer readable storage medium solve the corresponding technical problems.

Description

SSD microcode backup method, system, device and computer storage medium
Technical Field
The present application relates to the field of storage technologies, and in particular, to a method, a system, a device, and a computer storage medium for SSD microcode backup.
Background
In the field of storage technology, SSD (Solid State Drives) is widely used by virtue of its high performance and high shock resistance. However, an uncorrectable read error occurs when electrons inside the SSD are lost, and the core of the SSD is a core chip, which controls the firmware microcode of the SSD, so that the backup of the firmware microcode of the SSD is particularly important.
The existing SSD microcode backup method comprises the following steps: the microcode to be backed up is copied, and the original microcode and the copied microcode are stored in different NAND (flash memory devices), so that when the microcode in one NAND is lost, the microcode in the other NAND can be backed up.
However, in the existing SSD microcode backup method, the copied microcode needs to occupy an additional NAND, which results in a large resource usage.
In summary, those skilled in the art need to solve the above problem how to reduce the amount of resources used in SSD microcode backup.
Disclosure of Invention
The present application aims to provide an SSD microcode backup method, which can solve the technical problem of how to reduce the amount of resources used in SSD microcode backup to a certain extent. The application also provides an SSD microcode backup system, SSD microcode backup equipment and a computer readable storage medium.
In order to achieve the above purpose, the present application provides the following technical solutions:
an SSD microcode backup method, comprising:
acquiring microcode to be backed up in the SSD;
acquiring a data check value of the microcode to be backed up;
and storing the microcode to be backed up and the data check value into different NAND.
Preferably, the obtaining the data check value of the microcode to be backed up includes:
and acquiring the parity check value of the microcode to be backed up.
Preferably, the obtaining the data check value of the microcode to be backed up includes:
grouping the microcode to be backed up to obtain grouped microcode to be backed up;
for each group of the microcode to be backed up, calculating a data check value of the microcode to be backed up;
the storing the microcode to be backed up and the data check value into different NAND includes:
and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and a data check value corresponding to the group of the microcode to be backed up into different NAND.
Preferably, the calculating a data check value of each group of microcode to be backed up includes:
acquiring the number of the NAND;
for each group of the microcode to be backed up, dividing the microcode to be backed up into microcode to be backed up in fragments, wherein the number of the microcode to be backed up in fragments is less than 1 than that of the NAND; calculating a data check value of the partitioned microcode to be backed up;
for each group of the microcode to be backed up, storing the group of the microcode to be backed up and a data check value corresponding to the group of the microcode to be backed up into different NAND comprises:
and for each group of the microcode to be backed up, storing the segmented microcode to be backed up corresponding to the grouped microcode to be backed up and the data check value corresponding to the segmented microcode to be backed up into different NANDs according to the principle that each NAND stores one part of data.
Preferably, for each group of the microcode to be grouped and backed up, the step of storing the microcode to be grouped and the data check value corresponding to the microcode to be grouped and backed up into different NAND comprises:
and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs according to the principle that the data check values stored in one NAND are not adjacent.
Preferably, after storing the microcode to be backed up and the data check value in different NANDs, the method further includes:
and judging whether the microcode is lost in the NAND storing the microcode to be backed up, if so, recovering the lost microcode based on the data check value and the microcode to be backed up.
Preferably, after storing the microcode to be backed up and the data check value in different NANDs, the method further includes:
and judging whether the data check value is lost in the NAND storing the data check value, if so, recovering the lost data check value based on the microcode in the NAND storing the microcode to be backed up.
An SSD microcode backup system comprising:
the first acquisition module is used for acquiring the microcode to be backed up in the SSD;
the second acquisition module is used for acquiring the data check value of the microcode to be backed up;
and the first storage module is used for storing the microcode to be backed up and the data check value into different NAND.
An SSD microcode backup device comprising:
a memory for storing a computer program;
a processor for implementing the steps of any of the above-described SSD microcode backup methods when executing the computer program.
A computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of any of the SSD microcode backup methods described above.
According to the SSD microcode backup method, the microcode to be backed up in the SSD is obtained; acquiring a data check value of a microcode to be backed up; and storing the microcode to be backed up and the data check value into different NAND. In the SSD microcode backup method provided by the application, after the microcode to be backed up in the SSD is obtained, the data check value of the microcode to be backed up is obtained, and the length of the data check value is shorter than that of the microcode to be backed up, so that after the data check value is stored in the NAND, the occupied resources are less than that of the microcode to be backed up. The SSD microcode backup system, the SSD microcode backup equipment and the computer readable storage medium solve the corresponding technical problems.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a first flowchart of a method for SSD microcode backup according to an embodiment of the present disclosure;
fig. 2 is a second flowchart of a method for SSD microcode backup according to an embodiment of the present disclosure;
fig. 3 is a schematic structural diagram of an SSD microcode backup system according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of an SSD microcode backup device according to an embodiment of the present disclosure;
fig. 5 is another schematic structural diagram of an SSD microcode backup device according to an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
In the field of storage technology, SSD (Solid State Drives) is widely used by virtue of its high performance and high shock resistance. However, an uncorrectable read error occurs when electrons inside the SSD are lost, and the core of the SSD is a core chip, which controls the firmware microcode of the SSD, so that the backup of the firmware microcode of the SSD is particularly important. The existing SSD microcode backup method comprises the following steps: the microcode to be backed up is copied, and the original microcode and the copied microcode are stored in different NAND (flash memory devices), so that when the microcode in one NAND is lost, the microcode in the other NAND can be backed up. However, in the existing SSD microcode backup method, the copied microcode needs to occupy an additional NAND, which results in a large resource usage. The SSD microcode backup method can reduce the resource amount used in SSD microcode backup.
Referring to fig. 1, fig. 1 is a first flowchart of an SSD microcode backup method according to an embodiment of the present disclosure.
The SSD microcode backup method provided by the embodiment of the application can comprise the following steps:
step S101: and acquiring the microcode to be backed up in the SSD.
In practical application, the microcode to be backed up in the SSD may be obtained first, the microcode to be backed up may be specified by the outside such as a user, and the specific type, length, etc. of the microcode may be determined according to actual needs.
Step S102: and acquiring a data check value of the microcode to be backed up.
In practical application, after the microcode to be backed up is obtained, a data check value of the microcode to be backed up can be obtained, the data check value refers to a value obtained after a data check operation is performed on the microcode to be backed up, and the data check is a verification operation performed to ensure the integrity of data. In a specific application scenario, data verification may be performed on the microcode to be backed up to obtain a corresponding data verification value, or the data verification value of the microcode to be backed up transmitted from the outside may be received. In addition, the data check value may be a parity check value, a cyclic redundancy check value, or the like, and the type thereof may be determined according to specific needs.
Step S103: and storing the microcode to be backed up and the data check value into different NAND.
In practical application, after the data check value is obtained, the microcode to be backed up and the data check value can be stored in different NAND, so that the condition that the microcode to be backed up and the data check value are lost at the same time can be reduced, and the integrity of the microcode to be backed up is ensured.
In a specific application scenario, a situation that part of the microcode to be backed up is lost exists, at this time, the lost microcode can be recovered by means of the data check value and the microcode to be backed up stored in the NAND, after the microcode to be backed up and the data check value are stored in different NANDs, whether the microcode is lost in the NAND storing the microcode to be backed up can be judged, and if yes, the lost microcode is recovered based on the data check value and the microcode to be backed up.
In a specific application scenario, a situation that a data check value is lost exists, at this time, a lost microcode to be backed up cannot be recovered according to the data check value, in order to recover the lost microcode by means of the data check value under the situation that part of the microcode to be backed up is lost, the data check value can be recovered according to the microcode to be backed up, the microcode to be backed up and the data check value are stored in different NAND, whether the data check value is lost in the NAND in which the data check value is stored can be judged, and if so, the lost data check value is recovered based on the microcode in the NAND in which the microcode to be backed up is stored.
According to the SSD microcode backup method, the microcode to be backed up in the SSD is obtained; acquiring a data check value of a microcode to be backed up; and storing the microcode to be backed up and the data check value into different NAND. In the SSD microcode backup method provided by the application, after the microcode to be backed up in the SSD is obtained, the data check value of the microcode to be backed up is obtained, and the length of the data check value is shorter than that of the microcode to be backed up, so that after the data check value is stored in the NAND, the occupied resources are less than that of the microcode to be backed up.
Referring to fig. 2, fig. 2 is a second flowchart of an SSD microcode backup method according to an embodiment of the present application.
In practical applications, the SSD microcode backup method provided in the embodiment of the present application may include the following steps:
step S201: and acquiring the microcode to be backed up in the SSD.
Step S202: and grouping the microcodes to be backed up to obtain grouped microcodes to be backed up.
In practical application, after the microcode to be backed up is obtained, the microcode to be backed up can be grouped to obtain grouped microcode to be backed up, and then the grouped microcode to be backed up is taken as a unit for backup, so that even if the microcode to be backed up is lost, only part of the grouped microcode to be backed up is lost, the data volume when the microcode to be backed up is lost can be reduced, and the lost microcode to be backed up can be conveniently recovered.
Step S203: and for each group of the microcode to be backed up, calculating the data check value of the group of the microcode to be backed up.
In practical application, after the microcode to be backed up is grouped, the data check value of each group of the microcode to be backed up needs to be calculated, so that the operation of backing up, recovering and the like can be carried out on the microcode to be backed up by taking a group of the grouped microcode to be backed up as a unit.
Step S204: and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs.
In practical application, after each group of microcode to be backed up is obtained through calculation, each group of microcode to be backed up and the data check value corresponding to the group of microcode to be backed up can be stored in different NAND.
In a specific application scenario, in order to further ensure the integrity of the microcode to be backed up, the grouped microcode to be backed up may be subdivided again, so that the data amount of the microcode to be backed up that is lost each time is further reduced, which is convenient for searching and recovering, and then for each group of microcode to be backed up, the step of calculating the data check value of the grouped microcode to be backed up may specifically be: acquiring the number of NAND; for each group of microcode to be backed up, dividing the group microcode to be backed up into sectional microcode to be backed up, wherein the number of the sectional microcode to be backed up is 1 less than that of NAND; calculating a data check value of the fragmented microcode to be backed up; correspondingly, for each group of microcode to be backed up, the step of storing the group microcode to be backed up and the data check value corresponding to the group microcode to be backed up into different NANDs may specifically be: and for each group of grouped to-be-backed-up micro-codes, storing the segmented to-be-backed-up micro-codes corresponding to the grouped to-be-backed-up micro-codes and the data check values corresponding to the segmented to-be-backed-up micro-codes into different NANDs according to the principle that each NAND stores one part of data. Assuming that the length of the microcode to be backed up is 12 and the number of the NANDs is 4, the microcode to be backed up can be equally divided into 4 grouped microcode to be backed up, the length of each grouped microcode to be backed up is 3, then, each group of grouped microcode to be backed up is equally divided into 3 fragmented microcode to be backed up, the length of each fragmented microcode to be backed up is 1, the data check value of each group of grouped microcode to be backed up is calculated, that is, the data check value of 3 fragmented microcode to be backed up in each group of grouped microcode to be backed up is calculated, and finally, the 3 fragmented microcode to be backed up and 1 data check value of each group of grouped microcode to be backed up are stored in different NANDs. Assuming that the 3 fragmented microcode to be backed up is D0, D1, D2, and the data check value of D0, D1, and D2 is P0, D0, D1, D2, and P0 are stored in 4 NANDs, respectively, and one piece of data is stored in one NAND.
In a specific application scenario, in order to avoid a situation that data check values of different groups of to-be-backed-up microcode are all lost after being stored in one NAND, the data check values of the different groups of to-be-backed-up microcode may be stored in different NANDs as much as possible, and for each group of to-be-backed-up microcode, a process of storing the group of to-be-backed-up microcode and the data check value corresponding to the group of to-be-backed-up microcode into different NANDs may specifically be: and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs according to the principle that the data check values stored in one NAND are not adjacent. Taking the data check values a and B of two adjacent groups of microcode to be backed up, the number of NAND is 2 as an example, if the data check value a is stored in the first NAND, the data check value B is stored in the second NAND, if the data check value B is stored in the first NAND, the data check value a is stored in the second NAND, and so on.
The application also provides an SSD microcode backup system which has the corresponding effect of the SSD microcode backup method provided by the embodiment of the application. Referring to fig. 3, fig. 3 is a schematic structural diagram of an SSD microcode backup system according to an embodiment of the present disclosure.
An SSD microcode backup system provided in an embodiment of the present application may include:
a first obtaining module 101, configured to obtain a microcode to be backed up in an SSD;
a second obtaining module 102, configured to obtain a data check value of a microcode to be backed up;
the first storage module 103 is configured to store the microcode to be backed up and the data check value in different NANDs.
In an SSD microcode backup system provided in an embodiment of the present application, the second obtaining module may include:
the first obtaining unit is used for obtaining the parity check value of the microcode to be backed up.
In an SSD microcode backup system provided in an embodiment of the present application, the second obtaining module may include:
the first grouping unit is used for grouping the microcode to be backed up to obtain grouped microcode to be backed up;
the first calculation unit is used for calculating the data check value of each group of microcode to be backed up;
the first storage module may include:
the first storage unit is used for storing the grouped microcode to be backed up and the data check value corresponding to the grouped microcode to be backed up into different NAND for each group of the grouped microcode to be backed up.
In an SSD microcode backup system provided in an embodiment of the present application, a first computing unit may include:
the first acquiring subunit is used for acquiring the number of the NAND;
the first processing subunit is used for dividing each group of microcode to be backed up into the fragmented microcode to be backed up, and the number of the fragmented microcode to be backed up is 1 less than that of NAND; calculating a data check value of the fragmented microcode to be backed up;
the first storage unit may include:
and the first storage subunit is used for storing the segmented to-be-backed-up microcode corresponding to the grouped to-be-backed-up microcode and the data check value corresponding to the segmented to-be-backed-up microcode into different NANDs according to the principle that each NAND stores one piece of data for each group of the grouped to-be-backed-up microcode.
In an SSD microcode backup system provided in an embodiment of the present application, the first storage unit may include:
and the second storage subunit is used for storing the grouped to-be-backed-up microcode and the data check value corresponding to the grouped to-be-backed-up microcode into different NANDs according to the principle that the data check values stored in one NAND are not adjacent to each other for each group of the grouped to-be-backed-up microcode.
The SSD microcode backup system provided in the embodiment of the present application may further include:
and the first judgment module is used for judging whether the microcode to be backed up is lost in the NAND storing the microcode to be backed up after the first storage module stores the microcode to be backed up and the data check value into different NANDs, and if so, recovering the lost microcode based on the data check value and the microcode to be backed up.
The SSD microcode backup system provided in the embodiment of the present application may further include:
and the second judgment module is used for judging whether the data check value is lost in the NAND storing the data check value after the first storage module stores the microcode to be backed up and the data check value into different NANDs, and if so, recovering the lost data check value based on the microcode in the NAND storing the microcode to be backed up.
The application also provides SSD microcode backup equipment and a computer readable storage medium, which have the corresponding effects of the SSD microcode backup method provided by the embodiment of the application. Referring to fig. 4, fig. 4 is a schematic structural diagram of an SSD microcode backup device according to an embodiment of the present disclosure.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer program, and the processor 202 is used to implement the following steps when executing the computer program stored in the memory 201:
acquiring microcode to be backed up in the SSD;
acquiring a data check value of a microcode to be backed up;
and storing the microcode to be backed up and the data check value into different NAND.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: and acquiring the parity check value of the microcode to be backed up.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: grouping the microcodes to be backed up to obtain grouped microcodes to be backed up; for each group of microcode to be backed up, calculating the data check value of the group microcode to be backed up; and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: acquiring the number of NAND; for each group of microcode to be backed up, dividing the group microcode to be backed up into sectional microcode to be backed up, wherein the number of the sectional microcode to be backed up is 1 less than that of NAND; calculating a data check value of the fragmented microcode to be backed up; and for each group of grouped to-be-backed-up micro-codes, storing the segmented to-be-backed-up micro-codes corresponding to the grouped to-be-backed-up micro-codes and the data check values corresponding to the segmented to-be-backed-up micro-codes into different NANDs according to the principle that each NAND stores one part of data.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs according to the principle that the data check values stored in one NAND are not adjacent.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: after the microcode to be backed up and the data check value are stored in different NANDs, whether the microcode is lost in the NAND storing the microcode to be backed up is judged, and if yes, the lost microcode is recovered based on the data check value and the microcode to be backed up.
The SSD microcode backup device provided in the embodiment of the application includes a memory 201 and a processor 22, where the memory 201 is used to store a computer subprogram, and the processor 202 is used to implement the following steps when executing the computer subprogram stored in the memory 201: after the microcode to be backed up and the data check value are stored in different NAND, whether the data check value is lost in the NAND storing the data check value is judged, and if yes, the lost data check value is recovered based on the microcode in the NAND storing the microcode to be backed up.
Referring to fig. 5, another SSD microcode backup device provided in the embodiment of the present application may further include: an input port 203 connected to the processor 202, for transmitting externally input commands to the processor 202; a display unit 204 connected to the processor 202, for displaying the processing result of the processor 202 to the outside; and the communication module 205 is connected with the processor 202 and is used for realizing communication between the SSD microcode backup device and the outside world. The display unit 204 may be a display panel, a laser scanning display, or the like; the communication method adopted by the communication module 205 includes, but is not limited to, mobile high definition link technology (HML), Universal Serial Bus (USB), High Definition Multimedia Interface (HDMI), and wireless connection: wireless fidelity technology (WiFi), bluetooth communication technology, bluetooth low energy communication technology, ieee802.11s based communication technology.
A computer-readable storage medium is provided in an embodiment of the present application, in which a computer program is stored, and when the computer program is executed by a processor, the computer program implements the following steps:
acquiring microcode to be backed up in the SSD;
acquiring a data check value of a microcode to be backed up;
and storing the microcode to be backed up and the data check value into different NAND.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: and acquiring the parity check value of the microcode to be backed up.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: grouping the microcodes to be backed up to obtain grouped microcodes to be backed up; for each group of microcode to be backed up, calculating the data check value of the group microcode to be backed up; and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: acquiring the number of NAND; for each group of microcode to be backed up, dividing the group microcode to be backed up into sectional microcode to be backed up, wherein the number of the sectional microcode to be backed up is 1 less than that of NAND; calculating a data check value of the fragmented microcode to be backed up; and for each group of grouped to-be-backed-up micro-codes, storing the segmented to-be-backed-up micro-codes corresponding to the grouped to-be-backed-up micro-codes and the data check values corresponding to the segmented to-be-backed-up micro-codes into different NANDs according to the principle that each NAND stores one part of data.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs according to the principle that the data check values stored in one NAND are not adjacent.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: after the microcode to be backed up and the data check value are stored in different NANDs, whether the microcode is lost in the NAND storing the microcode to be backed up is judged, and if yes, the lost microcode is recovered based on the data check value and the microcode to be backed up.
An embodiment of the present application provides a computer-readable storage medium, in which a computer subprogram is stored, where the computer subprogram, when executed by a processor, specifically implements the following steps: after the microcode to be backed up and the data check value are stored in different NAND, whether the data check value is lost in the NAND storing the data check value is judged, and if yes, the lost data check value is recovered based on the microcode in the NAND storing the microcode to be backed up.
The computer-readable storage media to which this application relates include Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage media known in the art.
For a description of a relevant part in the SSD microcode backup system, the device and the computer-readable storage medium provided in the embodiments of the present application, refer to a detailed description of a corresponding part in the SSD microcode backup method provided in the embodiments of the present application, and are not described herein again. In addition, parts of the above technical solutions provided in the embodiments of the present application, which are consistent with the implementation principles of corresponding technical solutions in the prior art, are not described in detail so as to avoid redundant description.
It is further noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (8)

1. An SSD microcode backup method, comprising:
acquiring microcode to be backed up in the SSD;
acquiring a data check value of the microcode to be backed up;
storing the microcode to be backed up and the data check value into different NAND;
the obtaining of the data check value of the microcode to be backed up includes:
grouping the microcode to be backed up to obtain grouped microcode to be backed up;
for each group of the microcode to be backed up, calculating a data check value of the microcode to be backed up;
the storing the microcode to be backed up and the data check value into different NAND includes:
for each group of the microcode to be backed up, storing the group of the microcode to be backed up and a data check value corresponding to the group of the microcode to be backed up into different NANDs;
wherein, for each group of the microcode to be backed up, calculating the data check value of the microcode to be backed up includes:
acquiring the number of the NAND;
for each group of the microcode to be backed up, dividing the microcode to be backed up into microcode to be backed up in fragments, wherein the number of the microcode to be backed up in fragments is less than 1 than that of the NAND; calculating a data check value of the partitioned microcode to be backed up;
for each group of the microcode to be backed up, storing the group of the microcode to be backed up and a data check value corresponding to the group of the microcode to be backed up into different NAND comprises:
and for each group of the microcode to be backed up, storing the segmented microcode to be backed up corresponding to the grouped microcode to be backed up and the data check value corresponding to the segmented microcode to be backed up into different NANDs according to the principle that each NAND stores one part of data.
2. The method of claim 1, wherein said obtaining the data check value of the microcode to be backed up comprises:
and acquiring the parity check value of the microcode to be backed up.
3. The method of claim 1, wherein for each group of the grouped microcode to be backed up, storing the grouped microcode to be backed up and data check values corresponding to the grouped microcode to be backed up into different NANDs comprises:
and for each group of the microcode to be backed up, storing the group of the microcode to be backed up and the data check value corresponding to the group of the microcode to be backed up into different NANDs according to the principle that the data check values stored in one NAND are not adjacent.
4. The method of claim 1, wherein after storing the microcode to be backed up and the data check value in different NANDs, further comprising:
and judging whether the microcode is lost in the NAND storing the microcode to be backed up, if so, recovering the lost microcode based on the data check value and the microcode to be backed up.
5. The method of claim 1, wherein after storing the microcode to be backed up and the data check value in different NANDs, further comprising:
and judging whether the data check value is lost in the NAND storing the data check value, if so, recovering the lost data check value based on the microcode in the NAND storing the microcode to be backed up.
6. An SSD microcode backup system, comprising:
the first acquisition module is used for acquiring the microcode to be backed up in the SSD;
the second acquisition module is used for acquiring the data check value of the microcode to be backed up;
the first storage module is used for storing the microcode to be backed up and the data check value into different NANDs;
wherein the second obtaining module comprises:
the first grouping unit is used for grouping the microcode to be backed up to obtain grouped microcode to be backed up;
the first calculation unit is used for calculating a data check value of each group of microcode to be backed up;
the first storage module includes:
the first storage unit is used for storing the grouped microcode to be backed up and data check values corresponding to the grouped microcode to be backed up into different NAND for each group of the grouped microcode to be backed up;
wherein the first calculation unit includes:
a first obtaining subunit, configured to obtain the number of the NANDs;
the first processing subunit is used for dividing each group of the microcode to be backed up into the microcode to be backed up in fragments, and the number of the microcode to be backed up in fragments is less than 1 than that of the NAND; calculating a data check value of the partitioned microcode to be backed up;
the first storage unit includes:
and the first storage subunit is used for storing the segmented microcode to be backed up corresponding to the grouped microcode to be backed up and the data check value corresponding to the segmented microcode to be backed up into different NANDs according to the principle that each NAND stores one data for each group of microcode to be backed up.
7. An SSD microcode backup device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the SSD microcode backup method of any of claims 1 to 5 when executing the computer program.
8. A computer-readable storage medium, having stored thereon a computer program which, when executed by a processor, performs the steps of the SSD microcode backup method of any of claims 1 to 5.
CN201910213428.7A 2019-03-20 2019-03-20 SSD microcode backup method, system, device and computer storage medium Active CN109947598B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910213428.7A CN109947598B (en) 2019-03-20 2019-03-20 SSD microcode backup method, system, device and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910213428.7A CN109947598B (en) 2019-03-20 2019-03-20 SSD microcode backup method, system, device and computer storage medium

Publications (2)

Publication Number Publication Date
CN109947598A CN109947598A (en) 2019-06-28
CN109947598B true CN109947598B (en) 2021-03-23

Family

ID=67010292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910213428.7A Active CN109947598B (en) 2019-03-20 2019-03-20 SSD microcode backup method, system, device and computer storage medium

Country Status (1)

Country Link
CN (1) CN109947598B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017000793A1 (en) * 2015-06-30 2017-01-05 芋头科技(杭州)有限公司 Voice instruction-based rapid positioning and photographing method and photographing system
CN107608624A (en) * 2017-08-11 2018-01-19 记忆科技(深圳)有限公司 A kind of method for lifting solid state hard disc performance
CN107885614A (en) * 2017-11-23 2018-04-06 昌微系统科技(上海)有限公司 A kind of data processing method and data processing equipment based on memory
CN108647117A (en) * 2018-04-26 2018-10-12 郑州云海信息技术有限公司 A kind of method of data backup, main system, equipment and computer readable storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8935476B2 (en) * 2012-01-17 2015-01-13 International Business Machines Corporation Managing caching of extents of tracks in a first cache, second cache and storage
CN104978534A (en) * 2014-04-11 2015-10-14 大陆汽车车身电子系统(芜湖)有限公司 Method and system for preventing vehicle mileage tampering
CN107665097B (en) * 2017-08-22 2021-02-23 深圳市硅格半导体有限公司 Method and device for partitioning solid state disk and computer readable storage medium
CN108810063B (en) * 2017-11-21 2021-01-15 北京大学深圳研究生院 Method, system and medium for safely distributing and repairing data in multi-cloud storage environment
CN109032513B (en) * 2018-07-16 2020-08-25 山东大学 RAID (redundant array of independent disks) architecture based on SSD (solid State disk) and HDD (hard disk drive) and backup and reconstruction methods thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017000793A1 (en) * 2015-06-30 2017-01-05 芋头科技(杭州)有限公司 Voice instruction-based rapid positioning and photographing method and photographing system
CN107608624A (en) * 2017-08-11 2018-01-19 记忆科技(深圳)有限公司 A kind of method for lifting solid state hard disc performance
CN107885614A (en) * 2017-11-23 2018-04-06 昌微系统科技(上海)有限公司 A kind of data processing method and data processing equipment based on memory
CN108647117A (en) * 2018-04-26 2018-10-12 郑州云海信息技术有限公司 A kind of method of data backup, main system, equipment and computer readable storage medium

Also Published As

Publication number Publication date
CN109947598A (en) 2019-06-28

Similar Documents

Publication Publication Date Title
US8650463B2 (en) Solid state drive and method of controlling an error thereof
US9195541B2 (en) Controlling nonvolatile memory device and nonvolatile memory system
US10860447B2 (en) Database cluster architecture based on dual port solid state disk
CN105206306A (en) Method of Handling Error Correcting Code in Non-volatile Memory and Non-volatile Storage Device Using the Same
WO2012140695A1 (en) Storage control apparatus and error correction method
US11210169B2 (en) Data storage method, apparatus, and system
CN112513804B (en) Data processing method and device
CN107766180B (en) Storage medium management method and device and readable storage medium
EP3196767B1 (en) Method for writing data into flash memory device, flash memory device and storage system
US9619145B2 (en) Method relating to configurable storage device and adaptive storage device array
US20170192895A1 (en) Method and apparatus for expanding cache size for cache array
CN109491606B (en) Full flash memory space management method, system, equipment and computer medium
CN106201340B (en) Data storage method, storage device and electronic device
CN111190775A (en) OSD (on Screen display) replacing method, system, equipment and computer readable storage medium
CN110442298B (en) Storage equipment abnormality detection method and device and distributed storage system
US8966344B2 (en) Data protecting method, memory controller and memory storage device
US9594629B2 (en) Data error correction from cached error correction information
CN113489570A (en) Data transmission method, device and equipment for PCIe link
CN109947598B (en) SSD microcode backup method, system, device and computer storage medium
CN105354107A (en) Data transmission method and system for NOR Flash
CN111399857A (en) FRU data burning method, system, equipment and computer storage medium
CN115129509A (en) Data transmission method, device and medium
US20200293196A1 (en) Compression of page of data blocks and data integrity fields for the data blocks for storage in storage device
US11500721B2 (en) Solid-state disk and reading and writing method thereof
CN114327258A (en) Solid state disk processing method, system, equipment and computer storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant