变废为宝.让“坏块”大有可用,ZLG致远电子

牛小许 2016-10-18 21:44:03

变废为宝,让“坏块”大有可用

ZLG致远电子

2016-10-18 开发工具 ZLG致远电子


被广泛应用于手机、平板等数码设备中的Nand Flash由于工艺原因无法避免坏块的存在,但是我们可以凭借高科技变废为宝,将“坏块”进行有效的利用,从而满足我们的应用需求,让坏块不“坏”。

要想变废为宝,有效利用坏块。我们首先要弄明白什么是“坏块”,做到知己知彼,才能为我所用。坏块的特点是当编程或者擦除这个块时,不能将某些位拉高,从而造成编程和块擦除操作时的错误,这种错误可以通过状态寄存器的值反映出来。这些无效块无法确定编程时的状态,就是大家常说的“坏块”。那么这些“坏块”是怎么产生的呢?


图1 坏块示意图

由于工艺上的问题,Nand Flash中不可避免的会出现出厂坏块(出厂时允许存在2%数量的坏块),同时在Nand Flash的使用过程中也会产生新的坏块。Nand Flash每个块的最大擦除次数大约为100万次,如果超过这个次数,也会变成坏块。除了上述情况之外,坏块的产生原因还有很多,比如存储单元错误、地址线错误等……

那么重点来了,既然不能完全地消除“坏块”,那么我们可以选择将它利用起来,实现一些特殊且必要的功能。为什么说能将坏块“变废为宝”呢?除了上文中介绍的几种类型的坏块,我们在一些特殊情况下需要人为地将Nand Flash芯片的某些块标记为坏块。比如某块非常不稳定以致超出了系统ECC的纠错范围,这个时候需要将此块标记为坏块;或者我们想验证烧写方案的坏块处理部分是否正确时,也需要制作出一些坏块以供测试验证;还有为了满足某类系统的特性,需要制作指定的坏块,比如我们一开始提到的UBI文件系统。这些特殊情况需要我们有目的性的设置指定坏块,满足相应的需求。

清楚了什么是坏块以及坏块是怎么产生的,那么我们下面来看看怎么人为地设置坏块,让坏块为我们所用,达到“变废为宝”的目的

首先,我们要知道什么是芯片的“坏块标记位”(英文简称BI)。对于不同的器件,坏块标志位不尽相同。通常对于512字节/页的NandFlash芯片,坏块标记位在第0、1页(或别的页)备用区的第5个字节,对于2K字节/页的芯片坏块标记位置在第0个字节。


图2 坏块标记位

那么从原理上来说,我们只需要在芯片某块的BI位置按照芯片手册上的规定写入特定的数值,就可以将该块标记为坏块。大部分芯片的坏块标记值为“非0xff”即被认为是坏块,然而有些芯片是“0x00”才被认为是坏块,而且坏块标记所在页也是变化的,所以为了统一,我们使用一个通用有效的方法:将整块写数值0x00。使用致远电子自主研发的6000F-PLUS编程器及配套的SmartPRO III软件,可以很方便的完成坏块的标记。

后台回复关键字【编程器】,查看相关技术专题。



6000F-PLUS 8通道Flash极速编程器

联系方式

  • 销售电话:400-888-4005拨1

  • 技术支持电话:400-888-4005拨2

致远电子 (ID: ZLG_zhiyuan )

还没关注致远电子?您将错过每日泛着油光的干货!您将错过一段颠覆洋品牌的历史!!有时候你想证明给一万个人看,到后来,你发现只得到了一个明白的人,那就够了。你是我们期待已久的粥粉么?我们的微信号:ZLG_zhiyuan。

阅读原文
阅读
精选留言

该文章作者已设置需关注才可以留言

写留言

    该文章作者已设置需关注才可以留言

    写留言

    加载中
    以上留言由公众号筛选后显示

    了解留言功能详情

    文章来源