KR101937211B1 - 상호 연결에서 이종 채널 용량 - Google Patents

상호 연결에서 이종 채널 용량 Download PDF

Info

Publication number
KR101937211B1
KR101937211B1 KR1020157008705A KR20157008705A KR101937211B1 KR 101937211 B1 KR101937211 B1 KR 101937211B1 KR 1020157008705 A KR1020157008705 A KR 1020157008705A KR 20157008705 A KR20157008705 A KR 20157008705A KR 101937211 B1 KR101937211 B1 KR 101937211B1
Authority
KR
South Korea
Prior art keywords
channels
width
message
channel
performance
Prior art date
Application number
KR1020157008705A
Other languages
English (en)
Other versions
KR20150140265A (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 넷스피드 시스템즈
Publication of KR20150140265A publication Critical patent/KR20150140265A/ko
Application granted granted Critical
Publication of KR101937211B1 publication Critical patent/KR101937211B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/109Integrated on microchip, e.g. switch-on-chip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/626Queue scheduling characterised by scheduling criteria for service slots or service orders channel conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

다른 채널들이 비트들 수에서 다른 폭을 갖도록 연결되는 시스템 및 그 구성 방법이 개시된다. 이종 채널 NoC 상호연결을 구성하는 예시적인 프로세스가 개시되며, 채널 폭은 제공된 대역폭 사양 및 다양한 시스템 구성들 사이의 지연에 기초하여 결정될 수 있다.

Description

상호 연결에서 이종 채널 용량{HETEROGENEOUS CHANNEL CAPACITIES IN AN INTERCONNECT}
본 명세서에 개시된 방법 및 구현 예들은 상호 연결 아키텍처에 대한 것으로서, 더 상세하게는 네트워크 온 칩 상호 연결 아키텍처에 대한 것이다.
집적도, 시스템 복잡도, 그리고 트랜지스터 크기 축소의 증가로 인해서, 칩의 부품 개수가 급격하게 증가하고 있다. 칩 멀티-프로세서(CMP)들은 많은 수의 동종 프로세서 코어, 메모리 그리고 I/O 서브시스템을 포함하지만, 시스템-온-칩(SoC)들 복합체는 다양한 부품, 예를 들어, 프로세서 코어, DSP, 하드웨어 가속기, 메모리 그리고 I/O를 포함할 수 있다. 두 시스템 모두에서 온-칩 상호 연결은, 다양한 부품 사이의 고성능 통신을 제공하는데 중요한 역할을 한다. 전통적인 버스 및 크로스바(crossbar) 기반 상호연결의 적응성(scalability) 제한 때문에, 네트워크-온-칩(NoC)이 많은 개수의 부품을 칩 상에서 상호 연결하는 패러다임으로 출현하였다.
네트워크-온-칩은 점대점(point-to-point) 물리적 링크를 사용하여 서로 상호 연결된 다수의 라우팅 노드로 구성된 전역 공유 통신 인프라스트럭처이다. 메시지는 소스 부품에서 주입되고 여러 중간 노드 및 물리적 링크를 통해 소스 부품으로부터 목적지로 라우팅 된다. 목적지 부품은 이어서 메시지를 뽑아내어 목적지 부품에 제공한다. 이하에서, 용어 '부품'(component), '블록'(block) 또는 '코어'(core)는 네트워크 온 칩을 사용하여 연결 접속된 다양한 시스템 부품을 가리키기 위해서 상호 교환되어 사용될 것이다. 용어 '라우터' 및 '노드'는 또한 상호 교환되어 사용될 것이다. 일반화에 따른 손실 없이, 여러 개의 상호 연결된 부품을 갖는 시스템은 그 자체로 '멀티-코어 시스템'(multi-core system)으로 언급될 것이다.
시스템 네트워크를 형성하기 위해서 라우터들이 서로 연결되는 가능한 통신망구성(topology)이 여러 가지 있다. 양방향성 링(bi-directional ring)(도 1a) 및이차원 그물망(2-D mesh)(도 1b)은 관련 기술 분야에서 통신망구성의 예이다.
패킷은 다양한 부품 사이의 상호통신을 위한 메시지 전달 단위이다. 라우팅은 패킷이 소스로부터 목적지로 전달되는 네트워크의 라우터 및 물리적 링크 세트인 경로를 확인함을 포함한다. 부품들은 하나 또는 여러 라우터의 하나 또는 여러 포트에 연결된다; 이 같은 각 포트는 고유 ID를 가지고 있다. 패킷은, 목적지 부품으로 라우팅 되기 위해서, 중간 라우터가 사용하게 되는 목적지 라우터 및 포트 ID를 소지한다.
라우팅 기술의 예는 결정론적 라우팅을 포함하는데 이는 모든 패킷에 대해서 A로부터 B로 동일한 경로를 선택함을 포함한다. 이 같은 라우팅 형태는 네트워크 기술 분야에서 자명하며, 기반 네트워크(undderlying network)에 존재할 수 있는 경로 다이버시티(path diversity)들에 대해 균형을 부과하지(load) 않는다. 하지만, 이 같은 결정론적 라우팅은 하드웨어로 구현하기가 간단할 수 있고 패킷 순서를 유지하고, 쉽사리 네트워크 레벨에서의 교착상태가 없도록 할 수 있다. 최단 경로 라우팅은 소스로부터 목적지로의 홉 수를 감소시키기 때문에 지연을 최소화한다. 이 같은 이유로 인해, 최단 경로는 또한 두 부품의 통신에서 최저 전력 소모 경로이다. 차원-순서(dimension-order) 라우팅은 2차원 그물망 네트워크에서 결정론적 최단 경로 라우팅 형태이다.
도 2는 2차원 그물망에서 XY 라우팅의 예를 도시한다. 더 상세하게, 도 2는 전방 노드 '34'로부터 노드 '00'로의 XY 라우팅을 도시한다. 도 2의 예에서, 각 부품은 라우터 하나의 단지 한 개의 포트에 연결된다. 패킷은, X 차원이 목적지의 X 차원과 동일한 노드 '04'에 달할 때까지, 먼저 X 차원에서 라우팅 된다. 패킷은 이어서 목적지 노드에 도달할 때까지 Y 차원에서 라우팅 된다.
테이블을 사용하는 라우팅 및 소스 라우팅은 NoC에서 사용되는 다른 라우팅 옵션이다. 적응 라우팅은 네트워크의 상태에 기초하여 네트워크상의 두 지점 사이의 경로를 동적으로 변경한다. 이 같은 형태의 라우팅은 분석 및 구현에 있어서 복잡하고 따라서 실제로는 거의 사용되지 않는다.
NoC은 여러 개의 물리적 네트워크를 포함할 수 있다. 각 물리적 네트워크에 대해서, 다른 형태의 메시지들은 다른 가상 네트워크들을 통해 전달되는 여러 개의 가상 네트워크가 존재할 수 있다. 이 경우, 각 물리적 링크 또는 채널에서, 여러 개의 가상 채널이 있다; 각 가상 채널은 두 끝 지점 모두에 전용 버퍼를 구비할 수 있다. 임의의 주어진 클록 사이클에서, 단지 하나의 가상 채널이 데이터를 물리적 채널에 전달할 수 있다.
NoC 상호 연결은 종종 웜홀(wormhole) 라우팅을 채용한다. 웜홀 라우팅에서는 큰 메시지 또는 패킷이 플릿(filt)(또한 흐름 제어 디지트(digit) 언급된다)으로 알려진 작은 조각으로 쪼개진다. 제1 플릿은 헤더 플릿으로 페이로드 데이터와 함께 중요 메시지 레벨 정보(key message level info)와 패킷의 라우트(rout)에 대한 정보를 보유하며, 이 메시지와 관련된 모든 후속 플릿에 대한 라우팅 양식을 마련한다. 0 또는 보다 많은 본체 플릿이 헤드 플릿을 뒤따르며, 본체 플릿은 나머지 데이터 페이로드를 보유한다. 최후 플릿은 꼬리 플릿으로서 마지막 데이터 페이로드를 보유할 뿐만 아니라 메시지에 대한 연결을 폐쇄하기 위해 몇몇 부기(bookkeeping)를 수행한다. 웜홀 흐름 제어에서, 가상 채널이 종종 구현된다.
물리적 채널은 가상 채널(VC)이라고 불리는 복수 개의 독립적인 논리 채널로 시간 구획(time slice)된다. VC은 패킷을 라우팅하기 위해 여러 개의 독립적인 경로를 제공하지만, 물리적인 채널에서 시간-다중화된다. 가상 채널은 채널에 대해 패킷의 플릿들의 처리를 조정하는데 필요한 상태를 간직한다. 최소한도로, 이 상태는, 라우트의 다음 홉을 위한 현재 노드의 출력 채널과 가상 채널의 상태(유휴 상태, 소스를 기다리는 상태, 또는 활성화 상태)를 확인(식별)한다. 가상 채널은 또한, 현재 노드 상에 버퍼되는(buffered on) 패킷의 플릿들에 대한 포인터와 다음 노드에서 가용한 많은 플릿 버퍼들을 포함한다.
용어 "웜홀"은 채널 상에서 메시지가 전달되는 방식에 관련된다; 다음 라우터의 출력 포트가 아주 짧아 수신된 데이터가 전체 메시지가 도달하기 전에 헤드 플릿에 전달될 수 있다. 이는, 라우터를 헤드 플릿이 도착하자마자 빠르게 설정하도록 하고 이어서 대화의 나머지로부터 옵트 아웃(opt out)하도록 한다. 메시지가 플릿 단위로 전달되기 때문에, 메시지는 다른 라우터들에서 그 경로를 따라서 여러 개의 플릿 버퍼를 점유할 수 있고, 이는 벌레(worm) 모양 이미지를 생성한다.
다양한 말단 점들 사이의 통신량에 기초하여 그리고 다양한 메시지들을 위해 사용되는 라우트 및 물리적 네트워크에 기초하여, NoC 상호 연결의 다른 물리적 채널들이 다른 레벨의 적재 및 적체(load and congestion)를 경험할 것이다. NoC 상호 연결의 다양한 물리적 채널들은 채널 폭(물리적으로 많은 배선) 및 동작하는 클록 주파수에 의해 결정된다. NoC의 다양한 채널들은 다른 클록 주파수들에서 작동할 수 있다. 하지만, 모든 채널은 물리적 배선의 폭 또는 개수가 동일하다. 이 폭은 다양한 채널들의 가장 큰 적재 채널 및 클록 주파수에 기초해서 결정될 수 있다.
본 발명의 실시 예는 네트워크 온 칩 상호 연결 아키텍처를 제공한다.
예시적인 구현의 일 측면은 방법을 포함할 수 있다. 이 방법은, 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 결정 그리고/또는 조정함을 포함한다.
본 발명의 예시적인 구현의 다른 측면은, 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 결정 그리고/또는 조정함을 포함하는 프로세스 실행을 위한 명령들을 저장하는 컴퓨터로 판독가능한 저장 매체를 포함할 수 있다.
본 발명의 예시적인 구현의 또 다른 측면은, 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 결정 그리고/또는 조정하도록 구성된 폭 조정 모듈을 포함하는 시스템을 포함할 수 있다.
본 발명에 따르면 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록 결정, 조정될 수 있다.
도 1a 및 도 1b는 각각 양방향 링 및 2차원 그물망 NoC 통신망구성을 도시한다.
도 2는 종래의 2차원 그물망에서 XY 라우팅의 예를 도시한다.
도 3a 및 도 3b는 각각 본 발명의 예시적인 구현에 따른, 링크 폭으로 표시되는 비대칭 채널 폭/크기를 갖는 링 및 2차원 NoC의 예를 도시한다.
도 4는 본 발명의 예시적인 구현에 따른 비대칭 입력 및 출력 채널 폭을 갖는 라우터 아키텍처의 예를 도시한다.
도 5는 본 발명의 예시적인 구현에 따른 경로를 따라서 다양한 조합의 채널 폭을 갖는 소스 노드에서 목적지 노드로의 통신 순서의 예를 도시한다.
도 6은 본 발명의 예시적인 구현에 따른 채널의 폭을 결정할 채널 상의 최대 트래픽을 결정하도록 구성된 흐름 그래프의 예를 도시한다.
도 7은 본 발명의 예시적인 구현에 따른 이종 NoC에서 채널 폭을 결정하기 위한 흐름도를 도시한다.
도 8은 본 발명의 예시적인 구현에 따른 물리적 채널 및 가상 채널을 갖는 NoC의 예시적인 구현을 도시한다.
도 9는 본 명세서에 개시된 예시적인 구현들이 수행될 수 있는 컴퓨터/서버 블록을 도시한다.
SoC에서 복잡한 트래픽 프로파일(complex traffic profile)은 SoC의 다양한 구성들을 연결하는 상호 연결의 다양한 채널들 상에 불균일한 적재(load)를 생성할 수 있다. 예를 들어, 여기에 개시된 구현 예들은, 시스템에서 특정의 블록간(inter-block) 통신 패턴을 위한 이종 채널 용량(여러 배선(wire))으로 상호 연결을 구성하는 개념에 기반을 둔다. 또한, NoC 상호 연결의 자동 구성의 예시적인 프로세스가 개시된다.
NoC 상호 연결의 다양한 채널들 상의 적재는 다양한 구성들이 메시지를 보내는 전송율, NoC 상호 연결의 통신망구성, 다양한 구성들이 NoC 노드에 연결되는 방식, 그리고 다양한 메시지들이 NoC에서 취하는 경로에 의존한다. 채널들은 메시지들이 다양한 채널들을 통해 이동할 때 NoC 노드들 내에서 메시지의 재포맷(reformatting)을 피하기 위하여, 전체 NoC에서 여러 배선들에 있어서 균일한 크기로 될 수 있다. 이 같은 경우에, 적체를 피하기 위해서, 모든 채널은 NoC에서 가장 큰 적재를 갖는 채널에 기반하여 크기가 결정될 수 있다. 채널들의 적재 균형은 가장 적재가 낮은 경로를 통해 메시지를 라우팅함으로써 수행될 수 있고 이는 다양한 채널들의 비-균일한 적재를 따라서 최대 적재를 감소시킨다. 하지만, 다른 경로들을 선택하는 유연성이 제한된다. 라우트(route) 경로들은 최소 전향(minimum turn)을 사용하여 최단 경로를 사용하는 것 같은 다양한 한정을 가질 수 있거나 다양한 구성들 사이의 경로 다이버시티가 결여될 수 있다. 따라서, 대부분의 SoC에서는, 채널들은 비-균일하게 적재되고, 전역 NoC 채널 폭을 결정하기 위한 최고 채널 적재의 사용으로 면적, 전력 및 상호 연결 비용이 증가한다.
이 같은 종래 시스템과 달리, 여러 배선들에 있어서 동종(homogeneous) 채널 폭을 사용하는 NoC 상호 연결은, 예를 들어 본 명세서에 개시된 예시적인 구현들은 여러 채널이 다른 개수의 배선을 가질 수 있는 상호 연결 디자인에 대한 것이다. 채널 대역폭 요건은, 트래픽 프로파일에 기초하여, 채널에 예상되는 최대 데이터 대역폭을 계산함으로써 결정될 수 있다. 몇몇 채널이 그 대역폭 요건에 따라 다른 폭을 가진다면, NoC 내의 다양한 노드들은 메시지들이 다른 폭을 갖는 두 채널 사이에서 전달될 때, 재포맷 되어야 할 수 있다. 단일 메시지 플릿이 여러 개의 더 작은 플릿으로 분할될 필요가 있거나 여러 메시지 플릿이 더 큰 메시지 플릿을 형성하기 위해 서로 합쳐질 필요가 있을 수 있다. 예를 들어, 128-비트 입력 채널 상의 하나의 128-비트 플릿은, 128-비트 입력 채널에서 64-비트 입력 채널로 이동할 때, 64-비트 플릿 두 개로 분할될 수 있다.
이 같은 이종 채널 NoC 상호 연결의 예가 도 3a 및 도 3b에 도시되어 있다. 도 3a는 본 발명의 예시적인 구현에 따른, 이종 채널 폭을 갖는 6-노드 링을 도시한다. 네 개의 프로세서 구성 proc1, proc2, proc3 및 proc4는 두 개의 메모리 구성 mem1 및 mem2에 연결된다. 이 같은 상호 연결에서 채널들은 두 개의 폭, 64-비트(1 유닛) 및 128-비트(2 유닛)이다. 구성 A, B, C 및 F를 NoC에 연결하는 라우터들은 도시된 바와 같이 다른 폭의 여러 입력 및 출력 채널을 가지며 다른 폭의 채널을 통과할 때 메시지를 재포맷 할 필요가 있다. 도 3b는 본 발명의 예시적인 구현에 따른 3x3 통신망구성으로 조직된 9-노드 그물망 상호 연결을 도시한다. 여기서, 6개의 프로세서 proc1, proc2, ..., proc6는 3개의 메모리 mem1, mem2 및 mem3에 연결되고, 구성 A, B, C, D, E 및 F에 연결된 라우터들은 동일하지 않은 폭의 채널을 가진다.
도 4는 본 발명의 예시적인 구현에 따른 다른 폭의 다양한 입력 및 출력 채널을 가지는 5-포트 라우터의 아키텍처를 도시한다. 도 4의 예시에서, 채널 폭 및 대응하는 버퍼 폭이 링크의 폭으로 표시되었으며, 이 폭은 64-비트(1 유닛)에서 256-비트(4 유닛)로 다양하다. 플릿 재포맷은 입력 및 출력 채널 폭에 기반하여 수행된다. 예를 들어, 128-비트(2 유닛) 플릿이 128-비트 채널에 도착하고 128-비트 버퍼에 기입될 때, 플릿은 도시된 바와 같이 64-비트, 128-비트 또는 256-비트 출력 채널에 전달될 수 있다. 라우터 노드는 입력 및 출력 채널 폭에 기초하여, 큰 플릿을 작은 여러 개의 플릿으로 분할하거나 여러 개의 플릿을 하나의 큰 플릿으로 결합함으로써, 메시지를 재포맷 한다. 도 4의 예에서, 재포맷은 하나의 메시지 내에서 이루어지고, 여러 개의 메지지에서 이루어지지 않는다. 하지만, 동일한 소스에서 오고 동일한 목적지로 가는 여러 메시지의 재포맷이 또한 수행될 수 있다. 메시지 도착 패턴에 따라서, 이 같은 기회가 많은 네트워크에서는 거의 발생하지 않을 수 있다.
이종 채널 폭을 갖는 NoC에서, NoC 노드들 내에서 일어나는 메시지 재포맷은 말단 구성들로부터 투명성이 유지된다. 따라서, 만약 목적지 호스트가 128-비트 플릿의 메시지를 예상한다면, NoC는, 라우트를 따라서 여러 번의 분절화(segmentation) 및 재조합(reassembly) 동작 이후에 메시지가 128-비트로 최종 목적지에 도달되도록, 유지된다. 따라서, 채널은 호스트 말단으로부터 모든 말단 채널간(end-to-end channel) 채널 폭이 초기 동종 상호 연결과 동일하게 유지하도록 크기가 정해진다. 예를 들어, 128-비트 전송 및 수신 호스트 쌍 사이에서, 상호 연결은 라우트를 따라서 채널을 64-비트 또는 더 작은 비트로 줄일 수 있고, 최종 목적지 호스트에서 라우터의 출구 전송 채널(egress transmit channel)에서 다시 128-비트로 증가시킬 수 있다.
본 발명의 예시적인 구현에 따른 일관성 채널 폭 전환(consistent channel width conversion)의 몇몇 예가 도 5에 도시되어 있다. 경로(500)는 소스 구성 및 목적지 구성 사이에서 동종의 128-비트(2 유닛) 채널 폭을 갖는 경로를 도시한다. 경로(501)는 말단 호스트들에서 채널 폭이 동일하게 유지되는 호스트들 사이의 경로 경로를 도시한다. 하지만, 경로를 따라서, 채널 폭이 소스의 2 유닛에서 먼저 4유닛으로 증가하고, 이어서 8 유닛으로 증가하고, 그 다음에 다시 4 유닛으로 감소하고 마지막으로 목적지에서 2 유닛으로 변한다. 경로(502)에서, 경로를 따라서 채널 폭은 소스의 2 유닛에서 8 유닛으로 증가하고, 이어서 1 유닛을 감소하고, 이어서 4 유닛으로 증가하고 마지막으로 목적지에서 다시 2 유닛으로 돌아간다. 비록 NoC 내에서 채널 폭이 이종이지만(균일하지 않지만), 통신 호스트 쌍들 사이의 말단 채널간 폭은 일정하게 유지될 필요가 있다.
말단 채널간 폭 일관성은, 소스 호스트 및 목적지 호스트가 다른 전송 및 수신 채널 폭을 갖는 경우에도 유지된다. 예를 들어 64-비트 전송 채널 호스트는 메시지를 128-비트 수신 채널 호스틀 전달할 때, 메시지가 라우트를 따라서 상향- 및 하향- 전환되더라도, 전달될 메시지는 128-비트 플릿이 되도록 만들어진다.
NoC에서 다양한 채널들의 폭이 채널에서 전달되는 모든 메시지의 대역폭 요건뿐만 아니라 지연 요건에 의해서도 결정될 수 있다. 채널들이 이미 필요한 평균 데이터율보다 넓다면, 채널 폭을 넓게 만들어 그래서 높은 채널 대역폭을 할당하는 것이 반드시 쓰루풋(throughput)을 증가시키지는 않을 수 있다. 하지만, 채널을 넓게 만드는 것은 비-균일한 트래픽 분포하에서는 지연을 감소시킬 수 있다. 최소 채널 폭은 따라서 채널을 지나가는 모든 흐름의 데이터 쓰루풋과 적어도 동일하게 결정될 수 있다.
채널의 최소 폭을 결정하기 위해서, 메시지들이 채널에서 전달되는 소스 및 목적지 쌍 모두의 목록이 만들어진다. 사용자는, 모든 메시지의 데이터율을 첨가함으로써 시스템이 채널의 크기를 결정하도록 모든 메시지의 데이터율을 제공할 수 있다. 메시지들의 데이터율이 제공되지 않고, 모든 구성의 데이터 전송율 및 수신율이 알려져 있다면, 복잡한 트래픽 프로파일을 갖는 복잡한 시스템에서 최소 채널 폭(또는 최대 지속 데이터율(maximum sustained data rate))을 결정하는데 다른 구현 방법이 사용될 수 있다.
예를 들어, 모든 프로세서가 어떠한 메모리와도 통신을 하는, 프로세서 4개, 메모리 2개 그리고 공유 메모리 컴퓨터 환경을 상정한다. 프로세서들의 피크 전송율이 64-비트/초이고 메모리들의 피크 수신율이 64-비트/초라고 가정한다. 이 같은 환경에서, 프로세서는 데이터의 일 부분을 메모리 하나에 보내고 데이터의 나머지 부분을 다른 메모리로 보낼 수 있고, 또는 단지 한 메모리와 모든 데이터 통신을 할 수 있다. 통신 패턴에 따라서, 프로세서는 64-비트/초의 속도로 전송할 수 있다.
따라서, 256-비트/초의 피크 채널 쓰루풋을 갖는 4개 프로세서 NoC가 디자인될 수 있다. 하지만, 이 예에서, 통신의 통합율(aggregate rate)은 메모리 두 개의 통합 수신 용량인 128-비트/초를 결코 넘을 수 없다. 다양한 채널들 상의 적재는 또한 상호 연결 통신망구성, 라우트, 및 다양한 성분의 연결 위치에 의존한다.
도 3a에 도시된 바와 같이, 양방향 링을 사용하여 프로세서 네 개 및 메모리 두 개가 연결된 것을 가정한다. 이용가능한 두 개의 라우트 사이에서, 최단 라우트가 항상 선택되고, 시계방향 라우트를 선택함으로써 연결(ties)을 끊는 것으로 가정한다.
본 실시 예에서 메모리들의 조합과 어떠한 프로세서가 통신하든지 간에, 구성 C 및 D, D 및 E, E 및 F 사이에 연결된 라우터들 사이의 채널 상의 피크 적재는 64비트/초(1 유닛)를 결코 초과하지 않을 것이다. 더욱이, 구성 F 및 A, A 및 B, 그리고 B 및 C 사이의 채널들에 대해서 128비트/초(2 유닛)의 적재를 겪는 통신 패턴이 있다.
더 복잡한 시스템 및 통신 패턴에서, 최소 필요한 채널 폭이 계산될 수 있어 다양한 채널들 상의 피크 데이터율을 결정하는 것이 도전과제일 수 있다. 이하에서 본 발명의 예시적인 구현에 따른 NoC 상호연결의 임의의 채널에서 피크 데이터율을 결정하는 데 사용될 수 있는 프로세스에 대해 설명한다.
채널 상에서 메시지들을 보내는 구성들 모든 쌍이, 모든 소스 구성을 좌측에 모든 목적지 구성을 우측에 갖는 양분 그래프 또는 방향성 흐름(directed flow)을 구성하는데 사용된다. 이어서, 소스 구성 및 목적지 구성은 방향성 가장자리(directional edge)들에 연결된다. 가장자리의 용량이 소스 구성이 그 라우트를 따라 목적지 구성에 데이터를 전송할 수 있는 최대율(maximum rate)이다. 용량은 소스의 피크 전송율 및 목적지의 피크 수신율을 넘지 않는다. 이어서, 두 개의 추가 구성이 그래프에 추가된다 - 하나는 S로서 최 좌측에 다른 하나는 D로서 최 우측에 추가된다. 이어서 최 좌측 구성이, 소스 구성들 각각에 대해 하나씩, 방향성 가장자리를 가지는 좌측 상의 소스 구성들 리스트에 연결된다. 이 가장자리들의 용량이 소스 구성들의 피크 전송율이다. 우측 상의 목적지 구성들 리스트가 이어서, 목적지 구성들 각각에 대해서 하나씩, 방향성 가장자리들을 갖는 최우측 가장자리에 연결된다. 이 가장자리들의 용량이 목적지 구성들의 피크 수신율이다. 도 6은 이 같은 그래프를 갖는 몇몇 채널을 보여주며, 채널에 대해서 중간 가장자리들에 의해 도시된 것 같이 5개의 소스가 4개의 목적지에 메시지를 전송하는 것으로 가정한 것이다.
이 같은 방향성 흐름 그래프가 일단 주어진 채널에 구성이 되게 되면, 도 7의 흐름 다이어그램이 각 채널의 폭을 결정하는데 활용될 수 있다. 블록 700에서, NoC의 채널들이 큐에 배치된다. 블록 701에서, 큐가 비었는지 여부가 확인된다. 큐가 비었으면, 종료된다. 큐가 비지 않았으면, 블록 702로 진행하여 큐의 헤드에서 채널을 선택 및 제거한다. 선택된 채널에 기반하여, 블록 703에서 양분 그래프의 구성 S로부터 최대 흐름이 계산된다. 관련 기술의 그래프 알고리즘들이 활용되어 방향성 흐름 그래프의 최대 흐름을 계산할 수 있다. 채널 상의 최대 데이터 적재는 최대 흐름을 초과하지 않을 것이다. 채널은 이어서 트래픽 분포에 상관없이 충분한 대역폭을 보장하도록 크기가 정해질 수 있다. 특정한 성능 목적에 따라, 채널폭은 더 증가되어 지연(latency)을 줄거나 예를 들어 비용을 줄이기 위해서 채널 폭이 감소될 수 있다. 이 과정이 NoC 각 채널에서 반복된다.
가장 채널 및 물리적 채널 모두를 갖는 상호연결에서, 물리적 채널 폭은 가장 채널의 가장 큰 폭과 동일하면서 서로 다른 가상 채널들은 다른 크기로 구성될 수 있다. 이 같은 시스템의 예시적인 구현이 도 8에 도시되어 있다. 도 8의 예에서, 입력 측의 가상 채널들은 라우터 중재 로직(arbitration logic)을 경유하여 출력 측의 물리적 채널을 두고 경합할 수 있다. 최대 흐름 그래프 분석을 통해서, 다양한 가상 채널들의 최대 대역폭 요건(requirement)이 획득될 수 있다. 하지만, 모든 가상 채널들이 물리적 채널과 시간을 공유할 경우(예를 들어, 어떠한 한 가상 채널도 단지 시간의 일 구획(fraction) 동안에만 데이터를 보내는 시스템의 경우), 가상 채널들은 이 값으로 크기가 구성되지 않을 수 있다.
예를 들어, 물리적 채널 상에 두 개의 가상 채널이 있을 경우, 그리고 각 가상 채널이 최소 64비트/사이클의 대역폭을 필요로 할 경우, 가상 채널들은 각각 64비트로 크기가 구성되지 않는다. 만약 채널이 그 같은 크기로 구성된다면, 물리적 채널을 동일하게 공유한다고 할 경우 가상 채널들 각각은 단지 대역폭 32비트/사이클을 수신할 것이다. 가상 채널들 둘 모두가 적어도 64비트/사이클의 데이터 대역폭을 가지도록 보장하기 위해서, 가상 채널들은 각각 128비트로 크기가 구성될 필요가 있다(동일한 물리적 채널을 공유한다고 가정할 경우).
물리적 채널을 공유하는 가상 채널이 아주 많다면, 그리고 각 가상 채널이 더로 다른 최소 대역폭 요건을 가진다면, 가상 채널들 모두가 그 대역폭 요건을 만족하도록 가상 채널들의 크기를 구성하는 것은 사소한 일이 아니다. 예시적 구현에서, 문제는 표준 선형 최적화 또는 선형 프로그램 문제이다. 이 같은 시나리오에서 가상 채널 폭들을 유도하기 위한 표준 선형 프로그램 해결책을 활용한다.
예를 들어, n 개의 가상 채널들(VC1, VC2, ... , VCn)이 물리적 채널을 공유하고, 최소 대역폭 요건이 각각 (B1, B2, ..., Bn) 이라고 가정한다. 따라서, 물리적 채널에서 전체 대역폭 요건은
Figure 112015033019118-pct00001
이다. si 가 VCi 의 폭을 가리킨다고 하자. 모든 i에 대해서
Figure 112015033019118-pct00002
가 된다. 물리적 채널의 폭은 max(for i = 1 to n, si)이다. VCi 가 중재 동안 시간의 분획 fi 을 얻었다고 가정할 경우, VCi 에 의해 수신된 대역폭은 fisi 이며 이는 요구되는 대역폭인 Bi 와 같거나 커야 한다. 모든 VCs 가 물리적 채널을 공유하기 때문에
Figure 112015033019118-pct00003
이다. 따라서 하기의 선형 제약(constraint) 세트가 항상 만족되어야 한다:
Figure 112015033019118-pct00004

가상 채널 대역폭 si 를 갖는 채널의 버퍼 비용은
Figure 112015033019118-pct00005
이다. 디자인 목적이 버퍼 비용을 최소화하는 것이라면, 목적 함수(objective function)는
Figure 112015033019118-pct00006
를 최소화하는 것이다. 디자인 목적이 배선의 수를 최소화하는 것이라면, 목적 함수 max(for i = 1 to n, si)는 최소화 될 수 있는데, 이는 물리 채널 폭이다. 목적들이 다를 경우, 대안적인 목적 함수들이 구성될 수 있다. 이 시점에서, 표준 선형 프로그램 알고리즘이 사용되어 문제를 해결하고, si 값들을 구하고, 제약들을 만족하고 목적 함수를 최소/최대로 하는 다양한 채널들의 폭을 구할 수 있다.
따라서 본 발명의 예시적 구현은, 제약 불균등의 열거, 최적화 목적에 기반하여 목적 함수의 구성에 의해서, 가상 채널 및 물리적 채널 크기 결정 문제를 표준 선형 프로그램 최적화 방법으로 맵핑(mapping)할 수 있다.
도 9는 본 발명의 예시적인 구현들이 수행될 수 있는 예시적인 컴퓨터 시스템(900)을 도시한다. 컴퓨터 시스템(900)은 I/O 유닛(935), 스토리지(storage)(960), 그리고 프로세서(910)를 포함할 수 있는 서버(905)를 포함한다. 프로세서(910)는 이 기술 분야에서 알려진 하나 이상의 유닛을 실행할 수 있다. 용어 "컴퓨터-판독가능한 매체"는 프로세서(910)의 실행을 위한 명령들을 제공하는데 사용되는 임의의 매체를 가리키며, 예를 들어 광 디스크, 자기 디스크, 읽기전용 메모리(ROM), 임의 접근 메모리(RAM), 고체상태소자, 드라이버 또는 전자적 정보를 저장하기에 적합한 임의 유형의 매체 또는 컴퓨터 판독 가능한 신호 매체(반송파 같은 일시적 매체를 포함)를 포함하며 여기에 한정되는 것은 아니다. I/O 유닛은 키보드, 터치 장치 또는 가상 명령 같은 입력 장치를 활용할 수 있는 사용자 인터페이스(940) 및 작동자(operator) 인터페이스(945)로 부터의 입력을 처리한다.
서버(905)는 또한 휴대용 하드 드라이브, 광 미디어(CD 또는 DVD), 디스크 미디어, 또는 컴퓨터가 실행 코드를 판독할 수 있는 임의의 다른 미디어 같은 제거가능한 스토리지를 포함할 수 있는 외부 스토리지(950)에 연결될 수 있다. 서버는 또한 예를 들어 사용자로부터 추가 정보를 요청할 뿐만 아니라 사용자에게 데이터 및 다른 정보를 출력하는 디스플레이 같은 출력 소자(955)에 연결될 수 있다. 서버(905)로부터 사용자 인터페이스(940), 작동자 인터페이스(945), 외부 스토리지(950) 그리고 출력 소자(955)로의 연결은 802.11 표준, 블루투스® 또는 전화통신 프로토콜(cellular protocol) 같은 무선 프로토콜 또는 케이블 또는 섬유 광학 같은 물리적 전송 매질을 통해 이루어질 수 있다. 출력 장치(955)는 따라서 사용자와 통신하기 위한 입력 장치로도 사용될 수 있다.
프로세서(910)는 하나 이상의 모듈을 실행할 수 있다. 폭 조정 모듈(911)은, 복수의 채널 중 적어도 하나가 복수의 채널 중 다른 하나와 다른 폭을 가지도록 복수의 채널의 각각의 최대 흐름 또는 복수의 채널의 각각에 대한 적어도 하나의 성능 목적에 기반하여 NoC에서 복수의 채널의 각각에 대해서 폭을 결정/조절하도록 구성된다. 폭 조정 모듈(911)은 복수의 채널의 데이터 트래픽 그래프 상에 최대 흐름 알고리즘의 적용으로부터 복수의 채널 각각의 최대 흐름을 결정하도록 더 구성될 수 있다. 폭 조정 모듈(911)은 적어도 하나의 특정 비용 함수를 최소화하면서 적어도 하나의 성능 목적을 만족하는 폭을 결정하기 위해서 선형 프로그램을 적용하는 것에 의해서 복수의 채널의 각각의 폭을 결정하도록 그리고 가상 및 물리적 채널 성능 요건을 만족하기 위한 제약 리스트를 구성하는 것에 의해 선행 프로그램을 적용하도록 더 구성될 수 있다. 폭 조정 모듈은 또한 제약 리스트에 기초하여 적어도 하나의 성능 목적 각각에 대한 적어도 하나의 목적 함수를 결정하도록 더 구성될 수 있다.
메시지 재포맷기 모듈(message reformatter module)(912)은 다른 폭들을 갖는 복수의 채널들 중 연결된 것들 사이에 메시지 매포맷을 구성하도록 그리고 다른 폭들을 갖는 복수의 채널들 중 연결된 것들 사이의 메시지 플릿을 조정하도록 구성될 수 있다. 메시지 매포맷 모듈(912)은 또한, NoC의 소스 및 목적지 말단 호스트 쌍들 모두가 말단간(end-to-end) 메시지 크기 및 메시지 포맷 일관성을 유지하도록 메시지 재포맷을 형성하도록 구성될 수 있다.
더욱이, 상세한 설명의 몇몇 부분은 컴퓨터 내의 동작들의 알고리즘 및 심볼 표현으로 제시되었다. 이 알고리즘에 의한 설명 및 심볼에 의한 표현은 가장 효과적으로 혁신 내용을 전달하기 위해서 데이터 처리 기술 분야에서 통상의 기술자에 의해 사용되는 수단이다. 알고리즘은 원하는 목적 상태 혹은 결과로 이끄는 일련의 정의된 단계들이다. 예시적인 구현들에서, 수행되는 단계들은 가시적인 결과(tangible result)를 달성하기 위해 가시적인 양들의 물리적인 조작들을 요구한다.
더욱이, 예시적인 구현들의 다른 구현들은 여기에 개시된 예시적인 구현들의 명세서 및 실행의 숙고를 통해서 통상의 기술자에게 자명할 것이다. 개시된 예시적인 구현들의 다양한 측면들 그리고/또는 구성들은 하나로 사용되거나 임의의 조합으로 사용될 수 있다. 명세서 및 예들은 예시적인 것이며, 진정한 범위 및 정신은 아래의 특허청구범위에 의한다.

Claims (20)

  1. 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 조정하고;
    상기 복수의 채널들 중 서로 연결된 채널들 사이에서 메시지 재포맷을 구성함을 포함하며,
    상기 메시지 재포맷은 상기 복수의 채널들 중 서로 연결된 채널들 사이에서 하나 이상의 메시지의 플릿을 조정하는, 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 메시지 재포맷은 상기 네트워크 온 칩의 소스 및 목적지 말단 호스트 쌍들 모두가 말단간 메시지 크기 및 메시지 포맷 일관성을 유지하도록 하나 이상의 메시지를 조정하는 방법.
  4. 청구항 1에 있어서,
    상기 복수의 채널들 각각의 최대 데이터 흐름은 상기 복수의 채널들의 데이터 트래픽 그래프 상의 최대 흐름 알고리즘의 적용으로부터 결정되는 방법.
  5. 청구항 1에 있어서,
    상기 복수의 채널들 각각의 폭을 결정함은 적어도 하나의 특정 비용 함수를 최소화하면서 적어도 하나의 성능 목적을 만족하는 폭을 결정하는 선형 프로그램을 적용함을 더 포함하는 방법.
  6. 청구항 5에 있어서,
    상기 선형 프로그램을 적용함은 가상 및 물리적 채널 성능 요건을 만족하기 위한 제약 리스트를 구성함을 더 포함하고, 적어도 하나의 목적 함수가 상기 제약 리스트에 기반한 적어도 하나의 성능 목적 각각에 대해서 유도되는 방법.
  7. 청구항 1에 있어서,
    상기 적어도 하나의 성능 목적은 지연 요건을 포함하며, 최단 경로 라우팅이 상기 지연 요건을 만족하기 위해 상기 복수의 채널들에 적용되는 방법.
  8. 프로세스를 실행하기 위한 명령들을 저장하는 컴퓨터로 판독가능한 매체로서,
    상기 명령들은 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 조정하고;
    상기 복수의 채널들 중 서로 연결된 채널들 사이에서 메시지 재포맷을 구성함을 포함하며,
    상기 메시지 재포맷은 상기 복수의 채널들 중 서로 연결된 채널들 사이에서 하나 이상의 메시지의 플릿을 조정하는, 컴퓨터로 판독가능한 저장 매체.
  9. 삭제
  10. 청구항 8에 있어서,
    상기 메시지 재포맷은 상기 네트워크 온 칩의 소스 및 목적지 말단 호스트 쌍들 모두가 말단간 메시지 크기 및 메시지 포맷 일관성을 유지하도록 하나 이상의 메시지를 조정하는 컴퓨터로 판독가능한 저장 매체.
  11. 청구항 8에 있어서,
    상기 복수의 채널들 각각의 최대 데이터 흐름은 상기 복수의 채널들의 데이터 트래픽 그래프 상의 최대 흐름 알고리즘의 적용으로부터 결정되는 컴퓨터로 판독가능한 저장 매체.
  12. 청구항 8에 있어서,
    상기 복수의 채널들 각각의 폭을 결정함은 적어도 하나의 특정 비용 함수를 최소화하면서 적어도 하나의 성능 목적을 만족하는 폭을 결정하는 선형 프로그램을 적용함을 더 포함하는 컴퓨터로 판독가능한 저장 매체.
  13. 청구항 12에 있어서,
    상기 선형 프로그램을 적용함은 가상 및 물리적 채널 성능 요건을 만족하기 위한 제약 리스트를 구성함을 더 포함하고, 적어도 하나의 목적 함수가 상기 제약 리스트에 기반한 적어도 하나의 성능 목적 각각에 대해서 유도되는 컴퓨터로 판독가능한 저장 매체.
  14. 청구항 8에 있어서,
    상기 적어도 하나의 성능 목적은 지연 요건을 포함하며, 최단 경로 라우팅이 상기 지연 요건을 만족하기 위해 상기 복수의 채널들에 적용되는 컴퓨터로 판독가능한 저장 매체.
  15. 네트워크 온 칩에서 복수의 채널 중 적어도 하나가 상기 복수의 채널 중 적어도 다른 하나와 다른 폭을 가지도록, 상기 복수의 채널 각각에 대한 적어도 하나의 성능 목적 또는 상기 복수의 채널 각각의 최대 데이터 흐름에 기초하여, 상기 복수의 채널 각각의 폭을 조정하도록 구성된 폭 조정 모듈; 그리고
    상기 복수의 채널들 중 서로 연결된 채널들 사이에서 메시지 재포맷을 구성하도록 구성된 메시지 재포맷기 모듈을 포함하며,
    상기 메시지 재포맷기 모듈은 상기 복수의 채널들 중 서로 연결된 채널들 사이에서 하나 이상의 메시지의 플릿을 조정하는 시스템.
  16. 삭제
  17. 청구항 15에 있어서,
    상기 메시지 재포맷기 모듈은 상기 네트워크 온 칩의 소스 및 목적지 말단 호스트 쌍들 모두가 말단간 메시지 크기 및 메시지 포맷 일관성을 유지하도록 하나 이상의 메시지를 조정하는 시스템.
  18. 청구항 15에 있어서,
    상기 복수의 채널들 각각의 최대 데이터 흐름은 상기 복수의 채널들의 데이터 트래픽 그래프 상의 최대 흐름 알고리즘의 적용으로부터 상기 폭 조정 모듈에 의해 결정되는 시스템.
  19. 청구항 15에 있어서,
    상기 폭 조정 모듈은 적어도 하나의 특정 비용 함수를 최소화하면서 적어도 하나의 성능 목적을 만족하는 폭을 결정하는 선형 프로그램을 적용하는 것에 의해서 상기 복수의 채널들 각각의 폭을 결정하도록 구성된 시스템.
  20. 청구항 19에 있어서,
    상기 폭 조정 모듈은, 가상 및 물리적 채널 성능 요건을 만족하기 위한 제약 리스트를 구성하는 것에 의해 선형 프로그램을 적용하도록 구성되고,
    상기 폭 조정 모듈은 상기 제약 리스트에 기반한 적어도 하나의 성능 목적 각각에 대해서 적어도 하나의 목적 함수를 유도하도록 더 구성되는 시스템.
KR1020157008705A 2012-10-09 2013-10-09 상호 연결에서 이종 채널 용량 KR101937211B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/647,557 2012-10-09
US13/647,557 US8885510B2 (en) 2012-10-09 2012-10-09 Heterogeneous channel capacities in an interconnect
PCT/US2013/064140 WO2014059024A1 (en) 2012-10-09 2013-10-09 Heterogeneous channel capacities in an interconnect

Publications (2)

Publication Number Publication Date
KR20150140265A KR20150140265A (ko) 2015-12-15
KR101937211B1 true KR101937211B1 (ko) 2019-01-11

Family

ID=50432583

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157008705A KR101937211B1 (ko) 2012-10-09 2013-10-09 상호 연결에서 이종 채널 용량

Country Status (4)

Country Link
US (2) US8885510B2 (ko)
JP (1) JP6093867B2 (ko)
KR (1) KR101937211B1 (ko)
WO (1) WO2014059024A1 (ko)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US8601423B1 (en) 2012-10-23 2013-12-03 Netspeed Systems Asymmetric mesh NoC topologies
US9774498B2 (en) 2012-12-21 2017-09-26 Netspeed Systems Hierarchical asymmetric mesh with virtual routers
US9185026B2 (en) 2012-12-21 2015-11-10 Netspeed Systems Tagging and synchronization for fairness in NOC interconnects
US9253085B2 (en) 2012-12-21 2016-02-02 Netspeed Systems Hierarchical asymmetric mesh with virtual routers
US9007920B2 (en) 2013-01-18 2015-04-14 Netspeed Systems QoS in heterogeneous NoC by assigning weights to NoC node channels and using weighted arbitration at NoC nodes
US9009648B2 (en) 2013-01-18 2015-04-14 Netspeed Systems Automatic deadlock detection and avoidance in a system interconnect by capturing internal dependencies of IP cores using high level specification
US9130856B2 (en) 2013-01-28 2015-09-08 Netspeed Systems Creating multiple NoC layers for isolation or avoiding NoC traffic congestion
US8934377B2 (en) 2013-03-11 2015-01-13 Netspeed Systems Reconfigurable NoC for customizing traffic and optimizing performance after NoC synthesis
US9160627B2 (en) 2013-04-04 2015-10-13 Netspeed Systems Multiple heterogeneous NoC layers
US9571402B2 (en) 2013-05-03 2017-02-14 Netspeed Systems Congestion control and QoS in NoC by regulating the injection traffic
US9185023B2 (en) 2013-05-03 2015-11-10 Netspeed Systems Heterogeneous SoC IP core placement in an interconnect to optimize latency and interconnect performance
US10027433B2 (en) 2013-06-19 2018-07-17 Netspeed Systems Multiple clock domains in NoC
US9781043B2 (en) 2013-07-15 2017-10-03 Netspeed Systems Identification of internal dependencies within system components for evaluating potential protocol level deadlocks
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
US9223711B2 (en) 2013-08-13 2015-12-29 Netspeed Systems Combining associativity and cuckoo hashing
US9294354B2 (en) 2013-10-24 2016-03-22 Netspeed Systems Using multiple traffic profiles to design a network on chip
US9830265B2 (en) 2013-11-20 2017-11-28 Netspeed Systems, Inc. Reuse of directory entries for holding state information through use of multiple formats
US9158882B2 (en) 2013-12-19 2015-10-13 Netspeed Systems Automatic pipelining of NoC channels to meet timing and/or performance
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
US9319232B2 (en) 2014-04-04 2016-04-19 Netspeed Systems Integrated NoC for performing data communication and NoC functions
US9762474B2 (en) 2014-04-07 2017-09-12 Netspeed Systems Systems and methods for selecting a router to connect a bridge in the network on chip (NoC)
US9465902B1 (en) 2014-04-11 2016-10-11 Altera Corporation Method and apparatus for designing a system using weighted-cost interconnect synthesis
WO2015157953A1 (zh) * 2014-04-17 2015-10-22 华为技术有限公司 基于Mesh结构的点对多点通信方法及通信节点
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9244845B2 (en) 2014-05-12 2016-01-26 Netspeed Systems System and method for improving snoop performance
CN105095147B (zh) 2014-05-21 2018-03-13 华为技术有限公司 片上网络的Flit传输方法及装置
US9473359B2 (en) 2014-06-06 2016-10-18 Netspeed Systems Transactional traffic specification for network-on-chip design
US9535848B2 (en) 2014-06-18 2017-01-03 Netspeed Systems Using cuckoo movement for improved cache coherency
US10528682B2 (en) 2014-09-04 2020-01-07 Netspeed Systems Automatic performance characterization of a network-on-chip (NOC) interconnect
US9742630B2 (en) 2014-09-22 2017-08-22 Netspeed Systems Configurable router for a network on chip (NoC)
US9477280B1 (en) 2014-09-24 2016-10-25 Netspeed Systems Specification for automatic power management of network-on-chip and system-on-chip
US10042404B2 (en) 2014-09-26 2018-08-07 Netspeed Systems Automatic generation of power management sequence in a SoC or 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
US9864728B2 (en) 2015-05-29 2018-01-09 Netspeed Systems, Inc. Automatic generation of physically aware aggregation/distribution networks
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
US10218580B2 (en) * 2015-06-18 2019-02-26 Netspeed Systems Generating physically aware network-on-chip design from a physical system-on-chip specification
US11016742B2 (en) * 2015-06-24 2021-05-25 Altera Corporation Channel sizing for inter-kernel communication
SG10201600224SA (en) * 2016-01-12 2017-08-30 Huawei Int Pte Ltd Dedicated ssr pipeline stage of router for express traversal (extra) noc
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
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
US10547514B2 (en) 2018-02-22 2020-01-28 Netspeed Systems, Inc. Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation
US10983910B2 (en) 2018-02-22 2021-04-20 Netspeed Systems, Inc. Bandwidth weighting mechanism based network-on-chip (NoC) configuration
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
US10860762B2 (en) * 2019-07-11 2020-12-08 Intel Corpration Subsystem-based SoC integration
US11362939B2 (en) * 2020-08-31 2022-06-14 Micron Technology, Inc. Flow control for a multiple flow control unit interface
US11580044B2 (en) 2020-08-31 2023-02-14 Micron Technology, Inc. Network credit return mechanisms
CN112416852B (zh) * 2020-12-08 2023-11-21 海光信息技术股份有限公司 环形互连结构路由确定方法及装置
US11716278B1 (en) 2022-01-25 2023-08-01 Bank Of America Corporation System and method for determining the shortest data transfer path in data communication

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090268677A1 (en) 2008-04-24 2009-10-29 National Taiwan University network resource allocation system and method of the same
JP5036920B1 (ja) 2011-03-09 2012-09-26 パナソニック株式会社 中継装置、中継装置の制御方法、およびプログラム
US20130051397A1 (en) 2011-08-26 2013-02-28 Sonics, Inc. Credit flow control scheme in a router with flexible link widths utilizing minimal storage

Family Cites Families (177)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3024995A1 (de) 1980-07-02 1982-01-28 Philips Patentverwaltung Gmbh, 2000 Hamburg Ultraschall-untersuchungsanordnung
JPS5936793A (ja) 1982-08-18 1984-02-29 三菱重工業株式会社 パルプ廃液ソ−ダ回収方法及び装置
US4933933A (en) 1986-12-19 1990-06-12 The California Institute Of Technology Torus routing chip
US5742738A (en) 1988-05-20 1998-04-21 John R. Koza Simultaneous evolution of the architecture of a multi-part program to solve a problem using architecture altering operations
US5105424A (en) 1988-06-02 1992-04-14 California Institute Of Technology Inter-computer message routing system with each computer having separate routinng automata for each dimension of the network
US5163016A (en) 1990-03-06 1992-11-10 At&T Bell Laboratories Analytical development and verification of control-intensive systems
US5588152A (en) 1990-11-13 1996-12-24 International Business Machines Corporation Advanced parallel processor including advanced support hardware
JP3147432B2 (ja) 1991-10-09 2001-03-19 株式会社日立製作所 パイプライン処理装置
US5355455A (en) 1991-11-19 1994-10-11 International Business Machines Corporation Method and apparatus for avoiding deadlock in a computer system with two or more protocol-controlled buses interconnected by a bus adaptor
EP0666004A4 (en) * 1992-10-21 1999-11-03 Bell Communications Res BROADBAND VIRTUAL PRIVATE NETWORK SYSTEM AND SERVICE.
JP2501169B2 (ja) 1993-03-18 1996-05-29 株式会社日立製作所 燃料電池及び電解質補給容器及び電解質補給方法
US5583990A (en) 1993-12-10 1996-12-10 Cray Research, Inc. System for allocating messages between virtual channels to avoid deadlock and to optimize the amount of message traffic on each type of virtual channel
US5859981A (en) 1995-07-12 1999-01-12 Super P.C., L.L.C. Method for deadlock-free message passing in MIMD systems using routers and buffers
US5764740A (en) * 1995-07-14 1998-06-09 Telefonaktiebolaget Lm Ericsson System and method for optimal logical network capacity dimensioning with broadband traffic
US5764741A (en) 1995-07-21 1998-06-09 Callmanage Ltd. Least cost rooting system
US5991308A (en) * 1995-08-25 1999-11-23 Terayon Communication Systems, Inc. Lower overhead method for data transmission using ATM and SCDMA over hybrid fiber coax cable plant
US5961623A (en) 1996-08-29 1999-10-05 Apple Computer, Inc. Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system
US6377543B1 (en) * 1997-08-13 2002-04-23 Telecommunications Research Laboratories Path restoration of networks
US6003029A (en) 1997-08-22 1999-12-14 International Business Machines Corporation Automatic subspace clustering of high dimensional data for data mining applications
US6101181A (en) 1997-11-17 2000-08-08 Cray Research Inc. Virtual channel assignment in large torus systems
KR100250437B1 (ko) 1997-12-26 2000-04-01 정선종 라운드로빈 중재 및 적응 경로 제어를 수행하는경로제어 장치
US6249902B1 (en) 1998-01-09 2001-06-19 Silicon Perspective Corporation Design hierarchy-based placement
US6415282B1 (en) 1998-04-22 2002-07-02 Nec Usa, Inc. Method and apparatus for query refinement
US6711152B1 (en) 1998-07-06 2004-03-23 At&T Corp. Routing over large clouds
US6968514B2 (en) 1998-09-30 2005-11-22 Cadence Design Systems, Inc. Block based design methodology with programmable components
US6674720B1 (en) 1999-09-29 2004-01-06 Silicon Graphics, Inc. Age-based network arbitration system and method
US6356900B1 (en) 1999-12-30 2002-03-12 Decode Genetics Ehf Online modifications of relations in multidimensional processing
US7046633B2 (en) 2000-09-21 2006-05-16 Avici Systems, Inc. Router implemented with a gamma graph interconnection network
CA2359168A1 (en) 2000-10-25 2002-04-25 John Doucette Design of meta-mesh of chain sub-networks
US7000011B1 (en) 2000-11-06 2006-02-14 Hewlett-Packard Development Company, Lp. Designing interconnect fabrics
US6967926B1 (en) 2000-12-31 2005-11-22 Cisco Technology, Inc. Method and apparatus for using barrier phases to limit packet disorder in a packet switching system
WO2002084509A1 (en) 2001-02-24 2002-10-24 International Business Machines Corporation A novel massively parrallel supercomputer
GB0118294D0 (en) 2001-07-27 2001-09-19 Ibm Method and system for deadlock detection and avoidance
US6711717B2 (en) 2001-10-11 2004-03-23 California Institute Of Technology Method and system for compiling circuit designs
US20030088602A1 (en) 2001-11-08 2003-05-08 Koninklijke Philips Electronics N.V. High-speed computation in arithmetic logic circuit
US20030145314A1 (en) 2002-01-31 2003-07-31 Khoa Nguyen Method of efficient dynamic data cache prefetch insertion
GB0304628D0 (en) 2003-02-28 2003-04-02 Imec Inter Uni Micro Electr Method for hardware-software multitasking on a reconfigurable computing platform
US7096459B2 (en) 2002-09-11 2006-08-22 International Business Machines Corporation Methods and apparatus for root cause identification and problem determination in distributed systems
US6925627B1 (en) 2002-12-20 2005-08-02 Conexant Systems, Inc. Method and apparatus for power routing in an integrated circuit
WO2004072796A2 (en) 2003-02-05 2004-08-26 Arizona Board Of Regents Reconfigurable processing
US7065730B2 (en) 2003-04-17 2006-06-20 International Business Machines Corporation Porosity aware buffered steiner tree construction
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
US7318214B1 (en) 2003-06-19 2008-01-08 Invarium, Inc. System and method for reducing patterning variability in integrated circuit manufacturing through mask layout corrections
US7725859B1 (en) 2003-08-01 2010-05-25 Cadence Design Systems, Inc. Methods and mechanisms for inserting metal fill data
US7379424B1 (en) 2003-08-18 2008-05-27 Cray Inc. Systems and methods for routing packets in multiprocessor computer systems
US7518990B2 (en) * 2003-12-26 2009-04-14 Alcatel Lucent Usa Inc. Route determination method and apparatus for virtually-concatenated data traffic
DE602005008573D1 (de) 2004-04-05 2008-09-11 Koninkl Philips Electronics Nv Integrierte Schaltung und Verfahren zur Zeitschlitz-Zuteilung
US7143221B2 (en) 2004-06-08 2006-11-28 Arm Limited Method of arbitrating between a plurality of transfers to be routed over a corresponding plurality of paths provided by an interconnect circuit of a data processing apparatus
US7583602B2 (en) * 2004-06-30 2009-09-01 Alcatel-Lucent Usa Inc. Methods and devices for routing traffic using a configurable access wireless network
US7219178B2 (en) 2004-09-30 2007-05-15 Arm Limited Bus deadlock avoidance
US7774783B2 (en) 2004-12-23 2010-08-10 Microsoft Corporation Method and apparatus for detecting deadlocks
KR100674933B1 (ko) 2005-01-06 2007-01-26 삼성전자주식회사 온 칩 버스(On Chip Bus)에서 최적화된코어-타일-스위치(core-tile-switch)맵핑(mapping) 구조를 결정하는 방법 및 그 방법을기록한 컴퓨터로 읽을 수 있는 기록 매체
US8059551B2 (en) 2005-02-15 2011-11-15 Raytheon Bbn Technologies Corp. Method for source-spoofed IP packet traceback
JP2006244073A (ja) 2005-03-02 2006-09-14 Matsushita Electric Ind Co Ltd 半導体設計装置
FR2883116B1 (fr) 2005-03-08 2007-04-13 Commissariat Energie Atomique Architecture de communication globalement asynchrone pour systeme sur puce.
US7814242B1 (en) 2005-03-25 2010-10-12 Tilera Corporation Managing data flows in a parallel processing environment
EP1869844A1 (en) 2005-04-06 2007-12-26 Koninklijke Philips Electronics N.V. Network-on-chip environment and method for reduction of latency
EP1713007B1 (en) 2005-04-11 2008-09-17 STMicroelectronics S.r.l. A dynamically reconfigurable System-on-Chip comprising a plurality of reconfigurable gate array devices
JP4791530B2 (ja) 2005-04-13 2011-10-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 電子デバイス及びフロー制御方法
US7965725B2 (en) 2005-05-31 2011-06-21 Stmicroelectronics, Inc. Hyper-ring-on-chip (HyRoC) architecture
US20060281221A1 (en) 2005-06-09 2006-12-14 Sharad Mehrotra Enhanced routing grid system and method
US7509619B1 (en) 2005-06-22 2009-03-24 Xilinx, Inc. Auto generation of a multi-staged processing pipeline hardware implementation for designs captured in high level languages
US7603644B2 (en) 2005-06-24 2009-10-13 Pulsic Limited Integrated circuit routing and compaction
US7343581B2 (en) 2005-06-27 2008-03-11 Tela Innovations, Inc. Methods for creating primitive constructed standard cells
JP2009502080A (ja) 2005-07-19 2009-01-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 電子装置及び通信リソース割り当て方法
JP3938387B2 (ja) 2005-08-10 2007-06-27 インターナショナル・ビジネス・マシーンズ・コーポレーション コンパイラ、制御方法、およびコンパイラ・プログラム
US7437518B2 (en) 2005-09-07 2008-10-14 Intel Corporation Hiding conflict, coherence completion and transaction ID elements of a coherence protocol
US7693064B2 (en) 2005-10-24 2010-04-06 Cisco Technology, Inc. Forwarding packets to a directed acyclic graph destination using link selection based on received link metrics
JP2007149061A (ja) 2005-10-31 2007-06-14 Seiko Epson Corp レイアウトシステムおよびレイアウトプログラム、並びにレイアウト方法
US7289933B2 (en) 2005-11-04 2007-10-30 Synopsys, Inc. Simulating topography of a conductive material in a semiconductor wafer
KR100687659B1 (ko) 2005-12-22 2007-02-27 삼성전자주식회사 Axi 프로토콜에 따른 락 오퍼레이션을 제어하는네트워크 인터페이스, 상기 네트워크 인터페이스가 포함된패킷 데이터 통신 온칩 인터커넥트 시스템, 및 상기네트워크 인터페이스의 동작 방법
US7904892B2 (en) 2006-01-06 2011-03-08 Northrop Grumman Corporation Systems and methods for identifying and displaying dependencies
CA2580998A1 (en) 2006-03-03 2007-09-03 Queen's University At Kingston Adaptive analysis methods
US8448102B2 (en) 2006-03-09 2013-05-21 Tela Innovations, Inc. Optimizing layout of irregular structures in regular layout context
US20070256044A1 (en) 2006-04-26 2007-11-01 Gary Coryer System and method to power route hierarchical designs that employ macro reuse
US8924269B2 (en) 2006-05-13 2014-12-30 Sap Ag Consistent set of interfaces derived from a business object model
JP2007311491A (ja) 2006-05-17 2007-11-29 Toshiba Corp 半導体集積回路
EP1863232A1 (en) 2006-05-29 2007-12-05 Stmicroelectronics Sa On-chip bandwidth allocator
KR100737943B1 (ko) 2006-09-13 2007-07-13 삼성전자주식회사 네트워크-온-칩 응답 신호 제어 장치 및 그 방법
US20080072182A1 (en) 2006-09-19 2008-03-20 The Regents Of The University Of California Structured and parameterized model order reduction
US8042087B2 (en) 2006-10-10 2011-10-18 Ecole Polytechnique Federale De Lausanne (Epfl) Method to design network-on-chip (NOC)-based communication systems
US7502378B2 (en) 2006-11-29 2009-03-10 Nec Laboratories America, Inc. Flexible wrapper architecture for tiled networks on a chip
WO2008080122A2 (en) 2006-12-22 2008-07-03 The Trustees Of Columbia University In The City Of New York Systems and method for on-chip data communication
US9053072B2 (en) 2007-01-25 2015-06-09 Hewlett-Packard Development Company, L.P. End node transactions at threshold-partial fullness of storage space
WO2008126516A1 (ja) * 2007-04-10 2008-10-23 Naoki Suehiro 送信方法、送信装置、受信方法及び受信装置
JP4888272B2 (ja) 2007-07-30 2012-02-29 富士通セミコンダクター株式会社 ソフトウェアのシミュレーション方法、ソフトウェアのシミュレーションのためのプログラム、及びソフトウェアのシミュレーション装置
US7809006B2 (en) 2007-08-16 2010-10-05 D. E. Shaw Research, Llc Routing with virtual channels
US8136071B2 (en) 2007-09-12 2012-03-13 Neal Solomon Three dimensional integrated circuits and methods of fabrication
US8554972B2 (en) 2007-09-13 2013-10-08 Friedrich-Alexander-Universitaet-Erlangen-Nuernberg Logic chip, method and computer program for providing a configuration information for a configurable logic chip
US8219342B2 (en) 2007-09-18 2012-07-10 Nec Laboratories America, Inc. Variation tolerant network on chip (NoC) with self-calibrating links
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US7701252B1 (en) 2007-11-06 2010-04-20 Altera Corporation Stacked die network-on-chip for FPGA
US8261025B2 (en) 2007-11-12 2012-09-04 International Business Machines Corporation Software pipelining on a network on chip
WO2009072134A2 (en) 2007-12-06 2009-06-11 Technion Research & Development Foundation Ltd Bus enhanced network on chip
US8407425B2 (en) 2007-12-28 2013-03-26 Intel Corporation Obscuring memory access patterns in conjunction with deadlock detection or avoidance
US8010750B2 (en) 2008-01-17 2011-08-30 International Business Machines Corporation Network on chip that maintains cache coherency with invalidate commands
US8490110B2 (en) 2008-02-15 2013-07-16 International Business Machines Corporation Network on chip with a low latency, high bandwidth application messaging interconnect
US7973804B2 (en) 2008-03-11 2011-07-05 International Business Machines Corporation Image processing with highly threaded texture fragment generation
US8020168B2 (en) 2008-05-09 2011-09-13 International Business Machines Corporation Dynamic virtual software pipelining on a network on chip
US8040799B2 (en) * 2008-05-15 2011-10-18 International Business Machines Corporation Network on chip with minimum guaranteed bandwidth for virtual communications channels
US8203938B2 (en) 2008-05-22 2012-06-19 Level 3 Communications, Llc Multi-router IGP fate sharing
US8131944B2 (en) 2008-05-30 2012-03-06 Intel Corporation Using criticality information to route cache coherency communications
US8438578B2 (en) 2008-06-09 2013-05-07 International Business Machines Corporation Network on chip with an I/O accelerator
CN102017548B (zh) 2008-06-12 2013-08-28 松下电器产业株式会社 网络监视装置、总线系统监视装置以及方法
US8050256B1 (en) 2008-07-08 2011-11-01 Tilera Corporation Configuring routing in mesh networks
WO2010060923A1 (en) 2008-11-26 2010-06-03 Danmarks Tekniske Universitet Biologically inspired hardware cell architecture
US8255849B1 (en) 2008-12-08 2012-08-28 Cadence Design Systems, Inc. Solver for modeling a multilayered integrated circuit with three-dimensional interconnects
WO2010074872A1 (en) 2008-12-23 2010-07-01 Transwitch Corporation System-on-a-chip and multi-chip systems supporting advanced telecommunications and other data processing applications
US20100158005A1 (en) 2008-12-23 2010-06-24 Suvhasis Mukhopadhyay System-On-a-Chip and Multi-Chip Systems Supporting Advanced Telecommunication Functions
US8065433B2 (en) 2009-01-09 2011-11-22 Microsoft Corporation Hybrid butterfly cube architecture for modular data centers
US8285900B2 (en) 2009-02-17 2012-10-09 The Board Of Regents Of The University Of Texas System Method and apparatus for congestion-aware routing in a computer interconnection network
US8275598B2 (en) 2009-03-02 2012-09-25 International Business Machines Corporation Software table walk during test verification of a simulated densely threaded network on a chip
JP5488589B2 (ja) * 2009-03-24 2014-05-14 日本電気株式会社 ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム
US8661455B2 (en) 2009-04-21 2014-02-25 International Business Machines Corporation Performance event triggering through direct interthread communication on a network on chip
US8412795B2 (en) 2009-04-29 2013-04-02 Stmicroelectronics S.R.L. Control device for a system-on-chip and corresponding method
US8306042B1 (en) 2009-06-19 2012-11-06 Google Inc. Class-based deterministic packet routing
CN102415059B (zh) 2009-07-07 2014-10-08 松下电器产业株式会社 总线控制装置
FR2948840B1 (fr) 2009-07-29 2011-09-16 Kalray Reseau de communication sur puce avec garantie de service
US8285912B2 (en) 2009-08-07 2012-10-09 Arm Limited Communication infrastructure for a data processing apparatus and a method of operation of such a communication infrastructure
US8276105B2 (en) 2009-09-18 2012-09-25 International Business Machines Corporation Automatic positioning of gate array circuits in an integrated circuit design
FR2951342B1 (fr) 2009-10-13 2017-01-27 Arteris Inc Reseau sur puce a latence nulle
US8407647B2 (en) 2009-12-17 2013-03-26 Springsoft, Inc. Systems and methods for designing and making integrated circuits with consideration of wiring demand ratio
US20110191774A1 (en) 2010-02-01 2011-08-04 Yar-Sun Hsu Noc-centric system exploration platform and parallel application communication mechanism description format used by the same
US8492886B2 (en) 2010-02-16 2013-07-23 Monolithic 3D Inc 3D integrated circuit with logic
US8541819B1 (en) 2010-12-09 2013-09-24 Monolithic 3D Inc. Semiconductor device and structure
US8379659B2 (en) 2010-03-29 2013-02-19 Intel Corporation Performance and traffic aware heterogeneous interconnection network
KR101077900B1 (ko) 2010-04-09 2011-10-31 숭실대학교산학협력단 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치
JP5122025B2 (ja) 2010-05-12 2013-01-16 パナソニック株式会社 中継器およびチップ回路
CN102893268B (zh) * 2010-05-27 2015-11-25 松下电器产业株式会社 总线控制装置以及向总线控制装置输出指示的控制装置
FR2961048B1 (fr) 2010-06-03 2013-04-26 Arteris Inc Reseau sur puce avec caracteristiques de qualite-de-service
WO2011155984A1 (en) 2010-06-11 2011-12-15 Waters Technologies Corporation Techniques for mass spectrometry peak list computation using parallel processing
US8352774B2 (en) 2010-06-23 2013-01-08 King Fahd University Of Petroleum And Minerals Inter-clock domain data transfer FIFO circuit
US8196086B2 (en) 2010-07-21 2012-06-05 Lsi Corporation Granular channel width for power optimization
US9396162B2 (en) 2010-07-22 2016-07-19 John APPLEYARD Method and apparatus for estimating the state of a system
JP5543894B2 (ja) 2010-10-21 2014-07-09 ルネサスエレクトロニクス株式会社 NoCシステム及び入力切替装置
US8738860B1 (en) 2010-10-25 2014-05-27 Tilera Corporation Computing in parallel processing environments
CN102467582B (zh) 2010-10-29 2014-08-13 国际商业机器公司 一种集成电路设计中优化连线约束的方法和系统
US8438306B2 (en) 2010-11-02 2013-05-07 Sonics, Inc. Apparatus and methods for on layer concurrency in an integrated circuit
US8705368B1 (en) 2010-12-03 2014-04-22 Google Inc. Probabilistic distance-based arbitration
US9397933B2 (en) 2010-12-21 2016-07-19 Verizon Patent And Licensing Inc. Method and system of providing micro-facilities for network recovery
CN102567277A (zh) 2010-12-30 2012-07-11 世意法(北京)半导体研发有限责任公司 用于通过片上网络系统来降低功耗的方法
US8717875B2 (en) 2011-04-15 2014-05-06 Alcatel Lucent Condensed core-energy-efficient architecture for WAN IP backbones
US8793644B2 (en) 2011-06-02 2014-07-29 Qualcomm Technologies, Inc. Display and automatic improvement of timing and area in a network-on-chip
GB2491588A (en) 2011-06-06 2012-12-12 St Microelectronics Res & Dev Multiprocessor with different cache coherency protocols between different parts
CN103348640B (zh) 2011-07-22 2016-11-23 松下知识产权经营株式会社 中继装置
FR2979444A1 (fr) 2011-08-23 2013-03-01 Kalray Reseau sur puce extensible
US8514889B2 (en) 2011-08-26 2013-08-20 Sonics, Inc. Use of common data format to facilitate link width conversion in a router with flexible link widths
US8798038B2 (en) 2011-08-26 2014-08-05 Sonics, Inc. Efficient header generation in packetized protocols for flexible system on chip architectures
KR101254706B1 (ko) 2011-09-27 2013-04-15 성균관대학교산학협력단 3차원 네트워크 온 칩
US9213788B2 (en) 2011-10-25 2015-12-15 Massachusetts Institute Of Technology Methods and apparatus for constructing and analyzing component-based models of engineering systems
WO2013063484A1 (en) 2011-10-28 2013-05-02 The Regents Of The University Of California Multiple-core computer processor
US20130117543A1 (en) 2011-11-04 2013-05-09 Advanced Micro Devices, Inc. Low overhead operation latency aware scheduler
US9036482B2 (en) * 2011-12-08 2015-05-19 The Hong Kong University Of Science And Technology Bufferless nonblocking networks on chip
US20130151215A1 (en) 2011-12-12 2013-06-13 Schlumberger Technology Corporation Relaxed constraint delaunay method for discretizing fractured media
JP2013125906A (ja) 2011-12-15 2013-06-24 Toshiba Corp フレアマップ計算方法、フレアマップ算出プログラムおよび半導体装置の製造方法
ITTO20111180A1 (it) 2011-12-21 2013-06-22 St Microelectronics Grenoble 2 Dispositivo di controllo, ad esempio per system-on-chip, e corrispondente procedimento
US20130174113A1 (en) 2011-12-30 2013-07-04 Arteris SAS Floorplan estimation
US20130191572A1 (en) 2012-01-23 2013-07-25 Qualcomm Incorporated Transaction ordering to avoid bus deadlocks
US9070121B2 (en) 2012-02-14 2015-06-30 Silver Spring Networks, Inc. Approach for prioritizing network alerts
US9111151B2 (en) 2012-02-17 2015-08-18 National Taiwan University Network on chip processor with multiple cores and routing method thereof
US9274960B2 (en) 2012-03-20 2016-03-01 Stefanos Kaxiras System and method for simplifying cache coherence using multiple write policies
US8756541B2 (en) 2012-03-27 2014-06-17 International Business Machines Corporation Relative ordering circuit synthesis
GB2500915B (en) 2012-04-05 2018-03-14 Stmicroelectronics Grenoble2 Sas Arrangement and method
US8635577B2 (en) 2012-06-01 2014-01-21 International Business Machines Corporation Timing refinement re-routing
CN102866971B (zh) 2012-08-28 2015-11-25 华为技术有限公司 传输数据的装置、系统及方法
US9244880B2 (en) 2012-08-30 2016-01-26 Netspeed Systems Automatic construction of deadlock free interconnects
US20140092740A1 (en) 2012-09-29 2014-04-03 Ren Wang Adaptive packet deflection to achieve fair, low-cost, and/or energy-efficient quality of service in network on chip devices
US8885510B2 (en) 2012-10-09 2014-11-11 Netspeed Systems Heterogeneous channel capacities in an interconnect
GB2507124A (en) 2012-10-22 2014-04-23 St Microelectronics Grenoble 2 Controlling data transmission rates based on feedback from the data recipient
US8601423B1 (en) 2012-10-23 2013-12-03 Netspeed Systems Asymmetric mesh NoC topologies
US9130856B2 (en) 2013-01-28 2015-09-08 Netspeed Systems Creating multiple NoC layers for isolation or avoiding NoC traffic congestion
US8667439B1 (en) 2013-02-27 2014-03-04 Netspeed Systems Automatically connecting SoCs IP cores to interconnect nodes to minimize global latency and reduce interconnect cost
US8934377B2 (en) 2013-03-11 2015-01-13 Netspeed Systems Reconfigurable NoC for customizing traffic and optimizing performance after NoC synthesis
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
US20150109024A1 (en) 2013-10-22 2015-04-23 Vaughn Timothy Betz Field Programmable Gate-Array with Embedded Network-on-Chip Hardware and Design Flow
EP3805350B1 (en) 2013-12-09 2024-03-06 The Procter & Gamble Company Fibrous structures including an active agent and having a graphic printed thereon

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090268677A1 (en) 2008-04-24 2009-10-29 National Taiwan University network resource allocation system and method of the same
JP5036920B1 (ja) 2011-03-09 2012-09-26 パナソニック株式会社 中継装置、中継装置の制御方法、およびプログラム
US20130051397A1 (en) 2011-08-26 2013-02-28 Sonics, Inc. Credit flow control scheme in a router with flexible link widths utilizing minimal storage

Also Published As

Publication number Publication date
JP6093867B2 (ja) 2017-03-08
US8885510B2 (en) 2014-11-11
KR20150140265A (ko) 2015-12-15
US20140098683A1 (en) 2014-04-10
JP2016503594A (ja) 2016-02-04
WO2014059024A1 (en) 2014-04-17
US20170063693A1 (en) 2017-03-02
US10355996B2 (en) 2019-07-16

Similar Documents

Publication Publication Date Title
KR101937211B1 (ko) 상호 연결에서 이종 채널 용량
US10084692B2 (en) Streaming bridge design with host interfaces and network on chip (NoC) layers
US9825887B2 (en) Automatic buffer sizing for optimal network-on-chip design
US9569579B1 (en) Automatic pipelining of NoC channels to meet timing and/or performance
US9742630B2 (en) Configurable router for a network on chip (NoC)
US8819611B2 (en) Asymmetric mesh NoC topologies
US9130856B2 (en) Creating multiple NoC layers for isolation or avoiding NoC traffic congestion
US9294354B2 (en) Using multiple traffic profiles to design a network on chip
US9825809B2 (en) Dynamically configuring store-and-forward channels and cut-through channels in a network-on-chip
US9160627B2 (en) Multiple heterogeneous NoC layers
US10523599B2 (en) Buffer sizing of a NoC through machine learning
US9185026B2 (en) Tagging and synchronization for fairness in NOC interconnects
US9864728B2 (en) Automatic generation of physically aware aggregation/distribution networks
US9762474B2 (en) Systems and methods for selecting a router to connect a bridge in the network on chip (NoC)
US20180198682A1 (en) Strategies for NoC Construction Using Machine Learning

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right