Simulating a design using the Modular NoC that has XPM NMUs/NSUs is the same
as simulating a design using the AXI NoC IP instantiated in a Block Design. After
validate_noc is executed, the Modular NoC
connectivity and constraints are merged with the AXI NoC IP connectivity and constraints
from the Block Design and the simulation flow proceeds. Even if validate_noc is not called explicitly by the user, it is called
automatically when simulation is launched or exported in Vivado. A new block named xlnoc.bd
is built to encompass the collection of connection components, such as NPSs and NIDBs,
that are necessary for implementing the NoC routing solution.
When launching simulation using the launch_simulation command the tool creates the new block xlnoc.bd and a new top-level wrapper file named
<design>_wrapper_sim_wrapper.v to stitch
the xlnoc block into the simulation. The original <design>_wrapper is not modified but is instantiated in the new
top-level wrapper along with a single instance of the constructed xlnoc.
To create the wrapper without launching the Vivado simulator, you can use the option launch_simulation -scripts_only. When the simulation is launched, the tool
internally executes the validate_noc command. You need
to ensure that the output products are generated for the BDs and IPs in the design prior
to launching the simulation.
Below is a code snippet prior to generating the scripts for launching simulation where you only have the original top-level wrapper under simulation.
When the simulation scripts are generated using the launch_simulation
–scripts_only command, the tool adds the xlnox.bd and
the <design>_wrapper_sim_wrapper.v file under the simulation
sources.
For more information on the NoC simulation, see the Versal Adaptive SoC Programmable Network on Chip and Integrated Memory Controller LogiCORE IP Product Guide (PG313), or for Versal AI Edge Series Gen 2 and Versal Prime Series Gen 2, see the Programmable Network on Chip (NoC2) LogiCORE IP Product Guide (PG406) and Integrated DDR5/LPDDR5/5X Memory Controller LogiCORE IP Product Guide (PG456).