KR20210096254A - 병렬화된 재귀적 블록 디코딩을 위한 디바이스들 및 방법들 - Google Patents
병렬화된 재귀적 블록 디코딩을 위한 디바이스들 및 방법들 Download PDFInfo
- Publication number
- KR20210096254A KR20210096254A KR1020217021074A KR20217021074A KR20210096254A KR 20210096254 A KR20210096254 A KR 20210096254A KR 1020217021074 A KR1020217021074 A KR 1020217021074A KR 20217021074 A KR20217021074 A KR 20217021074A KR 20210096254 A KR20210096254 A KR 20210096254A
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- sub
- candidate
- vectors
- information symbols
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 38
- 239000013598 vector Substances 0.000 claims abstract description 352
- 239000011159 matrix material Substances 0.000 claims abstract description 79
- 230000001186 cumulative effect Effects 0.000 claims abstract description 26
- 230000005540 biological transmission Effects 0.000 claims abstract description 24
- 238000000638 solvent extraction Methods 0.000 claims description 32
- 238000005192 partition Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 4
- 230000009467 reduction Effects 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims 2
- 108091006146 Channels Proteins 0.000 description 59
- 238000004891 communication Methods 0.000 description 42
- 238000012545 processing Methods 0.000 description 21
- 238000007476 Maximum Likelihood Methods 0.000 description 14
- 230000003287 optical effect Effects 0.000 description 14
- 239000000835 fiber Substances 0.000 description 9
- 238000000354 decomposition reaction Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000005562 fading Methods 0.000 description 5
- 229910052709 silver Inorganic materials 0.000 description 5
- 239000004332 silver Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000010287 polarization Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 241000169170 Boreogadus saida Species 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 229940050561 matrix product Drugs 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03178—Arrangements involving sequence estimation techniques
- H04L25/03248—Arrangements for operating in conjunction with other apparatus
- H04L25/03292—Arrangements for operating in conjunction with other apparatus with channel estimation circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/463—Program control block organisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/02—Arrangements for detecting or preventing errors in the information received by diversity reception
- H04L1/06—Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
- H04L1/0618—Space-time coding
- H04L1/0631—Receiver arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/02—Arrangements for detecting or preventing errors in the information received by diversity reception
- H04L1/06—Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
- H04L1/0618—Space-time coding
- H04L1/0637—Properties of the code
- H04L1/0656—Cyclotomic systems, e.g. Bell Labs Layered Space-Time [BLAST]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03178—Arrangements involving sequence estimation techniques
- H04L25/03184—Details concerning the metric
- H04L25/03197—Details concerning the metric methods of calculation involving metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03178—Arrangements involving sequence estimation techniques
- H04L25/03248—Arrangements for operating in conjunction with other apparatus
- H04L25/03254—Operation with other circuitry for removing intersymbol interference
- H04L25/03267—Operation with other circuitry for removing intersymbol interference with decision feedback equalisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03178—Arrangements involving sequence estimation techniques
- H04L25/03248—Arrangements for operating in conjunction with other apparatus
- H04L25/0328—Arrangements for operating in conjunction with other apparatus with interference cancellation circuitry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L2025/0335—Arrangements for removing intersymbol interference characterised by the type of transmission
- H04L2025/03426—Arrangements for removing intersymbol interference characterised by the type of transmission transmission using multiple-input and multiple-output channels
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Radio Transmission System (AREA)
Abstract
채널 매트릭스로 표현되는 송신 채널을 통해 수신되는 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더 (300).
디코더는:
- 정보 심볼들의 벡터를 2 이상의 서브-벡터들로 분할하도록 구성된 블록 분할 유닛 (303) 으로서, 각각의 서브-벡터는 블록 레벨과 연관되는, 상기 블록 분할 유닛 (303);
- 후보 서브-벡터들을 병렬로 결정하고 후보 서브-벡터들을 제 1 스택 (310) 에 저장하도록 구성된 2 이상의 프로세서들을 포함한다. 각각의 프로세서는 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하고, 그리고 각각의 후보 서브-벡터를 디코딩 메트릭 및 후보 서브-벡터와 연관된 블록 레벨과 함께 저장하도록 구성된다. 디코딩 메트릭은 디코딩 메트릭 임계치 이하이다. 2 이상의 프로세서들 중의 프로세서는 제 1 스택 (310) 에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트하도록 구성된다.
디코더는:
- 정보 심볼들의 벡터를 2 이상의 서브-벡터들로 분할하도록 구성된 블록 분할 유닛 (303) 으로서, 각각의 서브-벡터는 블록 레벨과 연관되는, 상기 블록 분할 유닛 (303);
- 후보 서브-벡터들을 병렬로 결정하고 후보 서브-벡터들을 제 1 스택 (310) 에 저장하도록 구성된 2 이상의 프로세서들을 포함한다. 각각의 프로세서는 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하고, 그리고 각각의 후보 서브-벡터를 디코딩 메트릭 및 후보 서브-벡터와 연관된 블록 레벨과 함께 저장하도록 구성된다. 디코딩 메트릭은 디코딩 메트릭 임계치 이하이다. 2 이상의 프로세서들 중의 프로세서는 제 1 스택 (310) 에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트하도록 구성된다.
Description
본 발명은 일반적으로 디지털 통신에 관한 것으로, 특히 데이터 신호를 디코딩하기 위한 방법들 및 디바이스들에 관한 것이다.
다중 입력 다중 출력 (MIMO) 기술은 높은 송신 레이트를 제공하기 위해 여러 통신 시스템에서 사용되고 있다. MIMO 시스템들은 공간 및 시간 차원들을 활용하여, 복수의 시간 슬롯들에 걸쳐, 다수의 송신 및/또는 수신 안테나들을 사용하여 더 많은 데이터 심볼들을 인코딩 및 멀티플렉싱한다. 따라서, MIMO 기반 통신 시스템의 용량, 범위 및 신뢰도가 향상될 수 있다. 예시적인 MIMO 통신 시스템들은 유선, 무선, 및 광 통신 시스템들을 포함한다.
공간-시간 다이버시티는 공간-시간 코딩을 사용하는 MIMO 시스템에서 달성된다. 송신기 디바이스들에서, 공간-시간 인코더들은 데이터 스트림들을 송신 채널을 통해 이후에 송신된 코드워드들로 인코딩하도록 구현된다. 수신기 디바이스들에서, 공간-시간 디코더들은 송신기 디바이스(들)에 의해 전달되는 의도된 데이터 스트림들을 복원하도록 구현된다.
여러 공간-시간 디코딩 알고리즘들이 존재한다. 사용될 디코딩 알고리즘의 선택은 타겟 성능 및 구현 복잡도 및 관련 비용에 의존한다.
균등하게 분포된 정보 심볼들이 존재하는 경우, 최적의 공간-시간 디코더들은 최대 우도 (ML) 디코딩 기준을 구현한다. 예시적인 ML 디코딩 알고리즘들은 스피어 디코더, Schnorr-Euchner 디코더, 스택 디코더, 및 SB-스택 디코더와 같은 완전 탐색 및 순차 디코딩 알고리즘들을 포함한다. ML 디코더는 최적의 성능을 제공하지만, 안테나의 수와 정보 심볼이 속하는 알파벳의 크기에 따라 증가하는 높은 계산 복잡도를 요구한다.
대안적으로, ML 디코더보다 낮은 계산 복잡도를 요구하는 준최적의 디코딩 알고리즘이 사용될 수 있다. 예시적인 준최적 디코딩 알고리즘들은 제로-포싱 (ZF) 및 최소 평균 제곱 에러 (MMSE) 디코더들과 같은 선형 디코더들 및 ZF-DFE 디코더와 같은 비선형 디코더들을 포함한다.
선형 및 비선형 디코더들 양자는 개별적으로 각각의 정보 심볼의 심볼간 간섭 제거 및 추정에 기초한다.
다른 블록 디코딩 접근법에 따르면, 정보 심볼들은 서브-벡터들에 의해, 즉 심볼들의 블록들에 의해 디코딩될 수 있다. 블록 디코딩을 구현하는 디코딩 알고리즘들은 정보 심볼들의 벡터를 2 이상의 서브-벡터들로 분할하는 것에 기초한다. 각각의 서브-벡터는 정보 심볼들의 이전에 추정된 서브-벡터들이 주어지면 개별적으로 그리고 재귀적으로 추정된다. 심볼의 각 서브-벡터의 추정은 심볼 추정 알고리즘 (이하, '추정 알고리즘' 이라고도 함) 을 이용하여 수행된다. 임의의 순차적, 선형 또는 비선형 디코딩 알고리즘은 정보 심볼들의 대응하는 서브-벡터의 추정치를 생성하기 위한 심볼 추정 알고리즘으로서 주어진 블록에서 구현될 수도 있다.
QR 기반 블록 디코딩 알고리즘들에 따르면, 정보 심볼들의 벡터의 분할은 송신 채널을 나타내는 상삼각 매트릭스의 분할에 따라 이루어진다. 상삼각 매트릭스는 송신 채널을 대표하는 채널 매트릭스에 QR 분해를 적용하여 구할 수 있다.
QR 기반 블록 디코딩 알고리즘은 "W-J Choi, R. Negi, and J.M.Cioffi, Combined ML and DFE decoding for the V-BLAST system, IEEE International Conference on Communications, Volume 3, pages 1243-1248, 2000" 에 개시된다. 데이터 스트림들의 공간 멀티플렉싱을 사용하는 무선 MIMO 시스템들에 대해 ML 및 DFE 디코딩의 조합이 제안된다. 길이 의 정보 심볼들의 벡터는 각각 길이들 및 의 2 개의 서브-벡터들로 1차 분할된다. 그 후에 ML 디코딩은 정보 심볼들을 포함하는 서브-벡터의 추정치를 결정하는데 사용된다. 그 후, 결정 피드백 등화를 사용하여, 심볼간 간섭 제거 후에 나머지 심볼들이 추정된다. 분할 파라미터들의 선택, 즉 서브-벡터들의 수 및 각각의 서브-벡터의 길이는 결정론적이다.
코딩된 무선 MIMO 시스템들에 대한 다른 QR-기반 블록 디코딩 알고리즘들이 예를 들어 다음에 개시된다:
- "K. Pavan Srinath and B. Sundar Rajan, Low ML-Decoding Complexity, Large Coding Gain, Full-Rate, Full-Diversity STBCs for 2x2 and 4x2 MIMO Systems, IEEE Journal of Selected Topics in Signal Processing, Volume 3, Issue 6, pages 916-927, 2009";
- "L. P. Natarajan, K. P. Srinath, and B. Sundar Rajan, On The Sphere Decoding Complexity of Gigh-Rate Multigroup Decodable STBCs in Asymmetric MIMO Systems, IEEE Transactions on Information Theory, Volume 59, Issue 9, 2013"; 및
- "T. P. Ren, Y. L. Guan, C. Yuen, and R. J. Shen. Fast-group-decodable space-time block code.In Proceedings of IEEE Information Theory Workshop, pages 1-5, January 2010".
다른 QR-기반 블록 디코딩 접근법에 따르면, 정보의 벡터의 추정은 정보 심볼들의 각각의 서브-벡터와 연관되는 후보 서브-벡터들의 완전 탐색에 기초한다. 이러한 방식에 따르면, 수신 신호는 2 이상의 서브-벡터로 분할된다. 정보 심볼들의 각각의 서브-벡터에 대해, 정보 심볼들의 이러한 서브-벡터의 추정치를 나타내는 모든 가능한 후보 서브-벡터들을 열거하기 위해 완전 탐색이 적용된다. 재귀적 간섭 제거를 사용하여, 후보들의 완전 리스트들은 상삼각 매트릭스에서 하위 레벨에 있는 블록들과 관련하여 이전에 디코딩된 서브-벡터들로 인한 간섭을 감산하고 ML 또는 ZF-DFE 추정 알고리즘을 적용함으로써 구성된다. 정보 심볼들의 모든 서브-벡터들에 대한 후보들의 리스트들을 도출한 후, 최소 디코딩 메트릭과 연관된 후보 서브-벡터들을 포함하는 후보 벡터에 대응하는 해결책이 정보 심볼들의 벡터의 추정치로서 전달된다.
정보 심볼들의 각각의 서브-벡터와 관련하여 후보 서브-벡터들의 생성을 위해 적용되는 완전 탐색은 높은 계산 복잡도를 요구한다.
최근, 특허 출원 번호 15306808.5 에서 'semi-exhaustive recursive block decoder' 로 불리는 QR 기반 블록 디코딩 알고리즘이 제안되었다. 반-완전 (semi-exhaustive) 재귀 블록 디코더는 원래의 완전 탐색 기반 재귀 디코더로부터 영향을 받은 디코딩 솔루션을 제공한다. 따라서, 정보 심볼들의 각각의 서브-벡터의 모든 가능한 후보 추정치들을 열거하기 위해 완전 탐색을 수행하는 대신에, 반-완전 재귀 블록 디코더는 각각의 서브-벡터에 대해, 생성될 후보 서브-벡터들의 디코딩 메트릭에 대한 임계치로서 반경을 사용한다. 이러한 임계치들을 설정하는 것은 상이한 리스트들에서의 후보 서브-벡터들의 수를 감소시키는 것을 가능하게 한다. 상이한 서브-벡터들에 대한 반경 임계치들의 선택은 타겟 다이버시티 순서에 따라 수행된다. 반-완전 재귀 블록 디코더는 원래의 완전 탐색 기반 재귀 블록 디코더에 비해 감소된 디코딩 복잡도로 더 양호한 디코딩 성능을 제공한다.
기존의 재귀 블록 디코딩 알고리즘은 선형 및 비선형 디코더보다 더 양호한 성능을 제공한다. 그러나, 이들은 선형 및 비선형 디코더들에 비해 증가된 계산 복잡도를 여전히 요구한다. 따라서, 저복잡도 및 저지연 재귀 블록 디코더를 개발할 필요가 있다.
이러한 문제 및 다른 문제를 해결하기 위해, 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더가 제공되며, 신호는 채널 매트릭스에 의해 표현되는 송신 채널을 통해 수신된다. 디코더는:
- 채널 매트릭스의 서브-매트릭스들로의 분할에 따라 정보 심볼들의 벡터를 정보 심볼들의 2 이상의 서브-벡터들로 분할하도록 구성된 블록 분할 유닛으로서, 각각의 서브-벡터는 채널 매트릭스에서의 서브-벡터의 레벨을 나타내는 블록 레벨과 연관되는, 상기 블록 분할 유닛;
- 후보 서브-벡터들을 결정하고 후보 서브-벡터들을 제 1 스택에 저장하기 위해 병렬로 동작하도록 구성된 2 이상의 프로세서들을 포함하며, 2 이상의 프로세서들의 각각은, 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하는 것으로서, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타내는, 상기 적어도 후보 서브-벡터를 결정하고, 그리고 디코딩 메트릭 및 채널 매트릭스 내의 후보 서브-벡터의 레벨을 나타내는 블록 레벨과 함께 정보 심볼들의 적어도 후보 서브-벡터를 제 1 스택에 저장하도록 구성된다. 디코딩 메트릭은 디코딩 메트릭 임계치 이하이다. 2 이상의 프로세서들 중의 프로세서는 제 1 스택에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 정보 심볼들의 벡터의 추정치를 나타내고 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트하도록 구성된다.
일부 실시형태들에 따르면, 2 이상의 프로세서들은 다음을 포함할 수도 있다:
- 최고 블록 레벨과 연관된 정보 심볼들의 서브-벡터들로부터 시작하여 최저 블록 레벨과 연관된 정보 심볼들의 서브-벡터에 도달할 때까지 추정 알고리즘을 재귀적으로 적용함으로써 정보 심볼들의 각각의 서브-벡터와 연관된 하나 이상의 후보 서브-벡터들을 결정하도록 구성된 제 1 프로세서로서, 상기 제 1 프로세서는 각각의 후보 서브-벡터를 제 1 스택에 저장하도록 구성되는, 상기 제 1 프로세서,
- 최저 블록 레벨과 연관된 서브-벡터를 제 1 스택에서 재귀적으로 선택하고 채널 매트릭스에서 최저 블록 레벨에 도달할 때까지 심볼 추정 알고리즘을 적용함으로써 최저 블록 레벨보다 낮은 블록 레벨들과 연관된 정보 심볼들의 서브-벡터들 각각과 연관된 후보 서브-벡터를 결정함으로써 하나 이상의 후보 서브-벡터들을 결정하도록 구성된 제 2 프로세서를 포함할 수도 있다. 상기 제 2 프로세서는 추가로, 상기 선택된 후보 서브-벡터 및 상기 최저 블록 레벨보다 낮은 블록 레벨들과 연관된 정보 심볼들의 서브-벡터들과 연관하여 결정된 후보 서브-벡터들로부터 후보 벡터를 결정하도록 구성될 수 있고, 상기 후보 벡터는 상기 정보 심볼들의 벡터의 추정치를 나타내며, 상기 제 2 프로세서는 추가로, 상기 선택된 후보 서브-벡터와 연관된 디코딩 메트릭들 및 상기 최저 블록 레벨보다 낮은 블록 레벨들과 연관된 정보 심볼들의 서브-벡터들과 연관하여 결정된 후보 서브-벡터들과 연관된 디코딩 메트릭들을 가산함으로써 상기 후보 벡터와 연관된 누적 메트릭을 결정하도록 구성되고, 상기 제 2 프로세서는 상기 누적 디코딩 메트릭과 함께 제 2 스택에 상기 후보 벡터를 저장하도록 구성되고, 상기 디코딩 메트릭 임계치는 상기 누적 디코딩 메트릭으로 업데이트된다.
일부 실시형태들에 따르면, 상기 2 이상의 프로세서들 중의 프로세서는,
- 후보 서브-벡터들과 연관된 디코딩 메트릭들의 주어진 순서에 따라 제 1 스택을 순서화하고,
- 후보 벡터와 연관된 누적 디코딩 메트릭으로 디코딩 메트릭 임계치를 업데이트하고,
- 업데이트된 디코딩 메트릭 임계치보다 높은 디코딩 메트릭과 연관되는 후보 서브-벡터들을 제 1 스택에서 제거하며, 그리고
- 최저 누적 디코딩 메트릭과 연관되는 제 2 스택에 저장된 후보 벡터로부터 정보 심볼들의 벡터의 추정치를 결정하도록 구성될 수도 있다.
일부 실시형태들에 따르면, 심볼 추정 알고리즘은 순차적 격자 디코딩 알고리즘, 제로 포싱 알고리즘, 최소 평균 제곱 에러 알고리즘, 및 제로 포싱 결정 피드백 등화기를 포함하는 그룹에서 선택될 수도 있다.
일부 실시형태들에 따르면, 심볼 추정 알고리즘은 격자 감소 알고리즘 및/또는 MMSE-GDFE 필터링을 사용하는 전처리 단계를 포함할 수도 있다.
일부 실시형태들에 따르면, 심볼 추정 알고리즘은 신호대 잡음비 및/또는 아웃티지 용량에 의존하여 미리 결정될 수도 있다.
일부 실시형태들에 따르면, 심볼 추정 알고리즘은 타겟 달성가능 송신 레이트를 포함하는 그룹에서 선택된 타겟 서비스 품질 메트릭에 의존하여 미리 결정될 수도 있다.
일부 실시형태들에 따르면, 블록 분할 유닛은 적어도 2 와 동일한 블록들의 수 및 블록 길이들을 포함하는 분할 파라미터들의 세트에 따라 정보 심볼들의 벡터를 분할하도록 구성될 수도 있고, 상기 블록들의 수는 정보 심볼들의 서브-벡터들의 수를 나타내고, 블록 길이는 정보 심볼들의 서브-벡터에 포함된 정보 심볼들의 수를 나타낸다.
또한, 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 방법이 제공되며, 신호는 채널 매트릭스에 의해 표현되는 송신 채널을 통해 수신된다. 그 방법은:
- 채널 매트릭스의 서브-매트릭스들로의 분할에 따라 정보 심볼들의 벡터를 정보 심볼들의 2 이상의 서브-벡터들로 분할하는 단계로서, 각각의 서브-벡터는 채널 매트릭스에서의 서브-벡터의 레벨을 나타내는 블록 레벨과 연관되는, 상기 정보 심볼들의 벡터를 분할하는 단계;
- 병렬로 동작하는 2 이상의 프로세서들에 의해, 후보 서브-벡터들을 결정하고, 후보 서브-벡터들을 제 1 스택에 저장하는 단계를 포함하고, 상기 후보 서브-벡터들을 결정하는 단계는,
* 상기 2 이상의 프로세서들의 각각에 의해, 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하는 단계로서, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타내는, 상기 후보 서브-벡터를 결정하는 단계, 및
* 디코딩 메트릭 및 채널 매트릭스 내의 후보 서브-벡터의 레벨을 나타내는 블록 레벨과 함께 정보 심볼들의 적어도 후보 서브-벡터를 제 1 스택에 저장하는 단계로서, 상기 디코딩 메트릭은 디코딩 메트릭 임계치 이하인, 상기 적어도 후보 서브-벡터를 제 1 스택에 저장하는 단계
를 포함한다.
그 방법은 제 1 스택에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 정보 심볼들의 벡터의 추정치를 나타내고 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트하는 단계를 더 포함할 수도 있다.
유리하게는, 본 발명의 실시형태들은 감소된 디코딩 레이턴시 및 감소된 계산 복잡도를 갖는 최적의 디코딩 복잡도를 제공하는 병렬화된 재귀적 블록 디코딩 기술들을 제공한다.
본 발명의 추가 이점들은 도면들 및 상세한 설명을 검토하면 당업자에게 명백해질 것이다.
본 명세서에 포함되고 그 일부를 구성하는 첨부 도면들은 본 발명의 다양한 실시형태들을 예시한다.
- 도 1 은 일부 실시형태들에 따른, 통신 시스템에서 본 발명의 예시적인 적용의 블록 다이어그램이다.
- 도 2 은 일부 실시형태들에 따른, 무선 단일-사용자 MIMO 시스템들에 대한 본 발명의 예시적인 적용의 블록 다이어그램이다.
- 도 3 은 병렬화된 재귀적 블록 디코딩이 사용되는 일부 실시형태들에 따른, 공간-시간 디코더의 구조를 나타내는 블록 다이어그램이다.
- 도 4 는 일부 실시형태들에 따른 병렬화된 재귀적 블록 디코딩 방법을 도시하는 흐름도이다.
- 도 5 는 일부 실시형태들에 따른 공간-시간 디코더의 하드웨어 아키텍처를 도시한다.
- 도 1 은 일부 실시형태들에 따른, 통신 시스템에서 본 발명의 예시적인 적용의 블록 다이어그램이다.
- 도 2 은 일부 실시형태들에 따른, 무선 단일-사용자 MIMO 시스템들에 대한 본 발명의 예시적인 적용의 블록 다이어그램이다.
- 도 3 은 병렬화된 재귀적 블록 디코딩이 사용되는 일부 실시형태들에 따른, 공간-시간 디코더의 구조를 나타내는 블록 다이어그램이다.
- 도 4 는 일부 실시형태들에 따른 병렬화된 재귀적 블록 디코딩 방법을 도시하는 흐름도이다.
- 도 5 는 일부 실시형태들에 따른 공간-시간 디코더의 하드웨어 아키텍처를 도시한다.
본 개시의 실시형태들은 최적의 다이버시티 차수 및 감소된 디코딩 복잡도 및 디코딩 지연들을 갖는 송신 채널을 통해 수신되고 정보 심볼들을 반송하는 신호를 디코딩하기 위한, 저복잡도 및 저레이턴시 병렬화된 재귀적 블록 디코딩 디바이스들 및 방법들을 제공한다. 송신 채널은 송신 채널을 대표하는 채널 상태 매트릭스에 QR 분해를 적용한 상삼각 매트릭스로 표현된다.
본 개시의 실시형태들은 병렬화된 QR-기반 재귀적 디코딩 알고리즘들을 제공하고, 정보 심볼들의 상이한 블록들 또는 서브-벡터들의 프로세싱의 병렬화는 디코딩 지연들의 급격한 감소를 가능하게 한다.
다양한 실시형태들에 따른 디바이스들 및 방법들은 상이한 유형의 시스템들에서 구현될 수도 있다. 특히, 이들은 하나 이상의 송신기 디바이스들로부터 수신기 디바이스로 전달되는 정보 심볼들의 벡터의 추정치를 결정하기 위해 통신 시스템들에서 구현될 수도 있다.
일부 실시형태들의 다음의 기재는 예시의 목적으로만, 통신 시스템들을 참조하여 이루어질 것이다. 그러나, 당업자는 다양한 실시형태들이 신호 프로세싱 시스템들, 암호화 시스템들, 및 포지셔닝 시스템들과 같은 다른 타입들의 시스템들에 적용될 수도 있다는 것을 쉽게 이해할 것이다.
도 1 은 일부 실시형태들에 따른 통신 시스템 (100) 으로의 예시적인 적용의 블록 다이어그램이다. 통신 시스템 (100) 은 유선, 무선, 또는 광 (예를 들어, 광섬유 기반) 일 수도 있다. 통신 시스템 (100) 은 복수의 정보 심볼들을 송신 채널 (13) 을 통해 적어도 하나의 수신기 디바이스 (15) (이하 "수신기" 로 지칭됨) 에 송신하도록 구성된 적어도 하나의 송신기 디바이스 (11) (이하 "송신기" 로 지칭됨) 를 포함할 수도 있다. 수신기 (15) 는 하나 이상의 송신기 디바이스들 (11) 에 의해 전송된 정보 심볼들을 디코딩하기 위해 공간-시간 디코더 (10) 에 포함할 수도 있다. 송신 채널 (13) 은 임의의 유선 연결, 무선 매체, 또는 광 링크일 수도 있다.
무선 통신에 대한 본 발명의 적용에서, 통신 시스템 (100) 은 입력 데이터를 나타내는 정보 심볼들의 흐름을 통신하도록 구성된 무선 송신기 디바이스 (11) 및 송신기 (11) 에 의해 전달된 심볼들을 디코딩하도록 구성된 무선 수신기 디바이스 (15) 를 포함하는 무선 단일 사용자 MIMO 시스템일 수도 있다.
송신기 디바이스 (11) 는 하나 이상의 송신 안테나들을 구비할 수도 있고, 수신기 디바이스 (15) 는 하나 이상의 수신 안테나들을 구비할 수도 있으며, 송신 안테나들의 수 nt 및 수신 안테나들의 수 nr 는 1 이상이다.
무선 통신에 대한 본 발명의 다른 응용에서, 통신 시스템 (100) 은 복수의 무선 송신기 디바이스들 (11) 및 수신기 디바이스들 (15) 이 서로 통신하는 무선 다중 사용자 MIMO 시스템일 수도 있다. 이러한 실시형태들에서, 통신 시스템 (100) 은 TDMA (Time Division Multiple Access), FDMA (Frequency Division Multiple Access), CDMA (Code Division Multiple Access), 및 SDMA (Space-Division Multiple Access) 와 같은 임의의 다중 액세스 기술을 단독으로 또는 조합하여 추가 사용할 수도 있다.
광 통신에 대한 본 발명의 응용에서, 통신 시스템 (100) 은 광섬유 기반 통신 시스템일 수도 있다. 따라서, 송신기 (11) 및 수신기 (15) 는 광섬유 기반 송신 시스템에서 동작할 수 있는 임의의 광 트랜시버일 수도 있다. 전송 채널 (13) 은 짧은 또는 긴 거리에 걸쳐 데이터를 전달하도록 설계된 임의의 광섬유 링크일 수도 있다. 짧은 거리에 걸쳐 광섬유 링크들을 사용하는 예시적인 애플리케이션들은 데이터 센터 상호접속들과 같은 고용량 네트워크들을 포함한다. 긴 거리에 걸쳐 광섬유 링크들을 사용하는 예시적인 애플리케이션들은 지상 및 초해상 송신들을 포함한다. 이러한 실시형태들에서, 송신기 (11) 에 의해 전달되는 정보 심볼들은 섬유의 상이한 편광 상태들에 따라 편광된 광 신호들에 의해 반송될 수도 있다. 광 신호들은 수신기 (15) 에 도달할 때까지, 하나 이상의 전파 모드들에 따라, 섬유-기반 송신 채널 (11) 을 따라 전파한다.
광 통신에 대한 본 발명의 다른 응용에서, 정보 심볼을 반송하는 광 신호는 단일 파장 레이저를 사용하여 생성될 수도 있다.
다른 실시형태들에서, 파장 분할 멀티플렉싱 (WDM) 기술들이 복수의 독립적인 파장들을 사용하여 광 신호들을 생성하는 것을 가능하게 하기 위해 송신기 (11) 에서 사용될 수도 있다.
멀티-모드 및/또는 멀티-코어 섬유들을 사용하는 광 통신 시스템들에 대한 본 발명의 또 다른 응용에서, 공간 분할 멀티플렉싱 기술들이 다양한 전파 모드들에 따라 정보 심볼들을 멀티플렉싱하기 위해 사용될 수도 있다.
또한, WDMA (Wavelength Division Multiple Access) 와 같은 다중 액세스 기술은 광 통신 시스템들에 본 발명의 일부 응용에서 사용될 수도 있다.
송신 채널 (13) 은 주파수 선택성, 간섭 및 지연을 완화하기 위해 OFDM (Orthogonal Frequency Division Multiplexing) 및 FBMC (Filter Bank Multi-Carrier) 와 같은 단일 반송파 또는 다중 반송파 변조 포맷을 사용하는 임의의 선형 AWGN (Additive White Gaussian Noise) 채널 또는 다중경로 채널일 수도 있다.
무선 단일 사용자 MIMO 시스템들에 대한 본 발명의 적용에서, 수신 신호의 QR-기반 서브-블록 디코딩의 복잡도, 성능, 및 디코딩 지연들 사이의 트레이드오프는 간섭 인터 서브-벡터들을 고려하여 정보 심볼들의 벡터의 서브-블록 분할의 최적화를 통해 최적화될 수도 있다. 디코딩 방법들 및 디바이스들의 예시적인 응용들은, 제한 없이, 다음으로 구현될 수도 있는 구성들에서의 MIMO 디코딩을 포함한다:
- ITU G.hn 및 HomePlug AV2 규격에서 표준화된 전력-라인 유선 통신;
- Wi-Fi (IEEE 802.11n 및 IEEE 802.11ac), 셀룰러 WiMax (IEEE 802.16e), 협력 WiMax (IEEE 802.16j), LTE (Long Term Evolution), LTE-어드밴스드 및 5G 진행 표준화와 같은 무선 표준.
단지 예시를 위해, 이하의 설명은 송신 안테나들을 구비한 송신기 디바이스 (11) 및 송신기 (11) 에 의해 전송된 정보 심볼들을 디코딩하기 위해 수신 안테나들을 구비한 수신기 디바이스 (15) 를 수용하는 무선 단일 사용자 MIMO 시스템을 참조하여 이루어질 것이다. 그러나, 당업자는 본 발명의 실시형태들이 무선 다중 사용자 MIMO 시스템들 및 광 MIMO 시스템들과 같은 다른 통신 시스템들에 적용된다는 것을 쉽게 이해할 것이다. 더 일반적으로, 본 발명은 수신기 디바이스들에서 채널 출력의 선형 표현 (동등하게 격자 표현) 을 특징으로 하는 임의의 통신 시스템에 적용될 수도 있다. 또한, 이러한 실시형태들에 제한되지 않지만, 본 발명은 2 이상의 송신 안테나들의 수 () 및/또는 2 이상의 수신 안테나들의 수 () 의 존재시 특별한 이점들을 갖는다.
도 2 를 참조하면, 본 발명의 다양한 실시형태들이 구현될 수도 있는 예시적인 무선 단일 사용자 MIMO 통신 시스템 (200) 이 도시된다. 무선 단일 사용자 MIMO 통신 시스템 (200) 은 시간 및 공간 차원들에 걸쳐 (즉, 송신 안테나들에 걸쳐) 정보 심볼들을 멀티플렉싱하기 위해 공간-시간 블록 코드 (STBC) 를 구현하는 송신기 (20) 를 포함할 수도 있다. 스테이션의 각 송신기 (20) 는 무선 통신 시스템 (200) 에 따라 다른 스테이션의 수신기 (21) 와 데이터를 교환할 수도 있다.
무선 단일 사용자 MIMO 통신 시스템 (200) 은 대칭적 구성을 제시할 수도 있다. 여기서 사용된 것과 같이, 대칭적 구성은 송신기 (20) 와 수신기 (21) 가 동일한 수의 안테나 를 구비하는 구성을 지칭한다. 대안적으로, MIMO 구성은 비대칭적일 수도 있으며, 수신 안테나들의 수 는 송신 안테나들의 수 와 상이하다. 특히, 일 실시형태에서, 랭크 결핍 문제를 회피하기 위해, 수신 안테나들의 수 는 송신기에서의 안테나들의 수 보다 클 수도 있다. 예시적인 비대칭 MIMO 구성들은 예를 들어 LTE 표준에서 지원되는 2x4 및 4x8 을 포함한다.
송신기 (20) 는 채널 매트릭스 에 의해 표현되는 잡음 무선 MIMO 채널을 통해 수신기 (21) 에 신호를 전달할 수도 있다. 송신기 (20) 는 무선 환경에서 동작할 수 있는 상이한 디바이스들 또는 시스템들에서 구현될 수도 있다. 이러한 애플리케이션들에 적합한 예시적인 디바이스들은 모바일 폰들, 드론들, 랩탑들, 태블릿들, 로봇들, IoT (사물 인터넷) 디바이스들, 기지국들 등을 포함한다. 송신기 (20) 는 고정되거나 이동가능할 수도 있다. 예를 들어, 다음을 포함할 수도 있다:
- 선형 블록 코드들, 컨볼루션 코드들, 폴라 코드들 등과 같은 하나 이상의 FEC (Forward Error Correction) 코드들을 구현하는 채널 인코더 (201);
송신기 (20) 는 예를 들어 선형 블록 코드, 컨볼루션 코드, 또는 폴라 코드를 구현하는 FEC 인코더 (201) 를 사용하여 데이터 입력으로서 정보 비트들의 수신된 흐름을 인코딩하도록 구성될 수도 있다. 인코딩된 이진 신호는 변조기 (203) 를 사용하여 심볼 벡터 로 변조될 수도 있다. 2q 심볼들 또는 상태들을 갖는 2q-QAM 또는 2q-PSK 과 같은 상이한 변조 스킴들이 구현될 수도 있다. 변조된 벡터 는 심볼 당 q 비트를 갖는 к 복소수 값 심볼들 을 포함하는 복소수 값 벡터일 수도 있다.
2q-QAM 와 같은 변조 포맷들이 사용될 때, 2q 심볼들 또는 상태들은 정수 필드의 서브세트 를 나타낸다. 대응하는 콘스텔레이션은 상이한 상태들 또는 심볼들을 나타내는 2q 지점들로 구성된다. 또한, 제곱된 변조들의 경우, 정보 심볼들의 실수부와 허수부는 동일한 유한 알파벳 에 속한다. 변조 방식의 최소 거리 는 콘스텔레이션에서 인접한 2 개 지점들 사이의 유클리드 거리를 나타내며, 이 경우 2 와 같다.
공간-시간 인코더 (205) 는 인코딩된 심볼들로부터 코드워드 매트릭스 를 생성하는데 사용될 수도 있다. 공간-시간 인코더 (205) 는 길이 의 선형 STBC 를 사용할 수도 있고, 코드북 에 속하고 시간 슬롯들에 걸쳐 전송되는 치수 의 코드워드 매트릭스 를 전달할 수도 있다. 이러한 코드들의 코딩 레이트는 채널 사용 당 복소수 심볼들과 동일하며, 여기서 к 는 이 경우 치수 к 의 벡터 를 구성하는 인코딩된 복소수 값 심볼들의 수이다. 풀-레이트 코드가 사용될 때, 공간-시간 인코더 (205) 는 복소수 값 심볼들을 인코딩한다. STBC들의 예들은 완전 코드 (Perfect Code) 들이다. 완전 코드들은 복소수 정보 심볼들의 수 를 인코딩함으로써 풀 코딩 레이트들을 제공하고 넌-배니싱 (non-vanishing) 결정 특성을 만족한다.
일부 실시형태들에서, 공간-시간 인코더 (205) 는 시간 차원에서 코딩을 수행하지 않으면서, 상이한 송신 안테나들을 통해 수신된 복소수 값 정보 심볼들을 멀티플렉싱함으로써 V-BLAST 스킴으로 알려진 공간 멀티플렉싱 스킴을 사용할 수도 있다.
이와 같이 구성된 코드워드는 예를 들어 OFDM 또는 FBMC 변조기들을 사용하여 멀티캐리어 변조 기술을 사용하여 시간 도메인으로부터 주파수 도메인으로 변환될 수 있고, 송신 안테나들 (207) 을 통해 확산될 수도 있다. 신호들은 옵션적인 필터링, 주파수 전치 및 증폭 후에 송신 안테나들 (207) 로부터 전송될 수도 있다.
수신기 (21) 는 페이딩과 간섭을 받는 송신 채널 (이하, "통신 채널" 이라 칭함) 을 통해 무선 네트워크에서 송신기 (20) 에 의해 통신되고 복소수 값 채널 매트릭스 로 표현되는 신호를 수신하고 디코딩하도록 구성될 수도 있다. 또한, 통신 채널은 잡음이 있을 수 있고, 예를 들어 가우시안 잡음에 의해 영향을 받을 수도 있다.
수신기 (21) 는 셀룰러 네트워크 내의 노드-B, 근거리 네트워크 또는 애드-혹 네트워크들 내의 액세스 포인트 또는 무선 환경에서 동작하는 임의의 다른 인터페이싱 디바이스와 같은 기지국에 통합될 수도 있다. 수신기 (21) 는 고정되거나 이동가능할 수도 있다. 하나의 예시적인 실시형태에서, 수신기 (21) 는 다음을 포함할 수도 있다:
- 예를 들어, 비터비 알고리즘을 이용하여, 송신된 비트의 추정치인 이진 신호를 출력으로서 전달하도록 구성된 채널 디코더 (215).
수신기 (21) 는 송신기 (20) 에 의해 수행되는 프로세싱의 역 프로세싱을 구현한다. 따라서, 송신기에서 다중 반송파 변조가 아닌 단일 반송파 변조가 사용되는 경우, FBMC 복조기들의 OFDM 은 대응하는 단일 반송파 복조기들로 대체될 수도 있다.
도 3 은 무선 레일리 페이딩 다중 안테나 시스템에 적용되는 일부 실시형태들에 따른 공간-시간 디코더 (300) (또한 '디코더' 로 지칭됨) 의 블록 구조를 나타내며, 디코더 (300) 는 송신 안테나들을 구비한 송신기로부터 전송된 신호를 수신 및 디코딩하도록 구성되고, 디코더 (300) 는 수신 안테나들을 구비한 수신기 디바이스에서 구현된다.
κ 심볼들을 인코딩하는 길이 의 공간-시간 코드를 사용하여 공간-시간 인코딩이 송신기에서 수행되는 일부 실시형태들에 따르면, 수신된 복소수 값 신호는 다음의 형태로 기록될 수도 있다:
V-BLAST 공간 멀티플렉싱이 사용되는 일부 실시형태들에 따르면, 수신된 복소수 값 신호는 다음 형태로 기록될 수도 있다:
수학식 (2) 및 수학식 (3) 의 복소수 값 매트릭스 는 페이딩 이득을 포함하는 채널 매트릭스를 나타낸다. 레일리 페이딩 채널에서, 채널 매트릭스 의 엔트리들은 독립적 동일 분산 (i.i.d) 복소 가우시안-타입이다. 채널 매트릭스는 최소 제곱 추정기들과 같은 추정 기술들을 사용하여 수신기에서 코히어런트 송신들에서 추정될 수 있다. 다중 경로 페이딩 효과에 더하여, 송신 채널은 잡음이 있을 수도 있다. 잡음은 시스템 컴포넌트들의 열 잡음, 사용자간 간섭 및 안테나들에 의한 인터셉트된 간섭 복사로부터 기인할 수도 있다. 전체 잡음은 복소수 값 매트릭스 와 -차원 복소수 값 벡터 에 의해 각각 수학식 (2) 및 (3) 에서 모델링된 실수값 차원별 분산 의 제로 평균 백색 가우시안 잡음에 의해 모델링될 수도 있다.
디코더는 복소수 값 채널 매트릭스 를 실수값 등가 채널 매트릭스 로 변환하고, 복소수 값 수신 신호를 실수값 신호로 변환하도록 구성된 복소수-실수 변환기 (301) 를 포함할 수도 있다.
V-BLAST 공간 멀티플렉싱을 사용하는 일 실시형태에서, 복소수-실수 변환기 (301) 는 수학식 (3) 의 시스템을 다음과 같이 변환하도록 구성될 수도 있다:
수학식 (4) 의 및 연산자는 기저 벡터 또는 매트릭스를 구성하는 각 원소의 실수부와 허수부를 나타낸다. 복소수-실수 변환은 벡터들의 원소들의 임의의 순서를 고려하여 수행될 수도 있으며, 수학식 (4) 에서 표현된 예시적인 변환에 한정되지 않는다.
송신기에서 선형 공간-시간 블록 코딩을 사용하는 다른 실시형태들에서, 복소수-실수 변환기 (301) 는 수학식 (2) 의 시스템을 수학식 (4) 의 선형 표현 형태로 기록될 수 있는 실수-값 시스템으로 변환하도록 구성될 수도 있고, 여기서 등가 채널 매트릭스는 다음과 같이 주어지는 실수-값 매트릭스 이다:
상기 매트릭스 는 송신기에서 사용되는 선형 공간-시간 블록 코드의 생성 매트릭스 또는 코딩 매트릭스로 알려진 실수값 매트릭스를 나타낸다. 는 차원 의 단위 매트릭스를 나타내며, 연산자 는 Kronecker 매트릭스 곱이다.
이하의 실시형태들의 이해를 용이하게 하기 위해, 이하의 설명은 단지 예시의 목적들을 위해, 공간 멀티플렉싱 방식을 참조하고, 송신기 및 수신기가 동일한 수의 안테나들 을 구비하는 대칭적 MIMO 구성을 수반하여 이루어질 것이다. 따라서, 수학식 (3) 의 실수 값 시스템은 다음과 같이 선형 형태로 기록될 수 있다:
수학식 (6) 에서, 벡터들 및 은 을 갖는 n-차원 벡터들이고, 상기 등가 실수값 채널 매트릭스 는 정방형 매트릭스이다. 벡터 는 벡터 에 포함된 원래의 복소수 값 정보 심볼의 실수부 및 허수부를 포함한다.
디코더 (300) 는 이도록 상기 실수값 채널 매트릭스에 QR 분해를 적용하여 직교 매트릭스 와 상삼각 매트릭스 를 생성하는 QR 분해 유닛 (302) 을 포함할 수도 있다. 상삼각 매트릭스의 성분들은 인 로 표시된다.
디코더 (300) 는 실수값 채널 매트릭스의 QR 분해로부터 획득된 직교 매트릭스 의 전치에 의해 실수-값 신호 를 스케일링함으로써 보조 신호 를 결정하도록 구성된 곱셈 유닛 (309) 을 더 포함할 수도 있고, 따라서:
다양한 실시형태들에 따른 병렬화된 QR 기반의 재귀적 블록 디코딩은 수학식 (7) 의 실수값 시스템을 기반으로 한다.
정보 심볼들의 ML 디코딩은 다음과 같이 주어진 최적화 문제에 의해 공식화될 수 있다:
수학식 (8) 에서, 는 실수 벡터 를 구성하는 복소수 값 벡터 의 실수부와 허수부가 속하는 알파벳을 나타낸다. ML 메트릭은 다음과 같이 ML 디코딩 문제와 관련하여 정의될 수도 있다:
본 개시의 실시형태들에 따른 재귀적 블록 디코딩은 상삼각 매트릭스의 복수의 서브-매트릭스들로의 분할에 따라 정보 심볼들의 벡터를 2 이상의 서브-벡터들로 분할하는 것에 기초한다.
따라서, 디코더 (300) 는, 길이 가 정보 심볼들의 k 번째 서브-벡터의 엘리먼트들/엔트리들의 수의 관점에서 길이에 대응하도록 인 로 표시된 블록 길이들 및 로 표시된 적어도 2 와 동일한 블록들의 수를 포함하는 분할 파라미터들의 세트에 따라 벡터들 및 매트릭스 분할을 수행하도록 구성된 블록 분할 유닛 (303) 을 더 포함할 수도 있고, 즉 정보 심볼들의 각각의 서브-벡터는 하나 이상의 심볼들을 포함한다. 블록의 길이는 로 주어진 등식을 만족한다.
분할 파라미터들의 세트를 이용하여, 블록 분할 유닛 (303) 은 이도록 벡터 를 N 개의 서브-벡터들로 분할하도록 구성될 수도 있고, 에 대하여 인덱스 의 서브 벡터 는 길이 를 갖는다. 유사하게, 블록 분할 유닛 (303) 은 이고 이도록, 정보 심볼들의 실수값 벡터 및 잡음 벡터 를 각각 길이 의 N 개의 서브 벡터들 및 N 개의 서브 벡터들 로 분할하도록 구성될 수도 있다. 벡터들 및 의 분할은 상삼각 매트릭스 를 다음을 따르는 서브-매트릭스로 분할함에 따라 수행될 수 있다
수학식 (10) 에서,
일부 실시형태들에 따르면, 블록 분할 유닛 (303) 은, 분할 파라미터들의 세트가 서브-벡터들 사이의 간섭으로 인한 에러 전파를 감소시키기 위해 직사각형 서브-매트릭스들의 제로 구조를 활용하는 서브-매트릭스들로의 상삼각 매트릭스의 분할을 제공하도록, 상삼각 매트릭스 의 제로 구조에 의존하여 분할 파라미터들의 세트를 미리 결정하도록 구성될 수도 있다. 실제로, 서브-매트릭스 가 서브-벡터들 및 사이의 간섭을 표현하기 때문에, 서브-벡터 의 디코딩은 에 대한 서브-벡터들 에 대한 결정된 추정치들에 의존한다. 서브-벡터 의 추정에 대한 임의의 에러는 서브-벡터 의 추정에 대한 에러를 유도할 수도 있다. 에 대한 서브-벡터들 및 사이의 간섭으로 인한 에러 전파는 직사각형 서브-매트릭스 의 제로 구조에 의존한다. 직사각형 서브-매트릭스들에서 제로들의 수가 낮을수록, 에러 전파가 낮으며, 디코딩 에러 성능들이 더 우수하다.
따라서, 블록 분할 유닛 (303) 은 주어진 상위 채널 매트릭스에 대해, 정보 심볼들의 서브-벡터들 사이의 간섭의 영향의 최소화를 가능하게 하는 분할 파라미터들의 세트를 미리 결정하도록 구성될 수도 있다. 분할 파라미터들의 세트는 직사각형 서브-매트릭스들의 제로 구조를 나타내는 분할 메트릭의 최적화 (최소화 또는 최대화) 에 기초하여 결정될 수도 있다.
이러한 그룹들에 따라, 수학식 (9) 에서의 ML 디코딩 메트릭은 다음과 같이 기록될 수도 있다:
따라서, 수학식 (8) 의 ML 최적화 시스템은 다음과 같이 표현될 수 있다:
본 개시의 실시형태들에 따른 병렬화된 재귀적 블록 디코딩은, 로 표시된 후보 서브-벡터들의 세트들의 병렬화된 결정에 기초하며, 따라서 세트 는 정보 심볼 의 k 번째 서브-벡터의 하나 이상의 후보 서브-벡터들 을 포함하고, 는 정보 심볼들의 복소수 값 벡터의 실수 및 허수 부분들에 속하는 알파벳 의 카디널리티보다 엄격하게 열등한 세트 의 카디널리티를 지정한다. 따라서, 후보 서브-벡터들의 세트들은 더 빠른 디코딩 및 더 낮은 디코딩 복잡도를 가능하게 하는 2 이상의 프로세서들 (또한, '프로세싱 유닛들' 로 지칭됨) 을 사용하여 병렬로 결정될 수도 있다. 2 이상의 프로세서들은 후보 서브-벡터들을 결정하고 후보 서브-벡터들을 제 1 스택 (310) 에 저장하기 위해 병렬로 동작하도록 구성될 수도 있고, 각각의 프로세서는 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하도록 구성되고, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타낸다. 각각의 프로세서는 후보 서브-벡터와 연관된 디코딩 메트릭 및 상삼각 채널 매트릭스를 갖는 후보 서브-벡터의 레벨을 나타내는 블록 레벨과 함께 각각의 결정된 후보 서브-벡터를 제 1 스택 (310) 에 저장하도록 추가로 구성될 수도 있다. 2 이상의 프로세서들 중의 프로세서는 제 1 스택 (310) 에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 정보 심볼들의 벡터의 추정치를 나타내고 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트하도록 구성될 수도 있다.
일부 실시형태들에 따르면, 디코더 (300) 는, 2 이상의 프로세서들 중에서, 1 와 N 사이의 값을 취하는 에 대한 후보 서브-벡터들 로 제 1 스택 (310) 을 채우기 위해 병렬로 동작하도록 구성된 제 1 프로세서 (304) 및 제 2 프로세서 (305) 를 포함할 수도 있고, 에 대한 후보 서브-벡터 는 정보 심볼들 의 서브-벡터의 추정치를 나타낸다.
후보 서브-벡터와 연관된 디코딩 메트릭 이 이도록 로 표시된 디코딩 메트릭 임계치 이하가 되는 디코딩 메트릭 조건의 만족에 따라 k 번째 블록과 연관된 심볼 추정 알고리즘 을 적용함으로써 후보 서브-벡터 가 결정될 수도 있다.
제 1 스택 (310) 에 저장된 후보 서브-벡터 는 상삼각 채널 매트릭스 내의 서브-벡터의 레벨을 나타내는 블록 레벨과 더 연관될 수도 있다. 블록 분할 표기를 사용하여, 후보 서브-벡터 와 연관된 블록 레벨은 인덱스 k 이다.
본 개시의 실시형태들에 따른 병렬화된 재귀적 블록 디코딩은 정보 심볼들의 상이한 서브-벡터들에 대응하는 후보 서브-벡터들이 병렬로 결정되어 정보 심볼들의 벡터 상에서 완전한 벡터 후보 의 더 빠른 전달을 가능하게 하도록, 상이한 블록들의 병렬화된 프로세싱을 제공한다. 또한, 상이한 블록들의 병렬화된 프로세싱은 후보 서브-벡터들의 추정 동안 디코딩 메트릭 임계치의 업데이트가 존중될 수 있게 하며, 디코딩 메트릭 임계치는 후보 서브-벡터가 서브-벡터들의 각각에 대해 결정되면 정보 심볼들의 벡터 에 대한 글로벌 솔루션 또는 추정치 가 결정될 때마다 업데이트된다.
병렬화된 재귀적 블록 디코딩은, 디코딩 메트릭에 대한 디코딩 조건의 만족에 따라 심볼 추정 알고리즘 을 적용함으로써 정보 심볼들 의 N 번째 서브-벡터의 적어도 하나의 후보 서브-벡터 추정치의 결정에 대해 N 와 동일한 블록 레벨의 최종 블록 의 프로세싱으로 시작한다. 일단 제 1 후보 서브-벡터 가 결정되면, 에 대한 나머지 블록들 의 프로세싱이 시작될 수도 있다. 다수의 프로세서들은, 에 대한 세트들 에서 후보 서브-벡터들 을 결정하기 위해 상이한 블록들 을 동시에 프로세싱하도록 구현될 수도 있다.
따라서, 제 1 프로세서 (304) 는 최저 블록 레벨과 연관된 정보 심볼들의 서브-벡터에 도달할 때까지 최고 블록 레벨과 연관된 정보 심볼들의 서브-벡터들로부터 시작하는 추정 알고리즘을 재귀적으로 적용함으로써 정보 심볼들의 각각의 서브-벡터와 연관하여 하나 이상의 후보 서브-벡터들을 결정하도록 구성될 수도 있다. 이는 제 1 프로세서 (304) 가 N 번째 블록 을 프로세싱하는 것으로 시작하도록 구성될 수 있다는 것을 의미하고, 프로세싱은 1 와 사이의 값을 취하여 서브-벡터 추정치 의 인덱스를 지정하는 으로 세트 에서 하나 이상의 서브-벡터 추정치들 을 결정하기 위해 심볼 추정 알고리즘 을 적용하는 것으로 구성된다. 제 1 프로세서 (304) 가 서브-벡터 추정치 를 결정할 때마다, 제 1 프로세서 (304) 는 제 1 프로세싱된 블록에 대해 N 와 동일한 대응하는 블록 레벨 및 디코딩 메트릭 과 함께 구한 서브-벡터 추정치 를 제 1 스택 (310) 에 저장한다. 제 1 서브-벡터 추정치 를 구한 후에, 제 1 프로세서 (304) 는 세트 에 대응하는 모든 후보 서브-벡터들을 결정하기 위한 추정 프로세스를 계속한다. 일단 제 1 프로세서 (304) 가 N 번째 블록 을 프로세싱하는 것을 종료하면, (N-1) 번째 블록 을 프로세싱하기 위해 정보 심볼들의 서브-벡터들의 레벨들에 대해 위로 이동한다. (N-1) 번째 블록 의 프로세싱은, 세트 에서 결정된 각각의 후보 서브-벡터 에 대해, 세트 에서 후보 서브-벡터 를 결정하는 것으로 이루어진다. 제 1 프로세서 (304) 는 다음에 의해 각각의 후보 서브-벡터 를 결정하도록 구성될 수도 있다:
일부 실시형태들에 따르면, 디코딩 메트릭 임계치 는 수신된 신호에 제로 포싱 결정 피드백 등화기를 적용함으로써 결정된 수신된 신호와 ZF-DFE 추정치 사이의 유클리드 거리로 (예를 들어, 제 1 프로세서 (304) 에 의해) 초기에 설정될 수 있다.
일단 제 1 프로세서가 (N-1) 번째 블록 의 프로세싱으로 종료하면, 제 1 블록 에 도달할 때까지 (N-2) 번째 블록 등을 프로세싱하기 위해 위로 이동한다. N 와 동일한 최고 블록 레벨과는 상이한 블록 레벨과 연관된 후보 서브-벡터에 대해, 제 1 프로세서 (304) 는 상기 후보 서브-벡터를 구하기 위해 간섭 제거 단계에서 사용되었던 이전에 프로세싱된 블록들의 후보 서브-벡터들과 함께 후보 서브-벡터를 저장하도록 구성될 수도 있다.
제 1 프로세서 (304) 에 의해 수행된 프로세싱과 병렬로, 제 2 프로세서 (305) 는 최저 블록 레벨과 연관된 스택에서 서브-벡터를 재귀적으로 선택하고 채널 매트릭스에서 최저 블록 레벨에 도달할 때까지 추정 알고리즘을 적용함으로써 최저 블록 레벨보다 낮은 블록 레벨들과 연관된 정보 심볼들의 서브-벡터들 각각과 연관하여 후보 서브-벡터를 결정함으로써 하나 이상의 후보 서브-벡터들을 결정하도록 구성될 수도 있다.
이는 제 1 프로세서 (304) 가 제 1 후보 서브-벡터 를 결정하고, 이를 제 1 스택 (310) 에 저장하면, 제 2 프로세서 (305) 가 활성화됨을 의미한다. 이 때, 제 1 스택 (310) 은 후보 서브-벡터 만을 포함하므로, 이 경우 최저 블록 레벨은 후보 서브-벡터 와 연관된 블록 레벨 N 에 대응한다. 제 2 프로세서 (305) 는 후보 서브-벡터 를 선택하고, 선택된 후보 서브-벡터 와 연관된 블록 레벨보다 낮은 블록 레벨 의 블록들 의 각각을 프로세싱하여 위로 이동한다. 제 2 프로세서 (305) 는 다음과 같이 k 번째 블록 을 프로세싱할 때 후보 서브-벡터 를 재귀적으로 결정하도록 구성될 수도 있다:
블록 레벨 k=1 의 제 1 블록을 프로세싱함으로써, 제 2 프로세서 (305) 는 선택된 후보 서브-벡터 및 선택된 후보 서브-벡터 와 연관된 블록 레벨 N 보다 낮은 블록 레벨들 과 연관된 정보 심볼들의 서브-벡터들 과 연관하여 결정된 후보 서브-벡터들 로부터 후보 벡터 를 결정한다. 후보 벡터 는 정보 심볼들 의 벡터의 추정치를 나타낸다. 제 2 프로세서 (305) 는 선택된 후보 서브-벡터 와 연관된 디코딩 메트릭 및 선택된 후보 서브-벡터 와 연관된 N 과 동일한 최저 블록 레벨보다 낮은 블록 레벨들 과 연관된 정보 심볼들의 서브-벡터들과 연관하여 결정된 후보 서브-벡터들 과 연관된 에 대한 디코딩 메트릭들 을 가산함으로써 후보 벡터와 연관된 누적된 메트릭 을 결정하도록 구성될 수도 있고, 따라서:
유리하게, 병렬화된 재귀적 블록 디코딩은 결정된 후보 벡터들과 연관된 누적 디코딩 메트릭들로부터 디코딩 메트릭 임계치의 온라인 업데이트를 추가로 가능하게 한다. 따라서, 디코더 (300) 에 포함된 2 이상의 프로세서들 중의 프로세서는 저장된 후보 서브-벡터들과 연관된 디코딩 메트릭들의 주어진 순서 (증가 또는 감소) 에 따라 제 1 스택 (310) 을 순서화하고, 이도록 후보 벡터 와 연관된 누적 디코딩 메트릭 으로 디코딩 메트릭 임계치 를 업데이트하도록 구성될 수도 있다. 이 프로세서는 업데이트된 디코딩 메트릭 임계치보다 높은 디코딩 메트릭과 연관된 후보 서브-벡터들을 제 1 스택 (310) 에서 제거하도록 추가로 구성될 수도 있다.
디코딩 메트릭 임계치의 온라인 업데이트는 제 2 프로세서 (305) 에 의해 또는 디코더 (300) 에 포함된 제 3 프로세서 (306) 에 의해 수행될 수도 있고, 제 3 프로세서 (306) 는 후보 벡터 가 구해질 때마다 활성화된다. 하드-출력 디코딩에 대한 응용에서, 제 3 프로세서 (306) 는 최저 누적 디코딩 메트릭과 연관된 스택에 저장된 후보 벡터로부터 정보 심볼의 벡터의 추정치를 결정/전달하도록 구성될 수도 있다.
소프트-출력 디코딩에 대한 응용에서, 제 3 프로세서 (306) 는 제 2 스택 (307) 에 저장된 후보 벡터들을 사용하여 원래의 정보 심볼들에 의해 반송된 상이한 정보 비트들의 외인성 정보를 근사화하기 위한 로그 우도비 값들을 계산하도록 구성될 수도 있다.
디코더 (300) 는 복소수 값 심볼들 의 원래 벡터의 추정치로서 복소수 값 벡터 를 전달하도록 구성된 실수-복소수 변환기 (308) 를 더 포함할 수도 있다. 그 후에, 획득된 후보 벡터 를 복소수 값 벡터 로 변환하여, 에 대한 성분 을 다음과 같이 나타낼 수 있다:
일부 실시형태들에 따르면, 에 대한 심볼 추정 알고리즘(들) 은 신호-대-잡음비 및/또는 병렬화된 재귀적 블록 디코딩을 구현하는 디바이스들 또는 시스템들의 계산 능력들 및/또는 송신 채널의 아웃티지 용량에 따라, 미리 결정될 수도 있다. 또한, 에 대한 심볼 추정 알고리즘(들) 은 타겟 달성 가능한 송신 레이트와 같이 요구되는 타겟 서비스 품질 메트릭에 따라 미리 결정될 수도 있다.
일부 실시형태들에서, 에 대한 심볼 추정 알고리즘 은 순차적 디코딩 알고리즘, ZF 또는 MMSE 디코더들과 같은 선형 디코딩 알고리즘, 또는 비선형 ZF-DFE 디코더를 포함하는 그룹에서 선택될 수도 있다.
수학식 (19) 을 풀기 위해, 스피어 디코더(SD), 스택 디코더, SB-스택 디코더 (SB-스택) 등의 순차적인 디코딩 알고리즘이 사용될 수도 있다.
또한, 일부 실시형태들에서, 상삼각 서브-매트릭스들 에 대한 전처리는 예를 들어, 격자 감소 및/또는 MMSE-GDFE 필터링을 사용하여 후보 서브-벡터의 추정 전에 수행될 수도 있다.
도 4 를 참조하여, 또한, 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 방법이 제공되며, 신호는 채널 매트릭스에 의해 표현되는 송신 채널을 통해 수신된다. 수신된 신호는 수학식 (6) 에 따라 실수-값 시스템으로 기록될 수도 있고, 수학식 (7) 으로 표현된 것과 같이 QR 분해를 사용하여 등가적으로 표현될 수 있다.
단계 (401) 에서, 정보 심볼들의 벡터 의 정보 심볼들의 2 이상의 서브-벡터들로의 분할은 채널 매트릭스 의 서브-매트릭스들로의 분할에 따라 수행될 수도 있다. 이에 따라, 벡터 는 이도록 서브-벡터들로 분할될 수도 있고, 에 대하여 인덱스 k 의 서브-벡터 는 길이들 을 갖는다. 상삼각 매트릭스 는 수학식 (10) 에 따라 2 이상의 서브 매트릭스들로 분할될 수도 있다.
단계 (403) 에서 로 표시된 후보 서브-벡터들의 세트들은, 세트 가 정보 심볼들의 복소수 값 벡터의 실수 및 허수 부분들에 속하는 알파벳 의 카디널리티보다 엄격하게 열등한 세트 의 카디널리티를 지정하는 로, 세트 가 정보 심볼의 k 번째 서브-벡터 의 하나 이상의 후보 서브-벡터들 을 포함하도록 심볼 추정 알고리즘들을 적용함으로써 결정될 수도 있다. 후보 서브-벡터들의 세트들은 병렬로 동작하는 2 이상의 프로세서들에 의해 결정될 수도 있다. 후보 서브-벡터들을 결정하는 단계 (403) 는, 2 이상의 프로세서들 각각에 의해, 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하는 서브-단계를 포함할 수도 있으며, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타낸다.
단계 (405) 에서, 정보 심볼들의 적어도 후보 서브-벡터는 채널 매트릭스 내의 후보 서브-벡터의 레벨을 나타내는 블록 레벨 및 디코딩 메트릭과 함께 제 1 스택에 저장될 수도 있고, 상기 디코딩 메트릭은 디코딩 메트릭 임계치 이하이다.
단계 (407) 에서, 제 1 스택에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터가 결정될 수도 있고, 상기 후보 벡터는 정보 심볼들의 벡터의 추정치를 나타내고 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 누적 디코딩 메트릭으로부터 디코딩 메트릭 임계치를 업데이트한다.
본 명세서에 설명되는 방법들 및 디바이스들은 예를 들어 하드웨어, 소프트웨어 또는 이들의 조합에서 다양한 수단들에 의해 구현될 수도 있다. 하드웨어 구현에서, 디코더 (300) 의 프로세싱 요소들은 예를 들어 하드웨어 전용 구성 (예를 들어, 대응하는 메모리를 갖는 하나 이상의 FPGA, ASIC 또는 VLSI 집적 회로들에서) 에 따라 또는 VLSI 및 DSP 양자를 사용하는 구성에 따라 구현될 수 있다.
도 5 는 본 발명의 일부 실시형태들에 따른, 디코더 (300) 의 예시적인 하드웨어 아키텍처를 나타낸다. 하드웨어 아키텍처는 머신 또는 컴퓨터 실행 디바이스에서 구현될 수도 있다. 도시된 바와 같이, 디코더 (300) 는 데이터 및 어드레스 포트 (59) 를 통해 서로 상호 작용할 수 있는 다양한 컴퓨팅, 저장 및 통신 유닛을 포함할 수 있고, 다음을 포함한다:
예를 들어, 수신 안테나들로부터 입력 데이터를 수신하기 위한 입력 주변기기들 (51);
예를 들어 본 발명의 실시형태들에 따른 방법들 및 알고리즘들을 실행하기 위한 대응하는 명령들을 실행하도록 구성된 FPGA 또는 ASIC 과 같은 하나 이상의 마이크로프로세서 (CPU) 를 포함하는 처리 주변기기들 (53);
예를 들어, 정보 심볼들의 후보 서브-벡터들 및 정보 심볼들의 후보 벡터들을 포함하는 제 1 스택 및 제 2 스택을 저장하기 위한 랜덤 액세스 메모리 (RAM) 또는 판독 전용 메모리를 포함할 수 있는 저장 주변기기들 (55), 및
구성 및 유지보수 목적들을 위해, 예를 들어 수신기 디바이스 (21) 와 MIMO 시스템 관리자 사이의 사람-대-기계 상호작용을 가능하게 하는 디스플레이들과 같은 통신 수단을 포함하는 출력 주변기기들 (57).
본 발명의 실시형태들이 동일한 수의 송신 및 수신 안테나들을 특징으로 하는 대칭적인 MIMO 구성들을 참조하여 주로 설명되었지만, 본 발명은 또한, 인 비대칭 MIMO 구성들에 적용될 수도 있다는 점에 유의해야 한다. 수학식 (6) 의 형태의 선형 표현은 또한 단계 (601) 의 복소수-실수 변환을 다음과 같이 주어진 등가 시스템에 수행함으로써 획득될 수 있다:
수학식 (20) 에서, 매트릭스들 및 은 매트릭스 의 특이값 분해로부터 매트릭스 과 함께 획득된 단위 매트릭스들이다. 는 매트릭스의 특이값을 나타내는 양의 대각 엔트리를 갖는 대각선 매트릭스 이다. 위첨자 는 Hermitian 전치 연산자를 지정한다.
또한, 본 발명의 일부 실시형태들은 무선 단일 사용자 MIMO 시스템과 관련하여 설명되었지만, 본 발명은 이러한 애플리케이션에 제한되지 않는다는 것에 유의해야 한다. 본 발명은 채널 출력의 선형 표현을 특징으로 하는 임의의 선형 통신 시스템에서 동작하는 임의의 수신기 디바이스에 통합될 수도 있다. 통신 시스템은 단일 또는 다중 안테나를 사용하여 단일 또는 다중 사용자를 수용하는 유선, 무선 또는 광섬유 기반, 및 단일 또는 다중 캐리어 통신 기술일 수도 있다. 예를 들어, 본 발명은 무선 분산형 MIMO 시스템에서 구현되는 수신기 디바이스에 통합될 수도 있다. 분산형 MIMO 는 예를 들어 3G, 4G, LTE, 및 향후 5G 표준 등에서 적용되는 셀룰러 통신들에서 사용될 수도 있다. 예를 들어, 애드혹 네트워크 (무선 센서 네트워크, 머신-투-머신 통신, 사물 인터넷 (IoT) 등) 에서 적용되는 협력 통신도 분산형 MIMO 시스템의 예들이다. 무선 네트워크 외에도, 본 발명은 PDM-OFDM (Polarization Division Multiplexing-OFDM) 시스템과 같은 광섬유 기반 통신 시스템에 구현된 광 수신 디바이스들에 통합될 수도 있다.
또한, 본 발명은 통신 디바이스들에 한정되지 않고, 오디오 크로스오버 및 오디오 마스터링과 같은 오디오 애플리케이션에서 사용되는 유한 임펄스 응답 (FIR) 의 전자 필터와 같은 신호 프로세싱 디바이스들에 통합될 수도 있다. 따라서, 일부 실시형태들은, 차수 ~ 의 FIR 필터의 출력 시퀀스가 주어지면, 입력 시퀀스의 추정치를 결정하는데 사용될 수도 있다.
다른 애플리케이션에서, 본 발명의 일부 실시형태들에 따른 방법들, 디바이스들 및 컴퓨터 프로그램 제품들은 IRNSS, Beidou, GLONASS, Galileo 와 같은 GNSS (Global Navigation Satellite System) 에서 구현될 수도 있고, GPS 는 예를 들어 캐리어 위상 측정들을 사용하여 포지셔닝 파라미터들을 추정하기 위한 적어도 GPS 수신기를 포함한다.
또한, 본 발명의 일부 실시형태들에 따른 방법들, 디바이스들 및 컴퓨터 프로그램 제품들은 그들의 저장, 프로세싱 또는 통신 동안 데이터 또는 메시지들을 암호화/복호화하기 위한 암호화 알고리즘에서 사용되는 개인 비밀 값들에 대한 추정치들을 결정하기 위한 암호화 시스템들에서 구현될 수도 있다. 격자 기반 암호화 애플리케이션에서, 데이터/메시지들은 격자 지점의 형태로 암호화된다. 이러한 암호화된 데이터의 복호화는 본 발명의 일부 실시형태들에 따라 유리하게 수행될 수도 있어서, 감소된 복잡도로 비밀 값들의 성공적인 복구의 높은 확률을 가능하게 한다.
또한, 본 명세서에 설명된 방법들은 본 명세서에 특정된 기능들/동작들을 구현하기 위한 명령들을 실행하는 프로세서를 갖는 머신을 생성하기 위해 임의의 유형의 컴퓨터의 프로세서에 공급되는 컴퓨터 프로그램 명령들에 의해 구현될 수 있다. 이러한 컴퓨터 프로그램 명령들은 또한 컴퓨터가 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터-판독가능 매체에 저장될 수도 있다. 이를 위해, 컴퓨터 프로그램 명령들은 일련의 동작 단계들의 수행을 야기하기 위해 컴퓨터 상에 로딩될 수도 있고, 이에 의해, 실행된 명령들이 본 명세서에 특정된 기능들을 구현하기 위한 프로세스들을 제공하도록 컴퓨터 구현 프로세스를 생성할 수 있다.
발명의 실시형태들은 다양한 예들의 설명으로 예시되었고, 이러한 실시형태들은 상당한 상세들로 설명되었지만, 출원인의 의도는 이러한 상세들로 첨부된 청구항들의 범위를 한정하거나 임의의 방식으로 제한하는 것은 아니다, 부가 이점들 및 수정들이 당업자에게 쉽게 나타날 것이다. 따라서 더 넓은 양태들에서 발명은 나타내고 설명된 특정 상세들, 대표적인 방법들 및 예시적인 예들로 제한되지 않는다.
Claims (9)
- 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더 (300) 로서,
상기 신호는 채널 매트릭스에 의해 표현되는 송신 채널을 통해 수신되고,
상기 디코더는,
- 상기 채널 매트릭스의 서브-매트릭스들로의 분할에 따라 상기 정보 심볼들의 벡터를 정보 심볼들의 2 이상의 서브-벡터들로 분할하도록 구성된 블록 분할 유닛 (303) 으로서, 각각의 서브-벡터는 상기 채널 매트릭스에서의 상기 서브-벡터의 레벨을 나타내는 블록 레벨과 연관되는, 상기 블록 분할 유닛 (303);
- 후보 서브-벡터들을 결정하고 상기 후보 서브-벡터들을 제 1 스택 (310) 에 저장하기 위해 병렬로 동작하도록 구성된 2 이상의 프로세서들을 포함하며,
상기 2 이상의 프로세서들의 각각은, 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하는 것으로서, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타내는, 상기 적어도 후보 서브-벡터를 결정하고, 그리고 디코딩 메트릭 및 상기 채널 매트릭스 내의 상기 후보 서브-벡터의 레벨을 나타내는 블록 레벨과 함께 정보 심볼들의 상기 적어도 후보 서브-벡터를 상기 제 1 스택 (310) 에 저장하는 것으로서, 상기 디코딩 메트릭은 디코딩 메트릭 임계치 이하인, 상기 적어도 후보 서브-벡터를 상기 제 1 스택 (310) 에 저장하도록 구성되고,
상기 2 이상의 프로세서들 중의 프로세서는, 상기 제 1 스택 (310) 에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 상기 정보 심볼들의 벡터의 추정치를 나타내고 상기 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 그리고 상기 누적 디코딩 메트릭으로부터 상기 디코딩 메트릭 임계치를 업데이트하도록 구성되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 1 항에 있어서,
상기 2 이상의 프로세서들은,
- 최고 블록 레벨과 연관된 상기 정보 심볼들의 서브-벡터들로부터 시작하여 최저 블록 레벨과 연관된 상기 정보 심볼들의 서브-벡터에 도달할 때까지 추정 알고리즘을 재귀적으로 적용함으로써 정보 심볼들의 각각의 서브-벡터와 연관된 하나 이상의 후보 서브-벡터들을 결정하도록 구성된 제 1 프로세서 (304) 로서, 상기 제 1 프로세서 (304) 는 각각의 후보 서브-벡터를 상기 제 1 스택 (310) 에 저장하도록 구성되는, 상기 제 1 프로세서 (304);
- 상기 최저 블록 레벨과 연관된 서브-벡터를 상기 제 1 스택 (310) 에서 재귀적으로 선택하고, 상기 채널 매트릭스에서 상기 최저 블록 레벨에 도달할 때까지 심볼 추정 알고리즘을 적용함으로써 상기 최저 블록 레벨보다 낮은 블록 레벨들과 연관되는 정보 심볼들의 서브-벡터들의 각각과 연관된 후보 서브-벡터를 결정함으로써 하나 이상의 후보 서브-벡터들을 결정하도록 구성된 제 2 프로세서 (305) 로서, 상기 제 2 프로세서 (305) 는 추가로, 선택된 상기 후보 서브-벡터 및 상기 최저 블록 레벨보다 낮은 블록 레벨들과 연관되는 상기 정보 심볼들의 서브-벡터들과 연관하여 결정된 상기 후보 서브-벡터들로부터 후보 벡터를 결정하도록 구성되고, 상기 후보 벡터는 상기 정보 심볼들의 벡터의 추정치를 나타내며, 상기 제 2 프로세서 (305) 는 추가로, 선택된 상기 후보 서브-벡터와 연관된 디코딩 메트릭들 및 상기 최저 블록 레벨보다 낮은 블록 레벨들과 연관된 상기 정보 심볼들의 서브-벡터들과 연관하여 결정된 상기 후보 서브-벡터들과 연관된 디코딩 메트릭들을 가산함으로써 상기 후보 벡터와 연관된 누적 메트릭을 결정하도록 구성되고, 상기 제 2 프로세서 (305) 는 상기 누적 디코딩 메트릭과 함께 제 2 스택 (307) 에 상기 후보 벡터를 저장하도록 구성되고, 상기 디코딩 메트릭 임계치는 상기 누적 디코딩 메트릭으로 업데이트되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 2 항에 있어서,
상기 2 이상의 프로세서들 중의 프로세서는,
- 상기 후보 서브-벡터들과 연관된 상기 디코딩 메트릭들의 주어진 순서에 따라 상기 제 1 스택 (310) 을 순서화하고,
- 상기 후보 벡터와 연관된 상기 누적 디코딩 메트릭으로 상기 디코딩 메트릭 임계치를 업데이트하고,
- 업데이트된 디코딩 메트릭 임계치보다 높은 디코딩 메트릭과 연관되는 상기 후보 서브-벡터들을 상기 제 1 스택 (310) 에서 제거하며, 그리고
- 최저 누적 디코딩 메트릭과 연관되는, 상기 제 2 스택 (307) 에 저장된 후보 벡터로부터 정보 심볼들의 벡터의 추정치를 결정하도록
구성되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 1 항 또는 제 2 항에 있어서,
상기 심볼 추정 알고리즘은, 순차적 격자 디코딩 알고리즘, 제로 포싱 알고리즘, 최소 평균 제곱 에러 알고리즘, 및 제로 포싱 결정 피드백 등화기를 포함하는 그룹에서 선택되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 4 항에 있어서,
상기 심볼 추정 알고리즘은, 격자 감소 알고리즘 및/또는 MMSE-GDFE 필터링을 이용한 전처리 단계를 포함하는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 1 항 또는 제 2 항에 있어서,
상기 심볼 추정 알고리즘은 신호대 잡음비 및/또는 아웃티지 용량에 의존하여 미리 결정되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 1 항 또는 제 2 항에 있어서,
상기 심볼 추정 알고리즘은 타겟 달성가능 송신 레이트를 포함하는 그룹에서 선택된 타겟 서비스 품질 메트릭에 의존하여 미리 결정되는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 제 1 항에 있어서,
상기 블록 분할 유닛 (303) 은 적어도 2 와 동일한 블록들의 수 및 블록 길이들을 포함하는 분할 파라미터들의 세트에 따라 상기 정보 심볼들의 벡터를 분할하도록 구성되며, 상기 블록들의 수는 상기 정보 심볼들의 서브-벡터들의 수를 나타내고, 블록 길이는 정보 심볼들의 서브-벡터에 포함된 정보 심볼들의 수를 나타내는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 디코더. - 신호에 의해 반송되는 정보 심볼들의 벡터의 추정치를 결정하기 위한 방법으로서,
상기 신호는 채널 매트릭스에 의해 표현되는 송신 채널을 통해 수신되며,
상기 방법은,
- 상기 채널 매트릭스의 서브-매트릭스들로의 분할에 따라 상기 정보 심볼들의 벡터를 정보 심볼들의 2 이상의 서브-벡터들로 분할하는 단계로서, 각각의 서브-벡터는 상기 채널 매트릭스에서 상기 서브-벡터의 레벨을 나타내는 블록 레벨과 연관되는, 상기 정보 심볼들의 벡터를 분할하는 단계;
- 병렬로 동작하는 2 이상의 프로세서들에 의해, 후보 서브-벡터들을 결정하고, 상기 후보 서브-벡터들을 제 1 스택에 저장하는 단계
를 포함하고,
상기 후보 서브-벡터들을 결정하는 단계는,
* 상기 2 이상의 프로세서들의 각각에 의해, 심볼 추정 알고리즘을 적용함으로써 적어도 후보 서브-벡터를 결정하는 단계로서, 후보 서브-벡터는 정보 심볼들의 서브-벡터의 추정치를 나타내는, 상기 후보 서브-벡터를 결정하는 단계, 및
* 디코딩 메트릭 및 상기 채널 매트릭스 내의 상기 후보 서브-벡터의 레벨을 나타내는 블록 레벨과 함께 정보 심볼들의 상기 적어도 후보 서브-벡터를 상기 제 1 스택에 저장하는 단계로서, 상기 디코딩 메트릭은 디코딩 메트릭 임계치 이하인, 상기 적어도 후보 서브-벡터를 상기 제 1 스택에 저장하는 단계
를 포함하며,
상기 방법은, 상기 제 1 스택에 저장된 후보 서브-벡터들로부터 적어도 후보 벡터를 결정하는 것으로서, 상기 후보 벡터는 상기 정보 심볼들의 벡터의 추정치를 나타내고 상기 후보 서브-벡터들과 함께 저장된 디코딩 메트릭들로부터 결정된 누적 디코딩 메트릭과 연관되는, 상기 적어도 후보 벡터를 결정하고, 상기 누적 디코딩 메트릭으로부터 상기 디코딩 메트릭 임계치를 업데이트하는 단계를 더 포함하는, 정보 심볼들의 벡터의 추정치를 결정하기 위한 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18306628.1A EP3664333B1 (en) | 2018-12-06 | 2018-12-06 | Devices and methods for parallelized recursive block decoding |
EP18306628.1 | 2018-12-06 | ||
PCT/EP2019/082026 WO2020114790A1 (en) | 2018-12-06 | 2019-11-21 | Devices and methods for parallelized recursive block decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210096254A true KR20210096254A (ko) | 2021-08-04 |
Family
ID=64665799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217021074A KR20210096254A (ko) | 2018-12-06 | 2019-11-21 | 병렬화된 재귀적 블록 디코딩을 위한 디바이스들 및 방법들 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11294674B2 (ko) |
EP (1) | EP3664333B1 (ko) |
JP (1) | JP2022510682A (ko) |
KR (1) | KR20210096254A (ko) |
CN (1) | CN113475023A (ko) |
WO (1) | WO2020114790A1 (ko) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101215363B1 (ko) * | 2006-04-25 | 2012-12-26 | 엘지전자 주식회사 | 디지털 방송 시스템 및 처리 방법 |
DE602006018332D1 (de) * | 2006-12-07 | 2010-12-30 | Thomson Licensing | Verfahren zur Dekodierung eines empfangenen mehrdimensionalen Signals |
CN104079943B (zh) * | 2014-06-26 | 2017-11-28 | 华为技术有限公司 | 一种帧内深度图像块编码、解码的方法及装置 |
EP3059915B1 (en) * | 2015-02-19 | 2021-03-24 | Institut Mines-Telecom | Tree search-based decoding |
EP3169028B1 (en) * | 2015-11-13 | 2020-09-23 | Institut Mines Telecom | Semi-exhaustive recursive block decoding method and device |
EP3188427B1 (en) * | 2015-12-28 | 2019-08-21 | Institut Mines-Télécom | Reordered sub-block decoding |
EP3188390B1 (en) * | 2015-12-28 | 2020-01-22 | Institut Mines-Télécom | Weighted sequential decoding |
EP3188394B1 (en) * | 2015-12-28 | 2020-05-06 | Institut Mines-Telecom | Recursive sub-block decoding |
EP3229429B1 (en) * | 2016-04-08 | 2021-03-03 | Institut Mines-Télécom | Methods and devices for symbols detection in multi antenna systems |
US10432234B2 (en) * | 2016-07-19 | 2019-10-01 | Mediatek Inc. | Low complexity rate matching for polar codes |
EP3337112A1 (en) * | 2016-12-19 | 2018-06-20 | Institut Mines-Telecom | Methods and devices for sub-block decoding data signals |
EP3340554A1 (en) * | 2016-12-21 | 2018-06-27 | Institut Mines-Telecom | Methods and devices for sub-block decoding data signals |
-
2018
- 2018-12-06 EP EP18306628.1A patent/EP3664333B1/en active Active
-
2019
- 2019-11-21 KR KR1020217021074A patent/KR20210096254A/ko not_active Application Discontinuation
- 2019-11-21 JP JP2021531972A patent/JP2022510682A/ja active Pending
- 2019-11-21 US US17/297,994 patent/US11294674B2/en active Active
- 2019-11-21 CN CN201980079948.1A patent/CN113475023A/zh active Pending
- 2019-11-21 WO PCT/EP2019/082026 patent/WO2020114790A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US11294674B2 (en) | 2022-04-05 |
WO2020114790A1 (en) | 2020-06-11 |
CN113475023A (zh) | 2021-10-01 |
EP3664333B1 (en) | 2023-12-13 |
US20210397450A1 (en) | 2021-12-23 |
EP3664333A1 (en) | 2020-06-10 |
JP2022510682A (ja) | 2022-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101999452B1 (ko) | 서브-블록 디코딩 데이터 신호를 위한 방법 및 장치 | |
KR101922780B1 (ko) | 재순서화된 서브블록 디코딩 | |
KR102106245B1 (ko) | 데이터 신호 디코딩 방법 및 장치 | |
KR101844766B1 (ko) | 매개변수화 순차 복호화 | |
KR101890998B1 (ko) | 반소모적 회귀 블록 복호화 방법 및 장치 | |
KR101973849B1 (ko) | 순차적 스피어 디코딩을 위한 방법 및 장치 | |
KR101904011B1 (ko) | 재귀적 서브 블록 디코딩 | |
KR102143679B1 (ko) | 데이터 신호를 서브-블록 디코딩하기 위한 방법 및 장치 | |
US11294674B2 (en) | Devices and methods for parallelized recursive block decoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal |