Embedded.com Tech Focus Newsletter (9-12-11): Making embedded software safer - Embedded.com

Embedded.com Tech Focus Newsletter (9-12-11): Making embedded software safer

Embedded Newsletter for 09-12-11

» Click here to view online I » Forward to a friend I » Sign up for an EE Times Newsletter

Share this Newsletter:

facebook linkedin twitter digg

September 12, 2011

Tech Focus: Making embedded software safer

HIGHLIGHTS

Verifying certified software: making the most of the tools you have

Using static code analysis to support DO-178b certification

Seventeen steps to safer C code


Editor's Note

Bernard Cole Bernard Cole
Site Editor
Embedded.com

There are a number of classes on safety-critical embedded systems design at the ESC in Boston , Sept. 26-29 you should consider attending, They include:

Designing embedded systems that do not damage humans (ESC-107)
Strategies for safety-critical software developmen t(ESC-303)
Agility development of safety critical systems (ESC-312)
Complying with FDA medical device regulations (DM-303)
Software separation for safe medical devices (DM-305 )
A guide to critical software certification (ESC-409)

Why attend? Two reasons. In today's uncertain economy, the embedded design markets that require rigorous attention to reliability and safety are also less sensitive to market shifts: military/aerospace, medical and automotive. Becoming an expert on safety-critical embedded systems may guarantee you a paycheck. Secondly, with embedded devices so pervasive in our lives, their reliability and safety will continue to become more important. While focused attention to safe operation may not be important to every design, learning the principles and applying them may be critical to your project's success in the marketplace.

Here are some recent Embedded.com articles, white papers and webinars on safety-critical design, of which my Editor's Top Picks are:

Verifying certified software
Seventeen steps to safer C code
Architecture of safety-critical systems

Also, be sure to read Michael Barr's newest column: “Five dangerous coding standard rules.


Design How-Tos

Verifying certified software: making the most of the tools you have

An examination of the Software Code Standard and Structural Coverage Analysis requirements of the DO-178B standard, and an evaluation of some techniques useful in meeting the needs of safety-critical software development,

Using static code analysis to support DO-178b certification

In this Product How-To, Paul Anderson of GrammaTech takes you step by step through how to use his company's static analysis tools to support the safety-critical software requirements of the DO-178B standard.

Building in RTOS support for safety- & security-critical systems

In this Product How-To, LynuxWorks' Will Keegan explain the differences between safety-critical and security-critical applications and how to use the company's two independent RTOSes – LynxOS-178 and LynxSecure – to meet the demanding requirements of each.

Seventeen steps to safer C code

Here are 17 tips for writing safety-critical C code using methods adapted from C++ and Ada.

Applying Bayesian belief networks to fault tree analysis of safety critical software

Using a Bayesian Belief Network to express the fault tree allows both hard and soft evidence to be used in safety critical software analysis in a quantifiable way with the results usable in a larger model that expresses a full, quantified safety case for a design.

Challenges of safety-critical multi-core systems

In this article, the challenges involved in migration to multi-core processor architectures are reviewed in the context of the particular ones related to their use in safety-critical systems.

Build Safety-Critical Designs with UML-based Fault Tree Analysis – The basics

This three part series describes use of Fault Tree Analysis (FTA) in safety-critical design, taking advantage of UML profiling to create a safety analysis profile, including the definition of its normative metamodel. Part 1: The basics of safety & capturing of fault metadata for analysis.

Is it time for another look at how we build safety-critical embedded systems?

This article discusses the repercussions of embedded software failure within such industrial segments as automotive, medical and mil/aero, looks at examples of erroneous code to look out for when looking for defects, and the different initiatives that drive software safety benchmarks such as DO-178B, FDA, and MISRA.

Safety-critical design for secure systems

Robert B. K. Dewar of Adacore surveys specialized languages and tools, rigorously controlled testing, and the use of formal methods needed for safety- critical designs and explains their use to build error-free software systems

Architecture of safety-critical systems

It's one thing to know your system is safety-critical; it's another to know how to deal with it. The author explains how to evaluate errors, categorize them, and safely handle them when they happen.

Five steps to creating reliable medical devices

Ravi Patel describes a holistic approach to the systems engineering and software development of a medical device.


ESC Boston 2011 Tracks

System Integration & Test
Integrating hardware with software, developing test strategies, managing and executing system test.
Track Chair: Bruce Douglass, Chief Evangelist, IBM

Linux, Android, Open-Source
Evaluating, understanding and using Embedded Linux, the Android platform and other open-source software.
Track Chair: Bill Gatliff, Freelance Consultant

Real-Time Systems
Fundamental real-time concepts, selecting and understanding an RTOS, developing and verifying real-time systems.
Track Chair: Dave Stewart, Director of Software Engineering, InHand Electronics, Inc.

Project Management
Development methodologies, traceable design, developing and managing requirements, agile development, build and change management and other aspects of making a project succeed.
Track Chair: Rob Oshana, Director, SW R&D, Networking & Multimedia Group, Freescale

Multicore
Understanding, evaluating and programming multiple-processor systems.
Track Chair: Robert Cravotta, Principal Analyst, Embedded Insights

Networking & Connectivity
Understanding and implementing Internet connections into embedded systems, networks within embedded systems and interfaces such as USB and PCI Express.
Track Chair: Christian Legare, Vice President, Micrium

Safety & Security
All aspects of developing and testing systems that must be safe to deploy in life-critical applications, and systems that are secure against malicious attacks.
Track Chair: Mark Kraeling, Product Manager, GE Transportation

FPGAs in Embedded Systems
FPGAs as alternatives to microcontrollers, as signal-processing units, as configurable accelerators, or just as a way of implementing an interface: Selection, design and verification. Understanding and using the FPGA tool chain and how it differs from software development tools. Employing CPUs inside or beside FPGAs.
Track Chair: Mike Santarini, Publisher / Sr. Manager Xcell Journal & Editorial Services, Xilinx

Prototyping Embedded Systems
Model-based prototyping, use of simulation, selection and use of development kits, FPGAs as prototyping aids.
Track Chair: RC Cofer, FAE, Avnet

Microcontrollers & SoCs

Understanding, selecting and programming microcontrollers; Sorting out the ARM architectures; Peripheral and memory issues in MCUs and SoCs, evaluating an application-specific standard product SoC for a project.
Track Chair: Mark Kraeling, Product Manager, GE Transportation

Embedded I/O Systems

Storage, display and input devices for embedded systems.
Track Chair: Larry Mittag, Lead Consultant, Mittag Enterprises

Software Engineering
Reviewing programming fundamentals, building programming skills, software architectures, optimization and best practices.
Track Chair: Niall Cooling, Director, Feabhas Ltd.

Low-Power Design
Hardware and software issues in low-power design. Accurate power estimation and measurement.
Track Chair: John Donovan, Editor/Publisher, Low-Power Design (www.low-powerdesign.com)

Military/Aerospace Design

Hardware, software and methodology practices for military and aerospace applications. Use of these techniques in other application areas.
Track Chair: Dave Stewart, Director of Software Engineering, InHand Electronics, Inc.


Products

QA·C 8.0 deep-flow analysis improves code checking for safety-critical apps

Phaedrus Systems now supplies the new release of the QA·C code analysis tool from Programming Research. QA·C 8.0 uses sophisticated technology to go beyond static code analysis by performing deep-flow dataflow analysis.

DDC-I's Safety-Critical RTOS now available for Intel's Atom CPU

Company believes DEOS support will open up many military/aerospace applications for the Atom architecture

GrammaTech streamlines ISO 26262 compliance for functional safety in automotive industry

GrammaTech, Inc. has announced the release of supplementary documentation to its CodeSonar static-analysis tool that details how static analysis can be used to support an organization's ISO 26262 initiatives. The International Organization for Standardization (ISO) Draft International Standard (DIS) 26262, titled “Road vehicles — Functional safety,” is a Functional Safety standard that is currently in the final draft. This standard is an adaptation of the Functional Safety standard IEC 61508 for Automotive Electric/Electronic Systems.

Agilent Technologies

Buy the Best. Get Rewarded. Receive a complimentary Agilent 3000 X-Series oscilloscope.

For a limited time, you will receive a complimentaryInfiniiVision DSOX3034A 4-channel, 350-MHz oscilloscope when you buy any Agilent Infiniium Series oscilloscope, any PXA signal analyzer, or any PNA-X Series network analyzer. Click here to learn more.


Commentary

Five dangerous coding standard rules

Don't follow these five dangerous coding standard rules… TODO.

Codifying good software design

“Safety first” is a simple motto forever complicated by the complacency and greed of human nature. The story of U.S. fire codes has plenty to teach system designers.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.