SlideShare a Scribd company logo
Case Study of End to End Formal Verification Methodology
Methodology for verifying a block completely using formal methods
• Alternative for traditional UVM based IP verification environment
• Avoid high-cost development of custom agents, sequence libs, checkers
for UVM test benches with custom interfaces
• UVM agents or VIPs are replaced by “proof-kits”
IP functionality is fully described using formal properties
• All properties derived from spec and reviewed with arch/design teams
• Includes covers, black-box and white-box assertions, for all
control/data/debug interfaces
Work can start after specifications are ready.
• First bugs are available almost immediately after the first RTL drop
Registers are checked with assertions generated from an IPXACT XML
source
IP is refined as assertions are implemented & proofs are debugged
IP is fully verified when all the assertions and proof kits are proven
• Experiment with end-to-end formal methods to achieve same quality
as traditional UVM test benches, especially for certain types of control-
path designs
• Reduce verification effort by deploying a formal verification only
environment due to resource/schedule pressures on IP verification
• Develop an end-to-end formal verification methodology for custom IP
blocks
• Identify areas of improvement with the EDA vendors on metrics used
for formal end-to-end IP verification signoff
Benefits
• Early feedback on RTL due to formal methodology
• Exhaustive verification compared to simulation based bug-hunting
methodologies. Multiple SEED regressions not required to close coverage
• Shorter DV Cycle compared to UVM
• Portability of assertions to other verification environments (subsystem/chip
level test benches)
• Uses proof-kits, which are lower cost (effort) than traditional UVM VIP
Challenges
• Relating formal verification “metrics” to traditional metrics used for
simulation based test benches (e.g. code/functional coverage)
• Reviews were more time consuming to ensure the completeness of the
assertions and assumptions to correctly constrain the design
• Partitioning of proofs to achieve a reasonable run time
• Trade-offs between automatic vs manual generation of assertions
Interrupt Controller (INTC)
Maskable Level Interrupts
InterruptRouting
Interrupt Bit-Vectors
Bus Slave
Maskable Output Interrupts
MMIO
Crossbar (XB)
Unit0
Unit 2
Bank Modules
Unit1
Hierarchical Strategy
• When an IP has repetitive components, total runtime can be reduced by
separately verifying the IP’s sub-blocks and connections. Proofs can focus
on unique interactions and ignore repeated subblocks, or repeated
subblocks can be blackboxed with additional constraints.
Divide and Conquer
• Dividing large bodies of assertions into separate jobs, keeping existing
limits, abstractions, et al. the same between jobs, yielded a reduction in
total runtime.
Abstractifying
• Large families of assertions to be reduced to equivalent, single assertions
with limited addition of Verilog in the glue logic. This reduction in property
count significantly improved runtime, despite checking identical
functionality.
Traditional Strategies to Improve Formal Verification
• Tool specific optimizations
• Constraining inputs
Case Study of End to End Formal Verification Methodology
70 57
72
17
25
240 0
23
0
20
40
60
80
100
120
140
INTC XBAR Average-UVM-Simple
Effort Comparison - PersonDays
Effort - RTL 0.5 Effort - RTL 0.8 Effort - RTL 1.0
8.46
3.40 2.79
0.00
1.00
2.00
3.00
4.00
5.00
6.00
7.00
8.00
9.00
INTC XBAR Average-UVM-Simple
Total Bugs found by DV per 1K LOC-DV
16
3
20
0
5
10
15
20
25
INTC XBAR Average-UVM-Simple
Time to First Design Bug (First Bug - First Verif
Checkin) Calendar Days
Item INTC XBAR Average-UVM-Simple
Effort - RTL 0.5 70 57 72
Effort - RTL 0.8 17 25 24
Effort - RTL 1.0 0 0 23
LOC-RTL 21000 4500 3100
LOC-DV 1300 5000 5350
Total Bugs found by IP Verif 11 17 17
Gate Count (Est) 835734 60186 58502
Escaped Bugs from L1 1* 1 1
Shallow Cone of Logic
• Do any possible states of the IP require more cycles to reach, than can be
tolerated in FE2E?
High Symmetry
• The IP reuses sub-blocks or has repeating patterns
Low Code Complexity
• If the IP can reasonably be fully specified in SVA, it is likely a good
candidate for FE2E
Avoid Blocks with Known Large State Spaces
• Signal Processing Blocks
Make Formal coverage reporting more like simulation based metrics
• Add features to improve compatibility with existing coverage tracking. e.g.
merging reports from hierarchical and partitioned FE2E environments.
Provide tools to help appraise how fit an IP is for FE2E
Automate specific methods to reduce runtime that are normally done
manually
• Automate Divide and Conquer
• Provide suggestions to user to blackbox repeated modules
Warnings for properties which are anticipated to not converge in a
reasonable amount of time based on certain heuristics
Provide more proofkits for standard interfaces
• End-To-End Formal IP Verification is well suited for certain types of
symmetric and control path intensive designs.
• FE2E is worth the savings in verification effort & resources, compared
to a traditional simulation based approach
• We achieve the same quality of verification with FE2E as with traditional
UVM testbenches.
• The main challenge is to determine if an IP can be verified using this
methodology and manage the proof run times.

More Related Content

PDF
Bristol 2009 q1_blackmore_tim
PDF
Formal Verification
PDF
Bangalore march07
PPT
system verilog
PDF
Functional verification techniques EW16 session
PPTX
SOC Verification using SystemVerilog
PDF
PDF
Code Management Workshop
Bristol 2009 q1_blackmore_tim
Formal Verification
Bangalore march07
system verilog
Functional verification techniques EW16 session
SOC Verification using SystemVerilog
Code Management Workshop

What's hot (19)

PDF
How to create SystemVerilog verification environment?
PDF
Bristol 2009 q1_eder_kersten
PPT
Classic Formal Methods Model Checking
PPT
Coverage Solutions on Emulators
PDF
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
PDF
CPU Verification
PDF
Verification Engineer - Opportunities and Career Path
PDF
Chris brown ti
PDF
A comprehensive formal verification solution for ARM based SOC design
PDF
Session 8 assertion_based_verification_and_interfaces
PDF
System verilog verification building blocks
PDF
verification_planning_systemverilog_uvm_2020
PDF
Verification challenges and methodologies - SoC and ASICs
PPT
Verification strategies
PDF
Chipions session 2021 - VLSI career
PDF
Validation and-design-in-a-small-team-environment
PDF
Session 9 advance_verification_features
PPTX
Compiler Engineering Lab#2
PPTX
System verilog control flow
How to create SystemVerilog verification environment?
Bristol 2009 q1_eder_kersten
Classic Formal Methods Model Checking
Coverage Solutions on Emulators
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
CPU Verification
Verification Engineer - Opportunities and Career Path
Chris brown ti
A comprehensive formal verification solution for ARM based SOC design
Session 8 assertion_based_verification_and_interfaces
System verilog verification building blocks
verification_planning_systemverilog_uvm_2020
Verification challenges and methodologies - SoC and ASICs
Verification strategies
Chipions session 2021 - VLSI career
Validation and-design-in-a-small-team-environment
Session 9 advance_verification_features
Compiler Engineering Lab#2
System verilog control flow
Ad

Similar to Case Study of End to End Formal Verification Methodology (20)

PDF
A Survey of functional verification techniques
PPTX
ADLV UNIT 1 STUDENT .N (1) (1).pptx_____
PDF
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
PDF
Validation and Design in a Small Team Environment
PDF
Formal Verification Techniques
PDF
Advanced Verification Methodology for Complex System on Chip Verification
PDF
5 verification methods
PDF
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
PDF
Formal verification
PDF
2019 2 testing and verification of vlsi design_verification
PDF
I Never Thought I Would Grow Up to be This Formal
PPT
Dill may-2008
PDF
Verification Challenges and Methodologies
PDF
Formal Verification Theory and Practice
PPTX
TRACK H: Using Formal Tools to Improve the Productivity of Verification at ST...
PDF
Basics of Functional Verification - Arrow Devices
PPTX
#1 formal methods – introduction for software engineering
PPT
Dealing with the Three Horrible Problems in Verification
PDF
A Unique Test Bench for Various System-on-a-Chip
PDF
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
 
A Survey of functional verification techniques
ADLV UNIT 1 STUDENT .N (1) (1).pptx_____
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
Validation and Design in a Small Team Environment
Formal Verification Techniques
Advanced Verification Methodology for Complex System on Chip Verification
5 verification methods
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
Formal verification
2019 2 testing and verification of vlsi design_verification
I Never Thought I Would Grow Up to be This Formal
Dill may-2008
Verification Challenges and Methodologies
Formal Verification Theory and Practice
TRACK H: Using Formal Tools to Improve the Productivity of Verification at ST...
Basics of Functional Verification - Arrow Devices
#1 formal methods – introduction for software engineering
Dealing with the Three Horrible Problems in Verification
A Unique Test Bench for Various System-on-a-Chip
Digital Security by Design: Formal Verification with Broad-Spectrum ANSI-C Re...
 
Ad

Case Study of End to End Formal Verification Methodology

  • 2. Methodology for verifying a block completely using formal methods • Alternative for traditional UVM based IP verification environment • Avoid high-cost development of custom agents, sequence libs, checkers for UVM test benches with custom interfaces • UVM agents or VIPs are replaced by “proof-kits” IP functionality is fully described using formal properties • All properties derived from spec and reviewed with arch/design teams • Includes covers, black-box and white-box assertions, for all control/data/debug interfaces Work can start after specifications are ready. • First bugs are available almost immediately after the first RTL drop Registers are checked with assertions generated from an IPXACT XML source IP is refined as assertions are implemented & proofs are debugged IP is fully verified when all the assertions and proof kits are proven
  • 3. • Experiment with end-to-end formal methods to achieve same quality as traditional UVM test benches, especially for certain types of control- path designs • Reduce verification effort by deploying a formal verification only environment due to resource/schedule pressures on IP verification • Develop an end-to-end formal verification methodology for custom IP blocks • Identify areas of improvement with the EDA vendors on metrics used for formal end-to-end IP verification signoff
  • 4. Benefits • Early feedback on RTL due to formal methodology • Exhaustive verification compared to simulation based bug-hunting methodologies. Multiple SEED regressions not required to close coverage • Shorter DV Cycle compared to UVM • Portability of assertions to other verification environments (subsystem/chip level test benches) • Uses proof-kits, which are lower cost (effort) than traditional UVM VIP Challenges • Relating formal verification “metrics” to traditional metrics used for simulation based test benches (e.g. code/functional coverage) • Reviews were more time consuming to ensure the completeness of the assertions and assumptions to correctly constrain the design • Partitioning of proofs to achieve a reasonable run time • Trade-offs between automatic vs manual generation of assertions
  • 5. Interrupt Controller (INTC) Maskable Level Interrupts InterruptRouting Interrupt Bit-Vectors Bus Slave Maskable Output Interrupts MMIO
  • 7. Hierarchical Strategy • When an IP has repetitive components, total runtime can be reduced by separately verifying the IP’s sub-blocks and connections. Proofs can focus on unique interactions and ignore repeated subblocks, or repeated subblocks can be blackboxed with additional constraints. Divide and Conquer • Dividing large bodies of assertions into separate jobs, keeping existing limits, abstractions, et al. the same between jobs, yielded a reduction in total runtime. Abstractifying • Large families of assertions to be reduced to equivalent, single assertions with limited addition of Verilog in the glue logic. This reduction in property count significantly improved runtime, despite checking identical functionality. Traditional Strategies to Improve Formal Verification • Tool specific optimizations • Constraining inputs
  • 9. 70 57 72 17 25 240 0 23 0 20 40 60 80 100 120 140 INTC XBAR Average-UVM-Simple Effort Comparison - PersonDays Effort - RTL 0.5 Effort - RTL 0.8 Effort - RTL 1.0 8.46 3.40 2.79 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 INTC XBAR Average-UVM-Simple Total Bugs found by DV per 1K LOC-DV 16 3 20 0 5 10 15 20 25 INTC XBAR Average-UVM-Simple Time to First Design Bug (First Bug - First Verif Checkin) Calendar Days Item INTC XBAR Average-UVM-Simple Effort - RTL 0.5 70 57 72 Effort - RTL 0.8 17 25 24 Effort - RTL 1.0 0 0 23 LOC-RTL 21000 4500 3100 LOC-DV 1300 5000 5350 Total Bugs found by IP Verif 11 17 17 Gate Count (Est) 835734 60186 58502 Escaped Bugs from L1 1* 1 1
  • 10. Shallow Cone of Logic • Do any possible states of the IP require more cycles to reach, than can be tolerated in FE2E? High Symmetry • The IP reuses sub-blocks or has repeating patterns Low Code Complexity • If the IP can reasonably be fully specified in SVA, it is likely a good candidate for FE2E Avoid Blocks with Known Large State Spaces • Signal Processing Blocks
  • 11. Make Formal coverage reporting more like simulation based metrics • Add features to improve compatibility with existing coverage tracking. e.g. merging reports from hierarchical and partitioned FE2E environments. Provide tools to help appraise how fit an IP is for FE2E Automate specific methods to reduce runtime that are normally done manually • Automate Divide and Conquer • Provide suggestions to user to blackbox repeated modules Warnings for properties which are anticipated to not converge in a reasonable amount of time based on certain heuristics Provide more proofkits for standard interfaces
  • 12. • End-To-End Formal IP Verification is well suited for certain types of symmetric and control path intensive designs. • FE2E is worth the savings in verification effort & resources, compared to a traditional simulation based approach • We achieve the same quality of verification with FE2E as with traditional UVM testbenches. • The main challenge is to determine if an IP can be verified using this methodology and manage the proof run times.