A maximum likelihood detector receiving a data stream corresponding to
ideal values which may include noise, and outputting information
specifying a sequence of states of maximum likelihood selected from
possible states corresponding to the data stream according to weighting
value selections made by the processors, the ideal values being
determined by the possible states, including: a pre-processor to obtain
first weighting values; processors in a hierarchy, each processor in a
select level of the hierarchy is programmed to use, respectively, a
plurality of the weighting values to calculate subsequent weighting
values indicating respective likelihoods that a section of the data
stream values corresponds to each of a plurality of possible state
sequences, for each possible initial state and each possible final state,
to select further weighting value of highest likelihood corresponding to
a state sequence from the initial state to the final state.