2-Convolutional Coding
2-Convolutional Coding
J = 10, 9, 8, 7, 6, 5, 4, 3, 2, 1
’0’ ’1’
0, 0, 1, 1, 0, 1, 1, 0, 0, 0
bi s1 s2 bi bp s1 s2
bi s1 s2 bp 00
next 00 00
z }| {
bi , s1 , s2 11
| {z }
current 01
01 01
Given the received bits sequence, 10
we use Viterbi decoding to retrieve 01
the original information bits.
10 10
I Hard decoding
10
I Soft decoding
00
Below example assumes all zero in- 11 11
11
put sequence.
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
Path Metric (Γ): At J = 2, we move from state ’00’ (’10’) to two states
{’00’, ’10’} ({’01’, ’11’}) when input ’0’ and ’1’ - a total of four states.
The path metric is obtained as accumulated branch metrics.
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
Merging Path: At J = 3, when two paths merge, the one with smaller
path metric is survived or a random choice if two path metrics are the
same.
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
I state ’00’, path A: input {0, 0, 0} and ΓA (3) = 2; path B: input
00
{1, 0, 0} and ΓB00 (3) = 4 → Γ00 (3) = ΓA00 (3) = 2.
I state ’11’, path A: input {0, 1, 1} and ΓA (3) = 3; path B: input
11
{1, 1, 1} and ΓB11 (3) = 3 → Γ11 (3) = 3.
Dr Rong ZHANG (Soton) ELEC3203: DCT October 10, 2014 2/3
’0’
HD ’1’ J=1J=2J=3J=4J=5J=6J=7J=8
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
00 1 00 1 00 2 2 2 2 2 2
00 4 4 4
11 11 01 01 01
01 2 5
3 3
01 01
00 00
10 1 3
10 10
3
11 2 11 3 11 5
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
I Errors occur when two or more paths metrics have the same value.
I Or when two or more paths have the same final path metric.
00 1 00 1 00 2 00 2 00 2 00 2 00 2 00 2
00 4 4 4 4 6 6
11 11 11 11 11 11 11 11
01 01 01 01 01 01
2 5 3 5 5 5 5
01 3 3 3 5 5 5
10 10 10 10 10 10
01 01 2
01 4
01 4
01 4
01 4
01 4
10 1 3 2 4 4 4 6 6
10 10 10 10 10 10 10
00 00 00 00 00 00
3 3 5 5 5 5
11 2 3 5 5 7 7 7
11 11 11 11 11 11
Received 10 00 10 00 00 00 00 00
Decoded 0 0 0 0 0 0 0 0
Figure: Full trellis of error-free hard Viterbi decoding. Assume all zero was
transmitted.