02207 Verifikation af digitale systemer

2025/2026

Kursusinformation
Verification of Digital Systems
Engelsk
5
Kandidat
Kurset udbydes som enkeltfag
E1A (man 8-12)
Campus Lyngby
Forelæsninger, gruppearbejde og hjemmeopgaver. Obligatorisk afsluttende projekt.
13-uger
E1A
Bedømmelse af opgave(r)/rapport(er)
Evaluering af øvelse/rapport + studenterpræsentation. Den endelige karakter gives på baggrund af en helhedsvurdering.
7-trins skala , intern bedømmelse
02139 / 02203 , Grundlæggende færdigheder i programmering og digital elektronik, herunder en vis viden om et hardwarebeskrivelsessprog.
Luca Pezzarossa , Lyngby Campus, Bygning 322 , lpez@dtu.dk
Jacob Sander Andersen , jacob@syosil.com
01 Institut for Matematik og Computer Science
I studieplanlæggeren
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.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • 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.
Bemærkninger
Dette kursus udbydes i samarbejde med virksomheden Syosil, som er specialiseret i verifikation af digitale systemer.
Sidst opdateret
02. maj, 2025