加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 软件攻略 > Pc3000 > 固态恢复技术

PC-3000 Flash. 特斯拉汽车案例

时间:2025-11-29 17:37:28  作者:ACE LAB
原文地址:https://blog.acelab.eu.com/pc3000flash_tesla-car-case.html  

当我们谈论从USB闪存设备恢复数据时,磨损的NAND闪存芯片是一个常见问题。如今,即使是出厂时的芯片质量也可能很低。您的U盘可能因此在一个月内就损坏。不幸的是,在我们谈到其他使用NAND芯片的设备时,也能看到这种趋势,例如固态硬盘、手机,甚至现代汽车! 1rh硬盘123

1rh硬盘123

2012年至2018年间生产的特斯拉汽车使用了由Nvidia Tegra 3片上系统驱动的信息娱乐系统,该系统包含8GB的eMMC NAND存储。问题在于,这些闪存芯片会磨损,达到其擦写周期限制,无法可靠地存储数据,从而导致运行故障。大约有16万辆汽车内部使用了此类eMMC存储,并且可能受到此问题影响。存储控制器无法再找到可用的良好NAND块,因此发生故障。一旦存储设备磨损,它可能会影响汽车的某些功能,如触摸屏、后视摄像头、除雾系统等。在最坏的情况下,它甚至可能影响特斯拉汽车的关键功能,如自动驾驶。 1rh硬盘123

特斯拉已经意识到这些问题,并尝试通过一些更新来补救,这些更新减少了写入的日志数量,改进了错误纠正和存储策略。此外,在2020年5月,特斯拉开始生产备件,现在使用64GB的美光eMMC,而不是海力士的8GB eMMC。 1rh硬盘123

但主要问题仍然存在。如果您需要查找并保存一些系统文件(如密钥和证书),该怎么办? 1rh硬盘123

让我们来看两个来自此类汽车的真实案例。 1rh硬盘123

第一个芯片是SM控制器,内存为ADD79491 6044ADD7,部件大小 = 4096Mb,页大小 = 8832字节,块大小 = 2048页。在这种情况下,芯片有两个Bank,但您也可能遇到只有一个Bank的芯片。我们需要找到名为 car.key 和 car.crt 的密钥文件和证书文件。 1rh硬盘123

为此,我们需要执行一些准备步骤。 1rh硬盘123

首先,您需要读取该芯片的转储数据。您需要找到引脚定义图。 1rh硬盘123

成功读取转储数据后,我们首先更改块大小。 1rh硬盘123

步骤 1。  由于该驱动器的容量非常大,第一步是在任务中将块大小更改为4096页。您可以像这样操作: 1rh硬盘123

>
 此操作对于应用此大小的XOR是必要的。在某个阶段,您将需要恢复块大小的原始值(等于256),但我们稍后会回到这一点。 1rh硬盘123

步骤 2。 由于我们遇到的是一个具有两个Bank的案例,我们最终得到了一个包含两个转储数据的任务。与单Bank案例的区别仅在于少了一个“按块/页连接”的步骤。 1rh硬盘123

因此,两个Bank的主要问题是每个Bank都有对应的XOR。您可以在顶部的XOR列表中看到它们。 1rh硬盘123

1rh硬盘123

XOR的名称包含关于芯片使能部分和将要执行的操作的信息(用于错误纠正的ECC区域数据解密,或用于镜像组装的数据区域数据解密)。如果是单Bank芯片,则不需要CE1的XOR。 1rh硬盘123

步骤 3。 这些是此类案例的典型准备步骤: 1rh硬盘123

1rh硬盘123

在这种情况下,XOR用于一些虚拟平面,其大小是我们通过在芯片节点上更改芯片块大小来设置的。这个小技巧避免了在不同图中(即在图的第三行)校正和重新读取转储数据的需要,我们在那里定义ECC,进行校正并重新读取无效扇区。图的第四行再次是XOR,但这是用于数据的XOR,它本身并不自足,这就是为什么在应用了ECC的XOR之后应用它很重要。这种XOR更改看起来与AU案例非常相似,当时我们需要先选择用于ECC的XOR,然后再选择用于块编号的XOR。 1rh硬盘123

页面设计应如下所示: 1rh硬盘123

页大小:16个扇区 8832
 扇区大小 544
 结构*
 32-512; 0-32;
 544-512; 0-32;
 1126-512; 0-32;
 1638-512; 0-32;
 2220-512; 0-32;
 2732-512; 0-32;
 3314-512; 0-32;
 3826-512; 0-32;
 4408-512; 0-32;
 4920-512; 0-32;
 5502-512; 0-32;
 6014-512; 0-32;
 6596-512; 0-32;
 7108-512; 0-32;
 7690-512; 0-32;
 8202-512; 0-32; 1rh硬盘123

这是非常重要的一步! 在添加了所有转换之后,我们回到我们操作的第一步,并在参数中恢复初始的块大小(256页)。 1rh硬盘123

在所有转换完成、ECC生效并且转储数据尽可能被重新读取之后,您可以开始构建镜像。镜像是使用特殊脚本组装的。请确保所有参数与图片中相同。 1rh硬盘123

1rh硬盘123

如果ECC问题严重,您可以使用GREP搜索 car.crt,模式为 @4\x2D\x42\x45\x47\x49\x4E\x20\x43\x45\x52\x54;搜索 car.key 的模式为 @4\x2D\x42\x45\x47\x49\x4E\x20\x52\x53\x41\x20。两种类型的文件在文件末尾都有字节序列 2D2D2D2D2D0A,可用于确定文件的确切大小。 1rh硬盘123

第二个案例是PS8032控制器或类似控制器,1×2 ADD794DA 74C30000 内存,部件大小 = 4096Mb,页大小 = 8832字节,块大小 = 256页,双通道内存,这表明存在两组独立的IO0-7线路。 1rh硬盘123

总的来说,第二个任务与上面的案例非常相似,但有一些例外。 1rh硬盘123

  1. 图的第一行上的ECC应这样定义: 1rh硬盘123

    – 0                   [1076]
     – 1076             [1072]
     – 2148             [1072]
     – 3220             [1072]
     – 4292             [1072]
     – 5364             [1072]
     – 6436             [1072]
     – 7508             [1072] 1rh硬盘123

  2. 典型的转换集和组装参数应如下所示: 1rh硬盘123

1rh硬盘123

除此之外,方法和问题与本文的第一个案例相同。主要问题是转储数据的质量。芯片通常已经磨损。因此,更简单的做法是:先进行所有转换,然后通过GREP搜索找到必要的 car.key 和 car.crt 文件,并专注于重新读取包含这些文件的页。请记住,通道是不同的,并且转储数据是通过扇区组合的。这就是为什么您只能在图的第一行重新读取,但在最后一行保存文件。为了更方便地重新读取,您可以稍微改变转换的顺序,如下所示: 1rh硬盘123

1rh硬盘123

如果您对数据恢复案例有疑问,欢迎您向ACE实验室的技术支持部门提出。 1rh硬盘123

来顶一下
返回首页
返回首页
推荐资讯
相关文章
    无相关信息
栏目更新
栏目热门