|
Version: Vitis 2025.2
Vitis Functional Simulation (VFS) allows you to functionally simulate AI Engine graphs and/or HLS kernels in both MATLAB® and Python™ environments on Linux. It presents simple APIs to compile and simulate your design. VFS is designed to be easy to use and provides a familiar environment for users who are already accustomed to using MATLAB or Python.
Vitis Functional Simulation (VFS) leverages "varray" (Vitis array), a module supporting all the data types available in AMD devices in both MATLAB and Python environments and allowing conversion and casting between the types.
For more information on Vitis Functional Simulation and Vitis array, refer to Chapter 6 of Embedded Design Development Using Vitis User Guide (UG1701).
Source the appropriate settings file:
[shell]% source <vitis_install_folder>/settings64.sh
Launch Python (supports 3.9 to 3.13). The "numpy" module is required.
# import the following two modules
import vfs
import varray as va
Optional: Create a virtual environment to install necessary modules or simply
source create_venv.sh.
Launch MATLAB (supports 2024a, 2024b and 2025a).
This directory contains simple AI Engine Graphs and HLS kernels to show how to get started with VFS, as well as a more representative system example.
| Example | Description |
|---|---|
varray |
Showcasing basic varray operations |
aie/GraphMultiplyByComplex |
Simple design showcasing the basic structure of a VFS code |
aie/bfloat16 |
Demonstrates partial data being passed to the AIE graph |
aie/FIRasyncRTP |
Instantiation of a symmetric FIR filter with async RTP port from Vitis_Libraries |
aie/gmio |
Simple weighted-sum design that leverages GMIO |
hls/SumOfFour |
Simple design showcasing the basic structure of a VFS code |
hls/array_pointer_data_type |
Demonstrates a kernel with array and pointer inputs |
hls/arrayOfHlsStreams |
Demonstrates using an HLS kernel where the ports are arrays of streams |
hls/kernel_invert |
Demonstrates usage of the fixed-point varray data type |
aie_hls/64kifft |
64k-point IFFT implemented using a 2D breakdown containing resources in both AI Engine and PL. Also includes a Jupyter notebook version. Link to original design. |
GitHub issues are used for tracking requests and bugs. For questions, go to Support.
Copyright © 2025 Advanced Micro Devices, Inc.

