A data processor, such as a DSP, includes a multiplier block having a multiplier
front end for generating partial products from input operands, and further includes
a plurality of ALUs having inputs that are switchably or programmably coupled,
in a first mode of operation, to first data sources representing outputs of the
multiplier front end. In the first mode of operation the ALUs add together partial
products received from the multiplier front end to arrive at a multiplication result.
In a second mode of operation the inputs of the plurality of ALUs are switchably
or programmably coupled to second data sources for performing at least one of arithmetic
and logical operations on data received from the second data sources.