闪存刷新机制文献的解读
前言
今天早上再详细地回顾了这篇文献,发现了一些细节以及这篇文章值得学习的写作方法,于是补充了一下这篇博客
一、文献信息
1、标题:Flash Correct-and-Refresh: Retention-Aware Error Management for Increased Flash Memory Lifetime
2、作者来源:卡耐基梅隆大学
二、Motivation
1、闪存的主要错误来源是保留错误,即数据在保留过程中由于电荷移动而导致阈值电压变化造成的数据错误。
2、增强ECC带来的寿命提升效果(P/E 循环次数)远低于其产生的开销和功耗损失。
三、Technique ( Flash Correct-and-Refresh, FCR )
1、Reprogramming in-place
当某个page是由于电荷缺失而导致数据错误时,通过对该page进行就地再编程,恢复数据的正确率。
图a是闪存单元原先正确的阈值分布情况;图b是闪存单元由于电荷流失而导致阈值电压降低使得部分数据错误;图c是指FCR经过就地再编程,恢复正确数据的阈值电压分布。
2、Hybrid-FCR(in-place reprogramming and remapping)
在进行in-place reprogramming过程中,可能会对相邻的闪存单元产生编程干扰,导致这些单元因为干扰而被注入了多余的电子,导致阈值电压右移。而由于多余电子注入造成的数据错误无法通过再编程降低阈值电压,只能通过ECC进行纠正之后迁移到新的物理地址中。
于是FCR引入了hybrid-FCR的方式,结合in-place reprogramming 和 remapping方式,当要进行刷新的数据页中因为阈值电压右移而产生的误码率没有超过ECC的30%时,则执行in-place reprogramming。如果超过了,则进行remapping(即数据迁移到新的物理页中)。通过这种混合方式可以降低GC频率,减少闪存刷新开销,延长闪存寿命。
3、Time of Refresh
定期的或者是基于P/E循环周期适应性调整刷新时间。其实主要还是根据P/E循环周期动态调整刷新时间,因为闪存初期由于P/E次数较少,对闪存单元的磨损几乎为0,从而数据的保留效果更好,误码率就更低,从而不需要去执行刷新浪费功耗。而越到后期,闪存单元因为P/E次数增加而磨损加剧,就需要动态改变刷新的频率,保证数据的误码率不超过ECC的阈值。
四、实验效果
通过FCR机制,可以降低长时间保留在闪存中的数据的误码率,从而避免执行读操作时由于数据误码率偏高而需要频繁执行读重试导致闪存损坏或者使用增强ECC版本进行数据纠错导致产生额外的过多的开销和功耗。
在最小开销的情况下提升了将近46倍的闪存寿命。
五、个人总结
这篇文章中作者会在tech章节增加一个对其提出的技术点的反思,分别从实现的开销、功耗、技术点实现响应时间、额外的GC开销、其他影响因素进行分析,并经过和先前工作的比较或是通过实验进行验证其分析。这个部分可以让读者更全面地了解作者提出的解决方案可能会有产生什么副作用因素,同时还附加实验数据,使读者更加清晰明了作者是如何解决这些问题,或者是了解这些副作用的影响程度,更加的客观,我也很喜欢这个小节,能体现出作者的用心和细节,看看能否应用到自己的论文中。
reference
1.Y. Cai, G. Yalcin, O. Mutlu, E. F. Haratsch, A. Cristal, O. Unsal, and K. Mai, “Flash Correct-and-Refresh: Retention-Aware Error Management for Increased Flash Memory Lifetime,” in ICCD, 2012.
标签:FCR,闪存,Flash,Refresh,解读,place,刷新,阈值电压 From: https://blog.csdn.net/weixin_46129187/article/details/141726353