SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
Integrating Formal Into Main-Stream Verification: The IBM
Experience
Jason Baumgartner, Viresh Paruthi
IBM Corporation
Thanks to: Hari Mony, Wolfgang Roesner
March 21, 2007
http://www.research.ibm.com/sixthsense
1
Overview
¯ Simulation vs. Formal Verification (FV)
¯ Bringing FV to the Masses
– Fit FV within Existing Design Methodology
– Enable Non-Experts to Leverage FV
– Scale FV to Large Testbenches
– Increase Return on Investment through Testbench Reuse
¯ Reusing Sim Testbenches in FV
2
Simulation
¯ Validates the design against specific sequences of input stimuli
  Scalable, though non-exhaustive: suffers the coverage problem
¯ Sim specs can be written using a variety of languages
+ Synthesizable languages: PSL, SVA, HDL-based
  Non-synthesizable languages: C / C++ variants
  These languages cannot readily be reused in formal, emulation
Bug
Random Sim
Unexplored
State Space
3
Formal Verification
+ Exhaustive (unlike sim): finds corner-case bugs, yields proofs
+ Automated: easy to use, for smaller problems (block-level)
  Substantial expertise, manual effort required for larger designs
  More difficult to cover (micro-)architectural properties
  A different type of coverage problem
  Requires synthesizable languages: PSL, SVA, HDL-based
Bug
Exhaustive
Search
Unexplored
State Space
Completed
4
Simulation vs. FV
¯ Sim retains predominant industrial framework due to
1. Scalability: useful for tasks too large for FV
– May refer to as ease of use
2. Risk that formal spec may not pay off; merely choke FV tool
3. Legacy: tools, skills, methodology using sim are well-established
4. Reuse of verif IP: cost to rewrite sim specs in a formal language
¯ Though sim has its own drawbacks
– Misses bugs!
– Methodologies for high coverage are time-consuming
5
How can we close the Sim FV Gap?
¯ Full FV of complex designs requires expensive, risky paradigm shift
– A good goal, but needs to be eased into...
6
How can we ease into Wider-Spread FV? (1)
¯ Do not require a radical change in design paradigm to enable FV
– Design methodology change has associated cost, risk in itself
– Need for reuse of IP, skills, tools, methodologies is a high barrier
¯ While such a change may have many long-term benefits...
– There are many bugs to be found in today’s design paradigm!
7
How can we ease into Wider-Spread FV? (2)
¯ Enable non-experts to leverage FV
– Cannot expect verif+design team to all have PhDs in FV!
£ Goal: make FV as easy to use as sim
£ Ease of use requires scalability and automation
– Costly to always throw learning curve of new design at FV gurus
£ More cost effective for designer / local verif team to write specs?
– Leverage easy-to-use sequential equiv checking paradigms
8
How do we achieve Scalability and Automation?
1. Tune system for importing and manipulating LARGE designs
2. Integrate falsification as well as proof threads
¯ Semi-formal falsification improves ROI of formal spec
3. Integrate a variety of algorithms
¯ Every problem is different
¯ Different proof algorithms have different strengths / weaknesses
¯ Technological advances continue to push the capacity of FV
9
Semi-Formal Verification
¯ Uses resource-bounded formal search to amplify simulation
– Leverages simulation to reach deep states
– Formal search triggered from deep states
¯ Much more scalable than pure formal; lessens formal spec risk
– Very useful for quickly flushing out complex design bugs
– Enabling technology for wider-spread formal
Bug
Random Sim
Exhaustive
Search
Completed
Unexplored
State Space
10
How can we ease into Wider-Spread FV? (3)
¯ Offer tangible return on investment (ROI) and resource savings
– Scalability reduces negative ROI risk of formal spec development
– Leverage FV without substantial head-count increase
£ Cannot afford disjoint sim + FV team for every design component
¡ Goal: reuse specs across formal + sim
¡ Need to disperse FV spec and deployment from team of gurus
11
Testbench Reuse
¯ Requires scaling FV to unit-level testbenches
+ More meaningful than block-level testbenches
+ Better-documented interfaces to drive
+ More encompassing properties to check
+ Verify functionality vs. verify blocks
+ More cost-effective: fewer testbenches to cover design
  Big, ugly testbenches may need tweaking for optimal formal results
– Reserve FV gurus for this purpose
– (and for emergencies)
12
Conclusion
¯ IBM SixthSense philosophy: non-intrusive FV
– Scale FV to sim-sized testbenches
£ Integrate semi-formal, and variety of synergistic algos
– Ensure high automation, ease of use
¯ Push for reusable testbenches across sim + FV
– Greater ROI of specification investment
– Disperse formal spec effort; retain FV gurus for critical tasks
¯ Result: substantially wider-spread use of FV
13

Más contenido relacionado

Similar a Integrating Formal Into Main-Stream Verification: The IBM Experience

I Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This FormalI Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This Formal
DVClub
 
ModifiedInternPresentation
ModifiedInternPresentationModifiedInternPresentation
ModifiedInternPresentation
Dan Petrisko
 
Firmware Improvement Roadmap
Firmware Improvement RoadmapFirmware Improvement Roadmap
Firmware Improvement Roadmap
Scott Sweeting
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402
Rosalind Radcliffe
 
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity Software Ireland
 
Fllow con 2014
Fllow con 2014 Fllow con 2014
Fllow con 2014
gbgruver
 

Similar a Integrating Formal Into Main-Stream Verification: The IBM Experience (20)

I Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This FormalI Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This Formal
 
ModifiedInternPresentation
ModifiedInternPresentationModifiedInternPresentation
ModifiedInternPresentation
 
Model-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight ExecutiveModel-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight Executive
 
Firmware Improvement Roadmap
Firmware Improvement RoadmapFirmware Improvement Roadmap
Firmware Improvement Roadmap
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402
 
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
Curiosity software Ireland and Perfecto present: achieving in-sprint regressi...
 
Continuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise StackContinuous Integration to Shift Left Testing Across the Enterprise Stack
Continuous Integration to Shift Left Testing Across the Enterprise Stack
 
Fllow con 2014
Fllow con 2014 Fllow con 2014
Fllow con 2014
 
Dv con us-2018-formal-fpu-verif-xilinx-onespin
Dv con us-2018-formal-fpu-verif-xilinx-onespinDv con us-2018-formal-fpu-verif-xilinx-onespin
Dv con us-2018-formal-fpu-verif-xilinx-onespin
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
Sudhir_Kr_Resume
Sudhir_Kr_ResumeSudhir_Kr_Resume
Sudhir_Kr_Resume
 
How to test a Mainframe Application
How to test a Mainframe ApplicationHow to test a Mainframe Application
How to test a Mainframe Application
 
Using DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the CloudUsing DevOps to Improve Software Quality in the Cloud
Using DevOps to Improve Software Quality in the Cloud
 
Nikhil Sharma Resume
Nikhil Sharma ResumeNikhil Sharma Resume
Nikhil Sharma Resume
 
The unintended benefits of Chef
The unintended benefits of ChefThe unintended benefits of Chef
The unintended benefits of Chef
 
Make software like they make cars!
Make software like they make cars!Make software like they make cars!
Make software like they make cars!
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
 
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdfEnhancing Quality and Test in Medical Device Design - Part 2.pdf
Enhancing Quality and Test in Medical Device Design - Part 2.pdf
 
Pre-Con Education: Introduction to Mainframe Academy With CA Technologies
Pre-Con Education: Introduction to Mainframe Academy With CA TechnologiesPre-Con Education: Introduction to Mainframe Academy With CA Technologies
Pre-Con Education: Introduction to Mainframe Academy With CA Technologies
 
C:\documents and settings\selvam.mc\my documents\automation testing process
C:\documents and settings\selvam.mc\my documents\automation testing processC:\documents and settings\selvam.mc\my documents\automation testing process
C:\documents and settings\selvam.mc\my documents\automation testing process
 

Más de DVClub

IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
DVClub
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
DVClub
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
DVClub
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
DVClub
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
DVClub
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
DVClub
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
DVClub
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
DVClub
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
DVClub
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
DVClub
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
DVClub
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
DVClub
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
DVClub
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
DVClub
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
DVClub
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
DVClub
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
DVClub
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
DVClub
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS Verification
DVClub
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
DVClub
 

Más de DVClub (20)

IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS Verification
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

Integrating Formal Into Main-Stream Verification: The IBM Experience

  • 1. Integrating Formal Into Main-Stream Verification: The IBM Experience Jason Baumgartner, Viresh Paruthi IBM Corporation Thanks to: Hari Mony, Wolfgang Roesner March 21, 2007 http://www.research.ibm.com/sixthsense 1
  • 2. Overview ¯ Simulation vs. Formal Verification (FV) ¯ Bringing FV to the Masses – Fit FV within Existing Design Methodology – Enable Non-Experts to Leverage FV – Scale FV to Large Testbenches – Increase Return on Investment through Testbench Reuse ¯ Reusing Sim Testbenches in FV 2
  • 3. Simulation ¯ Validates the design against specific sequences of input stimuli   Scalable, though non-exhaustive: suffers the coverage problem ¯ Sim specs can be written using a variety of languages + Synthesizable languages: PSL, SVA, HDL-based   Non-synthesizable languages: C / C++ variants   These languages cannot readily be reused in formal, emulation Bug Random Sim Unexplored State Space 3
  • 4. Formal Verification + Exhaustive (unlike sim): finds corner-case bugs, yields proofs + Automated: easy to use, for smaller problems (block-level)   Substantial expertise, manual effort required for larger designs   More difficult to cover (micro-)architectural properties   A different type of coverage problem   Requires synthesizable languages: PSL, SVA, HDL-based Bug Exhaustive Search Unexplored State Space Completed 4
  • 5. Simulation vs. FV ¯ Sim retains predominant industrial framework due to 1. Scalability: useful for tasks too large for FV – May refer to as ease of use 2. Risk that formal spec may not pay off; merely choke FV tool 3. Legacy: tools, skills, methodology using sim are well-established 4. Reuse of verif IP: cost to rewrite sim specs in a formal language ¯ Though sim has its own drawbacks – Misses bugs! – Methodologies for high coverage are time-consuming 5
  • 6. How can we close the Sim FV Gap? ¯ Full FV of complex designs requires expensive, risky paradigm shift – A good goal, but needs to be eased into... 6
  • 7. How can we ease into Wider-Spread FV? (1) ¯ Do not require a radical change in design paradigm to enable FV – Design methodology change has associated cost, risk in itself – Need for reuse of IP, skills, tools, methodologies is a high barrier ¯ While such a change may have many long-term benefits... – There are many bugs to be found in today’s design paradigm! 7
  • 8. How can we ease into Wider-Spread FV? (2) ¯ Enable non-experts to leverage FV – Cannot expect verif+design team to all have PhDs in FV! £ Goal: make FV as easy to use as sim £ Ease of use requires scalability and automation – Costly to always throw learning curve of new design at FV gurus £ More cost effective for designer / local verif team to write specs? – Leverage easy-to-use sequential equiv checking paradigms 8
  • 9. How do we achieve Scalability and Automation? 1. Tune system for importing and manipulating LARGE designs 2. Integrate falsification as well as proof threads ¯ Semi-formal falsification improves ROI of formal spec 3. Integrate a variety of algorithms ¯ Every problem is different ¯ Different proof algorithms have different strengths / weaknesses ¯ Technological advances continue to push the capacity of FV 9
  • 10. Semi-Formal Verification ¯ Uses resource-bounded formal search to amplify simulation – Leverages simulation to reach deep states – Formal search triggered from deep states ¯ Much more scalable than pure formal; lessens formal spec risk – Very useful for quickly flushing out complex design bugs – Enabling technology for wider-spread formal Bug Random Sim Exhaustive Search Completed Unexplored State Space 10
  • 11. How can we ease into Wider-Spread FV? (3) ¯ Offer tangible return on investment (ROI) and resource savings – Scalability reduces negative ROI risk of formal spec development – Leverage FV without substantial head-count increase £ Cannot afford disjoint sim + FV team for every design component ¡ Goal: reuse specs across formal + sim ¡ Need to disperse FV spec and deployment from team of gurus 11
  • 12. Testbench Reuse ¯ Requires scaling FV to unit-level testbenches + More meaningful than block-level testbenches + Better-documented interfaces to drive + More encompassing properties to check + Verify functionality vs. verify blocks + More cost-effective: fewer testbenches to cover design   Big, ugly testbenches may need tweaking for optimal formal results – Reserve FV gurus for this purpose – (and for emergencies) 12
  • 13. Conclusion ¯ IBM SixthSense philosophy: non-intrusive FV – Scale FV to sim-sized testbenches £ Integrate semi-formal, and variety of synergistic algos – Ensure high automation, ease of use ¯ Push for reusable testbenches across sim + FV – Greater ROI of specification investment – Disperse formal spec effort; retain FV gurus for critical tasks ¯ Result: substantially wider-spread use of FV 13