Fast simulation for development tool

Paul Boughton

Green Hills Software has significantly enhanced its MULTI embedded software development environment with a high speed target system prototyping simulator that a helps debugging, as well as a static source code analyser and distributed project builder to improve the quality and reduce the time to develop code.

A key new part of MULTI 5.0 is a prototyping tool that provides a 10x–50x performance speed-up over traditional instruction set simulators by employing dynamic binary translation technology.

As a simulation is run, common code is identified and mapped onto native code on the PC via a lookup table. When the simulation is run again, the native code is used instead, providing a significant speed increase.

This means that the simulation can run at the same speed as the target system, and break points in the debugger can be synchronised to the operation of the target, providing real time debugging and visibility. This is especially important for complex systems where all the data in the target is not visible, but it is accessible through the simulation.

The DoubleCheck code analyser processes the entire project's source code at compile time to find flaws, such as buffer overflows, resource leaks, invalid pointer references, overly complex code (as measured by metrics such as McCabe), and violations of safe language rules such as MISRA 2004.

The key is that it is fully integrated with the Integrated Development Environment (IDE). While other static analysis tools have to be fired up separately, and are often just used by quality assurance teams, DoubleCheck happens each time the code is compiled, providing a list of potential bugs in the debugger. GHS is also working on providing a scale of the severity of the bugs, from mission critical to code that does not conform to a particular syntax.

MULTI 5.0 also introduces a new distributed build environment that enables developers to take advantage of a site's computing resources, which are often idle and underutilised, to build applications in parallel over the network. Distributed builds often result in immediate build time reductions of between 30 per cent and 80 per cent, and the software detects when computing resources can be used.

“Distributed builds, source code analysis, and fast simulators enable faster time to market while generating a more reliable product,” said Tom Zavisca, director of engineering at Green Hills Software. “With these new product introductions, Green Hills Software has again extended its technology lead in device software optimization by bringing enterprises a value proposition that will greatly benefit their product development process.”

For more information, visit www.ghs.com

"