A monitor-based request analysis system
By deploying monitors on the critical paths of the GPU chip system to record transmission information, the problem of low efficiency in cache unit request analysis is solved, enabling fast and efficient request location and error analysis.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- 沐曦科技(成都)有限公司
- Filing Date
- 2026-01-20
- Publication Date
- 2026-04-10
AI Technical Summary
In GPU chip system verification, the request analysis efficiency of cache units is poor, especially when there are simulation errors in the cache units, making it difficult to efficiently locate specific requests.
Monitors are deployed on critical paths of the GPU chip system to record transmission information for each clock cycle and store it in a 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 CN121543523B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of chip design verification, in particular to a request analysis system based on a monitor. BACKGROUND
[0002] In a GPU chip system, the types of clients accessing the cache unit are diversified, and a large number of clients usually need to communicate with the cache unit.
[0003] In the GPU chip system verification scenario, each client may have multiple requests for reading and writing the cache unit. In the prior art, if there is a cache unit simulation error, the requests and returned data will be scattered in different paths and time points due to the large number of paths between the cache unit and each client. In this case, it will take a lot of time resources to analyze the specific request according to the simulation waveform, and the request analysis efficiency of the cache unit is poor.
[0004] Therefore, how to improve the request analysis efficiency of the cache unit has become a problem to be solved. SUMMARY
[0005] To solve the above technical problems, the technical scheme adopted by the present application is as follows:
[0006] A request analysis system based on a monitor, the system comprising: M clients {a1, a2, …, aM} and M first-level cache units {b1, b2, …, bM} corresponding to the M clients respectively, M cache management units {c1, c2, …, cM} corresponding to the M first-level cache units respectively, and N second-level cache units {d1, d2, …, dN}, wherein am is the mth client, bm is the mth first-level cache unit, cm is the mth cache management unit, dn is the nth second-level cache unit, m is an integer in the range of [1, M], n is an integer in the range of [1, N], wherein monitors are deployed on the transmission paths between am and bm, bm and cm, and cm and dn. m M m M m M n N m m m n m m m m m n
[0007] The client is configured to send a first preset request to the corresponding first-level cache unit, the first preset request being a read request or a write request.
[0008] The first-level cache unit is configured to send a second preset request to the corresponding cache management unit after receiving the first preset request.
[0009] The cache management unit is configured to determine a target cache unit from the 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.
[0010] The monitor is configured to obtain transmission information of the corresponding transmission path at each clock cycle, and record the transmission information at the clock cycle in a target file when the transmission information at the clock cycle meets a preset condition, the target file being used for request analysis.
[0011] Compared with the prior art, the request analysis system based on the monitor provided by the application has obvious beneficial effects, and can achieve considerable technical progress and practicability, and has wide industrial utilization value, and at least has the following beneficial effects:
[0012] The application provides a request analysis system based on a monitor, which deploys a monitor on a key path to obtain transmission information in a use case simulation process and stores the transmission information into a target file, so that requests and returns of a cache unit can be stored in a transmission information format, and subsequent search and extraction of specific requests according to the target file are facilitated, and error analysis can be performed only on specific requests, thereby effectively improving the request analysis efficiency of the cache unit. BRIEF DESCRIPTION OF DRAWINGS
[0013] In order to more clearly illustrate the technical solutions in the embodiments of the application, the following will briefly introduce the drawings needed to be used in the embodiment description. Obviously, the drawings in the following description are only some embodiments of the application, and other drawings can be obtained by those skilled in the art without creative effort on the basis of these drawings.
[0014] Figure 1 A flowchart of a computer program in a request analysis system based on a monitor provided by the application is shown. DETAILED DESCRIPTION
[0015] With reference to the drawings and the embodiments of the present application, the technical solutions in the embodiments of the present application will be described clearly and completely. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments of the present application, all the other embodiments obtained by those skilled in the art without creative efforts are within the scope of the present application.
[0016] The embodiment provides a signal searching system, which comprises M clients {a1, a2, …, aM} and M first-level cache units {b1, b2, …, bM} corresponding to the M clients respectively, M cache management units {c1, c2, …, cM} corresponding to the M first-level cache units respectively, and N second-level cache units {d1, d2, …, dN}. m M} and M client respectively corresponding first level cache unit {b1, b2, …, b m M}, M first level cache unit respectively corresponding cache management unit {c1, c2, …, c m M} and N second level cache unit {d1, d2, …, d n N}, wherein a m is the mth client, b m is the mth first level cache unit, c m is the mth cache management unit, d n is the nth second level cache unit, m is an integer in the range of [1, M], n is an integer in the range of [1, N], wherein the transmission path between a m and b m , the transmission path between b m and c m and the transmission path between c m and d n are all deployed with monitors.
[0017] The client is used for sending a first preset request to the first level cache unit corresponding to the client, wherein the first preset request is a read request or a write request.
[0018] The first level cache unit is used for sending a second preset request to the cache management unit corresponding to the first level cache unit after receiving the first preset request.
[0019] The cache management unit is used for determining a target cache unit from the N second level cache units according to the second preset request and sending a third preset request to the target cache unit after receiving the second preset request.
[0020] The monitor is used to obtain transmission information of a corresponding transmission path under each clock cycle, and record the transmission information under any clock cycle in a target file when the transmission information under the clock cycle meets a preset condition, and the target file is used for request analysis.
[0021] The client refers to a GPU internal module in the GPU system that needs to initiate a data access request, the data access request is the first preset request, and the cache unit refers to a high-speed temporary storage module between the GPU core and the display memory, used for temporarily storing hot data. The cache unit usually includes several levels, and the larger the level, the smaller the storage capacity of the cache unit and the faster the access speed.
[0022] In the embodiment, the client accesses data through the first-level cache unit and the second-level cache unit as an example. It should be noted that the implementer can also deploy a corresponding monitor on the transmission path from the second cache unit to the bus in actual application.
[0023] The cache management unit can be used for request routing, and the second-level cache unit to be accessed is determined according to the second preset request, that is, the target cache unit.
[0024] Specifically, the monitor instance obtained by instantiation is bound to the corresponding transmission path. Since a single client corresponds to a single first-level cache unit, and a single first-level cache unit corresponds to 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. A single cache management unit corresponds to a plurality of second-level cache units, and a plurality of cache management units share the same plurality of second-level cache units. Therefore, the monitor instance needs to be bound to the output port of the cache management unit and the input port of the second-level cache unit, so as to effectively reduce the number of monitors and reduce the delay impact of data collection on use case testing.
[0025] The target file can be in yaml format or json format, so that the subsequent search process can be performed in an automatic script manner.
[0026] In specific application, the cache management unit can split the second preset request into a plurality of third preset requests, so that the access address range of the third preset request matches the second-level cache unit.
[0027] In a specific embodiment, the system further includes a processor and a memory storing a computer program;
[0028] Referring to Figure 1A flowchart of a computer program executed by a processor in a monitor-based request analysis system provided by an embodiment of the present application is shown in the figure, and the following steps are implemented when the computer program is executed by the processor:
[0029] S101, obtaining search configuration information, the search configuration information including a physical address range and / or a client identifier;
[0030] S102, searching for a plurality of transmission information as reference information from the target file according to the search configuration information;
[0031] S103, for any reference information, determining a plurality of transmission information related to the reference information as associated information corresponding to the reference information according to the reference information and the transmission path corresponding to the reference information;
[0032] S104, forming transmission chain information from the reference information and each associated information corresponding thereto, the transmission chain information being used to support user request analysis.
[0033] The search configuration information can be set by the user, and the user can preliminarily determine the information of interest according to the target file to set the search configuration information, and then the automatic script performs specific request search according to the search configuration information. In an embodiment, the transmission information can include a transmission abnormality flag bit. When the transmission information is recorded in the target file, if the transmission abnormality flag bit is a first preset value, the transmission information is given a special identification in the target file, such as color identification, etc. The first preset value can be 1, and the transmission abnormality flag bit can represent the transmission abnormality that can be automatically identified by the verification scene in the simulation process.
[0034] The physical address range can include an address left range and an address right range, and the address right range is greater than or equal to the address left range.
[0035] The reference information can be transmission information meeting the search configuration information condition. In general, link tracking needs to be performed on abnormal transmission information so that the user can determine the specific error according to the link. Therefore, the associated information corresponding to the reference information needs to be determined to form the transmission chain information with the reference information.
[0036] In a specific embodiment, the transmission path between a m and b m , the transmission path between b m and c m , and the transmission path between c m and d n are all deployed with monitors, including:
[0037] a m to b mtransmission path of a m to a m transmission path of b m to c m transmission path of c m to b m transmission path of c m to d m transmission path of d m to c m transmission path of c
[0038] Since there is corresponding return information for the data request, the return information also needs to be monitored. For the transmission path between the client and the first-level cache unit, a monitor is deployed on the transmission path with the client as the sending end and the first-level cache unit as the receiving end, and a monitor is deployed on the transmission path with the client as the receiving end and the first-level cache unit as the sending end.
[0039] Similarly, for the transmission path between the first-level cache unit and the cache management unit, a monitor is deployed on the transmission path with the first-level cache unit as the sending end and the cache management unit as the receiving end, and a monitor is deployed on the transmission path with the first-level cache unit as the receiving end and the cache management unit as the sending end.
[0040] Since 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, in order to obtain the return information, a monitor instance needs to be bound at the input port of the cache management unit, and a monitor instance needs to be bound at the output port of the second-level cache unit, so as to reduce the number of monitors and reduce the delay impact of data collection on use case testing.
[0041] In a specific embodiment, the transmission information at least includes a request identifier, a request enable signal, a request type, a request timestamp, and a request address.
[0042] The request identifier is used to uniquely determine 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 display memory accessed by the corresponding request.
[0043] In a specific embodiment, the preset condition is that the request enable signal in the transmission information is valid.
[0044] When the request enable signal in the transmission information is valid, it means that the corresponding request starts to take effect, so only the transmission information with the valid request enable signal is recorded to simplify the target file and improve the search efficiency.
[0045] In a specific embodiment, the searching for the reference information from the target file according to the search configuration information comprises:
[0046] If the search configuration information only comprises the client identifier i, the transmission information corresponding to the transmission path between a i and b i , the transmission path between b i and c i , and the transmission path between c i and d j are determined as the reference information, wherein j is an integer in the range of [1, N];
[0047] If the search configuration information only comprises the physical address range, the transmission information corresponding to the request address within the physical address range is determined as the reference information.
[0048] If the search configuration information comprises the physical address range and the client identifier i, the transmission information corresponding to the transmission path between a i and b i , the transmission path between b i and c i , and the transmission path between c i and d j are determined as the intermediate information, and the intermediate information corresponding to the request address within the physical address range is determined as the reference information.
[0049] According to different search configuration information, the strategy for searching for the reference information is different, so that the reference information meeting the search configuration information can be quickly and efficiently searched.
[0050] In a specific embodiment, for any reference information, the associated information corresponding to the reference information is determined according to the reference information and the transmission path corresponding to the reference information, and the associated information comprises:
[0051] For any reference information, the transmission information having the same request identifier as the reference information is determined as the associated information of the reference information.
[0052] 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.
[0053] Since the second preset request can be converted into multiple third preset requests, each third preset request split from the second preset request corresponds to the same request identifier as the first preset request, and the request identifier of the return information corresponding to each third preset request is also considered to be the same as the request identifier of the first preset request.
[0054] In a specific embodiment, the transmission chain information is formed by the reference information and the corresponding associated information in a preset order, including:
[0055] The transmission chain information is formed by the reference information and the corresponding associated information in the order of the request time stamp corresponding to the reference information and the request time stamp corresponding to each associated information of the reference information.
[0056] The transmission chain information generally includes a first preset request, a second preset request, and multiple third preset requests, as well as return information corresponding to the first preset request, the second preset request, and the multiple third preset requests.
[0057] In this embodiment, the monitor is deployed on the key path to obtain transmission information during use case simulation and store it in a target file, so that the requests and returns of the cache unit can be stored in the form of transmission information, which facilitates subsequent search and extraction of specific requests according to the target file, and further enables error analysis of only specific requests, thereby effectively improving the request analysis efficiency of the cache unit.
[0058] Although some specific embodiments of the present application have been described in detail through examples, those skilled in the art should understand that the above examples are only for illustration, not for limiting the scope of the present application. 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 present application. The scope of the present application is defined by the appended claims.
Claims
1. A monitor-based request analysis system, characterized by, The system comprises M clients {a1, a2, …, aM} and M first-level cache units {b1, b2, …, bM} corresponding to the M clients respectively, M cache management units {c1, c2, …, cM} corresponding to the M first-level cache units respectively, and N second-level cache units {d1, d2, …, dN}. m M m M m M n N m m m n m m m m m n wherein a is the mth client, b is the mth first-level cache unit, c is the mth cache management unit, d is the nth second-level cache unit, m is an integer in the range of [1, M], and n is an integer in the range of [1, N], wherein a transmission path between a and b, a transmission path between b and c, and a transmission path between c and d are each provided with a monitor. The client is configured to send a first preset request to the corresponding first-level cache unit, the first preset request being a read request or a write request; The first-level cache unit is configured to send a second preset request to the corresponding cache management unit after receiving the first preset request; The cache management unit is configured to determine a target cache unit from the 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 configured to obtain transmission information of the corresponding transmission path in each clock cycle, and record the transmission information in a target file when the transmission information in any clock cycle meets a preset condition, the target file being configured to perform request analysis.
2. The request analysis system of claim 1, wherein, The system further comprises a processor and a memory storing a computer program; When the computer program is executed by the processor, the following steps are implemented: S101, obtaining search configuration information, the search configuration information comprising a physical address range and / or a client identifier; S102, searching for a plurality of transmission information as reference information from the target file according to the search configuration information; S103, for any reference information, determining a plurality of transmission information related to the reference information as associated information corresponding to the reference information according to the reference information and the transmission path corresponding to the reference information; S104, forming transmission chain information from the reference information and the associated information corresponding to the reference information in a preset order, the transmission chain information being configured to support user request analysis.
3. The request analysis system of claim 2, wherein, 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 , b m to a m , b m to c m , c m to b m , c m to d m , d m to c m are each provided with a monitor.
4. The request analysis system of claim 3, wherein, The transmission information at least comprises a request identifier, a request enable signal, a request type, a request timestamp and a request address.
5. The request analysis system of claim 4, wherein, The preset condition is that the request enable signal in the transmission information is valid.
6. The request analysis system of claim 4, wherein, The searching for a plurality of transmission information as reference information from the target file according to the search configuration information comprises: 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 comprises a physical address range, determining transmission information with a request address within the physical address range as reference information; If the search configuration information includes a physical address range and a client identification i, determine a i between b i and c i and d i corresponding to the transmission path between a i and b j respectively as intermediate information, and intermediate information whose request address is within the physical address range as reference information.
7. The request analysis system of claim 2, wherein, The determining a plurality of transmission information related to the reference information as associated information corresponding to the reference information according to the reference information and the transmission path corresponding to the reference information comprises: For any reference information, determining transmission information with a consistent request identifier as associated information of the reference information.
8. The request analysis system of claim 2, wherein, The forming transmission chain information from the reference information and the associated information corresponding to the reference information in a preset order comprises: Forming the transmission chain information from the reference information and the associated information corresponding to the reference information in the order of the request timestamp corresponding to the reference information and the request timestamp corresponding to each associated information of the reference information.
Citation Information
Patent Citations
Signal searching system
CN119088764A
Monitor rapid generation system for verification environment
CN119720885A