0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

分享nandflash排雷攻略

AGk5_ZLG_zhiyua 来源:lp 2019-04-05 15:52 次阅读

在Nandflash广泛应用的今天,其高性价比和极大烧录不良率几乎时刻共存,那么 Nandflash究竟有何特性导致其频发烧录事故?今天就和大家分享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也能准确完整读取到每个文件的数据,那么产品就正常跑起来了!

3

解决方案参考

ZLG立功科技·致远电子的P800系列编程器支持按分区烧录(并可支持多种分区格式),可按照每个用户方案需求,设置每个文件的起始块地址和烧录块长度,即可达到高效率烧录,又可提高芯片烧录良品率!

同时,P800系列搭载独立操作系统,还可满足工厂全脱机,一键批量的烧录要求。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    455

    文章

    50738

    浏览量

    423295
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17136

    浏览量

    351036
  • nandflash
    +关注

    关注

    0

    文章

    48

    浏览量

    20212

原文标题:Nandflash量产烧录排雷攻略

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    NANDFLASH的用法

    nandflash做适合自己的文件系统,产生相应的接口函数,要注意哪些问题?
    发表于 07-23 00:04

    NANDFLASH IP

    大家好,有没有认识在做NANDFLASH的厂家,其在售独立IP,我公司想要购买。多谢大家。
    发表于 05-12 11:39

    【小e物联网申请】智能排雷小车

    申请理由:用于开发 基于WIFI智能排雷小车, 通过手机APP连接 上ESP8266进行控制和监控。项目描述:①熟悉小e开发板硬件和外IO接口。 ②对小e开发板上的各个模块进行程序编写和测试(程序
    发表于 05-16 17:02

    GPIO中断与NandFlash读写不能同时成功

    硬件平台:SOM-TL138_1808_6748F-A2软件库:starterWare问题描述:1、GPIO中断与NandFlash读写不能同时成功。初始化配置时,NandFlash配置在前
    发表于 08-28 08:59

    nandflash启动问题

    大家好,我是一个学习linux的新手,这两天有个问题一直想不通,需要大家可以给我解释解释,谢谢了。问题是:U-BOOT从nandflash启动,cpu会自动拷贝nandflash中的前4k内容到片内
    发表于 04-01 21:43

    NandFlash控制器的FPGA实现方法技巧

    NandFlash控制器的FPGA实现方法技巧与程序案例分享。
    发表于 09-21 09:40 78次下载

    基于SEP4O20的Linux NandFlash驱动设计

    本文首先给出了NandFlash的硬件特点,分析了Linux MTD层(Memow Technology Device)的特性,
    发表于 05-05 11:06 1345次阅读
    基于SEP4O20的Linux <b class='flag-5'>NandFlash</b>驱动设计

    基于AMBA APB总线NandFlash控制器的设计

    介绍了基于AMBA APB总线NandFlash控制器的设计,首先简单介绍了NandFlash的一些特点,然后详细介绍了NandFlash控制器的整体框架、具体功能及其内部的数据通路。该控制器通过ModelSim进行了仿
    发表于 11-03 15:22 54次下载

    cheap_flash_fs极速版--嵌入式NandFlash

    Cheap_Flash_FS--嵌入式NandFlash文件系统源码下载 Cheap_Flash_FS 代码已经由我们开发完成,并经过了严格的测试。 坏块管理功能包括基于坏块表的管理程序,可以
    发表于 05-11 09:46 0次下载

    WinCE系统上大容量NANDFlash驱动设计与优化

    WinCE系统上大容量NANDFlash驱动设计与优化
    发表于 10-25 09:40 5次下载
    WinCE系统上大容量<b class='flag-5'>NANDFlash</b>驱动设计与优化

    NANDFLASH在WINCE_NET系统中的应用设计

    NANDFLASH在WINCE_NET系统中的应用设计
    发表于 10-25 10:10 17次下载
    <b class='flag-5'>NANDFLASH</b>在WINCE_NET系统中的应用设计

    简明Vim练级攻略

    简明Vim练级攻略
    发表于 10-29 10:58 12次下载
    简明Vim练级<b class='flag-5'>攻略</b>

    NorFlash、NandFlash、eMMC闪存三者对比

    NAND Flash式东芝在1989年的国际固态电路研讨会(ISSCC)上发表的, 要在NandFlash上面读写数据,要外部加主控和电路设计。
    发表于 09-19 09:11 2.4w次阅读

    俄军将启用新型排雷机器人 大幅降低人员损失的风险

    俄军军事工程师将使用最新的“大尉”机器人来排雷
    的头像 发表于 07-10 16:21 2746次阅读

    NANDFLASH快速BCH编解码算法及便件实现

    NANDFLASH快速BCH编解码算法及便件实现(嵌入式开发自学网)-NANDFLASH快速BCH编解码算法及便件实现        
    发表于 07-30 14:14 9次下载
    <b class='flag-5'>NANDFLASH</b>快速BCH编解码算法及便件实现