Introduction To Fpgas
Introduction To Fpgas
Outline
Architecture
Logic
Routing
I/O
Programmable Logic
Programmable Routing
3
Logic: Lookup Tables
LUT FF
2K 2K:1
LUT FF
SRAM MUX
LUT FF
LUT FF
Slice/Cluster
4
Look-up Table
2K SRAM Cells
K
22 different functions
2K 2K:1
5
Look-up Table: 2-inputs
22 SRAM Cells
2
2
2 different functions
22 22:1
6
Look-up Table: 2-input NAND
4 SRAM Cells
6 transistors each
1 4:1 MUX
1 4:1
~12 transistors
1 MUX
0
~40 Transistors
2
7
Look-up Table: 2-input NAND
HUGE!
1
1 4:1
1 MUX
0
2
40 Transistors 4 Transistors
8
Design Flow: FPGA
Logic Synthesis
9
Architecture-level studies
Depth of the CAD flow
Quality of the CAD tools
Benchmark circuits
Quality of tools used to measure performance
LOGIC BLOCK ARCHITECTURE
Logic: Soft
Programmable
Logic Blocks
12
Logic: Hard Blocks
Memory
Blocks
13
Logic: Hard Blocks
DSP
Blocks
14
Logic: Lookup Tables
LUT FF
2K 2K:1
LUT FF
SRAM MUX
LUT FF
LUT FF
Slice/ Cluster
15
Design decisions
LUT size
Number of LUTs per cluster
Inputs/Outputs to/from each cluster
Area and Speed
No. of Logic Blocks vs.
Logic Block Functionality
Cluster
Size grows quadratically LUT FF
Local interconnect
Fewer inputs (shared) LUT FF
LUT FF
LUTs on critical path & LUT delay
vs LUT size