An interpolation filter for processing a sequence of input samples provided at
an input rate controlled by an input clock, so as to generate interpolants at an
output rate controlled by an output clock, which is substantially independent of
the input clock. The filter includes a plurality of stages arranged in a succession
in which each of the stages, except for a first stage in the succession, is coupled
respectively to a preceding one of the stages. Each of the stages includes a multiplier,
coupled to receive the input samples and to multiply each of the samples by a respective
coefficient determined responsive to a phase interval between the input clock and
the output clock, so as to generate an interpolation product, and a multiplexer-accumulator,
coupled to add the interpolation product, in synchronization with the input clock,
to an interim value stored by the multiplexer-accumulator and, except for the first
stage, further coupled to receive, in synchronization with the output clock, the
interim value stored by the preceding stage, thereby generating the interpolants
at an output of the multiplexer-accumulator of a last stage in the succession.