SRIOV Config Tab - 1.0 English

Versal Adaptive SoC Integrated Block for PCI Express LogiCORE IP Product Guide (PG343)

Document ID
PG343
Release Date
2024-05-30
Version
1.0 English

The SRIOV Configuration Advanced parameters, as shown in the following figure, are described in this section.

Figure 1. SRIOV Configuration Tab
General SRIOV Config
This value specifies the offset of the first PF with at least one enabled VF. The total number of VF in all PFs plus this field must not be greater than 256.
Number of PFx VFs
Indicates the number of virtual functions associated to the physical function. A total of 252 virtual functions are available that can be flexibly used across the four physical functions. Number of VFs for any enabled PF cannot be 0.
First VF Offset
Indicates the offset of the first virtual function (VF) for the physical function (PF). PFx offset is always fixed. PF0 resides at offset 0, PF1 resides at offset 1, PF2 resides at offset 2, and PF3 resides at offset 3.

A total of 252 virtual functions are available. They reside at the function number range 4 to 255.

First VF offset always start from 4.

Virtual functions are mapped sequentially with VFs with PFs taking precedence. For example, if PF0 has two virtual functions and PF1 has three, the following mapping occurs:

The PFx_FIRST_VF_OFFSET is calculated by taking the first offset of the virtual function and subtracting that from the offset of the physical function.

PFx_FIRST_VF_OFFSET = (PFx first VF offset - PFx offset)

In the example above, the following offsets are used:

PF0_FIRST_VF_OFFSET = (4 - 0) = 4
PF1_FIRST_VF_OFFSET = (6 - 1) = 5

The initial offset for PF1 is a function of how many VFs are attached to PF0 and is defined in the following pseudo code:

PF1_FIRST_VF_OFFSET = FIRST_VF_OFFSET + NUM_PF0_VFs - 1

Similarly, for other PFs:

PF2_FIRST_VF_OFFSET = FIRST_VF_OFFSET + NUM_PF0_VFs + NUM_PF1_VFs - 2 PF3_FIRST_VF_OFFSET =
        FIRST_VF_OFFSET + NUM_PF0_VFs + NUM_PF1_VFs + NUM_PF2_VFs - 3
VF Device ID
Indicates the 16-bit Device ID for all virtual functions associated with the physical function.