Multi Channel DMA Intel® FPGA IP for PCI Express Design Example User Guide
ID
683517
Date
4/17/2023
Public
A newer version of this document is available. Customers should click here to go to the newest version.
3.5.2.5.1. Build and Install Netdev Driver
3.5.2.5.2. Enable VFs if SRIOV is Supported
3.5.2.5.3. Configure the Number of Channels Supported on the Device
3.5.2.5.4. Configure the MTU Value
3.5.2.5.5. Configure the Device Communication
3.5.2.5.6. Configure Transmit Queue Selection Mechanism
3.5.2.5.7. Test Procedure by Using Name Space Environment
3.5.2.5.8. PIO Test
For x4 BAS:
- Set the PCIe_SLOT “2” in rte_pmd_mcdma.h(dpdk/drivers/net/mcdma/rte_pmd_mcdma.h)
- X4 BAS supports burst length 32 by default. In the file perfq_app.h (dpdk/examples/mcdma-test/perfq/perfq_app.h)
#define IFC_MCDMA_BAS_X4_BURST_LENGTH 32
If the BAS support is enabled on hardware, enable the following flag in: dpdk/dpdk/drivers/net/mcdma/rte_pmd_mcdma.h
#define PCIe_SLOT 0 /* 0 – x16, 1 – x8 */
To enable the config IFC_QDMA_INTF_AVST in the file "software/dpdk/dpdk/patches/v20.05-rc1/dpdk/drivers/net/mcdma/base/mcdma_ip_params.h", use the following command:
#undef IFC_QDMA_INTF_AVST
Commands:
- To verify the write operation:
./build/mcdma-test -- -b 0000:01:00.0 --bar=0 --bas -s 512 -tFigure 39. BAS Write Operation
- To verify the read operation:
./build/mcdma-test -- -b 0000:01:00.0 --bar=0 --bas -s 512 -rFigure 40. BAS Read Operation
- To verify the write and read operation:
./build/mcdma-test -- -b 0000:01:00.0 --bar=0 --bas -s 512 -zFigure 41. BAS Write and Read Operation
Performance test:
The below log is collected on Gen3x16 H-tile./build/mcdma-test -- -b 0000:01:00.0 --bar=0 --bas_perf -s 16384 -zFigure 42. Performance Test
Note: For DPDK: VF/PF cannot run BAM+BAS+MCDMA simultaneously within one VM or hypervisor, You need to run one instance of VF / PF in independent VM.