IC 유닛의 모듈은 현재와 과거 모두에서 컴퓨터 시스템의 다양한 요소를 도식화하며, 이러한 유닛은 조직 과학의 맥락에서 일반적인 형태로 설계되었다. NoC 환경에서 또 다른 문제는 라우팅 방식이다. 전송 방식과 관련하여, 다양한 전송 방식—회로 전환(circuit switching), 패킷 전송(packet switching), 플릿 전송(flits switching)—이 존재한다. 구성 가능한 인터커넥트 요소들은 프로세서와 정보 집약적인 인플레이스 기반 지능형 시스템 간에 고성능 연결을 제공한다. 또한, 이러한 인터커넥트는 다층 토폴로지를 지원하여 각 연결된 IP에 대해 핵심적인 확장성과 낮은 지연을 보장하며, 전압 및 주파수 스케일링과 같은 관련 기술도 제공한다. Open Core Protocol(OCP)은 마스터와 슬레이브 인터페이스를 모두 가진 코어에 대해 플러그 앤 플레이 인터페이스로 사용될 수 있다. 네트워크 인터페이싱: NoC 설계 패러다임의 성공은 과학 블록 간의 인터페이스와 인터커넥트 패브릭 간의 표준화에 크게 의존한다. 아래 그림에서와 같이 마스터와 슬레이브 인터페이스를 모두 가진 코어의 경우, 해당 사이언스 블록의 OCP 호환 신호는 후속 인터페이스에 의해 패킷화된다.

1. Introduction
Network-on-Chip(NoC)는 일반적으로 SoC(System-on-Chip)의 모듈 간 통신을 위한 칩 기반 네트워크 개념으로, 마이크로프로세서 회로 내에서의 네트워크 기반 통신 주제로 볼 수 있다. IC 유닛의 모듈은 간헐적으로 반도체 과학 센터에서 PC 시스템의 다양한 요소를 도식화하는데 사용되며, 이러한 유닛은 조직 과학의 관점에서 일반화된 형태로 설계되었다. NoC는 SoC 모듈 간에 스위치 기반 패킷 전송 네트워크를 구성한다.
NoC 기술은 확장 가능한 컴퓨터 네트워킹의 개념과 기법을 온칩 통신에 적용하며, 기존의 버스(bus) 및 크로스바(crossbar) 기반 통신 구조에 비해 현저한 개선을 가져온다. NoC는 다양한 네트워크 토폴로지로 구성될 수 있으며, 2018년 기준으로 일부는 여전히 실험적인 단계에 있다.
NoC는 SoC의 품질과 전력 효율을 기존의 통신 구조 대비 향상시킨다. 예를 들어, 일반적인 최신 컴퓨터에서 사용되는 구성 요소는 GPU(Graphics Processing Unit)와 같은 디자인 유닛으로, 조명 효과, 비디오 렌더링, 빠른 인공지능 처리 등에 사용된다. 이러한 구성 요소는 향후 멀티코어 휴대형 컴퓨터 설계가 일반화됨에 따라 성장 가능성이 큰 신기술로 간주된다.

2. Current Research
NoC가 QoS(Quality of Service)를 지원해야 한다고 가정하면, 이는 처리량, 종단 간 지연, 공정성, 마감시간 등을 만족시키는 것이며, 오디오 및 비디오 재생과 같은 실시간 데이터 처리를 위한 요구사항이다. 그러나 현재의 시스템 실행 환경(예: VxWorks, RTLinux, QNX)은 특수한 하드웨어 없이도 밀리초 이하의 응답을 제공할 수 있다.
이것은 일부 실시간(sum) 애플리케이션에서는 기존 온칩 인터커넥트 인프라로도 충분한 품질을 제공한다는 것을 의미할 수 있으며, 오디오 또는 비디오 지연이 10분의 1초 수준인 경우, 전용 하드웨어 로직이 반드시 필요한 것은 아니다. 그러나 NoC 차원의 QoS가 필요한 또 다른 이유는 단일 칩 처리 장치를 여러 사용자가 공유하는 경우, 특히 퍼블릭 클라우드 환경에서 서비스 수준 보장을 제공하기 위해서다. 이 경우 하드웨어 기반 QoS 로직을 통해 서비스 제공자가 사용자에게 보장할 수 있는 성능 수준을 명확히 정의할 수 있으며, 이는 정부 기관이나 특정 기관에게 특히 매력적인 기능일 수 있다.
여전히 풀어야 할 연구 과제는 많으며, 이는 물리 계층부터 네트워크 수준, 시스템 설계, 애플리케이션 소프트웨어 구조에 이르기까지 다양하다. NoC에 대한 최초의 전문 연구 회의는 2007년 프린스턴에서 열렸으며, 두 번째 IEEE 국제 NoC 학회는 2008년 4월 시티 유니버시티에서 개최되었다.
또한 ONoC(Optical Network on Chip)를 위한 통합 광파가이드 및 광소자에 대한 연구도 진행되고 있다. 성능을 향상시키는 또 다른 방법으로는 chiplet 간 무선 통신 채널을 활용하는 WiNoC(Wireless NoC) 기술이 있다.
NoC를 설계함에 있어 토폴로지, 라우팅 알고리즘, 성능, 지연시간, 품질 등 다양한 고려사항이 있다. 이 중 어느 것도 독립적이지 않으며, 설계 선택 시 상호작용한다. Guerrier와 Greiner는 SPIN이라는 fat-tree 구조 기반의 일반화된 인터커넥트 아키텍처를 제안했다. 이 구조에서는 각 노드가 4개의 자식 노드를 가지며, 상위 노드는 트리 구조 내 각 레벨에서 4번 반복된다. Kumar 등은 m x n 크기의 스위치 격자로 구성된 crossbar 스타일의 아키텍처를 제안했다. 이 구조는 각 스위치 옆에 IP 블록이 위치한다. Towles는 torus(토러스) 기반 구조를 확장했으며, 이는 일반적인 메시(mesh) 네트워크와 유사하지만 가장자리 노드들이 반대편 노드들과 래핑(wrapping) 채널로 연결되는 점이 다르다. Karim 등은 8개의 노드와 12개의 양방향 링크로 구성된 2D 그래프 MP-SoC 아키텍처를 제안했다.
가상 채널(Virtual Channel, VC)의 도입은 그 특성에 따른 즉각적인 결과로 성공을 거두었다. 가상 채널과 그에 따른 적절한 활용을 통해 교착 상태(stop chance)를 완전히 제거할 수 있다. 각 네트워크 채널에 연결된 버퍼를 여러 가상 채널로 나누어 채널 사용률이 증가하였다. 가상 채널을 적절히 관리함으로써 네트워크 흐름 제어를 완벽히 수행할 수 있다. 또한, 네트워크 내부 장애에 대응하기 위해 가상 채널의 개념이 활용되기도 한다. 하지만 이러한 가상 채널을 최대한 활용하려면, 라우팅 알고리즘 설계 시 가상 채널을 어떻게 분배할지 결정하는 것이 중요한 이슈가 된다.
네트워크 인터커넥트는 AXI, OCP, DTL 등의 인터페이스를 구현하여 정보 처리 모듈 간을 연결한다.
- ARM이 ARM11 계열 프로세서를 지원하기 위해 개발한 차세대 온칩 인터페이스 기술인 AMBA Extended Interface(AXI)는, ARM 코어 기반 지능형 시스템 내에서 프로세서와 데이터 중심 모듈 간의 고성능 연결을 제공하는 구성 가능한 인터커넥트를 통해 향상된 데이터 전달 능력을 제공한다. 이 AXI 인터커넥트는 다층 토폴로지를 지원하며, 낮은 지연시간과 전압/주파수 스케일링(IEM) 같은 ARM 관련 기술을 제공한다.
- Open Core Protocol (OCP)은 마스터와 슬레이브 인터페이스를 모두 가진 모듈에 대해 plug-and-play 방식으로 사용할 수 있는 인터페이스로, 후속 인터페이스에 의해 패킷화된 형태로 전송된다. 모든 신호는 동기 방식이며, 코어 활용률, 통합성, 타이밍 분석을 향상시킨다. OCP는 두 통신 요소 사이에 포인트 투 포인트(point-to-point) 인터페이스를 정의하며, 각각 마스터 또는 슬레이브 역할을 수행한다. OCP는 모든 코어 간 통신을 통합하고, 데이터 흐름, 사이드밴드 관리 신호, 테스트 관련 신호도 포함한다.
- Device Transaction Level(DTL)은 필립스 반도체가 SoC 내 IP를 연결하기 위해 고안한 인터커넥션 표준 중 하나로, 미래의 상호운용성 확장을 용이하게 만든다.
3. Methodology
이해 기반 모델 외에도, 특정 시스템에 대해 제작된 벤치마크나 실제 타깃 애플리케이션을 통해 시스템의 성능을 시뮬레이션으로 평가할 수 있다. 테스트 환경을 설정하기 위해 네트워크 설계자는 다음을 고려해야 한다:
(1) 성능 측정을 벤치마크와 인위적인 패킷 삽입으로 할 것인지, 아니면 전체 시스템과 타깃 애플리케이션을 사용할 것인지,
(2) 관심 영역(ROI: Region of Interest) 내 어떤 유형의 데이터나 애플리케이션을 사용할 것인지
4. Result
최근 다중 코어 SoC 내 통신 아키텍처의 설계에서 새로운 트렌드가 연구 문헌에서 등장하고 있다. 특히, 연구자들은 다중 코어 SoC를 병렬 컴퓨팅 모델에서 파생된 다양한 전통적 인터커넥트 구조를 중심으로 설계할 수 있다고 제안하고 있다. 애플리케이션 특화 맞춤형 인터커넥트 구조도 유망한 방향이다. 이러한 통신 중심 인터커넥트 구조는 지연(latency), 처리량(throughput), 신뢰성(reliability), 에너지 소모, 칩 면적 요구사항 간의 독특한 절충점을 가진다.
어떤 통신 템플릿을 사용할지는 애플리케이션의 특성에 따라 결정된다.
복잡한 SoC는 다수의 블록으로 구성된 마이크로 네트워크로 볼 수 있으며, 따라서 네트워킹과 데이터 처리의 모델 및 기술을 SoC 설계 방법론에 차용할 수 있다. 이러한 마이크로 네트워크는 품질 보장과 에너지 효율을 제공해야 하며, 동시에 불완전한 신호 전송 매체의 제약 하에서도 신뢰성 있게 작동해야 한다.
이러한 아키텍처의 공통적인 특징은 프로세서/스토리지 코어들이 고성능 링크와 지능형 스위치를 통해 통신하고, 이 통신 방식이 고수준의 추상화 수준에서 설명된다는 점이다. 프로세서/스토리지 코어 간 데이터 교환은 시스템 규모가 커지고 글로벌 와이어 지연이 고정되지 않음에 따라 점점 어려워지고 있다. 이를 해결하기 위해 종단 간 통신 경로는 여러 파이프라인 단계로 나뉘며, 각 단계의 지연은 거의 클록 주기와 유사하다. 스위치 블록과 그 사이의 와이어 세그먼트는 인터페이스 파이프라이닝, 깊은 파이프라인 스위치, 고정 지연 설계 방식으로 설명되는 고도로 파이프라인된 통신 매체를 구성한다.
특히 테스트 벡터 배포용 테스트 액세스 메커니즘(TAM)과 테스트 용이성(Testability) 구조의 새로운 설계는 매우 중요한 주제다. NoC가 제공하는 통신 중심 설계 환경에서는, 정보 전송 경로의 내결함성(fault tolerance)과 신뢰성이 안전 필수 응용에서 매우 중요하다. NoC를 TAM으로 사용하는 주된 이점은 기존 자원을 재사용하면서 병렬 테스트 경로를 제공할 수 있다는 점이다. 즉, 더 많은 블록을 동시에 검사할 수 있다.
프로세서/스토리지 코어와 통신 구조 간의 상호작용은 철저한 기능적 테스트를 거쳐야 한다. 이 시스템 테스트는 각 모듈의 I/O 기능과 데이터 라우팅 기능에 대한 검사를 포함해야 한다. 대부분의 SoC는 임베디드 시스템에 사용되며, 이러한 시스템에서는 신뢰성이 중요한 요소이다. 한편, 100nm 이하의 딥 서브마이크론 기술에서는 트랜지스터 및 와이어의 고장이 다양한 요인—소프트 에러, 크로스토크, 공정 변화, 일렉트로마이그레이션, 재료 노화 등—으로 인해 더욱 발생하기 쉬워진다.
신뢰성 관점에서 보면, 패킷 기반 통신의 장점 중 하나는 오류 제어 정보를 전송 데이터 스트림에 포함시키는 기능이다. 오류 탐지 및 정정 기법은 장애 허용 컴퓨팅 및 통신 공학 분야에서 차용하여 온칩 데이터 전송의 불확실성을 보완하는 데 적용할 수 있다. 고장은 처리/저장 코어나 통신 링크를 무력화시킬 수 있다.
최신 기술 수준은 단일 SoC 내에 10~100개의 임베디드 기능/저장 블록을 통합할 수 있는 수준까지 도달했다. 이 수준은 가까운 미래에 더욱 확대될 것으로 예상된다. 이러한 높은 통합 수준 때문에, 다양한 산업 및 학술 연구 그룹은 특정 애플리케이션에 최적화된 효율적인 통신 모델을 개발하려고 노력하고 있다. 연구 커뮤니티에서는 NoC가 이러한 통합 수준에 대해 현실적인 솔루션을 제공한다고 보는 공감대가 형성되고 있다.
4.2 Structure
NoC는 동기 클럭 도메인과 비동기 클럭 도메인을 모두 넘나들 수 있으며, 이를 **클럭 도메인 교차(clock domain crossing)**이라 부르며, 클럭이 없는 비동기 논리도 사용할 수 있다. NoC는 전역 비동기, 지역 동기(Global Asynchronous Local Synchronous, GALS) 구조를 지원하여, SoC 내의 각 프로세서 코어나 유닛이 독립적인 클럭 도메인을 가질 수 있게 한다.
4.3 Architectures
NoC 아키텍처는 종종 스몰월드 네트워크(Small-World Networks, SWNs) 와 스케일 프리 네트워크(Scale-Free Networks, SFNs) 모델을 따르는데, 이는 인터커넥션 와이어의 개수, 길이, 면적 및 전력 소모를 최소화하기 위한 것이다.
4.4 Topology
토폴로지는 NoC 설계에서 가장 기본적인 요소이며, 네트워크의 비용과 성능에 큰 영향을 준다. 토폴로지는 노드와 채널 간의 물리적 배치와 연결을 결정한다. 또한 메시지 전송 시의 홉 수(hop count), 각 홉의 채널 길이 등도 토폴로지에 따라 달라진다. 따라서 토폴로지는 지연(latency), 전력 소비 등에 직접적인 영향을 미치며, 노드 간의 경로 수에 따라 트래픽 분산과 네트워크 효율성도 달라진다.
5. Conclusions (결론)
IC 유닛의 모듈은 일반적으로 반도체 기반의 과학 코어로서, 컴퓨터 시스템의 다양한 기능을 도식화한 것이다. NoC는 이러한 구조를 효과적으로 지원할 수 있는 방법으로 제시되고 있다. 관찰 기반 모델 외에도, 특정 시스템을 위한 시뮬레이션이나 실제 타깃 애플리케이션을 통해 성능을 평가할 수 있다.
테스트 환경을 구성하기 위해, 네트워크 설계자는 다음을 고려해야 한다:
(1) 성능을 테스트벤치 및 인위적 삽입 방식으로 측정할 것인지, 전체 시스템 및 실제 애플리케이션을 사용할 것인지,
(2) 어떤 종류의 데이터나 애플리케이션이 ROI(관심 영역)에서 사용될 것인지.
최근 연구 문헌에서는 멀티코어 SoC의 통신 아키텍처 설계에 대한 새로운 트렌드가 등장하고 있다. 특히, 연구자들은 멀티코어 SoC가 병렬 컴퓨팅 아키텍처에서 유래한 다양한 정규화된 인터커넥트 구조를 중심으로 설계될 수 있다고 주장한다. 애플리케이션 특화 맞춤형 인터커넥트 구조 역시 유망한 대안으로 떠오르고 있다.
애플리케이션의 특성은 통신 매체를 위한 특정 설계 선택에 영향을 미친다. 마이크로 네트워크는 서비스 품질 요건과 에너지 효율성을 만족시켜야 하며, 신뢰할 수 없는 신호 전송 매체의 제약 속에서도 동작해야 한다.
이러한 아키텍처의 공통된 특징은, 프로세서/스토리지 코어가 고성능 링크와 지능형 스위치를 통해 통신하며, 이 통신 구조는 높은 추상화 수준에서 설명될 수 있다는 것이다. NoC를 테스트 접근 메커니즘(TAM)으로 활용하는 주된 이점은 자원의 재사용과 각 코어에 테스트 데이터를 병렬로 전송할 수 있는 경로가 다수 존재한다는 점이다. 이에 따라 여러 블록을 동시에 검사할 수 있다.
Network interfacing (네트워크 인터페이싱):
NoC 설계 패러다임의 성공은 과학 블록 간 인터페이스와 인터커넥트 구조의 표준화에 달려 있다. 표준 인터페이스 사용은 각 과학 코어의 개발 방식에 영향을 주지 않아야 한다. 실제로, 표준 인터페이스로 감싸진 코어는 재사용성이 향상되고, 시스템 통합이 크게 단순화된다. 아래 그림에 나타나듯, 마스터와 슬레이브 인터페이스를 모두 갖춘 블록은 OCP 호환 신호를 후속 인터페이스에 의해 패킷화하여 통신한다.
'System-on-Chip Design > NoC' 카테고리의 다른 글
| A Simple Interconnection Network (2) | 2025.06.01 |
|---|---|
| Introduction to Interconnection Networks (6) | 2025.06.01 |
| Run-time Deadlock Detection (5) | 2025.06.01 |
| A Heuristic Framework for Designing and Exploring Deterministic Routing Algorithm for NoCs (2) | 2025.06.01 |
| Basic Concepts on On-Chip Networks (6) | 2025.05.31 |


