KR100785472B1 - 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 - Google Patents
긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 Download PDFInfo
- Publication number
- KR100785472B1 KR100785472B1 KR1020060090565A KR20060090565A KR100785472B1 KR 100785472 B1 KR100785472 B1 KR 100785472B1 KR 1020060090565 A KR1020060090565 A KR 1020060090565A KR 20060090565 A KR20060090565 A KR 20060090565A KR 100785472 B1 KR100785472 B1 KR 100785472B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- router
- noc
- emergency
- output port
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/06—Deflection routing, e.g. hot-potato routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/56—Routing software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/17—Interaction among intermediate nodes, e.g. hop by hop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/33—Flow control; Congestion control using forward notification
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
긴급 NoC 패킷 대기시간 관리 장치 및 그 방법이 개시된다. 본 발명의 NoC 패킷 대기시간 관리 장치는 패킷의 기 설정된 필드를 통해 긴급 패킷 여부를 판단하는 긴급 패킷 판단부, 상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 긴급 패킷 경로 검색부 및 상기 라우팅 경로에 포함된 라우터 각각에 상기 긴급 패킷의 출력 포트 정보를 전송하는 긴급 패킷 경로 제어부를 포함하는 것을 특징으로 한다. 따라서, 본 발명은 라우터 각각의 대기시간을 줄여 긴급 패킷이 목적지까지 전달되는 대기시간을 줄일 수 있다.
NoC, 대기시간, NoC 패킷, 긴급 패킷
Description
도 1은 일반적인 라우터에서 패킷의 입력에서 출력까지의 처리 과정에 대한 일 예시도이다.
도 2는 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 장치에 대한 일 실시예 구성 블록도이다.
도 3은 본 발명에서 사용되는 헤더 플릿의 필드 구성에 대한 일 예시도이다.
도 4는 본 발명에 따른 라우터에 대한 상세 구성도이다.
도 5는 도 4에 도시한 아비터 내부의 아비트레이션 알고리즘에 대한 우선 순위에 대한 일 예시도이다.
도 6은 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 장치에 대한 다른 일 실시예 구성 블록도이다.
도 7은 도 6에 도시한 610에서의 동작에 대한 일 예시도이다.
도 8은 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 방법에 대한 일 실시예 동작 흐름도이다.
도 9는 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 방법에 대한 다른 일 실시예 동작 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
210: 긴급 패킷 판단부 220: 긴급 패킷 경로 검색부
230: 긴급 패킷 경로 제어부 620: 패킷 경로 검색부
630: 대기 시간 관리부
본 발명은 NoC(Network-on-Chip) 패킷 대기시간(Latency)에 관한 것으로, 더욱 상세하게는 NoC 패킷 대기시간을 줄이기 위한 NoC 패킷 대기시간 관리 장치 및 그 방법에 관한 것이다.
컴퓨터, 통신, 방송 등이 점차 통합되는 컨버전스(Convergence)화에 따라, 기존 ASIC(Application Specific IC: 주문형 반도체)과 ASSP(Application-Specific Standard Product: 특정용도 표준제품)의 수요가 SoC(System-on-Chip)로 전환되어 가고 있는 추세이다. 또한, IT(Information Technology)기기의 경박 단소화 및 고기능화 추세도 SoC 산업을 촉진시키는 요인이 되고 있다.
SoC는 기존의 여러가지 기능을 가진 복잡한 시스템을 하나의 칩으로 구현한 기술 집약적 반도체 기술이다. SoC의 현실화를 위해 많은 기술들이 연구되고 있으며, 특히 칩 내에 내재되어 있는 여러 지능소자(intellectual property: IP)들을 연결하는 방안이 매우 중요한 사항으로 대두되고 있다.
IP들을 연결하기 위한 기술로는 버스를 기반으로 한 연결 방식이 주를 이루 고 있는 실정이다. 그러나, 칩의 집적도가 높아지고 IP간의 정보 흐름의 양이 급격히 증가함에 따라, 버스구조를 이용한 SoC는 그 구조적 한계에 도달하였다.
이와 같이 버스구조를 이용한 SoC의 구조적 한계를 해소하기 위한 방안으로, 일반적인 네트워크 기술을 칩 내에 응용하여 IP들을 연결하는 방식인 NoC(Network-on-Chip) 기술이 새롭게 제시되었다.
NoC는 기존 버스 구조의 구조적 한계를 극복하고자 만들어진 네트워크 형태의(network style) OCI(On-Chip Interconnect)로서, NoC를 통해 고속/고성능/저전력의 SoC를 구현할 수 있다.
NoC에는 IP들간의 패킷 전송을 위해 많은 라우터가 구성된다. 라우터는 IP 또는 라우터로부터 입력된 패킷을 라우팅 경로에 포함된 그 다음 라우터 또는 IP로 전송하는데, 라우터는 패킷이 입력되면 도 1에 도시한 것과 같은 과정을 거친 후 패킷을 출력한다. 즉, 라우터에서 패킷을 입력받은 후 패킷을 출력하기까지에는 도 1에 도시한 과정을 수행하기 위한 시간이 필요하다. 따라서, 패킷이 전송되는 라우팅 경로에 많은 라우터가 포함된 경우에는 패킷이 목적지에 도착하기까지 많은 대기시간(Latency)이 필요하게 된다.
종래 패킷 대기시간을 줄이기 위한 방법으로 라우터끼리 직접 연결하는 경로를 만들어 줌으로써, 패킷 대기시간을 줄일 수 있었다.
하지만, 이런 종래 방법은 많은 라우터끼리 직접 연결하기 때문에 와이어 복잡도(Wire Complexity)가 증가하고, 게이트 카운트(Gate Count)가 증가하는 단점이 있다.
따라서, NoC에서 패킷의 대기시간을 줄이면서 와이어 복잡도도 줄일 수 있는 패킷 대기시간 관리 장치에 대한 필요성이 대두된다.
본 발명은 상술한 바와 같은 종래기술의 문제점을 해결하기 위해 안출된 것으로서, 긴급을 요하는 긴급 패킷이 입력된 경우 목적지까지 걸리는 대기시간을 줄일 수 있는 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 패킷의 대기시간을 줄이면서 구현 비용을 최소화하는 것을 목적으로 한다.
또한, 본 발명은 낮은 와이어 복잡도로 패킷 대기시간을 감소시키는 것을 목적으로 한다.
상기의 목적을 달성하고 종래기술의 문제점을 해결하기 위하여, 본 발명의 NoC 패킷 대기시간 관리 장치는 패킷의 기 설정된 필드를 통해 긴급 패킷 여부를 판단하는 긴급 패킷 판단부, 상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 긴급 패킷 경로 검색부 및 상기 라우팅 경로에 포함된 라우터 각각에 상기 긴급 패킷의 출력 포트 정보를 전송하는 긴급 패킷 경로 제어부를 포함하는 것을 특징으로 한다.
이때, 상기 긴급 패킷의 출력 포트 정보는 상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 가질 수 있다.
이때, 상기 NoC는 정적 라우팅 기반으로 동작할 수 있다.
본 발명의 일 실시예에 따른 NoC 패킷 대기시간 관리 장치는 패킷이 입력된 경우 상기 패킷의 라우팅 경로에 포함된 라우터를 검색하는 패킷 경로 검색부 및 상기 패킷을 입력받고, 상기 라우팅 경로에 포함된 그 다음 라우터로 상기 패킷의 출력 포트 정보를 전송하는 대기시간 관리부를 포함하는 것을 특징으로 한다.
이때, 상기 패킷의 출력 포트 정보는 상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 가질 수 있다.
이때, 상기 NoC 패킷 대기시간 관리 장치는 상기 패킷을 발생시키는 마스터 IP(Intellectual Property)와 연결된 라우터일 수 있다.
이때, 상기 NoC는 정적 라우팅 기반으로 동작할 수 있다.
본 발명의 일 실시예에 따른 NoC 패킷 대기시간 관리 방법은 패킷의 기 설정된 필드를 통해 긴급 패킷 여부를 판단하는 단계, 상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계 및 상기 라우팅 경로에 포함된 라우터 각각에 상기 긴급 패킷의 출력 포트 정보를 전송하는 단계를 포함하는 것을 특징으로 한다.
이때, 상기 긴급 패킷의 출력 포트 정보는 상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 가질 수 있다.
이때, 상기 NoC는 정적 라우팅 기반으로 동작할 수 있다.
본 발명의 일 실시예에 따른 NoC 패킷 대기시간 관리 방법은 패킷이 입력된 경우 상기 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계 및 상기 라우팅 경로에 포함된 상기 패킷이 입력될 그 다음 라우터로 상기 패킷의 출력 포트 정보를 전송하는 단계를 포함하는 것을 특징으로 한다.
이때, 상기 패킷의 출력 포트 정보는 상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 가질 수 있다.
이때, 상기 NoC 패킷 대기시간 관리 방법은 상기 패킷을 발생시키는 마스터 IP(Intellectual Property)와 연결된 라우터에서 수행될 수 있다.
이때, 상기 NoC는 정적 라우팅 기반으로 동작할 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 상세한 설명에서 기술되는 NoC는 정적 라우팅 기반으로 동작하는 것으로 가정한다.
도 2는 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 장치에 대한 일 실시예 구성 블록도로서, 긴급을 요하는 긴급 패킷이 입력된 경우 대기시간을 줄이기 위한 구성 블록도이다. 여기서, NoC가 6개의 라우터로 구성되고, IP0에서 발생된 긴급 패킷이 IP5로 전송된다 가정한다.
도 2를 참조하면, 긴급 NoC 패킷 대기시간 관리 장치는 긴급 패킷 판단부(210), 긴급 패킷 경로 검색부(220) 및 긴급 패킷 경로 제어부(230)를 포함한다.
긴급 패킷 판단부(210)는 IP(Intellectual Property)로부터 발생된 패킷의 기 설정된 필드를 통해 발생된 패킷이 긴급을 요하는 긴급 패킷인지 판단한다. 긴급 패킷 판단부(210)에 대한 설명을 도 3을 예로 들어 조금 더 설명하면 다음과 같 다.
도 3은 본 발명을 설명하기 위한 헤더 플릿(Header Flit)에 대한 일 실시예 구성을 보인 것이다.
도 3에서 알 수 있듯이, 헤더 플릿은 패킷을 발생하는 출발지 주소(Source Address), 패킷을 전달받을 목적지 주소(Destination Address) 및 긴급 패킷을 판단하기 위한 필드(Urgent field)(310)(이하, "긴급 필드"라 칭함)를 구비한 예약(Reserved) 필드를 포함한다.
긴급 필드(310)는 IP에서 발생된 패킷이 긴급 패킷인지 판단할 수 있는 필드로서, 본 발명에 따른 긴급 패킷 판단부(210)는 도 3에 도시한 긴급 필드 값을 통해 긴급 패킷 여부를 판단한다. 예컨대, 긴급 필드 값이 '1'인 경우 긴급 패킷으로 판단하고, 긴급 필드 값이 '0'인 경우 긴급 패킷이 아닌 것으로 판단한다.
긴급 패킷 경로 검색부(220)는 긴급 패킷의 라우팅 경로를 통해 라우팅 경로에 포함된 라우터를 검색한다. 여기서는 라우터 R11, R12, R13 및 R23이 라우팅 경로에 포함된 라우터가 된다.
이때, 긴급 패킷의 출력 포트 정보는 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP 중 어느 하나의 출력 포트 정보를 포함할 수 있다.
이때, NoC는 정적 라우팅 기반으로 동작하기 때문에 긴급 패킷이 발생한 출발지 주소 필드와 긴급 패킷을 수신할 목적지 주소 필드를 통해 라우팅 경로를 알 수 있다. 예를 들어, 도 3에 도시한 헤더 플릿의 출발지 주소와 목적지 주소를 통 해 라우팅 경로를 확인할 수 있다. 여기서, 라우팅 경로는 출발지 주소와 목적지 주소에 따라 라우팅 경로가 설정된 룩업 테이블을 참조하여 확인할 수 있다.
즉, 긴급 패킷 경로 검색부(220)는 검색된 라우팅 경로를 통해 IP0에서 발생된 긴급 패킷이 라우터 R11, R12, R13 및 R23을 통해 IP5로 전달되는 것을 알 수 있다.
긴급 패킷 경로 제어부(230)는 긴급 패킷 경로 검색부(220)에 의해 검색된 긴급 패킷의 라우팅 경로에 포함된 라우터 각각으로 긴급 패킷의 출력 포트 정보를 전송한다. 이때, 각 라우터로 출력되는 긴급 패킷의 출력 포트 정보는 동일하거나 상이할 수 있다. 예를 들어, 두 라우터 R11과 R12는 긴급 패킷의 출력 포트가 X 라우터 즉, R11의 경우에는 출력 포트가 X 라우터인 R12이고, R12의 경우 또한 출력 포트가 X 라우터인 R13이기 때문에 동일한 출력 포트 정보를 가질 수 있는 반면, 라우터 R13은 긴급 패킷의 출력 포트가 Y 라우터인 R23이기 때문에 R11 및 R12로 출력되는 긴급 패킷의 출력 포트 정보와 상이할 수 있다.
이때, 긴급 패킷의 출력 포트 정보는 라우터를 구성하는 아비터(Arbiter) 내부의 아비트레이션(arbitration) 알고리즘에서 입력 신호 중 최상위 우선 순위를 가지며, 이에 대한 것은 도 4에서 설명한다.
즉, 라우팅 경로에 포함된 라우터 각각에서는 긴급 패킷 경로 제어부(230)로부터 전송된 긴급 패킷의 출력 포트 정보를 수신하여 긴급 패킷이 통과할 입출력 포트를 미리 연결한다. 따라서, 각 라우터에서 패킷을 입력받고 출력하는 도 1과 같은 과정의 대기시간을 줄일 수 있기 때문에 IP0에서 발생된 긴급 패킷은 대기시간이 줄어든 라우터를 통해 IP5로 빠르게 전달된다.
도 2에서 긴급 NoC 패킷 대기시간 관리 장치를 긴급 패킷 판단부(210), 긴급 패킷 경로 검색부(220) 및 긴급 패킷 경로 제어부(230)의 세 구성 기능부로 구성하였지만, 세 구성 기능부의 기능을 모두 포함하는 하나의 구성 기능부로 구성할 수도 있다.
도 4는 NoC를 구성하는 라우터에 대한 상세 구성도이다.
도 4를 참조하면, 라우터는 크로스바 스위치(Cross-Bar Switch), 입출력 포트(X, Y 방향 입출력 포트 및 IPs용 입출력 포트) 및 아비터(Arbiter)를 포함한다.
크로스바 스위치 및 입출력 포트에 대해서는 이 기술 분야에 종사하는 당업자라면 알 수 있는 기술이기에 설명을 생략한다.
아비터는 버스 사용권을 중재하는 역할을 수행하는 것으로, 아비터 내부의 아비트레이션 알고리즘에 의해 동작한다.
본 발명에 따른 아비터는 고정된 우선 순위(fixed priority)로 구현되는 아비트레이션 알고리즘에 의해 동작한다.
도 5는 도 4에 도시한 아비터의 아비트레이션 알고리즘에 대한 우선 순위에 대한 일 예시도이다.
도 5에서 알 수 있듯이, 라우터로 입력되는 신호 중 긴급 패킷의 출력 포트 정보(Advance Output Port Request)가 고정된 우선 순위 아비트레이션에서 최상위 우선 순위를 갖는 것을 알 수 있다.
즉, 아비터로 하나 이상의 요구 신호가 입력되는 경우 아비트레이션 알고리즘에 의해 정해진 우선 순위를 이용하여 입력된 요구 신호를 순차적으로 처리한다. 예를 들어, 도 5에 도시한 요구 신호들(Request Channel, Channel Close Request, Buffer Available, Advance Output Port Request)이 입력된 경우 아비터의 아비트레이션 알고리즘에 의해 최상위 우선 순위를 갖는 긴급 패킷의 출력 포트 정보(Advance Output Port Request)가 그 다음 라우터의 입력 포트를 사용(Grant to Input Port)할 수 있게 된다.
따라서, 도 2에 도시한 긴급 패킷 경로 제어부(230)에서 라우팅 경로에 포함된 라우터(R11, R12, R13 및 R23) 각각으로 출력한 긴급 패킷의 출력 포트 정보에 의해 IP0로부터 발생된 긴급 패킷이 목적지 주소인 IP5로 전달되는 대기시간이 줄어들어 빠른 처리를 수행할 수 있다.
이와 같은 긴급 패킷은 제어 정보(Control Information), 상태 레지스터 업데이트(Status Register Update) 및 락 오퍼레이션(Lock Operation) 등과 같이 긴급을 요하는 동작에 사용될 수 있다.
도 6은 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 장치에 대한 다른 일 실시예 구성 블록도로서, 하나의 라우터 대기시간을 줄일 수 있는 장치에 대한 구성 블록도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 긴급 NoC 패킷 대기시간 관리 장치(610)는 패킷 경로 검색부(620) 및 대기시간 관리부(630)를 포함한다.
패킷 경로 검색부(620)는 IP1로부터 발생된 패킷으로부터 패킷의 라우팅 경로를 확인하고, 라우팅 경로에 포함된 라우터를 검색한다.
이때, 패킷 경로 검색부(620)는 패킷의 출발지 주소 필드 및 목적지 주소 필드를 기초로 하여 라우팅 경로를 검색한다. 여기서, 라우팅 경로의 검색이 가능한 이유는 NoC가 정적 라우팅 기반에서 동작하기 때문이다.
대기시간 관리부(630)는 IP1로부터 발생된 패킷을 입력받고, 패킷 경로 검색부(620)에 의해 검색된 라우팅 경로에 포함된 그 다음 라우터(R1)로 패킷의 출력 포트 정보(①)를 전송한다.
이때, 대기시간 관리부(630)에서 전송하는 패킷의 출력 포트 정보는 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP 중 어느 하나의 출력 포트 정보를 포함할 수 있다.
이때, 패킷의 출력 포트 정보는 라우터를 구성하는 아비터(Arbiter) 내부의 아비트레이션(arbitration) 알고리즘에서 입력 신호 중 최상위 우선 순위를 가지기 때문에 라우터로 동시에 여러 신호가 입력된 경우 패킷의 출력 포트 정보를 최우선으로 처리한다.
즉, 대기시간 관리부(630)와 연결된 그 다음 라우터(R1)에서 대기시간 관리부(630)로부터 전송된 패킷의 출력 포트 정보를 수신하여 패킷이 통과할 입출력 포트를 미리 연결한다. 따라서, 라우터 R1에서 패킷을 입력받고 출력하는 도 1과 같은 과정의 대기시간을 줄일 수 있다.
도 6에서 패킷 경로 검색부(620)와 대기시간 관리부(630)를 별개로 구성하였지만, 패킷 경로 검색부(620)의 기능을 대기시간 관리부에 포함시켜 구성할 수 있다. 즉, 패킷 경로 검색부(620)와 대기시간 관리부(630)가 합쳐진 라우터로 구성할 수 있다.
이때, 패킷 경로 검색부(620)와 대기시간 관리부(630)가 합쳐진 라우터는 NoC를 구성하는 라우터인 것이 바람직하다.
이때, 긴급 NoC 패킷 대기시간 관리 장치(610)는 패킷을 발생시키는 마스터 IP에 연결되는 것이 바람직하다. 즉, 마스터 IP와 연결된 라우터인 긴급 NoC 패킷 대기시간 관리 장치(610)에서 마스터 IP로부터 발생된 패킷을 입력받고, 도 7과 같은 패킷의 입출력 처리 과정 중 라우트 계산과정(Route Computation)을 통해 그 다음 라우터로 패킷의 출력 포트 정보를 전송하여 그 다음 라우터(R1)에서 도 1과 같은 수행 과정을 거치지 않고 패킷을 IP2로 바로 전달되도록 하여 그 다음 라우터(R1)의 대기시간을 줄이고자 하는 것이다.
이때, 패킷의 출력 포트 정보는 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP에 대한 출력 포트 정보를 포함할 수 있고, 이에 대한 일 예를 [표 1]에 표시한다.
[표 1]
패킷의 출력 포트 정보 | |
X-out | 3'b001 |
Y-out | 3'b010 |
IP-out | 3'b100 |
[표 1]에서 알 수 있듯이, 패킷의 출력 포트 정보는 패킷의 출력 포트 정보를수신하는 라우터에서 패킷이 출력될 X 라우터, Y 라우터 및 IP에 대한 출력 정보를 도 1의 처리 과정없이 알 수 있기 때문에 라우터에서 패킷의 대기시간을 줄일 수 있다.
도 6에 도시한 본 발명은 최소한의 구현 비용으로 대기시간을 줄일 수 있는 장점이 있다.
도 8은 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 방법에 대한 일 실시예 동작 흐름도이다.
도 8을 참조하면, IP로부터 패킷이 발생한 경우(S810), 발생된 패킷이 긴급을 요하는 긴급 패킷인지 판단한다(S820). 이때, 긴급 패킷에 대한 판단은 패킷을 구성하는 필드 중 긴급 패킷 여부를 판단할 수 있는 긴급 필드 값을 통해 판단할 수 있다.
IP로부터 발생된 패킷이 긴급을 요하지 않는 일반 패킷인 경우에는 일반 패킷 처리 과정을 수행한다(S860).
IP로부터 발생된 패킷이 긴급 패킷인 경우에는 패킷에 포함된 출발지 주소 필드 및 목적지 주소 필드를 통해 라우팅 경로를 확인하고, 라우팅 경로에 포함된 라우터를 검색한다(S830, S840).
그 다음, 라우팅 경로에 포함된 라우터 각각에 긴급 패킷의 출력 포트 정보를 전송한다(S850). 이때, 긴급 패킷의 출력 포트 정보는 라우터를 구성하는 아비터 내부의 아비트레이션(arbitration) 알고리즘에서 입력 신호 중 최상위 우선 순 위를 갖기 때문에 라우터로 동시에 여러 신호가 입력된 경우 긴급 패킷의 출력 포트 정보를 최상위 우선순위로 처리한다. 따라서, 라우터 각각에서 긴급 패킷이 입력되는 포트와 출력되는 포트를 미리 연결하기 때문에 라우터 각각의 대기시간을 줄여 긴급 패킷이 목적지로 전송되기까지의 대기시간을 줄일 수 있다.
이때, NoC가 XY 라우팅 기반으로 동작하는 경우 긴급 패킷의 출력 포트 정보는 X 라우터, Y 라우터 및 IP에 대한 출력 포트 정보 중 어느 하나의 정보를 포함할 수 있다.
여기서, 긴급 패킷이 두 개 이상의 IP로부터 발생된 경우에는 긴급 패킷이 발생된 순서대로 순차적으로 처리한다. 이와 같이 긴급 패킷에 대한 대기시간 관리 방법은 제어 정보(Control Information), 상태 레지스터 업데이트(Status Register Update) 및 락 오퍼레이션(Lock Operation) 등과 같이 긴급을 요하는 동작에 사용될 수 있다.
도 9는 본 발명에 따른 긴급 NoC 패킷 대기시간 관리 방법에 대한 다른 일 실시예 동작 흐름도이다.
도 9를 참조하면, IP로부터 패킷이 발생한 경우(S910) 패킷에 포함된 출발지 주소 필드 및 목적지 주소 필드를 통해 라우팅 경로를 확인하고, 라우팅 경로에 포함된 라우터를 검색한다(S920).
그 다음, 라우팅 경로에 포함되고, 패킷이 입력될 그 다음 라우터로 패킷의 출력 포트 정보를 전송한다(S930). 이때, 패킷의 출력 포트 정보는 라우터를 구성하는 아비터 내부의 아비트레이션(arbitration) 알고리즘에서 입력 신호 중 최상위 우선 순위를 가지기 때문에 라우터로 동시에 여러 신호가 입력된 경우 패킷의 출력 포트 정보를 최상위 우선 순위로 처리한다. 따라서, 패킷의 출력 포트 정보를 통해 그 다음 라우터에서 패킷이 입력되는 포트와 출력되는 포트를 미리 연결하기 때문에 그 다음 라우터의 대기시간을 줄여 패킷이 목적지로 전송되기까지의 대기시간을 줄일 수 있다.
이때, NoC가 XY 라우팅 기반으로 동작하는 경우 패킷의 출력 포트 정보는 X 라우터, Y 라우터 및 IP에 대한 출력 포트 정보 중 어느 하나의 정보를 포함할 수 있다.
본 발명에 따른 긴급 NoC 패킷 대기시간 관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등 의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
본 발명의 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법은, 긴급 패킷의 라우팅 정보에 포함된 라우터 각각에 긴급 패킷의 출력 포트 정보를 전송하여 각 라우터의 입출력 포트를 미리 연결함으로써, 라우터 각각의 대기시간을 줄여 긴급 패킷이 목적지까지 전달되는 대기시간을 줄일 수 있다.
또한, 본 발명은 패킷의 대기시간을 줄이면서 구현 비용을 최소화할 수 있다.
또한, 본 발명은 낮은 와이어 복잡도로 패킷 대기시간을 줄일 수 있다.
Claims (23)
- 패킷의 기 설정된 필드를 통해 긴급 패킷 여부를 판단하는 긴급 패킷 판단부;상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 긴급 패킷 경로 검색부; 및상기 라우팅 경로에 포함된 라우터 각각에 상기 긴급 패킷의 출력 포트 정보를 전송하는 긴급 패킷 경로 제어부를 포함하고,상기 긴급 패킷 경로 검색부는상기 긴급 패킷의 출발지 주소 필드 및 목적지 주소 필드를 기초로 하여 상기 라우팅 경로에 포함된 라우터를 검색하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제1항에 있어서,상기 긴급 패킷의 출력 포트 정보는상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 갖는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 삭제
- 제1항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제4항에 있어서,상기 긴급 패킷의 출력 포트 정보는상기 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP(Intellectual Property) 중 어느 하나의 출력 포트 정보를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 패킷이 입력된 경우 상기 패킷의 라우팅 경로에 포함된 라우터를 검색하는 패킷 경로 검색부; 및상기 패킷을 입력받고, 상기 라우팅 경로에 포함된 그 다음 라우터로 상기 패킷의 출력 포트 정보를 전송하는 대기시간 관리부를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제6항에 있어서,상기 패킷의 출력 포트 정보는상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 갖는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제6항에 있어서,상기 NoC 패킷 대기시간 관리 장치는상기 패킷을 발생시키는 마스터 IP(Intellectual Property)와 연결된 라우터인 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제6항에 있어서,상기 패킷 경로 검색부는상기 패킷의 출발지 주소 필드 및 목적지 주소 필드를 기초로 하여 라우팅 경로를 검색하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제6항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 제10항에 있어서,상기 패킷의 출력 포트 정보는상기 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP 중 어느 하나의 출력 포트 정보를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 장치.
- 패킷의 기 설정된 필드를 통해 긴급 패킷 여부를 판단하는 단계;상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계; 및상기 라우팅 경로에 포함된 라우터 각각에 상기 긴급 패킷의 출력 포트 정보를 전송하는 단계를 포함하고,상기 긴급 패킷인 경우 상기 긴급 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계는상기 긴급 패킷의 출발지 주소 필드 및 목적지 주소 필드를 기초로 하여 상기 라우팅 경로에 포함된 라우터를 검색하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제12항에 있어서,상기 긴급 패킷의 출력 포트 정보는상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 갖는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 삭제
- 제12항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제15항에 있어서,상기 긴급 패킷의 출력 포트 정보는상기 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP 중 어느 하나의 출력 포트 정보를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 패킷이 입력된 경우 상기 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계; 및상기 라우팅 경로에 포함된 상기 패킷이 입력될 그 다음 라우터로 상기 패킷의 출력 포트 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제17항에 있어서,상기 패킷의 출력 포트 정보는상기 라우터의 입력 신호에 있어서 최상위 우선 순위를 갖는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제17항에 있어서,상기 NoC 패킷 대기시간 관리 방법은상기 패킷을 발생시키는 마스터 IP(Intellectual Property)와 연결된 라우터에서 수행되는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제17항에 있어서,상기 패킷이 입력된 경우 상기 패킷의 라우팅 경로에 포함된 라우터를 검색하는 단계는상기 패킷의 출발지 주소 필드 및 목적지 주소 필드를 기초로 하여 라우팅 경로를 검색하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제17항에 있어서,상기 NoC는정적 라우팅 기반으로 동작하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제21항에 있어서,상기 패킷의 출력 포트 정보는상기 NoC가 XY 라우팅 기반으로 동작하는 경우 X 라우터, Y 라우터 및 IP 중 어느 하나의 출력 포트 정보를 포함하는 것을 특징으로 하는 NoC 패킷 대기시간 관리 방법.
- 제12항, 제13항, 제15항 내지 제22항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060090565A KR100785472B1 (ko) | 2006-09-19 | 2006-09-19 | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 |
US11/644,909 US20080069094A1 (en) | 2006-09-19 | 2006-12-26 | Urgent packet latency control of network on chip (NOC) apparatus and method of the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060090565A KR100785472B1 (ko) | 2006-09-19 | 2006-09-19 | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100785472B1 true KR100785472B1 (ko) | 2007-12-13 |
Family
ID=39140963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060090565A KR100785472B1 (ko) | 2006-09-19 | 2006-09-19 | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080069094A1 (ko) |
KR (1) | KR100785472B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010074455A3 (en) * | 2008-12-23 | 2010-08-19 | Samsung Electronics Co., Ltd. | Urgent packet transmission/reception apparatus and method for digital broadcast system |
KR101297533B1 (ko) | 2013-02-05 | 2013-08-16 | 서울과학기술대학교 산학협력단 | 네트워크 온 칩 성능 향상을 위한 xy-yx 라우팅 장치 및 방법 |
KR101609288B1 (ko) | 2014-07-28 | 2016-04-05 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 무버퍼 noc 및 noc 전자요소의 데이터 처리 방법 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612711B1 (en) * | 2009-09-21 | 2013-12-17 | Tilera Corporation | Memory-mapped data transfers |
WO2011148583A1 (ja) * | 2010-05-27 | 2011-12-01 | パナソニック株式会社 | バス制御装置およびバス制御装置に指示を出力する制御装置 |
FR2961048B1 (fr) * | 2010-06-03 | 2013-04-26 | Arteris Inc | Reseau sur puce avec caracteristiques de qualite-de-service |
JP2012146201A (ja) | 2011-01-13 | 2012-08-02 | Toshiba Corp | オンチップルータ及びそれを用いたマルチコアシステム |
CN104539547B (zh) * | 2014-11-14 | 2017-10-10 | 中国科学院计算技术研究所 | 一种用于三维集成电路片上网络的路由器及路由方法 |
CN113839878B (zh) * | 2021-09-26 | 2023-05-23 | 南京宁麒智能计算芯片研究院有限公司 | 一种面向数据密集型应用的片上网络近似通信*** |
CN115277563B (zh) * | 2022-06-07 | 2024-03-19 | 南京大学 | 一种基于离线强化学习的片上网络近似控制*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990054868A (ko) * | 1997-12-26 | 1999-07-15 | 정선종 | 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050058149A1 (en) * | 1998-08-19 | 2005-03-17 | Howe Wayne Richard | Time-scheduled and time-reservation packet switching |
US6611519B1 (en) * | 1998-08-19 | 2003-08-26 | Swxtch The Rules, Llc | Layer one switching in a packet, cell, or frame-based network |
US6631132B1 (en) * | 1999-10-04 | 2003-10-07 | Veraz Networks Ltd. | Urgent packet transmission |
US6792584B1 (en) * | 2001-10-30 | 2004-09-14 | Lsi Logic Corporation | System and method for designing an integrated circuit |
US7200137B2 (en) * | 2002-07-29 | 2007-04-03 | Freescale Semiconductor, Inc. | On chip network that maximizes interconnect utilization between processing elements |
US7051150B2 (en) * | 2002-07-29 | 2006-05-23 | Freescale Semiconductor, Inc. | Scalable on chip network |
US7603441B2 (en) * | 2002-12-27 | 2009-10-13 | Sonics, Inc. | Method and apparatus for automatic configuration of multiple on-chip interconnects |
US8020163B2 (en) * | 2003-06-02 | 2011-09-13 | Interuniversitair Microelektronica Centrum (Imec) | Heterogeneous multiprocessor network on chip devices, methods and operating systems for control thereof |
KR100555753B1 (ko) * | 2004-02-06 | 2006-03-03 | 삼성전자주식회사 | 원칩 시스템에서 라우터들간의 라우팅 경로 설정 장치 및방법 |
US7466701B2 (en) * | 2004-11-12 | 2008-12-16 | Stmicroelectronics S.R.L. | Routing procedure and system, corresponding network, such as a network on chip (NOC), and computer program product therefor |
US7380035B1 (en) * | 2005-03-24 | 2008-05-27 | Xilinx, Inc. | Soft injection rate control for buses or network-on-chip with TDMA capability |
US7965725B2 (en) * | 2005-05-31 | 2011-06-21 | Stmicroelectronics, Inc. | Hyper-ring-on-chip (HyRoC) architecture |
-
2006
- 2006-09-19 KR KR1020060090565A patent/KR100785472B1/ko not_active IP Right Cessation
- 2006-12-26 US US11/644,909 patent/US20080069094A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990054868A (ko) * | 1997-12-26 | 1999-07-15 | 정선종 | 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010074455A3 (en) * | 2008-12-23 | 2010-08-19 | Samsung Electronics Co., Ltd. | Urgent packet transmission/reception apparatus and method for digital broadcast system |
KR101500339B1 (ko) * | 2008-12-23 | 2015-03-09 | 삼성전자주식회사 | 디지털방송 시스템의 패킷 통신 장치 및 방법 |
KR101297533B1 (ko) | 2013-02-05 | 2013-08-16 | 서울과학기술대학교 산학협력단 | 네트워크 온 칩 성능 향상을 위한 xy-yx 라우팅 장치 및 방법 |
KR101609288B1 (ko) | 2014-07-28 | 2016-04-05 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 무버퍼 noc 및 noc 전자요소의 데이터 처리 방법 |
US10084710B2 (en) | 2014-07-28 | 2018-09-25 | Huawei Technologies Co., Ltd. | Data processing method of NOC without buffer and NOC electronic element |
Also Published As
Publication number | Publication date |
---|---|
US20080069094A1 (en) | 2008-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100785472B1 (ko) | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 | |
KR100687659B1 (ko) | Axi 프로토콜에 따른 락 오퍼레이션을 제어하는네트워크 인터페이스, 상기 네트워크 인터페이스가 포함된패킷 데이터 통신 온칩 인터커넥트 시스템, 및 상기네트워크 인터페이스의 동작 방법 | |
KR100737943B1 (ko) | 네트워크-온-칩 응답 신호 제어 장치 및 그 방법 | |
Rostislav et al. | An asynchronous router for multiple service levels networks on chip | |
US8638665B2 (en) | Router, information processing device having said router, and packet routing method | |
US8589614B2 (en) | Network system with crossbar switch and bypass route directly coupling crossbar interfaces | |
US10523599B2 (en) | Buffer sizing of a NoC through machine learning | |
Hoskote et al. | A TCP Offload Accelerator for 10 Gb/s Ethernet in 90-nm CMOS | |
KR100721444B1 (ko) | 네트워크-온-칩 전력 제어 장치 및 그 방법 | |
US10554584B2 (en) | Dedicated SSR pipeline stage of router for express traversal (EXTRA) NoC | |
US20090161659A1 (en) | On-chip apparatus and method of network controlling | |
Gibiluka et al. | BAT-Hermes: a transition-signaling bundled-data NoC router | |
US6950886B1 (en) | Method and apparatus for reordering transactions in a packet-based fabric using I/O streams | |
JP2010109869A (ja) | 半導体装置 | |
KR102497804B1 (ko) | 듀얼 스위칭 네트워크 모드들에서 네트워킹 가능한 온칩 네트워크 장치 및 그것의 동작 방법 | |
KR100846739B1 (ko) | 네트워크-온-칩 인터페이스 장치 및 이를 이용한네트워크-온-칩 패킷 인코딩 방법 | |
Jatti et al. | Performance enhancement and area optimization of 3× 3 NoC using random arbiter | |
Nagalaxmi et al. | Design and Performance Analysis of Low Latency Routing Algorithm based NoC for MPSoC | |
Zeng et al. | A performance enhanced dual-switch Network-on-Chip architecture | |
US9336172B2 (en) | Parallel computer system, data transfer device, and method for controlling parallel computer system for performing arbitration | |
EP3913490A1 (en) | Routing traffics having primary and secondary destinations in communication networks | |
KR101073534B1 (ko) | 데이터 통신 방법 및 프로세싱 시스템 | |
CN114968861A (zh) | 一种两写两读的数据传输结构以及片上多通道交互网络 | |
JP2002368786A (ja) | パケット転送方法及びパケット転送装置 | |
US20060117114A1 (en) | Staggering memory requests |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
G170 | Re-publication after modification of scope of protection [patent] | ||
LAPS | Lapse due to unpaid annual fee |