Complex Multiplier with Latency - 2024.1 English

Vitis Model Composer User Guide (UG1483)

Document ID
Release Date
2024.1 English

This example shows how to create a complex number multiplier. The following shows the xlcpxmult.m file which specifies the xlcpxmult function.

function [xr, xi] = xlcpxmult(ar, ai, br, bi)
  xr = ar * br - ai * bi;
  xi = ar * bi + ai * br;

The following diagram shows the subsystem:

Figure 1. Complex Multiplier Subsystem Generated by Your Tool

Two delay blocks are added after the MCode block. By selecting the option Implement using behavioral HDL on the Delay blocks, the downstream logic synthesis tool is able to perform the appropriate optimizations to achieve higher performance.