For more information contact us
Phone:
+1-425-748-5018
Fax: +1-425-644-2185
TrainingUSA@selagroup.com
Coming courses
Register/More info
More courses from
Embedded/RT
Design of High Availability Systems & Software
Real-Time Essentials
RTOS Architecture and Effective C
Linux Embedded/RT and Drivers
Design of Safety-Critical Systems & Software
Effective C++ in RT/Embedded Systems
Design of Distributed and Multi-Core Systems & Software
ArcRT - Version: 1
Architectural Design of Real-Time Software
3 days course
Description
This course examines the activities of high-level design of real-time and embedded systems software that's to be developed using a real-time operating system (RTOS). The class begins with a quick examination of some fundamental issues in real-time multitasking embedded application software design and development, and briefly reviews several modern techniques for real-time and embedded software requirements specification. It then quickly focuses on how to structure a software system that must execute within strict deadline and resource limits. Emphasis is placed on multitasking and timing behaviors, rather than object orientation. The class continues with a detailed examination of intertask communication and synchronization options including mutexes of several varieties. The next major subject area of the class is the evaluation of timing performance and quality of a real-time or embedded software design. The final (optional) subject of this class is the design of highly-available and safety-critical embedded systems, from an integrated software-hardware system-level perspective. This course is not a general course about software design theory, but rather it is highly focused on the design of deeply-embedded, time-constrained, resource-constrained multitasking software that will run under the control of a modern RTOS.
Intended audience
This course is intended for practicing real-time and embedded systems software system architects, project managers and technical consultants who have responsibility for designing, structuring and implementing the software for real-time and embedded computer systems using an RTOS.
Prerequisites
Course participants are expected to have thorough familiarity with at least one RTOS
Objectives
The participant will gain the skills necessary to do high-level design of software for real-time and embedded computer systems using a real-time operating system.
This is a very practical, results-oriented course that will provide knowledge and skills that can be applied immediately.
Topics
Definitions / Real-Time Requirements
Embedded / Real-Time Systems: Definitions and Issues
Requirements Analysis: Context Diagram and Usage Scenarios
Quick Overview of Entity-Relationship Diagrams, State Transition Diagrams and Statecharts
What You Get in an RTOS, and What You Don't Get
Identifying Tasks and Objects
High-Level Software Architecture: Concurrency
The Gomaa Guidelines for Decomposition into Tasks
Exercise: Heart Rhythm Monitor - Design Partitioning
Object Orientation for Embedded/Real-Time Software?
13 Methods for Intertask Communication
The Correctness Killers: Deadlock, Lockout, Starvation
Software Architecture: Intertask Data Communication
Software Architecture: Intertask Synchronization
Fine-Tuning of Intertask Communication
Mutexes: Priority Inheritance and Priority Ceiling
Modeling of Message Queues
Exercise: Queuing Calculations for Medical Device
A Plethora of Design Examples
Standard Circuits" for Real-Time and Multitasking Software Design
Design Patterns for Embedded Software
Extended Example: Aircraft Fly-by-Wire
Evaluating the Quality of a Multitasking Software Design
Evaluating Real-Time and Multitasking Software Designs
Performance Analysis: Individual Scenarios
Performance Analysis: Task Scheduling Theory and Calculations
Exercise: Medical System Performance Calculations
ArcRT Course
I would like a representative to contact me regarding this activity
*
*
*
*
*