[] Li-Pin Chang,Li-Chun Huang.A low-cost wear-leveling algorithm for block-mapping solid-state disks.ACM SIGPLAN Notices,2011,Vol.46(5):31~40

[1] LI-PIN CHANG,CHUN-DA DU. Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers. ACM Transactions on Design Automation of Electronic Systems.2010, Vol.15(1):1~36.

[2] D. Jung, Y.-H. Chae, H. Jo, J.-S. Kim, and J. Lee. A group-based wearleveling algorithm for large-capacity flash memory storage systems.In CASES ’07: Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, pages 160–164. ACM, 2007.

 

摘要

1.介绍

  固态硬盘是以flash为存储介质的存储设备,由于物理特性的原因,SSD与HDD进行读取的方式是不同的。SSD通过隐藏flash的特性来模拟HDD的方式以便于操作系统无需改变软件或硬件来把一个SSD设备当做HDD来识别。固态硬盘是优于传统的硬盘驱动器的,无论是耐冲击性、节能、随机访问性能、散热,这些都吸引供应商使用其作为存储设备广泛应用于笔记本电脑、智能手机和便携式媒体播放器等。

  flash是一种必须在写之前擦除的存储介质。每个闪存单元只能承受有限次的擦写次数,大约在100k次左右,频繁地擦写操作可能导致某些闪存颗粒比其余的闪存颗粒提前退休。特别是现在,随着MLC和TLC的出现,单个闪存单元可以保存二个或更多的电位,这降低的单位容量的成本,但是相比SLC来说,他们的寿命却是大打折扣。

  有数据访问的地方就不可避免磨损的存在,一部分闪存颗粒的提前不能使用不仅导致设备容量的降低,同时也会加剧剩余闪存颗粒的磨损程度。所以SSD需要磨损均衡的管理来保持SSD内所有闪存颗粒的整体擦除次数的平均,但是磨损管理不是没有代价的,它会做一些额外的数据移动来保证磨损均衡的实现,这些额外的数据移动有利于整体的平衡。

  磨损均衡操作包括数据移动的时机和数据移动的位置,这些操作监视整个flash的磨损情况以及在磨损不均衡的时候进行一些操作来保持平衡。

  在资源紧张的情况下,挑战有三个:一是监视整个flash的磨损,需要相当多的时间和空间资源;二是算法优化需要根据flash的访问模式和在线人员的访问来决定;三是高复杂阻碍使用先进的WL算法

  一般的SSD主控没有足够的RAM空间来存放SSD盘内flash所有的磨损信息,chang等人提出只将部分信息保存在RAM中,然而周期性的RAM和flash之间磨损信息的交互会导致额外的写操作[1];june提出了一种基于大范围的平均擦写次数的low-resolution磨损信息方法,但是这种方法在磨损差异比较大的时候无法很好地工作[2];

A low-cost wear-leveling algorithm for block-mappingsolid-state disks的更多相关文章

  1. PatentTips - Wear Leveling for Erasable Memories

    BACKGROUND Erasable memories may have erasable elements that can become unreliable after a predeterm ...

  2. PatentTips - Solid State Memory Wear Leveling

    BACKGROUND OF THE INVENTION Solid-state memory devices encompass rewritable non-volatile memory devi ...

  3. Variability aware wear leveling

    Techniques are presented that include determining, for data to be written to a nonvolatile memory, a ...

  4. UVa1048 Low Cost Air Travel——最短路

    很好的一道题呀 思路 状态\(d(i,j)\)表示已经经过了行程单中的\(i\)个城市,目前在城市\(j\)的最小代价,直接建边跑最短路就行了 比如机票为\(ACBD\),行程单为\(CD\),那么对 ...

  5. L147 Low Cost Study Has High Impact Results For Premature Babies

    No one knows exactly why some babies are born prematurely(早产), but some of the smallest premature ba ...

  6. WL(Wear leveling)磨损平衡

    前面说过,闪存寿命是以P/E次数来计算的,而WL就是确保闪存内每个块被写入的次数相等的一种机制.若没有这个机制,SSD内的闪存颗粒就无法在同一时间内挂掉,那对用户来说就是灾难.       会出现这种 ...

  7. File System Design Case Studies

    SRC=http://www.cs.rutgers.edu/~pxk/416/notes/13-fs-studies.html Paul Krzyzanowski April 24, 2014 Int ...

  8. Durable NAND flash memory management

    词条积累 1.NAND flash memory http://www.searchstorage.com.cn/whatis/word_6052.htm http://baike.baidu.com ...

  9. SSD 相关基础知识

    SDD 基础知识 SSD(Solid State Drives)是固态硬盘,使用闪存颗粒来存储数据,闪存又可分为NAND Flash和NOR Flash,通常所说的SSD硬盘都使用NAND Flash ...

  10. MySQL Disk--SSD 特性

    ======================================================================= SSD 特性 .随机读能力非常好,连续读性能一般,但比普 ...

随机推荐

  1. 201521123055 《Java程序设计》第9周学习总结

    1. 本章学习总结 2. 书面作业 Q.1常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 1.3 什么样的 ...

  2. Akka(25): Stream:对接外部系统-Integration

    在现实应用中akka-stream往往需要集成其它的外部系统形成完整的应用.这些外部系统可能是akka系列系统或者其它类型的系统.所以,akka-stream必须提供一些函数和方法来实现与各种不同类型 ...

  3. Html在线编辑器--基于Jquery的xhEditor轻量级编辑器

    xhEditor V1.2.2 下载地址 开源中国社区: http://www.oschina.net/p/xheditor xhEditor是一个基于jQuery开发的简单迷你并且高效的可视化XHT ...

  4. 记录兼容IE8中发现的一些问题

    1.new Date().getYear(); chrome下:获取的是1900年之后的年份,如2017年获取的是117 IE8下:获取的是公元年份,如2017获取的是2017 解决方案:使用new ...

  5. xcode7.3 iTunes Store operation failed解决

    使用apploader上传程序 提示:如果您安装了XCode开发环境.在/Applications/XCode.app/Contents/Applications目录中可以找到Application ...

  6. BZOJ-1050-[HAOI2006]旅行comf(并查集)

    Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000).给你两个顶点S和T,求 一条路径,使得路径上最 ...

  7. ElasticSearch 插件jdbc import(1)-----定时执行

    定时执行 参数schedule用来配置cron定时表达式 同时支持JSON数组的方式定义多个定时表达式: 例子如下:     "schedule" : "0 0-59 0 ...

  8. Robberies hdu 2955 01背包

    Robberies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  9. 经典算法研究系列:二、Dijkstra 算法初探

    July   二零一一年一月 本文主要参考:算法导论 第二版.维基百科. 一.Dijkstra 算法的介绍 Dijkstra 算法,又叫迪科斯彻算法(Dijkstra),算法解决的是有向图中单个源点到 ...

  10. C++PrimerPlus第6版 第四章——复合类型

    1,复合类型主要包含:数组.结构.联合.枚举.类.指针.引用等. 2,数组.长度必须确定.即编译阶段,数组的长度就得确定好.所以只能使用常量(#define.const)声明数组长度.如果使用变量声明 ...