1 |
1
파운틴(fountain) 코드의 디코딩을 위한 제1 행렬을 이용해 제1 디코딩을 수행하는 경우에, 상기 제1 디코딩이 실패하는 경우에 수행되는 제2 디코딩을 위한 제1 행 벡터를, 상기 제1 행렬에 포함되는 복수의 행 벡터에 기초해 계산하는 단계;상기 제1 디코딩이 실패하는 경우에, 상기 제2 디코딩을 위해 수신한 심볼을 이용해, 제1 추가 심볼 벡터를 생성하는 단계; 및상기 제2 디코딩을 수행하는 경우에, 상기 제1 행 벡터와 상기 제1 추가 심볼 벡터를 이용해, 제2 행렬에 삽입되는 제2 행 벡터를 계산하는 단계를 포함하고, 상기 제2 행렬은 상기 제1 디코딩을 위한 가우시안 소거(Gaussian elimination)를 통해 상기 제1 행렬로부터 변환된 행렬인디코더의 디코딩 방법
|
2 |
2
제1항에 있어서,상기 제1 행 벡터를 계산하는 단계는,상기 제1 행렬에 포함되는 복수의 행 벡터 간의 XOR 연산을 통해 상기 제1 행 벡터를 계산하는 단계를 포함하는디코더의 디코딩 방법
|
3 |
3
제1항에 있어서,상기 제1 행 벡터를 계산하는 단계는,상기 제2 디코딩을 위한 제3 행 벡터를, 제3 행렬에 속하는 복수의 행 벡터 간의 XOR 연산을 통해 계산하는 단계를 포함하고,상기 제3 행렬은 상기 제1 디코딩을 위한 수신 심볼을 포함하는디코더의 디코딩 방법
|
4 |
4
제1항에 있어서,L x L의 행렬(단, L은 2 이상의 자연수)인 상기 제2 행렬은,(L-1) x (L-1)의 항등 행렬, 상기 제2 행렬의 마지막 행에 위치하는 1 x L의 영 행렬, 및 상기 제2 행렬의 마지막 열에 위치하며 갈로아 필드(Galois field)의 값을 가지는 (L-1) x 1의 행렬을 포함하는디코더의 디코딩 방법
|
5 |
5
제1항에 있어서,상기 제2 행 벡터를 계산하는 단계는,상기 제1 추가 심볼 벡터에 기초해, 제2 추가 심볼 벡터를 생성하는 단계; 및상기 제2 추가 심볼 벡터와 상기 제1 행 벡터 간의 XOR 연산을 통해, 상기 제2 행 벡터를 계산하는 단계를 포함하는디코더의 디코딩 방법
|
6 |
6
제3항에 있어서,상기 제2 행 벡터를 계산하는 단계는,상기 제1 추가 심볼 벡터와 상기 제3 행 벡터 간의 XOR 연산을 통해, 제4 행렬에 삽입되는 제4 행 벡터를 계산하는 단계를 포함하고,상기 제4 행렬은 상기 제1 디코딩을 위한 가우시안 소거를 통해 상기 제3 행렬로부터 변환된 행렬인디코더의 디코딩 방법
|
7 |
7
제6항에 있어서,상기 제2 행 벡터를 계산하는 단계는,상기 제2 행 벡터를 상기 제2 행렬의 마지막 행에 삽입하는 단계; 및상기 제4 행 벡터를 상기 제4 행렬의 마지막 행에 삽입하는 단계를 더 포함하는디코더의 디코딩 방법
|
8 |
8
제1항에 있어서,상기 제2 행 벡터에 포함된 복수의 원소 중 마지막 원소인 제1 원소를 제외한 나머지 원소의 값이 0이 되도록 상기 제2 행 벡터에 대한 가우시안 소거를 수행하는 단계를 더 포함하는 디코더의 디코딩 방법
|
9 |
9
제8항에 있어서,상기 제2 행 벡터에 대한 가우시안 소거를 수행하는 단계는,상기 제1 원소의 값을 상기 제2 행 벡터에 대한 가우시안 소거를 통해 변환하는 단계; 및상기 변환된 값이 1인 아닌 경우에, 상기 변환된 값으로 상기 제2 행렬의 마지막 열 벡터를 나누는 단계를 포함하는디코더의 디코딩 방법
|
10 |
10
제9항에 있어서,상기 제2 행 벡터에 대한 가우시안 소거를 수행하는 단계는,상기 제2 행렬의 마지막 열 벡터에 포함된 복수의 원소 중 마지막 원소를 제외한 나머지 원소의 값이 0이 되도록 가우시안 소거를 수행하는 단계를 더 포함하는디코더의 디코딩 방법
|
11 |
11
제7항에 있어서,상기 제2 행렬의 역행렬과 상기 제4 행렬을 이용해, 상기 파운틴 코드의 디코딩을 위한 중간(intermediate) 심볼을 계산하는 단계를 더 포함하는 디코더의 디코딩 방법
|
12 |
12
제1항에 있어서,상기 파운틴 코드는 랩터Q(raptorQ) 코드인디코더의 디코딩 방법
|
13 |
13
메모리; 및 상기 메모리에 연결되며, 파운틴 코드를 이용한 제1 디코딩이 실패하는 경우에 제2 디코딩을 시도하는 디코더를 포함하고,상기 디코더는,상기 제1 디코딩을 수행하는 경우에, 상기 제2 디코딩을 위한 제1 행 벡터를 제1 파운틴 코드 행렬에 포함되는 복수의 행 벡터를 이용해 계산하고, 상기 제2 디코딩을 수행하는 경우에, 상기 제2 디코딩을 위해 수신한 심볼을 포함하는 제1 추가 심볼 벡터와 상기 제1 행 벡터를 이용해, 제2 파운틴 코드 행렬에 삽입되는 제2 행 벡터를 계산하고, 상기 제2 파운틴 코드 행렬은 상기 제1 디코딩을 위한 가우시안 소거(Gaussian elimination)를 통해 상기 제1 파운틴 코드 행렬로부터 변환된 행렬인수신기
|
14 |
14
제13항에 있어서,상기 디코더는,상기 제1 파운틴 코드 행렬에 포함되는 복수의 행 벡터 간의 XOR 연산을 통해 상기 제1 행 벡터를 계산하고, 상기 제2 디코딩을 위한 제3 행 벡터를 제1 수신 심볼 행렬에 속하는 복수의 행 벡터 간의 XOR 연산을 통해 계산하고,상기 제1 수신 심볼 행렬은 상기 제1 디코딩을 위해 수신한 심볼을 포함하는수신기
|
15 |
15
제14항에 있어서,상기 디코더는, 상기 제1 추가 심볼 벡터에 기초해 제2 추가 심볼 벡터를 생성하고, 상기 제2 추가 심볼 벡터와 상기 제1 행 벡터 간의 XOR 연산을 통해 상기 제2 행 벡터를 계산하고, 상기 제1 추가 심볼 벡터와 상기 제3 행 벡터 간의 XOR 연산을 통해 제2 수신 심볼 행렬에 삽입되는 제4 행 벡터를 계산하고,상기 제2 수신 심볼 행렬은 상기 제1 디코딩을 위한 가우시안 소거를 통해 상기 제1 수신 심볼 행렬로부터 변환된 행렬인수신기
|
16 |
16
제13항에 있어서,상기 디코더는, 상기 제2 행 벡터를 상기 제2 파운틴 코드 행렬의 마지막 행에 삽입하고, 상기 제2 행 벡터에 포함된 복수의 원소 중 마지막 원소인 제1 원소를 제외한 나머지 원소의 값이 0이 되도록 상기 제2 행 벡터에 대한 가우시안 소거를 수행하는수신기
|
17 |
17
제16항에 있어서,상기 디코더는,상기 제1 원소의 값을 상기 제2 행 벡터에 대한 가우시안 소거를 통해 변환하고, 상기 변환된 값이 1인 아닌 경우에, 상기 변환된 값으로 상기 제2 파운틴 코드 행렬의 마지막 열 벡터를 나누는 수신기
|
18 |
18
제17항에 있어서,상기 디코더는, 상기 제2 파운틴 코드 행렬의 마지막 열 벡터에 포함된 복수의 원소 중 마지막 원소를 제외한 나머지 원소의 값이 0이 되도록 가우시안 소거를 수행하는 수신기
|
19 |
19
제15항에 있어서,상기 디코더는, 상기 제2 파운틴 코드 행렬의 역행렬과 상기 제2 수신 심볼 행렬을 이용해 상기 제2 디코딩을 위한 중간(intermediate) 심볼을 생성하는수신기
|
20 |
20
제13항에 있어서,상기 파운틴 코드는 랩터Q(raptorQ) 코드인수신기
|