首页
社区
课程
招聘
编程器读GD5F1GQ5REYIG NAND FLASH ECC问题求助
2024-2-18 17:14 2064

编程器读GD5F1GQ5REYIG NAND FLASH ECC问题求助

2024-2-18 17:14
2064

最近读取某路由器的固件碰到一个让我疑惑的问题求大神解惑:


falsh:兆易的GD5F1GQ5REYIG 1.8V

编程器:ch341 1.8V

软件:NeoProgrammer2.2.0


查了一下DATASHEET,flash是GD5F1GQ5xExxG系列,1G-bit 2K+128BPageSize with E Version,开启ECC时128B的后64B是ECC数据。


    把芯片吹下来,用ch341编程器 可以读,但每次得到的文件都随机有几十个字节不同。感觉是和ECC纠错有关。

改NeoProgrammer软件,记录芯片状态寄存器,发现读的过程中芯片状态寄存器一直显示“Bit errors greater than ECC capability(4 bits) and not corrected”的状态,

所以我推断固件没有用片内的ECC,估计是用软件或CPU的ECC校验。于是我在读之前先通过寄存器设置把片内ECC关闭,发现现象也一样,还是每次读的文件都有几十个字节随机错。

把芯片焊回主板,路由器工作是正常的。

同样的路由器我试了两台都一样。上述现象用RT809H也一样。


买了一片新的GD5F1GQ5REYIG进行测试,擦除后写入文件再读发现每次读的都一样,并不能复现上面的现象。

对硬件一点不了解,我的疑惑是为什么新买的GD5F1GQ5REYIG和拆机的flash读的现象不同?新买的falsh读出来每次结果都一样(需要ECC纠错的概率小),而拆机的falsh读出来的数据有那么多随机错(频繁需要ECC纠错)?

怎样让新买的flash也有拆机falsh的效果?



[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞0
打赏
分享
最新回复 (1)
雪    币: 1801
活跃值: (2473)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
mb_wpitiize 2024-2-18 19:59
2
0
好问题,期待大神解答
游客
登录 | 注册 方可回帖
返回