GTS AXI Streaming IP for PCI Express* Design Example User Guide
ID
817713
Date
10/23/2025
Public
2.1. Directory Structure
2.2. Generating the Design Example
2.3. Simulating the Design Example
2.4. Design Example Simulation Testbench
2.5. Compiling the Design Example
2.6. Hardware and Software Requirements
2.7. Program the FPGA
2.8. Installing the Linux Kernel Driver
2.9. Running the Design Example
A.1.1. ebfm_barwr Procedure
A.1.2. ebfm_barwr_imm Procedure
A.1.3. ebfm_barrd_wait Procedure
A.1.4. ebfm_barrd_nowt Procedure
A.1.5. ebfm_cfgwr_imm_wait Procedure
A.1.6. ebfm_cfgwr_imm_nowt Procedure
A.1.7. ebfm_cfgrd_wait Procedure
A.1.8. ebfm_cfgrd_nowt Procedure
A.1.9. BFM Configuration Procedures
A.1.10. BFM Shared Memory Access Procedures
A.1.11. BFM Log and Message Procedures
A.1.12. Verilog HDL Formatting Functions
2.8. Installing the Linux Kernel Driver
Before you can test the design example in hardware, you must configure the FPGA and then restart your computer to allow the enumeration to take place for the PCIe* device. After that, install the Linux kernel driver. You can use this driver to perform the following tests:
- A PCIe link test that performs 64 writes and reads
- Memory space DWORD reads and writes
- Configuration Space DWORD reads and writes
Note: Throughout this user guide, the term word DWORD has the same meaning as in the PCI Express* Base Specification. A word is 16 bits and a DWORD is 32 bits.
In addition, you can use the driver to change the value of the following parameters:
- The BAR being used
- The selected device (by specifying the bus, device and function (BDF) numbers for the device)
Complete the following steps to install the kernel driver
- Copy the software driver that is generated along with the design example in the "software" folder to your host system.
- In the host system, navigate to the ./software/kernel/linux directory of the software driver.
- Change the permissions for the install, load, and unload files
$ chmod 777 install load unload
- Install the driver
$ sudo ./install
- Verify the driver installation
$ lsmod | grep intel_fpga_pcie_drv
Expected Resultintel_fpga_pcie_drv 17792 0
- Verify that Linux recognizes the PCIe* design example
$ lspci -d 1172:000 -v | grep intel_fpga_pcie_drv
The expected result for the kernel driver in use:intel_fpga_pcie_drv
Note: If you have changed the Vendor ID, substitute the new Vendor ID for Altera's Vendor ID in this command.