What Is FPGA
What Is FPGA
1. What is FPGA? 3
2. History of Evolution 3
3. FPGA Programmability 6
4. FPGA Architecture 9
5. Why FPGA 14
6. FPGA Drawbacks 15
7. Application 15
8. Conclusion 15
9 Referrences 16
2
What is FPGA?
Before proceeding, we provide definitions of the terminology in this field. This is necessary
because the technical jargon has become somewhat inconsistent over the past few years as
companies have attempted to compare and contrast their products in literature.
History of Evolution:
3
inputs and data lines as outputs. Logic functions, however,
rarely require more than a few product terms, and a PROM contains a full decoder for its address
inputs.
Problem
large area is required due to the decoder used.
PROMS are thus an inefficient architecture for realizing logic circuits, and so are rarely used in
practice for that purpose.
The first device developed later specifically for implementing logic circuits was the Field
Programmable Logic Array (FPLA), or simply PLA for short.
Programmable Logic Array (PLA)
A PLA consists of two levels of logic gates: a programmable “wired” AND-plane followed by a
programmable “wired” OR-plane. A PLA is structured so that any of its inputs (or their
complements) can be AND’ed together in the AND-plane; each AND-plane output can thus
correspond to any product term of the inputs. Similarly, each ORplane output can be configured
to produce the logical sum of any of the AND-plane outputs. With this structure, PLAs are well-
4
suited for implementing logic functions in sum-of-products form. They are also quite versatile,
since both the AND terms and OR terms can have many inputs (this feature is often referred to as
wide AND and OR gates).
Advantage
No decoder required
Problem
Two levels of programming adds delay and increases cost.
To overcome these weaknesses, Programmable Array Logic (PAL) devices were developed.
Advantage
Low cost and size.
Problem
Less flexible than PLA
All these PLA and PAL are Simple Programmable Logic Devices (SPLD). whose most
important characteristics are low cost and very high pin-to-pin speed-performance.
5
Common Problem:
As technology has advanced, it has become possible to produce devices with higher capacity
than SPLDs. The difficulty with increasing capacity of a strict SPLD architecture is that the
structure of the programmable logic-planes grow too quickly in size as the number of inputs is
increased.
The only feasible way to provide large capacity devices based on SPLD architectures is
then to integrate multiple SPLDs onto a single chip and provide interconnect to programmably
connect the SPLD blocks together. Many commercial FPD products exist on the market today
with this basic structure, and are collectively referred to as Complex PLDs (CPLDs).
Structure
programmably interconnect multiple SPLDs.
advantage
logic capacity up to the equivalent of about 50 typical
SPLD devices
Problem :
Extending to higher density difficult
All the previous devices indicates that the complte solution would be a
Very high capacity device with wide range of programmability.
FPGA PROGRAMMABILITY
6
Antifuse programming methodology
Here Antifuse systems(eg. amorphous Si,ONO) are placed at the junctions of different
connecting paths.
These systems(built of special materials normally have high resistance(effectively open
circuits)
Upon application of programming voltage across them resistance drop to a
few ohms and thus define a connection.
Many antifuse systems are based on amorphous silicon, which has high
resistivity, but which, after heating, recrystallizes and drops its resistivity
substantially. An example of this type of antifuse is given by Roesner (U.S.
Pat. No. 4,796,074 January 1989). Other types of material mentioned by
Roesner include germanium, carbon and tin and all depend on a change in
grain size from amorphous, or very small crystallites, to relatively large
grains. An additional drop in resistivity is achieved by the activation of
interstitial dopant atoms (such as might be introduced through ion
implantation). Thus Roesner teaches that the maximum temperature to
which antifuse material may be exposed during processing must be less than
about 600° C.
7
Interconnect is not reprogrammable .Once the antifuse is programmed it is not available
for programming again.
o/p.
In short ,
to control pass gates.
1= closed switch connection
0= open
For mux, SRAM determines
the mux input selection
process.
Advantage
• Fast re-programmability.As reprogramming only require the write operation to the
SRAM.
• Standard IC fabrication Tech. is used by using predesigned standard for SRAM.
Disadvantage
• SRAM volatile so every time when the device starts SRAM needs to be loaded.
• Requires large area
Technology used used in EPROM and EEPROM devices is used here Switch is disable by
applying high voltage to gate-2 between gate-1 and drain.This process stores an amount of
charge on the floating gate.As it is surrounded by an insulating layer of SiO2 so the charge
deposited remains there.
For reprogramming the charge is removed by applying UV light.Tat supplies enough
energy to the charge stored to escape through the oxide layer.
Advantage:-
8
No external permanent memory is needed to program it at power-up
Disadvantage:-
Extra processing steps as floating gate is involved.
Static power loss due to pull up resistor and high on resistance
FPGA architecture
9
2) Input/Output Block(IOB)
- provides the interface between external pins and internal signal lines
3)Programmable Routing
Channel
-controls the connections among different blocks
CLBs contain
• 3 Look Up Table(F,G &H function generator)
• Two D Flip-Flops
And
• A group of MUXs
• Look Up Table
• Can perform any function on its i/p depending on the values stored in the
memory location.
• Combination of F,G & H allows to implement a function of upto 9 variables.
• Advantage:
• Minimizes no. of blocks required
• Thereby increases speed and density
•
10
• D Flip-Flop
• 2 edge triggered Flip-Flops are having common clock & clock enable i/ps
• Clock may be inverted before driving Flip-Flops thus configuring them as
either positive or negative edge triggered.
• Clock enable i/p to Flip-Flop is active high.
• Set-Reset i/p allows to set or reset Flip-Flops asynchronously.
MUX
Used to allow the intended signal to go to the next stage.
Allows the combinational functions o/p that is F,G or H o/p to be o/p of the
CLB through X or Y
Controls the D Flip-Flop i/p (allows F,G or H o/p or a direct input to CLB as
DIN to go to the i/p of d Flip-Flop)
Determines triggering edge of the clock.
Input/Output Block(IOB)
11
The global tri state signal puts the out put drive to tri state so that while programming the
selected unit does not effects the others .
OUTPUT BLOCK
• CLB o/ps can be inverted and go directly or via a register to the o/p buffer
• user controlled T i/p ORing with GTS(Global Tri Sate)signal controls o/p buffer(e.g-if
high ,places buffer in high impedence state)
• GTS which is common to all user IOBs is made high during configuration
• Programmable pull up or down netwrk is there for connecting unused pin to Vcc or GND.
Programmable Routing Channel
Connection Box:- The C boxes connect the channel wires with the input and output pins of the CLBs. It
has two major properties that can affect the routability of a design: its flexibility, Fc, which is the number
of wires that each logic block pin can connect to; and its topology, which
is the pattern of switches2 that make the connection (especially if Fc is low).
12
Switch Box:- The S boxes allow wires to switch between vertical and horizontal wires. Its flexibility,
Fs, defines for a wiring segment entering the S block the number of other wiring segments it can be
connected to. The topology of the S blocks is very important since it is possible to
choose two different topologies with the same flexibility Fs that result in very different routabilitiesallow
wires to switch between vertical and horizontal wires.
Single length lines span through one CLB & provide short connections among CLBs
Thye basic structure of connection box and switching boxes are same as illustrated next.
13
Interconnect Point in both switching and connection box –implemented through 6 pass
transistors. Depending on the values provided by the particular type of programming
technique used the i/p to the pass gates control the routiong of the signals through the
boxes.
Why FPGA??
In the field FPGA has strong opponent in the form of ASIC(application Specific IC).
ASICs are designed to perform a particular function using custom design technique.
FPGA Advantages
FPGAs are flexible,can be used for prototyping. That is it can be used for prototype
making of large devices and ICs.
Offers less time-to-market.That is the time required to deliver an ordered FPGA is
smaller than ASICs as it only requires programming.
NRE cost is low.
Design cycle is simple
Easy upgrades like software as it provides a provision for reprogramming so depending
on the need it can be upgraded like softwares.
14
FPGA drawbacks
Application
Conclusion
15
Referrences
Books
CMOS VLSI DESIGN
-by NEIL H.E. WESTE
DAVID HARRIS
AYAN BANERJEE
FPGA-Based System Design
-by WAYNE WOLF
Websites
1.http://www.wikipedia.org
2.http://searchcio-midmarket.techtarget.com
3.http://www.vlsibank.com
4.http://web.ukonline.co.uk
5.http://www.electronicsweekly.com
16