Date post: | 01-Jan-2016 |
Category: |
Documents |
Upload: | madison-gilliam |
View: | 18 times |
Download: | 1 times |
ICN’s
The n-D hypercube (n-cube) The n-D hypercube (n-cube) contains 2^n nodes (processors).contains 2^n nodes (processors).
The nodes are neighbors in the n-The nodes are neighbors in the n-cube iff their end bit binary cube iff their end bit binary addresses differ in a single bitaddresses differ in a single bit
Neighbor nodes
Two nodes are neighbors in the n-Two nodes are neighbors in the n-cube iff their end bit binary cube iff their end bit binary addresses differ by a single bitaddresses differ by a single bit
Hemming distance
100 101
110111
011010
000001
The shortest path ,
between nodes,
is determined by
the Hamming
distance.
Hypercube
The hypercube can emulate The hypercube can emulate (simulate) other ICN’s(simulate) other ICN’s
The hypercube is a general The hypercube is a general purpose or universal ICNpurpose or universal ICN
Embedding a linear array
How can we embed other ICN’s How can we embed other ICN’s into a hypercube ?into a hypercube ?
Algorithm
Bits must differ by a single bitBits must differ by a single bit Use the binary Reflected Gray Use the binary Reflected Gray
CodeCode
Binary Reflected Code
RGC(n); n-bit binary Reflected Gray RGC(n); n-bit binary Reflected Gray CodeCode
RGC(n) = [ 0 . RGC(n-1), 1 . RGC (n-1) ]RGC(n) = [ 0 . RGC(n-1), 1 . RGC (n-1) ]
-1
1-cube/2-node array RGC(n); n-bit binary Reflected Gray CodeRGC(n); n-bit binary Reflected Gray Code
RGC(n) = [ 0 . RGC(n-1), 1 . RGC^{-1}(n-1) ]RGC(n) = [ 0 . RGC(n-1), 1 . RGC^{-1}(n-1) ]
= [ 0 . RGC(1-1), 1 . RGC^{-1}(1-1) ]= [ 0 . RGC(1-1), 1 . RGC^{-1}(1-1) ]
= [ 0. RGC(0) , 1 . RGC^{-1}(0) ]= [ 0. RGC(0) , 1 . RGC^{-1}(0) ]
= [ 0 1 ]= [ 0 1 ]
or or
0 1
1 - Cube
2-cube/4-node array RGC(n); n-bit binary Reflected Gray CodeRGC(n); n-bit binary Reflected Gray Code
RGC(2) = [ 0 . RGC(2-1), 1 . RGC^{-1}(2-1) ]RGC(2) = [ 0 . RGC(2-1), 1 . RGC^{-1}(2-1) ]
= [ 0 . RGC(1) , 1 . RGC^{-1}(1) ]= [ 0 . RGC(1) , 1 . RGC^{-1}(1) ]
= [ 0 . ( 0,1) , 1 . (1,0) ]= [ 0 . ( 0,1) , 1 . (1,0) ]
= [ 00, 01 , = [ 00, 01 , 11, 1011, 10 ] ]
00
10
01
11
2- cube
Linear array; n = 3
RGC(n); n-bit binary Reflected Gray CodeRGC(n); n-bit binary Reflected Gray Code
RGC(3) = [ 0 . RGC(3-1), 1 . RGC^{-1}(3-1) ]RGC(3) = [ 0 . RGC(3-1), 1 . RGC^{-1}(3-1) ]
= [ 0 . RGC(2) , 1 . RGC^{-1}(2) ]= [ 0 . RGC(2) , 1 . RGC^{-1}(2) ]
= [ 0.(00,01,11,10 ) , 1.(10,11,01,00) ]= [ 0.(00,01,11,10 ) , 1.(10,11,01,00) ]
= [000,001,011,010,110,111,101,100= [000,001,011,010,110,111,101,100AddressesAddresses
ARRAY ARRAY = = 0 1 2 3 4 5 6 70 1 2 3 4 5 6 7
HYPERCUBEHYPERCUBE = 0 1 3 2 6 7 5 4 = 0 1 3 2 6 7 5 4
Embed an 8-leave Binary Tree into a 3-Cube
1. Choose the address of the parent to be the
address of the left child.
000 001 010 011 100 101 110 111
000
000
000
Embed an 8-leave Binary Tree into a 3-Cube
Choose the address of the parent to be the
address of the left child.
000 001 010 011 100 101 110 111
000
000
000
010 100 110
Embed an 8-leave Binary Tree into a 3-Cube
Choose the address of the parent to be the
address of the left child.
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Height = n = 4
Nodes = 2^n-1
Embed an 8-leave Binary Tree into a 3-Cube
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
Create Tables (connection) for each level
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
Table: Level -1
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
001 ->> 000
011 ->> 010
Table: Level -1
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
001 ->> 000
011 ->> 010
101 ->> 100
111 ->> 110
Table: Level -2
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
010 ->> 000
110 ->> 100
Table: Level -3
000 001 010 011 100 101 110 111
000
000
000
010 100 110
100
Level- 0
Level- 1
Level- 2
Level- 3
100 ->> 000
Draw: Level - 2
100 101
110111
011010
000001
001 ->> 000
011 ->> 010101 ->> 100
111 ->> 110010 ->> 000
110 ->> 100
Draw: Level - 3
100 101
110111
011010
000001
001 ->> 000
011 ->> 010101 ->> 100
111 ->> 110010 ->> 000
110 ->> 100
100 ->> 000