SlideShare una empresa de Scribd logo
1 de 25
May 4, 2011
Using Formal Tools to Improve the
Productivity of Verification at
STMicroelectronics
James Pascoe
1000 Aztec West, Almondsbury, Bristol, UK
ChipEx 2013 – Tel Aviv, Israel
May 1, 2013
May 1, 2013
Overview
• Who are we:
– The ‘CPU’ part of ‘CPU/GPU’ in TR&D (ST Bristol)
– We develop ARM based CPU sub-systems for a range of SoCs
• Organisation:
– System-level functional verification (Noida)
– Block-level activities (Bristol)
– Low-power and DFT verification (Grenoble)
• Formal evaluation:
– Sensor Control Block (SCB) – block-level verification
– Clock and Reset Manager (CRM) – block-level verification
– Documentation driven point-to-point connectivity checking
May 1, 2013
Subsystem
May 1, 2013
Verification Strategy
• Unit testing:
– Performed by Designers
– Is this block ready to enter verification?
– Designers typically implement HDL based test-benches
• Block-level:
– Performed by Verification engineers
– Does this block conform to its specification in isolation?
– Typically verified using a constrained random approach
• System-level testing:
– Point-to-point checks
– Functional testing
– Performance verification
May 1, 2013
Evaluating Formal
• We evaluated a formal tool (Jasper) to determine its potential to
enhance our productivity. Our study had three aims:
1. To close verification projects with appreciably less effort than
constrained random;
2. To promote greater use of assertions by encouraging designers
to develop formal properties for their blocks;
3. To augment or replace legacy in-house flows with mature
industry tools that reduce maintenance and other overheads.
May 1, 2013
Approach
• Projects increase in complexity:
– Sensor Control Block
• Digital memory mapped sensor block
• Developed in Bristol
• Constrained Random test-bench developed in parallel
– Clock and Reset Manager
• Provides clock and reset sequencing in subsystem (complex)
• Developed in Grenoble
• Very good micro-architectural documentation but no functional specification
– Point-to-point connectivity checking
• Flow developed to extract assertions from project specifications
• Use Jasper to verify connectivity at the subsystem level
• Also very useful in the context of low-power (e.g. UPF aware proofs)
May 1, 2013
Overview
Sensor
Control Block
Clock and
Reset
Manager
Point-to-point
connectivity
checking
Conclusions
Sensor Control Block
May 1, 2013
Sensor Control Block
• Provides a digital front-end to thermal sensors:
– Monitors chip temperature
– Selected for its simplicity:
• Connects to thermal sensors
• Samples sensors periodically
• Generates warning interrupts
– Well specified and understood
• Used Jasper to check:
– Registers
– APB interface and protocol
– Temperature functionality
– Sampling periods
– Interrupt properties
May 1, 2013
Results
• Found 3 bugs:
– Found subtle problem with PREADY signal on APB interface
• Not detected by Specman
– 1 RTL problem:
• Inverted ‘or’ concatenation for sensor overflow / underflow bits
– 1 specification problem:
• Registers listed as ‘Write Clear 1’ can be cleared with other values
• Validity:
– Didn’t expect to find much wrong 
• Designer had performed extensive unit testing prior to verification
• Some previous Specman verification performed
• Tried and tested components used in the development
May 1, 2013
Project Management
• We need to answer the following questions:
– How complete is the verification?
• Q: are there enough assertions to verify all features?
• A: measure ‘out-of-coi’ coverage to find coverage holes
– Is the environment over constrained?
• Q: are we masking bugs by constraining the environment too much?
• A: measure stimuli coverage and check that all legal scenarios are covered
– How good are the bounded proofs for my block?
• Q: do we require more depth in the search space?
• A: use bounded coverage analysis
– How does the combination of formal and dynamic cover the design?
• Q: how do I interpret Jasper coverage with constrained random coverage?
• A: Jasper is working on merging results into other UCDB files
May 1, 2013
Coverage
• Dead code analysis:
– Dead code due to RTL – 64 cover points
• Branches that will not be taken during reset
• 1 feature that was later deprecated (but masked with a tie-off in the RTL)
• Register implementation uses generic code to minimise flop generation at synthesis
• Justified exceptions with designer review
• Out of Cone of Influence:
– 219 of 1000 coverage points were uncovered
– > 150 uncovered points were due to the register model
– Remainder due to P1500 signals:
• Feature added when Jasper work was close to sign-off
• Later covered in Specman TB
– Exceptions justified by designer
• Bounded proof coverage – 100% covered
May 1, 2013
Overview
Sensor
Control Block
Clock and
Reset
Manager
Point-to-point
connectivity
checking
Conclusions
Clock and Reset Manager
May 1, 2013
Clock and Reset Manager
• Generates clocks and resets to blocks within subsystem:
– Sequences actions to control transitions between operating points
– Enables subsystem to be fully asynchronous
– Provides an abstract interface to the SoC
– Good micro-architectural documentation but difficult to verify against
– Critical block and complex
• Verification approach:
– Use Jasper to perform feature extraction
• Not possible with constrained random test-bench
– Prove critical properties using Jasper
• Event sequences, specific timings etc.
– Develop Specman test bench in parallel
• Compare approaches
May 1, 2013
Feature Extraction
• Key problem: CRM functionality not well specified:
– Once ‘cmd_in’ rises ‘cmd_ack’ should follow after ‘N’ cycles
– Once ‘cmd_in’ falls, ‘cmd_ack’ will follow after ‘M’ cycles
– where ‘N’ and ‘M’ are not known …
• Solution
– Use Visualise to evaluate the range of cycles the ‘ack’ follows
– Write number of properties with different values for ‘N’
– Find the lowest ‘N’ for which the property proves
– Keep the assertion of the lowest proven ‘N’
assert: $rose(cmd_in) |-> ##[1:80] cmd_ack
– Define cover item for the Min ‘N-1’ for regression
cover: $rose(cmd_in) ##1 !cmd_ack [*80-1]
May 1, 2013
Visualize
May 1, 2013
Results
• No RTL bugs were found. But:
– CRM was verified previously. Jasper was used to boost confidence 
– Specification is now well understood – solved a big problem
– Used to bound overlap conditions on functional stimuli
• Exhaustive proofs on all functional features
– 73 assertions – all fully proven
– 88 covers – all covered
– Not including test-mode
• Used coverage for:
– Checking for over-constraints – none found
– Ensuring that formal touched all functionality
– More details about coverage to follow
May 1, 2013
Coverage
• Dead code analysis:
– Dead code due to RTL – 4 cover points
• Branches that will not be taken during reset or test mode
• Due to synchronisers that have reset signals tied low
• Designer could have replaced them with synchronisers without reset
– Dead code due to no test mode constraint: 54 cover points (58-4)
• Test code that is not active in functional mode – designer reviewed and approved
• Wanted to make sure that no functional branches were made dead by mistake
– Dead code due to reset: 63 cover points (121-58)
• These are the (!resetn) branches
• Reviewed and designer approved
– Dead code due to functional assumptions: 4 cases
• Do we constrain away any valid branches?
• 4 cases were discovered and approved as part of test mode
May 1, 2013
Coverage
• Bounded Proof Coverage:
– Initially, not all of the assertions converged
• Out of 55 assertions, 28 did not converge
• Lowest bound for non-converging assertions is: 774 cycles
– Used bounded proof coverage
• Measured coverage within the bounds reached by non-converging properties
– Bounded proof coverage tells us that bound is acceptable because all cover
items are covered in less than 268 cycles
– Subsequently, more advanced engines were used and all properties converged
• Out of Cone of Influence:
– 46 branches were detected as out of cone of influence
– All branches relate to DFT
May 1, 2013
Overview
Sensor
Control Block
Clock and
Reset
Manager
Point-to-point
connectivity
checking
Conclusions
Point-to-Point Connectivity Checking
May 1, 2013
Point-to-Point Connectivity
• Point-to-point connectivity checking:
– Once everything is verified at the unit and block-level …
– Point-to-point connectivity checking provides a first check that blocks
have been assembled into the subsystem correctly
– Eliminates wiring errors - useful before functional system testing
• Developed a documentation driven point-to-point flow:
– 2564 reference connections generated from key project document
– Point-to-point checking flow setup in 1 day (with help of Jasper) 
– All 2564 properties have been proven
• Useful for low-power:
– Can check connectivity rules for changing power states
– Rule validity can be tied to power states
May 1, 2013
Overview
Sensor
Control Block
Clock and
Reset
Manager
Point-to-point
connectivity
checking
Conclusions
Conclusions
May 1, 2013
Conclusions
• Formal delivers!
• Found bugs quickly:
– SCB required 6 m/w of effort to build a Constrained Random test-bench
– The formal approach found almost all the bugs within the first week
• Potential for designer involvement is high:
– Designers found Jasper easier to learn than other formal tools
– Jasper was used to develop assertions and to perform unit-testing
• Unit-testing was then reused in the block-level verification
• Enabled us to verify blocks with incomplete specifications:
– Used formal to test implicit assumptions on the CRM
– Provided results that could be quickly verified by designers
May 1, 2013
Quality Improvements
• Insight can be captured as properties when:
– Interpreting specifications
– Making assumptions
• Formal provides a good way of stimulating early designs:
– No need for HDL test benches that are discarded once verification starts
– Formal is a great way of performing unit-testing
– Assertions are reused throughout the life-cycle of the IP
• Certain aspects can only be verified formally:
– Absence of deadlock
– Liveness properties
• Properties automatically validate system level behaviour:
– Detects system-level inconsistencies in specifications and assumptions
May 1, 2013
The Value of Formal
• Unit / block-level:
– Significant time savings
– No need to develop complicated Constrained Random test-benches
– Potential for property reuse is high
– Provides feedback early in the design process
– Allows designers to stimulate designs without having to write HDL TBs
– Properties add value to subsequent design phases
– Feature extraction can be performed
• System-level:
– Point-to-point checking is easy to setup and provides good insights
– Low level properties assist in verifying system-level assumptions
– Absence of dead-lock / liveness
May 1, 2013
Overview
Sensor
Control Block
Clock and
Reset
Manager
Point-to-point
connectivity
checking
Conclusions
Questions

Más contenido relacionado

La actualidad más candente

Jeda Hls Hlv Success Story V4
Jeda Hls Hlv Success Story V4Jeda Hls Hlv Success Story V4
Jeda Hls Hlv Success Story V4Chun Xia
 
Qtp training session I
Qtp training session IQtp training session I
Qtp training session IAisha Mazhar
 
Unified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerUnified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerPankaj Singh
 
The Art of Testing Less without Sacrificing Quality @ ICSE 2015
The Art of Testing Less without Sacrificing Quality @ ICSE 2015The Art of Testing Less without Sacrificing Quality @ ICSE 2015
The Art of Testing Less without Sacrificing Quality @ ICSE 2015Kim Herzig
 
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...Eduardo Saito
 
Test suite minimization
Test suite minimizationTest suite minimization
Test suite minimizationGaurav Saxena
 
Andreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardAndreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardNeotys_Partner
 
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-environmentObsidian Software
 
Hoberg's test octagon
Hoberg's test octagonHoberg's test octagon
Hoberg's test octagonJohan Hoberg
 
Code Management Workshop
Code Management WorkshopCode Management Workshop
Code Management WorkshopSameh El-Ashry
 
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015Kim Herzig
 
Verification Engineer - Opportunities and Career Path
Verification Engineer - Opportunities and Career PathVerification Engineer - Opportunities and Career Path
Verification Engineer - Opportunities and Career PathRamdas Mozhikunnath
 
Software quality metrics
Software quality metricsSoftware quality metrics
Software quality metricsSandeep Supal
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignGeorgina Tilby
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 sessionSameh El-Ashry
 
Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesSystematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesFabian Keller
 

La actualidad más candente (20)

Jeda Hls Hlv Success Story V4
Jeda Hls Hlv Success Story V4Jeda Hls Hlv Success Story V4
Jeda Hls Hlv Success Story V4
 
Qtp training session I
Qtp training session IQtp training session I
Qtp training session I
 
Unified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc powerUnified methodology for effective correlation of soc power
Unified methodology for effective correlation of soc power
 
The Art of Testing Less without Sacrificing Quality @ ICSE 2015
The Art of Testing Less without Sacrificing Quality @ ICSE 2015The Art of Testing Less without Sacrificing Quality @ ICSE 2015
The Art of Testing Less without Sacrificing Quality @ ICSE 2015
 
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...
AWS re:Invent 2013 - MBL303 Gaming Ops - Running High-performance Ops for Mob...
 
Dill may-2008
Dill may-2008Dill may-2008
Dill may-2008
 
PhD Thesis Defense
PhD Thesis DefensePhD Thesis Defense
PhD Thesis Defense
 
Zehr dv club_12052006
Zehr dv club_12052006Zehr dv club_12052006
Zehr dv club_12052006
 
Test suite minimization
Test suite minimizationTest suite minimization
Test suite minimization
 
Andreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a StandardAndreas Grabner - Performance as Code, Let's Make It a Standard
Andreas Grabner - Performance as Code, Let's Make It a Standard
 
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
 
Hoberg's test octagon
Hoberg's test octagonHoberg's test octagon
Hoberg's test octagon
 
Code Management Workshop
Code Management WorkshopCode Management Workshop
Code Management Workshop
 
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015
Empirically Detecting False Test Alarms Using Association Rules @ ICSE 2015
 
Strickland dvclub
Strickland dvclubStrickland dvclub
Strickland dvclub
 
Verification Engineer - Opportunities and Career Path
Verification Engineer - Opportunities and Career PathVerification Engineer - Opportunities and Career Path
Verification Engineer - Opportunities and Career Path
 
Software quality metrics
Software quality metricsSoftware quality metrics
Software quality metrics
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case Design
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 session
 
Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesSystematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
 

Destacado

Track F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonicsTrack F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonicschiportal
 
TRACK B: Open source compliance in embedded systems/ Eli Greenbaum
TRACK B: Open source compliance in embedded systems/ Eli GreenbaumTRACK B: Open source compliance in embedded systems/ Eli Greenbaum
TRACK B: Open source compliance in embedded systems/ Eli Greenbaumchiportal
 
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEO
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEOSFO15-100K2: Guest Keynote: Simon Segars, ARM CEO
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEOLinaro
 
Track d more performance less power - freescale final
Track d   more performance less power  - freescale finalTrack d   more performance less power  - freescale final
Track d more performance less power - freescale finalchiportal
 
TRACK H: On-the-fly design exploration framework for simulation/ lior Altman
TRACK H: On-the-fly design exploration framework for simulation/ lior AltmanTRACK H: On-the-fly design exploration framework for simulation/ lior Altman
TRACK H: On-the-fly design exploration framework for simulation/ lior Altmanchiportal
 
TRACK A: High Performance Integrated Power Management Platforms for LED light...
TRACK A: High Performance Integrated Power Management Platforms for LED light...TRACK A: High Performance Integrated Power Management Platforms for LED light...
TRACK A: High Performance Integrated Power Management Platforms for LED light...chiportal
 
Roman Kaplan, Graduate Student,Technion
Roman Kaplan, Graduate Student,TechnionRoman Kaplan, Graduate Student,Technion
Roman Kaplan, Graduate Student,Technionchiportal
 
Test and some test types (ev elt)
Test and some test types (ev elt)Test and some test types (ev elt)
Test and some test types (ev elt)theryszard
 
Agriculture - Climate and weather
Agriculture - Climate and weatherAgriculture - Climate and weather
Agriculture - Climate and weatherKenzie Ancheta
 
Appropriateness of assessment tools
Appropriateness of assessment toolsAppropriateness of assessment tools
Appropriateness of assessment toolsKenzie Ancheta
 

Destacado (12)

Track F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonicsTrack F- Designing the kiler soc - sonics
Track F- Designing the kiler soc - sonics
 
TRACK B: Open source compliance in embedded systems/ Eli Greenbaum
TRACK B: Open source compliance in embedded systems/ Eli GreenbaumTRACK B: Open source compliance in embedded systems/ Eli Greenbaum
TRACK B: Open source compliance in embedded systems/ Eli Greenbaum
 
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEO
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEOSFO15-100K2: Guest Keynote: Simon Segars, ARM CEO
SFO15-100K2: Guest Keynote: Simon Segars, ARM CEO
 
Track d more performance less power - freescale final
Track d   more performance less power  - freescale finalTrack d   more performance less power  - freescale final
Track d more performance less power - freescale final
 
TRACK H: On-the-fly design exploration framework for simulation/ lior Altman
TRACK H: On-the-fly design exploration framework for simulation/ lior AltmanTRACK H: On-the-fly design exploration framework for simulation/ lior Altman
TRACK H: On-the-fly design exploration framework for simulation/ lior Altman
 
TRACK A: High Performance Integrated Power Management Platforms for LED light...
TRACK A: High Performance Integrated Power Management Platforms for LED light...TRACK A: High Performance Integrated Power Management Platforms for LED light...
TRACK A: High Performance Integrated Power Management Platforms for LED light...
 
Roman Kaplan, Graduate Student,Technion
Roman Kaplan, Graduate Student,TechnionRoman Kaplan, Graduate Student,Technion
Roman Kaplan, Graduate Student,Technion
 
Test and some test types (ev elt)
Test and some test types (ev elt)Test and some test types (ev elt)
Test and some test types (ev elt)
 
Types of test
Types of testTypes of test
Types of test
 
Agriculture - Climate and weather
Agriculture - Climate and weatherAgriculture - Climate and weather
Agriculture - Climate and weather
 
Ponencia Universidad de Valencia. 31 de enero de 2017.
Ponencia Universidad de Valencia.  31 de enero de 2017.Ponencia Universidad de Valencia.  31 de enero de 2017.
Ponencia Universidad de Valencia. 31 de enero de 2017.
 
Appropriateness of assessment tools
Appropriateness of assessment toolsAppropriateness of assessment tools
Appropriateness of assessment tools
 

Similar a TRACK H: Using Formal Tools to Improve the Productivity of Verification at STMicroelectronics/ James Pascoe

Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing IntroductionHai Tran Son
 
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2babak danyal
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3Ahmed Misbah
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineeringRupesh Vaishnav
 
Lect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxLect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxabdullahsaddique2
 
Class9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfClass9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfFarjanaParvin5
 
Finding Bugs Faster with Assertion Based Verification (ABV)
Finding Bugs Faster with Assertion Based Verification (ABV)Finding Bugs Faster with Assertion Based Verification (ABV)
Finding Bugs Faster with Assertion Based Verification (ABV)DVClub
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 
Formulating Agile Testing Strategy
Formulating Agile Testing StrategyFormulating Agile Testing Strategy
Formulating Agile Testing StrategyTharinda Liyanage
 
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...TEST Huddle
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updatedTharinda Liyanage
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating RequirementsRavikanth-BA
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineeringMansiganeshJawale
 
Software requirement verification & validation
Software requirement verification & validationSoftware requirement verification & validation
Software requirement verification & validationAbdul Basit
 
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 EnvironmentDVClub
 
Context Driven Automation Gtac 2008
Context Driven Automation Gtac 2008Context Driven Automation Gtac 2008
Context Driven Automation Gtac 2008Pete Schneider
 
Software testing part
Software testing partSoftware testing part
Software testing partPreeti Mishra
 
ISTQB CTAL - Test Analyst
ISTQB CTAL - Test AnalystISTQB CTAL - Test Analyst
ISTQB CTAL - Test AnalystSamer Desouky
 

Similar a TRACK H: Using Formal Tools to Improve the Productivity of Verification at STMicroelectronics/ James Pascoe (20)

Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing Introduction
 
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2Se 381 -  lec 28 -- 34 - 12 jun12 - testing 1 of 2
Se 381 - lec 28 -- 34 - 12 jun12 - testing 1 of 2
 
Cucumber jvm best practices v3
Cucumber jvm best practices v3Cucumber jvm best practices v3
Cucumber jvm best practices v3
 
Software coding & testing, software engineering
Software coding & testing, software engineeringSoftware coding & testing, software engineering
Software coding & testing, software engineering
 
Lect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxLect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptx
 
Class9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdfClass9_SW_Testing_Strategies.pdf
Class9_SW_Testing_Strategies.pdf
 
Finding Bugs Faster with Assertion Based Verification (ABV)
Finding Bugs Faster with Assertion Based Verification (ABV)Finding Bugs Faster with Assertion Based Verification (ABV)
Finding Bugs Faster with Assertion Based Verification (ABV)
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Formulating Agile Testing Strategy
Formulating Agile Testing StrategyFormulating Agile Testing Strategy
Formulating Agile Testing Strategy
 
SOFTWARE TESTING W4_watermark.pdf
SOFTWARE TESTING W4_watermark.pdfSOFTWARE TESTING W4_watermark.pdf
SOFTWARE TESTING W4_watermark.pdf
 
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
 
Testing strategy for agile projects updated
Testing strategy for agile projects updatedTesting strategy for agile projects updated
Testing strategy for agile projects updated
 
Verifying and Validating Requirements
Verifying and Validating RequirementsVerifying and Validating Requirements
Verifying and Validating Requirements
 
mod7.pdf
mod7.pdfmod7.pdf
mod7.pdf
 
Test planning and software's engineering
Test planning and software's engineeringTest planning and software's engineering
Test planning and software's engineering
 
Software requirement verification & validation
Software requirement verification & validationSoftware requirement verification & validation
Software requirement verification & validation
 
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
 
Context Driven Automation Gtac 2008
Context Driven Automation Gtac 2008Context Driven Automation Gtac 2008
Context Driven Automation Gtac 2008
 
Software testing part
Software testing partSoftware testing part
Software testing part
 
ISTQB CTAL - Test Analyst
ISTQB CTAL - Test AnalystISTQB CTAL - Test Analyst
ISTQB CTAL - Test Analyst
 

Más de chiportal

Prof. Zhihua Wang, Tsinghua University, Beijing, China
Prof. Zhihua Wang, Tsinghua University, Beijing, China Prof. Zhihua Wang, Tsinghua University, Beijing, China
Prof. Zhihua Wang, Tsinghua University, Beijing, China chiportal
 
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...chiportal
 
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...chiportal
 
Prof. Uri Weiser,Technion
Prof. Uri Weiser,TechnionProf. Uri Weiser,Technion
Prof. Uri Weiser,Technionchiportal
 
Ken Liao, Senior Associate VP, Faraday
Ken Liao, Senior Associate VP, FaradayKen Liao, Senior Associate VP, Faraday
Ken Liao, Senior Associate VP, Faradaychiportal
 
Prof. Danny Raz, Director, Bell Labs Israel, Nokia
 Prof. Danny Raz, Director, Bell Labs Israel, Nokia  Prof. Danny Raz, Director, Bell Labs Israel, Nokia
Prof. Danny Raz, Director, Bell Labs Israel, Nokia chiportal
 
Marco Casale-Rossi, Product Mktg. Manager, Synopsys
Marco Casale-Rossi, Product Mktg. Manager, SynopsysMarco Casale-Rossi, Product Mktg. Manager, Synopsys
Marco Casale-Rossi, Product Mktg. Manager, Synopsyschiportal
 
Dr.Efraim Aharoni, ESD Leader, TowerJazz
Dr.Efraim Aharoni, ESD Leader, TowerJazzDr.Efraim Aharoni, ESD Leader, TowerJazz
Dr.Efraim Aharoni, ESD Leader, TowerJazzchiportal
 
Eddy Kvetny, System Engineering Group Leader, Intel
Eddy Kvetny, System Engineering Group Leader, IntelEddy Kvetny, System Engineering Group Leader, Intel
Eddy Kvetny, System Engineering Group Leader, Intelchiportal
 
Dr. John Bainbridge, Principal Application Architect, NetSpeed
 Dr. John Bainbridge, Principal Application Architect, NetSpeed  Dr. John Bainbridge, Principal Application Architect, NetSpeed
Dr. John Bainbridge, Principal Application Architect, NetSpeed chiportal
 
Xavier van Ruymbeke, App. Engineer, Arteris
Xavier van Ruymbeke, App. Engineer, ArterisXavier van Ruymbeke, App. Engineer, Arteris
Xavier van Ruymbeke, App. Engineer, Arterischiportal
 
Asi Lifshitz, VP R&D, Vtool
Asi Lifshitz, VP R&D, VtoolAsi Lifshitz, VP R&D, Vtool
Asi Lifshitz, VP R&D, Vtoolchiportal
 
Zvika Rozenshein,General Manager, EngineeringIQ
Zvika Rozenshein,General Manager, EngineeringIQZvika Rozenshein,General Manager, EngineeringIQ
Zvika Rozenshein,General Manager, EngineeringIQchiportal
 
Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC chiportal
 
Kunal Varshney, VLSI Engineer, Open-Silicon
Kunal Varshney, VLSI Engineer, Open-SiliconKunal Varshney, VLSI Engineer, Open-Silicon
Kunal Varshney, VLSI Engineer, Open-Siliconchiportal
 
Gert Goossens,Sen. Director, ASIP Tools, Synopsys
Gert Goossens,Sen. Director, ASIP Tools, SynopsysGert Goossens,Sen. Director, ASIP Tools, Synopsys
Gert Goossens,Sen. Director, ASIP Tools, Synopsyschiportal
 
Tuvia Liran, Director of VLSI, Nano Retina
Tuvia Liran, Director of VLSI, Nano RetinaTuvia Liran, Director of VLSI, Nano Retina
Tuvia Liran, Director of VLSI, Nano Retinachiportal
 
Sagar Kadam, Lead Software Engineer, Open-Silicon
Sagar Kadam, Lead Software Engineer, Open-SiliconSagar Kadam, Lead Software Engineer, Open-Silicon
Sagar Kadam, Lead Software Engineer, Open-Siliconchiportal
 
Ronen Shtayer,Director of ASG Operations & PMO, NXP Semiconductor
Ronen Shtayer,Director of ASG Operations & PMO, NXP SemiconductorRonen Shtayer,Director of ASG Operations & PMO, NXP Semiconductor
Ronen Shtayer,Director of ASG Operations & PMO, NXP Semiconductorchiportal
 
Prof. Emanuel Cohen, Technion
Prof. Emanuel Cohen, TechnionProf. Emanuel Cohen, Technion
Prof. Emanuel Cohen, Technionchiportal
 

Más de chiportal (20)

Prof. Zhihua Wang, Tsinghua University, Beijing, China
Prof. Zhihua Wang, Tsinghua University, Beijing, China Prof. Zhihua Wang, Tsinghua University, Beijing, China
Prof. Zhihua Wang, Tsinghua University, Beijing, China
 
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
 
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
Prof. Steve Furber, University of Manchester, Principal Designer of the BBC M...
 
Prof. Uri Weiser,Technion
Prof. Uri Weiser,TechnionProf. Uri Weiser,Technion
Prof. Uri Weiser,Technion
 
Ken Liao, Senior Associate VP, Faraday
Ken Liao, Senior Associate VP, FaradayKen Liao, Senior Associate VP, Faraday
Ken Liao, Senior Associate VP, Faraday
 
Prof. Danny Raz, Director, Bell Labs Israel, Nokia
 Prof. Danny Raz, Director, Bell Labs Israel, Nokia  Prof. Danny Raz, Director, Bell Labs Israel, Nokia
Prof. Danny Raz, Director, Bell Labs Israel, Nokia
 
Marco Casale-Rossi, Product Mktg. Manager, Synopsys
Marco Casale-Rossi, Product Mktg. Manager, SynopsysMarco Casale-Rossi, Product Mktg. Manager, Synopsys
Marco Casale-Rossi, Product Mktg. Manager, Synopsys
 
Dr.Efraim Aharoni, ESD Leader, TowerJazz
Dr.Efraim Aharoni, ESD Leader, TowerJazzDr.Efraim Aharoni, ESD Leader, TowerJazz
Dr.Efraim Aharoni, ESD Leader, TowerJazz
 
Eddy Kvetny, System Engineering Group Leader, Intel
Eddy Kvetny, System Engineering Group Leader, IntelEddy Kvetny, System Engineering Group Leader, Intel
Eddy Kvetny, System Engineering Group Leader, Intel
 
Dr. John Bainbridge, Principal Application Architect, NetSpeed
 Dr. John Bainbridge, Principal Application Architect, NetSpeed  Dr. John Bainbridge, Principal Application Architect, NetSpeed
Dr. John Bainbridge, Principal Application Architect, NetSpeed
 
Xavier van Ruymbeke, App. Engineer, Arteris
Xavier van Ruymbeke, App. Engineer, ArterisXavier van Ruymbeke, App. Engineer, Arteris
Xavier van Ruymbeke, App. Engineer, Arteris
 
Asi Lifshitz, VP R&D, Vtool
Asi Lifshitz, VP R&D, VtoolAsi Lifshitz, VP R&D, Vtool
Asi Lifshitz, VP R&D, Vtool
 
Zvika Rozenshein,General Manager, EngineeringIQ
Zvika Rozenshein,General Manager, EngineeringIQZvika Rozenshein,General Manager, EngineeringIQ
Zvika Rozenshein,General Manager, EngineeringIQ
 
Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC
 
Kunal Varshney, VLSI Engineer, Open-Silicon
Kunal Varshney, VLSI Engineer, Open-SiliconKunal Varshney, VLSI Engineer, Open-Silicon
Kunal Varshney, VLSI Engineer, Open-Silicon
 
Gert Goossens,Sen. Director, ASIP Tools, Synopsys
Gert Goossens,Sen. Director, ASIP Tools, SynopsysGert Goossens,Sen. Director, ASIP Tools, Synopsys
Gert Goossens,Sen. Director, ASIP Tools, Synopsys
 
Tuvia Liran, Director of VLSI, Nano Retina
Tuvia Liran, Director of VLSI, Nano RetinaTuvia Liran, Director of VLSI, Nano Retina
Tuvia Liran, Director of VLSI, Nano Retina
 
Sagar Kadam, Lead Software Engineer, Open-Silicon
Sagar Kadam, Lead Software Engineer, Open-SiliconSagar Kadam, Lead Software Engineer, Open-Silicon
Sagar Kadam, Lead Software Engineer, Open-Silicon
 
Ronen Shtayer,Director of ASG Operations & PMO, NXP Semiconductor
Ronen Shtayer,Director of ASG Operations & PMO, NXP SemiconductorRonen Shtayer,Director of ASG Operations & PMO, NXP Semiconductor
Ronen Shtayer,Director of ASG Operations & PMO, NXP Semiconductor
 
Prof. Emanuel Cohen, Technion
Prof. Emanuel Cohen, TechnionProf. Emanuel Cohen, Technion
Prof. Emanuel Cohen, Technion
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

TRACK H: Using Formal Tools to Improve the Productivity of Verification at STMicroelectronics/ James Pascoe

  • 1. May 4, 2011 Using Formal Tools to Improve the Productivity of Verification at STMicroelectronics James Pascoe 1000 Aztec West, Almondsbury, Bristol, UK ChipEx 2013 – Tel Aviv, Israel May 1, 2013
  • 2. May 1, 2013 Overview • Who are we: – The ‘CPU’ part of ‘CPU/GPU’ in TR&D (ST Bristol) – We develop ARM based CPU sub-systems for a range of SoCs • Organisation: – System-level functional verification (Noida) – Block-level activities (Bristol) – Low-power and DFT verification (Grenoble) • Formal evaluation: – Sensor Control Block (SCB) – block-level verification – Clock and Reset Manager (CRM) – block-level verification – Documentation driven point-to-point connectivity checking
  • 4. May 1, 2013 Verification Strategy • Unit testing: – Performed by Designers – Is this block ready to enter verification? – Designers typically implement HDL based test-benches • Block-level: – Performed by Verification engineers – Does this block conform to its specification in isolation? – Typically verified using a constrained random approach • System-level testing: – Point-to-point checks – Functional testing – Performance verification
  • 5. May 1, 2013 Evaluating Formal • We evaluated a formal tool (Jasper) to determine its potential to enhance our productivity. Our study had three aims: 1. To close verification projects with appreciably less effort than constrained random; 2. To promote greater use of assertions by encouraging designers to develop formal properties for their blocks; 3. To augment or replace legacy in-house flows with mature industry tools that reduce maintenance and other overheads.
  • 6. May 1, 2013 Approach • Projects increase in complexity: – Sensor Control Block • Digital memory mapped sensor block • Developed in Bristol • Constrained Random test-bench developed in parallel – Clock and Reset Manager • Provides clock and reset sequencing in subsystem (complex) • Developed in Grenoble • Very good micro-architectural documentation but no functional specification – Point-to-point connectivity checking • Flow developed to extract assertions from project specifications • Use Jasper to verify connectivity at the subsystem level • Also very useful in the context of low-power (e.g. UPF aware proofs)
  • 7. May 1, 2013 Overview Sensor Control Block Clock and Reset Manager Point-to-point connectivity checking Conclusions Sensor Control Block
  • 8. May 1, 2013 Sensor Control Block • Provides a digital front-end to thermal sensors: – Monitors chip temperature – Selected for its simplicity: • Connects to thermal sensors • Samples sensors periodically • Generates warning interrupts – Well specified and understood • Used Jasper to check: – Registers – APB interface and protocol – Temperature functionality – Sampling periods – Interrupt properties
  • 9. May 1, 2013 Results • Found 3 bugs: – Found subtle problem with PREADY signal on APB interface • Not detected by Specman – 1 RTL problem: • Inverted ‘or’ concatenation for sensor overflow / underflow bits – 1 specification problem: • Registers listed as ‘Write Clear 1’ can be cleared with other values • Validity: – Didn’t expect to find much wrong  • Designer had performed extensive unit testing prior to verification • Some previous Specman verification performed • Tried and tested components used in the development
  • 10. May 1, 2013 Project Management • We need to answer the following questions: – How complete is the verification? • Q: are there enough assertions to verify all features? • A: measure ‘out-of-coi’ coverage to find coverage holes – Is the environment over constrained? • Q: are we masking bugs by constraining the environment too much? • A: measure stimuli coverage and check that all legal scenarios are covered – How good are the bounded proofs for my block? • Q: do we require more depth in the search space? • A: use bounded coverage analysis – How does the combination of formal and dynamic cover the design? • Q: how do I interpret Jasper coverage with constrained random coverage? • A: Jasper is working on merging results into other UCDB files
  • 11. May 1, 2013 Coverage • Dead code analysis: – Dead code due to RTL – 64 cover points • Branches that will not be taken during reset • 1 feature that was later deprecated (but masked with a tie-off in the RTL) • Register implementation uses generic code to minimise flop generation at synthesis • Justified exceptions with designer review • Out of Cone of Influence: – 219 of 1000 coverage points were uncovered – > 150 uncovered points were due to the register model – Remainder due to P1500 signals: • Feature added when Jasper work was close to sign-off • Later covered in Specman TB – Exceptions justified by designer • Bounded proof coverage – 100% covered
  • 12. May 1, 2013 Overview Sensor Control Block Clock and Reset Manager Point-to-point connectivity checking Conclusions Clock and Reset Manager
  • 13. May 1, 2013 Clock and Reset Manager • Generates clocks and resets to blocks within subsystem: – Sequences actions to control transitions between operating points – Enables subsystem to be fully asynchronous – Provides an abstract interface to the SoC – Good micro-architectural documentation but difficult to verify against – Critical block and complex • Verification approach: – Use Jasper to perform feature extraction • Not possible with constrained random test-bench – Prove critical properties using Jasper • Event sequences, specific timings etc. – Develop Specman test bench in parallel • Compare approaches
  • 14. May 1, 2013 Feature Extraction • Key problem: CRM functionality not well specified: – Once ‘cmd_in’ rises ‘cmd_ack’ should follow after ‘N’ cycles – Once ‘cmd_in’ falls, ‘cmd_ack’ will follow after ‘M’ cycles – where ‘N’ and ‘M’ are not known … • Solution – Use Visualise to evaluate the range of cycles the ‘ack’ follows – Write number of properties with different values for ‘N’ – Find the lowest ‘N’ for which the property proves – Keep the assertion of the lowest proven ‘N’ assert: $rose(cmd_in) |-> ##[1:80] cmd_ack – Define cover item for the Min ‘N-1’ for regression cover: $rose(cmd_in) ##1 !cmd_ack [*80-1]
  • 16. May 1, 2013 Results • No RTL bugs were found. But: – CRM was verified previously. Jasper was used to boost confidence  – Specification is now well understood – solved a big problem – Used to bound overlap conditions on functional stimuli • Exhaustive proofs on all functional features – 73 assertions – all fully proven – 88 covers – all covered – Not including test-mode • Used coverage for: – Checking for over-constraints – none found – Ensuring that formal touched all functionality – More details about coverage to follow
  • 17. May 1, 2013 Coverage • Dead code analysis: – Dead code due to RTL – 4 cover points • Branches that will not be taken during reset or test mode • Due to synchronisers that have reset signals tied low • Designer could have replaced them with synchronisers without reset – Dead code due to no test mode constraint: 54 cover points (58-4) • Test code that is not active in functional mode – designer reviewed and approved • Wanted to make sure that no functional branches were made dead by mistake – Dead code due to reset: 63 cover points (121-58) • These are the (!resetn) branches • Reviewed and designer approved – Dead code due to functional assumptions: 4 cases • Do we constrain away any valid branches? • 4 cases were discovered and approved as part of test mode
  • 18. May 1, 2013 Coverage • Bounded Proof Coverage: – Initially, not all of the assertions converged • Out of 55 assertions, 28 did not converge • Lowest bound for non-converging assertions is: 774 cycles – Used bounded proof coverage • Measured coverage within the bounds reached by non-converging properties – Bounded proof coverage tells us that bound is acceptable because all cover items are covered in less than 268 cycles – Subsequently, more advanced engines were used and all properties converged • Out of Cone of Influence: – 46 branches were detected as out of cone of influence – All branches relate to DFT
  • 19. May 1, 2013 Overview Sensor Control Block Clock and Reset Manager Point-to-point connectivity checking Conclusions Point-to-Point Connectivity Checking
  • 20. May 1, 2013 Point-to-Point Connectivity • Point-to-point connectivity checking: – Once everything is verified at the unit and block-level … – Point-to-point connectivity checking provides a first check that blocks have been assembled into the subsystem correctly – Eliminates wiring errors - useful before functional system testing • Developed a documentation driven point-to-point flow: – 2564 reference connections generated from key project document – Point-to-point checking flow setup in 1 day (with help of Jasper)  – All 2564 properties have been proven • Useful for low-power: – Can check connectivity rules for changing power states – Rule validity can be tied to power states
  • 21. May 1, 2013 Overview Sensor Control Block Clock and Reset Manager Point-to-point connectivity checking Conclusions Conclusions
  • 22. May 1, 2013 Conclusions • Formal delivers! • Found bugs quickly: – SCB required 6 m/w of effort to build a Constrained Random test-bench – The formal approach found almost all the bugs within the first week • Potential for designer involvement is high: – Designers found Jasper easier to learn than other formal tools – Jasper was used to develop assertions and to perform unit-testing • Unit-testing was then reused in the block-level verification • Enabled us to verify blocks with incomplete specifications: – Used formal to test implicit assumptions on the CRM – Provided results that could be quickly verified by designers
  • 23. May 1, 2013 Quality Improvements • Insight can be captured as properties when: – Interpreting specifications – Making assumptions • Formal provides a good way of stimulating early designs: – No need for HDL test benches that are discarded once verification starts – Formal is a great way of performing unit-testing – Assertions are reused throughout the life-cycle of the IP • Certain aspects can only be verified formally: – Absence of deadlock – Liveness properties • Properties automatically validate system level behaviour: – Detects system-level inconsistencies in specifications and assumptions
  • 24. May 1, 2013 The Value of Formal • Unit / block-level: – Significant time savings – No need to develop complicated Constrained Random test-benches – Potential for property reuse is high – Provides feedback early in the design process – Allows designers to stimulate designs without having to write HDL TBs – Properties add value to subsequent design phases – Feature extraction can be performed • System-level: – Point-to-point checking is easy to setup and provides good insights – Low level properties assist in verifying system-level assumptions – Absence of dead-lock / liveness
  • 25. May 1, 2013 Overview Sensor Control Block Clock and Reset Manager Point-to-point connectivity checking Conclusions Questions