HAN Pilot Platform
Demonstration Manual
90
www.terasic.com
September 6, 2019
PCIE.h
TERASIC_PCIE_AVMM.h
SDK library file, defines constant and data structure
The main program PCIE_DDR4.cpp includes the header file "PCIE.h" and defines the controller
address according to the FPGA design.
The base address of BUTTON and LED controllers are 0x4000010 and 0x4000020 based on
PCIE_BAR4, in respectively. The on-chip memory base address is 0x00000000 relative to the
DMA controller.
The above definition is the same as those in PCIe Fundamental demo
.
Before accessing the FPGA through PCI Express, the application first calls PCIE_Load to
dynamically load the TERASIC_PCIE_AVMM.DLL. Then, it call PCIE_Open to open the PCI
Express driver. The constant DEFAULT_PCIE_VID and DEFAULT_PCIE_DID used in
PCIE_Open are defined in TERASIC_PCIE_AVMM.h. If developer change the Vendor ID and
Device ID and PCI Express IP, they also need to change the ID value define in
TERASIC_PCIE_AVMM.h. If the return value of PCIE_Open is zero, it means the driver cannot be
accessed successfully. In this case, please make sure:
The FPGA is configured with the associated bit-stream file and the host is rebooted.
The PCI express driver is loaded successfully.
The LED control is implemented by calling PCIE_Write32 API, as shown below:
The button status query is implemented by calling the
PCIE_Read32 API
, as shown below:
The memory-mapped memory read and write test is implemented by
PCIE_DmaWrite
and
PCIE_DmaRead API
, as shown below:
The PCIe link information is implemented by PCIE_ConfigRead32 API, as shown below:
Содержание HAN Pilot Platform
Страница 1: ......
Страница 92: ...HAN Pilot Platform Demonstration Manual 91 www terasic com September 6 2019...