











Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Various binary multiplication algorithms, including shift and add (right and left), radix-4, and booth recoding. Topics cover sequential multiplication of 2's-complement numbers, high-radix shift/add algorithms, and radix-4 multiplier designs. Examples and formulas are provided.
Typology: Study notes
1 / 19
This page cannot be seen from the preview
Don't miss anything!












Area optimization for the sequential shift-and-add multiplier with the right-shift algorithm
Left-shift algorithm
p = a ⋅^ x = x 0 a2^0 + x 1 a2^1 + x 2 a2^2 + … + xk-1a2k-
= (...((0⋅2 + xk-1a)⋅2 + xk-2a)⋅2 + ... + x 1 a)⋅2 + x 0 a=
k times
p(0)^ = 0
p = p(k)
p(j+1)^ = (p(j)^ ⋅2 + xk-1-ja) j=0..k-
Right-shift algorithm: multiply-add
= (...((y2k^ + x 0 a2k)/2 + x 1 a2k)/2 + ... + xk-1a2k)/2 =
k times
p(0)^ = y2k
p = p(k)
p(j+1)^ = (p(j)^ + xj a 2k) / 2 j=0..k-
= y + x 0 a2^0 + x 1 a2^1 + x 2 a2^2 + … + xk-1a2k-1^ = y + a ⋅^ x
p(0)^ = y2-k
p = p(k)
p(j+1)^ = (p(j)^ ⋅2 + xk-(j+1)a) j=0..k-
Left-shift algorithm: multiply-add
= (...((y2-k^ ⋅2 + xk-1a)⋅2 + xk-2a)⋅2 + ... + x 1 a)⋅2 + x 0 a =
k times
= y + xk-1a2k-1^ + xk-2a2k-2^ + … + x 1 a2^1 + x 0 a = y + a ⋅^ x
Sequential multiplication of 2’s-complement numbers with right shifts (positive multiplier)
Sequential multiplication of 2’s-complement numbers with right shifts (negative multiplier)
i=
k- p = a ⋅^ x
= x 0 ar^0 + x 1 a r^1 + x 2 a r^2 + … + xk-1a rk-
i=
k-
Right-shift high-radix algorithm
p = a ⋅^ x = x 0 ar^0 + x 1 ar^1 + x 2 ar^2 + … + xk-1ark-
= (...((0 + x 0 ark)/r + x 1 ark)/r + ... + xk-1ark)/r =
k times
p(0)^ = 0
p = p(k)
p(j+1)^ = (p(j)^ + xj a rk) / r j=0..k-
Left-shift high-radix algorithm
p = a ⋅^ x = x 0 ar^0 + x 1 ar^1 + x 2 ar^2 + … + xk-1ark-
= (...((0⋅r + xk-1a)⋅r + xk-2a)⋅r + ... + x 1 a)⋅r + x 0 a=
k times
p(0)^ = 0
p = p(k)
p(j+1)^ = (p(j)^ ⋅ r + xk-1-ja) j=0..k-
The multiple generation part of a radix- multiplier based on replacing 3 a with 4 a (carry into next higher radix-4 multiplier digit) and - a
j+1 j i
Example radix-4 multiplication with modified Booth’s recoding of the 2’s-complement multiplier
Radix-4 multiplication with a carry-save adder used to combine the cumulative partial product, xia , and 2 xi +1 a into two numbers