CN111694764A - Data reading method of failed solid state disk - Google Patents

Data reading method of failed solid state disk Download PDF

Info

Publication number
CN111694764A
CN111694764A CN202010474125.3A CN202010474125A CN111694764A CN 111694764 A CN111694764 A CN 111694764A CN 202010474125 A CN202010474125 A CN 202010474125A CN 111694764 A CN111694764 A CN 111694764A
Authority
CN
China
Prior art keywords
solid state
state disk
executing
data
judging whether
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.)
Granted
Application number
CN202010474125.3A
Other languages
Chinese (zh)
Other versions
CN111694764B (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.)
Xly Salvationdata Technology Inc
Original Assignee
Xly Salvationdata Technology Inc
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 Xly Salvationdata Technology Inc filed Critical Xly Salvationdata Technology Inc
Priority to CN202010474125.3A priority Critical patent/CN111694764B/en
Publication of CN111694764A publication Critical patent/CN111694764A/en
Application granted granted Critical
Publication of CN111694764B publication Critical patent/CN111694764B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

The invention discloses a data reading method of a failed solid state disk, which is characterized by comprising the following steps of: s100: connecting the solid state disk to the device; s200: whether the solid state disk is normal and ready is judged, if yes, step S300 is executed, otherwise, the process is ended; s300: acquiring first basic information; s400: acquiring basic parameters; s500: whether the microcode of the solid state disk can be uploaded or not, if so, executing the step S600, otherwise, executing the step S700; s600: uploading a microcode of the solid state disk, acquiring an unlocking mark, and executing the step S800; s700: checking the first basic information, judging whether the checking is passed, if so, executing the step S800, otherwise, ending the process; s800: whether the data of the solid state disk is read by adopting an internal decoding mode is judged, if so, the step S900 is executed, otherwise, the step SA00 is executed; s900: addressing the physical address of the current sector by adopting internal decoding and reading data, and executing step SC 00; SA 00: creating a decoding table file; SB 00: the physical address of the current sector is addressed and the data is read.

Description

Data reading method of failed solid state disk
Technical Field
The invention belongs to the field of information security technology and data recovery, relates to a method for accessing a failed solid state disk, and particularly relates to a data reading method for the failed solid state disk.
Background
In the fields of information security technology and data recovery, the capacity of hard disks is increasing and the usage of hard disks is expanding. Meanwhile, the shipment volume of hard disk drives HDD type hard disks is continuously reduced, and the shipment volume of solid state drives SSD is continuously increased. Since 2010, the Solid State Disk (SSD) shipment starts to increase rapidly, and the increase rate is kept more than 10% for nine consecutive years: the increase rate in 2015 is 30.4%, and the increase rate in 2018 Solid State Disk (SSD) output volume is 37.2%; in 2020, the Solid State Disk (SSD) shipment is expected to increase to more than 2 hundred million pieces.
The solid state disk SSD is widely used because of its high read/write speed. With the continuous increase of the Solid State Disk (SSD) shipment volume, more and more problems appear. The failure is affected not only by the number of writes, but also by other conditions. For example, even when the solid state disk SSD is not powered on, data is slowly lost over time; in addition, for every 5 ℃ rise in temperature, the time for which data can be stored is reduced by half. Recently, some published security reports have indicated that some of the solid state drives used by servers and storage products are defective, data is lost on the drives after about 32746 hours of power up, and the data is unrecoverable, which also has very serious consequences.
In the prior art, methods for repairing a solid state disk SSD mainly include methods of firmware repair, chip data reassembly, interface conversion, physical replacement, and the like. However, the prior art has the problem that either the technical solution is too complicated or the replacement fittings are too expensive.
In the prior art, a simple and practical method for accessing a failed solid state disk without extra cost is not available.
Disclosure of Invention
Aiming at the defects of the prior art, the invention provides a data reading method of a fault solid state disk, which realizes the purpose of accessing the fault solid state disk by accessing the data of the solid state disk in a logic address addressing mode through creating a decoding table file or reading the data of the solid state disk in an internal decoding mode. The invention comprises the following steps:
s100: connecting the solid state disk to a device with an SATA interface;
s200: judging whether the solid state disk is normally ready, if so, executing the step S300, otherwise, ending the process;
s300: acquiring first basic information of the solid state disk, wherein the first basic information comprises a manufacturer, a model, an interface type and a disk identifier;
s400: acquiring basic parameters of the solid state disk, including an ID number of a FLASH chip, an estimated capacity, the number of chip blocks, the size of a sector and the size of a page;
s500: judging whether the microcode of the solid state disk can be uploaded, if so, executing the step S600, otherwise, executing the step S700;
s600: uploading the microcode of the solid state disk, acquiring an unlocking mark of the solid state disk, and executing the step S800;
s700: checking the first basic information of the solid state disk, judging whether the checking is passed, if so, executing the step S800, otherwise, ending the process;
s800: judging whether the data of the solid state disk is read by adopting an internal decoding mode, if so, executing a step S900, otherwise, executing a step SA 00;
s900: addressing the physical address of the current sector by adopting internal decoding and reading data, and executing step SC 00;
SA 00: creating a decoding table file: analyzing FLASH chip data of the solid state disk, including scanning management area data of the FLASH chip of the solid state disk, calculating a mapping relation between a physical address and a logical address, and storing the mapping relation to the decoding table file;
SB 00: according to the decoding table file, addressing the physical address of the current sector and reading data;
SC 00: judging whether the sector number corresponding to the current read data is the maximum sector number of the solid state disk, if so, ending the process, otherwise, executing the step SD 00;
SD 00: the next sector number is addressed, which is taken as the current sector number, and step S800 is repeatedly performed.
Preferably, the main board of the device is provided with a SATA interface.
Preferably, the device has a function of converting a non-SATA interface to a SATA interface, and the non-SATA interface includes a USB interface, a PCIE interface, and an IDE interface.
Preferably, the device comprises a computer and an embedded device.
Preferably, the disk manager of the apparatus displays the first basic information of the solid state disk, and then the solid state disk is in normal ready state.
Preferably, the step S600 includes the steps of:
s601: acquiring second basic information of the solid state disk, judging whether the microcode is uploaded successfully, if so, executing step S602, otherwise, exiting the process;
s602: and judging whether the second basic information has an unlocking mark, if so, executing the step S800, and otherwise, exiting the process.
Preferably, the step S700 includes the steps of:
s701: setting one or more input buffer area data, wherein the input buffer area data are used for reading response data of the solid state disk;
s702: sequentially writing one or more input buffer area data into the solid state disk;
s703: reading the response data of the solid state disk;
s704: and judging whether the response data has a mark, if so, executing the step S800, and otherwise, exiting the process.
The method provided by the invention can be used for accessing the fault solid state disk simply and practically without extra cost.
Drawings
FIG. 1 is a general flow diagram of a method provided by the present invention;
FIG. 2 is a flowchart illustrating a method for determining whether the verification passes;
fig. 3 is an exemplary diagram of accessing 0 sectors of data of a solid state disk by means of logical address addressing in another embodiment provided by the present invention.
Detailed Description
Fig. 1 shows a general flow chart of the method provided by the present invention. As shown in fig. 1, the method comprises the following steps:
s100: and connecting the solid state disk to a device with the SATA interface. The device comprises a computer and various embedded devices, wherein the mainboard is provided with an SATA interface and can send instructions to the solid state disk through the SATA interface and receive the response of the solid state disk;
the device can also be a computer and various embedded devices of which the mainboard does not have an SATA interface, but has non-SATA interfaces such as a USB interface and/or a PCIE interface and/or an IDE interface, and the non-SATA interfaces have the function of converting the SATA interface.
In this embodiment, a computer with a SATA interface on a motherboard is used as the device, which will be referred to as a computer hereinafter.
S200: judging whether the solid state disk is normally ready, if so, executing the step S300, otherwise, ending the process;
specifically, the solid state disk is connected to the computer, the disk manager at the computer end is opened, after 5 seconds, if the first basic information of the solid state disk is displayed in the disk manager, the solid state disk is in a normal ready state, and step S300 may be performed, otherwise, the process is ended.
In addition, if the solid state disk can normally accept and respond to the instruction sent by the computer, and the computer can acquire the state information of the solid state disk, it can also be considered that the solid state disk is in a normal ready state.
S300: the method comprises the steps of obtaining first basic information of the solid state disk, wherein the first basic information comprises a manufacturer, a model, an interface type, a disk identifier and the like.
S400: the method comprises the following steps of obtaining basic parameters of the solid state disk, including an ID number of a FLASH chip, an estimated capacity, the number of chip blocks, the size of a sector and the size of a page:
s401: analyzing the ID number, the chip block number, the sector size and the page size of a FLASH chip of the solid state disk, and reading the display capacity of the solid state disk;
s402: judging whether the display capacity is equal to the estimated capacity of the solid state disk, if so, executing the step S500, otherwise, executing the step S403;
s403: and judging whether the display capacity is smaller than 1 gigabyte, if so, executing the step S500, and otherwise, ending the flow. In this embodiment, the display capacity of the solid state disk is 8MB, that is, 8 mbytes, which is smaller than 1 gbyte, step S500 is executed.
S500: and judging whether the microcode of the solid state disk can be uploaded, if so, executing the step S600, otherwise, executing the step S700.
It should be noted that not every solid state disk needs to upload microcode, so that a judgment needs to be performed, and the next operation is performed according to the judgment result.
S600: uploading a microcode of the solid state disk, acquiring an unlocking mark of the solid state disk, and executing the step S800;
step S600 includes the following steps:
s601: acquiring second basic information of the solid state disk, judging whether the microcode is uploaded successfully, if so, executing the step S602, otherwise, exiting the process;
specifically, the second basic information may be obtained according to a second basic information obtaining instruction of the solid state disk, where the second basic information includes an identifier indicating whether the microcode is successfully uploaded.
S602: and judging whether the second basic information has an unlocking mark, if so, executing the step S800, and otherwise, exiting the process.
S700: checking first basic information of the solid state disk, judging whether the checking is passed, specifically, judging whether response data has a mark, if so, executing the step S800, otherwise, ending the process;
fig. 2 shows a specific flowchart for determining whether the verification passes in the method provided by the present invention. As shown in fig. 2, step S700 includes the steps of:
s701: setting one or more input buffer area data, wherein the input buffer area data are used for reading response data of the solid state disk;
in each solid state disk, the data of the input buffer area used for reading the response data of the solid state disk are different, and the data of the input buffer area used for reading the response data of the solid state disk, which correspond to each other, can be searched from the description data of each solid state disk. In this embodiment, there are 3 pieces of input buffer data, which are respectively:
the first time of executing the write command to write in the data of the input buffer area of the solid state disk, the byte length of the write command is 512 bytes, and the data of the input buffer area is as follows:
0b 00 00 00 25 b7 8e 8c 1a 4f b5 2d 0f b3 9a 20
04 d7 6a 8c f9 fa c6 d1 ee 1e e3 8d e3 42 ff 95
d8 66 1b 5e cd 8a 37 26 c2 ae 53 ee b7 d2 6f b6
ac f6 8b 7e a1 1a a8 46 96 3e c4 0e 8b 62 e0 d6
80 86 fc 9e 75 aa 18 67 6a ce 34 2f 5f f2 50 f7
54 16 6d bf 49 3a 89 87 3e 5e a5 4f 33 82 c1 17
28 a6 dd df 1d ca f9 a7 12 ee 15 70 07 12 32 38
fc 35 4e 00 f1 59 6a c8 e6 7d 86 90 db a1 a2 58
d0 c5 be 20 c5 e9 da e8 ba 0d f7 b0 e7 d8 a0 98
a4 55 2f 41 99 79 4b 09 8e 9d 67 d1 83 c1 83 99
78 e5 9f 61 6d 09 bc 29 62 2d d8 f1 57 51 f4 b9
e6 b0 4a d2 00 00 00 00 00 00 00 00 00 00 00 00
be 14 96 b5 23 00 00 00 0a 4d b9 32 ff 70 d5 fa
f4 94 f1 c2 e9 b8 0d 8b de dc 29 53 d3 00 46 1b
c8 24 62 e3 bd 48 7e ab b2 6c 9a 73 a7 90 b6 3b
9c b4 d2 03 91 d8 ee cb 86 fc 0a 94 7b 20 27 5c
70 44 43 24 65 68 5f ec 5a 8c 7b b4 4f b0 97 7c
44 d4 b3 44 39 f8 cf 0c 2e 1c ec d4 23 40 08 9d
18 64 24 65 0d 88 40 2d 02 ac 5c f5 f7 cf 78 bd
ec f3 94 85 e1 17 b1 4d d6 3b cd 15 cb 5f e9 dd
c0 83 05 a6 b5 a7 21 6e aa cb 3d 36 9f ef 59 fe
94 13 76 c6 89 37 92 8e 7e 5b ae 56 73 7f ca 1e
68 a3 e6 e6 00 00 00 00 52 eb 1e 77 47 0f 3b 3f
42 41 52 45 46 4f 4f 54 33 2d 46 41 43 54 4f 52
59 2d 52 4f 4d 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
executing a write command for the second time to write data in an input buffer area of the solid state disk, wherein the byte length of the write command is 512 bytes, and the data in the input buffer area is as follows:
0b 00 00 00 94 69 51 cf 68 f0 9e 40 3c a2 48 97
10 84 20 aa e4 65 53 f3 b8 47 b6 85 8c 29 19 a3
60 0b 7c f0 34 ed de 3d 08 cf 41 8b dc b0 a4 d8
b0 92 07 26 84 74 6a 73 58 56 cd c0 2c 38 30 0e
00 1a 93 5b d4 fb f5 a8 a8 dd 58 f6 7c bf bb 43
50 a1 1e 91 24 83 81 de f8 64 e4 2b cc 46 47 79
a0 28 aa c6 74 0a 0d 14 48 ec 6f 61 1c ce d2 ae
f0 af 35 fc c4 91 98 49 98 73 fb 96 6c 55 5e e4
40 37 c1 31 14 19 24 7f e8 fa 86 cc e7 d8 a0 98
90 be 4c 67 64 a0 af b4 38 82 12 02 0c 64 75 4f
e0 45 d8 9c b4 27 3b ea 88 09 9e 37 5c eb 00 85
98 0f 61 bf 00 00 00 00 00 00 00 00 00 00 00 00
be 14 96 b5 23 00 00 00 28 18 b5 a2 fc f9 17 f0
d0 db 7a 3d a4 bd dd 8a 78 9f 40 d8 4c 81 a3 25
20 63 06 73 f4 44 69 c0 c8 26 cc 0d 9c 08 2f 5b
70 ea 91 a8 44 cc f4 f5 18 ae 57 43 ec 8f ba 90
c0 71 1d de 94 53 80 2b 68 35 e3 78 3c 17 46 c6
10 f9 a8 13 e4 da 0b 61 b8 bc 6e ae 8c 9e d1 fb
60 80 34 49 34 62 97 96 08 44 fa e3 dc 25 5d 31
b007 c0 7e 84 e9 22 cc 58 cb 85 19 2c ad e8 66
00 8f 4b b4 d4 70 ae 01 a8 52 11 4f 7c 34 74 9c
50 16 d7 e9 24 f8 39 37 f8 d9 9c 84 cc bb ff d1
a0 9d 62 1f 00 00 00 00 48 61 28 ba 34 a8 ef c2
42 41 52 45 46 4f 4f 54 33 2d 46 41 43 54 4f 52
59 2d 52 4f 4d 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
and executing a write command for the third time to write data in an input buffer area of the solid state disk, wherein the byte length of the data is 0 byte, and the data in the input buffer area is empty.
S702: sequentially writing one or more input buffer area data into the solid state disk;
in each solid state disk, the write instruction for reading the response data of the solid state disk is different, and the write instruction for reading the response data of the solid state disk corresponding to each write instruction can be searched from the description data of each solid state disk. The number of write instructions in this embodiment is 3, which are:
the first time the write instruction is executed is 0x00,0x01,0x00,0x00,0x00,0xE0,0x30
The second time the write instruction is executed is 0x00,0x01,0x00,0x00,0x00,0xE0,0x30
The third time the write instruction is executed is 0x03,0x46,0x00,0x00,0x00,0xE0,0xEF
Correspondingly, the instructions executed 3 times and the data in the input buffer are respectively as follows:
executing the write command and the input buffer data for the first time:
0x00,0x01,0x00,0x00,0x00,0xE0,0x30,
0b 00 00 00 25 b7 8e 8c 1a 4f b5 2d 0f b3 9a 20
04 d7 6a 8c f9 fa c6 d1 ee 1e e3 8d e3 42 ff 95
d8 66 1b 5e cd 8a 37 26 c2 ae 53 ee b7 d2 6f b6
ac f6 8b 7e a1 1a a8 46 96 3e c4 0e 8b 62 e0 d6
80 86 fc 9e 75 aa 18 67 6a ce 34 2f 5f f2 50f7
54 16 6d bf 49 3a 89 87 3e 5e a5 4f 33 82 c1 17
28 a6 dd df 1d ca f9 a7 12 ee 15 70 07 12 32 38
fc 35 4e 00 f1 59 6a c8 e6 7d 86 90 db a1 a2 58
d0 c5 be 20 c5 e9 da e8 ba 0d f7 b0 e7 d8 a0 98
a4 55 2f 41 99 79 4b 09 8e 9d 67 d1 83 c1 83 99
78 e5 9f 61 6d 09 bc 29 62 2d d8 f1 57 51 f4 b9
e6 b0 4a d2 00 00 00 00 00 00 00 00 00 00 00 00
be 14 96 b5 23 00 00 00 0a 4d b9 32 ff 70 d5 fa
f4 94 f1 c2 e9 b8 0d 8b de dc 29 53 d3 00 46 1b
c8 24 62 e3 bd 48 7e ab b2 6c 9a 73 a7 90 b6 3b
9c b4 d2 03 91 d8 ee cb 86 fc 0a 94 7b 20 27 5c
70 44 43 24 65 68 5f ec 5a 8c 7b b4 4f b0 97 7c
44 d4 b3 44 39 f8 cf 0c 2e 1c ec d4 23 40 08 9d
18 64 24 65 0d 88 40 2d 02 ac 5c f5 f7 cf 78 bd
ec f3 94 85 e1 17 b1 4d d6 3b cd 15 cb 5f e9 dd
c0 83 05 a6 b5 a7 21 6e aa cb 3d 36 9f ef 59 fe
94 13 76 c6 89 37 92 8e 7e 5b ae 56 73 7f ca 1e
68 a3 e6 e6 00 00 00 00 52 eb 1e 77 47 0f 3b 3f
42 41 52 45 46 4f 4f 54 33 2d 46 41 43 54 4f 52
59 2d 52 4f 4d 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
executing the write command and the input buffer data for the second time:
0x00,0x01,0x00,0x00,0x00,0xE0,0x30,
0b 00 00 00 94 69 51 cf 68 f0 9e 40 3c a2 48 97
10 84 20 aa e4 65 53 f3 b8 47 b6 85 8c 29 19 a3
60 0b 7c f0 34 ed de 3d 08 cf 41 8b dc b0 a4 d8
b0 92 07 26 84 74 6a 73 58 56 cd c0 2c 38 30 0e
00 1a 93 5b d4 fb f5 a8 a8 dd 58 f6 7c bf bb 43
50 a1 1e 91 24 83 81 de f8 64 e4 2b cc 46 47 79
a0 28 aa c6 74 0a 0d 14 48 ec 6f 61 1c ce d2 ae
f0 af 35 fc c4 91 98 49 98 73 fb 96 6c 55 5e e4
40 37 c1 31 14 19 24 7f e8 fa 86 cc e7 d8 a0 98
90 be 4c 67 64 a0 af b4 38 82 12 02 0c 64 75 4f
e0 45 d8 9c b4 27 3b ea 88 09 9e 37 5c eb 00 85
98 0f 61 bf 00 00 00 00 00 00 00 00 00 00 00 00
be 14 96 b5 23 00 00 00 28 18 b5 a2 fc f9 17 f0
d0 db 7a 3d a4 bd dd 8a 78 9f 40 d8 4c 81 a3 25
20 63 06 73 f4 44 69 c0 c8 26 cc 0d 9c 08 2f 5b
70 ea 91 a8 44 cc f4 f5 18 ae 57 43 ec 8f ba 90
c0 71 1d de 94 53 80 2b 68 35 e3 78 3c 17 46 c6
10 f9 a8 13 e4 da 0b 61 b8 bc 6e ae 8c 9e d1 fb
60 80 34 49 34 62 97 96 08 44 fa e3 dc 25 5d 31
b0 07 c0 7e 84 e9 22 cc 58 cb 85 19 2c ad e8 66
00 8f 4b b4 d4 70 ae 01 a8 52 11 4f 7c 34 74 9c
50 16 d7 e9 24 f8 39 37 f8 d9 9c 84 cc bb ff d1
a0 9d 62 1f 00 00 00 00 48 61 28 ba 34 a8 ef c2
42 41 52 45 46 4f 4f 54 33 2d 46 41 43 54 4f 52
59 2d 52 4f 4d 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
and executing the write instruction and the input buffer data thereof for the third time:
0x03,0x46,0x00,0x00,0x00,0xE0,0xEF, data buffer empty, byte length 0.
S703: and reading response data of the solid state disk.
And executing a read instruction, wherein the byte length of data of an output buffer area of the read instruction is 512 bytes, and the data is an arbitrary value. The read command and the data of the output buffer area thereof are used for reading the response data of the solid state disk, and the byte length of the response data is 512 bytes.
In this embodiment, the read command is 0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x25, the byte length of the data in the output buffer is 512 bytes, the data is an arbitrary value, and after the execution is completed, the response data of the current solid state disk is read as follows:
0b 00 00 00 94 69 51 cf 68 f0 9e 40 3c a2 48 97
10 84 20 aa e4 65 53 f3 b8 47 b6 85 8c 29 19 a3
60 0b 7c f0 34 ed de 3d 08 cf 41 8b dc b0 a4 d8
b0 92 07 26 84 74 6a 73 58 56 cd c0 2c 38 30 0e
00 1a 93 5b d4 fb f5 a8 a8 dd 58 f6 7c bf bb 43
50 a1 1e 91 24 83 81 de f8 64 e4 2b cc 46 47 79
a0 28 aa c6 74 0a 0d 14 48 ec 6f 61 1c ce d2 ae
f0 af 35 fc c4 91 98 49 98 73 fb 96 6c 55 5e e4
40 37 c1 31 14 19 24 7f e8 fa 86 cc 33 2d f4 a2
90 be 4c 67 64 a0 af b4 38 82 12 02 0c 64 75 4f
e0 45 d8 9c b4 27 3b ea 88 09 9e 37 5c eb 00 85
98 0f 61 bf00 00 00 00 00 00 00 00 00 00 00 00
72 c0 42 ab 23 00 00 00 28 18 b5 a2 fc f9 17 f0
d0 db 7a 3d a4 bd dd 8a 78 9f 40 d8 4c 81 a3 25
20 63 06 73 f4 44 69 c0 c8 26 cc 0d 9c 08 2f 5b
70 ea 91 a8 44 cc f4 f5 18 ae 57 43 ec 8f ba 90
c0 71 1d de 94 53 80 2b 68 35 e3 78 3c 17 46 c6
10 f9 a8 13 e4 da 0b 61 b8 bc 6e ae 8c 9e d1 fb
60 80 34 49 34 62 97 96 08 44 fa e3 dc 25 5d 31
b0 07 c0 7e 84 e9 22 cc 58 cb 85 19 2c ad e8 66
00 8f 4b b4 d4 70 ae 01 a8 52 11 4f 7c 34 74 9c
50 16 d7 e9 24 f8 39 37 f8 d9 9c 84 cc bb ff d1
a0 9d 62 1f 00 00 00 00 48 61 28 ba 34 a8 ef c2
42 41 52 45 46 4f 4f 54 33 2d 46 41 43 54 4f 52
59 2d 52 4f 4d 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
s704: and judging whether the response data has a mark, if so, executing the step S800, and otherwise, exiting the process.
It should be noted that the mark of each solid state disk is different, and the corresponding mark can be searched from the description data of each solid state disk. In this embodiment, the flag is 0x0b 000000.
In this embodiment, the content of the first 4 bytes of the read response data is 0x0b 000000, and the content thereof is determined to be the flag 0x0b 000000, so step S800 is executed.
S800: judging whether the data of the solid state disk is read by adopting an internal decoding mode, if so, executing a step S900, otherwise, executing a step SA 00;
s900: addressing the physical address of the current sector by adopting internal decoding and reading data, namely accessing the data of the current sector of the solid state disk in a logical address addressing mode, and executing step SC 00;
SA 00: creating a decoding table file: analyzing FLASH chip data of the solid state disk, including scanning management area data of a FLASH chip of the solid state disk, calculating a mapping relation between a physical address and a logical address, and storing the mapping relation into a decoding table file;
SB 00: according to the decoding table file, addressing the physical address of the current sector and reading data, namely accessing the current sector data of the solid state disk in a logical address addressing mode;
SC 00: judging whether the sector number corresponding to the current read data is the maximum sector number of the solid state disk, if so, ending the process, otherwise, executing the step SD 00;
SD 00: the next sector number is addressed, and step S800 is repeatedly performed with the next sector number as the current sector number.
Fig. 3 shows an exemplary diagram of accessing 0 sectors of data of a solid state disk by means of logical address addressing in step S900 or step SB00 in another embodiment provided by the present invention.
The method solves the technical problem that no method for accessing the fault solid state disk, which is simple and practical and does not need extra cost, exists in the prior art.
It is to be understood that the invention is not limited to the examples described above, but that modifications and variations are possible to those skilled in the art in light of the above teachings, and that all such modifications and variations are intended to be included within the scope of the invention as defined in the appended claims.

Claims (7)

1. A data reading method of a fault solid state disk is characterized by comprising the following steps:
s100: connecting the solid state disk to a device with an SATA interface;
s200: judging whether the solid state disk is normally ready, if so, executing the step S300, otherwise, ending the process;
s300: acquiring first basic information of the solid state disk, wherein the first basic information comprises a manufacturer, a model, an interface type and a disk identifier;
s400: acquiring basic parameters of the solid state disk, including an ID number of a FLASH chip, an estimated capacity, the number of chip blocks, the size of a sector and the size of a page;
s500: judging whether the microcode of the solid state disk can be uploaded, if so, executing the step S600, otherwise, executing the step S700;
s600: uploading the microcode of the solid state disk, acquiring an unlocking mark of the solid state disk, and executing the step S800;
s700: checking the first basic information of the solid state disk, judging whether the checking is passed, if so, executing the step S800, otherwise, ending the process;
s800: judging whether the data of the solid state disk is read by adopting an internal decoding mode, if so, executing a step S900, otherwise, executing a step SA 00;
s900: addressing the physical address of the current sector by adopting internal decoding and reading data, and executing step SC 00;
SA 00: creating a decoding table file: analyzing FLASH chip data of the solid state disk, including scanning management area data of the FLASH chip of the solid state disk, calculating a mapping relation between a physical address and a logical address, and storing the mapping relation to the decoding table file;
SB 00: according to the decoding table file, addressing the physical address of the current sector and reading data;
SC 00: judging whether the sector number corresponding to the current read data is the maximum sector number of the solid state disk, if so, ending the process, otherwise, executing the step SD 00;
SD 00: the next sector number is addressed, which is taken as the current sector number, and step S800 is repeatedly performed.
2. The method as claimed in claim 1, wherein the device has a SATA interface on a motherboard.
3. The method as claimed in claim 1, wherein the device has a function of converting non-SATA interfaces to SATA interfaces, and the non-SATA interfaces include a USB interface, a PCIE interface, and an IDE interface.
4. The method as claimed in claim 1, wherein the apparatus includes a computer and an embedded device.
5. The method as claimed in claim 1, wherein a disk manager of the apparatus displays the first basic information of the solid state disk, and the solid state disk is in a normal ready state.
6. The method according to claim 1, wherein the step S600 includes the following steps:
s601: acquiring second basic information of the solid state disk, judging whether the microcode is uploaded successfully, if so, executing step S602, otherwise, exiting the process;
s602: and judging whether the second basic information has an unlocking mark, if so, executing the step S800, and otherwise, exiting the process.
7. The method according to claim 1, wherein the step S700 includes the following steps:
s701: setting one or more input buffer area data, wherein the input buffer area data are used for reading response data of the solid state disk;
s702: sequentially writing one or more input buffer area data into the solid state disk;
s703: reading the response data of the solid state disk;
s704: and judging whether the response data has a mark, if so, executing the step S800, and otherwise, exiting the process.
CN202010474125.3A 2020-05-29 2020-05-29 Data reading method of failed solid state disk Active CN111694764B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010474125.3A CN111694764B (en) 2020-05-29 2020-05-29 Data reading method of failed solid state disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010474125.3A CN111694764B (en) 2020-05-29 2020-05-29 Data reading method of failed solid state disk

Publications (2)

Publication Number Publication Date
CN111694764A true CN111694764A (en) 2020-09-22
CN111694764B CN111694764B (en) 2023-03-14

Family

ID=72478816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010474125.3A Active CN111694764B (en) 2020-05-29 2020-05-29 Data reading method of failed solid state disk

Country Status (1)

Country Link
CN (1) CN111694764B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286720A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Method for extracting deleted data after TRIM command is started by solid state disk controlled by SM2246EN
CN112286719A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Data recovery method for solid state disk after TRIM deletion data is started
CN112286717A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Data recovery method after TRIM command is started by solid state disk
CN112527195A (en) * 2020-12-04 2021-03-19 四川效率源信息安全技术股份有限公司 Method for extracting physical data of solid state disk
CN112527700A (en) * 2020-12-04 2021-03-19 四川效率源信息安全技术股份有限公司 Method for realizing defect hard disk isolation based on PCI-E device
CN113360957A (en) * 2021-06-30 2021-09-07 四川效率源信息安全技术股份有限公司 Password extraction method of solid state disk with SM2246EN master control

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101604548A (en) * 2009-03-26 2009-12-16 成都市华为赛门铁克科技有限公司 A kind of solid state hard disc and date storage method
CN103744864A (en) * 2013-12-17 2014-04-23 记忆科技(深圳)有限公司 Method and system for reading and writing cache data and solid state disc thereof
CN106648785A (en) * 2016-12-28 2017-05-10 郑州云海信息技术有限公司 Method and system for designing SSD (Solid State Drives) micro-codes
CN107632943A (en) * 2017-08-30 2018-01-26 记忆科技(深圳)有限公司 A kind of method and solid state hard disc of solid state hard disc data protection
CN107861834A (en) * 2017-11-06 2018-03-30 华中科技大学 A kind of method based on wrong pre-detection skill upgrading solid state hard disc reading performance
CN107872231A (en) * 2016-09-28 2018-04-03 北京忆芯科技有限公司 LDPC interpretation methods and device
US20180307500A1 (en) * 2017-04-24 2018-10-25 Shannon Systems Ltd. Methods for uninstalling ssd (solid-state disk) cards and apparatuses using the same
US20190155692A1 (en) * 2017-10-27 2019-05-23 EMC IP Holding Company LLC Method and device for managing a hybrid storage disk array
CN111164576A (en) * 2018-03-06 2020-05-15 西部数据技术公司 Fault storage device reconstruction method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101604548A (en) * 2009-03-26 2009-12-16 成都市华为赛门铁克科技有限公司 A kind of solid state hard disc and date storage method
CN103744864A (en) * 2013-12-17 2014-04-23 记忆科技(深圳)有限公司 Method and system for reading and writing cache data and solid state disc thereof
CN107872231A (en) * 2016-09-28 2018-04-03 北京忆芯科技有限公司 LDPC interpretation methods and device
CN106648785A (en) * 2016-12-28 2017-05-10 郑州云海信息技术有限公司 Method and system for designing SSD (Solid State Drives) micro-codes
US20180307500A1 (en) * 2017-04-24 2018-10-25 Shannon Systems Ltd. Methods for uninstalling ssd (solid-state disk) cards and apparatuses using the same
CN107632943A (en) * 2017-08-30 2018-01-26 记忆科技(深圳)有限公司 A kind of method and solid state hard disc of solid state hard disc data protection
US20190155692A1 (en) * 2017-10-27 2019-05-23 EMC IP Holding Company LLC Method and device for managing a hybrid storage disk array
CN107861834A (en) * 2017-11-06 2018-03-30 华中科技大学 A kind of method based on wrong pre-detection skill upgrading solid state hard disc reading performance
CN111164576A (en) * 2018-03-06 2020-05-15 西部数据技术公司 Fault storage device reconstruction method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谢长生 等: "基于片内SRAM的固态硬盘转换层设计", 《计算机科学》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286720A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Method for extracting deleted data after TRIM command is started by solid state disk controlled by SM2246EN
CN112286719A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Data recovery method for solid state disk after TRIM deletion data is started
CN112286717A (en) * 2020-10-28 2021-01-29 四川效率源信息安全技术股份有限公司 Data recovery method after TRIM command is started by solid state disk
CN112286720B (en) * 2020-10-28 2023-08-01 四川效率源信息安全技术股份有限公司 Method for extracting deleted data after enabling TRIM command to solid state disk controlled by SM2246EN
CN112286719B (en) * 2020-10-28 2023-08-25 四川效率源信息安全技术股份有限公司 Data recovery method for solid state disk after TRIM deletion data is started
CN112527195A (en) * 2020-12-04 2021-03-19 四川效率源信息安全技术股份有限公司 Method for extracting physical data of solid state disk
CN112527700A (en) * 2020-12-04 2021-03-19 四川效率源信息安全技术股份有限公司 Method for realizing defect hard disk isolation based on PCI-E device
CN112527700B (en) * 2020-12-04 2024-04-12 四川效率源信息安全技术股份有限公司 Method for realizing isolation of defective hard disk based on PCI-E device
CN113360957A (en) * 2021-06-30 2021-09-07 四川效率源信息安全技术股份有限公司 Password extraction method of solid state disk with SM2246EN master control
CN113360957B (en) * 2021-06-30 2022-08-02 四川效率源信息安全技术股份有限公司 Password extraction method of solid state disk with SM2246EN master control

Also Published As

Publication number Publication date
CN111694764B (en) 2023-03-14

Similar Documents

Publication Publication Date Title
CN111694764B (en) Data reading method of failed solid state disk
US7526675B2 (en) Software recovery method for flash media with defective formatting
US7039754B2 (en) Detachably mounted removable data storage device
TWI548990B (en) Memory storage apparatus and method for restoring thereof, memory controller
TWI459396B (en) Data writing and reading method, memory controller and memory storage apparatus
US20100125767A1 (en) Method for testing reliability of solid-state storage medium
TWI459393B (en) Data writing method for a non-volatile memory module, memory controller and memory storage apparatus
TWI438630B (en) Data merging method for non-volatile memory and controller and stoarge apparatus using the same
US9304907B2 (en) Data management method, memory control circuit unit and memory storage apparatus
CN107577549A (en) It is a kind of to store the method for testing for deleting function again
CN111737051B (en) Trim data verification test method, device and system of SSD (solid State disk)
US20080086615A1 (en) Method and Apparatus to Internalize Non-Volatile Data Function for Sector Size Conversion
TWI467590B (en) Data processing method, memory controller, and memory storage device
TWI493341B (en) Memory storage device and repairing method thereof
CN103389941B (en) Storer formatting method, Memory Controller and memory storage apparatus
CN103578566A (en) Memory storage apparatus and restoration method thereof
WO2007083449A1 (en) Nonvolatile storage, nonvolatile storage system, and method of managing nonvolatile storage failure
JP5217452B2 (en) Information processing apparatus and system, and storage area management method and program
CN104239245A (en) Electronic system and operating method
US20110119529A1 (en) Virtual hard disk drive
JP2842837B2 (en) Mirror disk system
CN210776642U (en) Automatic disk splicing device for multiple TF cards
US20110231177A1 (en) Simulating virtual optical disc recorder by using a storage device and method for the same
CN101261599A (en) Method for reading hard disk monitoring information
CN111694763B (en) Method for accessing failed INTEL solid state disk

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