SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Department of Electronics and
Telecommunication Engineering
A Seminar on
“Floating point arithmetic unit
Implemented on FPGA using VHDL”
Guided by
Prof. H. M. Raza
Brief outline:
IEEE 754 format
Floating point unit
VHDL
FPGA
EDA Tools and softwares
Design of arithmetic units
Conclusion
Introduction to Floating Point IEEE 754
Standard
 Established in 1985 by IEEE
It has mainly two format
• Single Precision (32-bit)
• Double Precision(64-bit)
IEEE 754 single precision format
𝑁 = (−1) 𝑆
1.M*2 𝐸−127
Mantissa (M)Mantissa (M)
Conversion Examples
Consider 9.5 is to be converted in standard IEEE754 format.
9.5 can be represented in binary as 1001.10
After normalization 1.00110*23
Biasing is to be done to exponent 1.00110*23+127
Similarly -12.076 can be represented as:
9.5 = 0 10000010 00110000000000000000000
-12.076 = 1 10000010 10000010011011101110101
Conversion of IEEE754 to decimal
1 1011 0110 01100000000000000000000
−𝟏 𝟏
× 𝟐 𝟏𝟎𝟏𝟏𝟎𝟏𝟏𝟎−𝟎𝟏𝟏𝟏𝟏𝟏𝟏𝟏
× 𝟏. 𝟎𝟏𝟏
= −𝟏. 𝟑𝟕𝟓 × 𝟐 𝟓𝟓
= −49539595901075456.0
= −4.9539595901075456 ×𝟏𝟎 𝟏𝟔
What is ALU?
It is Arithmetic and logical unit
In simple words any unit which performs the
required mathematical computations
Limitations of basic ALU
It operates only on Integer values, hence less
precision.
When forced to be operated on floating
point numbers then it results in slow
operations and lags in accuracy
Floating point arithmetic unit
 FPAU is a arithmetic unit which is capable to
compute the floating point numbers (real
numbers)
 Floating-point operations are often pipelined,
which increases the speed of operation.
What is FPGA?
• It is a semiconductor device that can be
programmed after manufacturing.
• The FPGA-architecture consists of many logic
modules, which are placed in an array-
structure
FPGA architecture
Significant characteristics for the FPGA-
architecture
 Array of logic-modules
Different logic-modules possible
Routing-channels physically exits between
logic-modules
Every logic-module can be interconnected to
any other logic-modul or I/O-module
Overview of VHDL
 VHDL stands for Very High Speed Integrated
Circuit Hardware Description Language
VHDL is widely used to model digital systems
VHDL was originated in early 1980’s and was
standardized in 1987 by the IEEE
VHDL features
 Structural Specification
 Support for Design Hierarchy
 Library Support
 Support for Concurrent and Sequential Statements
 Type Declaration
 Use of subprograms
Design flow
The design file is written in VHDL language with the
extension .vhd and often named as its ENTITY’s name.
The major steps in design flow are:
 Compilation
 Optimization
 Place-and-route
VHDL Constructs
 Entity definition
 Architecture definition
 Configuration
 Process
 Subprogram
 Package
A VHDL design can be broken into multiple files. Each file contains
entity and architecture definitions, or packages.
VHDL Code Structure
Entity Declaration
Defines input/output ports
Architecture Declaration
Defines what the component does Variables,
Signals, Constants defines
Component Mapping
Interconnects previously defined
components/entities.
Different modeling schemes in VHDL
Behavioral
defines outputs as function of input Algorithms
but no implementation
Structural
Implements behavior by connecting components
with known behavior
Example
entity andgate is
Port ( a : in STD_LOGIC;
b : in STD_LOGIC;
c : out STD_LOGIC);
end andgate;
architecture Behavioral of andgate is
Begin
c <= a AND b;
end Behavioral;
EDA tools and softwares used
 Xilinx ISE design suit 14.7
This software is used to synthesize and simulate the VHDL code
developed.
 Target device: Atlys Spartan-6 Academic Development Kit
Spartan-6 XC6SLX45 FPGA
6,822 Spartan-6 logic slices , 43,661 Spartan-6 logic cells
Integrated Memory Controller Block (MCB)
2,088 Kbits of block RAM
Design and implementation of FPAU
In top-down design approach FPAU is designed
for four arithmetic modules, addition,
subtraction, multiplication and division.
Selection of any of the above functions in done
with the operation code (Op)
Block diagram of FPAU
Input output information
A,B : input operands
Op : input operation code
Clk : input clock
R : Output Result
Function of Operation Code(Op)
Op(1) Op(0) Operation
0 0 Addition
0 1 Subtraction
1 0 Multiplication
1 1 Division
Algorithm for
addition/subtraction
Step 1: Take difference of two exponents.
Take the larger exponent as the tentative
exponent of the result.
Step 2: Shift the Mantissa of the number
with the smaller exponent, right through a
number of bit positions that is equal to the
difference of exponents.
Step 3: Add/subtract the two Mantissas as
per sign bits and instruction and take the
result of two as the tentative mantissa of
result.
Step 4: Normalization of exponent and
mantissa
Algorithm for
Multiplication
Step 1: Add two exponents. Take the
result tentative exponent of the result.
Step 2: Multiply two mantissas
Step 3: Normalization
Step 4: set the sign bit
Block diagram of multiplier/divider
RESULTS
Inferred 1 Multiplier(s).
Inferred 31 Adder/Subtractor(s).
Inferred 256 D-type flip-flop(s).
Inferred 2 Comparator(s).
Inferred 141 Multiplexer(s).
 Timing Summary
Minimum period: 7.936ns (Maximum Frequency: 126.004MHz)
Synthesis summary
Simulation results while performing addition
Simulation results while performing multiplication
Conclusion
Synthesis of the Floating Point Unit targeted for
the FPGA device had been done using Xilinx-ISE
design suit 14.7. Synthesis result revels approximate
05% resource utilization i.e. 404 slices (202 CLB’s).
Correspondingly the logic verification of FPU is done
using ModelSim DE edition.
Floating point ALU using VHDL implemented on FPGA

Weitere ähnliche Inhalte

Was ist angesagt?

Session 8,9 PCI Express
Session 8,9 PCI ExpressSession 8,9 PCI Express
Session 8,9 PCI Express
Subhash Iyer
 
System partitioning in VLSI and its considerations
System partitioning in VLSI and its considerationsSystem partitioning in VLSI and its considerations
System partitioning in VLSI and its considerations
Subash John
 

Was ist angesagt? (20)

Multipliers in VLSI
Multipliers in VLSIMultipliers in VLSI
Multipliers in VLSI
 
Ethernet
EthernetEthernet
Ethernet
 
VLSI routing
VLSI routingVLSI routing
VLSI routing
 
Decimation and Interpolation
Decimation and InterpolationDecimation and Interpolation
Decimation and Interpolation
 
Verilog full adder in dataflow & gate level modelling style.
Verilog full adder in dataflow  & gate level modelling style.Verilog full adder in dataflow  & gate level modelling style.
Verilog full adder in dataflow & gate level modelling style.
 
Router 1X3 – RTL Design and Verification
Router 1X3 – RTL Design and VerificationRouter 1X3 – RTL Design and Verification
Router 1X3 – RTL Design and Verification
 
Vlsi design flow
Vlsi design flowVlsi design flow
Vlsi design flow
 
Asynchronous Sequential Circuit-Unit 4 ppt
Asynchronous Sequential Circuit-Unit 4 pptAsynchronous Sequential Circuit-Unit 4 ppt
Asynchronous Sequential Circuit-Unit 4 ppt
 
Carry save multiplier
Carry save multiplierCarry save multiplier
Carry save multiplier
 
Diversity Techniques in Wireless Communication
Diversity Techniques in Wireless CommunicationDiversity Techniques in Wireless Communication
Diversity Techniques in Wireless Communication
 
Arm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furberArm architecture chapter2_steve_furber
Arm architecture chapter2_steve_furber
 
Baseband shaping for data transmission
Baseband shaping for data transmissionBaseband shaping for data transmission
Baseband shaping for data transmission
 
VLSI subsystem design processes and illustration
VLSI subsystem design processes and illustrationVLSI subsystem design processes and illustration
VLSI subsystem design processes and illustration
 
Propagation mechanisms
Propagation mechanismsPropagation mechanisms
Propagation mechanisms
 
synchronous state machine design
synchronous state machine designsynchronous state machine design
synchronous state machine design
 
Logic synthesis using Verilog HDL
Logic synthesis using Verilog HDLLogic synthesis using Verilog HDL
Logic synthesis using Verilog HDL
 
Session 8,9 PCI Express
Session 8,9 PCI ExpressSession 8,9 PCI Express
Session 8,9 PCI Express
 
System partitioning in VLSI and its considerations
System partitioning in VLSI and its considerationsSystem partitioning in VLSI and its considerations
System partitioning in VLSI and its considerations
 
time hopping spread spectrum term paper
time hopping spread spectrum term papertime hopping spread spectrum term paper
time hopping spread spectrum term paper
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 

Andere mochten auch

Alu design-project
Alu design-projectAlu design-project
Alu design-project
alphankg1
 
floating point multiplier
floating point multiplierfloating point multiplier
floating point multiplier
Bipin Likhar
 
Floating point units
Floating point unitsFloating point units
Floating point units
dipugovind
 
All VLSI programs
All VLSI programsAll VLSI programs
All VLSI programs
Gouthaman V
 
Basic structures in vhdl
Basic structures in vhdlBasic structures in vhdl
Basic structures in vhdl
Raj Mohan
 

Andere mochten auch (20)

Quick tutorial on IEEE 754 FLOATING POINT representation
Quick tutorial on IEEE 754 FLOATING POINT representationQuick tutorial on IEEE 754 FLOATING POINT representation
Quick tutorial on IEEE 754 FLOATING POINT representation
 
Designing of 8 BIT Arithmetic and Logical Unit and implementing on Xilinx Ver...
Designing of 8 BIT Arithmetic and Logical Unit and implementing on Xilinx Ver...Designing of 8 BIT Arithmetic and Logical Unit and implementing on Xilinx Ver...
Designing of 8 BIT Arithmetic and Logical Unit and implementing on Xilinx Ver...
 
06 floating point
06 floating point06 floating point
06 floating point
 
Alu design-project
Alu design-projectAlu design-project
Alu design-project
 
floating point multiplier
floating point multiplierfloating point multiplier
floating point multiplier
 
Floating point units
Floating point unitsFloating point units
Floating point units
 
Design and implementation of 32 bit alu using verilog
Design and implementation of 32 bit alu using verilogDesign and implementation of 32 bit alu using verilog
Design and implementation of 32 bit alu using verilog
 
All VLSI programs
All VLSI programsAll VLSI programs
All VLSI programs
 
VERILOG CODE
VERILOG CODEVERILOG CODE
VERILOG CODE
 
Introduction to FPGA, VHDL
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL
 
Programs of VHDL
Programs of VHDLPrograms of VHDL
Programs of VHDL
 
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...
 
Floating Point Numbers
Floating Point NumbersFloating Point Numbers
Floating Point Numbers
 
implementation and design of 32-bit adder
implementation and design of 32-bit adderimplementation and design of 32-bit adder
implementation and design of 32-bit adder
 
Vlsi mini project list 2013
Vlsi mini project list 2013Vlsi mini project list 2013
Vlsi mini project list 2013
 
8 Bit A L U
8 Bit  A L U8 Bit  A L U
8 Bit A L U
 
Behavioral modelling in VHDL
Behavioral modelling in VHDLBehavioral modelling in VHDL
Behavioral modelling in VHDL
 
How to design Programs using VHDL
How to design Programs using VHDLHow to design Programs using VHDL
How to design Programs using VHDL
 
DESIGN AND SIMULATION OF DIFFERENT 8-BIT MULTIPLIERS USING VERILOG CODE BY SA...
DESIGN AND SIMULATION OF DIFFERENT 8-BIT MULTIPLIERS USING VERILOG CODE BY SA...DESIGN AND SIMULATION OF DIFFERENT 8-BIT MULTIPLIERS USING VERILOG CODE BY SA...
DESIGN AND SIMULATION OF DIFFERENT 8-BIT MULTIPLIERS USING VERILOG CODE BY SA...
 
Basic structures in vhdl
Basic structures in vhdlBasic structures in vhdl
Basic structures in vhdl
 

Ähnlich wie Floating point ALU using VHDL implemented on FPGA

The Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging SystemThe Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging System
Melissa Luster
 
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
VLSICS Design
 
Digital VLSI Design and FPGA Implementation
Digital VLSI Design and FPGA ImplementationDigital VLSI Design and FPGA Implementation
Digital VLSI Design and FPGA Implementation
Amber Bhaumik
 

Ähnlich wie Floating point ALU using VHDL implemented on FPGA (20)

Project-Synopsis
Project-SynopsisProject-Synopsis
Project-Synopsis
 
Verilog
VerilogVerilog
Verilog
 
Basics of digital verilog design(alok singh kanpur)
Basics of digital verilog design(alok singh kanpur)Basics of digital verilog design(alok singh kanpur)
Basics of digital verilog design(alok singh kanpur)
 
The Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging SystemThe Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging System
 
DOUBLE PRECISION FLOATING POINT CORE IN VERILOG
DOUBLE PRECISION FLOATING POINT CORE IN VERILOGDOUBLE PRECISION FLOATING POINT CORE IN VERILOG
DOUBLE PRECISION FLOATING POINT CORE IN VERILOG
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
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...
 
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
 
Digital VLSI Design and FPGA Implementation
Digital VLSI Design and FPGA ImplementationDigital VLSI Design and FPGA Implementation
Digital VLSI Design and FPGA Implementation
 
IRJET- A Review on Single Precision Floating Point Arithmetic Unit of 32 Bit ...
IRJET- A Review on Single Precision Floating Point Arithmetic Unit of 32 Bit ...IRJET- A Review on Single Precision Floating Point Arithmetic Unit of 32 Bit ...
IRJET- A Review on Single Precision Floating Point Arithmetic Unit of 32 Bit ...
 
Introduction to iec 61131 3
Introduction to iec 61131 3Introduction to iec 61131 3
Introduction to iec 61131 3
 
IRJET - Design and Implementation of Double Precision FPU for Optimised Speed
IRJET - Design and Implementation of Double Precision FPU for Optimised SpeedIRJET - Design and Implementation of Double Precision FPU for Optimised Speed
IRJET - Design and Implementation of Double Precision FPU for Optimised Speed
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Digital design with Systemc
Digital design with SystemcDigital design with Systemc
Digital design with Systemc
 
At36276280
At36276280At36276280
At36276280
 
Wi Fi documantation
Wi Fi documantationWi Fi documantation
Wi Fi documantation
 
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGSA STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
 
Introduction to Blackfin BF532 DSP
Introduction to Blackfin BF532 DSPIntroduction to Blackfin BF532 DSP
Introduction to Blackfin BF532 DSP
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set Architecture
 

Mehr von Azhar Syed (6)

Chapter 3
Chapter 3Chapter 3
Chapter 3
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
1.government college of engineering
1.government college of engineering1.government college of engineering
1.government college of engineering
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
References
ReferencesReferences
References
 
Latest ppt on flexible electronics could be helpful for transparent electroni...
Latest ppt on flexible electronics could be helpful for transparent electroni...Latest ppt on flexible electronics could be helpful for transparent electroni...
Latest ppt on flexible electronics could be helpful for transparent electroni...
 

Kürzlich hochgeladen

Kürzlich hochgeladen (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Floating point ALU using VHDL implemented on FPGA

  • 1. Department of Electronics and Telecommunication Engineering A Seminar on “Floating point arithmetic unit Implemented on FPGA using VHDL” Guided by Prof. H. M. Raza
  • 2. Brief outline: IEEE 754 format Floating point unit VHDL FPGA EDA Tools and softwares Design of arithmetic units Conclusion
  • 3. Introduction to Floating Point IEEE 754 Standard  Established in 1985 by IEEE It has mainly two format • Single Precision (32-bit) • Double Precision(64-bit)
  • 4. IEEE 754 single precision format 𝑁 = (−1) 𝑆 1.M*2 𝐸−127 Mantissa (M)Mantissa (M)
  • 5. Conversion Examples Consider 9.5 is to be converted in standard IEEE754 format. 9.5 can be represented in binary as 1001.10 After normalization 1.00110*23 Biasing is to be done to exponent 1.00110*23+127 Similarly -12.076 can be represented as: 9.5 = 0 10000010 00110000000000000000000 -12.076 = 1 10000010 10000010011011101110101
  • 6. Conversion of IEEE754 to decimal 1 1011 0110 01100000000000000000000 −𝟏 𝟏 × 𝟐 𝟏𝟎𝟏𝟏𝟎𝟏𝟏𝟎−𝟎𝟏𝟏𝟏𝟏𝟏𝟏𝟏 × 𝟏. 𝟎𝟏𝟏 = −𝟏. 𝟑𝟕𝟓 × 𝟐 𝟓𝟓 = −49539595901075456.0 = −4.9539595901075456 ×𝟏𝟎 𝟏𝟔
  • 7. What is ALU? It is Arithmetic and logical unit In simple words any unit which performs the required mathematical computations
  • 8. Limitations of basic ALU It operates only on Integer values, hence less precision. When forced to be operated on floating point numbers then it results in slow operations and lags in accuracy
  • 9. Floating point arithmetic unit  FPAU is a arithmetic unit which is capable to compute the floating point numbers (real numbers)  Floating-point operations are often pipelined, which increases the speed of operation.
  • 10. What is FPGA? • It is a semiconductor device that can be programmed after manufacturing. • The FPGA-architecture consists of many logic modules, which are placed in an array- structure
  • 12. Significant characteristics for the FPGA- architecture  Array of logic-modules Different logic-modules possible Routing-channels physically exits between logic-modules Every logic-module can be interconnected to any other logic-modul or I/O-module
  • 13. Overview of VHDL  VHDL stands for Very High Speed Integrated Circuit Hardware Description Language VHDL is widely used to model digital systems VHDL was originated in early 1980’s and was standardized in 1987 by the IEEE
  • 14. VHDL features  Structural Specification  Support for Design Hierarchy  Library Support  Support for Concurrent and Sequential Statements  Type Declaration  Use of subprograms
  • 15. Design flow The design file is written in VHDL language with the extension .vhd and often named as its ENTITY’s name. The major steps in design flow are:  Compilation  Optimization  Place-and-route
  • 16. VHDL Constructs  Entity definition  Architecture definition  Configuration  Process  Subprogram  Package A VHDL design can be broken into multiple files. Each file contains entity and architecture definitions, or packages.
  • 17. VHDL Code Structure Entity Declaration Defines input/output ports Architecture Declaration Defines what the component does Variables, Signals, Constants defines Component Mapping Interconnects previously defined components/entities.
  • 18. Different modeling schemes in VHDL Behavioral defines outputs as function of input Algorithms but no implementation Structural Implements behavior by connecting components with known behavior
  • 19. Example entity andgate is Port ( a : in STD_LOGIC; b : in STD_LOGIC; c : out STD_LOGIC); end andgate; architecture Behavioral of andgate is Begin c <= a AND b; end Behavioral;
  • 20. EDA tools and softwares used  Xilinx ISE design suit 14.7 This software is used to synthesize and simulate the VHDL code developed.  Target device: Atlys Spartan-6 Academic Development Kit Spartan-6 XC6SLX45 FPGA 6,822 Spartan-6 logic slices , 43,661 Spartan-6 logic cells Integrated Memory Controller Block (MCB) 2,088 Kbits of block RAM
  • 21. Design and implementation of FPAU In top-down design approach FPAU is designed for four arithmetic modules, addition, subtraction, multiplication and division. Selection of any of the above functions in done with the operation code (Op)
  • 23. Input output information A,B : input operands Op : input operation code Clk : input clock R : Output Result Function of Operation Code(Op) Op(1) Op(0) Operation 0 0 Addition 0 1 Subtraction 1 0 Multiplication 1 1 Division
  • 24. Algorithm for addition/subtraction Step 1: Take difference of two exponents. Take the larger exponent as the tentative exponent of the result. Step 2: Shift the Mantissa of the number with the smaller exponent, right through a number of bit positions that is equal to the difference of exponents. Step 3: Add/subtract the two Mantissas as per sign bits and instruction and take the result of two as the tentative mantissa of result. Step 4: Normalization of exponent and mantissa
  • 25.
  • 26. Algorithm for Multiplication Step 1: Add two exponents. Take the result tentative exponent of the result. Step 2: Multiply two mantissas Step 3: Normalization Step 4: set the sign bit
  • 27. Block diagram of multiplier/divider
  • 28. RESULTS Inferred 1 Multiplier(s). Inferred 31 Adder/Subtractor(s). Inferred 256 D-type flip-flop(s). Inferred 2 Comparator(s). Inferred 141 Multiplexer(s).  Timing Summary Minimum period: 7.936ns (Maximum Frequency: 126.004MHz) Synthesis summary
  • 29. Simulation results while performing addition
  • 30. Simulation results while performing multiplication
  • 31. Conclusion Synthesis of the Floating Point Unit targeted for the FPGA device had been done using Xilinx-ISE design suit 14.7. Synthesis result revels approximate 05% resource utilization i.e. 404 slices (202 CLB’s). Correspondingly the logic verification of FPU is done using ModelSim DE edition.