One should also consider PI (primary input) and PO(primary output) sychronization when using discussing these modes.
$rcc(run): Both PI and PO events are propagated and cause synchronizationOriginally posted in cdnusers.org by ashvarma
$rcc(tbrun: Only PI events are propagated as scheduled, PO events are propagated only when there is a tbcall synchronization (axis_tbcall, tbcall region, DPI call).
$rcc(autorun): No PI or PO event synchronization can take place, only tbcall sync. is supported.
Also keep in mind that it is possible to dynamically switch design into different modes at run time, e.g. run to tbrun mode or vice-versa.