Test method and device of solid state disk, electronic equipment and medium

By performing in-situ testing, connectivity testing, performance testing, ECC testing, and hot-swap functionality testing on solid-state drives (SSDs), the problem of incomplete testing in existing technologies has been solved, enabling more accurate SSD evaluation and storage reliability assessment.

CN118800308BActive Publication Date: 2025-12-16SUMA TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411067278.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-02
Publication Date
2025-12-16
Estimated Expiration
2044-08-02

AI Technical Summary

Technical Problem

Existing technologies for testing solid-state drives (SSDs) are not comprehensive enough, resulting in inaccurate test results and an inability to effectively assess the SSD's suitability.

Method used

By performing in-situ testing on multiple solid-state drive (SSD) interfaces of the test system, obtaining SSD identifiers, and conducting connection tests, performance tests, ECC tests, and hot-swap function tests, a test report is generated.

Benefits of technology

Through multi-dimensional testing, the accuracy and efficiency of solid-state drive testing have been improved, ensuring that only qualified products are used for storage and avoiding data loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118800308B_ABST
    Figure CN118800308B_ABST
Patent Text Reader

Abstract

The application provides a solid state disk testing method, device, electronic equipment and medium. The method comprises: performing in-situ detection on a plurality of solid state disk interfaces of a testing system to obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks, the plurality of target solid state disks being connected with the testing system; performing target testing on the plurality of target solid state disks respectively to obtain a plurality of testing results corresponding to the plurality of target solid state disks; and generating a testing report according to the plurality of solid state disk identifiers and the plurality of testing results. According to the above scheme, the target solid state disk is tested through a plurality of projects, the target solid state disk can be evaluated from multiple dimensions, and the accuracy of testing is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of solid state disks, and particularly relates to a testing method and device for a solid state disk, an electronic device and a medium. BACKGROUND

[0002] Compared with a traditional mechanical hard disk (HDD), a solid state disk (SSD) has significant advantages in speed, durability and energy consumption. With the improvement of production process and further performance improvement of the solid state disk, the solid state disk is widely applied to multiple storage scenes.

[0003] In order to ensure the quality of the solid state disk, after the production of the solid state disk is completed, the solid state disk needs to be tested to avoid the influence of the solid state disk with faults on the use of users.

[0004] In the related art, there is an incomplete problem in the test items for testing the solid state disk, which leads to inaccurate test results, and further leads to the failure to fully evaluate whether the solid state disk is qualified. SUMMARY

[0005] The present application provides a testing method, device, electronic device and medium for a solid state disk to improve the accuracy of testing.

[0006] In a first aspect, the present application provides a testing method for a solid state disk, comprising: performing in-situ detection on a plurality of solid state disk interfaces of a testing system to obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks, the plurality of target solid state disks being connected with the testing system; performing target testing on the plurality of target solid state disks respectively to obtain a plurality of test results corresponding to the plurality of target solid state disks; and generating a test report according to the plurality of solid state disk identifiers and the plurality of test results.

[0007] In a possible implementation, the in-situ detection on the plurality of solid state disk interfaces of the testing system to obtain the plurality of solid state disk identifiers corresponding to the plurality of target solid state disks comprises: receiving an in-situ signal through an inter-integrated circuit bus, the in-situ signal being obtained by a field programmable gate array detecting the plurality of solid state disk interfaces respectively; and performing identification processing on the in-situ signal to obtain the plurality of solid state disk identifiers corresponding to the plurality of target solid state disks.

[0008] In a possible implementation, for any one target solid state disk, the target solid state disk is subjected to a target test to obtain a test result corresponding to the target solid state disk, including: determining current information and standard information of the target solid state disk, and performing a first connection test on the target solid state disk according to the current information and the standard information to obtain a first result, the first result including pass or fail; if the first result is pass, performing a performance test on the target solid state disk to obtain a second result, the second result including pass or fail; if the second result is pass, performing an ECC test on the target solid state disk to obtain a third result, the third result including pass or fail; if the third result is pass, performing a hot plug function test on the target solid state disk to obtain a fourth result, the fourth result including pass or fail; and if the fourth result is pass, determining that the test result includes the first result, the second result, the third result, and the fourth result.

[0009] In a possible implementation, the performance test on the target solid state disk to obtain a second result includes: determining a path of the target solid state disk according to the in-place signal; performing multiple read-write tests on the target solid state disk according to the path, preset unit block information, and a preset file to obtain multiple target write rates and a target read rate, the path being used to indicate a data position of the read-write test, the preset unit block information being used to indicate a data amount of the read-write test, and the preset file containing test data of the read-write test; if the target write rates and the target read rate corresponding to a continuous preset number of read-write tests are both greater than or equal to a standard rate, determining that the second result is pass; and if the target write rate and / or the target read rate corresponding to any one read-write test is less than the standard rate, determining that the second result is fail.

[0010] In a possible implementation, the ECC test on the target solid state disk to obtain a third result includes: obtaining a first write ECC check code and a first read ECC check code corresponding to a first read-write test in the performance test from log information of the target solid state disk; if the first write ECC check code is the same as the first read ECC check code, determining that the third result is pass; if the first write ECC check code is different from the first read ECC check code, performing a second connection test on the target solid state disk to obtain a second connection test result, the second connection test result including pass or fail; if the second connection test result is fail, determining that the third result is fail; and if the second connection test result is pass, determining the third result according to a second write ECC check code and a second read ECC check code corresponding to a second read-write test in the performance test.

[0011] In a possible implementation, the third result is determined according to a second write ECC check code and a second read ECC check code corresponding to the second read-write test in the performance test, including: obtaining the second write ECC check code and the second read ECC check code corresponding to the second read-write test in the performance test from log information of the target solid state disk; if the second write ECC check code is the same as the second read ECC check code, determining that the third result is passed; if the second write ECC check code is different from the second read ECC check code, determining that the third result is failed.

[0012] In a possible implementation, the fourth result is obtained by performing a hot plug function test on the target solid state disk, including: determining a hot plug operation record and a hot plug detection record of the target solid state disk, the hot plug operation record including a plurality of first time instants of operating hot plug, and the hot plug detection record including a plurality of second time instants of detecting hot plug by the test system; if the plurality of second time instants are the same as the plurality of first time instants, determining that the fourth result is passed; if the plurality of second time instants are different from the plurality of first time instants, determining that the fourth result is failed.

[0013] In a second aspect, the present application provides a test device for a solid state disk, including: an identification module, configured to perform in-situ detection on a plurality of solid state disk interfaces of a test system, and obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks, the plurality of target solid state disks being connected with the test system; a test module, configured to perform target tests on the plurality of target solid state disks respectively, and obtain a plurality of test results corresponding to the plurality of target solid state disks; and a generation module, configured to generate a test report according to the plurality of solid state disk identifiers and the plurality of test results.

[0014] In a possible implementation, the identification module is specifically configured to receive an in-situ signal through an inter-integrated circuit bus, the in-situ signal being obtained by performing detection on the plurality of solid state disk interfaces by a field programmable gate array; and the identification module is specifically further configured to perform identification processing on the in-situ signal, and obtain the plurality of solid state disk identifiers corresponding to the plurality of target solid state disks.

[0015] In a possible implementation, for any one target solid state disk, the test module is specifically configured to determine current information and standard information of the target solid state disk, and perform a first connection test on the target solid state disk according to the current information and the standard information, to obtain a first result, the first result including pass or fail; the test module is further configured to, if the first result is pass, perform a performance test on the target solid state disk, to obtain a second result, the second result including pass or fail; the test module is further configured to, if the second result is pass, perform an ECC test on the target solid state disk, to obtain a third result, the third result including pass or fail; the test module is further configured to, if the third result is pass, perform a hot plug function test on the target solid state disk, to obtain a fourth result, the fourth result including pass or fail; and the test module is further configured to, if the fourth result is pass, determine that the test result includes the first result, the second result, the third result, and the fourth result.

[0016] In a possible implementation, the device further includes an execution module configured to determine a path of the target solid state disk according to the in-place signal; the execution module is further configured to perform multiple read-write tests on the target solid state disk according to the path, preset unit block information, and a preset file, to obtain multiple target write rates and a target read rate, the path being used to indicate a data position of the read-write test, the preset unit block information being used to indicate a data amount of the read-write test, and the preset file containing test data of the read-write test; the execution module is further configured to, if the target write rates and the target read rate corresponding to the continuous preset number of read-write tests are all greater than or equal to a standard rate, determine that the second result is pass; and the execution module is further configured to, if the target write rate and / or the target read rate corresponding to any one read-write test is less than the standard rate, determine that the second result is fail.

[0017] In a possible implementation, the apparatus further includes a processing module configured to obtain, from log information of the target solid state disk, a first write ECC check code and a first read ECC check code corresponding to a first read-write test in the performance test; the processing module is further configured to determine that the third result is passed if the first write ECC check code is the same as the first read ECC check code; the processing module is further configured to perform a second connection test on the target solid state disk to obtain a second connection test result if the first write ECC check code is different from the first read ECC check code, the second connection test result including pass or fail; the processing module is further configured to determine that the third result is failed if the second connection test result is failed; and the processing module is further configured to determine the third result according to a second write ECC check code and a second read ECC check code corresponding to a second read-write test in the performance test if the second connection test result is passed.

[0018] In a possible implementation, the processing module is specifically configured to obtain, from log information of the target solid state disk, a second write ECC check code and a second read ECC check code corresponding to a second read-write test in the performance test; the processing module is further specifically configured to determine that the third result is passed if the second write ECC check code is the same as the second read ECC check code; and the processing module is further specifically configured to determine that the third result is failed if the second write ECC check code is different from the second read ECC check code.

[0019] In a possible implementation, the apparatus further includes a judgment module configured to determine a hot plug operation record and a hot plug detection record of the target solid state disk, the hot plug operation record including a plurality of first time instants of operating hot plug, and the hot plug detection record including a plurality of second time instants of detecting hot plug by the test system; the judgment module is further configured to determine that the fourth result is passed if the plurality of second time instants are the same as the plurality of first time instants; and the judgment module is further configured to determine that the fourth result is failed if the plurality of second time instants are different from the plurality of first time instants.

[0020] In a third aspect, the present application provides an electronic device, including a processor and a memory connected with the processor in communication; the memory stores computer execution instructions; and the processor executes the computer execution instructions stored in the memory to implement the method in any one of the first aspect.

[0021] In a fourth aspect, the present application provides a computer readable storage medium, wherein the computer readable storage medium stores computer execution instructions, and the computer execution instructions are executed by a processor to perform the method according to any one of the first aspect.

[0022] In a fifth aspect, the present application provides a computer program product, comprising a computer program, and the computer program is executed by a processor to perform the method according to any one of the first aspect.

[0023] The present application provides a solid state disk testing method, device, electronic equipment and medium, the method comprises: in situ detection is carried out to a plurality of solid state disk interfaces of test system, and a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks are obtained, and the plurality of target solid state disks are connected with the test system;Target test is carried out to the plurality of target solid state disks respectively, and a plurality of test results corresponding to the plurality of target solid state disks are obtained;According to the plurality of solid state disk identifiers and the plurality of test results, a test report is generated.The above scheme, the target solid state disk is tested by a plurality of projects, the target solid state disk can be evaluated from a plurality of dimensions, so as to improve the accuracy of the test. BRIEF DESCRIPTION OF DRAWINGS

[0024] The accompanying drawings, which are incorporated into and form part of the specification, illustrate embodiments consistent with the present application and, together with the specification, serve to explain the principles of the application.

[0025] Figure 1 The application scenario of the solid state disk testing method provided by the embodiment of the present application is shown in the figure.

[0026] Figure 2 The flowchart of the solid state disk testing method provided by the embodiment of the present application is shown in the figure.

[0027] Figure 3 The flowchart of the solid state disk testing method provided by the embodiment of the present application is shown in the figure.

[0028] Figure 4 The schematic diagram of the test architecture provided by the embodiment of the present application is shown in the figure.

[0029] Figure 5 The schematic diagram of the performance test provided by the embodiment of the present application is shown in the figure.

[0030] Figure 6 The schematic diagram of the check code provided by the embodiment of the present application is shown in the figure.

[0031] Figure 7 The schematic diagram of the ECC test provided by the embodiment of the present application is shown in the figure.

[0032] Figure 8A structural schematic diagram of a test device of a solid state disk provided by an embodiment of the present application;

[0033] Figure 9 A structural schematic diagram of a test device of a solid state disk provided by an embodiment of the present application;

[0034] Figure 10 A structural schematic diagram of an electronic device provided by an embodiment of the present application.

[0035] The specific embodiments of the present application have been shown through the above-described drawings, and will be described in more detail hereinafter. These drawings and the written description are not intended to restrict the scope of the present application concept in any way, but to illustrate the present application concept to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION

[0036] The exemplary embodiments will be described in detail herein below with reference to the drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of apparatuses and methods consistent with some aspects of the present application as detailed in the appended claims.

[0037] It should be noted that the user information (including but not limited to user equipment information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in the present application are all information and data authorized by the user or authorized by all parties, and the collection, use, processing, transmission, provision, disclosure and application of related data comply with relevant laws, regulations and standards of relevant countries and regions, necessary security measures are taken, public order and good customs are not violated, and appropriate operation portals are provided for users to choose authorization or refusal.

[0038] And the present application involves big data analysis of user information (including but not limited to personal biological characteristics, identity data, consumption data, asset data, electronic terminal operation data, etc.), and uses artificial intelligence technology for automatic decision-making, and based on the automatic decision-making result, a technical solution is made for a decision that has a significant impact on personal rights and interests, and an appropriate operation portal is provided for the user to choose to agree or refuse the automatic decision-making result; if the user chooses to refuse, the expert decision-making process is entered.

[0039] It should be noted that the solid state disk testing method, device, electronic equipment and medium of the present application can be used in the field of solid state disk technology, and can also be used in any field other than solid state disk. The application field of the solid state disk testing method, device, electronic equipment and medium of the present application is not limited.

[0040] Figure 1 An application scenario diagram of a test method of a solid state disk provided by an embodiment of the present application is shown in the figure. In the example of the scenario, the solid state disk is connected to the test system through the interface of the test system, the test system tests the connected solid state disk, and the corresponding test result is obtained.

[0041] In the example of the scenario, after the solid state disk is produced, the qualified products and unqualified products are determined by testing, and only the qualified products are used for storing data, thereby ensuring the reliability of the storage.

[0042] In the related art, if the test items are not comprehensive, the problem that the solid state disk has a fault but is not detected may occur, and if the product is used for storing data, the problem of data loss may occur.

[0043] The test method of the solid state disk provided by the present application aims to solve the above technical problems of the prior art.

[0044] The technical solutions of the present application and how the technical solutions of the present application solve the above technical problems will be described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of the present application will be described below with reference to the drawings.

[0045] Figure 2 A flowchart of a test method of a solid state disk provided by an embodiment of the present application is shown in the figure, and the method includes the following steps:

[0046] S201, in-situ detection is performed on a plurality of solid state disk interfaces of a test system, a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks are obtained, and the plurality of target solid state disks are connected to the test system.

[0047] As an example, the execution subject of this embodiment can be a test system of a solid state disk, and the test system of the solid state disk can be implemented in various ways. For example, it can be a program software, or a medium storing a related computer program, such as a U disk, etc. Alternatively, the device can also be an entity device integrated or installed with a related computer program, such as a chip, a smart terminal, a computer, a server, etc.

[0048] For example, the test system includes a plurality of solid state disk interfaces, which can be connected to a plurality of solid state disks at the same time, and the test system can test a plurality of solid state disks at the same time. It can be understood that testing a plurality of solid state disks at the same time can effectively improve the efficiency of the test.

[0049] Among them, the in-situ detection is used to determine the target solid state disk correctly connected to the test system.

[0050] In combination with the scene example, the solid state disk is connected with the test system through the interface, and the incorrect connection may occur, for example, the solid state disk is not fully inserted into the interface or is inserted reversely, and the solid state disk of this kind of situation can be excluded through the in-place detection to avoid the test error.

[0051] Optionally, the test system generates prompt information according to the in-place detection, and the prompt information includes the interface of the solid state disk which is not correctly connected. The prompt information is used to prompt to reinsert the solid state disk, so as to accurately perform the test.

[0052] S202, target tests are respectively performed on the plurality of target solid state disks to obtain a plurality of test results corresponding to the plurality of target solid state disks.

[0053] The target test includes a connection test, a performance test, an error correction function (ECC) test, and a hot plug function test.

[0054] The plurality of test items evaluate whether the target solid state disk is qualified from a plurality of dimensions.

[0055] The error checking and correction (ECC) function is a technology for protecting data by detecting and automatically correcting errors that may occur in the data storage or transmission process to improve the integrity of the data and the reliability of the system.

[0056] Optionally, the target solid state disk is tested through the plurality of test items in sequence, and if any test item fails, the test is stopped.

[0057] In combination with the scene example, the qualified solid state disk should be qualified in each test item, and any unqualified test item will affect the reliability of the stored data, so if any test item fails, the solid state disk is determined as a unqualified product, and the test does not need to continue, thereby reducing the redundant test and improving the test efficiency.

[0058] S203, a test report is generated according to the plurality of solid state disk identifiers and the plurality of test results.

[0059] The test result corresponding to each solid state disk is sorted and analyzed to obtain the test report.

[0060] Optionally, a test conclusion is obtained through the analysis, and the test report includes the test conclusion.

[0061] Optionally, the test includes visual processing to obtain a visual test report. The visual processing includes, but is not limited to, generating icons or adding interactive elements, etc. It can be understood that through the visual processing, the test results can be intuitively displayed or the interactivity of the test report can be enhanced, thereby assisting the production of the solid state disk and improving the quality of the solid state disk.

[0062] The test method for the solid state disk provided in the embodiments of the present application performs in-situ detection on a plurality of solid state disk interfaces of a test system to obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks, and the plurality of target solid state disks establish connections with the test system; target tests are respectively performed on the plurality of target solid state disks to obtain a plurality of test results corresponding to the plurality of target solid state disks; and a test report is generated according to the plurality of solid state disk identifiers and the plurality of test results. Through the above scheme, the target solid state disk is tested by a plurality of projects, and the target solid state disk can be evaluated from multiple dimensions, thereby improving the accuracy of the test.

[0063] On the basis of any one of the above embodiments, the following will be described in combination with Figure 3 The detailed process of the test of the solid state disk is described.

[0064] Figure 3 A flowchart of a test method for a solid state disk provided in the embodiments of the present application is shown in FIG. 1. As shown in FIG. 1, the method includes the following steps. Figure 3

[0065] In S301, an in-situ signal is received through an inter-integrated circuit bus. The in-situ signal is obtained by detecting a plurality of solid state disk interfaces by a field-programmable gate array.

[0066] The inter-integrated circuit (IIC) is a serial communication protocol for efficient data transmission between integrated circuits. The inter-integrated circuit bus only needs two signal lines, a serial data line and a serial clock line, to complete the communication between devices. The field-programmable gate array (FPGA) is an integrated circuit that can be configured by the user to configure its logic function after leaving the factory. The field-programmable gate array provides high flexibility and reconfigurability.

[0067] The following will be described in combination with Figure 4 The test architecture is described.

[0068] Figure 4 A schematic diagram of the test architecture provided in the embodiments of the present application is shown in FIG. 2. As shown in FIG. 2, the test architecture includes the following components. Figure 4 ​As shown, the plurality of solid state disks are connected with the PCIe solid state disk interface of the test system, the plurality of solid state disks communicate with the FPGA through IIC, and the FPGA communicates with the test system through IIC. The FPGA sends the detected in-place signal to the test system through IIC.

[0069] For example, the Peripheral Component Interconnect Express (PCIe) standard has high bandwidth, low latency, hot plug support and point-to-point connection characteristics for efficient data transmission.

[0070] Optionally, the test system includes an operating system and a main controller ROOT, and the operating system can be Linux.

[0071] In combination with a scene example, the inter-integrated circuit bus can improve data transmission efficiency, thereby improving the test efficiency of the solid state disk.

[0072] S302, the in-place signal is identified to obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks.

[0073] In combination with a scene example, there can be a solid state disk that is not correctly connected or an invalid solid state disk in the plurality of solid state disks connected by the test system. The FPGA detects the correctly connected and valid solid state disk, thereby improving the accuracy of the test.

[0074] Optionally, the in-place signal includes the identifier of the solid state disk interface.

[0075] Further optionally, the test system stores the identifier of the solid state disk interface corresponding to each solid state disk interface. The test system compares the identifier of the solid state disk interface in the in-place signal with the stored identifier of the solid state disk interface to determine an abnormal interface identifier. The solid state disk interface corresponding to the abnormal interface identifier is not correctly connected to a solid state disk or is not connected to a valid solid state disk. A prompt message is sent according to the abnormal interface identifier to enable the R&D personnel to promptly troubleshoot the problem, thereby improving the test efficiency.

[0076] S303, the current information and the standard information of the target solid state disk are determined, and the target solid state disk is tested according to the current information and the standard information to obtain a first result, the first result including pass or fail.

[0077] The current information includes but is not limited to at least one of the following: current speed, current bandwidth, current temperature, or current power consumption, and the standard information includes but is not limited to at least one of the following: standard speed, standard bandwidth, standard temperature, or standard power consumption.

[0078] In combination with the scene example, the first connection test is used to test whether the basic parameters of the target solid state disk are qualified.

[0079] For example, the first result is obtained by comparing the current information and the standard information. The first result is determined as pass only when each item of the current information meets the standard information, otherwise, the first result is determined as fail.

[0080] Optionally, if the first result is fail, a prompt information of reconnection is sent to prompt to reconnect the target solid state disk until the first result is pass or the reconnection is performed for a preset number of times.

[0081] In combination with the scene example, the incorrect connection of the target solid state disk can cause the first result to be fail. The prompt information of reconnection can avoid the problem that the incorrect connection of the target solid state disk causes the test to be inaccurate, thereby improving the test accuracy.

[0082] S304, if the first result is pass, a performance test is performed on the target solid state disk to obtain a second result, the second result including pass or fail.

[0083] The performance test is used to test whether the target solid state disk meets the qualified read-write performance.

[0084] In a feasible implementation, the performance test can be performed by the following method: the path of the target solid state disk is determined according to the in-place signal; the target solid state disk is tested for multiple times of read-write according to the path, preset unit block information, and a preset file, the path is used to indicate the data position of the read-write test, the preset unit block information is used to indicate the data amount of the read-write test, and the preset file contains the test data of the read-write test; if the target write rate and the target read rate corresponding to the continuous preset number of times of read-write test are both greater than or equal to the standard rate, the second result is determined as pass; if the target write rate and / or the target read rate corresponding to any one of the read-write test is less than the standard rate, the second result is determined as fail.

[0085] The path information is stored in the in-place signal, and the path of the target solid state disk is obtained by analyzing and processing the in-place signal. The preset file is written and read at the position corresponding to the path. Different application scenarios are simulated by the preset unit block information. For example, the database operation can involve a large amount of small unit block random read-write, and the video editing can involve a large amount of continuous large unit block sequential read-write. Through these unit block information, the test result can be more valuable.

[0086] Next, the performance test is described in combination with the scene example. Figure 5

[0087] Figure 5 ​This is a schematic diagram illustrating the performance test provided in an embodiment of this application. Figure 5 As shown, the test system connects to multiple target solid-state drives (SSDs). For any one SSD, the path is first determined, then data is written to and read from that path to obtain the target write rate and target read rate. Finally, the second result is determined based on whether the target write rate and target read rate reach the standard rate.

[0088] Optionally, multiple read / write tests include random read / write tests, sequential read / write tests, and mixed read / write tests.

[0089] With scenario examples, random read / write refers to the distributed transmission of data across the storage medium, simulating real-world scenarios such as multitasking, multi-processing, or database queries. Sequential read / write involves continuous data transmission, simulating real-world scenarios such as large-scale file transfers, video playback, or backup operations. Mixed read / write involves simultaneous read and write operations, reflecting the overall performance of the target SSD under complex workloads. Through various types of read / write tests, the performance of the target SSD can be comprehensively evaluated. Performing a preset number of tests consecutively eliminates random errors, thereby improving test accuracy.

[0090] In this feasible implementation, the read and write performance of the target solid-state drive can be comprehensively evaluated through multiple read and write tests, thereby improving the accuracy of performance testing.

[0091] S305. If the second result is pass, perform an ECC test on the target solid-state drive to obtain a third result, which may be pass or fail.

[0092] One feasible implementation method is to perform ECC testing as follows: Obtain the first write ECC checksum and the first read ECC checksum corresponding to the first read / write test in the performance test from the target SSD's log information; if the first write ECC checksum and the first read ECC checksum are the same, then the third result is determined to be successful; if the first write ECC checksum and the first read ECC checksum are different, then perform a second connection test on the target SSD to obtain the second connection test result, which may be successful or unsuccessful; if the second connection test result is unsuccessful, then the third result is determined to be unsuccessful; if the second connection test result is successful, then determine the third result based on the second write ECC checksum and the second read ECC checksum corresponding to the second read / write test in the performance test.

[0093] Below, in conjunction with Figure 6 Explanation of the check digit.

[0094] Figure 6 This is a schematic diagram of the verification code provided in an embodiment of this application. Figure 6As shown, P1-P29 represent row / column values of a flash memory FLASH memory sector, wherein P1-P6 are row parity codes, and P7-P29 are column parity codes. The row parity codes and the column parity codes constitute a parity code.

[0095] By way of example, the ECC parity code error detection and correction is to compare the first written ECC parity code and the first read ECC parity code to determine whether the data is erroneous in the transmission process. The two generated ECC parity codes are subjected to bitwise XOR operation, thereby determining the byte offset and the bit offset of the erroneous bit, and after the definition of the erroneous bit, the error correction module is notified to perform the inversion error correction.

[0096] By way of example, the formula for performing XOR operation on the P1 row parity code is as follows:

[0097] P1 = bit1 XOR bit3 XOR bit5 XOR bit7

[0098] The formula for performing XOR operation on the P7 column parity code is as follows:

[0099] P7 = byte1 XOR byte3 XOR … XOR byte509 XOR byte511

[0100] By way of example, if the first written ECC parity code is different from the first read ECC parity code, it indicates that an ECC error occurs, and a second ECC test is performed to verify whether the error is cleared. Since the ECC error can affect the bandwidth or the rate, a second connection test is performed before the second ECC test to verify whether the connection is normal, thereby avoiding the problem that the test is inaccurate due to the abnormal connection. If the second ECC test is passed, it indicates that the ECC error has the ability to be cleared, and it is determined that the ECC test is passed.

[0101] In this feasible implementation manner, the connection error caused by the ECC error can be found in time through the repeated connection test, and thus the test result can be accurately obtained.

[0102] In a feasible implementation manner, the third result can be determined by the following method: obtaining the second written ECC parity code and the second read ECC parity code corresponding to the second read-write test in the performance test from the log information of the target solid state disk; if the second written ECC parity code is the same as the second read ECC parity code, it is determined that the third result is passed; and if the second written ECC parity code is different from the second read ECC parity code, it is determined that the third result is not passed.

[0103] Next, the ECC test will be described in combination with Figure 7 The ECC test will be described.

[0104] Figure 7 The schematic diagram of the ECC test provided by the embodiments of the present application is shown in FIG. 1. As shown in FIG. 1, the ECC test comprises the following steps:Figure 7 As shown, it is determined whether the ECC check passes according to the write ECC check code and the read ECC check code. If yes, it is determined that the ECC test passes. If no, it is determined whether it is the first ECC check. If no, it is determined that the ECC test fails. If yes, it is determined whether the ECC error is cleared. If no, it is determined that the ECC test fails. If yes, it is determined whether the second connection test passes. If yes, the ECC check is repeated. If no, it is determined that the ECC test fails.

[0105] In the feasible implementation manner, the test result is corrected through the second ECC test, so as to improve the accuracy of the test.

[0106] S306, if the third result is pass, the hot plug function test is performed on the target solid state disk to obtain a fourth result, and the fourth result includes pass or fail.

[0107] In a feasible implementation manner, the hot plug function test can be performed by the following method: determining a hot plug operation record and a hot plug detection record of the target solid state disk, the hot plug operation record including a plurality of first time instants of operating hot plug, and the hot plug detection record including a plurality of second time instants of detecting hot plug by the test system; if the plurality of second time instants are the same as the plurality of first time instants, it is determined that the fourth result is pass; if the plurality of second time instants are different from the plurality of first time instants, it is determined that the fourth result is fail.

[0108] The hot plug operation record is the record of the actual hot plug, and the hot plug detection record is the record of the hot plug detected by the test system.

[0109] In combination with a scene example, if the target solid state disk has the hot plug function, each time the target solid state disk performs hot plug will be detected, and it can be determined whether the target solid state disk has the hot plug function by comparing the records.

[0110] In the feasible implementation manner, the reproducibility of the hot plug function can be verified by comparing the hot plug records of the plurality of time instants, so as to improve the accuracy of the hot plug function test.

[0111] S307, if the fourth result is pass, it is determined that the test result includes the first result, the second result, the third result, and the fourth result.

[0112] In combination with a scene example, the results of each target test are summarized to obtain the final test result.

[0113] Based on the above implementation manners, the target solid state disk can be evaluated from multiple dimensions through the test results of the plurality of items, so as to improve the accuracy of the test.

[0114] S308, generating a test report according to the plurality of solid state disk identifiers and the plurality of test results.

[0115] It should be noted that the execution process of S308 refers to S203, which will not be described here.

[0116] Figure 8 A structural schematic diagram of a solid state disk testing device provided by an embodiment of the present application. As shown in the figure, the solid state disk testing device 80 can include an identification module 81, a testing module 82, and a generation module 83, wherein, Figure 8 The identification module 81 is configured to perform in-situ detection on a plurality of solid state disk interfaces of a test system to obtain a plurality of solid state disk identifiers corresponding to a plurality of target solid state disks, and the plurality of target solid state disks are connected to the test system.

[0117] The testing module 82 is configured to perform target testing on the plurality of target solid state disks respectively to obtain a plurality of test results corresponding to the plurality of target solid state disks.

[0118] The generation module 83 is configured to generate a test report according to the plurality of solid state disk identifiers and the plurality of test results.

[0119] Optionally, the identification module 81 can perform S201 in the embodiment.

[0120] Figure 2 Optionally, the testing module 82 can perform S202 in the embodiment.

[0121] Optionally, the generation module 83 can perform S203 in the embodiment. Figure 2

[0122] Figure 2

[0123] It should be noted that the solid state disk testing device shown in the embodiment of the present application can perform the technical solutions shown in the above method embodiments, and the implementation principles and beneficial effects are similar, which will not be described here.

[0124] In one possible implementation, the identification module 81 is specifically configured to:

[0125] receive an in-situ signal through an inter-integrated circuit bus, the in-situ signal being obtained by detecting the plurality of solid state disk interfaces by a field programmable gate array; and perform identification processing on the in-situ signal to obtain the plurality of solid state disk identifiers corresponding to the plurality of target solid state disks.

[0126] In one possible implementation, for any one target solid state disk, the testing module 82 is specifically configured to:

[0127] ​​​​The current information and the standard information of the target solid state disk are determined, and the target solid state disk is tested according to the current information and the standard information to obtain a first result, the first result including pass or fail; if the first result is pass, the target solid state disk is tested for performance to obtain a second result, the second result including pass or fail; if the second result is pass, the target solid state disk is tested for ECC to obtain a third result, the third result including pass or fail; if the third result is pass, the target solid state disk is tested for hot plug function to obtain a fourth result, the fourth result including pass or fail; if the fourth result is pass, the test result is determined to include the first result, the second result, the third result, and the fourth result.

[0128] Figure 9 A structural schematic diagram of a solid state disk testing device provided by an embodiment of the present application is shown in the figure. Figure 8 Based on the embodiment shown in the figure, as shown in the figure, the solid state disk testing device 90 further includes an execution module 84, a processing module 85, and a judgment module 86. Figure 9

[0129] The execution module 84 is configured to:

[0130] According to the in-place signal, the path of the target solid state disk is determined; according to the path, the preset unit block information, and the preset file, the target solid state disk is tested for multiple times of read-write test to obtain multiple target write-in rates and target read rates, the path is used to indicate the data position of the read-write test, the preset unit block information is used to indicate the data amount of the read-write test, and the preset file contains the test data of the read-write test; if the target write-in rates and the target read rates corresponding to the read-write test of the continuous preset times are all greater than or equal to the standard rate, it is determined that the second result is pass; if the target write-in rate and / or the target read rate corresponding to any one of the read-write test is less than the standard rate, it is determined that the second result is fail.

[0131] The processing module 85 is configured to:

[0132] The first write-in ECC check code and the first read ECC check code corresponding to the first read-write test in the performance test are obtained from the log information of the target solid state disk; if the first write-in ECC check code is the same as the first read ECC check code, it is determined that the third result is pass; if the first write-in ECC check code is different from the first read ECC check code, the target solid state disk is tested for second connection to obtain a second connection test result, the second connection test result including pass or fail; if the second connection test result is fail, it is determined that the third result is fail; if the second connection test result is pass, the third result is determined according to the second write-in ECC check code and the second read ECC check code corresponding to the second read-write test in the performance test.​

[0133] In a possible implementation, the processing module 85 is specifically configured to:

[0134] obtain, from the log information of the target solid state disk, a second write ECC check code and a second read ECC check code corresponding to the second read-write test in the performance test; if the second write ECC check code is the same as the second read ECC check code, determine that the third result is passed; if the second write ECC check code is different from the second read ECC check code, determine that the third result is failed.

[0135] The determining module 86 is configured to:

[0136] determine a hot plug operation record and a hot plug detection record of the target solid state disk, the hot plug operation record including a plurality of first time instants of operating hot plug, and the hot plug detection record including a plurality of second time instants of detecting hot plug by the test system; if the plurality of second time instants are the same as the plurality of first time instants, determine that the fourth result is passed; if the plurality of second time instants are different from the plurality of first time instants, determine that the fourth result is failed.

[0137] Figure 10 A structural schematic diagram of an electronic device provided in an embodiment of the present application is shown in FIG. 1, which includes: Figure 10

[0138] The electronic device further includes a memory 292, and can further include a communication interface 293 and a bus 294. The processor 291, the memory 292, and the communication interface 293 can communicate with each other through the bus 294. The communication interface 293 can be used for information transmission. The processor 291 can invoke the logical instructions in the memory 292 to execute the method of the above-mentioned embodiments.

[0139] In addition, the logical instructions in the memory 292 described above can be implemented in the form of a software functional unit and sold or used as an independent product, which can be stored in a computer readable storage medium.

[0140] The memory 292 as a computer readable storage medium can be used to store software programs, computer executable programs, such as program instructions / modules corresponding to the method in the embodiments of the present application. The processor 291 executes the functions and data processing by running the software programs, instructions and modules stored in the memory 292, that is, implements the method in the above-mentioned method embodiments.

[0141] ​The memory 292 can include a program storage area and a data storage area, where the program storage area can store an operating system, application programs required by at least one function, and the like; the data storage area can store data created according to the use of the terminal device, and the like. In addition, the memory 292 can include a high-speed random access memory, and can also include a nonvolatile memory.

[0142] The embodiment of the present application provides a kind of non-transitory computer readable storage medium, computer readable storage medium has the computer execution instruction stored therein, computer execution instruction is executed by processor when for realizing the method as described above embodiment.

[0143] The embodiment of the present application provides a kind of computer program product, including computer program, computer program is executed by processor when realizing the method as described above embodiment.

[0144] It should be noted that, for the foregoing method embodiments, in order to simply describe, it is expressed as a series of action combinations, but those skilled in the art should know that the application is not limited to the order of the described actions, because according to the application, certain steps can be performed in other order or simultaneously.Secondly, those skilled in the art should know that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the application.

[0145] Further need to be explained is that, although each step in the flow chart is displayed in turn according to the indication of arrow, these steps are not necessarily executed in turn according to the order indicated by arrow. Unless explicitly stated in this paper, the execution of these steps has no strict order limit, and these steps can be executed in other order. Moreover, at least part of the steps in the flow chart can include multiple sub-steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution order of these sub-steps or stages is not necessarily sequential, but can be executed with at least part of other steps or other steps or stages of sub-steps or stages, alternately or alternately.

[0146] It should be understood that the above-mentioned device embodiment is only schematic, and the device of the present application can also be realized by other ways. For example, the division of units / modules in the above-mentioned embodiment is only a logical function division, and actual implementation can have another division way. For example, multiple units, modules or components can be combined, or can be integrated into another system, or some features can be ignored or not executed.

[0147] In addition, each functional unit / module in the embodiments of the present application can be integrated in one unit / module, or each unit / module can exist physically, or two or more units / modules can be integrated together. The integrated unit / module can be realized in the form of hardware or in the form of a software program module.

[0148] If the integrated unit / module is realized in the form of hardware, the hardware can be a digital circuit, an analog circuit, etc. The physical implementation of the hardware structure includes but is not limited to transistors, memristors, etc. The processor can be any appropriate hardware processor, such as a CPU, a GPU, an FPGA, a DSP, and an ASIC, etc. The storage unit can be any appropriate magnetic storage medium or magneto-optical storage medium, such as a resistive random access memory (RRAM), a dynamic random access memory (DRAM), a static random access memory (SRAM), an enhanced dynamic random access memory (EDRAM), a high-bandwidth memory (HBM), a hybrid memory cube (HMC), etc.

[0149] If the integrated unit / module is realized in the form of a software program module and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application, essentially or the part that contributes to the prior art, or all or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the embodiments of the method of the present application. The aforementioned storage medium includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.

[0150] In the above embodiments, the description of each of the embodiments focuses on different aspects of the embodiments. The parts not described in detail in a certain embodiment can be seen in the relevant description of the other embodiments. The technical features of the above embodiments can be combined in any manner. In order to make the description simple, not all possible combinations of the technical features in the above embodiments are described, however, as long as the combinations of the technical features do not exist contradictory, they shall be considered as falling within the scope of the disclosure.

[0151] Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the application being indicated by the following claims.

[0152] It should be understood that the application is not limited to the precise construction that has been described above and shown in the accompanying drawings, and that various modifications and changes can be made by those skilled in the art without departing from the scope of the application. The scope of the application is limited only by the appended claims.

Claims

1. A testing method for a solid-state drive, characterized in that, include: In-situ detection is performed on multiple solid-state drive interfaces of the test system to obtain multiple solid-state drive identifiers corresponding to multiple target solid-state drives, and the multiple target solid-state drives establish a connection with the test system. Target tests were performed on the multiple target solid-state drives respectively, and multiple test results were obtained for the multiple target solid-state drives; Specifically, for any target solid-state drive (SSD), a target test is performed on the target SSD to obtain the corresponding test results, including: The current information and standard information of the target solid-state drive are determined, and a first connection test is performed on the target solid-state drive based on the current information and the standard information to obtain a first result, which includes passing or failing. If the first result is passed, then multiple read and write tests are performed on the target solid-state drive. A second result is obtained based on the target write rate and target read rate corresponding to the target solid-state drive for a preset number of consecutive read and write tests. The second result includes passing or failing. If the second result is passed, then a layered ECC test is performed on the target solid-state drive to obtain a third result, which includes passing or failing; the layered ECC test refers to performing a second connection test on the target solid-state drive when the first ECC test fails, and performing a second ECC test on the target solid-state drive when the second connection test result is passed; If the third result is passed, a hot-swap function test is performed on the target solid-state drive. A fourth result is obtained based on multiple first moments of hot-swapping and multiple second moments of hot-swapping detected by the test system. The fourth result includes passing or failing. If the fourth result is passed, then the test results are determined to include the first result, the second result, the third result, and the fourth result; A test report is generated based on the multiple solid-state drive identifiers and the multiple test results.

2. The method according to claim 1, characterized in that, In-situ testing was performed on multiple SSD interfaces of the test system to obtain multiple SSD identifiers corresponding to multiple target SSDs, including: The presence signal is received via an inter-integrated circuit bus, and the presence signal is obtained by detecting the multiple solid-state drive interfaces by a field-programmable gate array. The in-situ signal is processed to obtain multiple solid-state drive identifiers corresponding to the multiple target solid-state drives.

3. The method according to claim 2, characterized in that, Multiple read / write tests are performed on the target solid-state drive (SSD). A second result is obtained based on the target write speed and target read speed corresponding to a preset number of consecutive read / write tests of the target SSD, including: The path of the target solid-state drive is determined based on the in-situ signal; Based on the path, preset unit block information, and preset file, multiple read and write tests are performed on the target solid-state drive to obtain multiple target write speeds and target read speeds. The path is used to indicate the data location of the read and write test, the preset unit block information is used to indicate the amount of data in the read and write test, and the preset file contains the test data of the read and write test. If the target write rate and target read rate corresponding to the preset number of consecutive read and write tests are both greater than or equal to the standard rate, then the second result is determined to be passed. If the target write rate and / or target read rate for any read / write test is less than the standard rate, then the second result is determined to be a failure.

4. The method according to claim 1, characterized in that, A third result was obtained by performing tiered ECC testing on the target solid-state drive, including: Obtain the first write ECC checksum and the first read ECC checksum corresponding to the first read / write test in the read / write test from the log information of the target solid-state drive; If the first written ECC checksum is the same as the first read ECC checksum, then the third result is determined to be successful. If the first written ECC checksum is different from the first read ECC checksum, a second connection test is performed on the target solid-state drive to obtain a second connection test result, which includes whether the connection test passes or fails. If the second connection test result is failed, then the third result is determined to be failed; If the second connection test result is passed, the third result is determined based on the second write ECC checksum and the second read ECC checksum corresponding to the second read / write test in the read / write test.

5. The method according to claim 4, characterized in that, The third result is determined based on the second write ECC checksum and the second read ECC checksum corresponding to the second read / write test in the read / write test, including: Obtain the second write ECC checksum and the second read ECC checksum corresponding to the second read / write test in the read / write test from the log information of the target solid-state drive; If the second written ECC checksum is the same as the second read ECC checksum, then the third result is determined to be successful. If the second written ECC checksum is different from the second read ECC checksum, then the third result is determined to be unsuccessful.

6. The method according to claim 1, characterized in that, A hot-swap functionality test is performed on the target solid-state drive. A fourth result is obtained based on multiple first moments of hot-swapping and multiple second moments of hot-swapping detected by the test system, including: The hot-plug operation record and hot-plug detection record of the target solid-state drive are determined. The hot-plug operation record includes multiple first moments of hot-plug operation, and the hot-plug detection record includes multiple second moments of hot-plug detection by the test system. If the plurality of second moments are the same as the plurality of first moments, then the fourth result is determined to be passed; If the plurality of second moments are different from the plurality of first moments, then the fourth result is determined to be unsuccessful.

7. A testing device for solid-state drives, characterized in that, include: The identification module is used to perform in-situ detection on multiple solid-state drive interfaces of the test system, obtain multiple solid-state drive identifiers corresponding to multiple target solid-state drives, and establish a connection between the multiple target solid-state drives and the test system. The testing module is used to perform target tests on the multiple target solid-state drives (SSDs) respectively, obtaining multiple test results corresponding to the multiple target SSDs. Specifically, for any target SSD, the testing module is used to determine the current information and standard information of the target SSD, and perform a first connection test on the target SSD based on the current information and the standard information to obtain a first result, which includes pass or fail. The testing module is further used to, if the first result is pass, perform multiple read / write tests on the target SSD, and obtain a second result based on the target write rate and target read rate corresponding to a preset number of consecutive read / write tests on the target SSD, the second result including pass or fail. The testing module is further used to, if the second result is pass, perform a second connection test on the target SSD. The solid-state drive (SSD) undergoes tiered ECC testing to obtain a third result, which includes pass or fail. The tiered ECC testing refers to performing a second connection test on the target SSD if it fails the first ECC test, and performing a second ECC test if the second connection test passes. Specifically, the testing module is further configured to perform a hot-swap functionality test on the target SSD if the third result is pass, and obtain a fourth result based on multiple first moments of hot-swapping and multiple second moments of hot-swapping detected by the testing system, where the fourth result includes pass or fail. The testing module is also further configured to determine that the test result includes the first result, the second result, the third result, and the fourth result if the fourth result is pass. The generation module is used to generate a test report based on the multiple solid-state drive identifiers and the multiple test results.

8. An electronic device, characterized in that, include: A processor, and a memory communicatively connected to the processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory to implement the method as described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method as described in any one of claims 1-5.

10. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Method and apparatus for testing performances of solid state disks

    CN103578568A

  • Method and device for testing hot-plug stability of hard disks

    CN105843720A

  • Error correction method and device based on NAND FLASH memory

    CN110750381A

  • NVME hard disk test fixture and test method

    CN111462809A

  • Detection device and detection method

    CN117608952A