Arm Community
Site
Search
User
Site
Search
User
Support forums
Architectures and Processors forum
Abort some questions of arm interrupt
Jump...
Cancel
State
Not Answered
Locked
Locked
Replies
14 replies
Subscribers
349 subscribers
Views
15621 views
Users
0 members are here
Cortex-M3
Cortex-M
Interrupt
Options
Share
More actions
Cancel
Related
How was your experience today?
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion
Abort some questions of arm interrupt
josh zhao
over 12 years ago
Note: This was originally posted on 20th June 2008 at
http://forums.arm.com
I try to understand arm interrupt,there are some questions I don't know,
1. Why the nested interrupt has to switch out of irq mode to svc mode? I think it only pushes the r14_irq into the irq stack.
2. The basic difference between a reentrant interrupt handler and a nested interrupt han-dler is that the interrupts are reenabled early on in the reentrant interrupt handler, which can reduce interrupt latency.
I can't understand that ?
thanks!
Parents
0
guestposter guestposter
over 12 years ago
Note: This was originally posted on 24th June 2008 at
http://forums.arm.com
If I recall correctly, a nested interrupt handler allows a higher-priority interrupt to interrupt it. For example, you might want a timer interrupt to have higher priority than a UART interrupt, because what you are doing in the timer requires hard real-time guarantees on latency. In this model, an interrupt cannot interrupt the handler for itself.
In a re-entrant interrupt routine, a second interrupt of the same type can interrupt processing of the first one. This is rarer, because if the interrupt is that important, you probably need to service the first one anyway. Re-entrant code is more difficult to write and debug, since it will often require access to the same data structures as the interrupted interrupt handler. It also allows unbounded stack growth if the interrupts come in too fast to handle.
Cancel
Vote up
0
Vote down
Cancel
Reply
0
guestposter guestposter
over 12 years ago
Note: This was originally posted on 24th June 2008 at
http://forums.arm.com
If I recall correctly, a nested interrupt handler allows a higher-priority interrupt to interrupt it. For example, you might want a timer interrupt to have higher priority than a UART interrupt, because what you are doing in the timer requires hard real-time guarantees on latency. In this model, an interrupt cannot interrupt the handler for itself.
In a re-entrant interrupt routine, a second interrupt of the same type can interrupt processing of the first one. This is rarer, because if the interrupt is that important, you probably need to service the first one anyway. Re-entrant code is more difficult to write and debug, since it will often require access to the same data structures as the interrupted interrupt handler. It also allows unbounded stack growth if the interrupts come in too fast to handle.
Cancel
Vote up
0
Vote down
Cancel
Children
No data