리드 솔로몬 부호
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
리드-솔로몬 부호는 통신 및 데이터 저장 시스템에서 오류 정정을 위해 사용되는 부호의 한 종류이다. 1960년 어빙 S. 리드와 구스타브 솔로몬에 의해 개발되었으며, 데이터 심볼과 중복 심볼로 구성된 부호어를 유한체 상의 다항식으로 표현하여 오류를 정정한다. 최대 거리 분리 부호(MDS)로, 버스트 오류에 강하며, CD, DVD, QR 코드, 위성 통신 등 다양한 분야에 응용된다. 복호화 과정은 신드롬 계산, 오류 위치 다항식 계산, 오류 값 계산, 오류 정정의 단계를 거치며, 버렐캠프-매시 알고리즘, 유클리드 알고리즘 등이 사용된다. 최근에는 리스트 복호 및 소프트 복호와 같은 발전된 복호 기술 연구도 진행되고 있다.
더 읽어볼만한 페이지
- 부호 이론 - 해밍 거리
해밍 거리는 길이가 같은 두 문자열에서 서로 다른 기호의 개수를 나타내는 거리 척도로, 아벨 군에서는 벡터의 해밍 무게를 영벡터와의 해밍 거리로 정의하며, 오류 검출, 수정 부호 이론, 정보 이론, 계통학 등에서 활용된다. - 부호 이론 - 선형 부호
선형 부호는 유한체 위의 벡터 공간의 부분 공간으로, 데이터 전송 및 오류 정정을 위해 사용되며, 길이, 차원, 최소 거리에 따라 표기되고, 부호어, 생성 행렬, 패리티 검사 행렬 등의 개념을 갖는다. - 오류 검출 정정 - 부호 이론
부호 이론은 정보를 효율적으로 표현하고 오류를 감지 및 수정하는 기술을 연구하며, 소스 부호화, 채널 부호화, 암호 부호화 등으로 발전하여 CD, 모뎀, 휴대폰 등 다양한 분야에 응용된다. - 오류 검출 정정 - 비터비 알고리즘
비터비 알고리즘은 잡음이 있는 통신 링크 상에서 길쌈 부호 해독에 사용되며, 확률과 관련된 극대화 문제에 동적 계획법을 적용하는 표준 용어로, 상태 기계를 기반으로 은닉 마르코프 모델에서 가장 가능성 높은 상태 시퀀스를 찾는 데 활용되어 통신, 자연어 처리, 생물정보학 등 다양한 분야에 적용되고 개선 방법이 연구되고 있다.
리드 솔로몬 부호 | |
---|---|
개요 | |
이름 | 리드-솔로몬 부호 |
영문명 | Reed–Solomon codes |
명명 유래 | 어빙 S. 리드와 구스타브 솔로몬 |
종류 | 선형 블록 부호 |
하위 종류 | 다항 부호 |
부호 정보 | |
블록 길이 | n |
메시지 길이 | k |
최소 거리 | n − k + 1 |
알파벳 크기 | q = pm ≥ n (p는 소수) 종종 n = q − 1 |
표기법 | '[n, k, n − k + 1]q-부호' |
복호화 | |
속성 | |
특징 | 최대 거리 분리 부호 |
2. 역사
1960년, 매사추세츠 공과대학교 링컨 연구소(MIT Lincoln Laboratory)의 연구원이었던 어빙 S. 리드(Irving S. Reed)와 구스타브 솔로몬(Gustave Solomon)이 "특정 유한체 위의 다항식 부호"라는 논문을 통해 리드-솔로몬 부호를 발표했다.[2] 같은 해, 다니엘 고렌스타인(Daniel Gorenstein)과 닐 지어러(Neal Zierler)는 BCH 부호에 대한 실용적인 고정 다항식 디코더를 개발했다.[3]
리드-솔로몬 부호는 데이터를 특정 크기의 덩어리로 묶어 처리하며, 이 덩어리를 심볼이라고 부른다. 하나의 심볼은 ''r'' 비트로 구성된다.
부호화는 다음과 같은 절차로 수행된다.
리드-솔로몬 부호의 복호 과정은 다음과 같다.
리드-솔로몬 부호는 데이터의 오류를 정정하는 데 널리 사용되는 기술이다. 특히, 연속적인 데이터 손상(버스트 오류)에 강한 특징을 가지고 있다.
1969년, 엘윈 버렐캠프(Elwyn Berlekamp)와 제임스 매시(James Massey)는 개선된 BCH 방식 디코더 (버렐캠프-매시 알고리즘(Berlekamp–Massey decoding algorithm))를 개발했다. 1975년, 야스오 스기야마(Yasuo Sugiyama)는 확장된 유클리드 알고리즘을 기반으로 또 다른 개선된 BCH 방식 디코더를 개발했다.[5]
1977년, 리드-솔로몬 부호는 보이저 계획에서 연접 오류 정정 부호 형태로 구현되었다. 1982년에는 콤팩트 디스크(CD)에 처음 상업적으로 적용되었다.
1986년, 버렐캠프-웰치 알고리즘(Berlekamp–Welch algorithm)으로 알려진 원래 방식의 디코더가 개발되었다. 1996년, 매두 수단(Madhu Sudan) 등은 리스트 디코더 또는 소프트 디코더라고 불리는 원래 방식 디코더의 변형을 개발했다. 2002년, 슈홍 가오(Shuhong Gao)는 확장된 유클리드 알고리즘을 기반으로 또 다른 원래 방식 디코더를 개발했다.[6]
3. 기본 원리
부호어: N개의 심볼로 구성되며, 전체 비트 수는 ''r'' × N이다. 부호어는 K개의 정보 심볼과 (N-K)개의 중복 심볼로 나뉜다.
유한체 (갈루아체): 리드-솔로몬 부호는 2''r''개의 원소를 갖는 유한체(갈루아체)를 사용한다. 각 심볼은 이 유한체의 원소에 대응된다. 유한체 연산의 예로, 덧셈은 XOR 연산을 사용하고, 곱셈은 원시 다항식을 사용하여 구현한다.
다항식 표현: 부호어는 심볼을 계수로 하는 (N-1)차 다항식으로 표현할 수 있다. 예를 들어, 8비트 심볼 A, B, C, D로 구성된 비트 열은 다음과 같은 다항식으로 표현된다.
:
심볼 변환: ''r'' 비트를 하나의 심볼로 묶고, 2''r''개의 원소를 갖는 갈루아체를 정의한다. ''r''차 원시 다항식을 선택하고 (예: r=8, ), 이 방정식의 근을 α라고 하면, α의 거듭제곱을 이용하여 각 비트 열에 대응시킨다.
생성 다항식: (N-K)차 다항식으로, 부호어 다항식을 생성하는 데 사용된다. 생성 다항식 ''G(x)''는 다음과 같이 표현된다.
: (b는 적당한 정수)
오류 정정 능력: (N-K)/2 = ''t''개의 심볼 오류를 정정할 수 있다. 즉, 최대 ''t''개의 심볼에 오류가 발생해도 원래 데이터를 복원할 수 있다.
4. 부호화 (Encoding)
먼저 보낼 정보 K × ''r'' 비트를 심볼화하여 K-1차 다항식을 생성하며, 이를 정보 다항식(''I(x)'')이라고 한다. 다음으로, 생성 다항식을 준비한다.
:
위 식에서 b는 적당한 정수이다.
예를 들어 b=0으로 2 심볼의 오류를 정정하는 부호를 생성하면, t=2가 되고, 생성 다항식은 다음과 같다.
:
정보 다항식과 생성 다항식을 사용하여 다음과 같은 연산을 수행한다.
:
단,
:
여기서 생성되는 C(x)에 대응하는 비트열이 전송되는 부호이다.
5. 복호화 (Decoding)
1. 오류 검출 및 신드롬 계산: 수신된 데이터에 오류가 있는지 확인하고, 오류가 있다면 신드롬을 계산한다. 신드롬은 다음과 같이 표현되는 2t개의 숫자이다.
::
2. 오류 심볼 수 검출: 신드롬을 이용하여 오류를 포함하는 심볼의 개수를 찾는다.
3. 오류 위치 검출: 오류 위치 다항식을 생성하여 오류가 있는 심볼의 위치를 찾는다. 오류 위치 다항식은 다음과 같다.
::
4. 오류 값 검출: 오류 위치와 신드롬을 이용하여 오류 값을 계산하고, 연립 일차 방정식을 사용하여 오류 값을 구한다.
5. 오류 정정: 오류 위치와 값을 이용하여 원래 데이터를 복원한다.
리드-솔로몬 부호의 복호 방법에는 피터슨법이나 유클리드법 등이 있다. 피터슨법은 처리가 단순하지만, 수정하는 심볼 수가 많을 때는 계산량이 증가하는 단점이 있다.
6. 응용 분야
7. 한국의 관점
리드-솔로몬 부호는 1960년에 개발되어 오류 정정 능력이 뛰어나 지상파 디지털 텔레비전 방송, 위성 통신 등 다양한 분야에 활용되고 있다. 특히 여러 비트를 하나의 덩어리로 처리하여 연속적인 비트 오류(버스트 오류)에 강한 특성을 보인다. 이러한 특징 덕분에 한국의 디지털 방송, 통신, 저장 매체 기술 발전에 중요한 역할을 해왔다.
유럽식 디지털 방송 표준인 DVB-S, DVB-S2 등에 리드-솔로몬 부호가 채택되어 한국에서도 널리 사용되고 있으며, 데이터의 안정성과 신뢰성이 중요해지는 4차 산업혁명 시대에 리드-솔로몬 부호의 활용은 더욱 확대될 것으로 예상된다.
8. 추가 설명
리드-솔로몬 부호는 1960년에 어빙 스토이 리드와 구스타브 솔로몬이 개발한 오류 정정 부호이다. 부호 생성과 복호화가 복잡하여 처리 속도가 요구되는 분야에서는 많이 사용되지 않지만, 오류 정정 능력이 높아 지상파 디지털 방송, 위성 통신, ADSL, DVTR, CD, DVD, BD, QR 코드의 오류 정정에 응용되고 있다.
부호 생성에는 갈루아체(유한체) 개념을 사용한다. 여러 비트를 하나의 덩어리(심볼 또는 워드)로 간주하고, 부호어를 심볼 집합으로 나타내어 각 심볼 단위로 오류를 검출하고 정정한다. 하나의 심볼 내 비트가 아무리 많은 오류를 포함하더라도 "1 심볼 오류"로 간주되므로, 연속적인 비트 오류(버스트 오류)에 강하다. 1 심볼의 비트 수는 보통 정해져 있지 않지만, 컴퓨터 사양상 8비트(1바이트)로 구현되는 시스템이 많다.
''r'' 비트 덩어리를 하나의 심볼로, N개 심볼( ''r'' × N 비트 배열)을 하나의 부호어로 한다. K개 심볼은 전송할 정보이고, (N-K)개 심볼은 부호화로 생성되는 중복 심볼이다. ''r'', N, K는 다음 조건을 만족한다.
(N-K)/2 = ''t'' 일 때, 리드-솔로몬 부호는 ''t''개까지의 심볼 오류를 정정할 수 있다.
리드-솔로몬 부호 복호화 방법에는 피터슨법이나 유클리드법 등이 있다.
8. 1. 최대 거리 분리 부호 (MDS 부호)
리드-솔로몬 부호는 싱글톤 한계(Singleton bound)를 만족하는 최대 거리 분리 부호(Maximum Distance Separable code, MDS code)이다.8. 2. 연접 부호 (Concatenated codes)
리드-솔로몬 부호는 보이저 계획에서 연접 오류 정정 부호 형태로 구현되었다.[4] 이는 컨볼루션 부호와 함께 사용되어 오류 정정 능력을 향상시키는 방식이다. 예를 들어, 디지털 비디오 방송(DVB) 표준 DVB-S에서 리드-솔로몬 부호는 컨볼루션 부호화 내부 부호와 함께 사용된다.[4]참조
[1]
간행물
1960
[2]
논문
A class of cyclic linear error-correcting codes in ''pm'' symbols
1961-06
[3]
서적
Error-Correcting Codes
MIT Press
1961
[4]
서적
Error Correcting Codes
"{{GBurl|5kfwlFeklx0[...]
MIT Press
1996
[5]
논문
A method for solving key equation for decoding Goppa codes
1975
[6]
간행물
New Algorithm For Decoding Reed-Solomon Codes
http://www.math.clem[...]
Clemson
2002-01
[7]
간행물
Reed–Solomon Codes and Their Applications
IEEE Press
[8]
서적
Reed Solomon Codes and Their Applications
IEEE Press
1994
[9]
논문
The development of turbo and LDPC codes for deep-space applications.
https://scholar.arch[...]
2007
[10]
간행물
1983
[11]
웹사이트
Analytical Expressions Used in bercoding and BERTool
https://www.mathwork[...]
2019-02-01
[12]
간행물
Kissing Numbers, Sphere Packings, and Some Unexpected Proofs
https://www.ams.org/[...]
2004-09
[13]
간행물
A class of cyclic linear error-correcting codes in p^m symbols
1961-06
[14]
서적
Error Correcting Codes
1961
[15]
간행물
Error Control Coding
1982
[16]
간행물
Improved decoding of Reed–Solomon codes and algebraic geometry codes
1999-09
[17]
서적
Proceedings of the 55th Annual ACM Symposium on Theory of Computing
Association for Computing Machinery
2023-06-02
[18]
서적
2023 IEEE 64th Annual Symposium on Foundations of Computer Science (FOCS)
2023
[19]
간행물
Randomly punctured Reed--Solomon codes achieve list-decoding capacity over linear-sized fields
2023-08-18
[20]
논문
Algebraic soft-decision decoding of Reed–Solomon codes
[21]
논문
Open Source Soft-Decision Decoder for the JT65 (63,12) Reed–Solomon Code
http://physics.princ[...]
2017-06-07
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com