02-01-2015, 10:43 AM

About a year ago I made a sequential hex multiplier. It could only multiply 2 one digit hex numbers together. For a very long time I have pondered how to do more than just one digit.

Now I have made a breakthrough.

I present my combinational hex multiplier.

At first I just made a combinational multiplier for a 2 single digit hex numbers. Then I stacked it in an offset 4x4 grid in order to cross multiply. After it multiplies all the combinations, it adds up all the small products into the final product. It's hella slow, but the numbers go pretty high... it goes up to FFFE0001, which is 4,294,836,225 in decimal. this is equivalent to multiplying two 16-digit binary numbers.

Anyway... here are some pictures...

8 digit display (2222*2222=48D0C84)

Each input is connected to 4 multipliers in a cross pattern

Really big and slow...

outputs from the multipliers were grouped by denomination in order to be added together.

Didn't bother remaking the adder to 4 different sizes so I just copied the same one 7 times. The carry runs at the end below the whole thing.

Now I have made a breakthrough.

I present my combinational hex multiplier.

At first I just made a combinational multiplier for a 2 single digit hex numbers. Then I stacked it in an offset 4x4 grid in order to cross multiply. After it multiplies all the combinations, it adds up all the small products into the final product. It's hella slow, but the numbers go pretty high... it goes up to FFFE0001, which is 4,294,836,225 in decimal. this is equivalent to multiplying two 16-digit binary numbers.

Anyway... here are some pictures...

8 digit display (2222*2222=48D0C84)

Each input is connected to 4 multipliers in a cross pattern

Really big and slow...

outputs from the multipliers were grouped by denomination in order to be added together.

Didn't bother remaking the adder to 4 different sizes so I just copied the same one 7 times. The carry runs at the end below the whole thing.