CORRECTION OF BLOCK ERRORS FOR A SYSTEM HAVING NON-VOLATILE MEMORY
    11.
    发明申请
    CORRECTION OF BLOCK ERRORS FOR A SYSTEM HAVING NON-VOLATILE MEMORY 有权
    对具有非易失性存储器的系统的块错误的校正

    公开(公告)号:US20140281814A1

    公开(公告)日:2014-09-18

    申请号:US13829088

    申请日:2013-03-14

    Applicant: APPLE INC.

    Abstract: Systems and methods are disclosed for correction of block errors for a system having non-volatile memory (“NVM”). In particular, the system can store a parity page per page-modulo, where a pre-determined number of pages of a block or a band of the NVM may be allocated as page-modulo XOR (“PMX”) parity pages. This can be a space efficient approach for recovering from single-block data errors such as, for example, single-page uncorrectable error-correcting codes (“uECCs”) and/or errors caused by word line shorts.

    Abstract translation: 公开了用于校正具有非易失性存储器(“NVM”)的系统的块错误的系统和方法。 特别地,系统可以每页模数地存储奇偶校验页,其中可以将NVM的块或带的预定数量的页分配为页模XOR(“PMX”)奇偶校验页。 这可以是用于从单块数据错误(例如,单页不可校正纠错码(“uECC”))和/或由字线短路引起的错误进行恢复的空间有效的方法。

    STOCHASTIC BLOCK ALLOCATION FOR IMPROVED WEAR LEVELING
    12.
    发明申请
    STOCHASTIC BLOCK ALLOCATION FOR IMPROVED WEAR LEVELING 审中-公开
    用于改进磨损水平的STOCHASTIC BLOCK分配

    公开(公告)号:US20140281179A1

    公开(公告)日:2014-09-18

    申请号:US14299516

    申请日:2014-06-09

    Applicant: Apple Inc.

    Abstract: Systems and methods are disclosed for stochastic block allocation for improved wear leveling for a system having non-volatile memory (“NVM”). The system can probabilistically allocate a block or super block for wear leveling based on statistics associated with the block or super block. In some embodiments, the system can select a set of blocks or super blocks based on a pre-determined threshold of a number of cycles (e.g., erase cycles and/or write cycles). The block or super block can then be selected from the set of super blocks. In other embodiments, the system can use a fully stochastic approach by selecting a block or super block based on a biased random variable. The biased random variable may be generated based in part on the number of cycles associated with each block or super block of the NVM.

    Abstract translation: 公开了用于随机块分配的系统和方法,用于具有非易失性存储器(“NVM”)的系统的改进的磨损均衡。 基于与块或超级块相关联的统计量,系统可以概率地分配块或超级块用于磨损均衡。 在一些实施例中,系统可以基于多个周期(例如,擦除周期和/或写周期)的预定阈值来选择一组块或超块。 然后可以从超级块集中选择块或超级块。 在其他实施例中,系统可以通过基于偏置随机变量选择块或超块来使用完全随机的方法。 可以部分地基于与NVM的每个块或超级块相关联的周期数来生成偏置随机变量。

    DATA PARTITIONING SCHEME FOR NON-VOLATILE MEMORIES
    13.
    发明申请
    DATA PARTITIONING SCHEME FOR NON-VOLATILE MEMORIES 审中-公开
    非易失性存储器的数据分割方案

    公开(公告)号:US20130132653A1

    公开(公告)日:2013-05-23

    申请号:US13740620

    申请日:2013-01-14

    Applicant: APPLE INC.

    Abstract: Systems and methods are disclosed for partitioning data for storage in a non-volatile memory (“NVM”), such as flash memory. In some embodiments, a priority may be assigned to data being stored, and the data may be logically partitioned based on the priority. For example, a file system may identify a logical address within a first predetermined range for higher priority data and within a second predetermined range for lower priority data, such using a union file system. Using the logical address, a NVM driver can determine the priority of data being stored and can process (e.g., encode) the data based on the priority. The NVM driver can store an identifier in the NVM along with the data, and the identifier can indicate the processing techniques used on the associated data.

    Abstract translation: 公开了用于分割用于存储在诸如闪存的非易失性存储器(“NVM”)中的数据的系统和方法。 在一些实施例中,可以将优先级分配给正在存储的数据,并且可以基于优先级逻辑地划分数据。 例如,文件系统可以识别用于较高优先级数据的第一预定范围内的逻辑地址,并且在较低优先权数据的第二预定范围内识别逻辑地址,诸如使用联合文件系统。 使用逻辑地址,NVM驱动器可以确定正在存储的数据的优先级,并且可以基于优先级处理(例如,编码)数据。 NVM驱动程序可以将数据与NVM一起存储在标识符中,并且标识符可以指示在相关数据上使用的处理技术。

    SYSTEMS AND METHODS FOR CONFIGURING NON-VOLATILE MEMORY
    16.
    发明申请
    SYSTEMS AND METHODS FOR CONFIGURING NON-VOLATILE MEMORY 审中-公开
    用于配置非易失性存储器的系统和方法

    公开(公告)号:US20160092110A1

    公开(公告)日:2016-03-31

    申请号:US14962339

    申请日:2015-12-08

    Applicant: Apple Inc.

    Abstract: Systems and methods are disclosed for configuring a non-volatile memory (“NVM”). In some embodiments, each block of the NVM can include a block table-of-contents (“TOC”), which can be encoded (e.g., run-length encoded) and dynamically-sized. Thus, as user data is being programmed to a block, the size of a block TOC can be concurrently recalculated and increased only if necessary. In some embodiments, the NVM interface can use a weave sequence stored in the context information and at least one weave sequence associated with each page of a block to determine whether to replay across the pages of the block after system boot-up.

    Abstract translation: 公开了用于配置非易失性存储器(“NVM”)的系统和方法。 在一些实施例中,NVM的每个块可以包括可以被编码(例如,游程长度编码)和动态尺寸的块内容表(“TOC”)。 因此,当用户数据被编程到块时,块TOC的大小可以被同时重新计算并且仅在必要时增加。 在一些实施例中,NVM接口可以使用存储在上下文信息中的编织序列和与块的每个页面相关联的至少一个编织序列来确定在系统启动之后跨块的页面是否重播。

    Non-regular parity distribution detection via metadata tag
    17.
    发明授权
    Non-regular parity distribution detection via metadata tag 有权
    通过元数据标签检测非正规奇偶校验

    公开(公告)号:US09274887B2

    公开(公告)日:2016-03-01

    申请号:US14166174

    申请日:2014-01-28

    Applicant: Apple Inc.

    Inventor: Daniel J. Post

    CPC classification number: G06F11/1068

    Abstract: This can relate to non-regular parity distribution of a non-volatile memory (“NVM”), such as flash memory, and detection of the non-regular parity via a metadata tag. For example, each codeword of the NVM can include one or more parity pages that may be distributed at random through the NVM. To identify the page as a parity page, a parity page marker can be included in the metadata of that page. During power-up of the NVM, an address table including the logical-to-physical address mapping of the pages can be created. Pages including a parity page marker, however, can be skipped during the creation of this address table. Additionally, by having two or more parity pages associated with a codeword, an additional layer of protection can be provided for repairing errors in that codeword.

    Abstract translation: 这可以涉及非易失性存储器(“NVM”)的非正规奇偶校验分配,例如闪速存储器,以及通过元数据标签检测非常规奇偶校验。 例如,NVM的每个码字可以包括可以通过NVM随机分布的一个或多个奇偶校验页。 为了将页面标识为奇偶校验页,奇偶校验页标记可以包含在该页的元数据中。 在NVM上电期间,可以创建包括页面的逻辑到物理地址映射的地址表。 但是,在创建此地址表时可以跳过包含奇偶校验页标记的页面。 另外,通过具有与码字相关联的两个或多个奇偶校验页,可以提供附加的保护层来修复该码字中的错误。

    Systems and methods for handling non-volatile memory operating at a substantially full capacity
    18.
    发明授权
    Systems and methods for handling non-volatile memory operating at a substantially full capacity 有权
    用于处理基本上满负荷运行的非易失性存储器的系统和方法

    公开(公告)号:US08886875B2

    公开(公告)日:2014-11-11

    申请号:US14143991

    申请日:2013-12-30

    Applicant: Apple Inc.

    CPC classification number: G06F12/0246

    Abstract: This can relate to handling a non-volatile memory (“NVM”) operating at a substantially full memory. The non-volatile memory can report its physical capacity to an NVM driver. The NVM driver can scale-up the physical capacity a particular number of times to generate a “scaled physical capacity,” which is then reported to the file system. Because the scaled physical capacity is greater than the NVM's actual physical capacity, the file system allocates a logical space to the NVM that is substantially greater than the NVM's capacity. This can cause less crowding of the logical block addresses within the logical space, thus making it easier for the file system to operate and improving system performance. A commitment budget can also be reported to the file system that corresponds to the NVM's physical capacity, and which can define the amount of data the file system can commit for storage in the NVM.

    Abstract translation: 这可以涉及处理在基本上完整的存储器上操作的非易失性存储器(“NVM”)。 非易失性存储器可以向NVM驱动程序报告其物理容量。 NVM驱动程序可以将物理容量放大特定次数,以生成“缩放的物理容量”,然后将其报告给文件系统。 由于缩放的物理容量大于NVM的实际物理容量,所以文件系统为NVM分配了大大超过NVM容量的逻辑空间。 这可能导致逻辑空间内的逻辑块地址拥挤较少,从而使得文件系统更容易操作并提高系统性能。 承诺预算也可以报告给对应于NVM物理容量的文件系统,并且可以定义文件系统可以在NVM中进行存储的数据量。

    MOUNT-TIME RECONCILIATION OF DATA AVAILABILITY
    19.
    发明申请
    MOUNT-TIME RECONCILIATION OF DATA AVAILABILITY 审中-公开
    数据可用性的安装时间重新安装

    公开(公告)号:US20140297935A1

    公开(公告)日:2014-10-02

    申请号:US14305488

    申请日:2014-06-16

    Applicant: Apple Inc.

    Abstract: Systems and methods are disclosed for mount-time reconciliation of data availability. During system boot-up, a non-volatile memory (“NVM”) driver can be enumerated, and an NVM driver mapping can be obtained. The NVM driver mapping can include the actual availability of LBAs in the NVM. A file system can then be mounted, and a file system allocation state can be generated. The file system allocation state can indicate the file system's view of the availability of LBAs. Subsequently, data availability reconciliation can be performed. That is, the file system allocation state and the NVM driver mapping can be overlaid and compared with one another in order to expose any discrepancies.

    Abstract translation: 披露了数据可用性的安装时间调节的系统和方法。 在系统启动期间,可以列举非易失性存储器(“NVM”)驱动程序,并且可以获得NVM驱动程序映射。 NVM驱动程序映射可以包括NVM中LBA的实际可用性。 然后可以安装文件系统,并且可以生成文件系统分配状态。 文件系统分配状态可以指示文件系统对LBA可用性的视图。 随后,可以执行数据可用性协调。 也就是说,文件系统分配状态和NVM驱动程序映射可以被叠加并相互比较,以便暴露任何差异。

    PERFORMANCE OF A SYSTEM HAVING NON-VOLATILE MEMORY
    20.
    发明申请
    PERFORMANCE OF A SYSTEM HAVING NON-VOLATILE MEMORY 有权
    具有非易失性存储器的系统的性能

    公开(公告)号:US20140281687A1

    公开(公告)日:2014-09-18

    申请号:US13829692

    申请日:2013-03-14

    Applicant: APPLE INC.

    Abstract: Systems and methods are disclosed for improving performance of a system having non-volatile memory (“NVM”). The system can vertically re-vector defective blocks of a user region of the NVM to other blocks having the same plane or die's plane (“DIP”) but corresponding to a dead region of the NVM. Then, the system can select any band with more than one defective block and vertically re-vector one of its defective blocks to a band that has no defective blocks. At run-time, the system can monitor the number of vertical re-vectors per DIP. If at least one vertical re-vector has been performed on all DIPs of the NVM, a band of the user region can be allocated for the dead region.

    Abstract translation: 公开了用于改善具有非易失性存储器(“NVM”)的系统的性能的系统和方法。 该系统可以垂直地将NVM的用户区域的缺陷块重新向量到具有相同平面或管芯平面(“DIP”)但对应于NVM的死区的其他块。 然后,系统可以选择具有多于一个缺陷块的任何频带,并将其缺陷块中的一个垂直重新矢量到没有有缺陷块的频带。 在运行时,系统可以监控每个DIP的垂直重新向量的数量。 如果在NVM的所有DIP上执行了至少一个垂直重新向量,则可以为死区分配用户区域的频带。

Patent Agency Ranking