-
Notifications
You must be signed in to change notification settings - Fork 461
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Axi DMA consistently returns DECERR #66
Comments
Is this a spurious DECERR, or does this correspond to a DECERR on bresp? If the latter, you have the destination address wrong or something else in your AXI infrastructure is screwed up. |
I confirm that DECERR is on bresp. Can you suggest to me how to check where could be the problem? |
Sorry, I'm not familiar with the IPI flow. At any rate, DECERR is generated by the interconnect when it cannot decode the address. So either you're providing the wrong address, or the interconnect addressing is not configured correctly. |
Good point. I have done another test, connecting the Axi DMA to an Axi BRAM Controller. In this configuration, it seems that everything is ok, so is missing "something" in the connection between the AXI in PL and the AXI HP0 in the PS. I will keep you posted 👌 |
@alexforencich did you ever tried the Axi DMA connected to the PS on a custom design? If yes, can you give me any advice for the Vivado / bare metal solution? |
Not that specific module, but I have used the AXI DMA IF module on a Zynq as part of Corundum and it worked fine. This was with Linux running on the PS, and it basically worked on the first try once I got petalinux to build. |
Hello,
I am currently working on utilizing the Axi DMA module through PYNQ. I have created an HLS Axi Lite module that allows me to control the Axi DMA IP module using wires. However, whenever I attempt to send a stream of 128 32-bit values (setting the addressing to 32 bits in your module), I observe that the array of values I send is not being stored (the flow should be: I send an array of values via Axi Stream, and I expect them in the CPU's address space, received through AXI). Upon closer inspection, I noticed that with every transaction, I encounter the DECERR error.
The configuration flow I use for the Axi DMA module is as follows:
Phase 1 (simultaneously):
write_enable
to 1write_abort
to 0read_enable
to 0s_axis_write_desc_addr
to the physical address of the arrays_axis_write_desc_len
to 128s_axis_write_desc_tag
to 0Phase 2:
s_axis_write_desc_valid
to 1Phase 3:
Phase 4:
Particularly, when analyzing with ILA, I consistently observe the DECERR error. I would appreciate any guidance or insight into resolving this issue.
Thank you.
The text was updated successfully, but these errors were encountered: