加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Improving NAND Flash Based Disk Caches阅读笔记

发布时间:2020-12-15 07:02:45 所属栏目:百科 来源:网络整理
导读:? ?这篇文章我是带着一定目的性去看的,主要是想知道FLASH CACHE做缓存,跟NVRAM作缓存,相同优势有哪些?不同优势有哪些?缺陷又在哪里?接下来就对文章做一个全面的总结~ ? ? FLASH近些年被广泛使用在存储系统,主要是由于它具非易失,高密度,低成本的优
? ?这篇文章我是带着一定目的性去看的,主要是想知道FLASH CACHE做缓存,跟NVRAM作缓存,相同优势有哪些?不同优势有哪些?缺陷又在哪里?接下来就对文章做一个全面的总结~

? ? FLASH近些年被广泛使用在存储系统,主要是由于它具非易失,高密度,低成本的优势。但是它的缺陷也是很明显的,它的可管理性和可靠性是必须要解决的两个挑战性问题,可靠性上:即使FLASH是非易失的,在某种情况下,依然存在不一致性,cell的写穿也是其考虑的重点问题。跟NVRAM对比,NVRAM同样具有非易失,高密度,访问速度接近DRAM的优势,但是缺陷在于,cost比较高,一致性问题仍然存在,写寿命问题也是关注重点。具体对比如下图所示:
? ??


? ? 鉴于以上对比,我们进一步详细了解,到底为什么可以使用FLASH做cache?
  • ? ? ?使用NAND FLASH能够降低系统memory的power


? ? ? ? ? 如上图所示,FLASH在激活power,空闲power上远远小于DRAM,而在读延迟,写延迟上,比DRAM慢一个数量级,若把DRAM的大小减少,将FLASH加入memory系统,扩展内存容量,会达到节能1/4的效果。
  • 使用NAND Flash做disk caches
? ? ? 之前的研究就有使用NOR cells,我们要让NAND Flash做cache,只需要简单修改一下NAND。
? ? ??用NAND Flash做disk caches,两个噩待解决的问题:
  1. 垃圾回收的问题,当Flash的使用率在80%的时候,GC的开销占全部开销的20%,再往上走,开销能达到80%~100%
  2. memory需要存储Flash data structures的开销。
? ? ??要使用FLASH做disk cache就必须解决这两个问题。
? ? ? 为了解决第一个问题,文章提出: (分为read region和write region,垃圾回收的开销会减小)
? ? ??为了解决第二个问题,文章提出: (在flash上层接DRAM,缓存这些数据结构)
?
? ? 3 Architecture of the Flash based disk cache
? ? ? ? ??
FlashCache hash table (FCHT)- stores the mapping
between addresses on disk and Flash. The FCHT was
first introduced in [16].
?Flash page status table (FPST)- stores error correction
code (ECC) strength,SLC/MLC mode and a saturating
access counter. It also stores a valid bit field.
?Flash block status table (FBST)- records the number
of erase operations performed on each block as well as
the degree of wear out.
?Flash global status table (FGST)- tracks average latency and miss rate of the Flash based disk cache.
??



? ?写不是单纯地写,写完之后,可能变成读块。读也是不完全独立地读,要对读的块进行写,要从读块evict,在写块中新建?两个怎样进行交互?
    1. 将FLASH cache分为两个不同的领域,读或者写区域
    2. 实现FLASH控制器
? ? ?? ?4 Putting it all together
? ? ? read流程:(涉及miss的情况)
? ? ??

? ? ? write流程:(写的过程更复杂一些)
? ? ??

? 将buffer cache和journaling结合在一起,怎么实现?
? 我的想法是,FLASH cache已经分为两个区域了,而读region不存在日志问题,所以只需要对write区域做缓存和日志的结合。
??根据上述写的过程


?补充:
  1. NOR 和 NAND的区别:
读比NAND快,写比NAND慢
能擦除的次数比NAND少
NOR的密度比较小
现在都不用NOR了
NAND FLASH 1page(2kb+64b的校验码),1block=64pages,1plane=2048blocks,1die=4planes,1 package=2dies

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读