Test verification method and device for solid state disk SMBUS address resolution protocol
By checking if the hard drive controller supports SMBUS, sending an ARP Prepare command, obtaining the UDID and device slave address, and assigning a new unique address, the problem of address conflict in solid-state drives in the prior art is solved, achieving efficient address resolution and health status monitoring, improving user experience and the reliability of fault prediction.
Patent Information
- Application Number
- CN202210624887.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-02
- Publication Date
- 2025-12-16
- Estimated Expiration
- 2042-06-02
AI Technical Summary
In the current technology, laptops or desktop computers with M.2 solid-state drive interfaces that support SMBUS ARP have not been officially released, and ULINK's DriverMaster software and supporting PSPA hardware do not have physical SMBUS wiring. The SMBUS and ARP test-related commands have not yet been developed, which makes it impossible for solid-state drives to effectively resolve addresses when there are device conflicts, affecting health status monitoring and fault prediction.
This paper provides a test and verification method for the SMBUS address resolution protocol of solid-state drives. The method involves checking whether the hard drive controller supports SMBUS, sending an ARP Prepare command, obtaining the UDID and device slave address, determining whether the UDID and device slave address conflict, and allocating a new unique address if there is a conflict. This ensures that the SMBUS out-of-band signal can be responded to normally after the ARP address is successfully allocated.
It enables fast and efficient verification of SMBUS devices for solid-state drives from address conflicts and subsequent address reallocation, ensuring the accuracy of temperature and serial number readings, and improving user experience and the reliability of fault prediction.
Smart Images

Figure CN114996775B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of solid state disks, and particularly relates to a test verification method and device of a solid state disk SMBUS address resolution protocol, a computer device and a storage medium. BACKGROUND
[0002] ARP (Address Resolution Protocol) can dynamically allocate a new unique device slave address to each slave device based on UDID (Unique device identifier) using an ARP address allocation command to solve the problem of SMBUS (System Management Bus) device slave address conflict. The ARP address allocation utilizes the standard SMBUS physical layer arbitration mechanism, and the allocated new address is still valid after the device is powered on or off.
[0003] A solid state disk supporting SMBUS can monitor the health status of the solid state disk in real time through the SMBUS out-of-band signal, such as obtaining the temperature and device information of the solid state disk. When two or more solid state disks with SMBUS function are inserted into a notebook computer or a server supporting the SMUBS function, the default slave device basic command management address 6a will have an address conflict. When the SMBUS master device on the server wants to send a basic management command through the SMBUS out-of-band signal to obtain the current disk working temperature from disk 1, since the default basic command management address of disk 1 and disk 2 is 6a, the temperature obtained is very likely to be that of disk 2 all the time; when a certain disk is out of order, the basic command management address conflict problem will make the SMBUS master device always unable to query the correct information, and cannot predict the problem disk in advance, provide alarm and other services. Therefore, it is very important to test whether the solid state disk supporting ARP configuration can respond to ARP related commands and allocate a unique new address based on UDID and ARP address allocation command after enabling SMBUS. If the solid state disk supporting SMBUS ARP function cannot handle the slave device address conflict, the solid state disk temperature or temperature alarm mechanism read through the SMBUS out-of-band signal will be meaningless, and the best fault handling opportunity will be missed, greatly affecting the user experience and trust of the solid state disk product.
[0004] At present, the notebook or desktop computer supporting the M.2 solid state disk interface of the SMBUS ARP has not been officially released on the market. The DriverMaster software of the ULINK company and the matching PSPA (PCIe solid state disk Power Adaptor) hardware do not have SMBUS physical wiring, and the SMBUS and ARP test related commands have not been developed. SUMMARY
[0005] Therefore, it is necessary to provide a testing and verification method, apparatus, computer equipment, and storage medium for the SMBUS address resolution protocol of solid-state drives to address the above-mentioned technical problems.
[0006] A test and verification method for the SMBUS address resolution protocol of a solid-state drive, the method comprising:
[0007] Power on the device and check if the solid-state drive controller data structure supports SMBUS.
[0008] If SMBUS is supported, enable the SMBUS function and notify all slave devices that the master device will initiate the ARP process by sending the SMBUS ARP Prepare command.
[0009] Obtain the UDID and device slave address of the first solid-state drive and the UDID and device slave address of the second solid-state drive respectively;
[0010] Determine whether the UDIDs of the first and second solid-state drives are duplicated and whether they conform to the definition of UDID. If the UDIDs are duplicated, it is considered a failure and the test is interrupted.
[0011] Determine if the device slave addresses of the first solid-state drive and the second solid-state drive conflict. If the device slave addresses conflict, allocate a new unique address through the address allocation command.
[0012] Obtain the UDID of the first solid-state drive and the second solid-state drive, as well as the new device address;
[0013] Determine whether the first and second solid-state drives have been assigned new device slave addresses. If the device slave address following the UDID is still the default device slave address, then the ARP address allocation has failed.
[0014] In one embodiment, after the step of determining whether the first solid-state drive and the second solid-state drive have been assigned new device slave addresses, and if the device slave address following the UDID is still the default device slave address, then the ARP address allocation has failed, the method further includes:
[0015] The basic management command address on the SMBUS bus is detected by the SMBUS device detection command. If both the default address and the newly assigned address appear on the bus at the same time, the ARP address allocation is still faulty.
[0016] In one embodiment, after the step of detecting the basic management command address on the SMBUS bus via the SMBUS device detection command, and determining that if both the default address and the newly allocated address appear on the bus simultaneously, the ARP address allocation is still faulty, the following method is further included:
[0017] After confirming that the ARP address allocation command is successful in allocating the device slave address to the first solid state disk and the second solid state disk, the device slave address allocated to the first solid state disk is reset through an ARP-Reset device command;
[0018] It is detected through an SMBUS device detection command whether the basic management command address on the SMBUS bus of the first solid state disk is only the default device address hanging on the bus, and if it is only the default address, the reset is successful.
[0019] In one embodiment, the step of detecting through the SMBUS device detection command whether the basic management command address on the SMBUS bus of the first solid state disk is only the default device address hanging on the bus, and if it is only the default address, the reset is successful, further comprises:
[0020] The SMBUS basic management command is sent to obtain the solid state disk information, and it is judged whether the default SMBUS after the ARP reset can normally respond and return the solid state disk information.
[0021] A test verification device of a solid state disk SMBUS address resolution protocol, the device comprises:
[0022] The checking module is used for checking whether the solid state disk controller data structure supports the SMBUS after power-on;
[0023] The starting module is used for starting the SMBUS function if the SMBUS is supported, and informing all slave devices that the master device will start to initiate the ARP process by sending the SMBUS ARP Prepare command;
[0024] The first obtaining module is used for obtaining the UDID and the device slave address of the first solid state disk and the UDID and the device slave address of the second solid state disk respectively;
[0025] The first judging module is used for judging whether the UDID of the first solid state disk and the second solid state disk is repeated and whether it conforms to the definition in the UDID, and if the UDID is repeated, it is bad and the test is interrupted;
[0026] The second judging module is used for judging whether the device slave address of the first solid state disk and the second solid state disk is in conflict, and if the device slave address is in conflict, a new unique address is allocated through the address allocation command;
[0027] The second obtaining module is used for obtaining the UDID and the new device slave address of the first solid state disk and the second solid state disk respectively;
[0028] A third judging module is configured to judge whether the first solid state disk and the second solid state disk are assigned with new device slave addresses, and if the device slave address following the UDID is still the default device slave address, the ARP address allocation fails.
[0029] In one of the embodiments, the device further comprises a fourth judging module configured to:
[0030] The basic management command address on the SMBUS bus is detected by the SMBUS device detection command, and if the default address and the newly assigned address appear on the bus at the same time, the ARP address allocation is still defective.
[0031] In one of the embodiments, the device further comprises a fifth judging module configured to:
[0032] After confirming that the device slave address allocation of the ARP address allocation command to the first solid state disk and the second solid state disk is successful, the device slave address allocated to the first solid state disk is reset by the ARP-Reset device command;
[0033] The basic management command address on the SMBUS bus of the first solid state disk is detected by the SMBUS device detection command, and if only the default device address is hung on the bus, the reset is successful.
[0034] In one of the embodiments, the device further comprises a sixth judging module configured to:
[0035] The solid state disk information is obtained by sending the SMBUS basic management command, and it is judged whether the default SMBUS after the ARP reset can normally respond and return the solid state disk information.
[0036] A computer device comprises a memory, a processor, and a computer program stored on the memory and executable on the processor, and the processor implements the steps of any one of the above methods when executing the computer program.
[0037] A computer readable storage medium, on which a computer program is stored, and the computer program is executable on the processor to implement the steps of any one of the above methods.
[0038] The test verification method, device, computer device and storage medium of the above solid state disk SMBUS address resolution protocol can quickly and efficiently verify the ability of the solid state disk to resolve the conflict of the SMBUS device slave address and the address reassignment after the conflict, such as reading the state, serial number and temperature of two solid state disks supporting SMBUS in the same server, and the temperature and serial number returned by the two disks are the same due to the same default address. BRIEF DESCRIPTION OF DRAWINGS
[0039] Figure 1 a flowchart of a test verification method of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 4;
[0040] Figure 2 a flowchart of a test verification method of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 4;
[0041] Figure 3 a flowchart of a test verification method of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 4;
[0042] Figure 4 a structural block diagram of a test verification device of a solid state disk SMBUS address resolution protocol in one embodiment is shown in FIG. 5;
[0043] Figure 5 a structural block diagram of a test verification device of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 6;
[0044] Figure 6 a structural block diagram of a test verification device of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 6;
[0045] Figure 7 a structural block diagram of a test verification device of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 6;
[0046] Figure 8 a structural block diagram of a test verification device of a solid state disk SMBUS address resolution protocol in another embodiment is shown in FIG. 6; DETAILED DESCRIPTION
[0047] In order to make the purpose, technical scheme and advantages of the present application clearer, further detailed description will be given below in combination with the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and do not limit the present application.
[0048] At present, the notebook or desktop computer supporting the M.2 solid state disk interface of the SMBUS ARP has not been officially released in the market. The Driver Master software of the ULINK company and the matching PSPA hardware have no SMBUS physical wiring and the related commands of the SMBUS and ARP test have not been developed.
[0049] Based on this, the present application provides a test verification method of a solid state disk SMBUS address resolution protocol, which aims to test and verify the functions and related commands of the SMBUS ARP.
[0050] In one embodiment, as shown in FIG. 1, the test verification method of the solid state disk SMBUS address resolution protocol comprises the following steps: Figure 1As shown, a test verification method of a solid state disk SMBUS address resolution protocol is provided, and the method comprises the following steps:
[0051] In step 102, power on, and check whether the solid state disk controller data structure supports SMBUS.
[0052] In step 104, if the SMBUS is supported, the SMBUS function is started, and all slave devices are informed that the master device will start to initiate the ARP process by sending the SMBUS ARP Prepare command.
[0053] In step 106, the UDID and device slave address of the first solid state disk and the UDID and device slave address of the second solid state disk are acquired respectively.
[0054] In step 108, it is judged whether the UDID of the first solid state disk and the second solid state disk is repeated and whether it meets the definition in the UDID, if the UDID is repeated, it is bad and the test is interrupted.
[0055] In step 110, it is judged whether the device slave address of the first solid state disk and the second solid state disk is conflicted, if the device slave address is conflicted, a new unique address is allocated through the address allocation command.
[0056] In step 112, the UDID and the new device slave address of the first solid state disk and the second solid state disk are acquired respectively.
[0057] In step 114, it is judged whether the first solid state disk and the second solid state disk are given the new device slave address, if the device slave address followed by the UDID is still the default device slave address, the ARP address allocation fails.
[0058] In the embodiment, a test verification method of a solid state disk SMBUS address resolution protocol is provided, and the method utilizes the SMBUS management interface of the SANBLAZE server. A script is written to test and verify the function of the SMBUS ARP and related commands, and the test process described in the embodiment is as follows:
[0059] First, power on, and check whether the solid state disk controller data structure supports SMBUS. Specifically, it can be checked whether the value of byte 4004 (bit 0) is 1; if not, it indicates that the SMBUS is not supported, and the test is directly exited. If the SMBUS is supported, the SMBUS function (feature d5h) is started through the NVME set-feature command. All slave devices are informed that the master device will start to initiate the ARP process through the SMBUS ARP Prepare command, and all SMBUS slave devices with ARP capability will respond and clear the address resolution flag bit.
[0060] Then, the UDID and the device slave address of the first solid state disk are acquired through the SMBUS ARP get-UDID general command, and the UDID and the device slave address of the second solid state disk are acquired through the SMBUS ARP get-UDID general command.
[0061] Then, it is judged whether the UDID of the first solid state disk and the UDID of the second solid state disk are repeated, and if the UDID is repeated, it is bad and the test is interrupted. It is judged whether the UDID of the first solid state disk and the UDID of the second solid state disk meet the definition in the UDID, including the correct manufacturer ID, device ID, and SMBUS version confirmation. If it does not meet, the test is also directly interrupted.
[0062] Further, it is judged whether the device slave addresses of the first solid state disk and the second solid state disk conflict, and if the device slave addresses conflict, a new unique address is allocated through an address allocation command. Then, the UDID and the new device slave address of the first solid state disk and the second solid state disk are acquired respectively. It is judged whether the first solid state disk and the second solid state disk are assigned with the new device slave address, and if the device slave address followed by the UDID is still the default device slave address, the ARP address allocation fails.
[0063] In the embodiment, the ability of the solid state disk to quickly and efficiently verify the SMBUS device slave address conflict and the address re-allocation after the conflict can be verified, such as reading the state, serial number and temperature of two solid state disks supporting SMBUS in the same server. The temperature and serial number returned by the two disks are the same because the default addresses are the same, and the same serial number and problems are returned.
[0064] In one embodiment, as shown in Figure 2 A test verification method for a solid state disk SMBUS address resolution protocol is provided, which comprises the following steps:
[0065] In step 202, the basic management command address on the SMBUS bus is detected through the SMBUS device detection command. If the default address and the newly allocated address appear on the bus at the same time, the ARP address allocation is still bad;
[0066] In step 204, after confirming that the ARP address allocation command successfully allocates the device slave address of the first solid state disk and the device slave address of the second solid state disk, the device slave address allocated to the first solid state disk is reset through the ARP-Reset device command.
[0067] Step 206, detect whether the basic management command address on the SMBUS bus of the first solid state disk is only the default device address hanging on the bus through the SMBUS device detection command, if only the default address, reset success;
[0068] Step 208, send the SMBUS basic management command to obtain the solid state disk information, and judge whether the default SMBUS after ARP reset can normally respond and return the solid state disk information.
[0069] Specifically, refer to the flowchart of the solid state disk SMBUS address resolution protocol test verification method as shown in the figure, the specific test environment of the method is as follows: Figure 3
[0070] Hardware requirements: the computer to be tested is SANBLAZE RM4 server, for the computer to be tested, the method described in the patent is suitable for servers, notebook computers and other computers supporting SMBUS, and the specific model is not required. The SANBLAZE RM4 server is preferred as the computer to be tested in this embodiment. The solid state disk to be tested is an M.2 solid state disk supporting SMBUS ARP protocol.
[0071] Software requirements: the operating system is CENT OS 10.464bit; the test tool is sb_i2c; the test script is a self-compiled Shell test script
[0072] The test flow is as shown in Figure 3 The specific process steps are as follows:
[0073] 1. Power on, check whether the solid state disk controller data structure supports SMBUS (byte 4004bit0).
[0074] 2. If SMBUS is supported, enable SMBUS function through NVME set-feature command (feature d5h).
[0075] 3. Notify all slave devices that the master device will start ARP process through SMBUS ARP Prepare command, all SMBUS slave devices with ARP capability will respond and clear address resolution flag.
[0076] 4. Get the UDID and device slave address of disk 1 through SMBUS ARP get-UDID general command.
[0077] 5. Get the UDID and device slave address of disk 2 through SMBUS ARP get-UDID general command.
[0078] 6, judge whether the UDID of disk 1 and disk 2 is repeated, if the UDID is repeated, it is bad, and new unique address can not be allocated by UDID.
[0079] 7, judge whether the UDID is in conformity with the definition in UDID, the package contains correct manufacturer ID, device ID, SMBUS version confirmation.
[0080] 8, judge whether the device slave address is in conflict, if the device slave address is in conflict, the disk can not respond to the command correctly, and the conflicting solid state disk, such as disk 1 and disk 2, is allocated a new unique address by address allocation command.
[0081] 9, the UDID and new device slave address of disk 1 and disk 2 are respectively acquired by SMBUS ARP get-UDID directed command.
[0082] 10, judge whether disk 1 and disk 2 are assigned a new device slave address, such as the device slave address following UDID is the default device slave address, then ARP address allocation fails.
[0083] 11, the basic management command address on the SMBUS bus is detected by SMBUS device detection command, if the default address and the newly allocated address appear on the bus at the same time, the ARP address allocation is still bad.
[0084] 12, after confirming that the ARP address allocation command is successfully allocated to the device slave address of disk 1 and disk 2, the device slave address allocated to disk 1 is reset by ARP-Reset device (general) command.
[0085] 13, the basic management command address on the SMBUS bus of disk 1 is detected by SMBUS device detection command, whether only the default device address 6a is hung on the bus, if only the default address, the reset is successful.
[0086] 14, the solid state disk information command is sent to the 6a address of disk 1 by SMBUS basic management command.
[0087] 15, judge whether the default SMBUS after ARP reset can normally respond and return the hard disk information.
[0088] In the embodiment, the function of SMBUS ARP and the related command are tested and verified completely, and the test and verification efficiency is effectively improved.
[0089] It should be understood that, although Figures 1-3The steps in the flowchart are shown in sequence according to the arrows, but the steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order limitation for the execution of the steps, and the steps can be executed in other orders. Moreover, Figures 1-3 At least a part of the steps in the flowchart 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 the sub-steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least a part of other steps or sub-steps or stages of other steps.
[0090] In one embodiment, as shown in Figure 4 A test verification device 400 for a solid state disk SMBUS address resolution protocol is provided, and the device comprises:
[0091] A checking module 401 is configured to check whether a solid state disk controller data structure supports SMBUS when powered on.
[0092] An enabling module 402 is configured to enable the SMBUS function if the SMBUS is supported, and to notify all slave devices that the master device will start initiating the ARP process by sending the SMBUS ARP Prepare command.
[0093] A first obtaining module 403 is configured to obtain the UDID and device slave address of the first solid state disk and the UDID and device slave address of the second solid state disk, respectively.
[0094] A first judging module 404 is configured to judge whether the UDIDs of the first solid state disk and the second solid state disk are repeated and whether they meet the definition in the UDID. If the UDIDs are repeated, it is bad and the test is interrupted.
[0095] A second judging module 405 is configured to judge whether the device slave addresses of the first solid state disk and the second solid state disk are in conflict. If the device slave addresses are in conflict, a new unique address is allocated by an address allocation command.
[0096] A second obtaining module 406 is configured to obtain the UDID and the new device slave address of the first solid state disk and the second solid state disk, respectively.
[0097] A third judging module 407 is configured to judge whether the first solid state disk and the second solid state disk are assigned with the new device slave address. If the device slave address following the UDID is still the default device slave address, the ARP address allocation fails.
[0098] In one embodiment, as shown in Figure 5As shown in the figure, a test verification device 400 for a solid state disk SMBUS address resolution protocol is provided, and the device further includes a fourth determination module 408 configured to:
[0099] The basic management command address on the SMBUS bus is detected by the SMBUS device detection command, and if the default address and the newly allocated address appear on the bus at the same time, the ARP address allocation is still poor.
[0100] In one embodiment, as Figure 6 shown, a test verification device 400 for a solid state disk SMBUS address resolution protocol is provided, and the device further includes a fifth determination module 409 configured to:
[0101] After confirming that the device slave address allocation of the first solid state disk and the second solid state disk by the ARP address allocation command is successful, the device slave address allocated to the first solid state disk is reset by the ARP-Reset device command.
[0102] The basic management command address on the SMBUS bus of the first solid state disk is detected by the SMBUS device detection command, and if only the default device address is hung on the bus, the reset is successful.
[0103] In one embodiment, as Figure 7 shown, a test verification device 400 for a solid state disk SMBUS address resolution protocol is provided, and the device further includes a sixth determination module 410 configured to:
[0104] The default SMBUS after ARP reset is sent to obtain the solid state disk information by the SMBUS basic management command, and it is determined whether the default SMBUS can normally respond and return the solid state disk information.
[0105] The specific limitations of the test verification device for the solid state disk SMBUS address resolution protocol can refer to the limitations of the test verification method for the solid state disk SMBUS address resolution protocol in the foregoing, which will not be repeated here.
[0106] In one embodiment, a computer device is provided, and an internal structure diagram of the computer device can be as Figure 8 shown. The computer device includes a processor, a memory, and a network interface connected by a system bus. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the computer device is configured to communicate with an external terminal through a network connection. The computer program is executed by the processor to implement a test verification method for a solid state disk SMBUS address resolution protocol.
[0107] Those skilled in the art can understand that Figure 8 The structure shown in the figure is only a block diagram of part of the structure related to the scheme of the present application, and does not constitute a limitation on the computer device to which the scheme of the present application is applied. The specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0108] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the steps in the above various method embodiments when executing the computer program.
[0109] In one embodiment, a computer readable storage medium is provided, having a computer program stored thereon, and the computer program is executable by a processor to implement the steps in the above various method embodiments.
[0110] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiments can be completed by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiments. Any reference to memory, storage, database or other medium used in the embodiments provided by the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0111] Each technical feature of the above embodiments can be combined arbitrarily. In order to make the description concise, 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 contradictions, they should be considered as the scope of the present application.
[0112] The above-described embodiments are merely illustrative of several embodiments of the present application, which are described in more detail and in a specific and detailed manner, but should not be construed as limiting the scope of the patent. It should be noted that for those skilled in the art, several modifications and improvements can be made without departing from the concept of the present application, and these are all within the scope of the present application. Therefore, the scope of protection of the patent of the present application should be subject to the appended claims.
Claims
1. A test and verification method for the SMBUS address resolution protocol of a solid-state drive, the method comprising: Power on the device and check if the solid-state drive controller data structure supports SMBUS. If SMBUS is supported, enable the SMBUS function and notify all slave devices that the master device will initiate the ARP process by sending the SMBUS ARP Prepare command. Obtain the UDID and device slave address of the first solid-state drive and the UDID and device slave address of the second solid-state drive respectively; Determine whether the UDIDs of the first and second solid-state drives are duplicated and whether they conform to the definition of UDID. If the UDIDs are duplicated, it is considered a failure and the test is interrupted. Determine if the device slave addresses of the first solid-state drive and the second solid-state drive conflict. If the device slave addresses conflict, allocate a new unique address through the address allocation command. Obtain the UDID of the first solid-state drive and the second solid-state drive, as well as the new device address; Determine whether the first and second solid-state drives have been assigned new device slave addresses. If the device slave address following UDID is still the default device slave address, then ARP address allocation has failed. The step of determining whether the first and second solid-state drives have been assigned new device slave addresses, and if the device slave address following the UDID is still the default device slave address, then the ARP address allocation has failed, further includes: The basic management command address on the SMBUS bus is detected by the SMBUS device detection command. If both the default address and the newly assigned address appear on the bus at the same time, the ARP address allocation is still faulty.
2. The test and verification method for the SMBUS address resolution protocol of a solid-state drive according to claim 1, characterized in that, The step following the step of detecting the basic management command address on the SMBUS bus using the SMBUS device detection command, and determining that if both the default address and the newly assigned address appear on the bus simultaneously, the ARP address allocation is still incorrect, further includes: After confirming that the ARP address allocation command has successfully allocated device slave addresses to the first and second solid-state drives, the device slave address allocated to the first solid-state drive is reset using the ARP-Reset device command. The SMBUS device detection command is used to check whether the basic management command address on the SMBUS bus of the first solid-state drive is only the default device address connected to the bus. If only the default address is connected, the reset is successful.
3. The test and verification method for the SMBUS address resolution protocol of a solid-state drive according to claim 2, characterized in that, After the step of detecting whether only the default device address is connected to the SMBUS bus of the first solid-state drive via the SMBUS device detection command, and if only the default address is connected, the reset is successful, the following steps are also included: Send SMBUS basic management commands to obtain solid-state drive information, and determine whether the default SMBUS can respond normally and return solid-state drive information after ARP reset.
4. A test and verification device for the SMBUS address resolution protocol of a solid-state drive, characterized in that, The device includes: The inspection module is used to check whether the solid-state drive controller data structure supports SMBUS when the device is powered on. The enabling module is used to enable the SMBUS function if SMBUS is supported, and to notify all slave devices that the master device will start initiating the ARP process by sending the SMBUS ARPPrepare command. The first acquisition module is used to acquire the UDID and device slave address of the first solid-state drive and the UDID and device slave address of the second solid-state drive, respectively. The first judgment module is used to determine whether the UDID of the first solid-state drive and the second solid-state drive are duplicated and whether they conform to the definition in the UDID. If the UDID is duplicated, it is considered a failure and the test is interrupted. The second judgment module is used to determine whether the device slave addresses of the first solid-state drive and the second solid-state drive conflict. If the device slave addresses conflict, a new unique address is allocated through the address allocation command. The second acquisition module is used to acquire the UDID of the first solid-state drive and the second solid-state drive and the new device slave address, respectively. The third judgment module is used to determine whether the first solid-state drive and the second solid-state drive have been assigned a new device slave address. If the device slave address following UDID is still the default device slave address, then the ARP address allocation fails. The device further includes a fourth determination module, the fourth determination module being used for: The basic management command address on the SMBUS bus is detected by the SMBUS device detection command. If both the default address and the newly assigned address appear on the bus at the same time, the ARP address allocation is still faulty.
5. The testing and verification apparatus for the SMBUS address resolution protocol of a solid-state drive according to claim 4, characterized in that, The device further includes a fifth judgment module, the fifth judgment module being used for: After confirming that the ARP address allocation command has successfully allocated device slave addresses to the first and second solid-state drives, the device slave address allocated to the first solid-state drive is reset using the ARP-Reset device command. The SMBUS device detection command is used to check whether the basic management command address on the SMBUS bus of the first solid-state drive is only the default device address connected to the bus. If only the default address is connected, the reset is successful.
6. The testing and verification apparatus for the SMBUS address resolution protocol of a solid-state drive according to claim 5, characterized in that, The device further includes a sixth determination module, which is used for: Send SMBUS basic management commands to obtain solid-state drive information, and determine whether the default SMBUS can respond normally and return solid-state drive information after ARP reset.
7. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 3.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 3.
Citation Information
Patent Citations
System management bus address resolution protocol proxy device
US6728793B1