| prd Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

prd Documentation

The Xilinx Partial Reconfiguration Decoupler driver can be used to provide a boundary between the static logic and a Reconfigurable Partition during Partial Reconfiguration.The PR Decoupler supports the following features:

- All Interface types registered in the Vivado Design Suite are supported, including custom interfaces.
- Non-Vivado Design Suite interfaces are supported.
- The decoupling behaviour can be configured for each interface.
- Each interface can have Clock Domain Crossing support.
- Optional AXI4-Stream based control.
- Optional AXI4-Stream based Status.
- Optional AXI4-Lite based status and control.

Initialization and Configuration

- XPrd_LookupConfig(DeviceId) - Use the device identifier to find the static configuration structure defined in xprd_g.c. This is setup by the tools. For some operating systems the config structure will be initialized by the software and this call is not needed.
- XPrd_CfgInitialize() is used for initialisation. The user needs to first call the XPrd_LookupConfig() which returns the Configuration structure pointer which is passed as a parameter to the XPrd_CfgInitialize().

Threads

This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.

Asserts

Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining, at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that users leave asserts on during development.

Building the driver

The XPrd driver is composed of several source files. This allows the user to build and link only those parts of the driver that are necessary.

    MODIFICATION HISTORY:

    Ver   Who     Date          Changes

    1.0   ms     07/14/16      First release
    1.1   ms     01/16/17      Updated the parameter naming from
                               XPAR_PR_DECOUPLER_NUM_INSTANCES to
                               XPAR_XPRD_NUM_INSTANCES to avoid compilation
                               failure for XPAR_PR_DECOUPLER_NUM_INSTANCES as the
                               tools are generating XPAR_XPRD_NUM_INSTANCES
                               in the generated xprd_g.c for fixing MISRA-C
                               files. This is a fix for CR-966099 based on the
                               update in the tools.
          ms     03/17/17      Added readme.txt file in examples folder for
                               doxygen generation.
          ms     04/05/2017    Modified comment lines notation in functions
                               of prd examples to avoid unnecessary description
                               which was displayed while generating doxygen.
    2.2   Nava   06/22/2023    Added support for system device-tree flow.