Problem positioning method, apparatus, device, medium and program for routing network

By obtaining monitoring information of routing nodes and determining the simulation path of simulation signals, the problem of difficult to improve the location speed and accuracy of routing network problems in complex SoC designs is solved, and fast and accurate routing node positioning is achieved.

CN119814535APending Publication Date: 2025-04-11HYGON INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411856772.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-17
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

In complex SoC design, the simulation difficulty of routing networks increases, resulting in difficulty in improving the speed and accuracy of problematic routing nodes in routing networks.

Method used

By obtaining monitoring information of each routing node, including the node identification and the signal characteristics of the simulation signal, the simulation path of the simulation signal is determined, and the problem routing node is located in the path.

Benefits of technology

It improves the speed and accuracy of problem routing node positioning in the routing network, making it convenient to quickly and accurately locate problem nodes in complex routing networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119814535A_ABST
    Figure CN119814535A_ABST
Patent Text Reader

Abstract

Provided in an embodiment of the present invention are a problem positioning method, device, equipment, medium and program for a routing network, the problem positioning method for a routing network comprising: acquiring monitoring information of each routing node in a routing network, the monitoring information of one routing node comprises a node identifier of the routing node and a signal feature of a simulation signal of the routing of the routing node; determining a simulation path of a simulation signal of a route in the routing network based on the monitoring information of each routing node in the routing network; the simulation path of the simulation signal at least comprises a routing node through which the simulation signal passes in a routing network; and positioning a problem routing node in the simulation path. According to the technical scheme provided by the embodiment of the invention, the speed and the accuracy of positioning the problem routing node in the routing network can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of computer technology, and in particular to a method, apparatus, device, medium and program for locating problems in a routing network. Background Art

[0002] As a communication architecture of SoC (System on Chip), routing network (e.g., Network on Chip, NoC) connects various processors, memory, I / O and other units inside SoC by imitating the design concept of computer network to form a reconfigurable, efficient and flexible communication network. As the design integration of chip system increases, the simulation complexity of chip system also increases, and then the simulation difficulty of routing network also increases accordingly. Therefore, in this context, how to provide a technical solution to improve the speed and accuracy of locating problematic routing nodes in routing network has become a technical problem that technicians in this field need to solve urgently. Summary of the invention

[0003] In view of this, embodiments of the present invention provide a method, apparatus, device, medium and program for locating a problem in a routing network, so as to improve the speed and accuracy of locating a problem routing node in the routing network.

[0004] To achieve the above objectives, the embodiments of the present invention provide the following technical solutions.

[0005] In a first aspect, an embodiment of the present invention provides a method for locating a problem in a routing network, comprising:

[0006] Acquire monitoring information of each routing node in the routing network, wherein the monitoring information of a routing node includes a node identifier of the routing node and a signal characteristic of a simulation signal routed by the routing node;

[0007] Determining a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes that the simulation signal passes through in the routing network;

[0008] A problematic routing node is located in the simulation path.

[0009] In a second aspect, an embodiment of the present invention provides a device for locating a problem in a routing network, comprising: a monitor corresponding to each routing node in the routing network, the monitor being used to record monitoring information of the corresponding routing node, the monitoring information including a node identifier of the routing node and a signal feature of a simulation signal of the routing node;

[0010] A monitoring information acquisition module is used to obtain monitoring information of each routing node in the routing network;

[0011] A simulation path determination module, configured to determine a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes that the simulation signal passes through in the routing network;

[0012] A positioning module is used to locate the problematic routing node in the simulation path.

[0013] In a third aspect, an embodiment of the present invention provides an electronic device, including a memory and a processor, wherein the memory stores a program, and the processor calls the program stored in the memory to execute the routing network problem locating method as described in the first aspect.

[0014] In a fourth aspect, an embodiment of the present invention provides a storage medium, wherein the storage medium stores a program, and when the program is executed, the method for locating a problem in a routing network as described in the first aspect is implemented.

[0015] In a fifth aspect, an embodiment of the present invention provides a computer program product, including a computer program, which, when executed by a processor, implements the method for locating a problem in a routing network as described in the first aspect.

[0016] A method for locating a problem in a routing network provided by an embodiment of the present invention includes: obtaining monitoring information of each routing node in the routing network, wherein the monitoring information of a routing node includes a node identification of the routing node and a signal characteristic of a simulation signal routed by the routing node; determining a simulation path of a simulation signal routed in the routing network based at least on the monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes passed by the simulation signal in the routing network; and locating a problematic routing node in the simulation path.

[0017] It can be seen that the technical solution provided by the embodiment of the present invention, when locating the problematic routing nodes of the routing network, can obtain the monitoring information of each routing node, and the monitoring information of each routing node includes the node identification of the routing node and the signal characteristics of the simulated signal of its route. Therefore, the simulation path of the simulated signal can be determined at least based on the monitoring information; the simulation path includes the routing nodes that the simulated signal passes through in the routing network. In other words, the simulation path can reflect the various routing nodes that the simulated signal actually passes through during the simulation process. Therefore, when determining whether there is a routing error in the routing network, the simulation path of the simulated signal can be directly combined to locate the problematic routing node with the routing error in the simulation path, thereby facilitating the positioning of the problematic routing node in the routing network containing many routing nodes, and improving the speed and accuracy of locating the problematic routing node. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.

[0019] Figure 1 It is a schematic diagram of a flow chart of a method for locating a problem in a routing network provided by an embodiment of the present invention;

[0020] Figure 2 It is a schematic diagram of the structure of a simulation platform for real-time monitoring of routing nodes provided by an embodiment of the present invention;

[0021] Figure 3 It is a structural diagram of a problem locating device for a routing network provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0022] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0023] Routing network (such as NoC) is a new on-chip communication architecture designed for multi-core SoC. NoC is a structure based on network interconnection and uses packet routing for on-chip communication. Compared with the traditional communication structure based on bus interconnection, it can solve the problems of network delay, communication performance bottleneck and design efficiency. It also has good parallel communication capability, scalability and reusability.

[0024] As the integration complexity of SoC increases, the number of routing nodes in the routing network also increases, and the topology of the routing network becomes more complex. Therefore, how to conduct efficient simulations for the scalability and complexity of the topology of the routing network, especially in large-scale and complex SoCs, how to quickly and accurately locate problematic routing nodes in the routing network, will directly affect R&D efficiency.

[0025] Conventional routing network verification methods make it difficult to quickly and accurately locate problematic routing nodes in complex routing networks.

[0026] To solve the above problems, an embodiment of the present invention provides a method for locating a problem in a routing network, which is used to quickly and accurately locate a problematic routing node in the routing network.

[0027] Please refer to Figure 1 , Figure 1 The present invention is a flowchart of a method for locating a problem in a routing network provided by an embodiment of the present invention.

[0028] like Figure 1 As shown, the method comprises the following steps:

[0029] Step S101, acquiring monitoring information of each routing node in the routing network, wherein the monitoring information of a routing node includes a node identifier of the routing node and a signal characteristic of a simulation signal routed by the routing node.

[0030] The signal characteristics of the simulation signal may be information reflecting signal parameters of the simulation signal (for example, signal attributes of the simulation signal, address of the simulation signal and other signal parameters) and the simulation situation of the simulation signal.

[0031] In one implementation, step S101 may include:

[0032] For each routing node, when the routing node receives the simulation signal, the simulation signal is decoded to obtain a decoded simulation signal;

[0033] The decoded simulation signal is compared with the recorded simulation signal. If they are consistent, the node identification of the routing node and the signal characteristics of the simulation signal are recorded to form monitoring information of the routing node; the recorded simulation signal is the simulation signal sent by the sender.

[0034] Each time a routing node receives a simulation signal, it will disassemble and decode the simulation signal into the data format when the sender generates the simulation signal according to the protocol conversion rules; thus, it can be compared with the simulation signal recorded when the sender sends the simulation signal. If the comparison is consistent, the node identification of the routing node and the signal characteristics of the simulation signal are recorded. Ensure that the monitoring information of the routing node is formed when the routing node correctly receives the simulation signal.

[0035] The content recorded when the sender sends the simulation signal may be the address, read / write attributes, length, size, etc. of the simulation signal.

[0036] Step S102, determining a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network.

[0037] The simulation path of the simulation signal includes routing nodes (router) that the simulation signal passes through in the routing network.

[0038] The simulation path can reflect the various routing nodes in the routing network that the simulation signal actually passes through during the simulation process, and thus can reflect the actual simulation situation of the simulation signal.

[0039] The simulation path can be output in the form of a log file to facilitate comparison by designers.

[0040] When simulating NoC, it is usually divided into three levels of simulation: IP (Intellectual Property, intellectual property core, also known as standardized integrated circuit design module), subsystem (a system formed by part of the IP in the chip system) and SoC system.

[0041] The usual way to verify the routing network is, for example, to verify the routing network by reading and writing comparison simulation signals through the test program (for example, comparing the expected data requested by the request signal and the data returned by the response signal to see if they match each other); if a routing error occurs in the routing network or the request signal cannot reach a routing node in the routing network due to other reasons, the test program cannot know which routing node in the routing network has an error. In the simulation environment of SoC, this manifests as a timeout error when the sender cannot get a response signal. If an error occurs, the simulator needs to re-run the test program, re-simulate the entire chip system or IP or subsystem, generate a simulation waveform, and check step by step according to the designed routing table to find out which routing node in the routing network the request signal is interrupted.

[0042] Therefore, in the process of simulating the chip system / IP / subsystem, the embodiment of the present invention can quickly and accurately locate the problematic routing node by synchronously obtaining the monitoring information of each routing node. Since the monitoring information of a routing node includes the node identification of the routing node and the signal characteristics of the simulated signal of the route; therefore, the simulation path of the simulated signal can be determined at least based on the monitoring information, so that the simulation path includes the routing nodes through which the simulation signal passes. Therefore, the problematic routing node can be directly located in the simulation path after the simulation is completed.

[0043] In order to obtain monitoring information in real time, the embodiment of the present invention binds a monitor to each routing node in the routing network. Figure 2 , Figure 2 It is a schematic diagram of the structure of a simulation platform for real-time monitoring of routing nodes provided by an embodiment of the present invention.

[0044] It should be noted that Figure 2 For ease of display, only the monitors bound to some routing nodes at the edge of the routing network are shown. In actual use, each routing node is bound to a monitor.

[0045] like Figure 2As shown in the figure, the simulation platform includes: sender (master): M0~M7; receiver (slave): S0~S7; each routing node in the routing network: R0~Rb. The master or slave is mounted on the routing node R0~Rb. In the actual chip system, each routing node may coexist with the master and slave. In addition to the monitor bound to the master / slave, a monitor is also bound to the routing node (router) of the routing network to monitor the actual situation of the routing node during the simulation process, and finally form monitoring information. After the simulation is completed, the monitoring information of each routing node can be summarized and recorded in the actual routing table.

[0046] exist Figure 2 In the simulation platform shown, the complete routing process for a simulation signal (request signal and corresponding response signal) on the routing network is basically divided into the following five steps:

[0047] Step 1, the master sends a request signal to access each device (slave) to the routing network;

[0048] Step 2, the request signal sent is routed step by step on the routing network according to the routing configuration table. At this time, the monitor bound to each routing node can record the node identification of the routing node and the signal characteristics of the request signal it routes when the routing node receives and transmits the request signal sent by the sender, so as to form the monitoring information of the routing node;

[0049] Step 3, the request signal reaches the destination (each slave) of the routing network;

[0050] Step 4, the receiver returns a response signal to the request signal to the routing network;

[0051] Step 5, the response signal is finally returned to the master through the routing network according to the routing table configuration. At this time, the monitor bound to each routing node continues to record the signal characteristics of the simulation signal when the routing node receives and transmits the response signal returned by the receiver, and combines it with the content recorded in step 2 to form monitoring information to complete this transmission.

[0052] For situations involving protocol conversion, the monitor bound to the routing node can also have the ability to convert the protocol and generate data in a unified format to facilitate result inspection and the formation of monitoring information after the inspection is passed.

[0053] When binding a monitor to each routing node, the "binding module" connection method provided by the hardware description language (such as systemVerilog) can be used to bind the monitor to the master, slave and router to be monitored using the keyword "BIND".

[0054] Since the interface signals of each master, slave and router conform to the same protocol, the interface signals can all be prefixed with "IP_NAME", so the "BIND module" method can be used to easily implement the binding of the monitor of the routing node.

[0055] Step S103: locating a problematic routing node in the simulation path.

[0056] It can be seen that the technical solution provided by the embodiment of the present invention, when locating the problematic routing nodes of the routing network, can obtain the monitoring information of each routing node, and the monitoring information of each routing node includes the node identification of the routing node and the signal characteristics of the simulated signal of its route. Therefore, the simulation path of the simulated signal can be determined at least based on the monitoring information; the simulation path includes the routing nodes that the simulated signal passes through in the routing network. In other words, the simulation path can reflect the various routing nodes that the simulated signal actually passes through during the simulation process. Therefore, when determining whether there is a routing error in the routing network, the simulation path of the simulated signal can be directly combined to locate the problematic routing node with the routing error in the simulation path, thereby facilitating the positioning of the problematic routing node in the routing network containing many routing nodes, and improving the speed and accuracy of locating the problematic routing node.

[0057] In order to facilitate the use of monitoring information of each routing node to determine the simulation path of the simulation signal, in one embodiment, the signal feature includes the address of the simulation signal; step S102 may include:

[0058] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined.

[0059] Each simulation signal corresponds to a destination (receiver) to which the simulation signal is to be routed, so the simulation signal contains an address, and the address is used to specify a receiver to receive the simulation signal. Since the simulation process includes multiple simulation signals, different simulation signals can pass through a routing node, and the node identifier of the routing node included in the monitoring information of the routing node can be for multiple different simulation signals.

[0060] The address of a simulated signal is certain, and the receiver information of the receiver it points to and the sender information of the simulated signal are certain. Therefore, after obtaining the monitoring information of each routing node, the monitoring information of the routing nodes belonging to a simulated signal (including the same address) can be combined based on the same address, and the sender information and the receiver information can be combined to form a simulated path of the simulated signal.

[0061] For example, the simulation nodes are: router1, router2, router3, router4, router5, and there are 2 simulation signals, one of which has an address of address 1 and the other has an address of address 2. Among them, the monitoring information of router1 includes address 1 and address 2; the monitoring information of router2 includes address 1; the monitoring information of router3 includes address 1 and address 2; the monitoring information of router4 includes address 2; and the monitoring information of router5 includes address 1 and address 2.

[0062] For the simulation signal of address 1, based on the monitoring information of each routing node, the routing nodes included in the simulation path are determined to be: router1, router2, router3, router5;

[0063] For the simulation signal of address 2, based on the monitoring information of each routing node, the routing nodes included in the determined simulation path are: router1, router3, router4, router5.

[0064] Therefore, when determining the simulation path of the simulation signal based on the monitoring information of the routing node, the routing nodes belonging to the same simulation signal can be quickly and conveniently determined based on the address of the simulation signal, and then the simulation path of the simulation signal can be determined.

[0065] In order to combine the monitoring information of each routing node with the same address into a simulation path of the simulation signal, in one embodiment, the monitoring information may also include: signal reception time; in the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined, including:

[0066] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the time sequence of the signal reception time, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

[0067] The monitor bound to each routing node can also record the signal reception time when the routing node receives the simulation signal and records the node identifier of the corresponding bound routing node when the routing node receives the simulation signal; thus, after determining the monitoring information of each routing node containing the same address, the node identifiers of each routing node are combined in sequence according to the reception order of the signal reception time (for example, the chronological order of the signal reception time) to obtain a simulation path including the simulation signal of each routing node.

[0068] In some other embodiments, the monitoring information may further include: a node identifier of the next routing node; in the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address, and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined, including:

[0069] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the node identifier of the next routing node included in the monitoring information of each routing node, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

[0070] The node identifier of the next routing node is that when the simulation signal is sent to a certain routing node, the monitor bound to the node not only records the node identifier of the routing node bound to it, but also synchronously records the node identifier of the routing node bound to it transmitting the simulation signal to the next routing node.

[0071] After the monitoring information of each routing node having the same address is determined based on the address of the simulation signal, the node identifiers of each routing node can be combined according to the node identifier of the next routing node to obtain the simulation path of the simulation signal.

[0072] After the simulation path of the simulation signal is determined, the problematic routing node can be located in the simulation path. In one implementation, step S103 may include:

[0073] Based on the types and coverage of simulation signals in different problem routing node positioning scenarios, a problem positioning method is determined; and the problem routing node is positioned in the simulation path using the determined problem positioning method.

[0074] In different problem routing node locating scenarios, the types of simulation signals covered are also different. Therefore, the applicable problem locating method can be determined according to the types of simulation signals covered in specific scenarios.

[0075] In one implementation, the signal feature may include a signal attribute of a simulation signal; and the method of determining the problem locating method based on the type coverage of the simulation signal in different problem routing node locating scenarios includes:

[0076] When the problem routing node location scenario is a one-way simulation scenario of a simulation signal, the types of the simulation signal include: any one of the request signal and the response signal, and the problem location method is determined as: path comparison;

[0077] The method of locating the problem routing node in the simulation path by using the determined problem locating method includes:

[0078] In the determined path comparison problem location method, perform the following steps:

[0079] Determine the signal property of the simulation signal routed by the simulation path, and determine the corresponding design path using the determined signal property of the simulation signal; the design path corresponds to the design information of the simulation signal routed on the routing network;

[0080] Comparison is performed using the design path of the simulation signal and the simulation path of the simulation signal;

[0081] If the comparison is consistent, it is determined that the routing network simulation is correct;

[0082] If the comparison is inconsistent, the routing node corresponding to the node identifier with the inconsistent comparison in the simulation path is located as the problematic routing node.

[0083] It is easy to understand that in different simulation scenarios of simulation signals, there are different simulation directions. For example, in a one-way simulation scenario: the simulation direction can be from the sender to the receiver, in which case the simulation signal is the request signal sent by the sender; it can also be from the receiver to the sender, in which case the simulation signal is the response signal returned by the receiver to the sender based on the received request signal. Or in a two-way simulation scenario (a complete simulation process) of a simulation signal, the simulation direction includes both the simulation direction from the sender to the receiver and the simulation direction from the receiver to the sender, and the simulation signal includes both the request signal and the response signal.

[0084] The problem routing node location scenario corresponds to the simulation scenario of the simulation signal. Therefore, when it is determined that the problem routing node location scenario is a unidirectional simulation scenario of the simulation signal, a suitable problem location method can be determined based on the types of the simulation signal at this time.

[0085] The signal attribute of the simulated signal may indicate the substantial signal content of the simulated signal and be used to distinguish different simulated signals.

[0086] There are situations where the simulation signal is correctly matched, but the routing is wrong. For example, if the routing of the design under test (DUT) is wrong, the data is routed to the wrong recipient. Although the data expected by the final request signal and the data returned by the response signal (read and write data) are correctly matched, the final recipient is wrong. At this time, if the original method of relying on the test program to verify the consistency of read and write data is used to complete the routing network correctness verification, the routing problem of the routing network cannot be directly discovered.

[0087] Therefore, in order to solve the problem of locating the routing node in the above scenario, in an embodiment of the present invention, the design path corresponding to the simulation signal can be determined based on the signal properties of the transmitted simulation signal, so as to compare the simulation path and the design path of the simulation signal with the same property, and locate the routing node corresponding to the inconsistent node identifier as the problem routing node.

[0088] The design path is the expected routing path defined when the simulation signal is designed. In one embodiment, the design path can be determined based on the project design document of the routing network in the chip system. The design path includes the sender information and receiver information defined when each simulation signal is designed, as well as the various routing nodes that the simulation signal passes through on the routing network, which is the path of the simulation signal under the correct routing condition. Therefore, the design path can be used as a benchmark for comparison with the simulation path.

[0089] In complex routing networks such as NoC, there will be different numbers of masters and slaves. A simulation signal (such as a request signal) sent by a sending master will select different simulation paths (mainly the various routing nodes that the simulation signal passes through in the routing network) according to the address of the simulation signal and route it to different receiving slaves. After receiving the request signal, the receiving slave will return a response signal, which will eventually return to the requesting master through the same simulation path.

[0090] Among them, the design path determined by the project design document can be recorded in the design path file. The format of the design path file is as follows:

[0091] {Master_0, router_0, router_1, router_2,…, router_n, device_0}

[0092] {Master_0, router_0, router_1, router_2,…, router_n, device_1}

[0093] …

[0094] {Master_0, router_0, router_1, router_2,…, router_n, device_n}

[0095] …

[0096] {Master_n, router_0, router_1, router_2,…, router_n, device_n}.

[0097] It can be seen that the design path file records all possible situations of the design paths. Therefore, when locating the problem routing node of the simulation path of each simulation signal, the design path that transmits the simulation signal with the same attribute can be found in the design path file based on the signal attribute of the simulation signal corresponding to the simulation path of the current problem routing node to be located.

[0098] In other implementations, in order to simplify the determination of the design path, it can also be directly extracted from the routing table of the design code. The routing table of the design code is implemented based on the project design file, so the design path can also be obtained.

[0099] In the above problem routing node location scenario, the problem routing node is located based on a certain type of simulation signal, which means that this is a one-way simulation scenario of the simulation signal: the sender sends a request signal to the receiver, or the receiver returns a response signal to the sender. At this time, the one-to-one correspondence between the request signal and the response signal cannot be accurately determined. Therefore, the path comparison problem location method can be selected to ensure the accuracy of the problem routing node location.

[0100] In order to accurately locate the problematic routing node, in one implementation, the comparison between the design path of the simulation signal and the simulation path of the simulation signal includes:

[0101] Using the sender information and the receiver information included in the design path, the sender information and the receiver information included in the simulation path of the simulation signal are compared;

[0102] And, using the node identifiers of the routing nodes included in the design path, the node identifiers of the routing nodes included in the simulation path of the simulation signal are compared.

[0103] By comparing the sender information and the receiver information, it is possible to avoid the situation where the receiver has an incorrect route when the request signal and the corresponding response signal in the simulation signal are verified to be OK.

[0104] By comparing the node identifiers of each routing node included in the design path with the node identifiers of each routing node included in the simulation path one by one, the node identifiers with inconsistent comparisons can be directly located. At this time, there may be two situations:

[0105] One case is when the sender information and the receiver information are both consistent, the node identifiers of each routing node are compared;

[0106] Another situation is that when the sender information is consistent but the receiver information is inconsistent, the node identifiers of each routing node are compared.

[0107] This can not only locate the routing node in the routing network where the routing error occurs (problematic routing node), but also determine whether a routing error occurs, that is, whether the simulation signal reaches the wrong receiver after passing through the routing node in the routing network.

[0108] In the case of performing a one-to-one comparison using the simulation path and the design path, the simulation signal includes a request signal or a response signal returned in response to the request signal.

[0109] That is to say, no matter whether the simulation signal is a request signal or a response signal, the simulation path can be compared with the design path to locate the problematic routing node.

[0110] In order to facilitate the positioning of the problematic routing node for the returned response signal, in other implementations, the signal feature may include: a first number statistic of the request signal and a second number statistic of the response signal;

[0111] The first number of statistical values ​​includes: the number of times the sender sends the request signal, the number of times each routing node sends the request signal, and the number of times the receiver receives the request signal in the simulation path; the second number of statistical values ​​includes: the number of times the receiver sends the response signal, the number of times each routing node receives the response signal, and the number of times the sender receives the response signal in the simulation path;

[0112] The method of determining the problem location based on the types of simulation signals in different problem routing node location scenarios includes:

[0113] When the problem routing node location scenario is a bidirectional verification scenario of simulation signals, the types of simulation signals include: both request signals and response signals corresponding to the request signals. The problem location method is determined by: frequency statistics comparison;

[0114] The method of locating the problem routing node in the simulation path by using the determined problem locating method includes:

[0115] In the problem location method of the determined number of statistical comparisons, the following steps are performed:

[0116] Obtaining a first number statistical value of the request signal and a second number statistical value of the response signal;

[0117] The first number statistics value and the second number statistics value are compared, and a problematic routing node is located in the simulation path based on the comparison result.

[0118] When the receiver returns the response signal generated in response to the request signal, the response signal only carries the ID information, so it is impossible to get the request signal that matches the response signal returned by the slave. However, the ID information can be used to determine the sending master that the receiving slave will return.

[0119] Therefore, based on the receiver information of the receiver and the sender information of the corresponding sender, the corresponding simulation path can be determined, and then the first number statistics of the request signal routed in the simulation path and the second number statistics of the response signal routed in the monitoring information are obtained.

[0120] Furthermore, according to the principle of one-to-one correspondence between request signals and response signals, that is, a request signal will return a corresponding response signal when the routing is correct. When the simulation signal ends the simulation, it can be checked whether the first count value and the second count value are the same. If the count values ​​do not match, the routing node that may have problems can be indirectly determined. For example, in the monitoring information of routing node router4, the first count value is 1 and the second count value is 0, then router4 can be determined to be a problematic routing node.

[0121] In the above-mentioned problem routing node locating scenario, the simulation signal covers the following situations: when both request signals and response signals are included, it means that the sender has completed the sending of the request signal, and the receiver can return a response signal based on the request signal (bidirectional simulation scenario). Therefore, in order to simplify the locating of the problem routing node in such scenarios, the principle of one-to-one correspondence between request signals and response signals can be followed, and the first number of statistical values ​​and the second number of statistical values ​​recorded in the monitoring information can be directly relied on. The problem locating method of statistical comparison at this time can be used to quickly and accurately locate the problem routing node.

[0122] The method for locating a routing network problem provided in an embodiment of the present invention is applicable to routing networks with different topological structures, such as the aforementioned NoC Ring (ring topology), Mesh (mesh topology), and Torus (mesh topology), and may also include routing networks with star topology, routing networks with tree topology, routing networks with cellular topology, and other routing networks with other topological structures.

[0123] The embodiment of the present invention further provides a routing network problem location device, which is used to implement the routing network problem location method described in the above embodiment. Figure 3 , Figure 3 It is a structural diagram of a problem locating device for a routing network provided by an embodiment of the present invention.

[0124] like Figure 3 Said device may include: monitors 10 corresponding to respective routing nodes in the routing network, the monitors being used to record monitoring information of the corresponding routing nodes, the monitoring information including the node identification of the routing node and the signal characteristics of the simulation signal routed by the routing node;

[0125] The monitoring information acquisition module 11 is used to obtain the monitoring information of each routing node in the routing network;

[0126] A simulation path determination module 12, configured to determine a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes that the simulation signal passes through in the routing network;

[0127] The positioning module 13 is used to locate the problematic routing node in the simulation path.

[0128] Optionally, the signal feature includes an address of the simulation signal; the simulation path determination module 12 is used to determine the simulation path of the simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network, including:

[0129] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined.

[0130] Optionally, the monitoring information further includes: signal reception time; the simulation path determination module 12 is used to combine the node identifiers of the routing nodes corresponding to the same address in the monitoring information of each routing node, and combine the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal to determine the simulation path of the simulation signal routed in the routing network, including:

[0131] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the time sequence of the signal reception time, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

[0132] Optionally, the monitoring information further includes: a node identifier of the next routing node; the simulation path determination module 12 is used to combine the node identifiers of the routing nodes corresponding to the same address in the monitoring information of each routing node, and combine the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal to determine the simulation path of the simulation signal routed in the routing network, including:

[0133] In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the node identifier of the next routing node included in the monitoring information of each routing node, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

[0134] Optionally, the positioning module 13 is used to locate the problematic routing node in the simulation path, including:

[0135] Determine the problem location method based on the types and coverage of simulation signals in different problem routing node location scenarios;

[0136] The determined problem locating method is used to locate the problem routing node in the simulation path.

[0137] Optionally, the signal feature includes a signal attribute of a simulation signal; the positioning module 13 is used to determine a problem positioning method based on the types of simulation signals in different problem routing node positioning scenarios, including:

[0138] When the problem routing node location scenario is a one-way simulation scenario of a simulation signal, the types of the simulation signal include: any one of the request signal and the response signal, and the problem location method is determined as: path comparison;

[0139] The positioning module 13 is used to locate the problem routing node in the simulation path by using the determined problem positioning method, including:

[0140] In the problem location mode of the determined path comparison, the signal attribute of the simulation signal routed by the simulation path is determined, and the corresponding design path is determined using the determined signal attribute of the simulation signal; the design path corresponds to the design information of the simulation signal routed on the routing network;

[0141] Comparison is performed using the design path of the simulation signal and the simulation path of the simulation signal;

[0142] If the comparison is consistent, it is determined that the routing network simulation is correct;

[0143] If the comparison is inconsistent, the routing node corresponding to the node identifier with the inconsistent comparison in the simulation path is located as the problematic routing node.

[0144] Optionally, the positioning module 13 is used to compare the design path of the simulation signal with the simulation path of the simulation signal, including:

[0145] Using the sender information and the receiver information included in the design path, the sender information and the receiver information included in the simulation path of the simulation signal are compared;

[0146] And, using the node identifiers of the routing nodes included in the design path, the node identifiers of the routing nodes included in the simulation path of the simulation signal are compared.

[0147] Optionally, the signal characteristics include: a first number statistic of the request signal and a second number statistic of the response signal;

[0148] The first number of statistical values ​​includes: the number of times the sender sends the request signal, the number of times each routing node sends the request signal, and the number of times the receiver receives the request signal in the simulation path; the second number of statistical values ​​includes: the number of times the receiver sends the response signal, the number of times each routing node receives the response signal, and the number of times the sender receives the response signal in the simulation path;

[0149] In order to facilitate the monitor of each routing node to record the node identification of the corresponding routing node and the signal characteristics of the simulation signal, a dynamic array can be used for recording. For example, the node identification of the routing node can be recorded in the node identification array router[*], the address, signal attributes, etc. in the signal characteristics of the simulation signal can be recorded in the request signal array req[*], the first statistical number value can also be recorded in the request signal array at the same time, and the second statistical number value can be recorded in the response signal array rsp[*]. This makes it easy to record the monitoring information of different simulation signals.

[0150] Of course, the monitors bound to each receiver and the monitors bound to each sender can also record the first number statistics of the request signal in the corresponding request signal array req[*]', and record the second number statistics of the response signal in the corresponding response signal array rsp[*]".

[0151] When the simulation starts, the monitors bound to the master, device, and router are all in working state. When the master sends a request signal, the corresponding bound monitor records the signal characteristics of the simulation signal and the sender information; the monitors bound to each routing node in the routing network can record the node identification of the routing node and the signal characteristics of the simulation signal when the decoded simulation signal is consistent with the simulation signal recorded by the monitor bound to the sender; the monitor bound to the receiver can record the receiver information and the signal characteristics of the simulation signal when the receiver receives the request signal and returns a response signal.

[0152] At the end of the simulation, on the one hand, the simulation path of the simulation signal can be determined based on the monitoring information, and the problematic routing node can be located based on the comparison between the simulation path of the simulation signal and the design path of the simulation signal;

[0153] On the other hand, we can check whether the number of request signals and response signals received on each slave / master / router matches, that is, whether the first statistical value and the second statistical value are consistent. If the number does not match, we can indirectly determine the routing node that may have problems.

[0154] The positioning module 13 is used to determine the problem positioning method based on the types of simulation signals in different problem routing node positioning scenarios, including:

[0155] When the problem routing node location scenario is a bidirectional verification scenario of simulation signals, the types of simulation signals include: both request signals and response signals corresponding to the request signals. The problem location method is determined by: frequency statistics comparison;

[0156] The positioning module 13 is used to locate the problem routing node in the simulation path by using the determined problem positioning method, including:

[0157] Under the determined problem locating method of frequency statistics comparison, a first frequency statistics value of the request signal and a second frequency statistics value of the response signal are obtained; the first frequency statistics value and the second frequency statistics value are compared, and the problem routing node is located in the simulation path based on the comparison result.

[0158] It can be seen that the technical solution provided by the embodiment of the present invention, when locating the problematic routing nodes of the routing network, can obtain the monitoring information of each routing node, and the monitoring information of each routing node includes the node identification of the routing node and the signal characteristics of the simulated signal of its route. Therefore, the simulation path of the simulated signal can be determined at least based on the monitoring information; the simulation path includes the routing nodes that the simulated signal passes through in the routing network. In other words, the simulation path can reflect the various routing nodes that the simulated signal actually passes through during the simulation process. Therefore, when determining whether there is a routing error in the routing network, the simulation path of the simulated signal can be directly combined to locate the problematic routing node with the routing error in the simulation path, thereby facilitating the positioning of the problematic routing node in the routing network containing many routing nodes, and improving the speed and accuracy of locating the problematic routing node.

[0159] An embodiment of the present invention provides an electronic device, such as a computer device such as a terminal device, a server device, etc., including a memory and a processor, wherein the memory stores a program, and the processor calls the program stored in the memory to execute the routing network problem locating method as described in any of the aforementioned embodiments.

[0160] An embodiment of the present invention provides a storage medium storing a program, and when the program is executed, the method for locating a problem in a routing network as described in any one of the above embodiments is implemented.

[0161] An embodiment of the present invention provides a computer program product, including a computer program, and when the computer program is executed by a processor, the method for locating a problem in a routing network as described in any one of the above embodiments is implemented.

[0162] The above describes multiple implementation schemes provided by the embodiments of the present invention. The various optional methods introduced in the implementation schemes can be combined and cross-referenced with each other without conflict, thereby extending a variety of possible implementation schemes, which can all be considered as implementation schemes disclosed and open in the embodiments of the present invention.

[0163] Although the embodiments of the present invention are disclosed above, the present invention is not limited thereto. Any person skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the scope defined by the claims.

Claims

1. A method for locating a problem in a routing network, characterized in that: include: Acquire monitoring information of each routing node in the routing network, wherein the monitoring information of a routing node includes a node identifier of the routing node and a signal characteristic of a simulation signal routed by the routing node; Determining a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes that the simulation signal passes through in the routing network; A problematic routing node is located in the simulation path.

2. The method for locating a problem in a routing network as claimed in claim 1, characterized in that: The signal feature includes an address of the simulation signal; and determining the simulation path of the simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network includes: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined.

3. The method for locating a problem in a routing network as claimed in claim 2, characterized in that: The monitoring information also includes: signal reception time; in the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address, and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined, including: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the time sequence of the signal reception time, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

4. The method for locating a problem in a routing network as claimed in claim 2, characterized in that: The monitoring information also includes: a node identifier of the next routing node; in the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address, and the receiver information of the simulation signal, to determine the simulation path of the simulation signal routed in the routing network, including: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the node identifier of the next routing node included in the monitoring information of each routing node, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

5. The method for locating a problem in a routing network according to any one of claims 1 to 4, characterized in that: The locating the problematic routing node in the simulation path comprises: Determine the problem location method based on the types and coverage of simulation signals in different problem routing node location scenarios; The determined problem locating method is used to locate the problem routing node in the simulation path.

6. The method for locating a problem in a routing network as claimed in claim 5, characterized in that: The signal characteristics include signal properties of the simulation signal; The method of determining the problem location based on the types of simulation signals in different problem routing node location scenarios includes: When the problem routing node location scenario is a one-way simulation scenario of a simulation signal, the types of the simulation signal include: any one of the request signal and the response signal, and the problem location method is determined as: path comparison; The method of locating the problem routing node in the simulation path by using the determined problem locating method includes: In the determined path comparison problem location method, perform the following steps: Determine the signal property of the simulation signal routed by the simulation path, and determine the corresponding design path using the signal property of the simulation signal; the design path corresponds to the design information of the simulation signal routed on the routing network; Comparing the design path of the simulation signal with the simulation path of the simulation signal; If the comparison is inconsistent, the routing node with the inconsistent comparison in the simulation path is identified as a problem routing node.

7. The method for locating a problem in a routing network as claimed in claim 6, characterized in that: The comparing the design path of the simulation signal with the simulation path of the simulation signal includes: Using the sender information and the receiver information included in the design path, the sender information and the receiver information included in the simulation path of the simulation signal are compared; And, using the node identifiers of the routing nodes included in the design path, the node identifiers of the routing nodes included in the simulation path of the simulation signal are compared.

8. The method for locating a problem in a routing network as claimed in claim 5, characterized in that: The signal characteristics include: a first number of statistical values ​​of request signals and a second number of statistical values ​​of response signals; The first number of statistical values ​​includes: the number of times the sender sends the request signal, the number of times each routing node sends the request signal, and the number of times the receiver receives the request signal in the simulation path; the second number of statistical values ​​includes: the number of times the receiver sends the response signal, the number of times each routing node receives the response signal, and the number of times the sender receives the response signal in the simulation path; The method of determining the problem location based on the types of simulation signals in different problem routing node location scenarios includes: When the problem routing node location scenario is a bidirectional verification scenario of simulation signals, the types of simulation signals include: both request signals and response signals corresponding to the request signals. The problem location method is determined by: frequency statistics comparison; The method of locating the problem routing node in the simulation path by using the determined problem locating method includes: In the problem location method of the determined number of statistical comparisons, the following steps are performed: Obtaining a first number statistical value of the request signal and a second number statistical value of the response signal; The first number statistics value and the second number statistics value are compared, and a problematic routing node is located in the simulation path based on the comparison result.

9. The method for locating a problem in a routing network according to any one of claims 1 to 4, characterized in that: The obtaining of monitoring information of each routing node in the routing network includes: For each routing node, when the routing node receives the simulation signal, the simulation signal is decoded to obtain a decoded simulation signal; The decoded simulation signal is compared with the recorded simulation signal. If they are consistent, the node identification of the routing node and the signal characteristics of the simulation signal are recorded to form monitoring information of the routing node; the recorded simulation signal is the simulation signal sent by the sender.

10. A device for locating a problem in a routing network, characterized in that: include: A monitor corresponding to each routing node in the routing network, the monitor is used to record monitoring information of the corresponding routing node, the monitoring information includes a node identifier of the routing node and a signal characteristic of a simulation signal of the routing node; A monitoring information acquisition module is used to obtain monitoring information of each routing node in the routing network; A simulation path determination module, configured to determine a simulation path of a simulation signal routed in the routing network based at least on monitoring information of each routing node in the routing network; the simulation path of the simulation signal includes routing nodes that the simulation signal passes through in the routing network; A positioning module is used to locate the problematic routing node in the simulation path.

11. The device for locating a problem in a routing network as claimed in claim 10, characterized in that: The signal feature includes an address of the simulation signal; the simulation path determination module is used to determine the simulation path of the simulation signal routed in the routing network based on at least monitoring information of each routing node in the routing network, including: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined, and combined with the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal, the simulation path of the simulation signal routed in the routing network is determined.

12. The device for locating a problem in a routing network as claimed in claim 11, characterized in that: The monitoring information also includes: signal reception time; the simulation path determination module is used to combine the node identifiers of the routing nodes corresponding to the same address in the monitoring information of each routing node, and combine the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal to determine the simulation path of the simulation signal routed in the routing network, including: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the time sequence of the signal reception time, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

13. The device for locating a problem in a routing network according to claim 11, characterized in that: The monitoring information also includes: a node identifier of the next routing node; the simulation path determination module is used to combine the node identifiers of the routing nodes corresponding to the same address in the monitoring information of each routing node, and combine the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal to determine the simulation path of the simulation signal routed in the routing network, including: In the monitoring information of each routing node, the node identifiers of the routing nodes corresponding to the same address are combined according to the node identifier of the next routing node included in the monitoring information of each routing node, and the sender information of the simulation signal corresponding to the same address and the receiver information of the simulation signal are combined to determine the simulation path of the simulation signal routed in the routing network.

14. The device for locating a problem in a routing network according to any one of claims 10 to 13, characterized in that: The positioning module is used to locate the problematic routing node in the simulation path, and includes: Determine the problem location method based on the types and coverage of simulation signals in different problem routing node location scenarios; The determined problem locating method is used to locate the problem routing node in the simulation path.

15. The device for locating a problem in a routing network as claimed in claim 14, characterized in that: The signal characteristics include signal properties of the simulation signal; The positioning module is used to determine the problem positioning method based on the types of simulation signals in different problem routing node positioning scenarios, including: When the problem routing node location scenario is a one-way simulation scenario of a simulation signal, the types of the simulation signal include: any one of the request signal and the response signal, and the problem location method is determined as: path comparison; The positioning module is used to locate the problem routing node in the simulation path by using the determined problem positioning method, including: In the problem location mode of the determined path comparison, the signal attribute of the simulation signal routed by the simulation path is determined, and the corresponding design path is determined using the determined signal attribute of the simulation signal; the design path corresponds to the design information of the simulation signal routed on the routing network; Comparison is performed using the design path of the simulation signal and the simulation path of the simulation signal; If the comparison is consistent, it is determined that the routing network simulation is correct; If the comparison is inconsistent, the routing node corresponding to the node identifier with the inconsistent comparison in the simulation path is located as the problematic routing node.

16. The device for locating a problem in a routing network as claimed in claim 15, characterized in that: The positioning module is used to compare the design path of the simulation signal with the simulation path of the simulation signal, and includes: Using the sender information and the receiver information included in the design path, the sender information and the receiver information included in the simulation path of the simulation signal are compared; And, using the node identifiers of the routing nodes included in the design path, the node identifiers of the routing nodes included in the simulation path of the simulation signal are compared.

17. The device for locating a problem in a routing network as claimed in claim 14, characterized in that: The signal characteristics include: a first number of statistical values ​​of request signals and a second number of statistical values ​​of response signals; The first number of statistical values ​​includes: the number of times the sender sends the request signal, the number of times each routing node sends the request signal, and the number of times the receiver receives the request signal in the simulation path; the second number of statistical values ​​includes: the number of times the receiver sends the response signal, the number of times each routing node receives the response signal, and the number of times the sender receives the response signal in the simulation path; The positioning module is used to determine the problem positioning method based on the types of simulation signals in different problem routing node positioning scenarios, including: When the problem routing node location scenario is a bidirectional verification scenario of simulation signals, the types of simulation signals include: both request signals and response signals corresponding to the request signals. The problem location method is determined by: frequency statistics comparison; The positioning module is used to locate the problem routing node in the simulation path by using the determined problem positioning method, including: Under the determined problem locating method of frequency statistics comparison, a first frequency statistics value of the request signal and a second frequency statistics value of the response signal are obtained; the first frequency statistics value and the second frequency statistics value are compared, and the problem routing node is located in the simulation path based on the comparison result.

18. An electronic device, characterized in that: The invention comprises a memory and a processor, wherein the memory stores a program, and the processor calls the program stored in the memory to execute the method for locating a problem in a routing network according to any one of claims 1 to 9.

19. A storage medium, characterized in that: The storage medium stores a program, and when the program is executed, the method for locating a problem in a routing network according to any one of claims 1 to 9 is implemented.

20. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method for locating a problem in a routing network as described in any one of claims 1 to 9 is implemented.