|
The
Limitations of Sneak Circuit Analysis Software
A computer program with Sneak
Circuit Analysis capabilities is available for personal computers; however,
it does not include functional evaluation of integrated circuits (ICs).
These programs use an algorithm which recognizes specific topological
patterns and was first devised by Boeing in the late 1960s. Boeing, which
developed this technique for discrete components and relay logic, had
progressed far beyond this simple method as technology moved towards microprocessor
designs. Attempting to use these programs to perform Sneak Analysis on
modern circuitry would produce limited results since most systems are
designed with many functionally complicated ICs with very little discrete
components. However, IDA continues to improve upon the latest
Sneak Analysis techniques by integrating the Sneak Analysis method with
new technologies.
There are also Commercial Off The Shelf (COTS) tools applied to and/or
used to evaluate software to identify code complexity, undefined variables,
unused code, and total number of possible logic paths. The output of these
tools do not identify sneak conditions because functional interactions
are not assessed between major software functions and modules. Most of
these static code checkers produce an output that requires further evaluation
by an analyst. Timing, possible contradictory data paths, and other anomalies
are not investigated because of the limitations of these tools. Sneak
Analysis not only identifies sneak conditions but also detects similar
conditions as the COTS software tools.
Some other Sneak Analysis providers use input-output matrix systems for
uncovering sneak conditions. These methods are limited because of their
binary nature of the final product and their lack of insight into the
intended function of the circuitry or system. IDA's experience
with sneak analysis has found that many detrimental sneaks occur between
the systems major functions, in areas where each of the functions
are possibly transitioning and interacting. These dynamic interactions
are not considered in an "all possibilities" input/output matrix
or a computer program which searches all possible current or data paths.
The dynamic interactions are especially important when analyzing a hardware/software
microprocessor based system. Many sneak conditions occur when considering
functions which are as much software as hardware. The sneak conditions
are hidden within the hardware/software interface because in general,
few system developers cross between these boundaries and are limited in
communicating in the different technical terms and concepts that hardware
and software developers frequently use. In many projects, the hardware
and software are developed at different locations or times making it difficult
for each of the developers to communicate the intricate details of their
designs. This forces the hardware and software developers to make general
assumptions about each others functionality, not knowing the details,
and can create anomalous conditions. Many of these interface problems
are discovered in the test and acceptance phase of the project, while
some others are discovered after product delivery. Fixing the problem
this late in the project becomes expensive with fewer options for re-design.
IDAs Sneak Analysis approach links the software functions
to hardware circuitry displaying the entire function to the analyst. IDA
then applies static and dynamic clues to the combined function. After
a single function is complete, the analyst then uses inter-functional
clues between the system's major functions to continue the search for
sneak conditions.
|
|