Are you involved in the development of high-integrity embedded systems for use in aerospace, defence, medical, automotive or industrial sectors? Do you need to be able to guarantee that your systems will operate correctly? Do you need to “certify” your systems? If so, we may be able to help.
This practical 5-day training course explores key techniques for working with multiple CPUs in high-integrity embedded systems. The system configurations considered during this course are as follows:
By the end of this course, participants will understand how to avoid the pifalls which can arise when using multiple CPUs - any of of the above configurations - in high-integrity embedded systems.
[Module code: B3a]
You can attend this course:
This course will be of particular benefit to engineers and engineering managers interested in the development of high-integrity aerospace, defence, medical, automotive and industrial systems.
Most of coding examples (and some of the exercises) on this module involve the C programming language. We assume that all participants have had experience developing embedded systems using C.
Please note that this is not an introductory course. If have worked with embedded systems for less than 6-12 months, we recommend that you attend Module A1 before taking this course.
This course will next be delivered as follows:
Places are available on this course at the “Taster” rate of £500 + VAT per place.
Please note that you can attend this course and Module A1a for the combined fee of £1200 + VAT (Taster rate).
Conditions apply to all “Taster rate bookings. Please refer to our fees page for full information.
To book a place on this course, please contact us.
A place will then be reserved and you will be sent an invoice.
Your place on the course will be confirmed when payment is received.
Formal quotations can be provided on request.
Day 1: Working with ‘lock step’ and related processor architectures
Introduction. Safety Integrity Levels (SILs) and related concepts. Meeting SIL requirements. Potential reliability issues with single-processor designs. Possible distributed designs. Creating a “lock step”. Working with lock-step hardware: programming issues and challenges. Consideration of COTS and custom lock-step solutions. Alternative ways of meeting SIL requirements. Case studies from different sectors. ISO 26262, IEC 61508, DO-254 and DO-178 considerations.
Day 2: Making effective use of multi-core processors in reliable systems (Part 1)
Improving performance with multiple cores. Multi-processor vs. multi-core: similarities and differences. Maintaining design integrity when migrating from a single-processor solution. Scheduling issues. Maintenance. Adapting task sets for distributed systems. Example automotive control system.
Day 3: Making effective use of multi-core processors in reliable systems (Part 2)
Improving reliability. Implementing safety agents. Migrating long tasks. Creating an “event processor”. Avoiding resource conflicts in multi-core designs. Advantages of custom designs. Disadvantages. Clock synchronisation and GALS designs. Do we need formal methods? Impact of jitter. Different forms of clock synchronisation algorithm. What happens when something goes wrong? Timing in the event of errors. Case study.
Day 4: Creating reliable distributed systems
Creating a simple multi-processor design using CAN. The challenges of clock synchronisation. Timing of tasks and network communications. Basic use of watchdogs. Babbling idiot failures and how to handle them. Running without clock synchronisation. Adding redundant Master nodes. Adding redundant Slave nodes. Hot standbys. What can possibly go wrong? Adding redundant communication paths. Bus vs. star topologies. How do we compare performance of different architectures? Safety Integrity Levels. The impact of high bandwidths on software designs.
Day 5: Detailed case study
Presentation and discussion of a representative case study. Review of the work conducted in the module and consideration of alternative approaches and solutions. Suggestions for further reading.
This course is delivered by TTE Systems Ltd.
You can attend this course as a self-contained 5-day training module or as part of the University of Leicester’s MSc in Reliable Embedded Systems.
We can deliver this course on your site at any time.
For on-site courses:
Please contact us for further details.
On-site training options are only cost effective for class sizes of at least 10 people in most cases.