|
|
|
Anfang
zurück
weiter
Ende
|
Autor |
Beitrag |
Julian Grahsl
Gast
|
Erstellt: 17.05.06, 11:11 Betreff: Simulation: Variable "now" in Datei ausgeben
drucken
Thema drucken weiterempfehlen
|
|
|
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 <= "111111111111"; wait on output; time_end := now;
Nun ist die Differenz aus time_end und time_start die Durchlaufzeit, und diese möchte ich in eine Datei schreiben. Ich verwende std.textio und txt_util und kann problemlos fixe String in eine Datei schreiben, nur habe ich Schwierigkeiten, den Type delay_length in einen Integer oder ähnlich verwendbares zu konvertieren.
lG Julian
|
|
nach oben |
|
|
Alex
Neuling
Beiträge: 8
|
Erstellt: 19.05.06, 01:15 Betreff: Re: Simulation: Variable "now" in Datei ausgeben
drucken
weiterempfehlen
|
|
|
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
|
|
nach oben |
|
|
|
powered by carookee.com - eigenes profi-forum kostenlos
Design © trevorj
|