NAND Flash的容量
 
一直到2006年,MLC芯片的容量每年都成倍数增长;由于NAND Flash的制程升级的挑战越来越大,所以NAND Flash之后的容量成倍增长所需要的时间也在不断增加,从06年以前的一年到18个月再到2年。由于MLC已经成为主流产品,SLC开始在制程和容量方面逐渐落后。例如SLC的NAND Flash从8Gb到16Gb的转移的花了3年的时间。
8LC和16LC的优点在于可以将更大容量的数据存储于一块芯片上面,而这些是SLC和MLC不能够做到的。例如,第一块16LC就是64Gb,而这就是当时第一块单芯片的64Gb的NAND Flash。所以8LC和16LC被寄予期望在以后更高容量
的存储器上面继续引领。

 
NAND Flash的特性
    一个存储单元存多bit的这种存储技术能够有更好的成本优势,但也是有代价的。这个低成本的代价就是降低了产品的读写性能和寿命。我们分别比较SLC,MLC,8LC,16LC的特性我们就能发现,如下图所示:在数据的保存
时间、产品寿命及写速度方面都会随着每一个存储单元存储的bit的增加而有很大的降低。读速度和操作电压则
也有一定程度的减少。

    更高的容量和更低的成本之间是有一个平衡的。而擦除数据的速度实际上是随着块大小的增加而增加的。
当然,对于不同特性的产品也有各自对应的不同的应用场合。

    下图就列出了一个基于两个关键特性(写速度和寿命)的简单的应用概括图。在对寿命和速度要求更低的
应用产品上更适合使用一个存储单元多bit的产品。现在的存储和一些应用可能可以使用16LC产品;而消费类的应用产品比如MP3/MP4、存储卡、个人导航设备等则大量的使用8LC;MLC产品则在很多的消费电子产品和笔记本电脑的SSD中被应用到;而SLC则被使用在一些对寿命和耐久性要求较高的产品上,比如企业级的SSD还有高清电视产品上。然而,对于某一种企业级的应用,特别是在较小的时钟周期内需要大量读的场合,MLC也是基本能够胜任的。
    
市场和应用
可拔插存储
    电子相册和数码存储等应用是使用NAND Flash的上升沿来进行触发的。世界上第一款flash memory card
始于1994年,当时使用的NOR Flash。而第一块使用NAND Flash作为存储介质的可拔插存储卡SmartMedia卡则是
在1995年问世的,紧接着MultiMedia 卡在1997年问世,Memory Stick在1998年问世;Secure Digital在1999年
问世;xD-Picture卡在2002年问世。这些新出现的可拔插存储介质的小型化版本“mini”和“micro”在接下来
的时间里也紧跟着问世了。
    下图12展示了存储卡能够取代以前的模拟电影的一些基本因素。事实上Flash存储卡存储不仅仅只是图片而且还有对应的音频和视频,这些都方便我们可以将这样的数据从一个设备传输到另外一个设备。Trek和IBM在2000年发布的U盘直接导致了软盘的寿命的终结。
 
嵌入式存储
    NAND Flash被用作代码和数据的存储或者是将数据存储于不同的分区内,例如我们使用的手机就是使用NAND
Flash来存储代码和数据的。MP3/PMP 播放器,数字录像机和个人导航仪器等等也是使用NAND Flash来存储的。NAND Flash能够被用于多种嵌入式设备当中。

    Raw NAND-NAND Flash芯片是直接被焊接到PCB上的,然后由主芯片那边(FTL:Flash Translation Layer)来控制Flash上的数据传输、坏块管理和错误校验(ECC)。例如MP3/PMP播放器就使用一个Flash控制器来管理Raw NAND芯片。
    将NAND和控制器合装在一个chip上面——NAND Flash设备被用作代码和数据存储器而主芯片那边则只有Flash Translation Layer(FTL)来对NAND进行管理。有的时候,一些设备(比如三星、东芝和Numonyx的ONENAND、Sandisk的mDOC(mobile Disk-on-Chip)等)会有一个和NOR Flash相同的接口用以代替NOR Flash;
    Multi-chip Package(MCP)- 将NAND Flash和一个NOR Flash还有低功耗的DRAM的芯片装在一颗芯片里面
(或者只有NAND Flash和低功耗的DRAM)。MCP一开始的时候是用于手机里面。
    图13展示了不同手机的存储器架构。这些架构也是依赖于手机的功能的。入门级的手机一开始只有语音通
话功能,一般的手机会有短信还有上网功能。这样的结果就是,手机其实并不需要一个大容量的存储器。而入门级的手机需要XIP(execute in place)架构,这样的架构既可以存储代码又可以直接从NOR Flash里面执行,而
pseudo-SRAM被用作工作的存储器。这样的存储系统是一个成本优化方案,特别是对于只需要小容量的存储器和
和低功耗的情况。
    feature phone提供了语音、MMS、照相机、音频、视频和上网等多项功能,所以这就需要更大容量的存储器,feature phone一般会有三种存储器:NOR Flash用来执行代码,NAND Flash用来存储数据,RAM用作工作
存储器。这样的架构也是基于一个XIP的架构并增加了NAND Flash作为数据存储。智能手机已经变成了一个集多项功能为一体的综合性设备。除了feature phone所具有的所有功能之外,他还被设计为多任务(同时运行多个应用)、e-mailing和各种娱乐功能。
    智能手机的这种存储和下载结构使得他更像是一台PC,没有将代码存储于NOR Flash中而是将代码存于NAND
Flash中,当要运行的时候从NAND中将代码拷出来并放入DRAM中来执行。在这个过程中,代码要在DRAM中执行就
必须要在DRAM中进行数据交换。因为RAM既要作为一个代码执行的场所还要作为一个工作存储器,所以RAM的容量
就必须比以前feature phone那种NOR/NAND/RAM存储系统中的RAM要大。而由于NAND Flash每个bit的低成本优势,这种架构对于中端手机和大容量存储手机来说就是成本最优化的选择,与此同时带来的问题就是相对于XIP存储系统有着更高的功耗和更长的启动时间。

 
    图14对比了SnD和XIP架构系统。
    NAND Flash的管理方式——NAND Flash设备ECC 校验要求和在某些情况下页大小和block大小需要随着新的
制程技术的改变而改变。相对于持续不断地升级主芯片那边的软件来管理这些详细信息,还可以通过将NAND Flash和控制器封装在一起通过控制器来进行管理。所有的FTL、坏块管理和ECC等都可以通过控制器和他相应的软件来进行管理;这样主芯片就只需要对这个器件执行一个简单的读写操作即可。而主芯片那边需要一个基本的对这个器件接口的驱动,典型的这样的设备就有eMMC和eSD卡。raw NAND和嵌入式的存储器的区别见图15。

 
 
 
 
 

NAND FLASH的容量、特性、市场和应用的更多相关文章

  1. nand flash详解及驱动编写

    https://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html#nand_ ...

  2. NAND FLASH 原理

    NAND FLASH 原理 http://www.360doc.com/content/12/0522/21/21412_212888167.shtml 闪存保存数据的原理: 与DRAM以电容作为存储 ...

  3. Nand Flash基础知识与坏块管理机制的研究

    概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次 ...

  4. JZ2440 裸机驱动 第8章 NAND Flash控制器

    本章目标  了解NAND Flash 芯片的接口 掌握通过NAND Flash控制器访问NAND Flash的方法 8.1 NAND Flash介绍和NAND Flash控制器使用     NAND ...

  5. 说说NAND FLASH以及相关ECC校验方法

    Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次性地将 ...

  6. NAND FLASH 物理结构分析

    转自:http://blog.51cto.com/hardywang/2053915 NAND Flash是一种非易失性随机访问存储介质,基于浮栅(Floating Gate)晶体管设计,通过浮栅来锁 ...

  7. 如何编写linux下nand flash驱动-1

    1.       硬件特性: [Flash的硬件实现机制] Flash全名叫做Flash Memory,属于非易失性存储设备(Non-volatile Memory Device),与此相对应的是易失 ...

  8. SAM4E单片机之旅——16、NAND Flash读写

    这次大概介绍了一下NAND Flash,以及在ASF中使用它的方法. 一. 接线 这个开发板搭载了一个256 MB,8位的NAND Flash(MT29F2G08ABAEA).引脚接线如下: 偷个懒, ...

  9. 块设备驱动之NAND FLASH驱动程序

    转载请注明出处:http://blog.csdn.net/ruoyunliufeng/article/details/25240909 一.框架总结 watermark/2/text/aHR0cDov ...

随机推荐

  1. Spring、struts、webwork2三者MVC的比较

    http://blog.sina.com.cn/s/blog_4a69fa43010005il.html 在web应用方面,Spring有独立的MVC实现,与struts和webwork2相比毫不逊色 ...

  2. Retrofit研究1

    以下为来自Github的retrofit的介绍.话说,翻译还真蛋疼,就这个花了快3个小时. Retrofit 一个在Android和Java上类型安全的HTTP客户端 介绍 Retrofit可以把你的 ...

  3. ref与out之间的区别整理

    ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递. 对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别. 总结起来,他们有如下语法区别: 1.re ...

  4. android使用广播退出应用程序

    由于在(Widget或Service.BroadcastReceiver中)使用startActivity()方法启动activity时需使用FLAG_ACTIVITY_NEW_TASK flag,所 ...

  5. 国庆第六日(2014年10月6日11:51:15),node-webkit,理财产品

    (1)node-webkit:一篇很好的入门文章.入门.系列. 在window下的打包和运行.大漠的一篇讲解文章 . (2)lighttable: 官网. (3)现在的理财产品,雨后春笋般冒出:宝点网 ...

  6. bzoj1014:[JSOI2008]火星人prefix

    思路:插入.修改操作是splay的模型,然后询问的话就可以二分答案,然后再用splay去判,关键就在于怎么去判断. 可以用字符串hash,splay每个节点维护一个hash域,然后就可以定义一个进制去 ...

  7. VMware中Ubuntu忘记密码的解决办法

    在VMware中安装了Ubuntu 11.04,经过了一个长假,再次登录的时候居然进不去了,一开始不知道怎样在虚拟机中进入到Grub启动界面,网上搜索了一番,按照以下步骤重新为用户设定了新密码. 重启 ...

  8. jquery中的 .html(),.val().text()

    .html(),.text(),.val(),.html()用为读取和修改元素的HTML标签,包括标签内的内容.text()用来读取或修改元素的纯文本内容,去除 html 标签.val()用来读取或修 ...

  9. float right 换行bug

    Bug产生原因:块里面有换行的元素. CSS: .left{float: left;width: 100px;background: #fff000;} .right{float: right;wid ...

  10. 编写留言板是遇到的mysql中文乱码问题

    mysql中文显示,需要编码统一,数据库链接文件,database,table编码均要设置一致