0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何计算出理想情况下SSD的最大寿命

454398 来源:wv 作者:超能网 2019-10-08 14:39 次阅读

消费者选购SSD时总是会去研究他们的耐久度寿命如何,毕竟硬盘挂了真的很麻烦,里面的数据很大概率会全部丢失,然而针对单个硬盘而言,想预测它的寿命是不可能的,无论机械硬盘还是固态硬盘,他们都是一个薛定谔的定时炸弹,随时都可能爆炸,可能性会随时间的推移而增加,而你的幸运值和电源的稳定性会成为动态变量影响这个结果。

SSD的寿命等于闪存的寿命?

而对于一款产品这个群体而言,大致的平均寿命还是可以推测到的,说到SSD的寿命,首先大家会想到闪存的写入次数限制,这和闪存的工作原理有关,以浮栅极型NAND闪存为例,闪存是通电与否代表计算机可识别的1、0状态,加电瞬间会产生强大的电场(大于1000万 vt/cm),这么强的电场会破坏隧道氧化层的原子结合,脱离的电子就会上升到浮栅极上以形成电位变化,断电之后电子还会恢复正常位置,这样反复的断电-加压就形成了不同的电位信号

加电的过程等同于HDD硬盘的数据写入操作,它被称为“Program编程)”,断电的过程电位恢复,这相当于HDD硬盘的擦除数据,这里成为“Erase(擦除)”,完整的一次P/E循环就是NAND的写入循环,从这里也可以看出SSD要想写入数据就需要恢复默认电位,也就是以“擦除”为前提,这个特性决定了SSD的数据写入方式,也会带来其他的一系列问题。

最直接的影响就是SSD寿命,因为P/E循环次数是有限的,浮栅极不像HDD的GMR(巨磁阻尼)效应那样是永久的,存在次数限制。而不同类型的闪存P/E次数是不一样的,传统的2D SLC闪存P/E次数可达100,000次,而2D MLC则有3000-5000次,企业级的可达10000次,2D TLC则是1000-1500次比较常见,而现在的3D TLC闪存由于使用了不同的工艺,其P/E次数已经能达到3000次,新进的鄙视链底端角色3D QLC其实也有1000P/E,寿命其实还是可以的。

而有了闪存的P/E次数和SSD的容量,通过一条公式是可以计算出理想情况下SSD的最大寿命的:

SSD寿命=(闪存P/E×SSD闪存容量)÷(写入放大系数×年数据写入量)

以一个240GB的3D TLC SSD为例,闪存3000P/E,SSD的闪存容量实际是256GB,写入放大系数这个其实和主控算法和写入的数据类型有关的,其实很难说具体数值是多少,这里取5这个较大的值,至于年数据写入量嘛,这完全取决于个人使用习惯,这里就取2000GB,其实这写入量已经相当大了,所以:

(3000 × 256)÷(5 × 2000)=76.8年

这个SSD能用76年?以闪存的理论寿命来说是对的,然而我刚才也说过这是理论的最大寿命,是在一切都在理想情况下算出来的,而他的最小值呢?其实可以参考厂商为这个SSD的提供的质保市场,多数是三年或者五年,有些高端产品会提供十年质保,他们给出这样的质保时间就说明这款SSD在这段时间内大概率不会坏掉,毕竟RMA是需要人力物力投入的,SSD在质保期内大面积挂掉这会让厂商赔相当多的钱,而且对自己的名声也不是好事情。

另外现在多数厂商还会给出SSD的寿命周期写入量TBW,有些则是给出每日复写次数DWPD,后者其实可以换算成TBW,假设厂商为一个512GB的SSD给出的DWPD是1,说明它每天可以写入自身一次的数据,也就是512GB,质保期5年,所以它的TBW就等于512GB × 365 × 5 ÷ 1024=912.5。

有些人会误以为这个TBW就是SSD寿命周期可以写入数据总量,写这么多数据后SSD就会挂掉,其实不是的,其实这个数字的意思是你如果在保修期内写入超过这么多数据的话就不给你保修了,因为你的写入操作已经超出了这个SSD正常使用的范畴,其实一般来说这个数字也挺难超过的,能超过这个数的人我倒是挺想知道你平常是怎么折磨这个SSD的。

当然TBW这个数字不是完全没有价值的,你可以看作是SSD写入耐久度的最小值,而你的SSD实际寿命就在TBW值和闪存的理论写入最大值之间。

然而真相远没有这么简单

实际上因为闪存寿命耗尽而挂掉的SSD只占少数,大部分SSD都是因为其他各种各样的原因挂掉的,有些是因为主控烧了,主控比闪存先挂的现象很常见,因为SSD主控的工作温度大多数都很高,SSD的所有读写操作都要经它之手,它的工作压力其实是最大的,所以突然猝死是相对可能的。

还有一个可能性就是主控和闪存都安好,然而其他供电元件坏了,SSD上面虽然大家都只关心主控、闪存、缓存这些主要芯片,不过它上面其实还有不少其他芯片和元件的,而这些东西也有可能故障,一旦故障也有可能导致整个SSD瘫痪,特别是电源不稳定时供电元件烧毁的可能性相当大,比如上图这块可怜的SSD,不过这种故障其实SSD数据可能还有得救,而闪存或者主控挂了数据就真没了。

而针对这些可能出现的故障,厂商通常都会给出一个MTBF故障间的平均时间,意思就是消费者硬盘两次故障之间的平均间隔时间是多少,通常这个值都比较大,以Intel 760p为例,MTBF是160万小时,换过来有100多年,所以其实没有啥参考价值,说到底还是个随机事件,被你碰到了算你运气不好。

所以其实已经没有什么好害怕的了,SSD是否暴毙其实就是在掷骰子,运气不好就会挂掉,与其算这个算哪个担心SSD的寿命,还不如买个性能好的用起来爽一点,真担心的话就去买个质保长一些的,至少SSD在质保期内挂掉的可能性还是比较小的。

最后来说下SSD两种常见的死亡方法,第一种是写入锁定,就是主控检查到你SSD已经不行了,直接不允许写入任何东西,这种状况其实是最好的死亡方式,至少你还有拯救数据的机会,而第二种则是毫无征兆的突然暴毙,这种其实是最常见的,你自己没有任何拯救数据的机会,而厂家大多数情况下都不会帮你把数据恢复出来,而找第三方数据恢复服务的话,价格也是极高的,所以,多备份自己的重要数据吧。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SSD
    SSD
    +关注

    关注

    20

    文章

    2851

    浏览量

    117255
收藏 人收藏

    评论

    相关推荐

    ADS8689转换值要通过什么公式计算出电压是多少伏?

    is the conversion data 每秒读一次转换值 ADS8689_ReadWrite(ADS8689_NOP, 0x00, 0x0000); ADS8689_ReadWrite(ADS8689_NOP, 0x00, 0x0000); 这个转换值要通过什么公式计算出电压是多少伏?
    发表于 11-29 06:09

    TPA2013D1功率是如何计算出来的,和哪些因素有关?

    有关,如何计算? 和输入有关么,比如IN+ 接输入P,IN-接地 和IN+接输入P, IN-接输入N输出功率应该相差4倍吧?? 请答疑,谢谢! 主要想知道功率是如何计算出来的。和哪些因素有关
    发表于 11-07 07:52

    请问TAS5805M如何将计算出的系数转换为tas5805对应数据?

    现在我可以根据一些数据来计算出系数,计算出的系数与PPC3的一样,但是不知道对应的转换公式,不知道计算出的浮点数据是如何转换tas5805可以使用的数据的?
    发表于 09-30 06:16

    按照跟随的方式搭建OPA2354的SR测试电路,实际电路的输出计算出的SR比datasheet的高很多,什么情况

    按照跟随的方式搭建OPA2354的SR测试电路,VS=5V,G=1,4V step,实际电路的输出计算出的SR比datasheet的高很多,什么情况?请指导。
    发表于 09-09 07:17

    LTSR 25-NP计算出来的电流误差特别大,为什么?

    大家好,我现在使用的电流传感器是lem的LTSR 25-NP,其中电流和输出电压关系是:v=2.5+0.025*I,现在的AD采样输入范围是0-3V,中间有一个放大倍数,但是即使这样,电压稍微波动一些,计算出来的电流误差就特别大,请大家支招,谢谢!
    发表于 09-03 08:18

    如何计算IGBT的寿命

    首先,根据整车的路谱数据来计算电流、功率因数等参数,同时要考虑到冷却水的流量和温度。 接着,利用这些参数结合IGBT的热特性,可以计算出时域上的温度分布情况。 使用雨流计数法,可以进一步计算出
    的头像 发表于 07-31 17:18 523次阅读
    如何<b class='flag-5'>计算</b>IGBT的<b class='flag-5'>寿命</b>

    在不破坏ESP8266的情况下,ADC的最大电压是多少?

    在不破坏ESP8266的情况下,您可以应用于ADC(TOUT,引脚6)的最大电压是多少。是否有像二极管一样的内部削波器?
    发表于 07-19 06:24

    dd马达偏差量怎么计算出来的

    反映了电机的实际位置与期望位置之间的差异。 计算DD马达偏差量的基本步骤如下: 确定期望位置:期望位置是系统希望电机达到的目标位置。这可以是用户输入的值,也可以是系统根据某种算法计算出来的值。 获取实际位置:实际位置是电机当前的实际位置。这可
    的头像 发表于 07-11 15:05 570次阅读

    怎么根据变压器容量计算出最大需量

    需量时,我们需要考虑变压器的容量以及整个电力系统的负荷情况。下面将介绍如何根据变压器容量来计算最大需量,并提供详实和细致的解释。 首先,变压器容量是电力系统设计中的一个重要参数。它决定了变压器所能提供的
    的头像 发表于 03-24 10:16 5161次阅读

    没有触摸的情况下寄生电容怎么计算Cp的值?

    如果在没有触摸的情况,CS=Cp,用公式计算的,raw count取值满量程的85%的情况下计算,是否可行 or 在不触摸的情况下,怎么
    发表于 02-01 06:36

    如何计算出ADE7880的功率因子?

    如何计算出ADE7880的功率因子,现有驱动程序能正常测出并计算出各电压值或电流值。
    发表于 12-26 07:12

    IcalibrationFSP 0.0002这个值是怎么计算出来的?

    如上述截图(UG-1098 51页),有以下几点不明白: 1)IcalibrationFSP 0.0002这个值是怎么计算出来的,最好说明下推导过程,这个值和ADE9000的动态范围及互感器的比值
    发表于 12-25 08:14

    AD7173-8读出来的AD值是偏移值,怎么计算出电压?

    读出来的AD值是偏移值,怎么计算出电压?我按移码还原成原码,就是不对? ADVoltage[n]=(((浮点数)ADdata/0x7fffff)*VREF; 这样计算电压为正时正确的,可读不出来负值。
    发表于 12-12 07:05

    已知电机的电压电流转速的情况下,如何计算电机的输出扭矩?

    如何计算电机的输出扭矩,已知电机的电压 电流 转速的情况下? t=9549*p/n 在不同的工况的p的取值,比如在空载的取值?
    发表于 12-11 07:29

    什么是always on buffer?什么情况下需要插always on buffer?

    相比普通的buffer cell,always on buffer(AOB)有secondary always on pin,可以让AOB即使在primary power off的情况下保持on的状态;AOB在secondary pg pin off的情况下也是off的。
    的头像 发表于 12-01 15:31 2428次阅读
    什么是always on buffer?什么<b class='flag-5'>情况下</b>需要插always on buffer?