Device testing apparatus, device testing method and system
Patent Information
- Application Number
- CN202611095254.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-22
- Publication Date
- 2026-10-16
AI Technical Summary
由于DDR内存涉及的场景众多,所以需要大量不同场景的激励来对DDR内存进行测试,需要耗费大量的时间
[0016] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure.
Smart Images

Figure CN122925121A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of testing technology, and in particular to a device testing apparatus, device testing method and system. Background Technology
[0002] DDR (Double Data Rate) memory technology is an advanced memory technology used to increase the data transfer rate of SDRAM (Synchronous Dynamic Random-Access Memory). It achieves double the data transfer rate per clock cycle by transmitting data on both the rising and falling edges of the clock cycle, thus significantly improving memory performance. DDR memory performance plays a crucial role in the overall system performance. The main performance parameters of DDR memory include capacity, frequency, bandwidth, and latency. These parameters require specific stimuli during design to test and verify, ensuring performance stability. Because DDR memory is involved in numerous scenarios, testing it under a large number of different scenarios is necessary, which is time-consuming. Summary of the Invention
[0003] This disclosure provides a device testing apparatus, a device testing method, and a system that can reduce testing time. The technical solution of this disclosure is as follows: According to one aspect of the present disclosure, a device testing apparatus is provided, the apparatus comprising: a register, a test stimulus module, a stimulus processing module, and a data analysis module, wherein the register is connected to the test stimulus module and the data analysis module respectively, the test stimulus module and the stimulus processing module are connected, and the stimulus processing module and the data analysis module are used to connect to a target device; The register is configured to perform a test plan based on the target device, configuring the test stimulus module, the target device, and the data analysis module respectively. The test stimulus module is configured to send at least one stimulus to the stimulus processing module based on the configuration of the register, wherein each stimulus corresponds to a test scenario of the target device. The incentive processing module is configured to send the received incentives to the target device in a target data packet format in a target transmission mode. The target transmission mode is determined based on the number of received incentives, and the target data packet format is a format supported by the target device. The data analysis module is configured to collect and analyze the performance data of the target device in at least one test scenario based on the configuration of the register.
[0004] In one possible implementation, the register is configured to perform the following steps: Send first configuration information to the test stimulus module, wherein the first configuration information indicates the number and type of targets for stimulus; Send second configuration information to the target device, the second configuration information indicating the target number of test instances; Send third configuration information to the data analysis module, the third configuration information indicating the target number of monitor instances.
[0005] In one possible implementation, the test incentive module includes an incentive management unit and an incentive selection unit. The incentive management unit is configured to store incentives for multiple test scenarios; The incentive selection unit is configured to: receive first configuration information from the register, the first configuration information indicating the target number of incentives and the target test scenario; select multiple incentives from the incentive management unit based on the first configuration information, and send the multiple incentives to the incentive processing module, wherein the number of the multiple incentives and the test scenario match the first configuration information.
[0006] In one possible implementation, the stimulus processing module includes a stimulus identification unit and a stimulus parsing unit. The stimulus identification unit is configured to identify the received stimulus. If one stimulus is received, the serial transmission mode is output as the target transmission mode. If multiple stimuli are received, the parallel transmission mode is output as the target transmission mode. The stimulus parsing unit is configured to generate a data packet for each received stimulus, and to send the generated data packet to the target device in the target transmission mode, wherein the data packet belongs to the target data packet format.
[0007] In one possible implementation, the stimulus identification unit is configured to: store the received stimulus into a target queue; issue an error message when the queue depth of the target queue is less than 1; determine to send the stimulus in the target queue in serial mode if the queue depth of the target queue is equal to 1; and determine to send the stimulus in the target queue in parallel mode if the queue depth of the target queue is greater than 1.
[0008] In one possible implementation, the target device is configured to perform the following steps: Based on the configuration of the registers, a target number of test instances are generated, each test instance corresponding to a test scenario of the target device; The test instance receives the stimulus from the stimulus processing module and responds to the received stimulus to generate test data for the corresponding test scenario.
[0009] In one possible implementation, the data analysis module includes a monitoring unit and a data analysis unit. The monitoring unit is configured to generate a target number of monitor instances based on the configuration of the register, receive performance data generated by the target number of monitor instances and send it to the data analysis unit, and each monitor instance corresponds to a test scenario of the target device. The data analysis unit is configured to analyze the received performance data to obtain the test results of the target device.
[0010] In one possible implementation, the data analysis module is also connected to the test stimulus module, and the data analysis module is further configured to send the test results to the test stimulus module.
[0011] According to one aspect of the embodiments of this disclosure, a device testing method is provided, the method comprising: Obtain a test plan for the target device, the test plan including multiple test scenarios for the target device; Based on the aforementioned test plan, the equipment testing apparatus and the target equipment are configured; Based on the configured multiple test scenarios, determine multiple stimuli under the multiple test scenarios; In a parallel transmission mode, the multiple stimuli are sent to multiple channels of the target device, and the multiple stimuli are responded to by multiple test instances on the target device; The performance data of the multiple test instances is obtained, and the obtained performance data is analyzed to obtain the test results of the target device.
[0012] According to one aspect of the present disclosure, a device testing system is provided, the system comprising: a device testing apparatus and a target device, wherein the device testing apparatus is any of the device testing apparatuses described above; The device being tested is configured to generate a target number of test instances based on the configuration of the registers in the device testing apparatus. Each test instance corresponds to a test scenario of the target device. Multiple stimuli from the stimulus processing module are received in parallel through multiple channels of the target device. Each test instance responds to the received stimuli to generate test data for each test scenario.
[0013] According to another aspect of the embodiments of the present disclosure, a computer device is provided, the computer device comprising: One or more processors; Memory used to store the executable program code of the processor; The processor is configured to execute the program code to implement the aforementioned device testing method.
[0014] According to another aspect of the present disclosure, a computer-readable storage medium is provided, which, when the program code in the computer-readable storage medium is executed by the processor of a computer device, enables the computer device to perform the above-described device testing method.
[0015] According to another aspect of the present disclosure, a computer program product is provided, including a computer program / instructions that, when executed by a processor, implement the above-described device testing method.
[0016] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0017] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure, and are not intended to unduly limit this disclosure.
[0018] Figure 1 This is a schematic diagram of the structure of a device testing apparatus provided in an embodiment of this application.
[0019] Figure 2 This is a schematic diagram of the structure of the test stimulus module 102 provided in the embodiments of this application.
[0020] Figure 3 This is a schematic diagram of the structure of the excitation processing module 103 provided in the embodiments of this application.
[0021] Figure 4 This is a schematic diagram of the structure of the data analysis module 104 provided in the embodiments of this application.
[0022] Figure 5 This is a schematic diagram illustrating a device testing process according to an exemplary embodiment.
[0023] Figure 6 This is a block diagram illustrating a terminal according to an exemplary embodiment. Detailed Implementation
[0024] To enable those skilled in the art to better understand the technical solutions of this disclosure, the technical solutions in the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings.
[0025] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0026] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, data stored, data displayed, etc.) and signals involved in this disclosure are all authorized by the user or fully authorized by all parties, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0027] Figure 1 This is a schematic diagram of the structure of a device testing apparatus provided in an embodiment of this application. See also... Figure 1 The device includes: register 101, test stimulus module 102, stimulus processing module 103, and data analysis module 104. Register 101 is connected to test stimulus module 102 and data analysis module 104 respectively. Test stimulus module 102 and stimulus processing module 103 are connected. Stimulus processing module 103 and data analysis module 104 are used to connect to the target device. The following is a description of each module.
[0028] (1) Register 101 Register 101 is configured with a test plan based on the target device, configuring the test stimulus module, data analysis module, and data analysis module separately. Register 101 can be pre-configured with multiple configuration information corresponding to the test plan. This configuration information is used to configure each test module involved in the test. For example, register 101 includes configuration information for the test stimulus module, data analysis module, and data analysis module, used to configure the overall test environment before the test begins. Of course, register 101 can also store configuration information for the target device, used for configuring the target device.
[0029] The configuration information sent by register 101 to each test module can be different. For example, for the test stimulus module 102, the configuration information sent by register 101 determines which stimuli to send during the test. This can be a single stimuli or multiple stimuli, and in the case of sending multiple stimuli, these stimuli can be the same or different. In some embodiments, each test scenario corresponds to one type of stimulus, and the stimuli between scenarios are different. As another example, for the data analysis module 104, the configuration information sent by register 101 determines how many monitors to generate. Each monitor can be the same and is used to monitor the performance of each test scenario. For the target device, the configuration information sent by register 101 determines how many test instances to generate. Each test instance can be the same or different.
[0030] (2) Test stimulus module 102 The test stimulus module 102 is configured for register-based configuration, sending at least one stimulus to the stimulus processing module. Each stimulus corresponds to a test scenario of the target device. Register 101 can configure the stimuli it sends by sending configuration information to the test stimulus module. The test stimulus module 102 can receive the configuration information from register 101 and send a corresponding number of stimuli based on the configured number. The configuration information can also specify the type of stimulus to be sent, allowing the sending of multiple different types of stimuli to achieve simultaneous testing of multiple different scenarios. Alternatively, the configuration information can also indicate the number and type of stimuli; this embodiment does not limit this.
[0031] (3) Excitation processing module 103 The stimulus processing module 103 is configured to send the received stimuli to the target device in a target data packet format in a target transmission mode. The target transmission mode is determined based on the number of received stimuli, and the target data packet format is a format supported by the target device. The target transmission mode includes parallel transmission and serial transmission. Parallel transmission involves sending stimuli to multiple channels of the target device in parallel, while serial transmission involves sending multiple stimuli to one channel of the target device serially. Alternatively, serial transmission can also involve sending stimuli to multiple channels of the target device serially; this embodiment does not limit this.
[0032] The target data packet format is determined based on the transmission protocol supported by the target device. For example, if the target device supports the PCIe protocol, then the target data packet format refers to the data packet format under the PCIe protocol; if the target device supports the CXL protocol, then the target data packet format refers to the data packet format under the CXL protocol.
[0033] (4) Data Analysis Module 104 The data analysis module 104 is configured for register-based configuration to collect and analyze performance data of the target device under at least one test scenario. The data analysis module 104 is connected to both the target device and a register. The specific configuration of the data analysis module 104 can be determined by the configuration information of the register. The register can send configuration information of the data analysis module to the data analysis module 104 to configure the number of instances to be detected, etc. Furthermore, the data analysis module 104 is used to acquire performance data of different test instances on the target device through the connection with the target device to achieve the purpose of data collection. The collected test data is then analyzed to obtain test results. In some embodiments, the data analysis module 104 can also feed back the test results to the test stimulus module 102, which then makes adjustments based on the feedback test results. In some embodiments, the data analysis module 104 also generates adjustment information based on the test results to adjust the stimulus in the test stimulus module 102. The data analysis module 104 feeds back this adjustment information to the test stimulus module 102, which then adjusts the test based on the feedback adjustment information.
[0034] The device testing apparatus provided in this application includes a register, a test stimulus module, a stimulus processing module, and a data analysis module. It can uniformly configure the various components within the device testing apparatus through the register, thereby forming a consistent testing environment. This can meet the needs of a single scenario and also be well compatible with the testing needs of complex scenarios, thus greatly improving the flexibility of testing.
[0035] Based on the above-mentioned testing device, the main workflow during the testing process is as follows: The register sends configuration information to the test stimulus module, stimulus processing module, target device, and data analysis module for configuration. Specifically, the test stimulus module 102 sends a target number of stimuli to the stimulus processing module 103 according to the register configuration. The stimulus processing module 103 determines the sending mode based on the number of stimuli and parses the stimuli into data packets that the target device can recognize before sending them. The target device module instantiates different numbers of target devices according to the register configuration, receives the processed stimuli, and obtains performance data through the instantiated target devices. The performance data can be collected and analyzed by the data analysis module 104 through the instantiated monitors to obtain test results. The instantiation of the data analysis module 104 is also based on the register configuration. Through the above process, a consistent testing environment can be formed, which can meet the needs of a single scenario and also be well compatible with the testing needs of complex scenarios, greatly improving the flexibility of testing.
[0036] The functions of the test stimulus module 102 described above will be illustrated below. Figure 2 This is the structure of the test stimulus module 102 provided in the embodiments of this application, see [link / reference]. Figure 2 The test stimulus module 102 includes a stimulus management unit 1021 and a stimulus selection unit 1022, which are connected together.
[0037] The stimulus management unit 1021 is configured to store stimuli for multiple test scenarios. These stimuli can typically include any of the following: address stimuli, command stimuli, clock stimuli, control signal stimuli, and data stimuli. Different stimuli can be used to test different test scenarios. For example, in a scenario testing read / write functionality, address stimuli can be used. These address stimuli can inform the memory of the row, column, or block to be accessed, triggering the memory to respond to the address stimuli and output the data stored at the corresponding read / write location for reading or writing operations.
[0038] The stimulus selection unit 1022 is configured to receive first configuration information from a register, indicating the target number of stimuli and the target test scenario; select the target number of stimuli from the stimulus management unit based on the first configuration information, and send the target number of stimuli to the stimulus processing module, wherein the target number and test scenario match the first configuration information. Throughout the testing process, the quantity configuration for each component can be the same to maintain consistency in the test environment among the components. For the register, it can control the consistency of each component in terms of stimuli and test instances by sending different configuration information to different components, and can also ensure that each component can implement its function based on the same test environment by configuring different dimensions of each component.
[0039] The functions of the above-mentioned incentive processing module 103 will be described by way of example below. Figure 3 This is the structure of the excitation processing module 103 provided in the embodiments of this application, see [link / reference]. Figure 3 The stimulus processing module 103 includes a stimulus identification unit 1031 and a stimulus parsing unit 1032.
[0040] The stimulus identification unit 1031 is configured to identify the received stimuli. If one stimulus is received, the serial transmission mode is output as the target transmission mode; if multiple stimuli are received, the parallel transmission mode is output as the target transmission mode. This stimulus identification unit 1031 is mainly used to identify the number of received stimuli. Different numbers correspond to different transmission modes, thus making it applicable to different test scenarios. When the number of stimuli is 1, it indicates that the test scenario is a single-scenario test, and transmission can be performed through the target device's channel. In some embodiments, for test devices with multiple channels, the channel selected for transmission can be the default channel, any currently idle channel, or the channel previously used to transmit the same type of stimulus. This application embodiment does not limit this.
[0041] When there are multiple stimuli, due to the channel limitations of the target device, the number of stimuli may be less than or equal to the number of channels. In this case, two scenarios exist: First, if the number of stimuli is less than the number of channels of the target device, multiple channels can be randomly selected for transmission, or multiple adjacent channels can be selected for transmission when using parallel transmission mode. Second, if the number of stimuli equals the number of channels of the target device, multiple channels of the target device can be directly used for parallel transmission.
[0042] The stimulus parsing unit 1032 is configured to generate a data packet for each received stimulus and send the generated data packet to the target device in target transmission mode. The data packet belongs to the target data packet format. For the testing device, to adapt to different testing scenarios, it can support multiple different protocols. Accordingly, the stimulus can be encapsulated based on the current testing scenario to obtain a data packet format suitable for the corresponding testing scenario. The specific protocol used can be configured based on register configuration information; this application embodiment does not limit this.
[0043] In some embodiments, the reception and identification of the above-mentioned stimuli can be implemented based on a queue. That is, the above-mentioned stimuli identification unit 1031 is configured to: store the received stimuli into a target queue; when the queue depth of the target queue is less than 1, issue an error message; if the queue depth of the target queue is equal to 1, determine to send the stimuli in the target queue in serial mode; if the queue depth of the target queue is greater than 1, determine to send the stimuli in the target queue in parallel mode. In this embodiment, a target queue is set to store the received stimuli. At the same time, since the queue depth changes after the stimuli are stored, the queue depth of the target queue can be used to further determine the sending mode. If the queue depth is less than 1, it means that the stimuli identification unit has not received any stimuli, and a transmission error may have occurred. In this case, an error message can be issued to indicate that a problem has occurred in the test. If the queue depth is equal to 1, it means that only one stimuli has been received at this time. In this case, serial sending can be used to achieve real-time sending. If the queue depth is greater than 1, it means that multiple stimuli need to be sent. In this case, parallel sending is used.
[0044] In some embodiments, testing may involve sequential testing of multiple test scenarios, meaning the test scenarios occur in a specific order. Therefore, it's possible to send stimuli one by one. The queue depth-based judgment described above allows for transmission after each received stimulus, making it suitable for single-scenario or continuous scenario testing. For concurrent testing of multiple scenarios, this can be achieved through enqueuing and judging multiple stimuli and sending them in parallel, significantly expanding the applicability of the entire testing device and enhancing testing flexibility.
[0045] The functions of the data analysis module 104 described above will be illustrated below. Figure 4 This is the structure of the data analysis module 104 provided in the embodiments of this application, see [link / reference]. Figure 4 The data analysis module 104 includes a monitoring unit 1041 and a data analysis unit 1042.
[0046] The monitoring unit 1041 is configured for register-based configuration, generating a target number of monitor instances, receiving performance data generated by the target number of monitor instances, and sending it to the data analysis unit. Each monitor instance corresponds to a test scenario of the target device. The number of monitor instances can be the same as the number of test instances; that is, each test instance is configured with one monitor instance. This monitor instance acquires the performance data of the test instance, including its input / output data, processing time, and test resources, through active or passive acquisition.
[0047] The data analysis unit 1042 is configured to analyze received performance data to obtain test results for the target device. The data analysis unit 1042 analyzes the performance data provided by each monitor instance based on a pre-set analysis algorithm. This analysis can be for a single monitor instance or a combination of performance data from multiple monitor instances; this embodiment does not limit the specific approach. In some embodiments, the data analysis module 104 further generates adjustment information based on the test results to adjust the stimulus in the test stimulus module 102. The data analysis module 104 feeds this adjustment information back to the test stimulus module 102, which then adjusts the test based on the feedback adjustment information.
[0048] It should be noted that the device testing apparatus provided in the above embodiments is only illustrated by the division of the above functional units during device testing. In actual applications, the above functions can be assigned to different functional units as needed, that is, the internal structure of the computer device can be divided into different functional units to complete all or part of the functions described above.
[0049] The functions of the target device described above are illustrated below. The target device is configured to perform the following steps: based on register configuration, generate a target number of test instances, each test instance corresponding to a test scenario of the target device; receive stimuli from the stimulus processing module, and have the test instances respond to the received stimuli to generate test data for the corresponding test scenario.
[0050] Register 101 can configure the test scenario for the target device by sending configuration information. The target device can receive the configuration information from register 101 and generate a corresponding number of test instances based on the number of test instances configured in the configuration information. Of course, the configuration information can also include test scenario parameters to generate test scenarios with different configurations, thereby achieving the purpose of simultaneously testing multiple different scenarios or multiple parameter configurations under the same scenario. Based on the device design, the test data can be provided to the data analysis module 104 either actively sent or passively read; this embodiment does not limit this approach.
[0051] The following is a complete example to illustrate the entire process of the solution, facilitating understanding. Before testing with the application device testing equipment, preliminary preparations are needed by configuring the testing equipment. During configuration, the test plan for the target device is obtained. The test plan includes the test scenarios for the target device. Based on the test plan, registers are configured. For example, configuration information for various aspects of the test plan can be written into the registers. Before the test officially begins, the registers configure other modules of the device testing equipment and the target device.
[0052] See Figure 5 Under the configuration of register 101, the test stimulus module 102 determines the stimuli for multiple test scenarios based on the configured multiple test scenarios, namely scenario 1 stimuli to scenario n stimuli, and sends these stimuli to the stimulus processing module 103. The stimulus processing module 103 stores the received multiple stimuli in the target queue and judges the queue depth. When the queue depth is equal to 1, the stimulus is encapsulated into the target data packet format and sent serially. When the queue depth is greater than 1, that is, in the current scenario, the scenario 1 to scenario n stimuli are encapsulated into multiple data packets of the target data packet format and sent in parallel through multiple channels of the target device. When the queue depth is 0, an error is reported. The target device, based on the register configuration, can generate multiple corresponding test instances DUT1 to DUTn and respond to the data packets recorded in the above scenario 1 to scenario n stimuli. The performance data generated during the test is collected and analyzed by monitors 1 to n on the data analysis module. Optionally, the test results can be fed back to the test stimulus module 102 for adjustment.
[0053] This application provides a device testing system, which includes the aforementioned device testing apparatus and the aforementioned target device. The target device is configured to generate a target number of test instances based on the configuration of registers in the device testing apparatus, with each test instance corresponding to a test scenario of the target device. The system receives a target number of stimuli from the stimulus processing module, and each test instance responds to the received stimuli to generate performance data under each test scenario.
[0054] Accordingly, this application provides a device testing method, which includes: acquiring a test plan for a target device, the test plan including a test scenario for the target device; configuring a device testing apparatus and a test instance for the target device based on the test plan; determining stimuli under the test scenario based on the configured test scenario; when the number of determined stimuli is multiple, sending multiple stimuli to multiple channels of the target device in a parallel sending mode; when the number of determined stimuli is one, sending the stimuli to the target device; acquiring performance data of the test instance; and analyzing the acquired performance data to obtain the test result of the target device. Regarding the method in the above embodiments, the specific execution method of each step has been described in detail in the embodiments related to the apparatus, and will not be elaborated here. Furthermore, the device testing method and the device testing apparatus embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the apparatus embodiments, and will not be repeated here.
[0055] In summary, the beneficial effects of the embodiments of this application include the following aspects.
[0056] (1) The registers configured in the embodiments of this application can generate a consistent number of stimuli, DUTs and monitors through configuration. They can meet the needs of a single scenario and are also compatible with the testing needs of complex scenarios. They have good scalability and can greatly improve the flexibility of the entire testing system.
[0057] (2) The test stimulus module configured in the embodiments of this application can not only store the stimulus, but also improve the stimulus according to the feedback. It can realize multi-scenario stimulus that is more in line with the actual test needs and is applicable to tests in various fields, such as DDR controller, SSD controller and DMA controller.
[0058] (3) The embodiment of this application introduces a concurrency mechanism in the stimulus processing module, which enables the device testing device to send stimuli for different test scenarios in parallel. This can satisfy the needs of a single scenario and be compatible with multiple test scenarios, which can greatly improve the testing efficiency of the testing platform, meet the testing needs of large batches and multiple scenarios, and achieve the goal of high reusability.
[0059] (4) The data analysis module configured in this application embodiment implements a parameterizable monitor, which can flexibly instantiate the number of monitors according to the amount of performance data, and has the advantages of high flexibility and simple implementation. Furthermore, it enables the equipment testing device to dynamically adjust the input stimulus according to the test results, giving the test a self-improvement function, making the test scenario more in line with the actual testing needs, while improving the functional independence between stimuli in different test scenarios, increasing the richness of test stimuli, improving the efficiency and effectiveness of the test system, and having strong scalability and high reusability. The scalable data collection and analysis method proposed in this application embodiment is applicable to data collection and data analysis in various software and hardware.
[0060] (5) The device testing apparatus provided in this application embodiment is compatible with both single-scenario testing and multi-scenario testing. It can be used for performance testing of a single scenario, and can also be expanded into complex test scenarios in the later stages of project testing as needed, reducing additional development work and significantly improving project testing efficiency. The dynamic stimulus processing proposed in this application embodiment is applicable to various test schemes that require flexible expansion, including but not limited to FPGA, CPLD, and dedicated devices with programmable interfaces.
[0061] (6) The device under test provided in this application embodiment can be instantiated in a corresponding number of target devices according to actual needs, which can greatly improve development efficiency and is simple to implement.
[0062] (7) The dynamic performance testing method with feedback provided in the embodiments of this application can be used not only for the implementation of hardware solutions, but also for software testing, including but not limited to performance testing, reliability testing, compatibility testing, etc.
[0063] The equipment testing device can be implemented as a terminal. Figure 6 This is a block diagram illustrating a terminal 600 according to an exemplary embodiment. Figure 6 A structural block diagram of a terminal 600 provided in an exemplary embodiment of this disclosure is shown. The terminal 600 may be a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP4 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. The terminal 600 may also be referred to as a user device, portable terminal, laptop terminal, desktop terminal, or other names.
[0064] Typically, terminal 600 includes a processor 601 and a memory 602.
[0065] Processor 601 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 601 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 601 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 601 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the screen. In some embodiments, processor 601 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0066] The memory 602 may include one or more computer-readable storage media, which may be non-transitory. The memory 602 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 602 are used to store at least one computer program, which is executed by the processor 601 to implement the device testing method provided in the method embodiments of this application.
[0067] In some embodiments, the terminal 600 may optionally include a peripheral device interface 603 and at least one peripheral device. The processor 601, memory 602, and peripheral device interface 603 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 603 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 604, a display screen 605, a camera assembly 606, an audio circuit 607, and a power supply 608.
[0068] Peripheral interface 603 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 601 and memory 602. In some embodiments, processor 601, memory 602 and peripheral interface 603 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 601, memory 602 and peripheral interface 603 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0069] The radio frequency (RF) circuit 604 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 604 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 604 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. In some embodiments, the RF circuit 604 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The RF circuit 604 can communicate with other terminals through at least one wireless communication protocol. This wireless communication protocol includes, but is not limited to: the World Wide Web, metropolitan area networks, intranets, various generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and / or WiFi (Wireless Fidelity) networks. In some embodiments, the RF circuit 604 may also include circuitry related to NFC (Near Field Communication), which is not limited in this application.
[0070] Display screen 605 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 605 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 601 for processing. In this case, display screen 605 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 605, disposed on the front panel of terminal 600; in other embodiments, there may be at least two display screens, disposed on different surfaces of terminal 600 or in a folded design; in other embodiments, display screen 605 may be a flexible display screen, disposed on a curved or folded surface of terminal 600. Furthermore, display screen 605 may be configured as a non-rectangular, irregular shape, i.e., a non-rectangular screen. Display screen 605 may be made of materials such as LCD (Liquid Crystal Display) or OLED (Organic Light-Emitting Diode).
[0071] The camera assembly 606 is used to acquire images or videos. In some embodiments, the camera assembly 606 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal, and the rear-facing camera is located on the back of the terminal. In some embodiments, there are at least two rear-facing cameras, which are any one of a main camera, a depth-sensing camera, a wide-angle camera, and a telephoto camera, to achieve background blurring by fusion of the main camera and the depth-sensing camera, panoramic shooting by fusion of the main camera and the wide-angle camera, VR (Virtual Reality) shooting, or other fusion shooting functions. In some embodiments, the camera assembly 606 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash is a combination of a warm-light flash and a cool-light flash, which can be used for light compensation at different color temperatures.
[0072] The audio circuit 607 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, converting the sound waves into electrical signals that are input to the processor 601 for processing, or input to the radio frequency circuit 604 for voice communication. For stereo sound acquisition or noise reduction purposes, multiple microphones may be used, each located at a different part of the terminal 600. The microphone may also be an array microphone or an omnidirectional microphone. The speaker is used to convert the electrical signals from the processor 601 or the radio frequency circuit 604 into sound waves. The speaker may be a conventional diaphragm speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can convert electrical signals not only into audible sound waves but also into inaudible sound waves for purposes such as distance measurement. In some embodiments, the audio circuit 607 may also include a headphone jack.
[0073] Power supply 608 is used to power the various components in terminal 600. Power supply 608 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 608 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery that is charged via a wired line, and a wireless rechargeable battery is a battery that is charged via a wireless coil. The rechargeable battery can also be used to support fast charging technology.
[0074] Those skilled in the art will understand that Figure 6 The structure shown does not constitute a limitation on terminal 600, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0075] In an exemplary embodiment, a computer-readable storage medium including instructions is also provided, such as a memory including instructions, which can be executed by a processor of a computer device, such as a terminal, to complete the device testing method described above. Optionally, the computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0076] This disclosure also provides a computer program product, including a computer program / instructions that, when executed by a processor, implement the above-described device testing method.
[0077] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0078] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. A device testing apparatus, characterized in that, The device includes: a register, a test stimulus module, a stimulus processing module, and a data analysis module, wherein the register is connected to the test stimulus module and the data analysis module respectively, the test stimulus module and the stimulus processing module are connected, and the stimulus processing module and the data analysis module are used to connect to a target device; The register is configured to perform a test plan based on the target device, configuring the test stimulus module, the target device, and the data analysis module respectively. The test stimulus module is configured to send at least one stimulus to the stimulus processing module based on the configuration of the register, wherein each stimulus corresponds to a test scenario of the target device. The incentive processing module is configured to send the received incentives to the target device in a target data packet format in a target transmission mode. The target transmission mode is determined based on the number of received incentives, and the target data packet format is a format supported by the target device. The data analysis module is configured to collect and analyze the performance data of the target device in at least one test scenario based on the configuration of the register.
2. The equipment testing apparatus according to claim 1, characterized in that, The register is configured to perform the following steps: Send first configuration information to the test stimulus module, wherein the first configuration information indicates the number and type of targets for stimulus; Send second configuration information to the target device, the second configuration information indicating the target number of test instances; Send third configuration information to the data analysis module, the third configuration information indicating the target number of monitor instances.
3. The equipment testing apparatus according to claim 1, characterized in that, The test incentive module includes an incentive management unit and an incentive selection unit. The incentive management unit is configured to store incentives for multiple test scenarios; The incentive selection unit is configured to receive first configuration information from the register, wherein the first configuration information indicates the target number of incentives and the target test scenario; Based on the first configuration information, a target number of incentives are selected from the incentive management unit, and the target number of incentives is sent to the incentive processing module. The target number and the test scenario are matched with the first configuration information.
4. The equipment testing apparatus according to claim 1, characterized in that, The stimulus processing module includes a stimulus identification unit and a stimulus parsing unit. The stimulus identification unit is configured to identify the received stimulus. If one stimulus is received, the serial transmission mode is output as the target transmission mode. If multiple stimuli are received, the parallel transmission mode is output as the target transmission mode. The stimulus parsing unit is configured to generate a data packet for each received stimulus, and to send the generated data packet to the target device in the target transmission mode, wherein the data packet belongs to the target data packet format.
5. The equipment testing apparatus according to claim 4, characterized in that, The stimulus identification unit is configured to: store the received stimulus into a target queue; issue an error message when the queue depth of the target queue is less than 1; determine to send the stimulus in the target queue in serial mode if the queue depth of the target queue is equal to 1; and determine to send the stimulus in the target queue in parallel mode if the queue depth of the target queue is greater than 1.
6. The equipment testing apparatus according to claim 1, characterized in that, The target device is configured to perform the following steps: Based on the configuration of the registers, a target number of test instances are generated, each test instance corresponding to a test scenario of the target device; The test instance receives stimuli from the stimulus processing module and responds to the received stimuli to generate test data for the corresponding test scenario.
7. The equipment testing apparatus according to claim 1, characterized in that, The data analysis module includes a monitoring unit and a data analysis unit. The monitoring unit is configured to generate a target number of monitor instances based on the configuration of the register, receive performance data generated by the target number of monitor instances and send it to the data analysis unit, and each monitor instance corresponds to a test scenario of the target device. The data analysis unit is configured to analyze the received performance data to obtain the test results of the target device.
8. The equipment testing apparatus according to claim 7, characterized in that, The data analysis module is also connected to the test stimulus module, and the data analysis module is further configured to send the test results to the test stimulus module.
9. A device testing system, characterized in that, The system includes: an equipment testing device and a target device, wherein the equipment testing device is the equipment testing device according to any one of claims 1 to 8; The target device is configured to generate a target number of test instances based on the configuration of the registers in the device testing apparatus, with each test instance corresponding to a test scenario of the target device; it receives a target number of stimuli from the stimulus processing module, and each test instance responds to the received stimuli to generate performance data under each test scenario.
10. A method for testing equipment, characterized in that, The method includes: Obtain a test plan for the target device, the test plan including test scenarios for the target device; Based on the aforementioned test plan, the test instances for the equipment testing apparatus and the target equipment are configured; Based on the configured test scenario, determine the stimuli under the test scenario; When the number of determined stimuli is multiple, multiple stimuli are sent to multiple channels of the target device in parallel transmission mode; when the number of determined stimuli is 1, the stimuli are sent to the target device. The performance data of the test instance is obtained, and the obtained performance data is analyzed to obtain the test results of the target device.
11. A computer device, characterized in that, The computer device includes: One or more processors; Memory used to store the executable program code of the processor; The processor is configured to execute the program code to implement the device testing method as described in claim 10.
12. A computer-readable storage medium, characterized in that, When the instructions in the computer-readable storage medium are executed by the processor of a computer device, the computer device is able to perform the device testing method as described in claim 10.
13. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the device testing method of claim 10.