Primitive multiplication table based bcd multiplication

2
PMT BASED BCD MULTIPLICATION By Vitthal Jadhav Basic Term 1) Primitive Multiplication / Product: Multiplication of 2 ‘single digit number ’ in given base is called as primitive multiplication. Motivation Decimal Number system is used extensively in business, exchanging data, or in trade due to simplicity provided by positional system. In digital word there are only two logic i.e. High (1) and Low(0) . Digital computer uses binary number system. To perform multiplication on computer, operands are accepted as binary input from user , then binary multiplication is performed. However, Complexity of simple binary multiplication is proportional to square of no. of digit in number . i.e. T(n*n) = O(k 2 ) where k = no. of digit of operand n represented in base b = Log b (n) = Log (n) ÷ Log (b) ----------(1) According to equation (1), T(n*n) or number of primitive multiplication required to compute multiplication is inversely proportional to log of base (i.e. Log (b) ) . Therefore complexity of Decimal (BCD) multiplication is lower than Binary multiplication, provided operand in both multiplications is same. But in decimal number system we have to perform primitive multiplication frequently which decreases speed of multiplication. Speed can be increased by using memory to store primitive multiplication. Primitive multiplication is computed only once during design time and it is stored in special dedicated memory or ‘register set’ called as PMT (Primitive Multiplication Table) . Result of primitive multiplication can be directly accessed from PMT and used in multiplication. Thus it saves time required to compute primitive multiplication frequently. This approach can be called as “Compute design time, use runtime”. Primitive Multiplication Table (PMT) for BCD (Operand1 = smaller digit , operand2 = larger digit ) INDEX 0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 1 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 9 12 15 18 21 24 27 4 16 20 24 28 32 36 5 25 30 35 40 45 6 36 42 48 54 7 49 56 63 8 64 72 9 81 Larger Digit Smaller Digit

Transcript of Primitive multiplication table based bcd multiplication

Page 1: Primitive multiplication table based bcd multiplication

PMT BASED BCD MULTIPLICATION

By Vitthal Jadhav

Basic Term

1) Primitive Multiplication / Product:

Multiplication of 2 ‘single digit number ’ in given base is called as primitive multiplication.

Motivation

Decimal Number system is used extensively in business, exchanging data, or in trade due to simplicity

provided by positional system. In digital word there are only two logic i.e. High (1) and Low(0) . Digital computer

uses binary number system. To perform multiplication on computer, operands are accepted as binary input from

user , then binary multiplication is performed. However, Complexity of simple binary multiplication is proportional

to square of no. of digit in number .

i.e. T(n*n) = O(k2) where k = no. of digit of operand n represented in base b = Logb (n)

= Log (n) ÷ Log (b) ----------(1)

According to equation (1), T(n*n) or number of primitive multiplication required to compute

multiplication is inversely proportional to log of base (i.e. Log (b) ) .

Therefore complexity of Decimal (BCD) multiplication is lower than Binary multiplication, provided operand in

both multiplications is same. But in decimal number system we have to perform primitive multiplication frequently

which decreases speed of multiplication. Speed can be increased by using memory to store primitive

multiplication. Primitive multiplication is computed only once during design time and it is stored in

special dedicated memory or ‘register set’ called as PMT (Primitive Multiplication Table) . Result of

primitive multiplication can be directly accessed from PMT and used in multiplication. Thus it saves

time required to compute primitive multiplication frequently. This approach can be called as “Compute

design time, use runtime”.

Primitive Multiplication Table (PMT) for BCD

(Operand1 = smaller digit , operand2 = larger digit )

INDEX 0 1 2 3 4 5 6 7 8 9

0 0 0 0 0 0 0 0 0 0 0

1 1 2 3 4 5 6 7 8 9

2 4 6 8 10 12 14 16 18

3 9 12 15 18 21 24 27

4 16 20 24 28 32 36

5 25 30 35 40 45

6 36 42 48 54

7 49 56 63

8 64 72

9 81

Larger Digit

Smaller Digit

Page 2: Primitive multiplication table based bcd multiplication

Challenge

1) Circuit Design to access ‘primitive multiplication result’ from PMT efficiently.

Circuit design: Let input = I, smaller digit=sd larger digit=ld and sd*ld= T*10+U

Then T= I( ld, sd) i.e. T is function of ld and sd

Similarly, U= I(ld, sd)

Use above function to build truth table and design circuit accordingly.

Advantages

1) Many times, we are only interested in decimal result of computation. In such case, BCD multiplication is

useful. Unlike binary multiplication, it avoids redundant conversion of ‘decimal operand to binary

number’ and ‘binary result to decimal result’.

Decimal operand Decimal to Binary conversion Binary multiplier Binary

result Binary to Decimal conversion Decimal Result

Binary Multiplication (Decimal-binary inter conversion overhead)

2) Lower complexity

3) Multiplication, division etc operations are ‘base specific’. Many multiplications like 999*967,

99986*100012 etc. are easy in decimal number system but hard and time consuming to compute in binary

number system.

4) Vedic mathematics can be easily applied to decimal/BCD operand to reduce complexity of multiplication,

division and other operation.

Disadvantages:

1) Storing operand in BCD i.e. BCD operand requires more memory than binary operand

2) Additional memory or dedicated register set are required to store ‘primitive multiplication’.

3) More complex design.