Sep 18, 2021
11:24 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sep 18, 2021
11:24 AM
Greetings,
XMC product used : XMC4700 - 2048 - 357kb ram - 144pin, XMC link - (jlink) debugger
The application that I am developing is hitting the internal RAM limits. My PCB design has an external RAM that I would like to use for storing larger buffers.
My application also has an external flash that we are using with a file system also configured using the EBU.
I have configured the EBU pins so that all three areas are enabled.
EBU Region 1 : 0x6400 0000 for external RAM
EBU Region 2,3 for FLASH.
EBU Region 0 : Unused
I have configured the linker file with a section for the external SRAM
And in my application code I use
To ensure that the linker sticks this buffer into the external RAM.
When I try to debug this code with and set a break point where I access this memory the break point does not occur and the code simply goes to the wazoo.
When I probed my pins I could see that the chip select for the external ram was not activated,
I am not sure how the EBU actually toggles the pins when an access occurs so that I can probe it.
I am having a hard time finding an example code/ configuration that shows how to access external ram and interface with. Any help would be awesome!
Additional Notes :
I am using XMC-link probe to debug which is J-link with VSCODE as the IDE.
Thank you in advance.
XMC product used : XMC4700 - 2048 - 357kb ram - 144pin, XMC link - (jlink) debugger
The application that I am developing is hitting the internal RAM limits. My PCB design has an external RAM that I would like to use for storing larger buffers.
My application also has an external flash that we are using with a file system also configured using the EBU.
I have configured the EBU pins so that all three areas are enabled.
EBU Region 1 : 0x6400 0000 for external RAM
EBU Region 2,3 for FLASH.
EBU Region 0 : Unused
I have configured the linker file with a section for the external SRAM
And in my application code I use
__attribute__((aligned(4))) uint8_t test_buffer[1024] __attribute__ ((section ("EXT_RAM"))) = {0};
To ensure that the linker sticks this buffer into the external RAM.
When I try to debug this code with and set a break point where I access this memory the break point does not occur and the code simply goes to the wazoo.
When I probed my pins I could see that the chip select for the external ram was not activated,
I am not sure how the EBU actually toggles the pins when an access occurs so that I can probe it.
I am having a hard time finding an example code/ configuration that shows how to access external ram and interface with. Any help would be awesome!
Additional Notes :
I am using XMC-link probe to debug which is J-link with VSCODE as the IDE.
Thank you in advance.
Solved! Go to Solution.
1 Solution
Attachments are accessible only for community members.
Sep 21, 2021
11:45 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sep 21, 2021
11:45 PM
Hi,
Please find the XMCLib based example code for EBU for your reference. Meanwhile let us the code you have used at your end so that we can review the steps followed.
Best Regards,
Vasanth R S
Please find the XMCLib based example code for EBU for your reference. Meanwhile let us the code you have used at your end so that we can review the steps followed.
Best Regards,
Vasanth R S
1 Reply
Attachments are accessible only for community members.
Sep 21, 2021
11:45 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Sep 21, 2021
11:45 PM