We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I am writing some part of ADuCM360 program in assembly. I am running at full 16 MHz internal clock. My question is what will be time taken by chip to execute a instruction in assembly for example for a Nop() instruction.
I will appreciate early reply
Thanks and Regards
On average an arm can process a instruction in one clock cycle. This is because it will pipeline instructions so that it can fetch decode and execute all of its instructions in parallel and will be able to process a instruction every clock cycle.
16 X 10**6 hertz clock frequency has a period of (take the reciprocal of frequency) 62.5 x 10**-9 or 62.5 nano seconds.
it you were to only write one instruction though it would take three times as long since the pipeline of the processor can not be used for juat one instruction.
It would take 1 cycle to fetch, 1 cycle to decode and 1 cycle to execute just one instruction
many have got in trouble with calculating times with pipelined architectures, Gary mentions some cases and every cache miss, for whatever reason, will make your calculations invalid
Erik
The best you can possibly do is state the minimum time of execution.
Can be acceptable for very short and unimportant delays, but probably not much else.