Guten Tag, gibt es in Modelsim die Möglichkeit alle getakteten Signalnamen des Designs mittels TCL aufzulisten? Oder kann ich diese in irgendeiner Weise auslesen? Gruß Tobias
TM schrieb: > getakteten Signalnamen Was meinst du damit? Willst du wissen, wieviele Takte du hast, oder willst du wissen wieviele Signale in Registern relisiert werden (also getaktet sind)? Im ersten Fall musst du nur mal den Synthesizer befragen, der muss die Takte nämlich umsetzen. Im zweiten Fall musst du aufpassen, denn auch Latches (die ja nicht getaktet sind) werden in Registern implementiert... > getakteten Signalnamen Was mich interessiert: warum interessiert dich das überhaupt?
Lothar Miller schrieb: > TM schrieb: >> getakteten Signalnamen > Was meinst du damit? Willst du wissen, wieviele Takte du hast, oder > willst du wissen wieviele Signale in Registern relisiert werden (also > getaktet sind)? > Im ersten Fall musst du nur mal den Synthesizer befragen, der muss die > Takte nämlich umsetzen. Im zweiten Fall musst du aufpassen, denn auch > Latches (die ja nicht getaktet sind) werden in Registern > implementiert... > >> getakteten Signalnamen > Was mich interessiert: warum interessiert dich das überhaupt? Ich möchte in der Simualtion einzelne Bits in Registern kippen um strahlungsbedingte Bitfehler zu simulieren. Hierzu möchte ich zunächst die Signalnamen meiner Register auslesen. Hab es nun so gelöst, das in der Hardwarebeschreibung ein Register mit _reg im Signalnamen beschrieben werden muss. Keine schöne Lösung aber einfach und gut machbar.
TM schrieb: > Ich möchte in der Simualtion einzelne Bits in Registern kippen um > strahlungsbedingte Bitfehler zu simulieren. Hmmm, dann kannst du doch irgendein Signal "kippen". Denn die Strahlung unterscheidet später ja auch nicht zwischen Register und Kombinatorik. Nur erholt sich Kombinatorik evtl. einfacher. Und dazu kommt noch, dass durch Register-Doubling 1 Flipflop deiner Beschreibung später auf 3 Flipflops in der Hardware abgebildet werden können. Dann läuft "eine Hälfte" der FSM noch richtig, die "andere Hälfte" aber schon Amok.
Lothar Miller schrieb: > TM schrieb: >> Ich möchte in der Simualtion einzelne Bits in Registern kippen um >> strahlungsbedingte Bitfehler zu simulieren. > Hmmm, dann kannst du doch irgendein Signal "kippen". Denn die > Strahlung unterscheidet später ja auch nicht zwischen Register und > Kombinatorik. Nur erholt sich Kombinatorik evtl. einfacher. > > Und dazu kommt noch, dass durch Register-Doubling 1 Flipflop deiner > Beschreibung später auf 3 Flipflops in der Hardware abgebildet werden > können. Dann läuft "eine Hälfte" der FSM noch richtig, die "andere > Hälfte" aber schon Amok. Ne so einfach ist das nicht es gibt da unterschiedliche Effekte zum einen den SEU (Single Event Upset), um diesen geht es erstmal. Durch diesen wird soviel Ladung auf eine CMOS Transistor gebracht, das dessen Zustand kippt. Allerdings wird mit dem nächsten Schaltvorgang dieser CMOS Transistor wieder mit dem richtigen Bit beschrieben. Hier sollte sich die Kombinatorik sofort von erholen. Problem ist allerdings hier die Simulation. Diese treibt im Vergleich zur Realität halt nicht immer, sondern nur wenn ein Signal in der Sensitivity list sich ändert. Bei Kombinatorik treten vorallem SET (Single Event Transients) auf. Das heißt auf einer Signalleitung herrscht über eine kurze Zeit eine Offsetspannung, welche dafür sorgen kann, das diese falsch interpretiert wird und eigetaktet. Komm durch die Lösung mit dem _reg jetzt aber weiter. Das mit dem Register doubling ist nen guter Punkt sollte ich mir mal genauer anschauen. Gruß Tobias
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.