Skip to content

Linux kernel driver for memory mapped PCIe - FPGA communication.

License

Notifications You must be signed in to change notification settings

BBN-Q/PCIe-FPGA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PCIe-FPGA

A linux kernel driver for PCIe - FPGA communication.

Quick Start

FPGA

The driver is currently written for a Arria II GX dev. board using a hard IP PCI core and a QSys memory map. A block RAM is used as a ring buffer to copy data to the PC.

  1. Load the sof bitfile into the FPGA either via the USB-Blaster or the web interface that boots from the reference design in flash. If the bit file loads correctly the debugging LED's will flash out a counting pattern to let you know it's alive.
  2. Perform a software-reboot of the computer so the PCI bus picks up the new configuration. Keep an eye on the LED's to make sure the board didn't lose power.

Driver Software

  1. Clone/download the repository into some convenient location.
  2. Open a shell prompt and move into the repo. directory: cd /path/to/repo
  3. Move into the driver folder and compile the driver: cd src/driver; make
  4. Run the load_driver script as root: sudo load_driver.sh
  5. Move back into the test directory. Compile the test program with: g++ -std=c++11 test.cpp -o test.out and then run the executable for some simple read/write tests.

About

Linux kernel driver for memory mapped PCIe - FPGA communication.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published