采用NAND Flash设计存储设备的挑战在哪里?
对于搞电子设计的工程师而言,NAND Flash是再熟悉不过的东西了。在电子设计的时候,NAND Flash通常作为大容量存储介质,可以类比为PC系统中的磁盘。在电子设计领域,对于小容量存储,还可以采用EEPROM之类的芯片;对于程序存储,可以选择NOR Flash。NOR Flash和NAND Flash之间的差别网上有过很多的讨论,在此不一一列数。
NAND Flash作为大容量存储,替代磁盘存储是从消费电子和军工领域开始的。消费电子领域追求小型化和便携,容量普遍较小,因此非常适合采用NAND Flash作为持久化存储介质。军工领域追求高可靠性,机械硬盘无法满足要求,因此只能采用NAND Flash替代机械硬盘。机械硬盘在企业级存储领域一直占据着主导地位,其最主要原因有如下几个方面:
1、容量大。自从巨磁阻效应被应用到磁盘之后,磁盘容量一直在不断增长,在不久的将来,4TB/6TB盘将会被大量使用。此外,磁盘容量还有增长空间,充氦磁盘亦可以在现有基础上增加盘片数量,从而提升单盘容量。
2、价格便宜。虽然磁盘容量在不断增加,但是单盘的价格没有提升。因此,每GB容量的价格在不断下降,磁盘在这几年还有很大的价格优势。
3、应用支持。基本上企业级的存储软件都是针对磁盘进行优化设计的,而这种软件又不能直接简单移植到NAND Flash存储上。
正因为上述几个原因,导致在企业级存储领域,磁盘一直处于领导地位,以NAND Flash为核心的存储盘无法撼动磁盘的地位。但是,从长远来看,NAND Flash有望替代磁盘,其最主要的原因是NAND Flash属于半导体存储,具有很好的性能优势。其容量的增长将符合摩尔定律。半导体工艺的进步,封装技术的进步都将促使NAND Flash单芯片容量不断快速增长。截止到2013年底,Samsung公司已经推出了V-NAND芯片,即将NAND Flash晶圆进行垂直3D封装,从而使得单芯片的NAND Flash容量成倍增长。目前,很多NAND Flash厂商已经可以提供单芯片128GB的Flash芯片。如此高的单芯片容量,很容易将2.5寸SSD做到TB级以上。半导体芯片的价格决定于产量,因此,一旦产量上去之后,NAND Flash芯片将可以做到非常廉价,因此,磁盘的价格在可见的未来不再具有优势。到那时,大容量的NAND Flash还不能替代机械磁盘吗?
答案当然是肯定可以替代机械磁盘。现在的问题是如何在NAND Flash基础上做好存储设备。基于NAND Flash设计存储系统的挑战到底在哪里?
要回答这个问题,其实就是要了解NAND Flash的内部结构和特征。首先来看一下NAND Flash的内部结构:
NAND Flash内部可以分成无数的Page页,这些Page页是读写的最小单元。多个连续的Page页构成一个Block,这些Block块是擦除的最小单元。在写一个Page页的时候,首先需要将这个Page页所在的Block擦除,否则无法对这个Page进行写入(编程)操作。对于NAND Flash而言,读操作最快,在20us左右;写操作慢于读操作,在200us左右;而擦除操作非常耗时,在1ms左右的数量级。因此,如果在写入数据的时候进行擦除操作,将会引入两大问题:第一,写性能受到擦除操作的影响变得很差;第二,由于擦除操作的基本单元是block块,因此,一个page页的写入操作将会引起整个块数据的迁移,这就是典型的写放大问题。更为严重的也是大家一直讨论和关心的寿命问题,NAND Flash内部的块是有擦写次数的,即每个块都有一定的寿命。通常SLC的NAND Flash有10万次的擦写寿命,MLC的Flash有1万次的寿命,而TLC的Flash只有几千次的擦除寿命。这些限制似乎使得NAND Flash看起来不可用,数据存在NAND Flash中是否可靠?综上归纳起来,NAND Flash主要有以下几个方面的问题:
1、不对称的性能。读的性能最好;写性能次之;擦除性能最差。
2、读写基本单元是Page页,而擦除基本单元是block块。
3、Block块内部只能采用顺序方式进行写入。
4、每次page页写的时候都需要进行擦除操作。
5、块擦除有寿命限制。
NAND Flash的问题的确很多,不像Memory一样可以在任意地址进行随意的读写操作,而且还有寿命问题。因此在采用NAND Flash设计存储设备时需要进行合理设计才能发挥Flash的优势,避免Flash的问题。例如,擦除操作比较耗时,那么可以采用虚拟化的技术,将擦除操作在后台完成,而不是在写入操作的时候进行擦除操作。Page页写操作时,需要首先进行块擦除操作,因此,不能对Flash进行in-place-update的操作,只能采用out-of-place的写方式。块擦除的寿命问题可以通过wear-leveling算法均衡所有块的寿命,从而使得整个存储系统的寿命不低于当前磁盘系统的寿命。写擦除操作可能会引起bit-error等问题,因此,可以采用多级编码、动态编码的方式增强数据可靠性。不管怎么样,虽然,NAND Flash存在很多问题,但是她的优势更加的迷人,因此,聪明的工程师一定能够想出很多方法克服问题,基于NAND Flash研制出性能卓越、可靠的存储系统。
NAND Flash凭借着性能优势、密度优势、能耗优势即将登上企业存储的舞台,您准备好了吗?
转载于:https://blog.51cto.com/alanwu/1425566
采用NAND Flash设计存储设备的挑战在哪里?相关推荐
- IBM蓝色基因/Q将采用NAND闪存存储
IBM将在计划中的高性能"怪兽"--蓝色基因/Q中采用NAND闪存存储. 这是一款采用水冷方式的高性能计算系统,IBM在近日的SC10大会上展示了其原型机的组件. ...
- linux用户空间flash驱动,全面掌握Linux驱动框架——字符设备驱动、I2C驱动、总线设备驱动、NAND FLASH驱动...
原标题:全面掌握Linux驱动框架--字符设备驱动.I2C驱动.总线设备驱动.NAND FLASH驱动 字符设备驱动 哈~ 这几天都在发图,通过这种方式,我们希望能帮大家梳理学过的知识,全局的掌握Li ...
- 块设备驱动之NAND FLASH驱动程序
转载请注明出处:http://blog.csdn.net/ruoyunliufeng/article/details/25240909 一.框架总结 二.硬件原理 相比于nor flash.我们能够清 ...
- 闪存Nand Flash存储结构浅析
NandFlash存储器由多个Block组成,每一个Block又由多个Page组成,Page的大小一般为2K+64Bytes或512+16Bytes.Page是读取和编程的基本单位,而擦除的基本单位是 ...
- Nand Flash基础知识与坏块管理机制的研究
概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次 ...
- 嵌入式存储设备学习笔记
更多内容可关注微信公众号 ##各种非易失性存储设备 ###ROM/PROM/EPROM/EEPROM 在NOR/NAND flash出现之前,主要的非易失性存储设备是EPROM和EEPROM. ROM ...
- NAND FLASH 读写操作 简介
NAND FLASH 内存详解与读写寻址方式 一.内存详解 NAND闪存阵列分为一系列128kB的区块(block),这些区块是 NAND器件中最小的可擦除实体.擦除一个区块就是把所有的位(bit)设 ...
- 闪存,ROM,Nor Flash,NAND Flash
物理结构分类 ROM 固定ROM 可编程ROM 可擦除可编程ROM EPROM EEPROM Flash Memory NOR Flash NAND Flash 3D NAND Flash 固定ROM ...
- nand flash 的oob 及坏块管理
转载出处:http://blog.csdn.net/liukun321/article/details/6598921#comments 0.NAND的操作管理方式 NAND FLASH的管 ...
最新文章
- kail安装和vmtools安装
- Ubuntu16.04更新软件源
- python英语单词 扇贝英语安卓下载_扇贝单词app下载-扇贝单词英语版 安卓版v3.6.503-pc6手机下载...
- ******中最常用的网络命令
- python ioc di_Sping(一)——IOC/DI
- Activity的启动流程
- Scylla——开源免费的优秀代理 IP 池:自动验证、JSON API、基于 React 的 Web UI、Docker 支持...
- uwp post php,window_Win10开发系列专题五 UWP应用添加画布及语音输入支持,这是微软Win10十个开发系列专 - phpStudy...
- 【操作系统/OS笔记05】非连续内存分配:分段、分页、页表
- 头发mod_《巫师3》:新MOD为三个大妹子,4K超清贴图看过来
- Eclipse-project 重命名问题(如何彻底修改Eclipse工程名),4种解法
- 基于情感词典的文本情感分析(一个最简单的举例能直接运行)
- 关于近期卡巴斯基6.0授权文件被封的解决方案
- 我的Android进阶之旅------gt;Android【设置】-【语言和输入法】-【语言】列表中找到相应语言所对应的列表项...
- ubuntu护眼软件——Redshift
- 电脑硬盘就一个c盘怎么分区,新电脑买回来只有一个c盘怎么分区
- RabbitMQ消息确认机制-可靠抵达
- 思维模型 黄金圈法则
- 第十三章 RISC精简指令计算机
- 列位置CDays列位置