Upload
chiportal
View
417
Download
1
Tags:
Embed Size (px)
Citation preview
May 4, 2011 1May 4, 2011
Ziyad HannaJasper Design Automation
May 4, 2011
How do we break the Formal Verification Scalability
Barrier?
May 4, 2011 2
Jasper Design Automation
Gothenburg, Sweden
Mountain View, CA
Belo Horizonte, Brazil
Haifa, Israel
HP
EDA leader of formal technologies in delivering targeted ROI solutions for the design and verification
May 4, 2011 3
Design and Verification Activities … Spec development
Test planning
Unit testing
Simulation
Coverage Analysis
Assertion writing
Formal verification
Protocol Checking
Architecture Verification
Software Development
OS bring up
Post –si Debug & Validation
FPGA
Emulation
Benchmarking
RTL Development
Power estimation
Power Verification
Synthesis
Floor Planning
Timing Analysis
Custom block design
Library Design
Layout
Full chip integrationFirmware
Mask development
Heat
Reliability Verification
Circuit marginality verification
Noise Analysis
Device Driver development
RC estimation and verification
Process development
Equivalence Checking
Connectivity verification
Performance Verification
Fracture Verification
High Level Synthesis
How to cope with all of this
?
May 4, 2011 4
Problem Statement •Verification complexity increases at an
exponential rate–Costly labor and IT resources
–Hard to predict the quality and TTM
•Existing dynamic verification methods are unable to close the verification gap
–Logic escapes are still cannot be avoided–Post-Silicon validation
•Design problem, or Verification problem, or both?
May 4, 2011 5
Formal Technology Comes of Age•EDAC Market Statistics Service (MSS)
aggregates and reports revenue growth by tool category
•Formal Property Checking category had 3rd fastest-growing revenue in EDA/IP (latest MSS report Q3’10) Fastest-Growing EDA & IP
Categories Over $10M/year4Q/4Q
Growth Rate
BIST / Scan 65.9%Verification IP 59.5%Formal Property Checking 51.2%EDA Industry Average 4.9%
May 4, 2011 6
What We’ve Learned About the Market
Early Formal ToolsRequired Formal PhD Users
Effort
Value
Show Deployability
Rais
e Ex
pect
ation
s
Big EDA Vendors’ Formal Tools Reduced Effort, Sacrificed Value
May 4, 2011 7
Scalability – Customers Perspectives •Handle bigger and more complex designs
–From small blocks, units, clusters, CPU to systems–Coping with exponential design complexity
•Solve hard problems in design and verification–Spectrum of applications beyond model checking
•Handle emerging design styles–FF/Latch based designs, async, clock glitches, CDC…
•Enable project level multiuser/parallel engineering/reuse and collaboration methodologies
•Scale economically with high utilization of licenses
May 4, 2011 8
Scalability - Technology Perspectives •Interactive: users have full control and performing parallel tasks
Capacity & Performance: coping with large and complex designs
Parallel: multithreading, computer clusters, farms and clouds
Elastic: Dynamic verification tasks, grow and shrink on-the-fly
Programmable: API for creating/expanding capabilities
Collaboration: interoperability and sharing results
May 4, 2011 9
Scalability - Technology Perspectives •Interactive: users have full control and performing parallel tasks
Capacity & Performance: coping with large and complex designs
Parallel: multithreading, computer clusters, farms and clouds
Elastic: Dynamic verification tasks, grow and shrink on-the-fly
Programmable: API for creating/expanding capabilities
Collaboration: interoperability and sharing results
May 4, 2011 10
Design Analyze & Elaborate
Automatic Clock and Reset Analysis,Visualize Important Behaviors
Automatic Reduction and Tuning
Automatic Abstraction
Proof Engines
ProofGrid
CEXDebug
Abstractions / Proof Accelerators
Design Space Tunneling (DST)(Learn Design, Discover Abstraction )
State Space Tunneling (SST)(Discover and Prove Intermediate Properties )
Proof?
Automatic Convergence Flow Tool Assisted Interactive Flow
Design Info.Black boxingElaborate control
Clock and reset analysisSource code viewer
Elastic Task Management
Create/copy tasksStopatAdd/remove assumptionsAdd/remove assertionsSet engine mode
ProofGrid Manager
NO
Visualize, ComprehendChange engine modeLift assumptionsCheck assumptions
PGM Analysis Complexity Manager
NO – Interactive Proof
May 4, 2011 11
VisualizeTM for Interactive Debug & Exploration
•Configurations stack manager•Pushes & pops constraints•Modifies netlist on-the-fly
QuietTrace Trace concatenation Auto-exploration
Data structure corruption at cycle 16. Can it then cause to
violation interrupt?
failure_condition
May 4, 2011 12
Scalability - Technology Perspectives
•Interactive: users have full control and performing parallel tasks
Capacity & Performance: coping with large and complex designs
Parallel: multithreading, computer clusters, farms and clouds
Elastic: Dynamic verification tasks, grow and shrink on-the-fly
Programmable: API for creating/expanding capabilities
Collaboration: interoperability and sharing results
May 4, 2011 13
Common Big Numbers in Modern CPU, Internet and Formal Verification
•10^11 = 100,000,000,000 Estimated # of web pages in the internet
•10^12 = 1,000,000,000,000 Estimated # of polygons in modern CPU
•10^29 ~= 29715398713946329230000259072
Exact # of reachable states of a simple arbiter (Input =42, Flop =104). Formal tools can build in few seconds
•10^57 ~= 15491717493384086302251914627137286712632320245916237824
# of reachable state in real life RTL design (Input=58, Flop=117). Formal tool can build in 10 minutes !
May 4, 2011 14
Model Checkingat depth k cycles
CEX?done
No CEX?
Automatic Abstraction
Model Checking doneTrue?
False?
Lear
ning
, Inc
reas
e k,
refin
emen
t
Managing Proof Capacity – Automatic Abstraction
May 4, 2011 15
Managing Proof Capacity – Interactive Abstraction
•Design Tunneling – formal
analysis guided expansion
algorithms
•Interactive State Space Tunneling
•Design Abstraction and Proof
Accelerators
May 4, 2011 16
•Emerging hardware gives 2X speedup•Parallel Proofs boost the performance by additional 10X
•Engine technology boost the proofs by additional ~4X
Performance Evolution(on SUN OPENSPARC Design)
Phase-1 Phase-2 Phase-3
May 4, 2011 17
Scalability - Technology Perspectives •Interactive: users have full control and performing parallel tasks
Capacity & Performance: coping with large and complex designs
Parallel: multithreading, computer clusters, farms and clouds
Elastic: Dynamic verification tasks, grow and shrink on-the-fly
Programmable: API for creating/expanding capabilities
Collaboration: interoperability and sharing results
May 4, 2011 18
ProofGrid™ - Parallel Processing
✖
✔
✔
✔
✖
✖
✔
engine D
✔
✔
✔
✔
✖
P0
P1
P2
P3
P4
P5
P7
P8
P9
P10
P11
P13
✖P6
C I G K B
Capacity
Thr
ough
put
•Dynamic scheduling and parallel engine allocation on local machine, cluster, farm or cloud
•Seamless tracking & reporting
May 4, 2011 19
Property Divide and Conquer always (P and Q and R) <=> (always P) and (always Q) and (always R)
P
Q
R
P
Q
R
Server Farm
✔
✔
✔
✔
•A subset of properties can be decomposed•Sometimes it is harder to prove the sub goals standalone!
May 4, 2011 20
Scalability - Technology Perspectives •Interactive: users have full control and performing parallel tasks
Capacity & Performance: coping with large and complex designs
Parallel: multithreading, computer clusters, farms and clouds
Elastic: Dynamic verification tasks, grow and shrink on-the-fly
Programmable: API for creating/expanding capabilities
Collaboration: interoperability and sharing results
May 4, 2011 21
Arch and uArch Design
RTL Block Design
RTL Block Verification
Design and IP Leverage
SoC Integration
Protocol Certification
Post-Silicon Debug & Verification Low Power Verification
VerificationData Base
Scalability via Sharing
May 4, 2011 22
Conclusions•Scalability is a multi-dimensional goal and
requires a holistic approach to achieve it
•Scalability from user perspective is a key enabler for making formal key technology to deploy
•With scalability in mind, formal technology has come of age
May 4, 2011 23
Thank You