Slideshow transcript
Slide 1: Careers in Embedded Systems An Industry Perspective Anil Kumar Pugalia
Slide 2: Agenda ● W's of an Embedded System ● The Embedded Developer - Is it for me?
Slide 3: Embedded Systems
Slide 4: What is an Embedded System? ● Special-purpose computer system ● Performs one or a few dedicated functions ● Embedded in hardware & mechanical parts ● Often with real-time computing constraints
Slide 5: Why an Embedded System? ● Form Factor (Reduced Size) ● Affordable (Reduced Cost) ● High Reliability ● Fault Tolerant (Mission Critical) ● Real-time Performance ● Power Efficient
Slide 6: Embedded System Examples
Slide 7: Embedded Ecosystem Embedded Domain Specific Software Multimedia Automobile Communications Explorations Health Consumer Embedded System Software Embedded Hardware Audio Control Transmission Expedition Health Household Visual Interfaces Interfaces Units Probes Devices Interfaces Human Interface Devices (HID)
Slide 8: The Embedded Components ● CPU Platforms & Architectures ● Firmwares & Bootloaders ● Operating Systems ● SoC & FPGA Solutions ● Peripherals & Device Drivers ● Tools & Applications ● Hardware Debuggers
Slide 9: CPU Platforms & Architectures ● Platforms – Microprocessors (General computing) – DSPs (Specialized computing) – Microcontrollers (Peripherals on chip) – Examples: 68K, 8051, ARM, AVR, Blackfin, MIPS, PIC, PowerPC, SuperH, Tricore, ... ● Architectures – Von Neumann, Harvard, ...
Slide 10: Systems Software ● Firmwares ● Monitors ● Bootloaders – Universal (uboot) – Customized ● Operating Systems – Embedded: Linux, WinCE – Real-time: QNX, VxWorks, Micro C/OS-II, RTLinux
Slide 11: Systems Software (Contd) ● Device Drivers – For System Control – For Peripherals ● Toolchains – Cross Compilers – Binary File Utilities ● Debuggers
Slide 12: Application Software ● Real-time Constraints ● Customized to Embedded Domain – Multimedia – Communications – Automotives – ...
Slide 13: The Real Life Challenges ● Hardware Bringup ● Systems Software Porting ● Debuggability – Closed System – Real-time Operations ● Timing Constraints & Performance ● Space Constraints & Cost
Slide 14: The Embedded Engineer
Slide 15: What does this circuit do?
Slide 16: Even I don't understand it. And I don't need to.
Slide 17: Embedded Engineer Expectations ● Strong C/C++ skills ● Expert in Programming ● Bit-level Analysis of Hardware Blocks ● “Smart” Logic Analysis & Optimization ● Mix of Hardware Programming ● Debugging Patience ● Tools & Environment Familiarity ● Excellent Team Player ● Ability to deliver on Deadlines
Slide 18: Is it for You? int i, j, cnt = 0; for (i = 0; i < 5; i++) { for (j = i; j < 5; j++) { cnt++; } } Optimize the code to a single statement
Slide 19: Is it for You? volatile const int i = 2; while (i == 2) { sleep(1); } Will it always be an infinite loop?
Slide 20: Q&A



Add a comment on Slide 1
If you have a SlideShare account, login to comment; else you can comment as a guest- Favorites & Groups
Showing 1-50 of 1 (more)