CS/NETWORK

시그널 변환

IT록흐 2021. 6. 21. 08:35
반응형

 

 

데이터는 멀리 가지 못한다. 전기적 흐름에 '변화'를 주어 '시그널'을 만들어야 빠르게 멀리 갈 수 있다.

 

데이터에는 두 가지 종류가 있다.

1. 아날로그 데이터 (목소리, 비디오 테이프...)

2. 디지털 데이터 (1000111011...)

 

시그널에는 두 가지 종류가 있다.

1. 아날로그 시그널

2. 디지털 시그널

 

어떤 데이터를 어떤 시그널로 만드냐에 따라 특징과 용도가 달라진다.

 

시그널 변환의 종류

 

디지털 데이터(DD) -> 디지털 시그널(DS)

 

01010111 디지털 데이터를 0010110의 디지털 시그널로 바꾸는 것이다. 기존의 데이터를 그대로 시그널로 바꾸기 때문에 주파수를 변조시킬 필요가 없다. 그러므로 Baseband(기저대역) 전송방식인 LAN 이더넷이 이에 해당한다.

 

디지털 데이터(DD) -> 아날로그 시그널(AS)

 

디지털 데이터를 아날로그 시그널로 보내는 이유는 멀리 보낼 수 있기 때문이다. 디지털 시그널은 불연속적인 시그널로 외부 간섭에 의해 쉽게 변형되고 훼손될 수 있다. 이에 비해 아날로그 시그널은 변형되지 않고 멀리 이동할 수 있다.

 

아날로그 시그널로 바꾸는 과정에서 주파수 대역을 분할하거나 파장의 길이를 달리하여, 여러 개의 시그널 채널을 만들어 Broadband(광대역) 통신을 할 수 있다. (WAN) 대표적으로 모뎀이 있다.

 

아날로그 데이터(AD) -> 디지털 시그널(DD)

 

아날로그 데이터를 디지털 시그널로 바꾸려면 우선 아날로그 데이터를 디지털 데이터로 바꾸어야한다. 그 과정을 Pulse Code Modulation(PCM)이라고 한다.

 

아날로그 데이터는 연속적인 데이터다. 하지만 디지털 시그널은 불연속적인 시그널이다. 그러므로 아날로그 데이터 전부를 디지털 시그널로 보낼 수 없다. 그래서 일부 데이터를 Sampling 해야한다.

 

그렇다면 표본을 몇 개나 추출해야할까? 표본을 적게 추출하면 수신 측에서 아날로그 데이터를 복구할 때, 데이터에 변형이 생길 수 있다. 데이터에 오류가 생기지 않으려면 표본을 추출할 때 본래의 주파수의 2배 이상의 주파수로 표본을 추출해야한다. (나이퀴스트 이론)

 

아날로그 데이터 표본 추출 (표본화)

 

 

4000Hz는 1초에 4000개의 파장이 생긴다는 의미다. 2배 이상의 주파수로 표본을 추출한다는 의미는 한 파장에 2개의 표본을 추출한다는 의미다. 그러므로 8000Hz 이상의 주파수로 표본을 추출해야 데이터에 오류가 생기지 않는다.

 

PAM(Pulse Amplitude Modulation)

 

 

우리의 목적은 아날로그 데이터를 디지털 시그널로 바꾸는 것이다. 그렇다면 아날로그 데이터를 표본을 토대로 디지털 시그널로 바꿀 수있도록 변조(Modulation)을 해야한다. 아날로그 데이터를 표본을 토대로 변조시켜 만든 아날로그 데이터가 바로 PAM(Pulse Amplitude Moudulation)이다.

 

아날로그 데이터를 변조하는데 표본의 진폭(Amplitude)만 남긴 상태의 아날로그 데이터(PAM)를 만든다. 이때 진폭의 크기도 소수점을 없애고 정수화시킨다. 이런 작업을 '양자화'라고 한다.

 

양자화를 거치면, 아날로그 데이터는 정수값의 진폭만 가진 아날로그 데이터만 남는다. 이를 bit단위로 바꾸어야한다. 예를들어 양자화한 표본의 진폭이 7 8 9 4 3 10이라고 한다면 이를 0111 1000 1001 0100 0011 1010으로 바꿀수 있다. 이 과정을 '부호화'라고 한다. 양자화에서 부호화까지 과정을 PCM(Pulse Code Moudulation)이라고 한다.

 

부호화된 비트열은 디지털 데이터가 된다. 디지털 데이터를 디지털 시그널로 변환하여 수신측에 송신한다. 디지털 시그널을 받은 수신측은 부호화된 디지털 데이터를 토대로 PAM신호를 재구현한다. 이 과정을 복호화라고 한다. 재구현된 PAM을 다시 원래의 아날로그 신호로 재구현하는 과정을 여파화 라고 한다. 여기까지가 아날로그 데이터가 디지털 시그널로 전송되는 과정이다. 대표적인 장치로는 codec(code-decode)이 있다.

 

아날로그 데이터(AD) -> 아날로그 시그널(AS)

 

라디오가 대표적인 케이스이다. 목소리(AD)를 전국 각지로 '멀리' 보내야 하기 때문에 아날로그 시그널를 이용한다. 아날로그 시그널에 데이터를 어떻게 담느냐에 따라 종류가 달라진다.

 

AM 은 진폭(Amplitude)의 변화에 정보를 담는다.

FM은 진동수(Frequeancy)의 변화에 정보를 담는다.

PM은 위상(Phase)로 파장의 모양 변화에 정보를 담는다.

 

디지털 시그널로 인코딩하는 방법

 

디지털 시그널은 '불연속적'이다. 그리고 이는 1과 0을 나타낸다. 그럼 어떻게 디지털 시그널은 1과 0을 나타내는지 알아보자.

 

Unipolar, Polar, Bipolar Encoding

 

Unipolar Encoding (unipolar : 단극)

+5V : 1

+0V : 0

 

Polar Encoding (polar : 양극)

+5V : 1

- 5V : 0

 

Bipolar Encoding (bipolar : 조울증 )

+5V, -5V : 1

0V : 0

 

 

Unipolar 와 Polar 인코딩 방식은 한 가지 문제점이 있다. 만약 1111111.... 혹은 0000000.... 이렇게 동일한 비트가 반복되는 경우 시그널이 ------------------ 이처럼 '변화'가 사라진다. 변화가 사라지면 1의 개수나 0의 개수를 파악하는데 오류가 날 가능성이 높다.

 

Bipolar는 1을 나타내는데 +5V와 -5V를 왔다갔다 한다. 첫 번째 1이 +5V이면 두 번째 1은 -5V이다. 이렇게 시그널이 왔다 갔다하면 1의 개수를 파악하기 쉬워진다. 하지만 이또한 00000000.... 이 계속되는 경우, 시그널의 변화가 사라진다는 문제가 있다.

 

NRZ, NRZ-I Encoding

 

NRZ (None return to zero) Encoding

 

0V(ZERO)를 사용하지 않는 것이다. 0이면 +V, 1이면 -V이다. 하지만 이또한 0이나 1이 계속되면 시그널의 변화가 사라진다.

 

NRZ-I(None return to zero Inverted) Encoding

 

0V를 사용하지 않는다. 0은 현재 전압을 유지, 1은 현재 전압을 반전(inverted)시킨다. 만약 현재 전압이 +V이면 0인 경우 그대로 유지하지만 1인 경우 -V로 반전시킨다.

 

역시 이또한 Bipolar 인코딩 방식처럼 000000.... 이 유지되면 시그널의 변화를 줄 수가 없다.

 

 

Manchester, Differential Manchester Encoding

 

Manchester Encoding

 

가장 일반적으로 사용되는 시그널 인코딩 방식이다. 지금까지 소개한 방식들은 시그널의 변조를 한번만 주었다. 즉, 1 이면 +V이거나 -V 둘 중 하나였다. 그러나 Manchester Encoding 방식은 변조를 두 번 넣어준다.

 

1 : 위 -> 아래

 

 

0 : 아래 -> 위

 

1과0이 한 가지 V를 나타내는 것이 아니라 V의 변화량을 담는 것이다. V가 감소하면 1, V가 증가하면 0이다. 이런 방식을 사용하면 111111.... 혹은 00000... 이 되어도 비트단위로 구분이 가능하다.

 

 

 

 

Differential Manchester Encoding

 

Manchers Encoding 방식을 색다르게 적용한 인코딩 방법이다.

 

1 : 앞 신호를 뒤집는다.

0 : 앞 신호를 유지한다.

 

 

 

반응형

'CS > NETWORK' 카테고리의 다른 글

다중화기(Multiplexer)  (0) 2021.06.21
시그널 기본 용어  (0) 2021.06.21
데이터 링크 계층(DataLink Layer)  (0) 2021.06.21
시그널 (Signal)  (0) 2021.06.21
전송 매체(Media)  (0) 2021.06.21