Non-volatile memory program failure recovery via redundant arrays

    公开(公告)号:US11144389B2

    公开(公告)日:2021-10-12

    申请号:US16580361

    申请日:2019-09-24

    Abstract: Methods, systems and computer-readable storage media for requesting programming of N portions of a plurality of non-volatile memories (NVMs) in accordance with received data. Redundancy information sufficient to recover from failures of M of the N portions for which programming was requested is updated in response to the requesting programming. Upon identifying one to M of the N portions that have failed the programming, re-programming of the one to M of the N portions is requested in accordance with data calculated based at least in part on the redundancy information.

    Non-volatile memory program failure recovery via redundant arrays
    2.
    发明授权
    Non-volatile memory program failure recovery via redundant arrays 有权
    非易失性存储器程序通过冗余阵列故障恢复

    公开(公告)号:US09569320B2

    公开(公告)日:2017-02-14

    申请号:US13728573

    申请日:2012-12-27

    Abstract: Non-volatile memory program failure recovery via redundant arrays enables higher programming bandwidth and/or reduced latency in some storage subsystem implementations, e.g. a solid-state disk. Data to program N portions of a plurality of non-volatile memories is received at a non-volatile memory controller. The data includes particular data to program a particular one of the N portions. The particular data is stored in an allocated buffer associated with the non-volatile memory controller. Programming the particular data to a particular one of the non-volatile memories is begun. Redundancy information sufficient to recover from failures of M of the N portions is updated. The allocated buffer is freed. At least one of the storing, the beginning programming, the updating, and the freeing is in response to the receiving of the particular data. The freeing is prior to the particular non-volatile memory completing the programming.

    Abstract translation: 通过冗余阵列的非易失性存储器程序故障恢复可在一些存储子系统实现中实现更高的编程带宽和/或降低的延迟。 固态磁盘。 在非易失性存储器控制器处接收用于编程多个非易失性存储器的N个部分的数据。 数据包括用于对N个部分中的特定一个进行编程的特定数据。 特定数据存储在与非易失性存储器控制器相关联的分配缓冲器中。 开始将特定数据编程到特定的一个非易失性存储器。 更新足以从N个部分的M的故障中恢复的冗余信息。 分配的缓冲区被释放。 存储,开始编程,更新和释放中的至少一个是响应于特定数据的接收。 释放是在完成编程的特定非易失性存储器之前。

    Storage Device Firmware and Manufacturing Software
    3.
    发明申请
    Storage Device Firmware and Manufacturing Software 审中-公开
    存储设备固件和制造软件

    公开(公告)号:US20160293274A1

    公开(公告)日:2016-10-06

    申请号:US15089068

    申请日:2016-04-01

    Abstract: Storage device FirmWare (FW) and manufacturing software techniques include access to FW images and communication of a manufacturing software tool. The manufacturing software tool enables download of the FW images into an I/O device and controlling a manufacturing test of the I/O device that is a storage device providing a storage capability. Execution of the downloaded FW images enables an I/O controller of the I/O device to provide the storage capability via operation with one or more selected types of flash memory devices. The selected types are selected from a plurality of flash memory types that the I/O controller is capable of operating with by executing appropriate ones of the FW images. Optionally the manufacturing test includes testing the storage capability of the I/O device. The techniques further include an SSD manufacturing self-test capability.

    Abstract translation: 存储设备FirmWare(FW)和制造软件技术包括访问FW映像和通信制造软件工具。 制造软件工具可以将FW图像下载到I / O设备中,并控制作为提供存储能力的存储设备的I / O设备的制造测试。 下载的FW图像的执行使得I / O设备的I / O控制器能够通过与一个或多个所选类型的闪存设备的操作来提供存储能力。 选择的类型是从I / O控制器能够通过执行适当的FW图像来操作的多个闪速存储器类型中选择的。 可选地,制造测试包括测试I / O设备的存储能力。 这些技术还包括SSD制造自检能力。

    NON-VOLATILE MEMORY PROGRAM FAILURE RECOVERY VIA REDUNDANT ARRAYS

    公开(公告)号:US20200019463A1

    公开(公告)日:2020-01-16

    申请号:US16580361

    申请日:2019-09-24

    Abstract: Methods, systems and computer-readable storage media for requesting programming of N portions of a plurality of non-volatile memories (NVMs) in accordance with received data. Redundancy information sufficient to recover from failures of M of the N portions for which programming was requested is updated in response to the requesting programming. Upon identifying one to M of the N portions that have failed the programming, re-programming of the one to M of the N portions is requested in accordance with data calculated based at least in part on the redundancy information.

    Non-volatile memory program failure recovery via redundant arrays

    公开(公告)号:US10467093B2

    公开(公告)日:2019-11-05

    申请号:US15402773

    申请日:2017-01-10

    Abstract: Methods, systems and computer-readable storage media for programming, by a storage controller, particular data stored in an allocated buffer to a particular one of a plurality of non-volatile memories (NVMs). Redundancy information may be updated sufficient to recover from failures of the plurality of NVMs. The allocated buffer may be freed prior to and independent of the particular NVM completing the programming. The particular data may continue to be programmed independent of freeing the allocated buffer. The continuing of the programming of the particular data may include determining whether there are any failures of the programming the particular data.

    Higher-level redundancy information computation
    7.
    发明授权
    Higher-level redundancy information computation 有权
    更高层次的冗余信息计算

    公开(公告)号:US09183140B2

    公开(公告)日:2015-11-10

    申请号:US14181252

    申请日:2014-02-14

    CPC classification number: G06F12/0246 G06F11/1044 G06F11/108 G06F11/2094

    Abstract: Higher-level redundancy information computation enables a Solid-State Disk (SSD) controller to provide higher-level redundancy capabilities to maintain reliable operation in a context of failures of non-volatile (e.g. flash) memory elements during operation of an SSD. A first portion of higher-level redundancy information is computed using parity coding via an XOR of all pages in a portion of data to be protected by the higher-level redundancy information. A second portion of the higher-level redundancy information is computed using a weighted-sum technique, each page in the portion being assigned a unique non-zero “index” as a weight when computing the weighted-sum. Arithmetic is performed over a finite field (such as a Galois Field). The portions of the higher-level redundancy information are computable in any order, such as an order based on order of read operation completion of non-volatile memory elements.

    Abstract translation: 高级冗余信息计算使得固态盘(SSD)控制器能够提供更高级别的冗余能力,以在SSD的运行期间在非易失性(例如闪存)存储器元件的故障的上下文中维持可靠的操作。 高级冗余信息的第一部分是使用奇偶校验编码来计算的,该奇偶编码经由待被较高级别冗余信息保护的数据的一部分中的所有页面的异或。 使用加权和技术来计算较高级冗余信息的第二部分,当计算加权和时,该部分中的每个页面被分配唯一的非零“索引”作为权重。 在有限域(例如伽罗瓦域)上执行算术。 高级冗余信息的部分可以以任何顺序计算,诸如基于非易失性存储器元件的读操作完成顺序的顺序。

Patent Agency Ranking