SSD bad block remapping method and device and computer equipment

By reading and querying remapping tables in SSD, the problem of low efficiency of bad block remapping management in SSD is solved, and fast query and efficient processing of SSD read and write operations are realized, and the read and write performance of SSD is improved.

CN119576807APending Publication Date: 2025-03-07SUZHOU UNIONMEMORY INFORMATION SYST LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411618644.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-13
Publication Date
2025-03-07

AI Technical Summary

Technical Problem

How to efficiently implement the management of bad block remapping in SSD to improve the read and write efficiency of SSD.

Method used

A method of remapping of the bad block of SSD is adopted, including reading the first-level remapping table and the second-level remapping table when the SSD is powered on, querying the first-level remapping table to determine whether the super block has physical block remapping, and querying the location of the physical block remapping from the second-level remapping table based on the summary information in the first-level remapping table to obtain the location of the physical block remapping, and performing read and write operations.

Benefits of technology

By quickly querying the primary remapping table and querying the secondary remapping table when necessary, it realizes fast query of remapping bad blocks, improving the read and write efficiency and performance of SSD.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119576807A_ABST
    Figure CN119576807A_ABST
Patent Text Reader

Abstract

The invention provides an SSD bad block remapping method and device and computer equipment, and the method comprises the steps: reading a first-level remapping table and a second-level remapping table from an NAND to an SSD when the SSD is powered on; wherein remapping summary information of each super block is recorded in the primary remapping table, and remapping detailed information of each super block is recorded in the secondary remapping table; when a read-write instruction of a host is received, inquiring the first-level remapping table to judge whether physical block remapping exists in the super block needing to be read and written currently or not; if the super block has physical block remapping in the first-level remapping table, querying and obtaining the position of physical block remapping from the second-level remapping table according to summary information recorded in the first-level remapping table; and performing read-write operation according to the remapping position of the physical block. The method has the beneficial effects that the remapping bad block can be quickly queried on the basis of small memory overhead, so that the read-write efficiency is improved, and the read-write performance of the SSD is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of SSD technology, and in particular to an SSD bad block remapping method, device and computer equipment. Background Art

[0002] SSD (solid state drive) has been widely used in various occasions. Currently in the PC market, it has gradually replaced the traditional HDD, providing users with a better experience in terms of reliability and performance.

[0003] The storage medium of SSD is NAND. The independent concurrent unit of NAND is DIE / Plane, the erase unit within it is the physical block (Block); the smallest read and write unit is the physical page (Page); each DIE / Plane has multiple blocks; and each block has multiple physical pages.

[0004] Due to the process characteristics of NAND, there are multiple bad blocks under each DIE / Plane when it leaves the factory, which cannot be used to store data; and in order to maximize the read and write concurrency, as many good blocks as possible need to be pieced together into a concurrent unit (super block, one good block under each DIE / Plane, forming the current write point). The distribution of bad blocks under each DIE / Plane is random, so in order to achieve this goal, the bad blocks need to be remapped to ensure that the data is newly written into as many good blocks as possible in a concurrent unit.

[0005] Different bad block remapping algorithms have different costs. How to efficiently manage bad block remapping is a key design factor in SSDs. Summary of the invention

[0006] The technical problem to be solved by the present invention is to provide a SSD bad block remapping method, device and computer equipment, aiming to improve the reading and writing efficiency of the SSD.

[0007] In order to solve the above technical problems, the technical solution adopted by the present invention is: a SSD bad block remapping method, comprising:

[0008] When the SSD is powered on, the first-level remapping table and the second-level remapping table are read from the NAND to the SSD; wherein the first-level remapping table records the remapping summary information of each super block, and the second-level remapping table records the remapping detailed information of each super block;

[0009] When receiving a read or write command from the host, query the first-level remapping table to determine whether there is a physical block remapping for the super block currently to be read or written;

[0010] If the super block has physical block remapping in the first-level remapping table, the location of the physical block remapping is queried from the second-level remapping table according to the summary information recorded in the first-level remapping table;

[0011] Read and write operations are performed based on the location of the physical block remapping.

[0012] Furthermore, in the first-level remapping table, the remapping summary information includes the number of each super block, whether there are bad blocks in the physical blocks of each super block, and the address of the bad blocks stored in the second-level remapping table.

[0013] Furthermore, in the remapping summary information, the number of each super block is represented by an array index, and whether there is a bad block in each physical block of the super block and the address of the bad block stored in the secondary remapping table are represented by an array value.

[0014] Furthermore, in the secondary remapping table, the remapping detailed information includes the DIEs that need to be remapped in each super block and the physical block addresses to which the DIEs that need to be remapped point after being remapped.

[0015] Furthermore, the secondary remapping table adopts a compressed storage method with variable word length, and only records the information of the DIE that is remapped in each super block.

[0016] Furthermore, if there is no physical block remapping for the super block in the first-level remapping table, the current super block can be directly read and written.

[0017] Furthermore, the SSD bad block remapping method further includes:

[0018] In the SSD mass production phase, the first-level remapping table and the second-level remapping table are generated according to the bad block status of each DIE in the SSD;

[0019] The primary remapping table and the secondary remapping table are stored in NAND.

[0020] The present invention also provides an SSD bad block remapping device, comprising:

[0021] A mapping table reading module is used to read the first-level remapping table and the second-level remapping table from the NAND to the SSD when the SSD is powered on; wherein the first-level remapping table records the remapping summary information of each super block, and the second-level remapping table records the remapping detailed information of each super block;

[0022] A first query module is used to query the first-level remapping table to determine whether there is a physical block remapping for the super block currently required to be read or written when receiving a read or write instruction from the host;

[0023] A second query module is used for querying and obtaining the location of the physical block remapping from the secondary remapping table according to the summary information recorded in the primary remapping table if the super block has a physical block remapping in the primary remapping table;

[0024] The read / write operation module is used to perform read / write operations according to the position of the physical block remapping.

[0025] The present invention also provides a computer device, comprising a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the SSD bad block remapping method as described in any one of the above items is implemented.

[0026] The present invention further provides a storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the SSD bad block remapping method as described in any one of the above items can be implemented.

[0027] The beneficial effect of the present invention is that when the SSD performs read and write operations, it first quickly queries from the first-level remapping table whether the super block currently being read and written exists remapping. If and only if the super block currently being read and written exists remapping, it queries the specific location of the super block remapping from the second-level remapping table. It can realize fast query of remapped bad blocks based on relatively small memory overhead, thereby improving read and write efficiency and improving the read and write performance of the SSD. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] The specific structure of the present invention is described in detail below in conjunction with the accompanying drawings.

[0029] Figure 1 This is a flow chart of a method for remapping bad blocks of an SSD according to an embodiment of the present invention;

[0030] Figure 2 A block diagram of an SSD bad block remapping device according to an embodiment of the present invention;

[0031] Figure 3 A schematic diagram of the structure of a remapping table according to an embodiment of the present invention;

[0032] Figure 4 A schematic block diagram of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0033] 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 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.

[0034] It should be understood that when used in this specification and the appended claims, the terms "include" and "comprises" indicate the presence of described features, integers, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.

[0035] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in the specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.

[0036] It should be further understood that the term "and / or" used in the present description and the appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0037] like Figure 1 As shown, the first embodiment of the present invention is: a SSD bad block remapping method, comprising:

[0038] S10, when the SSD is powered on, the first-level remapping table and the second-level remapping table are read from the NAND to the SSD; wherein the first-level remapping table records the remapping summary information of each super block, and the second-level remapping table records the remapping detailed information of each super block;

[0039] S20, when receiving a read / write instruction from the host, querying the first-level remapping table to determine whether there is a physical block remapping for the super block currently to be read / written;

[0040] S30, if the super block has physical block remapping in the first-level remapping table, query the second-level remapping table for the location of the physical block remapping according to the summary information recorded in the first-level remapping table;

[0041] S40, performing read and write operations according to the remapped position of the physical block.

[0042] Among them, in the first-level remapping table, the remapping summary information includes the number of each super block, whether there is a bad block in the physical block of each super block, and the address where the bad block is stored in the second-level remapping table.

[0043] like Figure 3 As shown, in the remapping summary information, the number of each super block is represented by an array index, and whether there is a bad block in the physical block of each super block and the address of the bad block stored in the secondary remapping table are represented by an array value.

[0044] Array index: It is the super block number, corresponding to each Super Block in turn;

[0045] Array value: can be divided into the following scenarios:

[0046] -0xFFFFFFFF, indicating that there is no remapping information in the super block (all blocks are good)

[0047] -0xDEADDEAD, indicating that all blocks in the super block are bad blocks (the initial position may be a bad block, or the bad blocks in other positions may be remapped to this physical block)

[0048] -Other values ​​(0 / 4 / …) indicate the storage location (offset) of the superblock’s remapping details in the secondary table.

[0049] Among them, in the secondary remapping table, the remapping detailed information includes the DIEs that need to be remapped in each super block and the physical block addresses to which the DIEs that need to be remapped point after remapping.

[0050] The secondary remapping table adopts a compressed storage method with variable word length and only records the information of the DIE that is remapped in each super block.

[0051] The secondary remap table (Secondary_Remap_Table) is used to record the remapping details of each super block.

[0052] a) This table stores a list of remapping details (remap_entry) of the relevant superblocks: remap_entry 0 / 1…

[0053] b) The offset of the first-level remapping table indicates the starting position of the remap_entry remapping detailed information of the corresponding super block.

[0054] c) A compressed storage method is used to record only the information of the actual remap. Therefore, each remap_entry is variable length. For example, remap_entry 0 occupies 2 WORDs (4 bytes); and remap_entry 1 occupies 3 WORDs (6 bytes).

[0055] d) Each remap_entry consists of the following fields.

[0056] The first WORD represents die_remap_bitmap, from bit 0 to bit 15, which physical blocks DIE 0 to DIE 15 in the corresponding superblock need to be remapped (if it is 1, it means remapping is required, if it is 0, it means no remapping is required);

[0057] Starting from the second WORD (variable length), it indicates the physical block location pointed to by the DIE that needs to be remapped after remapping (the number of WORD descriptions is the number of dies that are remapped in the super block).

[0058] e) Taking remap_entry 0 as an example, it includes two WORDs, die_remap_bitmap is 0x2, bit1 is 1, indicating that the physical block corresponding to die 1 needs to be remapped; 398, indicating that the physical block of DIE 1 is remapped to physical block 398 in the super block.

[0059] f) Taking remap_entry 1 as an example, it includes three WORDs, die_remap_bitmap is 0xC, bit2 and 3 are 1, indicating that the physical blocks corresponding to die 2 and 3 need to be remapped; the subsequent 399 / 399 indicates that in this super block, the physical block of DIE 2 is remapped to physical block 399 (DIE2), and the physical block of DIE 3 is also remapped to physical block 399 (DIE3).

[0060] In this solution, it is possible to quickly query whether there is a remapping based on the first-level remapping table. If and only if there is a remapping, the remap_entry in the second-level remapping table is queried based on its value as an offset. In remap_entry, the first WORD can be used to query whether the corresponding DIE has a remapping. If so, the remapped value can be obtained nearby.

[0061] In this process, the remap table uses compressed storage to store only the information that really needs to be remapped. At runtime, only two accesses are needed to get the remapped value, and both are linear accesses (the maximum value of the remap entry is limited and can be read from the memory at one time), which is consistent with the behavior of hardware access, so hardware acceleration can be used to improve performance.

[0062] In this scheme, when the SSD performs read and write operations, it first quickly queries the first-level remapping table to see whether the super block currently being read or written has been remapped. If and only if the super block currently being read or written has been remapped, it queries the second-level remapping table for the specific location of the super block remapping. This can achieve fast query of remapped bad blocks based on a small memory overhead, thereby improving read and write efficiency and improving the read and write performance of the SSD.

[0063] Internal components of SSD:

[0064] DIE: A unit that can operate independently and concurrently;

[0065] Block: An independently erasable unit. After the data at each physical location is written, the entire block must be erased before the next write.

[0066] Page: reading and writing unit;

[0067] Super Block: Each SSD has multiple DIEs inside. Physical blocks with the same number in each DIE form a super block, which is used for concurrent writing when writing data to improve performance.

[0068] In a specific embodiment, if there is no physical block remapping for the super block in the first-level remapping table, the read and write operations can be performed directly on the current super block.

[0069] In this embodiment, there is no physical block remapping in the first-level remapping table of the super block, which means that there is no bad block in the current super block and the read and write operations can be performed directly.

[0070] In a specific embodiment, the SSD bad block remapping method further includes:

[0071] In the SSD mass production phase, the first-level remapping table and the second-level remapping table are generated according to the bad block status of each DIE in the SSD;

[0072] The primary remapping table and the secondary remapping table are stored in NAND.

[0073] In this embodiment, when the SSD is produced, a primary remapping table and a secondary remapping table are generated according to the bad block status of each DIE in the SSD, so that bad blocks can be avoided during subsequent reading and writing of the SSD.

[0074] The present invention also provides another embodiment: a SSD bad block remapping method, comprising the steps of:

[0075] 4.1) In the SSD mass production phase, the first-level remapping table and the second-level remapping table are generated according to the bad block status of each DIE;

[0076] 4.2) Storing the primary remapping table and the secondary remapping table in NAND;

[0077] 4.3) SSD usage: power on;

[0078] 4.4) Read the primary and secondary bad block remapping tables from NAND to SSD memory;

[0079] 4.5) Wait for host read and write commands;

[0080] 4.6) Is it a write command?

[0081] If yes, continue with 4.7;

[0082] If not, jump to 4.9;

[0083] 4.7) Whether the current super block has been written;

[0084] If yes, continue with 4.8;

[0085] If not, jump to 4.9;

[0086] 4.8) Allocate a new available super block (s_blk_x), and in the primary remap table Primary_Remap_Table[s_blk_x]!=0xDEADDEAD (not all bad blocks);

[0087] 4.9) Allocate and query NAND physical storage addresses for current read and write, including: cur_s_blk_idx, cur_die_idx, cur_page_idx;

[0088] 4.10) Query Primary_Remap_Table[cur_s_blk_idx] in the primary remapping table;

[0089] 4.11) Is it 0xFFFFFFFF?

[0090] If yes, continue with 4.12;

[0091] If not, jump to 4.13;

[0092] 4.12) There is no bad block remapping in the super block, and the corresponding cur_die_idx / cur_blk_idx can be read and written directly;

[0093] Jump to 4.19;

[0094] 4.13) Use Primary_Remap_Table[cur_s_blk_idx] as the offset, recorded as offset, to access the secondary remapping table Secondary_Remap_Table;

[0095] 4.14) Parse the remap_entry starting from Secondary_Remap_Table[offset[, and determine whether the corresponding die bit is 0 according to remap_entry.die_remap_bitmap and cur_die_idx;

[0096] If yes, continue with 4.15;

[0097] If not, jump to 4.16;

[0098] 4.15) If the corresponding cur_die_idx bit in die_remap_bitmap is 0, it means that there is no remapping, and the corresponding cur_die_idx / cur_blk_idx can be directly read and written;

[0099] Jump to 4.19;

[0100] 4.16) indicates that the corresponding die has remap, then find the offset of cur_die_idx in remap_entry according to remap_entry.die_remap_bitmap and cur_die_idx;

[0101] 4.17) Get the physical block blk_idx_remapped after cur_blk_idx is remapped in cur_die_idx;

[0102] 4.18) Use cur_die_idx / blk_idx_remapped to initiate NAND read and write operations;

[0103] 4.19) Complete the current operation and jump to 4.5.

[0104] like Figure 2 As shown, an embodiment of the present invention further provides an SSD bad block remapping device, comprising:

[0105] The mapping table reading module 10 is used to read the primary remapping table and the secondary remapping table from the NAND to the SSD when the SSD is powered on; wherein the primary remapping table records the remapping summary information of each super block, and the secondary remapping table records the remapping detailed information of each super block;

[0106] The first query module 20 is used to query the first-level remapping table to determine whether there is a physical block remapping for the super block currently to be read or written when receiving a read or write instruction from the host;

[0107] A second query module 30 is configured to query and obtain the location of the physical block remapping from the secondary remapping table according to the summary information recorded in the primary remapping table if there is a physical block remapping in the primary remapping table for the super block;

[0108] The read / write operation module 40 is used to perform read / write operations according to the remapped position of the physical block.

[0109] It should be noted that those skilled in the art can clearly understand that the specific implementation process of the above-mentioned SSD bad block remapping device can refer to the corresponding description in the aforementioned method embodiment, and for the convenience and brevity of description, it will not be repeated here.

[0110] The above-mentioned SSD bad block remapping device can be implemented in the form of a computer program. The computer program can be used in the following manner: Figure 4 Runs on the computer device shown.

[0111] See also Figure 4 , Figure 4 5 is a schematic block diagram of a computer device provided in an embodiment of the present application. The computer device 500 may be a terminal or a server, wherein the terminal may be an electronic device with communication functions such as a smart phone, a tablet computer, a laptop computer, a desktop computer, a personal digital assistant, and a wearable device. The server may be an independent server or a server cluster composed of multiple servers.

[0112] See also Figure 4 The computer device 500 includes a processor 502 , a memory and a network interface 505 connected via a system bus 501 , wherein the memory may include a non-volatile storage medium 503 and an internal memory 504 .

[0113] The non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032. The computer program 5032 includes program instructions, and when the program instructions are executed, the processor 502 can execute a SSD bad block remapping method.

[0114] The processor 502 is used to provide computing and control capabilities to support the operation of the entire computer device 500 .

[0115] The internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503. When the computer program 5032 is executed by the processor 502, the processor 502 can execute a SSD bad block remapping method.

[0116] The network interface 505 is used to communicate with other devices over the network. Figure 4 The structure shown in the figure is merely a block diagram of a portion of the structure related to the solution of the present application, and does not constitute a limitation on the computer device 500 to which the solution of the present application is applied. The specific computer device 500 may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0117] The processor 502 is used to run a computer program 5032 stored in the memory to implement the SSD bad block remapping method as described above.

[0118] It should be understood that in the embodiment of the present application, the processor 502 may be a central processing unit (CPU), and the processor 502 may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0119] It can be understood by those skilled in the art that all or part of the processes in the method for implementing the above embodiment can be completed by instructing the relevant hardware through a computer program. The computer program includes program instructions, and the computer program can be stored in a storage medium, which is a computer-readable storage medium. The program instructions are executed by at least one processor in the computer system to implement the process steps of the embodiment of the above method.

[0120] Therefore, the present invention also provides a storage medium. The storage medium may be a computer-readable storage medium. The storage medium stores a computer program, wherein the computer program includes program instructions. When the program instructions are executed by a processor, the processor executes the SSD bad block remapping method as described above.

[0121] The storage medium may be a USB flash drive, a mobile hard disk, a read-only memory (ROM), a magnetic disk, or an optical disk, etc., which are computer-readable storage media that can store program codes.

[0122] Those of ordinary skill in the art will 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 terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can 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.

[0123] In the several embodiments provided by the present invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of each unit is only a logical function division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0124] The steps in the method of the embodiment of the present invention can be adjusted in order, combined and deleted according to actual needs. The units in the device of the embodiment of the present invention can be combined, divided and deleted according to actual needs. In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0125] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a storage medium. Based on this 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, including a number of instructions for a computer device (which can be a personal computer, terminal, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention.

[0126] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed by the present invention, and these modifications or replacements should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A method for remapping bad blocks of an SSD, characterized in that: include: When the SSD is powered on, the first-level remapping table and the second-level remapping table are read from the NAND to the SSD; wherein the first-level remapping table records the remapping summary information of each super block, and the second-level remapping table records the remapping detailed information of each super block; When receiving a read or write command from the host, query the first-level remapping table to determine whether there is a physical block remapping for the super block currently to be read or written; If the super block has physical block remapping in the first-level remapping table, the location of the physical block remapping is queried from the second-level remapping table according to the summary information recorded in the first-level remapping table; Read and write operations are performed based on the location of the physical block remapping.

2. The SSD bad block remapping method according to claim 1, characterized in that: In the first-level remapping table, the remapping summary information includes the number of each super block, whether there is a bad block in the physical block of each super block, and the address of the bad block stored in the second-level remapping table.

3. The SSD bad block remapping method according to claim 2, characterized in that: In the remapping summary information, the number of each super block is represented by an array index, and whether there is a bad block in each physical block of the super block and the address of the bad block stored in the secondary remapping table are represented by an array value.

4. The SSD bad block remapping method according to claim 1, characterized in that: In the secondary remapping table, the remapping detailed information includes the DIEs that need to be remapped in each super block and the physical block addresses to which the DIEs that need to be remapped point after remapping.

5. The SSD bad block remapping method according to claim 4, characterized in that: The secondary remapping table adopts a compressed storage method with variable word length and only records the information of the DIE that is remapped in each super block.

6. The SSD bad block remapping method according to claim 1, characterized in that: If there is no physical block remapping in the first-level remapping table for the super block, the current super block can be read and written directly.

7. The SSD bad block remapping method according to claim 1, characterized in that: Also includes, In the SSD mass production phase, the first-level remapping table and the second-level remapping table are generated according to the bad block status of each DIE in the SSD; The primary remapping table and the secondary remapping table are stored in NAND.

8. A SSD bad block remapping device, characterized in that: include: A mapping table reading module is used to read the first-level remapping table and the second-level remapping table from the NAND to the SSD when the SSD is powered on; wherein the first-level remapping table records the remapping summary information of each super block, and the second-level remapping table records the remapping detailed information of each super block; A first query module is used to query the first-level remapping table to determine whether there is a physical block remapping for the super block currently required to be read or written when receiving a read or write instruction from the host; A second query module is used for querying and obtaining the location of the physical block remapping from the secondary remapping table according to the summary information recorded in the primary remapping table if the super block has a physical block remapping in the primary remapping table; The read / write operation module is used to perform read / write operations according to the position of the physical block remapping.

9. A computer device, characterized in that: The computer device includes a memory and a processor, the memory stores a computer program, and the processor implements the SSD bad block remapping method according to any one of claims 1 to 7 when executing the computer program.

10. A storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the SSD bad block remapping method according to any one of claims 1 to 7 can be implemented.