Analysis in our Integrated World

Most of today’s most innovative controllers involve electronic hardware and embedded software. Also, in our networked society, these controllers inevitably communicate to a larger system server for commands, mode management, and reporting status. Eventually, a human operator is placed in the loop at the highest level to assure that the controls are functioning as intended and to intervene if something goes wrong. This architecture relies on many different functions to interact perfectly to be successful. All of these functions are divided between electronic hardware and software, whether embedded or hosted by a workstation for human interaction.


Performing a design analysis to understand the actions and limitations of these systems involves an understanding of the entire system. This "end-to-end" analysis will require the combined understanding of hardware sensors, hardware effectors, the sensor/effector status relationships, the microprocessor hosing the embedded controls and most important, the embedded software itself. When the embedded controller reports to the management host computer, the understanding of the network, protocols, and timing become necessary to assure that the operator obtains reliable status information and can send the proper commands to the end effectors without some other unpredictable interaction occurring.


Design analyses such as Fault Trees, Failure Mode and Effects Analysis (FMEA), and Sneak Analysis all involve system knowledge when analyzing at the component level. Without in-depth understanding of the software’s logic and timing, a Fault Tree, FMEA or Sneak Analysis is severely limited, if even effective at all.


Integrating both hardware and software into a seamless analysis is IDA’s specialty. IDA’s Baseline Analysis Tools, or BAT, combines both hardware and software into functional pieces that easily build the framework for any other design analysis. The effects of component failures in the case of an FMEA are traced through the system software, at all levels, whether embedded or networked, to a host workstation and the operator’s controls. A Fault Tree can fully demonstrate all events that occur at software inputs, such as sensor failures or another embedded processors’ incorrect status message, which leads to the Top-Level failure event.


IDA’s experience with these integrated analyses that involve both hardware and software has shown that analysis of software without the hardware, or visa-versa is incomplete and anomalies may still occur. Most Sneak Conditions that involve both hardware and software occur in the interface. Our experience with Fault Trees without consideration of the embedded software functions hides many events that occur at the Microprocessor inputs. Thus, to have an effective design analysis of a hardware-software based system, both must be analyzed together.