VHDL-Forum - Anfänger

Simulation: Variable "now" in Datei ausgeben

Simulation: Variable "now" in Datei ausgeben

Hallo !

Ich baue mir gerade eine automatisierte testbench, und versuche die Resultate in eine Datei zu schreiben. Ich lege ein paar Inputs an eine kombinatorische Schaltung an, und warte auf die Output Flanke. Nun möchte ich die Durchlaufzeit protokollieren, weil händisch das mit dem Cursor in den Waveforms ausmessen ist etwas langweilig (vor allem für zigtausend Input Combinationen ;-).

sieht ca. so aus:

variable time_start : delay_length;
variable time_end : delay_length;

time_start := now;
input

Re: Simulation: Variable "now" in Datei ausgeben

Hallo Julian,

Du kannst Werte vom Typ "Time" direkt in ein File schreiben,
musst Du nicht nach String oder sonstwas konvertieren.
Im Package textio ist eine Funktion WRITE, die für die
unterschiedlichsten Datentypen definiert ist: Bit,
Boolean, Bit_vector, Integer, String und eben auch Time.
Delay_lenght ist als subtype von Time definiert, d.h.
geht ohne Probleme.

Codebeispiel:
> file ReportFile: text open write_mode is "Report.txt";
> variable Message : line;
>
> variable Time1, Time2: delay_length;
>
> ...
>
> write(Message, NOW, right, 10); -- NOW geht auch direkt in WRITE.
> write(Message, Time2 - Time1, right, 10);
> write(Message, Data1, right, 10);
> write(Message, Data2, right, 10);
> ... usw
> writeline(ReportFile, Message);

Für das rausschieben von "Time" hab ich übrigens txt_util
nicht benötigt.

Falls das bei Dir nicht funktioniert, schicke am besten
Deinen Beispielcode, dann kann man nochmals draufschauen.

Gruss,

Alex