Simics Hindsight

Hindsight is the core element of Simics. It instantiates, configures and controls the virtual system environment allowing engineers to develop, integrate and test anything from individual boards, to subsystems or the full system.

Simics DML allows users to create models of their own target systems

Virtual System Environment

Hindsight instantiates the virtual system environment(s) in which full system models – themselves executing real operating systems and application stacks - will run. The speed, accuracy and features of the virtual system environment allow engineers to proceed with the software and system development, integration and test of complex heterogeneous systems.

The virtual system environment created by Hindsight will support nearly any real-world digital system, from a single CPU core, to a system consisting of hundreds of processors. Each of the individual virtual platforms can use any combination of supported processors to run its own custom application stack(s).

Regardless of the complexity of the full system model, Hindsight provides the scalability, flexibility and features necessary to ensure that simulation speeds are fast enough to allow engineers to proceed with system and software development, integration and test.

Control and Debug Center

Hindsight provides the developer with the configuration, command, control, and debug interface to the virtual system environment. It allows developers to load virtual platforms and functional scripts, start/stop/resume model execution, and run the system forward or reverse.

Engineers benefit from the ability to save and restore the complete system state including every register and memory location; to gain run-to-run repeatability guaranteeing that the software, hardware and the whole system will behave in exactly the same way for each subsequent run (unless you choose to provide new stimuli!); and to use hardware or software breakpoints and watchpoints that work the same whether the system runs in the forward or reverse directions.

Hindsight includes a built-in source level debugger offering hardware visibility and control far beyond what JTAG can provide on physical hardware. Hindsight also supports standard networking capabilities between virtual and physical platforms, as well as an integration API. As a result, developers can use the Hindsight debugger in tandem with their preferred development tools (e.g. Eclipse, Wind River Workbench, Green Hills Software Multi, QNX, Enea OSE, gdb/ddd, and many others).

Support for advanced scripting and device and system logging capabilities allow developers to automate repetitive tasks and to perform detailed system analysis via Hindsight-native or external tools.

For detailed information, please refer to the Using Simics Hindsight for Software Development   user manual.

Features: 
  • Supports any digital system from one to hundreds of boards
  • Mix and match CPU architectures, operating systems, and endian-ness
  • Reverse Execution lets developers watch bugs “undo” themselves
  • Run-to-Run Repeatability eliminates unpredictable behavior
  • Visibility and control of every bit of hardware allows developers to inject faults or interactively debug any system component
  • Simics Full System stop freezes everything in its tracks … all cores, processors, clocks and devices
  • Connectable to 3rd party software debuggers and development tools
Benefits: 
  • Define, Develop and Deploy real-world systems: multi RTOS, multi-architecture, multi-board, multi-chassis
  • Replace labs of equipment, with virtual targets
  • Iterate virtually to reduce hardware spins
  • Equip every engineer with a development platform
  • Develop, debug and integrate system software while the hardware takes shape
  • Detect and correct critical system bugs sooner
News & Events | Feedback | Contact Us | About Us | Partners | Academia
All Content © 2004-2009 Virtutech unless otherwise noted | Privacy Policy