Patents Examined by Prasith Thammavong
  • Patent number: 11874772
    Abstract: Systems and methods for adapting garbage collection (GC) operations in a memory device to a host write activity are described. A host write progress can be represented by an actual host write count relative to a target host write count. The host write activity may be estimated in a unit time such as per day, or accumulated over a specified time period. A memory controller can adjust an amount of memory space to be freed by a GC operation according to the host write progress. The memory controller can also dynamically reallocate a portion of the memory cells between a single level cell (SLC) cache and a multi-level cell (MLC) storage according to the host write progress.
    Type: Grant
    Filed: July 16, 2021
    Date of Patent: January 16, 2024
    Inventors: Deping He, Qing Liang, David Aaron Palmer
  • Patent number: 11868265
    Abstract: Techniques are described herein processing asynchronous power transition events while maintaining a persistent memory state. In some embodiments, a system may proxy asynchronous reset events through system logic, which generates an interrupt to invoke a special persistent flush interrupt handler that performs a persistent cache flush prior to invoking a hardware power transition. Additionally or alternatively, the system may include a hardware backup mechanism to ensure all resets and power-transitions requested in hardware reliably complete within a bounded window of time independent of whether the persistent cache flush handler succeeds.
    Type: Grant
    Filed: March 25, 2022
    Date of Patent: January 9, 2024
    Assignee: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Patent number: 11868256
    Abstract: Processing a read request to read metadata from an entry of a metadata page may include: determining whether the metadata page is cached; responsive to determining the metadata page is cached, obtaining the first metadata from the cached metadata page; responsive to determining the metadata page is not cached, determining whether the requested metadata is in a metadata log of metadata changes stored in a volatile memory; and responsive to determining the metadata is the metadata log of metadata changes stored in the volatile memory, obtaining the requested metadata from the metadata log. Processing a write request that overwrites an existing value of a metadata page with an updated value may include: recording a metadata change in the metadata log that indicates to update the metadata page with the updated value; and performing additional processing during destaging that uses the existing value prior to overwriting it with the updated value.
    Type: Grant
    Filed: July 20, 2021
    Date of Patent: January 9, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Philip Love, Vladimir Shveidel, Bar David
  • Patent number: 11860782
    Abstract: In some embodiments, an integrated circuit may include a substrate and a memory array disposed on the substrate, where the memory array includes a plurality of discrete memory banks. The integrated circuit may also include a processing array disposed on the substrate, where the processing array includes a plurality of processor subunits, each one of the plurality of processor subunits being associated with one or more discrete memory banks among the plurality of discrete memory banks. The integrated circuit may also include a controller configured to implement at least one security measure with respect to an operation of the integrated circuit and take one or more remedial actions if the at least one security measure is triggered.
    Type: Grant
    Filed: February 9, 2022
    Date of Patent: January 2, 2024
    Assignee: NeuroBlade Ltd.
    Inventors: Eliad Hillel, Elad Sity, David Shamir, Shany Braudo
  • Patent number: 11861217
    Abstract: A data storage device includes one or more memory device and a controller that is DRAM-less coupled to the one or more memory devices. The controller is configured to receive a command from a host device, begin execution of the command, and receive an abort request command for the command. The command includes pointers that direct the data storage device to various locations on the data storage device where relevant content is located. Once the abort command is received, the content of the host pointers stored in the data storage device RAM are changed to point to the HMB. The data storage device then waits until any already started transactions over the interface bus that are associated with the command have been completed. Thereafter, a failure completion command is posted to the host device.
    Type: Grant
    Filed: April 6, 2022
    Date of Patent: January 2, 2024
    Assignee: Western Digital Technologies, Inc.
    Inventors: Shay Benisty, Judah Gamliel Hahn
  • Patent number: 11861234
    Abstract: A method includes receiving data to write to a memory sub-system including a single-level cell (SLC) cache and a multiple level cell (XLC) storage. The SLC cache includes a static SLC cache having a fixed size, and dynamic SLC cache having a default maximum size corresponding to a first mode of operation and an enhanced maximum size greater than the default maximum size corresponding to a second mode of operation. The method further includes, in response to determining to initiate a write operation in a first mode, initiating the write operation in the first mode to write a first portion of the data to the SLC cache, and in response to determining that a logical saturation of the first portion of the data satisfies the first threshold condition, continuing the write operation in the second mode to write a second portion of the data to the SLC cache.
    Type: Grant
    Filed: March 18, 2022
    Date of Patent: January 2, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Roy Leonard, Xiaolei Man, Bryan Li, Peijing Ye
  • Patent number: 11853576
    Abstract: Examples described herein relate to deletion of data entities in a deduplication system. Examples may maintain entries in a housekeeping queue, each entry including a priority value and a total unshared chunk size of a data entity to be deleted from the deduplication system. Examples may delete the data entities corresponding to the entries including a low priority value from the deduplication system. Examples may determine whether an available storage capacity of the deduplication system is sufficient after deleting the data entities corresponding to the entries including the low priority value. Examples may delete a data entity corresponding to an entry including a high priority value and a largest total unshared chunk size if the available storage capacity is insufficient.
    Type: Grant
    Filed: September 9, 2021
    Date of Patent: December 26, 2023
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: John Butt, Noel Rodrigues, David Bebawy
  • Patent number: 11853221
    Abstract: In some examples, a system dynamically adjusts a prefetching load with respect to a prefetch cache based on a measure of past utilizations of the prefetch cache, wherein the prefetching load is to prefetch data from storage into the prefetch cache.
    Type: Grant
    Filed: February 18, 2022
    Date of Patent: December 26, 2023
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Xiali He, Alex Veprinsky, Matthew S. Gates, William Michael McCormack, Susan Agten
  • Patent number: 11853606
    Abstract: The present disclosure includes apparatuses and methods for buffer reset commands for write buffers. An example apparatus includes a memory and a controller coupled to the memory. The memory can include an array of resistance variable memory cells configured to store data corresponding to a managed unit across multiple partitions each having a respective write buffer corresponding thereto. The controller can be configured to update the managed unit by providing, to the memory, a write buffer reset command followed by a write command. The memory can be configured to execute the write buffer reset command to place the write buffers in a reset state. The memory can be further configured to execute the write command to modify the content of the write buffers based on data corresponding to the write command and write the modified content of the write buffers to an updated location in the array.
    Type: Grant
    Filed: October 1, 2021
    Date of Patent: December 26, 2023
    Assignee: Micron Technology, Inc.
    Inventors: Marco Sforzin, Paolo Amato
  • Patent number: 11822481
    Abstract: A semiconductor device includes: a first cache that includes a first memory and rewrite flags that indicate whether rewriting has been performed for each piece of data held in the first memory; and a second cache that includes a second memory and a third memory that has a lower writing speed than the second memory, stores data evicted from the first cache in the second memory when a rewrite flag corresponding to the evicted data indicates a rewrite state, and stores data evicted from the first cache in the third memory when a rewrite flag corresponding to the evicted data indicates a non-rewrite state.
    Type: Grant
    Filed: July 12, 2022
    Date of Patent: November 21, 2023
    Assignee: FUJITSU LIMITED
    Inventors: Shiho Nakahara, Takahide Yoshikawa
  • Patent number: 11816034
    Abstract: A Bloom filter is used to track contents of a cache. A system checks the Bloom filter before deciding whether to prefetch an address (by hashing the address and checking a value of the Bloom filter at an index based on the hash). This allows the system to utilize more aggressive prefetching schemes by reducing the risk of wasteful redundant prefetch operations.
    Type: Grant
    Filed: October 26, 2020
    Date of Patent: November 14, 2023
    Assignee: International Business Machines Corporation
    Inventors: Mohit Karve, Naga P. Gorti
  • Patent number: 11815938
    Abstract: According to an embodiment of the present disclosure, a storage device may include a memory device, and a memory controller configured to receive a read command from an external host and control the memory device according to the read command, wherein the read command may include a basic header segment commonly included in commands transferred between the external host and the memory controller and including information indicating that the read command is a command for requesting data stored in the memory device, a transaction specific field including information indicating that the read command is a read command for at least two or more logical addresses, and an extra header segment including information on the at least two or more logical addresses.
    Type: Grant
    Filed: June 14, 2022
    Date of Patent: November 14, 2023
    Assignee: SK hynix Inc.
    Inventors: Byung Jun Kim, Jea Young Zhang, Young Kyu Jeon, Kyoung Ku Cho
  • Patent number: 11816217
    Abstract: Certain embodiments described herein relate to methods and systems for detecting unexpected behavior associated with a process. In certain embodiments, a method comprises receiving a memory allocation request, the request indicating one or more memory segments to be allocated in memory of a computing system. The method further comprises allocating the one or more memory segments in the memory based on the memory allocation request. The method further comprises allocating one or more decoy memory segments in the memory based on the memory allocation request. The method further comprises trapping an input/output (I/O) operation. The method further comprises detecting an unexpected behavior associated with the I/O operation based on determining that the I/O operation impacts at least one of the one or more decoy memory segments. The method further comprises performing one or more actions based on the detection.
    Type: Grant
    Filed: April 10, 2020
    Date of Patent: November 14, 2023
    Assignee: VMWARE, INC.
    Inventors: Ravi Jagannathan, Glen Robert Simpson
  • Patent number: 11809727
    Abstract: Predicting failures in a storage system that includes a plurality of storage devices, including: gathering information describing a plurality of blocks within the storage devices; developing, using the information describing the plurality of blocks within the storage devices and information describing known dead block conditions, a block lifespan model; and determining, in dependence upon the information describing the plurality of blocks within the storage devices and the block lifespan model, a predicted lifespan for the plurality of blocks within the storage devices.
    Type: Grant
    Filed: April 29, 2018
    Date of Patent: November 7, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Frank Tuzzolino, John Colgrove, Taher Vohra, Andrew Kleinerman, Xiaohui Wang, Benjamin Scholbrock
  • Patent number: 11797230
    Abstract: In one example in accordance with the present disclosure, an electronic device is described. The example electronic device includes a NAND flash device to store a static data component of a variable. The example electronic device also includes a NOR flash device to store a dynamic data component of the variable. The electronic device further includes a controller to write the static data component of the variable to the NAND flash device. This controller is also to write the dynamic data component of the variable to the NOR flash device.
    Type: Grant
    Filed: December 14, 2021
    Date of Patent: October 24, 2023
    Assignee: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: Jeffrey Kevin Jeansonne, Khoa Huynh, Mason Andrew Gunyuzlu
  • Patent number: 11797180
    Abstract: A method includes, in one non-limiting embodiment, receiving a command originating from an initiator at a controller associated with a non-volatile mass memory coupled with a host device, the command being a command to write data that is currently resident in a memory of the host device to the non-volatile mass memory; moving the data that is currently resident in the memory of the host device from an original location to a portion of the memory allocated for use at least by the non-volatile mass memory; and acknowledging to the initiator that the command to write the data to the non-volatile mass memory has been executed. An apparatus configured to perform the method is also described.
    Type: Grant
    Filed: December 23, 2020
    Date of Patent: October 24, 2023
    Assignee: Memory Technologies LLC
    Inventors: Kimmo J. Mylly, Jani J. Klint, Jani Hyvonen, Tapio Hill, Jukka-Pekka Vihmalo, Matti Floman
  • Patent number: 11797456
    Abstract: Techniques described herein provide a handshake mechanism and protocol for notifying an operating system whether system hardware supports persistent cache flushing. System firmware may determine whether the hardware is capable of supporting a full flush of processor caches and volatile memory buffers in the event of a power outage or asynchronous reset. If the hardware is capable, then persistent cache flushing may be selectively enabled and advertised to the operating system. Once persistent cache flushing is enabled, the operating system and applications may treat data committed to volatile processor caches as persistent. If disabled or not supported by system hardware, then the platform may not advertise support for persistent cache flushing to the operating system.
    Type: Grant
    Filed: March 25, 2022
    Date of Patent: October 24, 2023
    Assignee: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Patent number: 11797450
    Abstract: An electronic device includes a cache memory including a memory space for storing a first cache set including a plurality of sector data and a plurality of dirty bits, each of the plurality of dirty bits representing whether corresponding sector data of the plurality of sector data are modified, a memory controller, connected to a plurality of data lines and a data mask line, for receiving the plurality of sector data and the plurality of dirty bits from the cache memory, setting a logic level of a data mask signal based on a logic level of each of the plurality of dirty bits, and outputting the plurality of sector data through the plurality of data lines and the data mask signal through the data mask line, and a memory device, connected to the plurality of data lines and the data mask line, for receiving the plurality of sector data through the plurality of data lines, and receiving the data mask signal through the data mask line.
    Type: Grant
    Filed: April 16, 2021
    Date of Patent: October 24, 2023
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Byoungsul Kim, Youngsan Kang, Daehyun Kwon, Myong-Seob Song, Byung Yo Lee, Yejin Jo
  • Patent number: 11789635
    Abstract: Copying data from a source storage system to a target storage system includes resetting a write tracker on the source storage system to track writes to the source storage system by one or more host computing systems, copying data from the source storage system to the target storage system after resetting the write tracker, suspending writes to the source storage system after copying the data, and copying data portions of the source storage system to the target storage system that are indicated as being written by the write tracker after suspending writes to the source storage system. Applications that write data to the source storage system may be quiesced in connection with suspending writes to the source storage system. Data portions may be repeatedly copied from the source storage system to the target storage system until an end condition is reached.
    Type: Grant
    Filed: January 28, 2021
    Date of Patent: October 17, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Douglas E. LeCrone, Denis J. Burt, Brett A. Quinn, Paul A. Linstead
  • Patent number: 11789625
    Abstract: A request associated with one or more privileges assigned to a first entity may be received. Each of the one or more privileges may correspond to an operation of an integrated circuit. Information corresponding to the first entity and stored in a memory that is associated with the integrated circuit may be identified. Furthermore, the memory may be programmed to modify the information stored in the memory that is associated with the integrated circuit in response to the request associated with the one or more privileges assigned to the first entity.
    Type: Grant
    Filed: July 29, 2022
    Date of Patent: October 17, 2023
    Assignee: Cryptography Research, Inc.
    Inventors: Benjamin Che-Ming Jun, William Craig Rawlings, Ambuj Kumar, Mark Evan Marson