728x90
인코딩 (Encoding) : 개요
- 신호(signal)은 물리적 매체를 통해 전달된다.
- 디지털 신호
- 아날로그 신호
- 데이터는 디지털 데이터만을 취급한다.
- 아날로그 데이터는 디지털 데이터를 변환한 것
- 문제 : 발신지에서 목적지로 보내려는 이진 데이터를 전달될 수 있는 신호로 인코드 해야 한다.
- 보다 일반적으로는 변조 (Modulation)
디지털 전송 (Transmission)
- 신호 중계 방법
- 아날로그 전송 : 신호를 단순 증폭 → 앰프(Amplifier) 사용
- 디지털 전송 : 신호에서 데이터를 복원하여 다시 신호화한다.
- 디지털 데이터를 담은 신호만 이용 가능하다 → 리피터 (repeater) 사용
- 거의 모든 전송 방법이 디지털 전송을 사용한다. (단, 원래 담긴 정보가 디지털 정보여야 repeater를 사용가능하다.)
- noise를 제거할 수 있다.
- 기기 비용이 낮다.
- 컴퓨터라서 부가 기능을 얼마든지 추가할 수 있다.
데이터 전송 (Transmission)
- Data : digital만 사용 (데이터는 모두 디지털화한다)
- Signal : Analog, Digital 모두 사용
- Transmission : Digital만 사용 (Analog는 단순 증폭만 가능)
PCM (Pulse Code Modulation) - A2D 기술
- Sampling Theorem
- Sampling rate := 2 x Highest signal frequency
- sampling은 가장 자주 바뀌는 것에 2배 sampling이면 충분하다.
- 4kHz voice = 8kHz sampling rate (8000번 sampling)
- 인간이 들을 수 있는 음성 데이터
- Represent samples as pulses (PAM)
- Quantize the samples (PCM)
- 8k samples/sec x 8bits/sample = 64 kbps
- 의사전달로 8bit면 충분하다. 초당 64k
Pulse Code Modulation
- 손실 줄이기
- 샘플링 비율 줄이기
- 샘플링 크기 늘리기 (8 bit → 64 bit)
- 샘플링을 하면 어느 정도 손실이 발생할 수 밖에 없음.
- 주기적 샘플링으로 디지털화 한다.
- PCM 처리 후, analog 처럼 값을 연결하면 D2A가 되는 것
변조 : Amplitude Modulation (D-Data → A-Signal)
- Amplitude modulation : 신호 크기 바꾸기 (AM)
- amplitude를 바꾸면 0, 1을 구분할 수 있다.
- Quadrature amplitude modulation (QAM)
- 2 bit를 담을 수 있다.
주파수 변조 : Freq. Modulation
- Frequency modulated carrier wave (FM)
- 주파수가 변동된 것을 1, 0으로 변경한다.
위상 변조 : Phase Modulation (Phase-shift)
- Binary and Quad Phase modulation
- sin 함수를 사용하여 윗부분을 1, 아랫 부분을 0으로 간주
- amplitude, phase, frequency를 모두 합쳐서 사용할 수도 있다.
디지털 전송 (Transmission) - Data ⇒ D-Signal
- Analog-Data, Digital-Data
- Analog-Transmission, Digital-Transmission
- Modulation : Data ⇒ Analog-signal
- 실제 사용 예시
- 휴대폰
- 집 인터넷
- 집 (유선) 전화
- 아날로그 방송, AM/FM 라디오
- 디지털 방송
- Data ⇒ Digital-Signal : Encoding
Non-Return to Zero(NRZ)
- 노드 내부의 데이터 표현과 일치 (별도의 인코딩 필요 X)
- 문제점 : 1 또는 0이 연속되는 경우 (not critical)
- low signal(0)의 경우 수신자는 신호가 없는 것으로 오해할 수 있다.
- High signal(1)의 경우 전류가 계속 흐르게 되고, 기저 전압의 혼돈을 야기 한다.
- 클럭(clock) 복구가 불가능 (critical!)
- 송신자, 수신자는 서로 독립적인 클럭을 갖고 있다.
- 송신자는 약속된 비트로 자신의 클럭에 따라 신호를 송신하고, 수신자는 샘플링을 자신의 클럭에 따라 신호를 수신한다.
- 송신자와 수신자의 클럭이 맞지 않으면 잘못된 비트 인식을 하게 된다.
- 수신자가 송신자의 클럭에 자신의 클럭을 맞추는 작업이 필요하다.
NRZI and Manchester
- Non-Return to Zero Inverted (NRZI)
- 1을 인코드할 경우 현재의 신호로부터 중앙 지점에서 전이 (mid-transition)을 하고, 0을 인코드할 경우 현재의 신호 상태(이전 볼트값)를 유지한다. → 연속되는 1 문제를 해결할 수 있다.
- Manchester
- 0: up transition, 1: down transition
- NRZ 방식으로 인코드된 데이터와 클럭을 XOR 시켜서 바꾼다 → 50% 효율을 갖는다는 문제점이 존재한다.
- 비트폭이 1/2로 줄어들어 효율이 감소하는 것
Mid-transition의 의미 (Manchester 코드 예)
- Manchester 코드는 Data에 Clock을 얹어서 동시에 보내는 것
4B/5B
- 인위적으로 0이 안 나오게 하는 것
- 아이디어
- 데이터를 매 4bits마다 5-bit 코드로 인코드한다. 이 5-bit의 코드는 앞에는 1개, 뒤에는 2개까지의 0이 오도록 제한해서 선택된 코드이다. 따라서 0이 4개 이상 연속되게 나올 수 없다.
- 5-bit 코드는 NRZI 인코딩을 이용해서 전송된다.
- 효율 80% 달성 (5 bit 중에 4 bit가 사용되고 1개는 overhead)
728x90
'School Lecture Study > 컴퓨터 통신' 카테고리의 다른 글
7. 오류 검출 (0) | 2022.10.25 |
---|---|
6. 프레이밍 (Framing) (0) | 2022.10.25 |
4. 점대점(Point-To-Point) 링크 - 하드웨어 구성요소 (0) | 2022.10.25 |
3. 네트워크 성능 (0) | 2022.10.25 |
2. 네트워크 구조 (0) | 2022.10.25 |