Abstract
Since no single routing-switching combination performs the best under various different types of applications, a flexible network is required to support a range of polices. This paper introduces an implementation of a look-up table routing engine offering flexible routing and switching polices without performance degradation unlike those based on microprocessors. By deciding contents of look-up tables, the engine can implement wormhole routing, virtual cut-through routing, and packet switching, as well as hybrid switching, under a variety of routing algorithms. Since the routing engine has a piplelined look-up table architecture, the routing delay is as small as one flit, and thus it can overlap multiple routing actions without performance degradation in comparison with hardwired routers dedicated to a specific policy. Because four pipeline stages do not induce a hazard, expensive forwarding logic is not required. The routing engine can accommodate four physical links with a time shared cut-through bus or single link with a cross-bar switch. It is implemented using Xilinx 4000 series FPGA.
병렬 컴퓨터의 메시지 전달에서 응용에 관계없이 일반적으로 우수한 경로 지정 및 스위칭 정책은 존재하지 않으므로, 사용자가 응용에 따라서 정책을 변경할 수 있게 하는 것이 바람직하다. 본 논문에서는 마이크로프로세서 구조에 기초한 경로 지정 엔진과는 달리, 성능의 감소 없이 융통성 있는 경로 지정과 스위칭 기능을 수행할 수 있는 조견표(look-up table) 경로 지정 엔진의 구현에 대하여 기술한다. 제안된 경로 지정 엔진은 조견표의 내용을 바꿈으로써 웜홀(wormhole), 가상 컷스루우(virtual cut-through) 및 패킷 스위칭(packet switching) 등은 물론, 다양한 경로 지정 알고리즘의 혼성(hybride)스위칭을 구현할 수 있다. 경로 지정 엔진의 조견표는 파이프라인 구조로 되어 있어, 하나의 플릿(flit) 정도의 저 지연을 가지므로, 단일 경로 지정 및 스위칭 정책을 하드와이어(hardwired)로 구현한 경우 보다 큰 성능의 감소 없이 다중의 경로 지정 동작을 중첩할 수 있다. 제안된 4개의 파이프 라인단은 해저드(hazard)를 일으키지 않으므로, 고 비용의 포워딩(forwarding) 회로가 필요 없다. 경로 지정 엔진은 시간공유의 컷스루우 버스나 크로스바(crossbar) 스위치를 갖는 단일 경로로 되어 있는 4개의 물리적 경로를수용할 수 있다. 제안된 경로 지정 엔진은 Xilinx 4000XL 시리즈 FPGA를 사용하여 구현되었다.