作者:Ralph Thomson
随着对新特性和功能需求的增加,大容量存储在嵌入式工业应用中的使用持续增长。虽然通过增加NAND芯片容量使更复杂的GUI和应用成为可能;更快的接口和各种托管NAND解决方案的可用性;寻找能够应对极端环境需求的足够固态存储解决方案的挑战仍然存在。幸运的是,NAND存储介质和控制器设计的发展意味着现在可以使用更可靠和更具成本效益的选项。
满足极端环境的需求
嵌入式设计人员对大容量存储功能的愿望清单中,高可靠性通常是最重要的。清单上还有对冲击和振动的高机械抵抗力的需求,这通常排除了使用可移动存储,转而使用焊接球栅阵列(BGA)设备。保证在扩展温度范围内的工作也可以添加到列表中。此外,理想的解决方案应该长期可用,以防止昂贵且耗时的存储设备重新认证。
实际使用案例 — 寻找合适的存储解决方案
在 SSD 中,数据完整性和电源故障数据保护的优势至关重要,这是一个实际用例,那就是火车制动管理系统的优势。虽然运输系统设计人员非常小心地确保稳定的电力供应,但掉电并不是完全可以预防的。如果没有内置的固有电源故障保护,则存在明显的数据损坏风险。如果受影响的文件是操作系统或应用程序软件的一部分,这可能意味着制动管理系统的重大故障。典型的制动管理系统监控关键参数,例如总使用小时数、制动效率和温度,以告知关键的维护计划。记录此数据期间的故障可能意味着错过或不必要的停机时间以及增加的维护成本。
为这种类型的嵌入式应用选择合适的 SSD 至关重要。在许多情况下,单级单元(SLC)NAND存储器可能是理想的技术,它既提供强大的数据保留能力,又提供高编程和擦除(P/E)周期。但是,这种技术的主要问题是缺乏高容量选项和更高的内存成本。如果我们考虑一种低成本的技术,如平面(2D)多层单元(MLC)NAND,每个单元可容纳两个位,我们会立即获得更经济,更高容量的选择。在大多数情况下,可用的耐久性为 3,000 到 10,000 P/E 周期,这对于许多应用来说已经足够了。
完美的解决方案?
嗯,不完全是。
平面MLC NAND将其两位数据存储在一个存储单元中。这两个位位于两个不同的配对页面中,这些页面在不同的阶段进行编程。这意味着,如果在写入一页时电源出现故障,则配对页中的数据也可能损坏。主机文件系统可能能够管理在电源故障时正在写入的页面,但在以后尝试读取该数据之前,它不会知道损坏的配对页面。配对页面的内容将包含不可更正(UNC) 数据,其中每个单元格的充电状态不确定,无法解析为 0 或 1。
防止这种情况的传统解决方案包括将驱动器的电源保留足够的时间,以允许页面程序操作完成。这可以通过板载断电保护电容来实现,为页面程序时间和一些程序延迟提供足够的电荷。如果正在使用的驱动器具有 DRAM 缓存,则存储的能量需要显著增加,以防止缓存内容丢失。典型的断电保护(PLP)解决方案可能类似于图1中的通用示例。
图1:通用电源保持电路
新型 NAND 技术
内存架构的最新进展使一类新的基于 3D NAND 的固态存储解决方案成为可能,消除了配对页面问题。3D NAND 使用垂直堆叠的存储单元层,可提供与平面 NAND 闪存相同的耐用性,具有更高的成本效益和更快的性能。借助美光的工业级 3D MLC NAND,现在可以一次性完成编程,同时对两个页面进行编程。图2中单程编程的表示显示了MLC NAND中电池的经典阈值电压(Vt)分布,以及如何将充电状态解码为这些电池的位值。
图 2:单程编程的表示
上页和下页可由NAND闪存控制器在一次操作中编程,因此电池电荷同时移动到两个页面所需的水平,从而有效地消除了电源中断期间配对页面中数据损坏的可能性。控制器有责任确保块中的页面按顺序编程,并且下部和上部页面地址位于共享字行(WL) 上。
美光的3D NAND+Greenliant的NANDrive解决方案
具有智能控制器,例如Greenliant开发的用于其小型eMMC NANDrive BGA SSD的控制器,以及3D MLC NAND的单程编程功能。制动管理系统设计人员现在可以确保存储的数据不受突然断电的影响。
控制器在一个步骤中对所有状态进行编程,而不会干扰相邻单元,从而降低驱动器上已有数据(称为“静态数据”)的风险。此外,该控制器通过使用美光先进的 3D NAND 功能,有助于最大限度地减少传输中或传输中的数据损坏(在临时 DRAM 或 SRAM 缓存缓冲区中)。
如果写入操作中途电源出现故障,主机通常可以使用日记或其他一些事务故障保护协议来确定最后一个写入的文件未完成,因此应忽略或替换该文件中的数据。如果应用程序使用小型写入,则最好是 NAND 页面的大小。然后,复杂的控制器固件将使用利用3D NAND自动读取校准的高级算法来尝试恢复最后一页,即使在写入操作期间电源出现故障也是如此。
控制器自适应阈值电压调谐进一步增强了控制器恢复最后一页数据的能力。为了保留由于过度 P/E 循环导致的介电泄漏而可能丢失的数据,控制器还可以定期刷新存储单元中的数据。
通过实施上述所有功能,Greenliant的工业eMMC 5.1 SSD和美光的3D MLC NAND已成功通过广泛的电源故障测试(数千次电源中断周期),而不会在制动管理系统中损坏数据。