Better code in less time
What if you could reverse time? The TimeMachine debugging suite offers a range of innovative trace analysis tools that let you debug both forward and backward in time, making it easier to solve the hardest bugs. With TimeMachine, embedded developers can find and fix bugs faster, optimize with ease, and test with confidence.
The TimeMachine debugging suite extends the range of Green Hills Software’s popular MULTI integrated development environment (IDE) by providing a window into the complex interactions in software that can result in bugs, performance problems, and testing nightmares. By presenting this information in easy-to-understand displays, TimeMachine enables developers to quickly navigate through trace data and produce better code in less time.
With TimeMachine you can:
- debug both forward and backward in time, making it easier to find even the hardest time
- make your software run faster than you thought possible by examining program execution history to find previously unknown bottlenecks
- Accelerate debugging by stepping backward a single step at a time into functions you've already stepped over
- leverage gigabytes of execution history to verify that your program has been fully tested
Fix bugs faster
At the heart of the TimeMachine suite, the TimeMachine debugger combines
a familiar debugger interface with innovative functions that enable developers
to step and run forward and backward through their code. In addition,
all standard debugging tools are available, such as execution and data
breakpoints. Using these capabilities, developers can more easily track
down the root cause of bugs—even if they occurred long before the
problem manifested itself. With TimeMachine, developers can more readily
explore processor execution and, as a result, find and fix bugs faster.
Besides the TimeMachine debugger, the TimeMachine suite offers tools that make debugging applications faster and more efficient, including:
- PathAnalyzer: By providing a view of an application’s call stack over time, the PathAnalyzer helps identify bugs and inefficiencies in code. With the PathAnalyzer, developers can quickly determine where the code diverts from the expected path as well as track down anomalous bugs caused by events such as unexpected interrupts or other random glitches.
- EventAnalyzer: The TimeMachine suite is integrated with the
MULTI EventAnalyzer, which displays a view of operating system events
over time. This display helps track down bad interactions such as deadlocks
between various tasks that cause undesirable behavior in your system.
TimeMachine supports both Green Hills Software operating systems: the
and the RTOS.
The TimeMachine debugger interface lets you step and run through code—both forward and backward in time.
An invaluable part of the TimeMachine tool suite, the PathAnalyzer provides a view of your application's call stack over time. Click for larger view
Optimize and Test
To get the maximum performance from your device software applications, the TimeMachine suite enables you to:
- Easily measure important system metrics such as interrupt latency, context switch time, and boot time with great accuracy and precision
- Perform detailed performance analysis over long periods of time
- Quickly debug a performance problem once it’s located
Along with the PathAnalyzer and EventAnalyzer, the TimeMachine suite integrates the patented MULTI Profiler to offer the following capabilities to help you more easily identify performance problems in embedded code:
- PathAnalyzer: By making it obvious which functions take the most time, the PathAnalyzer is the ideal tool for pinpointing performance bottlenecks. With its intuitive interface, the PathAnalyzer can offer a unique level of detail to make performance optimization easier and more productive.
- EventAnalyzer: The EventAnalyzer provides a graphical display of operating system events such as kernel service calls, interrupts, exceptions, and context switches. With this information, it’s quickly apparent what operations take the most time and where optimization efforts should be focused.
- Profiler: The integration of the TimeMachine suite with the MULTI Profiler helps to quickly determine how much time an application spends in various places. The MULTI Profiler can create reports with valuable and revealing information about blocks, source lines, and functions to make it easier to find and fix performance problems.
During testing, The TimeMachine suite’s powerful code coverage tools allow you to easily determine which particular instructions in the application were executed. This information makes it easy to analyze the quality of your test suite and identify segments of code that have not been thoroughly tested.
The EventAnalyzer provides a graphical display of operating system events such as kernel service calls, interrupts, exceptions, and context switches to help you pinpoint where to focus optimization efforts. Click here for a larger view.
The MULTI Profiler provides code coverage reports that show which blocks and source lines have not been executed.
The trace data analyzed by the TimeMachine Suite can be collected by using a microprocessor with a trace port or by using an instruction set simulator.
Real-time hardware trace
For applications that include microprocessors with built-in, real-time trace ports, trace data can be collected with the Green Hills Probe V4 without any intrusion, instrumentation, or modification to system behavior. The system behaves identically while collecting trace data, so you can use the TimeMachine suite to track down bugs and accurately measure performance metrics.
Key features of the Green Hills Probe include:
- 4GB of high-speed trace memory with 40 Gbits/second of aggregate bandwidth
- The fastest download speeds, capable of sustaining a 120MHz JTAG clock rate with nearly 100% data payload utilization
- Supports all leading debug and trace interfaces on thousands of processors (click here for supported processors)
With 4GB of high-speed trace memory and 40 Gbits/second aggregate bandwidth, Green Hills Probe V4 is the fastest and most capable JTAG and trace debug probe Green Hills Software has ever made.
Green Hills Software simulators
Green Hills Software’s instruction set simulators include full TimeMachine support so that software debugging and analysis can be performed without connecting to target hardware.
With a simulator, software development can begin before target hardware is available. Besides getting a jump on initial code writing, simulators are helpful throughout the development cycle, enabling debugging and testing to continue even when target hardware is in short supply or when there are known hardware bugs that may not have software work-arounds.