Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
04/21/11 14:51
Modified:
  04/21/11 14:52

Read: times


 
#181966 - sometimes you are not the picker
Responding to: ???'s previous message
an equal or lower priority interrupt going pending when another ISR is executing is even worse (maybe just as bad, the docs are a bit fuzzy on this one)

In that case, the lower priority ISR starts 6 cycles after the higher priority ISR finishes due to the tail-chaining feature (i.e. the CPU moves directly to the next ISR instead of doing a regular ISR exit and then a regular ISR entry).

the way I read the documents, what you say is true IF the higher priority interrupted the lower priority, but not if "lower priority interrupt going pending during the higher priority interrupt"

Erik Malund said:for the Cortex (the ARM in question) an interrupt interrupting an interrupt has a latency of min. 18 clocks!

Where in the docs can I find this? The regular ISR entry latency is 12 clocks, and I don't believe this changes if a higher priority interrupt preempts a lower priority interrupt.

interrupt 1 getting out 6 clocks interrupt 2 getting in 12 clocks, no mention if any pf the nmain get done in-between

anyhow
However, due to all of the automatic register pushes happening during ISR entry, if you need ultra-low ISR latencies, the Cortex-M3 (and similar) architecture isn't the right thing for the job.

was the point I tried to make.

I got in the, for many, well known situation: "program this board to do so".

Erik






List of 32 messages in thread
TopicAuthorDate
[ARM] Any good introduction to ARM assembler?            01/01/70 00:00      
   Every experimenters moving to ARM??            01/01/70 00:00      
      Large span of capabilities with same tools etc            01/01/70 00:00      
         Cheaper?            01/01/70 00:00      
            Depends on how to compare            01/01/70 00:00      
               How very true            01/01/70 00:00      
               a caveat            01/01/70 00:00      
                  Picking the right tool for the job.            01/01/70 00:00      
                     sometimes you are not the picker            01/01/70 00:00      
                        Cortex NVIC behavior.            01/01/70 00:00      
                           the way I read it            01/01/70 00:00      
                              A question if registers needs to be saved            01/01/70 00:00      
                              Possible cases:            01/01/70 00:00      
         luckly            01/01/70 00:00      
            Lucky??            01/01/70 00:00      
      don't know about experimenters, but ...            01/01/70 00:00      
         Easier to jump between many architectures now            01/01/70 00:00      
   Have you tried...            01/01/70 00:00      
      Is this a way to say "no"? ;-)            01/01/70 00:00      
         In the absence of a recommendation...            01/01/70 00:00      
   ARM assembly is fairly "plain" ...            01/01/70 00:00      
      RealView            01/01/70 00:00      
      shorter, better...            01/01/70 00:00      
         Just dive right in.            01/01/70 00:00      
            Not trivial either            01/01/70 00:00      
               Valid points, but ...            01/01/70 00:00      
            none, then?            01/01/70 00:00      
   related thread on LPC2000 yahoo group            01/01/70 00:00      
   Erik found something            01/01/70 00:00      
   Re: [ARM] Any good introduction to ARM assembler?            01/01/70 00:00      
   Check this link            01/01/70 00:00      
      Why? How is it relevant?            01/01/70 00:00      

Back to Subject List