2358|0

1121

帖子

0

TA的资源

版主

楼主
 

Nandflash量产烧录排雷攻略 [复制链接]

Nandflash芯片以其高性价比,大存储容量在电子产品中广泛应用。但是,在此量大质优的应用领域,很多客户却痛苦于批量质量问题:专用工具无法满足量产,量产工具却可能出现极大的不良品率,那么究竟要如何解决呢?

其根本原因在于:目前大部分用户并不是很了解Nandflash烧录的复杂性。

用户常采用很直接的方法,即用一颗能正常运行的NandFlash芯片作为母片,在连接编程器之后,点击烧录软件上的“读取”按钮,把数据从芯片里面完整读取出来,再找几颗空芯片,把数据重复写进去。本以为可达到量产的目的,但实际上生产出来的产品却达不到品质的要求,往往会出现批量的产品异常开机或启动的状况!

1
原因分析

原因究竟在哪里呢,在分析之前,那就先得了解一下Nandflash基本的工艺特性:

首先,我们来看NandFlash存储结构,它由多个Block组成,每一个Block又由多个Page组成,每个Page又包含主区(Main Area)和备用区(Spare Area)两个域。其次NandFlash是有坏块的,由于NandFlash的工艺不能保证Nand的Memory Array在其生命周期中保持性能的可靠。

因此在Nand的生产中及使用过程中会产生坏块的。

1
坏块的影响

因为坏块影响了数据的存放地址,用户就不能按常用方法那样,把母片的数据全部读取出来,然后再把数据原原本本拷贝到其他芯片上了,也就产生了传统拷贝机无法量产Nandflash的问题!

既然NandFlash有坏块是无法避免的问题,那就要想办法避开那些坏块;最简单、最有效、最常用的方法就是:跳过!

使用“跳过坏块”,我们很好地解决了NandFlash的坏块问题,原本写到坏块的数据,我们也安全转移到下一个块里面!

2
地址变化

跳过是一种常用而有效的方法,但是实际上,根本问题还依然存在,细心的人会发现,数据存放的地址也发生了变化!



实际应用中,很多用户会把多个文件数据同时存储到NandFlash上(比如uboot、uImage、Logo、rootfs等烧录文件),并给每个文件在NandFlash存储单元中划分了一定大小的存储空间区域,指定了每个文件存储的起始物理地址块;如果某个区域出现了坏块,为了避开它,势必需要把数据安全往下一块转移,而引起的后果就是后续烧录文件的起始物理地址也随着发生了偏移,这将会导致主控MCU无法通过固定的地址,准确、完整地获取到每个文件的数据,最终造成的结果就是产品异常启动。

2
解决建议

解决建议:分区烧录

分区烧录,用户提前设置好每个文件烧录的起始块地址,无论坏块出现在哪个空间区域,都可以确保每个文件起始块地址都不会发生偏移变化,数据也将根据客户预设方案存放在NandFlash存储区域内,主控MCU也能准确完整读取到每个文件的数据,那么产品就正常跑起来了!

此帖出自PCB设计论坛
点赞 关注(1)
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表