关于苹果硬盘的架构讨论

1、传统 SSD 硬盘包含三个部分:主控、缓存(不必须)以及闪存颗粒。主控负责将收到的虚拟地址映射到真实地址(FTL),并通过这实现磨损均衡等功能。

2、苹果从 iPhone 7/8 开始引入 E2NAND,和传统闪存颗粒不同,E2NAND 颗粒上集成片上 MSP (存储器信号处理)控制器,以支持片上 ECC 在内的补偿算法。

3、苹果自 iPhone 7 开始魔改了 NVMe 协议,NVMe 转换和映射发生在 SoC 本地,推测苹果在 SoC 实现类 FTL 的功能。


4、苹果在 A10 开始引入内核完整性保护,在 SoC 中内置主控芯片(不清楚之前有没有)。

5、Mac 使用 T2 芯片后不再有专门的硬盘主控芯片,T2 直接通过 PCIe×1 连接闪存颗粒,即 T2 就是事实上的硬盘主控。T2 芯片由 A10 发展而来,且 Mac 使用 E2NAND 也是从应用 T2 芯片开始。



所以根据以上五点我们就能得出如下推论:

1、E2NAND 并不包含完全功能的主控,仍然需要特定主控(如 T2 或者 A/M 系列芯片)才能正常使用。或者绕过 E2NAND 片上控制器,当成普通闪存颗粒使用。

2、果系主控(T2 或者 A/M 系列的片上主控)需要特定的 E2NAND 才能正常工作,两者相互绑定,所以将 E2NAND 颗粒换成普通 NAND 颗粒来实现扩容的方式并不可行,甚至混用不同来源 E2NAND(如从不同 Mac 上拆下来的 E2NAND 塞一起)也是不可行的(但可以使用强刷固件的方法伪装成可行的颗粒,但这会清除 E2NAND 的寿命信息,导致损耗均衡算法失效)。

使用颗粒 + 伪装主控的方式存在理论上的可行性,但成本可能很高,不如拆颗粒。

目前唯一普通消费者以正规途径获得全新正版果系 E2NAND 的方式是直接购买苹果的:Apple 固态硬盘升级套件 (适用于 Mac Pro),然后拆颗粒。

评论

此博客中的热门博文

骁龙峰会图像传感器信息