SlideShare a Scribd company logo
Encoding Schemes for Multipliers
Hardware multiplication is performed in the same way multiplication done by
hand, first step is to partialized the products are computed then shifted
appropriately and summed.
Normal multiplication Process:
The simplest multiplication operation is to directly calculate the product of two
numbers by hand. This procedure can be divided into three steps:
1. Partial product generation
2. Partial product reduction
3. Addition.
Let us calculate the product of 2’s complement of two numbers 1101(-3) and 5
(0101), when computing the two binary numbers product we get the result
1 1 0 1 Multiplicand
x 0 1 0 1 Multiplier
------------------------
1 1 1 1 1 1 0 1 PP1
0 0 0 0 0 0 0 PP2
1 1 1 1 0 1 PP3
+ 0 0 0 0 0 PP4
------------------------------------
1 1 1 1 1 0 0 0 1 = −15 Product
Discard this bit
From the above we say that 1101 is multiplicand and 0101 is multiplier. The
intermediate products are partial products. The final result is product (-15). When
this method is processed in hardware, the operation is to take one of the multiplier
bits at a time from right to left, multiplying the multiplicand by the single bit of
the multiplier and shifting the intermediate product one position to the left of the
earlier intermediate products. All the bits of the partial products in each column
are added to obtain two bits: sum and carry. Finally, the sum and carry bits in
each column have to be summed. The two rows before the product are called sum
and carry bits.
1 1 0 1 Multiplicand
x 0 1 0 1 Multiplier
------------------------
1 1 1 1 1 1 0 1 PP1
0 0 0 0 0 0 0 PP2
1 1 1 1 0 1 PP3
+ 0 0 0 0 0 PP4
------------------------------------
0 0 0 0 1 0 0 1 Sum bit
1 1 1 1 0 1 0 0 0 Carry bit
______________________________
1 1 1 1 1 0 0 0 1 = −15 Product
Advantage:
In this method the partial product circuit is simple and easy to implement.
Therefore, is is suitable for the implementation of small multipliers.
Disadvantage:
This method is not able to efficiently handle the sign extension and it generates a
number of partial products as many as the number of bits of the multiplier, which
results in many adders needed so that the area and power consumption increase.
This method is not applicable for large multipliers.
Booths algorithm:-
This algorithm will be slow if there are many partial products because the output
must wait until each sum is calculated and performed. As speed is main important
aspect while calculating the multiplication. By using the Booths algorithm, we
can maximize the speed. In Booths algorithm, speed can be maximized by
reducing the partial products to half. The adder circuits in Booth algorithm
provide the advantage in maximizing the speed.
ALU implements Booth algorithm to multiply binary number. ALU cannot
simply multiply binary number as it can do only addition, subtraction and
shifting.
Working Principle:-
Accumulator Multiplier
Q
Q-1 Multiplicand Action
0000
Step1
0000
0010
0001
0
0
0110 2’s
complement of
0110
Shifting
1010
0000 Step 2
+1010
1010
1101 Step 3
0001
0000
0
1
0110 2’s
complement of
0110
1010
Subtraction
shifting
1101 Step 4
+0110
0011
0001 Step 5
0000
1000
1
0
0110 Addition
Shifting
0000 Step 6 1100 0
Shifting
The operation of Booth encoding consists of two major steps: the first one is to
take one bit of the multiplier, and then to decide whether to add the multiplicand
according to the current and previous bits of the multiplier.
Initially accumulator start with 0000 and we will perform shift that is arthimetic
shift then we get first bit of A and the copy of first bit A and for the remaining
positions we get from the second position of A. The left bit in A is shifted to Q
and bits of Q is placed after it. The bit in Q is shifted to Q-1. Initially Q-1 will be
0. Then we will compare LSB Multiplier, based on this comparision we will
perform the addition, subtraction and shifting.
Based on this comparision we will perform the action on Accumulator and
multiplicand.
In the above table we multiplied 0010 and 0110 as an example and the result will
be combination of both Accumulator and multiplier i.e 0000 1100(12).
Q0 Q-1
Action on A and
multiplicand
0 0 Shifting
0 1 Adding
1 0 Subtracting
1 1 Shifting
Modified Booth Algorithm:
The encoding method is widely used to generate the partial products for the
implementation of large multipliers. It adopts parallel encoding scheme.
Modified Booth Algorithm can be realized by using circuits consists of Booth
Encoder and multiplier array of partial product generator (Multiplexer) and
adders.
Booth Encoder:
It implements Booth Algorithm encoding.
Basic Principle:-
The basic principle in modified Booth Algorithm is, consider X and Y are two
fixed-point two’s complement numbers, where X is multiplier and Y is
multiplicand both having same n bits.
X can be represented as
X = −𝑋 𝑛−12 𝑛−1
+ ∑ 𝑋𝑖2𝑖𝑛−2
𝑖=0
= ∑ (−𝑋2𝑖−1 + 𝑋2𝑖 + 𝑋2𝑖−1). 22𝑖𝑛/2−1
𝑖=0
= ∑ (−2𝑋2𝑖+1 + 𝑋2𝑖 + 𝑋2𝑖−1). 4𝑖𝑛/2−1
𝑖=0
By multiplying the X with Y, results
XY = ∑ (−2𝑋2𝑖+1 + 𝑋2𝑖 + 𝑋2𝑖−1). 4𝑖𝑛/2−1
𝑖=0
. 𝑌
From the above equation we portioned the bits of multipliers into substrings of
3 adjacent bits and each substring consists of(𝑋2𝑖+1, 𝑋2𝑖 , 𝑋2𝑖−1), each
corresponds to the value {−2, −1, 0, +1, +2}
The grouping of bits of multiplies can be done as
1 1 0 1 1 0 1 0 1 1
𝑋2𝑖+1 𝑋2𝑖 𝑋2𝑖−1 Possible values
0 0 0 0
0 0 1 +1
0 1 0 +1
0 1 1 +2
1 0 0 -2
1 0 1 -1
1 1 0 -1
1 1 1 0
Each three adjacent bits of the multiplier can generate a single encoding digit
having the possible values
{−2, −1, 0, +1, +2}. For the n × n multiplication, the number of bits for the
multiplier X is n, using the modified Booth encoding n/2 partial products are
produced.
Multiplication:
The partial product should be shifted two positions to the left of the partial product
due to the is multiplied by
Add a Zero to get 3 bit as a group
1 1 0 1 0
+1
-1
0 1 0 1 +1Y
1 0 1 1 -1Y
-------------------------------------------
1 1 0 0 0 1 (-15)
The operation is summerized as
Possible values Operation on Y
0 0*Y: Y => 0 => Product is zero
+1 +1*Y: Y => Product (Y is the product)
+2 +2*Y: One Shift Y to the left => Product
Architecture: Booth Multiplier
Multiplier cell
-1 -1*Y: Invert Y and add 1 to the LSB of Y => Product
-2 -2*Y: One Shift to the left for Y, then inverted Y & added 1 to
the LSB
Modified Booth Algorithm can be realized by using circuits consists of Booth
Encoder and multiplier array of partial product generator (Multiplexer) and
adders.
Booth Encoder:
On the left-hand side are the Booth encoders, one for each partial product.
They each have three bits of as input (with “0” to the right of the LSB).They are
also responsible for decoding and propagating the sign extension logic to the
next encoder. The array cells then generate the appropriate bit and add it to the
accumulated sum with their internal adders. In two’s complement format
inverting a number consists of flipping all bits and adding one. The “ADD” cell
generates the 1 if required.
Multiplier cell:
The cell consists of two components, a multiplexer to generate the partial product
bit (PP-MUX) and a full adder (FA) or half adder (HA) to add this bit with the
previous sum.
The multiplier cell represents one bit in a partial product and is responsible for:
1) Generating a bit of the correct partial product in response to the signals from
the Booth encoder;
2) Adding this bit to the cumulative sum propagated from the row above.
Adders:
In Booth Algorithm we use Half Adder and Full Adders along with the
Multiplexer. The FA is the most critical circuit in the multiplier as it ultimately
determines the speed and power dissipation of the array.
The Boolean Expression for Half Adder is
𝑆0 = A XOR B
𝐶0 = AB
The Boolean Expression for Full Adder is
𝑆0 = A XOR B XOR 𝐶𝑖𝑛
𝐶0 = A (~B) 𝐶𝑖𝑛+ ÃB𝐶𝑖𝑛+AB.
Ramavathu Sakru Naik,
NIT ROURKELA,
SILICON MENTOR.
Encoding Schemes for Multipliers

More Related Content

What's hot (20)

PDF
FYBSC IT Digital Electronics Unit I Chapter II Number System and Binary Arith...
Arti Parab Academics
 
PPT
arithmetic
SaifullahSiddiqui7
 
PPT
Decoder encoder
shahzad ali
 
PPTX
Basic electronics
Mantra VLSI
 
PPTX
Computer arithmetic
Balakrishna Chowdary
 
PPT
Binary parallel adder, decimal adder
shahzad ali
 
PPT
Finite word lenth effects
tamil arasan
 
PPTX
Chapter 5: Cominational Logic with MSI and LSI
Er. Nawaraj Bhandari
 
PPTX
Computer Arithmetic
Kamal Acharya
 
PPTX
Chapter 03 arithmetic for computers
Bảo Hoang
 
PDF
Chapter 01 Basic Principles of Digital Systems
SSE_AndyLi
 
PDF
FYBSC IT Digital Electronics Unit III Chapter II Arithmetic Circuits
Arti Parab Academics
 
DOCX
Computer organization and architecture lab manual
Shankar Gangaju
 
PPTX
Combinational circuits
DrSonali Vyas
 
PPTX
Python PCEP Logic Bit Operations
IHTMINSTITUTE
 
PPTX
logical circuits substractors
Fâhém Ähmêd
 
PDF
Survey On Two-Term Dot Product Of Multiplier Using Floating Point
IRJET Journal
 
PPT
Digital logic design part1
Vaagdevi College of Engineering
 
PDF
Simulink4 beginners
sandeep2506
 
FYBSC IT Digital Electronics Unit I Chapter II Number System and Binary Arith...
Arti Parab Academics
 
arithmetic
SaifullahSiddiqui7
 
Decoder encoder
shahzad ali
 
Basic electronics
Mantra VLSI
 
Computer arithmetic
Balakrishna Chowdary
 
Binary parallel adder, decimal adder
shahzad ali
 
Finite word lenth effects
tamil arasan
 
Chapter 5: Cominational Logic with MSI and LSI
Er. Nawaraj Bhandari
 
Computer Arithmetic
Kamal Acharya
 
Chapter 03 arithmetic for computers
Bảo Hoang
 
Chapter 01 Basic Principles of Digital Systems
SSE_AndyLi
 
FYBSC IT Digital Electronics Unit III Chapter II Arithmetic Circuits
Arti Parab Academics
 
Computer organization and architecture lab manual
Shankar Gangaju
 
Combinational circuits
DrSonali Vyas
 
Python PCEP Logic Bit Operations
IHTMINSTITUTE
 
logical circuits substractors
Fâhém Ähmêd
 
Survey On Two-Term Dot Product Of Multiplier Using Floating Point
IRJET Journal
 
Digital logic design part1
Vaagdevi College of Engineering
 
Simulink4 beginners
sandeep2506
 

Similar to Encoding Schemes for Multipliers (20)

PDF
IRJET- Realization of Decimal Multiplication using Radix-16 Modified Booth En...
IRJET Journal
 
PPT
ece552_08_integer_multiply.ppt
ansariparveen06
 
PPT
ece552_08_integer_multiply.ppt
AnalBhandari
 
PPT
ece552_08_integer_multiply.ppt
AshokRachapalli1
 
PPT
ece552_08_integer_mccccccccccultiply.ppt
speedcomcyber25
 
PPT
integers multipliers and their functioning
HarshKumar915986
 
PDF
Ijetr011743
ER Publication.org
 
PDF
Booth multiplication
M Madan Gopal
 
PDF
Project on digital vlsi design
DINESH DEVIREDDY
 
PPTX
Multiplication algorithm, hardware and flowchart
Tanjarul Islam Mishu
 
PDF
EFFICIENT IMPLEMENTATION OF 16-BIT MULTIPLIER-ACCUMULATOR USING RADIX-2 MODIF...
VLSICS Design
 
PPTX
COA(Unit_3.pptx)
Thapar Institute
 
PDF
Design and Simulation of Radix-8 Booth Encoder Multiplier for Signed and Unsi...
ijsrd.com
 
PDF
International Journal of Engineering and Science Invention (IJESI)
inventionjournals
 
PDF
Hz3115131516
IJERA Editor
 
PDF
Hz3115131516
IJERA Editor
 
PDF
N akkk4lmealkkk3eqklaflerkpwoerkwflskkes
XA18PanktiKamleshPat
 
PDF
COMPUTER ORGANIZATION NOTES Unit 6
Dr.MAYA NAYAK
 
PDF
Ar32295299
IJERA Editor
 
PDF
IRJET - Design of a Low Power Serial- Parallel Multiplier with Low Transition...
IRJET Journal
 
IRJET- Realization of Decimal Multiplication using Radix-16 Modified Booth En...
IRJET Journal
 
ece552_08_integer_multiply.ppt
ansariparveen06
 
ece552_08_integer_multiply.ppt
AnalBhandari
 
ece552_08_integer_multiply.ppt
AshokRachapalli1
 
ece552_08_integer_mccccccccccultiply.ppt
speedcomcyber25
 
integers multipliers and their functioning
HarshKumar915986
 
Ijetr011743
ER Publication.org
 
Booth multiplication
M Madan Gopal
 
Project on digital vlsi design
DINESH DEVIREDDY
 
Multiplication algorithm, hardware and flowchart
Tanjarul Islam Mishu
 
EFFICIENT IMPLEMENTATION OF 16-BIT MULTIPLIER-ACCUMULATOR USING RADIX-2 MODIF...
VLSICS Design
 
COA(Unit_3.pptx)
Thapar Institute
 
Design and Simulation of Radix-8 Booth Encoder Multiplier for Signed and Unsi...
ijsrd.com
 
International Journal of Engineering and Science Invention (IJESI)
inventionjournals
 
Hz3115131516
IJERA Editor
 
Hz3115131516
IJERA Editor
 
N akkk4lmealkkk3eqklaflerkpwoerkwflskkes
XA18PanktiKamleshPat
 
COMPUTER ORGANIZATION NOTES Unit 6
Dr.MAYA NAYAK
 
Ar32295299
IJERA Editor
 
IRJET - Design of a Low Power Serial- Parallel Multiplier with Low Transition...
IRJET Journal
 
Ad

More from Silicon Mentor (16)

PPTX
Image Processing and Computer Vision
Silicon Mentor
 
PPTX
Signal Filtering
Silicon Mentor
 
PPTX
Implementation of DSP Algorithms on FPGA
Silicon Mentor
 
PPTX
High Performance FPGA Based Decimal-to-Binary Conversion Schemes
Silicon Mentor
 
PPTX
Low Power Design Approach in VLSI
Silicon Mentor
 
DOCX
Floating Point Unit (FPU)
Silicon Mentor
 
DOC
Introduction to Support Vector Machines
Silicon Mentor
 
PDF
Design and Implementation of Single Precision Pipelined Floating Point Co-Pro...
Silicon Mentor
 
PPTX
Analog design
Silicon Mentor
 
PDF
Matlab worshop
Silicon Mentor
 
PDF
Low power vlsi design workshop 1
Silicon Mentor
 
PDF
Hspice proposal workshop
Silicon Mentor
 
PDF
HDL workshop
Silicon Mentor
 
PPTX
Vlsi ieee projects
Silicon Mentor
 
PPTX
Vlsi ieee projects
Silicon Mentor
 
DOCX
IEEE based Research projects List for M.tech/PhD students
Silicon Mentor
 
Image Processing and Computer Vision
Silicon Mentor
 
Signal Filtering
Silicon Mentor
 
Implementation of DSP Algorithms on FPGA
Silicon Mentor
 
High Performance FPGA Based Decimal-to-Binary Conversion Schemes
Silicon Mentor
 
Low Power Design Approach in VLSI
Silicon Mentor
 
Floating Point Unit (FPU)
Silicon Mentor
 
Introduction to Support Vector Machines
Silicon Mentor
 
Design and Implementation of Single Precision Pipelined Floating Point Co-Pro...
Silicon Mentor
 
Analog design
Silicon Mentor
 
Matlab worshop
Silicon Mentor
 
Low power vlsi design workshop 1
Silicon Mentor
 
Hspice proposal workshop
Silicon Mentor
 
HDL workshop
Silicon Mentor
 
Vlsi ieee projects
Silicon Mentor
 
Vlsi ieee projects
Silicon Mentor
 
IEEE based Research projects List for M.tech/PhD students
Silicon Mentor
 
Ad

Recently uploaded (20)

PPTX
A PPT on Alfred Lord Tennyson's Ulysses.
Beena E S
 
PPTX
Explorando Recursos do Summer '25: Dicas Essenciais - 02
Mauricio Alexandre Silva
 
PPTX
HYDROCEPHALUS: NURSING MANAGEMENT .pptx
PRADEEP ABOTHU
 
PDF
community health nursing question paper 2.pdf
Prince kumar
 
PPTX
CONVULSIVE DISORDERS: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
PPTX
Presentation: Climate Citizenship Digital Education
Karl Donert
 
PDF
CEREBRAL PALSY: NURSING MANAGEMENT .pdf
PRADEEP ABOTHU
 
PPTX
Latest Features in Odoo 18 - Odoo slides
Celine George
 
PPTX
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
PDF
1, 2, 3… E MAIS UM CICLO CHEGA AO FIM!.pdf
Colégio Santa Teresinha
 
PPSX
Health Planning in india - Unit 03 - CHN 2 - GNM 3RD YEAR.ppsx
Priyanshu Anand
 
PDF
Federal dollars withheld by district, charter, grant recipient
Mebane Rash
 
PPTX
Views on Education of Indian Thinkers Mahatma Gandhi.pptx
ShrutiMahanta1
 
PPTX
Views on Education of Indian Thinkers J.Krishnamurthy..pptx
ShrutiMahanta1
 
PPTX
How to Manage Promotions in Odoo 18 Sales
Celine George
 
PPTX
HEAD INJURY IN CHILDREN: NURSING MANAGEMENGT.pptx
PRADEEP ABOTHU
 
PPTX
PPT on the Development of Education in the Victorian England
Beena E S
 
PPTX
LEGAL ASPECTS OF PSYCHIATRUC NURSING.pptx
PoojaSen20
 
PDF
CONCURSO DE POESIA “POETUFAS – PASSOS SUAVES PELO VERSO.pdf
Colégio Santa Teresinha
 
PDF
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - GLOBAL SUCCESS - CẢ NĂM - NĂM 2024 (VOCABULARY, ...
Nguyen Thanh Tu Collection
 
A PPT on Alfred Lord Tennyson's Ulysses.
Beena E S
 
Explorando Recursos do Summer '25: Dicas Essenciais - 02
Mauricio Alexandre Silva
 
HYDROCEPHALUS: NURSING MANAGEMENT .pptx
PRADEEP ABOTHU
 
community health nursing question paper 2.pdf
Prince kumar
 
CONVULSIVE DISORDERS: NURSING MANAGEMENT.pptx
PRADEEP ABOTHU
 
Presentation: Climate Citizenship Digital Education
Karl Donert
 
CEREBRAL PALSY: NURSING MANAGEMENT .pdf
PRADEEP ABOTHU
 
Latest Features in Odoo 18 - Odoo slides
Celine George
 
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
1, 2, 3… E MAIS UM CICLO CHEGA AO FIM!.pdf
Colégio Santa Teresinha
 
Health Planning in india - Unit 03 - CHN 2 - GNM 3RD YEAR.ppsx
Priyanshu Anand
 
Federal dollars withheld by district, charter, grant recipient
Mebane Rash
 
Views on Education of Indian Thinkers Mahatma Gandhi.pptx
ShrutiMahanta1
 
Views on Education of Indian Thinkers J.Krishnamurthy..pptx
ShrutiMahanta1
 
How to Manage Promotions in Odoo 18 Sales
Celine George
 
HEAD INJURY IN CHILDREN: NURSING MANAGEMENGT.pptx
PRADEEP ABOTHU
 
PPT on the Development of Education in the Victorian England
Beena E S
 
LEGAL ASPECTS OF PSYCHIATRUC NURSING.pptx
PoojaSen20
 
CONCURSO DE POESIA “POETUFAS – PASSOS SUAVES PELO VERSO.pdf
Colégio Santa Teresinha
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - GLOBAL SUCCESS - CẢ NĂM - NĂM 2024 (VOCABULARY, ...
Nguyen Thanh Tu Collection
 

Encoding Schemes for Multipliers

  • 1. Encoding Schemes for Multipliers Hardware multiplication is performed in the same way multiplication done by hand, first step is to partialized the products are computed then shifted appropriately and summed. Normal multiplication Process: The simplest multiplication operation is to directly calculate the product of two numbers by hand. This procedure can be divided into three steps: 1. Partial product generation 2. Partial product reduction 3. Addition. Let us calculate the product of 2’s complement of two numbers 1101(-3) and 5 (0101), when computing the two binary numbers product we get the result 1 1 0 1 Multiplicand x 0 1 0 1 Multiplier ------------------------ 1 1 1 1 1 1 0 1 PP1 0 0 0 0 0 0 0 PP2 1 1 1 1 0 1 PP3 + 0 0 0 0 0 PP4 ------------------------------------ 1 1 1 1 1 0 0 0 1 = −15 Product Discard this bit From the above we say that 1101 is multiplicand and 0101 is multiplier. The intermediate products are partial products. The final result is product (-15). When this method is processed in hardware, the operation is to take one of the multiplier bits at a time from right to left, multiplying the multiplicand by the single bit of the multiplier and shifting the intermediate product one position to the left of the earlier intermediate products. All the bits of the partial products in each column are added to obtain two bits: sum and carry. Finally, the sum and carry bits in each column have to be summed. The two rows before the product are called sum and carry bits.
  • 2. 1 1 0 1 Multiplicand x 0 1 0 1 Multiplier ------------------------ 1 1 1 1 1 1 0 1 PP1 0 0 0 0 0 0 0 PP2 1 1 1 1 0 1 PP3 + 0 0 0 0 0 PP4 ------------------------------------ 0 0 0 0 1 0 0 1 Sum bit 1 1 1 1 0 1 0 0 0 Carry bit ______________________________ 1 1 1 1 1 0 0 0 1 = −15 Product Advantage: In this method the partial product circuit is simple and easy to implement. Therefore, is is suitable for the implementation of small multipliers. Disadvantage: This method is not able to efficiently handle the sign extension and it generates a number of partial products as many as the number of bits of the multiplier, which results in many adders needed so that the area and power consumption increase. This method is not applicable for large multipliers. Booths algorithm:- This algorithm will be slow if there are many partial products because the output must wait until each sum is calculated and performed. As speed is main important aspect while calculating the multiplication. By using the Booths algorithm, we can maximize the speed. In Booths algorithm, speed can be maximized by reducing the partial products to half. The adder circuits in Booth algorithm provide the advantage in maximizing the speed. ALU implements Booth algorithm to multiply binary number. ALU cannot simply multiply binary number as it can do only addition, subtraction and shifting. Working Principle:- Accumulator Multiplier Q Q-1 Multiplicand Action 0000 Step1 0000 0010 0001 0 0 0110 2’s complement of 0110 Shifting
  • 3. 1010 0000 Step 2 +1010 1010 1101 Step 3 0001 0000 0 1 0110 2’s complement of 0110 1010 Subtraction shifting 1101 Step 4 +0110 0011 0001 Step 5 0000 1000 1 0 0110 Addition Shifting 0000 Step 6 1100 0 Shifting The operation of Booth encoding consists of two major steps: the first one is to take one bit of the multiplier, and then to decide whether to add the multiplicand according to the current and previous bits of the multiplier. Initially accumulator start with 0000 and we will perform shift that is arthimetic shift then we get first bit of A and the copy of first bit A and for the remaining positions we get from the second position of A. The left bit in A is shifted to Q and bits of Q is placed after it. The bit in Q is shifted to Q-1. Initially Q-1 will be 0. Then we will compare LSB Multiplier, based on this comparision we will perform the addition, subtraction and shifting. Based on this comparision we will perform the action on Accumulator and multiplicand. In the above table we multiplied 0010 and 0110 as an example and the result will be combination of both Accumulator and multiplier i.e 0000 1100(12). Q0 Q-1 Action on A and multiplicand 0 0 Shifting 0 1 Adding 1 0 Subtracting 1 1 Shifting
  • 4. Modified Booth Algorithm: The encoding method is widely used to generate the partial products for the implementation of large multipliers. It adopts parallel encoding scheme. Modified Booth Algorithm can be realized by using circuits consists of Booth Encoder and multiplier array of partial product generator (Multiplexer) and adders. Booth Encoder: It implements Booth Algorithm encoding. Basic Principle:- The basic principle in modified Booth Algorithm is, consider X and Y are two fixed-point two’s complement numbers, where X is multiplier and Y is multiplicand both having same n bits. X can be represented as X = −𝑋 𝑛−12 𝑛−1 + ∑ 𝑋𝑖2𝑖𝑛−2 𝑖=0 = ∑ (−𝑋2𝑖−1 + 𝑋2𝑖 + 𝑋2𝑖−1). 22𝑖𝑛/2−1 𝑖=0 = ∑ (−2𝑋2𝑖+1 + 𝑋2𝑖 + 𝑋2𝑖−1). 4𝑖𝑛/2−1 𝑖=0 By multiplying the X with Y, results XY = ∑ (−2𝑋2𝑖+1 + 𝑋2𝑖 + 𝑋2𝑖−1). 4𝑖𝑛/2−1 𝑖=0 . 𝑌 From the above equation we portioned the bits of multipliers into substrings of 3 adjacent bits and each substring consists of(𝑋2𝑖+1, 𝑋2𝑖 , 𝑋2𝑖−1), each corresponds to the value {−2, −1, 0, +1, +2} The grouping of bits of multiplies can be done as 1 1 0 1 1 0 1 0 1 1
  • 5. 𝑋2𝑖+1 𝑋2𝑖 𝑋2𝑖−1 Possible values 0 0 0 0 0 0 1 +1 0 1 0 +1 0 1 1 +2 1 0 0 -2 1 0 1 -1 1 1 0 -1 1 1 1 0 Each three adjacent bits of the multiplier can generate a single encoding digit having the possible values {−2, −1, 0, +1, +2}. For the n × n multiplication, the number of bits for the multiplier X is n, using the modified Booth encoding n/2 partial products are produced. Multiplication: The partial product should be shifted two positions to the left of the partial product due to the is multiplied by Add a Zero to get 3 bit as a group 1 1 0 1 0 +1 -1 0 1 0 1 +1Y 1 0 1 1 -1Y ------------------------------------------- 1 1 0 0 0 1 (-15) The operation is summerized as Possible values Operation on Y 0 0*Y: Y => 0 => Product is zero +1 +1*Y: Y => Product (Y is the product) +2 +2*Y: One Shift Y to the left => Product
  • 6. Architecture: Booth Multiplier Multiplier cell -1 -1*Y: Invert Y and add 1 to the LSB of Y => Product -2 -2*Y: One Shift to the left for Y, then inverted Y & added 1 to the LSB
  • 7. Modified Booth Algorithm can be realized by using circuits consists of Booth Encoder and multiplier array of partial product generator (Multiplexer) and adders. Booth Encoder: On the left-hand side are the Booth encoders, one for each partial product. They each have three bits of as input (with “0” to the right of the LSB).They are also responsible for decoding and propagating the sign extension logic to the next encoder. The array cells then generate the appropriate bit and add it to the accumulated sum with their internal adders. In two’s complement format inverting a number consists of flipping all bits and adding one. The “ADD” cell generates the 1 if required. Multiplier cell: The cell consists of two components, a multiplexer to generate the partial product bit (PP-MUX) and a full adder (FA) or half adder (HA) to add this bit with the previous sum. The multiplier cell represents one bit in a partial product and is responsible for: 1) Generating a bit of the correct partial product in response to the signals from the Booth encoder; 2) Adding this bit to the cumulative sum propagated from the row above. Adders: In Booth Algorithm we use Half Adder and Full Adders along with the Multiplexer. The FA is the most critical circuit in the multiplier as it ultimately determines the speed and power dissipation of the array. The Boolean Expression for Half Adder is 𝑆0 = A XOR B 𝐶0 = AB The Boolean Expression for Full Adder is 𝑆0 = A XOR B XOR 𝐶𝑖𝑛 𝐶0 = A (~B) 𝐶𝑖𝑛+ ÃB𝐶𝑖𝑛+AB. Ramavathu Sakru Naik, NIT ROURKELA, SILICON MENTOR.