Forum: FPGA, VHDL & Co. Modelsim getaktete Signale auflisten


von TM (Gast)


Lesenswert?

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

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

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?

von TM (Gast)


Lesenswert?

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.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

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.

von TM (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.