An imported module is represented in Vitis Model Composer by a Black Box block. Information about the imported module is conveyed to the black box by a configuration M-function. This function defines the interface, implementation, and the simulation behavior of the black box block it is associated with. The information a configuration M-function defines includes the following:
- Name of the top-level entity for the module
- VHDL or Verilog language selection
- Port descriptions
- Generics required by the module
- Synchronous single clock or asynchronous multiple independent clock configuration
- Clocking and sample rates
- Files associated with the module
- Whether the module has any combinational paths
The name of the configuration M-function associated with a black box is specified as a parameter in the dialog box (parity_block_config.m).
Configuration M-functions use an object-based interface
to specify black box information. This interface defines two
objects: SysgenBlockDescriptor
and SysgenPortDescriptor
. When
Model Composer invokes a configuration M-function, it passes the
function a block descriptor:
function sample_block_config(this_block)
A SysgenBlockDescriptor
object provides
methods for specifying information about the black box. Ports on
a block descriptor are defined separately using port
descriptors.