PROGRAMMABLE BLOCKCHAIN SOLID STATE DRIVE AND SWITCH

    公开(公告)号:US20190268141A1

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

    申请号:US15981460

    申请日:2018-05-16

    Abstract: A programmable data storage device includes: a non-volatile memory; a storage controller configured to control the non-volatile memory; a network interface; and a field programmable gate array configured to: implement a blockchain algorithm; and store at least one block of a blockchain corresponding to the blockchain algorithm in the non-volatile memory via the storage controller; and a processor having memory coupled thereto, the memory having instructions stored thereon that, when executed by the processor, cause the processor to: send and receive one or more blocks of the blockchain via the network interface; and control the field programmable gate array to execute the blockchain algorithm on the one or more blocks of the blockchain.

    Multistreaming in heterogeneous environments

    公开(公告)号:US11507326B2

    公开(公告)日:2022-11-22

    申请号:US17229857

    申请日:2021-04-13

    Abstract: A storage device is disclosed. The storage device may include storage to store data, which may include a first storage of a first type and a second storage of a second type. The storage device may support a number of device streams, some of which associated with the first storage and some associated with the second storage. The storage device may also include a streaming capabilities analyzer that may inventory the streaming capabilities for the storage device. Finally, the storage device may include a transmitter to transmit the streaming capabilities of the storage device to a storage manager.

    Automatic stream detection and assignment algorithm

    公开(公告)号:US10656838B2

    公开(公告)日:2020-05-19

    申请号:US15499877

    申请日:2017-04-27

    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data and may support a plurality of device streams. A SSD controller may manage reading and writing data to the flash memory, and may store a submission queue and a chunk-to-stream mapper. A flash translation layer may include a receiver to receive a write command, an LBA mapper to map an LBA to a chunk identifier (ID), stream selection logic to select a stream ID based on the chunk ID, a stream ID adder to add the stream ID to the write command, a queuer to place the chunk ID in the submission queue, and background logic to update the chunk-to-stream mapper after the chunk ID is removed from the submission queue.

    Systems, methods, and devices for accessing a device operating system over an interconnect

    公开(公告)号:US11822490B2

    公开(公告)日:2023-11-21

    申请号:US17522899

    申请日:2021-11-09

    CPC classification number: G06F13/102 G06F9/44505

    Abstract: A method for communicating with a device may include running, at a device, an operating system, communicating, using a first function of an interconnect, with the device, and communicating, using a second function of the interconnect, with the operating system. The operating system may include communication logic, and the communicating with the operating may include communicating with the communication logic. The communication logic may one or more terminal support drivers, and the communicating with the communication logic may include communicating with the one or more terminal support drivers using a terminal application. The terminal application may run on a host. The second function of the interconnect may be configured to operate with a controller. The communicating with the operating system may include communicating with the operating system based on a privilege information. The host may be a management controller. The method may further include controlling, using the second function of the interconnect, a program on the operating system.

    Garbage collection—automatic data placement

    公开(公告)号:US11630767B2

    公开(公告)日:2023-04-18

    申请号:US17543710

    申请日:2021-12-06

    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data. An SSD controller may manage reading and writing data to the flash memory. The SSD may include an automatic stream detection logic to select a stream identifier responsive to attributes of data. A garbage collection logic may select an erase block and program valid data in the erase block into a second block responsive to a stream ID determined the automatic stream detection logic. The stream ID may be determined after the garbage collection logic has selected the erase block for garbage collection.

    Garbage collection—automatic data placement

    公开(公告)号:US10698808B2

    公开(公告)日:2020-06-30

    申请号:US15620814

    申请日:2017-06-12

    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data. An SSD controller may manage reading and writing data to the flash memory. The SSD may include an automatic stream detection logic to select a stream identifier responsive to attributes of data. A garbage collection logic may select an erase block and program valid data in the erase block into a second block responsive to a stream ID determined the automatic stream detection logic. The stream ID may be determined after the garbage collection logic has selected the erase block for garbage collection.

    Systems, methods, and devices for accessing a device program on a storage device

    公开(公告)号:US12147701B2

    公开(公告)日:2024-11-19

    申请号:US17527147

    申请日:2021-11-15

    Abstract: A method may include receiving, at a storage device, a command using a storage protocol, wherein the storage device is configured to execute a user program, and executing, at the storage device, a device program based on the command. The command may be a first command, and the method may further include receiving, at the storage device, using the storage protocol, a second command, and sending, from the storage device, using the storage protocol, information about the device program based on the second command. The method may further include sending, from the storage device, using the storage protocol, a list of device programs supported by the storage device based on the second command. The method may further include providing, by the storage device, output data from the device program. The providing may include sending, from the storage device, using the storage protocol, a log message.

    PROGRAMMABLE BLOCKCHAIN SOLID STATE DRIVE AND SWITCH

    公开(公告)号:US20210111868A1

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

    申请号:US17131060

    申请日:2020-12-22

    Abstract: A programmable data storage device includes: a non-volatile memory; a storage controller configured to control the non-volatile memory; a network interface; and a field programmable gate array configured to: implement a blockchain algorithm; and store at least one block of a blockchain corresponding to the blockchain algorithm in the non-volatile memory via the storage controller; and a processor having memory coupled thereto, the memory having instructions stored thereon that, when executed by the processor, cause the processor to: send and receive one or more blocks of the blockchain via the network interface; and control the field programmable gate array to execute the blockchain algorithm on the one or more blocks of the blockchain.

Patent Agency Ranking