CN104202253B - Network-on-chip jamming control method based on dynamic routing table - Google Patents

Network-on-chip jamming control method based on dynamic routing table Download PDF

Info

Publication number
CN104202253B
CN104202253B CN201410384166.8A CN201410384166A CN104202253B CN 104202253 B CN104202253 B CN 104202253B CN 201410384166 A CN201410384166 A CN 201410384166A CN 104202253 B CN104202253 B CN 104202253B
Authority
CN
China
Prior art keywords
node
routing
routing node
network
adjacent
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.)
Expired - Fee Related
Application number
CN201410384166.8A
Other languages
Chinese (zh)
Other versions
CN104202253A (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.)
Changchun University of Science and Technology
Original Assignee
Changchun University of Science and 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 Changchun University of Science and Technology filed Critical Changchun University of Science and Technology
Priority to CN201410384166.8A priority Critical patent/CN104202253B/en
Publication of CN104202253A publication Critical patent/CN104202253A/en
Application granted granted Critical
Publication of CN104202253B publication Critical patent/CN104202253B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

Network-on-chip jamming control method based on dynamic routing table belongs to network-on-chip jamming control method field, including defining the self refresh rule of dynamic routing table, the startup of network-on-chip and initialization, solves and itself dynamic routing table, determines non-faulting adjacent node and pay the steps such as data.This method uses dynamic routing table in network-on-chip first, the dynamic routing table can dynamically update according to the present situations of other nodes and the current optimal transmitting path of decision-making itself and can preferably embody global consciousness, the minimum optimal path of the global congestion degree of other any destination nodes is always preserved in each of which dynamic routing table, it is easy to quickly read and use, significantly reduces the repetitive operation time.Additionally, this method can also reduce between each routing node frequently read-write operation, the time that data amount of calculation simultaneously saves computing occupancy is cut down, so as to alleviate and limit the generation of network congestion, improve the data-handling capacity and handling capacity of whole network-on-chip.

Description

Network-on-chip jamming control method based on dynamic routing table
Technical field
The invention belongs to network-on-chip jamming control method field, and in particular to a kind of piece online based on dynamic routing table Network jamming control method.
Background technology
Network-on-chip (network-on-chip, Noc) is logical in original on-chip system (system-on-chip, Soc) Developed in letter mode, be a kind of brand-new chip-on communication mechanism.Original on-chip system is the mode based on bus transfer, It is difficult to meet present network transmission demand, therefore is referred from computer network, generates network-on-chip.Based on network-on-chip (NoC) Global Asynchronous that system can better adapt to be used in following complexity multinuclear on-chip system (SoC) design are local same The clock mechanisms of step, are significantly better than the on-chip system of former bus mode in performance.2D mesh topology network-on-chips are by m rows The two-dimentional route matrix that the routing node of × n row is collectively formed, is have one of universal representational network-on-chip citation form.
However, the system based on network-on-chip (NoC) can equally be perplexed by network congestion, based on basic X-Y transmission Network congestion situation caused by rule has been the bottleneck of network-on-chip development, if can not controlling network congestion well, Network throughput drastically reduces the increase with network congestion.
At present, the Main Means of 2D mesh topology network-on-chip handling capacities and controlling network congestion condition are improved with congestion Avoid based on routing algorithm, these existing Congestion Avoidance routing algorithms will generally carry out adjacent in real time before each decision-making The congestion condition inquiry of node, calculates and filters out the optimal neighbor node of network congestion degree afterwards, further according to result of calculation choosing Select next-hop and pay address, so as to complete routing procedure.
But scheduling and decision mode of foregoing these the existing routing algorithms seldom using routing table, but mostly just root The direction of transmission is determined according to the cache occupation amount of oneself, its shortcoming is mainly reflected in:Each message is required for inquiry before paying The degree of Congestion of adjacent node, which produces inquiry time delay.After inquiring adjacent node degree of Congestion, calculated by Route Selection again Method so generates calculation delay, and increase routing node itself again according to the congestion angle value comparison operation in different paths The calculating pressure of processor, also increases the possibility that congestion occurs in the current routing node under computing state.Inquiry To degree of Congestion be adjacent node region local congestion degree, therefore its decision process cannot embody global consciousness.According to area Route results produced by the degree of Congestion of domain can not well feed back global situation, therefore, it is solved according to area jamming degree Local optimum route result be not necessarily global Optimization route result.
The content of the invention
In order to solve existing Congestion Avoidance routing algorithm without the dynamic routing table that can voluntarily update, it is generally every The congestion condition inquiry of real-time adjacent node will be carried out before decision-making and sieve is compared according to the congestion angle value in different paths Computing is selected, if existing Congestion Avoidance routing algorithm is directly applied into network-on-chip will cause the data processing of each routing node The accumulative increase of amount, excessively frequently, the execution cycle of each node of simultaneous is gradually lengthened the interaction read-write between node, congestion Risk still can synchronously add up and finally break out.Additionally, existing Congestion Avoidance routing algorithm is according to required by its area jamming degree The technical problem of the not global Optimization route result of the local optimum route result of solution, the present invention provides a kind of based on dynamic road By the network-on-chip jamming control method of table.
The technical solution adopted for solving the technical problem of the present invention is as follows:
Network-on-chip jamming control method based on dynamic routing table, it is characterised in that:The method comprises the following steps:
Step one:The basic X-Y transmission rules of definition:
It is each on the rectangular array column be made up of m × n routing node on the network-on-chip of 2D mesh topologys Individual routing node all has the unique coordinate of oneself, if the coordinate value (x, y) of any one routing node A, another is any The coordinate value (p, q) of routing node K, then when being originated from node A (x, y) and going to node K (p, q), it follows following basis Rule:
When the abscissa and ordinate of node A (x, y) and K (p, q) are differed, A (x, y) always ignores on ordinate Difference, and prioritizing selection can make the adjacent node on that transverse axis that the absolute value of abscissa difference reduces as next-hop When payment address;
When the abscissa of node A (x, y) and K (p, q) is identical but ordinate is differed, A (x, y) always prioritizing selection energy Payment address when making the adjacent node on that longitudinal axis that the absolute value of ordinate difference reduces as next-hop;
Step 2:2D mesh topology network-on-chips to m × n define the self refresh rule of dynamic routing table, its specific bag Include following sub-step:
Step 2.1:The self refresh variable of dynamic routing table, including following sub-step are defined respectively:
Step 2.1.1:Define the content of dynamic routing table:
Horizontal every a line entry includes four row columns in dynamic routing table, and the content that each row column is recorded is respectively Average degree of Congestion Acd, destination address, next hop address and total hop count T1;Every a line entry in dynamic routing table with piece on A routing node in network is uniquely corresponded to, and the initial value of four row column contents in the row entry is sky;
If current transmission task is intended to that data are reached into another arbitrary target from any one routing node A in network-on-chip Routing node K, then be referred to as data source nodes, and target routing node K is referred to as into destination node by routing node A;Positioned at route Node A peripheries and other routing nodes being directly connected with routing node A are calculated separately as the adjacent node X of routing node A(A1)、 Adjacent node X(A2)... adjacent node X(An)(n≤4, n is natural number);
Define destination address:Coordinate address (K) of the target routing node K in network-on-chip is institute in dynamic routing table The destination address to be recorded;
Define next hop address:
In multiple adjacent nodes of routing node A, routing node A prepare to pay data that be determined Adjacent node X(An)Its coordinate address (X in network-on-chipAn) it is the next hop address to be recorded in dynamic routing table;
Define total hop count T1:Actual leapfrog number needed for going to target routing node K from routing node A is counted as T1
Define average degree of Congestion:
The average degree of Congestion Acd of target routing node K is gone in definition from routing node A(A-K)Expression formula be:
In formula (2), routing node A current full state cache numerical value is counted as b(A), it itself can be tried to achieve by routing node A; Total caching numerical value of routing node A is counted as c(A), it itself can be tried to achieve by routing node A;
The increasing of routing node A walks total hop count T2=T1+1;
The adjacent node X of routing node A(An)Current described average degree of Congestion numerical value is counted as Acd(XAn), it can be from neighbour Nearly nodes X(An)Obtained in the route updating packet sent;
Step 2.1.2:Define route updating packet:
The route updating packet of its own, the horizontal every a line entry of route updating packet are defined for each routing node Include three row columns, the current average degree of Congestion Acd of the content that each row column is recorded respectively routing node, destination address (K) and the total hop count T of step is increased2
Each route updating packet is uniquely corresponding with a routing node A described in step 2.1.1, routing node A Three item datas that the content of the dynamic routing table according to its own route in message A to it are updated;
Step 2.1.3:Define the maximum distance L that network-on-chip can be transmitted:
If the rectangular array being made up of m × n routing node of the network-on-chip of 2D mesh topologys, then fixed
Adopted L=2 × (m+n) ... (3);
Step 2.1.4:Define routing update request clock:
For each routing node in network-on-chip defines an independent built-in self refresh clock timer Timer;
Step 2.1.5:For each routing node in network-on-chip defines four this nodes to its own neighbouring section Point sends the request number of times counter Count for updating request, four of any one routing node A as described in step 2.1.1 Request number of times counter Count(An)(n≤4, n is natural number) respectively with four adjacent node X of routing node A(An)(n≤ 4, n is natural number) correspond;
Step 2.1.6:Dynamic routing table described in step 2.1.1 is initialized in a static manner:
Respectively by each adjacent node X of any one routing node A described in step 2.1.1(An)(n≤4, n is certainly So count) a routing node A is regarded as starting point and with the adjacent node X of the determination(An)It is the independent transmission paths of terminal, So as to create the new adjacent node route entry of four rows in the dynamic routing table of the routing node A;It is described neighbouring per a line Node-routing entry with an adjacent node X(An)(n≤4, n is natural number) is uniquely corresponding;
To the routing node A in a static manner to foregoing four rows adjacent node route entry in its own dynamic routing table Initialized respectively, by the adjacent node X with unique corresponding that determination of a line adjacent node route entry(An)'s Network coordinate address (XAn) (n≤4, n is natural number) be respectively filled in next-hop ground in the adjacent node route entry of new establishment Location row column and destination address row column;Total hop count in a line adjacent node route entry is set to 1, and should Average degree of Congestion in row adjacent node route entry is set to 0;
Step 2.2:The average degree of Congestion for defining any one routing node A as described in step 2.1.1 updates rule, its Specifically include following sub-step:
Step 2.2.1:Obtain each adjacent node X as described in step 2.1.1 respectively as routing node A(An)(n≤ 4, n by natural number) route updating packet each sent;
Step 2.2.2:Routing node A judges respectively, each adjacent node X as described in step 2.2.1(An)Route In renewal message, if include by way of adjacent node X(An)And reach target routing node K as described in step 2.1.1 A line entry or multirow entry;If not including, routing node A is directly by the adjacent node X(An)In route updating packet A line or multirow entry increase newly and add the routing node A dynamic routing tables of itself, and perform step 2.3;If comprising described A line entry or multirow entry, then directly perform step 2.2.3;
Step 2.2.3:Routing node A reads the current total caching c of routing node A from the processor of itself(A)With full shape State caches b(A)Value;
Step 2.2.4:Obtained respectively using the adjacent node as data source nodes simultaneously from the adjacent node message When going to identical destination node K, this is adjacent to routing node X(An)What is recorded is current:Average degree of Congestion numerical value Acd(XAn-K)、 Destination address (KXAn) and increase the total hop count T of step2(XAn)
Step 2.2.5:By routing node A by the full state cache value b of itself(A), total cache size c(A), total hop count T1, increase Walk total hop count T2And the adjacent node X sent by route updating packet(An)Average degree of Congestion numerical value Acd(XAn-K)Generation respectively In entering formula (2), and calculate the new average degree of Congestion Acd for trying to achieve routing node A(A-K) it is new
Step 2.2.6:Judge Acd(A-K) it is newWhether Acd is more than or equal to(A-K) it is former;If so, performing step 2.2.8;If it is not, holding Row step 2.2.7;
Step 2.2.7:Routing node A carries out self refresh to the dynamic routing table of itself, specifically includes:
Keep destination address (K) constant;
Total hop count T is walked with the increasing of routing node A2Currency substitute total hop count T1Currency;
The average degree of Congestion Acd tried to achieve with step 2.2.5(A-K) it is newReplace script institute in the dynamic routing table of routing node A The average degree of Congestion Acd for recording(A-K) it is former;Then step 2.3 is performed;
Step 2.2.8:Routing node A does not update the dynamic routing table of itself, directly performs step 2.3;
Step 2.3:Any one routing node A as described in step 2.1.1 judges its own as described in step 2.1.4 Whether the present clock period of self refresh clock timer Timer is over, if routing node A present clock periods of itself Not yet terminate then further to perform step 2.4, step 2.5 is performed if present clock period is over;
Step 2.4:Routing update request rule is performed, it specifically includes following sub-step:
Step 2.4.1:Any one routing node A as described in step 2.1.1 judges, as described in step 2.1.4 oneself Within one current clock cycle of refresh clock timer, whether routing node A have received adjacent node X respectively(A1), it is adjacent Nearly nodes X(A2), adjacent node X (A3) and adjacent node X(A4)Amount to four adjacent node X(An)(n≤4, n is natural number) The whole each sent amounts to four route updating packets;If failing to receive all four route updating packets, step is performed Rapid 2.4.2:If having received all four route updating packets, step 2.4.8 is performed;
Step 2.4.2:Routing node A is to the adjacent node X for failing to send in time route updating packet(An)Send route more New request;
Step 2.4.3:Routing node A is transferred and is failed the adjacent node X for sending route updating packet in time(An)Corresponding Request number of times counter Count(An), and its current count value is increased by 1;
Step 2.4.4:Routing node A is respectively to each the request number of times counter as described in step 2.1.5 Count(An)Judged, step 2.4.5 is performed if its current count value is not more than 3, if its current count value is more than 3 Then perform step 2.4.6;
Step 2.4.5:Routing node A continues waiting for failing as described in step 2.4.2 and sends route updating packet in time Adjacent node X(An)Route updating packet is sent to routing node A, until routing node A is re-executed after receiving the message Step 2.4.1;
Step 2.4.6:Routing node A will fail to send road in time in the dynamic routing table of itself described in step 2.4.2 By the adjacent node X of renewal message(An)It is defined as malfunctioning node, and terminates along the transmission task of the malfunctioning node;
Step 2.4.7:Routing node A is searched and malfunctioning node described in step 2.4.6 from the dynamic routing table of its own Corresponding every a line entry, and by the every a line comprising foregoing malfunctioning node information from dynamic routing table Delete Entire Row, With so that total data is no longer participate in the computing of any subsequent step in this action state routing table;
Step 2.4.8:Reset the self refresh clock timer as described in step 2.1.4 of itself in advance as routing node A Timer;And by remaining whole non-faulting adjacent node X(An)Corresponding request number of times counter Count(An)It is synchronous to reset to 0;
Step 2.5:Self refresh clock timer Timer described in the step 2.1.4 current clock cycle voluntarily terminates weight Put, if or timer Timer be reset during as described in step 2.4.8, or, it is current such as step 2.1.1 Described any one routing node A have received its adjacent node X as described in step 2.4.2(An)The routing update for sending Request, when any one generation in above-mentioned three kinds of situations, routing node A is a by its current dynamic routing table generation Route updating packet as described in step 2.1.2;
Step 2.6:Any one routing node A as described in step 2.1.1 generates it according to mode described in step 2.5 Route updating packet synchronized transmission to routing node A as described in step 2.4.8 whole non-faulting adjacent node X(An)
Step 3:For each routing node of network-on-chip sets one dedicated in storage dynamic routing table The self refresh variable of the dynamic routing table described in step 2.1 is simultaneously stored in the dynamic of each routing node respectively for portion's memory space In routing table memory space;
Step 4:The self refresh rule of dynamic routing table described in step 2.2 to step 2.6 is respectively stored in step 3 institute In each routing node processor memory of itself stated;
Step 5:The startup and initialization of network-on-chip:
When network-on-chip starts and comes into operation, network-on-chip each routing node by synchronous initiation, after initialization Each routing node tried to achieve and stored the maximum distance L values that a unified network-on-chip can be transmitted, each route section The built-in self refresh clock timer Timer of point does not start timing, also, the request number of times counting as described in step 2.4.3 Device Count(An)0 is set to, the every numerical value in the route updating packet of each routing node is sky;
Step 6:When network-on-chip starts first data to be reached into another arbitrary target road from any one routing node A By node K transmission task when, the whole nodes in network-on-chip are synchronously activated, during the built-in self refresh of each routing node The time value that clock timer Timer starts as set by step 2.1.4 starts countdown;
Step 7:By current data source node, i.e.,:Routing node A, the processor of its own be first carried out step 2.2 to The self refresh rule of dynamic routing table described in step 2.6, and try to achieve itself current dynamic routing table;
Step 8:Routing node A judgements, if the non-faulting adjacent node X of a certain determination of itself(An)(n≤4, n It is natural number) as next hop address, if then being originated by way of non-faulting adjacent node X from routing node A(An)And go to target During node K, described total hop count T in the current dynamic routing tables of routing node A1Whether more than passing described in step 5 Defeated maximum distance L values, if total hop count T1More than the maximum distance L that can be transmitted, then step 9 is performed, otherwise perform step 10 One;
Step 9:Routing node A is in the dynamic routing table of itself by the current non-faulting adjacent node described in step 8 X(An)It is defined as the unreachable node in path, and terminates along the transmission task of the malfunctioning node;Meanwhile, routing node A from its own Dynamic routing table in search a line entry corresponding with the unreachable node in the path, and by the row entry Delete Entire Row so that Obtain the computing that total data in this action state routing table is no longer participate in any subsequent step;
Step 10:The current transmission task of the unreachable node in path as described in routing node A terminations along step 9 is laid equal stress on It is new to perform step 8;
Step 11:Retrieved from the dynamic routing table of itself by routing node A, in the dynamic routing table of its own whether There is the non-faulting adjacent node X that go to destination node K and will determine described in step 8(An)(n≤4, n is natural number) is made It is a line entry of next hop address, if in the presence of the row entry, performing step 12, otherwise performs step 13;
Step 12:As routing node A directly by step 10 described in that a line entry corresponding to the neighbouring section of non-faulting Point X(An)It is defined as next adjacent node X that this secondary data will pay(An), and it is next to send current data packet to this Adjacent node, then performs step 14;
Step 13:X-Y is transferred data to as routing node A according to the X-Y transmission rules on basis described in step one to advise Then the next adjacent node on identified path, then performs step 14;
Step 14:Next adjacent node as described in step 12 or step 13, it is being connected to current data After transmission task, start the data source nodes that itself will be regarded as described in step 7, its as brand-new routing node A ' start by According to the process that step 6 to step 12 is performed with initial routing node A exact same ways.
The beneficial effects of the invention are as follows:This network-on-chip jamming control method uses dynamic routing in network-on-chip first Table, can dynamically update the current optimal transmitting path with decision-making itself according to the present situation of other nodes.What it was used Dynamic routing table can preferably embody global consciousness, dynamic renewal and maintenance by each node to itself routing table, Make the interior current best path scheme for always preserving other any destination nodes of each dynamic routing table, so as to avoid working as Preceding relative congestion routing node, alleviates the Congestion Level SPCC of its network-on-chip, is finally reached the effect of congestion control.This method it is dynamic Every a line entry of state routing table is ultimately formed and the corresponding current global congestion for recording any current task destination node Minimum optimal path is spent, is easy to quickly read and use, significantly reduce the repetitive operation time.Using every fixing 30 seconds Cycle updates routing table and non-frequently interacts read-write operation so that both maintain dynamic routing table between any adjacent node Renewal in time, greatly reduce data amount of calculation again, shorten the time that computing takes, alleviate to a great extent and limit The generation of network congestion, improves the data-handling capacity and handling capacity of whole network-on-chip.
Brief description of the drawings
Fig. 1 is the general flow chart of network-on-chip jamming control method of the present invention based on dynamic routing table;
Fig. 2 is the schematic diagram of the first transmission task of network-on-chip of the present invention;
Fig. 3 is the schematic diagram of dynamic routing table of the present invention;
Fig. 4 is the schematic diagram of route updating packet of the present invention:
Fig. 5 is itself moving for the routing node A after the present invention is initialized respectively to four row adjacent node route entrys State routing table schematic diagram.
Specific embodiment
The present invention is described in further details below in conjunction with the accompanying drawings.
As shown in Figures 1 to 5, network-on-chip jamming control method of the present invention based on dynamic routing table, including following step Suddenly:
Step one:The basic X-Y transmission rules of definition:
It is each on the rectangular array column be made up of m × n routing node on the network-on-chip of 2D mesh topologys Individual routing node all has the unique coordinate of oneself, if the coordinate value (x, y) of any one routing node A, another is any The coordinate value (p, q) of routing node K, then when being originated from node A (x, y) and going to node K (p, q), it follows following basis Rule:
When the abscissa and ordinate of node A (x, y) and K (p, q) are differed, A (x, y) always ignores on ordinate Difference, and prioritizing selection can make the adjacent node on that transverse axis that the absolute value of abscissa difference reduces as next-hop When payment address.
When the abscissa of node A (x, y) and K (p, q) is identical but ordinate is differed, A (x, y) always prioritizing selection energy Payment address when making the adjacent node on that longitudinal axis that the absolute value of ordinate difference reduces as next-hop.
Step 2:2D mesh topology network-on-chips to m × n define the self refresh rule of dynamic routing table, its specific bag Include following sub-step:
Step 2.1:The self refresh variable of dynamic routing table, including following sub-step are defined respectively:
Step 2.1.1:Define the content of dynamic routing table:
Horizontal every a line entry includes four row columns in dynamic routing table, and the content that each row column is recorded is respectively Average degree of Congestion Acd, destination address, next hop address and total hop count T1;Every a line entry in dynamic routing table with piece on A routing node in network is uniquely corresponded to, and the initial value of four row column contents in the row entry is sky.
If current transmission task is intended to that data are reached into another arbitrary target from any one routing node A in network-on-chip Routing node K, then be referred to as data source nodes, and target routing node K is referred to as into destination node by routing node A;Positioned at route Node A peripheries and other routing nodes being directly connected with routing node A are calculated separately as the adjacent node X of routing node A(A1)、 Adjacent node X(A2)... adjacent node X(An)(n≤4, n is natural number).
Define destination address:Coordinate address (K) of the target routing node K in network-on-chip is institute in dynamic routing table The destination address to be recorded.
Define next hop address:
In multiple adjacent nodes of routing node A, routing node A prepare to pay data that be determined Adjacent node X(An)Its coordinate address (X in network-on-chipAn) it is the next hop address to be recorded in dynamic routing table.
Define total hop count T1:Actual leapfrog number needed for going to target routing node K from routing node A is counted as T1
Define average degree of Congestion:
The average degree of Congestion Acd of target routing node K is gone in definition from routing node A(A-K)Expression formula be:
In formula (2), routing node A current full state cache numerical value is counted as b(A), it itself can be tried to achieve by routing node A; Total caching numerical value of routing node A is counted as c(A), it itself can be tried to achieve by routing node A;
The increasing of routing node A walks total hop count T2=T1+1。
The adjacent node X of routing node A(An)Current described average degree of Congestion numerical value is counted as Acd(XAn), it can be from neighbour Nearly nodes X(An)Obtained in the route updating packet sent.
Step 2.1.2:Define route updating packet:
The route updating packet of its own, the horizontal every a line entry of route updating packet are defined for each routing node Include three row columns, the current average degree of Congestion Acd of the content that each row column is recorded respectively routing node, destination address (K) and the total hop count T of step is increased2
Each route updating packet is uniquely corresponding with a routing node A described in step 2.1.1, routing node A Three item datas that the content of the dynamic routing table according to its own route in message A to it are updated;
Step 2.1.3:Define the maximum distance L that network-on-chip can be transmitted:
If the rectangular array being made up of m × n routing node of the network-on-chip of 2D mesh topologys, then fixed
Adopted L=2 × (m+n) ... (3);
Step 2.1.4:Define routing update request clock:
For each routing node in network-on-chip defines an independent built-in self refresh clock timer Timer。
Step 2.1.5:For each routing node in network-on-chip defines four this nodes to its own neighbouring section Point sends the request number of times counter Count for updating request, four of any one routing node A as described in step 2.1.1 Request number of times counter Count(An)(n≤4, n is natural number) respectively with four adjacent node X of routing node A(An)(n≤ 4, n is natural number) correspond.
Step 2.1.6:Dynamic routing table described in step 2.1.1 is initialized in a static manner:
Respectively by each adjacent node X of any one routing node A described in step 2.1.1(An)(n≤4, n is certainly So count) a routing node A is regarded as starting point and with the adjacent node X of the determination(An)It is the independent transmission paths of terminal, So as to create the new adjacent node route entry of four rows in the dynamic routing table of the routing node A;It is described neighbouring per a line Node-routing entry with an adjacent node X(An)(n≤4, n is natural number) is uniquely corresponding.
To the routing node A in a static manner to foregoing four rows adjacent node route entry in its own dynamic routing table Initialized respectively, by the adjacent node X with unique corresponding that determination of a line adjacent node route entry(An)'s Network coordinate address (XAn) (n≤4, n is natural number) be respectively filled in next-hop ground in the adjacent node route entry of new establishment Location row column and destination address row column;Total hop count in a line adjacent node route entry is set to 1, and should Average degree of Congestion in row adjacent node route entry is set to 0.
Step 2.2:The average degree of Congestion for defining any one routing node A as described in step 2.1.1 updates rule, its Specifically include following sub-step.
Step 2.2.1:Obtain each adjacent node X as described in step 2.1.1 respectively as routing node A(An)(n≤ 4, n by natural number) route updating packet each sent.
Step 2.2.2:Routing node A judges respectively, each adjacent node X as described in step 2.2.1(An)Route In renewal message, if include by way of adjacent node X(An)And reach target routing node K as described in step 2.1.1 A line entry or multirow entry;If not including, routing node A is directly by the adjacent node X(An)In route updating packet A line or multirow entry increase newly and add the routing node A dynamic routing tables of itself, and perform step 2.3;If comprising described A line entry or multirow entry, then directly perform step 2.2.3.
Step 2.2.3:Routing node A reads the current total caching c of routing node A from the processor of itself(A)With full shape State caches b(A)Value.
Step 2.2.4:Obtained respectively using the adjacent node as data source nodes simultaneously from the adjacent node message When going to identical destination node K, this is adjacent to routing node X(An)What is recorded is current:Average degree of Congestion numerical value Acd(XAn-K)、 Destination address (KXAn) and increase the total hop count T of step2(XAn)
Step 2.2.5:By routing node A by the full state cache value b of itself(A), total cache size c(A), total hop count T1, increase Walk total hop count T2And the adjacent node X sent by route updating packet(An)Average degree of Congestion numerical value Acd(XAn-K)Generation respectively In entering formula (2), and calculate the new average degree of Congestion Acd for trying to achieve routing node A(A-K) it is new
Step 2.2.6:Judge Acd(A-K) it is newWhether Acd is more than or equal to(A-K) it is former;If so, performing step 2.2.8;If it is not, holding Row step 2.2.7;
Step 2.2.7:Routing node A carries out self refresh to the dynamic routing table of itself, specifically includes:
Keep destination address (K) constant;
Total hop count T is walked with the increasing of routing node A2Currency substitute total hop count T1Currency.
The average degree of Congestion Acd tried to achieve with step 2.2.5(A-K) it is newReplace script institute in the dynamic routing table of routing node A The average degree of Congestion Acd for recording(A-K) it is former;Then step 2.3 is performed.
Step 2.2.8:Routing node A does not update the dynamic routing table of itself, directly performs step 2.3;
Step 2.3:Any one routing node A as described in step 2.1.1 judges its own as described in step 2.1.4 Whether the present clock period of self refresh clock timer Timer is over, if routing node A present clock periods of itself Not yet terminate then further to perform step 2.4, step 2.5 is performed if present clock period is over.
Step 2.4:Routing update request rule is performed, it specifically includes following sub-step:
Step 2.4.1:Any one routing node A as described in step 2.1.1 judges, as described in step 2.1.4 oneself Within one current clock cycle of refresh clock timer, whether routing node A have received adjacent node X respectively(A1), it is adjacent Nearly nodes X(A2), adjacent node X (A3) and adjacent node X(A4)Amount to four adjacent node X(An)(n≤4, n is natural number) The whole each sent amounts to four route updating packets;If failing to receive all four route updating packets, step is performed Rapid 2.4.2:If having received all four route updating packets, step 2.4.8 is performed.
Step 2.4.2:Routing node A is to the adjacent node X for failing to send in time route updating packet(An)Send route more New request.
Step 2.4.3:Routing node A is transferred and is failed the adjacent node X for sending route updating packet in time(An)Corresponding Request number of times counter Count(An), and its current count value is increased by 1.
Step 2.4.4:Routing node A is respectively to each the request number of times counter as described in step 2.1.5 Count(An)Judged, step 2.4.5 is performed if its current count value is not more than 3, if its current count value is more than 3 Then perform step 2.4.6.
Step 2.4.5:Routing node A continues waiting for failing as described in step 2.4.2 and sends route updating packet in time Adjacent node X(An)To routing node A send route updating packet, until routing node A within the current clock cycle again Step 2.4.1 is re-executed after receiving the message.
Step 2.4.6:Routing node A will fail to send road in time in the dynamic routing table of itself described in step 2.4.2 By the adjacent node X of renewal message(An)It is defined as malfunctioning node, and terminates along the transmission task of the malfunctioning node.
Step 2.4.7:Routing node A is searched and malfunctioning node described in step 2.4.6 from the dynamic routing table of its own Corresponding every a line entry, and by the every a line comprising foregoing malfunctioning node information from dynamic routing table Delete Entire Row, With so that total data is no longer participate in the computing of any subsequent step in this action state routing table.Due to foregoing malfunctioning node meeting Send route updating packet without normal direction other nodes because of the transient congestion of itself, if therefore current failure node in subsequent process Middle congestion relief or failture evacuation, routing node A will again receive the route updating packet that the reply malfunctioning node is sent, The route message information of the reply malfunctioning node can again be increased newly and insert the routing table of itself by routing node A again when the time comes It is interior.
Step 2.4.8:Reset the self refresh clock timer as described in step 2.1.4 of itself in advance as routing node A Timer;And by remaining whole non-faulting adjacent node X(An)Corresponding request number of times counter Count(An)It is synchronous to reset to 0。
Step 2.5:Self refresh clock timer Timer described in the step 2.1.4 current clock cycle voluntarily terminates weight Put, if or timer Timer be reset during as described in step 2.4.8, or, it is current such as step 2.1.1 Described any one routing node A have received its adjacent node X as described in step 2.4.2(An)The routing update for sending Request, when any one generation in above-mentioned three kinds of situations, routing node A is a by its current dynamic routing table generation Route updating packet as described in step 2.1.2.
Step 2.6:Any one routing node A as described in step 2.1.1 generates it according to mode described in step 2.5 Route updating packet synchronized transmission to routing node A as described in step 2.4.8 whole non-faulting adjacent node X(An)
Step 3:For each routing node of network-on-chip sets one dedicated in storage dynamic routing table The self refresh variable of the dynamic routing table described in step 2.1 is simultaneously stored in the dynamic of each routing node respectively for portion's memory space In routing table memory space;
Step 4:The self refresh rule of dynamic routing table described in step 2.2 to step 2.6 is respectively stored in step 3 institute In each routing node processor memory of itself stated.
Step 5:The startup and initialization of network-on-chip:
When network-on-chip starts and comes into operation, network-on-chip each routing node by synchronous initiation, after initialization Each routing node tried to achieve and stored the maximum distance L values that a unified network-on-chip can be transmitted, each route section The built-in self refresh clock timer Timer of point does not start timing, also, the request number of times counting as described in step 2.4.3 Device Count(An)0 is set to, the every numerical value in the route updating packet of each routing node is sky;Each routing node Dynamic routing table state then after being initialized described in step 2.1.6.
Step 6:When network-on-chip starts first data to be reached into another arbitrary target road from any one routing node A By node K transmission task when, the whole nodes in network-on-chip are synchronously activated, during the built-in self refresh of each routing node The time value that clock timer Timer starts as set by step 2.1.4 starts countdown.
Step 7:By current data source node, i.e.,:Routing node A, the processor of its own be first carried out step 2.2 to The self refresh rule of dynamic routing table described in step 2.6, and try to achieve itself current dynamic routing table.
Step 8:Routing node A judgements, if the non-faulting adjacent node X of a certain determination of itself(An)(n≤4, n It is natural number) as next hop address, if then being originated by way of non-faulting adjacent node X from routing node A(An)And go to target During node K, described total hop count T in the current dynamic routing tables of routing node A1Whether more than passing described in step 5 Defeated maximum distance L values, if total hop count T1More than the maximum distance L that can be transmitted, then step 9 is performed, otherwise perform step 10 One.
Step 9:Routing node A is in the dynamic routing table of itself by the current non-faulting adjacent node described in step 8 X(An)It is defined as the unreachable node in path, and terminates along the transmission task of the malfunctioning node;Meanwhile, routing node A from its own Dynamic routing table in search a line entry corresponding with the unreachable node in the path, and by the row entry Delete Entire Row so that Obtain the computing that total data in this action state routing table is no longer participate in any subsequent step.
Step 10:The current transmission task of the unreachable node in path as described in routing node A terminations along step 9 is laid equal stress on It is new to perform step 8.
Step 11:Retrieved from the dynamic routing table of itself by routing node A, in the dynamic routing table of its own whether There is the non-faulting adjacent node X that go to destination node K and will determine described in step 8(An)(n≤4, n is natural number) is made It is a line entry of next hop address, if in the presence of the row entry, performing step 12, otherwise performs step 13.
Step 12:As routing node A directly by step 10 described in that a line entry corresponding to the neighbouring section of non-faulting Point X(An)It is defined as next adjacent node X that this secondary data will pay(An), and it is next to send current data packet to this Adjacent node, then performs step 14.
Step 13:X-Y is transferred data to as routing node A according to the X-Y transmission rules on basis described in step one to advise Then the next adjacent node on identified path, then performs step 14.
Step 14:Next adjacent node as described in step 12 or step 13, it is being connected to current data After transmission task, start the data source nodes that itself will be regarded as described in step 7, its as brand-new routing node A ' start by According to the process that step 6 to step 12 is performed with initial routing node A exact same ways.
During concrete application network-on-chip jamming control method based on dynamic routing table of the invention, by step 2.1.4 institutes The self refresh clock timer Timer for stating is set to 30 seconds.After network-on-chip initialization, whole nodes on network all in State after being initialized described in step 2.1.6, only maintains each neighbouring route of itself in their dynamic routing table Each node in information, also, network-on-chip is just synchronously activated after first transmission task starts, and is started according to respective Clock cycle to adjacent node send route updating packet.
Occur successively in network-on-chip along with more brand-new transmission tasks, the routing node in regional area starts There is different degrees of congestion, this will cause different nodes that the self refresh clock timing of itself is reset by different Congestion Level SPCCs Device Timer, finally causes that the self-refresh period of each node is separate without resynchronisation.Each routing node is appointed in transmission All play the part of the source node of transmission data and two roles of adjacent node of other nodes in business simultaneously.
It is dynamic road that routing table is applied to this method the congestion control field of network-on-chip, and the routing table for being used By table, the current optimal transmitting path with decision-making itself can be dynamically updated according to the present situation of other nodes, by each Dynamic renewal and maintenance of the individual node to itself routing table, make always to preserve other in each dynamic routing table any The current best path scheme of destination node, so as to avoid current relative congestion routing node, alleviates the congestion of its network-on-chip Degree, is finally reached the effect of congestion control.
Each row entry sum in each routing node dynamic routing table of itself in network-on-chip can be with new Destination address occurs and increases, and finally, occurs along with more brand-new transmission tasks are random successively in network-on-chip, each It is final in the dynamic routing table of individual routing node all to set up with from as data source nodes and with remaining any one node Used as the full routing table of destination node, the full routing table includes and other all nodes one-to-one corresponding in network-on-chip Multirow entry, due to the next hop address in each row entry both correspond to by current congestion degree minimum value screen after it is optimal Path, therefore it corresponds to the optimal road of the current global congestion degree minimum for recording the task object node per a line entry Footpath.
From formula (2), average degree of Congestion numerical value is counted as Acd(XAn)It is also the neighbouring section that destination node is gone to via other The average congestion angle value iterative calculation of point is tried to achieve, therefore, any one average degree of Congestion numerical value is counted as Acd(XAn)Inherently The current average congestion number of degrees optimal solution gone on destination node path is reflected, by Acd(XAn)Calculated Acd(A-K)It is also a value for just reacting global congestion, its global meaning for having fully demonstrated this network-on-chip jamming control method Know, can most efficiently decision-making goes out the global optimal path of current transmission task.
Routing table is updated every the cycle for fixing 30 seconds and read-write operation is non-frequently interacted so that any adjacent node Between both maintained the renewal of dynamic routing table in time, greatly reduce data amount of calculation again, shorten the time that computing takes, Substantially alleviate and limit the generation of network congestion, improve the data-handling capacity of whole network-on-chip and handle up Amount.

Claims (1)

1. the network-on-chip jamming control method of dynamic routing table is based on, it is characterised in that:The method comprises the following steps:
Step one:The basic X-Y transmission rules of definition:
On the network-on-chip of 2D mesh topologys, each road on rectangular array column be made up of m × n routing node All there is the unique coordinate of oneself, if the coordinate value (x, y) of any one routing node A, another any route by node The coordinate value (p, q) of node K, then when being originated from node A (x, y) and going to node K (p, q), it follows following base rule:
When the abscissa and ordinate of node A (x, y) and K (p, q) are differed, A (x, y) always ignores the difference on ordinate Value, and prioritizing selection is when can make the adjacent node on that transverse axis that the absolute value of abscissa difference reduces as next-hop Pay address;
When the abscissa of node A (x, y) and K (p, q) is identical but ordinate is differed, always prioritizing selection can make to indulge A (x, y) Payment address when the adjacent node on that longitudinal axis that the absolute value of coordinate difference reduces is as next-hop;
Step 2:To m × n 2D mesh topology network-on-chip define dynamic routing table self refresh rule, its specifically include as Lower sub-step:
Step 2.1:The self refresh variable of dynamic routing table, including following sub-step are defined respectively:
Step 2.1.1:Define the content of dynamic routing table:
Horizontal every a line entry includes four row columns in dynamic routing table, and the content that each row column is recorded is respectively averagely Degree of Congestion Acd, destination address, next hop address and total hop count T1;Every a line entry in dynamic routing table is and network-on-chip In a routing node uniquely correspond to, and the initial value of four row column contents in the row entry is sky;
If current transmission task is intended to that data are reached into another arbitrary target route from any one routing node A in network-on-chip Node K, then be referred to as data source nodes, and target routing node K is referred to as into destination node by routing node A;Positioned at routing node A Periphery and other routing nodes being directly connected with routing node A are calculated separately as the adjacent node X of routing node A(A1), neighbouring section Point X(A2)... adjacent node X(An)(n≤4, n is natural number);
Define destination address:Coordinate address (K) of the target routing node K in network-on-chip is wanted in being dynamic routing table The destination address of record;
Define next hop address:
In multiple adjacent nodes of routing node A, routing node A prepare by data pay that be determined it is neighbouring Nodes X(An)Its coordinate address (X in network-on-chipAn) it is the next hop address to be recorded in dynamic routing table;
Define total hop count T1:Actual leapfrog number needed for going to target routing node K from routing node A is counted as T1
Define average degree of Congestion:
The average degree of Congestion Acd of target routing node K is gone in definition from routing node A(A-K)Expression formula be:
In formula (2), routing node A current full state cache numerical value is counted as b(A), it itself can be tried to achieve by routing node A;Route Total caching numerical value of node A is counted as c(A), it itself can be tried to achieve by routing node A;
The increasing of routing node A walks total hop count T2=T1+1;
The adjacent node X of routing node A(An)Current described average degree of Congestion numerical value is counted as Acd(XAn), it can be from neighbouring section Point X(An)Obtained in the route updating packet sent;
Step 2.1.2:Define route updating packet:
The route updating packet of its own is defined for each routing node, the horizontal every a line entry of route updating packet is wrapped Include three row columns, the current average degree of Congestion Acd of the content that each row column is recorded respectively routing node, destination address (K) Total hop count T is walked with increasing2
Each route updating packet is uniquely corresponding with a routing node A described in step 2.1.1, routing node A according to Three item datas that the content of the dynamic routing table of its own route in message A to it are updated;
Step 2.1.3:Define the maximum distance L that network-on-chip can be transmitted:
If the rectangular array being made up of m × n routing node of the network-on-chip of 2D mesh topologys, then define L=2 × (m+ n)……(3);
Step 2.1.4:Define routing update request clock:
For each routing node in network-on-chip defines an independent built-in self refresh clock timer Timer;
Step 2.1.5:Sent out to its own adjacent node for each routing node in network-on-chip defines four this nodes The request number of times counter Count for updating and asking is sent, four requests of any one routing node A as described in step 2.1.1 Number counter Count(An)(n≤4, n is natural number) respectively with four adjacent node X of routing node A(An)(n≤4, n is Natural number) correspond;
Step 2.1.6:Dynamic routing table described in step 2.1.1 is initialized in a static manner:
Respectively by each adjacent node X of any one routing node A described in step 2.1.1(An)(n≤4, n is natural number) A routing node A is regarded as starting point and with the adjacent node X of the determination(An)It is the independent transmission paths of terminal, so that The new adjacent node route entry of four rows is created in the dynamic routing table of the routing node A;Every a line adjacent node Route entry with an adjacent node X(An)(n≤4, n is natural number) is uniquely corresponding;
To the routing node A in a static manner to foregoing four rows adjacent node route entry difference in its own dynamic routing table Initialized, by the adjacent node X with unique corresponding that determination of a line adjacent node route entry(An)Network Coordinate address (XAn) (n≤4, n is natural number) be respectively filled in next hop address row in the adjacent node route entry of new establishment Column and destination address row column;Total hop count in a line adjacent node route entry is set to 1, and the row is adjacent Average degree of Congestion in nearly node-routing entry is set to 0;
Step 2.2:The average degree of Congestion for defining any one routing node A as described in step 2.1.1 updates rule, and its is specific Including following sub-step:
Step 2.2.1:Obtain each adjacent node X as described in step 2.1.1 respectively as routing node A(An)(n≤4, n is Natural number) route updating packet each sent;
Step 2.2.2:Routing node A judges respectively, each adjacent node X as described in step 2.2.1(An)Routing update In message, if include by way of adjacent node X(An)And reach as described in step 2.1.1 the one of target routing node K Row entry or multirow entry;If not including, routing node A is directly by the adjacent node X(An)In route updating packet one Row or multirow entry are increased newly and add the routing node A dynamic routing tables of itself, and perform step 2.3;If comprising described a line Entry or multirow entry, then directly perform step 2.2.3;
Step 2.2.3:Routing node A reads the current total caching c of routing node A from the processor of itself(A)With full state Caching b(A)Value;
Step 2.2.4:Obtained respectively from the adjacent node message using the adjacent node as data source nodes and gone to During identical destination node K, this is adjacent to routing node X(An)What is recorded is current:Average degree of Congestion numerical value Acd(XAn-K), target Address (KXAn) and increase the total hop count T of step2(XAn)
Step 2.2.5:By routing node A by the full state cache value b of itself(A), total cache size c(A), total hop count T1, increase that step is total to jump Number T2And the adjacent node X sent by route updating packet(An)Average degree of Congestion numerical value Acd(XAn-K)Formula is substituted into respectively (2) in, and the new average degree of Congestion Acd for trying to achieve routing node A is calculated(A-K) it is new
Step 2.2.6:Judge Acd(A-K) it is newWhether Acd is more than or equal to(A-K) it is former;If so, performing step 2.2.8;If it is not, performing step 2.2.7;
Step 2.2.7:Routing node A carries out self refresh to the dynamic routing table of itself, specifically includes:
Keep destination address (K) constant;
Total hop count T is walked with the increasing of routing node A2Currency substitute total hop count T1Currency;
The average degree of Congestion Acd tried to achieve with step 2.2.5(A-K) it is newScript is described in replacing the dynamic routing table of routing node A Average degree of Congestion Acd(A-K) it is former;Then step 2.3 is performed;
Step 2.2.8:Routing node A does not update the dynamic routing table of itself, directly performs step 2.3;
Step 2.3:Any one routing node A as described in step 2.1.1 judge its own as described in step 2.1.4 from more Whether the present clock period of new clock timer Timer is over, if routing node A present clock periods of itself are not yet Terminate then further to perform step 2.4, step 2.5 is performed if present clock period is over;
Step 2.4:Routing update request rule is performed, it specifically includes following sub-step:
Step 2.4.1:Any one routing node A as described in step 2.1.1 judges, in the self refresh as described in step 2.1.4 Within one current clock cycle of clock timer, whether routing node A have received adjacent node X respectively(A1), neighbouring section Point X(A2), adjacent node X(A3)And adjacent node X(A4)Amount to four adjacent node X(An)(n≤4, n is natural number) is respective The whole sent amounts to four route updating packets;If failing to receive all four route updating packets, step is performed 2.4.2:If having received all four route updating packets, step 2.4.8 is performed;
Step 2.4.2:Routing node A is to the adjacent node X for failing to send in time route updating packet(An)Sending routing update please Ask;
Step 2.4.3:Routing node A is transferred and is failed the adjacent node X for sending route updating packet in time(An)Corresponding request Number counter Count(An), and its current count value is increased by 1;
Step 2.4.4:Routing node A is respectively to each the request number of times counter Count as described in step 2.1.5(An)Carry out Judge, step 2.4.5 is performed if its current count value is not more than 3, step is performed if its current count value is more than 3 2.4.6;
Step 2.4.5:Routing node A continues waiting for the neighbour that failing as described in step 2.4.2 sends route updating packet in time Nearly nodes X(An)Route updating packet is sent to routing node A, until routing node A re-executes step after receiving the message 2.4.1;
Step 2.4.6:Routing node A will fail to send route in time more in the dynamic routing table of itself described in step 2.4.2 The adjacent node X of new message(An)It is defined as malfunctioning node, and terminates along the transmission task of the malfunctioning node;
Step 2.4.7:Routing node A searches relative with malfunctioning node described in step 2.4.6 from the dynamic routing table of its own The every a line entry answered, and by the every a line comprising foregoing malfunctioning node information from dynamic routing table Delete Entire Row so that Obtain the computing that total data in this action state routing table is no longer participate in any subsequent step;
Step 2.4.8:Reset the self refresh clock timer as described in step 2.1.4 of itself in advance as routing node A Timer;And by remaining whole non-faulting adjacent node X(An)Corresponding request number of times counter Count(An)It is synchronous to reset to 0;
Step 2.5:Self refresh clock timer Timer described in the step 2.1.4 current clock cycle voluntarily terminates to reset, or If person timer Timer is reset during as described in step 2.4.8, or, it is current as described in step 2.1.1 Any one routing node A have received its adjacent node X as described in step 2.4.2(An)The routing update request for sending, when During any one generation in above-mentioned three kinds of situations, routing node A is a such as step by its current dynamic routing table generation 2.1.2 described route updating packet;
Step 2.6:The road that any one routing node A as described in step 2.1.1 generates it according to mode described in step 2.5 Whole non-faulting adjacent node X of the routing node A as described in step 2.4.8 are given as renewal message synchronized transmission(An)
Step 3:Deposited dedicated for storing the inside of dynamic routing table for each routing node of network-on-chip sets one Store up space and the self refresh variable of the dynamic routing table described in step 2.1 is stored in the dynamic routing of each routing node respectively In table memory space;
Step 4:The self refresh rule of dynamic routing table described in step 2.2 to step 2.6 is respectively stored in described in step 3 In each routing node processor memory of itself;
Step 5:The startup and initialization of network-on-chip:
When network-on-chip starts and comes into operation, network-on-chip each routing node is each after initialization by synchronous initiation The maximum distance L values that a unified network-on-chip can be transmitted have been tried to achieve and stored to individual routing node, each routing node Built-in self refresh clock timer Timer does not start timing, also, the request number of times counter as described in step 2.4.3 Count(An)0 is set to, the every numerical value in the route updating packet of each routing node is sky;
Step 6:When network-on-chip starts first data to be reached into another arbitrary target route section from any one routing node A During the transmission task of point K, the whole nodes in network-on-chip are synchronously activated, the built-in self refresh clock meter of each routing node When the time value that starts as set by step 2.1.4 of device Timer start countdown;
Step 7:By current data source node, i.e.,:Routing node A, the processor of its own is first carried out step 2.2 to step The self refresh rule of dynamic routing table described in 2.6, and try to achieve itself current dynamic routing table;
Step 8:Routing node A judgements, if the non-faulting adjacent node X of a certain determination of itself(An)(n≤4, n is nature Number) as next hop address, if then being originated by way of non-faulting adjacent node X from routing node A(An)And go to destination node K When, described total hop count T in the current dynamic routing tables of routing node A1Whether more than transmitting described in step 5 Maximum distance L values, if total hop count T1More than the maximum distance L that can be transmitted, then step 9 is performed, otherwise perform step 11;
Step 9:Routing node A is in the dynamic routing table of itself by the current non-faulting adjacent node X described in step 8(An) It is defined as the unreachable node in path, and terminates along the transmission task of the malfunctioning node;Meanwhile, routing node A is moved from its own A line entry corresponding with the unreachable node in the path is searched in state routing table, and by the row entry Delete Entire Row with so that should Total data is no longer participate in the computing of any subsequent step in Mobile state routing table;
Step 10:The current transmission task of the unreachable node in path as described in routing node A terminations along step 9 is simultaneously held again Row step 8;
Step 11:Retrieved from the dynamic routing table of itself by routing node A, in the dynamic routing table of its own whether In the presence of the non-faulting adjacent node X that go to destination node K and will determine described in step 8(An)(n≤4, n is natural number) is under The one a line entry for jumping address, if in the presence of the row entry, performing step 12, otherwise performs step 13;
Step 12:As routing node A directly by step 10 described in that a line entry corresponding to non-faulting adjacent node X(An) It is defined as next adjacent node X that this secondary data will pay(An), and send current data packet to next neighbouring section Point, then performs step 14;
Step 13:As routing node A X-Y rules institute is transferred data to according to the X-Y transmission rules on basis described in step one Next adjacent node on the path of determination, then performs step 14;
Step 14:Next adjacent node as described in step 12 or step 13, it is being connected to current data transmission After task, start the data source nodes that itself will be regarded as described in step 7, its as brand-new routing node A ' start according to Initial routing node A exact same ways perform the process of step 6 to step 12.
CN201410384166.8A 2014-08-06 2014-08-06 Network-on-chip jamming control method based on dynamic routing table Expired - Fee Related CN104202253B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410384166.8A CN104202253B (en) 2014-08-06 2014-08-06 Network-on-chip jamming control method based on dynamic routing table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410384166.8A CN104202253B (en) 2014-08-06 2014-08-06 Network-on-chip jamming control method based on dynamic routing table

Publications (2)

Publication Number Publication Date
CN104202253A CN104202253A (en) 2014-12-10
CN104202253B true CN104202253B (en) 2017-05-31

Family

ID=52087483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410384166.8A Expired - Fee Related CN104202253B (en) 2014-08-06 2014-08-06 Network-on-chip jamming control method based on dynamic routing table

Country Status (1)

Country Link
CN (1) CN104202253B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104539533B (en) * 2014-12-22 2017-12-01 合肥工业大学 The method and its application of channel table are established according to each layer of TSV connection state in 3D NoC
CN104579951B (en) * 2014-12-29 2018-03-23 合肥工业大学 Novel failure and the fault-tolerance approach under congestion model in network-on-chip
CN104955051B (en) * 2015-06-23 2016-08-31 北京奇虎科技有限公司 Recognition methods, device and the sensor of a kind of WIFI that goes fishing
CN107506175B (en) * 2017-07-21 2020-07-28 北京中科睿芯科技有限公司 Data flow graph congestion detection method based on execution efficiency gradient prediction
CN107395503A (en) * 2017-08-25 2017-11-24 东南大学 A kind of network-on-chip method for routing based on linear programming
CN111382115B (en) 2018-12-28 2022-04-15 北京灵汐科技有限公司 Path creating method and device for network on chip and electronic equipment
CN110365579B (en) * 2019-08-09 2021-05-04 合肥工业大学 Congestion and fault perception wireless router in wireless network on chip and routing method thereof
CN114866475B (en) * 2022-04-06 2023-05-26 中山大学 Network-on-chip congestion control method, system, device and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141261A (en) * 2007-10-10 2008-03-12 山东大学 Network-on-chip digital router and its parallel data transmission method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102084349A (en) * 2008-04-04 2011-06-01 亚利桑那董事会,代表亚利桑那大学行事的亚利桑那州法人团体 Fault-and variation-tolerant energy-and area-efficient links for network-on-chips

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141261A (en) * 2007-10-10 2008-03-12 山东大学 Network-on-chip digital router and its parallel data transmission method

Also Published As

Publication number Publication date
CN104202253A (en) 2014-12-10

Similar Documents

Publication Publication Date Title
CN104202253B (en) Network-on-chip jamming control method based on dynamic routing table
Gai et al. Reinforcement learning-based content-centric services in mobile sensing
CN105407055B (en) A kind of consumption control method of content center network
CN104394236B (en) Node combines the distributed collaborative caching method perceived with message status
CN106982248B (en) caching method and device for content-centric network
CN106445676A (en) Distributed data calculation-based task allocation method and task allocation apparatus
CN104065568A (en) Web server cluster routing method
CN105264930B (en) Sending node and its reporting cached state method
CN103327564A (en) Wireless sensor network route method based on ant colony algorithm
CN104734962B (en) A kind of resource search method of non-structural P 2 P network
CN105302830B (en) Map tile caching method and device
CN109076108A (en) Receive network node, endpoint node and the method for interest message
CN103634401A (en) Data copy storage method and terminal unit, and server unit
CN107404530A (en) Social networks cooperation caching method and device based on user interest similarity
US9501509B2 (en) Throwaway spatial index structure for dynamic point data
CN104572498B (en) The buffer memory management method and device of message
US20180295204A1 (en) Method and system for allocating content using a content-based centrality metric
CN104104621A (en) Dynamic adaptive adjustment method of virtual network resources based on nonlinear dimensionality reduction
CN108900618A (en) Content buffering method in a kind of information centre's network virtualization
EP3193490B1 (en) Method and system for distributed optimal caching of content over a network
KR102109771B1 (en) METHOD FOR SECURITY MOBILITY ADAPTABLE ROUTING FOR CRITICAL IoT AND RECORDING MEDIUM FOR PERFORMING THE METHOD
CN107197039A (en) A kind of PAAS platform service bag distribution methods and system based on CDN
CN103179045A (en) Resource node selection method supportive of P2P (peer to peer) traffic optimization
CN108093056A (en) Information centre's wireless network virtualization nodes buffer replacing method
CN107040466B (en) Multi-domain cooperative data transmission path selection method based on layered architecture of Internet of things

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Cai Hua

Inventor after: Liu Guangwen

Inventor after: Chen Guangqiu

Inventor after: Geng Zhenye

Inventor after: Gu Xinchao

Inventor after: Yang Yong

Inventor before: Cai Hua

Inventor before: Yang Yong

Inventor before: Wang Bo

Inventor before: Chen Yuqun

Inventor before: Qu Fuheng

Inventor before: Han Tailin

Inventor before: Dou Shuang

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170531

Termination date: 20180806