Introduction of the methodology for the design and implementation of embedded computing systems, and its application to real-world problems. Topics include Embedded System Design Process, UML, ARM Instruct Set Architectures, CPU's Hardware Platforms, Software Design and Analysis, Embedded Operating Systems, Real-Time Scheduling, Hardware Accelerators, Distributed Embedded Systems, and Design Methodology and Quality Assurance. Prior undergraduate trainings in computer architecture are necessary.