SlideShare une entreprise Scribd logo
1  sur  23
SYSTEM VERILOG -
VERIFICATION METHODOLOGY


Vinchip Systems
(a Design and Verification Company)

Chennai.
Synopsis

Introduction

Verification methodology Key features

Verification Flow

Verification Environment

SV Based Verification

Integration, Simulation

Bug Report mechanism
7/1
Introduction

•    Verification is the process of experimenting our
    design with possible test scenarios.

•    Verification contains many phases that includes
    Testcase generation, coverage, monitor ..,etc.

•   Before tape-out our design should be verified
    more than 90% successfully.
Verification methodology key features


 The key features associated with the verification
  methodology are:
    Assertion Based Verification
    Functional Coverage Driven Verification
    Constrained Random Verification
    Scoreboard & Checker
Key features.....

 Assertion Based Verification

   Assertion Based Verification helps to detect more
   functional bugs earlier in the verification process and
   enables short verification cycle times and faster
   debugging.
 Functional Coverage Driven Verification

   Functional Coverage Driven Verification is the process
   in which the result of functional coverage is used to
   drive the verification to completion. It also gives a
   more structured approach to verification, instead of
   writing more testcases.
Key features......

 Constrained Random Verification

   It is well suited for designs that have diverse set of
   operations and sequences that are difficult to cover
   completely. Constrained random tests are faster to write
   and enables faster verification of the design.
 Scoreboard & Checker

   Scoreboard and Checker is a mechanism used to
   dynamically predict the response of the design and
   check the observed response against the predicted
   response. Usually it refers to the entire dynamic
   response-checking structure.
Verification Flow
                                Design Specifications

                                  Verification plan

     Testcase Scenarios                                 Testbench Environment1

     Testcase generation                                 Model and Testbench
(handcrafted SCV/SV generated                               Devolopment


                  Integration of RTL with Testbench Environment

                          No        RTL function
         Modify RTL
                                      verified
                                               YES
                           Testsuit Regression Coverage


                NO                Coverage Target
                                    Achieved?
                                                YES
                                          END
Verification Flow

 Design Specification

  Verification flow starts with understanding the
  architecture specification of the design under
  verification. Once the architecture is well understood
  then comes the verification plan.
 Verification Plan

  The verification plan comprises the preparation of test
  case scenarios and testbench environment
Testcase Scenarios
 The testcase scenarios document includes all the
  possible combinations to test the functionality of the
  design under test.



                      Test Case Scenarios




      Self Checking                         Non-Self Checking
Self Checking

 Self checking test cases are written in such a way that it
  tests itself.


                        Self Checking




      Corner              Directed             Coverage
Self Checking
 Corner

  Corner cases covers the scenarios which are prone to errors and
  non-trivial, where there are more possibilities of uncovering bugs.

 Directed

  Directed cases covers all the scenarios related to the general
  features and they are straight forward cases which are written in an
  orderly manner.

 Coverage

  Coverage cases are based on the coverage report and they contain
  the scenarios which are missedout in the other normal categories.
Non - Self Checking

Non - self checking test cases has no self checking code and
 they are coded such that if the program execution reaches the
 last line of the test case properly then a success code will be
 moved into a specific register. After the completion of
 execution that register can be checked for the success code to
 ensure the correctness of the design.

                            Non-Self checking




              Constrained                                  Application
  Random                         Stress         Negative
               Random                                       specific
Non - Self Checking
 Random

  Random cases cover all the possible combinations of data as
  well as scenarios in a random manner.
 Constrained Random

  Constrained Random cases cover the all possible
  combinations of data as well as scenarios in a random
  manner, constrained for valid combinations.
 Stress

  Stress cases exercise the logic with more number of
  combinations of scenarios as well as data for a long time to
  ensure the reliability of the design under stress conditions.
Non - Self Checking

 Negative

  Negative cases covers the scenarios which are not
  possible under normal cases. They are used to analyze
  the behavior of the design under error conditions.
 Application Specific

  High level cases targeted for a particular application
  normally written in “C” language.
Testbench Environment

The testbench environment includes different types of
 environments to be developed for effectively verifying
 the design under verification. The testbench
 environments are of two types based on the testing
 strategies adopted.

  • Top Level

  • Block Level
Top Level


The top level testing includes the testing of the design as
 a whole and the stimulus forced in this case is the
 memory image generated from the assembly level or
 high level test files. Based on the requirement for the
 verification, there are three types of environments.
                          Top Level




          Static          Dynamic           Coverage
 Static

  Performs functional verification in a static manner using functional model.
  The results of DUT and model are dumped and compared for equivalence
  once the execution is over.

 Dynamic

  Performs timing verification in a dynamic manner using the cycle accurate
  model. The results of DUT and model are compared for equivalence at
  each and every cycle dynamically.

 Coverage

  The following are considered :

  • Line coverage

  • Branch coverage

  • FSM coverage
Block Level

Block level verification includes the verification of the
 different inner modules of the design for checking the
 scenarios which cannot be covered using the top level
 verification. It includes both static and dynamic
 environments and the stimuli in this case are inputs
 generated using tasks.
The testbench provides different debugging options and
 also uses sentinels to ensure the error free flow of data.
SystemVerilog Based Verification
Environment

                           Scoreboard




          Sequencer                          Sequencer




        Driver        Monitor      Monitor         Driver




                                DUT
SystemVerilog Based Testbench Development
 Sequencer

  Sequencer is an object that defines a set of transactions to be
  executed and controls the execution of other sequences.

 Driver

  It is the component responsible for executing or processing
  transactions and provides stimuli to the design-under-test (DUT).

 Monitor

  This block continuously monitors the DUT signals and bus
  functions.

 Scoreboard

  Driver requests are transferred to the scoreboard via monitor block.
Scoreboard components :

 Functional Coverage Accumulation

  Functional coverage is a measure of which design features
  have been exercised by the tests.

 Dynamic response checking mechanism

  The comparison of golden data with DUT data is performed
  dynamically. This block controls the overall verification
  environment such as reporting, violations and changing of the
  stimulus during run-time.

 Reporting mechanism

  Compiler directives to issue messages throughout the
  simulation. (Error, Info, Warning)
Integration,Simulation
Integration

  Once the RTL coding is over, it is hooked up in the
  testbench environment and then the verification process
  can be started.
Simulation

  Design is simulated using the simulation tool. Any error
  in the simulation triggers an error message which is
  dumped into an error log.
TestSuite Regression / Coverage

  The Regression Environment is developed using perl and
  shell scripts, to automate the regression run.
Bug Report Mechanism
Bug reports are maintained in Google docs for all the projects
 in the verification phase. Once the bug is encountered it is
 updated in the bug report with detailed information. Status of
 the open bugs is updated regularly.

Contenu connexe

Tendances

Session 8 assertion_based_verification_and_interfaces
Session 8 assertion_based_verification_and_interfacesSession 8 assertion_based_verification_and_interfaces
Session 8 assertion_based_verification_and_interfacesNirav Desai
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology TutorialArrow Devices
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog Ramdas Mozhikunnath
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomizationNirav Desai
 
How to create SystemVerilog verification environment?
How to create SystemVerilog verification environment?How to create SystemVerilog verification environment?
How to create SystemVerilog verification environment?Sameh El-Ashry
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_featuresNirav Desai
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONIAEME Publication
 
System verilog control flow
System verilog control flowSystem verilog control flow
System verilog control flowPushpa Yakkala
 
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICsVerification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICsDr. Shivananda Koteshwar
 
2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verificationUsha Mehta
 
Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_finalsean chen
 

Tendances (20)

Session 8 assertion_based_verification_and_interfaces
Session 8 assertion_based_verification_and_interfacesSession 8 assertion_based_verification_and_interfaces
Session 8 assertion_based_verification_and_interfaces
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
 
axi protocol
axi protocolaxi protocol
axi protocol
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog
 
UVM TUTORIAL;
UVM TUTORIAL;UVM TUTORIAL;
UVM TUTORIAL;
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomization
 
Amba bus
Amba busAmba bus
Amba bus
 
AMBA 2.0 REPORT
AMBA 2.0 REPORTAMBA 2.0 REPORT
AMBA 2.0 REPORT
 
How to create SystemVerilog verification environment?
How to create SystemVerilog verification environment?How to create SystemVerilog verification environment?
How to create SystemVerilog verification environment?
 
Coverage and Introduction to UVM
Coverage and Introduction to UVMCoverage and Introduction to UVM
Coverage and Introduction to UVM
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_features
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATION
 
Uvm dac2011 final_color
Uvm dac2011 final_colorUvm dac2011 final_color
Uvm dac2011 final_color
 
System verilog control flow
System verilog control flowSystem verilog control flow
System verilog control flow
 
Verilog Tasks and functions
Verilog Tasks and functionsVerilog Tasks and functions
Verilog Tasks and functions
 
Ral by pushpa
Ral by pushpa Ral by pushpa
Ral by pushpa
 
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICsVerification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICs
 
2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification2019 2 testing and verification of vlsi design_verification
2019 2 testing and verification of vlsi design_verification
 
Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_final
 
Verilog hdl
Verilog hdlVerilog hdl
Verilog hdl
 

En vedette

Top 10 verification engineer interview questions and answers
Top 10 verification engineer interview questions and answersTop 10 verification engineer interview questions and answers
Top 10 verification engineer interview questions and answerstonychoper2706
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology LandscapeDVClub
 
Vlsi interview questions1
Vlsi  interview questions1Vlsi  interview questions1
Vlsi interview questions1SUKESH Prathap
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSubash John
 
Hardware description languages
Hardware description languagesHardware description languages
Hardware description languagesAkhila Rahul
 
Functial Verification Tutorials
Functial Verification TutorialsFunctial Verification Tutorials
Functial Verification Tutorialsguestbcfac5
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLE2MATRIX
 
Nvidia interview questions and answers
Nvidia interview questions and answersNvidia interview questions and answers
Nvidia interview questions and answersselinasimpson15
 
System verilog简介
System verilog简介System verilog简介
System verilog简介wujianping
 
RESUME_VISHNU_PRIYA
RESUME_VISHNU_PRIYARESUME_VISHNU_PRIYA
RESUME_VISHNU_PRIYAVishnu Priya
 
Aldec overview 2011-10 revised
Aldec overview 2011-10 revisedAldec overview 2011-10 revised
Aldec overview 2011-10 revisedPrateek Chopra
 
Hdl lenguaje descriptivo de hardware
Hdl lenguaje descriptivo de hardwareHdl lenguaje descriptivo de hardware
Hdl lenguaje descriptivo de hardwarelorena
 
Timing Analysis
Timing AnalysisTiming Analysis
Timing Analysisrchovatiya
 
Hardware Description Language
Hardware Description Language Hardware Description Language
Hardware Description Language Prachi Pandey
 
Code coverage & tools
Code coverage & toolsCode coverage & tools
Code coverage & toolsRajesh Kumar
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 sessionSameh El-Ashry
 

En vedette (20)

Top 10 verification engineer interview questions and answers
Top 10 verification engineer interview questions and answersTop 10 verification engineer interview questions and answers
Top 10 verification engineer interview questions and answers
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology Landscape
 
Vlsi interview questions1
Vlsi  interview questions1Vlsi  interview questions1
Vlsi interview questions1
 
System Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancementsSystem Verilog 2009 & 2012 enhancements
System Verilog 2009 & 2012 enhancements
 
Hardware description languages
Hardware description languagesHardware description languages
Hardware description languages
 
Functial Verification Tutorials
Functial Verification TutorialsFunctial Verification Tutorials
Functial Verification Tutorials
 
System Verilog Tutorial - VHDL
System Verilog Tutorial - VHDLSystem Verilog Tutorial - VHDL
System Verilog Tutorial - VHDL
 
Nvidia interview questions and answers
Nvidia interview questions and answersNvidia interview questions and answers
Nvidia interview questions and answers
 
Basics of Vhdl
Basics of VhdlBasics of Vhdl
Basics of Vhdl
 
System verilog简介
System verilog简介System verilog简介
System verilog简介
 
RESUME_VISHNU_PRIYA
RESUME_VISHNU_PRIYARESUME_VISHNU_PRIYA
RESUME_VISHNU_PRIYA
 
Aldec overview 2011-10 revised
Aldec overview 2011-10 revisedAldec overview 2011-10 revised
Aldec overview 2011-10 revised
 
Sd3
Sd3Sd3
Sd3
 
Hdl lenguaje descriptivo de hardware
Hdl lenguaje descriptivo de hardwareHdl lenguaje descriptivo de hardware
Hdl lenguaje descriptivo de hardware
 
Timing Analysis
Timing AnalysisTiming Analysis
Timing Analysis
 
Hardware Description Language
Hardware Description Language Hardware Description Language
Hardware Description Language
 
Code coverage & tools
Code coverage & toolsCode coverage & tools
Code coverage & tools
 
Code coverage
Code coverageCode coverage
Code coverage
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 session
 
FIFO Design
FIFO DesignFIFO Design
FIFO Design
 

Similaire à system verilog

Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Softwareguest8861ff
 
Glossary of Testing Terms and Concepts
Glossary of Testing Terms and ConceptsGlossary of Testing Terms and Concepts
Glossary of Testing Terms and Conceptsmqamarhayat
 
Service engineering
Service engineeringService engineering
Service engineeringQingsong Yao
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2Dr. Ahmed Al Zaidy
 
Database Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSDatabase Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSSanil Mhatre
 
Wind River Test Management
Wind River Test ManagementWind River Test Management
Wind River Test Managementramzyh78
 
Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4JAMK
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 
UVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxUVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxnikitha992646
 
V Model in Software Testing
V Model in Software TestingV Model in Software Testing
V Model in Software TestingAbdul Raheem
 

Similaire à system verilog (20)

13090016_vectorcast.ppt
13090016_vectorcast.ppt13090016_vectorcast.ppt
13090016_vectorcast.ppt
 
Verification strategies
Verification strategiesVerification strategies
Verification strategies
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
 
Glossary of Testing Terms and Concepts
Glossary of Testing Terms and ConceptsGlossary of Testing Terms and Concepts
Glossary of Testing Terms and Concepts
 
Service engineering
Service engineeringService engineering
Service engineering
 
Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2Testing Throughout the Software Life Cycle - Section 2
Testing Throughout the Software Life Cycle - Section 2
 
software testing
software testingsoftware testing
software testing
 
testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2testing throughout-the-software-life-cycle-section-2
testing throughout-the-software-life-cycle-section-2
 
05 test infrastructure
05   test infrastructure05   test infrastructure
05 test infrastructure
 
Testing ppt
Testing pptTesting ppt
Testing ppt
 
Database Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTSDatabase Unit Testing Made Easy with VSTS
Database Unit Testing Made Easy with VSTS
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Wind River Test Management
Wind River Test ManagementWind River Test Management
Wind River Test Management
 
ASIC design verification
ASIC design verificationASIC design verification
ASIC design verification
 
Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4Unit testingandcontinousintegrationfreenest1dot4
Unit testingandcontinousintegrationfreenest1dot4
 
verification and validation
verification and validationverification and validation
verification and validation
 
UVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxUVM_Full_Print_n.pptx
UVM_Full_Print_n.pptx
 
Black & White Box testing
Black & White Box testingBlack & White Box testing
Black & White Box testing
 
V Model in Software Testing
V Model in Software TestingV Model in Software Testing
V Model in Software Testing
 
Testing
TestingTesting
Testing
 

Plus de Vinchipsytm Vlsitraining (10)

VLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_OfferVLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_Offer
 
Hard ip based SoC design
Hard ip based SoC designHard ip based SoC design
Hard ip based SoC design
 
Optimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designsOptimizing for low power in embedded mcu designs
Optimizing for low power in embedded mcu designs
 
Coding style for good synthesis
Coding style for good synthesisCoding style for good synthesis
Coding style for good synthesis
 
Chip packaging technology
Chip packaging technologyChip packaging technology
Chip packaging technology
 
USB 2.0
USB 2.0USB 2.0
USB 2.0
 
SOC design
SOC design SOC design
SOC design
 
Axi
AxiAxi
Axi
 
Usb 2
Usb 2Usb 2
Usb 2
 
Low power vlsi design
Low power vlsi designLow power vlsi design
Low power vlsi design
 

Dernier

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
[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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
#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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Dernier (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
[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
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
#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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

system verilog

  • 1. SYSTEM VERILOG - VERIFICATION METHODOLOGY Vinchip Systems (a Design and Verification Company) Chennai.
  • 2. Synopsis Introduction Verification methodology Key features Verification Flow Verification Environment SV Based Verification Integration, Simulation Bug Report mechanism
  • 3. 7/1 Introduction • Verification is the process of experimenting our design with possible test scenarios. • Verification contains many phases that includes Testcase generation, coverage, monitor ..,etc. • Before tape-out our design should be verified more than 90% successfully.
  • 4. Verification methodology key features  The key features associated with the verification methodology are:  Assertion Based Verification  Functional Coverage Driven Verification  Constrained Random Verification  Scoreboard & Checker
  • 5. Key features.....  Assertion Based Verification Assertion Based Verification helps to detect more functional bugs earlier in the verification process and enables short verification cycle times and faster debugging.  Functional Coverage Driven Verification Functional Coverage Driven Verification is the process in which the result of functional coverage is used to drive the verification to completion. It also gives a more structured approach to verification, instead of writing more testcases.
  • 6. Key features......  Constrained Random Verification It is well suited for designs that have diverse set of operations and sequences that are difficult to cover completely. Constrained random tests are faster to write and enables faster verification of the design.  Scoreboard & Checker Scoreboard and Checker is a mechanism used to dynamically predict the response of the design and check the observed response against the predicted response. Usually it refers to the entire dynamic response-checking structure.
  • 7. Verification Flow Design Specifications Verification plan Testcase Scenarios Testbench Environment1 Testcase generation Model and Testbench (handcrafted SCV/SV generated Devolopment Integration of RTL with Testbench Environment No RTL function Modify RTL verified YES Testsuit Regression Coverage NO Coverage Target Achieved? YES END
  • 8. Verification Flow  Design Specification Verification flow starts with understanding the architecture specification of the design under verification. Once the architecture is well understood then comes the verification plan.  Verification Plan The verification plan comprises the preparation of test case scenarios and testbench environment
  • 9. Testcase Scenarios  The testcase scenarios document includes all the possible combinations to test the functionality of the design under test. Test Case Scenarios Self Checking Non-Self Checking
  • 10. Self Checking  Self checking test cases are written in such a way that it tests itself. Self Checking Corner Directed Coverage
  • 11. Self Checking  Corner Corner cases covers the scenarios which are prone to errors and non-trivial, where there are more possibilities of uncovering bugs.  Directed Directed cases covers all the scenarios related to the general features and they are straight forward cases which are written in an orderly manner.  Coverage Coverage cases are based on the coverage report and they contain the scenarios which are missedout in the other normal categories.
  • 12. Non - Self Checking Non - self checking test cases has no self checking code and they are coded such that if the program execution reaches the last line of the test case properly then a success code will be moved into a specific register. After the completion of execution that register can be checked for the success code to ensure the correctness of the design. Non-Self checking Constrained Application Random Stress Negative Random specific
  • 13. Non - Self Checking  Random Random cases cover all the possible combinations of data as well as scenarios in a random manner.  Constrained Random Constrained Random cases cover the all possible combinations of data as well as scenarios in a random manner, constrained for valid combinations.  Stress Stress cases exercise the logic with more number of combinations of scenarios as well as data for a long time to ensure the reliability of the design under stress conditions.
  • 14. Non - Self Checking  Negative Negative cases covers the scenarios which are not possible under normal cases. They are used to analyze the behavior of the design under error conditions.  Application Specific High level cases targeted for a particular application normally written in “C” language.
  • 15. Testbench Environment The testbench environment includes different types of environments to be developed for effectively verifying the design under verification. The testbench environments are of two types based on the testing strategies adopted. • Top Level • Block Level
  • 16. Top Level The top level testing includes the testing of the design as a whole and the stimulus forced in this case is the memory image generated from the assembly level or high level test files. Based on the requirement for the verification, there are three types of environments. Top Level Static Dynamic Coverage
  • 17.  Static Performs functional verification in a static manner using functional model. The results of DUT and model are dumped and compared for equivalence once the execution is over.  Dynamic Performs timing verification in a dynamic manner using the cycle accurate model. The results of DUT and model are compared for equivalence at each and every cycle dynamically.  Coverage The following are considered : • Line coverage • Branch coverage • FSM coverage
  • 18. Block Level Block level verification includes the verification of the different inner modules of the design for checking the scenarios which cannot be covered using the top level verification. It includes both static and dynamic environments and the stimuli in this case are inputs generated using tasks. The testbench provides different debugging options and also uses sentinels to ensure the error free flow of data.
  • 19. SystemVerilog Based Verification Environment Scoreboard Sequencer Sequencer Driver Monitor Monitor Driver DUT
  • 20. SystemVerilog Based Testbench Development  Sequencer Sequencer is an object that defines a set of transactions to be executed and controls the execution of other sequences.  Driver It is the component responsible for executing or processing transactions and provides stimuli to the design-under-test (DUT).  Monitor This block continuously monitors the DUT signals and bus functions.  Scoreboard Driver requests are transferred to the scoreboard via monitor block.
  • 21. Scoreboard components :  Functional Coverage Accumulation Functional coverage is a measure of which design features have been exercised by the tests.  Dynamic response checking mechanism The comparison of golden data with DUT data is performed dynamically. This block controls the overall verification environment such as reporting, violations and changing of the stimulus during run-time.  Reporting mechanism Compiler directives to issue messages throughout the simulation. (Error, Info, Warning)
  • 22. Integration,Simulation Integration Once the RTL coding is over, it is hooked up in the testbench environment and then the verification process can be started. Simulation Design is simulated using the simulation tool. Any error in the simulation triggers an error message which is dumped into an error log. TestSuite Regression / Coverage The Regression Environment is developed using perl and shell scripts, to automate the regression run.
  • 23. Bug Report Mechanism Bug reports are maintained in Google docs for all the projects in the verification phase. Once the bug is encountered it is updated in the bug report with detailed information. Status of the open bugs is updated regularly.