SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
<Insert Picture Here>
Verification Bug Metrics
A Different Approach
Greg Smith
Greg.A.Smith@oracle.com
2
Talk Outline
• The hardest question for a DV manager to answer
• How does chip design use metrics today?
• How does Software do it?
• Adapting SW metrics principles to HW design
• Actual project data
3
Some Background
• Became a design verification manager at HP
• With technique I am presenting today, successfully taped out 10
ASICs with first pass success
– Some data from those projects is presented here
• The hardest question for a DV manager to answer:
4
What do you think it is?
• The hardest question for a DV manager to answer:
When will you be done?
5
Metrics Used Today
• What are the most common metrics in use today to track
execution and measure progress:
> Completion of Test Plan
> Functional & Code Coverage percentages
> Bug Arrival Rates
> RTL rate of change
> Schedule milestones
• The above are all backwards looking and subject to human error
of omission!
• I was searching for a quantitative, *calculated* way to predict
and track schedule.
6
Cumulative Bugs
Time (weeks)
NumberofBugs
Cumulative Bugs
Does this bug arrival chart
tell you that you are ready
for Tape out?
HP Project E
7
Cumulative Bugs closed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Time (Weeks)
BugCount
Cumulative Bugs closed
Does this bug arrival chart
tell you if you are on
schedule?
What does it tell you
about your staffing level?
HP Project M
8
How Does Software Do It?
• Researched web for Software Development Metrics
• Software +defect +reliability +metrics
• Amazing amount of material: PMI, SEI, University and government research
• Reference Holly Richardson :“Rayleigh Curve Based Estimation”
• Discovered many corroborating papers and studies on related topics
• How many resources are needed, when, and for how long
• Bug arrival curve predictions
• Technique I am presenting today was used on the software project for the
NASA space shuttle
9
The Rayleigh Distribution Model
So what is all this?
Em = errors expected in this period
td = Total # of measurement periods
t = elapsed time (This measurement period).
Er = total # of errors expected
• Therefore you need 2 pieces of information:
Project Duration
# of bugs expected
2
2
3
2
m te
6
=E dt
t
d
r
t
E
−
×
10
Applying the Principle to HW Design
Project Duration (td)
• # of measurement periods between when you start
counting bugs and when you freeze or tape out or
equivalent milestone
• Typical would be weeks
t term is the given week
2
2
3
2
m te
6
=E dt
t
d
r
t
E
−
×
11
Predicting the # of Bugs to be Found:
What is your bug density? (Er)
• How I went about figuring this out:
– SW Uses bugs per LOC or KLOC
– Went through bug data base for several past projects
– Total up all RTL bugs
– Sized the corresponding design (lines of Verilog code)
– Observed a trend which established my initial “guess”
– Our density was 1/150 LOC for all projects
• SW norms are 1/50 – 1/100
2
2
3
2
m te
6
=E dt
t
d
r
t
E
−
×
12
Cumulative Bugs
Cumulative Bugs
13
Something WAS Wrong
Predicted Bug Arrival
Cumulative Logic Bugs
Test Bench Fixed
14
Cumulative Bugs closed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Cumulative Bugs closed
Does this bug arrival chart
tell you if you are on
schedule?
What does it tell you
about your staffing level?
15
Something is Wrong Here!
16
0.0
5.0
10.0
15.0
20.0
25.0
Weekly Arrivals - Predicted
Using Projections for Planning
17
0.0
5.0
10.0
15.0
20.0
25.0
Weekly Arrivals - Predicted
• Can tell you how many resources you need
• To find max # bugs/week = how many resources?
• Can help you plan release points
• Go to emulation when 75% of bugs are found
• Start freeze process when 90% of bugs are found
Using Projections for Planning
18
Chip Verif Progress "at a glance"
0
5
10
15
20
25
30
35
BugCount
0
10
20
30
40
50
60
70
80
90
100
Coverage%
Cumulative Logic Bugs
Found
Predicted Bug
Arrival
Line
Coverage %
Condition
Coverage %
19
Is this a one trick pony?
• HP Results are for ASICs & large FPGA
• Taped out 10 bug free chips that followed the model to a high degree
• Robert Page applying this technique at Freescale
• Kim Asai (TI) and Rahman Farhan (AMD) expressed interest
• What about processor projects?
• Researched past projects at Oracle to see:
> Does the arrival rate equation match?
> What can I use to calculate bug density?
• Applied to a recently completed processor project with success
20
SOC Blocks Arrivals vs Predicted
21
Ultra SPARC T2 Core Actual vs Predicted Arrivals
22
Bug Density in Processor Projects
• Cant use bugs / Line. Structural coding style makes using lines
of code problematic
• What else measures design size?
• Code coverage metrics gave me an idea: # of Conditions, as
reported by condition coverage metric might be usable
• Discovered decent correlation amongst projects
23
Actual chart from recent processor
0
Actual Bug Arrivals vs Predicted
BugCount
• Predicted bug count was off by less than 1%
24
How can I use this:
Determining your bug density factor.
Bugs per ???
• If you have Behavioral Verilog – use LOC
• Applying to a different design/coding style will require work
• Research past projects and look at historical bug density
• Bottom line – you need to do some homework but you can find
something that you can work with
25
Conclusion
• How to answer that difficult question?
• In the SW world, I found a technique I was looking for:
> Quantitative– calculated value
> Predictive – am I on track? When might I be done?
• Rayleigh arrival model borrowed from software
• To use this technique you need to:
> Assess your own RTL team’s defect density - Use past project’s
historical data
26
Conclusion
• You can create a viable method that can be used to track your
bug discovery rate vs. an expected rate
• This provides a point of reference that you can use to assess the
state of your project.
• Combined with traditional metrics, the technique can contribute to
your assessment of “Am I Done?”, but also help answer the
question:
When will you be done?
DV Club Presentation Slide 27
Thank you for your attention.

Weitere ähnliche Inhalte

Was ist angesagt?

Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...
Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...
Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...Davide Taibi
 
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearBHOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearBDevOpsDays Tel Aviv
 
Bug prediction based on your code history
Bug prediction based on your code historyBug prediction based on your code history
Bug prediction based on your code historyAlexey Tokar
 
Decreasing false positives in automated testing
Decreasing false positives in automated testingDecreasing false positives in automated testing
Decreasing false positives in automated testingSauce Labs
 
Iwsm2014 mispredicting software reliability (rakesh rana)
Iwsm2014   mispredicting software reliability (rakesh rana)Iwsm2014   mispredicting software reliability (rakesh rana)
Iwsm2014 mispredicting software reliability (rakesh rana)Nesma
 
Humans by the hundred (DevOps Days Ohio)
Humans by the hundred (DevOps Days Ohio)Humans by the hundred (DevOps Days Ohio)
Humans by the hundred (DevOps Days Ohio)Yelp Engineering
 
Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Equal Experts
 
Continuous integration at scale
Continuous integration at scaleContinuous integration at scale
Continuous integration at scaleVivek Singh
 
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)Sung Kim
 
Escaping the Pitfalls of Software Product Development
Escaping the Pitfalls of Software Product DevelopmentEscaping the Pitfalls of Software Product Development
Escaping the Pitfalls of Software Product DevelopmentMike Clement
 
2016 04-25 continuous integration at google scale
2016 04-25 continuous integration at google scale2016 04-25 continuous integration at google scale
2016 04-25 continuous integration at google scaleJohn Micco
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For TestersGopi Raghavendra
 
Using JIRA for Risk Based Testing - QASymphony Webinar
Using JIRA for Risk Based Testing  - QASymphony WebinarUsing JIRA for Risk Based Testing  - QASymphony Webinar
Using JIRA for Risk Based Testing - QASymphony WebinarQASymphony
 
The 5 Laws of Software Estimates
The 5 Laws of Software EstimatesThe 5 Laws of Software Estimates
The 5 Laws of Software EstimatesVitebsk Miniq
 
Microservices Summit - The Human Side of Services
Microservices Summit - The Human Side of ServicesMicroservices Summit - The Human Side of Services
Microservices Summit - The Human Side of ServicesYelp Engineering
 
Strayer bus 375 final exam part 1
Strayer bus 375 final exam part 1Strayer bus 375 final exam part 1
Strayer bus 375 final exam part 1eyavagal
 
Safety nets with fast feedback loops | Jani haapala 2016-10
Safety nets with fast feedback loops | Jani haapala 2016-10Safety nets with fast feedback loops | Jani haapala 2016-10
Safety nets with fast feedback loops | Jani haapala 2016-10Qentinel
 
Practical Methods for Adopting DevOps - Michael Stahnke
Practical Methods for Adopting DevOps - Michael StahnkePractical Methods for Adopting DevOps - Michael Stahnke
Practical Methods for Adopting DevOps - Michael StahnkePuppet
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For TestersQA Programmer
 

Was ist angesagt? (20)

Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...
Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...
Ease2017 - Operationalizing the Experience Factory for Effort Estimation in A...
 
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearBHOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
 
Humans by the hundred
Humans by the hundredHumans by the hundred
Humans by the hundred
 
Bug prediction based on your code history
Bug prediction based on your code historyBug prediction based on your code history
Bug prediction based on your code history
 
Decreasing false positives in automated testing
Decreasing false positives in automated testingDecreasing false positives in automated testing
Decreasing false positives in automated testing
 
Iwsm2014 mispredicting software reliability (rakesh rana)
Iwsm2014   mispredicting software reliability (rakesh rana)Iwsm2014   mispredicting software reliability (rakesh rana)
Iwsm2014 mispredicting software reliability (rakesh rana)
 
Humans by the hundred (DevOps Days Ohio)
Humans by the hundred (DevOps Days Ohio)Humans by the hundred (DevOps Days Ohio)
Humans by the hundred (DevOps Days Ohio)
 
Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...Software development practices & Infrastructure as Code - how well do they wo...
Software development practices & Infrastructure as Code - how well do they wo...
 
Continuous integration at scale
Continuous integration at scaleContinuous integration at scale
Continuous integration at scale
 
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
Automatically Generated Patches as Debugging Aids: A Human Study (FSE 2014)
 
Escaping the Pitfalls of Software Product Development
Escaping the Pitfalls of Software Product DevelopmentEscaping the Pitfalls of Software Product Development
Escaping the Pitfalls of Software Product Development
 
2016 04-25 continuous integration at google scale
2016 04-25 continuous integration at google scale2016 04-25 continuous integration at google scale
2016 04-25 continuous integration at google scale
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For Testers
 
Using JIRA for Risk Based Testing - QASymphony Webinar
Using JIRA for Risk Based Testing  - QASymphony WebinarUsing JIRA for Risk Based Testing  - QASymphony Webinar
Using JIRA for Risk Based Testing - QASymphony Webinar
 
The 5 Laws of Software Estimates
The 5 Laws of Software EstimatesThe 5 Laws of Software Estimates
The 5 Laws of Software Estimates
 
Microservices Summit - The Human Side of Services
Microservices Summit - The Human Side of ServicesMicroservices Summit - The Human Side of Services
Microservices Summit - The Human Side of Services
 
Strayer bus 375 final exam part 1
Strayer bus 375 final exam part 1Strayer bus 375 final exam part 1
Strayer bus 375 final exam part 1
 
Safety nets with fast feedback loops | Jani haapala 2016-10
Safety nets with fast feedback loops | Jani haapala 2016-10Safety nets with fast feedback loops | Jani haapala 2016-10
Safety nets with fast feedback loops | Jani haapala 2016-10
 
Practical Methods for Adopting DevOps - Michael Stahnke
Practical Methods for Adopting DevOps - Michael StahnkePractical Methods for Adopting DevOps - Michael Stahnke
Practical Methods for Adopting DevOps - Michael Stahnke
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For Testers
 

Ähnlich wie Verification Bug Metrics: A Different Approach

2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrf2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrfJohnnie Fox
 
What a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysisWhat a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysisAndrey Karpov
 
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Andy Kucharski
 
Sql azure cluster dashboard public.ppt
Sql azure cluster dashboard public.pptSql azure cluster dashboard public.ppt
Sql azure cluster dashboard public.pptQingsong Yao
 
My Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsMy Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsXebiaLabs
 
Agile & Lean @ MediaGeniX
Agile & Lean @ MediaGeniXAgile & Lean @ MediaGeniX
Agile & Lean @ MediaGeniXESUG
 
To successfully deliver your IT project: build your team, build your Agile it...
To successfully deliver your IT project: build your team, build your Agile it...To successfully deliver your IT project: build your team, build your Agile it...
To successfully deliver your IT project: build your team, build your Agile it...Jean-François Nguyen
 
Moving 65,000 Microsofties to DevOps with Visual Studio Team Services
Moving 65,000 Microsofties to DevOps with Visual Studio Team ServicesMoving 65,000 Microsofties to DevOps with Visual Studio Team Services
Moving 65,000 Microsofties to DevOps with Visual Studio Team ServicesVSTS Community MSFT
 
Wbs, estimation and scheduling
Wbs, estimation and schedulingWbs, estimation and scheduling
Wbs, estimation and schedulingSulman Ahmed
 
Software project plannings
Software project planningsSoftware project plannings
Software project planningsAman Adhikari
 
Software project plannings
Software project planningsSoftware project plannings
Software project planningsAman Adhikari
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategyMasas Dani
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1Saqib Raza
 
Symposium 2019 : Gestion de projet en Intelligence Artificielle
Symposium 2019 : Gestion de projet en Intelligence ArtificielleSymposium 2019 : Gestion de projet en Intelligence Artificielle
Symposium 2019 : Gestion de projet en Intelligence ArtificiellePMI-Montréal
 
Growing as a software craftsperson (part 1) From Pune Software Craftsmanship.
Growing as a software craftsperson (part 1)  From Pune Software Craftsmanship.Growing as a software craftsperson (part 1)  From Pune Software Craftsmanship.
Growing as a software craftsperson (part 1) From Pune Software Craftsmanship.Dattatray Kale
 

Ähnlich wie Verification Bug Metrics: A Different Approach (20)

2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrf2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrf
 
What a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysisWhat a DevOps specialist has to know about static code analysis
What a DevOps specialist has to know about static code analysis
 
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...Estimation - web software development estimation DrupalCon and DrupalCamp pre...
Estimation - web software development estimation DrupalCon and DrupalCamp pre...
 
Sql azure cluster dashboard public.ppt
Sql azure cluster dashboard public.pptSql azure cluster dashboard public.ppt
Sql azure cluster dashboard public.ppt
 
Defect Age
Defect  AgeDefect  Age
Defect Age
 
My Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOpsMy Dad Won't Buy Me DevOps
My Dad Won't Buy Me DevOps
 
Agile & Lean @ MediaGeniX
Agile & Lean @ MediaGeniXAgile & Lean @ MediaGeniX
Agile & Lean @ MediaGeniX
 
To successfully deliver your IT project: build your team, build your Agile it...
To successfully deliver your IT project: build your team, build your Agile it...To successfully deliver your IT project: build your team, build your Agile it...
To successfully deliver your IT project: build your team, build your Agile it...
 
Moving 65,000 Microsofties to DevOps with Visual Studio Team Services
Moving 65,000 Microsofties to DevOps with Visual Studio Team ServicesMoving 65,000 Microsofties to DevOps with Visual Studio Team Services
Moving 65,000 Microsofties to DevOps with Visual Studio Team Services
 
3.pptx
3.pptx3.pptx
3.pptx
 
Wbs
WbsWbs
Wbs
 
Wbs, estimation and scheduling
Wbs, estimation and schedulingWbs, estimation and scheduling
Wbs, estimation and scheduling
 
Key items for a digital enterprise
Key items for a digital enterpriseKey items for a digital enterprise
Key items for a digital enterprise
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software project plannings
Software project planningsSoftware project plannings
Software project plannings
 
Software project plannings
Software project planningsSoftware project plannings
Software project plannings
 
Technical debt strategy
Technical debt strategyTechnical debt strategy
Technical debt strategy
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
 
Symposium 2019 : Gestion de projet en Intelligence Artificielle
Symposium 2019 : Gestion de projet en Intelligence ArtificielleSymposium 2019 : Gestion de projet en Intelligence Artificielle
Symposium 2019 : Gestion de projet en Intelligence Artificielle
 
Growing as a software craftsperson (part 1) From Pune Software Craftsmanship.
Growing as a software craftsperson (part 1)  From Pune Software Craftsmanship.Growing as a software craftsperson (part 1)  From Pune Software Craftsmanship.
Growing as a software craftsperson (part 1) From Pune Software Craftsmanship.
 

Mehr von 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 EnterpriseDVClub
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment OverviewDVClub
 
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 ChallengesDVClub
 
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 MethodologyDVClub
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUsDVClub
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACTDVClub
 
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
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal ValidationDVClub
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design CommunityDVClub
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemCDVClub
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-ExpressDVClub
 
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 ProcessDVClub
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through MethodologyDVClub
 
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 ValidationDVClub
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 ProcessorDVClub
 
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 ExperienceDVClub
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS VerificationDVClub
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and VerificationDVClub
 

Mehr von 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
 

Kürzlich hochgeladen

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
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, ...apidays
 
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 Takeoffsammart93
 
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, Adobeapidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
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...apidays
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
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...apidays
 
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 TerraformAndrey Devyatkin
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
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...Jeffrey Haguewood
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 

Kürzlich hochgeladen (20)

Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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, ...
 
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
 
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
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
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...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
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...
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Verification Bug Metrics: A Different Approach

  • 1. <Insert Picture Here> Verification Bug Metrics A Different Approach Greg Smith Greg.A.Smith@oracle.com
  • 2. 2 Talk Outline • The hardest question for a DV manager to answer • How does chip design use metrics today? • How does Software do it? • Adapting SW metrics principles to HW design • Actual project data
  • 3. 3 Some Background • Became a design verification manager at HP • With technique I am presenting today, successfully taped out 10 ASICs with first pass success – Some data from those projects is presented here • The hardest question for a DV manager to answer:
  • 4. 4 What do you think it is? • The hardest question for a DV manager to answer: When will you be done?
  • 5. 5 Metrics Used Today • What are the most common metrics in use today to track execution and measure progress: > Completion of Test Plan > Functional & Code Coverage percentages > Bug Arrival Rates > RTL rate of change > Schedule milestones • The above are all backwards looking and subject to human error of omission! • I was searching for a quantitative, *calculated* way to predict and track schedule.
  • 6. 6 Cumulative Bugs Time (weeks) NumberofBugs Cumulative Bugs Does this bug arrival chart tell you that you are ready for Tape out? HP Project E
  • 7. 7 Cumulative Bugs closed 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Time (Weeks) BugCount Cumulative Bugs closed Does this bug arrival chart tell you if you are on schedule? What does it tell you about your staffing level? HP Project M
  • 8. 8 How Does Software Do It? • Researched web for Software Development Metrics • Software +defect +reliability +metrics • Amazing amount of material: PMI, SEI, University and government research • Reference Holly Richardson :“Rayleigh Curve Based Estimation” • Discovered many corroborating papers and studies on related topics • How many resources are needed, when, and for how long • Bug arrival curve predictions • Technique I am presenting today was used on the software project for the NASA space shuttle
  • 9. 9 The Rayleigh Distribution Model So what is all this? Em = errors expected in this period td = Total # of measurement periods t = elapsed time (This measurement period). Er = total # of errors expected • Therefore you need 2 pieces of information: Project Duration # of bugs expected 2 2 3 2 m te 6 =E dt t d r t E − ×
  • 10. 10 Applying the Principle to HW Design Project Duration (td) • # of measurement periods between when you start counting bugs and when you freeze or tape out or equivalent milestone • Typical would be weeks t term is the given week 2 2 3 2 m te 6 =E dt t d r t E − ×
  • 11. 11 Predicting the # of Bugs to be Found: What is your bug density? (Er) • How I went about figuring this out: – SW Uses bugs per LOC or KLOC – Went through bug data base for several past projects – Total up all RTL bugs – Sized the corresponding design (lines of Verilog code) – Observed a trend which established my initial “guess” – Our density was 1/150 LOC for all projects • SW norms are 1/50 – 1/100 2 2 3 2 m te 6 =E dt t d r t E − ×
  • 13. 13 Something WAS Wrong Predicted Bug Arrival Cumulative Logic Bugs Test Bench Fixed
  • 14. 14 Cumulative Bugs closed 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Cumulative Bugs closed Does this bug arrival chart tell you if you are on schedule? What does it tell you about your staffing level?
  • 16. 16 0.0 5.0 10.0 15.0 20.0 25.0 Weekly Arrivals - Predicted Using Projections for Planning
  • 17. 17 0.0 5.0 10.0 15.0 20.0 25.0 Weekly Arrivals - Predicted • Can tell you how many resources you need • To find max # bugs/week = how many resources? • Can help you plan release points • Go to emulation when 75% of bugs are found • Start freeze process when 90% of bugs are found Using Projections for Planning
  • 18. 18 Chip Verif Progress "at a glance" 0 5 10 15 20 25 30 35 BugCount 0 10 20 30 40 50 60 70 80 90 100 Coverage% Cumulative Logic Bugs Found Predicted Bug Arrival Line Coverage % Condition Coverage %
  • 19. 19 Is this a one trick pony? • HP Results are for ASICs & large FPGA • Taped out 10 bug free chips that followed the model to a high degree • Robert Page applying this technique at Freescale • Kim Asai (TI) and Rahman Farhan (AMD) expressed interest • What about processor projects? • Researched past projects at Oracle to see: > Does the arrival rate equation match? > What can I use to calculate bug density? • Applied to a recently completed processor project with success
  • 20. 20 SOC Blocks Arrivals vs Predicted
  • 21. 21 Ultra SPARC T2 Core Actual vs Predicted Arrivals
  • 22. 22 Bug Density in Processor Projects • Cant use bugs / Line. Structural coding style makes using lines of code problematic • What else measures design size? • Code coverage metrics gave me an idea: # of Conditions, as reported by condition coverage metric might be usable • Discovered decent correlation amongst projects
  • 23. 23 Actual chart from recent processor 0 Actual Bug Arrivals vs Predicted BugCount • Predicted bug count was off by less than 1%
  • 24. 24 How can I use this: Determining your bug density factor. Bugs per ??? • If you have Behavioral Verilog – use LOC • Applying to a different design/coding style will require work • Research past projects and look at historical bug density • Bottom line – you need to do some homework but you can find something that you can work with
  • 25. 25 Conclusion • How to answer that difficult question? • In the SW world, I found a technique I was looking for: > Quantitative– calculated value > Predictive – am I on track? When might I be done? • Rayleigh arrival model borrowed from software • To use this technique you need to: > Assess your own RTL team’s defect density - Use past project’s historical data
  • 26. 26 Conclusion • You can create a viable method that can be used to track your bug discovery rate vs. an expected rate • This provides a point of reference that you can use to assess the state of your project. • Combined with traditional metrics, the technique can contribute to your assessment of “Am I Done?”, but also help answer the question: When will you be done?
  • 27. DV Club Presentation Slide 27 Thank you for your attention.