A method for automated testing of a PCIe board card

By automating testing methods, integrating multi-station testing processes, and utilizing embedded ARM microcontrollers and MES database management, the problem of high manpower requirements in network adapter production has been solved, achieving efficient and low-cost test management.

CN116506338BActive Publication Date: 2025-11-04SHENZHEN LIANRUI ELECTRONICS CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310477571.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-26
Publication Date
2025-11-04
Estimated Expiration
2043-04-26

AI Technical Summary

Technical Problem

In the current network adapter manufacturing process, the testing phase requires setting up multiple workstations, resulting in high manpower requirements, high management costs, and difficulty in expansion.

Method used

An automated testing method is adopted, which uses an embedded ARM microcontroller system to perform voltage and current tests, combines MES database management of employee information, automatically obtains and sets MAC addresses, uses iperf for performance testing, and uploads the data to the MES database for archiving, thus achieving fully automated testing.

Benefits of technology

It integrates multi-station testing, reduces manpower input, lowers management costs, improves testing efficiency and scalability, and is flexible and replicable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116506338B_ABST
    Figure CN116506338B_ABST
Patent Text Reader

Abstract

The application discloses a kind of PCIe board's automation test method. The present scheme aims at cooperating with automatic test hardware, and automatically completes the whole process of network card test, and one test machine can test up to 32 network cards simultaneously in one test process. After 32 network cards are installed by the operator, the test process is started, the test program automatically detects the network card type, calls the test scheme corresponding to the network card to complete the test, and finally saves the test data to the MES database. 32 network cards are tested simultaneously in parallel, and the test speed is fast. The whole test system is fully automatic, and the operator does not need to master network card knowledge, reducing the requirement for personnel training. One operator can easily manage multiple test machines, and the whole test process does not need manual intervention after starting the test process, greatly reducing the workload of the operator, reducing human operation errors and improving production efficiency. And it has very strong replicability, and only needs to copy the same test platform for capacity expansion.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network adapter manufacturing technology, and in particular to an automated testing method for PCIe boards. Background Technology

[0002] In the manufacturing of network adapters (commonly known as wired network cards), the production and testing phase typically begins after surface mounting. This process is almost always divided into different workstations based on function, such as PCBA power performance testing, adapter parameter correctness identification under the system, SN and MAC address flashing, firmware updates, functional testing, performance testing, and burn-in testing. These tasks require setting up various testing platforms. This production operation mode demands a large workforce, is difficult to maintain, increases management costs, and is not easily scalable.

[0003] Therefore, existing technologies have shortcomings and need to be improved. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of the prior art and provide an automated testing method for PCIe boards.

[0005] The technical solution of this invention is as follows: A method for automated testing of PCIe boards is provided, comprising the following steps:

[0006] Step 1: Employees log in and start the testing system to begin the testing process;

[0007] Step 2: Perform network card voltage and current tests using an embedded ARM microcontroller system. After the test is completed, send the test data to the host computer via serial port.

[0008] Step 3: Obtain the network card type by reading the device description field or the device field in the PCIe configuration space through the script, and call the corresponding test process according to the network card type; after obtaining the network card type, query the network card related registers or firmware related address data to obtain the network card firmware information or network card configuration information;

[0009] Step 4: Obtain the MAC address range, and then, based on the obtained network card type, use the software tool provided by the chip manufacturer to flash the network card's MAC address;

[0010] Step 5: Set the IP address of each network card using a script, and then call iperf to perform performance tests on the relevant network cards;

[0011] Step 6: Set the aging test time. During the aging period, the network card runs at full speed. The software records parameters such as the network card's voltage, current, temperature, network transmission bandwidth, and packet loss rate, and displays them as a graph.

[0012] Step 7: Print the corresponding labels according to the serial number, product name, and MAC address of the network card device, and attach the labels to the network card device;

[0013] Step 8: Upload the network card test data and product data to the MES database for archiving. The network card test data can be directly accessed and retrieved through the information on the tag.

[0014] Furthermore, the employee information and network card information in step 1 are both stored in the MES database. When employee data exists in the MES database, the employee's login information will be checked against the employee information in the MES database. Login will only be allowed if the check is correct.

[0015] Furthermore, the specific method for obtaining the MAC address range in step 4 is as follows: the test system connects to the MES database system, queries the currently available MAC address ranges, and applies to obtain MAC addresses; or an operator manually inputs the MAC address range.

[0016] Furthermore, the testing system provides two testing modes: automatic testing and manual testing, which can be switched within the system.

[0017] Furthermore, the test thread runs in the background, while the user interface program runs in the foreground. The test thread stopping or waiting will not affect the response of the user interface program. The user interface program obtains the test progress and test data of the test thread through thread communication and displays them to the user. User commands are sent to the test thread through inter-thread communication, and the test thread responds to user commands.

[0018] Furthermore, if an error occurs during the test, the system will automatically execute or allow the operator to choose to ignore, issue a warning message, or stop the test, depending on the error's severity and type.

[0019] Furthermore, each type of network card is compiled separately into a standard dynamic link library (DLL), which has the same function interface.

[0020] By adopting the above solution, the present invention has the following advantages:

[0021] 1. Integrate all testing stations into one station to complete the test;

[0022] 2. The entire process of testing, identification, connection, and flashing is automated, requiring no manual intervention;

[0023] 3. The test software architecture features a modular design, automatically selecting the corresponding test list based on the product model. It has strong inclusiveness and scalability, and is easy to maintain.

[0024] 4. A single workstation can simultaneously test different types of network cards by retrieving different test lists;

[0025] 5. Significantly reduced the investment in human resources and personnel management costs;

[0026] 6. The method provided by this invention is reproducible and can be flexibly replicated. Depending on the extent of production scale expansion, it can be replicated entirely or partially. Attached Figure Description

[0027] Figure 1 This is a flowchart of the present invention.

[0028] Figure 2 It consists of software modules. Detailed Implementation

[0029] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments.

[0030] Please see Figure 1 , Figure 2 This invention provides an automated testing method for PCIe boards, comprising the following steps:

[0031] Step 1: Employees log in and start the test system to begin the testing process. Employee information and network card information are stored in the MES database. When employee data exists in the MES database, the login process verifies the employee information against the database; only if the verification is correct is login allowed. Once logged in, legitimate employees can use the test system and proceed with the testing process. If the employee information verification fails, the testing process cannot start, thus improving the security of the testing process.

[0032] Step 2: The network card voltage and current test is performed using an embedded ARM microcontroller system. After measurement, the data is sent to the test host via serial port. The ARM microcontroller software is written in C language, developed using the KEIL MDK environment, and can use simple operating systems such as uCOS or FreeOS. The ARM uses a Cortex-M4 core, utilizing its internal 12-bit ADC to convert analog voltage and current to digital values. After acquiring the AD values, the ARM converts them into actual voltage and current values ​​and sends them to the test host via serial port. The communication protocol uses the Modbus protocol, which is free, stable, reliable, and widely used in industrial automation control. CRC checks are included to ensure data integrity.

[0033] Step 3: Obtain the network card type by reading the device description field or the device field in the PCIe configuration space through the script, and call the corresponding test process according to the network card type; after obtaining the network card type, query the network card related registers or firmware related address data to obtain the network card firmware information or network card configuration information.

[0034] Step 4: Obtain the MAC address range, and then, based on the obtained network card type, use the software tool provided by the chip manufacturer to scan the network card's MAC address. The specific method for obtaining the MAC address range is as follows: the test system connects to the MES database system, queries the currently available MAC address range, and requests a MAC address; alternatively, an operator can manually input the MAC address range. Then, based on the network card type, use the software tool provided by the chip manufacturer to scan the network card's MAC address.

[0035] Step 5: Configure the IP address for each network card using a script, then call iperf to perform relevant network card performance tests, such as UDP bandwidth, TCP bandwidth, packet loss rate, etc. Other software tools can also be used for various tests. If any test errors occur, prompt the operator for handling.

[0036] Step 6: Set the aging test time. During the aging period, the network card runs at full speed. The software records parameters such as the network card's voltage, current, temperature, network transmission bandwidth, and packet loss rate, and displays them as a graph.

[0037] Step 7: The labels mainly print the network card device serial number, product name, and MAC address. These parameters can be obtained from the MES database or set by the operator using a test machine. 32 labels are printed at a time, and the operator is prompted to affix them after printing.

[0038] Step 8: Upload the network card test data and product data to the MES database for archiving. The network card test data can be directly accessed and retrieved through the information on the tag, which is convenient for querying and traceability in subsequent processes.

[0039] The testing system offers two testing modes: automatic and manual. Users can switch between these modes within the system. Manual testing allows operators to click on a specific test step to perform an individual test. Alternatively, after modifying parameters, the automatic testing can resume from a previous step. Normally, the testing program will automatically complete all tests according to the established steps. The automatic testing function can be paused during testing. After pausing, operators can select a specific step to perform an individual test, or they can choose to continue to complete the remaining tests.

[0040] Each test machine has 32 network card slots, accommodating any type of network card. The program employs a multi-threaded design, with each network card slot corresponding to a dedicated thread responsible for its testing. Each thread is independent and can freely invoke its own test flow. The 32 test threads run synchronously in parallel, testing all 32 cards simultaneously, thus improving testing speed.

[0041] The test thread runs in the background, while the user interface program runs in the foreground. The test thread stopping or waiting will not affect the response of the user interface program. The user interface program obtains the test progress and test data of the test thread through thread communication and displays them to the user. User commands are sent to the test thread through inter-thread communication, and the test thread responds to user commands.

[0042] If an error occurs during testing, the system will automatically execute a handling method, or the operator can choose to ignore the error, issue a warning message, or stop the test, depending on the error's severity and type.

[0043] The testing process employs a modular design. Each network interface card (NIC) has the same interface for the same test step. The main test program calls these modules based on the NIC type. Because the interfaces are identical, updates and maintenance are relatively convenient. For new NIC models, only the corresponding test module needs to be added. Existing test modules do not require modification. Frequently modified test parameter configurations are placed in the corresponding NIC's XML file; modifying these parameters does not require program recompilation.

[0044] Each network interface card (NIC) test procedure is compiled into a separate standard dynamic link library (DLL), which has a unified function interface. When the test system needs to add a test procedure for a new NIC model, only the corresponding DLL file for the new model needs to be added. There is no need to compile or modify the test program, and it will not affect the existing NIC test procedures, thus simplifying system management.

[0045] The network interface card (NIC) utility software runs via a script. The testing software invokes the script whenever it needs to use the tool. The execution results are redirected to text files, which are then analyzed by the testing program to obtain the results, which are then analyzed based on the NIC type.

[0046] In summary,

[0047] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for automated testing of PCIe boards, characterized in that, Includes the following steps: Step 1: Employees log in and start the testing system to begin the testing process; Step 2: Perform network card voltage and current tests using an embedded ARM microcontroller system. After the test is completed, send the test data to the host computer via serial port. Step 3: Obtain the network card type by reading the device description field or the device field in the PCIe configuration space through the script, and call the corresponding test process according to the network card type; After obtaining the network card type, query the network card-related registers or firmware-related address data to obtain the network card firmware information or network card configuration information. Step 4: Obtain the MAC address range, and then, based on the obtained network card type, use the software tool provided by the chip manufacturer to flash the network card's MAC address; Step 5: Set the IP address of each network card using a script, and then call iperf to perform performance tests on the relevant network cards; Step 6: Set the aging test time. During the aging period, the network card runs at full speed. The software records parameters such as the network card's voltage, current, temperature, network transmission bandwidth, and packet loss rate, and displays them as a graph. Step 7: Print the corresponding labels according to the serial number, product name, and MAC address of the network card device, and attach the labels to the network card device; Step 8: Upload the network card test data and product data to the MES database for archiving. The network card test data can be directly accessed and retrieved through the information on the tag.

2. The method for automated testing of PCIe boards according to claim 1, characterized in that, The employee information and network card information in step 1 are both stored in the MES database. When employee data exists in the MES database, the employee will be checked against the employee information in the MES database when logging in. Only if the check is correct will the employee be allowed to log in.

3. The method for automated testing of PCIe boards according to claim 1, characterized in that, The specific method for obtaining the MAC address range in step 4 is as follows: the test system connects to the MES database system, queries the currently available MAC address range, and applies to obtain a MAC address; or an operator manually inputs the MAC address range.

4. The method for automated testing of PCIe boards according to claim 1, characterized in that, The testing system offers two testing modes: automatic testing and manual testing. Users can switch between these modes within the system.

5. The method for automated testing of PCIe boards according to claim 1, characterized in that, The test thread runs in the background, while the user interface program runs in the foreground. The test thread stopping or waiting will not affect the response of the user interface program. The user interface program obtains the test progress and test data of the test thread through thread communication and displays them to the user. User commands are sent to the test thread through inter-thread communication, and the test thread responds to user commands.

6. The method for automated testing of PCIe boards according to claim 1, characterized in that, If an error occurs during testing, the system will automatically execute a handling method, or the operator can choose to ignore the error, issue a warning message, or stop the test, depending on the error's severity and type.

7. The method for automated testing of PCIe boards according to claim 1, characterized in that, Each network card model is compiled into a separate standard dynamic link library (DLL), which has the same function interface.

Citation Information

Patent Citations

  • Network card testing method and device, electronic equipment and readable storage medium

    CN111786854A

  • Integrated management method, system and device for network card test

    CN115550221A