Been trying to transfer some data from FPGA to internal memory with no success.
I can see that the DSP accesess the fpga through emif but no data is transfered. Direct access works though. What am I doing wrong.
I have attached my program.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Been trying to transfer some data from FPGA to internal memory with no success.
I can see that the DSP accesess the fpga through emif but no data is transfered. Direct access works though. What am I doing wrong.
I have attached my program.
Hi Moses,
Welcome to the TI E2E forum. I hope you will find many good answers here and in the TI.com documents and in the TI Wiki Pages (for processor issues). Be sure to search those for helpful information and to browse for the questions others may have asked on similar topics (e2e.ti.com).
Please provide below information to support.
1. DSP Part number.
2. EVM or Custom Board.
3. Packages used and its version(CCS, MCSDK etc)
Thank you.
Hi,
Take a look the section "Setting Up a Transfer" in the keystone EDMA3 controller user guide. I will check your zip file. Please mention your error when transfer using EDMA.
Once again thank you for your comments/reply.
The problem is that when I trigger the EDMA, I can confirm that the EMIF is actually accessed, but when I check the data transfered nothing is there. But when I access the EMIF directly, the data is read successfully. So I am just wondering if its my EDMA setup or there is another problem.
Hi,
I have checked your code for EDMA setup, It seems ok. But can you double check with edma_test.c file, which is available in the CSL folder under the PDK package.
Hi,
Did you validate or compared with edma_test.c file other that transfer completion interrupt part of code?
Is there any error return message when get failed?
how did you check whether the data was transfered, had you considered cache issues?
Moses,
Are you done and got your problem figured out? Please post your solution, if you solved it.
Feng hopefully pointed you to that solution, but it would be nice to confirm it, please.
If you need to debug you program:
1. Change TCINT to EN so you can see something to confirm the transfer happened. Otherwise, change STATIC to DIS.
2. Set breakpoints at the calls to EdmaRead and EdmaWrite.
3. Run to the first one and look at your EDMA3 PARAM in a memory browser window.
4. What are the hex values of the Src and Dst register values?
5. Run to the next breakpoint and look at your IPR bit or PARAM, depending on what you did in step 1.
What can you confirm that ran?
Regards,
RandyP