SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
Introducing	
  LCS	
  to	
  Digital	
  Design	
  
          Verifica6on	
  

          Charalambos	
  Ioannides	
  
What is a Design?
•  Simply – A collection of code files that define the
   functionality of a single digital electronics component

•  Piece of code in hardware description language
   (Verilog or VHDL)
•  A Design goes through various phases:


     List	
  of	
                  List	
  of	
  
                      Code	
                        Silicon	
  
  Requirements	
                   Gates	
  
What is Design Verification?
•     Process used to ensure a design s functional
     correctness with respect to requirements and
     specification prior to manufacture

•  Ultimate goal is to discover as many bugs on a
   design as possible before shipping product to
   customer

•  Maximize bug discovery if we maximize coverage
   (code, functional) on design by means of testing
Simulation-based DV

                Test Learning
                Directed Test Generation


                                            TG	
        Tests	
  



   ML	
          Biased Random
                                           Biases	
      SIM	
  
                  Bias Learning
                 Test Generation
Technique	
                                               	
  
                                                         DUV	
  



                                      Coverage	
  
Why is DV Hard?
•  Increasing digital design complexity
    •  Greater automation of Design process
       than Verification process
    •  Increasing miniaturization level of silicon
       chips
    •  Competition – increasing feature demands
       by customers
    •  Power management
•  Increasing Verification Effort
    •  Many hundreds of tests, 7 month projects
Why is DV Hard?

                                       Design	
  
                                     Complexity	
  


                     Technology	
                        Process	
  
                                                                           ReputaIon	
  
 Limited	
                             Engineers	
  
Resources	
  
                                                               Product	
  to	
  Market	
  
       Get	
  it	
  Right!	
  
                                                   Limited	
  Budget	
  
                         Make	
  it	
  Fast!	
  
Previous attempts
                    BN	
                                                               GA	
  
• 	
  Good	
  results	
                                           • 	
  Mature	
  plaKorm	
  
• 	
  Approx.	
  CDG	
  process	
  well	
                         • 	
  Decent	
  results	
  
-­‐-­‐-­‐	
                                                       -­‐-­‐-­‐	
  
• 	
  Domain	
  Knowledge	
                                       • 	
  Non-­‐universal	
  environment	
  	
  
• 	
   Difficult	
   to	
   interpret	
   know-­‐                   • 	
   Finds	
   one/few	
   soluIons	
   for	
  
ledge	
  
                                                   CDG	
          enIre	
  search	
  space	
  


                                                  via	
  ML	
  
        Markov	
  Models	
                                                             GP	
  
• 	
  Excellent	
  bug	
  discovery	
                             • 	
  Good	
  results	
  
• 	
  Approx.	
  CDG	
  process	
  well	
                         • 	
  No	
  Domain	
  Knowledge	
  
-­‐-­‐-­‐	
                                                       -­‐-­‐-­‐	
  
• 	
  Effort	
  to	
  setup	
  environment	
                       • 	
  Code	
  Diversity	
  
• 	
   Difficult	
   to	
   interpret	
   know-­‐                   • 	
   Finds	
   one/few	
   soluIons	
   for	
  
ledge	
                                                           enIre	
  search	
  space	
  

For details: http://www.cs.bris.ac.uk/Publications/pub_master.jsp?id=2001405
Why LCS (XCS) on DV?
•  Adaptive Learning Systems
   Ø  Could formulate the problem at a range of different
       possibilities
   Ø  Designs change over time and also coverage requirements
       change during a simulation run
•  Develop a complete, accurate and minimal
   representation of a problem
   Ø  Achieve coverage in more than one ways and balance it
•  Rules developed easy to understand, analyse,
   combine and alter. No domain knowledge required.
Why LCS (XCS) on DV?
                        XCS	
  Generaliza6on	
  on	
  MUX	
  
      1E+15	
  
      1E+14	
  
      1E+13	
  
      1E+12	
  
      1E+11	
  
      1E+10	
  
      1E+09	
  
 100000000	
  
  10000000	
  
   1000000	
                                                                 GeneralizaIon	
  RaIo	
  
     100000	
                                                                Time(h)/experiment	
  
      10000	
  
        1000	
  
         100	
  
           10	
  
             1	
  
          0.1	
      6	
        11	
          20	
         37	
     70	
  

        0.01	
  
       0.001	
  
     0.0001	
  
                                         MUX	
  size	
  
Why not LCS (XCS) on DV?
•  XCS has issue with Boolean problems that require
   overlapping rules
•  Problem itself is too big for XCS, but can scale it
   down
•  Need to make any future attempt noise-proof




       FUTURE RESEARCH WILL TELL!
First XCS attempt on DV
•  Single step problem
•  Learn relationship between biases for a Test
   Generator (Condition) and the coverage (Action) they
   achieve
•  Noiseless environment as single randomization seed
   used by the TG
•  Both Conditions and Action are bit strings and we use
   the ternary alphabet {0,1,#} for expressing the learnt
   relationships
•  Use the standard XCS parameters as in the 2002
   XCS algorithmic description
Proposed Solution
DV1 Function
XCS (orig.) on DV1
XCS (impr.) on DV1
Proposed Solution
DV3 Function
XCS (impr.) on DV3
Learnt Rules (DV3)
                             Classifiers
ID   Cond. : Action    R        E      F      AS     EXP    NUM   •  ID1 – which 32
                                                                  biases to avoid
1    0###1## : 0000   1000      0     1.00   26.98 22805    21    •  ID2 – wrong, but
2    ###10## : 0000    0        0     0.48   31.76   390     6    tells us that the 32
3    0#110## : 1110   1000      0     0.63   23.31   803     6    bias vectors will cover
                                                                  at least one signal
4    01#10## : 1110   1000      0     0.58   26.06   392     2
                                                                  •  ID3 & 5 or ID4 & 5
5    1#01100 : 0001   1000      0     0.42   9.34    102     3    achieve max
6    0#100## : 0010   1000      0     0.50   13.29   1534    2    coverage, longer are
7    01#00## : 0010   1000      0     0.82   17.97   3520    8    ID 5, 6 & 8 or 5, 7 & 8
                                                                  •  ID9 & 10 – tell us
8    1###0#0 : 1100   1000      0     0.62   20.85   403     4
                                                                  what cannot be
9    ####### : 0011    0        0     1.00   36.16   6285   36    achieved
10   ####### : 0110    0        0     1.00   44.35   6157   30
Why deal with DV?
•  DV is a hard real world problem
   •  Designs have complex interactions and becoming more
      complex
   •  Maximise coverage, minimizing resources for it.
   •  Wicked fitness landscape resembling needle in haystack or
      deceptive problems
   •  80/20 Rule applies
•  Chance to compete with other EA and probabilistic
   ML techniques
•  Formulate the problem as either multistep and single
   step, using a variety of representations (binary,
   integers, real numbers, graphs etc.)
Fame and Fortune!!!
THANK YOU



 Any Questions?
Previous attempts 1
•  Genetic Algorithms
   •  Test structure or bias for maximising coverage
   •  Pros:
       •  Decent results in both Code and Functional Coverage
          (>70%)
       •  Easy to understand evolved knowledge
       •  Mature platforms
   •  Cons:
       •  Some techniques required domain knowledge (setting
          fitness function or tweaking other parameters)
       •  Non-universal verification environment
       •  Search for a single solution for the entire search space
          – this is not very helpful for DV problems
Previous attempts 2
•  Genetic Programming
   •  Test structure for maximising coverage by learning DAGs
   •  Pros:
       •  Good results in Code Coverage (>90%)
       •  Only point of user involvement is the Instruction Library
       •  Mature platform
   •  Cons:
       •  Earlier versions had problem with code diversity
       •  Verification environment mostly for microprocessors
       •  Search for a single solution for the entire search space
          – this is not very helpful for DV problems
Previous attempts 3
•  Bayesian Networks
   •  Probabilistic Network model to answer MPE questions on
      coverage to be achieved
   •  Pros:
       •  Good results in Functional Coverage (~90-100%)
       •  Approximates the CDG process well
   •  Cons:
       •  Domain Knowledge in constructing initial Network
          (though automation techniques have been tried)
       •  Verification environment mostly for sub-systems of
          microprocessors (i.e. doesn’t scale on larger systems)
       •  Difficult to understand what has been learnt, difficult to
          later manually improve
Previous attempts 4
•  Markov Models
   •  Probabilistic Network model (FSM) to generate stimuli for
      achieving maximum coverage
   •  Pros:
       •  Excellent results in bug coverage (100%)
       •  Approximates the CDG process very well
   •  Cons:
       •  Effort in constructing the template files (TG) and activity
          monitors
       •  Difficult to understand what has been learnt, difficult to
          later manually improve

Más contenido relacionado

Destacado

Destacado (6)

2010 bristol q1_hybrid-formal-coverage
2010 bristol q1_hybrid-formal-coverage2010 bristol q1_hybrid-formal-coverage
2010 bristol q1_hybrid-formal-coverage
 
Coverage and Introduction to UVM
Coverage and Introduction to UVMCoverage and Introduction to UVM
Coverage and Introduction to UVM
 
Session 7 code_functional_coverage
Session 7 code_functional_coverageSession 7 code_functional_coverage
Session 7 code_functional_coverage
 
Code coverage
Code coverageCode coverage
Code coverage
 
Longest common subsequence lcs
Longest common subsequence  lcsLongest common subsequence  lcs
Longest common subsequence lcs
 
Code coverage
Code coverageCode coverage
Code coverage
 

Similar a Introducing LCS to Digital Design Verification

Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...PHX - Session #2 Test Driven Development: Improving .NET Application Performa...
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...Steve Lange
 
Design Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDesign Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDVClub
 
Design verification--the-past-present-and-future
Design verification--the-past-present-and-futureDesign verification--the-past-present-and-future
Design verification--the-past-present-and-futureObsidian Software
 
Patella railsconf 2012
Patella railsconf 2012Patella railsconf 2012
Patella railsconf 2012Jeff Dwyer
 
優化開發環境 無料提升戰鬥力
優化開發環境 無料提升戰鬥力優化開發環境 無料提升戰鬥力
優化開發環境 無料提升戰鬥力Maxis Kao
 
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Preeya Selvarajah
 
10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware ProgrammingPostSharp Technologies
 
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
 
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
 
Design for Testability in Practice
Design for Testability in PracticeDesign for Testability in Practice
Design for Testability in PracticeTechWell
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDVClub
 
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Roberto Pepato
 
Keynote: Machine Learning for Design Automation at DAC 2018
Keynote:  Machine Learning for Design Automation at DAC 2018Keynote:  Machine Learning for Design Automation at DAC 2018
Keynote: Machine Learning for Design Automation at DAC 2018Manish Pandey
 
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Research
 
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GC
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GCHadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GC
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GCErik Krogen
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expertgaoliang641
 

Similar a Introducing LCS to Digital Design Verification (20)

Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...PHX - Session #2 Test Driven Development: Improving .NET Application Performa...
PHX - Session #2 Test Driven Development: Improving .NET Application Performa...
 
Design Verification: The Past, Present and Futurere
Design Verification: The Past, Present and FuturereDesign Verification: The Past, Present and Futurere
Design Verification: The Past, Present and Futurere
 
Design verification--the-past-present-and-future
Design verification--the-past-present-and-futureDesign verification--the-past-present-and-future
Design verification--the-past-present-and-future
 
Patella railsconf 2012
Patella railsconf 2012Patella railsconf 2012
Patella railsconf 2012
 
優化開發環境 無料提升戰鬥力
優化開發環境 無料提升戰鬥力優化開發環境 無料提升戰鬥力
優化開發環境 無料提升戰鬥力
 
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
Schneider Electric Scada Global Support Provides Troubleshooting and Technica...
 
CCDE Experience
CCDE ExperienceCCDE Experience
CCDE Experience
 
10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming10 Reasons You MUST Consider Pattern-Aware Programming
10 Reasons You MUST Consider Pattern-Aware Programming
 
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
 
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
 
Design for Testability in Practice
Design for Testability in PracticeDesign for Testability in Practice
Design for Testability in Practice
 
Dealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in VerificationDealing with the Three Horrible Problems in Verification
Dealing with the Three Horrible Problems in Verification
 
NoSQL and ACID
NoSQL and ACIDNoSQL and ACID
NoSQL and ACID
 
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
 
Keynote: Machine Learning for Design Automation at DAC 2018
Keynote:  Machine Learning for Design Automation at DAC 2018Keynote:  Machine Learning for Design Automation at DAC 2018
Keynote: Machine Learning for Design Automation at DAC 2018
 
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AIQualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
Qualcomm Webinar: Solving Unsolvable Combinatorial Problems with AI
 
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GC
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GCHadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GC
Hadoop Meetup Jan 2019 - Dynamometer and a Case Study in NameNode GC
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 
How to become a testing expert
How to become a testing expertHow to become a testing expert
How to become a testing expert
 

Más de Daniele Loiacono

GPUs for GEC Competition @ GECCO-2013
GPUs for GEC Competition @ GECCO-2013GPUs for GEC Competition @ GECCO-2013
GPUs for GEC Competition @ GECCO-2013Daniele Loiacono
 
EvoRobocode Competition @ GECCO-2013
EvoRobocode Competition @ GECCO-2013EvoRobocode Competition @ GECCO-2013
EvoRobocode Competition @ GECCO-2013Daniele Loiacono
 
2013 Simulated Car Racing @ GECCO-2013
2013 Simulated Car Racing @ GECCO-20132013 Simulated Car Racing @ GECCO-2013
2013 Simulated Car Racing @ GECCO-2013Daniele Loiacono
 
2012 Simulated Car Racing Championship @ CIG-2012
2012 Simulated Car Racing Championship @ CIG-20122012 Simulated Car Racing Championship @ CIG-2012
2012 Simulated Car Racing Championship @ CIG-2012Daniele Loiacono
 
2012 Simulated Car Racing Championship @ GECCO-2012
2012 Simulated Car Racing Championship @ GECCO-20122012 Simulated Car Racing Championship @ GECCO-2012
2012 Simulated Car Racing Championship @ GECCO-2012Daniele Loiacono
 
2012 Simulated Car Racing Championship @ Evo*-2012
2012 Simulated Car Racing Championship @ Evo*-20122012 Simulated Car Racing Championship @ Evo*-2012
2012 Simulated Car Racing Championship @ Evo*-2012Daniele Loiacono
 
Computational Intelligence in Games Tutorial @GECCO2012
Computational Intelligence in Games Tutorial @GECCO2012Computational Intelligence in Games Tutorial @GECCO2012
Computational Intelligence in Games Tutorial @GECCO2012Daniele Loiacono
 
XCSF with Local Deletion: Preventing Detrimental Forgetting
XCSF with Local Deletion: Preventing Detrimental ForgettingXCSF with Local Deletion: Preventing Detrimental Forgetting
XCSF with Local Deletion: Preventing Detrimental ForgettingDaniele Loiacono
 
Testing learning classifier systems
Testing learning classifier systemsTesting learning classifier systems
Testing learning classifier systemsDaniele Loiacono
 
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...Random Artificial Incorporation of Noise in a Learning Classifier System Envi...
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...Daniele Loiacono
 
A temporal classifier system using spiking neural networks
A temporal classifier system using spiking neural networksA temporal classifier system using spiking neural networks
A temporal classifier system using spiking neural networksDaniele Loiacono
 
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...Daniele Loiacono
 
Automatically Defined Functions for Learning Classifier Systems
Automatically Defined Functions for Learning Classifier SystemsAutomatically Defined Functions for Learning Classifier Systems
Automatically Defined Functions for Learning Classifier SystemsDaniele Loiacono
 
Voting Based Learning Classifier System for Multi-Label Classification
Voting Based Learning Classifier System for Multi-Label ClassificationVoting Based Learning Classifier System for Multi-Label Classification
Voting Based Learning Classifier System for Multi-Label ClassificationDaniele Loiacono
 
2011 Simulated Car Racing Championship @ GECCO-2011
2011 Simulated Car Racing Championship @ GECCO-20112011 Simulated Car Racing Championship @ GECCO-2011
2011 Simulated Car Racing Championship @ GECCO-2011Daniele Loiacono
 
2010 Simulated Car Racing Championship @ CIG-2010
2010 Simulated Car Racing Championship @ CIG-20102010 Simulated Car Racing Championship @ CIG-2010
2010 Simulated Car Racing Championship @ CIG-2010Daniele Loiacono
 
2010 Simulated Car Racing Championship @ GECCO-2010
2010 Simulated Car Racing Championship @ GECCO-20102010 Simulated Car Racing Championship @ GECCO-2010
2010 Simulated Car Racing Championship @ GECCO-2010Daniele Loiacono
 
2010 Simulated Car Racing Championship @ WCCI-2010
2010 Simulated Car Racing Championship @ WCCI-20102010 Simulated Car Racing Championship @ WCCI-2010
2010 Simulated Car Racing Championship @ WCCI-2010Daniele Loiacono
 
Car Setup Optimization Competition @ EvoStar 2010
Car Setup Optimization Competition @ EvoStar 2010Car Setup Optimization Competition @ EvoStar 2010
Car Setup Optimization Competition @ EvoStar 2010Daniele Loiacono
 

Más de Daniele Loiacono (20)

GPUs for GEC Competition @ GECCO-2013
GPUs for GEC Competition @ GECCO-2013GPUs for GEC Competition @ GECCO-2013
GPUs for GEC Competition @ GECCO-2013
 
EvoRobocode Competition @ GECCO-2013
EvoRobocode Competition @ GECCO-2013EvoRobocode Competition @ GECCO-2013
EvoRobocode Competition @ GECCO-2013
 
2013 Simulated Car Racing @ GECCO-2013
2013 Simulated Car Racing @ GECCO-20132013 Simulated Car Racing @ GECCO-2013
2013 Simulated Car Racing @ GECCO-2013
 
2012 Simulated Car Racing Championship @ CIG-2012
2012 Simulated Car Racing Championship @ CIG-20122012 Simulated Car Racing Championship @ CIG-2012
2012 Simulated Car Racing Championship @ CIG-2012
 
2012 Simulated Car Racing Championship @ GECCO-2012
2012 Simulated Car Racing Championship @ GECCO-20122012 Simulated Car Racing Championship @ GECCO-2012
2012 Simulated Car Racing Championship @ GECCO-2012
 
2012 Simulated Car Racing Championship @ Evo*-2012
2012 Simulated Car Racing Championship @ Evo*-20122012 Simulated Car Racing Championship @ Evo*-2012
2012 Simulated Car Racing Championship @ Evo*-2012
 
Computational Intelligence in Games Tutorial @GECCO2012
Computational Intelligence in Games Tutorial @GECCO2012Computational Intelligence in Games Tutorial @GECCO2012
Computational Intelligence in Games Tutorial @GECCO2012
 
XCSF with Local Deletion: Preventing Detrimental Forgetting
XCSF with Local Deletion: Preventing Detrimental ForgettingXCSF with Local Deletion: Preventing Detrimental Forgetting
XCSF with Local Deletion: Preventing Detrimental Forgetting
 
Testing learning classifier systems
Testing learning classifier systemsTesting learning classifier systems
Testing learning classifier systems
 
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...Random Artificial Incorporation of Noise in a Learning Classifier System Envi...
Random Artificial Incorporation of Noise in a Learning Classifier System Envi...
 
One Step Fits All
One Step Fits AllOne Step Fits All
One Step Fits All
 
A temporal classifier system using spiking neural networks
A temporal classifier system using spiking neural networksA temporal classifier system using spiking neural networks
A temporal classifier system using spiking neural networks
 
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...
Confusion Matrices for Improving Performance of Feature Pattern Classifier Sy...
 
Automatically Defined Functions for Learning Classifier Systems
Automatically Defined Functions for Learning Classifier SystemsAutomatically Defined Functions for Learning Classifier Systems
Automatically Defined Functions for Learning Classifier Systems
 
Voting Based Learning Classifier System for Multi-Label Classification
Voting Based Learning Classifier System for Multi-Label ClassificationVoting Based Learning Classifier System for Multi-Label Classification
Voting Based Learning Classifier System for Multi-Label Classification
 
2011 Simulated Car Racing Championship @ GECCO-2011
2011 Simulated Car Racing Championship @ GECCO-20112011 Simulated Car Racing Championship @ GECCO-2011
2011 Simulated Car Racing Championship @ GECCO-2011
 
2010 Simulated Car Racing Championship @ CIG-2010
2010 Simulated Car Racing Championship @ CIG-20102010 Simulated Car Racing Championship @ CIG-2010
2010 Simulated Car Racing Championship @ CIG-2010
 
2010 Simulated Car Racing Championship @ GECCO-2010
2010 Simulated Car Racing Championship @ GECCO-20102010 Simulated Car Racing Championship @ GECCO-2010
2010 Simulated Car Racing Championship @ GECCO-2010
 
2010 Simulated Car Racing Championship @ WCCI-2010
2010 Simulated Car Racing Championship @ WCCI-20102010 Simulated Car Racing Championship @ WCCI-2010
2010 Simulated Car Racing Championship @ WCCI-2010
 
Car Setup Optimization Competition @ EvoStar 2010
Car Setup Optimization Competition @ EvoStar 2010Car Setup Optimization Competition @ EvoStar 2010
Car Setup Optimization Competition @ EvoStar 2010
 

Último

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
 
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
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
[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
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Último (20)

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
 
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
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
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...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
[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
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

Introducing LCS to Digital Design Verification

  • 1. Introducing  LCS  to  Digital  Design   Verifica6on   Charalambos  Ioannides  
  • 2. What is a Design? •  Simply – A collection of code files that define the functionality of a single digital electronics component •  Piece of code in hardware description language (Verilog or VHDL) •  A Design goes through various phases: List  of   List  of   Code   Silicon   Requirements   Gates  
  • 3. What is Design Verification? •  Process used to ensure a design s functional correctness with respect to requirements and specification prior to manufacture •  Ultimate goal is to discover as many bugs on a design as possible before shipping product to customer •  Maximize bug discovery if we maximize coverage (code, functional) on design by means of testing
  • 4. Simulation-based DV Test Learning Directed Test Generation TG   Tests   ML   Biased Random Biases   SIM   Bias Learning Test Generation Technique     DUV   Coverage  
  • 5. Why is DV Hard? •  Increasing digital design complexity •  Greater automation of Design process than Verification process •  Increasing miniaturization level of silicon chips •  Competition – increasing feature demands by customers •  Power management •  Increasing Verification Effort •  Many hundreds of tests, 7 month projects
  • 6. Why is DV Hard? Design   Complexity   Technology   Process   ReputaIon   Limited   Engineers   Resources   Product  to  Market   Get  it  Right!   Limited  Budget   Make  it  Fast!  
  • 7. Previous attempts BN   GA   •   Good  results   •   Mature  plaKorm   •   Approx.  CDG  process  well   •   Decent  results   -­‐-­‐-­‐   -­‐-­‐-­‐   •   Domain  Knowledge   •   Non-­‐universal  environment     •    Difficult   to   interpret   know-­‐ •    Finds   one/few   soluIons   for   ledge   CDG   enIre  search  space   via  ML   Markov  Models   GP   •   Excellent  bug  discovery   •   Good  results   •   Approx.  CDG  process  well   •   No  Domain  Knowledge   -­‐-­‐-­‐   -­‐-­‐-­‐   •   Effort  to  setup  environment   •   Code  Diversity   •    Difficult   to   interpret   know-­‐ •    Finds   one/few   soluIons   for   ledge   enIre  search  space   For details: http://www.cs.bris.ac.uk/Publications/pub_master.jsp?id=2001405
  • 8. Why LCS (XCS) on DV? •  Adaptive Learning Systems Ø  Could formulate the problem at a range of different possibilities Ø  Designs change over time and also coverage requirements change during a simulation run •  Develop a complete, accurate and minimal representation of a problem Ø  Achieve coverage in more than one ways and balance it •  Rules developed easy to understand, analyse, combine and alter. No domain knowledge required.
  • 9. Why LCS (XCS) on DV? XCS  Generaliza6on  on  MUX   1E+15   1E+14   1E+13   1E+12   1E+11   1E+10   1E+09   100000000   10000000   1000000   GeneralizaIon  RaIo   100000   Time(h)/experiment   10000   1000   100   10   1   0.1   6   11   20   37   70   0.01   0.001   0.0001   MUX  size  
  • 10. Why not LCS (XCS) on DV? •  XCS has issue with Boolean problems that require overlapping rules •  Problem itself is too big for XCS, but can scale it down •  Need to make any future attempt noise-proof FUTURE RESEARCH WILL TELL!
  • 11. First XCS attempt on DV •  Single step problem •  Learn relationship between biases for a Test Generator (Condition) and the coverage (Action) they achieve •  Noiseless environment as single randomization seed used by the TG •  Both Conditions and Action are bit strings and we use the ternary alphabet {0,1,#} for expressing the learnt relationships •  Use the standard XCS parameters as in the 2002 XCS algorithmic description
  • 19. Learnt Rules (DV3) Classifiers ID Cond. : Action R E F AS EXP NUM •  ID1 – which 32 biases to avoid 1 0###1## : 0000 1000 0 1.00 26.98 22805 21 •  ID2 – wrong, but 2 ###10## : 0000 0 0 0.48 31.76 390 6 tells us that the 32 3 0#110## : 1110 1000 0 0.63 23.31 803 6 bias vectors will cover at least one signal 4 01#10## : 1110 1000 0 0.58 26.06 392 2 •  ID3 & 5 or ID4 & 5 5 1#01100 : 0001 1000 0 0.42 9.34 102 3 achieve max 6 0#100## : 0010 1000 0 0.50 13.29 1534 2 coverage, longer are 7 01#00## : 0010 1000 0 0.82 17.97 3520 8 ID 5, 6 & 8 or 5, 7 & 8 •  ID9 & 10 – tell us 8 1###0#0 : 1100 1000 0 0.62 20.85 403 4 what cannot be 9 ####### : 0011 0 0 1.00 36.16 6285 36 achieved 10 ####### : 0110 0 0 1.00 44.35 6157 30
  • 20. Why deal with DV? •  DV is a hard real world problem •  Designs have complex interactions and becoming more complex •  Maximise coverage, minimizing resources for it. •  Wicked fitness landscape resembling needle in haystack or deceptive problems •  80/20 Rule applies •  Chance to compete with other EA and probabilistic ML techniques •  Formulate the problem as either multistep and single step, using a variety of representations (binary, integers, real numbers, graphs etc.)
  • 22. THANK YOU Any Questions?
  • 23. Previous attempts 1 •  Genetic Algorithms •  Test structure or bias for maximising coverage •  Pros: •  Decent results in both Code and Functional Coverage (>70%) •  Easy to understand evolved knowledge •  Mature platforms •  Cons: •  Some techniques required domain knowledge (setting fitness function or tweaking other parameters) •  Non-universal verification environment •  Search for a single solution for the entire search space – this is not very helpful for DV problems
  • 24. Previous attempts 2 •  Genetic Programming •  Test structure for maximising coverage by learning DAGs •  Pros: •  Good results in Code Coverage (>90%) •  Only point of user involvement is the Instruction Library •  Mature platform •  Cons: •  Earlier versions had problem with code diversity •  Verification environment mostly for microprocessors •  Search for a single solution for the entire search space – this is not very helpful for DV problems
  • 25. Previous attempts 3 •  Bayesian Networks •  Probabilistic Network model to answer MPE questions on coverage to be achieved •  Pros: •  Good results in Functional Coverage (~90-100%) •  Approximates the CDG process well •  Cons: •  Domain Knowledge in constructing initial Network (though automation techniques have been tried) •  Verification environment mostly for sub-systems of microprocessors (i.e. doesn’t scale on larger systems) •  Difficult to understand what has been learnt, difficult to later manually improve
  • 26. Previous attempts 4 •  Markov Models •  Probabilistic Network model (FSM) to generate stimuli for achieving maximum coverage •  Pros: •  Excellent results in bug coverage (100%) •  Approximates the CDG process very well •  Cons: •  Effort in constructing the template files (TG) and activity monitors •  Difficult to understand what has been learnt, difficult to later manually improve