Befehle und die benötigten Taktzyklen

OP (Firma: student) #2886993
Lesenswert?

Guten Morgen Allerseits,

ich habe mal hier eine einfache Frage die mich trotzdem irritiert :)

wie kann ich die Anzahl der erforderlichen Taktzyklen pro Befehl bei 
einem µC bestimmen?? oder die Anzahl der zuausführenden Befehle pro 
Sekunde??

Bsp: Prozessor mit 24MHz die intern durch 12 geteilt wird ergibt eine 
Taktung von 2MHZ...und wie geht´s weiter??

Danke euch im voraus.

Viele Grüße.
#2886999
Lesenswert?

anis magic schrieb:

> wie kann ich die Anzahl der erforderlichen Taktzyklen pro Befehl bei
> einem µC bestimmen??

Der Hersteller liefert umfangreiche Doku, in der unter anderem auch 
jeder Befehl aufgeführt ist, was er macht, und wieviele Taktzyklen er 
benötigt.
Schwieriger wirds, wenn Pipelining im Spiel ist. Dann muss man sich auch 
den Zusammenhang mit anderen Befehlen im realen Programm ansehen.

> oder die Anzahl der zuausführenden Befehle pro
> Sekunde??

Man nimmt einfach einen gesunden Mix an Befehlen an, also sowas wie 
einen Durschnittswert.


Alternativ kann man natürlich auch einen Simulator Taktzyklen zählen 
lassen, wenn er das reale Programm durchsimuliert. Da das Ergebnis aber 
natürlich auch von den genauen Details abhängt, wie zb. welcher 
Programmpfad wird in einem if genommen, und die wiederrum meistens von 
den genauen Werten im Inputbereich des Programms abhängen, kriegt man 
auch hier wieder nur einen Durchschnittswert.
#2887004
Lesenswert?

Durch den intern genutzten Takt (2 MHZ) kannst du die Zeit pro Zyklus 
bestimmen (Sek/F_CPU).

Programmierst du in c, musst du dir das Assembly-File anzeigen lassen. 
Jeder Assembly Befehl sollte im Datenblatt des uC mit der benötigten 
Taktanzahl stehen.

Den Rest musst du halt addieren. sollte aber trivial sein

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren