A method and an apparatus is provided for producing branch metrics in a
LogMAP turbo decoding operation. During a forward recursion of a trellis,
a set of primary branch metrics is generated. The primary branch metrics
are stored in receiver form in a relatively small memory cache module and
corresponding secondary branch metrics are produced by negating the
primary branch metrics. The primary branch metrics and the secondary
branch metrics constitute all possible branch metrics for a given state
in the trellis. During a backwards recursion of the trellis, the stored
primary branch metrics are retrieved from the memory cache module and the
secondary branch metrics are regenerated by negating the retrieved
primary branch metrics.