Ahmad Rana's Engineering Log

Embedded Talks 





Engineering Log

Embedded Talks





Overview of Embedded Development

A short talk on what embedded software development is, and how it is different from developing software on general purpose computers. A list of different sub-specialties in embedded software developments is provided (18:31 minutes)

Device Diagnostics

What are device diagnostics; different types of diagnostics, and when are they required at different stages of embedded software development (26:53 minutes)

Device Drivers

A quick overview of what device drivers mean, and different architectures in device drivers (32:32 minutes)


Operations performed by a boot-loader before the user-defined software starts running; Bootloader examples (24:03).

Kernel/ Scheduler

Duties of a kernel in the operating system; What is multi-threaded software; different types of scheduling algorithms (planned).

Reliable Software for Safety Critical Systems

How to build in reliability in software through quality process, redundancy and recovery techniques (planned).

Communications Protocol Design

What is a communication protocol. What to expect while designing with 3rd party protocols, and considerations for developing a custom designed protocol (planned).

State Machine Design for Multithreaded Systems

Different architectures for state machines in embedded development. Example of state machine implemented using real-time operating system constructs (planned).

Real-Time Analysis Tools

Different tools for real-time analysis made available by the RTOS vendor, or making custom tools for RTOS embedded testing (planned).

Hardware/ Software Codesign

A process for carrying out hardware and software design simultaneously (planned).

Hardware in the Loop Simulation

What is hardware in the loop simulation; Different tools used in HIL Simulation; making a custom HIL simulator (planned).

System Simulators

Simulator design; different considerations and tradeoffs for choosing a model for simulators (planned).

Build and Embedded Testing Automation

Build automation and end-to-end testing automation (planned).