Hallo, ich bin auf der Suche nach dem Rechenaufwand für bestimmte Operationen um eine Laufzeitabschätzung / optimierung zu machen. Ich denke an eine tabelle nach folgendem Muster: Addition: n Takte Multiplikation : m takte sinus : x takte etc. Hat da jemand zufällig ne Ahnung ? Ich wäre wirklich sehr dankbar, wo man soetwas finden könnte! Tschüß, Kai
Ist wohl einigermassen CPU-abhängig, oder? Insofern fehlt noch ne Angabe von Dir. Stefan P.S. Manchmal habe ich solche Angaben schon in Datenblättern gesehen.
Hi! Ich hab zwar keine Ahnung ob sowas wirklich gehen würde, aber versuchen kann mans ja. Die quarz-Eingänge des Uc's mit nem' Funktionsgenerator abremsen, auf ca. 1 hz. nachher könnte man ziemlich einfach beobachten wie lange der Controller für einen Befehl braucht. MFG NIK
Hallo Leute Um schnell eine Laufzeitabschätzung für 51er,48er,68er - Chips zu bekommen, kann ich den Timer-Stack-Analyzer empfehlen, der auf der CD-ROM "Mikrocontroller" von Ruess ist - jeweils für die o.g. Chips. Man muß dabei aufpassen, daß die richtige Anzahl der Schleifen eingegeben wird (einfaches Testprogramm machen mit bekannter Ausführungszeit und damit den Analyzer probieren). Vielleicht gibt es auch für andere Chips entsprechende Software.
Hi, für gewöhnlich stehen solche Angaben im Programming Manual des entsprechenden Controllers. Für die AVRs stehts z.B. im Instruction Set. Vielleicht sogar auch im Datenblatt, hab' noch nicht nachgesehen. Eine Möglichkeit bestimmte Laufzeiten zu messen ist z.B. auch das toggeln freier Ports mit anschließender Bestimmugn der Frequenz. Dies Funktioiniert jedoch nicht immer (z.B. wenn die zu messende Routine durch eine ISR unterbrochen wird). Viele Grüße, Ralf
Hallo, also die Befehlsdauer der Assembler Befehle sollten im Datenblatt stehen, den Sinus sehe ich aber mal eher in einer Hochsprache angesiedelt. Jeder Halbwegs gescheite Compiler kann aber den Assemblercode auswerfen. Danach sollte man eigentlich jeden hallbwegs brauchbaren Assembler dazu übereeden können das Ding umzuwandeln und ein Listing mit angabbe der Takzyklen rauszuwerfen. Wenn man das dann mit miniprogrammen testet die nur diese kleine Operation ausführen sollte sich der Teil im Code auch leicht finden lassen und fertig. Eckhard
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.