Verification method and verification system
By reallocating the target Trid for AXI data in the bridge and combining it with Vcid, the challenge of protocol conversion verification between the AXI interface and the credit-based flow control on-chip network is solved, achieving accurate data transmission and verification.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- MOORE THREADS TECH CO LTD
- Filing Date
- 2026-03-26
- Publication Date
- 2026-05-01
AI Technical Summary
In integrated circuits, existing FIFO designs may introduce bubbles or waste capacity, and verifying the protocol conversion between the AXI interface and the credit-based flow control on-chip network is difficult, making verification challenging.
By reassigning the target Trid for each AXI data in the bridge and synchronizing it to the reference model, combined with the virtual channel identifier Vcid, it is ensured that each target Trid uniquely corresponds to one AXI data between the bridge and the NOC, thus achieving accurate verification of protocol conversion.
It improves the accuracy of protocol conversion verification between the AXI interface and the credit-based flow control on-chip network, simplifies the verification process, and ensures the order and consistency of data transmission.
Smart Images

Figure CN121967327A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of integrated circuit technology, specifically to a verification method and verification system. Background Technology
[0002] With the rapid growth of network scale and applications, congestion has become an increasingly important and prominent problem during data transmission. Although congestion control strategies have been widely adopted, improving network throughput remains an important area for improvement.
[0003] In standard synchronous interfaces, directly using registers to time handshake signals can easily lead to signal deviations in different directions. Therefore, a more complex FIFO (First In First Out) structure is introduced to replace the register method for time-time handshake signals, facilitating backend timing convergence. However, various FIFO designs may introduce bubbles, waste capacity, or introduce unnecessary handshake logic combination chains. Summary of the Invention
[0004] This disclosure presents a verification method and a verification system.
[0005] In a first aspect, embodiments of this disclosure propose a verification method applied to a bridge between an intellectual property IP core integrating an Advanced Extensible Interface (AXI) and a network on-chip (NOC) with credit-based flow control. The method includes: in the request direction, in response to receiving AXI data from the IP core to the NOC requesting a transaction, reassigning a transaction identifier Trid to the AXI data to obtain a target Trid for the AXI data, and synchronizing the target Trid of the AXI data to a verification device; wherein the request direction is the data flow direction from the IP core to the NOC; in the response direction, in response to receiving first flow control data returned by the NOC corresponding to the AXI data, performing protocol conversion on the first flow control data to obtain first register transfer level (RTL) data conforming to the AXI protocol, so that the verification device compares the first RTL data with first reference data based on the target Trid to obtain a protocol conversion verification result; wherein the first flow control data includes the target Trid, and the response direction is the data flow direction from the NOC to the IP core.
[0006] In some embodiments, the NOC includes a router, and the method further includes: in the requesting direction, in response to receiving AXI data sent by the IP core, allocating a Virtual Channel Identifier (Vcid) for the AXI data; wherein the router transmits the AXI data according to the Vcid of the AXI data; in the responding direction, returning the Vcid of the AXI data corresponding to the first flow control data to the verification device, so that the verification device compares the first RTL data with the first reference data in the reference model based on the target Trid and the Vcid; wherein the first flow control data is returned by the router to the bridge according to the Vcid of the AXI data corresponding to the first flow control data.
[0007] In some embodiments, in the response direction, returning the Vcid of the AXI data corresponding to the first flow control data to the verification device includes: writing the Vcid of the AXI data corresponding to the first flow control data into a custom signal of the AXI protocol in the response direction, and sending the custom signal to the verification device; wherein, both the first RTL data and the first reference data in the verification device include the custom signal.
[0008] In some embodiments, the method further includes: in the requesting direction, performing port arbitration on the AXI data sent by the IP core from multiple AXI ports to obtain the target port; and receiving the AXI data corresponding to the target port.
[0009] Secondly, this disclosure also provides another verification method, which is applied to a verification device for verifying the protocol conversion between an IP core integrating AXI and a NOC based on credit-based flow control. The protocol conversion is implemented through a bridge. The method includes: receiving a target transaction identifier Trid corresponding to AXI data and obtaining first reference data based on the target Trid; wherein the target Trid is obtained by the bridge in the request direction, in response to receiving AXI data from the IP core to the NOC requesting a transaction operation, by reallocating the transaction identifier Trid to the AXI data, and the request direction is the data flow direction of the IP core sending the request transaction to the NOC; receiving first RTL data sent by the bridge in the response direction; wherein the first RTL data is obtained by the bridge performing protocol conversion on the first flow control data returned by the NOC corresponding to the AXI data, the first flow control data including the target Trid, and the response direction is the data flow direction of the NOC returning flow control data to the IP core; and comparing the first RTL data with the first reference data based on the target Trid to perform protocol conversion verification.
[0010] In some embodiments, the first RTL data includes multiple flow control protocol data, with one flow control protocol data corresponding to one AXI data; the AXI data also includes an initial Trid, and the initial Trid of the AXI data has a mapping relationship with the corresponding target Trid; the first reference data includes multiple reference flow control data corresponding to the flow control protocol data; wherein, comparing the first RTL data with the first reference data based on the target Trid includes: for each flow control protocol data in the first RTL data, determining the data to be compared corresponding to the flow control protocol data from the multiple reference flow control data in the first reference data according to the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data; and comparing the flow control protocol data with the data to be compared.
[0011] In some embodiments, the same initial Trid exists in multiple AXI data sets; the NOC includes a router, and the method further includes: in the request direction, receiving a virtual channel identifier (Vcid) corresponding to the AXI data; wherein, the Vcid is obtained by the bridge in response to receiving the AXI data sent by the IP core in the request direction, and allocating a Vcid to the AXI data; in the response direction, the router returns the first flow control data to the verification device according to the Vcid of the AXI data corresponding to the first flow control data; wherein, determining the data to be compared corresponding to the flow control protocol data from multiple reference flow control data in the first reference data according to the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data includes: determining, according to the mapping relationship, initial data that has a mapping relationship with the target Trid of the flow control protocol data from multiple reference flow control data in the first reference data; and determining the data to be compared from the initial data according to the Vcid corresponding to the target Trid.
[0012] In some embodiments, receiving the target transaction identifier Trid corresponding to AXI data includes: receiving second flow control data, including the target Trid, sent by the bridge in the request direction; wherein the second flow control data is obtained by the bridge performing protocol conversion on the AXI data sent by the IP core in the request direction; and stripping the second flow control data packet to obtain the target Trid corresponding to the AXI data.
[0013] In some embodiments, the above method further includes: performing a consistency check on the received target Trid to ensure that there are no duplicates among the target Trids.
[0014] In some embodiments, the method further includes: obtaining second RTL data based on second flow control data; and comparing the second RTL data with second reference data in a reference model to verify the protocol conversion of the request direction.
[0015] Thirdly, this disclosure also provides a verification system, which includes a bridge and a verification device communicatively connected to the bridge. The bridge is used to perform an embodiment of any of the verification methods in the first aspect described above; the verification device is used to perform an embodiment of any of the verification methods in the second aspect described above.
[0016] The verification method provided in this embodiment of the present disclosure ensures that each target Trid uniquely corresponds to one AXI data point between the bridge and the NOC by reallocating a target Trid for each AXI data point in the bridge. At the same time, the target Trid allocated to the AXI data is synchronized to the reference model to ensure that the target Trid corresponding to the RTL data is consistent with that of the reference data in the reference model. Thus, when performing protocol verification on the response direction, the first flow control data can be kept in order to ensure the accuracy of the verification. Attached Figure Description
[0017] Other features, objects, and advantages of this disclosure will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings: Figure 1 A schematic diagram illustrating a credit-based flow control method for controlling data transmission provided in this disclosure; Figure 2 This is a schematic diagram illustrating a method for data transmission between an IP core with an AXI interface and an NOC, as provided in this disclosure. Figure 3 A flowchart of a verification method provided in an embodiment of this disclosure; Figure 4 A flowchart of yet another verification method provided in this disclosure embodiment; Figures 5a-5b A flowchart illustrating a verification method combining a verification device and a bridge, as provided in this disclosure embodiment; Figures 6a-6b Structural block diagrams of two verification devices provided in the embodiments of this disclosure; Figure 6c This is a structural block diagram of a verification system provided in this disclosure. Detailed Implementation
[0018] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding; these should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description. It should be noted that, unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other.
[0019] Credit-based flow control controls the data transmission rate by allocating and reclaiming credits. In various high-bandwidth interconnects, credit-based flow control is commonly used to prevent data backlog or loss due to insufficient processing power at the receiving end. High-bandwidth interconnects can be NoC (Network-on-Chip), PCIe (Peripheral Component Interconnect Express), or some on-chip high-speed interfaces. Using credit-based flow control to control data transmission eliminates the need to consider link latency, adaptively adjusts the data rate, and is an effective way to implement flow control for each virtual circuit in a per-link manner.
[0020] Figure 1 This is a schematic diagram of a credit-based flow control method for controlling data transmission, which is applied between multiple hosts and multiple switches, and each host and switch includes a virtual buffer (VC Buffer).
[0021] like Figure 1 As shown, this method is specifically applied between Host1, Host2, Host3, Switch1, and Switch2. Specifically, between Host1 and Switch2, Switch2 and Switch1, Switch1 and Host3, and Host2 and Switch1, data (Date) is read from the sender's VC Buffer and sent to the receiver's VC Buffer in the forward direction. Simultaneously, in the reverse direction, the receiver returns the corresponding Credit to the corresponding sender's VC Buffer to control the sender's data transmission.
[0022] In some embodiments, most intellectual property (IP) modules can be encapsulated as IP cores with AXI interfaces. Therefore, an AXI2NOC / NOC2AXI bridge needs to be added between the IP core with the Advanced eXtensible Interface (AXI) and the network-on-chip (NOC) based on flow control to convert between the AXI protocol and the corresponding flow control protocol, enabling data transmission between the IP core and the NOC.
[0023] Figure 2 This disclosure provides a schematic diagram of a method for data transmission between an IP core with an AXI interface and a NOC. Data transmission between the IP core and the NOC is achieved by adding an AXI2NOC / NOC2AXI bridge. The number of AXI2NOC / NOC2AXI bridges can be set to one or more as needed, and one AXI2NOC / NOC2AXI bridge can correspond to one or more AXI interfaces. Furthermore, data or credit is transmitted within the NOC through multiple routers. Additionally, one IP core can correspond to one or more AXI interfaces; this disclosure does not limit this.
[0024] like Figure 2 As shown, this example illustrates a setup with 8 AXI interfaces (including AXI0, AXI1...AXI7), one AXI2NOC bridge corresponding to 2 AXI interfaces, and the IP core and NOC connected via 4 AXI2NOC / NOC2AXI bridges. Each AXI2NOC is an input port, with the 4 AXI2NOCs designated as In0, In1, In2, and In3. Each NOC2AXI is an output port, with the 4 NOC2AXIs designated as Out0, Out1, Out2, and Out3. The NOC includes 6 routers.
[0025] like Figure 2 As shown, the request (req) direction is the data flow direction from the IP core to the NOC to send the request transaction, that is, the direction of data transmission; the response (resp) direction is the data flow direction from the NOC to the IP core to return flow control data, that is, the direction of credit transmission.
[0026] In the request (req) direction, after receiving AXI data input through the AXI interface, AXI2NOC converts the AXI data from AXI protocol format to flow control protocol format to obtain the flow control data for the request direction, and then sends the flow control data for the request direction to the NOC's input router. Figure 2 The first line of the router (in the input router) then sends the information to the corresponding output router according to the preset policy. Figure 2 The second router in the list), so that the corresponding output router transmits the data to the target IP core (i.e. Figure 2 (AXI output side).
[0027] Furthermore, NOC2AXI is configured between the NOC and the target IP core. NOC2AXI can convert the flow control data output by the output router in the request direction from the flow control protocol form to the AXI protocol form, so that the AXI data can be transmitted from the original IP core to the target IP core through the NOC (i.e., ...). Figure 2 (The AXI output in the middle). At the same time, NOC2AXI returns the credit corresponding to this AXI data to the (initial) IP core through NOC in a similar manner.
[0028] In the response (resp) direction, NOC2AXI sends the request-direction credit to the NOC's output router, and the output router sends the request-direction credit to the input router. The input router then returns the request-direction credit to the corresponding AXI2NOC. The AXI2NOC converts the request-direction credit into the response-direction credit and outputs it to the corresponding AXI interface.
[0029] Each AXI interface corresponds to multiple request transactions. A single AXI interface may have the same Trid (Transaction ID), and independent AXI interfaces may also have the same Trid. In the AXI protocol, the Trid is a unique identifier used to identify a transaction. Therefore, the AXI2NOC bridge reassigns a Trid for each AXI data, ensuring uniqueness between the AXI2NOC bridge and the NOC.
[0030] However, the Trid reallocation in the reference model (refm) of the verification device cannot be the same as the Trid reallocation in the RTL, which leads to comparison difficulties when verifying the AXI2NOC bridge and increases the verification difficulty.
[0031] Furthermore, this disclosure provides a verification method.
[0032] Figure 3This is a flowchart illustrating a verification method provided in an embodiment of the present disclosure. The method is applied to a bridge between an integrated AXI IP core and a credit-based flow control on-chip network NOC. In some embodiments, the bridge is an AXI2NOC bridge.
[0033] See Figure 3 The verification method for the bridge applied between an IP core with an integrated AXI interface and a credit-based flow control on-chip network NOC specifically includes the following steps: Step 301: In the request direction, in response to receiving AXI data requesting a transaction sent by the IP core to the NOC, the transaction identifier Trid is reallocated to the AXI data to obtain the target Trid of the AXI data, and the target Trid of the AXI data is synchronized to the verification device.
[0034] The request direction refers to the data flow direction of the request transaction sent by the IP core to the NOC.
[0035] Specifically, data transmission is performed on the IP core side via the AXI protocol, while on the NOC side, data transmission is performed via the flow control protocol. AXI data consists of request transaction data sent from the IP side that conforms to the AXI protocol, and the number of AXI data items can be one or more.
[0036] Combination Figure 2 In the requesting direction, the IP core sends the AXI data of the request transaction to the bridge via the AXI interface. After receiving the AXI data, the bridge converts the AXI data from AXI protocol format to flow control protocol format, and then the bridge acts as the input port of the NOC (e.g., Figure 2 The bridge sends AXI data in flow control protocol format to the NOC via In0, In1, In2, or In3. Each AXI data point corresponds to an initial Trid. However, as mentioned above, the initial Trids for AXI data points requesting transactions on the same or different AXI interfaces may be the same. To prevent duplicate Trids from appearing in the NOC, the bridge assigns a new target Trid to each AXI data point upon receipt. This target Trid uniquely corresponds to a single AXI data point. Furthermore, after assigning a target Trid, the bridge can save the mapping between the target Trid and the initial Trid, allowing subsequent retrieval of AXI data information by indexing the initial Trid using the target Trid.
[0037] In addition, to ensure that the AXI data is consistent with the target Trid in the reference model of the verification device and the RTL during the protocol verification process, the target Trid assigned to the RTL can be directly synchronized to the reference model of the verification device.
[0038] In some embodiments, after the target Trid generated by RTL is fed back into the reference model, the incoming target Trid can also be detected to ensure that no duplicate target Trids appear, thereby improving the accuracy of the verification.
[0039] Step 302: In the response direction, in response to receiving the first flow control data returned by the NOC that corresponds to the AXI data of the sending request transaction, the first flow control data is protocol converted to obtain the first register transfer level RTL data that conforms to the AXI protocol, so that the verification device compares the first RTL data with the first reference data based on the target Trid to obtain the result of the protocol conversion verification.
[0040] The first flow control data includes the target Trid, and the response direction is the data flow direction from the NOC to the IP core when returning flow control data.
[0041] Specifically, in the flow control protocol, in the request direction, after the IP core transmits the AXI data to the NOC, the corresponding NOC will also return the corresponding flow control data to the IP core in the response direction, so as to update the credit on the IP core side based on the returned flow control data, and enable the IP core side to control the transmission of AXI data based on the updated credit.
[0042] Specifically, still in conjunction with the above Figure 2 In the request direction, after the NOC side transmits the AXI data to the AXI output, in the response direction, the AXI output side correspondingly returns the first flow control data corresponding to the AXI data to the NOC side. Then, in the response direction, the NOC side returns the first flow control data to the bridge. The bridge performs protocol conversion on the first flow control data, converts it into RTL data that conforms to the AXI protocol, and returns it to the IP core.
[0043] The first flow control data corresponds to the AXI data in the request direction; therefore, the first flow control data includes the target Trid of the corresponding AXI data.
[0044] Furthermore, based on the target Trid, the verification device compares the first RTL data with the first reference data in the reference model of the verification device to perform protocol conversion verification.
[0045] Specifically, in the response direction, the returned first flow control data is unordered. Since in step 101 above, while assigning a target Trid to each AXI data, the target Trid of the AXI data is also synchronized to the verification device, the order can be preserved by the Trid of the first flow control data when the verification device compares the RTL data with the reference data in the reference model, so as to ensure the accuracy of the verification.
[0046] The verification method provided in this embodiment of the present disclosure ensures that each target Trid uniquely corresponds to one AXI data point between the bridge and the NOC by reallocating a target Trid for each AXI data point in the bridge. At the same time, the target Trid allocated to the AXI data is synchronized to the reference model to ensure that the target Trid corresponding to the RTL data is consistent with that of the reference data in the reference model. Thus, when performing protocol verification on the response direction, the first flow control data can be kept in order to ensure the accuracy of the verification.
[0047] As discussed above, AXI data from the same AXI interface or different AXI interfaces may correspond to the same initial Trid. Therefore, during verification, multiple AXI data sets may be indexed based on the mapping relationship between the target Trid and the initial Trid. Consequently, the target Trid cannot be used as a unique identifier for verification.
[0048] Furthermore, the credit-based flow control method used by NOC implements flow control for each virtual circuit (Vc) per link. Figure 2 The AXI2NOC bridge uses Virtual Circuits ID (Vcid) for ordering, instead of using Trid as the unique identifier for transactions. After receiving data on the NOC side, it controls data transmission by assigning corresponding virtual circuits to each data point. Therefore, on the NOC side, input ports, the corresponding Vcid for the virtual circuit, and output ports are used for data ordering. Credits returned from the NOC are interleaved, and data with the same Vcid must be ordered. For different AXITIrids, further ordering based on the NOC input credit is required, and data with the same Vcid must be ordered. In other words, data is transmitted within the NOC based on Vcid, no longer based on Trid. Therefore, during protocol verification, Vcid can also be used to order corresponding data, ensuring the accuracy of the comparison between RTL data and reference data.
[0049] In some embodiments, the NOC includes a router, and the verification method includes not only steps 101-102 described above, but also: in the requesting direction, in response to receiving AXI data sent by the IP core, assigning a Virtual Channel Identifier (Vcid) to the AXI data; wherein the router transmits the AXI data according to the Vcid of the AXI data; in the responding direction, returning the Vcid of the AXI data corresponding to the first flow control data to the verification device, so that the verification device compares the first RTL data with the first reference data in the reference model based on the target Trid and Vcid; wherein the first flow control data is returned by the router to the bridge according to the Vcid of the AXI data corresponding to the first flow control data.
[0050] Specifically, in the requesting direction, after the IP core sends AXI data to the bridge via the AXI interface, the bridge, in addition to reallocating the target Trid for the AXI data, can also assign a corresponding Vcid to the AXI data. In some embodiments, the bridge can assign a Vcid to the AXI data according to its type, so as to select different virtual loops for transmission based on the data type of the AXI data. Of course, the bridge can also assign a corresponding Vcid to the AXI data based on other allocation strategies, which are not limited in this disclosure.
[0051] In the requesting direction, after the bridge assigns a Vcid to the AXI data, it sends the AXI data carrying the Vcid to the NOC router. Then, the NOC router selects the appropriate virtual loop to transmit the AXI data based on the Vcid of the AXI data.
[0052] Similarly, the NOC receives the first flow control data to be returned. This first flow control data also carries the corresponding Vcid, and since the first flow control data corresponds to AXI data, the Vcid of the first flow control data is the same as the Vcid of the corresponding AXI data. After receiving the first flow control data to be returned, the NOC selects the appropriate virtual loop based on the Vcid of the first flow control data to return the first flow control data to the bridge.
[0053] Furthermore, during protocol verification, multiple data points from the same virtual loop, i.e., multiple data points with the same Vcid, need to maintain their order. However, the Vcid signal is not present in the response channel information of the AXI protocol.
[0054] Furthermore, after receiving the first flow control data returned by the NOC, the bridge can also return the Vcid of the first flow control data to the verification device.
[0055] Furthermore, in the verification device, Trid and Vcid can be used to compare the data in the RTL with the reference data in the reference model in sequence to ensure the accuracy of the verification.
[0056] Specifically, the first RTL data includes multiple flow control protocol data, which are obtained by protocol conversion of the first flow control data. Therefore, the Trid of the flow control protocol data is the same as the target Trid of its corresponding AXI data. Furthermore, the reference data includes multiple reference flow control data corresponding to the flow control protocol data. When comparing the RTL data and the reference data, the initial Trid corresponding to the target Trid can be indexed based on the target Trid of the flow control protocol data in the first RTL data, through the mapping relationship between the target Trid and the initial Trid. Thus, the initial data is determined from the multiple reference flow control data in the reference data based on the initial Trid. Since the initial Trid may correspond to multiple AXI data, the initial data in the reference data is further filtered based on the Vcid of the flow control protocol data in the first RTL data to obtain the final comparison data to be compared with the flow control protocol data.
[0057] Furthermore, the AXI protocol's bresp channel (write response channel) and read channel lack a Vcid signal, while the AXI2NOC bridge requires order preservation of the same Vcid, further hindering accurate verification using conventional verification methods. Therefore, this disclosure further proposes an external logic mechanism to return the corresponding Vcid to the verification device. A specific implementation is given below.
[0058] In some embodiments, the step of returning the Vcid of the AXI data corresponding to the first flow control data to the verification device in the response direction includes: writing the Vcid of the AXI data corresponding to the first flow control data into a custom signal of the AXI protocol in the response direction, and sending the custom signal to the verification device; wherein the first RTL data and the first reference data in the verification device both include the custom signal.
[0059] Specifically, for a request transaction that is a data write transaction, Vcid can be written to the buser signal corresponding to the write response channel (bresp) in the AXI protocol; for a request transaction that is a data read transaction, Vcid can be written to the ruser signal corresponding to the read data channel (rdata) in the AXI protocol. Similarly, in the process of converting flow control data into data corresponding to the AXI protocol in the reference model, the corresponding Vcid also needs to be carried.
[0060] Furthermore, for a request transaction that is a data write transaction, the RTL data includes, in addition to the buser signal mentioned above in the AXI protocol, the write response signal b_resp and the write address signal b_id. For a request transaction that is a data read transaction, the RTL data includes, in addition to the buser signal mentioned above in the AXI protocol, the write read data signal r_data, the read response signal r_resp, and the read address signal r_id. In the verification device, by verifying the returned AXI protocol signals and the information from the AXI write response channel and read data channel, accurate verification of the protocol conversion is achieved.
[0061] In some embodiments, in addition to steps 101-102 described above, the verification method may further include: in the requesting direction, performing port arbitration on the AXI data sent by the IP core from multiple AXI ports to obtain the target port; and receiving the AXI data corresponding to the target port.
[0062] Specifically, you can refer to Figure 2 A bridge can correspond to multiple AXI interfaces, and each AXI interface can transmit AXI data. When a bridge corresponds to multiple AXI interfaces, the bridge can select one of the AXI interfaces as the target port and accept the corresponding AXI data according to a preset arbitration strategy.
[0063] The number of AXI ports corresponding to the bridge can be set according to the data bandwidth or other requirements, and this disclosure does not limit it.
[0064] The verification method disclosed herein is applied to a bridge between an IP core integrating an AXI interface and a credit-based flow control on-chip network (NOC). By reassigning a target Trid for each AXI data point within the bridge, it ensures that each target Trid uniquely corresponds to one AXI data point between the bridge and the NOC. Simultaneously, the target Trids assigned to the AXI data points are synchronized to the reference model, ensuring consistency between the target Trids corresponding to the RTL data and the reference data in the reference model. This allows for the preservation of the order of the first flow control data during protocol verification of the response direction, guaranteeing the accuracy of the verification. Furthermore, the bridge assigns a Vcid to each AXI data point; the verification aided by the Vcid signal makes the comparison simple and accurate.
[0065] Based on the same inventive concept as the above verification method, this disclosure also provides a verification method based on a verification device.
[0066] Figure 4This is a flowchart of another verification method provided in an embodiment of the present disclosure. The verification device is used to verify the protocol conversion between an IP core integrating AXI and a credit-based flow control on-chip network NOC, and the protocol conversion is implemented through a bridge.
[0067] like Figure 4 As shown, the verification method based on the verification device specifically includes the following steps: Step 401: Receive the target transaction identifier Trid corresponding to the AXI data, and obtain the first reference data based on the target Trid.
[0068] Wherein, the target Trid is obtained by the bridge in the request direction in response to receiving AXI data from the IP core sending a request transaction to the NOC, and by reallocating the transaction identifier Trid to the AXI data. The request direction is the data flow direction in which the IP core sends the request transaction to the NOC.
[0069] Specifically, after the bridge reassigns the target Trid for each AXI data point, it can synchronize the target Trid of the AXI data to the reference model in the verification device. The reference model in the verification device receives the target Trid of the AXI data. Furthermore, based on the correspondence between the initial reference data and the AXI data in the reference model, and the mapping relationship between the AXI data and the target Trid, the initial reference data and the target Trid can be matched, thus forming the first reference data. This ensures that the target Trid corresponding to the reference data in the reference model is consistent with the target Trid in the RTL data.
[0070] Step 402: Receive the first RTL data sent by the bridge in the response direction.
[0071] The first RTL data is obtained by the bridge through protocol conversion of the first flow control data returned by the NOC and corresponding to the AXI data. The first flow control data includes the target Trid and the response direction is the data flow direction of the NOC returning flow control data to the IP core. Specifically, the first monitor in the verification device (the monitor corresponding to the RTL) receives the first RTL data from the bridge.
[0072] Step 403: Based on the target Trid, compare the first RTL data with the first reference data to perform protocol conversion verification.
[0073] Specifically, the reference model in the verification device sends the first reference data to the scorer, and the first monitor sends the first RTL data to the scoring board. The first reference model includes the target Trid transmitted by the bridge, and the first RTL data also includes the target Trid assigned by the bridge machine. The scoring board can then correlate the first RTL data with the first reference data based on the target Trid, thereby performing a comparison and verifying the protocol conversion.
[0074] Furthermore, the other details of steps 401-403 in this embodiment are the same as those described above. Figure 3 The verification method for the bridge between the IP core with integrated AXI interface and the credit-based flow control on-chip network NOC is similar and will not be repeated here.
[0075] The verification method provided in this embodiment allows the reference model in the verification device to synchronously receive the target Trid reassigned to AXI data by the bridge, enabling the reference model to associate the reference data with the first RTL data based on the target Trid, thereby achieving accurate comparison and improving the accuracy of verification.
[0076] The verification device also includes a second monitor (the monitor corresponding to the reference data). The bridge first sends the second flow control data carrying the target Trid to the second monitor, and then the second monitor sends the target Trid from the first flow control data to the reference model. A specific implementation is given below.
[0077] In some embodiments, the step of receiving the target transaction identifier Trid corresponding to AXI data includes: receiving second flow control data, including the target Trid, sent by the bridge in the request direction; wherein the second flow control data is obtained by the bridge performing protocol conversion on the AXI data sent by the IP core in the request direction; and stripping the second flow control data packet to obtain the target Trid corresponding to the AXI data.
[0078] Specifically, in the request direction, after the IP core sends the AXI data to the bridge, it not only reassigns a new target Trid to each AXI data, but also converts the AXI data from the AXI protocol form to the flow control protocol form to obtain the flow control signal corresponding to the AXI data. Then, based on the flow control signal and the corresponding target Trid, it obtains the second flow control data and sends the second flow control data carrying the target Trid to the second monitor.
[0079] Furthermore, in the response direction, the second monitor first strips the target Trid from the second flow control data, and then synchronizes the stripped target Trid to the reference model.
[0080] Furthermore, in some embodiments, the method further includes: performing a consistency check on the received target Trid to ensure that there are no duplicates among the target Trids.
[0081] Specifically, after receiving each target Trid, the reference model can also verify each target Trid to ensure that there are no duplicate target Trids, thereby ensuring the accuracy of the verification.
[0082] In some embodiments, in response to the detection of the presence of the same target Trid, the bridge may reallocate the target Trid to each AXI data and synchronize it to the reference model; or it may correct the duplicate target Trid and correct the corresponding target Trid in the first RTL data, which is not limited in this disclosure.
[0083] exist Figure 4 In step 403, during the comparison of the first RTL data and the first reference data based on the target Trid, the association between the first RTL data and the first reference data can be determined based on the mapping relationship between the target Trid and the AXI data. The mapping relationship between the target Trid and the AXI data can be a mapping relationship between the target Trid and the initial Trid of the AXI data, or a mapping relationship between the target Trid and other information representing the AXI data; this disclosure does not limit this. A specific implementation method is given below.
[0084] In some embodiments, the first RTL data includes multiple flow control protocol data, one flow control protocol data corresponds to one AXI data; the AXI data also includes an initial Trid, and the initial Trid of the AXI data has a mapping relationship with the corresponding target Trid; the first reference data includes multiple reference flow control data corresponding to the flow control protocol data.
[0085] The step of comparing the first RTL data with the first reference data based on the target Trid includes: for each flow control protocol data in the first RTL data, determining the data to be compared corresponding to the flow control protocol data from multiple reference flow control data in the first reference data according to the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data; and comparing the flow control protocol data with the data to be compared.
[0086] Specifically, the first RTL data includes multiple flow control protocol data, which are obtained by protocol conversion of the first flow control data. Therefore, the Trid of the flow control protocol data is the same as the target Trid of its corresponding AXI data. Furthermore, the reference data includes multiple reference flow control data corresponding to the flow control protocol data. When comparing the first RTL data and the reference data, the initial Trid corresponding to the target Trid can be indexed based on the target Trid of the flow control protocol data in the first RTL data, through the mapping relationship between the target Trid and the initial Trid. Based on the initial Trid, the initial data is determined from the multiple reference flow control data in the reference data, resulting in the final comparison data to be compared with the flow control protocol data.
[0087] Furthermore, as described above in the bridge-based verification method embodiment, AXI data may have the same initial Trid. Therefore, during the comparison of the first RTL data and the first reference data, the target Trid cannot be used as a unique identifier. This disclosure can also introduce Vcid for protocol conversion verification. A specific implementation method is given below.
[0088] In some embodiments, the same initial Trid exists in multiple AXI data sets; the NOC includes a router, and the verification method includes not only the steps 401-403 described above, but may also include: in the requesting direction, receiving the virtual channel identifier Vcid corresponding to the AXI data.
[0089] Here, Vcid is the Vcid assigned by the bridge in response to receiving AXI data sent by the IP core in the request direction. In the response direction, the router returns the first flow control data to the verification device based on the Vcid of the AXI data corresponding to the first flow control data.
[0090] Specifically, in the request direction, in addition to assigning a target Trid to the AXI data, the bridge can also assign a Vcid to the AXI data. Within the NOC, the Vcid controls data transmission. Specifically, after the bridge sends the AXI data to the NOC, the NOC's router selects the corresponding virtual channel to transmit the AXI data based on its Vcid. Similarly, the first flow control data returned to the NOC also carries a Vcid, and the router selects the corresponding virtual channel to return this first flow control data to the bridge based on its Vcid.
[0091] Therefore, after allocating a Vcid to the AXI data, the bridge can synchronously transmit that Vcid to the reference model. This allows for comparison of the first RTL data with the first reference data based on the target Trid and Vcid.
[0092] In some embodiments, the step of determining the data to be compared corresponding to the flow control protocol data from the first reference data based on the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data includes: determining initial data from the first reference data that has a mapping relationship with the target Trid corresponding to the flow control protocol data based on the mapping relationship; and determining the data to be compared from the initial data based on the Vcid corresponding to the target Trid.
[0093] Specifically, since an initial Trid may correspond to multiple AXI data sets, based on the target Trid in the flow control protocol data of the first RTL data, at least one initial Trid corresponding to the target Trid can be indexed through the mapping relationship between the target Trid and the initial Trid. Thus, at least one initial data set can be determined from multiple reference flow control data sets in the reference data based on this at least one initial Trid. Furthermore, at least one initial data set in the reference data can be filtered based on the Vcid of the flow control protocol data in the first RTL data to obtain the final comparison data to be compared with the flow control protocol data.
[0094] The method provided in this disclosure uses Vcid as an auxiliary signal, which further improves the accuracy of verification.
[0095] The above embodiments all verify the protocol conversion of the response direction. In addition, this disclosure can also verify the protocol conversion of the request direction.
[0096] In some embodiments, the method further includes: obtaining second RTL data based on second flow control data; and comparing the second RTL data with second reference data in a reference model to verify the protocol conversion of the request direction.
[0097] Specifically, as described above, the second flow control data is obtained by protocol conversion of the AXI data sent by the IP core to the bridge in the request direction. In other words, the IP core first sends AXI data in AXI protocol format to the bridge, which converts the AXI data in AXI protocol format into flow control protocol format to obtain the second flow control data. Then, the bridge sends the second flow control data to the first monitor of the verification device as the second RTL data. The first monitor then sends the second RTL data to the scoring board, and at the same time, the reference model also sends the second reference data to the scoring board. Since the data is ordered in the request direction, the scoring board can directly compare the second RTL data and the second reference data.
[0098] Other details and corresponding effects of the verification method based on the verification device provided in this disclosure are the same as those of the above-described verification method based on the bridge, and will not be repeated here.
[0099] The verification method disclosed herein, applied to a verification apparatus, receives a target Trid assigned by a bridge that is consistent with the RTL data. Based on this target Trid, reference data in the reference model can be correlated with the RTL data, achieving accurate comparison between the reference data and the RTL data, thereby improving verification accuracy. Furthermore, by receiving a Vcid assigned by the bridge, verification is aided by the Vcid, making the comparison simple and accurate.
[0100] Figures 5a-5b This is a flowchart illustrating a verification method combining a verification device and a bridge, as provided in an embodiment of this disclosure.
[0101] like Figures 5a-5b As shown, data transmission is performed on the IP core side via the AXI protocol. The AXI MST VIP is the verification IP (Verification IP, VIP) for the AXI Master interface in the verification device. This AXI MST VIP can simulate Master behavior and generate stimuli conforming to the AXI protocol. The router is the router within the on-chip network NOC. The AXI MST VIP and the ROUTER are connected via an AXI2NOC Bridge.
[0102] The data flow from AXI MST VIP to ROUTER is the request (req) direction, and the data flow from ROUTER to AXI MST VIP is the response (resp) direction. Additionally, the verification device includes a first monitor (MON, the monitor corresponding to RTL), a second monitor (AXI MON, the monitor corresponding to reference data), a reference model (MODEL), and a scoring board.
[0103] It should be noted that, in order to distinguish the verification process in the req direction and the resp direction, in Figures 5a-5b In this system, the scoreboard is split into a first scoreboard (REQ-SCB) and a second scoreboard (RSP-SCB). It can be understood that the first and second scoreboards are the same scoreboard. For example... Figures 5a-5bAs shown, in the req direction, the AXI MST VIP sends either a header flit (hflit) or a physical flit (pflit) to the second monitor and the AXI2NOC bridge of the verification device, respectively. In this embodiment, hflit can include at least one of Vcid and Trid, and pflit can be a transmission slice of hflit on the physical link, which does not affect transaction-level logic but does affect timing and implementation. Further, after the second monitor of the verification device receives hflit / pflit, it sends hflit / pflit to the reference model for processing, obtaining reference hflit / pflit which is then sent to the first scoring board as reference data in the req direction. The hflit / pflit input to the AXI2NOC bridge first undergoes protocol conversion and a new Trid is assigned to it, resulting in the hflit / pflit corresponding to the RTL. This RTL-corresponding hflit / pflit carries the Trid. Then, the hflit / pflit with the Trid is sent to the first monitor. The first monitor then sends the RTL-corresponding hflit / pflit to the first scoring board as the RTL data for the req direction. Finally, the first scoring board compares the req-direction RTL data with the reference data to verify the protocol conversion for the req direction.
[0104] In addition, the AXI2NOC bridge also sends the hflit / pflit corresponding to the RTL and carrying the Trid to the router, so that the transmission of hflit / pflit to the AXI MST VIP can be completed based on the router.
[0105] Simultaneously, in the resp direction, the router returns response data corresponding to hflit / pflit and sends this response data back to the AXI2NOC bridge. The AXI2NOC bridge processes the response data and then sends it to the second monitor of the verification device. Specifically, for write operations, the corresponding response data is bresp, and for read operations, the corresponding response data is rresp. Upon receiving bresp / rresp, the second monitor further sends bresp / rresp to the second scoring board as RTL data for the response direction.
[0106] For the reference data in the response direction, the first monitor in the verification device first receives the hflit / pflit carrying Trid in the req direction. In the response direction, the first monitor further separates Trid from hflit / pflit and sends Trid back to the first monitor, which then sends Trid to the reference model. Simultaneously, the response data returned by the router corresponding to hflit / pflit also passes through the first monitor and is finally sent to the reference model. Thus, Trid and the response data returned by the router corresponding to hflit / pflit constitute the reference data bresp / rresp for the response direction, which is then sent to the second scoring board. The second scoring board compares the RTL of the response direction with the reference data to complete the protocol conversion verification for the response direction.
[0107] Furthermore, such as Figure 5b As shown, the reference model can also include a Trid check module to perform consistency checks on the input Trid, prevent duplicate Trids, and improve the accuracy of verification.
[0108] Furthermore, since the same axid may exist in the write response channel and read data channel, and the same vcid needs to be kept in order, the resp information output from the router will be interleaved in the AXI2NOC bridge. Therefore, the vcid output by the buser / ruser is used for auxiliary verification.
[0109] Specifically, the AXI2NOC bridge can also assign Vcid to the hflit / pflit inputs of the AXI MST VIP, and according to the type of hflit / pflit, write the Vcid of the hflit / pflit corresponding to the write response channel to Vcid-buser, write the Vcid of the hflit / pflit corresponding to the read data channel to Vcid-ruser, and send Vcid-buser / Vcid-ruser to the second monitor to add Vcid to the RTL in the response direction for auxiliary verification; at the same time, a corresponding Vcid signal is also added to the reference data in the response direction (not shown in the figure). Finally, the second scoring board compares the RTL and reference data in the response direction based on Trid and Vcid. The second scoring board inputs the data_user signal (i.e., Vcid) of the read data channel and axi_r_data, axi_r_resp, and axi_r_id (i.e., axid) into the scoreboard for comparison of RTL and refm, thereby achieving accurate verification. Similarly, the resp_user signal (i.e., vcid) of the write response channel, as well as axi_b_resp and axi_b_id, are entered into soreboard for comparison.
[0110] The verification method disclosed herein incorporates a reassigned TRID, making data comparison in the RESUM direction simple and accurate. Furthermore, RTL sends the generated TRID back to RefM, resolving the accuracy issues related to the interleaved credit flow control protocol and AXI protocol in the RefM response direction. Information entering from the router is indexed by a unique TRID, ensuring the accuracy of the corresponding AXI information. Additionally, the corresponding VCI is connected to the original write response channel (BRESP) / read data channel (RDATA), and verification using the VCI signal assisted by the VCI only requires sequential comparison, making the comparison simple and accurate.
[0111] Further reference Figure 6a and Figure 6b As an implementation of the methods shown in the above figures, this disclosure also provides corresponding verification device embodiments. Among them, Figure 6a Device embodiments and Figure 3 The verification method embodiments shown correspond to the following, Figure 6b Corresponding device embodiments and Figure 4 The verification method shown corresponds to the embodiment described. The above-described device can be specifically applied to various electronic devices.
[0112] like Figure 6aAs shown, this verification device is used as a bridge between an intellectual property IP core with an integrated Advanced Scalable Interface (AXI) and a credit-based flow control on-chip network NOC. The device includes a first allocation module 61 and a conversion module 62.
[0113] The first allocation module 61 is used, in the request direction, in response to receiving AXI data requesting a transaction from the IP core to the NOC, to reallocate the transaction identifier Trid to the AXI data, obtain the target Trid of the AXI data, and synchronize the target Trid of the AXI data to the verification device; wherein, the request direction is the data flow direction from the IP core to the NOC. The conversion module 62 is used, in the response direction, in response to receiving first flow control data returned by the NOC corresponding to the AXI data, to perform protocol conversion on the first flow control data, to obtain first register transfer level (RTL) data conforming to the AXI protocol, so that the verification device can compare the first RTL data with the first reference data based on the target Trid to obtain the result of the protocol conversion verification; wherein, the first flow control data includes the target Trid, and the response direction is the data flow direction from the NOC to the IP core.
[0114] In some embodiments, the NOC includes a router, and the authentication device further includes a second allocation module and a return module. The second allocation module is configured to: in the request direction, in response to receiving AXI data sent by the IP core, allocate a Virtual Channel Identifier (Vcid) for the AXI data. The router transmits the AXI data according to the Vcid of the AXI data. The return module is configured to: in the response direction, return the Vcid of the AXI data corresponding to the first flow control data to the authentication device, so that the authentication device can compare the first RTL data with the first reference data in the reference model based on the target Trid and Vcid. The first flow control data is returned by the router to the bridge according to the Vcid of the AXI data corresponding to the first flow control data.
[0115] In some embodiments, the return module includes a writing submodule and a sending submodule. The writing submodule is used to write the Vcid of the AXI data corresponding to the first flow control data into a custom signal in the response direction of the AXI protocol. The sending submodule is used to send the custom signal to the verification device. The first RTL data and the first reference data in the verification device both include the custom signal.
[0116] In some embodiments, the apparatus further includes an arbitration module, which is configured to: in the requesting direction, perform port arbitration on AXI data sent by the IP core from multiple AXI ports to obtain a target port; and receive AXI data corresponding to the target port.
[0117] like Figure 6bAs shown, this disclosure also provides another verification device for verifying the protocol conversion between an IP core with integrated AXI and a NOC based on credit-based flow control, wherein the protocol conversion is implemented through a bridge. The verification device includes a first receiving module 63, a second receiving module 64, and a comparison module 65.
[0118] The first receiving module 63 is used to receive the target transaction identifier Trid corresponding to the AXI data and obtain the first reference data based on the target Trid. The target Trid is obtained by the bridge in the request direction, in response to receiving the AXI data requesting a transaction operation sent by the IP core to the NOC, and reallocating the transaction identifier Trid to the AXI data. The request direction is the data flow direction of the IP core sending the request transaction to the NOC. The second receiving module 64 is used to receive the first RTL data sent by the bridge in the response direction. The first RTL data is obtained by the bridge performing protocol conversion on the first flow control data returned by the NOC corresponding to the AXI data. The first flow control data includes the target Trid, and the response direction is the data flow direction of the NOC returning flow control data to the IP core. The comparison module is used to compare the first RTL data with the first reference data based on the target Trid to perform protocol conversion verification.
[0119] In some embodiments, the first RTL data includes multiple flow control protocol data, one flow control protocol data corresponds to one AXI data; the AXI data also includes an initial Trid, and the initial Trid of the AXI data has a mapping relationship with the corresponding target Trid; the first reference data includes multiple reference flow control data corresponding to the flow control protocol data.
[0120] The comparison module 65 includes a determination submodule and a comparison submodule. The determination submodule is specifically used to determine, for each flow control protocol data in the first RTL data, the data to be compared corresponding to the flow control protocol data from multiple reference flow control data in the first reference data, based on the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data. The comparison submodule is specifically used to compare the flow control protocol data with the data to be compared.
[0121] In some embodiments, the same initial Trid exists in multiple AXI data sets; the NOC includes a router, and the verification device further includes a third receiving module, which is specifically used to: in the request direction, receive the virtual channel identifier (Vcid) corresponding to the AXI data; wherein, the Vcid is obtained by the bridge in response to receiving the AXI data sent by the IP core in the request direction, and assigning a Vcid to the AXI data; in the response direction, the router returns the first flow control data to the verification device according to the Vcid of the AXI data corresponding to the first flow control data; the determining submodule includes a first determining submodule and a second determining submodule, which is used to: determine, according to the mapping relationship, the initial data that has a mapping relationship with the target Trid corresponding to the flow control protocol data from multiple reference flow control data in the first reference data; the second determining submodule is used to determine the data to be compared from the initial data according to the Vcid corresponding to the target Trid.
[0122] In some embodiments, the first receiving module 63 includes a third determining submodule and a stripping submodule. Specifically, the third determining submodule is used to: receive second flow control data, including a target Trid, sent by the bridge in the request direction; wherein the second flow control data is obtained by protocol conversion of AXI data sent by the bridge to the IP core in the request direction; and the stripping submodule is used to strip the second flow control data packet to obtain the target Trid corresponding to the AXI data.
[0123] In some embodiments, the verification device further includes a verification module for performing consistency verification on the received target Trids to ensure that there are no duplicates among the target Trids.
[0124] In some embodiments, the verification apparatus further includes a generation module for obtaining second RTL data based on second flow control data; the comparison module 65 is specifically used to compare the second RTL data with second reference data in the reference model to verify the protocol conversion of the request direction.
[0125] The above embodiments are device embodiments corresponding to the above method embodiments. The specific implementation details and corresponding technical effects of the two verification devices provided in this embodiment can be referred to the corresponding method embodiments, and will not be repeated here.
[0126] Based on the same inventive concept as the verification method described above, this disclosure also provides a verification system.
[0127] Figure 6c This is a structural block diagram of a verification system provided in this disclosure.
[0128] like Figure 6c As shown, the system includes: bridge 601.
[0129] The bridge 601 connects an IP core with an integrated AXI interface to a credit-based flow-controlled on-chip network (NOC). The bridge 601 includes a first allocation unit and a conversion unit. The first allocation unit is configured to: in the request direction, in response to receiving AXI data from the IP core sending a request transaction to the NOC, reallocate a transaction identifier Trid to the AXI data to obtain a target Trid for the AXI data, and synchronize the target Trid to the reference model in the verification device. The request direction refers to the data flow direction in which the IP core sends the request transaction to the NOC.
[0130] The conversion unit is used in the response direction to receive the first flow control data returned by the NOC, which corresponds to the AXI data, to perform protocol conversion on the first flow control data to obtain the first register transfer level RTL data corresponding to the AXI protocol.
[0131] The first flow control data includes the target Trid, and the response direction is the data flow direction from the NOC to the IP core when returning flow control data.
[0132] In some embodiments, the system may include a verification device 602, which is used to compare first RTL data with first reference data in the reference model of the verification device based on the target Trid, so as to perform protocol conversion verification.
[0133] In some embodiments, the NOC includes a router, and the bridge 601 further includes a second allocation unit and a return unit. The second allocation unit is configured to allocate a Virtual Channel Identifier (Vcid) for the AXI data in the request direction in response to receiving AXI data sent by the IP core. The verification device 602 includes a first receiving unit, configured to: receive the Virtual Channel Identifier (Vcid) corresponding to the AXI data in the request direction. The router transmits the AXI data according to the Vcid of the AXI data. The return unit is configured to: return the Vcid of the AXI data corresponding to the first flow control data to the verification device in the response direction. The router returns the first flow control data to the bridge according to the Vcid of the AXI data corresponding to the first flow control data in the response direction. The verification device 602 further includes a comparison unit, specifically configured to compare the first RTL data with the first reference data in the reference model based on the target Trid and Vcid.
[0134] In some embodiments, the return unit includes a writing subunit and a sending subunit. The writing subunit is specifically used to write the Vcid of the AXI data corresponding to the first flow control data into a custom signal of the AXI protocol in the response direction. The sending subunit is used to send the custom signal to the verification device. The first RTL data and the first reference data in the verification device both include the custom signal.
[0135] In some embodiments, the bridge 601 further includes an arbitration unit, which is configured to: in the requesting direction, perform port arbitration on AXI data sent by the IP core from multiple AXI ports to obtain the target port, and receive the AXI data corresponding to the target port.
[0136] In some embodiments, the first RTL data includes multiple flow control protocol data, one flow control protocol data corresponds to one AXI data; the AXI data also includes an initial Trid, and the initial Trid of the AXI data has a mapping relationship with the corresponding target Trid; the first reference data includes multiple reference flow control data corresponding to the flow control protocol data.
[0137] The comparison unit includes a determination subunit and a comparison subunit. Specifically, the determination subunit is used to determine the data to be compared corresponding to the flow control protocol data from multiple reference flow control data in the first reference data for each flow control protocol data in the first RTL data, based on the target Trid and mapping relationship of the AXI data corresponding to the flow control protocol data. The comparison subunit is used to compare the flow control protocol data with the data to be compared.
[0138] In some embodiments, the same initial Trid exists in multiple AXI data sets; the NOC includes a router, and the verification device 602 further includes a second receiving unit, which is specifically used to: receive the virtual channel identifier (Vcid) corresponding to the AXI data in the request direction. The Vcid is obtained by the bridge 601 assigning a Vcid to the AXI data in response to receiving the AXI data sent by the IP core in the request direction; in the response direction, the router returns the first flow control data to the verification device according to the Vcid of the AXI data corresponding to the first flow control data; the determining subunit includes a first determining subunit and a second determining subunit, which is further used to: determine, according to the mapping relationship, initial data that has a mapping relationship with the target Trid corresponding to the flow control protocol data from multiple reference flow control data in the first reference data; the second determining subunit determines the data to be compared from the initial data according to the Vcid corresponding to the target Trid.
[0139] In some embodiments, the verification device 602 further includes a third receiving unit, which is specifically used to: receive second flow control data including a target Trid sent by the bridge 601 in the request direction; wherein the second flow control data is obtained by the bridge 601 performing protocol conversion on the AXI data sent by the IP core in the request direction; and strip the second flow control data packet to obtain the target Trid corresponding to the AXI data.
[0140] In some embodiments, the verification device 602 further includes a verification unit, which is specifically used to: perform a consistency verification on the received target Trid to ensure that each target Trid is unique.
[0141] In some embodiments, the verification device 602 further includes a generation unit, which is specifically used to: obtain second RTL data based on second flow control data; and the comparison unit is specifically used to compare the second RTL data with second reference data in the reference model to verify the protocol conversion of the request direction.
[0142] The specific implementation details and technical effects of the verification system embodiments provided in this disclosure are the same as the implementation details and technical effects of the verification method embodiments described above, and will not be repeated here.
[0143] This embodiment exists as a system embodiment corresponding to the above method embodiment. The verification system provided in this embodiment ensures that each target Trid uniquely corresponds to one AXI data between the bridge and the NOC by reallocating the target Trid for each AXI data in the bridge. At the same time, the target Trid allocated to the AXI data is synchronized to the reference model to ensure that the target Trid corresponding to the RTL data is consistent with the reference data in the reference model. Thus, when performing protocol verification on the response direction, the first flow control data can be kept in order to ensure the accuracy of the verification.
[0144] According to embodiments of this disclosure, this disclosure also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enable the at least one processor to implement the verification method described in any of the above embodiments.
[0145] This disclosure also provides a computer storage medium storing computer execution instructions, which, when executed by a processor, implement the steps of the verification method in any of the above method embodiments.
[0146] This disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the verification method according to any of the above embodiments.
[0147] In the several embodiments provided by this invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or modules, and may be electrical, mechanical, or other forms.
[0148] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to implement the solution of this embodiment according to actual needs.
[0149] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each module can exist physically separately, or two or more modules can be integrated into one unit. The unit composed of the above modules can be implemented in hardware or in the form of hardware plus software functional units.
[0150] The integrated modules described above, implemented as software functional modules, can be stored in a computer-readable storage medium. These software functional modules, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute partial steps of the methods in the various embodiments of this application.
[0151] The aforementioned storage medium can be implemented from any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The storage medium can be any available medium accessible to general-purpose or special-purpose computers.
[0152] An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Alternatively, the storage medium can be an integral part of the processor. Both the processor and the storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and storage medium can exist as discrete components in an electronic device or host device.
[0153] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0154] In the above embodiments, the descriptions of each embodiment have their own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments. The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as the combination of these technical features does not contradict each other, it should be considered within the scope of this specification.
[0155] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0156] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A verification method, characterized in that, The method is applied to a bridge between an intellectual property IP core with an integrated Advanced Extensible Interface (AXI) and a credit-based flow control on-chip network (NOC), and the method includes: In the request direction, in response to receiving AXI data of a request transaction sent by the IP core to the NOC, the transaction identifier Trid is reallocated to the AXI data to obtain the target Trid of the AXI data, and the target Trid of the AXI data is synchronized to the verification device; wherein, the request direction is the data flow direction of the request transaction sent by the IP core to the NOC; In the response direction, in response to receiving the first flow control data returned by the NOC corresponding to the AXI data, the first flow control data is protocol converted to obtain first register transfer level (RTL) data conforming to the AXI protocol, so that the verification device compares the first RTL data with the first reference data based on the target Trid to obtain the result of the protocol conversion verification; wherein, the first flow control data includes the target Trid, and the response direction is the data flow direction in which the NOC returns flow control data to the IP core.
2. The method according to claim 1, characterized in that, The NOC includes a router, and the method further includes: In the requesting direction, in response to receiving AXI data sent by the IP core, a Virtual Channel Identifier (Vcid) is assigned to the AXI data; wherein, the router transmits the AXI data according to the Vcid of the AXI data; In the response direction, the Vcid of the AXI data corresponding to the first flow control data is returned to the verification device, so that the verification device compares the first RTL data with the first reference data based on the target Trid and the Vcid; wherein, the first flow control data is returned by the router to the bridge according to the Vcid of the AXI data corresponding to the first flow control data.
3. The method according to claim 2, characterized in that, In the response direction, returning the Vcid of the AXI data corresponding to the first flow control data to the verification device includes: The Vcid of the AXI data corresponding to the first flow control data is written into the custom signal of the AXI protocol in the response direction, and the custom signal is sent to the verification device; wherein, the first RTL data and the first reference data in the verification device both include the custom signal.
4. The method according to claim 1, characterized in that, The method further includes: In the requesting direction, port arbitration is performed on the AXI data sent by the IP core from multiple AXI ports to obtain the target port; Receive AXI data corresponding to the target port.
5. A verification method, characterized in that, The method is applied to a verification device used to verify protocol conversion between an integrated AXI IP core and a credit-based flow control NOC, wherein the protocol conversion is implemented via a bridge. The method includes: The bridge receives the target transaction identifier Trid corresponding to the AXI data and obtains the first reference data based on the target Trid; wherein, the target Trid is obtained by the bridge in the request direction in response to receiving the AXI data requesting the transaction from the IP core to the NOC, and the request direction is the data flow direction of the IP core sending the request transaction to the NOC; The bridge receives first RTL data sent in the response direction; wherein the first RTL data is obtained by the bridge through protocol conversion of the first flow control data returned by the NOC and corresponding to the AXI data, the first flow control data includes the target Trid, and the response direction is the data flow direction of the NOC returning flow control data to the IP core; Based on the target Trid, the first RTL data is compared with the first reference data to perform protocol conversion verification.
6. The method according to claim 5, characterized in that, The first RTL data includes multiple flow control protocol data, with one flow control protocol data corresponding to one AXI data; the AXI data also includes an initial Trid, and the initial Trid of the AXI data has a mapping relationship with the corresponding target Trid; the first reference data includes multiple reference flow control data corresponding to the flow control protocol data; The step of comparing the first RTL data with the first reference data based on the target Trid includes: For each flow control protocol data in the first RTL data, based on the target Trid of the AXI data corresponding to the flow control protocol data and the mapping relationship, the data to be compared corresponding to the flow control protocol data is determined from multiple reference flow control data in the first reference data; and the flow control protocol data is compared with the data to be compared.
7. The method according to claim 6, characterized in that, The same initial Trid exists in multiple AXI data sets; the NOC includes a router, and the method further includes: In the requesting direction, the virtual channel identifier (Vcid) corresponding to the AXI data is received; wherein, the Vcid is obtained by the bridge in response to receiving the AXI data sent by the IP core in the requesting direction, and the router, in the response direction, returns the first flow control data to the verification device according to the Vcid of the AXI data corresponding to the first flow control data; The step of determining the comparison data corresponding to the flow control protocol data from multiple reference flow control data in the first reference data based on the target Trid of the AXI data corresponding to the flow control protocol data and the mapping relationship includes: Based on the mapping relationship, initial data that has a mapping relationship with the target Trid corresponding to the flow control protocol data is determined from multiple reference flow control data in the first reference data; Based on the Vcid corresponding to the target Trid, the data to be compared is determined from the initial data.
8. The method according to claim 5, characterized in that, The target transaction identifier Trid corresponding to the received AXI data includes: The bridge receives second flow control data, including the target Trid, sent in the request direction by the bridge; wherein the second flow control data is obtained by the bridge performing protocol conversion on the AXI data sent by the IP core in the request direction. The second flow control data packet is stripped to obtain the target Trid corresponding to the AXI data.
9. The method according to claim 5, characterized in that, The method further includes: The received target Trids are subjected to a consistency check to ensure that there are no duplicate target Trids.
10. The method according to claim 8, characterized in that, The method further includes: Based on the second flow control data, the second RTL data is obtained; The second RTL data is compared with the second reference data in the reference model to verify the protocol conversion of the request direction.
11. A verification system, characterized in that, The system includes: a bridge and a verification device communicatively connected to the bridge, wherein... The bridge is used to connect an IP core with integrated AXI and a NOC with credit-based flow control, and is configured to perform the verification method as described in any one of claims 1-4. The verification device is used to perform the verification method as described in any one of claims 5-10.