This is a Mid Term Evaluation Project created by Ankit Varshney and Anmol Aggarwal of Delhi Technological University for the evaluation of the Mid Term Component of the subject: Digital Electronics.

This simulation consists of the practical working of Booth's Algorithm. Booth's Algorithm is used for the multiplication of Signed Numbers represented in Binary Form. In this simulation, we have multiplies 2 4-bits numbers.

This is a Mid Term Evaluation Project created by Ankit Varshney and Anmol Aggarwal of Delhi Technological University for the evaluation of the Mid Term Component of the subject: Digital Electronics.

This simulation consists of the practical working of Modified Booth's Algorithm. Radix-4 Booth's Algorithm is used for the multiplication of Signed Numbers represented in Binary Form. In this simulation, we have multiplied 2 8-bits numbers.

Binary
BCD
Converter
Code converter
Binary to BCD
Conversion
Serial converter
16-bit converter
16-bit
Computer
Register
Shift register
ROM
Binary coded decimal
Read only memory
Circuit
Full circuit
Double dabble
algorithm
Program
BIN
BIN to BCD
Complete circuit
Binary converter
BCD converter
Binary to decimal
Decoder
Encoder

Hello,

I have built a fully working
converter that converts **16-bit binary code to BCD**.

I wanted a mode with a small amount
of gates instead of millions of cells connected in series to ROM. As a result,
I designed the converter in a slightly different way, using **only 5 ROM cells**,
one register, one shift register and, of course, since this is an algorithm
where the operation is performed by cyclically changing one piece of data, we
also need a control unit. This is only for clock control and a few minor
details.

This conversion method is generally
referred to as **double-dabble**, also known as **shift-and-add-3**. In fact, it is a
large number of ROM cells, each cell handling a 4-bit or BCD code. It works by
adding 3 to all numbers greater than or equal to 5, then shifting the entire
range of bits to the left once. This cycle is repeated as many times as the
length of the input bits, for example we have 8 bits and the cycle will be
repeated eight times.

The main difference between my converter and the others is that mine is done by a clock that is constantly blinking, and drives the cyclical circulation of a piece of data continuously across exactly the same pair of cells. This method reduces the number of gates, but may be slightly slower and more complicated. While other circuits are mostly built with series connected ROM cells and this results in a simple circuit but a higher gate count compared to mine.

Below I have attached an image of
one ROM cell that converts binary code to BCD. There is also a table that
describes the behaviour of this cell perfectly.

For a better user experience, don't forget to read the instructions below.

INSTRUCTIONS:1. Reset your device before conversion!

(RST = Reset button)2. Enter the binary form of a number!

(Input binary code)3. Press the button to start the conversion!

(BGN = Begin)4. The clock must be on, it must blink 16 times!

(CLK = Clock)5. Read the BCD value!

(Output BCD)

If you like my project, please give me a star (the button is on the bottom right), because it means a lot to me!

I hope you like the plan. I hope you enjoy the experience.