KR100975696B1 - 통신 시스템에서 부호화 장치 및 방법 - Google Patents
통신 시스템에서 부호화 장치 및 방법 Download PDFInfo
- Publication number
- KR100975696B1 KR100975696B1 KR1020070033912A KR20070033912A KR100975696B1 KR 100975696 B1 KR100975696 B1 KR 100975696B1 KR 1020070033912 A KR1020070033912 A KR 1020070033912A KR 20070033912 A KR20070033912 A KR 20070033912A KR 100975696 B1 KR100975696 B1 KR 100975696B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- parity
- vectors
- exclusive
- generating
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
- H04L1/0043—Realisations of complexity reduction techniques, e.g. use of look-up tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 통신 시스템에서 부호화 방법 및 장치에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하며, 상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하고, 상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하는 제1패리티 부호어 벡터 생성부와, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성하는 제2패리티 부호어 벡터 생성부를 포함한다.
부호기, LDPC, 정보 부호어 벡터, 패리티 부호어 벡터
Description
도 1은 본 발명의 실시예에 따른 송신 장치의 구조를 도시한 도면,
도 2는 본 발명의 실시예에 따른 수신 장치의 구조를 도시한 도면,
도 3은 본 발명의 실시예에 따른 패리티 검사 행렬의 패리티 파트를 도시한 도면,
도 4는 본 발명의 다른 실시예에 따른 패리티 검사 행렬의 패리티 파트를 도시한 도면,
도 5는 본 발명의 실시예에 따른 나눗셈 회로를 도시한 도면,
도 6은 본 발명의 실시예에 따른 부호기의 구조를 도시한 도면,
도 7은 본 발명의 다른 실시예에 따른 부호기의 구조를 도시한 도면.
본 발명은 통신 시스템에 관한 것으로서, 특히 통신 시스템에서 부호화 방법 및 장치를 제공한다.
통신에서 가장 근본적인 문제는 채널(channel)을 통하여 얼마나 효율적이고 신뢰성 있게(reliably) 데이터(data)를 전송할 수 있느냐 하는 것이다. 최근에 활발하게 연구되고 있는 차세대 통신 시스템에서는 초기의 음성 위주의 서비스를 벗어나 영상, 무선 데이터 등의 다양한 정보를 처리하고 전송할 수 있는 고속 통신 시스템이 요구된다. 따라서 시스템에 적절한 채널 부호화 기법을 사용하여 시스템의 효율을 높이는 것이 필수적이다.
상기 통신 시스템에서 이와 같은 채널 부호화 방법의 하나로 저밀도 패리티 검사(LDPC: Low Density Parity Check, 이하 'LDPC'라 칭하기로 한다) 부호가 있다.
상기 LDPC 부호는 터보 부호보다 우수한 성능, 낮은 복호 복잡도, 고속 처리가 가능하기 때문에 4세대 이동 통신 시스템에 적합한 부호화 방식으로 많은 관심을 받고 있다.
LDPC부호는 1962년 Gallager에 의해 처음 제안되었으며, 패리티 검사 행렬(Parity Check Matrix) H의 원소들의 대부분이 '0'인 선형 블록 부호(Linear block code)로서 당시의 기술력으로는 구현이 불가능한 부호 복잡도로 인해 잊혀져 왔다. 그러나 Mackay와 Neal은 이를 재발견하였고, Gallager의 간단한 확률적(Prababilistic) 복호법을 이용하여 성능이 매우 우수함을 보였다.
또한, 상기 LDPC 부호는 대부분의 엘리먼트들이 0의 값을 가지며, 상기 0의 값을 가지는 엘리먼트들 이외의 극히 소수의 엘리먼트들이 1의 값을 가지는 패리티 검사 행렬에 의해 정의된다. 즉, 상기 LDPC 부호의 패리티 검사 행렬은 매우 적은 개수의 무게(weight)들을 가지게 되며, 비교적 긴 길이를 가지는 블록 부호(block code)에서도 반복 복호를 통해 복호가 가능하며, 블록 부호의 블록 길이를 계속 증가시켜가면 섀넌(Shannon)의 채널 용량 한계에 근접하는 형태의 성능을 나타낸다. 하지만, 이와 같은 LDPC 부호 구현에 있어서 장애가 되는 요소 중 하나는 부호화 복잡도이다. 상기 부호화는 행렬 곱셈에 의해 수행되며, 부호 길이의 자승으로 복잡도를 증가시키게 된다는 문제점이 있었다.
따라서, 본 발명은 통신 시스템에서 부호화 방법 및 장치를 제공한다.
또한 본 발명은 부호화 복잡도를 감소하는 부호화 방법 및 장치를 제공한다.
본 발명의 장치는, 통신 시스템에서 부호화 장치에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하며, 상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하고, 상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하는 제1패리티 부호어 벡터 생성부와, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성하는 제2패리티 부호어 벡터 생성부를 포함하는 부호화 장치를 포함한다.
본 발명의 다른 장치는, 통신 시스템에서 부호화 장치에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하고, 상기 제1벡터를 제1배타적 논리합 연산기와 제2배타적 논리합 연산기로 출력하는 제1곱셈기와, 상기 제1배타적 논리합 연산기로부터 출력되는 제3벡터를 순환 이동하여 제2벡터를 생성하고, 상기 제2벡터를 제1스위치와 제2스위치로 출력하는 제1천이 레지스터와, 제1시간 구간들에서 0(zero) 벡터를 선택하고, 제2시간 구간들에서 상기 제2벡터를 선택하여, 상기 제1배타적 논리합 연산기로 출력하는 상기 제1스위치와, 상기 제1벡터와 상기 제1스위치로부터 출력되는 벡터를 배타적 논리합 연산하여 제3벡터를 생성하고, 상기 제3벡터를 상기 제1천이 레지스터로 출력하는 상기 제1배타적 논리합 연산기와, 상기 제1시간 구간들에서 상기 제2벡터를 제1패리티 부호어 벡터로서 제2곱셈기로 출력하는 상기 제2스위치와, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제4벡터를 상기 제2배타적 논리합 연산기로 출력하는 상기 제2곱셈기와, 상기 제2배타적 논리합 연산기로부터 출력되는 제6벡터를 순환 이동하여 제2패리티 부호어 벡터인 제5벡터를 생성하고, 상기 제5벡터를 제3스위치로 출력하는 제2천이 레지스터와, 상기 제1시간 구간들에서 0 벡터를 선택하고, 상기 제2시간 구간들에서 상기 제5벡터를 선택하여, 상기 제2배타적 논리합 연산기로 출력하는 상기 제3스위치와, 상기 제1벡터와 상기 제3벡터 및 상기 제4벡터를 배타적 논리합 연산하여 제6벡터를 생성하고, 상기 제6벡터를 상기 제2천이 레지스터로 출력하는 상기 제2배타적 논리합 연산기를 포함한다.
본 발명의 방법은, 통신 시스템에서 부호화 방법에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하며, 상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하고, 상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하며, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하며, 상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성함을 특징으로 한다.
본 발명의 다른 방법은, 통신 시스템에서 부호화 방법에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 제1배타적 논리합 연산기로부터 출력되는 제3벡터를 순환 이동하여 제2벡터를 생성하고, 제1시간 구간들에서 0(zero) 벡터를 선택하고, 제2시간 구간들에서 상기 제2벡터를 선택하며, 상기 제1배타적 논리합 연산기를 이용하여 상기 제1벡터와 상기 선택된 벡터를 배타적 논리합 연산함으로써 제3벡터를 생성하고, 상기 제1시간 구간들에서 상기 제2벡터를 제1패리티 부호어 벡터로서 출력하며, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제1벡터와 상기 제3벡터 및 상기 제4벡터를 배타적 논리합 연산하여 제6벡터를 생성하며, 상기 제6벡터를 순환 이동하여 제2패리티 부호어 벡터인 제5벡터를 생성하고, 상기 제1시간 구간들에서 0 벡터를 선택하고, 상기 제2시간 구간들에서 상기 제5벡터를 선택함을 특징으로 한다.
본 발명의 방법은, 통신 시스템에서 부호화 방법에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하며, 상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하고, 상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하며, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하며, 상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성함을 특징으로 한다.
본 발명의 다른 방법은, 통신 시스템에서 부호화 방법에 있어서, 입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 제1배타적 논리합 연산기로부터 출력되는 제3벡터를 순환 이동하여 제2벡터를 생성하고, 제1시간 구간들에서 0(zero) 벡터를 선택하고, 제2시간 구간들에서 상기 제2벡터를 선택하며, 상기 제1배타적 논리합 연산기를 이용하여 상기 제1벡터와 상기 선택된 벡터를 배타적 논리합 연산함으로써 제3벡터를 생성하고, 상기 제1시간 구간들에서 상기 제2벡터를 제1패리티 부호어 벡터로서 출력하며, 상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제1벡터와 상기 제3벡터 및 상기 제4벡터를 배타적 논리합 연산하여 제6벡터를 생성하며, 상기 제6벡터를 순환 이동하여 제2패리티 부호어 벡터인 제5벡터를 생성하고, 상기 제1시간 구간들에서 0 벡터를 선택하고, 상기 제2시간 구간들에서 상기 제5벡터를 선택함을 특징으로 한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
본 발명은 통신 시스템에서 부호화 복잡도를 감소하는 부호화 장치를 제공한다.
상기 본 발명에서 제안하는 부호화 장치는 블록 부호(block code)에 적용 가능하다. 예를 들어, 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호에 적용 가능하다. 본 발명에서 제안된 부호화 장치를 구현하기 위해 본 발명에서는 천이 레지스터(shift register)를 사용한다.
또한, 본 발명에서 제안된 부호화 장치는 패리티 검사 행렬의 패리티 부분에 차수(degree)가 2 이상인 열(column)들을 포함하는 경우에도 적용할 수 있다.
그러면 다음으로 본 발명에 따른 송신 장치와 수신 장치의 구조를 살펴보기로 한다.
도 1은 본 발명의 실시예에 따른 송신 장치의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명의 송신 장치는 부호기(encoder)(111), 변조기(modulator)(113), 송신기(transmitter)(115)를 포함한다.
상기 신호 송신 장치에서 송신하고자 하는 정보 벡터가 발생되면, 상기 정보 벡터는 상기 부호화기(111)로 전달된다. 상기 부호화기(111)는 상기 정보 벡터를 미리 설정되어 있는 부호화 방식으로 부호화하여 최종 LDPC 부호어 벡터로 생성한 후 상기 변조기(113)로 출력한다. 또한, 본 발명에 따른 상기 부호기의 구조는 하기에서 상세히 설명하기로 하며, 여기서는 그 상세한 설명을 생략하기로 한다.
상기 변조기(113)는 상기 LDPC 부호어 벡터를 미리 설정되어 있는 변조 방식 으로 변조하여 변조 벡터로 생성하여 상기 송신기(115)로 출력한다. 상기 송신기(115)는 상기 변조기(113)에서 출력한 변조 벡터를 입력하여 송신 신호 처리한 후 안테나를 통해 신호 수신 장치로 송신한다.
도 2는 본 발명의 실시예에 따른 수신 장치의 구조를 도시한 도면이다.
도 2를 참조하면, 본 발명의 수신 장치는 수신기(receiver)(211), 복조기(demodulator)(213), 복호기(decoder)(215)를 포함한다.
상기 신호 수신 장치에 대응하여 상기 신호 송신 장치에서 송신한 신호는 상기 신호 수신 장치의 안테나를 통해 수신되고, 상기 안테나를 통해 수신된 신호는 상기 수신기(211)로 전달된다.
상기 수신기(211)는 상기 안테나를 통해 수신된 신호를 수신 신호 처리한 후 상기 복조기(213)로 출력한다.
상기 복조기(213)는 상기 수신기(211)에서 출력한 신호를 입력하여 상기 신호 송신 장치의 변조기(113)에서 적용한 변조 방식에 상응하는 복조 방식으로 복조한 후 상기 복호기(215)로 출력한다.
상기 복호기(215)는 상기 복조기(213)에서 출력한 신호를 입력하여 상기 신호 송신 장치의 부호기(111)에서 적용한 부호화 방식에 상응하는 복호 한 후 그 복호한 신호를 복원된 정보 벡터로 출력한다.
한편, 상기 송신 장치와 상기 수신 장치가 암호화 방식을 추가로 적용하는 경우에는 송신 장치의 부호기에 암호기(encryption module)를 추가하여 암호화된 신호를 송신할 수 있고, 이에 상응한 수신 장치의 복호기는 판독기(descryption module)를 추가하여 암호화된 신호를 상기 암호화에 상응하는 판독을 하여 수신할 수 있다.
본 발명에 따른 패리티 검사 행렬(parity check matrix), H를 하기의 수학식 1에 나타내었다.
상기 패리티 검사 행렬은 정보 파트(information part)와 패리티 파트(parity part)를 포함한다. 상기 은 정보 파트이고, 상기 은 제 1 패리티 파트이고 상기 는 제 2 패리티 파트이다. 상기 은 메시지 파트(message part) 또는 시스터매틱 파트(systematic part)라고도 칭하며, 정보 벡터(information vector)를 LDPC 부호어 벡터로 생성할 경우 상기 정보 벡터에 매핑되는 패리티 검사 행렬의 파트를 나타낸다. 상기 제 1 패리티 파트는 제 1 패리티 벡터(parity vector)에 매핑되는 패리티 검사 행렬의 파트이고, 상기 제 2 패리티 파트는 제 2 패리티 벡터에 매핑되는 패리티 검사 행렬의 파트를 나타낸다. 상기 제 1 패리티 파트는 열 무게(column weight)가 3인 열들로 이루어진 부분행렬이며, 상기 제 2 패리티 파트는 열 무게가 2인 열들로 이루어진 부분행렬을 나타낸다.
본 발명의 부호기는 LDPC 부호를 포함한 모든 블록 부호를 부호화하며, 상기 부호기에서 사용되는 패리티 검사 행렬의 패리티 파트는 하기의 조건을 만족한다.
1. 제 1 패리티 파트는 각 행의 행 무게(row weight)가 1보다 작거나 같아야 한다.
2. 제 2 패리티 파트는 하삼각 행렬(lower triangular matrix)의 형태를 가지고 있어야 한다.
다음으로 본 발명의 실시예에 따른 상기한 두 가지 조건을 만족하는 제 1 패리티 파트와 제 2 패리티 파트를 하기의 도 3과 도 4를 참조하여 설명하기로 한다.
도 3은 본 발명의 실시예에 따른 패리티 검사 행렬의 패리티 파트를 도시한 도면이다.
도 3은 본 발명의 실시예에 따른 패리티 검사 행렬의 패리티 파트를 도시한 도면이다.
삭제
도 3을 참조하면, 제 1 패리티 파트 각 행의 행 무게는 1보다 작거나 같으며, 제 2 패리티 파트는 하삼각 행렬의 형태이다. 상기 패리티 파트들은 상기 조건을 모두 만족한다.
도 4는 본 발명의 다른 실시예에 따른 패리티 검사 행렬의 패리티 파트를 도시한 도면이다.
도 4를 참조하면, 제 1 패리티 파트 각 행의 행 무게는 1보다 작거나 같으며, 제 2 패리티 파트는 하삼각 행렬의 형태이다. 상기 패리티 파트들은 상기 조건을 모두 만족한다.
도 3과 도 4의 패리티 파트들에서 차수가 3인 열의 개수를 L이라 하고, 총 패리티 심볼의 개수를 M이라고 하면, 제 1 패리티 파트는 M X L 행렬이 되고, 제 2 패리티 파트는 M X (M - L) 행렬이 된다. 다음으로 부호어 벡터, c를 하기의 수학식 2에 나타내었다.
상기 부호어 벡터는 정보 부호어 벡터, 즉 정보 심볼과 패리티 부호어 벡터 즉, 패리티 심볼을 포함한다. 상기 c는 부호어 벡터이고, 상기 은 정보 부호어 벡터이고, 상기 은 제 1 패리티 심볼이고, 상기 는 패리티 부호어 벡터이다. 상기 제 1 패리티 부호어 벡터는 차수가 3인 열이고, 상기 제 2 패리티 부호어 벡터는 차수가 2인 패리티 열이다.
다음으로 블록 부호의 특성으로 인해 패리티 검사 행렬과 부호어 벡터 간의 관계를 하기의 수학식 3에 나타내었다.
수학식 4에서 의 열 웨이트(column weight)가 2이므로, 는 의 j번째 행이라고 할 때, 을 만족하는 몇 개의 행을 선택하는 것이 가능하다. 이러한 행들의 집합을 ()라 정의하면, 하기의 수학식 5가 성립한다.
또한, 상기 에서 3개의 원소(element)를 선택한 집합을 ()라 하면, 의 열 무게는 3이고 행 무게는 1보다 작거나 같으므로 의 열에서 1인 요소를 로 선택한다. 를 의 i번째 원소()하면, 상기 는 하기의 수학식 6에 나타내었다.
상기 수학식 7과 상기 수학식 8에서 는 i번째 행이고, 1의 위치에 해당한다. 또한, 상기 수학식 8은 상기 수학식 4를 적용하여 획득한 결과이다. 도 4에서 1, 2, 3, 4 행의 합을 살펴보면, 이를 확인할 수 있다.
따라서, 상기 을 획득하면, 상기 는 슬라이딩 윈도우(sliding window) 방식 또는 백워드 치환(backward substitution) 방식을 사용하여 획득할 수 있다. 본 발명에서는 일예로, 슬라이딩 윈도우 방식을 이용한 시변환 나눗셈 회로를 사용하였다.
블록 부호의 일종인 순환부호는 나눗셈 회로를 통해 구현할 수 있으며, 이와 같은 나눗셈 회로를 하기의 도 5에 나타내었다.
도 5는 본 발명의 실시예에 따른 나눗셈 회로를 도시한 도면이다.
도 5를 참조하면, 나눗셈 회로는 배타적 논리합(XOR: eXclusive OR, 이하 'XOR'라 칭하기로 한다) 연산기들(511, 541, 543, 545), 천이 레지스터(shift register)들(521, 523, 525) 및 곱셈기들(531, 533, 535)을 포함한다.
상기 제 1 XOR 연산기(511)는 벡터 s와 제 2 XOR 연산기(541)에서 출력되는 신호를 XOR 연산하여 제 1 XOR 연산 신호를 출력한다. 상기 벡터 s는 패리티 검사 행렬의 정보 파트의 전치 행렬과 입력된 정보 벡터를 곱한 벡터이고, 내지 로 나타낼 수 있다.
상기 제 1 천이 레지스터(521)는 상기 제 1 XOR 연산 신호를 순차적으로 순환 이동하여 제 2 천이 레지스터(523)로 출력한다.
상기 제 1 천이 레지스터(521)는 상기 제 1 XOR 연산 신호를 순차적으로 순환 이동하여 제 2 천이 레지스터(523)로 출력한다.
즉, 상기 제 1 천이 레지스터(521)는 상기 제 2 천이 레지스터(523)로 입력되며, 각 천이 레지스터의 출력은 다음에 위치한 각 천이 레지스터로 입력된다. 그리하여, 각 천이 레지스터들의 출력은 제 w 천이 레지스터(525)까지 순차적으로 출력된다.
상기 천이 레지스터들(521, 523, 525)은 입력되는 상기 제 1 XOR 신호를 순차적으로 각각 순환 이동한다. 그리고, 상기 제 w 천이 레지스터(525)는 패리티 벡터들을 출력한다.
또한, 상기 제 1 천이 레지스터(521) 내지 상기 제 w 레지스터(525)는 순환 이동된 각각의 제 1 XOR 신호들을 제 1 곱셈기(531) 내지 제 w 곱셈기(535) 각각으로 출력한다.
상기 제 1 곱셈기(531) 내지 상기 제 w 곱셈기(535)는 상기 순환 이동된 각각의 제 1 XOR 신호들에 가중치 인자 즉, 내지 를 각각 곱하여 가중치 인자 곱셈 신호들을 생성한다. 상기 가중치 인자는 도 5의 나눗셈 회로를 다항식으로 구성하는 경우 생성 다항식의 계수가 된다. 이에 상기 제 1 곱셈기(531)는 가중치 계수 , 제 2 곱셈기(533)는 가중치 계수 , 제 w 곱셈기(535)는 가중치 계수 를 곱한다.
상기 가중치 인자 곱셈 신호들은 제 2 XOR 연산기(541) 내지 제 w+1 XOR 연산기(545) 각각으로 출력되며, 각 XOR 연산기(541, 542, 545)는 XOR 연산을 수행한 값을 상기 제 1 XOR 연산기(511)로 출력한다.
이때 상기 제 w+1 XOR 연산기(545)는 상기 제 w 곱셈기(535)의 출력을 XOR 연산하여 제 w XOR 연산기(543)로 출력한다. 상기 제 w XOR 연산기(543)는 상기 제 w-1 곱셈기(미도시)와 상기 제 w+1 XOR 연산기(535)의 출력을 입력받고, XOR 연산을 수행하여 상기 제 2 XOR 연산기(541)로 출력한다. 상기 제 2 XOR 연산기(541)는 상기 제 1 곱셈기(531)와 상기 제 w XOR 연산기(543)의 출력을 입력받고, XOR 연산을 수행하여 상기 제 1 XOR 연산기(511)로 출력한다.
상기 XOR 연산기들(511, 541, 543, 545)의 XOR 연산 동작은 일예로, 입력되는 정보 비트들이 같은 값을 갖는 경우 비트 '0'을 출력하고, 정보 비트들이 다른 값을 가지면 비트 '1'을 출력하는 XOR 연산을 수행한다.
또한, 도 5의 나눗셈 회로는 다항식으로 구성하는 것이 가능하며, 상기 다항식을 생성다항식이라 칭한다. 상기 생성 다항식을 라 가정하면, 상기 생성 다항식은 하기의 수학식 9에 나타내었다.
수학식 9에서 상기 생성 다항식의 계수 는 천이 레지스터들과 XOR 연산기 사이의 곱셈기들을 통해 연산된다. 이에 따라서, 본 발명의 부호기는 생성 다항식으로 나타낼 수 있는 나눗셈 회로를 사용하여 구현할 수 있으며, 상기 생성 다항식의 계수는 시간에 따라 변화(time-varying)할 수 있다. 따라서, 상기 나눗셈 회로는 일예로 시간 변환 나눗셈 동작을 수행하는 시간 변환 나눗셈 회로가 될 수 있다. 본 발명에서 시간 변환하는 계수 즉, 다항식의 계수는 일예로, 패리티 검사 행렬의 패리티 파트를 사용하여 획득한다.
그러면, 다음으로 본 발명의 실시예에 따른 부호기의 구조를 하기에 도 6과 도 7을 참조하여 살펴보기로 한다.
도 6은 본 발명의 실시예에 따른 부호기의 구조를 도시한 도면이다.
상기 행렬곱 계산부는 곱셈기(611)를 포함하고, 상기 제 1 패리티 부호어 벡터 생성부는 역다중화기(demultiplexer)(613), 제 1 XOR 연산기(615) 내지 제 L XOR(617) 연산기, 제 1 천이 레지스터(619) 내지 제 L 천이 레지스터(621), 다중화 기(multiplexer)(623), 모듈로 카운터(625)를 포함하고, 상기 제 2 패리티 부호어 벡터 생성부는 제 2 곱셈기(631), 제 1 버퍼(627), 제 2 버퍼(629), 제 1 XOR 연산기(623), 제 1 천이 레지스터(635) 내지 제 w 천이 레지스터(639), 제 3 곱셈기(641) 내지 제 w 곱셈기(645), 제 2 XOR 연산기(647) 내지 제 w+1 XOR 연산기(651)를 포함한다.
여기서 상기 제 1 패리티 부호어 벡터 생성부와 상기 제 2 패리티 부호어 벡터 생성부의 XOR 연산기들과 천이 레지스터들의 명칭은 각 패리티 부호어 벡터 생성부의 구조에서 설명의 편의를 위하여 동일하게 기재한 것으로 하기에서는 식별 부호를 통해 구분하기로 한다.
상기 정보 부호어 벡터 생성부는 상기 부호기에 입력되는 정보 벡터를 정보 부호어 벡터(m)로 사용한다.
상기 행렬곱 계산부의 곱셈기(611)는 입력되는 정보 벡터(m)를 정보 파트의 전치(transpose) 행렬()을 곱하여 생성한 벡터( 내지 )를 상기 제 1 패리티 부호어 벡터 생성부의 역다중화기(613)와 상기 제 2 패리티 부호어 벡터 생성부의 제 1 버퍼(627)로 출력한다.
상기 제 1 패리티 부호어 벡터 생성부의 동작을 살펴보기로 한다. 상기 모듈로 카운터(623)는 상기 역다중화기(613)에서 신호를 역다중화 하기 위한 선택 신호 또는 상기 다중화기(623)에 입력되는 신호를 다중화하기 위한 선택 신호를 제공한다. 또한, 상기 모듈로 카운터(623)는 상기 XOR 연산기들 또는 천이 레지스터들의 개수에 해당하는 개수 일예로, L 개의 선택 신호를 출력한다.
상기 역다중화기(613)는 입력되는 정보 벡터와 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱한 벡터를 입력받고, 입력받은 상기 벡터를 상기 모듈로 카운터(623)의 선택 신호를 사용하여 역다중화하고, 상기 역다중화된 각각의 벡터를 상기 제 1 XOR 연산기(615) 내지는 제 L XOR 연산기(617)로 출력한다.
상기 제 1 XOR 연산기(615) 내지 제 L XOR 연산기(617)는 상기 제 1 천이 레지스터(615) 내지 상기 제 L 천이 레지스터(619) 각각의 출력 신호를 각각 피드백받고, 상기 역다중화기(613)의 출력 벡터를 수신하여 XOR 연산을 수행한다. 그리고, 상기 제 1 XOR 연산기(615) 내지 제 L XOR 연산기(617)의 출력은 각각 상기 제 1 천이 레지스터(615) 내지 상기 제 L 천이 레지스터(619)로 입력된다.
상기 제 1 천이 레지스터(615) 내지 상기 제 L 천이 레지스터(619)는 입력되는 신호를 순환 이동하여 상기 다중화기(623)로 각각 출력한다.
상기 다중화기(623)는 상기 모듈로 카운터(625)에서 출력되는 선택 신호를 사용하여 상기 다중화기에 입력되는 신호를 다중화하여 제 1 패리티 부호어 벡터를 생성한다.
다음으로, 상기 제 2 패리티 부호어 벡터 생성부의 동작을 살펴보기로 한다. 상기 제 2 곱셈기(631)는 상기 다중화기(623)에서 출력되는 제 1 패리티 부호어 벡터에 제 1 패리티 파트의 전치 행렬()을 곱하여 상기 제 2 버퍼(629)로 출력한다. 상기 제 2 버퍼(629)는 상기 곱셈기(631)에서 출력되는 벡터를 저장하고, 상기 저장된 벡터를 상기 제 1 XOR 연산기(623)로 출력한다.
상기 제 1 버퍼(627)와 상기 제 2 버퍼(629)의 출력 신호는 도 5에서 설명한 나눗셈 회로와 유사한 나눗셈 회로에 입력 즉, 상기 제 1 XOR 연산기(623)로 입력된다.
이에 상기 제 1 XOR 연산기(623)에서는 입력되는 신호를 XOR 연산을 수행한다.
상기 제 1 XOR 연산기(623)는 상기 제 1 버퍼(627), 상기 제 2 버퍼(629), 상기 제 2 XOR 연산기(647)의 출력을 입력받아 XOR 연산을 수행하고, 상기 XOR 연산을 수행한 결과 값을 상기 제 1 천이 레지스터(635)로 출력한다.
상기 제 1 천이 레지스터(635)의 출력은 상기 제 2 천이 레지스터(637)로 입력되며, 각 천이 레지스터의 출력은 다음에 위치한 각 천이 레지스터로 입력된다. 그리하여, 각 천이 레지스터들의 출력은 제 w 천이 레지스터(639)까지 순차적으로 출력된다.
상기 천이 레지스터들(635, 637, 639)은 입력되는 상기 제 1 XOR 연산기(623)의 출력을 순차적으로 각각 순환 이동한다. 그리고, 상기 제 w 천이 레 지스터(639)는 제 2 패리티 부호어 벡터를 출력한다.
또한, 상기 제 1 천이 레지스터(635) 내지 상기 제 w 레지스터(639)의 출력은 각각 제 1 곱셈기(641) 내지 제 w 곱셈기(645) 각각으로 입력된다.
상기 제 1 곱셈기(641) 내지 상기 제 w 곱셈기(645)는 상기 천이 레지스터들(635, 637, 639)의 출력들에 가중치 인자 즉, 내지 를 각각 곱한다. 상기 가중치 인자는 나눗셈 회로를 다항식으로 구성하는 경우 생성 다항식의 계수가 된다. 이에 상기 제 1 곱셈기(641)는 가중치 계수 , 제 2 곱셈기(643)는 가중치 계수 , 제 w 곱셈기(645)는 가중치 계수 를 곱한다.
상기 곱셈기들(641, 643, 645)의 출력은 제 2 XOR 연산기(647) 내지 제 w+1 XOR 연산기(651) 각각으로 출력되며, 각 XOR 연산기(647, 649, 651)는 XOR 연산을 수행한 값을 상기 제 1 XOR 연산기(623)로 출력한다.
이때 상기 제 w+1 XOR 연산기(651)는 상기 제 w 곱셈기(645)의 출력을 XOR 연산하여 제 w XOR 연산기(649)로 출력한다. 상기 제 w XOR 연산기(649)는 상기 제 w-1 곱셈기(미도시)와 상기 제 w+1 XOR 연산기(651)의 출력을 입력받고, XOR 연산을 수행하여 상기 제 2 XOR 연산기(647)로 출력한다. 상기 제 2 XOR 연산기(647)는 상기 제 1 곱셈기(641)와 상기 제 w XOR 연산기(649)의 출력을 입력받고, XOR 연산을 수행하여 상기 제 1 XOR 연산기(623)로 출력한다.
상기 XOR 연산기들(615, 617, 623, 647, 649, 651)의 XOR 연산 동작은 일예 로, 입력되는 정보 비트들이 같은 값을 갖는 경우 비트 '0'을 출력하고, 정보 비트들이 다른 값을 가지면 비트 '1'을 출력하는 XOR 연산을 수행한다.
도 6의 부호기 구조를 사용하여 입력되는 정보 비트를 정보 부호어 벡터, 패리티 부호어 벡터를 포함하는 부호어 벡터를 생성하는 부호화를 수행하는 것이 가능하다.
도 7은 본 발명의 다른 실시예에 따른 부호기의 구조를 도시한 도면이다.
상기 행렬곱 계산부는 제 1 곱셈기(711)를 포함하고, 상기 제 1 패리티 부호어 벡터 생성부는 제 1 XOR 연산기(713), 제 1 천이 레지스터(715), 제 1 스위치(719), 제 2 스위치(721)를 포함하고, 상기 제 2 패리티 부호어 벡터 생성부는 제 2 곱셈기(727), 제 1 버퍼(723), 제 2 버퍼(725), 제 2 XOR 연산기(729), 제 2 천이 레지스터(731), 제 3 스위치(733)를 포함한다.
상기 행렬곱 계산부의 곱셈기(711)는 입력되는 정보 벡터(m)을 패리티 검사 행렬의 정보 파트()에 대한 전치 행렬()을 곱하여 생성한 벡터( 내지 )를 상기 제 1 패리티 부호어 벡터 생성부의 제 1 XOR 연산기(713)와 상기 제 2 패리티 부호어 벡터 생성부의 제 1 버퍼(723)로 출력한다.
상기 정보 부호어 벡터 생성부는 정보 벡터를 정보 부호어 벡터(m)으로 사용한다.
상기 제 1 패리티 부호어 벡터 생성부의 동작을 살펴보기로 한다. 상기 제 1 XOR 연산기(713)는 입력되는 신호를 상기 제 1 천이 레지스터(715)로 출력한다. 그리고, 상기 제 1 XOR 연산기(713)는 상기 제 1 천이 레지스터(715)의 출력을 피드백받고, 상기 제 1 XOR 연산기(713)에 입력되는 신호와 XOR 연산을 수행한다.
상기 제 1 천이 레지스터(715)의 출력이 상기 제 1 XOR 연산기(713)에 입력되는 경우에는 제 1 스위치(719)를 구성하여 각 시간에 따라 '0(zero)'신호 또는 상기 제 1 천이 레지스터(715)의 피드백 신호를 스위칭한다. 여기서 상기 '0'신호는 일예로, 상기 제 1 스위치(719)에 연결된 '0'신호 또는 0 삽입기(미도시) 등을 통해 구현할 수 있다.
다음으로, 상기 제 2 패리티 부호어 벡터 생성부의 동작을 살펴보기로 한다. 상기 제 2 곱셈기(727)는 상기 다중화기(725)에서 출력되는 제 1 패리티 부호어 벡터를 제 1 패리티 파트()의 전치 행렬()을 곱하여 상기 제 2 버퍼(723)로 출력한다. 상기 제 2 버퍼(725)는 상기 곱셈기(727)에서 출력되는 벡터를 저장하고, 상기 저장된 벡터를 상기 제 2 XOR 연산기(729)로 출력한다.
상기 제 1 버퍼(723)과 상기 제 2 버퍼(725)의 출력 신호는 상기 제 2 XOR 연산기(729)로 입력된다.
상기 제 2 XOR 연산기(729)는 입력되는 신호를 상기 제 2 천이 레지스터(731)로 출력한다. 그리고, 상기 제 2 XOR 연산기(729)는 상기 제 2 천이 레지스터(731)의 출력을 피드백받고, 상기 제 2 XOR 연산기(729)에 입력되는 신호와 XOR 연산을 수행한다.
상기 제 2 천이 레지스터(731)의 출력이 상기 제 2 XOR 연산기(729)에 입력되는 경우에는 제 3 스위치(733)를 구성하여 각 시간에 따라 '0(zero)'신호 또는 상기 제 2 천이 레지스터(731)의 피드백 신호를 스위칭한다. 여기서 상기 '0'신호는 일예로, 상기 제 3 스위치(733)에 연결된 '0'신호 또는 0 삽입기(미도시) 등을 통해 구현할 수 있다.
여기서 상기 제 1 패리티 부호어 벡터 연산기 또는 상기 제 2 패리티 부호어 벡터 연산기는 일예로, 상술한 바와 같은 차등 부호화를 수행하는 차등 부호기(differential endcoder)를 이용할 수 있으며, 주기적으로 레지스터를 리셋 시켜주는 기능을 필요로 하게 된다. 상기 차등 부호기는 XOR 연산기, 레지스터, 스위치를 포함한다.
도 6과 도 7에서 부호화를 통해 생성된 코드워드(c)는 정보 부호화 벡터(m), 제 1 패리티 파트 부호어 벡터(), 제 2 패리티 부호어 벡터()를 포함한다. 일예로, 상기 제 1 패리티 파트 부호어 벡터는 열의 무게가 3이며, 상기 제 2 패리티 파트 부호어 벡터는 열의 무게가 2이다. M은 패리티 심볼들의 개수를 나타내고, w는 윈도우 크기를 나타내고, L은 열의 무게가 3인 패리티 파트의 수를 나타낸다.
본 발명의 부호기를 사용하면 패리티 파트의 차수가 3 이상 열들을 포함하는 패리티 검사 행렬을 사용한 부호화가 가능하다.
한편, 상기 부호기에 상응하는 복호기에서는 상기 부호화에 사용한 패리티 검사 행렬을 사용하여 복호화를 수행하면, 상기 부호기에서 부호화한 정보 벡터를 복원할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같은 본 발명은, 통신 시스템에서 부호화 장치를 제안하여 부호기를 구현하는 경우 부호화 복잡도가 감소한 부호기를 구현하는 것이 가능하다는 이점을 갖는다. 또한, 차수가 3차 이상의 열을 포함하는 패리티 검사 행렬을 사용한 부호화가 가능하다는 이점을 갖는다.
Claims (26)
- 통신 시스템에서 부호화 장치에 있어서,입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하며, 상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하며, 상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하고, 상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하는 제1패리티 부호어 벡터 생성부와,상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성하는 제2패리티 부호어 벡터 생성부를 포함하는 부호화 장치.
- 제1항에 있어서,상기 제1패리티 부호어 벡터 생성부는;상기 제1 벡터를 역다중화하여 상기 역다중화 벡터들을 생성하는 역다중화기와,상기 제2벡터들 각각을 순환 이동하여 상기 제3벡터들을 생성하는 천이 레지스터들과,상기 역다중화된 제 1 벡터들과 상기 제 3 벡터들을 배타적 논리합 연산하여 상기 제2벡터들을 생성하는 제1배타적 논리합 연산기들과,상기 제3벡터들을 다중화하여 상기 제1패리티 부호어 벡터를 생성하는 다중화기와,상기 역다중화기로 상기 제1벡터를 역다중화하기 위한 선택 신호 및 상기 다중화기로 상기 제3벡터들을 다중화하기 위한 선택 신호를 출력하는 모듈로 카운터를 포함하는 부호화 장치.
- 제 1항에 있어서,상기 제 1 패리티 파트는 열 무게가 3 이상인 행렬임을 특징으로 하는 부호화 장치.
- 제 3항에 있어서,상기 제 1 패리티 파트는 각 행의 행 무게가 1이하임을 특징으로 하는 부호화 장치.
- 통신 시스템에서 부호화 장치에 있어서,입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하고, 상기 제1벡터를 제1배타적 논리합 연산기와 제2배타적 논리합 연산기로 출력하는 제1곱셈기와,상기 제1배타적 논리합 연산기로부터 출력되는 제3벡터를 순환 이동하여 제2벡터를 생성하고, 상기 제2벡터를 제1스위치와 제2스위치로 출력하는 제1천이 레지스터와,제1시간 구간들에서 0(zero) 벡터를 선택하고, 제2시간 구간들에서 상기 제2벡터를 선택하여, 상기 제1배타적 논리합 연산기로 출력하는 상기 제1스위치와,상기 제1벡터와 상기 제1스위치로부터 출력되는 벡터를 배타적 논리합 연산하여 제3벡터를 생성하고, 상기 제3벡터를 상기 제1천이 레지스터로 출력하는 상기 제1배타적 논리합 연산기와,상기 제1시간 구간들에서 상기 제2벡터를 제1패리티 부호어 벡터로서 제2곱셈기로 출력하는 상기 제2스위치와,상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하고, 상기 제4벡터를 상기 제2배타적 논리합 연산기로 출력하는 상기 제2곱셈기와,상기 제2배타적 논리합 연산기로부터 출력되는 제6벡터를 순환 이동하여 제2패리티 부호어 벡터인 제5벡터를 생성하고, 상기 제5벡터를 제3스위치로 출력하는 제2천이 레지스터와,상기 제1시간 구간들에서 0 벡터를 선택하고, 상기 제2시간 구간들에서 상기 제5벡터를 선택하여, 상기 제2배타적 논리합 연산기로 출력하는 상기 제3스위치와,상기 제1벡터와 상기 제3벡터 및 상기 제4벡터를 배타적 논리합 연산하여 제6벡터를 생성하고, 상기 제6벡터를 상기 제2천이 레지스터로 출력하는 상기 제2배타적 논리합 연산기를 포함하는 부호화 장치.
- 제 5 항에 있어서,상기 제 1 패리티 파트는 열 무게가 3 이상인 행렬임을 특징으로 하는 부호화 장치.
- 제 6 항에 있어서,상기 제 1 패리티 파트는 각 행의 행 무게가 1이하임을 특징으로 하는 부호화 장치.
- 제1항에 있어서,상기 생성 다항식의 계수는 시간에 따라 변화됨을 특징으로 하는 부호화 장치.
- 제1항에 있어서,상기 나눗셈 회로는 상기 제1벡터와 상기 제3벡터와, 제5벡터를 논리합 연산하여 제6벡터를 생성하는 제2배타적 논리합 연산기와,상기 제6벡터를 순차적으로 순환 이동하여 상기 제2패리티 부호어 벡터를 생성하는 천이 레지스터들과,상기 천이 레지스터들 각각의 출력들에 상기 생성 다항식의 계수 각각을 곱하여 제7벡터들을 생성하는 곱셈기들과,상기 제7벡터들을 순차적으로 배타적 논리합 연산하여 상기 제5벡터를 생성하는 제3배타적 논리합 연산기들을 포함함을 특징으로 하는 부호화 장치.
- 제5항에 있어서,상기 생성 다항식의 계수는 시간에 따라 변화됨을 특징으로 하는 부호화 장치.
- 통신 시스템에서 부호화 방법에 있어서,입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하는 과정과,상기 제1벡터를 역다중화하여 생성된 역다중화 벡터들과 제3벡터들을 배타적 논리합 연산하여 제2벡터들을 생성하는 과정과,상기 제2벡터들을 순환 이동하여 상기 제3벡터들을 생성하는 과정과,상기 제3벡터들을 다중화하여 제 1 패리티 부호어 벡터를 생성하는 과정과,상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하는 과정과,상기 제 1 벡터 및 상기 제 3 벡터를 미리 정해지는 생성 다항식으로 표현되는 나눗셈 회로에 입력하여 제 2 패리티 부호어 벡터를 생성하는 과정을 포함하는부호화 방법.
- 제14항에 있어서,상기 제1벡터의 역다중화와 상기 제3벡터들의 다중화는 상기 역다중화하기 위한 선택 신호와 상기 다중화하기 위한 선택 신호에 따라 수행됨을 특징으로 하는 부호화 방법.
- 제 14항에 있어서,상기 제 1 패리티 파트는 열 무게가 3 이상인 행렬임을 특징으로 하는 부호화 방법.
- 제 16항에 있어서,상기 제 1 패리티 파트는 각 행의 행 무게가 1이하임을 특징으로 하는 부호화 방법.
- 제14항에 있어서,상기 생성 다항식의 계수는 시간에 따라 변화됨을 특징으로 하는 부호화 방법.
- 제14항에 있어서,상기 나눗셈 회로는 상기 제1벡터와 상기 제3벡터와, 제5벡터를 논리합 연산하여 제6벡터를 생성하는 과정과,천이 레지스터들을 이용하여 상기 제6벡터를 순차적으로 순환 이동함으로써 상기 제2패리티 부호어 벡터를 생성하는 과정과,상기 천이 레지스터들 각각의 출력들에 상기 생성 다항식의 계수 각각을 곱하여 제7벡터들을 생성하는 과정과,상기 제7벡터들을 순차적으로 배타적 논리합 연산하여 상기 제5벡터를 생성하는 과정을 포함함을 특징으로 하는 부호화 방법.
- 통신 시스템에서 부호화 방법에 있어서,입력된 정보 벡터에 패리티 검사 행렬의 정보 파트의 전치 행렬을 곱하여 제1벡터를 생성하는 과정과,제1배타적 논리합 연산기로부터 출력되는 제3벡터를 순환 이동하여 제2벡터를 생성하는 과정과,제1시간 구간들에서 0(zero) 벡터를 선택하고, 제2시간 구간들에서 상기 제2벡터를 선택하는 과정과,상기 제1배타적 논리합 연산기를 이용하여 상기 제1벡터와 상기 선택된 벡터를 배타적 논리합 연산함으로써 제3벡터를 생성하는 과정과,상기 제1시간 구간들에서 상기 제2벡터를 제1패리티 부호어 벡터로서 출력하는 과정과,상기 제1패리티 부호어 벡터에 상기 패리티 검사 행렬의 제1패리티 파트의 전치행렬을 곱하여 제4벡터를 생성하는 과정과,상기 제1벡터와 상기 제3벡터 및 상기 제4벡터를 배타적 논리합 연산하여 제6벡터를 생성하는 과정과,상기 제6벡터를 순환 이동하여 제2패리티 부호어 벡터인 제5벡터를 생성하는 과정과,상기 제1시간 구간들에서 0 벡터를 선택하고, 상기 제2시간 구간들에서 상기 제5벡터를 선택하는 과정을 포함하는 부호화 방법.
- 제 22 항에 있어서,상기 제 1 패리티 파트는 열 무게가 3 이상인 행렬임을 특징으로 하는 부호화 방법.
- 제 23 항에 있어서,상기 제 1 패리티 파트는 각 행의 행 무게가 1이하임을 특징으로 하는 부호화 방법.
- 제22항에 있어서,상기 생성 다항식의 계수는 시간에 따라 변화됨을 특징으로 하는 부호화 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070033912A KR100975696B1 (ko) | 2007-04-05 | 2007-04-05 | 통신 시스템에서 부호화 장치 및 방법 |
US12/098,765 US8145972B2 (en) | 2007-04-05 | 2008-04-07 | Apparatus and method for coding in communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070033912A KR100975696B1 (ko) | 2007-04-05 | 2007-04-05 | 통신 시스템에서 부호화 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080090730A KR20080090730A (ko) | 2008-10-09 |
KR100975696B1 true KR100975696B1 (ko) | 2010-08-12 |
Family
ID=40151774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070033912A KR100975696B1 (ko) | 2007-04-05 | 2007-04-05 | 통신 시스템에서 부호화 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8145972B2 (ko) |
KR (1) | KR100975696B1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8321752B1 (en) * | 2008-11-12 | 2012-11-27 | Marvell International Ltd. | Integrated 2-level low density parity check (LDPC) codes |
KR101785656B1 (ko) | 2010-03-04 | 2017-10-16 | 엘지전자 주식회사 | Ack/nack 신호를 전송하는 방법 및 이를 위한 장치 |
US9705532B2 (en) * | 2013-03-15 | 2017-07-11 | Arris Enterprises Llc | Parallel low-density parity check (LDPC) accumulation |
US10116430B1 (en) * | 2016-09-01 | 2018-10-30 | Xilinx, Inc. | Alignment marker independent data alignment for a receiver |
CN113114273B (zh) * | 2021-04-14 | 2022-11-18 | 深圳市统先科技股份有限公司 | Ldpc码的校验矩阵提取方法及***、设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050021108A (ko) * | 2003-08-26 | 2005-03-07 | 삼성전자주식회사 | 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법 |
US6895547B2 (en) | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
KR20060050384A (ko) * | 2004-08-10 | 2006-05-19 | 삼성전자주식회사 | 블록 저밀도 패리티 검사 부호 부호화/복호 장치 및 방법 |
KR20060061145A (ko) * | 2004-12-01 | 2006-06-07 | 삼성전자주식회사 | 저밀도 패리티 검사 부호의 생성 방법 및 장치 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4617985B2 (ja) * | 2005-04-25 | 2011-01-26 | ソニー株式会社 | 符号装置および符号化方法 |
US7499490B2 (en) * | 2005-06-24 | 2009-03-03 | California Institute Of Technology | Encoders for block-circulant LDPC codes |
-
2007
- 2007-04-05 KR KR1020070033912A patent/KR100975696B1/ko active IP Right Grant
-
2008
- 2008-04-07 US US12/098,765 patent/US8145972B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895547B2 (en) | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
KR20050021108A (ko) * | 2003-08-26 | 2005-03-07 | 삼성전자주식회사 | 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법 |
KR20060050384A (ko) * | 2004-08-10 | 2006-05-19 | 삼성전자주식회사 | 블록 저밀도 패리티 검사 부호 부호화/복호 장치 및 방법 |
KR20060061145A (ko) * | 2004-12-01 | 2006-06-07 | 삼성전자주식회사 | 저밀도 패리티 검사 부호의 생성 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US8145972B2 (en) | 2012-03-27 |
KR20080090730A (ko) | 2008-10-09 |
US20110047432A1 (en) | 2011-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101445080B1 (ko) | 하이브리드 자동 반복 요구 방식을 사용하는 통신 시스템에서 신호 송신 방법 및 장치 | |
RU2232463C2 (ru) | Устройство и способ кодирования/декодирования канала в системе мобильной связи множественного доступа с кодовым разделением каналов | |
KR100421164B1 (ko) | 이동통신시스템에서 전송율 정보 부호화 및 복호화 장치 및 방법 | |
JP5161857B2 (ja) | Ldpc符号の符号化 | |
KR100975558B1 (ko) | 통신 시스템에서 신호 송수신 장치 및 방법 | |
JP5875713B2 (ja) | 送信機および受信機、並びに符号化率可変方法 | |
US7337385B2 (en) | Decoding apparatus and method for decoding the data encoded with an LDPC code | |
US8099644B2 (en) | Encoders and methods for encoding digital data with low-density parity check matrix | |
US8539304B1 (en) | Parallel encoder for low-density parity-check (LDPC) codes | |
CN102870330B (zh) | 编码设备、纠错码配置方法及其程序 | |
CA2560852A1 (en) | Apparatus and method for coding/decoding block low density parity check code with variable block length | |
CA2559818A1 (en) | Apparatus and method for coding/decoding block low density parity check code with variable block length | |
KR100975696B1 (ko) | 통신 시스템에서 부호화 장치 및 방법 | |
TW200302638A (en) | Method and apparatus for weighted non-binary repeat accumulate coding and space-time coding | |
WO2002029976A1 (en) | APPARATUS AND METHOD FOR GENERATING (n,3) CODE AND (n,4) CODE USING SIMPLEX CODES | |
JP2019525638A (ja) | 2のべき乗でない長さに拡張されたポーラ符号の符号化および復号化 | |
CA2493430A1 (en) | Apparatus for decoding an error correction code in a communication system and method thereof | |
EP2309650B1 (en) | A systematic encoder with arbitrary parity positions | |
KR20070076473A (ko) | 통신 시스템에서 신호 송수신 장치 및 방법 | |
KR102181553B1 (ko) | 전자장치에서 부호화 및 복호화를 위한 방법 및 장치 | |
CN103138769B (zh) | 一种具有不等错误保护的编码方法 | |
KR100874484B1 (ko) | 준순환 저밀도 패리티 검사 부호화 방법 및 장치 | |
KR101425506B1 (ko) | 보완적인 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 | |
KR102328268B1 (ko) | 무선통신 시스템을 위한 짧은 블록 부호화 및 복호화 장치 및 방법 | |
KR101411720B1 (ko) | 엘디피시 부호의 패리티 체크 행렬을 이용해 서로 다른 여러 개의 복호기를 만드는 엘디피시 부호의 복호 방법 및 이를 포함하는 엘디피시 부호 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130719 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140730 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150730 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160728 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170728 Year of fee payment: 8 |