Professional Documents
Culture Documents
OUTLAY
FPGAs
Field-Programmable Gate Arrays
CPLDs
Complex Programmable Logic Devices
SPLDs
Simple Programmable Logic Devices
4
FPGA
FPGA = FP + GA
Field Programmable means that the FPGAs function is defined by the users program rather than by the manufacturer of the device. Gate Array means it consists of an array of gates which can be connected according to the requirements of the logic to be implemented.
10
An array of programmable logic blocks connected with programmable interconnects. A device in which the logic structure can be directly configured by the end user without the use of an IC fabrication facility. A device who's function is specified by the user after the device is manufactured. FPGAs can have medium-to-high capacity(equivalent to that of thousands to millions of logic gates). Speed: up to 200MHz or more.
11
Types of FPGA
Broadly we can divide FPGAs into three types: 1. Antifuse FPGA 2. Flash FPGA 3. SRAM FPGA
12
Antifuse FPGA
Devices are configured by burning a set of fuses. Once the chip is configured, it cannot be altered any more. Hence only one-time programmable. Its logic cells are made up of conventional logic gates. Used for ASIC replacement for small volumes.
13
Antifuse FPGA
How to make a permanent short connection ?
14
Flash FPGA
Devices may be re-programmed several thousand times and are non-volatile, i.e. keep their configuration after power-off. With only marginal additional effort, the chips may be updated in the field. Re-configuration takes several seconds.
15
FPGA ARCHITECTURE
17
18
Structure of a FPGA
19
20
The basic building block of the CLBs is the logic cell(LC). Each CLB contains four LCs, organized in two similar slices.Each slice contains two LCs .
21
22
Look-Up Table
Any functions of up to K variables can be implemented by a single K-input LUT. The function generators are implemented as 4-input look-up tables (LUTs) in XILINX SPARTAN-II FPGAs. Each LUT can provide a 16x1-bit synchronous RAM. The two LUTs within a slice can be combined to create a 16x2-bit or 32x1-bit synchronous RAM.
23
24
25
Additional Logic
Storage Element : Either edge-triggered D-type flip-flop
or level-sensitive latch. SR : Synchronous Set/Reset signal.It forces FF into its initialize state as specified in the configuration. BX / BY G1-4 / F1-4 : Forces to opposite state. : Inputs of the LUT.
CE
CLK
Additional Logic
F5 Multiplexer : It combines the function generator o/p.Used to implement 5 i/p function & select function up to 9 inputs.
F6 Multiplexer
can be implemented.
CIN XOR Gate AND Gate : Carry i/p is present in each slice. : Allows 1-bit full adder implementation. : Improves efficiency of multiplier implementation .
27
28
29
30
PIP
PIP
Line Segments
Connectable Pair (A,B)
PIP between them in FPGA Non-connectable Pair (C,D) No PIP between them
32
33
34
35
References
www.xilinx.com http://www.em.informatik.uni-frankfurt.de/ http://crc.stanford.edu Logic and Computer Design Fundamentals, 2nd ed., Sections 6.5-6.9.
THANKS
39