I am having a problem accessing the SDRAM from my application running on-chip. I started with a netxduo example, IAR Workbench, and am attempting to transfer data from a PC via TCP/IP to the EVK and store the data in the external SDRAM. I don't seem to have the magic to allow access to the SDRAM. I have looked at other examples with use the sdram build option but I don't see any "special" initialization for pin configurations that are different from what I have configured. I'm assuming there is some configuration/initialization required to access the external SDRAM but I need some help pointing me in the right direction.
Thanks in advance.
Hello, my name is Pavel, and I will be supporting your case, I reviewed your information and maybe this thread could help you.
In this maybe you could find what do you want to do.
Solved: i.MXRT1170-EVK hello world example loading - NXP Community
I you have clear what do you want to do check this thread.
I.MX RT - How to boot to SDRAM - NXP Community
RT1050 SDRAM app code boot from SDcard burn with 3 tools - NXP Community
Best regards,
Pavel
The issue I am having appears to be a conflict of pin assignments between 1G ethernet and the SDRAM. By default, only one of those two devices can be used. I need to figure out how to configure the pins with alternate pin assignments for one of the two interfaces using the config tool NXP provides. None of the example projects in the SDK utilize both SDRAM and 1G ethernet, so there isn't a pin_mux.c file available that shows the pin configuration I need. I am working on figuring out the alternate pin configuration.
Hello, I recommend share on internal case your schematic, if you wanted, I could open for you can continue the support, could you let me know what is this pin?
Best regards,
Pavel
Thanks for your response.
I am not trying to load text or data into the external SDRAM chip. I simply want to be able to use that memory in a project that runs in on-chip memory. I am transferring a large amount of data over TCP/IP and want to store it in the external SDRAM and then process it after the transfer. Are there drivers/devices/etc. that I need to include? Change the link file (I am using the IAR IDE)? Some clock(s) that need to be initialized?
Hello, maybe the method what are you looking for is the non-XIP.
How to Enable Non-XIP Boot on i.MX RT Series EVK (nxp.com)
Check this app note.
Best regards,
Pavel
That's not it. I have code running on chip. I simply want to access the external SDRAM from my code. I am using IAR IDE, SDK 2_15_000_MIMXRT1170-EVK. I can run example projects that are built for SDRAM access and they work fine. I'm guessing that some pin configuration is causing problems with accessing address 0x80000000. I get an CPU exception if I attempt to read/write to address 0x80000000. I am using 1G ENET, debug console (LPUART1), and I2C pins in the pin_mux.c initialization code.
Hello, my apologies if the information was not useful, I´m research more information, could you please review this and tell me what is the most near to your application?
SDRAM as primary RAM on custom board hard faults - NXP Community
I believe this is the most near what you are looking for.
How to utilize SDRAM for Memory Expansion on NXP RT1170 Kit? - NXP Community
By the way on the SDK there is an example to use the SDRAM maybe that configuration could help you well.
/evkmimxrt1170_semc_cm7
The sdramc example shows how to use SEMC controller driver to initialize the external SDRAM chip.
Best regards,
Pavel