elockpicker
Member level 4
Hi,
I'm supposed to design a 24*12 signed two's complement multiplier.
Furthermore I am supposed to do it using ONLY two 12*12 multipliers (both are signed two's complement multipliers.)
The problem is that the multiplication operation is signed.
In a rather simple approach I
-determined the sign of the output
-calculated the absolute value of both operands
-performed the multiplication using the absolute values
-changed the sign of the output according to the output sign (previously determined)
This solution requires adders which consume area and if no registers are introduced in the data path, they will introduce a considerable delay.
Is there any more elegant and efficient way of doing this (preferably not calculating the absolute value of anything) ?
I'm supposed to design a 24*12 signed two's complement multiplier.
Furthermore I am supposed to do it using ONLY two 12*12 multipliers (both are signed two's complement multipliers.)
The problem is that the multiplication operation is signed.
In a rather simple approach I
-determined the sign of the output
-calculated the absolute value of both operands
-performed the multiplication using the absolute values
-changed the sign of the output according to the output sign (previously determined)
This solution requires adders which consume area and if no registers are introduced in the data path, they will introduce a considerable delay.
Is there any more elegant and efficient way of doing this (preferably not calculating the absolute value of anything) ?