spectrum
Member
Dear all,
i have a strange issue in a little board i developed, i am trying to debug it, but is the first time i am developing a circuit with sdram, and i can't get out alone, maybe here someone with sdram experience could help me with some checks/hints:
I have a MCF5307, connnected with an SDRAM from Micron, type MT48LC4M32B2 (16Mbytes).
Clock for the cpu is generated from an external oscillator, 40 Mhz. CPU speed is 2X (80Mhz, through PLL), but BUS_CLOCK exit from the CPU and that go to the sdram is divided by 2, so 40 Mhz.
The issue is the following: i run a simple strartup SDRAM test program, directly from inside de Micro SRAM: i write and read back, dword by dword, values to the external SDRAM, stepping through all the 16MB.
For an undefined period of time, can be of 10 minutes or hours, the test succeed. Then, suddenly, the test start fo fail at random locations (value read back is different from the value just writtten).
What could "probably" be excluded:
1) power supply, is 3.3 and seems quite stable, low ripple, low noise.
2) solderings, i checked many and many times, had this same issue also in another board.
3) SDRAM init sequence, is copied from other working applications.
What i think can be source of issues:
1) Clock, maybe is not stable, or have some drift in itime.
2) wiring issues, bus clock is 40Mhz, i don't know some non perfect ADDRESS/COLUMN/ROW signal wiring can cause the issue.
...
Any kind of suggestion is really appreciated.
Many thanks
Angelo
i have a strange issue in a little board i developed, i am trying to debug it, but is the first time i am developing a circuit with sdram, and i can't get out alone, maybe here someone with sdram experience could help me with some checks/hints:
I have a MCF5307, connnected with an SDRAM from Micron, type MT48LC4M32B2 (16Mbytes).
Clock for the cpu is generated from an external oscillator, 40 Mhz. CPU speed is 2X (80Mhz, through PLL), but BUS_CLOCK exit from the CPU and that go to the sdram is divided by 2, so 40 Mhz.
The issue is the following: i run a simple strartup SDRAM test program, directly from inside de Micro SRAM: i write and read back, dword by dword, values to the external SDRAM, stepping through all the 16MB.
For an undefined period of time, can be of 10 minutes or hours, the test succeed. Then, suddenly, the test start fo fail at random locations (value read back is different from the value just writtten).
What could "probably" be excluded:
1) power supply, is 3.3 and seems quite stable, low ripple, low noise.
2) solderings, i checked many and many times, had this same issue also in another board.
3) SDRAM init sequence, is copied from other working applications.
What i think can be source of issues:
1) Clock, maybe is not stable, or have some drift in itime.
2) wiring issues, bus clock is 40Mhz, i don't know some non perfect ADDRESS/COLUMN/ROW signal wiring can cause the issue.
...
Any kind of suggestion is really appreciated.
Many thanks
Angelo