Monitor-based request analysis system
By deploying monitors on the critical paths of the cache unit in the GPU chip system, recording and storing transmission information, the problem of low efficiency in cache unit request analysis is solved, enabling rapid error location and analysis.
Patent Information
- Application Number
- CN202610071260.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-20
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2046-01-20
AI Technical Summary
In GPU chip system verification, the request analysis efficiency of the cache unit is poor, especially when the paths between the cache unit and multiple clients are scattered, making it difficult to efficiently locate simulation errors.
Monitors are deployed on the critical paths of the cache unit to record the transmission information for each clock cycle and store it in the target file for subsequent request analysis.
By formatting the storage and transmission of information, the efficiency of cache unit request analysis is improved, enabling the rapid location of errors in specific requests.
Smart Images

Figure CN121543523A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of chip design verification technology, and in particular to a monitor-based request analysis system. Background Technology
[0002] In GPU chip systems, there is a wide variety of clients that access cache units, and there are usually a large number of clients that need to communicate with cache units.
[0003] In GPU chip system verification scenarios, each client may have multiple requests to access the cache unit for reading and writing. In existing technologies, if a cache unit simulation error occurs, due to the numerous pathways between the cache unit and each client, the request and return data will be scattered across different pathways and time points. In this case, it will consume a lot of time and resources to locate and analyze specific requests based on simulation waveforms, resulting in poor efficiency for cache unit request analysis.
[0004] Therefore, improving the request analysis efficiency of cache units has become an urgent problem to be solved. Summary of the Invention
[0005] To address the aforementioned technical problems, the technical solution adopted by this invention is as follows: A monitor-based request analysis system, the system comprising: M clients {a1, a2, ..., a...} m , ..., a M} and the first-level cache units {b1, b2, ..., b} corresponding to M clients respectively. m , ..., b M}, M first-level cache units correspond to cache management units {c1, c2, ..., c m c M} and N second-level cache units {d1, d2, ..., d n , ..., d N}, where a m For the m-th client, b m For the m-th first-level cache unit, c m For the m-th cache management unit, d n Let m be the nth second-level cache unit, where m is an integer in the range [1, M] and n is an integer in the range [1, N]. Here, a m With b m Transmission path between, b m With c m The transmission path between and c m With d n Monitors are deployed on all transmission paths between them.
[0006] The client is used to send a first preset request to its corresponding first-level cache unit, wherein the first preset request is a read request or a write request.
[0007] The first-level cache unit is used to send a second preset request to its corresponding cache management unit after receiving the first preset request.
[0008] The cache management unit is used to determine the target cache unit from N second-level cache units according to the second preset request after receiving the second preset request, and send a third preset request to the target cache unit.
[0009] The monitor is used to acquire the transmission information of the corresponding transmission path in each clock cycle. When the transmission information in any clock cycle meets the preset conditions, the transmission information in that clock cycle is recorded in the target file. The target file is used for request analysis.
[0010] Compared with the prior art, the present invention has significant advantages. Through the above technical solution, the monitor-based request analysis system provided by the present invention achieves considerable technological progress and practicality, and has broad industrial application value. It has at least the following advantages: This invention provides a monitor-based request analysis system. By deploying monitors on critical paths to acquire transmission information during use case simulation and storing it in target files, the system enables the requests and responses of cache units to be formatted and stored as transmission information. This facilitates subsequent direct searching and extraction of specific requests based on the target files, thereby enabling error analysis only for specific requests and effectively improving the request analysis efficiency of cache units. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0012] Figure 1 This is a flowchart illustrating the execution of a computer program by a processor in a monitor-based request analysis system, as provided in an embodiment of the present invention. Detailed Implementation
[0013] 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, and 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.
[0014] This embodiment provides a signal finding system, the system comprising: M clients {a1, a2, ..., a...} m , ..., a M} and the first-level cache units {b1, b2, ..., b} corresponding to M clients respectively. m , ..., b M}, M first-level cache units correspond to cache management units {c1, c2, ..., c m c M} and N second-level cache units {d1, d2, ..., d n , ..., d N}, where a m For the m-th client, b m For the m-th first-level cache unit, c m For the m-th cache management unit, d n Let m be the nth second-level cache unit, where m is an integer in the range [1, M] and n is an integer in the range [1, N]. Here, a m With b m Transmission path between, b m With c m The transmission path between and c m With d n Monitors are deployed on all transmission paths between them; The client is used to send a first preset request to its corresponding first-level cache unit, wherein the first preset request is a read request or a write request. The first-level cache unit is used to send a second preset request to its corresponding cache management unit after receiving the first preset request; The cache management unit is used to determine the target cache unit from N second-level cache units according to the second preset request after receiving the second preset request, and send a third preset request to the target cache unit; The monitor is used to acquire the transmission information of the corresponding transmission path in each clock cycle. When the transmission information in any clock cycle meets the preset conditions, the transmission information in that clock cycle is recorded in the target file. The target file is used for request analysis.
[0015] In this context, the client refers to the internal GPU module that needs to initiate a data access request in the GPU system. The data access request is the first preset request. The cache unit refers to the high-speed temporary storage module located between the GPU core and the video memory, which is used to temporarily store hot data. The cache unit usually includes several levels. The larger the level, the smaller the storage capacity of the cache unit and the faster the access speed.
[0016] In this embodiment, the example is taken as the client accessing data through the first-level cache unit and the second-level cache unit. It should be noted that in actual application, the implementer may also deploy a corresponding monitor on the transmission path from the second cache unit to the bus.
[0017] The cache management unit can be used to route requests and determine the second-level cache unit to be accessed, i.e., the target cache unit, based on the second preset request.
[0018] Specifically, the instantiated monitor instance is bound to the corresponding transmission path. Since a single client corresponds to only a single first-level cache unit, and a single first-level cache unit corresponds to only a single cache management unit, the monitor instance can be bound to the output port of the client and the output port of the first-level cache unit. However, a single cache management unit corresponds to multiple second-level cache units, and multiple cache management units share the same multiple second-level cache units. Therefore, it is necessary to bind the monitor instance to the output port of the cache management unit and to the input port of the second-level cache unit. This can effectively reduce the number of monitors and reduce the latency impact of data collection on test cases.
[0019] The target file can be in YAML or JSON format so that the subsequent search process can be automated using scripts.
[0020] In practical applications, the cache management unit may split the second preset request into multiple third preset requests so that the access address range of the third preset requests matches the second-level cache unit.
[0021] In one specific implementation, the system further includes a processor and a memory storing a computer program; See Figure 1 This is a flowchart illustrating the execution of a computer program by a processor in a monitor-based request analysis system according to an embodiment of the present invention. When the computer program is executed by the processor, the following steps are implemented: S101, Obtain search configuration information, the search configuration information including physical address range and / or client identifier; S102, based on the search configuration information, several transmission information items are searched from the target file as reference information; S103, for any reference information, based on the reference information and the transmission path corresponding to the reference information, determine several transmission information related to the reference information as the associated information corresponding to the reference information; S104, The reference information and its corresponding associated information are used to form transmission chain information, which is used to support users in performing request analysis.
[0022] The search configuration information can be set by the user. The user can initially determine the information of interest based on the target file to set the search configuration information, and then the automated script will perform the specific search request based on the search configuration information. In one embodiment, the transmission information may include a transmission anomaly flag. When the transmission information is recorded in the target file, if the transmission anomaly flag is a first preset value, the transmission information is given a special identifier in the target file, such as a color identifier. The first preset value can be 1. The transmission anomaly flag can represent the transmission anomalies that can be automatically identified by the verification scenario during the simulation process.
[0023] The physical address range can include a left address range and a right address range, where the right address range is greater than or equal to the left address range.
[0024] Reference information can refer to transmission information that meets the search configuration information conditions. In general, it is necessary to perform link tracing on abnormal transmission information so that users can determine the specific error based on the link. Therefore, it is necessary to determine the associated information corresponding to the reference information and form a transmission chain information with the reference information.
[0025] In one specific implementation, a m With b m Transmission path between, b m With c m The transmission path between and c m With d n Monitors are deployed on all transmission paths between them, including: a m To b m transmission path, b m To a m transmission path, b m To c m transmission path, c m To b m transmission path, c m To d m transmission path, d m To c m Monitors are deployed on all transmission paths.
[0026] Since data requests have corresponding return information, it is also necessary to monitor the return information. For the transmission path between the client and the first-level cache unit, a monitor is deployed on the transmission path where the client is the sender and the first-level cache unit is the receiver, and a monitor is deployed on the transmission path where the client is the receiver and the first-level cache unit is the sender.
[0027] Similarly, for the transmission path between the first-level cache unit and the cache management unit, a monitor is deployed on the transmission path where the first-level cache unit acts as the sender and the cache management unit acts as the receiver, and a monitor is deployed on the transmission path where the first-level cache unit acts as the receiver and the cache management unit acts as the sender.
[0028] Since a single cache management unit corresponds to multiple second-level cache units, and multiple cache management units share the same number of second-level cache units, in order to obtain the returned information, it is necessary to bind a monitor instance to the input port of the cache management unit and a monitor instance to the output port of the second-level cache unit, so as to reduce the number of monitors and reduce the latency impact of data collection on test cases.
[0029] In one specific implementation, the transmitted information includes at least a request identifier, a request enable signal, a request type, a request timestamp, and a request address.
[0030] Among them, the request identifier is used to uniquely identify the corresponding request, the request enable signal is used to indicate whether the corresponding request is valid in the current time period, the request type is used to indicate whether the corresponding request is a read request or a write request, the request timestamp is used to indicate the time point when the corresponding request is valid, and the request address is used to indicate the physical address of the video memory accessed by the corresponding request.
[0031] In one specific implementation, the preset condition is that the request enable signal in the transmitted information is valid.
[0032] Specifically, the corresponding request only begins to take effect when the request enable signal in the transmission information is valid. Therefore, only transmission information with a valid request enable signal is recorded to simplify the target file and thus improve search efficiency.
[0033] In one specific implementation, the step of searching for several transmission information items as reference information from the target file based on the search configuration information includes: If the search configuration information only includes the client identifier i, then determine a. i With b i Transmission path between, b i With c i The transmission path between and c i With d jThe transmission information corresponding to the transmission paths between them is used as reference information, where j is an integer in the range [1, N]. If the search configuration information only includes a physical address range, then the transmission information of the requested address within the physical address range is determined as reference information; If the search configuration information includes a physical address range and client identifier i, then determine a. i With b i Transmission path between, b i With c i The transmission path between and c i With d j The transmission information corresponding to the transmission paths between them is used as intermediate information, and the intermediate information of the request address within the range of the physical address is used as reference information.
[0034] The strategy for searching reference information varies depending on the search configuration information, thus enabling the search to quickly and efficiently find reference information that matches the search configuration information.
[0035] In one specific implementation, the step of determining, for any reference information, several transmission information related to the reference information as associated information corresponding to the reference information based on the reference information and the transmission path corresponding to the reference information includes: For any reference information, the transmission information that matches the request identifier contained in the reference information is determined as the associated information of the reference information.
[0036] Specifically, for a single first preset request, the request identifier of the second preset request corresponding to the first preset request is the same as that of the first preset request, the request identifier of the return information corresponding to the first preset request is also the same as that of the first preset request, and the request identifier of the return information corresponding to the second preset request is also the same as that of the first preset request.
[0037] Since the second preset request may be converted into multiple third preset requests, in this embodiment, the request identifiers corresponding to each of the third preset requests split from the second preset request are considered to be the same as the request identifier of the first preset request. Similarly, the request identifiers of the return information corresponding to each of the third preset requests are also considered to be the same as the request identifier of the first preset request.
[0038] In one specific implementation, the step of forming transmission chain information from the reference information and its corresponding associated information in a preset order includes: The transmission chain information is formed by the reference information and its corresponding associated information, in chronological order of the request timestamps corresponding to the reference information and the request timestamps corresponding to the various associated information of the reference information.
[0039] The transmission chain information typically includes a first preset request, a second preset request, and multiple third preset requests, as well as the return information corresponding to the first preset request, the second preset request, and the multiple third preset requests.
[0040] This embodiment deploys a monitor on the critical path to acquire transmission information during use case simulation and stores it in the target file. This allows the requests and responses of the cache unit to be formatted and stored as transmission information, facilitating subsequent direct search and extraction of specific requests based on the target file. Consequently, error analysis can be performed only on specific requests, effectively improving the request analysis efficiency of the cache unit.
[0041] While specific embodiments of the invention have been described in detail by way of example, those skilled in the art should understand that the examples are for illustrative purposes only and not intended to limit the scope of the invention. Those skilled in the art should also understand that various modifications can be made to the embodiments without departing from the scope and spirit of the invention. The scope of this invention is defined by the appended claims.
Claims
1. A monitor-based request analysis system, characterized in that, The system includes: M clients {a1, a2, ..., a...} m , ..., a M } and the first-level cache units {b1, b2, ..., b} corresponding to M clients respectively. m , ..., b M }, M first-level cache units correspond to cache management units {c1, c2, ..., c m c M } and N second-level cache units {d1, d2, ..., d n , ..., d N }, where a m For the m-th client, b m For the m-th first-level cache unit, c m For the m-th cache management unit, d n Let m be the nth second-level cache unit, where m is an integer in the range [1, M] and n is an integer in the range [1, N]. Here, a m With b m Transmission path between, b m With c m The transmission path between and c m With d n Monitors are deployed on all transmission paths between them; The client is used to send a first preset request to its corresponding first-level cache unit, wherein the first preset request is a read request or a write request. The first-level cache unit is used to send a second preset request to its corresponding cache management unit after receiving the first preset request; The cache management unit is used to determine the target cache unit from N second-level cache units according to the second preset request after receiving the second preset request, and send a third preset request to the target cache unit; The monitor is used to acquire the transmission information of the corresponding transmission path in each clock cycle. When the transmission information in any clock cycle meets the preset conditions, the transmission information in that clock cycle is recorded in the target file. The target file is used for request analysis.
2. The request analysis system according to claim 1, characterized in that, The system also includes a processor and a memory storing computer programs; When the computer program is executed by the processor, the following steps are performed: S101, Obtain search configuration information, the search configuration information including physical address range and / or client identifier; S102, based on the search configuration information, several transmission information items are searched from the target file as reference information; S103, for any reference information, based on the reference information and the transmission path corresponding to the reference information, determine several transmission information related to the reference information as the associated information corresponding to the reference information; S104, the reference information and its corresponding associated information are arranged in a preset order to form transmission chain information, which is used to support users in performing request analysis.
3. The request analysis system according to claim 2, characterized in that, a m With b m Transmission path between, b m With c m The transmission path between and c m With d n Monitors are deployed on all transmission paths between them, including: a m To b m transmission path, b m To a m transmission path, b m To c m transmission path, c m To b m transmission path, c m To d m transmission path, d m To c m Monitors are deployed on all transmission paths.
4. The request analysis system according to claim 3, characterized in that, The transmitted information includes at least the request identifier, request enable signal, request type, request timestamp, and request address.
5. The request analysis system according to claim 4, characterized in that, The preset condition is that the request enable signal in the transmitted information is valid.
6. The request analysis system according to claim 4, characterized in that, The step of searching for several transmission information items as reference information from the target file based on the search configuration information includes: If the search configuration information only includes the client identifier i, then determine a. i With b i Transmission path between, b i With c i The transmission path between and c i With d j The transmission information corresponding to the transmission paths between them is used as reference information, where j is an integer in the range [1, N]. If the search configuration information only includes a physical address range, then the transmission information of the requested address within the physical address range is determined as reference information; If the search configuration information includes a physical address range and client identifier i, then determine a. i With b i Transmission path between, b i With c i The transmission path between and c i With d j The transmission information corresponding to the transmission paths between them is used as intermediate information, and the intermediate information of the request address within the range of the physical address is used as reference information.
7. The request analysis system according to claim 2, characterized in that, For any given reference information, based on the reference information and its corresponding transmission path, several transmission information items related to the reference information are determined as associated information corresponding to the reference information, including: For any reference information, the transmission information that matches the request identifier contained in the reference information is determined as the associated information of the reference information.
8. The request analysis system according to claim 2, characterized in that, The transmission chain information formed by the reference information and its corresponding associated information in a preset order includes: The transmission chain information is formed by the reference information and its corresponding associated information, in chronological order of the request timestamps corresponding to the reference information and the request timestamps corresponding to the various associated information of the reference information.
Citation Information
Patent Citations
Scheduling detection method and device, equipment and computer readable storage medium
CN112699626A
EDA verification method and device for FlexE subsystem
CN114997100A
Virtual simulation method and device, computer equipment and program product
CN118797964A
Signal searching system
CN119088764A
Monitor rapid generation system for verification environment
CN119720885A