Professional Documents
Culture Documents
LN13 Fpga PDF
LN13 Fpga PDF
Guan-Lin Wu
Outline
z Introduction to PLD
z Introduction to FPGA
z FPGA Example – Altera Cyclone II
z Altera Quartus II
z Lab
World of Integrated Circuits
PLD FPGA
Digital Logic
Digital Logic Function
FIXED Logic
Transistor Switches
Programmable Logic
Devices PLDs
Un-programmed State
Different Types
SUM of PRODUCTS
Planes of
ANDs, ORs
Prefabricated
Programmble Links
Inputs
ANDs Sums
OR
Programmed PLD
Product Terms
Sum of Products
How can we make a
“programmable logic”?
z SRAM-based
z Reconfigurable
z Track latest SRAM technology
z Volatile
z Generally high power
z Anti-fuse technique
z One-time programmable
z Non-volatile – security app.
Complex PLDs
CPLDs
Programmable PLD Blocks
Programmable Interconnects
CPLD Architecture
Feedback Outputs
Field Programmable Gate
Arrays FPGA
z Field Programmable Gate Array
z New Architecture
z ‘Simple’ Programmable Logic Blocks
z Massive Fabric of Programmable
Interconnects
FPGA Architecture
Logic Blocks
z Logic Functions implemented in Lookup
Table LUTs
z Multiplexers (select 1 of N inputs)
z Flip-Flops. Registers. Clocked Storage
elements.
16-bit SR
16x1 RAM
a 4-input
LUT
b
y
c
mux
d flip-flop
q
e
clock
clock enable
set/reset
16-bit SR
16x1 RAM
a 4-input
LUT
b
3 – 6 Inputs c
y
mux
d flip-flop
q
e
clock
clock enable
set/reset
a 4-input
LUT
b
y
c
mux
d flip-flop
q
e
clock
clock enable
set/reset
FPGA Fabric
Clock
Circuit Compilation
1. Technology Mapping
LUT
2. Placement
LUT
Assign a logical
LUT to a physical
? location.
3. Routing
Programmable Connections
Which Way to Go?
ASICs FPGAs
Off-the-shelf
High performance
Low development cost
Low power
Short time to market
Low cost in
high volumes Reconfigurability
Other FPGA Advantages
SRAM-based FPGAs
z Xilinx, Inc.
Share over 60% of the market
z Altera Corp.
z Atmel
z Lattice Semiconductor
Embedded
Logic Array Multipliers
M4K Memory
Blocks I/O
Elements
Phase-Locked
Loops
Cyclone II EP2C20
z 18,752 LEs
z 52 M4K RAM blocks
z 240K total RAM bits
z 52 9x9 embedded multipliers
z 4 PLLs
z 16 Clock networks
z 315 user I/O pins
z SRAM Based volatile configuration
Logic Element
z 16 LEs forms a Logic Array Block (LAB)
z Normal mode
z Arithmetic mode
Logic Element
Logic Element
z Normal Mode – general logic operations
Logic Element
z Arithmetic Mode – adder, counter,
accumulators, comparator
Logic Array Blocks Structure
Cyclone II Logic Array Block (LAB)
4
z 16 LEs LE1
4
LE13
4
LE14
4
LE15
4
LE16
Row Interconnect Connections
z Direct link, R4, R24 interconnects
Column Interconnect
Connections
z Register chain, C4,
C16
Register Chain Interconnects
z LEs can be connected for
implementing fast adder,
counters, shift register
M4K RAM
Cyclone II I/O Features
z In/Out/Tri-state
z Different Voltages and I/O Standards
z PCI, PCI-X, LVDS I/O standard
z Flip-flop option
z Pull-up resistors
z DDR interface
z Series resistors
z Bus keeper
z Drive strength control
z Slew rate control
z Single ended/differential
Advance Architecture on
Modern FPGAs
More Guts
z Additional components
z Dedicated computation units
z Processor cores
z DSP blocks
Dedicate Arithmetic Blocks
QuickLogic
Altera
Xilinx
Processor Cores
Altera DE2-70