참고자료

부호화 방식

본클라쓰 2009. 3. 24. 00:48

부호화(코딩: coding 또는 encoding) : 아날로그 신호를 디지털 부호(code)로 만드는 과정

복호화(디코딩: decoding) : 부호를 해독하여 다시 본래의 신호를 만드는 과정

 

 

이 두 가지 과정을 처리하는 방법을 합쳐서 부호화방식이라고 한다. 코딩과 디코딩을 처리하는 하드웨어나 소프트웨어를 코덱(CODEC: coder and Decoder)이라고 한다. 부호화는 사용목적에 따라서 원천부호화방식과 채널부호화방식으로 나눈다.

 

원천부호화(source coding)

 

정보신호를 전송하기에 적합하도록 효율적으로 부호화하는 방식으로 정보신호를 디지털 신호로 바꾸고 데이터를 압축하여 제한된 대역폭에서 고속으로 전송되도록한다. 원천부호화는 에러가 발생했을 때 오류검출 및 정정 능력이 매우 취약하다. 특히 고속의 데이터망(network)에서는 신뢰성 있는 데이터 전송시스템이 필요하다.

 

  

채널부호화(channel coding)

 

원천부호화된 원래의 정보에 에러 검출 및 정정을 위한 비트들을 추가하여 전송하는 방법으로 수신측에서 에러를 검사하여 데이터의 재전송을 요청하거나 자체적으로 에러를 검출하여 정정하도록 하는 목적이 있다.

 

 

 

원천부호화(source coding)

DM(Delta Modulation : 델타변조), PCM(Pulse Code Modulation : 펄스부호변조), 허프만코딩(Huffman coding)

 

DM(Delta Modulation)

 

DM은 원천부호화 방식 중에 가장 원시적인 방법이다. 현재 샘플과 이전 샘플을 비교한 차이를 전송하는 방식으로 샘플링 값이 이전 값보다 증가하면 1을 보내고 감소하면 0을 전송한다. PCM이 한 샘플링 값으로 여러 비트씩 얻는 것에 비해 DM은 한 비트씩만 얻는다.

  

 

PCM(Pulse Code Modulation)

 

펄스부호변조로서 [표본화 → 양자화 → 부화화] 방식을 거쳐 아날로그신호를 디지털 신호로 변환한다. 표본화(Sampling)란 연속적인 시간신호를 이산적인 시간신호로 표본화하여 PAM신호를 만드는 과정이며, 양자화는 PAM신호를 디지털 전압값으로 변환하는 과정이다, 부호화는 표본값이 PCM디지털 코드를 부여하는 과정이다. 연속적인 아날로그 신호를 시간단위로 끊어서 전압값을 얻은 후 그 전압값에 8bit이상의 디지털 코드를 부여하는 방법이다.

 

 

허프만코딩(Huffman coding)

 

기본 아이디어는 발생확률이 높은 심벌에는 짧은 길이의 코드를 할당하고 발생확률이 낮은 심벌에는 긴 길이의 코드를 할당하는 방식

 

 

 

채널부호화(Channel coding) 

ARQ(Automatic Repeat Request), FEC(Forward Error Correction)

 

 

ARQ(Automatic Repeat Request) 자동재전송요청

 

종류 : 정지-대기(stop and wait)방식, 연속(continuous)방식

  

정지대기(stop and wait)방식

 

정해진 코드단위를 전송한 후 수신 결과로 돌아오는 ACK(postive Acknowledgement : 정상 수신) 및 NAK(Negative Ackonwledgement : 비정상 수신 확인신호)를 기다려 데이터를 계속 전송할 것인지 아니면 재전송할 것인지를 결정하는 방식  

 

연속(continuous)방식

 

송신 도중에 수신측에서 NAK를 받았을 때 일정한 개수(N)의 코드단위를 재전송하는 방식

 

 

 

FEC(Forward Error Correction)

 

수신측에서 스스로 에러 검출 및 정정하는 방법으로 패리티 비트를 추가하거나 CRC(Cyclic Redundancy Check : 주기중복검사)코드를 추가하여 보내는 방식이다.