SlideShare a Scribd company logo
1 of 16
Download to read offline
Adopting SystemVerilog / OVM




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   1
Overview
  • The “Verification Challenge” at Icera
  • Why we are interested in SystemVerilog and OVM
  • Plus points
  • Minus points
  • Making the switch less painful
  • Conclusions




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   2
Verification @ Icera




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   3
Verification @ Icera
  •     Two silicon design sites
  •     Small design team
  •     Even smaller verification team
  •     All designers must help with verification
  •     Verification split into 3 tasks:
         •     Designers own “smoke” testing
         •     Sign-off verification environments
         •     Formal Property Checking
  •     Cadence Incisive customer


Copyright 2009 Icera Inc       Andrew Bond DVClub 22nd April 2009   4
Verification @ Icera




                                                               System Inter-Connect
                                           Memory Sub-System
                           CPU




                 Programmable
                      DSP

                                         Chip

Copyright 2009 Icera Inc         Andrew Bond DVClub 22nd April 2009                   5
Why SystemVerilog / OVM?




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   6
Why SystemVerilog / OVM?
  •     The “Open” in OVM
         •     Vendor / License independence
         •     Visibility of source code
         •     A World full of developers
  •     Methodology seemed sound
         •     Evolved from the eRM/URM we have previously used
         •     Incorporates another mature methodology in AVM
  •     SystemVerilog is still fundamentally a HDL
         •     More familiar to “part-time” verification engineers
         •     Native to the simulator
  •     SystemVerilog class based approach familiar to C++ programmers
Copyright 2009 Icera Inc          Andrew Bond DVClub 22nd April 2009     7
Plus Points
  • Getting started is quick
         •     LRM in general provides good SystemVerilog examples
         •     The OVM Reference and User Guide are pretty good
         •     Can get good feedback from the OVM Forum

  • Successfully created “real” verification environments
         •     Roughly equivalent development time as equivalent e
               environments
         •     Including multiple layers of UVCs




Copyright 2009 Icera Inc       Andrew Bond DVClub 22nd April 2009    8
Plus Points
  • Constraints aren’t as complex
         •     Strangely this can make both the development and debug easier
         •     So far haven’t encountered a blocking issue

  • SystemVerilog seems a natural testbench language
  • The DPI is a massive improvement over the PLI/VPI




Copyright 2009 Icera Inc      Andrew Bond DVClub 22nd April 2009               9
Minus Points
  • Vendor support
         •     Supported language features aren’t always known before you find
               them
         •     Can make design choices hard – lots of simple test cases
         •     Debug features aren’t as mature as they are for other supported
               languages

  • AVM and URM
         •     Not 100% harmonious – you will be referred to the old
               documentation
         •     Some concepts are blurred – sequences/scenarios, comparators


Copyright 2009 Icera Inc       Andrew Bond DVClub 22nd April 2009                10
Minus Points
  •     Few good quality examples of more complex concepts
         •     Those provided with the source code vary in style, quality and
               documentation level
         •     OVM Forum examples can be hard to find
         •     The Factory: where, when and how to use isn’t always obvious
         •     The definition of a master / slave
  •     Coverage / Covergroups
         •     Statically defined
                •     Goes against the factory based approach of OVM
                •     Can make creating coverage base classes tricky
         •     Flexibility of bin definitions
         •     Multi-cycle coverage requires support code
Copyright 2009 Icera Inc            Andrew Bond DVClub 22nd April 2009          11
Making the Switch Less Painful




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   12
Making the Switch Less Painful
  •     Start from the bottom
         •     A UVC doesn’t have to relate to a specific design block
         •     Get your base classes right
                •     There is no such thing as a “soft” constraint
                •     It’s easier to add something than take it away

  •     Randomized scenario driven verification over constrained random
         •     Start with what the design has to achieve and work outwards. With the more
               limited SystemVerilog constraints, this is a more natural fit

  •     Combinatorial / multi-cycle interfaces are still awkward
         •     Try and keep to a TLM even when the interface isn’t a simple fit

  •     The print statement is your new best friend!


Copyright 2009 Icera Inc             Andrew Bond DVClub 22nd April 2009                     13
Conclusions




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   14
Conclusions
  •     You can create an “Advanced Verification Environment” using
        SystemVerilog and OVM as it stands today in roughly the same
        timescales as other advanced verification languages
  •     Part-time verification engineers do seem more comfortable creating
        SystemVerilog infrastructure than with other advanced verification
        languages
  •     Vendor support is getting better
  •     Yet to see the vendor-specific value-add
  •     Yet to see how “Open” OVM really is
  •     SystemVerilog / OVM is just a tool and not a miracle
         •     There is no substitute for knowing what you are verifying and why


Copyright 2009 Icera Inc       Andrew Bond DVClub 22nd April 2009                  15
THANK YOU




Copyright 2009 Icera Inc   Andrew Bond DVClub 22nd April 2009   16

More Related Content

Viewers also liked

Ugarte cine.tv rent
Ugarte cine.tv rentUgarte cine.tv rent
Ugarte cine.tv rentdeseba
 
2010 bristol q1_formal-property-checkers
2010 bristol q1_formal-property-checkers2010 bristol q1_formal-property-checkers
2010 bristol q1_formal-property-checkersObsidian Software
 
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?Kurt Beer
 

Viewers also liked (7)

Ugarte cine.tv rent
Ugarte cine.tv rentUgarte cine.tv rent
Ugarte cine.tv rent
 
Baumgartner march07
Baumgartner march07Baumgartner march07
Baumgartner march07
 
2010 bristol q1_formal-property-checkers
2010 bristol q1_formal-property-checkers2010 bristol q1_formal-property-checkers
2010 bristol q1_formal-property-checkers
 
Runner sv q307
Runner sv q307Runner sv q307
Runner sv q307
 
Tobin verification isglobal
Tobin verification isglobalTobin verification isglobal
Tobin verification isglobal
 
Schulz sv q2_2009
Schulz sv q2_2009Schulz sv q2_2009
Schulz sv q2_2009
 
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?
The Moodle Dilemna: To Self-Host or Vendor-Host Moodle?
 

Similar to Andrew bond icera

Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM DVClub
 
Techzim Surge: Important Considerations for Hosting Web or Mobile Apps
Techzim Surge: Important Considerations for Hosting Web or Mobile AppsTechzim Surge: Important Considerations for Hosting Web or Mobile Apps
Techzim Surge: Important Considerations for Hosting Web or Mobile AppsAnthony Somerset
 
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...Docker, Inc.
 
12 Lessons Learnt in Boot Time Reduction
12 Lessons Learnt in Boot Time Reduction12 Lessons Learnt in Boot Time Reduction
12 Lessons Learnt in Boot Time Reductionandrewmurraympc
 
Content Management Selection and Strategy
Content Management Selection and StrategyContent Management Selection and Strategy
Content Management Selection and StrategyIvo Jansch
 
Ibuildings Cms Talk
Ibuildings Cms TalkIbuildings Cms Talk
Ibuildings Cms Talkdean1985
 
The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012Jan Jongboom
 
Lean Startup with WebObjects
Lean Startup with WebObjectsLean Startup with WebObjects
Lean Startup with WebObjectsWO Community
 
QA Lab in the Cloud
QA Lab in the CloudQA Lab in the Cloud
QA Lab in the CloudWill Iverson
 
Docker Enterprise Deployment Planning
Docker Enterprise Deployment PlanningDocker Enterprise Deployment Planning
Docker Enterprise Deployment PlanningStephane Woillez
 
Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...The Incredible Automation Day
 
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBASolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBARazorleaf Corporation
 
Lessons Learned from a major IBM Collaboration Solutions Deployment
Lessons Learned from a major IBM Collaboration Solutions DeploymentLessons Learned from a major IBM Collaboration Solutions Deployment
Lessons Learned from a major IBM Collaboration Solutions DeploymentMartijn de Jong
 
Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!Maaz Anjum
 
VMworld 2014: Databases in a Virtualized World
VMworld 2014:  Databases in a Virtualized WorldVMworld 2014:  Databases in a Virtualized World
VMworld 2014: Databases in a Virtualized WorldViolin Memory
 
SolidFire + Platform9: Simply Faster OpenStack
SolidFire + Platform9: Simply Faster OpenStack SolidFire + Platform9: Simply Faster OpenStack
SolidFire + Platform9: Simply Faster OpenStack NetApp
 
Implementing DevOps Automation Best Practices and Common Mistakes
Implementing DevOps AutomationBest Practices and Common MistakesImplementing DevOps AutomationBest Practices and Common Mistakes
Implementing DevOps Automation Best Practices and Common MistakesDerek Ashmore
 
THE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABELTHE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABELDevOpsDays Tel Aviv
 

Similar to Andrew bond icera (20)

Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM Adopting SystemVerilog/OVM
Adopting SystemVerilog/OVM
 
Techzim Surge: Important Considerations for Hosting Web or Mobile Apps
Techzim Surge: Important Considerations for Hosting Web or Mobile AppsTechzim Surge: Important Considerations for Hosting Web or Mobile Apps
Techzim Surge: Important Considerations for Hosting Web or Mobile Apps
 
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
 
12 Lessons Learnt in Boot Time Reduction
12 Lessons Learnt in Boot Time Reduction12 Lessons Learnt in Boot Time Reduction
12 Lessons Learnt in Boot Time Reduction
 
Content Management Selection and Strategy
Content Management Selection and StrategyContent Management Selection and Strategy
Content Management Selection and Strategy
 
Ibuildings Cms Talk
Ibuildings Cms TalkIbuildings Cms Talk
Ibuildings Cms Talk
 
The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012
 
Lean Startup with WebObjects
Lean Startup with WebObjectsLean Startup with WebObjects
Lean Startup with WebObjects
 
QA Lab in the Cloud
QA Lab in the CloudQA Lab in the Cloud
QA Lab in the Cloud
 
Docker Enterprise Deployment Planning
Docker Enterprise Deployment PlanningDocker Enterprise Deployment Planning
Docker Enterprise Deployment Planning
 
Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...Strategy, planning and governance for enterprise deployments of containers - ...
Strategy, planning and governance for enterprise deployments of containers - ...
 
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBASolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
SolidWorks Design Automation Using the SolidWorks API, Microsoft Excel and VBA
 
Lessons Learned from a major IBM Collaboration Solutions Deployment
Lessons Learned from a major IBM Collaboration Solutions DeploymentLessons Learned from a major IBM Collaboration Solutions Deployment
Lessons Learned from a major IBM Collaboration Solutions Deployment
 
Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!Database Provisioning in EM12c: Provision me a Database Now!
Database Provisioning in EM12c: Provision me a Database Now!
 
Automated Browser Testing
Automated Browser TestingAutomated Browser Testing
Automated Browser Testing
 
VMworld 2014: Databases in a Virtualized World
VMworld 2014:  Databases in a Virtualized WorldVMworld 2014:  Databases in a Virtualized World
VMworld 2014: Databases in a Virtualized World
 
SolidFire + Platform9: Simply Faster OpenStack
SolidFire + Platform9: Simply Faster OpenStack SolidFire + Platform9: Simply Faster OpenStack
SolidFire + Platform9: Simply Faster OpenStack
 
Web frameworks
Web frameworksWeb frameworks
Web frameworks
 
Implementing DevOps Automation Best Practices and Common Mistakes
Implementing DevOps AutomationBest Practices and Common MistakesImplementing DevOps AutomationBest Practices and Common Mistakes
Implementing DevOps Automation Best Practices and Common Mistakes
 
THE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABELTHE PLEASURES OF ON-PREM, TOMER GABEL
THE PLEASURES OF ON-PREM, TOMER GABEL
 

More from Obsidian Software (20)

Zhang rtp q307
Zhang rtp q307Zhang rtp q307
Zhang rtp q307
 
Zehr dv club_12052006
Zehr dv club_12052006Zehr dv club_12052006
Zehr dv club_12052006
 
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
 
Whipp q3 2008_sv
Whipp q3 2008_svWhipp q3 2008_sv
Whipp q3 2008_sv
 
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
 
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 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
 

Andrew bond icera

  • 1. Adopting SystemVerilog / OVM Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 1
  • 2. Overview • The “Verification Challenge” at Icera • Why we are interested in SystemVerilog and OVM • Plus points • Minus points • Making the switch less painful • Conclusions Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 2
  • 3. Verification @ Icera Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 3
  • 4. Verification @ Icera • Two silicon design sites • Small design team • Even smaller verification team • All designers must help with verification • Verification split into 3 tasks: • Designers own “smoke” testing • Sign-off verification environments • Formal Property Checking • Cadence Incisive customer Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 4
  • 5. Verification @ Icera System Inter-Connect Memory Sub-System CPU Programmable DSP Chip Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 5
  • 6. Why SystemVerilog / OVM? Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 6
  • 7. Why SystemVerilog / OVM? • The “Open” in OVM • Vendor / License independence • Visibility of source code • A World full of developers • Methodology seemed sound • Evolved from the eRM/URM we have previously used • Incorporates another mature methodology in AVM • SystemVerilog is still fundamentally a HDL • More familiar to “part-time” verification engineers • Native to the simulator • SystemVerilog class based approach familiar to C++ programmers Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 7
  • 8. Plus Points • Getting started is quick • LRM in general provides good SystemVerilog examples • The OVM Reference and User Guide are pretty good • Can get good feedback from the OVM Forum • Successfully created “real” verification environments • Roughly equivalent development time as equivalent e environments • Including multiple layers of UVCs Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 8
  • 9. Plus Points • Constraints aren’t as complex • Strangely this can make both the development and debug easier • So far haven’t encountered a blocking issue • SystemVerilog seems a natural testbench language • The DPI is a massive improvement over the PLI/VPI Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 9
  • 10. Minus Points • Vendor support • Supported language features aren’t always known before you find them • Can make design choices hard – lots of simple test cases • Debug features aren’t as mature as they are for other supported languages • AVM and URM • Not 100% harmonious – you will be referred to the old documentation • Some concepts are blurred – sequences/scenarios, comparators Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 10
  • 11. Minus Points • Few good quality examples of more complex concepts • Those provided with the source code vary in style, quality and documentation level • OVM Forum examples can be hard to find • The Factory: where, when and how to use isn’t always obvious • The definition of a master / slave • Coverage / Covergroups • Statically defined • Goes against the factory based approach of OVM • Can make creating coverage base classes tricky • Flexibility of bin definitions • Multi-cycle coverage requires support code Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 11
  • 12. Making the Switch Less Painful Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 12
  • 13. Making the Switch Less Painful • Start from the bottom • A UVC doesn’t have to relate to a specific design block • Get your base classes right • There is no such thing as a “soft” constraint • It’s easier to add something than take it away • Randomized scenario driven verification over constrained random • Start with what the design has to achieve and work outwards. With the more limited SystemVerilog constraints, this is a more natural fit • Combinatorial / multi-cycle interfaces are still awkward • Try and keep to a TLM even when the interface isn’t a simple fit • The print statement is your new best friend! Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 13
  • 14. Conclusions Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 14
  • 15. Conclusions • You can create an “Advanced Verification Environment” using SystemVerilog and OVM as it stands today in roughly the same timescales as other advanced verification languages • Part-time verification engineers do seem more comfortable creating SystemVerilog infrastructure than with other advanced verification languages • Vendor support is getting better • Yet to see the vendor-specific value-add • Yet to see how “Open” OVM really is • SystemVerilog / OVM is just a tool and not a miracle • There is no substitute for knowing what you are verifying and why Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 15
  • 16. THANK YOU Copyright 2009 Icera Inc Andrew Bond DVClub 22nd April 2009 16