Abstract: In a PRML decoder, a branch metric calculator receives an input bit sequence having a multi-level multi-state characteristic precoded in a particular channel code and produces a set of branch metrics corresponding in number to amplitude levels which the input bit sequence assumes. ACS circuitry is formed of add/compare/select (ACS) circuits, adders and unit delay elements connected respectively to the ACS circuits and the adders.