About the Course
This course is for 0-3years experience engineer who are interested in the field of embedded system software or hardware. The course duration is 3-4 months and it is only available in Bangalore.
Topics Covered1. EMBEDDED ‘C’ PROGRAMMING [15 classes]
2. INTRODUCTION TO EMBEDDED SYSTEMS [1 class]
3. EMBEDDED OPERATING SYSTEM DESIGN [4 class]
? Embedded OS concepts – synchronization/scheduling/Interrupts.
? Design of Embedded OS which includes customization of Scheduler for
? RTOS (QNX, Qualcomm's L4, REX and uCOS) and Linux kernel.
? Discussion on “How to choose OS for embedded systems?”
4. EMBEDDED SYSTEM SOFTWARE DEVELOPMENT/ARCHITECTURE CONCEPTS [3 class]
? Software Architecture Overview - ANDRIOD/LINUX/QNX
? Need of Cross-compilers.
? Bare-metal Platform and its usage in embedded systems.
? Linux system boot procedure and boot-loader(UBOOT)
5. EMBEDDED HARDWARE (Includes several PPT presentations) [8 classes]
? System ON Chip Architecture – OMAP platform
? Memory Mapped I/O and GPIO
? Watch Dog Timers.
? Peripherals like UART, ADC, SENSORS(Accelerometer and Temperature sensors)
? Interrupt Controller (INTC) and DMA engines.
? Clocks and different Memories(includes Internal RAM, Cache)
? Power Management Hardware.
? I2C and SPI hardware including protocol.
? Tips for debugging hardware.
? On-chip JTAG debuggers – Lauterbach Presentation.
6. ARM ARCHITECTURE ( Includes a video presentation) [ 4 classes]
? ARM Register sets.
? ARM Instruction sets.
? Processor Modes/ Exception Modes.
? Debugging ARM exceptions using map file.
? ARM Cortex-A8 vs. Intel Atom7. Embedded Linux (Includes several PPT presentations) [ 10 Classes]
? Linux system overview
? Basic Linux shell commands.
? IPC communication
? Process Scheduling
? System Call and Kernel Data-structures.
? Kernel Synchronization - Spinlocks, Mutex and Semaphores.
? Memory Management
? File System
8. Linux Device Drivers( Includes code walkthrough for example drivers) [ 10 classes ]
? Interrupt Handling.
? Kernel Memory Allocation.
? Kernel Threads.
? Char and Block Device Drivers.
? Kernel Modules.
? Device Tree usage.
? Platform and Peripheral Drivers
? Use cases – Keypad Driver and ADC Drivers.
9. Linux kernel – other ADVANCE TOPIC (Includes several PPT presentations) [ 7 classes ]
? ARM trust-zone.
? Crypto Hardware Accelerators.
? Linux Key Management.
? Linux Kernel and SMP systems.
? Memory Barriers
? Linux DMA and DMA Buf.
? GPS and I2C device driver.
10. Hands ON – Beagle Board. [ 4 classes ]
? Booting up the Board.
? System overview.
? Running basic applications on Board.
? Debug tips on Beagle Board.
ABOUT THE TRAINER: 9+ years experience in embedded system software R&D with very good experience in Linux kernel, device drivers and embedded hardware. He has worked in companies like Intel Mobile, Motorola and Mphasis.
Who should attendAnyone who is interested in making a good career in embedded systems.
Pre-requisites#Basic knowledge on C language
What you need to bringNothing"
Key TakeawaysEmbedded System training.