Author Topic: SDRAM chip  (Read 7597 times)

0 Members and 1 Guest are viewing this topic.

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
SDRAM chip
« on: May 12, 2015, 06:10:01 am »
I need to repair a Linux embedded device. The device does not boot and I suspect it is because of memory chips malfunction (SDRAM fault). That device consists of 4 SDRAM chips( each of 16 bits to get 64-bit mode). Is there any way how to check which SDRAM module is faulty?
Thank you for your feedback
 

Offline JBaughb

  • Regular Contributor
  • *
  • Posts: 85
  • Country: us
Re: SDRAM chip
« Reply #1 on: May 12, 2015, 06:48:59 am »
What makes you think the sram is faulty?
 

Offline John_ITIC

  • Frequent Contributor
  • **
  • Posts: 509
  • Country: us
  • ITIC Protocol Analyzers
    • International Test Instruments Corporation
Re: SDRAM chip
« Reply #2 on: May 12, 2015, 06:56:41 am »
If these are BGA DDR3 discrete ICs then you will have a hard time debugging this. If these are TSOP SDR SDRAMs then could possibly scope the /RAS and /CAS signals to check for the refresh cycles from the SDRAM controller. If one chip is flakey then it would simply not read back what was written and, without proper logic analyzer view, you will never be able to debug this intelligently.

What remains is trial and error. Re-reflow bad BGA chips perhaps?
Pocket-Sized USB 2.0 LS/FS/HS Protocol Analyzer Model 1480A with OTG decoding.
Pocket-sized PCI Express 1.1 Protocol Analyzer Model 2500A. 2.5 Gbps with x1, x2 and x4 lane widths.
https://www.internationaltestinstruments.com
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #3 on: May 12, 2015, 08:46:44 am »
Thank you for your replies.
@JBaughb: It has symptoms that shows SDRAM problem.
@John_ITIC:
Quote
/RAS and /CAS signals to check for the refresh cycles from the SDRAM controller
SDRAM controller is a part of the CPU.Do you think that /RAS and /CAS signals should be sent all the time while SDRAM controller( CPU) is up( having voltage)?Or after some time, CPU ( SDRAM controller), not having a proper response, will stop sending /RAS and /CAS signals ?
And how  /RAS and /CAS signals can help? I think they can say that SDRAM controller( CPU) is OK, but not SDRAM chip. Or am I wrong?
Quote
without proper logic analyzer view, you will never be able to debug this intelligently
But what is a proper  logic analyzer?
Thank you for help
« Last Edit: May 12, 2015, 09:01:38 am by Jane »
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26875
  • Country: nl
    • NCT Developments
Re: SDRAM chip
« Reply #4 on: May 12, 2015, 08:32:10 pm »
Linux devices usually boot from flash in some form. I'd check that first before deciding it is fun to debug memory.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #5 on: May 13, 2015, 05:45:53 am »
@nctnico: Yes, booting is from flash, but before, SDRAM is checked.  If SDRAM were faulty, there is no chance to boot at all.
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #6 on: May 14, 2015, 06:56:10 pm »
Isn't  any hardware expert here yet?
 

Online wraper

  • Supporter
  • ****
  • Posts: 16834
  • Country: lv
Re: SDRAM chip
« Reply #7 on: May 14, 2015, 08:46:21 pm »
Hardware expert will say that it is 100 times easier to replace the all of the RAM ICs rather to check them. But... why are you so sure about faulty RAM? That definitely would be in the bottom of the list of what I would suspect.
 

Online ConKbot

  • Super Contributor
  • ***
  • Posts: 1382
Re: SDRAM chip
« Reply #8 on: May 14, 2015, 09:08:23 pm »
If you're really sure its a RAM issue +1 to parts shotgun, replacing the ram especially if they are BGA. If they are BGA, it might be worth putting some no clean flux on each BGA and reflowing them before you scrap them, but if you have the replacements already, shotgun away.
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #9 on: May 15, 2015, 07:16:08 pm »
Thank you for the replies.

The device provides  output log like this

BCM74130011
012
K1
K2
K3
K4
K5
Shmoo Version=3.8
DDR Freq=0x0000018C
%00000001%
G=00000000 R=00000000 W=00000000 00000020
K6
F


As you can see it starts with CPU identification( Broadcom 7413). Then it continues with some checks( K1, K2, K3,K4,K5) and then it seems to start checking DDR. K6 seems to be the last check and then F( probably means Failure)
Some googling helped me  find out that it should mean DDR problem or a part linked with  DDR(e.g.DDR termination regulator)
Problem is that the CPU ( BCM 7413) is made by Broadcom which does not provide datasheets.
Replacing DDR without the real reason( that the DDR is faulty) does not seem to me the best idea. Yes, I already reflowed BGA DDR but no success.
Once again for your suggestions and feedbacks
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #10 on: May 15, 2015, 08:09:05 pm »
The given link says the same error( the reason why the device does not start) and an user tries to use the software( optiflasher) to repair the device. But the error is not caused by software but hardware
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26875
  • Country: nl
    • NCT Developments
Re: SDRAM chip
« Reply #11 on: May 15, 2015, 08:38:09 pm »
I'd start by replacing all the electrolytic caps. Those are much more likely to cause failures.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline tom66

  • Super Contributor
  • ***
  • Posts: 6686
  • Country: gb
  • Electronics Hobbyist & FPGA/Embedded Systems EE
Re: SDRAM chip
« Reply #12 on: May 15, 2015, 08:40:21 pm »
Ok, shmoo is basically what the bootloader does on start up. It checks the ddr and adjusts the timing. It allows the PCB manufacturers to use a less well controlled process as the processor can adjust for small variations. Lower power as well.

Now... I'm not certain, but shmoo is usually in the bootloader. Once bootloader is complete, it tries to run the kernel from main flash. Usually main kernel is in main NAND, isolated from NOR memory. So, it could be NAND problem if it does shmoo then nothing else.
« Last Edit: May 15, 2015, 08:47:04 pm by tom66 »
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #13 on: May 16, 2015, 06:40:29 am »
Thank you for your replies.
@tom66:
Quote
shmoo is basically what the bootloader does on start up
.
I expect that bootloader is from CPU, not from flash (NAND). Starting code( showing shmoo and further )  is still NOT stored in flash.So, why would you expect NAND problem and not DDR?
Quote
shmoo is usually in the bootloader. Once bootloader is complete, it tries to run the kernel from main flash
Do you mean that ,the log I posted, shows that shmoo is already completed? I thought that
the text 
Quote
DDR Freq=0x0000018C
is only a prolog( starting) command and the ending is not given yet.
Quote
Once bootloader is complete, it tries to run the kernel from main flash.
And  how to check if  the bootloader is complete?

Thank you for your help
 

Offline JaneTopic starter

  • Frequent Contributor
  • **
  • Posts: 381
Re: SDRAM chip
« Reply #14 on: May 19, 2015, 06:19:35 pm »
I  was not still successful with the problem of booting the Linux embedded device that uses CPU BCM7413 ( by Broadcom).
I receive an output log like this - which is a failure.
BCM74130011
012
K1
K2
K3
K4
K5

Shmoo Version=3.8
DDR Freq=0x0000018C
%00000001%
G=00000000 R=00000000 W=00000000 00000020
K6
F


 
While the  successful log looks like this
BCM74130011
012
K1
K2
K3
K4
K5

Shmoo Version=3.8
DDR Freq=0x0000018C
%00000001%
RC1=00000005
WC1=FFFFFFEA
RC2=00000016
WC2=00000010
RC3=0000000D
WC3=FFFFFFEA
RC4=0000000D
WC4=00000039
NWC=00000011
RC5=00000005
WC5=00000011
RC6=00000016
WC6=00000011
NRC=0000000D
RW=00000012
WW=00000050
G=00000000 R=0000000D W=00000011
BL=00000000
RC1=00000005
RC2=00000018

BL=00000001
RC1=00000005
RC2=00000016

BL=00000002
RC1=00000003
RC2=00000016

BL=00000003
RC1=00000001
RC2=00000015

BL=00000004
RC1=00000004
RC2=00000017

BL=00000005
RC1=00000006
RC2=00000018

BL=00000006
RC1=00000003
RC2=00000011

BL=00000007
RC1=00000007
RC2=00000017
3
COPY CODE
COMPARE CODE
4567


Does anyone know what
all these values RC1,WC1,RC2,WC2 and others can mean? Or where can I learn more ?
Thank you
« Last Edit: May 19, 2015, 06:22:10 pm by Jane »
 

Online nctnico

  • Super Contributor
  • ***
  • Posts: 26875
  • Country: nl
    • NCT Developments
Re: SDRAM chip
« Reply #15 on: May 19, 2015, 08:17:18 pm »
This looks like a DDR memory setup sequence. My guess would be that that data has been lost causing the bootloader to fail.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf