http://www.itbyte.net/2011/0525/483037_2.html
http://tagche.blog.51cto.com/649757/191290
SSD的工作原理和基本寿命
但是,就算是这样的SSD,也是有缺点的。就像前面说的那样一是每MB的价格要远远高于HDD硬盘。二则是SSD有着重写次数的限制,而且其实该问题的最根本原因则在于,SSD更本无法进行重新写入。
既然是无法进行重新写入,却又为何存在着与此自相矛盾的重写次数限制呢?原因在于在NAND闪存上写有数据的页面是无法直接进行重新写入的。如果需要进行重新写入的话,则必须分2步进行,首先进行数据擦除(ERASE),随后在写入新的数据(PROGRAM)。ERASE的操作就是将所有的bit都回复成1,而PROGRAM的操作,则是把其中需要的bit写为0。
下图基本上标明了SSD的构造,通过向左边名为 POLY1 FLOATING GATE 的区域注入和提取电子来保存数据。FLOATING GATE中没有电子的部分为1,已经被注入电子的部分则是0。已经注入的电子,通过被称为Tunnel Oxide的绝缘膜来保持电子的通电状态。但是,在不断反复的对FLOATING GATE进行电子操作的过程中,Tunnel Oxide部分会产生老化。随后就无法保证已注入电子的通电状态。这就是SSD存在着重写次数限制的理由。
转发到微博
如果把这重写次数限制的问题在进行近一步的说明的话,就会发现ERASE和 PROGRAM 之间的工作单位并不相同。在NAND闪存中ERASE是以区块为单位,而PROGRAM则是以页面为单位。实际的页面大小和区块大小根据NAND闪存的容量和种类的不同而有所差异。以最常见的2Gbit SLC NAND闪存为例,页面大小为2KB(由2048byter的数据空间和64bit的空闲空间合计2112bytes),区块大小则为64页面(2112bytes×64),一块闪存芯片由2048个区块组成合计2Gb(64×2048=131072页面)(下图)
转发到微博
当数据进行PROGRAM的时候以一个页面2KB为最小单位,进行ERASE时则是64页面为最小单位。普通的SLC芯片的重写次数为10万次左右,MLC则为1万次。我们将进行一次ERASE和PROGRAM看作为消耗一次重写次数。这样如果说一个16GB的SSD由2Gb的SLC NAND闪存构成的话,总计需要64个闪存芯片。64个闪存芯片合计的页面数为8388608。其中每一个页面可以重写10万次,总计则可以进行8300亿次。换作是重写次数少以为的MLC闪存芯片的话,基本就是830亿次(MLC的页面大小和区块大小的算法基本和SLC是不同的,所以这里只是提出一个单纯的计算结果)
需要重写的数据如果比较大的话,则一次性要使用很多个页面,尽管只是重写的那些页面的寿命降低,但也不是个小数目。如果以每日写入10GB来计算的话,10GB约等于500万个页面,用8300亿来计算的话SLC SSD 完全使用殆尽需要花上16万6000天以上,也就是说能够使用454年(达到这个时间的前提是该SSD要使用能够完全控制不在同一场所反复擦写的控制芯片以及软件)从这个计算来看,更本就不用担心什么使用寿命的嘛。但是实际的情况则完全不同。
http://tagche.blog.51cto.com/649757/191290
通常,对于一个存储介质需了解以下相关内容:
数字信息"1"和"0"是如何表示的;
读操作;
写操作;
删除操作;
存储信息单元;
如何编址;
信息存储可靠性;
读写性能;
使用寿命;
存储设备的体系结构;
参考网址:http://www.sandisk.com
SSD Academy:
http://www.sandisk.com/business-solutions/ssd/academy.aspx
the principles of flash operation :
http://www.sandisk.com/business-solutions/ssd/movie-3-principles-of-flash-operation---flash-technology-tutorial-.aspx
固态硬盘(Solid State Disk或Solid State Drive),也称作电子硬盘或者固态电子盘,是由控制单元和固态存储单元(DRAM或FLASH芯片)组成的硬盘。
固态硬盘的接口规范和定义、功能及使用方法上与普通硬盘的相同,在产品外形和尺寸上也与普通硬盘一致。由于固态硬盘没有普通硬盘的旋转介质,因而抗震性极佳。其芯片的工作温度范围很宽(-40~85摄氏度)。
SSD工作原理
下面是一个关于NAND闪盘的原理图。从下图我们可以看到,每一个“单元”就是由一个这样的晶体管组成的。
在单级单元(SLC,single level cell)闪存设备中,一个晶体管可容纳1比特数据。您通过电子通道将数据写入单元;将足够高的电压加于两端,创造一个足够强大的电场,电子将穿透氧化物进入浮动门。消除电压,电子将继续停留在浮动门。将电压穿越通道而不施加到门上,扭转偏压,电子将向另一个方向移动。
简单的说,这就是闪盘的工作原理-你有两种状态,0和1,即使单元没有电了,状态也会维持住,因此对存储设备来说是非常理想的。
编程闪存是一个反复的过程。该控制器将电压施于门(或通道)上,允许一些电子穿过并检查单元的临界电压。当临界电压已达到一些预定的值时,就开始编程并储存数据了。
MLC与SLC的区别
目前SSD硬盘使用两种形式的NAND闪存:单级单元(SLC)和多级单元(MLC)。两者之间的差别是每单元存储的数据量,SLC每单元存储1比特而MLC每单元存储2比特。关键在于,SLC和MLC占据了相同大小的芯片面积。因此,在同样的价格下,MLC可以有两倍容量的效果。
英特尔的SLC和MLC闪存实际上使用了相同的晶体管,不同之处在于怎样读/写这两个闪存。SLC只有两个电压符,因为它只有两个状态(0或1)。MLC却有四个状态(00,01,10 ,11),因此需要花费较长的时间来访问,因为你不想意外写入错误的数据;您已有了相同的最大、最小电压,您现在仅仅有它们两者之间更多的刻度:
SLC (left) vs. MLC (right)
下面是一个关于SLC和MLC性能基本数据的表格:
SLC和MLC的擦除性能是一样的,MLC闪存的读取性能需花费两倍长的时间,写入性能需花费四倍长的时间。如果您以前听说过有人抱怨MLC写入速度,这就是部分原因。不过一定要记住,我们在这里谈论的这些数字低得离谱——甚至900微秒写入MLC闪存的速度都远远超过向普通机械硬盘的写入速度。
SLC的最大优势不在于它的性能好而在于它的使用寿命长。要了解闪存的耐用性,我们首先需要看看存储设备的内部构造。
闪存层次和数据丢失
我们已经证实了一个闪存单元可以储存一个还是两个比特取决于它是SLC还是MLC设备。把一群单元聚集到一起,就得到了一个page。page是您可以编程(写入)NAND闪存装置最小的结构。
大部分MLC NAND闪存的每一page是4KB。一个block是由许多page组成的,在英特尔的MLC SSD中一个block包含128 pages(128 pages x 4KB/page = 512KB/block = 0.5MB。Block是您可以擦除得最小结构。
因此,当您写入SSD时,您一次可写入4KB数据;但是当您从SSD擦除数据时,您一次不得不删除512KB。过会儿,我会进一步探讨这个问题,但现在让我们看看当您从一个SSD删除数据时会发生什么事情。
无论何时您将数据写入闪存,我们都会反复经历同样的编程过程。创建一个电场,电子穿过氧化物并储存电荷。擦除数据会导致同样的事情发生,但却向着相反的方向。问题是电子穿过氧化物的次数越多,就会变的越弱,最终将电压也不能再阻止电子的自由活动了。这时候,SSD的这个单元就发生故障了。
大约经过一万次擦除/编程周期后,MLC闪存才会最终出现那个问题。而SLC可使用十万次,这得益于它的简单设计。
由于寿命有限,所以SSD必须非常小心地选择擦除/编程每个单元的时间和方式。请注意,您可以从一个单元里读取数据,多少次都行,这并不减少单元存储数据的能力。只有擦除/编程周期才会降低了寿命。
此外需要注意的是,因为SSD没有擦除block这个概念,唯一擦除block的时候就是写入新数据的时候。如果您删除Windows里的一个文件而没有创建新的文件,SSD实际上并没有从闪存中移走这个数据,除非您准备好写入新的数据。
SSD如何保证使用寿命
现在回到编程和擦除SSD数据之间方式的差异上来。您在page上编程,在block上擦除数据。假设您保存了一个8KB的文件,之后决定要删除它,这可能是您写给自己的简单便条,表示您不再需要了。
您保存该文件时,它会以2 pages的形式保存在闪存记忆体中;您将其删除时,SSD会标记pages为无效,但实际上并不会删除该block。SSD将等到block中一定比例的pages被标记为无效时,才会复制一些有效的数据到新的pages里去并擦除该block。SSD这样做是为了限制了每个block擦除的次数,从而延长驱动器寿命。
但是并非所有的SSD都采用同样的方式来处理删除请求,因此,从硬盘原理上来说,如何处理删除请求对SSD安全性产生较大的影响。
我们已经从概况的角度介绍了SLC SSD与MLC SSD的不同,并且阐述了一般SSD的设计者如何通过编程和算法来保证SSD的性能和安全性,下文我们将详细阐述Intel X-25M SSD硬盘如何应付数据丢失。
本文出自 “石头(老牛耕田)” 博客,请务必保留此出处http://tagche.blog.51cto.com/649757/191290
分享到:
相关推荐
"SSD工作原理傻瓜教程" SSD(Solid-State Drive)是一种基于闪存技术的数据存储设备,它具有高速读写、低功耗、抗震动、抗磁干扰等特点。了解SSD的工作原理对于深入了解计算机存储系统非常重要。 SSD的基本结构 ...
SSD简介及其基本工作原理.doc
综上所述,通过详细研究"SSD201原理图.pdf",开发者可以深入理解这款芯片的架构和工作原理,从而在项目中充分利用其性能,优化系统设计,解决潜在问题,提升产品的竞争力。同时,这样的原理图也是进行故障排查、软件...
在给定的SSD原理图中,我们可以看到大量与数据通道(Channels)相关的信号线,这表明SSD采用了多通道设计,可以同时处理多个读写请求,显著提升性能。具体来说: - 每个通道包含数据线(D)、写使能(WEn)、读使能...
在设计过程中,还需要考虑到SSD1963的工作电压、时钟频率、连接的外围设备和特性等细节。这需要设计师对SSD1963的技术手册有深入理解,并且熟悉相关电子元件和连接方式,才能设计出稳定可靠的电路原理图。
1. SSD工作原理:讲解闪存技术和控制器如何协同工作,提供快速读写速度。 2. SSD的优势:对比HDD,阐述SSD在启动时间、数据传输速度、功耗和抗震性等方面的优势。 3. SSD的类型:介绍SATA、PCIe、M.2等接口的SSD,...
SSD1可能是指对SSD基础原理、工作模式或性能测试的初步学习阶段。 现在,让我们逐一分析提供的练习题答案: 1. **Exercise 1: SSD结构与组件** SSD由控制器、NAND闪存颗粒、缓存和接口组成。控制器负责管理数据...
SSD分层原理 SSD分层原理是指将热数据存储在SSD中,冷数据存储在机械磁盘中,以解决读缓存的读性能不稳定、写操作需要同时写写缓存和更新读缓存、写缓存使用oplog方式记录写操作、写缓存中的数据回写入机械磁盘后读...
SSD5 Exercise 1是关于固态存储技术(Solid State Drives)的一个练习,这个练习可能涉及了固态硬盘的基本原理、工作模式、性能测试、故障排查等方面的知识。在这个答案中,我们将深入探讨这些关键领域。 固态存储...
1. **SSD工作原理**:讲解固态硬盘如何利用闪存颗粒存储数据,包括NAND闪存的工作机制,以及控制器如何管理这些存储单元。 2. **接口技术**:介绍不同类型的SSD接口,如SATA、PCIe、M.2等,以及它们的速度差异和...
这个实验可能涉及SSD的工作原理、存储技术、性能优化或相关的编程实践。描述中提到的“源代码”表明该压缩包可能包含了用于教学目的的Java编程代码,这通常是为了实现特定的SSD管理功能或者进行性能测试。 在标签中...
"ssd 4 exercise2"可能是一个关于SSD技术的练习或项目,可能是针对学生或专业人士进行的,目的是深化对SSD工作原理、优化方法或故障排查的理解。 在这个练习2中,我们可能探讨以下几个关键知识点: 1. SSD架构:...
在SSD6这一章节,我们通常会深入探讨固态存储设备的工作原理、性能优化以及相关的管理策略。Exercise 4旨在帮助学习者巩固和应用这些理论知识,提升对SSD实际操作的理解。 固态硬盘(SSD)是现代计算机系统中广泛...
在Exercise 1中,可能涉及对这些概念的理解、实际操作,比如测试读写速度、设置TRIM、分析SMART数据等,以加深对SSD工作原理和性能优化的理解。通过这个练习,学习者将能够更好地掌握SSD在实际应用中的优势和管理...
在SSD技术领域,有许多关键的知识点值得深入探讨,包括SSD的工作原理、性能优势、寿命管理、数据保护以及与传统硬盘(HDD)的差异等。 1. **SSD工作原理**:SSD主要基于 NAND Flash 存储技术,由闪存单元、控制器和...
SSD1(Solid State Drive 1)练习3可能是一个关于固态硬盘技术的学习课程或实践环节,其中包含一系列与SSD工作原理、性能优化、故障排查或相关技术相关的任务。由于提供的信息有限,我将根据SSD的一般知识来解释一些...
1. **SSD工作原理**:固态硬盘内部由闪存颗粒(NAND Flash Memory)组成,这些颗粒分为SLC(Single-Level Cell)、MLC(Multi-Level Cell)、TLC(Triple-Level Cell)和QLC(Quad-Level Cell),不同类型的颗粒在...
本主题将深入探讨SSD硬盘的PCB(Printed Circuit Board)设计和原理图,这对于理解SSD的工作机制至关重要。 首先,PCB是SSD硬件的核心,它承载了所有电子组件,包括控制器、闪存颗粒、缓存芯片以及接口电路。SSD的...
SSD3 Exercise5 是一个可能涉及固态存储技术(Solid State Drives)的学习或课程练习,其中涵盖了关于SSD的工作原理、性能优化、故障诊断或数据管理等方面的知识。"直接可以提交"的描述暗示这是一份完成的解答,可能...
在离线版的《SSD4》中,读者可以不受网络限制地学习和研究相关主题,这对于深入理解和掌握SSD的工作原理、设计特点以及在实际应用中的优化策略至关重要。 本书涵盖了以下主要知识点: 1. **SSD基础**:介绍固态...