NoC 설계를 위한 Queuing Theory (Queuing Theory for Network-on-Chip Design)

NoC 설계를 위한 Queuing Theory

Queuing Theory for Network-on-Chip Design

작성일: 2026-03-14 | 출처: Principles and Practices of Interconnection Networks

Network-on-Chip Architecture
Modern semiconductor chip architecture

1. 왜 Queuing Theory이 필요한가?

NoC에서 Packet은 대부분의 시간을 Queue에서 대기합니다:

핵심 개념

Queuing Theory으로 Packet이 각 Queue에서 대기하는 평균 시간을 예측할 수 있습니다.

2. 기본 Queuing 시스템 Model

핵심 변수 정의

기호 의미 NoC에서의 대응 단위
λ (lambda) 도착률 입력 터미널 트래픽, Channel 트래픽 packets/sec
μ (mu) 처리율 (= 1/T) Channel 대역폭 / Packet 길이 packets/sec
T 서비스 시간 (Service Time) Packet 전송 시간 = L/b seconds
ρ (rho) 이용률/부하 ρ = λ/μ = λT 0 ~ 1
L Packet 길이 bits per packet bits
b 대역폭 Channel bandwidth bits/sec
서비스 시간 (Service Time) 계산

T = L/b (Packet 길이 / 대역폭)
μ = 1/T = bL

3. Littles Law (리틀의 법칙)

가장 중요한 법칙!

Queue의 평균 대기 Packet 수와 대기 시간 (Waiting Time)의 관계를 나타냅니다.

Littles Law

L = λ × W

또는 NoC 표기로: E(N_Q) = λ × E(T_W)

기호 의미 설명
L 또는 E(N_Q) 시스템 내 평균 Packet 수 큐에 대기 중인 평균 Packet 개수
λ 도착률 초당 도착하는 Packet 수
W 또는 E(T_W) 평균 대기 시간 (Waiting Time) Packet이 시스템에서 보내는 평균 시간

직관적 이해

도착률이 높으면

큐에 더 많은 Packet이 쌓임

️ 서비스 시간 (Service Time)이 길면

큐에 더 많은 Packet이 쌓임

대기 시간 (Waiting Time) 유도

E(T_W) = E(T) × E(N_Q) = (T × ρ)/(1-ρ)

Semiconductor Wafer
Silicon wafer manufacturing

4. M/M/1 Queue Model

Kendall 표기법

M/M/1 Queue의 핵심 공식들

상태 확률 (큐에 i개 Packet이 있을 확률)

p_i = (1-ρ) × ρ^i

평균 Queue 길이

E(N_Q) = ρ/(1-ρ)

평균 대기 시간 (Waiting Time)

E(T_W) = (T × ρ)/(1-ρ) = ρ/[μ(1-ρ)]

Queue 길이 분산

E(^2_N_Q) = ρ(1-ρ)^2

그래프 특성

ρ (이용률) 대기 시간 (Waiting Time)

0 0.5 1.0

ρ=1에서 무한대!

E(Tw)

️ 핵심 통찰

ρ 1 (포화점)에 가까워지면 대기 시간 (Waiting Time)이 급격히 증가합니다!
ρ ≥ 1이면 공식이 무효가 됩니다 (무한 지연).

5. M/D/1 Queue Model

D = Deterministic (결정적 서비스 시간 (Service Time))

Packet 길이가 고정인 경우 (NoC에서 일반적인 상황)

평균 Queue 길이 (M/M/1의 절반!)

E(N_Q) = ρ/[2(1-ρ)]

M/M/1 vs M/D/1 비교

M/M/1

서비스 시간 (Service Time): 지수분포 (가변)

평균 Queue 길이: ρ/(1-ρ)

M/D/1

서비스 시간 (Service Time): 결정적 (고정)

평균 Queue 길이: ρ/[2(1-ρ)]

결론

Packet 길이가 일정하면 Queue 대기가 절반으로 줄어듭니다!
NoC에서는 보통 Packet 길이가 고정이므로 M/D/1 Model을 선호합니다.

6. M/G/1 Queue Model (일반화)

G = General (임의 분포)

일반적인 서비스 시간 (Service Time) 분포를 가정

평균 Queue 길이

E(N_Q) = λ^2 X^22(1-ρ)

여기서 X^2 는 서비스 시간 (Service Time)의 2차 모멘트 (second moment)

Model 서비스 시간 (Service Time) 분포 평균 Queue 길이 사용 상황
M/M/1 지수분포 ρ/(1-ρ) 가변 Packet 길이
M/D/1 결정적 ρ/[2(1-ρ)] 고정 Packet 길이 (NoC)
M/G/1 일반 분포 λ^2 X^22(1-ρ) 임의의 Packet 분포

7. NoC 성능 분석에 적용

7.1 Network를 Queuing 시스템으로 Model링

7.2 Switch Model링

7.3 다단계 Network 지연 계산

2단계 버터플라이의 경합 지연

Tc = λ2μcc λ) + λ2μ(μ λ)

1단계 Queue 대기 + 2단계 Queue 대기

8. 주요 성능 지표

8.1 Throughput (Throughput)

= 단위 시간당 전달된 Packet 수
  • 용량 대비 비율로 표현 (0 ~ 1)
  • 포화점 (Saturation): Throughput이 더 이상 증가하지 않는 지점

8.2 지연 (Latency)

Total Latency = Tzero-load + Tcontention
구성요소 설명
Zero-load Latency 트래픽 없을 때 기본 지연
Contention Latency 경합으로 인한 추가 지연

8.3 이용률 (Utilization)

ρ = 실제 사용량최대 용량 = λμ

9. 포아송 프로세스의 특성

분할 (Splitting)

λ rate 스트림 λ₁ + λ₂ (합 = λ)

결합 (Combining)

λ₁ + λ₂ 스트림 λ (= λ₁ + λ₂)

중요한 특성

포아송 프로세스는 분할/결합해도 포아송 유지! 해석이 쉬움

10. 확률적 분석 (Probabilistic Analysis)

Buffer 없는 Switch의 대기 시간 (Waiting Time)

항목 공식 설명
충돌 확률 P_w = λ T_o2 = ρ_o2 출력 포트가 사용 중일 확률
충돌 시 대기 시간 (Waiting Time) (결정적) T_wc = T_o2 평균 절반 대기
평균 대기 시간 (Waiting Time) T_w = P_w × T_wc = λ T_o^24 확률 × 대기 시간 (Waiting Time)

서비스 시간 (Service Time) 분산의 영향

서비스 시간 (Service Time) 분포 충돌 시 대기 시간 (Waiting Time) 비고
결정적 (Deterministic) T_o / 2 NoC에서 일반적
지수분포 (Exponential) T_o 2배 더 길어짐
️ 주의

분산이 클수록 대기 시간 (Waiting Time)이 증가합니다 (긴 서비스에 더 자주 충돌)

11. NoC vs Queuing Theory 용어 비교

Queuing Theory NoC 용어 설명
Arrival rate (λ) Injection rate, Traffic rate Packet 도착률
Service rate (μ) Channel bandwidth / Packet length 처리 속도
Utilization (ρ) Channel load, Link utilization Channel 사용률
Queue Input buffer, FIFO 대기열
Server Channel, Link 처리 주체
Service time (T) Transmission time, Serialization delay 서비스 시간 (Service Time)
Waiting time Contention delay, Queuing delay 대기 시간 (Waiting Time)

12. 트래픽 패턴 분포 Model

확률 분포 (NoC 트래픽 Model링)

분포 설명 용도
Gaussian 정규분포 집계된 Throughput
Exponential 지수분포, 빠른 감쇠 지연 시퀀스, 도착 간격
Gamma 지수~가우시안 중간 일반적 분포
Lognormal 비대칭 분포 버스트 트래픽
Pareto Heavy-tailed, 느린 감쇠 자기유사 트래픽

공분산 함수 (시간 상관관계)

Model 설명 특성
IID 독립 동일 분포 메모리 없음
ARMA Auto-Regressive Moving Average 단거리 종속성
FGN Fractional Gaussian Noise 장거리 종속성 (LRD)
FARIMA Fractional Integrated ARMA 단거리 + 장거리 종속성

13. 핵심 공식 요약

법칙/Model 공식 의미
Littles Law L = λ W Queue 길이 = 도착률 × 대기 시간 (Waiting Time)
이용률 ρ = λ/μ = λ T 부하 비율 (0~1)
M/M/1 Queue 길이 ρ/(1-ρ) 지수 서비스 시 평균 Queue 길이
M/D/1 Queue 길이 ρ/[2(1-ρ)] 고정 서비스 시 평균 Queue 길이
M/M/1 대기 시간 (Waiting Time) Tρ1-ρ 평균 대기 시간 (Waiting Time)
서비스 시간 (Service Time) T = L/b Packet길이 / 대역폭

14. 서비스 시간 (Service Time) vs Latency (중요!)

️ 핵심 구분

서비스 시간 (Service Time)(Service Time)은 Latency의 일부입니다! 전체 Latency가 아닙니다.

14.1 Latency의 구성요소

전체 Latency 공식

T_total = Th + Ts + Tc

= Head Latency + Serialization Latency + Contention Latency

구성요소 기호 공식 설명
Head Latency Th Hmin × tr + Dmin/v 헤더가 Network 통과하는 시간
Serialization Latency Ts L/b Packet 꼬리가 헤더 따라잡는 시간
Contention Latency Tc Queuing Theory으로 계산 경합으로 인한 대기 시간 (Waiting Time)

14.2 Zero-Load Latency (경합 없을 때)

Zero-Load Latency

T_0 = Hmin × tr + Dminv + Lb

의미 변수 설명
Hmin × tr Router 지연 H = Hop 수, tr = Router당 지연
Dmin/v 전파 지연 (Time of Flight) D = 거리, v = 전파 속도
L/b 직렬화 지연 = 서비스 시간 (Service Time)! L = Packet 길이, b = 대역폭

14.3 서비스 시간 (Service Time) = Serialization Latency

Queuing Theory의 서비스 시간 (Service Time) T

T = Ts = Lb

핵심 이해

Queuing Theory의 서비스 시간 (Service Time) T는 전체 Latency가 아니라,
Packet이 Channel을 점유하는 시간 (= 직렬화 시간)입니다!

14.4 Gantt 차트로 이해하기

Data Network Infrastructure
Network interconnections

id=”buffer”>

15. Buffer Size (Buffer Size)

15.1 왜 Buffer가 필요한가?

  • 송신 속도 > 수신 처리 속도일 때 데이터 손실 방지
  • 경합 시 Packet 임시 저장
  • 플로우 컨트롤의 핵심 요소

15.2 최소 Buffer Size 공식 (Go & Stop Control)

최소 Buffer 크기

Min Buffer = FlitSize × (R_overhead + S_overhead + 2 × Link Delay)

변수 의미
FlitSize Flit 크기 (bits)
R_overhead 수신측에서 Stop 신호 발생까지 시간
S_overhead 송신측에서 Stop 신호 처리까지 시간
Link Delay Link 전파 지연 (왕복이므로 2배)

15.3 Credit-Based Control

장점

  • Buffer 최적 활용
  • Link 길이와 무관하게 동작

단점

  • 더 많은 제어 신호 필요
  • 구현 복잡도 증가

15.4 Buffer Size와 성능 관계

Buffer 크기 Throughput Latency 문제점
작음 낮음 HOL Blocking 증가 Packet 손실/대기
높음 Queuing 지연 증가 가능 면적/전력 증가

15.5 실험 결과 (책에서 인용)

️ 결론

입력 Buffer 크기가 throughput과 latency에 큰 영향!
Wormhole(1-flit)은 VCT(8-flit) 대비 52% 낮은 throughput

15.6 HOL Blocking (Head-of-Line Blocking)

해결책
  • Virtual Channel (VC): 물리 Channel을 논리적으로 분리
  • Virtual Output Queue (VOQ): 출력 포트별 별도 Queue

15.7 Buffer vs Queuing Theory

Queuing Theory NoC Buffer 주의점
Queue (무한 가정) Input Buffer (유한 크기) Queuing Theory은 무한 Buffer 가정.
실제 NoC Buffer는 유한하므로
오버플로우 고려 필요!
Queue length N_Q Buffer depth (flits)
ρ/(1-ρ) 공식 Buffer 오버플로우 가능!

16. 실무 적용 시 주의사항

1. ρ < 1 필수

ρ ≥ 1이면 모든 공식이 무효 (무한 지연)

2. 병목 Queue가 지배

여러 Queue 중 가장 혼잡한 Queue가 전체 성능 결정

3. M/D/1 선호

NoC는 Packet 길이가 고정인 경우가 많음

4. 검증 필요

해석적 Model은 Simulation으로 검증해야 함

5. 트래픽 패턴 영향

Uniform random traffic은 최선의 경우, adversarial 패턴 테스트 필요

6. Buffer 크기 고려

Queuing Theory 무한 Buffer 가정 vs 실제 유한 Buffer

7. 서비스 시간 (Service Time) ≠ 전체 Latency

T = L/b는 직렬화 시간만!

체크리스트
  • □ 이용률(ρ)이 1 미만인지 확인
  • □ M/D/1 vs M/M/1 적절한 Model 선택
  • □ Buffer 오버플로우 가능성 검토
  • □ 다양한 트래픽 패턴으로 테스트
  • □ Simulation으로 이론 Model 검증

Networks-on-Chips: Theory and Practice & Principles and Practices of Interconnection Networks

작성일: 2026-03-14

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top