Professional Documents
Culture Documents
PPD Lectures
Programmable Logic is a Key Underlying Technology for PP Experiments.
Commercial Devices. Developments driven by Industry. Telecomms, Gaming, Aerospace, Automotive, Set-top boxes.
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
CMS CERN LHC Custom Electronics Chips ASICs ANALOGUE $$$ Rad Hard, Low Power
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
CMS CERN LHC Custom Electronics Chips ASICs ANALOGUE $$$ Rad Hard, Low Power
Custom Digital Processing Boards VME Bus Crates The Design Warriors Guide to FPGAs
Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Ultra Fast Trigger Systems (Trigger Algorithms) Clock Accurate Timing Massively Parallel Data Processing (Silicon Trackers with Millions of Channels)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
CMS
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Lecture Outline
Basics Evolution
Architecture
Design Flow
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Digital Logic
Logic Gates
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Digital Logic
Logic Gates
Transistor Switches
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Digital Logic
Logic Gates
MOORES LAW
Transistor Switches
< 40 nm ! $$$
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
Digital Logic
3 Inputs
Black Box
SUM of PRODUCTS
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Digital Logic
3 Inputs
Black Box
SUM of PRODUCTS
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Digital Logic
3 Inputs
Black Box
SUM of PRODUCTS
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Sums
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Programmed PLD
Sums
Product Terms
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
x x
x
Programmed PLD
x
Sums
Product Terms
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
GLUE LOGIC
x x
x x
x
Programmed PLD
x
Sums
Product Terms
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Complex PLDs
CPLDs Programmable PLD Blocks Programmable Interconnects Electrically Erasable links
Feedback Outputs
CPLD Architecture
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Sequential Circuits
Combinational Logic (Larger circuits difficult to predict) Synchronous Logic driven by a CLOCK Registers, Flip Flops (Memory)
Inputs
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Sequential Circuits
Combinational Logic (Larger circuits difficult to predict) Synchronous Logic driven by a CLOCK Registers, Flip Flops (Memory)
Intermediate Inputs
CLOCK
Register
EDGES
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Sequential Circuits
Combinational Logic (Larger circuits difficult to predict) Synchronous Logic driven by a CLOCK Registers, Flip Flops (Memory)
Intermediate Inputs
EDGES
john.coughlan@stfc.ac.uk
Simple Programmable Logic Blocks Massive Fabric of Programmable Interconnects Standard CMOS Integrated Circuit fabrication process as for memory chips (Moores Law)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Simple Programmable Logic Blocks Massive Fabric of Programmable Interconnects Standard CMOS Integrated Circuit fabrication process as for SRAM memory chips (Moores Law)
FPGA Architecture
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Logic Blocks
Logic Functions implemented in Look Up Table LUTs. Flip-Flops. Registers. Clocked Storage elements. Multiplexers (select 1 of N inputs)
4-input LUT
y mux flip-flop q
FPGA Fabric
Logic Block
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
LUT contains Memory Cells to implement small logic functions Each cell holds 0 or 1 . Programmed with outputs of Truth Table Inputs select content of one of the cells as output
3 Inputs LUT -> 8 Memory Cells
16-bit SR 16x1 RAM
3 6 Inputs
a b c d e
4-input LUT
y mux flip-flop q
SRAM
Multiplexer MUX
john.coughlan@stfc.ac.uk
LUT contains Memory Cells to implement small logic functions Each cell holds 0 or 1 . Programmed with outputs of Truth Table Inputs select content of one of the cells as output Configured by re-programmable SRAM memory cells
3 Inputs LUT -> 8 Memory Cells
16-bit SR 16x1 RAM
3 6 Inputs
a b c d e
4-input LUT
y mux flip-flop q
SRAM
Multiplexer MUX
john.coughlan@stfc.ac.uk
Logic Blocks
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Logic Blocks
Larger Logic Functions built up by connecting many Logic Blocks together Determined by SRAM cells
SRAM
SRAM cells
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Clocked Logic
Registers on outputs. CLOCKED storage elements. Synchronous FPGA Logic Design, Pipelined Logic. FPGA Fabric Pulse from Global Clock (e.g. LHC BX frequency)
4-input LUT
y mux flip-flop q
FPGA Fabric Special Routing for Clocks Clock from Outside world (eg LHC bunch frequency)
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
General-purpose I/O Up to > 1,000 I/O pins (several 100 MHz) banks 0 through 7
3 6
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
General-purpose I/O Up to > 1,000 I/O pins (several 100 MHz) banks 0 through 7
3 6
FPGA
Optical TRx
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Graphical Flowchart
Block-level schematic
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Language describing hardware (Engineers call it FIRMWARE) Doesnt behave like normal programming language C/C++ Describe Logic as collection of Processes operating in Parallel Language Constructs for Synchronous Logic Compiler (Synthesis) Tools recognise certain code constructs and generates appropriate logic Not all constructs can be implemented in FPGA! 2 Popular languages are VHDL , VERILOG Easy to start learning Hard to master!
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
VHDL
ENTITY Declaration Input Output to Module (STD LOGIC)
CONCURRENT ASSIGNMENTS
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
VHDL
PROCESS Declaration. CONCURRENT functions. Synchronous Logic.
COMPONENT Declaration
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Compile (Synthesis) into NETLIST. Boolean Logic Gates. Target FPGA Device
Mapping Routing
Schematic capture
Gate-level netlist
BEGIN CIRCUIT=TEST INPUT SET_A, SET-B, DATA, CLOCK, CLEAR_A, CLEAR_B; OUTPUT Q, N_Q; WIRE SET, N_DATA, CLEAR; GATE G1=NAND (IN1=SET_A, IN2=SET_B, OUT1=SET); GATE G2=NOT (IN1=DATA, OUT1=N_DATA); GATE G3=OR (IN1=CLEAR_A, IN2=CLEAR_B, OUT1=CLEAR); GATE G4=DFF (IN1=SET, IN2=N_DATA, IN3=CLOCK, IN4=CLEAR, OUT1=Q, OUT2=N_Q); END CIRCUIT=TEST;
Bit File for FPGA Commercial CAE Tools (Complex & Expensive) Logic Simulation
Design Flow
Timing analysis and timing report Gate-level netlist for simulation SDF (timing info) for simulation
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Compile (Synthesis) into NETLIST. Boolean Logic Gates. Target FPGA Device
Mapping Routing
Schematic capture
Gate-level netlist
BEGIN CIRCUIT=TEST INPUT SET_A, SET-B, DATA, CLOCK, CLEAR_A, CLEAR_B; OUTPUT Q, N_Q; WIRE SET, N_DATA, CLEAR; GATE G1=NAND (IN1=SET_A, IN2=SET_B, OUT1=SET); GATE G2=NOT (IN1=DATA, OUT1=N_DATA); GATE G3=OR (IN1=CLEAR_A, IN2=CLEAR_B, OUT1=CLEAR); GATE G4=DFF (IN1=SET, IN2=N_DATA, IN3=CLOCK, IN4=CLEAR, OUT1=Q, OUT2=N_Q); END CIRCUIT=TEST;
Bit File for FPGA Commercial CAE Tools (Complex & Expensive) Logic Simulation
Design Flow
Timing analysis and timing report Gate-level netlist for simulation SDF (timing info) for simulation
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Compile (Synthesis) into NETLIST. Boolean Logic Gates. Target FPGA Device
Mapping Routing
Schematic capture
Gate-level netlist
BEGIN CIRCUIT=TEST INPUT SET_A, SET-B, DATA, CLOCK, CLEAR_A, CLEAR_B; OUTPUT Q, N_Q; WIRE SET, N_DATA, CLEAR; GATE G1=NAND (IN1=SET_A, IN2=SET_B, OUT1=SET); GATE G2=NOT (IN1=DATA, OUT1=N_DATA); GATE G3=OR (IN1=CLEAR_A, IN2=CLEAR_B, OUT1=CLEAR); GATE G4=DFF (IN1=SET, IN2=N_DATA, IN3=CLOCK, IN4=CLEAR, OUT1=Q, OUT2=N_Q); END CIRCUIT=TEST;
Bit File for FPGA Commercial CAE Tools (Complex & Expensive) Logic Simulation
Design Flow
Timing analysis and timing report Gate-level netlist for simulation SDF (timing info) for simulation
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Configuring an FPGA
Millions of SRAM cells holding LUTs and Interconnect Routing Volatile Memory. Lose configuration when board power is turned off. Keep Bit Pattern describing the SRAM cells in non-Volatile Memory e.g. PROM or Digital Camera card Configuration takes ~ secs
JTAG Port
Configuration data in Configuration data out
SRAM
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Configuring an FPGA
Millions of SRAM cells holding LUTs and Interconnect Routing Volatile Memory. Lose configuration when board power is turned off. Keep Bit Pattern describing the SRAM cells in non-Volatile Memory e.g. PROM or Digital Camera card Configuration takes ~ secs
JTAG Port
Configuration data in Configuration data out
= I/O pin/pad
= SRAM cell
SRAM
JTAG Testing
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
john.coughlan@stfc.ac.uk
Large Complex Functions Re-Programmability, Flexibility. Massively Parallel Architecture Processing many channels simultaneously cf MicroProcessor Fast Turnaround Designs Standard IC Manufacturing Processes. Moores Law Mass produced. Inexpensive. Many variants. Sizes. Features. PP Not Radiation Hard Power Hungry No Analogue
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
FPGA Trends
Number of LCs
State of Art is 40nm on 300 mm wafers Top of range >500,000 Logic Blocks >1,000 pins (Fine Pitched BGA)
1990
1995
2000
2005 Year
2010
2015
2020
2025
0.1
$ / LC
Problems
0.01
0.001
CAE Tools
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Summary
Basics Evolution
Architecture
Design Flow
john.coughlan@stfc.ac.uk
References
www.xilinx.com www.altera.com
FPGA Online
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Spare Slides
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
System on a Chip
uP
uP
uP
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
1945 1950 1955 1960 1965 1970 1975 1980 1985 1990 1995 2000 Transistors ICs (General) SRAMs & DRAMs Microprocessors SPLDs CPLDs ASICs FPGAs
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)
Prefabricated Programmed
SPLDs CPLDs
The GAP
Large Complex Functions . Millions of Gates Customised for Extremes of Speed, Low Power, Radiation Hardness (Very) Expensive to Design (in small quantities) > $1 Million mask set (Very) Hard to Design. Long Design cycles. NOT Reprogrammable. FROZEN in Silicon. High Risk
john.coughlan@stfc.ac.uk
The Design Warriors Guide to FPGAs Devices, Tools, and Flows. ISBN 0750676043 Copyright 2004 Mentor Graphics Corp. (www.mentor.com)