1. A MAP decoder, comprising: (a) inputs for receiving symbols; (b) a forward recursion block coupled to said inputs, said forward recursion block with cascade architecture; (c) a backward recursion block coupled to said inputs; said backward recursion block with cascade architecture; and (d) an output block coupled to said forward recursion block and to said backward recursion block.