但是在ATOM C2758，酷睿 I5上分配4G以下的地址时，DMA都是OK的。
As per what I understand here, this is using a custom driver to run the DMA test, where if the address allocation from the host is less than 4G, the test will fail.
Do you test the an829 design before?
What is the "address width of accessible PCIe memory space" setting in the design?
From the FPGA site, the PCIe is configured as AVST GEN2x4, then there is a custom module to connect the Avalon ST interface with the DMA? What is the memory size selected from the PCIe GUI's BAR tab?
When issue a memory write or read TLP from the Host, did you able to see the TLP appear at the Avalon ST interface?
If possible, please help to explain why is the DMA not working? Is this unable to receive the TLP from the Avalon ST interface of PCIe IP, or the PCIe IP sent incorrect packet to the DMA module in the FPGA?
If the read request is sent out from the AVST to DMA. At this point, the PCIe IP still working fine. Do you mean the AVST interface does not receive the completion from the custom DMA? If yes, then this is required to debug from the DMA perspective.
Thank you for the clarification. I don't aware if there is a similar issue. At this point, it does not look like the PCIe AVST problem yet. The PCIe AVST is a hard block, it will pass the TLP that received from the host to the DMA.
From the AER, does it show the completion timeout or any other error? If yes, it means that the Host does not return the completion.
If the completion package does not observe from the AVST interface, then you might need to debug it by using a PCIe protocol analyzer to confirm if the host really sent a valid completion TLP to the endpoint (FPGA).
For AER definition, you can refer to section 9.5:
If you are using Linux, the command below might be helpful to read the AER:
setpci -s B:D.F ECAP_AER+0x10.l
setpci -s B:D.F ECAP_AER+0x04.l
Yes, this is one of the debug item. Another thing is to capture the signal tap to confirm whether the PCIe HIP AVST interface did receive the completion TLP, this can help to understand whether the packet is missing.
I will set this case to close-pending for now. Please do not hesitate to get back to me within the next 20-day close-pending period if more help is needed.