When updating a diagram prior to simulation or code generation, Simulink® automatically converts a virtual bus to a nonvirtual bus (and a nonvirtual bus to a virtual buses) in cases such as when the virtual bus is an input to, or output from:
An S-Function block
A Stateflow® chart
When you pass a bus signal into a referenced model, Simulink makes the bus a virtual or nonvirtual bus to match the type of bus specified for the input block it feeds. Bus signal outputs are virtual or nonvirtual, based on the specification for the output block. For bus signals driving a root-level output block, Simulink performs a similar conversion. For more information, see Bus Data Crossing Model Reference Boundaries.
The conversion consists of inserting hidden Signal Conversion blocks into the model where needed. If no bus object is specified at the port to which the virtual bus connects, conversion to a nonvirtual bus fails.
To avoid the need for automatic bus conversion, manually insert a Signal Conversion block. For details, see the Signal Conversion documentation.