How can you multiply without adder?

513 Views Asked by At

Now, I'm trying to implement like this.

"How many $4\times4$ multiplier would you need to perform an $8\times8$ multiply. how an $8\times8$ multiplier would be created using only $4\times4$ multipliers?"

But I can't get any hint.

Does anyone know how to solve this problem? How can I approach this problem?

Update : Sir thank you very much. But your answer a quite different from here. http://verilog-code.blogspot.kr/2014/01/design-and-implementation-of-16-bit.html?m=1

You can check that 8x8 multiplier need to 2 4x4 multiplier. Also 3 addder.

1

There are 1 best solutions below

2
On BEST ANSWER

I am assuming you are asking about binary circuits. Lets splits your two 8bits inputs A,B into 4bits inputs: $$A= A_0 + 2^4 A_1, B= B_0 + 2^4 B_1.$$

You wish to compute $C = A\cdot B = A_0 B_0 + 2^4 (A_1B_0 + A_0B_1) + 2^8 A_1B_1$, there are three multiplication and 4 additions, but you have no adders...

The trick is you can build other gates using multipliers. Indeed, $$00ab \times 0011 = 0000(a \wedge b) (a \wedge \bar b) (a \oplus b) b $$ (Check that $0011 \times 0000 = 0$, $0011 \times 0001 = 0011$, $0011 \times 0010 = 110$ and $0011 \times 0011 = 1001$ that give you the $\texttt{and}: \wedge$ and the $\texttt{xor}: \oplus$ and the $\texttt{not}: \bar b$, so you can build anything from that.

Maybe there is something more clever to do to obtain the optimal solution...