Mentor: Werkzeuge für die C++-Signoff-Verifikation

PRODUKT NEWS FPGA-EDA

Das Siemens-Unternehmen Mentor erweitert mit den drei Werkzeugen Catapult Coverage, Catapult Design Checks und SLEC HLS sowie einer Erweiterung zu Catapult HLS sein Portfolio an High-Level-Synthese- (HLS) Werkzeugen. Entwickler von Logikchips können Anwendungen wie Machine-Vision, maschinelles Lernen, Hochleistungs-Telekommunikation, Video und Bildverarbeitung entwickeln.



Die Werkzeuge und Erweiterungen bringen Verifikation und Methoden in Register-Transfer-Level- (RTL) Qualität auf C-Sprachen-Level und ermöglichen es Chip-Architekten und –Designern laut Mentor, zuverlässiger in C++/SystemC zu entwickeln und zu verifizieren.



Catapult DesignChecks

Mit Catapult DesignChecks können Anwender beim Codieren Fehler finden und so während der Simulation und Synthese Debug-Zeit sparen. Catapult DesignChecks verfügt über zwei Modi: einen statischen Modus, der Code sehr schnell überprüft und einen formalen Modus, der eine formale Funktionseinheit für einen gründlicheren Nachweis von Problemen verwendet.


Beide Modi unterstützen C++ und SystemC und konzentrieren sich auf hardwareorientiere Überprüfungen wie „Out-of-bounds“ Lesen/Schreiben und uninitialisiertes Auslesen des Speichers, die während der Simulationen schwer zu finden sind. Catapult DesignChecks erfordert keine Testbench.



Catapult Coverage

Catapult Coverage erlaubt es Anwendern, die Code-Coverage für C++-Signoff genau zu erfassen und synthetisierte RTL-Beschreibungen schnell abzuschließen. Im Gegensatz zu anderen Werkzeugen, die die Coverage auf C/C++ erfassen, ist Catapult Coverage synthese-orientiert. Das bedeutet, dass das Werkzeug für HLS-Anwendungsfälle (wie Loop-Unrolling, Function-Inlining und Bit-genaue Datentypen) genau Berichte über die Coverage liefert. Das ist wichtig, damit die Ergebnisse dem strukturellen Umfang der RTL entsprechen - ohne zusätzlichen Benutzeraufwand.


Das Werkzeug unterstützt Line-, Branch-, Statement- und (bald) Expression-Coverage. Zudem generiert es automatisch Mentors Unified Coverage Database (UCDB). Dadurch erhalten Anwender der Questa-Verification-Management-Suite Coverage-Metriken und Analyse-Werkzeuge in RTL-Qualität.



SLEC HLS C-to-RTL-Equivalence

SLEC (Sequential Logic Equivalence Checking) HLS führt eine formale Verifikation von C++/SystemC-Quellcode zu synthetisierter RTL-Beschreibung durch. Designteams müssen dadurch nach Angaben von Mentor kaum noch bzw. gar nicht mehr auf RTL simulieren/verifizieren. In der Produktion verwenden Designteams die Werkzeuge der SLEC-Familie seit über zehn Jahren für die formale Äquivalenz von C zu RTL mit einem manuellen Setup.


SLEC HLS ist eine Erweiterung, die Mentor eng mit Catapult HLS integriert hat, um ein automatisches Setup zu erzeugen und den schnellstmöglichen Pfad für die Verifikation zu finden. Das Werkzeug verwendet eine Coverage-Methode, die falls eine vollständige Überprüfung nicht erreicht werden kann, genau markiert, welcher Code noch getestet werden muss. Dadurch vermeidet es „Alles oder nichts“-Probleme, die oftmals bei der formalen Äquivalenz zu finden sind. SLEC HLS bietet die Zuverlässigkeit, um zur High-Level-Synthese zu wechseln.



UVM Framework Generation

Catapult kann mit dem UVM-Framework eine vollständige, sofort einsetzbare UVM- (Universal Verification Methodology) Umgebung automatisch generieren. RTL- und System-on-chip- (SoC) Verifikationsteams erhalten damit eine komplette Verifikationsumgebung für synthetisierte RTL, die sich modifizieren lässt. Dennoch bietet sie die Leistungsfähigkeit von UVM mit eingeschränkter Wiederverwendung von C-Tests und dem HLS-C-Modell als Prädikator. T


eams können diese Umgebung zur Verifikation von Blöcken oder auf einer höheren Ebene in der UVM-Umgebung für die Verifikation von Sub-Systemen/SoCs verwenden.

Fachartikel