This book presents an overview of the ARM history and architecture, from the 1980�s legacy Advanced RISC Machine, to today�s 64-bit multicore units. The applications for the ARM in embedded systems is presented, as well as arm-based system-on-a chip designs. Software for the ARM is presented mostly JAVA, as are specialized architectures for vector floating point and media processing. The Thumb, NEON, and Jazelle extensions are discussed. The applications of the ARM architecture onboard spacecraft is explored, with a brief introduction to unique challenges of the space environment. Vector floating point and multicore instantiations of SIMD are covered. System simulation and debugging are discussed.
Yearly, billions of the ARM chips are sold. They are present in computer tablets, set-top boxes, phones, automobiles, airplanes, locomotives, routers, household appliances, medical devices � every electronic device imaginable. Understanding of the ARM architecture is critical to understand today�s electronic ecosystem.
Appendices present selected computer architecture topics such as I/O, floating point, cache, and the fetch/execute cycle in some depth. An extensive bibliography is included.
The author teaches an Embedded Systems course based on the ARM architecture for The Johns Hopkins University, and has been associated with the Department of Computer Science at Loyola University in Maryland for over 20 years. He has previously publishes works on RISC architecture, Massively Parallel Machines, the x86 and Transputer computer architecture, applications of microprocessors and robotics/telerobotics in space missions, and spacecraft flight computers.