상기 목적을 달성하기 위한 OFDM/OFDMA 방식을 지원하는 시스템에서 수행되 는 본 발명의 디코딩 방법은, 위상 모듈레이션된 신호를 수신하는 단계; 수신 신호에 대해 서브 캐리어 디모듈레이션을 수행하여 상관 메트릭스(Metrics)를 생성하는 단계; 상기 상관 메트릭스를 이용하여 디코딩 메트릭스를 생성하는 단계; 및 상기 디코딩 메트릭스 중 최대 메트릭 및 둘째 메트릭을 이용하여 패이로드로 결정하는 단계를 포함하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 OFDM/OFDMA 방식을 지원하는 시스템의 디코딩 장치는, 수신된 위상 모듈레이션된 신호를 버퍼링하기 위한 수신 버퍼; 상기 수신 버퍼에 버퍼링된 수신 신호가 각 패이로드 후보값으로 판정될 수 있는 개연성에 대응하는 디코딩 메트릭스를 생성하기 위한 개연성 메트릭스 생성부; 및 패이로드 후보값들 중 최대 디코딩 메트릭을 가지는 값 또는 이전 프레임에서 결정되었던 이전 패이로드를 패이로드로 결정하기 위한 패이로드 결정부를 포함하는 것을 특징으로 한다.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
예컨대, 본 발명의 사상은 데이터를 복소수 신호의 형태로 전송하며, 수신 신호가 규정된 패턴과 정확히 일치하지 않더라도 소정의 알고리즘에 따라 가장 개연성이 높은 값으로 추정하는 방식의 통신 시스템의 수신단에서의 데이터 복조용 디코딩 장치에 적용이 가능하다. 비록 설명의 편의를 위해 하기 실시예에서는 OFDM/OFDMA 방식의 무선 휴대 인터넷 시스템 기지국의 수신단 디코딩 장치로 구체화하여 기술하지만, 이는 발명의 범위를 제한하는 것은 아니다.
예컨대, 하기 실시예에 개시된 패이로드 결정 알고리즘은 본 발명의 사상을 가지고 구현가능한 여러가지 일례들을 제시한 것으로, 구체적으로 제시된 알고리즘에 있어서 몇몇 단계의 순서의 변경 및/또는 반복 수행으로 변형되어 실시된다 하더라도 실질적으로 동일한 효과를 가져오면 본 발명의 권리범위에 속함은 물론이다.
(실시예)
본 실시예는 본 발명의 사상을 IEEE 802.16d 또는 IEEE 802.16e의 규격을 따르는 무선 휴대 인터넷 시스템에 적용한 것으로, 특히 패스트 피드백 신호의 전송용으로 구현한 것이다. 즉, 본 실시예에서는 6비트 패이로드를 48개의 서브 캐리어로 전송하는 패스트 피드백 신호 전송용 서브채널을 고려하였다. 각 패스트 피드백 서브채널은 단말기에 할당되는 하나의 OFDM/OFDMA 서브채널로 이루어지고, 각 OFDM/OFDMA 서브채널은 일반적인 업링크 데이터의 맵핑과 유사한 방법으로 맵핑된다.
상기 OFDM/OFDMA를 적용한 무선 휴대 인터넷 시스템에서 하나의 기지국과 다수개의 단말기간의 데이터 통신이 수행되는 무선 채널 상의 전체 전송 프레임은 도 2에 도시한 바와 같은 구조를 가진다. 도시한 프레임은 5ms의 구간 동안 시분할 방 식을 적용한 것으로서, 단말기들에서 기지국으로 데이터가 전달되는 업링크 구간과, 기지국에서 단말기들로 데이터가 전달되는 다운링크 구간으로 구분된다.
상기 IEEE 802.16e 및 802.16d의 규격에 따르면 패스트 피드백(fast feedback) 신호는 각 단말기에 할당된 서브 채널을 이루는 48개의 서브 캐리어에 분포된 QPSK 모듈레이션 신호로 전송하도록 규정하고 있다(ACK/NACK 신호는 24개의 서브 캐리어로 규정됨). 패스트 피드백 서브채널은 48개의 서브 캐리어를 가지는 QPSK 모듈레이션을 이용하고, 6비트의 패스트 피드백 데이터를 실을 수 있다. 48개의 서브 캐리어는 6개의 OPUSC 타일 또는 6개의 PUSC 타일 또는 AMC 기타 존(zone)으로부터 확보될 수 있다.
도 2은 상기 규격의 무선 휴대 인터넷의 업/다운 링크 프레임 구조를 나타낸다. 도시한 프레임을 업 링크 프레임 및 다운 링크 프레임으로 나뉘며, 상기 다운 링크 프레임은 PUSC 부채널 구간, 다이버시티 부채널 구간 및 AMC 부채널 구간으로 이루어지며, 상기 업 링크 프레임은 상향 제어 심볼 구간, 다이버시티 부채널 구간 및 AMC 구간으로 이루어진다. 각 구간은 정해진 용도에 맞게 각 단말기에 대한 데이터를 전송하거나, 제어 신호들을 전송하는데 사용된다.
도 2의 프레임에서 데이터를 구획하여 전송하는 전송 단위로서 타일 및 빈을 사용하고 있는데, 빈 및 타일은 위상 신호 하나를 실을 수 있는 1주기의 서브 캐리어들로 이루어진다. 빈은 도 3a에 도시한 바와 같이 동일한 시점에서 9개의 순차적인 주파수를 가지는 서브 캐리어로 이루어진 데이터 전송 단위로서, 중간 주파수를 가지는 서브 캐리어를 파일럿 신호의 전송용으로 사용한다. 타일은 OPUSC 타일 및/또는 PUSC 타일이 사용될 수 있는데, OPUSC 타일은 도 3b에 도시한 바와 같이 3개의 주파수 단위 및 3개의 타임 단위로된 9개의 서브 캐리어로 이루어지며, 가운데 서브 캐리어 하나를 파일럿 신호의 전송용으로 사용한다. PUSC 타일은 도 3c에 도시한 바와 같이 3개의 주파수 단위 및 4개의 타임 단위로된 12개의 서브 캐리어로 이루어지며, 꼭지점 부분의 4개의 서브 캐리어를 파일럿 신호의 전송용으로 사용한다.
무선 휴대 인터넷의 운용시 전송되는 많은 종류의 신호들 중 본 실시예에 따른 QPSK 모듈레이션 방식으로 전송될 수 있는 신호로는 패스트 피드백 신호 및 ACK/NACK 신호가 있다. 이 신호들은 IEEE 802.16d 또는 IEEE 802.16e 등의 규격에서 규정한 종류에 따라 1비트, 3비트, 4비트 또는 6비트의 크기를 가지는 패이로드이다(다른 비트수의 패이로드를 사용하는 다른 규격에도 본 발명의 사상이 적용 가능함은 물론이다). 상기 규격에서는 패스트 피드백 신호의 경우 하나의 단말기에 대한 상기 패이로드를 싣기 위한 서브 캐리어의 개수를 48개로 규정하고 있다. 또한, 상기 48개의 서브 캐리어를 확보하기 위해, 하나의 서브 채널은 6개의 타일을 포함하도록 규정하고 있다. 또한, 상기 규격에서는 1비트의 ACK/NACK 신호의 경우 하나의 단말기에 대한 상기 패이로드를 싣기 위한 서브 채널은 3개의 타일로 이루도록 규정하고 있다.
도 4는 무선 인터넷 시스템을 구성하는 휴대 단말기 측의 인코더의 구조를 도시하고 있다. 도시한 인코더는 인코딩하려는 6비트 데이터를 입력받기 위한 입력 버퍼(620); 및 상기 입력 버퍼(620)에 래치된 데이터를 소정의 알고리즘에 따라 인코딩하기 위한 맵핑 블록(640)을 포함한다. 상기 6비트 데이터는 소정의 제어 신호 생성기(720)로부터 입력받는다.
상기 6비트 입력값은 6개의 타일을 채울 수 있는 6개의 벡터 인덱스열로 심볼 맵핑된다. 각 6비트 입력값에 따른 6개의 벡터 인덱스열의 출력값은 하기 표 1에 도시한 바와 같다. 상기 표에서 각 타일값으로 표기된 '0' ~ '7'의 인덱스 넘버는 하기 표 2에 도시한 바와 같은 벡터들의 집합으로 표시된다. 각 벡터는 각각 90도의 위상차를 가지는 하기 수학식 1과 같은 4개의 복소수로 표현되며, 서브 캐리어에 물리적으로 적용된다.
6비트 payload |
벡터 인덱스열 |
6비트 payload |
벡터 인덱스열 |
000000 |
0,0,0,0,0,0 |
100000 |
6,7,5,1,2,4 |
000001 |
1,1,1,1,1,1 |
100001 |
7,6,4,0,3,5 |
000010 |
2,2,2,2,2,2 |
100010 |
4,5,7,3,0,6 |
000011 |
3,3,3,3,3,3 |
100011 |
5,4,6,2,1,7 |
000100 |
4,4,4,4,4,4 |
100100 |
2,3,1,5,6,0 |
000101 |
5,5,5,5,5,5 |
100101 |
3,2,0,4,7,1 |
000110 |
6,6,6,6,6,6 |
100110 |
0,1,3,7,4,2 |
000111 |
7,7,7,7,7,7 |
100111 |
1,0,2,6,5,3 |
001000 |
2,4,3,6,7,5 |
101000 |
7,5,1,2,4,3 |
001001 |
3,5,2,7,6,4 |
101001 |
6,4,0,3,5,2 |
001010 |
0,6,1,4,5,7 |
101010 |
5,7,3,0,6,1 |
001011 |
1,7,0,5,4,6 |
101011 |
4,6,2,1,7,0 |
001100 |
6,0,7,2,3,1 |
101100 |
3,1,5,6,0,7 |
001101 |
7,1,6,3,2,0 |
101101 |
2,0,4,7,1,6 |
001110 |
4,2,5,0,1,3 |
101110 |
1,3,7,4,2,5 |
001111 |
5,3,4,1,0,2 |
101111 |
0,2,6,5,3,4 |
010000 |
4,3,6,7,5,1 |
110000 |
5,1,2,4,3,6 |
010001 |
5,2,7,6,4,0 |
110001 |
4,0,3,5,2,7 |
010010 |
6,1,4,5,7,3 |
110010 |
7,3,0,6,1,4 |
010011 |
7,0,5,4,6,2 |
110011 |
6,2,1,7,0,5 |
010100 |
0,7,2,3,1,5 |
110100 |
1,5,6,0,7,2 |
010101 |
1,6,3,2,0,4 |
110101 |
0,4,7,1,6,3 |
010110 |
2,5,0,1,3,7 |
110110 |
3,7,4,2,5,0 |
010111 |
3,4,1,0,2,6 |
110111 |
2,6,5,3,4,1 |
011000 |
3,6,7,5,1,2 |
111000 |
1,2,4,3,6,7 |
011001 |
2,7,6,4,0,3 |
111001 |
0,3,5,2,7,6 |
011010 |
1,4,5,7,3,0 |
111010 |
3,0,6,1,4,5 |
011011 |
0,5,4,6,2,1 |
111011 |
2,1,7,0,5,4 |
벡터 인덱스 |
서브캐리어 모듈레이션된 데이터 |
0 |
P0, P1, P2, P3, P0, P1, P2, P3 |
1 |
P0, P3, P2, P1, P0, P3, P2, P1 |
2 |
P0, P0, P1, P1, P2, P2, P3, P3 |
3 |
P0, P0, P3, P3, P2, P2, P1, P1 |
4 |
P0, P0, P0, P0, P0, P0, P0, P0 |
5 |
P0, P2, P0, P2, P0, P2, P0, P2 |
6 |
P0, P2, P0, P2, P2, P0, P2, P0 |
7 |
P0, P2, P2, P0, P2, P0, P0, P2 |
상기 표 1 및 표 2에 따르면, 하나의 6비트 입력값은 6개의 타일값으로 변환되며, 각 타일값은 8개의 벡터들의 집합으로 이루어지며, 상기 각 벡터들은 하나의 서브 캐리어에 실리므로, 결국 하나의 6비트 입력값은 6*8 = 48개의 반송파에 실리게 된다. 하기 표 3은 상기 관계를 보다 구체적으로 나타내었다.
6 bit payload |
48개 data subcarrier |
000000 |
1+i -1+i -1- i 1- i 1+i -1+i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1 + i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i 1+ i -1+ i -1- i 1- i |
000001 |
1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1+ i 1+ i 1- i -1- i -1 + i |
000010 |
1+ i 1+ i -1+ i -1+ i -1- i -1- i 1- i 1- i 1+ i 1+ i -1+ i -1 + i -1- i -1- i 1- i 1- i 1+ i 1+ i -1+ i -1+ i -1- i -1- i 1- i 1- i 1+ i 1+ i -1+ i -1+ i -1- i -1- i 1- i 1- i 1+ i 1+ i -1+ i -1 + i -1- i -1- i 1- i 1- i 1+ i 1 + i -1+ i -1+ i -1- i -1- i 1- i 1 - i |
000011 |
1+ i 1+ i 1- i 1- i -1- i -1 - i -1+ i -1+ i 1+ i 1+ i 1- i 1- i -1- i -1- i -1+ i -1+ i 1+ i 1 + i 1- i 1- i -1- i -1- i -1+ i -1+ i 1+ i 1+ i 1- i 1- i -1- i -1- i -1+ i -1+ i 1+ i 1+ i 1- i 1 - i -1- i -1- i -1+ i -1+ i 1+ i 1+ i 1- i 1- i -1- i -1- i -1+ i -1 + i |
000100 |
1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1 + i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1 + i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i 1 + i 1+ i 1+ i 1+ i 1+ i 1+ i 1+ i |
000101 |
1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1- i 1+ i -1 -i 1+ i -1- i 1+ i -1- i 1+ i -1- i |
000110 |
1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1 - i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1 + i |
000111 |
1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i 1+ i -1- i -1- i 1+ i -1- i 1+ i 1+ i -1- i |
... |
... ... |
111110 |
1+ i -1- i -1- i 1+ i -1 - i 1+ i 1+ i -1- i 1+ i 1 + i 1+ i 1+ i 1+ i 1+ i 1 + i 1+ i 1+ i 1+ i -1+ i -1 + i -1- i -1- i 1- i 1- i 1 + i -1- i 1+ i -1- i 1+ i -1 - i 1+ i -1- i 1+ i -1+ i -1 - i 1- i 1+ i -1+ i -1- i 1 - i 1+ i 1- i -1- i -1+ i 1 + i 1- i -1- i -1 + i |
111111 |
1 + i -1- i 1+ i -1- i -1 - i 1+ i -1- i 1+ i 1+ i -1 - i 1+ i -1- i 1+ i -1- i 1 + i -1- i 1+ i 1+ i 1- i 1 - i -1- i -1- i -1+ i -1+ i 1 + i 1+ i 1+ i 1+ i 1+ i 1 + i 1+ i 1+ i 1+ i 1- i -1 - i -1+ i 1+ i 1- i -1- i -1 + i 1+ i -1+ i -1- i 1- i 1 + i -1+ i -1- i 1 -i |
이제, 본 실시예의 디코딩 방법을 설명하겠다. 본 실시예의 디코딩 방법은 코히어런트 방식 또는 넌코히어런트 방식을 사용할 수 있으며, 코히어런트 방식의 경우에는 디코딩 이전에 파일럿 신호를 사용하여 무선 채널의 상태를 추정하고, 그 추정 결과에 따라 상기 무선 채널의 수신 신호를 보정하는 채널 추정/보정 과정을 수행할 수 있다.
즉, 본 실시예에서 수행하는 코히어런트 방식의 디코딩 과정은 도 5에 도시한 바와 같이, QPSK 모듈레이션된 신호를 수신하는 단계(S100); 파일럿 신호에 대한 채널 추정 결과를 상기 수신 신호에 적용하여 보상하는 단계(S200, S300); 보상된 수신 신호에 대해 상관 메트릭스(Metrics)를 구하는 서브 캐리어 디모듈레이션을 수행하는 단계(S400); 상기 상관 메트릭스와 각 패이로드 후보값들과의 개연성을 나타내는 디코딩 메트릭스를 생성하는 단계(S500); 및 상기 디코딩 메트릭스 중 최대 메트릭 및 둘째 메트릭을 비교한 결과에 따라 패이로드 후보값들 중 상기 최대 메트릭을 가지는 것을 패이로드로 결정하거나, 이전 프레임에서 결정된 패이로드를 패이로드로 결정하는 단계(S600, S700)를 포함하여 이루어진다.
상기 S200 단계는 무선 채널을 추정하기 위한 단계인데, 여기서 무선 채널의 추정은, 하나의 기지국이 입력받는 업 링크 구간 전체에 대한 추정을 뜻하는 것이 아니라, 하나의 기지국과 하나의 단말기간에 형성되는 각 서브 채널에 대한 추정을 뜻한다. 따라서, 상기 채널의 추정은 상향 제어 심볼 구간 신호를 적용하는 것이 아니라, 특정 단말기와의 통신에 사용하는 서브 채널 구간의 각 타일에 포함되는 파일럿 신호를 적용하여 이루어진다.
파일럿 신호는 미리 규정된 크기(amplitude) 및 0의 위상(phase)을 가진다. 상기 S200 단계에서는 실제로 수신한 파일럿 신호의 크기 및 위상과, 상기 미리 규정된 이상적인 파일럿 신호의 크기 및 위상을 비교하여 그 차이를 파악한다. 크기의 차이는 신호의 감쇄 정도를 나타내며, 위상의 차이는 신호의 지연 정도를 나타낸다. 이를 상기 파일럿 신호와 무선 채널을 공유하는 수신 신호에 적용하면, 상기 감쇄 정도에 따라 수신 신호의 크기(amplitude)를 판단하는 단위 기준값이 조절되며, 상기 지연 정도에 따라 수신 신호의 인식 시점이 조절되도록 구현할 수 있다.
여기서, 무선 휴대 인터넷의 규격에 의하면 하나의 단말기에 대한 패스트 피드백 신호 전송용으로 6개의 타일을 할당하는 바, 상기 채널 추정 및 보정 과정을 6개의 타일에 대하여 일괄적으로 동일한 보정량을 적용하여 수행하도록 구현할 수도 있다. 그러나, 6개의 타일은 그 사용 주파수 및 타임 슬롯에 적지않은 차이가 존재하므로, 각 타일의 파일럿 신호로부터 획득한 추정 결과를 동일한 타일의 서브 캐리어 전송 신호들에만 적용하는 방식으로, 6개의 타일에 대한 채널 추정 및 보정을 따로따로 수행토록 구현하는 것이 바람직하다. PUSC 타일의 경우 파일럿 신호가 4개이므로, 상기 무선 채널 추정에 있어, 4개의 파일럿 신호에 대한 추정값의 평균치를 이용할 수 있다.
상기와 같이 6개의 타일을 이루는 48개의 서브 캐리어에 실린 패이로드 신호는, 해당 타일에 대한 추정에 따른 보정이 적용된 상태로 측정되어, 입력 버퍼(6개의 타일 버퍼로 이루어짐)에 버퍼링됨에 의해 상기 S300 단계가 완료된다.
보다 구조를 간단하게 하기 위해 보상된 수신 신호들의 실수값만을 획득하는 또 다른 구현인 경우에는, 특정 수신 신호의 크기(amplitude)가 상기 감쇄 정도에 따라 결정된 상기 단위 기준값의 몇 배인가에 따른 배수로 크기(amplitude)를 기록하도록 구현할 수 있다.
한편, 상기 S300 단계 이후 디모듈레이션/디코딩을 원칙적으로 수행한다면, 64*48개의 서브 캐리어에 대한 디코딩 테이블이 필요하며, 이는 상기 테이블을 기록하기 위한 메모리에도 부담이 될 뿐만 아니라, 디코딩을 수행하는 연산장치에도 부담이 된다. 그런데, 상기 무선 휴대 인터넷 규격은, 6개의 타일 각각에 8개씩의 위상 신호를 나누어 전송하도록 규정하며, 상기 48개의 위상 신호들을 8개의 위상 신호로 이루어진 부분 집합 6개로 구분하고, 각 부분 집합은 하나의 벡터 인덱스값을 표시하고, 상기 소정 개수의 벡터 인덱스값들의 조합이 하나의 패이로드를 표시하도록 규정하고 있다.
따라서, 본 실시예에서는 무선 휴대 인터넷 규격에 따른 상기 타일 분할 구조 및 소정의 벡터 인덱스를 생성하는 알고리즘을 이용하여 보다 간단한 구조로 디모듈레이션을 수행하도록 착안하였다. 이를 위해 디코딩 과정의 중간 생성 데이터로서, 하나의 타일에 수신된 신호와 표 2의 각 벡터 인덱스와의 개연성을 뜻하는 상관 메트릭을 구하는데, 6개의 타일 및 8개의 벡터 인덱스들에 대하여 상관 메트릭스 1세트를 생성한다. 여기서, 상기 타일 또는 빈의 실수값들과 상기 벡터 인덱스의 개연성을 인덱스-개연성이라 칭하며, 상기 상관 메트릭스와 패이로드가 될 수 있는 값과의 개연성을 패이로드-개연성이라 칭하겠다.
상기 채널을 추정하는 S200 단계 및 추정 결과를 수신 신호에 적용하는 S300 단계를 구비함에 의해, S400 단계부터의 디코딩 과정이 보다 하드웨어 구조가 간단하고 연산 속도가 빠른 코히어런트 방식을 채택할 수 있도록 한다. 역으로 판단하면, S400 단계부터의 디코딩 과정을 다소 구조가 복잡한 넌코히어런트 방식을 채택한 경우에는 상기 S200 단계 및 S300 단계는 생략될 수 있음을 알 수 있다.
상기 S400 단계는 수신 신호와 기본 벡터 신호를 내적 연산한 결과로서 상관 메트릭을 구하도록 구현할 수 있다. 상기 내적 연산은 목적에 따라 공지된 다양한 방법으로 구현이 가능하다. 코히어런트 방식의 경우에는 내적하려는 두 벡터의 위상차가 존재하지 않으므로 보다 간단한 내적 회로로 구현이 가능하며, 두 벡터를 곱셈 연산하는 넌코히어런트 방식의 경우는 연산 결과로 허수부값이 생기는 보다 복잡한 회로가 필요하다. 내적(또는 곱셈) 방법의 하나로, 서브캐리어의 각 90도를 나타내는 4개의 신호와 수신 신호를 각각 내적(또는 곱셈)하고, 4개의 연산 결과를 서브캐리어 디모듈레이션 기본 벡터 패턴으로 조합하여, 8개의 기본 벡터에 대한 연산 결과값을 얻을 수 있다.
상기 허수부가 존재하는 연산 결과를 실수값의 상관 메트릭으로 기록하는 방법은, 연산 결과값의 실수부값만을 기록하는 방법, 연산 결과값의 절대값만을 기록하는 방법, 연산 결과값의 실수부 절대값과 허수부 절대값의 합을 기록하는 방법이 있다.
도 6을 참조하여 상기 S400 단계에서 수행되는 상관 메트릭스 생성과정을 IEEE 802.16d 또는 IEEE 802.16e 규격의 무선 휴대 인터넷에 적용한 경우로 구체화하여 설명하겠다.
48개의 각 서브 캐리어에 실리는 수신 신호 - 상기 수학식 1의 4개 값 중 하나의 값을 가진다 - 는, 각 서브 캐리어에 대한 순번 별로, 0번 수신 신호에서 47번 수신 신호라 칭한다. 규격에 따르면 상기 48개의 수신 신호는 타일 #0에서 타일 #5로 식별되는 6개의 타일에, 각 타일당 8개씩 실리게 된다.
본 실시예의 디코딩은 각 타일 버퍼에 저장된 8개의 값들에 대하여 우선적으로 디모듈레이션 및 제1 디코딩을 수행하여, 상관 메트릭스(metrics)를 생성하고(S400), 상기 상관 메트릭스를 이용하여 제2 디코딩을 수행한다(S500).
메트릭스의 생성 과정 및 사용 과정 설명의 편의를 위해 도 9에서 상관 메트릭스를 6*8 행렬 형태로 배열하였으며, 타일 버퍼 #0에서 타일 버퍼 #5로 식별되는 6개의 타일버퍼 중 타일버퍼 #0에 대한 디모듈레이션 과정만 도시하였다.
상기 S400 단계에서는 도시한 바와 같이 상기 타일버퍼 #0에 버퍼링된 값과 상기 기본 벡터 신호를 일대일 내적한 후 합산하여 상관 메트릭을 산출한다. 타일 버퍼 #0에 기록된 하나의 값에 대해, 상기 표 2의 패턴을 가지는 8개의 기본 벡터 신호와 한 번씩 상기 상관 메트릭 산출 과정이 수행되므로, 상기 과정에 대한 결과는 모두 8개가 생성된다. 상기 8개의 결과값들(m00 ~ m07)은 상관 메트릭스 상의 제1 열(column)을 구성하게 된다.
마찬가지의 과정으로 타일버퍼 #1에 기록된 값에 대하여 디모듈레이션이 수행되어 얻어진 8개의 결과값들(m10 ~ m17)은 상기 상관 메트릭스의 제2 열(column)을 구성하게 된다. 이와 같은 과정들이 타일버퍼 #2 내지 타일버퍼 #5까지 수행되며, 마지막 타일버퍼 #5에 기록된 값에 대하여 디모듈레이션이 수행되어 얻어진 8개의 결과값들(m50 ~ m57)은 상기 상관 메트릭스의 제6 열(column)을 구성하게 된다.
상기와 같은 과정으로 생성된 상기 상관 메트릭스를 구성하는 각 메트릭은, 열(column) 차수로 표시되는 각 타일에 대하여, 벡터 인덱스가 행의 차수값일 확률을 표현하게 된다. 예컨대, 도 9의 상관 메트릭스 중 m02는 0번 타일에 실린 신호가 2번 벡터를 나타낼 확률에 대응하는 인덱스-개연성을 나타내며, m25는 2번 타일에 실린 신호가 5번 벡터를 나타낼 확률에 대응하는 인덱스-개연성을 나타낸다. 상기 상관 메트릭스 생성 과정에서는 가장 큰 인덱스-개연성을 가지는 벡터 인덱스를 결정하지 않고, 8개의 벡터 인덱스에 대한 인덱스-개연성들을 상기 상관 메트릭스에 기록하였다. 이는 보다 많은 신호 왜곡이 발생하는 경우에도 후속되는 디코딩 메트릭의 계산 과정에 의해 48개의 모든 실수값들로부터 정확한 신호를 추정할 수 있도록 한다.
상기 S500 단계에서는, 상기 상관 메트릭스의 구성요소 중 상기 상관 메트릭스와 특정 패이로드 후보값에 대한 디코딩 메트릭을 구하기 위해 사용되는 부분 집합을 선별하는 단계와, 상기 선별된 부분 집합의 값들을 합산하여 상기 패이로드 후보값에 대한 디코딩 메트릭을 계산하는 단계를 모든 패이로드 후보값에 대하여 반복함으로써, 디코딩 메트릭스를 생성할 수 있다.
도 7을 참조하여 상기 S500 단계에서 수행되는 디코딩 메트릭스의 생성과정을 IEEE 802.16d 또는 IEEE 802.16e 규격의 무선 휴대 인터넷에 적용한 경우로 구체화하여 설명하겠다.
상기 S500 단계에서는, 상기 상관 메트릭스 기록값을 가지고 최종 디코딩값이 특정 패이로드일 확률인 패이로드-개연성을 측정한다. 측정된 패이로드-개연성은 디코딩 메트릭으로 기록되며, 6개 타일의 수신 신호들에 대하여 0부터 63까지의 패이로드 후보값 각각에 대한 패이로드-개연성을 측정하여 도시한 바와 같은 디코딩 메트릭스를 생성할 수 있다. 상기 디코딩 메트릭스의 생성 과정 중 상기 표 1의 관계가 표현된 패이로드 테이블을 이용할 수 있다.
패이로드 테이블은 각 패이로드 후보값에 대한 벡터 인덱스가 기록된 것으로, 제1행에는 패이로드가 0일때의 벡터 인덱스 열을 기록하며, 제2행에는 패이로드가 1일때의 벡터 인덱스 열을 기록하는 방식으로 구현될 수 있다. 따라서, 6비트 패이로드를 싣는 경우 64개의 행(row)을 가지며, 4비트 패이로드를 싣는 경우에는 16개의 행을 가진다. 하기 표 4는 6비트 패이로드에 대한 패이로드 테이블의 일실시예를 나타낸다.
테이블 인덱스 |
기록값 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
2 |
2 |
2 |
2 |
2 |
2 |
3 |
3 |
3 |
3 |
3 |
3 |
4 |
4 |
4 |
4 |
4 |
4 |
5 |
5 |
5 |
5 |
5 |
5 |
6 |
6 |
6 |
6 |
6 |
6 |
7 |
7 |
7 |
7 |
7 |
7 |
2 |
4 |
3 |
6 |
7 |
5 |
3 |
5 |
2 |
7 |
6 |
4 |
0 |
6 |
1 |
4 |
5 |
7 |
1 |
7 |
0 |
5 |
4 |
6 |
6 |
0 |
7 |
2 |
3 |
1 |
7 |
1 |
6 |
3 |
2 |
0 |
4 |
2 |
5 |
0 |
1 |
3 |
5 |
3 |
4 |
1 |
0 |
2 |
4 |
3 |
6 |
7 |
5 |
1 |
5 |
2 |
7 |
6 |
4 |
0 |
6 |
1 |
4 |
5 |
7 |
3 |
7 |
0 |
5 |
4 |
6 |
2 |
0 |
7 |
2 |
3 |
1 |
5 |
1 |
6 |
3 |
2 |
0 |
4 |
2 |
5 |
0 |
1 |
3 |
7 |
3 |
4 |
1 |
0 |
2 |
6 |
3 |
6 |
7 |
5 |
1 |
2 |
2 |
7 |
6 |
4 |
0 |
3 |
1 |
4 |
5 |
7 |
3 |
0 |
0 |
5 |
4 |
6 |
2 |
1 |
7 |
2 |
3 |
1 |
5 |
6 |
6 |
3 |
2 |
0 |
4 |
7 |
5 |
0 |
1 |
3 |
7 |
4 |
4 |
1 |
0 |
2 |
6 |
5 |
6 |
7 |
5 |
1 |
2 |
4 |
7 |
6 |
4 |
0 |
3 |
5 |
4 |
5 |
7 |
3 |
0 |
6 |
5 |
4 |
6 |
2 |
1 |
7 |
2 |
3 |
1 |
5 |
6 |
0 |
3 |
2 |
0 |
4 |
7 |
1 |
0 |
1 |
3 |
7 |
4 |
2 |
1 |
0 |
2 |
6 |
5 |
3 |
7 |
5 |
1 |
2 |
4 |
3 |
6 |
4 |
0 |
3 |
5 |
2 |
5 |
7 |
3 |
0 |
6 |
1 |
4 |
6 |
2 |
1 |
7 |
0 |
3 |
1 |
5 |
6 |
0 |
7 |
2 |
0 |
4 |
7 |
1 |
6 |
1 |
3 |
7 |
4 |
2 |
5 |
0 |
2 |
6 |
5 |
3 |
4 |
5 |
1 |
2 |
4 |
3 |
6 |
4 |
0 |
3 |
5 |
2 |
7 |
7 |
3 |
0 |
6 |
1 |
4 |
6 |
2 |
1 |
7 |
0 |
5 |
1 |
5 |
6 |
0 |
7 |
2 |
0 |
4 |
7 |
1 |
6 |
3 |
3 |
7 |
4 |
2 |
5 |
0 |
2 |
6 |
5 |
3 |
4 |
1 |
1 |
2 |
4 |
3 |
6 |
7 |
0 |
3 |
5 |
2 |
7 |
6 |
3 |
0 |
6 |
1 |
4 |
5 |
2 |
1 |
7 |
0 |
5 |
4 |
5 |
6 |
0 |
7 |
2 |
3 |
4 |
7 |
1 |
6 |
3 |
2 |
7 |
4 |
2 |
5 |
0 |
1 |
6 |
5 |
3 |
4 |
1 |
0 |
상기 디코딩 메트릭스의 생성 과정을 자세히 설명하면, 표 4의 상기 패이로드 테이블의 한 행을 구성하는 단위 값들을 리딩하고, 각 단위 값의 열(column) 순차와 일치하는 열(column) 순차를 가지는 하기 표 5의 상기 상관 메트릭스의 구성요소들 중 각 단위값의 행 순차를 가지는 것을 선택한다. 그 결과 상기 상관 메트릭스에서 총 6개의 구성요소들이 선택되면, 선택된 6개의 구성요소의 값들을 합산하여, 상기 리딩한 행이 나타내는 패이로드값에 대한 패이로드-개연성값을 생성한다. 예컨대, 상기 패이로드 테이블 중 첫번째 행을 적용하는 경우에는 하기 표 5의 상관 메트릭스 구성요소 중 m00, m10, m20, m30, m40, m50에 해당하는 값들을 합산하며, 상기 패이로드 테이블 중 아홉번째 행을 적용하는 경우에는 m02, m14, m23, m36, m47, m55에 해당하는 값들을 합산한다.
상기 S600 단계에서는, 본 발명의 사상에 따라 상기 S500 단계에서 생성한 디코딩 메트릭스 중 가장 큰 값인 최대 메트릭과 두번째로 큰 값인 둘째 메트릭을 판정한다. 상기 S700 단계에서는 상기 최대 메트릭 및 둘째 메트릭을 이용한 패이로드 결정 절차를 수행하는데, 예컨대 그 구체적인 방법으로 도 8 내지 도 11에 각각 도시한 6가지 방법을 제시하겠다.
도 8의 순서도에 도시한 제1 방법의 경우 상기 S700 단계는, 상기 최대 메트릭이 소정의 제1 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 최대 메트릭이 상기 제1 기준값을 초과하지 않으면 상기 최대 메트릭과 둘째 메트릭의 차가 소정의 제2 기준값을 초과하는지 여부를 판단하는 단계; 상기 메트릭간 차가 상기 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 및 상기 차가 상기 제2 기준값을 초과하지 않으면 이전 프레임의 패이로드를 패이로드로 결정하는 단계로 이루어진다.
도시한 S710 단계에서 최대 메트릭이 소정의 제1 기준값보다 크면 개연성이 충분하다고 판단하여 최대 메트릭의 패이로드 후보값을 패이로드로 결정하며, 최대 메트릭이 제1 기준값보다 작더라도 최대 메트릭과 두번째로 큰 둘째 메트릭의 차이가 소정의 제2 기준값보다 크면 최대 메트릭에 대한 개연성이 충분하다고 판단하여 최대 메트릭의 패이로드 후보값을 패이로드로 결정한다. 상기 2가지 조건을 모두 만족시키지 못하는 경우 수신 신호에 잡음이 섞여 특정 후보값에 대하여 우세한 개연성을 가지는 못하는 것으로 판단하여, 수신 신호가 속한 프레임에 대한 패이로드 판단을 하지 않고, 이전 프레임에서 구해졌던 패이로드를 현재 패이로드로 결정한다. 이는 제어 데이터의 경우 프레임에 따른 변동 발생 가능성이 낮으므로, 올바른 신호를 검출하기 어려운 프레임의 경우 이전 프레임의 제어 데이터를 유지하기 위함이다. 도 8의 알고리즘을 프로그래밍 언어로 표현하면 다음과 같다.
도 9의 순서도에 도시한 제2 방법의 경우 상기 S700 단계는, 상기 최대 메트릭이 소정의 제1 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 최대 메트릭이 상기 제1 기준값을 초과하지 않으면 상기 최대 메트릭과 둘째 메트릭의 차가 소정의 제2 기준값을 초과하는지 여부를 판단하는 단계; 상기 메트릭간 차가 상기 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 차가 상기 제2 기준값을 초과하지 않는 경우, 상기 최대 메트릭을 가지는 후보값 및 상기 둘째 메트릭을 가지는 후보값이, 이전 프레임의 패이로드와 소정 범위 내에서 유사한지 여부를 판단하는 단계; 소정 범위 내에서 유사하면 이전 프레임의 패이로드를 패이로드로 결정하는 단계; 및 소정 범위 내에서 유사하지 않으면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계로 이루어진다.
도 9의 제2 방법의 경우, S720 단계의 검토 결과 상기 제2 기준값을 초과하지 않는다고 판단하면, S730 단계 및 S735 단계에서 최대 메트릭에 대한 패이로드가 이전 프레임의 패이로드와 소정의 범위 내에서 유사한지 여부, 및 둘째 메트릭에 대한 패이로드가 이전 프레임의 패이로드와 소정의 범위 내에서 유사한지 여부를 검토한다. 이때 유사 범위는 기준값보다 큰 방향의 마진(margin)과 작은 방향의 마진 및 최대 메트릭에 대한 마진과 둘째 메트릭에 대한 마진 등 모두 4가지의 마진을 포함하는데, 4마진을 서로 다른 범위로 채택할 수도 있으나, 구조의 간소화를 위해 4마진은 동일한 값으로 부여하는 것이 바람직하다. 상기 최대 메트릭 및 둘째 메트릭을 가지는 후보값들이 이전 프레임의 패이로드와 소정 범위 내에서 유사하면, 이전 프레임과 현재 프레임의 제어 데이터 변동이 없는 것으로 판단하여 S740 단계에서 패이로드를 이전 프레임의 패이로드로 결정한다. 그렇지 않는 경우 S750 단계에서 패이로드를 최대 메트릭의 패이로드로 결정한다.
도 10의 순서도에 도시한 제3 방법의 경우 상기 S700 단계는, 최대 메트릭과 둘째 메트릭의 차가 소정의 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 차가 상기 제2 기준값을 초과하지 않는 경우, 상기 최대 메트릭을 가지는 후보값 및 상기 둘째 메트릭을 가지는 후보값이, 이전 프레임의 패이로드와 소정 범위 내에서 유사한지 여부를 판단하는 단계; 소정 범위 내에서 유사하면 이전 프레임의 패이로드를 패이로드로 결정하는 단계; 및 소정 범위 내에서 유사하지 않으면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계로 이루어진다. 도시한 순서도는 S710 단계가 제외된 것을 제외하고는 도 9의 순서도와 동일하므로 중복되는 설명은 생략하겠다. 도 10의 알고리즘을 프로그래밍 언어로 표현하면 다음과 같다.
도 11의 순서도에 도시한 제4 방법의 경우 상기 S700 단계는, 상기 최대 메트릭이 소정의 제1 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 최대 메트릭이 상기 제1 기준값을 초과하지 않으면 상기 최대 메트릭을 둘째 메트릭으로 나눈 몫이 소정의 제2 기준값을 초과하는지 여부를 판단하는 단계; 상기 나눈 몫이 상기 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 및 상기 나눈 몫이 상기 제2 기준값을 초과하지 않으면 이전 프레임의 패이로드를 패이로드로 결정하는 단계로 이루어진다.
상기 제1 방법의 경우 최대 메트릭과 둘째 메트릭의 상대적인 크기의 차이 따라 개연성이 충분한지 여부를 판단하는 반면, 도시한 제4 방법의 경우에는 최대 메트릭을 둘째 메트릭으로 나눈 몫에 따라 개연성이 충분한지 여부를 판단한다. 즉, 나눈 몫이 소정의 제2 기준값을 초과하면 최대 메트릭 패이로드 후보값에 대한 개연성이 충분한 것으로 판단한다. 이를 제외한 나머지는 상기 제1 방법의 경우와 동일하므로 중복되는 설명을 생략한다. 도 11의 알고리즘을 프로그래밍 언어로 표현하면 다음과 같다.
도 12의 순서도에 도시한 제5 방법의 경우 상기 S700 단계는, 상기 최대 메트릭이 소정의 제1 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 최대 메트릭이 상기 제1 기준값을 초과하지 않으면 상기 최대 메트릭을 둘째 메트릭으로 나눈 몫이 소정의 제2 기준값을 초과하는지 여부를 판단하는 단계; 상기 나눈 몫이 차가 상기 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 나눈 몫이 상기 제2 기준값을 초과하지 않는 경우, 상기 최대 메트릭을 가지는 후보값 및 상기 둘째 메트릭을 가지는 후보값이, 이전 프레임의 패이로드와 소정 범위 내에서 유사한지 여부를 판단하는 단계; 소정 범위 내에서 유사하면 이전 프레임의 패이로드를 패이로드로 결정하는 단계; 및 소정 범위 내에서 유사하지 않으면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계로 이루어진다.
상기 제5 방법의 경우도 최대 메트릭을 둘째 메트릭으로 나눈 몫에 따라 개연성이 충분한지 여부를 판단하는 것을 제외하고는 상기 제2 방법의 경우와 동일하므로 중복되는 설명을 생략한다.
도 13의 순서도에 도시한 제6 방법의 경우 상기 S700 단계는, 최대 메트릭을 둘째 메트릭으로 나눈 몫이 소정의 제2 기준값을 초과하면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계; 상기 나눈 몫이 상기 제2 기준값을 초과하지 않는 경우, 상기 최대 메트릭을 가지는 후보값 및 상기 둘째 메트릭을 가지는 후보값이, 이전 프레임의 패이로드와 소정 범위 내에서 유사한지 여부를 판단하는 단계; 소정 범위 내에서 유사하면 이전 프레임의 패이로드를 패이로드로 결정하는 단계; 및 소정 범위 내에서 유사하지 않으면 상기 최대 메트릭을 가지는 후보값을 패이로드로 결정하는 단계로 이루어진다. 도시한 순서도는 S710' 단계가 제외된 것을 제외하고는 도 12의 순서도와 동일하므로 중복되는 설명은 생략하겠다. 도 12의 알고리즘을 프로그래밍 언어로 표현하면 다음과 같다.
도 14는 무선 휴대 인터넷 시스템의 RAS 수신부의 하부 MAC 계층 이전의 무선 코아 모듈 영역의 구성을 도시하고 있다. 휴대 인터넷 시스템은 다운 링크와 업 링크를 시간으로 구분하는 TDD 방식이 사용되며, 다중접속 방식으로는 OFDM/OFDMA가 사용된다. OFDM/OFDMA 방식의 무선 신호는 다수개의 서브캐리어에 실린 상태로 안테나에 수신되어 저주파 통과 필터(20)를 경유한 뒤, FFT(Fast Fourier Transform) 블록(40)에서 다수개의 QPSK 모듈레이션 신호로 변환되어, 본 실시예에 따른 디코딩 장치(100)로 입력된다. 상기 디코딩 장치(100)에서 획득한 패이로드는 최종적으로 MAC 계층(60)으로 전달된다.
상기 디코딩 과정을 수행하기 위한 본 실시예의 OFDM/OFDMA 방식을 지원하는 시스템의 디코딩 장치는 도시한 바와 같이, 6개의 타일 또는 빈에 분포되는 다수개의 수신 신호들에 실린 패이로드을 추정하기 위한 디코딩 장치(50)로서, 상기 각 타일 또는 빈에 포함되는 파일럿 신호를 모니터링하고, 모니터링 결과에 따라 상기 수신 신호들을 보정하기 위한 무선 채널 추정/보정부(100); 및 보정된 복소수 신호 형태의 수신 신호를 디코딩하여 패이로드를 결정하기 위한 디모듈레이션/디코딩부(200)로 이루어질 수 있다.
본 발명의 사상을 구현한 상기 무선 채널 추정/보정부(100)는 도 15에 도시한 바와 같이, 상기 타일 또는 빈에 포함된 파일럿 신호의 감쇄 정도 및/또는 시간 지연을 추정하는 무선 채널 추정부(110); 및 상기 타일 또는 빈에 포함된 데이터 신호의 크기(amplitude) 측정에 상기 감쇄 정도를 적용하거나, 데이터 신호의 위상 측정에 상기 시간 지연을 적용하는 무선 채널 보정부(160)를 포함할 수 있다.
상기 무선 채널 추정부(110)는, 수신 신호들을 입력받기 위한 신호 입력단(112), 상기 신호 입력단(112)으로 입력되는 수신 신호들 중 파일럿 신호를 획득하기 위한 파일럿 버퍼(114), 및 상기 파일럿 버퍼에 버퍼링된 파일럿 신호의 크기 및 위상을 추정하기 위한 파일럿 채널 평가부(110)로 구현될 수 있다. 이 경우 상기 파일럿 신호를 제외한 상기 신호 입력단(112)으로 입력되는 수신 신호들은 채널 보상부(160)로 입력되고, 상기 채널 보상부(160)은 상기 파일럿 채널 추정부(110)의 추정 결과에 따라 입력되는 수신 신호들을 보정한다. 상기 수신 신호들은 위상으로 데이터를 기록하는 QPSK 모듈레이션 신호이므로, 상기 수신 신호들의 보정 과정 중 특히 시간 지연에 대한 보상이 중요하다. 상기 시간 지연에 대한 보상은 상기 파일럿 신호에 대한 시간 지연이 0이 되도록 신호의 검출 시점을 늦추는 것으로 수행될 수 있다. 수신 신호들의 보정은 하기 도 16의 수신 버퍼(260)에 보정된 값을 기록하는 것으로 완료된다. 앞서 언급한 넌코히어런트 방식의 디코딩 같이, 구현에 따라서 상기 무선채널 추정/보정부(100)는 생략될 수 있다.
본 실시예의 상기 디모듈레이션/디코딩부(200)는 도 16에 도시한 바와 같이, 입력되는 QPSK 모듈레이션된 신호를 버퍼링하기 위한 수신 버퍼(260); 상기 수신 버퍼에 버퍼링된 수신 신호가 각 패이로드 후보값으로 판정될 수 있는 개연성에 대응하는 디코딩 메트릭스를 생성하기 위한 개연성 메트릭스 생성부(210); 이전 프레임에서 결정되었던 이전 패이로드가 기록된 이전 패이로드 기록부(280); 및 패이로드 후보값들 중 최대 디코딩 메트릭을 가지는 값 또는 상기 이전 패이로드를 패이로드로 결정하기 위한 패이로드 결정부(270)로 이루어진다.
구현에 따라 상기 개연성 메트릭스 생성부(210)는, 상기 수신 버퍼(260)에 버퍼링된 수신 신호로부터 상관 메트릭스를 생성하기 위한 상관 메트릭스 생성부(220); 및 모든 패이로드 후보값에 대하여 지정된 상기 상관 메트릭스의 일부 집합을 합산하여 디코딩 메트릭스를 생성하기 위한 디코딩 메트릭스 생성부(240)로 구성될 수 있다. 또한, 상기 상관 메트릭스를 저장하기 위한 상관 메트릭스 버퍼(230)를 더 구비할 수 있다. 또한, 도 14에서 수신 버퍼(220)를 디모듈레이션/디코딩부(200)에 포함되는 구성요소로 표시하였지만, 관점에 따라서는 디모듈레이션/디코딩부(200)와 독립적인 구성요소로 볼 수도 있다.
상기 수신 버퍼(220)는 서브 채널을 구성하는 각 타일 별로 수신 신호를 버퍼링하기 위한 다수개의 타일 버퍼를 포함할 수 있다. 상기 휴대 인터넷 규격을 따르는 일실시예의 경우 타일 버퍼 #0 내지 #5로 식별되는 6개의 타일 버퍼로 이루어진다. 상기 타일 버퍼 #0(타일 0에 대한 버퍼)에는 0번에서 47번으로 식별되는 48개의 수신 신호 중 0번 에서 7번까지의 수신 신호가 저장되며, 타일 1의 버퍼에는 8번에서 15번까지의 수신 신호, 타일 2의 버퍼에는 16번에서 23번까지의 수신 신호가 저장되며, 동일한 과정이 반복되어 최종적인 타일 6의 버퍼에는 40번에서 47번까지의 수신 신호가 저장된다.
디모듈레이션에 필요한 기본 벡터 신호 세트를 생성하기 위한 기본 벡터 생성부(225)를 더 포함할 수 있으며, 상기 기본 벡터 생성부(225)는 8개의 기본 벡터의 패턴을 기록한 디모듈레이션 테이블을 포함할 수 있으며, 상기 기본 벡터의 패턴 정보를 리딩하여 디모듈레이션 수행에 필요한 기본 벡터 신호를 생성한다. 여기서, 상기 기본 벡터는 각각 0에서 7까지의 값을 나타낸다. 상기 표 5에서 상기 디모듈레이션 테이블의 첫번째 열(column)의 값을 적용한 결과값이 m00이고, 마지막 여덟번째 열(column)의 값을 적용한 결과값이 m07이다.
상기 패이로드 결정부(270)는 상기 디코딩 메트릭스 생성부(240)가 생성한 디코딩 메트릭스 중 최대 메트릭 및 둘째 메트릭을 판정하고, 상기 최대 메트릭 및 둘째 메트릭을 이용하여 도 8 내지 도 13에 도시된 방법 중 하나의 방법으로 패이로드를 결정한다. 도 8 및 도 13에 도시된 패이로드 결정 방법을 수행하기 위해서는 이전 프레임의 패이로드를 기록하기 위한 이전 패이로드 기록부(280)를 더 구비할 수 있다. 상기 이전 패이로드 기록부(280)에는 현재 프레임에서 결정된 패이로드를 기록한다.
이상을 통해 본 발명의 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명의 범위에 속하는 것은 당연하다.