Hardware/ASIC/SoC/NoC2009.11.06 15:49

  패킷을 보내기전에 송식측에서 수신측까지 가는 경로를 모두 리스트로 만들어 패킷의 헤더에 넣어 보내는 방식으로서 확장성에 제한이 있다.

  네트워크의 모든 topology를 서전에 송신측에서 알고 있어야 하며, 이를 패킷의 헤더에 넣어야 하는데 패킷의 헤더에 넣는 정보량은 제한적이다.source routing 알고리즘에서 필요한 입력은 route code로서 이것은 source tile에서 목적 tile까지 전체경로를  부호화한다. 각 Router에서 packet이 route될 수 있는 방향은 5가지로서 North(N), South(S), East(E), West(W) 그리고 Core(C)이다. 각 방향은 아래 표에서 보여지는 것과 같이 code로서 표현된다.

Direction  Decimal code  Binary code
 N  0  000
 S  1  001
 E  2  010
 W  3  011
 C  4  100

 route code의 가장 오른쪽의 3 bits는 출력 방향을 결정한다. source routing은 route code의 가장 오른쪽의 3bits를 읽음으로서 구현된다. 그리고 이어서 code를 오른쪽으로 3bits Shift 시킨다. 만약 3 x 3 torus topology에서 tile 9에서 tile 1까지 packet들을 9->8->0->1의 경로를 따라 보낸다고하면 Route code는 W->S->E->C가 될 것이다. 이것을 계속한다. W(011)->S(001)->E(010)->C(100) = 100 010 001 011 = 2187이 된다.

 Deterministic XY, Adaptive Odd Even(OE).

-XY와 OE routing 알고리즘에서 필요한 입력은 목적 Tile의 Tile ID이다.

'Hardware > ASIC/SoC/NoC' 카테고리의 다른 글

Wormhole routing[미완료]  (0) 2009.11.06
Crossbar switch fabric  (0) 2009.11.06
Source routing  (0) 2009.11.06
Temrs in ONoC(Optical Network-on-Chip)  (0) 2009.11.06
Wiring Delays[미완료]  (0) 2009.11.06
STA(Static Timing Analysis)[미완료]  (0) 2009.11.06
Posted by Act of God