SlideShare una empresa de Scribd logo
1 de 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.

Más contenido relacionado

La actualidad más candente

UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology TutorialArrow Devices
 
SystemVerilog based OVM and UVM Verification Methodologies
SystemVerilog based OVM and UVM Verification MethodologiesSystemVerilog based OVM and UVM Verification Methodologies
SystemVerilog based OVM and UVM Verification MethodologiesRamdas Mozhikunnath
 
System verilog important
System verilog importantSystem verilog important
System verilog importantelumalai7
 
Introduction about APB Protocol
Introduction about APB ProtocolIntroduction about APB Protocol
Introduction about APB ProtocolPushpa Yakkala
 
Amba axi 29 3_2015
Amba axi 29 3_2015Amba axi 29 3_2015
Amba axi 29 3_2015kiemnhatminh
 
Challenges in Using UVM at SoC Level
Challenges in Using UVM at SoC LevelChallenges in Using UVM at SoC Level
Challenges in Using UVM at SoC LevelDVClub
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomizationNirav Desai
 
Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_finalsean chen
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog Ramdas Mozhikunnath
 
AHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptxAHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptxGuckChick
 
Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)Dhaval Kaneria
 
System verilog assertions
System verilog assertionsSystem verilog assertions
System verilog assertionsHARINATH REDDY
 
Session 7 code_functional_coverage
Session 7 code_functional_coverageSession 7 code_functional_coverage
Session 7 code_functional_coverageNirav Desai
 

La actualidad más candente (20)

UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
 
Axi protocol
Axi protocolAxi protocol
Axi protocol
 
AXI Protocol.pptx
AXI Protocol.pptxAXI Protocol.pptx
AXI Protocol.pptx
 
SystemVerilog based OVM and UVM Verification Methodologies
SystemVerilog based OVM and UVM Verification MethodologiesSystemVerilog based OVM and UVM Verification Methodologies
SystemVerilog based OVM and UVM Verification Methodologies
 
AMBA 2.0 PPT
AMBA 2.0 PPTAMBA 2.0 PPT
AMBA 2.0 PPT
 
Ambha axi
Ambha axiAmbha axi
Ambha axi
 
System verilog important
System verilog importantSystem verilog important
System verilog important
 
Introduction about APB Protocol
Introduction about APB ProtocolIntroduction about APB Protocol
Introduction about APB Protocol
 
Amba axi 29 3_2015
Amba axi 29 3_2015Amba axi 29 3_2015
Amba axi 29 3_2015
 
Challenges in Using UVM at SoC Level
Challenges in Using UVM at SoC LevelChallenges in Using UVM at SoC Level
Challenges in Using UVM at SoC Level
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomization
 
CPU Verification
CPU VerificationCPU Verification
CPU Verification
 
Uvm presentation dac2011_final
Uvm presentation dac2011_finalUvm presentation dac2011_final
Uvm presentation dac2011_final
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog
 
Uvm dac2011 final_color
Uvm dac2011 final_colorUvm dac2011 final_color
Uvm dac2011 final_color
 
AHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptxAHB To APB BRIDGE.pptx
AHB To APB BRIDGE.pptx
 
Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)Serial Peripheral Interface(SPI)
Serial Peripheral Interface(SPI)
 
System verilog assertions
System verilog assertionsSystem verilog assertions
System verilog assertions
 
UVM TUTORIAL;
UVM TUTORIAL;UVM TUTORIAL;
UVM TUTORIAL;
 
Session 7 code_functional_coverage
Session 7 code_functional_coverageSession 7 code_functional_coverage
Session 7 code_functional_coverage
 

Destacado

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
 
System Verilog Functional Coverage
System Verilog Functional CoverageSystem Verilog Functional Coverage
System Verilog Functional Coveragerraimi
 
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
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_featuresNirav Desai
 
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
 

Destacado (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
 
System Verilog Functional Coverage
System Verilog Functional CoverageSystem Verilog Functional Coverage
System Verilog Functional Coverage
 
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
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_features
 
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
 

Similar a 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
 

Similar a 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
 

Más de Vinchipsytm Vlsitraining (11)

VLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_OfferVLSI_ASIC_Training_Summer_Offer
VLSI_ASIC_Training_Summer_Offer
 
Verilog Tasks and functions
Verilog Tasks and functionsVerilog Tasks and functions
Verilog Tasks and functions
 
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
 

Último

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Último (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

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.