Shu Li has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
Abstract: One embodiment facilitates data placement in a storage device. During operation, the system receives incoming data from multiple streams, wherein the incoming data includes a plurality of data parts. The system formats the data parts by inserting a header before and a tail after each data part, wherein a formatted data part includes a respective data part, the header, and the tail, and wherein the header and the tail indicate an order and a destination zone for the respective data part within a stream. The system sequentially writes the formatted data parts to a pre-allocated journal zone of a non-volatile memory of the storage device. The system concatenates the data parts in the order indicated by their respective header and tail. The system sequentially writes the concatenated data parts to the non-volatile memory based on the destination zone indicated by their respective header and tail.
Abstract: One embodiment facilitates a reduced write amplification. During operation, the system receives, by a computing device, a request to write data to a non-volatile memory. The system writes a first page of the data to a block of the non-volatile memory based on a first physical block address of a destination page of the block, wherein the destination page is a first available page of the block. The system maps, in a data structure by a flash translation layer module of the computing device, a first logical block address of the first page of the data to the first physical block address.
Abstract: One embodiment facilitates atomicity assurance for storing data and metadata in a data stream. The system receives a first stream of data to be written to a storage device, wherein the first stream includes a plurality of I/O requests associated with data and corresponding metadata. In response to determining that residual data associated with a preceding I/O request of the first stream exists in a data buffer: the system appends, to the residual data, a first portion of data from a current I/O request to obtain a first page of data; the system writes a remainder portion of the current I/O request to the data buffer to obtain current residual data; and the system writes the first page of data to the storage device. Thus, the system thereby facilitates atomicity assurance for storing the data and corresponding metadata of each I/O request of the first data stream.
Abstract: A system is provided to receive a first request to write data to a hard disk drive (HDD) which comprises a plurality of tracks which can be configured as a conventional magnetic recording (CMR) media or as a shingled magnetic recording (SMR) media, wherein an SMR-configured track stores a greater amount of data than a CMR-configured track. The system writes the data to a first CMR-configured track, and classifies data stored in CMR-configured tracks as hot or cold based on a first or a second predetermined threshold. The system copies cold data from the CMR-configured tracks to an SMR zone, and makes available portions of the CMR-configured tracks previously occupied by the cold data.
Abstract: One embodiment of the present invention provides a system for centralized boot storage. The system comprises a first switch, which comprises a non-volatile memory and a communication module. The non-volatile memory is configured to store an image of an operating system for booting up one or more servers in a rack. The communication module is configured to: receive a first request for the image from a first server; and in response to the first request, transmit the image to the first server, thereby allowing the first server to boot up based on the image.
Abstract: Disclosed are systems, methods, and apparatuses for providing a high-speed data path to storage devices. In one embodiment, a method is disclosed comprising receiving, by the processor, a data access command, the data access command specifying a location in memory to access data; issuing, by the processor, the data access command to the storage device via a first datapath, the first datapath comprising a non-block datapath; and accessing, by the processor, the non-volatile storage component through the first datapath and the memory, wherein the non-volatile storage component of the storage device is mapped to memory accessible by the processor.
Abstract: One embodiment facilitates data placement in a storage device. During operation, the system receives chunks of data to be written to a non-volatile memory. The system encodes a first chunk based on a first error-correcting code (ECC) to obtain a first ECC-encoded codeword. The system encodes a first group of ECC-encoded codewords which include the first ECC-encoded codeword, based on an erasure code (EC) to obtain a first EC-encoded group, wherein a respective EC-encoded group includes EC parity bits. The system encodes the EC parity bits of the obtained first EC-encoded group based on a second error-correcting code (ECC) to obtain ECC-encoded EC parity bits. The system writes the first EC-encoded group and the ECC-encoded EC parity bits to the non-volatile memory.
Abstract: One embodiment provides a computer system. The computer system comprises: a plurality of storage devices; and a first component functioning both as a network interface card and as an access switch, wherein the first component is configured to manage connections to the plurality of storage devices. A respective storage device comprises: an Ethernet port coupled to the first component; at least one microprocessor; a plurality of PCIe lanes; and a plurality of storage drives with non-volatile memory.
Abstract: One embodiment described herein provides a system for managing metadata for a shingled magnetic recording (SMR) drive. During operation, the system stores a metadata file in a memory of a host of the SMR drive; subsequent to the SMR drive performing a write operation, the system generates a metadata update, and sends the generated metadata update to a buffer associated with the SMR drive and the memory of the host. In response to a compaction condition being met, the system launches, in the memory of the host, a metadata compaction operation to generate a compacted metadata file based on the previously stored metadata file and the metadata update, and sends the compacted metadata file to the SMR drive.
Abstract: One embodiment facilitates data placement in a storage device. During operation, the system receives a request indicating first data to be written to a non-volatile memory which includes a plurality of dies, wherein a plurality of error correction code (ECC) codec modules reside on the non-volatile memory. The system receives, by a first codec module residing on a first die, the first data. The system encodes, by the first codec module operating on the first die, the first data based on an error correction code (ECC) to obtain first ECC-encoded data which includes a first set of ECC parity bits. The system writes the first ECC-encoded data to the first die.
Abstract: The present inventions are related to systems and methods for accessing data from a flash memory, and more particularly to systems and methods for inter-cell interference handling in a flash memory. The systems and methods may include a soft information correction circuit that is operable to receive soft information corresponding to information accessed from a block of memory cells, and modify the soft information based upon a variance of the soft information and a median of the soft information to create corrected soft information, the corrected soft information being used to mitigate inter-cell interference in the block of memory cells.
February 12, 2019
Date of Patent:
November 17, 2020
SEAGATE TECHNOLOGY LLC
Fan Zhang, Shu Li, Jun Xiao, Haitao Xia
Abstract: One embodiment facilitates a shared memory. During operation, the system receives, by a memory expansion device, an I/O request via a first interface which is distinct from a memory bus, wherein the memory expansion device includes a first set of memory modules, and wherein the memory expansion device is attached to a computer system via the first interface. The system processes, by a controller of the memory expansion device, the I/O request. The system transmits, by the controller via a second interface, the I/O request to a selected memory module. The system executes, by the selected memory module, the I/O request, thereby allowing the computer system to expand memory capacity beyond memory slots available on the memory bus.
Abstract: Anti-IL-12/IL-23p40 antibodies, such as ustekinumab, are used in methods and compositions for safe and effective treatment of psoriasis, particularly moderate to severe chronic plaque psoriasis, in pediatric patients. The methods and compositions address a clear unmet medical need in this patient population.
March 16, 2020
October 22, 2020
Ming-Chun Hsu, Shu Li, Bruce Randazzo, Kun Song, Yaowei Zhu
Abstract: Embodiments described herein provide a storage management system. During operation, the system receives information indicating sets of pending load of a plurality of storage devices from one or more storage nodes of a distributed storage system. The set of pending load of a respective storage device includes a set of load from host operations and a set of load from background operations on the storage device. The system can receive a request for a target resource associated with a disk operation from a client node of the distributed storage system. The system then selects, from the plurality of storage devices, a storage device with the smallest set of pending load based on the sets of pending load as the target resource and sends the target resource to the client node.
Abstract: One embodiment facilitates error recovery. During operation, the system receives an input/output request indicating data associated with a first logical block address. The system detects, in a mapping table, an error associated with the first logical block address, wherein the mapping table maps logical block addresses to physical block addresses. The system identifies a dedicated block which stores log entries with logical block addresses corresponding to sequentially programmed physical blocks. The system performs a search in the dedicated block to obtain a most recent valid log entry for the first logical block address. The system obtains a first physical block address corresponding to the first logical block address based on the sequentially programmed physical blocks or the dedicated block. The system executes the I/O request by accessing the first physical block address.
Abstract: One embodiment provides a memory module for a computer system. The memory module can include a physical enclosure encompassing at least one multi-chip packaging (MCP) module and a memory interface for coupling the MCP module to a central processing unit (CPU) of the computer system. The MCP module can include a first memory chip, an extended-memory chip, and a memory controller for controlling access to the extended-memory chip.
Abstract: The present disclosure provides a method for predicting a fluid type, comprising sensing, by a first sensor, mass flow data of a fluid in an engine, wherein the first sensor operates based on a first fluid property; sensing, by a second sensor, mass flow data of the fluid, wherein the second sensor operates based on a second fluid property; and detecting, by a logic circuit of a controller, a percent difference in the mass flow data provided by the first and second sensors, the percent difference indicating that the fluid is comprised of at least a first fluid type.
Abstract: The present disclosure provides methods, systems, and non-transitory computer readable media for optimizing performance of a data storage system. The methods include receiving an I/O request to write a payload of data; selecting one or more secondary storage units from a plurality of secondary storage units coupled to the data storage system, wherein the selection of the one or more secondary storage units is based on an assessment of one or more effects on the garbage collection activity of the plurality of secondary storage units predicted to result from storing the payload of data on the plurality of secondary storage units; and storing the payload of data on the one or more selected secondary storage units.
Abstract: A receiver optical sub-assembly, a combo bi-directional optical sub-assembly, a combo optical module, an optical line terminal, and a passive optical network system, where the receiver optical sub-assembly includes a first transistor-outline can, where a light incident hole is disposed on the first transistor-outline can, and where a first demultiplexer, a first optical receiver, a second optical receiver, and an optical lens combination are packaged in the first transistor-outline can.
June 23, 2020
October 8, 2020
Shu Li, Rixiang Cao, Zelin Wang, Sulin Yang