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 PDF

Info

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
Application number
CN201710359177.4A
Other languages
Chinese (zh)
Other versions
CN107046500A (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.)
HEFEI GONGDA XIANXING MICROELECTRONIC TECHNOLOGY Co Ltd
Hefei University of Technology
Original Assignee
HEFEI GONGDA XIANXING MICROELECTRONIC TECHNOLOGY Co Ltd
Hefei University of 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 HEFEI GONGDA XIANXING MICROELECTRONIC TECHNOLOGY Co Ltd, Hefei University of Technology filed Critical HEFEI GONGDA XIANXING MICROELECTRONIC TECHNOLOGY Co Ltd
Priority to CN201710359177.4A priority Critical patent/CN107046500B/en
Publication of CN107046500A publication Critical patent/CN107046500A/en
Application granted granted Critical
Publication of CN107046500B publication Critical patent/CN107046500B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding 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

A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip
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.
CN201710359177.4A 2017-05-19 2017-05-19 A kind of two-stage fractionation router and its routing algorithm applied to stratification network-on-chip Active CN107046500B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 &#34; packet-circuit &#34; 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