trick/trick_source/sim_services/RealtimeSync/requirements.dox_in
2015-02-26 09:02:31 -06:00

47 lines
1.6 KiB
Plaintext

/**
@page LEVEL3 Realtime Synchronization Requirements
<b>LEVEL4</b> Trick shall be capable of synchronizing simulation time to a
real-time clock.
<b>LEVEL4</b> Trick shall be capable of running non-real-time.
[@anchor rt_non_real_time rt_non_real_time]
<b>LEVEL4</b> Trick shall provide the capability to switch between real-time and
non-real-time execution.
[@anchor rt_enable rt_enable]
[@anchor rt_disable rt_disable]
<b>LEVEL4</b> Trick shall detect when the current simulation job execution frame
takes longer than the real-time frame (overrun).
[@anchor rt_detect_overrun rt_detect_overrun]
<b>LEVEL4</b> Trick shall provide the option to respond to simulation overruns by
<b>LEVEL5</b> continuing to next frame of execution,
<b>LEVEL5</b> freezing, [@anchor rt_overrun_freeze rt_overrun_freeze]
<b>LEVEL5</b> or terminating. [@anchor rt_overrun_terminate rt_overrun_terminate]
<b>LEVEL4</b> The overrun criteria to cause a response shall be either:
[@anchor rt_overrun_criteria rt_overrun_criteria]
<b>LEVEL5</b> A single large overrun of a user specified size (in seconds), or
<b>LEVEL5</b> a user specified number of overruns is detected
<b>LEVEL4</b> Trick shall detect when the current simulation job execution frame is
equal to or shorter than the real-time frame (underrun).
[@anchor rt_detect_underrun rt_detect_underrun]
<b>LEVEL4</b> Trick shall wait for real-time to catch up to the
simulation time before starting the next frame of execution during an underrun.
<b>LEVEL4</b> Trick shall provide the option to release the processor (sleep) during
an underrun.
*/