DE10-Advanced revC demo: PC PCI Express Software SDK
From Terasic Wiki
The FPGA System CD contains a PC Windows based SDK to allow users to develop their 64-bit software application on 64-bits Windows XP/7/10. The SDK is located in the "CDROM\Demonstrations\PCIe_SW_KIT\Windows" folder which includes:
- PCI Express Driver
- PCI Express Library
- PCI Express Examples
The kernel mode driver assumes the PCIe vendor ID (VID) is 0x1172 and the device ID (DID) is 0xE003. If different VID and DID are used in the design, users need to modify the PCIe vendor ID (VID) and device ID (DID) in the driver INF file accordingly.
The PCI Express Library is implemented as a single DLL named TERASIC_PCIE_AVMM.DLL.This file is a 64-bit DLL. With the DLL is exported to the software API, users can easily communicate with the FPGA. The library provides the following functions:
- Basic data read and write
- Data read and write by DMA
For high performance data transmission, Altera AVMM DMA is required as the read and write operations are specified under the hardware design on the FPGA.