System and method for testing processor
By using automated testing methods in the processor testing system, the problems of non-reusable tracing paths and independent analysis of data from each tracing starting point are solved, achieving efficient and accurate processor testing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 广东鸿钧微电子科技有限公司
- Filing Date
- 2023-12-28
- Publication Date
- 2026-04-28
AI Technical Summary
In processor testing, tracing paths cannot be reused, and data from each tracing starting point needs to be analyzed independently, resulting in a time-consuming and labor-intensive configuration process. Furthermore, verification personnel need to perform tedious analysis on the data from each tracing starting point.
A processor testing system is provided, comprising a tracing component driving unit, a tracing test unit, and a tracing data analysis unit. The tracing component driving unit receives test requirements, the tracing test unit generates test cases and configures tracing paths, and the tracing data analysis unit processes and analyzes tracing data to achieve automated testing.
It automates processor testing, reduces manual setup and configuration time, improves testing efficiency, and accurately identifies anomalies in the tracking path by comparing and analyzing the results with the operation instructions, reducing false negatives or missed positives caused by human error and improving the accuracy of anomaly detection.
Smart Images

Figure CN121935084A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of processor testing technology, and more specifically to a processor testing system and method. Background Technology
[0002] With the rapid development of chip technology, the scale and complexity of chips are increasing daily, posing significant challenges to chip debugging and verification. Among numerous debugging functions, tracing plays a crucial role. It can track the operation instructions and data flow of the processor in real time, providing developers with valuable information about program execution. This information can be used for software error localization, system performance optimization, and more. However, current processor testing and verification functions face two major technical challenges:
[0003] Verifying tracing functionality typically requires detailed configuration of the tracing module, including selecting an appropriate tracing start point and configuring the corresponding tracing path. The complexity of the processor makes the configuration process time-consuming and labor-intensive, and whenever the chip's architecture or functionality is upgraded, verification personnel often need to reconfigure the tracing path, making it impossible to reuse the tracing path.
[0004] Existing processor test modules have various types of tracing start points, such as embedded tracing macrocells, system tracing macrocells, and instrument tracing macrocells. These tracing start points generate different data structures, and verification personnel need to analyze the data of each type of tracing start point independently, which is a cumbersome process. Summary of the Invention
[0005] In view of this, embodiments of the present invention provide a processor testing system and method to solve the problem that the tracking path cannot be reused during processor testing, and that each tracking starting point data needs to be analyzed independently.
[0006] In a first aspect, embodiments of the present invention provide a processor testing system, the system comprising: a tracking component driving unit, a tracking testing unit, and a tracking data analysis unit.
[0007] The tracking component driving unit is used to receive the test requirements of the target processor, determine the component information of the tracking component in the target processor according to the test requirements, and send the test requirements and the component information to the tracking test unit.
[0008] The tracking test unit is used to receive the test requirements and the component information, generate corresponding test cases based on the test requirements and configure a tracking path for accessing the tracking component, use the test cases to test the tracking component corresponding to the component information on the tracking path, obtain tracking data, and send the tracking data to the tracking data analysis unit.
[0009] The tracking data analysis unit is used to receive tracking data sent by the tracking test unit, process and analyze the tracking data, and generate verification results.
[0010] In an optional embodiment of this application, the tracking test unit is configured to assign a corresponding tracking identifier to the tracking start point according to the test requirements, and configure the tracking path according to the tracking start point and the tracking end point, wherein the tracking end point includes: a first tracking end point and a second tracking end point.
[0011] In an optional embodiment of this application, the tracking path includes: a tracking start point, a tracking selector, a tracking replicator, and a tracking interface.
[0012] The tracking start point is used to collect the data stream of the tracking component during the test process and send the data stream to the tracking selector;
[0013] The tracking selector is used to receive the data stream, summarize the data stream to obtain tracking data, and send the tracking data to the tracking replicator.
[0014] The tracking replicator is used to receive tracking data sent by the tracking selector and decompose the tracking data into a first data stream and a second data stream, wherein the first data stream is sent to a first tracking endpoint and the second data stream is sent to the tracking interface;
[0015] The tracking interface is used to receive a second data stream sent by the tracking replicator and transmit the second data stream to a second tracking endpoint. In an optional embodiment of this application, the method includes:
[0016] In an optional embodiment of this application, the tracking test unit is used to modify the parameters of the tracking component corresponding to the tracking path and reuse the tracking path after the parameters are modified.
[0017] In an optional embodiment of this application, the tracking data analysis unit is used to identify tracking identifiers in the tracking data, classify the tracking data based on the tracking identifiers, parse tracking data with the same tracking identifiers, and generate corresponding parsing results.
[0018] In an optional embodiment of this application, the tracking data analysis unit is used to acquire the operation instructions collected from the tracking starting point, and compare the analysis results with the operation instructions. If the analysis results are consistent with the operation instructions, it is determined that there is no abnormality in the tracking path; if the analysis results are inconsistent with the operation instructions, it is determined that there is an abnormality in the tracking path.
[0019] Secondly, embodiments of the present invention provide a method for testing a processor, the method comprising:
[0020] Obtain the test requirements for the target processor;
[0021] Determine the component information of the tracking component in the target processor based on the aforementioned test requirements;
[0022] Based on the test requirements, corresponding test cases are generated, and the test cases are used to test the tracking components corresponding to the component information on the tracking path to obtain tracking data.
[0023] The tracking data is analyzed to generate verification results.
[0024] In an optional embodiment of this application, the step of analyzing the tracking data to generate test results includes:
[0025] Obtain the operation instructions of the tracking component during the testing process;
[0026] The parsing result is compared with the operation instruction. If the parsing result is consistent with the operation instruction, it is determined that there is no abnormality in the tracking path. If the parsing result is inconsistent with the operation instruction, it is determined that there is an abnormality in the tracking path. The parsing result is obtained by parsing tracking data with the same tracking identifier, which is carried in the tracking data.
[0027] Thirdly, embodiments of the present invention provide a computer device, including: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the computer instructions to perform the processor testing method of the first aspect or any corresponding embodiment described above.
[0028] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing computer instructions for causing a computer to execute the test method of the processor of the first aspect or any corresponding embodiment described above.
[0029] The system and method provided in this application have the following beneficial effects:
[0030] The system provided in this application achieves automated processor testing through the collaborative work of a tracking component driver unit, a tracking test unit, and a tracking data analysis unit. Test requirements are received and converted into specific test cases and tracking path configurations, thereby reducing the time spent on manual setup and configuration and improving testing efficiency. By modifying the parameters of the tracking components corresponding to the tracking path, the modified tracking path can be reused, making testing more flexible and avoiding repetitive configuration and testing. By comparing the parsed results with the operation instructions, the system can accurately determine abnormal conditions in the tracking path. This automated anomaly detection function reduces missed or false alarms caused by human error and improves the accuracy of anomaly detection.
[0031] The method provided in this application automates the acquisition and processing of test requirements, simplifying the testing process and improving testing efficiency. It determines the component information of the tracking component in the target processor based on the test requirements, ensuring the accuracy and relevance of the test. Detailed verification results can be generated through analysis of the tracking data. Furthermore, by modifying the parameters of the tracking components corresponding to the tracking path, the modified tracking path can be reused, making the test more flexible. Attached Figure Description
[0032] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0033] Figure 1 This is a schematic diagram of a processor testing system according to some embodiments of the present invention;
[0034] Figure 2 This is a schematic diagram illustrating an example of configuring a tracking path according to some embodiments of the present invention;
[0035] Figure 3 This is a structural block diagram of a processor testing system according to some embodiments of the present invention;
[0036] Figure 4 This is a schematic flowchart of a processor testing method according to some embodiments of the present invention;
[0037] Figure 5 This is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. Detailed Implementation
[0038] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0039] According to embodiments of the present invention, a processor testing system and method are provided. It should be noted that the steps shown in the flowcharts in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowcharts, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0040] This embodiment provides a processor testing system. Figure 1 This is a schematic diagram of a processor testing system according to an embodiment of the present invention, such as... Figure 1 As shown, the system includes: a tracking component driving unit 100, a tracking testing unit 200, and a tracking data analysis unit 300.
[0041] The tracking component driver unit 100 is used to receive the test requirements of the target processor, determine the component information of the tracking component in the target processor according to the test requirements, and send the test requirements and component information to the tracking test unit 200.
[0042] In the embodiments of this application, the main function of the tracking component driving unit is to drive and configure the tracking component according to the testing requirements of the target processor, so as to carry out subsequent testing and analysis.
[0043] First, this unit is responsible for receiving test requests from external sources. These test requests can be the processor's performance under different workloads, such as instruction throughput, processing speed, and power consumption. By tracking the processor's instruction execution and data flow, it evaluates whether the processor's performance metrics meet the expected requirements.
[0044] Secondly, upon receiving test requests, the tracing component driver unit analyzes the component information of the tracing components in the target processor based on these requests. The component information may include the type, configuration, and working status of the tracing components.
[0045] Secondly, after determining the component information, the unit will send the test requirements and related component information to the tracking test unit. This process is the basis for the tracking test unit to generate and configure test cases.
[0046] Finally, this unit is also responsible for driving the tracking components in the target processor, which may include starting the tracking components, configuring tracking parameters, and controlling tracking data acquisition.
[0047] The tracking test unit 200 is used to receive test requirements and component information, generate corresponding test cases based on the test requirements, and configure the tracking path for accessing the tracking components. The test cases are used to test the tracking components corresponding to the component information on the tracking path to obtain tracking data, and the tracking data is sent to the tracking data analysis unit 300.
[0048] In this embodiment of the application, the main function of the tracking test unit is to generate corresponding test cases, configure and execute tests on the tracking components based on the received test requirements and component information.
[0049] First, the tracking test unit receives test requirements and component information from the tracking component driver unit, and automatically generates test cases for the target processor based on the received test requirements and component information. The test cases are a set of predefined test scripts and conditions for testing the target processor, which can verify the processor's functionality, performance and stability based on the test requirements and component information.
[0050] Secondly, in order to correctly access and collect data from the tracking components, the tracking test unit needs to configure the tracking path, which may include selecting an appropriate tracking start point, setting the parameters of the tracking channel, and configuring the data acquisition and processing methods.
[0051] Secondly, after configuring the tracing path, the tracing test unit uses the generated test cases to test the target processor on the configured path. This may involve operations such as instruction execution, data flow tracing, and exception simulation. During the test execution, data from the tracing component is collected in real time, which reflects the processor's behavior and state under different working scenarios.
[0052] Finally, the tracking test unit will collect the tracking data and send it to the tracking data analysis unit. The tracking data will be used for further data processing, analysis and comparison to verify whether the processor's performance and functions meet the expected requirements.
[0053] It should be noted that a trace path is a communication channel and interface used to acquire trace data from the target processor. In processor testing, the trace path acts as a bridge connecting the test unit and the processor, allowing the test unit to access and interact with the processor's internal components. Through the trace path, the test unit can send control signals, instructions, and data to the processor, and simultaneously acquire trace data from the processor.
[0054] The tracking data analysis unit 300 is used to receive tracking data sent by the tracking test unit 200, process and analyze the tracking data, and generate verification results.
[0055] In this embodiment, the main function of the tracking data analysis unit is to receive tracking data sent by the tracking test unit and process and analyze this data to generate verification results. First, the tracking data analysis unit receives tracking data from the tracking test unit through a specific communication interface. This data may include data from on-chip memory and off-chip storage. The source of the data is identified by analyzing the tracking identifiers in the tracking data. Second, for data read from on-chip memory, the tracking data analysis unit reads and parses the tracking data through a bus and a specific interface. For off-chip data, it acquires the data by sampling the chip port pins. Then, the parsed data is compared with the control instructions on the target processor. The tracking data analysis unit can detect the consistency of the data. If the data is consistent, it indicates that the tracking path is working normally; if the data is inconsistent, it may indicate that there is an anomaly or error in the tracking path.
[0056] Specifically, the tracking test unit 200 is used to assign a corresponding tracking identifier to the tracking start point according to the test requirements, and to configure the tracking path according to the tracking start point and the tracking end point. The tracking end point includes: a first tracking end point and a second tracking end point.
[0057] In this embodiment of the application, the tracing test unit is an important component for processor testing. This unit can assign tracing identifiers to tracing start points according to test requirements, and configure data transmission paths based on these start points and tracing end points.
[0058] First, the tracking test unit is responsible for determining the starting point that needs to be tracked and assigning a unique tracking identifier to each starting point. These identifiers are used for subsequent data processing and identification to ensure that each tracking starting point can be accurately distinguished.
[0059] Secondly, the tracking test unit is also responsible for configuring the data transmission path based on the tracking start and end points. The tracking path configuration can employ a parameterized configuration method to define the components and parameters of the tracking path, including the tracking start point, the channels of the tracking selector, and the channels of the tracking replicator. When the chip changes or a new generation of chip is developed, only the corresponding configuration parameters need to be modified, without redesigning the entire tracking system.
[0060] Finally, after configuring the tracking path, the tracking test unit controls the processor to enter a pause state so that data can be sampled from the tracking start point.
[0061] It should be noted that the tracking endpoint is the end point of the data transmission path, which can specifically include a first tracking endpoint and a second tracking endpoint. The first tracking endpoint can be on-chip storage, while the second tracking endpoint can be an off-chip endpoint. The first tracking endpoint is mainly responsible for temporarily storing and processing tracking data, while the second tracking endpoint may further process the data or send it to an external testing platform for analysis.
[0062] As an example, suppose a new processor requires detailed performance testing, necessitating that the tracing system accurately capture the processor's behavior and state when executing different instructions. Based on these requirements, four key tracing start points are selected: an M-series instrument tracing macrocell, an M-series embedded tracing macrocell, an A-series embedded tracing macrocell 0, and an A-series embedded tracing macrocell 1. Tracing data is stored at two tracing endpoints: on-chip memory and off-chip memory. Based on the tracing start and endpoint points, eight independent tracing paths can be automatically generated. Each path has its specific path and transmission target. These eight independent tracing paths specifically include:
[0063] Path a: Data from the M-series instrument's tracking macrocell is transmitted through channel 0, asynchronously bridged, and then stored in on-chip memory via the tracking replicator channel 0.
[0064] Path b: Data from the tracking macrocell of the M-series instrument is also sent to the external tracking interface via channel 0, through asynchronous bridging, and then via tracking replicator channel 1.
[0065] Path c: Data from the M-series embedded tracking macrocell is transmitted through channel 1, asynchronously bridged, and then stored in on-chip memory via tracking replicator channel 0.
[0066] Path d: Data from the M-series embedded tracking macrocell is transmitted through channel 1, via asynchronous bridging, and then through tracking replicator channel 1 to the off-chip tracking interface.
[0067] Path e: Data from the A-series embedded tracking macrocell 0 is transmitted through channel 2, asynchronously bridged, and then stored in on-chip memory via tracking replicator channel 0.
[0068] Path f: Data from the A-series embedded tracking macrocell 0 is transmitted through channel 2, via asynchronous bridging, and then through tracking replicator channel 1 to the off-chip tracking interface.
[0069] Path g: Data from the A-series embedded tracking macrocell 1 is transmitted through channel 3, asynchronously bridged, and then stored in on-chip memory via tracking replicator channel 0.
[0070] Channel h: Data from the A-series embedded tracking macro unit 1 is transmitted through channel 3, asynchronously bridged, and then sent to the off-chip tracking interface through tracking replicator channel 1.
[0071] Specifically, the tracing path includes: tracing start point, tracing selector, tracing replicator, and tracing interface.
[0072] The tracing start point is used to collect the data stream of the tracing component during the test and send the data stream to the tracing selector;
[0073] The trace selector is used to receive data streams, summarize the data streams to obtain trace data, and send the trace data to the trace replicator.
[0074] The tracking replicator is used to receive tracking data sent by the tracking selector and decompose the tracking data into a first data stream and a second data stream, wherein the first data stream is sent to the first tracking endpoint and the second data stream is sent to the tracking interface;
[0075] The tracking interface is used to receive a second data stream sent by the tracking replicator and transmit the second data stream to the second tracking endpoint.
[0076] In this embodiment, the tracking path includes a tracking start point, a tracking selector, a tracking replicator, and a tracking interface. These components work together to realize the entire process of acquiring, aggregating, replicating, and transmitting tracking data from multiple sources. Through this structure, the system can efficiently collect, store, and process data streams during testing, providing necessary information for further debugging and analysis.
[0077] In this embodiment, the tracking start point is the data source in the system, responsible for collecting key data streams when the processor executes tests; the tracking selector is a key component in the system, responsible for receiving data streams from multiple tracking start points, summarizing these data, and then selecting a specific data stream according to preset rules and conditions, and sending the selected data to the next component; the main function of the tracking replicator is to receive tracking data from the selector and decompose it into two independent data streams, one of which is sent to the first tracking endpoint as the first data stream, and the other data stream continues to be sent to the external device through the tracking interface as the second data stream; the tracking interface is a bridge connecting on-chip and external devices, used to receive the second data stream from the replicator, and responsible for transmitting the data stream to the second tracking endpoint.
[0078] As an example, such as Figure 2As shown, the M-series processor on the left has two trace sources: an instrument trace macrocell and an embedded trace macrocell 1; the N-series processor on the right includes embedded trace macrocell 2 and embedded trace macrocell 3. These four trace sources collectively provide data to the system, and the data from the four sources is converged into a single trace data stream via a selector. To avoid interference between different clock domains, this data is first isolated via an asynchronous bridge. Subsequently, the data is split into two paths by a replicator: one path goes into on-chip memory, and the other path is transmitted off-chip via the trace interface.
[0079] Specifically, the tracking test unit 200 is used to modify the parameters of the tracking components corresponding to the tracking path and reuse the tracking path after the parameters are modified.
[0080] In this embodiment, the tracking test unit can be configured using a parameterized approach. This means that components such as the tracking source, the tracking selector channel, and the tracking replicator channel can all be defined and adjusted through parameters. This approach provides greater flexibility, allowing for modifications to the relevant parameters rather than redesigning the entire tracking system when the chip's tracking system changes or a new generation of chips is developed.
[0081] Specifically, the tracking data analysis unit 300 is used to identify tracking identifiers in the tracking data, classify the tracking data based on the tracking identifiers, parse the tracking data with the same tracking identifiers, and generate corresponding parsing results.
[0082] In this embodiment, firstly, the tracking data analysis unit needs to identify tracking identifiers in the tracking data. These identifiers can be understood as the identity information of the tracking data, used to identify different tracking starting points and data sources. Secondly, by identifying these identifiers, the unit can accurately determine the source and classification of the data, group data with the same or similar identifiers together, and parse the tracking data in the same group to generate corresponding parsing results. The parsing results are consistent in form with the operation instructions collected from the tracking starting point, facilitating further analysis, comparison, and evaluation.
[0083] Specifically, the tracking data analysis unit 300 is used to acquire the operation instructions collected from the tracking starting point, and compare the analysis results with the operation instructions. If the analysis results are consistent with the operation instructions, it is determined that there is no abnormality in the tracking path; if the analysis results are inconsistent with the operation instructions, it is determined that there is an abnormality in the tracking path.
[0084] In this embodiment, firstly, the tracking data analysis unit needs to obtain operation instructions from the tracking start point. These instructions are generated when a specific operation or task is executed on the processor. Secondly, after receiving the tracking data, the unit uses an internal parser to parse it, obtaining the corresponding parsing result. The parsing result is then compared with the previously obtained operation instructions to obtain a comparison result. Finally, based on the comparison result, the data analysis unit can determine whether there is an anomaly in the tracking path. If the parsing result matches the operation instructions, it indicates that the tracking path is working normally; if they do not match, it indicates that there is a problem or error in the tracking path.
[0085] Figure 3 This is a structural block diagram of a processor testing system according to an embodiment of the present invention, such as... Figure 3 As shown, the system includes: a tracking component driving unit 100, a tracking testing unit 200, and a tracking data analysis unit 300.
[0086] The tracking component driving unit 100 is connected to the tracking test unit 200. It is used to receive the test requirements of the target processor, determine the component information of the tracking component in the target processor according to the test requirements, and send the test requirements and component information to the tracking test unit 200.
[0087] The tracking test unit 200 is connected to the tracking component driving unit 100 and the tracking data analysis unit 300. It is used to receive test requirements and component information, generate corresponding test cases based on the test requirements and configure the tracking path for accessing the tracking component, use the test cases to test the tracking component corresponding to the component information on the tracking path, obtain tracking data, and send the tracking data to the tracking data analysis unit 300.
[0088] The tracking data analysis unit 300 is connected to the tracking test unit 200. It is used to receive tracking data sent by the tracking test unit 200, process and analyze the tracking data, and generate verification results.
[0089] It should be noted that the processor's test system is connected to the debug bus and the tracing path respectively; the target processor is connected to the debug bus and the on-chip bus respectively, and is connected to the tracing path through the tracing start point in the target processor; the debug bus is connected to the processor's test system, the target processor, the tracing path, and the on-chip bus respectively; the tracing path is connected to the processor's test system, the target processor, and the debug bus respectively.
[0090] The second aspect of this application provides a method for testing a processor. Figure 4 This is a flowchart illustrating a processor testing method according to an embodiment of the present invention, as shown below. Figure 4 As shown, this method uses a test system for the processor of any of the above embodiments, and includes the following steps:
[0091] S101, Obtain the test requirements for the target processor.
[0092] In this embodiment, firstly, the processor's main functions and performance metrics are determined, such as processing speed, memory access patterns, and input / output interfaces. These functions and metrics will determine the scope and focus of the testing. Secondly, potential defects and error sources in the processor are analyzed, which may include hardware defects, software defects, communication protocol defects, etc. Furthermore, the processor's security and reliability requirements are considered, including needs related to data encryption, authentication, error detection, and recovery. Finally, the processor-specific test scenarios or requirements are understood in consultation with the processor development team. Incorporating these requirements into the test plan ensures the effectiveness and completeness of the testing.
[0093] The method provided in this application embodiment can ensure that the testing work is more targeted by clearly defining the testing requirements, avoiding blind testing and omissions. Testers can formulate detailed test plans and test cases according to the requirements to ensure that the test covers all key functions and performance indicators.
[0094] S102, determine the component information of the tracking component in the target processor according to the test requirements.
[0095] In this embodiment, firstly, it is necessary to clarify the type and function of the tracking component, such as its specific type, working principle, input / output interfaces, and data format. Secondly, the performance indicators of the tracking component need to be determined, such as data transmission rate, latency, and throughput. Furthermore, understanding the interaction methods and protocols between the tracking component and other processor components helps in developing test cases for these interactions to ensure the coordinated operation of the entire system.
[0096] The method provided in this application, by determining the component information of the tracking component in the target processor, can formulate more accurate test requirements and plans, and effectively verify the quality and reliability of the tracking component. This helps to reduce product development risks and improve the overall performance and stability of the processor.
[0097] S103, generate corresponding test cases based on test requirements, and use the test cases to test the tracking components corresponding to the component information on the tracking path to obtain tracking data.
[0098] In this embodiment, firstly, the testing requirements are analyzed to clarify the testing objectives, scope, and focus. Based on these requirements, detailed test cases are developed, each clearly describing the testing objective, input data, execution steps, expected results, and evaluation criteria. Secondly, an appropriate testing environment is established, including the configuration of hardware and software environments, and the preparation of necessary testing tools and auxiliary equipment. Thirdly, the tests for the tracking component are executed according to the steps of the test cases, and the status of the tracking component and the output of the relevant tracking data collected by the tracking component are observed.
[0099] The method provided in this application, through the execution of test cases, achieves comprehensive and in-depth verification of the system's tracing function, helping to ensure the functional correctness and reliability of the tracing components. Accurate testing and defect discovery can reduce the cost of later defect repair. Simultaneously, the output tracing data provides a data foundation for subsequent data analysis.
[0100] S104. Analyze the tracking data to generate verification results.
[0101] In this embodiment of the application, step S104 may specifically include the following steps A1-A2:
[0102] Step A1: Obtain the operation instructions of the tracking component during the test process.
[0103] In the embodiments of this application, when testing a processor or a specific component (such as a tracking component), there are preset operating instructions or expected behavior patterns. These operating instructions are typically formulated based on test requirements or test cases and describe the correct response or behavior of the tracking component under specific conditions.
[0104] Step A2: Compare the parsing results with the operation instructions. If the parsing results are consistent with the operation instructions, it is determined that there is no abnormality in the tracking path. If the parsing results are inconsistent with the operation instructions, it is determined that there is an abnormality in the tracking path. The parsing results are obtained by parsing tracking data with the same tracking identifier, which is carried in the tracking data.
[0105] In this embodiment, after executing the test cases, the actual response or behavior data of the tracking component is obtained, i.e., the parsing result. The parsing result is compared with the expected operation instructions. If the parsing result matches the operation instructions, it means that the performance of the tracking component during the test is as expected, and therefore it can be determined that there are no abnormalities in the tracking path (i.e., the transmission and processing path of the tracking data). If the parsing result does not match the operation instructions, it indicates that the actual behavior of the tracking component does not match the expectations, and therefore it can be determined that there are abnormalities in the tracking path. This usually means that there are problems in the design, implementation, or configuration of the processor or tracking component, requiring further diagnosis and resolution.
[0106] It should be noted that the parsing results are obtained by parsing tracking data with the same tracking identifier. The tracking identifier is carried within the tracking data and is used to identify and distinguish different tracking events or data segments. By parsing data with the same tracking identifier, the source of the tracking data, i.e., the starting point of the tracking, can be obtained, thereby more accurately evaluating the performance and behavior of the tracking component.
[0107] The method provided in this application ensures the accuracy and reliability of testing by comparing the parsing results with the operation instructions; by analyzing the tracking data, it enables an understanding of the actual behavior and performance of the tracking components during the testing process, which helps to optimize test cases, improve test processes and methods, and increase the efficiency and effectiveness of testing; through accurate testing and problem localization, the cost of fixing defects later can be reduced, and at the same time, early detection and resolution of problems can also reduce development costs and improve chip maintenance efficiency.
[0108] Please see Figure 5 , Figure 5 This is a schematic diagram of the structure of a computer device provided in an optional embodiment of the present invention, such as... Figure 5 As shown, the computer device includes one or more processors 10, memory 20, and interfaces for connecting the components, including high-speed interfaces and low-speed interfaces. The components communicate with each other via different buses and can be mounted on a common motherboard or otherwise installed as needed. The processors can process instructions executed within the computer device, including instructions stored in or on memory to display graphical information of a GUI on external input / output devices (such as display devices coupled to the interfaces). In some alternative implementations, multiple processors and / or multiple buses can be used with multiple memories and multiple memory modules, if desired. Similarly, multiple computer devices can be connected, each providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multiprocessor system).
[0109] Processor 10 may be a central processing unit, a network processor, or a combination thereof. Processor 10 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The programmable logic device may be a complex programmable logic device (CAMP), a field-programmable gate array (FPGA), a general-purpose array logic (GDA), or any combination thereof.
[0110] The memory 20 stores instructions executable by at least one processor 10 to cause at least one processor 10 to perform the method shown in the above embodiments.
[0111] The memory 20 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created based on the use of the computer device as shown by a landing page for an app. Furthermore, the memory 20 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some alternative embodiments, the memory 20 may optionally include memory remotely located relative to the processor 10, which can be connected to the computer device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0112] The memory 20 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, hard disk or solid-state drive; the memory 20 may also include a combination of the above types of memory.
[0113] The computer device also includes a communication interface 30 for communicating with other devices or communication networks.
[0114] This invention also provides a computer-readable storage medium. The methods described above according to embodiments of the invention can be implemented in hardware or firmware, or implemented as computer code that can be recorded on a storage medium, or implemented as computer code downloaded via a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code, which, when accessed and executed by the computer, processor, or hardware, implements the methods shown in the above embodiments.
[0115] Although embodiments of the invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the invention, and all such modifications and variations fall within the scope defined by the appended claims.
Claims
1. A processor testing system, characterized in that, The system includes: a tracking component driving unit, a tracking testing unit, and a tracking data analysis unit. The tracking component driving unit is used to receive the test requirements of the target processor, determine the component information of the tracking component in the target processor according to the test requirements, and send the test requirements and the component information to the tracking test unit. The tracking test unit is used to receive the test requirements and the component information, generate corresponding test cases based on the test requirements and configure a tracking path for accessing the tracking component, use the test cases to test the tracking component corresponding to the component information on the tracking path, obtain tracking data, and send the tracking data to the tracking data analysis unit. The tracking data analysis unit is used to receive tracking data sent by the tracking test unit, process and analyze the tracking data, and generate verification results.
2. The system according to claim 1, characterized in that, The tracking test unit is used to assign a corresponding tracking identifier to the tracking start point according to the test requirements, and to configure the tracking path according to the tracking start point and the tracking end point, wherein the tracking end point includes: a first tracking end point and a second tracking end point.
3. The system according to claim 2, characterized in that, The tracking path includes: a tracking start point, a tracking selector, a tracking replicator, and a tracking interface. The tracking start point is used to collect the data stream of the tracking component during the test process and send the data stream to the tracking selector; The tracking selector is used to receive the data stream, summarize the data stream to obtain tracking data, and send the tracking data to the tracking replicator; The tracking replicator is used to receive tracking data sent by the tracking selector and decompose the tracking data into a first data stream and a second data stream, wherein the first data stream is sent to a first tracking endpoint and the second data stream is sent to the tracking interface; The tracking interface is used to receive a second data stream sent by the tracking replicator and transmit the second data stream to a second tracking endpoint.
4. The system according to claim 3, characterized in that, The tracking test unit is used to modify the parameters of the tracking component corresponding to the tracking path and reuse the tracking path after the parameters are modified.
5. The system according to claim 4, characterized in that, The tracking data analysis unit is used to identify tracking identifiers in the tracking data, classify the tracking data based on the tracking identifiers, parse tracking data with the same tracking identifiers, and generate corresponding parsing results.
6. The system according to claim 5, characterized in that, The tracking data analysis unit is used to acquire the operation instructions collected from the tracking starting point, and compare the analysis results with the operation instructions. If the analysis results are consistent with the operation instructions, it is determined that there is no abnormality in the tracking path. If the analysis results are inconsistent with the operation instructions, it is determined that there is an abnormality in the tracking path.
7. A method for testing a processor, characterized in that, The method is applied to a test system for the processor, and the method includes: Obtain the test requirements for the target processor; Determine the component information of the tracking component in the target processor based on the aforementioned test requirements; Based on the test requirements, corresponding test cases are generated, and the test cases are used to test the tracking components corresponding to the component information on the tracking path to obtain tracking data. The tracking data is analyzed to generate verification results.
8. The method according to claim 7, characterized in that, The step of analyzing the tracking data to generate test results includes: Obtain the operation instructions of the tracking component during the testing process; The parsing result is compared with the operation instruction. If the parsing result is consistent with the operation instruction, it is determined that there is no abnormality in the tracking path. If the parsing result is inconsistent with the operation instruction, it is determined that there is an abnormality in the tracking path. The parsing result is obtained by parsing tracking data with the same tracking identifier, which is carried in the tracking data.
9. A computer device, characterized in that, include: A memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, the processor executing the computer instructions to perform the method of any one of claims 7 to 8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing the computer to perform the method of any one of claims 7 to 8.