I am working on my own implementation of MAP algorithm for non-systematic non-recursive convolutional code. I noticed, you implemented it for itpp. Could you please point me to some references which can be useful in implementation (I am quite familiar with BCJR algorithm, but do not quite understand how soft outputs for coded bits should be generated).
PS As far as I understood your code, for each M coded bits corresponding to the state transition you are scanning the trellis to identify the subsets of transitions with each of these coded bits set to 1 and 0. You compute the extrinsic output the same way for this subsets as it was done for the information bits.
Please have a look at these articles and references therein:
L. R. Bahl, J. Cocke, F. Jelinek, and J. Raviv. Optimal
decoding of linear codes for minimizing symbol errorrate. IEEE Transactions on Information Theory, pages
284–287, Mar. 1974.
S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara.
A soft-input soft-output APP module for iterative decoding of concatenated codes. IEEE Communications
Letters, 1(1):22–24, Jan. 1997.
Steven S. Pietrobon and Adrian S. Barbulescu, "A simplification of
the modified Bahl decoding algorithm for systematic convolutional codes", Proc. ISITA, 1994
The source code also contains some references.
Thank you, Bogdan,
I'll definitely look into it.