C++ Model and Header Files - C++ Model and Header Files - 2026.1 English - UG1399

Vitis High-Level Synthesis User Guide (UG1399)

Document ID
UG1399
Release Date
2026-06-23
Version
2026.1 English

In the Blackbox C/C++ files page, provide the C++ files that form the functional model of the RTL IP. This C++ model is only useful during C++ simulation and C++/RTL co-simulation. Combine the RTL IP with Vitis HLS results to form the output of synthesis.

Figure 1. Blackbox C/C++ Files Page
  1. Open the Blackbox C/C++ Files page.
  2. Add the C++ source and header files that implement the functional model of the RTL IP. Use these files only for C++ simulation and C++/RTL co‑simulation.
  3. (Optional) Click Edit CFLGAS and specify compiler or linker flags for the C++ functional model.
  4. Click Next to open the C File Wizard page.

The C File Wizard page lets you specify the values used for the C functional model of the RTL IP.

  1. Enter the C Function name that represents the RTL IP.
  2. Enter the C Argument Name for each function argument. Match each argument name to a corresponding RTL port.
  3. Select the C Argument Type for each function argument.
  4. Select the C Port Direction for each argument to match the direction of the corresponding RTL port.
  5. Select the RAM Type for the interface, if applicable.
  6. Configure the RTL Group Configuration by mapping each C argument to its corresponding RTL signal name.
  7. Click Next.
Figure 2. C File Wizard Page