KEMBAR78
CommLab Sp17 Lecture 6 v0 | PDF | Algorithms And Data Structures | Computer Science
0% found this document useful (0 votes)
19 views4 pages

CommLab Sp17 Lecture 6 v0

Uploaded by

ma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views4 pages

CommLab Sp17 Lecture 6 v0

Uploaded by

ma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Communication Systems Lab Spring 2017 National Taiwan University

Lecture 6: Convolutional Code

Scribe: 王傑生、鄭煦 Lecture Date: 4/12, 2017 Lecturer: I-Hsiang Wang

Agenda

• Convolutional Encoding

• State Transition Diagram and Equivalent Trellis

• Decoding: maximum likeihood sequence detection(MLSD)

• MLSD via Viterbi Algorithm

Recap Last time we showed that ”random” linear block code combined with simple modulation (binary PAM). Can
achieve rate-efficient and energy-efficient reliable communication.

• b·G=c

• b ∈ {0, 1}1×k

• c ∈ {0, 1}1×n

• k≤n

k
• rate R = n

Introduction to Convolutional Encoding

• In convolutional encoding the Linear Transform is a ”linear filter” (c.t. In Linear block code the Linear trnasform
is a ”matrix multiplication”)

Example 1
b = (b1 , b2 , ..., bn , ...)

1
Communication Systems Lab Spring 2017 National Taiwan University

(1) (2) (1) (2) (1) (2)


c = (c1 , c1 , c2 , c2 , ..., cn , cn , ...)
where


c(1)
n = bn ⊕ bn−1 = (b ∗ g
(1)
)n (1st linear filter)

c(2)
n = bn ⊕ bn−1 ⊕ bn−2 = (b ∗ g
(2)
)n (2nd linear filter)
 

1, if n = 0, 2 
1, if n = 0, 1, 2
(1) (2)
note: gn = and gn =

0, else 
0, else

• Block diagram of the two linear filters:


1st & 2nd linear filter:

1
Rate of this linear encoding R = 2

• In the following, we discuss how the 2 bits stored in the 2 shift registers change with the input bit stream.
observation: length of the FIR filters = number of shift registers + 1
A running example:

State trasition diagram and Equivalent Trellis

• state transition diagram:


”state”: (s1 , s2 )

2
Communication Systems Lab Spring 2017 National Taiwan University

• Trellis Representation:

Generalization
∑k
• c(l) = i=1 b(i) ∗ g (i,k)

No Feed Back(FIR): G(z) is polynominal

3
Communication Systems Lab Spring 2017 National Taiwan University

With Feed Back(IIR): G(z) is rational


k
R= n

• Termination: In practice, due to packetization, we have to terminate at a given time K0 ≫ L (L: number of shift
registers, called ”constrained length”. When termination happens, one needs to ”reset” the registers by appending
L 0’s at the end. Rate = K0
2(K0 +L) ≈ 1
2 when K0 ≫ L

Decoding Convolutional Code

• Maximum Likelihood Sequence Detection (MLSD):


Detection Problem:
given


y1 , y2 , ..., yn (soft-decision, y ∈ R or C)

d1 , d2 , ..., dn (hard-decision, d ∈ {0, 1})

find the most likely input bit sequence b̂

In the previous lecture, we already know that ML = MD where the distance metrics are Euclidean distance in
soft-decision, Hamming distance in hard-decision
thus


arg minb ∥ y − x(b) ∥2
b̂ =

arg minb dn (d, c(b))

• Key observation
The target function can be decomposed with respect to time
∑n
– 1. For soft-decision, the target function is ∥ y − x(b) ∥22 = i=1 |yi − xi (b)|2
∑n
– 2. For hard-decision, the target function is dH (d, c(b)) = i=1 ⊮{di ̸= ci (b)} where ⊮{·}: indicator function.

Unify the above two as a minimun cost problem b̂ = arg minAll length−n path p on the trellis {Cn (p, s)}

• Viteribi Algorithm (Dynamic Programming for solving minimun cost problem on a trellis)
let Vk (s) ≜ minAll length−k path p on the trellis {Ck (p, s)}

Vk+1 (s) = minr→s {Vk (r) + U (r, s, dk )}


Pk+1 (s) = arg minr→s {Vk (r) + U (r, s, dk )}
where 

U (r, s, dk ) = dH (C(r → s), dk )

U (r, s, yk ) =∥ x(r → s) − yk ∥2
2

Complexity: linear in n, exponential in L

You might also like