DE10-Advanced revC demo: PC PCI Express Software SDK Linux

From Terasic Wiki

(Difference between revisions)
Jump to: navigation, search
(Created page with "<div style="color:#404040;">The FPGA System CD contains a PC Windows based SDK to allow users to develop their 64-bit software application on 64-bits Linux. CentOS 7.2 is recomme...")
Line 1: Line 1:
-
<div style="color:#404040;">The FPGA System CD contains a PC Windows based SDK to allow users to develop their 64-bit software application on 64-bits Linux. CentOS 7.2 is recommended. The SDK is located in the “CDROM/Demonstrations/PCIe_SW_KIT/Linux” folder which includes:</div>* PCI Express Driver
+
<div style="color:#404040;">The FPGA System CD contains a PC Windows based SDK to allow users to develop their 64-bit software application on 64-bits Linux. CentOS 7.2 is recommended. The SDK is located in the “CDROM/Demonstrations/PCIe_SW_KIT/Linux” folder which includes:</div>
 +
* PCI Express Driver
* PCI Express Library
* PCI Express Library
* PCI Express Examples
* PCI Express Examples
 +
<div style="color:#404040;">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 project and rebuild the driver. The ID is defined in the file PCIe_SW_KIT/Linux/PCIe_Driver/altera_pcie_cmd.h.</div>
-
<div style="color:#404040;">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 project and rebuild the driver. The ID is defined in the file PCIe_SW_KIT/Linux/PCIe_Driver/altera_pcie_cmd.h.</div>
+
<div style="color:#404040;">The PCI Express Library is implemented as a single .so file named terasic_pcie_qsys.so.This file is a 64-bit library file. With the library exported software API, users can easily communicate with the FPGA. The library provides the following functions:</div>
-
 
+
* Basic data read and write
-
<div style="color:#404040;">The PCI Express Library is implemented as a single .so file named terasic_pcie_qsys.so.This file is a 64-bit library file. With the library exported software API, users can easily communicate with the FPGA. The library provides the following functions:</div>* Basic data read and write
+
* Data read and write by DMA
* Data read and write by DMA
-
 
<div style="color:#404040;">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.</div>
<div style="color:#404040;">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.</div>

Revision as of 18:33, 27 August 2018

The FPGA System CD contains a PC Windows based SDK to allow users to develop their 64-bit software application on 64-bits Linux. CentOS 7.2 is recommended. The SDK is located in the “CDROM/Demonstrations/PCIe_SW_KIT/Linux” 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 project and rebuild the driver. The ID is defined in the file PCIe_SW_KIT/Linux/PCIe_Driver/altera_pcie_cmd.h.


The PCI Express Library is implemented as a single .so file named terasic_pcie_qsys.so.This file is a 64-bit library file. With the library exported 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.