KR100250437B1 - 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치 - Google Patents

라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치 Download PDF

Info

Publication number
KR100250437B1
KR100250437B1 KR1019970074745A KR19970074745A KR100250437B1 KR 100250437 B1 KR100250437 B1 KR 100250437B1 KR 1019970074745 A KR1019970074745 A KR 1019970074745A KR 19970074745 A KR19970074745 A KR 19970074745A KR 100250437 B1 KR100250437 B1 KR 100250437B1
Authority
KR
South Korea
Prior art keywords
arbitration
path control
general
control logic
path
Prior art date
Application number
KR1019970074745A
Other languages
English (en)
Other versions
KR19990054868A (ko
Inventor
한종석
심원세
한우종
윤석한
Original Assignee
정선종
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 정선종, 한국전자통신연구원 filed Critical 정선종
Priority to KR1019970074745A priority Critical patent/KR100250437B1/ko
Priority to US09/209,429 priority patent/US6314487B1/en
Publication of KR19990054868A publication Critical patent/KR19990054868A/ko
Application granted granted Critical
Publication of KR100250437B1 publication Critical patent/KR100250437B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 라운드 로빈 중재 및 적응 경로 제어를 수행하는 경로 제어 장치에 관한 것이다.
본 발명의 경로 제어기는 일반 경로 제어기와 적응 경로 제어기로 구성되는데 일반 경로 제어기는 일반 전송 패킷과 긴급 전송 패킷에 대한 우선 순위 중재를 수행하며 10개의 입력 포트 위치에 따라 개선된 라운드 로빈 중재를 수행한다.
적응 경로 제어기는 2개의 일반 경로 제어기와 1개의 적응 경로 스위치로 구성된다. 적응 경로 제어기는 2개의 전송 경로중 하나의 경로가 사용중에 있거나 전송 문제가 발생하면 다른 하나의 경로로 패킷을 전송해주는 경로 제어기이다.
본 발명은 크로스바 라우팅 스위치의 핵심 기능인 중재 및 경로 제어를 수행하는 경로 제어기에 관한 것으로 특히, 우선 순위를 기반으로 라운드 로빈 중재를 수행하는 일반 경로 제어기와 상기 일반 경로 제어기에 적응 경로 스위치를 부가하여 적응 경로 제어를 수행하는 적응 경로 제어기를 고안한 것이다.

Description

라운드로빈 중재 및 적응 경로 제어를 수행하는 경로제어 장치
본 발명은 라운드 로빈 중재 및 적응 경로 제어를 수행하는 경로 제어 장치에 관한 것이다.
일반적으로, 다수의 프로세서를 이용하여 동시에 다수의 프로세서에서 병렬로 작업을 처리하므로써 뛰어난 성능을 얻고자 하는 병렬처리 시스템에서 다수의 프로세서들을 연결하기 위한 상호연결망은 매우 중요한 역할을 담당한다.
상호연결망은 라우팅 스위치와 백플레인, 그리고 케이블등으로 구성되는데, 상호연결망의 라우팅 스위치는 실제 상호연결망의 기능을 수행하는 핵심 부품이다.
라우팅 스위치의 기능은 각 상호연결망의 구조 및 기능에 따라 결정되기 때문에 특정 상호연결망의 라우팅 스위치는 특정 상호연결망에 적합하게 설계되고 구현된다. 또한, 라우팅 스위치의 경로 제어기는 라우팅 스위치 고유의 기능과 특성에 적합하게 설계되어야 한다. 다시 말하면, 라우팅 스위치의 특성을 잘 지원하면서 뛰어난 성능과 기능을 제공하는 경로 제어기는 라우팅 스위치의 고유 특성과 우수한 기능 및 성능을 결정하는 핵심 역할을 담당한다. 또한, 이러한 역할은 상호연결망의 특성과 기능으로 이어지기 때문에 고유 특성을 잘 지원하면서 뛰어난 성능과 기능을 제공하는 경로 제어기의 고안은 매우 중요하다.
G.P. Balboni등이 고안한 스위칭 소자는 다단계 패킷 스위칭 상호연결망에서 자기 경로 제어를 수행하는 스위칭 소자이다. (G.P. Balboni et al., ``Switching Element for Self-routing Multistage Packet-switching Interconnection Networks'',USP 4890281, Dec. 1989) 상기 스위칭 소자는 2X2 스위치 구성을 갖는 단위 소자로서 패킷의 태그 부분중 한 비트에 의해 제어되는 단순한 스위칭 소자이다. 중재 개념을 가지고 있지 않으며 단순 태그 비트에 의해 경로 제어를 수행하고 브로드캐스트 전송을 위한 두 포트 동시 전송 기능을 가지고 있다. 중재 및 적응 경로 제어 방법을 제공하지 않는다.
김 상범외 2인이 제안한 ``인터커넥션 네트워크 소자''는 메쉬 형태의 상호연결망에서 경로 제어를 수행하는 스위칭 소자이다. (김 상범외 2인, ``인터커넥션 네트워크 소자'', KR 66825, Oct. 1993) 상기 스위칭 소자는 메쉬 형태의 상호연결망에서 교착 상태를 피하면서 다수의 경로를 얻을 수 있는 스위칭 소자로서 이의 경로 제어 유니트는 패킷 태그의 정해진 주소로만 경로제어를 수행하며 단순한 3X1 선택기를 통한 중재를 수행한다. 상기 스위칭 소자는 독자적인 패킷 형태 및 경로 제어 방법을 가지고 구현된 것으로 가장 기본적인 경로 제어 방법만을 제공한다.
Olnowich와 Williams가 고안한 ``Multipath torus switching apparatus''는 토러스 메쉬 형태의 상호연결망에서 적은 지연시간을 갖는 Wormhole 방식의 스위칭 소자이다. (H.T. Olnowich and A.R. Williams, ``Multipath torus switching apparatus'', EP 0588104A2, Dec. 1994) 상기 스위칭 소자는 기존 토러스 스위치에 다중 패스 설정 기능을 추가하여 빠르게 경로 제어 포트를 결정할 수 있도록 고안한 것이다. 4 개의 단일 패스 제어기와 1 개의 다중 패스 제어기로 구성되어 있으며 패킷의 연결 명령(connection command)을 사용하여 출력 포트를 선정한다. 중재 방법에 대한 고안이 제시되어 있지 않으며, 패킷의 형태와 경로 제어 방법이 다르고, 적응 경로 제어와 유사한 다중 패스 제어 기능을 갖고 있지만 그 구성과 방법이 다르기 때문에 크로스바 라우팅 스위치에 적합하게 사용할 수 없다.
Nugent가 고안한 적응 경로 제어 방법은 메쉬 형태의 상호연결망에 동일한 형태의 추가 상호연결망을 연결하여 추가의 연결 경로를 확립한 후 기존 경로에 문제가 발생하거나 전송이 불가능할 경우 추가의 연결 경로를 통해 경로 제어를 수행하는 방법이다. (Nugent, ``Adaptive Message Routing for Multi-Dimentional Networks,'' USP 5175733, Dec. 1992) 상기 적응 경로 제어 방법은 메쉬 상호연결망에서 X 방향과 Y 방향으로 경로 제어가 불가능 할 때 Z 방향으로 추가의 연결 경로를 확립하여 Z 방향으로 적응 경로 제어를 수행하는 방법이다. 경로 제어기의 경우 두 입력에 대한 단순한 중재만을 수행하며 적응 경로 제어 방법 및 구성이 다수의 입출력 포트를 가지는 스위칭 소자에 적합하지 않다.
A.H. Frey Jr. 등이 고안한 적응 경로 제어 스위칭 소자는 다차원(multi-dimension), 다중 노드 환경에서 목적지 까지 최단 거리로 경로를 제어하기 위한 스위칭 소자이다. (A.H. Frey Jr. et al., ``Adaptive Routing in a Parallel Computing System'', USP 5181017, Jan. 1993) 상기 스위칭 소자는 근원지에서 목적지 까지 설정할 수 있는 모든 경로를 검색하여 동시에 패킷을 모든 경로로 전송하므로써 가장 빨리 도착하는 하나의 패킷만을 유효하게 수신하는 방법이다. 이 방법은 패킷의 헤더를 통하여 적응 경로 제어를 수행하며 스위칭 소자에서는 패킷의 전송과 제거를 위한 메카니즘만을 제공한다. 다른 상호연결망에서 근원지에서 목적지로 한 번의 패킷 전송으로 종료되는데 반하여 상기 스위칭 소자의 상호연결망에서는 확인을 위한 별도의 패킷 전송이 필요하게 되는 문제점이 있다.
종래 대부분의 고안이 다단계 상호연결망이나 메쉬 형태의 상호연결망에 적합한 스위칭 소자 및 적응 경로 제어 방법으로서 적절한 중재 방법을 가지고 있지 못하며, 적응 경로 제어 방법 또한 그 방법과 구성이 많이 다르기 때문에 상기 크로스바 라우팅 스위치에 적합한 경로 제어기를 제공할 수 없다.
따라서, 본 발명은 크로스바 라우팅 스위치의 핵심 기능인 중재 및 경로 제어를 수행하는 경로 제어기에서 공정성(fairness)을 보장하고 기아(starvation) 현상을 방지하는 우선 순위 기반 라운드 로빈 중재 방법과, 이를 수행하는 일반 경로 제어기를 고안하고 상기 2개의 일반 경로 제어기에 적응 경로 스위치를 부가하여 라운드로빈 중재 및 적응 경로 제어를 수행하는 경로제어 장치를 제공하는데 그 목적이 있다.
상기한 목적을 달성하기 위한 본 발명은 크로스바 코아 유니트, 다수개의 입력 제어기, 다수개의 출력 제어기로 구성된 크로스바 라우팅 스위치에 있어서, 우선 순위 기반 라운드 로빈 중재를 실행하고, 내부 로직을 제어하는 다수개의 일반 경로 제어 로직부와, 상기 일반 경로 제어 로직부의 신호와 준비 신호를 입력으로 하여 다수개의 해당 중재 선택 순차 신호, 상태 신호 및 중재 선택 조합 신호를 출력하는 적응 경로 스위치와, 우선 순위 기반 라운드 로빈 중재를 위한 다수개의 마스크 레지스터, 즉 일반 중재 요청신호의 10개 비트와 상기 일반 경로 제어 로직부에서 구동하는 10개 비트를 각 비트별로 앤드 게이트 입력에 연결하여 그 출력을 다시 상기 일반 경로 제어 로직부에 제공하는 다수개의 일반 전송 마스크 레지스터와, 긴급 중재 요청신호의 10개 비트와 상기 일반 경로 제어 로직부에서 구동하는 10개 비트를 각 비트별로 앤드 게이트 입력에 연결하여 그 출력을 다시 상기 일반 경로 제어 로직부에 제공하는 다수개의 긴급 전송 마스크 레지스터를 포함하여 이루어지는 것을 특징으로 한다.
도 1은 본 발명에 따른 크로스바 라우팅 스위치 개략 구성도.
도 2는 본 발명에 따른 태그 플릿과 제어 정보 플릿을 포함하는 패킷 구성도.
도 3은 본 발명에 따른 일반 경로 제어기.
도 4는 본 발명에 따른 우선 순위 기반 라운드 로빈 중재 방법.
도 5는 본 발명에 따른 적응 경로 제어기.
[표 1]은 본 발명에 따른 적응 경로 스위치의 동작 기능.
<도면의 주요부분에 대한 부호의 설명>
100 : 크로스바 라우팅 스위치 101 : 크로스바 코아 유니트
102a 내지 102j : 입력 제어기 103a 내지 103j:출력 제어기
104a 내지 104j:중재 요청기
105a 내지 105h:일반 경로 제어기 106 : 적응 경로 제어기
107a 내지 107h:데이터 패스 제어기
108 : 전역 제어기 109 : 데이터 동기화제어기
110 : 데이터 버퍼 111 : 버퍼 입력 제어기
501,502 및 301 : 일반 경로 제어로직부
503 : 적응경로 스위치
이하, 첨부한 도면을 참조하여 본 발명을 상세히 설명하면 다음과 같다.
도 1은 발명에 따른 크로스바 라우팅 스위치의 개략 구성도로서, 1 개의 크로스바 코아 모듈(101), 10 개의 입력 제어기 모듈(102a-102j), 그리고 10 개의 출력 제어기 모듈(103a-103j)로 구성된다.
크로스바 코아 모듈(101)은 세부적으로 10 개의 중재 요청기 유니트(104a-104j), 8 개의 일반 경로 제어기 유니트(105a-105h), 1 개의 적응 경로 제어기 유니트(106), 10 개의 데이터 패스 제어기 유니트(107a-107j), 그리고 1 개의 전역 제어기 유니트(108)로 구성된다.
중재 요청기 유니트(104a-104j)는 각 입력 제어기 모듈(102a-102j)의 데이터 패킷 버퍼 유니트(110) 출력단에 구동된 데이타를 감지하여 태그 부분과 데이타 부분을 인지하고, 태그일 경우 해당 경로 제어기 유니트(105a-105h,106)로 중재를 요청한다. 일반 경로 제어기 유니트(105a-105h)와 적응 경로 제어기 유니트(106)는 해당 중재 요청 신호들을 인지하고 중재를 수행하여 결과를 각 경로 제어기 유니트에 해당하는 데이타 패스 제어기 유니트(107a-107j)에 통보한다. 이때, 일반 경로 제어기 유니트(105a-105h)는 각각 일대일로 데이터 패스 제어기 유니트(107a-107h)를 제어하고, 적응 경로 제어기 유니트(106)는 2 개의 데이터 패스 제어기 유니트(107i-107j)를 제어한다.
데이타 패스 제어기 유니트(107a-107j)는 경로 제어기 유니트(105a-105h,106) 또는 전역 제어기 유니트(108)로부터 통보된 중재 결과에 따라 물리적 전송 경로를 제공한다.
전역 제어기 유니트(108)는 각 자원을 제어하기 위해 필요한 제어 클럭을 생성하며 전체적 흐름 제어와 브로드 캐스트 제어를 수행한다.
입력 제어기 모듈(102a-102j)은 10 개의 입력 포트별로 각 하나의 입력 제어기 모듈이 하나의 입력 포트를 제어하며, 각 입력 데이타의 샘플링, 동기화, 패킷 버퍼의 제어, 그리고 패킷 흐름 제어를 담당한다.
입력 제어기 모듈(102a-102j)은 각각 세부적으로 1 개의 데이터 동기화 유니트(109), 1 개의 데이터 버퍼 유니트(110), 1 개의 버퍼 입력 제어기 유니트(111), 그리고 1 개의 버퍼 출력 제어기 유니트(112)로 구성된다.
데이터 동기화 유니트(109)는 외부 입력인 동기 신호를 사용하여 데이터를 저장하고, 외부 동기 신호와 내부 클럭의 동기를 제어하여 데이터 버퍼 유니트(110)에 데이터를 전송한다. 자신이 동기화 매스터로 지정되면 자신의 동기화 신호(SyncVld)를 다른 크로스바 라우팅 스위치에 구동하여 바이트 슬라이스된 라우팅 스위치들이 동일한 시점에서 데이터 버퍼 유니트(110)에 데이타를 저장하게 한다. 데이터 버퍼 유니트(110)는 패킷 전송 경로상에 충돌이 발생하면 전송되는 패킷을 임시 저장한다. 버퍼 입력 제어기 유니트(111)와 버퍼 출력 제어기 유니트(112)는 데이터 버퍼 유니트(110)에 대한 입력과 출력 흐름을 제어하고 데이터 버퍼 유니트(110)의 상태를 크로스바 코아 모듈(101)에 알려준다.
출력 제어기 모듈(103a-103j)은 10 개의 출력 포트별로 각 하나의 출력 제어기 모듈이 하나의 출력 포트를 제어하며, 외부에서 입력되는 흐름 제어 신호를 동기화 하고, 흐름 제어 신호의 상태를 판독하여 크로스바 코아 모듈(101)에 전달한다. 출력 제어기 모듈(103a-103j)은 각각 세부적으로 1 개의 출력 준비 동기화 유니트(113)로 구성된다.
출력 준비 동기화 유니트(113)는 외부에서 입력되는 흐름 제어 신호를 동기화 하여 크로스바 코아 모듈(101)내의 전역 제어기 유니트(108)에 전달한다.
데이터 동기화 유니트(109)와 마찬가지로 자신이 동기화 매스터로 지정되면 자신의 동기화된 흐름 제어 신호(SyncRdy)를 다른 크로스바 라우팅 스위치에 구동하여 바이트 슬라이스된 라우팅 스위치들이 동일한 시점에서 흐름 제어 신호를 사용하게 한다.
도 2는 상기 크로스바 라우팅 스위치에서 사용되는 패킷의 구성이다.
패킷(200)은 헤더 부분(201)과 데이터 부분(202)으로 세분되며 헤더 부분(201)은 태그 플릿(203)과 제어 정보 플릿(204)으로 구성된다. 여기서 플릿이란 패킷을 구성하는 기본 단위로서 물리적으로 전송되는 데이터 단위를 의미한다. 태그 플릿은 제 2 도에 도시된 것과 같이 8 비트로 이루어지는데 비트 7은 패킷 종류(packet class), 즉 데이터 패킷(data packet)과 망 제어 패킷(network control paxket)을 구분하고, 비트 5는 긴급(emergency) 전송과 일반(normal) 전송을 구분하고, 비트 4는 브로드캐스트(broadcast) 전송과 일대일(point-to-point) 전송을 구분한다. 비트 6은 특정한 의미를 갖지않는 예약된 비트이다. 비트 3에서 비트 0까지는 목적지 태그(destination tag) 주소를 나타내는데 제 1 도의 크로스바 라우팅 스위치는 10개의 포트를 제공하기 때문에 포트 0부터 포트 9까지의 주소만을 사용한다.
제어 정보 플릿(204)는 데이터 패킷일 경우 사용자가 임의로 정의하여 사용하는 부분으로 두 노드, 즉 입력 포트와 출력 포트에 연결된 근원지 노드와 목적지 노드간에 정보 교환을 위해서 사용된다. 그러나 망 제어 패킷일 경우 제어 정보 플릿(204)은 포트 분리 또는 결합 기능 벡터를 정의하기 위해 사용된다.
패킷(200)의 데이터 부분(202)은 다수개의 데이터 플릿(205a-205p)으로 구성된다. 데이터 플릿(205a-205p)은 입력 포트에서 출력 포트로 전송하기 위한 순수 데이터를 저장한다.
도 3은 도 1의 크로스바 코아 모듈(101)내 일반 경로 제어기 유니트(105a-105h)에 해당하는 일반 경로 제어기의 외부 인터페이스 신호를 보여준다.도 1의 크로스바 코아 모듈(101)내 중재 요청기 유니트(104a-104j)는 도 2의 패킷 태그를 해석하여 일반 중재 요청 신호(ReqArb[9..0]) 또는 긴급 중재 요청 신호(ReqEmg[9..0])를 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다. 도 1의 입력 제어기 모듈(102a-102j)은 크로스바 라우팅 스위치의 외부에서 전송되는 패킷 유효 신호(valid)와 도 2의 패킷을 이용하여 패킷의 뒷부분을 알리는 꼬리 신호(tail[9..0])를 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다.
도 1의 출력 제어기 모듈(103a-103j)은 크로스바 라우팅 스위치의 외부에서 전송되는 준비 신호(Ready)를 감지(latch)하여 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다(xready). 일반 경로 제어기는 상기 일반 중재 요청 신호(ReqArb[9..0]), 긴급 중재 요청 신호(ReqEmg[9..0]), 꼬리 신호(tail[9..0]), 그리고 준비 신호(xready)를 입력으로 하여 중재 결과인 2 종류의 중재 선택 신호(winner, wirewin)와 중재 가용성을 알리는 상태 신호(status)를 출력으로 구동한다.
일반 경로 제어기는 세부적으로 실제 우선 순위 기반 라운드 로빈 중재를 실행하고 내부 로직을 제어하는 일반 경로 제어 로직부(301)와 우선 순위 기반 라운드 로빈 중재를 위한 2 개의 마스크 레지스터, 즉 일반 전송 마스크 레지스터(302)와 긴급 전송 마스크 레지스터(303)로 구성된다. 일반 전송 마스크 레지스터(302)는 상기 일반 중재 요청 신호(ReqArb[9..0])의 10 개 비트와 일반 경로 제어 로직부(301)에서 구동하는 10 개 비트를 각 비트별로 앤드 게이트의 입력에 연결하여 그 출력을 다시 일반 경로 제어 로직부(301)에 제공한다. 즉, 일반 전송 마스크 레지스터(302)는 내부에 각 비트별 앤드 게이트와 각 비트별 저장 장소를 제공하기 때문에 총 10 개의 앤드 게이트와 총 10 개의 비트 저장 장소를 제공한다. 예를 들면, 포트 9의 일반 중재 요청 신호(ReqArb[9]) 1 비트와 일반 경로 제어 로직부(301)에서 구동하는 포트 9에 해당하는 1 개 비트를 앤드 게이트의 입력으로 하고, 앤드 게이트의 출력을 1 비트 저장 장소의 입력으로 하며 1 비트 저장 장소의 출력을 일반 경로 제어 로직부(301)에 구동한다.
긴급 전송 마스크 레지스터(303)는 상기 긴급 중재 요청 신호(ReqArb[9..0])의 10 개 비트와 일반 경로 제어 로직부(301)에서 구동하는 다른 10 개 비트를 각 비트별로 앤드 게이트의 입력에 연결하여 그 출력을 다시 일반 경로 제어 로직부(301)에 제공한다. 긴급 전송 마스크 레지스터(303)의 구성은 상기 일반 전송 마스크 레지스터(302)와 동일하다.
일반 경로 제어 로직부(301)는 제 4 도에서 설명하는 우선 순위 기반 라운드 로빈 중재를 실행하고 일반 전송 마스크 레지스터(302)와 긴급 전송 마스크 레지스터(303)를 포함하는 내부 로직을 제어하는 역할을 담당한다. 일반 전송 마스크 레지스터(302)와 긴급 전송 마스크 레지스터(303)에서 구동하는 20 비트의 신호와 상기 준비 신호(xready)를 입력으로 하여 제 4 도의 우선 순위 기반 라운드 로빈 중재 규칙에 따라 중재를 수행하고 그 결과를 2 종류의 중재 선택 신호(winner, wirewin)를 구동하므로써 알린다.
2 종류의 중재 선택 신호(winner, wirewin)는 중재의 결과를 클럭을 이용하여 저장 장소에 저장한 후 구동하는 중재 선택 순차 신호(winner,sequential logic)와 저장 장소에 저장 하기 직전 신호인 중재 선택 조합 신호(wirewin, combinational logic)로 구분할 수 있다. 중재 선택 조합 신호(wirewin)는 중재 선택 순차 신호(winner) 보다 한 클럭 전에 중재 결과를 알 수 있다.
중재 선택 신호(winner, wirewin)는 데이터 패스 제어기 유니트(107a-107j)에서 물리 경로 제어를 위한 정보로 사용되기 때문에 패킷 데이터가 모두 물리 경로를 통과할 때 까지 계속적으로 구동된다. 패킷 데이터의 마지막임을 알리는 꼬리 신호(tail[9..0])중 해당하는 1 비트의 꼬리 신호가 구동되면 일반 경로 제어 로직부(301)는 중재 선택 신호(winner, wirewin)를 거두어 들이고 20 비트의 일반 전송 및 긴급 전송 마스크 정보를 갱신하여 일반 전송 마스크 레지스터(302)와 긴급 전송 마스크 레지스터(303)에 구동한 후 다음 중재를 위한 준비 상태로 진행된다. 상태 신호(status)는 일반 경로 제어 로직부(301)의 상태가 중재 상태에 있는지 준비 상태에 있는지를 알린다.
도 4는 도 3의 경로 제어 로직부에서 수행하는 우선 순위 기반 라운드 로빈 중재 방법을 나타낸 상태도이다. 도 3의 일반 전송 마스크 레지스터(302)에서 구동되는 10 비트의 신호는 N9, ... , N0 등 10개의 상태(state)에 대응된다. 또한, 제 3 도의 긴급 전송 마스크 레지스터(303)에서 구동되는 10 비트의 신호는 E9, ... , E0 등 10개의 상태에 대응된다. 우선 순위 기반 라운드 로빈 중재를 위해 2 종류의 포인터가 사용되는데 하나는 긴급 전송 포인터(401)이고 다른 하나는 일반 전송 포인터(402)이다.
긴급 전송 포인터(401)와 일반 전송 포인터(402)가 모두 준비 상태(IDLE)에 있을 때 10 비트의 일반 전송 마스크 정보와 10 비트의 긴급 전송 마스크 정보는 모두 로직 1로 구동된다. 우선 순위는 긴급 전송 포인터(401)가 일반 전송 포인터(402)보다 높으며, 일반 전송 포인터(402)는 긴급 전송 포인터(401)가 준비 상태(IDLE)에 있을 때만 동작한다. 기존 라운드 로빈 중재의 경우 각 상태(state)는 자신의 시간 슬롯이 할당되어 유효하지 않은 경우에도 자신의 시간 슬롯을 가지고 있었다. 이는 전체적으로 시간의 낭비를 초래하며 비효율적으로 운영될 수 있다.
본 발명의 우선 순위 기반 라운드 로빈 중재에서는 유효한 상태의 요청에만 시간 슬롯을 할당한다. 예를 들어, 긴급 전송 포인터(401)가 현재 준비 상태(IDLE)에 있고 E9 상태와 E6 상태만 유효한 경우 중재 결과는 E9 상태 중재후 다음 시간 슬롯에 E6 상태로 중재하게 된다. 준비 상태(IDLE)가 갖는 의미는 긴급 전송 포인터(401)의 의미와 일반 전송 포인터(402)의 의미가 다르다. 일반 전송 상태(N9, ... , N0)중 하나의 상태라도 유효할 경우 긴급 전송 포인터(401)에서 준비 상태(IDLE)는 유효한 준비 상태로 인식된다. 예를 들어, 긴급 전송 포인터(401)가 E4 상태에 있고 E1 상태와 E8 상태, 그리고 N7 상태가 유효할 경우 중재 결과는 E1 상태 중재후 긴급 전송 포인터(401)는 준비 상태에 있게 되며 동시에 N7 상태가 중재되고 그 후에 E8 상태를 중재하게 된다. N7 상태를 포함해 일반 전송 상태가 모두 유효하지 않을 경우 중재 결과는 E1 상태 중재후 바로 E8 상태를 중재하게 된다.
긴급 전송 포인터(401)에서 준비 상태(IDLE)가 유효 준비 상태 및 무효 준비 상태로 인식되는데 반하여 일반 전송 포인터(402)에서의 준비 상태는 모두 무효 준비 상태로 인식된다. 즉, 긴급 전송 포인터(401)가 준비 상태(IDLE)에 있고 일반 전송 포인터(402)가 N3 상태에 있는 상황에서 N0 상태와 N7 상태가 유효할 경우 중재 결과는 N0 상태 중재후 바로 N7 상태로 중재된다.
상기와 같은 우선 순위 기반 라운드 로빈 중재 방법은 각 상태에 대한 공정성(fairness)를 보장하며 또한, 어느 한 상태도 영원히 중재 받지 못하는 기아(starvation) 현상을 방지한다.
도 5는 도 1의 크로스바 코아 모듈(101)내 적응 경로 제어기 유니트(105i-105j)에 해당하는 적응 경로 제어기의 외부 인터페이스 신호를 보여준다.
도 1의 크로스바 코아 모듈(101)내 중재 요청기 유니트(104a-104j)는 도 2의 패킷 태그를 해석하여 일반 중재 요청 신호(ReqArb[9..0]) 또는 긴급 중재 요청 신호(ReqEmg[9..0])를 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다. 도 1의 입력 제어기 모듈(102a-102j)은 크로스바 라우팅 스위치의 외부에서 전송되는 패킷 유효 신호(valid)와 도 2의 패킷을 이용하여 패킷의 뒷부분을 알리는 꼬리 신호(tail[9..0])를 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다. 도 1의 출력 제어기 모듈(103a-103j)은 크로스바 라우팅 스위치의 외부에서 전송되는 준비 신호(Ready)를 감지(latch)하여 해당 일반 경로 제어기(105a-105h) 및 해당 적응 경로 제어기(106)에 구동한다(xready).
적응 경로 제어기는 상기 2 개의 일반 중재 요청 신호(ReqArb[9..0]_A, ReqArb[9..0]_B), 2 개의 긴급 중재 요청 신호(ReqEmg[9..0]_A, ReqEmg[9..0]_B), 2 개의 꼬리 신호(tail[9..0]_A, tail[9..0]_B), 그리고 2 개의 준비 신호(xready_A, xready_B)를 입력으로 하여 중재 결과인 2 개의 중재 선택 순차 신호(winnerA, winnerB), 2 개의 중재 선택 조합 신호(wirewinA, wirewinB)와 중재 가용성을 알리는 2 개의 상태 신호(statusA, statusB)를 출력으로 구동한다.
적응 경로 제어기는 세부적으로 실제 우선 순위 기반 라운드 로빈 중재를 실행하고 내부 로직을 제어하는 2 개의 일반 경로 제어 로직부(501,502)와 적응 경로 스위치(503), 그리고 우선 순위 기반 라운드 로빈 중재를 위한 4 개의 마스크 레지스터, 즉 2 개의 일반 전송 마스크 레지스터(504,506)와 2 개의 긴급 전송 마스크 레지스터(505,507)로 구성된다.
하나의 일반 전송 마스크 레지스터(504)는 상기 일반 중재 요청 신호(ReqArb[9..0]_A)의 10 개 비트와 일반 경로 제어 로직부(501)에서 구동하는 10 개 비트를 각 비트별로 앤드 게이트의 입력에 연결하여 그 출력을 다시 일반 경로 제어 로직부(501)에 제공한다.
일반 전송 마스크 레지스터(504)의 구성은 제 3 도의 일반 전송 레지스터(302)와 동일하게 구성된다. 다른 하나의 일반 전송 마스크 레지스터(506)도 상기한 바와 동일하다. 하나의 긴급 전송 마스크 레지스터(505)는 상기 긴급 중재 요청 신호(ReqEmg[9..0]_A)의 10 개 비트와 일반 경로 제어 로직부(501)에서 구동하는 다른 10 개 비트를 각 비트별로 앤드 게이트의 입력에 연결하여 그 출력을 다시 일반 경로 제어 로직부(501)에 제공한다. 2 개의 긴급 전송 마스크 레지스터(505,507)의 구성은 상기 일반 전송 마스크 레지스터(504,506)와 동일하다.
일반 경로 제어 로직부(501,502)는 제 4 도에서 설명하는 우선 순위 기반 라운드 로빈 중재를 실행하고 일반 전송 마스크 레지스터(504,506)와 긴급 전송 마스크 레지스터(505,507)를 포함하는 내부 로직을 각각 제어하는 역할을 담당한다. 일반 전송 마스크 레지스터(504,506)와 긴급 전송 마스크 레지스터(505,507)에서 구동하는 각 20 비트의 신호를 입력으로 하여 제 4 도의 우선 순위 기반 라운드 로빈 중재 규칙에 따라 중재를 수행하고 그 결과를 각각 적응 경로 스위치(503)에 구동한다.
적응 경로 스위치(503)는 2 개의 일반 경로 제어 로직부(501,502)에서 결과를 받고 2 개의 준비 신호(xready_A, xready_B)를 입력으로 하여 제 6 도의 적응 경로 스위치 기능에 따라 해당 중재 선택 신호(winnerA, winnerB, wirewinA, wirewinB)와 2 개의 상태 신호(statusA, statusB)를 구동한다. 중재 선택 신호(winnerA, winnerB, wirewinA, wirewinB)는 중재의 결과를 클럭을 이용하여 저장 장소에 저장한 후 구동하는 중재 선택 순차 신호(winnerA, winnerB)와 저장 장소에 저장 하기 직전 신호인 중재 선택 조합 신호(wirewinA, wirewinB)로 구분할 수 있다. 중재 선택 조합 신호(wirewinA, wirewinB)는 중재 선택 순차 신호(winnerA, winnerB) 보다 한 클럭 전에 중재 결과를 알 수 있다.
중재 선택 신호(winnerA, winnerB, wirewinA, wirewinB)는 데이터 패스 제어기 유니트(107a-107j)에서 물리 경로 제어를 위한 정보로 사용되기 때문에 패킷 데이터가 모두 물리 경로를 통과할 때 까지 계속적으로 구동된다. 패킷 데이터의 마지막임을 알리는 꼬리 신호(tail[9..0]_A, tail[9..0]_B)가 구동되면 일반 경로 제어 로직부(504,506)는 중재 선택 신호(winnerA, winnerB, wirewinA, wirewinB)를 거두어 들이고 각각 20 비트의 일반 전송 및 긴급 전송 마스크 정보를 갱신하여 일반 전송 마스크 레지스터(504,506)와 긴급 전송 마스크 레지스터(505,507)에 구동한 후 다음 중재를 위한 준비 상태로 진행된다. 2 개의 상태 신호(statusA, statusB)는 각각 일반 경로 제어 로직부(501,502)의 상태가 중재 상태에 있는지 준비 상태에 있는지를 알린다.
하기 [표1]은 적응 경로 스위치의 동작 기능을 나타낸다. 하나의 일반 경로 제어 로직부(501)에서 구동하는 신호를 ``중재기 A''의 결과라고 정의하고, 또 다른 하나의 일반 경로 제어 로직부(502)에서 구동하는 신호를 ``중재기 B''의 결과라고 정의할 때, [표 1]은 중재기 A, 중재기 B, 준비신호 A, 그리고 준비신호 B의 구동 상태에 따라 동작하는 기능을 나타낸다.
중재기 A와 중재기 B의 결과가 참(true)이고 준비신호 A와 준비신호 B가 각각 참일때 해당 A 또는 B 포트를 출력하며, 중재기 A와 중재기 B의 결과가 참(true)이고 준비신호 A와 준비신호 B 중 하나의 신호만 참일때 하나의 중재 결과로 A 포트와 B 포트가 순차적으로 출력된다.
중재기 A 중재기 B 준비신호 A 준비신호 B 중재결과 A 중재결과 B
1 1 1 1 A 포트 출력 B포트 출력
1 1 1 0 A/B순차 출력
1 1 0 1 B/A순차 출력
1 1 0 0
1 0 1 X A포트 출력
1 0 0 1 A포트 출력
0 1 X 1 B포트 출력
0 1 1 0 B포트 출력
0 0 X X
[표 1]과 같이 중재기 A와 중재기 B의 결과중 하나만 참일때 해당 위치와 준비 신호 A와 준비신호 B의 상태에 따라 해당 기능을 수행한다.
상술한 바와같이 본 발명은 공정성(fairness)을 보장하고 기아(starvation) 현상을 방지하는 우선 순위 기반 라운드 로빈 중재 방법과 이를 수행하는 일반 경로 제어기를 고안하고, 상기 2개의 일반 경로 제어기에 적응 경로 스위치를 부가하여 적응 경로 제어를 수행하는 적응 경로 제어기를 고안하므로써 상기 크로스바 라우팅 스위치의 고유 기능과 특성에 적합한 경로 제어기를 제공하여 높은 성능과 고기능의 크로스바 라우팅 스위치를 구현할 수 있다.

Claims (1)

  1. 크로스바 코아 유니트, 다수개의 입력 제어기, 다수개의 출력 제어기로 구성된 크로스바 라우팅 스위치에 있어서,
    우선 순위 기반 라운드 로빈 중재를 실행하고, 내부 로직을 제어하는 다수개의 일반 경로 제어 로직부와,
    상기 일반 경로 제어 로직부의 신호와 준비 신호를 입력으로 하여 다수개의 해당 중재 선택 순차 신호, 상태 신호 및 중재 선택 조합 신호를 출력하는 적응 경로 스위치와,
    우선 순위 기반 라운드 로빈 중재를 위한 다수개의 마스크 레지스터, 즉 일반 중재 요청신호의 10개 비트와 상기 일반 경로 제어 로직부에서 구동하는 10개 비트를 각 비트별로 앤드 게이트 입력에 연결하여 그 출력을 다시 상기 일반 경로 제어 로직부에 제공하는 다수개의 일반 전송 마스크 레지스터와,
    긴급 중재 요청신호의 10개 비트와 상기 일반 경로 제어 로직부에서 구동하는 10개 비트를 각 비트별로 앤드 게이트 입력에 연결하여 그 출력을 다시 상기 일반 경로 제어 로직부에 제공하는 다수개의 긴급 전송 마스크 레지스터를 포함하여 이루어지는 것을 특징으로 하는 라운드 로빈 중재와 적응 경로제어를 수행하는 경로 제어기.
KR1019970074745A 1997-12-26 1997-12-26 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치 KR100250437B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019970074745A KR100250437B1 (ko) 1997-12-26 1997-12-26 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치
US09/209,429 US6314487B1 (en) 1997-12-26 1998-12-11 Adaptive routing controller of a crossbar core module used in a crossbar routing switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970074745A KR100250437B1 (ko) 1997-12-26 1997-12-26 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치

Publications (2)

Publication Number Publication Date
KR19990054868A KR19990054868A (ko) 1999-07-15
KR100250437B1 true KR100250437B1 (ko) 2000-04-01

Family

ID=19528854

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970074745A KR100250437B1 (ko) 1997-12-26 1997-12-26 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치

Country Status (2)

Country Link
US (1) US6314487B1 (ko)
KR (1) KR100250437B1 (ko)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100378588B1 (ko) * 1999-05-19 2003-03-29 주식회사 머큐리 대용량화가 가능한 다중 경로 비동기 전송 모드 스위치 및 셀구조
EP1158732A3 (en) * 2000-05-25 2003-08-13 Roke Manor Research Limited Improvements in or relating to packet switching
US6839795B1 (en) * 2000-05-31 2005-01-04 Silicon Labs Cp, Inc. Priority cross-bar decoder
ES2246996T3 (es) * 2000-07-05 2006-03-01 Roke Manor Research Limited Mejoras aportadas a los dispositivos de conmutacion.
US7142515B2 (en) * 2001-01-11 2006-11-28 International Business Machines Corporation Expandable self-route multi-memory packet switch with a configurable multicast mechanism
US20030070033A9 (en) * 2001-02-09 2003-04-10 Zabinski Patrick Joseph Parallel and point-to-point data bus architecture
US6763418B1 (en) * 2001-09-07 2004-07-13 Agilent Technologies, Inc. Request bus arbitration
US7376811B2 (en) * 2001-11-06 2008-05-20 Netxen, Inc. Method and apparatus for performing computations and operations on data using data steering
US7080156B2 (en) * 2002-03-21 2006-07-18 Sun Microsystems, Inc. Message routing in a torus interconnect
US6956861B2 (en) * 2002-04-16 2005-10-18 Interactics Holdings, Llc Controlled shared memory smart switch system
JP3770203B2 (ja) * 2002-05-21 2006-04-26 日本電気株式会社 クロスバの高速化方法及びクロスバの高速化方式
US20050201356A1 (en) * 2004-03-11 2005-09-15 Yasuyuki Miura Adaptive routing for hierarchical interconnection network
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
CA2558892A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for a self-optimizing reservation in time of compute resources
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
CA2827035A1 (en) 2004-11-08 2006-05-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9075657B2 (en) 2005-04-07 2015-07-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
KR100745679B1 (ko) * 2005-12-08 2007-08-02 한국전자통신연구원 적응 라운드 로빈을 이용한 패킷 스케쥴링 방법 및 장치
KR100785472B1 (ko) * 2006-09-19 2007-12-13 삼성전자주식회사 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US9465771B2 (en) 2009-09-24 2016-10-11 Iii Holdings 2, Llc Server on a chip and node cards comprising one or more of same
US9069929B2 (en) 2011-10-31 2015-06-30 Iii Holdings 2, Llc Arbitrating usage of serial port in node card of scalable and modular servers
US20130107444A1 (en) 2011-10-28 2013-05-02 Calxeda, Inc. System and method for flexible storage and networking provisioning in large scalable processor installations
US8599863B2 (en) 2009-10-30 2013-12-03 Calxeda, Inc. System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US9876735B2 (en) 2009-10-30 2018-01-23 Iii Holdings 2, Llc Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect
US9054990B2 (en) 2009-10-30 2015-06-09 Iii Holdings 2, Llc System and method for data center security enhancements leveraging server SOCs or server fabrics
US9077654B2 (en) 2009-10-30 2015-07-07 Iii Holdings 2, Llc System and method for data center security enhancements leveraging managed server SOCs
US20110103391A1 (en) 2009-10-30 2011-05-05 Smooth-Stone, Inc. C/O Barry Evans System and method for high-performance, low-power data center interconnect fabric
US9680770B2 (en) 2009-10-30 2017-06-13 Iii Holdings 2, Llc System and method for using a multi-protocol fabric module across a distributed server interconnect fabric
US9311269B2 (en) 2009-10-30 2016-04-12 Iii Holdings 2, Llc Network proxy for high-performance, low-power data center interconnect fabric
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9648102B1 (en) 2012-12-27 2017-05-09 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US9244880B2 (en) * 2012-08-30 2016-01-26 Netspeed Systems Automatic construction of deadlock free interconnects
US8885510B2 (en) 2012-10-09 2014-11-11 Netspeed Systems Heterogeneous channel capacities in an interconnect
WO2014116223A1 (en) * 2013-01-25 2014-07-31 Hewlett-Packard Development Company, L.P. Queue buffer de-queuing
US9582440B2 (en) * 2013-02-10 2017-02-28 Mellanox Technologies Ltd. Credit based low-latency arbitration with data transfer
US9471726B2 (en) 2013-07-25 2016-10-18 Netspeed Systems System level simulation in network on chip architecture
US9054977B2 (en) 2013-08-05 2015-06-09 Netspeed Systems Automatic NoC topology generation
US9473388B2 (en) 2013-08-07 2016-10-18 Netspeed Systems Supporting multicast in NOC interconnect
US9641465B1 (en) 2013-08-22 2017-05-02 Mellanox Technologies, Ltd Packet switch with reduced latency
US9699079B2 (en) 2013-12-30 2017-07-04 Netspeed Systems Streaming bridge design with host interfaces and network on chip (NoC) layers
US9473415B2 (en) 2014-02-20 2016-10-18 Netspeed Systems QoS in a system with end-to-end flow control and QoS aware buffer allocation
US9742630B2 (en) 2014-09-22 2017-08-22 Netspeed Systems Configurable router for a network on chip (NoC)
US9571341B1 (en) 2014-10-01 2017-02-14 Netspeed Systems Clock gating for system-on-chip elements
US9529400B1 (en) 2014-10-29 2016-12-27 Netspeed Systems Automatic power domain and voltage domain assignment to system-on-chip agents and network-on-chip elements
US9660942B2 (en) 2015-02-03 2017-05-23 Netspeed Systems Automatic buffer sizing for optimal network-on-chip design
US9444702B1 (en) 2015-02-06 2016-09-13 Netspeed Systems System and method for visualization of NoC performance based on simulation output
US9568970B1 (en) 2015-02-12 2017-02-14 Netspeed Systems, Inc. Hardware and software enabled implementation of power profile management instructions in system on chip
US9928204B2 (en) 2015-02-12 2018-03-27 Netspeed Systems, Inc. Transaction expansion for NoC simulation and NoC design
US10050843B2 (en) 2015-02-18 2018-08-14 Netspeed Systems Generation of network-on-chip layout based on user specified topological constraints
US10348563B2 (en) 2015-02-18 2019-07-09 Netspeed Systems, Inc. System-on-chip (SoC) optimization through transformation and generation of a network-on-chip (NoC) topology
US9825809B2 (en) 2015-05-29 2017-11-21 Netspeed Systems Dynamically configuring store-and-forward channels and cut-through channels in a network-on-chip
US9864728B2 (en) 2015-05-29 2018-01-09 Netspeed Systems, Inc. Automatic generation of physically aware aggregation/distribution networks
US10218580B2 (en) 2015-06-18 2019-02-26 Netspeed Systems Generating physically aware network-on-chip design from a physical system-on-chip specification
US10452124B2 (en) 2016-09-12 2019-10-22 Netspeed Systems, Inc. Systems and methods for facilitating low power on a network-on-chip
US20180159786A1 (en) 2016-12-02 2018-06-07 Netspeed Systems, Inc. Interface virtualization and fast path for network on chip
US10313269B2 (en) 2016-12-26 2019-06-04 Netspeed Systems, Inc. System and method for network on chip construction through machine learning
US10063496B2 (en) 2017-01-10 2018-08-28 Netspeed Systems Inc. Buffer sizing of a NoC through machine learning
US10084725B2 (en) 2017-01-11 2018-09-25 Netspeed Systems, Inc. Extracting features from a NoC for machine learning construction
US10469337B2 (en) 2017-02-01 2019-11-05 Netspeed Systems, Inc. Cost management against requirements for the generation of a NoC
US10298485B2 (en) 2017-02-06 2019-05-21 Netspeed Systems, Inc. Systems and methods for NoC construction
US10983910B2 (en) 2018-02-22 2021-04-20 Netspeed Systems, Inc. Bandwidth weighting mechanism based network-on-chip (NoC) configuration
US10547514B2 (en) 2018-02-22 2020-01-28 Netspeed Systems, Inc. Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation
US11144457B2 (en) 2018-02-22 2021-10-12 Netspeed Systems, Inc. Enhanced page locality in network-on-chip (NoC) architectures
US10896476B2 (en) 2018-02-22 2021-01-19 Netspeed Systems, Inc. Repository of integration description of hardware intellectual property for NoC construction and SoC integration
US11023377B2 (en) 2018-02-23 2021-06-01 Netspeed Systems, Inc. Application mapping on hardened network-on-chip (NoC) of field-programmable gate array (FPGA)
US11176302B2 (en) 2018-02-23 2021-11-16 Netspeed Systems, Inc. System on chip (SoC) builder

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1196791B (it) 1986-11-18 1988-11-25 Cselt Centro Studi Lab Telecom Elemento di commutazione per reti di interconnessione multistadio autoinstradanti a commutazione di pacchetto
US5181017A (en) 1989-07-27 1993-01-19 Ibm Corporation Adaptive routing in a parallel computing system
US5175733A (en) 1990-12-27 1992-12-29 Intel Corporation Adaptive message routing for multi-dimensional networks
US5408646A (en) 1991-03-29 1995-04-18 International Business Machines Corp. Multipath torus switching apparatus
GB2277816B (en) * 1993-05-04 1997-09-03 Motorola Inc Data communication system
JPH07262154A (ja) * 1994-03-25 1995-10-13 Fujitsu Ltd プロセッサ間通信制御方式
US5517495A (en) * 1994-12-06 1996-05-14 At&T Corp. Fair prioritized scheduling in an input-buffered switch
US5838684A (en) * 1996-02-22 1998-11-17 Fujitsu, Ltd. Low latency, high clock frequency plesioasynchronous packet-based crossbar switching chip system and method
KR100205062B1 (ko) * 1996-10-01 1999-06-15 정선종 계층 상호연결망을 위한 크로스바 라우팅 스위치
KR100194813B1 (ko) * 1996-12-05 1999-06-15 정선종 멀티채널/멀티캐스트 스위칭 기능을 갖는 패킷 스위칭장치 및 이를 이용한 패킷 스위칭 시스템
US6046982A (en) * 1997-03-18 2000-04-04 Cabletron Systems, Inc. Method and apparatus for reducing data loss in data transfer devices
US6044061A (en) * 1998-03-10 2000-03-28 Cabletron Systems, Inc. Method and apparatus for fair and efficient scheduling of variable-size data packets in an input-buffered multipoint switch

Also Published As

Publication number Publication date
US6314487B1 (en) 2001-11-06
KR19990054868A (ko) 1999-07-15

Similar Documents

Publication Publication Date Title
KR100250437B1 (ko) 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치
US9742630B2 (en) Configurable router for a network on chip (NoC)
JP3894957B2 (ja) 大きな網目状接続コストを伴う大容量データを管理するための、2次元または多次元プログラマブルセル構造を有するモジュール並びにdfpに対する内部バスシステム
US5367636A (en) Hypercube processor network in which the processor indentification numbers of two processors connected to each other through port number n, vary only in the nth bit
US4623996A (en) Packet switched multiple queue NXM switch node and processing method
JP2558393B2 (ja) 多重クラスタ信号プロセッサ
US6061345A (en) Crossbar routing switch for a hierarchical crossbar interconnection network
EP0721164A2 (en) Crossbar switch apparatus and protocol
WO2006072060A2 (en) Arbitrating virtual channel transmit queues in a switched fabric network
EP1468372B1 (en) Asynchronous crossbar with deterministic or arbitrated control
US11730325B2 (en) Dual mode interconnect
US7039750B1 (en) On-chip switch fabric
US7254139B2 (en) Data transmission system with multi-memory packet switch
JPWO2002065709A1 (ja) ネットワーク・スイッチング装置
WO1999059048A9 (en) Transpose table biased arbitration scheme
US10990552B1 (en) Streaming interconnect architecture for data processing engine array
KR100798302B1 (ko) 버스 및 네트워크의 복합 통신 수단을 갖는 시스템 온칩
US7032061B2 (en) Multimaster bus system
JP3481445B2 (ja) 競合調停方法
EP1187422B1 (en) Method and device for tunable packet arbitration
JP3661932B2 (ja) 並列計算機システムおよびクロスバスイッチ
KR100250474B1 (ko) 크로스바 라우팅 스위치의 전역 제어 장치 및 그 방법
US6631131B1 (en) Transpose table biased arbitration scheme
JP2001022711A (ja) クロスバースイッチの制御方法及び並列計算機システム
Aude et al. A high-performance switching element for a multistage interconnection network

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090102

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee