Hallo, ich verwende GDB 5.3 mit der neuesten simulavr-Version (CVS). Um die Ausführungszeit eines Programmes zu messen würde ich gerne die Anzahl der im Simulator abgelaufenen Taktzyklen wissen, aber ich habe leider nirgendwo eine Option dafür gefunden. Kann mir jemand weiterhelfen? Danke Andreas
Guck Dir das da mal an. Ich update den Zähler nur alle 64 Takte, damit es nicht zu schlimm auf die Performance schlägt. Ist alles nicht so toll mit dem display coprocess, die printf/scanf-erei da ist ja genauso schlimm wie beim Linux procfs... ;-) Man sollte das Protokoll wohl auf binäre datagrams umstellen. Die Initialisierung von RAMPZ braucht's bei mir, weil sich der Simulator ansonsten mit dem Zufallswert in RAMPZ während der C-Initialisierung mit einer ungültigen Speicheradresse verabschiedet. Man sollte stattdessen wohl RAMPZ richtig implementieren, aber mir das anzutun, bin ich gerade zu faul. Wenn's Dir gefällt, können wir es Ted ja anbieten.
Danke, das ist genau das was ich brauche. Der Patch läuft mit der aktuellsten Version zwar nicht ganz so durch wie er sollte, und RAMPZ gibt's in der Struktur core nicht mehr, aber nach ein bisschen Handarbeit funktioniert alles wie gewünscht. Was mir dabei aufgefallen ist: in der aktuellen avrcore.c wird in avr_core_CK_incr() eine Funktion namens display_clock( core->CK ); aufgerufen, es scheint also dass eine ähnliche Funktionalität für simulavr-disp bereits eingeplant ist.
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.