- Asked 2/20
- 2074 Chaitra · 8 marks
Trellis decoding of 1/2 rate conv. code (2-bit errors)
Short answer
Using a rate-1/2, 4-state convolutional code (g1=111, g2=101) and Viterbi decoding on the trellis, the two-bit errors are corrected, recovering the message 1 0 1 1.
Applying a 1/2 rate, 4-state convolutional code, correct errors of two bits with the help of its trellis diagram.
Code used
Rate 1/2, 4-state (K = 3) convolutional code, g1 = 111, g2 = 101. States: a = 00, b = 10, c = 01, d = 11 (state = s1 s2; next state = (input, s1)).
| State | Input 0 (next, out) | Input 1 (next, out) |
|---|---|---|
| a | a, 00 | b, 11 |
| b | c, 10 | d, 01 |
| c | a, 11 | b, 00 |
| d | c, 01 | d, 10 |
Transmitted and received data
Message 1 0 1 1 plus tail 0 0:
- transmitted: 11 10 00 01 01 11
- received (2 bit errors, in steps 2 and 5): 11 00 00 01 11 11
Viterbi decoding on the trellis
Each branch gets a metric equal to the Hamming distance between the received pair and the branch output. The decoder adds metrics along each path and keeps only the lowest metric (survivor) at every state.
time : t0 t1 t2 t3 t4 t5 t6
rx : 11 00 00 01 11 11
a : 0* 2 2 2 3 2 2*
b : - 0* 4 1* 3 3 2
c : - - 1* 2 2 2* 3
d : - - 1 2 1* 2 3
(number = accumulated error count, * = survivor path)
Example (t2): state c is reached from b by input 0 (output 10, received 00, distance 1) with total 0 + 1 = 1.
Traceback
The code ends in state a with total metric 2, which means two bit errors. Following survivors backwards:
a ← c ← d ← b ← c ← b ← a
The path is a → b → c → b → d → c → a with inputs 1, 0, 1, 1, 0, 0, and outputs 11 10 00 01 01 11, which is the transmitted sequence.
Decoded message = 1 0 1 1 (tail 00). Both errors (step 2: 00 received instead of 10; step 5: 11 received instead of 01) are corrected.
Since d_free = 5, any pattern of 2 bit errors in the stream is corrected.
✓ Answer checked by Claude Sonnet 5.5
Related questions
- Trellis decoding of 1/2 rate conv. code (3-bit errors) · Data Communication, chapter 8 · asked 2×
- Short note: Trellis diagram of convolutional encoder · Communication Systems, chapter 8