핵심 인사이트
- 차분 부호화(Differential Encoding)는 절대값이 아닌 연속 비트 간의 변화(차이)로 데이터를 표현하는 라인 코딩 기법으로, 수신기가 절대 전압 기준 없이도 전이(Transition) 유무만으로 데이터를 복원할 수 있어 극성 반전(Polarity Reversal)에 강인하다.
- 차분 맨체스터(Differential Manchester) 코딩은 클럭 동기화와 차분 부호화를 결합한 방식으로, 비트 시작의 전이 유무로 0/1을 구분하고 중간 전이로 클럭을 복원하여 Token Ring 네트워크의 표준 라인 코딩으로 채택됐다.
- NRZI(Non-Return-to-Zero Inverted)는 가장 간단한 차분 부호화 형태로, USB 1.0/2.0 풀스피드/하이스피드의 물리 계층 인코딩에 사용되며, 연속 0의 동기화 문제를 비트 스터핑(Bit Stuffing)으로 해결한다.
Ⅰ. 차분 부호화 원리
절대 vs 차분 부호화:
절대 부호화 (NRZ-L):
0 = 0V, 1 = 5V
문제: 수신기의 극성 반전 시 0과 1이 뒤바뀜
극성 반전 예시:
송신: 1 0 1 0 -> +5 0 +5 0
케이블 반전: -5 0 -5 0
수신: 0 1 0 1 -> 완전히 반대 해석!
차분 부호화 원리:
데이터 = 이전 신호 대비 변화 여부
규칙 (NRZI):
1: 전이 발생 (Transition)
0: 전이 없음 (No Transition)
극성 반전 후에도:
전이 유무는 변하지 않음 -> 올바른 복원
예시:
데이터: 1 0 1 1 0
NRZI: 전이→ 유지→ 전이→ 전이→ 유지→
극성 반전해도 전이 패턴 동일 -> 복원 성공
📢 섹션 요약 비유: 차분 부호화는 모스 신호의 "짧다/길다"처럼 변화로 정보 전달 — 케이블을 뒤집어도 변화 패턴은 그대로.
Ⅱ. NRZI (Non-Return-to-Zero Inverted)
NRZI 인코딩:
규칙:
비트 1: 현재 신호 레벨에서 전이
비트 0: 전이 없음 (현재 레벨 유지)
예시:
데이터: 1 0 0 1 1 0 1
NRZI: +V +V +V -V +V +V -V
↑ 전이없 ↑ ↑ 전이없 ↑
장점:
극성 반전에 강인
간단한 구현
단점:
연속 0 -> 긴 시간 전이 없음
-> 동기 손실 (클럭 복원 어려움)
USB에서 NRZI + 비트 스터핑:
USB 1.0/2.0 물리 계층
6개 연속 1 이후 0 삽입 (비트 스터핑)
-> 강제 전이 생성 -> 동기 유지
수신측: 6개 연속 1 다음 0을 제거 (디스터핑)
📢 섹션 요약 비유: NRZI 비트 스터핑은 지루한 회의 중 주기적으로 "여기까지 이해하셨나요?" 확인 — 오래 침묵하면 강제로 신호 삽입.
Ⅲ. 차분 맨체스터 코딩
Differential Manchester:
특성:
각 비트 중간에 반드시 전이 (클럭 동기화)
비트 시작에서:
전이 없음: 비트 1
전이 있음: 비트 0
예시:
데이터: 0 1 0 1 1
시작: 전이 유지 전이 유지 유지
중간: 전이 전이 전이 전이 전이 (항상)
파형:
0: [전이|전이] (시작에 전이 + 중간 전이)
1: [유지|전이] (시작에 유지 + 중간 전이)
장점:
클럭 내장 (중간 전이 항상 존재)
차분 특성으로 극성 오류 내성
사용:
Token Ring (IEEE 802.5): 4Mbps, 16Mbps
IEEE 802.4 Token Bus
현재는 Ethernet이 대체했지만 유산 시스템에 존재
📢 섹션 요약 비유: 차분 맨체스터는 시계 초침처럼 항상 중간에 딸깍 소리 — 소리 전에 방향 바뀌면 0, 안 바뀌면 1이에요.
Ⅳ. 다양한 차분 부호화 비교
차분 부호화 비교:
방식 사용처 전이 규칙
NRZI USB 1=전이, 0=유지
NRZ-M 테이프 1=전이, 0=유지 (NRZI와 동일)
NRZ-S 일부 직렬 0=전이, 1=유지 (NRZI 반대)
차분 맨체스터 Token Ring 0=시작 전이, 1=시작 유지
(중간 전이는 항상)
일반 맨체스터 (비교용):
절대 부호화 (차분 아님)
0=하강, 1=상승 (비트 중간)
이더넷(10BASE-T) 사용
4B/5B + NRZI:
4비트 -> 5비트 변환 (연속 0 방지)
NRZI 결합
Fast Ethernet (100BASE-FX) 사용
📢 섹션 요약 비유: 다양한 차분 부호화는 같은 "변화로 신호" 원칙을 가진 방언들 — USB, Token Ring, Ethernet이 각자 조금씩 다른 규칙을 쓴다.
Ⅴ. 실무 시나리오 — USB 물리 계층
USB 2.0 NRZI 실제 동작:
USB 전선:
D+ (데이터 양극)
D- (데이터 음극)
차분 신호:
J 상태: D+ = High, D- = Low
K 상태: D+ = Low, D- = High
SE0: D+ = D- = Low (리셋)
NRZI 매핑:
J → K 또는 K → J 전이 = 0
전이 없음 = 1
예: 바이트 0x53 = 01010011b 전송
0: K 전이
1: 유지
0: K 전이
1: 유지
0: K 전이
0: K 전이
1: 유지
1: 유지
비트 스터핑: 1이 6개 연속 시 0 삽입
USB 3.0 이후:
8b/10b 인코딩 또는 128b/132b 인코딩
NRZI 벗어나 더 복잡한 라인 코딩 사용
📢 섹션 요약 비유: USB 신호는 두 선의 "같은 방향/다른 방향"으로 데이터를 전달 — 잡음이 두 선 모두에 동일하게 영향을 주므로 차분 신호로 잡음 제거.
📌 관련 개념 맵
차분 부호화 (Differential Encoding)
+-- 원리
| +-- 절대 레벨 → 상대적 변화로 인코딩
| +-- 극성 반전 내성
+-- 유형
| +-- NRZI (USB, Fast Ethernet 보조)
| +-- 차분 맨체스터 (Token Ring)
+-- 단점 보완
| +-- 비트 스터핑 (USB)
| +-- 4B/5B 변환 (연속 0 방지)
+-- 관련 코딩
+-- 일반 맨체스터 (이더넷)
+-- AMI (전화망)
+-- B8ZS, HDB3
📈 관련 키워드 및 발전 흐름도
[NRZ 라인 코딩 (1950s)]
절대 레벨 기반 인코딩
|
v
[NRZI 개발 (1960s)]
자기 테이프 기록 극성 문제 해결
|
v
[차분 맨체스터 (Token Ring, 1985)]
IEEE 802.5 LAN 표준
|
v
[USB NRZI + 비트 스터핑 (1996)]
USB 1.0 물리 계층 표준
|
v
[USB 2.0 (2000)]
480Mbps, NRZI 유지
|
v
[USB 3.0+ (2008~)]
8b/10b, LFPS 등 더 복잡한 코딩
차분 부호화 계열 확장
👶 어린이를 위한 3줄 비유 설명
- 차분 부호화는 "변했냐, 안 변했냐"로 0과 1을 표현해요 — 케이블을 뒤집어도 변화 자체는 같으니 오류 없이 읽을 수 있어요.
- USB가 이 방식을 사용해서 케이블을 어느 방향으로 연결해도 데이터가 잘 전달돼요 (단, USB-A는 뒤집으면 안 되지만 신호 자체는 강인해요).
- 오랫동안 변화가 없으면 시계가 멈춰버리는 문제가 있어서, USB는 1이 6개 연속되면 강제로 0을 끼워 넣어 리듬을 유지해요!