Frage

Ich bin mit der Aufgabe, die Überprüfung einig Verilog-basierten RTL-Code zugewiesen. Nun, den RTL-Codierung Verilog-Testbench mit scheint sehr schwierig zu sein (für mich). So würde Ich mag eine der folgenden Aktionen versuchen. - Versuchen eine PLI Schnittstelle zum RTL und dadurch aufrufen ‚C Funktionen zum Testen bereitstellt - Mit System 'C die für die Anbindung' C-Funktionen

PS: Ich habe bereits einen umfangreichen ‚C-Code, der für die Prüfung des Verhaltensmodelles verwendet wurde. Ich bin neu in der Welt der Hardware-Programmierung. Alle Zeiger würden sehr geschätzt werden.

War es hilfreich?

Lösung

Wenn Sie bereits umfangreiche C-Code, der verwendet wurde, das Verhaltensmodell zu testen, dann ist das, was zu tun, um nur einen PLI (oder DPI) Schnittstelle hinzufügen, die Ihnen erlaubt, von Verilog, dass c-Code aufzurufen.

SystemC ist im Grunde C ++ mit einer Menge von Klassen, die es Ihnen ermöglichen, HW zu modellieren. Ich sehe nicht, wie Sie vom Lernen SystemC für die Aufgabe profitieren würden Sie versuchen, wie Sie bereits über ein C-Modell zur Verfügung haben, dass Sie die HW gegen testen können. Learning SystemC ist wahrscheinlich übertrieben für das, was Sie zu tun versuchen.

Zu Ihrer Information. Wenn Sie etwas lernen wollen, die stark in der Industrie heute verwendet wird, dann würde ich vorschlagen, dass Sie SystemVerilog lernen. In diesen Tagen SystemVerilog, im Grunde verilog mit einem Bündel von High-Level-Software Sprachfunktionen eingebaut; zusammen mit „VMM“, eine „Überprüfungsmethodik“ (das heißt eine Reihe von Bibliotheken), scheint in Hardware-Verifikation Land der letzte Schrei zu sein.

Andere Tipps

Die Frage ist nicht so einfach, ohne zu beantworten Ihre DUV (Gerät unter Kontrolle) zu kennen oder den C-Code, den Sie haben. Sie benötigen Mittel, um Ihr Design zu stimulieren und überprüfen, hier werden Sie wahrscheinlich von / nach Transaktionsebene übersetzen müssen (C Datenstrukturen) zu / von Pinebene. SystemVerilog-Schnittstellen oder SystemC kann ein Ansatz sein. Ich habe nicht verwendet DPI / PLI-Schnittstellen vor.

Um einen "state-of-the-art" Prüfstand Sie sollten prüfen, eine der Methoden Prüfstand gibt zu verwenden, nämlich VMM oder OVM . Sie werden auch Sie mit der Dokumentation zur Verfügung stellen, wie, um loszulegen.

Klingt wie Sie ein Tool wie Mentor oder Cadence Simulatoren, das RTL und SystemC-Code unter einem einzigen System kombinieren bekommen sollten. Nicht frei, sicher, aber sie sind die Lösung für den in der Praxis existiert.

Die strukturell korrekte Lösung, die Sie brauchen, ist für die C oder SystemC in das RTL zu nennen, nicht umgekehrt. Dabei impliziert eine gewissen RTL-Simulator mit Ihrem C-Programm oder SystemC-Programm zu integrieren. Es ist sicherlich machbar, aber ein ziemlich großes Unternehmen.

Auch ich denke, dass die Verwendung von SystemVerilog sehr viel Sinn macht.

ich sowohl für SystemC und Systemverilog / VMM für die Überprüfung verwendet haben, und die Antwort ist, es hängt davon ab. Wenn ich mit einem Start war, die mit schmalem Budget war versuchen, ihre erste ASIC aus der Tür zu bekommen, war SystemC eine natürliche Wahl, weil es auf unserem Low-Budget-Simulator lief und SystemVerilog nicht. Mit SystemC, brauchen Sie nicht die PLI oder die DPI zu verwenden. Sie instanziiert tatsächlich Ihr SystemC-Modell als eine Komponente in der Testbench, was interessant ist.

Allerdings SystemC ist eine C ++ Bibliothek, die nicht eine sehr intuitive Syntax hat. Sie sollen einen anständigen C ++ Hintergrund haben, bevor Sie die SystemC-Bibliothek zu lernen. Die Bücher für diese, die verfügbar sind meist saugen, mit Ausnahme von „SystemC aus dem Boden“ von David Schwarz.

Das hieß beginnen, von dem, was ich gesehen habe, SystemC ist natürlich eine High-Level-Modellierungssprache, keine Verifikationssprache, und niemand mit jedem Budget echte Simulatoren kaufen SystemC mehr für die Überprüfung verwendet. Von einem allgemeinen Standpunkt berufliche Entwicklung, würde ich Systemverilog verwenden, wenn es Ihnen zur Verfügung steht. Darüber hinaus können Sie immer die DPI verwenden für die Ausgabe Kontrolle an dem C-Modell-Schnittstelle, die nach wie vor Generatoren, Monitoren und Anzeigetafeln geschrieben in SV / VMM.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top