Black Box Configuration M-Function - 2024.1 English

Vitis Model Composer User Guide (UG1483)

Document ID
Release Date
2024.1 English

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).

Figure 1. Parameter Dialog

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.