My 21369board is mapping Bank 0 to SDRAM, but the example code about overlay is running on 21369ezkit which mapping Bank 2 to SDRAM.
I had modified the example code, but it dosen't work.
can you figure me out what should I do more?
I think that there is a confusion here. I meant about the .xml used by the VDSP++ under the below path:
C:\Program Files (x86)\Analog Devices\VisualDSP 5.0\System\ArchDef\ADSP-21369-proc.xml
This file initializes the SYSCTL , SDCTL, SDRRC and EPCTL etc as per the ADSP-21369 EZ-KIT. Since the SDRAM is connected to bank 0 on your board, please make sure that the SDCTL, SDRRC and EPCTL in this file is initialized as per your system.
I have one quick question. Did you make sure that the default xml values also modified to initialize the SDRAM in the bank 0?
sorry,the correct map.xml is here
Thank you for your help,
I set the value of EPCTL in the xml file ,and the board woks fine now ,
Do you have the C code that implements the pre-load overlay manager?
I do not have a overlay manager that is written in C. I think it is good to have the overlay manager in assembly as the size of this function will be less. Mainly it needs to DMA the code to internal memory and start the execution of the downloaded function.
I want a pre-load overlay manager, and a example code implements it on 21369 board.
The code written in assembly is ok.
I am sorry I missed to see the pre-load overlay manager mentioned in your earlier mail. I understand that by pre-load you are looking for the overlay manager which will keep the function to be loaded in a earlier state itself, instead of the DMA happening just before the call. Please confirm me on the same.
At this point I do not have an example code for the same. It should be possible by modifying the existing example code for the same. I can assist you in developing this code.
You are right.
I had modified the code ,but it doesn't work. see the attached, Thank you for your help ,hope we can work it out.
Please find the attached code, which performs overlay preloading written for ADSP-21375. Maybe you can use this as a reference to modify code for ADSP-21369 processor.
Kindly let us know in case of any clarification.
I studied the code you supplied. But I think it isn't a pre-load overlay manager(EE-66 ,Page 7).
The pre-load overlay manager incorporates the ability to transfer one overlay to internal memory while the core executesa function from another overlay. Instead of the core sitting idle while the overlay DMA transfer occurs, the core enables the DMA then begins executing another function.
The above example code only provides the Framework regarding pre-load overlay manager. It depends on your application how you want to divide your code and make use of the framework, in order to achieve your intended operation.
Hence we request you to try developing your code which incorporates the ability to transfer one overlay to internal memory while the core executes a function from another overlay, and let us know in case you face any difficulty or problem.
Thanks for your reply, now I know the difference between the framework and my code.
I modified the code for 21369 ,but it can't run over the function , what should I do to analysis the code?
Kindly find the attached code which performs the SDRAM overlay for ADSP-21369 processor. However please note that this code does not have the pre-load framework in it.
So based on the code which I posted earlier for ADSP-21375, you can make changes/modify the code to make it work according to your application needs.
Thank you very much for your help, I modefied the code and add the pre-load framework into it .
Now it runs normally on my 21369 board when using the Emulator , but it only has a normal run occasionally when it is downloaded into the Flash.
A example code can work when I use the same mathod of downloading into the Flash.
Is there any wrong with the modefied code ? or my board?
DSP type: ADSP21369 KSZ-1A, Flash : AM29LV160B SDRAM: MT48LC4M32B2
Regarding “but it only has a normal run occasionally when it is downloaded into the Flash.”
>>Have you initialized the SDRAM controller properly in the “USER_INIT” section of the boot kernel properly?
In order to debug if the code is getting loaded properly or not, I would request you to kindly refer to the following FAQ, which talks about debugging an application which is not booting properly:
You are correct, I didn't initialize the SDRAM controller in the “USER_INIT” section of the boot kernel . It work fine now.
Thank you very much!
Glad to know that your issue is resolved.
Sorry for the unclearly expression.
what I want is an example code about pre-load overlay manager(EE-66) , but the code EE-66 supported is not useful on 21369 board, so I don't have an effective code even it is written in assembly now.
Retrieving data ...