Course Outline

Introduction

  • What is design?
  • C vs Embedded C

The Life-Cycle of an Embedded Application

  • The development process
  • The maintenance process
  • The extended life cycle

Design Tools

  • Open source vs proprietary 
  • Compiler, assemblers and linkers
  • Libraries
  • Debuggers
  • Simulators
  • IDEs

Embedded Design Challenges

  • Embedded computing design constraints
  • Cost considerations
  • Performance and efficiency
  • Power consumption
  • Thermal management

Defining the Design Goals

  • Keeping it simple
  • Defining the functionality
  • Defining the program logic and structure

System Reliability

  • Inspection and maintenance
  • Uptime requirements
  • Points of failure 

Code Reusablility

  • Redundancy-free design

Code Abstraction

  • Information hiding
  • Context-free modules

Code Modularization

  • Decomposition
  • Loose coupling
  • Strong cohesion
  • Acyclic dependencies

Code Maintainability

  • Readability
  • Testability
  • Configurability
  • Performance upgrades 

Hardware Considerations

  • Scalable Thermal Design Power (TDP)
  • Integrated graphics
  • Other

Summary and Conclusion

Requirements

  • Basic embedded system knowledge
  • Embedded C programming experience
  • An understanding of electronics fundamentals

Audience:

  • Developers
  14 Hours
 

Number of participants


Starts

Ends


Dates are subject to availability and take place between 09:30 and 16:30.
Open Training Courses require 5+ participants.

Related Courses

Kubernetes Design Patterns and Extensions

  14 Hours

Related Categories