1 / 28

Outline

Outline. Why Maximal and not Maximum Definition and properties of Maximal Match Parallel Iterative Matching (PIM) i SLIP Wavefront Arbiter (WFA). Why doesn’t maximizing instantaneous throughput give 100% throughput for non-uniform traffic?. Three possible matches, S (n):.

Télécharger la présentation

Outline

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Outline • Why Maximal and not Maximum • Definition and properties of Maximal Match • Parallel Iterative Matching (PIM) • iSLIP • Wavefront Arbiter (WFA)

  2. Why doesn’t maximizing instantaneous throughput give 100% throughput for non-uniform traffic? Three possible matches, S(n):

  3. Maximal Matching • A maximal matching is one in which each edge is added one at a time, and is not later removed from the matching. • i.e. no augmenting paths allowed (they remove edges added earlier). • No input and output are left unnecessarily idle.

  4. A 1 A 1 A 1 2 B 2 B 2 B 3 C 3 C 3 C 4 D 4 4 D D 5 E 5 5 E E 6 F 6 6 F F Example of Maximal Size Matching Maximal Size Matching Maximum Size Matching

  5. Maximal Matchings • In general, maximal matching is simpler to implement, and has a faster running time. • A maximal size matching is at least half the size of a maximum size matching. • A maximal weight matching is defined in the obvious way. • A maximal weight matching is at least half the weight of a maximum weight matching.

  6. Outline • Definition and properties of Maximal Match • Parallel Iterative Matching (PIM) • iSLIP • Wavefront Arbiter (WFA)

  7. Iteration: 1 1 1 1 2 2 2 2 #1 1 1 3 3 3 3 2 2 4 4 4 4 f2: Grant f3: Accept/Match 3 3 1 1 1 1 1 1 4 4 2 2 2 2 2 2 #2 3 3 3 3 3 3 4 4 4 4 4 4 Parallel Iterative Matching uar selection uar selection f1: Requests

  8. with prob. 1 all n inputs are resolved • grant is accepted – all are resolved • grant rejected – n-k are resolved Parallel Iterative MatchingConvergence Time Number of iterations to converge: Number of iterations to converge: k inputs with no other grant Q n-k inputs with grants from others At most (n-k)(1-k/n) are unresolved  n/4

  9. Parallel Iterative Matching

  10. Parallel Iterative Matching PIM with a single iteration

  11. Parallel Iterative Matching PIM with 4 iterations

  12. PIM Fairness Problems: (under inadmissible load )

  13. Outline • Definition and properties of Maximal Match • Parallel Iterative Matching (PIM) • iSLIP • Wavefront Arbiter (WFA)

  14. 1 1 1 1 2 2 2 2 #1 1 1 3 3 3 3 2 2 4 4 4 4 F2: Grant F3: Accept/Match 3 3 1 1 1 1 1 1 4 4 2 2 2 2 2 2 #2 3 3 3 3 3 3 4 4 4 4 4 4 iSLIP Round-Robin Selection Round-Robin Selection F1: Requests

  15. SLIP vs. Round Robin • Request: each input send a request to every output i, |VOQi|>0 • Grant: chose a request next in RR order and advance pointer beyond it. • Accept:chose the among the grants the one after the pointer and advance the pointer beyond.

  16. SLIP vs. Round Robin • Request: each input send a request to every output i, |VOQi|>0 • Grant: chose a request next in RR order and advance pointer beyond it if accepted. • Accept:chose the among the grants the one after the pointer and advance the pointer beyond.

  17. iSLIP vs. Round Robin • Request: each input send a request to every output i, |VOQi|>0 • Grant: chose a request next in RR order and advance pointer beyond it if accepted. • Accept:chose the among the grants the one after the pointer and advance the pointer beyond only if matchedin 1st iteration. in 1st iteration

  18. why update pointers only in the 1st round? • assume all pointers point at 1. • time 1: • 1st: 1-1 is matched • 2nd: 2-2 is matched • time 2 • 1st: 1-3 & 3-2 are matched • time 3: • 1st: 1-1 is matched • 2nd: 2-2 is matched 1 1 2 2 3 3

  19. iSLIPProperties • Random under low load • TDM under high load • Lowest priority to MRU • 1 iteration: fair to outputs • Converges in at most N iterations. On average < log2N • Implementation: N priority encoders • Up to 100% throughput for uniform i.i.d. traffic

  20. iSLIP

  21. iSLIP

  22. iSLIPImplementation Programmable Priority Encoder 1 State 1 log2N Decision N Grant Accept 2 2 N Grant Accept log2N N N Grant Accept log2N N

  23. iSLIP Variations • L priority levels • replace each pointer by L pointers • threshold SLIP • Weighted SLIP

  24. Outline • Definition and properties of Maximal Match • Parallel Iterative Matching (PIM) • iSLIP • Wavefront Arbiter (WFA)

  25. Wave Front Arbiter(Tamir) Requests Match 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4

  26. Wave Front Arbiter Requests Match

  27. 2,4 1,4 4,4 3,4 4,3 4,2 4,1 3,3 3,2 3,1 2,2 2,1 1,3 1,2 1,1 2,3 Wave Front ArbiterImplementation Simple combinational logic blocks

  28. Wave Front ArbiterWrapped WFA (WWFA) N steps instead of 2N-1 Match Requests

More Related