SlideShare una empresa de Scribd logo
1 de 5
Descargar para leer sin conexión
Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and
                  Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                   Vol. 2, Issue 5, September- October 2012, pp.2016-2020
Analysing Single Precision Floating Point Multiplier on Virtex 2P
                       Hardware Module
                               Pardeep Sharma, Gurpreet Singh
                       Assistant Professor, Department of Electronics & Communication,
                          Shaheed Bhagat Singh State Technical Campus, Ferozepur.


Abstract
         FPGAs are increasingly being used in the        The first part of the floating point multiplier is sign
high performance and scientific computing                which is determined by an exclusive OR function of
community to implement floating-point based              the two input signs. The second part is the exponent
hardware accelerators. We present FPGA                   which is calculated by adding the two input
floating-point multiplication. Such circuits can be      exponents. The third part is significand or mantissa
extremely useful in the FPGA implementation of           which is determined by multiplying the two input
complex systems that benefit from the                    significands each with a “1” concatenated to it. That
reprogramability and parallelism of the FPGA             “1” is the hidden bit. The main applications of
device but also require a general purpose                floating points today are in the field of medical
multiplier unit. While previous work has                 imaging, biometrics, motion capture and audio
considered circuits for low precision floating-          applications, including broadcast, conferencing,
point formats, we consider the implementation of         musical instruments and professional audio.
32-bit Single precision circuits that also provide
rounding and exception handling. We introduce            II. FPGA (FIELD PROGRAMMABLE GATE
an algorithm for multiplication and analyze its          ARRAY)
performance on Virtex2P hardware module at                         FPGA stands for Field Programmable Gate
speed grade -7.                                          Array. It is a semiconductor device containing
                                                         programmable logic components and programmable
Keywords - Floating point Multiplier, FPGAs,             interconnects. The programmable logic components
Xilinx and Virtex.                                       can be programmed to duplicate the functionality of
                                                         basic logic gates such as AND, OR, XOR, NOT or
I. INTRODUCTION                                          more complex combinational functions such as
          Many people consider floating-point            decoders or simple mathematical functions [3] [8].
arithmetic an esoteric subject. This is rather           In most FPGAs, these programmable logic
surprising because floating-point is ubiquitous in       components (or logic blocks, in FPGA parlance) also
computer systems. Almost every language has a            include memory elements, which may be simple flip
floating-point data type. Floating Point numbers         flops or more complete blocks of memories. A
represented in IEEE 754 format are used in most of       hierarchy of programmable interconnects allows the
the DSP Processors. Floating point arithmetic is         logic blocks of an FPGA to be interconnected as
useful in applications where a large dynamic range is    needed by the system designer, somewhat like a one-
required or in rapid prototyping applications where      chip programmable breadboard shows in figure 1.
the required number range has not been thoroughly        These logic blocks and interconnects can be
investigated. The floating Point Multiplier IP helps     programmed after the manufacturing process by the
designers to perform floating point Multiplication on    customer/designer     (hence    the   term "field
FPGA represented in IEEE 754 single precision            programmable", i.e. programmable in the field) so
floating point format. The single precision multiplier   that the FPGA can perform whatever logical function
is divided into three main parts corresponding to the    is needed [4].
three parts of the single precision format [1]. The
normalized floating point numbers have the form of
Z = (-   )*             * (1.M)            (1)

Where M = m22 2-1 + m21 2-2 + m20 2-3+…+ m1
2-22+ m0 2-23;
Bias = 127.




                                                                                               2016 | P a g e
Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and
                             Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                              Vol. 2, Issue 5, September- October 2012, pp.2016-2020
                                                                 Example:
                                                                 Step 1: Suppose a decimal number 129.85 is taken.
                                                                 Step 2: Convert it into binary number of 24 bits
                                                                 i.e.10000001.1101110000000000.
                                                                 Step 3: Shift the radix point to the left such that there
                                                                 will be only one bit which is left of the radix point
                                                                 and this bit must be 1. This bit is known as hidden
                                                                 bit.
                                                                 Step 4: Count the number of times radix points is
                                                                 shifted to the left say „x‟. The number which is
                                                                 formed after shifting of radix point is
                                                                 1.00000011101110000000000.              Here         x=7.
                                                                 Step 5: The number which is after the radix point is
                                                                 called mantissa which is of 23 bits and the whole
                                                                 number including hidden bit is called significand
                                                                 which is of 24 bits.
                                                                 Step 6: The value „x‟ must be added to 127 to get the
                                                                 original exponent value which is 127 + „x‟. In this
Figure 1: FPGA board                                             case exponent is 127 + 7 = 134 which is 10000110.
                   FPGAs are generally slower than their         Step 7: Number is +ve hence MSB of number is 0.
         application specific integrated circuit (ASIC)          Step 8: Now assemble result into 32 bit format in the
         counterparts, as they can't handle as complex a         form of sign, exponent and mantissa
         design, and draw more power. However, they have         01000011000000011101110000000000.
         several advantages such as a shorter time to market,    IV. MULTIPLICATION ALGORITHM FOR FLOATING
         ability to re-program in the field to fix bugs, and     POINT NUMBERS
         lower non recurring engineering cost costs. Vendors     As stated in the introduction, normalized floating
         can sell cheaper, less flexible versions of their       point numbers have the form of
         FPGAs which cannot be modified after the design is
         committed. The development of these designs is          Z = (- ) *               * (1.M)                (1)
         made on regular FPGAs and then migrated into a          Where M = m22 2-1 + m21 2-2 + m20 2-3+…+ m1
         fixed version that more resembles an ASIC.              2-22+ m0 2-23;
         Complex programmable logic devices, or CPLDs,           Bias = 127.
         are another alternative.                                To multiply two floating point numbers the
                                                                 following steps are taken [1] [6]:
        III. FLOATING POINT FORMAT                               Step 1: Multiplying the significand; i.e.
                 The advantage of floating point format over     (1.M1*1.M2)
        fixed point format is the range of numbers that can      Step 2: Placing the decimal point in the result
        be presented with the fixed number of bits. Floating     Step 3: Adding the exponents; i.e. (E1 + E2 – Bias)
        point number is composed of three fields and can be      Step 4: Obtaining the sign; i.e. s1 xor s2 and put the
        of 16, 18, 32 and 64 bit. Figure shows the IEEE          result together
        standard for floating point numbers [2].                 Step 5: Normalizing the result; i.e. obtaining 1 at the
                                                                 MSB of the results‟ significand shown in figure 3.
        31           30             22              0
         Sign          Exponent          Mantissa

        Figure 2: Standard for floating point numbers

                 1 bit sign of signifies whether the number is
        positive or negative. „1‟ indicates negative number
        and „0‟ indicate positive number. 8 bit exponent
        provides the exponent range from E (min) =-126 to
        E (max) =127. 23 bit mantissa signifies the fractional
        part of a number the mantissa must not be confused
        with the significand. The leading „1‟ in the             Figure 3: Normalization of sign, exponent and
        significant is made implicit [3].                        mantissa
                                                                          We present a floating point multiplier in
        A. Conversion of Decimal to Floating numbers             which rounding technique is implemented. Rounding
        Conversion of Decimal to Floating point 32 bit           support can be added as a separate unit that can be
        formats is explained in 1 & 2 example.


                                                                                                        2017 | P a g e
Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and
                  Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                   Vol. 2, Issue 5, September- October 2012, pp.2016-2020
accessed by the multiplier or by a floating point        EB = EB-true + bias And EA + EB = EA-true + EB-
adder, thus accommodating for more precision. The        true + 2 bias
multiplier structure; Exponents addition, Significand    So we should subtract the bias from the resultant
multiplication, and Result‟s sign calculation are        exponent otherwise the bias will be added twice.
independent shown in figure 5.4. The significand         Exponent Result = 10000111 (E1) +10000110 (E2)
multiplication is done on two 24 bit numbers and         – 01111111 (Bias 127) = 10001110
results in a 48 bit product, which we will call the      Eresult = 10001110
intermediate product (IP). The IP is represented as      Step 4: Obtaining the sign; i.e. s1 xor s2 and put the
(47 downto 0). The following sections detail each        result together
block of the floating point multiplier.                  0 Xor 0 = 0, so the sign of the number is +ve
                                                         0                                           10001110
                                                         10.011111001111110010011101000110100111100
                                                         1010000
                                                         Step 5: Normalizing the result
                                                         Normalize the result so that there is a 1 just before
                                                         the radix point (decimal point). Moving the radix
                                                         point one place to the left increments the exponent
                                                         by 1; moving one place to the right decrements the
                                                         exponent by 1
                                                         Before Normalizing
                                                          0                                          10001110
                                                         10.011111001111110010011101000110100111100
                                                         1010000
                                                         After normalization
                                                         0                                           10001111
                                                         1.0011111001111110010011101000110100111100
                                                         1010000 (including hidden bit)
                                                         Step 6: Rounding the result to the nearest number [3]
                                                         [5]
                                                         The mantissa bits are more than 23 bits (mantissa
                                                         available bits); rounding is needed. If we applied the
                                                         round to nearest rounding mode then the stored value
                                                         is:
                                                         01000111100111110011111100100111(After
Figure 4: Algorithm for floating point multiplication    rounding)
                                                         Step 7: Checking for underflow/overflow occurrence
A. An example of floating point multiplier with          There are four main cases that the exponent is
proposed algorithm                                       affected by normalization. It depends upon the
A: 0 10000111 10010101001110000101000 (32                Eresult that is calculated above [7] i.e.
bit)                                                     Table 1 Normalization effect on result‟s Exponent
B: 0 10000110 10010010011010111000010 (32                and Overflow/Underflow detection
bit)
To multiply A and B                                       Eresult         Category          Comments
Step 1: Multiplying the significand (including hidden     -125        ≤   Underflow         Can‟t           be
bit)                                                      Eresult < 0                       compensated
110010101001110000101000               (24       bit)*                                      during
110010010011010111000010 (24 bit)                                                           normalization
=10011111001111110010011101000110100111100
                                                                                            May     turn    to
1010000 (48 bit)
                                                                                            normalized
Step 2: Placing the decimal point in the result
                                                          Eresult = 0     Zero              number during
10.011111001111110010011101000110100111100
                                                                                            normalization (by
1010000
                                                                                            adding 1 to it)
Step 3: Adding the exponents; i.e. (E1 + E2 – Bias)
                                                                                            May result in
Adding of exponents =10000111 (E1) +10000110
                                                          1 < Eresult     Normalized        overflow during
(E2)
                                                          < 254           number            Normalization
The exponent representing the two numbers is
                                                          255      ≤      Overflow          Can‟t           be
already shifted/biased by the bias value (127) and is
                                                          Eresult                           compensated
not the true exponent; i.e. EA = EA-true + bias and




                                                                                              2018 | P a g e
Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and
                              Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                               Vol. 2, Issue 5, September- October 2012, pp.2016-2020
        There are some special conditions while              VI. SIMULATION       WAVEFORM   (USING
        implementing floating point multiplier which needs   MODEL SIM SIMULATOR)
        to be handle these are explained in table.               Case 1: When both the numbers are of same sign
        The flow graph of overall algorithm for floating         1st      input        no.      405.22         =
        point multiplier including rounding is shown in          01000011110010101001110000101000
        figure 5.                                                2nd       input       no.      201.21         =
                                                                 01000011010010010011010111000010
                                                                 Desired     output     no.     81534.31       =
                                                                 01000111100111110011111100100111




                                                                 Figure 6: Signals in Model Sim
                                                                 Simulation          result     81534.31        =
                                                                 01000111100111110011111100100111




        Figure 5: Floating point multiplier flow graph
        V. FINAL RESULTS/SYNTHESIS REPORT
        Results of Virtex2P FPGA (XC2VP2-FG256) Speed
        grade: -7                                                Figure 7: Simulation result for Floating point
                                                                 multiplier
        Table 2 Results/ Synthesis report
Seria    Logic Utilization Used           Avail     Utilizati    Case 2: When both the numbers are of different
l no.                                     able      on      in   sign
                                                    %age         1st      input      No.        721.51        =
1.       Number of Slices     663          1408     47           01000100001101000110000010100011
2.       Number of Slice      31           2816     1            2nd       input      No       -902.12        =
         Flip Flops                                              11000100011000011000011110101110
3.       Number of 4 input    1232         2816     43           Desired     output    no     -650888.6       =
         LUTs                                                    11001001000111101110100010001000
4.       Number         of    96           140      68
         bonded IOBs
5.       Number         of    1            16       6
         GCLKs
6.       Memory Usage         189172
                              kilobytes
7.       Combinational
         Delay
          With offset        61.459
          Without offset     ns
                              59.085                             Figure 8: Signals in Model Sim
                              ns                                 Simulation          result     -650888.6       =
                                                                 11001001000111101110100010001000



                                                                                                   2019 | P a g e
Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and
                     Applications (IJERA) ISSN: 2248-9622 www.ijera.com
                      Vol. 2, Issue 5, September- October 2012, pp.2016-2020




Figure 9: Simulation result for Floating point
multiplier

VII. CONCLUSIONS
        The floating point multiplier has been
designed, optimized and implemented on Virtex
module. From the final results it is concluded that
implementation of floating point multiplier on
Virtex2P (XC2VP2-FG256) Speed Grade: -7 causes
small combinational delay i.e. 61.459 ns and less
number of slices (utilization of area) i.e. 663.

ACKNOWLEDGMENT
        I would like to thanks the anonymous
reviewers for their insightful comments.

REFERENCES
  [1]      Al-Ashrafy M., Salem A. and Anis W., “An
           Efficient Implementation of Floating Point
           Multiplier”, 2011.
  [2]      Eldon A.J., Robertson C., “A Floating Point
           Format For Signal Processing”, pp. 717-
           720, 1982.
  [3]      Brisebarre N., Muller J.M., “Correctly
           Rounded Multiplication by Arbitrary
           Precision Constants”, Symposium on
           Computer Arithmetic, pp. 1-8, 2005.
  [4]      Enriquez A.B., and JONES K.R., “Design
           of a Multi-Mode Pipelined Multiplier for
           Floating-point Applications”, pp. 77-81,
           1991.
  [5]      Amaricai A., Vladutiu M., Udrescu M.,
           Prodan L. and Boncalo O., “Floating Point
           Multiplication Rounding Schemes for
           Interval Arithmetic”, pp. 19-24, 2008.
  [6]      Louca L., Cook T.A. and Johnson W.H.,
           “Implementation of IEEE Single Precision
           Floating Point Addition and Multiplication
           on FPGAs”, pp. 107-116, 1996.
  [7]      Awan M.A., Siddiqui M.R., “Resolving
           IEEE Floating-Point Error using Precision-
           Based Rounding Algorithm”, pp. 329-333,
           2005.
  [8]      Fagin B., Renard C., “Field Programmable
           Gate Arrays and Floating Point Arithmetic”,
           pp. 365-367, Vol. 2, No. 3, 1994.




                                                                                 2020 | P a g e

Más contenido relacionado

La actualidad más candente

An FPGA Based Floating Point Arithmetic Unit Using Verilog
An FPGA Based Floating Point Arithmetic Unit Using VerilogAn FPGA Based Floating Point Arithmetic Unit Using Verilog
An FPGA Based Floating Point Arithmetic Unit Using VerilogIJMTST Journal
 
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...vtunotesbysree
 
Multiplier and Accumulator Using Csla
Multiplier and Accumulator Using CslaMultiplier and Accumulator Using Csla
Multiplier and Accumulator Using CslaIOSR Journals
 
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Www
D I G I T A L  I C  A P P L I C A T I O N S  J N T U  M O D E L  P A P E R{WwwD I G I T A L  I C  A P P L I C A T I O N S  J N T U  M O D E L  P A P E R{Www
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Wwwguest3f9c6b
 
Reed_Solomon_Implementation
Reed_Solomon_ImplementationReed_Solomon_Implementation
Reed_Solomon_Implementationramya c b
 
Design and Implementation of High Speed Area Efficient Double Precision Float...
Design and Implementation of High Speed Area Efficient Double Precision Float...Design and Implementation of High Speed Area Efficient Double Precision Float...
Design and Implementation of High Speed Area Efficient Double Precision Float...IOSR Journals
 
FPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagFPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagIJERA Editor
 
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...An Efficient Design for Data Encryption and Decryption using Reconfigurable R...
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...IRJET Journal
 
Chapter 05 computer arithmetic
Chapter 05 computer arithmeticChapter 05 computer arithmetic
Chapter 05 computer arithmeticIIUI
 
A review on reversible logic gates and their implementation
A review on reversible logic gates and their implementationA review on reversible logic gates and their implementation
A review on reversible logic gates and their implementationDebraj Maji
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 

La actualidad más candente (15)

An FPGA Based Floating Point Arithmetic Unit Using Verilog
An FPGA Based Floating Point Arithmetic Unit Using VerilogAn FPGA Based Floating Point Arithmetic Unit Using Verilog
An FPGA Based Floating Point Arithmetic Unit Using Verilog
 
Fl2510031009
Fl2510031009Fl2510031009
Fl2510031009
 
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...
SOLUTION MANUAL OF COMPUTER ORGANIZATION BY CARL HAMACHER, ZVONKO VRANESIC & ...
 
Multiplier and Accumulator Using Csla
Multiplier and Accumulator Using CslaMultiplier and Accumulator Using Csla
Multiplier and Accumulator Using Csla
 
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Www
D I G I T A L  I C  A P P L I C A T I O N S  J N T U  M O D E L  P A P E R{WwwD I G I T A L  I C  A P P L I C A T I O N S  J N T U  M O D E L  P A P E R{Www
D I G I T A L I C A P P L I C A T I O N S J N T U M O D E L P A P E R{Www
 
Reed_Solomon_Implementation
Reed_Solomon_ImplementationReed_Solomon_Implementation
Reed_Solomon_Implementation
 
Design and Implementation of High Speed Area Efficient Double Precision Float...
Design and Implementation of High Speed Area Efficient Double Precision Float...Design and Implementation of High Speed Area Efficient Double Precision Float...
Design and Implementation of High Speed Area Efficient Double Precision Float...
 
FPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID TagFPGA Based Decimal Matrix Code for Passive RFID Tag
FPGA Based Decimal Matrix Code for Passive RFID Tag
 
Research Paper
Research PaperResearch Paper
Research Paper
 
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...An Efficient Design for Data Encryption and Decryption using Reconfigurable R...
An Efficient Design for Data Encryption and Decryption using Reconfigurable R...
 
Chapter 05 computer arithmetic
Chapter 05 computer arithmeticChapter 05 computer arithmetic
Chapter 05 computer arithmetic
 
H010414651
H010414651H010414651
H010414651
 
A review on reversible logic gates and their implementation
A review on reversible logic gates and their implementationA review on reversible logic gates and their implementation
A review on reversible logic gates and their implementation
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
Js2517181724
Js2517181724Js2517181724
Js2517181724
 

Destacado

Signos De PuntuacióN
Signos De PuntuacióNSignos De PuntuacióN
Signos De PuntuacióNgiselly
 
Ordenamiento Territorial Bosque Nativos En San Luis[1]
Ordenamiento Territorial Bosque Nativos En San Luis[1]Ordenamiento Territorial Bosque Nativos En San Luis[1]
Ordenamiento Territorial Bosque Nativos En San Luis[1]guest1d75043
 
Educar -rubem_alves
Educar  -rubem_alvesEducar  -rubem_alves
Educar -rubem_alveschiquetts
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 

Destacado (10)

Aula 07
Aula 07Aula 07
Aula 07
 
Egiptopp
EgiptoppEgiptopp
Egiptopp
 
Signos De PuntuacióN
Signos De PuntuacióNSignos De PuntuacióN
Signos De PuntuacióN
 
Ordenamiento Territorial Bosque Nativos En San Luis[1]
Ordenamiento Territorial Bosque Nativos En San Luis[1]Ordenamiento Territorial Bosque Nativos En San Luis[1]
Ordenamiento Territorial Bosque Nativos En San Luis[1]
 
Educar -rubem_alves
Educar  -rubem_alvesEducar  -rubem_alves
Educar -rubem_alves
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Similar a Lp2520162020

DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...
DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...
DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...jmicro
 
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...iosrjce
 
A High Speed Transposed Form FIR Filter Using Floating Point Dadda Multiplier
A High Speed Transposed Form FIR Filter Using Floating Point Dadda MultiplierA High Speed Transposed Form FIR Filter Using Floating Point Dadda Multiplier
A High Speed Transposed Form FIR Filter Using Floating Point Dadda MultiplierIJRES Journal
 
Ebc7fc8ba9801f03982acec158fa751744ca copie
Ebc7fc8ba9801f03982acec158fa751744ca   copieEbc7fc8ba9801f03982acec158fa751744ca   copie
Ebc7fc8ba9801f03982acec158fa751744ca copieSourour Kanzari
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
Design and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaDesign and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaVLSICS Design
 
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...IDES Editor
 
Survey On Two-Term Dot Product Of Multiplier Using Floating Point
Survey On Two-Term Dot Product Of Multiplier Using Floating PointSurvey On Two-Term Dot Product Of Multiplier Using Floating Point
Survey On Two-Term Dot Product Of Multiplier Using Floating PointIRJET Journal
 
3.Floating Point arith.ppt
3.Floating Point arith.ppt3.Floating Point arith.ppt
3.Floating Point arith.pptRavikumarR77
 

Similar a Lp2520162020 (20)

DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...
DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...
DESIGN OF DOUBLE PRECISION FLOATING POINT MULTIPLICATION ALGORITHM WITH VECTO...
 
Gr2512211225
Gr2512211225Gr2512211225
Gr2512211225
 
Gr2512211225
Gr2512211225Gr2512211225
Gr2512211225
 
At36276280
At36276280At36276280
At36276280
 
Final
FinalFinal
Final
 
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...
Implementation of 32 Bit Binary Floating Point Adder Using IEEE 754 Single Pr...
 
Jz2517611766
Jz2517611766Jz2517611766
Jz2517611766
 
Js2517181724
Js2517181724Js2517181724
Js2517181724
 
A High Speed Transposed Form FIR Filter Using Floating Point Dadda Multiplier
A High Speed Transposed Form FIR Filter Using Floating Point Dadda MultiplierA High Speed Transposed Form FIR Filter Using Floating Point Dadda Multiplier
A High Speed Transposed Form FIR Filter Using Floating Point Dadda Multiplier
 
Ap32283286
Ap32283286Ap32283286
Ap32283286
 
C programming part2
C programming part2C programming part2
C programming part2
 
C programming part2
C programming part2C programming part2
C programming part2
 
C programming part2
C programming part2C programming part2
C programming part2
 
Ebc7fc8ba9801f03982acec158fa751744ca copie
Ebc7fc8ba9801f03982acec158fa751744ca   copieEbc7fc8ba9801f03982acec158fa751744ca   copie
Ebc7fc8ba9801f03982acec158fa751744ca copie
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Design and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpgaDesign and implementation of complex floating point processor using fpga
Design and implementation of complex floating point processor using fpga
 
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...
An Area Efficient Vedic-Wallace based Variable Precision Hardware Multiplier ...
 
Survey On Two-Term Dot Product Of Multiplier Using Floating Point
Survey On Two-Term Dot Product Of Multiplier Using Floating PointSurvey On Two-Term Dot Product Of Multiplier Using Floating Point
Survey On Two-Term Dot Product Of Multiplier Using Floating Point
 
3.Floating Point arith.ppt
3.Floating Point arith.ppt3.Floating Point arith.ppt
3.Floating Point arith.ppt
 
I43024751
I43024751I43024751
I43024751
 

Último

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Último (20)

SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Lp2520162020

  • 1. Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 5, September- October 2012, pp.2016-2020 Analysing Single Precision Floating Point Multiplier on Virtex 2P Hardware Module Pardeep Sharma, Gurpreet Singh Assistant Professor, Department of Electronics & Communication, Shaheed Bhagat Singh State Technical Campus, Ferozepur. Abstract FPGAs are increasingly being used in the The first part of the floating point multiplier is sign high performance and scientific computing which is determined by an exclusive OR function of community to implement floating-point based the two input signs. The second part is the exponent hardware accelerators. We present FPGA which is calculated by adding the two input floating-point multiplication. Such circuits can be exponents. The third part is significand or mantissa extremely useful in the FPGA implementation of which is determined by multiplying the two input complex systems that benefit from the significands each with a “1” concatenated to it. That reprogramability and parallelism of the FPGA “1” is the hidden bit. The main applications of device but also require a general purpose floating points today are in the field of medical multiplier unit. While previous work has imaging, biometrics, motion capture and audio considered circuits for low precision floating- applications, including broadcast, conferencing, point formats, we consider the implementation of musical instruments and professional audio. 32-bit Single precision circuits that also provide rounding and exception handling. We introduce II. FPGA (FIELD PROGRAMMABLE GATE an algorithm for multiplication and analyze its ARRAY) performance on Virtex2P hardware module at FPGA stands for Field Programmable Gate speed grade -7. Array. It is a semiconductor device containing programmable logic components and programmable Keywords - Floating point Multiplier, FPGAs, interconnects. The programmable logic components Xilinx and Virtex. can be programmed to duplicate the functionality of basic logic gates such as AND, OR, XOR, NOT or I. INTRODUCTION more complex combinational functions such as Many people consider floating-point decoders or simple mathematical functions [3] [8]. arithmetic an esoteric subject. This is rather In most FPGAs, these programmable logic surprising because floating-point is ubiquitous in components (or logic blocks, in FPGA parlance) also computer systems. Almost every language has a include memory elements, which may be simple flip floating-point data type. Floating Point numbers flops or more complete blocks of memories. A represented in IEEE 754 format are used in most of hierarchy of programmable interconnects allows the the DSP Processors. Floating point arithmetic is logic blocks of an FPGA to be interconnected as useful in applications where a large dynamic range is needed by the system designer, somewhat like a one- required or in rapid prototyping applications where chip programmable breadboard shows in figure 1. the required number range has not been thoroughly These logic blocks and interconnects can be investigated. The floating Point Multiplier IP helps programmed after the manufacturing process by the designers to perform floating point Multiplication on customer/designer (hence the term "field FPGA represented in IEEE 754 single precision programmable", i.e. programmable in the field) so floating point format. The single precision multiplier that the FPGA can perform whatever logical function is divided into three main parts corresponding to the is needed [4]. three parts of the single precision format [1]. The normalized floating point numbers have the form of Z = (- )* * (1.M) (1) Where M = m22 2-1 + m21 2-2 + m20 2-3+…+ m1 2-22+ m0 2-23; Bias = 127. 2016 | P a g e
  • 2. Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 5, September- October 2012, pp.2016-2020 Example: Step 1: Suppose a decimal number 129.85 is taken. Step 2: Convert it into binary number of 24 bits i.e.10000001.1101110000000000. Step 3: Shift the radix point to the left such that there will be only one bit which is left of the radix point and this bit must be 1. This bit is known as hidden bit. Step 4: Count the number of times radix points is shifted to the left say „x‟. The number which is formed after shifting of radix point is 1.00000011101110000000000. Here x=7. Step 5: The number which is after the radix point is called mantissa which is of 23 bits and the whole number including hidden bit is called significand which is of 24 bits. Step 6: The value „x‟ must be added to 127 to get the original exponent value which is 127 + „x‟. In this Figure 1: FPGA board case exponent is 127 + 7 = 134 which is 10000110. FPGAs are generally slower than their Step 7: Number is +ve hence MSB of number is 0. application specific integrated circuit (ASIC) Step 8: Now assemble result into 32 bit format in the counterparts, as they can't handle as complex a form of sign, exponent and mantissa design, and draw more power. However, they have 01000011000000011101110000000000. several advantages such as a shorter time to market, IV. MULTIPLICATION ALGORITHM FOR FLOATING ability to re-program in the field to fix bugs, and POINT NUMBERS lower non recurring engineering cost costs. Vendors As stated in the introduction, normalized floating can sell cheaper, less flexible versions of their point numbers have the form of FPGAs which cannot be modified after the design is committed. The development of these designs is Z = (- ) * * (1.M) (1) made on regular FPGAs and then migrated into a Where M = m22 2-1 + m21 2-2 + m20 2-3+…+ m1 fixed version that more resembles an ASIC. 2-22+ m0 2-23; Complex programmable logic devices, or CPLDs, Bias = 127. are another alternative. To multiply two floating point numbers the following steps are taken [1] [6]: III. FLOATING POINT FORMAT Step 1: Multiplying the significand; i.e. The advantage of floating point format over (1.M1*1.M2) fixed point format is the range of numbers that can Step 2: Placing the decimal point in the result be presented with the fixed number of bits. Floating Step 3: Adding the exponents; i.e. (E1 + E2 – Bias) point number is composed of three fields and can be Step 4: Obtaining the sign; i.e. s1 xor s2 and put the of 16, 18, 32 and 64 bit. Figure shows the IEEE result together standard for floating point numbers [2]. Step 5: Normalizing the result; i.e. obtaining 1 at the MSB of the results‟ significand shown in figure 3. 31 30 22 0 Sign Exponent Mantissa Figure 2: Standard for floating point numbers 1 bit sign of signifies whether the number is positive or negative. „1‟ indicates negative number and „0‟ indicate positive number. 8 bit exponent provides the exponent range from E (min) =-126 to E (max) =127. 23 bit mantissa signifies the fractional part of a number the mantissa must not be confused with the significand. The leading „1‟ in the Figure 3: Normalization of sign, exponent and significant is made implicit [3]. mantissa We present a floating point multiplier in A. Conversion of Decimal to Floating numbers which rounding technique is implemented. Rounding Conversion of Decimal to Floating point 32 bit support can be added as a separate unit that can be formats is explained in 1 & 2 example. 2017 | P a g e
  • 3. Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 5, September- October 2012, pp.2016-2020 accessed by the multiplier or by a floating point EB = EB-true + bias And EA + EB = EA-true + EB- adder, thus accommodating for more precision. The true + 2 bias multiplier structure; Exponents addition, Significand So we should subtract the bias from the resultant multiplication, and Result‟s sign calculation are exponent otherwise the bias will be added twice. independent shown in figure 5.4. The significand Exponent Result = 10000111 (E1) +10000110 (E2) multiplication is done on two 24 bit numbers and – 01111111 (Bias 127) = 10001110 results in a 48 bit product, which we will call the Eresult = 10001110 intermediate product (IP). The IP is represented as Step 4: Obtaining the sign; i.e. s1 xor s2 and put the (47 downto 0). The following sections detail each result together block of the floating point multiplier. 0 Xor 0 = 0, so the sign of the number is +ve 0 10001110 10.011111001111110010011101000110100111100 1010000 Step 5: Normalizing the result Normalize the result so that there is a 1 just before the radix point (decimal point). Moving the radix point one place to the left increments the exponent by 1; moving one place to the right decrements the exponent by 1 Before Normalizing 0 10001110 10.011111001111110010011101000110100111100 1010000 After normalization 0 10001111 1.0011111001111110010011101000110100111100 1010000 (including hidden bit) Step 6: Rounding the result to the nearest number [3] [5] The mantissa bits are more than 23 bits (mantissa available bits); rounding is needed. If we applied the round to nearest rounding mode then the stored value is: 01000111100111110011111100100111(After Figure 4: Algorithm for floating point multiplication rounding) Step 7: Checking for underflow/overflow occurrence A. An example of floating point multiplier with There are four main cases that the exponent is proposed algorithm affected by normalization. It depends upon the A: 0 10000111 10010101001110000101000 (32 Eresult that is calculated above [7] i.e. bit) Table 1 Normalization effect on result‟s Exponent B: 0 10000110 10010010011010111000010 (32 and Overflow/Underflow detection bit) To multiply A and B Eresult Category Comments Step 1: Multiplying the significand (including hidden -125 ≤ Underflow Can‟t be bit) Eresult < 0 compensated 110010101001110000101000 (24 bit)* during 110010010011010111000010 (24 bit) normalization =10011111001111110010011101000110100111100 May turn to 1010000 (48 bit) normalized Step 2: Placing the decimal point in the result Eresult = 0 Zero number during 10.011111001111110010011101000110100111100 normalization (by 1010000 adding 1 to it) Step 3: Adding the exponents; i.e. (E1 + E2 – Bias) May result in Adding of exponents =10000111 (E1) +10000110 1 < Eresult Normalized overflow during (E2) < 254 number Normalization The exponent representing the two numbers is 255 ≤ Overflow Can‟t be already shifted/biased by the bias value (127) and is Eresult compensated not the true exponent; i.e. EA = EA-true + bias and 2018 | P a g e
  • 4. Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 5, September- October 2012, pp.2016-2020 There are some special conditions while VI. SIMULATION WAVEFORM (USING implementing floating point multiplier which needs MODEL SIM SIMULATOR) to be handle these are explained in table. Case 1: When both the numbers are of same sign The flow graph of overall algorithm for floating 1st input no. 405.22 = point multiplier including rounding is shown in 01000011110010101001110000101000 figure 5. 2nd input no. 201.21 = 01000011010010010011010111000010 Desired output no. 81534.31 = 01000111100111110011111100100111 Figure 6: Signals in Model Sim Simulation result 81534.31 = 01000111100111110011111100100111 Figure 5: Floating point multiplier flow graph V. FINAL RESULTS/SYNTHESIS REPORT Results of Virtex2P FPGA (XC2VP2-FG256) Speed grade: -7 Figure 7: Simulation result for Floating point multiplier Table 2 Results/ Synthesis report Seria Logic Utilization Used Avail Utilizati Case 2: When both the numbers are of different l no. able on in sign %age 1st input No. 721.51 = 1. Number of Slices 663 1408 47 01000100001101000110000010100011 2. Number of Slice 31 2816 1 2nd input No -902.12 = Flip Flops 11000100011000011000011110101110 3. Number of 4 input 1232 2816 43 Desired output no -650888.6 = LUTs 11001001000111101110100010001000 4. Number of 96 140 68 bonded IOBs 5. Number of 1 16 6 GCLKs 6. Memory Usage 189172 kilobytes 7. Combinational Delay  With offset 61.459  Without offset ns 59.085 Figure 8: Signals in Model Sim ns Simulation result -650888.6 = 11001001000111101110100010001000 2019 | P a g e
  • 5. Pardeep Sharma, Gurpreet Singh / International Journal of Engineering Research and Applications (IJERA) ISSN: 2248-9622 www.ijera.com Vol. 2, Issue 5, September- October 2012, pp.2016-2020 Figure 9: Simulation result for Floating point multiplier VII. CONCLUSIONS The floating point multiplier has been designed, optimized and implemented on Virtex module. From the final results it is concluded that implementation of floating point multiplier on Virtex2P (XC2VP2-FG256) Speed Grade: -7 causes small combinational delay i.e. 61.459 ns and less number of slices (utilization of area) i.e. 663. ACKNOWLEDGMENT I would like to thanks the anonymous reviewers for their insightful comments. REFERENCES [1] Al-Ashrafy M., Salem A. and Anis W., “An Efficient Implementation of Floating Point Multiplier”, 2011. [2] Eldon A.J., Robertson C., “A Floating Point Format For Signal Processing”, pp. 717- 720, 1982. [3] Brisebarre N., Muller J.M., “Correctly Rounded Multiplication by Arbitrary Precision Constants”, Symposium on Computer Arithmetic, pp. 1-8, 2005. [4] Enriquez A.B., and JONES K.R., “Design of a Multi-Mode Pipelined Multiplier for Floating-point Applications”, pp. 77-81, 1991. [5] Amaricai A., Vladutiu M., Udrescu M., Prodan L. and Boncalo O., “Floating Point Multiplication Rounding Schemes for Interval Arithmetic”, pp. 19-24, 2008. [6] Louca L., Cook T.A. and Johnson W.H., “Implementation of IEEE Single Precision Floating Point Addition and Multiplication on FPGAs”, pp. 107-116, 1996. [7] Awan M.A., Siddiqui M.R., “Resolving IEEE Floating-Point Error using Precision- Based Rounding Algorithm”, pp. 329-333, 2005. [8] Fagin B., Renard C., “Field Programmable Gate Arrays and Floating Point Arithmetic”, pp. 365-367, Vol. 2, No. 3, 1994. 2020 | P a g e