SlideShare a Scribd company logo
1 of 2
Download to read offline
Roshan Barua Project Synopsis
Development of Floating Point Processor in FPGA
using VHDL for control of BLAC servomotor
Introduction:
The division of Remote Handling and Robotics (DRHR) at the Bhabha Atomic Research
Centre has developed a Tele-Robot which finds applications in remote handling operations.
This robot uses BLAC servomotors for its joint actuations. Presently, such motors are
controlled via as ASIC. We have now developed a Floating Point processor in FPGA using
VHDL. The Floating Point Processor will form a part of an FPGA based controller for these
BLAC servomotors. The task included the study of IEEE Floating Point Standard & its
implementations using VHDL. This is first implemented using a development IDE from Xilinx.
Subsequently we have programmed the FPGA using the VHDL code and tested its functional
operations.
Aim & Objective:
To develop a arithmetic matrix co-processor which utilises floating point inputs for calculation
of space vector control implemented by the Telerobot
Methodology:
The Project fundamentally consisted of three assignments.
Detailed Study of the Telerobot
The Telerobot consists of two identical electrically connected articulated arms: the master arm
and the slave arm. The force reflecting Tele-robot represents a new generation of remote
handling technology with advanced features like position control of the slave arm in world
coordinates, indexing in world coordinates, scaling of slave motion, tremor removal,
constrained motion, teach and playback mode, interactive robot mode etc. The Telerobot is
provided with six Degrees of Freedom and has a payload of 25 kg. It has a maximum reach of
1.2 m and the gripper opening is 100 mm. The force reflection ratio varies from 0 to 1 and the
maximum force reflected is 8 kg.
Intensive Research on IEEE Floating point standards, study of FPGA’s and Servomotors
Normally FPGAs comprise of -
 Programmable logic blocks which implement logic functions
 Programmable routing that connects these logic functions
 I/O blocks that are connected to logic blocks through routing interconnect and that
make off-chip connections.
The ‘programmable/reconfigurable’ term in FPGAs indicates their ability to implement a new
function on the chip after its fabrication is complete. The reconfigurability/ programmability of
an FPGA is based on an underlying programming technology, which can cause a change in
behaviour of a pre-fabricated chip after its fabrication. Study in IEEE standards-786 was
pivotal for development of a floating point co-processor.
Development of Floating Point Co-processor
To overcome device size restriction, subsequent single-FPGA implementations of IEEE 754
standard employed serial arithmetic or avoided features, such as supporting gradual
underflow, which are expensive to implement was used. In this project, a high-speed
IEEE754-compliant 32-bit floating point arithmetic unit designed using VHDL code has been
presented and all operations of addition, subtraction, multiplication and division have been
tested on Xilinx and verified successfully. Floating point numbers are one possible way of
representing real numbers in binary format; the IEEE 754 [11] standard presents two different
floating point formats, Binary interchange format and Decimal interchange format. This paper
focuses only on single precision normalized binary interchange format. In the IEEE 754 single
precision binary format representation; it consists of a one bit sign (S), an eight bit exponent
(E), and a twenty three bit fraction (M) or Mantissa.
32 bit Single Precision Floating Point Numbers IEEE standard are stored as:
S EEEEEEEE MMMMMMMMMMMMMMMMMMMMMM
S: Sign – 1 bit, E: Exponent – 8 bits M: Mantissa – 23 bits Fraction
The ‘exponent base’ is 2** ((maximum exponent/2)–1) and ‘Fraction’ is always a number less
than one. The final task was to build a Matrix Co-processor which can build and process
floating point numbers in a matrix format to perform basic arithmetic tasks such as Addition,
Subtraction etc. and display the output in the desired IEEE format.
Block diagram:
Conclusion:
 Initial testing of matrix engine using basic integers and floats inputs were carried out.
 The floating point matrix co-processor necessary for vector space control of the
Telerobot was implemented and its results were noted.
 The entire project was carried out on a Spartan3E FPG
 A kit with further scope to implement on CPLD.

More Related Content

What's hot

Dot matrix display design using fpga
Dot matrix display design using fpgaDot matrix display design using fpga
Dot matrix display design using fpgaHossam Hassan
 
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)Programmable Logic Array(PLA) & Programmable Array Logic(PAL)
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)Revathi Subramaniam
 
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHM
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHMSINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHM
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHMAM Publications
 
L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)NAGASAI547
 
System designing and modelling using fpga
System designing and modelling using fpgaSystem designing and modelling using fpga
System designing and modelling using fpgaIAEME Publication
 
Hardware description languages
Hardware description languagesHardware description languages
Hardware description languagesAkhila Rahul
 
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONS
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONSUNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONS
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONSDr.YNM
 
Novel high functionality fault tolerant ALU
Novel high functionality fault tolerant ALUNovel high functionality fault tolerant ALU
Novel high functionality fault tolerant ALUTELKOMNIKA JOURNAL
 
Convolution final slides
Convolution final slidesConvolution final slides
Convolution final slidesramyasree_ssj
 
VLSI Design Flow
VLSI Design FlowVLSI Design Flow
VLSI Design FlowA B Shinde
 
MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)Analog Devices, Inc.
 
FPGA Architecture Presentation
FPGA Architecture PresentationFPGA Architecture Presentation
FPGA Architecture Presentationomutukuda
 
Programmable logic devices
Programmable logic devicesProgrammable logic devices
Programmable logic devicesAmmara Javed
 

What's hot (20)

Dot matrix display design using fpga
Dot matrix display design using fpgaDot matrix display design using fpga
Dot matrix display design using fpga
 
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)Programmable Logic Array(PLA) & Programmable Array Logic(PAL)
Programmable Logic Array(PLA) & Programmable Array Logic(PAL)
 
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHM
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHMSINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHM
SINGLE PRECISION FLOATING POINT MULTIPLIER USING SHIFT AND ADD ALGORITHM
 
L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)
 
System designing and modelling using fpga
System designing and modelling using fpgaSystem designing and modelling using fpga
System designing and modelling using fpga
 
Part 6 PLC languges.
Part 6 PLC languges.Part 6 PLC languges.
Part 6 PLC languges.
 
Hardware description languages
Hardware description languagesHardware description languages
Hardware description languages
 
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONS
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONSUNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONS
UNIT I- CPLD & FPGA ARCHITECTURE & APPLICATIONS
 
Verilog
VerilogVerilog
Verilog
 
Novel high functionality fault tolerant ALU
Novel high functionality fault tolerant ALUNovel high functionality fault tolerant ALU
Novel high functionality fault tolerant ALU
 
bds project final documentation
bds project final documentation bds project final documentation
bds project final documentation
 
Convolution final slides
Convolution final slidesConvolution final slides
Convolution final slides
 
VLSI Design Flow
VLSI Design FlowVLSI Design Flow
VLSI Design Flow
 
What is FPGA?
What is FPGA?What is FPGA?
What is FPGA?
 
Vlsi design flow
Vlsi design flowVlsi design flow
Vlsi design flow
 
Project ppt
Project pptProject ppt
Project ppt
 
MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)
 
FPGA Architecture Presentation
FPGA Architecture PresentationFPGA Architecture Presentation
FPGA Architecture Presentation
 
Programmable logic devices
Programmable logic devicesProgrammable logic devices
Programmable logic devices
 
Flash memory
Flash memoryFlash memory
Flash memory
 

Similar to Project-Synopsis

The Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging SystemThe Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging SystemMelissa 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 fpgaVLSICS Design
 
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 VERILOGIJCI JOURNAL
 
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 ...IRJET Journal
 
VLSI Experiments I
VLSI Experiments IVLSI Experiments I
VLSI Experiments IGouthaman V
 
03 Synthesis (1).ppt
03 Synthesis  (1).ppt03 Synthesis  (1).ppt
03 Synthesis (1).pptShreyasMahesh
 
Introduction to iec 61131 3
Introduction to iec 61131 3Introduction to iec 61131 3
Introduction to iec 61131 3Pratibha Yadav
 
VHDL Implementation of High Speed and Low Power BIST Based Vedic Multiplier
VHDL Implementation of High Speed and Low Power BIST Based Vedic MultiplierVHDL Implementation of High Speed and Low Power BIST Based Vedic Multiplier
VHDL Implementation of High Speed and Low Power BIST Based Vedic MultiplierIRJET Journal
 
IRJET- FPGA based Controller Design for Mobile Robots
IRJET- FPGA based Controller Design for Mobile RobotsIRJET- FPGA based Controller Design for Mobile Robots
IRJET- FPGA based Controller Design for Mobile RobotsIRJET Journal
 
CV-RENJINIK-27062016
CV-RENJINIK-27062016CV-RENJINIK-27062016
CV-RENJINIK-27062016Renjini K
 
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET Journal
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmAngie Lee
 
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDL
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDLDESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDL
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDLsateeshkourav
 

Similar to Project-Synopsis (20)

The Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging SystemThe Principle Of Ultrasound Imaging System
The Principle Of Ultrasound Imaging System
 
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
 
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
 
VLSI
VLSIVLSI
VLSI
 
VLSI
VLSIVLSI
VLSI
 
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 ...
 
Convolution
ConvolutionConvolution
Convolution
 
VLSI Experiments I
VLSI Experiments IVLSI Experiments I
VLSI Experiments I
 
03 Synthesis (1).ppt
03 Synthesis  (1).ppt03 Synthesis  (1).ppt
03 Synthesis (1).ppt
 
Introduction to iec 61131 3
Introduction to iec 61131 3Introduction to iec 61131 3
Introduction to iec 61131 3
 
Fpga lecture
Fpga lectureFpga lecture
Fpga lecture
 
Iy3116761679
Iy3116761679Iy3116761679
Iy3116761679
 
VHDL Implementation of High Speed and Low Power BIST Based Vedic Multiplier
VHDL Implementation of High Speed and Low Power BIST Based Vedic MultiplierVHDL Implementation of High Speed and Low Power BIST Based Vedic Multiplier
VHDL Implementation of High Speed and Low Power BIST Based Vedic Multiplier
 
IRJET- FPGA based Controller Design for Mobile Robots
IRJET- FPGA based Controller Design for Mobile RobotsIRJET- FPGA based Controller Design for Mobile Robots
IRJET- FPGA based Controller Design for Mobile Robots
 
CV-RENJINIK-27062016
CV-RENJINIK-27062016CV-RENJINIK-27062016
CV-RENJINIK-27062016
 
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
IRJET- A Review- FPGA based Architectures for Image Capturing Consequently Pr...
 
Fpg as 11 body
Fpg as 11 bodyFpg as 11 body
Fpg as 11 body
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 Algorithm
 
Poster_poojamanali
Poster_poojamanaliPoster_poojamanali
Poster_poojamanali
 
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDL
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDLDESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDL
DESIGN AND IMPLEMENTATION OF 64-BIT ARITHMETIC LOGIC UNIT ON FPGA USING VHDL
 

Project-Synopsis

  • 1. Roshan Barua Project Synopsis Development of Floating Point Processor in FPGA using VHDL for control of BLAC servomotor Introduction: The division of Remote Handling and Robotics (DRHR) at the Bhabha Atomic Research Centre has developed a Tele-Robot which finds applications in remote handling operations. This robot uses BLAC servomotors for its joint actuations. Presently, such motors are controlled via as ASIC. We have now developed a Floating Point processor in FPGA using VHDL. The Floating Point Processor will form a part of an FPGA based controller for these BLAC servomotors. The task included the study of IEEE Floating Point Standard & its implementations using VHDL. This is first implemented using a development IDE from Xilinx. Subsequently we have programmed the FPGA using the VHDL code and tested its functional operations. Aim & Objective: To develop a arithmetic matrix co-processor which utilises floating point inputs for calculation of space vector control implemented by the Telerobot Methodology: The Project fundamentally consisted of three assignments. Detailed Study of the Telerobot The Telerobot consists of two identical electrically connected articulated arms: the master arm and the slave arm. The force reflecting Tele-robot represents a new generation of remote handling technology with advanced features like position control of the slave arm in world coordinates, indexing in world coordinates, scaling of slave motion, tremor removal, constrained motion, teach and playback mode, interactive robot mode etc. The Telerobot is provided with six Degrees of Freedom and has a payload of 25 kg. It has a maximum reach of 1.2 m and the gripper opening is 100 mm. The force reflection ratio varies from 0 to 1 and the maximum force reflected is 8 kg. Intensive Research on IEEE Floating point standards, study of FPGA’s and Servomotors Normally FPGAs comprise of -  Programmable logic blocks which implement logic functions  Programmable routing that connects these logic functions  I/O blocks that are connected to logic blocks through routing interconnect and that make off-chip connections. The ‘programmable/reconfigurable’ term in FPGAs indicates their ability to implement a new function on the chip after its fabrication is complete. The reconfigurability/ programmability of an FPGA is based on an underlying programming technology, which can cause a change in behaviour of a pre-fabricated chip after its fabrication. Study in IEEE standards-786 was pivotal for development of a floating point co-processor. Development of Floating Point Co-processor To overcome device size restriction, subsequent single-FPGA implementations of IEEE 754 standard employed serial arithmetic or avoided features, such as supporting gradual underflow, which are expensive to implement was used. In this project, a high-speed IEEE754-compliant 32-bit floating point arithmetic unit designed using VHDL code has been
  • 2. presented and all operations of addition, subtraction, multiplication and division have been tested on Xilinx and verified successfully. Floating point numbers are one possible way of representing real numbers in binary format; the IEEE 754 [11] standard presents two different floating point formats, Binary interchange format and Decimal interchange format. This paper focuses only on single precision normalized binary interchange format. In the IEEE 754 single precision binary format representation; it consists of a one bit sign (S), an eight bit exponent (E), and a twenty three bit fraction (M) or Mantissa. 32 bit Single Precision Floating Point Numbers IEEE standard are stored as: S EEEEEEEE MMMMMMMMMMMMMMMMMMMMMM S: Sign – 1 bit, E: Exponent – 8 bits M: Mantissa – 23 bits Fraction The ‘exponent base’ is 2** ((maximum exponent/2)–1) and ‘Fraction’ is always a number less than one. The final task was to build a Matrix Co-processor which can build and process floating point numbers in a matrix format to perform basic arithmetic tasks such as Addition, Subtraction etc. and display the output in the desired IEEE format. Block diagram: Conclusion:  Initial testing of matrix engine using basic integers and floats inputs were carried out.  The floating point matrix co-processor necessary for vector space control of the Telerobot was implemented and its results were noted.  The entire project was carried out on a Spartan3E FPG  A kit with further scope to implement on CPLD.