Abstract
This chapter covers interrupts and exceptions processing. It describes the operating modes of ARM processors, exception types and exception vectors. It explains the functions of interrupt controllers and the principles of interrupts processing in detail. Then it applies the principles of interrupts processing to the design and implementation of interrupt-driven device drivers. These include drivers for timers, keyboard, UARTs and SD cards, and it demonstrates the device drivers by example programs. It explains the advantages of vectored interrupts over non-vectored interrupts. It shows how to configure the Vector Interrupt Controllers (VICs) for vectored interrupts, and demonstrates vectored interrupts processing by example programs. It also explains the principles and importance of nested interrupts and demonstrates nested interrupts processing by example programs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
ARM Architecture: https://en.wikipedia.org/wiki/ARM_architecture, 2016.
ARM Processor Architecture: http://www.arm.com/products/processors/instruction-set-architectures, 2016.
ARM PL011: ARM PrimeCellUART (PL011) Technical Reference Manual, http://infocenter.arm.com/help/topic/com.arm.doc.ddi0183, 2005.
ARMPL180: ARM PrimeCell Multimedia Card Interface (PL180) Technical Reference Manual, ARM Information Center, 1998.
ARMPL181: ARM PrimeCell Multimedia Card Interface (PL181) Technical Reference Manual, ARM Information Center, 2001.
ARM PL190: PrimeCell Vectored Interrupt Controller (PL190), http://infocenter.arm.com/help/topic/com.arm.doc.ddi0181e/DDI0181.pdf, 2004.
ARM Timers: ARM Dual-Timer Module (SP804) Technical Reference Manual, Arm Information Center, 2004.
ARM PL050: ARM PrimeCell PS2 Keyboard/Mouse Interface (PL050) Technical Reference Manual, ARM Information Center, 1999.
Nesting Interrupts: Nesting Interrupts, ARM Information Center, 2011.
SD specification: Simplified Version of SD Host Controller Spec, https://www.sdcard.org/developers/overview/host_controller/simple_spec.
SDC: Secure Digital cards: SD Standard Overview - SD Association https://www.sdcard.org/developers/overview, 2016.
SPI: Serial Peripheral Interface, https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus, 2016, 2016.
Raspberry_Pi: https://www.raspberrypi.org/products/raspberry-pi-2-model-b, 2016.
Silberschatz, A., P.A. Galvin, P.A., Gagne, G, “Operating system concepts, 8th Edition”, John Wiley & Sons, Inc. 2009.
Stallings, W. “Operating Systems: Internals and Design Principles (7th Edition)”, Prentice Hall, 2011.
Wang, K.C., “Design and Implementation of the MTX Operating Systems, Springer International Publishing AG, 2015.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this chapter
Cite this chapter
Wang, K.C. (2017). Interrupts and Exceptions Processing. In: Embedded and Real-Time Operating Systems. Springer, Cham. https://doi.org/10.1007/978-3-319-51517-5_3
Download citation
DOI: https://doi.org/10.1007/978-3-319-51517-5_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-51516-8
Online ISBN: 978-3-319-51517-5
eBook Packages: EngineeringEngineering (R0)