小弟最近在用WINBAND的W25M02G做U盘,这款芯片实际上是用了两个W25N01G,然后用命令切换来达到2倍容量的。小弟第一次接触NAND FLASH的底层驱动,DATASHEET都翻N遍了,但就坏块管理和页区重写还有疑问。网上大多数的都是仅提供一般读写的驱动,没有针对坏块管理和重写,当然也有其他公司NAND FLASH的完整驱动,不过还是有关键差异性的,所以想请教使用过WINBAND的大神。
看DATASHEET介绍,该芯片提供坏块管理的命令,在命令介绍下面特别的用括号写着(SWAP BLOCK),可以用好块的地址代替坏块的地址,连接关系被建立在芯片自带的LUT里面。这是说只要我使用这条命令后,芯片就帮我把坏块重新映射了么?当我写到这个坏块的时候自动根据芯片自己的LUT写到映射的好块上面吗?但这个芯片又特别说到它自己的LUT最多只有20个link,这是说如果有20个坏块就不能用了? 关于坏块管理还有一个疑问,坏块有2种,一种是出厂就有的,一种是用着用着有的。如果在使用中某个块变成坏块,那么应该给这个坏块写一个标志位,我看别人的驱动是如果一个坏块第一页都写不上标志,就在第二页写标志,那如果该块都不能写了,又怎么标志这个块是坏块呢?
|