Bidirectional Arbiter Design of Round-Robin Arbiters r

INPUT-BUFFERED SWITCHES 68 Fig. 3.14 Central controller for RRGS protocol. w x The average delay of RRGS, D , is approximately given as 30 RRGS 1 y prN N D s q . 3.1 Ž . RRGS 1 y p 2 The price that RRGS pays for its simplicity is the additional pipeline delay, which is on average equal to Nr2 time slots. This pipeline delay is not critical for the assumed very short packet transmission time. Smiljanic et al. ´ w x 30 showed that RRGS provides better performance than iSLIP with one iteration for a heavy load. Ž . Smiljanic also proposed so-called weighted RRGS WRRGS , which guar- ´ w x antees prereserved bandwidth 31 , while preserving the advantage of RRGS. WRRGS can flexibly share the bandwidth of any output among the inputs.

3.3.6 Design of Round-Robin Arbiters r

r r r r Selectors A challenge to building a large-scale switch lies in the stringent arbitration time constraint for output contention resolution. This section describes how to design the RR-based arbiters.

3.3.6.1 Bidirectional Arbiter

A bidirectional arbiter for output resolution control operates using three output-control signals, DL, DH, and UH as w x shown in Figure 3.15 10 . Each signal is transmitted on one bus line. DL and DH are downstream signals, while UH is the upstream signal. The three signal bus functions are summarized as follows: 䢇 DL: Selects highest requested crosspoint in group L. 䢇 DH: Selects highest requested crosspoint in group H. 䢇 UH: Identifies whether group H has request or not. SCHEDULING ALGORITHMS 69 Ž . Fig. 3.15 Block diagram of the bidirectional arbiter. 䊚1994 IEEE. INPUT-BUFFERED SWITCHES 70 TABLE 3.2 A Part of the Logic Table of the Bidirectional Arbiter Level Combination next a a DL DH UH GI ACK GI H H H H L L H H H L L L H H L H L H H H L L L H L H H H L H L H H L L H L H L H L H L H L L H L H L H H H L H L H L L L Ž . H L L H H L xp4 case 1 in Fig. 3.15 H L L L L H L L H H H L Ž . L L H L L L xp1 case 1 in Fig. 3.15 L L L H H L Ž . L L L L H L xp1 case 2 in Fig. 3.15 a Group Indicationᎏindicating which group the crosspoint belongs to. The arbitration procedure can be analyzed into two cases in Figure 3.15. Case 1 has group H active or both L and H active. In this case, the highest request in group H will be selected. Case 2 has only group L active. In that case, the highest request in group L will be selected. In case 1, the DH signal locates the highest crosspoint in Group H, xp4, and triggers the ACK signal. The UH signal indicates that there is at least one request in group H to group L. The DL signal finds the highest crosspoint, xp1, in group L, but no ACK signal is sent from xp1, because of the state of the UH signal. In the next cell period, xp1 to xp4 form group L, and xp5 is group H. In case 2, the UH signal shows that there is no request in group H; the DL signal finds the highest request in group L, xp1, and triggers the ACK signal. Note that both selected crosspoints in case 1 and case 2 are the same crosspoints that would be selected by a theoretical RR arbiter. The bidirectional arbiter operates two times faster than a normal ring Ž . arbiter unidirectional arbiter , but twice as many transmitted signals are required. The bidirectional arbiter can be implemented with simple hard- ware. Only 200 or so gates are required to achieve the distributed arbitration at each crosspoint, according to the logic table shown in Table 3.2.

3.3.6.2 Token Tunneling This section introduces a more efficient arbi-