You are on page 1of 4

0|Page

5/7/2019

Lahore Garrison University


Assignment # 02

Submitted by: Muhammad Faisal Bashir


Submitted to: Sir Hassan Sultan
Class: BSCS (K)
Roll no: 490
Subject: Digital And Logic Design
Date: 7 May, 2019

LAHORE GARRISON UNIVERSITY


1|Page

Field-Programmable Gate Array


A field-programmable gate array (FPGA) is an integrated circuit that can be programmed or
reprogrammed to the required functionality or application after manufacturing. Important
characteristics of field-programmable gate arrays include lower complexity, higher speed,
volume designs and programmable functions. With more technological advances, field-
programmable gate arrays are a convenient proposition for most designs and markets.

A field-programmable gate array consists of logic blocks which are programmable,


reconfigurable interconnects and input/output pads. The logic blocks used in a field-
programmable gate array could consist of memory elements such as flip-flops or memory
blocks. The logic blocks are capable of performing simple to complex computational functions.
Field-programmable gate arrays are in many ways similar to programmable read-only memory
chips. However, unlike programmable read-only memory chips, which are limited to hundreds of
gates, a field-programmable gate array can support several thousand gates. Another salient
feature of field-programmable gate arrays is the ability to be reprogrammed, unlike application-
specific integrated circuits which are manufactured for specific tasks.

A field-programmable gate array can help computer users in tailoring the capabilities of
microprocessors to meet specific individual needs. In fact, engineers use field-programmable
gate arrays in designing specialized integrated circuits. Other advantages of using field-
programmable gate arrays include a more predictable life cycle due to removal of wafer
capabilities, potential respins, faster time to market compared to other options and simple design
cycle.

Design And Programming


To define the behavior of the FPGA, the user provides a design in a hardware description
language (HDL) or as a schematic design. The HDL form is more suited to work with large
structures because it's possible to specify high-level functional behavior rather than drawing
every piece by hand. However, schematic entry can allow for easier visualization of a design and
its component modules.
Using an electronic design automation tool, a technology-mapped netlist is generated. The
netlist can then be fit to the actual FPGA architecture using a process called place-and-route,
usually performed by the FPGA company's proprietary place-and-route software. The user will
validate the map, place and route results viatiming analysis, simulation, and other verification
and validation methodologies. Once the design and validation process is complete, the binary file
generated, typically using the FPGA vendor's proprietary software, is used to (re-)configure the

LAHORE GARRISON UNIVERSITY


2|Page

FPGA. This file is transferred to the FPGA/CPLD via a serial interface (JTAG) or to an
external memory device like an EEPROM.
FPGA testing
In view of their complexity, it is necessary to undertake rigorous testing of the FPGA design. This
testing will normally be undertaken at each stage of the FPGA development process.

It includes functional simulation, and other verification methodologies, but one of the key issues
can be that of timing as the size and complexity of the basic logic can mean that timing issues can
arise.

Once the design and validation process is complete, the binary file generated (also using the FPGA
company's proprietary software) is used to configure the FPGA device.

FPGA tools
The tools for developing and testing FPGAs are available from a variety of sources. Obviously the
manufacturer is able to offer many FPGA development tools, but there are many other sources for
third party FPGA HDL synthesis, FPGA physical synthesis and verification tools. These include
the actual development and for the various stages of testing of the FPGAs.

Applications of FPGA
There are many application of FGPA. Some of these are as follows:

 Aerospace & Defense:


Radiation-tolerant FPGAs along with intellectual property for image
processing, waveform generation, and partial reconfiguration for SDRs.
 ASIC Prototyping:
ASIC prototyping with FPGAs enables fast and accurate SoC system
modeling and verification of embedded software.
 Broadcast & Pro AV:
Adapt to changing requirements faster and lengthen product life cycles
with Broadcast Targeted Design Platforms and solutions for high-end professional
broadcast systems.
 Consumer Electronics:
Cost-effective solutions enabling next generation, full-featured
consumer applications, such as converged handsets, digital flat panel displays,
information appliances, home networking, and residential set top boxes.
 Data Center:
Designed for high-bandwidth, low-latency servers, networking, and storage
applications to bring higher value into cloud deployments.

LAHORE GARRISON UNIVERSITY


3|Page

 High Performance Computing and Data Storage :


Solutions for Network Attached Storage
(NAS), Storage Area Network (SAN), servers, and storage appliances.
 Medical:
For diagnostic, monitoring, and therapy applications, the Virtex FPGA and
Spartan FPGA families can be used to meet a range of processing, display, and I/O
interface requirements.
 Wireless Communications:
RF, base band, connectivity, transport and networking
solutions for wireless equipment, addressing standards such as WCDMA, HSDPA,
WiMAX and others.

LAHORE GARRISON UNIVERSITY