Nach positiver Absolvierung der Lehrveranstaltung sind Studierende in der Lage...
- einen Verifikationsplan fuer digitale Schaltungen zu erstellen- den gesamten Verifikations-Prozess (Requirements, Tracability, Reviews, etc.) zu planen und zu implementieren- etablierte Verifikationsmethodiken zu verstehen und anzuwenden- digitale Schaltungen industriellen Standards entsprechend zu testen- komplexe (simulationsspezifische) VHDL Module und Bibliotheken zu erstellen oder anzupassen- OSVVM basierte Testumgebungen zu verwenden, erweitern oder selbst zu erstellen- Assertion-basierte Verifikationsmethoden (PSL, SVA) anzuwenden- UVM in seinen Grundzuegen zu verstehen- SystemVerilog-basierte Testumgebungen und Designs in den Grundzuegen zu verstehen- etablierte Simulatoren zu verwenden
Digitale Schaltkreise bereichern unser Leben seit vielen Jahren in allen erdenklichen Bereichen. Auf Grund der hohen Komplexität moderner Schaltungsanwendungen bzw. auf Grund besonderer Zuverlässigkeits- und Sicherheitsanforderungen, ist die Verifikation längst ein integraler Teil von Chip-Entwicklungsprojekten. In dieser Lehrveranstaltung wird der gesamte Verifikationsprozess für digitale Schaltungen detailliert behandelt: Ausgehend vom Requirements Engineering und der Verifikationsplanung bis hin zur Implementierung von modernen Testbenches, die oftmals deutlich komplexer sind als der zu verifizierende RTL-Code.
Die simulationsgestützte Schaltungsverifikation ist eine in der Industrie weit verbreitete Praxis und wird daher im Detail behandelt: Etablierte Methodiken sowie entsprechende Frameworks werden vorgestellt und in zahlreichen Laborübungen auch praktisch angewendet. Die Lehrveranstaltung legt den Fokus auf VHDL-basierte Testumgebungen, aber auch SystemVerilog und die sehr mächtige und komplexe UVM werden vorgestellt und mit entsprechenden Übungsbeispielen begleitet.
Studierende bekommen einen tiefgreifenden Einblick wie skalierbare und wiederverwendbare Testumgebungen aufgebaut sind und wie Schnittstellen einer Unit-under-Test mittels Verification Units (Bus Functional Models, Driver, Monitore) abstrahiert werden können. Ziel jeder Verifikationskampagne ist eine möglichst hohe Testabdeckung. In der Lehrveranstaltung wird vorgestellt wie diese durch Directed und Random Tests erreicht und durch diverse Metriken gemessen werden kann (Requirements Converage, Code Coverage, Functional Coverage, Assertion Coverage).
der Kurs umfasst einen Vorlesungsteil sowie auch praktische Teile wie zwei größere Projekte und mehrere kleinere Aufgaben
******** ECTS Breakdown 75h (3 ECTS) ************
18h Lectures 1h Final Exam40h Verification Project (groups of 2 or 3)16h Small exercises===75h
******** Beurteilungsmodus ************
- Verification Project: 40%- Small Exercises: 20%- Final Exam (oral): 40%
Abgaben:
- Verification Project: 2x (Midterm, final)- Small Exercises: Fortlaufend während des Semesters