Enkeltfag Engelsk 5 ECTS

Verifikation af digitale systemer

Overordnede kursusmål

Dette kursus giver grundlæggende viden om metoder og værktøjer til verifikation af integrerede kredsløb ved at dække de principielle elementer i coverage-driven constrained random verification:
• Kortlægning af designarkitekturkrav til verification plans
• Implementering af objektorienterede testbench-miljøer
• Oprettelse af constrained random test cases med tilsigtet random stimuli distribution
• Implementering af funktionelle checks på både RT- og transaktionsniveau
• Opbygning af coverage models til måling af verifikationskompletheden
• Kortlægning af tests, checks og coverage models til kravene i verification plan

Kurset præsenterer den grundlæggende teori, der er nødvendig for at forstå og implementere disse principielle elementer. De studerende lærer at bruge simulationsværktøjer til at debugge designet, de constrained random test cases samt de implementerede design checks, men også hvordan sådanne værktøjer kan anvendes til at måle de opnåede coverage metrics ved hjælp af de implementerede coverage models.

Som en praktisk del arbejder de studerende i små teams med en praktisk implementering af en testbench i PyUVM ved brug af Python til verifikation af funktionaliteten i et RTL-design. I det afsluttende projekt skal hvert studenterteam integrere deres komplette PyUVM-verifikationsmiljø bestående af tests, checks og coverage models. Det endelige projekt evalueres ud fra den teoretiske korrekthed af de enkelte elementer samt den samlede kapacitet af verifikationsmiljøet til at finde komplekse RTL-designfejl.

Ved afslutningen af kurset vil de studerende have opnået både en grundig teoretisk forståelse og praktisk erfaring med anvendelse af moderne metoder til verifikation af integrerede kredsløb ved brug af PyUVM og Python. De studerende bliver klar til at arbejde med de omfattende industri-skala miljøer, der anvendes til verifikation af moderne komplekse chip-designs.

See course description in English

Læringsmål

  • Forklare rollen af forskellige værktøjer og sprog i digital systemverifikation og deres anvendelse i verifikationsprocesser.
  • Anvende den grundlæggende teori om constrained random verification i akademiske og virkelige situationer, herunder principper for funktionel verifikation af RTL-designs, state space exploration, transaktionskoncepter, verifikationskvalitet og verification plans.
  • Designe directed og constrained random test cases for at sikre en effektiv stimuli distribution til verifikation af RTL-designs i virkelige situationer.
  • Implementere og/eller anvende funktionelle checkers, reference models, scoreboards og assertions ved brug af temporal logic til validering af designkorrekthed i virkelige situationer.
  • Udvikle og anvende coverage models samt coverage model closure-teknikker til at måle verifikationskompletheden.
  • Implementere testbenches i PyUVM ved brug af Python til verifikation af funktionaliteten af et RTL-design.
  • Bruge simulationsværktøjer til at debugge RTL-designs, test cases, funktionelle checks og coverage models.
  • Analysere effektiviteten af et verifikationsmiljø ved at evaluere verifikationsmetrikker og fejlfindingskapacitet.
  • Integrere forskellige verifikationskomponenter, herunder tests, checks og coverage models, i et komplet verifikationsmiljø.
  • Vurdere den endelige kvalitet af et verifikationsmiljø baseret på dets evne til at detektere komplekse RTL-designfejl.

Kursusindhold

Principper for verifikation af integrerede kredsløb, constrained random verification, verification planning, transaction-based testbench-arkitektur, coverage models, funktionelle checks, assertions, PyUVM, Python tests, scoreboards, requirement-centric verification closure.

Mulige starttidspunkter

  • 36 – 49 (man 8-12)

Anbefalede forudsætninger

02139/02203, Grundlæggende færdigheder i programmering og digital elektronik, herunder en vis viden om et hardwarebeskrivelsessprog.

Undervisningsform

Forelæsninger, gruppearbejde og hjemmeopgaver. Obligatorisk afsluttende projekt.

Fakultet

Bemærkninger

Dette kursus udbydes i samarbejde med virksomheden Syosil, som er specialiseret i verifikation af digitale systemer.

Se kurset i kursusbasen

Tilmelding

Sprog

Engelsk

Varighed

13 uger

Institut

Compute

Sted

DTU Lyngby Campus

Kursus ID 02207
Kursustype Kandidat
Semesterstart Uge 36
Semester slut Uge 49
Dage man 8-12
Pris

9.250,00 kr.

Tilmelding