Introduction to embedded systems: Definition and characteristics of embedded systems, Categories, Functional, Temporal and dependability requirements, Embedded system building blocks, embedded systems design, applications.
Embedded hardware and software design fundamentals: History of processor architectures: scalar, vector, superscalar architecture, VLIW, EPIC, SMT, Multicore and multiprocessor architectures. Memory systems and memory hierarchy. Sensors and actuators: Types, Interfacing, Signal conditioning. Signal and communication interfaces. Embedded Firmware: RTOS, Device drivers, Application software, Software development life cycle. Selection criteria for components of embedded systems.
Embedded system models and design challenges: Introduction to distributed system models: High-performance computing, Grid computing, Cloud computing, Many-core computing, Many-task computing, Data-intensive computing, Parallel architecture, and Multithreaded programming. Design challenges: Power, Performance, Security, Reliability, Development and debugging tools: Compilers, Linkers,Linker scripts, Loaders, Emulators, Debuggers.