# We now describe the bcjr algorithm bahl cocke jelinek

This preview shows page 1. Sign up to view the full content.

This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: ...., s (k+D) )= (k+D) =A1 ) Pk (s =A 1 , .... , s (k) =A 1) =A 2) ... P (s =A 1 , .... , s k−1 (k) (k+D) =A2 ) Pk (s =A 1 , .... , s (k) (k+D) ... ..... ..... P (s =A 2 , .... , s k−1 (k) (k+D) =A 1) Pk (s =A 2 , .... , s (k) (k+D) =A 1) ... ..... ... ..... P (s =A M , .... , s k−1 (k) (k+D) =AM ) D+1 Pk (s =A M , .... , s D+1 (k) (k+D) =AM ) M states M states Figure 4: Illustration of computation of state probabilities required for the forward-only symbol-by-symbol MAP algorithm. We now describe the BCJR algorithm (Bahl, Cocke, Jelinek, Raviv; IEEE Trans. on IT; March 1974) which eﬃciently solves Eq (??) using a trellis formulation. This is, the BCJR algorithm is a forward/backward time-recursive block processing algorithm used to compute these probabilities for the block symbol-by-symbol MAP problem. The BCJR algorithm forms the basis for turbo (and more generally iterative) decoders. As is typical for a description or application of the BCJR algorithm, we will assume the binary symbol case (i.e. M = 2). Adopting a n...
View Full Document

Ask a homework question - tutors are online