Stay In Your Lane: A NoC With Low-overhead Multi-packet Bypassing

1y ago
12 Views
2 Downloads
1.57 MB
14 Pages
Last View : 29d ago
Last Download : 3m ago
Upload by : Azalea Piercy
Transcription

Stay in your Lane: A NoC with Low-overhead Multi-packet BypassingHossein Farrokhbakht , Paul V. Gratz† , Tushar Krishna‡ , Joshua San Miguel§ , Natalie Enright Jerger of Toronto, † Texas A & M, ‡ Georgia Institute of Technology, § University of Wisconsin-MadisonEmail: h.farrokhbakht@mail.utoronto.ca, † pgratz@tamu.edu, ‡ tushar@ece.gatech.edu,§ jsanmiguel@wisc.edu, enright@ece.utoronto.ca UniversityAbstract—NoCs are over-provisioned with large virtualchannels to provide deadlock freedom and performance improvement. This use of virtual channels leads to considerablepower and area overhead. In this paper, we introduce a novelflow control, called FastFlow, to enhance performance andavoid both protocol- and network-level deadlocks with animpressive reduction in number of virtual channels comparedto the state-of-the-art NoCs. FastPass promotes a packet totraverse the network bufferlessly; the packet bypasses therouters to reach its destination. During the traversals, thepacket is guaranteed to make forward progress every cycle. Asa result, such a packet cannot be blocked by congestion nordeadlock. Promoting more packets to FastPass will providehigher throughput. To this end, FastPass allows multiplepackets to be upgraded as FastPass packets simultaneously.To avoid any collision between these packets, FastPass provides multiple pre-defined non-overlapping lanes. Each laneis allowed to propagate only one FastPass packet. In a timedivision multiplexed way, each router gets a chance to upgradeits packets to the FastPass packets and then transfer themvia the pre-defined non-overlapping lanes. FastPass not onlyprovides high throughput but also resolves both protocoland network-level deadlocks. Compared to the state-of-theart, FastPass presents a 1.8 increase in throughput forsynthetic traffic, 46% improvement in average packet latencyfor real applications, and 40% reduction in power and areaconsumption.I. I NTRODUCTIONEfficient communication in many-core processors is critical to overall performance. Latency is traditionally reduced by avoiding router pipeline stages through bypassing.Throughput is traditionally improved by increasing bufferingand virtual channels (VCs) to reduce head of line blocking.Efficiently bypassing multiple routers often breeds complexity. Increasing buffering contributes non-negligibly to routerarea and power consumption. In this paper, we proposea time-division-multiplexed (TDM) approach to enablingbypass paths that improves both latency and throughputwhile reducing the overall buffering of the router comparedto the baseline.Until recently, conventional routers had a large minimumnumber of buffers that they had to support. The minimumnumber of buffers is typically driven by correctness requirements imposed by the coherence protocol; messagesfrom different classes must be separated into different virtual networks (composed of buffers) to avoid protocol-leveldeadlock. Recent work [13], [24] demonstrates alternativedeadlock-freedom solutions that eliminate the need for virtual networks (VNs). However, eliminating VNs entirelyhurts throughput. Can we design a new flow control mechanism such that we reduce buffering requirements while improving performance and also providing deadlock freedom?Flow control optimizations have been proposed to improve throughput and latency [19], [20]. Circuit switching isa form of flow control that bypasses the router pipeline [11].These flow control techniques often require the exchange ofcredits or handshaking to ensure that a path is available. TheRunahead NoC [21] proposes a second, lightweight networkthat speculatively delivers packets but will drop them midtransmission if there is a conflict. Rather than pay the areacost of an extra network, we propose to use one network todeliver fast and regular packets. By carefully designing analgorithm that governs which packets are locally selected bywhich routers and the path they must follow, we can reducelatency and improve throughput.The time-division multiplexed, non-overlapping pathsmust be determined a priori. As NoCs scale to increasingnumbers of cores, attempting to coordinate communicationacross multiple routers becomes undesirable. This problemis well known in adaptive routing; obtaining up-to-datecongestion information is challenging and has motivatedregion-based approaches [15], [22]. Similarly in flow control, coordination such as to establish a circuit-switchedpath increases latency by requiring a setup phase. To avoidany global coordination or setup phase, our design, calledFastPass, has a predetermined algorithm to select whichrouter can promote a packet to a fast path. The algorithmmoves from router to router in a time-division multiplexedway. Dynamically dependent on the load, packets reach theirdestinations as fast or regular packets. But only allowing onerouter to use a fast path at a time would not help performanceas the network scales. Thus, we propose a novel scheme topartition the network such that non-overlapping bypass pathsare enabled at each step for multiple routers. This allows usto provide significant throughput enhancement and deadlockfreedom at the same time.This paper makes the following primary contributions: Proposes a novel flow control, FastFlow to route packets bufferlessly across non-overlapping paths; as theload increases, FastFlow kicks in so that the promotedpackets can avoid congested areas.

Proves that our FastPass also enables deadlock freedom by promoting blocked packets; Table I provides acomparison between FastPass and other deadlockfreedom techniques.Shows that high throughput can be achieved with lowcomplexity and low buffering requirements.Compared to the state-of-the-art, FastPass providesa 1.8 increase in throughput for synthetic traffic,46% improvement in average packet latency and 9%reduction in execution time for real applications, and40% reduction in power and area consumption.II. BACKGROUNDDeadlock Freedom: Providing correctness is of utmostimportance in a multiprocessor interconnection network. ANoC design guarantees a cornerstone of correctness by beingfree of deadlock. A deadlock happens when a set of agentssharing a set of resources wait indefinitely to acquire theresources in a cyclic dependence. Within a NoC, packetsare the set of agents while buffers are the set of resourcesstoring incoming packets as they move in the NoC toreach their destinations. In the interconnection network, twotypes of deadlocks may emerge: protocol- and network-leveldeadlocks. In both cases, packets stall indefinitely causinga system failure. Maintaining deadlock-free communicationimposes overheads in the form of VCs, performance issuesand/or hardware complexity.Implementing cache coherence on the NoC causes atomiccoherence transactions to be divided into several non-atomicpackets. If these packets interleave with each other whilesharing the same buffers, protocol-level deadlock can happen. For example, if two cache controllers issue a burstof coherence requests using up all of the buffers in thenetwork, both processors will be stalled awaiting responses;thus they stop processing requests packets. As responsesuse the same buffers as requests, the remote responsescannot make forward progress leading to a protocol-leveldeadlock. A network-level deadlock happens when in acyclic dependence chain, multiple packets occupy bufferswhile awaiting other occupied buffers to become free. Sincepackets do not give up the buffers they are residing in,they will wait forever. This situation happens when adaptiverouting is employed; adaptive routing allows cycles to formsince packets can be routed in any directions.III. FastPassAnalogy: As an analogy for FastPass, consider a Disneyland park; to enjoy the popular rides, people need towait in a long line. However, Disneyland provides FastPassservice by which people can skip the long line minimizingthe amount of waiting time and maximizing the numberof rides. In a given fixed time slot, people may use theFastPass for a few rides. In the next time slot, they mayuse the FastPass service again for other rides. During eachtime slot, taking the rides through the regular pass is alsoavailable. Similarly, FastPass provides recurrent fixedtime slots. In a given time slot, only a subset of routersmay enable FastPass service simultaneously. When the timeslot elapses, another set of routers provides FastPass service.Each FastPass service guarantees a single packet reaches itsdestination whether the downstream router has enough spaceor not.High-level idea: To provide throughput enhancement anddeadlock-free communication, we use a predetermined algorithm enabling FastPass service for packets. The FastPassservice guarantees that packets make forward progress everycycle. Each router may use the FastPass service to promoteits packets. The upgraded packets then traverse the FastPasspath bufferlessly to reach the destinations. To maximize thebenefit of the FastPass service, we let a subset of routersuse the FastPass service at the same time by providingrecurring fixed time slots. To avoid collision between theFastPass packets, we use pre-defined non-overlapping bypasspaths which cover all routers in the network. In a giventime slot, each router using FastPass service has access tosome pre-defined paths over which the FastPass packetstraverse bufferlessly to their destinations. In the next timeslot, the routers have access to another set of pre-definedpaths over which the packets can reach their destinations.This process continues until the routers have access to alldestinations in the network. Once a set of routers completethis procedure, in a statically predetermined order, anotherset of routers may enable FastPass service. In turn, all routersin the network will have a chance to upgrade packets toFastPass packets. The beauty of this approach is that itprovides significant throughput enhancement and resolvesboth protocol- and network-level deadlocks. This is becausethat the packets traversing the NoC via the FastPass serviceare guaranteed to make forward progress every cycle.A. DefinitionsWe use following terminology: Partition: A partition includes a set of routers. Thereare multiple independent partitions in the network. FastPass-Lane: A path which covers one partition inthe network. At any given time, there are multiple nonoverlapping FastPass-Lanes in the network. Prime Router: Prime routers are the set of routers(one per partition) that are currently allowed to usethe FastPass-Lanes. Each FastPass-Lane provides anisolated path from each prime router to the routers ofa single partition. FastPass-Packet: A packet picked by the prime routerto traverse bufferlessly. At any given time, there isonly one FastPass-Packet traversing through a FastPassLane. Each prime router selects a FastPass-Packetwhose destination lies in the currently covered partition.

Table I: Comparison of different deadlock freedom solutions.ProposedSolutionsTurn Restrictions [7]Escape VCs [8]–[10], [14]Virtual Networks [23]SPIN [31]SWAP [26]DRAIN [24]Pitstop [13]Our Method: FastPassNoDetectionProtocol DeadlockFreedomNetwork DeadlockFreedomFull sroutingXXX7XXXX77X77XXXXX7XXXXX77 7XXXXX7777777X7 7 7 7 7 7 XX7 XX7 X7 7 XXXXX77XX* Must use multiple VNs to avoid protocol-level deadlock.** No full path diversity within the escape VC.*** DRAIN can work with no VNs; however, it requires a large amount of buffer which is non-minimal [13].**** Cannot support adaptive routing.***** As the network size increases, the time for detecting/resolving deadlock increases. FastFlow: A new flow control scheme allowingFastPass-Packets to make forward progress bufferlesslyevery cycle regardless of credit availability.Regular Pass: A credit-based flow control which isused when packets do not use the FastFlow control.Regular Packets: Packets using regular pass to makeforward progress.B. FastFlowThe goal of this work is to design a high-throughput andlow-cost solution to minimize the head of line blockingand provide network- and protocol-level deadlock freedom in NoCs. To this end, we propose an efficient flowcontrol called FastFlow. Packets are routed using eitherFastFlow or regular pass flow (i.e., credit-based) control.A FastPass-Packet traversing via FastFlow takes precedenceover regular packets. A FastPass-Packet reaches its destination bufferlessly using a minimal path; no misrouting isemployed. As a result, buffer turnaround time is eliminatedincreasing throughput. To maximize throughput, FastPassallows multiple FastPass-Packets to traverse the networkat any given time. However, to guarantee no collisionsbetween FastPass-Packets, FastPass creates multiple nonoverlapping paths (FastPass-Lanes) allowing a single routeraccess to each partition in a time-multiplexed way. Thuslinks of each partition only propagate one FastPass-Packetin a given slot time. Section III-C1 demonstrates howFastPass guarantees multiple FastPass-Packets with nonoverlapping paths.C. Detailed Algorithm1) TDM-based Non-overlapping FastPass-Lanes:FastPass allows multiple FastPass-Packets to traverse thenetwork simultaneously to maximize throughput. However,since the FastPass-Packets traverse bufferlessly, they mustnot collide with each other. To guarantee no collisionbetween FastPass-Packets, FastPass creates multiplepre-defined non-overlapping paths in the network, calledFastPass-Lanes. This problem is similar to maintainingnon-interference in NoCs. Non-interference means thatpackets from one application should have no effect on thedelivery of packets from other applications [36]. Here primerouters are equivalent to the applications. The goal is toimplement such a non-interference approach that guaranteesno collision between FastPass-Packets.To this end, FastPass breaks the topology into P separate partitions; there is one prime router in each partition.This spatial partitioning provides the foundation for ourcollision-free FastPass-Packet traversals. Assuming a meshtopology, P could be the number of columns/rows. An efficient way to support multiple FastPass-Lanes with no overlap is by time-multiplexing the physical links. FastPassprovides recurrent fixed time slots during which the linksof each partition are only permitted to propagate a singlepacket from one prime router. When the time slot elapses,the links of each partition handle the FastPass-Packets ofa different prime. This rotation continues until each primerouter has a FastPass-Lane with every other router. The timeneeded for a such coverage is called a phase. Each phaseconsists of multiple time slots. In other words, there existsa fixed time slice for each phase where every prime routerwould have the opportunity to have a FastFlow with everyother router in the network. In the next phase, the next setof prime routers follow the same procedure. Note that allrouters along a single partition are possible destinations sothe number of FastPass-Lanes a prime router has to rotatethrough is very limited and scales gracefully.This time-multiplexing scheme guarantees that the pathused by each prime router is completely independent of theother primes’ paths. As a result, the packets of each primecannot collide with others providing collision-free traversal.As an example, Fig. 1 demonstrates the non-overlappingFastPass-Lanes in a 3 3 mesh network.The prime router within each partition is chosen contiguously meaning that the prime ability is given to thenext adjacent router within the partition after finishing eachphase. If the current prime is located in the last row, therouter in the first row of the partition will be the next primerouter. Note that the current prime router in the last row

2R0 R0 R0R1 R1 RR1 2R0 R0 R01 R1 R21R2 R2 R0R2 R R02R0 RR0 1R0 RR01R1 RR12R1 RR12R2 R2 R0R2 R R02R0 RR0 1R0 RR01R1 RR12R1 RR12R2 R2R2 R2R3 R3 R3R4 R4 RR45R3 R3 R34 R4 RR54R5 R5 R3R5 R R35R3 RR34R3 RR34R4 RR45R4 RR45R5 R5 R3R5 R R35R3 RR3 4R3 RR34R4 R45R4 RR45R5 R5R5 R5R6 R6 R6R7 R7 RR78 R8 R8 R6 R6R6 R6 R67 R7 RR87 R8 R8R6 R6P0 P0 P0 P1 P1 PP1 2 P2 P2P0 P0P0 P0 PP0 1 P1 P21 P2 PP2 0 P0(a) T KRR6 7RR67P0P1P0P1(b)R7 RR78R7 RR78P1 PP12P1 PP1T 2 K2R8R8P2P2R8 R6R8 R6P2 P0P2 P0R6R6P0P0RR67RR6 7P0P1P0P1R7 R78R8 R8R7 RR7R8 R88P1 PP12P2 P2P1 PP1P2 P22(c) T 3 KR0 R0 R0R1 R1 RR1 2R0 R0 R01 R1 R21R2 R2 R0R2 R2R0R0 RR0 1R0 RR01R1 RR12R1 RR12R2 R2 R0R2 R2 R0R0 RR0 1R0 RR01R1 RR12R1 RR12R2 R2R2 R2R3 R3 R3R4 R4 RR45R3 R3 RR34 R4 RR54R5 R5 R3R5 R5RR3 RR34R3 RR34R4 RR45R4 RR45R5 R5 R3R5 R5 R3R RR3 4R33 RR34R R45R44 RR45R R5R55 R5R7 RR78R7 RR78P1 PP12P1 PP12T 5 KR8 R8 R6R8 R8 R6P2 P2 P0P2 P2 PR RR67R66 RR67P P0P1P00 P0P1R RR78R R8R77 RR7R88 R88P PP12P P2P11 PP1P22 P22(f) T 6 KR6 R6 R6R7 R7R6 R6 RR67 R7P0 P P0 P1 P01P0 P0 PP0 1 P13RR78 R8 R8 R6 R6RR87 R8 R8R6 R6PP1 2 P2 P2P0 P0P1 P2 P2P2P0 P0RR6 7RR67P0P1P0P1(e)(d) T 4 K0R0R1R2R0R1R2R0R0R1R1 R2R2R0R0 R1R1 R2R2R0R0 R1R1 R2R2R3R4R5R3R4R5R3R3R4R4 R5R5R3R3 R4R4 R5R5R3R3 R4R4 R5R5R6R7R8R6R7R8R6R6 R7R7 R8R8R6R6 R7R7 R8R8R6R6 R7R7 R8R8P0P1P2P0P1P2P0P0P1 P2P2P0P0P1 P2P2P0P0P1 P2P2(g) T 7 KP1P1(h) T 8 KP1(i) T 9 KFigure 1: TDM-based non-overlapping paths: To ensure no collisions between packets, FastPass breaks the topology into P separate partitions (i.e., 0,1 and 2) each of which has one prime router (i.e., green, orange and blue); First phase (a, b, c): (a) In the first K cycles, the green prime router can coverthe routers located in P0 : R0 , R3 , and R6 ; the orange one has access to the P1 routers: R1 , R4 , and R7 ; the blue prime router has an isolated path tothe P2 routers: R2 , R5 , and R8 . When the first time slot elapses, the links of each partition switches to handle the packets of other primes; (b) Links ofP0 , P1 , and P2 propagate the packets from blue, green and orange primes, respectively. (c) In this step, the links of P0 , P1 , and P2 handle packets fromorange, blue and green primes, respectively. this switching continues until each prime has covered all the routers in the network, indicating the completionof the phase. Second phase (d, e, f) and third phase (g, h, i) follow the same approach.must send the signal N cycles ahead of the phase schedulefor a N N mesh to account for the N hops needed for thesignal to reach the first row from the last row. This switchingcontinues to give each router the opportunity to be the prime.Thus, the completion of each phase requires a fixed numberof steps which depends on the number of partitions. Eachstep also needs a fixed number of cycles (K) to complete.This time slot is set at design time.12) FastPass for throughput enhancement: Each primerouter has multiple chances to provide FastFlow traversalfor its packets over the FastPass-Lanes. Each FastPass-Laneprovides an isolated path from each prime router to therouters of one single partition. For each FastPass-Lane, eachprime router examines each input buffer in a round-robinfashion (e.g., injection buffers, South, N orth, East andW est) to see if there is a packet at the head of inputbuffer destined for a router located in the correspondingpartition. Once such a packet is found for the input buffer,1 Qn5 discusses how this value is pre-computed.Req. QRes. QEjection BufferReq. QRes. QInjection BufferThe prime routerselects A as the FastPass-PacketA2R01Request QueueResponse QueueR13R24A Req. QRes. QEjection BufferReq. QRes. QInjection Buffer1APrime RouterRegular RouterFastPass-LaneReturning PathSequence NumberFastPass-PacketFigure 2: The prime router (i.e., R0 ) upgrades a request packet (A) to aFastPass-Packet so that it can traverse the current FastPass-Lane to reachthe intended destination (i.e., R2 ). On the arrival, the packet can be ejectedto the respective ejection queue.the prime router upgrades it to the FastPass-Packet bysending it through FastFlow to reach the destination. Uponarrival at the destination, the FastPass-Packet is ejected bythe network interface assuming the respective ejection queue

The prime routerdrops C making a room for AAThe prime routerReq. Q C6 selects A as the FastPass-PacketRes. Q1R0Ejection BufferA5Req. QThe request queue is2Res. Qreserved for AR1Injection Buffer4B Req. Q3Res. QR2Ejection BufferReq. QRes. QInjection BufferRequest QueueResponse Queue1ABPrime RouterRegular RouterFastPass-LaneReturning PathSequence NumberFastPass-PacketRegular PacketFigure 3: When the ejection queue of the destination router is full: Theprime router (i.e., R0 ) selects a request packet (A) as a FastPass-Packet.However, it faces a full ejection queue when it reaches the destination (i.e.,R2 ). In this step, the destination router reserves the intended queue for A.A goes back to the prime router to reside in the request injection queue ofthe prime. However, the queue is full with an injection packet (i.e., C). Theprime router drops C to make a room for the rejected FastPass-Packet (A).Note that if the request injection queue is not full, no dropping is required.is not full (Fig. 2).2 Thereafter, the prime router examinesthe remaining input buffers in a round-robin manner for thecurrent FastPass-Lane. Note that the time slot (K) to useof each FastPass-Lane is fixed and large enough to give theprime router sufficient time for checking all the input buffersand sending out the FastPass-Packets over the path.3 In thenext time slot, when the prime router has access to anotherFastPass-Lane, the router follows the same procedure. Wheneach phase elapses, the prime status moves to the next setof pre-defined routers. Since the time slot (K) is fixed,all the new prime routers are enabled simultaneously. Thisprocedure continues indefinitely through every router.Qn1: Does a packet need to wait for the desired FastPassLane to be available? As mentioned in Sec. III-C1, eachprime router eventually covers all routers in the networkduring each phase. If the current FastPass-Lane does notcover the intended destination for a packet, the packet needseither to wait until the intended FastPass-Lane becomesavailable or can traverse the router through the regular pass.Note that the regular traversal is always available unlessthere is a deadlock. In the case of deadlock, the intendedFastPass-Lane eventually becomes available making forwardprogress for the deadlocked packet. Note that in the absenceof deadlocks during low load, packets do not wait for aFastPass-Lane to become available; FastPass kicks in asload increases.3) FastPass as Deadlock Removal with No Virtual Networks: Apart from the throughput enhancement,FastPass provides both protocol- and network-level deadlock freedom. Deadlock freedom is guaranteed because of2 Sec.III-C4 and Qn 4 discuss when ejection queues is full.3 See Qn 5 for more details.the following: (1) eventually each router gets a chance tobe upgraded to a prime router, (2) a prime router canupgrade the packet at the head of each input buffer to aFastPass-Packet, regardless of its message type, (3) wheneach time slot elapses, the prime router has access to adifferent FastPass-Lanes until it covers all routers in thenetwork. As a result, the movement of all packets along thedesired FastPass-Lane is guaranteed. Therefore, FastPassensures that any packet of any message class will eventuallyhave the opportunity to reach its destination router throughthe FastPass. Sec. III-D provides a detailed proof ofcorrectness. In addition, FastPass allows multiple primerouters in the network–one per partition. Allowing multipleprime routers results in resolving multiple protocol-leveldeadlocks simultaneously.4) Dynamic Bubble: Although the prior work has shownthat the ejection queues are significantly underutilized andthe ejected packets are consumed almost immediately [13],we need to consider what would happen if the ejection queueis full. When the FastPass-Packet arrives at the destinationrouter, it is possible that the respective ejection queue is full,preventing the FastPass-Packet from being ejected. Sincethe main goal of this work is increasing throughput, aprime router increases the credit for the upstream router(i.e., indicating available slot) as soon as a FastPass-Packetdeparts the router. Therefore, it is not possible for a FastPassPacket facing a full ejection queue (at the destination) toreturn to its prime router and reoccupy its previous bufferentry. To handle this challenge, we use a subtle droppingapproach providing a bubble within the prime router. In thisapproach, some packets are potentially droppable.To make the bubble, the prime router drops the injection request packet residing in the request injection queue,making an empty entry for the rejected FastPass-Packet(Fig. 3).4 Note that if the request injection queue is not full,no dropping happens. Thus the FastPass-Packet is routedback to its prime router through the minimal returningpath and then resides in the recently created, available slot.Note that collision is not possible between the FastPassLanes and the returning paths as shown in Fig. 4. Also thedestination router pro-actively reserves the intended queueof the ejection buffer for the rejected FastPass-Packet oncethe intended ejection queue gets free space.5 Not until the rejected FastPass-Packet resides in the intended ejection queueat the destination router, are other packets allowed to use it.Therefore, using the dropping and reservation approaches,the FastPass-Packet is eventually guaranteed to be acceptedby the intended destination router. The proposed droppingapproach has the following distinctive characteristics settingit apart from other methods [17], [33]:4 If the rejected FastPass-Packet is a data packet, then multiple requestinjection packets might be dropped.5 Qn 4 discusses that the ejection queues can never be full indefinitely.

R0R1R2R0R1R2R3R4R5R3R4R5R6R7R8R7R81212Partitions: 0(a) First K CyclesR6Partitions: 0(b) Second K CyclesR0R1R2R3R4R5R6R7R8Partitions: 012(c) Third K CyclesFigure 4: The FastPass-Lanes and the returning paths when the routerslocated on the diagonal are the prime routers. Dotted lines represent thereturning paths for FastPass-Lanes. There is no overlap between theseminimal paths.1) The dropping happens when a FastPass-Packet encounters a full ejection queue at the destination routerand a full request injection queue at the prime router.The likelihood of such a sequence of events is rare.2) Since only the injection request packet is dropped, itcan simply be regenerated using the information provided by the miss status handling registers (MSHRs)without changing the coherence protocol or usingextra buffers. Note that the MSHRs keep track ofwhat misses a core is waiting for. Since the droppedpacket’s MSHR is local, the router does not have tocommunicate with a distant node to regenerate thepacket. Hence the dropped request packet can be easilyregenerated.3) Last but not least, the dropped request packet has notleft the source router yet. Therefore, this dropping willnot hurt performance.Qn2: Is it possible for the rejected FastPass-Packet,residing in the request injection queue of the primerouter, to be dropped to make a room for a new rejectedpacket? No: after that the rejected FastPass-Packet occupiesthe request injection queue of its prime router, it has twooptions to make forward progress: traverse as a regularpacket or traverse as a new FastPass-Packet. For the latter,there are two possible scenarios:1) The rejected packet was the last packet that the primerouter upgraded; thus the router is not prime during thecurrent phase. In this scenario, the packet needs to waituntil the router turns into the prime again if a regulartraversal is impossible. To ensure that we never dropa rejected FastPass-Packet, in a given FastPass-Lane,each prime router always starts examining the injection buffers first (starting with the request injectionqueue) and then moves on to the remaining inputbuffers.2) The router is still prime and is going to examineother remaining input buffers for the current FastPassLane. In other words, the prime router has checkedthe injection buffer and it is the turn of the otherinput buffers. To avoid dropping the previous rejected packet, the previous rejected packet pro-activelymoves to the empty slot which is available whenthe new FastPass-Packet departs the prime router. Toprovide such a transfer, the router microarchitectureincludes connections between the injection buffer andall input buffers.6Therefore, FastPass guarantees dropping will onlyoccur if needed for the injection request packets, which havenot left the source router yet. Both of these scenarios areshown in Fig. 5.Qn3:What if the ejection port is busy when the FastPassPacket arrives? This situation happens when the FastPassPacket arrives at the destination router while another packetis in the middle of ejection process. There are two scenariosfor this case:1) The first scenario is that the respective ejection queueof the destination router was reserved for the FastPassPacket. This means that the FastPass-Packet faced afull ejection queue at the destination router causingthe intended queue to be reserved for the packet. Thepacket reaches the destination again while anotherpacket is being ejected to a different queue (not thereserved one). In this case, the FastPass-Packet isgiven higher priority over the ongoing ejection; theongoing ejection is stalled and the FastPass-Packet isejected to the respective ejection queue. Not until theFastPass-Packet gets ejected from the network can thecurrent ejection packet use the ejection port. Sincethe intended ejection queue for the FastPass-Packetwas reserved before, it is impossible that the stalledejection packet is aiming for the same queue.2) The second scenario happens when the respective ejection queue of the destination router was not reservedbefore. In other words, this is the first time that theFastPass-Packet arrives at the router. In this case, asdiscussed in Sec. III-C4, while the FastPass-Packetgoes

NoC design guarantees a cornerstone of correctness by being free of deadlock. A deadlock happens when a set of agents sharing a set of resources wait indefinitely to acquire the resources in a cyclic dependence. Within a NoC, packets are the set of agents while buffers are the set of resources storing incoming packets as they move in the NoC to

Related Documents:

used: LA Taq (lane 3), Q-BioTaq (lane 4), Vent Exo (lane 5), Sequitherm (lane 6), Deep Vent Exo (lane 7), ThermalAce (lane 8), Thermus (lane 9), and Taq (lane 10). be due to template independent extension of the fully extended strand by one or a few

Lane Keeping System (Lane Assist)* When moving above 37 mph, the available Lane Keeping System (Lane Assist) can sense if you start to drift into another lane without using the turn signal. Within the limits of the system, Lane Assist can help keep you in the current lane when lane

lane 47: jay read -saylorsburg, pa (26 years) lane 49: michael morgan -cleveland, oh (24 years) lane 53: robert thomas-sun valley, nv (23 years) lane 54: michael ascunsion -santa clara, ca (23 years) lane 58: justin jordan -fargo, nd (20 years) lane 19: dave rasmus -minneapolis, mn (27 years)

When a bike lane intersects with a one way street, or where right turns are prohibited, the bike lane is solid all the way to the intersection. (e.g. bike lane with parking; intersection with 1-way arterial street) www.bicyclinginfo.org Bike Lane Design Guide 3 A new bike lane is stripped on Lincoln.

STAY DC ERA Program - Tenant Application User Guideline 1 . MAIN WEBSITE: stay.dc.gov CONTACT CENTER: 1 (833) 4-STAYDC (833-478-2932) . for the STAY DC Emergency Rental Assistance (ERA) Program. STAY DC ERA Program - Tenant Application User Guide 5 Once logged into the portal, you will be presented with a Welcome to the STAY DC Program

HIGH DENSITY POLYETHYLENE (HDPE) PIPE Lane provides the complete product line to meet all your HDPE drainage needs - the full range of diameters, options for standard perforated patterns, and custom fabricated fittings. Lane's HDPE pipe offerings can meet all the subsurface drainage demands of your site, building, roads, and pavements.

LANE MAINTENANCE Cleaners LANE DYNAMX - LDX Elite LDX Elite HD is a high quality lane cleaner which has been the favourite of Family & Entertainment Centers for many years. Suitable for all lane maintenance machines. It can also be used as an all-purpose cleaner in other areas of your bowling center. Specifications Packaging 2 x 2.5 Gallon Art .

Getting Started SIDRA 6.docx iii. Slip/Bypass (Low Angle): a turn lane that bypasses the circulating lanes at a low angle, usually separated by an island, and has an exclusive lane on the RAB exiting leg c. Lane Control: select Giveway/Yield d. Slip/Bypass Lane Control: (select only if a slip lane is present) i.