Reverse Debugging is a new paradigm that simplifies bug analysis. It greatly improves debugging experience for the developers and reduces debugging effort dramatically. The program is run unmodified and without breakpoints until a misbehavior occurs. From there, developers step back in time and investigate what happened.
Here you can download free 15 days trial versions of our products.
If you are interrested in our recent development, subscribe to our newsletter.
A Backstep Ahead!
In the conventional debugging process, developers must inspect program states at breakpoints carefully. Once passed, program states cannot be re-inspected to gather additional information. The program must be restarted. Not only is this tedious and annoying, but non-deterministic behavior as caused by IRQs and race conditions cannot be reproduced safely in each successive run.
Whith the Simulics Reverse Debugger, developers do not need to know in advance what they are looking for. The program can be run without breakpoints and without error hypothesis. When an error occurred, developers can run back in time and investigate what did happen. They do no more need to capture all the information that might be relevant before continuing program execution. Developers can step the program back and forth, like forwarding and rewinding a tape. Every position in program runtime can be inspected many times.
Features at a Glimpse:
Reverse Debugging – The program can be run in both directions. Developers can inspect past program states and non-deterministic events. This simplifies software debugging significantly.
Rewind and Modify – After a backstep, developers can modify the target state and fork off an alternative execution branch.
Complement Your Toolchain for Early Software Development!
With the Simulics Platform Simulator you can enable your customers to execute application binaries before the target is available in hardware. The Simulics Modeling Kit helps you to create and modify platform models in a short time. Reverse Debugging works with the created models out-of-the-box.
Automated Instruction Decoder Synthesis – The creator of a model denotes instruction word formats and opcodes in almost the same way as they are defined by the Instruction Set Manual. The instruction decoder is derived completely automatically.
IO Device Modeling API – The Simulics Modeling Kit includes a Java API to model busses, IRQs, MMUs and IO devices.
A Deeper Insight into Your System.
Whether for Early Software Development or for a deeper insight into your system. The Simulics Plattform Simulator is fast and versatile. It perfectly complements real hardware in the software development process. Reverse Debugging is available for all simulation models.
Instruction Set Architectures:
More instruction set and platform models can be created using the Simulics Modeling Kit.
Simulation in Real-Time – The performance of cycle-accurate simulators is not suitable for reactive software development (10kIPS to 1 MIPS). While developers demand fast targets that they can use in interactive IDE sessions, the exact timing behavior is of minor importance in the early stages of software development. The Simulics Platform Simulator performs more than 500 MIPS and is suited for the simulation of hardware targets in real time.
Dynamic Run-Time Instrumentation – In most cases, instrumentation is invasive and based on the execution of modified software. The Simulics Platform Simulator supports dynamic run-time instrumentation. The source code of the software is not required for this. The unmodified application binary is executed.
A Deeper Insight – The Simulics Plattform Simulator removes the limitations of real hardware. All of the system and device registers are fully visible. The Simulics Reverse Debugger stops the complete system, including devices. This allows inspection in a consistent state.
Test Automation – Increase your productivity and product quality with test automation. The Simulics Platform Simulator includes a powerful, integrated script language with numerous commands for test support.
Work with Your Familiar Tools – Simulics Reverse Debugger and Simulics Platform Simulator integrate an interface for GDB and Eclipse/CDT. You can use these products from within your established toolchain.
Wir are a young company with new ideas and concepts for a more effective and efficient system analysis.
Tool Development and Tool Integration – We are developing customer specific test and analysis tools as well as modifications and plugins of our products for your needs. We also help you with the integration of our products in your toolchain.
Modeling – Whether special purpose instruction sets, multi core platforms or special peripheral devices. We develop platform models of all kinds for you that can be used with Simulics Platform Simulator and Simulics Reverse Debugger.
Consulting – We evaluate your problem and find a tailor-made solution with you.