• 0
anzunden

DMA config initialize hung on Arty Z7

Question

Hi, I want to run simple DMA transfer (not using scatter gather) application program on the attached design.

But the program is always hung when running XAxiDma_CfgInitialize(&AxiDma, Config) function. The JP4 jumper is set on QSPI mode and the running configuration mode is like the figure I attached.

The same program is run and not hung on XAxiDma_CfgInitialize(&AxiDma, Config)  if ran on ZYBO. But, with differences in run configuration mode. On ZYBO run configuration mode, I'm not using the initialization file and so not run the ps7_init. On Arty Z7 I need to use it, because if I'm not using it the internal error (No target with ID 64 in the system) will be occured.

What should I do?

DMA config init hang.JPG

DMA design.JPG

Run config mode.JPG

Edited by anzunden

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Hi @anzunden,

I have reached out to rest of my department to for some potential input for your issue.  I also did some research and found a xilinx forum thread that seems to resolve the issue here by using a counter to drive the S2MM channel of the AXI DMA or potentially increasing the size of stack and heap, because the program was not getting terminated after the execution.

cheers,

Jon

Share this post


Link to post
Share on other sites
  • 0

Hi @jpeyron, thank you again for answering.

So I've followed the solution on that link which shows the new run configuration. After I use that configuration, the program not get hung again! Now it worked until the end of the program. 

Thanks!

Share this post


Link to post
Share on other sites
  • 0
On 5/5/2017 at 1:46 AM, jpeyron said:

Hi @anzunden,

I have reached out to rest of my department to for some potential input for your issue.  I also did some research and found a xilinx forum thread that seems to resolve the issue here by using a counter to drive the S2MM channel of the AXI DMA or potentially increasing the size of stack and heap, because the program was not getting terminated after the execution.

cheers,

Jon

I'm having the same issue. Im using SDK 2016.2. My Run Configuration -

image.thumb.png.a37d2c3fa0150b979a120baa44455e01.png

image.thumb.png.c043e4768f53aca96a206003bf9a8e3f.png

FPGA Stops and No pointer to the current instruction is viewable. It happens at Status = XAxiDma_CfgInitialize(&AxiDma, CfgPtr);

 

Can you help me please!

Share this post


Link to post
Share on other sites
  • 0
On 11/11/2017 at 11:55 AM, kashyapgada said:

I'm having the same issue. Im using SDK 2016.2. My Run Configuration -

image.thumb.png.a37d2c3fa0150b979a120baa44455e01.png

image.thumb.png.c043e4768f53aca96a206003bf9a8e3f.png

FPGA Stops and No pointer to the current instruction is viewable. It happens at Status = XAxiDma_CfgInitialize(&AxiDma, CfgPtr);

 

Can you help me please!

Dear All,

I'd like to add, that after introducing a delay of about 5ms using freertos vTaskDelay just before AxiDMA initialization function, resolved the issue.

 

Regards
Kashyap

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now