SlideShare a Scribd company logo
DVClub Bristol 22-April-2009




The Verification Methodology
Landscape




Jonathan Bromley, Doulos
                                                                         1
                      Copyright © 2008 by Doulos. All rights reserved.
The Verification
Methodology Landscape



CONTENTS


The M-word

Languages, methodologies, tools and standards

The big players: OVM, VMM, eRM

Interoperability and convergence

Conclusions?
                                                           2
        Copyright © 2008 by Doulos. All rights reserved.
Verification Environment


             Coverage                Scoreboard /                      Transaction
             collector                 Checker                          recording



  Test
controller
                                            Monitor



                                    TLM
Stimulus
                   Driver                                              DUT
generator
                                                                                     Transactions
                                                                                                    3
                    Copyright © 2008 by Doulos. All rights reserved.
Constrained Random Verification

                                          Checker

                                       Did we see a bug?
Constrained random
     stimulus



   11001001                                                                        000010
   01001010                                                                        010011
   00001001                             Design                                     000010
   01110110                             Under                                      100100
   01100110                              Test                                      001000
   01001001                                                                        110010
   01001110                                                                        000011

                                                               Functional
           Constraints                                         Coverage

        Header   Payload   Checksum                                 Are we done?

                     Increase coverage
                                                                                            4
                             Copyright © 2008 by Doulos. All rights reserved.
The Verification Space
                                      Verification

                                                                                      Formal
                                                                                     Verification


Acceleration                                                         Property                   Equivalence
                     Simulation
+ Emulation                                                          Checking                    Checking


                                         Dynamic
                                          Formal
                                                                        Simulation              Simulation
 Simulation                Simulation                                     Formal                  Formal

 Transaction Level         Constrained
                                                                         Assertions             Coverage
     Modelling              Random


                            Intelligent
                            Testbench                                                                         5
                              Copyright © 2008 by Doulos. All rights reserved.
What Our Customers Want
• Ease of deployment
   •   Customizable environment
        •   but it must do something useful straight out of the box
   •   Simple, uniform interface to any verification IP block
   •   Gentle learning curve for the whole team


• Power
   •   Complex testcases co-ordinated across the whole environment
   •   Randomization
   •   Sophisticated coverage analysis


• Interoperability
   •   Every customer we meet has legacy verification IP

                                                                                6
                             Copyright © 2008 by Doulos. All rights reserved.
Methodology (or just a toolkit?)
• Tame the language monster
   •   e, SystemVerilog, C++ are big and complicated
   •   Many ways to solve a problem
   •   Wheel reinvention is a hazard


• Toolkit
   •   OOP encourages encapsulation of standard functionality
       in base classes
   •   Ideal for component hierarchy, reporting, block-to-block
       communication, DUT connectivity



• Methodology
   •   Published methodology encourages interoperability and re-use
   •   Promote best practice
                                                                             7
                          Copyright © 2008 by Doulos. All rights reserved.
Mature Language Standards
List unchanged for 4 years...                                        Crude Caricature

        •        IEEE 1076 VHDL
                                                                   FPGA, RTL, Europe, Mil-Aero
        •    IEEE 1850™ PSL


        •    IEEE 1364 Verilog                                     ASIC, RTL, USA/RoW

•   IEEE 1800™ SystemVerilog                                       Hardware verification



             •    IEEE 1647™ e                                     Hardware verification



        •    ISO/IEC 14882 C++                                     Modelling, verification

    •       IEEE 1666™ SystemC                                      Virtual hardware prototypes for S/W dev



                 •   Tcl/Tk, Perl                                  Scripting
                                                                                                              8
                                    Copyright © 2008 by Doulos. All rights reserved.                          8
New Standards Activity

•   Verilog and SystemVerilog unified
     •   LRM this year, currently in ballot feedback
     •   Major enhancements to assertions


•   Verification methodology
     •   OVM 2.0, OVM-SC
     •   VMM open-source
     •   eRM3 - e / SV interoperability (Cadence)
     •   OVM / VMM interoperability (Accellera)


•   SystemC TLM-2.0
                                                                      9
                   Copyright © 2008 by Doulos. All rights reserved.
The Big Methodology Players


        www.ovmworld.org



        www.vmmcentral.org



eRM     www.cadence.com




                                                              10
           Copyright © 2008 by Doulos. All rights reserved.
Static View of Testbench
                                                                                            Environment

              Configuration                                            checker



eRM                Sequ-                                                           Sequ-
                   encer                                                           encer
                          active                                                       passive
                          agent                                                         agent

                   Driver       Monitor                                            Driver   Monitor
                   BFM           BFM                                               BFM       BFM



          simple ports (e)                                   DUT
      virtual interfaces (SV)
                                                                                                          11
                                Copyright © 2008 by Doulos. All rights reserved.
Static View of Testbench (VMM)

                 ...
                 test_env env = new;
                 env.run();
                 ...

 Constraints;
directed tests
                    Generator               Self Check
    High level
  transactions                                                                                         Functional
                      Transactor                                                           Monitor     Coverage
   Atomic
transactions

 Checker               Driver           Properties                    Checker                Monitor




                                       DUT

                                                                                                                    12
                                        Copyright © 2008 by Doulos. All rights reserved.
OVM Key Features


•   Constrained random, coverage-driven verification
•   Separation of tests from verification environment
•   Configuration of verification environment
     •   through a table

•   Verification IP reuse (canonical structure and guidelines)


•   TLM communication
•   Automation (where missing from SystemVerilog language)
•   Hierarchical sequential stimulus (sequences)
•   Standardized messaging

                                                                              13
                           Copyright © 2008 by Doulos. All rights reserved.
eRM Key Features


•   Constrained random, coverage-driven verification
•   Separation of tests from verification environment
•   Configuration of verification environment
     •   through AOP extension and pre-run constraints

•   Verification IP reuse (rigorously standardized rules)


•   Communication via ports
•   Automation (using e language's macro features)
•   Hierarchical sequential stimulus (sequences)
•   Standardized messaging

                                                                             14
                          Copyright © 2008 by Doulos. All rights reserved.
VMM Key Features


•   Constrained random, coverage-driven verification
•   Configuration of verification environment
     •   through configuration objects passed to verification components

•   Verification IP reuse (conventions)


•   Communication via channels, callbacks, notifications
•   Automation (scripts and macros)
•   Hierarchical sequential stimulus (scenarios)
•   Standardized messaging


•   Strongly influenced by RVM (Synopsys Vera)
                                                                             15
                          Copyright © 2008 by Doulos. All rights reserved.
Structure of an OVM Component
class my_driver extends ovm_driver #(my_transaction);                        Base class
  // ovm_seq_item_pull_port #(...) seq_item_port;                            TLM port (inherited)

  my_dut_if_wrapper m_dut_if;                                                Connection to DUT

  function new(string name, ovm_component parent);
    super.new(name, parent);                                                 Constructor
  endfunction: new

  function void build;
    super.build();                                                           Build phase
  endfunction: build                                                         callback

  virtual task run;
    forever begin
      ...                                                                    Run phase
    end                                                                      callback
  endtask: run
endclass: my_driver

                                                                                                    16
                          Copyright © 2008 by Doulos. All rights reserved.
Phase Methods (OVM)

build                                                              Call factory

connect                                                            Make TLM connections

end_of_elaboration                                                 After connections hardened

start_of_simulation                                                Get ready to run

    run                                                            Task (executed concurrently)

          extract

          check                                                    Post-processing

          report


                  Similar phase arrangements in VMM, eRM
                                                                                                  17
                     Copyright © 2008 by Doulos. All rights reserved.
Reconfigurable Environment (OVM)
 By type or instance path
                                Test                                               Customize environments
                               Test
set_inst_override_*
                                                                      set_config_*



               Reusable verification environment                                         Customize types

        Scoreboard                       Virtual                       set_type_override_*
                                       sequencer


                                                                                            Config          Sequencer

          Monitor            Existing                Existing
                            verification            verification
                            component               component                                Monitor          Driver




                                           DUT
                                                                                                                        18
                                     Copyright © 2008 by Doulos. All rights reserved.
Layered Sequential Stimulus

Tests enumerate possible
top-level sequences



Virtual or layered
                                                                      seq1                      seq2    seq2
sequences




Constrained random
sequence of transactions                                                    tx1                  tx2   tx3


Randomized transactions are not enough



Drive transactions into DUT                              tx1                                Driver           DUT




                                                                                                                   19
                                         Copyright © 2008 by Doulos. All rights reserved.
Virtual Sequences
            Component hierarchy                                            Stimulus hierarchy
                                                                        (co-ordinated interfaces)
                 ovm_env

              ovm_sequencer                                                 ovm_sequence


 ovm_agent                           ovm_agent

ovm_sequencer                    ovm_sequencer                              ovm_sequence


                                                                         ovm_sequence_item

 ovm_driver                           ovm_driver


   dut_if                                 dut_if


                   DUT
                                                                                                    20
                     Copyright © 2008 by Doulos. All rights reserved.
Scenario Generator (VMM)

Verification environment

       Scenario generator

                            scenario_set                              burst
                                                                                      items
                            [0] atomic
        select_scenario
                            [1] burst
             select
                            [2] RMW



                               copies of items


                  generator's output channel
                                                                             Downstream transactor
                                                                                                     21
                                 Copyright © 2008 by Doulos. All rights reserved.
Now and Next

•   VMM: rapidly growing collection of "applications"
     •   register abstraction layer, hierarchy, ...



•   OVM/VMM interoperability toolkits/standards


•   OVM/eRM mixed-language tools


•   OVM-SC


•   Increasing availability of verification IP

                                                                          22
                       Copyright © 2008 by Doulos. All rights reserved.
Conclusion

•   Interesting times
     •   standards don't always keep up with user needs



•   Challenges for users choosing a new approach:
     •   tools?
     •   methodology?
     •   decisions are not yet completely decoupled



•   Training is important:
     •   VMM, OVM, eRM are not difficult ...
     •   ... but jump-starting your efforts pays dividends


                                                                         23
                      Copyright © 2008 by Doulos. All rights reserved.
24
Copyright © 2008 by Doulos. All rights reserved.

More Related Content

What's hot

Cocomo ii estimation
Cocomo ii estimationCocomo ii estimation
Cocomo ii estimation
jujin1810
 
Benetel Overview 181209
Benetel Overview 181209Benetel Overview 181209
Benetel Overview 181209
seawright777
 
High Availability and Disaster Recovery with Novell Sentinel Log Manager
High Availability and Disaster Recovery with Novell Sentinel Log ManagerHigh Availability and Disaster Recovery with Novell Sentinel Log Manager
High Availability and Disaster Recovery with Novell Sentinel Log Manager
Novell
 
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615bIEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
Ira Feldman
 
Fielding Systems-of-Systems, Riding the agile sw tiger
Fielding Systems-of-Systems, Riding the agile sw tigerFielding Systems-of-Systems, Riding the agile sw tiger
Fielding Systems-of-Systems, Riding the agile sw tiger
Sergey Tozik
 
Christ Vriens@Agile Community Event - March 19th, 2009
Christ Vriens@Agile Community Event - March 19th, 2009Christ Vriens@Agile Community Event - March 19th, 2009
Christ Vriens@Agile Community Event - March 19th, 2009
guest19a937
 
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
Cambridge Consultants
 
Bits2010jemison
Bits2010jemisonBits2010jemison
Bits2010jemison
bjemison
 
HyperStudy 10 Training Manual
HyperStudy 10 Training ManualHyperStudy 10 Training Manual
HyperStudy 10 Training Manual
AltairKorea
 
Monarch Tracking Solutions [Pricinggunsworld.com]
Monarch Tracking Solutions [Pricinggunsworld.com]Monarch Tracking Solutions [Pricinggunsworld.com]
Monarch Tracking Solutions [Pricinggunsworld.com]
Pricing Guns
 
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
Ira Feldman
 
Track g test strategy - delta
Track g   test strategy - deltaTrack g   test strategy - delta
Track g test strategy - delta
chiportal
 
Neil Tompson - SoftTest Ireland
Neil Tompson - SoftTest IrelandNeil Tompson - SoftTest Ireland
Neil Tompson - SoftTest Ireland
David O'Dowd
 
Rafael Ortiz - NVH foam equipment for automotive applications
Rafael Ortiz - NVH foam equipment for automotive applicationsRafael Ortiz - NVH foam equipment for automotive applications
Rafael Ortiz - NVH foam equipment for automotive applications
ponencias.eurosurfas2011
 
Dfr Presentation
Dfr   PresentationDfr   Presentation
Dfr Presentation
eraz
 
Postdoc Symposium - Abram Hindle
Postdoc Symposium - Abram HindlePostdoc Symposium - Abram Hindle
Postdoc Symposium - Abram Hindle
ICSM 2011
 
120906 inchron rhapsody enlightenment
120906 inchron rhapsody enlightenment120906 inchron rhapsody enlightenment
120906 inchron rhapsody enlightenment
IBM Rational
 
Whipp q3 2008_sv
Whipp q3 2008_svWhipp q3 2008_sv
Whipp q3 2008_sv
Obsidian Software
 

What's hot (18)

Cocomo ii estimation
Cocomo ii estimationCocomo ii estimation
Cocomo ii estimation
 
Benetel Overview 181209
Benetel Overview 181209Benetel Overview 181209
Benetel Overview 181209
 
High Availability and Disaster Recovery with Novell Sentinel Log Manager
High Availability and Disaster Recovery with Novell Sentinel Log ManagerHigh Availability and Disaster Recovery with Novell Sentinel Log Manager
High Availability and Disaster Recovery with Novell Sentinel Log Manager
 
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615bIEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
IEEE SWTW 2011 - Probe Card Cost Drivers - Ira Feldman 110615b
 
Fielding Systems-of-Systems, Riding the agile sw tiger
Fielding Systems-of-Systems, Riding the agile sw tigerFielding Systems-of-Systems, Riding the agile sw tiger
Fielding Systems-of-Systems, Riding the agile sw tiger
 
Christ Vriens@Agile Community Event - March 19th, 2009
Christ Vriens@Agile Community Event - March 19th, 2009Christ Vriens@Agile Community Event - March 19th, 2009
Christ Vriens@Agile Community Event - March 19th, 2009
 
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
Cambridge Consultants Innovation Day 2012: Minimising risk and delay for comp...
 
Bits2010jemison
Bits2010jemisonBits2010jemison
Bits2010jemison
 
HyperStudy 10 Training Manual
HyperStudy 10 Training ManualHyperStudy 10 Training Manual
HyperStudy 10 Training Manual
 
Monarch Tracking Solutions [Pricinggunsworld.com]
Monarch Tracking Solutions [Pricinggunsworld.com]Monarch Tracking Solutions [Pricinggunsworld.com]
Monarch Tracking Solutions [Pricinggunsworld.com]
 
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
IEEE SWTW 2011 Probe Card Cost Drivers - Ira Feldman 110621
 
Track g test strategy - delta
Track g   test strategy - deltaTrack g   test strategy - delta
Track g test strategy - delta
 
Neil Tompson - SoftTest Ireland
Neil Tompson - SoftTest IrelandNeil Tompson - SoftTest Ireland
Neil Tompson - SoftTest Ireland
 
Rafael Ortiz - NVH foam equipment for automotive applications
Rafael Ortiz - NVH foam equipment for automotive applicationsRafael Ortiz - NVH foam equipment for automotive applications
Rafael Ortiz - NVH foam equipment for automotive applications
 
Dfr Presentation
Dfr   PresentationDfr   Presentation
Dfr Presentation
 
Postdoc Symposium - Abram Hindle
Postdoc Symposium - Abram HindlePostdoc Symposium - Abram Hindle
Postdoc Symposium - Abram Hindle
 
120906 inchron rhapsody enlightenment
120906 inchron rhapsody enlightenment120906 inchron rhapsody enlightenment
120906 inchron rhapsody enlightenment
 
Whipp q3 2008_sv
Whipp q3 2008_svWhipp q3 2008_sv
Whipp q3 2008_sv
 

Viewers also liked

Ludden power7 verification
Ludden power7 verificationLudden power7 verification
Ludden power7 verification
Obsidian Software
 
Dv club foils_intel_austin
Dv club foils_intel_austinDv club foils_intel_austin
Dv club foils_intel_austin
Obsidian Software
 
Colwell validation attitude
Colwell validation attitudeColwell validation attitude
Colwell validation attitude
Obsidian Software
 
Chris brown ti
Chris brown tiChris brown ti
Chris brown ti
Obsidian Software
 
Dill may-2008
Dill may-2008Dill may-2008
Dill may-2008
Obsidian Software
 
3 d to _hpc
3 d to _hpc3 d to _hpc
3 d to _hpc
Obsidian Software
 
Zehr dv club_12052006
Zehr dv club_12052006Zehr dv club_12052006
Zehr dv club_12052006
Obsidian Software
 
Zhang rtp q307
Zhang rtp q307Zhang rtp q307
Zhang rtp q307
Obsidian Software
 

Viewers also liked (8)

Ludden power7 verification
Ludden power7 verificationLudden power7 verification
Ludden power7 verification
 
Dv club foils_intel_austin
Dv club foils_intel_austinDv club foils_intel_austin
Dv club foils_intel_austin
 
Colwell validation attitude
Colwell validation attitudeColwell validation attitude
Colwell validation attitude
 
Chris brown ti
Chris brown tiChris brown ti
Chris brown ti
 
Dill may-2008
Dill may-2008Dill may-2008
Dill may-2008
 
3 d to _hpc
3 d to _hpc3 d to _hpc
3 d to _hpc
 
Zehr dv club_12052006
Zehr dv club_12052006Zehr dv club_12052006
Zehr dv club_12052006
 
Zhang rtp q307
Zhang rtp q307Zhang rtp q307
Zhang rtp q307
 

Similar to Jonathan bromley doulos

Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer TestingPivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
guestc8adce
 
20110812 CyberTAN presentation
20110812 CyberTAN presentation20110812 CyberTAN presentation
20110812 CyberTAN presentation
Richard Hsu
 
Wind River Test Management
Wind River Test ManagementWind River Test Management
Wind River Test Management
ramzyh78
 
Mobile Reliability Challenges
Mobile Reliability ChallengesMobile Reliability Challenges
Mobile Reliability Challenges
Bob Binder
 
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAUTest Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
InfinIT - Innovationsnetværket for it
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design
chiportal
 
Achieving Very High Reliability for Ubiquitous Information Technology
Achieving Very High Reliability for Ubiquitous Information Technology Achieving Very High Reliability for Ubiquitous Information Technology
Achieving Very High Reliability for Ubiquitous Information Technology
Bob Binder
 
Quality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise FlexQuality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise Flex
François Le Droff
 
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
guestb993cd99
 
Specifications For Enterprise Testing
Specifications For Enterprise TestingSpecifications For Enterprise Testing
Specifications For Enterprise Testing
Sathyan Sethumadhavan
 
Controller MIgration & Connectivity 11.10.09
Controller MIgration & Connectivity 11.10.09Controller MIgration & Connectivity 11.10.09
Controller MIgration & Connectivity 11.10.09
mgk918
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
Dominik Dary
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology Landscape
DVClub
 
Arena product presentation
Arena product presentationArena product presentation
Arena product presentation
jhjsmits
 
Performance Testing Mobile and Multi-Tier Applications
Performance Testing Mobile and Multi-Tier ApplicationsPerformance Testing Mobile and Multi-Tier Applications
Performance Testing Mobile and Multi-Tier Applications
Bob Binder
 
Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))
dev2ops
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
Michael Palotas
 
Test automation
Test automationTest automation
Test automation
Javier Gutierrez
 
SOASTA CloudTest Lite
SOASTA CloudTest LiteSOASTA CloudTest Lite
SOASTA CloudTest Lite
Fred Beringer
 
Uss Overview Adira
Uss Overview AdiraUss Overview Adira
Uss Overview Adira
Thierry CHABROL
 

Similar to Jonathan bromley doulos (20)

Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer TestingPivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
 
20110812 CyberTAN presentation
20110812 CyberTAN presentation20110812 CyberTAN presentation
20110812 CyberTAN presentation
 
Wind River Test Management
Wind River Test ManagementWind River Test Management
Wind River Test Management
 
Mobile Reliability Challenges
Mobile Reliability ChallengesMobile Reliability Challenges
Mobile Reliability Challenges
 
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAUTest Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
 
A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design A comprehensive formal verification solution for ARM based SOC design
A comprehensive formal verification solution for ARM based SOC design
 
Achieving Very High Reliability for Ubiquitous Information Technology
Achieving Very High Reliability for Ubiquitous Information Technology Achieving Very High Reliability for Ubiquitous Information Technology
Achieving Very High Reliability for Ubiquitous Information Technology
 
Quality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise FlexQuality Best Practices & Toolkit for Enterprise Flex
Quality Best Practices & Toolkit for Enterprise Flex
 
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
Embedded Instrumentation: Critical to Validation and Test in the Electronics ...
 
Specifications For Enterprise Testing
Specifications For Enterprise TestingSpecifications For Enterprise Testing
Specifications For Enterprise Testing
 
Controller MIgration & Connectivity 11.10.09
Controller MIgration & Connectivity 11.10.09Controller MIgration & Connectivity 11.10.09
Controller MIgration & Connectivity 11.10.09
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology Landscape
 
Arena product presentation
Arena product presentationArena product presentation
Arena product presentation
 
Performance Testing Mobile and Multi-Tier Applications
Performance Testing Mobile and Multi-Tier ApplicationsPerformance Testing Mobile and Multi-Tier Applications
Performance Testing Mobile and Multi-Tier Applications
 
Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
 
Test automation
Test automationTest automation
Test automation
 
SOASTA CloudTest Lite
SOASTA CloudTest LiteSOASTA CloudTest Lite
SOASTA CloudTest Lite
 
Uss Overview Adira
Uss Overview AdiraUss Overview Adira
Uss Overview Adira
 

More from Obsidian Software

Yang greenstein part_2
Yang greenstein part_2Yang greenstein part_2
Yang greenstein part_2
Obsidian Software
 
Yang greenstein part_1
Yang greenstein part_1Yang greenstein part_1
Yang greenstein part_1
Obsidian Software
 
Williamson arm validation metrics
Williamson arm validation metricsWilliamson arm validation metrics
Williamson arm validation metrics
Obsidian Software
 
Vishakantaiah validating
Vishakantaiah validatingVishakantaiah validating
Vishakantaiah validating
Obsidian 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-environment
Obsidian Software
 
Tobin verification isglobal
Tobin verification isglobalTobin verification isglobal
Tobin verification isglobal
Obsidian Software
 
Tierney bq207
Tierney bq207Tierney bq207
Tierney bq207
Obsidian Software
 
The validation attitude
The validation attitudeThe validation attitude
The validation attitude
Obsidian Software
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
Obsidian Software
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
Obsidian Software
 
Strickland dvclub
Strickland dvclubStrickland dvclub
Strickland dvclub
Obsidian Software
 
Stinson post si and verification
Stinson post si and verificationStinson post si and verification
Stinson post si and verification
Obsidian Software
 
Shultz dallas q108
Shultz dallas q108Shultz dallas q108
Shultz dallas q108
Obsidian Software
 
Shreeve dv club_ams
Shreeve dv club_amsShreeve dv club_ams
Shreeve dv club_ams
Obsidian Software
 
Sharam salamian
Sharam salamianSharam salamian
Sharam salamian
Obsidian Software
 
Schulz sv q2_2009
Schulz sv q2_2009Schulz sv q2_2009
Schulz sv q2_2009
Obsidian Software
 
Schulz dallas q1_2008
Schulz dallas q1_2008Schulz dallas q1_2008
Schulz dallas q1_2008
Obsidian Software
 
Salamian dv club_foils_intel_austin
Salamian dv club_foils_intel_austinSalamian dv club_foils_intel_austin
Salamian dv club_foils_intel_austin
Obsidian Software
 
Sakar jain
Sakar jainSakar jain
Sakar jain
Obsidian Software
 
Runner sv q307
Runner sv q307Runner sv q307
Runner sv q307
Obsidian Software
 

More from Obsidian Software (20)

Yang greenstein part_2
Yang greenstein part_2Yang greenstein part_2
Yang greenstein part_2
 
Yang greenstein part_1
Yang greenstein part_1Yang greenstein part_1
Yang greenstein part_1
 
Williamson arm validation metrics
Williamson arm validation metricsWilliamson arm validation metrics
Williamson arm validation metrics
 
Vishakantaiah validating
Vishakantaiah validatingVishakantaiah validating
Vishakantaiah validating
 
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
 
Tobin verification isglobal
Tobin verification isglobalTobin verification isglobal
Tobin verification isglobal
 
Tierney bq207
Tierney bq207Tierney bq207
Tierney bq207
 
The validation attitude
The validation attitudeThe validation attitude
The validation attitude
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
 
Strickland dvclub
Strickland dvclubStrickland dvclub
Strickland dvclub
 
Stinson post si and verification
Stinson post si and verificationStinson post si and verification
Stinson post si and verification
 
Shultz dallas q108
Shultz dallas q108Shultz dallas q108
Shultz dallas q108
 
Shreeve dv club_ams
Shreeve dv club_amsShreeve dv club_ams
Shreeve dv club_ams
 
Sharam salamian
Sharam salamianSharam salamian
Sharam salamian
 
Schulz sv q2_2009
Schulz sv q2_2009Schulz sv q2_2009
Schulz sv q2_2009
 
Schulz dallas q1_2008
Schulz dallas q1_2008Schulz dallas q1_2008
Schulz dallas q1_2008
 
Salamian dv club_foils_intel_austin
Salamian dv club_foils_intel_austinSalamian dv club_foils_intel_austin
Salamian dv club_foils_intel_austin
 
Sakar jain
Sakar jainSakar jain
Sakar jain
 
Runner sv q307
Runner sv q307Runner sv q307
Runner sv q307
 

Jonathan bromley doulos

  • 1. DVClub Bristol 22-April-2009 The Verification Methodology Landscape Jonathan Bromley, Doulos 1 Copyright © 2008 by Doulos. All rights reserved.
  • 2. The Verification Methodology Landscape CONTENTS The M-word Languages, methodologies, tools and standards The big players: OVM, VMM, eRM Interoperability and convergence Conclusions? 2 Copyright © 2008 by Doulos. All rights reserved.
  • 3. Verification Environment Coverage Scoreboard / Transaction collector Checker recording Test controller Monitor TLM Stimulus Driver DUT generator Transactions 3 Copyright © 2008 by Doulos. All rights reserved.
  • 4. Constrained Random Verification Checker Did we see a bug? Constrained random stimulus 11001001 000010 01001010 010011 00001001 Design 000010 01110110 Under 100100 01100110 Test 001000 01001001 110010 01001110 000011 Functional Constraints Coverage Header Payload Checksum Are we done? Increase coverage 4 Copyright © 2008 by Doulos. All rights reserved.
  • 5. The Verification Space Verification Formal Verification Acceleration Property Equivalence Simulation + Emulation Checking Checking Dynamic Formal Simulation Simulation Simulation Simulation Formal Formal Transaction Level Constrained Assertions Coverage Modelling Random Intelligent Testbench 5 Copyright © 2008 by Doulos. All rights reserved.
  • 6. What Our Customers Want • Ease of deployment • Customizable environment • but it must do something useful straight out of the box • Simple, uniform interface to any verification IP block • Gentle learning curve for the whole team • Power • Complex testcases co-ordinated across the whole environment • Randomization • Sophisticated coverage analysis • Interoperability • Every customer we meet has legacy verification IP 6 Copyright © 2008 by Doulos. All rights reserved.
  • 7. Methodology (or just a toolkit?) • Tame the language monster • e, SystemVerilog, C++ are big and complicated • Many ways to solve a problem • Wheel reinvention is a hazard • Toolkit • OOP encourages encapsulation of standard functionality in base classes • Ideal for component hierarchy, reporting, block-to-block communication, DUT connectivity • Methodology • Published methodology encourages interoperability and re-use • Promote best practice 7 Copyright © 2008 by Doulos. All rights reserved.
  • 8. Mature Language Standards List unchanged for 4 years... Crude Caricature • IEEE 1076 VHDL FPGA, RTL, Europe, Mil-Aero • IEEE 1850™ PSL • IEEE 1364 Verilog ASIC, RTL, USA/RoW • IEEE 1800™ SystemVerilog Hardware verification • IEEE 1647™ e Hardware verification • ISO/IEC 14882 C++ Modelling, verification • IEEE 1666™ SystemC Virtual hardware prototypes for S/W dev • Tcl/Tk, Perl Scripting 8 Copyright © 2008 by Doulos. All rights reserved. 8
  • 9. New Standards Activity • Verilog and SystemVerilog unified • LRM this year, currently in ballot feedback • Major enhancements to assertions • Verification methodology • OVM 2.0, OVM-SC • VMM open-source • eRM3 - e / SV interoperability (Cadence) • OVM / VMM interoperability (Accellera) • SystemC TLM-2.0 9 Copyright © 2008 by Doulos. All rights reserved.
  • 10. The Big Methodology Players www.ovmworld.org www.vmmcentral.org eRM www.cadence.com 10 Copyright © 2008 by Doulos. All rights reserved.
  • 11. Static View of Testbench Environment Configuration checker eRM Sequ- Sequ- encer encer active passive agent agent Driver Monitor Driver Monitor BFM BFM BFM BFM simple ports (e) DUT virtual interfaces (SV) 11 Copyright © 2008 by Doulos. All rights reserved.
  • 12. Static View of Testbench (VMM) ... test_env env = new; env.run(); ... Constraints; directed tests Generator Self Check High level transactions Functional Transactor Monitor Coverage Atomic transactions Checker Driver Properties Checker Monitor DUT 12 Copyright © 2008 by Doulos. All rights reserved.
  • 13. OVM Key Features • Constrained random, coverage-driven verification • Separation of tests from verification environment • Configuration of verification environment • through a table • Verification IP reuse (canonical structure and guidelines) • TLM communication • Automation (where missing from SystemVerilog language) • Hierarchical sequential stimulus (sequences) • Standardized messaging 13 Copyright © 2008 by Doulos. All rights reserved.
  • 14. eRM Key Features • Constrained random, coverage-driven verification • Separation of tests from verification environment • Configuration of verification environment • through AOP extension and pre-run constraints • Verification IP reuse (rigorously standardized rules) • Communication via ports • Automation (using e language's macro features) • Hierarchical sequential stimulus (sequences) • Standardized messaging 14 Copyright © 2008 by Doulos. All rights reserved.
  • 15. VMM Key Features • Constrained random, coverage-driven verification • Configuration of verification environment • through configuration objects passed to verification components • Verification IP reuse (conventions) • Communication via channels, callbacks, notifications • Automation (scripts and macros) • Hierarchical sequential stimulus (scenarios) • Standardized messaging • Strongly influenced by RVM (Synopsys Vera) 15 Copyright © 2008 by Doulos. All rights reserved.
  • 16. Structure of an OVM Component class my_driver extends ovm_driver #(my_transaction); Base class // ovm_seq_item_pull_port #(...) seq_item_port; TLM port (inherited) my_dut_if_wrapper m_dut_if; Connection to DUT function new(string name, ovm_component parent); super.new(name, parent); Constructor endfunction: new function void build; super.build(); Build phase endfunction: build callback virtual task run; forever begin ... Run phase end callback endtask: run endclass: my_driver 16 Copyright © 2008 by Doulos. All rights reserved.
  • 17. Phase Methods (OVM) build Call factory connect Make TLM connections end_of_elaboration After connections hardened start_of_simulation Get ready to run run Task (executed concurrently) extract check Post-processing report Similar phase arrangements in VMM, eRM 17 Copyright © 2008 by Doulos. All rights reserved.
  • 18. Reconfigurable Environment (OVM) By type or instance path Test Customize environments Test set_inst_override_* set_config_* Reusable verification environment Customize types Scoreboard Virtual set_type_override_* sequencer Config Sequencer Monitor Existing Existing verification verification component component Monitor Driver DUT 18 Copyright © 2008 by Doulos. All rights reserved.
  • 19. Layered Sequential Stimulus Tests enumerate possible top-level sequences Virtual or layered seq1 seq2 seq2 sequences Constrained random sequence of transactions tx1 tx2 tx3 Randomized transactions are not enough Drive transactions into DUT tx1 Driver DUT 19 Copyright © 2008 by Doulos. All rights reserved.
  • 20. Virtual Sequences Component hierarchy Stimulus hierarchy (co-ordinated interfaces) ovm_env ovm_sequencer ovm_sequence ovm_agent ovm_agent ovm_sequencer ovm_sequencer ovm_sequence ovm_sequence_item ovm_driver ovm_driver dut_if dut_if DUT 20 Copyright © 2008 by Doulos. All rights reserved.
  • 21. Scenario Generator (VMM) Verification environment Scenario generator scenario_set burst items [0] atomic select_scenario [1] burst select [2] RMW copies of items generator's output channel Downstream transactor 21 Copyright © 2008 by Doulos. All rights reserved.
  • 22. Now and Next • VMM: rapidly growing collection of "applications" • register abstraction layer, hierarchy, ... • OVM/VMM interoperability toolkits/standards • OVM/eRM mixed-language tools • OVM-SC • Increasing availability of verification IP 22 Copyright © 2008 by Doulos. All rights reserved.
  • 23. Conclusion • Interesting times • standards don't always keep up with user needs • Challenges for users choosing a new approach: • tools? • methodology? • decisions are not yet completely decoupled • Training is important: • VMM, OVM, eRM are not difficult ... • ... but jump-starting your efforts pays dividends 23 Copyright © 2008 by Doulos. All rights reserved.
  • 24. 24 Copyright © 2008 by Doulos. All rights reserved.