Releases: Xilinx/Vitis_Libraries
2025.2 Update 1
Update
- Solver
- HLS tests relocated
- Documentation fixes
- DSP
- Documentation updates: Packet Switch Graph API added, CSV benchmark links updated
- VSS Mem tile members made public, to ease manual placement constraints
- Bitonic Sort - throughput regression fix
2025.2 Release
2025.2 Vitis Libraries Release Notes
Sub-Libraries Refocus for 2025.2
Starting with the 2025.2 release, the following PL (Programmable Logic) Vitis Libraries will no longer be maintained:
- codec
- data_analytics
- data_compression
- graph
- hpc
- quantitative_finance
- sparse
Users who still require these deprecated libraries can continue to access and use previous versions from earlier releases. AI Engine Vitis Libraries are not impacted.
Alveo Platform support for 2025.2
Starting with the 2025.2 release, some Alveo platforms will no longer be supported, including U200, U250, and U280. Users can continue using other Alveo platforms (including U50, U50LV, and U55C) to implement PL designs with similar performances.
Vitis DSP Library
The following features have been added to the library in this release:
-
Bitonic Sort - Disallowing inefficient configurations. Super Sample Rate (SSR) and use of cascades are now mutually exclusive. SSR=16 disallowed.
-
Cumulative Sum - New library element.
| Function | Namespace and class name |
|---|---|
| Cumulative Sum | xf::dsp::aie::cumsum |
This element adds an implementation of the cumsum() algorithm.
Supports AIE, AIE-ML and AIE-MLv2 devices.
-
Euclidean Distance -
- Removed a template parameter called
TT_DATA_OUTfrom the ED library element, since the input and output data types must be the same by definition. - Added support for AIE-MLv2 device.
- Removed a template parameter called
-
Function Approximation - Added support for Run Time Programmable (RTP) configuration of the lookup tables that determine the function approximation.
-
Packet Graph Switch - New library graph element.
| Function | Namespace and class name |
|---|---|
| Packet Switch Graph | xf::dsp::aie::pkt_switch_graph |
This element adds an implementation of a packet switch graph that can route multiple input packet streams to a wrapped instance of another graph, and then route the output from the wrapped graph to multiple output packet streams.
Supports AIE, AIE-ML and AIE-MLv2 devices.
Supported IP: FIR TDM.
- VSS FFT/IFFT - Adds support for cint16 data type and introduces resource optimizations.
Vitis Vision Library
Release notes
This section describes new features, changes to the existing library, and known issues.
PL additions/enhancements: :
• New Functions:
• Added reprojectImageto3d function
AIE additions/enhancements: :
• Updates:
• bug fixes
Known issues
• AMD Vitis™ GUI projects on RHEL83 and CEntOS82 may fail because of a lib conflict in the LD_LIBRARY_PATH setting. You need to remove ${env_var:LD_LIBRARY_PATH} from the project environment settings for the function to build successfully.
• rgbir2bayer, isppipeline_rgbir PL functions are not supplied with input images.
• lkdensepyroptflow fails to meet timing when URAM is enabled.
2025.1 Update 2
Update
- DSP Library update:
- Fix metadata for dds_mixer for better integration with Vitis Model Composer.
2025.1 Update 1
Update
- DSP Library update:
- Performance optimization for FIR TDM on AIE-ML v2.
- Fix metadata for dds_mixer for better integration with Vitis Model Composer.
2025.1 Release
2025.1 Vitis Libraries Release Notes
Vitis DSP Library
The following features have been added to the library in this release:
- Bitonic Sort - Added support for Super Sample Rate (SSR).
SSR offers parallel execution which improves performance and allows larger lists to be operated on.
- Convolution / Correlation - Added support for Run Time Programmable (RTP) configuration of vector G length to buffer implementation.
Buffer implementation supports vector G length to be passed during runtime.
- DDS Mixer / DDS Mixer Lut - Added support for Run Time Programmable (RTP) configuration of Phase Increment, and runtime configuration of Phase Offset and Phase Increment using Buffer port.
Both DDS Mixer and DDS Mixer LUT now support iobuffer input for Phase offset and RTP input for Phase Increment in addition to existing input options, allowing flexible configuration from PS or PL.
- Euclidean Distance - New library element.
| Function | Namespace and class name |
|---|---|
| Euclidean Distance | xf::dsp::aie::euclidean_distance |
This element adds an implementation of the euclidean distance (ED) algorithm.
Supports AIE and AIE-ML (EA) devices.
-
FIR TDM - Added support for Run Time Programmable (RTP) configuration of FIR coefficients.
-
Matrix-Vector Multiplication - Added support for:
-
Run Time Programmable (RTP) configuration of matrix A inputs. Input Matrix A can be configured as a buffer (
inA) or as an RTP port (matrixA). -
Streaming Interface of vector B inputs. Input
inBcan now be configured as a buffer or a stream port.
-
-
Matrix Multiplication - Introduced a new template parameter
TT_OUT_DATAto specify the data type of the output. -
FFT - Introduces a new VSS implementation of Super Sample Rate FFTs.
Vitis Motor Control Library
In the 2025.1 release, a new version of PWM (IP_PWM_V2) is provided, which is a new implementation of the PWM generation algorithm. Additionally, IP_VOLTAGE_MODULATION is also updated to support the new PWM generation algorithm.
Vitis Solver Library
In this release, two APIs running on AIE Engine have been added:
- Flexible QRD (QR decomposition), for complex float matrix input (using Householdere transformation method).
- Flexible cholesky decomposition, for complex float matrix input.
Vitis Ultrasound Library
The 2025.1 release added support for the VEK280 AIE-ML device with 20 new L1 APIs and 6 new L2 APIs. These APIs accommodate up to three data types (float, int32, and cint16), tailored to the characteristics of specific algorithms.
Vitis Vision Library
New Features and Functions
- PL additions/enhancements:
- Updates:
- Corrected ISP pipeline API in documentation
- Updates:
- AIE Additions/Enhancements:
- New Functions:
- Added Bicubic-resize function
- Updates:
- Minor bug fixes
- New Functions:
Known issues
- AMD Vitis™ software platform GUI projects on RHEL83 and CEntOS82 might fail because of a lib conflict in the
LD_LIBRARY_PATHsetting. For the function to build successfully, you must remove${env_var:LD_LIBRARY_PATH}from the project environment settings. rgbir2bayer,isppipeline_rgbirPL functions are not supplied with input images.- When URAM is enabled,
lkdensepyroptflowfails to meet timing.
2024.2 Update 3
Update
- Added a support section in the top level README.md to point to Adaptive SoC & FPGA Community Forums in preparation for closing the "Issues" GitHub tab. This will ensure better support for users going forward.
2024.2 Update 2
Vitis Vision Library Update
- PL additions/enhancements::
- New Functions:
- Added autogain function
- Created new L3 example of ISP with autogain
- Updates:
- Added NPC2 support for Remap function
- Corrected preprocess API in documentation
- Updated output format of initUndistoredRectifyMapInverse to 32SC1 (fixed point). Updated L3 stereopipeline example accordingly.
- New Functions:
- AIE Additions/Enhancements:
- New Functions:
- Added NV12-resize function
- Updates:
- Added g-gain parameter in gain correction. Updated Hybrid-ISP in L3 accordingly.
- Added yuy2-filter2d GMIO testcase
- Fixed TopK hang issue
- Updated computeMetadata function in GMIO datamovers
- Minor bug fixes
- New Functions:
Known issues
- Vitis GUI projects on RHEL83 and CEntOS82 may fail because of a lib conflict in the
LD_LIBRARY_PATHsetting. You need to remove${env_var:LD_LIBRARY_PATH}from the project
environment settings for the function to build successfully. rgbir2bayerandisppipeline_rgbirPL functions are not supplied with input images.lkdensepyroptflowfails to meet timing when URAM is enabled.
2024.2 Update 1
Update
- DSP Library update:
- Performance optimization for FIR TDM. Improved efficiency for handling maximum permitted values of SSR parameter for a given number of TDM channels on AIE devices.
- Ultrasound Library update:
- Update the tool and platform version in some of the READMEs, Makefiles and scripts
2024.2 Release
2024.2 Vitis Libraries Release Notes
Vitis Data Compression Library
The Lz4 decompression APIs have been enhanced for improving performance and for eliminating potential issues for extreme corner cases. The newly added API lz4DecompressEngine_NinMout has configurable output-port width and can provide up to 48% throughput improvement.
Vitis DSP Library
The following features have been added to the library in this release.
- AIE-MLv2 - New device support (EA) is being added to DSPLIB
Early Access (EA) support for AIE-MLv2 device is being added to the following library elements:
- Bitonic Sort
- DDS Mixer LUT
- DFT
- FFT
- FFT Window
- Filters
- TDM FIR
- Hadamard
- Kronecker
- Outer Tensor
- Matrix Mult
- Matrix Vector
- Sample Delay
- Config Helper - Console Interface script for configuring DSPLIB IPs
Config Helper works in conjunction with the DSPLIB metadata for helping users build legal configurations and generate resulting graphs for DSPLIB AIE-IPs.
- Bitonic Sort - New library element
| Function | Namespace and class name |
|---|---|
| Bitonic Sort | xf::dsp::aie::bitonic_sort |
This element adds an implementation of the bitonic sorting algorithm.
Supports AIE, AIE-ML, and AIE-MLv2 (EA) devices.
- FFT - New features and optimizations
In this release, a new parameter has been added to the FFT: TT_OUT_DATA. This parameter allows the output data type to differ from the input data type. For example, to allow TT_DATA (input) to be cint16 with `TT_OUT_DATA to be cint32. Also, various optimizations have been implemented to reduce the memory resource used by some configurations of the FFT.
- FFT 2D - New library element
| Function | Namespace and class name |
|---|---|
| fft_ifft_2d_graph | xf::dsp::aie::fft::two_d::fft_ifft_2d_graph |
This configurable design library element implements a 2D FFT/IFFT function, decomposing FFT algorithms into AIE Tiles and MEM Tiles.
Supports AIE-ML devices.
- FIR TDM - New features and optimizations
In this release, various optimizations have been implemented to optimize throughput and/or reduce memory footprint. In addition, new parameters have been added to the FIR TDM: TT_OUT_DATA and TP_CASC_LEN. These parameters enable the following:
-
The output data type can differ from the input data type. For example, to allow TT_DATA (input) to be cint16 with TT_OUT_DATA to be cint32.
-
The FIR workload can be split into multiple kernels connected through the cascade interface, offering increased throughput at the cost of additional resources.
-
Function Approximation - New library element
| Function | Namespace and class name |
|---|---|
| Function Approximation | xf::dsp::aie::func_approx |
This element provides a vectorized linear approximation of a function, f(x), for a given input data, x, using a configured lookup table of slope and offset values that describe the function.
- Mixed Radix FFT - New Features
In this release the dynamic point size has been added to the IP, selected by setting the new parameter TP_DYN_PT_SIZE to 1. This IP now supports cint32 and cfloat for TT_DATA and cint32 for TT_TWIDDLE.
- VSS FFT/IFFT 1CH (AIE + PL) - New library element
In this release a VSS (Vitis Sub-System) FFT/IFFT has been added to the DSPLIB. This configurable design element implements a single-channel DIT FFT/IFFT, decomposing FFT algorithm into AIE Tiles and PL (programmable logic).
Supports AIE and AIE-ML devices.
Vitis Motor Control Library
In the 2024.2 release, 12 new fine-grained function-level APIs are provided for lower-level utilization. These APIs include:
- angle_generation
- Clarke_Direct
- Clarke_Inverse
- demuxer_pi
- ps_iir_filter
- muxer_pi
- Park_Direct
- Park_Inverse
- PI_Control
- PI_Control_stream
- SVPWM
- voltage_modulation
Additionally, the L1/test/IP_FOC functionally becomes a register container module for managing all asynchronous control parameters.
Vitis Vision Library
New Features and Functions
- AIE Additions/Enhancements:
- New Functions:
- Added 2 new AIE-ML functions (PLIO & GMIO) targeting Versal devices: * Resize Bicubic * StereoLBM
- Updates:
- Minor bug fixes
- New Functions:
Known issues
- AMD Vitis™ software platform GUI projects on RHEL83 and CEntOS82 might fail because of a lib conflict in the LD_LIBRARY_PATH setting. For the function to build successfully, you must remove ${env_var:LD_LIBRARY_PATH} from the project environment settings.
- rgbir2bayer, isppipeline_rgbir PL functions are not supplied with input images.
- When URAM is enabled, lkdensepyroptflow fails to meet timing.
2024.1 Update 2
Update
- DSP Library update:
- Update the benchmark CSV files to rename the values of AIE_VARIANT from 1 and 2 to AIE and AIE-ML respectively.