This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

am3359 ddr2 writting problem

Other Parts Discussed in Thread: AM3359

Hi,

we have some problems with running a new design based on am3359 with a 256mb DDR2 (same distribution as beaglebone). After some test we have conclude that all the processor design is ok, but when we try to write on to DDR2 external memory we obtain a double writting with only a real write function. To clarify this problem, I'll show you a easy test code for am335x.gel initiation code file.:

hotmenu TestMemWR()
{
unsigned int pattern, count=0;
GEL_TextOut("Starting write\n");
pattern=0x10100000;
while(1)
    {
    
    WR_MEM_32(DDR_BASE_ADDR+count, pattern);
    pattern++;
    GEL_TextOut("Read value in reg %x : %x \n",,,,,count,RD_MEM_32(count+DDR_BASE_ADDR));
    count=count+4;
    if(count >= 0x0FFF){count=0;pattern=0;}
    }
}

Whit this test we obtain that all positions are writting ok, but when we tested on memory Browser we can to see a double writting, one on the correct writing address and a correlative address. This code running ok on beaglebone. Example of writing error:

writting on address 0x80000004--> our system write this position and the 0x80000014

writting on address 0x80000014--> our system write this position and the 0x80000004

writting on address 0x80000028--> our system write this position and the 0x80000038

writting on address 0x80000038--> our system write this position and the 0x80000028

The problem seem to be a problem with address lines, but we've been tested all the signals and we haven't obtain any solution. Could be a problem of timings on the signals???? (all the board have been designed under ddr2 rules).

Any solution????

Thanks, Mag.

  • The problem has been resolved!!!!! We finally made a new reflow curve for ddr chip, and all is fully working!!!!!!

    I'm sure that the problem has in a address A3 line, that their bga ball wasn't with a good contact with pcb pad.

    But I've a question about how memory ddr2 could write two characters on memory with only one write code?????? Some expert on memories could explain how is possible this issue ?????

    Thanks a lot!!!!!