Forward Error Correction : FEC

오영선·2022년 9월 21일
0
post-custom-banner

셀룰러 무선 통신 시스템에서 메세지는 BS와 MS사이 잡음이 섞인 매체를 통하여 전달되며 반사, 회절, 산란 현상이 신호의 품질을 떨어뜨림

-> 어떻게 무선 신호의 수신율을 개선할 수 있을까?
부가정보를 추가하여 원래의 메시지를 복원하자

  • 장점 : 비트오류율을 크게 줄일 수 있다.
  • 단점 : 원래메세지 m보다 더 많은 주파수 대역을 사용해야함.

FEC(Forward Error Correction, 전진 오류 수정)

데이터 전송 과정에서 발생한 오류를 검출하고 재전송 요구 없이 스스로 수정하는 기능

송신측에서 오류 검출을 위한 부가 정보(잉여데이터, r bit)를 추가해 전송하고, 수신측이 이 부가 정보를 이용해 오류를 발견하고 수정한다.

재전송 요구가 없어 역채널이 필요없고, 연속적인 데이터 흐름이 가능하다. 그러나 전송 효율이 떨어진다.

FEC Code의 종류

  • Block Code
    Linear code(hamming code) : 자기 정정부호
    Cyclic code(CRC code, BCH code)
  • Convolution Code
    - 부호화는 일정 길이의 Block단위로 이루어지는데, 각 Block에서의 부호화가 그 Block뿐만 아니라, 그 이전의 Block에도 의존하는 부호로 Tree 부호라고도 함

검출 방식

패리티 검사, CRC, 블록 합

n : 메세지를 보낼 전체 block 길이
r : party bit, error가 발생하면 검출하기 위한 잉여 데이터
k : 우리가 전송할 정보가 담긴 정보 block 길이를 k라고 한다.

이때 code word n = r+k이고, R = k/n(code rate)이다.

부호화를 위한 k개의 데이터 비트를 벡터 m이라고 한다.

m=(m_1, m_2, ... , m_3)

c는 상응하는 부호어(codeword)를 n비트 길이 벡터 c라고 한다.

c=(c_1, c_2, ... , c_k, c_{k+1}, ... , c_{n-1}, c_n)


여기 나온 matrix G는 다음과 같이 나타낸다.

I는 identity matrix, P = [x / g(x)] 로, parity matrix라고 한다.

같이 풀어보기
https://kimunderground.tistory.com/141

출처
http://itnovice1.blogspot.com/2019/09/fec.html
https://kimunderground.tistory.com/141

post-custom-banner

0개의 댓글