UFS storage device single-unit test driver method and apparatus based on MT6891 platform

By developing a single-unit test driver method for UFS storage devices on the MT6891 platform, the problem of the inability to test the UFS3.1 protocol in detail in existing technologies has been solved, enabling more comprehensive testing of UFS3.1 product features and improving testing efficiency and accuracy.

CN116312730BActive Publication Date: 2026-03-10SHENZHEN YILIAN INFORMATION SYST CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-30
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing technologies cannot perform detailed command and feature testing of UFS3.1 according to the UFS3.1 protocol, resulting in a small testing scope and low efficiency.

Method used

In the Linux source code UFS module, an interface for sending commands to UFS was developed. Device node files were generated based on the Linux character device driver development method. Command interface functions and library functions supported by subsequent unit tests were developed based on the UFS3.1 Jedec protocol. The code was compiled into the image file, and the correctness was verified by executing UFS commands on the MT6891 platform using the ADB tool.

Benefits of technology

The underlying framework for UFS single-unit testing has been improved, enhancing the completeness and accuracy of UFS 3.1 product feature testing and increasing the competitiveness of UFS storage products.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116312730B_ABST
    Figure CN116312730B_ABST
Patent Text Reader

Abstract

This application relates to a method, apparatus, computer device, and storage medium for single-unit testing of UFS storage devices based on the MT6891 platform. The method includes: developing an interface for sending commands to UFS in the Linux source code UFS module; developing the UFS device on the platform and generating device node files based on the Linux character device driver development method; developing command interface functions and library functions supported by subsequent single-unit testing based on the UFS3.1 Jedec protocol; compiling the developed code into an image file and burning the image file to the MT6891 platform; starting the MT6891 platform and using ADB tools to execute the developed UFS commands to verify correctness. This invention improves the underlying framework of UFS single-unit testing, enhances the completeness of UFS3.1 product feature testing, ensures the accuracy and robustness of UFS product single-unit testing, and further enhances the competitiveness of UFS storage products.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of storage system testing, and in particular to a UFS storage device single-body test driving method and device based on an MT6891 platform, a computer device, and a storage medium. BACKGROUND

[0002] UFS (Universal Flash Storage) is the abbreviation of UNIX file system, that is, a universal flash memory storage, which is a standard specification of an embedded memory. UFS3.1 adopts the HS-G4 specification, and the single-channel bandwidth can reach 11.6 Gbps, which is twice the performance of UFS2.1. The UFS3.1 standard is faster in transmission speed, lower in power consumption, faster in software response, smoother in program running, and better in power saving effect.

[0003] At present, the existing technology uses an MT6891 platform-based Android system to test UFS3.1 at the system level, which cannot test UFS3.1 in detail according to the UFS3.1 protocol, and in addition, the existing test method also has the disadvantages of small test surface and low efficiency. SUMMARY

[0004] Therefore, it is necessary to provide a UFS storage device single-body test driving method and device based on an MT6891 platform, a computer device, and a storage medium in view of the above technical problems.

[0005] A UFS storage device single-body test driving method based on an MT6891 platform, the method comprising:

[0006] Developing a UFS command interface sent to a Linux source code UFS module;

[0007] Developing a UFS device in the platform based on a Linux character device driving development mode and generating a device node file;

[0008] Developing a command interface function based on a UFS3.1 Jedec protocol and a library function supported by subsequent single-body testing;

[0009] Compiling the developed code into an image file and burning the image file into the MT6891 platform;

[0010] Starting the MT6891 platform and using an ADB tool to execute the developed UFS command to verify the correctness.

[0011] In one embodiment, in the step of developing the UFS device in the platform based on the Linux character device driving development mode and generating a device node file:

[0012] The device node file contains methods for opening and closing UFS device files and UFS command operations.

[0013] In one embodiment, after the step of starting the MT6891 platform and using ADB tools to execute the developed UFS commands to verify correctness, the method further includes:

[0014] Once the verification is successful, the UFS storage device standalone test driver package will be officially released.

[0015] In one embodiment, the step of developing the interface for sending UFS commands in the Linux source code UFS module further includes:

[0016] Prepare the MT6891 platform, Windows platform, and ADB tools, and set up the MT6891 driver development environment on the Windows platform.

[0017] A single-unit test driver for UFS storage devices based on the MT6891 platform, the single-unit test driver for UFS storage devices based on the MT6891 platform comprising:

[0018] The first development module is used to develop an interface for sending commands to UFS in the Linux source code UFS module;

[0019] The second development module is used to develop UFS devices in the platform and generate device node files based on the Linux character device driver development method.

[0020] 5. The third development module, which is used to develop command interfaces based on the UFS 3.1 Jedec protocol.

[0021] The `port` function and the library functions supported by subsequent unit tests;

[0022] The compilation and burning module is used to compile the developed code into the image file and burn the image file into the MT6891 platform;

[0023] The verification module is used to start the MT6891 platform and use the ADB tool to execute the UFS command of Development 0 to verify its correctness.

[0024] In one embodiment, the second development module is further configured to:

[0025] The device node file contains methods for opening and closing UFS device files and UFS command operations.

[0026] In one embodiment, the device further includes:

[0027] The publishing module is configured to officially publish the UFS storage device single test driver package after the verification is passed.

[0028] In one of the embodiments, the apparatus further comprises:

[0029] The environment building module is configured to prepare an MT6891 platform, a Windows platform and an ADB tool, and build an MT6891 driver development environment on the Windows platform.

[0030] A computer device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the above methods when executing the computer program.

[0031] A computer readable storage medium, which stores a computer program, wherein the computer program is executable by a processor to implement the steps of any one of the above methods.

[0032] The UFS storage device single test driving method, apparatus, computer device and storage medium based on the MT6891 platform develop a UFS command interface in a Linux source code UFS module; the UFS device in the platform is developed based on a Linux character device driving development mode and a device node file is generated; a command interface function is developed based on a UFS3.1 Jedec protocol and a library function supported by subsequent single test; the developed code is compiled into an image file, and the image file is burned into the MT6891 platform; the MT6891 platform is started, and the ADB tool is used to execute the developed UFS command to verify the correctness. The application develops a single test driving interface conforming to the jedec UFS 3.1 protocol based on the MT6891 Android platform Linux system, perfects a UFS single test underlying framework, improves the integrity of UFS3.1 product characteristic test, guarantees the accuracy and robustness of UFS product single test, and further improves the competitiveness of UFS storage products. BRIEF DESCRIPTION OF DRAWINGS

[0033] Figure 1 A flowchart of the UFS storage device single test driving method based on the MT6891 platform in one embodiment;

[0034] Figure 2 A flowchart of the UFS storage device single test driving method based on the MT6891 platform in another embodiment;

[0035] Figure 3 A structural block diagram of the UFS storage device single test driving apparatus based on the MT6891 platform in one embodiment;

[0036] Figure 4 This is a structural block diagram of a single-unit test driver device for a UFS storage device based on the MT6891 platform, as shown in another embodiment.

[0037] Figure 5 This is a structural block diagram of a single-unit test driver device for a UFS storage device based on the MT6891 platform in another embodiment;

[0038] Figure 6 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0039] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0040] Currently, traditional UFS product testing technologies cannot perform detailed command and feature testing of UFS3.1 according to the UFS3.1 protocol. In addition, they also have disadvantages such as small testing scope and low efficiency.

[0041] Based on this, the present invention proposes a single-unit test driver method for UFS storage devices based on the MT6891 platform, which aims to improve the completeness and efficiency of feature testing.

[0042] In one embodiment, such as Figure 1 As shown, a method for single-unit testing of UFS storage devices based on the MT6891 platform is provided. This method includes:

[0043] Step 102: Develop an interface for sending commands to UFS in the UFS module of the Linux source code;

[0044] Step 104: Develop the UFS device in the platform and generate the device node file based on the Linux character device driver development method;

[0045] Step 106: Develop command interface functions and library functions supported by subsequent unit tests based on the UFS3.1 Jedec protocol;

[0046] Step 108: Compile the developed code into the image file and burn the image file into the MT6891 platform;

[0047] Step 110: Start the MT6891 platform and use the ADB tool to execute the developed UFS command to verify its correctness.

[0048] This embodiment provides a method for single-unit test driver of UFS storage device based on the MT6891 platform. This method can be applied to single-unit testing of UFS products on the MT6891 platform based on a Linux system. After the UFS test driver is developed, it is compiled into the MT6891 platform system, and the client uses ADB to send UFS commands and perform tests.

[0049] Specifically, this solution develops a UFS storage device unit test driver interface based on the MT6891 Android 10 platform Linux system. It receives and transmits command parameters to the user layer via API to achieve UFS unit testing. Its main technical points include:

[0050] The development of command interface functions and library functions supported by subsequent unit tests are based on the UFS3.1 Jedec protocol.

[0051] Within the Linux system, the command interface is compiled into an executable program.

[0052] In one embodiment, in the step of developing a UFS device on the platform and generating a device node file based on the Linux character device driver development method:

[0053] The device node file contains instructions on opening and closing UFS device files, as well as UFS command operation methods.

[0054] Specifically, based on the Linux character device driver development approach, the UFS device in the platform is developed and a device node file is generated, which includes methods for opening and closing the UFS device file and UFS command operations. Its main function is to facilitate communication between user-space programs and kernel-space drivers.

[0055] In the Linux kernel's UFS driver module, an interface was developed to receive UFS commands from the UFS character device driver and send them to UFS. The interface also processes the responses returned by UFS, thus completing the process of sending UFS commands and processing responses on the MT6891 platform.

[0056] Finally, the developed code is compiled into the image file, and the image file is burned to the MT6891 platform. The MT6891 platform is then started, and the developed UFS commands are executed using the ADB tool to verify correctness.

[0057] In the above embodiments, an interface for sending commands to UFS is developed in the Linux source code UFS module; the UFS device in the platform is developed based on the Linux character device driver development method, and device node files are generated; command interface functions and library functions supported by subsequent unit tests are developed based on the UFS3.1 Jedec protocol; the developed code is compiled into the image file and burned to the MT6891 platform; the MT6891 platform is started, and the developed UFS commands are executed using ADB tools to verify correctness. This solution develops a unit test driver interface conforming to the Jedec UFS 3.1 protocol based on the MT6891 Android platform Linux system, improves the underlying framework of UFS unit testing, enhances the completeness of UFS3.1 product feature testing, ensures the accuracy and robustness of UFS product unit testing, and further enhances the competitiveness of UFS storage products.

[0058] In one embodiment, after starting the MT6891 platform and using the ADB tool to execute the developed UFS command to verify its correctness, the method further includes:

[0059] Once the verification is successful, the UFS storage device standalone test driver package will be officially released.

[0060] In one embodiment, the step of developing the interface for sending commands to the UFS in the Linux source code UFS module includes the following prior to:

[0061] Prepare the MT6891 platform, Windows platform, and ADB tools, and set up the MT6891 driver development environment on the Windows platform.

[0062] In one embodiment, reference Figure 2 The specific implementation process of the unit test driver for UFS storage devices based on the MT6891 platform is provided as follows:

[0063] 2.1 Prepare the MT6891 platform, Windows platform, and ADB tools.

[0064] 2.2 Setting up the MT6891 driver development environment on the Windows platform.

[0065] 2.3. Develop command interface functions and library functions supported by subsequent unit tests based on the UFS3.1 Jedec protocol, and compile the command interface into an executable program.

[0066] 2.4. Based on the Linux character device driver development method, develop the UFS device in the platform and generate device node files, which include the methods for opening and closing UFS device files and UFS command operation methods.

[0067] 2.5. Develop an interface in the Linux kernel's UFS driver module to receive UFS commands from the UFS character device driver and send them to UFS, and process the UFS response to complete the UFS command sending and response processing process on the MT6891 platform.

[0068] 2.6. Set the platform to eMMC boot and burn the image to the MT6891 platform.

[0069] 2.7 Start the MT6891 platform and use the ADB tool to execute the developed UFS command to verify its correctness.

[0070] 2.8 After successful verification, the UFS storage device standalone test driver package will be officially released.

[0071] 2.9. Burn the image to the MT6891 platform and send commands to verify the UFS.

[0072] In this embodiment, a single-unit test driver interface conforming to the jedec UFS 3.1 protocol was developed based on the MT6891 Android platform Linux system. This improves the underlying framework of UFS single-unit testing, ensures the accuracy and robustness of single-unit testing of UFS products, and further enhances the competitiveness of UFS storage products.

[0073] It should be understood that, although Figures 1-2 The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order in which these steps are executed, and they can be performed in other orders. Figures 1-2 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.

[0074] In one embodiment, such as Figure 3 As shown, a UFS storage device single-unit test driver 300 based on the MT6891 platform is provided. The device includes:

[0075] The first development module 301 is used to develop an interface for sending commands to UFS in the Linux source code UFS module;

[0076] The second development module 302 is used to develop UFS devices in the platform and generate device node files based on the Linux character device driver development method;

[0077] The third development module 303 is used to develop command interface functions and library functions supported by subsequent unit tests based on the UFS3.1 Jedec protocol.

[0078] The compilation and burning module 304 is used to compile the developed code into the image file and burn the image file into the MT6891 platform;

[0079] Verification module 305 is used to start the MT6891 platform and use the ADB tool to execute the developed UFS command to verify its correctness.

[0080] In one embodiment, the second development module 302 is further configured to:

[0081] The device node file contains methods for opening and closing UFS device files and UFS command operations.

[0082] In one embodiment, such as Figure 4 As shown, a UFS storage device single-unit test driver 300 based on the MT6891 platform is provided. The device also includes:

[0083] Release module 306 is used to officially release the UFS storage device standalone test driver package after the verification is passed.

[0084] In one embodiment, such as Figure 5 As shown, a UFS storage device single-unit test driver 300 based on the MT6891 platform is provided. The device also includes:

[0085] Environment setup module 307 is used to prepare the MT6891 platform, Windows platform and ADB tools, and to set up the MT6891 driver development environment on the Windows platform.

[0086] For specific limitations on the single-unit test driver for UFS storage devices based on the MT6891 platform, please refer to the limitations on the single-unit test driver method for UFS storage devices based on the MT6891 platform mentioned above, which will not be repeated here.

[0087] In one embodiment, a computer device is provided, the internal structure of which can be shown as follows: Figure 6As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and databases. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used for communication with external terminals via a network connection.

[0088] When executed by the processor, this computer program implements a single-unit test driver method for UFS storage devices based on the MT6891 platform.

[0089] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0090] 0 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, wherein the processor executes the computer program to implement the steps in the various method embodiments described above.

[0091] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps in the various method embodiments described above.

[0092] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the above-mentioned...

[0093] The flowcharts of embodiments of the methods are described below. Any references to memory, storage, databases, or other media used in the embodiments provided in this application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. (This is for illustrative purposes only and not for general purposes.)

[0094] Due to limitations, RAM is available in various forms, such as Static RAM (SRAM), Dynamic RAM (DRAM), 5 Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), Rambus Direct RAM (RDRAM), Direct Memory Bus Dynamic RAM (DRDRAM), and Memory Bus Dynamic RAM (RDRAM), etc.

[0095] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0096] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A method for testing a UFS storage device based on an MT6891 platform, the method comprising: developing a UFS command interface in a Linux source code UFS module; developing a UFS device in a platform based on a Linux character device driver development method and generating a device node file, the device node file including a UFS device file opening, closing, and UFS command operation method; developing a command interface function based on a UFS3.1 Jedec protocol and a library function supported by subsequent single test; compiling the developed code into an image file and burning the image file into the MT6891 platform; starting the MT6891 platform and using an ADB tool to execute the developed UFS command to verify correctness. After the step of starting the MT6891 platform and using the ADB tool to execute the developed UFS command to verify correctness, the method further comprises:

2. The MT6891 platform-based UFS storage device single-body test driving method according to claim 1, wherein, after verification, officially releasing a UFS storage device single test driver package. Before the step of developing a UFS command interface in a Linux source code UFS module, the method further comprises:

3. The MT6891 platform-based UFS storage device single-body test driving method according to any one of claims 1-2, characterized in that, preparing an MT6891 platform, a Windows platform, and an ADB tool, and building an MT6891 driver development environment on the Windows platform. The UFS storage device single test driver based on the MT6891 platform comprises:

4. A UFS storage device single test driving device based on an MT6891 platform, characterized in that, a first development module for developing a UFS command interface in a Linux source code UFS module; a second development module for developing a UFS device in a platform based on a Linux character device driver development method and generating a device node file, the device node file including a UFS device file opening, closing, and UFS command operation method; a third development module for developing a command interface function based on a UFS3.1 Jedec protocol and a library function supported by subsequent single test; a compilation and burning module for compiling the developed code into an image file and burning the image file into the MT6891 platform; a verification module for starting the MT6891 platform and using an ADB tool to execute the developed UFS command to verify correctness. The device further comprises:

5. The MT6891 platform-based UFS storage device single-body test driving device according to claim 4, characterized in that, a release module for officially releasing a UFS storage device single test driver package after verification. The device further comprises:

6. The MT6891 platform-based UFS storage device single-body test driving apparatus according to any one of claims 4-5, characterized in that, an environment building module for preparing an MT6891 platform, a Windows platform, and an ADB tool, and building an MT6891 driver development environment on the Windows platform. The processor executes the computer program to implement the steps of the method of any one of claims 1 to 3.

7. A computer device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The computer program is executed by the processor to implement the steps of the method of any one of claims 1 to 3.

8. A computer-readable storage medium having stored thereon a computer program, characterized in that, ​

Citation Information

Patent Citations

  • A universal flash memory test system based on an FPGA

    CN109411007A

  • Method and apparatus for automated test scheduling

    CN114328227A

  • Memory performance test method and related device

    CN115129570A