1. An apparatus for detecting a data pattern from a plurality of received signals, the apparatus comprising: a mapper providing a sequence of scan values derived from a sequence of count values, each scan value selecting one of a set of candidates in a varying pattern; a difference term generator providing, for each of the sequence of count values, a difference term between a current metric value and a previous metric value based on a set of coefficients for a received symbol; an accumulator combining, for each of a sequence of count values, the difference term with one or more previous difference terms to provide one of a set of metric values; and a comparator generating, based on the set of metric values corresponding to the sequence of scan values, soft-output values corresponding to the data pattern.