The existence of a relatively large number of similar but different modified BCJR MAP algorithms, derived using the Markov chain properties of convolutional codes, naturally leads to the
Trang 1Volume 2006, Article ID 95360, Pages 1 15
DOI 10.1155/ASP/2006/95360
A Systematic Approach to Modified BCJR MAP
Algorithms for Convolutional Codes
1 Defence Research and Development Canada – Ottawa, Ottawa, ON, Canada K1A 0Z4
2 Communications Research Centre Canada, Ottawa, ON, Canada K2H 8S2
Received 19 November 2004; Revised 19 July 2005; Accepted 12 September 2005
Recommended for Publication by Vincent Poor
Since Berrou, Glavieux and Thitimajshima published their landmark paper in 1993, different modified BCJR MAP algorithms have appeared in the literature The existence of a relatively large number of similar but different modified BCJR MAP algorithms, derived using the Markov chain properties of convolutional codes, naturally leads to the following questions What is the relation-ship among the different modified BCJR MAP algorithms? What are their relative performance, computational complexities, and memory requirements? In this paper, we answer these questions We derive systematically four major modified BCJR MAP algo-rithms from the BCJR MAP algorithm using simple mathematical transformations The connections between the original and the four modified BCJR MAP algorithms are established A detailed analysis of the different modified BCJR MAP algorithms shows that they have identical computational complexities and memory requirements Computer simulations demonstrate that the four modified BCJR MAP algorithms all have identical performance to the BCJR MAP algorithm
Copyright © 2006 S Wang and F Patenaude This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited
In 1993, Berrou et al [1] introduced new types of codes,
called turbo codes, which have demonstrated performance
close to the theoretical limit predicted by information
the-ory [2] In the iterative decoding strategy for turbo codes, a
soft-input soft-output (SISO) MAP algorithm is used to
per-form the decoding operation for the two constituent
recur-sive systematic convolutional codes (RSC) The SISO MAP
algorithm presented in [1], which is called the BGT MAP
al-gorithm in [3], is a modified version of the BCJR MAP
al-gorithm proposed in [4] The BGT MAP algorithm formally
appears very complicated Later, Pietrobon and Barbulescu
derived a simpler modified BCJR MAP algorithm [5], which
is called the PB MAP algorithm [3] However, the PB MAP
algorithm is not a direct simplification of the BGT MAP
al-gorithm, even though they share similar structures In [3],
the BGT MAP algorithm is directly simplified to obtain a
new modified BCJR MAP algorithm that keeps the structure
of the BGT MAP algorithm but uses simpler recursive
pro-cedures This new modified BCJR MAP algorithm is called
the SBGT MAP algorithm in [3] The main difference
be-tween the SBGT and BGT MAP algorithms lies in the fact
that for the BGT MAP algorithm, the forward and backward recursions (cf [1, equations (21) and (22)]) are formulated
in such a way that redundant divisions are involved, whereas
in the SBGT MAP algorithm, these redundant computations are removed
In [3], it is also shown that the symmetry of the trel-lis diagram of an RSC code can be utilized (albeit implic-itly) to derive another modified BCJR MAP algorithm which possesses a structure that is dual to that of the SBGT MAP algorithm and has the same signal processing and memory requirements This new modified BCJR MAP algorithm is called the dual SBGT MAP algorithm in [3] The Dual SBGT MAP algorithm will be called the DSBGT MAP algorithm in this paper
The BCJR and the modified BCJR MAP algorithms are all derived from first principles by utilizing the Markov chain properties of convolutional codes Some of the modified BCJR MAP algorithms, as well as the BCJR itself, have ac-tually been implemented in hardware From both theoretical and practical perspectives, it is of great interest and impor-tance to acquire an understanding of the exact relationship among the different modified BCJR MAP algorithms and their relative advantages
Trang 2In this paper, we first derive the BCJR MAP algorithm
from first principles for a rate 1/n recursive systematic
con-volutional code, wheren ≥2 is any positive integer We then
systematically derive the aforementioned modified BCJR
MAP algorithms and a dual version of the PB MAP
algo-rithm from the BCJR MAP algoalgo-rithm using simple
mathe-matical transformations By doing this, we succeed in
estab-lishing simple connections among these algorithms In
par-ticular, we show that the modified BCJR MAP algorithm of
Pietrobon and Barbulescu can be directly derived from the
SBGT MAP algorithm via two simple permutations
A detailed analysis of the BCJR and the four modified
BCJR MAP algorithms formulated in this paper shows that
they all have identical computational complexities and
mem-ory requirements when implemented appropriately
System-atic computer simulations demonstrate that the four
modi-fied BCJR MAP algorithms all have identical performance to
the BCJR MAP algorithm
This paper is organized as follows InSection 2, the now
classical BCJR MAP algorithm is revisited and the
nota-tion and terminology used in this paper are introduced In
Section 3, it is shown how the SBGT MAP algorithm can be
derived from the BCJR MAP algorithm InSection 4, a dual
version of the SBGT MAP algorithm (the dual SBGT MAP
algorithm or the DSBGT MAP algorithm) is derived from
the BCJR MAP algorithm InSection 5, it is shown how the
PB MAP algorithm of Pietrobon and Barbulescu can be
di-rectly derived from the SBGT MAP algorithm by performing
simple permutations on the nodes of the trellis diagram of an
RSC code InSection 6, by performing similar permutations,
a new modified BCJR MAP algorithm, called the DPB MAP
algorithm in this paper, is derived from the DSBGT MAP
al-gorithm The DPB MAP algorithm can be considered a dual
version of the modified BCJR MAP algorithm of Pietrobon
and Barbulescu presented in Section 5 In Section 7, a
de-tailed comparative analysis of computational complexities
and memory requirements is carried out, where the BCJR
and the four modified BCJR MAP algorithms are shown
to have the same computational complexities and memory
requirements In Section 8, computer simulations are
dis-cussed, which were performed for the rate 1/2 and rate 1/3
turbo codes defined in the CDMA2000 standard using the
BCJR, SBGT, DSBGT, PB, and DPB MAP algorithms As
ex-pected, under identical simulation conditions, the BCJR and
the four modified BCJR MAP algorithms formulated here all
have identical BER (bit error rate) and FER (frame error rate)
performance Finally,Section 9concludes this paper
To characterize the precise relationship between the
origi-nal BCJR MAP algorithm and the modified BCJR MAP
al-gorithms, we will present a detailed derivation of the
origi-nal BCJR MAP algorithm in this section and, in doing so, set
up the notation and terminology of this paper Our
deriva-tions show that a proper initialization of theβ sequence in
the BCJR MAP algorithm in fact does not require any a
pri-ori assumptions on the final state of the recursive systematic
convolutional code In other words, no information on the
f(m)
f(m)
m
1
0
1
0
Figure 1: Transition diagram of an RSC code
final encoder state is required in the derivation of the origi-nal BCJR MAP algorithm This statement also holds true for the modified BCJR MAP algorithms Note that in [4], it is assumed that the final encoder state is the all-zero state Letn ≥ 2,v ≥ 1,τ ≥ 1 be positive integers and con-sider a rate 1/n constraint length v + 1 binary recursive
sys-tematic convolutional (RSC) code Given an input data bit
i and an encoder state m, the rate 1/n RSC encoder makes
a state transition from statem to a unique new state S and
produces ann-bit codeword X The new encoder state S will
be denoted byS i(m), i =0, 1 Then bits of the codeword X
consist of the systematic data biti and n −1 parity check bits Thesen −1 parity check bits will be denoted, respectively, by
a unique encoder stateT from which the encoder makes a
state transition to the statem for an input bit i The encoder
stateT will be denoted by S i
among the encoder state m and the encoder states S0
b(m),
diagram inFigure 1 It can be verified that each of the four mappingsS0:m → S0(m), S1:m → S1(m), S0
f :m → S0
f(m),
andS1
f : m → S1
the set M = {0, 1, , 2 v −1}onto itself In other words, each of the four mappings S0b,S1b,S0f, andS1f is a permuta-tion fromM = {0, 1, , 2 v −1}onto itself It can be ver-ified thatS i(S i
m =0, 1, , 2 v −1
Assume the encoder starts at the all-zero stateS0=0 and encodes a sequence of information data bitsd1,d2,d3, , d τ
At timet, the input into the encoder is d t, which induces the encoder state transition from S t −1 to S t and gener-ates ann-bit codeword (vector) X t The codewords X t are BPSK modulated and transmitted through an AWGN chan-nel The matched filter at the receiver yields a sequence of noisy sample vectorsY t = 2X t −1 +Nt,t = 1, 2, 3, , τ,
where 1 is then-dimensional vector with all its components
equal to 1,X t is ann-bit codeword consisting of zeros and
ones, andNt is ann-dimensional random vector with i.i.d.
zero-mean Gaussian noise components with varianceσ2> 0.
Since there arev ≥1 memory cells in the RSC encoder, there areM = 2vencoder states, represented by the nonnegative
Trang 3integersm =0, 1, 2, , 2 v −1 Let
Y1t =Y1, , Y t
, 1≤ t ≤ τ,
t+1 =Y t+1, , Y τ
, 1≤ t ≤ τ −1,
Y t =r(1)t ,r t(2), , r t(n)
, 1≤ t ≤ τ,
(1)
wherer t(1)is the matched filter output sample generated by
the systematic data bitd t andr t(2), , r(t n) are matched
fil-ter output samples generated by then −1 parity check bits
Y1(d t,S t −1), , Y n −1(d t,S t −1), respectively Let
Λd t
=logPr
Pr
d t
=logPr
Pr
Λ(d t) and L a(d t) are called, respectively, the a posteriori
probability (APP) sequence and the a priori information
se-quence of the input data sese-quenced t In the first half
itera-tion of the turbo decoder,L a(d t) =0, since the input data
sequenced tis assumed i.i.d
The BCJR MAP algorithm centres around the
computa-tion of the following joint probabilities:
,
, (4)
where 1≤ t ≤ τ and 0 ≤ m ,m ≤2v −1
To computeλ t(m) and σ t(m ,m), let us define the
prob-ability sequences
1
, 1≤ t ≤ τ,
t+1 | S t = m
, 1≤ t ≤ τ −1,
, 1≤ t ≤ τ,
γ i
Y t,m ,m
=Pr
,
i =0, 1, 1≤ t ≤ τ.
(5)
At this stage, it is important to emphasize thatβ τ(m) and
con-ditions or initial values for the backward and forward
recur-sions are undetermined The boundary values (initial
condi-tions) will be determined shortly from the inherent logical
consistency among the computed probabilities
Now assume that 1≤ t ≤ τ −1 We have
=Pr
1;Y τ t+1
=Pr
1
Pr
t+1 | S t = m; Y t
1
=Pr
Pr
= α t(m)β t(m).
(6)
Here we used the equality
Pr
t+1 | S t = m; Y t
1
=Pr
t+1 | S t = m
, (7)
which follows from the Markov chain property that ifS t is known, events after timet do not depend on Y1t Similar facts are used in a number of places in this paper The reader is re-ferred to [6] for more detailed discussions on Markov chains Now lett = τ We have
=Pr
1
= α t(m) ×1= α t(m)β t(m). (8)
Here for the first time, we have defined β τ(m) = 1,m =
0, 1, , 2 v −1 Note thatβ τ(m) was not defined in (5)
It can be shown thatσ t(m ,m) can be expressed in terms
of theα, β, and γ sequences In fact, if 2 ≤ t ≤ τ −1, we have
=Pr
1 ;S t = m; Y t;Y τ
t+1
=Pr
1
×Pr
t+1 | S t −1= m ;Y t −1
1
= α t −1(m )
×Pr
t+1 | S t −1= m ;Y t −1
1 ;S t = m; Y t
×Pr
1
= α t −1(m ) Pr
t+1 | S t = m
×Pr
= α t −1(m )γ t(m ,m)β t(m),
(9)
and ift = τ, we obtain
=Pr
1 ; S t = m; Y τ
=Pr
1 ;S t = m; Y t
=Pr
1
×Pr
1
= α t −1(m ) Pr
= α t −1(m ) Pr
= α t −1(m )γ t(m ,m)
= α t −1(m )γ t(m ,m)β t(m).
(10) Here we used the Markov chain property and the definition thatβ (m) =1
Trang 4It remains to check the caset =1 Ift =1, we have
=Pr
t+1
=Pr
t+1 | S t −1= m
×Pr
=Pr
t+1 | S t = m; Y t;S t −1= m
×Pr
×Pr
=Pr
t+1 | S t = m
= β t(m)γ t(m ,m)α t −1(m ),
(11) where we have definedα0(m ) =Pr{ S t −1 = m } Since it is
assumed that the recursive systematic convolutional (RSC)
code always starts from the all-zero stateS0 = 0, we have
α0(0)=1 andα0(m) =0, 1≤ m ≤2v −1
To proceed further, we digress here to introduce some
no-tation A directed branch on the trellis diagram of a recursive
systematic convolutional (RSC) code is completely
charac-terized by the node it emanates from and the node it reaches
In other words, a directed branch on the trellis diagram of
an RSC code is identified by an ordered pair of nonnegative
integers (m ,m), where 0 ≤ m ,m ≤2v −1 We remark here
that not every ordered pair of integers (m ,m) can be used
to identify a directed branch LetBt,0 = {(m ,m) : S t −1 =
1, S t = m }.Bt,0(resp.,Bt,1) represents the set of all the
di-rected branches on the trellis diagram of an RSC code where
With the above definitions, we are now in a position to
present the forward and backward recursions for theα and β
sequences and the formula for computing the APP sequence
Λ(d t)
In fact, if 2≤ t ≤ τ, we have
1
=
2v −1
m =0
Pr
1 ; S t = m; Y t
=
2v −1
m =0
Pr
S t −1= m ;Y1t −1
×Pr
1
=
2v −1
m =0
Pr
1
×Pr
=
2v −1
=
α t −1(m )γ t(m ,m),
(12)
and ift =1, we have
1
=Pr
=
2v −1
m =0
Pr
=
2v −1
m =0
Pr
×Pr
=
2v −1
m =0
α t −1(m )γ t(m ,m).
(13)
Similarly, if 1≤ t ≤ τ −2, we have
=
2v −1
m =0
Pr
t+2 | S t = m
=
2v −1
m =0
Pr
×Pr
=
2v −1
m =0
Pr
×Pr
=
2v −1
m =0
β t+1(m )γ t+1(m, m ),
(14)
where we used the Markov chain property of the RSC code
Ift = τ −1, we have
t+1 | S t = m
=Pr
=
2v −1
m =0
Pr
=
2v −1
m =0
=
2v −1
m =0
β t+1(m )γ t+1(m, m ),
(15)
where we used the definition thatβ τ(m )=1
We can also easily verify that fori =0, 1,
Pr
=
(m ,m) ∈Bt,iPr
Pr
(m ,m) ∈Bt,i
σ t(m ,m)
Pr
(16)
Trang 5It follows from (2), (9), (10), (11), and (16) that the APP
sequenceΛ(d t) is computed by
Λd t
=log
(m ,m) ∈Bt,1(σ t(m ,m)/ Pr
Y1τ )
(m ,m) ∈Bt,0(σ t(m ,m)/ Pr
)
=log
(m ,m) ∈Bt,1 σ t(m ,m)
(m ,m) ∈Bt,0 σ t(m ,m)
=log
(m ,m) ∈Bt,1 α t −1(m )γ t(m ,m)β t(m)
(m ,m) ∈Bt,0 α t −1(m )γ t(m ,m)β t(m),
(17)
where 1 ≤ t ≤ τ and α t −1(m ) are computed by the
for-ward recursions (12) and (13) andβ t(m) are computed by
the backward recursions (14) and (15)
Equations (12), (13), (14), (15), and (17) constitute the
well-known BCJR MAP algorithm for recursive systematic
convolutional codes
We can further simplify and reformulate the BCJR MAP
algorithm for a binary rate 1/n recursive systematic
convolu-tional code In fact,
=
1
i =0
Pr
=
1
i =0
γ i
Y t,m ,m
,
(18)
where
γ i
Y t,m ,m
=Pr
=Pr
×Pr
=Pr
×Pr
×Pr
=Pr
×Pr
×Pr
.
(19)
Substituting (18), (19) into (12) and (13), we obtain
2v −1
m =0
α t −1(m )γ t(m ,m)
=
2v −1
m =0
α t −1(m )
1
j =0
γ j
Y t,m ,m
=
2v −1
m =0
α t −1(m )
×
1
j =0
Pr
×Pr
×Pr
=
1
j =0
α t −1
S b j(m)
Pr
×Pr
.
(20)
Here we used the fact that for any given statem, the
proba-bility Pr{ S t = m | d t = j; S t −1= m }is nonzero if and only
ByProposition A.1in the appendix, we have, forj =0, 1,
Pr
= exp
d t
j
1 + exp
d t
ByProposition A.2in the appendix, we also have, forj =0, 1, and 0≤ m ≤2v −1,
Pr
= μ texp L c r t(1)j +
n
p =2
L c r t(p) Y p −1
j, S b j(m)
, (22)
whereμ t > 0 is a positive constant independent of j and m
andL c =2/σ2is called the channel reliability coefficient Us-ing (21) and (22), the identity (20) can be rewritten as
1
j =0
α t −1
S b j(m)
Pr
×Pr
= δ t
1
j =0
α t −1
S b j(m)
×expj
d t
+L c r(1)t
×exp
n
p =2
L c r t(p) Y p −1
j, S b j(m)
= δ t
1
j =0
α t −1
S b j(m)
Γt
j, S b j(m)
,
(23)
Trang 6whereδ t = μ t /(1 + exp(L a(d t))) and for j = 0, 1 and 0 ≤
d t
+L c r t(1)
+
n
p =2
L c r t(p) Y p −1(j, m)
.
(24)
Similarly, from (14), (15), (18), (19), and using Propositions
A.1andA.2in the appendix, it can be shown that
2v −1
m =0
β t+1(m )γ t+1(m, m )
=
2v −1
m =0
β t+1(m )
1
j =0
γ j
=
1
j =0
2v −1
m =0
×Pr
×Pr
=
1
j =0
S j f(m)
Pr
×Pr
= δ t+1
1
j =0
S j f(m)
×expj
+L c r t+1(1)
×exp
n
p =2
L c r t+1(p) Y p −1(j, m)
= δ t+1
1
j =0
β t+1(S j f(m))Γt+1(j, m),
(25)
whereδ t+1 = μ t+1 /(1 + exp(L a(d t+1)))
Using mathematical induction, it can be shown that the
multiplicative constants δ t, δ t+1 can be set to 1 without
changing the APP sequenceΛ(d t) (cf.Proposition A.3in the
appendix) and the BCJR MAP algorithm can be finally
for-mulated as follows Let theα sequence be computed by the
forward recursion
1
j =0
α t −1
S b j(m)
Γt
j, S b j(m)
,
1≤ t ≤ τ −1, 0≤ m ≤2v −1,
(26)
and let theβ sequence be computed by the backward
recur-sion
1
j =0
S j f(m)
1≤ t ≤ τ −1, 0≤ m ≤2v −1.
(27)
The APP sequenceΛ(d t) is then computed by
Λd t
=log
(m,m )∈Bt,1 α t −1(m)γ t(m, m )β t(m )
(m,m )∈Bt,0 α t −1(m)γ t(m, m )β t(m )
=log
2v −1
m =0α t −1(m)γ t
f(m)
β t
S1
f(m)
2v −1
m =0α t −1(m)γ t
f(m)
β t
S0
f(m)
=log
2v −1
m =0α t −1(m)γ1
Y t,m, S1
f(m)
β t
S1
f(m)
2v −1
m =0α t −1(m)γ0
Y t,m, S0
f(m)
β t
S0
f(m)
=log
2v −1
m =0α t −1(m)Γt(1,m)β t
S1
f(m)
2v −1
m =0α t −1(m)Γt(0,m)β t
S0f(m)
= L a
d t
+L c r t(1)+Λe
d t
,
(28)
whereΛe(d t), the extrinsic information for data bitd t, is de-fined by
Λe
d t
=log
2v −1
m =0α t −1(m)η1(m)β t
S1
f(m)
2v −1
m =0α t −1(m)η0(m)β t
S0
f(m),
n
p =2
(29)
The BCJR MAP algorithm can be reformulated systemat-ically in a number of different ways, resulting in the so-called modified BCJR MAP algorithms They are discussed in the following sections
In this section, we derive the SBGT MAP algorithm from the BCJR MAP algorithm Fori =0, 1 and 1≤ t ≤ τ, let
(m ,m) ∈Bt,i
Equation (17) can then be rewritten as
Λd t
=log
2v −1
m =0α1
t(m)β t(m)
2v −1
m =0α0
t(m)β t(m), (31)
Trang 7
(m ,m) ∈Bt,1 α t −1(m )γ t(m ,m)β t(m)
(m ,m) ∈Bt,0 α t −1(m )γ t(m ,m)β t(m)
=
2v −1
m =0β t(m)
(m ,m) ∈Bt,1 α t −1(m )γ t(m ,m)
2v −1
m =0β t(m)
(m ,m) ∈Bt,0 α t −1(m )γ t(m ,m)
=
2v −1
m =0α1
t(m)β t(m)
2v −1
m =0α0
t(m)β t(m) .
(32)
Moreover,α i(m) admits the probabilistic interpretation:
(m ,m) ∈Bt,i
α t −1(m )γ t(m ,m)
(m ,m) ∈Bt,i
Pr
1
×Pr
(m ,m) ∈Bt,i
Pr
S t −1= m ; Y1t −1
×Pr
1
(m ,m) ∈Bt,i
Pr
1;S t −1= m
=Pr
1
.
(33)
It is shown below thatα i(m) can be computed by the
follow-ing forward recursions
α i0(m) =0, 1≤ m ≤2v −1,i =0, 1,
2v −1
m =0
1
j =0
α t j −1(m )γ i
Y t,m ,m
,
1≤ t ≤ τ, i =0, 1, 0≤ m ≤2v −1,
(34)
are repeated here for easy reference:
2v −1
m =0
1
i =0
β t+1(m )γ i
,
1≤ t ≤ τ −1, 0≤ m ≤2v −1.
(35)
In fact, from (12) and (13), it follows that for 1≤ t ≤ τ,
2v −1
m =0
α t −1(m )γ t(m ,m)
=
1
j =0
(m ,m) ∈Bt, j
α t −1(m )γ t(m ,m)
=
1
j =0
α t j(m).
(36)
Substituting (36) into (30), we obtain, for 2≤ t ≤ τ,
(m ,m) ∈Bt,i
α t −1(m )γ t(m ,m)
(m ,m) ∈Bt,i
1
j =0
α t j −1(m )γ t(m ,m)
(m ,m) ∈Bt,i
1
j =0
α t j −1(m )
×γ i
Y t,m ,m
+γ1− i
Y t,m ,m
(m ,m) ∈Bt,i
1
j =0
α t j −1(m )γ i
Y t,m ,m
=
2v −1
m =0
1
j =0
α t j −1(m )γ i
Y t,m ,m
.
(37) Here we used (18) and the fact that for anym with (m ,m) ∈
Bt,i, γ1− i(Y t,m ,m) = 0 (cf Proposition A.4 in the ap-pendix) This proves the forward recursions (34) for 2≤ t ≤
m =0, it can be verified directly that the forward recursion (37) holds also fort =1 ifα i
2,
(38)
Using essentially the same argument as the one used in the proof of Proposition A.3in the appendix, it can be shown that the values of α i0(m) can be reinitialized as α0j(0) = 1,
α0j(m )=0,j =0, 1 ,m =0 This proves the forward recur-sions (34) forα i(m).
Equations (34), (35), and (31) constitute a simplified ver-sion of the modified BCJR MAP algorithm developed by Berrou et al in the classical paper [1] We remark here that the main difference between the version presented here and the version in [1] is that the redundant divisions in [1, equa-tions (20), (21)] are now removed As mentioned in the in-troduction, for brevity, the modified BCJR MAP algorithm
of [1] is called the BGT MAP algorithm and its simplified version presented in this section is called the SBGT MAP al-gorithm (or simply called the SBGT alal-gorithm)
Trang 8Using (19), (A.2), (A.4), and applying a mathematical
in-duction argument similar to the one used in the proof of
Proposition A.3in the appendix, the SBGT MAP algorithm
can be further simplified and reformulated Details are
omit-ted here due to space limitations and the reader is referred
to [3] for similar simplifications In summary, the APP
se-quence Λ(d t) is computed by (31), whereα i(m) are
com-puted by the forward recursions
α i0(m) =0, 1≤ m ≤2v −1,i =0, 1,
1
j =0
α t j −1
S i b(m)
Γt
i, S i b(m)
,
1≤ t ≤ τ, i =0, 1, 0≤ m ≤2v −1,
(39)
easy reference and comparisons:
1
j =0
S j f(m)
1≤ t ≤ τ −1, 0≤ m ≤2v −1.
(40)
Note that the branch metricΓt(j, m) is defined in (24)
This section derives from the BCJR MAP algorithm a dual
version of the SBGT MAP algorithm Fori = 0, 1, and 1 ≤
(m,m )∈Bt,i
Using this notation, (17) can be rewritten as
Λd t
=log
2v −1
m =0α t −1(m)β1t(m)
2v −1
m =0α t −1(m)β0
t(m), 1≤ t ≤ τ, (42) since
(m,m )∈Bt,1 α t −1(m)γ t(m, m )β t(m )
(m,m )∈Bt,0 α t −1(m)γ t(m, m )β t(m )
=
2v −1
m =0α t −1(m)
(m,m )∈Bt,1 γ t(m, m )β t(m )
2v −1
m =0α t −1(m)
(m,m )∈Bt,0 γ t(m, m )β t(m )
=
2v −1
m =0α t −1(m)β1
t(m)
2v −1
= α t −1(m)β0
t(m), 1≤ t ≤ τ.
(43)
Moreover,β i(m) admits the probabilistic interpretation:
(m,m )∈Bt,i
γ t(m, m )β t(m )
(m,m )∈Bt,i
Pr
×Pr
(m,m )∈Bt,i
Pr
×Pr
t+1 | S t = m ;Y t
=Pr
.
(44)
The sequenceα t(m) is computed recursively by (12), (13), and (18), which are repeated here for easy reference and com-parisons:
2v −1
m =0
1
i =0
α t −1(m )γ i
Y t,m ,m
,
1≤ t ≤ τ, 0≤ m ≤2v −1.
(45)
The sequenceβ i(m) is computed recursively by the following
backward recursions as will be shown next:
β i τ+1(m) =1, i =0, 1, 0≤ m ≤2v −1,
2v −1
m =0
1
j =0
β t+1 j (m )γ i
,
1≤ t ≤ τ, 0≤ m ≤2v −1.
(46)
In fact, from (14) and (15), it follows that for 1≤ t ≤ τ −1,
2v −1
m =0
β t+1(m )γ t+1(m, m )
=
1
j =0
(m,m )∈Bt+1, j
β t+1(m )γ t+1(m, m )
=
1
j =0
β t+1 j (m).
(47)
Trang 9Substituting (47) into (41) and using (18), we obtain, for 1≤
(m,m )∈Bt,i
γ t(m, m )β t(m )
(m,m )∈Bt,i
1
j =0
β t+1 j (m )
(m,m )∈Bt,i
γ i
+γ1− i
×
1
j =0
β t+1 j (m )
(m,m )∈Bt,i
1
j =0
γ i
β t+1 j (m )
=
2v −1
m =0
1
j =0
γ i
β t+1 j (m ).
(48)
Here we used the fact that for (m, m )∈Bt,i,γ1− i(Y t,m, m )=
0 (cf.Proposition A.4in the appendix) This proves the
back-ward recursions (46) for 1≤ t ≤ τ −1 Using (41) and the fact
thatβ τ(m) =1, 0≤ m ≤2v −1, it can also be verified that
(48) holds fort = τ if β τ+1 j (m ) is defined byβ τ+1 j (m )=1/2,
0≤ m ≤2v −1
As in the derivation of the SBGT MAP algorithm,
us-ing a mathematical induction argument similar to the one
used in the proof ofProposition A.3in the appendix, it can
be shown that the values ofβ τ+1 j (m ) can be reinitialized as
β τ+1 j (m )= 1, j =0, 1,m =0, 1, , 2 v −1, without
hav-ing any impact on the final computation ofΛ(d t) This
com-pletes the proof of the backward recursive relations (46) for
Equations (45), (46), and (42) constitute an MAP
algo-rithm that is dual in structure to the SBGT MAP algoalgo-rithm
It is thus called the dual SBGT MAP algorithm in [3] In
this paper, the dual SBGT MAP algorithm will be called the
DSBGT MAP algorithm (or simply called the DSBGT
algo-rithm)
Using (19), (A.2), (A.4), and applying a mathematical
in-duction argument similar to the one used in the proof of
Proposition A.3in the appendix, the DSBGT MAP algorithm
can be further simplified and reformulated (details are
omit-ted) The APP sequence Λ(d t) is computed by (42) where
reference and comparisons:
1
j =0
α t −1
S b j(m)
Γt
j, S b j(m)
,
1≤ t ≤ τ −1, 0≤ m ≤2v −1,
(49)
β i τ+1(m) =1, 0≤ m ≤2v −1,i =0, 1,
1
j =0
β t+1 j
S i f(m)
Γt(i, m),
1≤ t ≤ τ, 0≤ m ≤2v −1, i =0, 1.
(50)
THE SBGT MAP ALGORITHM
In this section, we show that the modified BCJR MAP algo-rithm of Pietrobon and Barbulescu can be derived from the SBGT MAP algorithm via simple permutations
In fact, since the two mappingsS1
f andS0
f are one-to-one correspondences from the set{0, 1, 2, , 2 v −1}onto itself, from (31) it follows that the APP sequenceΛ(d t) can
be rewritten as
Λd t
=log
2v −1
m =0α1
t(m)β t(m)
2v −1
m =0α0
t(m)β t(m)
=log
2v −1
m =0α1
t
S1
f(m)
β t
S1
f(m)
2v −1
m =0α0
t
S0
f(m)
β t
S0
f(m).
(51)
Define
S i f(m) ,
S i
f(m)
.
(52)
Then the APP sequenceΛ(d t) can be computed by
Λd t
=log
2v −1
m =0a1t(m)b t1(m)
2v −1
m =0a0
t(m)b0
t(m) . (53)
It can be verified that
S i f(m)
=Pr
1
=Pr
,
1≤ t ≤ τ, 0≤ m ≤2v −1,
S i f(m)
=Pr
Y t+1 τ | S t = S i f(m)
=Pr
t+1 | d t = i; S t −1= m
,
1≤ t ≤ τ −1, 0≤ m ≤2v −1.
(54)
The two equations of (54) show thata i(m) and b i(m) are
exactly the same as theα i(m) and β i(m) sequences defined in
[5]
We can immediately derive the forward and backward re-cursions fora i(m) and b i(m) from the recursions (34) and (35)
Trang 10In fact, from the third equation of (34) it follows that for
1≤ t ≤ τ,
S i f(m)
(by definition)
=
2v −1
m =0
1
j =0
α t j −1(m )γ i
Y t,m ,S i(m)
(by (34))
=
1
j =0
2v −1
m =0
α t j −1(m )γ i
Y t,m ,S i f(m)
=
1
j =0
2v −1
m =0
α t j −1
S j f(m )
γ i
Y t,S j f(m ),S i f(m)
=
1
j =0
2v −1
m =0
a t j −1(m )γ i
Y t,S j f(m ),S i
f(m)
=
1
j =0
2v −1
m =0
a t j −1(m )γ j,i
Y t,m ,m
,
(55) where
γ j,i
Y t,m ,m
= γ i
Y t,S j f(m ),S i(m)
From the first and second equations of (34), it follows that
fori =0, 1,
a i
0(m) =1, form = S i
b(0),
a i
0(m) =0, form = S i
b(0).
(57)
The backward recursions forb i(m) are similarly derived In
fact, from the second equation of (35), it follows that for 1≤
S i f(m)
(by definition)
=
2v −1
m =0
1
j =0
β t+1(m )γ j
(by (35))
=
1
j =0
2v −1
m =0
β t+1(m )γ j
Y t+1,S i f(m), m
=
1
j =0
2v −1
m =0
S j f(m )
γ j
Y t+1,S i f(m), S j f(m )
=
1
j =0
2v −1
m =0
b t+1 j (m )γ j
Y t+1,S i
f(m), S j f(m )
=
1
j =0
2v −1
m =0
b t+1 j (m )γ i, j
,
(58) and from the first equation of (35), it follows that
b i
τ(m) = β τ
=1, i =0, 1. (59)
Equations (53), (55), (56), (57), (58), and (59) constitute the modified BCJR MAP algorithm of Pietrobon and Bar-bulescu developed in [5] As mentioned in the introduction, for brevity, this algorithm is also called the PB MAP algo-rithm (or simply called the PB algoalgo-rithm)
Using (19), (A.2), (A.4), and applying a mathematical in-duction argument similar to the one used in the proof of
Proposition A.3in the appendix, the PB MAP algorithm can
be further simplified and reformulated as follows The APP sequenceΛ(d t) is computed by (53), wherea i(m) are
com-puted by the forward recursions
1
j =0
a t j −1
S b j(m)
Γt(i, m),
1≤ t ≤ τ, 0≤ m ≤2v −1,
(60)
b i
τ(m) =1, 0≤ m ≤2v −1,
1
j =0
b t+1 j
S i f(m)
Γt+1
j, S i f(m)
,
1≤ t ≤ τ −1, 0≤ m ≤2v −1.
(61)
The dual SBGT (DSBGT) MAP algorithm presented in
Section 4can be reformulated via permutations to obtain a dual version of the PB MAP algorithm
In fact, since the two mappingsS1 and S0b are one-to-one correspondences from the set{0, 1, 2, , 2 v −1}onto itself, from (42) it follows that the APP sequenceΛ(d t) can
be rewritten as
Λd t
=log
2v −1
m =0α t −1(m)β1
t(m)
2v −1
m =0α t −1(m)β0t(m)
=log
2v −1
m =0α t −1
S1b(m)
β t1
S1b(m)
2v −1
m =0α t −1
S0
b(m)
t
S0
b(m).
(62)
Define
S i
b(m) ,
S i b(m)
.
(63)
Then the APP sequenceΛ(d t) can be computed by
Λd t
=log
2v −1
m =0g1
t(m)h1
t(m)
2v −1
m =0g t0(m)h0t(m) . (64)
The two sequences g i(m) and h i(m) admit the following
... in-troduction, for brevity, the modified BCJR MAP algorithmof [1] is called the BGT MAP algorithm and its simplified version presented in this section is called the SBGT MAP al-gorithm... relations (46) for
Equations (45), (46), and (42) constitute an MAP
algo-rithm that is dual in structure to the SBGT MAP algoalgo-rithm
It is thus called the dual SBGT MAP algorithm... dual SBGT (DSBGT) MAP algorithm presented in
Section 4can be reformulated via permutations to obtain a dual version of the PB MAP algorithm
In fact, since the two mappingsS1