AXI Test IP

This IP-Core is used for testing the AXI communication between PS and PL. The IP-Core calculates \(C=A \cdot B\) with different data types. For all data types except for the float calculation, the input and output values are scalar. The float calculation input and output is a 2x2 matrix.

Use this IP-Core to test read/write operations by AXI between PL and PS using the Hardware Abstraction Layer.

../../../_images/axi_testip_topview.svg

Fig. 123 Top view of the Module.

../../../_images/axi_testip_innerview.svg

Fig. 124 Top view of the Module.

Table 29 Interfaces of the AXI test IP

Port Name

Port Type

Data Type

Target Platform Interfaces

A_int32

Input

int32

AXI

B_int32

Input

int32

AXI

C_int32

Output

int32

AXI

A_uint32

Input

uint32

AXI

B_uint32

Input

uint32

AXI

C_uint32

Output

uint32

AXI

A_float

Input Vector (4)

float

AXI

B_float

Input Vector (4)

float

AXI

C_float

Output Vector (4)

float

AXI

A_fx_1_16_5

Input

signed 16 bit fixed point 5 bit fraction

AXI

B_fx_1_16_5

Input

signed 16 bit fixed point 5 bit fraction

AXI

C_fx_1_16_5

Output

signed 16 bit fixed point 5 bit fraction

AXI

Driver function reference

typedef struct uz_myIP2_t uz_myIP2_t

Data type for object myIP2.

struct uz_myIP2_config_t

Configuration struct for myIP2.

Public Members

uint32_t base_address

Base address of the IP-Core

uint32_t ip_clk_frequency_Hz

Clock frequency of the IP-Core

uz_myIP2_t *uz_myIP2_init(struct uz_myIP2_config_t config)

Initializes and instance of the myIP2 driver.

Parameters:
  • config – Configuration values for the IP-Core

Returns:

Pointer to initialized instance

int32_t uz_myIP2_multiply(uz_myIP2_t *self, int32_t A, int32_t B)

Calculates C=A*B.

Parameters:
  • self – Pointer to IP-Core instance that was initialized with init function

  • A – First factor

  • B – Second factor

Returns:

Product of A times B