KR101098293B1 - 무선 통신을 위한 구형 디코더 - Google Patents

무선 통신을 위한 구형 디코더 Download PDF

Info

Publication number
KR101098293B1
KR101098293B1 KR1020040016761A KR20040016761A KR101098293B1 KR 101098293 B1 KR101098293 B1 KR 101098293B1 KR 1020040016761 A KR1020040016761 A KR 1020040016761A KR 20040016761 A KR20040016761 A KR 20040016761A KR 101098293 B1 KR101098293 B1 KR 101098293B1
Authority
KR
South Korea
Prior art keywords
search
candidate
candidates
matrix
cost
Prior art date
Application number
KR1020040016761A
Other languages
English (en)
Other versions
KR20040081713A (ko
Inventor
데이비스린다메리
가렛데이비드
호츠왈트버트란드엠
브링크쉬테판텐
Original Assignee
알카텔-루센트 유에스에이 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/389,690 external-priority patent/US7822150B2/en
Application filed by 알카텔-루센트 유에스에이 인코포레이티드 filed Critical 알카텔-루센트 유에스에이 인코포레이티드
Publication of KR20040081713A publication Critical patent/KR20040081713A/ko
Application granted granted Critical
Publication of KR101098293B1 publication Critical patent/KR101098293B1/ko

Links

Images

Abstract

코딩된 전송 내 정보를 결정하는 디코딩 방식은 전송될 수 있을 훨씬 더 많은 수의 조합들에서 후보 심볼 조합들의 수를 감소시키는 구형 디코더 후보 검색을 포함한다. 일 예에서, 구형 디코더(24)는 후보 검색의 결과들을 제공하는 재귀, 누적 비용 함수의 일부로서 채널 행렬(H)의 상부 삼각 행렬(U)를 사용한다. 후보검색은 전송될 수 있을 조합들을 나타내는 계층 혹은 트리 구조(32) 내 심볼들을 고려하는 것을 포함한다. 비용 함수는 계층을 통해 검색이 진행될 때 이용가능한 조합의 비용을 증분적으로 누적한다. 심볼이 유효한 후보가 아닌 것으로 결정되는 즉시, 이 심볼을 포함하는 모든 이용가능한 조합들은 이들을 고려함이 없이 곧바로 버린다.
무선 통신 검출, 상부 삼각 행렬, 비용 함수, 구형 디코더, 트리 구조

Description

무선 통신을 위한 구형 디코더{Spherical decoder for wireless communications}
도 1은 이 발명에 따라 설계된 구형 디코더를 포함하는 수신기를 구비한 코딩된 정보를 송신하는 시스템의 예를 도시한 개략도.
도 2는 복수의 이용가능한 심볼 조합들을 나타내는 계층 및 이러한 계층에서 후보 검색을 수행하는 방법의 예를 도시한 개략도.
도 3은 이 발명에 따라 설계된 구형 디코더를 구비한 수신기의 선택된 부분들의 구조예를 도시한 개략도.
도 4는 도 3의 실시예에 유용한 메모리 포맷 예를 도시한 개략도.
도 5는 도 3의 실시예의 선택된 부분을 보다 상세히 도시한 개략도.
도 6은 분해 기술을 요약한 흐름도.
도 7은 또 다른 분해 기술을 요약한 흐름도.
*도면 주요 부분에 대한 부호의 설명 *
20 : 무선 통신 시스템 22 : 송신부
24 : 수신부 26 : 안테나
28 : 수신 안테나 30 : 노드
32 : 트리 구조
본 발명은 일반적으로 무선 통신에 관한 것이다. 특히, 본 발명은 무선 송신들을 검출하는 것에 관한 것이다.
셀룰러 네트워크들을 사용한 무선 통신들이 보급되어 점차 사용되고 있다. 이러한 통신의 이용가능성을 증대시키려는 요구는 이용가능한 채널들(즉, 무선 정보를 송신할 수 있게 하는 주파수들)의 보다 효율적인 사용을 필요로 한다.
복수의 안테나 송신들을 사용하기 위한 여러 가지 방식들이 제안되어 있다. 무선 송신들은 종종 비트들 자체의 전송보다는 정보의 비트들을 나타내는 심볼들을 이용한다. 비트들을 이러한 심볼들에 매핑시키게 되면 한 번에 한 채널로 송신될 수 있는 정보량(비트 수)이 늘어난다. 종래의 기술들은 인코딩된 비트 스트림을, 캐리어 웨이브의 변조들로서 송신되는 성상(constellatioin)에서 선택한 복소수-값 심볼 시퀀스에 매핑시키는 것을 포함한다. 그러나, 보다 높은 차수의 심볼당 비트로 인코딩하는 기술들이 복수의 안테나들에 사용될 때 매우 많은 수의 비트 스트림들이 수신될 수 있기 때문에 어려움이 존재한다.
이러한 비트 인코딩 기술들에 대한 포맷들의 예로서는 QPSK, 8-PSK 및 16-QAM을 포함한다. 각각의 인코딩 방식에 있어서, 임의의 주어진 시간에 송신될 수 있는 정보량은 심볼 내 유효한 성상 포인트들 개수에 따라 증가한다. 예를 들면, QPSK를 사용할 경우엔 2비트들이 동시에 송신될 수 있다.
무선 통신 시스템들의 수율(throughput)을 증대시키는 또 다른 방법은 동일 채널을 통해 동시에 신호들을 송신하기 위해 하나 이상의 송신 안테나를 사용하는 것을 포함한다. 복수의 송신 안테나들 및 복수의 수신 안테나들(예를 들면, 복수-입력, 복수-출력 "MIMO" 혹은 BLAST 시스템들)을 사용하여 높은 데이터 전송률이 가능하다. 그러나, 보다 높은 차수의 심볼당 비트로 인코딩하는 기술들이 복수의 안테나들에 사용될 때는 매우 많은 수의 수신될 가능성 있는 비트 스트림들이 가능해지기 때문에 어려움이 나타난다. 예를 들면 복수의 안테나들에 QPSK가 사용될 때, 다수의 가능한 조합들이 존재한다. 예를 들면, 4개의 송신 안테나들이 사용될 때에는 256개의 가능한 송신 조합들이 있다. 8-PSK 혹은 16-QAM 사용시 복잡도는 극적으로 증대한다. 예를 들면, 16-QAM을 사용하는 4개의 송신 안테나들이 있을 때, 채널로 동시에 송신될 수 있는 심볼들의 서로 다른 조합들이 65,536개가 존재한다. 더구나, 각 안테나로부터의 전송이 다른 안테나의 전송들에 겹쳐진다.
수신기측에서의 검출 기술은 무엇이 송신되었는지를 효율적으로 그리고 정확하게 결정해야 한다. 안테나들로부터 전파 경로들의 각각에 대해 채널이 정확히 추정되어야 한다. 이어서 수신된 심볼 세트들에 채널 추정을 사용하여 송신된 벡터들의 최상의 추정을 결정한다. 4개의 송신 안테나들 및 16-QAM 인코딩 기술의 경우에, 65000개 이상의 이용가능한 송신 조합을 빠짐없이 계산하는 것은 비현실적이다.
복수의 안테나들이 동일 채널로 동시에 송신할 때 발생하는 중첩과 조합된 인코딩된 전송들의 복합 특성은 복수 안테나 구성에서 이러한 코드들의 사용에 의해 부과되는 계산상의 요건들을 크게 증가시킨다.
따라서, 많은 수의 송신될 수 있을 조합들을 산출하는 포맷으로 코딩된 정보를 갖는 송신들을 디코딩하기 위한 향상된 기술에 대한 필요성이 있다. 이것은 특히 복수 송신 안테나들을 포함하는 시스템들에서 그러하다. 이 발명은 이러한 필요성을 해결한다.
일반적으로, 본 발명은 이용가능한 조합들의 각각을 고려하지 않고 많은 수의 이용가능한 심볼 조합들을 감소된 수의 후보들로 감소시키는, 수신된 코딩된 심볼들을 검출하는 방법에 관한 것이다. 이때 감소된 수의 후보들은 수신된 정보를 결정하기 위해 선택된 검출 알고리즘에서 사용될 수 있다.
본 발명의 일 예는 벡터 내 매 심볼에 비용을 점증적으로 할당하는 비용 함수를 사용하는 것을 포함한다. 일 예에서 비용 함수는 이용가능한 조합에서 적어도 하나의 다른 심볼들과 연관된 비용에 종속하는, 이용가능한 조합 내의 적어도 하나의 심볼(즉, 벡터)을 비용과 연관시킨다. 일단 제 1 이용가능한 심볼이 후보 조합들 중 한 조합의 유효 부분이 아닌 것으로 결정되면, 이용가능한 심볼들이 모든 이용가능한 조합들을 포함하는 계층에서 서로 연관되어, 계층 내 하위 레벨 혹은 종속된 레벨들로부터의 제 1 심볼과 조합될 수 있을 모든 심볼들이 제 1 심볼이 버려지자마자 버려질 수 있다.
본 발명의 일 예는 조합에서의 각 심볼이 계층에서 상위 레벨에서 하위 레벨로 이동하는 것이 고려될 때 이용가능한 조합들로 계층을 통해 링크되는 심볼들과 연관된 비용을 재귀적으로(recursively) 그리고 점증적으로(cumulatively) 증분시키는 것을 포함한다. 증분 비용는 검색 반경 값과 비교된다. 일단 이용가능한 심볼이 반경 값보다 큰 연관된 비용을 갖는다면, 이것은 계층 내 하위의 종속된 레벨들에 조합될 수 있을 모든 심볼들과 함께 버려진다(즉, 후보들의 세트에서 제외된다).
본 발명의 하나의 대표적 구현은 고려되는 이용가능한 후보와 연관되는 비용을 결정하기 위해서 채널 행렬의 삼각 행렬 표현을 사용하는 것을 포함한다.
본 발명의 방식은 후보들이 아닐 수도 있을 99% 대부분을 직접 고려하지 않고, 이용가능한 심볼 조합들 수의 대략 1%일 수 있는 다수의 후보 심볼 조합들을 신속하게 얻을 수 있는 후보 검색을 포함한다. 이것은 모든 이용가능한 후보들을 평가하는 것에 의존하는 종래의 디코딩 방식들에 비해 실질적인 이점 및 향상을 나타낸다.
이 발명의 여러 가지 특징들 및 이점들은 현재 바람직한 실시예의 다음의 상세한 설명으로부터 이 기술에 숙련된 자들에게 명백하게 될 것이다.
도 1은 무선 통신 시스템(20)을 개략적으로 도시한 것이다. 송신부(22)는 무선 통신 채널들을 통해 수신부(24)와 통신한다. 일 예에서, 송신부(22)는 셀룰러 통신 네트워크의 기지국이다. 수신부(24)는 다양한 형태들을 취할 수 있다. 이 발명에 따라 설계된 시스템에서 유용한 수신기들의 예로서는 셀룰러폰, 랩탑 컴퓨터들, PDA(personal digital assistant) 및 이들 중 하나 이상의 특징들을 결합한 장치들을 포함한다. 물론, 이 발명은 임의의 특정 송신기 혹은 수신기 장치에 한정되는 것은 아니다.
도 1에 개략적으로 도시된 바와 같이, 송신부(22)는 복수의 안테나들(26)을 통해 신호들을 송신하는 능력을 갖추고 있다. 일 예에서, 각각의 안테나는 동일 채널 주파수를 통해 동시에 송신한다. 이 예에서 수신부(24)는 복수의 수신 안테나들을 포함한다. 이 특정의 예는 4개의 송신 안테나(26A-D)와 4개의 수신 안테나(28A-D)를 구비하고 있다. 알려진 바와 같이, 복수 송신 안테나들 및 복수 수신 안테나들은 다입력, 다출력(MIMO) 시스템을 제공한다. 본 발명은 MIMO 시스템들에 사용에 적합하나 이러한 시스템들로 한정되는 것은 아니다. 수신된 정보를 효과적으로 디코딩하는 본 발명 방식의 능력을 설명하기 위해서 MIMO 예들을 설명한다.
4개의 안테나들이 동일 채널로 신호들을 동시에 송신할 때, 채널은 채널 행렬로 나타낼 수 있다. 채널 행렬은 NxM 행렬이며 여기서 M은 송신 안테나(26)의 수이고 N은 수신 안테나(28)의 수이다. 채널 행렬은 동시에 안테나들(26)에 의해 송신되고 안테나들(28)에 의해 수신되는 서로 다른 스트림들을 나타내는 복소수 페이딩 계수들로 구성된다.
본 발명의 설계된 시스템에서 유용한 하나의 예시적인 검출 과정은 수신된 전송들의 콘텐트를 결정 혹은 검출하기 위한 비용 함수의 일부로서 채널 행렬을 사용하는 것을 포함한다. 이러한 발명의 하나의 예시적인 예는 송신된 정보의 콘텐트를 결정하기 위한 비용 함수를 포함하는 MLAPP(maximum likelihood a posteriori probability) 알고리즘을 검출 방식의 일부로서 사용한다. 일 예에서, 각 후보(즉, 잠재적으로 수신된 심볼들의 세트)에 채널 행렬을 곱하여, 안테나들(26)로부터의 전송이 이 후보를 포함할 때 수신기에 의해 수신되었음을 표시하게 한다. 즉, 후보와 채널 행렬과의 곱은 예상된 수신 벡터들을 제공한다. MLAPP 알고리즘은 그 후보가 송신되었다고 가정하였을 때, 수신 안테나들(28)에 의해 수신하게 되는 것과 그 곱을 비교하는 것을 포함한다. 이 곱과 수신하게 되는 것 간의 차이가 비용 함수 값을 제공하며, 이것은 그 후보가 가장 가능성 있게 송신된 심볼인지 여부를 나타낸다.
본 발명은 복수의 송신 안테나들이 동시에 서로 다른 스트림들을 송신하는 상황에서도 이러한 방식을 사용하는 능력을 포함할 수 있다. 송신될 가능성 있는 심볼들의 모든 이용가능한 조합들을 빠짐없이 확인하는 것은 가능하지 않기 때문에, 이 발명은 송신 정보를 포함할 가장 가능성이 크고 MLAPP 알고리즘(혹은 또 다른 선택된 검출 기술)을 사용하여 처리된 것들인 후보들의 초기 추정을 제공하는 구형 디코더를 사용하는 것을 포함한다. 이 구형 디코더의 초기 추정을 이 명세서에선 "연속 ML 추정"이라 한다.
후보 검색은 이용가능한 심볼들의 각각을 고려하지 않고, 송신될 가능성이 있고 이용가능한 후보들 수를, 처리에 용이한 수준으로까지 신속하게 감소시킨다. 후보 검색은 각 안테나에 연관된 후보들 간의 관계를 이용하여 점증적으로 비용 함수값을 결정한다. 후보 검색은 후보 심볼 조합들의 계층 관계 혹은 트리 구조를 이용한다. 후보 검색의 비용 함수는, 트리 구조의 한 레벨에 어떤 후보에 연관된 비용을 결정함으로써 종속 가지들 내 모든 다른 후보들이 제거될 수 있는지 여부가 결정될 수 있게 설정된다.
일 예에 따라, 검색이 완료되었을 때 원하는 나머지 후보들의 수를 산출하기 위해 선택되는 검색 반경을, 선택된 후보의 비용 함수 값과 비교한다. 후보의 비용이 검색 반경 밖에 있을 땐 언제나, 이 후보 및 트리 구조의 종속 가지들의 모든 다른 후보들이 잠재 후보 리스트에서 제거된다.
일 예에서 비용 함수는 송신 안테나들에 대해 양성 총합(positive definite summation)으로 공식화되고, 검색 공간 트리의 큰 부분들을 잘라내기 위해 검색 반경을 사용한다. 본 발명의 하나의 대표적인 구현예는, 어떤 선택된 후보에 연관된 비용(즉, 비용 함수 값)을 트리 구조에서의 선택된 후보에 연결되어 있고 사전에 고려된 후보(즉, 고려 중의 조합에서 상위 레벨에 있는)에 연관된 비용에 종속되게 하여 후보들의 수를 감소시키는 검색 비용 함수의 일부로서 채널 행렬을 변환한 것을 사용하는 것을 포함한다. 이러한 점에서, 후보 검색은 이전에 고려된 후보에 관한 비용 함수 결정에 근거하여 상당수의 후보들을 제거시킬 수 있는 재귀 방식을 포함한다. 일 예에서, 후보 검색은 수신 안테나들(28)에 수신된 것과 변환된 채널 행렬로 곱해진 후보의 곱(product)에 근거한 재귀 비용 함수를 이용한다.
예를 들면 16-QAM 인코딩으로 도 1의 예시된 4개의 송신 안테나 구성을 사용할 경우, 후보 심볼들 중 어느 것이 안테나(26A)를 사용하여 송신되었을 가능성이 가장 큰 지를 결정하기 위해 재귀 비용 함수를 사용하여 제 4 안테나(26A)가 고려된다. 비용 함수를 만족시키지 못하는(즉, 비용 함수 값이 너무 큰) 각 후보에 대해, 안테나(26D)에 대한 후보 값에 종속하는 안테나들(26C, 26B, 26A)에 연관된 모든 후보들은 구체적으로 고려할 필요없이 제거될 수 있다. 또한, 안테나(26D)에 의해 송신되었을 수 있는 많은 이용가능한 심볼들은 이들을 고려할 필요없이 즉시로 버려질 수 있다.
도 2는 노드(30)에서 시작하는 예로서의 후보 검색을 도시한 것이다. 예로서의 트리 구조(32) 부분은 송신될 가능성 있는 심볼들의 이용가능한 조합들을 나타낸다. 4개의 송신 안테나들 및 16 QAM을 포함하는 상황에서, 계층은 각 안테나와 연관된 16개의 노드들과 각 레벨에 이들 각각으로부터의 16개의 자(child) 노드들을 구비한다. 이 예에서, 후보 검색은 계층(32)의 상위 레벨에서 시작하여 비용 함수 한계 값에 도달될 때까지 하위 레벨들로 아래로 나아간다. 일단 어떤 노드의 후보에 연관된 비용 함수가 한계값을 초과하면, 이 후보 및 종속 노드들(즉, 모든 자(child) 노드들) 내 모든 다른 후보들은 이들이 유효한 후보들이 아닌 것으로 하여 버려진다. 이어서 검색은 다시 한 레벨 위로 이동하여 계속된다.
예를 들면, 안테나(26D)에 의해 송신되는 후보에 대응하는 노드(30)에서 시작하는 검색은 다음 하위 레벨(i=3)로 진행하며, 여기서 노드(40)의 후보 심볼에 연관된 비용 함수 값을 결정한다. 이 예에서, 노드(30)에서의 후보의 비용 함수 값(이 경우 노드(30)에 대한 비용 함수 값은 트리의 루트이기 때문에 제로이다)이 노드(40)의 후보의 비용 함수 값에 더해진다. 이 값은 여전히 비용 함수 한계(즉, 검색 반경) 내에 있다.
검색은 노드(50) 아래로 계속하여, 여기서 대응하는 후보 심볼은 허용가능 한계 밖의 비용 함수 값(노드(40)의 후보와 연관된 것을 포함하여)을 갖는다. 이때, 후보(50) 및 이 후보를 포함하는 모든 이용가능한 조합들은 추후의 디코딩에 유효하지 않은 후보들로서 버려진다. 노드(52)에서도 동일하다.
노드들(54, 60, 72)의 후보들은 한계 내의 비용 함수 값을 누적하여 갖기 때문에, 유효한 후보로서 디코딩하기 위해 조합 혹은 벡터가 노드(30)에서 노드(40), 노드(54), 노드(60) 및 노드(72)로 전달된다. 일단 알고리즘이 검색 트리의 최하위 레벨에 도달하면 유효 후보가 고려될 뿐이다.
노드들(42, 44, 62, 64, 70, 74)에서의 후보는 각각은 허용 한계를 초과하는 비용 함수 값을 갖고 있는 것으로 결정되므로 이들은 버려진다. 예를 들면 노드(42)의 후보를 포함하는 모든 이용가능한 조합은 이 후보의 비용 함수 값이 허용범위 밖인 것으로 결정되는 즉시로, 이 후보를 포함하는 조합들 어떠한 것도 고려함이 없이, 제거된다.
따라서, 본 발명에 의해, 수용가능한 페이스로 디코딩 처리가 진행될 수 있는 용이한 처리 수준까지 잠재 후보 수가 신속히 감소될 수 있다. 일 예에서, 가능한 후보들의 초기 검색 후보의 감소로 디코딩 처리할 남은 후보들은 총 이용가능한 심볼 조합들의 수의 약 1% 정도가 된다. 일 예에서, 후보 검색은 약 500개의 후보들로 된다. 이것은 4개의 송신 안테나들(26) 및 16-QAM 인코딩 방식을 갖는 구성에서 있을 수 있는 65,000개 이상의 서로 다른 조합들에 비해 현격한 감소이다.
다음에 기술되는 일 예에서, 채널 행렬은 상부 삼각 행렬(upper triangular matrix)로 변환된다. 후보 검색 비용 함수의 일부로서 삼각 행렬(상 혹은 하)을 사용하는 것은 한 안테나에 대해 선택된 후보에 관한 결정이 이 후보에 대한 비용 함수에 기초하여 종속 가지들 상의 모든 다른 후보들을 제거할 가능성을 갖게 하는 비용 함수의 재귀 특성을 제공하는 한 방법이다.
이 예에 대한 하나의 주요 가정은 채널이 평탄한 페이딩이고 채널 계수들이 단일의 복소수 표현을 갖는다는 가정이다. 이것은 주파수 선택적 페이딩을 제거하기 위해 수신기(24)의 앞단에 공간-시간 등화기와 더불어 이 등화기로부터 상관된 잡음을 보상하기 위한 잡음 백색화 필터를 필요로 할 수도 있다. 또 다른 옵션은 각 채널을 평탄하게 보이게 하기 위해 직교 주파수 분할 다중화(OFDM)를 사용하는 것이다. 또한, APP 검출기에서의 잡음은 백색잡음인 것으로 가정한다.
송신 신호 y는 다음 수학식 1로 표현될 수 있다.
y = Hs + n
이 예에서는 Pc = 2Qc를 성상 심볼(constellation symbol) 당 포인트들의 수로 놓고, 예를 들면 16-QAM의 경우 Qc=4, Pc=16이다. 다음의 변수들은 수학식 1을 정의한다.
Figure 112009014645025-pat00001
성상 심볼들의 송신된 Mx1 벡터로서, 어떤 복소수 성상(예를 들면 QPSK)으로부터 선택된 엔트리들, M.Qc 비트들을 나른다;
Figure 112004010289862-pat00002
복소수 페이딩 계수들의 NxM 채널 행렬;
n Nx1 잡음 벡터로서, 엔트리들은 복소수 가우시안 랜덤 변수들;
y 수신된 Nx1 벡터 채널 심볼(즉 채널 관측들).
밑줄이 그어진 스칼라 변수들은 복소수이고 모든 벡터들/행렬들은 복소수 엔트리들을 갖는 것에 유의한다.
선형 전처리는 채널 행렬의 삼각 형태로서 삼각 MxM 행렬을 계산하는 것을 포함한다. 일 예에서, 채널 행렬의 삼각 행렬 표현은, U H U = H H H로 되는(여기서, (.)H는 복소수 공액 전치(complex conjugate transpose)를 나타냄), 대각 엔트리들 uii이 실수인 상부 삼각 행렬
Figure 112011014581230-pat00003
이다. 또 다른 예에서, LL H = H H H로 되는, 실제 대각 엔트리들 lii이 실수인 하부 삼각 행렬이다. 원칙적으로, 삼각 행렬은 콜레스키(Cholesky) 혹은 QR 분해에 기초할 수 있고, 이를 결정하는데 사용될 수 있는 몇 가지 알려진 방법들이 있다. 본 발명은 후술하는 채널 행렬 H의 삼각 행렬 표현을 얻는 방법을 포함할 수 있다.
일 예에서 최상의 후보를 찾는 ML(maximum likelihood) 검색은 모든 가능한 송신 후보들에 대한 비용 함수를 구하고 가장 낮은 전체 비용을 가진 후보를 선택하는 것을 포함한다. 너무 복잡하여 빠짐없이 검색할 수 없는 시스템에서는 후보들 중에서 최소 비용 해(solution)를 산출하는 가장 높은 기회를 갖는 후보들의 타겟팅된 서브세트를 검색하는 것이 중요하다. 예로서의 구형 후보 검색 알고리즘을 구현함에 있어 중요한 단계는 삼각 행렬(예를 들면 U) 및 검색 중심점
Figure 112009014645025-pat00050
에 의존하도록 비용 함수를 공식화하는 것이다. 일단 검색 중심점이 선택되었으면, ML 검색을 위한 비용 함수는 다음 수학식 2와 같이 다시 공식화될 수 있다(상부 삼각 행렬인 경우).
Figure 112004010289862-pat00005
상수 C는 H 및
Figure 112009014645025-pat00006
에만 의존하므로 모든 가능한 상이한 후보들 s에 대해서 일정하다. 후보 검색의 경우에, 값들의 상대적 분포만이 중요하고 J의 절대값은 그렇지 않다.
상부 삼각 행렬 U는 각각의 송신 안테나에 대해 수학식 2를 항들의 합산으로 공식화하는데 사용된다. 이것은 예로서의 후보 검색 구형 알고리즘의 재귀, 고속 감축 능력을 제공한다. 수학식 3에서 아래에 보인 합산은 부호가 양으로 정해진 비용 함수를 생성한다. 합산에서 각 항은 비용 함수의 값을 항상 증가시킬 것이다. 그러므로, 각각의 송신 안테나에 대한 총 비용 함수의 계산에서 비용 값이 미리 정해진 제약값을 초과할 경우, 추가 항들이 총 비용을 더 높아지게 할 뿐이기 때문에 이들 추가 항들을 계속 계산할 이유는 없다. 구형 알고리즘에서의 밸런스는 ML 해에 이르게 하지 않는 검색 공간 내 많은 가지들(branches)을 제거하면서 적당한 수의 경로들을 따라 검색이 계속되도록 이러한 비용 문턱값 혹은 검색 반경을 적합하게 설정하는 것이다.
수학식 2에서 첫 번째 항은 상부 삼각 행렬 U에 대해 합산으로 배열될 수 있다. 합산은 송신 안테나들 개수에 대한 것으로, 0 ≤i <M 이다. 구형 알고리즘은 수학식 3의 부등식을 해결하기 위해 짧은 후보 리스트만을 허용하는 반경 r을 고른다. 일단 반경이 선택되었다면, 부등식에서 벗어나는 후보들은 검색에서 제외될 수 있다. 검색 트리를 신속하게 제거하는 키는 모든 이용가능한 후보들을 평가함이 없이, 부등식에서 첫 번째 몇 개의 항들로 검색 반경에서 이미 벗어나는 후보들을 확인하는 것이다.
Figure 112004010289862-pat00007
여기서, 검색 반경 r.
이러한 설명 하에서, 이 기술에 숙련된 자들은 검색 반경이 이들의 특정의 상황의 요구를 충족시키는 적합한 값을 선택할 수 있을 것이다. 예를 들면, 검색 반경은 검색시간을 줄이는 것이 가능한 소수의 후보들이 나오게 설정될 수 있다. 그러나, 동시에, 반경을 너무 작게 설정하면 디코딩 방식의 정확도 혹은 신뢰도를 결정하기 위해 종래의 방식에서 사용되는 덜 소프트한 정보가 나오게 된다. 또 다른 옵션은 발견되는 각각의 유효한 후보로 검색 반경을 계속적으로 줄이는 것이다. 이것은 제약된 ML 해를 구하는 검색시간을 최소로 되게 할 것이지만 소프트 정보를 생성하는데 필요로 되는 추가 후보들의 수를 제한시킬 것이다. 본 설명으로부터 이점을 얻는 이 기술에 숙련된 자들은 이러한 양립하는 고려들을 가늠하여 소정의 요건을 만족시키는 유용한 검색 반경에 이를 것이다.
합산은, 안테나 i에 대한 각각의 항들을 다음 식(4)에 보인 바와 같이 Touter로 표기하여, 재귀적으로("누적 경로 메트릭") 공식화될 수 있다.
Figure 112004010289862-pat00008
Figure 112009014645025-pat00009
는 송신 안테나 i의 성상 심볼
Figure 112009014645025-pat00010
에 관해 가정의 선택에 기초하여 메트릭 증분으로서 간주될 수 있다.
후보 검색 구형 비용 함수에 대한 재귀 식은 검색 반경 제약에 기초하여 검색 트리 가지의 가지치기가 수행되게 하는 벡터 성상 심볼들의 일부에 대한 트리-검색으로서 간주될 수 있다. 트리의 제 1 레벨은 시스템의 마지막 송신 안테나를 나타내며, 평가할 후보들의 Pc 조합들이 있다. 각각의 이용가능한 후보는 트리 레벨 i=0에서 최종의 후보에 도달할 때까지 밑으로 가지들이 더 있는 Pc를 갖는다.
도 2를 참조하면, 검색은 트리(32)의 루트(30)에서 시작하며 레벨 i-1에 대응하는, 성상 심볼
Figure 112009014645025-pat00011
(송신 안테나 M-1에서 나오는)에 관한 가정을 갖고 분기한다. 트리에서 각 노드는 비용 메트릭의 Tinner 성분(식(4))을 계산하기 위해 그 노드에 도달하는데 사용된 이전 송신 후보들을 사용하고, 이어서 현 레벨에 대한 Pc 가정들 각각을 테스트한다. 후보들 중 어느 하나에 연관된 비용 함수 값이 검색 반경을 초과한다면, 트리 아래로 계속 검색할 필요가 없다.
트리에서 노드가 제거될 수 있는 레벨이 높을수록 검색 공간이 현저히 감소된다. 예를 들면, 트리의 레벨 i의 노드들을 제거시키면 2(MQ-iM) 후보들(4x4 16-QAM의 경우, i=3의 노드들을 제거함으로써 4096개의 노드들이 제거될 수 있고, i=2 및 i=1에 대해서는 각각 256 및 16개가 제거될 수 있다)이 제거된다. 검색은 검색 반경 제약 내의 트리를 통하는 모든 경로들을 통해 계속된다. 일단 유효 성상 벡터
Figure 112011014581230-pat00012
가 발견되면(예를 들면, 노드(30)에서 노드(40), 노드(54), 노드(60)으로의 검색 경로로 나타낸 벡터를 보인 도 2의 굵은 선), APP 후 처리 단계(복잡도가 감소된 ML-APP)에 포함될 APP 큐(queue)에 넣어진다.
검색 트리(32)는 트리 구획들로 분할될 수 있다. 트리 구획은 모(parent) 노드와 Pc 자(child) 노드들로 구성되고, Pc개의 이용가능한 성상 심볼들을 나타낸다. 한 트리 구획 내에서의 동작들은 병렬로 행해질 수 있다. 따라서, "스택 검색기"라고도 하는 트리 구획 검색엔진을 사용하여 트리 검색을 수행하는 것이 이점이 있다. 예로서의 스택 검색기 구조를 도 3-5에 개략적으로 도시하였다.
도 3 및 도 5를 참조하면, 사전 계산 유닛(100)과 검색기 유닛(102)을 포함하는 수신기(24)의 선택된 부분들이 개략적으로 도시되었다. 사전 계산 유닛은 신호들 y와 안테나들(26)로부터 송신되는 파일럿 신호들을 이용한다. 채널 처리 모듈은 채널 행렬 H(식(1)) 및 상부 삼각 행렬 U를 결정한다. 검색 센서 결정 모듈(106)은
Figure 112011014581230-pat00052
를 결정한다. 사전 계산 모듈은 Tinner의 값들(식(11)) 및 심볼 에러 값들을 결정한다.
사전 계산 유닛으로부터의 출력이 검색기 유닛(102)에 제공되고, 검색기 유닛(102)에서 후보 검색 모듈(110)은 비용 함수를 전술한 바와 같은 재귀 누적 방식으로, 이용가능한 심볼들에 적용한다. 복수-포트 스택(112)은 후보 검색 모듈(110)에 의해 고려된 각 후보에 연관된 비용 함수 값의 저장을 용이하게 한다. 스택 메모리(114)는 송신된 심볼들의 이용가능한 조합들을 나타내는 계층을 통해 진행할 때 후보 검색 모듈에 의해 사용될 스택 메모리(114) 내 값들에 대한 충분한 식별자 정보와 함께 비용 함수 값들을 적어도 일시적으로 저장한다. 후보 검색의 검색 반경 r 내에 있는 것으로 결정된 후보들은 이들이 MLAPP와 같은 선택된 디코딩 방식을 사용하여 디코딩될 수 있게 유효 후보 큐(116)에 넣어진다.
사전 계산 유닛(100)은 인입 채널을 감시하고 채널 행렬 H로부터 상부 삼각 행렬 U를 계산한다. 채널 행렬이 변경될 때 행렬 U만이 계산되어야 하므로, 이 행렬 U는 인입하는 큰 블록의 심볼들에 대해 일정하다. 상부 삼각화는 느리게 수행되기 때문에, 계산에서 어떤 많은 수의 반복적인 방법들이 사용될 수 있다. 사전 계산 유닛은 또한 수신된 심볼을 받아 연속 ML 추정값을 생성한다. 마지막으로, 사전 계산 유닛은 주어진 인입 심볼에 대해 다시 사용되는 값들의 일부를 사전에 계산할 수 있다.
제 2 유닛인 스택 검색 유닛(102)은 구(sphere) 반경 식(즉, 후보 검색 비용 함수)을 평가하여 유효 후보 큐로 전달하기 위해 한 세트의 유효 후보들을 발생시킨다. 트리의 각 레벨은 트리의 다음 레벨을 검색하기 위해 최대 Qc 후보들을 발생시킬 수 있다. 그러므로, 이 예는 현재 가지가 완전히 평가된 후에 나중에 추적하기 위해 부분적인 검색들을 저장할 수 있는 다중-포트 스택 구조를 포함한다.
2진 트리를 통해 검색하는 많은 방법들이 있다. 최소한의 중간 정보를 유지하는 가장 효율적인 방법은 깊이-우선(depth-first) 검색이다. 일 예에서, 검색은 항시 트리의 자(child) 노드로 가서 최하위 레벨까지 혹은 비용 함수가 문턱값을 초과할 때까지 계속하여 길을 따라간다. 이때, 검색은 나머지 노드들을 가진 차상위 레벨로 역행하여 다시 트리 아래로 진행한다.
깊이 우선 검색은 이러한 깊이 우선 검색 동안 재방문하기 위해 트리 내 가능한 노드들을 계속 유지하고 있을 방법을 필요로 한다. 후보들을 저장하는 한 예로서의 방법은 스택 메모리로서, 이곳에 일부 노드들이 넣어질 수 있고 검색 과정에서 나중에 재방문될 수 있다. 스택(114)은 LIFO(last-in first-out) 구조로 동작하며, 검색을 깊이-우선 방식으로 자동으로 오더링할 수 있다. 트리(32)의 제 1 레벨에서, 검색은 스택(114)에 모든 유효한 노드들을 넣는다. 이어서 마지막 노드를 불러내어 계속하여 다음 레벨에서 이 노드를 검색한다. 검색이 자율적으로 동작되게 하기 위해서, 현 검색 노드들에 관계된 모든 정보를 불러들일 수 있어야 한다(트리의 해당 레벨에 도달하는데 사용되는 모든 후보 심볼들만이 아니라 누적 비용 메트릭 등).
스택 검색기는 송신 안테나 i에서 Pc 성상 심볼들을 나타내는, 단일의 모(parent) 노드와 Pc 자(child) 노드들을 갖는 레벨 i의 트리 구획(tree section)에 작용한다.
도 4는 스택(114)의 예시적인 메모리 구조를 도시한 것이다. 예시적인 스택 검색기는 스택(114)에 3개의 정보로서, 트리(120)에서 현재의 레벨과, 트리(122)에서 이 레벨에 도달하는데 사용된 각각의 이전 안테나에 대한 후보들과, 누적 Touter 합(124)을 저장한다. 이들 3개의 정보로, 검색기(110)는 나머지 후보들에 관한 검색을 다시 시작할 수 있다. 트리 레벨을 처리하기 위한 모든 연관된 정보가 스택에 넣어지기 때문에, 단일의 검색기(110)가 서로 다른 심볼들로부터의 트리 검색들을 매우 쉽게 처리할 수 있고, 그럼으로써 복수의 검색기들이 피크 부하를 분담할 수 있게 된다. 스택의 최대 깊이는 송신 안테나들 개수에서 하나를 뺀 것에, 심볼 당 성상 포인트들의 수를 곱한 값이다. 실제로, 반경 조건을 적합하게 설정함으로써, 스택은 이러한 제한에 결코 가깝게 되지 않을 것이다.
실제 시스템은 인입하는 심볼들이 수신되는 속도를 조정하기 위해서 복수의 병렬 검색 엔진들을 필요로 할 수도 있다. 도 3은 복수의 검색기 유닛들(102)을 포함한다. 예를 들면, 전체 트리의 검색이 단일 수신된 벡터에 대해 300개의 클록 사이클들을 필요로 하고, 매 50 클록 사이클마다 새로이 수신된 벡터가 수신된다면, 구조는 6개의 병렬 검색기들(102)을 필요로 할 것이다. 트리 레벨을 처리하기 위한 모든 연관된 정보가 스택에 넣어지기 때문에, 연속 ML 추정값과 함께 스택 출력을 또 다른 검색기에 단순히 전달함으로써, 복수의 검색기 유닛들 간에 피크 검색 부하를 분담시키는 것은 간단하다. 스택 검색기 유닛이 이의 특정 검색을 먼저 마쳤다면, 또 다른 검색기의 검색을 완료시키는 것을 돕는 자원으로서 사용될 수 있다.
검색을 초기화하기 위해서, 루트 노드가 제로 누적 비용 메트릭을 갖고 스택에 넣어진다.
도 5는 하나의 선택된 예시적인 검색기 데이터 경로의 구조를 개략적으로 도시한 것이다. 예시적 구조는 스택(114)으로부터 값을 검색하고 132로부터 Tinner 곱(단지 트리의 이러한 특정 노드에 도달하는데 사용되는 후보들에만 기초한)을 취하고, 현 레벨에 대한 후보 성상 포인트들 각각의 부가적인 기여를 더한 후 Toute 값들을 산출하는 파이프라인(130)을 포함한다.
후보 Touter 값들의 각각은 그것들이 아직 유효한 후보들인지 결정하기 위해서 134에서의 반경과 비교된다. 구조는 단지 한 번에 하나의 검색 노드를 처리할 뿐이므로, 하나 이상의 유효한 결과가 있다면, 나머지 후보들은 스택(114)에 넣어진다. 유효한 후보들 중 하나는 그 특정의 가지 검색을 계속하기 위해서 파이프라인의 시작으로 다시 보내진다.
일단 검색기가 유효 후보들이 없는 노드를 찾게 되면, 스택으로부터 부분적인 검색 노드를 검색하여 그 가지를 처리하기 시작한다. 후보 검색이 검색 트리의 최하위 노드(즉, 도 2에서 레벨 i=0)에 도달할 수 있을 때, 유효 후보 큐에 이 후보 리스트를 전달한다. 검색은 검색 트리가 소진될 때까지, 혹은 수율 요건에 의해 지시되는 검색 후보 한계에 이를 때까지 후보들을 계속하여 평가한다.
이 예에서 검색기 구조는 최대 Qc의 유효 후보들(16QAM 변조 포맷의 경우 16개)을 생성할 수 있으나, 평균 유효 후보들의 수는 훨씬 낮다. 매 클록 사이클마다 파이프라인이 계속 동작되게 하기 위해서 스택은 (Pc-1)-포트 기입 메모리(하나의 결과가 파이프라인의 시작으로 항상 피드백됨)이어야 할 것이다. 15-포트 메모리는 구현하기에 극히 고가이다. 발생된 유효 검색 후보들의 실제 수는 알고리즘의 동적인 거동이지만 구 반경을 적합하게 선택함으로써, 평균 수는 Pc보다 훨씬 적다.
효율적인 하드웨어 구조를 구축하기 위해서, 하나의 해결책은 Pc 포트들보다 적게 사용하는 스택을 구축하는 것이다. 도 5의 개략도는 최대 X개의 유효 후보들을 발생시키고 이들을 Y 포트 스택 메모리에 보내는 검색기를 도시한 것이다. X 값이 Y 이하일 때, 스택은 단일 클록 사이클 내에 모든 곱들을 저장할 수 있다. X가 Y보다 크다면, 스택은 파이프라인을 중지시키고 모든 후보들을 저장하기 위해 복수의 클록 사이클들을 사용해야 한다. 대부분의 경우들을 커버하는 Y가 선택된다면, 구조는 16 QAM의 경우에 완전한 15-포트 기입 메모리를 구현할 필요없이 단일 클록 사이클 내에 동작할 수 있다. 예를 들면, 시뮬레이션에 따르면 트리 검색에서 각각의 검색 단계에 평균으로 단지 3-4개의 유효 후보들만이 생존함을 보였다.
그러므로, 4-포트 스택은 5개의 유효 후보들(즉, Y=4, X=5)을 취급할 수 있으면서도 매 사이클마다 구조가 계속 동작을 유지할 수 있다. 4개 이상의 유효 후보들이 발생되는 드문 경우들에 있어서, 검색기는 파이프라인을 일시적으로 정지시킨다.
다시, 채널 행렬의 삼각 행렬 표현의 결정에 있어서, 삼각 행렬을 제공하기 위해선 선형 전처리가 요구된다. 일 예에서, U는 통상 콜레스키(Cholesky) 혹은 QR에서 필요로 하는 제곱근 및 나눗셈 연산들을 행하지 않고 결정되는 바람직하다. 일 예에서, 본 발명의 방식은 분자 계산과 분모 계산을 분리하는 것에 근거하여 분해(decomposition)를 재 공식화하는 것을 포함한다. 또한, 2의 멱(power)으로 스케일링하는 것이 재귀 안정성을 유지한다.
MIMO 시스템에서 검출을 위해 구형 디코더를 사용할 때는, 채널 행렬 H가 갱신될 때마다 콜레스키 혹은 QR 인수분해가 결정되어야 한다. 표기를 쉽게 하기 위해서, MxM 행렬 A=H H H를 정의한다. 콜레스키 인수분해는 통상 제산 및 제곱근 연산들을 수반한다. 고정점 VLSI 구현에서, 제산 및 제곱근 연산이 최상으로 회피된다.
QR 분해는 콜레스키 분해에 밀접하게 관계되고 원하는 상부 삼각 행렬 U를 계산하는 택일적 수단을 제공한다. 행렬 H의 QR 분해는 다음 수학식 5와 같다.
H = QHR
여기서 R은 상부 삼각형이고 H와 동일한 크기(dimension)를 가지며(즉, NxM) Q는 직교 NxN 행렬, 즉 Q H Q=QQ H =I이다. U와는 크기가 달라도 행렬 R은 i,j=1,...min(N, M)에 대해 제로가 아닌 동일한 엔트리들을 포함한다.
VLSI 구현에서 제곱근 및 제산 연산들을 피하기 위해서, 도 6의 흐름도 150에 요약된, 신규의 콜레스키 분해 기술의 한 구현은 먼저 U의 원소들의 분자와 분모를 분리하는 것, 즉
Figure 112009014645025-pat00013
을 포함한다. 제 1 행(i=0)에 대해서, u00=sqrt(a00)=a00/sqrt(a00), 및
Figure 112009014645025-pat00014
등이 되고 w0=a00, 및
Figure 112009014645025-pat00015
이다. A는 대칭이기 때문에, 이의 대각 원소들은 실수이고, 따라서 분모 w0도 실수이다. 제 2 행(i=1)에 대해서, u11=
Figure 112009014645025-pat00016
이 된다. 제곱근 연산을 분모로 옮기면
Figure 112009014645025-pat00017
이 된다. 행을 완료하면
Figure 112009014645025-pat00018
, 및
Figure 112009014645025-pat00019
Figure 112009014645025-pat00020
인 결론을 산출한다.
후자에서, A의 대칭을 인식하며, 이로부터, 별도로 저장되어 있을 대각 원소들을 제외하고 상부 삼각 원소들을 덮어씀으로써 A에 대한 저장공간을 재사용할 수 있다.
각 행에 대한 이러한 패턴으로, U의 원소들을
Figure 112009014645025-pat00021
로 나타낼 수 있고, 여기서 wi=z0*,,,*zi이고, zi는 항상 실수이며, z0=a00, z1=(a11a00-|a10|2) 등이다. 각 행에 대한 vij 및 zi를 직접 계산하도록 재귀들이 수정된다. 실제로 이로 인해 다음과 같이 대안적인 분리된 인수분해가 된다.
VHWV=HHH
여기서 V는 상부 삼각 행렬이고 W는 실수값 가중치 1/wi를 갖는 대각 행렬이다.
통상의 콜레스키 인수분해의 제산 연산 및 제곱근 연산이 분자와 분모를 분리시킴으로써 재귀로부터 제거되었으며, 알고리즘의 이러한 구성으로, 이들 연산들은
Figure 112009014645025-pat00022
의 실제 값이 추후 계산에서 필요로 될 때까지 미루어 둘 수 있다. 그러나, 결과적으로, 재귀들의 결과들은 수치상 무한하여 (행렬 H에 따라) 고정점 구현에 문제를 야기할 수 있다. 다행히, 이 문제는 스케일링에 의해 쉽게 회피된다.
스케일링은 단지 2의 멱(즉, 2진 고정점 구현에서는 시프트 연산)으로 나눔으로써(혹은 곱함으로써) 각각의 행 연산 동안에 달성될 수 있다. 기본적으로, 목적은 인수들 zi를 0.25 내지 4 사이로 유지하는 것이고, 이에 따라 원소들
Figure 112009014645025-pat00023
를 스케일링한다. 따라서, vij=zici으로 되고, 여기서 ci는 2의 멱이다(1미만, 1 혹은 1보다 클 수 있음).
새로운 스케일링 및 분리된 콜레스키 인수분해의 복잡도는 O(M3/6) 복소수 곱셈 및 감산과 분자 및 분모 재귀 분리로 인한 부가적인 O(M3/6) 실수 계산이다. 인수분해 동안 제산이나 제곱근 연산들은 전혀 없다.
도 7의 흐름도 200에 요약된 본 발명의 또 다른 예의 구현에서,
Figure 112009014645025-pat00024
로 나타냄으로써 제곱근 연산 및 제산 연산을 회피하는 QR 분해가 도출된다. 이것은 다음 수학식 7의 분해에 대응한다.
H = ΦHK-1P
여기서 K -1의 원소들(NxN 대각 및 실수 행렬)은 1/ki에 의해 주어진다. 상부 삼각 행렬 P는 복소수 NxM 행렬 H에 스케일링된 기븐스 회전(Givens rotation)들을 적용함으로써 얻어진다.
알고리즘은
Figure 112009014645025-pat00025
및, i=0,...,N-1, j=0,...,M-1에 대해 ki=1로 하여 초기화된다. 원소들
Figure 112009014645025-pat00026
(j>i에 대해서)을 제거함(제로로 회전하여)에 있어, 다음에 의해 회전이 정의된다.
Figure 112004010289862-pat00027
여기서
Figure 112009014645025-pat00028
는 갱신된 원소를 나타낸다. 회전을 수행하는 것 외에, 실수 값의 가중치들 ki가 갱신되어야 한다. 따라서, 원소
Figure 112009014645025-pat00029
에 근거한, 스케일링된 기븐스 회전은 다음과 같이 요약될 수 있다.
Figure 112004010289862-pat00030
여기서 Ki는 갱신된 ki를 나타내고, (.)*는 공액 복소수를 나타낸다.
수치 안정성을 유지하기 위해서, 이 번엔 인수들 ki 및 kj를 사용하여 동일 스케일링 메카니즘을 첨가한다. 기본적으로, 목적은 인수들 ki 및 kj를 0.25 내지 4 사이로 유지하는 것이고, 이에 따라 원소들
Figure 112009014645025-pat00051
를 스케일링한다. 스케일링은 각각의 회전마다 수행되고, 단지 2진 시프트 연산들만을 수반한다(즉, 2의 멱으로 스케일링함). 또한, 스케일링함으로써 변수들 ki은 i=0,...N-1에 대해 유사한 크기를 갖는 것이 보장된다.
이러한 대안으로서의 공식화는 다시 한번 제산 연산 및 제곱근 연산이 없는 재귀들의 이점을 제공한다. 이들 연산들은 실제 분해 QR를 이용할 필요가 있을 때까지 미루어질 수 있다.
비교 목적으로, K와 P만을 계산하는 복잡도를 고려한다. 복잡도는 M≤N에 대해 O(2M2N-5M3/3) 복소수 곱셈들( 및 복소수 덧셈의 반)을 요구하는 회전들에 의해 좌우된다. M=N(혹은 단지 M 행들만이 필요한 경우)인 경우 이것은 O(M3/3)이 된다.
U=qr(H)를 얻기 위해 위에 기술한 방식을 사용하는 일 예에서, 구형 검출기에의 효과는 결과적으로 부등식(2)을 다음의 수학식 8로 변경하는 것으로 된다.
Figure 112004010289862-pat00032
여기서
Figure 112009014645025-pat00033
이고,
Figure 112009014645025-pat00034
이다. 회전 행렬 Φ는 구형 디코더에 의해 필요로 하지 않는 것에 유의한다. 구형 디코더에의 효과가 비슷해도, 스케일링 QR 방법은, wis가 i에 따라 커질 수 있지만 kis가 동일한 크기를 갖는 점에서(kis는 동일한 크기인 것으로 파악되므로) 스케일링된 콜레스키 방법에 비해 이점이 있다.
일 예에서, 상부 삼각 행렬 U는 각각의 송신 안테나 후보에 대해 합산으로 계산될 수 있게 하고 각 항이 부호가 양으로 정해진 함수임이 보증되게 하도록 MLAPP에 대한 비용 함수를 공식화하는데 사용된다.
다음 단계는, 일단 U가 결정되었으면, 구형 디코더 후보 검색 중심점을 결정하는 것이다. 이것은 송신 후보의 연속한 ML 추정이며, 유효한 심볼 성상 포인트들로 제약되지 않는다. MLAPP 및 구형 알고리즘에서 검색은 각 심볼에 대해 최상의 세트의 성상 포인트들로 후보를 정리한다. 검색 중심, 혹은 이 예에선 제약되지 않은 ML 추정은 다음 수학식 9로 기술된다.
Figure 112004010289862-pat00035
이 수학식 9는 다음 수학식 10으로서 다시 쓸 수 있다.
Figure 112004010289862-pat00036
일 예에서, MxN 행렬 B는 이 BU가 유사한 연산들을 공유하고 있을 때 U가 계산됨과 동시에 미리 계산된다. 일단 이 값이 미리 계산되었으면, 검색 중심점 계산은 수신된 한 세트의 심볼들 각각에 대해 MxN 행렬을 Nx1 수신된 심볼 벡터로 곱하는 것만을 요한다.
행렬 U가 각각의 새로운 채널 추정에 대해서만 계산될 필요가 있는 반면, 검색 중심점
Figure 112004010289862-pat00037
는 각각의 수신된 벡터 y마다 계산되어야 한다. 검색 반경 r를 결정하는데 이 계산을 필요로 할 수도 있다. 이상적으로는 계산은 행렬 A=H H H를 반전시키는데 수반되는 제산들을 피한다.
이 발명의 일 구현예는 스케일링 및 분리된 QR 분해 해를 사용하여
Figure 112009014645025-pat00038
를 결정하기 위해 역-치환(back-substitution)을 사용하는 것을 포함한다. 역-치환은 삼각 분해가 가능한 한 세트의 선형 방정식들에 대한 해를 얻기 위한 알려진 방법이다. 이 예에서, 역-치환은 회전 행렬 Φ를 필요로 하지 않으며, 상부 삼각 행렬 P와, 행렬 K로부터의 스케일링 인자들만을 필요로 한다. 해를 얻기 위해 제산들이 필요할 지라도, 제수는 단지 M개뿐이고, 이것은 새로운 채널 행렬 H에 대응하는 각각의 새로운 분해마다 1회 계산될 수 있다. 이들 제수들은 많은 수신된 벡터 y에 사용될 수 있다.
Figure 112004010289862-pat00039
는 식들
Figure 112004010289862-pat00040
를 구함으로써 얻어진다. 이 식은 A=H H H=U H U= V H WV=P H K -1 P이므로
Figure 112004010289862-pat00041
로 변환된다. 따라서, 선형 식들의 시스템은 P가 삼각형을 이루는 것을 활용하여 두 부분들로 풀 수 있다.
P = PHx = HHy
Figure 112004010289862-pat00042
각 경우에 P의 대각 원소들에 의한 제산들만이 필요하고 이들은 역-치환 전에 계산될 수 있으므로 덧셈들 및 곱셈들만이 역-치환 과정에서 필요하게 된다.
따라서, 이 발명은 많은 수의 이용가능한 조합들로부터 취한 심볼들의 조합들을 포함하는 코딩된 전송들을 검출하는 방법을 제공한다. 구형 디코더 후보 검색은 처리될 후보 조합들의 수를 이용가능한 조합들 각각을 직접 고려함이 없이 선택된 디코딩 기술을 사용하여 신속하게 감소시킨다. 본 발명의 방식에 의해 효율적이고 효과적으로 비교적 복잡한 전송들을 용이하게 처리할 수 있다.
전술한 바는 한정하는 것이 아니라 예시적인 것이다. 이 발명의 본질에서 반드시 벗어나는 것은 아닌, 개시된 예들에 대한 변형 및 수정들은 이 기술에 숙련된 자들에게 명백할 수 있다. 이 발명에 부여된 법적 보호 범위는 다음 청구항들을 검토함으로써 결정될 수 있을 뿐이다.
본 발명에 따르면, 많은 수의 송신될 수 있을 조합들을 야기하는 포맷으로 정보가 코딩된 전송들을 디코딩할 수 있으며, 특히 복수 송신 안테나들을 포함하는 시스템들에서 상기 필요성을 해결할 수 있다.

Claims (11)

  1. 구형 디코더 장치에 있어서,
    복수의 이용가능한 심볼 조합들을 갖는 신호들을 수신하는 수신기; 및
    복수의 검색 유닛들을 포함하고, 상기 이용가능한 심볼 조합들의 일부분에서 후보들의 증분 비용을 결정하는 디코더로서, 상기 검색 유닛 각각은 깊이 우선 검색(depth first search)을 이용해서 상기 이용가능한 심볼 조합들 중 할당된 것들의 누적 비용을 결정하고, 적어도 하나의 상기 검색 유닛들의 적어도 일부분의 출력은 선택적으로 상기 검색 유닛들 중 다른 검색 유닛으로 전달되는, 상기 디코더를 포함하는, 구형 디코더 장치.
  2. 제 1 항에 있어서,
    상기 디코더는 수신된 신호의 채널 행렬의 삼각 행렬 표현을 결정하는 사전계산 유닛을 포함하고, 상기 사전계산 유닛은 상기 삼각 행렬 표현의 분자 부분과 분모 부분을 분리하는, 구형 디코더 장치.
  3. 제 2 항에 있어서,
    상기 사전계산 유닛은 방정식 VHWV=HHH 을 이용하고,
    여기서 V는 상부 삼각 행렬이고 W는 실수값 가중치 1/wi를 갖는 대각 행렬인, 구형 디코더 장치.
  4. 제 2 항에 있어서,
    상기 사전계산 유닛은 방정식 H = ΦHK-1P를 이용하고,
    여기서 H 복소수 NxM 채널 행렬이고, K -1는 원소들 1/ki을 갖는 NxN 대각 및 실수 행렬이고, PH에 스케일링된 기븐스 회전(Givens rotation)들을 적용함으로써 얻은 삼각 행렬인, 구형 디코더 장치.
  5. 제 1 항에 있어서,
    상기 검색 유닛은 모든 상기 이용가능한 후보들을 포함하는 트리 구조 내에서 각각 고려되는 후보의 위치에 관한 정보와 함께 각각 고려된 후보의 누적 비용을 적어도 일시적으로 저장하기 위한 스택 메모리를 포함하는, 구형 디코더 장치.
  6. 제 5 항에 있어서,
    상기 검색 유닛은 상기 후보가 선택된 반경 이내의 비용을 가지면 하나의 트리 레벨에서의 후보를 상기 스택 메모리에 두는, 구형 디코더 장치.
  7. 제 1 항에 있어서,
    상기 다른 검색 유닛이 그것들의 할당된 심볼 조합들의 비용 결정을 완료하고, 하나의 검색 유닛이 그것의 할당된 심볼 조합들의 비용을 여전히 결정하고 있으면, 상기 하나의 검색 유닛의 상기 출력의 일부분은 상기 다른 검색 유닛으로 전달되는, 구형 디코더 장치.
  8. 제 1 항에 있어서,
    상기 검색 유닛은 Y개의 포트들을 갖는 스택 메모리를 포함하고, 검색 사이클 내에서 X개의 유효한 후보들의 평균을 생성하고, Y는 이용가능한 후보들의 최대수보다 작고, X에 대해 선택된 관계를 갖는, 구형 디코더 장치.
  9. 제 8 항에 있어서,
    Y는 X보다 크거나 같고, 상기 검색 유닛은 상기 검색 사이클 동안 상기 Y개의 포트들 중 하나에 각각의 유효한 후보를 전달시키는, 구형 디코더 장치.
  10. 제 8 항에 있어서,
    Y는 X보다 작고, 상기 검색 유닛은 복수의 상기 검색 사이클에서 상기 Y포트들 중 하나에 각각의 유효한 후보를 전달시키는, 구형 디코더 장치.
  11. 삭제
KR1020040016761A 2003-03-15 2004-03-12 무선 통신을 위한 구형 디코더 KR101098293B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/389690 2003-03-15
US10/389,690 US7822150B2 (en) 2003-03-15 2003-03-15 Spherical decoder for wireless communications

Publications (2)

Publication Number Publication Date
KR20040081713A KR20040081713A (ko) 2004-09-22
KR101098293B1 true KR101098293B1 (ko) 2011-12-26

Family

ID=

Similar Documents

Publication Publication Date Title
JP4647922B2 (ja) 無線通信用球面復号器
KR101153941B1 (ko) Mimo 다중통신 시스템 및 신호 분리 방법
CN1671092B (zh) 具有低复杂性和好的统计输出的球面解码方法
US7457367B2 (en) Detector and method for estimating data probability in a multi-channel receiver
CN108353046B (zh) 用于顺序解码器的预期终止
US8391128B2 (en) Mobile communication system, receiver and method
US20080049863A1 (en) Apparatus, method and computer program product providing soft decision generation with lattice reduction aided MIMO detection
JP4373439B2 (ja) スフィア復号技術を用いた信号検出
KR101844766B1 (ko) 매개변수화 순차 복호화
US8155234B2 (en) Method for processing a data signal, data processing unit and computer program product
KR20070119546A (ko) 다중 안테나 시스템에서 개선된 스택 알고리즘을 이용한신호 검출 장치 및 방법
US8045604B2 (en) Estimation of log-likelihood using constrained markov-chain monte carlo simulation
CN107094063B (zh) 半穷举迭代块解码方法和设备
US8437421B2 (en) Method and arrangement for soft-decision sphere decoding
KR102037614B1 (ko) 스택 재배열을 이용하는 순차적 디코딩
KR101098293B1 (ko) 무선 통신을 위한 구형 디코더
CN115333583B (zh) 多发多收通信系统的信号检测方法及装置
WO2014175430A1 (ja) 受信装置、受信方法および受信プログラム
CN110858773B (zh) 无线通信设备及由其执行的方法、计算机可读介质
KR101543621B1 (ko) 다중 입력 다중 출력 시스템의 신호 검출 장치 및 방법
KR100842817B1 (ko) Mdsa를 이용한 저 연산량 mimo 수신방식
KR100893164B1 (ko) 연판정 디코딩 방법 및 연판정 디코딩 장치
Kim et al. Parallelized VLSI Architecture of Single Stack based List Sphere Decoder
WO2013137760A1 (en) Device and method for detecting transmitted signals in a mimo communication system
JP2011171783A (ja) 受信装置、及び受信方法