• 沒有找到結果。

結合錯誤更正與通道估計的系統化編碼設計及其最大概度解碼

N/A
N/A
Protected

Academic year: 2021

Share "結合錯誤更正與通道估計的系統化編碼設計及其最大概度解碼"

Copied!
87
0
0

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

全文

(1)

國 立 交 通 大 學

電信工程學系

博 士 論 文

結合錯誤更正與通道估計的系統化編碼設計及

其最大概度解碼

Systematic Code Design for Combined Channel

Estimation and Error Correction and Its

Maximum-Likelihood Decoding

研 究 生: 吳佳龍

指導教授: 陳伯寧博士

(2)
(3)

結合錯誤更正與通道估計的系統化編碼設計及

其最大概度解碼

Systematic Code Design for Combined Channel

Estimation and Error Correction and Its

Maximum-Likelihood Decoding

研究生:吳佳龍

Student:

Chia-Lung

Wu

指導教授:陳伯寧 博士 Advisor:

Dr.

Po-Ning

Chen

國立交通大學

電信工程學系

博士論文

A Dissertation

Submitted to Institute of Communication Engineering

College of Electrical and Computer Engineering

National Chiao Tung University

in Partial Fulfillment of the Requirements

for the Degree of Doctor of Philosophy

in

Communication Engineering

Hsinchu, Taiwan

(4)
(5)

結合錯誤更正與通道估計的系統化編碼設計及其最

大概度解碼

研究生: 吳佳龍 指導教授: 陳伯寧

國立交通大學電信工程學系

摘要

傳統通訊系統是使用獨立的訓練序列於接收機來估計通道參數,之後再使用該通道 參數來對錯誤更正碼進行解碼。在某些應用上,接收機通道估計值可能需要耗費極高的 計算複雜度來獲取,即便如此甚至可能還不能達到所需要的精準估計。因此,非同調系 統在此時就成為一個解決方案。基於上述的背景,本論文討論當傳送機與接收機兩者皆 對通道參數完全一無所知的環境下之通道編碼設計,我們也提出一個相對應的有效率解 碼演算法。 事實上,結合通道估計與錯誤更正的編碼方式最近受到相當的關注並且被視為對抗 多路徑衰減的重要技術之一。與一般具有個別獨立的通道估計與錯誤更正裝置相較,在 相同的碼率下,模擬證明結合考量通道估計的編碼設計可以顯著增進系統效能。然而, 這類編碼的實際使用有個主要障礙,由於目前設計都是經由電腦搜尋而來,以至於所獲 得的碼是不具結構,故亦無法有效率的解碼,導致複雜度最高的完全搜尋演算法成為唯 一的解碼方法,所以解碼複雜度將會隨著碼的增長而巨幅增加。在本論文中,我們提出 一個系統化的建碼方法來設計具有明確結構的結合通道估計與錯誤更正的編碼,用於多 輸入多輸出通道的延伸設計也將會被討論。模擬顯示我們所提出的編碼與電腦搜尋所獲 得最佳碼兩者效能幾乎不分軒輊。再者,基於系統化建碼所具備的結構,我們可以推導

(6)

出具有遞迴關係的最大概度解碼量度,進而可以使用以碼樹為基礎的循序解碼演算法來 做最大概度解碼,因此可以避免使用完全搜尋解碼而大幅降低解碼複雜度。

(7)

Systematic Code Design for Combined Channel

Estimation and Error Correction and Its

Maximum-Likelihood Decoding

Student: Chia-Lung Wu Advisor: Po-Ning Chen

Institute of Communications Engineering

National Chiao-Tung University

Abstract

A traditional communication system uses separate training sequence for the estimation of channel state information (CSI) at the receiver. This channel estimation will then be used as a base for error correction through channel codes. In applications that channel estimation at the receiver is either of infeasibly high complexity or statistically impossible, noncoherent system design apparently becomes the due selection. At this background, we study the coding scheme that can be applied in an environment that the channel coefficients are completely unknown to both the transmitters and receivers. We subsequently investigate efficient decoding algorithms for our proposed codes.

In fact, the coding technique that combines channel estimation and error correction has received attention recently, and has been regarded as a promising approach to counter the effects of multi-path fading. It has been shown by simulation that a proper code design that jointly considers channel estimation can improve the system performance subject to a fixed code rate as compared to a conventional system which performs channel estimation and error correction separately. Nevertheless, the major obstacle that prevents the practice of such

(8)

coding technique is that the existing codes are mostly searched by computers, and subsequently exhibit no apparent structure for efficient decoding. Hence, the operation-intensive exhaustive search becomes the only decoding option, and the decoding complexity increases dramatically with codeword length. In this dissertation, a systematic construction is derived for a class of structured codes that support joint channel estimation and error correction. The extension designs that take into consideration the varying characteristic of channels and multiple-input multiple-output channels are also discussed. Simulations show that our codes have comparable performance to the best simulated-annealing-based computer-searched codes. Moreover, the systematically constructed codes can now be maximum-likelihoodly decoded with respect to the unknown-channel criterion in terms of a newly derived recursive metric for use by the priority-first search decoding algorithm. Thus, the decoding complexity is significantly reduced as compared with that of an exhaustive decoder.

(9)

Acknowledgements

I have been extremely fortunate to have had Prof. Po-Ning Chen as my supervisor during my graduate studies. His enthusiasm for research and dedication to both my professional and personal developments are truly inspiring. It has been a great honor to be advised by Prof. Yunghsiang S. Han during the joint meeting between our lab and his lab. I have benefited enormously from his comments and suggestions on most of the chapters in this thesis. I sincerely thank them for their great guidance and continuous support throughout my graduate studies at National Chiao-Tung University.

I also thank my groupmates for their support and assistance throughout my time in Network Technology Laboratory. Special thanks go to Prof. Stefan Moser and Mr. Daniel Greenhoe for helping me to revise my paper submitted to IEEE Transaction Information Theory.

I would like to thank Prof. M. Skoglund, Dr. J. Giese and Prof. S. Parkvall of the Royal Institute of Technology (KTH), Stockholm, Sweden, for kindly providing us their codes for further study in the preparation of this disseration. My special thanks go to Prof. Skoglund for the opportunity to visit his research group in 2008. Financial support of National Science Council of Taiwan is gratefully acknowledged.

Last but not least, I would like to dedicate this thesis to my parents and family for their love, support and encouragement.

(10)

Contents

Chinese Abstract i

English Abstract iii

Acknowledgements v

List of Tables ix

List of Figures xii

1 Introduction 1 1.1 Overview . . . 1 1.2 Contributions . . . 3 1.3 Acronyms . . . 4 1.4 Notations . . . 5 2 Technical Background 7 2.1 Joint Maximum-Likelihood Sequence and Channel Estimation . . . 7

2.2 The Maximum-Likelihood Priority-First Search Decoding Algorithm . . . 10 3 Code Designs for Frequency-Selective Block Fading Channels 14

(11)

3.1 System Model and Maximum-Likelihood Decoding Criterion . . . 16

3.2 Code Construction . . . 17

3.2.1 Code Constraint that Maximizes the Average SNR Regardless of Chan-nel Statistics . . . 17

3.2.2 Equivalent System Model for Joint Channel and Data Estimation . . 19

3.2.3 Exemplified Code Design Algorithm for Channels of Memory Order One 21 3.3 Maximum-Likelihood Metrics For Priority-First Search Decoding . . . 23

3.3.1 Recursive Maximum-Likelihood Metric g . . . 23

3.3.2 Heuristic Function ϕ1 . . . 25

3.3.3 Heuristic Function ϕ2 . . . 26

3.4 Simulation Results . . . 27

3.5 Summary . . . 34

4 Code Designs for Frequency-Selective Varying Fading Channels 35 4.1 System Model . . . 36

4.2 Code Design . . . 37

4.3 Optimal Priority-First Search Decoding . . . 39

4.4 Simulation Results . . . 44

4.5 Summary . . . 45

5 Code Designs for Frequency-Nonselective Varying Fading Channels 46 5.1 System Model . . . 48

5.2 Code Design . . . 48

(12)

5.4 Summary . . . 50

6 A Systematic Space-Time Code Design 52 6.1 System Model . . . 53

6.2 Code Design . . . 54

6.2.1 Criteria for Good Codes . . . 54

6.2.2 The Proposed Code Design . . . 56

6.3 Priority-First Search Decoding . . . 57

6.4 Simulation Results . . . 60

6.5 Summary . . . 62 7 Conclusion and Future Works 64

References 66

(13)

List of Tables

3.1 Average number of node expansions per information bit for the priority-first search decoding of the constructed half-rate codes of length 22, 26, and 30. . 33 3.2 The attained diversity levels of codes, which are least-square-approximated

based on WER performance curves within 8–15 dBs. . . 33 4.1 Average numbers of node expansions per information bit for the codes of

Single-28(Q=15) and Double-28(Q=15) using the priority-first search decod-ing guided by either evaluation function f1 or evaluation function f2 over the

(14)

List of Figures

2.1 An illustration of a JML receiver. . . 9 2.2 The code tree for a computer-searched PEP-minimum (4, 2) code with b1 fixed

as −1. . . 11 3.1 Equivalent system model for combined channel estimation and error

protec-tion codes. . . 19 3.2 The maximum-likelihood word error rates (WERs) of the computer-searched

rate code by simulated annealing in [30] (SA-22), the constructed half-rate code with double code trees (Double-22), and the constructed half-half-rate code with single code tree (Single-22). The codeword length is N = 22. . . . 28 3.3 The maximum-likelihood word error rates (WERs) of the computer-searched

code by simulated annealing (SA-N ) and the constructed half-rate code with double code trees (Double-N ). . . 28 3.4 The average numbers of node expansions per information bit for the

simulated-annealing-based computer-searched code in [30] by exhaustive decoding (EXH-SA-22), and the constructed single-tree Single-22) and double-tree (SEQ-Double-22) codes using the priority-first search decoding guided by either metric function f1 or metric function f2. . . 29

(15)

3.6 Word error rates (WERs) for the codes of Single-22, Double-22, Single-26, Double-26, Single-30 and Double-30. . . 32 3.7 Bit error rates (BERs) for the codes of Single-22, 22, Single-26,

Double-26, Single-30 and Double-30. . . 32 4.1 Word error rates (BERs) for the codes of Double-28, SA-14, Single-28(Q=15)

and Double-28(Q=15) over the quasi-static channel with Qchan= 15. . . 41

4.2 Bit error rates (BERs) for the codes of Double-28, SA-14, Single-28(Q=15) and Double-28(Q=15) over the quasi-static channel with Qchan= 15. . . 42

4.3 Word error rates (BERs) for the codes of Double-28, SA-14, Single-28(Q=15) and Double-28(Q=15) over the quasi-static channel with Qchan≥ L. . . 42

4.4 Bit error rates (BERs) for the codes of Double-28, SA-14, Single-28(Q=15) and Double-28(Q=15) over the quasi-static channel with Qchan≥ L. . . 43

5.1 Word error rates (WERs) for the constructed (36, 6) code and Xu’s three-times-repetitive (12, 6) code over flat fading channel with coefficients varying independently in every 12 symbols. . . 50 5.2 Word error rates (WERs) for the constructed (36, 6) code and Xu’s

three-times-repetitive (12, 6) code over flat fading channel with coefficients un-changed during the transmission of a codeword. . . 51 6.1 Comparison of word error rates (WERs) between the codes constructed in

Section 6.2.2 (Proposed-N) and the codes obtained from simulated anneal-ing search (SA-N). The codeword lengths are taken to be equal to N = 4, 6, 8, 10, 12 and 14. . . 61

(16)

6.2 Comparison of WERs among the codes constructed in Section 6.2.2 (Proposed-24) and the system using a (17,12) nonlinear code in combination with the Alamouti code and a 7-bit training sequence. The codeword length is equal to N = 24. . . 61 6.3 The decoding complexity of the priority-first search decoder (PFSD) for the

(17)

Chapter 1

Introduction

1.1

Overview

Currently, a typical receiver in a wireless communication system performs channel estimation and data estimation separately. The former task estimates channel characteristics based on a known training sequence or pilot, while the latter uses these characteristics to estimate the transmitted coded data.

Recent research results [7,12,29,30] have confirmed that better system performance can be obtained by jointly performing channel and data estimation, as compared to a typical system that performs these tasks separately. In 1994, Seshadri [29] proposed a blind maximum-likelihood sequence estimator (MLSE) that performs the two tasks simultaneously. Skoglund et al.[30] later provided a milestone evidence that a code design that jointly considers channel estimation and error correction is able to counter multi-path block fading more efficiently than the approach with a separate error-correcting code and channel estimation scheme. They applied the same idea to a multiple-input multiple-output (MIMO) system as described in a subsequent publication [13]. Related techniques developed for MIMO systems [1,2,16,24] also have substantiated that a joint design that combines channel estimation, channel coding and space-time transmission can improve the system performance over that of a separate design.

(18)

Specifically, by computer search, Skoglund et al. identified nonlinear codes that support joint channel estimation and error correction in a multi-path block fading channel. Through simulations, they found that a communication system using these nonlinear codes can out-perform a typical communication system with perfect channel estimation by 2 dB. Their results hint that a single, perhaps nonlinear, code may improve the transmission rate in a highly mobile environment in which traditional channel estimation becomes technically in-feasible. A similar idea was also proposed by [7], and the authors actually named such codes training codes.

One of the drawbacks of these joint estimation codes found by computer search is that they lack a systematic structure, and can therefore be decoded only by an operation-intensive exhaustive search. This naturally leads to the research query of how to construct an efficiently decodable code that supports joint channel estimation and error correction.

In this dissertation, this query was resolved firstly by discovering that regardless of the fading statistics, the codeword that maximizes the system signal-to-noise ratio (SNR) must be orthogonal to the delayed version of itself. We termed this property self-orthogonality. We secondly found that the code that consists of properly chosen self-orthogonal codewords has a performance comparable to that of the simulated-annealing-based computer-searched code. Because the maximum-likelihood metrics for self-orthogonal codewords can be equivalently transformed into a recursively formulated metric, it is finally shown that these structured codes can be maximum-likelihoodly decoded by the priority-first search algorithm [6, 17, 20, 27], resulting in a decoding complexity significantly smaller than that required by exhaustive decoding.

It is worth mentioning that although the codes selected by computer search in [13] and [30] target unknown channels, for which the channel coefficients are assumed constant within a given coding block, the evaluation of the pair-wise error probability (PEP) criterion does presume knowledge of the channel statistics. Even if the dependence of the code design

(19)

on channel statistics is relaxed in [7], the pairwise distance criterion proposed therein is still for computer search, and no systematic code design is resulted. The code constructed based on the algorithm we propose, however, is guaranteed to achieve an acceptable system SNR regardless of the statistics of the channel. This suggests that our systematically con-structed codes are also suitable in cases where channel blindness becomes a stringent system restriction.

1.2

Contributions

The main part of this dissertation is placed in Chapter 3. Extensions of the key idea in Chapter 3 will be presented in subsequent chapters. For clarity, the contributions of Chapter 3 are briefed as follows.

1. A code of comparable performance to the computer-searched code is constructed ac-cording to certain rules so that its code tree can be efficiently and systematically generated (Section 3.2).

2. Efficient recursive computation of the maximum-likelihood evaluation function f from the predecessor path to the successor paths is established (Section 3.3).

This part will appear in IEEE Transactions on Information Theory [36] and was presented in parts at the 2008 International Symposium on Information Theory and its Application [35]. In Chapter 4, with the availability of the above Items 1 and 2, the construction and maximum-likelihood decoding of codes with longer codeword length becomes possible, and hence, makes the assumption that the unknown channel coefficients are fixed during a long decoding block somewhat impractical especially for mobile transceivers. Extension of Items 1 and 2 to the unknown channels whose channel coefficients may change several times during one decoding block is thus proposed in this chapter.

(20)

All the previous results concern a frequency selective environment. When a frequency nonselective fading channel is considered, our simulations found that the original code designs in Chapters 3 and 4 do not perform as close as we have expected to the computer-searched best codes. Further investigation indicates that adjustment of interval of the original uniform codeword pick method can improve the performance. This result is summarized in Chapter 5, and has been accepted by the 20th Personal, Indoor and Mobile Radio Communications Symposium [37].

In Chapter 6, we extend our code design approach to an MIMO system, and propose a sys-tematic space-time code construction for joint channel estimation and error correction subject to two transmit antennas and 1/2 code rate. Similar to Chapter 3, its maximum-likelihood decoder that follows a priority-first search principle is also established. Our systematic code construction, together with a fairly low complexity optimal decoder, then allows one to work with longer codes with no sacrifice in performance. The results of this chapter has already been published in 2009 IEEE International Symposium on Information Theory [38].

In the end, we conclude our results, and propose some future work in Chapter 7.

1.3

Acronyms

The acronyms used in this dissertation are listed in the following. AWGN additive white Gaussian noise

BER bit error rate

CQI channel quality indicator CSI channel state information

GLRT generalized likelihood-ratio test

GSM global system for mobile communication MIMO multiple-input multiple-output

(21)

OFDM orthogonal frequency division multiplexing PEP pairwise error probabilities

PFSD priority-first search decoding PSK phase-shift keying

SNR signal-to-noise ratio TDD time-division duplex

UMTS universal mobile telecommunication system WER word error rate

1.4

Notations

Throughout the dissertation, the following notations are used. Symbol Meaning

v a vector (The following 13 notations are simple representative examples. Similar notations applies to other alphabets.)

vk the k-th component of a vector

kvk2 the norm of a vector

X a matrix

xk,` the element of a matrix in row k and column `

XT the matrix operations of Hermitian transpose XH the matrix operations of transpose

tr(X) the trace of a square matrix det|X| the determinant of a matrix

X⊕ Y the direct sum of X and Y, i.e., X⊕ Y = X

0 0 Y  X⊗ Y the Kronecker product of matrices X and Y X Y the Hadamard product of matrices X and Y

vec(X) the operation to transform a matrix into a vector. For an M × N matrix X, vec(X) is defined as vec(X) = [x1,1 . . . xM,1 x1,2 . . . xM,2 x1,N . . . xM,N]T.

IL the L× L identity matrix

m n



binomial coefficient, mn , m! (m−n)!n!

|c| the absolute value of a number c

|S| the cardinality of a set S, i.e., the number of members in S Below are some common identifiers, if not state otherwise.

(22)

Symbol Meaning

AT number of transmitter antennas

AR number of receiver antennas

N block length of a code, i.e., number of symbols in a codeword K number of bits in an information sequence to be encoded P number of channel paths or taps

Q number of symbol period within a coherent time of block fading channels L = N + P − 1 is the sum of a code word length plus one minimum guard

(23)

Chapter 2

Technical Background

For a better understanding, some background knowledge about our coding scheme is provided in this chapter. In short, joint maximum-likelihood (JML) sequence and channel estimation is introduced in Section 2.1. What follows is Section 2.2 that gives a short description of the code tree for the (N, K) code C over which the decoding search in Chapter 3 is performed.

2.1

Joint Maximum-Likelihood Sequence and Channel

Estimation

In this section, the basic knowledge about joint maximum-likelihood (JML) sequence and channel estimation, or so-called generalized likelihood ratio test (GLRT), is presented. More detail can be found in [3, 11, 13].

The single-input-single-output (SISO) time-discrete system model we consider in this dissertation can be described as

(24)

where B,            b1 0 · · · 0 ... b1 . .. ... bN ... ... 0 0 bN . .. b1 ... ... ... ... 0 0 · · · bN            L×P ,

is a L× P signaling matrix that emulates the convolution operation with channel coefficient h, and every non-zero entity of B is a bipolar symbol. Here, h is the P×1 channel coefficient vector and n is a L× 1 noise vector.

Under the condition that transmitted signal B is equally likely, the maximum-likelihood (ML) detector is

ˆ

B= arg max

B Pr(y|B)

Obviously, the ML decision requires the knowledge of probability of y given B. For the case that n is zero-mean Gaussian distributed with covariance matrix σ2I

L, and

that the receiver has perfect knowledge about h, we know that Pr(y|B, h) = 1

det|πσ2IL|e

−ky−Bhk22

Yet, since h is completely unknown to the receiver (and also the transmitter), the optimal decision maker at the receiver end can only rely on the joint maximum-likelihood (JML) detection:

(ˆB, ˆh) = arg max

B maxh Pr(y|B, h).

For a given transmitted signal B, channel coefficient h that maximizes Pr(y|B, h) can be obtained as

ˆ

h= arg max

h Pr(y|B, h) = (B

(25)

channel: channel estimation transmitter All possible transmitted sequences

The table of pseudo inverse matrices

of all possible transmitted sequences

JML receiver

data detection

Figure 2.1: An illustration of a JML receiver. Then, we can use the maximizer to detect the transmitted code word via

ˆ b = arg max B Pr(y|B, ˆh) = arg max B 1 det|πσ2I|e −ky−Bˆhk22 = arg min B ky − B(B HB)−1BHyk2 = arg min B ky − PByk 2, (2.1) where PB , B(BHB)−1BH.

It is obvious from the above equation that we do not need to calculate ˆh corresponding to each code word b when making the final decision. What is required in the decision rule is actually the pre-preparation of PB table corresponding to each code word b (or equivalently,

B). Nevertheless, an JML decision in (2.1) can be regarded as performing an implicit channel estimate ˆh upon the reception of y as shown in Fig. 2.1.

It is worth mentioning that the performance of the ML detector with perfectly known h and the JML detector with no knowledge on h have been analyzed in [3,11]. Specifically, the authors in [3] derived approximate formulas of PEP for both ML detection with known h and JML detection with unknown h at high SNR. Their results are cited here for reference. The approximate PEP of the ML detection with known h is

PrBˆ = B(j) B(i) transmitted  ≈ Ki,j

(26)

where Ki,j =           

det|B(i)HB(i)|

det|B(j)HB(j)| P −1 X k=0 2P − 1 − k P − 1  1 k!  lndet|B(j) HB(j)|

det|B(i)HB(i)| k , if det|B(i) HB(i)| det|B(j)HB(j)| ≤ 1 P X k=0 2P − 1 − k P − 1  1 k!  ln det|B(i) HB(i)| det|B(j)HB(j)| k , otherwise.

Here, the authors assume 00 = 1 for convenience. For JML detection with unknown h, its

approximate PEP is PrBˆ = B(j) B(i) transmitted  ≈ 2P − 1 P − 1 

det|Ch| det |B(i)H(I− PB(j))B(i)|

It can be seen that when det|B(i)HB(i)| = det |B(j)HB(j)|, the approximate PEP of

ML-with-known-h and JML detections are the same. Accordingly, both [3] and [11] concluded that the performances of the JML detection is asymptotically equivalent to the ML detection with known h.

We close this section by emphasizing that when P = 1, i.e., the channel is reduced to a flat fading channel, the JML is simplified to

ˆ

b = arg max

b ky

Hbk2. (2.2)

This criterion will be investigated further in Chapter 5.

2.2

The Maximum-Likelihood Priority-First Search

De-coding Algorithm

A code tree of an (N, K) binary code represents every codeword as a path on a binary tree as shown in Fig. 2.2. The code tree consists of (N + 1) levels. The single leftmost node at level zero is usually called the origin node. There are at most two branches leaving each node at each level. The 2K rightmost nodes at level N are called the terminal nodes.

Each branch on the code tree is labeled with the appropriate code bit bi. As a convention,

(27)

corresponding to the codeword. Since there is a one-to-one correspondence between the codeword and the code path of C, a codeword can be interchangeably referred to by its respective code path or the branch labels that the code path traverses. Similarly, for any node in the code tree, there exists a unique path traversing from the single original node to it; hence, a node can also be interchangeably indicated by the path (or the path labels) ending at it. We can then denote the path ending at a node at level ` by the sequence of branch labels [b1, b2, . . . , b`] it traverses. For convenience, we abbreviate [b1, b2, . . . , b`]T as

b(`), and will drop the subscript when ` = N . The successor paths of a path b(`) are those

whose first ` labels are exactly the same as b(`).

c s s c s c c s c c c c c c c c s s s s c c c c s s c c c s s level 0 1 2 3 4 b1= −1 b2= +1 b2= −1 b3= +1 b3= −1 b3= +1 b3= −1 b4= +1 b4= −1 b4= −1 b4= +1

Figure 2.2: The code tree for a computer-searched PEP-minimum (4, 2) code with b1 fixed

as −1.

The priority-first search algorithm (also known as the best-first search algorithm) is a common graph search algorithm that explores a graph by expanding the most promising path that is selected according to some criterion. Examples are Algorithm A∗ [27], Dijkstra’s

(28)

drawn from a list of candidates in a stack or a priority queue. One of the main distinctions among the family of priority-first search algorithms is the metric associated with paths on the search graph.1 By adopting different metrics, some algorithms guarantee optimal search

results, while some can only yield suboptimal ones. A typical priority-first search algorithm is exemplified by the following sequence of operations:

Step 1. Load the stack with the path that ends at the original node.

Step 2. Evaluate the metric values of the successor paths of the current top path in the stack. Then delete this top path from the stack.

Step 3. Insert the successor paths obtained in Step 2 into the stack such that the paths in the stack are ordered according to their ascending metric values.

Step 4. If the top path in the stack ends at a terminal node in the code tree, output the labels corresponding to the top path, and the algorithm stops; otherwise, go to Step 2.

Next, we give a sufficient condition under which the above priority-first search algorithm is guaranteed to locate the path with the smallest metric among all paths.

Lemma 1. If the metric f is nondecreasing along every path b(`) in the code tree, i.e.,

f b(`)



≤ min

b∈C : ˜b(`)=b(`)}f (˜b), (2.3)

then the priority-first search algorithm always yields the code path with the smallest metric value among all code paths of C.

Proof. Let b∗ be the first top path that reaches a terminal node (and hence, is the output code path of the priority-first search algorithm.) Then, Step 3 of the algorithm ensures that

1In the optimization literature, this metric is sometimes called evaluation function. Since we apply the

(29)

f (b∗) is no larger than the metric value of any path currently in the stack. Since condition (2.3) guarantees that the metric value of any other code path, which should be the offspring of some path b(`) currently existing in the stack, is no less than f (b(`)), we have

f (b∗)≤ f(b(`))≤ min {˜b∈C : ˜b(`)=b(`)}

f (˜b). Consequently, the lemma follows.

When defining a metric f , it is convenient to represent it as the sum of two components: f (b(`)), g(b(`)) + ϕ(b(`)).

The first component g is directly defined based on the maximum-likelihood metric such that arg min

b∈C g(b) = arg minb∈C ky − PByk 2.

After g is defined, the second component ϕ is designed to validate (2.3) with ϕ(b) = 0 for any b ∈ C. Then from f(b) = g(b) + ϕ(b) = g(b) for all b ∈ C, the desired maximum-likelihood priority-first search decoding algorithm is established. A typical interpretation of the so-called heuristic function ϕ is that it helps predict a future route from the end node of the current path to a terminal node [17]. Notably, the design of the heuristic function ϕ that validates condition (2.3) is not unique. Different designs may result in variations in computational complexity.

(30)

Chapter 3

Code Designs for Frequency-Selective

Block Fading Channels

In the literature, no systematic code constructions have been proposed for joint channel and data estimation in quasi-static fading channels. Efforts have mostly been invested in computer searches for codes that counter channel fading [7,12,25,26,30,32,40]. The decoding of such structureless computer-searched codes thus becomes an engineering challenge.

In 2003, Skoglund et al. [30] relied on simulated annealing to search for nonlinear binary block codes suitable for joint channel and data estimation in quasi-static fading channels. As optimization criterion, they used the sum of all pairwise error probabilities (PEP) under equal prior probabilities. Although the operating signal-to-noise ratio (SNR) for the code search was set at 10 dB, their simulation results demonstrated that their codes perform well under a wide range of SNRs. In addition, the mismatch in the relative powers of different channel coefficients, as well as in the channel Rice factors [33], has no big effect on the resulting performance either. Their results indicate that the nonlinear estimation codes can outperform a typical linear error correcting code operated with a perfect channel estimator. Later in 2005, Coskun and Chugg [7] replaced the PEP sum by a properly defined pairwise distance measure between two codewords, and proposed a suboptimal greedy algorithm to speed up the code search process. In 2007, Giese and Skoglund [13] re-applied their original idea to single and multiple-antenna systems, and used the asymptotic PEP and the generic

(31)

gradient-search algorithm, respectively, in place of the PEP and the simulated-annealing algorithm in [30] to reduce system complexity.

In [30], the authors point out that “an important topic for further research is to study how the decoding complexity of the proposed scheme can be decreased.” Moreover, they state that “one main issue is to investigate what kind of structure should be enforced on the code to allow for simplified decoding.” Motivated by these remarks, we take here a different approach for code design. Specifically, we establish a systematic code design constraint for joint channel and data estimation in quasi-static fading channels, and show that the codes constructed based on this constraint can maximize the system SNR regardless of the fading statistics. As it so happens that the computer-searched codes in [30] also satisfy this constraint, their insensitivity to SNR and channel mismatch now find a theoretical support. Although a recursive metric had been derived in [4] from joint maximum-likelihood de-coding metric, however, there is no efficient dede-coding algorithm that can exploit it due to structureless code design. Taking advantage of the systematic structure of our codes, we can then derive a recursive maximum-likelihood decoding metric that can be used in the priority-first search decoding algorithm. The decoding complexity is therefore significantly decreased in contrast to that of the exhaustive decoder required by the structureless computer-searched codes.

This chapter is organized as follows. Section 3.1 describes the system model. Section 3.2 establishes the self-orthogonal codeword-selection condition that optimizes the system SNR regardless of the fading statistics, and then uses it to construct codes for joint channel and data estimation. The recursive maximum-likelihood decoding metrics for the constructed codes are derived in Section 3.3. Simulations are summarized and discussed in Section 3.4. Section 3.5 summarizes the chapter.

(32)

3.1

System Model and Maximum-Likelihood Decoding

Criterion

Suppose a codeword b = [b1, . . . , bN]T of an (N, K) codeC is transmitted over a block fading

(specifically, quasi-static fading) channel of memory order P − 1, where each bj ∈ {−1, +1},

and N ≥ P . Denote the channel coefficients by h = [h1, . . . , hP]T, and assume that they are

constant within a coding block of length L = N + P− 1. By letting the codeword matrix be

B,            b1 0 · · · 0 ... b1 . .. ... bN ... ... 0 0 bN . .. b1 ... ... ... ... 0 0 · · · bN            L×P ,

the complex-valued received vector y is given by

y = Bh + n, (3.1) where n is zero-mean complex-Gaussian distributed with E[nnH] = σ2

nIL, and IL is the

L × L identity matrix. We then make the following assumptions: both transmitter and receiver know nothing about the channel coefficients h, but have knowledge of the multi-path parameter P . Also, there are adequate guard periods between consecutive encoding blocks such that zero interblock interference is guaranteed. Based on the system model in (3.1) and the above two assumptions, the least square estimate of the channel coefficients h for a given b (alternatively, B) equals ˆh= (BTB)−1BTy, and the joint maximum-likelihood

(ML) decision for the transmitted codeword becomes [4] ˆ b= arg min b∈C minh ky − Bhk 2 = arg min b∈C ky − Bˆhk 2 = arg min b∈C ky − PByk 2, (3.2)

where PB , B(BTB)−1BT. Note that the mapping from a codeword b to the corresponding

transformed codeword PBis not one-to-one unless b1 is fixed. For convenience, we will always

set b1 =−1 for the codes we construct.1

(33)

3.2

Code Construction

3.2.1

Code Constraint that Maximizes the Average SNR

Regard-less of Channel Statistics

From the system model in (3.1), it can be derived that the average SNR conditional on the input B satisfies E[kBhk2|B] E[knk2] = N Lσ2 n tr  E[hhH] 1 NB TB  . (3.3) Since both transmitter and receiver know nothing about the channel coefficients h, the average SNR can be as worse as

min

{h : tr(E[hhH

])=τ }

E[kBhk2|B]

E[knk2] ,

where τ is a certain (possibly unknown) power level on the channel coefficients h. We then found that such a worst-case SNR can be upper-bounded by a constant, i.e.,

min {h : tr(E[hhH ])=τ } E[kBhk2|B] E[knk2] ≤ E[kB˜hk2|B] E[knk2] =  N Lσ2 n  τ,

where the above inequality holds since an upper bound can be resulted by taking any h that satisfies tr(E[hhH]) = τ into E[kBhk2|B]/E[knk2], and here we take ˜hto be zero-mean

i.i.d. with tr(E[˜h˜hH]) = τ . It is thus straightforward from (3.3) that this constant SNR bound can be achieved even if the system is totally blind on channel coefficients h (as well as the power level τ ), when the codeword is designed to be self-orthogonal in the sense that

1 NB

TB= I

P. (3.4)

Condition (3.4) actually has an operational meaning. It ensures that every codeword is orthogonal to the shifted version of itself, and hence temporal diversity can be implic-itly realized even under completely no knowledge on channel statistics. We henceforth say that codewords constrained on (3.4) maximize the average SNR attainable regardless of the statistics of h [14].

(34)

Unfortunately, a codeword sequence satisfying (3.4) is only guaranteed to exist for P = 2 with N odd (and trivially, for P = 1). In some other cases, such as P = 3, one can only design codes to approximately satisfy (3.4). For example,

1 NB TB= 1 N   N ±1 0 ±1 N ±1 0 ±1 N   for N even, and 1 NB TB= 1 N   N 0 ±1 0 N 0 ±1 0 N   for N odd.

We therefore relax (3.4) and allow some off-diagonal entries in BTB to be either −1 or 1

whenever it is impossible to strictly satisfy (3.4). We will denote such a matrix as G. After the establishment of (3.4), we find that this particular structure of G can really be observed in the simulated-annealing-based computer-searched codes. Specifically, for 4 ≤ N ≤ 18 and N even, the best computer-searched half-rate codes that minimize the sum of PEPs under complex zero-mean Gaussian distributed h with E[hhH] = (1/2)IP and

P = 2 all satisfy the relation

BTB=  N ±1 ±1 N  . (3.5)

We have also obtained and examined the computer-searched code used in [30] for N = 22, and found as anticipated that every codeword satisfies (3.5).

We close this subsection by stating some existing results in the literature that correspond to condition (3.4). The authors in [8] suggest that for an optimal channel estimation, the training sequences b can be chosen such that BTB is proportional to I

P. Their observation

agrees with what we obtained in (3.4). Moreover, condition (3.4) also has been identified in [13] where the authors remark [13, pp. 1591] that a code sequence with a certain aperiodic autocorrelation property possibly could be exploited in future code design approaches. This is indeed one of the main research goals of this chapter.

(35)

n h - -6 - Outer product demodulator - Minimum Euclidean Distance Selector -Equivalent Channel b yyH b(yyˆ H)

Figure 3.1: Equivalent system model for combined channel estimation and error protection codes.

3.2.2

Equivalent System Model for Joint Channel and Data

Esti-mation

By noting that PB is idempotent and symmetric, and both tr(PB) and kvec(PB)k2 equal P ,

where vec(·) denotes the operation to transform a matrix into a vector, the joint ML decision in (3.2) can be reformulated as ˆ b = arg min b∈C(y− PBy) H(y − PBy) = arg min b∈C −tr(PByy H) (3.6) = arg min b∈C kvec(yy H)k2− vec(P

B)Tvec(yyH)− vec(yyH)Hvec(PB) +kvec(PB)k2

 = arg min

b∈C kvec(yy H)

− vec(PB)k2.

This implies that the ML decision can be obtained by finding the codeword PB whose

Eu-clidean distance to yyH is the smallest.

We therefore transform the original system in (3.1) to an equivalent system model that contains an outer product demodulator and a minimum Euclidean distance selector at the PB-domain as shown in Fig. 3.1. As the outer product demodulator can be viewed as a generalization of the square-law combining that is of popular use in non-coherent detection for both slow and fast fading [28], the above equivalent transformation suggests a potential application of combined channel estimate and error protection codes for the non-coherent system in which the fading is rapid enough to preclude a good estimate of the channel

(36)

coefficients. Further discussion on how to design codes for unknown fast-fading channels will be continued in subsequent chapters.

We can then bound the ML error probability by Pe≤ 1 2K 2K X i=1 2K X j=1 j6=i Pr kvec(yyH)− vec(PBj)k 2 < kvec(yyH)− vec(PBi)k 2 b i transmitted  , (3.7) where bi is the ith codeword of an (N, K) block code, and PBi denotes the equivalent ith

codeword in the PB-domain. By the self-orthogonal property, PB = B(BTB)−1BT = N1BBT.

The PEP-based upper bound in (3.7) then suggests that a good self-orthogonal code design should have an adequately large pairwise Euclidean distance

vec(BiBT

i )− vec(BjBTj)

2 (3.8)

between all codeword pairs Bi and Bj, where Bi is the equivalent ith codeword in the

B-domain. Based on this observation, we may infer under equal prior probabilities that a uniform draw of codewords satisfying BTB = N · I

P may asymptotically result in a good

code. This is conceptually equivalent to a uniform pick of codewords in a set of self-orthogonal binary sequences.

We recall that our initial research query is how to construct an efficiently decodable code that supports joint channel estimation and error correction. In order to achieve this goal for the priority-first search decoding algorithm, we need an efficient and systematic way to generate the successor paths of the top path. In particular, we would like to have a code tree that can be spanned in an on-the-fly or bit-by-bit fashion. The uniform pick principle then suggests that considering only the self-orthogonal sequences with the same prefix b(`−1), the ratio of the number of self-orthogonal codewords satisfying b` =−1 to the number of all

self-orthogonal sequences having the same b` must be made equal to the similar ratio for

(37)

expressed as |C(b1, b2, . . . , b`−1, b` = 1)| |A(b1, b2, . . . , b`−1, b` = 1|G)| ≈ |C(b1, b2, . . . , b`−1, b` =−1)| |A(b1, b2, . . . , b`−1, b` =−1|G)| , (3.9) where C(b(`)) is the set of all codewords whose first ` bits equal b1, b2, . . . , b`, and A(b(`)|G)

is the set of all binary sequences of length N , whose first ` bits equal b1, b2, . . . , b`, and whose

B-representation satisfies BTB = G. Accordingly, given the index i of the codeword, where 0≤ i ≤ 2K− 1, and given the previous ` − 1 bits b

1, b2, . . . , b`−1, whether the next code bit

b` is −1 or +1 can be determined conceptually by checking whether i is less than or larger

than P˜b1+˜b2·2+...+˜b`−1·2`−2<b1+b2·2+...+b`−1·2`−2|C(˜b(`−1)|G)| + |C(b(`−1), b` = −1|G)|. A specific

code design algorithm will be given in the next subsection.

3.2.3

Exemplified Code Design Algorithm for Channels of

Mem-ory Order One

In this subsection, we provide an exemplified code design algorithm based on the uniform pick principle for channels of memory order 1, namely, P = 2. The code design algorithm for channels with higher memory order can be similarly built.

For θ∈ {−1, 0, +1}, we define Gθ ,  N θ θ N  . Note that when BTB= G

0 (= N· I2) cannot be satisfied as aforementioned for N even, G−1

and G1 will be used instead to define the relaxed self-orthogonal codewords. In such case,

the uniform pick principle again suggests that half of the codewords should be uniformly drawn from binary sequences satisfying BTB = G

−1, and the other half of codewords are

selected according to BTB = G

1. The proposed codeword selection process is simply to

list all the sequences satisfying the desired self-orthogonal property in binary-alphabetical order, starting from zero, and uniformly pick the codewords from the ordered list in every ∆θ interval with

∆θ = |A(b1

=−1|Gθ)| − 1

(38)

where Θ ={0} for N odd, and Θ = {−1, 1} for N even. As a result, the selected codewords are those sequences with indices closest to b(i mod (2K/|Θ|)) · ∆

θc for 0 ≤ i ≤ 2K− 1. The

codeword mapping algorithm is summarized by the following list:

Step 1. Input the index i of the requested codeword in the (N, K) block code, where 0≤ i ≤ 2K− 1.

Step 2. Set Θ = {0} for N odd, and Θ = {−1, 1} for N even. Also, set θ = ((N + 1) mod 2)· (−1)d(i+1)/(2K

/|Θ|)e. Compute

θ according to (3.10). Initialize b1 =−1,

` = 1 and ρ = b(i mod (2K/|Θ|)) · ∆

θc. Let the minimum sequence index ρmin = 0.

Step 3. Execute ` = ` + 1, and compute γ`=|A(b(`−1), b` =−1|Gθ)|.

If ρ < ρmin+ γ`, then choose the next code bit b` =−1;

otherwise choose the next code bit b` = 1, and readjust ρmin = ρmin+ γ`.

Step 4. If ` = N , output the corresponding codeword b, and the algorithm stops; other-wise, go to Step 3.

In implementing the above algorithm, it is perhaps more convenient to calculate γ`

re-cursively2 such that the codeword mapping can be performed in an on-the-fly or bit-by-bit

systematic fashion with respect to the given codeword index i. This recursive nature also facilitates the priority-first decoding search at the receiver, since branches of the code tree will only be spanned when necessary.

2Initializing b

0 = 0, m0 = θ and γ1 =|A(b1|Gθ)|, and setting m`+1 = m`− b`b`+1 for 0 ≤ ` < N, we

obtain for P = 2 that if|m`−1+ b`−1| ≤ N − `,

γ`+1 = γ`· 1 2(N− `)·     (N − ` − m`−1)2− 1 N− ` + m`−1+ 1  · 1 {|m`−1+ 2| ≤ N − ` − 1} , for (b`−1, b`) = (−1, 1), (N− ` + m`−1+ 1− b`−1b`+ b`)· 1 {|m`−1− b`−1b`+ b`| ≤ N − ` − 1} , otherwise,

where 1{·} is the set indicator function. If however |m`−1+ b`−1| > N − `, then

γ`+1= ( 0, for (b`−1, b`)6= (−1, 1) or (b`−1, b`) = (−1, 1) and m`−16= −N + ` − 1  , 1, otherwise.

(39)

3.3

Maximum-Likelihood Metrics For Priority-First Search

Decoding

In this section, we will establish two different metric functions to be used by the priority-first search algorithm. The first metric is

f1(b(`)) = g(b(`)) + ϕ1(b(`)), (3.11)

where g(b(`)) is derived in Section 3.3.1, and ϕ1(b(`)) = 0 is the all-zero function (cf.

Sec-tion 3.3.2). The second metric is

f2(b(`)) = g(b(`)) + ϕ2(b(`)), (3.12)

with g(y) the same as in f1, and with ϕ2(b(`)) defined in Section 3.3.3. Both metrics will lead

to an ML decoding. The difference is that f1 can be computed on-the-fly, and will therefore

cause much less delay in the decoding. For the evaluation of f2, however, one needs to know

all received symbols, but the computational complexity of f2 is one order of magnitude less

than that of f1.

3.3.1

Recursive Maximum-Likelihood Metric

g

Let subcode Cθ be the set of codewords that satisfy BTB = Gθ, where θ takes value in Θ.

Hence,C = ∪θ∈ΘCθ, andCθ∩Cη =∅ whenever θ 6= η. Since a transmitted codeword belongs to

only one of the subcodes, to maintain individual stacks for priority-first codeword searching over each subcode will introduce considerable unnecessary decoding burden, especially for the subcodes that the transmitted codeword does not belong to. Hence, only one stack is maintained during the entire priority-first search, and the metric function values for different subcodes are compared and sorted in the same stack. The path to be expanded next is therefore the one whose metric function value is the smallest globally.

(40)

continue the derivation from (3.6) as follows: ˆ b = arg min b∈C X θ∈Θ  −tr(BDθBTyyH)  · 1{b ∈ Cθ} = arg min b∈C X θ∈Θ  −vec(Dθ)Tvec(BTyyHB)  · 1{b ∈ Cθ} = arg min b∈C X θ∈Θ " − P −1 X i=0 P −1 X j=0 δi,j(θ) L X m=1 L X n=1 bm+ibn+jymy∗n # · 1{b ∈ Cθ},

where for convenience, we put bj = 0 for j > N . After adjusting indices, the derivation can

be resumed as ˆ b= arg min b∈C 1 2 X θ∈Θ " N X m=1 N X n=1 −w(θ) m,nbmbn  # · 1{b ∈ Cθ}, (3.13) where wm,n(θ) = P −1 X i=0 P −1 X j=0 δ(θ)i,jRe{ym+iyn+j∗ }.

As the maximum-likelihood decision remains unchanged by adding a constant that is inde-pendent of the codeword b, we add a constant to make the decision criterion nonnegative:3

ˆ b = arg min b∈C ( N X m=1 max η∈Θ m−1 X n=1 |wm,n(η) | + 1 2|w (η) m,m| ! − 1 2 X θ∈Θ " N X m=1 N X n=1 w(θ)m,nbmbn # 1{b ∈ Cθ} ) = arg min b∈C X θ∈Θ " N X m=1 max η∈Θ m−1 X n=1 |wm,n(η) | + 1 2|w (η) m,m| ! − 1 2 N X m=1 N X n=1 wm,n(θ) bmbn # 1{b ∈ Cθ}.

It remains to prove that the metric of

N X m=1 max η∈Θ m−1X n=1 |w(η) m,n| + 1 2|w (η) m,m| ! −1 2 N X m=1 N X n=1 w(θ)m,nbmbn

can be computed recursively. To that aim, we define for every path b(`) over code tree θ

g(b(`)), ` X m=1 max η∈Θ m−1X n=1 |w(η) m,n| + 1 2|w (η) m,m| ! − 1 2 ` X m=1 ` X n=1 wm,n(θ) bmbn.

3Here, a nonnegative maximum-likelihood criterion makes possible the later definition of path metric

g(b(`)) to be nondecreasing along any path in the code tree. It can then be anticipated (cf. Section 3.3.2)

that letting the heuristic function be zero for all paths in the code tree suffices to result in a metric function satisfying the condition (2.3) in Lemma 1.

Note that the additive constant that makes the metric function nondecreasing along any path in the code tree can also be obtained by first defining g based on (3.13), and then determining its respective ϕ according to (2.3). Such an approach however complicates the determination of the heuristic function ϕ when we additionally require the metric function to be recursive-computable. The alternative approach that directly defines a recursive-computable g based on a nonnegative maximum-likelihood criterion is accordingly adopted in this work.

(41)

Then, by wm,n(θ) = wn,m(θ) for every 1≤ m, n ≤ N and θ ∈ Θ, we have for 1 ≤ ` ≤ N − 1, g(b(`+1)) = g(b(`)) + max η∈Θ ` X n=1 |w(η)`+1,n| + 1 2|w (η) `+1,`+1| ! − ` X n=1 w`+1,n(θ) b`+1bn− 1 2w (θ) `+1,`+1 = g(b(`)) + max η∈Θ α (η) `+1 − b`+1 P −1 X i=0 P −1 X j=0 δi,j(θ)Rey`+i+1· uj(b(`+1)) , where α(η)`+1 , ` X n=1 |w`+1,n(η) | + 1 2|w (η) `+1,`+1| (3.14) and for 0≤ j ≤ P − 1, uj(b(`+1)), ` X n=1 bnyn+j∗ + 1 2b`+1y ∗ `+j+1 = uj(b(`)) + 1 2 b`y ∗ `+j + b`+1y`+1+j∗  .

This shows that we can recursively compute g(b(`+1)) and{uj(b(`+1))}0≤j≤P −1 from the

pre-vious g(b(`)) and{uj(b(`))}j=0P −1 using y`+1, y`+2, . . . , y`+P and b`+1, and setting as initial

con-dition g(b(0)) = uj(b(0)) = b0 = 0 for 0≤ j ≤ P − 1.

A final remark in this discussion is that although the computational burden of α(η)` in (3.14) increases linearly with `, such a linearly increasing burden can be moderately compensated for by the fact that it is only necessary to compute α`(η) once for each ` and η, because it can be shared for all paths ending at level ` over the code tree η.

3.3.2

Heuristic Function

ϕ

1

We next derive the first heuristic function that validates (2.3). Taking the maximum-likelihood metric g into the sufficient condition in (2.3) yields

` X m=1 max η∈Θ α (η) m − 1 2 ` X m=1 ` X n=1 wm,n(θ) bmbn+ ϕ(b(`)) ≤ min {˜b∈C : ˜b(`)=b(`)} " N X m=1 max η∈Θ α (η) m − 1 2 N X m=1 N X n=1 w(θ)m,nbmbn+ ϕ(˜b) # .

(42)

Hence, in addition to ϕ(˜b) = 0, the heuristic function should satisfy ϕ(b(`)) ≤ N X m=`+1 max η∈Θ α (η) m − max {˜b∈C : ˜b(`)=b(`)} N X m=`+1 ˜bm ` X n=1 wm,n(θ) bn+ 1 2 N X m=`+1 N X n=`+1 wm,n(θ) ˜bm˜bn ! . (3.15) It is apparent that the all-zero function is the largest one that satisfies this inequality subject to no dependence on the future route and future receptions, i.e., {˜bm}m≥`+1 and

{w(θ)m,n}m≥`+1,n≥`+1. Hence, we choose ϕ1(b(`)) = 0.

Note that ϕ1 is trivially on-the-fly computable, and hence so is f1. In comparison with

the exhaustive-search decoding, decoding based on recursive priority-first search shows a significant decrease in computational complexity especially at medium-to-high SNRs.

3.3.3

Heuristic Function

ϕ

2

If we drop the requirement that the metric f must be independence of future receptions, we can further reduce the computational complexity. Upon reception of all y1, . . . , yL, the

heuristic function that satisfies (3.15) regardless of ˜b`+1,. . ., ˜bN can be increased to

ϕ2(b(`)) , N X m=`+1 max η∈Θ α (η) m − N X m=`+1 ` X n=1 wm,n(θ) bn − 1 2 N X m=`+1 N X n=`+1 w(θ)m,n = N X m=`+1 max η∈Θ α (η) m − N X m=`+1 vm(θ)(b(`)) − β`(θ), (3.16) where for 1 ≤ `, m ≤ N and θ ∈ Θ,

v(θ)m (b(`)), ` X n=1 wm,n(θ) bn = v(θ)m (b(`−1)) + b`w(θ)`,m and β`(θ) , N X m=`+1 m−1 X n=`+1 |wm,n(θ) | + 1 2|w (θ) m,m| ! = β`−1(θ) N X n=`+1 |w`,n(θ)| − 1 2|w (θ) `,`|

with initial conditions vm(θ)(b(0)) = b0 = 0, and β0(θ) =

PN m=1α

(θ)

m . Simulations show that

(43)

the number of path expansions during the decoding process up to one order of magnitude (cf. Table 3.1).

3.4

Simulation Results

In this section, we examine the performance of the codes proposed in Section 3.2. We also illustrate the decoding complexity of the maximum-likelihood priority-first search decoding algorithm presented in the previous section. For ease of comparison, the channel parame-ters used in our simulations follow those in [30], where h is zero-mean complex-Gaussian distributed with E[hhH] = (1/P )IP and P = 2. The average system SNR is thus given by

N Lσ2 n tr  E[hhH]1 NB TB  = N Lσ2 n tr 1 N PB TB  = N Lσ2 n , (3.17) since tr BTB= N P for all simulated codewords.4

Figure 3.2 illustrates the simulation results of three codes: the computer-searched half-rate code obtained by the simulated annealing algorithm in [30] (SA-22), the constructed double-tree code with half of the codewords satisfying BTB = G

−1 and the remaining half

satisfying BTB= G

1 (Double-22), and the constructed single-tree code whose codewords are

all selected from the candidate sequences satisfying BTB = G

−1 (Single-22). We observe

from Figure 3.2 that the Double-22 code performs almost the same as the SA-22 code. Actually, the simulations illustrated in Figure 3.3 provide evidence that the performance of the constructed double-tree half-rate codes is as good as the computer-searched half-rate codes for all N > 12. However, when N ≤ 12, the Double-N code performs slightly worse

4The authors in [30] directly define the channel SNR as 1/σ2

n. It is apparent that their definition is exactly

the limit of (3.17) as N approaches infinity.

Since it is assumed that an adequate guard period between two encoding blocks exists (so that there is no interference between two consecutive decoding blocks), the computation of the system SNR for finite N should be adjusted to account for this muting (but still part-of-the-decoding-block) guard period. For example, in comparison of the (6,3) and (20,10) codes over channels with memory order 1 (i.e., P = 2), one can easily observe that the former can only transmit 18 code bits in the time interval of 21 code bits, while the latter pushes out up to 20 code bits in the period of the same duration. Thus, under fixed code bit transmission power and fixed component noise power σ2

n, it is reasonable for the (20,10) code to result in a

(44)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 10−3 10−2 10−1 100 SNR (dB) WER Single−22 Double−22 SA−22

Figure 3.2: The maximum-likelihood word error rates (WERs) of the computer-searched half-rate code by simulated annealing in [30] (SA-22), the constructed half-rate code with double code trees (Double-22), and the constructed half-rate code with single code tree (Single-22). The codeword length is N = 22.

0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−8 SA−8 0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−10 SA−10 0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−12 SA−12 0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−14 SA−14 0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−16 SA−16 0 5 10 15 10−3 10−2 10−1 100 SNR (dB) WER Double−18 SA−18

Figure 3.3: The maximum-likelihood word error rates (WERs) of the computer-searched code by simulated annealing (SA-N ) and the constructed half-rate code with double code trees (Double-N ).

(45)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 100 101 102 103 104 SNR (dB)

Average number of node expansion per information bit

EXH−SA−22 SEQ−Double−22−f1 SEQ−Single−22−f1 SEQ−Double−22−f2 SEQ−Single−22−f2

Figure 3.4: The average numbers of node expansions per information bit for the simulated-annealing-based computer-searched code in [30] by exhaustive decoding (EXH-SA-22), and the constructed single-tree (SEQ-Single-22) and double-tree (SEQ-Double-22) codes using the priority-first search decoding guided by either metric function f1 or metric function f2.

than the SA-N code. This is because for N ≤ 12 the approximation in (3.9) can no longer be well maintained due to the restriction that |A(b(`)|G)| must be an integer.

In addition to the Double-22 code, Figure 3.2 also depicts simulation results of the Single-22 code. Since the pairwise codeword distance in the sense of (3.8) for the Single-Single-22 code is in general smaller than that of the Double-22 code, its performance has a 0.2 dB degradation compared with that of the Double-22 code. However, we will see in Figure 3.4 that the Single-22 code actually has the smallest decoding complexity among the three codes. This suggests that to select codewords uniformly from a single code tree should not be ruled out as a candidate design, especially when the decoding complexity becomes the main system concern.

In Figure 3.4, the average numbers of node expansions per information bit are illustrated for the codes examined in Figure 3.2. Since the number of node expansions is exactly equal to the number of tree branch metrics (i.e., one recursion of f -function values) computed,

(46)

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 10−4 10−3 10−2 10−1 100 Eb/N0 (dB) BER Single−22 Double−22 SA−22

Figure 3.5: Bit error rates (BERs) for the simulation of codes illustrated in Figure 3.2. the equivalent complexity of exhaustive decoding is correspondingly plotted. It can then be observed that in comparison with the exhaustive decoder, a significant reduction in compu-tational burden is achieved at moderate-to-high SNRs by adopting the Double-22 code and the priority-first search decoder with on-the-fly computable metric f1 (see (3.11)). Further

reduction can be achieved if the Double-22 code is replaced with the Single-22 code. This is because performing the sequential search over multiple code trees introduces extra node expansions for those code trees that the transmitted codeword does not belong to. An ad-ditional order-of-magnitude reduction in node expansions can be achieved when the metric f2 = g + ϕ2 (see (3.12)) is used instead.

The authors in [7] and [30] only focus on the word error rate (WER). No bit error rate (BER) performances that involve the mapping design between the information bit patterns and the codewords are presented. Yet, in certain applications, such as voice transmission and digital radio broadcasting, the BER is generally considered a more critical performance index. In addition, the adoption of the BER performance index, as well as the signal-to-noise ratio per information bit, facilitates the comparison of codes of different code rates.

(47)

Figure 3.5 depicts the BER performance of the same codes whose WER performances were depicted in Figure 3.2. The corresponding Eb/N0 is computed according to Eb/N0 =

SNR/R, where R = K/N is the code rate. The mapping between the bit patterns and the codewords of the given computer-searched code is obtained through simulated annealing by minimizing the upper bound of

BER 1 2K 2K X i=1 2K X j=1,j6=i d(mi, mj) K Pr  ˆ b = bj bi transmitted  ,

where, other than the notations defined in (3.7), mi is the information sequence

correspond-ing to the i-th codeword, and d(·, ·) is the Hamming distance. For the constructed codes of Section 3.2.3, the binary representation of the index of the requested codeword in Step 1 is directly taken as the information bit pattern corresponding to the requested codeword. The result illustrated in Figure 3.5 then indicates that the BER performance of the three curves are almost the same. Hence we conclude that taking the binary representation of the requested codeword index as the information bit pattern for the constructed code not only makes its implementation easy, but also yields a BER performance similar to that of the best simulated-annealing-based computer-searched codes.

Lastly, we demonstrate the WER and BER performances, respectively, of Single-26, Double-26, Single-30, and Double-30 codes, together with those of Single-22 and Double-22 codes, over the quasi-static fading channels in Figures 3.6 and 3.7. Both figures show that the Double-30 code has the best maximum-likelihood performance not only in WER but also in BER. This result concurs with the intuition that a longer code will perform better provided that the channel coefficients remain unchanged in a coding block. The decoding complexities of the codes are listed in Table 3.1, from which we observe that the saving of decoding complexity of metric f2 with respect to metric f1 increases as the codeword

length increases. It is worth mentioning that at very high SNR, the priority-first search decoding over the AWGN channels will directly go all the way down to the terminal nodes, and result in a decoding complexity of approximately two node expansions per information

(48)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 10−4 10−3 10−2 10−1 100 SNR (dB) WER Double−30 Single−30 Double−26 Single−26 Double−22 Single−22

Figure 3.6: Word error rates (WERs) for the codes of Single-22, Double-22, Single-26, Double-26, Single-30 and Double-30.

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 10−4 10−3 10−2 10−1 100 Eb/N0 (dB) BER Double−30 Single−30 Double−26 Single−26 Double−22 Single−22

Figure 3.7: Bit error rates (BERs) for the codes of Single-22, 22, Single-26, Double-26, Single-30 and Double-30.

(49)

bit. However, for fading channels, the decoding complexity cannot reach the ideal two node expansions per information bit even with zero additive noise, as shown in the last column of Table 3.1. In this regard, metric f2 still reaches a better ultimate decoding complexity than

metric f1.

Table 3.1: Average number of node expansions per information bit for the priority-first search decoding of the constructed half-rate codes of length 22, 26, and 30.

SNR 5dB 6dB 7dB 8dB 9dB 10dB 11dB 12dB 13dB 14dB 15dB ∞ dB Double-22-f1 671 590 506 436 375 320 274 236 204 178 156 54 Double-22-f2 68 55 42 32 26 20 17 14 12 10 9 6 ratio of f1/ f2 9.8 10.7 12.0 13.6 14.4 16.0 16.1 16.8 17.0 17.8 17.3 9.0 Double-26-f1 2361 2006 1695 1416 1189 981 813 677 523 499 392 105 Double-26-f2 175 130 94 69 53 39 29 23 18 15 13 6 ratio of f1/ f2 13.5 15.4 18.0 20.5 22.4 25.2 28.0 29.4 29.1 33.3 30.2 17.5 Double-30-f1 8455 7073 5760 5133 3759 3430 2644 1996 1765 1368 1081 192 Double-30-f2 459 332 232 166 119 86 60 44 33 25 20 7 ratio of f1/ f2 18.4 21.3 24.8 30.9 31.6 39.9 44.1 45.4 53.4 54.7 54.1 27.4 Single-22-f1 460 371 308 250 200 163 130 105 85 69 57 12 Single-22-f2 45 33 26 20 15 12 10 8 7 6 5 4 ratio of f1/ f2 10.2 11.2 11.8 12.5 13.3 13.5 13.0 13.1 12.1 11.5 11.4 3.0 Single-26-f1 1635 1328 1061 839 666 522 403 312 244 191 152 21 Single-26-f2 112 79 57 42 31 23 17 13 11 9 7 4 ratio of f1/ f2 14.6 16.8 18.6 20.0 21.5 22.7 23.7 23.9 22.2 21.2 21.7 5.3 Single-30-f1 5871 4695 3857 2924 2335 1813 1328 884 805 572 416 39 Single-30-f2 284 199 144 101 72 51 35 26 18 14 11 4 ratio of f1/ f2 20.6 23.6 26.8 29.0 32.4 35.5 38.0 34.0 44.7 40.9 37.8 9.8

Table 3.2: The attained diversity levels of codes, which are least-square-approximated based on WER performance curves within 8–15 dBs.

Diversity N = 8 N = 10 N = 12 N = 14 N = 16 N = 18 N = 22 N = 26 N = 30

SA-N 1.84 1.84 1.88 1.87 1.89 1.87 1.91 — —

Single-N — — — — — — 1.89 1.90 1.87

Double-N 1.67 1.80 1.79 1.85 1.88 1.87 1.87 1.89 1.87

We close this section by commenting on the attained diversity level d of the simulated codes. The diversity level d serves as approximation of the word error probability at high SNR, i.e., Pe ≈ SNR−d. From Table 3.2, we observe that the attained diversities of codes

of length 22 are around 1.9, which is close to the anticipated value of P = 2. The tables also suggest that the diversities degrade at small N , and the computer-searched codes have somewhat higher diversities within the considered SNR range. We conclude that under the

(50)

constraint of the self-orthogonal structure, the simulated codes can turn the second delayed channel path into another diversity. This results in a blind detection performance of diversity level close to P .

3.5

Summary

In this chapter, we introduce an algorithm to construct codes that allow joint channel es-timation and error correction at the receiver side of a block fading channel. In contrast to previously published codes, our codes are designed systematically and allow for an ML decod-ing with a much smaller computational complexity than the operation-intensive exhaustive decoding that was previously used in [7,13,30] to decode the structureless computer-searched codes. The given algorithm is based on the optimal signal-to-noise ratio framework and re-quires every codeword to satisfy a self-orthogonal property that helps to counter the effects of multi-path fading.

The improved decoding algorithm is a tree-based priority-first search decoding algorithm that uses a recursive maximum-likelihood metric. Simulations demonstrate that the con-structed codes have almost identical performance as the best computer-searched codes, but with much smaller decoding complexity.

Moreover, we propose two different maximum-likelihood decoding metrics. The first one can be used in an on-the-fly fashion, while the second one that results in a much lower decoding complexity requires the knowledge of all channel outputs. We hence have a trade-off between decoding complexity versus decoding delay.

數據

Figure 2.1: An illustration of a JML receiver.
Figure 2.2: The code tree for a computer-searched PEP-minimum (4, 2) code with b 1 fixed as −1.
Figure 3.1: Equivalent system model for combined channel estimation and error protection codes.
Figure 3.2: The maximum-likelihood word error rates (WERs) of the computer-searched half-rate code by simulated annealing in [30] (SA-22), the constructed half-rate code with double code trees (Double-22), and the constructed half-rate code with single cod
+7

參考文獻

相關文件

使瞭解系統櫥櫃應用 於室內設計及室內裝 修之組裝概念,並可達 快速施作之成效,瞭解 系統櫥櫃之元件模具

In this paper, we build a new class of neural networks based on the smoothing method for NCP introduced by Haddou and Maheux [18] using some family F of smoothing functions.

In this paper, we illustrate a new concept regarding unitary elements defined on Lorentz cone, and establish some basic properties under the so-called unitary transformation associ-

In this work, for a locally optimal solution to the NLSDP (2), we prove that under Robinson’s constraint qualification, the nonsingularity of Clarke’s Jacobian of the FB system

Specifically, for a locally optimal solution to the nonlinear second-order cone programming (SOCP), under Robinson’s constraint qualification, we establish the equivalence among

In this work, for a locally optimal solution to the nonlin- ear SOCP (4), under Robinson’s constraint qualification, we show that the strong second-order sufficient condition

An OFDM signal offers an advantage in a channel that has a frequency selective fading response.. As we can see, when we lay an OFDM signal spectrum against the

For the data sets used in this thesis we find that F-score performs well when the number of features is large, and for small data the two methods using the gradient of the