Intel® Simics® Simulator for Intel® FPGAs: User Guide

ID 784383
Date 7/08/2024
Public
Document Table of Contents

5.5.4. Enable Real Time

In some cases, simulated or virtual time may run faster than real time; this can happen if the OS is in a tight idle loop or an instruction halts execution waiting for an interrupt, or if the host machine is simply sufficiently fast. This can cause problems for programs that interact with the real world. Some examples of this are a failure to establish a SSH connection due to timeouts, or an expected user input before a countdown expires. In these examples, as virtual time advances faster than real time, the timeout or countdown occurs earlier than expected.

A real-time object, when enabled, periodically checks the simulation speed and waits for a while if it is too high.

The following are the commands to enable and disable real time mode:

enable-real-time-mode [speed] [check_interval]
disable-real-time-mode

The speed argument specifies how fast simulated time is allowed to run, in percent of real time; default is 100. The check_interval argument specifies how often the check takes place, in milliseconds of simulated time; default is 1000. Higher values give better performance; lower values reduce the maximum difference between real and simulated time. Setting this to less than set-time-quantum has no effect.