Hallo Zusammen, ich bin Neuling in der FPGA Landschaft. Ich habe ein VirtexIIPro auf einem XUPV2P von DIgilent. Ich habe einen Microblaze und einen Opb Timer eingefügt. Kann mir jemand sagen wie man mit diesen Timer ansteuern kann. Ich habe einen C-Code, der Daten von der CF-Karte liest, verarbeitet und dann wieder zurück schreibt. Mit dem Timer würde ich gerne die Zeit messen, die dafür benötigt wird. Welche Funktionen in C kann ich verwenden um den Timer zu starten, den Timerwert aus zu lesen und den Timer zu Resetten? Vielen Dank im Voraus. Viele Grüße Jonanova
Hallo Zusammen,
ich habe beim Googeln nocht etwas gefunden und poste es für die, die es
brauchen können. Dazu einfach den OPB Timer in der EDK einfügen und
Softwarecode einbinden. Der Wert für total gibt die Anzahl der
Taktzyklen an. Wenn ihr den Wert in Sekunden haben wollt, dann müsst ihr
ihn durch euren Systemtakt teilen.
#include "xtmrctr.h"
XTmrCtr timer1;
Xint32 total, t1, t2;
XTmrCtr_Initialize(&timer1,XPAR_OPB_TIMER_1_DEVICE_ID);
XTmrCtr_SetResetValue(&timer1,0,0);
XTmrCtr_Start(&timer1,0);
t1 = XTmrCtr_GetValue(&timer1,0);
// code to measure
t2 = XTmrCtr_GetValue(&timer1,0);
total = t2 - t1;
xil_printf("clock cycles = %d - %d = %d\r\n", t1, t2, total);
Viele Grüße
Jonanonva
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.