5.11.1 Starting and stopping simulation time

Clients can use simulationTime_run() and simulationTime_stop() to start and stop simulation time.

These functions return asynchronously to the point in time when the simulation time starts or stops progressing. simulationTime_run() can return:

  • Before the simulation time starts progressing.
  • After the simulation time starts progressing.
  • After the simulation time briefly started to progress, then stopped again, for example when running to a nearby breakpoint.

simulationTime_stop() can return before or after the simulation time stops progressing.

Callers must monitor the IRIS_SIMULATION_TIME_EVENT event source to find out when the simulation time starts or stops progressing.

Simulation time progresses until one of the following events happen:

  • A breakpoint that stops the simulation time is hit.
  • An event counter overflow occurs, with counterMode.overflowStopSim=True.
  • simulationTime_stop() is called.
  • An instance has executed the steps specified in step_setup().

Any kind of stepping, for example instruction stepping, is achieved by calling step_setup() followed by calling simulationTime_run().

Non-ConfidentialPDF file icon PDF version101196_0100_03_en
Copyright © 2018, 2019 Arm Limited or its affiliates. All rights reserved.