
4.3 순환 부호 (Cyclic Code)
개념
- Linear Block Code의 종속 부류로 보다 실용적인 구현을 가증하게 하는 순환 구조를 가지고 있음
- 장점
- 부호화가 쉬움
- 순방향 오류 정정(FEC, Forward Error Check) 시스템에서 사용되는 coding과 decoding가 shift register로 수행되는 cyclic code로 구성됨
- Cyclic code에서 한 code(임의의 cyclic)의 shift는 다른 code를 만들게 되므로, 다항식 형태의 수학적 표현이 사용
Theorem
기본 정의
- n bit의 coder는 다음과 같이 다항식으로 표현 됨
c(x)=cn−1xn−1+cn−2xn−2+⋯+c2x2+c1x+c0, 상수 ci(i=1,2,...,n) 은 0 또는 1의 값을 가짐
연산 과정
- Coder는 데이터 다항식 m(x)와 checksum 다항식 cp(x)의 함수로 표현
c(x)=m(x)xn−k+cp(x) - 여기서 checksum 다항식 cp(x)는 m(x)x(n-k)를 생성 다항식 g(x)로 나눈 나머지를 의미
cp(x)=rem[m(x)xn−kg(x)] - 오류 다항식을 e(x)라고 표현하면 수신 신호 다항식과 Syndrome 다항식 간의 관계는 다음과 같음
s(x)=rem[c(x)+e(x)g(x)] - 오류가 없는 경우 s(x) = 0 으로 계산 됨
- (n, k) code는 n - k의 linear feedback shift register를 이용하여 쉽게 생성 됨
- Syndrome s(x)도 동린한 linear feedback shift register을 통하여 생성 됨
예시
(7, 4)의 Cyclic code를 구하는 과정
m(x)와 g(x)는 다음과 같이 주어짐
- 다항식 cp(x)는 다음과 같이 구할 수 있음
- 이 경우 Cyclic code는 다음과 같이 구해짐
c(x)=m(x)+cp(x)=x5+x4+x3+x
문제
로 주어진 Cyclic code 시스템을 고려할 때 c(x)를 구하시오.
- 데이터 다항식 m(x)와 checksum 다항식 cp(x)는 아래와 같이 구해짐
m(x)xn−k=m(x)x4=x14+x12+x4 cp(x)=rem[m(x)x4g(x)] =rem[x14+x12+x4x4+x+x] =x2+1 - 따라서 c(x)를 구하는 식을 이용하면 아래와 같은 coder를 얻을 수 있음
'DAN lab. > DAN lab. Master's 1 Summer' 카테고리의 다른 글
04-05. Channel Coding and Error Control (1) | 2021.07.19 |
---|---|
04-04. Channel Coding and Error Control (0) | 2021.07.16 |
04-02. Channel Coding and Error Control (0) | 2021.07.15 |
04-01. Channel Coding and Error Control (0) | 2021.07.14 |
03-01. Mobile Radio Propagation (0) | 2021.07.12 |