void xsi_run(xsiHandle design_handle, XSI_UINT64 time_ticks);
void Xsi::Loader::run(XSI_INT64 step);
This function runs the simulation for the given amount of time specified in kernel precision units. A kernel precision unit is the smallest unit of time precision specified among all HDL source files of the design. For example, a design can have two source files. One specifies a precision of 1 ns and the specifies a precision of 1 ps. The kernel precision unit becomes 1 ps, as that time unit is the smaller of the two.
A Verilog source file specifies the time precision using the `timescale directive.
Example:
`timescale 1ns/1ps
In this example, the time unit after the / (1 ps) is the time precision. VHDL has no equivalent of `timescale.
Also, you can adjust the kernel precision unit through the use of the xelab command-line options --timescale, --override_timeprecision,
and --timeprecision_vhdl. See xelab, xvhdl, and xvlog xsim Command Options for information on the
use of these command-line options.
xsi_run blocks
until the specified simulation runtime has elapsed. Your program and the Vivado simulator share a single thread of execution.