i am facing issues in initializing and accessing Micron DDR2 ram on my custom MX28 hardware, i get data abort, r14_abt on debug port, description as follows
I am trying to bring up our custom board with MX28 processor and Micron MT47H32M16HR-25E:G, We do not use any OS as linux or Windows on our hardware, we do have our own operating system which we will port for this custom hardware.
As a first step in porting i am doing evaluation of each peripheral on our custom board, till now Debug UART and Application UARTs are working well on my hardware, i have written stand alone codes which i download to internal RAM using sb_loader and can execute the code
For DDR2, i have taken reference of code from obds to initialize and read/write to DDR2, i also have MX28 EVK to test my code, the code i written for DDR2 evaluation works well on MX28 EVK which has Winbond W971GG6JB-25 on it.
Differences in Winbond and Micron are as follows
column size and row size is same, all the timing parameters are same, micron is 4 bank device, winbond is 8 bank
so i have modified only HW)DRAM_CTRL31 register value, rest of the values i kept same as from obds i got from iMX community
i have attached txt file with CPU clock and DDR initialization code
when i try to execute this code, it freezes and i get "Data Abort r14_abt : 0x000004C0" on DEBUG port, the value after r14_abt changes if i do any modifications in initialization values, but its not working
i have also attached design page for hardware design for CPU and DDR2
Original Attachment has been moved to: MX28_CPUClk_DDR2Init.c.zip