Visible to Intel only — GUID: uuo1512177765449
Ixiasoft
1. About this Document
2. DMA AFU Description
3. Register Map and Address Spaces
4. Software Programming Model
5. Running DMA AFU Example
6. Compiling the Accelerator Function (AF)
7. Simulating the AFU Example
8. DMA Accelerator Functional Unit User Guide Archives
9. Document Revision History for the DMA Accelerator Functional Unit User Guide
A. Enabling Hugepages
Visible to Intel only — GUID: uuo1512177765449
Ixiasoft
5. Running DMA AFU Example
Before you begin:
- Intel recommends you refer to the Quick Start Guide for your Intel® PAC with Intel® Arria® 10 GX FPGA to be familiar with running similar examples. Before you proceed through the following steps, verify that the OPAE_PLATFORM_ROOT environment variable is set to the OPAE SDK installation directory.
- The sample application requires two 1 GB hugepages. Refer to the Enabling Hugepages section for details on how to set the hugepages on both Red Hat Enterprise Linux (RHEL) and Ubuntu systems.
Complete the following steps to download the DMA AF bitstream and build and run the example software:
- Change to the DMA application and driver directory:
cd $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw
- Build the driver and application:
$ make
- Download the DMA AFU bitstream:
sudo fpgasupdate $OPAE_PLATFORM_ROOT/hw/samples/dma_afu \ /bin/dma_afu_unsigned.gbs
- Execute the host application:
./fpga_dma_test 0
The DMA software takes a few minute to populate test buffers and verify the results. The software prints the following messages during a successful run:Running test in HW mode Buffer Verification Success! Buffer Verification Success! Running DDR sweep test Buffer pointer = 0x7f6edd1fc000, size = 0x100000000 (0x7f6edd1fc000 through 0x7f6fdd1fc000) Allocated test buffer Fill test buffer DDR Sweep Host to FPGA Measured bandwidth = 6660.504131 Megabytes/sec Clear buffer DDR Sweep FPGA to Host Measured bandwidth = 6840.013692 Megabytes/sec Verifying buffer.. Buffer Verification Success!
Note: The test application prints bandwidth results for different transfer sizes, source and destination addresses.