KR102060866B1 - 디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템 - Google Patents

디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR102060866B1
KR102060866B1 KR1020177008299A KR20177008299A KR102060866B1 KR 102060866 B1 KR102060866 B1 KR 102060866B1 KR 1020177008299 A KR1020177008299 A KR 1020177008299A KR 20177008299 A KR20177008299 A KR 20177008299A KR 102060866 B1 KR102060866 B1 KR 102060866B1
Authority
KR
South Korea
Prior art keywords
node
stack
value
data signal
child node
Prior art date
Application number
KR1020177008299A
Other languages
English (en)
Other versions
KR20170051461A (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
Application filed by 앵스띠뛰 미네-뗄레콩 filed Critical 앵스띠뛰 미네-뗄레콩
Publication of KR20170051461A publication Critical patent/KR20170051461A/ko
Application granted granted Critical
Publication of KR102060866B1 publication Critical patent/KR102060866B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03184Details concerning the metric
    • H04L25/03197Details concerning the metric methods of calculation involving metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03203Trellis search techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03891Spatial equalizers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L2025/0335Arrangements for removing intersymbol interference characterised by the type of transmission
    • H04L2025/03426Arrangements for removing intersymbol interference characterised by the type of transmission transmission using multiple-input and multiple-output channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • H04L27/34Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
    • H04L27/38Demodulator circuits; Receiver circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Artificial Intelligence (AREA)
  • Error Detection And Correction (AREA)
  • Radio Transmission System (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

디코딩 트리의 각각의 노드가 데이터 신호의 심볼의 성분에 대응하고 메트릭과 연관되는 디코딩 트리를 반복적으로 구성함으로써 통신 시스템에서 수신된 데이터 신호를 디코딩하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품이 제공되며, 디코딩 트리의 구성은 스택의 최상위에 저장된 트리의 현재 노드에 대해 다음의 단계:
- 수신된 데이터 신호를 나타내는 상기 벡터로부터 상기 현재 노드의 기준 자식 노드를 생성하는 단계(103),
- 기준 자식 노드로부터, 기준 자식 노드의 값으로부터 양의 정수 파라미터를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 상기 양의 정수 파라미터를 기준 자식 노드의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계(106);
- 기준 자식 노드와 상기 제 1 및 제 2 이웃 자식 노드로부터 도출하는 많아야 3개의 자식 노드를 상기 스택에 저장하는 단계(108) - 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 스택에 저장되고, 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해짐 -;
- 상기 스택으로부터 현재 노드를 제거하는 단계(109);
- 상기 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계(111) 중 적어도 하나의 반복을 구현하며;
상기 방법은 상기 스택에 저장된 노드 정보로부터 상기 데이터 신호의 추정을 결정하는 단계를 더 포함한다.

Description

디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템
본 발명은 일반적으로 디지털 통신 시스템에 관한 것으로서, 특히 디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법, 시스템 및 컴퓨터 프로그램 제품에 관한 것이다.
디지털 통신에서 가장 관련 있고 중요한 이슈 중 하나는 효율적인 디코딩 알고리즘의 설계에 관한 것이다. 유용하고 의도된 정보를 복원하기 위해, 수신기 측에서 특정 디지털 처리가 필요하다. 이것은 MIMO(Multiple-Input Multiple-Output)로서 다중 사용자 및 다중 안테나 통신 시스템과 같은 단일 및 다중 전송을 모두 다루는 모든 통신 시스템에 적용한다.
특히, 다중 안테나 기술은 스펙트럼 효율 및 전송 데이터 속도를 증가시킬 가능성으로 인해 많은 무선 통신 시스템의 설계에서 기본적인 역할을 한다. LTE 및 WiMAX(IEEE 802.16)와 같은 여러 무선 표준은 네트워크의 성능을 향상시키고 다중 안테나에 의한 다양성(diversity)을 이용하기 위해 MIMO 통신을 통합했다. 이러한 시스템에서, 디지털 신호는 전송 채널을 통해 인코딩된 형태로 전송기 장치로부터 수신기 장치로 전송된다. 수신기 장치는 데이터에 액세스하기 위해 채널 출력으로부터 수신된 신호를 디코딩하도록 구성된다. 이러한 시스템의 주요 과제는 효율적이고 복잡하지 않은 탐지기를 설계하는 것이다.
특히, 전송 채널은 수신된 신호의 혼란(disruption)을 포함할 수 있는 잡음이 있을 수 있다. 이러한 혼란은 수신된 신호를 적절히 디코딩하기 위해 적절한 디코딩 기술을 사용함으로써 디코딩 측에서 제한될 수 있다. 공지된 디코딩 기술은 ML(Maximum Likelihood) 디코딩 기술이며, 이에 따라 수신기 장치가 관측 수신된 신호가 주어질 경우 가장 가능성이 있는 후보 신호를 추정하도록 구성된다.
최적의 ML 디코딩 기술은 모든 가능한 전송된 신호(또한 "후보 신호(candidate signal)"로서 지칭됨)를 계산하고, 관측 수신된 신호와 후보 신호 사이의 유클리드 거리(Euclidean distance)와 같은 선택 기준에 따라 가장 유사한 신호를 선택하는 것에 의존한다.
그러나, 이러한 철저한 계산(exhaustive count)은 시간과 자원의 측면에서 비용이 많이 들고, 실시간 애플리케이션에서 구현하는 것이 곤란할 수 있다. 실제로, 후보의 수, 및 따라서 디코더의 복잡도는 디지털 신호의 길이에 따라 기하급수적으로 증가한다. 실용적인 구현을 위해, 대안적인 래티스 디코딩 알고리즘(lattice decoding algorithm)은 Sphere 디코더(E. Viterbo and J. Boutros. A universal lattice code decoder for fading channels. IEEE Transactions on Information Theory, 45(5):1639-1642, July 1999) 또는 Schnorr-Euchner 디코더(C. P. Schnorr and M. Euchner. Lattice basis reduction: Improved practical algorithms and solving subset sum problems.In Math. Programming, pages 181-191, 1993)와 같은 디코더 복잡도를 고려하면서 수신된 신호를 적절히 디코딩하기 위해 제안되었다. 이러한 종류의 디코더는 특히 단일 및 다중 안테나의 둘 다를 포함하는 무선 통신뿐만 아니라 광통신에도 적합하다.
이러한 디코딩 알고리즘은 최적의 ML 기준을 구현하다. 그러나, 이것은 성상도 크기(constellation size) 또는 안테나의 수가 증가할 때 복잡도를 증가시킨다.
다른 기존의 접근법에서, ZF, ZF-DFE 및 MMSE(G. Caire K.R. Kumar and A.L. Moustakas. Asymptotic performance of linear receivers in mimo fading channels. IEEE Transactions on Information Theory, 55(10):4398-4418, October 2009)와 같은 차선의 낮은 복잡도 디코더가 구현된다. 이러한 디코더는 일반적으로 제한된 연산 능력을 제공하는 실용적인 시스템에 사용된다.
ML 최적화 문제의 트리 표현(디코딩 트리) 및 트리 탐색에 기초하는 순차적 디코딩 기술과 같은 또 다른 디코딩 기술이 제안되었다. 이러한 디코딩 트리에서, 루트 노드(root node)로부터 리프 노드(leaf node)로의 각각의 경로는 가능한 전송된 신호이다. 3개의 주요 트리 탐색 전략: 너비 우선(breadth-first), 깊이 우선(depth-first) 및 최상 우선(best-first) 전략이 존재한다. 탐색 트리의 노드는 디코딩된 심볼에 의해 취해진 상이한 값에 대응하고, 루트 노드로부터 리프 노드로의 각각의 경로는 가능한 전송된 신호이다.
순차적 디코딩 기술은 수신된 신호와, 루트 노드와 현재 노드 사이의 경로 사이의 유클리드 거리와 같이 비용을 각각의 현재 노드에 할당함으로써 디코딩 트리 내의 단일 후보 경로를 결정하기 위해 비용(또는 메트릭) 제약 조건을 고려한다. 탐색 트리는 더 이상 2진수가 아니며, 정보 심볼의 가능한 상이한 값을 포함한다.
"너비 우선" 트리 탐색 전략에 따르면, 탐색은 루트 노드로 시작하고 다음의 레벨에 존재하는 모든 자식 노드(child node)를 확장한다. 각각의 탐사된 노드(explored node)에 대해, 탐색 알고리즘은 리프 노드에 도달할 때까지 모든 자식 노드를 연속적으로 확장한다. 이러한 접근법을 사용하면, 주어진 레벨(i)에서, 모든 선형 조합 s(i) = (sn, sn - 1, ..., si)가 계산되는 방식으로 트리의 레벨(i-1)로 이동하기 전에 모든 노드가 탐사된다(즉, 트리를 통한 탐색이 폭 의미(width sense)에서 이루어진다). 따라서, "너비 우선" 전략은 트리를 통해 철저한 탐색을 구현한다.
"깊이 우선 전략(Depth-First strategy)"으로 불리고, 일반적으로 Sphere 디코더 및 Schnorr-Euchner 디코더에서 사용되는 다른 철저한 트리 탐색 전략은 루트 노드에서 시작하고 제 1 자식 노드(sn)를 탐사하고, 그 다음 가장 가까운 자식 노드(sn-1)를 탐사하며, 리프 노드(s1)에 도달할 때까지 계속 탐사한다. 이러한 제 1 경로가 발견되면, 탐색은 트리에서 레벨 2로 다시 돌아가서 진행하고, 이미 탐사된 노드(s2)의 이웃을 탐사한다. 가능한 모든 경로를 찾아 상대 누적된 가중치를 계산한 후, 가장 짧은 경로가 출력된다.
"최상 우선 전략(Best First strategy)"은 너비 우선 전략의 최적화된 버전에 대응하는 또 다른 트리 탐색 전략이다. 탐색 전략은 미리 정의된 가중치 제약 조건보다 가중치가 가장 작은 경로만을 탐사하는 것에 기초한다. 루트 노드에서 시작하면, 알고리즘은 모든 자식 노드(sn)를 탐색하고 이를 스택에 저장함으로써 제약 조건을 만족하는 가중치를 가진 노드만을 유지한다. 그 후, 스택의 최상위 노드의 자식 노드가 생성되고, 누적된 가중치가 계산된다. 탐사된 노드는 가중치에 따라 탐색되고, 누적된 가중치가 가장 적은 노드만이 유지된다. 탐색은 리프 노드를 찾을 때까지 계속되고, 최적 경로 s(1) = (sn, sn - 1, ..., s1)는 반환된다. 주어진 비용 제약 조건과 비교하여 낮은 가중치를 갖는 노드만을 유지함으로써, 탐색 복잡도는 감소된다.
스택 디코더는 원래 이산 무기억(discrete memoryless) 채널을 통해 전송된 컨벌루션 코드(convolutional code)를 디코딩하는 데 사용되었다. 나중에, 이것은 2006년 3월 페이지 933-953 볼륨 52 "IEEE transaction on information theory", Arul Murugan 등에 의한 "A unified framework for tree search decoding: rediscovering the sequential decoder”에 개시된 바와 같이 MIMO 시스템에서 ML 탐지를 위해 재발견되고 적응되었다.
순차적 디코딩은 Fano 디코더(R. Fano. A heuristic discussion of probabilistic decoding. IEEE Transactions on Information Theory, 9(2), pages 64-74, April 1963.) 또는 특히 논문 "A fast sequential decoding algorithm using a stack" (F. Jelinek, "IBM Journal Research Development", volume 13, pages 675-685, November 1969)에서 설명된 바와 같이 전송된 신호의 경 추정(hard estimation), 즉 이진 추정을 전달하는 스택 디코더에서 구현될 수 있다.
최상 우선 트리 탐색 전략에 따른 디코딩 트리를 생성하기 위해, 스택 디코더는 루트 노드(sroot)로부터 시작하고 탐지된 심볼에 대응하는 모든 자식 노드를 각각의 레벨에서 생성한다. 각각의 자식 노드의 각각의 가중치가 더 계산된다. 그 다음, 자식 노드는 스택의 최상위의 노드가 최소 메트릭을 갖도록 가중치가 증가하는 순서로 스택에 저장된다. 그 다음, 스택은 재정렬되고, 리프 노드가 스택의 최상위에 도달할 때까지 동일한 처리가 반복된다. 리프 노드에 대응하는 경로는 ML 솔루션을 나타낸다. 따라서, 스택 디코더는 ML 기준에 따라 수신된 신호에 가장 근접한 벡터를 찾을 수 있다.
스택 디코더는 (논문 "A fast sequential decoding algorithm using a stack", F. Jelinek, "IBM Journal Research Development", volume 13, pages 675-685, November 1969에서 보여준 바와 같은) Fano 디코더보다 복잡도가 낮다. 그러나, 성상도 크기의 증가 및 상당수의 안테나의 경우, 스택 디코딩 기술은 높은 계산 복잡도를 필요로 한다.
이러한 복잡도를 줄이기 위해, Spherical-Bound Stack 디코더(SB 스택)으로서 지칭된 다른 디코딩 기술은 G.R. Ben-Othman, R. Ouertani, and A. Salah, entitled “The Spherical Bound Stack Decoder”, In Proceedings of International Conference on Wireless and Mobile Computing, pages 322-327, October 2008에 의한 논문에서 제안되었다. SB 스택 접근법은 Stack 탐색 전략을 Sphere Decoder 탐색 영역과 조합한다: ML 솔루션은 수신된 점을 중심으로 하는 구(sphere)의 내부에서 찾아진다. 이러한 접근법을 사용하면, SB 스택 디코더는 Spherical 디코더보다 낮은 복잡도를 달성한다. 그러나, SB 스택 디코더가 Sphere 디코더보다 낮은 복잡도를 제공하지만, 실용적인 시스템에서의 구현은 높은 저장 용량을 필요로 한다.
따라서, 디코딩 복잡도가 감소한 최적의 디코딩 트리 생성 방법 및 시스템이 필요하다.
이러한 문제점 및 다른 문제점을 해결하기 위해, 통신 시스템에서 수신된 데이터 신호를 디코딩하는 방법이 제공되며, 방법은,
- 디코딩 트리를 반복적으로 구성하는 단계로서, 디코딩 트리의 각각의 노드는 데이터 신호의 심볼의 성분에 대응하고 메트릭과 연관되는 단계를 포함하고,
디코딩 트리를 구성하는 단계는 스택의 최상위에 저장된 트리의 현재 노드에 대해:
- 수신된 데이터 신호를 나타내는 벡터로부터 현재 노드의 기준 자식 노드를 생성하는 단계;
- 기준 자식 노드로부터, 기준 자식 노드의 값으로부터 양의 정수 파라미터를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 양의 정수 파라미터를 기준 자식 노드의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계;
- 기준 자식 노드와 제 1 및 제 2 이웃 자식 노드로부터 도출하는 많아야 3개의 자식 노드를 스택에 저장하는 단계로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 스택에 저장되며, 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계;
- 스택으로부터 현재 노드를 제거하는 단계;
- 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계의 적어도 하나의 반복을 구현하며;
방법은 스택에 저장된 노드 정보로부터 데이터 신호의 추정을 결정하는 단계를 더 포함한다.
일 실시예에서, 수신된 데이터 신호는 전송 채널에 의해 이송되는 전송된 데이터 신호에 대응하고, 전송 채널은 주어진 차원(n)의 채널 행렬(H)과 연관되고, QR 분해는 채널 행렬에 미리 적용되고, 여기서 Q는 직교 행렬을 나타내고, R은 상위 삼각 행렬을 나타내며, 기준 자식 노드를 생성하는 단계는 수신된 신호를 나타내는 벡터를 상위 삼각 행렬의 계층 상에 투영하는 단계를 포함한다.
기준 자식 노드는 루트 노드로부터 현재 노드로의 경로에 포함된 트리 노드의 값으로부터 더 생성될 수 있다.
특히, 기준 자식 노드를 생성하는 단계는 수량
Figure 112017029831511-pct00001
의 가장 가까운 정수(nearest integer)로부터 기준 자식 노드를 결정하는 단계를 포함할 수 있으며, 여기서 i는 트리에서 기준 자식 노드의 레벨을 나타내고, Rij는 상위 삼각 행렬 R의 성분(i,j)을 나타내며,
Figure 112017029831511-pct00002
는 수신된 신호
Figure 112017029831511-pct00003
의 제 i 성분을 나타낸다.
특정 실시예에서, 방법은 루트 노드로부터 현재 노드로의 경로에 포함된 트리에서의 노드의 가중치 메트릭(w(sj))으로부터 기준 자식 노드(si)와 연관된 메트릭(fi(si))을 결정하는 단계를 포함할 수 있다.
특히, 기준 자식 노드(si)와 연관된 메트릭은 루트 노드로부터 현재 노드로의 경로에 포함된 트리에서의 노드의 가중치 메트릭(w(sj))의 합으로부터 결정된 누적된 가중치에 의해 나타내어질 수 있으며, 트리의 주어진 레벨(j)에서의 노드의 가중치 메트릭(w(sj))은 수신된 신호를 나타내는 벡터(
Figure 112017029831511-pct00004
)의 제 j 성분과 루트 노드로부터 레벨(j)에서의 노드까지의 트리의 노드를 포함하는 벡터((sn ... sj)) 사이의 유클리드 거리로서 결정된다.
대안으로, 기준 자식 노드(si)와 연관된 메트릭은 루트 노드로부터 현재 노드로의 경로에 포함된 트리에서의 노드의 가중치 메트릭(w(sj))의 합으로부터 결정된 누적된 가중치에 의해 나타내어질 수 있으며, 트리의 레벨(j)에서의 노드의 가중치 메트릭(w(sj))은:
- 수신된 신호를 나타내는 벡터(
Figure 112017029831511-pct00005
)의 제 j 성분과, 루트 노드로부터 레벨(j)에서의 노드까지의 트리의 노드의 값을 포함하는 벡터(sn ... sj) 사이의 유클리드 거리, 및
- 실수 및 양의 값으로서 미리 정의된 바이어스 파라미터(b)와 레벨(j)의 곱의 차로서 결정된다.
일 실시예에서, 각각의 기준 자식 노드를 스택에 저장하는 단계는 각각의 노드와 관련하여 보조 파라미터를 스택에 저장하는 단계를 더 포함할 수 있고, 보조 파라미터는 노드 경로를 포함하며, 데이터 신호의 추정은 스택에 저장된 노드 경로로부터 결정된다.
최상위 노드를 선택하는 단계는 스택에서 선택된 노드가 리프 노드인지를 판단하는 단계를 더 포함할 수 있으며, 방법은,
- 선택된 노드가 리프 노드가 아닌 경우에는 다음 반복을 수행하는 단계, 및
- 선택된 노드가 리프 노드인 경우에는 반복을 종료하는 단계를 포함한다.
대안으로, 최상위 노드를 선택하는 단계는 스택에서 선택된 노드가 리프 노드인지를 판단하는 단계를 포함할 수 있으며, 방법은,
- 선택된 노드가 리프 노드가 아닌 경우에는 다음 반복을 수행하는 단계, 및
- 선택된 노드가 리프 노드인 경우:
Figure 112017029831511-pct00006
스택으로부터 리프 노드를 제거하는 단계,
Figure 112017029831511-pct00007
리프 노드를 보조 스택에 저장하는 단계를 포함하며,
데이터 신호의 추정은 보조 스택으로부터 더 수행된다.
특정 실시예에서, 트리의 각 노드의 값은 최소 임계값과 최대 임계값 사이의 미리 정의된 범위를 갖는 주어진 성상도에 속하는 심볼의 성분에 대응할 수 있고, 자식 노드를 생성하는 단계는 자식 노드의 값에 대해 생성된 가장 가까운 정수가 최소 임계값과 최대 임계값 사이에 포함되는지를 판단하는 단계를 포함할 수 있으며, 방법은 생성된 3 개의 자식 노드 중 적어도 하나에 대해:
- 자식 노드의 값에 대해 생성된 가장 가까운 정수가 최소 임계값과 최대 임계값 사이에 포함되는 경우, 자식 노드를 성상도 범위 내의 가장 가까운 정수 값으로 설정하는 단계를 더 포함한다.
또한, 방법은,
- 자식 노드의 값에 대해 생성된 가장 가까운 정수가 미리 정의된 최소 임계값보다 작은 경우, 자식 노드 값을 최소 임계값과 동일하게 설정하는 단계;
- 자식 노드의 값에 대해 생성된 가장 가까운 정수가 최대 임계값보다 큰 경우, 자식 노드 값을 최대 임계값과 동일하게 설정하는 단계를 포함할 수 있다.
하나의 애플리케이션에서, 통신 시스템은 다중 안테나 시스템일 수 있고, 전송 채널은 주어진 차원의 채널 행렬(H)과 연관될 수 있으며, 수신된 데이터 신호(yc)는 Hcsc + wc와 동일하며, Hc, sc 및 wc는 각각 채널 행렬(H), 전송된 데이터 신호를 나타내는 벡터(s) 및 잡음 벡터(w)의 복소수 값에 대응한다. 그 다음, 수신된 데이터 신호는 실수치 표현(real-valued representation)으로 사전에 변환될 수 있으며, 표현은 다음의 식에 의해 정의된다:
Figure 112017029831511-pct00008
여기서,
Figure 112017029831511-pct00009
Figure 112017029831511-pct00010
은 각각 파라미터로서 명시된 복소수 값 벡터의 실수 부분 및 허수 부분을 나타낸다.
또한, 수신된 데이터 신호를 디코딩하기 위한 컴퓨터 프로그램 제품이 제공되며, 컴퓨터 프로그램 제품은,
비일시적 컴퓨터 판독 가능 저장 매체; 및
프로세서에 의해 실행될 때, 상기 프로세서가
- 각각의 노드가 데이터 신호의 심볼의 성분에 대응하고 메트릭과 연관되는 디코딩 트리를 반복적으로 구성하도록 하는 비일시적 컴퓨터 판독 가능 저장 매체 상에 저장된 명령어를 포함하고,
디코딩 트리를 구성하는 단계는 스택의 최상위에 저장된 트리의 현재 노드에 대해:
- 수신된 데이터 신호를 나타내는 벡터로부터 현재 노드의 기준 자식 노드(si)를 생성하는 단계;
- 기준 자식 노드(si)로부터, 기준 자식 노드(si)의 값으로부터 양의 정수 파라미터(p)를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 양의 정수 파라미터(p)를 기준 자식 노드(si)의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계;
- 기준 자식 노드와 제 1 및 제 2 이웃 자식 노드로부터 도출하는 많아야 3개의 자식 노드를 스택에 저장하는 단계로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 스택에 저장되고, 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계;
- 스택으로부터 현재 노드를 제거하는 단계;
- 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계의 적어도 하나의 반복을 구현하며;
프로세서는 추가로 스택에 저장된 노드 정보로부터 데이터 신호의 추정을 결정하도록 된다.
수신된 데이터 신호를 디코딩하기 위한 장치가 또한 제공되며, 장치는,
- 적어도 하나의 프로세서; 및
- 적어도 하나의 프로세서에 결합되고, 적어도 하나의 프로세서에 의해 실행될 때, 장치로 하여금 각각의 노드가 데이터 신호의 심볼의 성분에 대응하고 메트릭과 연관되는 디코딩 트리를 반복적으로 구성하도록 하는 명령어를 포함하는 메모리를 포함하며,
디코딩 트리를 구성하는 단계는 스택의 최상위에 저장된 트리의 현재 노드에 대해:
- 수신된 데이터 신호를 나타내는 벡터로부터 현재 노드의 기준 자식 노드(si)를 생성하는 단계;
- 기준 자식 노드(si)로부터, 기준 자식 노드(si)의 값으로부터 양의 정수 파라미터(p)를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 양의 정수 파라미터(p)를 기준 자식 노드(si)의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계;
- 기준 자식 노드와 제 1 및 제 2 이웃 자식 노드로부터 도출하는 많아야 3개의 자식 노드를 스택에 저장하는 단계로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 스택에 저장되고, 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계;
- 스택으로부터 현재 노드를 제거하는 단계;
- 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계의 적어도 하나의 반복을 구현하며;
장치는 스택에 저장된 노드 정보로부터 데이터 신호의 추정을 결정하도록 된다.
따라서, 본 발명의 다양한 실시예는 감소된 수의 노드를 방문하면서 디코딩 트리를 동적으로 교차하도록 허용한다.
따라서, MIMO 시스템과 같은 선형 채널에 대해 낮은 복잡도의 순차적 디코딩이 달성될 수 있다.
따라서, 본 발명의 다양한 실시예는 감소된 수의 노드를 방문하면서 디코딩 트리를 동적으로 교차하도록 허용한다.
따라서, MIMO 시스템과 같은 선형 채널에 대해 낮은 복잡도의 순차적 디코딩이 달성될 수 있다.
본 명세서에 통합되는 첨부된 도면은 본 명세서의 일부를 구성하고 본 발명의 다양한 실시예를 예시하며, 설명과 함께 본 발명의 실시예를 설명하는 역할을 한다.
도 1은 본 발명의 특정 실시예에 따른 디코딩 트리 생성 방법을 도시하는 흐름도이다.
도 2는 특정 실시예에 따라 트리의 주어진 레벨에서 기준 자식 노드를 결정하는 단계를 도시하는 흐름도이다.
도 3은 특정 실시예에 따라 트리의 주어진 레벨에서 생성된 기준 노드의 2개의 이웃 자식 노드를 결정하는 단계를 도시하는 흐름도이다.
도 4는 4차원 격자에서 디코딩 트리 생성 방법으로 획득된 탐색 영역의 예시적인 감소를 예시한다.
도 5는 디코딩 방법을 구현하는 예시적인 시스템을 개략적으로 나타낸다.
도 6은 본 발명의 특정 실시예를 구현하는 디코더의 아키텍쳐의 일례를 개략적으로 도시한다.
도 7 및 8은 특정 실시예에 따른 지그재그 스택 디코더로 획득된 전체 복잡도를 예시하는 다이어그램이다.
도 9 및 도 10은 생성된 각각의 자식 노드의 메트릭이 바이어스 파라미터에 기초하여 결정되는 특정 실시예에 따른 지그재그 스택 디코더의 시뮬레이션으로부터 획득된 수치 결과(numerical result)를 예시한다.
본 발명의 다양한 실시예에 따르면, 루트 노드로부터 리프 노드로의 각각의 경로가 최상 우선 탐색 전략에 따라 가능한 전송된 신호를 나타내는 수신된 신호로부터 디코딩 트리를 생성하기 위한 디코딩 트리 생성 방법 및 시스템이 제공된다. 이러한 디코딩 트리는 ML(Maximum Likelihood) 기준에 따라 수신된 신호에 가장 가까운 벡터를 결정하기 위해 최상 우선 트리 탐색 전략에 따라 디코딩 장치(또한 이후 "지그재그 스택 디코더"로서 지칭됨)에 사용될 수 있다.
디코딩 트리 생성 방법은 수신된 신호에 대응하는 감소된 노드 세트를 디코딩 트리(또한, 이후 "탐색 트리"로서 지칭됨)의 각각의 레벨에서 생성하는 것에 기초한다. 증가하는 성상도 크기 및 많은 수의 안테나에 대해, 통상적인 스택 디코더는 ("스택을 사용한 빠른 순차적 디코딩 알고리즘" 또는 "트리 탐색 디코딩: 순차적 디코더를 재발견하기 위한 통합된 프레임워크"에서 설명된 바와 같이) 높은 계산 복잡도를 필요로 한다. 본 발명의 다양한 실시예에 따른 디코딩 트리 생성 방법은 각각의 현재 노드에 대해 생성된 자식 노드의 수를 많아야 3개의 노드로 감소시킴으로써 이러한 계산 복잡도를 상당히 감소시킨다.
디코딩 트리 구조를 획득하기 위해, 디코딩 트리 구성 방법은 처리되고, 각각의 반복에서 스택의 최상위 노드로서 선택되는 각각의 현재 노드에 대해 많아야 3개의 자식 노드의 세트를 반복적으로 생성하고, 생성된 자식 노드를 스택에 저장한다. 각각의 생성된 자식 노드에 대해, 자식 노드의 비용을 나타내고, 자식 노드와 함께 스택에 저장되는 메트릭이 더 계산될 수 있다.
특히, 디코딩 트리 생성 방법은 수신된 벡터로부터 채널 생성기 행렬에 의해 정의된 초평면(hyperplane)까지의 유클리드 거리에 기초하여 (레벨 i=n에서 "제로 포싱 디시젼 피드백 이퀄라이저(Zero-Forcing-Decision Feedback Equalizer)" 포인트를 명시하는 ZF-DFE 포인트에 대응하는) 제 1 계산된 "기준" 자식 노드(sn)에 의해 처리되고, 이러한 기준 자식 노드(sn)로부터, 기준점 주변을 지그재그함으로써 많아야 2개의 이웃 노드를 결정하는 각각의 현재 노드에 대한 3개의 자식 노드의 세트를 생성할 수 있다.
본 발명의 다양한 실시예에 대한 다음의 설명에서, 노드(si)의 자식 노드(레벨 i)는 성분(si-1)(레벨 i-1)으로서 지칭될 것이다.
종래의 스택 디코더에 의해 행해지는 바와 같이 수신된 벡터에 대응하는 모든 성상도 포인트(예를 들어, 2n QAM(Quadrature Amplitude Modulation)에서의 n개의 성상도 포인트)를 각각의 트리 레벨(i)에서 저장하는 대신에, 다양한 실시예에 따른 디코딩 트리 구성 방법만이 기준 노드(si) 주변을 지그재그함으로써 결정된 대응하는 초평면(si) 및 2개의 이웃 노드(s'i = si - p 및 s"i = si + p) 상의 수신된 벡터의 투영에 대응하는 노드를 포함하는 3개의 노드를 트리의 각각의 레벨에서 저장한다. 디코딩된 심볼의 정수 성질(integer nature)이 주어지면, 성분(si)은 정수 값을 취하고, 지그재그 접근법은 기준 노드(si)의 값으로부터 양의 파라미터(p)를 감산하고/하거나 양의 파라미터(p)를 기준 노드(si)의 값에 가산함으로써 두 이웃을 선택하는 것에 기초한다.
본 명세서에서 사용된 바와 같이, "노드"는 2q QAM과 같은 성상도에 대응하는 수신된 신호의 성상도 포인트를 나타내는 디코딩 트리 데이터 구조의 요소를 지칭한다. 특히, 노드는 수신된 데이터 신호의 심볼의 성분을 나타내는 정수 값을 포함한다(수신된 데이터 신호는 실수 값 표현에 따라 나타내어질 수 있다). 다음의 설명에서, 용어 "노드" 또는 "노드 값"은 유사하게 수신된 데이터 신호의 심볼의 성분을 나타내는 데 사용될 것이다. 트리의 제 1 노드는 루트 노드로서 지칭된다. 디코딩 트리 생성 방법에 따르면, 디코딩 트리의 각각의 노드는 트리에서 이러한 노드 아래에 배치되는 많아야 3개의 자식 노드를 가질 수 있지만, 종래의 접근법은 각각의 노드에 대해 복수의 브랜치, 또는 미리 정의된 간격에서 선택된 다수의 자식 노드를 생성한다. 자식 노드를 전혀 갖지 않은 노드는 "리프" 노드로서 지칭되고, 트리의 최하위 레벨에 대응한다. 각각의 노드는 트리에서 이러한 노드 위에 배치되는 많아야 하나의 부모(parent) 노드를 갖는다. 루트 노드는 트리에서 가장 높은 노드이며, 부모 노드를 전혀 갖지 않는다. 주어진 노드의 깊이(또는 차원)는 이러한 주어진 노드에서 디코딩 트리의 루트 노드까지의 경로의 길이를 나타낸다. 디코딩 트리의 모든 노드는 루트 노드에서 도달될 수 있다. 따라서, 루트 노드에서 리프 노드로의 각각의 경로는 가능한 전송된 신호를 나타낸다. 디코딩 트리의 노드는 심볼(si)의 가능한 상이한 값을 나타내며, 여기서 i가 n에서 1까지의 정수를 나타내는 si는 전송된 정보 벡터의 실수 및 허수 성분을 나타낸다.
도 1을 참조하면, 본 발명의 특정 실시예에 따른 디코딩 트리 생성 방법에 의해 구현된 주요 단계가 이제 설명될 것이다. 디코딩 트리는 채널 행렬(H)과 연관된 전송 채널에 의해 이송되는 전송된 데이터 신호에 대응하는 수신된 데이터 신호를 디코딩하기 위해 사용될 수 있다.
탐색 트리(또한 이후 "디코딩 트리"로서 지칭됨)는 프리디코딩(pre-decoding) 단계에서 채널 행렬 H(H=QR)의 QR 분해를 통해 생성될 수 있으며, 여기서, Qt는 직교 행렬을 나타내고, R은 디코딩 등가 시스템에서 수신된 신호와 Qt의 곱을 통해 생성기 행렬을 나타낸다. 행렬(R)의 상위 삼각 구조가 주어진다면, ML 최적화 문제는 디코딩 트리의 생성에 기초하여 트리 탐색을 수행함으로써 해결된다.
디코딩 트리의 생성은 스택에 저장된 트리의 현재 노드에 대해 다음의 단계의 적어도 하나의 반복을 구현한다. 방법은 초기에 루트 노드를 현재 노드로서 시작한다. 따라서, 제 1 현재 노드는 루트 노드이다(단계(101)).
단계(102 내지 114)는 현재 노드가 부모 노드인 3개의 자식 노드를 생성하기 위해 스택의 최상위로부터 선택되는 각각의 현재 노드에 대해 반복된다. 따라서, 각각의 반복은 디코딩 트리의 레벨 i(i = n 내지 1)과 연관된다. 파라미터(i)는 스택에서 선택된 최상위 노드에 따라 각각의 새로운 반복에 대해 감소될 수 있다.
따라서, 디코딩 트리 방법의 제 1 반복은 제 1 레벨(i=n)에서 루트 노드(sroot)의 자식 노드{sn, s'n, s"n}를 결정하도록 구현된다.
디코딩 트리 방법의 후속 반복은 스택의 최상위 노드에 대응하는 현재 노드의 레벨(i)에서 많아야 3개의 자식 노드{si, s'i, s"i}를 결정하도록 구현되며, 여기서 si는 기준 자식 노드에 대응하고, s'i 및 s"i는 제 1 및 제 2 이웃 자식 노드에 대응한다.
단계(102)에서, 레벨(i)에서의 기준 자식 노드(si)는 수신된 데이터 신호를 나타내는 수신된 벡터
Figure 112017029831511-pct00011
로부터 생성된다(초기에 제 1 레벨(i=n)에 대해 si = sn).
제 1 레벨(i=n)에 대해 획득된 기준 자식 노드는 ZF-DFE 포인트의 제 n 성분에 대응하는 것이 주목되어야 한다(ZF-DFE는 "Zero-Forcing-Decision Feedback Equalizer"의 약자임).
단계(103)에서, 심볼(si)의 계층에 대한 수신된 벡터
Figure 112017029831511-pct00012
의 투영에 대응하는 유클리드 거리(di)가 결정된다.
단계(104)에서, 노드(si)와 연관된 메트릭(fi(si))은 미리 정의된 기준에 따라 계산된다(메트릭은 또한 "비용"으로 지칭된). 특정 실시예에서, 메트릭(fi(si))은 유클리드 거리(di)로부터 계산될 수 있다. 특히, 메트릭(fi(si))은 유클리드 거리(di)에 의존할 수 있는 브랜치(si+1, si)와 연관된 가중치 메트릭(w(si))으로부터 계산될 수 있다.
단계(105)에서, 노드(si)는 메트릭(fi(si))과 관련하여 스택에 저장된다. 노드에 관련된 부가적인 정보는 각각의 노드와 관련하여 스택에 저장될 수 있다. 이러한 노드 정보는 예를 들어 디코딩 트리에서 노드 경로 및/또는 노드 깊이와 같은 노드, 및/또는 노드에 대해 결정된 유클리드 거리에 관련된 보조 파라미터를 포함할 수 있다.
단계(106)에서, 제 1 및 제 2 이웃 자식 노드(s'i=si-p 및 s"i=si + p)(p는 미리 정의된 정수 값을 나타냄)는 기준 노드(si) 주변을 지그재그함으로써 결정될 수 있다.
단계(107)에서, 노드(s'i)와 연관된 메트릭(fi(si)) 및 이웃 노드(s"i)와 연관된 메트릭(f"(si))이 계산된다.
단계(108)에서, 이웃 노드(s'i) 및 이웃 노드(s"i)는 각각의 메트릭(f'(si) 및 f"(si))과 부가적인 노드 정보(예를 들어 노드 경로)와 관련하여 각각 스택에 저장된다.
단계(109)에서, 현재 노드는 스택으로부터 제거된다.
단계(110)에서, 스택은 가장 낮은 메트릭(f'(si))을 갖는 노드(si)가 스택의 최상위에 저장되도록 메트릭(fk(sk))의 증가하는 순서에 의해 재정렬된다.
단계(111)에서, 스택의 최상위 노드는 이의 자식 노드를 생성하기 위해 현재 노드로서 선택된다.
단계(112)에서, 선택된 노드가 리프 노드인지 결정된다. 선택된 노드가 리프 노드인 경우(즉, 자식 노드를 전혀 갖지 않은 경우), 방법은 단계(113)에서 종료된다.
그렇지 않으면, 단계(114)에서, 선택된 노드는 현재 노드로서 설정되고, 단계(102 내지 114)는 (스택에서 가장 낮은 메트릭을 갖는 노드를 나타내는) 새롭게 선택된 노드가 j가 n-1과 1 사이에 포함되는 디코딩 트리의 다음 레벨(j)에서 기준 자식 노드(si)와 2개의 이웃 자식 노드(s'j=sj-p 및 s"j=sj - p)를 포함하는 3개의 자식 노드를 생성하기 위해 반복될 수 있다. 다음 처리된 레벨(j)은 스택에서 선택된 최상위 노드에 따라 다르다.
따라서, 단계(102 내지 114)의 각각의 반복은 루트 노드와 스택에 저장된 새로운 리프 노드 사이의 경로를 제공한다.
그 후, 데이터 신호는 스택에 저장된 노드 정보, 및 특히 이러한 정보가 스택에 저장된 경로를 고려함으로써 추정될 수 있다. 예를 들어, 2진 추정(경 판정(hard decision))에 따르면, 트리의 구성은 단일 경로가 전송된 데이터 신호의 경 추정에 대응하여 결정되도록 할 수 있는 단계(102 내지 114)의 단일 반복을 구현한다. 확률적 추정(연 판정(soft decision))의 경우에, 디코딩 방법은 LLR(Log-Likelihood Ratio) 값의 형태로 소프트 출력 정보를 전달할 수 있다. 이 경우에, 단계(102 내지 114)의 여러 반복이 수행될 수 있다. 각각의 반복은 루트 노드에서 리프 노드로의 상이한 경로를 전달한다. 그 후, 이러한 상이한 경로는 이의 경로와 함께 보조 스택에 저장될 수 있다. 그 후, 정보 신호의 확률적 추정은 이러한 경로에 기초하여 결정될 수 있다.
따라서, 디코딩 트리 방법은 디코딩 복잡도를 상당히 감소시키는 디코딩 트리의 지그재그 구성을 가능하게 한다. 디코딩 트리는 노드의 메트릭을 스택에 저장하고 가능하면 노드가 방문될 때마다 노드와 관련된 메트릭을 다시 계산할 필요성을 제거하는 보조 파라미터를 저장하기 위해 구성된다.
따라서, 탐색 영역 및 탐색 트리의 노드의 수가 감소된다.
본 발명이 이러한 적용에 제한되지 않을지라도, 본 발명은 예를 들어 MIMO(Multiple Input Multiple Output) 채널에서 전송된 데이터의 디코딩 또는 다수의 사용자의 탐지를 위해 수신기에 통합될 때 특별한 이점을 갖는다.
도 2는 트리의 주어진 레벨(i)에서 기준 자식 노드(si)를 결정하는 단계(도 2의 단계(102))를 도시하는 흐름도이다.
단계(1020)에서, 레벨(i)에서의 기준 자식 노드(si)는 프리디코딩 단계에서 채널 행렬 H(H=QR)의 QR 분해를 수행하기 위해 사용된 상위 삼각 행렬(R)의 주어진 계층 상에서 수신된 벡터
Figure 112017029831511-pct00013
의 투영을 수행함으로써 생성될 수 있으며, 여기서 Q는 직교 행렬을 나타낸다.
특정 실시예에서, 기준 자식 노드(si)는 상위 삼각 행렬(R)의 제 i 계층 상에서 수신된 벡터
Figure 112017029831511-pct00014
의 투영을 수행함으로써 생성될 수 있다.
게다가, 기준 자식 노드의 생성은 루트 노드(sn)로부터 현재 노드(si)로의 경로에 포함되는 트리 노드의 값을 고려할 수 있다.
특히, i=n(레벨(n)에서 자식 노드의 생성에 대응하는 단계(102 내지 114)의 제 1 반복)에 대해, 레벨(n)에서의 제 1 성분(sn)은 식 (1)에 따라 결정될 수 있다:
Figure 112017029831511-pct00015
식 (1)에서, Rnn은 상위 삼각 행렬 R(초평면)의 제 n 계층을 나타내고,
Figure 112017029831511-pct00016
은 수신된 신호
Figure 112017029831511-pct00017
의 제 n 성분을 나타내며, 표기법 [x]는 [x]에 가장 가까운 정수를 나타낸다.
레벨(i = n-1, ..., 1)에서 트리 생성 방법의 노드를 디코딩하는 후속 반복에 대해, 성분(si)은 다음과 같도록 생성될 수 있다:
Figure 112017029831511-pct00018
따라서, 성분(sn - 1)은 부모 노드 및 스택의 현재 최상위 노드에 대응하는 성분(sn)의 값으로부터 계산된다. 노드가 이의 메트릭에 따라 순서가 정해짐에 따라, 선택된 최상위 노드는 ZF-DFE 포인트에 대응하지 않을 수 있고, 결과적으로 생성된 심볼(sn-1)은 ZF-DFE 포인트의 제 (n-1) 성분에 반드시 대응하는 것은 아닐 수 있다는 것이 주목되어야 한다.
디코딩 방법은
Figure 112017029831511-pct00019
의 유한 또는 무한 격자를 디코딩하는데 적용 가능할 수 있으며, 트리 내의 각각의 노드의 값은 최소 임계값(Cmin)과 최대 임계값(Cmax) 사이의 미리 정의된 범위를 갖는 성상도에 속하는 심볼의 성분에 대응한다. 유한 격자가 QAM 변조와 같이 디코딩되는 실시예(유한 성상도)에서, 정보 심볼(si)은 유한 알파벳 및 이의 실수 및 허수 부분으로부터 새겨지며, 이러한 부분은 트리를 통해 탐지된 심볼에 대응하고, 유한 간격 I = [Cmin, Cmax]에 속한다. 예를 들어, q-QAM 변조를 사용하는 실시예에서, 심볼(si)은 간격
Figure 112017029831511-pct00020
에 속하고, 사용된 성상도 심볼에 대응하는 탐색 트리의 노드는 무한 집합
Figure 112017029831511-pct00021
Figure 112017029831511-pct00022
에 속하며, 여기서, Cmin = 0,
Figure 112017029831511-pct00023
.
이러한 실시예에서, 추정된 벡터가 고려된 성상도에 속한다는 것을 보증하기 위해, 단계(1020)에서 획득된 바와 같은 심볼 si([si])에 대한 가장 가까운 정수 및 제한된(bound) 제약 조건(Cmin 및 Cmax)에 관련된 조건은 단계(1021)에서 자식 노드(기준 노드(si) 또는 2개의 이웃 노드(s'i 및 s"i) 중 하나)가 생성될 때마다 검사된다.
특히, 단계(1021)에서, 단계(1020)에서 결정된 바와 같은 심볼(si)이 성상도에 속하는지가 결정된다. 심볼(si)이 성상도에 속하는 경우(즉, Cmin ≤[si]≤ Cmax), 단계(1022)에서 기준 자식 노드(si)는 심볼(si)에 가장 가까운 정수(즉, [si])로 설정된다.
그렇지 않으면, 심볼(si)이 성상도에 속하지 않으면(단계(1021)), 단계(1023)에서 심볼 [si]에 가장 가까운 정수는 단계(1023)에서 성상도 간격 [Cmin, Cmax]의 경계 값과 비교된다:
- [si] < Cmin이면, 단계(1024)에서 기준 자식 노드(si)는 Cmin으로 설정되고;
- [si] > Cmax이면, 단계(1025)에서 기준 자식 노드(si)는 Cmax로 설정된다.
도 3은 성상도가 유한한 실시예에 따라 기준 노드(si)로부터 이웃 자식 노드(s'i 및 s"i)를 결정하는 단계(도 1의 단계(106))를 도시하는 흐름도이다.
단계(1060)에서, 심볼(s'i = si-p 및 s"i = si + p)은 심볼(si)로부터 결정되며, 여기서 p는 미리 정의된 정수 파라미터(또한, "지그재그" 파라미터로서 지칭됨)를 나타낸다.
특정 응용에서, "지그재그" 파라미터(p)는 미리 정의된 방식으로 변화하도록 허용될 수 있고, 트리의 레벨 및/또는 반복 단계에 따라 상이한 값을 취할 수 있고/있거나, 공간, 시간 또는 주파수와 같이 통신 시스템에서 이용되는 상이한 자유도에 의존할 수 있다는 것이 주목되어야 한다.
특정 실시예에서, 파라미터(p)는 1로 설정될 수 있다. 이것은 수신된 신호의 재형상화(reshaping)가
Figure 112017029831511-pct00024
에서 가장 가까운 격자점 탐색을 수행할 수 있도록 하기 위해 수신기 측에서 수행되도록 할 수 있다. 이러한 재형상화를 사용하면, 형상화 제약 조건은 성상도에 따라 디코딩된 심볼을 간격 I=[Cmin, Cmax]로 제한할 수 있으며, 여기서 Cmin=0, Cmax=1,3,5 등이다. 이러한 실시예에서, 트리 탐색 알고리즘이 수행될 때, 포인트는 1의 경로(즉, p=1)를 사용하여 이러한 경계 구간에서 테스트될 수 있다. 따라서, p를 1과 동일하게 설정하면은 ML 솔루션에 대응할 수 있는 성상도에서 포인트가 확실히 스킵(skip)되지 않는다.
그러나, 본 발명은 1과 동일한 파라미터(p)로 제한되지 않는다. 본 발명의 응용에 따라, 파라미터(p)는 다른 값으로 설정될 수 있다. 예를 들어, 수신기 측에서 재형상화가 필요하지 않는 경우, 경로(p)는 1보다 많을 수 있다(따라서 이웃 노드가 방문된다).
단계(1061)에서, 심볼(si-p)(각각 si+p)에 대해, 심볼(si-p)(각각 si+p)에 대한 가장 가까운 정수가 Cmin와 Cmax 사이에 포함되는지를 판단함으로써 심볼(si-p)(각각 si+p)가 성상도에 속하는지가 판단된다. 심볼(si-p)(각각 si+p)이 성상도에 속하면(단계(1062)), 단계(1062)에서 이웃 자식 노드(s'i)(각각 s"i)는 심볼(si-p)(각각 si+p)로 설정된다.
그렇지 않으면, 심볼(si-p)(각각 si+p)이 성상도에 속하지 않으면(단계(1063)), 단계(1063)에서 심볼(si-p)(각각 si+p)은 다음과 같이 성상도 간격의 경계 값[Cmin, Cmax]과 비교된다.
- [si-p] <Cmin(각각 [si+p] <Cmin)이면, 단계(1064)에서 기준 자식 노드(si-p)(각각 si+p)는 Cmin로 설정된다.
- [si-p] <Cmax(각각 [si+p] > Cmax)이면, 단계(1065)에서 기준 자식 노드(si-p)(각각 si+p)는 Cmax로 설정된다.
공간 다중화를 사용하는 nt개의 전송 안테나 및 nr개의 수신 안테나를 가진 다중 안테나 시스템(MIMO)에 의해 수신된 신호를 디코딩하기 위한 다중 안테나 시스템에 대한 본 발명의 일 응용에서, 복소수 값 벡터로서 수신된 데이터 신호(yc)는 Hc, sc 및 wc가 각각 채널 행렬(H)의 복소수 값에 대응하는 Hcsc + wc와 동일하며, 벡터(s)는 전송된 데이터 신호 및 잡음 벡터(w)를 나타낸다. 그 다음, 수신된 신호(yc)는 예를 들어 식 (3)에 따라 실수 값 표현으로 변환될 수 있다:
Figure 112017029831511-pct00025
식 (3)에서,
Figure 112017029831511-pct00026
Figure 112017029831511-pct00027
은 각각 복소수 값 벡터의 실수 부분 및 허수 부분을 나타낸다. 그 다음, 등가 채널 출력은 다음과 같이 쓰여질 수 있다:
y = Hs + w (4)
길이-T 공간-시간 코드(length-T Space-Time code)가 사용되는 실시예에서, 채널 출력은 다음 식에 의해 주어지는 등가 채널 행렬(Heq)을 갖는 식(1)의 동일한 형태로 쓰여질 수 있다.
Heq = HcΦ (5)
식 (5)에서,
Figure 112017029831511-pct00028
는 기본 코드의 코딩 행렬에 대응한다. 제시(presentation)를 용이하게 하고 코딩되지 않은 방식 및 코딩된 방식의 모두가 동일한 실수 값 격자 표현을 초래한다는 것이 주어지면, 다음의 설명은 nt = nr 및 n = 2nt를 갖는 공간 다중화 및 대칭 경우를 참조하여 이루어질 것이다.
(5)에서 획득된 등가 시스템에 따르면, 수신된 신호는 H에 의해 생성되고 잡음 벡터(w)에 의해 혼란된(perturbed) 격자의 포인트로서 보여질 수 있다. 최적의 ML 탐지는 최소화 문제에 따라 H에 의해 생성된 n 차원 격자에서 가장 가까운 벡터에 대해 해결된다:
Figure 112017029831511-pct00029
이러한 MIMO 시스템에서, 트리 탐색은 지그재그 스택 디코더에서 디코딩 트리 생성 방법에 따라 생성된 디코딩 트리에 기초하여 수행될 수 있다. 신호를 지그재그 스택 디코더에 전송하기 전에, H = QR이도록 채널 행렬의 QR 분해를 사용하여 프리디코딩이 수행될 수 있으며, 여기서, Q는 직교 행렬을 나타내고, R은 상위 삼각 행렬을 나타낸다. Q의 직교성이 주어지면, 식 (4)은 다음과 같은 형식으로 다시 쓰여질 수 있다.
Figure 112017029831511-pct00030
그 다음, ML 디코딩 문제는 다음 식에 의해 주어지는 등가 시스템을 해결한다.
Figure 112017029831511-pct00031
이와 같이 R의 삼각 구조는 4차원 격자에서, 즉, nt = nr = 2에 대해 트리 탐색에 대응하는 도 4의 예에 도시된 바와 같이 순차적 트리 탐색에 가장 가까운 포인트의 탐색을 감소시킨다는 것이 주목되어야 한다.
도 4의 예에서, 트리의 노드는 심볼(si)의 상이한 가능한 값을 나타낸다. i=1,...,n인 심볼(si)은 정보 벡터(sc)의 실수 및 허수 성분을 나타낸다. 트리 브랜치는 2개의 연속 노드(si+1; si)에 의해 나타내어진다.
특정 실시예에서, 단계(104)에서, 기준 자식 노드(si)와 연관된 메트릭(fi(si))은 루트 노드(sn)로부터 현재 노드(si)로의 경로에 포함된 트리의 노드의 가중치 메트릭(w(sj))으로부터 계산될 수 있다.
특히, 레벨(i)(제 i 디코딩된 심볼)에서 기준 자식 노드(si)와 연관된 메트릭은 루트 노드(sn)로부터 현재 노드(si)로의 경로(s(i))에 포함된 트리의 노드의 가중치 메트릭(w(sj))의 합으로부터 결정된 누적된 가중치(cw(si))로서 결정될 수 있다(행렬(R)의 삼각 구조로 인해, n이 채널 행렬의 차원을 나타내는 성분(sn)으로부터 탐색이 시작함).
노드(si)의 누적된 가중치(cw(si))는 경로(s(i))를 형성하는 상이한 노드에 대한 모든 가중치의 합과 동일하기 때문에, 그것은 경로의 메트릭을 나타낸다. 트리에서의 깊이(i)의 경로는 s(i) = (sn, sn - 1,..., si)에 의해 정의된 길이(n-i+1)의 벡터를 나타낸다. 깊이가 n인 노드는 리프 노드이다.
트리의 레벨(j)에서의 노드의 가중치 메트릭(w(sj))은 수신된 신호를 나타내는 벡터(
Figure 112017029831511-pct00032
)의 제 j 성분과, 루트 노드(sn)로부터 식 (10)에 따른 레벨(j)에서의 노드(sj)까지의 트리의 노드 값을 포함하는 벡터((sn ... sj)) 사이의 유클리드 거리로서 결정될 수 있다.
Figure 112017029831511-pct00033
따라서, 노드(si)에 대한 누적된 가중치(cw(si))는 다음과 같이 결정될 수 있다:
Figure 112017029831511-pct00034
리프 노드의 경우, 누적된 가중치(cw(s1))는 수신된 신호(
Figure 112017029831511-pct00035
)와 s(1) 사이의 유클리드 거리에 대응하며, 이는
Figure 112017029831511-pct00036
와 동일하다.
이러한 실시예에서, (8)의 ML 메트릭 최소화는 최소 누적된 가중치를 갖는 트리의 경로의 탐색에 해당한다.
대안적 실시예에서, 누적된 가중치 함수(cw(si))는 바이어스 파라미터(b)를 고려함으로써 결정될 수 있으며, 여기서 b는 실수 및 양수의 값을 갖는다
Figure 112017029831511-pct00037
. 특히, 바이어스 파라미터(b)는 가중치 함수로부터 추론될 수 있음으로써, 식 (10)은 다음의 식으로 대체된다(트리의 레벨(i)에서의 노드(si)에 대한 파라미터화된 가중치(w(sj))):
Figure 112017029831511-pct00038
따라서, 이러한 대안적 파라미터화된 접근법에서, 노드(si)에 대한 누적된 가중치(cw(si))는 다음과 같이 결정될 수 있다:
Figure 112017029831511-pct00039
특히, 0인 바이어스(b)(b=0)의 적용은 ML 솔루션을 제공한다.
바이어스 파라미터의 값은 "Lattice Sequential Decoder for Coded MIMO Channel: Performance and Complexity Analysis". W. Abediseid and Mohamed Oussama Damen. CoRR abs/1101.0339 (2011)에서 설명되는 바와 같이 식 (11)에 따라 임의로 또는 채널 분산(σ²)에 따라 결정될 수 있다:
Figure 112017029831511-pct00040
디코딩 탐색 트리의 이러한 파라미터화된 실시예는 가중치 함수에서 바이어스 파라미터(b)를 고려함으로써 넓은 범위의 디코딩 성능(따라서 복잡도)을 획득하는 것을 가능하게 한다. 특히, 바이어스 파라미터의 값이 10보다 큰 경우, 디코더는 낮은 복잡도를 필요로 하면서 ZF-DFE 탐지기의 동일한 에러 성능을 제공한다.
디코딩 트리 생성 방법은 소프트 출력 디코더에서 소프트 탐지를 수행하도록 적용될 수 있다. 예를 들어, MIMO 시스템에서의 소프트 출력 디코딩은 로그 우도비(Log-Likelihood Ratio; LLR) 값의 형태로 사후 확률(Posteriori Probability) 기술을 사용하여 전달된 소프트 정보에 의존한다. 디코딩 트리 생성 방법을 소프트 출력 탐지에 적응시키기 위해, 기존의 메인 스택에 더하여, 제 2 고정 크기 스택이 추가로 사용될 수 있다. 리프 노드가 원래의 스택의 최상위에 도달하면, 방법은 ML 솔루션을 반환하고 처리를 계속할 수 있다. 리프 노드가 스택의 최상위에 도달할 때마다, 이러한 노드는 제 2 스택에 저장될 수 있다. 그 후, 획득된 근접 ML(near-ML) 솔루션은 ML 솔루션과 함께 소프트 출력 탐지를 위한 LLR 값을 생성하는 데 사용될 수 있다.
이러한 응용으로 제한되지는 않지만, 본 발명은 MIMO 탐지에 적용될 때 특별한 이점을 갖는다. 사실상, 지그재그 스택 디코더는 본 발명의 다양한 실시예에 따른 디코딩 방법의 단계가 채널 출력의 실수 및 허수 부분과 탐지된 심볼을 분리함으로써 획득된 2개의 독립적인 서브 시스템상에서 동시에 수행될 수 있도록 채널 출력의 병렬화와 결합하여 구현될 수 있다. 부가적으로, 이러한 MIMO 응용에서, 지그재그 디코더는 순서 및 격자 감소와 같은 채널 행렬에 적용되는 전처리 기술과 결합하여 구현될 수 있다.
MIMO 무선 네트워크는 복수의 스테이션을 포함하며, 각각의 스테이션은 도 5에 도시된 바와 같이 하나 이상의 안테나를 포함하는 전송기 및 수신기를 포함한다. 각각의 스테이션은 무선 연결을 통해 다른 스테이션과 통신할 수 있다.
MIMO 무선 네트워크(1)는 채널의 다양한 자유도에 걸쳐 변조된 심볼을 분배하기 위해 전송 시에 공간/시간 코드를 사용할 수 있다.
전송기(2)는 잡음이 있는 MIMO 채널에 의해 신호를 수신기(3)에 전송할 수 있다. 데이터 전송기(2)는 특히 스테이션에 통합될 수 있다. 전송기(2)는 예를 들어,
- 컨볼루션 코드를 제공하기 위한 채널 코더(20);
- 심볼을 전달하기 위한 QAM 변조기(21);
- 코드 워드를 전달하기 위한 공간/시간 코더(22);
- 각각의 전송 안테나가 OFDM 변조기와 연관될 수 있는 Ntx 전송 안테나(23)를 포함할 수 있다.
전송기(2)는 채널 코더(20)에 의해 제공된 컨볼루션 코드를 사용하여 입력으로서 수신된 이진 신호를 코딩한다. 그 후, 신호는 변조 방식(예를 들어, 직교 진폭 변조 nQAM)에 따라 변조기(21)에 의해 변조된다. 변조기(21)는 또한 예를 들어 nPSK 타입의 위상 시프트 또는 임의의 변조에 의해 변조 방식을 구현할 수 있다. 변조는 심볼(si)의 그룹에 속하는 복소 심볼의 생성을 초래한다. 그 후, 이와 같이 획득되는 변조된 심볼은 골든 코드(Golden Code)("The Golden Code: A 2x2 Full-Rate Space-Time Code with Non-Vanishing Determinants", J. -C. Belfiore, G. Rekaya, E. Viterbo, IEEE Transactions on Information Theory, vol. 51, no. 4, pages 1432-1436, April 2005)와 같이 코드 워드 STBC를 형성하기 위해 시공간 코더(22)에 의해 코딩된다. STBC 코드는 Ntx가 전송 안테나의 수이고, T가 STBC 코드의 시간 길이인 차원 Ntx*T의 복소수 행렬, 또는 공간 다중화에 기초할 수 있다(변조된 심볼은 전송 안테나에 직접 전송된다).
이와 같이 생성된 코드 워드는 시간 영역(time domain)에서 주파수 영역(frequency domain)으로 변환되고 Ntx 전송 안테나를 통해 분배된다. 그 후, 각각의 전용된 신호는 각각의 OFDM 변조기에 의해 변조되고 나서, 선택적으로 필터링, 주파수 전치 및 증폭 후에 대응하는 전송 안테나(23)를 통해 전송된다.
수신기(3)는 또한 스테이션에 통합될 수 있다. 수신기(3)는 무선 채널에서 전송기(2)에 의해 전송된 신호(y)를 수신하도록 구성될 수 있다. 채널(예를 들어 페이딩을 겪는 AWGN(additive white Gaussian noise)이 있는 채널)은 잡음이 있을 수 있다. 전송기(2)에 의해 전송된 신호는 다중 경로 및/또는 도플러 효과로 인한 에코에 의해 추가로 영향을 받을 수 있다.
예시적인 일 실시예에서, 수신기(3)는,
- 신호(y)를 수신하기 위한 Nrx 수신 안테나(33) - 각각의 수신 안테나는 각각의 OFDM 복조기와 연관되고, OFDM 복조기(Nrx 복조기)는 각각의 수신 안테나에서 관측되는 수신된 신호를 복조하고 복조된 신호를 전달하도록 구성되고, 주파수/시간 변환기는 전송 시에 구현되는 시간/주파수 변환의 역 동작을 수행하고 주파수 영역에서 신호를 전달하는데 사용될 수 있음 -;
- 디코딩된 신호를 전달하도록 구성된 공간/시간 디코더(30);
- 디코딩과 연관된 복조를 수행하도록 구성된 복조기(31)를 포함할 수 있다.
수신기(3)는 전송 시에 구현되는 처리의 역 처리를 구현한다는 것이 주목되어야 한다. 따라서, 단일 반송파 변조가 다중 반송파 변조 대신에 전송 시에 구현되는 경우, Nrx OFDM 복조기는 대응하는 단일 반송파 복조기로 대체된다.
당업자는 본 발명의 다양한 실시예가 특정 응용으로 제한되지 않는다는 것을 쉽게 이해할 것이다. 이러한 새로운 디코더의 예시적인 응용은 제한 없이 다중 사용자 통신 시스템, WiFi(IEEE 802.11n), 셀룰러 WiMax(IEEE 802.16e), 협동 WiMax(IEEE 802.16j), LTE(Long Term Evolution), LTE-어드밴스드(LTE-advanced), 5G 진행 표준화(ongoing standardization) 및 광통신과 같은 무선 표준에서 구현 가능한 구성에서의 MIMO 디코딩을 포함한다.
도 6은 수신기(3)의 공간/시간 디코더(30)의 예시적인 아키텍처를 나타낸다. 도시된 바와 같이, 공간/시간 디코더(30)는 데이터 및 어드레스 버스(64)에 의해 함께 링크되는 다음의 요소를 포함할 수 있다:
- 예를 들어 디지털 신호 프로세서(DSP)인 마이크로 프로세서(61)(또는 CPU);
- 비휘발성 메모리(62)(또는 ROM, 판독 전용 메모리);
- 랜덤 액세스 메모리(RAM)(63);
- 시간/주파수 변환기로부터 나오는 입력 신호를 수신하기 위한 인터페이스(65);
- 디코딩된 데이터를 복조기(31)에 전송하기 위한 인터페이스(66).
비휘발성 ROM 메모리(62)는 예를 들어:
- 레지스터 "Prog"(620);
- 바이어스 파라미터 "b"(621);
- 지그재그 파라미터 "p"(622)를 포함할 수 있다.
이러한 본 발명의 실시예에 따른 방법을 구현하기 위한 알고리즘은 프로그램(620)에 저장될 수 있다. CPU 프로세서(41)는 프로그램(620)을 RAM 메모리에 다운로드하고 대응하는 명령어를 실행하도록 구성될 수 있다.
RAM 메모리(63)는:
- 레지스터(Prog)(630)에서, 마이크로 프로세서(61)에 의해 실행되고 공간/시간 디코더(30)의 활성 모드에서 다운로드되는 프로그램;
- 레지스터(631)에서의 입력 데이터;
- 레지스터(632)에서의 노드에 관련되고 스택에 대응하는 데이터;
- 레지스터(632)에서의 우도(likelihood) 확률 또는 LLR을 포함할 수 있다.
레지스터(632)에 저장된 데이터는 디코딩 트리의 노드에 대해, 이러한 노드와 연관된 메트릭 및 선택적으로 보조 메트릭(루트에서 상기 노드로의 경로 및/또는 트리의 깊이)을 포함할 수 있다.
다른 실시예에 따르면, 디코딩 기술은 하드웨어 전용 구성(예를 들어, 대응하는 메모리를 갖는 하나 이상의 FPGA, ASIC 또는 VLSI 집적 회로에서) 또는 VLSI 및 DSP 모두를 사용하는 구성에 따라 구현될 수 있다.
시뮬레이션을 통해, 본 발명의 다양한 실시예에 따라 디코딩 트리 구성 방법에 의해 생성된 디코딩 트리에 기초한 디코더("지그재그 스택 디코더"로서 지칭됨)는 순차적 디코더(Sequential Decoder), 스택(Stack) 디코더 및 SB-Stack 디코더와 유사한 ML 성능을 제공한다는 것이 관찰되었다. 이러한 디코더의 계산 복잡도를 평가하기 위해, 프리디코딩 및 탐색 단계에 대한 곱셈의 총 수가 계산되었다. 16-QAM 변조와 2×2 및 4×4 MIMO 방식이 시뮬레이션에서 사용되었다. 도 7 및 도 8은 획득된 성능을 보여주고, 특히 기존의 것보다 디코더가 제공하는 상당한 복잡도 이득을 보여준다. 개선된 순차적 디코더는 nt = nr = 2에 대한 종래의 스택 디코더보다 46%의 평균 복잡도 이득을 제공하고, nt = nr = 4 일 때 적어도 50%의 평균 복잡도 이득을 제공한다.
도 9 및 도 10은 각각의 생성된 자식 노드의 메트릭이 바이어스 파라미터(b)에 기초하여 결정되는 본 발명의 특정 실시예에서 지그재그 스택 디코더의 시뮬레이션으로부터 획득된 수치 결과를 나타낸다. 수치 결과는 심볼 에러율(Symbol Error Rate) 및 바이어스 파라미터(b)의 상이한 값에 대한 총 계산 복잡도를 평가하는 것에 기초한다. 도 7 및 도 8에 도시된 바와 같이, 바이어스(b)의 작은 값은 b = 0에 도달되는 근접 ML 성능을 획득하도록 허용한다. 바이어스가 증가하면, SER 성능이 나빠지는 대신에 복잡도가 감소될 수 있다. 바이어스 b ≥ 10의 경우, 지그재그 스택은 복잡도가 크게 감소한 ZF-DFE 성능을 반환한다.
본 발명의 실시예가 다양한 예의 설명에 의해 예시되었고, 이러한 실시예가 상당히 상세히 설명되었지만, 본 출원인의 의도는 첨부된 청구 범위를 제한하거나 어떤 방식으로든 한정하는 것이 아니다. 부가적인 이점 및 수정은 당업자에게 용이하게 나타날 것이다. 따라서, 더욱 넓은 양태에서의 본 발명은 보여주고 설명된 특정한 상세 사항, 대표적인 방법 및 예시적인 예로 제한되지 않는다. 따라서, 출원인의 일반적인 발명의 개념의 사상 또는 범위로부터 벗어나지 않고 이러한 상세 사항으로부터 변경이 이루어질 수 있다.
특히, 본 발명의 다양한 실시예는 특정 타입의 탐지로 제한되지 않고, 경(hard) 및 연(soft) 탐지 모두에 적용된다.
또한, 본 명세서에서 설명된 프로그램 코드는 본 발명의 특정 실시예에서 프로그램 코드가 구현되는 애플리케이션 또는 소프트웨어 구성 요소에 기초하여 식별될 수 있다. 본 명세서에 개시된 다양한 특징, 응용 및 장치는 또한 단독으로 또는 임의의 조합으로 사용될 수 있다는 것이 더 이해되어야 한다.

Claims (15)

  1. 통신 시스템에서 수신된 데이터 신호를 디코딩하는 방법에 있어서,
    - 디코딩 트리를 반복적으로 구성하는 단계로서, 상기 디코딩 트리의 각각의 노드는 상기 데이터 신호의 심볼의 성분에 대응하고 메트릭과 연관되는 단계를 포함하고,
    상기 디코딩 트리를 반복적으로 구성하는 단계는 스택의 최상위에 저장된 상기 디코딩 트리의 현재 노드에 대해:
    - 상기 수신된 데이터 신호를 나타내는 벡터로부터 상기 현재 노드의 기준 자식 노드(si)를 생성하는 단계(103);
    - 상기 기준 자식 노드(si)로부터, 상기 기준 자식 노드(si)의 값으로부터 양의 정수 파라미터(p)를 감산함으로써 제 1 이웃 자식 노드를 생성하며, 상기 양의 정수 파라미터(p)를 상기 기준 자식 노드(si)의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계(106);
    - 상기 기준 자식 노드와 상기 제 1 및 제 2 이웃 자식 노드들 중 많아야 3개의 자식 노드를 상기 스택에 저장하는 단계(108)로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 상기 스택에 저장되며, 상기 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계(108);
    - 상기 스택으로부터 상기 현재 노드를 제거하는 단계(109);
    - 상기 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계(111)의 적어도 하나의 반복을 구현하며;
    상기 디코딩 트리의 각각의 노드의 값은 최소 임계값과 최대 임계값 사이의 미리 정의된 범위를 갖는 주어진 성상도에 속하는 심볼의 성분에 대응하고, 자식 노드를 생성하는 각각의 단계는 상기 최소 임계값과 최대 임계값에 기초하여 상기 자식 노드의 값을 설정하는 단계를 포함하고,
    상기 방법은 상기 스택에 저장된 상기 노드 정보로부터 상기 데이터 신호의 추정을 결정하는 단계를 더 포함하는, 수신된 데이터 신호의 디코딩 방법.
  2. 제 1 항에 있어서,
    상기 수신된 데이터 신호는 전송 채널에 의해 이송되는 전송된 데이터 신호에 대응하고, 상기 전송 채널은 주어진 차원(n)의 채널 행렬(H)과 연관되고, QR 분해는 상기 채널 행렬에 미리 적용되고, Q는 직교 행렬을 나타내고, R은 상위 삼각 행렬을 나타내며, 상기 기준 자식 노드를 생성하는 단계는 상기 수신된 데이터 신호를 나타내는 상기 벡터를 상기 상위 삼각 행렬의 계층 상에 투영하는 단계를 포함하는, 수신된 데이터 신호의 디코딩 방법.
  3. 제 2 항에 있어서,
    상기 기준 자식 노드는 루트 노드로부터 상기 현재 노드로의 경로에 포함된 디코딩 트리 노드의 값으로부터 더 생성되는, 수신된 데이터 신호의 디코딩 방법.
  4. 제 3 항에 있어서,
    상기 기준 자식 노드를 생성하는 단계는 수량
    Figure 112019067558308-pct00041
    의 가장 가까운 정수로부터 상기 기준 자식 노드를 결정하는 단계를 포함하며, i는 상기 디코딩 트리에서의 상기 기준 자식 노드의 레벨을 나타내고, Rij는 상기 상위 삼각 행렬(R)의 성분(i,j)을 나타내며,
    Figure 112019067558308-pct00042
    는 수신된 데이터 신호(
    Figure 112019067558308-pct00043
    )의 제 i 성분을 나타내는, 수신된 데이터 신호의 디코딩 방법.
  5. 제 4 항에 있어서,
    상기 기준 자식 노드를 생성하는 단계는 상기 디코딩 트리의 루트 노드로부터 상기 현재 노드로의 경로에 포함된 상기 디코딩 트리 노드와 연관된 가중치 메트릭(w(sj))으로부터 상기 기준 자식 노드(si)와 연관된 메트릭(fi(si))을 결정하는 단계를 포함하는, 수신된 데이터 신호의 디코딩 방법.
  6. 제 5 항에 있어서,
    상기 기준 자식 노드(si)와 연관된 상기 메트릭은 상기 루트 노드로부터 상기 현재 노드로의 경로에 포함된 상기 디코딩 트리 노드의 가중치 메트릭(w(sj))의 합으로부터 결정된 누적된 가중치에 의해 나타내어지고, 상기 디코딩 트리의 주어진 레벨(j)에서의 노드의 상기 가중치 메트릭(w(sj))은 상기 수신된 데이터 신호를 나타내는 벡터(
    Figure 112019067558308-pct00044
    )의 제 j 성분과 상기 루트 노드로부터 레벨(j)에서의 노드까지의 디코딩 트리의 노드를 포함하는 벡터((sn ... sj)) 사이의 유클리드 거리로서 결정되는, 수신된 데이터 신호의 디코딩 방법.
  7. 제 5 항에 있어서,
    상기 기준 자식 노드(si)와 연관된 상기 메트릭은 상기 루트 노드로부터 상기 현재 노드로의 경로에 포함된 상기 디코딩 트리 노드의 상기 가중치 메트릭(w(sj))의 합으로부터 결정된 누적된 가중치에 의해 나타내어지며, 상기 디코딩 트리의 레벨(j)에서의 노드의 상기 가중치 메트릭(w(sj))은,
    - 상기 수신된 데이터 신호를 나타내는 벡터(
    Figure 112019067558308-pct00045
    )의 제 j 성분과 상기 루트 노드로부터 레벨(j)에서의 노드까지의 디코딩 트리의 노드의 값을 포함하는 벡터(sn ... sj) 사이의 유클리드 거리, 및
    - 미리 정의된 바이어스 파라미터(b)와 상기 레벨(j)의 곱
    의 차로서 결정되고,
    상기 미리 정의된 바이어스 파라미터(b)는 실수 및 양의 값인, 수신된 데이터 신호의 디코딩 방법.
  8. 제 3 항에 있어서,
    상기 많아야 3개의 자식 노드를 상기 스택에 저장하는 단계는 각각의 노드와 관련하여 보조 파라미터를 스택에 저장하는 단계를 더 포함하고, 상기 보조 파라미터는 노드 경로를 포함하며, 상기 데이터 신호의 추정은 상기 스택에 저장된 상기 노드 경로로부터 결정되는, 수신된 데이터 신호의 디코딩 방법.
  9. 제 1 항에 있어서,
    상기 최상위 노드를 선택하는 단계는 상기 스택에서 선택된 상기 최상위 노드가 리프 노드인지를 판단하는 단계를 더 포함하며, 상기 방법은,
    - 상기 선택된 노드가 리프 노드가 아닌 경우에는 다음 반복을 수행하는 단계, 및
    - 상기 선택된 노드가 리프 노드인 경우에는 상기 반복을 종료하는 단계를 포함하는, 수신된 데이터 신호의 디코딩 방법.
  10. 제 1 항에 있어서,
    상기 최상위 노드를 선택하는 단계는 상기 스택에서 선택된 상기 최상위 노드가 리프 노드인지를 판단하는 단계를 더 포함하고, 상기 방법은,
    - 상기 선택된 노드가 리프 노드가 아닌 경우에는 다음 반복을 수행하는 단계, 및
    - 상기 선택된 노드가 리프 노드인 경우:
    Figure 112019067558308-pct00046
    상기 스택으로부터 상기 리프 노드를 제거하는 단계,
    Figure 112019067558308-pct00047
    상기 리프 노드를 보조 스택에 저장하는 단계를 포함하며,
    상기 데이터 신호의 추정은 상기 보조 스택에 저장된 상기 노드 정보로부터 결정되는, 수신된 데이터 신호의 디코딩 방법.
  11. 제 1 항에 있어서,
    상기 기준 자식 노드를 생성하는 단계와 상기 제1 및 제 2 이웃자식 노드를 생성하는 각각의 단계는 상기 자식 노드의 값에 대해 생성된 가장 가까운 정수가 상기 최소 임계값과 상기 최대 임계값 사이에 포함되는지를 판단하는 단계를 포함하며, 상기 방법은 생성된 3 개의 자식 노드 중 적어도 하나에 대해:
    - 상기 자식 노드의 값에 대해 생성된 가장 가까운 정수가 상기 최소 임계값과 상기 최대 임계값 사이에 포함되는 경우, 상기 자식 노드를 상기 성상도 범위 내의 상기 가장 가까운 정수 값으로 설정하는 단계를 더 포함하는, 수신된 데이터 신호의 디코딩 방법.
  12. 제 11 항에 있어서,
    - 상기 자식 노드의 값에 대해 생성된 가장 가까운 정수가 상기 미리 정의된 최소 임계값보다 작은 경우, 자식 노드 값을 상기 최소 임계값과 동일하게 설정하는 단계;
    - 상기 자식 노드의 값에 대해 생성된 가장 가까운 정수가 상기 최대 임계값보다 큰 경우, 상기 자식 노드 값을 상기 최대 임계값과 동일하게 설정하는 단계를 더 포함하는, 수신된 데이터 신호의 디코딩 방법.
  13. 제 2 항에 있어서,
    상기 통신 시스템은 다중 안테나 시스템이고, 상기 전송 채널은 주어진 차원의 채널 행렬(H)과 연관되고, 상기 수신된 데이터 신호(yc)는 Hcsc + wc와 동일하고, Hc, sc 및 wc는 각각 상기 채널 행렬(H), 상기 전송된 데이터 신호를 나타내는 벡터(s) 및 잡음 벡터(w)의 복소수 값에 대응하고, 상기 수신된 데이터 신호는 실수치 표현으로 사전에 변환되고, 상기 표현은 다음의 식에 의해 정의되며:
    Figure 112019067558308-pct00048

    Figure 112019067558308-pct00049
    Figure 112019067558308-pct00050
    은 각각 파라미터로서 명시된 복소수 값 벡터의 실수 부분 및 허수 부분을 나타내는, 수신된 데이터 신호의 디코딩 방법.
  14. 수신된 데이터 신호를 디코딩하기 위한 컴퓨터가 읽을 수 있는 비일시적 저장 매체에 저장된 프로그램에 있어서,
    상기 프로그램은, 컴퓨터로 읽을 수 있는 비일시적 기록매체 상에 저장되는 명령어를 포함하며,
    상기 명령어는 프로세서에 의해 실행될 때 상기 프로세서가,
    - 각각의 노드가 상기 데이터 신호의 심볼의 성분에 대응하며 메트릭과 연관되는 디코딩 트리를 반복적으로 구성하도록 하게 하고,
    상기 디코딩 트리를 반복적으로 구성하는 단계는 스택의 최상위에 저장된 상기 디코딩 트리의 현재 노드에 대해:
    - 상기 수신된 데이터 신호를 나타내는 벡터로부터 상기 현재 노드의 기준 자식 노드(si)를 생성하는 단계(102);
    - 상기 기준 자식 노드(si)로부터, 상기 기준 자식 노드(si)의 값으로부터 양의 정수 파라미터(p)를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 상기 양의 정수 파라미터(p)를 상기 기준 자식 노드(si)의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계(106);
    - 상기 기준 자식 노드와 상기 제 1 및 제 2 이웃 자식들 중 많아야 3개의 자식 노드를 상기 스택에 저장하는 단계(108)로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 상기 스택에 저장되고, 상기 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계(108);
    - 상기 스택으로부터 상기 현재 노드를 제거하는 단계(109);
    - 상기 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계(111)
    의 적어도 하나의 반복을 실행하고;
    상기 디코딩 트리의 각각의 노드의 값은 최소 임계값과 최대 임계값 사이의 미리 정의된 범위를 갖는 주어진 성상도에 속하는 심볼의 성분에 대응하고, 자식 노드를 생성하는 각각의 단계는 상기 최소 임계값과 최대 임계값에 기초하여 상기 자식 노드의 값을 설정하는 단계를 포함하고,
    상기 명령어는 상기 프로세서가 상기 스택에 저장된 상기 노드 정보로부터 상기 데이터 신호의 추정을 더 결정하게 하는, 비일시적 저장 매체에 저장된 프로그램.
  15. 수신된 데이터 신호를 디코딩하기 위한 장치에 있어서,
    - 적어도 하나의 프로세서; 및
    - 상기 적어도 하나의 프로세서에 결합되고, 상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 장치로 하여금 디코딩 트리의 각각의 노드가 상기 데이터 신호의 심볼의 성분에 대응하고, 메트릭과 연관되는 디코딩 트리를 반복적으로 구성하는 단계를 수행하도록 하는 명령어를 포함하는 메모리를 포함하고,
    상기 디코딩 트리를 반복적으로 구성하는 단계는 스택의 최상위에 저장된 상기 디코딩 트리의 현재 노드에 대해:
    - 상기 수신된 데이터 신호를 나타내는 벡터로부터 상기 현재 노드의 기준 자식 노드(si)를 생성하는 단계;
    - 상기 기준 자식 노드(si)로부터, 상기 기준 자식 노드(si)의 값으로부터 양의 정수 파라미터(p)를 감산함으로써 제 1 이웃 자식 노드를 생성하고, 상기 양의 정수 파라미터(p)를 상기 기준 자식 노드(si)의 값에 가산함으로써 제 2 이웃 자식 노드를 생성하는 단계;
    - 상기 기준 자식 노드와 상기 제 1 및 제 2 이웃 자식 노드들 중 많아야 3개의 자식 노드를 상기 스택에 저장하는 단계로서, 각각의 자식 노드는 미리 결정된 메트릭을 포함하는 노드 정보와 관련하여 상기 스택에 저장되고, 상기 스택의 노드는 메트릭의 값을 증가시킴으로써 순서가 정해지는 단계;
    - 상기 스택으로부터 상기 현재 노드를 제거하는 단계;
    - 상기 스택의 최상위 노드를 새로운 현재 노드로서 선택하는 단계의 적어도 하나의 반복을 구현하며;
    상기 디코딩 트리의 각각의 노드의 값은 최소 임계값과 최대 임계값 사이의 미리 정의된 범위를 갖는 주어진 성상도에 속하는 심볼의 성분에 대응하고, 자식 노드를 생성하는 각각의 단계는 상기 최소 임계값과 최대 임계값에 기초하여 상기 자식 노드의 값을 설정하는 단계를 포함하고,
    상기 장치는 상기 스택에 저장된 상기 노드 정보로부터 상기 데이터 신호의 추정을 더 결정하는, 수신된 데이터 신호의 디코딩 장치.
KR1020177008299A 2014-09-29 2015-09-28 디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템 KR102060866B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP14306517.5 2014-09-29
EP14306517.5A EP3001625B1 (en) 2014-09-29 2014-09-29 Methods and systems for decoding a data signal based on the generation of a decoding tree
PCT/EP2015/072280 WO2016050703A2 (en) 2014-09-29 2015-09-28 Methods and systems for decoding a data signal based on the generation of a decoding tree

Publications (2)

Publication Number Publication Date
KR20170051461A KR20170051461A (ko) 2017-05-11
KR102060866B1 true KR102060866B1 (ko) 2019-12-30

Family

ID=51752066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177008299A KR102060866B1 (ko) 2014-09-29 2015-09-28 디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템

Country Status (6)

Country Link
US (1) US10484133B2 (ko)
EP (1) EP3001625B1 (ko)
KR (1) KR102060866B1 (ko)
CN (1) CN107005505B (ko)
HK (1) HK1221352A1 (ko)
WO (1) WO2016050703A2 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3059915B1 (en) 2015-02-19 2021-03-24 Institut Mines-Telecom Tree search-based decoding
EP3104565B1 (en) 2015-06-12 2020-03-25 Institut Mines-Télécom Sequential decoding with stack reordering
EP3104564B1 (en) 2015-06-12 2020-05-06 Institut Mines-Télécom Anticipated termination for sequential decoders
EP3188390B1 (en) 2015-12-28 2020-01-22 Institut Mines-Télécom Weighted sequential decoding
CN106877976B (zh) * 2016-12-30 2020-04-10 深圳大学 锯齿解码在分布式多址接入网中的高系统吞吐量设计方法
CN107147606B (zh) * 2017-05-05 2020-06-09 哈尔滨工业大学 一种广义空间调制中格基规约辅助的线性检测方法
CN109995463A (zh) * 2017-12-29 2019-07-09 深圳超级数据链技术有限公司 一种qr分解检测方法和装置
US11309992B2 (en) * 2018-07-17 2022-04-19 Qualcomm Incorporated Using lattice reduction for reduced decoder complexity

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2930861B1 (fr) * 2008-05-05 2012-10-19 Groupe Des Ecoles De Telecommunications Get Ecole Nationale Superieure Des Telecommunications Enst Procede de decodage d'un signal mettant en oeuvre une construction progressive d'un arbre de decodage, produit programme d'ordinateur et signal correspondants
US8432989B2 (en) * 2008-12-18 2013-04-30 Nec Laboratories America, Inc. Max-log stack decoder
CN103905319B (zh) * 2014-03-24 2017-02-01 中国电子科技集团公司第三十研究所 一种基于迭代编码的多约束组播路由算法

Also Published As

Publication number Publication date
US10484133B2 (en) 2019-11-19
WO2016050703A2 (en) 2016-04-07
KR20170051461A (ko) 2017-05-11
US20170264392A1 (en) 2017-09-14
EP3001625B1 (en) 2021-05-19
WO2016050703A3 (en) 2016-06-02
CN107005505B (zh) 2020-09-22
EP3001625A1 (en) 2016-03-30
HK1221352A1 (zh) 2017-05-26
CN107005505A (zh) 2017-08-01

Similar Documents

Publication Publication Date Title
KR102060866B1 (ko) 디코딩 트리의 생성에 기초하여 데이터 신호를 디코딩하기 위한 방법 및 시스템
KR101844766B1 (ko) 매개변수화 순차 복호화
KR102075275B1 (ko) 순차적 디코더용 예상 종료
KR102075226B1 (ko) 트리 검색 기반 디코딩
KR101890998B1 (ko) 반소모적 회귀 블록 복호화 방법 및 장치
KR101923782B1 (ko) 가중식 순차 디코딩
KR101973849B1 (ko) 순차적 스피어 디코딩을 위한 방법 및 장치
KR102037614B1 (ko) 스택 재배열을 이용하는 순차적 디코딩
Mejri et al. Reduced-Complexity Stack Decoder for MIMO Systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant