Das Testen digitaler Hardware war noch nie eine leichte Aufgabe und wird auch in nächster Zeit nicht einfacher werden. Das heißt aber nicht, dass das Schreiben von Testcode nicht Spaß machen und produktiv sein kann! Cocotb, ein Ansatz zur Verwendung von Python als Prüfsprache, bringt die Freude an der Prüfung zurück. Es ermöglicht Entwicklern, mit kleinen, gerichteten Testbenches zu beginnen und diese zu gründlicheren Constraint-Random-Tests weiterzuentwickeln. In der Vergangenheit wurde viel über gerichtete Tests und Tests auf Systemebene mit cocotb gesprochen. In diesem Vortrag werden wir untersuchen, wie man fortgeschrittenere Constraint-Random-Testbenches entwickelt. Wir werden uns die verschiedenen Ansätze für Constraint-Random-Verifikation in cocotb ansehen und wie Sie Ihr nächstes cocotb-Testproblem aufpeppen können!

Agenda

  • Eine sehr kurze Einführung in Cocotb
  • Was ist Constraint Random Verification?
  • Wie man constraint random mit cocotb verwendet:
    • verschiedene Ansätze
    • Ein Blick auf Code-Beispiele

Die fehleranfälligsten Corner Cases von FPGAs

Zyklusbezogene Corner Cases sind wahrscheinlich der schwerwiegendste und wichtigste Grund für unentdeckte Fehler auf vielen FPGAs. Um dies auf einfache Weise zu erklären, – ein zyklusbezogener Eckfall ist zum Beispiel, wenn Sie einen Ereigniszähler haben, bei dem die Anzahl der gezählten Ereignisse kritisch ist und Sie diesen Zähler in regelmäßigen Abständen lesen und zurücksetzen.

mehr lesen