CN113203940B - Parallel test method in 3D NoC test planning - Google Patents

Parallel test method in 3D NoC test planning Download PDF

Info

Publication number
CN113203940B
CN113203940B CN202110474193.4A CN202110474193A CN113203940B CN 113203940 B CN113203940 B CN 113203940B CN 202110474193 A CN202110474193 A CN 202110474193A CN 113203940 B CN113203940 B CN 113203940B
Authority
CN
China
Prior art keywords
data packet
current transmission
transmission node
node
destination address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110474193.4A
Other languages
Chinese (zh)
Other versions
CN113203940A (en
Inventor
胡聪
白杨
黄喜军
朱爱军
张活
万春霆
许川佩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN202110474193.4A priority Critical patent/CN113203940B/en
Publication of CN113203940A publication Critical patent/CN113203940A/en
Application granted granted Critical
Publication of CN113203940B publication Critical patent/CN113203940B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses a parallel test method in 3D NoC test planning, which reduces the waiting time of data packets caused by congestion phenomenon, thereby reducing the test time of IP cores, reducing the test cost and improving the test efficiency by reducing the repeated transmission time of the same test data packets and reducing the occurrence of route conflict. In the presence of the same core or homogeneous core of the same type, the test data packets may be routed simultaneously to the same core using a multicast pipeline routing algorithm in which the test data is sent from one source node to multiple destination nodes and the test data is transmitted in a network in pipeline form in divided pieces. And a unicast communication mode is adopted for heterogeneous cores, and an XYZ routing algorithm with partial self-adaption is designed, namely the XYZ routing algorithm is improved to reduce the data transmission time, so that the purposes of minimizing the test time and the test power consumption are achieved.

Description

Parallel test method in 3D NoC test planning
Technical Field
The invention relates to the technical field of integrated circuit testing, in particular to a parallel testing method in 3D NoC test planning.
Background
Because the design and testing of integrated circuits is inseparable, testing techniques become an important element in the network-on-chip development process. With the continued development of three-dimensional integrated circuit technology, three-dimensional network on chip (three dimensional network-on-chip,3D NoC) has evolved. However, with the continuous increase of the number and complexity of embedded cores in a system, how to improve the test efficiency of the system is a significant challenge, and how to maximize the improvement of the test efficiency under limited resources becomes an NP-hard problem by reasonably distributing the test data of the tested cores, effectively utilizing the channel bandwidth and the number and positions of the test interfaces. It has been reported that nocs have had their cost of manufacture exceeded, and that the time spent testing soft costs of the cost of testing accounts for 80% -90% of the total cost of testing. Therefore, the improvement of the test efficiency and the reduction of the test cost play a crucial role in improving the yield in the chip manufacturing process, and have high research value.
As the scale of integrated circuits increases, the number of integrated IP cores in the system increases, and the phenomenon that isomorphic cores and heterogeneous cores coexist in the network on chip occurs. At present, most of test researches on network-on-chip are carried out on heterogeneous cores, but isomorphic cores and heterogeneous cores generally exist in large-scale integrated systems at the same time, and the prior method cannot fully utilize the homogeneity of a large number of multi-core systems, so that the same test data packet is repeatedly transmitted, and the problem of test time is greatly increased.
Disclosure of Invention
The invention aims to solve the problem that the existing three-dimensional network-on-chip testing method has long testing time, and provides a parallel testing method in 3D NoC testing planning.
In order to solve the problems, the invention is realized by the following technical scheme:
the parallel test method in the 3D NoC test planning comprises the following steps:
step 1, dividing isomorphic IP cores to be detected into isomorphic core sets and dividing heterogeneous IP cores to be detected into heterogeneous core sets for all IP cores to be detected;
step 2, carrying out parallel test on isomorphic IP cores to be tested in the isomorphic core set by adopting multicast pipeline routing;
and 3, carrying out parallel test on the heterogeneous IP cores to be tested in the heterogeneous core set by adopting unicast improved XYZ route.
The specific process of the step 2 is as follows:
step 2.1, respectively constructing a multicast data packet for isomorphic IP cores to be detected belonging to the same TAM in the isomorphic core set, wherein the source address of the multicast data packet is the three-dimensional coordinates of the input node of the TAM, and each destination address of the multicast data packet is the three-dimensional coordinates of each isomorphic IP core to be detected on the TAM;
step 2.2, inputting the multicast data packet into the 3D NoC from the input node of the TAM, and regarding the input node as the current transmission node;
step 2.3, judging whether each destination address of the current transmission node and the multicast data packet are positioned at the same layer:
if the current transmission node and at least one destination address of the multicast data packet are located in the same layer, namely, the Z-axis coordinates are the same, the current transmission node is unchanged, and step 2.4 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Z-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.3 for each current transmission node;
step 2.4, judging whether the X-axis coordinate of the current transmission node is the same as the X-axis coordinate of each destination address of the multicast data packet:
if the X-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.5 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the X-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.4 for each current transmission node;
step 2.5, judging whether the Y-axis coordinate of the current transmission node is the same as the Y-axis coordinate of each destination address of the multicast data packet:
if the Y-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.6 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Y-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.5 for each current transmission node;
and 2.6, repeating the steps 2.1-2.5 until testing of all isomorphic IP cores to be tested of each TAM in the isomorphic core set is completed.
The specific process of the step 3 is as follows:
step 3.1, respectively constructing a unicast data packet for each heterogeneous IP core to be detected in the heterogeneous core set, wherein the source address of the unicast data packet is the three-dimensional coordinate of the input node of the TAM to which the heterogeneous IP core to be detected belongs, and the destination address of the unicast data packet is the three-dimensional coordinate of the heterogeneous IP core to be detected;
step 3.2, respectively inputting unicast data packets into the 3D NoC from input nodes of the TAM, and regarding the input nodes as current transmission nodes;
step 3.3, judging whether the three-dimensional coordinates of the current transmission node and the destination address of the unicast data packet are equal or not:
if the IP cores are equal, transmitting the unicast data packet to the current transmission node to finish the test of the current heterogeneous IP cores to be tested;
otherwise, turning to step 3.4;
step 3.4, judging whether the Z-axis coordinate of the current transmission node is smaller than the Z-axis coordinate of the destination address of the unicast data packet:
if yes, go to step 3.4.1a-step 3.4.1c:
step 3.4.1a, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.1b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1b;
step 3.4.1b, judging whether the current transmission node has congestion to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.1c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1c;
step 3.4.1c, judging whether the current transmission node has congestion to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
otherwise, step 3.4.2a-step 3.4.2c is performed:
step 3.4.2a, judging whether congestion exists between the current transmission node and the connected node in the X-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.2b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2b;
step 3.4.2b, judging whether congestion exists between the current transmission node and the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.2c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2c;
step 3.4.2c, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
and step 3.5, repeating the steps 3.1-3.4 until the test of all heterogeneous IP cores to be tested in the heterogeneous core set is completed.
Compared with the prior art, the invention reduces the waiting time of the data packet caused by congestion by reducing the repeated transmission time of the same test data packet and reducing the occurrence of route conflict, thereby reducing the test time of the IP core, reducing the test cost and improving the test efficiency. In the presence of the same core or homogeneous core of the same type, test data packets may be routed simultaneously to the same core using a multicast pipeline routing algorithm in which test data is sent from one source node to multiple destination nodes and the test data is transmitted in a network in pipeline form in divided into flits. And a unicast communication mode is adopted for heterogeneous cores, and an XYZ routing algorithm with partial self-adaption (improved XYZ routing algorithm) is designed to reduce the data transmission time, so that the purposes of minimizing the test time and the test power consumption are achieved.
Drawings
FIG. 1 is a flow chart of a 3D NoC test planning method.
Fig. 2 is a flow chart of a multicast pipeline routing method.
Fig. 3 is a flow chart of a unicast modified XYZ routing method.
Fig. 4 is a multicast test packet format.
Fig. 5 is a view of intra-layer region division, in which (a) is a source node located corner profile, (b) is a source node located edge profile, and (c) is a source node located center profile.
Fig. 6 is a schematic diagram of isomorphic core testing.
Fig. 7 is a timing diagram of multicast pipelined parallel test data.
Fig. 8 is a unicast test packet format.
Fig. 9 is a transmission path comparison diagram of the routing algorithm.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the invention is further described in detail below in connection with specific examples (taking a 3 x 3D Mesh topology as an example).
Referring to fig. 1, the existing 3D NoC test planning method mainly includes the following steps:
(1) Parameter initialization: setting the number and the number of TAMs, determining the number and the position coordinates of the I/O ports, giving the maximum allowable total power consumption of the system and the power consumption constraint of each layer, and initializing the number of IP cores and related parameter information.
(2) Distribution of test data: firstly, determining the number of IP cores distributed on each TAM, and then reasonably distributing the corresponding test data of each IP core to each TAM.
(3) Parallel test: firstly, detecting whether an idle TAM exists in a test, judging an unmeasured IP core on the TAM, searching the IP core meeting the bandwidth and power consumption constraint required by the TAM, adding the IP core into the test and marking the test as the in-test state if the test path of the to-be-tested core cannot conflict with the test path of the in-test IP core, and repeating the steps to continuously and circularly check whether the idle position on each TAM can be added into the to-be-tested IP core.
(4) Updating IP core test information: if the IP core is detected to meet the testing condition at the moment, marking the core, recording the testing time at the moment on the TAM where the core is located, namely the starting testing time of the core, and updating relevant information such as power consumption, time and the like in real time. When the core test is finished, the IP core is marked as a tested state, and the test finishing time of the core is recorded. And updates the relevant information on the current TAM while freeing up communication resources, such as routing, bandwidth information, etc., that were occupied by the core test.
(5) Calculating test time: if testing all the IP cores is completed, calculating the total testing time of all the IP cores.
In order to reduce the repeated transmission time of the same test data packet and reduce the occurrence of routing conflict, the data packet waiting time caused by congestion phenomenon is relieved, so that the test time of an IP core is reduced, the test cost is reduced, and the test efficiency is improved. In the parallel test process, the parallel test strategy combining isomorphic core multicast pipeline routing and heterogeneous core unicast modified XYZ routing is adopted, so that the test of each IP core to be tested currently is realized. Specifically, the invention provides a parallel test method in 3D NoC test planning, which specifically comprises the following steps:
step 1, dividing isomorphic IP cores to be detected into isomorphic core sets and dividing heterogeneous IP cores to be detected into heterogeneous core sets for all current IP cores to be detected;
step 2, performing parallel test on multicast pipeline routing on the isomorphic core set, as shown in fig. 2, namely:
step 2.1, respectively constructing a multicast data packet for isomorphic IP cores to be detected belonging to the same TAM in the isomorphic core set, wherein the source address of the multicast data packet is the three-dimensional coordinates of the input node of the TAM, and each destination address of the multicast data packet is the three-dimensional coordinates of each isomorphic IP core to be detected on the TAM;
step 2.2, inputting the multicast data packet into the 3D NoC from the input node of the TAM, and regarding the input node as the current transmission node;
step 2.3, judging whether each destination address of the current transmission node and the multicast data packet are positioned at the same layer:
if the current transmission node and at least one destination address of the multicast data packet are located in the same layer, namely, the Z-axis coordinates are the same, the current transmission node is unchanged, and step 2.4 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Z-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.3 for each current transmission node;
step 2.4, judging whether the X-axis coordinate of the current transmission node is the same as the X-axis coordinate of each destination address of the multicast data packet:
if the X-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.5 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the X-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.4 for each current transmission node;
step 2.5, judging whether the Y-axis coordinate of the current transmission node is the same as the Y-axis coordinate of each destination address of the multicast data packet:
if the Y-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.6 is executed;
otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Y-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.5 for each current transmission node;
step 2.6, repeating the steps 2.1-2.5 until the test of all isomorphic IP cores to be tested of each TAM in the isomorphic core set is completed;
step 3, performing parallel test on unicast modified XYZ routing on the heterogeneous core set, as shown in fig. 3, namely:
step 3.1, respectively constructing a unicast data packet for each heterogeneous IP core to be detected in the heterogeneous core set, wherein the source address of the unicast data packet is the three-dimensional coordinate of the input node of the TAM to which the heterogeneous IP core to be detected belongs, and the destination address of the unicast data packet is the three-dimensional coordinate of the heterogeneous IP core to be detected;
step 3.2, respectively inputting unicast data packets into the 3D NoC from input nodes of the TAM, and regarding the input nodes as current transmission nodes;
step 3.3, judging whether the three-dimensional coordinates of the current transmission node and the destination address of the unicast data packet are equal or not:
if the IP cores are equal, transmitting the unicast data packet to the current transmission node to finish the test of the current heterogeneous IP cores to be tested;
otherwise, turning to step 3.4;
step 3.4, judging whether the Z-axis coordinate of the current transmission node is smaller than the Z-axis coordinate of the destination address of the unicast data packet:
if yes, go to step 3.4.1a-step 3.4.1c:
step 3.4.1a, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.1b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1b;
step 3.4.1b, judging whether the current transmission node has congestion to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.1c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1c;
step 3.4.1c, judging whether the current transmission node has congestion to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
otherwise, step 3.4.2a-step 3.4.2c is performed:
step 3.4.2a, judging whether congestion exists between the current transmission node and the connected node in the X-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.2b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2b;
step 3.4.2b, judging whether congestion exists between the current transmission node and the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.2c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2c;
step 3.4.2c, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
and step 3.5, repeating the steps 3.1-3.4 until the test of all heterogeneous IP cores to be tested in the heterogeneous core set is completed.
1) Isomorphic core multicast pipeline route parallel test
Fig. 4 is a multicast packet format, where a message may be divided into packets, and one packet may include a header flit, a data flit, and a trailer flit. The head flit comprises a routing algorithm used for transmitting data and position coordinates of a source node and a plurality of destination nodes.
Multicast communication may be optimized by dividing the destination core of the multicast message into different partitions, with different region divisions according to different distributions of source nodes per layer of 3D NoC as shown in fig. 5. Wherein the black solid circles are source nodes, and the dotted lines divide the destination nodes into different areas. Each layer of mesh topology is divided into four regions: (1) east region: the X coordinates of all nodes in the region are greater than the X coordinates of the source node. (2) western region: the X coordinates of all nodes in the region are smaller than the X coordinates of the source node. (3) south region: the X coordinates of all nodes in the area are equal to the X coordinates of the source node, and the Y coordinates are smaller than the Y coordinates of the source node. (4) north region: the X coordinates of all nodes in the area are equal to the X coordinates of the source node, and the Y coordinates are larger than the Y coordinates of the source node. For each region containing at least one multicast destination, an initial packet is generated whose destination is the multicast destination furthest in the region relative to the source node, these packets being referred to as the east, west, south and north packets, respectively. Each initial packet carries the addresses of all destination nodes in the corresponding region and is stored in the multicast payload field, and then the data packet is transmitted in the corresponding region. Depending on the furthest destination location within each zone, the east and west packets will move in the X and Y directions based on the XY routing algorithm, while the south and north packets will only move in the Y direction, since the zone is limited to one column.
When the source node and the destination node are in the same layer: and comparing the X coordinates of the current node with the X coordinates of all destination nodes in the effective load field when the eastern packet and the western packet are transmitted to the next node each time, judging whether the row has destination nodes, if so, copying the initial packet to the row of destination nodes for transmission, otherwise, not copying the initial packet, and then continuing to transmit to the next node. And transmitting the test data packet to the furthest destination only in the Y direction for the south packet and the north packet. When the source node and the destination node are in different layers: and comparing the Z coordinate of the node with the Z coordinate of the destination node in the effective load field when the data packet in each area is transmitted to the next node, if the Z coordinate of the node is different from the Z coordinate of the destination node in the effective load field, transmitting the copied data packet to the Z direction, otherwise, not copying, and continuing to transmit to the next node in the area.
It is assumed that in NoC of an mxnxl 3D Mesh structure, cores 5, 12, 13, 15, 23 are a class of isomorphic cores, and their distribution is shown in fig. 6, and they are distributed in different areas. Assume that a multicast test packet is transmitted from a router R4 into the network, and a black solid arrow in the figure represents a transmission path of test data of each IP core, and, taking a core 23 as an example, a transmission path of test data based on the above-mentioned transmission mode of the multicast packet in the network is R4-R5-R14-R23, where R4 represents other routers connected to the core 4, and so on.
In order to represent the multicast pipeline parallel test process, the test data timing diagram in TAM is shown in fig. 7, in which the horizontal axis represents clock cycle, and taking core 5 as an example, the test data sequentially passes through R4 and R5, and the length of each rectangle represents the routing time of the data packet passing through each router. When the homogeneous core is tested, the path of the test core can be divided into a plurality of sub-tasks which are used for transmitting the multicast test data to the homogeneous core and are regarded as data packets through the routers, so that the parallel transmission of pipeline data is realized, and the transmission time of the test data in a network is effectively shortened in the process.
2) Heterogeneous core improved XYZ route parallel test
Fig. 8 shows a unicast packet format, which differs from a multicast packet in that there is only a location coordinate of a destination node in a packet header microchip of the unicast packet.
The invention improves the XYZ routing algorithm and provides a part of self-adaptive XYZ routing algorithm for routing unicast packets. Firstly, inputting three-dimensional coordinates of a source node and a destination node, judging whether the coordinates are equal to each other, and if the coordinates are equal, indicating that an IP core connected with the node is a core to be tested, transmitting test data to the IP core of the node; otherwise, judging the Z coordinate of the source node and the destination node, if the Z coordinate of the source node Zs is larger than the Z coordinate of the destination node Zd, indicating that the source node is positioned on the upper side of the destination node, and in order to enable the data packet to be transmitted as close to the bottom layer as possible, transmitting the data packet in the Z direction and then in the XY direction, otherwise, and the same. And judging whether the dimension of the current transmission of the next node data packet is congested, if not, transmitting the next node data packet to the node, otherwise, judging whether the next dimension of the next node is congested, and pushing the next node data packet to judge the next node data packet in a dimension-by-dimension manner until the test data packet is transmitted to the IP core to be tested. The improved XYZ routing algorithm can overcome the problem of waiting delay caused by congestion in a certain dimension in the XYZ routing algorithm, and the routing direction of the data packet is adjusted according to the current network state.
In accordance with the improved routing algorithm described above, the routing path of the IP core 2 to be tested is calculated in a 3D Mesh structure network on chip of 3 x 3 scale as shown in fig. 9. Wherein, the dotted arrow is a test path calculated according to the traditional XYZ routing algorithm, and the three solid arrows are routing paths calculated by the improved routing algorithm; the two solid arrows represent the test paths of the IP core 1 calculated by the XYZ routing algorithm. When the XYZ routing algorithm is adopted, the IP core 1 and the IP core 2 cannot be tested at the same time, and because the resource conflict phenomenon occurs at the R3, only one party can release the occupied communication resources after the test is completed, and the other party can test. This greatly increases latency, inefficiency, and increases overall testing time of the system. After the improved XYZ routing algorithm is adopted, the congestion phenomenon occurs in the link from the test data packet of the IP core 2 to the link from the R4 to the R3 through judgment, and the data transmission is carried out in the next dimension direction, so that the test data is routed to the R5 in the Z direction, and the subsequent routing of the test data is carried out according to the XYZ routing algorithm because no resource conflict phenomenon occurs.
By improving the calculation mode of the XYZ routing algorithm, the phenomenon of resource conflict can be effectively avoided, and the network congestion degree is reduced, so that the waiting time generated by the phenomenon is eliminated, the efficiency of parallel testing of the resource cores is improved, and finally, the purpose of minimizing the system testing time is achieved.
Mapping the IP core into a 3D Mesh structure according to the principle that the test power consumption and the test time of each layer of core are approximately equal, wherein the specific distribution is shown in the table 1:
TABLE 1 distribution of cores
Figure GDA0004229106690000091
Improved routing algorithm scheme validity verification experiment
In order to verify the optimization effect of the improved XYZ routing algorithm on the 3D NoC test time, the improved XYZ routing algorithm is compared with the XYZ routing algorithm. Table 2 is the average results of 30 simulation experiments for several test reference circuits below, satisfying a TAM number of 3 and a 50% power consumption constraint set by the system.
Table 2 routing algorithm comparative experimental results
Figure GDA0004229106690000092
From the observation in table 2, the improvement of the XYZ routing algorithm on the four circuits with different scales is improved to a different extent compared with the XYZ routing algorithm, and especially the improvement effect is most obvious on the 3×d695 circuit, and the test time is reduced to 37613 from 43665.2. Because the improved XYZ routing algorithm has partial self-adaptability, the routing path of the data packet is adjusted in real time according to the network state, the occurrence of routing conflict is reduced, and the waiting time of the data packet caused by congestion phenomenon is relieved, so that the parallel testing efficiency can be improved and the testing time can be shortened when the XYZ routing algorithm is applied to the test planning.
It should be noted that, although the examples described above are illustrative, this is not a limitation of the present invention, and thus the present invention is not limited to the above-described specific embodiments. Other embodiments, which are apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein, are considered to be within the scope of the invention as claimed.

Claims (1)

  1. The parallel test method in the 3D NoC test planning is characterized by comprising the following steps:
    step 1, dividing isomorphic IP cores to be detected into isomorphic core sets and dividing heterogeneous IP cores to be detected into heterogeneous core sets for all IP cores to be detected;
    step 2, carrying out parallel test on isomorphic IP cores to be tested in the isomorphic core set by adopting multicast pipeline routing; namely:
    step 2.1, respectively constructing a multicast data packet for isomorphic IP cores to be detected belonging to the same TAM in the isomorphic core set, wherein the source address of the multicast data packet is the three-dimensional coordinates of the input node of the TAM, and each destination address of the multicast data packet is the three-dimensional coordinates of each isomorphic IP core to be detected on the TAM;
    step 2.2, inputting the multicast data packet into the 3D NoC from the input node of the TAM, and regarding the input node as the current transmission node;
    step 2.3, judging whether each destination address of the current transmission node and the multicast data packet are positioned at the same layer:
    if the current transmission node and at least one destination address of the multicast data packet are located in the same layer, namely, the Z-axis coordinates are the same, the current transmission node is unchanged, and step 2.4 is executed;
    otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Z-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.3 for each current transmission node;
    step 2.4, judging whether the X-axis coordinate of the current transmission node is the same as the X-axis coordinate of each destination address of the multicast data packet:
    if the X-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.5 is executed;
    otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the X-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.4 for each current transmission node;
    step 2.5, judging whether the Y-axis coordinate of the current transmission node is the same as the Y-axis coordinate of each destination address of the multicast data packet:
    if the Y-axis coordinates of the current transmission node and at least one destination address of the multicast data packet are the same, the current transmission node is unchanged, and the step 2.6 is executed;
    otherwise, copying the multicast data packet, transmitting the multicast data packet from the current transmission node to the connected nodes in the Y-axis coordinate direction of each destination address of the multicast data packet, updating the current transmission node, and repeatedly executing the step 2.5 for each current transmission node;
    step 2.6, repeating the steps 2.1-2.5 until the test of all isomorphic IP cores to be tested of each TAM in the isomorphic core set is completed;
    step 3, performing parallel test on heterogeneous IP cores to be tested in the heterogeneous core set by adopting unicast improved XYZ route, namely:
    step 3.1, respectively constructing a unicast data packet for each heterogeneous IP core to be detected in the heterogeneous core set, wherein the source address of the unicast data packet is the three-dimensional coordinate of the input node of the TAM to which the heterogeneous IP core to be detected belongs, and the destination address of the unicast data packet is the three-dimensional coordinate of the heterogeneous IP core to be detected;
    step 3.2, respectively inputting unicast data packets into the 3D NoC from input nodes of the TAM, and regarding the input nodes as current transmission nodes;
    step 3.3, judging whether the three-dimensional coordinates of the current transmission node and the destination address of the unicast data packet are equal or not:
    if the IP cores are equal, transmitting the unicast data packet to the current transmission node to finish the test of the current heterogeneous IP cores to be tested;
    otherwise, turning to step 3.4;
    step 3.4, judging whether the Z-axis coordinate of the current transmission node is smaller than the Z-axis coordinate of the destination address of the unicast data packet:
    if yes, go to step 3.4.1a-step 3.4.1c:
    step 3.4.1a, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.1b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1b;
    step 3.4.1b, judging whether the current transmission node has congestion to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.1c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.1c;
    step 3.4.1c, judging whether the current transmission node has congestion to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
    otherwise, step 3.4.2a-step 3.4.2c is performed:
    step 3.4.2a, judging whether congestion exists between the current transmission node and the connected node in the X-axis coordinate direction of the destination address of the unicast data packet or not: if yes, directly executing the step 3.4.2b; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the X-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2b;
    step 3.4.2b, judging whether congestion exists between the current transmission node and the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.4.2c; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Y-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.4.2c;
    step 3.4.2c, judging whether congestion exists between the current transmission node and the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet: if yes, directly executing the step 3.3; otherwise, transmitting the unicast data packet from the current transmission node to the connected node in the Z-axis coordinate direction of the destination address of the unicast data packet, updating the current transmission node, and executing the step 3.3;
    and step 3.5, repeating the steps 3.1-3.4 until the test of all heterogeneous IP cores to be tested in the heterogeneous core set is completed.
CN202110474193.4A 2021-04-29 2021-04-29 Parallel test method in 3D NoC test planning Active CN113203940B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110474193.4A CN113203940B (en) 2021-04-29 2021-04-29 Parallel test method in 3D NoC test planning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110474193.4A CN113203940B (en) 2021-04-29 2021-04-29 Parallel test method in 3D NoC test planning

Publications (2)

Publication Number Publication Date
CN113203940A CN113203940A (en) 2021-08-03
CN113203940B true CN113203940B (en) 2023-06-20

Family

ID=77027752

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110474193.4A Active CN113203940B (en) 2021-04-29 2021-04-29 Parallel test method in 3D NoC test planning

Country Status (1)

Country Link
CN (1) CN113203940B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745395B (en) * 2022-04-07 2023-12-26 深圳大学 P2P broadcast super group forwarding method, device, equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721319B1 (en) * 1999-07-05 2004-04-13 Oki Electric Industry Co., Ltd. Network system
CN101511009A (en) * 2009-03-20 2009-08-19 东南大学 Transmission method for multipath concurrence network television video stream based on internet
US7685487B1 (en) * 2005-03-22 2010-03-23 Advanced Micro Devices, Inc. Simultaneous core testing in multi-core integrated circuits
CN101738580A (en) * 2008-11-19 2010-06-16 中国科学院微电子研究所 Homogenous multicore processor-oriented testable design method
WO2012088930A1 (en) * 2010-12-31 2012-07-05 华为技术有限公司 Triggering operation method, and method, device and system for multi-core grouping debugging
CN103595627A (en) * 2013-11-28 2014-02-19 合肥工业大学 NoC router based on multicast dimension order routing algorithm and routing algorithm thereof
US9404969B1 (en) * 2013-11-01 2016-08-02 Cadence Design Systems, Inc. Method and apparatus for efficient hierarchical chip testing and diagnostics with support for partially bad dies
CN106680688A (en) * 2015-11-11 2017-05-17 飞思卡尔半导体公司 Testing multi-core integrated circuit by using parallel scanning test data input and output

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7475309B2 (en) * 2005-06-30 2009-01-06 Intel Corporation Parallel test mode for multi-core processors
WO2012150970A1 (en) * 2011-01-17 2012-11-08 Mentor Graphics Corporation Test scheduling with pattern-independent test access mechanism
US8694276B2 (en) * 2011-01-20 2014-04-08 Texas Instruments Incorporated Built-in self-test methods, circuits and apparatus for concurrent test of RF modules with a dynamically configurable test structure

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6721319B1 (en) * 1999-07-05 2004-04-13 Oki Electric Industry Co., Ltd. Network system
US7685487B1 (en) * 2005-03-22 2010-03-23 Advanced Micro Devices, Inc. Simultaneous core testing in multi-core integrated circuits
CN101738580A (en) * 2008-11-19 2010-06-16 中国科学院微电子研究所 Homogenous multicore processor-oriented testable design method
CN101511009A (en) * 2009-03-20 2009-08-19 东南大学 Transmission method for multipath concurrence network television video stream based on internet
WO2012088930A1 (en) * 2010-12-31 2012-07-05 华为技术有限公司 Triggering operation method, and method, device and system for multi-core grouping debugging
US9404969B1 (en) * 2013-11-01 2016-08-02 Cadence Design Systems, Inc. Method and apparatus for efficient hierarchical chip testing and diagnostics with support for partially bad dies
CN103595627A (en) * 2013-11-28 2014-02-19 合肥工业大学 NoC router based on multicast dimension order routing algorithm and routing algorithm thereof
CN106680688A (en) * 2015-11-11 2017-05-17 飞思卡尔半导体公司 Testing multi-core integrated circuit by using parallel scanning test data input and output

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Application Specific Routing Algorithms for Networks on Chip;Maurizio Palesi 等;Institute of Electrical and Electronics Engineers;第20卷(第3期);第316-330页 *
CPU-GPU异构体系结构片上网络动态路由缓冲区分配策略研究;常泽清;《中国硕士论文全文数据库-信息科技辑》;全文 *
Hybridizing grey wolf optimization with differential evolution for global optimization and test scheduling for 3D stacked SoC;Chuanpei Xu 等;Institute of Electrical and Electronics Engineers;第26卷(第2期);第317-328页 *
基于带分复用和多时钟的3D NoC测试规划路由设计;许川佩 等;《微电子学与计算机》;第35卷(第12期);第44-49页及第54页 *

Also Published As

Publication number Publication date
CN113203940A (en) 2021-08-03

Similar Documents

Publication Publication Date Title
US10348563B2 (en) System-on-chip (SoC) optimization through transformation and generation of a network-on-chip (NoC) topology
CN105450555B (en) A kind of method for building up of network-on-a-chip and network-on-chip communication link
US10476697B2 (en) Network-on-chip, data transmission method, and first switching node
CN101808032B (en) Static XY routing algorithm-oriented two-dimensional grid NoC router optimization design method
US20140115218A1 (en) ASYMMETRIC MESH NoC TOPOLOGIES
US10218581B2 (en) Generation of network-on-chip layout based on user specified topological constraints
CN106254254B (en) Mesh topology structure-based network-on-chip communication method
CN103248566B (en) A kind of fault-tolerance approach and structure of stopping model based on mistake being applied to network-on-chip
CN102685017A (en) On-chip network router based on field programmable gate array (FPGA)
CN103580890A (en) Reconfigurable on-chip network structure and configuration method thereof
CN102437953B (en) Low-power-consumption adaptive routing method in network on chip
CN114844827B (en) Shared storage-based spanning tree routing hardware architecture and method for network-on-chip
CN102546417B (en) Scheduling method of network-on-chip router based on network information
CN113203940B (en) Parallel test method in 3D NoC test planning
CN115460128A (en) Network-on-chip simulation system for multi-core particle combined chip
CN107094116B (en) Direct network routing method and system containing cross-dimension link
CN101488923A (en) Implementing method for network-on-chip data packet encoding optimization
CN105049362A (en) Topological structure of network on two-dimension surrounding grid sheet and routing method
CN102880762A (en) Multi-core processor platform based on Noc (Network operating Center) framework and design method thereof
US20180198682A1 (en) Strategies for NoC Construction Using Machine Learning
Somisetty et al. Congestion aware negative first routing with fair arbitration for network on chip
CN109962867A (en) A kind of network-on-chip branch defines duty mapping method
CN115499271B (en) Hybrid network topology structure and routing method thereof
CN116821044B (en) Processing system, access method and computer readable storage medium
US11762560B2 (en) Optimizing NOC performance using crossbars

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20210803

Assignee: Guilin Zhanzhi Measurement and Control Technology Co.,Ltd.

Assignor: GUILIN University OF ELECTRONIC TECHNOLOGY

Contract record no.: X2023980045853

Denomination of invention: Parallel testing methods in 3D NoC testing planning

Granted publication date: 20230620

License type: Common License

Record date: 20231106

EE01 Entry into force of recordation of patent licensing contract