http://blog.sina.com.cn/s/blog_502c8cc40100pztk.html
摘要
1.In this paper, we propose the SLC-MLC mixed flash translation layer with 3-slot block mapping method for block level address translation and block relocation algorithm.
在本文中,我们提出了SLC-MLC闪存的混合转换层(3槽块映射方法的块级地址转换)和块重定位算法。
介绍
1.NAND的优点:非易失,耐冲击,低能耗;SSD(容量增长,价格下降,不需要机械移动);
2.缺点:写前擦除。
3.介绍FTL
4.简要对比了一下SLC、MLC,提出MFTL
背景
1.NAND的页、块基本特点
2.NAND的R/W/E操作
3.简单介绍垃圾回收 (参考:http://blog.csdn.net/guojing3625/article/details/10136493)
背景-FTL
1.块映射
2.页映射
3.混合映射
(http://www.cnblogs.com/yaolei/p/3635974.html)
背景-SLC/MLC
1.状态及一些基本数据
M-FTL
M-FTL--Address mapping
1.E-PBA:上面的指向SLC,下面的指向MLC
2.3-slots:a single logical block address can be mapped into three different E-PBAs------------覆写只能写到SLC上(hot,warm slot)
3.block mapped 页数量(MLC)----------导致:SLC 的cold ,warm 正常,hot 为额外;MLC 的cold 为正常,cold ,warm 为额外。
4.覆写只发生在SLC ,保证了写入的快速---------------SLC相当于虚拟增大页面数,所以复写发生在这里
M-FTL--Writing algorithm
【例子】
1.new write : 从cold-slot's的下开始到上
2.overwrite : 从hot-slot's的上开始倒下
3. merge operations:switch(转化),mode-switch(模式切换),partial(部分),normal(正常)
switch:之改写mapping table 的内同,当SLC模式下,cold,warm,都被重新了一次,(三slots都写了吧)
mode-switch:MLC模式下,MLC中cold-slot中所有page都是invalidated,切换成SLC
partial:SLC模式下,其中一个SLC blocks(slot 对应)的pages 都是valid
normal:三块的valid挑出来
(1.(论文)一种改进的双粒度地址映射 的双粒度地址映射算法)
(2.http://blog.csdn.net/chuigedaqiqiu/article/details/21635871)
M-FTL--Block Reloction
所有SLC耗尽后使用,对MLC NAND使用。(保持经常更新的块在SLC中,cold block移动到MLC中)
1.Block Reloction有两个作用:
(1)回收无效的页块创建空块。
(2)The other role is moving cold pages from SLC NAND blocks to MLC NAND blocks
2.方式:循环扫描the 3-slot block mapping table
3.Block Reloction的流程:
(since there is only one extra-slot in case of SLC-mode and there are two extra slots in case of MLC-mod,extra-slot)---------3.1 最后一段
(1)判断是SLC还是MLC
(2) It skips the merging operation on the logical block unless any extra-slot exists. 它跳过逻辑块的合并操作,除非任何额外的插槽存在。
(3)MLC->SLC