전공/데이터 통신

2. 디지털 신호 전송(디지털 signal)

문정훈 2021. 10. 14. 15:30

1. 디지털 전송 용어 정리

디지털 데이터를 어떻게 디지털 요소로 변환하는지에 대해 정리한다. 

이런 변환에는 3가지 기술이 있다. 회선 부호화, 블록 부호화, 스크램블링(뒤섞기) 이 중 회선 부호화 방식에 대해 정리한다.  그 전에 몇가지 용어에 대해 정리하면, 

 

1) 데이터 요소와 신호 요소

데이터 요소와 신호 요소를 구별해야한다. 데이터 통신에서 전송하려는 데이터들에서 하나의 데이틀 데이터 요소라고 한다. 즉 데이터 요소를 전송하려는 것이다. 

신호 요소란 시간적으로 볼 때 디지털 신호의 가장 짧은 단위로 우리가 전송하려는 데이터 요소를 실어나르는 역할이 신호 요소이다. 

 

2) 데이터 전송률(N), 신호 전송률(S), 

데이터 통신의 한 가지 목표는 신호율은 낮추면서 데이터 전송률은 높이는 것이다. 

(비주기) 디지털 신호는 고조파들의 무한 급수인 (비주기) 복합 아날로그 신호라고 정리하였다.

만약 신호율이 증가하면 그만큼 신호 요소의 펄스가 증가하는것이다. 신호 요소의 펄스가 증가하는 것은 퓨리의 변환의 고조파 관점에서 보면 더 높은 주파수를 가진 고조파들의 무한 급수를 의미하고 이는 대역폭의 증가를 의미한다. 

정리=> S는 대역폭과 비례관계

 

참고로 r 값은 한 신호요소가 보내는 데이터 요소의 개수비를 의미한다. 1개의 데이터 요소를 보내는데 2개의 신호 요소가 필요하면 이때 r = 1/2가 된다. 

 

3) 데이터율(N)과 신호율(S)의 관계

기본적으로 N과 S는 r값에 좌우되며, 전송하려는 데이터 패턴에도 좌우된다. 예를 들어 전송하련느 데이터가 000000 또는 111111이라면 신호 요소의 에너지 준위 변화는 없을 것이다. 이는 신호율 즉 1초당 전송되는 신호 요소의 개수가 0임을 의미한다. 

만약 101010 또는 010101의 데이터를 전송한다하면 신호율 S= N/r의 값이 될 것이다. 이 두가지 경우가 각각 신호율의 최선의 경우와 최악의 경우에 대한 입력 데이터 패턴들이며 입력 데이터 패턴에 의해 신호율이 가질 수 있는 최선의 경우는 0이며 최악의 경우는 N/r이다. 이것을 통해 아래 식을 도출할 수 있다. 

S = c*N/r (c는 0과 1을 포함한 사이의 실수 범위이다.)

 

이때 대역폭은 신호울율 S와 비례하므로 최소 대역폭의 값을 아래와 같이 정할 수 있다. 

B(min) = c*N/r 

 

또한 위 식을 통해 우리는 최대 데이터 전송률을 다시 생각해볼 수 있다.

N(max) = 2*B*lg L (나이퀴스트 정리) 이었다. 

N(max) = 2*B*lg L=(1/c)*B*r 

 

 

4) 유효 대역폭

정보를 전달하려는 디지털 신호는 비주기 디지털 신호이며 디지털 신호는 퓨리의 변환 관점에서 무한의 대역폭이라 하였다. 하지만 실제 디지털 신호의 대역폭을 보면 대역폭은 무한이지만 높은 고조파 일 수록 진폭이 거의 없을 정도로 작아지기 때문이 실제로 제한된 대역폭으로 무한 대역폭을 가진 디지털 신호를 거의 정확히 표현할 수 있다. 

정리=>실제 디지털 신호의 대역폭은 무한이지만 유효 대역폭은 유한이다. 

 

5) 기준선 표류란(baseline wandering)?

baseline이란 무엇인지 wandering이란 무엇인지부터 정리해보자. baseline이란 일단 한마디로 디지털 신호의 평균 세기이다. 그리고 wandering은 이 baseline이 최대 세기 또는 최소 세기로 다가가는 느낌으로 시작해보자. 

 

디지털 신호는 에너지 준위가 다양할 수 있는데 +5v -5v 와 같이 총 2개의 에너지 준위를 가지는 디지털 신호라고 해보자.

그럼 전송되는 데이터 요소의 평균 전력은 +5 ~ -5v를 평균화 하는 값인데 이 값이 baseline이다.

이 baseline은 5v~-5v 사이의 하나의 실수 값이 될 수 있다. (평균 값이니깐)

 

이제 상상해보자 2개의 준위를 가지는 데이터 신호를 상상해보고 평균이 되는 값(baseline)이 일단 0v라고 가정해보자. 이때 "요동치는 준위"는 5v 에서-5v가 되거나 -5v에서 5v가 된다는 것인데  "요동치는 준위"  한쌍을 보면 5v + (-5v) = 0이므로 이 값은 baseline에 영향을 안미친다. 하지만 "요동치지 않는 준위" 즉 

5v다음 또 5v가 나오거나 -5v다음 또 -5v가 나오는 경우 이들의 평균 값은 (5v+5v)/2 = 5v 또는 (-5v-5v)/2=-5v로 0이 아닌 값이된다. 이 값은 baseline에 영향을 미치게 되며 5v가 연속되면 baseline은 점점 5v를 향해 갈것이고 -5v가 지속되면 baseline은 점점 -5v를 향해 갈것이다. (이것이 wandering 현상임)

 

이제 정리해보면 수신자가 디지털 신호를 복호화할때는 수신된 디지털 신호의 baseline을 기준으로 데이터 요소의 값을 정한다. 위 예시에선 baseline 보다 크면 1로 복호화되고 baseline보다 작으면 0으로 복호화된다고 볼 수 있다. 하지만 baseline이 wandering 현상이 일어나게 되면 (극단적으로 baseline이 5v라고 해보자) baseline으로 더 이상 0고 1을 구분할 수 없게되는 문제점이 생긴다. 

 

6) 직류 성분

디지털 신호의 전압이 일정하게 한동안 유지된다면 그 구간에서는 주파수가 0인데 (퓨리의 변환)  이와 같이 0 주파수 주위에 생기는 주파수들을 직류 성분이라고 한다. 이런 직류 성분은 대부분 통과시키지 못하기 때문에 문제가 발생한다. 따라서 전압이 일정하게 유지되서 직류 성분이 발생하는 일이 없도록 디지털 신호를 만들어야한다. 

추가로 이런 전압 일정 현상은 직류 성분 문제 + 기준선 표류 문제도 함께 동반하므르로 최악 of 최악이다..

 

6) 자기 동기화 

디지털 신호는 전송된는 데이터 안에 타미이 정보를 포함한다. 따라서 

송신자가 보낸 디지털 신호를 수신자가 제대로 복호화하기 위해서는 발신자의 비트 간격에 맞춰 수신자 역시 비트 간격을 발신자와 일치시켜야한다. (이것이 동기화 되었다 또는 시계가 일치한다 라고 함) 

 

송신자의 시계를 수신자에게 알려주는 방법으로

디지털 신호의 전압이 바뀌도록 하여 수신자가 펄스의 시작, 중간, 끝을 알도록 해주면 된다. 

만약 수신자의 시계가 동기화 되어있지 않다면 이 3 지점에서 바뀌는 전압을 통해 시계를 다시 맞출 수 있게 된다. 

 

 

2. 디지털 데이터-> 디지털 신호로 변환 : 회선 부호화

1) NRZ(영비복귀극형)

NRZ-L 방법은 영비복귀극형-L 방법으로 송수신자가 0의 신호를 low로 하고 1의 신호를 high로 할지 또는 그 반대로 할지를 서로 약속한다면 어떤 경우도 지장이 없다. 이 문제에서는 0 low신호로 설정하였다.

0에 대해서는 low신호로 1에대해서는 high신호로 디지털 신호를 나타내는 방법이다.

이 방법은 기준선 표류의 문제가 있으며 연속적인 0 또는 연속적인1 에 대해 송수신자 간의 시간이 일치하지 않는 문제인 송수신 문제도 야기한다.

 

2) Differential Machester

위 방식은 비트 간격 중간에서 반전이 반드시 일어나며 비트가 1로 변하면 반전을 하지 않고 0으로 변하면 반전을 하여 나타내는 방법이다.

차분 멘체스터 방식이다. 차분 멘체스터는 RZNRZ-1 방식을 섞은 방식이다. 비트 간격 중간에 반전을 사용하는데 이는 동기화를 위해 사용되고, 비트를 식별하는데 비트 간격 시작점에서의 전이 여부가 사용된다.

 

차분 멘체스터는 NRZ-1의 문제인 기준선 표류문제를 해결하였으며 직류 성분 문제 역시 해결하는 방법이다. 하지만 비트 중간 반전이 계속 있기 때문에 신호율이 NRZ의 두배가 된다는 단점이 있다.

 

위 문제에서는 비트 값이 1이라면 반전을 하지 않고 빈 원으로 비트간의 사이를 표시한다.

비트 값이 0이라면 반전을 하고 채워진 원으로 비트간의 사이를 표시한다.

 

 

3) AMI

흔히 사용되는 양그경 부호화는 양극 AMI라고한다. AMI에서 교대로 나타나는 1은 서로 반전된 결과를 나타낸다. 0은 제로 전압으로 나타낸다.

이 방법은 NRZ를 대신신하기 위해 개발된 방법이다. NRZ와는 동일한 데이터율을가지지만 직류 전압 성분이 없다. 
그 이유는 만약 연속된 1이 있다면 전압이 음과 양을 교대로 하며 나타나게 된다. 따라서 이 경우는 직류 성분이 없게되고 만약 0이 연속된다면 전압은 일정하지만 전압이 0근처에서는 이는 퓨리의 변환의 결과에 의해 직류 성분이 없는 것과 마찬가지의 결과를 나타낸다. 따라서 AMI는 직류 성분을 가지지 않는다.

위 문제의 경우 0이 연속으로 나타나므로 0V의 전압으로 나타낸다. 

 

 

4) 8B6T

이 방식은 다준위 방식중 하나로 8의 데이터 패턴을 사용하고 8개의 비트 패턴을 6개의 신호 요소로 나타내는 방법이다. 신호는 3개의 준위를 가지는 방식이다.

이 방식은 2^8개의 데이터 패턴이 있으며 3^6개의 신호 패턴이 있다. 따라서 473개의 사용하지 않는 신호 패턴이 생기게 되며 이는 동기화 오류 검색에 사용되거나 직류 성분 균형을 위해 사용된다.

 

위 문제는 3개의 신호 패턴으로 00000000 데이터를 -+00-+ 형태의 신호로 변경하여 나타낸다. 00V를 의미하며 low 신호를 의미하고 +higt신호를 의미한다.

 

 

5) B8ZS

B8ZS는 스크램블링 기법 중 하나로 양극 8영 대치라고 부른다. 이 기법은 AMI의 기법을 따르며 다음의 경우는 새로운 신호로 대치된다.
8개의 연속되어 나온 경우 000VB0VB의 신호로 대치된다.

V는 위배를 말하는데 이는 AMI의 부호화 규칙을 위배하는 0이 아닌 준위를 뜻한다.

B는 양극을 뜻하는데 AMI 규칙을 따르는 0이 아닌 준위를 뜻한다.

8비트는 00000000이므로 000VB0VB 신호로 대치된다. 이것은

 

경우1) 연속적인 8개의 0 바로 앞에 +의 펄스가 있는 경우 000+-0-+로 인코딩

경우2) 연속적인 8개의 0 바로 앞에 -의 펄스가 있는 경우 000-+0+-로 인코딩 함을 뜻함.
이 문제에서는 경우1)을 사용한다.

 

6) HDB3

HDB3은 유럽과 일본에서 일반적으로 사용되는 방식으로 이 역시 AMI의 결점을 보완하기 위한 방법이다.
이 방법은 4개의 연속된 0000V또는 000B로 대치된다. 두 가지 다른 대치 방법을 사용하는 이유는 대치 이후에 짝수 개의 0이 아닌 준위의 개수를 유지하기 위한 것이기 때문이다. 아래 두가지 방법이 그 대치 방법이다.

 

경우1) 직전 대치 이후 0이 아닌 펄스의 개수가 홀수인 경우에는 000V로 대치한다.

이것은 전체 0이 아닌 준위의 개수를 짝수로 만들게 된다.

 

경우2) 직전 대치 이후에 0이 아닌 펄스의 개수가 짝수인 경우, B00V로 대치한다. 
이는 전체 0이 아닌 준위의 개수를 짝수로 만든다.

 

위 문제의 경우 직전에 1의 개수가 짝수개라고 가정하고 8비트 직전에 나타난 1은 음수의 펄수였다고 가정한다.

따라서 00000000000VB00V로 대치된다.

 

 

3. 아날로그 데이터-> 디지털 신호로 변환 : PCM 부호화

1) PCM 부호화 순서

아날로그 데이터를 디지털 요소르 바꾸는 방법에 대해 설명한다. 

카메라, 마이크로폰으로 만들어낸 신호는 아날로그 신호이다.  이런 아날로그 신호를 우선 PCM 과정을 거쳐 디지털 신호로 바뀌게 된다.  PCM 3과정을 거치게 됩니다.

과정1) 아날로그 신호를 sampling 한다.

과정2) sampling 된 신호를 계수화 한다.

과정3) 계수화된 값을 비트 스트림으로 부호화한다.

 

나이퀴스트 정리에 따르면 원래의 아날로그 신호를 재생하기 위한 필요조건으로 채집률이 원래 신호의 최대 주파수의 두배가 되면 되는 것이다. 

위 과정으로 얻은 신호는 신호의 최대와 최소 사이의 값을 정수가 아닌 어떤 값을 가지는 무한의 집합의 수가 될 수있다.
 따라서 이 값들을 부호화 과정을 통해 계수화할 수 있다. 

계수화 과정을 통해 각 구간의 중간값을 계수화의 값으로 채택하고, 계수화된 준위의 값을 차례로 0부터 L-1 까지 수를 부여하며 만약 한 채집된 신호의 계수화 준위 값이 5라면 101Encoded 된다. 

Encoded되는 2진 비트의 크기는 lg L (L은 신호 준위)이다.