E2 Studio debugger cannot access SDRAM memory. (Debugger "Step Over" issue related)

Dear Colleagues!

are there any news about the "Step over" debugging issue first observed with E2 Studio 7.6.0?

https://community.renesas.com/tools/e2studio/f/e2studio-forum/15231/after-upgrading-to-7-6-0-debugging-with-step-over-is-not-fully-functional 

I have just checked our projects with 2024-01 and found no encouraging changes. Debugging of main() routine works, but if the execution stopped at the breakpoint in the middle of application - "Step Over" behaves the same as "Step In" - it is not possible to avoid entering every function on the way.

This time I decided to be a bit less lazy and investigate the situation more. In the "Debugger Console"  I see some "Cannot access memory at address" messages after stopping at the breakpoint.

We are using FreeRTOS. Resources for its tasks (Stack memory etc) are allocated on memory area, provided by SDRAM (0x8000000 - 0x8400000).

Execution started with creating root task that we call "generic". Stack for this task is allocated 0x801e8a8 - 0x80228a8.

If I stop at breakpoint in the generic task loop - following message comes in "Debugger Console" view:

Breakpoint 1, TaskGeneric (pParam=<error reading variable: Cannot access memory at address 0x8022898>) at ../src/generic_task.cpp:343

343 DigOuts_ProcessPulses();

so it looks like debugger (?) has no access to task's stack memory from SDRAM area. If I try investigate it in "Memory" view I see bunch of "??????"-s.

Are there any suggestions or extra initialization for gdb that may help accessing the memory?

Thank you and have a nice Weekend!

Parents
  • Hi Siarzhuk,

    For the first question, I found that the "step over" works well unless you set the breakpoint in task creation.

    For the second question, could you tell me what MCU and the SDRAM work mode you are using now?

    BR,

    NP_Renesas

  • Thank you for the hint!

    I have checked my Debug configurations and found that SDCS bus width was set to default 8 bit one. After changing it to 16 bit the SDRAM access problem looks like gone - both the task stack and the "Memory" View are looking healthy now. Quick check for the "Step Over" problem was also successful - I can debug inside of the task context too.

    Thanks a lot!

Reply
  • Thank you for the hint!

    I have checked my Debug configurations and found that SDCS bus width was set to default 8 bit one. After changing it to 16 bit the SDRAM access problem looks like gone - both the task stack and the "Memory" View are looking healthy now. Quick check for the "Step Over" problem was also successful - I can debug inside of the task context too.

    Thanks a lot!

Children
No Data