• 沒有找到結果。

用於多輸入多輸出系統具高效率搜尋設計之複數K-Best球體解碼器

N/A
N/A
Protected

Academic year: 2021

Share "用於多輸入多輸出系統具高效率搜尋設計之複數K-Best球體解碼器"

Copied!
84
0
0

加載中.... (立即查看全文)

全文

(1)

國 立 交 通 大 學

電信工程學系碩士班

碩士論文

用於多輸入多輸出系統具高效率搜尋設計

之複數

K

-Best 球體解碼器

A Complex K-Best Sphere Decoder with Efficient

Search Design for MIMO Systems

研 究 生:宋志晟

Student: Chih-Sheng Sung

指導教授:李大嵩 博士

Advisor: Dr. Ta-Sung Lee

(2)

用於多輸入多輸出系統具高效率搜尋設計之複數

K

-Best 球體解碼器

A Complex K-Best Sphere Decoder with Efficient Search

Design for MIMO Systems

研 究 生:宋志晟

Student: Chih-Sheng Sung

指導教授:李大嵩 博士

Advisor: Dr. Ta-Sung Lee

國立交通大學

電信工程學系碩士班

碩士論文

A Thesis

Submitted to Department of Communication Engineering

College of Electrical and Computer Engineering

National Chiao Tung University

in Partial Fulfillment of the Requirements

for the Degree of

Master of Science

in

Communication Engineering

June 2009

Hsinchu, Taiwan, Republic of China

(3)

用於多輸入多輸出系統具高效率搜尋設計之複

K-Best 球體解碼器

學生:宋志晟 指導教授:李大嵩 博士

國立交通大學電信工程學系碩士班

摘要

在無線通訊系統中,多輸入多輸出(Multiple-Input Multiple-Output, MIMO) 技術不需要增加額外的頻寬及傳輸功率便能提高傳輸速率及改善傳輸品質。然 而,在多輸入多輸出系統中要設計出具高性能且低複雜度之接收機是一項艱難的 挑戰。使用最大可能偵測法能得到最佳的效能,然而其所需的運算複雜度會隨著 傳送天線個數的增加呈指數的成長。球體解碼演算法能以較低的複雜度達到與最 大可能偵測法相同之效能。然而,傳統的球體解碼演算法會有資料吞吐量不穩定 之問題。K-best 球體解碼演算法在每一層的節點搜尋當中只保留 K 個最佳的候 選點當作下一次搜尋的依據,因此具有穩定的資料吞吐量。然而,K-best 球體 解碼演算法需要取相當大的 K 值才能達到近似最大可能偵測法之效能。除此之 外,在每一層的節點搜尋中將候選點作排序取出K個最佳的候選點會耗費大量的 記憶體存取。在本論文中,吾人提出ㄧ具高效率搜尋架構之複數K-best 球體解 碼器。此解碼器能夠大幅降低排序時所花費的運算量。針對所提出之複數候選點 搜尋方法,吾人亦設計出相對應之電路架構圖。經由分析與模擬的驗證,此解碼 器僅需選取較小的K值即可達到近似最大可能偵測法之效能。

(4)

A Complex K-Best Sphere Decoder with Efficient

Search Design for MIMO Systems

Student:

Chih-Sheng

Sung Advisor:

Dr.

Ta-Sung

Lee

Department of Communication Engineering

National Chiao Tung University

Abstract

In wireless communication systems, multiple-input and multiple-output (MIMO) technology offers significant increases in data rate and link range without additional bandwidth or transmit power. However, the design of high performance and low complexity receivers for MIMO systems is a challenging task. The maximum-likelihood (ML) detection is the optimal detection scheme but its complexity grows exponentially with the number of transmit antennas. The sphere decoding algorithm (SDA) achieves the ML performance with reduced complexity. Nevertheless, the throughput of the conventional SDA is not stable. The K-best SDA which keeps only K-best candidates at each layer for the search of next layer is guaranteed to have a stable throughput. However, to achieve a near-ML performance, the value of K should be sufficiently large. Besides, applying a sorting algorithm to find K-best candidates at each layer requires a large amount of memory access. In this thesis, we propose a complex K-best sphere decoder with an efficient search architecture. The proposed K-best sphere decoder significantly reduces the sorting complexity. We also provide the hardware architecture of the proposed complex candidate search method. It is demonstrated through analysis and simulations that the proposed K-best sphere decoder achieves a near-ML performance without requiring a large value of K.

(5)

Acknowledgement

I would like to express my deepest gratitude to my advisor, Dr. Ta-Sung Lee, for his enthusiastic guidance and great patience. I learned a lot from his positive attitude in many areas, especially in the training of oral presentation. Besides, I want to thank Chester senior whose knowledge and experience have benefited me tremendously in my research. Thanks are also offered to all members in the Communication System Design and Signal Processing (CSDSP) Lab for their inspiring discussions. Moreover, I sincerely appreciate the encouragement of my friends. I would not be where I am today without their support. At last but not least, I would like to show my sincere thanks to my family for their invaluable love and support.

(6)

Contents

Chinese Abstract ...I

English Abstract... II

Acknowledgement ... III

Contents ...IV

List of Figures...VI

List of Tables ... VIII

Acronym Glossary...IX

Notations...XI

Chapter 1 Introduction... 1

Chapter 2 MIMO Systems ... 4

2.1 System Model ...4 2.2 Channel Capacity...6 2.3 MIMO Diversity ...8 2.3.1 Receive Diversity...8 2.3.2 Transmit Diversity ...9 2.4 Spatial Multiplexing...10 2.5 MIMO Detection...13 2.5.1 Linear Detection...13 2.5.2 Non-Linear Detection ...14

(7)

2.6 Sphere Decoding Algorithm (SDA)...16

2.6.1 Fincke and Pohst SDA ...19

2.6.2 Schnorr and Euchner SDA...20

2.6.3 K-Best SDA ...21

2.6 Summary...22

Chapter 3 Proposed Complex K-Best Sphere Decoding

Algorithm... 24

3.1 Complex K-Best SDA...24

3.2 Efficient Sorting Strategy...27

3.3 Efficient Complex Domain Search Method...32

3.4 Preprocessing ...38

3.5 ML-Like Search Strategy...39

3.6 Computer Simulations ...40

3.7 Summary...44

Chapter 4 Hardware Architecture and Sorting Complexity

Analysis of Proposed Algorithm... 45

4.1 Hardware Architecture ...45

4.2 Discussion on Proposed ML-Like Search Strategy ...49

4.3 Sorting Complexity Analysis ...55

4.4 Simulation Results ...58

4.5 Summary...65

Chapter 5 Conclusions and Future Works... 66

(8)

List of Figures

Figure 2-1: Block diagram of a MIMO system...5

Figure 2-2: Transmitter block of the Alamouti scheme ...10

Figure 2-3: An illustration of a spatial multiplexing system...11

Figure 2-4: Encoding procedure of the D-BLAST scheme (N =3)...12

Figure 2-5: Encoding procedure of the V-BLAST scheme (N =3)...12

Figure 2-6: Overview of MIMO detection methods ...13

Figure 2-7: Geometrical interpretation of the SDA ...17

Figure 2-8: A tree search structure of the SDA (N =2) ...18

Figure 2-9: The concept of the K-best SDA...22

Figure 3-1: Sorting of the conventional K-best SDA...27

Figure 3-2: K sorted groups of the proposed method...28

Figure 3-3: An example of the merge algorithm...29

Figure 3-4: An example of the proposed sorting method...31

Figure 3-5: Geometrical interpretation of the search constraint ...32

Figure 3-6: An example of the nearest 11 points from the search center s ...33 i Figure 3-7: Boundaries of the search groups ...33

Figure 3-8: Symmetry property of the QAM constellation...36

Figure 3-9: Rounding operation of the search center...37

Figure 3-10: Special quantization for the search center at the Nth layer ...38

Figure 3-11: Comparison between (a) conventional K-best algorithm (b) proposed ML-like search strategy ...39 Figure 3-12: Simulations of 4 4× 16QAM with K = ...41 8

(9)

Figure 3-13: Simulations of 8 8× 16QAM with K =14...41

Figure 3-14: Simulations of 4 4× 64QAM with K = ...42 8 Figure 3-15: Simulations of 8 8× 64QAM with K = 36...43

Figure 4-1: Functional block diagram of the CCG unit ...46

Figure 4-2: Detailed block diagram of the CCG unit...46

Figure 4-3: Rounding unit of Re

( )

si ...47

Figure 4-4: Transforming unit of s ...48 i Figure 4-5: Hardware architecture of the candidate generator...49

Figure 4-6: Search constraint at the Nth layer with d =' 1.1 (a) rN N, = (b) 1 , 0.33 N N r = ...50

Figure 4-7: PDF curves of ro i i2, , of the 4 4× channel...53

Figure 4-8: PDF curves of ro i i2, , of the 8 8× channel...54

Figure 4-9: 4 4× 16QAM simulations of (a) SER (b) complexity , K = and 8 0.291 r T = ...60

Figure 4-10: 8 8× 16QAM simulations of (a) SER (b) complexity , K =14 and 0.833 r T = ...61

Figure 4-11: 4 4× 64QAM simulations of (a) SER (b) complexity , K = and 8 0.353 r T = ...63

Figure 4-12: 8 8× 64QAM simulations of (a) SER (b) complexity , K =36 and 1.143 r T = ...64

(10)

List of Tables

Table 3-1: List of candidate sequences...34

Table 4-1: Sorting complexity in the Nth layer ...56

Table 4-2: Sorting complexity in the (N-1)th layer ...57

Table 4-3: Sorting complexity in the ith layer (2≤ ≤i N −2) ...57

Table 4-4: Sorting complexity in the 1st layer ...58

(11)

Acronym Glossary

CCG complex candidate generator CS compare and select

D-BLAST diagonal Bell laboratories layered space-time

EGC equal-gain combining

FP Fincke and Pohst

MIMO multiple-input multiple-output MISO multiple-input-single-output ML maximum-likelihood MMSE minimum mean-square error MRC maximum ratio combining

SD spatial diversity

SDA sphere decoding algorithm

SE Schnorr and Euchner

SER symbol error rate

SIC successive interference cancellation SISO single-input-single-output

SIMO single-input-multiple-output

SM spatial multiplexing

SNR signal to noise ratio STBC space-time block code

STC space-time code

(12)

V-BLAST vertical Bell laboratories layered space-time VLSI very-large-scale integration ZF zero-forcing

(13)

Notations

⎡ ⎤⋅ ceiling operator ( )⋅ * conjugate operator { } E ⋅ expectation operator ⎣ ⎦⋅ floor operator

( )⋅ † Moore-Penrose pseudo-inverse operator [ ]⋅ rounding operator ( ) Q ⋅ quantization operator ( )⋅ T transpose operator C channel capacity H channel matrix

M number of receive antennas c

M constellation size

N number of transmit antennas

P transmit power n noise vector

γ average SNR at the receiver

x transmit signal vector y received signal vector

(14)

Chapter 1

Introduction

Next generation wireless communication systems are expected to provide users with higher data rate services including video, audio, data and voice signals. The rapidly growing demand for these services drives the wireless communication technologies towards higher data rate, higher mobility and higher link quality. However, the time-selective and frequency-selective fading in wireless channel caused by multipath propagation, Doppler shifts and carrier frequency/phase drifts severely affect the quality and reliability of wireless communication. Besides, the available bandwidth and power are limited which makes the design of wireless communication systems extremely challenging. Hence, recently there are many innovative techniques that improve the reliability and the spectral efficiency of wireless communication links. Some popular examples include the coded multicarrirer modulation, smart antenna, in particular multiple-input multiple-output (MIMO) technology [1-4] and adaptive modulation [5], [6].

MIMO technology involves the use of multiple antennas at the transmitter and receiver to improve communication performance. The technology offers some benefits that overcome the challenges posed by both the impairments in wireless channel as well as resource constraints. The two important benefits of MIMO technology are the diversity gain and the spatial multiplexing gain. Diversity gain mitigates fading by providing the receiver with multiple (ideally independent) copies

(15)

of the transmitted signal in space, time or frequency. Spatial multiplexing offers a linear increase in data rate by transmitting multiple independent data streams within the bandwidth of operation.

There are many signal detection schemes for MIMO systems such as linear detection, successive interference cancellation (SIC) [7], [8] and the maximum-likelihood (ML) detection. Both the linear detection and the SIC schemes are easy to be implemented but their detection performance are not optimal. The optimal detection scheme is the ML detection; however, the complexity of the ML detection scheme grows exponentially with the size of the transmit symbol alphabet and the number of transmit antennas. To reduce the complexity of the ML detection, the sphere decoding algorithm (SDA) is introduced in [9-12] to achieve the same performance as the ML detection with reduced complexity. The basic idea of SDA is to search the nearest lattice point to the received signal vector within a given sphere radius. However, the complexity of the conventional SDA is still too high in the low SNR range and its decoding throughput is not stable. Hence, it is not suitable for real time detection and hardware implementations.

To overcome the drawbacks of the conventional SDA, the K-best SDA is introduced in [13-16]. The K-best SDA uses breadth-first search and keeps K-best candidates at each layer for the next layer search. Hence, the decoding throughput of the K-best SDA is stable. However, one major drawback of the K-best SDA is that the value of K has to be chosen sufficiently large to achieve a near-ML performance which increases the computational complexity. Besides, applying sorting algorithm to find K-best candidates at each layer causes large amount of memory access.

In this thesis, our major goal is to reduce the sorting complexity of the K-best SDA. We propose an efficient sorting method which reduces the large amount of memory access without sacrificing the detection performance. To reduce the number

(16)

of search layers, we propose an efficient complex domain candidate search method which is simple and can be easily implemented by VLSI process. Moreover, we propose a search method which deals with the poor condition channel to improve the performance of the proposed K-best SDA when the value of K is small. As a result, the proposed K-best SDA has lower complexity and better performance than the conventional K-best SDA.

The remainder of the thesis is organized as follows. In Chapter 2, the signal model and the conventional detection schemes of the MIMO systems are introduced first. Secondly, several kinds of the SDA are given. In Chapter 3, the proposed K-best SDA is presented. Chapter 4 provides the VLSI architecture of the proposed complex domain candidate search method and the sorting complexity analysis of the proposed

K-best SDA. Finally, Chapter 5 gives conclusion remarks of this thesis and leads the

(17)

Chapter 2

MIMO Systems

In wireless communication, multiple-input and multiple-output (MIMO) involves the use of multiple antennas at the transmitter and receiver to improve communication performance. MIMO technology offers significant increases in data rate and link range without additional bandwidth or transmit power. In this chapter, we give a review of the MIMO systems. We first introduce the MIMO system model in Section 2.1. Section 2.2 introduces the channel capacity. Then, the spatial diversity (SD) and the spatial multiplexing (SM) techniques are introduced in Section 2.3 and Section 2.4, respectively. The common detection schemes of the MIMO systems will be given in Section 2.5. The sphere decoding algorithm has been studied as a practical solution of the ML detection with reduced complexity. We will give an introduction of the sphere decoding algorithm in Section 2.6.

2.1 System Model

Consider the MIMO system shown in Figure 2-1 with N transmit antennas and

M receive antennas. The received signal vector is denoted as

1 1 2 T M M y y y × ⎡ ⎤ =

y " ^ , where y is the received signal at the mth receive m

antenna and [ ]⋅ denotes the transpose operator. Similarly, the transmitted signal T

vector is denoted as 1 1 2 T N N x x x × ⎡ ⎤ = x " ^ or \N×1, where n x is the

(18)

transmitted signal at the nth transmit antenna. Assume MN and the channel responses are frequency-flat fading and remain constant during a frame transmission. The channel matrix can be expressed as

1,1 1,2 1, 2,1 2,2 2, ,1 ,2 , , N N M M M N h h h h h h h h h ⎡ ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ H " " # # % # " (2.1)

where h is the channel gain from the jth transmit antenna to the ith receive antenna. i j,

With the assumption that sufficient antenna separation at the transmit and receive antennas, the elements of the channel matrix H can be assumed to be i.i.d. complex Gaussian random variables with zero-mean and unit variance. The relation between the received signal vector and the transmitted signal vector can be expressed as

, = + y Hx n (2.2) where 1 1 2 T M M n n n × ⎡ ⎤ =

n " ^ is the i.i.d. complex additive white Gaussian noise (AWGN) vector with zero-mean and covariance matrix σ I . 2

Figure 2-1: Block diagram of a MIMO system

RX

H

TX

#

TX 1 TX N

#

RX M RX 1

(19)

2.2 Channel Capacity

Channel capacity is the highest rate in bits per channel use at which information can be transmitted with an arbitrary probability of error. We first introduce the single-input-single-output (SISO) channel capacity and then study the capacity of a MIMO channel. Note that single-input-multiple-output (SIMO) and multiple-input-single-output (MISO) channels are sub-sets of the MIMO case. The channel capacity is defined as [17]

( ) ( ) max ; , p x C = Ι X Y (2.3) where (X Y; ) ( )Y H Y X

(

|

)

Ι = Η − (2.4)

is the mutual information between X and Y, Η( )Y and H Y X

(

|

)

are the differential entropy of Y and differential conditional entropy of Y with knowledge of

X given, respectively. In (2.3), it states that the mutual information is maximized with

respect to all possible transmitter statistical distributions p x . ( )

The ergodic capacity of a SISO system with a random complex channel gain h is given by [17]

(

)

{

log 12 2

}

bits/sec/Hz,

C =E + γ h (2.5)

where γ =Pσ2 is the average SNR at the receiver, P is the transmit power and

{ }

E ⋅ denotes the expectation over all channel realization. For a MIMO system with N transmit antennas and M receive antennas, the capacity of a random MIMO channel

is given by [1]

( ) 2 2 bits/sec/Hz

trmaxxx = log det ,

H M xx N P C E N ⎧ ⎡ ⎛ ⎞⎤⎫ ⎪ ⎪ ⎪ ⎪ = ⎜⎝ + ⎟⎟ ⎩ ⎭ R I σ HR H (2.6)

(20)

where Rxx =E

{

xxH

}

is the covariance matrix of the transmitted signal vector x. If the channel knowledge is unknown to the transmitter, the signals are chosen to be independent and equal-powered. The covariance matrix of transmit signal vector is then given by Rxx =I . As a result, the ergodic capacity of a MIMO system can be M written as [1] bits/sec/Hz 2 2 log det H . M P C E N ⎧ ⎡ ⎛ ⎞⎤⎫ ⎪ ⎪ ⎪ ⎪ = ⎜⎝I +σ HH ⎟⎟ (2.7) By using the eigenvalue decomposition, the matrix product of HH can be H

decomposed as HHH =E EΛ H, where E is an M×M matrix which consists of the eigenvectors satisfying EEH = E EH =I and M Λ=diag

{

λ λ1, , ,2λM

}

is a diagonal matrix with the eigenvalues λi ≥ on the main diagonal. Assuming that 0 the eigenvalues λ are ordered so that i λiλi+1, we have

if if 2, 1 , 0, 1 i i i r r i M ⎧⎪ ≤ ≤ ⎪⎪ = ⎨ + ≤ ≤ ⎪⎪⎩ σ λ (2.8)

where σ is the ith squared singular value of the channel matrix H and i2

( ) { }

rank min ,

r = HN M is the rank of the channel matrix. Then the capacity of a MIMO channel can hence be rewritten as

bits/sec/Hz

2 2 2 2

2 2

1

log det log det

log 1 . H M M r i i P P C E E N N P E N = ⎧ ⎡ ⎛ ⎞⎤⎫ ⎧ ⎡ ⎛ ⎞⎤⎫ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ = + ⎬= + ⎬ ⎣ ⎦ ⎣ ⎦ ⎪ ⎪ ⎪ ⎪ ⎩ ⎭ ⎩ ⎭ ⎧ ⎛ ⎞⎫ ⎪ ⎪ ⎪ ⎪ =

⎜⎝ + ⎟⎟ I E E I σ σ λ σ Λ Λ (2.9)

Note that the second equation holds due to the fact det

(

Im +AB

)

=det

(

In +BA

)

for matrices A∈^m n× and B∈^n m× and E EH =I . Equation (2.9) shows that M the capacity of a MIMO channel is made up by sum of the capacities of r SISO sub-channels with power gains λ for i i =1,2, ,… r and transmit power P N

(21)

If the channel knowledge is known to the transmitter, the capacity of a MIMO channel is the sum of the capacities associated with the parallel SISO channels and is given by bits/sec/Hz 2 2 1 log 1 , r i i i P C E N = ⎧ ⎛ ⎞⎫ ⎪ ⎪ ⎪ ⎪ =

⎜⎝ +γ σ λ⎟⎟⎬ (2.10) where γ =i E x

{ }

i2 for i =1,2, ,… is the transmit power in the ith sub-channel r

and satisfy

ri=1γi =N . Since the transmitter can access the spatial sub-channels, we can allocate variable power across the sub-channels to maximize the mutual information. The optimal power allocation of the ith sub-channel is given by [1], [17]

2 opt for 1,2, , , i i M i r P σ γ μ λ +⎞⎟ =⎜ = ⎜⎝ ⎠ " (2.11)

where μ is chosen to satisfy the constraint

ri=1γiopt =N and ( )⋅ denotes the + operation that taking those terms which are positive. The optimal power allocation in (2.11) is found iteratively through the water-filling algorithm [1], [17].

2.3 MIMO Diversity

Diversity techniques are widely used in MIMO systems to improve the reliability of transmission without increasing the transmit power or sacrificing the bandwidth. There many diversity techniques such as time diversity, frequency diversity and space diversity. In this section, we focus on the space diversity that is so called antenna diversity.

2.3.1 Receive Diversity

Receive diversity involves the use of multiple antennas at the receiver. At the receiver, multiple copies of the transmitted signal are received, which can be

(22)

efficiently combined with an appropriate signal processing algorithm. There are four main types of combining techniques, include selection combining, switch combining, equal-gain combining (EGC) and the maximum ratio combining (MRC). In the selection combining, the received signal with the best quality is chosen and the choosing criterion is based on SNR. Switch diversity switches the received signal path to an alternative antenna when the current received signal level falls below a given threshold. EGC is a simple method since it does not require estimation of the channel. The receiver simply combines the received signals from different receive antennas with weights set to be equal. MRC forms the output signal by a linear combination of all the received signals and is the optimal combination technique which achieves the maximum value of the output SNR.

2.3.2 Transmit Diversity

Transmit diversity techniques which provide diversity benefits at the receiver with multiple transmit antennas, has received much attention, especially in wireless cellular systems. There are two broad categories of transmit diversity: the open loop schemes and the closed loop schemes. In the open loop schemes, the transmitter transmits signals without feedback information from receiver. Space-time code (STC) is an open loop scheme which jointly designs of channel coding and modulation to improve system performance by providing both transmit diversity and coding gain. STC can be classified into two categories, the space-time block code (STBC) and the space-time trellis code (STTC). In this section, we focus on STBC.

The most famous STBC is the Alamouti STBC [3]. This scheme is proposed for two transmit antennas which is shown in Figure 2-2. In the Alamouti scheme, symbols transmitted from the transmit antennas are encoded in both space and time in a simple

(23)

manner to ensure the transmissions form both the antennas are orthogonal to each other. At a given symbol period, the encoder takes a block of two modulated symbols

1

x and x in each encoding operation and maps them into the transmit antennas 2

according to a code matrix which is given by

* 1 2 * 2 1 , x x C x x ⎤ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ (2.12)

where ( )⋅ denotes the conjugate operator. During the first transmission period, two * signals x and 1 x are transmitted simultaneously from antenna one and antenna 2

two respectively. In the second transmission period, − is transmitted from the x2*

transmit antenna one and x is transmitted form the transmit antenna two. The 1*

Alamouti scheme extracts the diversity order of 2 (full transmit diversity) even in the absence of the channel knowledge at the transmitter.

Figure 2-2: Transmitter block of the Alamouti scheme

2.4 Spatial Multiplexing

Spatial multiplexing is a transmission technique of MIMO wireless communication systems which increases the transmission data rate without additional bandwidth or power consumption. In the spatial multiplexing systems, N different

Data Modulator S/P Alamouti Encoder 1 2 x x ⎡ ⎤ ⎢ ⎥ ⎣ ⎦ ⇓ * 1 2 * 2 1 -x x x x ⎡ ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ x 1 h 2 h

(24)

data streams are transmitted from different transmit antennas simultaneously or sequentially and these data streams are separated and demutiplexed to yield the original transmitted signals according to their unique spatial signatures at the receiver, as illustrated in Figure 2-3. The separation of data streams at the receiver can be done possibly by the fact that rich scattering multi-paths contribute to lower correlations between MIMO channel coefficients and hence create a channel matrix with full rank and low condition number to N unknowns from a linear system of M equations. In the following, two typical spatial multiplexing schemes, D-BLAST [4] and V-BLAST [18] are introduced.

Figure 2-3: An illustration of a spatial multiplexing system (1) Diagonal Bell Laboratories Layered Space-Time (D-BLAST)

The concept of layered space-time processing was introduced by Foschini at Bell Laboratories [4]. D-BLAST uses multiple antennas at both the transmitter and the receiver, and an elegant diagonally-layered coding sequence in which code blocks are dispersed across the diagonals in space-time. The high-rate information bit stream is first demultiplexed into N substreams, and each substream is encoded by a conventional 1-D constituent code. The encoders apply these coded symbols to the input to form a semi-infinite matrix X of N rows to be transmitted. The encoding procedure is shown in Figure 2-4.

(25)

(2) Vertical Bell Laboratories Layered Space-Time (V-BLAST)

The D-BLAST algorithm suffers from certain implementation complexities which is not suitable for practical implementation. Therefore, a simplified version of the BLAST algorithm is known as V-BLAST. It is capable of achieving high spectral efficiency while being relatively simple to be implemented. The coding procedure of the V-BLAST can be viewed as there is an encoder on each transmit antenna. The output coded symbols of each encoder are transmitted directly from the corresponding antenna which is shown in Figure 2-5.

Figure 2-4: Encoding procedure of the D-BLAST scheme (N =3)

Figure 2-5: Encoding procedure of the V-BLAST scheme (N =3)

E Ennccooddeer β r E Ennccooddeer γ r E Ennccooddeer αr 1 :N DEMUX Input bits E Ennccooddeerr β E Ennccooddeerr γ E Ennccooddeerr α ( (DDeeccooddiinngg) ) 0 0 0 3 3 3 1 1 1 4 4 4 2 2 2 5 5 5 0 0 0 α β γ α β γ α β γ α β γ α β γ α β γ ⎡ ⎤ ⎢ ⎥ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ X " " T Tiimmee D Deecciissiioonn

"

"

"

L Laayyeerr S Sppaaccee E Ennccooddeer β r E Ennccooddeer γ r E Ennccooddeer αr 1 :N DEMUX Input bits T Tiimmee D Deecciissiioonn 0 1 2 3 0 1 2 3 0 1 2 3 α α α α β β β β γ γ γ γ ⎡ ⎤ ⎢ ⎥ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ X " " " E Ennccooddeerr β E Ennccooddeerr γ E Ennccooddeerr α S Sppaaccee L Laayyeerr ( (DDeeccooddiinngg))

(26)

2.5 MIMO Detection

The classification of MIMO detection schemes are shown in Figure 2-6. In this section, we introduce linear and non-linear detection schemes in the following subsections.

Figure 2-6: Overview of MIMO detection methods

2.5.1 Linear Detection

The linear detection is to preprocess the received signal by transforming it linearly

= = +

y Wy WHx Wn

 (2.13)

so that the transformed channel-matrix WH will be close to a diagonal matrix. Here, we introduce two detection schemes: zero-forcing and minimum mean-square error. (1) Zero-Forcing (ZF)

In the ZF scheme, the preprocessing matrix W is chosen to remove the off-diagonal terms of WH † = y H y  (2.14) MIMO Detection Tree search Algorithm Linear Schemes Non-Linear Schemes Sphere Decoding Exhaust ML Search OSIC Schemes ZF-BLAST MMSE-BLAST Zero-Forcing (ZF) Minimum Mean-Square Error (MMSE)

(27)

where H is the Moore-Penrose pseudo-inverse of H . The spatial interferences are † completely removed from the received signal; however, the main drawback of ZF method is the resulting noise enhancement.

(2)Minimum Mean-Square Error (MMSE)

The MMSE scheme minimizes the joint effects of the interferences and the noise by 1 2 H H s E σ − ⎛ ⎞⎟ =⎜ + ⎜⎝ ⎠ y H H I H y  (2.15)

where E is the average energy of a transmitted symbol. MMSE outperforms than s

ZF method; however, to estimate the variance of the noise is hard at the receiver.

2.5.2 Non-Linear Detection

(1) V-BLAST Detection

The detection scheme of the V-BLAST system is based on the ordered successive interference cancellation (OSIC) algorithm [7], [8]. In OSIC, the detection procedure first detects the strongest signal, cancels the effect of the detected signal from the received signal, and then proceeds to detect the strongest signal of the remaining transmitted signals, and so on. The basic steps of the OSIC algorithm are as follows:

y Ordering: Detect the signals in descending order of power in accordance

with some criteria such as ZF or MMSE.

y Nulling: Nulling out all weaker signals to extract the strongest signal.

y Slicing: Make a hard decision on the strongest signal.

y Cancelling: Cancel the effect of the detected strongest signal from the

received signal.

(28)

V-BLAST. The differences between these two detection schemes are the ordering criterion and the nulling process. The ZF V-BLAST detection algorithm can be summarized as follows: Initialization: † 1 = , 1= , n =1 y y G H (2.16) Recursion: {1 2 1}

( )

2 , , , arg min n n n j j o o o o − ∉ = G " (2.17)

( )

n n o = n o w G (2.18) n n H o o n z = w y (2.19)

( )

n n o o x =Q z  (2.20) 1 n on n+ = no x y y H  (2.21) i

( )

† 1 n H o n + = G H (2.22) 1 n = +n (2.23)

The MMSE V-BLAST detection algorithm can be summarized as follows: Initialization: 1 2 1 , 1 H H 1 H, n 1 P σ − ⎛ ⎞⎟ = =⎜ + = = ⎜⎝ ⎠ y y G H H I H Q H (2.24) Recursion: {1 2 1}

(

( )

)

2 , , ,

arg min diag

n n n j j o o o o − ∉ = Q " (2.25)

( )

n n o = n o w G (2.26) n n H o o n z = w y (2.27)

( )

n n o o x =Q z  (2.28)

(29)

1 n on n+ = no x y y H  (2.29) i i i i 1 2 1 n n n 1 n H H H o o o o n n P σ − + + ⎛ ⎞⎟ =⎜ + = ⎜⎝ ⎠ G H H I H Q H (2.30) 1 n = +n (2.31)

where ( )A j denotes the jth column of matrix A, Q ⋅ denotes the quantization ( ) operator, iA denotes the matrix obtained by removing columns on o o1, , ,2 " on of H,

and

(

diag( )A

)

j denotes the jth diagonal element of matrix A. (2) Maximum-Likelihood (ML) Detection

It is well known that the optimal detection scheme of the MIMO systems is the ML detection. The ML detection searches all possible combinations of transmitted symbols via the following criterion:

2 ML arg min , S ∈ = − x x y Hx  (2.32)

where S = Ο denotes the set of all possible transmitted symbol vectors and Ο is N the modulation symbol alphabet. Note that S = ΟN so that the computational complexity grows exponentially with N . Therefore, it is difficult to be implemented at the receiver in practice which is the main drawback of this method.

2.6 Sphere Decoding Algorithm (SDA)

The sphere decoding algorithm (SDA) [9-12] achieves ML performance with reduced complexity. Hence, it has recently received considerable attentions as an effective detection scheme for MIMO systems. The basic idea of SDA is to restrict the search region of the optimal solution to a smaller subset. Typically, the search region is constrained to the interior of a hyper-sphere of radius d centered at the received

(30)

signal vector y as

2

2 .

d ≥ yHx (2.33)

The geometrical interpretation of the concept of SDA is shown in Figure 2-7. Generally, the complex signal will be transformed into real signal model by

( ) ( ) ( ) ( ) ( ) ( ) i ( ) ( ) ( ) ( ) Re Re Re , , , Im Im Im Re Im , Im Re ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ = = = ⎢ ⎥ ⎢ ⎣ ⎦ ⎡ − ⎤ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎣ ⎦ y x n y x n x n y H H H H H    (2.34)

where Re( )⋅ and Im( )⋅ are the real and imaginary parts of its argument. Hence, the real-valued signal is

,

= +

y Hx n

   (2.35)

where y∈\21, x∈ Λ ⊂]2N×1, n ∈\2M×1, and H ∈\2M×2N . Performing QR-decomposition of iH , we have i =i1 i2⎡ ⎤⎢ ⎥⎢ ⎥i ,⎦ ⎢ ⎥ ⎣ ⎦ R H Q Q 0 (2.36)

where R is a 2i N×2N upper triangular matrix, 0 is a (2 MNN zero matrix, and iQ and i1 Q are 22 M×2N and 2M×2(MN) unitary matrices respectively.

Figure 2-7: Geometrical interpretation of the SDA Hx

y d

(31)

Substituting (2.36) into (2.33), we have

( )

d' 2 y'Rxi 2, (2.37) where ' i 1 H = y Q y   and

( )

' 2 2 i 2 2 H

d =d − Q y . Letting R = ⎣ ⎦r with i j,r >i i, 0 and

, 0

i j

r = for i> , (2.37) can be expended as j

( )

i

(

) (

)

(

) (

)

2 2 ' ' 2 2 2 , 1 2 2 ' ' 2 ,2 2 2 -1,2 2 2 -1,2 -1 2 -1 2 2 -1 2 2 '' '' 2 ,2 2 2 -1,2 -1 2 -1 2 2 -1 , N N i j j i i j i N N N N N N N N N N N N N N N N N N N d y r x y r x y r x r x y r x y r x = = ≥ − ⎛ ⎞⎟ = ⎜ ⎟⎟ ⎜⎝ ⎠ = − + − − + = − + − +

y Rx             "       " (2.38) where 2 ' '' , 1 . N i i j i i j i y y r x = + = −

    (2.39)

The iterative search for the candidates x2N,x2 -1N , , ,… x x  creates a search tree as 2 1 shown in Figure 2-8.

Figure 2-8: A tree search structure of the SDA (N =2)

4 x 3 x 2 x 1 x Layer 4 3 2 1

(32)

2.6.1 Fincke and Pohst SDA

In the Fincke and Pohst SDA (FP-SDA) [9], [10], the radius is chosen to be a scaled variance of the noise

2 2,

d =α σN (2.40)

where the scalar α is chosen in such a way that the a lattice point iHx lies in the sphere with probability P s

( ) 1 0 , N s e d P N α λ λ λ − − = Γ

(2.41)

where the integrand is the pdf of the χ random variable with N degrees of 2

freedom, and P is set to a value closed to 1. If no lattice point is not found, we can s

increase P , adjust d , and then search again. For the (2N)th layer, the necessary s

condition for Hx  to lie inside the sphere is

( ) (

' 2 ''

)

2 2N 2 ,2N N 2N .

dy −r x (2.42)

Hence, the corresponding range of x is 2N

'' ' '' ' 2 2 2 2 ,2 2 ,2 , N N N N N N N y d y d x r r ⎤ ⎢ + ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎣ ⎦      (2.43)

where ⎡ ⎤⋅ and ⎣ ⎦⋅ denote the ceiling and the floor operations respectively. In general,

the necessary condition of the kth layer is

(

''

) ( )

' 2 2

(

''

) ( )

2 ' 2 , , 1 . N k k k k j j j j k j k y r x d y r x d = + − ≤ −

− =       (2.44)

Hence, the corresponding range of x leads to k

( )

k k

( ),

k LB x ≤x ≤UB x (2.45) where

( )

'' ' , k k k k k y d LB x r ⎤ ⎢ ⎥ = ⎢ ⎢ ⎥    (2.46)

(33)

( )

'' ' , k k k k k y d UB x r+ ⎥ ⎢ ⎥ = ⎢ ⎣ ⎦    (2.47)

The lattice points satisfying the above equation are searched to find the ML solution. In FP-SDA, the search for xk is performed in the order of

( )k , , 2 ,

( )

k

( )

k ,

( )

k

LB x LB x +δ LB x + δ "UB x , where δ is the minimum

distance between symbols. If no lattice point satisfying (2.45) is found for all k , the algorithm will set a larger search radius and restart the search again.

2.6.2 Schnorr and Euchner SDA

Schnorr and Euchner SDA (SE-SDA) [12] is a variant of the FP-SDA. In SE-SDA, the search for the candidate x of the kth layer is started from k

'' , ˆ k , k k k y x r ⎡ ⎤ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥ ⎣ ⎦   (2.48)

where [ ]⋅ denotes the rounding operator and the search order is ˆ

, , ,

k k k

x xδ x +δ

  ". Hence, the first solution found by the SE-SDA is exactly the Babai estimate [19] (zero-forcing solution) of the real-valued signal. Therefore, the search radius is set to be

,

SE ZF

d = y−Hx (2.49)

where x denotes the zero-forcing solution. Note that ZF Hx  is a lattice point; ZF hence it guarantees that there is at least one lattice point inside the sphere which does not have to restart the search again as that in the FP-SDA. Moreover, the searching symbols in each layer of this algorithm starts from the point that is the nearest one to

'' k

y for each k; hence, it is likely to find the optimal solution earlier than the FP-SDA

(34)

2.6.3 K-Best SDA

Both FP-SDA and SE-SDA achieve ML performance; however, their complexity in the low-SNR range is still too high. Besides, the decoding throughput is not stable and hence they are not suitable for real-time hardware implementation. The K-best SDA [13-16] is proposed for the MIMO detections with lower complexity and a stable throughput. First, define path weight P and branch weight k B of the kth layer as k

1 0, for 2 1 , , for 1 2 k k k k P k N P P+ B k N ⎧⎪ = = + ⎪⎪ ⎨⎪ = + ≤ ≤ ⎪⎪⎩     (2.50)

(

)

where Bk = yk'' −r x k k k, 2. (2.51) The main idea of the K-best SDA is to keep only K candidates which have the

smallest path weights in each layer which is shown in Figure 2-9. The steps of the

K-best SDA [13] are summarized as follows:

Step 1. Calculate C = y−HxZF 2 Step 2.

(a). Set k =2N , T2N =C. For each symbol in the constellation, calculate:

2N 2N. D =T − B (2.52) 2 1 , if 0 . 0 , otherwise N D D T = ⎨⎧⎪⎪ > ⎪⎪⎩  (2.53)

(b). Choose those symbols which have the K largest positive T2N1 values. Step 3.

(a) k = − k 1

(b) For each survival partial symbol vector from the previous layer; for each symbol in the constellation, calculate:

.

k k

(35)

1 , if 0 . 0 , otherwise k D D T = ⎨⎧⎪⎪ > ⎪⎪⎩  (2.55)

(c) Choose those symbols which have the K largest positive Tk1 values. (d) If (k =1)

The solution is the symbol vector with the largest T . 0

else

Go back to step 3(a)

Figure 2-9: The concept of the K-best SDA

2.6 Summary

In this chapter, we give a review of the MIMO communication systems. Exploiting multi-path scattering, MIMO systems deliver significant performance enhancements in terms of data rate and link quality. Spatial diversity is one of the MIMO techniques which mitigates fading and is realized by providing the receiver with multiple copies of the transmitted signal in space or time. MIMO systems offer a linear increase in data rate through spatial multiplexing by transmitting multiple and independent data streams without requiring additional bandwidth or transmit power.

Layer 2N 2N-1 2N-2 ︰ : Survival node : Dropped node 4 K =

(36)

The detection of MIMO signals can be classified into two types: linear detection and non-linear detection. Linear detection schemes such as ZF or MMSE are simple but their performances are poor. The optimal detection scheme is the ML detection. However, the computational complexity grows exponentially with the number of transmit antennas. The sphere decoding algorithm achieves the ML performance with reduced complexity. In this chapter, we introduce several kinds of the sphere decoding algorithms for the trade-off between performance and the computational complexity.

(37)

Chapter 3

Proposed Complex K-Best Sphere

Decoding Algorithm

In Chapter 2, we introduce the K-best SDA which is a suitable solution for hardware implementation; however, the conventional K-best SDA has some disadvantages. First, the complex-valued signal should be converted into real-valued signal which increases the search layers. Besides, performing a sorting algorithm to find K nodes which have the smallest path weights in each layer causes a large amount of memory access. Moreover, to achieve a near-ML performance, the value of

K should be chosen sufficiently large, and this increases the computational

complexity.

In this chapter, we introduce the proposed complex K-best SDA which requires a lower complexity and achieves a near-ML performance with smaller K than the conventional K-best SDA. The details of the proposed algorithm will be introduced through Section 3.1 to Section 3.5. The simulation results will be provided in Section 3.6 to show that the proposed algorithm works better than the conventional K-best SDA.

3.1 Complex K-Best SDA

The complex K-best SDA is similar to the conventional K-best SDA. First, performing complex QR-decomposition to the channel matrix H , we obtain

(38)

1 2 ⎡ ⎤ ⎡ ⎤ ⎢ ⎥ = ⎢ ⎥ ⎢ ⎥⎦ ⎢ ⎥ ⎣ ⎦ R H Q Q 0 (3.1)

where Q1 ∈^M N× and Q2 ∈^M×(M N− ) are unitary matrices, R is an

N×N upper triangular matrix and 0 is an (MNN zero matrix. Substituting (3.1) into (2.33), we have

( )

' 2 ' 2 dyRx (3.2) where y' =Q y and 1H

( )

2 2 ' 2 2 H

d =d − Q y . In this thesis, we choose ZF

d = yHx and x denotes the zero-forcing solution. The right-hand-side of ZF (3.2) can be expanded as

( )

' 2 ' 2 2 ' , 1 2 2 ' ' , -1 -1, -1, -1 -1 2 2 '' '' , -1 -1, -1 -1 , N N i i j j i j i N N N N N N N N N N N N N N N N N N N d y r x y r x y r x r x y r x y r x = = ≥ − = − = − + − − + = − + − +

y Rx " " (3.3) where '' ' , 1 N i i i j j j i y y r x = +

= −

. We define the path weight P and the branch weight k

k B of the kth layer as 1 0, for 1 , for 1 k k k k P k N P P + B k N ⎧ = = + ⎪⎪ ⎨⎪ = + ≤ ≤ ⎪⎩ (3.4) 2 '' , k k k k k B = yr x (3.5)

For the ith layer, the complex K-best SDA keeps K survival nodes with the minimum i

P s. Next, for the (i+1)th layer, the algorithm finds all possible nodes which are

extended from the previous K survival nodes at the ith layer and then again keeps K survival nodes with the minimum Pi+1s. The procedures are recursively executed and stoped at the 1st layer. The solution is the symbol vector with the minimum P . We 1

(39)

summarize the steps of the complex K-best SDA as follows. Step 1. Calculate y', d'

Step 2.

(a). Set k =N . For each symbol in the complex-domain constellation, calculate: 1 , N N N P =P + +B (3.6)

( )

( )

2 ' 2 ' , if . -1, if N N N N P P d S P d ⎧⎪ ⎪⎪⎪ = ⎨ ⎪⎪ > ⎪⎪⎩ (3.7)

(b). Choose those symbols which have the K smallest non-negative S s. N

Step 3.

(a). k ← − k 1

(b). For each survival partial symbol vector from the previous layer; for each symbol in the complex-domain constellation, calculate:

1 , k k k P =S + +B (3.8)

( )

( )

2 ' 2 ' , if . -1, if k k k k P P d S P d ⎧⎪ ⎪⎪⎪ = ⎨ ⎪⎪ > ⎪⎪⎩ (3.9)

(c). Choose those symbols which have the K smallest non-negative S s. k

Step 4.

If 1k =

The solution is the symbol vector with positive and the smallest S . 1

Else

(40)

3.2 Efficient Sorting Strategy

The main idea of the K-best SDA is to keep only K survival nodes in each layer. The conventional K-best SDA has to sort among all possible nodes in each layer to find K survival nodes which is shown in Figure 3-1. Note that the number inside the circle denotes the path weight of the node. Generally, the sorting algorithm applied in the K-best SDA is the bubble sort algorithm [13], [20]. When the size of the symbol alphabet of the transmitted symbol or the value of K is large, using bubble sort to sort among all possible nodes will cause a large amount of memory access.

Figure 3-1: Sorting of the conventional K-best SDA Layer i + 1 i : 12 15 19 21 23 26 29 13 14 24 17 25 30 16 20 28 26 31 32 27 35 22 33 31 26 37 30 39 34 42 6 K = Layer i + 1 i : 12 15 19 21 23 26 29 13 14 24 17 25 30 16 20 28 26 31 32 27 35 22 33 31 26 37 30 39 34 42 6 K =

Apply sorting algorithm

(41)

In the proposed method, the child nodes of each parent node in the ith layer are first sorted in an ascending order according to their path weights. We propose an efficient method to obtain the sorted child nodes sequence of each parent node which does not require any complexity in sorting. The details of constructing the sorted child node sequences will be introduced in the next section. Since the child nodes of each parent node are already sorted, the candidate nodes in the ith layer are automatically divided into K sorted groups which is shown in Figure 3-2.

Figure 3-2: K sorted groups of the proposed method

When there are several sorted groups, it is efficient to apply the merge algorithm [20] to obtain the sorted group containing all elements. The merge algorithm is one of the algorithms that run sequentially over multiple sorted groups. The general merge algorithm has a set of pointers

{

p p1, , ,2pn

}

that point to the positions in a set of the sorted groups

{

G G1, 2, ,…Gn

}

. Initially they point to the first item in each group. The merge algorithm is described as follows:

Step 1. Extract those elements which

{

p p1, , ,2 … pn

}

point to in their respective groups.

Step 2. Find out which element of those pointers point to with the minimum (or maximum) value. Layer i + 1 i : 12 15 19 21 23 26 13 14 24 29 16 17 25 30 20 26 28 31 22 27 32 35 26 31 33 37 30 34 39 42 6 K =

(42)

Step 3. Advance one of those pointers to the next element in its group. Step 4.

If any of

{

p p1, , ,2 … pn

}

still points to data inside of

{

G G1, 2, ,…Gn

}

Go back to Step 1.

Else

The elements are all merged; stop the merge algorithm.

Figure 3-3 shows an example of the merge algorithm applied to two sorted groups.

Figure 3-3: An example of the merge algorithm Step 1 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 Step 2 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 14 Step 3 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 14 15 Step 4 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 14 15 16 Step 5 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 14 15 16 17 Step 6 1 G 13 14 17 1 p 2 G 15 16 2 p Merged group: 13 14 15 16 17 Done!

(43)

To reduce the size of the storage memory, we repeatedly apply the merge algorithm which deals with two sorted groups at a time. The steps of the proposed sorting strategy of the ith layer are described as follows:

Step 1.

(a). k ← 2. Find the groups of the sorted child nodes of the (k-1)th and the kth parent nodes.

(b). Apply the merge algorithm to the two sorted groups to find K nodes with the minimum path weights.

Step 2.

1

k ← +k . Step 3.

If Pik+1>Pimax

The K survival nodes of this layer are found. Else

(i). Find the sorted child nodes group of the kth parent node.

(ii). Apply the merge algorithm to the current survival group and the sorted child nodes group of the kth parent node to find K nodes with the minimum path weights.

(iii). Go back to Step 2.

k i

P and Pimax denote the path weight of the kth parent node in the ith layer and the maximum path weight of current survival node respectively. Figure 3-4 shows an example of the proposed method. Note that in the proposed method, only a small part of the candidate nodes have to be merged; hence, it significantly reduces the sorting complexity.

(44)

Figure 3-4: An example of the proposed sorting method Layer i + 1 i 12 15 16 21 13 14 23 25 16 19 22 27 4 K = : Merge operation Iteration 1 Layer i + 1 i 16 21 13 14 16 19 4 K = : Merge operation Iteration 2 17 21 23 24 12 15 Layer i + 1 i 16 21 13 14 16 17 4 K = Iteration 3 12 15 21>17 → Stop!

(45)

3.3 Efficient Complex Domain Search Method

In each layer, searching for the child nodes of each parent node has to satisfy the following constraint: 2 2, i i i sxC (3.10) where si =y ri'' i i, and 2 ,2

( )

' 2 '' , 2 1 N i i i j j j j j i C rd y r x = + ⎡ ⎤ ⎢ ⎥ = ⋅ − − ⎢ ⎥ ⎣

⎦ . We assume the

modulation scheme of the transmitted symbols is QAM. The geometrical interpretation of (3.10) is that finding all possible symbols inside the circle centered at

i

s with radius C which is shown in Figure 3-5. i

-3 -1 1 3 5 -1 1 3 5 7 In-Phase Quadr at u re

Figure 3-5: Geometrical interpretation of the search constraint

To search the symbols efficiently, it is useful to construct the table of the symbol sequences within a given region [21], [22]. In the proposed method, we construct the table of the sequences of the 11 nearest constellation symbols for those points bounded by {0, 1, , 1j +j}. For example si =0.7+0.2j, the sequence of the nearest 11 symbols in an ascending order according to their distances from s is {35, i

36, 27, 28, 43, 44, 34, 37, 26, 29, 42} which is shown in Figure 3-6. xi

s i

(46)

-3 -1 1 3 -3 -1 1 3 Qu ad ra tu re In-Phase QAM Constellation 18 19 20 21 26 27 28 29 34 35 36 37 42 43 44 45

Figure 3-6: An example of the nearest 11 points from the search center s i

For those points having the same symbol sequence, we will classify them into the same search group and share the same symbol sequence. Figure 3-7 shows the boundaries of the search groups and the corresponding symbol sequences are listed in Table 3-1. 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 In-phase Q u a d ra tu re Search Groups

Figure 3-7: Boundaries of the search groups 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11

(47)

Table 3-1: List of candidate sequences Group ID Candidate Sequence

01 35→27→36→28→34→26→43→19→44→20→37 02 35→27→36→28→34→26→43→19→44→20→42 03 35→27→36→28→34→26→43→19→44→42→20 04 35→36→27→28→43→34→44→26→37→19→29 05 35→27→36→28→34→43→26→44→19→37→20 06 35→27→36→28→34→26→43→44→19→20→37 07 35→27→36→34→28→26→43→19→44→42→20 08 35→36→27→28→43→44→34→26→37→29→19 09 35→36→27→28→43→44→34→37→26→29→19 10 35→27→36→28→34→26→43→44→19→20→42 11 35→27→36→28→34→26→43→44→19→42→20 12 35→27→36→28→34→43→26→44→19→37→42 13 35→27→36→28→34→43→26→44→19→42→37 14 35→27→36→34→28→26→43→44→19→42→20 15 35→27→36→34→28→26→43→44→42→19→20 16 35→36→27→28→43→34→44→26→37→19→42 17 35→27→36→28→34→43→26→44→42→19→37 18 35→27→36→34→28→43→26→44→42→19→37 19 35→36→27→28→43→34→44→26→37→42→19 20 35→27→36→34→43→28→26→44→42→19→37 21 35→36→27→28→43→34→44→26→42→37→19 22 35→36→27→28→43→44→34→26→37→29→42 23 35→36→27→28→43→44→34→26→37→42→29

(48)

Group ID Candidate Sequence 24 35→36→27→28→43→44→34→37→26→29→42 25 35→36→27→43→28→34→44→26→42→37→19 26 35→36→27→43→34→28→44→26→42→37→19 27 35→36→27→28→43→44→34→37→26→42→29 28 35→36→27→43→28→44→34→26→37→42→29 29 35→36→27→43→28→44→34→26→42→37→29 30 35→36→27→43→28→44→34→37→26→42→29

Due to the symmetry property of the QAM constellation shown in Figure 3-8, those points lying in the region bounded by {1+j, 1−j, − +1 j, − −1 j} in quadrant II, III and IV can use the same table of quadrant I by the following transformation:

( )

( )

(

)

( )

( )

(

)

( )

( )

( )

( )

( )

( )

(

)

( )

( )

( )

( )

( )

( )

(

)

( )

( )

( )

( )

swap if and else if and else if and Re , Im Re 0 Im 0 Re Re Im Im Re 0 Im 0 Re Re Im Im Re 0 Im 0 Re Re Im Im i i i i i i i i i i i i i i i i i i i i s s s s s s s s s s s s s s s s s s s s ≥ < ⎧ ⎪⎪⎪ ⎨⎪ ← − ⎪⎪⎩ < < ⎧ ← − ⎪⎪⎪ ⎨⎪ ← − ⎪⎪⎩ < ≥ ⎧ ← − ⎪⎪⎪ ⎨⎪ ⎪⎪⎩       (3.11)

We first use the transformed search center s to find the nearest 11 candidate i

symbols by looking up the table of the symbol sequences. When the candidate symbol i

(49)

( )

( )

(

)

( )

( )

(

)

( )

( )

( )

( )

( )

( )

(

)

( )

( )

( )

( )

( )

( )

(

)

( )

( )

( )

( )

swap if and else if and else if and Re , Im Re 0 Im 0 Re Re Im Im Re 0 Im 0 Re Re Im Im Re 0 Im 0 Re Re Im Im i i i i i i i i i i i i i i i i i i i i x x s s x x x x s s x x x x s s x x x x ≥ < ⎧ ← − ⎪⎪⎪ ⎨⎪ ⎪⎪⎩ < < ⎧ ← − ⎪⎪⎪ ⎨⎪ ← − ⎪⎪⎩ < ≥ ⎧ ⎪⎪⎪ ⎨⎪ ← − ⎪⎪⎩ (3.12) -1.5 -1 -0.5 0 0.5 1 1.5 -1.5 -1 -0.5 0 0.5 1 1.5 In-Phase Quadr at ure

Figure 3-8: Symmetry property of the QAM constellation

For those search centers lying outside the region bounded by {1+j, 1-j, -1+j, -1-j}, we can first round them into the bounded region and then use the transformation relationship described above to find the relative nearest constellation symbols. Then the nearest constellation symbols are obtained by adding the coordinate offsets to the coordinates of the relative nearest constellation points which

Quadrant I

Quadrant II

Quadrant IV Quadrant III

數據

Figure 2-2: Transmitter block of the Alamouti scheme
Figure 2-3: An illustration of a spatial multiplexing system  (1) Diagonal Bell Laboratories Layered Space-Time (D-BLAST)
Figure 2-5: Encoding procedure of the V-BLAST scheme  ( N = 3 )EnEnccooddeerr β  EnEnccooddeerr γ  EnEnccooddeerr α1 :N  DEMUX Input bits EnEnccooddeerr βEnEnccooddeerr γEnEnccooddeerr α(D(Deeccooddiinngg)) 000333111444222555000αβγαβγαβγαβγαβγαβγ⎡⎤⎢⎥⎢⎥= ⎢⎥
Figure 2-6: Overview of MIMO detection methods
+7

參考文獻

相關文件

Wang, Solving pseudomonotone variational inequalities and pseudocon- vex optimization problems using the projection neural network, IEEE Transactions on Neural Networks 17

volume suppressed mass: (TeV) 2 /M P ∼ 10 −4 eV → mm range can be experimentally tested for any number of extra dimensions - Light U(1) gauge bosons: no derivative couplings. =&gt;

Define instead the imaginary.. potential, magnetic field, lattice…) Dirac-BdG Hamiltonian:. with small, and matrix

incapable to extract any quantities from QCD, nor to tackle the most interesting physics, namely, the spontaneously chiral symmetry breaking and the color confinement.. 

• Formation of massive primordial stars as origin of objects in the early universe. • Supernova explosions might be visible to the most

For R-K methods, the relationship between the number of (function) evaluations per step and the order of LTE is shown in the following

The difference resulted from the co- existence of two kinds of words in Buddhist scriptures a foreign words in which di- syllabic words are dominant, and most of them are the

(Another example of close harmony is the four-bar unaccompanied vocal introduction to “Paperback Writer”, a somewhat later Beatles song.) Overall, Lennon’s and McCartney’s