CN107046500B - A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip - Google Patents
A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip Download PDFInfo
- Publication number
- CN107046500B CN107046500B CN201710359177.4A CN201710359177A CN107046500B CN 107046500 B CN107046500 B CN 107046500B CN 201710359177 A CN201710359177 A CN 201710359177A CN 107046500 B CN107046500 B CN 107046500B
- Authority
- CN
- China
- Prior art keywords
- microplate
- transmission direction
- current
- routing node
- port
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention discloses a kind of two-stages applied to stratification network-on-chip to split router and its routing algorithm, characterized in that it is to set QoS routing computing module for the decoding module of router that two-stage, which splits router,;QoS routing computing module includes classification decoding unit YM, unicast packet route computing unit SR, multicast upstream data packet route computing unit UR, multicast downlink data packet route computing unit DR and output port deposit unit.The present invention, which can make certain optimization to mixing Multicast Routing Algorithm, to be improved, and is carried out selectively splitting transmission by the method that two-stage is split to the data in multicast packets, to reduce the delay of multicast packets, while being optimized the congestion condition of upper layer network.
Description
Technical field
The invention belongs to the fields of communication technology of integrated circuit network-on-chip, more particularly to one kind to be applied to stratification on piece
The two-stage of network splits router and its routing algorithm.
Background technique
As nucleus number is continuously increased on network-on-chip, the parallel communications between multicore becomes network-on-chip correspondence
It obtains considerably complicated.Traditional network-on-chip design only considers unicast communication mode of the source node to a destination node.?
Realize that single source node becomes a more and more important communication requirement to the multi-casting communication of multiple destination nodes on network-on-chip.
There are many kinds of Multicast Routing Algorithms at present, wherein the mixing Multicast Routing Algorithm based on hierarchical network structure is calculated
Method uses two-tier network structure, and bottom-layer network is divided into different regions.Each router of upper layer network is equivalent to bottom region
The bridging router of domain intermediate router.Unicast packet is only transmitted in bottom-layer network.Multicast packets are first transferred to upper wire
Network travels to the different zones where each destination node again from upper layer network, then reaches destination node.
But the algorithm in order to avoid a deadlock situation, it is specified that all-multicast data packet in a region all must be from
Upper level router enters the region, even a source node carries out multicast to other nodes of self zone or adjacent node
Transmission also must enter the region by the upper level router in the region, this can greatly increase the delay of data packet.
Summary of the invention
In place of the present invention is in order to solve above-mentioned the shortcomings of the prior art, propose a kind of applied to stratification network-on-chip
Two-stage split router and its routing algorithm, to which data packet can be transmitted directly to the purpose being located in upward transmission path
The destination node of the adjacent position of node or upward transmission path so as to effectively improve efficiency of transmission, and reduces delay.
The technical scheme adopted by the invention to achieve the purpose is as follows:
A kind of two-stage applied to stratification network-on-chip of the present invention splits router, the stratification network-on-chip be by
The bottom two-dimensional network of N × M and the upper layer network of L × S are constituted;1≤L < N, 1≤S < M;The bottom two-dimensional network is divided into L
× S area;Include an intermediate router and several ordinary routers in each area;The ordinary router includes five biographies
Defeated direction;The intermediate router includes five transmission directions and a upward transmission direction;The upper layer network is transmission
Router;The transmission route device includes five transmission directions and a downward transmission direction;The intermediate router with it is described
Transmission route device interconnects;Its main feature is that
QoS routing computing module is set by the decoding module in the intermediate router and several ordinary routers;
The QoS routing computing module includes classification decoding unit YM, unicast packet route computing unit SR, multicast upstream data
Packet route computing unit UR, multicast downlink data packet route computing unit DR and output port deposit unit;Multicast upstream data
Packet route computing unit UR includes: two-stage split cells TS and generic uplink route computing unit RC;The output port deposit
Unit include: m transmission direction register port_1 [m-1:0] and m omnidirection register port_2 [m-1:0];M is to pass
The number in defeated direction;The transmission direction register port_1 [m-1:0] is used to store the transmission direction when front microplate;It is described
Omnidirection register port_2 [m-1:0] is used to store the transmission direction of all microplates;
Intermediate router or ordinary router in any one area as current routing node and pass through the input of itself
When module receives data packet, the input module of current routing node sends the data to the QoS routing computing module of itself
Microplate in packet;
The classification decoding unit YM of current routing node judges received current microplate, if received
Current microplate is head microplate, then the decoding unit YM that classifies judges the head microplate again;
If the head microplate is the head microplate of multicast packets;Then to the transmission direction of the head microplate of the multicast packets
Judged, if upward transmission direction, then the head microplate of the multicast packets is sent to the routing of multicast upstream data packet
Computing unit UR is for calculating transmission direction;If downward transmission direction, then the head microplate of the multicast packets is sent to
Multicast downlink data packet route computing unit DR is for calculating transmission direction;
If the head microplate is the head microplate of unicast packet;The head microplate of unicast packet is then sent to unicast data
Packet route computing unit SR is for calculating transmission direction;
If received current microplate is body microplate, the output port deposit unit is by the transmission of all microplates
Direction copies in transmission direction register port_1 [m-1:0] from omnidirection register port_2 [m-1:0], current routing section
The input module of point is micro- by body according to the transmission direction of transmission direction register port_1 [m-1:0] in output port deposit unit
Piece is transmitted to downstream routing node;
If received current microplate is tail microplate, the output port deposit unit is by the transmission of all microplates
Direction copies in transmission direction register port_1 [m-1:0] from omnidirection register port_2 [m-1:0], current routing section
The input module of point is micro- by tail according to the transmission direction of transmission direction register port_1 [m-1:0] in output port deposit unit
Piece is transmitted to downstream routing node;Then, the classification decoding unit YM of current routing node is to the output port deposit unit
Send data packet end of transmission signal;Output port deposit unit data packet end of transmission signal based on the received,
The output port deposit unit of current routing node is reset;
The two-stage split cells TS of multicast upstream data packet route computing unit UR multicast number based on the received
According to the head microplate of packet, the own coordinate of the current routing node is compared with the coordinate of destination node,
If two coordinates are identical, then it represents that current routing node is destination node, obtains transmission direction as local direction
And it saves into the output port deposit unit;
If two coordinates are adjacent, then it represents that current routing node and destination node are adjacent node, and obtaining transmission direction is
Adjacent direction, the two-stage split cells TS judges whether the output port of current routing node is idle again, if idle, by phase
Adjacent direction is saved into the output port deposit unit;If not idle, adjacent direction is not saved, and by the multi-case data
The head microplate transfer of packet is to generic uplink route computing unit RC;
If two coordinates are not non-conterminous also identical, directly by the head microplate transfer of the multicast packets to generic uplink
Route computing unit RC;The generic uplink route computing unit RC is sat according to the intermediate router of current routing node location
Mark calculates the transmission direction in multi-case data packet header microplate downstream, and saves to the output port storage receipt of current routing node
Member;
The head microplate of multicast downlink data packet route computing unit DR multicast packets based on the received utilizes
XY routing algorithm calculates the transmission direction in multi-case data packet header microplate downstream, and saves to the output port of current routing node
Deposit unit;
The head microplate of unicast packet route computing unit SR unicast packet based on the received utilizes XY routing to calculate
Method calculates the transmission direction in unicast data packet header microplate downstream, and saves to the output port storage receipt of current routing node
Member;
When the omnidirection register port_2 [m-1:0] receives the input direction of current microplate, current microplate is judged
Transmission direction whether have existed, if having existed, the QoS routing computing module of current routing node will ask in arbitration again
It asks signal to be sent to the arbitration modules of itself, is used to open the corresponding output port of cross switch module, otherwise, directly storage is worked as
The input direction of preceding microplate.
A kind of two-stage applied to stratification network-on-chip of the present invention splits the routing algorithm of router, the stratification piece
Upper network is made of the upper layer network of the bottom two-dimensional network of N × M and L × S;1≤L < N, 1≤S < M;The bottom two dimension
Network is divided into L × S area;Include an intermediate router and several ordinary routers in each area;The ordinary router
Include five transmission directions;The intermediate router includes five transmission directions and a upward transmission direction;The upper wire
Network is transmission route device;The transmission route device includes five transmission directions and a downward transmission direction;The intermediate road
It is interconnected by device and the transmission route device;Its main feature is that with intermediate router or ordinary router in any one area
When as current routing node and receiving data packet by the input module of itself, the routing algorithm be as follows into
Row:
Step 1, the setting intermediate router and several ordinary routers include: m transmission direction registers
Port_1 [m-1:0] and m omnidirection register port_2 [m-1:0];M is the number of transmission direction;The transmission direction is posted
Storage port_1 [m-1:0] is used to store the transmission direction when front microplate;The omnidirection register port_2 [m-1:0] is used
In the transmission direction for storing all microplates;
Step 2, current routing node judge the current microplate in received data packet, if received
Current microplate is head microplate, thens follow the steps 3;If received current microplate is body microplate, 8 are thened follow the steps;If being connect
The current microplate received is tail microplate, thens follow the steps 9;
Step 3, current routing node judge the head microplate again;If the head microplate is the head of multicast packets
Microplate;Then follow the steps 4;If the head microplate is the head microplate of unicast packet;Then directly calculated using XY routing algorithm
The transmission direction in unicast data packet header microplate downstream is simultaneously saved to transmission direction register port_1 [m-1:0] and omnidirection deposit
In device port_2 [m-1:0];Step 10 is executed again;
Step 4, current routing node judge the transmission direction of the head microplate of the multicast packets, if upward
Transmission direction thens follow the steps 5;If downward transmission direction, 7 are thened follow the steps;
The head microplate of step 5, current routing node multicast packets based on the received, by the current routing node
Own coordinate be compared with the coordinate of destination node, if two coordinates are identical, then it represents that for the purpose of current routing node is
Node obtains transmission direction as local direction and saves to transmission direction register port_1 [m-1:0] and omnidirection register
In port_2 [m-1:0];Step 10 is executed again;
If two coordinates are adjacent, then it represents that current routing node and destination node are adjacent node, and obtaining transmission direction is
Adjacent direction, and judge whether the output port of current routing node is idle, if idle, adjacent direction is saved to transmission direction
In register port_1 [m-1:0] and omnidirection register port_2 [m-1:0], then execute step 10;It is no to then follow the steps 6;
If two coordinates are not non-conterminous also identical, step 6 is directly executed;
It is micro- to calculate multi-case data packet header according to the intermediate router coordinate of itself location for step 6, current routing node
The transmission direction in piece downstream and save to transmission direction register port_1 [m-1:0] and omnidirection register port_2 [m-1:
0] in;Step 10 is executed again;
The head microplate of step 7, current routing node multicast packets based on the received utilizes XY routing algorithm to calculate
The transmission direction in multi-case data packet header microplate downstream and saving to transmission direction register port_1 [m-1:0] and omnidirection is posted out
In storage port_2 [m-1:0];Step 10 is executed again;
The transmission direction of all microplates is copied to transmission direction from omnidirection register by step 8, current routing node
In register port_1 [m-1:0], thus according to the transmission direction in transmission direction register port_1 [m-1:0] by body microplate
It is transmitted to downstream routing node;Return again to step 2;
Step 9, current routing node are multiple from omnidirection register port_2 [m-1:0] by the transmission direction of all microplates
It makes in transmission direction register port_1 [m-1:0], thus according to the transmission in transmission direction register port_1 [m-1:0]
Direction is by tail microplate transfer to downstream routing node;At the end of tail microplate transfer, current routing node deposits transmission direction
Device port_1 [m-1:0] and omnidirection register port_2 [m-1:0] is reset, and returns again to step 2;
When step 10, the omnidirection register port_2 [m-1:0] receive the input direction of current microplate, judgement is worked as
Whether the transmission direction of preceding microplate has existed, if having existed, current routing node sends weight arbitration request signal
To the arbitration modules of itself, it is used to open the corresponding output port of cross switch module, otherwise, directly stores the defeated of current microplate
Enter direction;
Step 11, return step 2.
Compared with prior art, advantageous effects of the invention are embodied in:
1, the present invention is by the way that by bottom route network subregion, there is the biography of an intermediate router and upper layer in each region
Defeated router is connected, and each region is connected by transmission route device, to realize the transmission in region and region;It is general by changing
Logical router decoding module is QoS routing computing module, and data packet transmission is divided into unicast packet according to head microplate information
Transmission, the transmission of multicast upstream data packet and multicast downstream packet transmission;Unicast packet transmission, multicast downstream packet transmission
It is all directly to be transmitted by XY routing algorithm, and whether it is to work as prosthomere that multicast upstream data packet is transmitted according to destination node
Point, present node adjacent node, and both incongruent node is classified, thus by the transmission point of multicast upstream data packet
At three kinds of situations;The case where being present node for destination node, carries out resolution, because this mode will not generate deadlock
Problem, so the output channel free time can also be waited to be transmitted even if output channel is occupied, this has been considerably improved biography
Defeated efficiency, nor will affect transmission of the data packet to other directions;When destination node be present node adjacent node, in order to
Deadlock is avoided, it,, then can be with if any the output channel free time directly to intermediate route transmission if output channel is occupied
It is directly transferred to adjacent node, due to not increasing new Deadlock, this would not increase the complexity of hardware algorithm realization,
Nor congestion problems can be generated;When destination node is unsatisfactory for both the above situation, then data packet is transmitted to intermediate routing
Device is transmitted to destination node region by upper layer transport router, is transmitted to by multicast downstream packet transmission algorithm
Destination node;To solve in mixing Multicast Routing Algorithm destination node must can be just transmitted to via upper layer transport router
The problem of, realizing data packet by two-stage fractionation routing algorithm can be to destination node in present node and its adjacent segments point
It sets and is transmitted;And then efficiency of transmission is substantially increased, reduce congestion and delay.
2, the present invention is saved, one in order to can all acquire multicast directional information by two kinds of registers
Transmission direction register is planted to save current microplate transfer direction;And in order to save multiple microplate directional informations, using full side
To register, directional information is transmitted to transmission direction register when simultaneous transmission body microplate and tail microplate;This will just work as forward pass
Defeated direction is distinguished with all transmission directions of multicast;Simultaneously in order to avoid the multiple arbitration in identical traffic direction, pass through setting
Weight arbitration request signal directly opens crossbar switch, so that reduction arbitration time and complexity, decrease moderator work
Time reduces delay, while reducing router power consumption.
3, by two-stage fractionation routing algorithm, to the progress of multicast upstream data packet, bottom-layer network selectively passes the present invention again
It is defeated, it whether is present node by the destination node to current multicast data packet, present node adjacent node, and neither
The node met is classified, to increase the process that data packet is transmitted to destination node in bottom-layer network, is greatly reduced
Transmission route device from data packet to upper layer process, greatly reduce the congestion situation of upper layer network, reduce delay.
4, second level fractionation module is judged destination node in present node phase by the present invention in order not to increase new Deadlock
When ortho position is set, whether split to adjacent node according to the whether idle determination data packet of output channel, and avoid network congestion
Situation reduces delay.
5, the present invention passes through the position for judging the packet rs destination node of upward transmission direction, and data packet transmission is divided into three
The case where the case where kind situation, respectively present node is destination node and present node adjacent node are destination nodes, and
Other situations;Changing the mixing Multicast Routing Algorithm based on hierarchical network structure can only be from upper layer transport route transmission to mesh
The limitation of node reduce delay to greatly improve efficiency of transmission.
Detailed description of the invention
Fig. 1 is bottom 6 × 6 in the prior art, the hierarchical network structure figure of 2 × 2 scale of upper layer;
Fig. 2 is QoS routing computing module circuit structure diagram of the present invention;
Fig. 3 is in two destination node of the invention on it walking along the street diameter;
Fig. 4 is the adjacent node of a destination node of the invention walking along the street diameter on it;
Fig. 5 is the adjacent node of two destination nodes of the invention walking along the street diameter on it;
Fig. 6 is the adjacent node of three destination nodes of the invention walking along the street diameter on it;
Fig. 7 is the adjacent node of four destination nodes of the invention walking along the street diameter on it;
Fig. 8 is the delay comparison diagram of different destination node numbers on up path of the present invention;
Fig. 9 is the delay comparison diagram of the different detachable adjacent destination node numbers of the present invention.
Specific embodiment
In the present embodiment, the format of data packet is as shown in table 1, and each multi-case data packet header microplate is marked comprising Virtual Channel number
Will, microplate type code, type of data packet mark, destination node number, source node number, data packet current transmission path, mesh
Node region upper layer node number, upper layer network transmission direction;
1 network packet format of table
The stratification on-chip network structure of use is made of 6 × 6 bottom two-dimensional network and 2 × 2 upper layer network
The double-deck network-on-chip, as shown in Figure 1;Bottom two-dimensional network is divided into 4 areas;If in each area comprising intermediate router and
Dry ordinary router;Ordinary router includes five transmission directions;Intermediate router include five transmission directions and one to
Upper transmission direction;Upper layer network is transmission route device;Transmission route device includes five transmission directions and a downward transmission side
To;Intermediate router and transmission route device interconnect.
In the present embodiment, QoS routing meter is set by the decoding module in intermediate router and several ordinary routers
Calculate module;As shown in Fig. 2, QoS routing computing module include classification decoding unit YM, unicast packet route computing unit SR,
Multicast upstream data packet route computing unit UR, multicast downlink data packet route computing unit DR and output port deposit unit;
Multicast upstream data packet route computing unit UR includes: two-stage split cells TS and generic uplink route computing unit RC;Commonly
Router output mouth deposit unit includes: 5 transmission direction register port_1 [4:0] and 5 omnidirection registers
port_2[4:0];Intermediate router output port deposit unit includes: 6 transmission direction register port_1 [5:0] and 6
Position omnidirection register port_2 [5:0];The transmission direction register of ordinary router and intermediate router is collectively expressed as passing
Defeated direction register port_1, omnidirection register are collectively expressed as omnidirection register port_2;Transmission direction register
Port_1 is used to store the transmission direction when front microplate;Omnidirection register port_2 is used to store the transmission of all microplates
Direction, one represents a transmission direction in omnidirection register port_2;
Intermediate router or ordinary router in any one area as current routing node and pass through the input of itself
When module receives data packet, the input module of current routing node is sent in data packet to the QoS routing computing module of itself
Microplate data_in [38:0];
The classification decoding unit YM of current routing node sentences received current microplate data_in [38:0]
It is disconnected, judge whether microplate data_in [36:35] microplate type code is 2 ' b01, if so, current microplate is head microplate, if
2 ' b11, then current microplate is body microplate, if 2 ' b10, then current microplate is tail microplate;If received current microplate is
Head microplate, then decoding unit YM enemy's microplate of classifying judges again, judges microplate data_in [34] type of data packet mark
It whether is 1 ' b1, if so, head microplate is multi-case data packet header microplate, if it is not, being then unicast data packet header microplate.
If head microplate is the head microplate of multicast packets, the transmission direction of the head microplate of multicast packets is sentenced
It is disconnected, judge whether microplate data_in [32] data packet current transmission path is upward 1 ' b1 of transmission path, if so, working as forward pass
Defeated path is upward transmission path, if it is not, current transmission path is downward transmission path;If upward transmission direction, then will
The head microplate of multicast packets is sent to multicast upstream data packet route computing unit UR for calculating transmission direction;If downward
The head microplate of multicast packets is then sent to multicast downlink data packet route computing unit DR and is used to calculate transmission by transmission direction
Direction;
If head microplate is the head microplate of unicast packet;The head microplate of unicast packet is then sent to unicast packet road
By computing unit SR for calculating transmission direction;
If received current microplate is body microplate, output port deposit unit is by the transmission direction of all microplates
It is copied in transmission direction register port_1 from omnidirection register port_2, the input module of current routing node is according to defeated
The transmission direction of transmission direction register port_1 is by body microplate transfer to downstream routing node in exit port deposit unit;
If received current microplate is tail microplate, output port deposit unit is by the transmission direction of all microplates
It is copied in transmission direction register port_1 from omnidirection register port_2, the input module of current routing node is according to defeated
The transmission direction of transmission direction register port_1 is by tail microplate transfer to downstream routing node in exit port deposit unit;So
Afterwards, the classification decoding unit YM of current routing node sends data packet end of transmission signal to output port deposit unit;Output
Port deposit unit data packet end of transmission signal based on the received, by the output port deposit unit of current routing node
It resets;
The two-stage split cells TS of multicast upstream data packet route computing unit UR multicast packets based on the received
Head microplate, the coordinate data_in [23:8] of the own coordinate of current routing node and destination node is compared,
If two coordinates are identical, then it represents that current routing node is destination node, obtains transmission direction as local direction
And it saves into output port deposit unit;
If two coordinates are adjacent, then it represents that current routing node and destination node are adjacent node, and obtaining transmission direction is
Adjacent direction, two-stage split cells TS judges whether the output port of current routing node is idle again, if idle, by adjacent side
To preservation into output port deposit unit;If not idle, adjacent direction is not saved, and the head microplate of multicast packets is passed
Transport to generic uplink route computing unit RC;
If two coordinates are not non-conterminous also identical, directly the head microplate transfer of multicast packets to generic uplink is routed
Computing unit RC;Generic uplink route computing unit RC is calculated according to the intermediate router coordinate of current routing node location
The transmission direction in multi-case data packet header microplate downstream out, and save to the output port deposit unit of current routing node;
The head microplate of multicast downlink data packet route computing unit DR multicast packets based on the received, utilizes the road XY
The transmission direction in multi-case data packet header microplate downstream is calculated by algorithm, and is saved to the output port of current routing node and deposited
Unit;
The head microplate of unicast packet route computing unit SR unicast packet based on the received utilizes XY routing to calculate
Method calculates the transmission direction in unicast data packet header microplate downstream, and saves to the output port storage receipt of current routing node
Member;
When omnidirection register port_2 receives the input direction of current microplate, judge that the transmission direction of current microplate is
No to have existed, if having existed, weight arbitration request signal is sent to by the QoS routing computing module of current routing node
The arbitration modules of itself are used to open the corresponding output port of cross switch module, otherwise, directly store the input of current microplate
Direction.
In the present embodiment, a kind of two-stage applied to stratification network-on-chip splits the routing algorithm of router, stratification
Network-on-chip is made of 6 × 6 bottom two-dimensional network and 2 × 2 upper layer network;Bottom two-dimensional network is divided into 4 areas;Each
Include an intermediate router and several ordinary routers in area;Ordinary router includes five transmission directions;Centre routing
Device includes five transmission directions and a upward transmission direction;Upper layer network is transmission route device;Transmission route device includes five
A transmission direction and a downward transmission direction;Intermediate router and transmission route device interconnect;In any one area
Intermediate router or ordinary router are as current routing node and when receiving data packet by the input module of itself, routing
Algorithm is to carry out as follows:
Step 1, setting intermediate router and several ordinary routers include: 5 transmission direction register port_
1 [4:0] and 5 omnidirection register port_2 [4:0];Intermediate router output port deposit unit includes: 6 transmission sides
To register port_1 [5:0] and 6 omnidirection register port_2 [5:0];The transmission of ordinary router and intermediate router
Direction register is collectively expressed as transmission direction register port_1, and omnidirection register is collectively expressed as omnidirection register
port_2;Transmission direction register port_1 is used to store the transmission direction when front microplate;Omnidirection register port_2 is used
One represents a transmission direction in the transmission direction for storing all microplates, omnidirection register port_2;
Step 2, current routing node judge the current microplate in received data packet, if received
Current microplate is head microplate, thens follow the steps 3;If received current microplate is body microplate, 8 are thened follow the steps;If being connect
The current microplate received is tail microplate, thens follow the steps 9;
Step 3, current routing node enemy microplate judge again;If head microplate is the head microplate of multicast packets;Then
Execute step 4;If head microplate is the head microplate of unicast packet;Then unicast data packet header directly is calculated using XY routing algorithm
The transmission direction in microplate downstream is simultaneously saved into transmission direction register port_1 and omnidirection register port_2;Step is executed again
Rapid 10;
Step 4, current routing node judge the transmission direction of the head microplate of multicast packets, if upward transmission
Direction thens follow the steps 5;If downward transmission direction, 7 are thened follow the steps;
The head microplates of step 5, current routing node multicast packets based on the received, by current routing node from
Body coordinate is compared with the coordinate of destination node, if two coordinates are identical, then it represents that and current routing node is destination node,
Transmission direction is obtained as local direction and is saved into transmission direction register port_1 and omnidirection register port_2;It holds again
Row step 10;
If two coordinates are adjacent, then it represents that current routing node and destination node are adjacent node, and obtaining transmission direction is
Adjacent direction, and judge whether the output port of current routing node is idle, if idle, adjacent direction is saved to transmission direction
In register port_1 and omnidirection register port_2, then execute step 10;It is no to then follow the steps 6;If two coordinates not phase
It is adjacent also not identical, then directly execute step 6;
It is micro- to calculate multi-case data packet header according to the intermediate router coordinate of itself location for step 6, current routing node
The transmission direction in piece downstream is simultaneously saved into transmission direction register port_1 and omnidirection register port_2;Step is executed again
10;
The head microplate of step 7, current routing node multicast packets based on the received utilizes XY routing algorithm to calculate
It the transmission direction in multi-case data packet header microplate downstream and saves out to transmission direction register port_1 and omnidirection register
In port_2;Step 10 is executed again;
The transmission direction of all microplates is copied to biography from omnidirection register port_2 by step 8, current routing node
In defeated direction register port_1, thus according to the transmission direction in transmission direction register port_1 by body microplate transfer under
Swim routing node;Return again to step 2;
The transmission direction of all microplates is copied to biography from omnidirection register port_2 by step 9, current routing node
In defeated direction register port_1, thus according to the transmission direction in transmission direction register port_1 by tail microplate transfer under
Swim routing node;At the end of tail microplate transfer, current routing node deposits transmission direction register port_1 and omnidirection
Device port_2 is reset, and returns again to step 2;
When step 10, port_2 omnidirection register receive the input direction of current microplate, the biography of current microplate is judged
Whether defeated direction has existed, if having existed, weight arbitration request signal is sent to the secondary of itself by current routing node
Module is cut out, the corresponding output port of cross switch module is used to open, otherwise, directly stores the input direction of current microplate;
Step 11, return step 2.
In specific implementation, change destination node number detachable on multicast up path.For the network of bottom 6 × 6, press
It is divided into a region so multicast packets on up path at most there are two detachable destination node according to every 3 × 3.Experiment
With (1,1) for source node, destination node is (2,1), (2,2) and (2,4) respectively, as shown in Figure 3.Data packet is micro- by three heads
Piece, three individual microplates and a tail microplate composition, send a data packet from source node to destination node.Data under different situations
The delay result of packet is as shown in Figure 8.
When removable partial node only one when, the average retardation of data packet reduces 15.9%;When removable partial node has two
When a, the average retardation of data packet reduces 22%.It can thus be seen that the destination node that transmission is split on path is more, phase
Than in not splitting transmission, the arrival delay of data packet reduces more.
Under identical network condition, the adjacent destination node number in detachable path is set to 1,2,3,4.
Adjacent removable phrasing points' number is 1: experiment sets source node as (3,4), and destination node is (2,2), (3,3), (2,6)
(2,1), a data include four head microplates, three individual microplates and a tail microplate, as shown in Figure 4.
Adjacent removable phrasing points' number is 2: experiment sets source node as (3,4), and destination node is (2,2), (3,3), (4,4)
(2,1), a data include four head microplates, three individual microplates and a tail microplate, as shown in Figure 5.
Adjacent removable phrasing points' number is 3: experiment sets source node as (3,4), and destination node is (2,2), (3,3), (4,4)
(3,5), a data include four head microplates, three individual microplates and a tail microplate, as shown in Figure 6.
Adjacent removable phrasing points' number is 4: experiment sets source node as (3,4), and destination node is (2,3), (3,3), (4,4)
(3,5), a data include four head microplates, three individual microplates and a tail microplate, as shown in Figure 7.
Based on the experiment condition of above-mentioned setting, the delay result obtained is as shown in Figure 9.Detachable adjacent segments are counted from 1
It is a increase to 4 corresponding to delay reduce result be 22.7%, 31.5%, 41.4% and 50.3% respectively.It can be concluded that can
The adjacent segments points of fractionation are more, and the average retardation optimization of data packet is bigger.
Claims (2)
1. a kind of two-stage applied to stratification network-on-chip splits router, the stratification network-on-chip is the bottom by N × M
The upper layer network of layer two-dimensional network and L × S are constituted;1≤L < N, 1≤S < M;The bottom two-dimensional network is divided into L × S area;
Include an intermediate router and several ordinary routers in each area;The ordinary router includes five transmission directions;
The intermediate router includes five transmission directions and a upward transmission direction;The upper layer network is transmission route device;
The transmission route device includes five transmission directions and a downward transmission direction;The intermediate router and the transmission route
Device interconnects;It is characterized in that
QoS routing computing module is set by the decoding module in the intermediate router and several ordinary routers;It is described
QoS routing computing module includes classification decoding unit YM, unicast packet route computing unit SR, multicast upstream data Bao Lu
By computing unit UR, multicast downlink data packet route computing unit DR and output port deposit unit;Multicast upstream data Bao Lu
It include: two-stage split cells TS and generic uplink route computing unit RC by computing unit UR;The output port deposit unit
Include: m transmission direction register port_1 [m-1:0] and m omnidirection register port_2 [m-1:0];M is transmission side
To number;The transmission direction register port_1 [m-1:0] is used to store the transmission direction when front microplate;The full side
It is used to store the transmission direction of all microplates to register port_2 [m-1:0];
Intermediate router or ordinary router in any one area as current routing node and pass through the input module of itself
When receiving data packet, the input module of current routing node is sent in the data packet to the QoS routing computing module of itself
Microplate;
The classification decoding unit YM of current routing node judges received current microplate, if received is current
Microplate is head microplate, then the decoding unit YM that classifies judges the head microplate again;
If the head microplate is the head microplate of multicast packets;Then the transmission direction of the head microplate of the multicast packets is carried out
Judgement, if upward transmission direction, is then sent to multicast upstream data packet router-level topology for the head microplate of the multicast packets
Unit UR is for calculating transmission direction;If downward transmission direction, then the head microplate of the multicast packets is sent to multicast
Downlink data packet route computing unit DR is for calculating transmission direction;
If the head microplate is the head microplate of unicast packet;The head microplate of unicast packet is then sent to unicast packet road
By computing unit SR for calculating transmission direction;
If received current microplate is body microplate, the output port deposit unit is by the transmission direction of all microplates
It is copied in transmission direction register port_1 [m-1:0] from omnidirection register port_2 [m-1:0], current routing node
Input module passes body microplate according to the transmission direction of transmission direction register port_1 [m-1:0] in output port deposit unit
Transport to downstream routing node;
If received current microplate is tail microplate, the output port deposit unit is by the transmission direction of all microplates
It is copied in transmission direction register port_1 [m-1:0] from omnidirection register port_2 [m-1:0], current routing node
Input module passes tail microplate according to the transmission direction of transmission direction register port_1 [m-1:0] in output port deposit unit
Transport to downstream routing node;Then, the classification decoding unit YM of current routing node is sent to the output port deposit unit
Data packet end of transmission signal;Output port deposit unit data packet end of transmission signal based on the received, will work as
The output port deposit unit of preceding routing node is reset;
The two-stage split cells TS of multicast upstream data packet route computing unit UR multicast packets based on the received
Head microplate, the own coordinate of the current routing node is compared with the coordinate of destination node,
If two coordinates are identical, then it represents that current routing node is destination node, obtains transmission direction as local direction and protects
It deposits into the output port deposit unit;
If two coordinates are adjacent, then it represents that current routing node is adjacent node with destination node, and it is adjacent for obtaining transmission direction
Direction, the two-stage split cells TS judges whether the output port of current routing node is idle again, if idle, by adjacent side
To preservation into the output port deposit unit;If not idle, adjacent direction is not saved, and by the multicast packets
Head microplate transfer is to generic uplink route computing unit RC;
If two coordinates are not non-conterminous also identical, directly the head microplate transfer of the multicast packets to generic uplink is routed
Computing unit RC;The generic uplink route computing unit RC according to the intermediate router coordinate of current routing node location,
The transmission direction in multi-case data packet header microplate downstream is calculated, and is saved to the output port deposit unit of current routing node;
The head microplate of multicast downlink data packet route computing unit DR multicast packets based on the received, utilizes the road XY
The transmission direction in multi-case data packet header microplate downstream is calculated by algorithm, and is saved to the output port of current routing node and deposited
Unit;
The head microplate of unicast packet route computing unit SR unicast packet based on the received, utilizes XY routing algorithm meter
The transmission direction in unicast data packet header microplate downstream is calculated, and is saved to the output port deposit unit of current routing node;
When the omnidirection register port_2 [m-1:0] receives the input direction of current microplate, the biography of current microplate is judged
Whether defeated direction has existed, if having existed, the QoS routing computing module of current routing node will weight requests for arbitration letter
The arbitration modules of itself number are sent to, the corresponding output port of cross switch module is used to open, otherwise, directly storage is current micro-
The input direction of piece.
2. a kind of two-stage applied to stratification network-on-chip splits the method for routing of router, the stratification network-on-chip is
It is made of the upper layer network of the bottom two-dimensional network of N × M and L × S;1≤L < N, 1≤S < M;The bottom two-dimensional network is divided into
L × S area;Include an intermediate router and several ordinary routers in each area;The ordinary router includes five
Transmission direction;The intermediate router includes five transmission directions and a upward transmission direction;The upper layer network is to pass
Defeated router;The transmission route device includes five transmission directions and a downward transmission direction;The intermediate router and institute
State the interconnection of transmission route device;It is characterized in that using in any one area intermediate router or ordinary router as current
Routing node and when receiving data packet by the input module of itself, the method for routing is to carry out as follows:
Step 1, the setting intermediate router and several ordinary routers include: m transmission direction register port_
1 [m-1:0] and m omnidirection register port_2 [m-1:0];M is the number of transmission direction;The transmission direction register
Port_1 [m-1:0] is used to store the transmission direction when front microplate;The omnidirection register port_2 [m-1:0] is for depositing
Store up the transmission direction of all microplates;
Step 2, current routing node judge the current microplate in received data packet, if received is current
Microplate is head microplate, thens follow the steps 3;If received current microplate is body microplate, 8 are thened follow the steps;If received
Current microplate be tail microplate, then follow the steps 9;
Step 3, current routing node judge the head microplate again;If the head microplate is the micro- of multicast packets
Piece;Then follow the steps 4;If the head microplate is the head microplate of unicast packet;Then list directly is calculated using XY routing algorithm
The transmission direction in multicast data packet header microplate downstream is simultaneously saved to transmission direction register port_1 [m-1:0] and omnidirection register
In port_2 [m-1:0];Step 10 is executed again;
Step 4, current routing node judge the transmission direction of the head microplate of the multicast packets, if upward transmission
Direction thens follow the steps 5;If downward transmission direction, 7 are thened follow the steps;
The head microplates of step 5, current routing node multicast packets based on the received, by the current routing node from
Body coordinate is compared with the coordinate of destination node, if two coordinates are identical, then it represents that and current routing node is destination node,
Transmission direction is obtained as local direction and is saved to transmission direction register port_1 [m-1:0] and omnidirection register port_2
In [m-1:0];Step 10 is executed again;
If two coordinates are adjacent, then it represents that current routing node is adjacent node with destination node, and it is adjacent for obtaining transmission direction
Direction, and judge whether the output port of current routing node is idle, if idle, save adjacent direction to transmission direction and deposit
In device port_1 [m-1:0] and omnidirection register port_2 [m-1:0], then execute step 10;It is no to then follow the steps 6;If two
A coordinate is not non-conterminous also identical, then directly executes step 6;
Step 6, current routing node calculate under the microplate of multi-case data packet header according to the intermediate router coordinate of itself location
The transmission direction of trip is simultaneously saved into transmission direction register port_1 [m-1:0] and omnidirection register port_2 [m-1:0];
Step 10 is executed again;
The head microplate of step 7, current routing node multicast packets based on the received, is calculated more using XY routing algorithm
The transmission direction in multicast data packet header microplate downstream is simultaneously saved to transmission direction register port_1 [m-1:0] and omnidirection register
In port_2 [m-1:0];Step 10 is executed again;
The transmission direction of all microplates is copied to transmission direction deposit from omnidirection register by step 8, current routing node
In device port_1 [m-1:0], thus according to the transmission direction in transmission direction register port_1 [m-1:0] by body microplate transfer
To downstream routing node;Return again to step 2;
Step 9, current routing node copy to the transmission direction of all microplates from omnidirection register port_2 [m-1:0]
In transmission direction register port_1 [m-1:0], thus according to the transmission direction in transmission direction register port_1 [m-1:0]
By tail microplate transfer to downstream routing node;At the end of tail microplate transfer, current routing node is by transmission direction register
Port_1 [m-1:0] and omnidirection register port_2 [m-1:0] is reset, and returns again to step 2;
When step 10, the omnidirection register port_2 [m-1:0] receive the input direction of current microplate, judgement is current micro-
Whether the transmission direction of piece has existed, if having existed, weight arbitration request signal is sent to certainly by current routing node
The arbitration modules of body are used to open the corresponding output port of cross switch module, otherwise, directly store the input side of current microplate
To;
Step 11, return step 2.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710359177.4A CN107046500B (en) | 2017-05-19 | 2017-05-19 | A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710359177.4A CN107046500B (en) | 2017-05-19 | 2017-05-19 | A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107046500A CN107046500A (en) | 2017-08-15 |
CN107046500B true CN107046500B (en) | 2019-08-30 |
Family
ID=59547119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710359177.4A Active CN107046500B (en) | 2017-05-19 | 2017-05-19 | A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107046500B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039902B (en) * | 2018-07-24 | 2021-02-26 | 新华三技术有限公司 | Method and device for forwarding multicast message |
CN109150731B (en) * | 2018-09-19 | 2020-09-18 | 合肥工业大学 | Multicast packet connection circuit based on convolutional neural network and routing method thereof |
CN110351192B (en) * | 2019-08-15 | 2021-05-07 | 电子科技大学 | On-chip network oriented multi-level dynamic selectable composite routing control method |
CN114363245B (en) * | 2020-09-30 | 2024-04-26 | 北京灵汐科技有限公司 | Multi-core network-on-chip data transmission method, device, equipment and medium |
CN114844757B (en) * | 2022-02-24 | 2023-11-24 | 电子科技大学长三角研究院(湖州) | Network-on-chip design method for distributed parallel operation algorithm |
CN115665041B (en) * | 2022-11-18 | 2023-03-28 | 北京红山微电子技术有限公司 | Network-on-chip structure, data transmission method, electronic device, and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618673A (en) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | NoC routing method guaranteeing service quality |
CN104092615A (en) * | 2014-06-10 | 2014-10-08 | 西安电子科技大学 | Network on chip with network coding function, network topology of the network on chip, and route algorithm of the network topology |
CN104158738A (en) * | 2014-08-29 | 2014-11-19 | 中国航空无线电电子研究所 | Network-on-chip router with low buffer area and routing method |
CN105871742A (en) * | 2016-03-24 | 2016-08-17 | 合肥工业大学 | Adaptive router in NoC (network-on-chip) on basis of virtual output queue mechanism |
CN105893162A (en) * | 2016-03-29 | 2016-08-24 | 浙江大学 | Integration method of multiple medical information systems on the basis of automatic routing of message |
-
2017
- 2017-05-19 CN CN201710359177.4A patent/CN107046500B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618673A (en) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | NoC routing method guaranteeing service quality |
CN104092615A (en) * | 2014-06-10 | 2014-10-08 | 西安电子科技大学 | Network on chip with network coding function, network topology of the network on chip, and route algorithm of the network topology |
CN104158738A (en) * | 2014-08-29 | 2014-11-19 | 中国航空无线电电子研究所 | Network-on-chip router with low buffer area and routing method |
CN105871742A (en) * | 2016-03-24 | 2016-08-17 | 合肥工业大学 | Adaptive router in NoC (network-on-chip) on basis of virtual output queue mechanism |
CN105893162A (en) * | 2016-03-29 | 2016-08-24 | 浙江大学 | Integration method of multiple medical information systems on the basis of automatic routing of message |
Non-Patent Citations (2)
Title |
---|
"基于多路径路由片上网络的低功耗联合编码电路设计";杜高明等;《微电子学与计算机》;20170331;第34卷(第3期);全文 |
"针对路径故障与局部拥塞的 NoC 容错路由算法";欧阳一鸣等;《电子学报》;20160430;第44卷(第4期);全文 |
Also Published As
Publication number | Publication date |
---|---|
CN107046500A (en) | 2017-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107046500B (en) | A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip | |
CN105450555B (en) | A kind of method for building up of network-on-a-chip and network-on-chip communication link | |
Wu et al. | Improving routing efficiency for network-on-chip through contention-aware input selection | |
CN101834789B (en) | Packet-circuit exchanging on-chip router oriented rollback steering routing algorithm and router used thereby | |
US9148298B2 (en) | Asymmetric ring topology for reduced latency in on-chip ring networks | |
CN105871742A (en) | Adaptive router in NoC (network-on-chip) on basis of virtual output queue mechanism | |
CN104158738A (en) | Network-on-chip router with low buffer area and routing method | |
CN102546417B (en) | Scheduling method of network-on-chip router based on network information | |
CN104683242B (en) | A kind of topological structure and method for routing of two dimension network-on-chip | |
CN105007226A (en) | Multicast router based on package and circuit switching technology and working mode thereof | |
CN109561034A (en) | Three-dimensional network topological structure and its routing algorithm | |
CN105871730A (en) | Novel compact, efficient and fast on-chip network router based on network coding | |
Effiong et al. | Scalable and power-efficient implementation of an asynchronous router with buffer sharing | |
Parandkar et al. | Performance comparison of XY, OE and DY Ad routing algorithm by load variation analysis of 2-dimensional mesh topology based network-on-chip | |
CN106209518B (en) | One kind being based on the dynamic steering routing algorithm of " packet-circuit " switching technology | |
CN109150731A (en) | Multicast packet connection circuit and its method for routing based on convolutional neural networks | |
Chen et al. | Star-type architecture with low transmission latency for a 2D mesh NOC | |
Kumar et al. | A survey for silicon on chip communication | |
Lin et al. | Power and latency efficient mechanism: a seamless bridge between buffered and bufferless routing in on-chip network | |
Nosrati et al. | Regional selection mechanism for traffic-balanced adaptive routing algorithms in mesh-based NoC architectures | |
Mondal et al. | Broadcast mechanism based on hybrid wireless/wired noc for efficient barrier synchronization in parallel computing | |
Sun et al. | Design and implementation of the wormhole virtual channel NoC router | |
Zhang et al. | A cellular NoC architecture based on butterfly network coding (CBNoC) | |
CN100461748C (en) | Method for interconnecting switched network route directly | |
So et al. | Speculative selection in adaptive routing on interconnection networks |
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 |