Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Verification Series 8 : Code Coverage with Vivado 2024.1
Rating: 4.4 out of 5(8 ratings)
83 students

Verification Series 8 : Code Coverage with Vivado 2024.1

Step by Step Guide from Scratch
Created byKumar Khandagle
Last updated 5/2025
English

What you'll learn

  • Code Coverage flow in Vivado
  • Essentials of Statement, Branch, Toggle & Condition Coverage
  • FSM Covereage with bins & transition bins
  • Reading Coverage reports

Course content

6 sections66 lectures2h 39m total length
  • What Code coverage do2:57
  • Usage of Code Coverage3:02
  • Code Coverage vs Functional Coverage vs Assertions P13:37
  • Code Coverage vs Functional Coverage vs Assertions P22:33
  • Code Coverage vs Functional Coverage vs Assertions P33:20
  • Code Coverage vs Functional Coverage vs Assertions P41:05

    Learn how code coverage may reach 100% yet miss input and output combinations; use functional coverage to test combinations and apply assertions to catch incorrect behavior in the verification environment.

  • Simplfied Code Coverage flow1:23
  • How we use Vivado to generate Coverage report P11:45
  • How we use Vivado to generate Coverage report P21:42
  • How we use Vivado to generate Coverage report P32:31

    Learn how to use Vivado to generate coverage reports during simulation, including setting the coverage name and directory, and selecting coverage types such as line, branch, condition, or toggle.

  • How we use Vivado to generate Coverage report P44:57
  • How we use Vivado to generate Coverage report P54:55
  • How we use Vivado to generate Coverage report P63:05

    Learn how to generate a coverage report in Vivado 2024.1, configure coverage options, run simulations, and convert coverage data to readable HTML.

  • How we use Vivado to generate Coverage report P72:55
  • How we use Vivado to generate Coverage report P81:28
  • Design Code0:07
  • TB Code0:18
  • Modified Code Coverage flow3:05
  • Self Check Assignments0:40

Requirements

  • Fundamentals of Digital Electronics and Verilog

Description

In modern digital design verification, code coverage plays a critical role in ensuring the quality and completeness of simulation-based testing. It is especially significant in safety-critical and regulated industries such as aerospace and avionics, where verification must meet strict compliance standards like DO-254. DO-254 mandates that hardware designs undergo rigorous verification processes, and code coverage is a key metric to demonstrate that all parts of the RTL have been exercised and tested. This helps identify untested portions of the design, ensuring that no functionality is left unchecked during simulation.

This course offers an in-depth exploration of code coverage using Vivado, with a strong emphasis on practical learning. It covers every essential aspect of the coverage workflow—from understanding the purpose and types of code coverage to generating and analyzing coverage reports in Vivado. The course clarifies the differences between code coverage, functional coverage, and assertions, helping learners understand how these elements complement each other in a comprehensive verification strategy.

Learners will explore five main types of code coverage: Statement Coverage, which checks whether each line of code has been executed during simulation; Branch Coverage, which ensures all control flow branches have been taken; Condition Coverage, which verifies each boolean condition within decision statements; Toggle Coverage, which tracks the transitions of signals to confirm full activity; and FSM (Finite State Machine) Coverage, which ensures all states and transitions in a state machine are exercised.

Through step-by-step demonstrations, students will learn how to design testbenches, write RTL code, simulate with Vivado, and interpret coverage results. 80% of the course is focused on code and flow demonstrations, 12% covers the theoretical foundations, and 8% involves self-check assignments to reinforce logical reasoning and understanding.

By the end of this course, learners will not only understand the theory behind code coverage but also gain practical experience using Vivado to achieve coverage closure in real-world verification environments, making it ideal for professionals working under compliance-driven standards like DO-254.

Who this course is for:

  • This course is for anyone interested in learning about code coverage in the verification of RTL designs.