ICIS 학부 연구생/통신시스템 설계

[ 통신시스템설계 ] 05-(1) ECC(Error Correcting Codes 역사 소개

hanol02 2023. 8. 3. 22:38

01.   1940 ~ 2000 (Shannon)

블럭코드, 컨벌루셔널 코드

 

1. 대수학적 블럭 코드의 발전

: 대수학적 블럭 코드를 잘 발전시키면 반드시 Shannon이 예측한 우수한 성능의 채널코드를 찾을 수 있다고 믿고 연구를 진행

ex. 해밍코드, RS코드 등

 

- RS 코드는 70년대 이후 우리가 접하는 거의 대부분의 디지털 기기에 사용되었었음

- 디지털 음악 CD의 음악 저장 방식, MP3의 음악파일 처리 기법 등에 사용됨

- 디지털 방송 기법에는 지금도 RS코드가 주요하게 사용됨

- RS 코드까지가 한계인 줄 알았으니 나중에는 LDPC 코드의 출현으로 완전히 새로운 상황을 맞이하게 됨

 

 

 

2. 컨벌루션 코드의 발전 (Convolutional Code)

- 컨벌루션 코드는 비터비 박사에 의해 처음 제안됨

- 70년대를 지나면서 통신위성의 통신시스템과 수많은 통신 시스템의 채널코딩 기법으로 사용하게 되었다

- 지금까지도 2세대와 3세대 디지털 이동전화기의 핵심 기술로 사용됨 (모든 핸드폰의 통신 방식)

 

 

Q. 샤논의 한계에 근접하는 코드는 컨벌루션 코드일까 선형블럭코드일까?

A. 컨벌루션이냐, 블럭코드이냐에 상관 없이 디코딩 방식이 무엇인지에 의해 결정됨!!

     그 디코딩 방식은 터보코드와 LDPC 코드에서 공통적으로 사용되는 확률적 반복 복호 방식이다.

 

 

 

 

 

 

 

02. 1990 ~ 2010

 터보코드, LDPC 코드

 

① 터보코드

- 터보코드는 샤논의 한계에 거의 완벽하게 근접한 결과임

- 매우 간단한 두 개의 컨벌루션 코드를 병렬로 연접한 결과. 두 개의 디코더가 서로의 결과를 주고받는 작업을 반복하는 방식

- 3세대에서 4세대로 넘어가는 디지털 이동전화기의 표준 방식으로 확정됨

- 와이브로 기술(현재 이동 인터넷의 표준 방식)에도 핵심적으로 사용되며, 4세대 전화기(LTE)에도 표준 방식으로 사용됨

 

② LDPC 코드

- 대수학적 블럭코드이지만 대수학적 디코딩 방식을 사용하지 않고 확률적 반복복호방식(터보코드의 디코딩 방식)을 사용한다

- 세밀하게 설계되면 터보코드보다도 더 좋은 성능을 가짐

- 인코딩/디코딩 과정이 복잡해서 실용적으로 적용되기 위한 많은 연구가 필요한 상태

 

 

 

 

 

03. 2000 ~ 현재

fountain 코드, raptor 코드, polar 코드 등

 

* Fountain code - LT code - Raptor code

- 일반 통신 채널 = BSC(이진대칭채널) : 0과 1이 바뀌어서 수신되는 오류가 발생

- 인터넷 유선 채널 = BEC(이진소거채널) : 0과 1이 바뀌어서 수신되는 오류는 발생하지 않지만 판단할 수 없는 엉뚱한 수신값이 수신됨 = 소거값

- 이동성이 있는 다양한 무선 네트워크 상에서의 응용성이 뛰어나서 최근 주목받고 있는 새로운 형태의 채널코딩 기법

 

 

 

 

04. 결론

: 채널코딩 분야의 연구 활동에는 두 가지 면이 존재함

 

① 이미 알려진 채널코드 중에서 적당한 기법을 골라서 주어진 조건을 충족하도록 시스템을 완성하는 작업

- 주어진 통신 시스템의 성능을 증가시키기 위함

- 오류 성능, 주파수 대역, 복잡도 등의 여러 조건을 충족해야 함

 

② 새로운 채널코드를 찾거나, 이미 알려진 채널코드의 새로운 성질을 밝혀내는 작업

- 기초적인 탐구 영역에 속하는 연구 활동 (순수연구)

- 성능(오류정정/주파수대역)과 복잡도 면에서 우수한 채널코드를 개발하여 다양한 특성을 분서하고 찾아내는 작업