PC-3000 Flash 从NAND闪存设备中恢复数据的主要数据修正方法,以获得最高成功率

大家好!BwC硬盘123

上周我们在ACE Lab 免费网络研讨会上讨论了如何借助PC-3000 Flash在NAND Flash数据恢复中迈出第一步。作为后续,我们为您准备了这篇关于Flash案例恢复关键流程的文章。对于想要学习如何以最高效、最智能的方式处理NAND Flash的数据恢复初学者来说,这个话题会特别有趣。对于已有经验的数据恢复专家,本文可以作为处理Flash案例时主要数据校正方法的一个便捷检查清单。BwC硬盘123

BwC硬盘123

首先,我们将讨论ECC校正和无效扇区的重读BwC硬盘123

第一部分:理论。ECC。

在读取NAND存储芯片期间,可能会出现一些比特错误。比特错误的数量取决于以下因素:BwC硬盘123

NAND存储芯片的类型SLC, MLC, TLC, QLCBwC硬盘123
触点的清洁度脏的芯片通常读取效果较差BwC硬盘123
温度影响芯片拆焊时的高温可能会损坏存储单元BwC硬盘123
NAND存储单元的磨损程度如果NAND设备上的信息被重写了数百次,微小存储单元-电容的质量就会下降,读取时会伴随大量错误BwC硬盘123
芯片质量低劣如今,制造商为了削减成本,例如使用更小的技术工艺来压缩存储单元尺寸,导致新的闪存驱动器出现错误BwC硬盘123

如果你想从闪存驱动器中获得最高的恢复率,首先,你需要尽可能多地修复ECC错误。否则,所有数据都将损坏、无法使用或部分受损:BwC硬盘123

BwC硬盘123

错误校正的基本方法是ECC算法——最简单的数据修复方式。通常,控制器会在每个页面中加入额外的信息,称为备用区域(SA)。它包含一些标记(例如,用于镜像构建的标记)、不同的标志以及错误校正码(ECC)。ECC是基于用户最初写入的信息生成的特殊扩展数据。这些扩展数据有助于查找扇区/区域中的比特错误,并通过特殊的数学公式进行修复。通常,ECC码有特定的长度——即用于错误校正的字节数。ECC字节数越多,允许你在每个扇区/区域中修复更多的错误。BwC硬盘123

来自旧SLC NAND芯片的通用MBR扇区,页面大小为2112字节,扇区大小为528字节BwC硬盘123

BwC硬盘123

黄色 – 我们的数据区(DA)(512字节)BwC硬盘123
蓝色 – 我们在逻辑镜像中的块顺序标记(6字节),用于镜像构建的块号BwC硬盘123
绿色 – 错误校正码(ECC)(10字节):BwC硬盘123

BwC硬盘123

PC-3000软件试图在以下扇区中找到所有比特错误:BwC硬盘123

BwC硬盘123

然后它应用ECC码进行错误修复:BwC硬盘123

BwC硬盘123

让我们进入实践部分。BwC硬盘123

我们有一个美光芯片,容量4GB,芯片ID:0x2C44444BBwC硬盘123

我们强烈建议您仅在转换图上自动检测ECC(不要在芯片上检测)。在芯片上校正ECC时可能会出现不同的错误。不要浪费时间在芯片上校正ECC(屏幕左侧芯片节点下的部分)。BwC硬盘123

BwC硬盘123

BwC硬盘123
BwC硬盘123

然而,检测ECC并不总是那么容易。BwC硬盘123

在某些情况下,在检测和校正ECC之前,您应该检查您的转储是否存在坏字节或应用XOR主要针对ITE, SSS, AU控制器),然后才能在图上检测ECC。如果我们谈论旧的SLC和MLC NAND案例,在您进行页面转换之前,ECC校正将无法进行。BwC硬盘123

第二部分:重读。

从下面的例子中您可以看到,在这种情况下ECC校正进行得不太顺利。校正质量取决于许多因素——这就是为什么当ECC校正结束时,您应该始终使用ECC信息构建映射,以检查还有多少扇区未被校正。BwC硬盘123

BwC硬盘123

从截图中我们可以看到,在4GB容量中,有3.93GB的无效扇区。这意味着整个转储都充满了错误。每个文件都将损坏。要获得良好的比特错误原始恢复结果,错误率应低于5%,并且链的数量应少于100-500条。如果您没有注意链的数量,您可能会面临这样的情况:尽管只有几MB的错误,但您的文件却已损坏。BwC硬盘123

这时就该重读发挥作用了。BwC硬盘123

我们需要开始使用额外的数据校正方法——读取——来修复ECC校正后剩余的比特错误。BwC硬盘123

要启动读取过程,我们需要采取以下步骤:BwC硬盘123

BwC硬盘123

选择‘执行’比‘在后台运行(Shift)’更好,以便能够看到当前正在修复多少错误。BwC硬盘123

BwC硬盘123

通常,我们建议使用所有默认设置。读取尝试次数意味着重读的遍数。最好默认将此数字保持为1。‘如果成功’参数描述了在读取成功修复至少某些区域的情况下,额外的重读遍数。BwC硬盘123

BwC硬盘123

正如我们所见,得到结果并没有花太长时间。一些区域被校正了,但有些区域即使通过重读也未能校正:BwC硬盘123

BwC硬盘123

第三部分:读取重试。

在这种情况下,我们需要使用另一个功能——读取重试。这是一个特殊的NAND芯片命令,允许NAND存储芯片自行改变电压。NAND核心开始使用不同的电压电平来修复数据。这是一种特殊的自我修复系统,存在于所有QLC/TLC芯片以及一些现代MLC芯片中。目前,PC-3000 Flash支持针对大量QLC/TLC/MLC存储芯片的多种读取重试模式。随着每周PC-3000 Flash资源的更新,我们的工程师会为它们添加新的算法。BwC硬盘123

BwC硬盘123

如果此读取重试命令复选框处于激活状态,您将能够获得令人印象深刻的重读结果:BwC硬盘123

BwC硬盘123

下面您将找到另一个用于真正棘手案例的有用功能。BwC硬盘123

第四部分:节省时间的复合操作。

您可以通过使用复合操作功能来节省一点时间。如果您选择它,PC-3000软件会自动构建无效扇区映射并向您询问重读选项。但是,您将无法选择链的数量、它们的顺序等等。因此,尽管它会通过一些自动操作节省您的时间,但最终您可能会发现需要的链未被校正。BwC硬盘123

BwC硬盘123

请记住,如果您遇到超过1个芯片的案例,您需要确保在完成重读转储后,将第一个芯片重新插入PC-3000 Flash读取器中。有时,在完成重读转储后,您可能会忘记将第一个芯片再次插入PC-3000 Flash读取器。因此,当ECC校正结束时,您可能会尝试重读第一个芯片(转换图上的第0部分),而读取器中却是第二个芯片。最终,您将得到两个本应不同但却相似的部分。因此,在开始重读过程之前,请注意读取器中的芯片。BwC硬盘123

BwC硬盘123

第五部分:电压控制。

电压控制仅在最具挑战性的案例中有所帮助,即在进行ECC校正和重读程序后,比特错误的数量仍然非常高的情况。基本上,电压控制是一种读取重试操作,但是手动模式。我们不是让芯片自行设置电压,而是使用软件控制来设置自己的电压,用于读取NAND芯片中的每个页面。BwC硬盘123

每个芯片都知道它当前工作的温度。根据温度的变化,芯片的电压也会改变。这里您可以看到一个包含温度和电压近似值的表格。有时,由于芯片的内部问题,此表中的值可能会偏移,并且由于电压错误,您将无法重读扇区。BwC硬盘123

BwC硬盘123

请注意,此选项仅在以下设备中可用:BwC硬盘123
► PC-3000 Flash Reader 3.0 + 电源适配器(上一代)BwC硬盘123
► PC-3000 Flash Reader 4.0(最新一代,电源适配器已集成BwC硬盘123

BwC硬盘123

如何设置电压控制?BwC硬盘123

当所有可能的错误修复准备工作都已完成,但错误数量仍在几百MB左右时,我们应该尝试使用电压控制。通常,如果NAND存储芯片支持读取重试,我们不应该使用不同的电压——读取重试总能提供最佳结果!BwC硬盘123

但有时,您的芯片可能不支持读取重试方法。这就是为什么您需要尝试检测电压范围并启动校正程序。BwC硬盘123

在您修复了ECC、进行了重读并构建了坏扇区映射之后,您需要进入重读菜单并选择下一个功能:BwC硬盘123

BwC硬盘123

请记住,如果您点击‘更多’,然后点击‘读取重试方法检查’,您将能够检查读取重试的成功率并选择最佳方案。在大多数情况下,它会自动选择最佳变体,但有时您需要手动操作。BwC硬盘123

BwC硬盘123

现在读取重试选项已经出现

第六部分:温度控制。

有时,即使在电压控制下进行重读后,您也无法获得良好的重读结果。在这种情况下你能做什么?BwC硬盘123

还有一种方法可以通过“调节”温度来获得更好的重读结果。对于某些存储芯片,非常低的温度(-15°С…-20°С)可能有助于增强芯片内部的电传输,从而提供最佳可能的结果。BwC硬盘123

BwC硬盘123

图片由 CapitalDataRecovery 提供

在某些情况下,您可以尝试加热芯片。如果将其加热到+80°C…140°C,您也会获得良好的重读结果。BwC硬盘123

BwC硬盘123

但您必须小心——高温会熔化塑料外壳并损坏读取器。BwC硬盘123

有关如何降低损坏芯片、读取器等风险的更多信息,请访问此链接BwC硬盘123

让我们总结一下要点:BwC硬盘123

  1. 仅在准备图上检测和校正ECCBwC硬盘123

  2. 有时您需要使用附加功能来检测和校正ECC(坏字节、XOR或页面转换BwC硬盘123

  3. 要获得良好的恢复结果,比特错误的数量应少于5%,并且未校正链的数量不应大于200-300BwC硬盘123

  4. 如果您有很多比特错误,请使用重读BwC硬盘123

  5. 如果您的芯片支持读取重试方法,请使用它而不是其他选项BwC硬盘123

  6. 当NAND芯片不支持读取重试时,电压控制会很有用BwC硬盘123

  7. 如果您的芯片不支持读取重试,请尝试使用更多 – 读取重试模式检查(此方法仅适用于现代QLC/MLC/TLC芯片BwC硬盘123

  8. 在一些AU、SSS、Phison和SM案例中,您可以使用重读映射生成器工具来节省时间。BwC硬盘123

  9. 在即使电压控制也无法帮助的情况下,您可以尝试“调节”温度。BwC硬盘123

祝您的Flash数据恢复案例顺利,如有任何问题,请随时联系我们的技术支持部门BwC硬盘123