An efficient configurable signal filter. The filter includes a first
mechanism for receiving a first signal of a first type and a second
signal of a second type. A second mechanism selectively filters the first
signal during a first mode of operation, and filters the second signal
during a second mode of operation. A third mechanism generates control
signals. A fourth mechanism automatically configures the second mechanism
to operate in the first mode of operation or the second mode of operation
based on the control signals. In a specific embodiment, the first type of
signal is characterized by a first rate, and the second type of signal is
characterized by a second rate. The first signal and the second signal
are digital ADC outputs. The second mechanism includes plural filter
blocks, each having one or more Multiply-Accumulate (MAC) pipes. Each of
the one or more MAC pipes include one or more MAC blocks that are each
associated with a coefficient memory data structure of a coefficient
memory. The third mechanism or a user selects coefficients from each
memory data structure to apply to each MAC block, thereby selectively
affecting filter response. The control signals direct multiplexers or
switches to configure the MAC pipes in a serial configuration or a
parallel configuration corresponding to the first mode of operation or
the second mode of operation, respectively.