Sign In
Forgot Password?
Sign In | | Create Account

Introduction to Code Coverage

Details

Overview

Wspólnie z firmą Gamma (dystrybutorem narzędzi HDL & PCB na terenie Polski) mamy przyjemność zaprosić Państwa na webinar pod tytułem - wprowadzenie do Code Coverage.
Inżynierowie są dobrze zaznajomieni z tworzeniem testów, które mają za zadanie dokładnie weryfikować napisany kod pod kątem funkcjonalności oraz wykrywania błędów. Podsumowując pozytywny przebieg testów mozemy wysnuż następujące wnioski:

a) testowany kod działa zgodnie z założeniem bez żadnych błędów;
b) kod posiada błędy, których stworzony test nie pobudził;
c) kod posiada błędy, których za pomocą stworzonego testu nie udało się wykryć;
d) lub mamy do czynienia z połączeniem przypadku b I c;
 

Oczywiście najbardziej pożądany scenariusz opisuje przypadek a), ale niestety w praktyce rzadko jest to przypadek uzyskiwany przy pierwszym podejściu. Na szczęście istnieje kilka bardziej zaawansowanych technik weryfikacji kodu FPGA, które mają szczególne znaczenie w przypadkach pasujących do scenariusza z przypadku d).

Code Coverage pomaga projektantowi w symulacji projektu na tyle, że identyfikuje te fragmenty kodu, które nie zostały przetestowane stworzonym testem. Umożliwia więc ingerencję w używany test tak, aby przy kolejnej turze symulacji umozliwił ich przesymulowanie. Odpowiada to przypadkowi opiosanemu w punkcie b) I będzie przedmiotem prezentacji.

Code Coverage jest wykożystywany do pomiaru zakresu kodu, który został przetestowany podczas symulacji. Nie pokazuje on procentowo w jakim stopniu zakładana funkcjonalność została zaimplementowana I przetestowana podczas symulacji. Wielką zaletą Code Coverage jest to, że nie jest potrzebne robienie żadnych zmian w projekcie ani w stworzonych testach aby przeprowadzic taką analizę. Czas jest za to niezbędny do zrozumienia znaczenia rezultatów analizy oraz jak zmienic stworzony test aby zredukować ilosć nieprzetestowanego kodu.
Uwaga: Aby zmierzyć ilosciowo procent przetestowanej funkcjonalności musimy użyć typ analizy – Functional Coverage. Nie jest to jednak częścią tej prezentacji.

What You Will Learn

Prezentacja ma na celu pokazać jak używać Code Coverage I analizować jego rezultaty w celu eliminacji błędów w projekcie. Będzie również prezentowane wielokrotne przeprowadzenie analizy w celu pokazania metody testowania regresyjnego.

Who Should View

  • Projektanci HDL/FPGA
  • Inżnierowie zajmujący się weryfikacją projektów HDL/FPGA
  • Managerowie działów konstrukcyjnych
  • Managerowie projektów

 

Related Resources

Multimedia

Injecting Automation into Verification – Improved Throughput

Improving productivity has many forms, simulation performance, debug effectiveness, even writing test scenarios. We will highlight high value techniques for improving throughput.…View On-demand Web Seminar

Injecting Automation into Verification - Assertions

What we will show in this webinar is how we can leverage Assertions, including the pre-defined, pre-tested OVL libraries, to automate the verification process further. What we will also show is the way...…View On-demand Web Seminar

Injecting Automation into Verification – Code Coverage

This webinar provides an introduction to the use of code coverage in today’s HDL design and verification flows.…View On-demand Web Seminar

Other Related Resources

Event-Driven (RN) Modeling for AMS Circuits

White Paper: Learn why modeling AMS components using RN modeling techniques in order to significantly increase the simulation speed requires having all of the design written in digital and using RN modeling techniques.…View White Paper

Portable VHDL Testbench Automation with Intelligent Testbench Automation

Journal Article: Questa inFact graph-based intelligent testbench automation provides just such a “bridge” for VHDL testbench environments.…View Journal Article

Don’t Forget the Little Things That Can Make Verification Easier

Journal Article: The little things engineers can do when coding RTL models can add up to a significant boost in verification productivity. A significant portion of SystemVerilog is synthesizable.…View Journal Article

 
Online Chat