Ich mache manchmal einen Fehler, wenn ich den VHDL-Code ändere, um neue Funktionen hinzuzufügen, dass die neuen Signale, die dem VHDL-Prozess hinzugefügt werden, nicht zurückgesetzt werden, wenn der Reset-Zustand bestätigt wird. Dieser Fehler kann manchmal ziemlich harmlos sein, aber manchmal kann er zu Designfehlern in der Simulation oder sogar in der Hardware führen.
Welches Tool verwende ich, um sicherzustellen, dass allen Signalen und Variablen, die in einem Prozess verwendet werden, ein Anfangswert im Prozess zugewiesen wird, vielleicht wenn ein Reset geltend gemacht wird oder vielleicht bei jedem Taktzyklus?
Es gibt branchenübliche formale Verifizierungstools wie QuestaSim Autocheck , die für eine Vielzahl statischer und dynamischer Überprüfungen verschiedener Aspekte des RTL-Designs in früheren Entwicklungsstadien verwendet werden können, ohne dass ein Simulationsprüfstand erforderlich ist.
Das Zurücksetzen von Registerwerten ist eine der vielen vom Tool unterstützten Prüfungen.
Welches Tool verwende ich, um sicherzustellen, dass allen Signalen und Variablen, die in einem Prozess verwendet werden, ein Anfangswert im Prozess zugewiesen wird, vielleicht wenn ein Reset geltend gemacht wird oder vielleicht bei jedem Taktzyklus?
Wie bei jedem anderen Test: Sie schreiben eine Testbench, die auf definierte Werte prüft.
Ich habe kein Tool, das ich vorschlagen könnte, aber eine mögliche Überprüfung durch Simulation.
Ich mache eine Sichtprüfung der Simulationswellenformen beim Komponententest. Vor dem Zurücksetzen sind sie alle undefiniert (leicht zu sehen - in Rot). Nach dem aktivierten Reset werden sie initialisiert (siehe grün). Wenn man nicht aus Versehen zurückgesetzt wird, ist es schnell gefunden, alle Signale zu scrollen.
Das funktioniert gut für meine Designs, in denen die Codierungsregel darin besteht, alle Signale zurückzusetzen (auch wenn dies nicht immer empfohlen wird).
quanten231
Mitu Raj
quanten231
Mitu Raj
quanten231
Mitu Raj
quanten231
Mitu Raj
quanten231