Omega Network The omega network is another example

  • Slides: 37
Download presentation
Omega Network • The omega network is another example of a banyan multistage interconnection

Omega Network • The omega network is another example of a banyan multistage interconnection network that can be used as a switch fabric • The omega differs from the delta network in the pattern of interconnections between the stages • The omega MIN uses the “perfect shuffle” 1

Perfect Shuffle • The interconnections between stages are defined by the logical “rotate left”

Perfect Shuffle • The interconnections between stages are defined by the logical “rotate left” of the bits used in the port ids • Example: 000 ---> 000 • Example: 001 ---> 010 ---> 100 ---> 001 • Example: 011 ---> 110 ---> 101 ---> 011 • Example: 111 ---> 111 2

8 x 8 OMEGA NETWORK 0 0 1 1 2 2 3 3 4

8 x 8 OMEGA NETWORK 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 3

Self Routing • Omega network has self-routing property • The path for a cell

Self Routing • Omega network has self-routing property • The path for a cell to take to reach its destination can be determined directly from its routing tag (i. e. , destination port id) • Stage k of the MIN looks at bit k of the tag • If bit k is 0, then send cell out upper port • If bit k is 1, then send cell out lower port • Works for every possible input port (really!) 4

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 4 1 2 2 3 3 4 4 5 5 6 6 7 7 5

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 4 3 3 4 4 5 5 6 6 7 7 6

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 3 3 4 4 4 5 5 6 6 7 7 7

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 3 3 4 4 5 5 6 7 4 6 7 8

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 3 3 4 4 5 5 4 6 7 9

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 3 3 4 4 4 5 5 6 6 7 7 10

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0

Example of Self Routing Cell destined for output port 4 (= 1002) 0 0 1 1 2 2 3 3 4 4 4 5 5 6 6 7 7 11

Path Contention • The omega network has the problems as the delta network with

Path Contention • The omega network has the problems as the delta network with output port contention and path contention • Again, the result in a bufferless switch fabric is cell loss (one cell wins, one loses) • Path contention and output port contention can seriously degrade the achievable throughput of the switch 12

Path Contention 0 0 1 4 1 2 2 3 5 3 4 4

Path Contention 0 0 1 4 1 2 2 3 5 3 4 4 5 5 6 6 7 7 13

Path Contention 0 0 1 1 2 2 4 3 3 4 4 5

Path Contention 0 0 1 1 2 2 4 3 3 4 4 5 5 6 7 6 5 7 14

Path Contention 0 0 1 1 2 2 3 3 4 4 4 5

Path Contention 0 0 1 1 2 2 3 3 4 4 4 5 5 6 6 7 7 5 15

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5 6 4 6 7 5 7 16

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 17

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5 5 6 7 18

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5 5 6 6 7 7 19

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5

Path Contention 0 0 1 1 2 2 3 3 4 4 5 5 5 6 6 7 7 20

Performance Degradation 0 0 1 4 1 2 2 3 6 3 4 1

Performance Degradation 0 0 1 4 1 2 2 3 6 3 4 1 5 7 4 6 0 6 7 3 7 5 21

Performance Degradation 0 0 1 1 1 2 4 2 3 7 3 4

Performance Degradation 0 0 1 1 1 2 4 2 3 7 3 4 4 5 0 5 6 6 6 7 3 7 22

Performance Degradation 0 0 1 1 1 2 2 3 3 4 4 0

Performance Degradation 0 0 1 1 1 2 2 3 3 4 4 0 5 5 6 3 6 7 23

Performance Degradation 0 0 1 1 1 2 2 3 7 3 4 0

Performance Degradation 0 0 1 1 1 2 2 3 7 3 4 0 4 5 5 6 3 6 7 24

Performance Degradation 0 1 0 1 2 2 3 3 4 4 5 3

Performance Degradation 0 1 0 1 2 2 3 3 4 4 5 3 5 6 7 6 7 25

Performance Degradation 0 0 1 1 2 2 3 3 4 4 3 5

Performance Degradation 0 0 1 1 2 2 3 3 4 4 3 5 5 6 6 7 7 26

Performance Degradation 0 0 0 1 1 2 2 3 3 4 4 3

Performance Degradation 0 0 0 1 1 2 2 3 3 4 4 3 5 6 6 7 5 6 27 7

Performance Degradation 0 0 0 1 1 2 2 3 3 3 4 4

Performance Degradation 0 0 0 1 1 2 2 3 3 3 4 4 5 5 6 6 7 6 28 7

Performance Degradation 0 0 0 1 1 2 2 3 3 3 4 4

Performance Degradation 0 0 0 1 1 2 2 3 3 3 4 4 5 5 6 6 6 7 7 29

A Solution: Batcher Sorter • One solution to the contention problem is to sort

A Solution: Batcher Sorter • One solution to the contention problem is to sort the cells into monotonically increasing order based on desired destination port • Done using a bitonic sorter called a Batcher • Places the M cells into gap-free increasing sequence on the first M input ports • Eliminates duplicate destinations 30

Batcher-Banyan Example 0 0 0 1 1 1 2 3 4 3 4 6

Batcher-Banyan Example 0 0 0 1 1 1 2 3 4 3 4 6 4 5 7 5 6 6 7 7 31

Batcher-Banyan Example 0 0 0 1 6 1 2 3 7 3 4 5

Batcher-Banyan Example 0 0 0 1 6 1 2 3 7 3 4 5 6 7 5 6 4 7 32

Batcher-Banyan Example 0 0 0 1 6 1 2 3 7 3 4 5

Batcher-Banyan Example 0 0 0 1 6 1 2 3 7 3 4 5 5 6 6 7 7 4 33

Batcher-Banyan Example 0 0 0 1 3 1 2 6 2 3 3 4

Batcher-Banyan Example 0 0 0 1 3 1 2 6 2 3 3 4 1 5 4 5 6 7 4 7 34

Batcher-Banyan Example 0 0 0 1 3 1 2 2 3 6 3 4

Batcher-Banyan Example 0 0 0 1 3 1 2 2 3 6 3 4 1 4 5 5 6 4 6 7 7 7 35

Batcher-Banyan Example 0 0 0 1 1 1 2 3 3 4 4 5

Batcher-Banyan Example 0 0 0 1 1 1 2 3 3 4 4 5 6 6 6 7 7 7 36

Batcher-Banyan Example 0 0 0 1 1 1 2 2 3 3 3 4

Batcher-Banyan Example 0 0 0 1 1 1 2 2 3 3 3 4 4 4 5 5 6 6 6 7 7 7 37