신호, 부호화와 오류 제어
통신 시스템의 신호 변환, 전송 방식, 다중화, 오류 검출·교정과 재전송 원리를 학습한다.
1. 데이터 통신의 기본 과정
정보원
│ 원시 데이터
▼
송신 장치 ── 부호화·변조 ──► 전송 매체
│ 잡음·감쇠·왜곡
▼
수신 장치 ◄─ 복조·복호화 ─── 수신 신호
│
▼
목적지
- DTE: 데이터를 생성하거나 사용하는 단말 장치이다.
- DCE: 전송로에 맞게 신호를 변환하고 회선과 접속한다.
- 모뎀: 디지털 데이터를 아날로그 반송파에 실어 보내고 다시 복조한다.
- 코덱: 아날로그 음성·영상을 디지털 데이터로 부호화하고 다시 복호화한다.
2. 신호와 전송 성능
신호는 진폭, 주파수, 위상으로 표현할 수 있다. 전송 중 감쇠, 지연 왜곡, 열잡음·충격잡음 등이 발생한다.
- 대역폭: 사용할 수 있는 주파수 범위 또는 문맥에 따라 전송 가능한 데이터율을 뜻한다.
- 비트율 bps: 1초에 전송하는 비트 수이다.
- 보오율 baud: 1초에 전송하는 심벌 수이다.
한 심벌이 M개의 상태 중 하나를 표현하면 심벌당 log₂M비트를 담을 수 있다.
bit rate = baud rate × log₂(M)
예를 들어 8가지 심벌을 사용하는 방식은 심벌당 3비트를 표현하므로 2,000 baud에서 이론적으로 6,000 bps를 표현한다.
3. 직렬·병렬과 동기 방식
| 구분 | 특징 | 일반적 활용 |
|---|---|---|
| 직렬 전송 | 한 회선에서 비트를 순서대로 보냄 | 장거리·네트워크 통신 |
| 병렬 전송 | 여러 비트를 여러 선로로 동시에 보냄 | 짧은 거리의 내부 버스 등 |
| 비동기 전송 | 문자마다 시작·정지 비트를 붙임 | 간헐적·단순 통신 |
| 동기 전송 | 프레임·블록 단위로 연속 전송 | 고속 데이터 통신 |
단방향·반이중·전이중은 물리 회선 수로 고정되는 개념이 아니라 동시에 어느 방향으로 전송 가능한가에 따른 분류이다.
단방향: A ─────────► B
반이중: A ◄────────► B 한 시점에는 한 방향
전이중: A ◄════════► B 동시에 양방향
4. 디지털 부호화와 변조
라인코딩
디지털 데이터를 디지털 신호로 바꾸는 방법이다.
- NRZ: 한 비트 구간 동안 일정한 신호 수준을 사용한다. 긴 동일 비트에서 동기 문제가 생길 수 있다.
- Manchester: 비트 중간 전이를 이용해 데이터와 동기 정보를 함께 전달하지만 필요한 대역폭이 증가한다.
데이터: 1 0 1 1
NRZ: ───── _____ ───── ─────
Manchester: 중간 전이 방향으로 0과 1을 표현
디지털 데이터의 아날로그 변조
| 방식 | 변화시키는 반송파 성분 |
|---|---|
| ASK | 진폭 |
| FSK | 주파수 |
| PSK | 위상 |
| QAM | 진폭과 위상 조합 |
QAM은 한 심벌에 여러 비트를 표현해 대역폭을 효율적으로 사용할 수 있지만, 상태 수가 늘수록 잡음에 대한 구분이 어려워진다.
아날로그 데이터의 디지털화
PCM은 표본화 → 양자화 → 부호화 과정을 거친다.
아날로그 파형
↓ 일정 시간 간격으로 값 추출
표본화
↓ 연속 값을 정해진 단계로 근사
양자화
↓ 각 단계를 2진수로 표현
부호화
↓
디지털 비트열
5. 다중화
여러 신호가 하나의 전송로를 공유하도록 만드는 기술이다.
| 방식 | 공유 기준 | 핵심 특징 |
|---|---|---|
| FDM | 주파수 | 채널 사이 보호대역이 필요할 수 있음 |
| TDM | 시간 | 시간 슬롯을 나누어 사용 |
| 통계적 TDM | 실제 전송 수요 | 활성 단말에 동적으로 슬롯 할당 |
| WDM | 광 파장 | 광섬유에서 여러 파장 채널 사용 |
| CDM/CDMA | 코드 | 같은 시간·주파수를 사용하되 코드로 사용자 구분 |
CDM은 FDM과 TDM을 단순 혼합한 방식이 아니라 서로 구별되는 코드와 확산 기술을 이용해 신호를 분리한다.
6. 오류 검출과 교정
패리티
데이터의 1 개수를 홀수 또는 짝수로 맞추는 비트를 추가한다. 단순하지만 짝수 개 비트 오류처럼 검출하지 못하는 경우가 있다.
체크섬
데이터를 일정 단위로 나누어 합산한 값을 함께 전송하고 수신 측에서 다시 계산한다. IP·TCP·UDP 등에서 유사한 원리가 사용된다.
CRC
송신 데이터 비트열을 생성다항식으로 나눈 나머지를 붙인다.
송신 데이터
↓ 생성다항식 차수만큼 0 추가
modulo-2 나눗셈(XOR)
↓
나머지 = CRC
↓
데이터 + CRC 전송
↓
수신 측이 같은 다항식으로 나눔
├─ 나머지 0: 오류가 검출되지 않음
└─ 나머지 비0: 오류 검출
해밍코드
여러 패리티 비트를 1, 2, 4, 8번 위치 등에 배치해 오류 위치를 계산한다. 대표적인 해밍코드는 단일 비트 오류를 교정할 수 있다.
7. 오류 제어와 ARQ
오류가 검출되면 재전송을 요구하는 방식을 ARQ라고 한다.
- Stop-and-Wait ARQ: 한 프레임을 보내고 ACK를 기다린다.
- Go-Back-N ARQ: 오류 프레임부터 이후 프레임을 다시 전송한다.
- Selective Repeat ARQ: 오류나 손실된 프레임만 선택적으로 재전송한다.
Stop-and-Wait
송신자 ──Frame 0──► 수신자
송신자 ◄── ACK 1 ── 수신자
송신자 ──Frame 1──► 수신자
슬라이딩 윈도는 ACK를 기다리는 동안 여러 프레임을 연속 전송해 회선 이용률을 높인다.
8. 전송률 상한 계산
Nyquist: C=2B log2(M) 잡음 없는 대역 제한
Shannon: C=B log2(1+S/N) 잡음 있는 채널
예를 들어 B=3kHz, M=8, S/N=63이면 두 식 모두 18kbit/s다. 물리적으로 가능한 전송률은 두 제약을 함께 넘을 수 없다.
SNR(dB)=10log10(S/N)이므로 30dB는 선형비 1000이다.
9. 표본화·PCM·블록 코딩
최고 주파수 4kHz → 표본화율 최소 8kHz
8kHz × 12bit × stereo 2ch = 192kbit/s
4B/5B 적용 선로율 = 192×5/4 = 240kbit/s
Manchester는 비트 중앙 전이로 동기화에 유리하지만 더 많은 대역폭을 요구할 수 있다. NRZ는 동일 비트가 길게 이어지면 전이가 부족해 동기 문제가 생길 수 있다.
10. CRC와 Hamming 거리
data=1101, generator=1011
1101000을 XOR 나눗셈 → remainder=001
transmit=1101001
Hamming 패리티 수는 2^r ≥ m+r+1로 정한다. m=11이면 r=4가 최소다. 최소 Hamming 거리 d가 4이면 최대 3비트 오류 검출, 1비트 오류 정정을 보장한다.
11. ARQ 윈도와 회선 이용률
m비트 순서번호에서 GBN 최대 윈도는 2^m-1, SR은 2^(m-1)이다. 프레임 전송시간 Tt, 단방향 전파시간 Tp일 때 Stop-and-Wait의 단순 이용률은 Tt/(Tt+2Tp)다. Tt=1ms, Tp=4ms면 약 11.1%다.
확인 문제
- B=3kHz,M=8인 Nyquist 상한은?
- 30dB의 선형 S/N은?
- 8kHz·12bit·stereo PCM 비트율은?
- m=11인 Hamming 코드 최소 패리티 수는?
- 3비트 순서번호의 GBN과 SR 최대 윈도는?