1
© LATTICE SEMICONDUCTOR CORPORATION 2006
Static Timing Analysis
Techniques for FPGAs
© LATTICE SEMICONDUCTOR CORPORATION 2006
2
© LATTICE SEMICONDUCTOR CORPORATION 2006
Static Timing Analysis
Techniques for FPGAs
© LATTICE SEMICONDUCTOR CORPORATION 2006
Why STA?
• Verify the design meets timing constraints
• Faster than timing-driven, gate-level simulation
• Ease design debugging
3
© LATTICE SEMICONDUCTOR CORPORATION 2006
Timing In FPGAs
LatticeECP2/M Slice Diagram
© LATTICE SEMICONDUCTOR CORPORATION 2006
Agenda
• Introduction to Static Timing Analysis
• Elements of Timing Verification
• Timing in FPGAs
• Analysis Examples
4
© LATTICE SEMICONDUCTOR CORPORATION 2006
Overview
• Design Flow
• Dynamic Versus Static Simulation
• Key Definitions
– Critical Path
– Arrival Time
– Required Time
– Slack
© LATTICE SEMICONDUCTOR CORPORATION 2006
Design Flow
New
Design
RTL
Development
Synthesis
Place & Route
Program
Device
Design
Complete
Post-PAR
STA
Post-Synthesis
STA
Timing
Simulation
Functional
Simulation
5
© LATTICE SEMICONDUCTOR CORPORATION 2006
Dynamic Versus Static Verification
9Ex: Lattice Semiconductor trace programEx: Mentor Graphics ModelSim
9 Checks every path for timing violationsDifficult to cover all paths
9 Min/Max, clock skew, exceptionsSimple timing checks
9 Synchronous designs onlySupports asynchronous designs
9 Confirms timing onlyConfirms function and timing
9 Typical runtime is fastTypically time and compute intensive
StaticDynamic
© LATTICE SEMICONDUCTOR CORPORATION 2006
STA Compute Method