Part Number: RM48L930
Other Parts Discussed in Thread: HALCOGEN, RM48L952
Support Path: /Product/Help with Device Selection/
Hello,
I am trying to enable the 8 MB of SDRAM on the Hercules HDK board. The HDK board contains a ISSI IS42S16400 SDRAM (1 MBit x 16 x 4 banks). I have read several similar older posts and have tried the following setup that is still not working:
1. in Halcogen, in the PINMUX tab, I checked the ENABLE_EMIF_CLK output
2. in Halcogen EMIF tab, enabled EMIF_SDRAM. I also unchecked the EMIF Async1-3 boxes.
3. in Halcogen EMIF SDRAM tab, I set the following:
t(rc) = 64; t(rp) = 21; t(rcd) = 21; t(wr) = 11; t(ras) = 43; t(rc) = 64; t(rrd) = 15; t(xsr) = 71; refresh period = 60; refresh cycles = 4096; CAS latency = 3; banks = 4;
pagesize = 256; SDRAM init time = 200
4. My CPU is running at a slow 40 MHz. (HCLK = GCLK = VCLK1 = VCLK2 = VCLK3 = 40 MHz)
5. I verified when running that GPREG1 bit 31 = 1
6. In Halcogen R4-MPU-PMU tab, Region 6 is enabled at SDRAM base address 0x80000000, size = 8 MB. Type = STRONGLY_ORDERED_SHARABLE, and Permisssion = PRIV_RW_USER_RW_EXEC
My code is running from flash memory and uses on-chip RAM at 0x0800_0000. As a test, in the debugger I stop execution and open a memory window to address SDRAM at 0x80000000 but see all ?????????. I cannot set or modify the memory at the SDRAM address.
Note, previously I tried editing the sys_link.cmd file and added a SDRAM (RW) memory definition at location 0x80000000, length 0x800000, then pointed the .sysmem section to use SDRAM. But when my code tried to malloc memory I got a data abort. So I reverted that change and just try to peek and poke memory in the debugger at location 0x80000000. (which appears as non-present memory indicated by 'question marks' (????????)
Can you suggest what is needed to get SDRAM working on the Hercules RM48 HDK board?
thanks,
Keith