Performance allocation among users for accessing non-volatile memory devices

    公开(公告)号:US11093140B2

    公开(公告)日:2021-08-17

    申请号:US15875944

    申请日:2018-01-19

    Inventor: Alex Frolikov

    Abstract: A computer having a plurality of accounts and a storage device having a host interface, a controller, non-volatile storage media, and firmware. An account is configured with at least a predetermined speed in accessing the non-volatile storage media by allocating a number of input/output submission queues in the buffer area of the host. The number can be determined from a ratio between the predetermined speed configured for the account and a saturated speed of the storage device with sufficient submission queues. Data access requests from the account are evenly distributed to the submission queues allocated for the exclusive use by the account; and the controller, configured via the firmware, processes with equal priority the submission queues configured for the storage device. Thus, the account can have at least the predetermined speed in accessing the non-volatile storage media, regardless of how other accounts access the storage device.

    Namespaces allocation in non-volatile memory devices

    公开(公告)号:US10969963B2

    公开(公告)日:2021-04-06

    申请号:US16520204

    申请日:2019-07-23

    Inventor: Alex Frolikov

    Abstract: A computer storage device having a host interface, a controller, non-volatile storage media, and firmware. The firmware instructs the controller to: receive, via the host interface, a request from a host to allocate a namespace of a quantity of non-volatile memory; generate, in response to the request, a namespace map identifying a plurality of blocks of addresses having a same predetermined block size, and a partial block of addresses having a size smaller than the predetermined block size; and convert, using the namespace map, logical addresses in the namespace communicated from the host to physical addresses for the quantity of the non-volatile memory. For example, the request for allocating the namespace can be in accordance with an NVMe protocol.

    NAMESPACE SIZE ADJUSTMENT IN NON-VOLATILE MEMORY DEVICES

    公开(公告)号:US20200257449A1

    公开(公告)日:2020-08-13

    申请号:US16859800

    申请日:2020-04-27

    Inventor: Alex Frolikov

    Abstract: A computer storage device having a host interface, a controller, non-volatile storage media, and firmware. The firmware instructs the controller to: store a namespace map mapping blocks of logical block addresses in a namespace to blocks from a logical address capacity of the non-volatile storage media; adjust the namespace map to change the size of the namespace; and translate logical addresses in the namespace to physical addresses for the non-volatile storage media using the namespace map.

    Meta Data Processing during Startup of Storage Devices

    公开(公告)号:US20200026447A1

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

    申请号:US16586653

    申请日:2019-09-27

    Inventor: Alex Frolikov

    Abstract: A computer system having a host coupled to a storage device via a peripheral component interconnect express bus. The host communicates with the storage device in accordance with a non-volatile memory host controller interface specification. The storage device stores versions of meta data sequentially in a portion of a volatile memory that is protected against power failure using a power hold-up module. In response to a sudden power loss, the power hold-up module provides sufficient energy to support operations to copy the content from the portion of the volatile memory into a non-volatile memory. During a startup process, the content is retrieved from the non-volatile memory; and a binary search is performed to locate, within the content, the latest, valid version of the meta data to continue operations interrupted by the power loss.

    Defective Memory Unit Screening in a Memory System

    公开(公告)号:US20190318798A1

    公开(公告)日:2019-10-17

    申请号:US15952166

    申请日:2018-04-12

    Inventor: Alex Frolikov

    Abstract: A memory system having non-volatile media and a controller configured to process requests from a host system to store data in the non-volatile media or retrieve data from the non-volatile media. The non-volatile media has a set of memory units. The memory system stores an indicator indicating whether the memory system is operating in a user mode or a manufacturing mode. A defect manager of the memory system identifies a threshold based on the indicator, monitors an error rate in reading data from the non-volatile media and, in response to the error rate reaching the threshold, screens the non-volatile media for defective memory units.

    Meta Data Protection against Unexpected Power Loss in a Memory System

    公开(公告)号:US20190310918A1

    公开(公告)日:2019-10-10

    申请号:US15947428

    申请日:2018-04-06

    Inventor: Alex Frolikov

    Abstract: A memory system having a set of non-volatile media, a volatile memory, a buffer memory, and a controller configured to process requests from a host system to store data in the non-volatile media or retrieve data from the non-volatile media. The buffer memory is capable of holding data for at least a predetermined period of time after the volatile memory loses data during an event of power outage in the memory system. A power manager monitors a power supply of the memory system to detect an onset of power outage and, in response to the onset of power outage, causes the controller to copy meta data in the volatile memory to the buffer memory.

    Data Storage Device Idle Time Processing
    67.
    发明申请

    公开(公告)号:US20190250838A1

    公开(公告)日:2019-08-15

    申请号:US15893249

    申请日:2018-02-09

    Inventor: Alex Frolikov

    Abstract: A computer system having a host coupled to a storage device via a peripheral component interconnect express bus. The host communicates with the storage device in accordance with a non-volatile memory host controller interface specification. The host provides a customized module containing instructions for performing the operations of a customized command. The host sends an idle time command to the storage device for execution at an idle time. In response to a determination that the storage device is in an idle state, the storage device executes the idle time command, during which the module may be used by the controller of the storage device.

    NAMESPACE MAPPING STRUCTUAL ADJUSTMENT IN NON-VOLATILE MEMORY DEVICES

    公开(公告)号:US20190146927A1

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

    申请号:US15814934

    申请日:2017-11-16

    Inventor: Alex Frolikov

    Abstract: A computer storage device having a host interface, a controller, non-volatile storage media, and firmware. The firmware instructs the controller to: allocate a named portion of the non-volatile storage device; generate, according to a first block size, first block-wise mapping data; translate, using the first block-wise mapping data, logical addresses defined in the named portion to logical addresses defined for the entire non-volatile storage media, which can then be further translated to physical addresses in a same way for all named portions; determine a second block size; generate, according to the second block size, second block-wise mapping data; translate, using the second block-wise mapping data, the logical addresses defined in the name portion to the logical addresses defined for the entire non-volatile storage media.

    Namespace Management in Non-Volatile Memory Devices

    公开(公告)号:US20190121548A1

    公开(公告)日:2019-04-25

    申请号:US15790979

    申请日:2017-10-23

    Inventor: Alex Frolikov

    Abstract: A computer storage device having: a host interface; a controller; non-volatile storage media; and firmware. The firmware instructs the controller to: divide a contiguous logical address capacity into blocks according to a predetermined block size; and maintain a data structure to identify: free blocks are available for allocation to new namespaces; and blocks that have been allocated to namespaces in use. Based on the content of the data structure, non-contiguous blocks can be allocated to a namespace; and logical addresses in the namespace can be translated to physical addresses for addressing the non-volatile storage media of the storage device.

Patent Agency Ranking