Main Content

AXI4 Master Source

Generate random access memory data

  • Library:
  • SoC Blockset / Hardware Logic Testbench

  • AXI4 Master Source block


The AXI4 Master Source block generates random access memory data to advanced extensible interface AXI4-based data interface blocks. You can use this block as a test source block for simulating AXI4-based data applications.

The block accepts a control bus and outputs data along with a control bus.



expand all

Control bus from the data consumer signaling that data consumer is ready to accept data, specified as a scalar. This control bus comprises these control signals:

  • wr_ready — Indicates the block can send data to the data consumer

  • wr_complete — Indicates the write transaction has completed at the data consumer

  • wr_bvalid — Indicates the data consumer has accepted the transaction

Data Types: WriteControlS2MBusObj


expand all

Output AXI data to the data consumer. This value is returned as a scalar or vector.

You can change the data type of the output data. For more information, see the Data type parameter.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

Control bus to the data consumer, returned as a bus. This control bus comprises these control signals:

  • wr_addr — Specifies the starting address that the block writes

  • wr_len — Specifies the number of data elements in the write transaction

  • wr_valid — Indicates the data sampled at the wrData output port is valid

Data Types: WriteControlM2SBusObj


expand all

Select the data type format for the output AXI data.

Click the button to display the Data Type Assistant, which helps you to set the data type for the wrData output port. For details, see Specify Data Types Using Data Type Assistant.

Specify the dimensions of the output data as a positive scalar or an array. This value defines the length of the transaction.

Example: 1 specifies a scalar sample.

Example: [10 1] specifies a vector of ten scalars.

Specify the address to which the block writes the data. This value must be a nonnegative integer.

Specify the initial time after which the write operation starts. This value must be a nonnegative scalar.

Specify the generation type for the output as one of these values:

  • counter — Generate data from a counter, based on the selected data type.

  • random — Generate random data.

  • ones — Generate data with all the bits as ones, based on the selected data type.

  • workspace — Generate data from the MATLAB® workspace.

Specify the value from which the counter starts. The valid range of counter values depends on the selected value for the Data type parameter. If this value is out of the valid range, it is rounded off to the nearest valid value.

For example, if Data type is uint8 and this value is 6.787, this value is rounded to 7.


To enable this parameter, set the Data generation parameter to counter.

Specify the workspace variable from which output data is generated. This parameter can be any MATLAB-supported variable name.


The workspace variable must be a numerical array.


To enable this parameter, set the Data generation parameter to workspace.

Specify the discrete time at which the block outputs data. This value must be a scalar.

Introduced in R2019a