各位TI工程师
你们好,我在评估板evmc6678 调试flash,本来是用MSDK 提供写nandwrite程序去固话闪灯程序到flash中,发现一直出现有坏块的错误,Console 串口打印如下的信息: Bad blco # 1 detected , skipping block ….
…………….
Bad blco # x detected , skipping block ….
……………………
Bad blco # 4095 detected , skipping block ….一直到4095块全出现块错误!这里说明下,之前,板子的flash是ok的,可以固话成功;但后来,板子的SBW-MMC1电源接插件短路过,导致板子某处烧过,好像是2个稳压管烧了,后来换了,正常,那么问下,是否由于这个原因,影响到其他电路,导致的问题?
之后我也做了如下的尝试
1.检测了1.8v,正常;
1.换了同型号的nandflash芯片,任然一样,程序检测出都是坏块!
我想问如下的问题:
1.我单步调试,nandflash可以初始化成功,能否说明flash芯片读写是ok的?
2.我换了芯片,任然是坏块错误,全都是,是不是nand芯片是假的,有问题?
3.能给条思路,继续调试,现在不知如何处理?
Ternence_Hsu:
你好,建议你将nand拿到其他板子上试试,判断坏块一般是通过擦除block失败来判断,可以尝试erase,看一下返回结果。
初始化成功不能代表读写没有问题。
fendou yang:
回复 Ternence_Hsu:
不好意思,刚看到,谢谢您的建议,我试着擦除了整片芯片,结果,还是没用;再后来发现,单步执行程序,发现竟然读不出芯片的ID号!而同样的程序,再另一个板子上读出来他的ID号,能排除我程序问题,只能是硬件的问题!
Thomas Yang1:
FLASH中出现坏块是常见问题,建议先做个A-B-A交叉验证,即好片到坏版,坏片到好板,以此来确定是器件问题还是板子问题