打印

NAND FLASH一定要做磨损平衡吗?

[复制链接]
4366|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
z_no1|  楼主 | 2011-8-30 16:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我看要NAND FLASH做文件系统要做磨损平衡,这个算法还特复杂。我就想,做文件系统一定要磨损平衡吗?我采用这种办法,把块分成使用块和备用块,对使用块做一个映射表,如果使用块坏了,就用备用块顶上,这样上层访问者认为使用块一直都是好的。这样象读写FAT的活,也就无所谓了,它肯定是最快坏的,坏了换就是了,这样磨损平衡也就不必要了。
我的想法有问题么?

相关帖子

沙发
chunyang| | 2011-8-30 21:50 | 只看该作者
写入频繁的话最好采用,分块也行,但密度不够。

使用特权

评论回复
板凳
z_no1|  楼主 | 2011-8-30 22:10 | 只看该作者
我想除非是老读写某个块的固定几个扇区,磨损平衡就没啥必要。郁闷的是这正好是FAT表的特征。
这段时间正研究文件系统。YAFFS看不太懂。先搞个FATFS用吧。

使用特权

评论回复
地板
z_no1|  楼主 | 2011-8-30 22:17 | 只看该作者
要不就要拿空间换时间,拿备用块硬扛,磨损平衡要做的应该是一个块内写入次数基本一致才有意义,不然一个块坏两个位就要报废。这个是磨损平衡的意义么?

使用特权

评论回复
5
chunyang| | 2011-8-30 22:38 | 只看该作者
磨损平衡的意思是每次使用不同的区块来存储,降低物理上某些区块的过份频繁的写操作。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
lfjwfm + 1
6
z_no1|  楼主 | 2011-8-31 08:08 | 只看该作者
我认为这个“某些区块”应该还是指扇区,要减少为了读写一个扇区,甚至就几个字节,把一个块删除的情况。
yaffs2就是这个意思了。一个块如果整个的读写,这个造成的磨损是可以通过备用块的方式解决的。

使用特权

评论回复
7
p_y_h| | 2011-9-22 16:26 | 只看该作者
要根据你上层的应用来决定哪种方式更好,如果上层是一个特定应用,本身就能把数据分布写到整个系统容量里,也等于做了一定点wear-leveling,用你的块替换方式,也能正常长期工作。如果上层应用是基于文件系统的,并且数据更新频繁的话,你这种替换方式不行的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

223

主题

2643

帖子

10

粉丝